freenode/#lisp - IRC Chatlog
Search
2:03:13
slyrus1
I'm still thinking about this closure-common rune thing and trying to figure out a good approach.
2:03:43
slyrus1
The problem is that the assumptions about rods/runes don't seem to be (always) true in current SBCL.
5:09:05
White_Flame
is there any name or notion for currying that can happen in any order? it always seems difficult to me to use currying, because it's not guaranteed which of the parameters I'd want to predefine
5:35:29
theemacsshibe[m]
ACTION sent a long message: theemacsshibe[m]_2018-04-13_05:35:29.txt <https://matrix.org/_matrix/media/v1/download/matrix.org/tbWgwDVOXjtwtfcslaGQxbDS>
5:42:01
White_Flame
I mean, given (lambda (a b c) ..), maybe you want to set b first, then c, then a, or whatever, as separate steps
5:42:23
White_Flame
but yeah, if you (lambda (b c a) (funcall thing a b c)), then you can curry the outer per ordering you want I guess
5:43:26
phoe
because then a programmer will know that the order in which you bind these variables matters
5:43:54
White_Flame
"setting" as in holding on to a partially applied function, except choosing which parameter to apply first
6:13:21
johnnymacs
So what confuses me about lambda calculus is that everything in the program is stored inside of a single function all of the time
6:14:01
johnnymacs
So if the current function is a list it can't really do anything else to be a list
6:14:18
johnnymacs
I need some combinators that will help me actually store multiple things at once and reference them
10:11:07
jcowan_
Eventually syntax extension was done by extending DWIM so that it would rewrite the new syntax into the old
10:57:05
phoe
minion: memo for beach: Hey! I have a question. We have a protocol, a generic function (FROB FOO), a protocol class FOO, a concrete class STANDARD-FOO, and its subclass NONSTANDARD-FOO. Should a protocol be able to mandate "direct" participation in a protocol for subclasses of FOO?
10:58:05
phoe
minion: memo for beach: By "direct" participation, I mean - there has to be a (defmethod frob ((foo nonstandard-foo)) ...) and not merely a (defmethod frob ((foo standard-foo)) ...)
10:59:53
phoe
minion: memo for beach: This is meant to be used in cases where the protocol author requires that each of the participating classes specifies its own behavior and does not rely on its superclasses' methods.
11:00:51
phoe
minion: The more I think about this idea, the less sane it seems to me, because it seems silly to put arbitrary limits like this. If NONSTANDARD-FOO merely logs some information to standard output, then it would be pointless to (defmethod frob ((foo nonstandard-foo)) (call-next-method)).
11:00:53
minion
The more I think about this idea, the less sane it seems to me, because it seems silly to put arbitrary limits like this. If NONSTANDARD-FOO merely logs some information to standard output, then it would be pointless to (defmethod frob ((foo nonstandard-foo)) (call-next-method)): An error was encountered in lookup: Parse error:URI "https://www.cliki.net/The more I think about this idea, the less sane it seems to me, because it seems silly to put arbitrary lim
11:01:00
phoe
minion: memo for beach: The more I think about this idea, the less sane it seems to me, because it seems silly to put arbitrary limits like this. If NONSTANDARD-FOO merely logs some information to standard output, then it would be pointless to (defmethod frob ((foo nonstandard-foo)) (call-next-method)).
11:06:13
minion
minion memo for minion minion: An error was encountered in lookup: Parse error:URI "https://www.cliki.net/minion memo for minion minion?source" contains illegal character #\ at position 28..
11:07:52
thblt
Not directly a common lisp question, but how would you implement a Lisp evaluator without any recursion (= without using the host language's recursion facilities)? I have a stack of pointers, so I was thinking of defining like 10 opcodes as invalid pointers and pushing them to the stack to determine the next operation. The eval loop would then start with something like " opcode = pop(); switch (opcode) {...". Is this a strange idea
11:09:55
thblt
FWIW, the WIP draft of the opcodes set is here: https://paste.thb.lt/1523617766.h.html
11:12:02
jackdaniel
thblt: you may see bytecode interpreter implemented in ECL source code src/c/interpreter.d
11:23:17
phoe
_death: I actually have to ask, why do you have an underscore in the beginning of your nick?
11:44:00
_death
I think I've been using "death" (used to be in caps) since 1998.. at least it's mine on some sites (github/reddit/hn)