freenode/#lisp - IRC Chatlog
Search
19:19:31
rme
In a way, I kind of like CL's weird things. It's like the people of Amsterdam who eat herring from the street vendors: it's weird to outsiders, but the locals like it.
19:27:55
FareTower
rme: I love CL, but I recognize it and its community are dysfunctional in many ways
19:29:59
FareTower
maybe attracted to lisp precisely because it can do so much with so little collaboration
19:33:45
warweasle
FareTower: I mean things like "true" and "false". print and such. People expect it.
19:44:49
rme
I'm trying to look in the mirror to see if I'm autistic, neophobic, and quirky. Maybe I'm a little neophobic, but that's partly because change is inevitable but progress is not.
19:46:51
FareTower
lispers like to boast about all the innovation that lisp was about, but do precious little innovation these days
19:48:57
makomo
i always wonder whether such a thing could be true. i mean, it's not like any such essays have any data to back up their claims
19:49:21
warweasle
FareTower: Well, we just add changes on top of the others. And we make a mud-ball.
19:49:54
rme
I don't like those "lispers are bipolar" or " lispers have asperger's" essays and talks. They are not true and not helpful.
19:55:13
loli
how bad of an idea is it to pass a dynamic variable down to do method/function dispatch? Is there another method that will allow me to change what a function means after the fact?
19:56:19
Xach
loli: using special variables for that is pretty common, e.g. *print-case* changes behavior
19:56:19
loli
I'm using dynamic variables to be <>, bar, and mempty ie simulating the monoid for my finger tree
19:57:38
loli
I'm using a secondary struct for users to make their own finger tree, the issue is that with the lazy eval,I have to overload every function for the correct values to be gotten
19:57:44
jmercouris
rme: +1 those essays are bullshit, most likely not even written by lisp developers
19:58:46
phoe
FareTower: I was, and am. Currently on hiatus because of real life taking up most of my real life CPU time.
19:58:50
jmercouris
FareTower: It's in progress, when it is done, it will be done (temporarily on hold)
19:59:38
phoe
FareTower: it evolves on its own pace. It's a slow pace, but then again, things are not done unless someone does them, and Lisp does not have many* people who have the will, energy and time to do them.
20:01:17
FareTower
a lot of CL hackers could each put 2 days proof-reading / annotating / whatever a small part of the the CLHS
20:01:22
phoe
FareTower: I was complaining about exactly this thing a day ago perhaps, you can search the #lisp logs.
20:02:19
FareTower
I've met people who explained that they learned PHP because it had a great community and great documentation. These can do wonders even for a shitty language.
20:03:02
phoe
the CL cookbook has a lot of fresh and awesome content, when it comes to *new* documentation
20:05:28
phoe
Things like https://lispcookbook.github.io/cl-cookbook/error_handling.html are all fresh stuff.
20:08:47
makomo
FareTower: i saw that post of yours where you mentioned that (a mailing list, i forgot which one)
20:14:20
phoe
FareTower: I really want to finish my Lisp documentation project and make it go live despite all the delays, especially since "every year there's a new kid in the block who wants to curate CL libraries. So far, Xach is an exception in actually doing it and sticking to it year after year."
20:36:23
phoe
upsides: there's obviously energy and will to be spent, because if people have the energy to constructively complain, then they have the energy to make things better
20:36:53
phoe
downsides: it's trivial to let people down in this scenario since if there's nothing they can attach their frustrations and wishes for a better state of things to, they'll just leave
20:37:27
phoe
but heh, this thing has been discussed 9001 times before, half of which happened on #lisp
20:40:05
FareTower
phoe: I spent all my non-mercenary CL energy. But I want to leave the place in a better state than I found it, so I'm probably gonna stick until ASDF 3.3.2 is released that fixes the regressions with 3.3.1
20:48:01
FareTower
most people don't seem to notice... hard to tell whether it's success (seamless experience) or failure (no one cares)
20:49:36
phoe
I never realized how important it is to value people's work until I finally noticed how God damn hard, annoying and exhausting it is to ship working, polished software, as compared to happy hacking.
20:50:53
phoe
Which came with some experience. I had to learn this, valuing people's work, and I had to learn it by hours of bugfixing, coding, listening to people's requests, complaints, whines, praises and weird stuff I'd rather not mention here.
20:51:27
phoe
so, huh, it might sound pretty weird, but I stopped really expecting "normal bread-eaters" to notice how much work it takes to deliver something that works as expected.
20:52:13
phoe
well, a part of my work is that it makes vroom vrrrroooooom sounds. but also that it doesn't explode in all the various configurations for this person, other people, or other circumstances.
20:52:46
phoe
this, and also how much time it takes to bugfix stuff as compared to implementing new features. this ratio only goes higher and higher over time, too.
20:54:11
phoe
so it's pretty damn weird, but, "most people don't seem to notice... hard to tell whether it's success (seamless experience) or failure (no one cares)" - I'd agree with most of it except the last part
20:54:27
phoe
people tend to care, they just rarely have any idea of how the whole process looks like
20:54:53
phoe
even if they understand basic programming, they think that software developers are doing programming, where they are actually doing software development
21:42:56
jmercouris
phoe: I think unless a developer has released a product themselves, they do not know this, as part of a company you are shielded from this by sales people, and other customer facing individuals (support etc)
21:43:35
jmercouris
phoe: That is also why I am hesitant to call myself a programmer, I don't merely program, that is just one step
21:44:58
phoe
jmercouris: by my personal nomenclature, I think it's fine to call yourself a programmer right now. I make a distinction between programming and software development.
21:45:35
phoe
it's like, similar kind of difference like between having sex and being a parent inside a healthy family.
21:45:38
jmercouris
This is of course fine if you are *just* a programmer, but if you are developing software, then you are a software developer
21:45:57
phoe
like, the former is still a part of the latter, but you also get a ton of other work that is semi- and unrelated to programming.
21:46:48
phoe
and one day you can just wake up and there's shit in the middle of the carpet. nobody knows how it happened, nobody knows when it happened, there's just blank stares and avoidant gazes, and all you know is that it's your responsibility to clean it up before guests arrive at eleven o'clock.
21:52:32
jmercouris
I see in lisp manuals a lot of the time syntax that appears at top of pages like this: https://common-lisp.net/project/cffi/manual/html_node/defcfun.html
21:52:40
Colleen
Unknown command. Possible matches: 8, set, say, mop, get, time, tell, roll, help, deny,
21:55:01
aeth
The Wikipedia article I linked to gives two extended forms in its intro, EBNF and ABNF
21:58:38
aeth
(really, they missed an opportunity to literally call it "yet another BNF" because the program's "yet another compiler-compiler")
22:07:43
jmercouris
Anyways, I have the following cffi binding I am trying to get to work, can someone please take a look and see if I made a mistake? It is very short, just 3 forms: https://gist.github.com/acb34aef9e4d784933fe5c593001e3dd
22:39:11
FareTower
I like to do that, too, but I hate to drink alone at which point I drink too slow for the wine bottle not to get bad before I finish it.
23:57:37
throwprans|prans
Why do I need VECTOR-PUSH-EXTEND and couldn't just VECTOR-PUSH deal with it?
0:00:39
White_Flame
yeah, VECTOR-PUSH might have had a number of keyword parameters to do stuff like that, but many of the simpler or lower level standard functions are pretty specific in their use
0:16:14
mgsk
What's the appropriate method of removing a sublist from a list? i.e. `(remove '(1 2 3) '((1 2 3) (4 5 6)))` => ((4 5 6))
0:20:23
White_Flame
no, one of the general information sections says that tests on sequences default to #'eql or something
0:21:43
throwprans|prans
https://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node141.html and elements are tested for being eql to that item. (A test other than eql can be specified by the :test or :test-not keyword.
0:24:48
pfdietz
"Since eq is used only rarely in this specification, eql is the default predicate when none is mentioned explicitly."
1:29:15
White_Flame
mukuge: there's #clnoobs, which could be more appropriate. There's a LOT of specifics generally discussed here
1:30:08
White_Flame
eviltofu: if you have potato->make-fries vs yam->make-fries or whatever, it would make sense to have (defmethod make-fries (...) ...) and dispatch on the type of parameter
2:46:45
aeth
White_Flame: You don't dispatch on type with defmethod. There's a difference between class and type. This is mostly noticable when you try to do something with an array.
3:37:30
aeth
jcowan: SBCL is in the language benchmark game (roughly around the speed of Java there) so if someone who knows how to write Chez well wants to, that might give some data
3:43:45
jcowan
there is a port to Scheme, but it only works on chibi and gauche, which are Scheme bytecode interpreters without JIT