libera/#lisp - IRC Chatlog
Search
13:34:38
nirnam
I had sbclrc load quicklisp in there, it worked fine wtih --load, but no --script complain about there's no ql package
13:37:06
poldy
According to http://www.sbcl.org/manual/index.html#Toplevel-Options , "--script" implies "--no-userinit --no-sysinit", so it isn't loaded.
13:38:29
nirnam
I see, that part about --no-userinit isn't in man page tho, just --disable-ldb --lose-on-corruption --end-runtime-options
13:41:00
poldy
It's confusing to me too, but "--script" is documented in two places, once under "Runtime Options" and once under "Toplevel Options". Different implied options are listed in both places, I presume what is really used is the union of the two sets.
13:42:44
nirnam
ah you're right, I didn't even see the other part, I never read document where a flags behavior is descript in two seperate section before
13:51:31
nij-
In this essay, PG ranted much about CL, and kept saying that the "older lisps" are better. I'm too a noob to understand. But as a CL lover, I'd really like to know its limit. So if someone can tell me something more, I'd be glad. Thank you =) http://paulgraham.com/popular.html
13:58:08
dash[m]
I doubt there's much more to it than 1) common lisp was a committee effort and 2) didn't have the same kind of community behind it as its predecessors
14:00:45
wasamasa
because everyone and their dog just check in every single package they've installed
14:12:57
dash[m]
personally I don't think that's better or worse, the more implementation details you expose the harder optimization is
14:13:18
mariari
I find CL package system lacking, I tried making module functors out of it, in a very bad attempt
14:14:57
mariari
a module functor can be viewed as a function from a module to a module. So we could imagine we have a heap module, and it takes another module with some type t, and a comparison operator. If you send in Int into the heap module, you get a max heap
14:16:18
mariari
It's one of the features I miss, as I do sometimes pass modules around in CL as I like the style
14:23:57
mariari
it's a bit compressed here on irc, I had an actual working version of this somewhere
14:25:49
mariari
I have a horrible attempt here in CL https://github.com/mariari/bindle it's very bad
14:27:46
mariari
(the main issue is that of symbol resolution happening at read time which I found limiting)
14:32:21
mariari
how packages get resolved in CL. Ideally it'd just integrate where you write a form and it does the right thing. I'm also ignorant of a way to talk about defining forms properly in CL, so I had issues trying to deal with closure captruing
14:32:33
dash[m]
you can extend the language however you like, but getting your extended language to cooperate with code anyone else wrote is a different challenge....
14:33:42
mariari
CLOS is a much easier addition, as it's own contained system that doesn't have to live with trying to support everything else to fit the new model
14:36:12
mariari
I should look into how the racket guys did it, they have some advantages in how their macro system works I think and probably having a better thought out module system
14:41:12
nij-
I could be wrong, but if you are willing to hack the lower-level reader macros, you can change almost anything...
14:42:08
nij-
wasamasa, do you think we can hack elisp reader to solve its lack of namespace/packaging issue ?
14:42:13
dlowe
The usual experience is that by the time you are skilled enough to change almost anything, you no longer want to
14:42:35
wasamasa
nij-: there's been lengthy discussion about this on emacs-devel, only the CL faction believes it's a good idea
14:45:28
nirnam
emacs has excellent everything for anything lisp really, as a newbie it seemed to be THE ONLY thing anybody else is used doing lisp
18:13:19
jcowan
"Another view is that a programming language really isn't a programming language unless it's also the scripting language of something." Ergo, C and Haskell are not programmimng languages.
18:21:41
jcowan
IMO "scripting language" is just a term for "programming language I can't get paid enough if I write in it"
18:27:35
dash[m]
"scripting language" may be a bit fuzzy but we definitely can distinguish "command language" as an idea, a top-level interface to a system
18:27:36
lisp123_
SICP says "(In fact, most language processors contain, deep within them, a little ``Lisp'' evaluator.) "
18:28:44
dash[m]
some of lisp's ideas have spread so much that they're not recognized as lisp distinctives anymore, relaly
18:28:57
dash[m]
* some of lisp's ideas have spread so much that they're not recognized as lisp distinctives anymore, really
18:30:37
mariari
depends what you count as lisp, if you count some form of eval/apply then ML languages implement this for fast currying
18:30:56
dash[m]
lisp123_: it doesn't, it's more like "most language processors share common designs, historically, with lisp implementations"
18:32:08
lisp123_
so they follow similar processes, but not necessarily have an embedded lisp interpretor
18:32:13
dash[m]
Rarely. The only example I can think of currently is Julia being built on top of femtolisp
18:32:41
mariari
caml/caml-light used to be built upon some minimal lisp, these days they have an s-expression IR at some layer
18:38:53
aeth
one is "script Unix" (i.e. POSIX shell replacement sort of thing, or at least part of a Unix pipeline... see e.g. Perl)
20:10:32
sm2n
mariari, racket can get away with what it does because it does not support interactive development
20:12:08
sm2n
as far as I can tell, it is an open problem how to do interactive development while also having a somewhat strict/rigourous module system
20:15:00
pjb
interactive is necessarily messy. So don't count on strict/rigorous, if you want to make it usable. Deal with it!
20:15:56
pjb
that said, nothing prevents the tool to record and analyse the interactive session, and to save some mathematically strict and rigorous definition that when loaded will restitute a sufficiently similar state.