freenode/#lisp - IRC Chatlog
Search
5:55:03
charles`
I've found that the path of least resistance is to not use the library that depends on base64
5:56:07
charles`
I still think, as a community, something should be done about cl-base64, not only does it use a generic nickname, the git repository and maintainer are not accessible.
6:17:16
beach
charles`: The only way that will happen is if someone decides to work on it. There is no community decision process that will make it happen in any other way.
6:18:57
fiddlerwoaroof
charles`: my suggestion would still work, you just have to put the system that depends on cl-base64 as the dependency of the system with the patch
6:20:26
aeth
charles`: or create a superior library with a compatible API and get the library that uses cl-base64 to switch
9:12:36
beach
OK, so here is some food for thought to break the silence... How hard would it be to create a Linux/BSD/whatever "desktop" in Common Lisp?
9:12:37
beach
That would involve the window manager (we have two of those I think), a workspace manager, and a bunch of little gadgets like the volume control and stuff like that. And could it be done incrementally, so that one could gradually replace existing gadgets?
9:13:35
beach
I am asking because I am tired of the existing "desktops" and I don't see myself improving them, given the language used.
9:16:05
beach
But either way, the display server would have to be isolated from the rest so that it could be easily replaced.
9:17:37
mfiano
No, infact he recommends people to use other libraries, as cl-who has a lot of bugs and he can't recommend using it (from an email discussion I had with him a few years ago), which is why his book, Common Lisp Recipes, recommends alternatives.
9:38:53
ralt
beach: stumpwm is clearly the one that has a community. writing new modules is not too hard.
9:40:26
beach
Thanks. I don't see the volume control as a contributed module of the window manager, though. Am I wrong?
9:41:25
beach
ralt: No I meant, is the window manager the right place for such a module? I wouldn't think so.
9:44:38
ralt
an example I like is pinentry support: https://github.com/stumpwm/stumpwm-contrib/tree/master/util/pinentry
9:45:44
ralt
it starts a server in a thread, and whenever gpg-agent or ssh-agent is trying to grab a key, it hits that server, which draws a new x11 window to ask for your password, and replies to gpg/ssh-agent
9:49:09
pranavats
beach: There's also EXWM which allows one to manage X windows using Emacs, in case you are interested in extending "desktop" using Elisp.
9:52:34
beach
So if everything is done with the keyboard, how do I get applications like the one that lets me slide little pictures of my monitors to determine their relative position? I think I am saying that I am not sure that all mouse-based applications should be banned.
10:00:30
frodef
Spinner apparently won't do the syntax ((:sometag :someattr value) <content>), only (:sometag :someattr value <content>), which means source code formatting/indenting is not great at all...
10:27:12
VincentVega
Hi, all! Is there a way define a setf which would work like this https://pastebin.com/bB8kHwSu ? I was thinking of defining a slot named approximate-x but that seems hackish since I don't really need an extra slot, just the setf capability.
10:31:47
flip214
Is there an easier way than my own DEFCLASS* so that the accessors by default modify an object referenced by a special variable? Like with HUNCHENTOOT:HEADERS-IN* and similar.
10:35:07
flip214
they read and write _a_ class instance still, just a "default" instance if none is given
10:35:48
shka_
i wonder though, would it be possible to run every application in the same lisp process?
10:37:05
flip214
https://github.com/edicl/hunchentoot/blob/d684a9002665ca91477e98a5c777ead202c14306/request.lisp#L399
11:09:32
flip214
devon: can you make it a symbol-macro that expands to a SETF clause that you can trace or just define to an (ERROR ...) clause?
11:22:44
jackdaniel
shka_: something like this? https://files.mastodon.social/media_attachments/files/105/340/120/234/953/787/original/5754ea8397d70ba2.mp4
11:23:18
jackdaniel
n.b there is "clim window manager", it is called doors. I haven't used it myself though
11:24:00
jackdaniel
there is a warning, that it is still a sketch, but I saw a video and it seems to work
16:43:03
zmagii
beach: I have file.lisp opened in Emacs, it shows SLIME in the status bar. How can I run the code?
16:45:45
beach
So you can do (load "file.lisp") and then evaluate calls to functions defined in the file.
17:02:24
dbotton
Is it valid in a let* to rebind same symbol multiple times, ie (let* ((a 5) (a 4))) ?/
17:06:18
dbotton
So if I create a CLOS object then rebind the variable it will persist till end of scope
17:07:55
pranavats
A let* is equivalent to nested lambdas with variable names as an argument and applied to their values.
17:09:41
deselby
OpusModus Convention, second day streaming now! https://www.youtube.com/watch?v=2wqU8Ki622M
17:10:20
pranavats
dbotton: Where ... represents the body. So yes, a would still be bound to 5 in the outer lambda.