<jrx>
"Why? Because a language without macros is a tool: You write applications with it. A language with macros is building material: You shape it and grow it into your application." https://github.com/eudoxia0/cmacro
<ixelp>
GitHub - eudoxia0/cmacro: Lisp macros for C
<ixelp>
GitHub - lambdasakura/ceramic: Desktop web apps with Common Lisp
wonko-the-sane has joined #commonlisp
simendsjo has quit [Ping timeout: 272 seconds]
pve has quit [Ping timeout: 252 seconds]
pve has joined #commonlisp
jrx has quit [Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.1.50)]
luna-is-here has quit [Ping timeout: 260 seconds]
luna-is-here has joined #commonlisp
danse-nr3 has joined #commonlisp
Cymew has quit [Ping timeout: 272 seconds]
cstub has quit [Quit: Leaving]
cstub has joined #commonlisp
cstub has quit [Remote host closed the connection]
_cymew_ has joined #commonlisp
azimut has joined #commonlisp
inline_other has joined #commonlisp
<inline_other>
hello
<beach>
Hello inline_other.
<inline_other>
sup sup
inline_other has quit [Remote host closed the connection]
danse-nr3 has quit [Read error: Connection reset by peer]
danse-nr3_ has joined #commonlisp
<Inline>
that was me
<Inline>
i just connected from mezzano
<beach>
I figured.
<Inline>
hmmm, the question is how do i change the desktop size and fonts and backgrounds in mezzano
<Inline>
i suppose it's not the right channel for the question, however if some of you use it, you can maybe tell me
<varjag>
i used to know
<Inline>
i saw the settings file
<beach>
Inline: froggey is around.
<Inline>
ah ok
<varjag>
there's also #mezzano
<Inline>
not sure when i edit something in there it will take effect or require me to recompile the image
<Inline>
ah
<Inline>
i forgot about that one totally thank you for reminding
<Inline>
i'll just join
varjag has quit [Quit: ERC (IRC client for Emacs 27.1)]
bendersteed has quit [Quit: bye]
tyson2 has quit [Remote host closed the connection]
son0p has quit [Remote host closed the connection]
lispmacs[work] has joined #commonlisp
<lispmacs[work]>
hi, I want to do a project to write a terminal emulator for a legacy terminal protocol. I was think common lisp plus a gfx toolkit running on Guix Gnu/Linux. Was looking at https://www.cliki.net/gui and wondering what might be a good choice for this project
<ixelp>
CLiki: GUI
<lispmacs[work]>
the main concerns I had were performance (speed of processing the data) and ease of programming
<beach>
lispmacs[work]: For GUIs, the best choice is McCLIM in y
<beach>
er,
<beach>
in my opinion.
<beach>
But I am not sure I understand the requirements.
<lispmacs[work]>
I was wanting to write a program to communicate with some old systems that use Hazeltine command codes to control and get feedback from the terminal
<lispmacs[work]>
It was a 1970s thing
<beach>
lispmacs[work]: So what role does the GUI have here?
<lispmacs[work]>
system sends something similar to ANSI escape codes, to control things like placement of the letters and shading of the characters
<lispmacs[work]>
my software would take the place of the Hazeltine terminal
<lispmacs[work]>
beach: correct
<lispmacs[work]>
and providing menus and such
<lispmacs[work]>
like to switch terminal option on and off, save output, etc
<beach>
lispmacs[work]: If I understand things right, GFX would require foreign code, and I never recommend that, so the choice of McCLIM would be better in my opinion.
<beach>
Yes, I see.
dino_tutter has quit [Ping timeout: 258 seconds]
<lispmacs[work]>
Looking at it, I'm a little confused about what McCLIM is exactly
<beach>
It is a GUI toolkit written in pure Common Lisp. So no foreign code.
<beach>
It is an implementation of the CLIM II specification.
<lispmacs[work]>
beach: what gfx interface does it write to? framebuffer? opengl?
<beach>
I suggested it as an alternative to GFX because GFX is foreign code.
<beach>
But if you absolutely need GFX, then you have already made your choice, it seems.
<lispmacs[work]>
well, if I'm not getting graphics, what am I getting?
<beach>
You are getting graphics with McCLIM.
<beach>
And menus, etc.
son0p has joined #commonlisp
<lispmacs[work]>
so, McCLIM provides graphics, but to what? A framebuffer? A graphics card interface? A jpeg?
<beach>
It has several backends. One is CLX/X11, one is a framebuffer. There might be more.
<beach>
More are being worked on as well.
inline_ has joined #commonlisp
<beach>
SDL for instance.
<lispmacs[work]>
how does it do for performance?
<lispmacs[work]>
well, looks like a guix package is available, so I could give it a try
<lispmacs[work]>
several packages
<lispmacs[work]>
looks like I have to choose between sbcl and ecl
<jcowan>
lispmacs[work]: There is support in terminfo/curses for Hazeltine terminals
<jcowan>
I don't know if there is a (quasi) standard curses interface for CL
rtypo has joined #commonlisp
<lispmacs[work]>
I see with terminfo I could tell an application that I am using a hazeltine terminal, but I don't see how that translates to having a Hazeltine terminal emulator
<lispmacs[work]>
online search into curses and Hazeltine isn't bringing anything up, but I suppose it could be buried in the documentation
eddof13 has joined #commonlisp
mgl has quit [Ping timeout: 258 seconds]
ldb has joined #commonlisp
zxcvz has joined #commonlisp
zxcvz has quit [Client Quit]
<beach>
lispmacs[work]: There is a #clim channel with a lot of very helpful people attending.
<jcowan>
you'd have to have or write a generic terminal emulator that uses curses
<ldb>
it would be simpler just use ecl with a ncurse binding
<ldb>
especially if there is no plan to use other graphic backends
<jcowan>
ldb: ah, I didn't know that existed
danse-nr3_ has quit [Ping timeout: 248 seconds]
tyson2 has joined #commonlisp
_cymew_ has quit [Ping timeout: 260 seconds]
luna-is-here has quit [Ping timeout: 240 seconds]
luna-is-here has joined #commonlisp
wonko-the-sane has quit [Ping timeout: 252 seconds]
cosmeve has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
danse-nr3_ has joined #commonlisp
danse-nr3_ has quit [Remote host closed the connection]
danse-nr3_ has joined #commonlisp
Gleefre has quit [Remote host closed the connection]