binghe 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.0, CMUCL 21b, ECL 16.1.3, CCL 1.11.5
nowhere_man has joined #lisp
nowhereman_ has quit [Ping timeout: 248 seconds]
marusich has joined #lisp
gval has joined #lisp
msb has quit [Ping timeout: 240 seconds]
quazimodo has joined #lisp
ebzzry_ has quit [Ping timeout: 256 seconds]
arescorpio has joined #lisp
markong has quit [Ping timeout: 276 seconds]
Oladon has quit [Read error: Connection reset by peer]
sz0 has quit [Quit: Connection closed for inactivity]
DGASAU has quit [Ping timeout: 252 seconds]
Oladon has joined #lisp
python476 has quit [Read error: Connection reset by peer]
jmercouris has quit [Ping timeout: 248 seconds]
gval has quit []
smaster has quit [Ping timeout: 256 seconds]
Kundry_Wag has joined #lisp
slyrus has joined #lisp
ebzzry_ has joined #lisp
Kundry_Wag has quit [Ping timeout: 276 seconds]
Amplituhedron has joined #lisp
jsn` has left #lisp ["ERC (IRC client for Emacs 25.2.1)"]
nirved has quit [Quit: Leaving]
fikka has quit [Ping timeout: 268 seconds]
Bike has joined #lisp
<emaczen> how do streams handle output from multiple threads?
wmannis has joined #lisp
wxie has joined #lisp
<rumbler31> there is a special flag for ccl that makes the behave in a thread safe way
<rumbler31> i suspect the answer is "thats implementation specific"
djeis has joined #lisp
Kundry_Wag has joined #lisp
smaster has joined #lisp
pagnol has joined #lisp
Kundry_Wag has quit [Ping timeout: 260 seconds]
djeis has quit [Quit: Mutter: www.mutterirc.com]
fikka has joined #lisp
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
attila_lendvai has quit [Read error: Connection reset by peer]
attila_lendvai has joined #lisp
Kundry_Wag has joined #lisp
jsn` has joined #lisp
krwq has joined #lisp
jsn` has left #lisp ["ERC (IRC client for Emacs 25.2.1)"]
attila_lendvai has quit [Read error: Connection reset by peer]
<Naergon> what about clojure? It seems to be able to compile for android's command line, its free and its more popukar. Whats the drawback?
attila_lendvai has joined #lisp
attila_lendvai has quit [Changing host]
attila_lendvai has joined #lisp
<pjb> Naergon: it's not a Common Lisp library, therefore it's not on topic. This channel is reserved for Common Lisp discussion.
<pjb> Naergon: try ##lisp or #clojure.
Kundry_Wag has quit [Ping timeout: 264 seconds]
<Naergon> Thanks
<pjb> Naergon: notice that you could implement a CL library exporting most of Clojure features. Then you could discuss it and its conforming implementation here.
Amplituhedron has quit [Ping timeout: 276 seconds]
Kundry_Wag has joined #lisp
aindilis has joined #lisp
Kundry_Wag has quit [Ping timeout: 256 seconds]
EvW has quit [Ping timeout: 260 seconds]
attila_lendvai has quit [Quit: Leaving.]
fikka has quit [Ping timeout: 240 seconds]
thallia has quit [Ping timeout: 240 seconds]
thallia has joined #lisp
Kundry_Wag has joined #lisp
<emaczen> Naergon: Clojure isn't general enough, CL has more multiparadigm features so that you can select/implement the paradigm best suited for your problem
Kundry_Wag has quit [Ping timeout: 265 seconds]
<Naergon> emaczen: yeah, i see, lisp can deal with mutable data (c-style) better
<emaczen> Naergon: Object Oriented programming too
<emaczen> function programming is really good too, and you can implement pretty much anything (any paradigm) you would want with macros too
<emaczen> You can even do metaprogramming with the object system
fikka has joined #lisp
Tobbi has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Patternmaster has quit [Quit: Lost terminal]
Kundry_Wag has joined #lisp
j0nd0e` has joined #lisp
Kundry_Wag has quit [Ping timeout: 248 seconds]
wxie has quit [Remote host closed the connection]
j0nd0e has quit [Ping timeout: 264 seconds]
pagnol has quit [Ping timeout: 248 seconds]
rpg has joined #lisp
copec has quit [Quit: checkity check out.]
<sigjuice> I have downloaded all the releases provided by quicklisp. I frequently grep through all of ~/quicklisp/dists/quicklisp/software/. Any suggestions on what I might do to speed this up or otherwise do this better? My computer is old and slow :/
<Bike> uninstall things
smaster has quit [Ping timeout: 256 seconds]
<sigjuice> downloading all of quicklisp is deliberate
<sigjuice> I like to have everything for offline use
nullniverse has quit [Read error: Connection reset by peer]
<Bike> fgrep?
<emaczen> right a customized program to make searching faster instead of grepping
<emaczen> write*
<k-hos> get a better computer
<k-hos> :>
smaster has joined #lisp
<sigjuice> k-hos I would like a better computer. It is not within my means at the moment :|
pierpa has joined #lisp
<aeth> you only need an SSD, not an entirely new computer
<aeth> or is grep CPU-bound?
fikka has quit [Ping timeout: 240 seconds]
<aeth> hmm... I get about 10% CPU usage when grepping for 'defmethod foo' (surprisingly, this exists! and defun foo also exists and is a lot more common!)
makomo has quit [Ping timeout: 256 seconds]
<sigjuice> yes. looks like a lot of 'defun foo', a lot of it in test code.
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
d4ryus1 has joined #lisp
<aeth> I hope they're all tests
<sigjuice> time grep -sr 'defun foo' . => real 1m37.537s, user 0m33.024s, sys 0m8.682s
saki has quit [Ping timeout: 260 seconds]
Cymew has joined #lisp
d4ryus has quit [Ping timeout: 240 seconds]
Cymew has quit [Ping timeout: 256 seconds]
copec has joined #lisp
saki has joined #lisp
Arcaelyx has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
arescorpio has quit [Excess Flood]
Arcaelyx has joined #lisp
Kundry_Wag has joined #lisp
<pillton> Why do you frequently grep through all of the software?
ckonstanski has quit [Remote host closed the connection]
Kundry_Wag has quit [Ping timeout: 256 seconds]
<rme> https://geoff.greer.fm/ag/ is a winner
<rme> for searching code
milanj has quit [Quit: This computer has gone to sleep]
smokeink has joined #lisp
wmannis has quit [Quit: wmannis]
pjb has quit [Ping timeout: 252 seconds]
shrdlu68 has joined #lisp
<shrdlu68> Good morning, fellow sentient beings!
Kundry_Wag has joined #lisp
Kundry_Wag has quit [Ping timeout: 240 seconds]
DGASAU has joined #lisp
learning_ has joined #lisp
smokeink has quit [Remote host closed the connection]
dieggsy has quit [Ping timeout: 255 seconds]
rpg has joined #lisp
<sigjuice> pillton it is my way of trying to learn things
lambdastupid has joined #lisp
<lambdastupid> hello
<lambdastupid> what is a good lisp project to contribute to?
<aeth> What are your interests?
<aeth> Desktop applications? Games? Web? Scripting? Something else?
<sigjuice> rme you were not kidding! I known of ag since forever, but was never motivated to try it until now. thanks!
j0nd0e` has quit [Remote host closed the connection]
smokeink has joined #lisp
<aeth> it is noticably faster than grep
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<aeth> How do you download all of quicklisp and how large is it?
<sigjuice> aeth: ql-dist::(map nil 'ensure-installed (provided-releases (dist cl-user::name)))
<sigjuice> my ~/quicklisp/dists/quicklisp/software/ directory is 1.3G. This includes all of the latest dist and some partial older dists.
<aeth> That's not bad at all
pjb has joined #lisp
<aeth> Although I suspect the total size of everything on Quicklisp (not counting old versions) grows faster than linearly over time.
pjb is now known as Guest66869
<sigjuice> I'm not so sure about that, but it should be easy to get the exact figures
<aeth> There's no upper limit on libraries for doing the exact same thing, and there's plenty of justifications for new libraries. Especially performance.
<aeth> I wouldn't be surprised if most libraries in Quicklisp couldn't be replaced by something considerably faster.
<aeth> And the older projects will add features, tests, examples, documentation (hah), etc.
<sigjuice> for my own petty needs, performance doesn't even make the list. I need things to 1. be correct 2. something I can understand easily
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
<aeth> I've been experimenting with correctness. It seems to work well enough that I'll start slowly moving everything to this new style.
<aeth> Verifying things *in* macros is neat.
<aeth> Compile time errors rather than run time errors.
<Bike> what exactly does this entail
lambdastupid has quit [Ping timeout: 260 seconds]
<shrdlu68> Where in the clhs is the documentation for the (defun (setf foo)... form?
Patternmaster has joined #lisp
<Bike> clhs defun
<Bike> "function-name---a function name." "function name n. 2. A symbol or a list (setf symbol)."
<Bike> maybe you mean something else? like how setf functions are called in macroexpansions of setf?
<aeth> Bike: Well, macros can only verify structural things and simple atoms, unfortunately, afaik. I can probably move more into compile time. A lot more.
<aeth> Bike: But it basically entails possibly doubling the size of the code, and a runtime cost at startup (that I can't really notice) for the stuff that can't be checked at compile time.
<Bike> i meant like
<Bike> "what are you doing"
<Bike> "can i see an example"
<shrdlu68> Bike: I'm looking for where exactly one places the new place in the lambda list.
<Bike> first
<Bike> (setf (foo bar baz) v) => (funcall #'(setf foo) v bar baz)
<aeth> Bike: Unfortunately, I'm nowhere near done yet.
<Bike> oh
Kundry_Wag has joined #lisp
<shrdlu68> I see, thanks.
<shrdlu68> I still don't know where exactly in the docs this info is, though.
<Bike> one moment
<Bike> clhs 5.1.2.9
<specbot> Other Compound Forms as Places: http://www.lispworks.com/reference/HyperSpec/Body/05_abi.htm
schoppenhauer has quit [Ping timeout: 240 seconds]
<shrdlu68> Bike: thanks
Kundry_W_ has joined #lisp
Kundry_Wag has quit [Read error: Connection reset by peer]
raynold has quit [Quit: Connection closed for inactivity]
schoppenhauer has joined #lisp
wheelsucker has quit [Quit: Client Quit]
daniel-s has joined #lisp
Kundry_W_ has quit [Ping timeout: 248 seconds]
ghostyyy is now known as ghostyy
wxie has joined #lisp
<drmeister> How do I indent in a format? (format t "~20IHello~%") is doing bupkis
<drmeister> Uh - wait - turned off the pretty printer - trying again
<Bike> clhs ~i
<Bike> oh, that's pprint logical block stuff
<Bike> mysteries
<Bike> i just use ~t like a fool
<drmeister> clhs ~t
<drmeister> (sigh)
<Bike> uh... i dunno.
<drmeister> It works in sbcl
Kundry_Wag has joined #lisp
vlatkoB has joined #lisp
Kevslinger has quit [Quit: Connection closed for inactivity]
Guest66869 has quit [Read error: Connection reset by peer]
<drmeister> I don't know what Clasp is up to with that - it's all over the place
wxie has quit [Remote host closed the connection]
Pixel_Outlaw has quit [Quit: Leaving]
Kundry_Wag has quit [Ping timeout: 240 seconds]
trocado has quit [Ping timeout: 248 seconds]
Kundry_Wag has joined #lisp
<shrdlu68> (upgraded-array-element-type '(simple-array uint32 (2))) => T
<pierpa> of course
<shrdlu68> Subsequently, setfing to the array with a '(simple-array uint32 (2)) warns me that it's not of type T.
<Bike> everything but numbers and characters will upgrade to T on every implementation i'm aware of
<Bike> ...not of type T? what?
<Bike> everything is of type t
<Bike> paste the exact code or warning?
<shrdlu68> Oh sorry, my bad. Don't know where that came from :)
<shrdlu68> Let me start over.
Kundry_Wag has quit [Ping timeout: 256 seconds]
rpg has joined #lisp
<shrdlu68> I was calling #'vector-push-extend with the wrong order of arguments, hence the type mismatch warnings.
<Bike> oh, i see
Patternmaster has quit [Quit: leaving]
Patternmaster has joined #lisp
shifty has quit [Ping timeout: 256 seconds]
sjl has quit [Ping timeout: 240 seconds]
Kundry_Wag has joined #lisp
ome has joined #lisp
borei has quit [Quit: Leaving.]
Kundry_Wag has quit [Ping timeout: 268 seconds]
Kevslinger has joined #lisp
Bike has quit [Quit: Lost terminal]
Patternmaster has quit [Quit: leaving]
Patternmaster has joined #lisp
nika has joined #lisp
nika has quit [Client Quit]
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<beach> Good morning everyone!
<smokeink> hey
kotrcka has quit [Remote host closed the connection]
daniel-s has quit [Remote host closed the connection]
nika has joined #lisp
Patternmaster has quit [Quit: leaving]
Patternmaster has joined #lisp
pierpa has quit [Quit: Page closed]
fikka has joined #lisp
Oladon has quit [Quit: Leaving.]
<jack_rabbit> morning!
<beach> Hello jack_rabbit.
<jack_rabbit> how are you, beach?
<beach> I am fine as usual. What about yourself?
<jack_rabbit> Very good.
<jack_rabbit> I had fun creating a proof-of-concept gopher server yesterday, and I've been tweaking it today.
<beach> Congratulations!
<jack_rabbit> Thanks. :)
fikka has quit [Ping timeout: 240 seconds]
damke has joined #lisp
aindilis has quit [Ping timeout: 276 seconds]
learning_ has quit [Remote host closed the connection]
<jack_rabbit> Right now it serves up documents from RSS feeds, converting the HTML articles into plain-text.
jack_rabbit has left #lisp ["Leaving"]
jack_rabbit has joined #lisp
damke_ has quit [Ping timeout: 264 seconds]
z3t0 has joined #lisp
zaquest has quit [Quit: Leaving]
zaquest has joined #lisp
z3t0 has quit [Remote host closed the connection]
z3t0 has joined #lisp
fikka has joined #lisp
kajo has quit [Quit: WeeChat 2.0.1]
z3t0 has quit [Remote host closed the connection]
rpg has joined #lisp
LocaMocha has joined #lisp
raynold has joined #lisp
z3t0 has joined #lisp
kajo has joined #lisp
saki has quit [Ping timeout: 265 seconds]
saki has joined #lisp
learning has joined #lisp
fikka has quit [Ping timeout: 255 seconds]
Karl_Dscc has joined #lisp
learning has quit [Client Quit]
<smokeink> jack_rabbit : some characters don't display well ' https://gopher.floodgap.com/gopher/gw?gopher://knusbaum.com:70/0/Technology/12 "it’s more likely ..."
<jack_rabbit> smokeink, Yeah. I need to figure out how to handle this.
<jack_rabbit> smokeink, There's a mix of encodings going on, and it's not always apparent which is which.
slyrus has quit [Ping timeout: 260 seconds]
fikka has joined #lisp
Arcaelyx has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
fikka has quit [Ping timeout: 248 seconds]
fourier has joined #lisp
mishoo has joined #lisp
visof has joined #lisp
fikka has joined #lisp
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
fourier has quit [Ping timeout: 248 seconds]
kotrcka has joined #lisp
pagnol has joined #lisp
Karl_Dscc has quit [Remote host closed the connection]
nullman has quit [Ping timeout: 268 seconds]
Kundry_Wag has joined #lisp
nullman has joined #lisp
Kundry_Wag has quit [Ping timeout: 276 seconds]
visof has quit [Ping timeout: 264 seconds]
ome has quit [Quit: Connection closed for inactivity]
daniel-s has joined #lisp
EvW has joined #lisp
smokeink has quit [Ping timeout: 256 seconds]
flamebeard has joined #lisp
mingus has joined #lisp
scymtym has quit [Ping timeout: 240 seconds]
<razzy> jack_rabbit: i very much like gopher :]
<jack_rabbit> :) me too.
<razzy> everything is file ideology :]
<razzy> :D
<razzy> and forced view structure is feature, not a bug, imho :]
<fe[nl]ix> razzy: please don't misuse the word "ideology"
kajo has quit [Ping timeout: 255 seconds]
fikka has quit [Ping timeout: 248 seconds]
stacksmith has quit [Ping timeout: 256 seconds]
z3t0 has quit [Remote host closed the connection]
shrdlu68 has quit [Ping timeout: 260 seconds]
shrdlu68 has joined #lisp
<phoe> oh
<phoe> ELS deadline extended
<phoe> does it mean that they are still looking for more papers?
<loke> Don't they extend every year?
<phoe> Why, though?
EvW has quit [Ping timeout: 255 seconds]
<beach> It has become a tradition for all CS conferences.
<flip214> phoe: tradition
<beach> So people now expect it.
smaster has quit [Ping timeout: 268 seconds]
<flip214> beach: that alone would be a good reason _not_ to do it, at least once ;)
rpg has joined #lisp
<beach> It would take some courage on the part of the program chair.
<phoe> Hah, I see.
<flip214> well, it's easy to chicken out a few days later (if there are too few papers, or too much protest) and say "just joking, ship 'em in", too
Cymew has joined #lisp
<phoe> "oh we actually extended but forgot to announce it"
<phoe> (:
<flip214> phoe: no, not exactly. In order to get people to submit sooner there has to be some negative point before...
<flip214> actually it's much easier to announce a date a week earlier first, and then revise.
Murii has joined #lisp
fikka has joined #lisp
<phoe> flip214: I see.
<beach> So, maybe I should submit another paper. :)
pfdietz_ has joined #lisp
pfdietz has quit [Ping timeout: 256 seconds]
fikka has quit [Ping timeout: 255 seconds]
Tobbi has joined #lisp
<phoe> beach: go for it!
shifty has joined #lisp
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
orivej has joined #lisp
fikka has joined #lisp
milanj has joined #lisp
marusich has quit [Quit: Leaving]
scymtym has joined #lisp
Hafeez has joined #lisp
kotrcka has quit [Remote host closed the connection]
smokeink has joined #lisp
kotrcka has joined #lisp
smokeink has quit [Ping timeout: 256 seconds]
fikka has quit [Ping timeout: 240 seconds]
fikka has joined #lisp
damke_ has joined #lisp
fikka has quit [Ping timeout: 248 seconds]
Hafeez has quit [Quit: Leaving]
damke has quit [Ping timeout: 264 seconds]
fikka has joined #lisp
m00natic has joined #lisp
mlf has quit [Read error: Connection reset by peer]
hhdave has joined #lisp
rstandy has joined #lisp
fikka has quit [Ping timeout: 276 seconds]
<krwq> does anyone by any chance have mappings from linux's open flags to CL's open arguments (direction if-exists if-does-not-exist)? (or the other way) - I'm interested in all cases not a specific configuration
makomo has joined #lisp
<flip214> krwq: no easy relation. :supersede may involve a temp file and a rename, for example. :rename-and-delete likewise.
<krwq> flip214: is there at least mostly working relation?
<krwq> flip214: or any valid relation
<flip214> I know of no such list. Perhaps SBCL or ECL sources can help, though.
scymtym has quit [Ping timeout: 255 seconds]
<flip214> krwq: but perhaps I can help better if you answer the question "what are you trying to achieve?"
<krwq> flip214: implementing file system in CL - currently playing with fuse but may port to windows one day
<krwq> I'm starting to look at sbcl right now but don't know this code base that much. This seems promising though: https://github.com/sbcl/sbcl/blob/master/src/code/fd-stream.lisp#L2342
<krwq> although lisghtly longer than I hoped
<krwq> slightly*
fikka has joined #lisp
<krwq> The goal is that I can eventually create something like *file-system* and could change open to use i.e. virtual file system or capture all system calls but also could mount the same virtual file system to a physical one
rpg has joined #lisp
ebzzry_ has quit [Ping timeout: 248 seconds]
schweers has joined #lisp
schweers has quit [Client Quit]
schweers has joined #lisp
hhdave has quit [Ping timeout: 240 seconds]
ebzzry_ has joined #lisp
makomo has quit [Ping timeout: 256 seconds]
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
krwq has quit [Remote host closed the connection]
<shrdlu68> I wish to create a function with a variable foo such that foo will refer to the current lexical binding. How do I achieve this, if possible?
<shrdlu68> Not a closure - foo is undefined at the moment of creation.
<shrdlu68> And not a special variable - foo does not have a global binding.
heisig has joined #lisp
<shrdlu68> I fear I do not make much sense.
<lieven> shrdlu68: a macro refering to foo might be the easiest way
scymtym has joined #lisp
<shrdlu68> lieven: I can't quite figure out what the expansion would look like.
makomo has joined #lisp
<shrdlu68> Hmm, perhaps &environment?
<flip214> shrdlu68: "lexical binding" is a term used during the compilation process. during runtime you don't "see" that any more.
<lieven> nah. that's something else.
<flip214> (unless you compile that knowledge in, see the various macros in let-over-lambda)
<lieven> say you we're going to call your function returning lexical foo
<lieven> just put all the code that uses the result of that function into a macro
Kaisyu has quit [Quit: Connection closed for inactivity]
<beach> shrdlu68: Can you give an example of use case for what you want?
<shrdlu68> flip214: To be clear: (defun foo (a) (+ a b)). "b" here is undefined. How do I make it refer to whatever b is lexically bound where #'foo is called?
rstandy` has joined #lisp
<beach> shrdlu68: You can't.
rstandy has quit [Ping timeout: 264 seconds]
<beach> shrdlu68: Luckily.
<beach> shrdlu68: If you could do that, no significant compiler optimization would be possible.
<shrdlu68> I've never seen it done, admittedly.
orivej has quit [Ping timeout: 248 seconds]
<beach> The immediate question that comes to mind is "why on earth would you want to do such a thing?"
jibanes has quit [Ping timeout: 256 seconds]
<shrdlu68> beach: Trying to use custom hash table test and hash function. SBCL requires that the test be created beforehand, and a hash function registered with sb-ext:define-hash-table-test.
rstandy`` has joined #lisp
jibanes has joined #lisp
Kundry_Wag has joined #lisp
<beach> I don't see the connection. It is not important I guess.
<shrdlu68> In the test function, I refer to an object that is available later when the hash table is being created. I could simply declare this object special and be done with it.
<shrdlu68> But I thought I'd try something clever.
rstandy` has quit [Ping timeout: 276 seconds]
nopf has quit [Ping timeout: 264 seconds]
<beach> OK, here is an example of why this is a terrible idea: Say you call MAPCAR with some function F defined like you want, so (defun f (a) (+ a b)). You call MAPCAR from a function G that defines the lexical binding for B, so you think you will bet that value in F. Unfortunately, MAPCAR also has a lexical binding B, so you get the wrong value.
Kundry_Wag has quit [Ping timeout: 240 seconds]
<beach> Pretty much all software would break randomly if this mechanism were possible.
<lieven> some languages have similar mechanisms
<shrdlu68> I see.
<beach> Well, we have special variables for that purpose.
hhdave has joined #lisp
<shrdlu68> Alternatively, I could create the hash test and function after the object is available, making the tests closures.
<shrdlu68> beach: Still, isn't it possible to see b being created in mapcar and "shadow" the value of b?
<loke> shrdlu68: Now I know what your nick is all about :-)
<beach> shrdlu68: Yes, and so all software that calls MAPCAR would have to know how the person implementing it decided to name the lexical variables.
<beach> shrdlu68: And that choice would be different in different implementations, making portable software impossible.
<TMA> the really old lisps had it that way, because they did not have lexical binding at all
<beach> Indeed.
<shrdlu68> loke: Terry Winograd's blocks-building natural language understanding program, or a linotype that gains sentience in some SF short story.
<beach> shrdlu68: It is just the relative frequency of letters in English ETAOINSHRDLU.
<shrdlu68> beach: That too.
<loke> I assumed it was the AI project
<shrdlu68> beach: I can't help but think: this ought to work, somewhow, by the same mechanism that dynamic variable work. Anyway, I probably need to to give all this some more thought.
pjb has joined #lisp
nika has quit [Quit: Leaving...]
<loke> There is some effort being done right now in resurrecting that piece of software. It's complicacated as it's using a bunch of ad-hoc hardware
<beach> shrdlu68: It can't work.
<loke> It was discussed last week on the ITS hackers mailinglist.
pjb is now known as Guest79007
<beach> shrdlu68: When the compiler compiles a function, it turns lexical variables into registers and stack locations. The name is lost for all purposes except debugging.
Guest79007 has quit [Remote host closed the connection]
pjb` has joined #lisp
visof has joined #lisp
visof has joined #lisp
visof has quit [Changing host]
visof has quit [Client Quit]
pjb` is now known as pjb
rpg has joined #lisp
scymtym has quit [Remote host closed the connection]
scymtym has joined #lisp
oystewh has joined #lisp
_cosmonaut_ has joined #lisp
Baggers has joined #lisp
damke has joined #lisp
damke_ has quit [Ping timeout: 264 seconds]
rstandy`` has left #lisp ["ERC (IRC client for Emacs 24.5.1)"]
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
d4ryus1 is now known as d4ryus
raynold has quit [Quit: Connection closed for inactivity]
figurehe4d has quit [Remote host closed the connection]
nirved has joined #lisp
logos002 has joined #lisp
Amplituhedron has joined #lisp
<razzy> fe[nl]ix: my use of ideology was well justified imho?
attila_lendvai has joined #lisp
attila_lendvai has joined #lisp
attila_lendvai has quit [Changing host]
ludston_ has quit [Read error: Connection reset by peer]
markong has joined #lisp
ludston has joined #lisp
Kundry_Wag has joined #lisp
python476 has joined #lisp
karswell has quit [Remote host closed the connection]
karswell_ has joined #lisp
saki has quit [Ping timeout: 256 seconds]
saki has joined #lisp
<tfb> shrdlu68: note that you can use dynamic variables without requiring global bindings
<tfb> (or, rather, toplevel bindings)
<shrdlu68> tfb: Understood.
Chream_ has quit [Ping timeout: 256 seconds]
milanj has quit [Read error: Connection reset by peer]
EvW1 has joined #lisp
EvW1 has quit [Remote host closed the connection]
nowhereman_ has joined #lisp
nowhere_man has quit [Ping timeout: 256 seconds]
milanj has joined #lisp
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
malm has quit [Ping timeout: 248 seconds]
milanj has quit [Read error: Connection reset by peer]
rpg has joined #lisp
malm has joined #lisp
karswell_ has quit [Remote host closed the connection]
Kaisyu has joined #lisp
karswell_ has joined #lisp
dcluna has quit [Read error: Connection reset by peer]
malm has quit [Ping timeout: 240 seconds]
pchrist has quit [Quit: leaving]
malm has joined #lisp
pchrist has joined #lisp
jmercouris has joined #lisp
dcluna has joined #lisp
varjag has quit [Quit: ERC (IRC client for Emacs 24.5.1)]
quazimodo has quit [Read error: Connection reset by peer]
ebzzry_ has quit [Ping timeout: 256 seconds]
logos002 has quit [Remote host closed the connection]
Bike has joined #lisp
quazimodo has joined #lisp
oystewh has quit [Quit: .]
malm has quit [Ping timeout: 240 seconds]
surya has joined #lisp
smokeink has joined #lisp
cods has quit [Quit: couic]
ebzzry_ has joined #lisp
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jmercouris has quit [Ping timeout: 255 seconds]
_paul0 has joined #lisp
paul0 has quit [Ping timeout: 256 seconds]
milanj has joined #lisp
_paul0 has quit [Ping timeout: 240 seconds]
malm has joined #lisp
paul0 has joined #lisp
cods has joined #lisp
_paul0 has joined #lisp
jmercouris has joined #lisp
paul0 has quit [Ping timeout: 240 seconds]
paul0 has joined #lisp
_paul0 has quit [Ping timeout: 240 seconds]
Chream has joined #lisp
_paul0 has joined #lisp
paul0 has quit [Ping timeout: 260 seconds]
rpg has joined #lisp
Murii is now known as rope
rope is now known as Murii
__paul0 has joined #lisp
rpg has quit [Client Quit]
_paul0 has quit [Ping timeout: 276 seconds]
Bike has quit [Quit: Lost terminal]
__paul0 has quit [Ping timeout: 256 seconds]
jtroseme has joined #lisp
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
nullman has quit [Ping timeout: 256 seconds]
nullman has joined #lisp
daniel-s has quit [Remote host closed the connection]
smokitchevsky__ has joined #lisp
smokitchevsky__ has quit [Client Quit]
Chream_ has joined #lisp
Trystam has joined #lisp
dotc has quit [Ping timeout: 248 seconds]
dieggsy has joined #lisp
Tristam has quit [Ping timeout: 256 seconds]
Trystam is now known as Tristam
dotc has joined #lisp
saki has quit [Remote host closed the connection]
smokeink has quit [Ping timeout: 268 seconds]
saki has joined #lisp
wigust has joined #lisp
Amplituhedron has quit [Quit: Konversation terminated!]
ludston has quit [Quit: -a- Connection Timed Out]
ludston has joined #lisp
Baggers has left #lisp ["rcirc on GNU Emacs 25.3.1"]
rpg has joined #lisp
Bike has joined #lisp
pjb has quit [Remote host closed the connection]
<schweers> Does anyone know why https://cliki.net/Current%20recommended%20libraries lists chanl but not calispel?
<schweers> i.e. is there anything wrong with calispel?
<Bike> my first guess would just be that nobody's added it
<schweers> That thought has crossed my mind, but I wanted to know if there is some other reason
<Shinmera> schweers: It's a public wiki. Add it yourself.
LocaMocha has quit [Ping timeout: 255 seconds]
__rumbler31 has joined #lisp
pagnol has quit [Ping timeout: 256 seconds]
shifty has quit [Ping timeout: 264 seconds]
orivej has joined #lisp
LocaMocha has joined #lisp
jstypo has quit [Read error: Connection reset by peer]
rpg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
pjb has joined #lisp
fikka has quit [Ping timeout: 256 seconds]
fikka has joined #lisp
<Xach> schweers: I think one way to get good info is to convince sabrac to do a survey
<Shinmera> Heh
<schweers> who?
<Xach> schweers: sabra has done nice surveys of Lisp libraries where there are many choices
<schweers> I see. While this may not exactly answer my question, it does seem interesting. Thanks!
DonVlad has joined #lisp
warweasle has joined #lisp
jstypo has joined #lisp
ebzzry_ has quit [Ping timeout: 256 seconds]
fikka has quit [Ping timeout: 252 seconds]
ebzzry_ has joined #lisp
Amplituhedron has joined #lisp
Amplituhedron has quit [Client Quit]
saki has quit [Ping timeout: 260 seconds]
EvW has joined #lisp
xuxuru has joined #lisp
ebzzry_ has quit [Ping timeout: 276 seconds]
fikka has joined #lisp
ebzzry_ has joined #lisp
ebzzry_ has quit [Ping timeout: 256 seconds]
makomo has quit [Ping timeout: 256 seconds]
vaporatorius has quit [Quit: Leaving]
shrdlu68 has quit [Ping timeout: 256 seconds]
pagnol has joined #lisp
ebzzry_ has joined #lisp
Kundry_Wag has quit [Remote host closed the connection]
eschatologist has quit [Ping timeout: 264 seconds]
rippa has joined #lisp
eschatologist has joined #lisp
varjag has joined #lisp
saki has joined #lisp
moei has joined #lisp
Chream_ has quit [Read error: Connection reset by peer]
Chream_ has joined #lisp
BitPuffin has joined #lisp
fikka has quit [Ping timeout: 264 seconds]
mareskeg has joined #lisp
mareskeg has quit [Client Quit]
karswell_ has quit [Ping timeout: 256 seconds]
fikka has joined #lisp
fikka has quit [Ping timeout: 256 seconds]
jmercouris has quit [Remote host closed the connection]
jmercouris has joined #lisp
rpg has joined #lisp
<jmercouris> Can anyone think of a good way to "symlink" a snippet of a file?
<jmercouris> I have one file that I want the content to appear in two places
<Shinmera> Invent a new file system?
<jmercouris> Lol
<jmercouris> The only thing I can think of right now is reading in the other file and evaluating it, but that feels extremely wrong
fikka has joined #lisp
<Bike> if you want some content to appear in two files you'll need to put a copy of the content in each file
<Bike> that's about all there is
<Bike> no idea about "evaluating"
<jmercouris> One file is a lisp file that is "compiled", so I can have it spit out whatever I want
<jdz> Sounds very much like the original idea of HyperText.
<jmercouris> ah, I'm not explaining this well at all
jamessmith has joined #lisp
<jmercouris> I don't want to have to manually copy and paste, I could just make it part of my "build" process though
<jmercouris> I think that will have to do for now
<jmercouris> it's less fragile that way anyway
<Shinmera> I don't know of any file system that allows displacement.
<Shinmera> So I was serious.
<jmercouris> I'm also not aware of any such filesystem
<jmercouris> and I'm not ready to switch the main file system on my OS
<jmercouris> but there are ways to kind of "ensure" that content is synchronized between two files other than file system level things
<Shinmera> Don't need to switch the main FS. There's FUSE.
<Bike> that would be kind of a stupid requirement for a software project
<jmercouris> I don't mean I want an actual symlink
<Bike> "Build: install ReiserFS"
<jmercouris> Bike: I agree
<jmercouris> It'd be hard to get people to set it up for sure :D
Kundry_Wag has joined #lisp
hiroaki has joined #lisp
<jmercouris> well, let me describe my problem, I have a manual file, which is contained in my main repository
<jmercouris> I woudl like to use this manual file during the construction of my static site
<jmercouris> Unfortunately I have to do some processing to this file to prepare for consumption by the static site generator
<jmercouris> I can either 1. modify the static site generator or 2. process the file and copy it from the main repository every time I export my site
<jmercouris> I am leaning towards option 2 at the moment
<jmercouris> "manual file" is an *.org file that contains a manual on how to use my software
mareskeg has joined #lisp
<Shinmera> If you need to change the contents anyway why would you need displacement?
<jmercouris> I don't have to change the contents of the file, I just have to put a header onto it for the static site generator
<jmercouris> I just have to put :post-content markup=org at the top of the file
<jmercouris> I'm prepending, not changing
<jmercouris> my templating system is too rigid, it should support just plain org files, maybe I should change the site generator
<TMA> if your site generator needs a file (as opposed to a stream) you are probably out of luck
fikka has quit [Ping timeout: 256 seconds]
<jmercouris> it does need a file, unfortunately
<jmercouris> it is a piece of software I forked, I have a lot of changes I would like to make to it
<Shinmera> And it's not in Lisp, I presume
<jmercouris> It is in lisp
Kundry_Wag has quit [Ping timeout: 276 seconds]
<Shinmera> Changing it to accept streams should be trivial then
<jmercouris> maybe, I haven't looked into that
<jmercouris> the code is a little spaghetti
<Shinmera> :/
<jdz> Which code isn't?
<Shinmera> simple code
<TMA> jmercouris: then you'd use a concatenated-stream
<jmercouris> I've been at the point several times where I've felt like just rewriting the software from scratch, but I think it's a good exercise to slowly refactor it instead
<jmercouris> it more mimics what has to happen with real software in a production environment
<jmercouris> TMA: I tried look in the CLHS for concatenated-stream and it wasn't a very helpful description :D http://www.lispworks.com/documentation/lw50/CLHS/Body/26_glo_c.htm#concatenated_stream
<jmercouris> TMA: can you please describe it briefly?
makomo has joined #lisp
<Shinmera> Make a concatenated stream consisting of a string-input-stream (of your header), and the file stream.
<jmercouris> Aha, that's why you asked about streams
<jmercouris> That is a clever solution
<jmercouris> Ok, let me try to figure out how much work that will be to convert this software, and then I can try to implement that
<jmercouris> thanks for the ideas
Amplituhedron has joined #lisp
mareskeg has quit [Quit: mareskeg]
Arcaelyx has joined #lisp
sjl has joined #lisp
dddddd has joined #lisp
stacksmith has joined #lisp
attila_lendvai has quit [Ping timeout: 260 seconds]
mareskeg has joined #lisp
Kundry_Wag has joined #lisp
kark has quit [Ping timeout: 265 seconds]
jtroseme has quit [Quit: Leaving]
_cosmonaut_ has quit [Ping timeout: 265 seconds]
Amplituhedron has quit [Ping timeout: 276 seconds]
surya_ has joined #lisp
Cymew has quit [Remote host closed the connection]
surya_ has quit [Client Quit]
fikka has joined #lisp
mareskeg has quit [Quit: mareskeg]
mareskeg has joined #lisp
orivej_ has joined #lisp
orivej has quit [Ping timeout: 248 seconds]
jamessmith has quit [Quit: Leaving]
mareskeg has quit [Client Quit]
Kundry_Wag has quit [Remote host closed the connection]
heisig has quit [Quit: Leaving]
surya has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
mareskeg has joined #lisp
al-damiri has joined #lisp
drewc has quit [Ping timeout: 240 seconds]
rpg has quit [Quit: Textual IRC Client: www.textualapp.com]
EvW has quit [Ping timeout: 255 seconds]
Arcaelyx has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Khisanth has quit [Ping timeout: 265 seconds]
MetaYan has quit [Ping timeout: 240 seconds]
wheelsucker has joined #lisp
MetaYan has joined #lisp
Denommus has joined #lisp
csaurus has joined #lisp
m00natic has quit [Remote host closed the connection]
allm7ght has joined #lisp
drewc has joined #lisp
Chream_ has quit [Ping timeout: 256 seconds]
Khisanth has joined #lisp
mareskeg has quit [Quit: mareskeg]
Amplituhedron has joined #lisp
xuxuru has quit [Quit: xuxuru]
Amplituhedron has quit [Read error: Connection reset by peer]
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
dieggsy has quit [Ping timeout: 276 seconds]
flamebeard has quit [Quit: Leaving]
Kundry_Wag has quit [Remote host closed the connection]
allm7ght has quit [Ping timeout: 260 seconds]
Kundry_Wag has joined #lisp
fikka has quit [Ping timeout: 240 seconds]
Karl_Dscc has joined #lisp
<jasom> minion: memo for drmeister: besides cl-yacc, by memory there is zebu, yalalr, and and buffalo; yalalr wraps a LALR parser that someone else wrote to give it a yacc-like workflow.
<minion> Remembered. I'll tell drmeister when he/she/it next speaks.
saki has quit [Remote host closed the connection]
<pjb> jmercouris: have a look at com.informatimago.common-lisp.cesarum.utility:include-file
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
ghard has quit [Remote host closed the connection]
<pjb> jmercouris: try: (documentation 'com.informatimago.common-lisp.cesarum.utility:include-file 'function)
sjl has quit [Ping timeout: 256 seconds]
saki has joined #lisp
sjl has joined #lisp
fikka has joined #lisp
reg2 has joined #lisp
EvW1 has joined #lisp
reg2 has quit [Quit: Page closed]
schweers has quit [Ping timeout: 256 seconds]
fikka has quit [Ping timeout: 256 seconds]
fikka has joined #lisp
crsc has quit [Quit: leaving]
Kaisyu has quit [Quit: Connection closed for inactivity]
LiamH has joined #lisp
crsc has joined #lisp
hhdave has quit [Ping timeout: 256 seconds]
smurfrobot has quit [Remote host closed the connection]
hiroaki has quit [Quit: Leaving]
Kundry_Wag has quit [Remote host closed the connection]
smurfrobot has joined #lisp
orivej_ has quit [Ping timeout: 248 seconds]
smurfrobot has quit [Ping timeout: 260 seconds]
pagnol has quit [Ping timeout: 256 seconds]
lnostdal has quit [Remote host closed the connection]
Cymew has joined #lisp
smaster has joined #lisp
pagnol has joined #lisp
Kundry_Wag has joined #lisp
Cymew has quit [Ping timeout: 255 seconds]
Kundry_Wag has quit [Remote host closed the connection]
pagnol has quit [Ping timeout: 256 seconds]
Cymew has joined #lisp
<jmercouris> pjb: an interesting idea, but I don't want to read sexps unfortunately, they are in org mode format, thanks for the link though
chiyosaki has joined #lisp
saki has quit [Ping timeout: 248 seconds]
Cymew has quit [Ping timeout: 255 seconds]
<pjb> jmercouris: you can always use the c pre-processor or some other pre-processor.
<pjb> Or write one in lisp.
<pjb> The hardest part, is in defining the asdf file type and methods to process them.
<jmercouris> idk, that sounds a little bit too hardcore for me
aindilis has joined #lisp
<pjb> It's rather trivial.
<pjb> Otherwise, just copy-and-paste.
EvW1 has quit [Ping timeout: 265 seconds]
<jmercouris> Things are all about context, perhaps trivial for yourself
<pjb> Add a comment to remember to keep them in sync.
<jmercouris> I could imagine wasting several days working on this
<pjb> With a Makefile it's trivial.
<jmercouris> I don't even know the makefile format
<pjb> With asdf it's harder, because you have to read the documentation of asdf and check the examples.
<jmercouris> though I doubt anyone really understand it and all of its options
<jmercouris> I would find it easier with asdf, but that's just me
EvW has joined #lisp
<jmercouris> at least the asdf source would be a lot more comprehensible than C to me at this point
fikka has quit [Ping timeout: 265 seconds]
fikka has joined #lisp
smurfrobot has joined #lisp
fourier has joined #lisp
Karl_Dscc has quit [Remote host closed the connection]
allm7ght has joined #lisp
fikka has quit [Ping timeout: 240 seconds]
fikka has joined #lisp
<fourier> anyone submitted 2-page demo to ELS2018?
Chream_ has joined #lisp
<Shinmera> Not yet, but if I decide to be crazy I might still.
<Shinmera> I submitted a demo last year but it was more than 2 pages.
<fourier> its like 5 days left. just want to know what kind of stuff one can submit
smurfrobot has quit [Ping timeout: 256 seconds]
<Shinmera> Well, it's an academic conference, so you should have at least a few citations, even if it's just a demo.
<fourier> I see
<fourier> I guess better just to sumbit the lightning talk then :)
<Shinmera> my paper was scrutinised pretty hard for the low amount of references, but I got it accepted anyway. https://github.com/Shinmera/talks/blob/master/els2017-radiance/paper.pdf
<fourier> Ah I see these not a references to academic publications, just ordinary references..
<Shinmera> Well ideally you'd have references to other papers
<Shinmera> But for a demo that can be hard to come by.
Kundry_Wag has joined #lisp
<Shinmera> and, well, since I'm sure you have quite a few other papers to compete with, the better the references, the higher the chances of acceptance :)
<Shinmera> among other factors of course
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
<fourier> yes I see. still it looks if one just implements a library and want to show it off, probably lightning talk is enough. I'm planning to travel as a participant but thinking about presenting maybe something so I dont just listen
<Shinmera> Sure, a lightning talk is a great way to quickly bring something out and try presenting in front of people.
<Shinmera> I've done one every year so far.
smurfrobot has joined #lisp
python476 has quit [Remote host closed the connection]
<fourier> you are quite productive with amount of code :)
nullniverse has joined #lisp
<Shinmera> For some reason I have a very easy time doing everything but paying attention during a lecture.
<Shinmera> So university has been great in that regard, heh
<fourier> :thumbs_up: ;)
Kundry_Wag has quit [Remote host closed the connection]
smurfrobot has quit [Ping timeout: 256 seconds]
fikka has quit [Ping timeout: 276 seconds]
<jmercouris> Shinmera: it's a form of procrastination, I have the same problem
Kundry_Wag has joined #lisp
python476 has joined #lisp
smurfrobot has joined #lisp
<fourier> yep then I was a student the most brilliant ideas I had were typically the night before the exam
<fourier> which demanded immediate implementation of course
<jmercouris> lol, that's one of the reasons I enjoy being in school, it's a good way to focus on other things :D
<Shinmera> jmercouris: I don't think it's procrastination. It's not that I don't want to be there or don't want to pay attention. I just get tremendously bored very quickly. Lord knows I've tried paying attention.
Kundry_Wag has quit [Ping timeout: 240 seconds]
<jmercouris> Maybe not, so far you haven't said anything that is inconsistent with how it is for me
<aeth> Procrastination is a wonderful way to be productive, assuming that you still have time to do the procrastinated task.
smurfrobot has quit [Ping timeout: 256 seconds]
<jmercouris> I literally cannot pay attention during lectures, I can only read from the books, and I have motivation for everything but homework
<aeth> for me, it depends on the subject
<fourier> and on lecturer
<aeth> Mathematics... is never lectured properly.
<aeth> I don't even know why math lectures exist. Just give a big set of readings and problems.
<jmercouris> procrastination doesn't exactly mean that you don't want to pay attention or that you aren't interested, just that you are putting it off for some reason
<jmercouris> so I'm ql:quickload'ing :usocket
smurfrobot has joined #lisp
<jmercouris> but when I go to use it, I have issues
<aeth> But, anyway, my most productive Lisp day in 2 months was because I was procrastinating something yesterday. :-)
<jmercouris> something like (usocket:socket-server "127.0.0.1" 8080 #'default-tcp-handler) results in [Condition of type CCL::UNDEFINED-FUNCTION-CALL]
<aeth> You can use the procrastination of a higher priority thing to be very productive in a lower priority thing, and thus still accomplish something.
<jmercouris> aeth: that's it exactly!
EvW has quit [Ping timeout: 240 seconds]
<aeth> Just stay away from Reddit and Hacker News.
<aeth> And Wikipedia and TV Tropes
jibanes has quit [Ping timeout: 256 seconds]
<aeth> And YouTube
<aeth> Endless sinks of time.
<jmercouris> not sure what's going on as usocket:socket-server is suggested by company in slime
<jmercouris> so clearly somehow it knows about the existence, but it also doesn't show the appropriate var I'm editing in the echo area
<phoe> jmercouris: no
<phoe> #'usocket:socket-listen
<phoe> the fact that it is suggested in slime does not mean it has to be a function
jibanes has joined #lisp
<phoe> ...wait a second, https://common-lisp.net/project/usocket/api-docs.shtml tells me that #'socket-server *is* a function
<Shinmera> The docs are outdated
<Shinmera> Unfortunate, but true.
<jmercouris> are there updated docs anywhere?
<jmercouris> or maybe you can just tell me what the new name of the function is?
<Shinmera> Here's my set of classes for low-level connection handling in Maiden: https://github.com/Shirakumo/maiden/blob/master/modules/networking/clients.lisp#L262-L309
<Shinmera> maybe that'll help
<Shinmera> Highlighted is the server portion. The client portions are above.
* Shinmera has to scurry off to stream video games
<aeth> 2018: when everyone streams video games
<jmercouris> ok sounds good
<jmercouris> thanks for the link
<jmercouris> 2018: when nobody makes money streaming video games anymore
<aeth> jmercouris: That's what Patreon is for
fikka has joined #lisp
<aeth> A Lisper could in theory make money that way
<aeth> I wonder if there are any technical videos there, though. There are some math/science ones
<jmercouris> I don't know, maybe like 200$ or a 1000$/month at most
<jmercouris> if you look at the most popular elisp package developers who have way more users, they still make very little
smurfrobot has quit [Ping timeout: 240 seconds]
xristos has quit [Quit: ZNC - http://znc.in]
<aeth> jmercouris: Videos and podcasts seem to be the most profitable parts of Patreon, though.
EvW has joined #lisp
<aeth> A Lisp video or podcast series might be more profitable than actually directly funding Lisp software
<jmercouris> probably for most lisp software yeah
<aeth> I think it works because of regular releases of new content, and the potential for trivial premium features (just release your content a week earlier to subscribers)
<jmercouris> or special tutorials for them
pagnol has joined #lisp
fikka has quit [Ping timeout: 248 seconds]
kajo has joined #lisp
smurfrobot has joined #lisp
Kundry_Wag has joined #lisp
pagnol has quit [Ping timeout: 240 seconds]
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
smurfrobot has quit [Ping timeout: 248 seconds]
nullniverse has quit [Read error: Connection reset by peer]
nalik891 has joined #lisp
kajo has quit [Quit: WeeChat 2.0.1]
fikka has joined #lisp
kajo has joined #lisp
zooey has quit [Remote host closed the connection]
zooey has joined #lisp
Kundry_Wag has quit [Remote host closed the connection]
smurfrobot has joined #lisp
Kundry_Wag has joined #lisp
Kundry_Wag has quit [Remote host closed the connection]
chiyosaki has quit [Ping timeout: 248 seconds]
nowhere_man has joined #lisp
Kundry_Wag has joined #lisp
smurfrobot has quit [Ping timeout: 276 seconds]
Denommus has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
nowhereman_ has quit [Ping timeout: 260 seconds]
smurfrobot has joined #lisp
smaster has quit [Ping timeout: 255 seconds]
LocaMocha has quit [Remote host closed the connection]
BitPuffin has quit [Remote host closed the connection]
smaster has joined #lisp
smurfrobot has quit [Ping timeout: 256 seconds]
Denommus has joined #lisp
saki has joined #lisp
fikka has quit [Ping timeout: 248 seconds]
fikka has joined #lisp
juan-reynoso has joined #lisp
orivej has joined #lisp
<allm7ght> in general is there a reason to choose cffi or uffi over the other?
<phoe> allm7ght: cffi is much more widely used.
wmannis has joined #lisp
<allm7ght> phoe: thanks!
allm7ght_ has joined #lisp
allm7ght has quit [Ping timeout: 260 seconds]
smaster has quit [Read error: Connection reset by peer]
smurfrobot has joined #lisp
smaster has joined #lisp
allm7ght_ has quit [Ping timeout: 260 seconds]
Xof has quit [Ping timeout: 276 seconds]
smurfrobot has quit [Ping timeout: 256 seconds]
damke_ has joined #lisp
python476 has quit [Ping timeout: 256 seconds]
Karl_Dscc has joined #lisp
damke has quit [Ping timeout: 264 seconds]
Kundry_Wag has quit [Remote host closed the connection]
Denommus has quit [Remote host closed the connection]
<stacksmith> I thought uffi was obsoleted by cffi. Is it used in any modern code?
Sveaker has joined #lisp
<phoe> I think not.
smurfrobot has joined #lisp
Denommus has joined #lisp
<jackdaniel> uffi, as a protocol, is widely used - some software has migrated to use cffi-uffi-compat and ECL's ffi implements this protocol as well
smurfrobot has quit [Ping timeout: 256 seconds]
<jackdaniel> but for all practical purposes you should depend on cffi (because 1) it has compat layer for uffi, 2) is a portability layer which uses ecl's uffi implementation)
nopolitica has joined #lisp
shifty has joined #lisp
smaster has quit [Ping timeout: 260 seconds]
smurfrobot has joined #lisp
jibanes has quit [Ping timeout: 240 seconds]
jibanes has joined #lisp
smurfrobot has quit [Ping timeout: 276 seconds]
jmercouris has quit [Remote host closed the connection]
jmercouris has joined #lisp
Kundry_Wag has joined #lisp
smurfrobot has joined #lisp
Kundry_Wag has quit [Read error: No route to host]
Kundry_Wag has joined #lisp
<fourier> it is used in ncursers wrapper which is quite mature
<fourier> cl-ncurses
Kundry_Wag has quit [Read error: Connection reset by peer]
Kundry_Wag has joined #lisp
zooey has quit [Ping timeout: 255 seconds]
zooey has joined #lisp
smurfrobot has quit [Ping timeout: 255 seconds]
<fourier> not sure if cl-charms is of the same level of maturity now.
smaster has joined #lisp
Kundry_Wag has quit [Ping timeout: 260 seconds]
smurfrobot has joined #lisp
mareskeg has joined #lisp
<jmercouris> anyone have a minimal example of how to use usocket?
<phoe> jmercouris: client-side or server-side?
<jmercouris> both ideally
smurfrobot has quit [Ping timeout: 256 seconds]
scymtym has quit [Ping timeout: 240 seconds]
smurfrobot has joined #lisp
<phoe> jmercouris: ^
<phoe> that is a very very simple example
<jmercouris> phoe: thank you very much
<jmercouris> I was trying to parse shinmera's code and I was getting confused
<jmercouris> this is very helpful
<phoe> remember to #'socket-close sockets afterwards
<phoe> or just close their socket-streams.
<jmercouris> ok, I'll keep that in mind
<jmercouris> what if my program dies
<jmercouris> and the socket is still open, what then?
<jmercouris> aka kill -9
smaster has quit [Ping timeout: 240 seconds]
<phoe> jmercouris: your program dies, what do you mean?
<phoe> kill -9 clears all sockets
<phoe> when a process dies, all sockets it has created are destroyed by the OS
Chream_ has quit [Ping timeout: 240 seconds]
smurfrob_ has joined #lisp
fikka has quit [Ping timeout: 256 seconds]
smurfrobot has quit [Ping timeout: 256 seconds]
smurfrob_ has quit [Ping timeout: 240 seconds]
zooey has quit [Remote host closed the connection]
zooey has joined #lisp
Cymew has joined #lisp
warweasle has quit [Quit: later]
Denommus has quit [Quit: restarting emacs]
Cymew has quit [Ping timeout: 240 seconds]
smurfrobot has joined #lisp
smurfrobot has quit [Ping timeout: 240 seconds]
fikka has joined #lisp
<jmercouris> ok, that sounds good to me then, thanks
lnostdal has joined #lisp
smurfrobot has joined #lisp
nirved has quit [Quit: Leaving]
smaster has joined #lisp
fikka has quit [Ping timeout: 256 seconds]
jmercouris has quit [Ping timeout: 256 seconds]
smurfrobot has quit [Ping timeout: 240 seconds]
jmercouris has joined #lisp
mishoo has quit [Ping timeout: 264 seconds]
jmercouris has quit [Ping timeout: 248 seconds]
nalik891 has quit [Quit: Leaving]
Amplituhedron has joined #lisp
karswell has joined #lisp
smurfrobot has joined #lisp
milanj has quit [Quit: This computer has gone to sleep]
wigust has quit [Ping timeout: 248 seconds]
scymtym has joined #lisp
<sigjuice> kill -9 should a last resort. It always makes me feel icky.
<sigjuice> should be
Sveaker has quit [Quit: Leaving]
TMA has quit [Ping timeout: 240 seconds]
smurfrobot has quit [Ping timeout: 268 seconds]
fikka has joined #lisp
willmichael has joined #lisp
<aeth> Is it better to do (check-type x integer) (unless (evenp x) (error "Some error!")) or (check-type x (and integer (satisfies evenp))) when verifying something?
<|3b|> all in check-type would let a caller fix it
DonVlad has quit [Quit: WeeChat 1.4]
<Xach> aeth: It might be better to make a named type that describes what you want, too.
<phoe> as in deftype even-integer? hm, yep
<aeth> |3b|: but satisfies could be considerably more complicated than this, e.g. (find foo some-list-of-keywords)
* |3b| isn't sure how many people actually take advantage of that though, i usually just fix code/data and try whole thing again
<Xach> I'm guessing evenp isn't the real thing, but maybe that's a bad guess
<|3b|> aeth: so?
<phoe> clhs evenp
<phoe> Xach: actually
<|3b|> it presumably won't be more complicated when called from TYPEP than when called manually
<Xach> phoe: actually what?
<phoe> it is a real thing
hiroaki has joined #lisp
<Xach> phoe: But is it the real thing aeth means, or just a simplified example?
<phoe> aeth: yes, satisfies can be much more complicated, but in this case it should do well enough with CHECK-TYPE
<aeth> |3b|: Well, if it's (and keyword (satisfies foo)) then foo might not know that the argument to foo is a keyword, which could lead to a less efficient find
<phoe> Xach: oh, I see.
pierpa has joined #lisp
<|3b|> though for that specific case, (member x (a b c)) is a valid type
<Shinmera> aeth: Is it important that it is not a float?
<Shinmera> Because only integers in the mathematical sense are even anyway.
<|3b|> aeth: if that's important, and you care about callers being able to fix the problem, split it in 2 check-types?
<phoe> Shinmera: he does a (check-type x integer) initially.
<|3b|> (and if it actually is a problem in practice)
<Shinmera> phoe: I can read, thanks
<phoe> |3b|: you don't want to split it into two check-types
<|3b|> phoe: i do if combining it is a problem
<phoe> in the second check-type, you can supply a value that does *not* pass the first check-type
<|3b|> true, maybe i don't :)
smurfrobot has joined #lisp
mareskeg has quit [Quit: mareskeg]
<phoe> (defun foo (x) (check-type x integer) (check-type x float))
<aeth> Shinmera: I wanted a simple example
<|3b|> though you could duplicate the type in the 2nd, if type inference did in fact affect performance of the 2nd test
<phoe> you are able to restart your way out of this function and make it actually return
<aeth> phoe: you probably want x at the end so it returns something useful(ish)
<Shinmera> aeth: Okey. In that case I would not use check type at all, and instead have both tests in an (unless (and ..) ..)
<phoe> aeth: yes
<Shinmera> Mostly because I consider satisfies bad, but that's just me.
<aeth> Shinmera: Expressing it as types could have the advantage of automatically generating the checks, though.
<aeth> Well, in an easier way
<Shinmera> Not if you need satisfies.
<aeth> But that can be solved by deftype
* |3b| probably would also not bother using check-type for something that uses satisfies, but sometimes the restart to continue with other value is useful
<Shinmera> assert may also be appropriate depending on how you view that.
<aeth> What I'm doing is verifying absolutely everything before I start the program so that I (ideally) do not get any runtime errors.
<Xach> hee
<aeth> I was tired of getting cryptic unexpected NILs in places
smurfrobot has quit [Ping timeout: 256 seconds]
__rumbler31 has quit [Ping timeout: 248 seconds]
<phoe> Error: The value NIL is not a (NOT NULL)
<phoe> Why complain about that error message? It's true, after all. Much better than a self-contradicting message.
<Bike> check-type has that nice type string thing so it could be more comprehensible
ludston_ has joined #lisp
<aeth> phoe: The issue is that I didn't know where that happened. If I check my data before I use my data, I know where it happens... before my program starts doing anything. This is especially important when it's using foreign libraries in another thread than the main SLIME thread.
<aeth> Things are a lot simpler before that point.
rumbler31 has quit [Remote host closed the connection]
smurfrobot has joined #lisp
<_death> could use ASSERT and specify X in the list of places
<aeth> My current design goals are: (1) do everything at compile time if possible (including as much verification as possible) and (2) do the rest of the verification with check-type before the program begins to actually do useful computations
<aeth> The cost of #2, at least right now, is not noticable. Although if satisfies is really slow and I pass in a lot of data, it might be.
milanj has joined #lisp
<aeth> I think any big data would be in specialized arrays, though, so it probably wouldn't be much of a cost.
ludston has quit [Ping timeout: 264 seconds]
<aeth> This then introduces two issues I can see right away. When destructuring-bind fails while iterating, the error message really isn't helpful at all and is (afaik) non-portable. Also, it's not clear what to do when the constraints are more than just a simple type check, such as a keyword that must be in a valid list of keywords.
<Xach> aeth: the keyword thing could be a MEMBER type, right?
smurfrobot has quit [Ping timeout: 268 seconds]
<aeth> Yes, although I'm not sure about the performance implications. Usually there would be a handful, but it could be dozens, like when I check to make sure that the type is a valid GLSL type.
papachan has quit [Quit: WeeChat 2.0.1]
<aeth> (I'd rather get the error when generating the GLSL than when compiling the GLSL.)
quazimodo has quit [Quit: Lost terminal]
quazimodo has joined #lisp
smurfrobot has joined #lisp
pmden has quit [Ping timeout: 256 seconds]
<phoe> aeth: when do you generate and compile GLSL?
<phoe> I mean, at what times?
pmden has joined #lisp
pmden has quit [Changing host]
pmden has joined #lisp
<aeth> phoe: At the moment I turn s-expressions into strings of GLSL source code entirely at compile time in define-shader (which are, in turn, used in the source argument to make-shader, which is just make-instance 'shader)
quazimod1 has joined #lisp
<aeth> I don't do many checks at that point, though. There's definitely plenty of opportunities.
<phoe> aeth: I don't get the difference between "generation-time" and "compile-time", then.
<aeth> I think at the moment I only check for valid GLSL types when verifying the shader metadata (which has to be at runtime because the object is created at runtime even though the source string is generated at compile time)
<phoe> > (I'd rather get the error when generating the GLSL than when compiling the GLSL.)
quazimod2 has joined #lisp
<aeth> although I guess if I made shader type keywords a member type, it would be trivial to use the same check at compile time, too
<aeth> phoe: I'd rather get error messages when generating the GLSL string (at CL compile time) than when compiling the GLSL (which happens shortly after initializing OpenGL at runtime)
<aeth> i.e. I personally check for many things that the GLSL compiler will be checking for because I'd rather deal with things in CL where possible
<phoe> aeth: ooh, I see.
<aeth> It will also probably make it easier to move to SPIR-V this way.
quazimod1 has quit [Quit: Lost terminal]
<k-hos> gl 4.something supports spir-v I believe
<aeth> 4.6
smurfrobot has quit [Ping timeout: 256 seconds]
<aeth> Ideally, some future version of define-shader (the API is nowhere near stable for the shader language atm) will be able to target both GLSL and SPIR-V. And have identical semantics.
<k-hos> glsl already compiles to spir-v
<aeth> Yes, but if I target them both, I can eventually deprecate the GLSL backend and introduce things that GLSL cannot do but SPIR-V can (if things in that category even exist)
<aeth> But at the moment I only target GLSL because I am using OpenGL 3.3, not 4.6
varjag has quit [Quit: ERC (IRC client for Emacs 25.2.1)]
vap1 has quit [Read error: Connection reset by peer]
smurfrobot has joined #lisp
vaporatorius has joined #lisp
vap1 has joined #lisp
fikka has quit [Ping timeout: 256 seconds]
Achylles has joined #lisp
Xal has quit [Ping timeout: 260 seconds]
vaporatorius has quit [Client Quit]
fikka has joined #lisp
Xal has joined #lisp
saki has quit [Read error: Connection reset by peer]
mlf has joined #lisp
smurfrobot has quit [Ping timeout: 256 seconds]
antoszka has quit [Ping timeout: 265 seconds]
mrSpec has quit [Ping timeout: 264 seconds]
otwieracz has quit [Ping timeout: 276 seconds]
Karl_Dscc has quit [Remote host closed the connection]
fourier has quit [Ping timeout: 248 seconds]
juan-reynoso has quit [Quit: Leaving]
quazimod1 has joined #lisp
mrSpec has joined #lisp
mrSpec is now known as Guest61136
saki has joined #lisp
smurfrobot has joined #lisp
antoszka has joined #lisp
otwieracz has joined #lisp
mareskeg has joined #lisp
wheelsucker has quit [Quit: Client Quit]
hiroaki has quit [Ping timeout: 256 seconds]
quazimod1 has quit [Quit: leaving]
smurfrobot has quit [Ping timeout: 256 seconds]
shifty has quit [Ping timeout: 256 seconds]
Bike has quit [Ping timeout: 260 seconds]
<k-hos> spir-v can do more than glsl yes
<k-hos> multiple entry points being one
<aeth> ah
smurfrobot has joined #lisp
quazimod1 has joined #lisp
vlatkoB has quit [Remote host closed the connection]
quazimod3 has joined #lisp
quazimod1 has quit [Client Quit]
quazimod3 has quit [Client Quit]
smurfrobot has quit [Ping timeout: 256 seconds]
quazimod2 has quit [Remote host closed the connection]
quazimodo has quit [Remote host closed the connection]
Amplituhedron has quit [Ping timeout: 256 seconds]
quazimodo has joined #lisp
quazimod1 has joined #lisp
quazimodo has quit [Client Quit]
quazimod1 has quit [Client Quit]
smurfrobot has joined #lisp
quazimodo has joined #lisp
<stacksmith> aeth: what kind of project are you working on?
smurfrobot has quit [Ping timeout: 240 seconds]
sjl has quit [Ping timeout: 276 seconds]
csaurus has quit [Ping timeout: 256 seconds]
fikka has quit [Ping timeout: 240 seconds]
Patternmaster has quit [Ping timeout: 260 seconds]
<aeth> stacksmith: A game engine.
<stacksmith> Great.
rumbler31 has joined #lisp
z3t0 has joined #lisp
jmercouris has joined #lisp
rumbler31 has quit [Ping timeout: 252 seconds]
fikka has joined #lisp
TMA has joined #lisp
moei has quit [Quit: Leaving...]
rumbler31 has joined #lisp
rumbler31 has quit [Remote host closed the connection]
rumbler31 has joined #lisp
smurfrobot has joined #lisp
sjl has joined #lisp
Bike has joined #lisp
TMA has quit [Ping timeout: 256 seconds]
smurfrobot has quit [Ping timeout: 256 seconds]
jmercouris has quit [Ping timeout: 256 seconds]
mareskeg has quit [Ping timeout: 256 seconds]
TMA has joined #lisp
tankrim has joined #lisp
smurfrobot has joined #lisp
tankrim has left #lisp [#lisp]
tankrim has joined #lisp
smurfrobot has quit [Remote host closed the connection]
saki has quit [Ping timeout: 256 seconds]
saki has joined #lisp
quazimodo has quit [Ping timeout: 268 seconds]
python476 has joined #lisp
fikka has quit [Ping timeout: 240 seconds]
fikka has joined #lisp
nowhere_man has quit [Remote host closed the connection]
nowhere_man has joined #lisp
quazimodo has joined #lisp
LiamH has quit [Quit: Leaving.]