jackdaniel changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language<http://cliki.net/> logs:<https://irclog.whitequark.org/lisp,http://ccl.clozure.com/irc-logs/lisp/> | SBCL 1.4.5, CMUCL 21b, ECL 16.1.3, CCL 1.11.5, ABCL 1.5.0
astronavt_ has quit [Ping timeout: 252 seconds]
astronavt has joined #lisp
Essadon has quit [Quit: Qutting]
fiddlerwoaroof has joined #lisp
dented42 has joined #lisp
astronavt has quit [Ping timeout: 246 seconds]
<no-defun-allowed> that seems to be for errors
<no-defun-allowed> tracing log-message* revealed no calls to it too
<on_ion> have you read the first sentence/paragraph though
astronavt has joined #lisp
<on_ion> its an 'error handler' which also sometimes means 'hook'
<no-defun-allowed> oh yes
<on_ion> after describing the log handler, second sentence explains how to disable.
frodef has quit [Ping timeout: 268 seconds]
<no-defun-allowed> :ACCESS-LOG-DESTINATION nil should do
<on_ion> did you skip it? =)
<no-defun-allowed> (:
meepdeew has quit [Remote host closed the connection]
warweasle has joined #lisp
SaganMan has quit [Ping timeout: 268 seconds]
astronavt has quit [Ping timeout: 252 seconds]
stereosphere has quit [Ping timeout: 252 seconds]
roshanavand has quit [Ping timeout: 244 seconds]
igemnace has joined #lisp
kgx has joined #lisp
dddddd has quit [Remote host closed the connection]
daniel-s has joined #lisp
marusich has quit [Ping timeout: 252 seconds]
pjb has joined #lisp
orivej has quit [Ping timeout: 252 seconds]
jack_rabbit has quit [Ping timeout: 260 seconds]
Copenhagen_Bram has quit [Read error: Connection reset by peer]
Copenhagen_Bram has joined #lisp
robotoad has quit [Quit: robotoad]
Arcaelyx_ has quit [Quit: Textual IRC Client: www.textualapp.com]
dented42 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jack_rabbit has joined #lisp
dented42 has joined #lisp
pjb has quit [Ping timeout: 240 seconds]
Petit_Dejeuner has quit [Ping timeout: 252 seconds]
shifty has joined #lisp
sabrac has quit [Quit: Konversation terminated!]
comborico1611 has joined #lisp
<comborico1611> I'm looking for a pdf of Common LISP: The Reference. Anyone know where to get it?
<beach> Good morning everyone!
ryan_vw has joined #lisp
<beach> Why would you look for such a book? It predates the standard.
<comborico1611> I'm just curious to scan through it.
<beach> It was probably never made public.
pjb has joined #lisp
robotoad has joined #lisp
Copenhagen_Bram has quit [Ping timeout: 246 seconds]
comborico1611 has quit [Quit: comborico1611]
Copenhagen_Bram has joined #lisp
linack has joined #lisp
warweasle has quit [Quit: Night]
hugbubby has quit [Ping timeout: 240 seconds]
hugbubby has joined #lisp
shka_ has joined #lisp
<no-defun-allowed> morning beach
pjb has quit [Ping timeout: 252 seconds]
Khisanth has quit [Ping timeout: 260 seconds]
<shka_> good morning
<minion> shka_, memo from phoe: https://github.com/phoe/list-named-class
<minion> shka_, memo from phoe: https://github.com/phoe/list-named-class
Khisanth has joined #lisp
ryan_vw has quit [Ping timeout: 252 seconds]
Copenhagen_Bram has quit [Read error: Connection reset by peer]
Roy_Fokker has quit [Read error: Connection reset by peer]
Copenhagen_Bram has joined #lisp
Bike has quit [Quit: Lost terminal]
kamog has joined #lisp
Balooga_ has joined #lisp
aindilis has quit [Read error: Connection reset by peer]
aindilis has joined #lisp
frgo has quit [Remote host closed the connection]
frgo has joined #lisp
elfmacs has joined #lisp
frgo has quit [Ping timeout: 244 seconds]
holycow has joined #lisp
astronavt has joined #lisp
pjb has joined #lisp
anewuser has quit [Quit: anewuser]
<no-defun-allowed> bored, writing a http server
<p_l> beach: Common LISP: The reference was published
<p_l> I had it in my hands, even
<beach> p_l: What I meant was that it was perhaps never put up on the Internet as PDF.
<p_l> ahh
<p_l> yeah
<p_l> interestingly enough, it looks like Google doesn't have an example of its cover
<p_l> at least the version I had in my hands
<no-defun-allowed> i wonder if lparallel has good latency
sunset_NOVA has joined #lisp
mkolenda has quit [Remote host closed the connection]
mkolenda has joined #lisp
razzy has quit [Ping timeout: 268 seconds]
ryan_vw has joined #lisp
frgo has joined #lisp
shifty has quit [Ping timeout: 272 seconds]
<no-defun-allowed> 2383requests/second
<no-defun-allowed> not too bad tbh
pjb has quit [Ping timeout: 252 seconds]
frgo has quit [Ping timeout: 252 seconds]
razzy has joined #lisp
shka_ has quit [Ping timeout: 246 seconds]
frgo has joined #lisp
frodef has joined #lisp
vlatkoB has joined #lisp
Balooga_ has quit [Quit: Balooga_]
<no-defun-allowed> ab and wrk can't agree on if my server is creating "read errors"
<no-defun-allowed> now ab is convinced i'm doing 24,000 requests/second and wrk only thinks i'm doing about 1000
Balooga_ has joined #lisp
linack has quit [Quit: Leaving]
sunset_NOVA has quit [Quit: Leaving]
orivej has joined #lisp
scymtym has quit [Ping timeout: 268 seconds]
JohnMS_WORK has joined #lisp
bacterio has joined #lisp
bacterio has left #lisp [#lisp]
shka_ has joined #lisp
flamebeard has joined #lisp
holycow has quit [Quit: Lost terminal]
Oladon has quit [Quit: Leaving.]
daniel-s has quit [Read error: Connection reset by peer]
dented42 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
mingus has joined #lisp
orivej has quit [Ping timeout: 252 seconds]
<splittist> Good morning
<no-defun-allowed> morning splittist
rozenglass has quit [Remote host closed the connection]
dented42 has joined #lisp
<beach> Hello splittist. Long time no see.
<beach> splittist: Did you notice the creation of the channel #sicl, where I can blab as much as I want about what I am doing?
<splittist> I'm usually lurking. I did not. I will join and lurk there, too (:
<beach> Great!
<beach> I have no news right now, but I am working pretty hard on bootstrapping at the moment.
<beach> Though, I also have to finish my report on Jim Newton's thesis.
<splittist> sicl (and the general beachverse of projects) is one of my favourite contemporary examples of people (not you) overestimating what can be done in a year, but underestimating what can be done in 5/10 years.
<beach> Interesting observation.
<beach> Yeah, I never said I would finish in 10 years. :)
<beach> Instead, I planned it so that intermediate results are independently useful.
<shka_> 'beachverse'
<shka_> i literally loled at this
<no-defun-allowed> using sbcl internals to turn off nagles algorithm takes the speed from 24,000 to 31,800 requests a second.
<jackdaniel> http://i.imgur.com/cfjq2XE.png (multiline text positioning test array in McCLIM)
<no-defun-allowed> nice
<jackdaniel> thanks
<beach> YAY!
<zigpaw> the "character not found" (empty box) glyph on the last line was intentional?
<jackdaniel> yes
<shka_> jackdaniel: looks cool
<zigpaw> looks cool :)
Balooga_ has quit [Quit: Balooga_]
<no-defun-allowed> actually, nagles doesn't really slow it down
<jackdaniel> I still need to get the whole bounding box right, but I need other codebases to attend to now
<no-defun-allowed> sbcl decided to go 8000 reqs/second faster cause it could
<shka_> this should be really useful
<no-defun-allowed> ab and wrk still aren't agreeing, wrk says woo is two magnitudes faster than my http server but ab says they're about the same
<galdor> isn't ab the one which isn't that good at parallelizing connections ?
<galdor> wrk is much more efficient iirc
<galdor> in your case you would be limited by ab, not by the server
<no-defun-allowed> that's a shame
robotoad has quit [Quit: robotoad]
<no-defun-allowed> ):
<no-defun-allowed> wrk goes slower than ab too
astronavt_ has joined #lisp
<galdor> in any case, most of these benchmarks actually measure the kernel
astronavt has quit [Disconnected by services]
astronavt_ is now known as astronavt
<galdor> unless you manage to test with access patterns and data related to your real workload, it's not really significant
<no-defun-allowed> i'm fairly confident this lparallel-based solution is pretty fast but i can't tell
<shka_> lparallel based solution to what?
<no-defun-allowed> multithreaded http server
<shka_> eeee, that does not sound like a great idea
domovod has joined #lisp
<galdor> you can use a thread pool to process requests
<galdor> as long as you are not using one thread per request, you're fine
shifty has joined #lisp
<no-defun-allowed> yeah, that's where i'm getting the thread pool from
<shka_> using one thread per request is not always wrong
frgo has quit [Remote host closed the connection]
frgo has joined #lisp
ryan_vw has quit [Ping timeout: 252 seconds]
<no-defun-allowed> i tried different thread counts and cpu count seemed to work best
<shka_> no-defun-allowed: in lparallel? Yes.
<shka_> anyway, don't dismiss one thread per request so easy
<shka_> sometimes it is perfectly sufficient approach
<no-defun-allowed> this worked fine here
<no-defun-allowed> i've done one thread per request before
frgo has quit [Ping timeout: 252 seconds]
pjb has joined #lisp
prrs has quit [Ping timeout: 268 seconds]
varjag has joined #lisp
<russellw> What are the situations where a dot can occur in lisp source code, apart from 'loop for (a . more) on s'? It's not used for rest parameters of functions the way it is in scheme, right?
angavrilov has joined #lisp
<no-defun-allowed> you can use it in destructuring-bind, and it's also used a lot in alists
<phoe> russellw: anywhere
<no-defun-allowed> eg (loop for (key . value) in '((a . 42) (b . 3)))
<phoe> '(a . b) denotes a quoted cons
<phoe> these are very common when you create alists
<russellw> ah, quotes, yes, good point
asymptotically has joined #lisp
xificurC has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
ggole has joined #lisp
<beach> phoe: Not anywhere. (a . b . c) is not valid syntax.
<beach> Nor is #(a b . c)
<no-defun-allowed> in WTFCL, . in a vector means the rest of the vector is in c /s
<beach> russellw: You can use it as a rest parameter in a macro lambda list.
<russellw> you can? okay, thanks
<beach> no-defun-allowed: #( means a literal vector. A, B, and C are not variables.
<phoe> beach: yes, I generatelized it way too much.
<no-defun-allowed> wtfcl is not real, it's a joke language
<beach> no-defun-allowed: And a vector is not a linked structure, so there is no concept of "rest of the vector".
<no-defun-allowed> exactly, that's the joke
<phoe> beach: no-defun-allowed is not being serious over here, as denoted by the /s at the end of his post
<no-defun-allowed> phoe's wtfcl also comes with other absolutely useful stuf like constructuring-bind
<no-defun-allowed> enough misinformation, dots are very useful when you want to save a cons or want the "rest" of something
<_death> if you're tired of plain ,@ and feeling destructive, there's ,.
<russellw> what does ,. do?
<no-defun-allowed> how's that work?
<_death> `(a b ,.(list 'c 'd))
<beach> phoe: too subtle for me.
pjb has quit [Ping timeout: 252 seconds]
<no-defun-allowed> maybe the acronym didn't quite set it up
<russellw> huh, ,. does work. how? I though , had to be followed by a form? CLHS doesn't mention ,.
<beach> It does.
<_death> russellw: it does
<russellw> where?
<no-defun-allowed> yeah, that's new to me
<phoe> clhs 2.4.6
<phoe> grep for ",."
<no-defun-allowed> nasty
<russellw> aha! I stand corrected
<no-defun-allowed> cool beans though
<phoe> ,. is like ,@ except it is usable for lists that are destroyable
<phoe> in practice, I haven't seen it used anywhere though
<beach> Not terribly useful though. Saving a few CONS cells in the reader is typically not worth the effort.
<phoe> especially since the reader is rarely exercised in working code
<beach> Exactly.
<varjag> was there some software that tracks the licenses of systems via their .asd dependencies?
<jackdaniel> sjl's utilility library has a snippet which looks for GPL libraries
<phoe> https://github.com/vindarel/print-licenses has more commits than that
nirved has joined #lisp
<varjag> aha.. thankyou folks
nirved is now known as Guest87092
nirved has joined #lisp
Guest87092 has quit [Ping timeout: 260 seconds]
elfmacs has quit [Ping timeout: 252 seconds]
jmarciano has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 272 seconds]
razzy has quit [Remote host closed the connection]
razzy has joined #lisp
fiddlerwoaroof has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 246 seconds]
fiddlerwoaroof has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 252 seconds]
fiddlerwoaroof has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 250 seconds]
fiddlerwoaroof has joined #lisp
<Myon> svillemot: thanks for the cl-nibbles fix
<Myon> unfortunately pgloader is still failing, Compilation failed: Compile-time package lock violation:
<Myon> Lock on package SB-X86-64-ASM violated when binding EA as a local function
<Myon> while in package SB-VM.
<Myon> dim: any idea?
ealfonso has quit [Ping timeout: 245 seconds]
fiddlerwoaroof has quit [Ping timeout: 252 seconds]
<svillemot> Myon: np, I didn't check that it fixes pgloader, but I guess it does
<svillemot> oh ok it does not
<Myon> I think the error was different before
<svillemot> yes, for sure something has been fixed in nibbles, so this must be something else
<Myon> afaict the fix in https://github.com/sharplispers/nibbles/pull/6 does not help either, but maybe I was testing badly
<Myon> (I had not seen your upload yet when I built a local package)
fiddlerwoaroof has joined #lisp
scymtym has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 276 seconds]
fiddlerwoaroof has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 252 seconds]
roshanavand has joined #lisp
pjb has joined #lisp
siraben has joined #lisp
Ricchi has left #lisp ["Leaving"]
fiddlerwoaroof has joined #lisp
frgo has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 252 seconds]
zfree has joined #lisp
zfree has quit [Read error: Connection reset by peer]
igemnace has quit [Quit: WeeChat 2.2]
fiddlerwoaroof has joined #lisp
m00natic has joined #lisp
SenasOzys has joined #lisp
siraben has quit [Ping timeout: 252 seconds]
orivej has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 260 seconds]
pjb has quit [Ping timeout: 252 seconds]
<no-defun-allowed> Alright, time for me to GC. (TODO: use faster collector.) Night.
elfmacs has joined #lisp
fiddlerwoaroof has joined #lisp
Copenhagen_Bram has quit [Ping timeout: 268 seconds]
fiddlerwoaroof has quit [Ping timeout: 252 seconds]
Copenhagen_Bram has joined #lisp
zigpaw has quit [Remote host closed the connection]
siraben has joined #lisp
fiddlerwoaroof has joined #lisp
roshanavand has quit [Ping timeout: 252 seconds]
fiddlerwoaroof has quit [Ping timeout: 240 seconds]
roshanavand has joined #lisp
roshanavand has quit [Ping timeout: 252 seconds]
roshanavand has joined #lisp
nowhere_man has joined #lisp
fiddlerwoaroof has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 260 seconds]
nowhere_man has quit [Ping timeout: 264 seconds]
scymtym has quit [Ping timeout: 276 seconds]
pjb has joined #lisp
fiddlerwoaroof has joined #lisp
Essadon has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 268 seconds]
fiddlerwoaroof has joined #lisp
nowhere_man has joined #lisp
hugbubby has quit [Ping timeout: 268 seconds]
fiddlerwoaroof has quit [Ping timeout: 268 seconds]
rocx has quit [Remote host closed the connection]
fiddlerwoaroof has joined #lisp
pjb has quit [Ping timeout: 252 seconds]
fiddlerwoaroof has quit [Ping timeout: 252 seconds]
zfree has joined #lisp
katco has quit [Quit: ERC (IRC client for Emacs 26.1)]
Copenhagen_Bram has quit [Ping timeout: 244 seconds]
zigpaw has joined #lisp
Copenhagen_Bram has joined #lisp
kajo has quit [Ping timeout: 252 seconds]
fiddlerwoaroof has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 264 seconds]
warweasle has joined #lisp
dmiles has quit [Ping timeout: 252 seconds]
fiddlerwoaroof has joined #lisp
nowhereman_ has joined #lisp
nowhere_man has quit [Ping timeout: 252 seconds]
nowhereman_ has quit [Remote host closed the connection]
nowhereman_ has joined #lisp
jgoss has joined #lisp
Bike has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 252 seconds]
zxcvz has joined #lisp
scymtym has joined #lisp
Josh_2 has joined #lisp
fiddlerwoaroof has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 244 seconds]
jkordani has joined #lisp
fiddlerwoaroof has joined #lisp
Copenhagen_Bram has quit [Ping timeout: 246 seconds]
aindilis has quit [Read error: Connection reset by peer]
Copenhagen_Bram has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 240 seconds]
shifty has quit [Ping timeout: 268 seconds]
<Xof> I know this was yesterday or even the day before, but it's still in my scrollback and I had a showerthought, so...
<Xof> (defun prefix (strings) (reduce (lambda (x y) (subseq x 0 (mismatch x y :end1 (length x)))) strings))
dmiles has joined #lisp
<phoe> Xof: that's nice
fiddlerwoaroof has joined #lisp
<ggole> That does a lot of copying of the same chars
<phoe> sure it does, but I think that by now this is code golfing and not efficiency racing
fiddlerwoaroof has quit [Ping timeout: 252 seconds]
<on_ion> code golf...
Copenhagen_Bram has quit [Ping timeout: 252 seconds]
Bronsa has joined #lisp
<hjudt> do people nowadays use slime or sly? i've tried sly recently and found it offers some good improvements over slime.
<phoe> I'm a spacemacs+slime user. I don't really complain, but then again, I haven't tried sly.
aindilis has joined #lisp
fiddlerwoaroof has joined #lisp
<ggole> (defun prefix (strings) (if (null strings) "" (subseq (car strings) 0 (loop for string in (cdr strings) minimizing (or (mismatch (car strings) string) (length (car strings)))))))
<ggole> Not really all that efficient either
Copenhagen_Bram has joined #lisp
cage_ has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 260 seconds]
asymptotically has quit [Quit: Leaving]
fiddlerwoaroof has joined #lisp
ym has joined #lisp
FreeBirdLjj has joined #lisp
anewuser has joined #lisp
pjb has joined #lisp
fiddlerwoaroof has quit [Ping timeout: 260 seconds]
lavaflow has quit [Read error: No route to host]
<hjudt> phoe: didn't know about spacemacs, but then i like following the standard emacs way because that's what my distribution provides... i also think about that way about sly, but quicklisp now provides it too so in that case it is fine and i like the features stickers and repl backreferences.
lavaflow has joined #lisp
<shka_> so btw
<shka_> why sly?
<shka_> is it any better then slime?
<jackdaniel> I think that tasks like codegolf are superficial - there is quite a lot occasions when programmer is in need for small one-time utility during normal course of coding, that's a perfect occasion to make something and be proud of it
<hjudt> shka_: it is like slime but has some additional nifty features (i also like the fuzzy search btw) and spares you some config lines. but that's probably it. might also be a matter of taste, but some things just seem to be easier to handle to me.
<hjudt> i've only started using it a week ago and never was a very experienced slime user though.
<hjudt> the only thing you have to set up in contrast to slime is a keymap for the selector which comes out-of-the-box with slime. that hasn't been very difficult to achieve though.
<hjudt> it also has good documentation which helped me a lot, though slime isn't bad in that regard too
FreeBirdLjj has quit [Remote host closed the connection]
<hjudt> the great thing was that you can also try it without removing slime. so it's easy to switch back and forth.
* hjudt now feels like an advocate but is still not sure what to use
<shka_> hjudt: well, i should give it a try i guess!
igemnace has joined #lisp
<hjudt> shka_: sure, you can read up on it here: https://github.com/joaotavora/sly it also has nice demo videos.
jack_rabbit has quit [Ping timeout: 240 seconds]
<shka_> well, if it is in the spacemacs, setup should be trivial
<hjudt> would be glad if you share your experience with it since you're probably a more experienced slime user than me
elfmacs has quit [Ping timeout: 272 seconds]
FreeBirdLjj has joined #lisp
<shka_> hjudt: animated gifs look cool up to this point ;-)
<hjudt> yes, and there is also a tutorial or walkthrough that works and is perhaps more easier to follow (at least if you aren't a 144hz-accustomed hardcore gamer).
FreeBirdLjj has quit [Ping timeout: 250 seconds]
<hjudt> (which means i have been too slow to follow these in detail)
<hjudt> but i found those pretty cool too
dyelar has joined #lisp
gector has quit [Read error: Connection reset by peer]
gector has joined #lisp
kajo has joined #lisp
pjb has quit [Ping timeout: 252 seconds]
jmarciano has quit [Ping timeout: 268 seconds]
razzy has quit [Ping timeout: 252 seconds]
shka_ has quit [Quit: WeeChat 1.9.1]
knicklux has joined #lisp
<russellw> How do you programmatically generate '(1 2 3 . 4)? cons wants just two parameters, and append and list* both correctly complain that the last element is not a list
<Bike> (list* 1 2 3 4)?
<beach> APPEND should not complain.
<Bike> (append '(1 2 3) 4) also works
<beach> Nor should LIST*.
gector has quit [Ping timeout: 245 seconds]
<russellw> ah, you're right, I was actually calling them wrong. thanks!
<Bike> no problem
gector has joined #lisp
Roy_Fokker has joined #lisp
Oladon has joined #lisp
FreeBirdLjj has joined #lisp
flamebeard has quit []
<russellw> What's the best way to test if a value is an improper list?
<beach> I am sure there is something in Alexandria.
<beach> But there is a little trick you can use if you don't want to use an external library.
<beach> Let me see if I can remember it...
<beach> clhs list-length
<beach> clsh ignore-errors
<beach> clhs ignore-errors
<russellw> list-length: Returns the length of list if list is a proper list. Returns nil if list is a circular list. ... It doesn't say what the result is for a dotted list?
<beach> Should signal an error of type type-error if list is not a proper list or a circular list.
<russellw> I forgot about circular lists. To clarify: what I actually need to test for is a dotted list. - ah! okay, thanks
<beach> So you wrap it in ignore-errors.
sjl has joined #lisp
<beach> russellw: Are you saying you don't need to take circular lists into account?
<on_ion> alexandria has fallen long agop
<beach> Then it is easy.
<russellw> I'll probably write my own function, so that will probably involve (and (consp a) (not (consp (cdr a))))?
razzy has joined #lisp
<russellw> right, don't need to take circular lists into account
<beach> russellw: (null (cdr (last list)))
<russellw> thanks!
<beach> russellw: rather (not (null (cdr (last list))))
<beach> returns true if the list is dotted.
kuwze has joined #lisp
<Shinmera> (loop for (_ . r) on list while r never (not (consp r)))
<pfdietz> But really, use a library.
JohnMS_WORK has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
rippa has joined #lisp
<|3b|> LOOP accepts NIL for ignoring things when destructuring
<Shinmera> I thought that was an SBCL bug
<pfdietz> clhs 6.1.1.7
<Shinmera> ah, there it is
<Shinmera> I think the bug was in relation to destructuring-bind accepting the same, then
<|3b|> yeah, that sounds familiar
zfree has quit [Quit: zfree]
nowhereman_ has quit [Ping timeout: 260 seconds]
SenasOzys has quit [Ping timeout: 246 seconds]
shka_ has joined #lisp
<shka_> good evening
nixfreak has joined #lisp
<nixfreak> Does anyone use lisp to create bash 1liners like to find something or parse something out, trying to see if its better to use lisp than bash on linux ?
linack has joined #lisp
<|3b|> CL tends to be a bit verbose for things that you would usually do in bash, but i think some people have utility libs for making shell-like things more convenient
<|3b|> though also depends on whether you already have the data in memory in a running lisp image
<Shinmera> As soon as you need to use arrays in bash it gets terrible enough so quick that pretty much anything else would be better.
<|3b|> yeah, i guess it depends on where you cutoff is for "something reasonable to do in bash"
<|3b|> the further you are pushing bash, the more competitive CL is
<on_ion> nixfreak: i would look at emacs' eshell and elisp. it allows mixing lisp (without parens usually) and bash.
<on_ion> (bash=i mean shell commands)
<on_ion> and you can pipe with emacs buffers and other nice things
<|3b|> also CL's spec for file naming and operations doesn't make it very nice for general processing of files at the name/directory level
knicklux has quit [Ping timeout: 245 seconds]
<nixfreak> I was thinking it could be used to create little scripts to mimic unix tools
<|3b|> i think there are a few libs for that sort of thing, but i haven't used any of them
knicklux has joined #lisp
<shka_> nixfreak: i wrote find-like utility in lisp
<shka_> it takes more lines to get done simple things
<nixfreak> do you have a repo I can see the code shka ?
<shka_> but is is so much easier for more complicated stuff
orivej has quit [Ping timeout: 252 seconds]
<shka_> nixfreak: it is not exactly self contained
<nixfreak> ahh ok , so for 1liners stick to bash and more complicated programs use lisp
<shka_> anyway
<shka_> thing is, i am returning so called range as a result
<shka_> which is essentially generator in this case
<shka_> so the code is more complicated, but it works with other things i wrote that expect range as a input
<shka_> i can do stuff like find csv files, then group by header those files
<shka_> or start multi thread processing using lparallel
<shka_> and sure, i can do those things manually, but this way i have reusable code
<shka_> so i can stack functions on top of each other forming essentially a pipe
<nixfreak> thats really cool , so why not just use find and grep , not being mean about it just curious why you did
<shka_> well, as I said, it is easier to write complicated stuff in lisp
knicklux has quit [Ping timeout: 252 seconds]
<shka_> and there are libs to handle different types of files
<shka_> and I already have general utils that work on ranges, so i can leverage those if i have something that works like find
<shka_> so i wrote it
<nixfreak> thats really cool , thanks for the insight
<shka_> sure, no problem
<shka_> i also have cat clone :P
<nixfreak> I keep going back and fourth with languages and keep coming back to lisp for some reason
<shka_> so this one simply reads file line by line
<shka_> i like it because (again) it works with other stuff i have
<shka_> and i quite often deal with large files that store data in each line
knicklux has joined #lisp
<shka_> this does not require reading everything to memory at once, works with my aggregation functions, can be chained into multithreaded processing and so one
<shka_> it is sort of like apache spark streams in this regard
<shka_> anyway, that's just my impression
<nixfreak> ok thanks again
asymptotically has joined #lisp
<shka_> nixfreak: anyway, i really prefer to write in lisp so if there is simply no tool that cuts it for me it is natural choice
<shka_> i think you may be the same
makomo has quit [Ping timeout: 246 seconds]
<nixfreak> shka I'm still a big noob in CL but I'm going to focus my attention to it instead of other languages
<shka_> cool :-)
cgay has quit [Ping timeout: 252 seconds]
mhd2018 has quit [Quit: Textual IRC Client: www.textualapp.com]
pjb has joined #lisp
anewuser has quit [Quit: anewuser]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
stereosphere has joined #lisp
cgay has joined #lisp
m00natic has quit [Remote host closed the connection]
mejja has joined #lisp
linack has quit [Ping timeout: 252 seconds]
doubledup has joined #lisp
roshanavand has quit [Ping timeout: 264 seconds]
<adlai> nixfreak: it helps to have a specific project to attack in lisp
<adlai> "little scripts to mimic unix tools" might not be the right approach for learning CL, as these tend to be rather orthogonal to CL's strengths
<nixfreak> what books or classes do you recommend for leaning CL
<shka_> i dare to disagree
<shka_> nixfreak: as always PCL
<shka_> practial common lisp
<nixfreak> ok
makomo has joined #lisp
<shka_> imho one could build very cool shell out of common lisp
durn has joined #lisp
roshanavand has joined #lisp
bacterio has joined #lisp
<nixfreak> shka I think is possible also
<nixfreak> *its*
<shka_> well, yes, but i have issues with unix pipes and string typing and you know the rest of my story
nckx has quit [Read error: Connection reset by peer]
Bronsa has quit [Ping timeout: 252 seconds]
<durn> How do I load Slynk in a package? An error is thrown when (slynk-loader:init) is called despite there being (require :slynk) above it.
zfree has joined #lisp
<shka_> durn: i would add those lines into sbclrc even!
<durn> shka_: Thanks.
mejja has quit [Remote host closed the connection]
d4ryus1 is now known as d4ryus
<durn> Has anyone ever considered emulating the Lisp Machine instruction set by defining it as a set of Forth words?
rozenglass has joined #lisp
<Bike> were lisp machines stack based?
<durn> Bike: From what I've read, yeah.
roshanavand has quit [Ping timeout: 252 seconds]
roshanavand has joined #lisp
astronavt has quit [Quit: Leaving]
razzy has quit [Ping timeout: 268 seconds]
<Ober> see #lispm. I'm sure ams or others have all that info
roshanavand has quit [Ping timeout: 260 seconds]
roshanavand has joined #lisp
<durn> Ober:Thanks for the pointer.
durn has left #lisp ["ERC (IRC client for Emacs 26.1)"]
durn has joined #lisp
<durn> shka_: When they say "~/dir/to/sly", they mean a path to the .el file, right?
<shka_> no
<shka_> durn: path to common lisp server
<durn> shka_: How can I find that for sly?
<shka_> here it is in the repo
warweasle is now known as warweasle_afk
kgx has quit [Quit: leaving]
pjb has quit [Read error: Connection reset by peer]
<durn> They want the path to slynk.asd I'm assuming then?
orivej has joined #lisp
<shka_> durn: path to directory
FreeBirdLjj has quit [Remote host closed the connection]
<shka_> durn: so locate slynk.asd, get the directory part, substitute #p"~/dir/to/sly", the rest is the same from my understanding
vlatkoB has quit [Remote host closed the connection]
<durn> shka_: Ah, thanks.
<shka_> well, i did not try it myself so no guarantees!
<durn> shka_: ...
<durn> Here goes nothing.
durn has quit [Quit: ERC (IRC client for Emacs 26.1)]
<shka_> it should work imho ;-)
durn has joined #lisp
<durn> shka_: It worked, thanks!
durn has quit [Client Quit]
<shka_> durn: cool, but i am not so sure about starting server there
<shka_> try removing starting server from sbclrc and restart sly
<shka_> leave push and load-system (for now)
<shka_> if it will work, remove load-system and restart sly
<shka_> so you will have only the bare minimum required
bacterio has quit [Quit: bacterio]
frodef has quit [Ping timeout: 268 seconds]
roshanavand has quit [Ping timeout: 260 seconds]
roshanavand has joined #lisp
serichsen has joined #lisp
<serichsen> good evening
pjb has joined #lisp
<PuercoPop> durn: to the .asd file.
<serichsen> cheers
<PuercoPop> What I do on my .stumprc is (push #P"/home/puercopop/.emacs.d/site-lisp/sly/slynk/" asdf:*central-registry*)
<PuercoPop> then (require 'slynk) which could prolly be (asdf:make "slynk")
<PuercoPop> and then call slynk:create-server (In my cae define a command that calls it)
shka_ has quit [Ping timeout: 252 seconds]
cage_ has quit [Quit: Leaving]
robotoad has joined #lisp
ggole has quit [Quit: ggole]
asymptotically has quit [Remote host closed the connection]
varjagg has joined #lisp
roshanavand has quit [Ping timeout: 252 seconds]
jkordani_ has joined #lisp
razzy has joined #lisp
roshanavand has joined #lisp
jkordani has quit [Ping timeout: 264 seconds]
warweasle_afk is now known as warweasle
siegbert has joined #lisp
igemnace has quit [Read error: Connection reset by peer]
azimut_ has joined #lisp
igemnace has joined #lisp
azimut has quit [Ping timeout: 252 seconds]
SenasOzys has joined #lisp
shifty has joined #lisp
roshanavand has quit [Ping timeout: 252 seconds]
roshanavand has joined #lisp
Copenhagen_Bram has quit [Quit: i'm sorry but i'm just too addicted to the internet and i have dishes to do]
asarch has joined #lisp
siegbert has left #lisp ["SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION"]
roshanavand has quit [Ping timeout: 246 seconds]
frodef has joined #lisp
roshanavand has joined #lisp
m3tti has joined #lisp
doubledup has quit [Quit: Leaving]
SenasOzys has quit [Remote host closed the connection]
SenasOzys has joined #lisp
X-Scale has quit [Ping timeout: 244 seconds]
[X-Scale] has joined #lisp
[X-Scale] is now known as X-Scale
rtypo has joined #lisp
knicklux has quit [Remote host closed the connection]
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
robotoad has quit [Quit: robotoad]
scymtym has quit [Ping timeout: 260 seconds]
nirved has quit [Quit: Leaving]
angavrilov has quit [Remote host closed the connection]
zxcvz has quit [Quit: Leaving]
kajo has quit [Ping timeout: 250 seconds]
robotoad has joined #lisp
warweasle has quit [Quit: rcirc on GNU Emacs 24.4.1]
kajo has joined #lisp
asarch has quit [Quit: Leaving]
fiddlerwoaroof has joined #lisp
m3tti has quit [Remote host closed the connection]
m3tti has joined #lisp
fiddlerwoaroof has quit [Quit: Gone.]
robotoad has quit [Quit: robotoad]
fiddlerwoaroof has joined #lisp
mfiano has quit [Quit: WeeChat 2.1]
m3tti has quit [Remote host closed the connection]
Essadon has quit [Quit: Qutting]
m3tti has joined #lisp
PuercoPop has quit [Quit: ZNC 1.6.3 - http://znc.in]
m3tti has quit [Remote host closed the connection]
robotoad has joined #lisp
m3tti has joined #lisp
Josh_2 has quit [Quit: ERC (IRC client for Emacs 26.1)]
nckx has joined #lisp
scymtym has joined #lisp
oystewh has quit [Ping timeout: 240 seconds]
astronavt has joined #lisp
astronavt has quit [Max SendQ exceeded]
astronavt has joined #lisp
PuercoPop has joined #lisp
sjl has quit [Quit: WeeChat 2.3-dev]
sjl has joined #lisp
igemnace has quit [Ping timeout: 246 seconds]
dented42 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
sjl_ has joined #lisp
warweasle has joined #lisp
didi has joined #lisp
<didi> Hey, I found a good advantage of structs over CLOS objects: copy-*.
sjl has quit [Ping timeout: 252 seconds]
<aeth> Yes, but (1) it's a shallow copy and (2) you rarely need it
<didi> aeth: True.
<didi> Still, something structs have that CLOS objects don't.
<aeth> You can still define a deep copy by renaming the copy function to %copy-foo and defining an inline copy-foo that does a deep copy
<aeth> So it's not entirely useless
<aeth> copy-foo would mostly use %copy-foo
<aeth> didi: The standard-object (not CLOS object) way to do it would be to define a copy generic
<didi> aeth: But shallow copies can be useful. I'm using it right now. I want a struct just like the original, but with only one slot changed.
<didi> aeth: I see.
<jasom> I think the main point of structs is that they are less dynamic than classes
<aeth> I'm not sure why there isn't a copy method that defaults to a shallow copy for defclass
<aeth> Probably not hard to add that
<jasom> aeth: which slots would it copy??
<aeth> jasom: Well, the main point in modern CL is that structs can be optimized for storage and access if :type is provided for a slot
<phoe> I asked this question about a year ago I think, but
<phoe> what is the most interesting way of getting a NIL in Common Lisp?
<aeth> Structs are a good way to e.g. avoid the double-float box
<phoe> just a NIL, no side effects intended
<phoe> Like, (progn)
<jasom> (identity (values)) is interesting I think
<jasom> since (values) is not the same as (identity (values))
<aeth> phoe: Lots of ways to get it because it's false, the empty list, and nothing
<aeth> Most interesting way is multiple values, yes
<aeth> Except for multiple-value-list and multiple-value-call, if you request the nth value and it doesn't exist, you get NIL as the default value
<phoe> (multiple-value-bind () (values))
<Bike> (collatz-conjecture-true-p) => NIL
<phoe> Bike: that's a risky one
<Bike> but it would be pretty interesting.
<jasom> (loop (when (zerop (random most-positive-fixnum)) (return nil))
<Shinmera> (is-this-question-interesting-p) ;=> NIL
<Bike> oh snap
robotoad has quit [Quit: robotoad]
<jasom> the thing I like about the random version is that it is only probabalistically defined to terminate from the standard, but most (all?) real-world implementations it is guaranteed to terminate.
mfiano has joined #lisp
<Bike> huh? how would it not terminate?
<Bike> i guess the standard doesn't guarantee that the distribution doesn't suck
<jasom> Bike: if a non-cyclic rng is used, then the probability approaches 1 of it terminating over time, but never reaches it. Real prngs tend to be cyclic though, so there is bounded time for it to terminate (even if it's absurdly large).
<Bike> oh it does say it should be "approximately" uniform, huh
astronavt_ has joined #lisp
<Bike> what the heck is a non cyclic rng
<Bike> there are only finitely many return values
astronavt has quit [Read error: Connection reset by peer]
<jasom> Bike: It's conjectured that pi is non-cyclic, right?
<Shinmera> computer words are finite tho.
<Bike> "A cyclic number is an integer in which cyclic permutations of the digits are successive multiples of the number." uh
<jasom> rational expansions of pi that is.
<adlai> someone could plausibly set it up to read from a nondeterministic hardware device
<Bike> i guess it's not proven that pi is normal
<Bike> but i don't understand why it matters
<Bike> most-positive-fixnum is finite, and since it's an integer the distribution is discrete
<jasom> Bike: consider flipping a fair coin. Let's say I flip the coin until I get 5 heads in a row. That is not guaranteed to terminate, though it is very likely to for any large number of iterations.
nixfreak has quit [Ping timeout: 256 seconds]
<Bike> oh. yeah. ok
<Bike> i'm being stupid.
<Bike> taking limits too soon
<jasom> similarly an implementation with less than (integer-length most-positive-fixnum) state in its prng might never terminate on that.
<jasom> and it's guaranteed that there are some values it will never return from (random most-positive-fixnum) if there are that few bits of state in the prng.
<aeth> (true-statement-p "This sentence is false.") => ?
<Shinmera> jasom: Though the spec does say: If limit is an integer, each of the possible results occurs with (approximate) probability 1/limit.
<Shinmera> So arguably it does not allow holes.
<jasom> Shinmera: 0 is approximately 1/limit if limit is very large
<Shinmera> I'd read that as "explicitly not zero"
<jasom> Shinmera: no finite state prng can do this when you consider bignums, unless you think the spec implies the state must be larger than the largest allowed bignum.
<jasom> Shinmera: if it required each possible result to occure with identical probability, then it would explicitly not allow holes.
<jasom> but "approximately" implies that holes are allowed to me.
<Shinmera> to me it implies that the prng can be imperfect (which it will be+
<Shinmera> but not that it can have holes.
<jasom> Shinmera: there are lots of imperfect prng with 100% even distribution of values (a simple LCG does this, for example).
<Shinmera> Aight
Bike has quit [Ping timeout: 256 seconds]
robotoad has joined #lisp
<adlai> phoe: /buffer 29
<adlai> oops.
m3tti has quit [Ping timeout: 252 seconds]
<Ober> irc is hard
<phoe> adlai: I don't even have 29 buffers
<adlai> re: "most interesting way to get the value NIL" ... how about "as return value of #'type-of"
<pjb> (length (buffer-list)) -> 39 ; not even trying.
jack_rabbit has joined #lisp
kushal has quit [Remote host closed the connection]
<jasom> adlai: is that possible?
<adlai> it should not be, which is what would make it so interesting
kushal has joined #lisp
astronavt_ is now known as astronavt
Posterdati has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
SenasOzys has quit [Ping timeout: 246 seconds]
varjagg has quit [Ping timeout: 245 seconds]
Roy_Fokker has quit [Read error: Connection reset by peer]
Roy_Fokker has joined #lisp
drl has joined #lisp
r1b has joined #lisp
astronavt has quit [Ping timeout: 252 seconds]
didi has quit [Remote host closed the connection]
tsandstr has joined #lisp
astronavt has joined #lisp
tsandstr has quit [Remote host closed the connection]
orivej has quit [Ping timeout: 252 seconds]
astronavt_ has joined #lisp
r1b has quit [Quit: r1b]
astronavt has quit [Ping timeout: 246 seconds]
razzy has quit [Remote host closed the connection]
razzy has joined #lisp
orivej has joined #lisp
frodef has quit [Ping timeout: 268 seconds]
razzy has quit [Ping timeout: 252 seconds]
razzy has joined #lisp
Demosthenex has quit [Ping timeout: 252 seconds]
anewuser has joined #lisp
Bike_ has joined #lisp
Bike_ is now known as Bike
meepdeew has joined #lisp
pjb has quit [Ping timeout: 252 seconds]
siraben has quit [Ping timeout: 252 seconds]
meepdeew has quit [Ping timeout: 246 seconds]
Demosthenex has joined #lisp
meepdeew has joined #lisp
sjl_ has quit [Quit: WeeChat 2.3-dev]
ryan_vw has joined #lisp
sjl has joined #lisp
sjl has quit [Client Quit]
meepdeew has quit [Read error: Connection reset by peer]
tsandstr has joined #lisp
anewuser has quit [Ping timeout: 252 seconds]