freenode/#lisp - IRC Chatlog
Search
15:24:09
Josh_2
https://www.amazon.co.uk/Let-Over-Lambda-Doug-Hoyte/dp/1435712757/ref=sr_1_1?keywords=let+over+lambda&qid=1564154627&s=gateway&sr=8-1
15:28:28
Bike
the whole book isn't available as an ebook, and they don't sell chapters individually.
15:29:23
Bike
hoyte seems fairly smalltime. you could maybe just email him and ask if he offers a pdf or something you could buy, since he does have some chapters as html
17:28:54
aoeu256
Is this a good place to ask noob questions? I was wondering if using Prolog/Constraint Solvers in Lisp can practically reduce bugs and code size. Also where do I find a collection of macros that can increase productivity, it be nice if there is a collection of inference/static analysis/static test/tracing macros.
17:32:00
remexre
I'm having some trouble with Trivia; I'm trying to create a pattern foo, where both (foo x) and (foo x :bar y) are valid, and where x matches against the baz slot and y matches against the bar slot of objects of the foo class?
17:33:02
remexre
I've got (defpattern (foo x &key y) `(foo :baz ,x :bar ,y)), but this complains about foo not being a defined function (which sure, it isn't, but the trivia docs make it look like this is the correct usage)
17:34:01
warweasle
Hi. Did work last night. I almost have my unequip/equip and unequip/interaction/reequip working.
17:38:57
warweasle
sahara3: You would very much like to eat a large "porque" with a dog from Venezuela?
17:40:07
warweasle
Xach: Unfortunately, no. Not unless I get my lisp interpersonal political sim working.
17:40:21
aoeu256
There was this millionaire guy Paul Graham and he said he used macros to to make his code shorter by a lot / optimize his code. I wonder which Macros he used (other than those he talks about in his book). He talks about as if he knows what what our "highest-level" languages 30-60 years from now will look like.
17:40:53
warweasle
Xach: But if I could get some help rewriting Unreal Engine to lisp...that would be great.
17:41:25
Josh_2
aoeu256: yes, you can do that quite easily if you understand how to write good macros
17:44:06
warweasle
I'm pretty sure our highest language in 30 years will involve grunting like cavemen.
17:44:08
aoeu256
Yeah, but before we get to English well get to something half-way between Lisp and English, and it'd be nice to program in that.
17:47:06
warweasle
We need a way to speak lisp natively. I'm tired of translating ideas from english to lisp.
17:49:23
aoeu256
Hmm infix would be nice in the repl, and then change the infix to lisp especially with pipes(|>).
17:51:22
aoeu256
but sometimes its easier to type something when you can reorder the expressions anyway you want
17:53:24
aoeu256
Like lets say your writing code and you forget you needed a let, but your inside the expression. How do you write the let on the outside?
17:58:37
aoeu256
like lets say you are writing EXPR| and then you figure out you wanted (let (blah) EXPR|) where | is the cursor, or any thing else.
17:59:50
ck_
you type C-M-u to go up the syntax tree, then M-( to wrap the expression in parentheses, then type let ((var binding)...)
18:03:41
ck_
that gives you commands like redshank-letify-form-up and other more composite editing verbs
18:48:30
Josh_2
if I have two strings "a" and "1" how can I tell that one can be passed to (parse-integer ..) and the other cant?
18:49:09
Josh_2
I can obviously just catch the condition when I eval (parse-integer "a") and then do something, but I am curious if there is another way
19:27:48
pjb
edgar-rft: *print-radix* doesn't matter. if *read-base* = 2, then 2 is read as a symbol.
19:51:21
pjb
edgar-rft: perhaps, but since we cannot use base 0 to have 0 and 1 read as a symbols too, we'd have to use a reader macro anyways.
19:52:18
aeth
oh, that's fun. of course 'a is 10 when *read-base* is 16 and of course '9 is |9| when *read-base* is 8.
19:53:49
aeth
Now, when you match *print-base* with the *read-base* to, say, 8... well, now *print-base* and *read-base* are both 10 and '9 is 9, not |9| haha
19:58:02
pjb
You want to write your integers with a decimal dot to ensure base ten: (setf *read-base* 7) (setf *read-base* 16) (print (list 'a 'e '9)) (setf *read-base* 16.) (list 'a 'e '9) prints: (10 e 9) returns: (10 14 9)
19:58:55
pjb
Imagine the fun you could have, by messing with *print-base* and *read-base* in a few reader macros…
20:02:52
aeth
pjb: Imagine the fun you could have by SETFing *print-base* and *read-base* in a basic dependency that's loaded early on by ASDF, such as in Alexandria!
21:54:52
sahara3
p, li { white-space: pre-wrap; } Anuel AA, Daddy Yankee, Karol G, Ozuna & J Balvin - China
22:20:45
aeth
Not one line about Lisp or Common Lisp. I wonder how they found this place, and if they had a Lisp question and were just waiting to ask or if they thought this was some general chat room.