freenode/#lisp - IRC Chatlog
Search
22:03:19
jmercouris
if you think that is enough to solve the issue, test it and submit a PR, they are welcome..
22:04:51
jgkamat
it won't solve the issue, but it will at least make people on your subnet not be able to do RCE on you
22:05:19
jmercouris
then it is pointless, usocket must support unix domain sockets, that is the only fix
22:06:01
jmercouris
I also refuse to use SBCL specific unix domain sockets, I want cross implementation compatibility
22:08:42
jmercouris
yes, but please, rephrain from calling it a mess, it isn't a very nice thing to say
22:46:17
jackdaniel
each time I think about projects I work on I see an endless ocean of mess. I think it is something inherent to lisp.
22:48:07
jackdaniel
otoh usually it is a constructive mess (i.e when I spend a reasonable amount of time to grok things I see that doing it this paticular way makes a lot of sense), so the perceived mess-ness is just ignorance. but sometimes it is just a mess which needs to be fixed.
22:48:55
jmercouris
jackdaniel: since you are here, I can ask you, this McClim TUI that you developed, would you suggest it for usage?
22:49:56
jackdaniel
I've just shown a proof of concept that a reasonable CLIM backend could be written for CLIM
22:50:58
jackdaniel
that said I have a semi-working backend for McCLIM which renders to a console - it is not published nor workable yet though
22:52:51
jmercouris
my memory is usually pretty good, so when you said that you had not worked on a TUI backend for McCLIM I was very confused
22:55:26
jackdaniel
gilberth: I'm really tired right now, but if you don't mind I'll bother you with some ideas in a few days (CLIM related) - is that fine?
23:23:33
gilberth
Perhaps Tipsy_2 was the most offensive person I could find at that time [something like ten years ago] to demonstate incremental redisplay upon?
23:25:13
Xach
gilberth: I don't think so. I think it was a one-time visit to check on and disparage the CL array indexing decision.
23:27:35
gilberth
And then my wife complains all the time about me, that I would remember everything. Seems like Xach is worse. :) But then I am olde.
23:27:38
Xach
gilberth: No, but the nick is not familiar, so if they visited more than once, it did not make much of an impression.
23:29:56
Fare
(my understanding is that CMUCL's CLOS has experienced breakage but nobody's there to fix it anymore)
23:30:34
Fare
but when I code some Lisp, these days it's Gerbil for new code, or Common Lisp for my legacy code.
23:31:32
Xach
"A Lisper has gone / Uninterned from this mortal package / Yet not GC'd / While we retain pointers to his memory"
23:33:21
Fare
At least nikodemus, stassats and Xach are pissed at me. At least Xach for good reasons.
23:33:50
Fare
(Not sure about Nikodemus, I discovered only 10 years later that he was pissed at me, he never told me why exactly.)
23:34:47
Fare
The biggest item that would justify a modicum of backward-incompatibility would be cross compilation.
23:35:26
Fare
Totally non-deterministic: everything is done via side-effects to the current image state.
23:36:00
Fare
more as a necessary consequence of the architecture: you can never protect against someone or something side-effecting the environment.
23:36:32
Fare
if anyone dynamically calls ASDF while some of the reader variables are bound to non-standard values, the result can be "interesting".
23:38:02
jmercouris
and for all of those that have complaints, valid they may be, but it is easily top 3 most meaningful contributions to the Lisp Ecosystem, so thank you for that
23:38:04
Fare
well, most people most of the time have the discipline and decency not to do anything too bad with the lisp image while they build. But that's not a guarantee.
23:38:43
jmercouris
whatever, you are frequently credited with UIOP/ASDF, and I think those are of great value, so thank you
23:38:55
aeth
as far as being indexed at 0 instead of 1... that is the worst reason to not use CL... just write a macro or inline function to do the (1- index) translation if it's too hard to translate the elaborate 1-based algorithm (e.g. a matrix one).
23:41:00
aeth
Yes. I actually use a matref macro (has to be a macro because of the inline expansion limit) for matrix code because all of that (well, the raw math and algorithms as opposed to concrete implementations) is 1-based and I don't want to make a logic error translating it.
23:41:38
jmercouris
(defun cool-aref (array &rest subscripts) (aref array (mapcar (lambda (i) (+ i 1)) subscripts))) :D
23:42:35
aeth
As far as problems with ASDF, the (nitpick) problem I have with it is that it's not at all easy to add support for other languages, even though it seems to be theoretically possible.
23:49:01
Fare
though if I were still maintainer, I'd consider moving this support from a cffi gadget to asdf itself. Maybe. Or then again maybe not.
23:50:03
aeth
Well, my main complaint is that it seems to require adding a lot of different things in many different places, which requires a decent understanding of ASDF internals, at least when I was looking into it. There isn't just one or two places to add methods.
23:51:18
Fare
the ASDF internals are still underdocumented. But at least there are documents that explain them nowadays. That used not to be the case.
23:52:57
Fare
I would recommend my 25-page ASDF 3 essay if you want to grok ASDF internals. At least the parts that discuss the object model.
23:53:44
Fare
it's weird, but it was a very interesting invention by danb (as inspired by Kent Pitman).
23:57:46
jasom
aeth: I've settled for just adding a dummy lisp file that invokes a native build system (such as make) when loaded.
23:58:45
Fare
Retrospectively, one thing that surprised me most was that in the old MIT Lisper vs Unix hacker debate, the Lisper claimed to be seeking the "Right Thing" when the hacker was looking for "good enough", but ASDF 1 and most Lisp libraries I've seen were much more "good enough" than "the Right Thing". Maybe it's a generational thing, too. I became a Lisper in the 2000s, when that debate was from the 1980s.
23:59:39
jasom
Fare: though it should be said that nearly all build systems are more "good enough" than the "Right Thing"
0:00:03
jasom
at least partly because it's very hard to be both very general while still doing the "Right Thing"
0:01:11
Fare
and as far as ASDF goes, there was a clear mission creep as to what makes it "good enough" from danb's ASDF 1.85 to Gary King's 1.369 to my 2.000 to my 2.26 to my 3.0.1 to my 3.1.2 to my 3.2.0 to my 3.3.0.
0:03:18
aeth
jasom: adding a dummy lisp file doesn't work for my purposes because this is a language that's compiled to CL so there is a two step foo.bar -> foo.lisp -> foo.fasl process.
0:04:18
jasom
aeth: that should still work just fine, as dependencies are loaded before a given file is compiled, right?
0:05:54
Fare
I remember doing that. Maybe it was for the Python to CL implementation, maybe for the FORTRAN to CL compiler. Or maybe some FFI that compiled to C.
0:09:38
Fare
aeth, if generated, the foo.lisp will typically be redirected by the OUTPUT-TRANSLATIONS.
0:27:40
aeth
jasom: The problem is that to transparently use ASDF to have foreign-to-CL dependencies you need to be able to have a simple foo.bar -> foo.lisp -> foo.fasl and have ASDF treat those FASLs as if they were CL
0:29:21
aeth
Fare: output-translations doesn't sound familiar so I think I might have been missing that.
0:30:42
aeth
Fare: Another problem I was getting a lot iirc is that I couldn't modify ASDF and use those modifications in the same place iirc. The issue was adding support for .scm files in general in cl-scheme while also having some of the implementation of cl-scheme be in .scm files
0:31:28
aeth
(cl-scheme is not my intended final name but if I say the intended final name that I have in mind, the likelihood of the domain names being grabbed greatly increases)
0:32:01
aeth
(I say intended because I can't even search for the domain name without increasing the chance of it being camped by expressing interest in the domain name so it could already be taken...)
1:10:36
verisimilitude
You haven't matured much from what I see, Xach, with my experiences with you.
1:15:25
no-defun-allowed
Immaturity isn't a problem, but to not seem unfriendly you have to hide it behind a lot of wit at least.
1:41:41
Fare
aeth, I sorry was not on IRC. I don't know what you're trying to do, but whatever it is, I will gladly help with telling you what to do and not to do with ASDF.
1:42:39
Fare
I also have suggestions of names for a Scheme implementation. Such as "Agley" (because "The best laid schemes o' mice an' men / Gang aft a-gley.").
2:00:35
aeth
Fare: One reason why I want to do proper ASDF integration is that then you could run any library in Quicklisp that doesn't use elaborate (especially tree-walking) macros with a few wrapper files that could probably even be semi-automated.
2:03:49
aeth
One of the reasons it's incomplete is because I need to solve the integration and performance issues before finishing it.
2:05:58
aeth
Fare: it looks like what I was trying to do last time I attempted anything was a perform compile-op and perform load-op for a new scheme-source-file class. I was also looking into output-files. I wasn't aware of output-translations.
2:07:10
aeth
Iirc, what made me stop experimenting is that I didn't know where to put the method definitions. These have to somehow run *before* the defsystem afaik, but I can't just put them above the defsystem in the .asd file.
2:08:40
aeth
The real challenge is that probably half of the code implementing the Scheme will eventually be in Scheme .scm files, but the scm-to-lisp compilation function will be done in a .lisp file as part of the implementation details.
2:08:54
aeth
I guess I'll have to break it into at least two systems, possibly with two separate .asd files.
2:20:45
Fare
aeth, do you want to discuss it on a video call? It might be faster to get information through.
2:22:26
Fare
And yes, often separating your code in multiple .asd files can help, especially if you need to use defsystem-depends-on.
2:26:04
aeth
hmm... I don't think I have a functional web cam on my desktop. I purchased a microphone for gaming, but not a camera. Years ago, I plugged in a bunch of old webcams from probably pre-2005 and none of them had functional Linux drivers.
5:50:39
beach
Hey gilberth. I am preparing my ELS talks, so I spend more time in #sicl than here in #lisp.
6:51:44
dtw
There are several command-line parser packages in Quicklisp distribution but I have been unhappy with all of them: too fancy object system which I don't want to use, too much automatic messages or return value is unnecessarily complicated to parse. So I have used my own parsers which I have now generalized and published as a package: https://github.com/tlikonen/cl-just-getopt-parser Maybe someone wil find that useful.
7:08:28
verisimilitude
This only affects those who live in countries that don't recognize public domain.
7:21:52
flip214
Is there a YAML parser that records line numbers on the input, so that meaningful error messages on _semantically_ invalid data can be thrown?