libera/#commonlisp - IRC Chatlog
Search
11:41:29
contrapunctus
Additionally, I was splitting up source files into multiple smaller files the other day, and noticed that the existing resources on the subject of writing system definitions are a bit lacking (I checked cl-cookbook, the ASDF manual, and the "writing libraries" section on lisp-lang.org). beach's post might fill that gap to an extent, although I intend to contribute some improvements to cl-cookbook
11:42:25
jackdaniel
speaking of asdf system names, I think that using a string is better, because usually programmers will expect that strings designated by symbols will be upcased (and that is not the case in asdf, so it goes against expectations)
11:44:21
jackdaniel
I'm sure that your page will grow; I'm mostly saying it as a general remark for others
11:51:53
atgreen
Not to sound ungrateful and demanding, but I just noticed that this is the longest we've been waiting for a quicklisp update in about 5 years. Do any of you have any insight into why? Or is there's anything we can do to help move things along? Or is the CL community just slowing down.. so not much new content?
11:53:29
jackdaniel
you may either open it in a tmux or screen session, or write a service/unit/rc file to start it as a daemon
11:54:01
contrapunctus
lisp123: do you mean how to connect to a running remote SBCL process from SLIME?
12:06:40
atgreen
libffi is like quicklisp in one way... if I stopped releasing it, I'm not sure who would pick it up...
12:08:03
jackdaniel
btw if you are interested in frequent updates, there is a separate quicklisp distribution "ultralisp" that takes packages without any qa directly from repositories
12:09:03
jackdaniel
(https://ultralisp.org/ - it uses the same software quicklisp does but is not as resilent to regressions)
12:39:14
Nilby
jackdaniel: i wonder why they wouldn't use the old cheat of using the clos/loop/format/pprint in lower lisp
12:41:33
jackdaniel
if they were all macros that expand to a language subset then it would probably work, but that's not true; clos requires runtime functionality, the same applies to loop, format and pprint
12:42:06
jackdaniel
if you just use sbcl to bootstrap, then you can't rip these runtime parts and use them after the implementation is bootstrapped (but you may use it during bootstrapping of course)
12:47:42
Nilby
the initial version of all of these were written in pre-CL lisp, with any specific runtime support. of course that's not the best way to do it.
12:57:48
Nilby
this one line help me understand what they're going for in LCL: (defun eval (forms) (lua (lua-call "load" (compile-to-lua forms)) "()"))
13:26:38
White_Flame
hayley: yes, that's why programming tools at that level really requires some real measure of AI, because any good communication with humans requires nearly thinking like a human in order to generate a clear, appropriate, and understandable representation about the user-level semantics that the code is implementing
14:10:04
Bike
is there a way with CFFI's defbitfield/grovel bitfield to handle multiple-bit fields? a "flag" takes up two bits and has four distinct states in my case.
14:10:19
Bike
obviously i could break it into multiple binary fields, but then it doesn't match the C API
14:22:10
_death
like (:foo #x1100) .. cffi:foreign-bitfield-value may work as expected, though cffi:foreign-bitfield-symbols would not.. basically there's no support for such a thing afaik
14:24:11
Bike
yitzi: more or less. the C is like { LLVMDIFlagPrivate=1, LLVMDIFlagProtected=2, LLVMDIFlagPublic=3, LLVMDIFlagFwdDecl = 1 << 2, LLVMDIFlagAppleBlock = 1 << 3, etc } with the etc being more actual flags
14:33:11
yitzi
Bike: I think you could use defcenum and defbitfield separately then combine with translate-to-foreign/translation-from-foreign
16:47:11
mfiano
Bike: I'm not sure if this helps. Maybe I misinterpretted your question: https://git.mfiano.net/mfiano/freebsd-ffi/src/branch/main/src/ffi-enums.lisp#L5
17:45:12
Bike
apparently i need to brush up on cffi use generally, because for some reason the grovel bitfield is defining every field as -1
17:47:03
Bike
is there a way to look at the temporary c and lisp files the groveler makes? or should i look for a problem elsewhere?
18:35:30
utis
i'm getting an error from charms when i've closed a tmux window and reconnected: (cl-charms::%cehck-status -1 :error-message "Error in curses call from function cl-charms/low-level:mvwaddstr (received err).") does anyone happen to know what the problem is?
18:36:33
utis
(i.e. i've closed the terminal window and expected that that shouldn't affect the tmux pane)
22:46:47
ashln
I'd like to read a constant number of bytes from a stream (or until EOF), like the interface provided by read(2). Is the only interface to binary file reading to do so one byte at a time with read-byte?