freenode/#lisp - IRC Chatlog
Search
15:02:30
epony
the fun part is.. that Lisp people always try to compare themselves on speed with a failure of some sort in programming design application
15:05:13
contrapunctus
shka_: I liked CL21, but stylewarning's comment on the matter resonated with me - https://reddit.com/comments/kylep5/comment/gjhzpe6?context=3 (I'd said the first half myself in ##lisp once)
15:07:27
contrapunctus
Speaking of misconceptions, I've heard time and again that "you can't make GUIs in Lisp" 🤦
15:11:38
contrapunctus
I liked * the idea of CL21 ("modernizing" the language while leveraging existing CL implementations)
15:13:41
shka_
if anything, I still think that porting some of the C++ <algorithm> (preserving semantics where it would make sense) wouldn't be a terrible idea for a project
15:16:17
shka_
but yeah, i think that stylewarning comment is on point, you need tested, de facto standard tools
15:18:35
semz
The STL does have some nice ideas. It's a shame that a lot of the related material (Stepanov's generic programming stuff too) is buried under mountains of C++ arcana and other obscurantism.
15:19:34
shka_
yes, i think that all things considered it is a well designed library (in most of the areas)
15:27:43
beach
contrapunctus: Hah, one of my engineering students laughed very hard when I hinted that sockets could be used by a Common Lisp program.
15:31:35
beach
My student was convinced that Common Lisp was a toy that could not be used for real programming. Or so he wanted to believe so as to avoid the cognitive dissonance that would otherwise be inevitable.
15:33:02
warweasle
Xach: Yes. But I didn't know. And microsoft kept telling me to learn C++, MFC and COM.
15:41:01
Nilby
warweasle: you might know that beach's current "assignment" is writing our next super CL compiler :)
15:41:28
pyc
Is there a quick way to surround the current sexp with parentheses in Emacs or Paredit?
15:44:46
contrapunctus
pyc: if you use Boon, you can `a p ;` to surround the expression after point with parens and `a p j` to do it for the expression before point; Evil probably has an extension for it too; and amartparens definitely does it.
15:46:11
pyc
contrapunctus: I use Emacs4CL which is just plain Emacs + sbcl + slime + paredit. So M-( works great for me.
15:46:49
attila_lendvai
warweasle, it's been dead, and in the past year it became a one-bus project... :)
15:47:30
warweasle
attila_lendvai: There was so much I didn't understand but it's intriguing. A mix of machine code and lisp?
15:48:03
pyc
Xach: did you mean ( C-<right-arrow>. That slurps forward. I don't see what M-<right-arrow> is supposed to do.
15:48:44
attila_lendvai
warweasle, the code wasn't very accommodating to newcomers, but i think it got much better in that regard.
15:49:34
attila_lendvai
warweasle, and i wrote some docs in the docs/ dir! if you have read them, then i welcome any questions that remained foggy afterwards!
15:49:53
warweasle
Now that I know who to ask, I might look back into it. But first I need to get my current project working.
15:50:27
warweasle
attila_lendvai: It's been a while, so I'll need to read them again. I'm pretty sure I'm running a stack based OS in my head.
15:53:46
slyrus
Has anyone taken a stab at better pretty printing facilities in the last, oh, 30 years? The built in pretty printer is showing its age, IMO.
15:58:31
slyrus
part of it may be my lack of understanding but it is a pain to use and harder to get things to look right. Also, it very much seems designed around printing lisp forms. If you're data isn't a list, the built in capabilities seem very limited.
16:02:05
Xach
slyrus: i'm curious if there are other systems you like from which good ideas might be stolen...
16:16:22
beach
New section 31.14 in http://metamodular.com/SICL/sicl-specification.pdf concerning the use of DEFGENERIC.
16:19:28
gabc
Hi, I'm on windows and I'm trying to find out a good way to do lisp (on linux/mac I use sbcl+emacs and it's great) but I haven't have been able to figure something nice on windows
16:20:26
pyc
What is a good coding style? require statement at the top of a .lisp file? or just before where I need to use the package?
16:20:27
epony
well, who makes the comparisons and false claims, elaborates.. since they are defending their claims ;-) I have nothing to say on that topic.. it was all outlined in several obvious facts from all systems that pick C for systems programming regardless of what other language users think about their own favourites
16:21:50
beach
epony: Can you give an example of "Lisp people always try to compare themselves on speed with a failure of some sort in programming design application". I can't even parse the phrase.
16:21:53
pyc
gabc: SBCL + Emacs should work fine on Windows too. I use https://github.com/susam/emacs4cl Much simpler alternative to Portacle. you can use your own Emacs with this config.
16:22:03
Nilby
I'm pretty sure I just installed the whatever current versions at the time. The tricky part is making sure you have a libffi for sbcl, which I had to do with cygwin.
16:22:40
epony
well, you can parse it of course.. since people compare Lisp as speed with things that are slow and failing
16:22:42
slyrus
beach: no, this one's above my pay grade. But I probably could spend some time formalizing my gripes.
16:22:55
pyc
Xach: I need (require :asdf) because I am using uiop. what would be the way to load it without (require)? sorry, I haven't learnt systems yet
16:23:37
pyc
gabc: did you set up Emacs + SBCL on linux and macos yourslf? what else do you use? do you have SLIME? do you use paredit?
16:24:18
slyrus
beach: I can't be the first person to have complained and/or thought about how to make things better in the last 3 decades.
16:24:23
Nilby
gabc but I didn't use slime since I was working on stuff that ran in a windows console
16:24:43
gabc
pyc: I use lispy mostly that part of the config I have quite down, I just never used Windows to do lisp
16:24:54
Xach
pyc: hmm, i would try looking at some existing projects and libraries, and look at the .asd files
16:25:27
Nilby
slyrus: I've been thinking about it too, and if you check the irc logs death found some good papers.
16:25:32
Xach
pyc: at their simplest, a system file defines a system with a name, a list of zero or more prerequisite systems, and a list of source files to compile and load.
16:25:51
Xach
pyc: so if you see an overwhelming system definition, know that it doesn't have to be that complex
16:26:58
Nilby
gabc: For emacs, I just clicked on it, but for sbcl I was working on my own repl in a console window.
16:28:19
slyrus
beach: yes, with the pretty printer. sometimes even small-seeming details around the margins make things much more useful. The analogous example for me is the with-readtable stuff. makes readtables much more usable, IMO.
16:29:12
gabc
Nilby: I have it working but I came here to see if people use something else I remember running into problems (that I forgot it's been a moment) I'll try out more and if I get into something specific I'll ask again
16:30:40
Nilby
slyrus: I've been trying to use the pretty printer to do indenting in my editor, but so far the results aren't so good. But I haven't tried much tweaking yet. I have to read/re-read some papers.
17:01:33
minion
logand: SICL: SICL is a (perhaps futile) attempt to re-implement Common Lisp from scratch, hopefully using improved programming and bootstrapping techniques. See https://github.com/robert-strandh/SICL
17:19:48
beach
logand I am usually present between 5am and 6-7pm (UTC+1 at the moment) with some breaks. But there are people in several other time zones that can answer questions in case you have any.
17:21:19
logand
beach: i need to think about questions first but if i find something to say, i will:-)
17:33:21
beach
Yes, Dan Barlow came up with it during LSM/RMLL, perhaps 2000 or 2001 or something like that.
17:35:37
beach
That's also where gilberth created the basis for McCLIM. And where we came up with how SBCL should represent special variables in the presence of threads.
17:39:05
beach
Poor Krystof had to translate the speech of the adjunct mayor from French to English in real time.
17:40:19
beach
It appears that mayors of France have, as part of their job description, the obligation to organize a (free) cocktail party for visiting conferences, so we were invited to the splendid city hall for one of those.
17:43:44
Nilby
Apparently the mayoral duties in Bordeaux included the mayor (or assistant) said I looked like a sheep, but might have a black heart.
17:48:08
warweasle
I forget how international the lisp community is. I'm just dumb american. Hopefully I'll get to travel some day.
17:55:33
warweasle
Anyone here know more about the NAVSEA programming language study. Lisp was one of the languages used and I'd love to get some context.
17:57:27
warweasle
Namely, they held things against lisp like "not being understandable" and "the developer showed up late".
18:26:29
warweasle
contrapunctus: I can't find the paper right now, but they were really leaning into Haskell.
18:59:43
beach
Hudak is one of the creators of Haskell, and that paper was specifically about Haskell, so it is not surprising that they favored it.
19:01:23
beach
I used that paper in my teaching, and I have an industry talk based on it. But not because of Haskell or Lisp, but because of the factor 20 difference in productivity reported, between different experts using the respective language that they master.
19:08:17
albusp_
Would anyone know why I can't load cl-freetype2 to lispworks7.1? Error is No applicable methods for make-instance with args ft-outline-funcs
19:22:26
holycow
if i have a string in the form of /dir/dir/dir/dir/filename.txt, i would like to find the last / char and then extract rest from that line. i have looked at strings, pattern matching and regex on clcookbook but i'm not finding how to find the last / char. any tips on what to google?
19:22:42
pyc
If I place the cursor on (+ 1 1) and type C-c C-c, it compiles it but does not show the result. What do I do to see the result?
19:24:42
Bike
holycow: you can just use cl:position for that, if i understand your problem correctly
19:25:51
Bike
(position #\/ "foo/bar/baz/x.txt" :from-end t) => 11, and then (subseq "foo/bar/baz/x.txt" (1+ 11)) => "x.txt"
19:26:33
pyc
Bike: C-x C-e is very different from C-c C-c. With C-c C-c I can place the cursor anywhere within an expression and it always compiles the top-level form. But C-x C-e only evaluates the last expression before the cursor.
19:31:00
mdevos
Is there a formal set of guidelines for what to talk about here, or should I just rely on what I think is reasonable?
19:32:41
mdevos
does someone know a Scheme <-> Common Lisp compatibility layer? I want to use a Common Lisp library in Guile Scheme
19:34:07
Bike
i think they are different enough languages that a "compatibility layer" would have to be very extensive.
19:35:49
mdevos
I don't mind fudging many details (e.g. I don't put defun and defvar definitions in separate namespaces even though they should be in common lisp IIUC)
19:38:12
mdevos
Bike: probably (-:. Though I can save myself some typing by defining the "defvar" and "defun" syntaxes in terms of Scheme's define, and maybe likewise for other things
19:38:56
Bike
some things are going to be more involved. i don't think scheme has anything like CLOS, for example
19:41:40
Nilby
How hard it will be porting, really depends on things like does it use FFI, does it use weird format features, how much CLOS, reader features etc, gray streams, etc. Guile has a lot of stuff, but there's a lot of corners in CL.
19:46:06
mdevos
Feldman: I'm porting from CL to Guile Scheme, not the other way around (-: But thanks, I didn't know that
19:58:19
aeth
The Scheme <-> Common Lisp compatibility layer is called writing a Scheme in Common Lisp.
20:30:28
holycow
okay. now i get what people are talking about when they say, emacs + slime + lisp image based iterative development is the cats meaow
22:13:44
holycow
someone just asked on reddit about d3.js binding for clog. that would really be something else to see.
22:50:29
warweasle
That's likely it. I still haven't found a GUI system I like. Much less one that works with lisp.
23:45:50
phoe
2) you might have more luck asking on #racket because this is a lair of Common Lisp programmers
23:52:29
Wezl
say I have a value and a list, and I want to reverse the list and have the value as the (cdr (last)), is there a better way than (apply #'list* (reverse (cons value lst)))?
0:34:21
catern
hi #lisp, I've always heard/assumed/believed that Common Lisp supports live upgrade of a running application, such that I can keep the runtime state of the application around while still upgrading it (rather than trashing all that runtime state with a process restart, like one might do to upgrade a Unix application written in C)
0:34:43
catern
is this accurate? do you have any pointers on where to learn more about this? are there any good descriptions of how people do this?
0:36:00
catern
moon-child: probably for development, but probably not for a production instance of my application, right?
0:49:00
gilberth_
Mine is falling apart and 100km away. I just wanted to know whether PARSE-MACRO is doing what I recall it should do.
0:56:36
gilberth_
Gnuxie[m]: Silly me, sorry. I found a specification in CLtL2. I must have misremembered.
0:58:25
gilberth_
No. I misremembered and was looking at ANSI-CL, where it is not part of and forgot that CLtL2 also has a bunch of stuff not part of ANSI-CL.
1:00:10
gilberth_
Anyhow, I am implementing a full PARSE-MACRO now as I am tired of ad hoc broken definitions of mine.