freenode/lisp - IRC Chatlog
Search
11:51:57
Nilby
mfiano: I hope someday I'll have my code working well enough that specialization-store would help. It looks cool.
12:28:19
flip214
Nilby: if some arguments weren't supplied, your &rest won't have them, and so they'll not passed on either
12:52:57
Nilby
flip214: Thank you. But I've decided to just do (defmacro nil (&rest x) `(lambda ,@x)) and write the rest of my code using only quasi-quote.
13:06:15
Xach
heisig: what is the license for https://github.com/marcoheisig/sealable-metaobjects/ ?
13:13:43
heisig
Xach: Do you have a script that checks whether a project is well formed (license, description etc.)?
13:17:24
heisig
Something that library authors can run before submitting their project to quicklisp-projects.
13:21:41
Xach
i need :license, :author, and :description. some form of README file is not checked but would be useful to highlight.
13:23:41
heisig
One could also include some other community guidelines, e.g., how the :author argument should be formatted to make Quickref happy.
13:27:23
heisig
Xach: Should I hack a prototype and make a PR on quicklisp-client? Or should such a style guide be moved to a separate library?
13:29:37
Xach
heisig: I think it is suitable for quicklisp-client. I think it best to keep it extremely simple: check an asdf system for those three fields
14:34:53
pjb
You NEED to qualify symbols with a package where they are accessible, when they're not accessible in the current package.
14:35:14
pjb
You can make them accessible in a package, by using a package that export them, or by importing them directly.
14:36:08
Lycurgus
a CL thing that dealt with implementations from more than an install perspective would be nice
14:39:22
beach
skidd0: I find the code much clearer when every symbol except the ones from the current package and from the COMMON-LISP package has an explicit package marker.
14:42:05
skidd0
ah, that's my problem then. i was wondering why use-package wasn't finding the symbols
14:43:07
Lycurgus
"few people have the imagination for reality" - a goethe quote just seen as an opening quote on a movie
14:52:25
jackdaniel
schweers: they are adopted in four implementations already (sbcl, ccl, ecl and abcl)
14:57:59
jdz
My guess is that SBCL's interface is good and small enough and is the one implemented in other implementations.
15:01:27
jackdaniel
I wouldn't compare it to mop, it should be portable and stable under #+package-local-nicknames feature
15:01:58
jackdaniel
mop specifies additional protocols while pln modify existing constructs (like adding a new options to defpackage)
15:04:48
skidd0
so then on line 444 there, the format string is supposed to turn into a comment and ruin the rest of the code block?
15:06:18
pjb
First, it should query the readtable to detect what character the comment reading reader macro function bound to…
15:07:14
pjb
https://github.com/informatimago/rc/blob/master/common.lisp#L302 selects all the packages I want to have direct access of the exported symbols to, in CL-USER.
15:08:35
pjb
skidd0: yes, because I actually define a com.inforamtimago.pjb package, export them from here, and use this package in cl-user.
15:10:45
ebzzry
Xach: you may already be aware that the certificate chain of quicklisp.org is incomplete. just a reminder.
15:32:51
flip214
Xach: how about giving zpng an easy way to initialize a new image to white/black/transparent, directly via the MAKE-INSTANCE call?
15:33:17
flip214
"easy" as in "it's not required to calculate dimensions of an array, allocate and/or set it"
15:52:20
Josh_2
I have this sammich maker which I made for exercise 2.3 from PAIP https://plaster.tymoon.eu/view/1393#1393 I was wondering how I would make selection of specific types of fillings based on some rulesfor example if I have cheese then I don't want meat etc
16:17:46
gaze___
hey I think I'm misunderstanding something very basic about quoting. When something is quoted, does the reader go "inside" the quote and convert anything inside the quote into a reference to something, or is a quoted list just... a list of words and nothing else?
16:18:33
beach
gaze___: when the reader sees the ' character, it recursively calls itself to read what follows.
16:19:30
gaze___
if I have a (defun x (...) ...) ... (quote x), is there now a reference to x hanging around, or is it just the name "x" hanging around?
16:21:51
beach
gaze___: Read is going to create the symbol y in the current package, or return the existing symbols if it does exist.
16:22:03
Bike
(quote (x y)) will evaluate to a list of symbols. whether those symbols name functions is immaterial.
16:23:23
gaze___
okay I think we're getting closer to what I want to know... what exactly is a symbol then? does a symbol have to point to something or is a symbol just a name?
16:25:26
fivo
https://github.com/robert-strandh/Concrete-Syntax-Tree/blob/8d8c5abf8f1690cb2b765241d81c2eb86d60d77e/reconstruct.lisp
16:25:40
beach
gaze___: Common Lisp uses what I call "uniform reference semantics", which means that it is as if every object is represented by a reference, or a pointer.
16:27:11
fivo
Wouldn't it be somehow possible annotate R with the source locations before the macroexpand
16:28:52
beach
fivo: No, because the macroexpander takes a raw Common Lisp list, without any annotations.
16:28:59
fivo
I am not sure I make sense, but essentially annotate every subexpression of R with source location and then somehow do the macroexpansion
16:29:50
Bike
gaze___: whether it's quoted doesn't matter. (list 'x) '(x) (list (find-symbol "X" "WHATEVER-PACKAGE")) are all forms that return lists that refer to the symbol (so the GC would follow through)
16:35:08
beach
The main difficulty is that anyone can define a macro, so the body of the macro can't be turned into normal code, because then it would operate on raw Common Lisp expressions.
16:36:11
beach
So you would have to interpret or compile that code in a way that, when it operates on CONSes, like with CAR, CDR, CONS, it would instead have to emit the corresponding operation for the CST.
16:52:12
jgkamat
if any of you guys use the next browser, please update to the latest version, older versions had an RCE exploit
17:00:32
grewal_
A simple way would be to have, e.g., (meat-filling (cheese) (meat)). And then change your rules to choose one of them.
17:02:45
grewal_
Doing something like that quickly blows up the number of rules you have, so you might want to create a shortcut like (filling (2 *) (spread veg sauces herbs meat-filling)) where (2 *) means choose any 2,3,..., or all of the following items
17:09:48
_death
there's no need to constrain the specification to a "grammar".. you can just describe what you want in the most direct way and have an "engine" interpret it to provide the required outputs.. if performance becomes an issue you can then tweak the specification, add a compilation stage, etc.
17:10:35
_death
it reminds me of this post: https://groups.google.com/forum/message/raw?msg=comp.lang.lisp/-uoDKZeKBr4/qGgFy-M3mvoJ
20:34:26
rpg
It's a great idea, but I don't see any information about how to configure the Python process, and the docs are quite limited.
21:15:48
aeth
"trivial-left-pad — Ports the functionality of the very popular left-pad from npm. — MIT"
21:25:14
aeth
I mean, really, it goes full circle when someone ports that to Parenscript because it's more functional than the actual left-pad
21:26:26
aeth
no-defun-allowed: unfortunately, I can't just remove it from Quicklisp without warning once half of Quicklisp indirectly depends on it and instantly break everyone's code
21:28:33
aeth
It really does seem like a dead joke 3 years later. And in a few years, no one will get the joke.
21:32:51
aeth
It's a 3 years old April Fools project that got almost no attention on April Fools 3 years ago.
21:38:28
aeth
In 2017, I did a functional Brainfuck for April Fools, which I think is more useful than trivial-left-pad. I didn't do any jokes for 2018 or 2019 because I think the Internet has kind of killed April Fools Day in general. I didn't even go on the web at all last April 1st.
23:35:10
rpg
Does anyone know if there's a library that would do pattern-matching or unification specifically for hash-tables or property lists? I.e., structures with named components?
23:35:40
rpg
This does not seem like rocket science, but it seems like something someone might well have done before.
23:47:33
rpg
Bike: I imagine it could, yes. I'd like unification better than pattern matching, though, if I can get it.
23:48:26
rpg
cl-unification doesn't really do unification, because of its templates, so it's not a symmetrical operation like unification.