libera/#commonlisp - IRC Chatlog
Search
15:34:00
jackdaniel
generally what scymtym says, that would reduce complexity (at the expense of slightly violating the specification)
15:44:11
scymtym
beach: the funcallable object can store data about the parameters and interpret that data when parsing. i suppose this would work with regular functions as well but less conveniently. for example, if you want to reuse the same function for all commands, you cannot close over the parameter data. to be honest, i don't have this fresh in my mind since i implemented it some time ago
17:17:12
NotThatRPG
Lazy programmer question: Anyone have a comparison function for sorting s-expressions roughly lexicographically? I can definitely write one myself, but if someone's done it, I'd love to save myself the trouble
18:06:48
NotThatRPG
I was thinking this would involve some fussy choices about when to use string-< and when < since the latter doesn't generalize over strings, and thinking about what to do when comparing lists and atoms (I'd prefer the latter come first). Not so?
18:07:14
NotThatRPG
ACTION suspects he actually wrote this at least once, but doesn't have it any more
18:10:47
Bike
i don't think there's any obviously right way to compare a string and a number, or what have you. depends on what you need for your application
18:37:58
NotThatRPG
Bike: I am just looking for something that is lexicographic-ish -- I'd like to make a list of s-expressions easier for a human (particularly a debugger) to read, so it would be nice to make it something like library order, but it's not hugely important.
18:39:25
NotThatRPG
It would probably be enough to have numbers all come before symbols, strings or lists, symbols and strings sorted with string-<= , lists last, and sorted recursively.
23:07:29
pjb
NotThatRPG: a Q&D such function is (lambda (a b) (string< (prin1-to-string a) (prin1-to-string b)))
23:08:06
pjb
NotThatRPG: and then, there are classes that don't have a natural order, eg. standard-object.
23:20:13
nij-
Hello :) I have a class PERSON, currently without a customized print-object method (so it's printed unREADbly). How do I modify its printer so that only when *print-readably* is true the effect I want takes over; otherwise we use the original printer?
23:23:36
nij-
However, as I inspect the PRINT-OBJECT generic function, it seems that there's no method for PERSON yet. I'm not sure why call-next-method would work.
23:24:28
whereiseveryone
hi does anyone know where the home for this library is now? https://gitorious.org/abnotation/midi
23:24:36
pjb
nij-: because you would define this method: (defmethod print-object ((p person) stream) (if *print-readably* (whatever) (call-next-method)))
23:24:48
Bike
next method means going farther up the class precedence list, not like, another method also specialized on the same classes
23:25:06
pjb
whereiseveryone: it moved to gitlab. But it's a clone of another, IIRC, which is in quicklisp.
23:28:15
pjb
whereiseveryone: don't hesitate to contact me if you need help with this. pjb@informatimago.com
23:33:52
whereiseveryone
pjb: Hi, what were you trying to say with this link? https://gitlab.com/abnotation/midi/-/commits/master?ref_type=heads
23:43:43
whereiseveryone
OpenMusic is not as open as it can be: https://github.com/openmusic-project/openmusic/issues/25
23:48:38
pjb
gsharp has its own file formats and editing concepts. I doubt you can easily use it as a replacement for just the GUI of OpenMusic. At least, you'd have to write format converters.
0:00:24
whereiseveryone
or I mean if gsharp ias it currently stands can be used as a key component of a computer-assisted environment similar to OM?
3:24:32
mfiano
whereiseveryone: Some projects have multiple forks, some are merged upstream, some diverge. They have the same name. Doesn't Guix have a mechanism for this common pattern in open source software?
3:28:33
whereiseveryone
mfiano: variables and the version field for the <package> record can be used from the command line as a package designator with @ symbol iirc
3:29:11
mfiano
Well there's your answer then. pjb's fork is not at the top of the tree. You can add both (and more).
3:30:18
mfiano
My first instinct would be to go with what people expect, that is, what everyone else using Quicklisp is using.
3:31:49
whereiseveryone
mfiano: BTW, check this out: https://git.sr.ht/~whereiseveryone/guixrus-scripts#modified-guix-shell