freenode/#lisp - IRC Chatlog
Search
20:04:07
dim
jmercouris: then why not ignore lisp altogether and go write Python code instead, I wonder? paredit is really nice to have, and like everything, demands some learning... when new to Emacs I'm not convinced paredit adds too much to the learning curve after all
20:04:39
jmercouris
dim: You are free to your own opinion. You've presented a false dichotomy though; paredit or python, it doesn't work that way
20:05:03
jmercouris
paredit isnt THE killer feature that makes lisp good, so it doesn't merit frustrating new users
20:05:16
jmercouris
I believe it is best to slowly add things to your workflow as you master them instead of piling them on all at once
20:06:25
rumbler31
I find a tension between new users losing their proper nesting while hearing that "lisp has no syntax" to be a strong driver behind calls to use paredit earlier than other tools
20:08:04
rumbler31
I remember losing my nesting and staring at the parens thinking, where the hell am I supposed to add the missing one!
20:08:04
jmercouris
they don't forget how hard it was, they think it will save you frustration in the very near future
20:08:20
jmercouris
they are very correct about this, but I would say, when you get to that point, you can pick it up
20:08:29
comborico1611
rumbler31: That may be if the new user isn't using a book to guide them or something. And that is more of an experienced programmer coming to Lisp.
20:08:54
dim
all I'm saying is that if new to Emacs and paredit is installed, I'd be surprised that learning how to use paredit in Emacs would be much more difficult than learning bare Emacs
20:09:28
dim
(ok I also said that I don't understand why you'd target lesser quality tools than the ones you have)
20:09:52
rumbler31
comborico1611: what do you mean about using a book, are you following along in a text that is instructing you in what to type?
20:10:18
jmercouris
I don't disagree with you, it's not like I don't use paredit, I just think it's a lot for a new user, I could barely remember the movement commands after using emacs for a day
20:10:33
comborico1611
I suppose so. The position I'm in at the moment is to focus 100% of my time working on this beginner's book to CL. Then, if I'm still intersted in pursuing more Lisp coding, then add on things.
20:10:40
jmercouris
then again, it has been many years, so I am not sure how much I can really remember about how it was
20:13:09
comborico1611
I would go so far as to say if one doesn't know Emacs, skip Emacs and go through this book, then pick it up later. The disclaimer on that is whether the newcomer to Lisp is freestyling it or following in a book. If they are freestyling/more advanced, then whatever they want to do.
20:16:19
jmercouris
So, I'm thinking about how to represent something like the emacs window layout, I assume this done using a tree, right?
20:17:43
jmercouris
this would I guess show buffer1 on the left hand side, and buffer2 in the top right corner, buffer3 in the bottom right corner
20:18:42
cgay
You're more-or-less describing what a window layout looks like in CLIM/DUIM source code.
20:19:21
jmercouris
cgay: Ok, good to know that my reinvention of the wheel will be similar to existing paradigms :D, it means a step in the right direction I guess lol
20:24:52
jmercouris
I think I'll use a structs to build my tree instead of plain lists, it'll make it conceptually easier for me
21:55:46
pjb
comborico1611: in anycase, for all the minor modes listed in C-h m, you can disable and enable them at will. Most of the time, their command will toggle them: M-x paredit-mode RET Otherwise type C-u 0 M-x paredit-mode RET to disable, and C-u 1 M-x paredit-mode RET to enable.
21:56:20
pjb
However, before enabling paredit-mode you need to check that parentheses are well balanced. Use M-x check-parens RET
21:58:32
pjb
And yes, I agree that newbies may start using NotePad.exe (or nano) to edit lisp, and use the clisp REPL in a terminal (or rlwrap ccl or rlwrap sbcl). But not more than a couple of weeks. Once you feel the pain of working with a text editor and in a terminal, you should switch to emacs+paredit+slime and understand their advantages.
22:39:07
dim
what's the intended behavior when a condition is signaled and not handled from within a with-open-file form? is there an implicit unwind-protect that properly closes the file?
22:40:15
Shinmera
Just read clhs: "When control leaves the body, either normally or abnormally (such as by use of throw), the file is automatically closed. If a new output file is being written, and control leaves abnormally, the file is aborted and the file system is left, so far as possible, as if the file had never been opened.
22:45:00
dim
this old code of mine is a little hard to debug with its use of make-broadcast-stream to capture output and errors of uiop:run-program in both the console and a log file
23:04:41
pjb
dim: it's not that it's hard, it's that it may need to be exhaustive: the condition hierarchy in your application may easily be the triple of the size of your application class hierarchy.
23:05:11
comborico1611
pjb: Portacle has been a life-saver for me. It should be one of the first things that comes out of the mouth of the Lisp community to beginners.
23:06:17
pjb
Having been into programming since 1975, I tend to either have learned stuff before stuff existed, or just have a natural preference to go to the main reference (however hard or arid it may be to read), and to build my own tools.
23:07:37
pjb
Of course, I can understand the interest of having nice pedagogical environments (and even perhaps IDEs for professional work), but the former should be the task of teachers, and the both require a lot of resources to develop and maintain.
23:07:38
Shinmera
I've ironed out some more bugs in portacle today. There should be a new release tomorrow.
23:08:12
comborico1611
pjb: Yes, but as an active contributor to assisting beginners, I'm just telling you what my experience has been. You listed your recommendation for newbies (emacs+paredit+slime).
23:11:21
comborico1611
pjb: I've never seen nor seen a reference to that website. Sometimes #lisp is going to be the first place a person goes to for info. Anyways, I'm not trying to debate what's the best resource avenue for a beginner, I'm just telling you what I think as a beginner. And that is Portacle is the best thing out there for the growth of Common Lisp.
23:12:02
pjb
comborico1611: but don't tell it to me, since I'm a seasonned lisper. Tell it to your fellow newbies, by updating this cliki page.
23:12:47
pjb
It's when you're learning that you know best what information you need to learn. Therefore it's now that you should document that, leavining little bread crumbs on cliki.net
23:14:10
pjb
And furthermore, have fun browsing this wiki, there is a lot of interesting informations and links.
23:16:00
comborico1611
pjb: Yeah, I think it is really adequate as it is. My verbage would sound very fanatical/fan-boy. The first subject of the page is Portacle, so that's on target.
2:58:38
shmup
which lisp has the best vim support? so slimv is a thing ok. i think with tpope's interest in clojure has developed a nicer thing for lisp/vim, though. are there other lisps which have had better attention/specific focus in vim?
3:02:30
shmup
heh. ok, i'll try again. which dialect of lisp has a nice vim community providing out of the box repl connection/spawning, mappings to eval an s-expression on current line, whole buffer, mappings defined for definition lookups, etc. tpope's clojure stuff is one example
3:04:29
stylewarning
Bike: I'm just using prin1-to-string (with print readably, *package* :keyword, and print pretty nil) and read-from-string
3:07:08
stylewarning
It's very hard to debug unfortunately. I can't replicate it locally, only in a SLAD binary.
3:36:46
aeth
"post-functional declarative programming" I guess would be declarative programming that's informed by recent trends in functional programming, but that's not functional.
3:37:05
aeth
(It also is post-functional because it used to run before it was rewritten to use that paradigm)
4:02:13
pillton
stylewarning: SLAD is fine I guess. Bike says it is hip and I am in no position to question Bike's wisdom on current street talk. I thought we said "a dumped image".
4:07:18
pierpa
stylewarning: no idea about this problem, but, just to exclude some hypothesis, can you see if changing the string to "COMMON-LISP::NIL" changes the result?
4:09:49
|3b|
(which is not a particularly conformant thing to do, so could cause any other random problems too)
4:10:28
|3b|
possibly something tried to unintern something else, without realizing it didn't have any something else (and so it had a NIL instead)
4:12:47
|3b|
ACTION tried, and it does have that effect, surprisingly without any package lock problems
6:50:46
flip214
uh.... why does https://www.european-lisp-symposium.org/ say "site not installed"!?!?!
6:53:32
jackdaniel
I wrote a small piece about rendering and CLIM: https://common-lisp.net/project/mcclim/posts/Sheets-as-ideal-forms.html
7:49:19
Shinmera
Didier and I had a few problems yesterday and only got them all worked out by evening.