2017-08-01T00:00:10Z axion: Achylles: If you have trouble with that book, just ask questions here, or you can read "Practical Common Lisp", which many choose as their first book, and is a good choice. 2017-08-01T00:00:20Z axion: minion: tell Achylles about pcl 2017-08-01T00:00:21Z minion: Achylles: have a look at pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005). 2017-08-01T00:00:29Z Bike: Achylles: if one of the forms in AND evaluates to false, AND will return false 2017-08-01T00:01:08Z sjl: there's also the Gentle Intro book as another option for First Lisp Book 2017-08-01T00:02:57Z pierpa quit (Quit: Page closed) 2017-08-01T00:03:39Z aeth: Achylles: you probably want a NIL after (+ 1 2) even though it's implicit, just to be clear that you expect to return a NIL if the test-form is false. 2017-08-01T00:04:23Z Bike: what? 2017-08-01T00:04:38Z aeth: wait, there's no if there, nevermind 2017-08-01T00:04:47Z aeth: I... misread that 2017-08-01T00:05:54Z Achylles: I have a book here called -> Common Lisp: A Gentle Introduction to Symbolic Computation 2017-08-01T00:06:10Z Achylles: sjl, do you mean this one? 2017-08-01T00:06:20Z sjl: yeah, that's the one 2017-08-01T00:06:24Z axion: Achylles: yes, another good one. 2017-08-01T00:06:26Z aeth: I don't know why I read an if that wasn't there. 2017-08-01T00:06:39Z sjl: that's my personal favorite introductory lisp book 2017-08-01T00:06:41Z Achylles: minion, I have common lisp by Peter Seibel as well... 2017-08-01T00:06:42Z minion: i'm written in common lisp 2017-08-01T00:06:44Z axion: Achylles: I would highly recommend getting rid of CLISP though, and getting Emacs set up properly 2017-08-01T00:08:49Z Achylles: axion, what do you mean by getting rid of Clisp? 2017-08-01T00:09:05Z Achylles: What should I learn then? 2017-08-01T00:09:10Z tetero: SBCL 2017-08-01T00:09:28Z axion: clisp is a poor, slow implementation of common lisp 2017-08-01T00:09:33Z axion: (imo) 2017-08-01T00:09:45Z aeth: People generally use SBCL, CCL, and ECL in that order, unless they have niche needs, such as needing it on the JVM (ABCL). 2017-08-01T00:09:48Z axion: SBCL or CCL depending on your platform, coupled with SLIME/Emacs 2017-08-01T00:10:01Z Achylles: clisp is only the prompt in terminal here 2017-08-01T00:10:01Z aeth: i.e. if SBCL doesn't work for you, then CCL, and if that doesn't work, then ECL 2017-08-01T00:10:10Z Achylles: I can call sbcl too 2017-08-01T00:10:13Z aeth: you can use rlwrap with SBCL 2017-08-01T00:10:13Z axion: You don't want to be using a prompt in a terminal 2017-08-01T00:10:27Z axion: You want to be using an interactive environment 2017-08-01T00:10:33Z axion: That is what SLIME is for 2017-08-01T00:10:55Z tetero: You'll want to set up quicklisp too. 2017-08-01T00:11:00Z Achylles: do you mean slime inside emacs? 2017-08-01T00:11:01Z axion: Learning the language otherwise, or any CL code for that matter, would be a nightmare 2017-08-01T00:11:07Z vtomole: Achylles: do "sudo apt-get install slime" 2017-08-01T00:11:48Z terpri quit (Remote host closed the connection) 2017-08-01T00:11:54Z aeth: Your distro's slime will be very out of date, if it includes it, afaik. I think I get my SLIME direcly from quicklisp. 2017-08-01T00:12:13Z vtomole: Achylles: Then you can start slime in emacs with "M-x :slime" 2017-08-01T00:12:17Z aindilis quit (Ping timeout: 268 seconds) 2017-08-01T00:12:26Z axion: Alternatively, there is Sly, a more modern fork of SLIME with more features. 2017-08-01T00:12:47Z aindilis` joined #lisp 2017-08-01T00:12:48Z vtomole: aeth: it is out of date, but for a beginner it shouldn't be a problem. 2017-08-01T00:13:25Z aeth: Out of date could mean missing major bugfixes, though. I doubt distros care to keep up on their CL packages. 2017-08-01T00:13:28Z tetero: Might aswell grab it from quicklisp, it's not like it's more difficult 2017-08-01T00:13:43Z ebzzry joined #lisp 2017-08-01T00:15:03Z Achylles: I have slime now and apt says recommended package cl-swank 2017-08-01T00:15:12Z Achylles: should I install this as well? 2017-08-01T00:15:57Z vtomole: yes 2017-08-01T00:17:14Z Achylles: it says suggested package common-lisp-controller... 2017-08-01T00:17:27Z Achylles: then???!!! 2017-08-01T00:17:40Z vtomole: open emacs and start slime 2017-08-01T00:17:59Z aeth: M-x slime 2017-08-01T00:18:55Z z0d quit (Remote host closed the connection) 2017-08-01T00:20:39Z Achylles: I have opened that 2017-08-01T00:20:43Z Achylles: :) 2017-08-01T00:21:13Z Achylles: CL-USER> 2017-08-01T00:21:22Z Achylles: And now? 2017-08-01T00:21:25Z vtomole: Nice 2017-08-01T00:21:30Z vtomole: Now you can hack lisp 2017-08-01T00:21:47Z axion: Now you have the full power of the language available. 2017-08-01T00:21:52Z Achylles: Can I write a code on emacs and send it to the prompt? 2017-08-01T00:22:03Z axion: Yes 2017-08-01T00:22:05Z vtomole: You can load a lisp file 2017-08-01T00:22:10Z vtomole: (load "hello.lisp") 2017-08-01T00:23:24Z axion: M-. and M-, are your friends in a lisp buffer. 2017-08-01T00:24:05Z Achylles: where should i write (load... ) 2017-08-01T00:24:11Z axion: You shouldn't, heh 2017-08-01T00:24:17Z axion: THat is an old way of loading code 2017-08-01T00:24:25Z Achylles: in the prompt? 2017-08-01T00:24:30Z vtomole: The cl repl is not weak like python or any other languages. You can write full programs on it 2017-08-01T00:24:51Z axion: Your next step is to get quicklisp installed 2017-08-01T00:24:59Z axion: https://www.quicklisp.org/beta/ 2017-08-01T00:26:12Z aeth: Achylles: You should generally load things with C-c C-k (compile the entire file) and C-c C-c (compile the current function) 2017-08-01T00:27:10Z axion: or ql:quickload (compile and load the whole system) 2017-08-01T00:27:11Z Achylles: I was doing it before in emacs inside a orgmode src code 2017-08-01T00:27:16Z aeth: If you have a large project, you can put a link to its directory in ~/quicklisp/local-projects and quickload it as if it is in quicklisp (once you get quicklisp setup)... and later modifications of course are loaded like above. 2017-08-01T00:27:29Z Achylles: But did not have slime installed... 2017-08-01T00:28:16Z BitPuffin quit (Remote host closed the connection) 2017-08-01T00:28:34Z aeth: You can also write functions directly in slime, using C-j (instead of RET) for newlines (you probably want to use newlines for readability even if it's a simple, several-line function) 2017-08-01T00:29:16Z axion: If he doesn't have paredit or smartparens strict mode, he doesn't need C-j 2017-08-01T00:29:39Z aeth: You probably want paredit in both .lisp and in *slime-repl foo* 2017-08-01T00:29:42Z aeth: or some equivalent 2017-08-01T00:31:32Z aeth: Lisp shines when you think in terms of structure, not lines. 2017-08-01T00:32:08Z jamtho quit (Ping timeout: 260 seconds) 2017-08-01T00:36:15Z aindilis` quit (Read error: Connection reset by peer) 2017-08-01T00:36:23Z Achylles: I have installed quicklisp 2017-08-01T00:37:11Z Achylles: And I got -> #P"/home/vagner/.sbclrc" as a prompt in my home dir... 2017-08-01T00:37:29Z Achylles: So what... 2017-08-01T00:37:44Z Achylles: What is the advantage of quicklisp? 2017-08-01T00:37:52Z axion: To install asdf systems 2017-08-01T00:37:56Z Achylles: And how to use it inside emacs... 2017-08-01T00:38:04Z axion: You can test it out in the SLIME REPL by installing a system: (ql:quickload :alexandria) 2017-08-01T00:38:52Z Achylles: ok. Just did it... 2017-08-01T00:38:59Z aeth: Achylles: quicklisp is the CL package manager, like pip or npm or rubygems or cpan 2017-08-01T00:39:17Z Achylles: all right 2017-08-01T00:39:35Z axion: Please don't think of it as a package manager 2017-08-01T00:39:51Z Achylles: So, when I want to use slime, I call slime and then quicklisp? 2017-08-01T00:40:21Z axion: You would do M-x slime, and then quickload one of your projects you are working on 2017-08-01T00:40:31Z axion: This means you now need to learn how to create asd files 2017-08-01T00:40:36Z axion: and where to store them 2017-08-01T00:40:42Z Achylles: ok 2017-08-01T00:40:53Z Achylles: which book teaches it? 2017-08-01T00:41:07Z axion: None, really. systems are not part of the ansi standard. 2017-08-01T00:41:12Z axion: You can ask here for help. 2017-08-01T00:41:25Z aeth: Wikipedia calls them "software repositories". https://en.wikipedia.org/wiki/Software_repository#Selected_repositories 2017-08-01T00:41:33Z Bike: it's pretty easy almost all of the time. you do (ql:quickload :thing), now you have thing. 2017-08-01T00:41:56Z axion: Systems and packages are very different things in Common Lisp than most other languages. Please ignore the 'package manager' statement above 2017-08-01T00:41:58Z Achylles: You will be fed up with a beginner 2017-08-01T00:43:17Z aeth: axion: You're correct, and the article (it should be [[software repository]] and not [[package manager]]) is incorrect. https://en.wikipedia.org/wiki/Quicklisp 2017-08-01T00:43:46Z Xach: Wow, wikipedia fame!! 2017-08-01T00:43:51Z aeth: If anyone has an active Wikipedia account, correcting it would be good 2017-08-01T00:44:07Z axion: Wikipedia is not a great source of any information 2017-08-01T00:44:13Z Achylles: In that case, what is alexandria? 2017-08-01T00:44:27Z Achylles: :thing -> alexandria 2017-08-01T00:44:39Z Achylles: a library? 2017-08-01T00:44:48Z aeth: axion: Wikipedia is a merely OK source of information... when the articles are popular enough to have enough attention. 2017-08-01T00:44:52Z axion: alexandria is just a general purpose utility library 2017-08-01T00:45:25Z aeth: axion: When discussions like this happen on IRC and forums, someone eventually fixes the mistakes, though 2017-08-01T00:45:34Z aeth: At least, ime. 2017-08-01T00:45:41Z BitPuffin|osx quit (Remote host closed the connection) 2017-08-01T00:45:48Z Achylles: Do I have to install quicklisp every time I want to use it or just this time? 2017-08-01T00:46:09Z Xach: You install it once and load it thereafter 2017-08-01T00:46:13Z axion: Achylles: That depends on the contents of your implementation rc 2017-08-01T00:46:15Z Xach: you can load it automatically with a simple command 2017-08-01T00:46:20Z axion: check ~/.sbclrc or the like 2017-08-01T00:47:25Z Xach: (ql:add-to-init-file) when it's loaded will set things up 2017-08-01T00:48:01Z axion: You should have been given the opportunity to add quicklisp's initialization to your implementation's startup config file, so that everytime you start your implementation, or implicitly with SLIME, Quicklisp will also be initialized and ready to be used. 2017-08-01T00:48:11Z Achylles: Can I issue these commands inside emacs slime? 2017-08-01T00:48:22Z Xach: yes 2017-08-01T00:48:26Z Achylles: Or just in the terminal prompt? 2017-08-01T00:48:56Z AxelAlex joined #lisp 2017-08-01T00:49:46Z Achylles: After installing all these resources, which book is the best to keep studying? 2017-08-01T00:50:07Z axion: PCL 2017-08-01T00:53:42Z Achylles: Is this one a valid one as well? -> Common Lisp: A Gentle Introduction to Symbolic Computation 2017-08-01T00:54:25Z axion: I don't know enough about it. PCL is my favorite book 2017-08-01T00:54:41Z aindilis joined #lisp 2017-08-01T00:54:41Z axion: It's also free 2017-08-01T00:54:56Z Achylles: I know. I have it here... 2017-08-01T00:55:31Z carleos joined #lisp 2017-08-01T00:56:10Z https_GK1wmSU joined #lisp 2017-08-01T00:56:16Z Achylles: I am reading this one -> Ansi common Lisp -> because it is very good in explaining the concepts and such... 2017-08-01T00:56:34Z https_GK1wmSU quit (Excess Flood) 2017-08-01T00:56:50Z WhiskyRyan joined #lisp 2017-08-01T00:56:55Z Achylles: But, above I was advised not to use it... 2017-08-01T00:57:07Z Achylles: I do not know why... 2017-08-01T00:57:12Z axion: PCL is a very good introduction, and offers practical chapters that get you developing rather quickly 2017-08-01T00:58:25Z WhiskyRyan quit (Client Quit) 2017-08-01T01:01:27Z glamas joined #lisp 2017-08-01T01:02:27Z heurist quit (Read error: Connection reset by peer) 2017-08-01T01:04:05Z pmc quit (Quit: Leaving) 2017-08-01T01:04:19Z WhiskyRyan joined #lisp 2017-08-01T01:06:56Z Achylles: thx a lot guys for all the wonderful help I got here... 2017-08-01T01:10:33Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T01:13:16Z WhiskyRyan joined #lisp 2017-08-01T01:22:04Z trocado quit (Ping timeout: 260 seconds) 2017-08-01T01:27:00Z glamas quit (Remote host closed the connection) 2017-08-01T01:27:57Z quazimodo joined #lisp 2017-08-01T01:29:01Z glamas joined #lisp 2017-08-01T01:31:17Z ebzzry quit (Ping timeout: 260 seconds) 2017-08-01T01:31:46Z raynold quit (Quit: Connection closed for inactivity) 2017-08-01T01:33:08Z ebzzry joined #lisp 2017-08-01T01:33:22Z pierpa joined #lisp 2017-08-01T01:40:35Z thinkpad quit (Ping timeout: 240 seconds) 2017-08-01T01:41:22Z https_GK1wmSU joined #lisp 2017-08-01T01:41:56Z https_GK1wmSU left #lisp 2017-08-01T01:42:19Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T01:43:46Z glamas quit (Remote host closed the connection) 2017-08-01T01:44:04Z rumbler31 joined #lisp 2017-08-01T01:45:16Z WhiskyRyan joined #lisp 2017-08-01T01:45:21Z glamas joined #lisp 2017-08-01T01:47:04Z test1600 joined #lisp 2017-08-01T01:47:46Z glamas left #lisp 2017-08-01T01:53:52Z AxelAlex quit (Quit: AxelAlex) 2017-08-01T01:56:56Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T01:59:56Z WhiskyRyan joined #lisp 2017-08-01T02:00:04Z neoncontrails joined #lisp 2017-08-01T02:00:19Z jack_rabbit joined #lisp 2017-08-01T02:01:13Z WhiskyRyan quit (Client Quit) 2017-08-01T02:02:33Z WhiskyRyan joined #lisp 2017-08-01T02:06:28Z WhiskyRyan quit (Client Quit) 2017-08-01T02:15:25Z safe quit (Read error: Connection reset by peer) 2017-08-01T02:17:21Z YottaByte joined #lisp 2017-08-01T02:18:21Z Devon joined #lisp 2017-08-01T02:18:32Z shifty joined #lisp 2017-08-01T02:23:34Z LooneyTunes joined #lisp 2017-08-01T02:29:34Z neoncontrails quit (Remote host closed the connection) 2017-08-01T02:31:10Z glamas joined #lisp 2017-08-01T02:34:09Z glamas quit (Quit: Leaving) 2017-08-01T02:34:53Z glamas joined #lisp 2017-08-01T02:35:43Z glamas quit (Client Quit) 2017-08-01T02:37:46Z Devon quit (Ping timeout: 255 seconds) 2017-08-01T02:39:06Z glamas joined #lisp 2017-08-01T02:45:14Z heurist joined #lisp 2017-08-01T02:52:57Z Achylles quit (Ping timeout: 260 seconds) 2017-08-01T02:53:31Z YottaByte: just heard about this: https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule 2017-08-01T02:54:25Z YottaByte: what is an interpreter? something that turns programming languages into bytecode or machine code? 2017-08-01T02:55:05Z YottaByte: and I've heard about the different CL implementations, what are they written in? like SBCL, I browsed some of the source, and it seemed to be all .lisp files? 2017-08-01T02:55:18Z YottaByte: whereas something like python is written in C (the most popular implementation, at least) 2017-08-01T02:55:26Z YottaByte: and C compiles down into machine code? 2017-08-01T02:56:56Z loke: YottaByte: There is no single definition of interpreter that is not in some way controversial 2017-08-01T02:57:48Z loke: But typically it means that there is a loop that iterates over some kind of code (which is not native code. it could be source code, byte code, etc) and executes the instructions one-by-oen. 2017-08-01T02:57:51Z Bike: well, a theoretical definition would be that an interpreter is a program that takes some kind of data as input, and depending on the data can emulate any Turing machine program 2017-08-01T02:57:58Z Bike: which is pretty expansive 2017-08-01T02:58:18Z loke: Bike: True, but an interpreter doesn't have to be turing-complete :-) 2017-08-01T02:58:26Z Bike: complicate things, will you 2017-08-01T02:58:50Z Bike: YottaByte: sbcl is written mostly in lisp, with a runtime in C and assembly 2017-08-01T02:58:53Z loke: Bike: Yes. Intentionally. 2017-08-01T02:59:19Z YottaByte: what lisp is it written in? 2017-08-01T02:59:23Z Bike: common lisp 2017-08-01T02:59:29Z Bike: it is "self hosting" 2017-08-01T02:59:43Z YottaByte: what is a runtime? 2017-08-01T03:00:07Z loke: YottaByte: What Bike said. Also, you can compile SBCL using more than one CL implementation. It's usually compiled with SBCL itself, but you can bootstrap it with, say, ABCL (I have done that) 2017-08-01T03:00:20Z Bike: hard to explain 2017-08-01T03:00:30Z pierpa quit (Quit: Page closed) 2017-08-01T03:00:35Z Bike: it includes things like memory allocation and OS operations 2017-08-01T03:01:46Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-01T03:02:50Z Bike: cpython, as you mentioned, is written mostly in C. i don't think there's much of a compiler 2017-08-01T03:03:06Z Bike: there's bytecode i guess 2017-08-01T03:04:28Z YottaByte: I see 2017-08-01T03:08:16Z Bike: computers are such vague things that it's sometimes impossible to talk about interpretation versus compilation and so on 2017-08-01T03:09:15Z Bike: oh, and it's not language-based. CL has compilers that compile to machine code, and to bytecode, and to other bytecodes. There is such a thing as a C interpreter 2017-08-01T03:09:49Z jameser_ joined #lisp 2017-08-01T03:10:59Z loke: python compiles to bytecode, and there is an interpreter for that byte code. (which, by the way, is absolutely terrible) 2017-08-01T03:11:34Z Bike: and there's pypy, which does something else, and i think jython? probably some other stuff 2017-08-01T03:13:52Z pjb: there's cl-python which compiles to common lisp… 2017-08-01T03:19:58Z aeth: The Python interpreter is one of the slowest interpreters for popular languages (or the slowest, depending on where you draw the line of popularity). I'm not sure if that's enough to qualify as terrible. 2017-08-01T03:20:02Z loke: pjb: ...which then compiles to machine code, so python is... native? 2017-08-01T03:20:15Z ak5 quit (Ping timeout: 240 seconds) 2017-08-01T03:20:34Z rumbler31 quit (Remote host closed the connection) 2017-08-01T03:20:37Z aeth: If you wanted a Python-like experience in CL, it'd probably be better to do what so many people have done and come up with a Python-style language, rather than try to write a Python implementation. I assume cl-python is the latter. 2017-08-01T03:20:42Z aeth: It'd be hard to keep up. 2017-08-01T03:20:48Z loke: aeth: after 20 years of constant improvements, Java is _still_ being accused of being "slow", which Python gets a pass? I don't get that one. 2017-08-01T03:20:58Z aeth: loke: Java is not slow. 2017-08-01T03:21:21Z loke: aeth: I know. It's actually very fast, and has been for a decade+ 2017-08-01T03:21:26Z aeth: Anyone who calls it slow has a lagging insultometer, and might as well call emacs a RAM hog 2017-08-01T03:21:55Z aeth: Eight Megabytes and Constantly Swapping (actually bloated 10x since that joke, though) 2017-08-01T03:21:55Z loke: aeth: I agree with you, but Python, which is slower than Java 1.1 was, is still getting all the praise 2017-08-01T03:22:12Z loke: (and yes, I absolutely abhor Python on multilpe levels) 2017-08-01T03:22:16Z aeth: Python still gets praise? 2017-08-01T03:22:27Z loke: aeth: I don't know. All the cool kids are using it though. 2017-08-01T03:22:47Z aeth: I thought Python 3 killed a lot of Python support among hipster programmers who'd call languages cool and praise languages. 2017-08-01T03:22:59Z aeth: Also node.js taking all that demographic 2017-08-01T03:23:04Z loke: aeth: Hmm... perhaps. 2017-08-01T03:23:04Z aeth: Of course, lots of people still use Python. 2017-08-01T03:23:20Z loke: all the AI stuff is in python 2017-08-01T03:24:12Z aeth: Well, the AI stuff uses GPUs and a lot of scientific stuff uses numpy. 2017-08-01T03:24:28Z aeth: So CL competing with Python on speed in those cases isn't going to work. 2017-08-01T03:24:51Z vtomole: A Cl program could be as fast as C if you want it to 2017-08-01T03:25:02Z bigos joined #lisp 2017-08-01T03:25:47Z aeth: A CL program could be as fast as the compiler lets it be, but it'll probably be slower than python+numpy because afaik no implementation optimizzes for that sort of thing, whereas numpy uses existing C/C++/Fortran code. 2017-08-01T03:25:54Z aeth: *optimizes 2017-08-01T03:25:59Z bigos quit (Client Quit) 2017-08-01T03:26:24Z aeth: So even though CL destroys Python in general purpose computation, it's not always faster. 2017-08-01T03:26:30Z Bike quit (Ping timeout: 240 seconds) 2017-08-01T03:27:01Z nicdev joined #lisp 2017-08-01T03:30:30Z ACE_Recliner quit (Ping timeout: 240 seconds) 2017-08-01T03:31:26Z gilberth joined #lisp 2017-08-01T03:32:11Z terpri joined #lisp 2017-08-01T03:36:12Z YottaByte quit 2017-08-01T03:39:15Z PuercoPop: beach: youu are confusing Let over Lambda with Land of Lisp. It is Let over Lambda the book that assumes that backquote uses cons cells and that is not aimed for beginners. Land of Lisp (from what I skimmed through when I had access to it) is aimed to beginners although it eventually builds a web server 2017-08-01T03:41:27Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-01T03:44:05Z damke joined #lisp 2017-08-01T03:45:09Z segmond quit (Quit: l8r) 2017-08-01T03:45:47Z borei joined #lisp 2017-08-01T03:45:55Z borei: hi all 2017-08-01T03:45:55Z minion: borei, memo from beach: You can't execute a method independently of the generic function it belongs to. What goosnargh suggested implicitly creates a generic function named FOO and passes it to the thread creation. 2017-08-01T03:49:19Z jameser_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T03:54:23Z glamas quit (Remote host closed the connection) 2017-08-01T03:54:32Z jameser joined #lisp 2017-08-01T04:03:07Z damke_ joined #lisp 2017-08-01T04:04:19Z borei: beach: are you here ? 2017-08-01T04:04:59Z angavrilov joined #lisp 2017-08-01T04:05:23Z damke quit (Ping timeout: 268 seconds) 2017-08-01T04:06:52Z pjb quit (Ping timeout: 255 seconds) 2017-08-01T04:08:54Z Orion3k joined #lisp 2017-08-01T04:13:48Z Orion3k quit (Ping timeout: 260 seconds) 2017-08-01T04:14:53Z macdavid313 joined #lisp 2017-08-01T04:15:16Z shka_ joined #lisp 2017-08-01T04:22:10Z ak5 joined #lisp 2017-08-01T04:23:11Z glamas joined #lisp 2017-08-01T04:25:32Z thinkpad joined #lisp 2017-08-01T04:26:19Z glamas quit (Remote host closed the connection) 2017-08-01T04:26:57Z Orion3k joined #lisp 2017-08-01T04:34:36Z pjb joined #lisp 2017-08-01T04:38:32Z treaki__ quit (Ping timeout: 260 seconds) 2017-08-01T04:38:50Z treaki_ joined #lisp 2017-08-01T04:39:16Z pjb quit (Ping timeout: 255 seconds) 2017-08-01T04:40:27Z neoncontrails joined #lisp 2017-08-01T04:41:48Z ACE_Recliner joined #lisp 2017-08-01T04:42:08Z neoncontrails quit (Remote host closed the connection) 2017-08-01T04:44:30Z rumbler31 joined #lisp 2017-08-01T04:44:48Z grublet quit (Ping timeout: 240 seconds) 2017-08-01T04:45:04Z z3t0 quit (Ping timeout: 255 seconds) 2017-08-01T04:47:30Z ak5 quit (Quit: WeeChat 1.9) 2017-08-01T04:50:18Z drcode joined #lisp 2017-08-01T04:50:54Z drcode quit (Remote host closed the connection) 2017-08-01T04:51:22Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-01T04:53:53Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-01T04:54:31Z oleo quit (Quit: irc client terminated!) 2017-08-01T04:55:55Z daemoz quit (Remote host closed the connection) 2017-08-01T04:56:15Z daemoz joined #lisp 2017-08-01T04:56:35Z drcode joined #lisp 2017-08-01T04:57:04Z impulse joined #lisp 2017-08-01T05:04:44Z heurist` joined #lisp 2017-08-01T05:06:21Z stylewarning: Anyone want to make a macro which does local multimethod dispatch? It would satisfy a big wish of mine 2017-08-01T05:07:10Z heurist quit (Ping timeout: 240 seconds) 2017-08-01T05:07:24Z shka_: stylewarning: what is this for? 2017-08-01T05:08:07Z stylewarning: For not having to define global methods which dispatch on AST classes which are used as a subroutine to a function 2017-08-01T05:09:05Z shka_: well, it is not really global, isn't it? 2017-08-01T05:09:24Z stylewarning: DEFGENERIC/METHOD is globally scoped 2017-08-01T05:09:36Z shka_: more like, package scoped 2017-08-01T05:10:38Z stylewarning: packages are global 2017-08-01T05:10:44Z stylewarning: All package internals are global 2017-08-01T05:10:57Z nsrahmad joined #lisp 2017-08-01T05:11:38Z shka_: well, i can't help 2017-08-01T05:11:43Z stylewarning: In any case, its a common pattern in functional programming to pattern match on type constructors 2017-08-01T05:11:45Z shka_: no idea how to hack this 2017-08-01T05:12:01Z stylewarning: You'd need to know the behavior of dispatch and applicable methods well 2017-08-01T05:12:20Z shka_: yeah, usually guys stick to optima 2017-08-01T05:12:24Z https_GK1wmSU joined #lisp 2017-08-01T05:12:24Z https__GK1wmSU joined #lisp 2017-08-01T05:12:35Z shka_: but i guess method would be easier to understand 2017-08-01T05:12:45Z https_GK1wmSU quit (Read error: Connection reset by peer) 2017-08-01T05:12:46Z https__GK1wmSU quit (Read error: Connection reset by peer) 2017-08-01T05:13:14Z stylewarning: Optima does structural matching 2017-08-01T05:13:25Z shka_: yes 2017-08-01T05:14:19Z shka_: anyway, i don't know how to do that, and i don't even consider it useful (how will you unit test your methods if they are local?) 2017-08-01T05:14:35Z shka_: sorry 2017-08-01T05:14:47Z wooden__ quit (Read error: Connection reset by peer) 2017-08-01T05:15:40Z stylewarning: I don't want a local method (I don't want to produce a generic function, and I don't want to be able to add new things to dispatch on at runtime) 2017-08-01T05:16:37Z https___GK1wmSU joined #lisp 2017-08-01T05:16:48Z https__GK1wmSU joined #lisp 2017-08-01T05:16:52Z https___GK1wmSU left #lisp 2017-08-01T05:16:53Z https__GK1wmSU left #lisp 2017-08-01T05:17:26Z Bock joined #lisp 2017-08-01T05:18:45Z wooden_ joined #lisp 2017-08-01T05:23:55Z Amplituhedron joined #lisp 2017-08-01T05:27:04Z glamas joined #lisp 2017-08-01T05:27:52Z beach: PuercoPop: Indeed, I am confusing the two. Thanks. 2017-08-01T05:28:13Z beach: borei: Now I am. 2017-08-01T05:28:16Z beach: Good morning everyone! 2017-08-01T05:31:27Z neoncontrails joined #lisp 2017-08-01T05:31:44Z glamas quit (Ping timeout: 260 seconds) 2017-08-01T05:32:27Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-01T05:36:25Z stylewarning: Is there a straightforward way to check if a foreign function could be found with CFFI? 2017-08-01T05:37:20Z shka_: beach: good day 2017-08-01T05:39:29Z glamas joined #lisp 2017-08-01T05:39:55Z shka_: stylewarning: i don't know, but first call to wrapped function will signal error if function symbol could not be found 2017-08-01T05:40:43Z shka_: so you can just use foreign-funcall 2017-08-01T05:42:26Z https_GK1wmSU joined #lisp 2017-08-01T05:45:51Z https_GK1wmSU quit (Excess Flood) 2017-08-01T05:45:53Z Karl_Dscc joined #lisp 2017-08-01T05:47:35Z nsrahmad quit (Ping timeout: 258 seconds) 2017-08-01T05:48:04Z borei: hi beach, in regards your comment on my question. Based on it - i can't pass method to make-thread. 2017-08-01T05:49:01Z beach: Right. You have to pass a function. 2017-08-01T05:49:17Z beach: But it can be a generic function. 2017-08-01T05:49:25Z borei: aha 2017-08-01T05:49:31Z scymtym joined #lisp 2017-08-01T05:49:47Z beach: Common Lisp does not make a difference between normal functions and generic functions in terms of calling them. 2017-08-01T05:51:15Z borei: hmm, im looking where i failed. i created genreic function explicitely, and i defined method, but wasn't able to create thread. 2017-08-01T05:51:28Z beach: What happened? 2017-08-01T05:51:42Z borei: it was saying that there is no method 2017-08-01T05:51:55Z shka_: show the code 2017-08-01T05:52:07Z beach: Then you must have made some mistake when you defined the method(s) on that generic function. 2017-08-01T05:52:49Z borei: but, i found later, that i was passing arguments not properly, so lisp was confused trying to find proper menthod 2017-08-01T05:53:03Z beach: That would explain it. 2017-08-01T05:54:44Z borei: i used the following form to pass args - :arguments '(*data-viewer*) - that one didn't work, but when i did like 2017-08-01T05:55:11Z borei: :arguments (list *data-viewer) - it was successfull 2017-08-01T05:55:42Z beach: Sure. The first one passes a symbol, not the value of the variable. 2017-08-01T05:57:37Z borei: hmm, i was expecting that the first form will pass list - (*data-viewer*) ? 2017-08-01T05:57:37Z beach: Either way, it has nothing to do with whether the function is an ordinary function or a generic function. 2017-08-01T05:58:04Z beach: borei: The list is quoted, so it is not evaluated. 2017-08-01T05:58:14Z malm quit (Ping timeout: 268 seconds) 2017-08-01T05:59:07Z flamebeard joined #lisp 2017-08-01T05:59:35Z malm joined #lisp 2017-08-01T06:00:19Z borei: yep 2017-08-01T06:00:24Z beach: Just type the two forms to the REPL and you'll see the difference. 2017-08-01T06:00:40Z wooden_ quit (Read error: Connection reset by peer) 2017-08-01T06:01:43Z Lowl3v3l joined #lisp 2017-08-01T06:01:53Z borei: yeah, i see it now. 2017-08-01T06:02:46Z knobo joined #lisp 2017-08-01T06:02:48Z borei: thanks again ! 2017-08-01T06:03:50Z beach: Anytime! 2017-08-01T06:03:59Z borei: taking off for today, was long day. 2017-08-01T06:04:08Z beach: Take care. 2017-08-01T06:04:15Z glamas quit (Remote host closed the connection) 2017-08-01T06:04:55Z wooden_ joined #lisp 2017-08-01T06:05:15Z glamas joined #lisp 2017-08-01T06:05:50Z vtomole quit (Ping timeout: 260 seconds) 2017-08-01T06:11:49Z avalokite joined #lisp 2017-08-01T06:14:15Z Murii joined #lisp 2017-08-01T06:15:36Z shka_ quit (Ping timeout: 260 seconds) 2017-08-01T06:16:10Z happy_gnu quit (Ping timeout: 246 seconds) 2017-08-01T06:17:52Z Karl_Dscc quit (Remote host closed the connection) 2017-08-01T06:20:20Z happy_gnu joined #lisp 2017-08-01T06:21:48Z stylewarning: shka: eugh 2017-08-01T06:21:59Z stylewarning: not a good way to detect. I'll have to look at what CFFI does to signal that error. 2017-08-01T06:28:36Z https_GK1wmSU joined #lisp 2017-08-01T06:30:13Z https_GK1wmSU quit (Excess Flood) 2017-08-01T06:33:26Z vlatkoB joined #lisp 2017-08-01T06:33:42Z macdavid313 quit (Remote host closed the connection) 2017-08-01T06:33:51Z quazimodo joined #lisp 2017-08-01T06:35:36Z mishoo joined #lisp 2017-08-01T06:35:36Z https_GK1wmSU joined #lisp 2017-08-01T06:36:14Z https_GK1wmSU quit (K-Lined) 2017-08-01T06:39:10Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T06:40:19Z jameser joined #lisp 2017-08-01T06:40:21Z jameser quit (Client Quit) 2017-08-01T06:40:50Z neoncontrails quit (Remote host closed the connection) 2017-08-01T06:42:35Z Shinmera: stylewarning: I did some digging. On SBCL you can use (sb-alien::find-dynamic-foreign-symbol-address "abs"). If it returns NIL, it can't be found (at the moment). 2017-08-01T06:42:40Z jameser joined #lisp 2017-08-01T06:43:50Z knobo quit (Ping timeout: 240 seconds) 2017-08-01T06:47:29Z rumbler31 joined #lisp 2017-08-01T06:51:45Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-01T07:02:12Z damke joined #lisp 2017-08-01T07:04:50Z damke_ quit (Ping timeout: 268 seconds) 2017-08-01T07:05:28Z macdavid313 joined #lisp 2017-08-01T07:07:37Z sellout- quit (Ping timeout: 246 seconds) 2017-08-01T07:08:19Z LooneyTunes quit (Ping timeout: 276 seconds) 2017-08-01T07:09:00Z shka: Shinmera: neat 2017-08-01T07:09:46Z Shinmera: Note though that the function is not exported, so... be wary. 2017-08-01T07:10:14Z Shinmera: There's other functions along the path that are exported, but they all cache the result and only give you the information in the form of a style warning the first time you try to address the function. 2017-08-01T07:11:41Z sellout- joined #lisp 2017-08-01T07:23:15Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T07:27:29Z jameser joined #lisp 2017-08-01T07:33:14Z knobo joined #lisp 2017-08-01T07:39:13Z ryanbw quit (Ping timeout: 248 seconds) 2017-08-01T07:39:57Z glamas quit (Ping timeout: 260 seconds) 2017-08-01T07:40:29Z edgar-rft quit (Quit: edgar-rft) 2017-08-01T07:40:39Z glamas joined #lisp 2017-08-01T07:43:21Z solyd joined #lisp 2017-08-01T07:43:27Z argoneus quit (Quit: No Ping reply in 180 seconds.) 2017-08-01T07:44:35Z argoneus joined #lisp 2017-08-01T07:45:24Z glamas_ joined #lisp 2017-08-01T07:48:56Z glamas quit (Ping timeout: 260 seconds) 2017-08-01T07:53:56Z sellout- quit (Ping timeout: 246 seconds) 2017-08-01T07:54:02Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T07:57:26Z sellout- joined #lisp 2017-08-01T08:02:42Z jameser joined #lisp 2017-08-01T08:02:59Z ebzzry quit (Ping timeout: 255 seconds) 2017-08-01T08:15:02Z phoe_: I will be making a tiny utility that will shadow CL:MAKE-CONDITION and allow one to define constructor functions for conditions. 2017-08-01T08:15:41Z shka: wow, so there is make-condition 2017-08-01T08:15:51Z shka: never seen it in code 2017-08-01T08:15:58Z jackdaniel: do you need it for something inevitably, or rather it's just something you consider as a cool thing to do? 2017-08-01T08:16:06Z solyd quit (Changing host) 2017-08-01T08:16:06Z solyd joined #lisp 2017-08-01T08:16:06Z solyd quit (Changing host) 2017-08-01T08:16:06Z solyd joined #lisp 2017-08-01T08:16:09Z varjag joined #lisp 2017-08-01T08:17:45Z carleos quit (Ping timeout: 240 seconds) 2017-08-01T08:20:38Z jamtho joined #lisp 2017-08-01T08:23:51Z fkac quit (Remote host closed the connection) 2017-08-01T08:23:57Z redeemed joined #lisp 2017-08-01T08:27:31Z hajovonta joined #lisp 2017-08-01T08:27:40Z hajovonta: hi 2017-08-01T08:28:57Z nullniverse quit (Ping timeout: 260 seconds) 2017-08-01T08:29:37Z jackdaniel: o/ 2017-08-01T08:30:26Z hajovonta: please help 2017-08-01T08:30:45Z hajovonta: I'm looking for a format control string that can print a list with number indexing at the front 2017-08-01T08:31:10Z hajovonta: for example for a list '(a b c) it would print 1. a 2. b 3. c 2017-08-01T08:32:03Z hajovonta: i already have "~{~a~}" but have no idea how to do the indexing 2017-08-01T08:32:04Z phoe_: jackdaniel: I need it for implementing a protocol condition class that cannot be instantiated. 2017-08-01T08:32:05Z macdavid_ joined #lisp 2017-08-01T08:33:23Z phoe_: hajovonta: I'd use loop for that, actually. (loop for i from 1 for elt on list do (format t "~D. ~A" i (car elt)) if (cdr elt) do (princ " ")) 2017-08-01T08:33:24Z knicklux quit (Quit: Leaving) 2017-08-01T08:35:14Z xuxuru joined #lisp 2017-08-01T08:36:04Z macdavid313 quit (Ping timeout: 276 seconds) 2017-08-01T08:36:17Z jamtho quit (Ping timeout: 248 seconds) 2017-08-01T08:37:29Z z0d joined #lisp 2017-08-01T08:37:50Z Shinmera: hajovonta: https://stackoverflow.com/questions/31054091/does-format-provide-a-counter-for-lists-iteration/31067838#31067838 2017-08-01T08:40:37Z macdavid313 joined #lisp 2017-08-01T08:42:09Z macdavid_ quit (Remote host closed the connection) 2017-08-01T08:42:49Z thinkpad quit (Read error: Connection reset by peer) 2017-08-01T08:45:28Z thinkpad joined #lisp 2017-08-01T08:46:53Z macdavid_ joined #lisp 2017-08-01T08:47:59Z macdavid313 quit (Remote host closed the connection) 2017-08-01T08:50:11Z phoe_: Once I define an INITIALIZE-INSTANCE :AFTER method for a given class, how can I remove it? 2017-08-01T08:50:36Z Shinmera: clhs remove-method 2017-08-01T08:50:36Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_rm_met.htm 2017-08-01T08:50:39Z shka: make-unbound 2017-08-01T08:51:45Z glamas_ quit (Ping timeout: 240 seconds) 2017-08-01T08:51:59Z Shinmera: phoe_: Or alternatively use this utility I wrote forever ago: https://plaster.tymoon.eu/view/131 2017-08-01T08:52:21Z glamas joined #lisp 2017-08-01T08:52:23Z phoe_: Shinmera: just what I was thinking about. Thanks! 2017-08-01T08:53:22Z phoe_: What license is it? 2017-08-01T08:53:42Z Shinmera: whatever license 2017-08-01T08:53:53Z hhdave joined #lisp 2017-08-01T08:54:07Z Shinmera: "you may henceforth pretend you wrote it yourself because I don't give a hoot" 2017-08-01T08:57:12Z hajovonta: Shinmera: thanks 2017-08-01T08:57:26Z hajovonta: phoe_: that's also cool 2017-08-01T08:58:20Z hhdave quit (Ping timeout: 246 seconds) 2017-08-01T09:00:07Z sellout- quit (Ping timeout: 276 seconds) 2017-08-01T09:09:51Z Firedancer_ is now known as Firedancer 2017-08-01T09:13:03Z hexfive quit (Quit: WeeChat 1.9) 2017-08-01T09:16:01Z hhdave joined #lisp 2017-08-01T09:22:01Z mishoo quit (Ping timeout: 246 seconds) 2017-08-01T09:24:49Z recondite joined #lisp 2017-08-01T09:25:04Z recondite left #lisp 2017-08-01T09:27:53Z phinxy joined #lisp 2017-08-01T09:28:31Z sellout- joined #lisp 2017-08-01T09:28:32Z damke_ joined #lisp 2017-08-01T09:30:22Z tfeb quit (Remote host closed the connection) 2017-08-01T09:30:55Z tfeb joined #lisp 2017-08-01T09:31:08Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T09:31:36Z damke quit (Ping timeout: 268 seconds) 2017-08-01T09:32:27Z jameser joined #lisp 2017-08-01T09:32:32Z defaultxr quit (Ping timeout: 260 seconds) 2017-08-01T09:34:04Z damke_ quit (Ping timeout: 268 seconds) 2017-08-01T09:34:57Z tfeb quit (Ping timeout: 240 seconds) 2017-08-01T09:40:20Z jurov: Achylles: learn how to use slime with emacs. it pays off immensely!!! 2017-08-01T09:40:39Z jurov: oops :) 2017-08-01T09:41:08Z damke_ joined #lisp 2017-08-01T09:48:19Z damke_ quit (Ping timeout: 258 seconds) 2017-08-01T09:48:35Z DGASAU quit (Read error: Connection reset by peer) 2017-08-01T09:49:07Z DGASAU joined #lisp 2017-08-01T09:50:15Z glamas_ joined #lisp 2017-08-01T09:53:25Z macdavid313 joined #lisp 2017-08-01T09:53:27Z glamas quit (Ping timeout: 240 seconds) 2017-08-01T09:55:15Z scymtym quit (Ping timeout: 240 seconds) 2017-08-01T09:55:30Z jdz quit (Ping timeout: 240 seconds) 2017-08-01T09:55:39Z Bike joined #lisp 2017-08-01T09:56:53Z ACE_Recliner quit (Ping timeout: 268 seconds) 2017-08-01T09:57:31Z macdavid_ quit (Ping timeout: 258 seconds) 2017-08-01T10:00:23Z jdz joined #lisp 2017-08-01T10:02:08Z __paul0 joined #lisp 2017-08-01T10:02:09Z _paul0 quit (Read error: Connection reset by peer) 2017-08-01T10:03:37Z __paul0 quit (Read error: Connection reset by peer) 2017-08-01T10:06:20Z glamas_ quit (Remote host closed the connection) 2017-08-01T10:08:16Z ACE_Recliner joined #lisp 2017-08-01T10:09:11Z m00natic joined #lisp 2017-08-01T10:09:51Z mishoo joined #lisp 2017-08-01T10:09:54Z __paul0 joined #lisp 2017-08-01T10:10:20Z treaki_ quit (Ping timeout: 260 seconds) 2017-08-01T10:10:37Z scymtym joined #lisp 2017-08-01T10:10:44Z damke_ joined #lisp 2017-08-01T10:17:15Z Bike quit (Ping timeout: 240 seconds) 2017-08-01T10:17:57Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T10:18:27Z damke joined #lisp 2017-08-01T10:19:05Z damke_ quit (Ping timeout: 268 seconds) 2017-08-01T10:20:34Z damke_ joined #lisp 2017-08-01T10:21:33Z jameser joined #lisp 2017-08-01T10:23:12Z damke quit (Ping timeout: 258 seconds) 2017-08-01T10:30:49Z phoe_: One does not just (setf fdefinition). 2017-08-01T10:35:30Z loke: phoe_: yes one does. 2017-08-01T10:37:15Z beach: In fact, that's what DEFUN does. 2017-08-01T10:37:44Z Shinmera: In effect it's what it does, but it might of course not use it too. 2017-08-01T10:37:53Z phoe_: Actually, not really. 2017-08-01T10:38:01Z phoe_: Compiled code may still refer to older fdefinitions. 2017-08-01T10:38:12Z phoe_: Which I just experienced myself. 2017-08-01T10:38:40Z beach: Only if they caller and the callee are in the same compilation unit. 2017-08-01T10:38:56Z beach: ... or if the function was inlined. 2017-08-01T10:39:31Z loke: In SBCL, DEFUL literally does SETF DEFINITION... It does a little more houskeeping, but that's what it does at its core. 2017-08-01T10:44:54Z tetero quit (Quit: efnet) 2017-08-01T10:45:28Z test1600 quit (Quit: Leaving) 2017-08-01T10:45:33Z tetero joined #lisp 2017-08-01T10:48:54Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T10:50:21Z jameser joined #lisp 2017-08-01T10:51:17Z Xof quit (Ping timeout: 260 seconds) 2017-08-01T10:52:35Z phoe_: I was trying to make a semiportable toolkit for condition constructors and I think I'm failing at the SBCL implementation-specific part. 2017-08-01T10:53:12Z phoe_: The original fdefinition of MAKE-CONDITION is well-baked into the system and I have no idea how I can make a function-in-the-middle there. 2017-08-01T10:53:29Z Shinmera: Remind me why you need all this again? 2017-08-01T10:54:16Z phoe_: I want to be able to make a condition class which cannot be instantiated, but its subclasses can. 2017-08-01T10:54:35Z Shinmera: Write it into the docs 2017-08-01T10:54:45Z Shinmera: Trust your users and call it a day. 2017-08-01T10:54:50Z sondr3 quit (Quit: Quit) 2017-08-01T10:54:56Z ACE_Recliner quit (Remote host closed the connection) 2017-08-01T10:56:43Z Shinmera: Alternatively, have a useless slot whose initform is an error and override that slot's initform in your subclasses. 2017-08-01T10:57:00Z Shinmera: Either way I'm still in favour of trusting your users. 2017-08-01T10:59:51Z loke: Shinmera: I agree with you, and that's the idea of CLOS. Trying to convince CLOS to enforce things like that are bound to fail. 2017-08-01T11:00:32Z damke joined #lisp 2017-08-01T11:02:52Z damke_ quit (Ping timeout: 268 seconds) 2017-08-01T11:04:19Z _death: CONDITION itself is like that.. it's not really meant to be instantiated directly but nothing prevents you from doing (make-condition 'condition) 2017-08-01T11:04:24Z beach: phoe_: The standard says that you are not allowed to modify or replace standard functions, so the implementation is free to do what it pleases. 2017-08-01T11:04:29Z Shinmera: Generally though I find superclasses of conditions to just not be useful for signalling directly anyhow, so I wouldn't even think they'd want to signal it. 2017-08-01T11:04:49Z Shinmera: Simply because the condition is too general in its naming/data 2017-08-01T11:06:30Z sondr3 joined #lisp 2017-08-01T11:10:56Z fkac joined #lisp 2017-08-01T11:14:38Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T11:18:37Z gravicappa joined #lisp 2017-08-01T11:21:04Z thinkpad quit (Read error: Connection reset by peer) 2017-08-01T11:28:01Z macdavid_ joined #lisp 2017-08-01T11:29:18Z macdavid313 quit (Remote host closed the connection) 2017-08-01T11:29:30Z thinkpad joined #lisp 2017-08-01T11:31:31Z macdavid313 joined #lisp 2017-08-01T11:31:50Z macdavid_ quit (Read error: Connection reset by peer) 2017-08-01T11:32:09Z macdavid_ joined #lisp 2017-08-01T11:32:35Z macdavid313 quit (Remote host closed the connection) 2017-08-01T11:33:42Z flamebeard quit (Quit: Leaving) 2017-08-01T11:35:13Z marvin2 joined #lisp 2017-08-01T11:41:06Z Bicyclidine joined #lisp 2017-08-01T11:41:22Z BlueRavenGT quit (Ping timeout: 255 seconds) 2017-08-01T11:42:02Z shka: gosh, i hate when code tries to prevent me from doing things 2017-08-01T11:42:21Z shka: and there is considarable effort put into that around the world 2017-08-01T11:42:27Z shka: which makes it even worse 2017-08-01T11:42:41Z jackdaniel: well, if you do something, what is *wrong*, it may save you a lot of time afterwards 2017-08-01T11:42:58Z jackdaniel: so the optimal solution lies somewhere in between 2017-08-01T11:43:04Z shka: yes, it is true 2017-08-01T11:43:20Z jackdaniel: trusting your users is definetely a good thing 2017-08-01T11:44:14Z shka: i really prefer to keep things simple, documented and open 2017-08-01T11:44:59Z jackdaniel prefers to keep them complicated, undocumented and hide them under his bead ;-) 2017-08-01T11:45:01Z BitPuffin|osx joined #lisp 2017-08-01T11:45:11Z shka: yeah, yeah 2017-08-01T11:45:14Z shka: we know :P 2017-08-01T11:45:43Z TMA: one of two conditions must hold though: either the users are not dumb or you are not bound to clean up their mess 2017-08-01T11:45:56Z flamebeard joined #lisp 2017-08-01T11:46:01Z Shinmera: jackdaniel: so that's why you like asdf 2 2017-08-01T11:46:09Z shka: hahaha :D 2017-08-01T11:46:27Z jackdaniel: I don't like asdf at all to be honest ;) 2017-08-01T11:47:20Z jackdaniel: 2 asdf is too much, not to mention three of them! 2017-08-01T11:53:29Z rumbler31 joined #lisp 2017-08-01T11:55:35Z rumbler31 quit (Remote host closed the connection) 2017-08-01T11:56:50Z Amplituhedron quit (Remote host closed the connection) 2017-08-01T11:58:15Z thinkpad quit (Read error: Connection reset by peer) 2017-08-01T12:00:27Z thinkpad joined #lisp 2017-08-01T12:08:13Z damke_ joined #lisp 2017-08-01T12:11:19Z damke quit (Ping timeout: 268 seconds) 2017-08-01T12:12:45Z Bicyclidine quit (Ping timeout: 240 seconds) 2017-08-01T12:15:10Z Amplituhedron joined #lisp 2017-08-01T12:15:48Z thinkpad quit (Read error: Connection reset by peer) 2017-08-01T12:18:45Z xuxuru quit (Remote host closed the connection) 2017-08-01T12:19:03Z xuxuru joined #lisp 2017-08-01T12:20:29Z thinkpad joined #lisp 2017-08-01T12:22:17Z flazh quit (Ping timeout: 260 seconds) 2017-08-01T12:23:10Z Amplituhedron quit (Remote host closed the connection) 2017-08-01T12:23:24Z hajovonta quit (Quit: hajovonta) 2017-08-01T12:28:28Z Murii quit (Ping timeout: 260 seconds) 2017-08-01T12:30:36Z macdavid_: ASDF should be an uncountable term 2017-08-01T12:32:39Z jackdaniel: it was a joke. ASDF2 was twice as big as ASDF1, ASDF3 is more-than-twice as big as ASDF2. Maybe it got lost in the translation 2017-08-01T12:33:32Z shka: asdf 2017-08-01T12:33:59Z shka: jackdaniel: so it is binary shift? :P 2017-08-01T12:34:04Z shka: that makes sense 2017-08-01T12:40:07Z Amplituhedron joined #lisp 2017-08-01T12:40:59Z pjb joined #lisp 2017-08-01T12:45:06Z thinkpad quit (Read error: Connection reset by peer) 2017-08-01T12:49:28Z jameser joined #lisp 2017-08-01T12:49:55Z daemoz quit (Remote host closed the connection) 2017-08-01T12:50:14Z daemoz joined #lisp 2017-08-01T12:51:29Z thinkpad joined #lisp 2017-08-01T12:55:49Z EvW1 joined #lisp 2017-08-01T12:56:45Z keviv quit (Remote host closed the connection) 2017-08-01T13:01:21Z Achylles joined #lisp 2017-08-01T13:01:50Z hdurer[m] quit (Ping timeout: 240 seconds) 2017-08-01T13:01:54Z damke joined #lisp 2017-08-01T13:02:10Z thorondor[m] quit (Ping timeout: 240 seconds) 2017-08-01T13:02:17Z RichardPaulBck[m quit (Ping timeout: 246 seconds) 2017-08-01T13:02:31Z ArthurAGleckler[ quit (Ping timeout: 246 seconds) 2017-08-01T13:02:40Z hiq[m] quit (Ping timeout: 258 seconds) 2017-08-01T13:02:43Z phoe_: shka: it would be called asdf4 if it just shifted things 2017-08-01T13:02:47Z Jach[m] quit (Ping timeout: 255 seconds) 2017-08-01T13:03:08Z shka: phoe_: asdf1, asdf2, asdf3 2017-08-01T13:03:20Z shka: asdf2 is twice as big as asdf1 2017-08-01T13:03:22Z Sovereign_Bleak quit (Ping timeout: 264 seconds) 2017-08-01T13:03:29Z shka: asdf3 is twice as big as asdf2 2017-08-01T13:03:32Z jackdaniel: 1^1 = 1, 1^2 = 2, 1^3 = 4, shka is right 2017-08-01T13:04:20Z sellout- quit (Quit: Leaving.) 2017-08-01T13:04:31Z l04m33[m] quit (Ping timeout: 276 seconds) 2017-08-01T13:04:58Z damke_ quit (Ping timeout: 268 seconds) 2017-08-01T13:05:45Z phoe_: oh, the exponent 2017-08-01T13:05:51Z phoe_: I see 2017-08-01T13:05:56Z phoe_: asdf, asdf², asdf³ 2017-08-01T13:06:23Z phoe_: jackdaniel: "1^2 = 2, 1^3 = 4" that's some hardcore math 2017-08-01T13:06:55Z jackdaniel: of course it is 2017-08-01T13:07:03Z jackdaniel: :) 2017-08-01T13:12:45Z thinkpad quit (Read error: Connection reset by peer) 2017-08-01T13:13:29Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-01T13:13:45Z Amplituhedron quit (Remote host closed the connection) 2017-08-01T13:15:28Z thinkpad joined #lisp 2017-08-01T13:16:27Z Bike joined #lisp 2017-08-01T13:16:34Z Bike quit (Remote host closed the connection) 2017-08-01T13:16:48Z TMA: it is perfectly reasonable as long as (= 1 2) ; also, if there is any bank providing such interest free deposits, I am in; I will gladly wait three years for quadrupling my deposit 2017-08-01T13:18:07Z Bike joined #lisp 2017-08-01T13:18:21Z jackdaniel: assuming a = b --- a² - b² = a*a - a*b -- (a-b)(a+b) = a(a-b) -- a+b=b --- let's put a=b=1 --- (= 1 2) 2017-08-01T13:20:27Z sellout- joined #lisp 2017-08-01T13:20:52Z sellout- quit (Client Quit) 2017-08-01T13:21:10Z sellout- joined #lisp 2017-08-01T13:24:32Z Amplituhedron joined #lisp 2017-08-01T13:27:53Z tfeb joined #lisp 2017-08-01T13:28:22Z warweasle joined #lisp 2017-08-01T13:28:54Z tfeb quit (Remote host closed the connection) 2017-08-01T13:35:48Z LiamH joined #lisp 2017-08-01T13:37:04Z groovy2shoes quit (Quit: Leaving) 2017-08-01T13:37:17Z happy_gnu quit (Ping timeout: 246 seconds) 2017-08-01T13:40:25Z happy_gnu joined #lisp 2017-08-01T13:40:48Z Achylles quit (Ping timeout: 260 seconds) 2017-08-01T13:42:25Z Jach[m] joined #lisp 2017-08-01T13:43:19Z cromachina quit (Read error: Connection reset by peer) 2017-08-01T13:44:06Z jameser joined #lisp 2017-08-01T13:44:08Z oleo joined #lisp 2017-08-01T13:45:03Z flamebeard quit (Read error: Connection reset by peer) 2017-08-01T13:46:36Z groovy2shoes joined #lisp 2017-08-01T13:47:45Z flamebeard joined #lisp 2017-08-01T13:48:05Z Lowl3v3l quit (Remote host closed the connection) 2017-08-01T13:49:16Z flamebeard quit (Client Quit) 2017-08-01T13:50:26Z flamebeard joined #lisp 2017-08-01T13:51:22Z _paul0 joined #lisp 2017-08-01T13:51:46Z Amplituhedron quit (Quit: Konversation terminated!) 2017-08-01T13:51:52Z ebzzry joined #lisp 2017-08-01T13:52:36Z Sovereign_Bleak joined #lisp 2017-08-01T13:52:36Z RichardPaulBck[m joined #lisp 2017-08-01T13:52:37Z hiq[m] joined #lisp 2017-08-01T13:52:37Z thorondor[m] joined #lisp 2017-08-01T13:52:37Z hdurer[m] joined #lisp 2017-08-01T13:52:37Z ArthurAGleckler[ joined #lisp 2017-08-01T13:52:37Z l04m33[m] joined #lisp 2017-08-01T13:55:02Z __paul0 quit (Ping timeout: 260 seconds) 2017-08-01T13:55:23Z Liu joined #lisp 2017-08-01T13:56:07Z rumbler31 joined #lisp 2017-08-01T13:56:08Z phoe_: today is the first day when I used MULTIPLE-VALUE-PROG1 2017-08-01T13:56:27Z warweasle: phoe_: That's a thing? 2017-08-01T13:56:40Z jameser_ joined #lisp 2017-08-01T13:56:48Z phoe_: clhs multiple-value-prog1 2017-08-01T13:56:48Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_mult_1.htm 2017-08-01T13:57:08Z jameser quit (Ping timeout: 260 seconds) 2017-08-01T13:57:31Z Liu: Anyone has a good link to setup slime in linux in a professional way? 2017-08-01T13:57:40Z phoe_: Liu: define "professional" 2017-08-01T13:57:54Z phoe_: there are links that have it setup in a way that works. 2017-08-01T13:57:54Z Liu: professional environment 2017-08-01T13:58:57Z Shinmera: I don't know what an environment environment environment environment environment environment environment environment environment environment environment environment environment environment environment environment environment environment environment environment environment environment 2017-08-01T13:59:03Z beach: Liu: What characterizes the professional environment you have in mind? 2017-08-01T13:59:12Z Liu: With melpa, slime-fancy, quicklisp 2017-08-01T13:59:20Z phoe_: Liu: https://www.youtube.com/watch?v=VnWVu8VVDbI should work 2017-08-01T13:59:25Z Bike: Shinmera: um? 2017-08-01T13:59:33Z phoe_: the only difference is that you can pull sbcl and emacs from your linux repositories. 2017-08-01T13:59:41Z tfeb joined #lisp 2017-08-01T13:59:41Z Shinmera: Bike: He defined "professional" as "professional environment". 2017-08-01T13:59:44Z phoe_: so there's no win32 hassle of downloading installers. 2017-08-01T14:00:58Z rumbler31 quit (Ping timeout: 246 seconds) 2017-08-01T14:01:00Z knobo: Is thre a way to provide a .ros file to a lisp project, so that roswell can automatically build and install an executable in my ~/bin/ directory? 2017-08-01T14:01:14Z knobo: if not, would that be a cool feature? 2017-08-01T14:02:15Z Liu: Thx phoe 2017-08-01T14:08:39Z papachan joined #lisp 2017-08-01T14:12:17Z mishoo quit (Ping timeout: 248 seconds) 2017-08-01T14:15:20Z tfeb quit (Ping timeout: 260 seconds) 2017-08-01T14:17:22Z shka: Liu: if you are lazy or in the hurry, use roswell 2017-08-01T14:17:35Z shka: it make things really easy 2017-08-01T14:18:07Z flamebeard quit (Quit: Leaving) 2017-08-01T14:19:09Z tetero: I just connected to a remote swank for the first time (never had a need to before), emacs is growing on me 2017-08-01T14:19:15Z axion quit (Ping timeout: 240 seconds) 2017-08-01T14:20:50Z sz0 joined #lisp 2017-08-01T14:21:23Z al-damiri joined #lisp 2017-08-01T14:22:20Z terpri quit (Ping timeout: 260 seconds) 2017-08-01T14:23:44Z knobo quit (Ping timeout: 260 seconds) 2017-08-01T14:26:25Z dec0n quit (Ping timeout: 276 seconds) 2017-08-01T14:28:28Z phoe_: tetero: use sshfs to mount your remote ~/quicklisp directory as well 2017-08-01T14:28:37Z dec0n joined #lisp 2017-08-01T14:28:49Z phoe_: just make sure they're on the same absolute locations, so emacs does not go crazy when sending compilation requests. 2017-08-01T14:29:05Z phoe_: this avoids the use of tramp which I personally dislike. 2017-08-01T14:29:44Z axion joined #lisp 2017-08-01T14:30:18Z axion quit (Client Quit) 2017-08-01T14:30:29Z axion joined #lisp 2017-08-01T14:33:07Z tetero: phoe_: Ah, I was just looking at tramp. I'm using nfs within an encrypted tunnel so there's not much need for sshfs 2017-08-01T14:36:19Z kora9 joined #lisp 2017-08-01T14:37:45Z amz3 quit (Quit: WeeChat 1.0.1) 2017-08-01T14:38:15Z phoe_: tetero: sshfs has the advantage of being a FUSE, so you don't need root privileges. 2017-08-01T14:38:47Z phoe_: beach: If I declare a protocol, and I declare that some standard classes participate in that protocol, can I provide an implementation for these standard classes as an integral part of the protocol? 2017-08-01T14:39:04Z kora9: Hi, I'm using hunchentoot from slime and I started it with (hunchentoot:start (make-instance 'hunchentoot:easy-acceptor :port 4242)) and it works, and it's really cool (I'm new to Lisp and I'm learning) but I've got a question. Now that hunchentoot is running in slime, how do I exit it? 2017-08-01T14:39:19Z Xach: kora9: hunchentoot:stop 2017-08-01T14:39:44Z Xach: kora9: Hmm, I don't know if you can easily get a handle on the instance you just started. 2017-08-01T14:39:48Z phoe_: Like, I'm working on a serializer right now. I want to serialize lists, strings, numbers, etc.. Since the end user will not ever need to modify this and most likely will just expect this to work, is it reasonable to provide an implementation of that protocol for these standard classes? 2017-08-01T14:39:50Z kora9: Xach: where? There's no prompt now :) 2017-08-01T14:40:08Z phoe_: kora9: When you started Hunchentoot, you got a return value from it, correct? 2017-08-01T14:40:09Z kora9: I'm guessing this is one of those things I should have coded in right? :) 2017-08-01T14:40:10Z Xach: kora9: No prompt? Then you are probably running a single-threaded lisp. You can interrupt it with C-c C-c 2017-08-01T14:40:10Z neoncontrails joined #lisp 2017-08-01T14:40:24Z phoe_: kora9: what Lisp implementation do you use? 2017-08-01T14:40:29Z Xach: Then if you choose the abort restart, it will end the server. 2017-08-01T14:40:44Z kora9: phoe: no, it's in the "foreground" so to speak, showing requests from the server 2017-08-01T14:40:49Z kora9: phoe_: SBCL 2017-08-01T14:40:57Z phoe_: kora9: oh. 2017-08-01T14:41:15Z Xach: kora9: showing requests does not necessarily mean it's in the foreground. 2017-08-01T14:41:20Z phoe_: Type a single asterisk in the window. Hit Enter. 2017-08-01T14:41:23Z phoe_: Tell me what you see. 2017-08-01T14:41:26Z kora9: Xach: Oh. It's just how it seemed to me 2017-08-01T14:41:26Z phoe_: Like, type the following: 2017-08-01T14:41:29Z phoe_: * 2017-08-01T14:41:31Z kora9: Okay, hang on 2017-08-01T14:41:33Z phoe_: and hit Enter. 2017-08-01T14:41:43Z kora9: Nothing 2017-08-01T14:41:46Z pjb: * 2017-08-01T14:41:57Z pjb: I see a single asterisk in the window. 2017-08-01T14:42:09Z kora9: It normally shows CL-USER> at the repl, in slime 2017-08-01T14:42:19Z kora9: after I started hunchentoot it doesn't 2017-08-01T14:42:21Z phoe_: Are you running Lisp from terminal or by slime? 2017-08-01T14:42:26Z kora9: by slime 2017-08-01T14:42:54Z phoe_: Weird. Did the REPL just stop responding? 2017-08-01T14:43:05Z Xach: phoe_: this is normal and typical for single-threaded hunchentoot. 2017-08-01T14:43:32Z phoe_: Oh. I didn't expect Hunchentoot on SBCL to go single-threaded by default. 2017-08-01T14:43:45Z Xach: phoe_: it's a property of the sbcl, not hunchentoot. 2017-08-01T14:44:07Z pjb: slime repl stops working if sldb is active. 2017-08-01T14:44:08Z ebzzry quit (Ping timeout: 246 seconds) 2017-08-01T14:44:21Z pjb: So check if you have any *sldb/ something buffers, and kill them first. 2017-08-01T14:45:11Z Xach: kora9: C-c C-c will interrupt the server and you can "abort" from there. 2017-08-01T14:45:56Z kora9: Oh 2017-08-01T14:45:59Z kora9: Ok, hang on 2017-08-01T14:46:02Z mishoo joined #lisp 2017-08-01T14:46:37Z teggi joined #lisp 2017-08-01T14:47:05Z raynold joined #lisp 2017-08-01T14:47:35Z dim: hi there! 2017-08-01T14:47:55Z Xach: hi dim! how is pgloader working with the "new" quicklisp dist update? 2017-08-01T14:47:55Z kora9: Xach: C-c C-c doesn't seem to do anything 2017-08-01T14:48:21Z Xach: kora9: that is a bit odd. not impossible or anything, but unusual. 2017-08-01T14:48:28Z dim: Xach: I'm just back from vacations today, will have to see about that! 2017-08-01T14:48:49Z Xach: vanances! 2017-08-01T14:48:58Z dim: vacances, yeah ;-) 2017-08-01T14:48:58Z kora9: Xach: Hmm. I don't need to save the state of what's in the REPL. Is there any way to "hard quit" it? 2017-08-01T14:49:29Z Xach: kora9: ,restart-inferior-lisp might do it (the leading comma is important) 2017-08-01T14:49:38Z kora9: okay 2017-08-01T14:51:05Z phoe_: M-x slime-restart-inferior-lisp is what I do 2017-08-01T14:51:09Z phoe_: or M-x s-r-i-l 2017-08-01T14:52:21Z Achylles joined #lisp 2017-08-01T14:52:28Z kora9: Oh cool now I've got it restarted 2017-08-01T14:53:04Z kora9: Xach: So you say this is because it was single-threaded? How do I make it "go to the background" so that my prompt doesn't disappear? (sorry about the linux lingo, I just don't know how else to convey what I mean) 2017-08-01T14:53:33Z Xach: kora9: it will require a change to sbcl. 2017-08-01T14:53:59Z Xach: kora9: I think it would be easiest to fetch SBCL sources and rebuild with threading enabled. I do that by using "./make.sh --fancy" in the source directory. 2017-08-01T14:54:11Z Xach: --fancy turns on threading and some other things. 2017-08-01T14:54:17Z rippa joined #lisp 2017-08-01T14:55:22Z kora9: Xach: Can I check which options the binary I have is built with somehow? 2017-08-01T14:55:56Z Xach: kora9: yep! the *features* variable shows a lot of info about how it's built. 2017-08-01T14:55:56Z varjag: does anyone happen to know what's the internal-time-units-per-second is on allegro cl arm64? 2017-08-01T14:56:19Z drcode quit (Quit: ZNC 1.6.5 - http://znc.in) 2017-08-01T14:56:54Z phoe_: varjag: post it on the acl forums perhaps? 2017-08-01T14:57:01Z phoe_: I mean, the question 2017-08-01T14:57:31Z kora9: Xach: Ah. It doesn't have :SB-THREAD, that's the one it should have right? 2017-08-01T14:57:37Z rumbler31 joined #lisp 2017-08-01T14:57:43Z Xach: kora9: yeah 2017-08-01T14:57:53Z kora9: Why would someone build a binary of sbcl without threading? o_O 2017-08-01T14:58:09Z drcode joined #lisp 2017-08-01T14:58:55Z kora9: I thought threading was more or less the point :) 2017-08-01T14:59:26Z dim fixing pgloader ql-dist support to test latest 2017-08-01T14:59:44Z kora9: Xach: So I'll git and build it with --fancy. Probably a stupid question, but with hunchentoot running in lisp, I can modify the code and all that while it's running right? 2017-08-01T14:59:49Z Xach: kora9: It's the default way sbcl builds. I'm not sure why that's the default these days. 2017-08-01T14:59:55Z beach: phoe_: Sure. 2017-08-01T14:59:59Z Xach: kora9: sure. 2017-08-01T15:00:24Z kora9: Oh. What an odd default. Maybe it's for compatibility? Or perhaps because sbcl threads are non-CL (if I understand it correctly) 2017-08-01T15:00:29Z macdavid_ quit (Remote host closed the connection) 2017-08-01T15:00:53Z macdavid313 joined #lisp 2017-08-01T15:01:10Z kora9: Xach: Thanks so much for the help. I'm still very excited that hunchentoot started and it's working. It's really neat, lisp and all this 2017-08-01T15:01:30Z Xach: kora9: there is discussion on the mailing list about it from years ago, but I can't remember the gist. 2017-08-01T15:01:43Z Xach: I just accept it and build threads wherever I go. 2017-08-01T15:02:23Z kora9: Aye, it's less of an issue now that I know of it. It's not an issue for me to build things. But it's very confusing for me as a beginner, since I thought of sbcl as "CL with threading" 2017-08-01T15:02:38Z drcode quit (Client Quit) 2017-08-01T15:02:40Z kora9: Didn't even occur to me that there'd be an option to build it without 2017-08-01T15:02:44Z xuxuru quit (Quit: xuxuru) 2017-08-01T15:03:24Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-01T15:04:25Z drcode joined #lisp 2017-08-01T15:05:07Z kora9: Xach: The entire webserver being re-programmable live is a seriously bad thing from a security standpoint, right? :) 2017-08-01T15:05:42Z Xach: kora9: If someone can add code to your webserver there is a security problem regardless of the environment. 2017-08-01T15:06:04Z kora9: That's true I suppose 2017-08-01T15:06:30Z kora9: I'm just using it for fun though, internally so it should be fine :) 2017-08-01T15:07:36Z brendos quit (Ping timeout: 260 seconds) 2017-08-01T15:09:04Z glamas joined #lisp 2017-08-01T15:09:57Z dim: Xach: ;; loading system "pgloader" Fatal MISSING-DEPENDENCY: Component ASDF/USER::TRIVIAL-FEATURES not found, required by # 2017-08-01T15:10:25Z Xach: Hmm 2017-08-01T15:10:41Z Liu: shka: Thx, i will check roswell on the web, but I think that I know what I am looking for... Slime, Slime-Fancy, QuickLisp and Melpa running on linux. 2017-08-01T15:11:00Z whoman joined #lisp 2017-08-01T15:11:02Z kora9: Xach: No threads on my platform :~( I didn't think about that. It being built without threads makes sense now 2017-08-01T15:11:26Z Xach: openbsd? 2017-08-01T15:11:59Z kora9: ARM 2017-08-01T15:12:12Z dim: Xach: http://paste.lisp.org/display/352238 2017-08-01T15:12:20Z dim: that's the full output and the list of commands 2017-08-01T15:13:58Z kora9: Xach: I can't run hunchentoot on my x86 computer because it uses libressl. It complains about libssl when quickloading 2017-08-01T15:14:23Z Xach: kora9: You can push :hunchentoot-no-ssl before building to work around that. 2017-08-01T15:14:39Z kora9: Oh, that'd be fine I suppose 2017-08-01T15:14:47Z FreeBirdLjj joined #lisp 2017-08-01T15:14:50Z kora9: do I just (push :hunchentoot-no-ssl) before quickloading it? 2017-08-01T15:16:19Z damke quit (Ping timeout: 268 seconds) 2017-08-01T15:17:06Z Xach: kora9: yeah. but you have to also remove any old fasls that might have been built before, too. i do that by rm -rf ~/.cache/common-lisp/ 2017-08-01T15:17:52Z redeemed quit (Ping timeout: 260 seconds) 2017-08-01T15:18:07Z kora9: Xach: Ah, cool :) I'll try that 2017-08-01T15:18:12Z damke joined #lisp 2017-08-01T15:21:08Z kora9: Xach: (push :hunchentoot-no-ssl) before quickloading hunchentoot returns # (name of my package) and I can alter it as it's running. I guess this is old news to you guys, but for me this is part of what makes Lisp so cool. I really enjoy the language too, even though there's a lot I don't know yet. 2017-08-01T15:55:14Z kora9: Now it's showing the requests but I can still interact with it :) 2017-08-01T15:55:41Z tfeb quit (Remote host closed the connection) 2017-08-01T15:57:06Z Xach: kora9: cool! 2017-08-01T15:57:40Z Xach: kora9: last week i worked on a quick start chapter for quicklisp, and the example was drawing dynamic graphics with a hunchentoot interface. glad it seems like it will be interesting to some. 2017-08-01T15:58:50Z brendos joined #lisp 2017-08-01T15:59:03Z kora9: Xach: Oh that's really cool. Is there a link to that? Lisp is very overwhelming to me in the sense that I feel completely unrestricted by anything other than my own knowledge. Really neat feeling 2017-08-01T15:59:33Z Xach: kora9: not published yet, sorry. but maybe i can stick up an excerpt... 2017-08-01T16:00:10Z slyrus: jackdaniel: given that we've got a very similar error for mcclim-listener, I'm thinking the problem isn't scigraph specific. 2017-08-01T16:00:19Z kora9: Xach: I'm playing with this: https://en.wikibooks.org/wiki/Common_Lisp/External_libraries/Hunchentoot which has a section about dynamic graphics with vecto that I thought I'd try next :) 2017-08-01T16:01:09Z slyrus: I've been somewhat horrified by the DEFINE-PRESENTATION-METHOD PRESENTATION-TYPEP (and its friends) code and it may well be that the compiler is now smart enough to be horrified as well. 2017-08-01T16:01:12Z Xach: http://xach.com/tmp/quickstart.html -- intentionally very simple and short. 2017-08-01T16:01:22Z Xach: kora9: ^^^ that is the thing 2017-08-01T16:01:26Z kora9: Cool :) Thanks! 2017-08-01T16:01:56Z kora9: That looks like great fun! 2017-08-01T16:04:39Z jackdaniel: slyrus: hah, very much possible :) 2017-08-01T16:05:25Z damke_ joined #lisp 2017-08-01T16:05:53Z kora9: Xach: I didn't realize you made quicklisp! It's awesome, and making life a lot easier for me 2017-08-01T16:06:00Z rumbler31 joined #lisp 2017-08-01T16:06:06Z Xach: Glad to hear it 2017-08-01T16:07:30Z damke quit (Ping timeout: 268 seconds) 2017-08-01T16:12:18Z shka_ joined #lisp 2017-08-01T16:14:28Z gabiruh joined #lisp 2017-08-01T16:18:39Z phoe_: ...I know I'm productive when I'm pushing changes into three different repos simultaneously 2017-08-01T16:18:53Z phoe_: my main project and two libraries that I've made and use in the main project 2017-08-01T16:19:07Z kora9: I'm still wrapping my head around how to even use git :) 2017-08-01T16:19:35Z phoe_: kora9: http://learngitbranching.js.org/ 2017-08-01T16:19:53Z terpri joined #lisp 2017-08-01T16:19:56Z dlowe: well, if you're getting used to emacs, magit is an *amazing* git frontend 2017-08-01T16:20:08Z kora9: phoe_: That's great! Thanks! 2017-08-01T16:20:20Z kora9: dlowe: Cool :) I'll check it out 2017-08-01T16:20:28Z Posterdati quit (Ping timeout: 258 seconds) 2017-08-01T16:20:38Z kora9: I've got some modest exposure to git from git cloning other devs repos before building and so on 2017-08-01T16:20:49Z Xach: i quite like magit. 2017-08-01T16:21:10Z Xach: my only quibble is that i have N different versions installed during N different eras of machine setup and they have subtly different key combos and such 2017-08-01T16:21:15Z Xach should sync up everything to the latest 2017-08-01T16:21:18Z kora9: I can use it to share my revolutionary hunchentoot hello world's with the world :-) 2017-08-01T16:21:34Z phoe_: I use git vanilla. Maybe I'll learn magit once. 2017-08-01T16:21:55Z vlatkoB quit (Remote host closed the connection) 2017-08-01T16:22:01Z Xach: phoe_: for me it's an accelerator and supporter, like slime vs repl. 2017-08-01T16:22:18Z slyrus: jackdaniel: I get a different error trying to load clim-listener 2017-08-01T16:22:19Z Xach: good to know both, faster to use the fancy one 2017-08-01T16:23:01Z slyrus: The value 2017-08-01T16:23:03Z slyrus: NIL 2017-08-01T16:23:04Z slyrus: is not of type 2017-08-01T16:23:06Z slyrus: SB-INT:INDEX 2017-08-01T16:23:07Z slyrus: when binding SB-IMPL::START in (CLIM-LISTENER::READ-MIME-TYPE "" NIL) 2017-08-01T16:23:13Z slyrus: working on it... 2017-08-01T16:26:07Z vlatkoB joined #lisp 2017-08-01T16:26:38Z vlatkoB quit (Remote host closed the connection) 2017-08-01T16:26:47Z kora9: Xach: What an excellent quick start guide! It was a lot of fun, and I didn't know how to create a ql system before. I'm going to have to study some of the things in this in detail, as I don't understand all of it. But it's up and running, and works great :) 2017-08-01T16:27:09Z rumbler31 quit (Remote host closed the connection) 2017-08-01T16:28:10Z Karl_Dscc joined #lisp 2017-08-01T16:31:54Z glamas quit (Remote host closed the connection) 2017-08-01T16:32:01Z tfeb joined #lisp 2017-08-01T16:32:07Z glamas joined #lisp 2017-08-01T16:33:50Z ym quit (Ping timeout: 240 seconds) 2017-08-01T16:34:34Z Posterdati joined #lisp 2017-08-01T16:34:45Z ym joined #lisp 2017-08-01T16:40:16Z tfeb quit (Remote host closed the connection) 2017-08-01T16:40:35Z tfeb joined #lisp 2017-08-01T16:41:01Z tfeb quit (Remote host closed the connection) 2017-08-01T16:41:29Z slyrus: Ok, two separate problems. One is a failure when parsing the mailcap file. That fix is straightforward. 2017-08-01T16:44:32Z hhdave quit (Ping timeout: 255 seconds) 2017-08-01T16:44:52Z tfeb joined #lisp 2017-08-01T16:44:54Z tfeb quit (Remote host closed the connection) 2017-08-01T16:51:41Z slyrus: jackdaniel: these errors come from using alexandria's parse-ordinary-lambda-list instead of mcclim's 2017-08-01T16:56:35Z defaultxr joined #lisp 2017-08-01T16:59:05Z pjb: :-) 2017-08-01T17:00:17Z m00natic quit (Remote host closed the connection) 2017-08-01T17:00:23Z slyrus: thanks for catching this Xach! 2017-08-01T17:01:02Z slyrus: taking this to #clim 2017-08-01T17:01:10Z slyrus: aargh... 2017-08-01T17:01:45Z damke joined #lisp 2017-08-01T17:04:09Z teggi quit (Quit: Leaving...) 2017-08-01T17:04:51Z damke_ quit (Ping timeout: 268 seconds) 2017-08-01T17:06:19Z ``Erik joined #lisp 2017-08-01T17:07:53Z Xach: no problemo 2017-08-01T17:08:16Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-01T17:11:42Z whoman quit (Quit: Leaving) 2017-08-01T17:14:41Z Bike quit (Ping timeout: 255 seconds) 2017-08-01T17:19:35Z Bike joined #lisp 2017-08-01T17:22:12Z dim: Xach: as of latest commit to pgloader, you can reproduce the QL dist problem with a single command line: make BUNDLEDIST=latest bundle 2017-08-01T17:22:48Z dim: the default BUNDLEDIST in the Makefile currently being 2017-04-03, the most recent one that worked in my testing 2017-08-01T17:31:16Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-01T17:31:22Z damke quit (Ping timeout: 268 seconds) 2017-08-01T17:35:12Z rumbler31 joined #lisp 2017-08-01T17:36:27Z damke joined #lisp 2017-08-01T17:45:50Z slyrus: Xach: should be fixed now 2017-08-01T17:49:10Z jameser_ quit (Ping timeout: 240 seconds) 2017-08-01T17:51:06Z damke quit (Ping timeout: 268 seconds) 2017-08-01T17:52:18Z Lord_of_Life quit (Excess Flood) 2017-08-01T17:52:56Z Lord_of_Life joined #lisp 2017-08-01T17:57:54Z glamas_ joined #lisp 2017-08-01T17:58:52Z glamas quit (Ping timeout: 260 seconds) 2017-08-01T17:59:30Z FreeBirdLjj joined #lisp 2017-08-01T18:00:36Z solyd quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-01T18:02:39Z EvW joined #lisp 2017-08-01T18:08:36Z dddddd joined #lisp 2017-08-01T18:12:18Z wildlander joined #lisp 2017-08-01T18:13:57Z knobo quit (Ping timeout: 240 seconds) 2017-08-01T18:16:07Z knobo joined #lisp 2017-08-01T18:17:46Z dcluna quit (Ping timeout: 255 seconds) 2017-08-01T18:19:40Z dcluna joined #lisp 2017-08-01T18:22:10Z EvW quit (Ping timeout: 240 seconds) 2017-08-01T18:22:44Z rumbler31 quit (Remote host closed the connection) 2017-08-01T18:23:47Z mishoo quit (Ping timeout: 268 seconds) 2017-08-01T18:24:59Z rumbler31 joined #lisp 2017-08-01T18:28:27Z Bock quit (Ping timeout: 240 seconds) 2017-08-01T18:30:56Z rumbler31 quit (Remote host closed the connection) 2017-08-01T18:31:05Z jameser joined #lisp 2017-08-01T18:35:15Z jamtho joined #lisp 2017-08-01T18:35:55Z rumbler31 joined #lisp 2017-08-01T18:36:03Z rumbler31 quit (Remote host closed the connection) 2017-08-01T18:36:31Z __paul0 joined #lisp 2017-08-01T18:36:46Z _paul0 quit (Ping timeout: 246 seconds) 2017-08-01T18:40:55Z kobain joined #lisp 2017-08-01T18:41:53Z bjorkintosh: anyone running genera vlm here on linux? Trying to figure out if the font files have been misnamed (.bfd instead of .bdf), and how to convert them if they're appropriately named. 2017-08-01T18:43:49Z scymtym quit (Ping timeout: 276 seconds) 2017-08-01T18:44:30Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-01T18:47:59Z scymtym joined #lisp 2017-08-01T18:50:25Z xuxuru joined #lisp 2017-08-01T18:51:08Z gravicappa quit (Ping timeout: 260 seconds) 2017-08-01T18:53:18Z tetero: bjorkintosh: I can't seem to find genera on loomcom anymore 2017-08-01T18:54:02Z bjorkintosh: http://www.loomcom.com/genera/genera-install.html 2017-08-01T18:54:02Z phoe_: tetero: https://loomcom.com/genera/genera-install.html ? 2017-08-01T18:54:04Z bjorkintosh: it's still there. 2017-08-01T18:54:08Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-01T18:54:12Z bjorkintosh: the folders are just hidden now. 2017-08-01T18:54:31Z tetero: ah 2017-08-01T18:54:53Z bjorkintosh: they didn't want randoms poking around. 2017-08-01T18:55:20Z jamtho quit (Ping timeout: 260 seconds) 2017-08-01T18:55:43Z tetero: http://www.loomcom.com/genera/genera also doesn't exist anymore 2017-08-01T18:56:00Z phoe_: tetero: https 2017-08-01T18:56:12Z bjorkintosh: the genera files are somewhere here: https://archive.org/download/SymblicsOpenGenera 2017-08-01T18:56:17Z phoe_: it exists, I just downloaded it through https 2017-08-01T18:57:18Z tetero: Ah, it seems they've removed http://www.loomcom.com/genera* whereas https://loomcom.com/genera* works 2017-08-01T18:58:10Z shka_ quit (Ping timeout: 240 seconds) 2017-08-01T19:02:02Z quazimodo quit (Read error: Connection reset by peer) 2017-08-01T19:09:54Z quazimodo joined #lisp 2017-08-01T19:10:47Z alandipert: on the topic of vlm, is anyone aware of any browser-based lisp environments? i have found http://lisperator.net/slip/ but am curious to know of others 2017-08-01T19:11:30Z phoe_: alandipert: JSCL? 2017-08-01T19:12:56Z alandipert: phoe_ neato, thanks 2017-08-01T19:13:23Z phoe_: If I do (locally (declare (optimize ...)) (labels (...) ...)) - will all the labels be compiled with the given optimization settings? 2017-08-01T19:16:15Z Bike: the local functions, you mean? yes. 2017-08-01T19:16:47Z phoe_: yes, the local functions. thanks. 2017-08-01T19:18:28Z scymtym quit (Ping timeout: 240 seconds) 2017-08-01T19:26:42Z jackdaniel: alandipert: ECL may be build to run in pNaCL and NaCL (chrome extensiosn) 2017-08-01T19:28:08Z mishoo joined #lisp 2017-08-01T19:34:13Z angavrilov quit (Remote host closed the connection) 2017-08-01T19:40:07Z kora9: Anyone know of any examples of CL web apps on the web? 2017-08-01T19:40:22Z Xach: kora9: http://wigflip.com/ is entirely common lisp!!! 2017-08-01T19:40:27Z Xach: and entirely silly. 2017-08-01T19:41:22Z kora9: Cool :) It's giving me flashbacks of back when I had my first web site, with an awesome under construction gif and animated skulls (so people knew I was cool) 2017-08-01T19:42:17Z Zhivago: It's important to demonstrate that you have an endoskeleton. 2017-08-01T19:42:35Z phoe_: Xach: http://wigflip.com/easystreet/ gives me HTTP 500. 2017-08-01T19:42:37Z kora9: And that you know how to implement frames and the x-files intro in midi 2017-08-01T19:43:00Z Xach: phoe_: pity. (i sold the site several years ago and the new maintainers sometimes let it crash.) 2017-08-01T19:43:08Z dlowe: kora9: I like http://google.com/flights/ 2017-08-01T19:43:23Z Xach: That can be good for me because I have some replacements that get traffic when wigflip.com is down. 2017-08-01T19:43:27Z kora9: dlowe: That's in CL? 2017-08-01T19:43:37Z kora9: I thought Google just used Python and Java 2017-08-01T19:43:47Z phoe_: Xach: well, they didn't care to remove your name from there. 2017-08-01T19:43:50Z dlowe: kora9: the part that comes up with the answers is in CL 2017-08-01T19:43:58Z Xach: phoe_: i still get emails about it from time to time :( 2017-08-01T19:44:02Z phoe_: kora9: they bought ITA some time ago, who did their airfare stuff in Lisp 2017-08-01T19:44:04Z phoe_: Xach: :( 2017-08-01T19:44:11Z phoe_: Go sue them or something. 2017-08-01T19:44:13Z kora9: phoe_: oh, cool. 2017-08-01T19:44:57Z sjl: https://matrix.itasoftware.com/ still works too 2017-08-01T19:45:37Z kora9: It's so odd. CL is the first programming language I truly enjoy learning. I've tried python, java, C, C# and so on and they felt odd and arbitrary 2017-08-01T19:46:35Z Xach: common lisp is pretty odd and arbitrary too. but if you like its oddness and arbitraryness, bonus! 2017-08-01T19:47:02Z kora9: It is? So far it seems that everything is very thought through 2017-08-01T19:47:29Z kora9: Emacs, after setting it up well, is a really stellar IDE 2017-08-01T19:49:50Z Xach: kora9: a lot of stuff is built into it that was created at different times and with somewhat different styles, with the goal of making old stuff continue to work (or at least not break too much), so there is some modern (90s modern) and some really old-fashioned stuff all in one place. 2017-08-01T19:50:16Z kora9: Oh, is that why loop feels so different (albeit, great in its own right)? 2017-08-01T19:50:30Z phoe_: kora9: and format. 2017-08-01T19:50:32Z Xach: Sort of. 2017-08-01T19:50:39Z Xach: BOOLE springs to mind, too 2017-08-01T19:50:40Z phoe_: they're the two oddball sublanguages of CL. 2017-08-01T19:50:41Z kora9: phoe_: Ah, yes! Now that you mention it 2017-08-01T19:50:44Z phoe_: oh gods boole 2017-08-01T19:50:49Z kora9: boole I haven't come across yet 2017-08-01T19:51:04Z Xach: nor will you unless you look at XXXtremely old or idiosyncratic stuff 2017-08-01T19:51:05Z phoe_: kora9: you're unlikely to unless you like bit-flipping and bit operations 2017-08-01T19:51:16Z Zhivago: Google has a number of standard and non-standard languages. CL and haskell are non-standard. 2017-08-01T19:51:27Z Xach: phoe_: many better options than boole even then 2017-08-01T19:51:54Z kora9: phoe_: I've just come across bit-stuff in google lisp-koans 2017-08-01T19:51:57Z kora9: but not boole 2017-08-01T19:52:08Z phoe_: Xach: right 2017-08-01T19:53:38Z phoe_: anyway 2017-08-01T19:53:40Z phoe_: (+ (* (+ (*) (*)) (+ (*) (*) (*))) (* (* (+ (*) (*)) (+ (*) (*) (*))) (* (+ (*) (*)) (+ (*) (*) (*))))) 2017-08-01T19:54:11Z phoe_: that's a program computing the answer to life, the universe and anything, written in portable Common Lisp 2017-08-01T19:54:12Z rumbler31 joined #lisp 2017-08-01T19:54:34Z kora9: phoe_: I'm currently typing that in because I want to see what comes out 2017-08-01T19:54:46Z phoe_: kora9: copypaste it 2017-08-01T19:55:00Z phoe_: you might disturb the parens if you manually retype it 2017-08-01T19:55:04Z kora9: phoe_: I don't know how to copy from emacs :P 2017-08-01T19:55:10Z kora9: (I'm really bad at emacs) 2017-08-01T19:55:32Z BitPuffin joined #lisp 2017-08-01T19:56:13Z phoe_: kora9: M-w 2017-08-01T19:56:18Z phoe_: select your stuff and M-w 2017-08-01T19:56:31Z phoe_: which is Alt+W, translating to the more commonly used language 2017-08-01T19:56:43Z kora9: phoe_: Ah, yeah I understand meta 2017-08-01T19:57:01Z kora9: phoe_: I already typed it in, but I'll remember that for future reference. 42, ha! 2017-08-01T19:57:12Z kora9: phoe_: Now, what's the source for the question? 2017-08-01T19:57:22Z alandipert: reminds me of (let ((let '`(let ((let ',let)) ,let))) `(let ((let ',let)) ,let)) which blew my mind recently 2017-08-01T19:57:54Z _death: actually, Rick (from Rick and Morty fame) already came up with a program to compute that when he was 30 years old.. here it is: ~30R1C 2017-08-01T19:58:19Z _death: I mean, #30R1C (always have to ruin a good joke eh) 2017-08-01T19:58:32Z kora9: alandipert: Is that supposed to be voyager? 2017-08-01T19:59:24Z kora9: :) 2017-08-01T19:59:29Z avalokite quit (Ping timeout: 246 seconds) 2017-08-01T19:59:37Z kora9: phoe_: Why does the + * stuff become 42? 2017-08-01T19:59:50Z phoe_: kora9: that's a question to you 2017-08-01T19:59:57Z phoe_: figure it out 2017-08-01T20:00:04Z Orion3k quit (Ping timeout: 246 seconds) 2017-08-01T20:00:07Z kora9: Good one, I'll try my best! 2017-08-01T20:00:21Z phoe_: quasihint: Scheme evaluates it exactly the same way 2017-08-01T20:00:32Z BitPuffin|osx quit (Ping timeout: 246 seconds) 2017-08-01T20:03:56Z kora9: phoe_: No hints, It'll take me a while but this is actually a good exercise 2017-08-01T20:04:07Z kora9: I'll be back when I've figured it out :) 2017-08-01T20:04:17Z phoe_: quasihint2: 42 is an integer 2017-08-01T20:04:50Z phoe_: ...I'll happily accept PRs to this one: https://gist.github.com/phoe/7a384a0483ff275c1d1a670fbbfacb5c 2017-08-01T20:06:47Z kora9: phoe_: Oh * evaluates to 1! 2017-08-01T20:08:02Z kora9: That makes sense now, (+ (*) (*)) == 2 and so forth 2017-08-01T20:09:31Z phoe_: kora9: * evaluates to a different thing than (*) 2017-08-01T20:09:35Z phoe_: clhs * 2017-08-01T20:09:35Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/a_st.htm 2017-08-01T20:09:56Z phoe_: there are REPL convenience variables, * ** *** + ++ +++ / // /// - 2017-08-01T20:10:02Z phoe_: that are extremely handy 2017-08-01T20:10:05Z kora9: Wait.. 2017-08-01T20:10:33Z kora9: phoe_: I'm discovering some weirdness there 2017-08-01T20:10:52Z kora9: phoe_: I was checking (+ * *) and it's producing first 1, then 2, then 4, 8, 16 and so on 2017-08-01T20:10:59Z phoe_: hahah 2017-08-01T20:11:05Z phoe_: no doubt it does 2017-08-01T20:11:06Z kora9: That was confusing before I figured it out! 2017-08-01T20:11:25Z phoe_: * evaluates to the value of the previously evaluated form 2017-08-01T20:11:28Z Bike: (*) is one because it's an empty product. (* 1 1) = (* 1) = (*) 2017-08-01T20:11:50Z kora9: Oh 2017-08-01T20:11:54Z phoe_: so if the last evaluated form was 1, you get (+ * *) => (+ 1 1) => 2 2017-08-01T20:12:04Z kora9: Cool 2017-08-01T20:12:06Z phoe_: and next time, (+ * *) => (+ 2 2) => 4 2017-08-01T20:12:11Z phoe_: and next time, (+ * *) => (+ 4 4) => 8 2017-08-01T20:13:00Z Orion3k joined #lisp 2017-08-01T20:13:20Z phoe_: okay, gotta run 2017-08-01T20:13:22Z phoe_: see you 2017-08-01T20:13:25Z kora9: Later 2017-08-01T20:13:31Z _rumbler31 joined #lisp 2017-08-01T20:13:47Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-01T20:15:45Z tfeb joined #lisp 2017-08-01T20:17:28Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-01T20:20:01Z shifty quit (Ping timeout: 276 seconds) 2017-08-01T20:22:28Z Orion3k quit (Ping timeout: 240 seconds) 2017-08-01T20:24:14Z sondr3 quit (Quit: Quit) 2017-08-01T20:27:30Z tfeb quit (Remote host closed the connection) 2017-08-01T20:27:54Z warweasle quit (Quit: Random Clerks quote.) 2017-08-01T20:29:07Z drcode joined #lisp 2017-08-01T20:29:44Z EvW1 joined #lisp 2017-08-01T20:33:04Z pmc joined #lisp 2017-08-01T20:37:16Z vtomole joined #lisp 2017-08-01T20:38:34Z Orion3k joined #lisp 2017-08-01T20:41:15Z pmc quit (Quit: Leaving) 2017-08-01T20:42:07Z milanj joined #lisp 2017-08-01T20:46:01Z mishoo quit (Ping timeout: 276 seconds) 2017-08-01T20:46:14Z Achylles quit (Ping timeout: 240 seconds) 2017-08-01T20:46:36Z Xof joined #lisp 2017-08-01T20:59:59Z BlueRavenGT joined #lisp 2017-08-01T21:03:28Z milanj quit (Quit: Leaving) 2017-08-01T21:03:34Z haz joined #lisp 2017-08-01T21:04:18Z haz quit (Remote host closed the connection) 2017-08-01T21:04:38Z haz joined #lisp 2017-08-01T21:05:18Z _rumbler31 quit (Remote host closed the connection) 2017-08-01T21:09:09Z glamas_ quit (Remote host closed the connection) 2017-08-01T21:12:16Z phoe_: https://github.com/phoe/clus-data/pull/25 2017-08-01T21:12:25Z phoe_: now this is something I can call a wall of commits 2017-08-01T21:13:23Z glamas joined #lisp 2017-08-01T21:13:28Z Bike quit (Ping timeout: 240 seconds) 2017-08-01T21:18:45Z rumbler31 joined #lisp 2017-08-01T21:22:30Z moei quit (Quit: Leaving...) 2017-08-01T21:23:48Z attila_lendvai joined #lisp 2017-08-01T21:23:48Z attila_lendvai quit (Changing host) 2017-08-01T21:23:48Z attila_lendvai joined #lisp 2017-08-01T21:30:50Z heurist` is now known as heurist 2017-08-01T21:32:10Z oleo quit (Ping timeout: 276 seconds) 2017-08-01T21:37:17Z arduo joined #lisp 2017-08-01T21:44:32Z knusbaum joined #lisp 2017-08-01T21:45:28Z sjl__ joined #lisp 2017-08-01T21:48:25Z sjl quit (Ping timeout: 276 seconds) 2017-08-01T21:48:28Z glamas quit (Remote host closed the connection) 2017-08-01T21:49:44Z Achylles joined #lisp 2017-08-01T21:54:02Z rumbler3_ joined #lisp 2017-08-01T21:58:14Z rumbler3_ quit (Ping timeout: 240 seconds) 2017-08-01T21:59:40Z slark joined #lisp 2017-08-01T21:59:58Z Karl_Dscc quit (Remote host closed the connection) 2017-08-01T22:04:18Z phoe_ is now known as phoe 2017-08-01T22:06:47Z davsebamse quit (Ping timeout: 260 seconds) 2017-08-01T22:08:27Z davsebamse joined #lisp 2017-08-01T22:09:44Z slark: hello, can someone explain me why in my example lst3 is unchanged after a destructive operation on lst2? http://paste.lisp.org/display/352252 2017-08-01T22:10:09Z slark: as you see in the example lst2 is the cddr of lst3 after an append operation 2017-08-01T22:10:20Z Shinmera: slark: append creates a new list entirely. 2017-08-01T22:10:29Z Shinmera: clhs append 2017-08-01T22:10:29Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_append.htm 2017-08-01T22:11:06Z slark: Shinmera: really ? 2017-08-01T22:11:25Z Shinmera: Yeah, read the link above. 2017-08-01T22:11:37Z knusbaum: Also, nreverse is not guaranteed to modify its argument. 2017-08-01T22:13:37Z slark: if append create a new list entirely, why when i modify lst2 or lst3 element with setf the other one is impacted too ? 2017-08-01T22:14:10Z phoe: Shinmera: entirely? no! 2017-08-01T22:14:19Z phoe: "append returns a new list that is the concatenation of the copies. lists are left unchanged; the list structure of each of lists except the last is copied." 2017-08-01T22:14:25Z phoe: the last list is not copied! 2017-08-01T22:14:33Z slark: ok yeah 2017-08-01T22:14:39Z slark: the last is not copied 2017-08-01T22:14:50Z slark: the last cons cell is not copied 2017-08-01T22:15:11Z Shinmera: Bah, I shouldn't give advice past midnight 2017-08-01T22:15:36Z slark: so in my previously link.. nreverse doesnt modify its arguement apprently and create a new list as notices knusbaum ? 2017-08-01T22:15:47Z slark: noticed* 2017-08-01T22:16:05Z axion: It might be worth knowing why you are relying on append to begin with to better answer your question. append is not the most efficient way to do that. 2017-08-01T22:16:24Z slark: axion: i am reading pcl just tryong to understand what i am doing 2017-08-01T22:16:44Z knusbaum quit (Quit: Leaving.) 2017-08-01T22:17:26Z slark: axion: pcl chapter 12 on destructive operations 2017-08-01T22:19:13Z jamtho joined #lisp 2017-08-01T22:22:08Z maarhart joined #lisp 2017-08-01T22:22:12Z Bike joined #lisp 2017-08-01T22:22:12Z abcquzrx joined #lisp 2017-08-01T22:22:38Z axion: slark: nreverse _might_ not modify. It depends on the implementation. The Common Lisp standard offers a lot of freedom to implementations, and one has to really read CLHS sections to understand everything. 2017-08-01T22:24:31Z slark: axion: i am rewriting my example and now the nreverse modifies its argument i think i did something wrong 2017-08-01T22:24:39Z maarhart quit (Client Quit) 2017-08-01T22:24:59Z slark: axion: indeed i should start reading clhs with more attention 2017-08-01T22:25:35Z abcquzrx: Hi all 2017-08-01T22:25:52Z slark: hi 2017-08-01T22:26:44Z arduo quit (Ping timeout: 260 seconds) 2017-08-01T22:27:59Z LiamH quit (Quit: Leaving.) 2017-08-01T22:30:42Z abcquzrx: Is it always this quiet or is every conversation (in parentheses) ? 2017-08-01T22:31:09Z stylewarning: the whispers of lispers 2017-08-01T22:31:12Z Bike: you've been here what, two minutes? 2017-08-01T22:31:19Z whoman joined #lisp 2017-08-01T22:31:36Z abcquzrx: Maybe three 2017-08-01T22:32:16Z p_l: abcquzrx: this is IRC, getting a response after 3 days of pure silence happens even on popular channels 2017-08-01T22:32:17Z Winterschlaf joined #lisp 2017-08-01T22:32:30Z abcquzrx: Til 2017-08-01T22:33:39Z abcquzrx: So it's more long term like IM penpals? 2017-08-01T22:33:52Z p_l: sometimes that 2017-08-01T22:34:00Z p_l: it's varied 2017-08-01T22:34:30Z p_l: and a lot of activity here happens in relation to waking times in specific time zones 2017-08-01T22:37:03Z abcquzrx: that's cool. do most of you lisp for a living or play? 2017-08-01T22:37:40Z stylewarning: Mix 2017-08-01T22:39:27Z jamtho quit (Ping timeout: 240 seconds) 2017-08-01T22:39:30Z abcquzrx quit (Quit: Bye) 2017-08-01T22:39:33Z QualityAddict joined #lisp 2017-08-01T22:39:39Z pillton joined #lisp 2017-08-01T22:40:23Z abcquzrx joined #lisp 2017-08-01T22:42:09Z logrus joined #lisp 2017-08-01T22:44:44Z abcquzrx quit (Ping timeout: 240 seconds) 2017-08-01T22:46:03Z abcquzrx joined #lisp 2017-08-01T22:46:48Z abcquzrx quit (Client Quit) 2017-08-01T22:48:46Z abcquzrx joined #lisp 2017-08-01T22:50:48Z abcquzrx quit (Client Quit) 2017-08-01T22:51:59Z warweasle joined #lisp 2017-08-01T22:53:26Z https_GK1wmSU joined #lisp 2017-08-01T22:53:46Z https_GK1wmSU left #lisp 2017-08-01T22:53:54Z jamtho joined #lisp 2017-08-01T22:56:16Z JohnTalent joined #lisp 2017-08-01T22:57:57Z abcquzrx joined #lisp 2017-08-01T22:57:59Z oleo joined #lisp 2017-08-01T22:59:31Z bigos joined #lisp 2017-08-01T22:59:32Z abcquzrx quit (Read error: Connection reset by peer) 2017-08-01T23:00:31Z bigos quit (Client Quit) 2017-08-01T23:06:35Z logrus quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-01T23:06:52Z logrus joined #lisp 2017-08-01T23:07:20Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-01T23:07:50Z logrus left #lisp 2017-08-01T23:08:37Z cromachina joined #lisp 2017-08-01T23:09:12Z Jesin quit (Quit: Leaving) 2017-08-01T23:18:04Z jamtho quit (Ping timeout: 260 seconds) 2017-08-01T23:20:00Z whoman quit (Quit: Leaving) 2017-08-01T23:21:07Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-01T23:24:06Z warweasle quit (Remote host closed the connection) 2017-08-01T23:24:30Z wildlander quit (Quit: Saliendo) 2017-08-01T23:24:33Z warweasle joined #lisp 2017-08-01T23:26:51Z cromachina quit (Read error: Connection reset by peer) 2017-08-01T23:27:37Z smazga quit (Quit: leaving) 2017-08-01T23:28:50Z slark quit (Ping timeout: 260 seconds) 2017-08-01T23:30:23Z cromachina joined #lisp 2017-08-01T23:31:07Z impulse quit (Ping timeout: 276 seconds) 2017-08-01T23:34:54Z stylewarning: Is it possible to make SLIME to not indent toplevel EVAL-WHEN's? 2017-08-01T23:35:17Z abcquzrx joined #lisp 2017-08-01T23:35:27Z abcquzrx quit (Client Quit) 2017-08-01T23:37:21Z xuxuru quit (Ping timeout: 248 seconds) 2017-08-01T23:43:59Z EvW1 quit (Ping timeout: 258 seconds) 2017-08-01T23:46:05Z pierpa joined #lisp 2017-08-01T23:47:03Z borei quit (Ping timeout: 258 seconds) 2017-08-01T23:49:35Z Hoolootwo left #lisp 2017-08-01T23:52:56Z EvW joined #lisp 2017-08-01T23:59:14Z haz quit (Quit: Leaving) 2017-08-01T23:59:53Z ebzzry joined #lisp 2017-08-02T00:01:57Z borei joined #lisp 2017-08-02T00:02:52Z warweasle quit (Quit: Leaving) 2017-08-02T00:03:25Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T00:04:45Z WhiskyRyan joined #lisp 2017-08-02T00:07:25Z Liu quit (Ping timeout: 255 seconds) 2017-08-02T00:09:01Z whoman joined #lisp 2017-08-02T00:09:45Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T00:11:56Z raydeejay_ joined #lisp 2017-08-02T00:12:07Z raydeejay_: I was wondering how could I get rid of eval here http://paste.lisp.org/display/352259 2017-08-02T00:12:10Z FakePedro quit (Ping timeout: 240 seconds) 2017-08-02T00:12:12Z FakePedro1 joined #lisp 2017-08-02T00:12:50Z EvW quit (Ping timeout: 240 seconds) 2017-08-02T00:13:21Z Liu joined #lisp 2017-08-02T00:13:50Z WhiskyRyan joined #lisp 2017-08-02T00:14:33Z FakePedro1 is now known as FakePedro 2017-08-02T00:14:34Z karswell_ joined #lisp 2017-08-02T00:14:48Z karswell quit (Read error: Connection reset by peer) 2017-08-02T00:16:05Z Xach quit (Ping timeout: 240 seconds) 2017-08-02T00:16:48Z Bike: raydeejay_: you could use macrolet, but i think the numentry! macro is kind of sketchy... 2017-08-02T00:16:55Z Xach joined #lisp 2017-08-02T00:18:18Z axion: I don't really se much reason to use a macro for this period 2017-08-02T00:18:22Z axion: Maybe I'm missing something 2017-08-02T00:18:51Z Bike: well, it's because one of the lambda uses one of the macro arguments as a setf place. 2017-08-02T00:19:30Z axion: Oh, right...incf 2017-08-02T00:19:38Z axion: Hmm, this does seem sketchy though 2017-08-02T00:19:56Z Bike: yeah, i feel like there's got to be a better organization, but i'm not sure what it would be. 2017-08-02T00:20:02Z ski: couldn't you just bind `(car option)' to a local variable ? 2017-08-02T00:21:36Z Bike: yeah, i guess you could have like (loop for option ... collecting `(let ((co ,(car option))) (numentry! co ...)) 2017-08-02T00:22:09Z Bike: or... that doesn't make any sense, it still has to be evaluated. sorry. 2017-08-02T00:22:42Z ski: i meant dropping the quasiquotation 2017-08-02T00:23:07Z ski: (in `:collecting', i.e.) 2017-08-02T00:23:21Z Bike: collecting (numentry! (car option) ...), should work if it doesn't actually have to be evaluated twice? 2017-08-02T00:23:53Z gilberth: I happen to believe that the cards not being a data type is the problem and thus this accessor-expr being passed around, because otherwise there would be no reason that NUMENTRY! needs to be a macro at all. Instead of ,ACCESSOR-EXPR something like (CARD-VALUE CARD) would have been suffice. 2017-08-02T00:23:54Z raydeejay_: the "label" doesn't matter that much, but the "accessor-expr" is used more than once 2017-08-02T00:23:56Z Bike: i mean, as it is now, (car option) is evaluated in the make-instance 'menu, and then whatever the result of that is is evaluated again 2017-08-02T00:24:24Z raydeejay_: hm 2017-08-02T00:24:27Z HDurer quit (Ping timeout: 260 seconds) 2017-08-02T00:24:47Z axion: I think I agree with gilberth 2017-08-02T00:24:52Z raydeejay_: I was trying to avoid making a data type just for this, but if the alternative is eval, I guess I will 2017-08-02T00:24:58Z axion: This needs to be rethought 2017-08-02T00:25:05Z axion: Better separation of ideas 2017-08-02T00:25:14Z raydeejay_: oh, you don't want to see how it was before I started refactoring it 2017-08-02T00:25:15Z raydeejay_: xD 2017-08-02T00:25:29Z gilberth: (defmacro card-value (card) `(cdr ,card)) would be suffice. If you do not want to spend a DEFSTRUCT or DEFCLASS. 2017-08-02T00:26:32Z ski . o O ( "`eval' should not be used, unless one knows why it shouldn't be used" ) 2017-08-02T00:27:36Z ski: (Bike, yea .. presumably it's self-evaluating ?) 2017-08-02T00:28:50Z rumbler31 joined #lisp 2017-08-02T00:29:50Z Bike: yeah, that's a good idea. assuming numentry! isn't called with a non-cdr place anywhere else you could do that and turn it into a function 2017-08-02T00:30:35Z raydeejay_: I have other accessor-exprs like (name *deck*) that I pass to numentry! 2017-08-02T00:30:53Z raydeejay_: not just those that I use in the loop 2017-08-02T00:30:59Z gilberth: The other option is to put the LOOP into a macro too. 2017-08-02T00:31:02Z raydeejay_: well not name xD 2017-08-02T00:31:07Z raydeejay_: number of cards for example 2017-08-02T00:32:07Z glamas joined #lisp 2017-08-02T00:32:49Z raydeejay_: well, I'll give it good thought tomorrow, I've done enough refactoring today :) 2017-08-02T00:32:54Z gilberth: Like (macrolet ((foo () (loop for ... collect `(numentry! ...)))) (foo)) But this gets messy. 2017-08-02T00:32:55Z raydeejay_: thanks for the pointers 2017-08-02T00:33:34Z gilberth: `(list ,@(loop ...)) even. 2017-08-02T00:34:48Z gilberth: Third optionm: Pass a reader and a writer function to a numentry! function. 2017-08-02T00:35:08Z gilberth: Fourth option: Get locatives :-) 2017-08-02T00:35:43Z HDurer joined #lisp 2017-08-02T00:38:16Z moei joined #lisp 2017-08-02T00:38:44Z phoe quit (Ping timeout: 240 seconds) 2017-08-02T00:40:39Z ski . o O ( "Locus Solum: From the rules of logic to the logic of rules" by Jean-Yves Girard in 2000 at ) 2017-08-02T00:40:39Z phoe joined #lisp 2017-08-02T00:43:05Z troydm quit (Ping timeout: 240 seconds) 2017-08-02T00:43:18Z glamas quit (Remote host closed the connection) 2017-08-02T00:43:45Z troydm joined #lisp 2017-08-02T00:44:06Z rumbler31 quit (Remote host closed the connection) 2017-08-02T00:45:05Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T00:47:07Z rumbler31 joined #lisp 2017-08-02T00:47:44Z BitPuffin quit (Ping timeout: 240 seconds) 2017-08-02T00:48:29Z https_GK1wmSU joined #lisp 2017-08-02T00:48:53Z https_GK1wmSU left #lisp 2017-08-02T00:49:44Z WhiskyRyan joined #lisp 2017-08-02T00:52:31Z rumbler31 quit (Remote host closed the connection) 2017-08-02T00:54:12Z Achylles quit (Ping timeout: 260 seconds) 2017-08-02T00:55:00Z papachan quit (Quit: Saliendo) 2017-08-02T00:57:27Z ryanwatkins quit (Ping timeout: 240 seconds) 2017-08-02T00:58:02Z glamas joined #lisp 2017-08-02T00:59:20Z BlueRavenGT quit (Ping timeout: 260 seconds) 2017-08-02T01:01:23Z pierpa quit (Quit: Page closed) 2017-08-02T01:03:17Z caffe quit (Quit: WeeChat 1.9) 2017-08-02T01:06:08Z ryanbw joined #lisp 2017-08-02T01:08:10Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-02T01:08:28Z caffe joined #lisp 2017-08-02T01:08:43Z quazimodo joined #lisp 2017-08-02T01:09:09Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T01:09:52Z EvW joined #lisp 2017-08-02T01:14:11Z macdavid_ joined #lisp 2017-08-02T01:16:14Z macdavid313 quit (Ping timeout: 240 seconds) 2017-08-02T01:16:36Z WhiskyRyan joined #lisp 2017-08-02T01:18:23Z WhiskyRyan quit (Client Quit) 2017-08-02T01:19:03Z EvW quit (Ping timeout: 258 seconds) 2017-08-02T01:19:24Z glamas_ joined #lisp 2017-08-02T01:21:00Z jameser joined #lisp 2017-08-02T01:21:44Z glamas quit (Ping timeout: 260 seconds) 2017-08-02T01:23:49Z https_GK1wmSU joined #lisp 2017-08-02T01:23:53Z LooneyTunes joined #lisp 2017-08-02T01:24:04Z https_GK1wmSU left #lisp 2017-08-02T01:25:41Z FreeBirdLjj joined #lisp 2017-08-02T01:30:04Z dddddd quit (Quit: Hasta otra..) 2017-08-02T01:30:27Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-02T01:35:20Z marvin2 quit 2017-08-02T01:39:54Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-02T01:40:54Z keviv joined #lisp 2017-08-02T01:44:49Z WhiskyRyan joined #lisp 2017-08-02T01:52:23Z edgar-rft joined #lisp 2017-08-02T01:54:28Z macdavid313 joined #lisp 2017-08-02T01:57:40Z macdavid_ quit (Ping timeout: 260 seconds) 2017-08-02T01:58:57Z defaultxr quit (Ping timeout: 260 seconds) 2017-08-02T02:06:01Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T02:08:00Z rumbler31 joined #lisp 2017-08-02T02:13:27Z safe joined #lisp 2017-08-02T02:24:33Z ebzzry quit (Ping timeout: 248 seconds) 2017-08-02T02:24:54Z rumbler31 quit (Remote host closed the connection) 2017-08-02T02:31:43Z diegs_ joined #lisp 2017-08-02T02:49:42Z terpri quit (Ping timeout: 260 seconds) 2017-08-02T02:54:47Z glamas_ quit (Remote host closed the connection) 2017-08-02T02:55:39Z warweasle joined #lisp 2017-08-02T02:58:30Z glamas joined #lisp 2017-08-02T03:00:18Z phinxy quit (Read error: Connection reset by peer) 2017-08-02T03:01:28Z glamas_ joined #lisp 2017-08-02T03:02:17Z beach: Good morning everyone! 2017-08-02T03:02:30Z beach: Hello gilberth! Welcome back! 2017-08-02T03:03:01Z glamas quit (Ping timeout: 268 seconds) 2017-08-02T03:04:08Z vtomole: Hey beach, have you heard of this implementation? http://minejima.jp/lisp/sacla/index-en.html 2017-08-02T03:04:17Z vtomole: I found it on comp.lang.lisp today 2017-08-02T03:04:43Z vtomole: https://groups.google.com/forum/#!topic/comp.lang.lisp/jzgxQp4NWZE 2017-08-02T03:04:45Z beach: Yes, it was discussed here back when it was still active. 2017-08-02T03:05:34Z vtomole: I've been studying it, was wondering if it was sound. It's incomplete, but still.. 2017-08-02T03:05:49Z glamas joined #lisp 2017-08-02T03:06:59Z vtomole: The way it follows the chapters on the hypersec makes it very easy for me to follow. 2017-08-02T03:07:14Z whoman: hi beach , hi vtomole 2017-08-02T03:07:42Z whoman: are you reading the code ? what purpose? 2017-08-02T03:07:57Z beach: vtomole: I think it is fine. It is not going to be very efficient the way it is written, but it is very understandable. 2017-08-02T03:08:00Z gilberth: beach: Hello Robert, I hope I am being back for real. This applies to everone in a way. My motto now is: "I was dead for ten years and I am now being resurrected." Who knows me, understands this. 2017-08-02T03:08:00Z vtomole: I'm learning how to implement common lisp 2017-08-02T03:08:50Z beach: gilberth: Hey! Good to see you! 2017-08-02T03:09:04Z glamas_ quit (Ping timeout: 260 seconds) 2017-08-02T03:11:23Z Xal joined #lisp 2017-08-02T03:12:16Z macdavid_ joined #lisp 2017-08-02T03:13:20Z macdavid313 quit (Remote host closed the connection) 2017-08-02T03:14:18Z macdavid313 joined #lisp 2017-08-02T03:17:14Z macdavid_ quit (Ping timeout: 240 seconds) 2017-08-02T03:19:06Z macdavid_ joined #lisp 2017-08-02T03:19:34Z drcode quit (Quit: ZNC 1.6.5 - http://znc.in) 2017-08-02T03:19:45Z rumbler31 joined #lisp 2017-08-02T03:20:24Z macdavid313 quit (Remote host closed the connection) 2017-08-02T03:21:07Z damke joined #lisp 2017-08-02T03:22:19Z drcode joined #lisp 2017-08-02T03:23:42Z drcode quit (Remote host closed the connection) 2017-08-02T03:25:36Z drcode joined #lisp 2017-08-02T03:26:05Z rumbler31 quit (Remote host closed the connection) 2017-08-02T03:27:57Z quazimodo joined #lisp 2017-08-02T03:28:48Z drcode quit (Client Quit) 2017-08-02T03:29:14Z axion: Welcome back gilberth. You must've left right about when I started. October will mark a decade of CL for me 2017-08-02T03:29:20Z impulse joined #lisp 2017-08-02T03:30:38Z drcode joined #lisp 2017-08-02T03:30:46Z karswell_ quit (Read error: Connection reset by peer) 2017-08-02T03:32:12Z drcode quit (Remote host closed the connection) 2017-08-02T03:32:53Z Devon joined #lisp 2017-08-02T03:33:59Z drcode joined #lisp 2017-08-02T03:35:12Z glamas quit (Ping timeout: 260 seconds) 2017-08-02T03:36:42Z defaultxr joined #lisp 2017-08-02T03:37:02Z impulse quit (Ping timeout: 255 seconds) 2017-08-02T03:37:42Z glamas joined #lisp 2017-08-02T03:41:30Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-02T03:48:13Z diegs_ quit (Remote host closed the connection) 2017-08-02T03:48:59Z karswell_ joined #lisp 2017-08-02T03:52:08Z pjb quit (Ping timeout: 240 seconds) 2017-08-02T03:54:30Z glamas_ joined #lisp 2017-08-02T03:55:36Z warweasle quit (Quit: Leaving) 2017-08-02T03:56:23Z fkac joined #lisp 2017-08-02T03:58:04Z glamas quit (Ping timeout: 260 seconds) 2017-08-02T03:58:59Z shka_ joined #lisp 2017-08-02T04:00:43Z brandonz quit (Quit: bbl) 2017-08-02T04:01:24Z damke_ joined #lisp 2017-08-02T04:03:49Z impulse joined #lisp 2017-08-02T04:04:04Z damke quit (Ping timeout: 268 seconds) 2017-08-02T04:09:28Z glamas_ quit (Remote host closed the connection) 2017-08-02T04:14:52Z QualityAddict quit (Quit: Leaving) 2017-08-02T04:15:51Z nsrahmad joined #lisp 2017-08-02T04:18:26Z angavrilov joined #lisp 2017-08-02T04:20:12Z ebzzry joined #lisp 2017-08-02T04:21:52Z Bike quit (Ping timeout: 260 seconds) 2017-08-02T04:25:38Z borei quit (Ping timeout: 255 seconds) 2017-08-02T04:29:27Z ``Erik quit (Ping timeout: 260 seconds) 2017-08-02T04:35:42Z raynold quit (Quit: Connection closed for inactivity) 2017-08-02T04:36:39Z terpri joined #lisp 2017-08-02T04:38:17Z ``Erik joined #lisp 2017-08-02T04:40:32Z glamas joined #lisp 2017-08-02T04:40:34Z glamas quit (Remote host closed the connection) 2017-08-02T04:41:12Z glamas joined #lisp 2017-08-02T04:45:40Z glamas quit (Ping timeout: 260 seconds) 2017-08-02T04:47:42Z glamas joined #lisp 2017-08-02T04:50:52Z pjb joined #lisp 2017-08-02T04:54:52Z glamas quit (Remote host closed the connection) 2017-08-02T05:02:27Z nsrahmad quit (Quit: Leaving) 2017-08-02T05:05:28Z ``Erik_ joined #lisp 2017-08-02T05:07:07Z ``Erik quit (Ping timeout: 246 seconds) 2017-08-02T05:08:08Z damke joined #lisp 2017-08-02T05:10:03Z damke_ quit (Ping timeout: 268 seconds) 2017-08-02T05:10:10Z Amplituhedron joined #lisp 2017-08-02T05:13:35Z Bock joined #lisp 2017-08-02T05:14:35Z pjb quit (Ping timeout: 246 seconds) 2017-08-02T05:14:44Z damke_ joined #lisp 2017-08-02T05:15:36Z damke quit (Ping timeout: 268 seconds) 2017-08-02T05:19:01Z someone_ joined #lisp 2017-08-02T05:21:01Z mishoo joined #lisp 2017-08-02T05:21:53Z damke joined #lisp 2017-08-02T05:24:14Z damke_ quit (Ping timeout: 268 seconds) 2017-08-02T05:31:48Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-02T05:33:53Z nsrahmad joined #lisp 2017-08-02T05:35:52Z nsrahmad quit (Client Quit) 2017-08-02T05:37:34Z Karl_Dscc joined #lisp 2017-08-02T05:38:36Z Bock quit (Remote host closed the connection) 2017-08-02T05:40:16Z damke quit (Ping timeout: 268 seconds) 2017-08-02T05:40:50Z Bock joined #lisp 2017-08-02T05:44:32Z ryanwatkins joined #lisp 2017-08-02T05:45:44Z stylewarning: More lisp 2017-08-02T05:45:57Z beach: Working on it. 2017-08-02T05:46:38Z jameser quit (Remote host closed the connection) 2017-08-02T05:46:52Z stylewarning: beach is the Donald Knuth of Lisp 2017-08-02T05:46:53Z someone_: Is Lisp best programming language for AI ? 2017-08-02T05:47:23Z beach: someone_: Obviously, since it's the best programming language for just about everything. 2017-08-02T05:47:42Z stylewarning: graphics engines, font engines, compilers for font engines, compilers for compilers 2017-08-02T05:47:43Z jameser joined #lisp 2017-08-02T05:48:04Z beach: There is a famous quotation for that. Maybe by Pitman. 2017-08-02T05:49:05Z stylewarning: Yes by him 2017-08-02T05:49:29Z nsrahmad joined #lisp 2017-08-02T05:49:51Z someone_: OK, I will learn it , but Is it better than python ? 2017-08-02T05:49:53Z beach: http://www.nhplace.com/kent/quoted.html 2017-08-02T05:50:00Z beach: Second quotation. 2017-08-02T05:50:22Z beach: someone_: This channel is dedicated to Common Lisp so you won't get an unbiased answer here. 2017-08-02T05:50:42Z shka_: eeeeeee why not? 2017-08-02T05:50:43Z shka_: :D 2017-08-02T05:50:44Z stylewarning: Common Lisp has implemented in it Python with CL-PYTHON 2017-08-02T05:51:00Z shka_: someone_: AI is umbrella term 2017-08-02T05:51:05Z stylewarning: and linkage to Python with BURGLED-BATTERIES 2017-08-02T05:51:38Z shka_: it covers everything: decisions trees, statistical learning, neural networks, SVM etc. 2017-08-02T05:51:45Z shka_: all sort of stuff 2017-08-02T05:52:15Z someone_: Ok, thanks 2017-08-02T05:52:19Z someone_ left #lisp 2017-08-02T05:52:22Z shka_: but as beach said, lisp is awesome for all sorts of things 2017-08-02T05:52:37Z shka_: and you can actually maintain lisp code base :P 2017-08-02T05:52:50Z beach: shka_: someone_ left. 2017-08-02T05:52:59Z shka_: curses! 2017-08-02T05:53:13Z shka_: i couldn't even start to complain about python 2017-08-02T05:53:18Z shka_: python, python 2017-08-02T05:53:24Z shka_: you are such a disgrace 2017-08-02T05:53:44Z beach: I try to avoid complaining about things I know little or nothing about. 2017-08-02T05:53:44Z vlatkoB joined #lisp 2017-08-02T05:53:50Z beach: I think that makes me highly unusual. 2017-08-02T05:54:16Z shka_: i wish i didn't knew about practice of python programming 2017-08-02T05:55:22Z glamas joined #lisp 2017-08-02T05:56:21Z damke joined #lisp 2017-08-02T05:57:49Z beach: I can't think of any topic I wish I didn't know anything about. 2017-08-02T05:59:24Z flamebeard joined #lisp 2017-08-02T05:59:44Z glamas quit (Ping timeout: 246 seconds) 2017-08-02T06:01:57Z shka_: beach: it is not about knowledge, it is about how it is obtained ;-) 2017-08-02T06:02:19Z beach: I see. I take it, the process was traumatic. 2017-08-02T06:04:15Z shka_: well, it still is 2017-08-02T06:04:26Z beach: Sorry to hear that. 2017-08-02T06:04:53Z shka_: and lack of backward compatibility is huge problem 2017-08-02T06:04:56Z damke quit (Ping timeout: 268 seconds) 2017-08-02T06:05:24Z shka_: everything in the land of python has half life time 2017-08-02T06:05:30Z vtomole quit (Ping timeout: 260 seconds) 2017-08-02T06:05:35Z shka_: it is actually hilarious 2017-08-02T06:05:42Z damke joined #lisp 2017-08-02T06:06:10Z Amplituhedron quit (Ping timeout: 268 seconds) 2017-08-02T06:06:42Z glamas joined #lisp 2017-08-02T06:07:34Z shifty joined #lisp 2017-08-02T06:09:53Z oleo quit (Quit: irc client terminated!) 2017-08-02T06:12:35Z Amplituhedron joined #lisp 2017-08-02T06:13:28Z Karl_Dscc quit (Remote host closed the connection) 2017-08-02T06:14:44Z mishoo quit (Ping timeout: 240 seconds) 2017-08-02T06:15:26Z Murii joined #lisp 2017-08-02T06:17:39Z jackdaniel: gilberth: it's a pleasure to meet you :) 2017-08-02T06:17:49Z jackdaniel: you may be interested in joining #clim channel 2017-08-02T06:17:54Z Amplituhedron quit (Remote host closed the connection) 2017-08-02T06:20:32Z Shinmera: Good morning everyone. 2017-08-02T06:20:40Z jackdaniel: o/ 2017-08-02T06:21:05Z Shinmera: Nothing like waking up sleep deprived to bug reports. 2017-08-02T06:22:25Z shka_: Shinmera: i hope you will get to sleep soon :-) 2017-08-02T06:23:33Z Shinmera: Well I did sleep, just not enough. 2017-08-02T06:24:04Z Shinmera: Couldn't get back to dreaming, so I got up and was greeted by the fact that AMD drivers don't conform to the GLSL spec. 2017-08-02T06:24:21Z Shinmera: But anyway, that's not lisp relevant. 2017-08-02T06:25:05Z whoman quit (Remote host closed the connection) 2017-08-02T06:28:58Z mishoo joined #lisp 2017-08-02T06:30:12Z shka_ quit (Ping timeout: 260 seconds) 2017-08-02T06:38:33Z Amplituhedron joined #lisp 2017-08-02T06:41:40Z raydeejay_ quit (Ping timeout: 260 seconds) 2017-08-02T06:43:38Z safe quit (Read error: Connection reset by peer) 2017-08-02T06:44:54Z pillton: jackdaniel: I made a fix for that @libdir@ issue in ECL. 2017-08-02T06:45:29Z jackdaniel: pillton: is that this comment in the issue? 2017-08-02T06:45:35Z pillton: Yeah. 2017-08-02T06:45:50Z glamas quit (Ping timeout: 240 seconds) 2017-08-02T06:45:59Z jackdaniel: thanks! I still have to apply it locally and try building 2017-08-02T06:48:01Z pillton: It took a while to find. I'm not entirely sure it is the right thing to do since the text '@libdir@' does not appear in that file in the first place. 2017-08-02T06:48:26Z glamas joined #lisp 2017-08-02T06:49:18Z pillton: Anyway, I'll wait for your response when you get the time. 2017-08-02T06:49:19Z jackdaniel: I'll take a closer look. autotools are awful, but tbh I haven't found *any* real alternative 2017-08-02T06:49:38Z jackdaniel: I'll be in a train today for a few hours, I'll probably take a look then 2017-08-02T06:50:34Z pillton: Sure. No hurry. 2017-08-02T06:50:44Z jackdaniel: :) 2017-08-02T06:50:52Z jackdaniel: I need to pack now, see you around 2017-08-02T06:50:58Z jackdaniel: thanks for taking time to fix it 2017-08-02T06:51:00Z pillton: See you. 2017-08-02T06:51:03Z pillton: No problem. 2017-08-02T06:52:10Z damke quit (Ping timeout: 258 seconds) 2017-08-02T06:53:05Z whoman joined #lisp 2017-08-02T06:54:03Z damke joined #lisp 2017-08-02T07:01:41Z nirved joined #lisp 2017-08-02T07:02:33Z damke_ joined #lisp 2017-08-02T07:03:08Z test1600 joined #lisp 2017-08-02T07:04:45Z damke quit (Ping timeout: 268 seconds) 2017-08-02T07:06:50Z jack_rabbit quit (Ping timeout: 240 seconds) 2017-08-02T07:12:34Z varjag joined #lisp 2017-08-02T07:15:39Z https_GK1wmSU joined #lisp 2017-08-02T07:16:12Z https_GK1wmSU left #lisp 2017-08-02T07:17:24Z nsrahmad quit (Quit: Leaving) 2017-08-02T07:18:16Z knobo quit (Ping timeout: 260 seconds) 2017-08-02T07:23:50Z jack_rabbit joined #lisp 2017-08-02T07:23:51Z redeemed joined #lisp 2017-08-02T07:32:02Z varjag quit (Ping timeout: 260 seconds) 2017-08-02T07:32:35Z damke joined #lisp 2017-08-02T07:34:58Z damke_ quit (Ping timeout: 268 seconds) 2017-08-02T07:35:16Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T07:37:01Z knobo joined #lisp 2017-08-02T07:41:28Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-02T07:42:58Z MrBusiness quit (Quit: https://www.youtube.com/watch?v=xIIqYqtR1lY -- Suicide is Painless - Johnny Mandel) 2017-08-02T07:45:07Z scymtym joined #lisp 2017-08-02T07:47:21Z Harag joined #lisp 2017-08-02T07:47:37Z jameser joined #lisp 2017-08-02T07:48:08Z hajovonta joined #lisp 2017-08-02T07:50:05Z MrBusiness joined #lisp 2017-08-02T07:50:38Z Harag: I am pretty printing stuff to a file strings print fined but a string formed by format is of type simple base string but that pretty prints like #A((19) BASE-CHAR . "some string")...anybody know what I can do to get it to print just "some-string" 2017-08-02T07:51:23Z phoe: Harag: what does your format control look like? 2017-08-02T07:51:32Z phoe: I mean - how are you printing it? 2017-08-02T07:51:48Z jameser quit (Ping timeout: 240 seconds) 2017-08-02T07:53:48Z Harag: phoe: pprint 2017-08-02T07:54:16Z Harag: the format is just "~A" 2017-08-02T07:54:57Z phoe: Harag: what is your Lisp implementation? 2017-08-02T07:55:02Z Harag: sbcl 2017-08-02T07:55:13Z phoe: can you give me a sample of your code that does this? 2017-08-02T07:56:12Z Harag: give me a moment to hack something together 2017-08-02T07:56:36Z jamtho joined #lisp 2017-08-02T07:56:55Z glamas quit (Remote host closed the connection) 2017-08-02T08:01:10Z antoszka: Harag: why would you pprint things formed by format? 2017-08-02T08:01:24Z antoszka: Sounds superflouous to me. 2017-08-02T08:02:01Z Shinmera: Presumably he wants to pprint a larger structure to a file and the format string is part of that structure. 2017-08-02T08:02:25Z Harag: antoszka: that format is a small bit of what gets written to file 2017-08-02T08:02:30Z antoszka: OK. 2017-08-02T08:03:01Z glamas joined #lisp 2017-08-02T08:03:21Z gravicappa joined #lisp 2017-08-02T08:03:28Z varjag joined #lisp 2017-08-02T08:03:42Z phoe: Do any of the libraries have a utility that creates an N-argument function that ignores its arguments? 2017-08-02T08:03:54Z Harag: phoe: if I simplify the code I don't get the #A((00) BASE-CHAR . "whatever") i just get "whatever" so it might be because of the structure of the other stuff around the "whatever" 2017-08-02T08:04:10Z phoe: Something like (null-lambda 5) ;=> #'(lambda (x1 x2 x3 x4 x5) (declare (ignore x1 x2 x3 x4 x5))) 2017-08-02T08:04:40Z Shinmera: phoe: Why does it need to have a specific number of arguments? 2017-08-02T08:05:09Z phoe: Shinmera: good question. Actually now that I think of it, it can have just a &rest 2017-08-02T08:05:15Z Shinmera: just use CONSTANTLY 2017-08-02T08:05:25Z phoe: ooh. Exactly what I need. 2017-08-02T08:07:29Z glamas quit (Ping timeout: 248 seconds) 2017-08-02T08:10:01Z jameser joined #lisp 2017-08-02T08:11:48Z kora9: Are there any games popular around here written in CL? 2017-08-02T08:12:35Z phoe: kora9: ask around #lispgames 2017-08-02T08:12:43Z glamas joined #lisp 2017-08-02T08:12:44Z phoe: they're a pretty alive community 2017-08-02T08:13:25Z glamas quit (Remote host closed the connection) 2017-08-02T08:14:48Z kora9: Oh right, I've been there already! They're nice people. Completely forgot :) 2017-08-02T08:15:06Z shka: very nice 2017-08-02T08:15:08Z Shinmera: kora9: Not popular by any means but I just finished one the other day. https://ldjam.com/events/ludum-dare/39/rush 2017-08-02T08:15:37Z https_GK1wmSU joined #lisp 2017-08-02T08:15:44Z kora9: Shinmera, cool! :) 2017-08-02T08:16:12Z https_GK1wmSU left #lisp 2017-08-02T08:16:22Z phoe: What is the default :TEST for SET-DIFFERENCE? 2017-08-02T08:16:26Z phoe: clhs set-difference 2017-08-02T08:16:26Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_set_di.htm 2017-08-02T08:16:34Z Harag: phoe: ok so the issue is when I retrieve a string from an object slot to build the stuff in the format...crazy 2017-08-02T08:16:49Z Harag: phoe: http://paste.lisp.org/+7JTX 2017-08-02T08:17:06Z JohnTalent: Shinmera: very nice! good work! 2017-08-02T08:17:16Z JohnTalent: Shinmera: What do you use to package binaries? 2017-08-02T08:17:28Z Shinmera: JohnTalent: https://github.com/Shinmera/deploy 2017-08-02T08:17:49Z Shinmera: Our engine has a hook to deploy the assets along into the package. 2017-08-02T08:17:57Z phoe: Harag: cannot confirm, ~/print-test.log on my machine contains twice "admin@my-system.com" 2017-08-02T08:18:08Z Shinmera: https://github.com/Shirakumo/trial/blob/master/deploy.lisp 2017-08-02T08:18:08Z damke quit (Ping timeout: 268 seconds) 2017-08-02T08:18:13Z phoe: what is your SBCL version? mine is 1.3.14.debian 2017-08-02T08:18:37Z araujo_ joined #lisp 2017-08-02T08:18:52Z Harag: phoe: sbcl-1.3.19-x86-64-linux 2017-08-02T08:19:08Z phoe: ...not twice - sorry, I ran the test function twice 2017-08-02T08:19:12Z glamas joined #lisp 2017-08-02T08:19:18Z phoe: is it a regression? I don't know - let me upgrade my SBCL 2017-08-02T08:19:29Z kora9: Shinmera, can't seem to unzip that linux64 zip. What'd you use to create it? 2017-08-02T08:20:28Z Shinmera: kora9: Uh, whatever nemo does when you choose compress. `unzip` works fine for me though. 2017-08-02T08:20:32Z phoe: Harag: d'oh, debian has 1.3.14.debian stuck in sid. let me download. 2017-08-02T08:20:40Z Shinmera: Might want to verify that the file downloaded properly though 2017-08-02T08:20:52Z Shinmera: I've had cases where people have had trouble downloading releases from github fully. 2017-08-02T08:21:10Z JohnTalent: Shinmera: Very cool. You made your own deploy. I'm just getting back into lisp after 10 years of not. It certainly is a timeless language. 2017-08-02T08:21:34Z damke joined #lisp 2017-08-02T08:21:42Z Shinmera: Welcome back :) 2017-08-02T08:22:24Z phoe: Harag: this is a regression. 2017-08-02T08:22:25Z araujo quit (Ping timeout: 248 seconds) 2017-08-02T08:22:45Z Shinmera: phoe: It's not actually wrong to print strings like that though. 2017-08-02T08:22:51Z phoe: on 1.3.14.debian this worked properly, on 1.3.20 I get what you are speaking of. 2017-08-02T08:23:14Z JohnTalent: Shinmera: ty! :) 2017-08-02T08:23:14Z glamas quit (Ping timeout: 240 seconds) 2017-08-02T08:23:21Z glamas joined #lisp 2017-08-02T08:23:30Z phoe: Shinmera: I know, but this isn't really "pretty printing" now that I think of it. 2017-08-02T08:23:56Z Shinmera: phoe: Prettiness is in the eye of the beholder 2017-08-02T08:24:09Z kora9: Shinmera, that's odd, it's what I use too. I'll try re-downloading it 2017-08-02T08:24:23Z phoe: Shinmera: ... 2017-08-02T08:24:26Z Shinmera: I wish github served checksums automatically. 2017-08-02T08:24:40Z phoe: Thank goodness for #lispcafe. 2017-08-02T08:25:02Z kora9: What's the difference between lispworks and sbcl? I've read many people are very fond of lispworks 2017-08-02T08:25:14Z Shinmera: lispworks costs a lot of buckerinoes. 2017-08-02T08:25:16Z phoe: kora9: lispworks is commercial. 2017-08-02T08:25:37Z kora9: Oh. What does it do that makes it worth it? 2017-08-02T08:25:52Z Shinmera: same as every commercial tool: for the most part it's the support. 2017-08-02T08:26:07Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T08:26:08Z ebzzry quit (Ping timeout: 240 seconds) 2017-08-02T08:26:25Z Shinmera: if I remember correctly it also has a cross-platform gui toolkit built in along other goodies. 2017-08-02T08:26:32Z lvo joined #lisp 2017-08-02T08:27:45Z jamtho quit (Ping timeout: 248 seconds) 2017-08-02T08:28:14Z Harag: phoe: thanx, thought I was mucking something up, the files get read by lisp again at this stage so I can live with it for now.... 2017-08-02T08:29:12Z kora9: Shinmera: Ah. I was wondering about lisp and cross-platform stuff. By the way, I re-downloaded the zip, I think that I got an incomplete download because it unzips fine nnow 2017-08-02T08:29:12Z Shinmera: Harag: you can make your own pretty print dispatch table and overwrite the string printer to produce the format you want. 2017-08-02T08:29:35Z kora9: I might have been too quick to switch to unzip after clicking download too :) 2017-08-02T08:29:51Z dan quit (Ping timeout: 268 seconds) 2017-08-02T08:30:15Z jameser joined #lisp 2017-08-02T08:30:46Z Shinmera: Now let's hope it actually runs, too 2017-08-02T08:31:10Z Harag: Shinmera: not something I want to fiddle with I got enough other code to write ;) 2017-08-02T08:31:16Z aindilis quit (Ping timeout: 276 seconds) 2017-08-02T08:31:55Z Shinmera: Harag: https://github.com/Shinmera/ubiquitous/blob/master/storage.lisp#L139 2017-08-02T08:32:00Z jamtho joined #lisp 2017-08-02T08:32:20Z macdavid_ quit (Remote host closed the connection) 2017-08-02T08:32:37Z kora9: Shinmera, Runs! It's a bit slow on my intel hd4000 but it runs fine :) 2017-08-02T08:32:39Z macdavid313 joined #lisp 2017-08-02T08:32:44Z Shinmera: Just remembered that I stumbled on the same issue back when I wrote ubiquitous 2017-08-02T08:33:04Z Shinmera: kora9: Great! Yeah, optimisation is a far away target unfortunately. 2017-08-02T08:33:43Z kora9: Shinmera, Making game stuff run fast seems to be very difficult 2017-08-02T08:33:47Z kora9: on an engine level I mean 2017-08-02T08:34:14Z kora9: Unless you're john carmack :) 2017-08-02T08:34:31Z Shinmera: It is. There's a whole lot of different things to worry about. 2017-08-02T08:35:11Z Harag: Shinmera: thanx will have a look sometime when I got my deadlines of out of the way 2017-08-02T08:36:41Z karswell_ quit (Remote host closed the connection) 2017-08-02T08:36:50Z kora9: Shinmera, I've always wondered, in game engines it seems the ones that are pushing the boundaries (unreal etc) are using in-line assembler along with whatever language it is they use in some areas to increase performance. I've also read that Naughty dog used GOOL/GOAL which was lisp mixed with assembler somehow. How does that work in Lisp? Writing in-line assembler 2017-08-02T08:37:29Z Shinmera: kora9: Your message seems to have cut off after "Writing in-line assembler" 2017-08-02T08:37:44Z karswell_ joined #lisp 2017-08-02T08:38:04Z kora9: Shinmera: Ah, no that's the end. I meant to clarify how writing in-line assembler works in Lisp (if at all) 2017-08-02T08:38:22Z Shinmera: Well it doesn't in the standard. The standard doesn't know anything about assembly. 2017-08-02T08:38:45Z Shinmera: Implementations like SBCL might allow extensions through VOPs and transforms, but it's very involved. 2017-08-02T08:39:13Z Shinmera: If you really need that kind of deal for some reason you're probably better off writing the assembly as a static/shared library and calling into that through the C interface. 2017-08-02T08:39:25Z kora9: Ah, do you know if there's a description of how GOOL/GOAL worked? I'm not likely to need it, or know how to use Lisp on that level, I'm just curious as to how experienced Lispers went about that 2017-08-02T08:39:51Z kora9: Ah. CL has a C interface? CFFI? 2017-08-02T08:40:02Z Shinmera: CL does not, but every respectable implementation does. 2017-08-02T08:40:09Z Shinmera: CFFI is the wrapper to use, yes. 2017-08-02T08:40:24Z Shinmera: As for GOAL, there's nothing more out there than that one blog entry that talks about how it existed. 2017-08-02T08:40:31Z kora9: Ah, that confused me a bit until I realized that sbcl isn't == common lisp 2017-08-02T08:41:00Z kora9: Shinmera: That's a shame. It was very interesting 2017-08-02T08:41:15Z Shinmera: Well, it was a company internal thing. It's no surprise that it's not public. 2017-08-02T08:41:40Z kora9: Aye, I just meant that it'd be cool if they wrote a bit more about it since it's old now 2017-08-02T08:41:48Z scymtym quit (Ping timeout: 260 seconds) 2017-08-02T08:41:54Z kora9: Do they still use GOAL/GOOL/Lisp do you think? 2017-08-02T08:42:13Z Shinmera: Probably can't without talking to legal departments and I wouldn't be surprised if the people involved have moved on from the company as well. 2017-08-02T08:42:16Z Shinmera: So: not worth the effort. 2017-08-02T08:42:24Z kora9: Oh, right. 2017-08-02T08:47:47Z dan1 joined #lisp 2017-08-02T08:48:02Z damke_ joined #lisp 2017-08-02T08:50:46Z damke quit (Ping timeout: 246 seconds) 2017-08-02T08:56:59Z solyd joined #lisp 2017-08-02T08:57:28Z damke joined #lisp 2017-08-02T08:57:29Z solyd quit (Client Quit) 2017-08-02T08:57:40Z jamtho quit (Ping timeout: 260 seconds) 2017-08-02T08:59:40Z phoe: Perhaps not the most lispy question in the world, but. 2017-08-02T09:00:11Z phoe: I have some code which uses postmodern for PostgreSQL backend. How do I test it? Should I create a new database exclusively for tests that mirrors the original one's structure, and test on that? 2017-08-02T09:00:40Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T09:00:41Z damke_ quit (Ping timeout: 268 seconds) 2017-08-02T09:00:57Z Shinmera: That's one way. 2017-08-02T09:01:29Z Shinmera: Another is to stub out all functions that directly interface with the db in some way. 2017-08-02T09:02:15Z Shinmera: Since testing the database interface itself is not really useful for your application. 2017-08-02T09:03:07Z phoe: Correct - but I'd also like to test my SQL. But then, I guess I can test the application logic separately, and test the SQL separately. 2017-08-02T09:03:16Z phoe: And perhaps later make a bigger integration test. 2017-08-02T09:04:34Z Shinmera: Arguably if your SQL is big enough to warrant testing, you should set up tests for that with the database directly, rather than in your application. 2017-08-02T09:04:56Z jameser joined #lisp 2017-08-02T09:05:06Z phoe: Can one write SQL tests in SQL? Should one? 2017-08-02T09:05:32Z phoe: I'm actually thinking of testing the SQL's output once it passes through postmodern. 2017-08-02T09:05:49Z Shinmera: you can just invoke psql with a query and compare the output. 2017-08-02T09:06:09Z Shinmera: Don't know if postgres has integrated testing routines or something like that. Never had a need for it. 2017-08-02T09:06:26Z phoe: psql will return me some text. postmodern will return me semistructured Lisp data. 2017-08-02T09:06:33Z phoe: I find it much easier to test the second one. 2017-08-02T09:07:08Z Shinmera: It's just a comparison either way. 2017-08-02T09:07:10Z nsrahmad joined #lisp 2017-08-02T09:07:32Z phoe: Yes, but comparing semistructured data is much easier for me. 2017-08-02T09:07:41Z phoe: But let me google a bit more. 2017-08-02T09:07:45Z Shinmera: string/= is not good enough for you? 2017-08-02T09:08:39Z scymtym joined #lisp 2017-08-02T09:08:52Z phoe: Is, but eh. I'll rather have the test results tell me "element X should be/should not be in the result" rather than "string= for two big-ass strings failed somewhere, go find out where" 2017-08-02T09:09:36Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T09:09:56Z Shinmera: If you do that then it might not be your query being wrong but just your data. Be wary. 2017-08-02T09:10:50Z phoe: Regardless of whether it's wrong data or wrong query, something will stink, and I'll have the first suspect handed to me. 2017-08-02T09:13:08Z kora9: Are there any more interactive lisp tutorials other than google's lisp-koans? I really enjoyed those, but I did them now 2017-08-02T09:13:39Z Shinmera: PCL has 'practicals' that you're supposed to follow along with if that's what you mean 2017-08-02T09:13:52Z phoe: kora9: think of the application that you want to write, then start writing it and ask any questions you might have along the way. 2017-08-02T09:14:00Z kora9: Shinmera: Aye, I did those too :) 2017-08-02T09:14:15Z kora9: Although I haven't understood all of it, to be clear. I need to study that book in more detail 2017-08-02T09:14:17Z Shinmera: PAIP has interesting programs to write if you want some old school AI 2017-08-02T09:15:17Z Shinmera: Land of Lisp has a bunch of little games and such. 2017-08-02T09:15:36Z Shinmera: And otherwise, yeah, just write some stuff that you're interested in / need on your own. 2017-08-02T09:15:43Z kora9: phoe: Aye. I've started doing that-ish with hunchentoot. I'm also thinking that I might write a guide to Lisp, as a way to learn Lisp. Not necessarily one to publish for other people to learn from, but it usually requires a lot of research to explain things well and I'd learn a lot from that 2017-08-02T09:15:55Z kora9: Shinmera: PAIP? 2017-08-02T09:16:01Z phoe: mingus: tell kora9 about paip 2017-08-02T09:16:08Z Shinmera: Paradigms of Artificial Intelligence Programming 2017-08-02T09:16:09Z phoe: minion: tell kora9 about paip 2017-08-02T09:16:09Z minion: kora9: paip: Paradigms of Artificial Intelligence Programming 2017-08-02T09:16:12Z phoe: d'oh 2017-08-02T09:16:14Z phoe: mingus: sorry 2017-08-02T09:16:17Z kora9: Ah, cool, haven't heard of that one before 2017-08-02T09:16:52Z phoe: kora9: it's generally a good approach - if you can explain it to others, you understand it yourself 2017-08-02T09:17:17Z kora9: phoe: Yeah, richard feynman said something about if explaining and children :) 2017-08-02T09:17:50Z phoe: the inverse also holds true surprisingly often 2017-08-02T09:17:58Z Shinmera: I just get mad at stuff and at the end of the day I have a program 2017-08-02T09:18:05Z tetero: kora9: "If you can't explain it to a six year old, you don't really understand it", then again.. Paul Dirac.. 2017-08-02T09:18:07Z Shinmera: Usually it's worse than what I got mad at, but hey 2017-08-02T09:18:17Z phoe: (incf tetero) 2017-08-02T09:18:34Z kora9: :D 2017-08-02T09:18:39Z Shinmera: I don't really like that quote. 2017-08-02T09:18:48Z kora9: Why not? 2017-08-02T09:19:00Z Shinmera: Because some things just are inherently complicated even if you understand them well. 2017-08-02T09:19:09Z phoe: and/or complex 2017-08-02T09:19:37Z tetero: Shinmera: Feynman did concede that he couldn't explain some things in a lecture.. I can't really recall which, to which he added "I guess that means I don't understand it well" :) 2017-08-02T09:20:21Z tetero: Shinmera: The thing about Feynman is that he was very adept at explaining things. Same goes for Einstein. Then there are people like Paul Dirac whose work is mostly incomprehensible to anyone other than Dirac, yet it's verifiably correct 2017-08-02T09:20:28Z Shinmera shrugs. Any kind of claim that amounts to "all" or "none" is usually wrong. 2017-08-02T09:21:04Z tetero: Shinmera: Isn't that a paradox? :) 2017-08-02T09:21:14Z Shinmera: No, because I said "usually" 2017-08-02T09:21:18Z tetero: Ah 2017-08-02T09:21:30Z FakePedro quit (Remote host closed the connection) 2017-08-02T09:21:45Z tetero: I'm not really invested in the quote, but I like it as a rule of thumb for a lot of things 2017-08-02T09:22:01Z Shinmera: Sure. Explaining things to others is a good way of checking that you understand it. 2017-08-02T09:22:06Z Shinmera: I just don't like the six-year-old part. 2017-08-02T09:23:00Z tetero: I'm not sure that it's supposed to be taken literally 2017-08-02T09:23:08Z Lowl3v3l joined #lisp 2017-08-02T09:23:09Z phoe: but it might be 2017-08-02T09:23:10Z tetero: Feynman was pretty easy going, and very humorous 2017-08-02T09:23:33Z Shinmera: It implies that you have a limited amount of time to explain and a person who is not fully perceptive. 2017-08-02T09:23:49Z FakePedro joined #lisp 2017-08-02T09:23:57Z tetero: No one can fully perceive quantum physics :) 2017-08-02T09:24:03Z Shinmera: I have issue even if it's not to be taken literally. 2017-08-02T09:24:08Z phoe: Harag: http://paste.lisp.org/display/352297 2017-08-02T09:24:08Z Liu quit (Remote host closed the connection) 2017-08-02T09:24:14Z tetero: Might be easier for children since they're less informed on classical physics 2017-08-02T09:24:29Z Liu joined #lisp 2017-08-02T09:24:45Z Shinmera: We're really getting off topic here. 2017-08-02T09:25:01Z tetero: Ha, true. Sorry, I'm a physics geek and someone namedropped feynman :) 2017-08-02T09:25:12Z kora9: I did :P 2017-08-02T09:26:06Z phoe: 10:23 < phoe> Thank goodness for #lispcafe. 2017-08-02T09:27:21Z tetero: phoe: Is that the OT channel? 2017-08-02T09:27:55Z phoe: tetero: yes. 2017-08-02T09:28:17Z phoe: a general chillout zone for lisperati. 2017-08-02T09:31:00Z glamas quit (Remote host closed the connection) 2017-08-02T09:31:01Z defaultxr quit (Ping timeout: 246 seconds) 2017-08-02T09:32:46Z Harag: phoe: *print-readably* makes no diff in my test, maybe its just easier to cast between types, I am using my own format function so it will be easy to implement 2017-08-02T09:33:00Z phoe: Harag: if anything, feel free to join #sbcl and continue the discussion 2017-08-02T09:37:11Z jameser joined #lisp 2017-08-02T09:37:56Z Harag: phoe: thanx 2017-08-02T09:38:22Z tfeb joined #lisp 2017-08-02T09:38:51Z kora9: I can only buy one of the books this month, Land of Lisp or PAIP - which do you recommend I start with? 2017-08-02T09:39:45Z kora9: I found a freely (legally) redistributable copy of the old version of Common Lisp - A Gentle introduction.. so I have that 2017-08-02T09:40:26Z glamas joined #lisp 2017-08-02T09:40:46Z damke quit (Ping timeout: 268 seconds) 2017-08-02T09:41:38Z Shinmera: I never read LoL so I can't say anything about it. PAIP is very good and interesting just as an old AI book. The caveat is that it is very old, and some of the kinks in the code style it uses are considered outdated by now. 2017-08-02T09:41:49Z damke joined #lisp 2017-08-02T09:42:09Z hajovonta: Land of Lisp introduces you to CL programming through writing games 2017-08-02T09:42:12Z hajovonta: it's a fun book 2017-08-02T09:42:45Z shka: land of lisp is fine 2017-08-02T09:43:04Z shka: PAIP is a less accessible 2017-08-02T09:43:08Z JohnTalent quit (Quit: leaving) 2017-08-02T09:44:25Z shka: but worth reading, that's for sure 2017-08-02T09:45:22Z glamas quit (Ping timeout: 276 seconds) 2017-08-02T09:45:36Z glamas joined #lisp 2017-08-02T09:46:56Z damke quit (Ping timeout: 268 seconds) 2017-08-02T09:47:22Z scymtym quit (Read error: Connection reset by peer) 2017-08-02T09:47:40Z scymtym joined #lisp 2017-08-02T09:48:07Z damke joined #lisp 2017-08-02T09:48:33Z kora9: It sounds like Land of Lisp might be more accessible and fun to me 2017-08-02T09:51:16Z nsrahmad quit (Quit: Leaving) 2017-08-02T09:51:39Z _death: Shinmera: what kinks are you referring to? iirc it has one or two places where you need to change names because it came out before the standard, but the style seems not at all outdated to me 2017-08-02T09:52:23Z newbee joined #lisp 2017-08-02T09:52:30Z Shinmera: _death: Using symbol plists, requiring #' before lambda, are the things I remember right now. There was some other stuff, but it's been a while since I read it. 2017-08-02T09:53:47Z kozy joined #lisp 2017-08-02T09:54:07Z kozy: is it worthy code/manual generator for parameter parsing from meta data? for example (sort field should be int and minium 3 maximum 100 .. ) so both manual, and code for parse are generated from metadata 2017-08-02T09:54:09Z Shinmera: Nothing major, mind you. 2017-08-02T09:54:12Z _death: Shinmera: I see.. yes, it used #'(lambda ...) because it was written before the lambda macro was introduced (I believe).. symbol plists, I still use that from time to time 2017-08-02T09:54:24Z tfeb quit (Remote host closed the connection) 2017-08-02T09:54:44Z tfeb joined #lisp 2017-08-02T09:55:12Z tfeb quit (Remote host closed the connection) 2017-08-02T09:57:35Z _death: kozy: a lispy notation for this is (sort :type (integer 3 100)) 2017-08-02T09:58:13Z phoe: _death: '(integer 3 100) AFAIK 2017-08-02T09:58:22Z phoe: it's a functional argument so it should be quoted 2017-08-02T09:58:30Z _death: phoe: ? 2017-08-02T09:58:48Z phoe: (sort :type '(integer 3 100)) 2017-08-02T09:59:01Z phoe: wait - you're not calling #'SORT there 2017-08-02T09:59:05Z tfeb joined #lisp 2017-08-02T09:59:13Z tfeb quit (Remote host closed the connection) 2017-08-02T09:59:17Z phoe: nevermind - I was too hasty 2017-08-02T09:59:30Z _death: phoe: it's just a notation.. whether it should be evaluated or not depends on what you need it for 2017-08-02T10:01:17Z glamas quit (Remote host closed the connection) 2017-08-02T10:04:14Z knobo quit (Ping timeout: 240 seconds) 2017-08-02T10:04:45Z kora9: : and # and #' really confuses me. As I understand it : are keys and # are vectors, but #' doesn't make sense to me. I'm guessing that's a special type of vector like #*? 2017-08-02T10:05:14Z phoe: nope. 2017-08-02T10:05:28Z phoe: let's talk about Lisp reader. 2017-08-02T10:05:56Z phoe: there are things such as macro characters, that make Lisp reader do various things. 2017-08-02T10:06:24Z phoe: like, when reading the character #\(, Lisp starts reading a list. 2017-08-02T10:06:35Z phoe: #\( is character notation in Lisp, here, representing the left-paren char. 2017-08-02T10:06:42Z phoe: #\a is small A, and so on. 2017-08-02T10:07:36Z phoe: There is a special kind of macro characters - dispatch macro characters. 2017-08-02T10:07:52Z Shinmera: # is a "dispatching macro character" it does different things depending on the one after it. #( makes a vector, #' means FUNCTION, #* means bit vector #: means uninterned symbol. 2017-08-02T10:07:56Z phoe: They were invented because there were not enough characters on a keyboard to fulfill all the macro uses. 2017-08-02T10:08:20Z kora9: Oh 2017-08-02T10:08:22Z phoe: So dispatch macro characters are effectively "double" macro characters - like Shinmera said, they do different things meaning on what comes after them. 2017-08-02T10:08:36Z phoe: There's only one standard dispatch macro character, #\# 2017-08-02T10:08:46Z zacts quit (Ping timeout: 276 seconds) 2017-08-02T10:08:51Z kora9: So \ escapes the character sort of like shells do? 2017-08-02T10:08:59Z kora9: #\# = #? 2017-08-02T10:09:18Z phoe: #\# consists of three chars. 2017-08-02T10:09:23Z loke: There are others, like #a (arrays), #b (binary numbers), #x (hex numbers), etc as well. But the coolest thing about them is that you can implement your own macro characters to extend the syntax of the the language. 2017-08-02T10:09:23Z phoe: Like, the string "#\ 2017-08-02T10:09:29Z phoe: Like, the string "#\#" consits of three chars. 2017-08-02T10:09:51Z phoe: When Lisp reads the first #, it understands that there's going to be a dispatch macro happening. 2017-08-02T10:09:59Z phoe: So it reads the second character, \. 2017-08-02T10:10:06Z loke: kora9: #\ is not escape... The sequence # followed by blackslash is yet another machor character. 2017-08-02T10:10:14Z kora9: Aha 2017-08-02T10:10:20Z phoe: By then, it understands that there's a #\ dispatch macro going on - that is, notation for characters. 2017-08-02T10:10:33Z loke: The backslash macro character reads the following word and parses it as a character. 2017-08-02T10:10:47Z phoe: So (simplifying here) it reads yet another word and--- exactly what loke said. 2017-08-02T10:10:58Z kora9: Hmm. 2017-08-02T10:11:01Z phoe: #\# means "read # and parse it as a character" 2017-08-02T10:11:10Z phoe: That's required because #\Space is also a valid character. 2017-08-02T10:11:22Z glamas joined #lisp 2017-08-02T10:11:37Z phoe: You can type "#\ " and most Lisps will understand this the same way, but it's not really a good idea. 2017-08-02T10:12:11Z newbee quit (Quit: Page closed) 2017-08-02T10:12:17Z kora9: There are chapters on macros in the books I have, but this is one of the concepts that I find very hard to wrap my head around at the moment 2017-08-02T10:12:25Z phoe: Reader macros *ARE* hard. 2017-08-02T10:12:27Z phoe: Don't worry about them. 2017-08-02T10:12:32Z phoe: Understand functions first. 2017-08-02T10:12:35Z phoe: Then try macros. 2017-08-02T10:12:42Z loke: Most CL implementations allows Unicode names in their #\ expansion... Thus, you can do stuff like #\GRINNING_FACE_WITH_SMILING_EYES 2017-08-02T10:12:42Z phoe: Then try understanding the reader. 2017-08-02T10:12:51Z kora9: Ah, yeah that's what I figured. It seems like something that I shouldn't be writing without knowing what I'm doing to begin with 2017-08-02T10:12:54Z phoe: Then try understanding reader macros, and then dispatch reader macros. 2017-08-02T10:13:14Z phoe: This stuff is complex. It's best to start at the basics to try and get a grasp on it. 2017-08-02T10:13:34Z kora9: Will do :) Thanks for your explanation though, it was very thorough 2017-08-02T10:13:46Z phoe: You can try treating them as magic stuff for now. 2017-08-02T10:14:02Z loke: It's a faschinating subject, and one of the things that makes Lisp unique. 2017-08-02T10:14:15Z phoe: #'foo means "function foo", #(1 2 3) means "a vector containing 1, 2 and 3", #:bar means "an uninterned symbol with name BAR", and so on. 2017-08-02T10:14:32Z _death: likely when you get to reading On Lisp you'll read about reader macros and go through a phase of abusing them 2017-08-02T10:14:35Z kora9: uninterned? 2017-08-02T10:14:41Z phoe: oh boy, here we go again~ 2017-08-02T10:14:46Z kora9: Sorry :P 2017-08-02T10:14:59Z phoe: kora9: http://www.flownet.com/gat/packages.pdf 2017-08-02T10:15:01Z kora9: _death: Yes I have the older version of that, I'm going to read it after land of lisp 2017-08-02T10:15:01Z phoe: no, no problem 2017-08-02T10:15:05Z phoe: I expected you to ask this question. 2017-08-02T10:15:24Z tetero: phoe: Haha, the title. That's for me :) 2017-08-02T10:16:03Z phoe: tl;dr there are packages, which are groupings of symbols. a symbol can have a "home" package, exactly one. uninterned symbols are the ones that do not have a home package. 2017-08-02T10:16:04Z glamas quit (Ping timeout: 260 seconds) 2017-08-02T10:16:10Z phoe: effectively, they're homeless symbols. 2017-08-02T10:16:28Z phoe: which has its downsides, but also has its benefits. 2017-08-02T10:16:40Z yeticry_ joined #lisp 2017-08-02T10:16:45Z yeticry quit (Read error: Connection reset by peer) 2017-08-02T10:17:34Z solyd joined #lisp 2017-08-02T10:18:06Z tetero: Ah. I'm reading though, it's good 2017-08-02T10:18:30Z phoe: tetero: it's the article that I learned packages from. 2017-08-02T10:18:31Z _death: when the reader reads "#:foo" it always creates a new symbol with name "FOO" (by default) that does not belong to any package 2017-08-02T10:18:46Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T10:19:21Z tetero: phoe: Yeah I thought it'd be a joke at first, but it's actually explaining things well I think 2017-08-02T10:19:38Z phoe: yes, so (eq '#:foo '#:foo) will always return NIL - they're created as two different, separate objects during read-time, so at evaluation-time, this EQ returns false. 2017-08-02T10:20:39Z kora9: How can it create two new symbols with the same name that doesn't belong to any package in the case of (eq '#:foo '#:foo)? 2017-08-02T10:20:46Z phoe: huh, simply 2017-08-02T10:20:54Z phoe: (eq (make-symbol "FOO") (make-symbol "FOO")) 2017-08-02T10:21:04Z phoe: that's roughly the same thing 2017-08-02T10:21:06Z _death: kora9: symbols are full-fledged objects with identity that's independent of their name 2017-08-02T10:21:37Z kora9: Oh so it's because the name is within their respective lexical scope so to speak? 2017-08-02T10:21:41Z phoe: nope. 2017-08-02T10:21:46Z phoe: their identity does not depend on their name. 2017-08-02T10:21:49Z kora9: Damn. I thought I had it figured out :P 2017-08-02T10:21:58Z phoe: the fact they're both named FOO does not mean they are *the same* object. 2017-08-02T10:22:15Z kora9: So they have some sort of unique identifier that isn't FOO? 2017-08-02T10:22:21Z phoe: The same object, as in, residing in the very same memory location on the computer. 2017-08-02T10:22:40Z _death: kora9: consider (defstruct zymbol name package value function plist).. it's easy to see how (eq (make-zymbol :name "foo") (make-zymbol :name "foo")) => nil 2017-08-02T10:22:52Z phoe: There's no such identifier, unless you count their actual memory location as such. 2017-08-02T10:22:57Z _death: kora9: symbols are quite like that 2017-08-02T10:23:01Z phoe: _death: I don't think he's at defstruct level yet 2017-08-02T10:24:36Z TMA: kora9: in C++ it would be something like struct zymbol { string symbol_name; package * home_package; }; (that's akin to the defstruct above) 2017-08-02T10:24:57Z kora9: Yes I'm not at the struct level, I'm sorry :) 2017-08-02T10:25:57Z kora9: I sort of understand that you can have two (make-symbol "FOO") but what's really going on within Lisp is a bit beyond me at the moment I think 2017-08-02T10:26:00Z phoe: kora9: you have two hands, right? 2017-08-02T10:26:06Z kora9: Yes! 2017-08-02T10:26:14Z phoe: if you write FOO on your let one and FOO on your right one, they're not the same 2017-08-02T10:26:21Z kora9: Ah, yeah 2017-08-02T10:26:22Z phoe: though they're both "named" FOO now 2017-08-02T10:26:41Z phoe: if you grab ten pingpong balls and write BAR on each of them, they're still ten separate pingpong balls 2017-08-02T10:26:45Z kora9: Ok, so it's not occupying the same place quite simply? 2017-08-02T10:26:50Z phoe: yes. 2017-08-02T10:27:06Z rumbler31 joined #lisp 2017-08-02T10:27:08Z kora9: Ah that makes sense. I figured initially that since it's not within a package (reading the idiot guide to packages) it'd somehow be in the same place 2017-08-02T10:27:14Z phoe: nope. 2017-08-02T10:27:15Z kora9: I'm probably confusing two concepts here 2017-08-02T10:27:22Z phoe: a package can have only one symbol named FOO. 2017-08-02T10:27:29Z kora9: Yeah 2017-08-02T10:27:30Z phoe: but if there's no package, then there's no problem 2017-08-02T10:27:36Z Shinmera: A symbol is always a symbol. It may however be "attached" to a package. 2017-08-02T10:27:37Z kora9: oh. 2017-08-02T10:27:56Z phoe: you can have 9001 symbols named BAR as long as not any two of them are in the same package. 2017-08-02T10:28:01Z _death: kora9: but if a symbol resides in a package, it _can_ be identified by the pair 2017-08-02T10:28:28Z zacts joined #lisp 2017-08-02T10:28:41Z _death: kora9: so (eq 'cl:eq 'cl:eq) => t 2017-08-02T10:28:42Z kora9: Ah. I'm getting to the section about symbols in the idiot guide now 2017-08-02T10:28:46Z phoe: because at that point you'll have a naming conflict. what _death said: in the package system, a pair has either zero or one result mapped to it. 2017-08-02T10:29:09Z kora9: Is that for return value? 2017-08-02T10:29:23Z phoe: no no, no return values here. 2017-08-02T10:29:30Z kora9: Ah ok. 2017-08-02T10:29:32Z phoe: functions return values. 2017-08-02T10:29:46Z phoe: the package system is a big black box with two inputs and one output. 2017-08-02T10:30:16Z phoe: you put a package name and a symbol name in the inputs, press the button on the black box, and the box outputs either a symbol object that matches this package name and symbol name, or nothing. 2017-08-02T10:30:29Z phoe: or actually: outputs either THE symbol object... 2017-08-02T10:30:37Z phoe: since there's at most one such object. 2017-08-02T10:31:29Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-02T10:31:50Z phoe: reader macros and packages - welcome to the fun sides of Lisp 2017-08-02T10:31:58Z TMA: kora9: that black box as presented is an abstraction, there is no black box in actual existence doing that; yet you can think of it as if it were real 2017-08-02T10:32:17Z kora9: So the two inputs are (package::symbol) or sometimes (package:symbol) where the latter is if it's :exported I assume 2017-08-02T10:32:32Z knobo joined #lisp 2017-08-02T10:32:36Z kora9: TMA: Yeah I figured that atleast :) 2017-08-02T10:32:49Z phoe: yes, correct. package::symbol is the notation for accessing any symbol in a package. package:symbol is the notation for accessing a package's exported symbols. 2017-08-02T10:33:01Z kora9: Well atleast I understand -something- :D 2017-08-02T10:33:10Z phoe: kora9: good start, yes. 2017-08-02T10:33:17Z TMA: kora9: sometimes it is easy to get lost, because we tend to move from one abstraction level to another quite fluidly 2017-08-02T10:33:20Z _death: kora9: well, you're switching to a different level when you speak on how to designate symbols 2017-08-02T10:33:21Z Shinmera: Note that package::symbol will also automatically intern/create the symbol if it doesn't exist yet. 2017-08-02T10:33:38Z phoe: and there we go back to the reader, yahoo! 2017-08-02T10:33:51Z kora9: Shinmera: I didn't know that. What will it contain if it's automatically created? 2017-08-02T10:34:01Z phoe: since the Lisp reader automatically interns symbols it reads, and intern *creates* symbols that do not exist yet. 2017-08-02T10:34:01Z Shinmera: What do you mean, what will it "contain"? 2017-08-02T10:34:07Z Shinmera: It'll be unbound. 2017-08-02T10:34:15Z kora9: oh 2017-08-02T10:34:36Z phoe: kora9: if you type (list 'qwer 'tyui 'opas) in a freshly started REPL, you'll most likely get three new symbols in CL-USER. 2017-08-02T10:34:44Z _death: kora9: in a typical implementation, symbol identity is based on its memory address.. all symbols also have names (which are strings) and some have a reference to their "home packages".. if a symbol resides in such a package, then it can be the only symbol in that package with that name 2017-08-02T10:34:58Z phoe: You can actually inspect the package CL-USER beforehand, do the interning, and inspect the package CL-USER later. 2017-08-02T10:34:58Z kora9: TMA: Yes Lisp is an entirely new paradigm for me, it's a lot of fun, and also very different in many ways 2017-08-02T10:35:05Z marvin2 joined #lisp 2017-08-02T10:35:09Z marvin2 quit (Excess Flood) 2017-08-02T10:35:34Z kora9: _death: Ah 2017-08-02T10:35:51Z kora9: phoe: That sounds interesting, I'll do that :) 2017-08-02T10:35:58Z _death: kora9: now when you want to designate a symbol, "foo:bar" or "foo::bar" or "bar" etc., this is more about the reader than about symbols.. how the reader uses this designation to find or create symbols 2017-08-02T10:36:28Z kora9: _death: That makes sense, since you're telling the reader how and where to access the symbols in a sense 2017-08-02T10:36:32Z Bike joined #lisp 2017-08-02T10:36:33Z _death: kora9: you can also create a symbol without using the reader at all, e.g. by calling make-symbol or intern 2017-08-02T10:36:55Z kora9: Yeah I found that out from the idiot guide, I'm still reading it 2017-08-02T10:36:57Z _death: or find a symbol by calling find-symbol or intern.. 2017-08-02T10:37:35Z kora9: I think I'd like to buy a book that contains a reference of lisp functions to have it as paperback 2017-08-02T10:37:47Z marvin2 joined #lisp 2017-08-02T10:38:13Z kora9: It helps that emacs tells me how functions are used though, as I often forget it for functions I don't use often 2017-08-02T10:39:45Z _death: kora9: ANSI Common Lisp has a small reference that's OK for beginners as long as they know about the CLHS and that the latter is the authority 2017-08-02T10:39:52Z Murii quit (Ping timeout: 260 seconds) 2017-08-02T10:40:02Z kora9: cool 2017-08-02T10:40:14Z kora9: Perhaps I could just print some CLHS pages too 2017-08-02T10:41:10Z Shinmera: You can call ANSI and order a copy of the spec if you want a horribly photocopied bundle of pages in your mailbox. 2017-08-02T10:41:12Z kora9: Emacs seems to have some feature to show help about a lisp function 2017-08-02T10:41:27Z kora9: Shinmera: Really? :D That sounds awesome 2017-08-02T10:41:42Z Shinmera: What part of "horribly photocopied bundle of pages" is awesome? 2017-08-02T10:41:58Z Shinmera: That's literally what you get and it's a travesty 2017-08-02T10:42:09Z loke: Shinmera: Don't they also chanrge a few hundred dollors for the privilege? 2017-08-02T10:42:18Z Shinmera: Probably 2017-08-02T10:42:32Z _death: kora9: CL has 978 symbols defined for it, so perhaps a 100 less that number of CLHS pages describing them 2017-08-02T10:42:48Z _death: kora9: and of course CLHS describes more than each symbol 2017-08-02T10:43:30Z loke: Shinmera: 60 $ apparently: http://webstore.ansi.org/RecordDetail.aspx?sku=INCITS+226-1994%5BS2008%5D 2017-08-02T10:46:39Z m00natic joined #lisp 2017-08-02T10:47:58Z _death: kora9: Emacs has help for elisp functions etc. (C-h f, C-h v, etc.) .. but with slime, there's hyperspec lookup support as well.. you can (optionally) set up a local copy of the hyperspec on your machine and look up symbols using C-c C-d h, format directives using C-c C-d ~ etc. 2017-08-02T10:48:42Z _death: kora9: with an emacs browser like w3m-emacs or eww, it's great 2017-08-02T10:51:22Z kora9: Shinmera: Getting papers from ANSI sounds cool, paying a few hundred bucks for it doesn't :P 2017-08-02T10:51:50Z kora9: _death: Oh cool. Is there a guide to set up CLHS locally? 2017-08-02T10:52:45Z test1600 quit (Quit: Leaving) 2017-08-02T10:55:39Z _death: kora9: you can download it from ftp://ftp.lispworks.com/pub/software_tools/reference/HyperSpec-7-0.tar.gz .. unpack and have (setq common-lisp-hyperspec-root "file:///home/kora9/HyperSpec/") in your .emacs 2017-08-02T10:56:10Z kora9: oh awesome 2017-08-02T10:56:52Z froggey quit (Remote host closed the connection) 2017-08-02T10:59:10Z froggey joined #lisp 2017-08-02T10:59:57Z kora9: _death: This is awesome! Thanks :) 2017-08-02T11:00:37Z zacts quit (Quit: WeeChat 1.9) 2017-08-02T11:01:37Z tfeb joined #lisp 2017-08-02T11:03:21Z pjb joined #lisp 2017-08-02T11:04:36Z Devon quit (Ping timeout: 260 seconds) 2017-08-02T11:07:28Z tfeb quit (Remote host closed the connection) 2017-08-02T11:07:29Z attila_lendvai joined #lisp 2017-08-02T11:07:29Z attila_lendvai quit (Changing host) 2017-08-02T11:07:29Z attila_lendvai joined #lisp 2017-08-02T11:11:03Z kora9: Conrad Barski is funny :) 2017-08-02T11:11:50Z tfeb joined #lisp 2017-08-02T11:15:44Z damke quit (Ping timeout: 268 seconds) 2017-08-02T11:17:05Z ``Erik_ is now known as ``Erik 2017-08-02T11:17:12Z marvin2 quit (Ping timeout: 260 seconds) 2017-08-02T11:17:26Z damke joined #lisp 2017-08-02T11:18:14Z zacts joined #lisp 2017-08-02T11:20:03Z lvo quit (Remote host closed the connection) 2017-08-02T11:20:47Z phoe: kora9: use minion. 2017-08-02T11:20:49Z phoe: clhs adjoin 2017-08-02T11:20:49Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_adjoin.htm 2017-08-02T11:20:53Z phoe: s/minion/specbot/ 2017-08-02T11:21:07Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-02T11:21:11Z phoe: You can query him in private, too. 2017-08-02T11:22:26Z jamtho joined #lisp 2017-08-02T11:22:48Z phoe: also, for me, googling "clhs foo" works well enough for all standard values of foo. 2017-08-02T11:25:47Z kora9: phoe: Oh, I didn't know that, that's cool too. But I think the emacs approach is a lot better :) 2017-08-02T11:25:58Z phoe: kora9: whatever floats your boat 2017-08-02T11:26:00Z jameser joined #lisp 2017-08-02T11:26:06Z kora9: It's nice to have options :) 2017-08-02T11:27:56Z jamtho quit (Ping timeout: 260 seconds) 2017-08-02T11:28:23Z phoe: not only CL has MULTIPLE-VALUE-PROG1 2017-08-02T11:28:31Z phoe: but Alexandria has MULTIPLE-VALUE-PROG2 2017-08-02T11:28:52Z Posterdati^2 quit (Remote host closed the connection) 2017-08-02T11:29:05Z jackdaniel: and writing multiple-value-prog3 should be trivial 2017-08-02T11:29:15Z Posterdati^2 joined #lisp 2017-08-02T11:29:31Z solyd quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-02T11:30:15Z Shinmera: Well the point of the CL version is that the implementation might be able to optimise it. Any other approach will require turning values into a list and back again, which is bound to be slow. 2017-08-02T11:30:17Z phoe: (defmacro multiple-value-prog3 (form1 form2 form3 &rest forms) `(multiple-value-prog2 ,form1 (multiple-value-prog2 ,form2 ,form3 ,@forms))) 2017-08-02T11:30:39Z pjb: (multiple-value-prognth n forms1 … formN … formP) 2017-08-02T11:30:40Z phoe: combine as you will to have multiple-value-prog42 2017-08-02T11:30:45Z fkac quit (Remote host closed the connection) 2017-08-02T11:31:32Z Shinmera: Actually nevermind you can do (m-v-prog1 (progn n-forms..) rest) 2017-08-02T11:32:00Z phoe: hm, correct 2017-08-02T11:33:28Z pjb: not when n is a run-time value. 2017-08-02T11:33:51Z pjb: (multiple-value-prognth (random 3) 1 2 3) 2017-08-02T11:34:02Z phoe: (alexandria:whichever 1 2 3) 2017-08-02T11:34:06Z kora9: Interesting, I was looking at why CL uses reverse polish notation instead of standard mathematical notation, and I found that RPN was proposed to reduce memory access 2017-08-02T11:34:14Z damke quit (Ping timeout: 268 seconds) 2017-08-02T11:34:22Z pjb: kora9: CL uses polish notation. 2017-08-02T11:34:29Z pjb: HP uses reverse polish notation. 2017-08-02T11:35:02Z kora9: Oh, right, I got them mixed up 2017-08-02T11:35:07Z phoe: kora9: if you have a stack machine, then you can do things on the stack like 1 1 1 1 1 5 + 2017-08-02T11:35:19Z phoe: where + first grabs the amount of arguments it should add, and then grabs that number of arguments 2017-08-02T11:35:25Z phoe: instead of writing 1 + 1 + 1 + 1 + 1 2017-08-02T11:35:38Z kora9: phoe: Yeah it mentioned it being suited for stack evaluation 2017-08-02T11:35:45Z damke joined #lisp 2017-08-02T11:35:57Z phoe: kora9: protip: surprisingly many things around you are stack machines. 2017-08-02T11:36:07Z kora9: phoe: Everything that's digital basically right? 2017-08-02T11:36:10Z _death: it's a bit strange to call prefix notation polish notation.. Łukasiewicz would disapprove 2017-08-02T11:36:16Z phoe: kora9: not necessarily. 2017-08-02T11:36:27Z Shinmera: Either way how the math is notated in your language has practically nothing to do with how it's evaluated, since the compiler can just rewrite it. 2017-08-02T11:36:33Z phoe: many things are register machines, like modern CPUs. 2017-08-02T11:36:33Z kora9: _death: How so? 2017-08-02T11:36:47Z phoe: kora9: but, for instance, the Oracle JVM is a stack machine. 2017-08-02T11:36:51Z kora9: phoe: Oh 2017-08-02T11:37:44Z kora9: Why does CL use prefix notation instead of postfix notation? Is it because it's just simpler to have operators/functions precede operands or is there a deeper reasoning? 2017-08-02T11:37:56Z _death: kora9: basically the term comes from formal logic.. "reverse polish notation" is already entrenched in the field but I'm not sure "polish notation" should also enter it 2017-08-02T11:38:00Z Shinmera: Accessing the car is faster than the last of a list. 2017-08-02T11:38:06Z pjb: 1 1 1 1 1 5 + + + + + -> 10 2017-08-02T11:38:08Z Shinmera: It's also just much easier to read left to right 2017-08-02T11:38:22Z pjb: 1 1 + 1 + 1 + 1 + 5 + -> 10 2017-08-02T11:38:40Z phoe: pjb: I meant a different kind of plus, that first pops the number of arguments, and then pops that many arguments 2017-08-02T11:38:40Z kora9: Ah, yes I understand that it's much easier to read. I didn't know it was faster to access car than the last of a list though! 2017-08-02T11:39:09Z phoe: 1 1 1 1 1 5 + ;; the plus pops 5, and then pops 5 arguments and adds them - the result is 5 2017-08-02T11:39:11Z pjb: phoe: in that case, you need an open parethesis. eg. mark in PostScript. 2017-08-02T11:39:19Z pjb: mark 1 1 1 1 1 5 + 2017-08-02T11:39:22Z phoe: pjb: do I? why? 2017-08-02T11:39:32Z phoe: I just pop N arguments, where N is a value I read 2017-08-02T11:39:32Z pjb: mark 2 2 mark 1 1 1 1 1 5 + * 2017-08-02T11:39:45Z phoe: 10 10 2 + ;=> 20 2017-08-02T11:39:50Z pjb: oh, I thought you wanted (+ 1 1 1 1 1 5). 2017-08-02T11:40:00Z phoe: nope, I wanted "add these five numbers: 1 1 1 1 1" 2017-08-02T11:40:04Z pjb: ok 2017-08-02T11:40:36Z kora9: _death: Oh. I thought they were synonyms based on the wikipedia article I read 2017-08-02T11:40:53Z phoe: kora9: if you want functions on the right side of the arguments, try Forth 2017-08-02T11:41:05Z phoe: (which is also a stack machine ;) 2017-08-02T11:41:08Z Murii joined #lisp 2017-08-02T11:41:20Z _death: kora9: I suppose many programmers do, due to that wikipedia article perhaps 2017-08-02T11:41:20Z kora9: phoe: I don't want that, I just became curious after reading the wikipedia page for RPN :) 2017-08-02T11:41:32Z kora9: _death: Might be! 2017-08-02T11:41:58Z kora9: This Djikstra guy seems to be popping up in a lot of programming articles I read 2017-08-02T11:42:27Z _death: cue dijkstra meme by xach 2017-08-02T11:44:18Z _death: http://lemonodor.com/archives/2007/10/youre_doing_it_wrong.html 2017-08-02T11:45:14Z dan1 quit (Ping timeout: 240 seconds) 2017-08-02T11:46:39Z kora9: :) 2017-08-02T11:47:23Z kora9: I love how slime+emacs locks into the exact right tabbing with, so far, no bugs at all 2017-08-02T11:47:26Z phoe: https://www.cs.utexas.edu/users/EWD/ewd05xx/EWD581.PDF 2017-08-02T11:47:45Z phoe: kora9: a Lisp programmer does not indent, they only hit Enter 2017-08-02T11:48:04Z rotty quit (Ping timeout: 255 seconds) 2017-08-02T11:50:08Z dmiles quit (Ping timeout: 240 seconds) 2017-08-02T11:51:05Z shka: phoe: some use parinfer 2017-08-02T11:51:20Z Middernacht joined #lisp 2017-08-02T11:51:42Z kora9: phoe: :D 2017-08-02T11:51:51Z rotty joined #lisp 2017-08-02T11:52:00Z kora9: phoe: I read the letters and I have no idea what they're talking about, but I'm getting the impression that it's a high level fight! 2017-08-02T11:52:51Z tfeb quit (Remote host closed the connection) 2017-08-02T11:53:10Z tfeb joined #lisp 2017-08-02T11:53:39Z tfeb quit (Remote host closed the connection) 2017-08-02T11:58:13Z dmiles joined #lisp 2017-08-02T11:59:03Z mejja joined #lisp 2017-08-02T12:02:54Z _death: "I mean, if 10 years from now, when you are doing something quick and dirty, you suddenly visualize that I am looking over your shoulders and say to yourself \"Dijkstra would not have liked this\", well, that would be enough immortality for me." 2017-08-02T12:04:13Z _death: looks like he got at least twice as much 2017-08-02T12:08:48Z Shinmera: I get the impression dijkstra would not have liked a single thing I've ever done 2017-08-02T12:08:52Z Shinmera: But that's alright. 2017-08-02T12:09:08Z kora9: Haha, Lisp: "The most intelligent way to misuse a computer" -Djikstra :D 2017-08-02T12:09:41Z _death: Shinmera: yeah :) 2017-08-02T12:09:49Z fkac joined #lisp 2017-08-02T12:10:29Z kora9: What languages did Djikstra use or like? 2017-08-02T12:11:42Z Shinmera: The language of Math, I imagine 2017-08-02T12:12:00Z dan1 joined #lisp 2017-08-02T12:13:54Z _death: https://en.wikipedia.org/wiki/Edsger_W._Dijkstra#Compiler_construction_and_programming_language_research 2017-08-02T12:15:14Z mathrick quit (Ping timeout: 240 seconds) 2017-08-02T12:15:36Z _death: how dijkstra got his beard 2017-08-02T12:16:55Z kora9: Wow. I'm looking at ALGOL 60. That doesn't look nice to me 2017-08-02T12:17:06Z Shinmera: It was a different time. 2017-08-02T12:17:36Z kora9: Yeah I suppose 2017-08-02T12:19:21Z _death: he also discussed a stack machine btw.. which I (mis?)implemented some time ago.. http://paste.lisp.org/display/352312 2017-08-02T12:20:10Z _death: incidentally it also uses the symbol plist feature :) 2017-08-02T12:20:41Z Bike quit (Ping timeout: 258 seconds) 2017-08-02T12:20:57Z kora9: Cool :) 2017-08-02T12:21:20Z kora9: Yeah I read of Djikstra and stacks in the RPN article 2017-08-02T12:22:18Z BitPuffin|osx joined #lisp 2017-08-02T12:22:39Z mathrick joined #lisp 2017-08-02T12:23:12Z dTal quit (Changing host) 2017-08-02T12:23:12Z dTal joined #lisp 2017-08-02T12:23:15Z iced joined #lisp 2017-08-02T12:24:35Z kora9: I just figured out you can use (*) (*) (+ * **) to produce the fibonacci sequence :) 2017-08-02T12:24:35Z ski: minion: chant 2017-08-02T12:24:35Z minion: MORE THAN 2017-08-02T12:24:46Z Achylles joined #lisp 2017-08-02T12:26:34Z _death: ugh, apparently lisppaste font changed to variable-width? 2017-08-02T12:26:57Z iced left #lisp 2017-08-02T12:32:48Z mathrick quit (Ping timeout: 260 seconds) 2017-08-02T12:34:50Z damke_ joined #lisp 2017-08-02T12:35:17Z damke quit (Ping timeout: 268 seconds) 2017-08-02T12:37:29Z mathrick joined #lisp 2017-08-02T12:38:18Z dTal: Lisp and Forth always seemed compatible to me 2017-08-02T12:38:48Z phoe: _death: wat? 2017-08-02T12:38:49Z phoe: it did not 2017-08-02T12:40:27Z phoe: _death: https://i.imgtc.com/QRsqqol.png from my Windows box 2017-08-02T12:40:32Z dTal: Lisp simply discards top level return values, and unparenthesized functions evaluate to themselves - you could easily tweak that slightly so that top level return values get pushed onto a stack, and bare top level functions consumed stack values 2017-08-02T12:40:52Z dTal: slightly complicated by the fact that lisp functions are variadic 2017-08-02T12:41:06Z phoe: dTal: "unparenthesized functions evaluate to themselves" 2017-08-02T12:41:08Z phoe: huh? 2017-08-02T12:44:31Z dTal: What I mean is, in basically any repl, if you type a bare function, you just get the function back - in a file I guess it's a syntax error 2017-08-02T12:44:48Z _death: phoe: right, looks like some update screwed over which fonts are used 2017-08-02T12:45:18Z shka: dTal: that's kinda what i do in cl-lore 2017-08-02T12:45:31Z phoe: dTal: when you type #'foo, right? 2017-08-02T12:46:40Z Th30n joined #lisp 2017-08-02T12:47:14Z p_l: dTal: there's actually a three-slot stack in the REPL 2017-08-02T12:48:58Z kora9: You guys use special fonts for lisp? 2017-08-02T12:49:37Z _death: dTal: http://paste.lisp.org/display/352313 2017-08-02T12:50:04Z p_l: kora9: nope 2017-08-02T12:50:07Z phoe: kora9: nah. _death was complaining that his web browser's monotype font got broken and replaced by a non-monotype one 2017-08-02T12:50:23Z macdavid_ joined #lisp 2017-08-02T12:51:15Z macdavid313 quit (Remote host closed the connection) 2017-08-02T12:51:19Z kora9: Ah 2017-08-02T12:51:42Z kora9: I figured that symbolics might have used some particular font that was popular here :) 2017-08-02T12:52:11Z p_l: kora9: well, CPTFONT is quite nice, but I know people who hate it 2017-08-02T12:52:29Z p_l: kora9: the more interesting bit is that MIT-derived Lisp Machines allowed rich text source 2017-08-02T12:52:42Z kora9: cool 2017-08-02T12:52:52Z ski quit (Ping timeout: 260 seconds) 2017-08-02T12:52:59Z p_l: fsvo "rich text", but you could do basic formatting and font switching 2017-08-02T12:54:32Z tfeb joined #lisp 2017-08-02T12:55:21Z p_l: that said, CPTFONT is available in OTF form on the net 2017-08-02T12:55:47Z p_l: https://github.com/unjordy/LispM-Font 2017-08-02T12:59:08Z EvW joined #lisp 2017-08-02T13:01:28Z tfeb quit (Ping timeout: 240 seconds) 2017-08-02T13:07:21Z phinxy joined #lisp 2017-08-02T13:09:58Z Bike joined #lisp 2017-08-02T13:10:01Z Bike quit (Remote host closed the connection) 2017-08-02T13:10:23Z Bike joined #lisp 2017-08-02T13:10:30Z learning_ joined #lisp 2017-08-02T13:10:42Z solyd joined #lisp 2017-08-02T13:11:32Z Th30n left #lisp 2017-08-02T13:17:01Z Th30n joined #lisp 2017-08-02T13:21:14Z phoe: ...I just realized that one of my protocol functions is completely useless because (SETF FOO) does not have to be a simple accessor - it can call anything it wants inside its body 2017-08-02T13:21:19Z cromachina quit (Read error: Connection reset by peer) 2017-08-02T13:21:24Z phoe: CL is freaking unique 2017-08-02T13:22:30Z dlowe: Yeah, maybe not in individual elements, but certainly in its combination for features 2017-08-02T13:23:11Z phoe: in individual elements too 2017-08-02T13:23:17Z phoe: lemme give you an example 2017-08-02T13:23:18Z phoe: ' 2017-08-02T13:23:40Z kora9: What kind of software do you make phoe? 2017-08-02T13:23:49Z phoe: I wish I could quote a few Java statements and just splice them elsewhere in the code 2017-08-02T13:24:00Z phoe: kora9: a game server. https://github.com/phoe/gateway 2017-08-02T13:24:30Z dlowe: phoe: that's what cut and paste is for. duh. 2017-08-02T13:24:35Z kora9: cool 2017-08-02T13:24:43Z phoe: dlowe: you don't understand me 2017-08-02T13:24:47Z phoe: like, dynamically 2017-08-02T13:24:49Z phoe: at runtime 2017-08-02T13:24:51Z phoe: and such 2017-08-02T13:25:10Z kora9: phoe: Couldn't you have the jvm running alongside and use it from lisp somehow? 2017-08-02T13:25:17Z dlowe: sure, if you're going to constrain it like that 2017-08-02T13:25:22Z phoe: kora9: I don't need to, I have ABCL :) 2017-08-02T13:25:28Z kora9: Ah :) 2017-08-02T13:25:34Z phoe: I can have a full CL implementation running inside the JVM 2017-08-02T13:25:42Z kora9: Yeah I've seen Clojure and stuff 2017-08-02T13:25:46Z dlowe: or I could use python, ruby, perl, smalltalk, clojure, or any other language that works by modifying an image. 2017-08-02T13:25:56Z phoe: and finally JVM has a decent language 2017-08-02T13:27:22Z kora9: I learned some Java. I can not stand that language 2017-08-02T13:30:02Z phoe: I can stand it. It's good to know the enemy's language in order to profit from it. 2017-08-02T13:30:54Z kora9: Can't you profit from C# or Python? 2017-08-02T13:31:07Z joast quit (Ping timeout: 246 seconds) 2017-08-02T13:31:26Z kora9: Those seem somewhat less of a pain in the ass 2017-08-02T13:31:29Z phoe: kora9: I could, but Java is much more popular over where I live. And if I am meant to choose between C++ and Java, I choose the latter. 2017-08-02T13:31:30Z EvW quit (Ping timeout: 240 seconds) 2017-08-02T13:31:40Z kora9: phoe: That makes sense I suppose 2017-08-02T13:32:09Z phoe: As much as I respect C, I despise C++. :) 2017-08-02T13:32:14Z rumbler31 joined #lisp 2017-08-02T13:35:48Z Harag quit (Ping timeout: 260 seconds) 2017-08-02T13:36:07Z pjb quit (Ping timeout: 276 seconds) 2017-08-02T13:38:17Z Amplituhedron quit (Remote host closed the connection) 2017-08-02T13:39:53Z Zhivago: I find that C++ is fine, providing you ignore all of the right features. 2017-08-02T13:40:07Z rumbler31 quit (Remote host closed the connection) 2017-08-02T13:41:21Z Zhivago: Actually, that holds true for most languages, including CL. :) 2017-08-02T13:41:44Z Th30n left #lisp 2017-08-02T13:44:12Z Murii quit (Ping timeout: 260 seconds) 2017-08-02T13:44:14Z phoe: Zhivago: one needs to make a ranking of languages sorted by how much of the language you need to ignore in order for the language to become nice 2017-08-02T13:48:40Z Amplituhedron joined #lisp 2017-08-02T13:49:55Z Zhivago: On the other hand, you can't turn off the sequencing semantics in C/C++. 2017-08-02T13:50:07Z learning_ quit (Remote host closed the connection) 2017-08-02T13:52:36Z solyd quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-02T13:56:29Z Amplituhedron quit (Quit: Konversation terminated!) 2017-08-02T13:56:48Z learning_ joined #lisp 2017-08-02T13:56:59Z tfeb joined #lisp 2017-08-02T13:57:13Z kozy: (+ '(1 2 3)) what's wrong here? what I want to is 6 2017-08-02T13:57:24Z phoe: kozy: + expects integers. 2017-08-02T13:57:29Z phoe: you provide it with a single argument that is a list. 2017-08-02T13:57:38Z phoe: (apply #'+ '(1 2 3)) is what you possibly want. 2017-08-02T13:57:44Z phoe: or (+ 1 2 3). 2017-08-02T13:58:24Z kozy: phoe thx! I should have to read apply function 2017-08-02T13:58:58Z phoe: kozy: use specbot if you need to 2017-08-02T13:59:02Z phoe: like this: 2017-08-02T13:59:03Z phoe: clhs + 2017-08-02T13:59:03Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/a_pl.htm 2017-08-02T13:59:22Z kozy: aha 2017-08-02T14:00:07Z kozy: but what the heck is #' '? as iIread apply expect function and list 2017-08-02T14:00:20Z phoe: kozy: yes, exactly. 2017-08-02T14:00:34Z phoe: and the #' notation is equivalent to (function ...) 2017-08-02T14:00:37Z dlowe: The reader expands #'foo to (function foo) 2017-08-02T14:00:41Z phoe: so #'+ means (function +) 2017-08-02T14:00:43Z tfeb quit (Remote host closed the connection) 2017-08-02T14:00:47Z phoe: which evaluates to the function object. 2017-08-02T14:00:48Z dlowe: just as it expands 'foo to (quote foo) 2017-08-02T14:01:01Z phoe: which is suitable for APPLY. 2017-08-02T14:01:05Z tfeb joined #lisp 2017-08-02T14:01:10Z solyd joined #lisp 2017-08-02T14:01:18Z dlowe: so is '+ 2017-08-02T14:01:31Z tfeb quit (Remote host closed the connection) 2017-08-02T14:01:32Z phoe: alternatively, you can (apply '+ '(1 2 3)) - you can feed a symbol to APPLY, which will check the symbol's fdefinition and call that. 2017-08-02T14:01:40Z kozy: clhs ' 2017-08-02T14:01:41Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/02_dc.htm 2017-08-02T14:03:24Z damke joined #lisp 2017-08-02T14:04:42Z _death: it's better to not pass a symbol if you don't understand the full consequences 2017-08-02T14:04:42Z damke_ quit (Ping timeout: 268 seconds) 2017-08-02T14:04:56Z oleo joined #lisp 2017-08-02T14:04:56Z macdavid313 joined #lisp 2017-08-02T14:05:20Z tfeb joined #lisp 2017-08-02T14:05:28Z tfeb quit (Remote host closed the connection) 2017-08-02T14:06:34Z learning_ quit 2017-08-02T14:07:21Z dlowe: right. you don't want to launch the secret lisp missiles. 2017-08-02T14:07:52Z joast joined #lisp 2017-08-02T14:08:56Z macdavid_ quit (Ping timeout: 260 seconds) 2017-08-02T14:09:00Z ebzzry joined #lisp 2017-08-02T14:09:14Z Harag joined #lisp 2017-08-02T14:13:16Z _death: (flet ((launch-missile () (error 'war-what-is-it-good-for?))) (funcall 'launch-missile)) 2017-08-02T14:14:10Z p_l: too optimistic 2017-08-02T14:14:25Z xuxuru joined #lisp 2017-08-02T14:14:28Z phoe: _death: works even if I funcall #'launch-missile 2017-08-02T14:14:40Z dlowe: _death: that actually will *not* launch the missile 2017-08-02T14:14:58Z dlowe: or it will launch the wrong missile, possibly 2017-08-02T14:15:16Z xuxuru quit (Remote host closed the connection) 2017-08-02T14:15:34Z xuxuru_ joined #lisp 2017-08-02T14:15:47Z _death: I think you both misunderstood my example :) 2017-08-02T14:16:51Z pjb joined #lisp 2017-08-02T14:17:25Z dlowe: yeah, I did. Too dense. 2017-08-02T14:18:22Z oleo quit (Ping timeout: 276 seconds) 2017-08-02T14:19:21Z oleo joined #lisp 2017-08-02T14:19:35Z phoe: actually it won't launch anything 2017-08-02T14:19:40Z Shinmera: Is there a way, from the lisp side, to cause Slime to jump to a definition? There's swank:ed-in-emacs, which doesn't seem to work properly, and swank:inspect-in-emacs, which opens the inspector rather than just jumping to the definition. 2017-08-02T14:19:49Z phoe: there is no condition class WAR-WHAT-IS-IT-GOOD-FOR? 2017-08-02T14:20:10Z phoe: Shinmera: I think you can work around this by using swank's functionality to evaluate some code in emacs 2017-08-02T14:20:19Z phoe: so you should be able to trigger whatever M-. does from CL 2017-08-02T14:20:21Z Shinmera: That requires a .emacs change, so hat's a no-go 2017-08-02T14:21:51Z attila_lendvai joined #lisp 2017-08-02T14:22:37Z ptdel joined #lisp 2017-08-02T14:22:54Z p_l: isn't there a function in swank that evals code in Emacs? 2017-08-02T14:23:05Z Shinmera: That's what phoe just said. 2017-08-02T14:23:17Z kobain joined #lisp 2017-08-02T14:23:20Z Shinmera: You need to explicitly allow this feature in your .emacs, however, which I would very much like to avoid. 2017-08-02T14:24:26Z ptdel: is it hard to switch from vim to emacs :( no bully please I haven't been using slime or anything I didn't know how crucial it was 2017-08-02T14:24:30Z _death: Shinmera: why doesn't ed-in-emacs work properly? 2017-08-02T14:24:42Z phoe: ptdel: have you tried spacemacs? 2017-08-02T14:24:47Z phoe: it was originally designed for vim users 2017-08-02T14:25:11Z ptdel: no I haven't heard of it. are the key bindings and things very different? I'm used to learning bindings for wm's and things 2017-08-02T14:25:32Z phoe: ptdel: it's mostly built around evil mode, which seems to mimic vim a real lot 2017-08-02T14:25:39Z phoe: I'm not a vim user though, I can't say much more. 2017-08-02T14:25:40Z dec0n quit (Ping timeout: 268 seconds) 2017-08-02T14:25:53Z Shinmera: _death: It complains about not being able to find definitions, even if I supply it with pathname and position. It also always opens up a completely new emacs frame and seems to freeze until I terminate whatever's currently blocking the repl. 2017-08-02T14:26:24Z dmh: ptdel: try viper, tis the only way emacs movement isnt horrible 2017-08-02T14:26:45Z _death: Shinmera: hmm doesn't do that for me (sbcl) 2017-08-02T14:26:57Z Shinmera: _death: It does for me. Also sbcl. 2017-08-02T14:27:05Z teggi joined #lisp 2017-08-02T14:27:38Z _death: what is your communication mode 2017-08-02T14:27:41Z ptdel: thanks guys :) i'll check out viper and spacemacs. right now i've just got a keybind to take my buffer and run it into sbcl it's not fancy in any way 2017-08-02T14:28:39Z Shinmera: If I do, say, (progn (swank:ed-in-emacs '+) (sleep 10)) at the repl, it freezes emacs completely until that returns. 2017-08-02T14:28:52Z Shinmera: _death: default 2017-08-02T14:29:36Z dec0n joined #lisp 2017-08-02T14:30:01Z _death: Shinmera: it's :spawn here, and doesn't lock emacs 2017-08-02T14:30:20Z Shinmera: spawn here too. 2017-08-02T14:30:47Z _death: weird 2017-08-02T14:30:55Z Shinmera shrugs 2017-08-02T14:35:02Z kora9: dmh: What does viper do? I'm a long time vim user, and I use evil as I get acquainted with emacs 2017-08-02T14:35:18Z oleo: viper is the emacs vim 2017-08-02T14:35:21Z oleo: so to say 2017-08-02T14:35:39Z oleo: you can customize it and change it's compatibility levels 2017-08-02T14:36:16Z oleo: i used it for a while at the beginning when i was getting acquainted with emacs and didn't know it yet good enough 2017-08-02T14:36:27Z oleo: later on i got rid of it 2017-08-02T14:38:01Z dmh: kora9: same idea as evil. one might be more modern than the other, not sure 2017-08-02T14:38:17Z dmh: you got rid of it? crazy 2017-08-02T14:38:23Z oleo: jep 2017-08-02T14:38:32Z dmh: you actually like emacs movement better than vim? 2017-08-02T14:38:42Z oleo: i still know some vim but i won't use it mixwise.... 2017-08-02T14:38:42Z dmh: not to start that up 2017-08-02T14:38:51Z dmh: well that is fair 2017-08-02T14:39:09Z papachan joined #lisp 2017-08-02T14:39:13Z al-damiri joined #lisp 2017-08-02T14:39:15Z oleo: yes i like emacs more 2017-08-02T14:39:28Z oleo: movement is no problem at all..... 2017-08-02T14:40:54Z flamebeard quit (Quit: Leaving) 2017-08-02T14:40:57Z oleo: use arrow keys, use Alt+> (and <) for jumping to the beginning end of document use Alt+e etc for jumping to the beginning of the line etc..... 2017-08-02T14:41:08Z Khisanth quit (Ping timeout: 260 seconds) 2017-08-02T14:41:24Z sz0 joined #lisp 2017-08-02T14:41:38Z oleo: use Ctrl+Space to begin mark things and extend the mark via arrow keys 2017-08-02T14:42:14Z mishoo quit (Ping timeout: 240 seconds) 2017-08-02T14:42:20Z oleo: use Alt+w to copy marked things, and Ctrl+w for cutting it off (thereby copying it too) 2017-08-02T14:42:28Z oleo: etc 2017-08-02T14:42:59Z oleo: there are many movement stuff, you'll need just some 2017-08-02T14:43:19Z oleo: letterwise, wordwise, formwise movements 2017-08-02T14:43:32Z oleo: it's all easy really 2017-08-02T14:47:52Z xuxuru_ quit (Quit: xuxuru_) 2017-08-02T14:49:49Z test1600 joined #lisp 2017-08-02T14:50:05Z kora9: dmh: I haven't tried viper, but I've tried emacs movement and while I don't mind the shortcuts (although there are many) I really don't like being in input mode all the time, and I don't like using arrow keys for movement 2017-08-02T14:50:45Z dmh: yea, its awful 2017-08-02T14:50:59Z kora9: it's so easy to accidentally input 2017-08-02T14:51:22Z kora9: The one thing about emacs shortcuts is that the pinky I use for ctrl starts to hurt after a while 2017-08-02T14:51:31Z dmh: most people remap to caps etc 2017-08-02T14:51:39Z kora9: Yeah, that's nicer 2017-08-02T14:51:57Z dmh: still, the movement keys are terrible. this is a scientific and mathematical fact! 2017-08-02T14:52:27Z Shinmera: Can we stop having editor wars in here please 2017-08-02T14:52:31Z flak joined #lisp 2017-08-02T14:52:34Z dmh: maybe not, but even as a non-vim-user i dont see how people deal with it 2017-08-02T14:52:39Z dmh: ok 2017-08-02T14:53:35Z oleo: yes one can use both, either one at a time or mixed, it really doesn't matter as long as you get used to it get comfortable.... 2017-08-02T14:53:48Z hajovonta quit (Quit: hajovonta) 2017-08-02T14:53:57Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-02T14:54:08Z Khisanth joined #lisp 2017-08-02T14:55:01Z dmh: one of which is great for developing RSI 2017-08-02T14:55:16Z kora9: RSI? 2017-08-02T14:55:34Z phoe: repetitive strain injury AFAIK 2017-08-02T14:55:39Z dlowe left #lisp 2017-08-02T14:55:44Z kora9: Ah. 2017-08-02T14:55:47Z phoe: the thing you do not want to get as a programmer 2017-08-02T14:56:38Z kozy: anyone know what's wrong in my simple list iteration function `struct` ? http://ideone.com/dSYHI7 2017-08-02T14:57:27Z phoe: kozy: what are you indenting your code with? it looks nothing standard - it will make it hard to read for other people. 2017-08-02T14:58:00Z kozy: sorry i'm very newbee so i don't know about standard rules i will check it right now.. 2017-08-02T14:58:13Z phoe: no problem. 2017-08-02T14:58:17Z phoe: what is this function meant to do? 2017-08-02T14:58:28Z phoe: what is the expected output? 2017-08-02T14:58:53Z learning_ joined #lisp 2017-08-02T14:59:10Z phoe: also, which book are you learning Lisp from? 2017-08-02T14:59:34Z kozy: `int page; char* sort; char* genre`, google 2017-08-02T14:59:57Z kozy: just simple search such as `list iteration clisp` 2017-08-02T15:00:11Z damke_ joined #lisp 2017-08-02T15:00:25Z phoe: kozy: don't. 2017-08-02T15:00:30Z kozy: it is just C struct generation code using meta variable 2017-08-02T15:00:37Z phoe: minion: tell kozy about pcl 2017-08-02T15:00:37Z minion: kozy: look at pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005). 2017-08-02T15:00:42Z phoe: minion: tell kozy about gentle 2017-08-02T15:00:42Z minion: kozy: please look at gentle: "Common Lisp: A Gentle Introduction to Symbolic Computation" is a smoother introduction to lisp programming. http://www.cs.cmu.edu/~dst/LispBook/ 2017-08-02T15:00:51Z phoe: now, let's see. 2017-08-02T15:00:58Z kora9: kozy: I'm a newbie too, a tip is to use emacs with slime, it handles indentation and stuff for you :) 2017-08-02T15:01:36Z kozy: i was `vim`er 2017-08-02T15:01:41Z learning_: when i first started, indenting that way helped me 2017-08-02T15:01:49Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-02T15:01:57Z kora9: kozy: Me too, I use evil in emacs which makes it behave like vim 2017-08-02T15:02:53Z kozy: I'm just trying to make C code generation program with lisp which cannot be done by C macro system 2017-08-02T15:03:17Z damke quit (Ping timeout: 268 seconds) 2017-08-02T15:03:33Z smazga joined #lisp 2017-08-02T15:04:32Z phoe: (loop for elt in *meta* do (format t "~A ~A; " (cdr (assoc 'type elt)) (cdr (assoc 'name elt)))) 2017-08-02T15:04:54Z phoe: first of all, you want to iterate over the META variable. 2017-08-02T15:04:57Z jackdaniel: kozy: https://github.com/kiselgra/c-mera ? 2017-08-02T15:04:59Z phoe: uh, sorry - to follow your notation 2017-08-02T15:05:04Z phoe: (loop for elt in meta do (format t "~A ~A; " (cdr (assoc 'type elt)) (cdr (assoc 'name elt)))) 2017-08-02T15:05:13Z phoe: that's where Lisp's LOOP macro comes in handy. 2017-08-02T15:05:58Z phoe: second, each element of the META list is an alist. You want to find elements inside that alist with ASSOC. You used ASSOC previously, but you used it not on alists, but on the list of alists - that's why it failed and found nothing and you got NILs instead of elements. 2017-08-02T15:06:16Z tfeb joined #lisp 2017-08-02T15:06:27Z phoe: third, ASSOC returns the whole cell, like (name . "page") - so you need CDR to access the "right" element of the cell. 2017-08-02T15:06:58Z Achylles quit (Ping timeout: 255 seconds) 2017-08-02T15:07:34Z phoe: This code returns "int page; char* sort; char* genre;" for me. 2017-08-02T15:08:00Z kozy: jackdaniel: hmm I have huge codebase of C already so, I don't want to c like lisp 2017-08-02T15:08:44Z jackdaniel: c-mera is a C code generation program with lisp, thought you may be intersted since you mentioned that you implement such thing 2017-08-02T15:09:15Z kozy: thanks phoe!, I'm following your explain slowly! 2017-08-02T15:09:31Z kozy: yeah it will be helpful , since i can get an idea from it 2017-08-02T15:10:13Z AxelAlex joined #lisp 2017-08-02T15:10:43Z phoe: kozy: basically - try to describe your input (like with that META variable) and your output (like with that string you provided) - we'll most likely be able to figure out a way to turn one into the other using some Lisp, and then explain why and how. 2017-08-02T15:11:46Z kozy: ok! I will add those things next time 2017-08-02T15:12:52Z tfeb quit (Ping timeout: 260 seconds) 2017-08-02T15:13:27Z solyd quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-02T15:14:04Z LiamH joined #lisp 2017-08-02T15:14:44Z gravicappa quit (Ping timeout: 260 seconds) 2017-08-02T15:16:17Z learning_ quit 2017-08-02T15:16:24Z rumbler31 joined #lisp 2017-08-02T15:18:56Z teggi quit (Remote host closed the connection) 2017-08-02T15:21:19Z damke joined #lisp 2017-08-02T15:21:36Z teggi joined #lisp 2017-08-02T15:21:40Z Karl_Dscc joined #lisp 2017-08-02T15:23:16Z knobo quit (Quit: WeeChat 1.7) 2017-08-02T15:23:38Z damke_ quit (Ping timeout: 268 seconds) 2017-08-02T15:24:45Z sellout- joined #lisp 2017-08-02T15:26:37Z FreeBirdLjj joined #lisp 2017-08-02T15:28:56Z mishoo joined #lisp 2017-08-02T15:29:13Z neoncontrails joined #lisp 2017-08-02T15:33:27Z redeemed quit (Ping timeout: 240 seconds) 2017-08-02T15:35:17Z Karl_Dscc quit (Remote host closed the connection) 2017-08-02T15:36:06Z alandipert: is (with-hash-table-iterator (itr tbl) (nth-value 1 (itr))) a reasonable way to "choose" a single key from a hash table? 2017-08-02T15:36:09Z BusFactor1 quit (Ping timeout: 255 seconds) 2017-08-02T15:36:40Z Bike: you mean, to just pick a single key arbitrarily? 2017-08-02T15:36:56Z alandipert: Bike correct 2017-08-02T15:37:09Z Bike: assuming the hash table is known to have at least one entry, i guess so 2017-08-02T15:37:24Z Bike: out of curiosity, why do you want to do that? 2017-08-02T15:38:45Z jsgrant_ joined #lisp 2017-08-02T15:39:19Z BitPuffin|osx quit (Remote host closed the connection) 2017-08-02T15:39:26Z alandipert: i am implementing kahn's sorting algo a few different ways, to learn 2017-08-02T15:39:36Z jsgrant_ quit (Remote host closed the connection) 2017-08-02T15:39:40Z alandipert: not sure i'll actually end up with it, but i needed to do that for the direction i'm currently going with it 2017-08-02T15:40:22Z alandipert: i am using hash tables as sets and needed a choose operation 2017-08-02T15:40:37Z zacts quit (Ping timeout: 246 seconds) 2017-08-02T15:41:07Z d4ryus joined #lisp 2017-08-02T15:41:39Z teggi quit (Quit: Leaving...) 2017-08-02T15:42:06Z Bike: i see 2017-08-02T15:44:08Z d4ryus4 quit (Ping timeout: 260 seconds) 2017-08-02T15:45:15Z Fare joined #lisp 2017-08-02T15:46:51Z tfeb joined #lisp 2017-08-02T15:47:07Z ``Erik quit (Quit: leaving) 2017-08-02T15:47:20Z tfeb quit (Remote host closed the connection) 2017-08-02T15:48:04Z AxelAlex quit (Quit: AxelAlex) 2017-08-02T15:49:02Z ebzzry quit (Ping timeout: 260 seconds) 2017-08-02T15:51:56Z LooneyTunes joined #lisp 2017-08-02T15:53:24Z borei joined #lisp 2017-08-02T15:54:34Z zacts joined #lisp 2017-08-02T15:56:43Z kozy: http://ideone.com/Rr7Z6g anyone know why time exceed in ideone? this code runs well clisp test.lisp, but in ideone don't works 2017-08-02T15:57:32Z edgar-rft quit (Quit: edgar-rft) 2017-08-02T15:57:45Z Achylles joined #lisp 2017-08-02T15:58:38Z TMA: kozy: the language you choose is wrong; clips (note PS not SP) 2017-08-02T15:58:38Z Bike: the language is listed as "Clips". 2017-08-02T15:59:09Z kozy: : |.. thanks... 2017-08-02T15:59:35Z kozy: feel like dumb.. 2017-08-02T15:59:44Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T16:01:06Z Bike: i missed it too, except there's error output on the bottom, which makes little sense in a lisp context 2017-08-02T16:08:09Z vtomole joined #lisp 2017-08-02T16:17:22Z damke_ joined #lisp 2017-08-02T16:19:45Z damke quit (Ping timeout: 268 seconds) 2017-08-02T16:19:46Z neoncontrails quit (Remote host closed the connection) 2017-08-02T16:20:24Z neoncontrails joined #lisp 2017-08-02T16:21:20Z neoncontrails quit (Read error: Connection reset by peer) 2017-08-02T16:21:22Z mejja quit (Quit: \ No newline at end of file) 2017-08-02T16:21:46Z neoncontrails joined #lisp 2017-08-02T16:21:57Z impulse quit (Ping timeout: 240 seconds) 2017-08-02T16:29:12Z damke joined #lisp 2017-08-02T16:31:32Z emaczen` joined #lisp 2017-08-02T16:32:05Z damke_ quit (Ping timeout: 268 seconds) 2017-08-02T16:34:20Z vtomole quit (Ping timeout: 260 seconds) 2017-08-02T16:34:37Z emaczen`: If I build an executable with SBCL, will this program run on other machines? 2017-08-02T16:34:50Z phoe: emaczen`: define "other machines" 2017-08-02T16:35:09Z phoe: if you build on 64bit linux, it'll run on other 64bit linux machines 2017-08-02T16:35:17Z emaczen`: I'm running OSX 2017-08-02T16:35:23Z phoe: 32bit linux, 64bit windows, 32bit windows... and so on 2017-08-02T16:35:24Z emaczen`: I'm trying to run it on other linux machines 2017-08-02T16:35:38Z phoe: you'll need to build it under linux 2017-08-02T16:35:56Z emaczen`: phoe: Okay, I can do that. 2017-08-02T16:40:39Z tfeb joined #lisp 2017-08-02T16:44:20Z kozy: is there way to evaluate whole lisp line in emacs after file open? 2017-08-02T16:44:54Z phoe: kozy: do you have a slime repl open? 2017-08-02T16:45:06Z phoe: If yes, put the Emacs point over the expression and C-c C-c 2017-08-02T16:45:32Z kozy: i didn't install yet, 2017-08-02T16:45:51Z sellout- quit (Quit: Leaving.) 2017-08-02T16:46:03Z sellout- joined #lisp 2017-08-02T16:47:32Z test1600_ joined #lisp 2017-08-02T16:48:31Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-02T16:48:39Z tfeb quit (Quit: Leaving...) 2017-08-02T16:48:43Z phoe: kozy: slime is one of your best investments if you decide to learn Lisp. 2017-08-02T16:48:49Z ptdel quit (Quit: leaving) 2017-08-02T16:49:01Z phoe: Lisp is an interactive language and slime is the toolkit that supports that interactivity. 2017-08-02T16:49:04Z kozy: I installed and currently reading manual 2017-08-02T16:50:00Z kozy: seems connected, new window is created 2017-08-02T16:50:14Z test1600 quit (Ping timeout: 240 seconds) 2017-08-02T16:50:35Z sellout- quit (Ping timeout: 268 seconds) 2017-08-02T16:51:50Z sjl__ is now known as sjl 2017-08-02T16:52:02Z kozy: M-x slime (new window created)-> C-x o (change to source window) -> C-c C-c, not connected 2017-08-02T16:53:49Z phoe: kozy: do you get *inferior-lisp* buffer, or *slime-repl* buffer? 2017-08-02T16:54:26Z kozy: inferior-lisp buffer 2017-08-02T16:57:27Z phoe: kozy: what does it say? 2017-08-02T16:57:30Z wadadli quit (Quit: 1d 17h 50m 48s) 2017-08-02T16:57:30Z Guest24722 quit (Quit: 2d 20h 52m 51s) 2017-08-02T16:57:38Z kozy: not connected 2017-08-02T16:57:43Z wadadli joined #lisp 2017-08-02T16:57:49Z phoe: copy the contents of that buffer and paste it to paste.lisp.org 2017-08-02T16:58:05Z vtomole joined #lisp 2017-08-02T16:58:16Z phoe: I want to see it 2017-08-02T16:58:30Z kozy: wow after I install sbcl it works 2017-08-02T16:58:32Z kozy: thx!! 2017-08-02T16:58:44Z phoe: I suspected that was the case ;D 2017-08-02T16:59:41Z kozy: wonderful development tool , since it can evalute point I want 2017-08-02T17:00:06Z milanj joined #lisp 2017-08-02T17:00:27Z phoe: it's only one of its many features 2017-08-02T17:00:38Z phoe: try inspecting 2017-08-02T17:00:39Z defaultxr joined #lisp 2017-08-02T17:00:47Z phoe: in the REPL buffer, R-click one of the return values, click Inspect 2017-08-02T17:03:37Z wadadli quit (Quit: 6m 4s) 2017-08-02T17:04:09Z damke quit (Ping timeout: 268 seconds) 2017-08-02T17:05:31Z wadadli joined #lisp 2017-08-02T17:08:59Z kozy: wow... slime explain about function... and argument 2017-08-02T17:09:07Z kozy: and where I am 2017-08-02T17:09:35Z raynold joined #lisp 2017-08-02T17:10:11Z Achylles quit (Ping timeout: 255 seconds) 2017-08-02T17:19:52Z scymtym_ joined #lisp 2017-08-02T17:20:48Z scymtym quit (Ping timeout: 268 seconds) 2017-08-02T17:23:24Z papachan quit (Quit: Saliendo) 2017-08-02T17:23:55Z neoncontrails quit 2017-08-02T17:25:32Z vlatkoB_ joined #lisp 2017-08-02T17:29:37Z vlatkoB quit (Ping timeout: 255 seconds) 2017-08-02T17:33:53Z emaczen` quit (Remote host closed the connection) 2017-08-02T17:34:16Z Achylles joined #lisp 2017-08-02T17:43:07Z emaczen` joined #lisp 2017-08-02T17:43:08Z flip214 quit (Quit: leaving) 2017-08-02T17:43:13Z m00natic quit (Remote host closed the connection) 2017-08-02T17:45:11Z shka_ joined #lisp 2017-08-02T17:45:14Z flip214 joined #lisp 2017-08-02T17:45:14Z flip214 quit (Changing host) 2017-08-02T17:45:14Z flip214 joined #lisp 2017-08-02T17:46:56Z strelox joined #lisp 2017-08-02T17:47:21Z wildlander joined #lisp 2017-08-02T17:56:00Z alexshendi joined #lisp 2017-08-02T18:00:38Z Karl_Dscc joined #lisp 2017-08-02T18:04:24Z libs`` joined #lisp 2017-08-02T18:04:24Z libs`` is now known as vibs`` 2017-08-02T18:04:53Z vibs`` left #lisp 2017-08-02T18:06:34Z scymtym_ quit (Ping timeout: 255 seconds) 2017-08-02T18:06:47Z kozy: Is there c parser writtrn in lisp? not lisp written in c 2017-08-02T18:08:10Z kozy: as i know theorically lisp can parse CFG why not C 2017-08-02T18:08:33Z flip214: kozy: take a look at https://github.com/vsedach/Vacietis.git 2017-08-02T18:09:00Z Bike: C isn't actually context-free, but yeah there you go. 2017-08-02T18:09:46Z flip214: I'd be interested in deriving an AST from C, but this library tries to compile into lisp... which never succeeded for me 2017-08-02T18:09:57Z flip214: (most probably because of preprocessor "magic") 2017-08-02T18:12:16Z kozy: because they need lexer hack in some point? bike 2017-08-02T18:12:43Z Bike: and the preprocessor, yeah. 2017-08-02T18:12:53Z kozy: it seems there are some parse routine there flip214 2017-08-02T18:13:16Z kozy: then what should i call ? 2017-08-02T18:13:41Z kozy: dont know why c developer design that way.. 2017-08-02T18:14:43Z Bike: load-c-file and cstr look like entrypoints. 2017-08-02T18:14:52Z kozy: i think developer should made c more easier to parse at least follow 2017-08-02T18:14:59Z kozy: cfg 2017-08-02T18:15:21Z Bike: developers of... the C language? 2017-08-02T18:15:24Z emaczen`: Is there a way to ensure when printing with format that symbols are package prefixed? 2017-08-02T18:15:46Z kozy: yeah 2017-08-02T18:16:01Z kozy: /c-and-cplusplus-are-not-context-free/ 2017-08-02T18:16:11Z Bike: emaczen`: bind *package* to the keyword package (and use format directives that don't just print the names) 2017-08-02T18:16:18Z kozy: http://trevorjim.com/c-and-cplusplus-are-not-context-free/ 2017-08-02T18:16:48Z kozy: : ( 2017-08-02T18:17:06Z Bike: they're probably not going to change core syntax 2017-08-02T18:17:36Z emaczen`: Bike: which function is accessing the *package* variable? 2017-08-02T18:17:47Z kozy: somewhat misdesigned but every body use it so i forced to 2017-08-02T18:17:48Z flip214: parsing c++ looks increasingly like parsing perl... 2017-08-02T18:17:54Z emaczen`: I'm just trying: (format t "~S" (find-symbol ...)) 2017-08-02T18:18:01Z Bike: clhs ~s 2017-08-02T18:18:02Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/22_cdb.htm 2017-08-02T18:18:10Z Bike: (refreshing my memory here) 2017-08-02T18:18:16Z kozy: perl's situation is same? woops 2017-08-02T18:18:30Z flip214: "only perl can parse perl" is the official stance 2017-08-02T18:18:40Z emaczen`: strangely, I did not have this problem with OSX, but am having it with linux 2017-08-02T18:19:00Z Bike: clhs 22.1.3.3.1 2017-08-02T18:19:00Z specbot: Package Prefixes for Symbols: http://www.lispworks.com/reference/HyperSpec/Body/22_acca.htm 2017-08-02T18:19:15Z Bike: is how symbols are printed, if *print-escape* is true 2017-08-02T18:19:16Z kozy: :O 2017-08-02T18:19:29Z flip214: clhs with-standard-io 2017-08-02T18:19:29Z specbot: Couldn't find anything for with-standard-io. 2017-08-02T18:19:32Z flip214: clhs with-standard-io-syntax 2017-08-02T18:19:33Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_w_std_.htm 2017-08-02T18:19:41Z flip214: might be a good thing to use, too 2017-08-02T18:21:05Z emaczen`: Bike: why would I be getting different behavior based on which operating system I am using? 2017-08-02T18:21:15Z Bike: are you using different implementations? 2017-08-02T18:21:23Z emaczen`: both are SBCL 2017-08-02T18:21:35Z Bike: well, i don't know then. 2017-08-02T18:23:54Z flip214: emaczen`: perhaps you've got different *print- settings because some library has differences depending on #+(macos) or so? 2017-08-02T18:24:03Z flip214: how about comparing the print-settings? 2017-08-02T18:24:32Z emaczen`: flip214: I checked *print-escape* and they are both t 2017-08-02T18:24:53Z emaczen`: Tell me what you get if you evaluate (write 'sb-ext:save-lisp-and-die :stream t) 2017-08-02T18:24:56Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-02T18:25:40Z Bike: is it the same with with-standard-io-syntax? 2017-08-02T18:27:06Z emaczen`: Bike: the only difference with "with-standard-io-syntax" is that on mac it will print without the package 2017-08-02T18:28:19Z emaczen`: Let me tell what I am trying to do. 2017-08-02T18:28:44Z BitPuffin|osx joined #lisp 2017-08-02T18:28:49Z emaczen`: I have a function that generates a lisp file to create an executable 2017-08-02T18:28:58Z Bike: are they different versions? 2017-08-02T18:29:12Z emaczen`: how do I check versions 2017-08-02T18:29:43Z Bock quit (Ping timeout: 240 seconds) 2017-08-02T18:30:49Z flip214: emaczen`: run this on both, and check the output for differences: 2017-08-02T18:30:50Z flip214: http://paste.lisp.org/display/352331 2017-08-02T18:31:26Z Bike: emaczen`: (lisp-implementation-version) 2017-08-02T18:32:08Z warweasle joined #lisp 2017-08-02T18:32:46Z emaczen`: flip214: they are identical 2017-08-02T18:33:16Z Bike: how about (find-symbol "SAVE-LISP-AND-DIE" "CL-USER")? 2017-08-02T18:33:33Z emaczen`: Bike: versions are different 2017-08-02T18:33:40Z emaczen`: version on my mac is 1.3.17 2017-08-02T18:33:53Z emaczen`: version on linux is 1.3.5-1.fc25 2017-08-02T18:34:30Z Bike: hm, well those are both reasonably nonancient 2017-08-02T18:34:36Z learning_ joined #lisp 2017-08-02T18:35:03Z emaczen`: Bike: with find-symbol it still doesn't print the prefix 2017-08-02T18:35:08Z brandonz joined #lisp 2017-08-02T18:35:29Z _rumbler31 joined #lisp 2017-08-02T18:35:35Z Bike: i'm not asking for that, i'm asking if the output is the same on both. 2017-08-02T18:36:16Z emaczen`: Bike: on my mac it prints the prefixes, so no. 2017-08-02T18:36:39Z Bike: but on both it returns something and says :INHERITED? 2017-08-02T18:36:59Z emaczen`: I enclosed it in (write ... :stream t) 2017-08-02T18:37:01Z rumbler31 quit (Ping timeout: 246 seconds) 2017-08-02T18:37:51Z emaczen`: both say inherited, but linux does not print the package prefix while mac does 2017-08-02T18:38:35Z emaczen`: Ohhh I think I see the issues 2017-08-02T18:38:39Z emaczen`: one second 2017-08-02T18:38:47Z Achylles quit (Ping timeout: 260 seconds) 2017-08-02T18:40:08Z FreeBirdLjj joined #lisp 2017-08-02T18:41:19Z emaczen`: Bike: because the symbol was inherited it wouldn't print the prefix -- I didn't know that symbols could be inherited? 2017-08-02T18:41:32Z quazimodo quit (Read error: Connection reset by peer) 2017-08-02T18:41:40Z Bike: that's what using packages does. like :use in a defpackage form. 2017-08-02T18:41:54Z emaczen`: Bike: I rarely do that 2017-08-02T18:42:00Z emaczen`: good to know 2017-08-02T18:42:14Z Bike: in sbcl, CL-USER uses SB-EXT. 2017-08-02T18:42:39Z Bike: ...and prefixes are printed for symbols depending on whether or not the symbols is accessible in the current package. 2017-08-02T18:43:03Z emaczen`: Bike: what about :import-from ? 2017-08-02T18:43:26Z dedmons quit (Ping timeout: 268 seconds) 2017-08-02T18:43:32Z learning_ quit (Remote host closed the connection) 2017-08-02T18:44:14Z Bike: that does something else, and is close to where i stop understanding how the package system works 2017-08-02T18:44:19Z Bike: doesn't seem relevant here though 2017-08-02T18:44:44Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2017-08-02T18:44:47Z emaczen`: Bike: yep, I have just used that a little before. 2017-08-02T18:45:33Z emaczen`: Now I have an error with being able to "save a compressed core" because "this runtime was not built with zlib support" 2017-08-02T18:45:54Z Bike: so did you work out why the symbol prints differently? i'm stumped. 2017-08-02T18:45:57Z emaczen`: I passed t to :compression 2017-08-02T18:46:19Z Bike: well, that'll make it try to compress, yeah. 2017-08-02T18:46:58Z emaczen`: how do I build SBCL with zlib support -- I'm pretty sure I used the fedora repositories. 2017-08-02T18:47:07Z emaczen`: so I used 'dnf install sbcl' 2017-08-02T18:47:50Z Bike: --with-sb-core-compression to make.sh, apparently 2017-08-02T18:47:52Z Bike: or just --fancy 2017-08-02T18:48:18Z learning_ joined #lisp 2017-08-02T18:48:46Z shifty quit (Ping timeout: 276 seconds) 2017-08-02T18:49:53Z quazimodo joined #lisp 2017-08-02T18:50:07Z emaczen`: thanks Bike. I'm having just a plethora of strange issues today... 2017-08-02T18:51:20Z MrBismuth joined #lisp 2017-08-02T18:51:23Z Achylles joined #lisp 2017-08-02T18:51:26Z angavrilov quit (Remote host closed the connection) 2017-08-02T18:53:02Z Xach: Oh, what a nasty trick. 2017-08-02T18:53:16Z Xach finds an .asd that only loads some stuff depending on the state of the package system 2017-08-02T18:53:46Z MrBusiness quit (Ping timeout: 255 seconds) 2017-08-02T18:54:50Z phoe: Xach: can I see? 2017-08-02T18:55:12Z Xach: phoe: one moment 2017-08-02T18:55:16Z phoe: or does it depend on the packages I have loaded in my Lisp image? 2017-08-02T18:55:18Z phoe: :) 2017-08-02T18:56:37Z learning_: offtopic but does anyone know how to block/hide posts from specefic users on the comp.lisp google group 2017-08-02T18:57:27Z learning_: half of the group is just automated spam from that 2 digit iq robert l guy 2017-08-02T18:57:41Z learning_: makes it a pain to browse old posts 2017-08-02T18:58:10Z phoe: learning_: AFAIK Google's answer is to use a mail client and maintain your own killfile. 2017-08-02T18:58:40Z learning_: lol 2017-08-02T18:58:49Z phoe: No, really. 2017-08-02T18:58:50Z learning_: so google group's interface isn't meant to be an interface? 2017-08-02T18:59:00Z phoe: t 2017-08-02T18:59:04Z learning_: ty 2017-08-02T18:59:55Z learning_: what kills me is you know the guy who wrote this interface doesn't put up with it 2017-08-02T19:00:03Z learning_: he uses something else 2017-08-02T19:00:25Z phoe: not eating his own dog food. heh. 2017-08-02T19:01:16Z Xach: phoe: clsql is one 2017-08-02T19:02:43Z phoe: Xach: which .asd file in clsql does it? 2017-08-02T19:02:49Z Xach: phoe: clsql.asd 2017-08-02T19:03:36Z phoe: https://github.com/sshirokov/CLSQL/blob/master/clsql.asd can't see it yet 2017-08-02T19:04:21Z Xach: I don't know what sshirokov is but that is not where clsql is from. 2017-08-02T19:04:45Z Xach: And it's the "find-package" bits in that file, anyway. 2017-08-02T19:04:52Z phoe: huh. Where do you download clsql from? 2017-08-02T19:05:01Z shka_ quit (Ping timeout: 268 seconds) 2017-08-02T19:05:23Z phoe: ...oh, these 2017-08-02T19:05:37Z quazimodo quit (Ping timeout: 248 seconds) 2017-08-02T19:05:42Z Xach: I get clsql from b9.com 2017-08-02T19:05:47Z Xach: or, kpe.io these days 2017-08-02T19:08:28Z MrBismuth quit (Ping timeout: 240 seconds) 2017-08-02T19:11:54Z phoe is now known as phriend 2017-08-02T19:12:49Z phriend is now known as phoe 2017-08-02T19:13:35Z Fare quit (Ping timeout: 240 seconds) 2017-08-02T19:15:49Z nirved quit (Quit: Leaving) 2017-08-02T19:17:34Z MrBusiness joined #lisp 2017-08-02T19:17:44Z Xach can't even (asdf:find-system "cells-gtk") on mac - too many assumptions about cffi in its system definition 2017-08-02T19:19:40Z alexshendi left #lisp 2017-08-02T19:21:17Z Xach: I usually underestimate the complexity of the programs people write inside system definition files. 2017-08-02T19:21:45Z Xach: (asdf:find-system ...) can and does do an awful lot for some systems. 2017-08-02T19:21:54Z phoe: well, ASDF is turing complete 2017-08-02T19:23:48Z Xach: Right. I know what's possible, but the scope of what people actually do is usually beyond what I expect. 2017-08-02T19:25:08Z phoe: wait for someone to implement a stack machine bytecode interpreter in there 2017-08-02T19:26:24Z phoe: system asdf/jvm. not the hero ASDF deserves but the one it needs. 2017-08-02T19:26:32Z Achylles quit (Remote host closed the connection) 2017-08-02T19:26:35Z learning_ quit (Remote host closed the connection) 2017-08-02T19:29:02Z knicklux joined #lisp 2017-08-02T19:29:16Z EvW1 joined #lisp 2017-08-02T19:32:58Z ``Erik joined #lisp 2017-08-02T19:33:40Z Xach: wow, landed in ldb. 2017-08-02T19:36:47Z BlueRavenGT joined #lisp 2017-08-02T19:37:05Z phoe: Xach: now I'm curious 2017-08-02T19:37:21Z phoe: too much cffi in asd files? 2017-08-02T19:37:24Z Xach: I am trying to (asdf:find-system ...) every system in Quicklisp in a single session. 2017-08-02T19:37:37Z Xach: Something triggered a low-level problem that landed in ldb, not sure what though. 2017-08-02T19:38:06Z phoe: not a trivial heap exhausted error, is it? 2017-08-02T19:40:07Z Xach: Not that trivial. 2017-08-02T19:41:04Z MrBusiness quit (Ping timeout: 246 seconds) 2017-08-02T19:42:04Z Xach: starting again with more progress output 2017-08-02T19:44:02Z astronavt joined #lisp 2017-08-02T19:45:24Z astronavt left #lisp 2017-08-02T19:49:57Z flak quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-02T19:50:38Z Xach: Of course it worked that time 2017-08-02T19:51:20Z BitPuffin|osx quit (Ping timeout: 246 seconds) 2017-08-02T19:51:36Z MrBusiness joined #lisp 2017-08-02T19:51:45Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-02T19:52:57Z phoe: fear the heisenbug 2017-08-02T19:55:54Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-02T19:57:58Z marvin2 joined #lisp 2017-08-02T19:58:53Z Winterschlaf left #lisp 2017-08-02T20:02:27Z fkac quit (Remote host closed the connection) 2017-08-02T20:04:10Z Xof: clearly we fixed the problem in the intervening time 2017-08-02T20:05:56Z test1600_ quit (Ping timeout: 260 seconds) 2017-08-02T20:08:00Z Fare joined #lisp 2017-08-02T20:08:49Z weltung joined #lisp 2017-08-02T20:10:32Z rumbler31 joined #lisp 2017-08-02T20:10:43Z _rumbler31 quit (Ping timeout: 240 seconds) 2017-08-02T20:11:47Z haz joined #lisp 2017-08-02T20:12:57Z krrrcks quit (Ping timeout: 240 seconds) 2017-08-02T20:13:59Z krrrcks joined #lisp 2017-08-02T20:18:45Z krasnal joined #lisp 2017-08-02T20:20:01Z astronavt joined #lisp 2017-08-02T20:21:48Z Baggers joined #lisp 2017-08-02T20:24:11Z francogrex joined #lisp 2017-08-02T20:24:40Z hhdave joined #lisp 2017-08-02T20:25:57Z francogrex: this is a newbie question (although I should know better), is it possible to not give a let variable any initial values? for ex (let ((var1 [nothing])) (declare (type var1 fixnum)) ... (setf var1 ..)) so just have it declared like in defvar?? 2017-08-02T20:26:24Z pjb: francogrex: no, it is not possible. 2017-08-02T20:26:32Z pjb: Unless the variable is special. 2017-08-02T20:26:38Z Zhivago: (let (a b c) ...) but that's equivalent to (let ((a nil) (b nil) (c nil)) ...) 2017-08-02T20:27:08Z https_GK1wmSU joined #lisp 2017-08-02T20:27:14Z francogrex: hmm ok i see 2017-08-02T20:27:23Z pjb: (defvar *foo* 42) (list *foo* (let ((*foo* nil)) (makunbound '*foo*) (boundp '*foo*)) *foo*) --> (42 nil 42) 2017-08-02T20:27:33Z https_GK1wmSU left #lisp 2017-08-02T20:28:37Z Bike: huh, i thought makunbound was global. 2017-08-02T20:28:57Z pjb: You could retain lexical binding by defining your own LET macro and using symbol-macrolet to implement your unboundable lexical variable as whatever you want, including a special variable, but it could also be a slot in a CLOS object or a cons cell, whatever. 2017-08-02T20:29:52Z pjb: It is, in a way: (defvar *foo* 42) (defun foo () (when (boundp '*foo*) *foo*)) (list *foo* (let ((*foo* nil)) (makunbound '*foo*) (list (foo) (boundp '*foo*))) *foo*) --> (42 (nil nil) 42) 2017-08-02T20:30:05Z pjb: but it could be different with threads and thread-local special variables. 2017-08-02T20:37:36Z sellout- joined #lisp 2017-08-02T20:41:33Z rumbler31 quit (Remote host closed the connection) 2017-08-02T20:42:25Z rumbler31 joined #lisp 2017-08-02T20:43:29Z EvW1 quit (Ping timeout: 246 seconds) 2017-08-02T20:43:44Z aeth quit (Ping timeout: 260 seconds) 2017-08-02T20:44:26Z haz quit (Quit: Leaving) 2017-08-02T20:47:10Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-02T20:48:04Z francogrex quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2017-08-02T20:50:37Z aeth joined #lisp 2017-08-02T20:50:43Z phoe quit (Ping timeout: 240 seconds) 2017-08-02T20:50:55Z rumbler31 joined #lisp 2017-08-02T20:50:57Z phoe joined #lisp 2017-08-02T20:54:36Z diegs_ joined #lisp 2017-08-02T20:55:15Z scymtym joined #lisp 2017-08-02T20:57:53Z astronavt quit (Remote host closed the connection) 2017-08-02T21:07:22Z emaczen`: I built an executable with 64 bit Fedora and it fails to run on 64 bit Ubuntu -- any more suggestions? 2017-08-02T21:07:40Z Bike: "fails to run" isn't specific enough for much helpful advice 2017-08-02T21:07:46Z emaczen`: the erorr I got, is that it cannot open libssl.so no such file or directory 2017-08-02T21:07:53Z emaczen`: Is libssl openssh? 2017-08-02T21:07:55Z pjb quit (Ping timeout: 255 seconds) 2017-08-02T21:08:20Z Bike: no, it's openssl. 2017-08-02T21:09:53Z emaczen`: Bike: Okay, this is just a system thing... I was very worried for a second... 2017-08-02T21:10:12Z phoe: fix: install the proper library 2017-08-02T21:14:58Z emaczen`: phoe: Yeah, I had to soft-link and all of that crap -- google is getting better at helping us solve these kinds of annoying problems 2017-08-02T21:16:49Z diegs_ quit (Ping timeout: 248 seconds) 2017-08-02T21:16:49Z Bike quit (Ping timeout: 248 seconds) 2017-08-02T21:16:56Z attila_lendvai joined #lisp 2017-08-02T21:20:43Z phoe quit (Ping timeout: 240 seconds) 2017-08-02T21:20:57Z phoe joined #lisp 2017-08-02T21:23:50Z mishoo quit (Ping timeout: 240 seconds) 2017-08-02T21:24:49Z hhdave quit (Read error: Connection reset by peer) 2017-08-02T21:25:12Z hhdave joined #lisp 2017-08-02T21:26:45Z yeticry joined #lisp 2017-08-02T21:29:30Z yeticry_ quit (Ping timeout: 240 seconds) 2017-08-02T21:37:11Z weltung_ joined #lisp 2017-08-02T21:38:20Z hhdave quit (Quit: hhdave) 2017-08-02T21:38:43Z weltung quit (Ping timeout: 240 seconds) 2017-08-02T21:41:59Z emaczen` quit (Read error: Connection reset by peer) 2017-08-02T21:48:04Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-02T21:56:04Z pierpa joined #lisp 2017-08-02T21:57:27Z csprng joined #lisp 2017-08-02T21:58:13Z weltung_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-02T22:00:40Z weltung joined #lisp 2017-08-02T22:03:12Z sellout- quit (Quit: Leaving.) 2017-08-02T22:04:38Z pjb joined #lisp 2017-08-02T22:04:43Z weltung quit (Ping timeout: 240 seconds) 2017-08-02T22:05:17Z Karl_Dscc quit (Remote host closed the connection) 2017-08-02T22:08:11Z al-damiri joined #lisp 2017-08-02T22:08:40Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-02T22:10:09Z scymtym quit (Ping timeout: 248 seconds) 2017-08-02T22:10:38Z amerlyq quit (Ping timeout: 268 seconds) 2017-08-02T22:10:55Z https_GK1wmSU joined #lisp 2017-08-02T22:11:16Z https_GK1wmSU left #lisp 2017-08-02T22:13:37Z marvin2 quit (Read error: Connection reset by peer) 2017-08-02T22:15:06Z sellout- joined #lisp 2017-08-02T22:16:56Z pjb quit (Ping timeout: 246 seconds) 2017-08-02T22:18:49Z ebzzry joined #lisp 2017-08-02T22:21:27Z Bike joined #lisp 2017-08-02T22:22:53Z rotty quit (Ping timeout: 246 seconds) 2017-08-02T22:23:08Z cromachina joined #lisp 2017-08-02T22:23:30Z yrk quit (Read error: Connection reset by peer) 2017-08-02T22:23:34Z amerlyq joined #lisp 2017-08-02T22:25:20Z sellout- quit (Quit: Leaving.) 2017-08-02T22:25:28Z sellout- joined #lisp 2017-08-02T22:26:04Z sellout- quit (Client Quit) 2017-08-02T22:33:45Z LiamH quit (Quit: Leaving.) 2017-08-02T22:34:31Z SpurdoSparde is now known as trinitr0n 2017-08-02T22:36:01Z rotty joined #lisp 2017-08-02T22:39:32Z strelox quit (Remote host closed the connection) 2017-08-02T22:44:22Z nsnc quit (Ping timeout: 260 seconds) 2017-08-02T22:46:26Z nsnc joined #lisp 2017-08-02T22:47:33Z Lowl3v3l quit (Remote host closed the connection) 2017-08-02T22:51:39Z Jesin joined #lisp 2017-08-02T22:54:26Z trinitr01 joined #lisp 2017-08-02T22:55:11Z trinitr01 is now known as trinitr0n_ 2017-08-02T22:58:08Z trinitr0n quit (Ping timeout: 240 seconds) 2017-08-02T22:59:20Z trinitr0n_ is now known as trinitr0n 2017-08-02T23:00:22Z trinitr0n left #lisp 2017-08-02T23:08:01Z fkac joined #lisp 2017-08-02T23:15:54Z fkac quit (Remote host closed the connection) 2017-08-02T23:17:44Z whoman quit (Remote host closed the connection) 2017-08-02T23:23:07Z smazga quit (Quit: leaving) 2017-08-02T23:23:46Z vaporatorius quit (Remote host closed the connection) 2017-08-02T23:24:05Z http_GK1wmSU joined #lisp 2017-08-02T23:24:32Z http_GK1wmSU left #lisp 2017-08-02T23:25:28Z fkac joined #lisp 2017-08-02T23:28:40Z justicefries joined #lisp 2017-08-02T23:30:06Z stee_3 quit (Remote host closed the connection) 2017-08-02T23:30:23Z Trystam joined #lisp 2017-08-02T23:32:01Z Baggers quit (Remote host closed the connection) 2017-08-02T23:33:16Z Tristam quit (Ping timeout: 268 seconds) 2017-08-02T23:33:18Z Trystam is now known as Tristam 2017-08-02T23:35:36Z attila_lendvai quit (Quit: Leaving.) 2017-08-02T23:35:43Z trocado joined #lisp 2017-08-02T23:36:08Z stee_3 joined #lisp 2017-08-02T23:50:28Z pjb joined #lisp 2017-08-02T23:58:30Z http_GK1wmSU joined #lisp 2017-08-02T23:58:51Z http_GK1wmSU left #lisp 2017-08-02T23:59:46Z justicefries left #lisp 2017-08-03T00:01:39Z macdavid_ joined #lisp 2017-08-03T00:02:18Z macdavid313 quit (Remote host closed the connection) 2017-08-03T00:07:27Z Achylles joined #lisp 2017-08-03T00:07:41Z edgar-rft joined #lisp 2017-08-03T00:10:37Z gendl quit (Ping timeout: 255 seconds) 2017-08-03T00:11:04Z billstclair quit (Ping timeout: 255 seconds) 2017-08-03T00:12:10Z gendl joined #lisp 2017-08-03T00:12:19Z jameser joined #lisp 2017-08-03T00:12:20Z billstclair joined #lisp 2017-08-03T00:13:27Z learning_ joined #lisp 2017-08-03T00:17:14Z WhiskyRyan joined #lisp 2017-08-03T00:20:31Z akkad: is there a (just-one-space &optional N) CL equivalent? to tr(1) -s ' ', sort of thing? 2017-08-03T00:21:08Z diegs_ joined #lisp 2017-08-03T00:21:21Z WhiskyRyan quit (Client Quit) 2017-08-03T00:23:47Z akkad: (cl-ppcre:regex-replace " +" "a b" " ") 2017-08-03T00:23:49Z akkad: good enough 2017-08-03T00:24:29Z QualityAddict joined #lisp 2017-08-03T00:24:44Z WhiskyRyan joined #lisp 2017-08-03T00:27:02Z jameser quit (Ping timeout: 260 seconds) 2017-08-03T00:28:43Z ted_ joined #lisp 2017-08-03T00:29:10Z ted_ quit (Read error: Connection reset by peer) 2017-08-03T00:32:43Z phinxy quit (Ping timeout: 240 seconds) 2017-08-03T00:32:50Z jameser joined #lisp 2017-08-03T00:35:15Z jameser quit (Client Quit) 2017-08-03T00:36:48Z quazimodo joined #lisp 2017-08-03T00:42:06Z learning_ quit (Remote host closed the connection) 2017-08-03T00:42:36Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-03T00:43:48Z learning_ joined #lisp 2017-08-03T00:44:46Z WhiskyRyan joined #lisp 2017-08-03T00:51:32Z sjl quit (Ping timeout: 260 seconds) 2017-08-03T00:54:32Z _death: phoe: http://paste.lisp.org/display/352352 2017-08-03T00:55:22Z thorondor[m] quit (Ping timeout: 276 seconds) 2017-08-03T00:55:22Z happy_gnu quit (Ping timeout: 276 seconds) 2017-08-03T00:55:22Z les quit (Ping timeout: 276 seconds) 2017-08-03T00:55:41Z thorondor[m] joined #lisp 2017-08-03T00:56:59Z les joined #lisp 2017-08-03T00:57:27Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-03T00:57:54Z sjl joined #lisp 2017-08-03T00:58:28Z pierpa quit (Quit: Page closed) 2017-08-03T01:01:49Z happy_gnu joined #lisp 2017-08-03T01:02:24Z Devon joined #lisp 2017-08-03T01:02:24Z macdavid313 joined #lisp 2017-08-03T01:04:50Z glamas joined #lisp 2017-08-03T01:06:07Z macdavid_ quit (Ping timeout: 260 seconds) 2017-08-03T01:08:16Z nullniverse joined #lisp 2017-08-03T01:11:10Z froggey quit (Ping timeout: 240 seconds) 2017-08-03T01:13:23Z froggey joined #lisp 2017-08-03T01:16:13Z Orion3k quit (Ping timeout: 240 seconds) 2017-08-03T01:16:30Z jamtho joined #lisp 2017-08-03T01:16:48Z EvW joined #lisp 2017-08-03T01:18:00Z tokik joined #lisp 2017-08-03T01:18:44Z tokik quit (Client Quit) 2017-08-03T01:23:58Z wildlander quit (Quit: Saliendo) 2017-08-03T01:26:21Z rumbler31 joined #lisp 2017-08-03T01:27:27Z rumbler31 quit (Remote host closed the connection) 2017-08-03T01:27:35Z glamas_ joined #lisp 2017-08-03T01:29:29Z Orion3k joined #lisp 2017-08-03T01:30:49Z rumbler31 joined #lisp 2017-08-03T01:31:12Z glamas quit (Ping timeout: 260 seconds) 2017-08-03T01:31:24Z tokik joined #lisp 2017-08-03T01:32:36Z pjb: phoe: with correct indenting, formating and docstring: http://paste.lisp.org/display/352352#1 2017-08-03T01:33:53Z rumbler31 quit (Remote host closed the connection) 2017-08-03T01:35:01Z Orion3k quit (Ping timeout: 276 seconds) 2017-08-03T01:36:04Z BitPuffin|osx joined #lisp 2017-08-03T01:36:58Z jameser joined #lisp 2017-08-03T01:45:46Z Orion3k joined #lisp 2017-08-03T01:48:11Z WhiskyRyan joined #lisp 2017-08-03T01:48:59Z WhiskyRyan quit (Client Quit) 2017-08-03T01:52:27Z fkae joined #lisp 2017-08-03T01:53:22Z fkac quit (Ping timeout: 260 seconds) 2017-08-03T01:53:22Z WhiskyRyan joined #lisp 2017-08-03T01:54:01Z WhiskyRyan quit (Client Quit) 2017-08-03T01:59:38Z learning_: post i made explaining me having a great time learning lisp: https://news.ycombinator.com/edit?id=14916350 2017-08-03T02:01:03Z tokik quit (Quit: leaving) 2017-08-03T02:01:21Z tokik joined #lisp 2017-08-03T02:08:19Z vlatkoB_ quit (Remote host closed the connection) 2017-08-03T02:10:44Z milanj quit (Quit: This computer has gone to sleep) 2017-08-03T02:10:52Z Fare quit (Ping timeout: 260 seconds) 2017-08-03T02:10:59Z EvW quit (Ping timeout: 258 seconds) 2017-08-03T02:11:25Z glamas_ quit (Ping timeout: 276 seconds) 2017-08-03T02:11:38Z glamas joined #lisp 2017-08-03T02:13:41Z jamtho quit (Ping timeout: 260 seconds) 2017-08-03T02:15:32Z WhiskyRyan joined #lisp 2017-08-03T02:15:35Z Fare joined #lisp 2017-08-03T02:18:14Z learning_ quit (Remote host closed the connection) 2017-08-03T02:18:53Z glamas_ joined #lisp 2017-08-03T02:21:22Z glamas_ quit (Remote host closed the connection) 2017-08-03T02:21:35Z krrrcks quit (Ping timeout: 246 seconds) 2017-08-03T02:21:44Z learning_ joined #lisp 2017-08-03T02:22:24Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-03T02:22:28Z glamas quit (Ping timeout: 276 seconds) 2017-08-03T02:23:50Z WhiskyRyan joined #lisp 2017-08-03T02:29:41Z glamas joined #lisp 2017-08-03T02:32:10Z test1600 joined #lisp 2017-08-03T02:33:02Z Achylles quit (Ping timeout: 260 seconds) 2017-08-03T02:37:37Z groovy2shoes quit (Remote host closed the connection) 2017-08-03T02:40:55Z pjb quit (Ping timeout: 255 seconds) 2017-08-03T02:42:01Z QualityAddict quit (Quit: Leaving) 2017-08-03T02:43:53Z learning_ quit (Remote host closed the connection) 2017-08-03T02:44:19Z groovy2shoes joined #lisp 2017-08-03T02:44:26Z glamas_ joined #lisp 2017-08-03T02:46:39Z learning_ joined #lisp 2017-08-03T02:46:43Z glamas quit (Ping timeout: 240 seconds) 2017-08-03T02:47:34Z eazar001 joined #lisp 2017-08-03T02:48:16Z brandonz quit (Quit: brb) 2017-08-03T02:48:46Z brandonz joined #lisp 2017-08-03T02:49:38Z learning_ quit (Remote host closed the connection) 2017-08-03T02:52:02Z learning_ joined #lisp 2017-08-03T03:01:16Z slyrus quit (Ping timeout: 260 seconds) 2017-08-03T03:03:08Z glamas_ quit (Remote host closed the connection) 2017-08-03T03:06:02Z learning_ quit (Remote host closed the connection) 2017-08-03T03:06:05Z glamas joined #lisp 2017-08-03T03:07:53Z pjb joined #lisp 2017-08-03T03:10:25Z glamas quit (Ping timeout: 248 seconds) 2017-08-03T03:14:43Z xrash joined #lisp 2017-08-03T03:15:06Z slyrus joined #lisp 2017-08-03T03:16:11Z glamas joined #lisp 2017-08-03T03:16:32Z X-Scale quit (Read error: Connection reset by peer) 2017-08-03T03:17:45Z vtomole quit (Ping timeout: 260 seconds) 2017-08-03T03:18:10Z pjb quit (Ping timeout: 240 seconds) 2017-08-03T03:20:52Z glamas quit (Ping timeout: 260 seconds) 2017-08-03T03:24:34Z learning_ joined #lisp 2017-08-03T03:26:32Z damke joined #lisp 2017-08-03T03:29:40Z glamas joined #lisp 2017-08-03T03:31:13Z schoppenhauer quit (Ping timeout: 240 seconds) 2017-08-03T03:33:04Z schoppenhauer joined #lisp 2017-08-03T03:36:02Z Bike quit (Ping timeout: 260 seconds) 2017-08-03T03:37:53Z scymtym joined #lisp 2017-08-03T03:39:05Z WhiskyRyan quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-03T03:39:46Z WhiskyRyan joined #lisp 2017-08-03T03:45:04Z learning_ quit (Remote host closed the connection) 2017-08-03T03:46:36Z test1600 quit (Quit: Leaving) 2017-08-03T03:49:34Z glamas quit (Remote host closed the connection) 2017-08-03T03:49:38Z borei quit (Ping timeout: 255 seconds) 2017-08-03T03:51:08Z learning_ joined #lisp 2017-08-03T03:51:17Z aindilis joined #lisp 2017-08-03T03:52:55Z glamas joined #lisp 2017-08-03T03:57:12Z damke quit (Ping timeout: 268 seconds) 2017-08-03T03:57:21Z glamas quit (Ping timeout: 248 seconds) 2017-08-03T03:57:36Z shka_ joined #lisp 2017-08-03T03:57:50Z glamas joined #lisp 2017-08-03T03:58:39Z stylewarning: learning_: the post doesn't seem very high quality 2017-08-03T03:58:40Z test1600 joined #lisp 2017-08-03T04:01:10Z wooden_ quit (Ping timeout: 240 seconds) 2017-08-03T04:01:49Z wadadli is now known as anu0 2017-08-03T04:02:06Z damke joined #lisp 2017-08-03T04:04:29Z learning_ quit (Remote host closed the connection) 2017-08-03T04:05:48Z wooden joined #lisp 2017-08-03T04:06:19Z learning_ joined #lisp 2017-08-03T04:06:26Z anu0 is now known as wadadli 2017-08-03T04:07:25Z learning_ quit (Remote host closed the connection) 2017-08-03T04:09:44Z diegs_ quit (Remote host closed the connection) 2017-08-03T04:11:32Z learning_ joined #lisp 2017-08-03T04:11:32Z learning_ quit (Client Quit) 2017-08-03T04:11:58Z learning_ joined #lisp 2017-08-03T04:12:28Z weltung joined #lisp 2017-08-03T04:12:40Z learning_: stylewarning: it's like a 1 paragraph anecdote with video. not sure what more you would want. 2017-08-03T04:13:50Z axion: I think he means that it's not very formal and painful to read 2017-08-03T04:14:09Z learning_: its not a technical explanation 2017-08-03T04:14:27Z stylewarning: You don't show any of lisps strengths, or talk about what you learned, or why you feel Lisp was especially good at this task 2017-08-03T04:14:59Z stylewarning: You just say "I wanted to man up so I wrote a neat toy" 2017-08-03T04:15:29Z learning_: yes, but thats the point. i didn't do this on purpose. and it was my lack of understanding that made me realize i didnt have to do anything more. 2017-08-03T04:15:49Z learning_: my lack of understanding made me think i had to do something extra to make the lisp image real time 2017-08-03T04:15:58Z learning_: when in reality lisp already took care of it 2017-08-03T04:16:52Z learning_: i didnt come to some conclusion about what made lisp great. lisp surprised me. thats the lesson. 2017-08-03T04:19:05Z learning_: BUT 2017-08-03T04:19:09Z learning_: thank you for the honesty 2017-08-03T04:19:18Z learning_: honesty is always appreciated man 2017-08-03T04:20:03Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-03T04:20:56Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-03T04:21:24Z stylewarning: Now I will say that if you make a good Lisp ide, you'll be a king (or queen) 2017-08-03T04:21:50Z stylewarning: Because the #1 starting Lisp turnoff is requiring emacs and slime 2017-08-03T04:22:05Z glamas quit (Remote host closed the connection) 2017-08-03T04:22:11Z axion: There is slime and paredit for vim and Atom too 2017-08-03T04:22:51Z aeth: If you want a task where Lisp is particularly suited, make a declarative mini-language with s-expression syntax that's embedded within CL itself. CL has several languages built in, such as FORMAT and LOOP. 2017-08-03T04:23:31Z aeth: But just using the existing s-expression syntax seems to be better than something like LOOP. 2017-08-03T04:23:43Z aeth: You could even tie it into the IDE, e.g. for styling. 2017-08-03T04:25:35Z aeth: Various notable and diverse libraries that do something along these lines: all of the HTML ones, cl-ppcre, iterate, several sql ones including postmodern, several languages that compile to GLSL (used by OpenGL shaders), etc. 2017-08-03T04:27:40Z stylewarning: There's no pyCharm for Lisp 2017-08-03T04:28:20Z pillton: mkdir pyCharm-lisp 2017-08-03T04:28:22Z pillton: done 2017-08-03T04:28:28Z shifty joined #lisp 2017-08-03T04:28:39Z aeth: eww, mix between camelCase and hyphen. 2017-08-03T04:28:49Z aeth: mightAsWellDo-This 2017-08-03T04:28:58Z aeth: *might_AsWellDo-This 2017-08-03T04:33:10Z weltung_ joined #lisp 2017-08-03T04:34:09Z stylewarning: It's a real problem and at least in industrial cases it stops people from using it. I know the state of the art of prepackaged SLIME and emacs is improving, but the fact that the only editors are commercial, only work for their respective Lisp, and cost hundreds of USD makes them non-starters for everyone who has contemplated the notion of using Lisp for work 2017-08-03T04:34:32Z pillton: It isn't a real problem. 2017-08-03T04:35:04Z weltung quit (Ping timeout: 260 seconds) 2017-08-03T04:35:07Z pillton: SLIME is fine for real work. 2017-08-03T04:35:12Z aeth: stylewarning: editors follow popularity, not the other way around, in all cases except Kotlin, which was mainly because that language was made by JetBrains 2017-08-03T04:35:43Z stylewarning: I'm not saying SLIME isn't fine 2017-08-03T04:35:44Z aeth: Sure, the editor support, which follows popularity, can add to a positive feedback effect 2017-08-03T04:36:18Z stylewarning: I'm saying it's a pretty hostile way to start writing Lisp 2017-08-03T04:36:51Z aeth: I agree, actually. I only picked up CL so easily because I was using Python with emacs for a few years before I started programming in CL. 2017-08-03T04:36:51Z bjorkintosh: stylewarning, would you rather a beginner start with TECO? 2017-08-03T04:37:01Z bjorkintosh: 'cause I have news for you! 2017-08-03T04:37:13Z bjorkintosh: it's available on the multics emulator. together with maclisp! 2017-08-03T04:37:13Z stylewarning: pillton: have you relatively consistently convinced small teams of programmers to use Lisp for paid work? 2017-08-03T04:37:40Z pjb joined #lisp 2017-08-03T04:38:00Z aeth: Emacs is probably the popular editor with the second highest learning curve, behind vim. 2017-08-03T04:38:00Z loke: bjorkintosh: It's also available on ITS! 2017-08-03T04:38:04Z loke: Together with MacLisp 2017-08-03T04:38:10Z aeth: There are harder editors than emacs and vim, but they died. 2017-08-03T04:38:17Z stylewarning: Lisp: "install emacs, then learn it, then slime, then learn it, the paredit, and ..." 2017-08-03T04:38:17Z bjorkintosh: wonderful! 2017-08-03T04:38:24Z bjorkintosh: aeth, like which ones? 2017-08-03T04:38:30Z aeth: ed, the standard editor 2017-08-03T04:38:35Z bjorkintosh: it's not dead. 2017-08-03T04:38:37Z stylewarning: Python: "install pyCharm, it has autocomplete and everything and is free" 2017-08-03T04:38:38Z loke: bjorkintosh: TECO 2017-08-03T04:38:44Z loke actualy uses videoteco sometimes. 2017-08-03T04:38:54Z aeth: Pretty much every Unix/Unixish editor from the 1980s other than emacs and vim was harder than those two afaik. 2017-08-03T04:39:07Z loke: There are aspects of it that's better than vi. In particular, the fact that I can edit a sequence of commands and see the effects on the screen. 2017-08-03T04:39:12Z axion: My first 7 years of Lisp was not even using Emacs. and now that I am using Emacs, I'm not using SLIME nor paredit. 2017-08-03T04:39:20Z bjorkintosh: the simple truth is, these are learned skills. 2017-08-03T04:39:24Z loke: In vi, when I type a command, it has happened, and the only thing I can do about it is undo. 2017-08-03T04:39:34Z bjorkintosh: one doesn't simply walk into a machine shop and start machining, for instance. 2017-08-03T04:39:36Z aeth: Anyway, things could be worse. CL could require vim as the only $0 editor with good CL support, rather than Emacs. 2017-08-03T04:39:37Z loke: axion: What are you using then? 2017-08-03T04:39:45Z axion: loke: Sly and smartparens 2017-08-03T04:39:52Z bjorkintosh: or a wood shop ... you HAVE to learn them. refusing to learn the tools of the trade is not terribly useful. 2017-08-03T04:39:55Z loke: axion: Well ok. 2017-08-03T04:40:19Z stylewarning: bjorkintosh: I'm not even saying they're not learnable. I'm saying they're hostile to new users 2017-08-03T04:40:32Z stylewarning: And other editors for other languages demonstrate the ease to be had 2017-08-03T04:40:49Z bjorkintosh: stylewarning, new users from which era? 2017-08-03T04:40:55Z aeth: bjorkintosh: This is the era of hacker ninja rockstar bootcamps and learning to code in 3 weeks. Patience on a tool that takes a while to master like Emacs or vim is out of style. 2017-08-03T04:41:13Z bjorkintosh: right. wrong trade then, aeth. 2017-08-03T04:41:20Z aeth: By the time someone learns emacs, they'll either move on to the next hot field (finance?) or go into management or something. 2017-08-03T04:41:36Z ``Erik quit (Ping timeout: 260 seconds) 2017-08-03T04:42:10Z bjorkintosh: stylewarning, do you feel the same way about mathematics? 2017-08-03T04:42:14Z aeth: Emacs being the only realistic choice is probably a barrier. 2017-08-03T04:42:27Z stylewarning: bjorkintosh: no 2017-08-03T04:42:30Z bjorkintosh: the fun aspects are not beginner, or even intermediate level friendly AT all! 2017-08-03T04:42:45Z stylewarning: bjorkintosh: can you convince me it has to be difficult? 2017-08-03T04:42:53Z stylewarning: Are you purporting there is no better way? 2017-08-03T04:42:56Z bjorkintosh: stylewarning, there are other languages. 2017-08-03T04:43:11Z groovy2shoes quit (Ping timeout: 255 seconds) 2017-08-03T04:43:12Z stylewarning: So are you purporting the difficulty is intrinsic in Lisp? 2017-08-03T04:43:31Z bjorkintosh: it's not that difficult, to be honest. 2017-08-03T04:43:40Z bjorkintosh: you can start with atoms and () 2017-08-03T04:44:06Z bjorkintosh: and hell, learn it with a pencil and paper from the little lisper/schemer 2017-08-03T04:44:07Z stylewarning: What I understand you're saying is "this is how it is, so deal with it", which is not a fantastic attitude if there is any sort of goal to attract more use of the language 2017-08-03T04:44:32Z stylewarning: I'm sure people said the same about ASDF-Install before xach mopped the floor 2017-08-03T04:44:34Z bjorkintosh: hahaha. it's not usually people's first programming choice. 2017-08-03T04:44:44Z bjorkintosh: true. true enough. 2017-08-03T04:45:35Z nsrahmad joined #lisp 2017-08-03T04:45:53Z bjorkintosh: stylewarning, I think it's beginner friendly enough, for those willing to put in a modicum of effort. 2017-08-03T04:46:03Z bjorkintosh: perhaps it's in the intros. 2017-08-03T04:46:17Z bjorkintosh: though, those can only be so basic. 2017-08-03T04:46:27Z aeth: The hardest part about Lisp is probably the arithmetic, i.e. (/ (+ 3 4) (* 8 7)) instead of (3 + 4) / (8 * 7), because people are trained from a very young age to use infix 2017-08-03T04:46:34Z stylewarning: It takes a lot of persistence. And that is a lot to ask when someone is evaluating many options. 2017-08-03T04:46:45Z stylewarning: aeth: that's not my experience 2017-08-03T04:46:56Z aeth: A lot of people probably don't grasp that notation is completely arbitrary 2017-08-03T04:47:00Z axion: There are a couple people here I know of that have been working on an editor for _years_. A _decent_ editor for Lisp is not an easy task. The fact that Lispers love to reinvent wheels instead of working together doesn't help matters. 2017-08-03T04:47:03Z stylewarning: It's an annoyance to people for sure, but they rarely get to a point where they're typing arithmetic 2017-08-03T04:47:13Z bjorkintosh: stylewarning, this is true. but i have in mind a toy fire truck, which is great for beginners! vs the actual thing, which requires serious training. 2017-08-03T04:47:21Z stylewarning: axion: it's immensely difficult 2017-08-03T04:47:23Z bjorkintosh: or if you will, a little drone, vs a 747 2017-08-03T04:47:32Z bjorkintosh: an actual 747. 2017-08-03T04:47:58Z bjorkintosh: perhaps a beginner friendly DSL (like logo) can be used to usher in new users? 2017-08-03T04:48:07Z aeth: axion: Part time, though, afaik. It's probably < 2 years full time for a small team or even an individual. 2017-08-03T04:48:13Z bjorkintosh: who knows. i haven't thought much about it. 2017-08-03T04:48:27Z aeth: axion: Perhaps a crowdfunding would be the proper approach. 2017-08-03T04:48:50Z stylewarning: Anyway, thanks for listening. These are my troubles for the past 5 years trying to use Lisp on teams, as opposed to continued lone-wolf contracting. 2017-08-03T04:49:41Z bjorkintosh: stylewarning, what were some difficulties you encountered? 2017-08-03T04:49:56Z bjorkintosh: was it mainly with the development environment? 2017-08-03T04:50:01Z Devon quit (Ping timeout: 276 seconds) 2017-08-03T04:50:22Z axion: aeth: No, not part time. Crowdfunding only works when there is demand. There just aren't enough people involved to code, let alone fund. Besides, all the coders have their own incompatible ideas. 2017-08-03T04:50:53Z nisar_ joined #lisp 2017-08-03T04:51:00Z bjorkintosh: people's judean front and the pfj 2017-08-03T04:51:16Z pillton: Building critical mass is a hard problem. 2017-08-03T04:51:31Z stylewarning: 1. The dev environment. Very distant 2. are the wacky idiosyncrasies of Lisp. 2017-08-03T04:51:37Z nsrahmad quit (Ping timeout: 246 seconds) 2017-08-03T04:52:33Z bjorkintosh: stylewarning, Common Lisp. 2017-08-03T04:52:39Z pillton: Which idiosyncrasies? 2017-08-03T04:52:45Z bjorkintosh: stylewarning, did you try eclipse or some other such language? 2017-08-03T04:52:51Z bjorkintosh: *err. editor, i meant. 2017-08-03T04:52:59Z bjorkintosh: 'cause there's a lisp plugin for it. 2017-08-03T04:53:04Z stylewarning: Some have tried atom 2017-08-03T04:53:16Z aeth: axion: There are only so many viable ideas. If it seems like everyone has their own ideas for x, it's probably because there's not enough people in the community, because otherwise by the pigeonhole principle, there'd be at least one idea with more than one proponent. 2017-08-03T04:53:43Z bjorkintosh: stylewarning, what would you like the dev environment for common lisp to behave or look like? 2017-08-03T04:53:50Z stylewarning: pillton: kooky naming of functions, the choice of built-in data structures, the expectation of the existence of high-level features like list comprehensions, the package system, the concept of the image 2017-08-03T04:53:52Z axion: aeth: Your conclusion is what I just stated. 2017-08-03T04:54:16Z bjorkintosh: stylewarning, the concept of the image? how's that different from smalltalk? 2017-08-03T04:54:23Z stylewarning: bjorkintosh: I myself am relatively happy with slime and emacs. It would be nice if an editor was a bonafide GUI 2017-08-03T04:54:38Z bjorkintosh: like which one, Eclipse? 2017-08-03T04:55:01Z bjorkintosh: Visual Studio? 2017-08-03T04:55:14Z pillton: stylewarning: What are list comprehensions? 2017-08-03T04:56:01Z bjorkintosh: pillton, https://en.wikipedia.org/wiki/List_comprehension 2017-08-03T04:56:05Z stylewarning: bjorkintosh: visual studio, pyCharm, sublime 2017-08-03T04:56:17Z stylewarning: pillton: a macro you can write in 5 minutes in Lisp 2017-08-03T04:56:44Z bjorkintosh: stylewarning, but extensions exist for common lisp for eclipse, visual studio and apparently even sublime. 2017-08-03T04:56:58Z stylewarning: They all suck 2017-08-03T04:57:02Z stylewarning: They're all terrible 2017-08-03T04:57:19Z bjorkintosh: they're all open sores :) 2017-08-03T04:57:26Z bjorkintosh: i mean. open source. 2017-08-03T04:57:29Z bjorkintosh: shame on me. 2017-08-03T04:58:06Z stylewarning: A lot of open source software sucks and is unfixable 2017-08-03T04:58:08Z aeth: list comprehensions aren't needed in an all-expression language. They're not that different from a loop one-liner like (loop for i upto 10 collect (expt i 2)) 2017-08-03T04:58:40Z aeth: You can just say (setf foo (loop for i upto 10 collect (expt i 2))) where some other languages might need special syntax to do something comparable 2017-08-03T04:58:52Z pillton: stylewarning: People complain. I complain when I have to program in Python e.g. is this operator a function or a method? 2017-08-03T04:59:22Z pillton: stylewarning: The naming of functions can be explained by the "common" in common lisp. 2017-08-03T04:59:27Z groovy2shoes joined #lisp 2017-08-03T04:59:27Z stylewarning: Yeah but at least you can write Python with your tools supporting you 2017-08-03T04:59:29Z bjorkintosh: pillton, list comprehension exists in python. 2017-08-03T04:59:52Z bjorkintosh: stylewarning, I feel like emacs has significant support for lisp. 2017-08-03T04:59:57Z bjorkintosh: even the extensions for it are in lisp! 2017-08-03T05:00:03Z bjorkintosh: how much more support is required? 2017-08-03T05:00:36Z stylewarning: Emacs support for Lisp is phenomenal 2017-08-03T05:00:45Z learning_ quit (Remote host closed the connection) 2017-08-03T05:00:58Z bjorkintosh: maybe you have a unique perspective for implementing a much much better environment! 2017-08-03T05:01:00Z pillton: stylewarning: The concept of the image arises because everything occurs at run time. 2017-08-03T05:01:25Z stylewarning: I understand why it arises. I understand why Lisp has wacky names. 2017-08-03T05:01:35Z stylewarning: I understand Emacs is very good. 2017-08-03T05:02:20Z bjorkintosh: It's a terrible attitude to have, but quite a few people expect things to be really really easy just because they have a passing interest in it. 2017-08-03T05:02:26Z bjorkintosh: and that's unfortunately, most beginners. 2017-08-03T05:02:35Z stylewarning: Yes you're right and I agree. 2017-08-03T05:02:44Z pillton: stylewarning: Well. The wacky names aren't going to change. The concept of an image isn't going to change (any time soon). 2017-08-03T05:02:56Z stylewarning: I don't want them to change, either. 2017-08-03T05:03:08Z learning_ joined #lisp 2017-08-03T05:03:08Z bjorkintosh: they may write a recursive function in it once in an undergraduate course. but that's the extent of what they'll ever do with it. 2017-08-03T05:03:20Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-03T05:03:57Z bjorkintosh: must interfaces be created just to make their lives easier? or does it adversely affect a serious amateur/professional's use as well? 2017-08-03T05:04:03Z aeth: Just abaout every popular language with a history has some bad names. 2017-08-03T05:04:23Z bjorkintosh: lambda the ultimate doesn't! all you get is lambda :) 2017-08-03T05:04:31Z bjorkintosh: and ( ) and ' . ' 2017-08-03T05:04:49Z bjorkintosh: machine language doesn't either. all you get are a few 1s and 0s. 2017-08-03T05:04:52Z bjorkintosh: that's it! 2017-08-03T05:05:02Z aeth: Arguably, every language that uses && and || instead of "and" and "or" (and there are many) are examples of languages with some bad name choices. 2017-08-03T05:05:03Z pillton: All that matters is that we keep trying to do cool stuff and keep trying to help newcomers. 2017-08-03T05:05:03Z bjorkintosh: i can teach a baby to say either. 2017-08-03T05:05:13Z stylewarning: bjorkintosh: have you ever made software for someone else to use, and you were on the hook for making the software good and usable and intuitive? 2017-08-03T05:05:14Z aeth: && and || are harder to type for touch typists, and harder to read, and uglier. 2017-08-03T05:05:28Z bjorkintosh: stylewarning, yes. it was a PITA! 2017-08-03T05:05:32Z aeth: (And they're worse than "car" by a ton) 2017-08-03T05:05:34Z bjorkintosh: i disliked it fervently. 2017-08-03T05:05:42Z bjorkintosh: luckily, it wasn't a programming tool. 2017-08-03T05:05:55Z stylewarning: I agree! It's a huge PITA to do rigorously and correctly. 2017-08-03T05:06:57Z aeth: JavaScript and C++ are two very popular languages with minefields full of quirks. CL's history isn't an obstacle. 2017-08-03T05:07:33Z bjorkintosh: exactly, stylewarning. if anything, C++ doesn't even bother to be friendly to professionals... 2017-08-03T05:07:37Z bjorkintosh: what do you make of it? 2017-08-03T05:08:08Z bjorkintosh: let alone beginners of C++! 2017-08-03T05:08:12Z aeth: What makes a language popular are applications and libraries. Language Foo could be the easiest language in the world to write something in, but if that something was already written 15 years ago as a FOSS library, the work's done. 2017-08-03T05:08:29Z stylewarning: There are at least 5 good IDEs for C++ and millions of applications and books 2017-08-03T05:08:49Z stylewarning: And yes C++ the language is hostile 2017-08-03T05:08:52Z aeth: People will choose the language with the already-written library over the language where it's easy to write that library, because already-written is easier. 2017-08-03T05:08:56Z bjorkintosh: they're not especially beginner friendly. 2017-08-03T05:09:16Z bjorkintosh: beginners use them because they Have no choice! 2017-08-03T05:09:23Z stylewarning: True 2017-08-03T05:09:42Z stylewarning: People will learn and use Lisp and it's dev env when they have no choice too 2017-08-03T05:09:56Z stylewarning: In my experience they learn to like it 2017-08-03T05:10:12Z aeth: Few people like C++, but C++ libraries save them work. Same with JavaScript. It's also sort of the case with Python and its countless libraries, but I think Python's ratio of fans to reluctant users is probably higher than the other two. 2017-08-03T05:10:13Z bjorkintosh: software sucks. that's all there is to it, for now at least. 2017-08-03T05:10:24Z bjorkintosh: imagine what it was like when punch cards were the order of the day. 2017-08-03T05:11:30Z caffe: burroughs was king 2017-08-03T05:11:48Z bjorkintosh: in its corner, sure! 2017-08-03T05:11:58Z oleo quit (Quit: irc client terminated!) 2017-08-03T05:12:11Z himmAllRight quit (Quit: No Ping reply in 180 seconds.) 2017-08-03T05:12:15Z caffe: well, yeah. they didn't have the marketing power of IBM 2017-08-03T05:13:17Z caffe: but they had the fast B5000 series and the fastest card readers 2017-08-03T05:13:33Z himmAllRight joined #lisp 2017-08-03T05:14:02Z bjorkintosh: stylewarning, have you ever played around with a truly beginner friendly language? 2017-08-03T05:14:53Z Amplituhedron joined #lisp 2017-08-03T05:15:45Z bjorkintosh: like Scratch, for instance? 2017-08-03T05:16:39Z bjorkintosh: ... or blockly? 2017-08-03T05:19:19Z milanj joined #lisp 2017-08-03T05:20:19Z nisar_ quit (Quit: Leaving) 2017-08-03T05:21:05Z BlueRavenGT quit (Ping timeout: 240 seconds) 2017-08-03T05:22:36Z glamas joined #lisp 2017-08-03T05:27:48Z glamas quit (Remote host closed the connection) 2017-08-03T05:28:03Z glamas joined #lisp 2017-08-03T05:28:08Z stylewarning: bjorkintosh: no 2017-08-03T05:28:18Z stylewarning: i know about them but i'm not talking about beginning programmers 2017-08-03T05:28:19Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-08-03T05:28:52Z bjorkintosh: you're talking about beginning professionals? 2017-08-03T05:30:58Z glamas_ joined #lisp 2017-08-03T05:31:17Z nsrahmad joined #lisp 2017-08-03T05:31:46Z bjorkintosh: as in, those who give up if google or s.o. won't answer their question instantly? 2017-08-03T05:32:28Z glamas quit (Ping timeout: 260 seconds) 2017-08-03T05:37:43Z ebzzry quit (Ping timeout: 240 seconds) 2017-08-03T05:37:56Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T05:38:01Z glamas_ quit (Remote host closed the connection) 2017-08-03T05:38:23Z beach: Good morning everyone! 2017-08-03T05:38:36Z drmeister: Hi beach 2017-08-03T05:39:19Z drmeister: beach: Did you see the flame graphs that I've been generating for the cclasp compiler? I'm curious if you have any thoughts on them. 2017-08-03T05:39:28Z drmeister: I can profile Common Lisp and C++ code together. 2017-08-03T05:39:45Z beach: Sorry, I have been very busy, so I didn't have time to look at them. 2017-08-03T05:39:57Z drmeister: No problem, I understand. 2017-08-03T05:39:58Z ``Erik joined #lisp 2017-08-03T05:40:09Z ebzzry joined #lisp 2017-08-03T05:40:35Z drmeister: http://i.imgur.com/ccFSIKv.png 2017-08-03T05:40:40Z drmeister: For anyone who is curious 2017-08-03T05:41:17Z drmeister: The Y axis is backtrace frames and the X axis was time - but then it's sorted across the X-axis in alphabetical order by function name. 2017-08-03T05:41:24Z glamas joined #lisp 2017-08-03T05:41:57Z drmeister: They are described here: https://github.com/brendangregg/FlameGraph 2017-08-03T05:42:14Z Karl_Dscc joined #lisp 2017-08-03T05:42:19Z drmeister: Compilers are a bugger to profile - they are complicated. 2017-08-03T05:42:42Z drmeister: The backtraces are gathered using 'dtrace' and run through a pruning step written in Common Lisp. 2017-08-03T05:42:42Z beach: You're telling me? 2017-08-03T05:43:20Z drmeister: You never really appreciate it until you bang your head against a wall for four years trying to figure out why you are having so much trouble profiling them. 2017-08-03T05:44:56Z ``Erik quit (Ping timeout: 246 seconds) 2017-08-03T05:45:54Z Bock joined #lisp 2017-08-03T05:45:55Z Bock quit (Max SendQ exceeded) 2017-08-03T05:46:07Z glamas quit (Ping timeout: 260 seconds) 2017-08-03T05:46:13Z ``Erik joined #lisp 2017-08-03T05:50:58Z Bock joined #lisp 2017-08-03T05:52:26Z Fare quit (Ping timeout: 276 seconds) 2017-08-03T05:54:22Z pjb quit (Ping timeout: 276 seconds) 2017-08-03T05:55:03Z glamas joined #lisp 2017-08-03T05:56:22Z mishoo joined #lisp 2017-08-03T05:58:30Z flamebeard joined #lisp 2017-08-03T05:58:41Z Amplituhedron joined #lisp 2017-08-03T06:04:07Z xrash quit (Ping timeout: 276 seconds) 2017-08-03T06:05:10Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-03T06:06:13Z weltung joined #lisp 2017-08-03T06:06:16Z xrash joined #lisp 2017-08-03T06:08:17Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-03T06:08:18Z daemoz quit (Remote host closed the connection) 2017-08-03T06:08:24Z ebzzry quit (Ping timeout: 260 seconds) 2017-08-03T06:08:38Z daemoz joined #lisp 2017-08-03T06:13:20Z weltung_ joined #lisp 2017-08-03T06:13:27Z learning_ quit (Remote host closed the connection) 2017-08-03T06:13:45Z LooneyTunes joined #lisp 2017-08-03T06:15:11Z Karl_Dscc quit (Remote host closed the connection) 2017-08-03T06:15:24Z weltung quit (Ping timeout: 260 seconds) 2017-08-03T06:17:12Z mnxl joined #lisp 2017-08-03T06:18:55Z nsrahmad quit (Quit: Leaving) 2017-08-03T06:23:56Z keviv quit (Remote host closed the connection) 2017-08-03T06:26:29Z weltung joined #lisp 2017-08-03T06:27:44Z Devon joined #lisp 2017-08-03T06:28:07Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-03T06:30:49Z vap1 joined #lisp 2017-08-03T06:30:51Z vaporatorius joined #lisp 2017-08-03T06:31:43Z Amplituhedron quit (Ping timeout: 246 seconds) 2017-08-03T06:32:53Z vap1 quit (Client Quit) 2017-08-03T06:37:34Z Amplituhedron joined #lisp 2017-08-03T06:39:52Z mishoo quit (Ping timeout: 255 seconds) 2017-08-03T06:40:25Z sellout- joined #lisp 2017-08-03T06:43:28Z weltung_ joined #lisp 2017-08-03T06:44:17Z leadoverlove joined #lisp 2017-08-03T06:44:43Z weltung quit (Ping timeout: 240 seconds) 2017-08-03T06:50:45Z phoe: _death: I allowed myself to add this to my CL hmmm collection 2017-08-03T06:51:34Z pjb joined #lisp 2017-08-03T06:51:38Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T06:53:45Z leadoverlove quit (Remote host closed the connection) 2017-08-03T06:56:40Z weltung joined #lisp 2017-08-03T06:57:50Z weltung_ quit (Ping timeout: 240 seconds) 2017-08-03T07:01:25Z pjb quit (Ping timeout: 255 seconds) 2017-08-03T07:01:52Z Amplituhedron joined #lisp 2017-08-03T07:01:58Z damke_ joined #lisp 2017-08-03T07:02:04Z weltung quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-03T07:02:40Z weltung joined #lisp 2017-08-03T07:02:42Z LooneyTunes quit (Ping timeout: 258 seconds) 2017-08-03T07:04:40Z damke quit (Ping timeout: 268 seconds) 2017-08-03T07:06:31Z marvin2 joined #lisp 2017-08-03T07:09:08Z weltung quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-03T07:09:20Z mishoo joined #lisp 2017-08-03T07:10:34Z shka_ quit (Ping timeout: 246 seconds) 2017-08-03T07:18:14Z m00natic joined #lisp 2017-08-03T07:25:20Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T07:28:12Z test1600_ joined #lisp 2017-08-03T07:31:52Z test1600 quit (Ping timeout: 276 seconds) 2017-08-03T07:34:08Z Devon quit (Ping timeout: 258 seconds) 2017-08-03T07:34:43Z Amplituhedron joined #lisp 2017-08-03T07:41:13Z leadoverlove joined #lisp 2017-08-03T07:41:25Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T07:43:30Z leadoverlove: Looking to learn the lisp language, does anyone have any good resources or links to get started? 2017-08-03T07:44:34Z antoszka: minion: tell leadoverlove about pcl 2017-08-03T07:44:35Z minion: leadoverlove: please see pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005). 2017-08-03T07:44:48Z antoszka: leadoverlove: you might also want to join #clnoobs 2017-08-03T07:45:02Z antoszka: leadoverlove: to discuss introductory issues :) 2017-08-03T07:45:42Z knicklux quit (Ping timeout: 260 seconds) 2017-08-03T07:47:40Z leadoverlove quit (Quit: Mutter: www.mutterirc.com) 2017-08-03T07:48:44Z ``Erik quit (Ping timeout: 260 seconds) 2017-08-03T07:51:34Z Amplituhedron joined #lisp 2017-08-03T07:54:29Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T07:59:08Z knicklux joined #lisp 2017-08-03T07:59:26Z leadoverlove joined #lisp 2017-08-03T07:59:48Z ``Erik joined #lisp 2017-08-03T08:00:26Z leadoverlove: That's great, thank you. 2017-08-03T08:02:46Z knicklux quit (Remote host closed the connection) 2017-08-03T08:03:23Z leadoverlove quit (Client Quit) 2017-08-03T08:04:16Z hhdave joined #lisp 2017-08-03T08:04:49Z Amplituhedron joined #lisp 2017-08-03T08:07:44Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T08:10:12Z quazimodo quit (Ping timeout: 260 seconds) 2017-08-03T08:13:36Z sellout- quit (Quit: Leaving.) 2017-08-03T08:14:15Z glamas quit (Remote host closed the connection) 2017-08-03T08:14:21Z learning_ joined #lisp 2017-08-03T08:14:24Z mnxl quit (Quit: Leaving) 2017-08-03T08:16:31Z raynold quit (Quit: Connection closed for inactivity) 2017-08-03T08:17:54Z Amplituhedron joined #lisp 2017-08-03T08:18:34Z glamas joined #lisp 2017-08-03T08:19:05Z fkae quit (Remote host closed the connection) 2017-08-03T08:19:19Z learning_ quit (Ping timeout: 276 seconds) 2017-08-03T08:20:44Z glamas quit (Remote host closed the connection) 2017-08-03T08:22:14Z leadoverlove joined #lisp 2017-08-03T08:22:20Z csprng quit (Ping timeout: 255 seconds) 2017-08-03T08:27:58Z leadoverlove quit (Remote host closed the connection) 2017-08-03T08:30:17Z EvilAngel joined #lisp 2017-08-03T08:31:51Z EvilAngel: hey everyone 2017-08-03T08:33:31Z beach: Hello EvilAngel. 2017-08-03T08:34:45Z vlatkoB joined #lisp 2017-08-03T08:34:52Z rumbler31 joined #lisp 2017-08-03T08:35:26Z EvilAngel: hey beach 2017-08-03T08:35:51Z EvilAngel: I know this is off topic but god it would be coold if they'd done openbazaar in cl 2017-08-03T08:36:53Z EvilAngel: I'm interested in doing something in common lisp that will bring attention to it. I think that's the key. Like Ruby has metasploit. Lisp needs something rad 2017-08-03T08:37:16Z beach: Nobody is stopping you from writing something like that. 2017-08-03T08:37:25Z EvilAngel: right 2017-08-03T08:38:12Z EvilAngel: the tthing is is these projects evolve so quickly. Python is used for this reason. but anyone whose used cl knows it's the prototyping god language that just happens to be badass after without much change to the prototype usually lol 2017-08-03T08:38:14Z phoe: EvilAngel: let me google openbazaar 2017-08-03T08:38:22Z phoe: > god language 2017-08-03T08:38:22Z bjorkintosh: EvilAngel, emacs is not enough? :) 2017-08-03T08:38:35Z leadoverlove joined #lisp 2017-08-03T08:38:36Z phoe: geez, it's a human tool, made by humans. nothing godly in it. 2017-08-03T08:38:38Z EvilAngel: lol 2017-08-03T08:39:08Z EvilAngel: it's godly bro and you know it. hahahahaha 2017-08-03T08:39:10Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-03T08:39:23Z phoe: welll, it's very nice, and it's my favorite language for many good reasons. 2017-08-03T08:39:41Z EvilAngel: yup, it's the only one I will just pick up a file and read for the hell of it 2017-08-03T08:40:12Z phoe: but it didn't come to us in a holy book. it evolved as a work of men; on a side note, it was and is fascinating for me to observe how it evolved over time. 2017-08-03T08:40:21Z EvilAngel: yup 2017-08-03T08:40:23Z EvilAngel: same here 2017-08-03T08:40:47Z EvilAngel: there was a guy nyosomethign who was doing a lisp system here 2017-08-03T08:40:50Z EvilAngel: wonder if he finished 2017-08-03T08:42:12Z beach: There are plenty of people working on Common Lisp systems here. What made that particular one attract your attention? 2017-08-03T08:42:45Z leadoverlove quit (Remote host closed the connection) 2017-08-03T08:43:26Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T08:45:05Z kora9: Is Common Lisp a type-safe language? 2017-08-03T08:45:12Z beach: Yes. 2017-08-03T08:45:20Z jackdaniel: it has strong dynamic typing 2017-08-03T08:45:29Z kora9: Cool 2017-08-03T08:49:11Z phoe: kora9: it is, by default. 2017-08-03T08:49:22Z kora9: In Land of Lisp the author says that Common Lisp developers avoid using upper case letters for symbols, but upper case letters are often used to denote global variables right? 2017-08-03T08:49:34Z phoe: kora9: not really. 2017-08-03T08:49:39Z kora9: No? 2017-08-03T08:49:42Z beach: kora9: No. 2017-08-03T08:49:47Z kora9: Oh. 2017-08-03T08:49:54Z phoe: Common Lisp upcases everything you type by default. This behaviour can be changed, but it's the default. 2017-08-03T08:49:55Z kora9: I read that somewhere 2017-08-03T08:50:09Z kora9: Ah yeah I meant in the source code 2017-08-03T08:50:10Z phoe: It has a purpose - by default, everything you type is lowercase, but everything Lisp returns is uppercase. 2017-08-03T08:50:21Z phoe: So you can see instantly what comes from the programmer and what comes from the compiler. 2017-08-03T08:50:25Z kora9: oh 2017-08-03T08:50:29Z kora9: That's smart 2017-08-03T08:50:37Z beach: kora9: Are you confusing Common Lisp with some other language? 2017-08-03T08:50:41Z phoe: The default upcasing also makes it indifferent if your var is called *frobnicator* or *fRoBnIcAtOr*. 2017-08-03T08:50:54Z xrash quit (Remote host closed the connection) 2017-08-03T08:50:56Z kora9: beach: I might be confusing it with another type of Lisp perhaps 2017-08-03T08:51:00Z beach: kora9: Style rules like that are strongly related to the particular language being used. 2017-08-03T08:51:03Z phoe: Your symbols can have lowercase symbols, you just need to escape them with \ or ||. 2017-08-03T08:51:06Z kora9: I read about a few different ones before coming to CL 2017-08-03T08:51:16Z EvilAngel: kora9: just don't do it! CamelCase is for the "others" 2017-08-03T08:51:26Z kora9: EvilAngel: okay :) 2017-08-03T08:53:01Z Amplituhedron joined #lisp 2017-08-03T08:56:51Z kora9: Land of Lisp is really good 2017-08-03T08:57:03Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T08:58:18Z kora9: I really liked the explanation of lists, forms and cons cells. I've read about it before but was confused 2017-08-03T09:00:19Z damke joined #lisp 2017-08-03T09:00:36Z macdavid_ joined #lisp 2017-08-03T09:01:40Z macdavid313 quit (Remote host closed the connection) 2017-08-03T09:03:41Z damke_ quit (Ping timeout: 268 seconds) 2017-08-03T09:06:00Z EvilAngel quit (Quit: leaving) 2017-08-03T09:07:11Z Amplituhedron joined #lisp 2017-08-03T09:09:50Z kora9: "It's in the cadr of the train" :D 2017-08-03T09:17:01Z kora9: I've heard that recursion in CL are often turned into iteration for the system, did lisp machines also do that or were they somehow more optimized to do recursion? 2017-08-03T09:18:34Z beach: kora9: Do you have reasons to believe that Lisp machine code used recursion a lot? 2017-08-03T09:18:51Z phoe: kora9: Lisp is not required to do TCO, first and foremost. 2017-08-03T09:19:03Z kora9: I'm somehow under the impression that recursion is a central aspect of Lisp 2017-08-03T09:19:18Z beach: It is not. 2017-08-03T09:19:24Z phoe: Schemes and Clojure - sure thing. Common Lisp - not really. 2017-08-03T09:19:34Z beach: kora9: Do you have reasons to believe that Lisp machine code used recursion a lot? 2017-08-03T09:19:43Z kora9: beach: I'm not sure, I thought so 2017-08-03T09:20:04Z phoe: Some implementations, under some circumstances, can optimize tail calls into iteration. SBCL does it on default optimization settings, for example. 2017-08-03T09:20:18Z kora9: aha 2017-08-03T09:20:19Z phoe: But if you tell it to optimize for debuggability, for example, it will stop doing that. 2017-08-03T09:20:32Z phoe: So you can see all the stack frames of your recursive function. 2017-08-03T09:20:40Z phoe: Or so you can trace it, for example. 2017-08-03T09:21:18Z kora9: Is optimizing recursion into iteration something that's more optimized to computation in general, or is it due to the nature of todays popular architectures? 2017-08-03T09:21:40Z phoe: I think it's an old idea, to turn tail calls into loops. 2017-08-03T09:21:55Z kora9: ah 2017-08-03T09:21:56Z phoe: There is an algorithm for doing that. 2017-08-03T09:22:12Z phoe: And an algorithm the other way around, too. 2017-08-03T09:22:23Z nsrahmad joined #lisp 2017-08-03T09:22:32Z bjorkintosh: kora9, are you really liking recursion? 2017-08-03T09:22:34Z bjorkintosh: magic isn't it? 2017-08-03T09:22:34Z kora9: I've played a little bit with TIS-100 to try and get an understanding of how computers work on a lower level, but I don't understand it well yet 2017-08-03T09:22:58Z kora9: bjorkintosh: Yes! I like that it's a bit challenging, and a new way to think which opens up new possibilities :) 2017-08-03T09:23:08Z kora9: Well, new to me, I should say 2017-08-03T09:23:19Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T09:23:25Z bjorkintosh: it's a mathematical concept, you know that, right? 2017-08-03T09:23:37Z kora9: I don't, I'm not good with mathematics 2017-08-03T09:23:42Z Th30n joined #lisp 2017-08-03T09:23:46Z kora9: But it doesn't surprise me 2017-08-03T09:23:47Z bjorkintosh: you don't have to be, to understand recursion. 2017-08-03T09:23:59Z jamtho joined #lisp 2017-08-03T09:24:57Z phoe: bjorkintosh: to understand recursion you only need to understand recursion 2017-08-03T09:25:09Z kora9: :) 2017-08-03T09:25:17Z kora9: I like loop too in lisp, it's really awesome 2017-08-03T09:25:24Z bjorkintosh: yes, phoe, agreed! 2017-08-03T09:25:42Z bjorkintosh: kora9, take a look at the wiki page on recursion sometime for numerous other examples of it 2017-08-03T09:25:56Z bjorkintosh: hell, just hold up a mirror to another. you'll see something like it. 2017-08-03T09:26:02Z kora9: and CL has the most straight forward if implementation I've ever used. It's a lot nicer than if(i=0; i whereas here (so far, in my learning) it automatically returns nil or the result (of the last evaluation I think?) 2017-08-03T10:04:53Z dim: everyting in CL returns something, and that pops up, yes 2017-08-03T10:05:03Z dim: it's all expressions 2017-08-03T10:05:18Z antoszka: there are no „statements” like in other broken languages(tm) 2017-08-03T10:05:35Z kora9: I'm slowly wrapping my head around that :-) 2017-08-03T10:06:00Z phoe: kora9: in general, the value of the last form in a "block" is returned. 2017-08-03T10:06:01Z antoszka: everything is an expressions that returns a value, and may also produce side effects (like *printing* some text to the screen) 2017-08-03T10:06:12Z antoszka: phoe: I think that's unnecessary detail ATM :) 2017-08-03T10:06:16Z phoe: (let () 1 2 3 4 5) ;=> 5 2017-08-03T10:06:40Z dim: strange way to write progn ;-) 2017-08-03T10:06:43Z antoszka: yeah 2017-08-03T10:06:44Z phoe: except some special cases. PROG1 returns the value of its first form, PROG2 - second form. 2017-08-03T10:06:48Z antoszka: that's what I thought 2017-08-03T10:07:01Z phoe: dim: you're right. (progn 1 2 3 4 5) ;=> 5 2017-08-03T10:07:15Z phoe: (defun foo () 1 2 3 4 5) (foo) ;=> 5 2017-08-03T10:08:07Z kora9: phoe: ah 2017-08-03T10:08:36Z kora9: I actually have gotten to the part of progn and I think I understand what a block is :) 2017-08-03T10:09:13Z phoe: to put it very correctly, I said "block" in there informally. 2017-08-03T10:09:22Z phoe: A Lisp block is something a bit different. 2017-08-03T10:09:22Z kora9: ah 2017-08-03T10:09:24Z phoe: clhs block 2017-08-03T10:09:24Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_block.htm 2017-08-03T10:09:41Z kora9: Ah ok, I don't know what that is 2017-08-03T10:09:41Z phoe: I meant "block" as in, a general sequence of forms contained in some other form. 2017-08-03T10:09:52Z phoe: Don't worry about it for now. 2017-08-03T10:10:07Z knobo joined #lisp 2017-08-03T10:10:12Z kora9: phoe: Yeah that's what I thought of, as I didn't know of 'block' in the link 2017-08-03T10:10:40Z bjorkintosh: kora9, how are you learning CL? 2017-08-03T10:11:37Z kora9: bjorkintosh: haphazardly :-) 2017-08-03T10:12:13Z kora9: bjorkintosh: I'm reading Land of Lisp and messing around, modifying examples and (sometimes) trying to code something simple 2017-08-03T10:12:19Z bjorkintosh: ah. 2017-08-03T10:12:26Z bjorkintosh: is it your first language? 2017-08-03T10:12:35Z kora9: No, I know Java 2017-08-03T10:12:57Z kora9: I really dislike Java. Programming in CL is fun, even though I'm not good at it 2017-08-03T10:13:18Z bjorkintosh: one is a tool, the other appears to be a way of life. 2017-08-03T10:13:23Z bjorkintosh: your pick. 2017-08-03T10:13:47Z kora9: Java is probably a better choice if you want someone to hire you 2017-08-03T10:14:02Z phoe: and Lisp is probably a better choice if you want to hire yourself 2017-08-03T10:14:07Z kora9: yes 2017-08-03T10:14:08Z phoe ducks 2017-08-03T10:14:12Z kora9: :) 2017-08-03T10:15:21Z kora9: I don't know, I'm not a java master but I know enough to work on projects, with CL it feels like it's not killing my inner child and the pleasure of making applications as I use it though 2017-08-03T10:15:55Z bjorkintosh: perhaps after learning CL, you might revisit the jvm world again. 2017-08-03T10:16:10Z kora9: Sure, I don't hate the JVM 2017-08-03T10:16:11Z bjorkintosh: with your newly acquired CL ninja skills! 2017-08-03T10:16:46Z kora9: I've seen there are lisp-y languages for it that seems like a cool idea, but I wanted to learn lisp by doing CL (and possibly scheme after that) 2017-08-03T10:18:24Z kora9: Ok. Time for my 20min study break :) 2017-08-03T10:20:03Z phoe: The JVM is a pretty wonderful tool with the most amazing ways to misuse it invented and implemented 2017-08-03T10:20:13Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T10:20:17Z kora9: :D 2017-08-03T10:20:43Z kora9: What I don't get is all those getters and setters.. was there really no one that could think of a simpler way? 2017-08-03T10:21:05Z kora9: In so many cases they're almost identical 2017-08-03T10:21:27Z Harag quit (Ping timeout: 240 seconds) 2017-08-03T10:24:10Z TMA: kora9: the getters and setters are probably the simple way -- for the language implementers 2017-08-03T10:24:14Z LyndsySimon quit (Ping timeout: 246 seconds) 2017-08-03T10:24:27Z kora9: TMA: ah, yes 2017-08-03T10:25:09Z beach: antoszka: In fact the concept of a statement exists in Common Lisp. 2017-08-03T10:25:30Z _death: clhs go 2017-08-03T10:25:30Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_go.htm 2017-08-03T10:25:35Z beach: dim: It is not true that everything returns something. 2017-08-03T10:25:50Z beach: dim: (VALUES) does not return anything. 2017-08-03T10:25:58Z LyndsySimon joined #lisp 2017-08-03T10:26:02Z TMA: beach: even (values) return something -- an empty set of values 2017-08-03T10:26:16Z beach: Fascinating. 2017-08-03T10:26:19Z Amplituhedron joined #lisp 2017-08-03T10:28:28Z TMA is not saying that the empty set of values necessarily conveys useful information 2017-08-03T10:30:06Z TMA: there are forms that do not return anything. one of such is somewhat paradoxically named RETURN --- it does not return anything. it causes something other to return something 2017-08-03T10:30:09Z antoszka: beach: Can you tell me more, please? 2017-08-03T10:31:18Z _death: TMA: it may be more accurate to use the term "evaluates to".. then there's no confusion with RETURN 2017-08-03T10:31:41Z _death: *phrase 2017-08-03T10:32:43Z test1600_ quit (Ping timeout: 240 seconds) 2017-08-03T10:32:54Z kora9: _death: oh that's a good distinction. I've been using 'returns' but 'evaluates to' is better 2017-08-03T10:33:28Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T10:33:30Z TMA: _death: yeah. but the pun would not be there then 2017-08-03T10:36:09Z kora9: Are there any particular areas in which Lisp is not so good? 2017-08-03T10:37:49Z Harag joined #lisp 2017-08-03T10:38:24Z _death: kora9: the community is small, so Lisp isn't so good if you need to rely on there being battle-tested complete libraries for everything 2017-08-03T10:38:57Z kora9: ah 2017-08-03T10:39:27Z _death: kora9: but if you focus on solving your own problems and are not afraid to write code, then it may not be an issue 2017-08-03T10:39:42Z kora9: On the other hand, many of the libraries I've tried so far seems to be very competently written whereas with Java, there are many libraries that are not 2017-08-03T10:39:43Z Shinmera: There's other areas in which it is not so good because the standard has problems but that's detail stuff. 2017-08-03T10:39:55Z TMA: kora9: I find at least these two areas lacking: (1) strong static type discipline (2) avoiding parentheses [for people that are afraid of them] 2017-08-03T10:40:10Z kora9: ah 2017-08-03T10:40:13Z nullniverse quit (Ping timeout: 240 seconds) 2017-08-03T10:40:30Z Amplituhedron joined #lisp 2017-08-03T10:41:31Z attila_lendvai joined #lisp 2017-08-03T10:41:31Z attila_lendvai quit (Changing host) 2017-08-03T10:41:31Z attila_lendvai joined #lisp 2017-08-03T10:42:46Z _death: kora9: as a language, Lisp fits well, or can be made to fit well, with practically everything.. it's a good general purpose language. of course, some specialized fields require specialized languages (but they can also be lispy) 2017-08-03T10:42:50Z TMA: kora9: and (3) using point-free style is not impossible but: (a) looks weird/unnatural (b) is severely hampered by the absence of automatic currying 2017-08-03T10:43:51Z kora9: Ah, yes 2017-08-03T10:43:54Z TMA: kora9: any such can be added, perhaps more easily than in other languages 2017-08-03T10:44:13Z Shinmera: I for one am very happy with the lack of static typing. 2017-08-03T10:44:19Z kora9: Yes, there doesn't seem to be much distinction between making your application and extending the language 2017-08-03T10:44:22Z TMA: but adding that is not trivial 2017-08-03T10:44:27Z shifty quit (Ping timeout: 240 seconds) 2017-08-03T10:45:57Z Bike joined #lisp 2017-08-03T10:45:58Z TMA: Shinmera: I am too, for the most part. But every now and then I find a bug in my code that could not creep in unnoticed if there were more of static typing. 2017-08-03T10:47:21Z phoe: What is the proper way to define a constant that is a list? 2017-08-03T10:47:42Z phoe: (defconstant +foo+ '(1 2 3)) complains when I redefine it - because the lists aren't EQL, it seems. 2017-08-03T10:47:45Z _death: phoe: use defvar 2017-08-03T10:47:50Z Shinmera: Just using defvar is an easy way. 2017-08-03T10:47:55Z phoe: got it. 2017-08-03T10:48:08Z _death: there is also alexandria:define-constant 2017-08-03T10:48:12Z Shinmera: Otherwise I think alexandria has-- yes. 2017-08-03T10:48:20Z Shinmera: I still recommend just using defvar though. 2017-08-03T10:48:56Z _death: yep.. defconstant is for simple things, just to help the compiler a bit 2017-08-03T10:49:24Z _death: sometimes I use sbcl's defglobal when I'm using the repl or doing small experiment 2017-08-03T10:49:27Z _death: *experiments 2017-08-03T10:53:11Z dec0n quit (Read error: Connection reset by peer) 2017-08-03T10:53:21Z knobo: Can I check if an object is a literal? (list 123) vs '(123)? 2017-08-03T10:53:42Z _death: no 2017-08-03T10:55:09Z dec0n joined #lisp 2017-08-03T10:55:13Z lvo joined #lisp 2017-08-03T10:59:35Z attila_lendvai quit (Read error: Connection reset by peer) 2017-08-03T11:01:26Z attila_lendvai joined #lisp 2017-08-03T11:02:23Z damke_ joined #lisp 2017-08-03T11:03:04Z loke: knobo: It is legal for a CL implementation to implement '(1 2) in terms of (list 1 2) 2017-08-03T11:05:10Z damke quit (Ping timeout: 268 seconds) 2017-08-03T11:09:53Z libreman quit (Ping timeout: 248 seconds) 2017-08-03T11:12:53Z knobo: ok. 2017-08-03T11:15:24Z aeth quit (Read error: Connection reset by peer) 2017-08-03T11:16:04Z marvin2: knobo what is the reason for wanting to do such a check? 2017-08-03T11:21:00Z aeth joined #lisp 2017-08-03T11:21:23Z phoe: knobo: asking such a question might mean a higher-level problem in your code. why do you ask? 2017-08-03T11:22:14Z libreman joined #lisp 2017-08-03T11:22:50Z phinxy joined #lisp 2017-08-03T11:22:53Z phinxy quit (Max SendQ exceeded) 2017-08-03T11:30:13Z marvin2 quit (Ping timeout: 240 seconds) 2017-08-03T11:30:16Z kora9 quit (Remote host closed the connection) 2017-08-03T11:33:21Z phinxy joined #lisp 2017-08-03T11:33:28Z phoe: I have a list of instances of FOO class. I have a generic function that is meant to accept such a list. How can I do multiple dispatch on that? 2017-08-03T11:34:12Z phoe: I want to dispatch based on the class of elements on the list. The list can have any number of elements. The elements are homogenous, otherwise it's an error. 2017-08-03T11:34:48Z p_l: phoe: unfortunately that doesn't work :/ 2017-08-03T11:35:44Z phoe: p_l: the worst possible thing I can think of is making a -USING-CLASS generic function, where I provide the class object and a list of instances. 2017-08-03T11:36:08Z phoe: (process-objects-using-class (find-class 'foo) (list foo1 foo2 foo3)) 2017-08-03T11:36:31Z phoe: Is that the optimal solution? 2017-08-03T11:37:48Z chu quit (Ping timeout: 240 seconds) 2017-08-03T11:38:11Z Bike: that's better for dispatching on the class of class of elements in the list. 2017-08-03T11:38:54Z Bike: you could do like (defun process-objects (list) (process-objects-aux (first list) list)) (defmethod process-objects-aux ((dispatch foo) list) ...) 2017-08-03T11:44:56Z beach: antoszka: Sure, see the Common Lisp HyperSpec page on TAGBODY. Syntax: tagbody {tag | statement}* 2017-08-03T11:45:19Z poorbean joined #lisp 2017-08-03T11:49:55Z jackdaniel: (tagbody (go foo) 3 foo) ; -> NIL 2017-08-03T11:49:58Z dim: phoe: what about having a container class that embeds the list, you could then dispatch on the container? I guess it's good if you have other things to keep track of than the list itself... 2017-08-03T11:50:02Z angavrilov joined #lisp 2017-08-03T11:50:11Z beach: antoszka: It basically means a form in a position that its values are not used in any way. 2017-08-03T11:57:51Z antoszka: beach: OK, but technically it's still an expression, isn't it? 2017-08-03T11:58:03Z beach: Sure. It is even a form. 2017-08-03T11:58:19Z beach: It is the evaluation context that makes it a statement. 2017-08-03T11:58:53Z phoe: beach: so basically, a statement is a form whose return value is discarded by the evaluation context? 2017-08-03T11:59:12Z phoe: s/form/expression/ 2017-08-03T11:59:26Z beach: No, form was right. 2017-08-03T11:59:44Z beach: And, yes, that's a good definition. 2017-08-03T11:59:59Z beach: The glossary doesn't have an entry for it, so you might want to add it to the CLUS. 2017-08-03T12:00:01Z krasnal quit (Ping timeout: 248 seconds) 2017-08-03T12:00:24Z krasnal joined #lisp 2017-08-03T12:01:36Z phoe: beach: https://github.com/phoe/clus-data/issues/26 2017-08-03T12:01:37Z phoe: Thanks! 2017-08-03T12:02:15Z poorbean quit (Remote host closed the connection) 2017-08-03T12:02:26Z beach: Sure. 2017-08-03T12:06:34Z chu joined #lisp 2017-08-03T12:06:48Z attila_lendvai quit (Read error: Connection reset by peer) 2017-08-03T12:09:41Z attila_lendvai joined #lisp 2017-08-03T12:09:41Z attila_lendvai quit (Changing host) 2017-08-03T12:09:41Z attila_lendvai joined #lisp 2017-08-03T12:10:26Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T12:10:27Z attila_lendvai quit (Read error: Connection reset by peer) 2017-08-03T12:11:11Z rumbler31 joined #lisp 2017-08-03T12:11:44Z attila_lendvai joined #lisp 2017-08-03T12:11:44Z attila_lendvai quit (Changing host) 2017-08-03T12:11:44Z attila_lendvai joined #lisp 2017-08-03T12:15:35Z hajovonta joined #lisp 2017-08-03T12:15:57Z learning_ joined #lisp 2017-08-03T12:16:01Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-03T12:16:18Z Fare joined #lisp 2017-08-03T12:16:58Z hajovonta: hello lisp friends 2017-08-03T12:17:16Z pjb joined #lisp 2017-08-03T12:19:04Z phoe: hey hajovonta 2017-08-03T12:19:17Z phoe: ...I just found a new snippet for my "hmmm lisp" collection 2017-08-03T12:19:48Z Bike quit (Ping timeout: 240 seconds) 2017-08-03T12:19:56Z flip214: phoe: link, please? what's your «"hmmm lisp" collection»? 2017-08-03T12:20:12Z phoe: flip214: https://gist.github.com/phoe/7a384a0483ff275c1d1a670fbbfacb5c 2017-08-03T12:20:27Z learning_ quit (Ping timeout: 260 seconds) 2017-08-03T12:20:56Z Amplituhedron joined #lisp 2017-08-03T12:22:02Z flip214 nearly always first things "oh, a typo for «foe»"... 2017-08-03T12:22:14Z phoe: flip214: ... 2017-08-03T12:22:34Z phoe: I'd set my nick to φ if I could 2017-08-03T12:27:59Z EvW joined #lisp 2017-08-03T12:29:04Z Amplituhedron quit (Ping timeout: 246 seconds) 2017-08-03T12:30:21Z beach: gilberth: Is it OK to discuss your projects here? 2017-08-03T12:32:03Z fkac quit (Remote host closed the connection) 2017-08-03T12:32:10Z Harag quit (Ping timeout: 276 seconds) 2017-08-03T12:35:06Z Amplituhedron joined #lisp 2017-08-03T12:35:28Z rumbler3_ joined #lisp 2017-08-03T12:39:27Z rumbler3_ quit (Ping timeout: 240 seconds) 2017-08-03T12:39:31Z phoe: flip214: got anything of your own to add to the list? 2017-08-03T12:39:43Z EvW quit (Ping timeout: 240 seconds) 2017-08-03T12:40:04Z hlavaty joined #lisp 2017-08-03T12:40:33Z phoe: ...we should have an underhanded Lisp contest, I just thought of a good entry 2017-08-03T12:40:51Z damke joined #lisp 2017-08-03T12:41:05Z kora9 joined #lisp 2017-08-03T12:41:36Z learning_ joined #lisp 2017-08-03T12:41:40Z kora9: How come, when using cl-who and hunchentoot, that you can't do something like (:p (+ 5 5)) or (:p (write-to-string (+ 5 5))) 2017-08-03T12:42:13Z phoe: kora9: read up on the local macros that are introduced inside CL-WHO's macros 2017-08-03T12:42:25Z kora9: hmm ok 2017-08-03T12:42:59Z Xach: phoe: reminds me of http://xach.livejournal.com/312567.html 2017-08-03T12:43:01Z uint: phoe: there should be an International Obfuscated Lisp Code Contest 2017-08-03T12:43:06Z Intensity quit (Ping timeout: 258 seconds) 2017-08-03T12:43:09Z uint: only that would probably quickly get out of hand... 2017-08-03T12:43:13Z damke_ quit (Ping timeout: 268 seconds) 2017-08-03T12:43:16Z phoe: uint: it would be too hard with reader macros 2017-08-03T12:43:30Z phoe: first you implement a Malbolge reader, then you write a program in Malbolge 2017-08-03T12:43:47Z Xach: kora9: cl-who evaluation rules are precise and predictable but I found them hard to remember and never internalized them 2017-08-03T12:43:48Z phoe: kora9: try (str (+ 5 5)) 2017-08-03T12:44:20Z phoe: Xach: " 2017-08-03T12:44:23Z phoe: "What is the title of section 11.1.2.1.2 in the CLHS?" 2017-08-03T12:44:27Z phoe: you are cruel 2017-08-03T12:44:35Z Xach: That's the one everyone knows, though. 2017-08-03T12:44:37Z Xach: EVERYONE 2017-08-03T12:44:42Z Xach: Plus it's multiple choice 2017-08-03T12:45:25Z kora9: phoe: Ah that works 2017-08-03T12:45:53Z kora9: I'm reading about the local macros, trying to wrap my head around it. Macros are a bit difficult for me to understand so I don't understand exactly what's going on yet unfortunately 2017-08-03T12:46:05Z kora9: I'm sure macros will be covered in an upcoming chapter 2017-08-03T12:46:13Z scymtym quit (Read error: Connection reset by peer) 2017-08-03T12:46:43Z scymtym joined #lisp 2017-08-03T12:46:44Z Xach: kora9: cl-who is really a kind of sub-language with its own syntax and structure, so knowing how macros work won't help. you have to know (and hopefully memorize) how cl-who works. 2017-08-03T12:47:19Z Xach: there are something like 4 rules with subrules, and if you memorize them, you can write cl-who syntax without thinking too hard about it. 2017-08-03T12:47:24Z kora9: ah, yeah it seems as though within the (with-html-output-to-string it's translated :keyword to html tags 2017-08-03T12:47:43Z kora9: Doesn't appear to check that it's a valid html tag 2017-08-03T12:47:44Z Xach: http://weitz.de/cl-who/#syntax enumerates the syntax 2017-08-03T12:47:58Z kora9: Yeah 2017-08-03T12:48:07Z kora9: I've written a simple html page using it 2017-08-03T12:48:26Z kora9: I was just trying to figure out how to do "cgi" things 2017-08-03T12:49:02Z phoe quit (Ping timeout: 260 seconds) 2017-08-03T12:50:10Z EvW1 joined #lisp 2017-08-03T12:51:19Z tanguy joined #lisp 2017-08-03T12:51:25Z tanguy quit (Client Quit) 2017-08-03T12:51:29Z Amplituhedron quit (Remote host closed the connection) 2017-08-03T12:51:47Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-03T12:52:32Z sjl quit (Ping timeout: 260 seconds) 2017-08-03T12:53:15Z jdz: TIL about CHAR-INT. 2017-08-03T12:55:26Z jdz: But of course! both SBCL and CCL forward the call to CHAR-CODE. 2017-08-03T12:56:01Z jdz: Disaster averted. 2017-08-03T12:56:53Z Xach: jdz: relics from a distant past 2017-08-03T12:57:47Z rumbler31 quit (Remote host closed the connection) 2017-08-03T12:58:49Z rumbler31 joined #lisp 2017-08-03T13:01:38Z Amplituhedron joined #lisp 2017-08-03T13:01:40Z damke quit (Read error: Connection reset by peer) 2017-08-03T13:01:56Z damke_ joined #lisp 2017-08-03T13:04:36Z rumbler31 quit (Remote host closed the connection) 2017-08-03T13:06:53Z al-damiri joined #lisp 2017-08-03T13:07:22Z phoe joined #lisp 2017-08-03T13:07:34Z papachan joined #lisp 2017-08-03T13:09:49Z Intensity joined #lisp 2017-08-03T13:12:42Z BitPuffin|osx joined #lisp 2017-08-03T13:13:39Z Th30n quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-03T13:24:27Z macdavid313 joined #lisp 2017-08-03T13:25:44Z macdavid_ quit (Remote host closed the connection) 2017-08-03T13:26:28Z learning_ quit (Remote host closed the connection) 2017-08-03T13:28:41Z sz0 joined #lisp 2017-08-03T13:29:05Z X-Scale joined #lisp 2017-08-03T13:29:14Z EvW1 quit (Ping timeout: 255 seconds) 2017-08-03T13:29:19Z jameser joined #lisp 2017-08-03T13:29:33Z learning_ joined #lisp 2017-08-03T13:29:43Z krasnal quit (Ping timeout: 240 seconds) 2017-08-03T13:30:06Z krasnal joined #lisp 2017-08-03T13:30:41Z yrk joined #lisp 2017-08-03T13:30:55Z Bike joined #lisp 2017-08-03T13:37:25Z krasnal quit (Ping timeout: 255 seconds) 2017-08-03T13:39:02Z hajovonta: jdz: I think it is mentioned somewhere in PCL 2017-08-03T13:39:21Z ebzzry joined #lisp 2017-08-03T13:39:23Z jdz: I have PCL, but have not read it cover to cover. 2017-08-03T13:39:58Z krasnal joined #lisp 2017-08-03T13:39:59Z hajovonta: I like that characters are not treated as numbers in CL 2017-08-03T13:40:28Z hajovonta: I mean there are definitely advantages of treating them as numbers but I like the distinction 2017-08-03T13:41:45Z fkac joined #lisp 2017-08-03T13:43:02Z phoe quit (Ping timeout: 268 seconds) 2017-08-03T13:44:35Z cromachina quit (Read error: Connection reset by peer) 2017-08-03T13:44:49Z krasnal quit (Ping timeout: 258 seconds) 2017-08-03T13:45:47Z ebzzry_ joined #lisp 2017-08-03T13:47:10Z ebzzry__ joined #lisp 2017-08-03T13:47:15Z krasnal joined #lisp 2017-08-03T13:47:37Z LiamH joined #lisp 2017-08-03T13:48:40Z ebzzry quit (Ping timeout: 255 seconds) 2017-08-03T13:49:05Z flip214: minion: tell phoe that https://gist.github.com/phoe/7a384a0483ff275c1d1a670fbbfacb5c#file-hmmm-lisp-L2 is missing a () for the non-arguments 2017-08-03T13:49:08Z minion: phoe: i like lisp... i'm written in it 2017-08-03T13:49:12Z Amplituhedron quit (Quit: Konversation terminated!) 2017-08-03T13:49:35Z flip214: minion: memo for phoe: https://gist.github.com/phoe/7a384a0483ff275c1d1a670fbbfacb5c#file-hmmm-lisp-L2 is missing a () for the non-arguments 2017-08-03T13:49:35Z minion: Remembered. I'll tell phoe when he/she/it next speaks. 2017-08-03T13:49:38Z flip214: thanks 2017-08-03T13:50:02Z ebzzry_ quit (Ping timeout: 246 seconds) 2017-08-03T13:51:50Z _paul0 joined #lisp 2017-08-03T13:53:53Z flamebeard quit (Quit: Leaving) 2017-08-03T13:54:43Z __paul0 quit (Ping timeout: 240 seconds) 2017-08-03T13:58:57Z scymtym quit (Ping timeout: 248 seconds) 2017-08-03T13:59:49Z learning_ quit (Remote host closed the connection) 2017-08-03T13:59:59Z warweasle joined #lisp 2017-08-03T14:01:44Z learning_ joined #lisp 2017-08-03T14:02:49Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-03T14:04:03Z attila_lendvai joined #lisp 2017-08-03T14:04:27Z BitPuffin|osx quit (Ping timeout: 240 seconds) 2017-08-03T14:05:56Z sjl joined #lisp 2017-08-03T14:07:24Z learning_ quit (Remote host closed the connection) 2017-08-03T14:08:36Z kora9: Lisp is so god damn cool :) The more I learn, the more cool it gets. 2017-08-03T14:08:47Z kora9: How did I not know about this sooner 2017-08-03T14:09:02Z beach: It's a common problem. 2017-08-03T14:10:00Z learning_ joined #lisp 2017-08-03T14:11:06Z warweasle: kora9: It's a conspiracy from the Illuminadi. 2017-08-03T14:11:17Z kora9: :) 2017-08-03T14:11:58Z warweasle: They were a group of 16th century C++ programmers who invaded Greenland to liberate the holy land from the lisp heritics. 2017-08-03T14:12:23Z learning_ quit (Remote host closed the connection) 2017-08-03T14:12:26Z kora9: 16th century programmers must've been very frustrated 2017-08-03T14:12:50Z warweasle: We've been hiding on IRC until our forces are ready to stike back...as soon as we get all our libraries working... 2017-08-03T14:13:15Z kora9: So it's kind of like the da vinci code, but with more lisp 2017-08-03T14:13:45Z warweasle: kora9: Yes. It was a heady time. ADA programs roamed the earch. Forth users traveled in caravans...ahh... 2017-08-03T14:13:58Z jackdaniel: "as soon as we get all our libraries working...", Ragnarok - that's how we call this moment:-) 2017-08-03T14:14:09Z kora9: :) 2017-08-03T14:14:26Z learning_ joined #lisp 2017-08-03T14:14:59Z warweasle: kora9: So you can either join our cabal or suffer a fate worse than technical debt! 2017-08-03T14:15:00Z jackdaniel: loke on his mighty son fe[nl]rir will come, and he won't fight on the same side as gods ,) 2017-08-03T14:15:33Z loke: Yes. My son! 2017-08-03T14:15:43Z warweasle: jackdaniel: Is that our side? Oh, yeah, Loki is Scheme guy... Trickser god and all that. 2017-08-03T14:15:50Z Bike: was that the son you bore while shapeshifted into a mare? i'm rusty 2017-08-03T14:17:58Z warweasle: kora9: I really do love lisp. I just wish we had the libraries to back us up. But there is a lisp curse...that lisp is TOO good. It's hard to get any of us working on the same projects. We should name it babble. 2017-08-03T14:18:24Z ebzzry__ quit (Ping timeout: 260 seconds) 2017-08-03T14:19:18Z yangby joined #lisp 2017-08-03T14:20:35Z damke joined #lisp 2017-08-03T14:21:16Z damke_ quit (Ping timeout: 268 seconds) 2017-08-03T14:21:32Z kora9: warweasle: I suppose that with this flexibility it's easy for everyone to individualistically work on their own thing rather than collaborate 2017-08-03T14:22:18Z tetero: warweasle: Fun fact: Swedish jas gripen jet fighters use (or used, I'm not sure) ADA for the on-board computer 2017-08-03T14:24:05Z damke_ joined #lisp 2017-08-03T14:25:11Z warweasle: tetero: So do the F-22 and F-35... It has some interesting "features" like restricting values and types... But lisp has most of that. Does anyone use variable value restrictions in real life? 2017-08-03T14:25:55Z dec0n quit (Ping timeout: 276 seconds) 2017-08-03T14:26:12Z damke quit (Ping timeout: 268 seconds) 2017-08-03T14:26:37Z shifty joined #lisp 2017-08-03T14:26:59Z tetero: warweasle: Didn't know that! I've heard that with ADA you can somehow deterministically determine how many cycles will be used for code 2017-08-03T14:27:17Z tetero: I have no idea how accurate that is. I've written exactly 0 lines of ADA 2017-08-03T14:27:22Z Fare quit (Ping timeout: 246 seconds) 2017-08-03T14:30:22Z dec0n joined #lisp 2017-08-03T14:33:19Z flip214: the more low-level you get (and the easier the architecture is), the easier it is to get cycle-correct predictions 2017-08-03T14:34:12Z flip214: on 8051, 6502, microchip, atmel µC it's no problem at all 2017-08-03T14:34:32Z phoe joined #lisp 2017-08-03T14:35:20Z jdz: Back in the day on 8088 and 80286 it was still possible to count cycles. 2017-08-03T14:35:43Z jdz: That's the last time I personally have done any assembly. 2017-08-03T14:36:19Z Bike: plenty of modern microcontroller code doesn't believe in complicated things like optimizing compilers, i think 2017-08-03T14:37:35Z TMA: I have assembler reference book, that lists the cycle count for the processors back then. multiplying with 320 (for 320x200 graphics) was faster with two shifts and an add 2017-08-03T14:37:38Z flip214: it mostly doesn't need to, too - for _real_ hard-time constraints (bit-banging some serial line) you just write the innermost loop by hand 2017-08-03T14:38:36Z flip214: TMA: most of the processors of the early 80ies didn't have a multiply instruction. 2017-08-03T14:39:10Z TMA: flip214: 8088/8086 and later did 2017-08-03T14:39:37Z flip214: TMA: but none in my list did, IIRC 2017-08-03T14:39:48Z phoe: is 8086 called like that because it was made from '80 to '86? 2017-08-03T14:39:48Z minion: phoe, memo from flip214: https://gist.github.com/phoe/7a384a0483ff275c1d1a670fbbfacb5c#file-hmmm-lisp-L2 is missing a () for the non-arguments 2017-08-03T14:39:51Z phoe ducks 2017-08-03T14:40:07Z phoe: flip214: fixed, thanks 2017-08-03T14:40:09Z flip214: > Intel datasheets for the 8086 and 8088 advertised the dedicated multiply and divide instructions (MUL, IMUL, DIV, and IDIV), but they are very slow, on the order of 100–200 clock cycles each 2017-08-03T14:40:32Z lvo quit (Read error: Connection reset by peer) 2017-08-03T14:41:08Z TMA: phoe: not quite :) 2017-08-03T14:41:13Z kora9 doesn't know what a cycle is 2017-08-03T14:41:14Z flip214: phoe: no. introduced 1979 2017-08-03T14:41:26Z warweasle: And now they can only give you a relative idea of how long it will take because of the path optimizations and more. 2017-08-03T14:42:06Z phoe: kora9: a cycle is a single loop in form of birth-life-death-reincarnation-birth 2017-08-03T14:42:11Z TMA: kora9: a cycle [in this context] is one clock impulse of the processor (those gigahertz rating of the CPU) 2017-08-03T14:42:18Z warweasle: kora9: CPUs use a square voltage wave: A clock cycle. One clock cycle the fastest any operation can be done. But most take several. 2017-08-03T14:42:20Z phoe: or, in other words, the time required to execute a single basic instruction on the CPU 2017-08-03T14:42:25Z flip214: the real big variable is cache timing... and, if using virtual memory, address faults 2017-08-03T14:42:38Z kora9: Oh 2017-08-03T14:42:54Z flip214: warweasle: well, some things operate on _both_ flanks of a cycle. 2017-08-03T14:43:19Z flip214: kora9: don't spend time thinking about all the gory details. 2017-08-03T14:43:31Z kora9: Just curious =) 2017-08-03T14:43:37Z flip214: performance reasoning at this level got really bad in the last 30 years. 2017-08-03T14:44:03Z warweasle: flip214: It's the equivelant of having a guy pulling a level back and forth. The faster he flips it, the faster your pc goes...until heating and quantum issues arise. 2017-08-03T14:44:05Z tetero: flip214: wirth's law :) 2017-08-03T14:44:11Z warweasle: He's a very small man with Trump hands. 2017-08-03T14:45:33Z flip214: 1994 in DOS I got away with calibrating the timer interrupt to the monitor refresh rate, to get a simulated raster-line-interrupt 2017-08-03T14:45:48Z pjb quit (Ping timeout: 240 seconds) 2017-08-03T14:45:49Z flip214: but these times are gone(, and for good, I guess) 2017-08-03T14:45:49Z krator44 quit (Excess Flood) 2017-08-03T14:46:11Z warweasle: INT 0x21 anyone? 2017-08-03T14:46:47Z flip214: DOS, yeah. 10h == video, 15h bios (and mouse) 2017-08-03T14:47:07Z TMA: warweasle: 0cdh 21h, why do you ask? 2017-08-03T14:47:12Z _krator44 joined #lisp 2017-08-03T14:47:42Z warweasle: bbib 2017-08-03T14:47:45Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-03T14:52:38Z hajovonta quit (Quit: hajovonta) 2017-08-03T14:54:52Z pjb joined #lisp 2017-08-03T15:00:57Z mishoo quit (Ping timeout: 240 seconds) 2017-08-03T15:03:21Z eudoxia joined #lisp 2017-08-03T15:07:20Z phoe quit (Ping timeout: 255 seconds) 2017-08-03T15:07:37Z moei quit (Quit: Leaving...) 2017-08-03T15:08:38Z Achylles joined #lisp 2017-08-03T15:08:55Z moei joined #lisp 2017-08-03T15:10:23Z learning_ quit 2017-08-03T15:11:04Z arrsim quit (Ping timeout: 258 seconds) 2017-08-03T15:13:07Z arrsim joined #lisp 2017-08-03T15:13:37Z warweasle joined #lisp 2017-08-03T15:15:24Z warweasle: Yup. Lisp is great. I don't know if anyone else here agrees but I'm willing to make a stand. Here. In this channel. 2017-08-03T15:17:43Z brendos quit (Ping timeout: 240 seconds) 2017-08-03T15:17:55Z Shinmera: A controversial opinion. 2017-08-03T15:19:11Z borei joined #lisp 2017-08-03T15:20:12Z warweasle: Shinmera: Well, I haven't told my family yet. 2017-08-03T15:20:42Z tetero: warweasle: O captain my captain! 2017-08-03T15:20:59Z FreeBirdLjj joined #lisp 2017-08-03T15:24:50Z macdavid313 quit 2017-08-03T15:25:04Z eudoxia quit (Quit: Leaving) 2017-08-03T15:26:19Z FreeBirdLjj quit (Read error: Connection reset by peer) 2017-08-03T15:27:33Z FreeBirdLjj joined #lisp 2017-08-03T15:27:39Z Zhivago: I'd suggest taking a perambulation instead. 2017-08-03T15:27:49Z pjb: warweasle: making a stand here about lisp is not taking much risk. Try it out in #c, #haskell, or #clojure ! 2017-08-03T15:27:58Z _krator44 quit (Changing host) 2017-08-03T15:27:58Z _krator44 joined #lisp 2017-08-03T15:27:58Z _krator44 quit (Changing host) 2017-08-03T15:27:58Z _krator44 joined #lisp 2017-08-03T15:28:29Z _krator44 is now known as krator44 2017-08-03T15:29:59Z rumbler31 joined #lisp 2017-08-03T15:30:28Z warweasle: pjb: I shall to to #vi and express my love for Emacs! 2017-08-03T15:30:59Z whoman joined #lisp 2017-08-03T15:32:06Z tetero: warweasle: emacs is great, especially with evil 2017-08-03T15:33:04Z fsmunoz joined #lisp 2017-08-03T15:34:25Z mishoo joined #lisp 2017-08-03T15:34:26Z Kyo91 joined #lisp 2017-08-03T15:34:37Z Zhivago: The good news is that at least we know that people who use spaces make more money than those who use tabs. :) 2017-08-03T15:35:14Z pjb: :-) 2017-08-03T15:35:49Z kora9: Zhivago: That's because it takes longer to navigate the spaces 2017-08-03T15:36:39Z kora9: =) 2017-08-03T15:38:00Z yangby_ joined #lisp 2017-08-03T15:39:25Z smazga joined #lisp 2017-08-03T15:41:05Z yangby quit (Ping timeout: 255 seconds) 2017-08-03T15:41:26Z d4ryus1 joined #lisp 2017-08-03T15:44:25Z d4ryus quit (Ping timeout: 258 seconds) 2017-08-03T15:45:37Z m00natic quit (Remote host closed the connection) 2017-08-03T15:55:10Z rippa joined #lisp 2017-08-03T15:58:02Z Kyo91 quit (Ping timeout: 260 seconds) 2017-08-03T16:00:12Z Achylles quit (Ping timeout: 240 seconds) 2017-08-03T16:00:46Z dec0n quit (Read error: Connection reset by peer) 2017-08-03T16:03:54Z cyberlard quit (Quit: Leaving) 2017-08-03T16:04:45Z cyberlard joined #lisp 2017-08-03T16:05:24Z sellout- joined #lisp 2017-08-03T16:06:16Z dec0n joined #lisp 2017-08-03T16:09:08Z kozy quit (Remote host closed the connection) 2017-08-03T16:10:50Z phoe joined #lisp 2017-08-03T16:12:40Z csprng joined #lisp 2017-08-03T16:13:02Z warweasle quit (Quit: brb) 2017-08-03T16:14:39Z X-Scale quit (Quit: HydraIRC -> http://www.hydrairc.com <- Go on, try it!) 2017-08-03T16:14:42Z Kyo91 joined #lisp 2017-08-03T16:25:50Z warweasle joined #lisp 2017-08-03T16:31:00Z Denommus joined #lisp 2017-08-03T16:32:33Z teggi joined #lisp 2017-08-03T16:35:25Z Achylles joined #lisp 2017-08-03T16:39:18Z damke joined #lisp 2017-08-03T16:41:52Z damke_ quit (Ping timeout: 268 seconds) 2017-08-03T16:42:46Z CrazyEddy quit (Remote host closed the connection) 2017-08-03T16:42:50Z shka_ joined #lisp 2017-08-03T16:43:12Z mathrick quit (Ping timeout: 240 seconds) 2017-08-03T16:44:00Z shifty quit (Ping timeout: 260 seconds) 2017-08-03T16:45:29Z shifty joined #lisp 2017-08-03T16:47:44Z hhdave quit (Ping timeout: 260 seconds) 2017-08-03T16:50:12Z mathrick joined #lisp 2017-08-03T16:56:13Z stee_3_ joined #lisp 2017-08-03T16:57:27Z wildlander joined #lisp 2017-08-03T16:58:28Z nullniverse joined #lisp 2017-08-03T17:00:20Z stee_3 quit (Ping timeout: 260 seconds) 2017-08-03T17:01:30Z damke__ joined #lisp 2017-08-03T17:01:36Z damke quit (Ping timeout: 268 seconds) 2017-08-03T17:02:11Z scymtym joined #lisp 2017-08-03T17:04:42Z papachan quit (Ping timeout: 240 seconds) 2017-08-03T17:05:40Z hlavaty quit (Remote host closed the connection) 2017-08-03T17:06:24Z Murii joined #lisp 2017-08-03T17:07:07Z weltung joined #lisp 2017-08-03T17:10:51Z damke__ quit (Ping timeout: 268 seconds) 2017-08-03T17:19:39Z weltung_ joined #lisp 2017-08-03T17:21:27Z weltung quit (Ping timeout: 260 seconds) 2017-08-03T17:25:40Z vlatkoB_ joined #lisp 2017-08-03T17:27:52Z phoe quit (Ping timeout: 260 seconds) 2017-08-03T17:28:15Z yangby_ quit (Quit: Go out for a walk and buy a drink.) 2017-08-03T17:29:20Z tetero: ^^ :D 2017-08-03T17:29:20Z phoe joined #lisp 2017-08-03T17:29:21Z vlatkoB quit (Ping timeout: 268 seconds) 2017-08-03T17:29:40Z kora9: :) 2017-08-03T17:30:17Z rumbler31 quit (Remote host closed the connection) 2017-08-03T17:32:22Z weltung joined #lisp 2017-08-03T17:32:24Z Murii quit (Quit: Time to go!) 2017-08-03T17:33:35Z rumbler31 joined #lisp 2017-08-03T17:34:02Z defaultxr joined #lisp 2017-08-03T17:34:17Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-03T17:34:17Z AxelAlex joined #lisp 2017-08-03T17:36:50Z BlueRavenGT joined #lisp 2017-08-03T17:37:28Z attila_lendvai quit (Read error: No route to host) 2017-08-03T17:41:40Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-03T17:43:39Z Quipu_ joined #lisp 2017-08-03T17:47:19Z andrzejk_ joined #lisp 2017-08-03T17:47:35Z weltung_ joined #lisp 2017-08-03T17:49:05Z weltung quit (Ping timeout: 268 seconds) 2017-08-03T17:52:37Z scymtym quit (Ping timeout: 276 seconds) 2017-08-03T17:52:49Z attila_lendvai joined #lisp 2017-08-03T17:58:24Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-03T18:03:04Z kobain joined #lisp 2017-08-03T18:05:40Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-03T18:06:47Z teggi quit (Quit: Leaving...) 2017-08-03T18:07:42Z Achylles quit (Ping timeout: 240 seconds) 2017-08-03T18:20:10Z Achylles joined #lisp 2017-08-03T18:20:22Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-03T18:25:16Z weltung joined #lisp 2017-08-03T18:29:12Z papachan joined #lisp 2017-08-03T18:32:21Z phoe: my network today is shit 2017-08-03T18:32:27Z phoe: well, my whole faculty's network today is shit 2017-08-03T18:32:44Z Bock quit (Ping timeout: 260 seconds) 2017-08-03T18:33:30Z stylewarning: which library makes custom hash functions portable? 2017-08-03T18:35:12Z EvW joined #lisp 2017-08-03T18:35:23Z phoe: stylewarning: https://github.com/metawilm/cl-custom-hash-table 2017-08-03T18:35:44Z toncek55 joined #lisp 2017-08-03T18:36:05Z stylewarning: phoe: do you know how SBCL is being conditionalized in the code? 2017-08-03T18:36:08Z stylewarning: I don't see sb-ext 2017-08-03T18:36:43Z phoe: stylewarning: I have no idea. I never used this package, only heard of it. 2017-08-03T18:41:27Z warweasle joined #lisp 2017-08-03T18:43:59Z phoe: I heard there is that bug with lparallel kernel threads where threads go into tight uninterruptible loops. Can someone confirm this? 2017-08-03T18:44:57Z andrzejk_ quit (Quit: My iMac has gone to sleep. ZZZzzz…) 2017-08-03T18:46:42Z toncek55 quit (Remote host closed the connection) 2017-08-03T18:46:57Z shka_: phoe: source? 2017-08-03T18:47:19Z shka_: better not daily testicle 2017-08-03T18:48:25Z phoe: shka_: some #lisp conversations 2017-08-03T18:48:28Z phoe: I think otwieracz mentioned it 2017-08-03T18:48:30Z phoe: otwieracz: ^ 2017-08-03T18:49:04Z EvW quit (Ping timeout: 260 seconds) 2017-08-03T18:49:16Z shka_: link to issue on github? 2017-08-03T18:49:23Z shka_: on what implementation? 2017-08-03T18:49:29Z shka_: on what system? 2017-08-03T18:50:47Z shka_: honestly, it sounds something that can very well be bug in implementation 2017-08-03T18:52:05Z sjl: stylewarning: https://github.com/sjl/cl-custom-hash-table/blob/61525e35301a4906b2d159bb54e9e15970fa3a96/custom-hash-table.lisp#L31-L32 ? 2017-08-03T18:52:43Z stylewarning: sjl: is that what is in Quicke Lisppe? 2017-08-03T18:53:28Z sjl: er, nope 2017-08-03T18:53:36Z sjl: fugitive linked to my fork by default, one sec 2017-08-03T18:55:07Z Karl_Dscc joined #lisp 2017-08-03T18:56:24Z sjl: stylewarning: https://github.com/sjl/cl-custom-hash-table/blob/master/package.lisp#L13-L14 2017-08-03T18:56:41Z sjl: and then https://github.com/sjl/cl-custom-hash-table/blob/master/custom-hash-table.lisp#L42-44 2017-08-03T18:57:23Z sjl: seems they refactored since my last PR 2017-08-03T18:58:58Z FreeBirdLjj joined #lisp 2017-08-03T18:59:23Z stylewarning: which one is on QL 2017-08-03T19:00:23Z Xach: metawilm's 2017-08-03T19:00:44Z sjl: https://github.com/quicklisp/quicklisp-projects/blob/master/projects/cl-custom-hash-table/source.txt 2017-08-03T19:03:38Z FreeBirdLjj quit (Ping timeout: 246 seconds) 2017-08-03T19:13:35Z big_num joined #lisp 2017-08-03T19:13:51Z sellout- quit (Quit: Leaving.) 2017-08-03T19:14:29Z sellout- joined #lisp 2017-08-03T19:16:08Z shka_ quit (Ping timeout: 260 seconds) 2017-08-03T19:25:11Z andrzejk_ joined #lisp 2017-08-03T19:26:08Z shka_ joined #lisp 2017-08-03T19:30:55Z attila_lendvai joined #lisp 2017-08-03T19:30:55Z attila_lendvai quit (Changing host) 2017-08-03T19:30:55Z attila_lendvai joined #lisp 2017-08-03T19:32:39Z leadoverlove joined #lisp 2017-08-03T19:35:45Z andrzejk_ quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-03T19:36:18Z Denommus` joined #lisp 2017-08-03T19:36:19Z leadoverlove quit (Client Quit) 2017-08-03T19:38:34Z Denommus quit (Ping timeout: 276 seconds) 2017-08-03T19:39:29Z sellout- quit (Quit: Leaving.) 2017-08-03T19:41:10Z shka_ quit (Ping timeout: 276 seconds) 2017-08-03T19:41:12Z Denommus` quit (Remote host closed the connection) 2017-08-03T19:41:48Z AxelAlex quit (Quit: AxelAlex) 2017-08-03T19:42:51Z Denommus joined #lisp 2017-08-03T19:42:58Z phoe: How can I portably query the OS for the number of available logical CPUs on the machine? 2017-08-03T19:43:45Z jackdaniel: portably you can't. you could use cffi separately for each platform 2017-08-03T19:44:22Z phoe: is there a CFFI-based portability library somewhere that does this? 2017-08-03T19:44:38Z Xach: There is a new thing for that, I think. 2017-08-03T19:44:49Z Xach: https://github.com/muyinliu/cl-cpus/ 2017-08-03T19:45:14Z phoe: SBCL-only, not as portable as I'd like. 2017-08-03T19:45:38Z Xach: Is it in practice? I didn't realize that. 2017-08-03T19:45:40Z Denommus` joined #lisp 2017-08-03T19:45:47Z jackdaniel: I don't get, why its marked sbcl-only, it uses cffi 2017-08-03T19:46:01Z Xach: maybe the feature expressions in the system file? 2017-08-03T19:46:11Z phoe: ...well, now that I read the source, huh, this is pure CFFI 2017-08-03T19:46:18Z phoe: so should be portable across implementations which have CFFI 2017-08-03T19:46:38Z jackdaniel: Xach: there is none, first thing I've checked after seeing its cffi :) 2017-08-03T19:46:50Z Xach: jackdaniel: sure there are. 2017-08-03T19:47:10Z Xach: #+linux etc 2017-08-03T19:47:25Z Xach: trivial-features could help with that, maybe. 2017-08-03T19:47:37Z phoe: well, it's in quicklisp. 2017-08-03T19:47:39Z phoe: I'll check it in a moment. 2017-08-03T19:47:51Z Xach: Yes. It probably should not be. I do not like sbcl-only projects. 2017-08-03T19:48:28Z phoe: ...well, shit 2017-08-03T19:48:39Z phoe: it would still be there if I stayed quiet 2017-08-03T19:48:59Z jackdaniel: yeah, it should use trivial-featuers, agreed 2017-08-03T19:49:04Z phoe: it's a tiny project - I'll push a patch there so it uses trivial-features instead. 2017-08-03T19:49:08Z phoe: bbl 2017-08-03T19:49:16Z jackdaniel: linux is a bad example, because this features is shared at least by sbcl, ccl and ecl 2017-08-03T19:49:28Z ptdel joined #lisp 2017-08-03T19:49:29Z Denommus quit (Ping timeout: 246 seconds) 2017-08-03T19:49:38Z jackdaniel: phoe: it would be: defsystem-depends-on, if you want it to influence a reader (what is a case here) 2017-08-03T19:52:14Z ptdel: hey _death phoe Bike thanks for helping me out with stuff this week I finally have an auth entry point for API calls to Amazon Web Services in CL now using their latest auth process :D 2017-08-03T19:52:32Z ptdel: you guys were awesome for putting up with my questions 2017-08-03T19:52:35Z Xach: jackdaniel: that is too late 2017-08-03T19:52:40Z Bike: uh, no problem! 2017-08-03T19:52:52Z ptdel: lol you prob don't remember 2017-08-03T19:52:57Z Bike: i do not 2017-08-03T19:53:32Z ptdel: I was looking for how to reduce a list for hmac 2017-08-03T19:54:04Z foom2 joined #lisp 2017-08-03T19:55:04Z Bike: oh, yeah. 2017-08-03T19:56:29Z EvW joined #lisp 2017-08-03T19:57:04Z foom quit (Ping timeout: 246 seconds) 2017-08-03T19:59:21Z pjb: phoe: on linux you can use (count :processor (com.informatimago.clmisc.resource-utilization:cpu-info) :key (function car)) 2017-08-03T20:04:59Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-03T20:05:40Z rumbler3_ joined #lisp 2017-08-03T20:10:18Z rumbler3_ quit (Ping timeout: 268 seconds) 2017-08-03T20:12:00Z Karl_Dscc quit (Remote host closed the connection) 2017-08-03T20:15:39Z vlatkoB_ quit (Remote host closed the connection) 2017-08-03T20:16:58Z kora9 quit (Ping timeout: 258 seconds) 2017-08-03T20:20:30Z dim: I just realized another reason why CLOS and multiple dispatch is so much better than single dispatch: single dispatch tends to provide a kind of a “namespace” for methods, that support a single object and are not meant to be extended 2017-08-03T20:20:52Z dim: I think I just understand the idea that multiple dispatch allows for protocols design 2017-08-03T20:21:06Z dim: (well in a better sense than I did before) 2017-08-03T20:21:38Z sellout- joined #lisp 2017-08-03T20:22:10Z Shinmera: CLOS is really nice to design protocols with, yes. 2017-08-03T20:22:34Z Shinmera: Mostly because you think about objects and operations you perform with the objects, rather than objects having an ability. 2017-08-03T20:25:35Z Xach: hmm 2017-08-03T20:26:23Z Xach: I don't know if I've seen this idea for checking for prefix subsequences before... 2017-08-03T20:26:53Z Xach: (every #'char= "sb-" system-name) ; is system-name a sbcl system? 2017-08-03T20:27:06Z Shinmera: had a lot of fun writing the protocol for my chat system in CLOS https://github.com/Shirakumo/lichat-protocol 2017-08-03T20:27:23Z Shinmera: Xach: That's really nice 2017-08-03T20:27:46Z Shinmera: I've always done the length-check + string= 2017-08-03T20:27:53Z Xach: I've used alexandria:starts-with-subseq and mismatch and string= with lots of length and bounds stuff... 2017-08-03T20:28:20Z Xach: I won't suggest this is new, but it's new to me and it just sprang to mind in the past few days. 2017-08-03T20:28:46Z Shinmera: Haven't seen it before myself either. Will definitely keep it in mind. 2017-08-03T20:29:43Z Xach: it is also possibly too clever/obscure but the alternatives also feel somewhat indirect and clumsy too... 2017-08-03T20:29:51Z Xach: except starts-with-subseq, I guess. 2017-08-03T20:30:23Z Xach: oh, i see the problem. 2017-08-03T20:30:24Z pjb: mismatch for prefixp, and mismatch :from-end t for suffixp. 2017-08-03T20:30:28Z aindilis quit (Read error: Connection reset by peer) 2017-08-03T20:30:39Z Xach gives up on the dream 2017-08-03T20:30:46Z Shinmera: stats-with-subseq is rather long in my opinion 2017-08-03T20:31:07Z Xach: "" "s" "sb" "sb-" "sb-posix" will all give true in that prefix check. 2017-08-03T20:31:44Z sellout- quit (Quit: Leaving.) 2017-08-03T20:32:36Z aeth: (and (> (length system-name) 3) ...) 2017-08-03T20:33:15Z Xach: KLUNK 2017-08-03T20:35:32Z dim: ,clhs mismatch 2017-08-03T20:35:41Z dim: mmm, the ,prefix is #emacs I guess 2017-08-03T20:35:43Z dim: clhs mismatch 2017-08-03T20:35:43Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_mismat.htm 2017-08-03T20:38:56Z ineiros quit (Ping timeout: 260 seconds) 2017-08-03T20:39:15Z ineiros joined #lisp 2017-08-03T20:44:47Z EvW quit (Ping timeout: 246 seconds) 2017-08-03T20:45:01Z nullman quit (Ping timeout: 246 seconds) 2017-08-03T20:45:21Z Achylles quit (Ping timeout: 248 seconds) 2017-08-03T20:46:58Z nullman joined #lisp 2017-08-03T20:47:01Z strelox joined #lisp 2017-08-03T20:50:58Z Shinmera: My inspector is coming along nicely. https://filebox.tymoon.eu//file/TVRNNE9RPT0= 2017-08-03T20:51:12Z vtomole joined #lisp 2017-08-03T20:52:02Z wildlander quit (Quit: Saliendo) 2017-08-03T20:55:39Z sellout- joined #lisp 2017-08-03T20:58:09Z Shinmera: Now I "just" need an actual code editor component and I'll have most of the important parts of Slime replicated in Qt. 2017-08-03T20:59:31Z Shinmera: (I already have a debugger and REPL) 2017-08-03T21:00:08Z _death: what do the per-component buttons do in the pathname window 2017-08-03T21:00:20Z Shinmera: set and unbind 2017-08-03T21:00:34Z _death: how? 2017-08-03T21:00:41Z Shinmera: I need better icons, I know. The ones Qt provides are horrid. 2017-08-03T21:00:53Z Shinmera: Well, for the pathname it's just the standard-object viewer. 2017-08-03T21:01:06Z Shinmera: Which is not correct of course. 2017-08-03T21:01:24Z Shinmera: Still need to make a specific inspector component for pathnames. 2017-08-03T21:01:33Z aindilis joined #lisp 2017-08-03T21:01:48Z Shinmera: (I knew I was forgetting something) 2017-08-03T21:02:47Z _death: I see.. would be neat if it could store/restore objects to/from disk (e.g., using cl-store or whatever) 2017-08-03T21:04:39Z sukaeto: a little late to the discussion, but I want to know how "install and learn pycharm" is supposed to be easier than "install and learn Emacs+SLIME" 2017-08-03T21:05:09Z Shinmera: Emacs has a lot of conventions that stray far from the norm, making it frustrating. 2017-08-03T21:05:20Z sukaeto: so like, maybe there's the extra step in Emacs of "Options->Use CUA keys" 2017-08-03T21:05:26Z Shinmera: CUA keys are just confusing. 2017-08-03T21:05:37Z Shinmera: It's not really a solution. 2017-08-03T21:05:37Z sukaeto: but what are those conventions? that it doesn't have tabs for buffers? 2017-08-03T21:05:45Z Shinmera: The keychords it uses. 2017-08-03T21:06:01Z Shinmera: And the names for concepts, I guess. 2017-08-03T21:06:20Z Shinmera: And not being project oriented like most other IDEs, I guess. 2017-08-03T21:07:03Z axion: at least evil and projectile work in cli, which is all i care about 2017-08-03T21:08:10Z Shinmera: Emacs by default also just looks butt ugly 2017-08-03T21:08:34Z Shinmera: A lot of the emacs issues you can fix with configuration, but that in and of itself is daunting to new users. 2017-08-03T21:08:57Z mishoo quit (Ping timeout: 240 seconds) 2017-08-03T21:10:53Z Zhivago: The customization leads to the portability problem -- you need to carry and sync complex configs. 2017-08-03T21:11:09Z Zhivago: The stupid editor, on the other hand, has the user adapt to its standard configuration. 2017-08-03T21:11:20Z sukaeto: I guess I'm just a crotchety old guy. When I learned to program, you had a Unix server you telneted into, and you used Emacs because that's what the professor used and told you to use. 2017-08-03T21:11:36Z Shinmera: Sure, but nowadays the professor tells you to use Eclipse. 2017-08-03T21:11:41Z sukaeto: or maybe they used vi, in which case you got to learn about modal editing 2017-08-03T21:11:53Z sukaeto is a Emacs+evil user, FWIW 2017-08-03T21:11:53Z Shinmera: And so you're used to that horrible piece of shit, and emacs feels alien with its purely text based approach 2017-08-03T21:12:21Z sukaeto: (I picked up vi pretty quickly and have used it ever since) 2017-08-03T21:12:46Z edgar-rft uses modal editing for writing music notes 2017-08-03T21:13:22Z ptdel: I'm just using vim and a binding to run my buffer in sbcl, so you guys are all wizards compared to me 2017-08-03T21:13:24Z axion: evil is arguably a bit better than vi/m, having text objects and all 2017-08-03T21:13:30Z ptdel: i'm here writing lisp in a pond with dirt on my face 2017-08-03T21:14:08Z dim: I though Spacemacs was a better alternative to Evil nowadays 2017-08-03T21:14:24Z axion: Spacemacs is just an Emacs distribution that includes evil heh 2017-08-03T21:14:33Z dim: I'm currently writing some Go and I really miss Slime and CL :/ 2017-08-03T21:14:49Z dim: axion: oh. yeah ok makes sense, sorry for the noise ;-) 2017-08-03T21:14:59Z Shinmera: Anyway, I hope that Portacle can significantly lower the entry barrier to CL by removing the need to explicitly install and configure anything. 2017-08-03T21:15:11Z Shinmera: It still uses Emacs though, so the keychord barrier is there. 2017-08-03T21:15:22Z Kyo91 quit (Ping timeout: 260 seconds) 2017-08-03T21:15:35Z Kyo91 joined #lisp 2017-08-03T21:17:26Z axion: Shinmera: You should mention whether the builds are 32/64. I had 2 people ask me and I couldn't find this information on its homepage. 2017-08-03T21:17:39Z angavrilov quit (Remote host closed the connection) 2017-08-03T21:17:50Z Shinmera: Make an issue ticket! 2017-08-03T21:18:05Z Shinmera: The builds are all 64x for now. 2017-08-03T21:20:16Z Kyo91 quit (Ping timeout: 260 seconds) 2017-08-03T21:24:36Z sukaeto: yeah, I was a vim user for about a dozen years before finally making the switch to Emacs+evil 2017-08-03T21:25:32Z Cthulhux: now just get rid of evil 2017-08-03T21:25:33Z sukaeto: Emacs is strictly better - better buffer management, integration with things like gdb and whatnot, of course SLIME, and the fact that you can easily extend it yourself with elisp 2017-08-03T21:25:39Z Achylles joined #lisp 2017-08-03T21:25:53Z Bike quit (Ping timeout: 255 seconds) 2017-08-03T21:26:12Z sukaeto: but I don't want to start an editor war, here. I know plenty of people who use vim and are totally happy with it. 2017-08-03T21:26:23Z Cthulhux: i use ed(1) ^^ 2017-08-03T21:26:25Z ptdel: I use vim and I am in a pit of dispair 2017-08-03T21:26:39Z sukaeto: Cthulhux: but why would I do that? vi is clearly the best text editing language in existence. ;-) 2017-08-03T21:26:45Z Cthulhux: emacs needs better concurrency IMO 2017-08-03T21:26:56Z Cthulhux: sukaeto: because it's not 2017-08-03T21:27:00Z Cthulhux: :p 2017-08-03T21:27:15Z Cthulhux: if you want efficient editing, use ed(1)! 2017-08-03T21:27:34Z White_Flame: M-x butterfly-mode 2017-08-03T21:27:38Z ptdel: Cthulhux: what if I want to save children in Uganda 2017-08-03T21:27:52Z sukaeto: I say use whatever makes you most productive. 2017-08-03T21:28:09Z White_Flame: machine code with toggle switches it is then! 2017-08-03T21:28:11Z ptdel: I feel more productive knowing the children in Uganda are getting daily contributions from vim users 2017-08-03T21:28:17Z nullniverse quit (Quit: Leaving) 2017-08-03T21:28:25Z sukaeto: if you're really productive in ed then go for it. But that would be pretty weird. 2017-08-03T21:29:46Z ptdel: whats weird about solving all of your editting problems with perl-style regex 2017-08-03T21:33:15Z milanj quit (Quit: This computer has gone to sleep) 2017-08-03T21:35:26Z edgar-rft was named after ed(1) 2017-08-03T21:37:37Z aeth quit (Ping timeout: 255 seconds) 2017-08-03T21:38:03Z Cthulhux: Cthulhux: what if I want to save children in Uganda << that's funny because you can do this in emacs's web browser while you run ed(1) in an emacs shell 2017-08-03T21:38:04Z Cthulhux: :-) 2017-08-03T21:38:29Z Cthulhux: (i ran vim in an emacs shell once. it felt wrong. evil, but wrong.) 2017-08-03T21:46:41Z quazimodo joined #lisp 2017-08-03T21:48:03Z quazimodo quit (Read error: Connection reset by peer) 2017-08-03T21:51:41Z quazimodo joined #lisp 2017-08-03T21:52:05Z leadoverlove joined #lisp 2017-08-03T21:52:20Z strelox quit (Remote host closed the connection) 2017-08-03T21:52:28Z shifty quit (Ping timeout: 260 seconds) 2017-08-03T21:52:51Z phoe: jackdaniel: Xach: https://github.com/muyinliu/cl-cpus/issues/2 2017-08-03T21:53:56Z phoe: Cthulhux: evil is the right word here 2017-08-03T21:54:20Z Cthulhux: i AM evil 2017-08-03T21:54:22Z Cthulhux: 8) 2017-08-03T21:55:51Z leadoverlove quit (Remote host closed the connection) 2017-08-03T21:56:31Z edgar-rft: i PM evil 2017-08-03T21:56:41Z Zhivago: I don't think that Cthulhu is evil. It must be that x. 2017-08-03T21:56:50Z ptdel: chaotic neutral? 2017-08-03T21:57:25Z Zhivago: I don't think it's human enough to be anything. 2017-08-03T22:02:50Z Denommus` quit (Ping timeout: 246 seconds) 2017-08-03T22:03:27Z Cthulhux: human enough to fail to code 2017-08-03T22:09:29Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-03T22:10:55Z ptdel quit (Quit: leaving) 2017-08-03T22:11:22Z papachan quit (Quit: Leaving) 2017-08-03T22:20:33Z EvW joined #lisp 2017-08-03T22:20:57Z weltung_ joined #lisp 2017-08-03T22:21:42Z weltung quit (Ping timeout: 240 seconds) 2017-08-03T22:23:28Z quazimodo quit (Read error: No route to host) 2017-08-03T22:28:34Z quazimodo joined #lisp 2017-08-03T22:30:40Z pjb quit (Read error: Connection reset by peer) 2017-08-03T22:30:50Z pjb` joined #lisp 2017-08-03T22:31:02Z EvW quit (Ping timeout: 255 seconds) 2017-08-03T22:31:37Z brendos joined #lisp 2017-08-03T22:34:09Z attila_lendvai quit (Quit: Leaving.) 2017-08-03T22:34:20Z milanj joined #lisp 2017-08-03T22:38:18Z safe joined #lisp 2017-08-03T22:38:31Z pierpa joined #lisp 2017-08-03T22:39:49Z rumbler31 quit (Ping timeout: 246 seconds) 2017-08-03T22:42:38Z sellout- quit (Quit: Leaving.) 2017-08-03T22:43:39Z ebzzry__ joined #lisp 2017-08-03T22:44:23Z Bike joined #lisp 2017-08-03T22:50:28Z CrazyEddy joined #lisp 2017-08-03T22:51:47Z eazar001 joined #lisp 2017-08-03T22:55:17Z Xach: phoe: it's too late by then. 2017-08-03T22:55:47Z Xach: asdf has a :feature option that i've seen in a system or two 2017-08-03T23:00:44Z cromachina joined #lisp 2017-08-03T23:02:38Z smazga quit (Quit: leaving) 2017-08-03T23:04:49Z knobo quit (Ping timeout: 268 seconds) 2017-08-03T23:05:29Z jamtho joined #lisp 2017-08-03T23:09:50Z weltung joined #lisp 2017-08-03T23:11:12Z weltung_ quit (Ping timeout: 240 seconds) 2017-08-03T23:15:27Z WhiskyRyan joined #lisp 2017-08-03T23:17:05Z Quipu_ quit (Quit: Quipu_) 2017-08-03T23:19:46Z Fade quit (Ping timeout: 255 seconds) 2017-08-03T23:19:53Z Fade joined #lisp 2017-08-03T23:24:50Z weltung_ joined #lisp 2017-08-03T23:27:22Z weltung quit (Ping timeout: 276 seconds) 2017-08-03T23:28:25Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-03T23:28:50Z Kyo91 joined #lisp 2017-08-03T23:30:27Z phoe quit (Ping timeout: 240 seconds) 2017-08-03T23:37:51Z phoe joined #lisp 2017-08-03T23:42:45Z weltung joined #lisp 2017-08-03T23:42:57Z rumbler31 joined #lisp 2017-08-03T23:42:58Z QualityAddict joined #lisp 2017-08-03T23:43:37Z weltung_ quit (Ping timeout: 255 seconds) 2017-08-03T23:43:46Z Lowl3v3l joined #lisp 2017-08-03T23:48:09Z eazar001 quit (Quit: WeeChat 1.5) 2017-08-03T23:48:40Z quazimodo quit (Ping timeout: 260 seconds) 2017-08-03T23:49:25Z LiamH quit (Quit: Leaving.) 2017-08-03T23:51:25Z quazimodo joined #lisp 2017-08-03T23:51:32Z sjl__ joined #lisp 2017-08-03T23:51:55Z milanj quit (Quit: Leaving) 2017-08-03T23:53:57Z sjl quit (Ping timeout: 240 seconds) 2017-08-04T00:02:18Z pjb` is now known as pjb 2017-08-04T00:03:35Z weltung_ joined #lisp 2017-08-04T00:03:45Z jamtho quit (Ping timeout: 248 seconds) 2017-08-04T00:04:42Z weltung quit (Ping timeout: 240 seconds) 2017-08-04T00:10:44Z vtomole quit (Ping timeout: 260 seconds) 2017-08-04T00:16:45Z weltung joined #lisp 2017-08-04T00:18:16Z weltung_ quit (Ping timeout: 255 seconds) 2017-08-04T00:19:29Z karswell_ quit (Read error: Connection reset by peer) 2017-08-04T00:24:12Z weltung_ joined #lisp 2017-08-04T00:25:32Z weltung quit (Ping timeout: 260 seconds) 2017-08-04T00:29:18Z phinxy quit (Quit: Leaving) 2017-08-04T00:29:48Z csprng left #lisp 2017-08-04T00:33:08Z Blkt_ quit (Remote host closed the connection) 2017-08-04T00:33:08Z fe[nl]ix quit (Read error: Connection reset by peer) 2017-08-04T00:33:21Z Blkt joined #lisp 2017-08-04T00:33:22Z fe[nl]ix joined #lisp 2017-08-04T00:33:22Z ChanServ has set mode +o fe[nl]ix 2017-08-04T00:34:55Z WhiskyRyan joined #lisp 2017-08-04T00:40:11Z weltung joined #lisp 2017-08-04T00:40:34Z raynold joined #lisp 2017-08-04T00:40:57Z weltung_ quit (Ping timeout: 240 seconds) 2017-08-04T00:42:59Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-04T00:43:21Z Harag joined #lisp 2017-08-04T00:47:04Z gmax joined #lisp 2017-08-04T00:48:15Z gmax quit (Client Quit) 2017-08-04T00:49:06Z weltung_ joined #lisp 2017-08-04T00:50:23Z warweasle joined #lisp 2017-08-04T00:50:38Z weltung quit (Ping timeout: 255 seconds) 2017-08-04T00:51:43Z ACE_Recliner joined #lisp 2017-08-04T00:52:45Z sjl joined #lisp 2017-08-04T00:54:31Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-04T00:56:26Z sjl__ quit (Ping timeout: 268 seconds) 2017-08-04T00:57:20Z pierpa quit (Quit: Page closed) 2017-08-04T01:00:32Z Kyo91 quit (Ping timeout: 260 seconds) 2017-08-04T01:00:57Z weltung joined #lisp 2017-08-04T01:01:28Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-04T01:04:07Z FreeBirdLjj joined #lisp 2017-08-04T01:06:23Z glamas joined #lisp 2017-08-04T01:06:39Z phinxy joined #lisp 2017-08-04T01:06:56Z phinxy quit (Read error: Connection reset by peer) 2017-08-04T01:07:21Z learning_ joined #lisp 2017-08-04T01:07:40Z kuro6 joined #lisp 2017-08-04T01:08:49Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-04T01:10:58Z FreeBirdLjj joined #lisp 2017-08-04T01:11:43Z weltung_ joined #lisp 2017-08-04T01:12:57Z weltung quit (Ping timeout: 240 seconds) 2017-08-04T01:17:35Z stylewarning: What method do I specialize if I want to do some actions after an ASDF system is loaded? 2017-08-04T01:28:57Z weltung joined #lisp 2017-08-04T01:30:52Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-04T01:32:50Z brendos quit (Ping timeout: 246 seconds) 2017-08-04T01:35:11Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-04T01:50:56Z glamas quit (Ping timeout: 260 seconds) 2017-08-04T01:51:38Z glamas joined #lisp 2017-08-04T02:07:36Z http_GK1wmSU joined #lisp 2017-08-04T02:08:21Z http_GK1wmSU left #lisp 2017-08-04T02:08:32Z shdeng joined #lisp 2017-08-04T02:12:16Z weltung_ joined #lisp 2017-08-04T02:13:08Z weltung quit (Ping timeout: 240 seconds) 2017-08-04T02:20:31Z glamas_ joined #lisp 2017-08-04T02:22:21Z weltung joined #lisp 2017-08-04T02:23:14Z glamas quit (Ping timeout: 255 seconds) 2017-08-04T02:23:31Z weltung_ quit (Ping timeout: 276 seconds) 2017-08-04T02:23:39Z jameser joined #lisp 2017-08-04T02:27:33Z weltung_ joined #lisp 2017-08-04T02:28:10Z weltung quit (Ping timeout: 240 seconds) 2017-08-04T02:35:59Z kilimanjaro is now known as neophyte 2017-08-04T02:39:14Z warweasle quit (Quit: Leaving) 2017-08-04T02:45:21Z weltung joined #lisp 2017-08-04T02:45:23Z glamas_ quit (Remote host closed the connection) 2017-08-04T02:46:28Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-04T02:46:57Z neophyte is now known as kilimanjaro 2017-08-04T02:48:48Z glamas joined #lisp 2017-08-04T02:52:02Z QualityAddict quit (Ping timeout: 255 seconds) 2017-08-04T02:52:42Z Achylles quit (Ping timeout: 240 seconds) 2017-08-04T02:53:00Z terpri quit (Ping timeout: 260 seconds) 2017-08-04T02:53:27Z QualityAddict joined #lisp 2017-08-04T02:53:49Z QualityAddict is now known as Guest82516 2017-08-04T02:54:23Z Guest82516 quit (Remote host closed the connection) 2017-08-04T02:54:29Z ACE_Recliner quit (Remote host closed the connection) 2017-08-04T03:01:16Z beach: Good morning everyone! 2017-08-04T03:02:03Z loke: Hello beach 2017-08-04T03:02:10Z weltung_ joined #lisp 2017-08-04T03:02:18Z loke is on leave today, watching over workers installing a new air conditioner. 2017-08-04T03:02:32Z loke: Actually, 4 air conditioners. That's a lot of work. 2017-08-04T03:02:43Z defaultxr quit (Quit: brb) 2017-08-04T03:03:25Z weltung quit (Ping timeout: 255 seconds) 2017-08-04T03:03:52Z defaultxr joined #lisp 2017-08-04T03:10:11Z weltung joined #lisp 2017-08-04T03:10:12Z fsmunoz quit (Ping timeout: 258 seconds) 2017-08-04T03:10:57Z weltung_ quit (Ping timeout: 248 seconds) 2017-08-04T03:13:23Z shka_ joined #lisp 2017-08-04T03:21:04Z PuercoPop: stylewarning: (defmethod perform :after ((op asdf:load-op)) ((system (eql (find-system ))))) 2017-08-04T03:21:04Z PuercoPop: *asdf:perform 2017-08-04T03:23:24Z stylewarning: PuercoPop: do you know where an appropriate place to put this is? 2017-08-04T03:24:02Z shdeng quit (Ping timeout: 260 seconds) 2017-08-04T03:25:03Z quazimodo quit (Ping timeout: 268 seconds) 2017-08-04T03:28:28Z Bike quit (Ping timeout: 260 seconds) 2017-08-04T03:28:36Z weltung_ joined #lisp 2017-08-04T03:29:04Z Murii joined #lisp 2017-08-04T03:30:09Z weltung quit (Ping timeout: 248 seconds) 2017-08-04T03:33:43Z PuercoPop: stylewarning: place I put that is in the ASDF file of the config and place that in (in-package #:asdf-user) 2017-08-04T03:34:19Z learning_ quit (Remote host closed the connection) 2017-08-04T03:35:39Z PuercoPop: This is how I use it to load a config file http://paste.lisp.org/+7JZM 2017-08-04T03:38:25Z damke__ joined #lisp 2017-08-04T03:40:39Z shdeng joined #lisp 2017-08-04T03:47:06Z pjb` joined #lisp 2017-08-04T03:47:48Z pjb quit (Ping timeout: 240 seconds) 2017-08-04T03:47:57Z stylewarning: PuercoPop: Let me give it a shot! 2017-08-04T03:51:58Z pjb` quit (Ping timeout: 255 seconds) 2017-08-04T03:52:41Z weltung joined #lisp 2017-08-04T03:53:35Z weltung_ quit (Ping timeout: 240 seconds) 2017-08-04T04:00:26Z stylewarning: PuercoPop: worked perfectly, thanks! 2017-08-04T04:03:56Z rumbler31 quit (Remote host closed the connection) 2017-08-04T04:04:31Z damke__ quit (Ping timeout: 268 seconds) 2017-08-04T04:04:52Z test1600 joined #lisp 2017-08-04T04:05:58Z weltung_ joined #lisp 2017-08-04T04:06:27Z weltung quit (Ping timeout: 240 seconds) 2017-08-04T04:06:32Z damke__ joined #lisp 2017-08-04T04:09:58Z big_num quit (Quit: WeeChat 1.7) 2017-08-04T04:15:57Z jack_rabbit: Is there a way to create a lexical-scope binding for a function? 2017-08-04T04:16:15Z beach: (let ((x 10)) (defun ff (y) (+ x y))) 2017-08-04T04:16:24Z beach: Is that what you mean? 2017-08-04T04:16:47Z beach: Or maybe you mean (flet ((ff (x) (+ x 10))) ...)? 2017-08-04T04:16:49Z shka_: jack_rabbit: or you mean a local function? 2017-08-04T04:16:51Z jack_rabbit: No, like a let, but for the function namespace rather than the variable namespace. 2017-08-04T04:16:55Z shka_: damn it 2017-08-04T04:16:56Z jack_rabbit: Yeah, flet probably 2017-08-04T04:17:02Z shka_: beach: good morning 2017-08-04T04:17:04Z beach: clhs labels 2017-08-04T04:17:05Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_flet_.htm 2017-08-04T04:17:08Z jack_rabbit: Thanks, beach. 2017-08-04T04:17:11Z beach: sure. 2017-08-04T04:17:13Z shka_: jack_rabbit: there is also labels 2017-08-04T04:17:21Z shka_: … 2017-08-04T04:17:27Z shka_: i guess i will just go to work 2017-08-04T04:17:40Z jack_rabbit: Trying to temporarily shadow some functions. :) 2017-08-04T04:17:49Z shka_: flet is way to go 2017-08-04T04:17:59Z beach: jack_rabbit: You can't do that with standard functions though. 2017-08-04T04:18:11Z jack_rabbit: :/ 2017-08-04T04:18:35Z shka_: what standard function, though? 2017-08-04T04:18:57Z jack_rabbit: Guess I can traverse the body and replace instances of the symbols for the functions I want to shadow. 2017-08-04T04:18:59Z pjb` joined #lisp 2017-08-04T04:19:04Z shka_ quit (Read error: Connection reset by peer) 2017-08-04T04:19:09Z jack_rabbit: in a macro. 2017-08-04T04:19:18Z shka_ joined #lisp 2017-08-04T04:20:54Z beach: jack_rabbit: That is generally very hard to do. It requires a thing known as a code walker, and such a thing can not be implementation independent. 2017-08-04T04:21:44Z jack_rabbit: Why is it not as simple as recurring through the lists and identifying the relevant symbols? 2017-08-04T04:22:10Z beach: Because there may be macro calls that, when expanded, introduce some of the symbols you don't want. 2017-08-04T04:22:31Z beach: Also, the role of a symbol may be different. 2017-08-04T04:22:47Z shifty joined #lisp 2017-08-04T04:22:47Z beach: Perhaps you want to replace a symbol when it is in a function-call position, but not when it is data. 2017-08-04T04:22:55Z jack_rabbit: Yes. 2017-08-04T04:23:03Z beach: To know the role of a symbol requires a code walker. 2017-08-04T04:23:26Z jack_rabbit: Can't I macroexpand the body first? 2017-08-04T04:23:54Z beach: But to know whether to macro expand, you need a code walker. 2017-08-04T04:24:04Z jack_rabbit: Ahh. 2017-08-04T04:24:06Z beach: You may have (macrolet ((bla ...)) ...) 2017-08-04T04:24:27Z jack_rabbit: There's no built-in "fully expand everything in this form"? 2017-08-04T04:24:36Z beach: It is known as a code walker. 2017-08-04T04:24:39Z stylewarning: ql:quickload :macroexpand-dammit 2017-08-04T04:25:09Z jack_rabbit: Gotcha. and there's not a standard built-in one that's accessible? 2017-08-04T04:25:32Z jack_rabbit: I guess that's what macroexpand-dammit is for. 2017-08-04T04:25:33Z beach: There are some libraries as stylewarning pointed out. 2017-08-04T04:25:41Z learning_ joined #lisp 2017-08-04T04:26:11Z beach: But unless they adapt to the implementation, they are going to be approximate. 2017-08-04T04:26:42Z jack_rabbit: May give different results than the implementation's walker, you mean? 2017-08-04T04:27:32Z beach: They may work for most simple cases, but may not work for complex things involving macrolet and such. 2017-08-04T04:27:50Z beach: Then again, maybe you don't have such complex code. 2017-08-04T04:28:51Z jack_rabbit: So, in that case, I wanted to do the following: create a macro such that arithmetic operations within the body printed what they were doing to *standard-output* 2017-08-04T04:29:14Z jack_rabbit: Just a simple excercise to see how easy it was. I don't have a practical application for it. 2017-08-04T04:29:38Z learning_ quit (Client Quit) 2017-08-04T04:29:43Z beach: Not simple and not easy if you want it to be general. 2017-08-04T04:29:57Z jack_rabbit: Makes sense. 2017-08-04T04:33:06Z wooden quit (Read error: Connection reset by peer) 2017-08-04T04:34:19Z pjb` quit (Ping timeout: 255 seconds) 2017-08-04T04:34:23Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-04T04:37:23Z wooden joined #lisp 2017-08-04T04:38:25Z shka_ quit (Quit: Konversation terminated!) 2017-08-04T04:38:28Z ebzzry__ quit (Ping timeout: 260 seconds) 2017-08-04T04:38:35Z shka_ joined #lisp 2017-08-04T04:38:42Z beach: I seem to always be unable to find the Common Lisp HyperSpec page that explains how a conforming program is allowed to use symbols in the CL package. 2017-08-04T04:39:10Z |3b|: 11.2.1.2.1 or something like that? 2017-08-04T04:39:26Z |3b|: clhs 11.2.1.2.1 2017-08-04T04:39:26Z specbot: Couldn't find anything for 11.2.1.2.1. 2017-08-04T04:39:30Z |3b|: guess not :p 2017-08-04T04:39:37Z |3b|: clhs 11.2.1 2017-08-04T04:39:37Z specbot: Couldn't find anything for 11.2.1. 2017-08-04T04:39:52Z beach: Yes, thanks. 2017-08-04T04:40:11Z beach: I always look in the first few chapters. Never think to look in the chapter on packages. 2017-08-04T04:40:16Z |3b|: ah, 11.1.2.1.2 2017-08-04T04:40:23Z ebzzry__ joined #lisp 2017-08-04T04:40:28Z beach: Yes. 2017-08-04T04:47:00Z quazimodo joined #lisp 2017-08-04T04:49:50Z keviv joined #lisp 2017-08-04T04:57:42Z ebzzry__ quit (Ping timeout: 240 seconds) 2017-08-04T04:59:33Z ebzzry__ joined #lisp 2017-08-04T05:03:15Z glamas quit (Remote host closed the connection) 2017-08-04T05:12:40Z dec0n quit (Read error: Connection reset by peer) 2017-08-04T05:15:21Z safe quit (Read error: Connection reset by peer) 2017-08-04T05:22:21Z Bock joined #lisp 2017-08-04T05:23:30Z dec0n joined #lisp 2017-08-04T05:27:05Z jameser quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-04T05:30:38Z angavrilov joined #lisp 2017-08-04T05:31:47Z pjb` joined #lisp 2017-08-04T05:39:17Z weltung joined #lisp 2017-08-04T05:40:32Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-04T05:43:27Z glamas joined #lisp 2017-08-04T05:48:09Z Karl_Dscc joined #lisp 2017-08-04T05:53:36Z quazimodo quit (Read error: Connection reset by peer) 2017-08-04T05:53:53Z pjb` quit (Ping timeout: 258 seconds) 2017-08-04T05:57:04Z glamas quit (Ping timeout: 255 seconds) 2017-08-04T06:00:14Z weltung_ joined #lisp 2017-08-04T06:01:15Z glamas joined #lisp 2017-08-04T06:01:32Z weltung quit (Ping timeout: 260 seconds) 2017-08-04T06:03:05Z BlueRavenGT quit (Ping timeout: 258 seconds) 2017-08-04T06:05:35Z Murii quit (Ping timeout: 240 seconds) 2017-08-04T06:05:56Z brendos joined #lisp 2017-08-04T06:09:11Z weltung joined #lisp 2017-08-04T06:09:39Z mishoo joined #lisp 2017-08-04T06:10:52Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-04T06:17:29Z weltung_ joined #lisp 2017-08-04T06:18:05Z weltung quit (Ping timeout: 240 seconds) 2017-08-04T06:21:55Z flamebeard joined #lisp 2017-08-04T06:23:48Z Karl_Dscc quit (Remote host closed the connection) 2017-08-04T06:24:53Z kuro6 quit (Quit: Leaving) 2017-08-04T06:36:42Z weltung joined #lisp 2017-08-04T06:37:37Z weltung_ quit (Ping timeout: 255 seconds) 2017-08-04T06:39:25Z theBlackDragon quit (Ping timeout: 255 seconds) 2017-08-04T06:43:32Z weltung_ joined #lisp 2017-08-04T06:44:02Z Murii joined #lisp 2017-08-04T06:44:29Z weltung quit (Ping timeout: 258 seconds) 2017-08-04T06:51:16Z pjb` joined #lisp 2017-08-04T06:56:26Z glamas quit (Remote host closed the connection) 2017-08-04T06:57:49Z yangby joined #lisp 2017-08-04T06:58:03Z glamas joined #lisp 2017-08-04T07:00:04Z weltung joined #lisp 2017-08-04T07:01:10Z glamas_ joined #lisp 2017-08-04T07:01:14Z damke joined #lisp 2017-08-04T07:01:53Z weltung_ quit (Ping timeout: 248 seconds) 2017-08-04T07:02:40Z glamas quit (Ping timeout: 260 seconds) 2017-08-04T07:02:50Z shka_ quit (Ping timeout: 240 seconds) 2017-08-04T07:03:58Z damke__ quit (Ping timeout: 268 seconds) 2017-08-04T07:04:12Z weltung quit (Client Quit) 2017-08-04T07:13:28Z pjb` quit (Ping timeout: 240 seconds) 2017-08-04T07:16:34Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-04T07:17:04Z quazimodo joined #lisp 2017-08-04T07:19:44Z knobo joined #lisp 2017-08-04T07:20:03Z pjb` joined #lisp 2017-08-04T07:21:40Z arbv quit (Ping timeout: 246 seconds) 2017-08-04T07:22:50Z phoe: I have a LPARALLEL question. Is there a way to submit tasks to a channel that does not cause results to be generated? 2017-08-04T07:23:12Z phoe: I want to fire-and-forget, I want the results not to be accumulated. 2017-08-04T07:26:24Z quazimodo quit (Read error: Connection reset by peer) 2017-08-04T07:26:39Z quazimodo joined #lisp 2017-08-04T07:33:32Z m00natic joined #lisp 2017-08-04T07:34:20Z phoe: Because the results, when unhandled, will cause a memory leak, and when handled, will require a separate result-receiving thread or another thread to try popping the results until none are left. 2017-08-04T07:37:08Z http_GK1wmSU joined #lisp 2017-08-04T07:37:28Z http_GK1wmSU left #lisp 2017-08-04T07:37:45Z glamas joined #lisp 2017-08-04T07:39:23Z Suzuran quit (Read error: Connection reset by peer) 2017-08-04T07:39:34Z Suzuran joined #lisp 2017-08-04T07:39:40Z theBlackDragon joined #lisp 2017-08-04T07:41:12Z glamas_ quit (Ping timeout: 240 seconds) 2017-08-04T07:44:44Z _death: phoe: results must always be received.. for example you can look at how lp:pmapc is implemented 2017-08-04T07:45:56Z phoe: _death: okay - I will work around this by beginning each worker function with a call that pops and discards all accumulated results. 2017-08-04T07:49:15Z CrazyEddy quit (Remote host closed the connection) 2017-08-04T07:51:47Z CrazyEddy joined #lisp 2017-08-04T07:56:05Z mikaelj_ quit (Ping timeout: 240 seconds) 2017-08-04T07:59:48Z random-nick joined #lisp 2017-08-04T08:00:26Z _death: phoe: that seems more expensive than another thread that spends almost all its time waiting 2017-08-04T08:01:35Z _death: it also won't work, as there's always at least one result not yet received 2017-08-04T08:02:30Z phoe: well, damn. 2017-08-04T08:03:26Z phoe: _death: I have try-receive-result though that will not block if there is no result. 2017-08-04T08:04:56Z _death: phoe: yeah.. I mean it doesn't work if you want to prove the invariant that all results are received 2017-08-04T08:05:38Z phoe: if there are 8 workers, then at most 8 results will be not received at any time. 2017-08-04T08:06:02Z phoe: good enough. 2017-08-04T08:06:57Z quazimodo quit (Read error: Connection reset by peer) 2017-08-04T08:07:13Z mikaelj joined #lisp 2017-08-04T08:07:33Z _death: but why not just have another thread to do that instead of increasing the cost for each worker 2017-08-04T08:08:26Z borei quit (Ping timeout: 258 seconds) 2017-08-04T08:13:28Z CrazyEddy quit (Remote host closed the connection) 2017-08-04T08:15:36Z pjb` is now known as pjb 2017-08-04T08:15:52Z phoe: isn't the cost there to be paid anyway? 2017-08-04T08:16:44Z quazimodo joined #lisp 2017-08-04T08:20:12Z CrazyEddy joined #lisp 2017-08-04T08:24:26Z djinni`_ quit (Quit: Leaving) 2017-08-04T08:25:38Z _death: phoe: yes, but the cost of one thread waiting is less than the cost of each worker polling 2017-08-04T08:25:58Z mazoe joined #lisp 2017-08-04T08:25:59Z quazimodo quit (Ping timeout: 268 seconds) 2017-08-04T08:28:40Z hhdave joined #lisp 2017-08-04T08:29:18Z phoe nods 2017-08-04T08:30:52Z strelox joined #lisp 2017-08-04T08:32:24Z djinni` joined #lisp 2017-08-04T08:33:53Z jamtho joined #lisp 2017-08-04T08:34:45Z arbv joined #lisp 2017-08-04T08:43:08Z Suzuran quit (Read error: Connection reset by peer) 2017-08-04T08:43:17Z Suzuran joined #lisp 2017-08-04T08:44:28Z Suzuran42 joined #lisp 2017-08-04T08:47:50Z jamtho quit (Ping timeout: 240 seconds) 2017-08-04T08:48:07Z Suzuran quit (Ping timeout: 246 seconds) 2017-08-04T08:48:07Z Suzuran42 is now known as Suzuran 2017-08-04T08:49:04Z arbv quit (Ping timeout: 260 seconds) 2017-08-04T08:49:46Z arbv joined #lisp 2017-08-04T08:50:17Z EvilAngel joined #lisp 2017-08-04T08:50:42Z defaultxr quit (Ping timeout: 260 seconds) 2017-08-04T09:01:55Z leadoverlove joined #lisp 2017-08-04T09:03:32Z arbv quit (Ping timeout: 260 seconds) 2017-08-04T09:06:00Z leadoverlove quit (Client Quit) 2017-08-04T09:09:45Z arbv joined #lisp 2017-08-04T09:10:13Z leadoverlove joined #lisp 2017-08-04T09:11:28Z davsebamse quit (Ping timeout: 260 seconds) 2017-08-04T09:12:28Z glamas quit (Remote host closed the connection) 2017-08-04T09:13:14Z leadoverlove quit (Remote host closed the connection) 2017-08-04T09:16:24Z glamas joined #lisp 2017-08-04T09:20:31Z pjb quit (Ping timeout: 255 seconds) 2017-08-04T09:25:27Z davsebamse joined #lisp 2017-08-04T09:25:57Z glamas quit (Remote host closed the connection) 2017-08-04T09:27:22Z glamas joined #lisp 2017-08-04T09:43:32Z glamas_ joined #lisp 2017-08-04T09:43:53Z glamas quit (Ping timeout: 258 seconds) 2017-08-04T09:46:24Z al-damiri joined #lisp 2017-08-04T09:54:09Z Murii quit (Ping timeout: 248 seconds) 2017-08-04T09:54:52Z trocado quit (Ping timeout: 260 seconds) 2017-08-04T09:56:29Z EvilAngel quit (Quit: leaving) 2017-08-04T09:57:34Z random-nick quit (Remote host closed the connection) 2017-08-04T09:58:09Z glamas_ quit (Remote host closed the connection) 2017-08-04T10:01:06Z random-nick joined #lisp 2017-08-04T10:08:09Z raynold quit (Quit: Connection closed for inactivity) 2017-08-04T10:17:02Z scymtym joined #lisp 2017-08-04T10:17:37Z pjb joined #lisp 2017-08-04T10:31:28Z pjb quit (Ping timeout: 240 seconds) 2017-08-04T10:33:26Z lancetw quit (Quit: Connection closed for inactivity) 2017-08-04T10:47:19Z fkac quit (Remote host closed the connection) 2017-08-04T10:48:51Z Bike joined #lisp 2017-08-04T10:48:54Z Bike quit (Remote host closed the connection) 2017-08-04T10:49:11Z Bike joined #lisp 2017-08-04T10:49:14Z Bike quit (Remote host closed the connection) 2017-08-04T10:49:41Z Bike joined #lisp 2017-08-04T10:50:05Z whoman quit (Ping timeout: 240 seconds) 2017-08-04T10:57:52Z test1600 quit (Quit: Leaving) 2017-08-04T11:01:45Z damke_ joined #lisp 2017-08-04T11:03:51Z damke quit (Ping timeout: 268 seconds) 2017-08-04T11:18:47Z Th30n joined #lisp 2017-08-04T11:24:53Z papachan joined #lisp 2017-08-04T11:27:41Z TMA: clhs dotimes 2017-08-04T11:27:41Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_dotime.htm 2017-08-04T11:32:43Z http_GK1wmSU joined #lisp 2017-08-04T11:35:19Z http_GK1wmSU left #lisp 2017-08-04T11:43:50Z aceluck joined #lisp 2017-08-04T11:52:19Z quazimodo joined #lisp 2017-08-04T11:55:51Z quazimodo quit (Read error: Connection reset by peer) 2017-08-04T11:57:22Z quazimodo joined #lisp 2017-08-04T11:58:15Z aceluck quit 2017-08-04T12:08:06Z leadoverlove joined #lisp 2017-08-04T12:10:28Z ebzzry__ quit (Ping timeout: 240 seconds) 2017-08-04T12:10:40Z Th30n quit (Ping timeout: 260 seconds) 2017-08-04T12:15:02Z leadoverlove quit (Remote host closed the connection) 2017-08-04T12:17:46Z Bike quit (Ping timeout: 246 seconds) 2017-08-04T12:28:57Z Devon joined #lisp 2017-08-04T12:30:35Z Mon_Ouie quit (Quit: WeeChat 1.9) 2017-08-04T12:36:21Z grumble quit (Ping timeout: 633 seconds) 2017-08-04T12:36:58Z ricky_ricardo joined #lisp 2017-08-04T12:37:35Z damke_ quit (Ping timeout: 268 seconds) 2017-08-04T12:38:08Z ricky_ricardo left #lisp 2017-08-04T12:40:15Z sellout- joined #lisp 2017-08-04T12:40:53Z oleo joined #lisp 2017-08-04T12:44:04Z marvin2 joined #lisp 2017-08-04T12:44:36Z whoman joined #lisp 2017-08-04T12:45:55Z shdeng quit (Quit: Leaving) 2017-08-04T12:56:00Z yangby quit (Quit: Go out for a walk and buy a drink.) 2017-08-04T13:05:49Z Bike joined #lisp 2017-08-04T13:06:58Z damke_ joined #lisp 2017-08-04T13:08:10Z papachan quit (Ping timeout: 255 seconds) 2017-08-04T13:10:11Z zaquest quit (Quit: Leaving) 2017-08-04T13:10:30Z quazimodo quit (Ping timeout: 258 seconds) 2017-08-04T13:14:10Z bailon joined #lisp 2017-08-04T13:14:17Z cromachina quit (Read error: Connection reset by peer) 2017-08-04T13:29:04Z ryanwatkins quit (Ping timeout: 260 seconds) 2017-08-04T13:32:21Z ryanwatkins joined #lisp 2017-08-04T13:36:10Z marvin2 quit (Ping timeout: 268 seconds) 2017-08-04T13:39:08Z Devon quit (Ping timeout: 255 seconds) 2017-08-04T13:43:52Z setheus quit (Ping timeout: 246 seconds) 2017-08-04T13:44:46Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-04T13:45:57Z setheus joined #lisp 2017-08-04T13:48:02Z grumble joined #lisp 2017-08-04T13:49:16Z xuxuru joined #lisp 2017-08-04T13:49:26Z Achylles joined #lisp 2017-08-04T13:50:16Z WhiskyRyan joined #lisp 2017-08-04T13:56:14Z rumbler31 joined #lisp 2017-08-04T14:00:29Z Kyo91 joined #lisp 2017-08-04T14:03:41Z random-nick quit (Remote host closed the connection) 2017-08-04T14:08:07Z ryanwatkins quit (Read error: Connection reset by peer) 2017-08-04T14:09:03Z random-nick joined #lisp 2017-08-04T14:09:52Z Achylles quit (Ping timeout: 255 seconds) 2017-08-04T14:13:18Z Mon_Ouie joined #lisp 2017-08-04T14:13:59Z warweasle joined #lisp 2017-08-04T14:16:10Z Achylles joined #lisp 2017-08-04T14:20:05Z brendos quit (Ping timeout: 240 seconds) 2017-08-04T14:25:30Z raynold joined #lisp 2017-08-04T14:25:40Z dec0n quit (Ping timeout: 276 seconds) 2017-08-04T14:28:26Z sz0 joined #lisp 2017-08-04T14:30:14Z rotty quit (Ping timeout: 258 seconds) 2017-08-04T14:30:47Z xuxuru quit (Quit: xuxuru) 2017-08-04T14:31:20Z dec0n joined #lisp 2017-08-04T14:35:24Z papachan joined #lisp 2017-08-04T14:46:55Z rippa joined #lisp 2017-08-04T14:47:04Z flamebeard quit (Quit: Leaving) 2017-08-04T14:49:07Z varjag joined #lisp 2017-08-04T14:56:12Z pjb joined #lisp 2017-08-04T14:56:45Z Karl_Dscc joined #lisp 2017-08-04T14:57:04Z rotty joined #lisp 2017-08-04T14:57:22Z beach: pjb: Did you know about O7? I suppose so. 2017-08-04T15:01:11Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-04T15:05:41Z Karl_Dscc quit (Remote host closed the connection) 2017-08-04T15:07:05Z varjag quit (Ping timeout: 240 seconds) 2017-08-04T15:08:21Z kozy joined #lisp 2017-08-04T15:09:38Z ebzzry__ joined #lisp 2017-08-04T15:11:58Z rumbler31 joined #lisp 2017-08-04T15:12:12Z m00natic quit (Remote host closed the connection) 2017-08-04T15:12:20Z varjag joined #lisp 2017-08-04T15:18:07Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-04T15:18:37Z WhiskyRyan joined #lisp 2017-08-04T15:18:39Z WhiskyRyan quit (Client Quit) 2017-08-04T15:22:42Z pjb: beach: I don't see what it is. O7? 2017-08-04T15:23:43Z beach: Successor of OpenMusic apparently. 2017-08-04T15:25:26Z beach: https://j-bresson.github.io/o7/ 2017-08-04T15:25:49Z beach: Maybe "successor" was not a good choice of words. 2017-08-04T15:26:04Z pjb: Experimental. 2017-08-04T15:26:17Z beach: Yeah. 2017-08-04T15:26:59Z pjb: It's a LispWorks application apparently. 2017-08-04T15:27:09Z beach: Hmm, OK. 2017-08-04T15:27:40Z pjb: Well, OpenMusic was. 2017-08-04T15:29:33Z WhiskyRyan joined #lisp 2017-08-04T15:29:48Z pjb: err, perhaps not. But O7 is. Last time I tried the free version of LispWorks, it was quite limited in memory (I couldn't even compile my whole libraries, but it was several years ago). 2017-08-04T15:31:41Z kozy quit (Remote host closed the connection) 2017-08-04T15:31:49Z kozy joined #lisp 2017-08-04T15:31:50Z kozy quit (Remote host closed the connection) 2017-08-04T15:31:59Z kozy joined #lisp 2017-08-04T15:36:08Z ebzzry__ quit (Ping timeout: 255 seconds) 2017-08-04T15:37:55Z ebzzry__ joined #lisp 2017-08-04T15:39:32Z beach: Does it use Capi for the GUI? That might be the reason for LispWorks. 2017-08-04T15:41:23Z d4ryus2 joined #lisp 2017-08-04T15:44:24Z d4ryus1 quit (Ping timeout: 260 seconds) 2017-08-04T15:45:11Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-04T15:47:12Z ebzzry__ quit (Ping timeout: 260 seconds) 2017-08-04T15:49:09Z al-damiri joined #lisp 2017-08-04T15:54:47Z aleamb joined #lisp 2017-08-04T15:57:31Z FreeBirdLjj joined #lisp 2017-08-04T16:01:27Z gravicappa joined #lisp 2017-08-04T16:05:09Z Kyo91_ joined #lisp 2017-08-04T16:08:01Z Kyo91 quit (Ping timeout: 248 seconds) 2017-08-04T16:08:38Z kozy quit (Remote host closed the connection) 2017-08-04T16:09:24Z ptdel joined #lisp 2017-08-04T16:11:14Z rumbler31 joined #lisp 2017-08-04T16:19:06Z Harag quit (Remote host closed the connection) 2017-08-04T16:19:47Z Harag joined #lisp 2017-08-04T16:19:53Z ptdel quit (Quit: leaving) 2017-08-04T16:22:02Z shka quit (Quit: Konversation terminated!) 2017-08-04T16:23:15Z pjb: beach: definitely: (:use "COMMON-LISP" "CL-USER" "OM-LISP" "CAPI" "LISPWORKS" "GP") 2017-08-04T16:28:14Z kozy joined #lisp 2017-08-04T16:37:01Z kozy quit (Remote host closed the connection) 2017-08-04T16:37:43Z kozy joined #lisp 2017-08-04T16:37:48Z http_GK1wmSU joined #lisp 2017-08-04T16:38:07Z http_GK1wmSU left #lisp 2017-08-04T16:38:58Z beach: Oh, well. 2017-08-04T16:43:27Z beach: As long as I have known them, the people at IRCAM have made the opposite choices that I would have made. 2017-08-04T16:44:15Z beach: NextStation, proprietary signal-processing cards, Mac, proprietary Lisp implementations. 2017-08-04T16:44:20Z warweasle: beach: I read that as IRAN...and I agreed. 2017-08-04T16:44:32Z beach: Heh. 2017-08-04T16:44:47Z beach: That would have been off topic and I avoid off topic. 2017-08-04T16:45:10Z hhdave quit (Ping timeout: 240 seconds) 2017-08-04T16:47:22Z chu quit (Ping timeout: 276 seconds) 2017-08-04T16:48:12Z beach: ... with one exception, of course, namely the use of Common Lisp. 2017-08-04T16:52:28Z rotty quit (Ping timeout: 240 seconds) 2017-08-04T16:53:34Z Achylles quit (Ping timeout: 246 seconds) 2017-08-04T16:54:26Z phinxy joined #lisp 2017-08-04T16:55:59Z borei joined #lisp 2017-08-04T16:58:32Z dim: pjb: I tried LispWorks free edition once and could not quickload pgloader with it 2017-08-04T16:58:55Z dim: it was not so long ago, couple years max 2017-08-04T17:01:54Z damke joined #lisp 2017-08-04T17:04:36Z antoszka: beach: Well, musicians make strange decisions. I've studied sound engineering at the Warsaw Conservatory, and even in the sound design/algorythmic composition departments, there's a lot of irrationality and hype-driven decisions. 2017-08-04T17:04:36Z damke_ quit (Ping timeout: 268 seconds) 2017-08-04T17:05:53Z chu joined #lisp 2017-08-04T17:09:37Z karswell joined #lisp 2017-08-04T17:19:09Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-04T17:20:21Z Shinmera: And that's enough work for me for today. https://www.youtube.com/watch?v=WoTT9_FABb4&feature=youtu.be 2017-08-04T17:21:43Z smazga joined #lisp 2017-08-04T17:21:48Z akkad: is there a way to coerce a plist into a string? 2017-08-04T17:22:19Z Shinmera: Depends on what you mean by coercing in that case. 2017-08-04T17:22:47Z akkad: (replace #(0 0 0 0 0 0 0 0 0 0 0) #(:|userName| ...) is bombing in a stack trace from sbcl 2017-08-04T17:23:01Z rotty joined #lisp 2017-08-04T17:23:16Z akkad: I do some cl-ppcre:regex-replace-all on a string which I think may include a plist. or rather is not a string 2017-08-04T17:23:40Z Shinmera: Huh? 2017-08-04T17:26:11Z damke quit (Ping timeout: 268 seconds) 2017-08-04T17:26:44Z Harag quit (Read error: Connection reset by peer) 2017-08-04T17:26:56Z Th30n joined #lisp 2017-08-04T17:27:01Z Harag joined #lisp 2017-08-04T17:27:32Z shka_ joined #lisp 2017-08-04T17:27:39Z WhiskyRyan joined #lisp 2017-08-04T17:30:05Z rotty quit (Ping timeout: 246 seconds) 2017-08-04T17:30:18Z jessup joined #lisp 2017-08-04T17:35:09Z bandrami joined #lisp 2017-08-04T17:35:51Z Xach: I need to embed a font in a dumped executable program and right now I'm thinking of just reading it into a special variable and then using flexi-streams to treat it as a stream. 2017-08-04T17:36:15Z kora9 joined #lisp 2017-08-04T17:36:30Z Xach wonders about some special namestring syntax that would let sbcl read from a pseudo filesystem embedded in the core file somewhere 2017-08-04T17:38:36Z mwsb joined #lisp 2017-08-04T17:40:40Z chu quit (Ping timeout: 276 seconds) 2017-08-04T17:40:41Z kora9: What made you choose CL instead of Scheme or Guile etc 2017-08-04T17:41:24Z axion: If anyone wants to see my surprising results of our only native png image parser compared to using foreign code, a quick test is here. This makes it pretty useless to me: https://gist.github.com/mfiano/4019adf11a8c9f102be249e261a53ade 2017-08-04T17:41:32Z bandrami quit (Quit: Leaving) 2017-08-04T17:41:40Z Shinmera: Xach: Might be better to use fast-io for that. Flexi-stream's performance is pretty poor. 2017-08-04T17:42:21Z Xach: Thanks. 2017-08-04T17:42:28Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-04T17:42:39Z Xach: In my case performance doesn't matter - just the ability to treat an in-memory vector as an input stream. 2017-08-04T17:43:31Z Xach: axion: speed is the most important thing? 2017-08-04T17:43:58Z axion: Xach: That test is for a mere 512x512x3 image, of which I have a few hundred to load at game start 2017-08-04T17:44:11Z Xach: axion: Well, there you go. 2017-08-04T17:44:13Z scymtym_ joined #lisp 2017-08-04T17:44:16Z axion: Would I rather wait several minutes, or less than 4 seconds? 2017-08-04T17:45:24Z tetero: axion: Now that the minigames patent has run out, you can wait several minutes while playing a minigame. Yay! 2017-08-04T17:46:32Z scymtym quit (Ping timeout: 268 seconds) 2017-08-04T17:46:47Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-04T17:47:24Z Xach: axion: Sure, if that's the constraint, you have to go with what works. 2017-08-04T17:48:24Z axion: I'm just surprised our only native option is _that_ slow. 2017-08-04T17:48:34Z beach: antoszka: I think that is unfortunately true for many other domains as well. 2017-08-04T17:49:19Z dddddd joined #lisp 2017-08-04T17:49:37Z Xach: axion: I wonder if there's any low-hanging fruit in making it faster. 2017-08-04T17:49:46Z Achylles joined #lisp 2017-08-04T17:50:12Z axion: 3b and I have tried a couple years ago with no results...profiling it doesn't show much either. 2017-08-04T17:50:40Z axion: I think a new parser might be in order if I can make some time down the road 2017-08-04T17:53:34Z antoszka: beach: Yeah, certainly, but from the various groups I happened to interact with, musicians seemed especially suspectible to such problems. 2017-08-04T17:55:48Z BlueRavenGT joined #lisp 2017-08-04T17:56:18Z scymtym_: axion: your paste indicates that the compiler was invoked while performing the operation. probably due to cold PCL caches. perform the operations more than once to get better timing information 2017-08-04T17:56:37Z axion: scymtym_: I have 2017-08-04T17:58:15Z scymtym_: axion: ok. pasting that version instead would have been more informative 2017-08-04T17:58:26Z Karl_Dscc joined #lisp 2017-08-04T17:58:47Z Harag quit (Ping timeout: 246 seconds) 2017-08-04T18:00:22Z axion: scymtym_: You're right, it is slightly better after a few runs. I wasn't doing it enough. Still horrible though https://gist.github.com/mfiano/71a33eb3bb87fd36c5361713cd7df399 2017-08-04T18:00:49Z neoncontrails joined #lisp 2017-08-04T18:02:22Z Harag joined #lisp 2017-08-04T18:03:03Z flip214: axion: how about reading one big picture, and blitting parts of that to the screen? 2017-08-04T18:03:34Z flip214: like in HTML, where a bigger picture gets cut through CSS classes into a set of icons, for example. 2017-08-04T18:03:47Z axion: An atlas would not work for this project. It was a thought. Also the time spent loading an image seems to be non-linear in regard to size 2017-08-04T18:04:06Z axion: Yes, it's called a texture atlas, or spritesheet 2017-08-04T18:04:16Z |3b|: you could still load from an atlas even if you don't draw from it, but probably still would be slow 2017-08-04T18:05:32Z axion: |3b|: hi, i had sent you a message earlier. I am stumped on something unrelated 2017-08-04T18:05:42Z flip214: well, if that aims to be cross-platform -- IIRC doing many files in windows is quite slow; in unixes it might not matter that much. 2017-08-04T18:06:18Z |3b|: yeah, but that just adds to decode time :p 2017-08-04T18:06:37Z ryanbw quit (Ping timeout: 260 seconds) 2017-08-04T18:06:43Z |3b|: and you can probably pack the small files in a big file to avoid that problem 2017-08-04T18:08:34Z axion: Xach: I second fast-io...it's great 2017-08-04T18:08:43Z Xach: Cool, I will keep it in mind 2017-08-04T18:09:36Z Harag quit (Remote host closed the connection) 2017-08-04T18:10:00Z Harag joined #lisp 2017-08-04T18:12:11Z papachan quit (Quit: Saliendo) 2017-08-04T18:19:57Z ryanbw joined #lisp 2017-08-04T18:21:57Z defaultxr joined #lisp 2017-08-04T18:22:11Z varjag quit (Ping timeout: 255 seconds) 2017-08-04T18:23:49Z Karl_Dscc quit (Remote host closed the connection) 2017-08-04T18:27:51Z rotty joined #lisp 2017-08-04T18:28:18Z sellout- quit (Quit: Leaving.) 2017-08-04T18:29:35Z papachan joined #lisp 2017-08-04T18:32:55Z k-stz joined #lisp 2017-08-04T18:33:10Z Karl_Dscc joined #lisp 2017-08-04T18:35:31Z someone_ joined #lisp 2017-08-04T18:35:35Z someone_ quit (Quit: Konversation terminated!) 2017-08-04T18:36:16Z sellout- joined #lisp 2017-08-04T18:36:41Z Harag quit (Ping timeout: 240 seconds) 2017-08-04T18:40:19Z Harag joined #lisp 2017-08-04T18:40:32Z WhiskyRyan joined #lisp 2017-08-04T18:45:42Z gravicappa quit (Ping timeout: 260 seconds) 2017-08-04T18:46:25Z phadthai quit (Ping timeout: 248 seconds) 2017-08-04T18:51:31Z Bock quit (Ping timeout: 276 seconds) 2017-08-04T18:52:52Z rumbler31 joined #lisp 2017-08-04T18:55:02Z Karl_Dscc quit (Remote host closed the connection) 2017-08-04T18:58:48Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-04T19:00:42Z WhiskyRyan joined #lisp 2017-08-04T19:10:12Z WhiskyRyan quit (Read error: Connection reset by peer) 2017-08-04T19:10:40Z slaejae joined #lisp 2017-08-04T19:11:10Z rotty quit (Ping timeout: 240 seconds) 2017-08-04T19:11:14Z WhiskyRyan joined #lisp 2017-08-04T19:13:10Z varjag joined #lisp 2017-08-04T19:14:08Z Xal left #lisp 2017-08-04T19:17:37Z shka_ quit (Ping timeout: 255 seconds) 2017-08-04T19:19:52Z Bicyclidine joined #lisp 2017-08-04T19:20:57Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-04T19:22:20Z Bike quit (Ping timeout: 260 seconds) 2017-08-04T19:24:18Z phadthai joined #lisp 2017-08-04T19:27:08Z dddddd quit (Remote host closed the connection) 2017-08-04T19:27:43Z warweasle quit (Quit: later) 2017-08-04T19:28:16Z mishoo quit (Ping timeout: 246 seconds) 2017-08-04T19:30:41Z shifty quit (Ping timeout: 248 seconds) 2017-08-04T19:31:29Z shka_ joined #lisp 2017-08-04T19:31:43Z whoman: yum, but still =) -> "beach> NextStation, proprietary signal-processing cards, Mac, proprietary Lisp implementations." 2017-08-04T19:32:53Z whoman: Shinmera, hey what is that? some kind of inspector? clouseau?? =) 2017-08-04T19:33:28Z whoman: Xach, i am also curious about in-image filesystem type of thing. let me know if you have persued that any further 2017-08-04T19:34:36Z Lowl3v3l quit (Read error: Connection reset by peer) 2017-08-04T19:35:03Z Lowl3v3l joined #lisp 2017-08-04T19:35:05Z vaporatorius quit (Ping timeout: 240 seconds) 2017-08-04T19:37:28Z ted_ joined #lisp 2017-08-04T19:37:36Z ted_ quit (Read error: Connection reset by peer) 2017-08-04T19:37:47Z phinxy quit (Read error: Connection reset by peer) 2017-08-04T19:37:54Z vaporatorius joined #lisp 2017-08-04T19:38:17Z rotty joined #lisp 2017-08-04T19:38:37Z phinxy joined #lisp 2017-08-04T19:42:24Z vaporatorius quit (Ping timeout: 260 seconds) 2017-08-04T19:45:56Z vaporatorius joined #lisp 2017-08-04T19:45:56Z vaporatorius quit (Changing host) 2017-08-04T19:45:56Z vaporatorius joined #lisp 2017-08-04T19:46:34Z Karl_Dscc joined #lisp 2017-08-04T19:46:38Z vap1 joined #lisp 2017-08-04T19:48:00Z Th30n quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-04T19:50:24Z andrzejku joined #lisp 2017-08-04T20:00:27Z mson joined #lisp 2017-08-04T20:16:54Z knusbaum joined #lisp 2017-08-04T20:17:03Z kora9 quit (Remote host closed the connection) 2017-08-04T20:21:52Z rumbler31 quit (Ping timeout: 276 seconds) 2017-08-04T20:23:29Z shka_ quit (Ping timeout: 248 seconds) 2017-08-04T20:24:10Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-04T20:24:53Z chu joined #lisp 2017-08-04T20:25:48Z mwsb quit (Ping timeout: 260 seconds) 2017-08-04T20:27:15Z andrzejku quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-04T20:32:11Z sellout- quit (Quit: Leaving.) 2017-08-04T20:32:22Z sellout- joined #lisp 2017-08-04T20:32:56Z sellout- quit (Client Quit) 2017-08-04T20:33:08Z sellout- joined #lisp 2017-08-04T20:33:44Z sellout- quit (Client Quit) 2017-08-04T20:33:54Z sellout- joined #lisp 2017-08-04T20:34:32Z sellout- quit (Client Quit) 2017-08-04T20:34:42Z sellout- joined #lisp 2017-08-04T20:35:20Z sellout- quit (Client Quit) 2017-08-04T20:35:30Z sellout- joined #lisp 2017-08-04T20:36:08Z sellout- quit (Client Quit) 2017-08-04T20:37:58Z varjag quit (Ping timeout: 268 seconds) 2017-08-04T20:38:01Z random-nick quit (Remote host closed the connection) 2017-08-04T20:43:54Z phoe: whoman: I remember pjb and jackdaniel were pursuing this idea at some time 2017-08-04T20:45:21Z random-nick joined #lisp 2017-08-04T20:48:28Z terpri joined #lisp 2017-08-04T20:49:41Z phinxy quit (Ping timeout: 240 seconds) 2017-08-04T20:58:49Z q-u-a-n- joined #lisp 2017-08-04T20:58:51Z q-u-a-n- quit (Remote host closed the connection) 2017-08-04T20:59:21Z q-u-a-n- joined #lisp 2017-08-04T21:01:50Z varjag joined #lisp 2017-08-04T21:11:32Z Kyo91_ quit (Ping timeout: 260 seconds) 2017-08-04T21:12:38Z whoman: phoe, okay interesting, thank you i will ask them 2017-08-04T21:12:55Z whoman quit (Remote host closed the connection) 2017-08-04T21:13:23Z Kyo91_ joined #lisp 2017-08-04T21:15:13Z Karl_Dscc quit (Remote host closed the connection) 2017-08-04T21:15:32Z pierpa joined #lisp 2017-08-04T21:16:46Z WhiskyRyan joined #lisp 2017-08-04T21:17:31Z yeticry_ joined #lisp 2017-08-04T21:20:11Z yeticry quit (Ping timeout: 240 seconds) 2017-08-04T21:24:14Z Bicyclidine quit (Ping timeout: 258 seconds) 2017-08-04T21:24:19Z Harag quit (Remote host closed the connection) 2017-08-04T21:24:38Z Harag joined #lisp 2017-08-04T21:24:41Z angavrilov quit (Remote host closed the connection) 2017-08-04T21:28:12Z strelox quit (Remote host closed the connection) 2017-08-04T21:29:52Z axion: what is the correct way to ignore a variable in the binding form of multiple-value-bind, like nil can be used for destructuring-bind? 2017-08-04T21:30:41Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-04T21:32:48Z z3t0_ joined #lisp 2017-08-04T21:32:54Z axion: i guess I have to just use DECLARE here? 2017-08-04T21:32:55Z phoe: (m-v-b (foo bar) baz (declare (ignore bar)) ...) 2017-08-04T21:33:14Z axion: yeah was kind of hoping to avoid that, but ok 2017-08-04T21:33:16Z z3t0_ is now known as z3t0 2017-08-04T21:39:43Z phoe: clhs destructuring-bind 2017-08-04T21:39:43Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_destru.htm 2017-08-04T21:40:33Z phoe: minion: memo for whoman: are you sure NIL can be used in DESTRUCTURING-BIND to mark a variable that is meant to be ignored? I'm almost sure this is against the specification. 2017-08-04T21:40:33Z minion: Remembered. I'll tell whoman when he/she/it next speaks. 2017-08-04T21:41:10Z brendos joined #lisp 2017-08-04T21:43:10Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-04T21:45:50Z axion: phoe: It was I who said that 2017-08-04T21:46:36Z phoe: axion: woewifhwugbosgispg 2017-08-04T21:46:44Z phoe: it's way too late for me to be on IRC 2017-08-04T21:47:06Z phoe: minion: memo for whoman: sorry, I meant axion, not you. :P 2017-08-04T21:47:07Z minion: Remembered. I'll tell whoman when he/she/it next speaks. 2017-08-04T21:47:09Z phoe drops asleep 2017-08-04T21:47:28Z axion: phoe: I've always used NIL, because LOOP encourages it, and have seen no ill efects when used directly with destructuring-bind 2017-08-04T21:47:38Z axion: maybe I am wrong :) 2017-08-04T21:48:17Z phoe: I'm sure that you cannot use constants on destructuring lambda lists 2017-08-04T21:48:40Z phoe: as variable names, that is 2017-08-04T21:48:42Z axion: It has always worked for me in every implementation I've tried...pure luck? 2017-08-04T21:49:29Z axion: nil is also a list, and destructuring-bind takes a tree 2017-08-04T21:49:39Z axion: so I would like to see why you cannot 2017-08-04T21:49:43Z keviv quit (Remote host closed the connection) 2017-08-04T21:50:52Z phoe: ...oh 2017-08-04T21:51:06Z phoe: oooh. hm. 2017-08-04T21:51:34Z phoe: but this means that destructuring a lambda list like (foo nil bar) means destructuring (foo () bar). 2017-08-04T21:51:55Z axion: the same way that you can use "." for &rest in destructuring-bind or the LOOP equivalent 2017-08-04T21:52:09Z phoe: so the thing between foo and bar looks like it must be an empty list. 2017-08-04T21:52:38Z axion: thats fine, because its not a symbol and not bound 2017-08-04T21:52:50Z phoe: now this is just crazy. 2017-08-04T21:53:01Z phoe: when destructuring (foo nil bar), is NIL treated as a symbol or as an empty list? 2017-08-04T21:53:07Z phoe: does the standard specify this anywhere? 2017-08-04T21:53:16Z phoe: does it actually matter? 2017-08-04T21:53:49Z axion: I'm wondering the same. I've used this trick for close to a decade and forgot where I learned it 2017-08-04T21:54:25Z axion: Where's pjb when you need him? :) 2017-08-04T21:54:35Z phoe: pjb: ^ 2017-08-04T21:54:40Z phoe: he'll see it tomorrow. 2017-08-04T22:01:26Z reinuseslisp joined #lisp 2017-08-04T22:02:50Z papachan quit (Quit: Saliendo) 2017-08-04T22:05:37Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-04T22:09:49Z mson quit (Quit: Connection closed for inactivity) 2017-08-04T22:11:42Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-04T22:14:26Z defaultxr quit (Quit: bye) 2017-08-04T22:15:41Z scymtym_ quit (Ping timeout: 240 seconds) 2017-08-04T22:21:26Z Bike joined #lisp 2017-08-04T22:22:28Z neoncontrails quit (Ping timeout: 260 seconds) 2017-08-04T22:22:47Z nowhere_man joined #lisp 2017-08-04T22:23:40Z aeth joined #lisp 2017-08-04T22:28:14Z MrSleepy joined #lisp 2017-08-04T22:29:04Z slaejae joined #lisp 2017-08-04T22:30:49Z smazga quit (Quit: leaving) 2017-08-04T22:30:52Z Harag quit (Ping timeout: 260 seconds) 2017-08-04T22:32:22Z k-stz quit (Remote host closed the connection) 2017-08-04T22:33:15Z cromachina joined #lisp 2017-08-04T22:38:20Z brendos quit (Ping timeout: 260 seconds) 2017-08-04T22:40:48Z leadoverlove joined #lisp 2017-08-04T22:42:48Z MrSleepy quit (Quit: Leaving) 2017-08-04T22:43:49Z leadoverlove quit (Client Quit) 2017-08-04T22:48:34Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-04T22:55:08Z rumbler31 joined #lisp 2017-08-04T22:58:38Z random-nick quit (Remote host closed the connection) 2017-08-04T22:59:31Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-04T23:00:30Z nowhere_man quit (Remote host closed the connection) 2017-08-04T23:11:02Z knusbaum quit (Quit: Leaving.) 2017-08-04T23:12:13Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-04T23:17:41Z pjb: In destructuring lambda lists, nil should be treated as the empty list. You're confusing with loop destructuring. 2017-08-04T23:18:10Z phoe quit (Ping timeout: 240 seconds) 2017-08-04T23:18:25Z pjb: axion: notably the var in the lambda list cannot be the name of constants, like NIL is! 2017-08-04T23:18:59Z axion: pjb: Aha, interesting. So it is just coincidence that it has worked for me all these years? 2017-08-04T23:20:21Z pentashift joined #lisp 2017-08-04T23:23:02Z Bike: you're talking about doing, like, (destructuring-bind (foo nil bar) (list 1 2 3) foo) and not having to worry about ignore? 2017-08-04T23:23:02Z Bike: well, (list foo bar), whatever 2017-08-04T23:23:32Z axion: Yes 2017-08-04T23:23:38Z pjb: (princ-to-string (nth-value 1 (ignore-errors (destructuring-bind (a nil b) '(42 33 24) (list a b))))) #| --> "33 can't be destructured against the lambda list nil, because it is not a proper list." |# 2017-08-04T23:24:03Z pjb: (princ-to-string (nth-value 1 (ignore-errors (destructuring-bind (a nil b) '(42 (33) 24) (list a b))))) #| --> "(33) can't be destructured against the lambda list nil, because it contains 1 elements, and exactly 0 are expected." |# 2017-08-04T23:25:01Z Bike: this... seems to be actually deliberate in sbcl, huh 2017-08-04T23:25:23Z axion: I don't understand 2017-08-04T23:25:45Z Suzuran42 joined #lisp 2017-08-04T23:26:01Z phoe joined #lisp 2017-08-04T23:26:16Z Bike: like, in sbcl the code works, because sbcl's destructuring-bind specifically sees nil and replaces it with a gensym declared ignorable. 2017-08-04T23:26:19Z axion: I do not get pjb's result. 2017-08-04T23:26:25Z axion: AHa 2017-08-04T23:26:38Z dec0n quit (Read error: Connection reset by peer) 2017-08-04T23:26:46Z Bike: pjb is presumably not using sbcl. 2017-08-04T23:26:47Z safe joined #lisp 2017-08-04T23:26:59Z dec0n joined #lisp 2017-08-04T23:29:04Z Suzuran quit (Ping timeout: 246 seconds) 2017-08-04T23:29:05Z Suzuran42 is now known as Suzuran 2017-08-04T23:29:27Z nowhere_man joined #lisp 2017-08-04T23:29:53Z axion: Ok, I see. This is an sbcl-specific convenience. 2017-08-04T23:30:08Z axion: So I'll have to grep all of my projects and convert to portable code 2017-08-04T23:30:10Z axion: Thanks 2017-08-04T23:30:22Z ebzzry__ joined #lisp 2017-08-04T23:30:23Z axion: CCL and Clisp are errors 2017-08-04T23:31:22Z mazoe quit (Read error: Connection reset by peer) 2017-08-04T23:34:20Z neoncontrails joined #lisp 2017-08-04T23:41:27Z BlueRavenGT quit (Ping timeout: 260 seconds) 2017-08-04T23:52:32Z wooden quit (Ping timeout: 260 seconds) 2017-08-04T23:52:57Z nowhere_man quit (Read error: Connection reset by peer) 2017-08-04T23:53:01Z WhiskyRyan joined #lisp 2017-08-04T23:54:11Z nowhere_man joined #lisp 2017-08-04T23:59:34Z slaejae joined #lisp 2017-08-05T00:01:44Z krasnal quit (Ping timeout: 246 seconds) 2017-08-05T00:03:36Z JuanDaugherty joined #lisp 2017-08-05T00:07:16Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T00:11:53Z kjak_ quit (Quit: leaving) 2017-08-05T00:12:04Z slaejae joined #lisp 2017-08-05T00:12:13Z Achylles quit (Read error: Connection reset by peer) 2017-08-05T00:13:52Z someone_ joined #lisp 2017-08-05T00:14:01Z someone_: Hi , anyone? 2017-08-05T00:14:09Z Cthulhux: beep 2017-08-05T00:14:34Z someone_: I'm looking for the reason Why the size of files in this time is become larger than the files in 80's , I mean in 80's the size of Ms Basic for Mac only 377K , it is smaller than most of images files in this time , Why ? 2017-08-05T00:14:43Z someone_: Is that because the programers not anymore write clean code and they do not become interested for their files size because the capacity of HDDs became bigger and the CPUs became faster ? 2017-08-05T00:14:49Z Cthulhux: which files? 2017-08-05T00:15:59Z someone_: any files, software or images 2017-08-05T00:16:04Z slaejae quit (Client Quit) 2017-08-05T00:16:11Z Cthulhux: they are not 2017-08-05T00:16:35Z Cthulhux: reduce an image to the color depth and resolution from the 80s and it will be small 2017-08-05T00:16:52Z Cthulhux: similar to applications and their feature set :-) 2017-08-05T00:17:46Z someone_: in 80's the size of Ms Basic for Mac only 377K , now if you want write any program like that will be larger than this size . 2017-08-05T00:18:10Z Cthulhux: depends. how many bits? which language? 2017-08-05T00:19:34Z Cthulhux: a 64-bit application will most likely be larger than a 16-bit application. a c++ application will most likely be larger than an asm application. etc. 2017-08-05T00:19:35Z someone_: in this time is there anyone can produce like MS Basic for Mac with same size of 80's? 2017-08-05T00:20:32Z Cthulhux: sure, if it was compiled for the hardware of the 80s 2017-08-05T00:20:34Z Cthulhux: ;-) 2017-08-05T00:20:58Z kjak_ joined #lisp 2017-08-05T00:21:05Z someone_: I think you are right . 2017-08-05T00:22:38Z Cthulhux: of course i am. 2017-08-05T00:23:18Z someone_: :-J 2017-08-05T00:29:38Z someone_: Cthulhux I have asked this question in C ++, programming and java-talk channels I did not get a good answer so I thought Lisp is the veterans channel, maybe I will get an answer, and I think you are answer is good you are right the softewere size depends on architecture and the languages which it supports and other things of this time . 2017-08-05T00:30:12Z Cthulhux: i'm not even half of lisp's age 2017-08-05T00:30:22Z Bike: we have pretty huge binaries. not much reason to care. maybe internet connectivity. 2017-08-05T00:30:27Z Cthulhux: ... ok, i am quite half of lisp's age. 2017-08-05T00:30:35Z Cthulhux: Bike, i *do* care 2017-08-05T00:30:54Z Bike: not much reason, i said. 2017-08-05T00:31:07Z Cthulhux: there is not much reason to *not* care 2017-08-05T00:31:15Z Cthulhux: except "meh my connection is fast" 2017-08-05T00:31:31Z Bike: that's a pretty good reason. 2017-08-05T00:32:18Z Cthulhux: if you consider "my browser/editor/todo list is allowed to hog 72 terabytes of ram because i have 144 anyway lol" a pretty good reason... 2017-08-05T00:32:31Z Cthulhux: and the same logic applies to file sizes 2017-08-05T00:33:00Z Bike: well, i basically storage size, though it applies to lesser extent to memory. 2017-08-05T00:33:35Z Cthulhux: we can all be lucky that only web browsers and dvd burners :-) are allowed to be large as fuck 2017-08-05T00:33:41Z Cthulhux: because else the storage WOULD be a problem 2017-08-05T00:34:00Z Cthulhux: and so would connection 2017-08-05T00:34:17Z Cthulhux: downloading multiple gigabytes for one application takes most people a while. 2017-08-05T00:36:11Z nowhere_man quit (Ping timeout: 240 seconds) 2017-08-05T00:36:13Z Bike: as for why, i dunno. we don't use com files anymore, so there's a couple more bytes. we also don't statically link things, which ought to help. 2017-08-05T00:36:27Z Cthulhux: i do statically link things. 2017-08-05T00:36:52Z Bike: and increase the file size? fo shame 2017-08-05T00:37:18Z Cthulhux: i dislike redundant copies of old libraries scattered across my libraries directory, increasing the folder size 2017-08-05T00:37:37Z Cthulhux: also, portability. 2017-08-05T00:40:47Z slaejae joined #lisp 2017-08-05T00:42:58Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T00:43:51Z slaejae quit (Client Quit) 2017-08-05T00:48:29Z Cthulhux: \o/ 2017-08-05T00:48:47Z Cthulhux: sbcl 1.3.20 doesn't build on freebsd 11.1, sb-concurrency fails 2017-08-05T00:48:52Z Cthulhux: i hate everything 2017-08-05T00:49:07Z someone_ quit (Ping timeout: 260 seconds) 2017-08-05T00:50:07Z reinuseslisp quit (Quit: Leaving) 2017-08-05T00:50:10Z someone_ joined #lisp 2017-08-05T00:51:32Z pierpa quit (Quit: Page closed) 2017-08-05T00:53:26Z nowhere_man joined #lisp 2017-08-05T00:53:42Z WhiskyRyan joined #lisp 2017-08-05T00:54:04Z rumbler31 joined #lisp 2017-08-05T00:56:31Z |3b|: Cthulhux: so you want redundant copies of old libraries scattered across your binaries instead, where you can't replace them for security fixes? 2017-08-05T01:00:11Z wooden joined #lisp 2017-08-05T01:00:21Z slaejae joined #lisp 2017-08-05T01:00:30Z Cthulhux: so what you say is that DLL hell is a lovely thing? 2017-08-05T01:02:42Z someone_ left #lisp 2017-08-05T01:03:33Z Bike: i think that's a pretty uncharitable reply 2017-08-05T01:06:41Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-05T01:08:21Z |3b| thought dll hell was when you /didn't/ have extra copies and everything broke because they got the wrong versions 2017-08-05T01:09:47Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T01:12:49Z rumbler31 quit (Remote host closed the connection) 2017-08-05T01:14:30Z aeth: yes 2017-08-05T01:15:08Z slaejae joined #lisp 2017-08-05T01:24:42Z Mon_Ouie joined #lisp 2017-08-05T01:25:34Z papachan joined #lisp 2017-08-05T01:30:29Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T01:35:22Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T01:38:53Z slaejae joined #lisp 2017-08-05T01:43:07Z Bock joined #lisp 2017-08-05T01:45:56Z nowhere_man quit (Ping timeout: 260 seconds) 2017-08-05T01:46:56Z LooneyTunes joined #lisp 2017-08-05T01:58:27Z ebzzry joined #lisp 2017-08-05T01:59:08Z BlueRavenGT joined #lisp 2017-08-05T02:01:49Z ebzzry__ quit (Ping timeout: 276 seconds) 2017-08-05T02:03:36Z neoncontrails quit (Remote host closed the connection) 2017-08-05T02:04:11Z neoncontrails joined #lisp 2017-08-05T02:08:27Z neoncontrails quit (Ping timeout: 260 seconds) 2017-08-05T02:10:02Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T02:17:11Z phoe quit (Ping timeout: 240 seconds) 2017-08-05T02:18:03Z terpri quit (Remote host closed the connection) 2017-08-05T02:24:40Z phoe joined #lisp 2017-08-05T02:27:08Z basket joined #lisp 2017-08-05T02:30:01Z shifty joined #lisp 2017-08-05T02:33:21Z pentashift quit (Quit: Leaving) 2017-08-05T02:46:06Z fortitude joined #lisp 2017-08-05T02:47:18Z slaejae joined #lisp 2017-08-05T02:51:03Z slaejae quit (Client Quit) 2017-08-05T02:58:46Z moei quit (Quit: Leaving...) 2017-08-05T03:03:52Z BlueRavenGT quit (Ping timeout: 260 seconds) 2017-08-05T03:10:15Z BlueRavenGT joined #lisp 2017-08-05T03:14:46Z WhiskyRyan joined #lisp 2017-08-05T03:15:49Z WhiskyRyan quit (Client Quit) 2017-08-05T03:18:42Z whoman joined #lisp 2017-08-05T03:20:39Z Harag joined #lisp 2017-08-05T03:23:04Z slaejae joined #lisp 2017-08-05T03:26:04Z sfa joined #lisp 2017-08-05T03:26:20Z WhiskyRyan joined #lisp 2017-08-05T03:26:46Z yangby joined #lisp 2017-08-05T03:28:36Z schoppenhauer quit (Ping timeout: 260 seconds) 2017-08-05T03:30:18Z schoppenhauer joined #lisp 2017-08-05T03:31:35Z yangby quit (Client Quit) 2017-08-05T03:35:36Z Bike quit (Ping timeout: 260 seconds) 2017-08-05T03:37:58Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T03:47:18Z slaejae joined #lisp 2017-08-05T03:50:51Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-05T03:55:13Z damke joined #lisp 2017-08-05T03:59:35Z Harag quit (Remote host closed the connection) 2017-08-05T03:59:59Z Harag joined #lisp 2017-08-05T04:00:44Z damke quit (Ping timeout: 268 seconds) 2017-08-05T04:04:57Z damke joined #lisp 2017-08-05T04:06:11Z BlueRavenGT quit (Ping timeout: 240 seconds) 2017-08-05T04:11:13Z damke quit (Ping timeout: 268 seconds) 2017-08-05T04:11:18Z damke_ joined #lisp 2017-08-05T04:14:40Z safe quit (Read error: Connection reset by peer) 2017-08-05T04:14:41Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T04:15:20Z ryan_vw joined #lisp 2017-08-05T04:16:46Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T04:17:53Z damke_ joined #lisp 2017-08-05T04:18:10Z BlueRavenGT joined #lisp 2017-08-05T04:18:47Z slaejae joined #lisp 2017-08-05T04:22:04Z cromachina_ joined #lisp 2017-08-05T04:24:57Z cromachina quit (Ping timeout: 260 seconds) 2017-08-05T04:32:35Z damke joined #lisp 2017-08-05T04:33:40Z nsrahmad joined #lisp 2017-08-05T04:34:59Z keviv joined #lisp 2017-08-05T04:35:16Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T04:38:58Z damke quit (Ping timeout: 268 seconds) 2017-08-05T04:42:33Z damke_ joined #lisp 2017-08-05T04:47:37Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T04:48:50Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T04:52:19Z FreeBirdLjj joined #lisp 2017-08-05T04:55:53Z fortitude quit (Quit: Leaving) 2017-08-05T05:05:05Z jessup quit (Quit: leaving) 2017-08-05T05:11:16Z damke_ joined #lisp 2017-08-05T05:16:45Z brendos joined #lisp 2017-08-05T05:20:07Z beach: Good morning everyone! 2017-08-05T05:21:12Z basket: hello beach 2017-08-05T05:22:50Z beach: basket: Are you new here? I don't recognize your nick. 2017-08-05T05:24:44Z basket: i'm new here 2017-08-05T05:24:57Z beach: What brings you to #lisp? 2017-08-05T05:27:13Z nsrahmad quit (Ping timeout: 276 seconds) 2017-08-05T05:27:14Z basket: i just started writing a personal project in lisp yesterday on a whim, i haven't written it in a while and i forgot how much i liked it 2017-08-05T05:27:39Z beach: OK, welcome back to Common Lisp then. 2017-08-05T05:28:00Z damke_ quit (Ping timeout: 258 seconds) 2017-08-05T05:29:43Z damke_ joined #lisp 2017-08-05T05:31:14Z caffe: morning, beach 2017-08-05T05:36:57Z nsrahmad joined #lisp 2017-08-05T05:42:29Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T05:44:11Z jessup joined #lisp 2017-08-05T05:47:32Z nsrahmad quit (Ping timeout: 246 seconds) 2017-08-05T05:53:33Z damke_ joined #lisp 2017-08-05T05:54:31Z papachan quit (Ping timeout: 276 seconds) 2017-08-05T05:59:03Z damke_ quit (Ping timeout: 258 seconds) 2017-08-05T06:03:09Z slaejae joined #lisp 2017-08-05T06:04:00Z damke_ joined #lisp 2017-08-05T06:04:16Z LooneyTunes quit (Ping timeout: 276 seconds) 2017-08-05T06:13:56Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T06:20:08Z damke_ joined #lisp 2017-08-05T06:21:53Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T06:22:26Z borei quit (Ping timeout: 258 seconds) 2017-08-05T06:29:21Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T06:29:34Z bigdaddytank joined #lisp 2017-08-05T06:29:56Z angavrilov joined #lisp 2017-08-05T06:33:36Z bigdaddytank quit (Client Quit) 2017-08-05T06:33:44Z damke_ joined #lisp 2017-08-05T06:33:56Z zacts quit (Quit: WeeChat 1.9) 2017-08-05T06:36:28Z aleamb quit (Read error: Connection reset by peer) 2017-08-05T06:36:53Z aleamb joined #lisp 2017-08-05T06:40:16Z quazimodo joined #lisp 2017-08-05T06:42:18Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T06:42:19Z quazimodo quit (Read error: Connection reset by peer) 2017-08-05T06:45:46Z damke_ joined #lisp 2017-08-05T06:51:08Z quazimodo joined #lisp 2017-08-05T06:51:28Z damke_ quit (Ping timeout: 246 seconds) 2017-08-05T06:52:47Z damke_ joined #lisp 2017-08-05T06:54:57Z slaejae joined #lisp 2017-08-05T06:57:17Z madmalik joined #lisp 2017-08-05T07:04:30Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T07:10:29Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T07:14:46Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-05T07:14:54Z teggi joined #lisp 2017-08-05T07:15:43Z damke_ joined #lisp 2017-08-05T07:17:35Z sfa quit (Ping timeout: 240 seconds) 2017-08-05T07:21:13Z damke_ quit (Ping timeout: 246 seconds) 2017-08-05T07:24:36Z sfa joined #lisp 2017-08-05T07:28:44Z mishoo joined #lisp 2017-08-05T07:29:57Z damke_ joined #lisp 2017-08-05T07:33:10Z quazimodo quit (Read error: Connection reset by peer) 2017-08-05T07:33:28Z quazimodo joined #lisp 2017-08-05T07:34:10Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T07:38:22Z damke_ quit (Ping timeout: 246 seconds) 2017-08-05T07:39:50Z slaejae joined #lisp 2017-08-05T07:41:45Z shka_ joined #lisp 2017-08-05T07:51:23Z vaporatorius quit (Quit: Leaving) 2017-08-05T07:52:47Z moei joined #lisp 2017-08-05T07:54:00Z vap1 quit (Quit: Leaving) 2017-08-05T07:54:15Z vaporatorius joined #lisp 2017-08-05T07:54:28Z bb010g_ joined #lisp 2017-08-05T08:05:32Z random-nick joined #lisp 2017-08-05T08:09:15Z Harag quit (Remote host closed the connection) 2017-08-05T08:09:35Z Harag joined #lisp 2017-08-05T08:13:48Z grouzen joined #lisp 2017-08-05T08:18:58Z araujo__ joined #lisp 2017-08-05T08:22:11Z araujo_ quit (Ping timeout: 240 seconds) 2017-08-05T08:27:56Z slaejae quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T08:36:22Z damke joined #lisp 2017-08-05T08:43:13Z sfa quit (Quit: Lost terminal) 2017-08-05T08:47:04Z quazimodo quit (Read error: Connection reset by peer) 2017-08-05T08:47:19Z quazimodo joined #lisp 2017-08-05T08:53:39Z random-nick quit (Remote host closed the connection) 2017-08-05T08:54:27Z Karl_Dscc joined #lisp 2017-08-05T08:57:26Z raynold quit (Quit: Connection closed for inactivity) 2017-08-05T09:02:17Z damke quit (Ping timeout: 268 seconds) 2017-08-05T09:02:36Z KZiemian joined #lisp 2017-08-05T09:04:07Z KZiemian: phoe: I send you mail few days ago, but I get respons that something is wrong with openmial 2017-08-05T09:07:31Z ebzzry_ joined #lisp 2017-08-05T09:08:51Z phoe: KZiemian: yes. Openmailbox went straight to hell. After two days of outage, they have disabled multiple mail aliases altogether and made IMAP access a "pro feature" for €4.99 monthly. 2017-08-05T09:09:10Z phoe: I got your email, but I'm moving from this mail provider. 2017-08-05T09:10:18Z ebzzry quit (Ping timeout: 268 seconds) 2017-08-05T09:10:25Z KZiemian: phoe: no problem, just send me new address 2017-08-05T09:11:31Z KZiemian: phoe: I don't want put all this question on github issue 2017-08-05T09:12:09Z KZiemian: phoe: to the monday I will send some now checks 2017-08-05T09:12:22Z phoe: KZiemian: okay. Thanks! 2017-08-05T09:12:26Z damke joined #lisp 2017-08-05T09:13:11Z KZiemian: phoe: no problem:). I will try to solve 3 left questions along the way 2017-08-05T09:18:01Z ebzzry joined #lisp 2017-08-05T09:18:52Z KZiemian: phoe: aha 2017-08-05T09:18:55Z phoe: Shit, now I need a new mail provider... If anyone knows of any free mail services that has free aliases, please query me. 2017-08-05T09:19:49Z KZiemian: phoe: if you look at this mail, do you think that is fair summary of current work and can be placed on github issue? 2017-08-05T09:19:59Z KZiemian: phoe: or I need to rewrite it? 2017-08-05T09:20:41Z ebzzry_ quit (Ping timeout: 246 seconds) 2017-08-05T09:21:35Z phoe: KZiemian: It's pretty good. You can put it on github. 2017-08-05T09:22:20Z KZiemian: phoe: thanks :) 2017-08-05T09:23:01Z KZiemian: phoe: one last question: what we do with rearanged text in CLUS? Notice it or not? 2017-08-05T09:23:15Z damke quit (Ping timeout: 268 seconds) 2017-08-05T09:23:20Z phoe: KZiemian: please notice it. 2017-08-05T09:23:36Z KZiemian: phoe: okey, now I read 2017-08-05T09:24:17Z KZiemian: phoe: I must clean my home after holidays, in the evening I put this on github and check some diff 2017-08-05T09:24:35Z KZiemian: phoe: thank you for help:) 2017-08-05T09:24:44Z KZiemian: sayoonara everybody:) 2017-08-05T09:24:48Z KZiemian quit (Quit: Page closed) 2017-08-05T09:29:29Z damke joined #lisp 2017-08-05T09:33:53Z ebzzry_ joined #lisp 2017-08-05T09:34:21Z nsrahmad joined #lisp 2017-08-05T09:34:52Z damke quit (Ping timeout: 258 seconds) 2017-08-05T09:36:15Z ebzzry__ joined #lisp 2017-08-05T09:36:47Z ebzzry quit (Ping timeout: 246 seconds) 2017-08-05T09:39:04Z damke joined #lisp 2017-08-05T09:39:05Z ebzzry_ quit (Ping timeout: 258 seconds) 2017-08-05T09:46:03Z random-nick joined #lisp 2017-08-05T09:48:31Z quazimodo quit (Ping timeout: 276 seconds) 2017-08-05T09:52:20Z Karl_Dscc quit (Remote host closed the connection) 2017-08-05T09:53:10Z aleamb quit (Quit: Leaving) 2017-08-05T09:54:03Z random-nick quit (Quit: quit) 2017-08-05T09:54:10Z mishoo quit (Ping timeout: 240 seconds) 2017-08-05T09:54:18Z random-nick joined #lisp 2017-08-05T09:56:41Z Bike joined #lisp 2017-08-05T10:02:57Z bb010g_ quit (Quit: Connection closed for inactivity) 2017-08-05T10:06:25Z damke quit (Ping timeout: 268 seconds) 2017-08-05T10:09:44Z ebzzry__ quit (Read error: Connection reset by peer) 2017-08-05T10:10:12Z ebzzry__ joined #lisp 2017-08-05T10:14:28Z nsrahmad quit (Ping timeout: 246 seconds) 2017-08-05T10:24:33Z teggi quit (Remote host closed the connection) 2017-08-05T10:38:22Z kora9 joined #lisp 2017-08-05T10:39:05Z kora9: Oh my god. It just dawned on me that REPL doesn't only mean Read-Eval Print Loop. It's like literally (loop (print (eval (read)))) :D 2017-08-05T10:39:19Z oleo: morning 2017-08-05T10:39:23Z kora9: Good morning :) 2017-08-05T10:39:27Z oleo: hahahah 2017-08-05T10:39:32Z oleo: :) 2017-08-05T10:39:38Z Shinmera: kora9: The CL repl can do some more stuff, so it's not /quite/ that simple, but yes. 2017-08-05T10:39:56Z kora9: Shinmera: Yeah I understand that it's a bit more involved, but it's essentially that + fancy isn't it? 2017-08-05T10:40:25Z Shinmera: Yeah. 2017-08-05T10:41:02Z kora9: I love the symmetry 2017-08-05T10:41:17Z Mon_Ouie quit (Quit: WeeChat 1.9) 2017-08-05T10:41:31Z Shinmera: Particularly the CL repl needs to handle the * ** *** / // /// + ++ +++ variables and errors, but that's pretty simple stuff. 2017-08-05T10:41:52Z oleo: and - 2017-08-05T10:42:16Z Shinmera: Right. 2017-08-05T10:42:46Z Shinmera: clhs 25.1.1 2017-08-05T10:42:47Z specbot: Top level loop: http://www.lispworks.com/reference/HyperSpec/Body/25_aa.htm 2017-08-05T10:42:49Z oleo: debugger+stepper+inspector+error-handling too 2017-08-05T10:43:05Z Xach: not really. 2017-08-05T10:43:13Z Xach: those are not specified much. 2017-08-05T10:43:22Z oleo: not for the repl ? 2017-08-05T10:43:45Z Xach: i mean, for a useful repl, yes. 2017-08-05T10:43:56Z oleo: ok 2017-08-05T10:43:59Z Xach: but for a spec-compliant repl - there is flexibility 2017-08-05T10:44:18Z Shinmera: 25.1.1 just says: "The top level loop is not completely specified; thus the user interface is implementation-defined." 2017-08-05T10:44:33Z oleo: yah, seems so 2017-08-05T10:44:34Z Shinmera: It only talks about the aforementioned variables. 2017-08-05T10:46:22Z basket: all the hyperspec says about inspect is 'inspect is an interactive version of describe. The nature of the interaction is implementation-dependent, but the purpose of inspect is to make it easy to wander through a data structure, examining and modifying parts of it.' 2017-08-05T10:46:31Z basket: for step it says: It is technically permissible for a conforming implementation to take no action at all other than normal execution of the form. In such a situation, (step form) is equivalent to, for example, (let () form). 2017-08-05T10:48:03Z phoe: basket: that's correct 2017-08-05T10:48:11Z phoe: inspecting and stepping is implementation-dependent 2017-08-05T10:50:07Z damke joined #lisp 2017-08-05T10:58:39Z beach` joined #lisp 2017-08-05T11:00:11Z kora9: :) 2017-08-05T11:02:20Z damke_ joined #lisp 2017-08-05T11:02:27Z beach quit (Disconnected by services) 2017-08-05T11:02:31Z beach` is now known as beach 2017-08-05T11:03:25Z hylisper joined #lisp 2017-08-05T11:04:01Z Karl_Dscc joined #lisp 2017-08-05T11:04:06Z scymtym joined #lisp 2017-08-05T11:05:00Z damke quit (Ping timeout: 268 seconds) 2017-08-05T11:07:27Z CrazyEddy quit (Ping timeout: 260 seconds) 2017-08-05T11:11:10Z knobo quit (Ping timeout: 240 seconds) 2017-08-05T11:15:50Z damke joined #lisp 2017-08-05T11:15:56Z hylisper left #lisp 2017-08-05T11:17:57Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T11:22:16Z damke quit (Ping timeout: 268 seconds) 2017-08-05T11:23:44Z papachan joined #lisp 2017-08-05T11:24:10Z Harag quit (Ping timeout: 240 seconds) 2017-08-05T11:24:20Z damke joined #lisp 2017-08-05T11:36:19Z varjag joined #lisp 2017-08-05T11:38:49Z damke_ joined #lisp 2017-08-05T11:39:27Z damke quit (Ping timeout: 258 seconds) 2017-08-05T11:41:58Z mishoo joined #lisp 2017-08-05T11:43:49Z varjag quit (Remote host closed the connection) 2017-08-05T11:44:05Z varjag joined #lisp 2017-08-05T11:45:54Z Karl_Dscc quit (Remote host closed the connection) 2017-08-05T11:46:10Z pierpa joined #lisp 2017-08-05T11:47:07Z damke_ quit (Ping timeout: 258 seconds) 2017-08-05T11:48:17Z papachan quit (Ping timeout: 248 seconds) 2017-08-05T11:48:43Z c__ joined #lisp 2017-08-05T11:50:59Z damke_ joined #lisp 2017-08-05T11:54:37Z shifty quit (Ping timeout: 276 seconds) 2017-08-05T11:56:50Z heurist` joined #lisp 2017-08-05T11:59:02Z damke joined #lisp 2017-08-05T12:00:04Z heurist quit (Ping timeout: 260 seconds) 2017-08-05T12:01:18Z damke_ quit (Ping timeout: 258 seconds) 2017-08-05T12:07:41Z varjag quit (Ping timeout: 240 seconds) 2017-08-05T12:09:10Z BlueRavenGT quit (Ping timeout: 240 seconds) 2017-08-05T12:09:11Z pierpa quit (Remote host closed the connection) 2017-08-05T12:14:40Z phinxy joined #lisp 2017-08-05T12:20:51Z damke quit (Ping timeout: 268 seconds) 2017-08-05T12:21:57Z damke_ joined #lisp 2017-08-05T12:24:14Z varjag joined #lisp 2017-08-05T12:29:07Z varjag quit (Ping timeout: 260 seconds) 2017-08-05T12:32:43Z nowhere_man joined #lisp 2017-08-05T12:38:57Z fmeyer joined #lisp 2017-08-05T12:39:31Z teggi joined #lisp 2017-08-05T12:41:52Z dansa joined #lisp 2017-08-05T12:44:39Z varjag joined #lisp 2017-08-05T12:45:59Z dansa: Hi. I'm following up a tutorial on how to write some common lisp for the web --- by using hunchentoot. I'm able to run hunchentoot:start, I can see the server listens on the right port, the browser connects to it, sends a request completely, but nothing comes back --- it just hangs in there waiting for an answer. No error message on the standard-out. Is there some log where I can see what might be happening? I'm using GNU CLISP. 2017-08-05T12:45:59Z dansa: Here's how I started the server: RETRO-GAMES[33]> (hunchentoot:start (make-instance 'hunchentoot:easy-acceptor :port 4242)). Any help is appreciated. Thank you. 2017-08-05T12:46:45Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T12:47:21Z dansa: (I installed hunchentoot by using quicklisp. I did have to replace my standard ASDF with an ASDF >= 3.1. I do so and was able to finish up with the quicklisp-installation of hunchentoot.) 2017-08-05T12:47:38Z dansa: (I installed hunchentoot by using quicklisp. I did have to replace my standard ASDF with an ASDF >= 3.1. I [did] so and was able to finish up with the quicklisp-installation of hunchentoot.) 2017-08-05T12:47:41Z phoe: dansa: I wouldn't advise CLISP for a beginner. 2017-08-05T12:48:01Z dansa: phoe: What do you advise? 2017-08-05T12:48:02Z phoe: Go with either SBCL or CCL - SBCL has the advantage of being in linux repos. 2017-08-05T12:48:15Z phoe: So if you're on a debianlike, # apt install sbcl 2017-08-05T12:48:37Z dansa: Do you think I might be hitting on some CLISP cornercase? 2017-08-05T12:49:01Z phoe: I have no idea and actually doubt it, but for SBCL, you'll get much more support around here. 2017-08-05T12:49:08Z phoe: Are you using emacs/slime? 2017-08-05T12:49:22Z phoe: Or run Lisp from terminal? 2017-08-05T12:49:37Z mishoo_ joined #lisp 2017-08-05T12:49:46Z Achylles joined #lisp 2017-08-05T12:49:52Z varjag quit (Ping timeout: 276 seconds) 2017-08-05T12:50:09Z serviteur joined #lisp 2017-08-05T12:51:02Z mishoo quit (Ping timeout: 246 seconds) 2017-08-05T12:51:13Z dansa: I'm using EMACS. I have SLIME installed, but did not learn how to connect SLIME with CLISP yet. (SLIME currently does not connect itself properly to my CLISP. It blows an error about reading a temporary directory. I should try it again in fact, because I did reset my TMP directories. Let me see how that goes.) 2017-08-05T12:53:12Z Achylles quit (Client Quit) 2017-08-05T12:53:54Z phoe: Go grab SBCL and try connecting to it with slime. 2017-08-05T12:53:56Z dansa: Here's what SLIME says. *** - OPEN: Directory #P"C:\\Users\\ANDR~1\\AppData\\Local\\Temp\\" does not exist. I don't know where it gets this directory from. Check my environment variables. (getenv "TMP") --> "c:/emacs/tmp/"; (getenv "TMPDIR") --> "c:/emacs/tmp/" 2017-08-05T12:54:12Z dansa: Okay, phoe. I'll do so. Thank you! 2017-08-05T12:54:21Z phoe: since it's that in your user directory, can't you create that dir? 2017-08-05T12:54:37Z phoe: > mkdir C:\Users\ANDR~1\AppData\Local\Temp 2017-08-05T12:54:38Z Walex2: dansa: under MS-Windows it is "%TEMP%" 2017-08-05T12:55:12Z Walex2: dansa: note the "E" 2017-08-05T12:55:16Z strelox joined #lisp 2017-08-05T12:55:24Z dansa: Walex2: you got it! And you discovered I'm not a Windows user. :-) True, I run all my things on UNIX, but I do work on Windows for other reasons. (Given EMACS runs on Windows, I usually don't find that much of a problem.) 2017-08-05T12:56:46Z Walex2: dansa: I guess you know that there are at least two ways to "port" UNIX/Linux sw to MS-Windows: native port and Cygwin port. 2017-08-05T12:57:27Z Walex2: dansa: I guess that a native port will use %TEMP% and a Cygwin port will use $TMP 2017-08-05T12:58:25Z dansa: That makes sense. I can't justify why, but I have been totally native lately. (I've used cygwin in the past. I think I felt neither on UNIX nor on Windows. That might have been the reason I went totally native last time.) 2017-08-05T13:03:52Z dansa: I guess I don't know how to set environment variables with CLISP. I thought my ELISP (setenv "TEMP" ...) would do, but it doesn't, though getenv works. 2017-08-05T13:05:16Z varjag joined #lisp 2017-08-05T13:05:53Z damke_ joined #lisp 2017-08-05T13:06:05Z dansa: I got it --- setf. 2017-08-05T13:09:02Z dansa: No go. SLIME still tries to access the standard Windows TEMP directory, even though (getenv "TEMP") already means "c:/emacs/tmp". Okay. I've tried enough. If SBCL is friendlier for newbies, I'm gonna go with it. Thank you all. 2017-08-05T13:09:36Z serviteur: You should use linux dansa, it would be far easier 2017-08-05T13:10:04Z varjag quit (Ping timeout: 260 seconds) 2017-08-05T13:11:25Z dansa: You're right --- but we can't always take the easier path. Sometimes we need to be patient. :) 2017-08-05T13:11:43Z TMA: dansa: maybe the environment needs to be set before starting emacs 2017-08-05T13:13:41Z dansa: serviteur: With EMACS, life on Windows isn't so bad. (Windows is nearly inexistent for me. It just serves to run EMACS. But it's true, on cases like this one, I need to deal with Windows a bit.) TMA: That's possible, though I do set it before I run clisp.exe, ie before I run M-x slime. 2017-08-05T13:14:36Z TMA: dansa: it might be too late for slime to notice. the value might be cached already during (require 'slime) somewhere during init.el processing 2017-08-05T13:14:57Z dansa: TMA: I don't (require 'slime). 2017-08-05T13:15:17Z dansa: Oh, sorry. Nevermind that. 2017-08-05T13:15:35Z dansa: Slime is in my lisp-path, so it surely gets required somewhere. 2017-08-05T13:19:20Z TMA: on an altogether different topic: is there a good tutorial for profiling in common lisp (sbcl/ccl/clisp)? 2017-08-05T13:19:31Z dansa: Guys, today isn't my day. SBCL.exe installed, but doesn't run. :) It says: %./sbcl.exe --> fatal error encountered in SBCL pid 7836(tid 8728552): --> can't find core file at C:Program Files (x86)/sbcl/lib/sbcl//sbcl.core. (Does it expect to find this sbcl.core there? That's neither the default installation dir, nor the one I chose --- and I chose the default.) 2017-08-05T13:19:31Z dansa: 2017-08-05T13:19:42Z basket: dansa: what does 'M-: temporary-file-directory' say? 2017-08-05T13:19:45Z dddddd joined #lisp 2017-08-05T13:20:21Z Bike: TMA: i haven't had enough trouble with it to need a tutorial. on sbcl, the manual for sb-prof and sb-sprof have been adequate. i think ccl has documentation on its profiling too 2017-08-05T13:20:26Z dansa: basket: it says: "c:/Users/ANDR~1/AppData/Local/Temp/" 2017-08-05T13:20:46Z TMA: dansa: sbcl probably needs SBCL_HOME environment variable set 2017-08-05T13:21:39Z dansa: TMA: yes, will try that. But since basket has found a likely root cause of my CLISP trouble, let's reconsider it the problem there. I'll be right back. 2017-08-05T13:21:54Z fmeyer quit (Quit: leaving) 2017-08-05T13:22:14Z TMA: oh, I did not expect sbcl to have a manual 2017-08-05T13:22:33Z dansa: basket: you got it. I just managed to run SLIME with CLISP. Perfection. 2017-08-05T13:22:45Z dansa: ;; Swank started at port: 58476. 2017-08-05T13:22:52Z basket: cool :) 2017-08-05T13:22:58Z TMA: and searching for "profiling sbcl" did not come wit useful links 2017-08-05T13:23:13Z TMA: Bike: thanks, I'll look there 2017-08-05T13:24:02Z Bike: i mean it basically boils down to, pick some set of functions, set them up for profiling, run your program, get a report 2017-08-05T13:25:52Z varjag joined #lisp 2017-08-05T13:26:27Z fm_ joined #lisp 2017-08-05T13:26:28Z fm_ quit (Remote host closed the connection) 2017-08-05T13:27:08Z fmeyer joined #lisp 2017-08-05T13:28:14Z fmeyer quit (Remote host closed the connection) 2017-08-05T13:28:38Z fmeyer joined #lisp 2017-08-05T13:30:10Z varjag quit (Ping timeout: 240 seconds) 2017-08-05T13:32:54Z andrzejku joined #lisp 2017-08-05T13:35:22Z dansa` joined #lisp 2017-08-05T13:36:12Z mishoo_ quit (Ping timeout: 260 seconds) 2017-08-05T13:38:00Z dansa` quit (Remote host closed the connection) 2017-08-05T13:39:13Z dansa quit (Ping timeout: 248 seconds) 2017-08-05T13:39:38Z fmeyer_ joined #lisp 2017-08-05T13:39:54Z fmeyer_ quit (Client Quit) 2017-08-05T13:43:29Z andrzejku quit (Quit: My iMac has gone to sleep. ZZZzzz…) 2017-08-05T13:43:43Z michael____ joined #lisp 2017-08-05T13:45:53Z teggi quit (Ping timeout: 255 seconds) 2017-08-05T13:46:05Z michael____ quit (Client Quit) 2017-08-05T13:46:31Z varjag joined #lisp 2017-08-05T13:48:45Z teggi joined #lisp 2017-08-05T13:51:08Z varjag quit (Ping timeout: 260 seconds) 2017-08-05T13:51:51Z __paul0 joined #lisp 2017-08-05T13:55:31Z _paul0 quit (Ping timeout: 276 seconds) 2017-08-05T13:56:16Z varjag joined #lisp 2017-08-05T13:58:27Z kora9 quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-05T13:58:57Z teggi quit (Ping timeout: 240 seconds) 2017-08-05T14:00:09Z teggi joined #lisp 2017-08-05T14:01:10Z Guest76389 is now known as micro_ 2017-08-05T14:03:32Z michael____ joined #lisp 2017-08-05T14:07:33Z fmeyer quit (Quit: Leaving) 2017-08-05T14:09:13Z fmeyer joined #lisp 2017-08-05T14:09:23Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T14:12:10Z nowhere_man quit (Remote host closed the connection) 2017-08-05T14:12:57Z michael____ quit (Ping timeout: 260 seconds) 2017-08-05T14:13:03Z damke_ joined #lisp 2017-08-05T14:13:33Z nowhere_man joined #lisp 2017-08-05T14:15:21Z rumbler31 joined #lisp 2017-08-05T14:22:41Z ebzzry__ is now known as ebzzry 2017-08-05T14:34:03Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T14:34:04Z fmeyer quit (Ping timeout: 260 seconds) 2017-08-05T14:36:47Z damke_ joined #lisp 2017-08-05T14:40:07Z brendos quit (Ping timeout: 246 seconds) 2017-08-05T14:42:15Z Liu quit (Remote host closed the connection) 2017-08-05T14:42:38Z Liu joined #lisp 2017-08-05T14:44:07Z ebzzry_ joined #lisp 2017-08-05T14:46:40Z ebzzry quit (Ping timeout: 240 seconds) 2017-08-05T14:47:10Z wizzo joined #lisp 2017-08-05T14:51:53Z damke_ quit (Ping timeout: 258 seconds) 2017-08-05T14:54:41Z WhiskyRyan joined #lisp 2017-08-05T14:56:02Z damke_ joined #lisp 2017-08-05T14:59:13Z Bike quit (Ping timeout: 248 seconds) 2017-08-05T15:00:06Z rumbler31 quit (Remote host closed the connection) 2017-08-05T15:01:43Z damke_ quit (Remote host closed the connection) 2017-08-05T15:01:57Z dmiles quit (Read error: Connection reset by peer) 2017-08-05T15:04:56Z damke_ joined #lisp 2017-08-05T15:05:21Z xuxuru joined #lisp 2017-08-05T15:14:48Z dmiles joined #lisp 2017-08-05T15:34:37Z hylisper joined #lisp 2017-08-05T15:39:52Z nowhere_man quit (Ping timeout: 260 seconds) 2017-08-05T15:41:41Z d4ryus3 joined #lisp 2017-08-05T15:45:00Z d4ryus2 quit (Ping timeout: 260 seconds) 2017-08-05T15:46:37Z damke joined #lisp 2017-08-05T15:46:49Z ebzzry_ quit (Ping timeout: 268 seconds) 2017-08-05T15:48:37Z damke_ quit (Ping timeout: 258 seconds) 2017-08-05T15:52:11Z http_GK1wmSU joined #lisp 2017-08-05T15:52:44Z http_GK1wmSU left #lisp 2017-08-05T15:53:34Z flip214: TMA: http://www.sbcl.org/manual/#Profiling 2017-08-05T15:56:19Z random-nick: is there any erlang-style concurrency library for common lisp? 2017-08-05T15:56:52Z phoe: random-nick: CCL has erlangen 2017-08-05T15:57:08Z phoe: https://github.com/eugeneia/erlangen 2017-08-05T15:57:53Z random-nick: none for SBCL? 2017-08-05T15:58:57Z phoe: random-nick: what exactly do you mean by erlang-style concurrency? 2017-08-05T15:59:13Z phoe: spawning thousands of processes? 2017-08-05T15:59:20Z phoe: message-passing? 2017-08-05T15:59:41Z phoe: communicating through the network? 2017-08-05T16:00:09Z random-nick: spawning thousands of processes that communicate by message-passing 2017-08-05T16:00:29Z hylisper: random-nick: if you are interested in the actor model, there is cl-actors, available from quicklisp 2017-08-05T16:00:41Z rumbler31 joined #lisp 2017-08-05T16:01:05Z phoe: random-nick: these are going to be implemented by OS threads. I don't think SBCL has any green threads implementation. 2017-08-05T16:01:34Z phoe: so beware of killing your OS with the spawned threads. 2017-08-05T16:01:42Z Shinmera: ECL has green threads if I remember correctly 2017-08-05T16:02:00Z damke_ joined #lisp 2017-08-05T16:02:31Z flip214: random-nick: I guess you'll want "thousands of threads"... 2017-08-05T16:02:37Z flip214: or perhaps green threads, even. 2017-08-05T16:03:40Z flip214: I believe lparallel and CPS might be a tool to get green threads. 2017-08-05T16:04:05Z damke quit (Ping timeout: 268 seconds) 2017-08-05T16:04:19Z flip214: and google says https://github.com/thezerobit/green-threads 2017-08-05T16:05:07Z flip214: ah, CL-CONT is even explicitly mentioned. 2017-08-05T16:07:57Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-05T16:08:00Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T16:09:53Z flazh joined #lisp 2017-08-05T16:12:45Z jackdaniel: Shinmera: ECL had green threads (and has in plan to introduce them back), they were removed in the past (before I took the maintainership) 2017-08-05T16:13:21Z Shinmera: Ah. What was the reasoning behind the removal? 2017-08-05T16:13:59Z jackdaniel: I think that they were removed when native threads were implemented 2017-08-05T16:14:37Z jackdaniel: probably Juan thought, that native threads are better than green threads, so there is no need for the latter 2017-08-05T16:15:03Z Shinmera: Or maybe the thought of them getting mixed and that causing difficult problems led to a hard switch 2017-08-05T16:15:12Z jackdaniel: I want to have both, so I can spawn n native thraeds (n = number of cpus), to whom green threads are distributed 2017-08-05T16:15:43Z shka_: that's though 2017-08-05T16:15:52Z jackdaniel: well, from my reading of the code, they could exist separately 2017-08-05T16:16:05Z jackdaniel: but there might be some reason I'm not aware of 2017-08-05T16:16:12Z shka_: jackdaniel: will you need inlined assembly for saving register state? 2017-08-05T16:16:19Z Shinmera: jackdaniel: So you want to reinvent the OS scheduler? :^) 2017-08-05T16:16:26Z Bike joined #lisp 2017-08-05T16:16:41Z jackdaniel: Shinmera: hm, green threads are more lightweight, I don't think it's the same 2017-08-05T16:16:49Z jackdaniel: shka_: I don't understand what you're saying 2017-08-05T16:17:26Z Shinmera: They're lightweight because there's no context switch necessary to switch threads. Once you start talking about distributing over threads... well. 2017-08-05T16:17:42Z shka_: well, since ecl compiles to C, you need to implement green threads for c 2017-08-05T16:18:04Z shka_: and that involves stuff like in Boost Fibers, for instance 2017-08-05T16:18:12Z shka_: Shinmera: not all OS are linux 2017-08-05T16:18:19Z jackdaniel: shka_: as I said, they were implemented, I plan to dig up the code and merge it back. I have no idea what it has to do with inlining assembly 2017-08-05T16:18:32Z Shinmera: shka_: I have no idea what that means in relation to any of what I said 2017-08-05T16:18:43Z shka_: Shinmera: on windows, threads are rather expensive 2017-08-05T16:18:48Z jackdaniel: Shinmera: each "native thread" would be independent core, no communication between these families 2017-08-05T16:18:52Z Shinmera: shka_: That's what I said? 2017-08-05T16:19:03Z jackdaniel: it's just a matter of picking "core" you want to distribute new green thread to 2017-08-05T16:19:07Z shka_: no, that's what i am saying 2017-08-05T16:19:09Z Shinmera: jackdaniel: So distribute green threads once only, ok. 2017-08-05T16:19:14Z jackdaniel: yes 2017-08-05T16:19:48Z shka_: jackdaniel: uh, basicly, during soft block, you may decide to let other green thread to run 2017-08-05T16:19:59Z shka_: so you have to save state of your running program 2017-08-05T16:20:00Z Shinmera: shka_: you're misunderstanding. What I was trying to say is that green threads are lightweight because you don't need to context switch. Once you distribute green threads over native threads you introduce synchronisation problems, thus increasing switch cost again. 2017-08-05T16:20:22Z shka_: this involves saving both stack and register states 2017-08-05T16:20:23Z Shinmera: Unless you just do a one-time scheduling which isn't that great. 2017-08-05T16:20:32Z jackdaniel: shka_: I don't have to inline assembly to use longjmp 2017-08-05T16:20:38Z shka_: sure 2017-08-05T16:20:55Z shka_: but how are you planning to restore state? 2017-08-05T16:21:03Z jackdaniel: longjmp? 2017-08-05T16:21:23Z shka_: CPU registers 2017-08-05T16:21:35Z jackdaniel: by "longjmp?" I mean - go read about longjmp 2017-08-05T16:21:45Z Shinmera: saving/restoring registers is what longjmp does. 2017-08-05T16:24:06Z shka_: longjmp does not allow you to jump to other stack 2017-08-05T16:25:36Z shka_: so i don't see how it can alone be used for green threads, without other hackery 2017-08-05T16:26:10Z jackdaniel advertises reading the manpage 2017-08-05T16:26:20Z jackdaniel: I'll be back later 2017-08-05T16:28:06Z eschatologist quit (Remote host closed the connection) 2017-08-05T16:33:10Z fkac joined #lisp 2017-08-05T16:33:46Z phoe: Is there a function that appends a list N times to itself? 2017-08-05T16:34:01Z Shinmera: (loop repeat n append list) 2017-08-05T16:34:12Z phoe: Now that's sweet. 2017-08-05T16:34:15Z phoe: Thanks! 2017-08-05T16:34:17Z shka_: (dotimes also 2017-08-05T16:38:29Z xuxuru quit (Quit: xuxuru) 2017-08-05T16:43:07Z ted_ joined #lisp 2017-08-05T16:43:20Z Bike quit (Ping timeout: 260 seconds) 2017-08-05T16:43:41Z AxelAlex joined #lisp 2017-08-05T16:43:56Z ted_ quit (Read error: Connection reset by peer) 2017-08-05T16:44:59Z shifty joined #lisp 2017-08-05T16:45:10Z phinxy quit (Ping timeout: 276 seconds) 2017-08-05T16:46:05Z flip214: my suggestions is to use plain pthreads for IO (so they just block on sockets, for example), and use a set of pthreads (lparallel!) for batch processing in the background 2017-08-05T16:46:24Z flip214: the latter just fetch jobs that get pushed to them. 2017-08-05T16:46:48Z flip214: and using pthreads for IO fixes all the priority, scheduling, and other stuff associated with that, by defering to the kernel. 2017-08-05T16:47:00Z knobo joined #lisp 2017-08-05T16:47:17Z WhiskyRyan joined #lisp 2017-08-05T16:47:29Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-05T16:47:33Z shka_: flip214: i really prefer do IO with green threads… 2017-08-05T16:47:51Z Shinmera: Well, sometimes writing your own scheduler is appropriate. But it's probably less often than people think. 2017-08-05T16:48:40Z shka_: yes 2017-08-05T16:49:05Z shka_: but when writing your own scheduler is appropriate is REALLY appropriate 2017-08-05T16:49:13Z flip214: shka_: believe me, reimplementing a (more or less) scheduler, possibly with IO priorities, and all the required guarantees isn't pretty. 2017-08-05T16:49:22Z flip214: good luck ;) 2017-08-05T16:49:27Z flip214: and have a nice weekend. 2017-08-05T16:49:41Z AxelAlex quit (Quit: AxelAlex) 2017-08-05T16:50:02Z shka_: flip214: sure, that's why i would do that only if have proper support from libs 2017-08-05T16:50:10Z shka_: and my implementation 2017-08-05T16:50:22Z shka_: i would never attempt to write anything like that on my own 2017-08-05T16:50:51Z shka_: well, perhaps not *never* 2017-08-05T16:51:05Z fmeyer joined #lisp 2017-08-05T16:51:56Z Bike joined #lisp 2017-08-05T16:52:14Z AxelAlex joined #lisp 2017-08-05T16:52:31Z shka_: i agree with lparallel though 2017-08-05T16:52:42Z shka_: it is truly awesome piece of software 2017-08-05T16:52:45Z AxelAlex quit (Remote host closed the connection) 2017-08-05T16:54:54Z Ven joined #lisp 2017-08-05T16:55:17Z Ven is now known as Guest18728 2017-08-05T16:56:42Z rumbler31 joined #lisp 2017-08-05T17:04:31Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T17:06:22Z damke_ joined #lisp 2017-08-05T17:09:02Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-05T17:10:19Z AxelAlex joined #lisp 2017-08-05T17:16:44Z madmalik quit (Quit: Connection closed for inactivity) 2017-08-05T17:18:05Z damke_ quit (Ping timeout: 268 seconds) 2017-08-05T17:19:30Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T17:20:05Z fmeyer quit (Ping timeout: 255 seconds) 2017-08-05T17:21:08Z Bike quit (Ping timeout: 260 seconds) 2017-08-05T17:25:47Z FreeBirdLjj joined #lisp 2017-08-05T17:31:02Z WhiskyRyan joined #lisp 2017-08-05T17:38:06Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-05T17:39:10Z knobo quit (Ping timeout: 240 seconds) 2017-08-05T17:42:27Z Posterdati quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-05T17:44:38Z juanrgar joined #lisp 2017-08-05T17:44:46Z kozy: why so complicate lisp's loop implementation is 2017-08-05T17:45:52Z Posterdati joined #lisp 2017-08-05T17:46:38Z random-nick: because loop has a lot of features 2017-08-05T17:47:43Z pjb: kozy: mostly historical. Loop wasn't so much designed as it evolved organically from previous implementations. 2017-08-05T17:48:01Z kozy: aha 2017-08-05T17:48:02Z pjb: kozy: for something that is probably better designed, have a look a the iterate macro. 2017-08-05T17:48:25Z pjb: kozy: also manifestly, loop is an experiment in parsing english inside a lisp sexp. 2017-08-05T17:48:54Z fkac quit (Remote host closed the connection) 2017-08-05T17:48:56Z pjb: When macros were invented in 1964, all kinds of experiments have been attempted. Some have sticked, others have not. 2017-08-05T17:49:48Z kozy: parsing english using lisp? seems ...awkward 2017-08-05T17:50:04Z pjb: not at all, there are whole books about NLP in lisp. 2017-08-05T17:51:10Z LooneyTunes joined #lisp 2017-08-05T17:53:09Z aeth: You can embed just about anything within Lisp. In addition to loop (built-in) and iterate (a library), other examples of very different ways to do things include format (also built-in), cl-ppcre, various SQL libraries, various HTML libraries, several GLSL (for OpenGL shader) libraries, etc. 2017-08-05T17:53:29Z kozy: https://items.sjbach.com/211/comparing-loop-and-iterate found good article 2017-08-05T17:53:31Z aeth: A lot of the embedded languages are just macros that produce strings that are then used by some external thing (such as HTML, CSS, SQL, GLSL) 2017-08-05T17:53:40Z aeth: But there's no reason to limit them to that 2017-08-05T17:54:40Z scymtym quit (Ping timeout: 240 seconds) 2017-08-05T17:56:04Z kozy: iterate source code is also complex too, although it is better than loop 2017-08-05T17:56:46Z aeth: There are also several brainfuck implementations, including my own, if you want an extreme, but useless example. 2017-08-05T17:57:16Z aeth: https://gitlab.com/mbabich/cl-brainfuck/blob/master/brainfuck.lisp 2017-08-05T17:58:44Z kozy: not yet.. I'm newbie and already fuc*ed! 2017-08-05T17:58:48Z aeth: It shows that there's basically no difference between handling strings, reader macros, or external source files. i.e. (brainfuck "+.") and #4f(+.) and a foo.bf file with just +. in it are just about the same amount of (trivial) work. 2017-08-05T17:59:12Z aeth: (Assuming you have something that works on character streams written that can be shared in common.) 2017-08-05T18:00:10Z aeth: i.e. if you can compile something to Lisp, you can also just embed it within a .lisp file 2017-08-05T18:01:42Z Posterdati quit (Remote host closed the connection) 2017-08-05T18:01:54Z random-nick: kozy: are you trying to learn macros by looking at existing ones? if that is the case I'd recommend beginning with something simpler than loop and iterate 2017-08-05T18:02:21Z aeth: Right, macros don't just become complex like that, they build from simple things into monsters, slowly over time. 2017-08-05T18:02:33Z kozy: random-nick: correct, I was trying to learn lisp macro by loop , but then i lost my mind 2017-08-05T18:03:57Z teggi quit (Quit: Leaving...) 2017-08-05T18:04:10Z Guest18728 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T18:04:18Z basket: kozy: you might want to start with when, dotimes, cond, do 2017-08-05T18:04:23Z fiddlerwoaroof: kozy: have you looked through PCL? 2017-08-05T18:04:57Z fiddlerwoaroof: PCL probably has a good introduction to macros and then, Paul Graham's On Lisp has a bunch of interesting macros of varying complexity 2017-08-05T18:05:04Z kozy: I will check thouse macro, and no i didn't look PCL, 2017-08-05T18:05:14Z fiddlerwoaroof: minion: tell kozy about PCL 2017-08-05T18:05:15Z minion: kozy: please look at PCL: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005). 2017-08-05T18:05:45Z whoman: how do we unwrap tuples into bound symbols conveniently and nicely? destructuring-bind ? 2017-08-05T18:05:45Z minion: whoman, memo from phoe: are you sure NIL can be used in DESTRUCTURING-BIND to mark a variable that is meant to be ignored? I'm almost sure this is against the specification. 2017-08-05T18:05:45Z minion: whoman, memo from phoe: sorry, I meant axion, not you. :P 2017-08-05T18:05:49Z Posterdati joined #lisp 2017-08-05T18:06:00Z random-nick: there is also Let Over Lambda which is about advanced macro techniques 2017-08-05T18:06:16Z aeth: The simplest complex macro I've written is probably this partial implementation of GLSL: https://gitlab.com/zombie-raptor/zombie-raptor/blob/b5639da6be400c1482545fe7a874bf3bd0b3db08/examples/shaders.lisp 2017-08-05T18:06:23Z aeth: The core of the implementation is this function: https://gitlab.com/zombie-raptor/zombie-raptor/blob/b5639da6be400c1482545fe7a874bf3bd0b3db08/data/shader.lisp#L139-163 2017-08-05T18:06:45Z fiddlerwoaroof: random-nick: I think I've heard that LoL does things that don't conform to the standard 2017-08-05T18:06:47Z aeth: Macros aren't that hard if you think of them as very trivial things that are built on functions that operate on lists. Then you have lots of functions you can test, and nothing's different until the end. 2017-08-05T18:07:15Z phoe: macros are trivial, actually 2017-08-05T18:07:18Z aeth: And macros don't even need to be fast because they're run in macro-expansion time, so they're kind of easier than writing normal functions, if the normal functions have to be fast. 2017-08-05T18:07:19Z phoe: they're just functions that make lists 2017-08-05T18:07:37Z fiddlerwoaroof: Yeah, they're just a function from one list to another 2017-08-05T18:07:53Z fiddlerwoaroof: That happens to be run before the code is executed 2017-08-05T18:07:59Z borei joined #lisp 2017-08-05T18:08:12Z phoe: and the lists that are output by macros accidentally happen to be valid Lisp code 2017-08-05T18:08:19Z phoe: that can be then compiled 2017-08-05T18:08:23Z phoe: and that's exactly what the compiler does. 2017-08-05T18:08:25Z fiddlerwoaroof: And they don't actually have to output lists... 2017-08-05T18:08:41Z phoe: well, correct. it's just that most of the time, they do. 2017-08-05T18:08:51Z phoe: but again, a macro function can output anything, that's correct. 2017-08-05T18:09:05Z aeth: My macro turns s-expressions into literal GLSL strings in the FASL (compiled) file so there's (afaik) no runtime performance penalty over just putting in the literal GLSL strings, and it's faster than loading .glsl files at runtime. 2017-08-05T18:09:54Z aeth: I do this because I was making stupid typos in GLSL because my brain couldn't rapidly switch between thinking in infix and thinking in prefix. 2017-08-05T18:10:19Z shka_: heh 2017-08-05T18:10:47Z shka_: isnt that what baggy is doing? 2017-08-05T18:10:49Z aeth: There are afaik at least 3 other Lisp->GLSL attempts, probably of very different approaches. 2017-08-05T18:11:06Z basket: phoe: Wow, I think you're right about nil in destructuring-bind. I had no idea that wasn't standard 2017-08-05T18:11:23Z basket: It's in CLTL2 but I don't see anything about it in the standard 2017-08-05T18:11:34Z aeth: My approach, though, is to just implement the part of GLSL I happen to need at the moment in my engine, though, and to make it basically just GLSL with Scheme syntax, rather than trying a fancier Lisp->GLSL where you use the exact same syntax. 2017-08-05T18:11:48Z AxelAlex quit (Quit: AxelAlex) 2017-08-05T18:11:50Z dddddd quit (Remote host closed the connection) 2017-08-05T18:11:58Z aeth: I say Scheme, not CL, because it's easier to have a "define" than emulate a lisp-2 2017-08-05T18:12:16Z fiddlerwoaroof: aeth: I wonder if you can go farther and embed the compiled glsl code in the fasl 2017-08-05T18:12:16Z phoe: basket: I'd say that DECLARE IGNORE is the common way to ignore vars 2017-08-05T18:12:26Z aeth: fiddlerwoaroof: not portably, it depends on the driver. 2017-08-05T18:12:35Z aeth: fiddlerwoaroof: I could probably embed SPIR-V in the FASL, though. 2017-08-05T18:12:44Z phoe: and anything other than that might be simply not readable enough. 2017-08-05T18:12:54Z phoe: But then again, "readability" is very relative. 2017-08-05T18:12:57Z aeth: And I will probably embed compiled SPIR-V in the FASL if I switch to Vulkan or if most drivers support SPIR-V in OpenGL. 2017-08-05T18:13:01Z basket: phoe: But then you have to use ugly _1 _2 names when you bind them in the first place :p 2017-08-05T18:13:20Z fiddlerwoaroof: I use _ __ ___ 2017-08-05T18:13:35Z phoe: basket: why? I don't use them 2017-08-05T18:13:48Z fiddlerwoaroof: Of course, you could always write a macro that replaces _ with a gensym and ignores it... 2017-08-05T18:14:04Z phoe: when I have list consisting of a foo, a bar, a baz and a quux, I go (destructuring-bind (foo bar baz quux) ...) 2017-08-05T18:14:21Z phoe: and if I don't need foo and quux, (destructuring-bind (foo bar baz quux) (declare (ignore foo quux)) ...) 2017-08-05T18:14:33Z fiddlerwoaroof: I find it a bit annoying to right out meaningful names for the parts of a structure I'm not interested in 2017-08-05T18:14:33Z phoe: I find it much better to have meaningful variable names *even* when I don't use them 2017-08-05T18:14:38Z fiddlerwoaroof: s/right/write/ 2017-08-05T18:14:45Z phoe: ha! conflicting point of views! 2017-08-05T18:15:02Z phoe: ...points of view 2017-08-05T18:15:15Z basket: Yeah, I find meaningful names for the things I don't care about distracting, personally 2017-08-05T18:15:17Z phoe English sometimes does funny things like that 2017-08-05T18:15:35Z aeth: I use x, y, and z if something is so general that those are the most meaningful variable names. Those actually do carry meaning to them, and most people are familiar with at least basic algebra. 2017-08-05T18:15:59Z shka_: well, it is not difficult to write macro that can solve this problem with destruct 2017-08-05T18:16:46Z fiddlerwoaroof: Does optima have a "ignore this part" feature? 2017-08-05T18:17:16Z shka_: bind to free variable 2017-08-05T18:17:17Z phoe: I think it does - it uses _ 2017-08-05T18:17:27Z shka_: _ is just free variable 2017-08-05T18:17:32Z fiddlerwoaroof: I've never bothered to learn optima, but I've always thought of it as something I should know if I ever feel like I need a lot of pattern matching 2017-08-05T18:17:46Z shka_: you can put i-dont-care and it should work 2017-08-05T18:17:58Z shka_: optima is quite cool 2017-08-05T18:18:36Z shka_: and not hard to learn 2017-08-05T18:18:48Z shka_: just one evening and you can use it 2017-08-05T18:22:33Z bigos joined #lisp 2017-08-05T18:22:39Z basket: Optima treats '_' and 'otherwise' specially, they match anything but don't bind a variable. (match 1 (_ _)) gives me an unbound variable error and (match 1 (i-dont-care 2)) gives me an unused variable warning 2017-08-05T18:23:17Z bigos quit (Client Quit) 2017-08-05T18:30:16Z Bike joined #lisp 2017-08-05T18:34:45Z neoncontrails joined #lisp 2017-08-05T18:53:13Z shka_: oh 2017-08-05T18:53:17Z shka_: ok 2017-08-05T18:54:34Z JuanDaugherty joined #lisp 2017-08-05T18:56:54Z juanrgar quit (Quit: Leaving) 2017-08-05T19:04:07Z ryanbw_ joined #lisp 2017-08-05T19:04:13Z ryanbw_ quit (Client Quit) 2017-08-05T19:04:29Z Ven joined #lisp 2017-08-05T19:05:08Z Ven is now known as Guest52379 2017-08-05T19:07:21Z dendisuhubdy joined #lisp 2017-08-05T19:18:10Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T19:18:51Z logicmoo joined #lisp 2017-08-05T19:19:30Z dmiles quit (Read error: Connection reset by peer) 2017-08-05T19:20:33Z BlueRavenGT joined #lisp 2017-08-05T19:22:50Z MrBusiness quit (Ping timeout: 240 seconds) 2017-08-05T19:27:03Z fiddlerwoaroof: I read a bit of Genera's documentation about logical pathnames and, I'm starting to think that they sound like a really good idea 2017-08-05T19:28:03Z fiddlerwoaroof: The basic idea is that you define all your paths in of a logical pathname host and then the user of your application can specify a translation of that host to a specific place on the filesystem 2017-08-05T19:29:26Z fiddlerwoaroof: I'm starting to wonder if all the pain I've had dealing with inter-implementation pathname handling result from the fact that common lisp is sort of designed with the expectation that you will normally use logical pathnames for locating resources. 2017-08-05T19:32:57Z dendisuhubdy quit 2017-08-05T19:40:58Z aeth: Tangentially related, but I think just about every good idea before 1997 or so that died out to something worse was probably because of just how underpowered computers were back then... i.e. the choice with the most performance usually won. 2017-08-05T19:41:13Z phoe: well, we have more performance now than we can grasp 2017-08-05T19:42:03Z Jesin quit (Quit: Leaving) 2017-08-05T19:42:14Z pjb: fiddlerwoaroof: it would be better if physical pathnames (and the translation from logical pathname to physical pathname) were implemented the same in all the implementations running on the same platform (ie. unix). Nonetheless, there are still other file systems and kinds of physical pathnames (eg. MS-DOS, MS-Windows, MacOS (there are still applications using the MacOS path syntax on MacOSX!), and obviously, various kinds of URL 2017-08-05T19:42:14Z pjb: (eg. in ABCL)). 2017-08-05T19:42:27Z aeth: phoe: We simultaneously have so much performance that it would take a lot of effort to use it all... and we can add on so much bloat and abstraction to use up all of our resources anyway (e.g. bundling a whole Chromium web browser with each desktop application via Electrum). 2017-08-05T19:42:37Z pjb: so in all cases, you still need this dichotomy between logical pathnames and physical pathnames. 2017-08-05T19:43:30Z aeth: s/use it all/use it all well/ 2017-08-05T19:44:56Z fkac joined #lisp 2017-08-05T19:46:05Z shifty quit (Ping timeout: 268 seconds) 2017-08-05T19:46:16Z Jesin joined #lisp 2017-08-05T19:48:05Z aeth: Things that used to be very heavyweight aren't, though. Pretty much the only way to be bloated is a web browser or an emulator or virtualization, or maybe a very heavy game engine used poorly. 2017-08-05T19:49:14Z phoe: or 10 apps stuffed into 10 web browsers ran at once 2017-08-05T19:49:21Z fiddlerwoaroof: Virtualization is interesting because, although x86 only got near-native virtualization speeds recently, IBM (and others, I think) have been making CPUs with such features for a long time 2017-08-05T19:49:26Z aeth: Well, yes, I mean a web browser per app 2017-08-05T19:49:49Z aeth: Just wait until things start running with an entire virtualized OS per app, though. There probably are already some. 2017-08-05T19:50:25Z fiddlerwoaroof: There are unikernels... but those mostly revolve around the notion of treating device drivers as libraries 2017-08-05T19:50:26Z aeth: Basically the point of nanokernels, except in practice it'll just be a full Linux kernel instead of a lightweight kernel. 2017-08-05T19:50:45Z phoe: aeth: d'oh, docker containers 2017-08-05T19:51:01Z fiddlerwoaroof: docker and containers are sort of "an entire virtualized OS per app" although, they generally involve fancy namespacing in the host kernel 2017-08-05T19:51:26Z fiddlerwoaroof: So, you're really multiplexing the host rather than using a "real vm" 2017-08-05T19:52:37Z aeth: I think the real use for a LispOS would be running virtualized/sandboxed Lisp applications in a lightweight way, only really providing what the Lisp app needs. 2017-08-05T19:52:51Z mishoo_ joined #lisp 2017-08-05T19:52:57Z aeth: Or, at least, that'd be much easier than providing drivers for literally everything ever, which is the real hard problem for kernels. 2017-08-05T19:53:03Z fiddlerwoaroof: Most lisp implementations are essentially an os 2017-08-05T19:53:26Z fiddlerwoaroof: You could probably build sbcl as a NetBSD rumpkernel and boot it directly. 2017-08-05T19:53:30Z ryanwatkins joined #lisp 2017-08-05T19:54:10Z eazar001 joined #lisp 2017-08-05T19:55:00Z aeth: You probably can't write most meaningfully large Lisp applications in pure Lisp without any CFFI... especially if that application is graphical. 2017-08-05T19:55:43Z aeth: I think popular networking libraries tend to use CFFI, too. 2017-08-05T19:55:49Z fiddlerwoaroof: You probably could 2017-08-05T19:56:08Z fiddlerwoaroof: Isn't there a standard assembly way to invoke os services? syscalls or the like? 2017-08-05T19:56:21Z phoe: syscalls 2017-08-05T19:56:41Z Posterdati quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-05T19:56:42Z fiddlerwoaroof: On linux, at least, you could use the implementation's assembler to do all the low-level work and build up from there 2017-08-05T19:56:43Z phoe: or using library functions provided by the OS's shared libs 2017-08-05T19:56:55Z aeth: In Linux, yes, you can invoke it via assembly because the syscall is the real constant interface. In Windows, the syscalls aren't constant, and you're expected to use a DLL as the constant interface. I think MacOS X is like the latter, because I think Go broke by depending on syscalls. 2017-08-05T19:56:58Z marvin2 joined #lisp 2017-08-05T19:57:41Z aeth: https://en.wikipedia.org/wiki/Native_API 2017-08-05T19:57:46Z Posterdati joined #lisp 2017-08-05T19:57:54Z Shinmera: It's also just not useful to have a purist attitude if you actually ever expect to get anything done. 2017-08-05T19:58:04Z fiddlerwoaroof: That's true enough 2017-08-05T19:58:39Z Shinmera: You know, the whole worse is better debate. 2017-08-05T19:59:50Z aeth: btw, I love how the Windows NT DLL is called NDLL.DLL 2017-08-05T19:59:56Z aeth: *NTDLL.DLL 2017-08-05T20:03:18Z phoe: I have a question that's more about general programming than Lisp. What are the general ways of programming with an external database like PostgreSQL? Reading the query, constructing (Lisp) object(s) from the query's data, manipulating the objects, turning the objects into SQL, executing a query to write it to the DB? 2017-08-05T20:03:58Z fiddlerwoaroof: That's essentially how database access works in any language 2017-08-05T20:04:23Z phoe: I'm asking because I'm about to do this for the first time in my life. 2017-08-05T20:04:28Z fiddlerwoaroof: If you design your tables correctly, the rows should be a function of one or two columns 2017-08-05T20:04:57Z fiddlerwoaroof: Then, you can put database access behind a function that takes those columns as an argument 2017-08-05T20:05:04Z fiddlerwoaroof: s/an argument/arguments/ 2017-08-05T20:05:22Z aeth: Constructing objects, depending on what you mean, might be a mistake. https://en.wikipedia.org/wiki/Object-relational_impedance_mismatch 2017-08-05T20:05:42Z fiddlerwoaroof: Anyways, if you're using a relational database, you should be familiar with what normalizing data means 2017-08-05T20:06:18Z fiddlerwoaroof: aeth: yeah, that's a real issue 2017-08-05T20:07:03Z Shinmera: phoe: What I do is I have a simple wrapper that represents a "record," basically a single database row. I then have a general query function that returns the data as those record objects. The record object then has operations that allow me to show and modify each column/field, and operations to update/delete/reinsert. 2017-08-05T20:07:07Z pierpa joined #lisp 2017-08-05T20:07:28Z fiddlerwoaroof: Postmodern provides something like that as a metaclass 2017-08-05T20:07:44Z fiddlerwoaroof: If you're using postgresql... it's a good starting point 2017-08-05T20:07:54Z Shinmera: phoe: Then I add ENSURE-X functions to allow me to coerce primary key / id to a fitting record for each table. 2017-08-05T20:07:55Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2017-08-05T20:08:17Z Shinmera: phoe: Finally I add objects that manage the access over multiple tables if the data has to be distributed. 2017-08-05T20:08:48Z phoe: fiddlerwoaroof: I'm using postmodern, yes. 2017-08-05T20:08:51Z phoe: Shinmera: I see. 2017-08-05T20:09:08Z Shinmera: The record wrapper I use is here: https://github.com/Shirakumo/radiance-contribs/blob/master/r-data-model/model.lisp 2017-08-05T20:09:24Z hylisper quit (Quit: leaving) 2017-08-05T20:09:25Z Shinmera: It's coded against radiance's generic database interface, but adapting it to work with postmodern directly shouldn't be hard. 2017-08-05T20:09:37Z fiddlerwoaroof: phoe: my preferred way to think of the database is as a remote application with an API 2017-08-05T20:10:11Z fiddlerwoaroof: So, just like with a rest api, you design a client library that calls into the database for data manipulation 2017-08-05T20:10:17Z Shinmera: Also note that depending on the complexity of your objects and data structures an RDBMS might not be the best fit after all. 2017-08-05T20:10:28Z Shinmera: Things like CouchDB can be a fitting solution. 2017-08-05T20:10:54Z phoe: fiddlerwoaroof: I see. 2017-08-05T20:11:05Z phoe: Shinmera: this code reads like Klingon to me, and I don't know Klingon at all. 2017-08-05T20:11:10Z fiddlerwoaroof: Postgresql has "NoSQL" features that I tend to trust more than the various trendy recent databases 2017-08-05T20:11:18Z phoe: I need more theory to understand this. 2017-08-05T20:11:34Z Shinmera: phoe: What's so complicated about it? 2017-08-05T20:12:28Z xantoz: sometimes the best database is just a csv file (or a text file with s-exp:s)... 2017-08-05T20:13:00Z fiddlerwoaroof: I tend to like dumping data as directories of json files 2017-08-05T20:13:02Z Shinmera: Sure. cl-store, ubiquitous, etc. have their points too. 2017-08-05T20:13:07Z aeth: Imo, you should design a database-using application around the database, not a database around an application like a lot of NoSQL does. i.e. Think of the application like a client to the database, and you should be able to write a new client from scratch if you wanted to (but don't actually do this). 2017-08-05T20:14:18Z aeth: A SQL database is probably the right fit for 90% of problems. 2017-08-05T20:14:30Z phoe: Shinmera: what's a model, why the compiler macros, what's a collection, what the with-model* macros do and how they're different. 2017-08-05T20:14:32Z aeth: (And PostgreSQL might be able to do another 5%) 2017-08-05T20:14:37Z phoe: I'm just stupid in this area and need more knowledge. 2017-08-05T20:15:38Z Shinmera: phoe: a model in this context is what I called a "record" earlier. It's just a name for the thingy. 2017-08-05T20:16:02Z Shinmera: phoe: The compiler macros are to avoid having to downcase the field name at runtime, as in Radiance fields are always lowercase. 2017-08-05T20:16:44Z Shinmera: phoe: and the with-* macros allow you to work with models more conveniently, similar to with-slots, etc. 2017-08-05T20:17:21Z aeth: Pretty much every bug I've encountered as an end user on a website or app in the last 5+ years is probably due to NoSQL abandoning ACID for applications that really should be using SQL. i.e. some sort of corrupted state. If you want ACID on your data, use SQL. https://en.wikipedia.org/wiki/ACID 2017-08-05T20:18:15Z aeth: (If it's e.g. a game, it probably doesn't matter except for things like account information.) 2017-08-05T20:18:15Z Shinmera: NoSQL doesn't necessarily mean no coherence. 2017-08-05T20:19:03Z aeth: Well, yes, NoSQL just means not using SQL. But they do tend to prefer scaling to Google or Facebook levels over ACID. 2017-08-05T20:20:04Z aeth: It looks like CouchDB is one of the few that claims support, though. https://en.wikipedia.org/wiki/NoSQL#ACID_and_join_support 2017-08-05T20:20:43Z Shinmera: basically this https://filebox.tymoon.eu//file/TVRNNU5nPT0= 2017-08-05T20:21:31Z fiddlerwoaroof: Shinmera: CAP isn't ACID 2017-08-05T20:21:43Z aeth: But the right solution if SQL isn't 100% of the solution is probably to still put some things in SQL, like (as I said) account information, and just use multiple DBs for their strengths. 2017-08-05T20:21:43Z fiddlerwoaroof: that is, the "Consistency" in both is different 2017-08-05T20:21:43Z Shinmera: I know it's not 2017-08-05T20:21:56Z Guest52379 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T20:23:13Z phoe: https://github.com/phoe/gateway/blob/cdf6e814495445ed5442872013b36bd2cd113081/old/full.sql <- that's the outline for my database schema. 2017-08-05T20:23:51Z phoe: Some of these (timeline, chapter, player, persona, post) are "objects"; the rest are many-to-many link tables. 2017-08-05T20:25:21Z aeth: I'm not sure there's a situation where I wouldn't want to put things like account information in a SQL database. Perhaps if I was operating at the scale of Google. So imo the dilemma is SQL vs. multiple DBs, not SQL vs. noSQL. 2017-08-05T20:28:03Z Ven joined #lisp 2017-08-05T20:28:26Z Ven is now known as Guest75975 2017-08-05T20:31:16Z aeth: phoe: #sql or #postgresql is probably the proper channel for that because they'd have the most experience answering your SQL questions (even if you wind up writing the final thing in S-SQL or something similarly Lispy) 2017-08-05T20:31:53Z aeth: The only SQL-using projects I wrote never took off or turned into anything, so I personally probably shouldn't help with specifics. 2017-08-05T20:32:22Z fiddlerwoaroof: The important thing with RDMBS is to do the schema well 2017-08-05T20:32:38Z fiddlerwoaroof: Once you start collecting data, schema changes become harder and harder 2017-08-05T20:33:16Z mishoo_ quit (Ping timeout: 255 seconds) 2017-08-05T20:33:32Z aeth: Right, and #postgresql probably is the channel that best knows schema design. 2017-08-05T20:33:38Z aeth: (For PostgreSQL, at least) 2017-08-05T20:35:15Z mishoo_ joined #lisp 2017-08-05T20:38:21Z MrBusiness joined #lisp 2017-08-05T20:40:41Z Urist quit (Quit: leaving) 2017-08-05T20:41:18Z angavrilov quit (Remote host closed the connection) 2017-08-05T20:41:57Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-05T20:43:38Z rumbler31 quit (Remote host closed the connection) 2017-08-05T20:43:59Z MrWoohoo joined #lisp 2017-08-05T20:51:40Z shka_ quit (Ping timeout: 240 seconds) 2017-08-05T21:01:49Z varjag quit (Read error: Connection reset by peer) 2017-08-05T21:07:45Z ACE_Recliner joined #lisp 2017-08-05T21:11:46Z ACE_Recliner quit (Remote host closed the connection) 2017-08-05T21:16:18Z shka_ joined #lisp 2017-08-05T21:20:17Z varjag joined #lisp 2017-08-05T21:26:30Z safe joined #lisp 2017-08-05T21:31:07Z WhiskyRyan joined #lisp 2017-08-05T21:33:03Z Guest75975 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T21:44:10Z rumbler31 joined #lisp 2017-08-05T21:44:40Z shka_ quit (Ping timeout: 240 seconds) 2017-08-05T21:47:38Z d33pb00k-GK1wmSU joined #lisp 2017-08-05T21:47:57Z d33pb00k-GK1wmSU left #lisp 2017-08-05T21:50:02Z rumbler31 quit (Ping timeout: 268 seconds) 2017-08-05T22:04:30Z warweasle joined #lisp 2017-08-05T22:13:28Z serviteur quit (Remote host closed the connection) 2017-08-05T22:17:10Z varjag quit (Ping timeout: 240 seconds) 2017-08-05T22:17:54Z warweasle quit (Quit: Leaving) 2017-08-05T22:33:29Z varjag joined #lisp 2017-08-05T22:36:16Z attila_lendvai joined #lisp 2017-08-05T22:36:16Z attila_lendvai quit (Changing host) 2017-08-05T22:36:16Z attila_lendvai joined #lisp 2017-08-05T22:38:00Z varjag quit (Ping timeout: 260 seconds) 2017-08-05T22:38:56Z random-nick quit (Remote host closed the connection) 2017-08-05T22:42:37Z krasnal joined #lisp 2017-08-05T22:46:54Z rumbler31 joined #lisp 2017-08-05T22:47:06Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T22:51:05Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-05T22:51:08Z jamtho joined #lisp 2017-08-05T22:52:55Z diegs_ joined #lisp 2017-08-05T22:59:54Z WhiskyRyan joined #lisp 2017-08-05T23:04:29Z karswell_ joined #lisp 2017-08-05T23:05:15Z karswell quit (Read error: Connection reset by peer) 2017-08-05T23:11:42Z brendos joined #lisp 2017-08-05T23:17:40Z diegs_ quit (Ping timeout: 240 seconds) 2017-08-05T23:23:12Z phoe: I have a question regarding symbol macros. 2017-08-05T23:24:31Z phoe: I want to connect to a database. I want the value of *db-connection* to hold this connection. Is it okay from a Lisp point of view to define a symbol macro there that checks if such a connection was initiated; if yes, returns it; if not, initiates it, saves it somewhere and returns it? 2017-08-05T23:24:50Z phoe: Or should I rather have explicit initiation for that? 2017-08-05T23:25:47Z fe[nl]ix: do it explicitly 2017-08-05T23:27:53Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-05T23:28:35Z phoe: Okay. 2017-08-05T23:31:52Z slyrus quit (Remote host closed the connection) 2017-08-05T23:41:10Z eazar001 quit (Ping timeout: 240 seconds) 2017-08-05T23:45:54Z basket quit (Remote host closed the connection) 2017-08-05T23:47:34Z rumbler31 joined #lisp 2017-08-05T23:50:29Z WhiskyRyan joined #lisp 2017-08-05T23:51:23Z krasnal quit (Remote host closed the connection) 2017-08-05T23:52:47Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-06T00:00:02Z kozy quit (Remote host closed the connection) 2017-08-06T00:00:23Z kozy joined #lisp 2017-08-06T00:10:05Z jamtho quit (Ping timeout: 240 seconds) 2017-08-06T00:13:16Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-06T00:14:13Z pierpa quit (Quit: Page closed) 2017-08-06T00:17:56Z ryanwatkins quit (Remote host closed the connection) 2017-08-06T00:18:11Z davide891 joined #lisp 2017-08-06T00:18:20Z davide891: hello everyone 2017-08-06T00:18:46Z phoe: hey davide891 2017-08-06T00:20:02Z davide891 quit (Client Quit) 2017-08-06T00:20:54Z fkac quit (Remote host closed the connection) 2017-08-06T00:21:57Z smokeink joined #lisp 2017-08-06T00:21:57Z smokeink quit (Client Quit) 2017-08-06T00:23:36Z attila_lendvai quit (Quit: Leaving.) 2017-08-06T00:29:54Z phoe: How can I create a relative pathname in Lisp? 2017-08-06T00:30:04Z phoe: I want to make a pathname that I can then merge with (user-homedir-pathname). 2017-08-06T00:30:19Z pyx joined #lisp 2017-08-06T00:30:56Z Xach: phoe: (make-pathname :directory (list :relative "foo" "bar")) 2017-08-06T00:31:02Z pyx quit (Client Quit) 2017-08-06T00:32:02Z phoe: Xach: oh. Thanks! I was trying of something similar, but messed up the command before. 2017-08-06T00:35:24Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T00:37:42Z WhiskyRyan joined #lisp 2017-08-06T00:44:13Z strelox quit (Remote host closed the connection) 2017-08-06T00:45:49Z ebzzry_ joined #lisp 2017-08-06T00:45:57Z gigetoo quit (Ping timeout: 240 seconds) 2017-08-06T00:48:34Z gigetoo joined #lisp 2017-08-06T00:49:04Z rumbler31 joined #lisp 2017-08-06T00:50:40Z tkhoa2711 joined #lisp 2017-08-06T00:53:53Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-06T00:56:36Z tkhoa2711 quit (Quit: tkhoa2711) 2017-08-06T00:58:40Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T01:03:58Z diegs_ joined #lisp 2017-08-06T01:14:18Z phoe: Can I define local symbol-macros on keywords? 2017-08-06T01:14:29Z phoe: Or is it foreboden as they are required to always evaluate to themselves? 2017-08-06T01:23:04Z Bike: they're constants, so no 2017-08-06T01:24:09Z Bike: as in no, you cannot 2017-08-06T01:29:42Z warweasle joined #lisp 2017-08-06T01:36:27Z anticrisis joined #lisp 2017-08-06T01:44:11Z safe quit (Read error: Connection reset by peer) 2017-08-06T01:44:24Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-06T01:45:30Z anticrisis joined #lisp 2017-08-06T01:50:31Z aeth: phoe: I *think* you might be able to use a reader macro on : to check a hash-table and if present override the keyword with some value and if not just return the keyword itself. 2017-08-06T01:50:57Z rumbler31 joined #lisp 2017-08-06T01:52:08Z diegs_ quit (Ping timeout: 260 seconds) 2017-08-06T01:54:37Z neoncontrails quit (Remote host closed the connection) 2017-08-06T01:55:14Z neoncontrails joined #lisp 2017-08-06T01:55:40Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-06T01:58:53Z FakePedro quit (Ping timeout: 258 seconds) 2017-08-06T01:59:27Z neoncontrails quit (Ping timeout: 240 seconds) 2017-08-06T02:00:30Z safe joined #lisp 2017-08-06T02:01:54Z shifty joined #lisp 2017-08-06T02:03:05Z quazimodo joined #lisp 2017-08-06T02:04:17Z slyrus joined #lisp 2017-08-06T02:09:52Z shifty quit (Ping timeout: 260 seconds) 2017-08-06T02:13:08Z axion: Which version do you prefer and why? http://paste.lisp.org/display/352677 2017-08-06T02:13:35Z axion: it doubly sorts a list of lists in a particular fashion 2017-08-06T02:13:37Z phoe: the flet one 2017-08-06T02:14:21Z phoe: it is much more readable and I can grasp what a single call of the function does, and why you call it twice with a different argument 2017-08-06T02:14:25Z fiddlerwoaroof: axion: I think you want stable-sort, right? 2017-08-06T02:15:07Z fiddlerwoaroof: Otherwise, there's no guarantee that the second sort doesn't break the first one for equivalent elements 2017-08-06T02:15:32Z axion: Hmm 2017-08-06T02:17:01Z kobain joined #lisp 2017-08-06T02:19:06Z whoman: i see repetition in the first one which is why i came to lisp in the first place 2017-08-06T02:19:11Z whoman: [to avoid] 2017-08-06T02:20:18Z whoman: 49 chars where 2 of them change ({in,ax}) 2017-08-06T02:20:18Z axion: Yeah, I'm rewriting someone else's code, and the second version is mine. Not sure if I like it / it can be better 2017-08-06T02:20:43Z whoman: disassemble them and have another look =) 2017-08-06T02:21:02Z axion: profiling suggests no difference. did not try to view the disassembly yet 2017-08-06T02:21:40Z axion: first version is almost half as small 2017-08-06T02:24:29Z whoman: there must be a form/list counter or inspector for complexity as well 2017-08-06T02:24:41Z whoman: for depth and whatnot. a little kind of report about a form 2017-08-06T02:25:52Z FakePedro joined #lisp 2017-08-06T02:26:57Z whoman: why does common lisp have special pathname type ? 2017-08-06T02:27:18Z axion: Every object is a type 2017-08-06T02:28:56Z phoe: no, it's not 2017-08-06T02:29:03Z phoe: 1 is not a type 2017-08-06T02:29:41Z axion: Every atom is not an object 2017-08-06T02:29:54Z phoe: that's untrue 2017-08-06T02:30:01Z phoe: 1 is an object 2017-08-06T02:30:59Z axion: 1 has a type for me 2017-08-06T02:31:02Z axion: and a class 2017-08-06T02:31:06Z phoe: oh, it has a type and a class 2017-08-06T02:31:10Z FakePedro quit (Ping timeout: 240 seconds) 2017-08-06T02:31:11Z phoe: but *is* not a class 2017-08-06T02:31:18Z phoe: nor a type 2017-08-06T02:31:21Z shifty joined #lisp 2017-08-06T02:31:23Z whoman: i should have asked, why is it not a string? =) 2017-08-06T02:31:27Z nullniverse joined #lisp 2017-08-06T02:31:40Z phoe: whoman: pathnames can be more complex than strings and that was the intent of the authors of the pathname system 2017-08-06T02:31:46Z axion: every type does not have a class, but every class has a type of the same name 2017-08-06T02:31:55Z phoe: correct 2017-08-06T02:32:24Z whoman: i am accustomed to working with pathnames as strings 2017-08-06T02:32:25Z axion: whoman: also pathnames are designed to be portable across platforms 2017-08-06T02:32:30Z axion: but they aren't very :/ 2017-08-06T02:32:38Z axion: that's what cl-fad and uiop attempt to solve 2017-08-06T02:33:12Z nullniverse quit (Remote host closed the connection) 2017-08-06T02:33:23Z phoe: modern CL pathnames are pretty often just reduced to Unix/Windows paths, which are strings 2017-08-06T02:33:40Z nullniverse joined #lisp 2017-08-06T02:33:41Z phoe: but the system beneath them is actually much more complex. 2017-08-06T02:33:43Z phoe: and troublesome. 2017-08-06T02:33:48Z phoe drops asleep 2017-08-06T02:33:50Z fkac joined #lisp 2017-08-06T02:33:55Z whoman: hmm, interesting 2017-08-06T02:34:40Z warweasle quit (Read error: Connection reset by peer) 2017-08-06T02:34:59Z warweasle joined #lisp 2017-08-06T02:35:41Z nullniverse quit (Remote host closed the connection) 2017-08-06T02:36:11Z nullniverse joined #lisp 2017-08-06T02:43:15Z fkac quit (Remote host closed the connection) 2017-08-06T02:43:46Z fkac joined #lisp 2017-08-06T02:44:36Z eazar001 joined #lisp 2017-08-06T02:46:29Z beach: Good morning everyone! 2017-08-06T02:46:54Z whoman: phoe, minion, ahh =) 2017-08-06T02:46:54Z warweasle quit (Quit: Leaving) 2017-08-06T02:47:03Z whoman: morning ! 2017-08-06T02:47:04Z eazar001 quit (Client Quit) 2017-08-06T02:49:01Z defaultxr joined #lisp 2017-08-06T02:52:39Z rumbler31 joined #lisp 2017-08-06T02:52:55Z whoman: are multiple return values heavy or expensive, if i decide to use them for tuples in vector maths? 2017-08-06T02:53:11Z beach: No. 2017-08-06T02:53:23Z whoman: ok ty 2017-08-06T02:53:38Z beach: ywlcm 2017-08-06T02:55:04Z beach: If you have a good Common Lisp system with a good compiler, it will use multiple registers to return multiple values, up to a certain point. This is as fast as you will get. 2017-08-06T02:56:14Z whoman: awesome,. looking at the related functions here. very encouraging that CL does not appear to "make new allocations" for multiple returns, as most other langs need to do for tuples or just to hold the ephemerall multiplicity of them 2017-08-06T02:56:16Z whoman: -l 2017-08-06T02:57:37Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-06T02:57:49Z loke: beach: Well, there is one aspect of MV's that could make them seem "slow". You need some way of indicating the numbe rof return values. 2017-08-06T02:58:23Z loke: In SBCL, the carry flag is set to indicate that there are multiple return values, which means that every return from a function needs to do a CLC before the RET. 2017-08-06T02:58:38Z loke: (well, almost all) 2017-08-06T02:58:41Z beach: I figured we would have a debate about this. 2017-08-06T02:58:47Z beach: Welcome to #lisp. 2017-08-06T02:59:22Z loke: beach: It's not a debate. It's fact. Sure, one could debate if there is a better way to deal with it, but I'm not sure there is. At least not while still comforming to the spec. 2017-08-06T03:00:11Z loke: beach: Or, it could be that I'm wrong, and there are some controversional aspects to this? 2017-08-06T03:02:11Z Bike: i don't think clearing a flag is really enough to be "heavy" 2017-08-06T03:04:18Z drmeister: How does one convert a plist into an alist with LOOP? 2017-08-06T03:04:39Z Bike: (loop for (key value) on plist by #'cddr collect (cons key value)) 2017-08-06T03:05:15Z drmeister: Whoah - really? Neat 2017-08-06T03:06:11Z drmeister: Bike: Could I get a little primer on how to use loop more effectively. I've got a few patterns - but I'd like to get better at it. 2017-08-06T03:06:15Z drmeister: Later 2017-08-06T03:06:47Z whoman: source code. C-c C-d C-d 2017-08-06T03:07:15Z drmeister: Not connected. 2017-08-06T03:07:28Z pjb quit (Ping timeout: 240 seconds) 2017-08-06T03:07:31Z drmeister: But I'm using slime in a kind of a weird way. 2017-08-06T03:07:50Z drmeister: I'm connecting in to a CL running in a Docker image 2017-08-06T03:08:03Z loke: Bike: I see. ANd I agree. 2017-08-06T03:08:12Z drmeister: Oh wait - I'm not connected. (sigh) 2017-08-06T03:08:20Z whoman: o_o connected or not? 2017-08-06T03:08:27Z loke: Bike: I don't think I suggested that it's "heavy". I merely wanted to suggest it's not "free". 2017-08-06T03:08:57Z Bike: i am going off context 2017-08-06T03:09:56Z loke: drmeister: Someone should write a book on LOOP (or at least a pamphlet) 2017-08-06T03:11:00Z drmeister: The'd make tens of dollars. 2017-08-06T03:11:03Z drmeister: They'd 2017-08-06T03:11:16Z loke: drmeister: :-) 2017-08-06T03:11:41Z loke: To be honest, PCL's chapter on LOOP gives a good introduction: http://www.gigamonkeys.com/book/loop-for-black-belts.html 2017-08-06T03:12:38Z drmeister: I know - that's a great chapter - I read that over and over. 2017-08-06T03:13:50Z loke: drmeister: Right. I consider myself decet at LOOP, but there are things mentioned in that chapter which I have never used (and therefore don't really know) 2017-08-06T03:14:11Z ebzzry joined #lisp 2017-08-06T03:16:30Z whoman: drmeister, ah, (swank:describe-function "name") 2017-08-06T03:17:05Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-06T03:17:16Z whoman: oh hm that just wraps (describe) 2017-08-06T03:20:52Z nullniverse quit (Ping timeout: 276 seconds) 2017-08-06T03:24:22Z swh1 joined #lisp 2017-08-06T03:24:23Z swh1 quit (Remote host closed the connection) 2017-08-06T03:26:48Z WhiskyRyan joined #lisp 2017-08-06T03:29:25Z eazar001 joined #lisp 2017-08-06T03:33:27Z CrazyEddy joined #lisp 2017-08-06T03:35:28Z doesthiswork joined #lisp 2017-08-06T03:54:12Z rumbler31 joined #lisp 2017-08-06T03:54:32Z scymtym joined #lisp 2017-08-06T03:58:58Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-06T03:58:59Z aeth: loke: Sounds like it encourages using multiple return values instead of the many alternatives wherever possible because the cost is already paid in the language, unless I'm mistaken? 2017-08-06T03:59:59Z aeth: So not free at the assembly level, but free at the language level. 2017-08-06T04:00:14Z whoman: =) 2017-08-06T04:04:25Z pjb joined #lisp 2017-08-06T04:04:29Z hylisper joined #lisp 2017-08-06T04:16:07Z hylisper quit (Remote host closed the connection) 2017-08-06T04:19:40Z ebzzry quit (Ping timeout: 240 seconds) 2017-08-06T04:19:54Z AxelAlex joined #lisp 2017-08-06T04:20:55Z hylisper joined #lisp 2017-08-06T04:22:59Z omarkov joined #lisp 2017-08-06T04:23:01Z pjb quit (Ping timeout: 255 seconds) 2017-08-06T04:27:19Z damke_ joined #lisp 2017-08-06T04:27:45Z FreeBirdLjj joined #lisp 2017-08-06T04:31:47Z omarkov left #lisp 2017-08-06T04:32:35Z heurist` is now known as heurist 2017-08-06T04:34:31Z pjb joined #lisp 2017-08-06T04:35:13Z joast quit (Ping timeout: 246 seconds) 2017-08-06T04:36:14Z loke: aeth: Well, due to facts that can't be changed, returning two values as a multiple value is inherently much cheaper than returning a cons. 2017-08-06T04:37:13Z whoman: (loke, music to my ears) 2017-08-06T04:37:18Z whoman: (^) 2017-08-06T04:38:36Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-06T04:41:05Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-06T04:42:48Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-06T04:46:30Z aeth: loke: the alternatives for vector math are usually structs or specialized arrays, not a list of conses. 2017-08-06T04:47:25Z aeth: Until whoman just now, I was the only person that I know of using multiple return values for vector math. 2017-08-06T04:47:52Z AxelAlex quit (Quit: AxelAlex) 2017-08-06T04:49:38Z pjb: aeth: it may not be as efficient as you thing, given that you still need to store them on the stack to pass vectors to functions. 2017-08-06T04:49:55Z whoman: porting haskell code, nothing else will do, definately not littering with accessors and any other mess=) 2017-08-06T04:50:04Z |3b|: multiple return values can combine well with MULTIPLE-VALUE-CALL 2017-08-06T04:50:22Z whoman: oh! *searches* 2017-08-06T04:50:27Z pjb: Also, it makes it difficult to know your vector sizes: (multiple-value-call 'v+ (values 1 2 3) (values 4 5 6)) = (v+ 1 2 3 4 5 6) Are you adding 2 3-vectors or 3 2-vectors? 2017-08-06T04:50:43Z pjb: s/thing/think/ 2017-08-06T04:51:40Z whoman: gah i still cant really understand CLHS 2017-08-06T04:51:55Z |3b|: use v2+ or v3+ if you are optimizing to the point of m-v-call and values 2017-08-06T04:51:55Z whoman: pjb, my plan is to make ++, +++, etc 2017-08-06T04:52:13Z |3b|: whoman: keep in mind those are variables in CL: defined by the spec 2017-08-06T04:52:41Z |3b|: so shadow if defining global things with those names 2017-08-06T04:54:07Z FreeBirdLjj joined #lisp 2017-08-06T04:54:43Z aeth: |3b|: correct, I use multiple-value-call, special setfs, and special macros a ton 2017-08-06T04:55:32Z rumbler31 joined #lisp 2017-08-06T04:55:49Z aeth: pjb: It seems to lose out with #'+ and #'- but nothing else... probably because SBCL can detect the parallelism in something like (map-into vec-foo #'+ vec-foo vec-bar) 2017-08-06T04:56:11Z aeth: But it only goes as far as simple arithmetic directly, i.e. #'+, #'-, #'/, #'-, etc., and not something like normalization 2017-08-06T04:57:22Z aeth: It will also probably lose out to something like sb-cga's SIMD (which is SBCL-only, otherwise it uses a slow path), but that library conses constantly, whereas multiple values do not, while still being functional. 2017-08-06T04:58:53Z |3b|: not quite constantly, just most of the time... it optimizes out some consing from complex expressions with compiler macros 2017-08-06T04:59:45Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-06T04:59:59Z aeth: And in practice, vec+ is probably one of the least common things. Usually addition is done by component in a complicated function, i.e. add to the x's, then the y's, and then the z's. I don't think I currently use any vec+ 2017-08-06T05:00:34Z aeth: Why would I generate something and then add to a vector when I could just add to the vector while generating it? 2017-08-06T05:01:06Z pjb: You should take the problem otherwise. 2017-08-06T05:01:54Z whoman: |3b|, oops, didnt realise. i may instead just hide the official ones in vecmath areas 2017-08-06T05:01:54Z pjb: Take a purely vectorial expression (possibly including scalar processing of the components), and write a data-flow analysis translator that will generate optimized scalar code without storing data into any vector data structure until the final result is returned. 2017-08-06T05:03:10Z shifty quit (Ping timeout: 240 seconds) 2017-08-06T05:03:14Z whoman: aeth, yeah hmm... 2017-08-06T05:03:36Z whoman: haskell was/is great for all that stuff 2017-08-06T05:04:28Z Bike quit (Ping timeout: 255 seconds) 2017-08-06T05:06:37Z aeth: pjb: What I mostly do is this: I store the vector data in 2D arrays and just feed the arrays into functions, which modify them with the final result. Until then I work with multiple values. 2017-08-06T05:07:15Z aeth: I suppose I could clean that up with a bunch of functional macros that hide a lot of that. 2017-08-06T05:16:25Z andrzejku joined #lisp 2017-08-06T05:20:39Z Amplituhedron joined #lisp 2017-08-06T05:29:01Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T05:30:56Z karswell_ quit (Remote host closed the connection) 2017-08-06T05:32:06Z damke joined #lisp 2017-08-06T05:35:00Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T05:40:33Z damke quit (Ping timeout: 268 seconds) 2017-08-06T05:42:03Z damke joined #lisp 2017-08-06T05:44:06Z WhiskyRyan joined #lisp 2017-08-06T05:45:15Z quazimodo quit (Read error: Connection reset by peer) 2017-08-06T05:45:30Z quazimodo joined #lisp 2017-08-06T05:47:20Z damke quit (Ping timeout: 268 seconds) 2017-08-06T05:47:40Z damke_ joined #lisp 2017-08-06T05:52:34Z andrzejku quit (Quit: My iMac has gone to sleep. ZZZzzz…) 2017-08-06T05:56:19Z rumbler31 joined #lisp 2017-08-06T05:57:12Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T05:58:30Z beach: In SBCL, the macro expansion of RESTART-CASE contains a TAGBODY. What is its role? 2017-08-06T06:00:40Z |3b|: notes in spec have tagbody in the "essentially equivalent" form 2017-08-06T06:01:05Z rumbler31 quit (Ping timeout: 246 seconds) 2017-08-06T06:01:30Z |3b|: is it removing the restarts from the scope of the handlers? 2017-08-06T06:01:30Z beach: Where are you reading? 2017-08-06T06:01:41Z |3b|: http://www.lispworks.com/documentation/HyperSpec/Body/m_rst_ca.htm#restart-case 2017-08-06T06:02:09Z beach: Excellent! Thanks! 2017-08-06T06:05:58Z hylisper quit (Remote host closed the connection) 2017-08-06T06:09:49Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-06T06:10:53Z damke_ joined #lisp 2017-08-06T06:11:21Z andrzejku joined #lisp 2017-08-06T06:12:08Z hylisper joined #lisp 2017-08-06T06:14:52Z bjorkintosh quit (Ping timeout: 260 seconds) 2017-08-06T06:21:15Z angavrilov joined #lisp 2017-08-06T06:26:08Z mishoo_ joined #lisp 2017-08-06T06:26:57Z caffe: c /redraw 2017-08-06T06:27:05Z caffe: oops, sorry 2017-08-06T06:34:00Z whoman quit (Remote host closed the connection) 2017-08-06T06:34:28Z whoman joined #lisp 2017-08-06T06:34:45Z vlatkoB joined #lisp 2017-08-06T06:42:04Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T06:48:26Z Amplituhedron quit (Remote host closed the connection) 2017-08-06T06:49:46Z FreeBirdLjj joined #lisp 2017-08-06T06:52:37Z doesthiswork quit (Quit: Leaving.) 2017-08-06T06:52:50Z varjag joined #lisp 2017-08-06T06:53:57Z paul0 joined #lisp 2017-08-06T06:54:35Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-06T06:55:00Z __paul0 quit (Ping timeout: 260 seconds) 2017-08-06T06:57:01Z Amplituhedron joined #lisp 2017-08-06T06:57:50Z rumbler31 joined #lisp 2017-08-06T06:58:40Z FreeBirdLjj joined #lisp 2017-08-06T07:01:57Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-06T07:05:28Z pjb quit (Ping timeout: 240 seconds) 2017-08-06T07:06:13Z mishoo__ joined #lisp 2017-08-06T07:08:10Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-06T07:08:32Z Amplituhedron quit (Ping timeout: 260 seconds) 2017-08-06T07:14:33Z Amplituhedron joined #lisp 2017-08-06T07:18:10Z teggi joined #lisp 2017-08-06T07:18:25Z defaultxr quit (Ping timeout: 248 seconds) 2017-08-06T07:22:32Z BlueRavenGT quit (Ping timeout: 260 seconds) 2017-08-06T07:24:57Z andrzejku quit (Quit: My iMac has gone to sleep. ZZZzzz…) 2017-08-06T07:26:14Z andrzejku joined #lisp 2017-08-06T07:27:51Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T07:28:52Z damke_ joined #lisp 2017-08-06T07:29:53Z random-nick joined #lisp 2017-08-06T07:32:57Z pjb joined #lisp 2017-08-06T07:42:24Z hylisper quit (Ping timeout: 255 seconds) 2017-08-06T07:45:44Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T07:46:32Z eschatologist joined #lisp 2017-08-06T07:48:16Z pjb quit (Ping timeout: 255 seconds) 2017-08-06T07:49:18Z Amplituhedron quit (Remote host closed the connection) 2017-08-06T07:50:07Z damke_ joined #lisp 2017-08-06T07:54:57Z rub_ixCube joined #lisp 2017-08-06T07:55:22Z rub_ixCube quit (Quit: leaving) 2017-08-06T07:55:53Z damke_ quit (Remote host closed the connection) 2017-08-06T07:57:13Z damke_ joined #lisp 2017-08-06T07:58:25Z safe quit (Read error: Connection reset by peer) 2017-08-06T07:58:48Z shka_ joined #lisp 2017-08-06T07:58:57Z rumbler31 joined #lisp 2017-08-06T07:59:38Z Amplituhedron joined #lisp 2017-08-06T08:00:50Z LooneyTunes quit (Ping timeout: 240 seconds) 2017-08-06T08:01:25Z _main_ joined #lisp 2017-08-06T08:01:46Z _main_ quit (Read error: Connection reset by peer) 2017-08-06T08:01:50Z __main__ quit (Read error: Connection reset by peer) 2017-08-06T08:02:29Z _main_ joined #lisp 2017-08-06T08:03:38Z _main_ quit (Read error: Connection reset by peer) 2017-08-06T08:03:45Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-06T08:04:31Z __main__ joined #lisp 2017-08-06T08:05:28Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T08:08:23Z Ven joined #lisp 2017-08-06T08:08:46Z Ven is now known as Guest71332 2017-08-06T08:11:23Z axion: Anyone know if opticl has the ability to downsample 16bit images to 8bit? 2017-08-06T08:12:34Z shka_: hi all 2017-08-06T08:12:40Z phoe: you mean, drop the less significant 8 bits? 2017-08-06T08:12:53Z shka_: does anyone use CircleCI for lisp projects? 2017-08-06T08:13:01Z axion: I'm actually not sure. I understand there will be quality loss, but I want to do it 'correctly' 2017-08-06T08:13:29Z Amplituhedron quit (Remote host closed the connection) 2017-08-06T08:13:52Z axion: I am processing a bunch of images, and packing them into a sprite sheet. the output should be 32bit rgba (8 bits per channel). the input can be any bit depth. 2017-08-06T08:14:02Z axion: opticl has helped me up to this point 2017-08-06T08:14:35Z axion: i just had a crash i tracked down to a 16bit per channel image, so i need to support this 2017-08-06T08:15:13Z phoe: axion: I think you can do it by hand. for 16-bit images, if your image is a 3D array, you can iterare for all values to (setf value (ash value -8)). 2017-08-06T08:15:28Z phoe: That's the naïve solution though. Possibly there exists something better. 2017-08-06T08:15:36Z Shinmera: axion: If you want to assemble sprite sheets, imagemagick's montage is quite nice. 2017-08-06T08:15:47Z axion: Shinmera: I wrote a maxrects implementation 2017-08-06T08:15:56Z axion: I was using montage for years heh 2017-08-06T08:26:41Z jamtho joined #lisp 2017-08-06T08:33:25Z caffe quit (Quit: WeeChat 1.9) 2017-08-06T08:36:56Z logicmoo is now known as dmiles 2017-08-06T08:38:41Z phoe: How can I tell the Lisp pretty printer to make a linebreak each two elements? 2017-08-06T08:39:17Z phoe: Like - I am printing a list. 2017-08-06T08:39:50Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-06T08:40:13Z phoe: a plist, to be exact, and I want (:FOO 1 :BAR 2 :BAZ 3) to be printed with linebreaks after each pair. 2017-08-06T08:41:58Z jamtho quit (Ping timeout: 276 seconds) 2017-08-06T08:44:38Z Amplituhedron joined #lisp 2017-08-06T08:45:51Z andrzejku quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-06T08:46:52Z Guest71332 is now known as Ven`` 2017-08-06T08:48:38Z Amplituhedron quit (Remote host closed the connection) 2017-08-06T08:59:15Z Amplituhedron joined #lisp 2017-08-06T09:00:39Z rumbler31 joined #lisp 2017-08-06T09:02:27Z Shinmera: You write your own pretty printing function. 2017-08-06T09:02:46Z phoe: Got it. 2017-08-06T09:02:52Z phoe: Time to learn some pretty printing... 2017-08-06T09:04:09Z daemoz quit (Remote host closed the connection) 2017-08-06T09:04:09Z quazimodo quit (Read error: Connection reset by peer) 2017-08-06T09:04:18Z Amplituhedron quit (Remote host closed the connection) 2017-08-06T09:04:24Z quazimodo joined #lisp 2017-08-06T09:04:56Z Shinmera: The pretty printer is one of those things that has so much stuff to it and yet it keeps falling short for me anyway. 2017-08-06T09:05:07Z daemoz joined #lisp 2017-08-06T09:06:06Z damke_ joined #lisp 2017-08-06T09:06:13Z whoman: did you wait for an answer for what to do? will you be ok with lisp? because there is a lot of having to choose and design things (which is also a reason why most of us are doing it) 2017-08-06T09:07:13Z phoe: whoman: who was the question to? 2017-08-06T09:07:20Z attila_lendvai joined #lisp 2017-08-06T09:08:13Z rumbler31 quit (Ping timeout: 258 seconds) 2017-08-06T09:11:01Z damke_ quit (Ping timeout: 246 seconds) 2017-08-06T09:14:28Z Amplituhedron joined #lisp 2017-08-06T09:15:18Z damke_ joined #lisp 2017-08-06T09:18:41Z phoe: Shinmera: https://gist.github.com/phoe/b3c8424820317b9291036d3d2edf65e0 2017-08-06T09:19:02Z phoe: This is broken on many levels but works for this simple use case. 2017-08-06T09:19:27Z Shinmera: Why the extra newline before the closing paren? 2017-08-06T09:20:01Z phoe: Makes it a bit more config-file-likey. 2017-08-06T09:20:09Z Shinmera: If you say so. 2017-08-06T09:20:25Z phoe: It's a matter of taste, I know. 2017-08-06T09:20:37Z Shinmera: If you need config files, may I also point you to http://shinmera.github.io/ubiquitous/ 2017-08-06T09:20:59Z damke_ quit (Remote host closed the connection) 2017-08-06T09:21:15Z phoe: Ooh. 2017-08-06T09:21:18Z phoe: Now that's pretty awesome. 2017-08-06T09:21:20Z phoe adds to TODO 2017-08-06T09:24:32Z shka_: wow 2017-08-06T09:24:39Z shka_: more-conditions is neat! 2017-08-06T09:25:03Z shka_: i'm glad that somebody took his time to implement this 2017-08-06T09:25:10Z phoe: shka_: link? 2017-08-06T09:25:13Z damke_ joined #lisp 2017-08-06T09:25:16Z shka_: http://quickdocs.org/more-conditions/ 2017-08-06T09:25:46Z shka_: phoe: it is nothing amazing, but makes handling conditions way easier 2017-08-06T09:26:11Z Shinmera: I've been meaning to write a library to make condition definition easier for a long time. 2017-08-06T09:26:34Z Shinmera: Since I'm convinced that a primary reason people don't write a lot of conditions for specific problem cases is because it's so tedious. 2017-08-06T09:26:51Z shka_: it could also add some reasonable hierarchy of conditions (like runtime error, initialization error, etc) 2017-08-06T09:27:38Z shka_: Shinmera: well, i do… 2017-08-06T09:27:47Z phoe: Nice. 2017-08-06T09:27:59Z Shinmera: And that's good. I do too for my libraries, but I don't enjoy doing it. 2017-08-06T09:28:08Z shka_: heh, neither do i 2017-08-06T09:28:28Z Shinmera: I just see a lot of libraries that only do (error "whatever") which is useless if you want to handle different error points differently. 2017-08-06T09:28:43Z shka_: and It would be nice if i could use library that adds some abstract conditions 2017-08-06T09:29:36Z shka_: so i would not have to write stuff like define-condition argument-out-of-bounds 2017-08-06T09:31:22Z phoe: I actually have one more question regarding symbol macros. 2017-08-06T09:32:09Z phoe: Is it okay for me to define a symbol-macro for *foo* that establishes a restart callable by the user if the *foo* was not set before? 2017-08-06T09:32:24Z phoe: Or should I *really* use a function here? 2017-08-06T09:32:34Z phoe: Because I think more of the second. 2017-08-06T09:32:57Z Shinmera: How would a symbol macro establish a restart? It can't have a body. 2017-08-06T09:33:12Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-06T09:33:42Z Shinmera: Or do you mean foo expands to a variable reference to foo again? 2017-08-06T09:34:00Z phoe: can't expand to a variable reference to itself 2017-08-06T09:34:09Z Shinmera: Well obviously 2017-08-06T09:34:10Z phoe: it most likely expands to a reference to %*foo* or something. 2017-08-06T09:34:37Z phoe: inside something that establishes restarts and can enter the debugger in case %*foo* is not bound, for example. 2017-08-06T09:34:50Z phoe: and then the restart can do additional validation logic. 2017-08-06T09:35:07Z whoman quit (Quit: Leaving) 2017-08-06T09:35:18Z Shinmera: Seems pretty bad to try and do that on each access of the variable. Just check the variable once on function entry. 2017-08-06T09:35:33Z phoe: Yep. Too much logic there, too. 2017-08-06T09:35:49Z Shinmera: (assert (boundp 'foo) (foo)) 2017-08-06T09:35:57Z Shinmera: Gives you the set restart for free too. 2017-08-06T09:52:09Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T09:52:44Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T09:58:51Z Ven joined #lisp 2017-08-06T09:59:16Z Ven is now known as Guest27753 2017-08-06T10:02:45Z phoe: Does any popular library contain a non-destructive variant of SETF GETF? 2017-08-06T10:05:24Z phoe: Or actually, a non-destructive version of REMF? 2017-08-06T10:06:33Z Xach: phoe: i use SANS from Erik Naggum sometimes 2017-08-06T10:07:12Z phoe: Xach: https://github.com/mon-key/mon-systems-cl/blob/master/plist.lisp#L103 this one? 2017-08-06T10:10:47Z _death: alexandria also has it 2017-08-06T10:13:03Z phoe: _death: alexandria:remove-from-plist, correct. thanks! 2017-08-06T10:17:50Z elfmacs joined #lisp 2017-08-06T10:18:59Z Guest27753 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T10:19:09Z Xach: phoe: yes 2017-08-06T10:19:49Z FreeBirdLjj joined #lisp 2017-08-06T10:20:25Z Xach: wow, the google indexing of my article archive has gotten pretty bad. 2017-08-06T10:20:29Z Xach wonders why 2017-08-06T10:23:23Z random-nick quit (Remote host closed the connection) 2017-08-06T10:23:42Z attila_lendvai quit (Quit: Leaving.) 2017-08-06T10:24:32Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2017-08-06T10:24:45Z elfmacs quit (Read error: Connection reset by peer) 2017-08-06T10:24:55Z elfmacs joined #lisp 2017-08-06T10:30:46Z FreeBirdLjj joined #lisp 2017-08-06T10:37:09Z http_GK1wmSU joined #lisp 2017-08-06T10:39:53Z http_GK1wmSU left #lisp 2017-08-06T10:42:07Z Ven_ joined #lisp 2017-08-06T10:42:39Z davsebamse quit (Ping timeout: 240 seconds) 2017-08-06T10:43:20Z angavrilov quit (Ping timeout: 268 seconds) 2017-08-06T10:46:23Z knobo joined #lisp 2017-08-06T10:48:16Z BitPuffin|osx joined #lisp 2017-08-06T10:51:35Z c__ quit (Ping timeout: 246 seconds) 2017-08-06T10:55:26Z c__ joined #lisp 2017-08-06T10:57:03Z random-nick joined #lisp 2017-08-06T10:57:42Z Shinmera: Xach: search engines change their algorithms slightly periodically to avoid seo scamming. But unless your archive pages are using things the engines consider bad practise that usually shouldn't hit you. 2017-08-06T10:59:47Z rgrau joined #lisp 2017-08-06T11:02:22Z knobo quit (Ping timeout: 276 seconds) 2017-08-06T11:02:26Z damke_ joined #lisp 2017-08-06T11:04:29Z Amplituhedron quit (Remote host closed the connection) 2017-08-06T11:06:04Z varjag quit (Ping timeout: 260 seconds) 2017-08-06T11:06:33Z oleo quit (Quit: irc client terminated!) 2017-08-06T11:06:52Z teggi quit (Quit: Leaving...) 2017-08-06T11:08:18Z dddddd joined #lisp 2017-08-06T11:09:59Z davsebamse joined #lisp 2017-08-06T11:11:32Z http_GK1wmSU joined #lisp 2017-08-06T11:12:18Z http_GK1wmSU quit (Excess Flood) 2017-08-06T11:13:27Z Amplituhedron joined #lisp 2017-08-06T11:16:36Z Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T11:17:09Z fsmunoz joined #lisp 2017-08-06T11:22:39Z Amplituhedron quit (Ping timeout: 240 seconds) 2017-08-06T11:25:07Z BitPuffin|osx quit (Ping timeout: 276 seconds) 2017-08-06T11:28:53Z Amplituhedron joined #lisp 2017-08-06T11:33:20Z oleo joined #lisp 2017-08-06T11:34:31Z rgrau quit (Ping timeout: 246 seconds) 2017-08-06T11:35:50Z caffe joined #lisp 2017-08-06T11:37:45Z damke joined #lisp 2017-08-06T11:38:13Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T11:38:18Z rgrau joined #lisp 2017-08-06T11:42:21Z varjag joined #lisp 2017-08-06T11:44:54Z fkac quit (Remote host closed the connection) 2017-08-06T11:46:39Z varjag quit (Ping timeout: 240 seconds) 2017-08-06T11:51:58Z d4ryus3 quit (Quit: WeeChat 1.9) 2017-08-06T11:54:15Z damke quit (Ping timeout: 268 seconds) 2017-08-06T11:56:56Z angavrilov joined #lisp 2017-08-06T11:59:02Z Ven joined #lisp 2017-08-06T11:59:06Z nullniverse joined #lisp 2017-08-06T11:59:27Z Ven is now known as Guest22119 2017-08-06T12:01:06Z http_GK1wmSU joined #lisp 2017-08-06T12:01:33Z elfmacs quit (Remote host closed the connection) 2017-08-06T12:02:49Z damke joined #lisp 2017-08-06T12:03:10Z varjag joined #lisp 2017-08-06T12:03:40Z oleo quit (Quit: irc client terminated!) 2017-08-06T12:03:49Z http_GK1wmSU left #lisp 2017-08-06T12:04:06Z shifty joined #lisp 2017-08-06T12:07:46Z damke quit (Ping timeout: 246 seconds) 2017-08-06T12:07:47Z varjag quit (Ping timeout: 260 seconds) 2017-08-06T12:08:52Z Bike joined #lisp 2017-08-06T12:08:57Z Amplituhedron quit (Ping timeout: 260 seconds) 2017-08-06T12:13:21Z Xach: Well, it is hitting me. 2017-08-06T12:25:24Z loke: Xach: Hello 2017-08-06T12:26:26Z phoe: hey hi 2017-08-06T12:26:36Z Xach: wahoo 2017-08-06T12:28:39Z strelox joined #lisp 2017-08-06T12:29:19Z oleo joined #lisp 2017-08-06T12:33:38Z fmeyer joined #lisp 2017-08-06T12:34:12Z axion: what is the proper way to make a file pathname into a directory pathname? 2017-08-06T12:35:28Z easye: (make-pathname :defaults file-pathname :name nil :type nil :version nil) 2017-08-06T12:36:11Z axion: I wonder if uiop has something more terse 2017-08-06T12:38:10Z Amplituhedron joined #lisp 2017-08-06T12:39:14Z axion: Ah, ensure-directory-pathname 2017-08-06T12:39:16Z axion: Thanks 2017-08-06T12:40:35Z Guest22119 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T12:42:32Z yrk quit (Read error: Connection reset by peer) 2017-08-06T13:00:43Z doesthiswork joined #lisp 2017-08-06T13:04:13Z cromachina joined #lisp 2017-08-06T13:07:01Z cromachina_ quit (Ping timeout: 268 seconds) 2017-08-06T13:08:48Z fmeyer quit (Ping timeout: 260 seconds) 2017-08-06T13:09:07Z grouzen quit (Ping timeout: 276 seconds) 2017-08-06T13:09:22Z rumbler31 joined #lisp 2017-08-06T13:13:57Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-06T13:14:18Z fmeyer joined #lisp 2017-08-06T13:17:07Z Davidbrcz joined #lisp 2017-08-06T13:19:00Z kobain joined #lisp 2017-08-06T13:19:57Z fmeyer quit (Ping timeout: 240 seconds) 2017-08-06T13:20:26Z Davidbrcz quit (Client Quit) 2017-08-06T13:20:37Z Davidbrcz joined #lisp 2017-08-06T13:21:37Z Amplituhedron quit (Ping timeout: 248 seconds) 2017-08-06T13:25:24Z damke joined #lisp 2017-08-06T13:37:47Z Amplituhedron joined #lisp 2017-08-06T13:44:23Z quazimodo quit (Read error: Connection reset by peer) 2017-08-06T13:44:39Z quazimodo joined #lisp 2017-08-06T13:48:39Z Amplituhedron quit (Ping timeout: 240 seconds) 2017-08-06T13:51:35Z scymtym quit (Read error: Connection reset by peer) 2017-08-06T13:52:50Z hylisper joined #lisp 2017-08-06T13:54:27Z nirved joined #lisp 2017-08-06T13:55:53Z varjag joined #lisp 2017-08-06T14:03:24Z marvin2 quit (Ping timeout: 260 seconds) 2017-08-06T14:04:10Z scymtym joined #lisp 2017-08-06T14:04:44Z doesthiswork quit (Quit: Leaving.) 2017-08-06T14:05:27Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-06T14:09:20Z http_GK1wmSU joined #lisp 2017-08-06T14:10:17Z http_GK1wmSU left #lisp 2017-08-06T14:10:42Z rumbler31 joined #lisp 2017-08-06T14:11:06Z smokeink joined #lisp 2017-08-06T14:15:10Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-06T14:20:54Z hylisper quit (Read error: Connection reset by peer) 2017-08-06T14:40:38Z WhiskyRyan joined #lisp 2017-08-06T14:47:10Z jmarciano joined #lisp 2017-08-06T15:07:27Z pjb joined #lisp 2017-08-06T15:10:24Z marvin2 joined #lisp 2017-08-06T15:11:04Z cmatei quit (Ping timeout: 260 seconds) 2017-08-06T15:12:09Z rumbler31 joined #lisp 2017-08-06T15:16:49Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-06T15:23:10Z MrBusiness quit (Ping timeout: 240 seconds) 2017-08-06T15:24:22Z hylisper joined #lisp 2017-08-06T15:27:35Z FreeBird_ joined #lisp 2017-08-06T15:29:10Z MrBusiness joined #lisp 2017-08-06T15:30:09Z brendos quit (Ping timeout: 240 seconds) 2017-08-06T15:30:12Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2017-08-06T15:32:52Z knobo joined #lisp 2017-08-06T15:34:30Z FreeBird_ quit (Remote host closed the connection) 2017-08-06T15:37:11Z Kaisyu joined #lisp 2017-08-06T15:45:21Z whoman joined #lisp 2017-08-06T15:47:43Z dddddd quit (Ping timeout: 276 seconds) 2017-08-06T15:48:18Z easye: ~.~.~.~. 2017-08-06T15:54:23Z kozy: what is difference between '(:key "value") vs '(key . "value") 2017-08-06T15:54:31Z pjb: easye: only at the beginning of the line! RET ~ . 2017-08-06T15:55:01Z damke_ joined #lisp 2017-08-06T15:55:44Z easye: pjb: Apologies for the line noise. 2017-08-06T15:57:13Z damke quit (Ping timeout: 268 seconds) 2017-08-06T15:58:03Z pjb: kozy: http://paste.lisp.org/display/352709 2017-08-06T15:59:44Z dddddd joined #lisp 2017-08-06T16:00:03Z kozy: I think (:key "value") can compensate all, situation isn't it? why we should have both? 2017-08-06T16:01:13Z pjb: kozy: look at the diagrams! 2017-08-06T16:01:37Z pjb: (:key "value") uses 2 cons cells! twice the memory used by (key . "value")! 2017-08-06T16:02:04Z pjb: Furthermore, :key is a keyword while key is a symbol in the current package. This doesn't mean the same thing! 2017-08-06T16:02:22Z Davidbrcz quit (Ping timeout: 255 seconds) 2017-08-06T16:02:42Z Achylles joined #lisp 2017-08-06T16:02:53Z kozy: aha keyword and symbol I didn't notice that 2017-08-06T16:03:09Z Khisanth quit (Ping timeout: 240 seconds) 2017-08-06T16:03:15Z pjb: tree-difference says so: ((/= :key key) /= ("value") "value") 2017-08-06T16:03:19Z pjb: (/= :key key) 2017-08-06T16:03:26Z pjb: :key IS DIFFERENT FROM key 2017-08-06T16:03:31Z kozy: then basically keyword is similar string? 2017-08-06T16:03:49Z pjb: basically a keyword is a symbol interned in the KEYWORD package. 2017-08-06T16:04:05Z pjb: (incidentally, that implies that it is a constant and it gets as value, itself. 2017-08-06T16:04:06Z pjb: ) 2017-08-06T16:04:31Z damke joined #lisp 2017-08-06T16:04:58Z whoman learns something 2017-08-06T16:06:22Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T16:07:42Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T16:08:43Z Ven joined #lisp 2017-08-06T16:09:06Z Ven is now known as Guest4921 2017-08-06T16:10:08Z WhiskyRyan joined #lisp 2017-08-06T16:11:05Z knobo quit (Quit: WeeChat 1.7) 2017-08-06T16:11:17Z knobo joined #lisp 2017-08-06T16:11:31Z warweasle joined #lisp 2017-08-06T16:13:45Z rumbler31 joined #lisp 2017-08-06T16:14:04Z marvin2 quit (Ping timeout: 260 seconds) 2017-08-06T16:14:38Z mishoo__ quit (Read error: Connection reset by peer) 2017-08-06T16:16:10Z smokeink quit (Ping timeout: 240 seconds) 2017-08-06T16:16:19Z phoe: Is it conforming CL to unintern from the KEYWORD package? 2017-08-06T16:16:28Z phoe asked this question once but no longer remembers the answer 2017-08-06T16:16:29Z Khisanth joined #lisp 2017-08-06T16:17:06Z pjb: phoe: it depends on whether you attached properties to the symbol. 2017-08-06T16:17:21Z pjb: err, sorry, it's always conforming. 2017-08-06T16:17:29Z pjb: But it may not be a good idea. 2017-08-06T16:18:23Z phoe: pjb: :fronbicate 2017-08-06T16:18:28Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-06T16:18:40Z pjb: (let ((k (read-from-string ":foo"))) (unintern k) (eq k (read-from-string ":foo"))) #| --> t |# 2017-08-06T16:19:01Z phoe: I'd like to get rid of the typoed symbol so it no longer is autosuggested to me by slime. 2017-08-06T16:19:34Z pjb: (let ((k1 (read-from-string ":foo"))) (setf (get k1 :v) 42) (unintern k1) (let ((k2 (read-from-string ":foo"))) (values (eq k1 k2) (get k2 :v)))) #| --> t ; 42 |# 2017-08-06T16:19:44Z pjb: in ccl unintern keyword is not effective. 2017-08-06T16:19:54Z damke_ joined #lisp 2017-08-06T16:20:14Z pjb: same result in other implementations. 2017-08-06T16:22:28Z pjb: (let ((k1 (read-from-string ":foo"))) (setf (get k1 :v) 42) (unintern k1) k1) #| --> :foo |# 2017-08-06T16:23:01Z weltung joined #lisp 2017-08-06T16:23:07Z damke quit (Ping timeout: 268 seconds) 2017-08-06T16:23:33Z pjb: (let ((k1 (read-from-string ":foo"))) (setf (get k1 :v) 42) (values (unintern k1) k1)) #| --> nil ; :foo |# 2017-08-06T16:23:44Z pjb: That's strange: unintern may return NIL! 2017-08-06T16:24:25Z phoe: pjb: 2017-08-06T16:24:26Z phoe: clhs unintern 2017-08-06T16:24:26Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_uninte.htm 2017-08-06T16:24:31Z phoe: well, it returns a generalized boolean 2017-08-06T16:24:58Z pjb: phoe: so I would say that it is conforming in the sense that you can call unintern on a keyword, and that it seems to be have the same in all implementation, but you don't get the same results as with other symbols. 2017-08-06T16:25:13Z groovy2shoes quit (Ping timeout: 258 seconds) 2017-08-06T16:25:24Z pjb: (let ((k1 (read-from-string ":foo"))) (unintern k1) (find-symbol "FOO" "KEYWORD")) #| --> :foo ; :external |# 2017-08-06T16:25:40Z pjb: (let ((k1 (read-from-string "foo"))) (unintern k1) (find-symbol "FOO")) #| --> nil ; nil |# 2017-08-06T16:26:26Z warweasle1 joined #lisp 2017-08-06T16:27:19Z quazimodo quit (Read error: Connection reset by peer) 2017-08-06T16:28:35Z Xach: phoe: in an interactive situation, for development, i think it doesn't matter (much) what's specified and only matters what the implementation in question does. 2017-08-06T16:28:57Z Xach: You are not likely going to make a library to share with others to purge keyword typos. Right? 2017-08-06T16:29:14Z warweasle quit (Ping timeout: 255 seconds) 2017-08-06T16:30:52Z phoe: Xach: right 2017-08-06T16:31:06Z quazimodo joined #lisp 2017-08-06T16:32:41Z marvin2 joined #lisp 2017-08-06T16:33:03Z kobain joined #lisp 2017-08-06T16:34:04Z hylisper quit (Quit: leaving) 2017-08-06T16:34:19Z rippa joined #lisp 2017-08-06T16:34:54Z jmarcian` joined #lisp 2017-08-06T16:35:40Z Xach: That is why I feel fine defining functions on keywords, despite lispworks rejecting it. 2017-08-06T16:35:47Z Xach: it is triple convenient 2017-08-06T16:36:44Z phoe: Xach: You are not likely going to make a library to share with others that contains your keyword-defined functions. Right? 2017-08-06T16:36:56Z jmarciano quit (Ping timeout: 260 seconds) 2017-08-06T16:39:41Z weltung_ joined #lisp 2017-08-06T16:40:25Z pjb: If they're useful to you, why shouldn't them be useful to somebody else? 2017-08-06T16:41:13Z wooden quit (Read error: Connection reset by peer) 2017-08-06T16:41:27Z weltung quit (Ping timeout: 240 seconds) 2017-08-06T16:41:56Z phoe: because keywords in my Lisp image are mine to command 2017-08-06T16:42:04Z Guest4921 quit (Read error: Connection reset by peer) 2017-08-06T16:42:23Z phoe: and (defun :foo ...) should not really happen in code you share with others 2017-08-06T16:43:27Z wooden joined #lisp 2017-08-06T16:43:42Z defaultxr joined #lisp 2017-08-06T16:43:55Z pjb: Still, don't do it like that! Do: (defun foo …) (defun make-keyword-comand (name) (setf (symbol-function (intern (string name) "KEYWORD")) (symbol-function name))) (make-keyword-command foo) 2017-08-06T16:44:58Z phoe: pjb: http://i.imgur.com/LeRFnqG.jpg 2017-08-06T16:45:29Z pjb: So you can publish foo and make-keyword-command, and let users do whatever they want with their keywords. 2017-08-06T16:52:27Z groovy2shoes joined #lisp 2017-08-06T16:54:22Z ekinmur joined #lisp 2017-08-06T16:54:40Z Ven_ joined #lisp 2017-08-06T16:55:41Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T16:55:48Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T16:56:46Z damke_ joined #lisp 2017-08-06T16:57:10Z Davidbrcz joined #lisp 2017-08-06T16:57:22Z Karl_Dscc joined #lisp 2017-08-06T16:58:09Z WhiskyRyan joined #lisp 2017-08-06T16:58:14Z warweasle joined #lisp 2017-08-06T17:00:54Z Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T17:01:49Z warweasle1 quit (Ping timeout: 276 seconds) 2017-08-06T17:03:06Z JuanDaugherty joined #lisp 2017-08-06T17:03:56Z damke_ quit (Ping timeout: 258 seconds) 2017-08-06T17:13:25Z damke_ joined #lisp 2017-08-06T17:14:57Z rumbler31 joined #lisp 2017-08-06T17:15:40Z quazimodo quit (Ping timeout: 260 seconds) 2017-08-06T17:19:13Z c_3 joined #lisp 2017-08-06T17:19:57Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-06T17:21:27Z c__ quit (Ping timeout: 240 seconds) 2017-08-06T17:21:31Z Davidbrcz quit (Ping timeout: 255 seconds) 2017-08-06T17:24:30Z weltung joined #lisp 2017-08-06T17:24:47Z damke_ quit (Ping timeout: 268 seconds) 2017-08-06T17:26:17Z weltung_ quit (Ping timeout: 260 seconds) 2017-08-06T17:27:27Z slyrus quit (Ping timeout: 260 seconds) 2017-08-06T17:29:53Z warweasle1 joined #lisp 2017-08-06T17:30:25Z vlatkoB quit (Ping timeout: 276 seconds) 2017-08-06T17:31:29Z vlatkoB joined #lisp 2017-08-06T17:32:35Z warweasle quit (Ping timeout: 240 seconds) 2017-08-06T17:37:32Z weltung_ joined #lisp 2017-08-06T17:38:40Z Xach: phoe: right. they are for my own repl fun. 2017-08-06T17:39:20Z weltung quit (Ping timeout: 246 seconds) 2017-08-06T17:42:49Z weltung_ quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-06T17:49:20Z ekinmur quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T17:55:48Z trocado joined #lisp 2017-08-06T18:01:38Z warweasle1 quit (Read error: Connection reset by peer) 2017-08-06T18:02:04Z warweasle1 joined #lisp 2017-08-06T18:02:40Z shifty quit (Ping timeout: 246 seconds) 2017-08-06T18:04:20Z WhiskyRyan quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T18:05:38Z attila_lendvai joined #lisp 2017-08-06T18:10:19Z raynold joined #lisp 2017-08-06T18:14:17Z phoe: (How) Can I tell ASDF which packages belong to a particular system? 2017-08-06T18:14:32Z WhiskyRyan joined #lisp 2017-08-06T18:15:53Z mishoo joined #lisp 2017-08-06T18:16:20Z _death: you don't?.. if you're using package-inferred-systems there's asdf:register-system-packages 2017-08-06T18:16:27Z rumbler31 joined #lisp 2017-08-06T18:17:16Z phoe: I'm having overlord issues right now that I'm trying to debug. 2017-08-06T18:17:48Z _death: not familiar with it 2017-08-06T18:21:27Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-06T18:21:48Z kolko joined #lisp 2017-08-06T18:22:55Z BitPuffin|osx joined #lisp 2017-08-06T18:25:47Z grouzen joined #lisp 2017-08-06T18:26:44Z WhiskyRyan is now known as rngoodn 2017-08-06T18:27:16Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-06T18:30:05Z rngoodn quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-06T18:30:51Z rngoodn joined #lisp 2017-08-06T18:33:28Z warweasle1 quit (Read error: Connection reset by peer) 2017-08-06T18:33:45Z warweasle joined #lisp 2017-08-06T18:33:54Z rngoodn quit (Client Quit) 2017-08-06T18:35:00Z knobo: does iolib provide something like with-open-file? The manual is only about sockets. I guess I'll find it in the source. 2017-08-06T18:36:02Z phoe: What would be the simplest way to sniff on Swank/Slime communication? 2017-08-06T18:36:32Z pjb: tcpdump -p 4001 2017-08-06T18:36:56Z pjb: I mean: tcpdump port 4001 2017-08-06T18:39:18Z GK1wmSU-deepbook joined #lisp 2017-08-06T18:39:27Z phoe: I have a SSH tunnel between remote port 4005 and local port 4005. Can I somehow tap into that? 2017-08-06T18:39:38Z Ven joined #lisp 2017-08-06T18:39:56Z pjb: Yes. ports 4005 are unencrypted. 2017-08-06T18:40:01Z Ven is now known as Guest2480 2017-08-06T18:40:03Z pjb: the interface will be lo0 2017-08-06T18:40:15Z GK1wmSU-deepbook left #lisp 2017-08-06T18:40:40Z phoe: tcpdump: lo0: No such device exists 2017-08-06T18:40:47Z pjb: the equivalent on your system. 2017-08-06T18:40:57Z pjb: lo perhaps 2017-08-06T18:41:00Z phoe: lo 2017-08-06T18:41:01Z phoe: yes. 2017-08-06T18:42:37Z pjb: Also, you may trace it in slime I guess. 2017-08-06T18:42:48Z phoe: Hm. How? 2017-08-06T18:43:16Z pjb: I don't know. Look at slime's sources. 2017-08-06T18:45:12Z watersoul quit (Read error: Connection reset by peer) 2017-08-06T18:45:28Z knobo: iolib has with-open-file, in tests/streams.lisp. 2017-08-06T18:46:06Z watersoul joined #lisp 2017-08-06T18:50:30Z knobo quit (Ping timeout: 240 seconds) 2017-08-06T18:51:46Z TDT joined #lisp 2017-08-06T18:53:35Z Xof quit (Ping timeout: 268 seconds) 2017-08-06T18:54:30Z phoe: I can TCPDUMP all right, but it fails to show me different colors for different flows; it's all one color 2017-08-06T18:55:22Z _death: wireshark 2017-08-06T18:56:27Z pjb: phoe: use font-lock and add a font-lock-keyword to colorize differently < packets from > packets. 2017-08-06T18:56:31Z whoma1 joined #lisp 2017-08-06T18:56:41Z pjb: We have to tell you everything? 2017-08-06T18:56:53Z minion quit (Disconnected by services) 2017-08-06T18:56:55Z minion joined #lisp 2017-08-06T18:57:11Z phoe: wireshark it is. 2017-08-06T18:57:31Z phoe: No, I'm learning. I just realized that TCPDUMP does not seem to colorize packets properly. 2017-08-06T18:57:37Z pjb: That's the easy way. 2017-08-06T18:59:04Z shka_: weh 2017-08-06T18:59:12Z shka_: wireshark is nice 2017-08-06T18:59:37Z shka_: and works on every system 2017-08-06T18:59:43Z shka_: including windows 2017-08-06T18:59:46Z shka_: :-) 2017-08-06T19:00:51Z dTal_ joined #lisp 2017-08-06T19:00:56Z abbe quit (Remote host closed the connection) 2017-08-06T19:00:56Z temporal1 joined #lisp 2017-08-06T19:00:59Z joga_ joined #lisp 2017-08-06T19:01:15Z ramus_ joined #lisp 2017-08-06T19:01:43Z malcom2073 joined #lisp 2017-08-06T19:03:52Z larsen- joined #lisp 2017-08-06T19:04:07Z vlatkoB quit (Remote host closed the connection) 2017-08-06T19:04:40Z Lord_Nightmare2 joined #lisp 2017-08-06T19:06:38Z MerinoBailon joined #lisp 2017-08-06T19:07:22Z nsnc_ joined #lisp 2017-08-06T19:07:53Z whoman quit (*.net *.split) 2017-08-06T19:07:53Z strelox quit (*.net *.split) 2017-08-06T19:07:53Z bailon quit (*.net *.split) 2017-08-06T19:07:53Z foom2 quit (*.net *.split) 2017-08-06T19:07:53Z thorondor[m] quit (*.net *.split) 2017-08-06T19:07:53Z gendl quit (*.net *.split) 2017-08-06T19:07:53Z nsnc quit (*.net *.split) 2017-08-06T19:07:53Z hiq[m] quit (*.net *.split) 2017-08-06T19:07:53Z ArthurAGleckler[ quit (*.net *.split) 2017-08-06T19:07:53Z Sovereign_Bleak quit (*.net *.split) 2017-08-06T19:07:54Z joga quit (*.net *.split) 2017-08-06T19:07:54Z TeMPOraL quit (*.net *.split) 2017-08-06T19:07:54Z Merv quit (*.net *.split) 2017-08-06T19:07:54Z vhost- quit (*.net *.split) 2017-08-06T19:07:54Z Lord_Nightmare quit (*.net *.split) 2017-08-06T19:07:54Z dTal quit (*.net *.split) 2017-08-06T19:07:54Z ramus quit (*.net *.split) 2017-08-06T19:07:54Z tkd quit (*.net *.split) 2017-08-06T19:07:54Z malcom2073_ quit (*.net *.split) 2017-08-06T19:07:54Z mbrock quit (*.net *.split) 2017-08-06T19:07:54Z larsen quit (*.net *.split) 2017-08-06T19:07:54Z drmeister quit (*.net *.split) 2017-08-06T19:07:54Z brucem quit (*.net *.split) 2017-08-06T19:07:54Z eli quit (*.net *.split) 2017-08-06T19:07:54Z GGMethos quit (*.net *.split) 2017-08-06T19:07:58Z Lord_Nightmare2 is now known as Lord_Nightmare 2017-08-06T19:08:52Z brucem_ joined #lisp 2017-08-06T19:10:09Z z3t0 quit (Ping timeout: 240 seconds) 2017-08-06T19:10:46Z ramus_ is now known as ramus 2017-08-06T19:12:47Z nirved quit (Quit: Leaving) 2017-08-06T19:13:02Z z3t0 joined #lisp 2017-08-06T19:14:28Z GGMethos joined #lisp 2017-08-06T19:15:41Z knicklux joined #lisp 2017-08-06T19:16:30Z RichardPaulBck[m quit (Ping timeout: 240 seconds) 2017-08-06T19:16:30Z hdurer[m] quit (Ping timeout: 240 seconds) 2017-08-06T19:16:31Z l04m33[m] quit (Ping timeout: 246 seconds) 2017-08-06T19:16:44Z Jach[m] quit (Ping timeout: 255 seconds) 2017-08-06T19:18:01Z rumbler31 joined #lisp 2017-08-06T19:18:39Z Reinisch quit (Ping timeout: 240 seconds) 2017-08-06T19:18:50Z gendl joined #lisp 2017-08-06T19:18:50Z Merv joined #lisp 2017-08-06T19:18:50Z vhost- joined #lisp 2017-08-06T19:18:50Z tkd joined #lisp 2017-08-06T19:18:50Z mbrock joined #lisp 2017-08-06T19:18:50Z drmeister joined #lisp 2017-08-06T19:19:27Z amerlyq quit (Ping timeout: 260 seconds) 2017-08-06T19:21:36Z amerlyq joined #lisp 2017-08-06T19:21:44Z Reinisch joined #lisp 2017-08-06T19:22:42Z rumbler31 quit (Ping timeout: 258 seconds) 2017-08-06T19:23:11Z Guest2480 is now known as Ven`` 2017-08-06T19:23:18Z joast joined #lisp 2017-08-06T19:25:13Z FreeBirdLjj joined #lisp 2017-08-06T19:29:41Z pjb quit (Read error: Connection reset by peer) 2017-08-06T19:30:50Z pjb joined #lisp 2017-08-06T19:33:52Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-06T19:38:03Z ekinmur joined #lisp 2017-08-06T19:39:17Z safe joined #lisp 2017-08-06T19:40:17Z random-nick quit (Remote host closed the connection) 2017-08-06T19:42:41Z ekinmur quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T19:44:27Z random-nick joined #lisp 2017-08-06T19:49:26Z safe quit (Read error: Connection reset by peer) 2017-08-06T19:49:33Z ekinmur joined #lisp 2017-08-06T19:50:26Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-06T19:56:09Z ekinmur quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T19:59:01Z dendisuhubdy joined #lisp 2017-08-06T20:06:06Z warweasle quit (Quit: Leaving) 2017-08-06T20:07:07Z mishoo quit (Ping timeout: 255 seconds) 2017-08-06T20:16:29Z Bike quit (Remote host closed the connection) 2017-08-06T20:16:56Z Bike joined #lisp 2017-08-06T20:17:36Z pjb quit (Ping timeout: 255 seconds) 2017-08-06T20:19:14Z strelox joined #lisp 2017-08-06T20:19:45Z rumbler31 joined #lisp 2017-08-06T20:24:32Z abbe joined #lisp 2017-08-06T20:24:40Z phinxy joined #lisp 2017-08-06T20:24:40Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-06T20:30:40Z knicklux quit (Remote host closed the connection) 2017-08-06T20:31:47Z Lord_Nightmare quit (Ping timeout: 260 seconds) 2017-08-06T20:33:44Z random-nick quit (Quit: quit) 2017-08-06T20:34:07Z random-nick joined #lisp 2017-08-06T20:35:08Z dendisuhubdy quit 2017-08-06T20:35:37Z Ven`` quit (Read error: Connection reset by peer) 2017-08-06T20:37:00Z RichardPaulBck[m joined #lisp 2017-08-06T20:39:03Z argoneus quit (Remote host closed the connection) 2017-08-06T20:39:11Z knicklux joined #lisp 2017-08-06T20:43:48Z Lord_Nightmare joined #lisp 2017-08-06T20:47:05Z ArthurAGleckler[ joined #lisp 2017-08-06T20:54:29Z davsebamse quit (Read error: Connection reset by peer) 2017-08-06T20:55:24Z davsebamse joined #lisp 2017-08-06T20:55:30Z argoneus joined #lisp 2017-08-06T20:57:39Z shka_ quit (Ping timeout: 240 seconds) 2017-08-06T20:57:54Z davsebamse quit (Read error: Connection reset by peer) 2017-08-06T21:00:17Z davsebamse joined #lisp 2017-08-06T21:02:11Z nullniverse quit (Quit: Leaving) 2017-08-06T21:04:56Z grouzen quit (Ping timeout: 268 seconds) 2017-08-06T21:06:22Z attila_lendvai quit (Quit: Leaving.) 2017-08-06T21:06:22Z davsebamse quit (Read error: Connection reset by peer) 2017-08-06T21:06:41Z davsebamse joined #lisp 2017-08-06T21:07:37Z yeticry joined #lisp 2017-08-06T21:08:20Z varjag quit (Remote host closed the connection) 2017-08-06T21:08:31Z yeticry_ quit (Read error: Connection reset by peer) 2017-08-06T21:08:44Z varjag joined #lisp 2017-08-06T21:13:39Z thorondor[m] joined #lisp 2017-08-06T21:17:35Z hdurer[m] joined #lisp 2017-08-06T21:17:35Z Jach[m] joined #lisp 2017-08-06T21:19:29Z l04m33[m] joined #lisp 2017-08-06T21:19:32Z hiq[m] joined #lisp 2017-08-06T21:21:19Z Sovereign_Bleak joined #lisp 2017-08-06T21:21:23Z rumbler31 joined #lisp 2017-08-06T21:21:57Z rngoodn joined #lisp 2017-08-06T21:22:17Z Achylles quit (Remote host closed the connection) 2017-08-06T21:25:15Z angavrilov quit (Remote host closed the connection) 2017-08-06T21:26:08Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-06T21:30:09Z fkac joined #lisp 2017-08-06T21:33:48Z jamtho joined #lisp 2017-08-06T21:38:41Z Lowl3v3l quit (Remote host closed the connection) 2017-08-06T21:39:19Z safe joined #lisp 2017-08-06T21:41:30Z Karl_Dscc quit (Remote host closed the connection) 2017-08-06T21:41:47Z jmarcian` quit (Ping timeout: 260 seconds) 2017-08-06T21:44:39Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T21:47:50Z varjag quit (Ping timeout: 255 seconds) 2017-08-06T21:51:05Z argoneus quit (Remote host closed the connection) 2017-08-06T21:53:58Z ekinmur joined #lisp 2017-08-06T22:03:10Z argoneus joined #lisp 2017-08-06T22:04:10Z varjag joined #lisp 2017-08-06T22:07:59Z fiddlerwoaroof: Shinmera: I generally use (error "whatever") in situations where the error is a bug: e.g. failing to supply a :initarg when creating a class, etc. 2017-08-06T22:08:16Z fiddlerwoaroof: I use (error 'some-condition) when I actually have an exceptional situation that it makes sense to recover from 2017-08-06T22:08:40Z varjag quit (Ping timeout: 255 seconds) 2017-08-06T22:12:17Z pierpa joined #lisp 2017-08-06T22:13:58Z random-nick quit (Remote host closed the connection) 2017-08-06T22:14:32Z LooneyTunes joined #lisp 2017-08-06T22:14:53Z LooneyTunes quit (Remote host closed the connection) 2017-08-06T22:16:07Z LooneyTunes joined #lisp 2017-08-06T22:17:49Z knicklux quit (Remote host closed the connection) 2017-08-06T22:23:12Z rumbler31 joined #lisp 2017-08-06T22:25:18Z strelox quit (Remote host closed the connection) 2017-08-06T22:28:11Z rumbler31 quit (Ping timeout: 268 seconds) 2017-08-06T22:30:12Z pjb joined #lisp 2017-08-06T22:36:37Z jamtho quit (Ping timeout: 260 seconds) 2017-08-06T22:40:55Z AntiSpamMeta quit (Read error: Connection reset by peer) 2017-08-06T22:41:07Z AntiSpamMeta joined #lisp 2017-08-06T22:42:33Z ekinmur quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T22:44:14Z jamtho joined #lisp 2017-08-06T22:47:22Z ekinmur joined #lisp 2017-08-06T22:48:17Z pierpa quit (*.net *.split) 2017-08-06T22:51:57Z sjl quit (Quit: WeeChat 1.3) 2017-08-06T22:53:01Z sjl joined #lisp 2017-08-06T22:53:23Z pierpa joined #lisp 2017-08-06T22:53:49Z dddddd quit (Quit: Hasta otra..) 2017-08-06T22:56:32Z terpri joined #lisp 2017-08-06T22:59:05Z fkac quit (Remote host closed the connection) 2017-08-06T23:03:21Z Ven joined #lisp 2017-08-06T23:03:44Z capisce joined #lisp 2017-08-06T23:03:45Z zooey quit (Ping timeout: 248 seconds) 2017-08-06T23:03:46Z Ven is now known as Guest47023 2017-08-06T23:05:05Z capisce_ quit (Ping timeout: 240 seconds) 2017-08-06T23:05:35Z djh quit (Ping timeout: 240 seconds) 2017-08-06T23:08:28Z Guest47023 quit (Ping timeout: 260 seconds) 2017-08-06T23:10:46Z zooey joined #lisp 2017-08-06T23:13:41Z ekinmur quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-06T23:14:46Z djh joined #lisp 2017-08-06T23:15:37Z ebzzry joined #lisp 2017-08-06T23:17:50Z pierpa quit (Ping timeout: 260 seconds) 2017-08-06T23:18:09Z neoncontrails joined #lisp 2017-08-06T23:24:05Z rumbler31 joined #lisp 2017-08-06T23:25:11Z quazimodo joined #lisp 2017-08-06T23:25:37Z jamtho quit (Ping timeout: 260 seconds) 2017-08-06T23:28:03Z al-damiri joined #lisp 2017-08-06T23:28:13Z Kaisyu joined #lisp 2017-08-06T23:29:51Z rumbler31 quit (Ping timeout: 268 seconds) 2017-08-06T23:30:04Z whoma1 quit (Quit: Leaving) 2017-08-06T23:37:02Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-06T23:46:44Z quazimodo quit (Read error: Connection reset by peer) 2017-08-06T23:46:59Z quazimodo joined #lisp 2017-08-06T23:50:50Z neoncontrails quit (Remote host closed the connection) 2017-08-06T23:51:29Z neoncontrails joined #lisp 2017-08-06T23:51:44Z slyrus joined #lisp 2017-08-06T23:54:13Z phoe: woah - I can get to play with maclisp and interlisp on SDF 2017-08-06T23:56:44Z Jesin quit (Quit: Leaving) 2017-08-07T00:00:42Z Jesin joined #lisp 2017-08-07T00:01:30Z dTal_ is now known as dTal 2017-08-07T00:15:30Z doesthiswork joined #lisp 2017-08-07T00:21:44Z karswell_ joined #lisp 2017-08-07T00:25:51Z rumbler31 joined #lisp 2017-08-07T00:27:27Z fiddlerwoaroof: how? 2017-08-07T00:29:25Z phoe: fiddlerwoaroof: http://wiki.twenex.org/tutorials:lisp 2017-08-07T00:30:49Z fiddlerwoaroof: cool 2017-08-07T00:30:54Z rumbler31 quit (Ping timeout: 268 seconds) 2017-08-07T00:38:38Z fiddlerwoaroof: I'm not sure what I think of systems that evaluate as soon as you finish a form 2017-08-07T00:39:42Z Xach: you better be sure you've got it right! or else!! 2017-08-07T00:42:54Z axion: Xach: I look forward to the either the day your zpng supports parsing, or I have enough motivation to write a png-read alternative that isn't horriblly slow 2017-08-07T00:46:29Z Xach: axion: won't my parser be slow too? i thought there was no low-hanging per fruit in png-read. 2017-08-07T00:46:43Z Xach: Also I'm pretty sure zpng is a lot slower than a C png generator, too...salza2 ain't all that fast. 2017-08-07T00:47:13Z axion: I find it hard to believe anything would be slower than png-read 2017-08-07T00:47:55Z Xach: i benchmarked chipz (which png-read uses) and found Pierre Mai's Deflate library to be a bit faster. 2017-08-07T00:48:08Z Xach: but nothing like 10x faster that i recall 2017-08-07T00:48:33Z rgrau quit (Ping timeout: 248 seconds) 2017-08-07T00:48:54Z axion: iirc C is over 50x faster, so I'm sure there is a lot of room for improvement 2017-08-07T00:50:10Z axion: and speed is not the only issue with png-read. it chokes on many files otherwise working fine with libpng. i have a few 32x32 images where the chunk size is detected in the gigabytes, and heap exhausts attempting to decode it. 2017-08-07T00:50:44Z Xach: ouch, that's a stinker. 2017-08-07T00:51:34Z axion: Yeah it just may drive me to create the second ever native png parser. So sad we only have 1 option, and not a great one at all 2017-08-07T00:51:48Z fsmunoz: I have a list composed of lists (imported from CSV) and I want to get the list(s) which contains a specific value at a specific position in them, I can't remember what's the best approach for this. 2017-08-07T00:52:02Z axion: FIND 2017-08-07T00:52:10Z fsmunoz: I seldom needed it and I used member and find 2017-08-07T00:52:42Z fsmunoz: right, never used find to get to find something in lists inside a list. Will focus on it, ty! 2017-08-07T00:53:20Z axion: or FIND-IF...just define a custom key lambda 2017-08-07T00:53:30Z Bike: like (find specific-value list-of-lists :key #'seventh) 2017-08-07T00:54:36Z fsmunoz: Bike: that's it, the :key , forgot about that. ty! 2017-08-07T00:54:43Z Xach: it is the key to the solution 2017-08-07T00:55:22Z knicklux joined #lisp 2017-08-07T00:55:57Z axion: I missed the specific position part, ignore the custom lambda if it is close to the head 2017-08-07T00:57:10Z fsmunoz: Yes, for this purpose it is more than enough, thank you all. 2017-08-07T01:23:42Z ekinmur joined #lisp 2017-08-07T01:26:28Z glamas joined #lisp 2017-08-07T01:27:30Z rumbler31 joined #lisp 2017-08-07T01:32:17Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-07T01:34:18Z holycow joined #lisp 2017-08-07T01:41:40Z aeth: 50x? Sounds like a lot of low hanging fruit. I'd expect something like 5x. 2017-08-07T01:44:01Z axion: 53x from my tests 2017-08-07T01:47:41Z glamas quit 2017-08-07T01:47:50Z fsmunoz quit (Ping timeout: 240 seconds) 2017-08-07T01:48:32Z flazh quit (Ping timeout: 260 seconds) 2017-08-07T01:49:10Z z3t0: hi all i am learning common lisp and seem to be misunderstanding how to use setf and getf 2017-08-07T01:49:41Z keviv quit (Remote host closed the connection) 2017-08-07T01:49:56Z axion: getf is for plists. setf is for places 2017-08-07T01:50:14Z axion: are you asking how to set the value of a plist place? 2017-08-07T01:51:11Z z3t0: well i have a data structure like this ( (:name "Bob" :bots (1) ) ) 2017-08-07T01:51:40Z axion: (let ((plist '(:a 1 :b 2 :c3))) (setf (getf plist :b) 999) plist) => (:A 1 :B 999 :C 3) 2017-08-07T01:52:00Z z3t0: I can get the bots list using getf 2017-08-07T01:52:07Z z3t0: but cant seem to set it to nil 2017-08-07T01:52:59Z Bike: (setf (getf list :bots) nil)? 2017-08-07T01:53:06Z axion: oops space between the correct 2017-08-07T01:53:13Z axion: oops 2017-08-07T01:53:18Z axion: laggy connection here sorry 2017-08-07T01:53:29Z axion: oops space between the c and 3 in my example plist 2017-08-07T01:53:36Z axion: but you are correct 2017-08-07T01:55:15Z z3t0: hmm yes youre right. I just spent a minute rewriting what i am trying to do in a simple snippet and it works just fine 2017-08-07T01:55:27Z z3t0: I must be doing something wrong with the functions I have written 2017-08-07T01:55:49Z z3t0: heres what I am doing https://gist.github.com/z3t0/8587009f584d929db4c1ac82a7a7b179 2017-08-07T01:56:07Z z3t0: For some reason when trying to do what i did on line 12 using my actual code i get an error about a particular function not existing 2017-08-07T01:56:12Z z3t0: I'll keep debugging :) 2017-08-07T01:57:14Z axion: which particular function? 2017-08-07T01:57:23Z axion: and what exactly are you calling? 2017-08-07T01:58:49Z z3t0: I'll paste a snippet in a bit, trying to clean up my code right now 2017-08-07T01:59:19Z z3t0: but the issue seems to be that setf's expansion results in (setf FUNCTION ...) for some reason a function ends up in the expansion when it should be the evaluation of said function 2017-08-07T01:59:44Z z3t0: oh... I seem to have my arguments reversed using (push) 2017-08-07T01:59:53Z dlowe joined #lisp 2017-08-07T02:00:01Z z3t0: I think it's fixed now. 2017-08-07T02:00:05Z axion: Are you using SLIME? 2017-08-07T02:00:08Z glamas joined #lisp 2017-08-07T02:00:09Z dlowe: I made a thing https://github.com/dlowe-net/stencl 2017-08-07T02:00:16Z z3t0: yes slime, axion 2017-08-07T02:00:28Z axion: Pay attention to eldoc (the api signature in the echo area) :) 2017-08-07T02:01:51Z aeth: z3t0: What are you trying to do with that data structure? Depending on what you're doing, a hash-table might be a better fit. 2017-08-07T02:02:19Z z3t0: aeth: im almost certain a hash table is a better structure, but im just learning common lisp at the moment so not focusing on details as much 2017-08-07T02:02:25Z axion: He's new to the language 2017-08-07T02:02:34Z axion: He's just trying to get a feel I think 2017-08-07T02:03:32Z axion: z3t0: But yes, we also have association lists, hash tables, vectors, and more complex arrays for collections 2017-08-07T02:03:35Z smokeink joined #lisp 2017-08-07T02:05:51Z aeth: If you're just trying to get the feel of plists, you should also be aware of alexandria's doplist, which I personally tend to use most of the time plists come up. 2017-08-07T02:06:26Z aeth: It has a few other plist-related functions/macros 2017-08-07T02:08:30Z aeth: Everything in alexandria should basically be treated as part of the language. 2017-08-07T02:10:16Z axion: I strongly disagree 2017-08-07T02:10:21Z z3t0: aeth: iv seen some of alexandria and it seems very useful 2017-08-07T02:10:43Z z3t0: Also right now i am mostly working through "Practical Commonlisp" and trying to implement one of my own project ideas 2017-08-07T02:15:34Z brendos joined #lisp 2017-08-07T02:17:36Z fkac joined #lisp 2017-08-07T02:24:11Z whoman joined #lisp 2017-08-07T02:24:42Z Suzuran42 joined #lisp 2017-08-07T02:24:54Z aeth: axion: I don't mean to use alexandria if there's something else more efficient and it needs to be efficient, if that's what you mean. 2017-08-07T02:26:16Z aeth: It's not unlike the core language itself, though, where there are a hundred ways to do something. 2017-08-07T02:26:18Z axion: That's part of it. Alexandria favors convenience over efficiency for quite a few things. Moreso though, it is a library like any other library, separate from a language defined in a standards body. 2017-08-07T02:27:52Z kobain quit (Ping timeout: 255 seconds) 2017-08-07T02:28:04Z Suzuran quit (Ping timeout: 246 seconds) 2017-08-07T02:28:04Z Suzuran42 is now known as Suzuran 2017-08-07T02:28:39Z rumbler31 joined #lisp 2017-08-07T02:29:14Z aeth: axion: That's not quite the case imo. Some libraries are key libraries in a language, and some aren't. And alexandria is the only one undisputably (well, anything can be argued on the Internet) in the quasi-standard category for CL. 2017-08-07T02:29:46Z aeth: to the point where e.g. name-conflicting with alexandria is a bad idea, and duplicating something in alexandria without good reason (efficiency is a good reason) is a bad idea 2017-08-07T02:30:49Z axion: You can consider it how you wish. It is, as you say, your opinion. 2017-08-07T02:31:41Z aeth: Other very important libraries include UIOP (which, ironically, name conflicts with alexandria), cl-ppcre, cffi, bordeaux-threads, etc. With alexandria, you are probably going to have these in your dependencies (as dependencies of dependencies) anyway for any large project. 2017-08-07T02:31:44Z kobain joined #lisp 2017-08-07T02:32:08Z axion: Let's just define all libraries as part of the standard while we're at it. 2017-08-07T02:32:31Z aeth: All of the big libraries, especially alexandria, would have things that would be candidates for inclusion in future standards of the language, except that CL won't have a future standard. 2017-08-07T02:33:12Z aeth: Because that's how things like loop and CLOS became standard... they started as additions. 2017-08-07T02:33:27Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-07T02:34:01Z aeth: But alexandria is especially full of things that are small, fairly trivial, and good candidates for inclusion in a future standard because it goes for major things that were overlooked. 2017-08-07T02:35:15Z flazh joined #lisp 2017-08-07T02:37:43Z aeth: (Of course, even larger libraries like regex and JSON support would be good candidates for future inclusion, based on current language design trends...) 2017-08-07T02:37:46Z axion: Not much was overlooked. CL was standardized to defragment the Lisp community, taking the good bits from several Lisps over decades. A language should be small, especially for deployment, and especially since libraries exist for a reason. 2017-08-07T02:38:25Z axion: Considering them part of the language, and in CL's case is a big difference than other languages, considering it is registered as a standard. 2017-08-07T02:38:31Z axion: is a mistake 2017-08-07T02:38:34Z aeth: The main reason why I'm using Common Lisp and not portable Scheme is because a small language is too small to be useful. 2017-08-07T02:39:06Z aeth: And CL's feature set is more robust (imo, of course) than the various equivalent additions to Scheme, especially with things like sequences 2017-08-07T02:43:21Z aeth: The CL standard is actually missing important parts that would greatly help with efficient code, such as giving more information to macros and making structs more robust for when struct-style objects are better than dynamic objects (CLOS objects) 2017-08-07T02:44:41Z Bike: robust? 2017-08-07T02:45:15Z axion: I'm actually surprised your argument didn't mention threads or Unicode, but the fact is, they are not part of the language, despite how ubiquitous certain libraries or implementations that support them are. 2017-08-07T02:45:42Z Bike: surely the intent here is that they ought to be 2017-08-07T02:46:04Z axion: Quite different than "let's consider them as such" 2017-08-07T02:46:24Z axion: For a standardized language nonetheless. 2017-08-07T02:46:30Z neoncontrails quit (Ping timeout: 240 seconds) 2017-08-07T02:47:18Z aeth: Bike: one example: you can't have an array of structs, like in a lot of languages... or, rather, you can, but it'll really just be a bunch of pointers 2017-08-07T02:47:30Z neoncontrails joined #lisp 2017-08-07T02:49:20Z fiddlerwoaroof: aeth: that's really a matter of implementation optimization 2017-08-07T02:49:43Z fiddlerwoaroof: You probably could figure out a way to add a specialized array to sbcl for such things 2017-08-07T02:49:44Z Bike: is that common? i don't think you can even do it in java 2017-08-07T02:49:59Z Bike: CL semantics basically forbid it, which is presumably what aeth means 2017-08-07T02:50:31Z fiddlerwoaroof: why? 2017-08-07T02:50:51Z Bike: because you store a struct in an array and then take it back out it still has to be eq to the original. 2017-08-07T02:51:14Z aeth: Anyway, my point is that the more you can do with specialized arrays, structs, etc., the more you don't need foreign code, which means the more efficient things can be because there's always going to be a CFFI overhead. 2017-08-07T02:52:01Z TDT quit (Quit: TDT) 2017-08-07T02:52:14Z fiddlerwoaroof: Hmm, couldn't you move the struct into contiguous memory and then rewrite all the pointers to it? 2017-08-07T02:52:41Z aeth: Basically, the general idea being to give libraries more ability to write things efficiently. 2017-08-07T02:52:46Z fiddlerwoaroof: You'd probably still need some sort of tag to express the struct's layout 2017-08-07T02:53:18Z fiddlerwoaroof: but I don't see why the struct in the array couldn't be eq to the original one 2017-08-07T02:54:29Z fiddlerwoaroof: But, also, It's not clear that an array of structs has much of a benefit over encoding the same data as a 2d array 2017-08-07T02:54:30Z Bike: you can have the same struct object in multiple arrays, etc 2017-08-07T02:55:32Z fiddlerwoaroof: With appropriate accessor functions, the 2d array should be just as easy to manipulate as an array of structs 2017-08-07T02:55:53Z Bike: why 2D? 2017-08-07T02:56:31Z fiddlerwoaroof: Well, that way one index represents which "struct" you're dealing with and the other indicates which slot of the struct 2017-08-07T02:56:38Z Bike: well, that's not the right question. the types of the slots can be heterogenuous. 2017-08-07T02:57:30Z neoncontrails quit (Remote host closed the connection) 2017-08-07T02:57:49Z aeth: fiddlerwoaroof: Actually, I do heavily use structs of 2D arrays at the moment. I'm not sure if this is optimal, though, because I have to separate them by type as Bike said. 2017-08-07T02:57:59Z pjb: You could macroify arrays of struct into struct of arrays. 2017-08-07T02:58:08Z neoncontrails joined #lisp 2017-08-07T03:01:44Z damke_ joined #lisp 2017-08-07T03:02:16Z warweasle joined #lisp 2017-08-07T03:02:22Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-07T03:02:24Z rngoodn joined #lisp 2017-08-07T03:02:27Z phinxy quit (Read error: Connection reset by peer) 2017-08-07T03:02:58Z quazimodo quit (Read error: Connection reset by peer) 2017-08-07T03:03:03Z elfmacs joined #lisp 2017-08-07T03:03:16Z quazimodo joined #lisp 2017-08-07T03:03:23Z rngoodn quit (Client Quit) 2017-08-07T03:08:09Z daemoz quit (Remote host closed the connection) 2017-08-07T03:08:28Z daemoz joined #lisp 2017-08-07T03:09:38Z eazar001 joined #lisp 2017-08-07T03:11:36Z beach: Good morning everyone! 2017-08-07T03:11:44Z fiddlerwoaroof: morning beach! 2017-08-07T03:15:33Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T03:15:55Z marvin2 quit 2017-08-07T03:17:03Z elfmacs: ^-^ 2017-08-07T03:17:03Z damke_ joined #lisp 2017-08-07T03:19:50Z damke joined #lisp 2017-08-07T03:21:32Z warweasle quit (Read error: Connection reset by peer) 2017-08-07T03:21:55Z warweasle joined #lisp 2017-08-07T03:22:23Z damke_ quit (Read error: Connection reset by peer) 2017-08-07T03:24:10Z beach: elfmacs: Are you new here? I don't recognize your nick. 2017-08-07T03:25:03Z elfmacs: i am a newbie here 2017-08-07T03:25:11Z damke_ joined #lisp 2017-08-07T03:25:25Z beach: What brings you to #lisp? 2017-08-07T03:26:03Z elfmacs: curiosity? maybe 2017-08-07T03:26:10Z beach: Fair enough. 2017-08-07T03:26:44Z elfmacs: ^_^ 2017-08-07T03:27:16Z schoppenhauer quit (Ping timeout: 268 seconds) 2017-08-07T03:27:29Z koenig: I'm more or less here because of curiousity too. 2017-08-07T03:27:43Z koenig: Curiousity is a good thing. :) 2017-08-07T03:28:11Z damke__ joined #lisp 2017-08-07T03:28:27Z beach agrees. 2017-08-07T03:28:30Z damke quit (Ping timeout: 268 seconds) 2017-08-07T03:28:32Z schoppenhauer joined #lisp 2017-08-07T03:29:02Z shiranuidong joined #lisp 2017-08-07T03:30:09Z rumbler31 joined #lisp 2017-08-07T03:30:37Z axion: Is there a way to perform set operations on a pathname? For example if i start collecting files recursively in #p"/foo", and I come across #p"/foo/bar/x" and #p"/foo/bar/baz/y", I would like to easily create the 2 strings "bar/x" and "bar/baz/y" by removing the root prefix I started in 2017-08-07T03:30:39Z damke_ quit (Read error: Connection reset by peer) 2017-08-07T03:32:43Z beach: clhs 19.4 2017-08-07T03:32:43Z specbot: The Filenames Dictionary: http://www.lispworks.com/reference/HyperSpec/Body/c_filena.htm 2017-08-07T03:32:46Z holycow quit (Quit: leaving) 2017-08-07T03:33:05Z beach: axion: You have the operations in that ↑ section. 2017-08-07T03:33:20Z axion: Is there anything of particular notice. I have been scoping that and uiop for a bit 2017-08-07T03:33:22Z axion: ? 2017-08-07T03:33:37Z neoncontrails joined #lisp 2017-08-07T03:34:59Z beach: It looks to me like you need to work on the namestring instead. 2017-08-07T03:35:17Z rumbler31 quit (Ping timeout: 268 seconds) 2017-08-07T03:35:54Z damke joined #lisp 2017-08-07T03:38:54Z warweasle quit (Quit: Leaving) 2017-08-07T03:38:59Z damke__ quit (Ping timeout: 268 seconds) 2017-08-07T03:39:54Z axion: Hmm, alright. 2017-08-07T03:42:46Z beach: axion: Though I am not an expert in the domain of pathnames. 2017-08-07T03:45:36Z ryanwatkins joined #lisp 2017-08-07T03:46:12Z fkac quit (Remote host closed the connection) 2017-08-07T03:46:24Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-07T03:50:08Z fkac joined #lisp 2017-08-07T03:51:22Z fkac is now known as fkoc 2017-08-07T03:51:50Z fiddlerwoaroof: axion: I've been doing a bunch of this 2017-08-07T03:52:04Z fiddlerwoaroof: Really, the most portable, least annoying thing is to lean heavily on things like UIOP 2017-08-07T03:52:43Z axion: I use UIOP for everything 2017-08-07T03:52:50Z axion: But it doesnt offer a clean way to do the above 2017-08-07T03:53:36Z rngoodn joined #lisp 2017-08-07T03:54:30Z fiddlerwoaroof: Do you control the filenames? or are they passed in? 2017-08-07T03:55:48Z fiddlerwoaroof: O tjoml tjat 2017-08-07T03:55:52Z fiddlerwoaroof: ... 2017-08-07T03:56:03Z basket joined #lisp 2017-08-07T03:56:04Z fiddlerwoaroof: I think UIOP:ENOUGH-PATHNAME does what you want? 2017-08-07T03:57:14Z fiddlerwoaroof: (uiop:enough-pathname #p"/foo/bar/x" #p"/foo/") #| => #p"bar/baz" |# 2017-08-07T03:57:14Z damke_ joined #lisp 2017-08-07T03:57:50Z fiddlerwoaroof: The second argument needs to be a directory pathname 2017-08-07T03:57:56Z fiddlerwoaroof: e.g. it has to end in a slash 2017-08-07T03:59:47Z glamas quit (Remote host closed the connection) 2017-08-07T04:00:01Z axion: fiddlerwoaroof: I stand corrected. uiop saves the day again. thank you very much. 2017-08-07T04:00:34Z damke quit (Ping timeout: 268 seconds) 2017-08-07T04:00:41Z drmeister: I checked loop for blackbelts and a couple of other loop example web pages before I ask this. 2017-08-07T04:00:46Z drmeister: How do I loop over an alist? 2017-08-07T04:00:58Z drmeister: And get the successive key/value pairs 2017-08-07T04:01:33Z fiddlerwoaroof: (loop for (a . b) in alist collect (+ a b)) 2017-08-07T04:02:20Z damke joined #lisp 2017-08-07T04:02:49Z drmeister: Arrrrr - thank ye! 2017-08-07T04:03:39Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T04:03:55Z drmeister: It's basically the destructuring capability of loop - right? 2017-08-07T04:04:05Z fiddlerwoaroof: yeah 2017-08-07T04:04:41Z fiddlerwoaroof: so B collects the CDR of each item in the alist 2017-08-07T04:05:02Z fiddlerwoaroof: And, in this case, that is the value of the alist's entry 2017-08-07T04:06:34Z axion: fiddlerwoaroof: this seems sufficient: http://paste.lisp.org/display/352771 2017-08-07T04:06:53Z fiddlerwoaroof: Yeah 2017-08-07T04:07:07Z fiddlerwoaroof: Although, you might throw some kind of error with a use-value restart 2017-08-07T04:07:39Z damke_ joined #lisp 2017-08-07T04:08:02Z fiddlerwoaroof: Instead of ensure-directory-pathname 2017-08-07T04:08:36Z fiddlerwoaroof: I don't know, your way is more convenient, but the error might prevent unintended effects... 2017-08-07T04:09:26Z axion: Well the purpose of this is for the user to specify a directory to recursively scan for files, and produces a list of results of this function 2017-08-07T04:09:55Z axion: So it would be nice for the user not to care about the trailing slash, since this is the high level api 2017-08-07T04:10:12Z fiddlerwoaroof: Yeah, I don't really have an opinion, just that sometime being a little bit stricter makes your application more reliable. 2017-08-07T04:10:53Z fiddlerwoaroof: And, thanks to restarts, in CL we can be both strict and convenient at the same time :) 2017-08-07T04:11:03Z damke quit (Ping timeout: 268 seconds) 2017-08-07T04:11:29Z axion: yep. i just wish more people used conditions/restarts. it's beyond powerful 2017-08-07T04:14:08Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T04:14:34Z aindilis quit (Ping timeout: 276 seconds) 2017-08-07T04:15:10Z elfmacs quit (Ping timeout: 240 seconds) 2017-08-07T04:17:24Z quazimodo quit (Ping timeout: 260 seconds) 2017-08-07T04:18:13Z xrash joined #lisp 2017-08-07T04:18:23Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-07T04:20:42Z aindilis joined #lisp 2017-08-07T04:24:09Z quazimodo joined #lisp 2017-08-07T04:25:34Z test1600 joined #lisp 2017-08-07T04:26:16Z Bike quit (Ping timeout: 258 seconds) 2017-08-07T04:26:17Z fiddlerwoaroof: Yeah 2017-08-07T04:26:53Z fiddlerwoaroof: One issue I have with a lot of introducitons to programming languages is that they focus on things that every language can do without bringing out what's interesting about a particular one 2017-08-07T04:27:37Z beach: That's a very good point. 2017-08-07T04:27:55Z fiddlerwoaroof: PCL is pretty good in this respect: the chapters on CLOS, restarts and such come soon enough and he does a pretty good job of motivating them 2017-08-07T04:31:17Z sjl quit (Ping timeout: 260 seconds) 2017-08-07T04:31:47Z rumbler31 joined #lisp 2017-08-07T04:33:49Z borei quit (Ping timeout: 255 seconds) 2017-08-07T04:35:29Z fiddlerwoaroof: One of my coworkers has been complaining about the lack of curly braces in Lisps 2017-08-07T04:35:37Z fiddlerwoaroof: so, I'm going to show him this tomorrow: http://paste.lisp.org/+7K7C 2017-08-07T04:37:01Z pjb quit (Ping timeout: 255 seconds) 2017-08-07T04:38:20Z wooden quit (Read error: Connection reset by peer) 2017-08-07T04:38:41Z wooden joined #lisp 2017-08-07T04:38:56Z mishoo joined #lisp 2017-08-07T04:39:29Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-07T04:41:23Z glamas joined #lisp 2017-08-07T04:42:23Z damke_ joined #lisp 2017-08-07T04:42:49Z glamas quit (Remote host closed the connection) 2017-08-07T04:45:09Z _death: minion: chant 2017-08-07T04:45:09Z minion: MORE INVOLVED 2017-08-07T04:46:31Z fiddlerwoaroof: ? 2017-08-07T04:46:57Z beach: fiddlerwoaroof: I am sorry to hear that you have such narrow-minded coworkers. 2017-08-07T04:47:12Z beach: fiddlerwoaroof: And I am not sure your effort will pay off. 2017-08-07T04:47:22Z fiddlerwoaroof: beach: yeah, although my day job consists in working on an old, ugly java codebase 2017-08-07T04:47:31Z beach: fiddlerwoaroof: But I am sure there is some personal satisfaction in ther. 2017-08-07T04:47:50Z fiddlerwoaroof: Yeah, the point is partly just to demonstrate the flexibility of CL 2017-08-07T04:48:37Z beach: Sure. I am just saying that, according to my experience, showing narrow-minded people the truth is not going to solve the problem. They will just invent new objections. 2017-08-07T04:49:03Z fiddlerwoaroof: Yeah, that's generally true 2017-08-07T04:53:44Z beach: fiddlerwoaroof: It is for that reason that I don't try to convince people that my way is better than their way. It is just extremely frustrating to spend time and energy on something that has no effect. Or worse, that can easily backfire. 2017-08-07T04:54:03Z fiddlerwoaroof: Yeah 2017-08-07T04:54:48Z fiddlerwoaroof: I think I won a minor victory the other day, when I was able to get a mockup of a web ui thing we were working on put together really quickly in Clojure 2017-08-07T04:55:06Z beach: Some narrow-minded people are actually very socially skilled, and if they put their mind to it, they can easily convince other coworkers that they are right and you are wrong, using tactics that I wouldn't dream of such as ridicule. 2017-08-07T04:55:28Z beach: fiddlerwoaroof: That's the way to do it in my opinion. 2017-08-07T04:55:29Z doesthiswork: Its really frustrating when people ignore my narrow minded objections :) 2017-08-07T04:55:39Z beach: Show that you can get the work done, but don't brag about it. 2017-08-07T04:57:27Z ryan_vw quit (Ping timeout: 240 seconds) 2017-08-07T04:59:56Z _death: well, I am often annoyed by punctuation salad when I read clojure, so maybe your cow orker will like that 2017-08-07T05:00:22Z shifty joined #lisp 2017-08-07T05:02:24Z fiddlerwoaroof: Paredit makes clojure's punctuation a lot more manageable 2017-08-07T05:02:31Z fiddlerwoaroof: But, indeed, it looks quite messy 2017-08-07T05:02:59Z _death: I said "read" :)... I don't write clojure (and I don't use paredit either...) 2017-08-07T05:04:43Z _death: if you tend to think about clojure as a lisp, then it becomes more annoying because most of the code is not lispy, and that chaining operator crutch is heavily used 2017-08-07T05:11:00Z ekinmur quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-07T05:13:02Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-07T05:27:59Z Amplituhedron joined #lisp 2017-08-07T05:36:18Z Davidbrcz joined #lisp 2017-08-07T05:37:33Z sellout- joined #lisp 2017-08-07T05:41:05Z smokeink quit (Ping timeout: 268 seconds) 2017-08-07T05:44:08Z Davidbrcz quit (Ping timeout: 240 seconds) 2017-08-07T05:44:36Z Davidbrcz joined #lisp 2017-08-07T05:47:50Z glamas joined #lisp 2017-08-07T05:48:17Z Tristam quit (Ping timeout: 260 seconds) 2017-08-07T05:48:47Z oleo quit (Quit: irc client terminated!) 2017-08-07T05:49:09Z Karl_Dscc joined #lisp 2017-08-07T05:49:22Z Tristam joined #lisp 2017-08-07T05:49:38Z joga_ is now known as joga 2017-08-07T05:50:16Z flip214 quit (Ping timeout: 260 seconds) 2017-08-07T05:50:20Z joga quit (Changing host) 2017-08-07T05:50:20Z joga joined #lisp 2017-08-07T05:51:41Z flip214 joined #lisp 2017-08-07T05:51:41Z flip214 quit (Changing host) 2017-08-07T05:51:42Z flip214 joined #lisp 2017-08-07T05:53:07Z neoncontrails quit (Remote host closed the connection) 2017-08-07T05:53:43Z neoncontrails joined #lisp 2017-08-07T05:53:56Z shka_ joined #lisp 2017-08-07T05:55:25Z neoncont_ joined #lisp 2017-08-07T05:58:03Z Harag joined #lisp 2017-08-07T05:58:03Z Amplituhedron quit (Remote host closed the connection) 2017-08-07T05:58:04Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-07T05:59:37Z safe quit (Read error: Connection reset by peer) 2017-08-07T06:00:44Z vlatkoB joined #lisp 2017-08-07T06:01:32Z sellout- quit (Quit: Leaving.) 2017-08-07T06:06:54Z sz0 joined #lisp 2017-08-07T06:08:33Z Amplituhedron joined #lisp 2017-08-07T06:10:44Z grouzen joined #lisp 2017-08-07T06:14:12Z nirved joined #lisp 2017-08-07T06:14:23Z attila_lendvai joined #lisp 2017-08-07T06:14:25Z flamebeard joined #lisp 2017-08-07T06:14:50Z grouzen quit (Ping timeout: 240 seconds) 2017-08-07T06:15:00Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T06:16:51Z guest4312 joined #lisp 2017-08-07T06:18:15Z moei quit (Quit: Leaving...) 2017-08-07T06:22:00Z damke_ joined #lisp 2017-08-07T06:23:46Z attila_lendvai quit (Quit: Leaving.) 2017-08-07T06:23:51Z attila_lendvai1 joined #lisp 2017-08-07T06:23:51Z attila_lendvai1 is now known as attila_lendvai 2017-08-07T06:23:51Z attila_lendvai quit (Changing host) 2017-08-07T06:23:51Z attila_lendvai joined #lisp 2017-08-07T06:23:56Z attila_lendvai quit (Client Quit) 2017-08-07T06:24:31Z Karl_Dscc quit (Remote host closed the connection) 2017-08-07T06:25:49Z neoncont_ quit (Remote host closed the connection) 2017-08-07T06:26:26Z neoncontrails joined #lisp 2017-08-07T06:30:37Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-07T06:32:06Z drot quit (Quit: Quit.) 2017-08-07T06:34:53Z doesthiswork quit (Quit: Leaving.) 2017-08-07T06:35:09Z drot joined #lisp 2017-08-07T06:36:19Z rumbler31 joined #lisp 2017-08-07T06:39:38Z _cosmonaut_ joined #lisp 2017-08-07T06:41:10Z EvilAngel joined #lisp 2017-08-07T06:41:27Z EvilAngel quit (Client Quit) 2017-08-07T06:41:39Z damke joined #lisp 2017-08-07T06:42:08Z rumbler31 quit (Ping timeout: 268 seconds) 2017-08-07T06:42:45Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T06:42:51Z d4ryus joined #lisp 2017-08-07T06:43:55Z _cosmonaut_ quit (Ping timeout: 246 seconds) 2017-08-07T06:44:56Z _cosmonaut_ joined #lisp 2017-08-07T06:45:51Z cmatei joined #lisp 2017-08-07T06:47:10Z ebzzry quit (Quit: WeeChat 1.9) 2017-08-07T06:48:08Z Murii joined #lisp 2017-08-07T06:50:31Z FreeBirdLjj joined #lisp 2017-08-07T06:53:08Z xrash quit (Ping timeout: 240 seconds) 2017-08-07T06:55:08Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2017-08-07T06:56:16Z xrash joined #lisp 2017-08-07T06:58:01Z sellout- joined #lisp 2017-08-07T07:01:55Z damke quit (Read error: Connection reset by peer) 2017-08-07T07:02:16Z damke joined #lisp 2017-08-07T07:06:25Z shka_ quit (Ping timeout: 255 seconds) 2017-08-07T07:07:53Z Amplituhedron quit (Remote host closed the connection) 2017-08-07T07:10:20Z guest4312 quit (Ping timeout: 260 seconds) 2017-08-07T07:10:20Z whoman quit (Quit: Leaving) 2017-08-07T07:14:56Z schweers joined #lisp 2017-08-07T07:15:42Z Ven joined #lisp 2017-08-07T07:16:06Z Ven is now known as Guest15800 2017-08-07T07:19:02Z Amplituhedron joined #lisp 2017-08-07T07:19:50Z Guest15800 quit (Ping timeout: 240 seconds) 2017-08-07T07:23:02Z Amplituhedron quit (Remote host closed the connection) 2017-08-07T07:25:24Z glamas quit (Remote host closed the connection) 2017-08-07T07:27:48Z flazh quit (Ping timeout: 260 seconds) 2017-08-07T07:28:27Z glamas joined #lisp 2017-08-07T07:29:56Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-07T07:36:21Z jamtho joined #lisp 2017-08-07T07:38:14Z JohnTalent joined #lisp 2017-08-07T07:38:52Z glamas quit (Remote host closed the connection) 2017-08-07T07:38:57Z rumbler31 joined #lisp 2017-08-07T07:39:07Z glamas joined #lisp 2017-08-07T07:43:27Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-07T07:44:07Z Amplituhedron joined #lisp 2017-08-07T07:46:41Z _cosmonaut_ quit (Ping timeout: 248 seconds) 2017-08-07T07:48:08Z varjag joined #lisp 2017-08-07T07:48:40Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-07T07:49:09Z glamas quit (Remote host closed the connection) 2017-08-07T07:49:45Z glamas joined #lisp 2017-08-07T07:50:46Z Amplituhedron quit (Remote host closed the connection) 2017-08-07T07:51:03Z test3332 joined #lisp 2017-08-07T07:55:31Z _cosmonaut_ joined #lisp 2017-08-07T08:00:08Z scymtym quit (Ping timeout: 240 seconds) 2017-08-07T08:01:00Z Amplituhedron joined #lisp 2017-08-07T08:01:05Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-07T08:04:51Z scymtym joined #lisp 2017-08-07T08:05:42Z shka joined #lisp 2017-08-07T08:06:17Z random-nick joined #lisp 2017-08-07T08:08:46Z quazimodo quit (Read error: Connection reset by peer) 2017-08-07T08:09:05Z damke quit (Ping timeout: 268 seconds) 2017-08-07T08:10:12Z _cosmonaut_ joined #lisp 2017-08-07T08:10:41Z damke joined #lisp 2017-08-07T08:12:24Z Amplituhedron quit (Remote host closed the connection) 2017-08-07T08:17:17Z random-nick quit (Read error: Connection reset by peer) 2017-08-07T08:17:19Z random-nickname joined #lisp 2017-08-07T08:22:33Z Amplituhedron joined #lisp 2017-08-07T08:29:23Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-07T08:31:08Z Beetny joined #lisp 2017-08-07T08:34:22Z damke quit (Ping timeout: 268 seconds) 2017-08-07T08:36:10Z damke joined #lisp 2017-08-07T08:38:14Z Lowl3v3l joined #lisp 2017-08-07T08:39:59Z rumbler31 joined #lisp 2017-08-07T08:40:03Z test3332 quit (Quit: Page closed) 2017-08-07T08:41:09Z damke quit (Ping timeout: 268 seconds) 2017-08-07T08:41:19Z knicklux quit (Remote host closed the connection) 2017-08-07T08:44:35Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-07T08:44:55Z _cosmonaut_1 joined #lisp 2017-08-07T08:46:38Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-07T08:49:25Z glamas_ joined #lisp 2017-08-07T08:50:22Z glamas quit (Ping timeout: 255 seconds) 2017-08-07T08:51:38Z Davidbrcz quit (Ping timeout: 268 seconds) 2017-08-07T08:52:08Z _cosmonaut_1 quit (Ping timeout: 240 seconds) 2017-08-07T08:52:40Z _cosmonaut_ joined #lisp 2017-08-07T08:55:27Z glamas joined #lisp 2017-08-07T08:55:34Z Amplituhedron quit (Remote host closed the connection) 2017-08-07T08:57:30Z terpri quit (Ping timeout: 240 seconds) 2017-08-07T08:58:40Z glamas_ quit (Ping timeout: 246 seconds) 2017-08-07T08:58:53Z flazh joined #lisp 2017-08-07T08:59:36Z glamas quit (Remote host closed the connection) 2017-08-07T09:01:31Z Ven joined #lisp 2017-08-07T09:01:55Z Ven is now known as Guest81141 2017-08-07T09:04:20Z glamas joined #lisp 2017-08-07T09:05:49Z Amplituhedron joined #lisp 2017-08-07T09:07:12Z flazh quit (Ping timeout: 260 seconds) 2017-08-07T09:08:35Z Guest81141 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-07T09:15:55Z damke joined #lisp 2017-08-07T09:17:34Z xrash quit (Remote host closed the connection) 2017-08-07T09:20:43Z c_3 quit (Ping timeout: 276 seconds) 2017-08-07T09:21:19Z Ven_ joined #lisp 2017-08-07T09:21:26Z defaultxr quit (Ping timeout: 258 seconds) 2017-08-07T09:23:25Z damke_ joined #lisp 2017-08-07T09:24:55Z damke quit (Ping timeout: 246 seconds) 2017-08-07T09:28:06Z Davidbrcz joined #lisp 2017-08-07T09:29:28Z krator44 quit (Remote host closed the connection) 2017-08-07T09:32:12Z c__ joined #lisp 2017-08-07T09:34:14Z moei joined #lisp 2017-08-07T09:35:51Z Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-07T09:37:25Z xaotuk joined #lisp 2017-08-07T09:41:30Z _krator44 joined #lisp 2017-08-07T09:41:42Z rumbler31 joined #lisp 2017-08-07T09:42:06Z angavrilov joined #lisp 2017-08-07T09:42:49Z closkar joined #lisp 2017-08-07T09:43:14Z mazoe joined #lisp 2017-08-07T09:44:37Z serviteur joined #lisp 2017-08-07T09:44:50Z closkar left #lisp 2017-08-07T09:45:55Z rumbler31 quit (Ping timeout: 246 seconds) 2017-08-07T09:48:58Z random-nickname is now known as random-nick 2017-08-07T09:54:51Z marvin2 joined #lisp 2017-08-07T10:03:33Z rgrau joined #lisp 2017-08-07T10:08:51Z glamas quit (Remote host closed the connection) 2017-08-07T10:09:03Z bigos joined #lisp 2017-08-07T10:11:57Z karswell_ quit (Read error: Connection reset by peer) 2017-08-07T10:12:29Z karswell_ joined #lisp 2017-08-07T10:13:20Z damke joined #lisp 2017-08-07T10:14:53Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T10:17:13Z quazimodo joined #lisp 2017-08-07T10:17:38Z damke_ joined #lisp 2017-08-07T10:20:28Z varjag quit (Ping timeout: 258 seconds) 2017-08-07T10:21:03Z damke quit (Ping timeout: 268 seconds) 2017-08-07T10:24:57Z jamtho quit (Ping timeout: 240 seconds) 2017-08-07T10:26:21Z random-nick quit (Remote host closed the connection) 2017-08-07T10:29:49Z random-nick joined #lisp 2017-08-07T10:32:56Z damke joined #lisp 2017-08-07T10:33:35Z axion: if i make an array with ":element-type `(unsigned-byte ,var)", can i somehow quasiquote to set bit depth in a (declare (type ..)) as well? 2017-08-07T10:34:24Z beach: Where would you get the parameter from? 2017-08-07T10:35:14Z elfmacs joined #lisp 2017-08-07T10:35:14Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T10:35:17Z axion: this is in a function, with an outer let binding for bit-depth 2017-08-07T10:35:57Z beach: How does it make sense to have different element type for different invocations of the function? 2017-08-07T10:36:23Z damke_ joined #lisp 2017-08-07T10:36:24Z axion: sec, i'll show you what i'm trying to do 2017-08-07T10:36:26Z c__ quit (Read error: Connection reset by peer) 2017-08-07T10:36:34Z beach: Uh oh. 2017-08-07T10:36:45Z axion: https://github.com/mfiano/png-read/commit/acada0fef9abf5e23b1c87da112a32cdefe5cb9d#diff-0796c5e4940d0df54ecc216373265fdeR134 2017-08-07T10:36:45Z c__ joined #lisp 2017-08-07T10:36:51Z beach fears a huge paste with (to him) incomprehensible code. 2017-08-07T10:36:58Z axion: this line, instead needs to be 16 or 8...actually the value of bd 2017-08-07T10:37:36Z raynold quit (Quit: Connection closed for inactivity) 2017-08-07T10:37:52Z beach: Which line? 2017-08-07T10:37:57Z axion: except i rewrote it without using loop, so i'm trying to use (declare (type ...) explicitly 2017-08-07T10:38:12Z beach: I see 50 or so lines. 2017-08-07T10:38:18Z axion: the link includes 134 at the end 2017-08-07T10:38:26Z axion: it should jump and highlight that line 2017-08-07T10:38:56Z damke quit (Ping timeout: 268 seconds) 2017-08-07T10:39:03Z JohnTalent: What is the method or APIs to try to program in Lisp as much as possible at the browser-client? 2017-08-07T10:39:25Z phoe: JohnTalent: browser-client, you mean the web browser? 2017-08-07T10:40:03Z beach: axion: It doesn't make much sense for a declaration to be one thing in one invocation and a different thing in a different invocation. 2017-08-07T10:40:17Z beach: axion: Declarations are so that the compiler can check things and generate faster code. 2017-08-07T10:40:28Z beach: axion: But if it is a variable, then the compiler can do nothing. 2017-08-07T10:40:55Z axion: This is |3b|'s doing, but he made a mistake. THis function is called for (unsigned-byte 8) or (unsigned-byte 16) arrays, and as it stands it will fail on 16 2017-08-07T10:41:06Z axion: this one line is responsible 2017-08-07T10:41:23Z beach: axion: If you want that kind of stuff, you need to make two versions of the function, or at least of the part that depends on the depth. 2017-08-07T10:41:39Z beach: axion: You can do that with a macro that more-or-less duplicates its body. 2017-08-07T10:42:25Z JohnTalent: phoe: indeed. 2017-08-07T10:42:47Z axion: beach: Yeah, if you haven't noticed, I am adding type declarations to png-read, and so far I've made it almost 4x as fast, but some kinks to iron out. The code is probably some of the ugliest I've seen, and a complete rewrite is my second option, because moving things around is a bit difficult with this mess. 2017-08-07T10:42:56Z damke joined #lisp 2017-08-07T10:43:27Z rumbler31 joined #lisp 2017-08-07T10:43:48Z phoe: JohnTalent: there's JSCL that allows you to spin up an (incomplete) CL implementation in your web browser. 2017-08-07T10:43:59Z beach: axion: No, I didn't notice, because I apply "context-free" reading of the code (not understanding what it is doing). But like I said, wrap the entire thing in a macro, and create two versions of the body, or two separate functions, one version for each type. 2017-08-07T10:44:13Z phoe: There's multiple libraries for generating HTML, CSS and JS from Lisp. 2017-08-07T10:44:14Z axion: Right ok. 2017-08-07T10:44:32Z phoe: For HTML I use CL-WHO, for JS - Parenscript, for CSS - there's a bunch of them. 2017-08-07T10:44:42Z beach: axion: This is a necessity, because in order to benefit from compiler optimizations, the compiler must be able to optimize in two different ways in two different parts of the code. 2017-08-07T10:45:01Z JohnTalent: phoe: ok! 2017-08-07T10:45:16Z phoe: JohnTalent: What do you want to do? 2017-08-07T10:45:31Z JohnTalent: phoe: create a simple BBS system. 2017-08-07T10:45:41Z beach: axion: You can try a type such as (or (simple-array ..) (simple-array ..)), but I doubt the compiler would be able to take advantage of that. 2017-08-07T10:45:43Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T10:45:48Z phoe: JohnTalent: you can use Hunchentoot as your web server. 2017-08-07T10:46:06Z phoe: There are also multiple web frameworks for Lisp; I was looking at Lucerne recently, it looked rather nice. 2017-08-07T10:46:42Z Bike joined #lisp 2017-08-07T10:46:42Z damke_ joined #lisp 2017-08-07T10:46:44Z phoe: There's also #lispweb that seems somewhat populated. 2017-08-07T10:46:56Z axion: beach: It actually did...on SBCL at least, but probably not a good idea 2017-08-07T10:47:28Z JohnTalent: phoe: thank you so much! 2017-08-07T10:47:32Z beach: I didn't look at what the code does, but I am pretty sure you can get better optimization if you duplicate. 2017-08-07T10:47:38Z JohnTalent: phoe: I suppose SBCL is the soup of the day? 2017-08-07T10:48:10Z beach: axion: We did that for the sequence functions as we showed in our ELS paper this year. 2017-08-07T10:48:11Z rumbler31 quit (Ping timeout: 268 seconds) 2017-08-07T10:48:11Z damke quit (Ping timeout: 268 seconds) 2017-08-07T10:48:26Z axion: I agree. I will do that. 2017-08-07T10:48:30Z axion: Thanks by the way. 2017-08-07T10:48:49Z KZiemian joined #lisp 2017-08-07T10:49:12Z axion: phoe: I think I've told you about cl-who. I wouldn't go recommending it if even the author will not recommend it anymore. 2017-08-07T10:49:34Z phoe: axion: oh. What should I use instead? 2017-08-07T10:49:50Z phoe: JohnTalent: soup of the day? nah. It's a pretty mature, stable and popular implementation. 2017-08-07T10:49:52Z axion: I had a talk with Edi through email, where he stated that he recommends other libraries than his own in his Common Lisp Recipes book because of major problems with it. 2017-08-07T10:49:54Z KZiemian: phoe: I send some commits to CLUS, half of them are notations of repeating files 2017-08-07T10:49:56Z phoe: soup of the decade perhaps. 2017-08-07T10:50:04Z phoe: KZiemian: I saw, thanks! 2017-08-07T10:50:25Z phoe: JohnTalent: disregard what I said about CL-WHO then - there are better alternatives than that. 2017-08-07T10:50:26Z JohnTalent: phoe: I speak of the ephermal that is software. As in 'whatever happened to jQuery?..RIP!' lol. 2017-08-07T10:50:31Z KZiemian: phoe: I don't know that I will do something more before weekend, so if you can 2017-08-07T10:50:38Z axion: phoe: Many these days prefer spinneret, and if you look the author is active maintaining it. It is a very nice library and doesn't have the same types of problems as cl-who. 2017-08-07T10:50:54Z phoe: axion: I don't know this library. I'll take a look at it, thanks! 2017-08-07T10:50:57Z phoe: JohnTalent: ^ 2017-08-07T10:50:58Z JohnTalent: JohnTalent: When I was in this room 15 years ago, SBCL was in alpha or some such thing. I'll bet it's great now! 2017-08-07T10:51:02Z axion: Sure, you're welcome. 2017-08-07T10:51:04Z KZiemian: phoe: look at few first and check if this is right way to do 2017-08-07T10:52:52Z phoe: KZiemian: 2017-08-07T10:52:53Z phoe: clhs * 2017-08-07T10:52:53Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/a_st.htm 2017-08-07T10:52:53Z JohnTalent: axion: thank you! 2017-08-07T10:53:02Z JohnTalent: :) 2017-08-07T10:53:04Z JohnTalent: happy happy. 2017-08-07T10:53:19Z phoe: KZiemian: these are the vars you are looking for, http://www.lispworks.com/documentation/HyperSpec/Body/25_aa.htm 2017-08-07T10:53:22Z axion: No problem :) 2017-08-07T10:53:40Z phoe: other than that, I took a glance - fantastic work, thanks! 2017-08-07T10:54:16Z JohnTalent: I am contemplating using MongoDB for the database? 2017-08-07T10:54:32Z JohnTalent: Or should I just 'brown bag' my own database? 2017-08-07T10:54:45Z JohnTalent: The only bonus with MongoDB is resume rebuilder. 2017-08-07T10:55:06Z phoe: JohnTalent: I know little about databases, but I've heard that nobody ever got fired for choosing PostgreSQL. 2017-08-07T10:55:30Z terpri joined #lisp 2017-08-07T10:55:35Z JohnTalent: phoe: PostGreQL is nice. I used it's expensive cousin Ingres back in 1995. 2017-08-07T10:55:40Z axion: JohnTalent: I would recommend using datafly and sxql. 2017-08-07T10:55:48Z JohnTalent: everything is nosql these days. 2017-08-07T10:55:51Z JohnTalent: axion: Okay! 2017-08-07T10:56:13Z axion: They are lispy dsl's for any-sql...well I use it for sqlite, but I know it supports others. 2017-08-07T10:56:38Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-07T10:56:44Z axion: Whatever you do, stay away from cl-sql. That is littered with bugs and pretty ancient 2017-08-07T10:57:47Z JohnTalent: Okay good tip. 'Don't cross the streams!' Thanks again Axion! 2017-08-07T10:57:57Z axion: Have fun and welcome back 2017-08-07T10:58:06Z beach: JohnTalent: What was your nick back then? 2017-08-07T10:58:25Z JohnTalent: axion: Who kicked out all the rude people? :/ 2017-08-07T10:58:34Z JohnTalent: beach: I think it was OpenKern. 2017-08-07T10:58:42Z loke: JohnTalent: I think they grew up. :-) 2017-08-07T10:58:56Z JohnTalent: I've had so many. SK is another one, but less likely in this room. 2017-08-07T10:58:57Z axion: Haha, I'm not sure. I have only been here for about 10 years and it has always been pretty decent. It has its times I suppose. 2017-08-07T10:59:03Z loke: To be honest, all of IRS is a nicer place these days. 2017-08-07T10:59:11Z loke: IRC 2017-08-07T10:59:19Z beach: loke: IRS was never very nice. 2017-08-07T10:59:20Z phoe: JohnTalent: you'll get your own dose of rudeness in due time. no need to provoke it. 2017-08-07T10:59:23Z JohnTalent: loke++; Maybe because I left it! :) 2017-08-07T10:59:35Z JohnTalent: phoe: ha! 2017-08-07T10:59:43Z beach: JohnTalent: Must have been something different. Not that important though. 2017-08-07T10:59:45Z phoe: if you really want though... 2017-08-07T10:59:47Z phoe coughs 2017-08-07T10:59:59Z loke tough phoe 2017-08-07T11:00:03Z phoe: yo momma so lispy you were born in parens 2017-08-07T11:01:04Z phoe: there, enough to kill the discussion. 2017-08-07T11:01:21Z temporal1 is now known as TeMPOraL 2017-08-07T11:01:30Z JohnTalent: beach: sorry you can't find me. Hm johnnyl perhaps? tsk. Silicon Knight. I've had more than a dozen nicks. 2017-08-07T11:01:43Z beach: Heh, OK. 2017-08-07T11:01:54Z JohnTalent: 'tsk' 2017-08-07T11:02:41Z KZiemian: phoe: thank you, I will noted that 2017-08-07T11:02:50Z KZiemian: phoe: so far, so good or not? 2017-08-07T11:02:55Z axion: JohnTalent: caveman2, clack, woo. 3 more libraries I do not do without for webdev these days. Particularly clack, as it allows for writing code that is not tied to a particular webserver. 2017-08-07T11:03:05Z damke joined #lisp 2017-08-07T11:03:10Z beach: The-Fixer? 2017-08-07T11:03:33Z JohnTalent: Anyway, when I was here cmucl was being ported to sbcl and Paul Graham's articles where in-vogure for game and other software development, but on the word by mouth downlow. 2017-08-07T11:05:04Z beach: A lot of stuff has happened since then. 2017-08-07T11:05:15Z JohnTalent: axion: thanks again. I will check them. So many libraries, so little time. I think I'll go through them all. The big one is a stable HTTP connection, be it HttpRequest or otherwise. The other shtuffs I'm not as worried as much. 2017-08-07T11:05:27Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T11:05:57Z JohnTalent: beach: no. 2017-08-07T11:06:14Z damke_ joined #lisp 2017-08-07T11:06:25Z axion: I would also give pavels books a read. 2017-08-07T11:06:35Z jackdaniel: if you look for a bare feature-complete http server, you may want to just use hunchentoot 2017-08-07T11:06:57Z axion: https://leanpub.com/lispwebtales and https://leanpub.com/fullstacklisp - though the latter is still incomplete, but still valuable. 2017-08-07T11:07:39Z jackdaniel: what's more important, it has well written documentation: http://weitz.de/hunchentoot/ 2017-08-07T11:07:46Z JohnTalent: axion: cool. 2017-08-07T11:08:14Z axion: I'm not sure why the latter says minimum $20 when you can click the free to read online button and read it all 2017-08-07T11:08:23Z damke quit (Ping timeout: 258 seconds) 2017-08-07T11:11:06Z phoe: KZiemian: it's good so far. 2017-08-07T11:11:22Z random-nick quit (Remote host closed the connection) 2017-08-07T11:11:45Z damke__ joined #lisp 2017-08-07T11:12:05Z Liu quit (Ping timeout: 240 seconds) 2017-08-07T11:12:51Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T11:14:11Z random-nick joined #lisp 2017-08-07T11:15:03Z KZiemian: phoe: great :). I noted this file with stars, when I ended checking diffs I will go back and check it manualy 2017-08-07T11:15:23Z beach: JohnTalent: Now we have Quicklisp. Did we even have SLIME back then? 2017-08-07T11:16:14Z JohnTalent: beach: Yes indeed, slime was a somewhat new thing back then. 2017-08-07T11:16:14Z _cosmonaut_ joined #lisp 2017-08-07T11:16:15Z dddddd joined #lisp 2017-08-07T11:16:23Z beach: OK. 2017-08-07T11:16:47Z varjag joined #lisp 2017-08-07T11:16:57Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-07T11:18:06Z JohnTalent: I vaguely recall an installer ADF? Not sure if that was #lisp or not though. 2017-08-07T11:18:41Z JohnTalent: so does everyone here use lisp. vim has been my 'forever friend'. 2017-08-07T11:18:49Z JohnTalent: s/lisp/emacs 2017-08-07T11:19:45Z KZiemian: sayoonara 2017-08-07T11:19:48Z KZiemian quit (Quit: Page closed) 2017-08-07T11:20:10Z JohnTalent: I was going to use React. But lisp with macros could suffice in generated some nice js client code. 2017-08-07T11:20:15Z damke__ quit (Ping timeout: 268 seconds) 2017-08-07T11:20:28Z JohnTalent: s/generated/in the generation of 2017-08-07T11:20:32Z jackdaniel: JohnTalent: try parenscript 2017-08-07T11:20:37Z JohnTalent: jackdaniel: okay! :) 2017-08-07T11:20:41Z jackdaniel: if you are after bare js 2017-08-07T11:20:47Z jackdaniel: https://common-lisp.net/project/parenscript/ 2017-08-07T11:21:18Z JohnTalent: great, appreciated, jackdaniel. 2017-08-07T11:21:26Z varjag quit (Ping timeout: 255 seconds) 2017-08-07T11:22:32Z theBlackDragon quit (Ping timeout: 260 seconds) 2017-08-07T11:22:40Z jackdaniel: using react for frontend and CL for backend would be wiser choice though (imo), webdev isn't done in javascript anymore, but its frameworks (not that I'm fond of such ever-changing landscape for webdev :) 2017-08-07T11:22:45Z damke__ joined #lisp 2017-08-07T11:24:35Z sellout- quit (Quit: Leaving.) 2017-08-07T11:24:47Z sellout- joined #lisp 2017-08-07T11:24:56Z JohnTalent: jackdaniel: What is very interesting is WebAssembly. It's essentially Lisp. 2017-08-07T11:25:55Z Okasu joined #lisp 2017-08-07T11:26:14Z Okasu is now known as user3242988 2017-08-07T11:26:18Z user3242988 quit (Client Quit) 2017-08-07T11:26:36Z JohnTalent: jackdaniel: I don't know. Basically React is just a MVC. lisp does this inherited, and when using macros it's like steroids. So many people and teams trying to sell their APIs. Many of them are such a waste in 'work and wait'. 2017-08-07T11:28:04Z ainieco joined #lisp 2017-08-07T11:28:20Z ainieco: hello 2017-08-07T11:28:20Z minion: ainieco, memo from pjb: I have a older replacement for asdf that computes the dependencies automatically, in com.informatimago.tools.make-depends 2017-08-07T11:28:45Z jackdaniel: JohnTalent: yes, webassembly embraces sexpressions, but it doesn't make it lisp 2017-08-07T11:29:10Z jackdaniel: fwiw, when it's in place, it will be possible to write frontend with CL (if somebody writes compiler targetting WASM) 2017-08-07T11:29:28Z _death: JohnTalent: it's certainly not MVC 2017-08-07T11:29:30Z sellout- quit (Ping timeout: 268 seconds) 2017-08-07T11:29:40Z jackdaniel: afair there was some pushback from wasm community for Lisp features (like returning multiple values) 2017-08-07T11:29:44Z ainieco: why https://gist.github.com/anonymous/b5c0ffe198ca5f7538a972e84dee4a3c this is so slow? it uses DFS to find all possible paths between two points 2017-08-07T11:30:01Z bigos quit (Remote host closed the connection) 2017-08-07T11:30:16Z ainieco: ruby version of this runs in 16second but lisp version takes 1 minute to complete for some reason 2017-08-07T11:30:31Z Davidbrcz quit (Ping timeout: 255 seconds) 2017-08-07T11:30:54Z jackdaniel: one thing is that you represent graph nodes as strings 2017-08-07T11:31:12Z jackdaniel: equal is definetely slower than = (for numbers) or eql (for symbols and such) 2017-08-07T11:32:09Z damke__ quit (Ping timeout: 258 seconds) 2017-08-07T11:32:33Z jackdaniel: style note, instead of writing (if (eq foo nil) …) you could write (if (null foo) …) 2017-08-07T11:32:43Z jackdaniel: push-back function is very inefficient for lists 2017-08-07T11:32:48Z jackdaniel: because you traverse whole list 2017-08-07T11:33:18Z jackdaniel: using equalp is inefficient as well, calling set-difference isn't very fast either 2017-08-07T11:33:30Z jackdaniel: you apparently use wrong data structure for your problem 2017-08-07T11:33:42Z jackdaniel: ainieco: ↑ 2017-08-07T11:34:13Z ainieco: jackdaniel: what could i use instead of push to add stuff at the end of list? 2017-08-07T11:34:57Z safe joined #lisp 2017-08-07T11:35:16Z ainieco: i wonder what is the main bottleneck here bacause it was super surprising for me to find out that ruby version is faster 2017-08-07T11:35:19Z phoe: ainieco: why do you want to add stuff onto the back of the list? 2017-08-07T11:35:20Z jackdaniel: pushing at the end of list is inefficient unless you keep track of last cdr 2017-08-07T11:36:04Z phoe: if you want O(1) pushing to back, you can hold a reference to the cons at the back of a list, SETF CDR of that cons, then update the reference 2017-08-07T11:36:06Z JohnTalent: _death: React doesn't do MVC? 2017-08-07T11:36:12Z jackdaniel: Lisp lists are very simple, they don't store any information (like last element), so you have to traverse whole list 2017-08-07T11:36:19Z ainieco: phoe: i'm not sure but i think it's how DFS supposed to work 2017-08-07T11:36:25Z jackdaniel: it might be that Ruby lists are more beefy 2017-08-07T11:37:10Z antoszka: are they arrays/hashes pretending to be lists? 2017-08-07T11:37:12Z JohnTalent: jackdaniel: yes, but you haven't factored in the Time aspect. They'll be a dieing need for a simple feature, then the next thing it's a full cl. But of course this is just speculation. 2017-08-07T11:37:18Z ainieco: jackdaniel: got it, i'll try to use something else instead of lists 2017-08-07T11:38:21Z _death: JohnTalent: no.. it has no such separation, and they even contrasted it with MVC in some of their talks.. there are no controllers, and it's not a framework so you're supposed to maintain a model and use it as a "view"-kind of library 2017-08-07T11:39:19Z damke__ joined #lisp 2017-08-07T11:40:10Z JohnTalent: _death: controller is inferred. Controller IIRC is not much more complicated than a loop and/or a conditional statement. 2017-08-07T11:40:27Z ainieco: is there a function that does (setf x (cons 2 x)) ? 2017-08-07T11:40:50Z JohnTalent: _death: if there is no controller a MV wouldn't have much to do. 2017-08-07T11:41:05Z _death: JohnTalent: ok.. I guess it's time to say that it's not relevant to this channel so we can stop discussing that 2017-08-07T11:41:06Z ainieco: x is a list and 2 is just arbitrary value 2017-08-07T11:41:15Z JohnTalent: _death: okay. so my point is made. 2017-08-07T11:41:33Z TMA: clhs push 2017-08-07T11:41:33Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_push.htm 2017-08-07T11:41:38Z TMA: ainieco: ^ 2017-08-07T11:43:51Z ainieco: thanks 2017-08-07T11:44:33Z rumbler31 joined #lisp 2017-08-07T11:45:36Z ainieco: replaced push-back with just push and now it runs under 1 second! 2017-08-07T11:45:37Z ainieco: thank you! 2017-08-07T11:45:41Z beach: ainieco: Beware, though. If you do that in a function and x is a parameter that happens to be the empty list, then the caller won't see the 2. 2017-08-07T11:47:04Z beach: ainieco: as in (defparameter *l* '()) (defun bla (x) (push 2 x)) (bla *l*) *l* => () [still the empty list] 2017-08-07T11:47:42Z ainieco: beach: got it, thanks! 2017-08-07T11:47:50Z JohnTalent: ainieco: I would add some cacheing or memoizing to that main loop, you're doing an aweful lot in it. 2017-08-07T11:47:52Z beach: In fact, goes for any *l*. 2017-08-07T11:48:02Z karswell_ quit (Read error: Connection reset by peer) 2017-08-07T11:48:14Z Davidbrcz joined #lisp 2017-08-07T11:48:34Z karswell_ joined #lisp 2017-08-07T11:48:57Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-07T11:49:37Z JohnTalent: ainieco: it messes up the clean logic but will be a god send for bigger traversals. 2017-08-07T11:50:00Z ainieco: JohnTalent: do you mean cache/memoization? 2017-08-07T11:50:06Z theBlackDragon joined #lisp 2017-08-07T11:50:10Z JohnTalent: ainieco: yes. 2017-08-07T11:50:27Z jackdaniel: if *puzzle* structure changes it is still eql to itself, so memoization would only introduce bugs in this case 2017-08-07T11:50:41Z ainieco: yeah, it's just a toy but I've got your idea 2017-08-07T11:50:42Z JohnTalent: jackdaniel: yes 2017-08-07T11:51:01Z JohnTalent: jackdaniel: write a single point of access 'trigger' function. 2017-08-07T11:51:54Z jackdaniel: I don't get what you said just now :( 2017-08-07T11:51:58Z JohnTalent: in sql technology it's called a 'dirty bit'. 2017-08-07T11:52:16Z jackdaniel: ah, you mean cache invalidation 2017-08-07T11:52:21Z JohnTalent: and it doesn't need to apply to the whole structure of course, you can fine grain it. 2017-08-07T11:52:47Z JohnTalent: but *that* is messy. 2017-08-07T11:53:26Z beach: ainieco: So you are not after optimal speed? Only for the comparison with Ruby? 2017-08-07T11:53:27Z damke joined #lisp 2017-08-07T11:54:05Z beach: ainieco: If you are not after optimal speed, I strongly advice against the OPTIMIZE proclamation in the beginning. 2017-08-07T11:54:44Z JohnTalent: jackdaniel: yes. 2017-08-07T11:56:01Z damke__ quit (Ping timeout: 268 seconds) 2017-08-07T11:57:09Z marvin2 quit (Read error: Connection reset by peer) 2017-08-07T11:58:29Z damke quit (Ping timeout: 268 seconds) 2017-08-07T11:58:45Z beach: ainieco: On the other hand, if you are interested in better performance, I agree with jackdaniel that you are better off using a symbol for the passable squares, as opposed to a string. Then you can test it with EQ, which is way faster. 2017-08-07T11:58:51Z damke joined #lisp 2017-08-07T11:59:32Z pjb joined #lisp 2017-08-07T12:00:37Z ainieco: beach: i'm after "good enough" speed :) 1m was unacceptable and <1s is really good enough for now 2017-08-07T12:00:39Z ainieco: but your suggestions are really great and helpfull to remember for future 2017-08-07T12:00:48Z beach: ainieco: Furthermore, you generate a lot of garbage when you compute the neighbors. You would be better off creating only the passable neighbors, rather than generating lots of them and filtering afterwards. 2017-08-07T12:01:05Z beach: OK, good luck. 2017-08-07T12:02:42Z beach: ainieco: How do you prevent infinite loops? 2017-08-07T12:02:56Z beach: I don't see what prevents you from going round in circles. 2017-08-07T12:03:08Z ainieco: beach: it's set-difference 2017-08-07T12:03:24Z ainieco: i'm not traversing visited points 2017-08-07T12:03:27Z beach: Ah, yes, I see. 2017-08-07T12:03:35Z beach: That one is slow as well. 2017-08-07T12:04:53Z jackdaniel: "lisp lets you write code fast, and it lets you write fast code, pick whatever suits you ;)" 2017-08-07T12:05:12Z jackdaniel: paraphrase of course 2017-08-07T12:05:15Z beach: jackdaniel: That is still better than most languages. :) 2017-08-07T12:05:24Z ainieco: beach: would it be better to move it in neighbours function and check if neighbour is included in set of visited points? 2017-08-07T12:05:44Z damke_ joined #lisp 2017-08-07T12:05:51Z beach: ainieco: Yes, I think so. 2017-08-07T12:06:11Z beach: ainieco: Then you can use a cheaper FIND or MEMBER. 2017-08-07T12:06:20Z ainieco: great, thanks! 2017-08-07T12:07:08Z jackdaniel: in case you may look for `nil' nodes, I'd advice using member - with find you can't tell, if you found NIL in the list, or if you haven't found it 2017-08-07T12:07:20Z jackdaniel: just a reminder 2017-08-07T12:07:35Z beach: Thanks jackdaniel, I'll try to remember. :) 2017-08-07T12:07:55Z jackdaniel: heh, to ainieco, I'm pretty sure you have memorized it long time ago :p 2017-08-07T12:08:06Z ainieco: jackdaniel: got it 2017-08-07T12:08:06Z beach: Aww! :) 2017-08-07T12:08:21Z damke quit (Ping timeout: 268 seconds) 2017-08-07T12:10:11Z schweers: beach: why is it that *l* in your previous example is still bound to the empty list? 2017-08-07T12:10:27Z phoe: schweers: why shouldn't it be? 2017-08-07T12:10:29Z phoe: look at the defun 2017-08-07T12:10:37Z marvin2 joined #lisp 2017-08-07T12:10:40Z phoe: (defun foo (x) (push 2 x)) 2017-08-07T12:10:52Z phoe: you pushed 2 to X - and X is a local binding 2017-08-07T12:10:54Z schweers: ugh, I’m a moron. Forget I asked 2017-08-07T12:11:17Z phoe: so the local binding now points to (2 . value-of-*l*) 2017-08-07T12:11:24Z phoe: but *l* still points to whatever it pointed to 2017-08-07T12:11:41Z phoe: that's why one needs macros like PUSH, POP, SETF to modify bindings. 2017-08-07T12:12:02Z schweers: yes, I realize that too, was just a brain fart. I thought there was something to parameters and nil in this respect that I didn’t know about 2017-08-07T12:12:07Z damke_ quit (Read error: Connection reset by peer) 2017-08-07T12:12:49Z Bike: don't call yourself a moron for that though. it's a common confusion. 2017-08-07T12:13:10Z phoe: it took me about two months to get it in the beginning. 2017-08-07T12:13:14Z damke_ joined #lisp 2017-08-07T12:13:15Z phoe: like, until I finally got it for good. 2017-08-07T12:14:19Z sellout- joined #lisp 2017-08-07T12:17:05Z Bike quit (Ping timeout: 240 seconds) 2017-08-07T12:18:09Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-07T12:18:38Z hhdave joined #lisp 2017-08-07T12:19:39Z elfmacs quit (Remote host closed the connection) 2017-08-07T12:22:31Z _cosmonaut_ quit (Remote host closed the connection) 2017-08-07T12:24:41Z _cosmonaut_ joined #lisp 2017-08-07T12:25:15Z elfmacs joined #lisp 2017-08-07T12:27:44Z elfmacs quit (Remote host closed the connection) 2017-08-07T12:28:26Z hiiiiii joined #lisp 2017-08-07T12:31:01Z elfmacs joined #lisp 2017-08-07T12:31:46Z karswell_ quit (Ping timeout: 255 seconds) 2017-08-07T12:37:50Z elfmacs quit (Ping timeout: 240 seconds) 2017-08-07T12:39:33Z safe quit (Read error: Connection reset by peer) 2017-08-07T12:39:37Z Kaisyu joined #lisp 2017-08-07T12:40:46Z pjb quit (Ping timeout: 255 seconds) 2017-08-07T12:45:04Z rumbler31 joined #lisp 2017-08-07T12:45:41Z Beetny quit (Ping timeout: 255 seconds) 2017-08-07T12:46:19Z _rumbler31 joined #lisp 2017-08-07T12:48:01Z Murii quit (Ping timeout: 248 seconds) 2017-08-07T12:50:19Z dlowe: schweers: multiple value returns are invaluable in the circumstance where you want a function to change more than one value 2017-08-07T12:51:21Z dlowe: because then you can, say, (multiple-value-setq (num list) (my-function num list)) at the call site 2017-08-07T12:51:31Z _rumbler31 quit (Ping timeout: 268 seconds) 2017-08-07T12:51:37Z fkoc quit (Remote host closed the connection) 2017-08-07T12:51:43Z quazimodo joined #lisp 2017-08-07T12:51:50Z dlowe: of course, for single values, you can just (setf list (my-function list)) 2017-08-07T12:52:15Z dlowe: In other news, I made a thing: https://github.com/dlowe-net/stencl 2017-08-07T12:52:20Z rumbler31 quit (Remote host closed the connection) 2017-08-07T12:52:49Z dlowe: I took the templating library idea I made in a blog post 10 years ago and turned it into a library 2017-08-07T12:53:20Z jackdaniel: looks similar to cl-emb at first glance 2017-08-07T12:54:09Z dlowe: it's actually much more clever and small 2017-08-07T12:54:38Z dlowe: It's just a couple of reader macros 2017-08-07T12:55:51Z schweers: dlowe: I know that multiple values can be handy for that. I just didn’t read the example code properly and thought there was something I didn’t know regarding special variables and nil, but there wasn’t 2017-08-07T12:56:58Z rumbler31 joined #lisp 2017-08-07T12:58:11Z dlowe: I gotta say, though, cl-emb's code is impressively tense 2017-08-07T12:59:29Z ekinmur joined #lisp 2017-08-07T13:00:09Z Xach: tense? 2017-08-07T13:00:30Z doesthiswork joined #lisp 2017-08-07T13:00:45Z phoe: with a high ratio of content per kilobyte? 2017-08-07T13:01:03Z Xach: dense? terse? tense? 2017-08-07T13:01:22Z phoe: overly dramatic? 2017-08-07T13:01:27Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-07T13:01:34Z dlowe: I didn't invent the term http://www.outpost9.com/reference/jargon/jargon_35.html 2017-08-07T13:02:13Z damke joined #lisp 2017-08-07T13:02:18Z dlowe: I like phoe's definition though 2017-08-07T13:03:05Z phoe: it's refreshing to have jargon file mentioned here 2017-08-07T13:03:05Z Xach: Never heard it used like that before. Cool! 2017-08-07T13:03:26Z Xach: phoe: guy steele wrote it. 2017-08-07T13:03:52Z Bike joined #lisp 2017-08-07T13:03:53Z phoe: Xach: I know its history 2017-08-07T13:04:07Z phoe: it's just refreshing to see the words actually being used 2017-08-07T13:04:21Z Xach: I like his much better 2017-08-07T13:04:33Z phoe: his? 2017-08-07T13:05:04Z Xach: steele's jargon file vs. raymond's jargon file 2017-08-07T13:05:05Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T13:05:12Z Xach: i prefer steele's by a very very long shot. 2017-08-07T13:05:14Z phoe: oh yes, it's much better 2017-08-07T13:05:23Z phoe: I know that history as well 2017-08-07T13:07:21Z damke_ joined #lisp 2017-08-07T13:10:01Z damke quit (Ping timeout: 268 seconds) 2017-08-07T13:11:10Z hhdave quit (Quit: hhdave) 2017-08-07T13:11:52Z dlowe: http://geekz.co.uk/lovesraymond/wp-content/images/ep013.jpg 2017-08-07T13:12:33Z dlowe: Anyway... I'm pleased that I finally got stencl out the door 2017-08-07T13:12:41Z jackdaniel: congrats :) 2017-08-07T13:12:50Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-07T13:14:23Z Xach: dlowe: reminds me a tiny bit of brl 2017-08-07T13:16:13Z p_l: dlowe: ehh, didn't ESR have a hand in creation of modern GCC dev process (EGCS) and the now-forgotten early linux VAR, VA Systems or something like that? 2017-08-07T13:18:38Z dlowe: Xach: It's totally like BRL - I meant to mention it in the readme, but misremembered it being called BTL 2017-08-07T13:19:20Z Xach fondly remembers chatting with bruce "r" lewis at various boston lisp meetings 2017-08-07T13:19:21Z dlowe: Except BRL is a scheme and has a lot of extras. 2017-08-07T13:20:00Z varjag joined #lisp 2017-08-07T13:20:47Z Xach: bruce gave me a good bit of cheering up when i was struggling with scheme and brl around 2001 and reluctant to ask questions. "in my experience, people are esteemed more for the presence of accomplishments than the absence of 'stupid' questions." 2017-08-07T13:21:08Z Xach: it is now my experience, too 2017-08-07T13:24:27Z dlowe: Okay. Fixed the name and gave a link. 2017-08-07T13:24:49Z dlowe: The BRL idea was really super clever 2017-08-07T13:25:15Z warweasle joined #lisp 2017-08-07T13:26:01Z Xach: dlowe: for what it's worth, you have a BTL reference later in the doc too. 2017-08-07T13:26:46Z dlowe: Xach: doh. Thanks. 2017-08-07T13:27:23Z cromachina quit (Quit: Leaving) 2017-08-07T13:36:13Z quazimodo quit (Ping timeout: 246 seconds) 2017-08-07T13:39:22Z ekinmur quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-07T13:45:30Z test1600 quit (Quit: Leaving) 2017-08-07T13:48:18Z oleo joined #lisp 2017-08-07T13:48:23Z macdavid313 joined #lisp 2017-08-07T13:51:14Z milanj joined #lisp 2017-08-07T13:52:38Z Amplituhedron quit (Quit: Konversation terminated!) 2017-08-07T13:54:38Z pjb joined #lisp 2017-08-07T13:56:12Z damke joined #lisp 2017-08-07T13:56:52Z shka: hi all 2017-08-07T13:57:58Z phoe: hey shka 2017-08-07T13:59:21Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T13:59:46Z damke_ joined #lisp 2017-08-07T13:59:52Z ptdel joined #lisp 2017-08-07T14:00:50Z flamebeard quit (Ping timeout: 240 seconds) 2017-08-07T14:00:52Z shka: can somebody point me to any library that makes extensive use :generic-function-class option? 2017-08-07T14:01:14Z shka: i know about inlined generic function 2017-08-07T14:02:02Z flamebeard joined #lisp 2017-08-07T14:02:22Z dlowe: some of the MOP stuff is so esoteric I can't imagine anyone using them 2017-08-07T14:02:26Z damke quit (Ping timeout: 268 seconds) 2017-08-07T14:03:25Z doesthiswork quit (Quit: Leaving.) 2017-08-07T14:04:07Z rumbler31 joined #lisp 2017-08-07T14:07:17Z oleo quit (Quit: irc client terminated!) 2017-08-07T14:07:22Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T14:08:35Z rszeno joined #lisp 2017-08-07T14:09:09Z damke_ joined #lisp 2017-08-07T14:09:33Z ainieco: https://gist.github.com/anonymous/b5c0ffe198ca5f7538a972e84dee4a3c#file-dfs-lisp-L30 here i've got warning doing signed word to integer coercion (cost 20) 2017-08-07T14:09:38Z ainieco: how to get rid of this? 2017-08-07T14:10:06Z hhdave joined #lisp 2017-08-07T14:10:46Z elfmacs joined #lisp 2017-08-07T14:10:57Z phoe: ainieco: what are the minimum and maximum values of x and y? 2017-08-07T14:10:58Z dlowe: well if you add 1 to a fixnum, it could potentially overflow 2017-08-07T14:11:11Z phoe: looks like they're from 0 to 8 2017-08-07T14:11:47Z phoe: so (declare (type (unsigned-byte 0 8) x y)) inside DEFUN NEIGHBOURS 2017-08-07T14:12:39Z phoe: this should get rid of the warning, SBCL will find out that it'll be able to optimize this. 2017-08-07T14:13:05Z phoe: ainieco: also, why the hell would you (declaim (optimize (speed 3) (debug 0) (safety 0))) for code like this!? 2017-08-07T14:14:41Z phoe: ...oh wait, I think I know why. 2017-08-07T14:14:52Z phoe: I need to learn to read the code fully before I comment. 2017-08-07T14:15:27Z axion: ainieco: You shouldn't do a toplevel declaim like that 2017-08-07T14:15:58Z axion: It is implementation dependent on whether it is file based or not, and it may taint every quicklisp dependency until it is reset 2017-08-07T14:16:05Z Bike: in this case i would actually guess the warning is because you put the numbers into lists. 2017-08-07T14:16:10Z pjb quit (Ping timeout: 255 seconds) 2017-08-07T14:16:46Z macdavid_ joined #lisp 2017-08-07T14:16:47Z Bike: because that pretty much means they have to be regular fixnums. 2017-08-07T14:16:54Z ainieco: axion: got it, thanks for a warning 2017-08-07T14:17:07Z Bike: if you're really concerned about efficiency that intermediate structure is the kind of thing to avoid, anyway. 2017-08-07T14:17:37Z Bike: (i'm assuming the point structure has unboxed slots) 2017-08-07T14:17:41Z macdavi__ joined #lisp 2017-08-07T14:17:51Z Bike: type fixnum... hm 2017-08-07T14:18:10Z Bike: geez, maybe i'm just fulla shit 2017-08-07T14:18:13Z phoe: Bike: these are values from 0 to 8 2017-08-07T14:18:23Z flazh joined #lisp 2017-08-07T14:18:24Z phoe: so if you 1- or 1+ them, they're at most -1 to 9 2017-08-07T14:18:32Z Bike: sure, sure, i know that 2017-08-07T14:18:42Z shka: dlowe: i don't really need anything super esoteric 2017-08-07T14:18:47Z phoe: I think that SBCL freaks out because it does not know that these numbers are bounded like that. 2017-08-07T14:19:10Z ainieco: phoe: (unsigned-byte 0 8) expects 0 or 1 argument 2017-08-07T14:19:11Z macdavi__ quit (Remote host closed the connection) 2017-08-07T14:19:11Z Bike: probably. yes. i'm overthinking. 2017-08-07T14:19:18Z phoe: it only infers they're fixnums, from line 4 and 5 2017-08-07T14:19:25Z phoe: ainieco: (unsigned-byte 0 8) 2017-08-07T14:19:34Z phoe: oh wait 2017-08-07T14:19:40Z shka: i just want to establish sort of protocol that can be used by generic functions to talk to each other 2017-08-07T14:19:40Z phoe: not unsigned-byte, doh 2017-08-07T14:19:42Z phoe: (integer 0 8) 2017-08-07T14:19:51Z oleo joined #lisp 2017-08-07T14:19:52Z macdavid313 quit (Ping timeout: 260 seconds) 2017-08-07T14:19:52Z axion: I just finished (for today anyway) optimizing the painfully slow png-read library, annotating it with types and minor refactoring. If anyone is interested, here are the timing results of all the code paths from sample images of PNGSuite. Note RGB and RGBA are +/- 3x in performance increase. before: https://gist.github.com/mfiano/6d809441e9255a3f9d3cb83c1aeda869 after: 2017-08-07T14:19:54Z phoe: ainieco: sorry 2017-08-07T14:19:55Z axion: https://gist.github.com/mfiano/d9062a9e2907f41d54b3d37ac1794eef 2017-08-07T14:20:12Z macdavid313 joined #lisp 2017-08-07T14:20:19Z hhdave quit (Ping timeout: 268 seconds) 2017-08-07T14:20:22Z dlowe: axion: uh... could you put those in a table? 2017-08-07T14:20:22Z shka: so i can write stuff like (query (list #'add #'insert) (list 5 10 15)) 2017-08-07T14:20:35Z axion: I could, but I'm tired. 2017-08-07T14:20:39Z shka: *(query (list #'add #'insert) (list 5 10 15) nested-type) 2017-08-07T14:20:39Z dlowe: axion: cool work, though! 2017-08-07T14:20:57Z ainieco: phoe: it did help, thank you! 2017-08-07T14:21:08Z macdavid_ quit (Ping timeout: 240 seconds) 2017-08-07T14:21:18Z axion: err by +/- i mean slightly under or over 3x. I am tired :/ 2017-08-07T14:21:25Z axion: dlowe: Thanks 2017-08-07T14:22:36Z rumbler31: axion: what operation were you measuring? 2017-08-07T14:23:21Z axion: rumbler31: loading a file 1000 times and recording the result for each sample image in the PNGSuite to cover all code paths. 2017-08-07T14:23:38Z rumbler31: ah 2017-08-07T14:25:10Z axion: dlowe: Ok, I'll make a post about it with a table. 2017-08-07T14:25:16Z damke joined #lisp 2017-08-07T14:25:18Z dlowe: axion: no rush :) 2017-08-07T14:25:23Z Bike: loading a file a thousand times took less than a second? 2017-08-07T14:25:51Z ainieco: got rid of every warning but this one https://gist.github.com/anonymous/0787119ed2693cf7dbf399fb3aaba0ce how can i resolve it? 2017-08-07T14:26:12Z ainieco: it happens here https://gist.github.com/anonymous/b5c0ffe198ca5f7538a972e84dee4a3c#file-dfs-lisp-L25 on aref 2017-08-07T14:26:53Z Bike: declaim puzzle to be a (simple-array t (9 9)) 2017-08-07T14:26:58Z Bike: (assuming it is) 2017-08-07T14:27:01Z hhdave joined #lisp 2017-08-07T14:27:09Z phoe: Bike: https://gist.github.com/anonymous/b5c0ffe198ca5f7538a972e84dee4a3c#file-dfs-lisp-L7 2017-08-07T14:27:15Z phoe: will it be a simple-array? 2017-08-07T14:27:27Z Bike: sure 2017-08-07T14:27:30Z Bike: why wouldn't it be 2017-08-07T14:27:35Z phoe: "If make-array is called with adjustable, fill-pointer, and displaced-to each nil, then the result is a simple array." 2017-08-07T14:27:39Z phoe: yes - got it. 2017-08-07T14:27:43Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T14:28:03Z Bike: incidentally, do you actually need string elements, or could it be characters? 2017-08-07T14:28:08Z alandipert: does anyone have an example of a cli application that uses json and http libraries handy? 2017-08-07T14:28:08Z dyelar joined #lisp 2017-08-07T14:28:24Z phoe: alandipert: why needs it to be CLI? 2017-08-07T14:28:41Z dlowe: alandipert: language? 2017-08-07T14:28:52Z dlowe: wait, duh. 2017-08-07T14:28:57Z phoe: Bike: seems like he could convert these to chracters 2017-08-07T14:28:57Z alandipert: phoe doesn't need to be, just hoping for something simple that i can dissect and use as a starting point. SBCL would be nice 2017-08-07T14:28:59Z axion: Bike: Yes, these are tiny sample images located here: http://www.schaik.com/pngsuite/pngsuite_bas_png.html 2017-08-07T14:29:06Z phoe: he compares them by equal in line 25 2017-08-07T14:29:12Z quazimodo joined #lisp 2017-08-07T14:29:33Z flamebeard quit (Quit: Leaving) 2017-08-07T14:29:36Z Bike: axion: well... i don't have a sense for the timing of these things, but that seems pretty good to me 2017-08-07T14:29:37Z rumbler31: alandipert: that was vague though... what do you want to do on the command line with http and json? 2017-08-07T14:29:50Z phoe: so he could instead eql on characters 2017-08-07T14:29:53Z Bike: i would assume they just want to read it 2017-08-07T14:29:59Z Bike: do some learninatin' 2017-08-07T14:30:09Z axion: Indeed. 2017-08-07T14:30:27Z axion: I am going to make a PR in a bit, and hopefully png-read isn't rotting 2017-08-07T14:31:02Z alandipert: rumbler31 send and receive json-encoded requests and responses to an http server 2017-08-07T14:31:29Z ainieco: Bike: sorry how can i declaim puzzle to be a simple array? 2017-08-07T14:31:59Z Bike: well, probably you'd just do it in the function 2017-08-07T14:32:12Z Bike: so in passable? put (declare (type (simple-array t (9 9)) puzzle)) 2017-08-07T14:32:46Z ainieco: Bike: ahh, great, thank you! 2017-08-07T14:32:54Z Bike: then the inefficiency left will be the use of equal 2017-08-07T14:33:37Z Bike: course, i really don't have any earthly idea what this program does, so i dunno if changing that is reasonable 2017-08-07T14:34:16Z ainieco: Bike: yeah, already has changed puzzle's strings to symbols and it gave some boost as well. 2017-08-07T14:34:28Z foom2 joined #lisp 2017-08-07T14:36:22Z hhdave quit (Ping timeout: 255 seconds) 2017-08-07T14:36:36Z Bike: if you use characters you can use char= which will be fast, and it'll come naturally from declaring the array to be a character array. 2017-08-07T14:37:34Z Bike: unrelated, but push-back might be incorrect. if l is nil calling push-back for effect will do nothing. 2017-08-07T14:38:10Z elfmacs quit (Remote host closed the connection) 2017-08-07T14:38:22Z ainieco: Bike: yup, i've already replaced push-back with push, thank you 2017-08-07T14:38:31Z Bike: oh, okay. 2017-08-07T14:38:31Z Lowl3v3l quit (Remote host closed the connection) 2017-08-07T14:38:44Z hhdave joined #lisp 2017-08-07T14:39:33Z pjb joined #lisp 2017-08-07T14:41:59Z sellout- quit (Quit: Leaving.) 2017-08-07T14:47:40Z nikivi: I can't figure out how I can run a simple lisp file from mac 2017-08-07T14:47:44Z nikivi: as interpreter 2017-08-07T14:47:57Z nikivi: all I could find is some dedicated app to run Lisp code in 2017-08-07T14:48:02Z knusbaum joined #lisp 2017-08-07T14:48:20Z nikivi: but I just want something like this 'python code.py' 2017-08-07T14:48:34Z beach: nikivi: What Common Lisp implementation are you using? 2017-08-07T14:48:38Z macdavid313: which implementation you are using 2017-08-07T14:48:39Z dlowe: nikivi: most free implementations will operate just like that 2017-08-07T14:48:46Z nikivi: I am going through SICP book 2017-08-07T14:48:46Z nikivi: http://sarabander.github.io/sicp/html/1_002e1.xhtml#g_t1_002e1_002e2 2017-08-07T14:48:54Z nikivi: so just wanted to test the code from that 2017-08-07T14:49:29Z Bike: well, that's scheme, not lisp. 2017-08-07T14:49:34Z beach: nikivi: That's a very bad way to work, but it can be done. You just have to say what implementation you are using. 2017-08-07T14:49:46Z Bike: ...and this file doesn't look much like a script. 2017-08-07T14:50:12Z hhdave quit (Ping timeout: 260 seconds) 2017-08-07T14:50:19Z knusbaum1 joined #lisp 2017-08-07T14:50:25Z nikivi: beach I guess I need a scheme interpreter 2017-08-07T14:50:26Z nikivi: it doesn't mention which version it is using :| 2017-08-07T14:50:42Z beach: nikivi: This channel is dedicated to Common Lisp. 2017-08-07T14:50:44Z nikivi: I just wanted to write the code in VS Code/vim and then run interpreter on it from CLI 2017-08-07T14:50:53Z Bike: i think it's roughly r4rs? 2017-08-07T14:51:03Z Bike: well, in any case yeah, #scheme is the better place to ask. 2017-08-07T14:51:05Z beach: nikivi: That is a bad thing to want, because the code is not written that way. 2017-08-07T14:51:23Z nikivi: what do you mean 2017-08-07T14:51:32Z dlowe: nikivi: if I were you, I would download Racket from racket-lang.org and use the editor inside it. 2017-08-07T14:51:43Z beach: nikivi: The good thing to want is to interact with your Scheme system line by line. 2017-08-07T14:52:07Z dlowe: and then once you've learned scheme, you can come back and dig into Common Lisp :) 2017-08-07T14:52:10Z knusbaum quit (Ping timeout: 240 seconds) 2017-08-07T14:52:22Z hhdave joined #lisp 2017-08-07T14:52:58Z nikivi: dlowe thank you 2017-08-07T14:53:11Z nikivi: I just wanted to read the SICP book and go through the examples of it 2017-08-07T14:53:19Z nikivi: didn't know there were so many lisp variants 2017-08-07T14:53:26Z sellout- joined #lisp 2017-08-07T14:53:32Z Bike: well, lisp is just so popular, you know. 2017-08-07T14:53:38Z scymtym quit (Ping timeout: 240 seconds) 2017-08-07T14:53:45Z Bike: racket has a sicp mode, i think, so that's probably a good way to go. 2017-08-07T14:53:58Z macdavid313 quit (Read error: Connection reset by peer) 2017-08-07T14:55:15Z nikivi: I am curious 2017-08-07T14:55:23Z nikivi: what do you use for editing lisp? 2017-08-07T14:55:28Z knusbaum1 quit (Ping timeout: 276 seconds) 2017-08-07T14:55:30Z nikivi: I guess emacs 2017-08-07T14:55:39Z beach: nikivi: Emacs + SLIME. 2017-08-07T14:55:52Z beach: minion: Please tell nikivi about SLIME. 2017-08-07T14:55:54Z minion: SLIME: No definition was found in the first 5 lines of http://www.cliki.net/SLIME 2017-08-07T14:57:03Z ainieco: do you need progn when you want to evaluate multiple forms inside "loop do"? 2017-08-07T14:57:13Z beach: No 2017-08-07T14:58:45Z ainieco: cool 2017-08-07T14:59:59Z damke_ joined #lisp 2017-08-07T15:00:09Z ainieco: is it possible to declare defparameter as fixnum to avoid putting declarations inside functions which use parameter in question? 2017-08-07T15:00:43Z Bike: you can declare a special variable to have a global type, yeah. 2017-08-07T15:01:01Z Bike: (declaim (type fixnum *foo*)) 2017-08-07T15:01:11Z beach: But it probably won't help inside a function, because the system can't predict what you are going to call the function with. 2017-08-07T15:02:03Z Bike: what? 2017-08-07T15:02:29Z beach: Oh, sorry. I probably misunderstood. 2017-08-07T15:02:42Z beach: I saw "parameter". 2017-08-07T15:02:52Z damke quit (Ping timeout: 268 seconds) 2017-08-07T15:03:06Z beach: ainieco: In what way does your function use the special variable defined by defparameter? 2017-08-07T15:03:27Z Bike: well, even if it was a parameter, if it's still a special binding it will still be covered by the declaration. 2017-08-07T15:03:56Z beach: Yes, of course. I was thinking (defparameter *foo*) .. (defun f (x) ....) (f *foo*) 2017-08-07T15:04:05Z Bike: oh. yeah. 2017-08-07T15:04:16Z beach: Where declaring the type of *foo* won't help X in F. 2017-08-07T15:04:27Z beach: But I probably misunderstood. As usual. :( 2017-08-07T15:05:13Z hhdave quit (Ping timeout: 276 seconds) 2017-08-07T15:06:40Z ainieco: Bike: it did help, thanks! 2017-08-07T15:06:56Z rumbler31: alandipert: fire up any cl repl, quickload drakma and go hunting 2017-08-07T15:07:26Z beach: ainieco: I think you are going about this the wrong way, unless you really want super-fast code. 2017-08-07T15:07:52Z hhdave joined #lisp 2017-08-07T15:08:34Z ainieco: beach: yeah, just experimenting 2017-08-07T15:08:45Z damke joined #lisp 2017-08-07T15:08:52Z beach: ainieco: The messages you got about conversion are due to the fact that you have the OPTIMIZE settings you have. In particular, (SAFETY 0) is a very bad idea. 2017-08-07T15:09:31Z Bike: i think those notes are from speed 3. not that safety 0 is the best idea 2017-08-07T15:09:41Z beach: Right. 2017-08-07T15:10:12Z beach: ainieco: OK. Just saying. You are much better off trying to improve your algorithms and your data structures than playing with type declarations and OPTIMIZE settings. 2017-08-07T15:10:59Z ainieco: beach: got it :) 2017-08-07T15:11:30Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T15:11:38Z hhdave quit (Client Quit) 2017-08-07T15:12:18Z teggi joined #lisp 2017-08-07T15:12:25Z elfmacs joined #lisp 2017-08-07T15:12:34Z ainieco: where can i ready about safety 0? what it does and why it's a bad idea to use it? 2017-08-07T15:12:38Z ainieco: read* 2017-08-07T15:12:52Z beach: It is implementation specific what it does. 2017-08-07T15:13:04Z Bike: clhs optimize 2017-08-07T15:13:04Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/d_optimi.htm 2017-08-07T15:13:20Z Bike: not that helpful 2017-08-07T15:13:32Z beach: ainieco: SBCL might avoid checking array indices for instance, or avoid checking that the real type corresponds to the declaration you made. 2017-08-07T15:14:04Z Bike: well, basically it means that if there's any undefined behavior you'll be pulled into the shadow realm 2017-08-07T15:14:08Z beach: ainieco: So you might get mysterious segmentation faults and other crashes without the possibility of using the debugger to figure out where the problem is. 2017-08-07T15:14:53Z fkac joined #lisp 2017-08-07T15:15:34Z beach: ainieco: I use zero safety only in very select functions and only in functions that are called from one or a few well-defined places. And I use it only when I can not otherwise convince the compiler to generate the code I need for that particular function. 2017-08-07T15:15:53Z ainieco: i see, thak you beach 2017-08-07T15:16:24Z beach: Sure. 2017-08-07T15:16:29Z FreeBirdLjj joined #lisp 2017-08-07T15:19:06Z ainieco: i have 282k lines in slime repl is there a way to clean it without killing buffer and restarting slime? 2017-08-07T15:19:10Z hiiiiii quit (Ping timeout: 260 seconds) 2017-08-07T15:20:02Z Bike: C-C M-o 2017-08-07T15:20:53Z Kyo91 joined #lisp 2017-08-07T15:23:14Z Kyo91 quit (Client Quit) 2017-08-07T15:23:21Z ainieco: Bike: awesome, thanks! 2017-08-07T15:23:33Z Kyo91 joined #lisp 2017-08-07T15:23:37Z Xach: I often wish I could do that in *shell* buffers. Probably you can, but I don't know the combination. 2017-08-07T15:24:02Z sjl joined #lisp 2017-08-07T15:24:10Z schweers quit (Ping timeout: 240 seconds) 2017-08-07T15:24:23Z beach: Bike: I think I finally have a good idea about the structure of the code for processing the new CST-style lambda lists. I started implementing it, and I am hoping to make faster progress from now on. 2017-08-07T15:24:24Z beach: Lambda-list processing is a big chunk because (as you might remember), it needs to augment the environment according to one parameter before processing the remaining ones, and it needs to generate the AST after the AST from the remaining ones has been generates. 2017-08-07T15:24:49Z dlowe: Xach: It' 2017-08-07T15:24:54Z dlowe: Xach: It's the same combination 2017-08-07T15:25:05Z Xach: dlowe: not for me :~( 2017-08-07T15:25:14Z dlowe: M-x comint-clear-buffer 2017-08-07T15:25:30Z shiranuidong quit (Quit: Leaving) 2017-08-07T15:25:45Z Xach: dlowe: not a valid name for me :~~( 2017-08-07T15:25:56Z beach: Bike: I am also moving the restarts to the AST-creating functions for better recovery. I find myself needing a replacement for RESTART-CASE, but I am working on creating such a thing. 2017-08-07T15:26:33Z dlowe: Xach: maybe added in a later emacs, then 2017-08-07T15:26:49Z Xach will upgrade post haste 2017-08-07T15:27:26Z dlowe: Added in emacs 25 2017-08-07T15:30:13Z Bike: a replacement? 2017-08-07T15:31:52Z beach: Bike: Yeah, I find I need the same restart (i.e. same name, e.g. RECOVER) in several places, and I need a way to associate the same interaction and the same message with each one. 2017-08-07T15:32:08Z beach: s/message/report action/ 2017-08-07T15:32:18Z fkac quit (Remote host closed the connection) 2017-08-07T15:32:28Z damke quit (Ping timeout: 268 seconds) 2017-08-07T15:32:56Z Bike: huh, thought there was a make-restart and stuff, but nah 2017-08-07T15:33:15Z beach: Yeah, restarts are way more primitive than conditions. 2017-08-07T15:33:30Z fkac joined #lisp 2017-08-07T15:33:40Z beach: Bike: Plus, I am allergic to literal messages meant for the user (in this case the programmer) in code. I want to keep the door open to internationalization. 2017-08-07T15:34:32Z Bike: yeah, i see. 2017-08-07T15:34:48Z beach: Anyway, I think I can do it. 2017-08-07T15:36:31Z yrk joined #lisp 2017-08-07T15:37:36Z rippa joined #lisp 2017-08-07T15:37:51Z damke joined #lisp 2017-08-07T15:38:09Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-07T15:40:02Z axion: That was fast. My changes were merged in png-read upstream in just a couple minutes! 2017-08-07T15:40:22Z Bike: good work. 2017-08-07T15:42:18Z d4ryus1 joined #lisp 2017-08-07T15:43:46Z raynold joined #lisp 2017-08-07T15:44:08Z brendos quit (Ping timeout: 240 seconds) 2017-08-07T15:45:05Z d4ryus quit (Ping timeout: 248 seconds) 2017-08-07T15:46:20Z bitch quit (Remote host closed the connection) 2017-08-07T15:46:20Z Lord_of_Life quit (Remote host closed the connection) 2017-08-07T15:46:46Z daemoz quit (Remote host closed the connection) 2017-08-07T15:47:06Z daemoz joined #lisp 2017-08-07T15:47:53Z shka: axion: congrats 2017-08-07T15:49:05Z axion: Thanks everyone. I may continue the optimizing later, but that was pretty tiring for one day. 2017-08-07T15:50:29Z sellout- quit (Quit: Leaving.) 2017-08-07T16:02:40Z Davidbrcz quit (Quit: Leaving) 2017-08-07T16:02:42Z JohnTalent: ainieco: You could also implement a quadtree for your neighbor change check. 2017-08-07T16:03:37Z JohnTalent: thats for huge datasets though. 2017-08-07T16:06:40Z Ven joined #lisp 2017-08-07T16:07:03Z Ven is now known as Guest63750 2017-08-07T16:07:37Z mishoo quit (Ping timeout: 268 seconds) 2017-08-07T16:08:19Z rszeno left #lisp 2017-08-07T16:10:10Z emacsomancer joined #lisp 2017-08-07T16:12:01Z Guest63750 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-07T16:14:36Z Ven_ joined #lisp 2017-08-07T16:14:46Z marvin2 quit (Ping timeout: 246 seconds) 2017-08-07T16:15:43Z sjl: I want to serialize a big pile of objects (for a game) to a file and load it back again. The objects will be arrays/lists/CLOS classes/closures and will have (possibly circular) references. 2017-08-07T16:15:57Z sjl: is cl-store and storable-functions my best/only option or are there others I should consider? 2017-08-07T16:16:01Z axion: No, buggy. 2017-08-07T16:16:06Z axion: Use cl-conspack 2017-08-07T16:16:11Z axion: Also faster 2017-08-07T16:16:16Z sjl: can conspack serialize closures properly? 2017-08-07T16:16:37Z axion: I'm not aware of anything it cannot serialize, though I don't think I tried closures. 2017-08-07T16:16:44Z sjl: I looked at its spec and grepped for function but didn't find anything 2017-08-07T16:17:31Z Lord_of_Life joined #lisp 2017-08-07T16:18:00Z sjl: apparently not: https://i.imgur.com/ltGy4oy.png 2017-08-07T16:18:04Z axion: cl-store and elephant have issues and are dead. I never heard of the other one. rpav developed conspack and I've been using it for a couple years without issues. 2017-08-07T16:20:12Z sjl: I wonder if it's possible to make storable-functions work with conspack 2017-08-07T16:21:10Z bitch joined #lisp 2017-08-07T16:21:10Z bitch quit (Changing host) 2017-08-07T16:21:10Z bitch joined #lisp 2017-08-07T16:21:10Z bitch quit (Changing host) 2017-08-07T16:21:10Z bitch joined #lisp 2017-08-07T16:23:03Z pjb: sjl: if you want to serialize closures, save lisp images. 2017-08-07T16:23:15Z pjb: sjl: of course, this mean no open socket, no thread, etc. 2017-08-07T16:23:40Z sjl: pjb: that's not idea, I'd like to be able to save a game file and have it playable on another machine 2017-08-07T16:23:43Z sjl: *ideal 2017-08-07T16:24:13Z pjb: Then you have to implement the function or closure saving yourself (as sources and data structures). 2017-08-07T16:25:19Z sjl: Or presumably use storable-functions to do that for me 2017-08-07T16:25:33Z sjl: I was hoping this had come up before and someone had wrapped up something nicely 2017-08-07T16:27:59Z Karl_Dscc joined #lisp 2017-08-07T16:28:44Z bigos joined #lisp 2017-08-07T16:32:29Z ptdel left #lisp 2017-08-07T16:34:28Z wooden quit (Read error: Connection reset by peer) 2017-08-07T16:34:41Z wooden joined #lisp 2017-08-07T16:36:26Z Karl_Dscc quit (Remote host closed the connection) 2017-08-07T16:37:49Z Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-07T16:38:29Z shka_ joined #lisp 2017-08-07T16:38:50Z elfmacs left #lisp 2017-08-07T16:40:55Z borei joined #lisp 2017-08-07T16:45:19Z chu quit (Ping timeout: 276 seconds) 2017-08-07T16:52:00Z chu joined #lisp 2017-08-07T16:52:01Z sjl quit (Ping timeout: 268 seconds) 2017-08-07T16:52:38Z fkac quit (Remote host closed the connection) 2017-08-07T16:54:45Z Kyo91_ joined #lisp 2017-08-07T16:57:36Z Kyo91 quit (Ping timeout: 260 seconds) 2017-08-07T16:59:48Z defaultxr joined #lisp 2017-08-07T17:00:20Z grouzen joined #lisp 2017-08-07T17:02:04Z fsmunoz joined #lisp 2017-08-07T17:02:10Z damke_ joined #lisp 2017-08-07T17:04:58Z damke quit (Ping timeout: 268 seconds) 2017-08-07T17:08:13Z AxelAlex joined #lisp 2017-08-07T17:09:08Z ryanbw quit (Ping timeout: 240 seconds) 2017-08-07T17:10:06Z keviv joined #lisp 2017-08-07T17:12:07Z Jesin quit (Quit: Leaving) 2017-08-07T17:12:54Z Xach: cl-store works for every task i've tried. if there are serious problems i'd love to know about 'em. 2017-08-07T17:13:52Z Ven joined #lisp 2017-08-07T17:14:15Z Ven is now known as Guest88849 2017-08-07T17:17:37Z Jesin joined #lisp 2017-08-07T17:18:00Z fsmunoz: Is there a way to tell quicklisp to use "per project" repositories? I mean, instead of putting everything in ~/quicklisp use it to put things in ./my-cl-project/build/deps/* 2017-08-07T17:18:28Z Xach: fsmunoz: quicklisp also uses the asdf source registry system to find projects, so that's one way to help it find stuff. 2017-08-07T17:18:33Z fsmunoz: (my use case is around packaging things in a jar, hence the need) 2017-08-07T17:18:41Z Xach: fsmunoz: you can also add directories to ql:*local-project-directories* 2017-08-07T17:18:59Z fe[nl]ix: fsmunoz: do one Quicklisp installation per project 2017-08-07T17:19:15Z fsmunoz: Xach: ty, I'll take a look! 2017-08-07T17:19:28Z Xach: Truly there are many options 2017-08-07T17:19:36Z fsmunoz: fe[nl]ix: oh. hadn't thought about that. Makes more sense than I was expecting. 2017-08-07T17:20:15Z fsmunoz: I'm currently copying everything that the system depends on, which also works (it's based oin an abcl-specific solution made for WAR files). 2017-08-07T17:20:51Z Xach: fsmunoz: there's an option to bundle a set of quicklisp-provided libraries (and their dependencies) too... https://www.quicklisp.org/beta/bundles.html 2017-08-07T17:23:09Z fsmunoz: Xach: that looks very promising for my use-case 2017-08-07T17:23:36Z fsmunoz: Will try them in order and see what works, ty 2017-08-07T17:23:41Z ptdel joined #lisp 2017-08-07T17:23:48Z Xach: One important limitation for bundles is that they only bundle things that quicklisp can provide. Systems outside of quicklisp can't be bundled that way. 2017-08-07T17:25:56Z damke_ quit (Ping timeout: 268 seconds) 2017-08-07T17:26:16Z vlatkoB_ joined #lisp 2017-08-07T17:27:38Z ptdel left #lisp 2017-08-07T17:28:50Z fsmunoz: Xach: understood, that is not a limitation for me, it's quicklisp all the way down for me. 2017-08-07T17:29:15Z Xach: (bundles *do* have their own mini-version of local-projects though) 2017-08-07T17:29:33Z sjl joined #lisp 2017-08-07T17:30:05Z vlatkoB quit (Ping timeout: 255 seconds) 2017-08-07T17:32:59Z yrk quit (Read error: Connection reset by peer) 2017-08-07T17:37:40Z fsmunoz: (ql:bundle-systems (asdf-jar::dependent-systems :cl-ow-bac) :to "my-bundle/") seemed to worked as expected 2017-08-07T17:38:05Z fsmunoz: (not sure if there is some other way to find dependent systems but this one works) 2017-08-07T17:38:10Z Xach: Cool 2017-08-07T17:38:11Z Guest88849 is now known as Ven`` 2017-08-07T17:38:39Z vaporatorius quit (Remote host closed the connection) 2017-08-07T17:41:56Z vtomole joined #lisp 2017-08-07T17:42:36Z trocado quit (Remote host closed the connection) 2017-08-07T17:42:50Z Ven`` quit (Ping timeout: 240 seconds) 2017-08-07T17:44:45Z Ven_ joined #lisp 2017-08-07T17:47:29Z nirved quit (Quit: Leaving) 2017-08-07T17:48:55Z _krator44 quit (Quit: --) 2017-08-07T17:49:21Z Ven_ quit (Ping timeout: 248 seconds) 2017-08-07T18:02:11Z yrk joined #lisp 2017-08-07T18:04:43Z _krator44 joined #lisp 2017-08-07T18:07:15Z Achylles joined #lisp 2017-08-07T18:08:07Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-07T18:09:10Z pjb quit (Ping timeout: 276 seconds) 2017-08-07T18:15:08Z Ven joined #lisp 2017-08-07T18:15:32Z Ven is now known as Guest20233 2017-08-07T18:19:43Z teggi quit (Quit: Leaving...) 2017-08-07T18:29:19Z Bock quit (Ping timeout: 276 seconds) 2017-08-07T18:33:17Z vtomole quit (Quit: Page closed) 2017-08-07T18:35:52Z ainieco quit (Quit: leaving) 2017-08-07T18:42:27Z Lowl3v3l joined #lisp 2017-08-07T18:44:47Z rumbler3_ joined #lisp 2017-08-07T18:44:55Z random-nick quit (Remote host closed the connection) 2017-08-07T18:47:53Z pjb joined #lisp 2017-08-07T18:49:16Z rumbler3_ quit (Ping timeout: 255 seconds) 2017-08-07T18:52:08Z tonton quit (Ping timeout: 240 seconds) 2017-08-07T18:53:01Z tonton joined #lisp 2017-08-07T18:54:02Z AxelAlex quit (Quit: AxelAlex) 2017-08-07T18:56:36Z Guest20233 quit (Ping timeout: 260 seconds) 2017-08-07T18:56:53Z _cosmonaut_ joined #lisp 2017-08-07T19:00:58Z ssake quit (Remote host closed the connection) 2017-08-07T19:02:45Z smazga joined #lisp 2017-08-07T19:03:41Z warweasle quit (Quit: later) 2017-08-07T19:06:24Z fsmunoz quit (Ping timeout: 258 seconds) 2017-08-07T19:11:46Z leadoverlove joined #lisp 2017-08-07T19:15:14Z random-nick joined #lisp 2017-08-07T19:15:32Z leadoverlove quit (Client Quit) 2017-08-07T19:20:48Z fkac joined #lisp 2017-08-07T19:21:28Z rumbler3_ joined #lisp 2017-08-07T19:23:47Z shka_ quit (Ping timeout: 260 seconds) 2017-08-07T19:24:52Z Fare joined #lisp 2017-08-07T19:25:36Z fsmunoz joined #lisp 2017-08-07T19:25:57Z rumbler3_ quit (Ping timeout: 240 seconds) 2017-08-07T19:33:42Z ptdel joined #lisp 2017-08-07T19:35:40Z ptdel: hey guys, if I am passing a function name and list of parameters that are keywords to another function, and the amount of those keyword parameters is variable, is it possible to loop across them with @? 2017-08-07T19:35:49Z ptdel: sorry if that doesn't make sense ;_; still a noob 2017-08-07T19:36:18Z basket: what's @? 2017-08-07T19:36:35Z ptdel: like i won't know what the keywords will always be, but i know they'll always equate to some JSON. the @params would be all the keywords and their values 2017-08-07T19:36:55Z vlatkoB_ quit (Remote host closed the connection) 2017-08-07T19:37:12Z Fare quit (Ping timeout: 260 seconds) 2017-08-07T19:37:13Z Kyo91 joined #lisp 2017-08-07T19:37:16Z ptdel: (defun defoperation (operation params) ()) and params would be a list of (:keywords values) 2017-08-07T19:37:38Z smazga quit (Ping timeout: 240 seconds) 2017-08-07T19:37:41Z dlowe: You want to iterate across pairs of items? 2017-08-07T19:38:17Z dlowe: alexandria:doplist will do what you want if you install the alexandria library 2017-08-07T19:38:20Z ptdel: i want to be able to have a function that can iterate over any amount of supplied keywords. i'm basically trying to write a macro that creates functions for me 2017-08-07T19:38:38Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-07T19:38:43Z ptdel: it takes a function name, and parameters for that function and turns the parameters into keywords for that function and takes the function name and makes it fun-name 2017-08-07T19:39:28Z phoe: ptdel: give us an example input and an example output. 2017-08-07T19:39:51Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-07T19:39:52Z ptdel: so if I did (defoperation MyOperation ("a" . "b")) it would result in a function (MyOperation :a b) 2017-08-07T19:39:55Z phoe: input: a macro form, as you can imagine it. output: the expansion or the code that should be executed as the effect of evaluating the form you gave us in input. 2017-08-07T19:40:13Z ptdel: 1`here i can pastebin what i have so far 2017-08-07T19:42:33Z ptdel: http://sprunge.us/ccCS 2017-08-07T19:42:58Z cmatei_ joined #lisp 2017-08-07T19:43:27Z ptdel: this seems to work how I want it too, i'm just trying to figure out how in my `request` function I could collect all those keywords. do I use a plist still? 2017-08-07T19:44:13Z cmatei quit (Ping timeout: 255 seconds) 2017-08-07T19:45:13Z Bike: in ,fun-name why do you even refer to the explicit arguments? 2017-08-07T19:45:27Z smazga joined #lisp 2017-08-07T19:45:56Z ptdel: lack of experience? idk this is code i'm reworking from an example 2017-08-07T19:46:06Z Bike: i mean, can't you do (declare (ignore ...parameters in required-params...)) (apply #'request (camelcase name) ,key-pairs) 2017-08-07T19:47:10Z ptdel: I could try that out, hadn't thought of that :) 2017-08-07T19:47:23Z Fare joined #lisp 2017-08-07T19:47:50Z JuanDaugherty joined #lisp 2017-08-07T19:51:06Z ptdel: I get the feeling that i'm way overcomplicating things this way, i basically just want to make functions and keywords that represent fields in json objects 2017-08-07T19:52:21Z Fare: ptdel: have you seen jsonnet? 2017-08-07T19:53:12Z ptdel: what about it? 2017-08-07T19:54:09Z ptdel: it's nice idk if it'd be usable here, i'm basically writing a wrapper that makes POST requests to an API 2017-08-07T19:54:23Z ptdel: so the json is just stuff for the body of the request, and the operation is in the URI 2017-08-07T19:54:28Z trocado joined #lisp 2017-08-07T19:56:55Z Bike: it does seem pretty complicated. 2017-08-07T19:58:00Z ptdel: my thought was, the API has new features added a lot, and they provide a JSON object representing that feature 2017-08-07T19:58:19Z ptdel: so if I could write a macro that would take that object and turn it into a function it'd be handy for updating things 2017-08-07T19:59:11Z Bike: i can see that. 2017-08-07T20:02:52Z Fare quit (Ping timeout: 260 seconds) 2017-08-07T20:06:33Z LiamH joined #lisp 2017-08-07T20:11:35Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-07T20:12:17Z maarhart joined #lisp 2017-08-07T20:12:42Z AxelAlex joined #lisp 2017-08-07T20:14:37Z maarhart quit (Client Quit) 2017-08-07T20:18:09Z norfumpit quit (Ping timeout: 248 seconds) 2017-08-07T20:18:33Z marvin3 joined #lisp 2017-08-07T20:24:46Z milanj quit (Quit: This computer has gone to sleep) 2017-08-07T20:28:08Z _cosmonaut_ quit (Remote host closed the connection) 2017-08-07T20:29:06Z kjak_ quit (Read error: Connection reset by peer) 2017-08-07T20:34:39Z AxelAlex quit (Quit: AxelAlex) 2017-08-07T20:35:30Z Suzuran42 joined #lisp 2017-08-07T20:38:02Z ptdel quit (Quit: leaving) 2017-08-07T20:38:40Z Suzuran quit (Ping timeout: 246 seconds) 2017-08-07T20:38:40Z Suzuran42 is now known as Suzuran 2017-08-07T20:50:05Z grouzen quit (Ping timeout: 240 seconds) 2017-08-07T20:50:32Z angavrilov quit (Remote host closed the connection) 2017-08-07T20:53:33Z Jesin quit (Quit: Leaving) 2017-08-07T20:53:55Z Kyo91 quit (Ping timeout: 255 seconds) 2017-08-07T20:54:43Z Kyo91 joined #lisp 2017-08-07T20:58:11Z Jesin joined #lisp 2017-08-07T21:06:22Z DingoSaar joined #lisp 2017-08-07T21:12:52Z Achylles quit (Ping timeout: 260 seconds) 2017-08-07T21:15:47Z |3b|: axion: no mistake, that was the "not general solution" part i was talking about :) (and duplicating it was the "correct" solution mentioned earlier, but it wasn't working well enough at that point to bother typing out general solution for incremental tests) 2017-08-07T21:16:04Z basket quit (Quit: bye) 2017-08-07T21:16:22Z Bike quit (Ping timeout: 260 seconds) 2017-08-07T21:16:38Z |3b|: if platform specific optimizations are being accepted now, i may go through and optimize more of it at some point, at least once i get around to setting up a usable linux lisp dev environment again 2017-08-07T21:16:57Z varjag quit (Remote host closed the connection) 2017-08-07T21:17:15Z varjag joined #lisp 2017-08-07T21:18:38Z |3b|: axion: lots of other types in my changes were random guesses that should probably be verified and either expanded or restricted more, so might want to check specs and make sure they are valid 2017-08-07T21:18:40Z goosnargh joined #lisp 2017-08-07T21:19:20Z goosnargh: Good morning, #lisp 2017-08-07T21:19:30Z goosnargh: I have a format question. 2017-08-07T21:20:43Z pjb: Good for you. 2017-08-07T21:21:11Z goosnargh: Sorry, fixing it up for a paste. 2017-08-07T21:21:49Z _cosmonaut_ joined #lisp 2017-08-07T21:22:03Z neoncontrails joined #lisp 2017-08-07T21:22:27Z goosnargh: (format nil "#x~8,'0,' ,4:X" #xdeadbeef) => "#xDEAD BEEF" 2017-08-07T21:22:55Z |3b| also wonders if the things i changed to LOOP could have been optimized in ITER, since mixing them seems a bit ugly 2017-08-07T21:23:10Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-07T21:23:11Z goosnargh: But (format nil "#x~8,'0,' ,4:X" #x0) => "#x00000000" 2017-08-07T21:23:25Z Fare joined #lisp 2017-08-07T21:23:30Z |3b|: yeah, the padding isn't part of the number when printed :( 2017-08-07T21:23:44Z goosnargh: Is there a cookbook solution to this somewhere? 2017-08-07T21:24:00Z |3b|: makes sense for characters other than 0, but annoying when you want a number with fixed # of digits 2017-08-07T21:24:09Z goosnargh: Exactly my problem. 2017-08-07T21:24:41Z |3b|: only solution i know of is to write your own expand/split functions, and either call it directly from format with ~/ or use it to expand the value before passing to format 2017-08-07T21:24:48Z shifty quit (Ping timeout: 240 seconds) 2017-08-07T21:25:26Z goosnargh: I was pondering writing a loop in FORMAT but I glimpsed the unspeakable horrors down that path. 2017-08-07T21:25:39Z sellout- joined #lisp 2017-08-07T21:26:21Z goosnargh: I was wondering if someone has a solution for this already so I can lazily copy it. 2017-08-07T21:27:03Z pjb: (format nil "0x~{~A~^ ~}" (loop :with string := (format nil "~8,'0X" #xdeadbeef) :for pos :from 0 :by 4 :below (length string) :collect (subseq string pos (+ pos 4)))) #| --> "0xDEAD BEEF" |# 2017-08-07T21:27:47Z pjb: Ensure that ~8 is multiple of 4 or vice-versa. 2017-08-07T21:27:49Z Ven joined #lisp 2017-08-07T21:28:13Z Ven is now known as Guest44413 2017-08-07T21:28:20Z Guest44413 is now known as Ven`` 2017-08-07T21:28:58Z pjb: (let* ((group 4) (width (* 4 group))) (format nil "0x~{~A~^ ~}" (loop :with string := (format nil "~V,'0X" width #xdeadbeef) :for pos :from 0 :by group :below (length string) :collect (subseq string pos (+ pos group))))) #| --> "0x0000 0000 DEAD BEEF" |# 2017-08-07T21:29:25Z goosnargh: Ah, that’s pretty nice. 2017-08-07T21:29:45Z pjb: and you wanted s/0x/#x/ sorry. 2017-08-07T21:30:23Z goosnargh: NP 2017-08-07T21:30:45Z goosnargh: This will work nicely. I can adapt it further to switch between hex, octal, and binary as necessary. 2017-08-07T21:30:49Z goosnargh: Thanks! 2017-08-07T21:33:10Z Denommus joined #lisp 2017-08-07T21:35:08Z Denommus quit (Client Quit) 2017-08-07T21:35:48Z Denommus joined #lisp 2017-08-07T21:39:07Z _cosmonaut_ quit (Remote host closed the connection) 2017-08-07T21:42:34Z goosnargh: I suppose this typo in CLHS is well known? "(format nil "~19,0,' ,4:B" 3333)" 2017-08-07T21:42:55Z goosnargh: Should be (format nil "~19,'0,' ,4:B" 3333) with '0 instead of just 0. 2017-08-07T21:43:05Z goosnargh: Section 23.3.2.1 2017-08-07T21:45:39Z goosnargh: And the output shown, "0000 1101 0000 0101", is actually "000001101 0000 0101". 2017-08-07T21:46:02Z goosnargh: Which is what lead me to my problem above… 2017-08-07T21:46:59Z dyelar quit (Quit: Leaving.) 2017-08-07T21:47:11Z Karl_Dscc joined #lisp 2017-08-07T21:49:54Z whoman joined #lisp 2017-08-07T21:57:37Z neoncontrails quit (Remote host closed the connection) 2017-08-07T21:57:58Z varjag quit (Ping timeout: 276 seconds) 2017-08-07T21:58:14Z neoncontrails joined #lisp 2017-08-07T22:02:19Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-07T22:08:03Z kjak_ joined #lisp 2017-08-07T22:10:02Z Fare quit (Ping timeout: 260 seconds) 2017-08-07T22:11:14Z Bike joined #lisp 2017-08-07T22:13:09Z Denommus quit (Ping timeout: 255 seconds) 2017-08-07T22:14:38Z Achylles joined #lisp 2017-08-07T22:20:23Z safe joined #lisp 2017-08-07T22:20:54Z rumbler31 joined #lisp 2017-08-07T22:24:08Z toncek55 joined #lisp 2017-08-07T22:24:33Z neoncontrails joined #lisp 2017-08-07T22:25:37Z terpri quit (Ping timeout: 248 seconds) 2017-08-07T22:27:35Z toncek55 quit (Remote host closed the connection) 2017-08-07T22:28:42Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-07T22:28:46Z Karl_Dscc quit (Remote host closed the connection) 2017-08-07T22:29:21Z joga quit (Ping timeout: 248 seconds) 2017-08-07T22:41:01Z rumbler31 joined #lisp 2017-08-07T22:43:52Z Ven`` quit (Ping timeout: 260 seconds) 2017-08-07T22:44:07Z joga joined #lisp 2017-08-07T22:45:02Z joga quit (Changing host) 2017-08-07T22:45:02Z joga joined #lisp 2017-08-07T22:45:04Z Kyo91 quit (Ping timeout: 249 seconds) 2017-08-07T22:47:58Z LooneyTunes joined #lisp 2017-08-07T22:48:24Z neoncontrails quit (Remote host closed the connection) 2017-08-07T22:48:59Z neoncontrails joined #lisp 2017-08-07T22:49:35Z random-nick quit (Remote host closed the connection) 2017-08-07T22:51:48Z Harag quit (Ping timeout: 260 seconds) 2017-08-07T22:53:52Z neoncontrails quit (Ping timeout: 276 seconds) 2017-08-07T22:54:20Z Fare joined #lisp 2017-08-07T22:55:22Z Fare quit (Read error: Connection reset by peer) 2017-08-07T22:55:40Z Kyo91 joined #lisp 2017-08-07T22:56:50Z Fare joined #lisp 2017-08-07T22:58:59Z marvin3 quit 2017-08-07T23:04:05Z rgrau quit (Ping timeout: 240 seconds) 2017-08-07T23:04:08Z Fare quit (Ping timeout: 240 seconds) 2017-08-07T23:06:55Z Fare joined #lisp 2017-08-07T23:08:01Z davsebamse quit (Ping timeout: 255 seconds) 2017-08-07T23:12:20Z Kyo91 quit (Ping timeout: 260 seconds) 2017-08-07T23:13:42Z sellout- quit (Quit: Leaving.) 2017-08-07T23:15:36Z Fare quit (Ping timeout: 260 seconds) 2017-08-07T23:15:36Z davsebamse joined #lisp 2017-08-07T23:29:13Z Kyo91 joined #lisp 2017-08-07T23:29:46Z jamtho joined #lisp 2017-08-07T23:32:52Z phinxy joined #lisp 2017-08-07T23:33:48Z trocado quit (Remote host closed the connection) 2017-08-07T23:38:57Z trocado joined #lisp 2017-08-07T23:40:16Z neoncontrails joined #lisp 2017-08-07T23:42:18Z AxelAlex joined #lisp 2017-08-07T23:45:45Z Lord_of_Life quit (Quit: EliteBNC free bnc service - http://elitebnc.org - be a part of the Elite!) 2017-08-07T23:45:45Z bitch quit (Quit: The bitch has left the building.) 2017-08-07T23:45:53Z cromachina joined #lisp 2017-08-07T23:48:44Z smazga quit (Ping timeout: 260 seconds) 2017-08-07T23:58:56Z zooey quit (Remote host closed the connection) 2017-08-07T23:59:57Z zooey joined #lisp 2017-08-08T00:01:44Z brendos joined #lisp 2017-08-08T00:03:42Z bigos quit (Remote host closed the connection) 2017-08-08T00:05:27Z jamtho quit (Ping timeout: 240 seconds) 2017-08-08T00:14:54Z Achylles quit (Remote host closed the connection) 2017-08-08T00:17:59Z ryanbw joined #lisp 2017-08-08T00:21:20Z doesthiswork joined #lisp 2017-08-08T00:22:25Z holycow joined #lisp 2017-08-08T00:23:45Z terpri joined #lisp 2017-08-08T00:30:44Z Fare joined #lisp 2017-08-08T00:45:23Z Lord_of_Life joined #lisp 2017-08-08T00:49:08Z AxelAlex quit (Ping timeout: 240 seconds) 2017-08-08T00:50:30Z Lord_of_Life quit (Ping timeout: 240 seconds) 2017-08-08T00:50:55Z serviteur quit (Remote host closed the connection) 2017-08-08T01:00:07Z glamas joined #lisp 2017-08-08T01:03:13Z froggey quit (Ping timeout: 276 seconds) 2017-08-08T01:03:27Z Lord_of_Life joined #lisp 2017-08-08T01:04:00Z glamas quit (Remote host closed the connection) 2017-08-08T01:04:48Z froggey joined #lisp 2017-08-08T01:12:09Z quazimodo joined #lisp 2017-08-08T01:13:18Z bitch joined #lisp 2017-08-08T01:13:57Z glamas joined #lisp 2017-08-08T01:18:44Z holycow quit (Quit: Lost terminal) 2017-08-08T01:21:08Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-08T01:30:39Z milanj joined #lisp 2017-08-08T01:37:04Z keviv quit (Remote host closed the connection) 2017-08-08T01:40:27Z rngoodn joined #lisp 2017-08-08T01:42:54Z shiranuidong joined #lisp 2017-08-08T01:49:22Z ebzzry joined #lisp 2017-08-08T01:53:09Z neoncontrails quit (Remote host closed the connection) 2017-08-08T01:53:45Z neoncontrails joined #lisp 2017-08-08T01:55:41Z AxelAlex joined #lisp 2017-08-08T01:58:07Z neoncontrails quit (Ping timeout: 260 seconds) 2017-08-08T02:00:34Z test1600 joined #lisp 2017-08-08T02:01:37Z fkac quit (Remote host closed the connection) 2017-08-08T02:02:50Z glamas quit (Remote host closed the connection) 2017-08-08T02:10:33Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-08T02:14:01Z rngoodn joined #lisp 2017-08-08T02:15:16Z pjb quit (Ping timeout: 255 seconds) 2017-08-08T02:16:05Z brucem_ is now known as bruce 2017-08-08T02:16:08Z bruce is now known as brucem 2017-08-08T02:16:51Z blt` joined #lisp 2017-08-08T02:17:28Z ircbrowse_ quit (Ping timeout: 255 seconds) 2017-08-08T02:18:12Z sjl: for anyone reading these logs in the future, I soldered together conspack and storable-functions to get something that mostly seems to work: https://github.com/sjl/sand/blob/master/src/serializing-functions.lisp 2017-08-08T02:18:36Z sjl: and as a side effect remembered how much I hate heavy use of inheritance 2017-08-08T02:18:50Z samebcha1e quit (Ping timeout: 255 seconds) 2017-08-08T02:19:15Z aeth: I think inheritance is out of style today. 2017-08-08T02:19:16Z gremly quit (Ping timeout: 255 seconds) 2017-08-08T02:19:17Z jibanes quit (Ping timeout: 255 seconds) 2017-08-08T02:19:27Z sjl: thank god 2017-08-08T02:19:29Z samebchase joined #lisp 2017-08-08T02:20:14Z jibanes joined #lisp 2017-08-08T02:20:16Z aeth: Or at least elaborate hierarchies are. 2017-08-08T02:20:22Z sjl: yeah 2017-08-08T02:20:37Z blt quit (Ping timeout: 255 seconds) 2017-08-08T02:20:52Z sjl: mixin/trait-style things where you only have a flat single level, and the superclasses don't iteract, is cool 2017-08-08T02:20:53Z AxelAlex quit (Quit: AxelAlex) 2017-08-08T02:21:27Z aeth: I don't think I've written more than just B inherits from A recently. 2017-08-08T02:21:40Z sjl: but yeah, I can successfully roundtrip a closure through conspack now, so that's enough for tonight I think 2017-08-08T02:21:44Z PuercoPop: if only we had proper mixin support in more languages 2017-08-08T02:22:15Z PuercoPop: sjl: I think hu.dwim has some persistent continuations hack 2017-08-08T02:23:57Z gremly joined #lisp 2017-08-08T02:24:34Z aeth: PuercoPop: Fortunately, with CLOS, proper support for foo is usually doable. 2017-08-08T02:25:34Z glamas joined #lisp 2017-08-08T02:25:50Z elfmacs joined #lisp 2017-08-08T02:25:53Z ircbrowse joined #lisp 2017-08-08T02:26:16Z elfmacs quit (Client Quit) 2017-08-08T02:26:44Z PuercoPop: aeth: yeah, I was thinking about the meta-helix paper to insert 'ninja' gensymed slots. But synthesizing methods is a bit of a pain point of the MOP in my experience 2017-08-08T02:28:07Z PuercoPop: (I resort to `(defmethod ...)` if possible and avoid make-method-lambda 2017-08-08T02:28:49Z sjl: PuercoPop: I don't see anything in serializer.lisp... where else should I be looking? 2017-08-08T02:30:00Z dddddd quit (Remote host closed the connection) 2017-08-08T02:30:57Z bitch quit (Ping timeout: 248 seconds) 2017-08-08T02:31:00Z neoncontrails joined #lisp 2017-08-08T02:31:49Z axion: sjl: send a PR and I'll review/merge it 2017-08-08T02:31:49Z Lord_of_Life quit (Ping timeout: 246 seconds) 2017-08-08T02:31:54Z axion: to conspack that is 2017-08-08T02:32:16Z sjl: axion: I'm not convinced it's fully working, I want to play with it more first 2017-08-08T02:32:29Z axion: Oh nevermind, that's under rpav's personal account. I thought it was under our organization 2017-08-08T02:32:36Z sjl: also, it relies on storable-functions, and storable-functions actually has a separate module with cl-store support 2017-08-08T02:32:58Z sjl: so I think the best place for this stuff is in storable-functions, as an alternative to the cl-store support 2017-08-08T02:33:16Z sjl: also because it uses a bunch of stuff internal to s-f, but just uses the vanilla conspack interface 2017-08-08T02:33:46Z axion: Well I think conspack is a very good library, and if the functionality could make it's way into there, that would be pretty nice. 2017-08-08T02:34:48Z axion: I've had corruption issues with cl-store in the past, so I went looking for an alternative...been using conspack for my game assets for a couple years now without issues, and it's a lot faster using fast-io for streams. 2017-08-08T02:36:09Z PuercoPop: sjl: better ask attila, can't recall. It doesn't appear to be in hu.dwim.delico 2017-08-08T02:36:58Z nullniverse joined #lisp 2017-08-08T02:37:02Z PuercoPop: as usual hu.dwim.delico is an island full of treasures without a map 2017-08-08T02:37:04Z axion: Oh, I almost forgot why I popped in. Does anyone currently use let-plus? 2017-08-08T02:37:29Z al-damiri joined #lisp 2017-08-08T02:37:41Z axion: For some reason, I cannot get it to work unless the package is USE'd. expansion doesn't work correctly when fully qualifying let+ 2017-08-08T02:38:49Z PuercoPop: sjl: This appears to be an example of how https://github.com/luismbo/hu.dwim.delico/commit/486dbdd1a918ff9c5f385aa999ff47f665d068b3 2017-08-08T02:40:32Z sjl: ah 2017-08-08T02:43:42Z pjb joined #lisp 2017-08-08T02:46:36Z elfmacs joined #lisp 2017-08-08T02:51:30Z fsmunoz quit (Ping timeout: 240 seconds) 2017-08-08T02:52:49Z phinxy quit (Quit: Leaving) 2017-08-08T02:52:50Z Lord_of_Life joined #lisp 2017-08-08T02:53:14Z Lord_of_Life quit (Read error: Connection reset by peer) 2017-08-08T02:53:51Z varjag joined #lisp 2017-08-08T02:54:53Z shka_ joined #lisp 2017-08-08T02:56:25Z glamas quit (Remote host closed the connection) 2017-08-08T02:57:08Z LiamH quit (Ping timeout: 240 seconds) 2017-08-08T02:57:33Z glamas joined #lisp 2017-08-08T02:58:07Z varjag quit (Ping timeout: 240 seconds) 2017-08-08T02:59:07Z loke: axion: WHta is let+? 2017-08-08T03:01:27Z axion: It's amoung the top 20 downloaded quicklisp libraries. It's a macro that allows you to use LET-like syntax for binding many things like plists, slots, array elements, etc 2017-08-08T03:02:00Z sjl: it's like a more featureful destructring-bind 2017-08-08T03:02:19Z axion: It was on my radar for a few years but only recently noticed it because of its popularity in the recent quicklisp stats on the ql blog. 2017-08-08T03:02:35Z sjl: see also metabang-bind, or trivia if you want to go full pattern-matching 2017-08-08T03:03:00Z axion: let+ aims to be a replacement to metabang-bind with a syntax closer to CL 2017-08-08T03:03:12Z axion: neither of which seem to have alist binding though 2017-08-08T03:03:36Z aeth: let is pretty annoying because it is missing some key things like handling multiple values (setf handles it, let doesn't... you have to use nested multiple-value-binds, which can be messy) 2017-08-08T03:03:41Z aeth: That's the main annoyance I have with let, though 2017-08-08T03:04:11Z axion: aeth: this also solves that 2017-08-08T03:04:27Z axion: also allows ignoring multiple value bindings 2017-08-08T03:06:40Z diegs_ joined #lisp 2017-08-08T03:09:42Z Lord_of_Life joined #lisp 2017-08-08T03:10:59Z bitch joined #lisp 2017-08-08T03:12:08Z karswell_ joined #lisp 2017-08-08T03:14:15Z LiamH joined #lisp 2017-08-08T03:14:25Z rszeno joined #lisp 2017-08-08T03:16:44Z Harag joined #lisp 2017-08-08T03:17:08Z groovy2shoes quit (Ping timeout: 240 seconds) 2017-08-08T03:17:41Z fkac joined #lisp 2017-08-08T03:18:49Z AxelAlex joined #lisp 2017-08-08T03:19:24Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-08T03:21:12Z emacsoma` joined #lisp 2017-08-08T03:25:44Z schoppenhauer quit (Ping timeout: 260 seconds) 2017-08-08T03:26:11Z neoncontrails quit (Remote host closed the connection) 2017-08-08T03:26:47Z neoncontrails joined #lisp 2017-08-08T03:27:17Z schoppenhauer joined #lisp 2017-08-08T03:28:37Z LiamH quit (Ping timeout: 240 seconds) 2017-08-08T03:31:13Z neoncontrails quit (Ping timeout: 248 seconds) 2017-08-08T03:31:22Z glamas quit (Remote host closed the connection) 2017-08-08T03:34:08Z vicfred joined #lisp 2017-08-08T03:35:32Z whoman quit (Ping timeout: 260 seconds) 2017-08-08T03:39:27Z Harag quit (Ping timeout: 240 seconds) 2017-08-08T03:42:14Z Harag joined #lisp 2017-08-08T03:43:26Z neoncontrails joined #lisp 2017-08-08T03:44:52Z slyrus quit (Ping timeout: 260 seconds) 2017-08-08T03:47:41Z scymtym joined #lisp 2017-08-08T03:54:46Z Kaisyu joined #lisp 2017-08-08T03:55:57Z basket joined #lisp 2017-08-08T03:55:57Z safe quit (Read error: Connection reset by peer) 2017-08-08T03:59:47Z slyrus joined #lisp 2017-08-08T04:01:38Z damke_ joined #lisp 2017-08-08T04:01:59Z Fare quit (Quit: Leaving) 2017-08-08T04:02:07Z Harag quit (Ping timeout: 240 seconds) 2017-08-08T04:05:15Z Harag joined #lisp 2017-08-08T04:05:53Z sz0 joined #lisp 2017-08-08T04:10:00Z doesthiswork quit (Quit: Leaving.) 2017-08-08T04:10:33Z doesthiswork joined #lisp 2017-08-08T04:12:07Z Harag quit (Ping timeout: 240 seconds) 2017-08-08T04:15:59Z sjl__ joined #lisp 2017-08-08T04:16:08Z sjl quit (Ping timeout: 260 seconds) 2017-08-08T04:19:24Z Bike quit (Ping timeout: 260 seconds) 2017-08-08T04:23:30Z glamas joined #lisp 2017-08-08T04:24:26Z FreeBirdLjj joined #lisp 2017-08-08T04:28:30Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-08T04:30:54Z wooden quit (Read error: Connection reset by peer) 2017-08-08T04:34:03Z wooden joined #lisp 2017-08-08T04:38:03Z edgar-rft: (defun ignore-all (&rest bullshit) (values)) -- all problems solved 2017-08-08T04:41:01Z emacsoma` quit (Ping timeout: 255 seconds) 2017-08-08T04:43:14Z glamas quit (Remote host closed the connection) 2017-08-08T04:46:42Z diegs_ quit (Ping timeout: 260 seconds) 2017-08-08T04:51:06Z milanj quit (Quit: This computer has gone to sleep) 2017-08-08T04:54:30Z kozy: anyone let me know how can I install MELPA? http://melpa.org/#/getting-started 2017-08-08T04:54:45Z kozy: there is script, but i don't know how can I execute that in emacs 2017-08-08T04:54:49Z damke joined #lisp 2017-08-08T04:55:31Z kozy: I'm currently install slime to centos 6, very hard to install, and I cannot change my os 2017-08-08T04:57:13Z damke_ quit (Ping timeout: 268 seconds) 2017-08-08T04:57:44Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-08T04:58:31Z borei quit (Ping timeout: 276 seconds) 2017-08-08T04:59:35Z terpri quit (Ping timeout: 240 seconds) 2017-08-08T04:59:39Z aceluck joined #lisp 2017-08-08T04:59:48Z neoncontrails quit (Remote host closed the connection) 2017-08-08T05:00:25Z neoncontrails joined #lisp 2017-08-08T05:01:51Z neoncont_ joined #lisp 2017-08-08T05:01:58Z grouzen joined #lisp 2017-08-08T05:04:46Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-08T05:04:49Z edgar-rft: kozy: I myself have never used MELPA and therefore I don't know. But the folks on #emacs know MELPA probably better than we here. 2017-08-08T05:04:50Z loke: kozy: Why is it hard? 2017-08-08T05:05:12Z loke: kozy: Don't install SLIME from Melpa. Just use the QL project 2017-08-08T05:05:27Z loke: (ql:quickload "quicklisp-slime-helper") 2017-08-08T05:06:14Z kozy: ok 2017-08-08T05:07:08Z rumbler31 quit (Remote host closed the connection) 2017-08-08T05:08:14Z rumbler31 joined #lisp 2017-08-08T05:09:42Z whoman joined #lisp 2017-08-08T05:12:32Z quazimodo quit (Read error: Connection reset by peer) 2017-08-08T05:12:57Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-08T05:15:20Z oleo quit (Quit: irc client terminated!) 2017-08-08T05:17:17Z vicfred quit (Quit: Leaving) 2017-08-08T05:18:11Z Bock joined #lisp 2017-08-08T05:28:46Z beach: Good morning everyone! 2017-08-08T05:29:25Z caffe: good morning, beach 2017-08-08T05:29:43Z basket: hi beach 2017-08-08T05:32:06Z Lord_of_Life quit (Remote host closed the connection) 2017-08-08T05:32:06Z bitch quit (Remote host closed the connection) 2017-08-08T05:32:34Z neoncont_ quit (Remote host closed the connection) 2017-08-08T05:33:43Z neoncontrails joined #lisp 2017-08-08T05:34:55Z neoncont_ joined #lisp 2017-08-08T05:37:50Z neoncontrails quit (Ping timeout: 240 seconds) 2017-08-08T05:38:12Z doesthiswork quit (Quit: Leaving.) 2017-08-08T05:38:32Z brendos quit (Ping timeout: 268 seconds) 2017-08-08T05:39:09Z Karl_Dscc joined #lisp 2017-08-08T05:43:05Z Lord_of_Life joined #lisp 2017-08-08T05:46:58Z jameser joined #lisp 2017-08-08T05:47:33Z arduo joined #lisp 2017-08-08T05:52:08Z bitch joined #lisp 2017-08-08T05:54:06Z shifty joined #lisp 2017-08-08T05:59:23Z vlatkoB joined #lisp 2017-08-08T06:01:15Z Harag joined #lisp 2017-08-08T06:02:15Z quazimodo joined #lisp 2017-08-08T06:06:52Z neoncont_ quit (Remote host closed the connection) 2017-08-08T06:07:30Z neoncontrails joined #lisp 2017-08-08T06:09:23Z kozy: Is there way to exit with turning off slime in emacs? it always ask `can I disconnect slime?` 2017-08-08T06:09:24Z rumbler31 joined #lisp 2017-08-08T06:09:34Z kozy: C-x C-c always ask 2017-08-08T06:09:38Z flamebeard joined #lisp 2017-08-08T06:10:22Z Harag1 joined #lisp 2017-08-08T06:10:43Z beach: Why would you want to exit Emacs? I only do that once a month or so, so it is not a problem. 2017-08-08T06:11:23Z sellout- joined #lisp 2017-08-08T06:11:28Z kozy: want to open another file 2017-08-08T06:11:37Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-08T06:11:37Z Harag quit (Ping timeout: 246 seconds) 2017-08-08T06:11:37Z Harag1 is now known as Harag 2017-08-08T06:11:55Z beach: Why does opening another file require you to exit Emacs? 2017-08-08T06:13:36Z swh1 joined #lisp 2017-08-08T06:13:36Z swh1 quit (Read error: Connection reset by peer) 2017-08-08T06:14:17Z swh1 joined #lisp 2017-08-08T06:15:23Z kozy: hmm so general work flow is do everything in emacs, not closing it ok I understand 2017-08-08T06:16:01Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-08T06:16:13Z basket: That's how most people use it 2017-08-08T06:16:34Z jackdaniel: I have emacs daemon running in the background 2017-08-08T06:16:47Z jackdaniel: and `ec` being alias to emacsclient -c $@ 2017-08-08T06:17:10Z axion: I have the same aliases to `ee` 2017-08-08T06:17:15Z axion: aliased* 2017-08-08T06:17:36Z jackdaniel: I saw `emc` somewhere lately as well 2017-08-08T06:18:19Z axion: ee is easy to type, and it didn't conflict. I guess mnemonically it is 'emacs edit' 2017-08-08T06:19:32Z jackdaniel: nb: nothing is hard to type for people using emacs with its bindings 2017-08-08T06:20:38Z glamas joined #lisp 2017-08-08T06:21:05Z sellout- quit (Quit: Leaving.) 2017-08-08T06:21:54Z jdz: My alias for emacsclient is called "em" :) 2017-08-08T06:22:07Z ebzzry quit (Ping timeout: 240 seconds) 2017-08-08T06:23:29Z milanj joined #lisp 2017-08-08T06:28:28Z closkar joined #lisp 2017-08-08T06:29:54Z axion: What is the proper (efficient) way to test 2 small arrays (specifically octet vectors in this case) for byte equality? 2017-08-08T06:30:48Z schweers joined #lisp 2017-08-08T06:30:51Z mishoo joined #lisp 2017-08-08T06:31:18Z Amplituhedron joined #lisp 2017-08-08T06:31:42Z shiranuidong quit (Ping timeout: 260 seconds) 2017-08-08T06:32:04Z daemoz quit (Remote host closed the connection) 2017-08-08T06:32:23Z daemoz joined #lisp 2017-08-08T06:32:55Z shiranuidong joined #lisp 2017-08-08T06:33:00Z shka_: axion: i use vector= from serapeum 2017-08-08T06:34:24Z axion: something tells me 50 lines of branching is not the most efficient 2017-08-08T06:34:52Z shka_: well, then just declare type of vectors and loop over 2017-08-08T06:35:05Z shka_: that should work just fine 2017-08-08T06:35:34Z shka_: as for efficiency, i would check 2017-08-08T06:35:41Z arduo quit (Read error: Connection reset by peer) 2017-08-08T06:35:49Z sellout- joined #lisp 2017-08-08T06:35:52Z shka_: not all of those 50 lines will be executed 2017-08-08T06:35:54Z arduo joined #lisp 2017-08-08T06:36:16Z axion: This is important. I'm basically verifying the header of many binary file datastreams for validity 2017-08-08T06:36:21Z vaporatorius joined #lisp 2017-08-08T06:36:44Z axion: Which are only 8 bytes each, but surely looping would be better than say equalp 2017-08-08T06:36:50Z vap1 joined #lisp 2017-08-08T06:37:00Z shka_: surely ;] 2017-08-08T06:37:35Z glamas quit (Ping timeout: 240 seconds) 2017-08-08T06:37:35Z jdz: If it's only 8 bytes you can even unroll the loops. 2017-08-08T06:37:41Z |3b| wouldn't expect file header check to be worth optimizing 2017-08-08T06:37:42Z shka_: gosh 2017-08-08T06:38:00Z shka_: aren't we overthinking? 2017-08-08T06:38:21Z |3b|: even if that's all you are doing and you use an SSD, file API would probably outweigh even slow compare 2017-08-08T06:38:24Z jdz: If it shows up on the top of profile then it's worth thinking about :) 2017-08-08T06:38:42Z shka_: jdz: really? 2017-08-08T06:38:51Z shka_: wow 2017-08-08T06:39:11Z |3b|: if a single EQUAL on an 8 byte array shows on the profile, you have bigger things to worry about :) 2017-08-08T06:39:22Z shka_: anyway, try serapeum before you dismiss it 2017-08-08T06:39:25Z axion: Hehe point taken 2017-08-08T06:40:04Z glamas joined #lisp 2017-08-08T06:40:46Z jdz: |3b|: see http://t-b-o-g.blogspot.com/2009/12/brians-brain-on-common-lisp-take-3.html and the thing about COUNT. 2017-08-08T06:42:05Z swh1 quit (Ping timeout: 240 seconds) 2017-08-08T06:43:13Z |3b|: right, something called per pixel in an image generating loop should be treated differently from something called once per file 2017-08-08T06:43:16Z vaporatorius quit (Quit: Leaving) 2017-08-08T06:43:23Z Karl_Dscc quit (Remote host closed the connection) 2017-08-08T06:43:36Z jdz: That's not the point. The point is that count was unreasonably inefficient. 2017-08-08T06:44:31Z grouzen quit (Ping timeout: 268 seconds) 2017-08-08T06:45:35Z nirved joined #lisp 2017-08-08T06:45:39Z |3b| thinks it was reasonable, at least given the input it had 2017-08-08T06:48:04Z larsen- is now known as larsen 2017-08-08T06:49:56Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-08T06:51:59Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-08T06:52:29Z Amplituhedron quit (Remote host closed the connection) 2017-08-08T06:53:05Z Murii joined #lisp 2017-08-08T06:53:16Z sellout- quit (Quit: Leaving.) 2017-08-08T06:53:20Z jameser joined #lisp 2017-08-08T06:53:48Z elfmacs quit (Ping timeout: 240 seconds) 2017-08-08T06:54:04Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-08T06:54:10Z _paul0 joined #lisp 2017-08-08T06:54:44Z damke_ joined #lisp 2017-08-08T06:54:59Z elfmacs joined #lisp 2017-08-08T06:55:37Z damke quit (Ping timeout: 268 seconds) 2017-08-08T06:56:58Z terpri joined #lisp 2017-08-08T06:57:36Z paul0 quit (Ping timeout: 260 seconds) 2017-08-08T07:01:16Z damke_ quit (Read error: Connection reset by peer) 2017-08-08T07:03:19Z damke_ joined #lisp 2017-08-08T07:03:29Z elfmacs quit (Quit: leaving) 2017-08-08T07:03:37Z nullniverse quit (Ping timeout: 258 seconds) 2017-08-08T07:03:37Z angavrilov joined #lisp 2017-08-08T07:05:18Z _cosmonaut_ joined #lisp 2017-08-08T07:08:12Z Trystam joined #lisp 2017-08-08T07:11:39Z Tristam quit (Ping timeout: 268 seconds) 2017-08-08T07:12:07Z Trystam is now known as Tristam 2017-08-08T07:13:08Z Amplituhedron joined #lisp 2017-08-08T07:13:12Z rumbler31 joined #lisp 2017-08-08T07:15:45Z damke joined #lisp 2017-08-08T07:16:37Z mishoo quit (Ping timeout: 260 seconds) 2017-08-08T07:17:00Z stux|away joined #lisp 2017-08-08T07:17:07Z Amplituhedron quit (Remote host closed the connection) 2017-08-08T07:17:30Z varjag joined #lisp 2017-08-08T07:17:41Z stux|away left #lisp 2017-08-08T07:18:07Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-08T07:18:22Z shka_ quit (Ping timeout: 260 seconds) 2017-08-08T07:18:53Z _cosmonaut_ quit (Quit: Leaving.) 2017-08-08T07:19:03Z damke_ quit (Ping timeout: 268 seconds) 2017-08-08T07:19:25Z mishoo joined #lisp 2017-08-08T07:19:27Z jdz: |3b|: I now tried benchmarking again, and I think I must have measured the wrong thing: it appears the function call overhead is what contributes to the 2.3x difference in performance. 2017-08-08T07:19:45Z _cosmonaut_ joined #lisp 2017-08-08T07:20:08Z jdz: I wonder if there's a way to inline calls to COUNT? 2017-08-08T07:20:38Z jdz: Locally declaring it inline does not work. 2017-08-08T07:21:04Z damke_ joined #lisp 2017-08-08T07:21:50Z marvin2 joined #lisp 2017-08-08T07:23:08Z pjb quit (Ping timeout: 240 seconds) 2017-08-08T07:24:07Z LooneyTunes quit (Ping timeout: 276 seconds) 2017-08-08T07:24:36Z damke quit (Ping timeout: 268 seconds) 2017-08-08T07:27:03Z phoe: jdz: sounds like an implementation-dependent issue 2017-08-08T07:27:16Z Amplituhedron joined #lisp 2017-08-08T07:39:44Z glamas quit (Remote host closed the connection) 2017-08-08T07:43:28Z rszeno quit (Quit: Leaving.) 2017-08-08T07:44:27Z glamas joined #lisp 2017-08-08T07:48:55Z glamas quit (Ping timeout: 246 seconds) 2017-08-08T07:49:29Z glamas joined #lisp 2017-08-08T07:53:08Z dec0n quit (Read error: Connection reset by peer) 2017-08-08T07:55:18Z dec0n joined #lisp 2017-08-08T07:59:35Z Harag quit (Ping timeout: 240 seconds) 2017-08-08T08:01:07Z AxelAlex quit (Quit: AxelAlex) 2017-08-08T08:02:05Z brendos joined #lisp 2017-08-08T08:14:22Z rumbler31 joined #lisp 2017-08-08T08:15:24Z damke joined #lisp 2017-08-08T08:16:52Z Harag joined #lisp 2017-08-08T08:18:52Z damke_ quit (Ping timeout: 268 seconds) 2017-08-08T08:19:19Z araujo_ joined #lisp 2017-08-08T08:19:22Z rumbler31 quit (Ping timeout: 276 seconds) 2017-08-08T08:20:02Z araujo_ quit (Max SendQ exceeded) 2017-08-08T08:20:41Z pjb joined #lisp 2017-08-08T08:21:01Z araujo_ joined #lisp 2017-08-08T08:21:14Z kozy: how can I definition of function in slime? 2017-08-08T08:21:20Z kozy: in slime repl 2017-08-08T08:21:50Z jackdaniel: how can you /what definition of function in slime repl? 2017-08-08T08:22:37Z araujo__ quit (Ping timeout: 240 seconds) 2017-08-08T08:22:52Z kozy: sorry found M-x slime-describe-function 2017-08-08T08:27:49Z |3b|: jdz: are you using typed SIMPLE-ARRAYs, with proper declarations around the call? 2017-08-08T08:28:45Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-08T08:30:38Z jameser joined #lisp 2017-08-08T08:33:49Z glamas quit (Remote host closed the connection) 2017-08-08T08:35:22Z jdz: |3b|: yes, I think so. See https://github.com/jdz/brians-brain/blob/master/brain.lisp#L21-L27, and the DEFTYPEs above. 2017-08-08T08:40:52Z pjb quit (Ping timeout: 255 seconds) 2017-08-08T08:44:22Z nydel quit (Read error: Connection reset by peer) 2017-08-08T08:44:34Z jessup quit (Ping timeout: 246 seconds) 2017-08-08T08:45:52Z goosnargh quit (Ping timeout: 260 seconds) 2017-08-08T08:46:29Z glamas joined #lisp 2017-08-08T08:46:30Z jdz quit (Ping timeout: 240 seconds) 2017-08-08T08:47:33Z Ven joined #lisp 2017-08-08T08:47:41Z kozy: anyone help this basic problem? https://ideone.com/8pbeLD 2017-08-08T08:47:56Z Ven is now known as Guest71418 2017-08-08T08:48:01Z damke_ joined #lisp 2017-08-08T08:49:10Z jackdaniel: kozy: replace args in addArgs with ',args 2017-08-08T08:49:21Z jackdaniel: also camel case is against lisp style guidelines 2017-08-08T08:49:25Z |3b|: same with collection in addCollection 2017-08-08T08:49:28Z jackdaniel: you should name your macro add-args 2017-08-08T08:49:33Z jackdaniel: add-collection 2017-08-08T08:49:37Z kozy: thanks to all! 2017-08-08T08:50:03Z jackdaniel: not to mention that this is not a good case for writing macros 2017-08-08T08:50:13Z jackdaniel: I think you should focus on functions at your level of knowing lisp 2017-08-08T08:50:38Z jdz joined #lisp 2017-08-08T08:50:56Z damke quit (Ping timeout: 268 seconds) 2017-08-08T08:51:15Z |3b|: jdz: yeah, looks like reasonable types, i guess SBCL doesn't optimize COUNT :/ 2017-08-08T08:52:23Z |3b|: kozy: a macro doesn't evaluate its arguments, so you need to arrange for them to be evaluated in the output 2017-08-08T08:53:07Z kozy: I use macro, to pass variable by reference (collection, args) 2017-08-08T08:53:07Z Guest71418 quit (Ping timeout: 240 seconds) 2017-08-08T08:53:26Z |3b|: in particular the &rest argument abc is quoted in the output of the macro, so won't be evaluated 2017-08-08T08:53:30Z jamtho joined #lisp 2017-08-08T08:54:13Z |3b| agrees that it probably shouldn't be a macro though 2017-08-08T08:55:08Z edgar-rft quit (Quit: edgar-rft) 2017-08-08T08:57:10Z |3b|: for example if you read the data for args from a file, and had the list (:type "const char*" :name "query) as data at runtime, with a function you could do (apply #'addArgs the-list), but that won't work with a macro 2017-08-08T08:58:53Z Ven_ joined #lisp 2017-08-08T09:00:28Z kozy: it seems it doesn't work https://ideone.com/8pbeLD 2017-08-08T09:01:50Z |3b|: right, the ',args part wasn't affecting it before since the variable names happened to match, but you still have the evaluation problem 2017-08-08T09:03:01Z goosnargh joined #lisp 2017-08-08T09:03:50Z |3b|: actually, i'm not sure you want the ' in ',args or ',collection 2017-08-08T09:04:10Z wadadli left #lisp 2017-08-08T09:04:36Z |3b|: try (macroexpand-1 '(add-collection collection :name "blog" :uri "blog.xml" :args args)) and see if that helps you see what is happening 2017-08-08T09:05:43Z kozy: how can I then evaluate args before handing macro 2017-08-08T09:06:17Z |3b|: you can't evaluate them before passing them to the macro, because the macro is expanded before there are values to evaluate 2017-08-08T09:06:25Z whoman: what is so awful about camelCase in lisp=) 2017-08-08T09:06:43Z |3b|: which is why the expansion needs to arrange for them to be evaluated 2017-08-08T09:06:53Z basket: kozy: When you call eg (add-args foo bar baz), during the expansion args will be foo and abc will be (bar baz), in that environment it will do `(push ',abc ',args), which will expand to (push '(bar baz) 'foo). Do you understand how that works? 2017-08-08T09:06:56Z |3b|: whoman: it is misleading with the default case-folding 2017-08-08T09:07:03Z hlavaty joined #lisp 2017-08-08T09:07:35Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-08T09:09:23Z whoman: |3b|, could you explain further? 2017-08-08T09:09:56Z |3b|: (eq 'FooBar 'fooBar) => t 2017-08-08T09:10:04Z rgrau joined #lisp 2017-08-08T09:10:04Z kozy: oh I understood 2017-08-08T09:10:15Z |3b|: which would probably be unexpected by most users of camelCase 2017-08-08T09:10:50Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-08T09:10:50Z kozy: it seems all lisp symbol is case insensitive 2017-08-08T09:11:06Z |3b|: also, both symbols print at FOOBAR, so if the case is important for readability, that gets lost as well 2017-08-08T09:11:14Z basket: Not technically; they are case sensitive, but by default the reader upcases all symbols 2017-08-08T09:11:26Z |3b|: kozy: lisp symbols are case sensitive, but CL converts everything to uppercase by default 2017-08-08T09:11:38Z TMA: kozy: the symbols are case sensitive. it is just that the reader folds all unescaped lowercase to uppercase by default 2017-08-08T09:11:39Z whoman: (setf (readtable-case *readtable*) :invert) (eq 'FooBar 'fooBar) 2017-08-08T09:11:42Z whoman: -> nil 2017-08-08T09:11:55Z kozy: aha 2017-08-08T09:11:55Z whoman: emacs lisp is case sensitive by default 2017-08-08T09:12:32Z beach: whoman: It is awful because it goes against conventions. It is important to respect established conventions when communicating with others. A German person might think it is more readable to write all nouns with an initial capital, but that same person would be unwise to use that convention when writing English. 2017-08-08T09:12:56Z jamtho quit (Ping timeout: 260 seconds) 2017-08-08T09:15:59Z rumbler31 joined #lisp 2017-08-08T09:16:07Z beach: whoman: So, as with many other conventions, it has nothing to do with some absolute advantage or disadvantage. It is just a choice that programmers have agreed upon. 2017-08-08T09:16:16Z TMA: Incidentally there was the Time when this Convention was used even for English Writing. The US Constitution for Example was written in this Manner. 2017-08-08T09:16:30Z _death: itIsAlsoQuiteUgly 2017-08-08T09:17:32Z beach: TMA: I didn't know that, but I guess I shouldn't be surprised. 2017-08-08T09:17:59Z beach: Conventions do change over time, of course. 2017-08-08T09:20:37Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-08T09:35:15Z whoman: beach, conventions are also good for individuals; we have our desktops set up in our own ways. i dont feel lisp is always excluded from setting up our work environment to suit ourselves; but realising of course our ability to share and collaborate and communicate only with others who also practice or accept the same or similar conventions 2017-08-08T09:35:33Z whoman: TMA, ive got an old hymn book like that, it is nice =) 2017-08-08T09:35:38Z dim: quick opinion: CL is far far better than Go. kthx ;-) 2017-08-08T09:35:48Z shka: eh 2017-08-08T09:35:49Z shka: go 2017-08-08T09:35:54Z shka: i don't like go 2017-08-08T09:36:03Z shka: and i don't understand design principle 2017-08-08T09:36:24Z dim: things we could improve: for Go users, go get github.com/foo/bar and then just run the new bar command from the shell, no questions asked 2017-08-08T09:36:39Z dim: (or ~/go/bar if you're new and didn't setup anything yet, not even PATH) 2017-08-08T09:36:59Z whoman: go "users" lisp "devs" 2017-08-08T09:36:59Z dim: maybe we could do something that simple for users in CL? 2017-08-08T09:37:16Z dim: whoman: very true, but we still sometimes ship binary images for users 2017-08-08T09:38:07Z whoman: CL devs we have quicklisp so far, it finds things and installs from a central repository at the least 2017-08-08T09:40:12Z shka: nah, it is fairly ok already 2017-08-08T09:40:17Z shka: you can use roswell 2017-08-08T09:40:28Z Ven_ quit (Ping timeout: 240 seconds) 2017-08-08T09:40:56Z jackdaniel: roswell is a messy, I wouldn't say it's fairly OK. its setup cost me non-negligible amount of time and I wasn't satisfied with the result 2017-08-08T09:40:58Z shka: it is portable, does everything in terms of setup, and allows to start CL programs script style 2017-08-08T09:41:14Z shka: really? 2017-08-08T09:41:22Z shka: my expierience was rather smooth 2017-08-08T09:41:41Z shka: only bumps being the fact that i act first, read manual later :P 2017-08-08T09:42:03Z fe[nl]ix: jackdaniel: what problems did you encounter with it ? 2017-08-08T09:43:37Z Shinmera: I don't suppose there's "one click install" packages for roswell? Do you still have to compile it yourself? 2017-08-08T09:44:23Z shka: there is for windows 2017-08-08T09:44:33Z jackdaniel: fe[nl]ix: I had problems with specifying sbcl version, it was failing to download it 2017-08-08T09:44:40Z Shinmera: Well windows deployment is the easy part :^) 2017-08-08T09:44:44Z Shinmera: Usually. 2017-08-08T09:44:46Z jackdaniel: providing own binary version wasn't documented at all afair 2017-08-08T09:45:02Z shka: hmm 2017-08-08T09:45:04Z jackdaniel: there were other nuisances I think, it was like a month ago when I've used it 2017-08-08T09:45:20Z shka: ok, i guess your needs are a little more complex 2017-08-08T09:45:42Z shka: but at the very least, I still like idea 2017-08-08T09:45:51Z shka: even if it could be executed better 2017-08-08T09:47:35Z defaultxr quit (Ping timeout: 240 seconds) 2017-08-08T09:49:20Z kora9 joined #lisp 2017-08-08T09:49:44Z kora9: What's the sbcl equivalent of ext:shell? 2017-08-08T09:49:57Z bitch quit (Remote host closed the connection) 2017-08-08T09:49:57Z Lord_of_Life quit (Remote host closed the connection) 2017-08-08T09:50:02Z Shinmera: just use UIOP:RUN-PROGRAM 2017-08-08T09:50:05Z shka: kora9: uiop 2017-08-08T09:50:11Z shka: works everywhere 2017-08-08T09:50:12Z kora9: Ah, not sb-ext:run-program? 2017-08-08T09:50:24Z Shinmera: Why use implementation specific versions when there's portable ones for free 2017-08-08T09:50:25Z shka: avoid using internal stuff 2017-08-08T09:50:45Z kora9: It's just for a tutorial, it launches something that's *nix specific anyways 2017-08-08T09:50:56Z Shinmera: Sure but UIOP works on all implementations. 2017-08-08T09:51:02Z kora9: Or rather, Land of Lisp 2017-08-08T09:51:14Z kora9: Ah, ok, but I don't need this to work on anything other than sbcl right now 2017-08-08T09:51:19Z random-nick joined #lisp 2017-08-08T09:51:24Z kora9: I get that it's a good idea when using it for real though 2017-08-08T09:51:30Z Shinmera: It's a good idea in general 2017-08-08T09:51:33Z Shinmera: there's no reason not to use it 2017-08-08T09:51:43Z basket: Why don't you want to use UIOP kora9? 2017-08-08T09:52:16Z kora9: Makes no sense to put in a third-party dependency in the land of lisp learning exercise that I'm not going to actually use after I finish this chapter 2017-08-08T09:52:25Z Shinmera: It's included with SBCL 2017-08-08T09:52:28Z varjag quit (Ping timeout: 255 seconds) 2017-08-08T09:52:34Z kora9: oh 2017-08-08T09:52:35Z Shinmera: So it's about as not third-party as you can get. 2017-08-08T09:52:42Z basket: It's included with most Lisps 2017-08-08T09:52:47Z kora9: I thought it was a third-party thing as sbcl has the sb-ext:run-program too 2017-08-08T09:52:51Z kora9: Why are there two? 2017-08-08T09:52:58Z Shinmera: It's not written by sbcl, but it is included. 2017-08-08T09:53:12Z Shinmera: uiop:run-program will probably call sb-ext:run-program down the line. 2017-08-08T09:53:29Z Shinmera: it just presents a consistent and documented interface to run external programs across all implementations. 2017-08-08T09:54:31Z kora9: Ah 2017-08-08T09:56:02Z kora9: Hmm. I'm trying (uiop:run-program (concatenate 'string "dot -Tpng -O" fname)) but it's expecting a second argument. I'm not sure what the second argument is supposed to be. 2017-08-08T09:56:17Z _death: it's in sbcl because it's used in asdf, which sbcl wants to include 2017-08-08T09:56:51Z Shinmera: Hooray for documentation https://common-lisp.net/project/asdf/asdf/Some-Utility-Functions.html 2017-08-08T09:56:56Z jackdaniel: kora9: second argument is list of arguments, so youu should do 2017-08-08T09:57:18Z jackdaniel: (uiop:run-program "dot" (list "-Tpng" "-O" fname)) 2017-08-08T09:57:18Z kozy: how can I make (:KEY "A"), (:KEY2 "B") to (:KEY "A" :KEY2 "B") 2017-08-08T09:57:33Z jackdaniel: (append '(:key "a") '(:key2 "b")) 2017-08-08T09:57:39Z basket: kozy: append 2017-08-08T09:57:40Z kozy: thx! 2017-08-08T09:57:41Z kora9: jackdaniel: Ahh, so application and args are separate! Thanks :) 2017-08-08T09:57:46Z jackdaniel: sure 2017-08-08T09:58:52Z kora9: jackdaniel: Why'd you make the arguments a list? (concatenate would've worked too right?) 2017-08-08T09:58:56Z varjag joined #lisp 2017-08-08T09:59:18Z jackdaniel: it wouldn't without special parsing from implementation side 2017-08-08T09:59:33Z jackdaniel: execv* function family is fairly different than primitive system 2017-08-08T09:59:44Z kora9: jackdaniel: Oh. That's good to know 2017-08-08T09:59:59Z jackdaniel: so underneath we call to the operating system after all 2017-08-08T10:00:18Z jackdaniel: also what about application names with spaces? 2017-08-08T10:00:24Z jackdaniel: what about arguments with spaces? 2017-08-08T10:00:28Z kora9: Aye, I've used similar solutions in Java and it was always a bit finnicky (not that Java isn't, but it was finicky in a different way) 2017-08-08T10:00:30Z jackdaniel: how would you quote them 2017-08-08T10:00:40Z kora9: just "asd asd" right? 2017-08-08T10:01:08Z jackdaniel: yes, in this "list" style that's correct 2017-08-08T10:01:46Z jackdaniel: in case of shell-like, it would be "application arg\\ 1 arg-2", or even something worse for windows 2017-08-08T10:01:51Z jackdaniel: like \\\\\ 2017-08-08T10:01:53Z jackdaniel: ;-) 2017-08-08T10:02:04Z kora9: Oh right, terminating the space :) 2017-08-08T10:03:05Z kora9: I'm really amazed at how powerful CL can be with little effort, provided you know what you're doing 2017-08-08T10:03:06Z jackdaniel: so having it as a list and leaving the job to the underlying implementation is the most sane thing you could have, celebrate ;) 2017-08-08T10:03:21Z kora9: Yeah that makes sense :) 2017-08-08T10:03:42Z damke_ quit (Ping timeout: 268 seconds) 2017-08-08T10:03:46Z damke__ joined #lisp 2017-08-08T10:03:57Z goosnargh joined #lisp 2017-08-08T10:05:40Z whoma1 joined #lisp 2017-08-08T10:05:45Z damke_ joined #lisp 2017-08-08T10:05:51Z whoman quit (Ping timeout: 255 seconds) 2017-08-08T10:05:55Z whoma1 is now known as whoman 2017-08-08T10:05:56Z kora9: This Land of Lisp tutorial is surprisingly interesting. It started out as what I thought would just be an invocation of graphviz from Lisp, but it went on to use a thunk and to print *standard-output* to a file utilizing Lisp's echoing as feedback to me/the user. 2017-08-08T10:06:17Z shka: kora9: yes, that's land of lisp for ya! 2017-08-08T10:06:21Z kora9: :) 2017-08-08T10:06:25Z shka: it is cool book 2017-08-08T10:06:34Z kora9: I wouldn't have thought of ever using the second part unless I'd had it suggested somewhere probably 2017-08-08T10:07:27Z kora9: It is. I'm enjoying it a lot, it's explaining things very well for me while being entertaining 2017-08-08T10:07:53Z c_3 joined #lisp 2017-08-08T10:08:07Z trocado quit (Ping timeout: 260 seconds) 2017-08-08T10:08:12Z shka: yes, land of lisp is a charming book 2017-08-08T10:08:21Z glamas quit (Remote host closed the connection) 2017-08-08T10:08:46Z goosnargh quit (Ping timeout: 258 seconds) 2017-08-08T10:08:56Z shka: as for graphviz 2017-08-08T10:09:10Z shka: i'm using it to generate inheritance graphs for documentation 2017-08-08T10:09:22Z shka: it is useful! 2017-08-08T10:09:52Z damke__ quit (Ping timeout: 268 seconds) 2017-08-08T10:09:52Z caffe quit (Ping timeout: 268 seconds) 2017-08-08T10:10:00Z caffe joined #lisp 2017-08-08T10:10:23Z caffe is now known as Guest4461 2017-08-08T10:10:29Z c__ quit (Ping timeout: 268 seconds) 2017-08-08T10:10:31Z Harag quit (Ping timeout: 276 seconds) 2017-08-08T10:11:06Z damke_ quit (Ping timeout: 268 seconds) 2017-08-08T10:11:54Z bitch joined #lisp 2017-08-08T10:11:55Z kora9: shka: Yeah I haven't used it before, it seems really cool! 2017-08-08T10:13:19Z kora9: On a side note (and I know CL isn't purely functional) functional programming is cool! 2017-08-08T10:13:37Z kora9: It's very lego 2017-08-08T10:14:06Z kora9: and I like having less variables declared 2017-08-08T10:14:36Z Shinmera: Not sure what functional programming has to do with the number of variables 2017-08-08T10:14:38Z sjl__ quit (Read error: Connection reset by peer) 2017-08-08T10:16:03Z rjeli_ quit (Ping timeout: 268 seconds) 2017-08-08T10:16:09Z rjeli joined #lisp 2017-08-08T10:16:13Z kora9: Shinmera: It seems I don't need to define variables in a lot of places where I would in for example Java 2017-08-08T10:16:35Z _death: Shinmera: in nonfunctional style usually you name your things so that you can refer to them later on when you want to modify them 2017-08-08T10:16:57Z sjl__ joined #lisp 2017-08-08T10:17:11Z Shinmera: _death: Sure, but on the other hand not modifying things means copying stuff to new variables. 2017-08-08T10:17:32Z rumbler31 joined #lisp 2017-08-08T10:17:52Z kora9: Shinmera: I understand that there are likely variables behind the scenes, I meant that so far there are fewer explicitly declared ones here it seems 2017-08-08T10:17:55Z askatasuna quit (Ping timeout: 268 seconds) 2017-08-08T10:18:30Z yrk quit (Ping timeout: 268 seconds) 2017-08-08T10:18:34Z Shinmera: kora9: And I'm still not sure if that's a case of functional programming per se, or just one of using lots of small functions to help you with composition. 2017-08-08T10:18:44Z _death: Shinmera: not necessarily.. compare for example (with (empty-map) 1 'one) w/ the hash-table based solution 2017-08-08T10:18:52Z Lord_of_Life joined #lisp 2017-08-08T10:19:34Z Shinmera: _death: I'm aware of the examples. I'm just not convinced it's generally true. 2017-08-08T10:19:46Z _death: Shinmera: additionally, I am reminded of PG's "tax on LET*" idea.. and use of LET can also be reduced if you use the one-function-to-a-function style 2017-08-08T10:20:00Z kora9: Shinmera: I am using a lot of small functions to compose the program, I thought that was inherently a style of functional programming? 2017-08-08T10:20:11Z Shinmera: kora9: You can do that in Java too :) 2017-08-08T10:20:13Z askatasuna joined #lisp 2017-08-08T10:20:26Z kora9: Shinmera: But it doesn't at all seem similar to me 2017-08-08T10:20:36Z kora9: In a lot of cases you wouldn't pass functions to other functions 2017-08-08T10:20:55Z kora9: You can lambda, sometimes 2017-08-08T10:21:07Z loke: _death: What do you have against LET*? http://paste.lisp.org/display/352845 2017-08-08T10:21:07Z Shinmera: Anyway, we're now getting close to a semantic argument again over what "functional programming" means. 2017-08-08T10:21:09Z _death: Shinmera: well, I often think about it when reading java or python code, where long lists of block-like code (a = b, c = d, e = f..) occur, where in Lisp you tend to just pass them to functions 2017-08-08T10:21:30Z kora9: Shinmera: Might be, I don't fully comprehend the meaning yet probably 2017-08-08T10:21:50Z Shinmera: kora9: The problem is that there's lots of differing opinions on what it means, so it's a flame war anyway. 2017-08-08T10:21:52Z _death: loke: I have code like that too :).. direct ports are ugly like that 2017-08-08T10:21:59Z kora9: Shinmera: Ah, I didn't know that 2017-08-08T10:22:12Z damke_ joined #lisp 2017-08-08T10:22:34Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-08T10:22:37Z Shinmera: _death: Sure, but again that might just be a case of how used people are to a certain way of thinking, rather than an inherent property. 2017-08-08T10:22:46Z Posterdati quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-08T10:22:59Z tuturto: "I Know It When I See It" 2017-08-08T10:23:12Z _death: Shinmera: perhaps.. I tend to judge languages nowadays not by a list of features, but by how the bulk of "idiomatic" code feels to me 2017-08-08T10:23:20Z Shinmera: That's fair. 2017-08-08T10:23:53Z Shinmera: After all, even if you make a gem in a sea of trash, it'll still largely be a sea of trash :) 2017-08-08T10:24:50Z kora9: *shrug* singleton classes exists in CL too? 2017-08-08T10:25:12Z Shinmera: You can write whatever you want in CL 2017-08-08T10:25:22Z kora9: I just figured it wouldn't be necessary somehow 2017-08-08T10:25:40Z Shinmera: I don't get this hate against singletons anyway. 2017-08-08T10:25:42Z kora9: They always felt like hacks to get around Java being odd 2017-08-08T10:26:11Z Shinmera: Well in java you can't directly define global state, so you do it in a class. You can still write singletons in CL, it just looks different. 2017-08-08T10:26:57Z francogrex joined #lisp 2017-08-08T10:27:04Z Shinmera: If you have a class to hold some state for you and you put it into a global variable it's effectively a singleton 2017-08-08T10:27:09Z basket: I always thought that was the main reason people make such a big deal of Lisp syntax, not really the syntax itself which isn't so different, but just it being more idiomatic in Lisp than most other languages to do (a (b (c (d)))) type stuff, so people see the )))) and attribute it to the syntax when it's just slightly different syntax combined with the nesting 2017-08-08T10:27:10Z _cosmonaut_ quit (Ping timeout: 258 seconds) 2017-08-08T10:27:31Z Ven joined #lisp 2017-08-08T10:27:43Z francogrex: Hi, I use probe-file and directory functions, but they seem unable to differetiate a file from a folder/directory.. is there a function that does? 2017-08-08T10:27:55Z Ven is now known as Guest80852 2017-08-08T10:28:15Z Shinmera: Well, on unix directories are files. 2017-08-08T10:28:18Z loke: basket: I always smile when people talk about ))), and run off to the nearest Java source base and stare at 8 lines of } characters... Just that in Java they occupy 8 lines of otherwise blank editor space. 2017-08-08T10:28:42Z Shinmera: loke: maybe even more if they also put { on a line by itself :/ 2017-08-08T10:28:54Z damke joined #lisp 2017-08-08T10:29:08Z kora9: Shinmera: Ah. That sounds less of a hassle than singletons in java. 2017-08-08T10:29:34Z Shinmera: kora9: It's less boilerplate, but then again Java is the definition of boilerplate so that's no surprise. 2017-08-08T10:30:06Z loke: Kotlin deals with a lot of the builerplate in java to be fair 2017-08-08T10:30:06Z kora9: francogrex: If you can check the permissions on the file directories should have dr------ 2017-08-08T10:30:15Z kora9: Shinmera: True 2017-08-08T10:30:22Z _cosmonaut_ joined #lisp 2017-08-08T10:30:27Z _death: to me java code screams boilerplate and the inability to remove java's object system from the domain 2017-08-08T10:30:28Z Shinmera: kora9: No permission functions like that in CL. 2017-08-08T10:30:34Z kora9: Really? 2017-08-08T10:30:46Z Shinmera: Permissions are highly system-dependant 2017-08-08T10:30:53Z Shinmera: Even FS-dependant 2017-08-08T10:31:02Z Posterdati joined #lisp 2017-08-08T10:31:08Z Shinmera: CL's file system support is very minimal on purpose. 2017-08-08T10:31:17Z kora9: Yeah but at some point you need some OS-specific features 2017-08-08T10:31:23Z damke_ quit (Ping timeout: 258 seconds) 2017-08-08T10:31:35Z Shinmera: you ask your implementation / uiop for that. 2017-08-08T10:31:51Z Shinmera: it'd be silly for a language spec to talk about specific OSs 2017-08-08T10:31:52Z kora9: Yeah but that's what I mean, isn't there something for permissions with uiop or something? 2017-08-08T10:32:27Z _death: kora9: there's sb-posix if you're using sbcl 2017-08-08T10:32:36Z Shinmera: Anyway 2017-08-08T10:32:38Z kora9: Ah, so that should be sufficient most likely :) 2017-08-08T10:32:47Z Shinmera: DIRECTORY should return pathnames without a NAME or TYPE component if it's a directory. 2017-08-08T10:34:13Z Shinmera: So you should be able to check with uiop:directory-pathname-p 2017-08-08T10:34:14Z arbv quit (Read error: Connection reset by peer) 2017-08-08T10:34:20Z arbv_ joined #lisp 2017-08-08T10:34:44Z arbv_ is now known as arbv 2017-08-08T10:35:55Z loke: What about this: (remove nil (directory #p"/etc/*") :key #'pathname-name) 2017-08-08T10:37:17Z Shinmera: I'm not sure if it's not also possible for name to be NIL while type is non-NIL 2017-08-08T10:38:18Z Shinmera: For files like .foo 2017-08-08T10:38:48Z loke: Shinmera: Possible, I guess... But at least SBCL treats that as a type-less file with name .foo 2017-08-08T10:38:53Z Shinmera: Right. 2017-08-08T10:38:59Z Shinmera: I just can't find any promise about it in the spec. 2017-08-08T10:39:13Z loke: Shinmera: I'm sure you won't find any such promise. 2017-08-08T10:40:13Z groovy2shoes joined #lisp 2017-08-08T10:40:18Z Shinmera: Anyway, (remove-if #'uiop:directory-pathname-p ..) would work portably. 2017-08-08T10:40:23Z kora9: Any and all unix systems should reliably report all directories as having the permissions d... regardless of what filesystem/RBAC/MAC it uses 2017-08-08T10:40:47Z test1600 quit (Quit: Leaving) 2017-08-08T10:40:52Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-08T10:41:16Z Shinmera: CL runs on more than unix systems. 2017-08-08T10:41:51Z kora9: I thought this was a *nix question? 2017-08-08T10:42:12Z Shinmera: francogrex never said anything of the sort. 2017-08-08T10:42:36Z basket: loke: LispWorks on Linux parses .foo as having name "" and type ".foo" 2017-08-08T10:42:39Z kora9: Oh. I got confused when you said that in *nix directories are files 2017-08-08T10:43:07Z basket: er, "foo" 2017-08-08T10:43:11Z Harag joined #lisp 2017-08-08T10:43:13Z _death: sb-posix:stat should work on windows as well 2017-08-08T10:43:47Z kora9: OSX uses posix permissions aswell, it's even SUSv3 certified funnily enough. 2017-08-08T10:44:16Z Shinmera: Genera probably doesn't use posix permissions. 2017-08-08T10:44:35Z _death: :) 2017-08-08T10:44:44Z basket quit (Quit: bye) 2017-08-08T10:45:14Z _death: does sbcl run on genera 2017-08-08T10:45:31Z Shinmera: No idea. I know some libraries have stuff specifically for Genera. 2017-08-08T10:45:45Z basket joined #lisp 2017-08-08T10:45:52Z _cosmonaut_ quit (Read error: Connection reset by peer) 2017-08-08T10:46:04Z _cosmonaut_ joined #lisp 2017-08-08T10:46:05Z engblom joined #lisp 2017-08-08T10:46:15Z francogrex: yes actually right now I am on windows OS :) 2017-08-08T10:46:16Z kora9: Shinmera: True64 unix does 2017-08-08T10:46:19Z _death: I guess genera users care enough about these libraries to add support for their system 2017-08-08T10:46:22Z kora9: Tru64* 2017-08-08T10:46:51Z francogrex: uiop:directory-pathname-p is the closest (though not great, put a / at the end of a filename and it thinks it's a dir) 2017-08-08T10:47:30Z Shinmera: Well yes, because it looks at pathnames. 2017-08-08T10:48:06Z Guest80852 quit (Ping timeout: 268 seconds) 2017-08-08T10:48:59Z kora9: Out of curiousity, do directories on Windows report d... file permissions when sb-posix:stat'ed? 2017-08-08T10:49:10Z kora9: Windows has some posix compatibility stuff in places 2017-08-08T10:50:10Z butterthebuddha: Is (cons 1 2) equivalent to '(1 2)? 2017-08-08T10:50:21Z Shinmera: No 2017-08-08T10:50:23Z kora9: butterthebuddha: I think that's equivalent to (1 . 2) 2017-08-08T10:50:27Z kora9: Am I right Shinmera? :D 2017-08-08T10:50:30Z Shinmera: No 2017-08-08T10:50:33Z kora9: :( 2017-08-08T10:50:34Z Shinmera: You're missing the quote. 2017-08-08T10:50:37Z kora9: Oh 2017-08-08T10:50:39Z kora9: '(1 . 2) 2017-08-08T10:50:47Z butterthebuddha: So what exactly is the quote? 2017-08-08T10:50:48Z kora9: At least I learned something from Land of Lisp :) 2017-08-08T10:50:54Z butterthebuddha: Is 't == t? 2017-08-08T10:51:00Z kora9: butterthebuddha: If I understand it correctly, ' puts the reader in data mode 2017-08-08T10:51:02Z Shinmera: butterthebuddha: It causes it to not evaluate the form following the quote. 2017-08-08T10:51:03Z kora9: as opposed to code mode 2017-08-08T10:51:15Z Shinmera: (eq 't t) works because t evaluates to t. 2017-08-08T10:51:20Z kora9: butterthebuddha: But be aware that I'm a total newbie, so I'll defer to Shinmera :) 2017-08-08T10:51:36Z Shinmera: however (eq 'foo foo) doesn't work because the latter will cause an unbound variable error. 2017-08-08T10:51:51Z butterthebuddha: 'foo -> ah, so foo has to be bound to something here? 2017-08-08T10:52:00Z Shinmera: No, 'foo returns the symbol FOO 2017-08-08T10:52:13Z Shinmera: and foo refers to a variable called FOO 2017-08-08T10:52:21Z Shinmera: and will evaluate to the variable's value. 2017-08-08T10:52:54Z Shinmera: (let ((foo 1)) (values 'foo foo)) ; => FOO 1 2017-08-08T10:53:12Z basket: The symbol FOO is a value by itself, the same way 2 and the list (1 2 3) are, but normally Lisp will evaluate things. When Lisp evaluates a symbol, it looks for the value it's bound to, and if it's unbound it signals an error (numbers evaluate to themselves and lists evaluate as operator calls) 2017-08-08T10:53:29Z _death: butterthebuddha: "equivalent" is ambiguous.. basically (1 . 2) designates a cons cell with (a reference to...) 1 in its car and 2 in its cdr.. 'object is a shorthand for (quote ), and the quote operator returns the object as-is.. (cons 1 2) is an expression that, when evaluated, returns a fresh cons with 1 in its car and 2 in its cdr 2017-08-08T10:54:06Z basket: 'x, or equivalently (quote x), for any x, means not to evaluate that argument. so (quote foo) when it is evaluated returns the symbol foo, regardless of whether it's bound to anything 2017-08-08T10:54:07Z kora9: butterthebuddha: The book Land of Lisp has a great chapter on lists and cons cells 2017-08-08T10:54:58Z beach: kora9: There is no such thing as "data mode" in the reader. 2017-08-08T10:55:16Z kora9: beach: Oh. That's what the book referred to it as 2017-08-08T10:55:35Z beach: I am sorry to hear that. 2017-08-08T10:55:38Z Shinmera: The reader always returns data. QUOTE is a feature of the evaluator/compiler. 2017-08-08T10:56:03Z kora9: Oh, I didn't know of that distinction 2017-08-08T10:57:09Z Shinmera: The reader is what turns text into objects. The evaluator is what.. well, evaluates objects and returns their value. 2017-08-08T10:57:22Z kora9: That makes sense 2017-08-08T10:57:37Z kora9: So it designates what's eval'ed and what isn't then? 2017-08-08T10:57:48Z francogrex: SB-POSIX:STAT on windows differentiates bweteen dir and file, mode file 33206, mode dir:16895 2017-08-08T10:58:20Z Shinmera: kora9: it'd be more accurate to say that the special form QUOTE prevents evaluation of its argument and instead returns it literally. 2017-08-08T10:58:38Z _death: kora9: it's a didactic approach where "simplifying lies" are used in order to not overwhelm the reader with details.. I read Land of Lisp when I was already lisping for some years and so didn't like that approach, so I decided not to recommend it to newbies, although the book was fun, but maybe for some people it works 2017-08-08T10:59:01Z rgrau quit (Ping timeout: 255 seconds) 2017-08-08T11:00:47Z _death: francogrex: you'd use (s-isdir (stat-mode (stat "file"))) to determine whether it's a directory or not 2017-08-08T11:00:50Z _cosmonaut_ quit (Quit: Leaving.) 2017-08-08T11:01:22Z kora9: Shinmera, _death: Ah. 2017-08-08T11:01:30Z Shinmera: As for LoL, I bought it, but never read it because I haven't found the time (and can't stand the author's cartoons) 2017-08-08T11:02:30Z kora9: _death: I still think it's good and I've learned a lot from it. I imagine that the things where it's less than accurate are in areas where I'll learn more details in the next book I read. Whether the reader is in data mode or code mode or not, that way of thinking works practically for abstracting the difference away I suppose 2017-08-08T11:02:36Z Shinmera: I have read parts of the other LoL (let over lambda) but stopped because the author's constant jerkoff attitude of lisp being the holy grail of everything was extremely off-putting. 2017-08-08T11:02:58Z _death: kora9: yes.. I think the main thing is to not have it as the only lisp book read :) 2017-08-08T11:03:06Z kora9: _death: Yeah :) 2017-08-08T11:03:24Z kora9: I view it as an enjoyable preface 2017-08-08T11:03:33Z basket: I also found that insufferable in Let Over Lambda, Shinmera 2017-08-08T11:03:47Z shka: i also think that land of lisp is enjoyable 2017-08-08T11:04:09Z shka: it is not for everyone, but it is a solid book imho 2017-08-08T11:04:21Z _death: kora9: there are many good lisp books with differing styles 2017-08-08T11:04:33Z goosnargh joined #lisp 2017-08-08T11:04:41Z shka: indee 2017-08-08T11:04:42Z shka: d 2017-08-08T11:04:43Z kora9: _death: Aye, a whole lot of them seems great! 2017-08-08T11:04:58Z shka: there is also book called Practical Common Lisp 2017-08-08T11:05:07Z kora9: I've got Common Lisp a sensible approach something aswell. And there was another book that was recommended to me, but I bought Land of Lisp instead this month 2017-08-08T11:05:17Z kora9: shka: Isn't that the one at gigamonkeys? 2017-08-08T11:05:20Z shka: it is serious book for serious programmers ;] 2017-08-08T11:05:22Z shka: yup 2017-08-08T11:05:30Z engblom wishes a book more similar to "learn you a haskell for great good" or "clojure for the brave and true". 2017-08-08T11:05:52Z kora9: I started with Practical Common Lisp but I didn't like it, for whatever reason. It seems good, but I didn't get that much from the explanations. Maybe it'll be better after I've read Land of Lisp and know a little bit more 2017-08-08T11:06:03Z shka: indeed 2017-08-08T11:06:13Z Shinmera: I've read learn you a haskell but couldn't really get to terms with the writing in that either. 2017-08-08T11:06:24Z _death: kora9: my first Lisp book was PG's ANSI Common Lisp 2017-08-08T11:06:31Z shka: anyway, both land of lisp are good in their own way 2017-08-08T11:06:45Z shka: uh, i can't stand PG's writting 2017-08-08T11:07:03Z _death: kora9: I like it, although my style is quite different from PG's nowdays... 2017-08-08T11:07:18Z kora9: Ah cool, I'll add it to the list :) 2017-08-08T11:07:32Z shka: btw 2017-08-08T11:07:47Z shka: i really like how many books have been published in recent years 2017-08-08T11:07:55Z shka: it is just awesome 2017-08-08T11:08:13Z Shinmera: Which ones are those? 2017-08-08T11:09:02Z Shinmera: PCL came out in 2005, which doesn't really count as "recent years" anymore. 2017-08-08T11:09:02Z shka: well, edis book, land of lisp, PCL, webtales 2017-08-08T11:09:09Z shka: ok 2017-08-08T11:09:16Z Shinmera: 12 years ago! 2017-08-08T11:09:24Z kora9: I should write a CL book. Common Lisp: The blind leading the blind 2017-08-08T11:09:28Z shka: times surely goes fast ;] 2017-08-08T11:09:30Z edgar-rft joined #lisp 2017-08-08T11:09:36Z kora9: It'll be shock full of all my misunderstandings of how CL works :) 2017-08-08T11:09:40Z sellout- joined #lisp 2017-08-08T11:09:41Z goosnargh quit (Ping timeout: 268 seconds) 2017-08-08T11:10:27Z engblom: For me the most difficult part with Lisp is to actually get a good environment and a good workflow. I have said it before, but I really wish there was a tool similar to 'lein' for Clojure 2017-08-08T11:10:38Z kora9: engblom: What's lein? 2017-08-08T11:11:01Z kora9: I'm very happy with emacs+slime for the environment 2017-08-08T11:11:48Z engblom: kora9: 'lein' takes care of everything in a Clojure project. It creates projects, it downloads dependencies, it compiles, it gives a connectable repl, it uploads to clojars and much more. 2017-08-08T11:12:08Z damke_ joined #lisp 2017-08-08T11:12:13Z kora9: engblom: Can't you just slime+quicklisp? 2017-08-08T11:12:14Z engblom: kora9: it even downloads Clojure itself 2017-08-08T11:12:21Z kora9: +git? 2017-08-08T11:12:40Z shka: engblom: roswell is something like that 2017-08-08T11:12:48Z jackdaniel: kora9: one could work without any ide, with nano. yet, such nicieties are something sbcl should strive for in the ide 2017-08-08T11:12:54Z shka: as i have beend told, it is flawed 2017-08-08T11:12:59Z jackdaniel: s/sbcl/common lisp ecosystem/ 2017-08-08T11:13:28Z kora9: jackdaniel: I don't see why you'd want to program in nano 2017-08-08T11:13:56Z jackdaniel: I don't see why you'd want to use emacs+slime+quicklisp+git instead of one tool 2017-08-08T11:13:59Z jackdaniel: that's my point 2017-08-08T11:14:16Z Shinmera: Portacle gives you that package! 2017-08-08T11:14:22Z kora9: jackdaniel: Because one tool is inherently less flexible than individual parts 2017-08-08T11:14:36Z jackdaniel: kora9: then drop emacs, it's one tool 2017-08-08T11:14:37Z damke quit (Ping timeout: 268 seconds) 2017-08-08T11:14:48Z kora9: jackdaniel: I can, then I'd use vim 2017-08-08T11:14:50Z engblom: shka: I did not know about Rosewell, and it looks to be something a bit similar to lein. Not as featureful, but apparently under active development 2017-08-08T11:14:55Z kora9: jackdaniel: The rest would still work as-is 2017-08-08T11:14:57Z jackdaniel: I think you miss my point, but nvm 2017-08-08T11:15:03Z kora9: jackdaniel: And you missed mine :) 2017-08-08T11:15:12Z jackdaniel: I'm pretty sure I didn't 2017-08-08T11:15:14Z shka: engblom: yes, they are making it better 2017-08-08T11:15:41Z kora9: jackdaniel: To put it in a better way, what would be the difference between emacs+slime+git and having 'one tool' to do exactly that? 2017-08-08T11:15:55Z kora9: jackdaniel: The only upside I can think of is initial configurability 2017-08-08T11:16:08Z kora9: or rather, ease of initial configuration 2017-08-08T11:16:12Z jackdaniel: which filters 90% of potential CL programmers 2017-08-08T11:16:14Z Shinmera: It's much more approachable by new users and doesn't require learning a billion different things. 2017-08-08T11:16:15Z _death: jackdaniel: once you get to talk about the "common lisp ecosystem" you should realize it's a phantom and only those who care about it may care to implement it 2017-08-08T11:16:15Z jackdaniel: that's pretty big opint 2017-08-08T11:16:32Z Shinmera: Anyway. Portacle. 2017-08-08T11:16:39Z kora9: jackdaniel: Right, so just package emacs+slime+git with whichever easy-to-use configuration you want 2017-08-08T11:16:41Z DingoSaar quit (Remote host closed the connection) 2017-08-08T11:16:42Z jackdaniel: _death: well, I think I'm one of these people, however I may be wrong ;) 2017-08-08T11:16:44Z Shinmera: please donate your precious time to my project, tia 2017-08-08T11:16:50Z kora9: jackdaniel: No need to reinvent the wheel and create an entirely new tool for that 2017-08-08T11:16:55Z arduo quit (Remote host closed the connection) 2017-08-08T11:17:23Z jackdaniel isn't talking about reinventing the wheel, sadly he isn't understood. 2017-08-08T11:17:25Z DingoSaar joined #lisp 2017-08-08T11:17:39Z kora9: jackdaniel: Then explain :) 2017-08-08T11:17:44Z jackdaniel: I did! 2017-08-08T11:17:54Z _death: jackdaniel: what I mean is that others may not care about it as much 2017-08-08T11:18:00Z jackdaniel: ah 2017-08-08T11:18:14Z jackdaniel: kora9: reiterating my arguments would be futile (and silly since we have a backlog) 2017-08-08T11:19:05Z jackdaniel: well, "arguments" - assertions would be more appropriate word 2017-08-08T11:19:18Z kora9: jackdaniel: But there are no valid arguments there, that I can see. You're arguing that one tool is inherently better than three, which is simply not accurate in general 2017-08-08T11:19:18Z rumbler31 joined #lisp 2017-08-08T11:19:20Z engblom: kora9: Some examples: 'lein new app foo' creates a project skeleton for a project called 'foo'. Inside it also have a project file where dependencies can be defined. 'lein repl' will automatically download all dependencies and give a repl for this project. The dependencies are just for this project and you will not have version conflicts with other. 2017-08-08T11:19:45Z kora9: engblom: So it's some sort of package manager? 2017-08-08T11:20:09Z Shinmera: engblom: There's a couple of skeleton generators in quicklisp. 2017-08-08T11:20:44Z Shinmera: (Portacle includes one too) 2017-08-08T11:21:21Z engblom: kora9: Much more. It is also a builder. 'lein uberjar' will compile a standalone product. If you create a library, lein can upload it to the repository. lein also supports plugins for lint (checking common mistakes) etc. 2017-08-08T11:21:32Z kora9: jackdaniel: Perhaps I've just used *nix for a long time, but I find that one tool for the job usually means a whole lot less flexibility when that tool does more than one thing instead of strining together multiple tools that more-or-less does one thing well 2017-08-08T11:21:59Z Shinmera: kora9: CL is the wrong thing for you then :^) 2017-08-08T11:22:31Z kora9: engblom: That sounds like it could be accomplished more or less by a shell script? 2017-08-08T11:22:34Z kora9: Shinmera: How so? 2017-08-08T11:23:01Z Shinmera: It follows much more in the footsteps of "big things" than "small things". 2017-08-08T11:23:23Z Shinmera: Also see: the unix haters handbook. 2017-08-08T11:23:37Z kora9: Shinmera: I don't think it does, other than high abstraction, but this is in reference to utilities rather than programming paradigms 2017-08-08T11:23:43Z kora9: Yeah I've read it. 2017-08-08T11:23:52Z rumbler31 quit (Ping timeout: 268 seconds) 2017-08-08T11:24:08Z kora9: There are downsides to the unix approach, but the practical upsides overwhelmingly overshadows the theoretical downsides 2017-08-08T11:24:54Z Shinmera: engblom: Anyway, all of those things can and are done by one or more libraries and tools out there in the CL landscape. The issue is finding the right one. Advocating one of them as "the" solution often goes against a lot of people's ideas of how stuff should work, though. 2017-08-08T11:25:20Z kora9: What I took away from it is that it's possible to create a much better operating system, in theory, than Unix-style. Which is probably true, and so far from actually being in existence that it's pointless to think about atm. 2017-08-08T11:25:25Z Shinmera: engblom: So often the end product is that it's not as welcoming for new people because they need to scrape together the solutions first. 2017-08-08T11:25:29Z engblom: Shinmera: I know, and that is where I most of the time get stuck when I try to begin with CL. 2017-08-08T11:26:07Z Shinmera: engblom: I can understand that. I just don't know how to adequately solve the problem because both sides have good arguments. 2017-08-08T11:26:11Z _death: LW/ACL have IDEs.. there have been attempts at opensource IDEs as well, but then there's a large group of people who simply prefer to use emacs+slime+quicklisp+git+... 2017-08-08T11:26:25Z Amplituhedron quit (Remote host closed the connection) 2017-08-08T11:26:58Z kora9: _death: Wouldn't it be simpler to just create a package with all of that and ease-of-use configuration? 2017-08-08T11:27:07Z Shinmera: kora9: PORTACLE 2017-08-08T11:27:07Z _death: kora9: there are several 2017-08-08T11:27:15Z kora9: Ah. So what's the issue? 2017-08-08T11:27:32Z Shinmera: It's a hard problem for one 2017-08-08T11:27:45Z Shinmera: And for the other, the issue is what I talked to engblom about just now. 2017-08-08T11:27:55Z _death: it also requires maintenance, I assume 2017-08-08T11:28:21Z kora9: I suppose netbeans could be modified to do lisp 2017-08-08T11:28:24Z Shinmera: Ideally when I'm done with portacle all I need to do is periodically run "build" on my VMs to upgrade versions every now and again. 2017-08-08T11:29:15Z Shinmera: I'm almost there, but uh. Unix is a hostile environment for that kind of thing. 2017-08-08T11:29:29Z kora9: Shinmera: How so? 2017-08-08T11:29:34Z _death: when it comes to "newbies", I am of the opinion that as programmers they should adapt and try to get out of this "newbie" state as quickly as possible.. so I don't care for tools making it easier for them to "get hooked" 2017-08-08T11:29:36Z Shinmera: You're expected to compile things for your system. 2017-08-08T11:29:44Z Shinmera: Trying to package things independently is a nightmare. 2017-08-08T11:30:01Z kora9: Shinmera: You can use something like flatpak 2017-08-08T11:30:22Z kora9: But yeah, package management is inherently in the (subjective) domain of the distro 2017-08-08T11:31:20Z Shinmera: I'll go out on a limb and say flatpak would not fit my needs. 2017-08-08T11:31:29Z kora9: How so? 2017-08-08T11:31:43Z Shinmera: Because of the kind of integration I need. 2017-08-08T11:31:53Z kora9: Which is? 2017-08-08T11:32:56Z varjag quit (Ping timeout: 260 seconds) 2017-08-08T11:33:02Z Shinmera: I don't care to explain it all here because I'm not going to switch tech at this point 2017-08-08T11:33:52Z Shinmera: If you think it can be done and are willing to put in the time, you're more than welcome to put together a prototype to show me. https://github.com/Shinmera/portacle 2017-08-08T11:34:23Z kora9: Okay. Well, there are very few things flatpak can't do. It's intended to be a solution to the exact issue you're presenting, packaging things to a wide array of linux distributions with internal dependency handling using linux namespaces 2017-08-08T11:34:43Z kora9: I don't use it as I don't need it. 2017-08-08T11:37:03Z Amplituhedron joined #lisp 2017-08-08T11:37:26Z Harag quit (Ping timeout: 268 seconds) 2017-08-08T11:40:04Z keviv joined #lisp 2017-08-08T11:40:15Z Ven joined #lisp 2017-08-08T11:40:35Z jackdaniel: if you are interested in lisp terminology, you may look for `blub paradox' - term used in one of PG essays 2017-08-08T11:40:39Z Ven is now known as Guest12799 2017-08-08T11:40:41Z kora9: Shinmera: But if the *nix environment is too foreign/strange for a lot of people, which I can see, it takes some time to get used to just like with emacs or lisp or git or anything, then using netbeans as the IDE might make sense. It is cross-platform (written in Java), open source, does a pretty good job, can download a compiler from within the application and can be modified for a wide array of things 2017-08-08T11:41:05Z Shinmera: kora9: Sure. Then build it. 2017-08-08T11:41:22Z Bike joined #lisp 2017-08-08T11:41:24Z Bike quit (Remote host closed the connection) 2017-08-08T11:41:52Z Bike joined #lisp 2017-08-08T11:42:36Z kora9: Shinmera: Why should that fall on me? I neither need it or advocate it. You are 2017-08-08T11:42:45Z Shinmera: I'm advocating Portacle. 2017-08-08T11:42:46Z kora9: I'm happy with emacs+slime+git+quicklisp 2017-08-08T11:43:02Z kora9: Fair enough 2017-08-08T11:43:14Z _death: kora9: I checked the portacle website, guess which sections it had 2017-08-08T11:43:26Z kora9: _death: Enlighten me :) 2017-08-08T11:43:40Z Shinmera: I also advocate alternate solutions, but I'm not going to build them. 2017-08-08T11:43:42Z _death: https://shinmera.github.io/portacle/ 2017-08-08T11:44:33Z kora9: _death: Yeah? I already know that it's emacs+quicklisp etc, I checked out shinmera's github page 2017-08-08T11:45:05Z _death: kora9: so what is the issue? 2017-08-08T11:45:10Z kora9: It's what I proposed earlier, to simply bundle it with easy-to-start configuration 2017-08-08T11:45:34Z kora9: _death: I don't have an issue? Shinmera thought unix was hostile for packaging reasons and I suggested using flatpak to overcome it 2017-08-08T11:46:04Z francogrex quit (Ping timeout: 268 seconds) 2017-08-08T11:47:37Z _death: ok.. let's discuss lisp instead then :) 2017-08-08T11:48:08Z kora9: :P 2017-08-08T11:58:13Z Lord_of_Life quit (Changing host) 2017-08-08T11:58:13Z Lord_of_Life joined #lisp 2017-08-08T11:58:13Z Lord_of_Life quit (Changing host) 2017-08-08T11:58:13Z Lord_of_Life joined #lisp 2017-08-08T12:05:43Z goosnargh joined #lisp 2017-08-08T12:11:40Z goosnargh quit (Ping timeout: 260 seconds) 2017-08-08T12:11:41Z Harag joined #lisp 2017-08-08T12:12:45Z varjag joined #lisp 2017-08-08T12:14:16Z shka: well, i personally think that slime+emacs is not ideal, but it is pretty good 2017-08-08T12:14:32Z shka: and most likely best there is 2017-08-08T12:17:15Z Murii quit (Ping timeout: 255 seconds) 2017-08-08T12:17:50Z Bike quit (Ping timeout: 240 seconds) 2017-08-08T12:20:06Z rumbler31 joined #lisp 2017-08-08T12:22:39Z antoszka: kora9: I didn't follow the whole discussion, but if you're coming from the vim world you may enjoy Spacemacs with the CL layer enabled. This is essentially emacs+slime+goodies, but with automated configuration managament and good vim emulation. 2017-08-08T12:22:58Z antoszka: sragarager 2017-08-08T12:24:35Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-08T12:31:19Z kora9 quit (Ping timeout: 255 seconds) 2017-08-08T12:31:22Z rumbler31 joined #lisp 2017-08-08T12:34:33Z _cosmonaut_ joined #lisp 2017-08-08T12:35:02Z jameser joined #lisp 2017-08-08T12:40:07Z Lowl3v3l quit (Remote host closed the connection) 2017-08-08T12:45:02Z sellout- quit (Quit: Leaving.) 2017-08-08T12:45:02Z JohnTalent quit (Quit: leaving) 2017-08-08T12:46:35Z Achylles joined #lisp 2017-08-08T12:47:27Z sellout- joined #lisp 2017-08-08T12:48:15Z kora9 joined #lisp 2017-08-08T12:48:32Z kora9: antoszka: That's somewhat similar to how I use it anyways. I use evil in emacs for 'vim mode' 2017-08-08T12:49:13Z kora9: It's really good 2017-08-08T12:49:56Z antoszka: Yeah, so in spacemacs it's nicely packaged with additional good stuff (in my opinion, some people prefer to roll their own setup). 2017-08-08T12:50:21Z kora9: antoszka: Yeah I looked at it initially 2017-08-08T12:50:40Z kozy: are lisper using emacs in terminal for lisp? 2017-08-08T12:51:13Z beach: kozy: I don't understand the question. 2017-08-08T12:51:31Z kora9: I use the GUI (x11) version typically. I've hidden the toolbars though. 2017-08-08T12:51:48Z kora9: Mostly because terminals are slow 2017-08-08T12:51:59Z kozy: slow for what perspective? 2017-08-08T12:52:17Z kora9: I/O in terminals are slow compared to not-using-terminal-emulation 2017-08-08T12:52:45Z kora9: kozy: Try timing tar zxvf vs tar zxf for example 2017-08-08T12:52:53Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-08T12:53:15Z kozy: aha 2017-08-08T12:53:31Z kora9: I use 'st' though, which is pretty fast, but most terminals are ridiculously slow 2017-08-08T12:55:01Z antoszka: Actually the VTE widget from gnome terminal is surprisingly fast. I use a vte-based terminal and rxvt-unicode, which is actually slower, but still usable. Can't do any other terminals, because I like fully mouseless URL yanking/launching. 2017-08-08T12:55:22Z antoszka: Which only those two have (as far as I've researched). Recommended. 2017-08-08T12:56:30Z kora9: antoszka: I do mouseless url yanking via st pipe 2017-08-08T12:56:48Z kora9: antoszka: you patch st with the pipe patch and then pipe it out to dmenu to select the url 2017-08-08T12:56:48Z Amplituhedron quit (Ping timeout: 240 seconds) 2017-08-08T12:57:03Z kora9: I've been meaning to integrate it with stumpwm instead of using dmenu 2017-08-08T12:57:16Z kora9: As for urxvt.. it's sloohoohoow. 2017-08-08T12:57:52Z damke_ quit (Read error: Connection reset by peer) 2017-08-08T12:57:57Z antoszka: Yeah, possible, but can't be bothered. 2017-08-08T12:58:08Z damke joined #lisp 2017-08-08T12:58:15Z kora9: Really quite simple to setup, simpler than you'd think 2017-08-08T12:58:42Z pjb joined #lisp 2017-08-08T12:58:44Z kora9: But if I didn't use st I'd use urxvt. It's what I used prior 2017-08-08T12:58:52Z antoszka: There were other things that I didn't like/miss in st – but let's move onto #lispcafe if we want to discuss this further :) 2017-08-08T12:58:53Z jameser joined #lisp 2017-08-08T13:00:47Z doesthiswork joined #lisp 2017-08-08T13:02:56Z Amplituhedron joined #lisp 2017-08-08T13:03:49Z jdz: I recently learned about 'st' (from https://danluu.com/term-latency/), not going to use it :) 2017-08-08T13:04:10Z jdz: Everybody should be using emacs-shell, anyway. 2017-08-08T13:05:15Z yrk joined #lisp 2017-08-08T13:05:54Z xantoz: xterm is pretty fast in my experience, even faster than st. mouseless url yank is possible through setting xterm*printerCommand in ~/.Xdefaults 2017-08-08T13:06:06Z xantoz: works the same as pipe with st 2017-08-08T13:07:10Z xantoz: plus unparalleled support for vintage terminal protocols (not that I use it that often, although dblwide is pretty useful when I want something to stand out in logs) 2017-08-08T13:07:48Z ebzzry joined #lisp 2017-08-08T13:07:49Z goosnargh joined #lisp 2017-08-08T13:08:57Z LiamH joined #lisp 2017-08-08T13:10:35Z engblom quit (Read error: Connection reset by peer) 2017-08-08T13:11:17Z rumbler31 quit (Remote host closed the connection) 2017-08-08T13:11:30Z engblom joined #lisp 2017-08-08T13:12:43Z goosnargh quit (Ping timeout: 255 seconds) 2017-08-08T13:13:35Z Bike joined #lisp 2017-08-08T13:15:24Z rumbler31 joined #lisp 2017-08-08T13:16:29Z dddddd joined #lisp 2017-08-08T13:19:55Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-08T13:23:47Z Amplituhedron quit (Remote host closed the connection) 2017-08-08T13:24:07Z varjag quit (Ping timeout: 268 seconds) 2017-08-08T13:25:18Z nydel joined #lisp 2017-08-08T13:26:34Z damke_ joined #lisp 2017-08-08T13:28:26Z damke quit (Ping timeout: 268 seconds) 2017-08-08T13:32:15Z varjag joined #lisp 2017-08-08T13:33:42Z Bourne joined #lisp 2017-08-08T13:34:16Z Amplituhedron joined #lisp 2017-08-08T13:36:34Z EvW joined #lisp 2017-08-08T13:38:15Z antoszka: xantoz: actually I love the idea of printerCommand in xterm 2017-08-08T13:38:47Z antoszka: xantoz: thanks for the hint – got it scripted already? 2017-08-08T13:39:00Z jameser_ joined #lisp 2017-08-08T13:39:41Z antoszka: And yeah, it's *fast* and *compatible*. 2017-08-08T13:40:43Z kora9: Is it possible to undefine parameters? Like fmakunbound but for parameters? 2017-08-08T13:41:39Z beach: clhs makunbound 2017-08-08T13:41:39Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_makunb.htm 2017-08-08T13:41:44Z jameser quit (Ping timeout: 260 seconds) 2017-08-08T13:41:56Z kora9: Oh that makes sense :D 2017-08-08T13:42:33Z beach: kora9: You are not using the word "parameter" right. While DEFPARAMETER is indeed a standard macro, it doesn't create a "parameter". It creates a "special variable". 2017-08-08T13:42:41Z ecraven: were e's really that expensive back then? 2017-08-08T13:42:45Z kora9: beach: Oh. 2017-08-08T13:43:03Z antoszka: ecraven: Yep. 2017-08-08T13:43:03Z beach: kora9: A "parameter" is a symbol that appears in the lambda list of a function, a macro, etc. 2017-08-08T13:43:46Z kora9: beach: Oh. Why is the function called defparameter? 2017-08-08T13:44:41Z beach: kora9: It is not a function. It is a macro. There is no great point in asking "why" about such things. Most of the time, the answer would just be "for historical reasons". 2017-08-08T13:45:01Z beach: kora9: Furthermore, MAKUNBOUND does not "un-define" the variable. It just makes it unbound. 2017-08-08T13:45:06Z kora9: beach: Ah 2017-08-08T13:45:34Z kora9: beach: Yeah I noticed the latter part, that it unbounds it (which is strange to me that it's not unbind). I also noticed that setting the variable to nil locks it! 2017-08-08T13:46:35Z basket: kora9: What do you mean by "locks it"? 2017-08-08T13:46:56Z beach: kora9: There is no concept of "locking" variable in Common Lisp. 2017-08-08T13:47:14Z kora9: Try setting to nil and then doing (makunbound ..) on it 2017-08-08T13:47:31Z beach: That should work. 2017-08-08T13:48:13Z kora9: You get #u: print-everything(noFormFeed) \n\ 2017-08-08T14:05:13Z xantoz: etc. 2017-08-08T14:05:15Z himmAllRight quit (Remote host closed the connection) 2017-08-08T14:05:37Z antoszka: one other thing xterm hasn't got: rectangular selection. 2017-08-08T14:05:56Z xantoz: I wasn't aware other terminals had this 2017-08-08T14:06:10Z himmAllRight joined #lisp 2017-08-08T14:06:31Z xantoz: rectangular selection is quite useful in emacs 2017-08-08T14:08:20Z goosnargh joined #lisp 2017-08-08T14:08:38Z Xach: let us chat of lisp. 2017-08-08T14:08:50Z beach agrees with Xach. 2017-08-08T14:08:53Z antoszka: yeah, → #lispcafe with that 2017-08-08T14:09:01Z rumbler31 joined #lisp 2017-08-08T14:09:02Z aceluck quit 2017-08-08T14:11:13Z azzamsa quit (Ping timeout: 248 seconds) 2017-08-08T14:12:18Z raynold quit (Quit: Connection closed for inactivity) 2017-08-08T14:12:39Z neoncontrails joined #lisp 2017-08-08T14:13:07Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-08T14:16:11Z jameser_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-08T14:20:39Z jameser joined #lisp 2017-08-08T14:23:16Z Kyo91 joined #lisp 2017-08-08T14:24:04Z xaotuk quit (Ping timeout: 246 seconds) 2017-08-08T14:27:51Z xristos quit (Quit: ZNC - http://znc.in) 2017-08-08T14:30:52Z flamebeard quit (Quit: Leaving) 2017-08-08T14:30:57Z nirved quit (Ping timeout: 248 seconds) 2017-08-08T14:32:54Z papachan joined #lisp 2017-08-08T14:38:29Z xaotuk joined #lisp 2017-08-08T14:41:20Z grumble quit (Read error: Connection reset by peer) 2017-08-08T14:42:22Z grumble joined #lisp 2017-08-08T14:43:56Z phinxy joined #lisp 2017-08-08T14:45:38Z diegs_ joined #lisp 2017-08-08T14:46:17Z LiamH joined #lisp 2017-08-08T14:50:23Z warweasle joined #lisp 2017-08-08T14:50:36Z damke joined #lisp 2017-08-08T14:52:56Z damke_ quit (Ping timeout: 268 seconds) 2017-08-08T14:55:02Z yrk quit (Read error: Connection reset by peer) 2017-08-08T14:56:17Z yrk joined #lisp 2017-08-08T14:57:52Z Guest12799 quit (Ping timeout: 268 seconds) 2017-08-08T14:57:56Z al-damiri joined #lisp 2017-08-08T14:59:42Z rippa joined #lisp 2017-08-08T15:00:28Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-08T15:04:07Z jameser quit (Ping timeout: 240 seconds) 2017-08-08T15:04:46Z jameser joined #lisp 2017-08-08T15:05:08Z Bourne left #lisp 2017-08-08T15:05:59Z eelster joined #lisp 2017-08-08T15:09:30Z goosnargh joined #lisp 2017-08-08T15:12:09Z FreeBirdLjj joined #lisp 2017-08-08T15:12:26Z EvW joined #lisp 2017-08-08T15:13:50Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-08T15:17:58Z phoe quit (Ping timeout: 276 seconds) 2017-08-08T15:18:08Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-08T15:19:06Z phoe joined #lisp 2017-08-08T15:20:48Z shiranuidong quit (Remote host closed the connection) 2017-08-08T15:20:58Z tessier joined #lisp 2017-08-08T15:20:58Z tessier quit (Changing host) 2017-08-08T15:20:58Z tessier joined #lisp 2017-08-08T15:22:11Z emaczen joined #lisp 2017-08-08T15:25:16Z damke_ joined #lisp 2017-08-08T15:25:18Z xuxuru joined #lisp 2017-08-08T15:27:36Z Ven joined #lisp 2017-08-08T15:28:00Z Ven is now known as Guest99057 2017-08-08T15:28:04Z damke quit (Ping timeout: 268 seconds) 2017-08-08T15:28:37Z AxelAlex joined #lisp 2017-08-08T15:29:32Z papachan: why this isnt working in CL ? (((lambda (f) (lambda (x) (f x))) (lambda (z) (+ 1 z))) 3) 2017-08-08T15:29:39Z papachan: its working with racket 2017-08-08T15:31:04Z kozy: is there way to remove trailing ~% in `(loop for x in lst do(format t "~A ~A;~%" (getf x :type) (getf x :name))` (just iterating list and print :type :name keyword and newline) 2017-08-08T15:31:28Z TMA: papachan: there is different namespace for invokable things in CL 2017-08-08T15:32:30Z papachan: TMA how i can have this working fine? 2017-08-08T15:32:32Z TMA: papachan: (let ((car '(ford toyota))) (car car)) ; => FORD 2017-08-08T15:32:55Z TMA: papachan: use (funcall f x) instead of (f x) 2017-08-08T15:33:01Z dlowe: kozy: if you want a newline, that would be the ~% 2017-08-08T15:33:25Z kozy: dlowe:  what I want to is how can I remove trailing newline 2017-08-08T15:33:33Z xuxuru quit (Quit: xuxuru) 2017-08-08T15:34:15Z LiamH quit (Ping timeout: 268 seconds) 2017-08-08T15:35:08Z Achylles quit (Ping timeout: 240 seconds) 2017-08-08T15:35:20Z dlowe: kozy: (loop for sublist on list as x = (car sublist) do (format t "~a ~a;" (getf x :type) (getf x :name)) (when (cdr sublist) (terpri))) 2017-08-08T15:35:22Z TMA: papachan: (f x) is for f that is defined by defun, labels or flet (and others like defmacro, defgeneric, ...) 2017-08-08T15:35:22Z papachan: TMA i had already tried with funcall, but it give me : illegal function call 2017-08-08T15:35:34Z papachan: TMA ah 2017-08-08T15:35:38Z papachan: myabe the the problem 2017-08-08T15:36:08Z TMA: papachan: also, you are trying to invoke ((something) arguments) 2017-08-08T15:36:28Z TMA: papachan: you need to use funcall there too: (funcall (something) arguments) 2017-08-08T15:36:36Z kozy: how can I know which part is evaluate and which part is not evaluated in macro function like setf? 2017-08-08T15:37:03Z TMA: papachan: the only exception is a lambda: ((lambda (x) x) 2) => 2 2017-08-08T15:37:58Z dlowe: alternately, (format nil "~:{~a ~a;~:^~%~}" (mapcar (lambda (x) (list (getf x :type) (getf x :name))) list)) 2017-08-08T15:38:04Z TMA: papachan: but you are nesting that too far: (funcall ((lambda (f) (lambda (x) (funcall f x))) (lambda (z) (+ 1 z))) 3) 2017-08-08T15:38:16Z kozy: yeah it looks better dlowe 2017-08-08T15:39:21Z dlowe: kozy: macros just return code, so it depends on what you've written. 2017-08-08T15:40:16Z hlavaty quit (Remote host closed the connection) 2017-08-08T15:41:04Z papachan: TMA, thanks. i see now the difference 2017-08-08T15:41:34Z papachan: didnt know i had to use funcall at left 2017-08-08T15:41:41Z d4ryus2 joined #lisp 2017-08-08T15:43:12Z vlatkoB quit (Remote host closed the connection) 2017-08-08T15:44:41Z vlatkoB joined #lisp 2017-08-08T15:45:16Z d4ryus1 quit (Ping timeout: 276 seconds) 2017-08-08T15:46:11Z mejja joined #lisp 2017-08-08T15:48:11Z smazga joined #lisp 2017-08-08T15:48:17Z smazga quit (Client Quit) 2017-08-08T15:48:56Z smazga joined #lisp 2017-08-08T15:52:10Z brendos quit (Ping timeout: 240 seconds) 2017-08-08T15:52:42Z knusbaum joined #lisp 2017-08-08T15:54:24Z LiamH joined #lisp 2017-08-08T15:56:21Z neoncontrails quit (Remote host closed the connection) 2017-08-08T15:56:59Z neoncontrails joined #lisp 2017-08-08T15:57:54Z kora9: p;[[[[[[[[[[[[[[[[[[[gffff] 2017-08-08T15:59:13Z warweasle: kora9: You need #perl 2017-08-08T16:01:35Z neoncont_ joined #lisp 2017-08-08T16:01:37Z neoncontrails quit (Ping timeout: 260 seconds) 2017-08-08T16:05:32Z sjl__ is now known as sjl 2017-08-08T16:08:01Z kora9: warweasle: Ha, sorry. Cat! 2017-08-08T16:08:29Z kora9: She likes the Lisp too :) 2017-08-08T16:08:47Z mejja quit (Quit: \ No newline at end of file) 2017-08-08T16:08:59Z fsmunoz joined #lisp 2017-08-08T16:10:13Z goosnargh joined #lisp 2017-08-08T16:11:41Z _cosmonaut_ joined #lisp 2017-08-08T16:12:08Z Achylles joined #lisp 2017-08-08T16:12:31Z marvin3 joined #lisp 2017-08-08T16:14:31Z LiamH quit (Ping timeout: 255 seconds) 2017-08-08T16:14:58Z marvin2 quit (Ping timeout: 255 seconds) 2017-08-08T16:15:01Z goosnargh quit (Ping timeout: 246 seconds) 2017-08-08T16:16:09Z teggi joined #lisp 2017-08-08T16:17:27Z mishoo quit (Ping timeout: 240 seconds) 2017-08-08T16:23:16Z kora9: How does CL stack up to Haskell? I've noticed that's another well thought of language 2017-08-08T16:25:10Z beach: kora9: This is the wrong forum for comparing different programming languages. This channel is dedicated to Common Lisp. 2017-08-08T16:25:26Z kora9: Aha. What's a good forum? 2017-08-08T16:25:44Z beach wouldn't know. 2017-08-08T16:27:25Z wooden quit (Read error: Connection reset by peer) 2017-08-08T16:28:01Z wooden joined #lisp 2017-08-08T16:29:30Z EvW quit (Ping timeout: 240 seconds) 2017-08-08T16:32:32Z EvW joined #lisp 2017-08-08T16:34:58Z _cosmonaut_ quit (Remote host closed the connection) 2017-08-08T16:35:56Z vsync_ is now known as vsync 2017-08-08T16:37:58Z warweasle: kora9: Lisp is superior to all other languages. Including English. 2017-08-08T16:38:23Z warweasle: "This is madness!" "This is #lisp!" 2017-08-08T16:39:00Z dlowe: kora9: there are no unbiased forums. 2017-08-08T16:39:32Z Guest99057 quit (Ping timeout: 260 seconds) 2017-08-08T16:41:31Z kora9: :) 2017-08-08T16:41:38Z kora9: dlowe: I wasn't expecting unbiased 2017-08-08T16:44:33Z damke_ quit (Ping timeout: 268 seconds) 2017-08-08T16:47:08Z phoe: kora9: it does not 2017-08-08T16:47:14Z phoe: neither does Haskell 2017-08-08T16:48:28Z phoe: the best way to get to know this is, ask the Lisp guys (us) how we do things around here, ask the Haskell guys how they do things around their regions, meditate on the results, ask the resulting questions, listen to the answers, go back to meditation. Repeat for as long as you want. 2017-08-08T16:49:24Z defaultxr joined #lisp 2017-08-08T16:54:56Z dlowe: phoe++ 2017-08-08T16:55:10Z warweasle: kora9: You can learn both and then compare them across different projects. Or you can look at them at http://rosettacode.org/wiki/Rosetta_Code 2017-08-08T16:55:32Z warweasle: But word of warning: Haskell contains large doses of monads. 2017-08-08T16:56:30Z fsmunoz quit (Ping timeout: 240 seconds) 2017-08-08T16:57:04Z phoe: oh yes, Rosetta! 2017-08-08T16:57:12Z phoe: warweasle: and Lisp contains large doses of parentheses. 2017-08-08T16:57:15Z kora9: warweasle: That's great! Thanks :) 2017-08-08T16:57:19Z Karl_Dscc joined #lisp 2017-08-08T16:57:43Z phoe: and Java contains large doses of public static volatile keywords, and C contains large doses of pointers, and C++ contains large doses of *everything*. 2017-08-08T16:58:11Z phoe: That's why all them languages are different. You want to get to know it, you get to eat its food for a moment. :) 2017-08-08T17:01:37Z warweasle: phoe: Lisp contains trace amounts of alien technology. 2017-08-08T17:02:52Z mazoe quit (Ping timeout: 260 seconds) 2017-08-08T17:03:58Z scymtym quit (Ping timeout: 255 seconds) 2017-08-08T17:04:12Z kora9: warweasle: Land of Lisp :D 2017-08-08T17:05:00Z warweasle: kora9: https://www.youtube.com/watch?v=HM1Zb3xmvMc 2017-08-08T17:06:08Z shka_ joined #lisp 2017-08-08T17:06:17Z Guest4461 is now known as caffe 2017-08-08T17:06:26Z caffe quit (Changing host) 2017-08-08T17:06:26Z caffe joined #lisp 2017-08-08T17:06:32Z warweasle: Haskell doesn't have a music video. 2017-08-08T17:07:08Z kora9: warweasle: :D 2017-08-08T17:07:13Z scymtym joined #lisp 2017-08-08T17:07:53Z shka_: yes 2017-08-08T17:07:58Z shka_: lisp superior 2017-08-08T17:07:59Z shka_: ;] 2017-08-08T17:08:25Z shka_: and let's not forget about eternal flame 2017-08-08T17:09:22Z grouzen joined #lisp 2017-08-08T17:10:04Z _krator44 is now known as krator44 2017-08-08T17:10:14Z krator44 quit (Changing host) 2017-08-08T17:10:14Z krator44 joined #lisp 2017-08-08T17:10:14Z krator44 quit (Changing host) 2017-08-08T17:10:14Z krator44 joined #lisp 2017-08-08T17:10:57Z goosnargh joined #lisp 2017-08-08T17:11:08Z eazar001 joined #lisp 2017-08-08T17:12:24Z EvW quit (Remote host closed the connection) 2017-08-08T17:15:27Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-08T17:16:55Z dlowe: kora9: you seem to be pursuing a line of questioning "should I learn how to program in lisp? Is it worth it?" and the answer here is "yes." I'm not sure what else can convince you, but the next step is to pick up a book and start writing some code. 2017-08-08T17:18:50Z m00natic joined #lisp 2017-08-08T17:19:08Z kora9: dlowe: Nah. I'm invested in learning CL. I might learn Scheme down the line. I'm mainly curious about other languages, but I'm not switching to Haskell etc. 2017-08-08T17:20:54Z dlowe: kora9: fair enough :) 2017-08-08T17:20:55Z kozy: is there something cond with no skip? 2017-08-08T17:21:02Z EvW1 joined #lisp 2017-08-08T17:21:13Z dlowe: kozy: you mean like C's switch statement? 2017-08-08T17:22:15Z dlowe: There is also a #clnoobs channel if you want a more targeted place to ask lisp questions. 2017-08-08T17:22:29Z kozy: ok thanks dlowe 2017-08-08T17:22:32Z kora9: dlowe: The hard part for me was deciding, initially, whether I should go Scheme or CL. Scheme seems really nice too, but eventually it seemed as though CL had a better userbase/libraries for practical programming and the language seemed a bit more pragmatic too 2017-08-08T17:22:52Z dlowe: kozy: you mean like C's switch statement? 2017-08-08T17:22:54Z kora9: I figure, though, that *a lot* of knowledge will carry over between those two languages if I decide to learn Scheme later 2017-08-08T17:23:11Z kozy: yeah like C's switch without break dlowe 2017-08-08T17:23:35Z dlowe: kozy: there is not. You could make one with a macro. 2017-08-08T17:24:30Z dlowe: if all else fails, you can use GOTO :) 2017-08-08T17:25:04Z phoe: kozy: tagbody? 2017-08-08T17:25:35Z shifty quit (Remote host closed the connection) 2017-08-08T17:26:03Z kozy: there should be condition check phoe 2017-08-08T17:26:15Z phoe: what kind of condition check? 2017-08-08T17:26:30Z phoe: you can make a trivial fallthrough switch using a tagbody with END tag at the end - wherever you would insert a break statement in C, you instead (when foo (go end)) - this kind of condition check? 2017-08-08T17:27:05Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-08T17:28:54Z Bike: (defmacro fcond (&rest clauses) (let ((tag (gensym))) `(macrolet ((done () (list 'go ,tag))) (tagbody ,@(loop for clause in clause collecting `(when ,(first clause) ,@(rest clause))) ,tag))) like? 2017-08-08T17:30:04Z phoe: Bike: I was about to write that 2017-08-08T17:30:24Z vlatkoB quit (Ping timeout: 260 seconds) 2017-08-08T17:31:42Z vlatkoB joined #lisp 2017-08-08T17:35:39Z happy-dude joined #lisp 2017-08-08T17:37:55Z dlowe: I think what he wants is more: 2017-08-08T17:37:57Z dlowe: (defmacro cond-jump (&rest body) (let ((tags nil) (end (gensym))) `(tagbody ,@(loop for f in body as tag = (gensym) do (push (cons tag (cdr f)) tags) collect `(when ,(car f) (go ,tag))) (go ,end) ,@(loop for t in (nreverse tags) append t) ,end))) 2017-08-08T17:38:46Z Bike: uh... i don't follow. 2017-08-08T17:39:17Z Bike: no, wait. yeah. 2017-08-08T17:39:54Z kora9: dlowe: It's very hard to explain, but CL has made programming fun for me, even though I'm not good at it yet and there's much left to learn and discover. It doesn't feel like a chore. :-) 2017-08-08T17:40:06Z dlowe: there's probably a nicer way to structure the end result 2017-08-08T17:40:40Z dlowe: kozy: ^ 2017-08-08T17:41:13Z kozy: oh... sorry 2017-08-08T17:41:13Z dlowe: kozy: the main draw and beauty of lisp is that you don't have to wait for some far-away language implementors to add features. You can add features yourself. Now. 2017-08-08T17:41:29Z phoe: we need a bot that, when invoked, searches the IRC logs for the last posted Lisp snipped, automatically indents it, posts on Lisp paste and returns the link 2017-08-08T17:42:00Z vlatkoB quit (Read error: Connection timed out) 2017-08-08T17:42:01Z dlowe: I can make plexi do that pretty easily. 2017-08-08T17:42:06Z phoe: dlowe: can you add lambdas to lisp? I heard Java still does not have them done right 2017-08-08T17:42:11Z phoe: dlowe: pretty please 2017-08-08T17:42:15Z vlatkoB joined #lisp 2017-08-08T17:42:18Z dlowe: phoe: if you insist. 2017-08-08T17:42:24Z kora9: dlowe: Aye. It feels as though whenever I'm programming in CL I'm creating a programming language with functions tailored to what I'm doing. It seems very malleable so to speak 2017-08-08T17:42:38Z phoe: programming in Lisp is like talking 2017-08-08T17:42:58Z dlowe: kozy: the defmacro form I posted above does what you want 2017-08-08T17:42:59Z phoe: very interactive, you get responses immediately, and you can teach it a lot of things 2017-08-08T17:43:41Z Xach: I like mikel evins's analogy 2017-08-08T17:43:50Z kozy: i'm trying to upload my source code 2017-08-08T17:43:58Z phoe: Xach: can you link it? 2017-08-08T17:44:00Z phoe: kozy: paste.lisp.org 2017-08-08T17:44:17Z Xach: phoe: https://www.reddit.com/r/lisp/comments/4oo1cp/common_lisp_for_clojure_programmer/d4eec68/ 2017-08-08T17:44:32Z Xach: >> Programming with the old interactive languages is less like building something from a plan, and more like teaching things to an eager assistant 2017-08-08T17:48:16Z phoe: That's a good quote 2017-08-08T17:48:25Z neoncont_ quit (Remote host closed the connection) 2017-08-08T17:49:02Z neoncontrails joined #lisp 2017-08-08T17:49:18Z neoncontrails quit (Remote host closed the connection) 2017-08-08T17:49:23Z kozy: dlowe:  line #21 http://ideone.com/oeb4k4 2017-08-08T17:49:46Z neoncontrails joined #lisp 2017-08-08T17:50:06Z kozy: line #21 is what I tried to use COND, first format always print (T), second format when :unsafe T, third format when :unsafe T 2017-08-08T17:50:49Z kozy: so I wanted COND without break, now I solved using progn, don't know right way 2017-08-08T17:51:01Z kora9: How come CL manages to abstract so highly, yet be so fast whereas other attempts at this is very slow? 2017-08-08T17:51:21Z phoe: kora9: macro systems and compiler macros 2017-08-08T17:51:25Z kora9: Is it because it's much older, and thus has had more time to be optimized - or due to fundamental design decisions? 2017-08-08T17:51:28Z kora9: phoe: Oh. 2017-08-08T17:51:30Z phoe: basically - you aren't limited by the compiler 2017-08-08T17:51:35Z phoe: you can teach the compiler 2017-08-08T17:51:44Z kora9: Cool. 2017-08-08T17:52:19Z phoe: and macros are compile-time functions, so if you can compile something once at compile-time (this includes expensive code like pattern matching and such), you can use it in runtime without the compilation cost 2017-08-08T17:52:35Z dlowe: kozy: ok, it actually looks like you wanted two separate conditions, not a cond without break 2017-08-08T17:52:37Z phoe: and also some implementations (especially SBCL) focus a lot on optimizing what's optimizable. 2017-08-08T17:53:07Z dlowe: kozy: in which case two IF (or WHEN statements would be nicer) is appropriate 2017-08-08T17:53:18Z kora9: phoe: I've wondered how that works, how it's possible that I can compile individual functions in CL/SBCL 2017-08-08T17:53:20Z dlowe: kozy: you don't need the PROGN there - there's an implicit PROGN after the DO 2017-08-08T17:53:32Z kozy: oh I didnt know that 2017-08-08T17:53:57Z phoe: kora9: d'oh 2017-08-08T17:53:58Z kora9: phoe: I understand that CL can be either interpreted or compiled, and I vaguely understand sbcl has some sort of JIT compilation? but I can't yet wrap my head around being able to compile individual functions in otherwise interpreted code 2017-08-08T17:53:59Z dlowe: kora9: when you compile a function, it can update the callsites of all the places that function is called. 2017-08-08T17:54:09Z phoe: "otherwise interpreted"? 2017-08-08T17:54:13Z kora9: dlowe: Oh. 2017-08-08T17:54:19Z phoe: in SBCL, everything is compiled by default 2017-08-08T17:54:21Z kora9: phoe: I'm not sure how else to put it 2017-08-08T17:54:23Z kora9: phoe: Oh 2017-08-08T17:54:32Z phoe: even the (+ 2 2) you put in the REPL is first compiled and then executed 2017-08-08T17:54:34Z dlowe: well, not *everything*. But most things. 2017-08-08T17:54:42Z phoe: well, everything enough. :) 2017-08-08T17:54:51Z dlowe: there's an interpreter for small simple forms 2017-08-08T17:54:52Z kora9: phoe: Cool. It's super fast 2017-08-08T17:55:07Z kora9: phoe: Does sbcl compile even when used with sbcl --script? 2017-08-08T17:55:08Z phoe: basically: the compiler is in the memory all the time, available for the user and the programs. 2017-08-08T17:55:15Z phoe: --script just loads a file. 2017-08-08T17:55:16Z kora9: I like that 2017-08-08T17:55:21Z phoe: and yes, it does it. 2017-08-08T17:55:31Z phoe: SBCL does have an interpreter, but it's not really advised to use it. 2017-08-08T17:55:32Z kora9: --script runs it too right? (as opposed to --load)? 2017-08-08T17:55:33Z Ven joined #lisp 2017-08-08T17:55:40Z sjl: is there a built-in function for determining whether one sequence is a (possibly non-contiguous) subsequence of another? 2017-08-08T17:55:47Z phoe: I don't think so 2017-08-08T17:55:49Z sjl: SEARCH only looks for contiguous subsequences 2017-08-08T17:55:57Z phoe: sjl: non-contiguous? can you give an example? 2017-08-08T17:55:58Z Ven is now known as Guest43717 2017-08-08T17:56:17Z phoe: kora9: basically, the compiler is in the memory all the time 2017-08-08T17:56:22Z phoe: and you can access it like everything else 2017-08-08T17:56:24Z sjl: (search-non-contig '(1 2 3) '(0 1 0 2 3)) should be t 2017-08-08T17:56:25Z kora9: Aye 2017-08-08T17:56:41Z raynold joined #lisp 2017-08-08T17:56:41Z Bike: no standard function for that, i'm pretty sure. 2017-08-08T17:56:42Z phoe: you give it a list that's valid code, and it pops out a function 2017-08-08T17:56:47Z phoe: that you can call. 2017-08-08T17:56:52Z sjl: darn 2017-08-08T17:57:06Z phoe: sjl: (0 1 0 1 0 1 2 3) should be okay too? 2017-08-08T17:57:10Z Bike: it shouldn't be that hard to write. find then find with :position i guess. 2017-08-08T17:57:11Z sjl: sure 2017-08-08T17:57:14Z Bike: oh, or not. good point. 2017-08-08T17:57:20Z phoe: then it's kmp's algorithm, modified. 2017-08-08T17:57:32Z emaczen quit (Remote host closed the connection) 2017-08-08T17:57:34Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-08T17:57:45Z kozy: isn't defun pure functional? since it can accept multiple body right? 2017-08-08T17:57:52Z phoe: kora9: as for how you can modify functions in runtime - that's simple 2017-08-08T17:57:59Z phoe: what? it's not functional 2017-08-08T17:58:03Z sjl: basically "is there a way to delete elements from HAYSTACK to make it match NEEDLE" 2017-08-08T17:58:04Z Bike: defun is just about the opposite of pure functional 2017-08-08T17:58:06Z phoe: it modifies the global function table 2017-08-08T17:58:17Z kozy: aha 2017-08-08T17:58:18Z Bike: dunno what "accept multiple body" means though 2017-08-08T17:58:21Z phoe: ^ 2017-08-08T17:58:31Z kozy: &body ? 2017-08-08T17:58:43Z Bike: what does that have to do with anything, though 2017-08-08T17:58:54Z phoe: DEFUN does not accept &body. 2017-08-08T17:58:55Z kozy: (defun (a b c) (body1) (body2) (body3)) 2017-08-08T17:59:03Z phoe: kozy: oh, that! 2017-08-08T17:59:03Z Bike: ...yeah? 2017-08-08T17:59:03Z FreeBirdLjj joined #lisp 2017-08-08T17:59:05Z phoe: it's PROGN. 2017-08-08T17:59:13Z phoe: (progn (foo) (bar) (baz)) 2017-08-08T17:59:19Z phoe: it evaluates forms in order. 2017-08-08T17:59:20Z Bike: that's also the opposite of pure functional? you're calling body1 and body2 for effect 2017-08-08T17:59:31Z phoe: Bike: why, it can be pure functional 2017-08-08T17:59:39Z phoe: except then body1 and body2 do nothing 2017-08-08T17:59:44Z phoe: and can be optimized away. 2017-08-08T18:00:01Z kozy: my slime says it is &body body then what is this? 2017-08-08T18:00:53Z phoe: kozy: &BODY is not allowed in an ordinary lambda list. 2017-08-08T18:00:58Z phoe: In macros, it's allowed. 2017-08-08T18:01:12Z phoe: That argument takes the value of all forms contained within the DEFMACRO. 2017-08-08T18:01:17Z emaczen joined #lisp 2017-08-08T18:01:31Z phoe: Wait wait. Not all forms inside DEFMACRO. 2017-08-08T18:01:36Z phoe: All that follow. 2017-08-08T18:01:48Z phoe: It's basically &REST, just named differently. 2017-08-08T18:02:13Z emaczen: is there anything I should know about hunchentoot I should know when using nginx to port forward to hunchentoot? 2017-08-08T18:02:15Z phoe: clhs 3.4.4 2017-08-08T18:02:15Z specbot: Macro Lambda Lists: http://www.lispworks.com/reference/HyperSpec/Body/03_dd.htm 2017-08-08T18:02:20Z phoe: kozy: ^ 2017-08-08T18:02:26Z nullniverse joined #lisp 2017-08-08T18:03:19Z kozy: thanks I have to read, since I'm just learning lisp 2 days ago 2017-08-08T18:03:26Z phoe: kozy: oh! 2017-08-08T18:03:27Z phoe: in this case 2017-08-08T18:03:31Z phoe: don't worry about &body for now. 2017-08-08T18:03:41Z kozy: yeap.. 2017-08-08T18:03:45Z dlowe: emaczen: make sure to bind to localhost 2017-08-08T18:03:51Z phoe: there are more important things to tend to than &body, which is a part of macro-writing. 2017-08-08T18:04:07Z dlowe: unless you have your app port firewalled 2017-08-08T18:04:33Z kozy: I just have little understand about macro and ', ` & , 2017-08-08T18:04:49Z phoe: kozy: & is used only in lambda lists. 2017-08-08T18:05:02Z kozy: I mean AND for & 2017-08-08T18:05:09Z phoe: kozy: AND? 2017-08-08T18:05:13Z phoe: oh, I got it 2017-08-08T18:05:27Z kozy: yes weird annotation : ) 2017-08-08T18:05:34Z kozy: but you got it 2017-08-08T18:06:03Z phoe: don't worry about these. 2017-08-08T18:06:09Z phoe: the only one you'll want right now is ' 2017-08-08T18:06:12Z emaczen: dlowe: I'm just having trouble getting nginx to forward to hunchentoot like: domain/path/subpath -> domain:9090/path/subpath 2017-08-08T18:06:35Z emaczen: dlowe: It will only forward domain/ to domain:9090/ 2017-08-08T18:07:33Z fkac quit (Remote host closed the connection) 2017-08-08T18:08:53Z dlowe: emaczen: sorry, I'm not proficient with nginx. I've only done the reverse proxy thing with apache 2017-08-08T18:09:05Z diegs_ quit (Ping timeout: 248 seconds) 2017-08-08T18:09:14Z malice` joined #lisp 2017-08-08T18:11:00Z Guest43717 quit (Ping timeout: 260 seconds) 2017-08-08T18:11:41Z goosnargh joined #lisp 2017-08-08T18:12:27Z karswell_ quit (Ping timeout: 240 seconds) 2017-08-08T18:13:02Z karswell_ joined #lisp 2017-08-08T18:16:33Z goosnargh quit (Ping timeout: 248 seconds) 2017-08-08T18:17:45Z Xach: emaczen: hang on, i think i can help. 2017-08-08T18:18:06Z raynold: ahh it's a wonderful day 2017-08-08T18:18:13Z emaczen: Xach: I think I have it all figured out now -- it was purely a nginx issue. 2017-08-08T18:18:43Z emaczen: I was getting pretty desperate and thought maybe someone else here had to configure some hunchentoot setting 2017-08-08T18:21:25Z random-nick: kozy: ' ` , just wrap the following expression in quote, quasiquote and unquote, respectively 2017-08-08T18:23:02Z random-nick: '(a b c) is the equivalent to (quote (a b c)) 2017-08-08T18:23:19Z goosnargh joined #lisp 2017-08-08T18:23:31Z Xach: emaczen: ok. i use nginx and hunchentoot quite a bit and really like it. 2017-08-08T18:25:15Z sz0 joined #lisp 2017-08-08T18:26:54Z emaczen: Xach: I'll let you know if it works out for me. 2017-08-08T18:27:26Z emaczen: It seems to be pretty neat so far 2017-08-08T18:28:08Z Tristam quit (Ping timeout: 255 seconds) 2017-08-08T18:28:45Z emaczen quit (Remote host closed the connection) 2017-08-08T18:30:08Z Jesin quit (Quit: Leaving) 2017-08-08T18:32:28Z Bock quit (Ping timeout: 240 seconds) 2017-08-08T18:32:49Z Jesin joined #lisp 2017-08-08T18:32:49Z Ven_ joined #lisp 2017-08-08T18:33:49Z Tristam joined #lisp 2017-08-08T18:34:30Z emaczen joined #lisp 2017-08-08T18:34:52Z Herbstkind joined #lisp 2017-08-08T18:35:04Z malice`: I'd like to play some mp3 file. Which library is recommended? 2017-08-08T18:36:30Z vap1 quit (Quit: Leaving) 2017-08-08T18:36:42Z vaporatorius joined #lisp 2017-08-08T18:36:42Z vaporatorius quit (Changing host) 2017-08-08T18:36:42Z vaporatorius joined #lisp 2017-08-08T18:37:17Z LiamH joined #lisp 2017-08-08T18:37:58Z random-nick quit (Remote host closed the connection) 2017-08-08T18:46:08Z Arnot joined #lisp 2017-08-08T18:48:07Z teggi quit (Quit: Leaving...) 2017-08-08T18:51:56Z sjl: ugh, why does (position 1 '(1 2 3) :test nil) work fine but (member 1 '(1 2 3) :test nil) not 2017-08-08T18:52:05Z Ven_ quit (Ping timeout: 240 seconds) 2017-08-08T18:52:23Z sjl: I guess from reading the spec that neither is guaranteed to work 2017-08-08T18:53:18Z phoe: wait, :test nil? 2017-08-08T18:53:47Z sjl: yes 2017-08-08T18:53:49Z fiveop joined #lisp 2017-08-08T18:54:14Z sjl: (defun foo (el seq &key test key) ... (position el seq :key key :test test))) 2017-08-08T18:54:27Z fiveop: is anyone working on a wasm backend for parenscript? 2017-08-08T18:54:34Z Ven joined #lisp 2017-08-08T18:54:40Z sjl: instead of selectively deciding which keyargs to pass based on which ones were given at runtime 2017-08-08T18:54:44Z oleo: it's like or/and 2017-08-08T18:54:49Z sjl: or bundling them all into &rest and apply'ing them 2017-08-08T18:54:59Z Ven is now known as Guest91583 2017-08-08T18:55:08Z oleo: position (1 or nil), member (1 and nil) ? 2017-08-08T18:55:49Z sjl: what? 2017-08-08T18:56:01Z sjl: position works fine with a test of nil, member signals an error 2017-08-08T18:56:06Z sjl: in SBCL 2017-08-08T18:56:48Z oleo: ya sure 2017-08-08T18:57:08Z sjl: though I'm not honestly sure from reading http://www.lispworks.com/documentation/HyperSpec/Body/17_ba.htm whether SBCL is being compliant by allowing it for position 2017-08-08T18:57:18Z sjl: > A :test argument, if supplied to F, is a designator for a function of two arguments, O and Zi. 2017-08-08T18:57:28Z sjl: is nil a designator for #'eql? 2017-08-08T18:57:35Z sjl: also > If neither a :test nor a :test-not argument is supplied, it is as if a :test argument of #'eql was supplied. 2017-08-08T18:57:52Z sjl: Is "passing nil" equivalent to "not supplying"? 2017-08-08T18:58:01Z phoe: sjl: The function COMMON-LISP:NIL is undefined. 2017-08-08T18:58:08Z sjl: I know 2017-08-08T18:58:16Z phoe: (member 1 '(1 2 3) :test (or test 'eql)) 2017-08-08T18:58:25Z sjl: yeah I could do that 2017-08-08T18:58:27Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-08T18:58:43Z sjl: or just put 'eql in the keyargs as a default 2017-08-08T18:59:01Z sjl: that might be better, because it acts as documentation 2017-08-08T18:59:18Z phoe: well, ^ 2017-08-08T19:00:45Z Xach: I wish it was easier to pass-through the absence of a keyword 2017-08-08T19:00:54Z sjl: yeah 2017-08-08T19:00:55Z kozy: lisp can be used imperatively with setvar and progn, and can be used pure functionally while haskell force to uses function except monad right? 2017-08-08T19:01:02Z Xach: really, any optional 2017-08-08T19:01:21Z phoe: kozy: Lisp is multi-paradigm, it does not impose anything on the programmer. 2017-08-08T19:01:38Z phoe: Haskell is purely functional (and very obnoxious about it). 2017-08-08T19:02:07Z kozy: lisp is too cool I think except parensis 2017-08-08T19:02:28Z Xach: A language that enforces a particular paradigm hard can do some optimizations that a multi-paradigm system can't. 2017-08-08T19:03:18Z Xach: The question is usually whether it's worth it (to you). 2017-08-08T19:03:50Z sjl: so, something like this for my non-contiguous subsequencep http://paste.stevelosh.com/598a0ae43d03ca0008a6b44e 2017-08-08T19:04:03Z kozy: hmm 2017-08-08T19:04:36Z kozy: then is lisp slow? so I cannot use it under high performance system 2017-08-08T19:04:58Z oleo: you can extend to C 2017-08-08T19:05:08Z malice`: kozy: define slow 2017-08-08T19:05:24Z malice`: also, it's pointless to talk about language's speed 2017-08-08T19:05:34Z malice`: talk about specific implementation's speed. 2017-08-08T19:06:29Z shka_: malice`: yo 2017-08-08T19:06:37Z kozy: https://benchmarksgame.alioth.debian.org/u64q/compare.php?lang=sbcl&lang2=gpp 2017-08-08T19:06:50Z shka_: kozy: microbenchmarks are just silly 2017-08-08T19:07:13Z kozy: for.. what reason? shka_ 2017-08-08T19:07:13Z drcode quit (Ping timeout: 246 seconds) 2017-08-08T19:07:33Z shka_: kozy: because they are micro 2017-08-08T19:07:46Z sjl: is there a more elegant way to do my paste above, specifically getting rid of that stupid result variable? 2017-08-08T19:08:02Z malice`: kozy: as I said, define slow. 2017-08-08T19:08:08Z shka_: kozy: microbenchmark vs server application that is supposed to run for months non-stop? 2017-08-08T19:08:16Z shka_: … just does not compare 2017-08-08T19:08:20Z malice`: ^ 2017-08-08T19:08:34Z sjl: I can't just do (setf haystack (rest (member ...)))) because that would make the every fail if the target is the last element in the list 2017-08-08T19:08:40Z malice`: Python and Ruby are fast enough for web apps 2017-08-08T19:08:46Z malice`: and Lisp is often faster than these. 2017-08-08T19:09:52Z shka_: besides 2017-08-08T19:10:04Z shka_: performance is not even absolute priority most of the time 2017-08-08T19:11:47Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-08T19:14:17Z butterthebuddha: So why can't I pass a function name to another function without the apostrophe? For example, (foo bar) where both foo and bar are symbols that refer to functions 2017-08-08T19:14:22Z Kyo91 joined #lisp 2017-08-08T19:14:29Z phoe: butterthebuddha: >refer to functions 2017-08-08T19:14:35Z phoe: Common Lisp is not a Lisp-1 2017-08-08T19:14:36Z butterthebuddha: Shouldn't it be unambiguous that I'm not executing bar? 2017-08-08T19:14:44Z phoe: a symbol can refer to a function *or* a variable 2017-08-08T19:14:53Z phoe: (defun foo () 3) 2017-08-08T19:14:56Z phoe: (defvar foo () 5) 2017-08-08T19:14:58Z oleo: you can 2017-08-08T19:15:01Z phoe: foo ;=> 5 2017-08-08T19:15:05Z oleo: but it's not so obvious 2017-08-08T19:15:11Z phoe: (foo) ;=> 3 2017-08-08T19:15:13Z oleo: it involves composing 2017-08-08T19:15:18Z phoe: sorry, defvar foo 5) 2017-08-08T19:15:21Z oleo: via macros 2017-08-08T19:15:54Z random-nick joined #lisp 2017-08-08T19:16:54Z tetero: phoe: Lisp-1.. this refers to the amount of namespaces right? 2017-08-08T19:17:00Z Guest91583 is now known as Ven`` 2017-08-08T19:17:01Z sjl: yes 2017-08-08T19:17:14Z tetero: Cool. It seems I'm picking up on some knowledge :o) 2017-08-08T19:17:29Z _death: sjl: it looks ok to me 2017-08-08T19:18:18Z oleo: so you can compose via #' and fnname a function designator but the designator so constructed refers to a symbol function in the current package (or whatever the package happens to be when the actual function is called) 2017-08-08T19:19:07Z oleo: you can compose further from a list of package names etc..... 2017-08-08T19:20:27Z Bike: #' doesn't know anything about packages. 2017-08-08T19:21:07Z sjl: _death: I just feel like there's probably One Weird Trick™ to get rid of that let and variable 2017-08-08T19:22:25Z _death: sjl: you could abstract the commonality of both cases.. some (every-needle needles init find update) thingy, but it seems overkill 2017-08-08T19:22:41Z sjl: yeah 2017-08-08T19:23:14Z _death: you could iterate through the haystack once and advance needles instead 2017-08-08T19:23:20Z Achylles quit (Ping timeout: 260 seconds) 2017-08-08T19:24:02Z oleo needles <_death> 2017-08-08T19:24:27Z oleo sings one more time......oooneeee moreee timeee umpf..umpf 2017-08-08T19:24:33Z oleo: lol 2017-08-08T19:24:53Z _death: Velvet Underground - Heroin 2017-08-08T19:26:17Z _death: sjl: I think it's ok to leave such small lowlevel utilities a bit ugly, as long as their interface is clean 2017-08-08T19:27:32Z shka_ quit (Ping timeout: 260 seconds) 2017-08-08T19:27:40Z sjl: yeah I guess so 2017-08-08T19:29:03Z _death: for this one, I guess you could return more than the primary value.. say t or nil, 2017-08-08T19:29:52Z _death: you could also take the start/end params for both sequences 2017-08-08T19:30:14Z _death: although for needles it wouldn't play well with every 2017-08-08T19:31:06Z sjl: end would be tricky for the list case 2017-08-08T19:32:03Z _death: yeah you would need a lower level implementation 2017-08-08T19:33:04Z _death: I remember https://common-lisp.net/project/sequence-iterators/ maybe it could be useful 2017-08-08T19:34:26Z Arnot quit (Quit: Page closed) 2017-08-08T19:34:37Z prxq joined #lisp 2017-08-08T19:40:09Z drcode joined #lisp 2017-08-08T19:46:50Z fiveop quit 2017-08-08T19:50:45Z _cosmonaut_ joined #lisp 2017-08-08T19:51:48Z Ven`` quit (Ping timeout: 240 seconds) 2017-08-08T19:52:44Z DingoSaar_ joined #lisp 2017-08-08T19:55:32Z drcode quit (Ping timeout: 260 seconds) 2017-08-08T19:56:56Z DingoSaar quit (Ping timeout: 268 seconds) 2017-08-08T20:01:07Z Ven joined #lisp 2017-08-08T20:01:30Z Ven is now known as Guest83286 2017-08-08T20:02:50Z vlatkoB quit (Remote host closed the connection) 2017-08-08T20:09:56Z broccolistem joined #lisp 2017-08-08T20:13:07Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-08T20:13:15Z LiamH quit (Quit: Leaving.) 2017-08-08T20:16:59Z timofonic joined #lisp 2017-08-08T20:17:04Z timofonic: Hello 2017-08-08T20:17:16Z basket: hello timofonic 2017-08-08T20:18:46Z timofonic: Is true there's lots linguists in lisp programming language or just a cliche/esthereotype? I would like something better than paid Grammarly but Open Source. I found LanguageTool and Expresso, but not sure about possibilities and if it can compete with a extremely well trained SaaS service :P 2017-08-08T20:19:35Z timofonic: Grammarly is a syntax, grammar, style, etc... checker. I'm interested in English, as a way to improve it without annoying too much humans... 2017-08-08T20:19:45Z timofonic: for English human language, no programming haha 2017-08-08T20:23:38Z Xach: grammarly is a lisp program 2017-08-08T20:23:50Z Xach: sorry, i know that is not all that helpful 2017-08-08T20:27:00Z PinealGlandOptic joined #lisp 2017-08-08T20:32:20Z neoncontrails quit (Remote host closed the connection) 2017-08-08T20:32:59Z neoncontrails joined #lisp 2017-08-08T20:33:28Z malice` quit (Remote host closed the connection) 2017-08-08T20:34:50Z varjag quit (Ping timeout: 240 seconds) 2017-08-08T20:36:11Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-08T20:37:38Z neoncontrails quit (Ping timeout: 268 seconds) 2017-08-08T20:39:41Z broccolistem quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-08T20:41:11Z azzamsa joined #lisp 2017-08-08T20:42:40Z dyelar joined #lisp 2017-08-08T20:47:40Z eazar001 quit (Ping timeout: 255 seconds) 2017-08-08T20:48:20Z krasnal joined #lisp 2017-08-08T20:49:18Z Karl_Dscc quit (Remote host closed the connection) 2017-08-08T20:51:07Z grouzen quit (Ping timeout: 240 seconds) 2017-08-08T20:51:35Z eazar001 joined #lisp 2017-08-08T20:54:10Z AxelAlex quit (Quit: AxelAlex) 2017-08-08T20:58:07Z yeticry_ joined #lisp 2017-08-08T20:58:12Z goosnargh: timofonic: I’m a linguist. None of the computational linguists I know use Lisp. 2017-08-08T20:58:21Z Herbstkind quit (Quit: Leaving) 2017-08-08T20:58:46Z goosnargh: Most linguists use Python. But I only know about academic use, not industry. 2017-08-08T20:59:20Z goosnargh: The era of Lisp in linguistics mostly ended with the AI winter. 2017-08-08T21:00:12Z Bicyclidine joined #lisp 2017-08-08T21:00:37Z yeticry quit (Ping timeout: 240 seconds) 2017-08-08T21:01:22Z sjl: another data point: the natural language processing class I took in university a year ago was in Python 2017-08-08T21:02:13Z fsmunoz joined #lisp 2017-08-08T21:03:12Z Bike quit (Ping timeout: 260 seconds) 2017-08-08T21:03:27Z nullniverse quit (Ping timeout: 240 seconds) 2017-08-08T21:04:36Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-08T21:04:43Z Bicyclidine quit (Ping timeout: 255 seconds) 2017-08-08T21:06:08Z schoppenhauer: hi. (how) is it possible to handle HTTP PUT requests with hunchentoot? 2017-08-08T21:06:12Z Shinmera: I remember there being a bit of fuzz around a new company that was offering language analysis services that was based on CL 2017-08-08T21:06:32Z Shinmera: That was some months back or last year though 2017-08-08T21:06:36Z Shinmera: Can't remember what it was called. 2017-08-08T21:06:50Z prxq: i bet it was... grammarly! 2017-08-08T21:07:07Z Shinmera: Maybe. 2017-08-08T21:07:13Z schoppenhauer: Shinmera: was that @me? 2017-08-08T21:07:34Z Shinmera: my memory sometimes feels more like a sieve. 2017-08-08T21:07:40Z Shinmera: schoppenhauer: Why would you think so 2017-08-08T21:07:59Z schoppenhauer: Shinmera: dunno. it followed my post. 2017-08-08T21:08:39Z goosnargh: The other languages I see most often among linguists are R and (*shudder*) Praat scripts. 2017-08-08T21:10:16Z sukaeto: my (limited) experience with NLP is consistent with what goosnargh is saying 2017-08-08T21:10:24Z goosnargh: Also there are some pretty hard core TeX/LaTeX programmers in linguistics, e.g. John Frampton’s ExPex. 2017-08-08T21:10:34Z sukaeto: UPenn's NLTK being written in Python seems like it was a major driver in the move to Python 2017-08-08T21:10:59Z goosnargh: That’s probably true. But also Python is touted as "beginner-friendly" to academics. 2017-08-08T21:11:48Z goosnargh: There seem to be very few academics outside of CS/EE with any knowledge of Lisp nowadays. 2017-08-08T21:12:17Z goosnargh: So drmeister is a statistically significant outlier. 2017-08-08T21:12:27Z sukaeto: also consistent with my experience 2017-08-08T21:13:36Z uint: out of curiosity, I took a look at what the linguists I know use. I'm seeing C++, R, Java, a bit of python (might just be bindings) 2017-08-08T21:13:56Z sukaeto: in fact, at University of Delaware (where I did my grad studies) there are two different intro courses - one for CS majors and one for everyone else (mostly other engineering majors). The CS major course is taught in Scheme using SICP, the one for others is taught in Python 2017-08-08T21:14:19Z neoncontrails joined #lisp 2017-08-08T21:15:54Z sukaeto: departments like Chemical Engineering have a lot of Legacy MATLAB code, but they're slowly adopting Python 2017-08-08T21:16:34Z goosnargh: My institution did have a major linguistic project using MATLAB, but the professor passed away so it’s in limbo. 2017-08-08T21:17:06Z pierpa joined #lisp 2017-08-08T21:17:20Z goosnargh: But that’s a bit OT. 2017-08-08T21:18:14Z sukaeto: in one sense, it's a shame. All the old Lisp hackers in academia are retiring, and there aren't enough new ones coming in to replace them 2017-08-08T21:19:36Z goosnargh: Outside of CS/EE, academic programming is very conservative and slow to change. 2017-08-08T21:19:46Z angavrilov quit (Remote host closed the connection) 2017-08-08T21:19:56Z Lowl3v3l joined #lisp 2017-08-08T21:20:02Z sukaeto: on the other hand, though, this doesn't stop Lisp from being an incredibly useful tool for getting stuff done 2017-08-08T21:20:12Z sukaeto: so at the end of the day, does it much matter? 2017-08-08T21:20:37Z Shinmera: It matters depending on whether you want more people to use it or not. 2017-08-08T21:20:49Z goosnargh: I’m annoyed that a language built for trees hasn’t been seriously taken up by syntacticians. 2017-08-08T21:20:58Z Shinmera: I don't particularly care so I'm fine either way. 2017-08-08T21:21:15Z goosnargh: Most formal syntax works with binary trees, so Lisp is perfect for fidding around with them. 2017-08-08T21:21:25Z sukaeto: I think I'm in the same camp. I don't particularly care that more people aren't using it. 2017-08-08T21:21:34Z sukaeto: I mean, in theory, more people using it means more libraries, etc 2017-08-08T21:21:45Z sukaeto: but in practice, I've not had trouble finding ways to do whatever I've needed to do 2017-08-08T21:21:47Z prxq: goosnargh: the sad truth is that people get grossed out by the parentheses. 2017-08-08T21:22:48Z goosnargh: Not syntacticians! They should be immune: [I [said [that [Peter [saw Mary]]]]] 2017-08-08T21:23:04Z uint: binary trees work great for English syntax with all the usual generativism stuff, but for other languages they might not be optimal afaik 2017-08-08T21:24:07Z goosnargh: uint: This is an often repeated claim but it’s never held water in the literature. 2017-08-08T21:24:46Z fkac joined #lisp 2017-08-08T21:26:13Z uint: it has in practice though, at least for Polish 2017-08-08T21:27:00Z azzamsa quit (Read error: Connection reset by peer) 2017-08-08T21:28:18Z goosnargh: That’s simply false from a theoretical perspective. Searching for "Slavic syntax" nets huge piles of formal theory on Slavic languages including Polish. 2017-08-08T21:28:23Z goosnargh: But this is waaaay off topic. 2017-08-08T21:30:02Z dddddd quit (Remote host closed the connection) 2017-08-08T21:30:05Z scymtym quit (Ping timeout: 240 seconds) 2017-08-08T21:33:30Z phoe quit (Ping timeout: 240 seconds) 2017-08-08T21:36:13Z mikecheck joined #lisp 2017-08-08T21:38:18Z Achylles joined #lisp 2017-08-08T21:40:08Z Lowl3v3l quit (Remote host closed the connection) 2017-08-08T21:41:28Z Harag quit (Ping timeout: 260 seconds) 2017-08-08T21:41:32Z prxq quit (Remote host closed the connection) 2017-08-08T21:42:08Z uint: goosnargh: so this is actually pretty cool: http://www.academia.edu/2756903/Towards_an_LFG_Parser_for_Polish 2017-08-08T21:42:47Z uint: afair, these guys develop the theory and implement it in parallel, so they have a way to test it in practice 2017-08-08T21:42:53Z sellout- quit (Quit: Leaving.) 2017-08-08T21:44:51Z moei quit (Quit: Leaving...) 2017-08-08T21:47:55Z goosnargh quit (Ping timeout: 255 seconds) 2017-08-08T21:48:14Z _cosmonaut_ quit (Remote host closed the connection) 2017-08-08T21:52:03Z drcode joined #lisp 2017-08-08T21:58:37Z Kyo91 quit (Ping timeout: 260 seconds) 2017-08-08T21:59:14Z leadoverlove joined #lisp 2017-08-08T21:59:54Z jasom: Shinmera: ACL2? 2017-08-08T22:01:34Z random-nick quit (Remote host closed the connection) 2017-08-08T22:01:37Z Shinmera: jasom: I think it was grammarly, actually. 2017-08-08T22:02:01Z Shinmera: Unless you're talking about something else? 2017-08-08T22:02:19Z FakePedro joined #lisp 2017-08-08T22:03:24Z goosnargh joined #lisp 2017-08-08T22:03:26Z jasom: Shinmera: that's what I was talking about; ACL2 does analysis of programs commercially, but that's a different type of languag 2017-08-08T22:03:28Z phoe joined #lisp 2017-08-08T22:05:08Z random-nick joined #lisp 2017-08-08T22:06:48Z leadoverlove quit (Ping timeout: 240 seconds) 2017-08-08T22:11:06Z Bike joined #lisp 2017-08-08T22:18:58Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-08-08T22:22:43Z Kyo91 joined #lisp 2017-08-08T22:22:59Z knusbaum quit (Quit: Leaving.) 2017-08-08T22:23:30Z Guest83286 quit (Ping timeout: 240 seconds) 2017-08-08T22:25:52Z random-nick quit (Remote host closed the connection) 2017-08-08T22:27:04Z Kyo91 quit (Ping timeout: 255 seconds) 2017-08-08T22:31:03Z fkac quit (Remote host closed the connection) 2017-08-08T22:33:32Z kora9 quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-08T22:34:40Z drcode quit (Ping timeout: 260 seconds) 2017-08-08T22:41:01Z trocado joined #lisp 2017-08-08T22:44:17Z ebzzry joined #lisp 2017-08-08T22:45:38Z neoncontrails quit (Remote host closed the connection) 2017-08-08T22:49:16Z Jesin quit (Quit: Leaving) 2017-08-08T22:50:30Z EvW1 quit (Ping timeout: 240 seconds) 2017-08-08T22:51:14Z moei joined #lisp 2017-08-08T22:56:07Z kora9 joined #lisp 2017-08-08T22:57:26Z kora9: Hmm. What error am I making here? -> http://paste.lisp.org/display/352883 - I'm getting #png "test.dot" *edges* *nodes*) 2017-08-08T22:57:37Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-08T22:57:39Z EvW joined #lisp 2017-08-08T22:58:58Z pjb: kora9: are you not using slime? 2017-08-08T22:59:39Z kora9: pjb: I am, why? 2017-08-08T22:59:40Z pjb: In sldb you should see the backtrace. In some line above the graph->png line, you should see the function where the error occurs. Type v on those lines to just and view the corresponding source . 2017-08-08T22:59:56Z kora9: Oh, hang on 2017-08-08T23:01:15Z kora9: "Failed to find the TRUENAME of SYS:CONTRIB;ASDF;UIOP.LISP.NEWEST: No such file or directory" 2017-08-08T23:01:44Z pjb: This is a different error. Can we stay on the first error until it's resolved? 2017-08-08T23:01:56Z kora9: The problem seems to be the uiop:run-program function in graph->png 2017-08-08T23:02:09Z kora9: Oh, yeah I thought this was the error 2017-08-08T23:02:22Z kora9: It's what it says when pressing 'v' 2017-08-08T23:03:16Z pjb: type M-. over uiop:run-program in the REPL or some lisp buffer. This will jump to the source of uiop:run-program so you may see what signature it has. 2017-08-08T23:03:36Z pjb: Alternatively when you type (uiop:run-program SPC, it should display the expected arguments in the minibuffer. 2017-08-08T23:03:57Z pjb: In the case of asdf and uiop, you have to scroll a little because functions are defined in a big macro… 2017-08-08T23:03:59Z Kyo91 joined #lisp 2017-08-08T23:04:41Z pjb: But you can see, line 483, that run-program takes only ONE mandatory argument, the command. The rest are key arguments. 2017-08-08T23:05:21Z kora9: pjb: That's odd. I had this entire thing as one argument first, and it complained about that. I was told it expected the application to be one argument, and the arguments another 2017-08-08T23:05:47Z pjb: kora9: so, the problem with uiop:run-program, is that you have to give it a command string that will be parsed by the shell, so you hacve to be careful with special characters in arguments. 2017-08-08T23:06:46Z pjb: I would use ~S to format strings, since it will at least escape with \ the double-quotes and backslashes in the string. But it is not enough, you would also want to escape characters such as ` or $ etc... (format nil "dot -Tpng -O ~S" fname) 2017-08-08T23:07:02Z pjb: Better: (format nil "dot -Tpng -O ~A" (shell-quote-string fname)) 2017-08-08T23:07:32Z kora9: pjb: Hmm. I think the problem stemmed from my using sb-ext:run-program initially, where I was supposed to have "dot" separately, and then changing to uiop:run-program where i suppose it doesn't 2017-08-08T23:08:28Z pjb: There are some implementation specific run-program functions that do indeed take two arguments: a command name, and a list of arguments. (like execv(2) instead of system(3)). 2017-08-08T23:08:47Z kora9: Aye 2017-08-08T23:08:53Z kora9: pjb: What's shell-quote-string? 2017-08-08T23:09:15Z pjb: A function you would write that would quote all the characters in string that have a special shell meaning. 2017-08-08T23:09:27Z kora9: ah 2017-08-08T23:10:32Z pjb: A brutal way to do it is: (defun shell-quote-string (string) (with-output-to-string (*standard-output*) (loop :for ch :across string :do (write-char #\\) (write-char ch)))) (shell-quote-string "foo`bar`$(baz)") #| --> "\\f\\o\\o\\`\\b\\a\\r\\`\\$\\(\\b\\a\\z\\)" |# 2017-08-08T23:10:33Z basket: kora9: instead of a string to be executed by a shell you can also give run-program a list like (uiop:run-program (list "dot" "-Tpng" "-O" fname)) 2017-08-08T23:12:22Z pjb: Ah, indeed, it's hidden in uiop::%normalize-system-command… 2017-08-08T23:12:44Z kora9: These are very good points, but I'm still getting the same exact SB-INT:SIMPLE-PROGRAM-ERROR 2017-08-08T23:13:12Z pjb: kora9: so run-program is given a single argument now? 2017-08-08T23:13:16Z basket: And you're only passing RUN-PROGRAM one argument now? 2017-08-08T23:13:37Z kora9: Oh I'm stupid 2017-08-08T23:14:03Z kora9: It's much simpler than that. I forgot to add the third function argument to my function :) 2017-08-08T23:14:19Z kora9: I'm supplying it with three arguments, my own function, and it supports only two 2017-08-08T23:17:20Z kora9: pjb, basket: Thanks for the help! 2017-08-08T23:17:31Z smazga quit (Quit: leaving) 2017-08-08T23:28:01Z neoncontrails joined #lisp 2017-08-08T23:30:59Z DingoSaar_ is now known as DingoSaar 2017-08-08T23:33:25Z Kaisyu joined #lisp 2017-08-08T23:33:47Z rngoodn joined #lisp 2017-08-08T23:34:18Z knusbaum joined #lisp 2017-08-08T23:36:22Z knusbaum1 joined #lisp 2017-08-08T23:37:02Z knusbaum1 quit (Client Quit) 2017-08-08T23:38:28Z knusbaum quit (Ping timeout: 246 seconds) 2017-08-08T23:41:31Z warweasle joined #lisp 2017-08-08T23:41:33Z abel-abel joined #lisp 2017-08-08T23:43:42Z safe joined #lisp 2017-08-08T23:44:06Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-08T23:46:42Z m00natic quit (Remote host closed the connection) 2017-08-08T23:51:57Z jamtho joined #lisp 2017-08-08T23:55:35Z samograd joined #lisp 2017-08-08T23:56:16Z cromachina joined #lisp 2017-08-08T23:57:14Z brendos joined #lisp 2017-08-08T23:57:58Z kora9 quit (Remote host closed the connection) 2017-08-08T23:59:33Z mikecheck left #lisp 2017-08-09T00:01:43Z cromachina quit (Read error: Connection reset by peer) 2017-08-09T00:03:29Z marvin3 quit 2017-08-09T00:05:13Z lieven quit (Ping timeout: 255 seconds) 2017-08-09T00:08:19Z eelster quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-09T00:09:33Z eelster joined #lisp 2017-08-09T00:10:06Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-09T00:10:23Z eelster quit (Client Quit) 2017-08-09T00:12:48Z eelster joined #lisp 2017-08-09T00:14:57Z xuxuru joined #lisp 2017-08-09T00:16:25Z cromachina joined #lisp 2017-08-09T00:18:01Z lieven joined #lisp 2017-08-09T00:26:36Z abel-abel quit (Quit: abel-abel) 2017-08-09T00:26:57Z abel-abel joined #lisp 2017-08-09T00:30:19Z yrk quit (Read error: Connection reset by peer) 2017-08-09T00:32:05Z Achylles quit (Remote host closed the connection) 2017-08-09T00:34:31Z emaczen: What is the asdf function to refresh all systems? 2017-08-09T00:34:54Z happy-dude quit (Quit: Connection closed for inactivity) 2017-08-09T00:42:25Z keviv quit (Remote host closed the connection) 2017-08-09T00:43:30Z Xach: emaczen: "refresh"? 2017-08-09T00:43:47Z Xach: emaczen: I don't recall something like that - but maybe I don't get it. what should refreshing do? 2017-08-09T00:47:50Z neoncontrails quit (Remote host closed the connection) 2017-08-09T00:49:03Z neoncontrails joined #lisp 2017-08-09T00:49:46Z neoncontrails quit (Read error: Connection reset by peer) 2017-08-09T00:50:08Z neoncontrails joined #lisp 2017-08-09T00:53:02Z Xach is off 2017-08-09T00:53:30Z jamtho quit (Ping timeout: 240 seconds) 2017-08-09T00:55:39Z emaczen: Xach: If I run some code that creates a new asdf:system and then try to asdf:load that system, I will find out that the system cannot be found. 2017-08-09T00:55:49Z fsmunoz quit (Ping timeout: 276 seconds) 2017-08-09T00:56:13Z emaczen: manually, I just restart the REPL and then run asdf:load-system -- I'm trying to automate some processes 2017-08-09T00:56:31Z Xach: emaczen: one of the restarts is to retry with a fresh config 2017-08-09T00:56:38Z Xach: 1: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration. 2017-08-09T00:56:45Z Xach: if that works, you could automate it 2017-08-09T00:57:12Z emaczen: I'll give it a try in a bit 2017-08-09T00:57:17Z angelo_ joined #lisp 2017-08-09T01:00:01Z Posterdati^2 quit (Read error: Connection reset by peer) 2017-08-09T01:00:22Z froggey quit (Ping timeout: 276 seconds) 2017-08-09T01:00:36Z froggey joined #lisp 2017-08-09T01:01:05Z pierpa quit (Quit: Page closed) 2017-08-09T01:01:21Z abel-abel quit (Quit: abel-abel) 2017-08-09T01:02:37Z kora9 joined #lisp 2017-08-09T01:03:27Z kora9: Question. I've been reading a bit about monads (as I was curious about how Haskell worked, it looked funky) and I noticed that there were examples of monads in different languages, but not for CL. CL doesn't need monads due to how it's structured right? 2017-08-09T01:03:33Z kora9: Or have I got this all wrong? 2017-08-09T01:04:57Z Bike: monads are just a generic structure. haskell uses them because some operations like I/O can be phrased in terms of monads while maintaining functional semantics. 2017-08-09T01:05:15Z Bike: i think there's a parser library in CL that uses monads. 2017-08-09T01:06:52Z kora9: Bike: Yeah it seems to me that CL is "everything is lists" whereas Haskell is "everything is monads" 2017-08-09T01:07:03Z glamas joined #lisp 2017-08-09T01:07:08Z Bike: neither of those are really correct. 2017-08-09T01:07:13Z kora9: Oh? 2017-08-09T01:08:39Z Bike: lisp has a lot of lists because they're a convenient way to represent programs, but it's common to use other data structures 2017-08-09T01:09:03Z Bike: and monads in haskell are common because I/O and stuff are common, but they're nothing particularly deep 2017-08-09T01:09:56Z kora9: Oh, interesting 2017-08-09T01:10:15Z kora9: It's very fascinating, the different approaches to it all 2017-08-09T01:10:15Z eelster quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-09T01:10:38Z Bike: monads are just associated with haskell because haskell devs were hilariously bad at explaining them for a while, i think 2017-08-09T01:10:46Z EvW quit (Ping timeout: 276 seconds) 2017-08-09T01:11:39Z kora9: Bike: :D 2017-08-09T01:12:14Z kora9: Bike: It seems like a nice language, but I'm much more into the CL syntax. Spontaneously speaking. 2017-08-09T01:18:15Z neoncont_ joined #lisp 2017-08-09T01:18:57Z warweasle quit (Remote host closed the connection) 2017-08-09T01:22:33Z neoncontrails quit (Ping timeout: 268 seconds) 2017-08-09T01:23:07Z neoncont_ quit (Ping timeout: 276 seconds) 2017-08-09T01:23:12Z kora9 left #lisp 2017-08-09T01:26:57Z DingoSaar quit (Remote host closed the connection) 2017-08-09T01:28:00Z DingoSaar joined #lisp 2017-08-09T01:32:22Z fkac joined #lisp 2017-08-09T01:33:05Z xuxuru quit (Quit: xuxuru) 2017-08-09T01:45:31Z astronavt[m] joined #lisp 2017-08-09T01:45:48Z glamas quit (Remote host closed the connection) 2017-08-09T02:02:21Z quazimodo joined #lisp 2017-08-09T02:11:27Z glamas joined #lisp 2017-08-09T02:12:31Z jameser joined #lisp 2017-08-09T02:22:01Z quazimodo quit (Ping timeout: 255 seconds) 2017-08-09T02:26:08Z ebzzry quit (Ping timeout: 260 seconds) 2017-08-09T02:28:09Z ebzzry joined #lisp 2017-08-09T02:33:57Z ebzzry quit (Ping timeout: 260 seconds) 2017-08-09T02:35:25Z ebzzry joined #lisp 2017-08-09T02:37:32Z glamas quit (Remote host closed the connection) 2017-08-09T02:41:15Z LooneyTunes joined #lisp 2017-08-09T02:42:41Z glamas joined #lisp 2017-08-09T02:44:47Z bigdaddytank joined #lisp 2017-08-09T02:52:21Z milanj quit (Quit: This computer has gone to sleep) 2017-08-09T02:52:35Z mson joined #lisp 2017-08-09T02:58:43Z glamas quit (Remote host closed the connection) 2017-08-09T03:00:37Z glamas joined #lisp 2017-08-09T03:01:46Z glamas_ joined #lisp 2017-08-09T03:02:11Z trocado quit (Read error: Connection reset by peer) 2017-08-09T03:03:02Z cromachina_ joined #lisp 2017-08-09T03:04:06Z cromachina quit (Ping timeout: 240 seconds) 2017-08-09T03:05:22Z glamas quit (Ping timeout: 258 seconds) 2017-08-09T03:06:01Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-09T03:07:12Z jameser joined #lisp 2017-08-09T03:13:24Z quazimodo joined #lisp 2017-08-09T03:24:28Z schoppenhauer quit (Ping timeout: 260 seconds) 2017-08-09T03:25:24Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-09T03:25:59Z schoppenhauer joined #lisp 2017-08-09T03:26:43Z jameser joined #lisp 2017-08-09T03:28:39Z Jesin joined #lisp 2017-08-09T03:29:48Z glamas joined #lisp 2017-08-09T03:33:16Z glamas_ quit (Ping timeout: 268 seconds) 2017-08-09T03:35:46Z Jesin quit (Ping timeout: 255 seconds) 2017-08-09T03:48:58Z Jesin joined #lisp 2017-08-09T03:51:32Z beach: Good morning everyone! 2017-08-09T03:58:18Z glamas quit (Remote host closed the connection) 2017-08-09T04:03:59Z emaczen: how do I "refresh" or "reload" asdf systems 2017-08-09T04:04:11Z beach: You don't have to. 2017-08-09T04:04:18Z beach: They get loaded again when modified. 2017-08-09T04:04:26Z beach: ... automatically. 2017-08-09T04:04:51Z emaczen: beach: why is there a :force paramater then? 2017-08-09T04:05:04Z beach: It forces recompilation of the components of the system. 2017-08-09T04:05:23Z beach: If you really need it, there is an ASDF function for loading a system. 2017-08-09T04:05:45Z emaczen: beach: I'll find out in a bit 2017-08-09T04:06:43Z beach: It's probably just ASDF:LOAD-SYSTEM. 2017-08-09T04:07:43Z beach: If you do what I do, i.e. stick a (cl:in-package #:asdf-user) at the beginning of the file containing the system definition, you can also load it using LOAD. 2017-08-09T04:08:26Z beach: I stick that in, not in order to be able to use LOAD, but for the benefit of SLIME and other editors, so that they know what package the system definition is in. 2017-08-09T04:09:38Z nexxus joined #lisp 2017-08-09T04:09:51Z nexxus: hi 2017-08-09T04:09:56Z nexxus: Can you help me with hunchentoot web-server ? I trying to set document-root for acceptor (in make-instance function) but it is doesn`t work ... How I can setting up correctly ? 2017-08-09T04:15:20Z Bike quit (Ping timeout: 260 seconds) 2017-08-09T04:16:48Z glamas joined #lisp 2017-08-09T04:23:58Z wooden quit (Read error: Connection reset by peer) 2017-08-09T04:25:18Z emaczen: nexxus: for document-root I always put a trailing "/" at the end 2017-08-09T04:25:39Z wooden joined #lisp 2017-08-09T04:25:43Z emaczen: example: /path/to/document-root/ 2017-08-09T04:26:41Z emaczen: nexxus: that's something I've done incorrectly more than once... 2017-08-09T04:27:49Z FreeBirdLjj joined #lisp 2017-08-09T04:28:34Z keviv joined #lisp 2017-08-09T04:29:46Z shka_ joined #lisp 2017-08-09T04:31:57Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-09T04:32:04Z koenig quit (Ping timeout: 255 seconds) 2017-08-09T04:34:08Z bigdaddytank quit (Quit: Peace out!) 2017-08-09T04:34:13Z safe quit (Read error: Connection reset by peer) 2017-08-09T04:49:06Z glamas quit (Remote host closed the connection) 2017-08-09T04:52:04Z elderK joined #lisp 2017-08-09T04:52:04Z elderK quit (Changing host) 2017-08-09T04:52:04Z elderK joined #lisp 2017-08-09T04:52:24Z elderK quit (Client Quit) 2017-08-09T04:52:56Z sellout- joined #lisp 2017-08-09T04:55:17Z grouzen joined #lisp 2017-08-09T05:00:39Z sellout- quit (Quit: Leaving.) 2017-08-09T05:04:53Z test1600 joined #lisp 2017-08-09T05:07:09Z emaczen quit (Remote host closed the connection) 2017-08-09T05:09:03Z damke_ joined #lisp 2017-08-09T05:10:24Z quazimodo quit (Ping timeout: 260 seconds) 2017-08-09T05:13:11Z mishoo joined #lisp 2017-08-09T05:15:20Z damke joined #lisp 2017-08-09T05:16:39Z vlatkoB joined #lisp 2017-08-09T05:16:41Z beach: Since Shinmera mentioned the Unix haters handbook, I thought I would have a look. I never bothered in the past, because I assumed it was written by a bunch of ignorant whiners. I was surprised to see that it was written by a bunch of very smart and very knowledgeable people, and that it is very well written. 2017-08-09T05:16:43Z beach: And contrary to what kora9 thinks, better operating systems exist, and many existed at the time Unix was created. 2017-08-09T05:18:14Z beach: I am still reading the "user" part of it, but now I would not be surprised if the "programmer" part of it contains many of the complaints I cite in my LispOS document. 2017-08-09T05:18:43Z damke_ quit (Ping timeout: 268 seconds) 2017-08-09T05:20:30Z Bock joined #lisp 2017-08-09T05:22:36Z damke_ joined #lisp 2017-08-09T05:24:52Z engblom: beach: I have read Unix Haters Handbook, and I agree it is a good read. 2017-08-09T05:26:07Z damke quit (Ping timeout: 268 seconds) 2017-08-09T05:27:54Z beach: It is interesting to people here in #lisp to see that the Lisp machine and Genera are cited several times. 2017-08-09T05:29:29Z engblom: I read it like 15 years ago... and there were parts I did not agree with at that time. Now I agree a lot more with the book 2017-08-09T05:29:51Z beach: Yes, I can see that. 2017-08-09T05:29:56Z engblom: They will bash C a lot 2017-08-09T05:30:39Z engblom: And to say it honestly, still today we see a lot of vulnerabilities just because someone forgot to check the size of something. C is too difficult, even for real gurus like the OpenBSD developers. 2017-08-09T05:31:48Z damke joined #lisp 2017-08-09T05:31:55Z beach: I agree. Plus, when C is used for system programming, I am willing to bet that most programs then invoke undefined behavior as defined in the C standard. 2017-08-09T05:32:45Z beach: I came from Multics to Unix, (with VMS in between) so I have a different perspective from that of people who were exposed to Unix first. 2017-08-09T05:34:08Z damke_ quit (Ping timeout: 268 seconds) 2017-08-09T05:37:11Z engblom: The chapter were I have the strongest disagreement is the chapter about X. I do not think X is as bad as they put it. 2017-08-09T05:37:28Z slyrus: some of us had other, more abominable, OSes as their first OSes, like the Vic 20's KERNAL and whatever the ZX-81 had. 2017-08-09T05:37:29Z engblom: And network transparency is really good, I think. 2017-08-09T05:38:25Z beach: slyrus: Oh, I didn't start with Multics. I had Exec-8 and then Tops-10 before. 2017-08-09T05:38:45Z slyrus: all I know is that word processors and drawing programs aren't 10^6 better even though processors are that much faster and RAM that much more abundant :) 2017-08-09T05:39:00Z beach: engblom: Many things have improved since the book was written, of course. 2017-08-09T05:39:03Z slyrus: beach: fair enough 2017-08-09T05:39:11Z slyrus: and hello 2017-08-09T05:40:19Z Karl_Dscc joined #lisp 2017-08-09T05:40:45Z glamas joined #lisp 2017-08-09T05:43:43Z oleo quit (Quit: irc client terminated!) 2017-08-09T05:44:00Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-09T05:44:35Z Harag joined #lisp 2017-08-09T05:45:04Z paul0 joined #lisp 2017-08-09T05:46:05Z engblom: From Wikipedia about UHH: An air sickness bag, printed with the phrase "UNIX barf bag", was inserted into the inside back cover of every copy, by the publisher. 2017-08-09T05:46:07Z phinxy quit (Quit: Leaving) 2017-08-09T05:46:40Z _paul0 quit (Ping timeout: 246 seconds) 2017-08-09T05:48:46Z beach: Heh! 2017-08-09T05:52:32Z phoe: Morning. 2017-08-09T05:53:33Z beach: Hello phoe. 2017-08-09T05:56:04Z phoe: Hey beach. 2017-08-09T05:56:45Z d4ryus2 quit (Quit: WeeChat 1.9) 2017-08-09T06:03:49Z cromachina_ quit (Read error: Connection reset by peer) 2017-08-09T06:10:03Z Harag quit (Quit: Harag) 2017-08-09T06:15:51Z Karl_Dscc quit (Remote host closed the connection) 2017-08-09T06:17:06Z _cosmonaut_ joined #lisp 2017-08-09T06:28:15Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-09T06:28:25Z qwerty_ joined #lisp 2017-08-09T06:28:40Z mishoo quit (Ping timeout: 246 seconds) 2017-08-09T06:30:02Z quazimodo joined #lisp 2017-08-09T06:31:27Z _cosmonaut_ quit (Quit: Leaving.) 2017-08-09T06:32:01Z _cosmonaut_ joined #lisp 2017-08-09T06:32:13Z grouzen quit (Ping timeout: 255 seconds) 2017-08-09T06:32:41Z Lowl3v3l joined #lisp 2017-08-09T06:36:49Z ebzzry quit (Ping timeout: 248 seconds) 2017-08-09T06:45:27Z krasnal quit (Ping timeout: 240 seconds) 2017-08-09T06:45:53Z krasnal_ joined #lisp 2017-08-09T06:46:35Z doesthiswork quit (Quit: Leaving.) 2017-08-09T06:49:22Z mishoo joined #lisp 2017-08-09T06:51:56Z Murii joined #lisp 2017-08-09T07:02:17Z engblom: Shinmera: You have done what I ultimately planned to do: a cl-gpio library. May I suggest one additional function? 2017-08-09T07:04:05Z damke_ joined #lisp 2017-08-09T07:04:10Z shka_ quit (Ping timeout: 268 seconds) 2017-08-09T07:06:03Z engblom: Shinmera: I think a non-busy-waiting wait-for-change function taking a list of pins would be great. It would then return the pin that changed. (or alternatively a list containing the pin that changed and the new value) 2017-08-09T07:06:38Z damke quit (Ping timeout: 268 seconds) 2017-08-09T07:14:04Z neoncontrails joined #lisp 2017-08-09T07:16:00Z engblom: Shinmera: Two years ago I created almost the same thing for Clojure: https://github.com/engblom/gpio 2017-08-09T07:18:01Z LooneyTunes quit (Ping timeout: 276 seconds) 2017-08-09T07:18:44Z varjag joined #lisp 2017-08-09T07:22:25Z mson quit (Quit: Connection closed for inactivity) 2017-08-09T07:23:01Z Shinmera: engblom: I don't currently do anything with it, so if you want that feature, you'll have to send a PR. 2017-08-09T07:23:29Z Shinmera: I've also been meaning to rewrite the high-level wrapper parts to it to re-use FDs as currently it's really slow. 2017-08-09T07:23:48Z Shinmera: But right now my focus lies elsewhere. 2017-08-09T07:32:52Z milanj joined #lisp 2017-08-09T07:35:51Z angavrilov joined #lisp 2017-08-09T07:37:02Z nexxus: emaczen: thanks it is work for me 2017-08-09T07:37:24Z nexxus quit (Quit: leaving) 2017-08-09T07:43:16Z neoncontrails quit (Remote host closed the connection) 2017-08-09T07:43:54Z neoncontrails joined #lisp 2017-08-09T07:46:27Z engblom: Shinmera: I had the same problem with speed in Clojure. I also had to reuse the FDs, or it would be too slow to run a stepper motor 2017-08-09T07:47:56Z engblom: Shinmera: The whole /sys fs is actually slow too. I have been thinking about trying to get bindings to a native library (or syscalls directly) 2017-08-09T07:48:04Z neoncont_ joined #lisp 2017-08-09T07:48:06Z ryanwatkins quit (Remote host closed the connection) 2017-08-09T07:48:07Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-09T07:48:28Z Shinmera: From the tests I've done just reusing FDs makes things more than fast enough for my purposes 2017-08-09T07:48:54Z Shinmera: I don't remember what the clock rate I got was 2017-08-09T07:49:06Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-09T07:54:44Z damke_ quit (Ping timeout: 268 seconds) 2017-08-09T07:55:09Z random-nick joined #lisp 2017-08-09T07:55:53Z damke_ joined #lisp 2017-08-09T07:55:53Z ryanwatkins joined #lisp 2017-08-09T07:58:34Z Kyo91 quit (Ping timeout: 255 seconds) 2017-08-09T08:01:46Z pjb quit (Ping timeout: 255 seconds) 2017-08-09T08:03:08Z scymtym joined #lisp 2017-08-09T08:13:13Z arduo joined #lisp 2017-08-09T08:19:57Z z3t0: is there a mailing list for keeping up to date with cl news? 2017-08-09T08:20:01Z krasnal_ quit (Ping timeout: 268 seconds) 2017-08-09T08:20:02Z ryanwatkins quit (Read error: Connection reset by peer) 2017-08-09T08:20:08Z damke joined #lisp 2017-08-09T08:20:20Z Shinmera: planet lisp has an RSS feed. 2017-08-09T08:20:24Z Shinmera: then there's /r/lisp 2017-08-09T08:20:25Z krasnal_ joined #lisp 2017-08-09T08:22:07Z z3t0: thanks il take a look at planet lisp, already subbed to r/lips 2017-08-09T08:22:29Z damke_ quit (Ping timeout: 268 seconds) 2017-08-09T08:24:01Z jamtho joined #lisp 2017-08-09T08:24:57Z damke quit (Ping timeout: 268 seconds) 2017-08-09T08:25:05Z Xof joined #lisp 2017-08-09T08:27:11Z damke joined #lisp 2017-08-09T08:35:21Z quazimodo quit (Read error: Connection reset by peer) 2017-08-09T08:36:52Z pjb joined #lisp 2017-08-09T08:39:34Z _cosmonaut_ joined #lisp 2017-08-09T08:40:05Z tetero: beach: the unix haters handbook would be much more of a critique if there actually was an operating system that was a viable alternative. Plan 9 rocks, but that too, is UNIX - just not "UNIX 1" which we're used to, and even that isn't a viable alternative these days. Would be pretty cool if it was. 2017-08-09T08:41:01Z tetero: There were a lot of cool ideas there. In Inferno too. I haven't used multics, so I don't know about that. 2017-08-09T08:41:05Z jamtho quit (Ping timeout: 248 seconds) 2017-08-09T08:42:12Z damke_ joined #lisp 2017-08-09T08:44:41Z damke quit (Ping timeout: 268 seconds) 2017-08-09T08:44:49Z krasnal_ quit (Ping timeout: 248 seconds) 2017-08-09T08:45:01Z araujo_ quit (Quit: Leaving) 2017-08-09T08:45:37Z qwerty_ quit (Remote host closed the connection) 2017-08-09T08:46:10Z qwerty_ joined #lisp 2017-08-09T08:47:11Z krasnal_ joined #lisp 2017-08-09T08:47:16Z damke_ quit (*.net *.split) 2017-08-09T08:47:16Z scymtym quit (*.net *.split) 2017-08-09T08:47:16Z angavrilov quit (*.net *.split) 2017-08-09T08:47:16Z Murii quit (*.net *.split) 2017-08-09T08:47:16Z mishoo quit (*.net *.split) 2017-08-09T08:47:16Z fkac quit (*.net *.split) 2017-08-09T08:47:16Z papachan quit (*.net *.split) 2017-08-09T08:47:16Z engblom quit (*.net *.split) 2017-08-09T08:47:17Z sjl quit (*.net *.split) 2017-08-09T08:47:17Z dec0n quit (*.net *.split) 2017-08-09T08:47:17Z terpri quit (*.net *.split) 2017-08-09T08:47:17Z samebchase quit (*.net *.split) 2017-08-09T08:47:17Z eschatologist quit (*.net *.split) 2017-08-09T08:47:17Z mikaelj quit (*.net *.split) 2017-08-09T08:47:17Z ``Erik quit (*.net *.split) 2017-08-09T08:47:17Z HDurer quit (*.net *.split) 2017-08-09T08:47:17Z dcluna quit (*.net *.split) 2017-08-09T08:47:17Z pok quit (*.net *.split) 2017-08-09T08:47:17Z copec quit (*.net *.split) 2017-08-09T08:47:17Z hjudt_ quit (*.net *.split) 2017-08-09T08:47:17Z gadwin_ quit (*.net *.split) 2017-08-09T08:47:17Z __SiCC__ quit (*.net *.split) 2017-08-09T08:47:17Z jackdaniel quit (*.net *.split) 2017-08-09T08:47:17Z zchlyg quit (*.net *.split) 2017-08-09T08:47:17Z oystewh quit (*.net *.split) 2017-08-09T08:47:17Z ikopico quit (*.net *.split) 2017-08-09T08:47:17Z misv quit (*.net *.split) 2017-08-09T08:47:17Z Firedancer quit (*.net *.split) 2017-08-09T08:47:17Z borodust quit (*.net *.split) 2017-08-09T08:47:17Z sbryant quit (*.net *.split) 2017-08-09T08:47:17Z HDurer2 quit (*.net *.split) 2017-08-09T08:49:08Z pjb quit (Ping timeout: 240 seconds) 2017-08-09T08:49:36Z Grue` quit (Ping timeout: 240 seconds) 2017-08-09T08:49:37Z Xof quit (Ping timeout: 258 seconds) 2017-08-09T08:49:53Z Murii joined #lisp 2017-08-09T08:49:56Z Grue` joined #lisp 2017-08-09T08:50:22Z beach: tetero: I am working on it (the viable alternative). But, given how many many generations have been brainwashed into thinking Unix is good, there is little hope for any success, other than personal satisfaction. That won't stop me from continuing the work though. 2017-08-09T08:51:50Z phoe: beach: I wish Unix was the only thing people are brainwashed into. 2017-08-09T08:52:21Z hardenedapple joined #lisp 2017-08-09T08:52:46Z beach: I see what you mean. 2017-08-09T08:53:36Z krasnal_ quit (Ping timeout: 240 seconds) 2017-08-09T08:53:58Z krasnal_ joined #lisp 2017-08-09T08:58:27Z milanj quit (Quit: Leaving) 2017-08-09T08:58:36Z grumble quit (Ping timeout: 600 seconds) 2017-08-09T08:58:42Z rumble joined #lisp 2017-08-09T09:03:36Z Lowl3v3l left #lisp 2017-08-09T09:05:37Z krasnal_ quit (Ping timeout: 248 seconds) 2017-08-09T09:05:59Z krasnal_ joined #lisp 2017-08-09T09:06:04Z varjag quit (Ping timeout: 260 seconds) 2017-08-09T09:11:51Z tetero: beach: What is it you're making? 2017-08-09T09:16:10Z phoe: minion: tell tetero about sicl 2017-08-09T09:16:10Z minion: tetero: sicl: SICL is a (perhaps futile) attempt to re-implement Common Lisp from scratch, hopefully using improved programming and bootstrapping techniques. See https://github.com/robert-strandh/SICL 2017-08-09T09:17:02Z defaultxr quit (Ping timeout: 260 seconds) 2017-08-09T09:19:16Z tetero: While that's nifty, you can't possibly think of this being a viable alternative any time within this decade, or even the next 2017-08-09T09:22:17Z krasnal_ quit (Ping timeout: 260 seconds) 2017-08-09T09:22:40Z krasnal_ joined #lisp 2017-08-09T09:22:45Z beach: tetero: http://metamodular.com/lispos.pdf is a preliminary specification. 2017-08-09T09:23:26Z beach: tetero: That depends on your definition of "viable". 2017-08-09T09:24:07Z jamtho joined #lisp 2017-08-09T09:24:19Z lieven quit (Changing host) 2017-08-09T09:24:19Z lieven joined #lisp 2017-08-09T09:24:39Z tetero: beach: I'm sure the specification is nice and contains a wishlist of great things. But given a timeline, when can I expect SMP and threading performance comparable with Linux? 2017-08-09T09:24:57Z tetero: and support for, say, 20% of the hardware 2017-08-09T09:26:13Z beach: tetero: If I were you, I would not expect anything. What you need is largely incompatible with my goals. 2017-08-09T09:26:52Z beach: tetero: So if that's what you mean by "viable", then, yes you are right. I don't expect that within the next few decades. 2017-08-09T09:26:55Z ryanwatkins joined #lisp 2017-08-09T09:28:28Z jamtho quit (Ping timeout: 240 seconds) 2017-08-09T09:29:06Z tetero: beach: That sidesteps the question quite nicely, and sort of proves my point. It's easy to create great operating systems in theory, less so to implement them, it's virtually impossible to get something up to the level of being competitive or even in the circle of usable as anything other than experimental concept os today. It takes a long time. This is why Unix reigns supreme. 2017-08-09T09:29:24Z tetero: HURD has been on its way how long now? 2017-08-09T09:30:08Z beach: tetero: If you want to hear me say that you are right, consider it done. 2017-08-09T09:30:55Z Shinmera: Mezzano runs DOOM. What more could one ever need of an OS 2017-08-09T09:31:09Z pok joined #lisp 2017-08-09T09:31:09Z gadwin joined #lisp 2017-08-09T09:31:09Z jackdaniel joined #lisp 2017-08-09T09:31:10Z misv joined #lisp 2017-08-09T09:31:10Z samebchase joined #lisp 2017-08-09T09:31:11Z angavrilov joined #lisp 2017-08-09T09:31:15Z mikaelj joined #lisp 2017-08-09T09:31:16Z SiCC joined #lisp 2017-08-09T09:31:16Z engblom joined #lisp 2017-08-09T09:31:16Z zchlyg joined #lisp 2017-08-09T09:31:16Z HDurer joined #lisp 2017-08-09T09:31:17Z HDurer quit (Changing host) 2017-08-09T09:31:17Z HDurer joined #lisp 2017-08-09T09:31:19Z oystewh joined #lisp 2017-08-09T09:31:20Z dcluna joined #lisp 2017-08-09T09:31:21Z fkac joined #lisp 2017-08-09T09:31:21Z papachan joined #lisp 2017-08-09T09:31:23Z sbryant joined #lisp 2017-08-09T09:31:25Z hjudt joined #lisp 2017-08-09T09:31:26Z HDurer2 joined #lisp 2017-08-09T09:31:27Z mishoo joined #lisp 2017-08-09T09:31:30Z dec0n joined #lisp 2017-08-09T09:31:32Z terpri joined #lisp 2017-08-09T09:31:35Z sjl joined #lisp 2017-08-09T09:31:37Z ``Erik joined #lisp 2017-08-09T09:31:43Z Murii quit (Ping timeout: 255 seconds) 2017-08-09T09:31:46Z Firedancer joined #lisp 2017-08-09T09:31:55Z damke joined #lisp 2017-08-09T09:31:56Z ikopico joined #lisp 2017-08-09T09:33:28Z krasnal_ quit (Ping timeout: 246 seconds) 2017-08-09T09:33:28Z beach: tetero: Long ago, I stopped taking the bait when people start putting words in my mouth. I never said anything about SMP, thread performance, or being competitive. 2017-08-09T09:33:39Z copec joined #lisp 2017-08-09T09:34:03Z tetero: This is sort of where Lisp goes off the rails for me. It's been neglected by mainstream for such a long time that some have formed a cult around it, with the usual detachment from reality when it comes to high flying dreams of grandeur. Sadly, this only adds to the isolation of the language 2017-08-09T09:34:39Z Shinmera: I'm not sure beach ever claimed any dreams of grandeur or promised that his project was going to supersede today's OSs. 2017-08-09T09:35:03Z beach: I would take great care in avoiding such statements, in effect. 2017-08-09T09:35:18Z tetero: beach: It wasn't my intention to hurt your feelings. I'm just trying to inject some realism and pragmatism into this to make you realize that Unix isn't beloved because everyone considers it to be perfect, but because it's considered to be the best viable alternative. Whether SUS or your OS specification is the best doesn't really matter when you need to deploy an infrastructure today 2017-08-09T09:35:37Z beach: tetero: Like water of a duck's back. 2017-08-09T09:35:57Z beach: off 2017-08-09T09:36:00Z jackdaniel: it's not about feelings, but rather being offtopic ,) 2017-08-09T09:36:12Z krasnal_ joined #lisp 2017-08-09T09:36:17Z tetero: Shinmera: It's insinuated when he's saying that he's working on a viable alternative while spouting the unix haters handbook stuff. 2017-08-09T09:36:20Z jackdaniel: your assertions aim at something what never existed 2017-08-09T09:36:29Z Shinmera: tetero: How so? 2017-08-09T09:36:42Z varjag joined #lisp 2017-08-09T09:36:57Z tetero: They are and they did, but now we're getting into tribalism - and I can't win that with reason 2017-08-09T09:37:06Z tetero: That's rooted solely in popularity. 2017-08-09T09:37:17Z Shinmera: Well if you want to put everyone else down as being tribal, ok 2017-08-09T09:37:28Z Shinmera: Have a nice day. 2017-08-09T09:37:33Z beach: Heh. 2017-08-09T09:37:40Z damke_ joined #lisp 2017-08-09T09:38:10Z rumble is now known as grumble 2017-08-09T09:39:03Z damke quit (Ping timeout: 258 seconds) 2017-08-09T09:41:14Z damke joined #lisp 2017-08-09T09:42:07Z _cosmonaut_ quit (Ping timeout: 258 seconds) 2017-08-09T09:43:12Z _cosmonaut_ joined #lisp 2017-08-09T09:44:02Z damke_ quit (Ping timeout: 258 seconds) 2017-08-09T09:44:38Z neoncont_ quit (Remote host closed the connection) 2017-08-09T09:45:50Z neoncontrails joined #lisp 2017-08-09T09:45:57Z damke quit (Ping timeout: 258 seconds) 2017-08-09T09:46:02Z damke_ joined #lisp 2017-08-09T09:46:44Z neoncont_ joined #lisp 2017-08-09T09:48:35Z damke joined #lisp 2017-08-09T09:50:46Z neoncontrails quit (Ping timeout: 276 seconds) 2017-08-09T09:51:31Z jackdaniel: I'm personally suprised, how many people try to discourage others to do /their/ things, which doesn't even concern them. such malcontents appear here and then regularily 2017-08-09T09:51:42Z damke_ quit (Ping timeout: 258 seconds) 2017-08-09T09:52:37Z jackdaniel: I mean – I can't grok the motivation behind such behavior 2017-08-09T09:53:14Z Shinmera: Some don't like to see others "waste their time". 2017-08-09T09:53:21Z tetero: Ha. That's rich. I haven't, nor am I malcontent, which is evident by the fact that I don't go around posting 'Lisp haters handbook', whereas the person I'm arguing against has been going on about that for over a day now, with articles, references and putdowns to some newbie who isn't here to defend himself 2017-08-09T09:53:23Z Shinmera: Note that wasting ones time is a very subjective metric. 2017-08-09T09:54:18Z tetero: It's fascinating how you're able to turn it around to that though. You can find this behaviour text-book under tribalism on wikipedia. Something about the core beliefs in tribes being taboo to question leading to being ostracized. 2017-08-09T09:54:41Z Shinmera: You're a very cool person, we know. 2017-08-09T09:54:47Z Shinmera: You can stop now. 2017-08-09T09:55:00Z jackdaniel: well, I personally disagree with beach, that unix is a bad system, but it's far from criticizing his effort. he does amazing things 2017-08-09T09:55:26Z phoe: tetero: how much of an operating system have you written with your own hands? 2017-08-09T09:55:31Z tetero: How about *you* stop? I had left it alone, and you start ganging up on me, yet again, by calling me a malcontent. 2017-08-09T09:55:43Z Shinmera: You don't need to respond, you know. 2017-08-09T09:56:06Z Murii joined #lisp 2017-08-09T09:56:13Z tetero: Nor do you need to openly talk crap about people who aren't doing so to you 2017-08-09T09:56:16Z jackdaniel: and I'm referring to people who pick on various projects I work on: ecl, mcclim, lisp in general (dead language apparently!) etc. 2017-08-09T09:56:46Z jackdaniel: so it's not directed solely on you, I acknowledge the fact, that such phenomen exists, and I'm sad that I don't understand it 2017-08-09T09:57:57Z Shinmera: tetero: The talking crap started when tribalism came into view as a counter argument. 2017-08-09T09:58:32Z jackdaniel gets back to his own futile efforts, see you o/ 2017-08-09T09:58:39Z tetero: Not solely, but it is in-part directed towards me. I see now that you've joined after some of the other things transpired, such as my responding to beach going on (yet again I might add) about the unix haters handbook, which should put things in perspective. I applaud people doing their own thing, and I love alternatie operating systems, but going on about unix hatred and touting his OS as an alternative is 2017-08-09T09:58:41Z tetero: unrealistic and hateful. 2017-08-09T09:59:14Z glamas quit (Remote host closed the connection) 2017-08-09T09:59:26Z jackdaniel: fyi, I have read the log *before* writing things 2017-08-09T09:59:30Z jackdaniel: my client got disconnected 2017-08-09T09:59:41Z jackdaniel: not that it matters 2017-08-09T09:59:53Z phoe: I disagree about unrealism, and "hatefulness" - who hates who in this scenario? 2017-08-09T10:00:58Z tetero: I'd say that people who are continually going on about 'x haters handbook' hates x 2017-08-09T10:01:10Z Shinmera: It's just a name. 2017-08-09T10:01:16Z tetero: Of course it is. 2017-08-09T10:01:40Z Shinmera: It was dubbed such as the people who criticised unix at the time were often brushed off as "haters". 2017-08-09T10:01:43Z tetero: And putting down everyone who uses x, implying that they're morons, that's just cute 2017-08-09T10:01:53Z phoe: tetero: wtf 2017-08-09T10:01:59Z phoe: who put down everyone who uses x? 2017-08-09T10:02:01Z Shinmera: The implications are solely your interpretation, I'm afraid. 2017-08-09T10:02:10Z phoe: where did you read the implications that they're morons? 2017-08-09T10:02:23Z phoe: show me the logs 2017-08-09T10:02:40Z tetero: tetero: I am working on it (the viable alternative). But, given how many many generations have been brainwashed into thinking Unix is good, there is little hope for any success, other than personal satisfaction. That 2017-08-09T10:02:42Z tetero: won't stop me from continuing the work though. 2017-08-09T10:02:51Z tetero: Written by beach just a few moments ago. 2017-08-09T10:03:02Z phoe: yes, where id the part where he puts down everyone who uses unix? 2017-08-09T10:03:10Z phoe: where is the part where he implies that they are morons? 2017-08-09T10:03:24Z Shinmera: That's not the same as putting down everyone who uses unix. He's merely stating (and this is accurate) that there are a lot of people out there who have trouble imagining a system that's better than the unix we have today. 2017-08-09T10:03:25Z tetero: It's in that text. implications aren't literally spelled out, you know. 2017-08-09T10:03:29Z Shinmera: And that's a shame. 2017-08-09T10:03:50Z phoe: tetero: I have completely different implications in my mind and sorry, they're not about calling anyone a moron. 2017-08-09T10:03:53Z tetero: Ha. 2017-08-09T10:04:12Z tetero: All right. Let's try substitution. 2017-08-09T10:04:41Z phoe: and they're not including putting down everyone who uses unix. (AFAIK beach would be the first person who would get put down with that statement as he's a linux user. :P) 2017-08-09T10:05:08Z tetero: Replace 'Unix' in the unix haters handbook and so on, with races, that's sufficiently controversial. Is it hatred now? Or is it still just innocent? 2017-08-09T10:05:17Z Shinmera: Oh boy this argument. 2017-08-09T10:05:23Z phoe: tetero: you're one step from being kicked from here by me. 2017-08-09T10:05:26Z phoe: Please stop. 2017-08-09T10:06:16Z maarhart joined #lisp 2017-08-09T10:06:20Z tetero: phoe: I'll save you the trouble. 2017-08-09T10:06:24Z tetero left #lisp 2017-08-09T10:08:03Z Shinmera: Does this still count as having invoked Godwin's law? 2017-08-09T10:08:16Z jackdaniel: t 2017-08-09T10:08:40Z Shinmera: Another good internet argument then :) 2017-08-09T10:09:48Z varjag left #lisp 2017-08-09T10:10:47Z varjag joined #lisp 2017-08-09T10:13:29Z Xof joined #lisp 2017-08-09T10:14:33Z phoe: geez, swank.lisp is a massive file. 2017-08-09T10:14:54Z maarhart quit (Quit: Mutter: www.mutterirc.com) 2017-08-09T10:16:09Z jackdaniel: check out slime.el ! ;) 2017-08-09T10:16:39Z jackdaniel: the latter has some even more annoying features, like dynamic scope 2017-08-09T10:16:46Z Shinmera: At least asdf.lisp is concatenated from multiple files. 2017-08-09T10:17:19Z phoe: ugh, yes. 2017-08-09T10:17:24Z phoe: I'm trying to analyze that file. 2017-08-09T10:17:38Z phoe: The first thing I'll probably do is fork Swank and split this file into forty smaller ones. 2017-08-09T10:18:58Z jackdaniel: swank.lisp ain't that bad nor big. also note page breaks 2017-08-09T10:19:31Z jackdaniel: they separate logic parts of it, you navigate with "C-x [" / "C-x ]" 2017-08-09T10:19:54Z jackdaniel: also, ham is in fact in swank/${impl}.lisp files 2017-08-09T10:20:45Z jackdaniel: (and swank/backend.lisp) 2017-08-09T10:20:51Z phoe: jackdaniel: I actually don't care for the ham, I care for the protocol. 2017-08-09T10:21:08Z phoe: Since I'll be trying to write a separate swank server for LFE. 2017-08-09T10:21:13Z phoe: also I love this line: (setq *** ** ** * * (car values) /// // // / / values +++ ++ ++ + + form) 2017-08-09T10:22:01Z jackdaniel: you'll find some notes about the protocol in slime.el 2017-08-09T10:22:16Z phoe: jackdaniel: is that the scary file you just mentioned? :) 2017-08-09T10:22:19Z jackdaniel: (also navigate with page breaks) 2017-08-09T10:22:26Z Shinmera: phoe: I prefer shiftf for that. https://github.com/Shinmera/qtools-ui/blob/master/repl.lisp#L148 2017-08-09T10:22:30Z jackdaniel: well, yes, but protocol is described in readable comments 2017-08-09T10:22:39Z jackdaniel: at least parts of it 2017-08-09T10:22:43Z phoe: jackdaniel: oooh. I see. 2017-08-09T10:23:03Z jackdaniel: afair some of the notes point out, that it was inspired by R swank protocol and image handling was planned 2017-08-09T10:23:31Z Shinmera: Having a protocol spec would be nice. 2017-08-09T10:23:38Z phoe: Shinmera: that's the first thing I'll try to do. 2017-08-09T10:23:58Z jackdaniel: but please don't butcher swank.lisp file, it doesn't deserve it ,) 2017-08-09T10:25:01Z maarhart joined #lisp 2017-08-09T10:25:11Z Shinmera: phoe: Well, I meant more having a spec that was designed from the ground up, and then backported. 2017-08-09T10:25:16Z qwerty_ quit (Ping timeout: 246 seconds) 2017-08-09T10:25:20Z drcode joined #lisp 2017-08-09T10:25:26Z phoe: Shinmera: well, seems like nobody think of that. 2017-08-09T10:25:37Z phoe: we have an implementation, from which we must create a protocol spec. 2017-08-09T10:26:44Z strelox joined #lisp 2017-08-09T10:27:45Z maarhart quit (Remote host closed the connection) 2017-08-09T10:27:53Z phoe: bingo: https://github.com/slime/slime/blob/master/swank.lisp#L1022 2017-08-09T10:28:01Z phoe: the description of message types. 2017-08-09T10:28:48Z phoe: along with their lambda lists. 2017-08-09T10:29:05Z beach: Wow, I guess I hit a sore spot before. Sorry about that. 2017-08-09T10:29:17Z phoe: beach: whose sore spot? 2017-08-09T10:29:23Z beach: tetero's 2017-08-09T10:29:36Z closkar quit (Ping timeout: 240 seconds) 2017-08-09T10:29:51Z glamas joined #lisp 2017-08-09T10:30:13Z phoe: In a way, but I guess it's his responsibility to differentiate between hating operating systems and hating racial groups, as one thing. 2017-08-09T10:30:40Z beach: Yeah, the overreaction was impressive. 2017-08-09T10:30:49Z phoe: Most impressive. 2017-08-09T10:32:35Z Shinmera: beach: How do you handle layouting in CLIM? I'm working on UI stuff myself and I'm having trouble settling on things. For example- if you have a layout that should just lay things out horizontally and align the items at the top. But now you'd like only one of the items to be aligned at the bottom. That implies you should have an align property on each item, but that property might be useless for other layouts. 2017-08-09T10:32:47Z Shinmera: I was wondering if you had a good solution for that. 2017-08-09T10:34:17Z jackdaniel: you may have horizontal layout, which aligns to top, and that one element to have in pane, which has your gadget and aligns to bottom 2017-08-09T10:34:34Z jackdaniel: so the pane itself is aligned to top, as others, but it's child is aligned to bottom 2017-08-09T10:35:16Z jackdaniel: and since it's height is, say :fill, then bottom matches with the parent horizontal layout height 2017-08-09T10:35:23Z Shinmera: Hmm 2017-08-09T10:35:49Z beach: Shinmera: I might not be understanding the question right. It looks like jackdaniel did, though. 2017-08-09T10:36:06Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-09T10:37:39Z Shinmera: jackdaniel: Correct me if I'm wrong-- you'd basically create a "container" for that one item that fills the height of the parent, and then have a layout in that container that aligns the item to the bottom, yeah? 2017-08-09T10:37:57Z jackdaniel: yes, that was my suggestion 2017-08-09T10:38:00Z Shinmera: Okey. 2017-08-09T10:39:03Z Shinmera: I've also been trying to think about how to handle resizing of elements. I'm not sure whether I want to provide the ability to give absolute sizing (in pixels) at all, nor ways to give a minimal or maximal size, since those easily lead to weird situations like "what happens if you can't fit all elements or if you have too much space" 2017-08-09T10:39:42Z jackdaniel: clim protocol deals with it in two passes 2017-08-09T10:40:02Z jackdaniel: first pass is gathering information, about requierments of all panes in the hierarchy 2017-08-09T10:40:15Z jackdaniel: and the second pass is for deciding, who gets what 2017-08-09T10:40:28Z jackdaniel: you may specify size in pixels, but also in ratios 2017-08-09T10:40:34Z jackdaniel: like 1/3 2017-08-09T10:40:38Z Shinmera: Right. 2017-08-09T10:41:51Z Shinmera: I've heard about a very different approach to layouting (I think Baggers' company does this) where each element is expressed as a spring, and then a physics calculation is run to determine the extent of each spring. 2017-08-09T10:42:07Z Shinmera: I should talk to him about it again. 2017-08-09T10:43:25Z jackdaniel: interesting idea. My intuition is that such thing would give the most natural results if not all requirements could be met as designed by the programmer 2017-08-09T10:43:30Z Shinmera: jackdaniel: So how does CLIM decide to deal with cases when it has too little space or too much space? 2017-08-09T10:43:34Z jackdaniel: well, "natural" 2017-08-09T10:44:35Z jackdaniel: well, I don't know that exactly. You may extend it of course by yourself with a protocol (generic function), but I haven't grokked details of default behavior 2017-08-09T10:44:56Z jackdaniel: not even sure, if it's specified by CLIM - it might be that it wasn't, and McCLIM does "whatever it does" 2017-08-09T10:45:17Z Shinmera: Okey. 2017-08-09T10:45:53Z Bike joined #lisp 2017-08-09T10:46:39Z Shinmera: From what I can tell then CLIM is pretty much the same as other toolkits in that respect. 2017-08-09T10:47:16Z damke_ joined #lisp 2017-08-09T10:47:48Z jackdaniel: I'd say yes 2017-08-09T10:48:01Z ryanwatkins quit (Ping timeout: 246 seconds) 2017-08-09T10:48:04Z jackdaniel: it is very similar with many respects imho, the crucial point is reflection here 2017-08-09T10:48:07Z Shinmera: Alright, thanks for the info! 2017-08-09T10:48:10Z jackdaniel: sure 2017-08-09T10:48:38Z Shinmera: I think for the case I have (game UIs) not allowing pixel-sizes is fine. 2017-08-09T10:49:48Z damke__ joined #lisp 2017-08-09T10:49:58Z damke quit (Ping timeout: 258 seconds) 2017-08-09T10:50:14Z jackdaniel: I like the idea of density independent pixels 2017-08-09T10:50:37Z jackdaniel: as a huge step forward wrt devices with different screen size (not necessarily different resolution) 2017-08-09T10:50:55Z Shinmera: That was another idea I had, but I don't think it's worth the trouble in my case. 2017-08-09T10:52:16Z damke_ quit (Ping timeout: 258 seconds) 2017-08-09T10:53:23Z mishoo_ joined #lisp 2017-08-09T10:54:54Z mishoo quit (Read error: Connection reset by peer) 2017-08-09T10:56:06Z al-damiri joined #lisp 2017-08-09T10:58:56Z phoe: The protocol is giant. 2017-08-09T10:59:05Z phoe: Well, okay, not giant. 2017-08-09T10:59:07Z phoe: It's big. 2017-08-09T11:01:32Z damke joined #lisp 2017-08-09T11:02:11Z damke__ quit (Read error: Connection reset by peer) 2017-08-09T11:03:19Z phoe: https://gist.github.com/phoe/a8bc59b761d920d012032742fd38be3b <- these are the possible message types, AFAI understand the code. 2017-08-09T11:06:16Z Shinmera: That ain't that much 2017-08-09T11:06:24Z whoma1 joined #lisp 2017-08-09T11:07:18Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-09T11:07:40Z phoe: Well, yes. But each of these requires handling - either they originate from slime and need to be handled, or they originate from swank and I must create them and send them. 2017-08-09T11:08:01Z phoe: And each one needs to be understood. 2017-08-09T11:08:28Z Shinmera: My simple chat protocol alone has more update types than that 2017-08-09T11:09:13Z phoe: Shinmera: that's because :EMACS-REX also calls a real lot of other Lisp functions from SWANK and SWANK-REPL packages. 2017-08-09T11:09:20Z phoe: So these keywords are not the full protocol. 2017-08-09T11:09:36Z phoe: A part of the protocol actually resides in the Lisp code. 2017-08-09T11:09:45Z Shinmera: Sure. 2017-08-09T11:09:54Z whoman quit (Ping timeout: 258 seconds) 2017-08-09T11:09:58Z mishoo__ joined #lisp 2017-08-09T11:11:36Z mishoo_ quit (Ping timeout: 260 seconds) 2017-08-09T11:12:04Z glamas quit (Remote host closed the connection) 2017-08-09T11:31:09Z phoe: Shinmera: grepping "defslimefun" all over the slime repository yields 859 lines. 2017-08-09T11:31:27Z phoe: I assume 2/3 of these are valid functions callable by slime. 2017-08-09T11:32:08Z Murii quit (Ping timeout: 258 seconds) 2017-08-09T11:32:17Z phoe: Maybe closer to 1/2, since there are duplicates from various swank backends. 2017-08-09T11:32:44Z goosnargh joined #lisp 2017-08-09T11:38:57Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-09T11:39:06Z arduo quit (Ping timeout: 240 seconds) 2017-08-09T11:40:08Z rotty quit (Ping timeout: 240 seconds) 2017-08-09T11:40:57Z neoncont_ quit (Remote host closed the connection) 2017-08-09T11:41:32Z neoncontrails joined #lisp 2017-08-09T11:45:30Z neoncontrails quit (Ping timeout: 240 seconds) 2017-08-09T11:45:56Z damke quit (Ping timeout: 258 seconds) 2017-08-09T11:50:12Z thinkpad quit (Read error: Connection reset by peer) 2017-08-09T11:52:02Z thinkpad joined #lisp 2017-08-09T11:55:14Z Shinmera: Well, now you know why a lot of the backends for other languages only have partial slime support. 2017-08-09T11:55:17Z BitPuffin|osx joined #lisp 2017-08-09T11:57:56Z c_3 quit (Read error: Connection reset by peer) 2017-08-09T11:58:17Z c_3 joined #lisp 2017-08-09T11:59:27Z Ven joined #lisp 2017-08-09T11:59:50Z Ven is now known as Guest88211 2017-08-09T12:01:06Z cromachina joined #lisp 2017-08-09T12:01:09Z cromachina quit (Client Quit) 2017-08-09T12:01:26Z cromachina joined #lisp 2017-08-09T12:06:08Z kev1n joined #lisp 2017-08-09T12:07:27Z rotty joined #lisp 2017-08-09T12:13:04Z damke_ joined #lisp 2017-08-09T12:15:22Z Kevslinger joined #lisp 2017-08-09T12:17:45Z damke_ quit (Ping timeout: 258 seconds) 2017-08-09T12:18:19Z Bike quit (Ping timeout: 276 seconds) 2017-08-09T12:18:41Z kev1n quit (Remote host closed the connection) 2017-08-09T12:19:27Z damke joined #lisp 2017-08-09T12:26:44Z AntiSpamMeta quit (Read error: Connection reset by peer) 2017-08-09T12:26:57Z AntiSpamMeta joined #lisp 2017-08-09T12:27:09Z damke_ joined #lisp 2017-08-09T12:27:33Z knicklux joined #lisp 2017-08-09T12:27:43Z damke quit (Ping timeout: 258 seconds) 2017-08-09T12:32:41Z phoe: Yes, I do. 2017-08-09T12:32:42Z damke_ quit (Ping timeout: 258 seconds) 2017-08-09T12:35:15Z goosnargh joined #lisp 2017-08-09T12:36:57Z quazimodo joined #lisp 2017-08-09T12:39:59Z goosnargh quit (Ping timeout: 258 seconds) 2017-08-09T12:44:28Z knicklux quit (Ping timeout: 260 seconds) 2017-08-09T12:44:31Z EvW1 joined #lisp 2017-08-09T12:45:10Z damke joined #lisp 2017-08-09T12:49:57Z damke quit (Ping timeout: 258 seconds) 2017-08-09T12:53:20Z phoe: I think I should work incrementally. 2017-08-09T12:53:35Z phoe: Is there any way of loading swank without any contribs? 2017-08-09T12:53:46Z phoe: Or does it depend on slime? 2017-08-09T12:54:52Z antoszka: Just quickload swank. 2017-08-09T12:55:36Z phoe: antoszka: Yes - how do I tell it to refuse loading any contribs? 2017-08-09T12:55:39Z antoszka: I'm probably out of sync with your discussion, so ignore me. 2017-08-09T12:55:47Z antoszka: Dunno, edit the ASD. 2017-08-09T12:56:01Z phoe: I want to get a "basic" slime/swank connection so I can focus on this in the beginning. 2017-08-09T12:56:17Z phoe: Or should I invoke slime without slime-fancy? 2017-08-09T12:57:05Z Guest88211 quit (Ping timeout: 248 seconds) 2017-08-09T12:58:03Z Achylles joined #lisp 2017-08-09T12:59:23Z fsmunoz joined #lisp 2017-08-09T13:00:31Z doesthiswork joined #lisp 2017-08-09T13:01:21Z beach: I think I figured out the sore spot: --- join: tetero (~nox@sysv.se) 2017-08-09T13:02:24Z phoe: beach: what is it? the name/host? 2017-08-09T13:02:48Z beach: Yes, "sysv" typically means Unix System V. 2017-08-09T13:03:41Z LiamH joined #lisp 2017-08-09T13:03:50Z Achylles quit (Ping timeout: 240 seconds) 2017-08-09T13:04:14Z antoszka: phoe: load sbcl without quicklisp init, require asdf, push the swank.asd dirname to the asdf:*central-registry* and require swank 2017-08-09T13:04:23Z antoszka: phoe: works for me without any extras. 2017-08-09T13:04:54Z damke joined #lisp 2017-08-09T13:05:42Z phoe: antoszka: got it, thanks. 2017-08-09T13:05:53Z antoszka: np 2017-08-09T13:07:01Z Bike joined #lisp 2017-08-09T13:08:44Z milanj joined #lisp 2017-08-09T13:14:31Z cromachina quit (Read error: Connection reset by peer) 2017-08-09T13:17:40Z Achylles joined #lisp 2017-08-09T13:22:03Z Saixia2 joined #lisp 2017-08-09T13:24:51Z mson joined #lisp 2017-08-09T13:26:23Z knicklux joined #lisp 2017-08-09T13:27:08Z damke quit (Ping timeout: 258 seconds) 2017-08-09T13:30:31Z varjag quit (Remote host closed the connection) 2017-08-09T13:30:54Z varjag joined #lisp 2017-08-09T13:35:49Z goosnargh joined #lisp 2017-08-09T13:37:51Z FreeBirdLjj joined #lisp 2017-08-09T13:39:01Z vicfred joined #lisp 2017-08-09T13:39:28Z jameser joined #lisp 2017-08-09T13:40:52Z goosnargh quit (Ping timeout: 276 seconds) 2017-08-09T13:42:40Z sjl__ joined #lisp 2017-08-09T13:44:06Z sjl quit (Read error: Connection reset by peer) 2017-08-09T13:45:31Z hlavaty joined #lisp 2017-08-09T13:49:56Z EvW1 quit (Ping timeout: 255 seconds) 2017-08-09T13:54:28Z damke joined #lisp 2017-08-09T13:54:53Z warweasle joined #lisp 2017-08-09T13:55:45Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-09T13:57:41Z doesthiswork quit (Quit: Leaving.) 2017-08-09T13:59:04Z _cosmonaut_ quit (Ping timeout: 276 seconds) 2017-08-09T13:59:29Z Achylles quit (Ping timeout: 248 seconds) 2017-08-09T14:04:57Z flamebeard joined #lisp 2017-08-09T14:07:38Z EvW joined #lisp 2017-08-09T14:10:53Z damke_ joined #lisp 2017-08-09T14:11:19Z FreeBirdLjj joined #lisp 2017-08-09T14:12:28Z Kyo91 joined #lisp 2017-08-09T14:12:39Z ptdel joined #lisp 2017-08-09T14:12:39Z JohnTalent joined #lisp 2017-08-09T14:13:54Z damke quit (Ping timeout: 258 seconds) 2017-08-09T14:14:53Z damke__ joined #lisp 2017-08-09T14:16:12Z damke_ quit (Ping timeout: 258 seconds) 2017-08-09T14:18:52Z _cosmonaut_ joined #lisp 2017-08-09T14:20:03Z test1600 quit (Quit: Leaving) 2017-08-09T14:20:35Z phoe quit (Ping timeout: 240 seconds) 2017-08-09T14:22:23Z phoe joined #lisp 2017-08-09T14:22:33Z pjb joined #lisp 2017-08-09T14:24:40Z rumbler31 joined #lisp 2017-08-09T14:25:06Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-09T14:25:16Z mishoo__ quit (Ping timeout: 260 seconds) 2017-08-09T14:25:22Z dec0n quit (Ping timeout: 246 seconds) 2017-08-09T14:25:52Z dec0n joined #lisp 2017-08-09T14:26:47Z _cosmonaut_ quit (Ping timeout: 260 seconds) 2017-08-09T14:27:34Z jameser joined #lisp 2017-08-09T14:30:59Z Lowl3v3l joined #lisp 2017-08-09T14:36:33Z goosnargh joined #lisp 2017-08-09T14:38:25Z Achylles joined #lisp 2017-08-09T14:40:49Z edgar-rft quit (Quit: edgar-rft) 2017-08-09T14:41:14Z goosnargh quit (Ping timeout: 255 seconds) 2017-08-09T14:41:38Z _cosmonaut_ joined #lisp 2017-08-09T14:42:37Z fkac quit (Remote host closed the connection) 2017-08-09T14:45:50Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-09T14:46:42Z _cosmonaut_ joined #lisp 2017-08-09T14:49:04Z Tristam quit (Ping timeout: 260 seconds) 2017-08-09T14:49:51Z DingoSaar quit (Remote host closed the connection) 2017-08-09T14:50:33Z Tristam joined #lisp 2017-08-09T14:50:42Z DingoSaar joined #lisp 2017-08-09T14:52:09Z Tristam quit (Max SendQ exceeded) 2017-08-09T14:52:26Z oleo joined #lisp 2017-08-09T14:52:37Z _cosmonaut_ quit (Ping timeout: 255 seconds) 2017-08-09T14:54:14Z Tristam joined #lisp 2017-08-09T14:57:38Z damke__ quit (Read error: Connection reset by peer) 2017-08-09T14:58:05Z damke__ joined #lisp 2017-08-09T14:58:17Z _main_ joined #lisp 2017-08-09T14:58:25Z _main_ quit (Read error: Connection reset by peer) 2017-08-09T14:59:25Z _main_ joined #lisp 2017-08-09T14:59:38Z forgot quit (Remote host closed the connection) 2017-08-09T14:59:42Z __main__ quit (Read error: Connection reset by peer) 2017-08-09T15:02:36Z _main_ is now known as __main__ 2017-08-09T15:02:54Z damke joined #lisp 2017-08-09T15:04:28Z schweers quit (Ping timeout: 240 seconds) 2017-08-09T15:04:30Z damke__ quit (Ping timeout: 258 seconds) 2017-08-09T15:09:35Z schweers joined #lisp 2017-08-09T15:10:57Z jameser quit (Ping timeout: 240 seconds) 2017-08-09T15:11:25Z mishoo__ joined #lisp 2017-08-09T15:12:01Z brendos quit (Ping timeout: 248 seconds) 2017-08-09T15:12:28Z jameser joined #lisp 2017-08-09T15:16:25Z emaczen joined #lisp 2017-08-09T15:17:09Z damke quit (Ping timeout: 258 seconds) 2017-08-09T15:17:47Z emaczen quit (Remote host closed the connection) 2017-08-09T15:19:10Z damke joined #lisp 2017-08-09T15:23:17Z schweers quit (Ping timeout: 258 seconds) 2017-08-09T15:25:29Z maarhart joined #lisp 2017-08-09T15:26:53Z sjl__ is now known as sjl 2017-08-09T15:27:54Z FreeBird_ joined #lisp 2017-08-09T15:28:35Z jameser quit (Ping timeout: 240 seconds) 2017-08-09T15:29:15Z maarhart quit (Remote host closed the connection) 2017-08-09T15:30:49Z FreeBirdLjj quit (Ping timeout: 255 seconds) 2017-08-09T15:31:54Z eudoxia joined #lisp 2017-08-09T15:32:34Z emaczen joined #lisp 2017-08-09T15:33:30Z emaczen: each time I try to evaluate (sb-ext:run-program "/usr/bin/make" nil) my computer freezes and I ultimately have to reboot 2017-08-09T15:33:33Z jameser joined #lisp 2017-08-09T15:33:51Z emaczen: I evaluate sb-posix:chdir to get to the correct directory with the makefile 2017-08-09T15:37:17Z goosnargh joined #lisp 2017-08-09T15:39:49Z damke_ joined #lisp 2017-08-09T15:39:58Z strelox quit (Remote host closed the connection) 2017-08-09T15:40:09Z strelox joined #lisp 2017-08-09T15:41:51Z Ven joined #lisp 2017-08-09T15:42:02Z goosnargh quit (Ping timeout: 260 seconds) 2017-08-09T15:42:14Z Ven is now known as Guest36538 2017-08-09T15:42:27Z damke quit (Ping timeout: 258 seconds) 2017-08-09T15:44:04Z schweers joined #lisp 2017-08-09T15:44:39Z mson quit (Quit: Connection closed for inactivity) 2017-08-09T15:45:31Z Saixia2 quit (Ping timeout: 258 seconds) 2017-08-09T15:45:50Z EvW quit (Ping timeout: 240 seconds) 2017-08-09T15:49:06Z jameser quit (Ping timeout: 240 seconds) 2017-08-09T15:50:36Z jameser joined #lisp 2017-08-09T15:53:57Z fsmunoz quit (Ping timeout: 258 seconds) 2017-08-09T15:58:18Z oleo: maybe use :wait nil ? 2017-08-09T15:58:50Z oleo: and you can use :directory too 2017-08-09T15:58:54Z jackdaniel: another solution would be spawning it in seperate thread 2017-08-09T15:59:03Z oleo: you don't need to use sb-posix:chdir for that 2017-08-09T15:59:14Z jackdaniel: uiop:run-program doesn't require path provided (uses PATH env variable) 2017-08-09T15:59:46Z smazga joined #lisp 2017-08-09T16:00:53Z oleo: When sb-ext:run-program is called with wait equal to NIL, an instance of class sb-ext:process is returned 2017-08-09T16:01:58Z Karl_Dscc joined #lisp 2017-08-09T16:02:00Z oleo: you can then use (process-status blah) if you stored it in some variable blah say 2017-08-09T16:02:53Z flamebeard quit (Quit: Leaving) 2017-08-09T16:03:34Z Karl_Dscc quit (Remote host closed the connection) 2017-08-09T16:04:25Z oleo: or get the output stream of the process via (with-output-to-string (s (sb-ext:process-output blah)) s) or some such ? 2017-08-09T16:04:32Z oleo: meh 2017-08-09T16:04:47Z knicklux quit (Quit: Leaving) 2017-08-09T16:05:33Z oleo: i haven't tried it either.... 2017-08-09T16:05:33Z marvin2 joined #lisp 2017-08-09T16:09:01Z timofonic quit (Quit: WeeChat 1.9) 2017-08-09T16:11:39Z Bike quit (Remote host closed the connection) 2017-08-09T16:12:36Z Bike joined #lisp 2017-08-09T16:15:24Z marvin2 quit (Ping timeout: 260 seconds) 2017-08-09T16:15:53Z marvin3 joined #lisp 2017-08-09T16:20:27Z wooden quit (Read error: Connection reset by peer) 2017-08-09T16:21:38Z wooden joined #lisp 2017-08-09T16:22:13Z LooneyTunes joined #lisp 2017-08-09T16:23:03Z phoe: I have an (unsigned-byte 8) file opened and positioned. How can I read N bytes from that stream into a vector? 2017-08-09T16:23:19Z Bike: clhs read-sequence 2017-08-09T16:23:19Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_rd_seq.htm 2017-08-09T16:23:20Z Bike: no? 2017-08-09T16:23:34Z phoe: oh! correct, thanks. 2017-08-09T16:24:02Z neoncontrails joined #lisp 2017-08-09T16:26:22Z gravicappa joined #lisp 2017-08-09T16:28:21Z fkac joined #lisp 2017-08-09T16:29:27Z Saixia2 joined #lisp 2017-08-09T16:32:32Z phoe: I have a vector of (unsigned-byte 8)s. How can I turn them into a stream that outputs individual bytes? 2017-08-09T16:33:41Z beach: By using a Gray stream maybe? 2017-08-09T16:34:02Z Shinmera: fast-io 2017-08-09T16:34:36Z Shinmera: At least if I remember correctly it has vector backed streams as one of its features. 2017-08-09T16:34:44Z phoe: Shinmera: yes, thanks. 2017-08-09T16:37:01Z Guest36538 quit (Ping timeout: 276 seconds) 2017-08-09T16:38:03Z goosnargh joined #lisp 2017-08-09T16:41:56Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-09T16:42:51Z goosnargh quit (Ping timeout: 255 seconds) 2017-08-09T16:49:35Z scymtym joined #lisp 2017-08-09T16:50:03Z eudoxia quit (Quit: Leaving) 2017-08-09T16:54:34Z FreeBird_ quit (Remote host closed the connection) 2017-08-09T16:55:27Z KongWubba joined #lisp 2017-08-09T16:57:00Z Ven joined #lisp 2017-08-09T16:57:23Z Ven is now known as Guest39777 2017-08-09T16:58:06Z vicfred quit (Quit: Leaving) 2017-08-09T17:00:29Z defaultxr joined #lisp 2017-08-09T17:01:47Z damke joined #lisp 2017-08-09T17:03:10Z schweers quit (Ping timeout: 240 seconds) 2017-08-09T17:04:06Z damke_ quit (Ping timeout: 258 seconds) 2017-08-09T17:04:40Z shka_ joined #lisp 2017-08-09T17:06:35Z LooneyTunes quit (Ping timeout: 255 seconds) 2017-08-09T17:07:33Z damke quit (Ping timeout: 258 seconds) 2017-08-09T17:09:48Z KongWubba quit (Remote host closed the connection) 2017-08-09T17:12:24Z FreeBirdLjj joined #lisp 2017-08-09T17:15:50Z mson joined #lisp 2017-08-09T17:17:39Z rippa joined #lisp 2017-08-09T17:23:04Z Achylles quit (Ping timeout: 260 seconds) 2017-08-09T17:26:21Z vlatkoB_ joined #lisp 2017-08-09T17:26:48Z Saixia2 quit (Ping timeout: 240 seconds) 2017-08-09T17:30:09Z vlatkoB quit (Ping timeout: 248 seconds) 2017-08-09T17:30:50Z grouzen joined #lisp 2017-08-09T17:32:46Z broccolistem joined #lisp 2017-08-09T17:36:06Z BitPuffin|osx quit (Ping timeout: 240 seconds) 2017-08-09T17:37:55Z whoma1 is now known as whoman 2017-08-09T17:38:52Z goosnargh joined #lisp 2017-08-09T17:41:29Z warweasle quit (Quit: later) 2017-08-09T17:43:42Z Achylles joined #lisp 2017-08-09T17:44:43Z emaczen quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-09T17:45:24Z scymtym_ joined #lisp 2017-08-09T17:47:01Z BitPuffin|osx joined #lisp 2017-08-09T17:48:16Z scymtym quit (Ping timeout: 260 seconds) 2017-08-09T17:51:58Z warweasle joined #lisp 2017-08-09T17:53:33Z phoe: What's the simplest way of hexdumping a byte vector in Lisp? 2017-08-09T17:53:50Z neoncontrails quit (Remote host closed the connection) 2017-08-09T17:54:21Z _death: write a small hexdump function 2017-08-09T17:55:00Z neoncontrails joined #lisp 2017-08-09T17:55:08Z _death: here's an old hack: http://paste.lisp.org/display/352961 .. needs constantia:out 2017-08-09T17:55:34Z Xach: phoe: (format nil "~{~2,'0X ~}~%" (coerce vector 'list)) maybe? 2017-08-09T17:55:43Z Shinmera: Xach: gah! one second faster. 2017-08-09T17:56:12Z hardenedapple quit (Quit: WeeChat 1.9) 2017-08-09T17:56:15Z _death: for that ironclad:byte-array-to-hex-string could also work 2017-08-09T17:57:39Z phoe: Xach: thanks! 2017-08-09T17:59:13Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-09T17:59:45Z Xach: i have a (:hex ) function in my .sbclrc that does a little hex dump 2017-08-09T17:59:49Z Xach: and (:bits ...) too 2017-08-09T18:00:06Z Xach: (defun :hex (&optional (thing *)) ...) 2017-08-09T18:00:31Z Xach: i feel good about myself for using * in that context 2017-08-09T18:00:32Z neoncontrails joined #lisp 2017-08-09T18:01:34Z Shinmera: Heh 2017-08-09T18:02:19Z Xach: Hmm, if *foo* are special variables, i wonder what you would intend to convey with earmuffed function bindings. 2017-08-09T18:02:33Z whoman: the ':' isnt confusing about namespaces ? 2017-08-09T18:03:01Z weltung joined #lisp 2017-08-09T18:03:14Z Xach: whoman: it is! but it works in sbcl, and i use sbcl, so i use it. 2017-08-09T18:03:16Z Bike: could be dynamically bound functions like contextl does 2017-08-09T18:03:27Z kozy quit (Remote host closed the connection) 2017-08-09T18:03:30Z dddddd joined #lisp 2017-08-09T18:03:33Z Xach: it makes my life easier for interactive development. 2017-08-09T18:03:54Z Bike: ...wow, that * is something actually 2017-08-09T18:04:40Z Xach: yes! so if i want to hex the last thing, it is just (:hex) 2017-08-09T18:05:14Z Xach: I also have one to open the last thing, whether it's an url or a file, that's (:go). 2017-08-09T18:05:48Z hlavaty quit (Remote host closed the connection) 2017-08-09T18:06:28Z whoman: deftype uses * =) 2017-08-09T18:06:29Z edgar-rft joined #lisp 2017-08-09T18:06:48Z Xach: that's a lil different though 2017-08-09T18:07:17Z Saixia2 joined #lisp 2017-08-09T18:07:42Z Shinmera: Alternative: define a package like / and make the functions symbol macros so you can do /:hex 2017-08-09T18:07:54Z Shinmera: Hooray for pseudo slash commands 2017-08-09T18:08:21Z kozy joined #lisp 2017-08-09T18:08:48Z whoman: i like this idea. 2017-08-09T18:09:13Z _death: or *:hex 2017-08-09T18:09:22Z _death: as well as ** and *** packages 2017-08-09T18:09:29Z Shinmera: What would feel cleaner to me though would be to extend slime's comma commands 2017-08-09T18:09:31Z whoman: (filesystem/module/file/symbol and a unified path-language) 2017-08-09T18:10:01Z whoman: i think we are able to talk to swank to talk to slime 2017-08-09T18:10:34Z whoman: curious now - but what are the main differences between those ,commands and raw in-scope funs ? 2017-08-09T18:11:07Z Saixia2 quit (Client Quit) 2017-08-09T18:11:17Z Shinmera: comma commands are a feature of the slime repl, implemented in slime, not swank. 2017-08-09T18:11:27Z Shinmera: so it's on the emacs side. 2017-08-09T18:11:27Z Saixia2 joined #lisp 2017-08-09T18:12:07Z Saixia2 quit (Client Quit) 2017-08-09T18:12:27Z Saixia2 joined #lisp 2017-08-09T18:13:53Z Saixia2 quit (Client Quit) 2017-08-09T18:14:07Z Saixia2 joined #lisp 2017-08-09T18:14:43Z broccolistem quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-09T18:17:04Z dcluna quit (Ping timeout: 246 seconds) 2017-08-09T18:18:04Z qwerty_ joined #lisp 2017-08-09T18:18:06Z diegs_ joined #lisp 2017-08-09T18:18:08Z elfmacs joined #lisp 2017-08-09T18:19:10Z Guest39777 quit (Ping timeout: 240 seconds) 2017-08-09T18:19:43Z weltung quit (Ping timeout: 276 seconds) 2017-08-09T18:20:02Z dcluna joined #lisp 2017-08-09T18:22:01Z broccolistem joined #lisp 2017-08-09T18:22:54Z karswell_ quit (Remote host closed the connection) 2017-08-09T18:23:18Z random-nick quit (Remote host closed the connection) 2017-08-09T18:24:55Z rippa quit (Ping timeout: 276 seconds) 2017-08-09T18:28:25Z rippa joined #lisp 2017-08-09T18:29:11Z phoe: I just got a crazy idea. 2017-08-09T18:29:29Z phoe: Can I do CLOS method dispatch on individual numbers using the EQL specializer? 2017-08-09T18:29:37Z Ven joined #lisp 2017-08-09T18:30:01Z Ven is now known as Guest3761 2017-08-09T18:30:10Z basket: phoe: Why couldn't you? 2017-08-09T18:30:12Z dlowe: yes 2017-08-09T18:30:58Z phoe: I just realized that I can do that and was like "woah, I did not expect that" 2017-08-09T18:31:28Z broccolistem quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-09T18:32:22Z neoncontrails quit (Remote host closed the connection) 2017-08-09T18:32:58Z neoncontrails joined #lisp 2017-08-09T18:33:27Z Bock quit (Ping timeout: 240 seconds) 2017-08-09T18:35:24Z mishoo__ quit (Ping timeout: 260 seconds) 2017-08-09T18:35:37Z broccolistem joined #lisp 2017-08-09T18:37:03Z EvW joined #lisp 2017-08-09T18:37:29Z neoncontrails quit (Ping timeout: 255 seconds) 2017-08-09T18:39:19Z neoncontrails joined #lisp 2017-08-09T18:40:38Z Karl_Dscc joined #lisp 2017-08-09T18:42:14Z X-Scale joined #lisp 2017-08-09T18:47:11Z jamtho joined #lisp 2017-08-09T18:47:12Z AxelAlex joined #lisp 2017-08-09T18:48:33Z scymtym_ quit (Ping timeout: 248 seconds) 2017-08-09T18:51:27Z jamtho quit (Ping timeout: 240 seconds) 2017-08-09T18:54:51Z elfmacs quit (Quit: WeeChat 1.9) 2017-08-09T18:54:57Z jamtho joined #lisp 2017-08-09T18:54:58Z jamtho quit (Read error: Connection reset by peer) 2017-08-09T18:55:07Z Achylles quit (Ping timeout: 260 seconds) 2017-08-09T18:55:45Z edgar-rft quit (Quit: edgar-rft) 2017-08-09T18:59:32Z LiamH quit (Quit: Leaving.) 2017-08-09T19:00:01Z MrWoohoo quit (Ping timeout: 276 seconds) 2017-08-09T19:01:35Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-09T19:02:44Z scymtym joined #lisp 2017-08-09T19:04:29Z scymtym: probably a little late to mention it, but there is also https://github.com/scymtym/utilities.binary-dump 2017-08-09T19:05:01Z X-Scale left #lisp 2017-08-09T19:05:14Z phoe: scymtym: thanks 2017-08-09T19:06:49Z Kyo91 quit (Ping timeout: 255 seconds) 2017-08-09T19:09:07Z gravicappa quit (Ping timeout: 276 seconds) 2017-08-09T19:11:51Z random-nick joined #lisp 2017-08-09T19:14:49Z diegs_ quit (Ping timeout: 258 seconds) 2017-08-09T19:17:10Z Saixia2 quit (Ping timeout: 255 seconds) 2017-08-09T19:22:11Z juanrgar joined #lisp 2017-08-09T19:23:28Z axion: Is there a portable way to get the pathname to a file-backed stream? 2017-08-09T19:23:43Z Kyo91 joined #lisp 2017-08-09T19:25:37Z mson quit (Quit: Connection closed for inactivity) 2017-08-09T19:28:25Z Kyo91 quit (Ping timeout: 255 seconds) 2017-08-09T19:28:47Z phoe: axion: #'pathname? 2017-08-09T19:29:12Z mxh- joined #lisp 2017-08-09T19:29:15Z phoe: "If the pathspec designator is a stream, the stream can be either open or closed; in both cases, the pathname returned corresponds to the filename used to open the file." 2017-08-09T19:29:18Z phoe: from function PATHNAME 2017-08-09T19:29:36Z eschatologist joined #lisp 2017-08-09T19:29:37Z axion: Nice! Thanks phoe 2017-08-09T19:30:03Z eschatologist quit (Client Quit) 2017-08-09T19:30:43Z ptdel_ joined #lisp 2017-08-09T19:32:12Z phoe: which is an excerpt from The Holy Standard, chapter 19, subchapter 4, element 3. 2017-08-09T19:32:27Z shka_ quit (Ping timeout: 260 seconds) 2017-08-09T19:32:47Z goosnargh: All praise X3J13. Amen. 2017-08-09T19:33:13Z eschatologist joined #lisp 2017-08-09T19:33:22Z phoe: ex three jay thirteen be praised. 2017-08-09T19:35:06Z Kyo91 joined #lisp 2017-08-09T19:36:32Z _paul0 joined #lisp 2017-08-09T19:37:56Z paul0 quit (Ping timeout: 260 seconds) 2017-08-09T19:38:39Z broccolistem quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-09T19:39:23Z jasom: clhs pathname 2017-08-09T19:39:23Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/a_pn.htm 2017-08-09T19:39:40Z joast quit (Ping timeout: 246 seconds) 2017-08-09T19:42:46Z jasom: hmm, there is no behavior described for the case where something that is not a pathname designator is passed to PATHNAME 2017-08-09T19:42:56Z JuanDaugherty joined #lisp 2017-08-09T19:43:16Z Xach: x3j13 be damned! 2017-08-09T19:43:25Z ptdel_: would you guys recommend using something like jonathan over cl-json? I've trying to parse nested json object right now with cl-json and it seems like a pretty big pain compared to jonathan 2017-08-09T19:43:48Z jasom: ptdel_: https://sites.google.com/site/sabraonthehill/home/json-libraries 2017-08-09T19:43:51Z _death: ptdel: I like com.gigamonkeys.json 2017-08-09T19:44:01Z jasom: that's a reasonable comparison between json libraries 2017-08-09T19:44:12Z ptdel_: so no preference? 2017-08-09T19:44:34Z jasom: I use yason, but not with the default encode/decode settings 2017-08-09T19:44:49Z nexxus joined #lisp 2017-08-09T19:45:11Z ptdel_: ah right on, thanks. I've looked at a bunch of comparisons everybody shys away from having an opinion 2017-08-09T19:45:57Z jasom: specifically I like the decoding mapping of: object->hash-table array->vector false->nil null->:null 2017-08-09T19:46:41Z Guest3761 quit (Ping timeout: 248 seconds) 2017-08-09T19:46:59Z random-nick quit (Remote host closed the connection) 2017-08-09T19:47:01Z jasom: that mapping is completely invertible; all of the existing json libraries either 1) don't have an invertible mapping by default or 2) use their own types they created to represent json 2017-08-09T19:49:25Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-09T19:50:05Z ptdel_: yeah that does seem ideal, i think my problem was lack of knowledge though i believe i was trying to incorrectly parse the resulting alist cl-json creates by default 2017-08-09T19:50:46Z jasom finds it a really bad default to decode to alists 2017-08-09T19:51:10Z ptdel_: yeah :( 2017-08-09T19:51:22Z ptdel_: i'm still a lisp noob i think that is 75% of all my problems in actuality 2017-08-09T19:52:07Z juanrgar quit (Quit: Leaving) 2017-08-09T19:52:45Z DingoSaar_ joined #lisp 2017-08-09T19:52:59Z varjag quit (Read error: No route to host) 2017-08-09T19:54:17Z jasom: ptdel_: alists are somewhat non-intuitive since they use a single data-structure (CONS) in two very different ways (for a list and for a pair). This gets particularly confusing when the value of a KV pair is a list. 2017-08-09T19:54:33Z _death: jasom: the library a mentioned looks like an exception to your generalization.. (btw, sauna beer music & lisp = good combination) 2017-08-09T19:54:41Z random-nick joined #lisp 2017-08-09T19:55:42Z jasom: _death: yes gigamonkeys does appear to be invertible. I forgot about that. false translates to a value that is true in lisp though :( 2017-08-09T19:56:27Z DingoSaar quit (Ping timeout: 240 seconds) 2017-08-09T19:56:28Z ptdel_: oh thats pretty cool. I've been reading through practical common lisp 2017-08-09T19:56:30Z anticrisis joined #lisp 2017-08-09T19:56:48Z jasom: yason was quite easy to customize which is why I picked it 2017-08-09T19:57:08Z jasom needs to finish factoring out the utilities from his last project 2017-08-09T19:57:12Z ptdel_: jasom: what are you customizing about it? I might need to do some weird formatting for making my json aws specific 2017-08-09T19:57:36Z jasom: ptdel_: I changed the mapping from JSON types to lisp types 2017-08-09T19:58:16Z nexxus: Any bodies can direct me to non-trivial examples of hunchentoot (if it possible with routes/templates/etc)? 2017-08-09T19:59:14Z anticrisis quit (Client Quit) 2017-08-09T19:59:16Z d4ryus joined #lisp 2017-08-09T19:59:58Z ptdel_: ah gotcha, let me ask you this jasom . if I had {a:{b:c}} would yason be ideal for writing a macro to create a function representing the json object i.e. (a :b :c)? 2017-08-09T20:00:27Z nexxus: I means any web-project which based on hunchentoot of course 2017-08-09T20:00:29Z anticrisis joined #lisp 2017-08-09T20:00:34Z ptdel_: via that customization of the encoding 2017-08-09T20:00:35Z jasom: oh, I was wrong, I used cl-json on my last one, but customized it to work the way I had previously been using yason. I don't recall why I switched. 2017-08-09T20:01:01Z jasom: ptdel_: I'm not sure what exactly you are trying to do? 2017-08-09T20:02:25Z ptdel_: i've got a bunch of json representing API calls in that format, i want to be able to represent each call as a lisp function 2017-08-09T20:02:48Z ptdel_: so just thinking of good ways to take an object, and make keywords out of its keys 2017-08-09T20:03:16Z jasom: ptdel_: oh, any json parser would be fine for that; first you'll parse it, then you will write a function to turn that into a lisp function. 2017-08-09T20:03:43Z ptdel_: would it be best to leave it as an object then without trying to convert to hashtable or array or anything 2017-08-09T20:04:11Z _cosmonaut_ joined #lisp 2017-08-09T20:04:29Z jasom: ptdel_: it needs to be converted to *something* since it starts as a string (i.e. cl-json &c. turns the string "{a:{b:c}}" into *something*) 2017-08-09T20:05:21Z ptdel_: yeah I just had it as an alist stupidly. I was thinking of something like a jsown object and then from there 2017-08-09T20:06:02Z jasom: right jsown is fine; json-streams I think is the one that basically just spits out a parse-tree, which might be even better, but I've never used that one 2017-08-09T20:06:50Z ptdel_: hunh, i actually haven't worked with parse-trees yet, but the name implies usefullness rofl 2017-08-09T20:07:20Z Baggers joined #lisp 2017-08-09T20:07:33Z jasom: ptdel_: it's a tree in the sense of http://www.lispworks.com/documentation/HyperSpec/Body/14_aa.htm 2017-08-09T20:08:04Z ptdel_: ah gotcha, i think that is ideal for me all of the json i have to work with will be nested and i'll need to refer to anything under the top-tier node as keywords 2017-08-09T20:08:21Z jasom: http://paste.lisp.org/display/352971 <-- sample output 2017-08-09T20:08:54Z jasom: for ["items", { "index" : 1, ... 2017-08-09T20:09:07Z ptdel_: ah ok i like that 2017-08-09T20:09:12Z dyelar quit (Quit: Leaving.) 2017-08-09T20:10:16Z Lowl3v3l quit (Remote host closed the connection) 2017-08-09T20:10:59Z neoncontrails quit (Remote host closed the connection) 2017-08-09T20:11:35Z neoncontrails joined #lisp 2017-08-09T20:15:25Z phoe: What's the simplest way of checking bitfields in CL? 2017-08-09T20:15:38Z jasom: phoe: ldb 2017-08-09T20:15:41Z jasom: clhs ldb 2017-08-09T20:15:41Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_ldb.htm 2017-08-09T20:15:51Z Bike: 'checking'? 2017-08-09T20:16:09Z neoncontrails quit (Ping timeout: 258 seconds) 2017-08-09T20:16:55Z phoe: accessing individual bits. 2017-08-09T20:17:08Z phoe: jasom: thanks, I'll use it. 2017-08-09T20:17:27Z Bike: there's logbitp if you need to test 2017-08-09T20:18:35Z phoe: clhs logbitp 2017-08-09T20:18:35Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_logbtp.htm 2017-08-09T20:18:44Z jasom: logbitp is better for a single bit, ldb if you need N bits from an integer 2017-08-09T20:18:54Z phoe: jasom: logbitp that is. Thanks! 2017-08-09T20:19:09Z axion: phoe: When I write binary parsers, I sometimes use the CL library 'data-smasher' to handle non byte-aligned stuff instead of using LDB/DPB directly. 2017-08-09T20:19:13Z jasom: I usually use ldb anyways though because it's SETF able and then I only remember a single thing 2017-08-09T20:19:43Z axion: I'm sorry, 'bit-smasher' 2017-08-09T20:20:01Z axion: https://github.com/thephoeron/bit-smasher 2017-08-09T20:20:16Z axion: Your alias is a subset of his too :) 2017-08-09T20:25:21Z JohnTalent quit (Quit: leaving) 2017-08-09T20:27:12Z anticrisis quit (Changing host) 2017-08-09T20:27:12Z anticrisis joined #lisp 2017-08-09T20:27:44Z phoe: gasp 2017-08-09T20:30:16Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-09T20:35:47Z anticrisis: hi folks, anyone here do much performance benchmarking? 2017-08-09T20:36:00Z jasom: anticrisis: some, why? 2017-08-09T20:36:11Z diegs_ joined #lisp 2017-08-09T20:36:25Z anticrisis: i was trying to understand the performance characteristics of using typecase versus generic methods or clos... 2017-08-09T20:36:51Z anticrisis: i used trivial-benchmark library... 2017-08-09T20:36:54Z phoe: anticrisis: you most likely mean the same thing by generic methods and clos 2017-08-09T20:37:27Z anticrisis: ah -- well i mean just a plain generic method versus a clos class and slot-value access 2017-08-09T20:37:37Z anticrisis: perhaps not a big difference 2017-08-09T20:37:58Z phoe: oh, I see 2017-08-09T20:38:10Z ssake joined #lisp 2017-08-09T20:38:12Z anticrisis: anyway it seems the unwind-protect in trivial-benchmark is dominating the measurements 2017-08-09T20:38:15Z phoe: so just GF dispatch vs GF dispatch + slot-value access 2017-08-09T20:38:27Z jasom: anticrisis: then put your body in a loop and call it many times 2017-08-09T20:38:32Z anticrisis: yes, and versus just using etypecase 2017-08-09T20:38:51Z anticrisis: right 2017-08-09T20:38:54Z Shinmera: trivial-benchmark has some overhead, you need to run it with a high enough count for the measurements to be valuable. 2017-08-09T20:39:00Z axion: GF implicitly means some runtime checks 2017-08-09T20:39:17Z jasom: axion: etypecase also has runtime checks, but is still much faster on sbcl 2017-08-09T20:40:11Z jasom: axion: since sbcl doesn't open-code GF dispatch (and in fact cannot open-code it without either violating the spec or recompiling each method invocation every time a new method is added) 2017-08-09T20:40:28Z grouzen quit (Ping timeout: 260 seconds) 2017-08-09T20:40:38Z anticrisis: well that's what's funny, with 10 million iterations using TIME, it just didn't seem to make much of a difference 2017-08-09T20:40:53Z anticrisis: that's why i was wondering if there were better best practices for measuring this kind of thing 2017-08-09T20:41:15Z axion: use one or both of SBCL's profilers? 2017-08-09T20:41:33Z jasom: anticrisis: is this on SBCL? 2017-08-09T20:41:36Z Shinmera: SBCL has an integrated profilers, both explicit and statistical. 2017-08-09T20:41:36Z anticrisis: yes 2017-08-09T20:41:41Z MrWoohoo joined #lisp 2017-08-09T20:41:43Z Shinmera: *-an 2017-08-09T20:42:31Z axion: anticrisis: SBCL has deterministic and statitistical profiling functions. Check out the manual...very useful, especially the SLIME contrib for it 2017-08-09T20:43:11Z anticrisis: ah cool, i didn't think to check sbcl -- will go look, thank you! 2017-08-09T20:43:43Z Achylles joined #lisp 2017-08-09T20:43:47Z jasom: anticrisis: did you compile with speed optimizations set high? 2017-08-09T20:44:00Z jasom: anticrisis: there's a lot of overhead to all function calls with e.g. (debug 3) (speed 0) 2017-08-09T20:44:01Z anticrisis: no, actually 2017-08-09T20:44:07Z anticrisis: aha 2017-08-09T20:44:15Z Shinmera: anticrisis: trivial-benchmark isn't feasible for micro benchmarking. If you want to do that kind of stuff you'll probably want to do your own measurement using something like (sb-ext:get-time-of-day) 2017-08-09T20:44:53Z anticrisis: ok very helpful 2017-08-09T20:45:01Z anticrisis: thank you! 2017-08-09T20:45:28Z fkac quit (Remote host closed the connection) 2017-08-09T20:45:30Z jasom: https://github.com/luismbo/perfpiece is useful for microbenchmarks 2017-08-09T20:45:34Z anticrisis: i keep hearing GF and CLOS are intolerably slow so I'm trying to figure out how and why 2017-08-09T20:45:54Z Shinmera: intolerable depends on your needs, really. 2017-08-09T20:46:06Z jasom: anticrisis: for "intolerably slow" read "faster than python" 2017-08-09T20:46:13Z anticrisis: jasom: nice thanks 2017-08-09T20:46:20Z anticrisis: haha ok 2017-08-09T20:46:24Z axion: It's a tradeoff. A lot of the times, the readability outweighs the cost of runtime dispatch 2017-08-09T20:46:35Z Shinmera: I run a game engine and use CLOS all over. Works fine so far. 2017-08-09T20:46:43Z axion: In a tight game loop I use Minimal GF's, but still use them. They are a nice language feature 2017-08-09T20:46:51Z anticrisis: and extensibility -- i was down the road of lots of functions with typecases, and decided that wouldn't scale 2017-08-09T20:46:58Z _cosmonaut_ quit (Remote host closed the connection) 2017-08-09T20:47:12Z jasom: anticrisis: I always write GF first and then hard-code a typecase if the profiler tells me to 2017-08-09T20:47:49Z anticrisis: good advice - that's why i was looking for good profiling tools 2017-08-09T20:48:07Z axion: You can't go wrong with SBCL then 2017-08-09T20:48:15Z strelox quit (Remote host closed the connection) 2017-08-09T20:49:01Z Achylles quit (Ping timeout: 255 seconds) 2017-08-09T20:49:07Z jasom: oh, a feature that took me a while to discover is that after running the statistical profiler, calling #'disassemble on a function gives you instruction-level profiling data 2017-08-09T20:49:34Z anticrisis: wow nice 2017-08-09T20:50:02Z aeth: I don't use CLOS much in my game engine (and not at all atm in my game loop) not for performance but because stylistically it doesn't fit. 2017-08-09T20:50:54Z jasom had code unexpectedly drop in performance by 20% and used that let me discover that previously branchless output got a conditional branch; the ILP let me see this nearly instantly 2017-08-09T20:52:09Z knicklux joined #lisp 2017-08-09T20:54:28Z aeth: The main weakness I've seen with CLOS is with very well defined things, in part because :type does nothing in most CLs (CCL seems to at least respect it a bit, but SBCL just completely ignores it). 2017-08-09T20:54:57Z Xof quit (Ping timeout: 240 seconds) 2017-08-09T20:55:40Z broccolistem joined #lisp 2017-08-09T20:57:09Z yrk joined #lisp 2017-08-09T20:58:12Z jasom: aeth: which :type ? 2017-08-09T20:58:16Z aeth: So, basically, CLOS is going to be slower than a ton of alternatives in CL for something like a mathematical vector of length 3 consisting of single-floats. That's probably what poeple mean by slow. A point class is probably going to be pretty bad in CL in performance. 2017-08-09T20:59:35Z aeth: jasom: My personal rule of thumb is if you're using :type for slots and not really using methods, it's better as a struct, at least as implementations seem to treat the two. 2017-08-09T21:00:05Z aeth: (Although a point class can just be a specialized array or even just multiple return values) 2017-08-09T21:00:14Z jasom: you I thought you could use methods on structs just fine; doesn't each struct implicitly create a class? 2017-08-09T21:00:34Z aeth: afaik, no, structs are a different kind of object 2017-08-09T21:00:42Z Shinmera: vectors are instances of structure-class 2017-08-09T21:00:45Z Shinmera: err, structs are 2017-08-09T21:00:57Z Bike: defstruct makes a class unless you use the struct-level :type option. 2017-08-09T21:01:00Z vlatkoB_ quit (Remote host closed the connection) 2017-08-09T21:01:05Z phoe: anticrisis: I'll respond to your /r/lisp list of questions tomorrow 2017-08-09T21:01:06Z nexxus quit (Ping timeout: 240 seconds) 2017-08-09T21:01:17Z Bike: but it's a structure-class and a lot less flexible, so there can be more static optimizations than CLOS has. 2017-08-09T21:01:19Z phoe: I have answers for about 60-70% of them 2017-08-09T21:01:27Z Bike: than CLOS allows* 2017-08-09T21:01:30Z phoe: https://www.reddit.com/r/lisp/comments/6snw5d/questions_for_2017_common_lisp_experts/ that is 2017-08-09T21:02:05Z aeth: Structs are basically static objects vs. CLOS's dynamic objects. It's a shame that they're not as well developed as CLOS and it's trickier than it could be to mix and match them. 2017-08-09T21:02:08Z jasom: aeth: by default defstruct creates a new class, so you should be able to do GF dispatch based on the structure type 2017-08-09T21:02:08Z Achylles joined #lisp 2017-08-09T21:02:27Z jasom: "defstruct without a :type option defines a class with the structure name as its name. The metaclass of structure instances is structure-class. " 2017-08-09T21:02:59Z ptdel_ left #lisp 2017-08-09T21:03:19Z aeth: hmm... (defstruct foo) (class-of (make-foo)) 2017-08-09T21:03:39Z jasom: (defstruct foo) (class-name (class-of (make-foo))) => FOO 2017-08-09T21:03:56Z anticrisis: phoe: thank you! 2017-08-09T21:04:04Z aeth: (defclass bar () ()) (class-of (make-instance 'bar)) 2017-08-09T21:04:33Z aeth: Does defmethod work on structure-classes? 2017-08-09T21:06:26Z Kyo91 quit (Ping timeout: 255 seconds) 2017-08-09T21:06:31Z diegs_ quit (Ping timeout: 255 seconds) 2017-08-09T21:08:34Z Shinmera: generic functions dispatch on classes. 2017-08-09T21:08:54Z Shinmera: any kind of class. 2017-08-09T21:08:58Z aeth: interesting 2017-08-09T21:09:21Z phoe: even built-in classes 2017-08-09T21:09:24Z phoe: which is useful 2017-08-09T21:11:06Z phoe: okay 2017-08-09T21:11:10Z phoe: good night, parens 2017-08-09T21:11:14Z aeth: too bad there's no built-in way to dispatch on specialized arrays. 2017-08-09T21:11:25Z aeth: (they're just types) 2017-08-09T21:11:30Z axion: Or any type for that matter 2017-08-09T21:11:37Z rumbler31 quit (Ping timeout: 260 seconds) 2017-08-09T21:11:39Z Shinmera: or maybe that's a good thing. 2017-08-09T21:11:50Z aeth: The other kind of type that would really matter would be numbers, probably. 2017-08-09T21:12:08Z axion: You can eql dispatch on number literals 2017-08-09T21:14:02Z Shinmera: you can eql dispatch on anything you want. it'll just only dispatch as you want if the argument is eql :^) 2017-08-09T21:14:04Z broccolistem quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-09T21:14:48Z axion: right so no strings, which would be useful 2017-08-09T21:14:52Z eazar001 joined #lisp 2017-08-09T21:14:58Z Shinmera: well you can do strings, if the two strings are eql. 2017-08-09T21:15:23Z phoe: so if they're one and the same string object, essentially 2017-08-09T21:15:24Z axion: Heh 2017-08-09T21:15:27Z axion: Yeah 2017-08-09T21:15:30Z phoe: (defmethod foo ((bar (eql LEAST-NEGATIVE-NORMALIZED-LONG-FLOAT))) 3) 2017-08-09T21:15:30Z axion: Not very useful 2017-08-09T21:15:33Z phoe: aaah 2017-08-09T21:15:35Z phoe: feels good 2017-08-09T21:17:21Z jasom: anyone remember which ELS vslevod gave his rutils presentation at? I think it was a lightning talk 2017-08-09T21:17:47Z fkac joined #lisp 2017-08-09T21:18:26Z jasom: ah found it Lightning Talks II from ELS 2016 2017-08-09T21:19:01Z Bike quit (Ping timeout: 258 seconds) 2017-08-09T21:20:01Z qwerty_ quit (Ping timeout: 248 seconds) 2017-08-09T21:27:46Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-09T21:32:42Z milanj quit (Quit: Leaving) 2017-08-09T21:33:55Z anticrisis joined #lisp 2017-08-09T21:35:58Z Patzy joined #lisp 2017-08-09T21:35:58Z Patzy quit (Client Quit) 2017-08-09T21:36:05Z Patzy joined #lisp 2017-08-09T21:38:51Z Jesin quit (Quit: Leaving) 2017-08-09T21:41:11Z Jesin joined #lisp 2017-08-09T21:41:31Z Kyo91 joined #lisp 2017-08-09T21:42:38Z Baggers quit (Remote host closed the connection) 2017-08-09T21:43:47Z Karl_Dscc quit (Remote host closed the connection) 2017-08-09T21:46:25Z Kyo91 quit (Ping timeout: 276 seconds) 2017-08-09T21:47:31Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-08-09T21:54:15Z TCZ joined #lisp 2017-08-09T22:01:08Z knicklux quit (Quit: Leaving) 2017-08-09T22:02:40Z yrk quit (Remote host closed the connection) 2017-08-09T22:03:38Z anticrisis quit (Read error: Connection reset by peer) 2017-08-09T22:06:55Z rumbler31 joined #lisp 2017-08-09T22:09:05Z jibanes quit (Ping timeout: 248 seconds) 2017-08-09T22:10:05Z jibanes joined #lisp 2017-08-09T22:11:13Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-09T22:13:44Z Bike joined #lisp 2017-08-09T22:13:54Z Achylles quit (Remote host closed the connection) 2017-08-09T22:14:33Z hel-io joined #lisp 2017-08-09T22:19:23Z ptdel quit (Remote host closed the connection) 2017-08-09T22:21:56Z hel-io quit 2017-08-09T22:25:33Z Kyo91 joined #lisp 2017-08-09T22:26:21Z Kyo91 quit (Read error: Connection reset by peer) 2017-08-09T22:30:45Z anticrisis joined #lisp 2017-08-09T22:32:06Z anticrisis: just following up to prior discussion on microbenchmarking typecase vs generic functions and clos, thanks for the pointer to sb-profile. here's a paste of what i was trying to do, and results are now more as expected. http://paste.lisp.org/+7KD0 2017-08-09T22:34:02Z Bike: the etypecase is pretty much going to macroexpand into that cond 2017-08-09T22:34:22Z v0|d joined #lisp 2017-08-09T22:35:02Z anticrisis: that's why i tested them both, typecase shouldn't be faster, though maybe it's not a significant difference 2017-08-09T22:36:04Z anticrisis: i'm first trying to gain confidence in the profiling approach itself 2017-08-09T22:36:29Z anticrisis: for instance, why would the generic case have all that consing, but the clos case wouldn't? 2017-08-09T22:37:03Z stee_3_ quit (Remote host closed the connection) 2017-08-09T22:40:33Z rumbler31 joined #lisp 2017-08-09T22:42:42Z basket: I have an alist, and I have a set of keys that will be a superset of the keys in the alist, and I want to make a new alist from the one I have with any of those missing keys bound to NIL. Is there a neat way to do that? 2017-08-09T22:43:09Z basket: Something with the same effect as like (nconc (mapcar #'list (set-difference all-keys (loop for (key) in alist collecting key))) alist) 2017-08-09T22:43:33Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-09T22:47:12Z random-nick quit (Remote host closed the connection) 2017-08-09T22:47:41Z TCZ quit (Quit: Leaving) 2017-08-09T22:49:46Z yrk joined #lisp 2017-08-09T22:53:10Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-09T23:03:52Z v0|d quit (Remote host closed the connection) 2017-08-09T23:07:13Z megalography joined #lisp 2017-08-09T23:08:45Z stee_3 joined #lisp 2017-08-09T23:12:00Z cromachina joined #lisp 2017-08-09T23:14:06Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-09T23:16:11Z neoncontrails joined #lisp 2017-08-09T23:29:13Z malice` joined #lisp 2017-08-09T23:33:55Z ebzzry joined #lisp 2017-08-09T23:41:40Z Kaisyu joined #lisp 2017-08-09T23:47:25Z nullniverse joined #lisp 2017-08-09T23:51:48Z scymtym quit (Ping timeout: 240 seconds) 2017-08-09T23:51:56Z emacsomancer quit (Remote host closed the connection) 2017-08-09T23:52:14Z marvin3 quit 2017-08-09T23:52:24Z kjak_: basket: maybe something like (loop for key in all-keys collecting (or (assoc key alist) (list key))) 2017-08-09T23:53:21Z emacsomancer joined #lisp 2017-08-09T23:55:28Z Bike: probably can't do it in linear time, anyway 2017-08-09T23:55:37Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-09T23:57:11Z emacsomancer quit (Remote host closed the connection) 2017-08-09T23:57:11Z yrk quit (Read error: Connection reset by peer) 2017-08-09T23:57:43Z brendos joined #lisp 2017-08-10T00:10:03Z glamas joined #lisp 2017-08-10T00:11:49Z glamas quit (Remote host closed the connection) 2017-08-10T00:13:05Z emacsomancer joined #lisp 2017-08-10T00:13:22Z slyrus quit (Ping timeout: 246 seconds) 2017-08-10T00:14:29Z malice` quit (Remote host closed the connection) 2017-08-10T00:20:42Z smazga quit (Quit: leaving) 2017-08-10T00:25:23Z slyrus joined #lisp 2017-08-10T00:25:31Z doesthiswork joined #lisp 2017-08-10T00:37:49Z rngoodn joined #lisp 2017-08-10T00:40:38Z EvW quit (Ping timeout: 255 seconds) 2017-08-10T00:46:05Z yrk joined #lisp 2017-08-10T00:50:25Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-10T00:50:39Z phinxy joined #lisp 2017-08-10T00:50:50Z vtomole joined #lisp 2017-08-10T00:51:14Z warweasle joined #lisp 2017-08-10T00:55:10Z pjb quit (Ping timeout: 255 seconds) 2017-08-10T01:04:22Z vtomole quit (Quit: Page closed) 2017-08-10T01:06:32Z neoncontrails quit (Remote host closed the connection) 2017-08-10T01:07:07Z neoncontrails joined #lisp 2017-08-10T01:11:41Z neoncontrails quit (Ping timeout: 255 seconds) 2017-08-10T01:15:04Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-08-10T01:17:14Z glamas joined #lisp 2017-08-10T01:23:53Z pjb joined #lisp 2017-08-10T01:34:18Z LooneyTunes joined #lisp 2017-08-10T01:34:22Z papachan quit (Quit: Saliendo) 2017-08-10T01:35:05Z nullniverse quit (Quit: Leaving) 2017-08-10T01:38:49Z pjb quit (Ping timeout: 255 seconds) 2017-08-10T01:39:02Z whoman quit (Quit: Leaving) 2017-08-10T01:50:11Z jameser joined #lisp 2017-08-10T01:51:22Z emacsoma` joined #lisp 2017-08-10T01:53:09Z jameser_ joined #lisp 2017-08-10T01:54:33Z daemoz quit (Remote host closed the connection) 2017-08-10T01:54:52Z daemoz joined #lisp 2017-08-10T01:55:22Z jameser quit (Ping timeout: 276 seconds) 2017-08-10T02:06:02Z dha joined #lisp 2017-08-10T02:06:29Z dha quit (Client Quit) 2017-08-10T02:17:48Z neoncontrails joined #lisp 2017-08-10T02:18:30Z jameser_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-10T02:18:38Z edgar-rft joined #lisp 2017-08-10T02:19:50Z jameser joined #lisp 2017-08-10T02:40:25Z al-damiri joined #lisp 2017-08-10T02:47:00Z shiranuidong joined #lisp 2017-08-10T02:47:02Z shiranuidong quit (Max SendQ exceeded) 2017-08-10T02:47:45Z shiranuidong joined #lisp 2017-08-10T02:48:25Z shiranuidong quit (Max SendQ exceeded) 2017-08-10T02:49:56Z shiranuidong joined #lisp 2017-08-10T02:50:23Z shiranuidong quit (Max SendQ exceeded) 2017-08-10T02:51:05Z shiranuidong joined #lisp 2017-08-10T02:53:30Z goosnargh joined #lisp 2017-08-10T03:00:22Z damke joined #lisp 2017-08-10T03:06:49Z fl00fykittry joined #lisp 2017-08-10T03:09:17Z neoncontrails quit (Remote host closed the connection) 2017-08-10T03:09:50Z LooneyTunes quit (Ping timeout: 240 seconds) 2017-08-10T03:09:56Z neoncontrails joined #lisp 2017-08-10T03:13:39Z damke_ joined #lisp 2017-08-10T03:14:22Z neoncontrails quit (Ping timeout: 258 seconds) 2017-08-10T03:15:28Z jasom: you can do it in linear time if you put the keys in a hash-set 2017-08-10T03:16:15Z Bike: well yeah. 2017-08-10T03:16:21Z damke quit (Ping timeout: 240 seconds) 2017-08-10T03:16:35Z phinxy quit (Ping timeout: 240 seconds) 2017-08-10T03:17:36Z jasom: kjak_'s method looks correct, but N^2 time 2017-08-10T03:27:43Z joast joined #lisp 2017-08-10T03:27:47Z test1600 joined #lisp 2017-08-10T03:31:44Z glamas quit (Remote host closed the connection) 2017-08-10T03:32:37Z dddddd quit (Remote host closed the connection) 2017-08-10T03:32:46Z warweasle1 joined #lisp 2017-08-10T03:35:39Z glamas joined #lisp 2017-08-10T03:36:16Z warweasle quit (Ping timeout: 260 seconds) 2017-08-10T03:44:48Z beach: Good morning everyone! 2017-08-10T03:44:57Z basket: Good morning, beach 2017-08-10T03:45:54Z engblom quit (Read error: Connection reset by peer) 2017-08-10T03:46:26Z engblom joined #lisp 2017-08-10T03:46:57Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-10T03:49:59Z quazimodo quit (Read error: Connection reset by peer) 2017-08-10T03:50:22Z meow joined #lisp 2017-08-10T03:50:39Z grouzen joined #lisp 2017-08-10T03:51:30Z jameser joined #lisp 2017-08-10T03:59:08Z grouzen quit (Ping timeout: 260 seconds) 2017-08-10T04:03:14Z damke joined #lisp 2017-08-10T04:05:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T04:08:24Z warweasle1 quit (Quit: Leaving) 2017-08-10T04:08:49Z damke_ joined #lisp 2017-08-10T04:09:21Z damke quit (Ping timeout: 240 seconds) 2017-08-10T04:13:10Z emacsoma` quit (Ping timeout: 276 seconds) 2017-08-10T04:14:31Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-10T04:16:24Z jameser joined #lisp 2017-08-10T04:16:54Z glamas quit (Remote host closed the connection) 2017-08-10T04:17:00Z wooden quit (Read error: Connection reset by peer) 2017-08-10T04:18:13Z rumbler31 quit (Remote host closed the connection) 2017-08-10T04:19:00Z wooden joined #lisp 2017-08-10T04:19:03Z shka_ joined #lisp 2017-08-10T04:20:20Z elfmacs joined #lisp 2017-08-10T04:21:10Z meow quit (Ping timeout: 240 seconds) 2017-08-10T04:22:01Z glamas joined #lisp 2017-08-10T04:22:44Z elfmacs quit (Quit: WeeChat 1.9) 2017-08-10T04:23:20Z glamas quit (Remote host closed the connection) 2017-08-10T04:24:23Z elfmacs joined #lisp 2017-08-10T04:27:57Z PinealGlandOptic quit (Quit: leaving) 2017-08-10T04:34:03Z meow joined #lisp 2017-08-10T04:36:54Z grouzen joined #lisp 2017-08-10T04:38:20Z meow quit (Ping timeout: 260 seconds) 2017-08-10T04:39:29Z damke joined #lisp 2017-08-10T04:40:13Z damke_ quit (Read error: Connection reset by peer) 2017-08-10T04:41:44Z qwerty_ joined #lisp 2017-08-10T04:45:05Z Bike quit (Ping timeout: 240 seconds) 2017-08-10T04:52:20Z quazimodo joined #lisp 2017-08-10T04:54:39Z mishoo__ joined #lisp 2017-08-10T05:00:57Z flazh quit (Ping timeout: 240 seconds) 2017-08-10T05:01:08Z anticrisis quit (Read error: Connection reset by peer) 2017-08-10T05:01:29Z damke_ joined #lisp 2017-08-10T05:01:49Z axion: What's a good name for a quantity of 16 bits? I wanted to use 'word' but we're not in the 70's anymore, and for most general purpose processors, word size is 4x that these days. Is there any vocabulary that works here? 2017-08-10T05:03:21Z damke quit (Ping timeout: 240 seconds) 2017-08-10T05:05:13Z damke joined #lisp 2017-08-10T05:07:21Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T05:07:27Z beach: Not really, and "byte" doesn't work for 8 bits either in the context of Common Lisp. 2017-08-10T05:07:48Z beach: You may be able to generalize from "octet". 2017-08-10T05:08:00Z basket: axion: Not that I know of really. Some people call them shorts because that's their minimum (and typical) size in C, but even in C a short isn't necessarily 16 bits. Intel's manuals call them words but that would be confusing in just about any other context. I would probably just say 16-bit integer. 2017-08-10T05:08:06Z axion: Yes, I use octet already for 1, and it looks like Hextet is what I'm after 2017-08-10T05:08:11Z beach: "hextet"? 2017-08-10T05:08:16Z axion: https://en.wikipedia.org/wiki/Hextet 2017-08-10T05:09:38Z DeadTrickster joined #lisp 2017-08-10T05:10:34Z muzik joined #lisp 2017-08-10T05:16:19Z fiddlerwoaroof: basket: another thing you might be able to do is add the nils when one of the missing keys is referenced 2017-08-10T05:18:47Z rumbler31 joined #lisp 2017-08-10T05:19:04Z Bock joined #lisp 2017-08-10T05:19:15Z jameser quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-10T05:23:05Z test1600 quit (Quit: Leaving) 2017-08-10T05:23:39Z emacsoma` joined #lisp 2017-08-10T05:23:57Z glamas joined #lisp 2017-08-10T05:24:40Z damke_ joined #lisp 2017-08-10T05:24:40Z rumbler31 quit (Ping timeout: 276 seconds) 2017-08-10T05:26:01Z damke quit (Ping timeout: 240 seconds) 2017-08-10T05:26:50Z PuercoPop: axion: card16 :v 2017-08-10T05:27:50Z Saixia2 joined #lisp 2017-08-10T05:28:00Z jameser joined #lisp 2017-08-10T05:29:12Z glamas quit (Ping timeout: 260 seconds) 2017-08-10T05:29:49Z damke joined #lisp 2017-08-10T05:31:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T05:33:13Z Saixia2 quit (Ping timeout: 255 seconds) 2017-08-10T05:35:19Z glamas joined #lisp 2017-08-10T05:35:37Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-10T05:36:03Z oleo quit (Quit: irc client terminated!) 2017-08-10T05:36:37Z White_Flame: reading that wiki page, I have taken a liking to ''quibble" 2017-08-10T05:41:22Z damke_ joined #lisp 2017-08-10T05:42:12Z phoe: axion: 16 bits, big endian or little endian? 2017-08-10T05:42:24Z phoe: signed or unsigned? 2017-08-10T05:42:31Z axion: ub16be 2017-08-10T05:42:37Z phoe: there you have your name 2017-08-10T05:42:41Z axion: hehe 2017-08-10T05:42:42Z phoe: I was about to type it 2017-08-10T05:43:36Z axion: I really dislike abbreviating things in lisp. With such an expressive language, why cut it short? I am a huge fan of self-documenting code 2017-08-10T05:43:41Z damke quit (Ping timeout: 240 seconds) 2017-08-10T05:44:34Z phoe: u16-be is already self documenting 2017-08-10T05:46:17Z beach: phoe: The distinction between big endian and little endian is important only when the number is encoded into a sequence of 8-bit bytes. Not in memory. 2017-08-10T05:46:20Z White_Flame: awful similar to utf16-be, though 2017-08-10T05:48:50Z beach: Not in Common Lisp memory, I mean. 2017-08-10T05:53:22Z damke joined #lisp 2017-08-10T05:53:49Z aeth: I think the only time it's acceptable to abbreviate something is if it's straight from the mathematics. 2017-08-10T05:54:44Z phoe: beach: oh. Hm. 2017-08-10T05:54:45Z aeth: Or if it's in very short code, like a lambda one-liner. 2017-08-10T05:55:01Z phoe: axion: in this case, (unsigned-byte 16) 2017-08-10T05:55:17Z phoe: and have separate ways of writing and reading big-endian and little-endian values 2017-08-10T05:55:21Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T05:55:24Z axion: I'm actually trying to deftype that because it's typed all over, hence the original conversation, but I solved it 2017-08-10T05:57:13Z phoe: well, (unsigned-byte 16) is as standard-Lispy as you can get methinks 2017-08-10T05:57:21Z phoe: how did you solve it? 2017-08-10T05:57:49Z shka_: phoe: gaze upon this 2017-08-10T05:58:02Z shka_: (defconstant +bit-count+ 16) 2017-08-10T05:58:14Z phoe: shka_: gasp 2017-08-10T05:58:29Z phoe: ...are all of your bytes 16 bits long? 2017-08-10T05:58:30Z shka_: (deftype two-octets `(unsigned-byte ,+bit-count+)) 2017-08-10T05:58:45Z shka_: so as you can see 2017-08-10T05:59:01Z shka_: there is distinctive advantage for deftype 2017-08-10T05:59:24Z shka_: namely, if your code has no literals, you can quickly change it to 32 bits if you want to 2017-08-10T05:59:25Z damke_ joined #lisp 2017-08-10T05:59:36Z shka_: by changing single variable 2017-08-10T06:00:11Z shka_: https://github.com/sirherrbatka/cl-data-structures/blob/master/src/dicts/hamt/internal.lisp 2017-08-10T06:00:12Z basket: shka_: 16 isn't a legal parameter name 2017-08-10T06:00:26Z shka_: here is any example 2017-08-10T06:00:42Z beach: shka_: It would be very bad to have a type named two-octets be 32-bits long. 2017-08-10T06:00:53Z shka_: beach: yeah, that would be just stupid 2017-08-10T06:01:21Z shka_: but better name can be invented 2017-08-10T06:01:23Z shka_: anyway 2017-08-10T06:01:52Z shka_: phoe: in my code, i have this one constant +hash-level+ that controls how many bits i am using 2017-08-10T06:02:23Z shka_: if i want to change it, i do it in one place 2017-08-10T06:02:27Z shka_: it is kinda awesome 2017-08-10T06:02:32Z Karl_Dscc joined #lisp 2017-08-10T06:02:41Z damke quit (Ping timeout: 240 seconds) 2017-08-10T06:06:48Z beach: shka_: It would still be in only one place, namely the deftype. 2017-08-10T06:07:07Z shka_: beach: well, not quite in my case 2017-08-10T06:07:25Z beach: OK. 2017-08-10T06:10:21Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T06:15:48Z damke_ joined #lisp 2017-08-10T06:20:51Z Karl_Dscc quit (Remote host closed the connection) 2017-08-10T06:21:32Z rumbler31 joined #lisp 2017-08-10T06:25:05Z mishoo__ quit (Ping timeout: 240 seconds) 2017-08-10T06:26:02Z rumbler31 quit (Ping timeout: 258 seconds) 2017-08-10T06:26:36Z shiranuidong quit (Ping timeout: 260 seconds) 2017-08-10T06:27:23Z shiranuidong joined #lisp 2017-08-10T06:28:02Z shiranuidong quit (Max SendQ exceeded) 2017-08-10T06:28:44Z flamebeard joined #lisp 2017-08-10T06:28:51Z shiranuidong joined #lisp 2017-08-10T06:29:42Z shiranuidong quit (Max SendQ exceeded) 2017-08-10T06:31:25Z shiranuidong joined #lisp 2017-08-10T06:32:12Z grouzen quit (Ping timeout: 260 seconds) 2017-08-10T06:32:13Z Murii joined #lisp 2017-08-10T06:37:08Z damke joined #lisp 2017-08-10T06:38:13Z sukaeto: basket: if you want a linear time solution to your alist problem: (append alist (mapcar #'list all-keys)) 2017-08-10T06:38:58Z elfmacs quit (Quit: WeeChat 1.9) 2017-08-10T06:39:04Z damke_ quit (Ping timeout: 258 seconds) 2017-08-10T06:39:08Z tokik quit (Remote host closed the connection) 2017-08-10T06:40:03Z elfmacs joined #lisp 2017-08-10T06:40:08Z basket: sukaeto: haha 2017-08-10T06:40:25Z basket: I have no idea why I didn't think of that :) 2017-08-10T06:40:36Z tokik joined #lisp 2017-08-10T06:44:27Z _cosmonaut_ joined #lisp 2017-08-10T06:45:03Z mishoo joined #lisp 2017-08-10T06:46:03Z schweers joined #lisp 2017-08-10T06:46:48Z glamas quit (Remote host closed the connection) 2017-08-10T06:50:05Z damke_ joined #lisp 2017-08-10T06:52:01Z damke quit (Ping timeout: 240 seconds) 2017-08-10T06:53:14Z schweers quit (Ping timeout: 255 seconds) 2017-08-10T06:58:59Z glamas joined #lisp 2017-08-10T07:00:25Z damke joined #lisp 2017-08-10T07:02:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T07:06:40Z shka_ quit (Ping timeout: 258 seconds) 2017-08-10T07:07:10Z schweers joined #lisp 2017-08-10T07:07:29Z whoman joined #lisp 2017-08-10T07:13:47Z _paul0 is now known as paul0 2017-08-10T07:15:15Z damke_ joined #lisp 2017-08-10T07:17:21Z damke quit (Ping timeout: 240 seconds) 2017-08-10T07:17:54Z cross quit (Quit: Lost terminal) 2017-08-10T07:29:27Z doesthiswork quit (Quit: Leaving.) 2017-08-10T07:33:34Z vlatkoB joined #lisp 2017-08-10T07:36:30Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-10T07:37:03Z _cosmonaut_ joined #lisp 2017-08-10T07:43:08Z glamas_ joined #lisp 2017-08-10T07:44:05Z glamas quit (Ping timeout: 240 seconds) 2017-08-10T07:44:37Z axion: How do I put a space with the ~ format directive? 2017-08-10T07:45:54Z axion: Nevermind 2017-08-10T07:45:56Z antoszka: axion: Why not just put it verbatim? 2017-08-10T07:46:45Z antoszka: (format t "foo~abar" #\Space) ← like this? 2017-08-10T07:46:52Z ebzzry quit (Ping timeout: 260 seconds) 2017-08-10T07:48:25Z anticrisis joined #lisp 2017-08-10T07:59:31Z hotbobby joined #lisp 2017-08-10T08:01:06Z glamas joined #lisp 2017-08-10T08:01:37Z qwerty_ quit (Remote host closed the connection) 2017-08-10T08:04:08Z glamas_ quit (Ping timeout: 240 seconds) 2017-08-10T08:07:34Z knicklux joined #lisp 2017-08-10T08:10:59Z gravicappa joined #lisp 2017-08-10T08:14:39Z muzik is now known as muzik_ 2017-08-10T08:18:36Z glamas quit (Remote host closed the connection) 2017-08-10T08:18:52Z quazimodo quit (Ping timeout: 276 seconds) 2017-08-10T08:20:00Z tokik quit (Remote host closed the connection) 2017-08-10T08:21:24Z _cosmonaut_ quit (Ping timeout: 260 seconds) 2017-08-10T08:23:24Z attila_lendvai joined #lisp 2017-08-10T08:23:39Z rumbler31 joined #lisp 2017-08-10T08:24:54Z muzik_ is now known as muzik 2017-08-10T08:28:19Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-10T08:33:08Z basket quit (Ping timeout: 255 seconds) 2017-08-10T08:33:29Z dec0n quit (Read error: Connection reset by peer) 2017-08-10T08:35:02Z dec0n joined #lisp 2017-08-10T08:36:32Z glamas joined #lisp 2017-08-10T08:40:38Z _cosmonaut_ joined #lisp 2017-08-10T08:43:48Z quazimodo joined #lisp 2017-08-10T08:45:07Z raynold quit (Quit: Connection closed for inactivity) 2017-08-10T08:48:17Z quazimodo quit (Read error: Connection reset by peer) 2017-08-10T08:48:28Z azzamsa joined #lisp 2017-08-10T08:48:46Z quazimodo joined #lisp 2017-08-10T08:49:10Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-10T08:50:45Z sdemarre joined #lisp 2017-08-10T08:51:54Z muzik is now known as muzik_ 2017-08-10T08:52:47Z satran joined #lisp 2017-08-10T08:53:55Z damke joined #lisp 2017-08-10T08:54:51Z random-nick joined #lisp 2017-08-10T08:56:21Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T08:57:10Z flazh joined #lisp 2017-08-10T08:57:21Z eschatologist quit (Ping timeout: 240 seconds) 2017-08-10T08:58:03Z satran quit (Quit: satran) 2017-08-10T08:58:23Z eschatologist joined #lisp 2017-08-10T08:59:21Z muzik_ is now known as muzik 2017-08-10T09:01:32Z azzamsa quit (Ping timeout: 260 seconds) 2017-08-10T09:02:51Z glamas quit (Remote host closed the connection) 2017-08-10T09:03:44Z _cosmonaut_ joined #lisp 2017-08-10T09:04:35Z tokik joined #lisp 2017-08-10T09:16:47Z engblom quit (Read error: Connection reset by peer) 2017-08-10T09:16:59Z engblom joined #lisp 2017-08-10T09:19:57Z glamas joined #lisp 2017-08-10T09:23:37Z elfmacs quit (Quit: WeeChat 1.9) 2017-08-10T09:24:05Z random-nick quit (Ping timeout: 240 seconds) 2017-08-10T09:24:48Z rumbler31 joined #lisp 2017-08-10T09:27:56Z _paul0 joined #lisp 2017-08-10T09:29:23Z paul0 quit (Ping timeout: 255 seconds) 2017-08-10T09:29:56Z glamas quit (Remote host closed the connection) 2017-08-10T09:31:11Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-10T09:32:28Z defaultxr quit (Ping timeout: 240 seconds) 2017-08-10T09:32:28Z glamas joined #lisp 2017-08-10T09:32:46Z pjb joined #lisp 2017-08-10T09:34:05Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-10T09:39:18Z random-nick joined #lisp 2017-08-10T09:41:25Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-10T09:45:23Z antoszka quit (Quit: WeeChat 1.9) 2017-08-10T09:45:41Z antoszka joined #lisp 2017-08-10T09:46:31Z horison joined #lisp 2017-08-10T09:54:08Z antoszka quit (Quit: WeeChat 1.9) 2017-08-10T09:54:28Z antoszka joined #lisp 2017-08-10T09:55:51Z horison: Hi, I'm new to Lisp and programming in general. I'm reading Paradigms of Artificial Intelligence but I'm having problems with the 'setf' function. In the example in the book it says I should be able to type (setf x 10) to set x to 10 but I get an undefined variable error. It still assigns 10 to x but the error is a bit worrisome. Am I missing a 2017-08-10T09:55:51Z horison: step that the book isn't showing? I know I can use defvar or defparameter but the book doesn't mention those at this point. 2017-08-10T09:56:30Z Shinmera: You shouldn't be getting an error, but rather a warning. 2017-08-10T09:56:56Z Shinmera: At least on SBCL/CCL. What implementation are you using? 2017-08-10T09:57:14Z jackdaniel: I think he meant a warning 2017-08-10T09:57:17Z horison: You are right, it's a warning, my mistake. I'm using SBCL 1.3.20 2017-08-10T09:57:36Z jackdaniel: horison: if variable is not defined, you have a warning, so you can catch typos 2017-08-10T09:57:39Z Shinmera: As for why that happens, it's because the standard doesn't specify what happens if you setf undeclared variables at the top level. 2017-08-10T09:57:48Z jackdaniel: (setf ontology 3) vs (setf otnology 3) 2017-08-10T09:58:09Z jackdaniel: try (let (xxx) (setf xxx 4) (print xxx)) 2017-08-10T09:58:25Z jackdaniel: you shouldn't have an error, if you want some global variable, define it with defparameter 2017-08-10T09:58:38Z jackdaniel: (defparameter *xxx* "foo") (setf *xxx* 3) 2017-08-10T09:58:54Z jackdaniel: note that it is a matter of agreed style, to name globals with earmuffs 2017-08-10T09:59:00Z jackdaniel: so they stand out in the code 2017-08-10T09:59:59Z knicklux quit (Remote host closed the connection) 2017-08-10T10:01:20Z horison: Thank you! This makes sense, I appreciate the help. 2017-08-10T10:01:33Z Shinmera: horison: PAIP is not necessarily the best book to use to get introduced to CL. It was written before the standard was completed, so a select few things it says are outdated. 2017-08-10T10:03:10Z Shinmera: It's a great book otherwise, though. 2017-08-10T10:03:18Z glamas quit (Remote host closed the connection) 2017-08-10T10:04:13Z horison: I was going to work through 'Practical Common Lisp' that I found online also at the same time. Is that a good start or are there other better options? 2017-08-10T10:04:30Z Shinmera: PCL is generally the recommended place to start for people that already know to program. 2017-08-10T10:05:24Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-10T10:05:40Z Shinmera: You can move on to PAIP afterwards, as it's an interesting book otherwise 2017-08-10T10:06:33Z horison: I only have experience with C from working through K&R so I'm a beginner. Someone recommended SICP but I went with PAIP just because AI and Lisp seemed interesting. 2017-08-10T10:07:26Z shka: horison: PCL is a good book, you may also like land of lisp 2017-08-10T10:07:39Z Shinmera: There's also GENTLE which is more absolute-beginner-friendly https://www.cs.cmu.edu/~dst/LispBook/book.pdf 2017-08-10T10:08:57Z Murii quit (Ping timeout: 240 seconds) 2017-08-10T10:09:20Z horison: Thanks! I will check both of those out. 2017-08-10T10:10:41Z random-nick quit (Ping timeout: 248 seconds) 2017-08-10T10:10:48Z random-nickname joined #lisp 2017-08-10T10:10:56Z Shinmera: As for getting set up, you might want to give Portacle a try. https://shinmera.github.io/portacle/ 2017-08-10T10:14:43Z horison: Thanks, I saw that last night but ended up manually installing everything 2017-08-10T10:17:13Z axion: What would be an efficient way to concatenate a list of octet vectors into a single larger octet vector? 2017-08-10T10:18:50Z loke: axion: Allocate a new octet vector which is the sum of the sizes, and then copy the content of them one-by-one? 2017-08-10T10:19:08Z Shinmera: Would be nice if map-into had an offset. 2017-08-10T10:19:31Z axion: Wouldn't "one-by-one" be slow? This is for an binary parser where efficiency is important, as these are large and plentiful vectors 2017-08-10T10:19:45Z loke: Shinmera: You can achieve that by using dispacles vector. 2017-08-10T10:19:49Z loke: displaced 2017-08-10T10:19:54Z Shinmera: loke: those are slow as balls though 2017-08-10T10:20:06Z loke: Shinmera: on some implementations. 2017-08-10T10:20:08Z Shinmera: which diminishes the point of using map-into 2017-08-10T10:20:51Z Murii joined #lisp 2017-08-10T10:22:51Z _death: axion: I think one-by-one means one vector at a time.. you can use REPLACE for that 2017-08-10T10:23:14Z axion: I see. I've not looked at this function before. Thanks for the tip. 2017-08-10T10:23:17Z Shinmera: Bah, I forgot about REPLACE 2017-08-10T10:23:27Z axion: Amazing how much of the standard is to be explored after a decade of CL use 2017-08-10T10:24:40Z loke: Yes. I meant one vector at a time :-) 2017-08-10T10:25:19Z Shinmera: Alternatively if you use static-vectors you can call memcpy 2017-08-10T10:27:28Z rumbler31 joined #lisp 2017-08-10T10:30:34Z goosnargh joined #lisp 2017-08-10T10:32:05Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-10T10:34:52Z _cosmonaut_ quit (Ping timeout: 260 seconds) 2017-08-10T10:35:13Z goosnargh quit (Ping timeout: 255 seconds) 2017-08-10T10:35:39Z _cosmonaut_ joined #lisp 2017-08-10T10:38:18Z scymtym joined #lisp 2017-08-10T10:41:34Z axion: What is more efficient on the major implementations? (reduce #'+ list :key #'key) or (apply #'+ (mapcar #'key list)) 2017-08-10T10:42:05Z horison quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-10T10:42:40Z Shinmera: Probably neither and instead (loop for a in list sum (key a)) 2017-08-10T10:43:16Z loke: axion: The apply version is quite terrible. 2017-08-10T10:43:17Z random-nickname is now known as random-nick 2017-08-10T10:43:17Z al-damiri joined #lisp 2017-08-10T10:43:42Z axion: Well I know without a test it performs much better on SBCL 2017-08-10T10:43:50Z axion: and old paste of mine https://gist.github.com/mfiano/6e25e7fc5731e001ce6f277d97dcf353 2017-08-10T10:49:54Z damke_ joined #lisp 2017-08-10T10:52:01Z damke quit (Ping timeout: 240 seconds) 2017-08-10T10:52:01Z kora9 joined #lisp 2017-08-10T10:56:23Z axion: I guess the real issue is you break conformance easily on anything except SBCL. https://gist.github.com/mfiano/1a31ef23cdde03e17843e02ffbffa46f 2017-08-10T10:59:47Z Xach: sbcl is fibbin 2017-08-10T10:59:57Z kora9: Is there a reason not everyone use sbcl? 2017-08-10T11:00:09Z Shinmera: Different implementations have different strengths. 2017-08-10T11:00:19Z jackdaniel: yes, diversity gives you opportunities 2017-08-10T11:00:23Z Shinmera: SBCL's compiler is slow. It doesn't run on the JVM. Doesn't have the features other implementations have. 2017-08-10T11:00:26Z kora9: Oh. I know sbcl has threading, what do the other implementations have? 2017-08-10T11:00:34Z jackdaniel: threading as well 2017-08-10T11:00:34Z kora9: sbcl is slow? I thought it was the fastest? 2017-08-10T11:00:39Z Shinmera: The compiler is slow. 2017-08-10T11:00:43Z Shinmera: The code produced is fast. 2017-08-10T11:00:44Z kora9: oh 2017-08-10T11:00:48Z jackdaniel: ccl has fast compiler 2017-08-10T11:01:04Z kora9: but produces slow code? 2017-08-10T11:01:08Z Shinmera: ECL can be used as a shared library and runs on much smaller devices. 2017-08-10T11:01:12Z jackdaniel: abcl runs on JVM, ecl compiles to shared object which may be used in C/C++ application 2017-08-10T11:01:16Z Xach: sbcl produces big images 2017-08-10T11:01:26Z Shinmera: kora9: CCL is pretty good, but not as good as SBCL. 2017-08-10T11:01:30Z kora9: jackdaniel: is abcl a real lisp implementation or is it more like clojure? 2017-08-10T11:01:38Z Shinmera: It's a Common Lisp 2017-08-10T11:01:40Z jackdaniel: abcl is a real common lisp implementation 2017-08-10T11:01:42Z kora9: oh cool 2017-08-10T11:01:48Z kora9: I just assumed it was like clojure 2017-08-10T11:01:53Z Shinmera: JSCL runs on JavaScript 2017-08-10T11:01:55Z kora9: jvm is fast though, is abcl fast? 2017-08-10T11:02:00Z Shinmera: Clasp runs with LLVM 2017-08-10T11:02:03Z Shinmera: And so forth. 2017-08-10T11:02:06Z damke joined #lisp 2017-08-10T11:02:09Z jackdaniel: it's not, but if you invest enough time it may be 2017-08-10T11:02:12Z kora9: Wait, with llvm? 2017-08-10T11:02:15Z schweers: do people really notice that sbcl takes longer to compile? 2017-08-10T11:02:22Z Shinmera: kora9: It targets C++ interop, so yes. 2017-08-10T11:02:25Z jackdaniel: schweers: in comparison with ccl - definetely yes 2017-08-10T11:02:28Z kora9: Shinmera: oh 2017-08-10T11:02:32Z Shinmera: schweers: Yes. 2017-08-10T11:02:36Z jackdaniel: especially when you start with clean cache 2017-08-10T11:02:46Z kora9: why does it matter if sbcl compiles slowly? 2017-08-10T11:02:53Z schweers: huh, it never bothered me that much, that’s why I ask 2017-08-10T11:02:57Z Shinmera: If you have large code bases it hinders development speed. 2017-08-10T11:03:02Z kora9: aha 2017-08-10T11:03:14Z schweers: kora9: or if you do excessive runtime compilation 2017-08-10T11:03:18Z Shinmera: My bigger projects suffer from this already even though it's just stuff I wrote. 2017-08-10T11:03:19Z schweers: just speculating though 2017-08-10T11:03:33Z jackdaniel: mezzano is an operating system *and* CL implementation 2017-08-10T11:03:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T11:03:49Z phoe: if you notice that compilation time slows you down, go grab CCL 2017-08-10T11:03:53Z Shinmera: SICL is a modular pure-CL implementation 2017-08-10T11:03:56Z jackdaniel: so much diversity, and implementations sometimes cross-polinate 2017-08-10T11:03:58Z phoe: it might not have all the optimization but its compiler is damn fast 2017-08-10T11:04:02Z kora9: Thats not a problem for me (yet) :) 2017-08-10T11:04:23Z schweers: does anyone do debugging with CCL? I haven’t done much with it but it seemed to simply not support single stepping. am I mistaken? 2017-08-10T11:04:25Z kora9: I mean I'm still learning so I don't have large code bases 2017-08-10T11:04:26Z jackdaniel: ecl runs on android for instance 2017-08-10T11:04:45Z kora9: Is there a GUI toolkit for Lisp? 2017-08-10T11:04:46Z scymtym: the compiler being slow also sometimes impacts the feasibility of calling it at runtime, which can be a useful thing to do 2017-08-10T11:05:08Z Bike joined #lisp 2017-08-10T11:05:22Z jackdaniel: kora9: https://common-lisp.net/project/ecl/static/quarterly/img/vol4/all-hierarchy.png (most implementations of CL with their relations) 2017-08-10T11:05:45Z jackdaniel: kora9: re GUI, McCLIM is native CL, there are others 2017-08-10T11:05:57Z phoe: schweers: I don't know about that. googling tells me that cl-stepper package makes it possible to step in CCL 2017-08-10T11:05:59Z Shinmera: I recommend Qtools 2017-08-10T11:06:18Z jackdaniel: kora9: https://common-lisp.net/project/mcclim/involve <- see "Is McCLIM the only graphical toolkit" 2017-08-10T11:06:23Z jackdaniel: for brief overview 2017-08-10T11:06:31Z jackdaniel: with links 2017-08-10T11:08:08Z phoe: I successfully used qtools to build a cross-platform linux/windows app. 2017-08-10T11:08:33Z phoe: Shinmera: want to add a success story to Qtools page? 2017-08-10T11:09:04Z Shinmera: I'd prefer a blog article that shows up on planet lisp :) 2017-08-10T11:10:01Z phoe: Shinmera: I'm already blogging at https://blog.teknik.io/phoe and just waiting for teknik's admin to add post tagging. The moment I have tags, I can get a RSS feed of all posts tagged Lisp and submit that to the planet. 2017-08-10T11:11:23Z Shinmera: Well, looking forward to an article talking about your adventures with Qtools then. 2017-08-10T11:11:33Z phoe: Sure thing, I'll write it down. 2017-08-10T11:11:46Z phoe: Does Planet Lisp accept only RSS feeds? 2017-08-10T11:12:02Z jackdaniel: yes, and atom feeds I think 2017-08-10T11:12:06Z Shinmera: Atom and RSS 2017-08-10T11:12:17Z Shinmera: (Atom should be the only format to use anyway) 2017-08-10T11:12:48Z kora9: jackdaniel: Oh that's great (the hierarchy)! and i'll check out the toolkit :) 2017-08-10T11:14:05Z jackdaniel: note, that corman cl is being improved lately after recent opensourcing it 2017-08-10T11:14:18Z jackdaniel: so it should be yellow or green now 2017-08-10T11:15:02Z phoe: jackdaniel: is it being maintained!? 2017-08-10T11:15:16Z phoe: can I have any links to it? 2017-08-10T11:15:46Z shka: corman lisp? 2017-08-10T11:15:47Z jackdaniel: duckduckgo is your friend my friend 2017-08-10T11:15:50Z shka: never heared of it! 2017-08-10T11:16:51Z phoe: ooh, https://github.com/sharplispers/cormanlisp 2017-08-10T11:16:54Z phoe: pretty. thanks! 2017-08-10T11:16:54Z schweers: afaik corman is windows only 2017-08-10T11:16:56Z antoszka: an old, high quality, commercial compiler 2017-08-10T11:17:02Z antoszka: 32-bit/windows only afair 2017-08-10T11:17:08Z antoszka: or maybe they were 64 bit 2017-08-10T11:17:10Z antoszka: can't remember 2017-08-10T11:17:12Z shka: that can be changed 2017-08-10T11:17:12Z phoe: weren't 2017-08-10T11:17:20Z phoe: they had FFI issues with 64 bits 2017-08-10T11:17:45Z antoszka: well, not: 2017-08-10T11:17:47Z antoszka: > Regarding converting to a full 64-bit Lisp, this would be a much bigger effort. Corman Lisp gets such good performance by a large amount of hand-optimized x86 assembly code. This would all have to be rewritten/replaced in a 64-bit Lisp. 2017-08-10T11:17:49Z antoszka: shka: ↑ 2017-08-10T11:17:55Z kora9: Hmm. What's wrong here? -> http://paste.lisp.org/display/353038 - (graph->png) works fine, but (ugraph->png) returns subprocess error 2017-08-10T11:18:13Z shka: antoszka: still, it is possible 2017-08-10T11:18:15Z phoe: kora9: stacktrace pls 2017-08-10T11:18:21Z phoe: also, what does the error say 2017-08-10T11:18:26Z kora9: phoe: Oh, hm, how do I do that? 2017-08-10T11:18:43Z shka: or at least some parts of it can be adopted into other implementations 2017-08-10T11:18:47Z phoe: kora9: it returns subprocess error, right? 2017-08-10T11:18:47Z antoszka: shka: Of course, but most probably not realistically feasible. 2017-08-10T11:18:52Z phoe: what does the error say? 2017-08-10T11:19:04Z phoe: if it pops up in slime's SLDB, there should be a stacktrace beneath 2017-08-10T11:23:12Z kora9: phoe: Subprocess (:PROCESS #) with command ("dot" "-Tpng" "-O" "test.dot") exited with error code 1 [Condition of type UIOP/RUN-PROGRAM:SUBPROCESS-ERROR] 2017-08-10T11:23:46Z antoszka: Try running the command by hand. 2017-08-10T11:24:03Z antoszka: Because it's clearly the problem of your dot command. 2017-08-10T11:24:10Z kora9: phoe: 0: (UIOP/RUN-PROGRAM::%CHECK-RESULT 1 :COMMAND ("dot" "-Tpng" "-O" "test.dot") :PROCESS ... 2017-08-10T11:24:12Z antoszka: Looks like it's missing a source file. 2017-08-10T11:24:36Z antoszka: If -O is the output flag. 2017-08-10T11:24:48Z _cosmonaut_ quit (Ping timeout: 260 seconds) 2017-08-10T11:25:01Z kora9: But (graph->png) works and that uses the same function 2017-08-10T11:25:16Z kora9: The source file is supposed to be created 2017-08-10T11:25:46Z antoszka: Maybe it's empty, maybe it contains errors, seriously, this is something you need to debug on shell level. 2017-08-10T11:26:05Z antoszka: Inspect the source file in both cases. 2017-08-10T11:26:13Z antoszka: And try running the commands by hand. 2017-08-10T11:26:23Z antoszka: See why the second variant returns 1 in the shell. 2017-08-10T11:26:26Z kora9: aha 2017-08-10T11:28:14Z phoe: that's not a Lisp problem 2017-08-10T11:28:22Z phoe: that's a subapplication problem 2017-08-10T11:28:24Z kora9: Hmm, you're right there's a syntax error in there 2017-08-10T11:29:19Z rumbler31 joined #lisp 2017-08-10T11:29:23Z antoszka: You might want to consider changing the 'fname' name to 'filename', such abbreviations are not idiomatic in the Lisp world and in this particular case I was mentally reading it as “function name” :) 2017-08-10T11:29:41Z kora9: antoszka: Ah, I'm just going by the book example. But I'll do that 2017-08-10T11:29:48Z kora9: fname does look cryptic 2017-08-10T11:30:06Z antoszka: Land of Lisp? 2017-08-10T11:30:12Z kora9: It seems the example part where it prints "--" is erroneous 2017-08-10T11:30:17Z kora9: antoszka: yeah 2017-08-10T11:30:34Z antoszka: It's a pity… 2017-08-10T11:30:50Z antoszka: Good book, but bad symbol names :) 2017-08-10T11:30:53Z kora9: :) 2017-08-10T11:31:10Z kora9: I changed -- to xx and it's working now. I suppose when this book was written, graphviz had a different syntax 2017-08-10T11:31:18Z goosnargh joined #lisp 2017-08-10T11:32:35Z shka: http://sogrady-media.redmonk.com/sogrady/files/2014/01/lang-rank-114-wm.png 2017-08-10T11:32:51Z shka: i guess common lisp programmers don't really like SO… ;-) 2017-08-10T11:32:53Z antoszka: kora9: possibly. 2017-08-10T11:33:17Z shka: kora9: there is library for graphviz 2017-08-10T11:33:20Z kora9: shka: How is delphi that high up?! I thought delphi was dead! 2017-08-10T11:33:26Z shka: it is quite nice 2017-08-10T11:33:30Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-10T11:33:36Z phoe: shka: haha 2017-08-10T11:33:37Z shka: kora9: popularity rank on SO 2017-08-10T11:33:40Z kora9: shka: This is mostly a learning exercise 2017-08-10T11:33:45Z kora9: shka: SO? 2017-08-10T11:33:46Z phoe: you should post it on /r/lisp ;) 2017-08-10T11:33:49Z phoe: stackoverflow 2017-08-10T11:33:51Z shka: stack overflow 2017-08-10T11:34:07Z phoe: shka: will you, or should I? 2017-08-10T11:34:14Z shka: but Vim users don't even know that SO exists 2017-08-10T11:34:18Z shka: sure, go ahead 2017-08-10T11:34:21Z kora9: phoe: Still.. delphi?! 2017-08-10T11:34:38Z shka: and cold fusion! ;-) 2017-08-10T11:34:47Z phoe: kora9: sure, pascal is still popular 2017-08-10T11:34:51Z schweers: I’m more irritated by Visual Basic 2017-08-10T11:35:17Z phoe: shka: https://www.reddit.com/r/lisp/comments/6sspnm/ 2017-08-10T11:36:08Z kora9: Guile is surprisingly absent 2017-08-10T11:36:21Z phoe: maybe there are no guile GitHub repositories 2017-08-10T11:36:23Z phoe ducks 2017-08-10T11:36:45Z antoszka chickens 2017-08-10T11:36:55Z goosnargh quit (Ping timeout: 246 seconds) 2017-08-10T11:37:18Z kora9: phoe: Is that controversial? I know next to nothing about it other than it exists and it's kinda lispyish 2017-08-10T11:37:38Z phoe: kora9: not really controversial 2017-08-10T11:37:52Z schweers: well scheme is listed, I guess that encompasses guile too 2017-08-10T11:38:01Z kora9: schweers: Oh, are they related? 2017-08-10T11:38:06Z schweers: guile is a scheme 2017-08-10T11:38:09Z phoe: yes, Guile is a Scheme 2017-08-10T11:38:09Z kora9: ohh 2017-08-10T11:38:15Z kora9: I didn't know. Cool. 2017-08-10T11:39:05Z schweers: having worked a little bit with scheme and surveying the existing implementations I’ve come to highly value the fact that common lisp has a somewhat solid standard 2017-08-10T11:39:17Z schweers: outdated as it may be 2017-08-10T11:39:29Z kora9: schweers: Scheme doesn't? 2017-08-10T11:39:45Z schweers: well … there is a series of successive scheme standards 2017-08-10T11:39:53Z varjag joined #lisp 2017-08-10T11:39:54Z phoe: kora9: it does, in a way 2017-08-10T11:40:04Z schweers: r7rs is the current incarnation if i recall correctly 2017-08-10T11:40:09Z kora9: Oh. I was thinking initially to either learn CL or Scheme, but CL seemed like the better choice (pragmatically) 2017-08-10T11:40:12Z schweers: i.e. scheme version 7 if you will 2017-08-10T11:40:28Z phoe: Scheme standards are changing pretty much 2017-08-10T11:40:30Z kora9: I still am interested to learn Scheme down the line, after I know my way around CL 2017-08-10T11:40:51Z schweers: writing portable common lisp programs is not exactly straightforward, but writing portable scheme programs seems to me like a very special circle of hell 2017-08-10T11:41:32Z schweers: i also find scheme missing some things which I care about a lot. Like the condition system and CLOS 2017-08-10T11:41:52Z schweers: while it is possible to implement those in scheme not every implementation has them, let alone has them in a compatible way 2017-08-10T11:42:57Z schweers: having an extensible reader is another thing I’ve missed in scheme 2017-08-10T11:43:05Z schweers: now, enough bashing 2017-08-10T11:44:16Z random-nick: imo the scheme community should get together and make a common scheme, since obviously the reports aren't enough 2017-08-10T11:45:02Z lieven: off topic but just pick an implementation. racket is rather nice and they do interesting work on extending the language 2017-08-10T11:45:54Z schweers: I think the thing that impressed me the most with racket is how easy they make it to write programs which run on windows and linux 2017-08-10T11:46:02Z kora9: lieven: How does Racket fit into all this? 2017-08-10T11:46:05Z schweers: well, and on the mac but I so do not care about that 2017-08-10T11:46:21Z TMA: kora9: Racket is a (descendant of) scheme 2017-08-10T11:46:31Z schweers: kora9: racket is a quite large project which aims to be a sort of langage plattform 2017-08-10T11:46:47Z schweers: i.e. one can create langages on top of racket and (partially?) mix them 2017-08-10T11:46:55Z schweers: uses scheme as its base 2017-08-10T11:47:18Z schweers: they have some neat applications of rather advanced theory 2017-08-10T11:47:20Z TMA: kora9: one of those languages is named racket 2017-08-10T11:47:43Z schweers: I like their partial continuations, although I’ve yet to come across a situation in which I need them 2017-08-10T11:49:23Z schweers: racket also offers typed scheme, which is significant as scheme normally does not deal with types at all 2017-08-10T11:49:31Z schweers: well, not at compile time 2017-08-10T11:51:13Z kora9 quit (Ping timeout: 255 seconds) 2017-08-10T11:54:01Z pjb quit (Ping timeout: 276 seconds) 2017-08-10T11:55:32Z ebzzry joined #lisp 2017-08-10T11:55:34Z knicklux joined #lisp 2017-08-10T11:57:04Z quazimodo quit (Read error: Connection reset by peer) 2017-08-10T11:57:23Z quazimodo joined #lisp 2017-08-10T11:57:31Z kora9 joined #lisp 2017-08-10T11:57:55Z jackdaniel: cotusie 2017-08-10T11:59:30Z otwieracz: such polish 2017-08-10T11:59:46Z BitPuffin|osx joined #lisp 2017-08-10T12:01:58Z koenig joined #lisp 2017-08-10T12:05:56Z Kevslinger joined #lisp 2017-08-10T12:09:24Z Arnot joined #lisp 2017-08-10T12:16:47Z Bike quit (Ping timeout: 258 seconds) 2017-08-10T12:19:14Z nowhere_man joined #lisp 2017-08-10T12:24:29Z kora9: which emacs plugins do you guys find useful for CL (and things surrounding CL?) 2017-08-10T12:26:04Z jackdaniel: slime and paredit 2017-08-10T12:26:15Z jackdaniel: also log4cl-slime 2017-08-10T12:26:22Z jackdaniel: (integration for log4cl) 2017-08-10T12:28:29Z milanj joined #lisp 2017-08-10T12:31:12Z kora9: jackdaniel: log4cl? 2017-08-10T12:31:39Z kora9: I think I have paredit. Slime are for losers. Real men compute Lisp in their head. (jk) 2017-08-10T12:31:46Z jackdaniel: it is a logging software 2017-08-10T12:31:51Z kora9: Oh 2017-08-10T12:31:54Z jackdaniel: it is a software for logging* 2017-08-10T12:32:05Z jackdaniel: like (log:warn "foo ~a" 3) 2017-08-10T12:32:10Z jackdaniel: or (log:error "bam") 2017-08-10T12:32:16Z kora9: Yeah I kind of understood that you didn't mean timber management :D 2017-08-10T12:32:48Z schweers: I want the user (trusted users, security is not /that/ much of a concern) to specify variables and would prefer not to pass around strings as program arguments or the like. I was thinking about loading a user supplied function. If I put a (DEFPARAMETER) form into said file by program proper won’t compile, because the variable is not yet defined. Any good ideas how to do this? 2017-08-10T12:33:28Z goosnargh joined #lisp 2017-08-10T12:34:35Z schweers: ease of implementation would be the most imporant metric to me 2017-08-10T12:34:57Z jackdaniel: I don't understand what you are saying, sorry. you want to read varible name and its value at runtime from user? 2017-08-10T12:35:18Z schweers: no, sorry, I’ll try to explain again 2017-08-10T12:36:15Z schweers: I want the user to be able to specify what the input file is (as an example). I don’t want to use argv or environment variables or the like. 2017-08-10T12:36:28Z schweers: I was thinking of having something like emacs’ init.el 2017-08-10T12:36:47Z ebzzry quit (Ping timeout: 260 seconds) 2017-08-10T12:36:48Z schweers: i.e. let the user set some variables, in the future maybe define functions and the like. 2017-08-10T12:37:01Z schweers: I can load such a file 2017-08-10T12:37:28Z antoszka: schweers: If you want user input to be *safe*, try using a .ini-style parser for configuration files. 2017-08-10T12:37:42Z schweers: but: if I refer to a variable which I (the programmer) expect the user to define, the compiler gives me ar error because the user supplied file has not been compiled yet 2017-08-10T12:37:46Z antoszka: schweers: The lispy way, would be just to load lisp code, but that's certainly not safe. 2017-08-10T12:37:47Z jackdaniel: you may define variables with defvar, so they are unbound in your application, and put defparameter in the file (if you really trust your users) 2017-08-10T12:37:48Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-10T12:37:49Z azzamsa joined #lisp 2017-08-10T12:37:55Z antoszka: If you don't trust the user. 2017-08-10T12:38:02Z schweers: I know it’s not safe, but I can and do trust the users 2017-08-10T12:38:12Z schweers: there are only like 2-3, and all are employees 2017-08-10T12:38:18Z schweers: i.e. collegues 2017-08-10T12:38:53Z antoszka: Oh, in that way just load the file, that's the way I did it: https://github.com/antoszka/fv/blob/master/fv.lisp#L58 2017-08-10T12:39:02Z schweers: hm. you mean I (defvar *foo*) in my main program and let the user setf or defparameter the same variable with a new value? 2017-08-10T12:39:14Z antoszka: (line 61) 2017-08-10T12:39:20Z antoszka: you could 2017-08-10T12:39:34Z Arnot quit (Quit: Page closed) 2017-08-10T12:39:53Z schweers: hmm, that way I could define meaningful defaults too 2017-08-10T12:39:57Z schweers: I think I like that 2017-08-10T12:41:27Z Murii quit (Ping timeout: 240 seconds) 2017-08-10T12:51:12Z Posterdati: hi 2017-08-10T12:51:26Z _cosmonaut_ joined #lisp 2017-08-10T12:51:27Z nowhere_man quit (Ping timeout: 240 seconds) 2017-08-10T12:51:37Z Posterdati: please help, I do not know why this closure doesn't work --> http://paste.lisp.org/display/353045 2017-08-10T12:52:06Z Posterdati: (open-connections object) seems to be nil 2017-08-10T12:52:26Z Posterdati: but it is not, I checked outside the lambda declaration 2017-08-10T12:54:39Z schweers: have you tried using the debugger to check what (open-connections object) returns? 2017-08-10T13:01:37Z kora9: ha! I fixed the function :D 2017-08-10T13:01:40Z damke_ joined #lisp 2017-08-10T13:02:01Z kora9: Now I can finish the chapter :) 2017-08-10T13:02:25Z schweers: kora9: what book were you working on? PAIP? 2017-08-10T13:02:28Z Posterdati: schweers: no, because I tried to print it, but got nil 2017-08-10T13:02:31Z schweers: oh and: congrats 2017-08-10T13:03:29Z azzamsa quit (Ping timeout: 248 seconds) 2017-08-10T13:03:40Z schweers: I’m afraid I have no idea what OPEN-CONNECTION does and what you passed in as OBJECT 2017-08-10T13:04:01Z damke quit (Ping timeout: 240 seconds) 2017-08-10T13:07:00Z EvW1 joined #lisp 2017-08-10T13:07:23Z Posterdati: (open-connections object) is an hash-table 2017-08-10T13:07:48Z Posterdati: of iolib/sockets sockets 2017-08-10T13:08:20Z kora9: schweers: Land of Lisp :-) 2017-08-10T13:08:34Z kora9: schweers: Not terribly advanced for you guys, I suppose, but it's good for me as a starting book! 2017-08-10T13:08:36Z schweers: ahh :) how do you like it? 2017-08-10T13:08:46Z kora9: I think it's great! It's very entertaining 2017-08-10T13:09:06Z kora9: I realize it's not the most in depth or advanced, but it's a great introduction so to speak and it's explained a lot of concepts that I struggled with very well 2017-08-10T13:09:11Z schweers: which is something I find valueable. Noone ever started out as an expert. Not that I’m an expert, mind you 2017-08-10T13:09:20Z kora9: Aye :) 2017-08-10T13:09:37Z kora9: But what's so great about CL is that it's the first programming language where I find the actual programming fun as opposed to the result of the programming 2017-08-10T13:10:35Z schweers: kora9: which other languages have you used until now? 2017-08-10T13:13:11Z sellout- joined #lisp 2017-08-10T13:13:44Z kora9: schweers: Java and Python 2017-08-10T13:13:52Z schweers: oh 2017-08-10T13:13:57Z schweers: you didn’t like python? 2017-08-10T13:14:03Z Bike joined #lisp 2017-08-10T13:14:31Z kora9: schweers: I am not bad at Java actually. But I dislike it a lot, it feels like I spend 10% of the time writing what I want to write, and 90% of the time writing things to appease Java. 2017-08-10T13:14:55Z kora9: schweers: Not to mention all the time it feels like I have to work "around" java because it has one idea on how to do something, and it's not my idea 2017-08-10T13:14:57Z schweers: yeah java is … well … I don’t know anything kind to say about java 2017-08-10T13:15:15Z schweers: which is why I asked about python ;) 2017-08-10T13:15:16Z kora9: schweers: I'm not sure what to say about Python. It was easy. 2017-08-10T13:15:28Z kora9: schweers: It felt very crappy in some ways 2017-08-10T13:15:59Z schweers: python always gave me the impression that functional programming is frowned upon by guido 2017-08-10T13:16:00Z kora9: Things would break down, there would be odd error messages, indentation dependent, spec changing, lots of incompatibilities between everything 2017-08-10T13:16:14Z kora9: I didn't feel it was for me 2017-08-10T13:17:10Z schweers: so I guess it’s good you found lisp ;) 2017-08-10T13:17:12Z kora9: I've heard friends have said python3.6 is a lot better (supposedly type safe) but I don't know 2017-08-10T13:17:43Z jackdaniel: does python3.6 have strong typing system? 2017-08-10T13:17:54Z kora9: schweers: Yeah! I'm wondering why I haven't found it sooner. It's like programming without the headache. There are *loads* of things I've yet to learn, and loads of things I don't know how to do yet, but I don't feel like they're headaches if you know what I mean. They just feel like things I have yet to learn 2017-08-10T13:17:59Z jackdaniel: I had impression it is a duck typing? 2017-08-10T13:18:06Z kora9: jackdaniel: From what I hear, I'm not sure how accurate it is 2017-08-10T13:18:25Z kora9: jackdaniel: Sorry, typesafe. Not strong typing. I'm confusing things. 2017-08-10T13:18:40Z schweers: I remember a blog post or something similar by guido van rossum in which he ranted against tail-call-elemination and said that it would be to confusing for the average programmer. That’s something I would have expected from the java-folks. I found it really off-putting. 2017-08-10T13:18:47Z jackdaniel: I've just checked, it is duck typing - so I don't know how it may be type safe 2017-08-10T13:18:52Z jackdaniel: if there are no real types 2017-08-10T13:19:06Z kora9: jackdaniel: I don't know either 2017-08-10T13:19:13Z kora9: I've never used python 3.6 2017-08-10T13:19:43Z jackdaniel: duck type is "if it looks like a duck, it is a duck" 2017-08-10T13:19:48Z jackdaniel: illustration – https://pbs.twimg.com/media/B3Fvg-sCYAAkLSV.jpg 2017-08-10T13:20:06Z schweers: I quite distinctly remember the feeling I had when I got to CLOS and the condition system chapters of PCL. I felt like crying 2017-08-10T13:20:26Z schweers: jackdaniel: lol 2017-08-10T13:20:52Z jackdaniel: languages may have weak or strong typing (that is one distinction), and dynamic and static type system 2017-08-10T13:21:05Z schweers: or none at all ;) 2017-08-10T13:21:06Z jackdaniel: Common Lisp has dynamic strong typing for instance 2017-08-10T13:21:19Z schweers: well, plus optional static types 2017-08-10T13:21:48Z kora9: jackdaniel: oh 2017-08-10T13:22:04Z kora9: jackdaniel: Yeah strong typing I said by mistake, I don't think python has that. Java has strong typing right? 2017-08-10T13:22:22Z schweers: python does have strong typing 2017-08-10T13:22:29Z schweers: but dynamic 2017-08-10T13:22:30Z kora9: It does? 2017-08-10T13:22:30Z knicklux quit (Ping timeout: 240 seconds) 2017-08-10T13:22:32Z schweers: yes 2017-08-10T13:22:38Z ebzzry joined #lisp 2017-08-10T13:22:40Z schweers: values have types in python. variables don’t 2017-08-10T13:22:44Z schweers: very much like CL 2017-08-10T13:22:48Z kora9: ah 2017-08-10T13:23:03Z schweers: the object "foo" “knows” it is a string 2017-08-10T13:23:21Z kora9: Another thing I noticed a lot going between these different programming languages, is that with java and python, there's a serious difference in level of programmer 2017-08-10T13:24:03Z kora9: C programmers I've met have been very knowledgable. Java and Python has been very uneven 2017-08-10T13:24:07Z Shinmera: JS is an example of weak typing, as values can change types. 2017-08-10T13:24:16Z schweers: I /think/ it might be because java is such a lousy educational tool. 2017-08-10T13:24:34Z kora9: schweers: Or maybe because a lot of people learn java because they need a job. They don't necessarily care about programming 2017-08-10T13:24:46Z schweers: yes, that too 2017-08-10T13:24:57Z schweers: I wouldn’t even say that it’s their fault 2017-08-10T13:25:05Z damke joined #lisp 2017-08-10T13:25:10Z kora9: I don't mean to blame anyone, I just meant I observed it 2017-08-10T13:25:44Z kora9: Java has a very "if it works it's good enough" mentality that makes all applications terrible 2017-08-10T13:25:58Z schweers: most people who learn to program also learn to use java at some point in their education and/or carreer 2017-08-10T13:26:08Z schweers: which means that most mediocre people also know java 2017-08-10T13:26:23Z knicklux joined #lisp 2017-08-10T13:26:29Z kora9: Yeah? I thought initially it was a good idea because it seemed attractive to be able to have applications which "just works" in different operating systems 2017-08-10T13:26:37Z kora9: And Java8 isn't slow 2017-08-10T13:26:57Z ebzzry quit (Ping timeout: 248 seconds) 2017-08-10T13:27:00Z dlowe: A cross-platform byte code isn't at all an original idea. 2017-08-10T13:27:05Z dlowe: But hey, let's talk about lisp 2017-08-10T13:27:12Z schweers: dlowe: I don’t think anyone here claimed it was ;) 2017-08-10T13:27:27Z schweers: (let ((us (do so)))) 2017-08-10T13:27:35Z doesthiswork joined #lisp 2017-08-10T13:27:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T13:29:33Z kora9: Cool. I just caught myself being able to determine the difference between 4/6 and 5 parens next to each other. I've had issues with spotting more than 4 parens next to each other easily before 2017-08-10T13:29:48Z dlowe: I let my text editor manage that 2017-08-10T13:29:54Z schweers: same here 2017-08-10T13:30:01Z kora9: Yeah but in the land of lisp book I can't do that :) 2017-08-10T13:30:14Z schweers: that’s one of the things computers are good at, while humans are poor at 2017-08-10T13:30:18Z schweers: true 2017-08-10T13:30:27Z dlowe: I think you can grab samples on the internet 2017-08-10T13:30:30Z kora9: In Emacs parens are handled for me 2017-08-10T13:30:42Z kora9: Still, it's a good thing to be able to spot 2017-08-10T13:31:14Z schweers: I can’t do that very well which is why I’m really annoyed when I see code which is not properly indented 2017-08-10T13:31:37Z schweers: sometimes I copy it into emacs and let emacs indent it for me 2017-08-10T13:34:10Z goosnargh joined #lisp 2017-08-10T13:34:46Z rumbler31 joined #lisp 2017-08-10T13:35:01Z damke quit (Ping timeout: 240 seconds) 2017-08-10T13:36:25Z damke joined #lisp 2017-08-10T13:38:35Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-10T13:39:48Z Khisanth quit (Ping timeout: 240 seconds) 2017-08-10T13:40:41Z kora9: schweers: One day I will be the master of parentheses :D 2017-08-10T13:41:30Z justinabrahms joined #lisp 2017-08-10T13:41:41Z jackdaniel: the master level is when you see no parenthesses anymore 2017-08-10T13:42:18Z justinabrahms left #lisp 2017-08-10T13:42:19Z cromachina quit (Read error: Connection reset by peer) 2017-08-10T13:43:30Z ecraven: nirvana! 2017-08-10T13:43:43Z schweers: one step to mastering them is to use a tool like paredit or lispy. But be warned: they can boggle the mind at first 2017-08-10T13:45:06Z kora9: That's odd. Paredit isn't in the melpa repo?! 2017-08-10T13:45:25Z schweers: not sure, I remember that acquiring it can be weird 2017-08-10T13:46:21Z damke quit (Ping timeout: 240 seconds) 2017-08-10T13:46:24Z schweers: it is in melpa and melpa-stable 2017-08-10T13:46:31Z kora9: Yes? 2017-08-10T13:46:38Z damke joined #lisp 2017-08-10T13:46:44Z kora9: It's not showing up in package-list-packages 2017-08-10T13:47:01Z kora9: jackdaniel: "There is no spoon" :D 2017-08-10T13:47:13Z schweers: it is on my setup 2017-08-10T13:47:22Z schweers: you’ve added melpa to your package archive? 2017-08-10T13:47:41Z kora9 kind of thought that was melpa 2017-08-10T13:48:08Z kora9: But yeah, I've got add-to-list package-archives etc 2017-08-10T13:48:10Z jdz quit (Ping timeout: 240 seconds) 2017-08-10T13:48:11Z sz0 joined #lisp 2017-08-10T13:48:29Z jdz joined #lisp 2017-08-10T13:50:42Z oleo joined #lisp 2017-08-10T13:51:27Z kora9: Wait.. 2017-08-10T13:51:44Z schweers quit (Read error: Connection reset by peer) 2017-08-10T13:51:45Z kora9: Delphi is in the CL hierarchy image.. is Delphi a lisp? 2017-08-10T13:52:05Z random-nick: isn't delphi a pascal? 2017-08-10T13:52:36Z jackdaniel: it's delphi cl, different thing 2017-08-10T13:53:01Z jackdaniel: I have the source somewhere in my notes 2017-08-10T13:53:17Z jackdaniel: I mean – source of the information 2017-08-10T13:53:17Z Khisanth joined #lisp 2017-08-10T13:53:23Z jackdaniel: like webpage link, not source of the implementation 2017-08-10T13:53:36Z jackdaniel: but quick searching shows this: https://en.wikipedia.org/wiki/Kyoto_Common_Lisp 2017-08-10T13:53:47Z jackdaniel: "Commercial versions of Kyoto Common Lisp were Ibuki Common Lisp[4] and Delphi Common Lisp." 2017-08-10T13:54:09Z _cosmonaut_ quit (Ping timeout: 248 seconds) 2017-08-10T13:55:06Z junxit joined #lisp 2017-08-10T13:57:43Z dlowe: kora9: Maybe you're thinking of Dylan? 2017-08-10T13:58:14Z dec0n quit (Read error: Connection reset by peer) 2017-08-10T13:58:45Z jackdaniel: dlowe: he (she?) refers to https://common-lisp.net/project/ecl/static/quarterly/img/vol4/all-hierarchy.png diagram 2017-08-10T13:59:00Z jackdaniel: it has "Delphi" node, and indeed there was Pascal compiler with IDE called Delphi 2017-08-10T13:59:24Z dlowe: yeah, maybe there was another delphi. 2017-08-10T13:59:39Z dlowe: you just said that 2017-08-10T13:59:43Z dlowe: I'll shut up now :p 2017-08-10T14:00:30Z kora9: jackdaniel: He! 2017-08-10T14:00:37Z kora9: jackdaniel: Interesting! 2017-08-10T14:03:26Z doesthiswork quit (Quit: Leaving.) 2017-08-10T14:04:09Z DingoSaar_ is now known as DingoSaar 2017-08-10T14:04:30Z schweers joined #lisp 2017-08-10T14:08:12Z schweers: me sighs because slime wants to treat a local file as a tramp filename and fails because of it. 2017-08-10T14:10:08Z _cosmonaut_ joined #lisp 2017-08-10T14:10:51Z whoman: tramp filenames are not 'backward-compatible' or a superset of regular filenames ? 2017-08-10T14:11:07Z schweers: not sure, I don’t know that much about tramp 2017-08-10T14:11:34Z schweers: I did this because I wanted to work on a remote lisp: https://www.common-lisp.net/project/slime/doc/html/Setting-up-pathname-translations.html#Setting-up-pathname-translations 2017-08-10T14:11:49Z schweers: worked fine, but when I later on said M-x slime RET it failed 2017-08-10T14:13:18Z whoman: hmm. ive been using emacsclient and emacs itself to connect, then slime through that. but my "client" tablet/machine is windows 2017-08-10T14:13:35Z schweers: using linux on both ends here 2017-08-10T14:13:48Z schweers: you can use tramp on windows? 2017-08-10T14:14:04Z schweers: I’ve always assumed it wouldn’t work because of ssh 2017-08-10T14:14:13Z whoman: im not sure, i havent tried; i didnt want to spend more time getting things to work on windows so i just use emacs server/client over ssh. 2017-08-10T14:14:33Z schweers: oh, you mean you use emacsclient over ssh? 2017-08-10T14:14:41Z whoman: i cant remember the current status of ssh on windows, but i think it was doing it for some things with the proper libs like openssh/gnutls etc 2017-08-10T14:14:42Z whoman: yes 2017-08-10T14:14:47Z schweers: so the emacs instance runs on a remote machine 2017-08-10T14:14:51Z whoman: yeah =) 2017-08-10T14:14:56Z schweers: ah, never done that, didn’t even know it could be done 2017-08-10T14:15:18Z whoman: there are at least three ways. one is tramp, second is emacsclient, third is X11 over ssh. 2017-08-10T14:15:21Z schweers: I think ssh alone is a reason why I can’t take windows seriously 2017-08-10T14:15:31Z schweers: eww 2017-08-10T14:15:50Z whoman: hehe. the second two methods work great for windows<->linux 2017-08-10T14:16:16Z schweers: I’ve never had the urge to use such a thing with a gaming console 2017-08-10T14:16:24Z whoman: with Xming i can run other X11 apps locally on my windows8.1 desktop 2017-08-10T14:16:46Z EvW1 quit (Ping timeout: 258 seconds) 2017-08-10T14:17:09Z schweers: sorry not quite true. I remember doing something really weird with X forwarding over ssh on windows years ago 2017-08-10T14:18:23Z damke_ joined #lisp 2017-08-10T14:18:24Z whoman: my tablet is stuck on windows due to some wierd 64bit efi but 32bit cpu kind of setup ~_~ 2017-08-10T14:18:41Z damke quit (Ping timeout: 240 seconds) 2017-08-10T14:18:45Z schweers: sounds like quite the abomination 2017-08-10T14:20:49Z whoman: yeah, it does, but it is great otherwise. paid 90$, i am living in poverty and it provided me with things while i had none =) rock solid device, super great battery, nice screen, microusb, its quite nice for what it is. 2017-08-10T14:21:48Z schweers: I didn’t mean to critisize you. 2017-08-10T14:22:39Z flamebeard quit (Read error: Connection reset by peer) 2017-08-10T14:22:54Z damke_ quit (Ping timeout: 258 seconds) 2017-08-10T14:23:14Z damke_ joined #lisp 2017-08-10T14:23:48Z whoman: no worries, i didnt take it that way =) but i want to say acer iconia tablet is good stuff, minus the windows "lock-in" (there is a bios password on it when i got it, so i am not sure if it is just my "copy" of the device which is locked) 2017-08-10T14:24:28Z mishoo quit (Ping timeout: 240 seconds) 2017-08-10T14:24:42Z schweers: uhh … you bought the device and they but a BIOS password on it which they didn’t give you? 2017-08-10T14:25:06Z oleo: i find notebooks loathsome 2017-08-10T14:25:31Z oleo: for the very reason of having a big mouse touchscreen field in the middle 2017-08-10T14:25:34Z schweers: me too, but I wouldn’t want to live without 2017-08-10T14:25:46Z schweers: same thing with so called smartphones 2017-08-10T14:25:56Z whoman: it was used, from a pawn shop. i got it in 2015 perhaps, in 2013 new it was $500, $700 with the keyboard/usb dock attachment (which i didnt get with it) 2017-08-10T14:25:59Z oleo: i'd rather prefer it (it i have to) be on the right or some other place and be rather pretty smallish 2017-08-10T14:26:03Z oleo: it's huge 2017-08-10T14:26:08Z oleo: too huge 2017-08-10T14:26:12Z whoman: schweers, whomever had it previously had put in the password =) =/ 2017-08-10T14:26:24Z schweers: hm, ok 2017-08-10T14:26:35Z schweers: still wrong, but not quite as bad as I thought 2017-08-10T14:26:44Z Kyo91 joined #lisp 2017-08-10T14:27:30Z whoman: im not sure. it is really fun for me to have a full nice desktop for so cheap and with such good battery and screen and its size and durability. proprietary charger though, so i should order a backup one before i cant anymore. =) 2017-08-10T14:27:41Z oleo: hey, anyone good with asdf ? 2017-08-10T14:27:53Z whoman: schweers, let me know how X11/ssh goes for ya 2017-08-10T14:28:00Z oleo: i can't load a package cause it's not a system or system component it seems.... 2017-08-10T14:28:27Z schweers: whoman: I’m not using it, at least not as of late 2017-08-10T14:28:28Z oleo: so how do i load it ? 2017-08-10T14:28:29Z whoman: asdf cant find it? try to put the asd in ~/quicklisp/local-projects/ and do (ql:quickload "sysname") 2017-08-10T14:28:52Z whoman: schweers, ah okay, i wasnt sure if that was going to solve your problem or not 2017-08-10T14:28:59Z oleo: naaa, it's something in the mcclim source tree which is already located in the quicklisp software tree 2017-08-10T14:29:11Z Xach: oleo: you can use LOAD on each individual file that makes up the software. 2017-08-10T14:29:11Z oleo: and i already have setup.lisp loaded 2017-08-10T14:29:17Z Th30n joined #lisp 2017-08-10T14:29:34Z oleo: so i don't have a way of loading a single package defined in some file ? 2017-08-10T14:29:45Z whoman: hmm 2017-08-10T14:29:53Z schweers: hm. now that I’ve closed the remote slime connection it works again 2017-08-10T14:31:59Z whoman: i like common lisp and emacs lisp equally, so ive got prototype code in both. it feels like im choosing between two wives that are twins, existential crisis over here lol. 2017-08-10T14:32:56Z schweers: I think there is only one thing I like in elisp more than CL. which is that elisp allows one to advise any function, not just methods 2017-08-10T14:33:29Z kora9: schweers: What does that mean? (noob) 2017-08-10T14:34:41Z schweers: kora9: say I wrote a function and you’d like to change its behaviour, but for some reason you don’t want to change the source (for instance because that would be overwritten as soon as you update the package it came from). You can add code which runs before, after, or instead of the function 2017-08-10T14:34:54Z goosnargh joined #lisp 2017-08-10T14:35:15Z kora9: schweers: cool 2017-08-10T14:35:29Z schweers: in the last case (which is called :around) you get the original function as an argument to your advice. so you can tweak the arguments, massage the return value or just do something else completely. 2017-08-10T14:35:44Z kora9: That seems useful 2017-08-10T14:36:03Z schweers: in common lisp there are before after and around methods which can be used to augment methods on generic functions. which is cool, but it doesn’t work on defuns 2017-08-10T14:36:06Z damke_ quit (Read error: Connection reset by peer) 2017-08-10T14:36:32Z damke_ joined #lisp 2017-08-10T14:36:50Z kora9: Oh 2017-08-10T14:37:17Z schweers: in elisp it even somewhat works on functions defined in C 2017-08-10T14:37:32Z kora9: cool :) 2017-08-10T14:37:53Z schweers: but otherwise elisp really cannot hold water to common lisp 2017-08-10T14:38:28Z happy-dude joined #lisp 2017-08-10T14:38:37Z kora9: schweers: I actually looked up the reason for elisp once, on wikipedia, as I was wondering why elisp even existed (looking, to me at least, so similar) 2017-08-10T14:39:06Z kora9: schweers: Supposedly the CL spec wasn't as standardized back when emacs was being made? 2017-08-10T14:39:15Z schweers: I think its a bit older than common lisp. also, good free lisp implementations for small hardware were scarce. 2017-08-10T14:39:21Z jackdaniel: elisp is maclisp descendant I think 2017-08-10T14:39:28Z jackdaniel: it predates cl indeed 2017-08-10T14:39:31Z goosnargh quit (Ping timeout: 255 seconds) 2017-08-10T14:39:31Z schweers is not sure on the exact lineage 2017-08-10T14:39:34Z damke joined #lisp 2017-08-10T14:39:35Z kora9: jackdaniel: I think that was in the wikipedia article too 2017-08-10T14:39:55Z schweers: isn’t cl also somewhat descended from maclisp? 2017-08-10T14:40:26Z jackdaniel: well, cl is unification of many other lisps (maclisp included) 2017-08-10T14:40:30Z jackdaniel: that's why it's "common" 2017-08-10T14:40:51Z schweers: sounds right 2017-08-10T14:42:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T14:42:18Z damke quit (Read error: Connection reset by peer) 2017-08-10T14:42:22Z kora9: I thought Common Lisp was for commoners, and that after I got good I changed to Aristocratic Lisp 2017-08-10T14:42:35Z schweers: lol 2017-08-10T14:42:36Z jackdaniel: schweers: regarding around methods and such on normal functions, some CL vendors have extensions for that. It's called advice 2017-08-10T14:42:42Z jackdaniel: defadvice. I think LispWorks has that 2017-08-10T14:42:56Z schweers: too bad I don’t have lispworks :/ 2017-08-10T14:43:11Z kora9: I look at the pricing for LispWorks! Damn! 2017-08-10T14:43:15Z schweers: even if I did: it would make it non-portable 2017-08-10T14:43:31Z schweers: yeah, I wonder if allegro CL and lispworks are worth the money 2017-08-10T14:43:45Z whoman: schweers, these days elisp is quite good, though =) pcase, threads, lexical scope, record types 2017-08-10T14:43:48Z jackdaniel: it seems that ccl has it too 2017-08-10T14:43:49Z dlowe: The allegro pricing is way crazier 2017-08-10T14:43:59Z kora9: Yeah? 2017-08-10T14:44:00Z schweers: dlowe: yeah I know 2017-08-10T14:44:01Z dlowe: though they have a good reason 2017-08-10T14:44:07Z jackdaniel: yeah, allegro wants royalty for each sold program 2017-08-10T14:44:07Z kora9: dlowe: What are those? 2017-08-10T14:44:18Z damke joined #lisp 2017-08-10T14:44:25Z dlowe: they sell to the military and can't offer different terms to govt and private sectors 2017-08-10T14:44:31Z schweers: whoman: I know, but it is still massively inferior to CL 2017-08-10T14:44:37Z kora9: dlowe: military uses lisp?! 2017-08-10T14:44:38Z schweers: they can’t? 2017-08-10T14:44:41Z whoman: why though? =) 2017-08-10T14:44:46Z terpri quit (Quit: Leaving) 2017-08-10T14:44:50Z dlowe: kora9: the CL spec was bankrolled by the military :p 2017-08-10T14:45:00Z kora9: dlowe: Waht. Why/how/for what? :D 2017-08-10T14:45:09Z dlowe: how do you think we got the alien technology 2017-08-10T14:45:12Z whoman: hehe 2017-08-10T14:45:13Z schweers: whoman: missing condition system, multiple-values, multithreading, CLOS like stuff bolted-on to the side, the list goes on 2017-08-10T14:45:35Z kora9: dlowe: Oh, Area 51! This is all starting to make sense now, all the parentheses, the strange syntax that's unlike other languages 2017-08-10T14:45:39Z whoman: schweers, multithreading isnt part of the CL spec though? elisp has that now, with yield and all. makes sense on multiple-values though hmm. 2017-08-10T14:45:43Z kora9: dlowe: Made in the 50's! 2017-08-10T14:45:59Z schweers: whoman: I know, still, threading is something that most CL implementations have 2017-08-10T14:46:02Z jackdaniel: OK, I'm too slow reader to keep up, see you o/ 2017-08-10T14:46:06Z schweers: I haven’t looked at yield yet 2017-08-10T14:46:18Z whoman: C-h i C-s thread 2017-08-10T14:46:20Z jackdaniel: yield is green threads thing 2017-08-10T14:46:21Z kora9: dlowe: What's Lisp used for in the military? 2017-08-10T14:46:26Z whoman: er in emacs lisp programming section 2017-08-10T14:46:33Z dlowe: anyway, if I were selling CL programs, I would really consider getting lispworks 2017-08-10T14:46:42Z whoman: kora9, back in the day, lots of AI stuff 2017-08-10T14:46:44Z dlowe: it's not a great price for a hobbyist, but it's fine for a business 2017-08-10T14:46:54Z kora9: whoman: Oh. And these days? 2017-08-10T14:47:04Z schweers: kora9: I guess legacy systems ;) 2017-08-10T14:47:15Z warweasle joined #lisp 2017-08-10T14:47:23Z jackdaniel: I think that commercial CL vendors are in disadventage due to smaller support from ecosystem 2017-08-10T14:47:34Z dlowe: the military doesn't really share their lisp experiences with the public 2017-08-10T14:47:37Z jackdaniel: most developers can't afford LW or ACL, so they don't make software portable for them 2017-08-10T14:47:46Z jackdaniel: if they use not portable features 2017-08-10T14:48:10Z dlowe: if you can't afford LW as a business expense, your business is not doing well 2017-08-10T14:48:20Z kora9: dlowe: I guess open source defense isn't something they're into :) 2017-08-10T14:48:36Z jackdaniel: dlowe: my point is, that even if you can afford it, you don't have good support for lets say usocket, on which something else depends 2017-08-10T14:48:48Z jackdaniel: because usocket developer (for instance, don't know for sure), doesn't have business 2017-08-10T14:49:00Z jackdaniel: so he's not interested in buying lw just to port usocket for it 2017-08-10T14:49:07Z jackdaniel: s/for/to/ 2017-08-10T14:49:17Z dlowe: jackdaniel: true. You lose a lot of your open source support and gain support from the lispworks company itself 2017-08-10T14:49:21Z jackdaniel: so it's a matter of free labor, commercial vendors doesn't benefit from it that much 2017-08-10T14:50:04Z jackdaniel: yes, but that might be an obstacle in developing software, so in *some* scenarios, even if you could afford LW, it might be wiser to pick SBCL or CCL 2017-08-10T14:50:09Z schweers: I’m often amazed how many libraries claim to work on LW or even ACL 2017-08-10T14:50:15Z schweers: I often wonder how they test it 2017-08-10T14:50:25Z jackdaniel: there are people who port them and issue pull requests 2017-08-10T14:50:30Z whoman: personal versions 2017-08-10T14:50:36Z jackdaniel: I'm not saying that they are ignored completely 2017-08-10T14:51:02Z schweers: I didn’t think you were saying that, I wonder how people port it 2017-08-10T14:51:14Z schweers: maybe they have access to those at work? 2017-08-10T14:51:31Z jackdaniel: some business do contribute to open source 2017-08-10T14:51:37Z schweers: I know 2017-08-10T14:51:37Z jackdaniel: so they may do it at their work time 2017-08-10T14:53:24Z schweers: whoman: when was yield added to emacs? 2017-08-10T14:53:27Z schweers: 25.2? 2017-08-10T14:53:35Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-10T14:53:58Z quazimodo quit (Ping timeout: 255 seconds) 2017-08-10T14:55:05Z whoman: not sure, could be 26 2017-08-10T14:55:14Z schweers: ah, so not released yet 2017-08-10T14:55:14Z whoman: im running off current git 2017-08-10T14:55:20Z schweers: that explains why I can’t find it 2017-08-10T14:55:38Z whoman: record types are nice too, makes cl-defclass real 2017-08-10T14:55:54Z schweers: how so? 2017-08-10T14:56:08Z schweers: EIEIO had defclass before, right? 2017-08-10T14:56:37Z damke_ joined #lisp 2017-08-10T14:59:13Z damke quit (Ping timeout: 246 seconds) 2017-08-10T15:00:48Z strelox joined #lisp 2017-08-10T15:04:12Z rippa joined #lisp 2017-08-10T15:05:32Z brendos quit (Ping timeout: 260 seconds) 2017-08-10T15:09:33Z _cosmonaut_ joined #lisp 2017-08-10T15:14:29Z cross joined #lisp 2017-08-10T15:14:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T15:15:19Z schweers quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-10T15:17:10Z FreeBirdLjj joined #lisp 2017-08-10T15:17:28Z _cosmonaut_ quit (Ping timeout: 276 seconds) 2017-08-10T15:17:48Z damke_ joined #lisp 2017-08-10T15:19:33Z kora9 left #lisp 2017-08-10T15:20:57Z random-nick quit (Remote host closed the connection) 2017-08-10T15:25:08Z neoncontrails joined #lisp 2017-08-10T15:25:25Z random-nick joined #lisp 2017-08-10T15:25:59Z damke joined #lisp 2017-08-10T15:27:45Z fl00fykittry left #lisp 2017-08-10T15:28:04Z damke_ quit (Ping timeout: 258 seconds) 2017-08-10T15:28:09Z foom2 is now known as foom 2017-08-10T15:30:01Z mishoo joined #lisp 2017-08-10T15:30:32Z whoman: schweers(quit), yeah, they were just lists, but now like erlang, elisp has special record tags for structs and classes 2017-08-10T15:30:41Z whoman: i forget the exact terminology 2017-08-10T15:31:51Z dyelar joined #lisp 2017-08-10T15:31:57Z shiranuidong quit (Remote host closed the connection) 2017-08-10T15:32:03Z phoe: whoman: you can send a memo to him if he quit 2017-08-10T15:32:11Z phoe: minion: memo for whoman: just like this 2017-08-10T15:32:12Z minion: Remembered. I'll tell whoman when he/she/it next speaks. 2017-08-10T15:32:40Z damke_ joined #lisp 2017-08-10T15:35:01Z damke quit (Ping timeout: 240 seconds) 2017-08-10T15:35:42Z goosnargh joined #lisp 2017-08-10T15:36:24Z whoman: minion: memo for schweers: yeah EIEIO and cl-lib it was all just lists. but now like erlang, elisp has special record tags for structs and classes. http://lists.gnu.org/archive/html/emacs-devel/2017-03/msg00813.html 2017-08-10T15:36:24Z minion: Remembered. I'll tell schweers when he/she/it next speaks. 2017-08-10T15:36:24Z minion: whoman, memo from phoe: just like this 2017-08-10T15:36:31Z whoman: =) ty ty 2017-08-10T15:39:33Z ryanwatkins joined #lisp 2017-08-10T15:40:11Z goosnargh quit (Ping timeout: 255 seconds) 2017-08-10T15:42:10Z d4ryus1 joined #lisp 2017-08-10T15:45:05Z d4ryus quit (Ping timeout: 240 seconds) 2017-08-10T15:47:50Z AxelAlex quit (Quit: AxelAlex) 2017-08-10T15:49:29Z smazga joined #lisp 2017-08-10T15:51:58Z phoe: as for the Github/StackOverflow graphic: I was wrong! 2017-08-10T15:51:59Z phoe: http://sogrady-media.redmonk.com/sogrady/files/2017/03/lang.rank_.117.wm_.png 2017-08-10T15:52:30Z phoe: the 2014 graphic had an error, they weren't counting CL questions correctly. Please see https://www.reddit.com/r/lisp/comments/6sspnm/i_guess_common_lisp_programmers_dont_really_like/dlfgygr/ (and perhaps upvote it a bit) 2017-08-10T15:54:25Z farthVader91 joined #lisp 2017-08-10T15:59:00Z farthVader91 quit (Ping timeout: 260 seconds) 2017-08-10T16:00:05Z shka: oh 2017-08-10T16:00:11Z shka: so there is more D projects? 2017-08-10T16:00:32Z shka: perhaps this language is not lost, then 2017-08-10T16:01:37Z shka: dast is not dead 2017-08-10T16:01:43Z shka: that is interesting 2017-08-10T16:01:53Z random-nick: I think the ranking is number of pull requests, not number of projects 2017-08-10T16:02:06Z shka: aah, you are right! 2017-08-10T16:02:17Z shka: and it makes a lot more sense 2017-08-10T16:02:57Z shka: that also explains smalltalk position 2017-08-10T16:03:07Z sellout- quit (Quit: Leaving.) 2017-08-10T16:03:15Z LiamH joined #lisp 2017-08-10T16:04:05Z strelox quit (Ping timeout: 240 seconds) 2017-08-10T16:04:11Z Xach: worlds collide - sogrady is a local maine pal. 2017-08-10T16:04:20Z shka: Xach: ? 2017-08-10T16:04:35Z Xach: shka: the "sogrady" in sogrady-media. he runs redmonk also. 2017-08-10T16:04:41Z shka: ah 2017-08-10T16:04:56Z shka: well, got to go home 2017-08-10T16:05:03Z shka: got to go 2017-08-10T16:05:09Z shka: see ya later 2017-08-10T16:08:18Z Karl_Dscc joined #lisp 2017-08-10T16:11:22Z Karl_Dscc quit (Remote host closed the connection) 2017-08-10T16:12:55Z wooden quit (Read error: Connection reset by peer) 2017-08-10T16:13:52Z emacsomancer quit (Remote host closed the connection) 2017-08-10T16:17:38Z wooden joined #lisp 2017-08-10T16:20:45Z neoncontrails quit (Remote host closed the connection) 2017-08-10T16:21:23Z neoncontrails joined #lisp 2017-08-10T16:21:39Z basket joined #lisp 2017-08-10T16:25:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T16:25:57Z neoncontrails quit (Ping timeout: 258 seconds) 2017-08-10T16:26:44Z scymtym quit (Read error: No route to host) 2017-08-10T16:27:02Z elfmacs joined #lisp 2017-08-10T16:28:56Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-10T16:29:37Z papachan joined #lisp 2017-08-10T16:35:38Z Th30n quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-10T16:36:27Z goosnargh joined #lisp 2017-08-10T16:41:05Z goosnargh quit (Ping timeout: 248 seconds) 2017-08-10T16:43:41Z elfmacs quit (Quit: WeeChat 1.9) 2017-08-10T16:47:17Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-10T16:47:20Z karswell joined #lisp 2017-08-10T16:47:20Z malice` joined #lisp 2017-08-10T16:47:51Z happy-dude quit (Quit: Connection closed for inactivity) 2017-08-10T16:48:11Z jasom: Is there a good library that implements stream-like objects with more than one character of lookahead? 2017-08-10T16:51:10Z warweasle: jasom: Would regular expressions work? 2017-08-10T16:51:13Z axion: Have you tried fast-io? I use it to buffer big blocks of memory at a time to then parse with arbitrary reads 2017-08-10T16:51:42Z Shinmera: You can have arbitrary lookahead by replacing the stream with a concatenated-stream whenever you need to unread. 2017-08-10T16:51:50Z jasom: axion: oh, that's not a bad idea. I'm not super concerned with performance, it would just be nice to do N UNREAD-CHARs 2017-08-10T16:52:50Z jasom: Shinmera: right, I've made a half-assed version of it a few times, I was wondering if I should make a library, or if someone else has already done so. 2017-08-10T16:53:38Z Shinmera: Also, on SBCL at least, you can unread multiple times if you get lucky. 2017-08-10T16:53:46Z warweasle: jasom: If you want to swat a fly with a cannon, you can always make your own gray streams. 2017-08-10T16:53:50Z axion: I have a really old function with seeking of streams 2017-08-10T16:53:51Z Shinmera: Even though that's against the spec. 2017-08-10T16:54:32Z warweasle: Shinmera: Unless you are dealing with huge data, I like alexandria:read-file-into-string 2017-08-10T16:54:47Z Shinmera: warweasle: ? 2017-08-10T16:55:30Z dddddd joined #lisp 2017-08-10T16:55:44Z damke_ joined #lisp 2017-08-10T16:55:46Z warweasle: Shinmera: Use the alexandria library, function read-file-into-stream. Or read-stream-content-into-string, depending. It's much faster and can usually read all I need. 2017-08-10T16:55:58Z Shinmera: Uh, ok. Why are you telling me this? 2017-08-10T16:56:12Z warweasle: Shinmera: Well, that's reading everything ahead. 2017-08-10T16:56:42Z Shinmera: I'm not the one that asked the question initially. 2017-08-10T16:57:02Z warweasle: Shinmera: Sorry, to jasom then. 2017-08-10T16:57:57Z Shinmera: FWIW, in Plump I also read everything into a simple-string first because dealing with the unreading logic otherwise would've been too messy. 2017-08-10T16:58:04Z shka_ joined #lisp 2017-08-10T16:59:50Z axion: I use fast-io to do all the buffering and advancing the pointer automatically without any backtracking, but I only really do binary parsing so quite different than textual stuff. 2017-08-10T16:59:51Z dansa joined #lisp 2017-08-10T16:59:59Z Shinmera: I also based that decision on the assumption that doing a stream-based approach would've been slower overall. 2017-08-10T17:00:10Z Shinmera: I have no practical data to back that up with, of course. 2017-08-10T17:00:29Z defaultxr joined #lisp 2017-08-10T17:01:50Z pjb joined #lisp 2017-08-10T17:02:09Z dansa: Hi there. Newbie here. I'm back having SLIME and SBCL running just fine. The little I had been able to do with CLISP doesn't seem to work with SBCL now. I'm at SBCL prompt at this moment. I loaded cl-who, hunchentoot and parenscript with quicklisp. (They load fine.) I then type (in-package :retro-games) and I get # as a response. (I'm following up the lispweb.pdf tutorial by Adam.) Then trying (defvar 2017-08-10T17:02:09Z dansa: many-lost-hours (make-instance 'game :name "Tetris")) yields ``There is no class named RETRO-GAMES::GAME.'' What's up? 2017-08-10T17:02:34Z damke joined #lisp 2017-08-10T17:02:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T17:02:47Z Bike: well, is there such a class? 2017-08-10T17:03:20Z Bike: you mean http://www.adamtornhill.com/articles/lispweb.htm right? 2017-08-10T17:03:30Z Bike: did you run the defclass before you ran the defvar? 2017-08-10T17:03:36Z axion: Well why is the symbol qualified/unexported is another good question 2017-08-10T17:04:19Z Bike: because the package isn't defined with any exports. it's just to work in. 2017-08-10T17:04:38Z Bike: i think sbcl is extra explicit about packages in that kind of error. 2017-08-10T17:05:09Z dansa: Hang on. I'm gonna run the attempt from scratch. Be right back. 2017-08-10T17:05:15Z dansa quit (Remote host closed the connection) 2017-08-10T17:05:53Z Bike: why does... that require quitting irc 2017-08-10T17:05:55Z axion: I'm guessing he doesn't know how to restart inferior lisp instead of Emacs? 2017-08-10T17:06:06Z raynold joined #lisp 2017-08-10T17:06:28Z Shinmera: just hit the power switch 2017-08-10T17:07:26Z dansa joined #lisp 2017-08-10T17:08:06Z dansa: Bike, so yes, the class exists, but I'm not sure the class exists inside the package retro-games. I'm doing C-x C-e in the class from retro-games.lisp, but maybe it loads outside the package? 2017-08-10T17:08:19Z damke_ joined #lisp 2017-08-10T17:08:23Z dansa: (How can I load the file entirely from within SLIME?) 2017-08-10T17:09:10Z dansa: (I'm actually doing C-x C-e at the end of the class definition.) 2017-08-10T17:09:12Z axion: Did you set up Quicklisp yet, or are you very new? 2017-08-10T17:09:20Z dansa: I did set it up. It loads fine. 2017-08-10T17:09:30Z axion: One normally doesn't load files explicitly, but systems instead. 2017-08-10T17:09:32Z dansa: But I'm very new. 2017-08-10T17:09:33Z Bike: dansa: do you do C-x C-e after (in-package :retro-games)? 2017-08-10T17:09:45Z Bike: axion: retro-games is not an external system, the tutorial writes it as it goes 2017-08-10T17:10:02Z damke quit (Ping timeout: 258 seconds) 2017-08-10T17:10:15Z dansa: (in-package ...) is the penultimate thing I do. (The last thing is (make-instance ...)). 2017-08-10T17:10:16Z axion: Aha 2017-08-10T17:11:13Z damke joined #lisp 2017-08-10T17:12:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-10T17:13:39Z EvW joined #lisp 2017-08-10T17:14:03Z axion: You should be running the defclass after in-package and before make-instance as the web site instructs 2017-08-10T17:14:18Z dansa: That's perfectly right. I just discovered that. It's my fault completely. I'm doing things in the wrong order. Sorry about that. 2017-08-10T17:14:52Z dansa: Let me ask this then: to save my work in a file, how can I load that file easily from within SLIME so I can continue my studying say tomorrow? 2017-08-10T17:15:35Z axion: C-c C-k 2017-08-10T17:15:44Z oleo quit (Read error: Connection reset by peer) 2017-08-10T17:16:33Z Bike: that will actually compile it and then load it, but that's basically the same almost all of the time 2017-08-10T17:16:40Z dansa: Beautiful. Thanks! 2017-08-10T17:19:01Z damke quit (Ping timeout: 240 seconds) 2017-08-10T17:19:25Z dansa: The first line in my file is (ql:quickload '(cl-who ...)). Compilation fails because it says CL-WHO doesn't designate any package. If I type the line manually at the REPL, it loads fine, then C-c C-k works fine. 2017-08-10T17:20:00Z Bike: ok, that's one of the times it does matter 2017-08-10T17:20:12Z Bike: do C-c C-l instead 2017-08-10T17:20:14Z Bike: that's an actual load 2017-08-10T17:21:03Z oleo joined #lisp 2017-08-10T17:21:11Z dim: then make your project a QL'oadable one, adding an asdf definition (a project.asd file), so that next time you just (ql:quickload "yourproject") 2017-08-10T17:21:31Z damke joined #lisp 2017-08-10T17:21:52Z dansa: C-c C-l works. I see. Will look into the asdf definition. Thanks for saying that. 2017-08-10T17:22:13Z dim: see https://www.xach.com/lisp/quickproject/ 2017-08-10T17:22:29Z akkad has come to really love the sbcl/ql in a very restricted work environment where a locked down laptop can be very useful when doing everything inside the image/repl 2017-08-10T17:23:15Z dansa: Why am I told this when I load my retro-games.lisp? WARNING: Implicitly creating new generic function COMMON-LISP-USER::VOTE-FOR. 2017-08-10T17:23:43Z dansa: I define the method right after I define the class. 2017-08-10T17:24:36Z Bike quit (Ping timeout: 258 seconds) 2017-08-10T17:25:09Z axion: Because you created a method with no generic function 2017-08-10T17:25:22Z Bike joined #lisp 2017-08-10T17:25:32Z basket: dansa: It wants you to have a DEFGENERIC form first. DEFMETHOD defines a specialised version of a generic function, and it's warning you that it's implicitly creating a generic function for your method to specialise 2017-08-10T17:26:24Z vlatkoB_ joined #lisp 2017-08-10T17:28:09Z dansa: Interesting. I understand little of that, but I get what's up. I'm following lispweb.pdf. Adam didn't defgeneric first. I guess I can igore that for the moment. I will read a book on CLOS and everything. I'm just making sure I have a working system. (With CLISP I didn't make to get hunchentoot to serve. The start function worked, it listened on the right port, but the webserver didn't actually answer, all requests timed out --- 2017-08-10T17:28:09Z dansa: windows 8.) 2017-08-10T17:28:18Z axion: I really suggest that you start with Practical Common Lisp 2017-08-10T17:28:38Z dansa: Sounds good. I got a recommendation on this direction already. 2017-08-10T17:28:45Z axion: And ditch clisp 2017-08-10T17:29:16Z dansa: Ditched! :-) 2017-08-10T17:29:29Z dansa: Hey, hunchentoot works for me! 2017-08-10T17:29:33Z basket: dansa: You could read the warning as "warning: there's no generic function by that name, implicitly creating one, but are you sure that wasn't a typo in the method name?". If you spelt it right, your program will work fine; if you have a DEFGENERIC before that, it won't bother you about it 2017-08-10T17:29:42Z jackdaniel: and make a payment at account no 0000 1111 … ;) 2017-08-10T17:30:11Z dansa: ``When you're reading this message, Hunchentoot has been properly installed.'' Beautiful. (Thanks, basket.) 2017-08-10T17:30:38Z scymtym joined #lisp 2017-08-10T17:30:38Z dansa: jackdaniel: sending namecoins to it... :P 2017-08-10T17:30:47Z vlatkoB quit (Ping timeout: 260 seconds) 2017-08-10T17:31:41Z dansa: I even have an ``access_log'' on my standard-out. Stoked! 2017-08-10T17:32:12Z dansa: It also releases my REPL so I can continue my work. 2017-08-10T17:32:16Z dansa: CLISP didn't do that. 2017-08-10T17:34:07Z francogrex joined #lisp 2017-08-10T17:34:21Z emaczen joined #lisp 2017-08-10T17:34:37Z jackdaniel: it's probably because you have clisp build without multithreading 2017-08-10T17:34:53Z dansa: Makes sense. 2017-08-10T17:35:00Z jackdaniel: spawning repl while having software run requires threads 2017-08-10T17:36:10Z dansa: I think Stallman would say we should stay with CLISP because it's GPLed. He says it's better to have a GPL software without threads than anything else more powerful --- even if it's BSD, I guess. 2017-08-10T17:37:12Z goosnargh joined #lisp 2017-08-10T17:37:17Z dim: most lisp software I've seen is licensed with MIT or the like 2017-08-10T17:37:20Z Bike: apparently you can build clisp --with-threads. experimental tho. 2017-08-10T17:38:18Z francogrex: clisp is very neat. I especially like the stepper 2017-08-10T17:39:08Z damke quit (Read error: Connection reset by peer) 2017-08-10T17:40:28Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-10T17:40:35Z francogrex quit (Quit: leaving) 2017-08-10T17:41:27Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-10T17:43:42Z jackdaniel: dansa: ECL is LGPLv2+ ,-) 2017-08-10T17:47:38Z goosnargh joined #lisp 2017-08-10T17:49:45Z rpg joined #lisp 2017-08-10T17:51:12Z shka_ quit (Quit: Konversation terminated!) 2017-08-10T17:51:24Z shka_ joined #lisp 2017-08-10T17:55:04Z BitPuffin|osx quit (Remote host closed the connection) 2017-08-10T17:55:52Z shka_ quit (Ping timeout: 260 seconds) 2017-08-10T17:57:16Z varjag quit (Ping timeout: 260 seconds) 2017-08-10T17:58:13Z emaczen: I have a script that will first create/overwrite a system and then load that system. The problem I am having is that it doesn't seem to load the new changes made by creating/overwriting the system. 2017-08-10T17:59:41Z Colleen quit (Quit: Colleen) 2017-08-10T18:01:16Z varjag joined #lisp 2017-08-10T18:02:58Z Xach: emaczen: maybe try (asdf:clear-system "the-system") first? 2017-08-10T18:05:03Z Colleen joined #lisp 2017-08-10T18:08:54Z emaczen: Xach: Alright, give me a second to try that out 2017-08-10T18:14:09Z gremdrus joined #lisp 2017-08-10T18:18:20Z random-nick quit (Remote host closed the connection) 2017-08-10T18:26:26Z PinealGlandOptic joined #lisp 2017-08-10T18:26:37Z Kyo91 quit (Ping timeout: 276 seconds) 2017-08-10T18:29:10Z emaczen: Xach: I tried that and asdf:clear-configuration without success... 2017-08-10T18:29:41Z Xach: emaczen: how would you be able to tell if it worked as you want? 2017-08-10T18:30:20Z jackdaniel: emaczen: if it is called from inside lisp, you can force it by calling (asdf:load-asd "/my/system.asd") 2017-08-10T18:30:44Z emaczen: Xach: I can see the attributes of the older code 2017-08-10T18:30:59Z Kyo91 joined #lisp 2017-08-10T18:30:59Z Xach: emaczen: like what? 2017-08-10T18:31:20Z emaczen: Xach: the CSS on a webpage 2017-08-10T18:31:39Z Xach: emaczen: how is that css defined? 2017-08-10T18:31:50Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-10T18:32:33Z emaczen: Xach: some lisp functions -- I am just seeing what I had previously before I made some changes 2017-08-10T18:32:59Z jackdaniel: if it is stored in defvar variable, then reloading system won't modify it 2017-08-10T18:33:26Z jackdaniel: so system may get reloaded, but image may have something what is persistant across reloads 2017-08-10T18:35:50Z emaczen: jackdaniel: I don't have any defvars 2017-08-10T18:37:48Z jackdaniel: that was an example 2017-08-10T18:38:30Z emaczen: what about asdf:clear-source-regsitry? 2017-08-10T18:38:59Z jackdaniel: emaczen: to verify, if your asd loads, when you overwrite the system put (error "foo") in asd file 2017-08-10T18:39:15Z jackdaniel: if it loads fine, then you'll be sure that it is not picked up 2017-08-10T18:42:19Z serviteur joined #lisp 2017-08-10T18:43:52Z francogrex joined #lisp 2017-08-10T18:43:56Z francogrex left #lisp 2017-08-10T18:46:16Z prxq joined #lisp 2017-08-10T18:50:15Z borodust joined #lisp 2017-08-10T18:51:04Z Reinisch quit (Quit: Have a great day!) 2017-08-10T18:52:16Z random-nick joined #lisp 2017-08-10T18:52:21Z prxq quit (Remote host closed the connection) 2017-08-10T18:59:08Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-10T19:00:43Z varjag quit (Remote host closed the connection) 2017-08-10T19:01:00Z varjag joined #lisp 2017-08-10T19:01:39Z attila_lendvai joined #lisp 2017-08-10T19:04:56Z fsmunoz joined #lisp 2017-08-10T19:11:28Z vicfred joined #lisp 2017-08-10T19:15:21Z vicfred quit (Quit: Leaving) 2017-08-10T19:16:18Z vlatkoB_ quit (Remote host closed the connection) 2017-08-10T19:18:53Z Kyo91 joined #lisp 2017-08-10T19:20:10Z dansa: What's the graceful way of restarting the SLIME/SBCL REPL? I usually do C-c C-d, but the system complains: ``Lisp connection closed unexpectedly: connection broken by remote peer''. 2017-08-10T19:21:36Z Bike: uh... i don't even have that binding 2017-08-10T19:21:54Z Bike: well, i do M-x slime-restart-inferior-lisp, also accessible as , restart-inferior-lisp 2017-08-10T19:24:08Z basket: I invoke it as ,rest 2017-08-10T19:29:01Z gravicappa quit (Ping timeout: 276 seconds) 2017-08-10T19:29:27Z random-nick quit (Remote host closed the connection) 2017-08-10T19:31:47Z milanj quit (Quit: This computer has gone to sleep) 2017-08-10T19:33:01Z phoe quit (Ping timeout: 258 seconds) 2017-08-10T19:33:18Z phoe joined #lisp 2017-08-10T19:35:21Z random-nick joined #lisp 2017-08-10T19:37:45Z vtomole joined #lisp 2017-08-10T19:44:05Z fkac quit (Remote host closed the connection) 2017-08-10T19:47:01Z vtomole quit (Quit: Page closed) 2017-08-10T19:48:04Z fkac joined #lisp 2017-08-10T19:49:27Z marvin2 joined #lisp 2017-08-10T19:53:07Z DingoSaar_ joined #lisp 2017-08-10T19:56:05Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-10T19:56:27Z DingoSaar quit (Ping timeout: 240 seconds) 2017-08-10T20:00:37Z dansa quit (Remote host closed the connection) 2017-08-10T20:04:40Z sz0 joined #lisp 2017-08-10T20:12:50Z DingoSaar_ is now known as DingoSaar 2017-08-10T20:14:43Z francogrex joined #lisp 2017-08-10T20:15:58Z karswell quit (Remote host closed the connection) 2017-08-10T20:16:07Z francogrex left #lisp 2017-08-10T20:23:42Z Achylles joined #lisp 2017-08-10T20:26:35Z rpg quit (Ping timeout: 240 seconds) 2017-08-10T20:30:52Z emacsoma` quit (Remote host closed the connection) 2017-08-10T20:38:33Z malice` quit (Remote host closed the connection) 2017-08-10T20:39:01Z DingoSaar quit (Remote host closed the connection) 2017-08-10T20:40:29Z DingoSaar joined #lisp 2017-08-10T20:47:12Z fkac quit (Quit: Back soon!) 2017-08-10T20:48:15Z yeticry joined #lisp 2017-08-10T20:48:23Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-10T20:51:13Z yeticry_ quit (Ping timeout: 248 seconds) 2017-08-10T20:54:41Z Karl_Dscc joined #lisp 2017-08-10T20:54:42Z aeth: I use it as M-x s-r-i-l, but that might name conflict depending on what you have installed 2017-08-10T20:56:05Z xristos joined #lisp 2017-08-10T21:02:30Z Kyo91_ joined #lisp 2017-08-10T21:03:31Z sdemarre quit (Quit: Leaving.) 2017-08-10T21:04:46Z Bike quit (Ping timeout: 255 seconds) 2017-08-10T21:04:58Z Kyo91 quit (Ping timeout: 246 seconds) 2017-08-10T21:07:41Z whoma1 joined #lisp 2017-08-10T21:08:53Z papachan quit (Quit: Saliendo) 2017-08-10T21:09:27Z whoman quit (Ping timeout: 240 seconds) 2017-08-10T21:10:00Z grouzen joined #lisp 2017-08-10T21:11:50Z quazimodo joined #lisp 2017-08-10T21:15:09Z DingoSaar quit (Remote host closed the connection) 2017-08-10T21:15:54Z DingoSaar joined #lisp 2017-08-10T21:19:00Z basket` joined #lisp 2017-08-10T21:26:13Z knicklux quit (Remote host closed the connection) 2017-08-10T21:29:52Z random-nick quit (Remote host closed the connection) 2017-08-10T21:30:49Z grouzen quit (Ping timeout: 255 seconds) 2017-08-10T21:32:06Z rpg joined #lisp 2017-08-10T21:32:56Z sellout- joined #lisp 2017-08-10T21:34:31Z quazimodo quit (Read error: Connection reset by peer) 2017-08-10T21:34:47Z quazimodo joined #lisp 2017-08-10T21:35:14Z oleo quit (Ping timeout: 255 seconds) 2017-08-10T21:35:41Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-08-10T21:39:49Z random-nick joined #lisp 2017-08-10T21:39:57Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-10T21:40:46Z sellout- quit (Quit: Leaving.) 2017-08-10T21:45:59Z angavrilov quit (Remote host closed the connection) 2017-08-10T21:48:30Z Achylles quit (Ping timeout: 240 seconds) 2017-08-10T21:49:03Z MetaHertz joined #lisp 2017-08-10T21:50:22Z Kyo91_ quit (Ping timeout: 260 seconds) 2017-08-10T21:52:54Z Karl_Dscc quit (Remote host closed the connection) 2017-08-10T21:55:38Z anticrisis joined #lisp 2017-08-10T22:06:17Z fkac joined #lisp 2017-08-10T22:06:28Z varjag quit (Ping timeout: 260 seconds) 2017-08-10T22:08:34Z setheus quit (Ping timeout: 240 seconds) 2017-08-10T22:09:42Z dyelar quit (Quit: Leaving.) 2017-08-10T22:10:22Z Bike joined #lisp 2017-08-10T22:15:22Z Jesin quit (Quit: Leaving) 2017-08-10T22:16:54Z Achylles joined #lisp 2017-08-10T22:18:06Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-10T22:22:09Z DingoSaar quit (Remote host closed the connection) 2017-08-10T22:23:27Z DingoSaar joined #lisp 2017-08-10T22:27:28Z mishoo quit (Ping timeout: 260 seconds) 2017-08-10T22:33:37Z quazimodo quit (Ping timeout: 248 seconds) 2017-08-10T22:34:54Z DingoSaar quit (Remote host closed the connection) 2017-08-10T22:35:35Z pillton: This seems broken: https://gitlab.common-lisp.net/asdf/asdf/blob/master/uiop/image.lisp#L256 2017-08-10T22:35:39Z DingoSaar joined #lisp 2017-08-10T22:37:12Z pillton: What is a proper wrapper script? 2017-08-10T22:37:52Z rumbler31 joined #lisp 2017-08-10T22:38:28Z pillton: sbcl --eval '(print (uiop:argv0))' prints nil. 2017-08-10T22:38:55Z rumbler31 quit (Remote host closed the connection) 2017-08-10T22:39:11Z rumbler31 joined #lisp 2017-08-10T22:40:04Z flazh quit (Ping timeout: 240 seconds) 2017-08-10T22:40:50Z random-nick quit (Remote host closed the connection) 2017-08-10T22:44:33Z ebzzry joined #lisp 2017-08-10T22:48:56Z whoma1 is now known as whoman 2017-08-10T22:57:27Z hhdave joined #lisp 2017-08-10T22:58:23Z _cosmonaut_ joined #lisp 2017-08-10T23:00:49Z rpg: pillton: There's something odd in that docstring. The string returned has some undefined relationship to argv. 2017-08-10T23:01:51Z rpg: Or maybe it's just supposed to be "a string for the name with which the program was invoked." I'm not sure I like the idea of it returning NIL, either. Seems to me it should be an error condition if it would return nil. 2017-08-10T23:02:07Z hhdave quit (Ping timeout: 260 seconds) 2017-08-10T23:02:17Z Bike: pillton: in context it looks like a "proper wrapper script" is one that defines __CL_ARGV0 2017-08-10T23:02:34Z hhdave joined #lisp 2017-08-10T23:03:18Z cromachina joined #lisp 2017-08-10T23:04:06Z rpg: Bike: I'm pretty convinced that the last line should be (or (getenvp "__CL_ARGV0") (error ...)) 2017-08-10T23:04:48Z rpg: or actually GETENVP should be the COND test, and we should fall through to (T (ERROR ...)) 2017-08-10T23:10:29Z LiamH quit (Quit: Leaving.) 2017-08-10T23:11:22Z pillton: What problem does it solve? 2017-08-10T23:11:41Z pillton: (first (raw-command-line-arguments)) seems fine to me. 2017-08-10T23:14:00Z rpg: pillton: Perhaps best to drop a line to Fare -- it isn't possible to recover the intent from the source code and doc alone. 2017-08-10T23:15:33Z bigos joined #lisp 2017-08-10T23:17:56Z bigos quit (Client Quit) 2017-08-10T23:18:22Z Bike: it kind of seems like the point is the envp part 2017-08-10T23:18:48Z paul0 joined #lisp 2017-08-10T23:20:16Z rpg: Bike: in that case, it seems like either ARGV0 or COMMAND-LINE-ARGUMENTS is going to do The Wrong Thing, because they aren't consistent (at least they don't seem that way to me). 2017-08-10T23:20:34Z _paul0 quit (Ping timeout: 240 seconds) 2017-08-10T23:21:10Z rpg: I'm really sorry that ASDF ate image-building as part of its mission creep.... 2017-08-10T23:21:14Z safe joined #lisp 2017-08-10T23:21:27Z DingoSaar quit (Remote host closed the connection) 2017-08-10T23:21:40Z rpg: I think it sort of happened because otherwise working with ECL didn't make perfect sense, but the complexity incurred is huge. 2017-08-10T23:23:47Z _cosmonaut_ quit (Remote host closed the connection) 2017-08-10T23:24:06Z rpg: I also kind of wish we had a way for the underlying lisp implementation to provide some of these functions more directly than UIOP and #+.... 2017-08-10T23:25:01Z rpg: Something like: we'll look and see if you already have a UIOP package and if so, we'll take what you offer, and only supply our own if you (the implementation) don't. 2017-08-10T23:25:08Z DingoSaar joined #lisp 2017-08-10T23:25:17Z z3t0: what would it take to get commonqt to support qt5 2017-08-10T23:26:11Z DingoSaar quit (Client Quit) 2017-08-10T23:26:29Z text1 joined #lisp 2017-08-10T23:27:08Z whoman: $1000 2017-08-10T23:27:33Z pillton: rpg: It appears it tries to accommodate the three use cases: 1. Invoking the interpreter 2. She-bang scripts and 3. Dumped images. 2017-08-10T23:27:47Z pillton: It just fails for the first case. 2017-08-10T23:28:13Z pillton: And the second case if you don't use cl-launch. 2017-08-10T23:28:57Z safe quit (Ping timeout: 240 seconds) 2017-08-10T23:30:06Z pillton: I'll just use cl-launch from now on. 2017-08-10T23:34:10Z z3t0: whoman: i meant in terms of what would I need to do to work on commonqt to support qt5 2017-08-10T23:34:50Z hhdave quit (Quit: hhdave) 2017-08-10T23:39:57Z Kevslinger joined #lisp 2017-08-10T23:45:45Z dddddd quit (Remote host closed the connection) 2017-08-10T23:45:52Z mikecheck joined #lisp 2017-08-10T23:46:50Z pillton: Can cl-launch start an implementation in interactive mode? 2017-08-10T23:48:30Z ebzzry quit (Ping timeout: 240 seconds) 2017-08-10T23:50:40Z ebzzry joined #lisp 2017-08-10T23:53:42Z phinxy joined #lisp 2017-08-11T00:01:49Z brendos joined #lisp 2017-08-11T00:17:38Z anticrisis: Which cl-launch, https://gitlab.common-lisp.net//xcvb/cl-launch or https://github.com/fare/cl-launch ? 2017-08-11T00:18:13Z sellout- joined #lisp 2017-08-11T00:18:30Z EvW quit (Ping timeout: 240 seconds) 2017-08-11T00:19:22Z pillton: I used the one from quicklisp. 2017-08-11T00:19:47Z emaczen quit (Remote host closed the connection) 2017-08-11T00:21:25Z warweasle joined #lisp 2017-08-11T00:21:44Z anticrisis: I don't know why there are two. I don't know anything about them, I just googled it and found two by the same author. 2017-08-11T00:23:36Z rumbler31 quit (Remote host closed the connection) 2017-08-11T00:24:14Z rumbler31 joined #lisp 2017-08-11T00:25:09Z doesthiswork joined #lisp 2017-08-11T00:25:16Z smazga quit (Quit: leaving) 2017-08-11T00:25:19Z emaczen joined #lisp 2017-08-11T00:25:35Z daemoz quit (Remote host closed the connection) 2017-08-11T00:25:55Z daemoz joined #lisp 2017-08-11T00:26:33Z akkad hunts for examples of integrating slime-save into elisp code for calling out to sbcl for perf 2017-08-11T00:26:52Z whoman: o_o 2017-08-11T00:28:20Z akkad: yeah imagine my surprise to find sbcl a bit faster than emacs. :P 2017-08-11T00:28:34Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-11T00:30:04Z Achylles quit (Ping timeout: 240 seconds) 2017-08-11T00:30:59Z MrWoohoo quit (Read error: No route to host) 2017-08-11T00:32:24Z whoman: hehe =) what version of emacs btw? i am looking at Guile right now. 2017-08-11T00:34:07Z akkad: well rather than (async-shell-command "my-lisp-binary arg1 arg1") I'd rather have (slime-eval "(my-cl-function arg1 arg2 ...)") to avoid parsing output. 2017-08-11T00:34:55Z akkad: mostly using emacs for interactive interface. 2017-08-11T00:35:33Z emaczen quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-11T00:36:15Z whoman: also not having to load the sbcl/lisp image each time the command is run 2017-08-11T00:36:17Z junxit quit (Remote host closed the connection) 2017-08-11T00:36:47Z akkad: the binary is fast. just rather dispatch to slime session 2017-08-11T00:40:21Z Jesin joined #lisp 2017-08-11T00:40:56Z ebzzry quit (Ping timeout: 260 seconds) 2017-08-11T00:43:01Z ebzzry joined #lisp 2017-08-11T00:48:41Z akkad: like this (slime-eval-async '(cl-user::format nil "hi") #'(lambda (x) (message "in cl: %s" x))) 2017-08-11T00:53:58Z rumbler31 joined #lisp 2017-08-11T00:54:10Z ebzzry quit (Ping timeout: 240 seconds) 2017-08-11T00:54:13Z Kaisyu joined #lisp 2017-08-11T00:56:17Z ebzzry joined #lisp 2017-08-11T01:01:38Z nelder joined #lisp 2017-08-11T01:02:33Z nelder: hi all, can anybody say how can i change format of my string at this example --> http://dpaste.com/38GFS8R 2017-08-11T01:04:29Z quazimodo joined #lisp 2017-08-11T01:04:49Z nelder: i guss that i should paste something like '\n' but where and how? 2017-08-11T01:05:51Z Bike: ~% 2017-08-11T01:06:36Z quazimodo quit (Client Quit) 2017-08-11T01:06:54Z ted_ joined #lisp 2017-08-11T01:06:59Z quazimodo joined #lisp 2017-08-11T01:07:47Z phinxy quit (Read error: Connection reset by peer) 2017-08-11T01:13:10Z milanj joined #lisp 2017-08-11T01:15:04Z mikecheck quit (Quit: Leaving) 2017-08-11T01:15:06Z emaczen joined #lisp 2017-08-11T01:15:41Z milanj_ joined #lisp 2017-08-11T01:18:37Z milanj quit (Ping timeout: 260 seconds) 2017-08-11T01:19:06Z serviteur quit (Remote host closed the connection) 2017-08-11T01:20:21Z emaczen: I can't run my lisp executable as a background process -- I have no idea why that would be the case 2017-08-11T01:20:44Z emaczen: What I'm actually trying to accomplish is to keep the executable running after I logout of the server 2017-08-11T01:20:51Z emaczen: it doesn't work with nohup 2017-08-11T01:21:35Z emaczen: and it doesn't work by disowning and running the job in the background since it won't run in the background... 2017-08-11T01:21:35Z rpg: pillton: Thanks. I'll try to figure out what we should do about that. We're going to release a new ASDF pretty soon, so it's a good time to think about this. 2017-08-11T01:22:00Z emaczen: if I run the executable like: ./my-executable & 2017-08-11T01:22:07Z sjl: emaczen: probably implementation-specific. what implementation are you using, and what does "doesn't work" mean? 2017-08-11T01:22:16Z sjl: quits immediately? crashes? 2017-08-11T01:22:24Z emaczen: then press enter, it will usually say [1]+ Stopped ./my-executable 2017-08-11T01:25:50Z emaczen: sjl: does that answer your question? 2017-08-11T01:26:08Z sjl: emaczen: my question about which implementation you're using? nope. 2017-08-11T01:26:26Z emaczen: sbcl 2017-08-11T01:27:03Z glamas joined #lisp 2017-08-11T01:29:36Z pillton: It is probably holding on to *standard-input* or failing to print to *standard-output*. 2017-08-11T01:30:03Z sjl: yeah, if it ever tries to read from stdin it's probably not going to work 2017-08-11T01:30:12Z sjl: what happens if you do sbcl --eval '(progn (sleep 5) (print :done))' & 2017-08-11T01:30:35Z sjl: and then smash the enter key for five seconds so you can see when it prints/stops 2017-08-11T01:30:43Z emaczen: sjl: my executable is running hunchentoot 2017-08-11T01:31:01Z sjl: sure, but trying to narrow down the problem is generally a good place to start 2017-08-11T01:31:13Z emaczen: sjl: I'll try that 2017-08-11T01:31:15Z sjl: first: does SBCL with a really simple program work when running in the background? 2017-08-11T01:31:38Z sjl: that lets you bisect the issue to being either on the SBCL side or your program's side 2017-08-11T01:31:43Z pillton: From what I recall, hunchentoot runs the server on a different thread whilst the main thread waits for input. 2017-08-11T01:31:53Z pillton: Where input means terminal input. 2017-08-11T01:32:00Z emaczen: I also start a repl 2017-08-11T01:32:32Z pillton: What sort of REPL? 2017-08-11T01:33:11Z emaczen: sjl: it appears to work fine 2017-08-11T01:33:29Z emaczen: I think pillton is right about stdin/stdout 2017-08-11T01:33:42Z sjl: probably 2017-08-11T01:33:46Z emaczen: pillton: but I don't really understand why that is an issue 2017-08-11T01:33:51Z sjl: first google result for 'sbcl nohup' https://stackoverflow.com/questions/2458805/nohup-sbcl-ubuntu-couldnt-read-from-standard-input 2017-08-11T01:34:09Z emaczen: pillton: let me look at my code to determine the REPL 2017-08-11T01:35:11Z pillton: I'm pretty sure that if the main thread in SBCL terminates, all threads terminate too. 2017-08-11T01:35:24Z emaczen: My code calls (sb-impl::toplevel-repl nil) after it starts hunchentoot 2017-08-11T01:35:26Z pillton: I don't use threads so I can't check. 2017-08-11T01:36:07Z rumbler31 quit (Remote host closed the connection) 2017-08-11T01:36:36Z sjl: yeah so, the issue is probably: nohup redirects stdin to come from /dev/null or something, your repl tries to read from stdin and sees its closed and quits, and since the repl is in the main thread everything else quits as well 2017-08-11T01:37:36Z emaczen: why does everything else quit? 2017-08-11T01:37:55Z emaczen: is the threading system kind of like a master/slave system? 2017-08-11T01:37:59Z sjl: from SBCL's manual: "terminating the main thread would terminate the entire process" 2017-08-11T01:42:46Z rumbler31 joined #lisp 2017-08-11T01:44:39Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-11T01:45:34Z emaczen: is there any way to tell the repl to just ignore that it can't read from stdin? 2017-08-11T01:45:40Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-08-11T01:48:19Z sjl: there are two things you might want to do 2017-08-11T01:48:42Z sjl: if you're expecting to "reattach" to this process later and poke around at its repl some more, nohup is not what you want 2017-08-11T01:48:50Z sjl: screen or tmux or dtach are what you need in that case 2017-08-11T01:49:22Z emaczen: sjl: do you know of any emacs solutions? 2017-08-11T01:49:41Z sjl: if you just want it to continue running the server until `kill`ed, you should have the main thread join the hunchentoot thread after the call to (sb-whatever:repl ...) returns 2017-08-11T01:50:07Z sjl: emaczen: I don't know what you mean. emacs isn't an operating system, despite all the jokes... 2017-08-11T01:50:26Z rumbler31 quit (Remote host closed the connection) 2017-08-11T01:50:50Z emaczen: sjl: haha, I just want to control as much as possible from emacs -- I looked a little for some kind of integration but didn't see any. 2017-08-11T01:51:15Z emaczen: sjl: I think I'll look into screen -- I really want to poke around in the repl later 2017-08-11T01:51:52Z sjl: in that case, I think you'd want to start a swank listener inside the process, instead of using that (sb-whatever:repl ...) thing, and then connect to that listener with SLIME just like you normally would 2017-08-11T01:52:04Z sjl: but I don't use emacs, so I can't guess beyond that 2017-08-11T01:57:55Z marvin2: what do you use? 2017-08-11T02:01:11Z sjl: (neo)vim and vlime 2017-08-11T02:01:37Z sjl: which also uses swank on the lisp side of things, so I assume the workflow would be similar for slime/emacs 2017-08-11T02:03:50Z fsmunoz quit (Ping timeout: 240 seconds) 2017-08-11T02:04:00Z rumbler31 joined #lisp 2017-08-11T02:05:04Z scymtym quit (Ping timeout: 240 seconds) 2017-08-11T02:10:11Z q-u-a-n-1 joined #lisp 2017-08-11T02:10:41Z goosnarg_ joined #lisp 2017-08-11T02:10:49Z EvW joined #lisp 2017-08-11T02:11:10Z sjl quit (Read error: Connection reset by peer) 2017-08-11T02:11:20Z capisce_ joined #lisp 2017-08-11T02:11:28Z glamas_ joined #lisp 2017-08-11T02:11:38Z sjl joined #lisp 2017-08-11T02:12:43Z keviv quit (Remote host closed the connection) 2017-08-11T02:12:57Z LooneyTunes joined #lisp 2017-08-11T02:14:46Z ryanbw_ joined #lisp 2017-08-11T02:14:56Z blt`` joined #lisp 2017-08-11T02:16:48Z DGASAU` joined #lisp 2017-08-11T02:17:34Z cibs_ joined #lisp 2017-08-11T02:17:53Z froggey_ joined #lisp 2017-08-11T02:17:58Z sellout-1 joined #lisp 2017-08-11T02:17:59Z temporal1 joined #lisp 2017-08-11T02:18:51Z wooden_ joined #lisp 2017-08-11T02:18:54Z capisce quit (Ping timeout: 260 seconds) 2017-08-11T02:18:54Z glamas quit (Ping timeout: 260 seconds) 2017-08-11T02:18:55Z yrk quit (Remote host closed the connection) 2017-08-11T02:18:55Z q-u-a-n- quit (Read error: Connection reset by peer) 2017-08-11T02:18:55Z brendos quit (Ping timeout: 260 seconds) 2017-08-11T02:18:55Z goosnargh quit (Ping timeout: 260 seconds) 2017-08-11T02:18:55Z neoncontrails joined #lisp 2017-08-11T02:18:55Z blt` quit (Ping timeout: 260 seconds) 2017-08-11T02:18:55Z ryanbw quit (Ping timeout: 260 seconds) 2017-08-11T02:18:55Z TeMPOraL quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z drcode quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z chu quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z xantoz quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z DGASAU quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z Orion3k quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z froggey quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z krator44 quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z sellout- quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z wooden quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z dan1 quit (Ping timeout: 260 seconds) 2017-08-11T02:18:56Z cibs quit (Ping timeout: 260 seconds) 2017-08-11T02:20:28Z theBlack1ragon joined #lisp 2017-08-11T02:21:04Z ikopico quit (Ping timeout: 240 seconds) 2017-08-11T02:21:37Z heurist quit (Ping timeout: 260 seconds) 2017-08-11T02:22:29Z heurist joined #lisp 2017-08-11T02:23:26Z _krator44 joined #lisp 2017-08-11T02:24:10Z ikopico joined #lisp 2017-08-11T02:25:54Z kjak__ joined #lisp 2017-08-11T02:28:15Z DeadTrickster quit (Ping timeout: 260 seconds) 2017-08-11T02:28:15Z kjak_ quit (Ping timeout: 260 seconds) 2017-08-11T02:28:15Z theBlackDragon quit (Ping timeout: 260 seconds) 2017-08-11T02:28:15Z theBlack1ragon is now known as theBlackDragon 2017-08-11T02:28:16Z jack_rabbit quit (Ping timeout: 260 seconds) 2017-08-11T02:28:17Z dan1 joined #lisp 2017-08-11T02:28:24Z DeadTrickster joined #lisp 2017-08-11T02:28:28Z Orion3k joined #lisp 2017-08-11T02:28:28Z jack_rabbit joined #lisp 2017-08-11T02:30:00Z xantoz joined #lisp 2017-08-11T02:30:29Z z3t0: I have a function that ends with a call to (getf) and then I have another function that tries to setf on the result of the first function, but for some reason it tries to setf to the actual name of the function 2017-08-11T02:30:35Z wizzo quit (Ping timeout: 240 seconds) 2017-08-11T02:30:50Z z3t0: However, i want the function to be evaluated as its results is a getf, which is setf-able 2017-08-11T02:31:32Z ikopico quit (Ping timeout: 260 seconds) 2017-08-11T02:32:40Z brendos joined #lisp 2017-08-11T02:33:25Z wizzo joined #lisp 2017-08-11T02:33:25Z loke: z3t0: You have to implement a setf expander for your function. 2017-08-11T02:33:41Z ikopico joined #lisp 2017-08-11T02:36:00Z chu joined #lisp 2017-08-11T02:36:06Z z3t0: loke: what about this https://stackoverflow.com/questions/11457071/defining-setf-expanders-in-common-lisp 2017-08-11T02:36:45Z glamas_ quit (Remote host closed the connection) 2017-08-11T02:37:25Z loke: z3t0: Sure. That's one way one can do it. 2017-08-11T02:37:44Z loke: One can also use DEFINE_SETF-EXPANDER. But that's only needed for more complex cases. 2017-08-11T02:40:37Z z3t0: heres what i have so far, now im trying to use the setf from the stack over flow answer http://sprunge.us/UYFQ 2017-08-11T02:41:28Z loke: z3t0: what would you expect the SETF function to do? 2017-08-11T02:41:46Z loke: How would you use it, and what should the result be? 2017-08-11T02:42:16Z z3t0: the issue right now is that the push call is failing because it expands to (setf get-bots ) which is incorrect 2017-08-11T02:42:24Z z3t0: but I'm not sure what I should be doing instead 2017-08-11T02:43:34Z loke: z3t0: Your setf function needs to _set_ the :bots member 2017-08-11T02:44:29Z loke: So, something like this (untested): (defun (setf get-bots) (v user) (setf (getf (get-user user) :bots) v)) 2017-08-11T02:45:03Z z3t0: Hmm I see 2017-08-11T02:45:39Z z3t0: does that actually set a value or return a place? 2017-08-11T02:45:54Z z3t0: I'm a bit confused because right now I am just using push, which expands into setf 2017-08-11T02:47:31Z loke: z3t0: The job of the SETF function is to make the actual modification 2017-08-11T02:48:00Z loke: There is nothing magical about a "place". It's just a thing on which SETF can be applied (I.e. there is a setf expander defined for it) 2017-08-11T02:52:43Z rumbler31 quit (Remote host closed the connection) 2017-08-11T02:52:52Z elfmacs joined #lisp 2017-08-11T02:53:04Z elfmacs quit (Client Quit) 2017-08-11T02:56:42Z glamas joined #lisp 2017-08-11T02:57:40Z elfmacs joined #lisp 2017-08-11T02:59:04Z rumbler31 joined #lisp 2017-08-11T02:59:06Z vtomole joined #lisp 2017-08-11T02:59:12Z z3t0: Thanks for the help loke 2017-08-11T03:02:36Z varjag joined #lisp 2017-08-11T03:03:29Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-11T03:04:17Z whoman: okay so. i am getting warnings of defconstant redefinition, but there is only one, and on the first load of the lisp file. i dont understand 2017-08-11T03:05:04Z |3b|: it gets defined when you compile then redefined when you load? 2017-08-11T03:05:16Z |3b|: (or redefined when you load it again after changes) 2017-08-11T03:05:48Z |3b|: and it tests for redefinition with EQL, so most complicated objects will be considered different 2017-08-11T03:06:48Z glamas quit (Remote host closed the connection) 2017-08-11T03:06:58Z varjag quit (Ping timeout: 255 seconds) 2017-08-11T03:07:00Z |3b|: usual fix is to check to see if it is defined before evaluating the defconstant, probably through something like alexandria:define-constant which also lets you specify a test so you get an error if it still doesn't match with correct test 2017-08-11T03:07:10Z whoman: not sure, i am doing ql:quickload , with very small files in an asd system, with simple (defconstant.. ) but each one gives a warning ("ie. from changing to '(1 2 3) to '(1 2 3)") 2017-08-11T03:07:40Z whoman: it is first time loading the lisp., does the same with (load .) 2017-08-11T03:07:40Z |3b|: yeah, asdf is probably compiling then loading unless you specifically told it not to 2017-08-11T03:08:05Z goosnarg_ is now known as goosnargh 2017-08-11T03:09:34Z Bike quit (Ping timeout: 240 seconds) 2017-08-11T03:14:04Z whoman: hmm. is there a normal way around this? does anyone use defconstant at all in code ? 2017-08-11T03:14:16Z whoman: or should i be using something else 2017-08-11T03:14:34Z ebzzry quit (Ping timeout: 240 seconds) 2017-08-11T03:15:27Z malice joined #lisp 2017-08-11T03:15:35Z rpg: whoman: you aren't supposed to use defconstant with values that can't be compared with EQL, so yes, in practice lots of things that you would think of as constants can' 2017-08-11T03:15:40Z rpg: t be done with defconstant 2017-08-11T03:15:41Z basket: whoman: Use DEFINE-CONSTANT from Alexandria, it takes a :test keyword argument 2017-08-11T03:15:55Z malice: Can I execute some code during (break) ? 2017-08-11T03:16:03Z malice: (on variables, et.c) 2017-08-11T03:16:09Z malice: etc* 2017-08-11T03:16:36Z ebzzry joined #lisp 2017-08-11T03:17:00Z malice: I'd like to see result of some function on some variable. I could log it, but I'm interested if I can somehow modify variables/execute code on the variables during break 2017-08-11T03:17:55Z rpg: malice: typically, yes, but what you can do depends a lot on the implementation. 2017-08-11T03:18:02Z glamas joined #lisp 2017-08-11T03:18:13Z rpg: You should be able to access local variables, for example, but details might vary.; 2017-08-11T03:18:59Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-11T03:19:11Z malice: hmm 2017-08-11T03:19:27Z malice: how about SLIME? It's quite different than raw sbcl, I guess? 2017-08-11T03:19:32Z malice: (because that's what I'm using) 2017-08-11T03:22:20Z whoman: i wanted to ask that same question, it looks like slime repl is waiting for debugging session, but i believe it is still alive for C-x e and the like 2017-08-11T03:24:14Z whoman: hmm so based on what you guys were saying.. defconstant doesnt accept values that cant be compared with EQL - but isnt "(eql a a) => t" ?? 2017-08-11T03:25:18Z whoman: (unintern 'x) (defconstant x '(1 2 3)) => warning, x being redefined ... 2017-08-11T03:25:39Z neoncontrails quit (Remote host closed the connection) 2017-08-11T03:26:08Z malice: whoman: you can acutally run sldb-* commands 2017-08-11T03:26:18Z neoncontrails joined #lisp 2017-08-11T03:26:33Z malice: and in inspector you can run slime-inspector-* commands 2017-08-11T03:26:43Z malice: I'm trying to figure out how to get to vars tho 2017-08-11T03:30:19Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-11T03:30:41Z basket: whoman: (eql x x) is T unless X is a number or a character, so if you do (defconstant c1 '(1 2 3)), (defconstant c2 c1), you can re-evaluate the second form as many times as you want without any issue. (eql '(1 2 3) '(1 2 3)) is NIL, though 2017-08-11T03:31:44Z marvin2 quit 2017-08-11T03:31:54Z basket: er, sorry, eql x x is true for numbers and characters too 2017-08-11T03:32:02Z pillton: malice: You probably have to compile with (optimize (safety 3) (debug 3) (speed 0)). 2017-08-11T03:32:03Z basket: I was thinking of EQ; I misspoke 2017-08-11T03:32:17Z arbv quit (Ping timeout: 248 seconds) 2017-08-11T03:34:16Z sellout-1 quit (Quit: Leaving.) 2017-08-11T03:34:28Z sellout- joined #lisp 2017-08-11T03:34:59Z sellout- quit (Client Quit) 2017-08-11T03:35:18Z sellout- joined #lisp 2017-08-11T03:35:32Z warweasle quit (Read error: Connection reset by peer) 2017-08-11T03:35:48Z sellout- quit (Client Quit) 2017-08-11T03:35:49Z elfmacs quit (Quit: WeeChat 1.9) 2017-08-11T03:35:58Z warweasle joined #lisp 2017-08-11T03:36:02Z warweasle quit (Remote host closed the connection) 2017-08-11T03:36:08Z sellout- joined #lisp 2017-08-11T03:36:24Z elfmacs joined #lisp 2017-08-11T03:36:36Z sellout- quit (Client Quit) 2017-08-11T03:36:53Z sellout- joined #lisp 2017-08-11T03:37:24Z sellout- quit (Client Quit) 2017-08-11T03:37:43Z sellout- joined #lisp 2017-08-11T03:38:12Z sellout- quit (Client Quit) 2017-08-11T03:39:53Z arbv joined #lisp 2017-08-11T03:40:15Z elfmacs quit (Client Quit) 2017-08-11T03:40:34Z elfmacs joined #lisp 2017-08-11T03:47:07Z ted_ quit (Read error: Connection reset by peer) 2017-08-11T03:47:30Z phinxy joined #lisp 2017-08-11T03:50:49Z EvW quit (Ping timeout: 276 seconds) 2017-08-11T03:52:24Z phinxy quit (Quit: Leaving) 2017-08-11T03:57:05Z gremdrus quit (Ping timeout: 260 seconds) 2017-08-11T04:00:05Z elfmacs quit (Ping timeout: 240 seconds) 2017-08-11T04:00:15Z rumbler31 joined #lisp 2017-08-11T04:02:06Z damke joined #lisp 2017-08-11T04:02:18Z glamas quit (Remote host closed the connection) 2017-08-11T04:04:58Z ebzzry quit (Ping timeout: 246 seconds) 2017-08-11T04:05:17Z elfmacs joined #lisp 2017-08-11T04:06:25Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-11T04:06:50Z ebzzry joined #lisp 2017-08-11T04:07:03Z clintm joined #lisp 2017-08-11T04:08:19Z damke_ joined #lisp 2017-08-11T04:08:22Z clintm quit (Quit: leaving) 2017-08-11T04:09:10Z damke quit (Ping timeout: 246 seconds) 2017-08-11T04:09:18Z wooden_ quit (Read error: Connection reset by peer) 2017-08-11T04:10:29Z wooden joined #lisp 2017-08-11T04:11:24Z damke joined #lisp 2017-08-11T04:12:49Z damke_ quit (Ping timeout: 258 seconds) 2017-08-11T04:15:31Z |3b| quit (Remote host closed the connection) 2017-08-11T04:16:56Z adolf_stalin joined #lisp 2017-08-11T04:19:14Z |3b| joined #lisp 2017-08-11T04:20:46Z xaotuk quit (Ping timeout: 255 seconds) 2017-08-11T04:21:13Z mfiano quit (Ping timeout: 255 seconds) 2017-08-11T04:22:26Z damke quit (Read error: Connection reset by peer) 2017-08-11T04:26:05Z shka_ joined #lisp 2017-08-11T04:27:36Z test1600 joined #lisp 2017-08-11T04:27:37Z engblom quit (Read error: Connection reset by peer) 2017-08-11T04:28:07Z engblom joined #lisp 2017-08-11T04:28:23Z neoncontrails joined #lisp 2017-08-11T04:30:08Z mfiano joined #lisp 2017-08-11T04:31:24Z text1 quit (Read error: Connection reset by peer) 2017-08-11T04:38:16Z elfmacs quit (Ping timeout: 276 seconds) 2017-08-11T04:44:54Z CrazyEddy quit (Remote host closed the connection) 2017-08-11T04:46:20Z PuercoPop: Getting weird parsing error using dexador although (babel:octets-to-string ) parses the header normally. I dislike Fukamachi's fondness for (declare (speed 3) (safety 0)). 2017-08-11T04:46:42Z PuercoPop: And Drakma gives me SSL verify error: 19 X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN, idea what this might mean? 2017-08-11T04:47:39Z |3b|: no idea about specific problem, but SB-EXT:RESTRICT-COMPILER-POLICY can be helpful for code with (safety 0) 2017-08-11T04:49:32Z PuercoPop: |3b|: true, had forgotten about that 2017-08-11T04:50:13Z CrazyEddy joined #lisp 2017-08-11T04:53:24Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-11T04:55:01Z emaczen` joined #lisp 2017-08-11T04:56:43Z milanj_ quit (Quit: This computer has gone to sleep) 2017-08-11T04:56:54Z emaczen quit (Ping timeout: 258 seconds) 2017-08-11T05:02:52Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-11T05:03:02Z mishoo joined #lisp 2017-08-11T05:04:00Z rumbler31 joined #lisp 2017-08-11T05:08:05Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-11T05:10:43Z sdemarre joined #lisp 2017-08-11T05:12:20Z neoncontrails quit (Remote host closed the connection) 2017-08-11T05:12:58Z neoncontrails joined #lisp 2017-08-11T05:13:22Z MetaHertz quit (Read error: Connection reset by peer) 2017-08-11T05:16:49Z mfiano quit (Ping timeout: 248 seconds) 2017-08-11T05:17:55Z neoncontrails quit (Ping timeout: 276 seconds) 2017-08-11T05:19:07Z damke joined #lisp 2017-08-11T05:19:34Z muzik is now known as muzik_ 2017-08-11T05:20:07Z Karl_Dscc joined #lisp 2017-08-11T05:21:52Z mishoo quit (Ping timeout: 260 seconds) 2017-08-11T05:22:00Z elfmacs joined #lisp 2017-08-11T05:23:41Z goosnargh quit (Remote host closed the connection) 2017-08-11T05:23:44Z mfiano joined #lisp 2017-08-11T05:28:17Z epony joined #lisp 2017-08-11T05:31:19Z muzik_ is now known as muzik 2017-08-11T05:32:45Z glamas joined #lisp 2017-08-11T05:34:45Z vlatkoB joined #lisp 2017-08-11T05:37:38Z glamas quit (Ping timeout: 255 seconds) 2017-08-11T05:39:18Z beach: Good morning everyone! 2017-08-11T05:39:27Z elfmacs quit (Ping timeout: 258 seconds) 2017-08-11T05:41:58Z flazh joined #lisp 2017-08-11T05:42:53Z damke_ joined #lisp 2017-08-11T05:45:01Z damke quit (Ping timeout: 240 seconds) 2017-08-11T05:50:02Z epony: morning 2017-08-11T05:51:23Z beach: Hello epony. Are you new here? I don't recognize your nick. 2017-08-11T05:51:38Z epony: yes 2017-08-11T05:51:55Z beach: What brings you to #lisp? 2017-08-11T05:52:20Z epony: learning curiosity mostly 2017-08-11T05:52:34Z beach: Great! Welcome then. 2017-08-11T05:52:48Z epony: thanks 2017-08-11T05:53:23Z epony: it's in my auto-join list 2017-08-11T05:53:42Z beach: I see. 2017-08-11T05:56:30Z epony: beach How long have you been here? What's the most interesting thing you found out recently about Lisp? 2017-08-11T05:57:17Z damke joined #lisp 2017-08-11T05:57:32Z beach: I have been here for around 13 years. I don't find out much about Lisp anymore. 2017-08-11T05:58:18Z epony: Well then, since when have you been a lisper, and what get you started? 2017-08-11T05:58:35Z beach: What got me started on Lisp? 2017-08-11T05:58:40Z epony: got yes 2017-08-11T05:58:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T05:58:55Z beach: A class that I was taught at the university in 1977 or so. 2017-08-11T05:59:14Z epony: Very interesting. 2017-08-11T06:00:40Z ebzzry quit (Ping timeout: 255 seconds) 2017-08-11T06:01:23Z epony: What university was that? 2017-08-11T06:01:40Z beach: Linköping. 2017-08-11T06:02:07Z sdemarre quit (Quit: Leaving.) 2017-08-11T06:02:16Z beach: At my first job as a developer, we had to use Pascal for everything, so I wrote a Lisp interpreter in Pascal in order to be more productive. 2017-08-11T06:02:21Z damke quit (Ping timeout: 240 seconds) 2017-08-11T06:02:28Z ebzzry joined #lisp 2017-08-11T06:02:37Z epony: I've heard the name of the town, one of the OpenBSD developers is from around there. 2017-08-11T06:02:54Z beach: Sounds plausible. 2017-08-11T06:04:09Z damke joined #lisp 2017-08-11T06:04:10Z ryanbw_ is now known as ryanbw 2017-08-11T06:04:45Z rumbler31 joined #lisp 2017-08-11T06:05:13Z epony: List interpreter in Pascal, a testament to the strong features of Pascal, I've got scarce memories of Pascal since university years too. 2017-08-11T06:05:17Z elfmacs joined #lisp 2017-08-11T06:05:19Z epony: lisP 2017-08-11T06:06:02Z beach: I think it is more a testament to the simplicity of Lisp. Or at least of the basics of Lisp. Common Lisp is another story of course. 2017-08-11T06:06:58Z epony: This too, but my memories are from 20 years after your Lisp classes, which is 20 years before now. 2017-08-11T06:07:41Z beach: Memories of Pascal? You can safely forget about it. 2017-08-11T06:07:52Z epony: :-) Done. 2017-08-11T06:09:00Z ebzzry quit (Ping timeout: 260 seconds) 2017-08-11T06:09:28Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-11T06:10:01Z damke quit (Ping timeout: 240 seconds) 2017-08-11T06:10:41Z ebzzry joined #lisp 2017-08-11T06:11:05Z gravicappa joined #lisp 2017-08-11T06:11:51Z damke_ joined #lisp 2017-08-11T06:12:48Z Karl_Dscc quit (Remote host closed the connection) 2017-08-11T06:14:10Z vtomole quit (Ping timeout: 260 seconds) 2017-08-11T06:21:10Z flamebeard joined #lisp 2017-08-11T06:22:21Z damke joined #lisp 2017-08-11T06:24:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T06:25:02Z damke_ joined #lisp 2017-08-11T06:27:21Z damke quit (Ping timeout: 240 seconds) 2017-08-11T06:27:46Z goosnargh joined #lisp 2017-08-11T06:28:25Z drmeister: Hello 2017-08-11T06:28:30Z hexfive joined #lisp 2017-08-11T06:29:07Z phoe: Hey drmeister 2017-08-11T06:29:47Z Davidbrcz joined #lisp 2017-08-11T06:30:01Z dddddd joined #lisp 2017-08-11T06:30:11Z drmeister: Hey phoe - what's cooking? 2017-08-11T06:30:13Z malice quit (Remote host closed the connection) 2017-08-11T06:31:17Z angavrilov joined #lisp 2017-08-11T06:32:53Z adolf_stalin quit (Quit: Leaving...) 2017-08-11T06:33:02Z drmeister: I just left a department of energy workshop on AI and materials design in Pittsburgh. Now I'm in Berkeley to attend a chemistry meeting tomorrow. 2017-08-11T06:33:10Z phoe: Cooking? Swank server for Lisp Flavored Erlang. 2017-08-11T06:34:02Z phoe: A few other projects in meantime, including a binary-format library that some folk have asked me to write. 2017-08-11T06:34:11Z phoe: To be precise, a library for one binary format specifically. 2017-08-11T06:34:57Z phoe: And now I have to run for work. BBL! 2017-08-11T06:35:01Z damke joined #lisp 2017-08-11T06:35:52Z glamas joined #lisp 2017-08-11T06:37:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T06:38:37Z beach: I like Berkeley. 2017-08-11T06:39:04Z epony: Been there? 2017-08-11T06:39:50Z beach: Yeah, one of the few places in the US where I could get salt licorice. 2017-08-11T06:40:16Z ebzzry quit (Ping timeout: 255 seconds) 2017-08-11T06:42:00Z loke: beach: It's hell to find it here too. 2017-08-11T06:42:07Z schweers joined #lisp 2017-08-11T06:42:18Z beach: I found it in a tobacco store on Telegraph Avenue. 2017-08-11T06:42:27Z beach: loke: Now you can order it online. 2017-08-11T06:42:40Z damke quit (Read error: Connection reset by peer) 2017-08-11T06:42:43Z beach: loke: Though, maybe they don't deliver that far. 2017-08-11T06:43:23Z loke: beach: I can, but shipping costs are crazy high. At least from the site I used. 2017-08-11T06:43:34Z beach: I can imagine. 2017-08-11T06:44:12Z damke joined #lisp 2017-08-11T06:44:27Z goosnargh: Berkeley is also the home of Franz Lisp, though the company is in Oakland now. 2017-08-11T06:44:57Z varjag joined #lisp 2017-08-11T06:45:55Z beach: goosnargh: That's a nice way to bring the subject back on topic. 2017-08-11T06:46:44Z loke: I rememebr back when I was regularly travelling to the SF area, that I was warned about going to Oakland. In fact, they made it sound like you could get robbed (or worse) just by walking outside. 2017-08-11T06:46:46Z loke: Is it better now? 2017-08-11T06:47:28Z beach: People tend to exaggerate the danger. 2017-08-11T06:47:36Z goosnargh: Yeah, it’s not a bad place. 2017-08-11T06:47:52Z loke: beach: Sure worked for me. I certainly never went there :-) 2017-08-11T06:48:35Z damke_ joined #lisp 2017-08-11T06:48:36Z schweers: I never realized berkeley and palo alto were that close together 2017-08-11T06:48:37Z minion: schweers, memo from whoman: yeah EIEIO and cl-lib it was all just lists. but now like erlang, elisp has special record tags for structs and classes. http://lists.gnu.org/archive/html/emacs-devel/2017-03/msg00813.html 2017-08-11T06:49:10Z schweers: ohh, how did whoman do that? 2017-08-11T06:49:28Z goosnargh: Minion is a bot. 2017-08-11T06:49:43Z schweers: I know, but how do you instruct it to deliver a memo? 2017-08-11T06:49:47Z goosnargh: You can tell it to take a memo for someone who is away. 2017-08-11T06:49:48Z beach: minion: memo for schweers: Like this. 2017-08-11T06:49:56Z schweers: I like the name too ;) 2017-08-11T06:49:56Z minion: Remembered. I'll tell schweers when he/she/it next speaks. 2017-08-11T06:49:56Z minion: schweers, memo from beach: Like this. 2017-08-11T06:50:01Z damke quit (Ping timeout: 240 seconds) 2017-08-11T06:50:04Z schweers: cool 2017-08-11T06:50:26Z duncan_bayne joined #lisp 2017-08-11T06:50:39Z duncan_bayne quit (Read error: Connection reset by peer) 2017-08-11T06:50:51Z schweers: I also like the idea that the memo is delivered when the recipient /speaks/ 2017-08-11T06:50:52Z LooneyTunes quit (Ping timeout: 276 seconds) 2017-08-11T06:51:06Z goosnargh: That’s how it knows you are active. 2017-08-11T06:51:10Z damke joined #lisp 2017-08-11T06:51:37Z duncan_bayne joined #lisp 2017-08-11T06:52:09Z beach: minion: Are you a bot? 2017-08-11T06:52:10Z minion: i'm not a bot. i prefer the term ``electronically composed''. 2017-08-11T06:53:05Z duncan_bayne seems to have stumbled into a Turing Test 2017-08-11T06:54:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T06:54:15Z duncan_bayne: Hey quick question - does anyone know how one should nest functions in CL-WHO? Something along the lines of having a function to generate HTML for a page that in turn calls one function for the navbar, another for the footer, ... 2017-08-11T06:54:15Z goosnargh: Minion’s source code can be found here: https://github.com/stassats/lisp-bots 2017-08-11T06:54:39Z duncan_bayne: I can't divine any way of achieving that from the documentation at http://weitz.de/cl-who/ 2017-08-11T06:57:35Z damke_ joined #lisp 2017-08-11T06:57:50Z hexfive quit (Quit: "who even reads the part messages anyway?") 2017-08-11T07:00:01Z damke quit (Ping timeout: 240 seconds) 2017-08-11T07:00:07Z duncan_bayne: hexfive: me! :) 2017-08-11T07:00:07Z Murii joined #lisp 2017-08-11T07:01:26Z damke joined #lisp 2017-08-11T07:01:35Z beach: Didn't someone say the other day that Edi no longer recommends CL-WHO? 2017-08-11T07:02:45Z duncan_bayne: beach: Hmmm. I'm using it because it seemed like The Accepted Way(TM) 2017-08-11T07:03:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T07:03:18Z duncan_bayne: Happy to use something else if the community has moved on ... 2017-08-11T07:04:04Z schweers: beach: I also recall that someone said that, but I don’t remember what the best alternative is 2017-08-11T07:04:15Z schweers: or wether one was proposed 2017-08-11T07:04:27Z farthVader91 joined #lisp 2017-08-11T07:05:23Z duncan_bayne: schweers: Ah. "Don't use this but I'm not sure what's better"? 2017-08-11T07:05:27Z beach: I didn't see any recommendation. 2017-08-11T07:06:11Z duncan_bayne: beach: cliki suggests a Franz open source thingy, but that link 404s. TBH I'm sufficiently new to CL that I'm unsure where the best source of information is. 2017-08-11T07:06:12Z Shinmera: FWIW in Edi's CL Recipes book he briefly shows an example for HTML templating using Clip. 2017-08-11T07:06:17Z shka_ quit (Ping timeout: 260 seconds) 2017-08-11T07:06:22Z rumbler31 joined #lisp 2017-08-11T07:06:26Z Shinmera: But Clips is an entirely different approach to cl-who. 2017-08-11T07:06:30Z Shinmera: *Clip 2017-08-11T07:06:31Z schweers: duncan_bayne: I don’t remember if there is anything better. I’m just trying to repeat what I remember what other people said here 2017-08-11T07:07:06Z duncan_bayne: schweers: Thanks - that wasn't meant as a criticism on my part, just trying to understand :) 2017-08-11T07:07:19Z schweers: no worries, I didn’t take it as such 2017-08-11T07:07:24Z beach: duncan_bayne: Other #lisp participants are much more qualified than I am to give you advice in this domain. 2017-08-11T07:07:26Z duncan_bayne: I'm trying my first Serious Idea in CL, so hoping to get a handle on what tools I should be using 2017-08-11T07:07:59Z duncan_bayne wonders if difficulty in chaining HTML generators might be a reason not to use CL-WHO 2017-08-11T07:09:10Z basket: axion said the other day that Edi doesn't recommend CL-WHO anymore, and when asked what was better said that spinneret is a nice library that a lot of people like 2017-08-11T07:09:33Z basket: I've never heard of it aside from that but I think that's wha's being referred to 2017-08-11T07:09:38Z basket: what's* 2017-08-11T07:09:46Z axion: It also helps that the author is fast at fixing bugs and it's the only library that pretty prints correctly 2017-08-11T07:10:07Z Shinmera: What's that supposed to mean 2017-08-11T07:10:11Z axion: Also the deftag macros allow defining your own html tags/abstractions 2017-08-11T07:10:30Z nelder quit (Quit: Leaving) 2017-08-11T07:10:47Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-11T07:10:52Z duncan_bayne: Oooo .... "Targets HTML5. Does not treat XML and HTML as the same problem. Assumes you will be serving your documents as UTF-8." 2017-08-11T07:10:53Z duncan_bayne: 2017-08-11T07:10:56Z duncan_bayne: Well, I'm sold 2017-08-11T07:11:48Z schweers: are there reasons not to use XHTML as opposed to HTML? 2017-08-11T07:11:57Z schweers: disclaimer: I know next to nothing about web development 2017-08-11T07:12:24Z Shinmera: You need to the correct content type in your server's response headers or browsers will barf on some stuff. 2017-08-11T07:12:28Z Shinmera: *to set 2017-08-11T07:12:44Z schweers: one has to do that in either case, right? 2017-08-11T07:12:58Z Shinmera: Well usually servers automatically serve stuff as text/html 2017-08-11T07:13:35Z schweers: if the content type is set to text/html but emits xhtml … is that a problem? 2017-08-11T07:13:37Z Shinmera: While I do advocate using XHTML, it's otherwise considered a "failed effort", so.. do what you will with that information. 2017-08-11T07:13:42Z Shinmera: yes it is 2017-08-11T07:13:42Z schweers: I guess the other way around would be 2017-08-11T07:13:45Z nelder joined #lisp 2017-08-11T07:14:10Z Shinmera: HTML's self-closing tags screw up XHTML. 2017-08-11T07:14:27Z schweers: yes I know, but is
valid HTML? 2017-08-11T07:14:44Z schweers: i.e. shouldn’t valid XHTML also always be valid HTML? 2017-08-11T07:14:45Z nelder quit (Client Quit) 2017-08-11T07:14:48Z duncan_bayne: schweers: no 2017-08-11T07:14:50Z Shinmera: No 2017-08-11T07:14:52Z schweers: oh 2017-08-11T07:14:55Z duncan_bayne: Yeah :( 2017-08-11T07:15:14Z damke_ joined #lisp 2017-08-11T07:15:16Z duncan_bayne: I do quite a lot of web dev these days (rails, plus angular / backbone / ember.js stuff) 2017-08-11T07:15:17Z schweers: what about my
example, is that valid? 2017-08-11T07:15:24Z schweers: *valid HTML? 2017-08-11T07:16:04Z Shinmera: It'll probably parse in HTML5, but it's a complicated spec and I don't remember. 2017-08-11T07:16:25Z schweers: okay. thanks for correcting a misconception I had 2017-08-11T07:16:42Z duncan_bayne: I think it's browser-specific 2017-08-11T07:17:12Z Shinmera: I don't think that's true 2017-08-11T07:17:13Z duncan_bayne: E.g. some are okay with
but not
2017-08-11T07:17:21Z duncan_bayne: It shouldn't be 2017-08-11T07:17:21Z damke quit (Ping timeout: 240 seconds) 2017-08-11T07:17:32Z Shinmera: The point of HTML5 was to have a spec that tells you exactly how to parse even incorrectly formatted stuff. 2017-08-11T07:17:32Z duncan_bayne: Perhaps it's been smoothed out by now 2017-08-11T07:17:42Z duncan_bayne repairs to the spec 2017-08-11T07:17:45Z Shinmera: Hence abandoning DTD and so forth. 2017-08-11T07:18:10Z schweers: parsing incorrect stuff … how can that not be a mistake? 2017-08-11T07:18:55Z Shinmera: ? 2017-08-11T07:19:31Z schweers: I think that it’s entirely valid for a parser to just give up if the input does not conform to the language it’s supposed to parse 2017-08-11T07:19:41Z duncan_bayne: schweers: yes but historically that's not what browsers have done 2017-08-11T07:19:45Z Shinmera: Well the history of the web disagrees with you. 2017-08-11T07:20:02Z duncan_bayne: I agree completely that they _should_ have given up 2017-08-11T07:20:07Z Shinmera: Browsers will try to parse anything because to a user, a browser that displays an error is less useful than a browser that displays something. 2017-08-11T07:20:14Z schweers: I know and I think it was a mistake to try and parse broken stuff anyway 2017-08-11T07:21:15Z schweers: Shinmera: I don’t think that it true. on the surface it appears to be the case, but I think that the world would have been better for everyone if authors/developers/etc realized early on that what they wrote is invalid 2017-08-11T07:21:20Z Saixia2 joined #lisp 2017-08-11T07:21:32Z Shinmera: Well developers are the minority of the users. 2017-08-11T07:21:35Z duncan_bayne: Huh, neat, it depends upon the type of tag 2017-08-11T07:21:40Z duncan_bayne: https://www.w3.org/TR/html5/syntax.html#start-tags 2017-08-11T07:22:28Z duncan_bayne: "Then, if the element is one of the void elements, or if the element is a foreign element, then there may be a single "/" (U+002F) character. This character has no effect on void elements, but on foreign elements it marks the start tag as self-closing." 2017-08-11T07:22:57Z Shinmera: The thing is that there was invalid content out there, for whatever reason is of no consequence. People want to see that content, so as a browser you try to do that. 2017-08-11T07:23:17Z Shinmera: It's a one-way street and the direction is always less conformance. 2017-08-11T07:23:45Z duncan_bayne: Yep. And then you wind up being a jaded developer looking to a CL stack to bring some level of sanity to the space ;) 2017-08-11T07:23:50Z schweers: Shinmera: once there is broken content, I guess that’s what one has to do. But if browsers never had accepted broken content, we might not be in this pickle :/ 2017-08-11T07:24:06Z Shinmera: "never" is not a thing that happens in real life. 2017-08-11T07:24:06Z schweers: although I guess this is not just a problem of the web 2017-08-11T07:24:20Z schweers: you may be right *sigh* 2017-08-11T07:24:58Z lieven: schweers: if only one browser started accepting junk, it would gain more market share by getting a reputation to "just work" 2017-08-11T07:25:12Z schweers: then again: where do we draw the line between broken and the extension of another implementation? 2017-08-11T07:25:20Z duncan_bayne: Also, remember that many (most?) people writing early web content weren't developers 2017-08-11T07:25:45Z duncan_bayne: When I was at Uni, a friend of a friend was updating the local cinema's website timetables with Notepad 2017-08-11T07:26:00Z schweers: good lord 2017-08-11T07:26:07Z davsebamse quit (Ping timeout: 260 seconds) 2017-08-11T07:26:13Z duncan_bayne: This was, what, 1996? So a little more understandable 2017-08-11T07:26:16Z lieven: there's a small similar example in mail servers. The spec says commands have to end with CR NL, regardless of the conventions of your native system. Most mail servers ignore that. Only qmail enforces it. 2017-08-11T07:26:26Z duncan_bayne: But still. With that tooling and a complete lack of training, the odds of producing valid markup approached zero. 2017-08-11T07:26:49Z duncan_bayne: lieven: I used to work on the DPOP / DSMTP suite 2017-08-11T07:26:57Z schweers: I guess this boils down to what lieven just said 2017-08-11T07:27:06Z duncan_bayne: I'm pretty sure we didn't enforce it because many clients didn't do it 2017-08-11T07:27:14Z duncan_bayne: And if we didn't work with popular mail clients, no-one would use the software ... 2017-08-11T07:27:18Z duncan_bayne sighs again 2017-08-11T07:27:30Z lieven: duncan_bayne: exactly 2017-08-11T07:27:37Z davsebamse joined #lisp 2017-08-11T07:29:19Z duncan_bayne: Well, I'm off for the evening - offspring beckon. Thanks for the tips :) 2017-08-11T07:29:55Z duncan_bayne wonders if "bad money drives out good" applies to standards implementations too ... 2017-08-11T07:30:45Z mishoo joined #lisp 2017-08-11T07:31:05Z lieven: clearly since no implementation that I know of has a conforming PROG2 2017-08-11T07:31:15Z duncan_bayne left #lisp 2017-08-11T07:31:28Z lieven: maybe there should be a *ansi-me-harder* variable for it 2017-08-11T07:32:32Z schweers: how are they not conforming? it doesn’t seem that ambiguous at first glance 2017-08-11T07:33:25Z Shinmera: Spec (mistakenly) says that prog2 should work basically the same as prog1. 2017-08-11T07:33:46Z Shinmera: But implementations obviously implement it in a way that one expects prog2 to work. 2017-08-11T07:34:42Z schweers: um … you mean having prog2 to be an alias for prog1 would be “valid”? 2017-08-11T07:34:56Z Shinmera: clhs prog2 2017-08-11T07:34:56Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_prog1c.htm 2017-08-11T07:34:58Z basket: That's what the spec appears to require 2017-08-11T07:35:11Z Shinmera: "prog2 evaluates first-form, then second-form, and then forms, yielding as its only value the primary value yielded by first-form." 2017-08-11T07:35:23Z basket: Except that PROG2 requires at least two forms 2017-08-11T07:35:45Z goosnargh: Has anyone ever asked KMP about that? It seems like a cut and paste error. 2017-08-11T07:36:06Z Shinmera: I'm sure it is. 2017-08-11T07:36:08Z Shinmera: But it's the spec! 2017-08-11T07:36:41Z goosnargh: There’s that FORMAT thing I was complaining about the other day, a wrong example. 2017-08-11T07:36:57Z Shinmera: Well, examples aren't normative, so that's not an issue. 2017-08-11T07:37:05Z goosnargh: Has anyone ever compiled an errata list? 2017-08-11T07:37:22Z Shinmera: http://cliki.net/Proposed%20ANSI%20Revisions%20and%20Clarifications 2017-08-11T07:38:26Z schweers: ahhh. It took a while but now I see the mistake in prog2 2017-08-11T07:41:16Z mishoo quit (Ping timeout: 246 seconds) 2017-08-11T07:50:52Z _cosmonaut_ joined #lisp 2017-08-11T07:54:56Z ioa joined #lisp 2017-08-11T07:57:38Z shka: hi all 2017-08-11T07:58:31Z damke joined #lisp 2017-08-11T07:59:30Z doesthiswork quit (Quit: Leaving.) 2017-08-11T08:00:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T08:00:04Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-11T08:00:39Z drcode joined #lisp 2017-08-11T08:01:23Z milanj joined #lisp 2017-08-11T08:04:16Z dmiles quit (Read error: Connection reset by peer) 2017-08-11T08:04:45Z Orion3k quit (Quit: Leaving) 2017-08-11T08:05:21Z damke quit (Ping timeout: 240 seconds) 2017-08-11T08:05:29Z damke_ joined #lisp 2017-08-11T08:08:08Z rumbler31 joined #lisp 2017-08-11T08:12:24Z rumbler31 quit (Ping timeout: 258 seconds) 2017-08-11T08:12:31Z Saixia2 quit (Ping timeout: 255 seconds) 2017-08-11T08:13:19Z ioa left #lisp 2017-08-11T08:13:48Z ioa joined #lisp 2017-08-11T08:15:27Z ioa quit (Quit: Leaving.) 2017-08-11T08:15:59Z ioa joined #lisp 2017-08-11T08:16:28Z ioa quit (Client Quit) 2017-08-11T08:17:37Z dmiles joined #lisp 2017-08-11T08:20:08Z ioa joined #lisp 2017-08-11T08:24:15Z farthVader91 quit (Ping timeout: 260 seconds) 2017-08-11T08:30:21Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T08:31:14Z damke_ joined #lisp 2017-08-11T08:33:50Z ioa quit (Quit: Leaving.) 2017-08-11T08:34:06Z ioa joined #lisp 2017-08-11T08:39:20Z random-nick joined #lisp 2017-08-11T08:41:29Z rgrau joined #lisp 2017-08-11T08:43:27Z arbv quit (Ping timeout: 258 seconds) 2017-08-11T08:43:38Z arbv joined #lisp 2017-08-11T08:51:10Z milanj quit (Quit: This computer has gone to sleep) 2017-08-11T09:00:13Z pjb quit (Ping timeout: 255 seconds) 2017-08-11T09:06:59Z schweers: I want to read "#f" and "#f64(...)" in different ways. Is it safe to do (PEEK-CHAR) and check if the result is in '(#\Space #\Newline #\Linefeed #\Tab #\Page #\Return) in order to determine if I’m done (i.e. the #f case)? 2017-08-11T09:08:24Z jackdaniel: yes, if you own the function behind dispatch #f 2017-08-11T09:08:50Z jackdaniel: I saw for instance #feature-case reader macro, which in case when #\e didn't follow #\f raised a condition 2017-08-11T09:09:36Z schweers: thanks 2017-08-11T09:09:37Z rumbler31 joined #lisp 2017-08-11T09:10:32Z Shinmera: schweers: what if #f appears at the end of another structure? like (#f) or inside another reader macro entirely like #{#f}? 2017-08-11T09:10:57Z schweers: hmm 2017-08-11T09:11:14Z schweers: the latter shouldn’t be a problem, but the former is exactly what I’m worried about 2017-08-11T09:11:21Z schweers: which is why I check for whitespace 2017-08-11T09:11:27Z Shinmera: You should instead check if the character after the f is a number or not. 2017-08-11T09:11:52Z Shinmera: Rather than trying to manually whitelist all the possible other characters. 2017-08-11T09:12:01Z schweers: now that I think of it, that should be enough 2017-08-11T09:12:05Z _death: you may also consider using #64f since that's already implemented 2017-08-11T09:12:25Z schweers: _death: I’m reading existing stuff, so I can’t do that 2017-08-11T09:13:40Z rumbler31 quit (Ping timeout: 246 seconds) 2017-08-11T09:20:12Z schweers: looks good, seems to work 2017-08-11T09:21:11Z jamtho joined #lisp 2017-08-11T09:21:52Z schweers: is there a built-in function which will call READ on a file or stream until eof is reached and return the results? 2017-08-11T09:22:01Z schweers: or do I have to do that manually? 2017-08-11T09:22:57Z beach: There is no such function. How would you like the result? In a list? 2017-08-11T09:23:06Z schweers: for instance, yes 2017-08-11T09:23:30Z schweers: ah, I just realized that I don’t need that anyway, as the input forms a list already 2017-08-11T09:23:53Z beach: Do you mean that there is a single expression in the file? 2017-08-11T09:24:39Z beach: If so, you just call READ once. No need to check for end-of-file. 2017-08-11T09:24:59Z schweers: yes, that’s exactly what I realized. 2017-08-11T09:25:17Z Shinmera: (loop collect (handler-case (read stream) (end-of-file (e) (loop-finish))))) 2017-08-11T09:25:39Z Shinmera: Err, minus one paren at the end there 2017-08-11T09:26:59Z schweers: I know it wouldn’t have been difficult, I just wanted to know if there is a built-in function to do so 2017-08-11T09:30:42Z beach: We'll add it to the standard in the next revision of it. 2017-08-11T09:30:57Z schweers: hehe 2017-08-11T09:32:37Z Murii quit (Ping timeout: 255 seconds) 2017-08-11T09:32:56Z varjag quit (Ping timeout: 260 seconds) 2017-08-11T09:34:22Z zooey quit (Remote host closed the connection) 2017-08-11T09:36:11Z dddddd quit (Remote host closed the connection) 2017-08-11T09:36:16Z zooey joined #lisp 2017-08-11T09:40:05Z rgrau quit (Ping timeout: 240 seconds) 2017-08-11T09:41:06Z glamas quit (Remote host closed the connection) 2017-08-11T09:49:43Z goosnargh quit (Ping timeout: 246 seconds) 2017-08-11T09:50:12Z Murii joined #lisp 2017-08-11T09:50:52Z glamas joined #lisp 2017-08-11T09:50:58Z glamas quit (Remote host closed the connection) 2017-08-11T09:51:32Z glamas joined #lisp 2017-08-11T09:52:01Z defaultxr quit (Ping timeout: 248 seconds) 2017-08-11T09:55:48Z glamas quit (Ping timeout: 260 seconds) 2017-08-11T09:57:15Z pjb joined #lisp 2017-08-11T10:06:32Z gravicappa quit (Ping timeout: 260 seconds) 2017-08-11T10:07:48Z MetaHertz joined #lisp 2017-08-11T10:09:48Z scymtym joined #lisp 2017-08-11T10:10:03Z Bike joined #lisp 2017-08-11T10:10:35Z jamtho quit (Remote host closed the connection) 2017-08-11T10:11:02Z jamtho joined #lisp 2017-08-11T10:11:10Z rumbler31 joined #lisp 2017-08-11T10:13:28Z elfmacs quit (Ping timeout: 240 seconds) 2017-08-11T10:13:34Z pjb quit (Ping timeout: 255 seconds) 2017-08-11T10:15:16Z rumbler31 quit (Ping timeout: 246 seconds) 2017-08-11T10:15:27Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-11T10:18:34Z scymtym quit (Ping timeout: 240 seconds) 2017-08-11T10:33:28Z scymtym joined #lisp 2017-08-11T10:37:24Z quazimodo joined #lisp 2017-08-11T10:40:05Z schweers quit (Read error: Connection reset by peer) 2017-08-11T10:43:45Z sellout- joined #lisp 2017-08-11T10:44:04Z sz0 joined #lisp 2017-08-11T10:45:58Z goosnargh joined #lisp 2017-08-11T10:49:00Z quazimodo quit (Read error: Connection reset by peer) 2017-08-11T10:49:16Z quazimodo joined #lisp 2017-08-11T10:51:22Z goosnargh quit (Ping timeout: 276 seconds) 2017-08-11T10:54:32Z test1600 quit (Quit: Leaving) 2017-08-11T10:54:37Z jamtho quit (Ping timeout: 276 seconds) 2017-08-11T10:56:38Z marvin2 joined #lisp 2017-08-11T11:01:57Z pillton quit (Ping timeout: 260 seconds) 2017-08-11T11:03:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T11:04:49Z sellout- quit (Quit: Leaving.) 2017-08-11T11:06:36Z random-nick quit (Remote host closed the connection) 2017-08-11T11:06:57Z milanj joined #lisp 2017-08-11T11:07:29Z damke_ joined #lisp 2017-08-11T11:10:04Z damke joined #lisp 2017-08-11T11:11:18Z random-nick joined #lisp 2017-08-11T11:12:21Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T11:14:50Z grumble quit (Quit: some) 2017-08-11T11:14:51Z HDurer quit (Remote host closed the connection) 2017-08-11T11:14:57Z damke_ joined #lisp 2017-08-11T11:15:07Z otwieracz: I am research which SQL database to use in CL project - not necessarily ORM, but something feature-complete and flawless. 2017-08-11T11:15:16Z otwieracz: I mean, not another #+fixme everywhere. :) 2017-08-11T11:15:16Z grumble joined #lisp 2017-08-11T11:16:07Z otwieracz: One thing - it will be best to avoid need to precompile some intermediate wrapper libraries for {U,C}FFI - it's a bit problematic with #'save-lisp-and-die. 2017-08-11T11:17:01Z damke quit (Ping timeout: 240 seconds) 2017-08-11T11:17:56Z angavrilov quit (Remote host closed the connection) 2017-08-11T11:18:20Z angavrilov joined #lisp 2017-08-11T11:21:11Z yrk joined #lisp 2017-08-11T11:21:48Z Xach: postmodern is good that way 2017-08-11T11:21:55Z Xach: otwieracz: postmodern speaks the postgres wire protocol directly 2017-08-11T11:22:09Z damke joined #lisp 2017-08-11T11:22:39Z otwieracz: Yeah, that was one of my shots. 2017-08-11T11:23:36Z otwieracz: Oh, and it has been even touched on Github February this year! 2017-08-11T11:23:55Z damke__ joined #lisp 2017-08-11T11:24:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-11T11:24:56Z random-nick quit (*.net *.split) 2017-08-11T11:24:56Z MetaHertz quit (*.net *.split) 2017-08-11T11:24:56Z drcode quit (*.net *.split) 2017-08-11T11:24:56Z _cosmonaut_ quit (*.net *.split) 2017-08-11T11:24:56Z Davidbrcz quit (*.net *.split) 2017-08-11T11:24:56Z epony quit (*.net *.split) 2017-08-11T11:24:56Z ikopico quit (*.net *.split) 2017-08-11T11:24:56Z wizzo quit (*.net *.split) 2017-08-11T11:24:56Z jack_rabbit quit (*.net *.split) 2017-08-11T11:24:56Z dan1 quit (*.net *.split) 2017-08-11T11:24:56Z nikivi quit (*.net *.split) 2017-08-11T11:26:21Z damke quit (Ping timeout: 240 seconds) 2017-08-11T11:29:01Z ebzzry joined #lisp 2017-08-11T11:30:24Z wizzo joined #lisp 2017-08-11T11:30:54Z ikopico joined #lisp 2017-08-11T11:32:09Z sellout- joined #lisp 2017-08-11T11:32:54Z random-nick joined #lisp 2017-08-11T11:35:03Z d4ryus1 quit (Quit: WeeChat 1.9) 2017-08-11T11:36:25Z pillton joined #lisp 2017-08-11T11:39:34Z snits quit (Ping timeout: 255 seconds) 2017-08-11T11:41:05Z snits joined #lisp 2017-08-11T11:42:01Z damke__ quit (Ping timeout: 240 seconds) 2017-08-11T11:46:49Z goosnargh joined #lisp 2017-08-11T11:49:52Z Saixia2 joined #lisp 2017-08-11T11:51:06Z nikivi joined #lisp 2017-08-11T11:51:24Z MetaHertz joined #lisp 2017-08-11T11:51:25Z Davidbrcz joined #lisp 2017-08-11T11:51:28Z dan1 joined #lisp 2017-08-11T11:51:35Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-11T11:51:56Z _cosmonaut_ joined #lisp 2017-08-11T11:52:57Z damke__ joined #lisp 2017-08-11T11:54:47Z c__ joined #lisp 2017-08-11T11:57:26Z c_3 quit (Ping timeout: 255 seconds) 2017-08-11T11:57:27Z Oladon quit (Read error: Connection reset by peer) 2017-08-11T11:58:08Z airgapped joined #lisp 2017-08-11T11:58:50Z rumbler31 joined #lisp 2017-08-11T11:58:55Z Oladon joined #lisp 2017-08-11T12:00:31Z rpg joined #lisp 2017-08-11T12:03:04Z jack_rip_vim joined #lisp 2017-08-11T12:04:07Z damke__ quit (Ping timeout: 246 seconds) 2017-08-11T12:05:15Z dddddd joined #lisp 2017-08-11T12:07:34Z elfmacs joined #lisp 2017-08-11T12:07:46Z keviv joined #lisp 2017-08-11T12:09:32Z X-Scale joined #lisp 2017-08-11T12:09:36Z damke__ joined #lisp 2017-08-11T12:11:14Z airgapped quit (Quit: WeeChat 1.4) 2017-08-11T12:11:20Z X-Scale left #lisp 2017-08-11T12:11:48Z Achylles joined #lisp 2017-08-11T12:13:25Z axion: How can I instruct the compiler that this function type declaration is correct? This function returns a fixnum, but SBCL complains that return type (VALUES NULL &OPTIONAL) does not match the declaration. https://gist.github.com/mfiano/31631e0170919a6f7b6d86ed6265447f 2017-08-11T12:14:06Z ioa left #lisp 2017-08-11T12:15:00Z beach: axion: The compiler doesn't know that bytes can not be a number other than 1, 2, and 4. 2017-08-11T12:15:01Z damke__ quit (Ping timeout: 240 seconds) 2017-08-11T12:15:11Z beach: axion: So it accounts for the possibility that CASE returns NIL. 2017-08-11T12:15:11Z mishoo joined #lisp 2017-08-11T12:16:01Z DeadTrickster quit (Remote host closed the connection) 2017-08-11T12:16:01Z axion: You're right. I should be using ecase here. 2017-08-11T12:16:03Z axion: Thank you 2017-08-11T12:16:19Z Shinmera: Thank SBCL, too ;) 2017-08-11T12:16:27Z beach: axion: Separate issue: why don't you write (fast-io::read-unsigned-be bytes) instead of the CASE? 2017-08-11T12:16:46Z axion: Because it's a macro I don't control and bytes is unevaluated 2017-08-11T12:17:22Z beach: Wow, OK. 2017-08-11T12:18:05Z beach: Are you sure you want (&key (:bytes ...)) rather than (&key (bytes ...))? 2017-08-11T12:18:20Z beach: ... in the type proclamation. 2017-08-11T12:18:50Z axion: Yes, because CLHS mentioned it needs to be a valid keyword symbol 2017-08-11T12:18:52Z damke__ joined #lisp 2017-08-11T12:19:04Z Bike quit (Ping timeout: 240 seconds) 2017-08-11T12:19:08Z rpg quit (*.net *.split) 2017-08-11T12:19:08Z rumbler31 quit (*.net *.split) 2017-08-11T12:19:08Z joga quit (*.net *.split) 2017-08-11T12:19:08Z abbe quit (*.net *.split) 2017-08-11T12:19:08Z gendl quit (*.net *.split) 2017-08-11T12:19:08Z Merv quit (*.net *.split) 2017-08-11T12:19:08Z vhost- quit (*.net *.split) 2017-08-11T12:19:08Z tkd quit (*.net *.split) 2017-08-11T12:19:08Z mbrock quit (*.net *.split) 2017-08-11T12:19:08Z drmeister quit (*.net *.split) 2017-08-11T12:19:14Z beach: Hmm. 2017-08-11T12:19:15Z joga joined #lisp 2017-08-11T12:19:18Z abbe joined #lisp 2017-08-11T12:19:28Z gendl joined #lisp 2017-08-11T12:19:31Z axion: The keyword must be a valid keyword-name symbol that may be supplied in the actual arguments of a call to the function 2017-08-11T12:19:33Z tkd joined #lisp 2017-08-11T12:19:41Z vhost- joined #lisp 2017-08-11T12:19:43Z beach: I see. 2017-08-11T12:19:50Z rumbler31 joined #lisp 2017-08-11T12:19:51Z mbrock joined #lisp 2017-08-11T12:19:53Z drmeister joined #lisp 2017-08-11T12:20:13Z Merv joined #lisp 2017-08-11T12:20:59Z rpg joined #lisp 2017-08-11T12:22:57Z axion: While we're on the topic, I've always defined function type declarations, rather than an immediate locally declare of the arguments. Is there any difference? Can localized type specifiers handle function return types? What exactly is the difference if any for actual arguments if not? 2017-08-11T12:23:07Z _death: &key may be expensive and fixnum should not be used 2017-08-11T12:23:14Z beach: axion: Can you point me to the Common Lisp HyperSpec page that says that? 2017-08-11T12:24:08Z axion: beach: Sorry, it was not CLHS that I got that from years ago, but cltl 2017-08-11T12:24:20Z axion: I'm not sure if CLHS allows both, but it surely works like this too 2017-08-11T12:24:25Z _death: you can use THE to help with the return type 2017-08-11T12:24:52Z airgapped joined #lisp 2017-08-11T12:25:26Z axion: Thanks 2017-08-11T12:27:05Z EvW joined #lisp 2017-08-11T12:28:10Z axion: _death: Understood about &key being used. In this case, I would like it, as a self-documenting call site feature. I don't really like (read-integer 2)...that is a bit ambiguous. Also this type specifier exists purely to profile my code on one particular platform, so I'm just experimenting. 2017-08-11T12:29:03Z raynold quit (Quit: Connection closed for inactivity) 2017-08-11T12:30:19Z _death: axion: ok 2017-08-11T12:30:24Z axion: Thank you for all the input :) 2017-08-11T12:32:37Z Saixia2 quit (Ping timeout: 255 seconds) 2017-08-11T12:33:30Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-11T12:36:35Z BitPuffin|osx joined #lisp 2017-08-11T12:36:47Z axion: beach: Indeed, it does not work with a normal symbol and must be a keyword. I cannot find a reference in the standard, only in cltl2. Search for "X3J13 voted in March 1988": https://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node49.html 2017-08-11T12:37:53Z d4ryus joined #lisp 2017-08-11T12:38:08Z _death: "The keyword-name symbol is typically a keyword, but another X3J13 vote (KEYWORD-ARGUMENT-NAME-PACKAGE) allows it to be any symbol." 2017-08-11T12:38:40Z axion: However that vote must not have made it to the standard 2017-08-11T12:38:50Z axion: That or SBCL is non-conformant 2017-08-11T12:38:57Z gremly quit (Ping timeout: 248 seconds) 2017-08-11T12:39:21Z _death: axion: can you give a testcase 2017-08-11T12:39:47Z axion: Sure one moment 2017-08-11T12:39:51Z _death: axion: I think I understand why you'd think that, but that you may be missing something 2017-08-11T12:42:04Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-11T12:42:15Z axion: https://gist.github.com/mfiano/31817661d0cac432262d9114bfd4a5cb 2017-08-11T12:42:15Z engblom quit (Read error: Connection reset by peer) 2017-08-11T12:42:17Z jack_rip_vim left #lisp 2017-08-11T12:42:21Z axion: Did I do something wrong? 2017-08-11T12:42:24Z engblom joined #lisp 2017-08-11T12:42:53Z ryanwatkins quit (Ping timeout: 255 seconds) 2017-08-11T12:44:17Z axion: It compiles without a warning if I make the deftype have a keyword symbol as :A 2017-08-11T12:44:26Z _death: axion: in this case, the keyword-name should be A, so (defun test-case (&key ((a a) 1)) a) 2017-08-11T12:44:48Z _death: and you'd use it like (test-case 'a 234) 2017-08-11T12:45:30Z axion: ? 2017-08-11T12:47:05Z axion: I see 2017-08-11T12:47:11Z _death: axion: in the default case, where you have &key (a 1), the A is the variable name and a corresponding symbol :A is used to specify the keyword argument.. then the ftype declaration should indeed have :A 2017-08-11T12:47:43Z scymtym: either (ftype ... (&key (a 1)) ...) (defun f (&key ((a a))) ...) or (ftype ... (&key (:a 1)) ...) (defun f (&key a) ...) [which is the same as (defun f (&key ((:a a))) ...)] 2017-08-11T12:49:10Z axion: Well thanks :) 2017-08-11T12:49:16Z damke__ quit (Ping timeout: 246 seconds) 2017-08-11T12:49:16Z axion: It's amazing how much you can still learn after a decade of exclusive language use. 2017-08-11T12:51:06Z beach: OK, I get it now. Thanks. 2017-08-11T12:51:28Z scymtym: non-keyword &key arguments may seem esoteric but they are useful for things like non-exported initargs 2017-08-11T12:53:03Z airgapped quit (Quit: WeeChat 1.4) 2017-08-11T12:53:31Z _death: yes.. the explicit form is usually used to maintain backwards compatibility or to initialize a special variable 2017-08-11T12:53:59Z quazimodo joined #lisp 2017-08-11T12:55:03Z rumbler31 quit (Remote host closed the connection) 2017-08-11T12:56:56Z ryanwatkins joined #lisp 2017-08-11T12:58:02Z Murii quit (Ping timeout: 260 seconds) 2017-08-11T13:00:00Z edgar-rft quit (Quit: edgar-rft) 2017-08-11T13:00:22Z Saixia2 joined #lisp 2017-08-11T13:00:57Z Kevslinger joined #lisp 2017-08-11T13:03:26Z Bike joined #lisp 2017-08-11T13:05:33Z quazimodo quit (Read error: Connection reset by peer) 2017-08-11T13:05:52Z quazimodo joined #lisp 2017-08-11T13:09:09Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-11T13:13:44Z cromachina quit (Quit: Leaving) 2017-08-11T13:16:47Z doesthiswork joined #lisp 2017-08-11T13:35:14Z epony joined #lisp 2017-08-11T13:36:31Z Saixia2 quit (Ping timeout: 255 seconds) 2017-08-11T13:40:02Z mishoo quit (Ping timeout: 260 seconds) 2017-08-11T13:46:27Z rpg joined #lisp 2017-08-11T13:47:52Z goosnargh joined #lisp 2017-08-11T13:52:20Z rumbler31 joined #lisp 2017-08-11T13:52:38Z goosnargh quit (Ping timeout: 255 seconds) 2017-08-11T13:52:43Z elfmacs quit (Quit: WeeChat 1.9) 2017-08-11T13:57:25Z oleo joined #lisp 2017-08-11T13:58:14Z spacez joined #lisp 2017-08-11T14:01:42Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-11T14:01:46Z elfmacs joined #lisp 2017-08-11T14:01:49Z EvW quit (Ping timeout: 276 seconds) 2017-08-11T14:02:09Z schweers joined #lisp 2017-08-11T14:02:11Z schweers: p 2017-08-11T14:03:00Z spacez quit (Quit: Lost terminal) 2017-08-11T14:07:29Z EvW joined #lisp 2017-08-11T14:09:57Z flamebeard quit (Quit: Leaving) 2017-08-11T14:11:26Z Kyo91 joined #lisp 2017-08-11T14:13:05Z mishoo joined #lisp 2017-08-11T14:13:28Z Achylles quit (Ping timeout: 240 seconds) 2017-08-11T14:20:05Z mishoo quit (Ping timeout: 240 seconds) 2017-08-11T14:23:01Z Younder quit (Remote host closed the connection) 2017-08-11T14:23:28Z brendos quit (Ping timeout: 258 seconds) 2017-08-11T14:29:13Z varjag joined #lisp 2017-08-11T14:31:53Z varjagg joined #lisp 2017-08-11T14:35:59Z varjag quit (Ping timeout: 246 seconds) 2017-08-11T14:39:40Z Davidbrcz quit (Remote host closed the connection) 2017-08-11T14:41:45Z Younder joined #lisp 2017-08-11T14:42:36Z marvin3 joined #lisp 2017-08-11T14:44:43Z hzp left #lisp 2017-08-11T14:45:22Z marvin2 quit (Ping timeout: 276 seconds) 2017-08-11T14:46:01Z ebzzry quit (Ping timeout: 276 seconds) 2017-08-11T14:48:35Z goosnargh joined #lisp 2017-08-11T14:52:12Z emaczen` quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-11T14:52:47Z al-damiri joined #lisp 2017-08-11T14:54:28Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-11T14:57:09Z damke__ joined #lisp 2017-08-11T15:04:20Z shiranuidong joined #lisp 2017-08-11T15:12:14Z Jesin quit (Quit: Leaving) 2017-08-11T15:13:42Z Younder: cassiny crashes into saturn sep. 15 :( goodbye aret 20 years in space.. 2017-08-11T15:14:34Z Younder: Cassini crashes into Saturn sep. 15 :( Goodbye after 20 years in space.. 2017-08-11T15:14:35Z Jesin joined #lisp 2017-08-11T15:16:55Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-08-11T15:18:14Z phoe: that's 20 well-spent years 2017-08-11T15:18:58Z Karl_Dscc joined #lisp 2017-08-11T15:19:05Z vaporatorius quit (Ping timeout: 240 seconds) 2017-08-11T15:19:10Z Younder: Yes it was a great spacecraft. Exceeding expectations. 2017-08-11T15:19:35Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-11T15:20:43Z gremdrus joined #lisp 2017-08-11T15:23:10Z gremly joined #lisp 2017-08-11T15:23:24Z gravicappa joined #lisp 2017-08-11T15:25:43Z schweers quit (Ping timeout: 246 seconds) 2017-08-11T15:28:06Z Achylles joined #lisp 2017-08-11T15:29:27Z basket: Huh, I didn't know about that form of keyword argument declaration 2017-08-11T15:32:15Z phoe: basket: there's more to it 2017-08-11T15:32:18Z phoe: defun foo (&key ((:a a) nil a-p)) ...) 2017-08-11T15:32:29Z phoe: this is his final form 2017-08-11T15:36:00Z basket: I remember when I was doing Ruby a couple years ago I was frustrated because it doesn't support supplied-p for optional arguments; the hack workaround is to declare a sentinel object and use it as the default value so you can test for reference equality with it 2017-08-11T15:37:12Z basket: The standard library has a lot of functions that would seem to rely on that sort of thing, but in general you have to drop to C to define functions that work like that 2017-08-11T15:37:14Z phoe: looks almost as if you could implement a sane language on top of Ruby 2017-08-11T15:37:56Z sellout- quit (Quit: Leaving.) 2017-08-11T15:40:16Z dlowe: AFAICT, only lisps get scoping right. 2017-08-11T15:40:23Z dlowe: oh, and Go for some reason 2017-08-11T15:42:13Z d4ryus1 joined #lisp 2017-08-11T15:42:19Z mood quit (Quit: Gone.) 2017-08-11T15:42:57Z mood joined #lisp 2017-08-11T15:43:20Z rpg joined #lisp 2017-08-11T15:43:28Z MetaHertz quit (Quit: ERC (IRC client for Emacs 25.2.2)) 2017-08-11T15:44:26Z hexfive joined #lisp 2017-08-11T15:45:08Z MetaHertz joined #lisp 2017-08-11T15:45:30Z d4ryus quit (Ping timeout: 258 seconds) 2017-08-11T15:46:44Z doesthiswork quit (Quit: Leaving.) 2017-08-11T15:47:03Z LiamH joined #lisp 2017-08-11T15:48:22Z Achylles quit (Ping timeout: 260 seconds) 2017-08-11T15:59:39Z smazga joined #lisp 2017-08-11T16:03:34Z quazimodo quit (Read error: Connection reset by peer) 2017-08-11T16:05:35Z wooden quit (Read error: Connection reset by peer) 2017-08-11T16:09:45Z Achylles joined #lisp 2017-08-11T16:09:57Z wooden joined #lisp 2017-08-11T16:11:20Z elfmacs quit (Quit: WeeChat 1.9) 2017-08-11T16:14:11Z ostera joined #lisp 2017-08-11T16:15:10Z EvW quit (Ping timeout: 240 seconds) 2017-08-11T16:16:39Z ostera quit (Client Quit) 2017-08-11T16:17:14Z _user joined #lisp 2017-08-11T16:18:55Z _user: hello everyone, I'm new to lisp and trying to make a simple macro that returns two forms, the macro can be seen here: https://pastebin.com/vGywhHxg 2017-08-11T16:19:25Z _user: instead of returning my expected macro expansion, it returns only the final backquoted element of my macro 2017-08-11T16:19:27Z beach: You have to wrap them in a PROGN. 2017-08-11T16:19:48Z phoe: _user: that's expected 2017-08-11T16:19:55Z beach: A macro body is just like a function body. It evaluates forms in sequence and returns the last one. 2017-08-11T16:19:58Z phoe: a macro is a function after all, and-- 2017-08-11T16:20:01Z axion: This is also not the place for elisp 2017-08-11T16:20:04Z phoe: beach: I was about to type that 2017-08-11T16:20:09Z _user: axion: this is not elisp code 2017-08-11T16:20:20Z _user: This is part of a project i'm writing in common lisp 2017-08-11T16:20:25Z axion: Oh cool 2017-08-11T16:20:26Z phoe: (defun "c" ...) 2017-08-11T16:20:27Z _user: and I happened to make functions that have the same names 2017-08-11T16:20:31Z phoe: wait a second 2017-08-11T16:20:44Z phoe: this does not look like Common Lisp 2017-08-11T16:20:49Z _user: yes it totally is 2017-08-11T16:20:54Z _user: it's part of this project here: https://github.com/nEXT-Browser/nEXT 2017-08-11T16:20:59Z Bike: xsure it does. could be stumpwm or something 2017-08-11T16:21:13Z axion: You cannot have a string as a function name 2017-08-11T16:21:15Z phoe: standard DEFUN does not accept strings as function names 2017-08-11T16:21:18Z axion: only symbol/cons 2017-08-11T16:21:32Z Younder: a macro return a body that will be used during main compile 2017-08-11T16:21:43Z _user: okay so far thank you for the advice everyone 2017-08-11T16:21:44Z sellout- joined #lisp 2017-08-11T16:21:54Z _user: I cannot wrap in a progn because I want this to code to be eval'd at load time 2017-08-11T16:22:03Z phoe: _user: EVAL-WHEN 2017-08-11T16:22:04Z _user: and I believe wrapping a progn will prohibit that, or no? 2017-08-11T16:22:06Z vaporatorius joined #lisp 2017-08-11T16:22:11Z axion: ... 2017-08-11T16:22:15Z _death: user: no, progn maintains toplevelness 2017-08-11T16:22:18Z Younder: so it's in the order: readmacro first, the macro, the func, then compiler-macro. 2017-08-11T16:22:21Z phoe: no - PROGNed forms are treated as top-level forms 2017-08-11T16:22:35Z _user: okay so I can progn my defun and my function call and they will both be eval'd? 2017-08-11T16:22:46Z _death: yes 2017-08-11T16:22:47Z phoe: at load-time, yes. 2017-08-11T16:22:51Z _user: that is good to know, let me give it a try, thank you everyone 2017-08-11T16:22:56Z phoe: If you're especially worried, use EVAL-WHEN. 2017-08-11T16:23:01Z vap1 joined #lisp 2017-08-11T16:23:25Z _death: I just noticed sbcl got rid of implicit defgeneric warning.. heh 2017-08-11T16:23:29Z vaporatorius quit (Client Quit) 2017-08-11T16:23:47Z _user: also, since you all have the link, if anyone would like to be a contributor / participate, please let me know 2017-08-11T16:23:51Z phoe: _death: yes, they got rid of it. They'll most likely make a sb-ext:pedantic optimize option that can bring it back. 2017-08-11T16:24:02Z vap1 quit (Remote host closed the connection) 2017-08-11T16:24:06Z hexfive quit (Quit: WeeChat 1.9) 2017-08-11T16:25:05Z vaporatorius joined #lisp 2017-08-11T16:26:58Z mood quit (Quit: Gone.) 2017-08-11T16:30:58Z mood joined #lisp 2017-08-11T16:34:20Z JuanDaugherty joined #lisp 2017-08-11T16:35:16Z FreeBirdLjj joined #lisp 2017-08-11T16:35:20Z _death: user: that looks like a tall order, with practically 0% of the code written.. do you plan on using webkit or something? 2017-08-11T16:36:59Z shka quit (Quit: Konversation terminated!) 2017-08-11T16:37:15Z mood quit (Quit: Gone.) 2017-08-11T16:37:52Z Younder: blink seems the kit of choice for opera and vivaldi. (chrome's) webkit is a bit quirky 2017-08-11T16:38:08Z marvin3 quit (Ping timeout: 246 seconds) 2017-08-11T16:38:09Z Younder: see whatwg 2017-08-11T16:39:32Z _user: _death: It is using webit + qt 2017-08-11T16:40:04Z mood joined #lisp 2017-08-11T16:40:05Z _user: _death: also I've already been working on the project for months, I started by first writing several lisp interpreters, this is the latest iteration in which I've changed a lot of things, it's a long process 2017-08-11T16:40:40Z _death: user: I see 2017-08-11T16:41:24Z raynold joined #lisp 2017-08-11T16:42:23Z beach: _user: Why are you not using any existing Common Lisp system? 2017-08-11T16:42:44Z _user: beach: I am now :), I am using ECL 2017-08-11T16:42:51Z beach: Ah, OK. 2017-08-11T16:42:55Z _user: like I said, it's been a long journey :D 2017-08-11T16:43:24Z rumbler31 joined #lisp 2017-08-11T16:44:46Z random-nick quit (Remote host closed the connection) 2017-08-11T16:48:49Z BitPuffin|osx joined #lisp 2017-08-11T16:49:41Z varjagg quit (Ping timeout: 246 seconds) 2017-08-11T16:51:16Z goosnargh joined #lisp 2017-08-11T16:52:32Z dddddd quit (Ping timeout: 260 seconds) 2017-08-11T16:53:22Z dddddd joined #lisp 2017-08-11T16:56:01Z goosnargh quit (Ping timeout: 248 seconds) 2017-08-11T16:59:37Z beach: _user: Out of curiosity, why did you not consider using an existing Common Lisp system from the start? 2017-08-11T16:59:38Z yrdz joined #lisp 2017-08-11T17:00:38Z dlowe: beach: they'll fit right in, seems to me 2017-08-11T17:01:08Z beach: dlowe: What do you mean? 2017-08-11T17:03:01Z damke__ quit (Ping timeout: 240 seconds) 2017-08-11T17:03:23Z jackdaniel: _user: cool, if you have some questions regarding ECL, you may hang on #ecl channel. Mind, that SBCL is faster implementation though 2017-08-11T17:03:26Z larme quit (Quit: WeeChat 1.6) 2017-08-11T17:03:36Z jackdaniel: so unless you need some of ECL secret powers, I'd recommend using it 2017-08-11T17:04:08Z varjagg joined #lisp 2017-08-11T17:04:26Z jackdaniel: (and I'm saying that from position of ECL developer, so it's not a sham ;) 2017-08-11T17:04:32Z dlowe: beach: common lispers have, as a group, a pronounced tendency to want to make our own thing 2017-08-11T17:04:46Z LiamH quit (Read error: Connection reset by peer) 2017-08-11T17:04:52Z beach: Ah, yes. 2017-08-11T17:05:04Z dlowe: it's declined over time, but it's still a factor 2017-08-11T17:05:27Z phoe: jackdaniel: it seems that EQL is the deciding factor 2017-08-11T17:05:28Z damke__ joined #lisp 2017-08-11T17:05:33Z LiamH joined #lisp 2017-08-11T17:06:21Z jackdaniel: EQL? he uses EQL? cool :) 2017-08-11T17:10:55Z _user: jackdaniel: you've even helped me before on the ecl channel with asdf :D 2017-08-11T17:11:09Z jackdaniel: heh 2017-08-11T17:12:42Z _user: beach: I was trying to pull in as few dependencies as possible, and I thought it would be cool to be able to add features entirely in C for performance (especially because the inital plan was straight webkit with no external gui framework), but quickly realized the huge benefits of having something like qt with its ecosystem 2017-08-11T17:14:53Z aeth: dlowe: As someone who has reinvented several libraries and feels the urge to reinvent several more (but that would far be too time consuming), that's probably because there are 5 libraries for everything, but they all do a different 50%-70% of that thing and sometimes make really baffling decisions. 2017-08-11T17:15:51Z aeth: The strangest thing I've seen in a major library is cl-json somehow thinking that nil->null is a more sensible CL->JSON conversion than nil->false, even though nil in CL is used as false and the empty list, and not as null. That alone is probably why there's more than one JSON library. 2017-08-11T17:16:17Z jackdaniel: so you're adding one more to grow the confusion, smooth ;) 2017-08-11T17:17:03Z dlowe: aeth: your point is true, but the fact remains that a python programmer would just use the one that came in the box and work around its inadequacies 2017-08-11T17:17:18Z phoe: dlowe: and the lisp programmer would write his own 2017-08-11T17:17:21Z phoe ducks 2017-08-11T17:17:22Z aeth: dlowe: The thing is, the Python programmer is dealing with some of the best libraries in the world. 2017-08-11T17:17:24Z gremdrus quit (Ping timeout: 260 seconds) 2017-08-11T17:17:32Z dlowe: aeth: *cough* 2017-08-11T17:17:37Z axion: umm 2017-08-11T17:17:40Z aeth: Python is a 5/10 language with 2/10 speed and 8.5/10 libraries. 2017-08-11T17:17:41Z gremdrus joined #lisp 2017-08-11T17:17:59Z dlowe: It has decent libraries, I will grant. 2017-08-11T17:18:56Z _user: I program both python and lisp, what would I do? reinvent a half completed version :D? 2017-08-11T17:19:16Z ecraven: ah, it is refreshing to read about features and expectations of "modern lisps" in a 1982 paper on T 2017-08-11T17:19:31Z phoe: _user: you first reinvent Python in Lisp, then take the Python path 2017-08-11T17:19:43Z aeth: jackdaniel: Nah, when I reimplement something from a library when I find the libraries are insufficient, I just integrate it directly into the project rather than make the reinvented wheel yet another standalone library in that area. e.g. my vector math. 2017-08-11T17:20:06Z jackdaniel: I try to improve the best library on the other hand 2017-08-11T17:20:10Z jackdaniel: even if it has its flaws 2017-08-11T17:20:12Z goosnargh joined #lisp 2017-08-11T17:21:13Z aeth: I reinvent the wheel on vector math because I work with multiple return values, rather than things that cons or juggling hundreds/thousands of non-consing but separate vector objects. 2017-08-11T17:21:43Z _user: phoe: interesting that you say that, because actually the path my project took was reinventing lisp in python 2017-08-11T17:21:45Z axion: That's what I tried with png-read. I improved its speed by 3x, but the code is just too messy to do it the other 20x it needs to be decent, so I began writing the only native PNG parsing alternative. 2017-08-11T17:22:02Z axion: At least it was merged, so next QL you can all benefit 2017-08-11T17:22:06Z ecraven: do all functions taking keyword arguments parse them at runtime? 2017-08-11T17:22:48Z Bike: depends. sometimes the compiler can fix it up 2017-08-11T17:22:59Z Bike: i think on sbcl WRITE is special cased, e.g. 2017-08-11T17:23:24Z ecraven: so literal keywords in calls might be optimized, but FUNCALL'd expressions for example just can't be, I'd guess? 2017-08-11T17:24:00Z phoe: _user: that's possible 2017-08-11T17:24:36Z Bike: funcall doesn't present a difference, if the function being called is known 2017-08-11T17:25:10Z Bike: even with apply, since you take the leftmost one, it's possible parsing could be at least partly avoided 2017-08-11T17:26:21Z damke__ quit (Ping timeout: 240 seconds) 2017-08-11T17:26:32Z phoe: ecraven: compiler macros 2017-08-11T17:26:32Z basket quit (Quit: bye) 2017-08-11T17:26:33Z vlatkoB_ joined #lisp 2017-08-11T17:27:10Z random-nick joined #lisp 2017-08-11T17:27:17Z phoe: the compiler macro can, at compile-time, parse the keyword args and return a more optimized version of the code 2017-08-11T17:27:31Z Bike: can be sort of a pain in the ass though. 2017-08-11T17:27:33Z basket joined #lisp 2017-08-11T17:28:23Z aeth: dlowe: But, to clarify on Python... iirc, the Python development experience is completely different than the CL one. One starts by choosing between libraries, and this almost always works because one can choose between multiple libraries whose polish and completeness is higher than almost any library in Quicklisp. 2017-08-11T17:29:38Z aeth: The average Python programmer is more of a beginner, and writing a library is harder, and there are already polished choices for just about every philosophical difference in areas where a Python programmer would want to program. 2017-08-11T17:29:47Z dlowe: aeth: this is true 2017-08-11T17:30:27Z vlatkoB quit (Ping timeout: 260 seconds) 2017-08-11T17:30:40Z dlowe: but I conjecture the reason is that the python programmers worked together to polish a single library, instead of wanting to each be the benevolent dictator of their own fiefdom. 2017-08-11T17:30:59Z dlowe: I mean, I'm open to another perspective here. 2017-08-11T17:32:19Z arbv quit (Ping timeout: 255 seconds) 2017-08-11T17:33:30Z aeth: Well, a language that appears to be missing many key libraries (and a lot of the time this is only appearance because they lack completeness, modern-looking documentation, discovery, etc.) is probably going to attract the kind of person who doesn't mind writing new libraries if necessary. 2017-08-11T17:33:32Z _death: it may have more to do with libraries put out by individuals vs. libraries put out by companies, since the latter may have multiple persons working on them and using them, issues of documentation etc. become more important, and generally more polish is needed.. 2017-08-11T17:34:04Z dlowe: _death: okay, this is true. Python has had a lot of corporate sponsorship. 2017-08-11T17:34:12Z aeth: And _death is absolutely right. A lot of the Python, JavaScript, Java, C++, etc. libraries are made by people who use that library in their day job. 2017-08-11T17:34:27Z aeth: To name some languages that have tons of libraries and tons of day jobs. 2017-08-11T17:34:48Z _death: and with mass, come pull requests which at some point make a library cross the can-do-it-myself threshold 2017-08-11T17:35:49Z aeth: I suspect that even 100% complete documentation on a modern-looking website would intimidate some people away from not-invented-here, even if nothing was added to the library itself. 2017-08-11T17:37:26Z _user: hello everyone, I've modified my macro based on everyone's feedback, and I still have one problem: https://pastebin.com/1kw3MjkV 2017-08-11T17:38:03Z _user: I would like to use the var "c" to make both the defun's name, as like this "(defun c ())" and as a variable in (insert-string "c") 2017-08-11T17:38:08Z phoe: _user: you're passing a string where you need a symbol. 2017-08-11T17:38:23Z phoe: (intern (string-upcase ,string)) 2017-08-11T17:38:24Z _user: phoe: how can I later turn it into a string though? do I need to have two inputs to my macro? 2017-08-11T17:38:34Z phoe: no - turn the string into a symbol 2017-08-11T17:38:39Z phoe: upcase it first, then intern it. 2017-08-11T17:39:02Z phoe: also, your naming is confusing. your argument name is "character" but its type is string, not character. 2017-08-11T17:39:03Z axion: alternatively pass in |c| and use SYMBOL-NAME 2017-08-11T17:39:08Z fkac quit (Remote host closed the connection) 2017-08-11T17:39:47Z phoe: also, how should your code react when you pass "c" and "C"? 2017-08-11T17:39:51Z _user: phoe: it is confusing, I want the user to pass a string represeting a character, sometimes it is something like "Return" 2017-08-11T17:39:53Z _death: aeth: an easy path is writing bindings to existing libraries.. this lowers the threshold for language usability.. then someone may come along and write a "pure CL" library that provides an acceptable alternative 2017-08-11T17:40:00Z phoe: _user: use characters instead? 2017-08-11T17:40:03Z phoe: #\c 2017-08-11T17:40:05Z phoe: #\Return 2017-08-11T17:40:08Z _user: phoe: I would expect it would make a binding for lowercase and an uppercase C 2017-08-11T17:40:21Z phoe: _user: in this case, use INTERN alone. 2017-08-11T17:40:23Z _user: phoe: due to the api, they must be strings 2017-08-11T17:40:35Z phoe: _user: my suggestion, don't use DEFUN. 2017-08-11T17:40:47Z _user: what would you suggest instead? 2017-08-11T17:40:50Z phoe: Create anonymous functions and use a hashtable to bind them to strings. 2017-08-11T17:40:57Z phoe: A hashtable with test #'EQUAL. 2017-08-11T17:41:12Z _user: phoe: that's exactly what I have here, a hashtable binded to a function 2017-08-11T17:41:21Z _user: it's in a different part of the codebase :P 2017-08-11T17:41:38Z phoe: _user: no, you are using DEFUN. 2017-08-11T17:41:39Z Lowl3v3l joined #lisp 2017-08-11T17:41:40Z _user: here I'm trying to automate all of the bindings for every letter in the alphabet for my minibuffer 2017-08-11T17:41:46Z phoe: which modified the global function table. 2017-08-11T17:41:49Z phoe: modifies( 2017-08-11T17:41:50Z phoe: * 2017-08-11T17:42:15Z _user: okay, let me try with anonymous functions instead 2017-08-11T17:42:24Z phoe: (lambda () (insert-character "c") 2017-08-11T17:42:25Z _user: seems to make sense since nobody else will need to call them 2017-08-11T17:42:26Z phoe: ) 2017-08-11T17:42:36Z arbv joined #lisp 2017-08-11T17:42:58Z phoe: and then (setf (gethash "c" *keypress-functions*) (lambda () (insert-character "c"))) 2017-08-11T17:43:01Z phoe: something like that. 2017-08-11T17:43:11Z phoe: you won't need to fiddle with symbols this way, too. 2017-08-11T17:43:28Z phoe: and you will be able to use "c", "C", "C-c", "C-M-s-c" and so on. 2017-08-11T17:43:32Z _user: phoe: (define-key) already set's in the hash-table for the global-mode-map :P 2017-08-11T17:43:44Z _death: you could just have a default handler that would insert the character 2017-08-11T17:43:50Z _user: you can look at my keymap file if you want to cry a little bit :D 2017-08-11T17:43:55Z phoe: _user: I don't know what define-key does and I don't need to know. 2017-08-11T17:44:07Z phoe: Here, you are using DEFUN for something that should not really be DEFUNed. 2017-08-11T17:44:13Z _user: here is the file: https://github.com/nEXT-Browser/nEXT/blob/master/next/lisp/keymap.lisp 2017-08-11T17:44:27Z _user: yes, yes, I'll change it to an anonymous function, you've convinced me :D 2017-08-11T17:44:58Z phoe: Sure thing. You can just get rid of the defun and (define-key ... (lambda () ...)) 2017-08-11T17:45:00Z Bike: yeah, _death is right, i'd just expect something like self-insert-command 2017-08-11T17:45:45Z bigos joined #lisp 2017-08-11T17:45:53Z kobain joined #lisp 2017-08-11T17:47:28Z knusbaum joined #lisp 2017-08-11T17:49:32Z raphaelss joined #lisp 2017-08-11T17:49:38Z raphaelss left #lisp 2017-08-11T17:50:03Z edgar-rft joined #lisp 2017-08-11T17:51:15Z _death: I assume you're trying to do something emacsy, so you could also take hints from closure (and mcclim) and stumpwm 2017-08-11T17:51:25Z _user: if anyone is interested, here's the final macro: https://pastebin.com/rcH70Az5 2017-08-11T17:51:30Z _user: thank you for your help everyone 2017-08-11T17:51:53Z _user: _death: I'll take a look at stumpwm, so far I've just been looking at the emacs source code (which leaves a lot to be desired in terms of my noob skills in understanding) 2017-08-11T17:52:42Z _death: user: yeah, that will be much simpler 2017-08-11T17:55:09Z blackwolf joined #lisp 2017-08-11T17:55:16Z neoncontrails joined #lisp 2017-08-11T17:56:54Z malice joined #lisp 2017-08-11T17:57:00Z oleo quit (Quit: irc client terminated!) 2017-08-11T18:05:09Z scymtym_ joined #lisp 2017-08-11T18:05:54Z vhost- quit (Remote host closed the connection) 2017-08-11T18:06:28Z vhost- joined #lisp 2017-08-11T18:06:57Z scymtym quit (Ping timeout: 248 seconds) 2017-08-11T18:09:13Z grouzen joined #lisp 2017-08-11T18:09:38Z sunset_NOVA joined #lisp 2017-08-11T18:13:49Z _user quit (Remote host closed the connection) 2017-08-11T18:16:01Z oleo joined #lisp 2017-08-11T18:17:27Z knusbaum: Does function resolution happen at every function call? I'm wondering why if I have a function foo that calls bar, if I then re-defun bar, foo uses the new bar without recompiling foo. 2017-08-11T18:17:42Z Bike: depends 2017-08-11T18:17:56Z Bike: usually, yes, but in some circumstances the compiler is allowed to be more direct 2017-08-11T18:18:09Z goosnargh: Tail-call optimization for instance. 2017-08-11T18:18:58Z Bike: i would guess that most of the time it's not, it's a situation in which there's not a full call anyway, for example inlining 2017-08-11T18:19:18Z Bike: since the delay from having to do a lookup is very small. even modern C programs do that 2017-08-11T18:19:32Z Bike: well, "indirection" rather than "lookup", whatevs 2017-08-11T18:19:54Z knusbaum: So just some index into a table, then? 2017-08-11T18:21:10Z knusbaum: or foo holds a reference to bar, and the bar function object holds a reference to the actual function bytes, which get swapped out on re-defun? 2017-08-11T18:21:15Z Bike: you can have a fixed location for a given symbol that holds its symbol-function 2017-08-11T18:21:30Z Bike: and put a pointer to the code in that location, and have the compiled code look at the fixed location 2017-08-11T18:21:39Z knusbaum: Right. 2017-08-11T18:22:02Z knusbaum: I'm just surprised that's as fast as it is. 2017-08-11T18:22:25Z Bike: dynamically linked C programs do the same thing. it's not a big deal 2017-08-11T18:22:45Z Bike: the overhead of the function call probably dominates a mere double memory access 2017-08-11T18:23:09Z djinni` quit (Quit: Leaving) 2017-08-11T18:23:28Z goosnargh: How do I get a list of slots implemented by a class? (Aside from looking at the source.) 2017-08-11T18:23:42Z astronavt[m] quit (Read error: Connection reset by peer) 2017-08-11T18:23:42Z Sovereign_Bleak quit (Read error: Connection reset by peer) 2017-08-11T18:23:42Z RichardPaulBck[m quit (Read error: Connection reset by peer) 2017-08-11T18:23:43Z hiq[m] quit (Remote host closed the connection) 2017-08-11T18:23:43Z hdurer[m] quit (Read error: Connection reset by peer) 2017-08-11T18:23:43Z thorondor[m] quit (Read error: Connection reset by peer) 2017-08-11T18:23:43Z ArthurAGleckler[ quit (Read error: Connection reset by peer) 2017-08-11T18:23:44Z l04m33[m] quit (Write error: Connection reset by peer) 2017-08-11T18:23:45Z Jach[m] quit (Read error: Connection reset by peer) 2017-08-11T18:24:05Z malice: goosnargh: using mop 2017-08-11T18:24:05Z Bike: goosnargh: (mop:class-slots (find-class whatever)) 2017-08-11T18:24:08Z Xach: goosnargh: DESCRIBE or INSPECT can help. 2017-08-11T18:24:16Z phoe: goosnargh: class-direct-slots and class-slots 2017-08-11T18:24:19Z Xach: goosnargh: beware of thinking of classes as buckets of slots, though. 2017-08-11T18:24:23Z Bike: yeah if you just want to look at it use describe. 2017-08-11T18:24:24Z goosnargh: CLASS-SLOTS is what I was looking for. 2017-08-11T18:24:25Z krasnal_ quit (Ping timeout: 276 seconds) 2017-08-11T18:24:34Z goosnargh: I want to walk the list for a comparison operation. 2017-08-11T18:24:42Z Bike: also note that the name of the mop package will vary by implementation. 2017-08-11T18:24:49Z phoe: goosnargh: walk the list for comparison? what do you mean? 2017-08-11T18:24:53Z Xach: That can be for perilous. 2017-08-11T18:24:54Z Bike: (and it might not have one, but that's doubtful) 2017-08-11T18:24:58Z phoe: use the library closer-mop for a single MOP interface 2017-08-11T18:25:14Z goosnargh: I’m writing an EQUALP function to compare two instances. 2017-08-11T18:25:26Z _death: knusbaum: in functions that call a function repeatedly, like MAP* functions, it may make sense to retrieve the function object once before the loop and repeatedly call that 2017-08-11T18:25:34Z gko quit (Quit: ZNC - http://znc.in) 2017-08-11T18:25:36Z goosnargh: I don’t want to hardcode the list of slots to compare. 2017-08-11T18:25:39Z phoe: goosnargh: you can't be writing an EQUALP function to compare two instances 2017-08-11T18:25:48Z phoe: EQUALP is well-defined and not expandable 2017-08-11T18:25:51Z goosnargh: MY-CLASS-EQUALP 2017-08-11T18:25:54Z phoe: oh, that! 2017-08-11T18:25:59Z phoe: :D 2017-08-11T18:26:29Z knusbaum: _death: hmm, I'll have to play with that. 2017-08-11T18:26:38Z goosnargh: So (defmethod my-class-equalp ((c1 my-class) (c2 my-class)) ...) 2017-08-11T18:26:54Z goosnargh: Then I want to walk the slots of C1 and C2 and compare their values. 2017-08-11T18:26:56Z Xach: goosnargh: are the instances really only equivalent if all their slots are equivalent? 2017-08-11T18:27:06Z goosnargh: Yes. 2017-08-11T18:27:06Z Xach: What kind of things do they represent? 2017-08-11T18:27:23Z goosnargh: They represent entries in a corpus, derived from text files. 2017-08-11T18:27:38Z goosnargh: It’s possible that a user has added the same entry as one that was already loaded. 2017-08-11T18:27:45Z goosnargh: *tried to add 2017-08-11T18:28:11Z _death: goosnargh: what about slots that are used, say, for caching 2017-08-11T18:28:19Z goosnargh: The original file could have changed too. 2017-08-11T18:28:27Z goosnargh: So the new entry instance might be different from the old one. 2017-08-11T18:28:33Z goosnargh: And in that case it should be replaced. 2017-08-11T18:28:47Z Bock quit (Ping timeout: 260 seconds) 2017-08-11T18:29:05Z goosnargh: I hadn’t thought about slots added by Lisp though. 2017-08-11T18:29:26Z goosnargh: Can an implementation add slots behind my back? 2017-08-11T18:29:29Z JohnTalent joined #lisp 2017-08-11T18:29:32Z Xach: lisp won't add slots, but it's not uncommon to have slots that are lazily initialized that should not participate in comparison. 2017-08-11T18:29:54Z goosnargh: I think all of mine should be initialized because the instances are made explicitly by a function. 2017-08-11T18:30:00Z Xach: goosnargh: computing slot lists for comparison is just a red flag of potential trouble. 2017-08-11T18:30:20Z goosnargh: I’m just trying to avoid hardcoding the list during development. 2017-08-11T18:30:20Z Xach: it's not always trouble, but it's a little like "how do I use eval for XYZ" 2017-08-11T18:30:21Z phoe: goosnargh: make an explicit list of slots and compare only them. 2017-08-11T18:30:37Z Jach[m] joined #lisp 2017-08-11T18:30:48Z phoe: I can define subclasses of my-class that are meant to be my-class-equalp but have some caching slots for example. 2017-08-11T18:30:56Z neoncontrails quit (Remote host closed the connection) 2017-08-11T18:31:10Z phoe: OR I can try to compare a my-class-subclass and a my-class. 2017-08-11T18:31:10Z djinni` joined #lisp 2017-08-11T18:31:14Z phoe: How would you handle that? 2017-08-11T18:31:31Z goosnargh: I don’t plan on that happening. So a future programmer would have to change things. 2017-08-11T18:31:48Z JohnTalent: Is CL-Markup evisable to use? 2017-08-11T18:32:31Z goosnargh: I’ll use CLASS-SLOTS for now and then hardcode them when I’m done fiddling with the guts. 2017-08-11T18:32:39Z phoe: that sounds sane. 2017-08-11T18:32:45Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-11T18:32:50Z BW^- joined #lisp 2017-08-11T18:32:58Z rumbler31 quit (Remote host closed the connection) 2017-08-11T18:33:23Z goosnargh: Uhh... Is there a copy of the AMOP chapters online? 2017-08-11T18:33:27Z goosnargh: I don’t have my book. 2017-08-11T18:34:27Z goosnargh: The ALU link on Cliki is dead. 2017-08-11T18:34:46Z bigos quit (Remote host closed the connection) 2017-08-11T18:35:12Z Bike: mop slot-definition-class 2017-08-11T18:35:13Z specbot: Couldn't find anything for slot-definition-class. 2017-08-11T18:35:18Z _death: there's http://metamodular.com/CLOS-MOP/ 2017-08-11T18:35:19Z Bike: mop class-slots 2017-08-11T18:35:19Z specbot: http://metamodular.com/CLOS-MOP/class-slots.html 2017-08-11T18:35:24Z Bike: yeah just follow some links bam 2017-08-11T18:35:26Z goosnargh: Perfect. 2017-08-11T18:36:17Z goosnargh: Thanks beach! 2017-08-11T18:36:28Z goosnargh: Also Bike. :) 2017-08-11T18:36:32Z defaultxr joined #lisp 2017-08-11T18:37:09Z bandrami joined #lisp 2017-08-11T18:38:33Z _death: http://www.ai.sri.com/~delacaze/alu-site/alu/mop/index.html is another link, with the reference 2017-08-11T18:39:32Z BW^-: Hi! I want to ask you a question about *locking primitives*, as to clarify my educated opinion about some topic, namely, 2017-08-11T18:39:32Z BW^-: Gambit's (that's some lisp) read/write-char/u8vector in its normal case, is surrounded by mutex-lock! / mutex-unlock! . 2017-08-11T18:39:32Z BW^-: Those need to be repeated on every single such operation, and they cause such an enormous overhead, that you only get about 200KB/sec throughput. 2017-08-11T18:39:36Z BW^-: What I want to ask you is this: 2017-08-11T18:39:36Z BW^-: I realize that, if instead of using mutex-lock!/unlock!, that code would have some kind of *lasting* lock, such that you make it *ONCE* and then unless another thread *steals it*, it *remains locked* - if such a lock is possible, then that in itself would be enough to remedy the performance problem. 2017-08-11T18:39:36Z BW^-: What I wanted to ask you now is, what are the names of locking primitives that have such an effect (lock it once, stay around until other thread steals it)? 2017-08-11T18:39:58Z BW^-: any insights on the topic of what's a LOCKING primitive that fits the bill for me, would be much appreciated! =) 2017-08-11T18:39:59Z goosnargh: Gambit is actually a Scheme, so you might want to ask on #scheme. 2017-08-11T18:40:07Z goosnargh: We speak Common Lisp here. 2017-08-11T18:40:31Z goosnargh: Though many people here are bilingual. 2017-08-11T18:40:41Z ArthurAGleckler[ joined #lisp 2017-08-11T18:40:41Z astronavt[m] joined #lisp 2017-08-11T18:40:41Z thorondor[m] joined #lisp 2017-08-11T18:40:41Z Sovereign_Bleak joined #lisp 2017-08-11T18:40:41Z l04m33[m] joined #lisp 2017-08-11T18:40:41Z hiq[m] joined #lisp 2017-08-11T18:40:41Z hdurer[m] joined #lisp 2017-08-11T18:40:41Z RichardPaulBck[m joined #lisp 2017-08-11T18:41:22Z Bike: that doesn't have anything specifically to do with scheme though. 2017-08-11T18:41:25Z goosnargh: True. 2017-08-11T18:42:14Z _death: BW: not sure about the usefulness of such a primitive.. maybe you'd be satisfied with a read-write lock 2017-08-11T18:42:19Z Bike: BW^-: what happens if the lock is "stolen" in the middle of the actual operation? 2017-08-11T18:42:28Z bandrami quit (Ping timeout: 240 seconds) 2017-08-11T18:42:53Z _death: BW: such a lock is available in sbcl (see sb-concurrency system) 2017-08-11T18:43:09Z phoe: see bordeaux-threads for a more portable implementation 2017-08-11T18:43:15Z phoe: portable, as in 2017-08-11T18:43:17Z phoe: cross-implementation 2017-08-11T18:44:09Z _death: phoe: bt doesn't have those 2017-08-11T18:44:15Z JohnTalent quit (Quit: leaving) 2017-08-11T18:45:10Z bandrami joined #lisp 2017-08-11T18:48:34Z phoe: _death: wait, locks? 2017-08-11T18:48:44Z phoe: oh wait 2017-08-11T18:48:46Z gko joined #lisp 2017-08-11T18:48:55Z phoe: that's complicated, yes. 2017-08-11T18:49:19Z _death: phoe: see 16.2.4 http://www.sbcl.org/manual/#sb_002dconcurrency 2017-08-11T18:50:03Z Jesin quit (Quit: Leaving) 2017-08-11T18:52:31Z knusbaum: _death: how would I grab a function reference before a loop? or were you suggesting that that was something implementations might do? 2017-08-11T18:52:39Z bandrami quit (Quit: Leaving) 2017-08-11T18:53:13Z _death: knusbaum: fdefinition 2017-08-11T18:53:21Z knusbaum: thanks 2017-08-11T18:53:26Z Bike: implementations might do it too though. 2017-08-11T18:53:38Z _death: for their own functions, sure 2017-08-11T18:54:04Z Bike: you don't think it would be permissible for arbitrary functions? 2017-08-11T18:54:19Z DeadTrickster joined #lisp 2017-08-11T18:54:24Z _death: Bike: I doubt it.. as it would rule out a function that redefines itself 2017-08-11T18:55:43Z _death: Bike: or redefinitions in other threads, I guess 2017-08-11T18:56:35Z Bike: i'm just thinking i don't know that the standard actually mandates when lookups have to occur. 2017-08-11T18:56:51Z Bike: of course maybe it would be best for users if they could redefine functionsn that were running in a loop somewhere 2017-08-11T19:02:55Z BW^-: Bike: the calling thread must specify from when it's OK for the lock to be stolen 2017-08-11T19:03:11Z warweasle joined #lisp 2017-08-11T19:03:12Z BW^-: Bike: so, originally it cannot be stolen, only after the thread is done, so the lock indeed has two states, stealable or not 2017-08-11T19:03:22Z BW^-: _death: what's that lock called? 2017-08-11T19:03:26Z BW^-: phoe: ? 2017-08-11T19:05:16Z shka_ joined #lisp 2017-08-11T19:05:22Z _death: BW: not familiar with such a lock.. maybe you could implement it using semaphores 2017-08-11T19:06:39Z phoe: BW^-: I have no idea 2017-08-11T19:06:48Z mfiano quit (Remote host closed the connection) 2017-08-11T19:06:53Z goosnargh quit (Ping timeout: 246 seconds) 2017-08-11T19:07:13Z mfiano joined #lisp 2017-08-11T19:08:42Z Bike: BW^-: so you pretty much have to have a not_ok - ok sequence around every write-char call anyway? 2017-08-11T19:09:39Z goosnargh joined #lisp 2017-08-11T19:12:51Z goosnargh quit (Remote host closed the connection) 2017-08-11T19:13:17Z goosnargh joined #lisp 2017-08-11T19:14:35Z LiamH quit (Ping timeout: 246 seconds) 2017-08-11T19:17:32Z anticrisis joined #lisp 2017-08-11T19:19:41Z random-nick quit (Quit: quit) 2017-08-11T19:19:56Z random-nick joined #lisp 2017-08-11T19:21:01Z gravicappa quit (Remote host closed the connection) 2017-08-11T19:23:49Z knusbaum: Results are more dramatic than I expected. However, the loop and function do no real work, so in real programs, I assume loop time is dominated by the actual work being done, not call overhead. 2017-08-11T19:23:49Z knusbaum: http://paste.lisp.org/display/353180 2017-08-11T19:24:17Z Bike: yeah doing a billion iterations kind of implies that lol 2017-08-11T19:24:21Z knusbaum: :) 2017-08-11T19:26:20Z mishoo joined #lisp 2017-08-11T19:26:54Z BW^-: Bike: what's that? 2017-08-11T19:27:51Z FreeBirdLjj joined #lisp 2017-08-11T19:28:01Z Bike: what's what 2017-08-11T19:32:57Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2017-08-11T19:35:48Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-11T19:36:38Z Karl_Dscc quit (Remote host closed the connection) 2017-08-11T19:38:08Z BW^-: Bike: not_ok - ok ?? 2017-08-11T19:38:10Z Achylles quit (Ping timeout: 240 seconds) 2017-08-11T19:38:59Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-11T19:39:38Z sdemarre joined #lisp 2017-08-11T19:40:31Z Bike: BW^-: I mean, during a write-char it's not allowed for other threads to steal the lock, right? 2017-08-11T19:41:20Z LiamH joined #lisp 2017-08-11T19:43:03Z bjorksung joined #lisp 2017-08-11T19:43:12Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-11T19:43:14Z smazga quit (Quit: leaving) 2017-08-11T19:45:50Z bjorksung is now known as bjorkintosh 2017-08-11T19:49:24Z DeadTrickster quit (Remote host closed the connection) 2017-08-11T19:49:48Z sunset_NOVA quit (Quit: Leaving) 2017-08-11T19:53:38Z BW^-: Bike: correct, it's not allowed. 2017-08-11T19:54:07Z Bike: so every write-char call has to mark the lock as being unstealable before it does work, and mark it as stealable afterwards. 2017-08-11T19:55:07Z BW^-: Bike: yeah. 2017-08-11T19:55:21Z goosnargh quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-11T19:55:23Z Bike: so basically like grabbing and ungrabbing a lock? 2017-08-11T19:56:14Z knusbaum quit (Quit: Leaving.) 2017-08-11T20:01:31Z hiq[m] quit (Ping timeout: 246 seconds) 2017-08-11T20:01:50Z hdurer[m] quit (Read error: Connection reset by peer) 2017-08-11T20:01:50Z astronavt[m] quit (Read error: Connection reset by peer) 2017-08-11T20:01:50Z Jach[m] quit (Read error: Connection reset by peer) 2017-08-11T20:01:51Z thorondor[m] quit (Read error: Connection reset by peer) 2017-08-11T20:01:51Z l04m33[m] quit (Read error: Connection reset by peer) 2017-08-11T20:01:52Z Sovereign_Bleak quit (Read error: Connection reset by peer) 2017-08-11T20:01:52Z ArthurAGleckler[ quit (Read error: Connection reset by peer) 2017-08-11T20:01:55Z RichardPaulBck[m quit (Read error: Connection reset by peer) 2017-08-11T20:05:02Z larsen quit (Ping timeout: 260 seconds) 2017-08-11T20:05:31Z Jach[m] joined #lisp 2017-08-11T20:07:10Z larsen joined #lisp 2017-08-11T20:08:34Z angavrilov quit (Remote host closed the connection) 2017-08-11T20:09:32Z mishoo_ joined #lisp 2017-08-11T20:10:23Z Lowl3v3l quit (Remote host closed the connection) 2017-08-11T20:11:03Z mishoo quit (Ping timeout: 240 seconds) 2017-08-11T20:13:48Z pjb joined #lisp 2017-08-11T20:15:45Z RichardPaulBck[m joined #lisp 2017-08-11T20:15:45Z astronavt[m] joined #lisp 2017-08-11T20:15:45Z Sovereign_Bleak joined #lisp 2017-08-11T20:15:45Z ArthurAGleckler[ joined #lisp 2017-08-11T20:15:45Z hiq[m] joined #lisp 2017-08-11T20:15:45Z hdurer[m] joined #lisp 2017-08-11T20:15:46Z thorondor[m] joined #lisp 2017-08-11T20:15:52Z l04m33[m] joined #lisp 2017-08-11T20:17:08Z KongWubba joined #lisp 2017-08-11T20:17:22Z KongWubba quit (Client Quit) 2017-08-11T20:17:30Z drcode joined #lisp 2017-08-11T20:17:52Z KongWubba joined #lisp 2017-08-11T20:28:58Z FreeBirdLjj joined #lisp 2017-08-11T20:30:01Z sellout- quit (Quit: Leaving.) 2017-08-11T20:30:14Z sellout- joined #lisp 2017-08-11T20:30:46Z sellout- quit (Client Quit) 2017-08-11T20:31:14Z sellout- joined #lisp 2017-08-11T20:31:34Z sellout- quit (Client Quit) 2017-08-11T20:31:54Z sellout- joined #lisp 2017-08-11T20:32:22Z sellout- quit (Client Quit) 2017-08-11T20:32:41Z sellout- joined #lisp 2017-08-11T20:33:10Z sellout- quit (Client Quit) 2017-08-11T20:33:26Z sellout- joined #lisp 2017-08-11T20:35:08Z EvW joined #lisp 2017-08-11T20:36:17Z FreeBirdLjj quit (Ping timeout: 255 seconds) 2017-08-11T20:37:33Z scymtym_ quit (Ping timeout: 240 seconds) 2017-08-11T20:44:52Z aindilis quit (Read error: Connection reset by peer) 2017-08-11T20:49:45Z ptdel joined #lisp 2017-08-11T20:50:38Z ptdel: hi this might be a stupid question, i'm trying to write a macro that creates methods for generic classes is there a fun-name equivalent for methods that i intern by? 2017-08-11T20:50:47Z ptdel: or am I way off base 2017-08-11T20:52:59Z daemoz quit (Remote host closed the connection) 2017-08-11T20:53:18Z daemoz joined #lisp 2017-08-11T20:53:38Z Jesin joined #lisp 2017-08-11T20:54:17Z KongWubba quit (Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org) 2017-08-11T20:54:32Z Bike: "intern by"? 2017-08-11T20:54:49Z Bike: do you mean... you want some descriptor of the particular method, that you could use as a hash key or something? 2017-08-11T20:54:56Z KongWubba joined #lisp 2017-08-11T20:57:03Z pjb: ptdel: methods are not named. generic functions are functions are named with symbols (which can be uninterned). 2017-08-11T20:57:22Z scymtym joined #lisp 2017-08-11T20:57:49Z pjb: ptdel: methods are not function (you cannot funcall a method, there's no standard way to call a method object, only the indirect way to call the "next" method using call-next-method). 2017-08-11T20:58:26Z sdemarre quit (Quit: Leaving.) 2017-08-11T20:58:50Z pjb: ptdel: check find-method: methods are identified by a 3-uple: (generic-function method-qualifiers specializers) 2017-08-11T20:59:04Z pjb: ptdel: so to "name" a method, you need those three elements (generic-function method-qualifiers specializers). 2017-08-11T20:59:43Z pjb: ptdel: they are used in the defmethod form: (defmethod name-of-generic-function [method-qualifiers] specializers-in-lambda-list …) 2017-08-11T21:01:15Z blackwolf quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-11T21:01:29Z pjb: Oops, I'm wrong above, there is a call-method function to call methods. 2017-08-11T21:03:34Z mishoo__ joined #lisp 2017-08-11T21:05:37Z mishoo_ quit (Ping timeout: 276 seconds) 2017-08-11T21:09:48Z uint: yo 2017-08-11T21:09:59Z uint: wrong window. this keeps happening today. 2017-08-11T21:11:03Z ptdel: pjb ah ok thank you very much sorry about the delayed reply 2017-08-11T21:11:40Z ptdel: i'm basically making classes that represent json objects and then making a method for populating the values of the keys for the object 2017-08-11T21:13:20Z aeth: ptdel: JSON? How do you personally solve the problem that CL has no null, but JSON does? 2017-08-11T21:14:05Z ptdel: not really relevant to my situation so i'm not trying 2017-08-11T21:14:10Z ptdel: ? 2017-08-11T21:14:32Z ptdel: the json objects don't change they're just a model i'm using initially to generate a class. i don't have to worry about wonky input 2017-08-11T21:14:57Z aeth: ah 2017-08-11T21:14:59Z ptdel: the keys would end up as keywords with the top node of the json object being the class name and the nested layers being keywords 2017-08-11T21:15:05Z yrk quit (Read error: Connection reset by peer) 2017-08-11T21:15:10Z ptdel: and they'd probably all be optional where appropriate 2017-08-11T21:15:40Z ptdel: otherwise idk, if i had to i'd probably just try and make it so that the object i created dynamically had a default value replacing the null value, and use a condition to detect it 2017-08-11T21:16:33Z shka_ quit (Ping timeout: 240 seconds) 2017-08-11T21:16:37Z pjb: Anyways, you can generate methods from macros, just like any other function. 2017-08-11T21:17:22Z Bike quit (Ping timeout: 260 seconds) 2017-08-11T21:22:03Z ptdel: pjb: that is basically exactly what i was looking for thank you 2017-08-11T21:22:35Z sz0 joined #lisp 2017-08-11T21:22:35Z ptdel: i need to get more reading material i've been using the spec and practical common lisp ive been thinking i should buy sicp 2017-08-11T21:23:10Z malice: ptdel: SICP doesn't use CL 2017-08-11T21:23:18Z malice: and it's available for free in the internet btw 2017-08-11T21:23:23Z ptdel: isn't it scheme 2017-08-11T21:23:29Z malice: yes but that's different from CL 2017-08-11T21:23:36Z malice: by about 1000 pages of language spec 2017-08-11T21:23:52Z pjb: Have a look at (intersection common-lisp emacs-lisp scheme) http://www.informatimago.com/develop/lisp/com/informatimago/small-cl-pgms/intersection-r5rs-common-lisp-emacs-lisp/ 2017-08-11T21:24:22Z ptdel: interesting, my understanding was there were some distinguishing differences for sure but otherwise syntactially scheme was lisp with some specific design choices 2017-08-11T21:24:54Z ptdel: i'm not informed at all though 2017-08-11T21:25:00Z malice: ptdel: the differences are big. 2017-08-11T21:25:32Z malice: ptdel: if you want to learn about CLOS, you've got Keene's book and AMOP. If you want to learn CL better, you've got Weitz's recipes, Seibel's PCL or maybe Hoyte's LoL 2017-08-11T21:25:54Z pjb: intersection is somewhat a joke. Similarly, the Happy Christmas program can be run in sh, csh, fortran and C. There's no meaningful intersection of those 4 languages! 2017-08-11T21:27:03Z aeth: ptdel: Scheme was once basically a minimalist Lisp similar to CL with continuations, but they're increasingly diverging over time because CL maintains backwards compatibility while Scheme definitely does not. This means that e.g. the procedure names in Scheme are almost all different, it uses a different kind of macro system since r4rs, etc. 2017-08-11T21:27:08Z aeth: (Scheme predates CL, though.) 2017-08-11T21:27:20Z pjb: Even when you can use the same form in lisp and scheme, the actual semantics are different. It's nice that at a high level you may be able to extract a common result from two different programs sharing the same source. But it's more an anecdotic curriosity than anything else. 2017-08-11T21:27:23Z ptdel: i've been reading a lot of weitz's documentation 2017-08-11T21:28:05Z ptdel: ah, i suppose i'll just keep on with practical CL then and just reference the hyperspec where it fails 2017-08-11T21:28:06Z aeth: At one point the differences between CL and Scheme were basically lisp-2 vs lisp-1, Scheme having continuations, and Scheme having a separate #f and '() vs CL's single NIL. 2017-08-11T21:28:19Z ptdel: still getting used to some of the conventions so some of the hyperspec eludes me from time to time 2017-08-11T21:28:42Z aeth: Now there's probably about two pages of differences between CL and Scheme, and any given Scheme implementation will diverge more because they'll implement CL-like features in ways different than CL implements them. (The Scheme spec itself is tiny.) 2017-08-11T21:28:51Z vtomole joined #lisp 2017-08-11T21:29:21Z malice: ptdel: one of unfortunate things about CL is its inconsistency, but that's minor thing 2017-08-11T21:29:33Z ptdel: is clojure something worth getting into? i can see how mentioning something using the JVM wouldn't be popular but it seems like PigPen and other things are really robust 2017-08-11T21:29:45Z vtomole: How is cl incosisntent? 2017-08-11T21:29:47Z malice: ptdel: I guess it is. Depends on what you want to do 2017-08-11T21:29:59Z malice: vtomole:e.g. nth vs aref 2017-08-11T21:30:01Z antoszka: ptdel: depends what your needs are. 2017-08-11T21:30:03Z aeth: vtomole: The most trivial incosistencies are argument order. 2017-08-11T21:30:08Z ptdel: malice I have to work with hadoop and mesos quite a bit so with hadoop i'm often tied to the JVM for everything 2017-08-11T21:30:23Z ptdel: mesos I can actually use sbcl with recent i found which is super neat 2017-08-11T21:30:37Z antoszka: ptdel: If you find libraries for your project in Clojure, then yes, it's worth getting into. 2017-08-11T21:30:37Z malice: ptdel: I don't really know clojure, but not long ago it was a nice lisp with a caveat that it's strictly tied to JVM 2017-08-11T21:30:49Z malice: so when you get an error, you basically see java's stack trace 2017-08-11T21:30:51Z antoszka: …and it's not a lisp deep down. 2017-08-11T21:30:52Z aeth: vtomole: Iirc: nth/gethash/nth-value are one way, aref/elt/getf/etc. are the other. 2017-08-11T21:30:54Z antoszka: Exactly. 2017-08-11T21:31:19Z ptdel: antoszka: yeah It'd be java bytecode at some ponit 2017-08-11T21:31:27Z ptdel: i can't get caught up on that though, deep down i'm not a lisp either 2017-08-11T21:31:32Z malice: ptdel: but Clojure's community seems to be active and they are constantly improving it 2017-08-11T21:31:34Z vtomole: nth is for lists and aref is for arrays, right? 2017-08-11T21:31:42Z ptdel: malice: I think that is a good sign for a lisp 2017-08-11T21:31:48Z antoszka: vtomole: yes 2017-08-11T21:31:54Z basket: There's ABCL which is Common Lisp on the JVM as well, ptdel 2017-08-11T21:31:55Z malice: ptdel: I guess. 2017-08-11T21:32:04Z pjb: vtomole: and elt is for sequences. 2017-08-11T21:32:08Z antoszka: ptdel: I'd rather have such strong publicity/trendiness in CL, but yeah. 2017-08-11T21:32:08Z vtomole: Where is the inconsistency? 2017-08-11T21:32:13Z ptdel: basket: do you know how it compares to clojure? i looked at armored bear a bit 2017-08-11T21:32:15Z basket: vtomole: NTH is specific to lists, AREF is specific to arrays, and ELT is generic over sequences 2017-08-11T21:32:21Z aeth: vtomole: nth is for lists, aref is for arrays, elt is for sequences (which includes 1D arrays), and there are various other niche ones, e.g. bit for bit arrays 2017-08-11T21:32:29Z antoszka: vtomole: argument order (index vs reference) 2017-08-11T21:32:44Z antoszka: vtomole: either comes first 2017-08-11T21:32:45Z aeth: vtomole: the inconsistency is that nth/gethash/nth-value put the index first, and almost everything else (like aref and elt) put the index second 2017-08-11T21:32:52Z ptdel: i really enjoy writing cl so far, even being bad at it i still feel more productive than writing in python (at least for things like apis and dsls) 2017-08-11T21:32:58Z malice: vtomole: (aref my-vec 0) vs (nth 0 my-list) 2017-08-11T21:33:00Z ptdel: it'd be cool to see it take off more 2017-08-11T21:33:02Z antoszka: concatenate/coerce are another case 2017-08-11T21:33:34Z FreeBirdLjj joined #lisp 2017-08-11T21:33:51Z pjb: malice: the point of lisp, is that it gives you the tool to implement your own consistent and universal operator yourself: macros. 2017-08-11T21:34:12Z ptdel: is the story about the intern named Mac apocryphal ^-^ 2017-08-11T21:34:19Z ptdel: please tell me that is a true thing 2017-08-11T21:34:45Z malice: pjb: Yes, that's nice. 2017-08-11T21:34:50Z pjb: ptdel: AFAIK, it is entirely invented. 2017-08-11T21:34:59Z ptdel: sigh, i figured but it was fun 2017-08-11T21:35:07Z basket: ptdel: I've never used it personally, I would look at it before Clojure, which I have used and has a lot of glaring issues to me, personally 2017-08-11T21:35:11Z malice: But I'm sad that CL doesn't have newer standard that would have things CL could use to become more popular 2017-08-11T21:35:28Z malice: basket: hwat are the issues of Clojure? 2017-08-11T21:35:32Z malice: s/hwat/what 2017-08-11T21:35:43Z vtomole: ugh. I never noticed that. Writing a macro can fix that. 2017-08-11T21:35:47Z Karl_Dscc joined #lisp 2017-08-11T21:36:03Z aeth: Another annoying inconsistency is that (setf (values x y z) (foo)) will set x, y, and z to the three return values of foo, but (let (((values x y z) (foo))) ...) is invalid. multiple-value-bind is nowhere near as convenient as let and let*. 2017-08-11T21:36:14Z pjb: ptdel: I guess macros evolved from fexpr, as a way to simplify and remove the problems of fexpr (which were a kind of run-time macro). 2017-08-11T21:36:38Z malice: aeth: there's some library that fixes that afaik 2017-08-11T21:36:52Z malice: so you don't have to write it yourself 2017-08-11T21:36:56Z aeth: There are probably 4 libraries that do that. 2017-08-11T21:37:00Z ptdel: ah ok that makes more sense but is less personably 2017-08-11T21:37:06Z ptdel: personable* 2017-08-11T21:37:38Z antoszka: But the positive thing is that the incosistencies are rather superficial. Just a messy bunch of functions. Inside all's more or less either consistent or (more or less sensibly) axiomatic ;). 2017-08-11T21:38:47Z FreeBirdLjj quit (Ping timeout: 246 seconds) 2017-08-11T21:38:48Z malice: tl;dr: Unless you use punch cards you're fine. 2017-08-11T21:39:28Z basket: malice: Mostly the lack of any kind of error handling, and things like appending to a non-sequence giving you a null pointer exception (and no restarts, of course). It's a nice language when everything goes right, but it feels like Ruby or something once you have to debug anything. The tooling just isn't there. 2017-08-11T21:39:50Z vtomole: malice: What would a newer standard improve? 2017-08-11T21:40:01Z aeth: malice: It would probably be better to slip setf-like values usage into let in a new standard than require the use of a library for that kind of thing. multiple values in general need a lot more core support, or several libraries of macros. 2017-08-11T21:40:01Z LiamH: https://common-lisp.net/project/metabang-bind/user-guide.html 2017-08-11T21:40:29Z aeth: malice: I think this comes from early multiple return values probably being inefficient, whereas now they're not. 2017-08-11T21:40:48Z aindilis joined #lisp 2017-08-11T21:40:48Z aeth: I wouldn't be surprised if some early Lisps with multiple return values used lists for them or something similarly not good. 2017-08-11T21:41:08Z Kyo91_ joined #lisp 2017-08-11T21:41:30Z ptdel left #lisp 2017-08-11T21:41:58Z malice: vtomole: uniform MOP. uniform interface for executing, so you can run scripts without worrying about implementation(like Ruby or Python or Perl). Improved lets and things like that. Maybe hygienic macros. Some things off the top of my head 2017-08-11T21:42:00Z pjb: aeth: well if you start from a lisp that doesn't have multiple value, it is the obvious thing to do: return a list of values. 2017-08-11T21:42:21Z malice: aeth: I agree 2017-08-11T21:42:32Z pjb: aeth: but this lack the most important practical feature of multiple values: that you can use a smaller number of them seamlessly. 2017-08-11T21:42:41Z malice: basket: thanks for info 2017-08-11T21:42:51Z pjb: (+ (truncate 10 3) 2) #| --> 5 |# vs. (+ (first (truncate 10 3) 2)) 2017-08-11T21:42:52Z brendos joined #lisp 2017-08-11T21:43:21Z froggey_ is now known as froggey 2017-08-11T21:43:22Z pjb: You definitely need something at the language level do to those transformations. 2017-08-11T21:43:35Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-11T21:44:17Z aeth: I wonder if there would be a way to get a hypothetical future CL to treat multiple values like sequences. In some senses, they're the third kind of sequence in the language. 2017-08-11T21:44:23Z vtomole: malice: I use alexandria all the time, and I wish it was part of the standard. Maybe those features could be implemented as libraries? 2017-08-11T21:44:33Z malice: vtomole: it's not about libraries 2017-08-11T21:44:47Z pjb: aeth: there's already (multiple-value-list (truncate 10 3)) #| --> (3 1) |# 2017-08-11T21:44:50Z pjb: this is a sequence. 2017-08-11T21:44:56Z basket: malice: It's also annoying to me how they re-used a lot of operator names from Lisp but they do different things, like cons doesn't create conses, and assoc doesn't look up keys. That one is less of a flaw and more just annoying if you're coming from another Lisp, and you get used to it, but it makes it irritating to switch back and forth 2017-08-11T21:44:56Z malice: vtomole: that would require you to get libraries on your system. If you install Python, you can just run any script without any problem. 2017-08-11T21:45:03Z malice: vtomole: and you could use MOP without worrying about using library. 2017-08-11T21:45:12Z pjb: and of course, you can use nth-value (which goes along with nth, elt and aref :-) ). 2017-08-11T21:45:20Z malice: vtomole: there are libs like closer-mop, but if standard included such things, that would be better for us 2017-08-11T21:45:33Z malice: and I'd probably also improve cooperation between strings and pathnames 2017-08-11T21:46:30Z aeth: pjb: it would be cool to be able to do this, though: (map 'values #'+ (values 2 3) (values 3 4)) 2017-08-11T21:46:34Z aeth: rather than (values-list (map 'list #'+ (multiple-value-list (values 2 3)) (multiple-value-list (values 3 4)))) 2017-08-11T21:46:45Z aeth: especially since the latter is probably not very efficient 2017-08-11T21:46:54Z malice: basket: I see. That's bad. 2017-08-11T21:47:01Z pjb: aeth: you're wanting first class multiple-value objects. 2017-08-11T21:47:10Z aeth: well, at least second class :-p 2017-08-11T21:47:22Z pjb: But the point of multiple values in CL is that they're not first class objects, so that they can be optimized more than lisp objects. 2017-08-11T21:47:44Z foom: but &rest is a first class object, yet it's still optimizable. 2017-08-11T21:47:56Z aeth: pjb: Right, multiple values for a small number of values are more efficient. There's not just much that can be done with them out of the box. I'd even like a values-map or something. 2017-08-11T21:48:03Z malice: basket: though I've got to say, clojure docs looks neat 2017-08-11T21:48:08Z pjb: Well, perhaps we could do it if we could have more than one &rest parameter :-) 2017-08-11T21:48:30Z aeth: Right now the first step of working with multiple values is, unfortunately, to write about 8 macros to make it not look like a mess, at least ime. 2017-08-11T21:49:05Z malice: vtomole: oh, and I'd try to improve the type interface, or at least add an extension that would do that 2017-08-11T21:49:28Z foom: In hindsight, I'm not sure I'd say that the ability to silently discard secondary values is actually even a feature. 2017-08-11T21:49:38Z malice: type system* 2017-08-11T21:49:50Z malice: foom: how come? 2017-08-11T21:49:51Z aeth: foom: it allows things like floor, where you almost always only want the first value 2017-08-11T21:50:05Z EvW quit (Ping timeout: 255 seconds) 2017-08-11T21:50:08Z vtomole: I kind of like the standard being old. Hacking scheme is frustrating because of how fragmented implementations can get. 2017-08-11T21:50:21Z vtomole: malice: Type interface? 2017-08-11T21:50:26Z malice: vtomole: system 2017-08-11T21:51:02Z scymtym quit (Ping timeout: 246 seconds) 2017-08-11T21:51:14Z malice: vtomole: something more strong 2017-08-11T21:51:18Z basket: malice: There's definitely a lot of really cool stuff there, like the approach to concurrency and mutability, clojure.spec, and even just the pervasive pattern matching and destructuring. It's mostly just the tooling that makes me not want to use it for anything serious 2017-08-11T21:51:53Z malice: basket: I believe they're working on it though. I've seen some nice projects in GSoC for Clojure and if it wasn't for my unfamiliarity I'd probably take on it 2017-08-11T21:56:00Z bugrum joined #lisp 2017-08-11T22:01:01Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-11T22:02:57Z varjagg quit (Ping timeout: 240 seconds) 2017-08-11T22:03:28Z oleo quit (Ping timeout: 258 seconds) 2017-08-11T22:08:47Z hjek joined #lisp 2017-08-11T22:09:33Z LiamH quit (Quit: Leaving.) 2017-08-11T22:11:13Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-11T22:13:40Z milanj quit (Quit: Leaving) 2017-08-11T22:13:51Z hjek quit (Quit: Leaving.) 2017-08-11T22:14:29Z Bike joined #lisp 2017-08-11T22:15:49Z Achylles joined #lisp 2017-08-11T22:21:23Z doesthiswork joined #lisp 2017-08-11T22:26:55Z warweasle joined #lisp 2017-08-11T22:29:06Z azrazalea quit (Quit: ZNC 1.6.2+deb2~bpo8+1 - http://znc.in) 2017-08-11T22:30:35Z azrazalea joined #lisp 2017-08-11T22:33:45Z marvin2 joined #lisp 2017-08-11T22:34:02Z mikecheck joined #lisp 2017-08-11T22:34:30Z RedEight joined #lisp 2017-08-11T22:34:45Z random-nick quit (Remote host closed the connection) 2017-08-11T22:34:59Z RedEight quit (Client Quit) 2017-08-11T22:35:02Z FreeBirdLjj joined #lisp 2017-08-11T22:35:45Z grouzen quit (Ping timeout: 248 seconds) 2017-08-11T22:38:19Z brendos quit (Ping timeout: 255 seconds) 2017-08-11T22:39:31Z zulu_inuoe joined #lisp 2017-08-11T22:40:23Z FreeBirdLjj quit (Ping timeout: 246 seconds) 2017-08-11T22:44:11Z zulu_inuoe: Could anyone point me to some examples of using CLOS metaclasses? That's the one area in CL that has always elluded me. I know the general theory, which is why I'm trying to use it to solve my current problem, but I can never find any straightforward implementations to "break the ice" 2017-08-11T22:44:28Z phoe: zulu_inuoe: BKNR.DATASTORE 2017-08-11T22:44:48Z phoe: you can peek at how the store metaclass is used to transparently back up data on hard drive on each slot write. 2017-08-11T22:45:21Z zulu_inuoe: Thanks! That sounds like the perfect example 2017-08-11T22:45:25Z phoe: read its manual first 2017-08-11T22:45:34Z phoe: to understand where and how the metaclass is used 2017-08-11T22:45:38Z drmeister: I'm getting this error when reading what should be a text file (generated by dtrace) in sbcl 2017-08-11T22:45:39Z phoe: then follow the thread all the way into the code 2017-08-11T22:45:40Z drmeister: https://www.irccloud.com/pastebin/kkD24z7r/ 2017-08-11T22:45:54Z zulu_inuoe: Understood. Thank you 2017-08-11T22:46:03Z phoe: drmeister: the file is not an ASCII file, seemingly. 2017-08-11T22:46:12Z phoe: 162 is not an ASCII code it seems. 2017-08-11T22:46:14Z drmeister: What format should I use for the file? 2017-08-11T22:46:19Z phoe: Try reading this file with UTF-8. 2017-08-11T22:46:26Z phoe: :external-format :utf-8 2017-08-11T22:46:48Z EvW1 joined #lisp 2017-08-11T22:46:49Z Bike: 162 is ó, i guess 2017-08-11T22:46:54Z Bike: taking advantage of the FFI no doubt 2017-08-11T22:47:26Z drmeister: Hmm, It doesn't like that either... 2017-08-11T22:47:37Z drmeister: https://www.irccloud.com/pastebin/7ltYtSuH/ 2017-08-11T22:47:46Z drmeister: I'll try byte8 or something 2017-08-11T22:47:51Z phoe: wuh? 2017-08-11T22:48:02Z phoe: this looks weird 2017-08-11T22:48:03Z Bike: um... hm. 2017-08-11T22:48:07Z drmeister: It's an ECL thing - sbcl doesn't have that. 2017-08-11T22:48:30Z Bike: time for another fascinating game of Guess That Encoding 2017-08-11T22:48:31Z basket: ASCII is only a 7-bit encoding so it only goes up to 127, there's multiple 8-bit encodings that use the remaining codepoints in different ways 2017-08-11T22:48:34Z phoe: So SBCL reads it but ECL does not? 2017-08-11T22:48:43Z drmeister: I just want it to ignore those characters - I don't care about them. 2017-08-11T22:48:43Z phoe: or the reverse? 2017-08-11T22:48:45Z Bike: i guess it's invalid utf-8 2017-08-11T22:49:00Z drmeister: They are probably coming from dtrace having a fit when a stack gets too deep. 2017-08-11T22:49:02Z phoe: Bike: not really, it would be more than one octet then 2017-08-11T22:49:21Z Bike: but it says it's a utf-8 decoding error 2017-08-11T22:49:32Z phoe: but UTF-8 chokes on the same byte as ASCII does 2017-08-11T22:49:41Z phoe: it's a single character that's #\ó 2017-08-11T22:49:47Z phoe: it *should* get read properly 2017-08-11T22:50:02Z phoe: drmeister: one last try, :iso-8859-1 2017-08-11T22:50:12Z drmeister: What do you recommend if I want to read what should be a text file but has some schmutz in it. 2017-08-11T22:50:22Z Bike: "the DTrace book of scripts and strategy 1100 pages" oh no 2017-08-11T22:50:40Z phoe: drmeister: I actually don't know. 2017-08-11T22:50:43Z drmeister: :external-format :dang-nabbit-just-read-the-damn-file 2017-08-11T22:51:24Z phoe: I'd read it into a byte array, logand each byte with #7F and octets-to-string that. 2017-08-11T22:51:34Z phoe: (sounds crazy, eh) 2017-08-11T22:51:36Z safe joined #lisp 2017-08-11T22:51:48Z Bike: a bit 2017-08-11T22:52:03Z phoe: because it is. 2017-08-11T22:52:18Z Bike: gonna define a mojibake encoding for babel 2017-08-11T22:52:24Z phoe: but huh, Lisp AFAIK has no good strategy when it comes to reading malformed text files. 2017-08-11T22:52:36Z phoe: except halt and catch fire. 2017-08-11T22:53:28Z Bike: is there really such a thing as a good strategy for reading malformed files 2017-08-11T22:53:38Z phoe: :external-format :dang-nabbit-just-read-the-damn-file 2017-08-11T22:53:51Z drmeister: Grrr 2017-08-11T22:53:57Z Bike: that obviously wouldn't really be plausible 2017-08-11T22:54:11Z Bike: no amount of loganding is goin to make a ebcdic file readable 2017-08-11T22:54:14Z phoe: it's not plausible, but it's desired 2017-08-11T22:54:15Z rngoodn joined #lisp 2017-08-11T22:54:31Z Bike: of course, the reader could provide a "fuck it" restart 2017-08-11T22:54:36Z drmeister: I get it - it's not sbcl's fault - it's the crap file I'm giving it. 2017-08-11T22:54:42Z Bike: like meister asked for. but sbcl doesn't have one i guess. 2017-08-11T22:55:00Z Bike: probably because it's likely the encoding would be all... uh... out of phase afterwards 2017-08-11T22:55:12Z drmeister: I'll generate another one. I'm profiling clasp using dtrace. 2017-08-11T22:55:40Z drmeister: The backtrace file that is generated is huge and appears to have a few non-ascii characters. 2017-08-11T22:56:12Z drmeister: (sigh) Looking at the backtraces - they aren't terribly useful anyway. 2017-08-11T22:56:20Z zulu_inuoe: I mean, you could do your own string read to do any fixups and then READ on the string. Not great, but when in Burning Rome 2017-08-11T22:56:59Z zulu_inuoe: that is, if you want to take a "just return nil I guess" approach that actually turns out to be pretty useful in the real world 2017-08-11T22:57:09Z drmeister: Well, actually, they might be. I want to generate flame graphs and see where the time is spent. 2017-08-11T22:57:11Z drmeister: https://www.irccloud.com/pastebin/bWlBqC6n/ 2017-08-11T22:57:55Z Bike: but you don't know where to restart reading from (if it's a multibyte encoding) 2017-08-11T22:58:04Z drmeister: Jitted code isn't resolving to function names because I haven't figured out the jit debugging interface that gdb/lldb are supposed to support. 2017-08-11T22:58:07Z blt`` quit (Ping timeout: 255 seconds) 2017-08-11T22:58:57Z drmeister: What's the external format in sbcl for 8-bit bytes? 2017-08-11T22:59:07Z drmeister: Googling... 2017-08-11T22:59:30Z Xach: drmeister: (unsigned-byte 8)? 2017-08-11T22:59:36Z Xach: but that's not an external-format 2017-08-11T22:59:47Z phoe: drmeister: I have no idea actually. UTF-8 should have the codepoint for 162 set. 2017-08-11T22:59:48Z Xach: drmeister: do you mean for writing characters or for binary data? 2017-08-11T22:59:49Z zulu_inuoe: Bike: That's true, if we're talking about the cl builtin reads. Which I suppose we are and I for some reason forgot :P 2017-08-11T23:00:00Z Xach: sorry. i missed context. 2017-08-11T23:01:16Z drmeister: Xach: For reading a text file that contains at least one non-ascii character (integer 162) 2017-08-11T23:01:17Z Bike: "8-bit bytes" isn't a character encoding 2017-08-11T23:01:46Z Bike: you need a mapping from a sequence of bytes to a sequence of characters, like ascii or utf-8 2017-08-11T23:01:47Z bugrum quit (Remote host closed the connection) 2017-08-11T23:01:52Z rpg joined #lisp 2017-08-11T23:02:09Z Xach: drmeister: latin-1 will never choke on that. but you might not get what is intended. 2017-08-11T23:02:36Z drmeister: What's options can I use with OPEN :external-format - is that provided anywhere? 2017-08-11T23:03:25Z pierpa joined #lisp 2017-08-11T23:03:30Z drmeister: I think I found it 2017-08-11T23:03:33Z drmeister: http://www.sbcl.org/manual/ 10.1 2017-08-11T23:04:10Z karswell joined #lisp 2017-08-11T23:04:47Z rumbler31 joined #lisp 2017-08-11T23:06:38Z mishoo__ quit (Ping timeout: 246 seconds) 2017-08-11T23:08:52Z jasom: Is there a standard function that behaves the way sbcl's cl:the does on non-zero safety levels? (i.e. a type-assertion) 2017-08-11T23:09:42Z Bike: with values types? 2017-08-11T23:09:57Z jasom: ideally yes it would also work with values types 2017-08-11T23:10:35Z Bike: i don't think so. why can't you use THE? maybe i don't understand. 2017-08-11T23:10:44Z drmeister: Hmm, I have to set the :external-format of the output file as well - duh. 2017-08-11T23:11:02Z rpg: jasom: You want this because THE behaves differently on different implementations? 2017-08-11T23:11:03Z pjb: drmeister: most implementations have an option in their external format objects to specify what to do in case of invalid encoding, such as using a replacement character, etc. 2017-08-11T23:11:07Z jasom: Bike: I want well defined behavior in the event that the type is not as asserted; I can spin something up with a type-check and m-v-l 2017-08-11T23:11:32Z Bike: it would be, uh 2017-08-11T23:11:41Z Bike: i actually wrote it out the other day, let's see 2017-08-11T23:11:41Z drmeister: pjb: Neat - could you point me at how to do that? 2017-08-11T23:12:05Z rpg: jasom: If you use a macro, you could avoid the m-v-l... 2017-08-11T23:12:20Z Bike: https://github.com/robert-strandh/SICL/blob/master/Code/Cleavir/Documentation/types.tex#L152-L168 2017-08-11T23:12:26Z Bike: it will be super duper slow tho 2017-08-11T23:12:33Z rpg: oh, wait -- you're not necessarily doing this in a M-V-B context.... 2017-08-11T23:12:36Z rpg: never mind... 2017-08-11T23:12:51Z jasom: rpg: I could use an m-v-b in a macro instead of m-v-l that's true 2017-08-11T23:13:08Z rpg: one thing you cannot do is get the behavior tied in with the value of SAFETY. 2017-08-11T23:13:20Z rpg: No portable way to access compilation flags. :-( 2017-08-11T23:13:27Z pjb: drmeister: eg. clisp EXT:MAKE-ENCODING has the :INPUT-ERROR-ACTION :OUTPUT-ERROR-ACTION options that can be :ERROR, :IGNORE or a substitution character. Usually #\uFFFD which is the reserved unicode for that. http://www.clisp.org/impnotes/encoding.html 2017-08-11T23:13:40Z sjl: there's https://bitbucket.org/tarballs_are_good/policy-cond but that's only mildly portable 2017-08-11T23:14:10Z Manj-1605-Lxqt joined #lisp 2017-08-11T23:14:19Z jasom: rpg: that's not a problem. Surely *someone's* written a type assertion though? 2017-08-11T23:14:41Z Bike: for values types it's a pain and nobody really cares, i don't think 2017-08-11T23:14:53Z Bike: for single values you just use typep 2017-08-11T23:15:12Z Bike: oh, hang on, are you okay with just discarding the values? 2017-08-11T23:15:39Z rpg: sjl: awesome! supports sbcl, ccl, and allegro, which checks all the boxes for me! 2017-08-11T23:15:46Z jasom: rpg: I can't use m-v-b if I don't want to change the number of values like THE does 2017-08-11T23:15:46Z Bike: multiple-value-call would be aight there 2017-08-11T23:16:00Z rpg: sjl: Thank you for the pointer. 2017-08-11T23:17:06Z pjb: drmeister: in the case of ccl, it's hardwired: When a character cannot be encoded or decoded according to a specified external format, the character in question will be replaced with an encoding-specific replacement character. This will be #\Replacement_Character if the destination external format includes such a character; otherwise the replacement character will be #\Sub. 2017-08-11T23:17:37Z jasom: m-v-l is no better/worse than m-v-c 2017-08-11T23:17:39Z pjb: ( #\Replacement_Character is #\uFFFD ) 2017-08-11T23:17:47Z Bike: multiple value list conses 2017-08-11T23:18:00Z jasom: Bike: and m-v-c with a &rest parameter doesn't? 2017-08-11T23:18:12Z Bike: might not? 2017-08-11T23:18:18Z jasom: I suppose it's possible it doesn't cons if the rest is nil 2017-08-11T23:18:29Z Bike: i mean, if the rest list is dx 2017-08-11T23:19:24Z Bike: multiple-value-bind expands to a multiple-value-call with a &rest parameter, so implementations probably try to optimize that if it's ignored 2017-08-11T23:19:49Z Bike: do you actually have a sub-T &rest type? 2017-08-11T23:20:00Z Bike: i think sbcl THE gives up on that 2017-08-11T23:20:00Z jasom: it doesn't *have* to expand to that, it's just identical in behavior, right? 2017-08-11T23:20:11Z Bike: yes, but it does expand to that on sbcl, at least 2017-08-11T23:20:17Z Bike: probably others. it's the easy way to do it 2017-08-11T23:20:30Z jasom: I mean (the (value t) (value 1 2)) => 1; 2 2017-08-11T23:20:39Z jasom: so I need a &rest parameter to the lambda passed to m-v-c 2017-08-11T23:20:55Z Bike: right, that's why i said multiple-value-call if you're okay with discarding the values 2017-08-11T23:21:00Z jasom: Bike: I'm surprised there's not a compiler macro to prevent that expansion in many cases 2017-08-11T23:21:01Z Bike: if you're not then just use multiple-value-list yeah 2017-08-11T23:21:16Z jasom: I can use multiple-value-bind if I'm okay discarding the values 2017-08-11T23:21:30Z Bike: if you don't have a sub-T &rest, yeah. 2017-08-11T23:21:49Z jasom: sub-T &rest? 2017-08-11T23:21:56Z Bike: like (the (values integer &rest cons) ...) 2017-08-11T23:22:01Z jasom: ah 2017-08-11T23:22:08Z Bike: so do to the type check you have to actually iterate through it 2017-08-11T23:22:16Z Bike: nobody actually does this, obviously, but i don't know if you want to support it 2017-08-11T23:22:49Z jasom: &rest that is a strict subtype of T 2017-08-11T23:22:55Z jasom can now parse sub-T &rest 2017-08-11T23:23:47Z Bike: yeah, sorry 2017-08-11T23:24:35Z jasom: I had honestly forgotten that &rest took a type parameter (even though it shows up in sbcl type reports all the time) 2017-08-11T23:24:51Z jasom: wtf does &allow-other-keys do in a VALUES type? 2017-08-11T23:24:54Z Bike: nothing 2017-08-11T23:25:07Z Bike: it's a glitch in the standard or something 2017-08-11T23:25:09Z jasom: but it's allowed to be there 2017-08-11T23:25:28Z Bike: while you're at it, note that the description of values types on the page for values types directly contradicts the description on the page for THE 2017-08-11T23:25:56Z jasom: I don't think it does 2017-08-11T23:26:10Z Bike: well, either it contradicts it or it's worthless 2017-08-11T23:26:15Z jasom: it just behaves specially in the case of a value-type 2017-08-11T23:26:25Z Bike: there is no situation in which values types work the way the values type page says they do 2017-08-11T23:26:32Z jasom: typep? 2017-08-11T23:26:37Z Bike: doesn't take values types 2017-08-11T23:26:46Z Bike: wouldn't really make sense, anyway 2017-08-11T23:27:00Z jasom: would always fail; didn't realize that it specifically was disallwed 2017-08-11T23:27:20Z jasom: ooh, what about functions that contain a values type for the return and typep? 2017-08-11T23:27:36Z Bike: function types are explicitly defined as expanding into THE 2017-08-11T23:28:16Z Bike: as in, (locally (declare (ftype (function * (values x y)) f)) (f ...)) is (the (values x y) (f ...)) 2017-08-11T23:32:26Z jasom: oh, I just saw the page on the function type specifier... it does indeed boil down to THE. Very odd 2017-08-11T23:33:39Z Bike: it's kind of a complicated way of acknowledging that if function types actually concerned objects, they would be uncomputable (and the argument types would go in a weird way) 2017-08-11T23:34:47Z jasom: and of course prog1 discards values, so we have multiple-value-prog1 2017-08-11T23:35:06Z jasom: but progn doesn't discard values so we don't have multiple-value-progn 2017-08-11T23:35:27Z jasom: obviously a nod to the fact that implementations typically use ephemeral registers (or stack locations) for return values 2017-08-11T23:35:57Z Manj-1605-Lxqt quit (Quit: Leaving) 2017-08-11T23:36:03Z Bike: well that's kind of the whole point of values. 2017-08-11T23:36:15Z Bike: it's like what haskell has as unboxed tuples (as i only slightly understand) 2017-08-11T23:36:26Z Bike: if it was an actual data structure you could just return a list. 2017-08-11T23:37:22Z jasom: looks like sbcl only uses 3 registers for multiple values on x64 2017-08-11T23:37:42Z FreeBirdLjj joined #lisp 2017-08-11T23:38:23Z Bike: even if you can't use registers, you can put them in a fixed position array and avoid consing 2017-08-11T23:39:03Z KongWubba quit (Ping timeout: 240 seconds) 2017-08-11T23:39:34Z jasom: as long as it's thread-local, yes. I have an outstanding PR to parenscript that does just that 2017-08-11T23:39:45Z Bike: rite 2017-08-11T23:40:41Z jasom: previously (nth-value 1 ((lambda () ((lambda () (values 1 2))))) would return nil 2017-08-11T23:43:07Z FreeBirdLjj quit (Ping timeout: 255 seconds) 2017-08-11T23:43:22Z jasom: but really thread-local storage is just slow registers (with a lower context-switch penalty) 2017-08-11T23:44:03Z Bike: sure? 2017-08-11T23:46:43Z mishoo__ joined #lisp 2017-08-11T23:49:57Z zulu_inuoe: phoe: Thanks again for the suggestion. I just realized that I've been common lisping for over five years now and had never realized that metaclasses etc are all part of cltl2, and not standard CL. The shame 2017-08-11T23:50:32Z whoman: clos? 2017-08-11T23:50:40Z zulu_inuoe: But at least it explains why it's always been a black box to me haha. Whereas anything in the CLHS I have completely memorized 2017-08-11T23:51:15Z Bike: er, what 2017-08-11T23:51:40Z zulu_inuoe: whoman: No, using metaclasses, slot-value-using-class, etc. 2017-08-11T23:51:49Z Bike: that's mop, not cltl2 2017-08-11T23:52:01Z zulu_inuoe: Sorry. Yes. Right. 2017-08-11T23:52:16Z Bike: and some metaclasses are standard, like (class-of (class-of 4)) => built-in-class 2017-08-11T23:52:56Z zulu_inuoe: Yes. Given that :metaclass is a standard option to defclass. But only using standard facilities you can't do much with them 2017-08-11T23:53:02Z Bike: yeah. 2017-08-11T23:55:12Z cromachina joined #lisp 2017-08-11T23:59:57Z mishoo__ quit (Ping timeout: 240 seconds) 2017-08-12T00:01:29Z slyrus quit (Remote host closed the connection) 2017-08-12T00:03:45Z rumbler31 quit (Remote host closed the connection) 2017-08-12T00:06:01Z rumbler31 joined #lisp 2017-08-12T00:06:12Z _rumbler31 joined #lisp 2017-08-12T00:07:29Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T00:10:57Z _rumbler31 quit (Ping timeout: 240 seconds) 2017-08-12T00:20:24Z Karl_Dscc quit (Remote host closed the connection) 2017-08-12T00:28:07Z mikecheck quit (Quit: Leaving) 2017-08-12T00:35:24Z FakePedro1 joined #lisp 2017-08-12T00:37:27Z FakePedro quit (Ping timeout: 260 seconds) 2017-08-12T00:37:27Z FakePedro1 is now known as FakePedro 2017-08-12T00:40:24Z FreeBirdLjj joined #lisp 2017-08-12T00:43:19Z rumbler31 quit (Remote host closed the connection) 2017-08-12T00:46:12Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2017-08-12T00:49:24Z z3t0 left #lisp 2017-08-12T00:51:10Z pierpa quit (Quit: Page closed) 2017-08-12T00:51:41Z BW^- quit (Quit: BW^-) 2017-08-12T00:52:28Z rumbler31 joined #lisp 2017-08-12T00:53:41Z EvW1 quit (Ping timeout: 255 seconds) 2017-08-12T00:54:32Z dan1: i'm new to lisp and starting a project to build a small library to wrap a restful api and work with json. i'm sure there's similar projects out there i could learn from, but i'm having trouble finding them. any suggestions? 2017-08-12T00:55:16Z jrm joined #lisp 2017-08-12T01:00:35Z pjb: dan1: have you installed quicklisp? 2017-08-12T01:02:09Z dan1: i have, i'm planing with dexador. i'm looking for open source projects using similar libraries to build interfaces to webapis. it's harder than i expected to find via google :) 2017-08-12T01:02:16Z pjb: dan1: cd ~/quicklisp/local-projects ; git clone https://github.com/informatimago/lisp com.informatimago 2017-08-12T01:02:56Z pjb: then in your lisp do (ql:quickload :com.informatimago.tools.quicklisp) and use (use-package "COM.INFORMATIMAGO.TOOLS.QUICKLISP") (apropos "QUICK-") (quick-apropos "JSON") etc… 2017-08-12T01:03:28Z pjb: You can also browse (and search) http://cliki.net and http://quickdocs.org 2017-08-12T01:04:05Z gremdrus quit (Ping timeout: 260 seconds) 2017-08-12T01:04:26Z pjb: Try to phase out google, use https://www.qwant.com or https://duckduckgo.com ; they're like weapons of a more civilized age, but it's for our good. 2017-08-12T01:05:36Z dan1: ok, thanks for the links 2017-08-12T01:06:49Z phinxy joined #lisp 2017-08-12T01:10:53Z warweasle quit (Ping timeout: 246 seconds) 2017-08-12T01:13:49Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-12T01:16:45Z ebzzry joined #lisp 2017-08-12T01:18:04Z jrm: I'm trying to package a lisp-based application (stumpwm). It installs packages for sbcl and other dependencies including alexandria. After running make, it fails to find alexandria: http://ftfl.ca/paste/stumpwm-build-output.html. 2017-08-12T01:19:00Z Bike: there is a #stumpwm that might no more about the particular way it uses asdf 2017-08-12T01:21:22Z safe quit (Read error: Connection reset by peer) 2017-08-12T01:23:05Z jrm: K, will try there. 2017-08-12T01:25:30Z dan1 is now known as dan 2017-08-12T01:30:57Z warweasle joined #lisp 2017-08-12T01:33:37Z phinxy quit (Read error: Connection reset by peer) 2017-08-12T01:38:44Z vlatkoB_ quit (Remote host closed the connection) 2017-08-12T01:42:02Z FreeBirdLjj joined #lisp 2017-08-12T01:43:16Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-08-12T01:46:01Z jamtho joined #lisp 2017-08-12T01:47:27Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-12T01:57:27Z LooneyTunes joined #lisp 2017-08-12T02:04:21Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T02:12:12Z rngoodn joined #lisp 2017-08-12T02:17:58Z slyrus joined #lisp 2017-08-12T02:19:05Z elderK joined #lisp 2017-08-12T02:19:05Z elderK quit (Changing host) 2017-08-12T02:19:05Z elderK joined #lisp 2017-08-12T02:19:13Z akkad: is there a #+interactive sort of item for conditionals based on being in repl or not? 2017-08-12T02:19:34Z jesse__ joined #lisp 2017-08-12T02:20:08Z jesse__: hello this is a test, can you see my message? 2017-08-12T02:20:22Z elderK: jesse__: Sure can. 2017-08-12T02:20:28Z jesse__: cool 2017-08-12T02:20:59Z jesse__: I have a question about lisp, if it sounds like I'm down on lisp, I'm really not. I am open minded and trying to learn 2017-08-12T02:21:24Z jesse__: So every once in a while, I try out learning lisp. 2017-08-12T02:21:33Z jesse__: Every time, it seems a little less daunting 2017-08-12T02:21:53Z jesse__: I mean, I know the basics are very simple, but it just feels very strange regardless. 2017-08-12T02:22:03Z jesse__: I'm sure you have never heard that before ;) 2017-08-12T02:22:15Z jesse__: Anyway, my most recent attempt is with clojure 2017-08-12T02:22:23Z beach: Good morning everyone! 2017-08-12T02:22:30Z basket: Hello, beach 2017-08-12T02:22:45Z elderK: Lisp is bit jarring if you're coming from more mainstream languages like C. 2017-08-12T02:22:53Z elderK: Hey beach! 2017-08-12T02:22:57Z jesse__: I am not anywhere close to good at it, but I got a few things to work, and I can tell that I could pretty much get anything to work in it that I could in languages I am actually good at 2017-08-12T02:22:58Z warweasle quit (Quit: Leaving) 2017-08-12T02:23:42Z jesse__: So now I'm wondering if lisp is really "worth it". Of course that is too subjective of a question for someone else to answer... 2017-08-12T02:23:57Z jesse__: But I mean, lets say it was worth, it why would that be? 2017-08-12T02:24:02Z elderK: jesse__: I'd say learning Lisp is worth it even if you never really use the language in practice. 2017-08-12T02:24:19Z elderK: Being exposed to different ways of solvings problems is beneficial. 2017-08-12T02:24:37Z jesse__: I agree, and I have already benefited a lot from the exposure to it. 2017-08-12T02:24:50Z jesse__: But I'm wondering what I would get out of going to the next level 2017-08-12T02:24:57Z jamtho quit (Ping timeout: 240 seconds) 2017-08-12T02:24:58Z elderK: The next level being what? Writing large software in it? 2017-08-12T02:25:11Z elderK: Or perhaps a serious project? 2017-08-12T02:25:22Z jesse__: I mean, the way I see it, the main advantage of lisp is that you can write your syntax, DSLs, via metaprogramm, macros, etc. 2017-08-12T02:25:31Z jesse__: But do those things actually help you? 2017-08-12T02:25:32Z elderK: jesse__: It's also just convenient to work in :) 2017-08-12T02:26:16Z jesse__: Ok, so there must be an element of convenience I have not able to experience yet. 2017-08-12T02:26:22Z jesse__: What do you find convenient about it? 2017-08-12T02:26:52Z elderK: Well, sure, you can do those things in Lisp. But that's not the only stuff that makes it useful. 2017-08-12T02:26:55Z vtomole quit (Ping timeout: 260 seconds) 2017-08-12T02:27:22Z jesse__: I mean aside from being able customize your emacs ;) 2017-08-12T02:27:26Z elderK: For starters, it has a powerful object system. You could argue C++, C#, Java, etc, have the same. But, CLOS allows you to express various patterns very... succintly, directly. 2017-08-12T02:27:29Z elderK: Also, 2017-08-12T02:27:50Z elderK: Like other languages, CL is garbage collected. So, you don't have to worry about manual memory managemnet unless you're doing stuff with FFI. 2017-08-12T02:28:14Z malice: jesse__: CLOS is great and CL allows you to write fast programs fast. 2017-08-12T02:28:15Z elderK: Because fucntions are first class data types, it's quite straight forward to write generalized code - stuff that's parametric like map or reduce or whatever. 2017-08-12T02:28:39Z jesse__: garbage collection is nice, or at the very least, not having to worry about cleaning up memory is nice, regardless of if that is because of garbage collection or not. 2017-08-12T02:28:42Z elderK: You have to realize that a lot of CL's good points have been stolen by other languages and often done worse in those other languages. 2017-08-12T02:28:48Z malice: jesse__: what's best about list - for me - is its environment. SLIME beats anything I've ever programmed with. 2017-08-12T02:29:01Z elderK: Now - I am no cL guru myself. But, I can see why Lisp is pleasant to work in. 2017-08-12T02:29:27Z malice: but there are SLIME clones in other languages, e.g. Python's Jupiter or whatever 2017-08-12T02:29:37Z elderK: This is all before you consider the fact that you can work on some program iteratively through the REPL - letting you quickly test out ideas, etc. This gives you the same kind of prototyping speed that say BASIC would give you. 2017-08-12T02:29:49Z malice: what really makes great Lisp's dynamic environment great is restart system 2017-08-12T02:29:56Z malice: or at least that's conclusion I've reached 2017-08-12T02:30:14Z elderK: restarts are pretty epic. No other languages does exceptions / error-handling as nice as CL. 2017-08-12T02:30:15Z jesse__: Ah the REPL thing... It always... frustrated me. So close to something more than it is, yet people don't seem to care to take it to the next level. 2017-08-12T02:30:31Z malice: jesse__: what's wrong? 2017-08-12T02:30:32Z jesse__: speaking of REPLs in general that is... 2017-08-12T02:31:01Z jesse__: Well, especially when I'm working in lisp, I have this "feeling" that I should be able to work entirely in the REPL 2017-08-12T02:31:09Z basket: jesse__: I think that Lisp is unusually good at allowing you to bend it into whatever language you would like to have. In other languages you think of solutions and then figure out how to graft them onto the language, in Lisp you build the language up so that it is a language specifically designed for the problem you're solving, moreso than in other languages I've used. That flexibility in everything is the key point, to me 2017-08-12T02:31:11Z malice: And what's preventing you from that? 2017-08-12T02:31:12Z jesse__: and then after hacking for a while, just do alike a ...save state or something 2017-08-12T02:31:16Z elderK: jesse__: You have to stop thinking "Is Lisp worth it? These features are elsewhere (in various ad-hoc forms!)" and think "Hey, is this a pleasant environment to work in?" 2017-08-12T02:31:18Z keviv quit (Remote host closed the connection) 2017-08-12T02:31:23Z elderK: Does it let me do things that other languages make more difficult? And yes, CL does. 2017-08-12T02:31:50Z malice: jesse__: in sbcl, that would be save-lisp-and-die 2017-08-12T02:32:03Z malice: jesse__: but I'd argue you've been using REPL wrong. 2017-08-12T02:32:14Z elderK: I'm not sure about others but I pretty much work entirely from the REPL. Sure, I'm interfacing with the REPL via SLIME or something similar but it's still working through the REPL. 2017-08-12T02:32:52Z elderK: jesse__: Also, fwiw, some benefits of various languages aren't apparent until you write something large. 2017-08-12T02:33:07Z elderK: Take the simple principle of writing well modularized code. 2017-08-12T02:33:15Z basket: The interactive development part is a really big plus, but if that were the whole draw for me, I'd rather write Smalltalk 2017-08-12T02:33:17Z elderK: Making sure data is encapsulated from other modules, etc. 2017-08-12T02:33:34Z jesse__: Ok, so when you hackers say you work from the REPL, do you also intentionally save your source files differently from how things go changed in the REPL? Do you just work in the REPL until you figure out what you are trying to do, and then copy that into your source code? 2017-08-12T02:33:41Z elderK: Some people dont understand the need for that. UNTIL they write large scale software and realize, shit, it's important for maintainability. 2017-08-12T02:33:57Z malice: jesse__: It depends 2017-08-12T02:34:02Z elderK: jesse__: Everything I type into a source file, is going through the REPL. 2017-08-12T02:34:13Z jesse__: oh! 2017-08-12T02:34:13Z malice: jesse__: if I'm prototyping, I'd probably just stay in REPL, but that'd be small program or algorithm. 2017-08-12T02:34:14Z vtomole joined #lisp 2017-08-12T02:34:22Z malice: otherwise, what elderK said. 2017-08-12T02:34:29Z elderK: jesse__: Stop thinking of CL is like Smalltalk. You can make it like that with respect to images /core. 2017-08-12T02:34:38Z jesse__: I've been trying to do that with codi for Vim in other languages, and it is very limited. 2017-08-12T02:34:47Z elderK: Do your prototyping via SLIME. If you hose it then restart the SLIME. 2017-08-12T02:34:51Z jesse__: So maybe the problem is I'm not using lisp... 2017-08-12T02:35:01Z beach: Yes. 2017-08-12T02:35:05Z elderK: jesse__: I use Vim. I use SLIMV. 2017-08-12T02:35:15Z malice: See that guy 2017-08-12T02:35:17Z malice: he's dangerous 2017-08-12T02:35:20Z malice: he likes vim 2017-08-12T02:35:23Z malice: ;) 2017-08-12T02:35:26Z elderK: :P 2017-08-12T02:35:39Z jesse__: I'm more of a neovim guy myself 2017-08-12T02:35:58Z beach: jesse__: I think you should learn to work the way most people here in #lisp use Common Lisp before you ask complicated philosophical questions like yours. 2017-08-12T02:36:28Z elderK: jesse__: Fair enough. Whatever works, man. :) 2017-08-12T02:36:36Z jesse__: yeah... at least this has given me hope that what I have wanted to do most, the only I couldn't, is I wasn't using lisp 2017-08-12T02:36:42Z jesse__: Here is an example. 2017-08-12T02:37:14Z jesse__: Look at the codi.vim plugin page, it shows an animated gif so you can quickly get excited 2017-08-12T02:37:30Z malice: Oh, but Common Lisp won't make you solve Collatz conjencture 2017-08-12T02:37:30Z jesse__: when I saw that, it made me think that maybe live programming had been realized. 2017-08-12T02:37:35Z elderK: It's a simple enough question to answer, man. Do you enjoy using Lisp? If not, why? If so, why? Do you want to learn to program in a way that teaches you new ways to solve problems? Yes? Good. 2017-08-12T02:37:38Z malice: (although I hope I'm wrong :D) 2017-08-12T02:37:44Z elderK: Do you want to see how OO is implemented in other languages out of curiosity? 2017-08-12T02:37:56Z elderK: Do you want to see what it's like to work in a language where reflection isn't an afterthought? 2017-08-12T02:38:07Z elderK: These are all useful things. 2017-08-12T02:38:24Z jesse__: the REPL being an afterthought certainly has been bugging me in other languages lately 2017-08-12T02:38:28Z elderK: Again, even if you don't use the language in every-day work, learning it - learning how to do things in it - will change how you design things in the future, in all languages. 2017-08-12T02:38:38Z elderK: And this is very useful. Exposure to different paradigms. 2017-08-12T02:38:53Z elderK: for the same reason I'd recommend playing with Standard ML, Pony or Haskell. 2017-08-12T02:38:55Z bpanthi1 joined #lisp 2017-08-12T02:39:26Z elderK: jesse__: REPL is not an afterthought with Lisp. I know you weren't saying that - but be aware: It's been first class since the start. 2017-08-12T02:39:32Z jesse__: So like I said saw codi.vim and whished for live coding. But then I tried it, and its' just a repl of course. So you won't get feedback while you are implementing a function, because it is only being defined, not run. 2017-08-12T02:39:44Z jesse__: So then you end up writing code to test the code 2017-08-12T02:39:47Z elderK: jesse__: You really should learn to use SLIME. 2017-08-12T02:39:52Z jesse__: But then you are already doing that with unit testing 2017-08-12T02:40:00Z jesse__: so I though ok, run codi in my unit test code 2017-08-12T02:40:12Z jesse__: but that didn't help because all the unit test code is still inside a function! 2017-08-12T02:40:17Z elderK: Writing unit tests, etc, isn't magically going to go awway. 2017-08-12T02:40:21Z Sanctus joined #lisp 2017-08-12T02:40:23Z elderK: You should still do that. 2017-08-12T02:40:26Z malice: What do you expect? 2017-08-12T02:40:45Z jesse__: so I made my own testing library so I could get live feedback while writing the tests, by not putting the tests inside of any functions 2017-08-12T02:40:52Z malice: jesse__: your intentions aren't clear to me. What feedback do you want? 2017-08-12T02:41:03Z malice: In REPL, you can write function, e.g. with defun, and then try it out 2017-08-12T02:41:05Z malice: immediately 2017-08-12T02:41:11Z malice: call it in REPL. 2017-08-12T02:41:17Z malice: but it looks like you want something else? 2017-08-12T02:41:47Z malice: oh! 2017-08-12T02:42:08Z jesse__: so here is what I made for node: https://github.com/still-dreaming-1/living-tests 2017-08-12T02:42:20Z malice: jesse__: you want something like that? https://www.youtube.com/watch?v=2Z4GfOUWEuA&list=PL2VAYZE_4wRKKr5pJzfYD1w4tKCXARs5y 2017-08-12T02:42:34Z jesse__: But it can only help so much because the node REPL is terrible and nobody cares 2017-08-12T02:43:14Z beach: jesse__: I haven't followed the discussion carefully, but how is that code related to Common Lisp? 2017-08-12T02:44:10Z jesse__: it's designed to let your tests run in a REPL for maximum feedback, and lisp programmers use REPLs a lot 2017-08-12T02:44:19Z elderK: Maximum feedback being what? 2017-08-12T02:44:19Z jesse__: beach, * 2017-08-12T02:44:28Z elderK: I can already define functions, run them, etc. 2017-08-12T02:44:31Z elderK: I can already get information about them. 2017-08-12T02:44:37Z elderK: Find out their documentation, their arguments, etc. 2017-08-12T02:44:43Z malice: that one is great! 2017-08-12T02:44:46Z elderK: What kind of feedback are you talking about? 2017-08-12T02:44:50Z malice: #'inspect and #'documentation are really nice 2017-08-12T02:44:53Z FreeBirdLjj joined #lisp 2017-08-12T02:44:59Z beach: jesse__: So you are judging the Common Lisp development environment from a completely different experience of a REPL? 2017-08-12T02:45:13Z jesse__: well, here is what happens in codi, every keystroke you type, reruns the entire contents through the REPL, showing all the REPL output to the right of each line. 2017-08-12T02:45:14Z malice: too bad #'documentation 's interface is (imho) so bad with generic functions 2017-08-12T02:45:17Z elderK: jesse__: Again, have you tried using SLIME? Or seen people use it? 2017-08-12T02:45:41Z jesse__: elderK, I will try out SLIME. I've only heard about it. 2017-08-12T02:45:48Z elderK: jesse__: Do that first. 2017-08-12T02:45:54Z beach: jesse__: I think you should learn to work the way most people here in #lisp use Common Lisp rather than guessing how it may be used from experience in other languages and programming environments. 2017-08-12T02:46:20Z elderK: jesse__: As for reexecuting an entire source file or source files eveyr time you enter a key, that's pretty... inefficient. 2017-08-12T02:46:23Z elderK: As for getting feedback, 2017-08-12T02:46:27Z elderK: that happens automatically in SLIME. 2017-08-12T02:46:38Z elderK: If you start typing a function say, you can complete it. The args for that function, the documentation, will appear automatically. 2017-08-12T02:46:49Z elderK: If you want to inject your stuff to the repl, that's very easy and fast to do. 2017-08-12T02:46:56Z bpanthi1 quit (Quit: bpanthi1) 2017-08-12T02:47:07Z elderK shrugs 2017-08-12T02:47:30Z elderK: do note, however, that SLIMV isn't quite as great as SLIME for Emacs is. 2017-08-12T02:47:36Z elderK: It has some minor issues. 2017-08-12T02:47:52Z elderK: (If you want to continue using Vim or variants) 2017-08-12T02:48:04Z elderK: Also note that Emacs has various Vi compatibility modes such as EVIL. 2017-08-12T02:49:38Z jesse__: I will try out SLIME, but I'm wondering if it will update the feedback it showed you from running certain functions after you change the implementation of the functions even though you have not gone out of your way to call it again? 2017-08-12T02:49:52Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2017-08-12T02:49:56Z elderK: jesse__: You still haven't defined what feedback is here. 2017-08-12T02:50:06Z jesse__: whatever the REPL is showing you 2017-08-12T02:50:09Z elderK: And yes, the moment the redefine the function, it's documentation, argument lists, etc, is all updated. 2017-08-12T02:50:23Z elderK: Learn SLIME. 2017-08-12T02:50:28Z elderK: Then discuss how it is lesser than Codi. 2017-08-12T02:50:32Z jesse__: but what about the result of running it? 2017-08-12T02:50:36Z elderK: Yes. 2017-08-12T02:50:45Z elderK: If you want the return type, yes. 2017-08-12T02:50:50Z elderK: Otherwise, you will have to execute it yourself. 2017-08-12T02:51:04Z jesse__: what if instead of redefining it, you just want to slightly alter the implementation? Is that easy to do by redefining it? 2017-08-12T02:51:10Z elderK: That being said - if you want to make SLIME do more, that's possible too. 2017-08-12T02:51:19Z elderK: jesse__: That IS redefining it. 2017-08-12T02:51:25Z Sanctus quit (Quit: ERC (IRC client for Emacs 25.1.1)) 2017-08-12T02:51:48Z jesse__: elderK, I figured that, but what I mean is, do you have to rewrite the entire implementation again? 2017-08-12T02:51:56Z elderK: No. 2017-08-12T02:51:58Z elderK: you just reevaluate it. 2017-08-12T02:52:02Z elderK: The function you altered. 2017-08-12T02:52:09Z elderK: Then boom, REPL has the latest greatest version of your function. 2017-08-12T02:52:21Z elderK: And all callers will make use of that updated function. 2017-08-12T02:52:43Z elderK: For instance 2017-08-12T02:52:57Z elderK: for me, after I edit a function - however I do it, change its args, its implementation, whatever. 2017-08-12T02:52:59Z elderK: I just type ,e 2017-08-12T02:53:02Z elderK: And boom 2017-08-12T02:53:30Z elderK: The Lisp running SLIME reevaluates my function, compiling it automatically (just the function) and its ready. 2017-08-12T02:54:08Z elderK: You dont have to recompile the entire source or source tree. 2017-08-12T02:54:11Z brendos joined #lisp 2017-08-12T02:54:16Z elderK: you can reevaluate/recompile JUST the function you're working on. 2017-08-12T02:54:18Z elderK: Or JUST the class. 2017-08-12T02:54:21Z elderK: Or JUST the method. 2017-08-12T02:54:29Z elderK: But if you want, you can reevaluate the entire source file too. Or entire source tree. 2017-08-12T02:54:41Z elderK: (ASDF or quicklisp is helpful here) 2017-08-12T02:54:57Z elderK: I hope the more experienced Lispers, beach and such, will correct me here if I'm wrong. 2017-08-12T02:54:57Z jesse__: that sounds pretty great. It sounds like what the other languages are missing lisp hackers already figured out ages ago... 2017-08-12T02:55:02Z elderK: As I am far less experienced than they are 2017-08-12T02:55:21Z elderK: jesse__: So. Watch some YouTubes about SLIME. 2017-08-12T02:55:32Z elderK: Try it out under Emacs for a little. Try out SLIMV. 2017-08-12T02:55:39Z elderK: Then you'll see :) 2017-08-12T02:55:46Z elderK: And be in a better place to discuss shortcomings. 2017-08-12T02:56:13Z elderK: beach, malice: Can you guys chime in here, correct me if I'm wrong? 2017-08-12T02:56:28Z FreeBirdLjj joined #lisp 2017-08-12T02:56:31Z jesse__: ok, so do you recommend learning that over say... clojure? I mean assuming I don't desperately need Java interop. 2017-08-12T02:56:44Z malice: well, one of the thing I'm missing is what jesse__ wants 2017-08-12T02:56:52Z malice: it looks like he wants the REPL to go back in time and reevaluate expressions 2017-08-12T02:56:55Z malice: that's not going to happen 2017-08-12T02:56:59Z malice: but if you have some code running 2017-08-12T02:57:01Z malice: and it uses some function 2017-08-12T02:57:06Z malice: and you wil redefine that function 2017-08-12T02:57:18Z elderK: jesse__: I'd say learning CL first. 2017-08-12T02:57:19Z malice: if the code is written in proper way, the function's behaviour will change 2017-08-12T02:57:23Z malice: and now I'll read log 2017-08-12T02:57:30Z elderK: If you want to experience the Lisp REPL - and SLIME fully - use CL. 2017-08-12T02:57:45Z elderK: I'm sure SLIME works with Clojure but it will be different to how it works with CL in some ways. 2017-08-12T02:57:54Z elderK: malice: Thank you. 2017-08-12T02:58:39Z elderK: jesse__: If you want to learn Lisp, learn Lisp. 2017-08-12T02:58:48Z elderK: I.e. Common Lisp. 2017-08-12T02:59:09Z elderK: Scheme, Clojure, they are also Lisps. But they are not Common Lisp. And as such, their communities, their ways of working etc, their idioms and priorities, they're all different. 2017-08-12T02:59:21Z elderK: I'm pretty sure they can all use Slime. But, differently. 2017-08-12T02:59:30Z elderK: Since the languages themselves work differently. 2017-08-12T02:59:35Z jesse__: k, maybe since I already have something working in clojure, I will give it a wirl in codi... actually I just remembered codi comes pre-built with clojure integration... (foams at mouth) 2017-08-12T02:59:48Z Achylles quit (Ping timeout: 240 seconds) 2017-08-12T02:59:54Z elderK: :| 2017-08-12T03:00:14Z malice: jesse__: that's not CL 2017-08-12T03:00:15Z elderK: Why not use Clojure with its SLIME integration? 2017-08-12T03:00:30Z malice: and Clojure won't work as good as CL 2017-08-12T03:00:34Z malice: even though they both start with same letters 2017-08-12T03:00:41Z jesse__: haha 2017-08-12T03:00:45Z jesse__: I believe you 2017-08-12T03:01:02Z jesse__: I'm going to try out codi first because it will take my like 2 seconds 2017-08-12T03:01:09Z malice: As we all said. Install CL implementation - I use SBCL - install SLIME - you can use Prelude, or - if you prefer vim - maybe Spacemacs? 2017-08-12T03:01:14Z malice: and then see for yourself. 2017-08-12T03:01:27Z malice: You can come in here to ask for help if you get stuck or have problems 2017-08-12T03:01:31Z malice: or want to do something and don't know how 2017-08-12T03:01:33Z elderK: Or just use Slimv with VIM :) It works quite well. As I said, it does have some annoying niggles. But otherwise, it's pretty swis. 2017-08-12T03:01:45Z malice: but otherwise, it's like telling you how ice cream tastes 2017-08-12T03:01:47Z beach: elderK: What you write is pretty accurate. 2017-08-12T03:02:00Z malice: we can go on and on, but if you haven't tasted the ice cream, you don't know its taste. period. 2017-08-12T03:02:02Z elderK: beach: Good. I was worried I might be misleading jesse__. 2017-08-12T03:02:23Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-08-12T03:02:33Z beach: elderK: I don't think jesse__ knows enough to judge the accuracy of what you write. :) 2017-08-12T03:03:33Z elderK: beach: Perhaps :) I still don't want to mislead him or anyone else I try to help :) 2017-08-12T03:04:15Z jesse__: well I get the idea enough to understand you can deeply integrate the REPL into your normal development without it being gimmicky. Don't worry about the details, I don't have any specific expectations 2017-08-12T03:04:15Z beach: jesse__: In case you didn't realize it, #lisp is dedicated to Common Lisp. Experience with some REPL in some other language will not necessarily be applicable to Common Lisp and the programming environment that most people here use, i.e. SLIME. 2017-08-12T03:04:59Z elderK: jesse__: But you do have expectations. We've spent time here trying to explain to you that your expectations are in SLIME, mostly. 2017-08-12T03:05:11Z elderK: You want "feedback", etc. 2017-08-12T03:05:24Z elderK: I'm not going to restate what I have earlier. But, it's there. 2017-08-12T03:05:31Z elderK: And frankly, its there in a way that most languages can't match. 2017-08-12T03:05:37Z elderK: Except perhaps Smalltalk. 2017-08-12T03:05:51Z elderK: Again: Lisp has reflection pretty much built-in. It's not an afterthought. 2017-08-12T03:06:05Z elderK: This feature makes SLIME very powerful. 2017-08-12T03:06:17Z elderK: And that's ignoring the rest of the stuff that CL allows and can do. 2017-08-12T03:07:49Z elderK: jesse__: If you don't want to commit to using CL or SLIME right away, check out some of the SLIME videos. 2017-08-12T03:07:58Z elderK: That will at least give you an example of what we're talking about. 2017-08-12T03:11:20Z malice: elderK: I think we told jesse__ all that we could. It's his time to make a move. 2017-08-12T03:11:41Z jesse__: Check this out for a quick demo of codi's live feedback in python: https://github.com/metakirby5/codi.vim 2017-08-12T03:12:51Z beach: Looks nice. 2017-08-12T03:13:08Z elderK: malice: Roger roger. 2017-08-12T03:13:52Z elderK: God damn Firefox is slow now. 2017-08-12T03:14:04Z elderK: :| 100% over 4 cores just on Facebook. 2017-08-12T03:15:48Z zacts joined #lisp 2017-08-12T03:16:08Z muzik: people still use facebook? 2017-08-12T03:16:14Z sfa joined #lisp 2017-08-12T03:16:33Z jesse__: muzik, right? and firefox... 2017-08-12T03:16:52Z muzik: whats a firefox? 2017-08-12T03:17:00Z elderK: jesse__: I would rather urinate pins than use chrome :P 2017-08-12T03:17:12Z muzik: i wouldnt 2017-08-12T03:17:15Z sjl: > 1.32 billion daily active users on average for June 2017 2017-08-12T03:17:23Z sjl: > being "surprised" people use facebook 2017-08-12T03:17:45Z muzik: if you go by that logic, Justin bieber is one of the greatest artists of all time 2017-08-12T03:17:56Z sjl: popular != good 2017-08-12T03:17:57Z elderK: I figure the performance drop is maybe a regression, since they're doing a ton to go multiprocess like Chrome and Edge and stuff. 2017-08-12T03:18:19Z malice: elderK: I also think that after giving it some thought, one of the essential features that make programming in Lisp pleasant is its restart system 2017-08-12T03:18:22Z jesse__: elderK, Yeah, Chrome is terrible in the configurable department. That's why I use vivalid instead. 2017-08-12T03:18:24Z muzik: elderK, do you know how react works? I bet your cpu usage is thanks to react on facebook 2017-08-12T03:18:26Z jesse__: *Vivaldi 2017-08-12T03:18:57Z elderK: muzik: that doesn't explain why the CPU is pegged on other sites that are mostly static. 2017-08-12T03:19:10Z elderK: muzik: If React is as horrible as other JS frameworks, I'm sure it's a real hog. 2017-08-12T03:19:13Z elderK: :) 2017-08-12T03:19:17Z muzik: facebook is not mostly static mate :) 2017-08-12T03:19:33Z elderK: muzik: I said "other mostly static" 2017-08-12T03:19:37Z elderK: I did not say FB was static. 2017-08-12T03:19:55Z muzik: "other" strongly implies that the current is also mostly static 2017-08-12T03:20:15Z muzik: so if i said, my house is nice, like "other" houses 2017-08-12T03:20:15Z elderK: Okay, then I didn't say precisely what I meant: 2017-08-12T03:20:22Z elderK: I mean: "It pegs the cores on sites that are mostly static, too." 2017-08-12T03:20:28Z schoppenhauer quit (Ping timeout: 255 seconds) 2017-08-12T03:20:35Z muzik: oooohhhh 2017-08-12T03:20:43Z elderK: my bad. 2017-08-12T03:20:45Z elderK: :) 2017-08-12T03:21:09Z muzik: may i ask, on the topic of facebook, why do you use it? 2017-08-12T03:21:10Z felipedvorak joined #lisp 2017-08-12T03:21:21Z muzik: Because so many people you care about use it? 2017-08-12T03:21:29Z beach: It would be even better to stick to the topic of #lisp. 2017-08-12T03:21:42Z muzik: it would, but no one is :) 2017-08-12T03:21:58Z beach: Try harder. 2017-08-12T03:22:09Z muzik: Is there are lisp plugin to use facebook? 2017-08-12T03:22:12Z schoppenhauer joined #lisp 2017-08-12T03:22:24Z muzik: lisp package* 2017-08-12T03:22:32Z malice: muzik: drakma? 2017-08-12T03:23:01Z elderK: muzik: PM me, we can discuss FB privately. 2017-08-12T03:23:25Z jesse__: You seem like an interesting bunch to talk to so this seems a good a place as any to share my recently aquired extremist viewpoing on testing. 2017-08-12T03:23:56Z jesse__: Here is the statement I previously made "Shipping code with less than 100% coverage is usually irresponsible" 2017-08-12T03:24:20Z beach: jesse__: The fact that people here are "an interesting bunch" is not reason enough to discuss something here. Please try to stick to the topic. 2017-08-12T03:24:34Z jesse__: ah :( ok 2017-08-12T03:25:27Z glamas joined #lisp 2017-08-12T03:26:14Z jesse__: One more funny thing and then I leave now. The last time I chatted about it, the person convinced me to change it kind the reverse: "As a result of previous people's irresponsibleness, 100% code coverage is usually irresponsible" 2017-08-12T03:26:39Z jesse__ quit (Quit: Leaving) 2017-08-12T03:32:12Z malice: Was he just trying to convert us to his Python testing framework? 2017-08-12T03:33:09Z elderK: malice: I'm glad I'm not the only one who found that conversation frustrating. 2017-08-12T03:33:09Z glamas quit (Remote host closed the connection) 2017-08-12T03:33:40Z elderK: It felt as if he ignored everything we said and decided to say, "CODI CODI CODI!" 2017-08-12T03:33:51Z elderK shrugs 2017-08-12T03:34:20Z Bike: i pretty much tune out anyone who starts off with "convince me" or "why should i use lisp", because the arguments take more time than it would to download something and playaround 2017-08-12T03:34:47Z elderK: Bike: Aye. I mean at the end of the day it comes down to: Do you like Lisp? :P 2017-08-12T03:34:51Z elderK: If you do, then good. Continue using it. 2017-08-12T03:35:03Z elderK: If you don't - and you've already decided that - asking us to convince you won't help. 2017-08-12T03:35:07Z elderK: The decision's already been made. 2017-08-12T03:35:12Z elderK shrugs 2017-08-12T03:36:25Z safe joined #lisp 2017-08-12T03:39:38Z malice: Nevertheless it's good to sometimes talk like that 2017-08-12T03:39:46Z malice: Allows you to gather thoughts on Lisp. 2017-08-12T03:39:54Z malice: Although that probably doesn't apply to beach anymore 2017-08-12T03:40:05Z malice: His beard is too long :P 2017-08-12T03:44:18Z elderK: Hahaha :) 2017-08-12T03:44:23Z elderK: Majestic, even. 2017-08-12T03:44:31Z elderK: :D 2017-08-12T03:44:39Z MetaHertz quit (Remote host closed the connection) 2017-08-12T03:45:32Z beach: I do know that, although we have a decent programming environment, it is not perfect and it would be great to see some improvements. 2017-08-12T03:45:59Z beach: I mean, I am trying to make that happen. Not just whining. 2017-08-12T03:46:05Z elderK nods 2017-08-12T03:46:22Z elderK: It would have been useful if he had used SLIME and expressed its shortcomings compared to Codi, say. 2017-08-12T03:46:26Z elderK: But just saying CODI DOES THIS! 2017-08-12T03:46:27Z elderK: I WANT THIS! 2017-08-12T03:46:30Z elderK: RARRRR 2017-08-12T03:46:32Z elderK: Doesn't help us. 2017-08-12T03:47:01Z malice: Not to sound racist, but I'm curious what country he came from. 2017-08-12T03:47:33Z elderK: I would too, to be honest. Now that you've mentioned it. 2017-08-12T03:47:50Z elderK: Not to stray too far from the topic but say on FB. I'm subscribed to several programming channels. 2017-08-12T03:48:09Z elderK: You'd be surprised how many people from overseas message me or other people, about "being a good programmer." All of them want a quick immediate solution to becoming one. 2017-08-12T03:48:15Z elderK: None of them seem to want to invest the time or effort. 2017-08-12T03:48:37Z elderK shrugs 2017-08-12T03:48:43Z elderK: Perhaps it is more age than race. 2017-08-12T03:49:00Z elderK: I know that when I was younger, I was far less patient. 2017-08-12T03:49:11Z Bike: ip looks like el paso. 2017-08-12T03:49:26Z Bike: racism is over 2017-08-12T03:49:31Z elderK: Yup. 2017-08-12T03:49:43Z anticrisis: hiya folks, I'm interested in concurrency: the :stmx system looks very impressive, well documented, lots of tests -- is there a way to get an idea of how battle-tested it is, what projects use it in production, etc? 2017-08-12T03:50:01Z anticrisis: (not to change the subject, sorry) 2017-08-12T03:50:11Z elderK: anticrisis: No problem :) This is what we SHOULD be talking about :D 2017-08-12T03:50:13Z anticrisis: (also does it run on codi?) 2017-08-12T03:50:20Z elderK: HAHAHAHAHAHAHA 2017-08-12T03:50:21Z malice: :D 2017-08-12T03:50:22Z elderK: :p 2017-08-12T03:50:46Z malice: anticrisis: to answer your question: I don't know. 2017-08-12T03:50:50Z Bike: i would just try it. i mean, it looks solid enough 2017-08-12T03:51:00Z malice: But for simpler uses, lparallel is really nice. 2017-08-12T03:54:04Z malice: I want to write blog. I know there is some nice software in other languages, like Ruby's Jekyll, but I'm interested in Lisp tools. 2017-08-12T03:54:06Z malice: Do you know any? 2017-08-12T03:58:05Z anticrisis: malice: closest thing i can think of would be codex, a documentation generator 2017-08-12T03:58:40Z anticrisis: but it's such a poor match for the blogging workflow, i don't think it's what you're looking for 2017-08-12T04:01:57Z wooden quit (Read error: Connection reset by peer) 2017-08-12T04:02:26Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T04:04:12Z malice: From the sound of it, not really 2017-08-12T04:04:40Z rumbler31 quit (Remote host closed the connection) 2017-08-12T04:04:47Z malice: Yeah, doesn't look like what I'm after. 2017-08-12T04:06:20Z beach: It would probably be best to ask some contributors to planet.lisp. 2017-08-12T04:06:26Z wooden joined #lisp 2017-08-12T04:06:30Z edgar-rft: malice: what about (write "blog") ? 2017-08-12T04:08:59Z rngoodn joined #lisp 2017-08-12T04:10:55Z quazimodo joined #lisp 2017-08-12T04:11:41Z malice: edgar-rft: well, but I don't want user to depend on #'read 2017-08-12T04:12:15Z malice: beach: thanks, I'll look there 2017-08-12T04:12:39Z sellout- quit (Quit: Leaving.) 2017-08-12T04:12:55Z sellout- joined #lisp 2017-08-12T04:13:24Z sellout- quit (Client Quit) 2017-08-12T04:13:40Z sellout- joined #lisp 2017-08-12T04:13:52Z edgar-rft: malice: But the advantage would be that Lisp would write the blog for you. That's *much* less work. 2017-08-12T04:14:04Z anticrisis: there's a macro for that 2017-08-12T04:14:12Z sellout- quit (Client Quit) 2017-08-12T04:14:30Z sellout- joined #lisp 2017-08-12T04:14:43Z damke__ joined #lisp 2017-08-12T04:15:00Z sellout- quit (Client Quit) 2017-08-12T04:15:15Z sellout- joined #lisp 2017-08-12T04:15:15Z malice: Hmm... 2017-08-12T04:15:21Z malice: I might use Codi after all. 2017-08-12T04:15:41Z anticrisis: lol 2017-08-12T04:15:48Z sellout- quit (Client Quit) 2017-08-12T04:16:05Z sellout- joined #lisp 2017-08-12T04:16:14Z malice: ;) 2017-08-12T04:16:36Z sellout- quit (Client Quit) 2017-08-12T04:16:55Z sellout- joined #lisp 2017-08-12T04:17:24Z sellout- quit (Client Quit) 2017-08-12T04:20:48Z grouzen joined #lisp 2017-08-12T04:49:31Z scymtym joined #lisp 2017-08-12T04:51:11Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-12T04:54:36Z sdemarre joined #lisp 2017-08-12T04:58:47Z Bike quit (Ping timeout: 260 seconds) 2017-08-12T05:05:22Z rumbler31 joined #lisp 2017-08-12T05:09:19Z damke joined #lisp 2017-08-12T05:09:53Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-12T05:10:41Z damke__ quit (Ping timeout: 240 seconds) 2017-08-12T05:14:20Z muzik is now known as muzik_ 2017-08-12T05:15:18Z Bock joined #lisp 2017-08-12T05:19:05Z bugrum joined #lisp 2017-08-12T05:20:18Z malice quit (Remote host closed the connection) 2017-08-12T05:22:04Z dddddd quit (Remote host closed the connection) 2017-08-12T05:26:28Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T05:32:40Z sfa quit (Quit: Lost terminal) 2017-08-12T05:32:41Z quazimodo quit (Read error: Connection reset by peer) 2017-08-12T05:32:58Z quazimodo joined #lisp 2017-08-12T05:34:59Z Ellenor is now known as Dymaxion 2017-08-12T05:35:49Z Dymaxion is now known as Ellenor 2017-08-12T05:35:59Z muzik_ is now known as muzik 2017-08-12T05:38:51Z pyx joined #lisp 2017-08-12T05:38:56Z pyx quit (Client Quit) 2017-08-12T05:53:39Z doesthiswork quit (Quit: Leaving.) 2017-08-12T05:57:46Z teggi joined #lisp 2017-08-12T06:05:40Z vtomole quit (Ping timeout: 260 seconds) 2017-08-12T06:08:03Z goosnargh joined #lisp 2017-08-12T06:10:25Z oleo joined #lisp 2017-08-12T06:15:31Z hvxgr quit (Ping timeout: 276 seconds) 2017-08-12T06:18:03Z damke_ joined #lisp 2017-08-12T06:20:21Z damke quit (Ping timeout: 240 seconds) 2017-08-12T06:21:41Z shiranuidong quit (Ping timeout: 246 seconds) 2017-08-12T06:21:43Z bugrum quit (Remote host closed the connection) 2017-08-12T06:22:18Z Lowl3v3l joined #lisp 2017-08-12T06:22:31Z shiranuidong joined #lisp 2017-08-12T06:23:20Z shiranuidong quit (Max SendQ exceeded) 2017-08-12T06:24:01Z shiranuidong joined #lisp 2017-08-12T06:27:45Z quazimodo quit (Ping timeout: 248 seconds) 2017-08-12T06:45:02Z beach: Can there be duplicate variables in an ordinary lambda list, and if not, where in the Common Lisp HyperSpec does it say so. 2017-08-12T06:45:10Z beach: ? 2017-08-12T06:46:04Z beach: I am asking, because, aside from the required parameters, such duplications could make sense. 2017-08-12T06:49:04Z beach: SBCL rejects this one: (defun ff (x &key (x (+ x 2))) ...) 2017-08-12T06:50:14Z beach: ... but accepts this one: (defun ff (x &aux (x (+ x 2))) ...) 2017-08-12T06:54:33Z angavrilov joined #lisp 2017-08-12T07:00:06Z axion: 3.1.1 2017-08-12T07:01:30Z beach: Yeah, that doesn't seem like the appropriate page. 2017-08-12T07:02:25Z axion: It does to me. 2017-08-12T07:02:42Z beach: I mean, if you take that phrase to mean duplicates in a lambda list are not allowed, then this one (let ((x 23)) (let ((x 33)) ...)) should also be rejected. 2017-08-12T07:03:53Z damke_ quit (Read error: Connection reset by peer) 2017-08-12T07:04:07Z beach: If not, we have a strange definition of "environment". 2017-08-12T07:04:14Z axion: Here's a comment on the matter https://groups.google.com/forum/#!msg/comp.lang.lisp/hh834A0xThQ/4_CSCl4VpcMJ 2017-08-12T07:04:45Z rumbler31 joined #lisp 2017-08-12T07:04:50Z damke_ joined #lisp 2017-08-12T07:05:19Z axion: It is not required for an implementation to signal an error. 2017-08-12T07:06:20Z beach: I take that phrase to mean that you can't get to the (x 23) binding in ... Only the (x 33) binding. 2017-08-12T07:06:39Z narendraj9 joined #lisp 2017-08-12T07:06:57Z beach: The question in my mind is: are the parameters in a lambda list bound as with LET or as with LET*. 2017-08-12T07:07:14Z beach: I can see how duplicates in a LET don't make sense. 2017-08-12T07:07:42Z beach: Which is why I am willing to accept "no duplicates" in the required parameters. 2017-08-12T07:08:12Z beach: But with &optional, &key, and &aux, previous variables are in scope. 2017-08-12T07:08:29Z _death: clhs 3.4.1.5 2017-08-12T07:08:29Z specbot: Specifiers for &aux variables: http://www.lispworks.com/reference/HyperSpec/Body/03_dae.htm 2017-08-12T07:09:03Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-12T07:09:24Z beach: _death: That's a hint, yes. 2017-08-12T07:09:49Z beach: It may suggest that ONLY &AUX variables are processed as with LET* 2017-08-12T07:10:49Z _death: right.. the answer to your initial question is that multiple params are not allowed to have the same name 2017-08-12T07:11:17Z beach: But the fact that previous parameters are in scope for init forms suggest LET* for &optional and &key as well. 2017-08-12T07:12:31Z beach: Oh, well. No definitive answer, but certainly some insight. Thanks axion and _death. 2017-08-12T07:12:47Z safe quit (Read error: Connection reset by peer) 2017-08-12T07:13:05Z _death: beach: it suggests let* but it's not let* 2017-08-12T07:13:34Z beach: I see what you mean, and SBCL seems to agree. 2017-08-12T07:14:42Z axion: Much praise to the implementation designers that can filter out the definitive from the non-definitive stuff like this. Seems like a lifetime of work for such a language that offers so much freedom on implementation. 2017-08-12T07:14:45Z _death: the processing of the argument is specified in that section 2017-08-12T07:14:53Z _death: *arguments 2017-08-12T07:16:38Z _death: axion: tradition helps there.. what did previous/other implementers do 2017-08-12T07:18:42Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-12T07:20:12Z grublet joined #lisp 2017-08-12T07:24:17Z narendraj9 quit (Remote host closed the connection) 2017-08-12T07:25:25Z narendraj9 joined #lisp 2017-08-12T07:34:38Z QualityAddict joined #lisp 2017-08-12T07:39:15Z nullniverse joined #lisp 2017-08-12T07:43:27Z mishoo__ joined #lisp 2017-08-12T07:44:56Z ski joined #lisp 2017-08-12T07:45:02Z varjag joined #lisp 2017-08-12T07:45:28Z moei quit (Quit: Leaving...) 2017-08-12T07:45:35Z narendraj9 quit (Ping timeout: 240 seconds) 2017-08-12T07:47:16Z g0d355__ joined #lisp 2017-08-12T07:49:38Z mishoo joined #lisp 2017-08-12T07:50:01Z mishoo__ quit (Ping timeout: 255 seconds) 2017-08-12T07:55:42Z narendraj9 joined #lisp 2017-08-12T07:57:12Z narendraj9 quit (Client Quit) 2017-08-12T07:57:29Z mishoo_ joined #lisp 2017-08-12T07:58:59Z mishoo quit (Ping timeout: 246 seconds) 2017-08-12T08:00:21Z shwouchk joined #lisp 2017-08-12T08:02:22Z damke joined #lisp 2017-08-12T08:05:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-12T08:07:02Z grublet quit (Ping timeout: 255 seconds) 2017-08-12T08:11:19Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-12T08:11:35Z pjb quit (Ping timeout: 246 seconds) 2017-08-12T08:18:01Z shka_ joined #lisp 2017-08-12T08:20:48Z pjb joined #lisp 2017-08-12T08:24:30Z sunset_NOVA joined #lisp 2017-08-12T08:25:35Z pjb quit (Ping timeout: 246 seconds) 2017-08-12T08:27:00Z Karl_Dscc joined #lisp 2017-08-12T08:35:31Z jamtho joined #lisp 2017-08-12T08:41:20Z mishoo_ quit (Ping timeout: 246 seconds) 2017-08-12T08:51:33Z moei joined #lisp 2017-08-12T09:00:39Z random-nick joined #lisp 2017-08-12T09:01:06Z elfmacs joined #lisp 2017-08-12T09:10:23Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-12T09:10:41Z zooey quit (Ping timeout: 248 seconds) 2017-08-12T09:13:30Z zooey joined #lisp 2017-08-12T09:14:52Z knicklux joined #lisp 2017-08-12T09:23:22Z mheisig joined #lisp 2017-08-12T09:38:23Z mishoo_ joined #lisp 2017-08-12T09:48:36Z beach` joined #lisp 2017-08-12T09:52:52Z beach quit (Ping timeout: 255 seconds) 2017-08-12T09:57:06Z damke quit (Read error: Connection reset by peer) 2017-08-12T09:58:30Z damke joined #lisp 2017-08-12T10:04:38Z goosnargh quit (Ping timeout: 246 seconds) 2017-08-12T10:15:11Z shka_: hello 2017-08-12T10:15:18Z shka_: what should i use to generate xml? 2017-08-12T10:15:27Z varjag quit (Ping timeout: 240 seconds) 2017-08-12T10:16:06Z beach` is now known as beach 2017-08-12T10:18:27Z grouzen quit (Ping timeout: 260 seconds) 2017-08-12T10:22:31Z FreeBirdLjj joined #lisp 2017-08-12T10:26:41Z FreeBirdLjj quit (Ping timeout: 246 seconds) 2017-08-12T10:29:46Z elfmacs quit (Ping timeout: 255 seconds) 2017-08-12T10:37:22Z borodust: hey #lisp, some time ago I mentioned cl-flow library i was working on and asked if anyone is interested. Some actually were so i made it a bit more consistent and finally wrote some docs. 2017-08-12T10:38:13Z borodust: if anyone still interested in computation tree building library mixed with data-flow model for concurrent execution, here it is https://github.com/borodust/cl-flow 2017-08-12T10:38:43Z borodust: and "Getting Started" for it: https://borodust.org/projects/cl-flow/getting-started/ 2017-08-12T10:40:21Z damke quit (Ping timeout: 240 seconds) 2017-08-12T10:41:44Z _death: you are in a maze of twisty little arrows, all alike 2017-08-12T10:42:22Z elfmacs joined #lisp 2017-08-12T10:42:27Z _death: I like the textual names better 2017-08-12T10:43:15Z borodust: _death: they are there 2017-08-12T10:43:39Z borodust: flow:atomically for ->, flow:concurrently for ~> and such 2017-08-12T10:43:40Z damke_ joined #lisp 2017-08-12T10:44:34Z borodust: to meet the needs of both groups who prefer short or meaningful names 2017-08-12T10:44:36Z borodust: or both 2017-08-12T10:44:59Z Shinmera: shka_: Depends on how you want to go about it. 2017-08-12T10:45:23Z Shinmera: shka_: Plump gives you a DOM, but that's very low-level. Clip gives a template-based approach. 2017-08-12T10:45:35Z shka_: Shinmera: thanks, i realized that there is library for drawning svg so i am using it right now and it seems to be fine 2017-08-12T10:45:51Z Shinmera: Well there you go then 2017-08-12T10:46:13Z shka_: yeah, didn't think there is library for that initially 2017-08-12T10:47:12Z shka_: and it is quite nice at that 2017-08-12T10:47:29Z jamtho quit (Ping timeout: 248 seconds) 2017-08-12T10:47:39Z Achylles joined #lisp 2017-08-12T10:48:32Z phoe: borodust: to /r/lisp with that! 2017-08-12T10:48:49Z Achylles quit (Remote host closed the connection) 2017-08-12T10:49:35Z knicklux quit (Remote host closed the connection) 2017-08-12T10:49:58Z elderK quit (Quit: WeeChat 1.9) 2017-08-12T10:50:13Z borodust: phoe: i probably should, thanks! :) 2017-08-12T10:51:45Z francogrex joined #lisp 2017-08-12T10:51:52Z shka_: borodust: it is cute 2017-08-12T10:54:52Z _death: it looks similar to lparallel's ptrees 2017-08-12T10:54:53Z borodust: shka_: oh, thank you! 2017-08-12T10:55:31Z borodust: _death: yup, computation tree things but with different syntax driven by different opinion 2017-08-12T10:55:59Z _death: cool 2017-08-12T10:56:27Z borodust: like, lparallel about general concurrency, cl-flow is strictly about this computation trees 2017-08-12T10:56:34Z Achylles joined #lisp 2017-08-12T10:56:38Z borodust: *these 2017-08-12T10:58:44Z francogrex quit (Quit: WeeChat 1.9) 2017-08-12T11:00:36Z nowhere_man joined #lisp 2017-08-12T11:00:58Z goosnargh joined #lisp 2017-08-12T11:01:57Z mheisig quit (Ping timeout: 240 seconds) 2017-08-12T11:02:10Z damke joined #lisp 2017-08-12T11:02:10Z defaultxr quit (Ping timeout: 276 seconds) 2017-08-12T11:02:19Z knicklux joined #lisp 2017-08-12T11:03:56Z damke_ quit (Ping timeout: 258 seconds) 2017-08-12T11:06:04Z goosnargh quit (Ping timeout: 276 seconds) 2017-08-12T11:13:54Z work joined #lisp 2017-08-12T11:14:04Z work: hello 2017-08-12T11:15:25Z work: how to iterate over multi dimensional array and gather indices along the way? 2017-08-12T11:15:48Z axion: A nested loop 2017-08-12T11:16:25Z work: axion: yeah, but how exactly? (loop for row in array do (loop for x in row do ...)) ? how to gather indices 2017-08-12T11:17:43Z _death: (push (list x y) indices) 2017-08-12T11:18:35Z axion: (let ((a (make-array '(5 10)))) (dotimes (i 5) (dotimes (j 10) (aref a i j)))) 2017-08-12T11:18:52Z axion: You can use ARRAY-DIMENSION to get the axes if you need 2017-08-12T11:19:06Z work: axion: ah okay, got it! 2017-08-12T11:19:32Z mishoo_ quit (Ping timeout: 246 seconds) 2017-08-12T11:21:22Z work quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-12T11:24:17Z george joined #lisp 2017-08-12T11:24:17Z Younder: Does anyone use series anymore? (sigh) 2017-08-12T11:24:37Z george quit (Remote host closed the connection) 2017-08-12T11:24:58Z axion: Not reallu...haven't even seen it in many cltl2 implementations 2017-08-12T11:24:59Z Younder: Seems to me lazy eval. has delivered. 2017-08-12T11:25:00Z hvxgr joined #lisp 2017-08-12T11:25:26Z george joined #lisp 2017-08-12T11:25:50Z george quit (Remote host closed the connection) 2017-08-12T11:25:56Z Younder: sad to see it die. It had so much potential. Well there is always Haskell. 2017-08-12T11:27:27Z nowhere_man quit (Ping timeout: 240 seconds) 2017-08-12T11:34:01Z damke quit (Ping timeout: 240 seconds) 2017-08-12T11:34:05Z engblom quit (Ping timeout: 240 seconds) 2017-08-12T11:37:09Z damke joined #lisp 2017-08-12T11:42:11Z BitPuffin|osx joined #lisp 2017-08-12T11:45:11Z muzik is now known as muzik_ 2017-08-12T11:46:28Z rumbler31 joined #lisp 2017-08-12T11:47:03Z muzik_ is now known as muzik 2017-08-12T11:48:17Z rumbler31 quit (Remote host closed the connection) 2017-08-12T11:48:30Z elfmacs quit (Ping timeout: 240 seconds) 2017-08-12T11:49:08Z mishoo_ joined #lisp 2017-08-12T11:51:12Z dddddd joined #lisp 2017-08-12T11:51:27Z phoe quit (Ping timeout: 240 seconds) 2017-08-12T11:51:34Z some-user joined #lisp 2017-08-12T11:52:05Z knicklux quit (Ping timeout: 240 seconds) 2017-08-12T11:53:31Z mishoo_ quit (Ping timeout: 246 seconds) 2017-08-12T11:54:52Z some-user quit (Remote host closed the connection) 2017-08-12T11:55:45Z ebzzry quit (Ping timeout: 248 seconds) 2017-08-12T11:55:46Z some-user joined #lisp 2017-08-12T11:57:51Z phoe joined #lisp 2017-08-12T12:00:16Z rpg joined #lisp 2017-08-12T12:01:42Z goosnargh joined #lisp 2017-08-12T12:03:08Z ebzzry joined #lisp 2017-08-12T12:04:09Z hvxgr_ joined #lisp 2017-08-12T12:06:07Z goosnargh quit (Ping timeout: 246 seconds) 2017-08-12T12:07:07Z knicklux joined #lisp 2017-08-12T12:08:01Z damke quit (Ping timeout: 240 seconds) 2017-08-12T12:11:18Z raynold quit (Quit: Connection closed for inactivity) 2017-08-12T12:13:45Z sellout- joined #lisp 2017-08-12T12:14:41Z grouzen joined #lisp 2017-08-12T12:19:23Z c__ quit (Remote host closed the connection) 2017-08-12T12:19:47Z elfmacs joined #lisp 2017-08-12T12:23:27Z sunset_NOVA quit (Quit: Leaving) 2017-08-12T12:24:12Z random-nick quit (Remote host closed the connection) 2017-08-12T12:24:48Z Bike joined #lisp 2017-08-12T12:24:56Z francogrex joined #lisp 2017-08-12T12:27:04Z pjb joined #lisp 2017-08-12T12:27:12Z francogrex: hi who has edit control over http://www.cliki.net/ 2017-08-12T12:27:13Z francogrex: ? 2017-08-12T12:27:32Z Shinmera: Anyone with an account? 2017-08-12T12:27:34Z francogrex: this page http://www.cliki.net/CL-Emacs should include: http://d.hatena.ne.jp/masatoi/20161107/1478531952 2017-08-12T12:27:47Z francogrex: much superior to all the rest 2017-08-12T12:27:53Z Shinmera: Actually you can even edit anonymously, if I remember correctly. 2017-08-12T12:28:10Z Achylles quit (Ping timeout: 255 seconds) 2017-08-12T12:29:20Z KongWubba joined #lisp 2017-08-12T12:29:58Z phoe: ^ 2017-08-12T12:32:40Z random-nick joined #lisp 2017-08-12T12:34:26Z BitPuffin|osx quit (Ping timeout: 246 seconds) 2017-08-12T12:35:44Z BitPuffin|osx joined #lisp 2017-08-12T12:39:43Z d4ryus2 joined #lisp 2017-08-12T12:40:16Z sunset_NOVA joined #lisp 2017-08-12T12:40:23Z d4ryus1 quit (Ping timeout: 246 seconds) 2017-08-12T12:50:10Z francogrex quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2017-08-12T13:00:25Z doesthiswork joined #lisp 2017-08-12T13:00:29Z HTTP_____GK1wmSU joined #lisp 2017-08-12T13:00:46Z strelox joined #lisp 2017-08-12T13:01:14Z HTTP_____GK1wmSU left #lisp 2017-08-12T13:01:30Z damke_ joined #lisp 2017-08-12T13:02:28Z goosnargh joined #lisp 2017-08-12T13:04:27Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T13:06:48Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-12T13:09:11Z Achylles joined #lisp 2017-08-12T13:16:21Z kajo joined #lisp 2017-08-12T13:17:16Z varjag joined #lisp 2017-08-12T13:19:35Z some-user quit (Remote host closed the connection) 2017-08-12T13:25:52Z DeadTrickster joined #lisp 2017-08-12T13:30:18Z oleo quit (Remote host closed the connection) 2017-08-12T13:37:16Z oleo joined #lisp 2017-08-12T13:38:22Z fsmunoz joined #lisp 2017-08-12T13:48:35Z KongWubba quit (Ping timeout: 240 seconds) 2017-08-12T13:51:56Z oleo quit (Quit: irc client terminated!) 2017-08-12T14:02:02Z rngoodn joined #lisp 2017-08-12T14:03:12Z goosnargh joined #lisp 2017-08-12T14:05:24Z gremdrus joined #lisp 2017-08-12T14:08:05Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-12T14:16:15Z phinxy joined #lisp 2017-08-12T14:16:35Z oleo joined #lisp 2017-08-12T14:19:51Z hernanex3 joined #lisp 2017-08-12T14:32:46Z phoe quit (Ping timeout: 276 seconds) 2017-08-12T14:33:02Z phoe joined #lisp 2017-08-12T14:44:34Z FakePedro quit (Quit: FakePedro) 2017-08-12T14:51:09Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T15:00:59Z beach: It looks like the code of my CST-to-AST module is finally converging. It is not quite finished yet, and there are going to be plenty of problems to fix before it can be usable. But I see the light at the end of the tunnel. The main difficulty was processing the lambda list (in the new CST format) of a function. The lexical environment has to be augmented from left to right, but the ASTs must be created right to left. 2017-08-12T15:04:24Z goosnargh joined #lisp 2017-08-12T15:05:39Z phoe: What's the simplest way of reading a (signed-byte 16) from an (unsigned-byte 8) stream? 2017-08-12T15:08:33Z beach: Read two bytes and build the result yourself. 2017-08-12T15:08:47Z beach: But why do you have it open like that if it contains something else? 2017-08-12T15:08:50Z goosnargh quit (Ping timeout: 240 seconds) 2017-08-12T15:09:23Z phoe: The file contains a mixture of int8, uint8, int16, uint16, int32, uint32 and strings. 2017-08-12T15:09:30Z phoe: The file contains freaking everything. 2017-08-12T15:10:13Z beach: As I recall, flexi-streams can re-open with a different element type. 2017-08-12T15:10:21Z beach: Don't know whether it is still supported. 2017-08-12T15:10:36Z phoe: I'd have to reopen hundreds time per file. 2017-08-12T15:10:41Z phoe: I don't think it's the proper way. 2017-08-12T15:11:07Z beach: Then you have to build the number yourself. 2017-08-12T15:11:14Z phoe: Sigh, I will. 2017-08-12T15:14:54Z beach: Though I am not so sure that what a flexi-stream does is very costly. 2017-08-12T15:15:16Z beach: It probably just alters the element type and does exactly the calculation you would do. 2017-08-12T15:15:34Z beach: I haven't checked that, of course, but that's what I would do if I wrote it. 2017-08-12T15:16:03Z stara joined #lisp 2017-08-12T15:16:22Z beach: I would have an underlying (unsigned-byte 8) stream and just change what the read-byte returns according to the element type the user wants. 2017-08-12T15:17:40Z beach: If I were you, I would make a small test and benchmark it so see whether performance is acceptable. 2017-08-12T15:18:11Z leadoverlove joined #lisp 2017-08-12T15:18:12Z phoe: I don't really worry about performance here. There'll be at most a few thousands of these records and the code will be used rarely. 2017-08-12T15:18:16Z phoe: I'll try to get it right first. 2017-08-12T15:18:35Z beach: Then definitely use flexi-streams rather than writing it yourself. 2017-08-12T15:19:23Z stara: What is shortcut in Emacs to full-screen? 2017-08-12T15:21:07Z beach: You can start it with -fs. I don't know of any key sequence for it. 2017-08-12T15:21:28Z leadoverlove quit (Client Quit) 2017-08-12T15:21:39Z Shinmera: F11? 2017-08-12T15:21:39Z beach: phoe: In fact, if you try flexi-streams, I would be interested in a performance test. 2017-08-12T15:21:50Z Shinmera: That's usually the fullscreen key 2017-08-12T15:22:20Z phoe: beach: I didn't. :) 2017-08-12T15:22:31Z beach: :( 2017-08-12T15:23:03Z mishoo_ joined #lisp 2017-08-12T15:23:09Z phoe: I'd need to rewrite all of my code using it, and I already use other means of reading uints. 2017-08-12T15:24:45Z stara: Shinmera - not work (F11). 2017-08-12T15:25:21Z Shinmera: stara: Works for me 2017-08-12T15:25:53Z stara: is undefined. 2017-08-12T15:26:59Z Shinmera: F11 is bound to toggle-frame-fullscreen for me (emacs 26.05) 2017-08-12T15:27:07Z Shinmera: *26.0.5 2017-08-12T15:27:16Z Karl_Dscc quit (Remote host closed the connection) 2017-08-12T15:32:20Z kamog joined #lisp 2017-08-12T15:35:55Z leadoverlove joined #lisp 2017-08-12T15:38:38Z leadoverlove quit (Remote host closed the connection) 2017-08-12T15:40:22Z larme joined #lisp 2017-08-12T15:42:35Z varjag quit (Ping timeout: 240 seconds) 2017-08-12T15:44:03Z axion: phoe: Use fast-io. It has a function just for this, and it is also faster than flexi-streams. 2017-08-12T15:46:54Z axion: If you're parsing some binary format, it'd likely have headers that will let you buffer x amount in ram at a time, and then you can use fast-io's buffers to read arbitrary quantities as bytes, integers, or sequences thereof 2017-08-12T15:47:27Z axion: but not limited to just them of course 2017-08-12T15:48:22Z axion: Speaking of parsing...wow. This parser that I'm currently writing has such a tight loop, that not only does the generic function runtime cost stick out like a sore thumb in benchmarks, but so does the cost of using keyword arguments in regular functions 2017-08-12T15:48:49Z Shinmera: Other stuff that can stick out at that point: multiple values 2017-08-12T15:50:48Z Xach: axion: i remember when i read about that in PAIP. first time i considered the cost of kw args. 2017-08-12T15:51:16Z mxh- quit (Quit: Leaving) 2017-08-12T15:51:21Z axion: Xach: I always knew about it, but never seen it this apparent before...though maybe I just wasn't paying attention. 2017-08-12T15:51:40Z mxh- joined #lisp 2017-08-12T15:51:40Z mxh- quit (Changing host) 2017-08-12T15:51:40Z mxh- joined #lisp 2017-08-12T15:53:53Z Xach: axion: it's always nice not to have to care! 2017-08-12T15:55:21Z _death: a few months ago I was impressed that I actually used a keyword-name selected at runtime.. 2017-08-12T15:55:41Z brendos quit (Ping timeout: 246 seconds) 2017-08-12T15:56:47Z neoncontrails joined #lisp 2017-08-12T15:57:31Z gremdrus: when I run C-c C-k to compile the fasl, I get this error: https://gist.github.com/gremdrus/9ecc0be4d07f99187d576b5276c55edd 2017-08-12T15:57:45Z gremdrus: but I have no clue which file is causing that error, is there an easy way to figure that out? 2017-08-12T15:57:58Z pjb: Try to replace NIL by "" 2017-08-12T15:58:34Z _death: gremdrus: presumably the file whose buffer you're doing the C-c C-k in.. 2017-08-12T15:59:07Z _death: gremdrus: you can also see a filename in the error pasted that may hint 2017-08-12T16:00:28Z beach: gremdrus: Did you mean to say you are "compiling the fasl"? 2017-08-12T16:00:33Z gremdrus: _death: you're right, I was just confused by the slime output. 2017-08-12T16:00:42Z gremdrus: beach: yes, I meant I was compiling the fasl. 2017-08-12T16:00:56Z beach: gremdrus: Normally, you compile source code to create a fasl. 2017-08-12T16:01:06Z beach: You don't compile the fasl. 2017-08-12T16:01:19Z gremdrus: beach: right, I mean compiling to a fasl 2017-08-12T16:01:22Z wooden quit (Read error: Connection reset by peer) 2017-08-12T16:01:26Z gremdrus: meant* 2017-08-12T16:01:59Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-12T16:02:01Z beach: So, did you figure out what the problem is? 2017-08-12T16:02:36Z nullniverse quit (Read error: Connection reset by peer) 2017-08-12T16:03:04Z neoncontrails joined #lisp 2017-08-12T16:03:45Z _death: btw I tend to use C-c C-l so that I don't create .fasls in such cases 2017-08-12T16:04:58Z nullniverse joined #lisp 2017-08-12T16:04:58Z gremdrus: _death: what is the point of slime-load-file? If I point it at a file it just opens it like normal. Are you using it to loads fasls? 2017-08-12T16:05:00Z goosnargh joined #lisp 2017-08-12T16:05:40Z Bike: load-file means it loads the source, without compiling 2017-08-12T16:05:43Z _death: gremdrus: I use it to load .lisp files without generating .fasl files 2017-08-12T16:06:03Z wooden joined #lisp 2017-08-12T16:06:15Z gremdrus: why would you use that instead of C-x C-f? 2017-08-12T16:06:53Z _death: gremdrus: I don't use it instead of C-x C-f, but when I'm already visiting a file 2017-08-12T16:06:57Z marvin2 quit (Ping timeout: 248 seconds) 2017-08-12T16:06:57Z axion: It doesn't open a file. It loads it 2017-08-12T16:06:59Z marvin3 joined #lisp 2017-08-12T16:09:20Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-12T16:09:31Z goosnargh quit (Ping timeout: 255 seconds) 2017-08-12T16:10:03Z gremdrus: okay, now I get it. thanks, I never new about slime-load-file. 2017-08-12T16:10:54Z nullniverse quit (Read error: Connection reset by peer) 2017-08-12T16:11:26Z ebzzry quit (Ping timeout: 246 seconds) 2017-08-12T16:11:35Z nullniverse joined #lisp 2017-08-12T16:15:27Z Achylles quit (Ping timeout: 260 seconds) 2017-08-12T16:15:45Z neoncontrails joined #lisp 2017-08-12T16:23:29Z mishoo_ quit (Ping timeout: 248 seconds) 2017-08-12T16:23:43Z scymtym: phoe: if fast-io turns out to be unsuitable for some reason, you can also try nibbles which has similar functions for streams and octet-vectors 2017-08-12T16:24:10Z axion: With LOOP, is it possible to establish a conditional binding somehow, inside the IF/WHEN/UNLESS etc clauses, without DO/SETF etc? 2017-08-12T16:24:51Z pjb: collect can be used. 2017-08-12T16:25:10Z phoe: scymtym: thanks. 2017-08-12T16:25:20Z axion: In this case I want to call a function and bind its return value 2017-08-12T16:25:34Z _death: axion: no 2017-08-12T16:25:59Z pjb: (loop for i below 10 when (oddp i) collect (truncate i 2) into my-variable finally (return my-variable)) #| --> (0 1 2 3 4) |# 2017-08-12T16:26:27Z axion: Yes, that won't work here, but I was aware. Thanks! 2017-08-12T16:26:56Z pjb: (loop for i below 10 when (oddp i) collect (truncate i 2) into my-variable do (format t "~A " (first (last my-variable)))) #| nil 0 0 1 1 2 2 3 3 4 --> nil |# 2017-08-12T16:31:19Z scymtym: axion: how about (loop for variable = (when condition (function)))? 2017-08-12T16:37:07Z LooneyTunes joined #lisp 2017-08-12T16:37:08Z Jach[m] quit (Ping timeout: 240 seconds) 2017-08-12T16:37:17Z thorondor[m] quit (Ping timeout: 240 seconds) 2017-08-12T16:37:22Z l04m33[m] quit (Ping timeout: 246 seconds) 2017-08-12T16:37:22Z astronavt[m] quit (Ping timeout: 246 seconds) 2017-08-12T16:37:22Z hdurer[m] quit (Ping timeout: 246 seconds) 2017-08-12T16:37:22Z Sovereign_Bleak quit (Ping timeout: 246 seconds) 2017-08-12T16:37:35Z ArthurAGleckler[ quit (Ping timeout: 276 seconds) 2017-08-12T16:37:48Z hiq[m] quit (Ping timeout: 255 seconds) 2017-08-12T16:37:49Z RichardPaulBck[m quit (Ping timeout: 258 seconds) 2017-08-12T16:42:41Z Achylles joined #lisp 2017-08-12T16:43:09Z kora9 joined #lisp 2017-08-12T16:43:22Z kora9: Hey! :) 2017-08-12T16:43:31Z zulu_inuoe: Hallo 2017-08-12T16:43:33Z beach: Hello kora9. 2017-08-12T16:43:43Z beach: Hello zulu_inuoe. 2017-08-12T16:43:44Z kora9: How's your saturday going? :) 2017-08-12T16:44:06Z beach: kora9: Mine? Fine, but that's off topic. 2017-08-12T16:44:27Z kora9: beach: I figure it involves CL so it's kinda on topic ;P 2017-08-12T16:44:52Z beach: Trying to wrap up the CST-to-AST converter of Cleavir. 2017-08-12T16:45:05Z beach: Still a few days of work at least. 2017-08-12T16:45:26Z kora9: Oh. Cool 2017-08-12T16:46:08Z beach: minion: Please tell kora9 about Cleavir. 2017-08-12T16:46:08Z minion: kora9: Cleavir: A project to create an implementation-independent compilation framework for Common Lisp. Currently Cleavir is part of SICL, but that might change in the future 2017-08-12T16:46:13Z beach: minion: Please tell kora9 about SICL. 2017-08-12T16:46:13Z minion: kora9: SICL: SICL is a (perhaps futile) attempt to re-implement Common Lisp from scratch, hopefully using improved programming and bootstrapping techniques. See https://github.com/robert-strandh/SICL 2017-08-12T16:46:16Z kora9: I googled it :) 2017-08-12T16:46:39Z beach: Ah, OK. 2017-08-12T16:47:16Z zulu_inuoe: I hadn't heard of it either. Good to know. 2017-08-12T16:47:26Z goosnargh joined #lisp 2017-08-12T16:53:05Z kora9: Hmm. I came upon a section in Land of Lisp that implies that many Lisp coders think that OO isn't necessary to develop large quality applications. What's the story there from your experiences? 2017-08-12T16:53:42Z Shinmera: It's not necessary, but it's very useful. 2017-08-12T16:53:58Z kora9: Is there a reason not to use objects? 2017-08-12T16:54:00Z Shinmera: Trying to force everything into an OO paradigm however is pretty dumb. 2017-08-12T16:54:03Z beach: Object-oriented programming with CLOS is absolutely essential in my opinion. But yes, it is true that some don't think so. 2017-08-12T16:54:20Z Shinmera: kora9: You use them when they fit the problem. 2017-08-12T16:54:43Z kora9: beach: CL seems to have a very nice OO system so I don't understand why one wouldn't use it 2017-08-12T16:54:47Z grublet joined #lisp 2017-08-12T16:54:47Z beach: kora9: You can't not use objects in Common Lisp. Every Common Lisp datum is an object and an instance of some class. 2017-08-12T16:55:11Z beach: Anyway, time to go fix dinner for my (admittedly small) family. 2017-08-12T16:55:26Z kora9: beach: Oh, right. Have a nice dinner :) 2017-08-12T17:03:30Z damke joined #lisp 2017-08-12T17:03:41Z damke_ quit (Ping timeout: 240 seconds) 2017-08-12T17:04:06Z jrm: Asked about this yesterday, but haven't found a solution... I'm trying to build/package a lisp application (StumpWM), but it doesn't find the lisp dependencies: http://pkg.awarnach.mathstat.dal.ca/data/11amd64-default/2017-08-12_12h25m30s/logs/errors/stumpwm-20170807.log. 2017-08-12T17:04:28Z jrm: stumpwm.asd looks like this: http://ftfl.ca/paste/stumpwm.asd.html 2017-08-12T17:05:57Z jrm: The files in the dependencies (e.g. alexandria) are installed under /usr/local/lib/common-lisp/: http://ftfl.ca/paste/alexandria-files.html 2017-08-12T17:07:41Z damke quit (Ping timeout: 240 seconds) 2017-08-12T17:07:52Z fkac joined #lisp 2017-08-12T17:08:18Z fouric joined #lisp 2017-08-12T17:09:47Z damke joined #lisp 2017-08-12T17:10:25Z fsmunoz: jrm: I can't actually remember much of how I did things before quicklisp (i.e. I do not install CL packages any other way), but you need to make sure that /usr/local/lib/common-lisp/* is in asdf:*central-registry*or something similar AFAIK 2017-08-12T17:11:08Z bjorkintosh: fsmunoz, perhaps you did fewer things back then! 2017-08-12T17:12:15Z fsmunoz: bjorkintosh: hehe, yes. I used asdf-install IIRC. 2017-08-12T17:12:50Z gremdrus: can you subseq from the last index like in python with negative integers? 2017-08-12T17:13:01Z fsmunoz: jrm: take a look at http://xach.livejournal.com/278047.html for some related details (namely the (:tree (:home "src/lisp/")) suggestion) 2017-08-12T17:13:28Z jrm: fsmunoz: Cool, thanks. 2017-08-12T17:13:39Z fsmunoz: jrm: yw, report back if this helps 2017-08-12T17:14:54Z varjag joined #lisp 2017-08-12T17:15:54Z stara quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-12T17:15:54Z Zotan quit (Remote host closed the connection) 2017-08-12T17:17:23Z gremdrus: okay I am parsing some terrible urls, that look like http://ratedata.gaincapital.com/2003/01 January 2017-08-12T17:17:37Z gremdrus: and I get this error: Parse error:URI "http://ratedata.gaincapital.com/2003/01 January" contains illegal character #\ at position 39. 2017-08-12T17:18:27Z Zotan joined #lisp 2017-08-12T17:19:27Z damke_ joined #lisp 2017-08-12T17:20:41Z damke quit (Ping timeout: 240 seconds) 2017-08-12T17:21:50Z fkac quit (Remote host closed the connection) 2017-08-12T17:22:00Z bjorkintosh quit (Quit: Leaving) 2017-08-12T17:22:12Z Shinmera: Well, it is an illegal character in a url. 2017-08-12T17:23:38Z TCZ joined #lisp 2017-08-12T17:25:38Z gremdrus: Shinmera: but that is the url... it works http://ratedata.gaincapital.com/2003/01 January/ 2017-08-12T17:25:50Z Shinmera: Because your browser is nice. 2017-08-12T17:26:02Z Shinmera: Spaces are illegal in URLs. They must be % encoded. 2017-08-12T17:26:08Z fkac joined #lisp 2017-08-12T17:26:23Z Kevslinger joined #lisp 2017-08-12T17:26:27Z Shinmera: See RFC3986. 2017-08-12T17:27:08Z vtomole joined #lisp 2017-08-12T17:27:21Z gremdrus: Shinmera: I don't doubt you, but is there a way to force drakma/dexador to work with it? 2017-08-12T17:28:40Z TCZ quit (Quit: Leaving) 2017-08-12T17:28:51Z Shinmera: In drakma you can use :preserve-uri T, but then you need to handle the encoding yourself or the server will reject your request. 2017-08-12T17:29:37Z Shinmera: It's not a question of the client, it's a question of the protocol. And the protocol enforces RFC3986. So, no matter what you do, you have to make your URLs conform somehow. 2017-08-12T17:30:21Z damke_ quit (Ping timeout: 240 seconds) 2017-08-12T17:30:46Z Shinmera: So in short: just fix your URLs 2017-08-12T17:31:57Z gremdrus: it's not my website; I'm trying to scrape it 2017-08-12T17:32:15Z Fade: manually encode the spaces in the URL 2017-08-12T17:32:16Z Shinmera: Well, then use a regex to destructure the URL to the best of your abilities and encode the parts as appropriate. 2017-08-12T17:32:40Z Fade: (1+ ^^^) 2017-08-12T17:35:22Z gremdrus: Fade: how would I manually encode the spaces? 2017-08-12T17:35:45Z Shinmera: If you're scraping, spaces are likely to be not your only problem 2017-08-12T17:35:57Z elfmacs quit (Ping timeout: 260 seconds) 2017-08-12T17:36:43Z Fade: the web is a disasterous pool of terrible inputs 2017-08-12T17:37:32Z Fade: take all the spaces and convert them to % escapes 2017-08-12T17:37:50Z Fade: if you're scraping, you've already lost, imo. I admit sometimes it is the only way. 2017-08-12T17:37:50Z gremdrus: okay, I figured it out. turns out the website support %20 as well. 2017-08-12T17:38:04Z gremdrus: Fade: why are you pessimistic about scraping? 2017-08-12T17:38:43Z Fade: because no matter how successful in the moment, even the successes are just brittle code that will break non-deterministically. 2017-08-12T17:39:36Z Fade: also, if there's no API, you're almost certainly breaking their EULA, which depending on your legal regime, could be quite catastrophic for you. 2017-08-12T17:40:12Z _death: you can also try binding puri:*strict-parse* to nil.. although you're better off following the advice you were given 2017-08-12T17:40:18Z Lowl3v3l quit (Remote host closed the connection) 2017-08-12T17:40:40Z scymtym_ joined #lisp 2017-08-12T17:40:57Z scymtym quit (Ping timeout: 240 seconds) 2017-08-12T17:41:16Z Fade: at any rate, it's always better to sanity check any input handed to you from the internet. :) 2017-08-12T17:42:16Z phoe: ^ 2017-08-12T17:44:44Z ryanwatkins quit (Read error: Connection reset by peer) 2017-08-12T17:46:18Z ryanwatkins joined #lisp 2017-08-12T17:46:25Z gremdrus: also, how would one go about creating a directory? I am trying to use (ensure-directories-exist "2000") and it's not working, and neither is it working when I give it an absolute path. 2017-08-12T17:46:38Z Lowl3v3l joined #lisp 2017-08-12T17:47:21Z rpg joined #lisp 2017-08-12T17:47:23Z Shinmera: "2000" denotes a file, not a directory and is relative to *default-pathname-defaults*, which is usually your home 2017-08-12T17:47:30Z Shinmera: that directory already exists, so there's nothing to do 2017-08-12T17:47:49Z fiddlerwoaroof: gremdrus: directory pathnames need to end with a / 2017-08-12T17:48:22Z fiddlerwoaroof: otherwise the directory is pathname without its last component 2017-08-12T17:48:30Z groovy2shoes quit (Ping timeout: 240 seconds) 2017-08-12T17:49:36Z gremdrus: fiddlerwoaroof: thank you. 2017-08-12T17:53:07Z jrm: fsmunoz: Still no luck. The sbcl package contains /usr/local/lib/sbcl/asdf/asdf.lisp and I have added http://ftfl.ca/paste/sbclrc.html to sbclrc. But starting sbcl complains about not finding asdf: http://ftfl.ca/paste/sbcl-startup-errors.html 2017-08-12T17:53:32Z Jach[m] joined #lisp 2017-08-12T17:53:57Z kajo2 joined #lisp 2017-08-12T17:56:32Z kajo quit (Ping timeout: 240 seconds) 2017-08-12T17:56:37Z scymtym_ quit (Ping timeout: 255 seconds) 2017-08-12T17:57:18Z fsmunoz: jrm: what is the value of asdf:*central-registry* ? 2017-08-12T17:57:36Z fsmunoz: (after that error you can check it) 2017-08-12T17:57:38Z rpg: Note that that error is not about it not finding ASDF -- it's about a reference to the ASDF *package* that is unfound. 2017-08-12T17:58:04Z rpg: Suspect you are referencing something in the ASDF package before you call (require :asdf), or however else you load ASDF. 2017-08-12T17:58:16Z jrm: fsmunoz: Got it from here: http://www.sbcl.org/asdf/Using-asdf-to-load-systems.html 2017-08-12T17:58:39Z fsmunoz: jrm: rpg is right, it's something different 2017-08-12T17:58:42Z sunset_NOVA quit (Quit: Leaving) 2017-08-12T17:58:58Z jrm: fsmunoz: And I see the path /usr/local/lib/common-lisp is filled with alexandria, etc. 2017-08-12T17:59:00Z rpg: Note that sometimes things will go wrong even if you load ASDF, if lisp *reads* a reference to the package before it's loaded. 2017-08-12T17:59:10Z fsmunoz: I dont use sbcl and if I did I would be using quicklisp so I'm reaching the limits of what I can guess. 2017-08-12T18:00:08Z rpg: jrm: try putting (require :asdf) above that form that sets the *central-registry* and see if that fixes it. 2017-08-12T18:00:27Z fsmunoz: ... which leads me to the question: if using StumpWM is the goal wouldn't it be easier to follow the recommended path which is to use quicklisp? 2017-08-12T18:00:37Z kolko quit (Ping timeout: 258 seconds) 2017-08-12T18:01:14Z rpg: also for debugging suggest you start SBCL up *before* filling in your .sbclrc. Then put the forms into the repl (use "rlwrap sbcl") one by one to make sure they work before you put them in .sbclrc 2017-08-12T18:01:24Z rpg: sorry have to go now. Good luck! 2017-08-12T18:01:35Z jrm: rpg: Thanks! :) 2017-08-12T18:01:40Z thorondor[m] joined #lisp 2017-08-12T18:01:41Z ArthurAGleckler[ joined #lisp 2017-08-12T18:01:41Z Sovereign_Bleak joined #lisp 2017-08-12T18:01:41Z hiq[m] joined #lisp 2017-08-12T18:01:41Z RichardPaulBck[m joined #lisp 2017-08-12T18:01:41Z hdurer[m] joined #lisp 2017-08-12T18:01:47Z l04m33[m] joined #lisp 2017-08-12T18:01:48Z astronavt[m] joined #lisp 2017-08-12T18:02:31Z jrm: fsmunoz: I'm trying to package StumpWM, and quicklisp isn't set up in the packaging infrastructure, so I'm using the packages for alexandria, etc. 2017-08-12T18:02:45Z fsmunoz: 2ok 2017-08-12T18:02:46Z fsmunoz: ok 2017-08-12T18:02:50Z coetry joined #lisp 2017-08-12T18:03:54Z coetry: how can I dynamically name a function? 2017-08-12T18:03:55Z coetry: (defun (if (< 0 1) mname dob) () (contact-info 'mname contact)) 2017-08-12T18:04:00Z jrm: (require :asdf) seems to help. :) 2017-08-12T18:04:00Z coetry: returns an error 2017-08-12T18:04:34Z kolko joined #lisp 2017-08-12T18:04:45Z coetry: not legal as a function name: (IF (< 0 1) 2017-08-12T18:04:45Z coetry: MNAME 2017-08-12T18:04:45Z coetry: DOB) 2017-08-12T18:04:47Z beach: coetry: (setf (fdefinition (if (< 0 1) 'mname 'dob)) (lambda () (contact-info ...))) 2017-08-12T18:05:01Z coetry: beach 2017-08-12T18:05:03Z coetry: thank you 2017-08-12T18:05:04Z beach: coetry: DEFUN is a macro that does not evaluate its function name argument. 2017-08-12T18:05:13Z coetry: I see 2017-08-12T18:05:17Z jamtho joined #lisp 2017-08-12T18:05:24Z beach: coetry: So you can't put a form in there and expect it to be evaluated. 2017-08-12T18:05:28Z beach: clhs defun 2017-08-12T18:05:29Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_defun.htm 2017-08-12T18:05:38Z coetry: gotcha 2017-08-12T18:06:40Z vtomole quit (Ping timeout: 260 seconds) 2017-08-12T18:10:36Z defaultxr joined #lisp 2017-08-12T18:12:52Z vtomole joined #lisp 2017-08-12T18:13:47Z stara joined #lisp 2017-08-12T18:20:16Z jamtho quit (Ping timeout: 246 seconds) 2017-08-12T18:20:53Z phoe: coetry: "dynamically" name a function? 2017-08-12T18:20:56Z BitPuffin|osx quit (Ping timeout: 246 seconds) 2017-08-12T18:21:02Z phoe: what do you mean by "dynamically"? 2017-08-12T18:26:46Z axion: coetry: You would either write a macro, or use FUNCALL on a symbol you generate 2017-08-12T18:28:49Z Hundo joined #lisp 2017-08-12T18:35:41Z groovy2shoes joined #lisp 2017-08-12T18:36:02Z goosnargh quit (Ping timeout: 260 seconds) 2017-08-12T18:37:02Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T18:37:52Z swedishfish joined #lisp 2017-08-12T18:39:01Z goosnargh joined #lisp 2017-08-12T18:39:29Z swedishfish is now known as blt 2017-08-12T18:49:42Z vaporatorius quit (Quit: Leaving) 2017-08-12T18:50:33Z vaporatorius joined #lisp 2017-08-12T18:50:40Z arbv quit (Ping timeout: 255 seconds) 2017-08-12T18:59:36Z vaporatorius quit (Quit: Leaving) 2017-08-12T18:59:47Z vaporatorius joined #lisp 2017-08-12T18:59:47Z vaporatorius quit (Changing host) 2017-08-12T18:59:47Z vaporatorius joined #lisp 2017-08-12T19:02:53Z engblom joined #lisp 2017-08-12T19:09:05Z gremdrus quit (Ping timeout: 260 seconds) 2017-08-12T19:09:21Z D33P-B00K joined #lisp 2017-08-12T19:09:29Z D33P-B00K left #lisp 2017-08-12T19:09:44Z mxh- quit (Quit: Leaving) 2017-08-12T19:09:51Z mxh- joined #lisp 2017-08-12T19:09:51Z mxh- quit (Changing host) 2017-08-12T19:09:51Z mxh- joined #lisp 2017-08-12T19:12:22Z teggi quit (Quit: Leaving...) 2017-08-12T19:12:30Z gremdrus joined #lisp 2017-08-12T19:12:35Z vtomole quit (Ping timeout: 260 seconds) 2017-08-12T19:12:47Z goosnargh quit (Ping timeout: 260 seconds) 2017-08-12T19:14:19Z sz0 quit 2017-08-12T19:18:30Z kora9 quit (Ping timeout: 240 seconds) 2017-08-12T19:21:23Z toncek55 joined #lisp 2017-08-12T19:22:19Z gremdrus: why does this result in nil? (position "z" (subseq "http://ratedata.gaincapital.com/2003/12%20December/AUD_JPY_Week1.zip" 32) :test #'equal) 2017-08-12T19:23:13Z phoe: gremdrus: you want to position #\z 2017-08-12T19:23:15Z mxh- quit (Quit: Leaving) 2017-08-12T19:23:26Z phoe: a string is a vector of characters 2017-08-12T19:23:29Z phoe: not a vector of strings 2017-08-12T19:23:36Z phoe: so you can't have a string inside a string 2017-08-12T19:23:36Z mxh- joined #lisp 2017-08-12T19:23:36Z mxh- quit (Changing host) 2017-08-12T19:23:36Z mxh- joined #lisp 2017-08-12T19:23:45Z phoe: so naturally your search will fail 2017-08-12T19:24:06Z phoe: you can have characters inside of strings - so search for characters instead. 2017-08-12T19:24:33Z phoe: and with characters, you can skip the :TEST #'EQUAL since characters are EQL-comparable and EQL is the default. 2017-08-12T19:24:34Z gremdrus: okay, thank you! 2017-08-12T19:24:38Z phoe: gremdrus: np! 2017-08-12T19:32:47Z gremdrus: how do you concatenate a list of strings? (concatenate 'string '("1" "2")) errors out for me 2017-08-12T19:34:15Z Mon_Ouie joined #lisp 2017-08-12T19:35:42Z Xach: gremdrus: apply would work. 2017-08-12T19:36:12Z rngoodn joined #lisp 2017-08-12T19:36:18Z gremdrus: Xach: thank you! I completely forgot about that. 2017-08-12T19:39:50Z Shinmera: (format NIL "~{~a~}" strings) 2017-08-12T19:40:17Z grouzen quit (Ping timeout: 248 seconds) 2017-08-12T19:40:28Z nullniverse quit (Read error: Connection reset by peer) 2017-08-12T19:40:53Z nullniverse joined #lisp 2017-08-12T19:42:29Z KongWubba joined #lisp 2017-08-12T19:45:15Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T19:54:59Z gremdrus: is there an easy way to interpolate a value in a string, so that '("1" "2" "3") becomes "1/2/3" 2017-08-12T19:55:59Z axion: sure 2017-08-12T19:56:26Z phoe: gremdrus: 2017-08-12T19:56:27Z phoe: clhs format 2017-08-12T19:56:27Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_format.htm 2017-08-12T19:58:01Z phoe: ~{~A~^/~} I think 2017-08-12T19:58:03Z phoe: lemme check 2017-08-12T19:58:05Z axion: (format nil "~{~A~^/~}" '("1" "2" "3")) 2017-08-12T19:58:19Z basket: gremdrus: Specifically, (format nil "~{~a~^/~}" '("1" "2" "3")) produces "1/2/3". The parts between ~{ and ~} are repeated for each element of the list, ~a means to print aesthetically, and ~^ means to print the next part on every iteration except the last 2017-08-12T19:58:28Z phoe: (format t "~{~A~^/~}" (list 1 2 3 4 5)) ;=> 1/2/3/4/5 2017-08-12T19:58:36Z basket: "The next part" meaning until the matching ~} 2017-08-12T20:00:35Z gremdrus: thank you! I keep forgetting how powerful format is 2017-08-12T20:00:48Z basket: It's wonderful 2017-08-12T20:02:14Z mxh- quit (Quit: Leaving) 2017-08-12T20:02:41Z Achylles quit (Remote host closed the connection) 2017-08-12T20:03:20Z Shinmera: gremdrus: If you're trying to construct a namestirng to parse into a pathname, you'd be better off just constructing the pathname-directory component instead. 2017-08-12T20:03:50Z vtomole joined #lisp 2017-08-12T20:04:05Z doesthiswork quit (Quit: Leaving.) 2017-08-12T20:04:48Z toncek55 quit (Read error: Connection reset by peer) 2017-08-12T20:12:02Z rngoodn joined #lisp 2017-08-12T20:16:10Z vtomole quit (Ping timeout: 260 seconds) 2017-08-12T20:16:37Z vtomole joined #lisp 2017-08-12T20:18:23Z toncek55 joined #lisp 2017-08-12T20:19:13Z coetry quit (Ping timeout: 276 seconds) 2017-08-12T20:20:32Z Xach: i like using pathname as objects and will do a little extra work if it means i can exploit merging and defaulting features 2017-08-12T20:20:42Z mxh- joined #lisp 2017-08-12T20:21:07Z vtomole: How do I auto-indent code that I type into a toy REPL? Like this: http://paste.lisp.org/display/353309 2017-08-12T20:22:58Z phoe: vtomole: where did you run that repl? 2017-08-12T20:23:08Z phoe: in SLIME REPL? in terminal? 2017-08-12T20:24:04Z stara quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-12T20:24:07Z vtomole: Slime 2017-08-12T20:24:28Z sdemarre quit (Quit: Leaving.) 2017-08-12T20:25:18Z phoe: I have no idea if indentation activates if Slime REPL is in read mode 2017-08-12T20:25:20Z phoe: I think not 2017-08-12T20:25:47Z vtomole: I thought so. Had the same problem with the SICL REPL 2017-08-12T20:26:00Z vtomole: I guess I could edit all my code in a file 2017-08-12T20:26:09Z basket: vtomole: It should indent if you use M-j to start a new line instead of enter 2017-08-12T20:26:43Z phoe: How can I use FAST-IO with files? 2017-08-12T20:26:49Z phoe: Do I need to read the whole file into memory first? 2017-08-12T20:27:12Z vtomole: basket: Nice! Many thanks! 2017-08-12T20:28:11Z phoe: oh wait, no - I just provide the stream 2017-08-12T20:32:26Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T20:32:50Z toncek55 quit (Ping timeout: 240 seconds) 2017-08-12T20:33:27Z PinealGlandOptic quit (Quit: leaving) 2017-08-12T20:38:37Z anticrisis joined #lisp 2017-08-12T20:38:47Z yeticry_ joined #lisp 2017-08-12T20:41:27Z yeticry quit (Ping timeout: 240 seconds) 2017-08-12T20:43:52Z axion: phoe: You can, or part of it, or byte by byte 2017-08-12T20:43:55Z nullniverse quit (Read error: Connection reset by peer) 2017-08-12T20:46:01Z coetry joined #lisp 2017-08-12T20:49:00Z DingoSaar joined #lisp 2017-08-12T20:49:20Z fsmunoz quit (Ping timeout: 246 seconds) 2017-08-12T20:51:11Z neoncontrails quit (Remote host closed the connection) 2017-08-12T20:51:51Z neoncontrails joined #lisp 2017-08-12T20:54:25Z Jesin quit (Quit: Leaving) 2017-08-12T20:54:45Z zulu_inuoe: Okay. So I've been playing around with MOP, and got things working for how I needed them, but I'm not exactly understanding the purpose of direct slots vs effective slots. Would anyone like to shed some light on this? 2017-08-12T20:55:59Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-12T20:56:10Z knicklux quit (Ping timeout: 255 seconds) 2017-08-12T20:56:33Z shka_ quit (Quit: Konversation terminated!) 2017-08-12T20:57:27Z Bike: direct slots are ones that are part of a class's definition, effective slots are all of its slots 2017-08-12T20:57:39Z Bike: these are different because of inheritance. direct slots don't include inherited slots. 2017-08-12T20:58:25Z Bike: when a class's inheritance is finalized, the direct slots of it and all of its superclasses are put together to get the effective slots. 2017-08-12T20:58:35Z Bike: direct slot definitions and effective slot definitions, i should say 2017-08-12T20:59:31Z DingoSaar quit (Max SendQ exceeded) 2017-08-12T20:59:35Z Shinmera: direct slots are also slots that are defined directly on the specific class, whereas effective ones include inherited slots. 2017-08-12T20:59:48Z Shinmera: oh, you already said that, nevermind 2017-08-12T21:00:13Z Shinmera: Anyway, even if you extend a class by another option, it's often useful to retain the direct/effective distinction. 2017-08-12T21:00:21Z Jesin joined #lisp 2017-08-12T21:00:29Z zulu_inuoe: Okay and that's the `compute-effective-slot-definition', right? Now.. I noticed that the third parameter there is a list of direct slots. 2017-08-12T21:01:04Z zulu_inuoe: Is that for when slots share the same name, or? 2017-08-12T21:01:09Z DingoSaar joined #lisp 2017-08-12T21:01:32Z KongWubba quit (Ping timeout: 240 seconds) 2017-08-12T21:01:34Z coetry quit (Ping timeout: 255 seconds) 2017-08-12T21:01:42Z Shinmera: mop compute-effective-slot-definition 2017-08-12T21:01:42Z specbot: http://metamodular.com/CLOS-MOP/compute-effective-slot-definition.html 2017-08-12T21:02:29Z zulu_inuoe: \m/ thank you. 2017-08-12T21:03:21Z zulu_inuoe: Learning a new framework is always so .. interesting 2017-08-12T21:03:28Z coetry joined #lisp 2017-08-12T21:03:36Z Bike: like if you have (defclass a () ((bar :initarg :bar))) (defclass b (a) ((bar :accessor bar))) 2017-08-12T21:04:04Z Bike: compute effective slot definition will get one list with a direct slot definition with name BAR and initarg :BAR, and another list with one direct slot definition with name BAR and access BAR 2017-08-12T21:04:28Z Bike: and it will combine those into an effective slot definition with name BAR and initarg :BAR and accessor BAR 2017-08-12T21:04:40Z Bike: whoops, i mean it will just recieve those two direct definitions. 2017-08-12T21:05:13Z zulu_inuoe: Mhm. I don't need it for my use-case, but I wonder: Is there any way to accept both? I.E. return multiple effective slots? 2017-08-12T21:05:23Z zulu_inuoe: Just curious 2017-08-12T21:07:32Z coetry quit (Ping timeout: 240 seconds) 2017-08-12T21:09:03Z Bike: "accept both"? 2017-08-12T21:09:13Z Bike: you return one effective definition that merges the attributes of all the direct definitions. 2017-08-12T21:09:20Z knicklux joined #lisp 2017-08-12T21:10:36Z fkac quit (Quit: ERC (IRC client for Emacs 25.1.1)) 2017-08-12T21:17:30Z zulu_inuoe: Apologies. Phone call. Yes. I mean to say so that the class would have two separate effective slots, one for each 2017-08-12T21:18:00Z rngoodn joined #lisp 2017-08-12T21:18:51Z zulu_inuoe: (defclass foo (a)) (defclass bar (foo) (a)) => (length (class-slots (find-class 'bar))) => 2 2017-08-12T21:20:58Z raynold joined #lisp 2017-08-12T21:21:33Z Bike: with the same name? 2017-08-12T21:21:39Z zulu_inuoe: Mhm. 2017-08-12T21:21:56Z fiddlerwoaroof: zulu_inuoe: what would SLOT-VALUE return? 2017-08-12T21:22:06Z zulu_inuoe: Or maybe differing names. Doesn't the effective slot dictate the name? 2017-08-12T21:22:06Z neoncontrails joined #lisp 2017-08-12T21:22:22Z Bike: well, yes, but compute-effective-slot-definition has to get a name from somewhere 2017-08-12T21:22:28Z fiddlerwoaroof: e.g. (slot-value (make-instance 'bar) 'a) 2017-08-12T21:22:32Z Bike: anyway, no, the function returns a single effective definition 2017-08-12T21:22:48Z Bike: if you want distinct slots, give them distinct names 2017-08-12T21:23:00Z fiddlerwoaroof: I suppose you could parse the names 2017-08-12T21:23:24Z zulu_inuoe: Purely an intellectual question. It just helps me solidify the concepts 2017-08-12T21:23:45Z fiddlerwoaroof: e.g. foo-a gets foo's slot while bar-a get's the subclass's slot. 2017-08-12T21:23:50Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T21:24:21Z zulu_inuoe: fiddlerwoaroof: Yes. There's probably a way to make it work in some way 2017-08-12T21:24:57Z rngoodn joined #lisp 2017-08-12T21:25:23Z fiddlerwoaroof: If you really want to be able to keep the base class's slot separate, I think it'd be better to allow the subclass to rename it 2017-08-12T21:25:46Z zulu_inuoe: But now I think it makes more sense, and the general concept of merging is good since you can do useful stuff with being able to do it however you want 2017-08-12T21:25:59Z fiddlerwoaroof: Anyways, it sounds like this is mostly a theoretical question, right? 2017-08-12T21:26:12Z zulu_inuoe: Absolutely, fiddlerwoaroof 2017-08-12T21:27:12Z neoncontrails quit (Remote host closed the connection) 2017-08-12T21:27:43Z kamog quit (Remote host closed the connection) 2017-08-12T21:27:51Z neoncontrails joined #lisp 2017-08-12T21:28:47Z DEEP-BOOK joined #lisp 2017-08-12T21:28:55Z zulu_inuoe: I'm using MOP for serialization but now all of this has me thinking about using it for my UI code since then I can simplify the definitions of my controls via DRY, automatically creating events, specifying properties like what properties affect rendering vs measuring, etc.. 2017-08-12T21:29:23Z DEEP-BOOK quit (K-Lined) 2017-08-12T21:29:35Z zulu_inuoe: This power.. feels addicting. But I don't want to go down a rabbit hole and end up at the bottom alone and nobody able to understand my code :P 2017-08-12T21:29:39Z fiddlerwoaroof: You have to be a little bit careful about things like this :) 2017-08-12T21:30:04Z fiddlerwoaroof: CLOS is flexible enough to make your code unintelligible 2017-08-12T21:30:14Z zulu_inuoe: Haha yes. I know that first hand.. 2017-08-12T21:30:43Z anticrisis: it's not only other people that have to understand your code, it's your future self too :) 2017-08-12T21:31:14Z zulu_inuoe: anticrisis: I have always lived my life considering 'future me' and 'past me' and 'current me' as three separate people 2017-08-12T21:31:32Z anticrisis: yep, that's pretty much the way reality works actually 2017-08-12T21:31:45Z anticrisis: when you think about it 2017-08-12T21:32:21Z zulu_inuoe: fiddlerwoaroof: But have you seen E.G. C# WPF attached properties etc? It's -so much repetition-, it's practically Waterworld with how non-DRY it is. All of those concepts can be implemented with clever slot definitions 2017-08-12T21:32:42Z fiddlerwoaroof: Yeah, my day job involves writing Java 2017-08-12T21:32:54Z zulu_inuoe: I shall say no more. Haha. 2017-08-12T21:32:58Z coetry joined #lisp 2017-08-12T21:33:06Z fiddlerwoaroof: Just a couple days ago, I ran into a situation that would have been really nice with multimethods 2017-08-12T21:33:08Z eazar001 joined #lisp 2017-08-12T21:33:22Z neoncontrails quit (Ping timeout: 258 seconds) 2017-08-12T21:34:07Z fiddlerwoaroof: Instead I had to write something like this: http://paste.lisp.org/+7KMH 2017-08-12T21:34:22Z zulu_inuoe: Yes. I avoid using methods in my code, but when I can put them to good use I love them. Especially the standard combinations. After using :around methods I cannot imagine why other languages don't have a similar construct 2017-08-12T21:34:51Z fiddlerwoaroof: My general view is that you should always start with generic methods for the core of your program 2017-08-12T21:35:06Z fiddlerwoaroof: And only switch to normal functions if you notice a bottleneck when profiling 2017-08-12T21:35:18Z mishoo_ joined #lisp 2017-08-12T21:36:41Z zulu_inuoe: I respect that, and given what I said with the :around methods eg I am inclined to agree even if only for purposes of tracing, logging, and other instrumentation. I haven't quite adopted that philosophy 2017-08-12T21:38:43Z zulu_inuoe: And I just checked out that pastebin. And yes, I have definitely been there. I was in C# doing loading of training data, and we had different training exercises, which had different types of data coming in from files. The old problem of Object o = Deserialize(thing), more or less 2017-08-12T21:39:05Z fiddlerwoaroof: Basically 2017-08-12T21:39:20Z zulu_inuoe: You can solve it by having methods on each subclass, but the thing is, I don't want my POD types having special logic like that 2017-08-12T21:39:46Z fiddlerwoaroof: It was a bit surprising that most of my coworkers weren't aware of the Double-Dispatch pattern used to workaround the absence of multimethods 2017-08-12T21:39:50Z zulu_inuoe: Even then it feels round-about and silly, so, yeah, I used an enum-based dispatch 2017-08-12T21:40:55Z zulu_inuoe: Well it's because it's so often so... bad an impractical. 1) It does not feel natural, 2) It causes your receiver to have -some- sort of dependency on your caller or some other shared 3rd party, 3) it's generally more, dispersed code 2017-08-12T21:41:55Z zulu_inuoe: Most of the time I'd rather just dispatch on an enum or string or something myself, at least then the code is localized. And you can still make it extensible by other means (register a handler, etc) 2017-08-12T21:42:23Z zulu_inuoe: But.. this is very off topic since we don't have that problem with the wonderful methods of CL :P 2017-08-12T21:44:00Z zulu_inuoe: The whole "methods aren't attached to classes" thing is like.. you can explain that to people, and they may understand it, but until you get real life experience using it, and not having it, you don't fully appreciate how much it helps solve a lot of code cohesion and interdependency problems 2017-08-12T21:44:39Z zulu_inuoe: anyway, /rant or whatever that was 2017-08-12T21:44:52Z Shinmera: Sometimes I miss having class-attached methods though. 2017-08-12T21:45:19Z zulu_inuoe: Shinmera: Indeed. If I could, I'd have both. For sure. They solve different problems 2017-08-12T21:45:23Z Shinmera: And then I remember I can just add it to CLOS if I really wanted. https://reader.tymoon.eu/article/286 2017-08-12T21:45:32Z coetry quit (Ping timeout: 240 seconds) 2017-08-12T21:45:36Z zulu_inuoe: Gosh darn you 2017-08-12T21:46:13Z zulu_inuoe: *furiously bookmarks* 2017-08-12T21:47:26Z coetry joined #lisp 2017-08-12T21:49:16Z fiddlerwoaroof: Shinmera: I wonder if the bit at the end works in Lispworks 2017-08-12T21:49:47Z fiddlerwoaroof: I was under the impression that the compiler is somehow limited in delivered applications 2017-08-12T21:49:53Z fsmunoz joined #lisp 2017-08-12T21:50:03Z fiddlerwoaroof: (not the most relevant thing, just a thought that occurred to me) 2017-08-12T21:50:20Z Shinmera: The only implementation I know of that doesn't have COMPILE/EVAL is MOCL. 2017-08-12T21:51:07Z Shinmera: The free versions of Allegro and LispWorks don't allow you to dump at all, so 2017-08-12T21:51:25Z fiddlerwoaroof: Yeah, I bought a commercial license recently 2017-08-12T21:51:27Z fiddlerwoaroof: http://www.lispworks.com/kb/1b1f65b4acf68f5a8025686d00691c06.html 2017-08-12T21:52:03Z fiddlerwoaroof: I guess they disable compile-file in the dumped image, but don't necessarily disable compile 2017-08-12T21:59:05Z shwouchk quit (Quit: Connection closed for inactivity) 2017-08-12T22:00:34Z Achylles joined #lisp 2017-08-12T22:01:57Z phinxy quit (Quit: Leaving) 2017-08-12T22:02:07Z zooey quit (Remote host closed the connection) 2017-08-12T22:02:19Z zooey joined #lisp 2017-08-12T22:02:58Z doesthiswork joined #lisp 2017-08-12T22:06:14Z phinxy joined #lisp 2017-08-12T22:11:45Z Mon_Ouie quit (Ping timeout: 248 seconds) 2017-08-12T22:11:49Z DingoSaar quit (Remote host closed the connection) 2017-08-12T22:12:53Z DingoSaar joined #lisp 2017-08-12T22:17:06Z brendos joined #lisp 2017-08-12T22:28:00Z stara joined #lisp 2017-08-12T22:28:24Z Mon_Ouie joined #lisp 2017-08-12T22:28:29Z wheelsucker joined #lisp 2017-08-12T22:32:04Z knicklux quit (Remote host closed the connection) 2017-08-12T22:34:25Z kajo2 quit (Ping timeout: 276 seconds) 2017-08-12T22:35:39Z KongWubba joined #lisp 2017-08-12T22:36:18Z kajo2 joined #lisp 2017-08-12T22:37:44Z hdurer[m] quit (Ping timeout: 240 seconds) 2017-08-12T22:37:46Z Jach[m] quit (Ping timeout: 258 seconds) 2017-08-12T22:37:51Z hiq[m] quit (Ping timeout: 246 seconds) 2017-08-12T22:37:55Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-12T22:38:19Z l04m33[m] quit (Ping timeout: 276 seconds) 2017-08-12T22:38:30Z Sovereign_Bleak quit (Ping timeout: 240 seconds) 2017-08-12T22:38:32Z thorondor[m] quit (Ping timeout: 258 seconds) 2017-08-12T22:38:32Z RichardPaulBck[m quit (Ping timeout: 246 seconds) 2017-08-12T22:39:49Z random-nick quit (Remote host closed the connection) 2017-08-12T22:40:02Z KongWubba quit (Ping timeout: 240 seconds) 2017-08-12T22:41:02Z larsen quit (Ping timeout: 260 seconds) 2017-08-12T22:41:40Z coetry_ joined #lisp 2017-08-12T22:42:13Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-12T22:42:16Z EvW joined #lisp 2017-08-12T22:42:35Z coetry quit (Ping timeout: 240 seconds) 2017-08-12T22:43:02Z KongWubba joined #lisp 2017-08-12T22:43:06Z larsen joined #lisp 2017-08-12T22:43:31Z astronavt[m] quit (Ping timeout: 276 seconds) 2017-08-12T22:44:10Z ArthurAGleckler[ quit (Ping timeout: 276 seconds) 2017-08-12T22:51:23Z mejja joined #lisp 2017-08-12T22:57:47Z mishoo_ quit (Ping timeout: 246 seconds) 2017-08-12T22:59:29Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-12T23:00:50Z safe joined #lisp 2017-08-12T23:08:13Z KongWubba quit (Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org) 2017-08-12T23:18:52Z strelox quit (Remote host closed the connection) 2017-08-12T23:19:25Z _paul0 joined #lisp 2017-08-12T23:22:10Z paul0 quit (Ping timeout: 240 seconds) 2017-08-12T23:23:40Z stara quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-12T23:32:36Z mikecheck joined #lisp 2017-08-12T23:45:52Z Jesin quit (Quit: Leaving) 2017-08-12T23:49:52Z Jach[m] joined #lisp 2017-08-12T23:50:11Z hernanex3 quit (Quit: Leaving) 2017-08-12T23:54:08Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-12T23:58:27Z coetry_ quit (Ping timeout: 240 seconds) 2017-08-12T23:58:40Z thorondor[m] joined #lisp 2017-08-12T23:58:40Z Sovereign_Bleak joined #lisp 2017-08-12T23:58:40Z ArthurAGleckler[ joined #lisp 2017-08-12T23:58:41Z RichardPaulBck[m joined #lisp 2017-08-12T23:58:41Z hiq[m] joined #lisp 2017-08-12T23:58:41Z hdurer[m] joined #lisp 2017-08-12T23:58:47Z l04m33[m] joined #lisp 2017-08-12T23:58:48Z astronavt[m] joined #lisp 2017-08-13T00:00:01Z kozy quit (Remote host closed the connection) 2017-08-13T00:00:24Z kozy joined #lisp 2017-08-13T00:03:35Z BlueRavenGT joined #lisp 2017-08-13T00:06:23Z coetry joined #lisp 2017-08-13T00:18:56Z holycow joined #lisp 2017-08-13T00:23:28Z Jach[m] quit (Ping timeout: 240 seconds) 2017-08-13T00:23:34Z ArthurAGleckler[ quit (Ping timeout: 258 seconds) 2017-08-13T00:23:34Z hiq[m] quit (Ping timeout: 246 seconds) 2017-08-13T00:23:37Z RichardPaulBck[m quit (Ping timeout: 276 seconds) 2017-08-13T00:23:37Z astronavt[m] quit (Ping timeout: 255 seconds) 2017-08-13T00:23:43Z Sovereign_Bleak quit (Ping timeout: 240 seconds) 2017-08-13T00:24:00Z hdurer[m] quit (Ping timeout: 255 seconds) 2017-08-13T00:24:00Z thorondor[m] quit (Ping timeout: 255 seconds) 2017-08-13T00:24:16Z l04m33[m] quit (Ping timeout: 276 seconds) 2017-08-13T00:32:29Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-08-13T00:43:00Z akkad: how do you #+repl? 2017-08-13T00:45:19Z pjb: What? 2017-08-13T00:46:44Z akkad: #+sbcl is a conditional. what follows will only run if it is true. 2017-08-13T00:46:45Z akkad: this is lisp 2017-08-13T00:46:55Z akkad: :P 2017-08-13T00:47:25Z MrBusiness quit (Read error: Connection reset by peer) 2017-08-13T00:47:30Z akkad: thus, "how do you do a conditional based on being in a repl." 2017-08-13T00:48:09Z MrBusiness joined #lisp 2017-08-13T00:48:27Z pjb: As opposed to what? 2017-08-13T00:49:17Z pjb: your-favorite-repl> (load "source.lisp") 2017-08-13T00:49:29Z pjb: What is and is not in the REPL? 2017-08-13T00:50:22Z pjb: (There's a good answer to my question, you once you have it, you'll know the answer to yours). 2017-08-13T00:54:17Z al-damiri joined #lisp 2017-08-13T01:03:10Z Kyo91_ joined #lisp 2017-08-13T01:03:43Z hvxgr quit (Ping timeout: 255 seconds) 2017-08-13T01:05:13Z hvxgr joined #lisp 2017-08-13T01:08:15Z Bike: what are you hoping to do? 2017-08-13T01:09:34Z rpg joined #lisp 2017-08-13T01:09:44Z fsmunoz quit (Ping timeout: 246 seconds) 2017-08-13T01:15:20Z EvW quit (Ping timeout: 246 seconds) 2017-08-13T01:15:28Z LooneyTunes joined #lisp 2017-08-13T01:18:35Z phinxy quit (Read error: Connection reset by peer) 2017-08-13T01:18:44Z phinxy joined #lisp 2017-08-13T01:19:21Z phinxy quit (Read error: Connection reset by peer) 2017-08-13T01:23:43Z akkad: avoiding silly things like #+sbcl (loop (sleep 1)) 2017-08-13T01:23:43Z akkad: 2017-08-13T01:24:19Z akkad: required to keep sbcl from exiting in hunchentoot. however interactively, i.e. repl, I'd like to not have it run sync 2017-08-13T01:30:14Z Jach[m] joined #lisp 2017-08-13T01:32:31Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-13T01:32:47Z Bike: i mean... interactively, you're running one thing at a time 2017-08-13T01:32:59Z Bike: like you want to type "#-repl (whatever...)" into the repl? 2017-08-13T01:34:14Z akkad: just want to run the method that contains said code, and not block if in toplevel 2017-08-13T01:34:33Z akkad: i.e. don't run the sleep loop if in slime. 2017-08-13T01:35:40Z Bike: and this is written where? a file? 2017-08-13T01:36:25Z mejja quit (Quit: \ No newline at end of file) 2017-08-13T01:36:36Z akkad: must be a ruby only thing. thanks 2017-08-13T01:37:12Z akkad: Bike: this is not a lisp machine, so yes. everything is a file. quicklisp makes use of these file constructs. 2017-08-13T01:37:26Z akkad left #lisp 2017-08-13T01:40:22Z Bike: so what kind of action would _not_ be considered "in the repl"? 2017-08-13T01:40:38Z pjb: minion: memo for akkad: the most reasonable thing to do, is to have two different functions, one to do the thing, and one to block, and in the REPL you call the function that does the thing, and in batch scripts you call the other. 2017-08-13T01:40:38Z minion: Remembered. I'll tell akkad when he/she/it next speaks. 2017-08-13T01:41:01Z pjb: minion: otherwise push a feature yourself in the right context. 2017-08-13T01:41:02Z minion: please stop playing with me... i am not a toy 2017-08-13T01:41:07Z pjb: minion: memo for akkad: otherwise push a feature yourself in the right context. 2017-08-13T01:41:08Z minion: Remembered. I'll tell akkad when he/she/it next speaks. 2017-08-13T01:41:11Z thorondor[m] joined #lisp 2017-08-13T01:41:11Z RichardPaulBck[m joined #lisp 2017-08-13T01:41:11Z Sovereign_Bleak joined #lisp 2017-08-13T01:41:12Z hdurer[m] joined #lisp 2017-08-13T01:41:12Z ArthurAGleckler[ joined #lisp 2017-08-13T01:41:12Z hiq[m] joined #lisp 2017-08-13T01:41:19Z astronavt[m] joined #lisp 2017-08-13T01:41:20Z l04m33[m] joined #lisp 2017-08-13T01:41:36Z Bike: oh 2017-08-13T01:42:13Z sz0 joined #lisp 2017-08-13T01:44:39Z ebzzry joined #lisp 2017-08-13T01:49:20Z anticrisis: i wish i had a minion 2017-08-13T01:53:44Z Achylles quit (Quit: Leaving) 2017-08-13T01:54:21Z pjb: anticrisis: the sources of minion are available; you can derive your own minion from them. 2017-08-13T01:55:16Z anticrisis: i'm just discovering it, thank you :) 2017-08-13T01:55:33Z Karl_Dscc joined #lisp 2017-08-13T01:56:16Z pjb: Also, I wrote botihn (in #hn). https://gitlab.com/com-informatimago/com-informatimago/tree/master/small-cl-pgms/botihn/ 2017-08-13T02:01:46Z Kyo91_ quit (Ping timeout: 276 seconds) 2017-08-13T02:02:51Z sz0 quit (Quit: ZNC - http://znc.in) 2017-08-13T02:06:50Z sjl: I'm using SBCL for a little roguelike game. I'm building a Mac .app with it and it mostly works, but I'm having trouble printing tracebacks when something goes wrong. 2017-08-13T02:07:18Z sjl: Ideally in the .app version I'd like to log a traceback and exit on errors 2017-08-13T02:07:49Z sz0 joined #lisp 2017-08-13T02:07:56Z sjl: so I'm trying something like this: http://paste.stevelosh.com/598fb472f189df0008bf7d93 2017-08-13T02:08:29Z sjl: unfortunately that doesn't seem to work -- I think SBCL is calling (sb-ext:exit) when the program exists, and that's not allowing the error log to get flushed to disk 2017-08-13T02:09:22Z Kyo91_ joined #lisp 2017-08-13T02:09:48Z sjl: Is there a way around this? I've tried wrapping the main game loop function in an unwind-protect and calling finish-output on the error-output stream, but that doesn't work 2017-08-13T02:10:10Z sjl: the unwind-protect executes, but finish-output doesn't actually make the error get flushed to the stream 2017-08-13T02:10:38Z pjb: I use a little wrapper to write tracebacks to a file. 2017-08-13T02:11:21Z sjl: it just seems odd to me that the unwind-protect works as expected, but with-open-file doesn't flush the file 2017-08-13T02:12:01Z sjl: I'd expect with-open-file to use unwind-protect... 2017-08-13T02:12:06Z sjl: and it does seem to macroexpand to that 2017-08-13T02:13:04Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-13T02:13:05Z pjb: https://framagit.org/patchwork/mclgui/blob/master/mac-event.lisp#L75 2017-08-13T02:13:22Z pjb: sjl: it's in ccl, so you may have to add #+sbcl for sbcl specific things. 2017-08-13T02:13:42Z sjl scans license 2017-08-13T02:13:44Z sjl: gpl3 2017-08-13T02:13:49Z sjl: can't use, thanks though 2017-08-13T02:14:05Z pjb: You don't have any error handling in your main, so sbcl will exit. 2017-08-13T02:14:27Z pjb: But you have to be careful when you have threads. Hence such a reporting-error macro (it's used in threads, to wrap around lisp code). 2017-08-13T02:14:40Z sjl: so, if I don't rebind the error-output, sbcl will print a traceback before it exits 2017-08-13T02:14:52Z pjb: sjl: GPL3 allows you to read it and learn from it. 2017-08-13T02:15:03Z pjb: Even if your program doesn't use the code directly. 2017-08-13T02:15:35Z sjl: but if I rebind error-output, I don't see that printed any more, so SBCL must be printing the traceback to error-output 2017-08-13T02:15:58Z pjb: Well, you may want to add an implementation specific option to avoid buffering the file. 2017-08-13T02:16:28Z pjb: The default *error-output* is not buffered, so people often don't call flush-output after printing an error (and printing an error doesn't end in exiting the process!) 2017-08-13T02:17:11Z pjb: You can see in my macro that I both flush-output AND close the file (it's open, appended, and closed everytime an error occurs). 2017-08-13T02:17:59Z pjb: There's a separate file for *trace-output* used while debugging… 2017-08-13T02:18:34Z ebzzry quit (Ping timeout: 258 seconds) 2017-08-13T02:18:52Z elfmacs joined #lisp 2017-08-13T02:19:51Z sjl: Like I said, I tried finish-output'ing *error-output* in an unwind-protect 2017-08-13T02:20:03Z sjl: It executes, but doesn't actually write the file 2017-08-13T02:20:20Z sjl: I could try closing the stream there, but thought that would happen thanks to with-output-to-file 2017-08-13T02:21:00Z sjl: ok yes, if I (close *error-output*) inside the unwind-protect, the file does get written 2017-08-13T02:21:30Z sjl: though then it would get closed twice if there's no error 2017-08-13T02:22:08Z sjl: luckily the standard lets me to that 2017-08-13T02:22:25Z sellout- quit (Quit: Leaving.) 2017-08-13T02:23:18Z pjb: If after finish-output the data is not in the file, they you have a bug in the implementation (unless your system crashed after finish-output, before it could write the data in persistent memory). 2017-08-13T02:23:56Z sjl: http://paste.stevelosh.com/598fb833f189df0008bf7d94 2017-08-13T02:24:07Z sjl: if I comment out the (close ...) there, the file does not get written 2017-08-13T02:24:28Z sjl: `pr` is just a macro to print to standard output and flush it 2017-08-13T02:24:47Z sjl: I think I see what is happening 2017-08-13T02:25:22Z sjl: it appears to be intentional 2017-08-13T02:25:25Z sjl: (not a bug) 2017-08-13T02:25:54Z sjl: this is what with-open-file macroexpands to in sbcl 2017-08-13T02:25:56Z sjl: http://paste.stevelosh.com/598fb8a6f189df0008bf7d95 2017-08-13T02:26:13Z sjl: note the :abort arg to (close) 2017-08-13T02:26:29Z sjl: from clhs: If abort is true, an attempt is made to clean up any side effects of having created stream. If stream performs output to a file that was created when the stream was created, the file is deleted and any previously existing file is not superseded. 2017-08-13T02:27:20Z sjl: aha, there's a bit in with-open-file about that too 2017-08-13T02:28:48Z sjl: I'll just implement a with-open-file that doesn't try to pretend the file never existed on error 2017-08-13T02:30:04Z pjb: sjl: your code works similarly in both ccl and sbcl; ccl -b -n -l e.lisp -e '(main-mac)' ; sbcl --non-interactive --no-userinit --load e.lisp --eval '(main-mac)' 2017-08-13T02:30:10Z Bike: you could use with-open-stream open 2017-08-13T02:30:11Z pjb: I just #+sbcl the sb-ext line. 2017-08-13T02:30:24Z pjb: and s/pr/print/g of course. 2017-08-13T02:30:35Z sjl: Bike: with-open-file actually macroexpands to with-open-stream, which then macroexpands to what I pasted 2017-08-13T02:31:09Z pjb: Now of course, there's this thing with with-open-file. So have the file already exist, and use :append in with-open-file. 2017-08-13T02:31:15Z sjl: pjb: yes, they're both working according to the spec When control leaves the body, either normally or abnormally (such as by use of throw), the file is automatically closed. If a new output file is being written, and control leaves abnormally, the file is aborted and the file system is left, so far as possible, as if the file had never been opened. 2017-08-13T02:31:28Z pjb: If you check my macro, you'll see that I actually append, and write a timestamp first! 2017-08-13T02:31:31Z pjb: There's a reason why. 2017-08-13T02:34:07Z quazimodo joined #lisp 2017-08-13T02:35:16Z Karl_Dscc quit (Remote host closed the connection) 2017-08-13T02:38:50Z sjl: Until "doing a non-clean-room reimplementation of GPL'ed code is not a derivative work" has actually been tested in a court or two, I steer away from GPL'ed code 2017-08-13T02:40:08Z neoncontrails joined #lisp 2017-08-13T02:43:07Z dddddd quit (Remote host closed the connection) 2017-08-13T02:44:37Z joast quit (Ping timeout: 246 seconds) 2017-08-13T02:48:37Z pjb: Well basically derivative work is anything the judge tells it is. 2017-08-13T02:48:50Z pjb: Translating in another language makes a derivative works. 2017-08-13T02:49:39Z sjl: Right. If I read a GPL'ed print-traceback and then write a print-errors function using some of its ideas, is that a derivative work? 2017-08-13T02:50:06Z daemoz quit (Remote host closed the connection) 2017-08-13T02:50:11Z sjl: I don't know, I haven't paid a lawyer to look into it, and I'm not sure there's any clear precedent. 2017-08-13T02:50:19Z sjl: So it's safest to stay away from GPL'ed code. 2017-08-13T02:50:22Z sjl: for me 2017-08-13T02:50:23Z pjb: If I was the judge, yes. 2017-08-13T02:50:25Z daemoz joined #lisp 2017-08-13T02:50:34Z sjl: exactly 2017-08-13T02:50:41Z pjb: There's a reason why you don't patent mathematical theorms, and programs are just mathematical theorems. 2017-08-13T02:52:05Z pjb: But it's not safest, because whatever you write, it could implement the same algorithms as already implemented elsewhere, so you could be infringing on copyright derived work (there's no telling of what process you used to derivate the work, you can be a telepath, it doesn't matter), or on patented work. 2017-08-13T02:54:45Z sjl: I could happen to come up with the same function completely by accident, sure 2017-08-13T02:55:02Z epony quit (Read error: Connection reset by peer) 2017-08-13T02:55:15Z sjl: But folks generally seem to think a clean-room implementation of something stands a better chance of not being a derivative work, copyright wise 2017-08-13T02:56:50Z sjl: It's certainly true that "reading GPL'ed code, implementing something" is not LESS likely to create a derivative work than "not reading GPL'ed code, implementing something" 2017-08-13T02:57:26Z felipedvorak quit (Ping timeout: 255 seconds) 2017-08-13T03:03:01Z sz0 quit (Quit: ZNC - http://znc.in) 2017-08-13T03:05:40Z Hundo quit (Ping timeout: 260 seconds) 2017-08-13T03:07:10Z sz0 joined #lisp 2017-08-13T03:07:58Z pjb: sjl: I think it's illusory. While there are always multiple ways to implement something, best practices and other constraints makes different teams of engineers develop very similar solutions in general. For small function, it goes down to the same binary code (assuming the same compiler is used). 2017-08-13T03:09:19Z felipedvorak joined #lisp 2017-08-13T03:09:27Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-13T03:10:43Z epony joined #lisp 2017-08-13T03:17:49Z jamtho joined #lisp 2017-08-13T03:19:32Z schoppenhauer quit (Ping timeout: 240 seconds) 2017-08-13T03:20:22Z hylisper joined #lisp 2017-08-13T03:21:25Z schoppenhauer joined #lisp 2017-08-13T03:23:13Z joast joined #lisp 2017-08-13T03:24:02Z beach: Good morning everyone! 2017-08-13T03:24:13Z beach: It is very sad to see that people reject the GPL. 2017-08-13T03:26:38Z holycow: agreed 2017-08-13T03:26:43Z sjl: Getting sued for copyright infringement would also be sad. 2017-08-13T03:27:45Z sjl: anyway, the root cause of the giant yak-shaving expedition I just went on was: (sb-posix:chdir ...) doesn't also update *default-pathname-defaults* 2017-08-13T03:28:13Z sjl: so doing a chdir and trying to (open "some-relative-path") will not work unless you also update the pathname-defaults 2017-08-13T03:28:35Z sjl: (for anyone possibly googling these chat logs in the future) 2017-08-13T03:29:05Z quazimodo quit (Read error: Connection reset by peer) 2017-08-13T03:29:06Z panji joined #lisp 2017-08-13T03:32:34Z holycow: sjl: is your product proprietary? 2017-08-13T03:32:44Z sjl: which product? 2017-08-13T03:32:55Z sjl: one I've already made? one I might make in the future? 2017-08-13T03:32:59Z holycow: whatever it is you were talking about above and not being able to use gpl resources 2017-08-13T03:33:04Z sjl: SBCL, if I contribute a patch to it some day? 2017-08-13T03:33:23Z fkac joined #lisp 2017-08-13T03:33:51Z neoncontrails quit (Remote host closed the connection) 2017-08-13T03:34:10Z sjl: the thing I am specifically working on at this moment is not, no. 2017-08-13T03:34:25Z sjl: that doesn't mean I won't need to work on something proprietary next month to eat 2017-08-13T03:34:45Z holycow: no worries, was just curious 2017-08-13T03:34:59Z sjl: or that I won't want to contribute a patch to SBCL some day, which would then (arguably) make SBCL a derivative work and require it to be GPLed 2017-08-13T03:35:14Z elfmacs quit (Ping timeout: 258 seconds) 2017-08-13T03:35:26Z sjl: (or more likely, my patch rejected/reverted) 2017-08-13T03:39:45Z beach: That's the sad part. People reject the GPL because... other people reject the GPL. 2017-08-13T03:40:50Z coetry_ joined #lisp 2017-08-17T04:48:36Z ccl-logbot joined #lisp 2017-08-17T04:48:36Z 2017-08-17T04:48:36Z names: ccl-logbot dan64 sbryant kjeldahl_ BlueRavenGT Aritheanie srcerer_ head|cat_ sdemarre ramus flazh1 loke SlashLife amerlyq intrigue nydel1 ircbrowse msb gabiruh larsen_ doesthiswork rjeli Xal ryanbw himmAllRight sjl AntiSpamMeta AeroNotix nikivi koenig zulu_inuoe gabot emerson Guest46808 jself neuri8 TMA raydeejay sukaeto Guest11562 Firedancer Guest51511 moei askatasuna kolko zymurgy luis isoraqathedh __main__ holly jameser zooey salva Intensity Cthulhux 2017-08-17T04:48:36Z names: minion tkd_ fluxit tokenrove defaultxr krasnal vsync kini Guest48352 dmiles z3t0 malcom2073 dan2 vhost- vibs29 gremly_ specbot dcluna voidlily stee_3 _death heurist _krator44 renard_ cmatei vaporatorius malm d4ryus2 neoncont_ dlowe mnoonan Lord_Nightmare azrazalea mulk shka_ muzik abel-abel Suzuran wizzo ikopico jurov SiCC Colleen mood clog drmeister LooneyTunes raynold arbv zacts GGMethos al-damiri groovy2shoes antoszka Sigyn MrBusiness zotan mfiano tfb 2017-08-17T04:48:36Z names: beach grumble arrsim rann pjb CEnnis91 benny cpt_nemo tomaw ggherdov cpape tobel redcedar gingerale jasom creat les brandonz jdz abbe angular_mike_ kilimanjaro asedeno danlentz Merv mbrock |3b| dim shaftoe_ seanzheng sebastien_ foom larme gko basket gendl xristos hotbobby rotty copec lieven Lord_of_Life argoneus brucem MerinoBailon @fe[nl]ix Blkt LyndsySimon billstclair nicdev beaky stylewarning dmh convexferret e Ellenor Zhivago sveit itruslove newcup p_l 2017-08-17T04:48:36Z names: drdo odin lonjil adulteratedjedi trig-ger gz_ jerme_ gbyers joeygibson easye sigjuice mjl swflint Meow-J jyc__ cyraxjoe zkat pchrist dxtr fluter nhandler velvetcore_ l1x felideon shenghi Subfusc Riviera rvirding c0dehero alms_clozure PuercoPop d4gg4d_ splittist XachX aaronjensen 2017-08-17T04:48:36Z kozy joined #lisp 2017-08-17T04:48:36Z test1600 joined #lisp 2017-08-17T04:48:39Z a7f4 joined #lisp 2017-08-17T04:48:42Z thinkpad joined #lisp 2017-08-17T04:48:47Z micro_ joined #lisp 2017-08-17T04:48:55Z mxh- joined #lisp 2017-08-17T04:49:00Z banjiewen joined #lisp 2017-08-17T04:49:03Z lxpz joined #lisp 2017-08-17T04:49:04Z tmc joined #lisp 2017-08-17T04:49:05Z ecraven joined #lisp 2017-08-17T04:49:05Z brendyn joined #lisp 2017-08-17T04:49:08Z SAL9000 joined #lisp 2017-08-17T04:49:10Z butterthebuddha joined #lisp 2017-08-17T04:49:18Z pareidolia joined #lisp 2017-08-17T04:49:19Z djinni` joined #lisp 2017-08-17T04:49:22Z micro_ is now known as Guest46291 2017-08-17T04:49:24Z felipedvorak joined #lisp 2017-08-17T04:49:28Z nsnc joined #lisp 2017-08-17T04:49:29Z j0ni joined #lisp 2017-08-17T04:49:33Z aeth joined #lisp 2017-08-17T04:49:46Z aeth quit (Changing host) 2017-08-17T04:49:46Z aeth joined #lisp 2017-08-17T04:50:02Z alandipert joined #lisp 2017-08-17T04:50:04Z slyrus joined #lisp 2017-08-17T04:50:05Z jrm joined #lisp 2017-08-17T04:50:09Z stux|RC-only joined #lisp 2017-08-17T04:50:12Z eschatologist joined #lisp 2017-08-17T04:50:19Z fiddlerwoaroof joined #lisp 2017-08-17T04:50:28Z White_Flame joined #lisp 2017-08-17T04:50:35Z trinitr01 joined #lisp 2017-08-17T04:50:50Z trinitr01 is now known as trinitr0n 2017-08-17T04:50:54Z Guest11562 is now known as kushal 2017-08-17T04:51:00Z kushal quit (Changing host) 2017-08-17T04:51:00Z kushal joined #lisp 2017-08-17T04:51:05Z fiddlerwoaroof quit (Remote host closed the connection) 2017-08-17T04:51:16Z chu joined #lisp 2017-08-17T04:51:25Z giraffe joined #lisp 2017-08-17T04:51:39Z giraffe is now known as Guest29805 2017-08-17T04:51:45Z justinmcp joined #lisp 2017-08-17T04:51:57Z Jach[m] joined #lisp 2017-08-17T04:51:58Z fiddlerwoaroof joined #lisp 2017-08-17T04:52:09Z bitch joined #lisp 2017-08-17T04:52:09Z bitch quit (Changing host) 2017-08-17T04:52:09Z bitch joined #lisp 2017-08-17T04:52:09Z bitch quit (Changing host) 2017-08-17T04:52:09Z bitch joined #lisp 2017-08-17T04:52:16Z ck_ joined #lisp 2017-08-17T04:52:23Z dyelar joined #lisp 2017-08-17T04:52:28Z em joined #lisp 2017-08-17T04:52:28Z em quit (Changing host) 2017-08-17T04:52:28Z em joined #lisp 2017-08-17T04:52:37Z fouric1 joined #lisp 2017-08-17T04:52:45Z cyberlard joined #lisp 2017-08-17T04:52:45Z temporal1 joined #lisp 2017-08-17T04:53:07Z baroncha1lus joined #lisp 2017-08-17T04:53:21Z borodust joined #lisp 2017-08-17T04:53:28Z trn joined #lisp 2017-08-17T04:53:43Z daemoz joined #lisp 2017-08-17T04:53:53Z catern joined #lisp 2017-08-17T04:54:14Z Oddity joined #lisp 2017-08-17T04:54:14Z Oddity quit (Changing host) 2017-08-17T04:54:14Z Oddity joined #lisp 2017-08-17T04:54:26Z jsnell joined #lisp 2017-08-17T04:54:39Z Nikotiini joined #lisp 2017-08-17T04:54:47Z axion_ joined #lisp 2017-08-17T04:55:46Z axion_ is now known as axion 2017-08-17T04:56:16Z axion is now known as Guest69434 2017-08-17T04:56:50Z joga joined #lisp 2017-08-17T04:56:56Z joga quit (Changing host) 2017-08-17T04:56:56Z joga joined #lisp 2017-08-17T04:57:50Z schoppenhauer joined #lisp 2017-08-17T04:57:53Z shka joined #lisp 2017-08-17T05:01:13Z raynold quit (Quit: Connection closed for inactivity) 2017-08-17T05:01:43Z thorondor[m] joined #lisp 2017-08-17T05:01:43Z Sovereign_Bleak joined #lisp 2017-08-17T05:01:43Z RichardPaulBck[m joined #lisp 2017-08-17T05:01:43Z hdurer[m] joined #lisp 2017-08-17T05:01:43Z ArthurAGleckler[ joined #lisp 2017-08-17T05:01:43Z hiq[m] joined #lisp 2017-08-17T05:01:50Z astronavt[m] joined #lisp 2017-08-17T05:01:51Z l04m33[m] joined #lisp 2017-08-17T05:02:17Z test1600 quit (Quit: Leaving) 2017-08-17T05:06:08Z test1600 joined #lisp 2017-08-17T05:06:57Z vlatkoB joined #lisp 2017-08-17T05:08:03Z LooneyTunes quit (Remote host closed the connection) 2017-08-17T05:08:34Z LooneyTunes joined #lisp 2017-08-17T05:10:20Z nullniverse joined #lisp 2017-08-17T05:11:42Z phadthai joined #lisp 2017-08-17T05:13:58Z eMBee joined #lisp 2017-08-17T05:16:34Z Bock joined #lisp 2017-08-17T05:21:04Z glamas joined #lisp 2017-08-17T05:25:52Z glamas quit (Ping timeout: 240 seconds) 2017-08-17T05:26:42Z akkad joined #lisp 2017-08-17T05:27:11Z jibanes joined #lisp 2017-08-17T05:27:29Z troydm joined #lisp 2017-08-17T05:32:13Z some-user joined #lisp 2017-08-17T05:32:15Z some-user: hello 2017-08-17T05:32:21Z flamebeard joined #lisp 2017-08-17T05:32:21Z beach: Hello some-user. 2017-08-17T05:32:49Z some-user: trying to use package-inferred-system class of asdf:defsystem but it seems to ignore :pathname "src" 2017-08-17T05:32:56Z some-user: and fail to find my packages 2017-08-17T05:33:38Z some-user: am i using it wrong https://gist.github.com/george-semenov/2c2a40dcfb57ddb3ff7780d16aec0636 ? 2017-08-17T05:33:55Z some-user: i thought https://bugs.launchpad.net/asdf/+bug/1485276 that was fixed 2017-08-17T05:36:54Z mishoo joined #lisp 2017-08-17T05:37:47Z Karl_Dscc joined #lisp 2017-08-17T05:39:18Z glamas joined #lisp 2017-08-17T05:42:10Z tokik joined #lisp 2017-08-17T05:42:22Z doesthiswork quit (Quit: Leaving.) 2017-08-17T05:42:23Z server001 joined #lisp 2017-08-17T05:44:33Z srcerer_ quit (Quit: ChatZilla 0.9.93 [Firefox 49.0/20160916101415]) 2017-08-17T05:44:58Z some-user: does :pathname even work with regular systems? 2017-08-17T05:45:30Z some-user: by regular i mean non package-inferred-systems 2017-08-17T05:47:07Z beach: Never tried it. What does it do? 2017-08-17T05:47:51Z otwieracz joined #lisp 2017-08-17T05:49:10Z tkd_ is now known as tkd 2017-08-17T05:49:32Z some-user: beach: do you mean you've never tried :pathname? 2017-08-17T05:49:42Z beach: Yes. 2017-08-17T05:49:58Z whoman joined #lisp 2017-08-17T05:50:10Z some-user: ah, it just changed directory where asdf will look for your code 2017-08-17T05:50:15Z some-user: changes* 2017-08-17T05:50:59Z beach: I see. 2017-08-17T05:51:16Z zulu_inuoe quit (Ping timeout: 264 seconds) 2017-08-17T05:54:12Z koisoke joined #lisp 2017-08-17T05:56:07Z nsrahmad joined #lisp 2017-08-17T05:56:52Z beach: It would be a simple test to verify that it works for ordinary systems. 2017-08-17T05:57:29Z zulu_inuoe joined #lisp 2017-08-17T06:01:23Z test1600 quit (Read error: Connection reset by peer) 2017-08-17T06:02:14Z knobo joined #lisp 2017-08-17T06:06:10Z specbot quit (Remote host closed the connection) 2017-08-17T06:06:10Z minion quit (Remote host closed the connection) 2017-08-17T06:06:13Z easye quit (Remote host closed the connection) 2017-08-17T06:06:27Z BlueRavenGT quit (Ping timeout: 260 seconds) 2017-08-17T06:07:22Z knobo quit (Ping timeout: 240 seconds) 2017-08-17T06:07:55Z minion joined #lisp 2017-08-17T06:07:57Z specbot joined #lisp 2017-08-17T06:08:17Z test1600 joined #lisp 2017-08-17T06:12:34Z shka: heh 2017-08-17T06:12:57Z shka: first time ever, i considered using symbol-plist 2017-08-17T06:13:04Z nsrahmad quit (Ping timeout: 240 seconds) 2017-08-17T06:13:26Z Karl_Dscc quit (Remote host closed the connection) 2017-08-17T06:14:55Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-17T06:15:28Z uint joined #lisp 2017-08-17T06:15:40Z epony joined #lisp 2017-08-17T06:18:52Z mishoo quit (Ping timeout: 240 seconds) 2017-08-17T06:24:29Z server001 quit (Ping timeout: 240 seconds) 2017-08-17T06:24:38Z jackdaniel joined #lisp 2017-08-17T06:26:16Z flazh1 quit (Ping timeout: 246 seconds) 2017-08-17T06:26:44Z drmeister: I've used :pathname 2017-08-17T06:26:47Z drmeister: https://www.irccloud.com/pastebin/fWXSd2WQ/ 2017-08-17T06:27:49Z drmeister: For this tree: 2017-08-17T06:27:50Z drmeister: https://www.irccloud.com/pastebin/7rzeJsaN/ 2017-08-17T06:28:54Z easye joined #lisp 2017-08-17T06:28:56Z drmeister: It works fine. 2017-08-17T06:30:39Z flazh1 joined #lisp 2017-08-17T06:32:54Z knobo joined #lisp 2017-08-17T06:36:31Z schweers joined #lisp 2017-08-17T06:37:05Z server001 joined #lisp 2017-08-17T06:40:29Z shka quit (Ping timeout: 240 seconds) 2017-08-17T06:40:55Z Guest48352 quit (Changing host) 2017-08-17T06:40:55Z Guest48352 joined #lisp 2017-08-17T06:41:04Z Guest48352 is now known as mrSpec 2017-08-17T06:44:03Z damke_ joined #lisp 2017-08-17T06:45:29Z mishoo joined #lisp 2017-08-17T06:47:20Z abel-abel quit (Remote host closed the connection) 2017-08-17T06:48:54Z angavrilov joined #lisp 2017-08-17T06:50:05Z cibs joined #lisp 2017-08-17T06:57:30Z damke joined #lisp 2017-08-17T07:00:55Z damke_ quit (Ping timeout: 240 seconds) 2017-08-17T07:01:18Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-17T07:01:49Z Kaisyu joined #lisp 2017-08-17T07:02:39Z jameser joined #lisp 2017-08-17T07:05:04Z LooneyTunes quit (Ping timeout: 240 seconds) 2017-08-17T07:07:30Z uint: Is there something like termbin around, but with CL colorization? 2017-08-17T07:08:28Z damke_ joined #lisp 2017-08-17T07:10:07Z beach: What is termbin? 2017-08-17T07:10:29Z FreeBirdLjj joined #lisp 2017-08-17T07:10:35Z damke quit (Ping timeout: 240 seconds) 2017-08-17T07:11:29Z uint: A pastebin-like facility that lets me paste from the terminal, like so: echo "stuff" | nc termbin.com 9999 2017-08-17T07:12:46Z antoszka: uint: You want a commandline client for pasting with CL syntax colouring? There are tons. I'm using the Polish one, wklej.org, for instance. ix.io, too, if you want lightweight. pastebinint supports lisps as well, I think. 2017-08-17T07:13:15Z neoncontrails joined #lisp 2017-08-17T07:13:44Z jdz quit (Ping timeout: 240 seconds) 2017-08-17T07:14:29Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-17T07:14:34Z antoszka: Though most of them use some HTTP API rather than netcat. 2017-08-17T07:15:37Z neoncont_ quit (Ping timeout: 246 seconds) 2017-08-17T07:16:17Z uint: Humm. Thanks. Looking at ix.io 2017-08-17T07:17:16Z antoszka: Cool, let us know if that works :) 2017-08-17T07:17:52Z server001 quit (Ping timeout: 240 seconds) 2017-08-17T07:18:03Z uint: So far: nope :P 2017-08-17T07:18:10Z antoszka: haha 2017-08-17T07:19:25Z tgips joined #lisp 2017-08-17T07:19:50Z jdz joined #lisp 2017-08-17T07:19:56Z phadthai: hmm maybe also look at wgetpaste which supports various bins, some of which may support lisp syntax highlighting 2017-08-17T07:20:36Z tgips quit (Client Quit) 2017-08-17T07:21:12Z marvin2 joined #lisp 2017-08-17T07:21:14Z marvin2 quit (Excess Flood) 2017-08-17T07:22:00Z antoszka: uint: I think it's broken currently, getting a 500. 2017-08-17T07:22:24Z antoszka: Yeah, wgetpaste, like pastebinit supports a number of paste engines. 2017-08-17T07:26:50Z aoh joined #lisp 2017-08-17T07:27:07Z uint: Yeah, wgetpaste makes it simple. Thanks! 2017-08-17T07:27:16Z White_Flame quit (Ping timeout: 264 seconds) 2017-08-17T07:28:39Z White_Flame joined #lisp 2017-08-17T07:29:39Z tgips joined #lisp 2017-08-17T07:29:39Z tgips quit (Changing host) 2017-08-17T07:29:39Z tgips joined #lisp 2017-08-17T07:30:56Z server001 joined #lisp 2017-08-17T07:31:50Z damke joined #lisp 2017-08-17T07:33:13Z marvin2 joined #lisp 2017-08-17T07:33:50Z mingus joined #lisp 2017-08-17T07:34:15Z damke_ quit (Ping timeout: 240 seconds) 2017-08-17T07:34:37Z pjb: uint: have a look at http://sprunge.us 2017-08-17T07:34:43Z xantoz joined #lisp 2017-08-17T07:35:01Z pjb: uint: no lisp colorization, but works nicely. 2017-08-17T07:36:40Z vydd joined #lisp 2017-08-17T07:36:40Z vydd quit (Changing host) 2017-08-17T07:36:40Z vydd joined #lisp 2017-08-17T07:36:41Z vydd quit (Remote host closed the connection) 2017-08-17T07:37:56Z mson joined #lisp 2017-08-17T07:38:54Z cods joined #lisp 2017-08-17T07:41:28Z uint: oh, hey it does have lisp colorization, though it's kind of lacking 2017-08-17T07:41:53Z uint: you can append ?cl to the link to get it, apparently 2017-08-17T07:44:52Z tgips quit (Ping timeout: 240 seconds) 2017-08-17T07:46:01Z drot joined #lisp 2017-08-17T07:46:40Z anticrisis joined #lisp 2017-08-17T07:48:56Z tgips joined #lisp 2017-08-17T07:48:57Z tgips quit (Changing host) 2017-08-17T07:48:58Z tgips joined #lisp 2017-08-17T07:49:07Z tgips left #lisp 2017-08-17T07:50:14Z tgips joined #lisp 2017-08-17T07:50:23Z tgips left #lisp 2017-08-17T07:50:34Z tgips joined #lisp 2017-08-17T07:52:22Z defaultxr quit (Ping timeout: 246 seconds) 2017-08-17T07:52:30Z pjb: good. 2017-08-17T07:54:09Z les quit (K-Lined) 2017-08-17T07:54:10Z nicdev quit (K-Lined) 2017-08-17T07:55:24Z antoszka: uint: I just use wgetpaste with the 'gists' service. 2017-08-17T07:55:24Z les joined #lisp 2017-08-17T07:55:24Z Patzy joined #lisp 2017-08-17T07:55:27Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-17T07:56:37Z jameser joined #lisp 2017-08-17T07:56:41Z SlashLife quit (Ping timeout: 260 seconds) 2017-08-17T07:56:42Z ikopico quit (Ping timeout: 260 seconds) 2017-08-17T07:56:42Z clog quit (Ping timeout: 260 seconds) 2017-08-17T07:57:16Z neuri8 quit (Ping timeout: 260 seconds) 2017-08-17T07:57:17Z SiCC quit (Ping timeout: 260 seconds) 2017-08-17T07:57:51Z vibs29 quit (Ping timeout: 260 seconds) 2017-08-17T07:57:51Z malm quit (Ping timeout: 260 seconds) 2017-08-17T07:58:05Z vibs29 joined #lisp 2017-08-17T07:59:00Z nirved joined #lisp 2017-08-17T07:59:05Z neuri8 joined #lisp 2017-08-17T07:59:07Z malm joined #lisp 2017-08-17T07:59:11Z SiCC joined #lisp 2017-08-17T07:59:35Z SlashLife joined #lisp 2017-08-17T07:59:36Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-17T07:59:39Z ikopico joined #lisp 2017-08-17T08:00:58Z caffe joined #lisp 2017-08-17T08:04:45Z eagleflo joined #lisp 2017-08-17T08:09:22Z random-nick joined #lisp 2017-08-17T08:14:09Z galdor2 joined #lisp 2017-08-17T08:14:25Z les quit (K-Lined) 2017-08-17T08:15:41Z les joined #lisp 2017-08-17T08:19:35Z _cosmonaut_ joined #lisp 2017-08-17T08:23:57Z djh joined #lisp 2017-08-17T08:25:50Z Murii joined #lisp 2017-08-17T08:26:33Z SqREL joined #lisp 2017-08-17T08:29:15Z JuanDaugherty joined #lisp 2017-08-17T08:34:34Z lvo joined #lisp 2017-08-17T08:38:10Z Xof joined #lisp 2017-08-17T08:45:58Z glamas quit (Remote host closed the connection) 2017-08-17T08:55:34Z Posterdati joined #lisp 2017-08-17T08:55:46Z arduo joined #lisp 2017-08-17T08:58:56Z ft joined #lisp 2017-08-17T09:03:06Z tgips left #lisp 2017-08-17T09:04:27Z server001 quit (Ping timeout: 248 seconds) 2017-08-17T09:05:10Z glamas joined #lisp 2017-08-17T09:10:40Z jamtho_ joined #lisp 2017-08-17T09:17:29Z server001 joined #lisp 2017-08-17T09:20:24Z phoe joined #lisp 2017-08-17T09:25:25Z phoe: geez 2017-08-17T09:25:35Z phoe: I go offline for the moment and I get K-lined 2017-08-17T09:25:55Z rRru joined #lisp 2017-08-17T09:26:35Z damke_ joined #lisp 2017-08-17T09:26:57Z clog joined #lisp 2017-08-17T09:27:52Z beach: phoe: Not just you. Global freenode problem. 2017-08-17T09:28:05Z glamas quit (Remote host closed the connection) 2017-08-17T09:28:16Z jackdaniel: phoe: I bet you spammed, that's why they gave K-line you 2017-08-17T09:28:20Z jackdaniel: ;) 2017-08-17T09:29:15Z damke quit (Ping timeout: 240 seconds) 2017-08-17T09:30:20Z loke: phoe: You too? I guess they are on to us... Seems like we can't spam like we used to anymore. 2017-08-17T09:31:10Z phoe: loke: I had no idea that they would find out so quickly https://gist.github.com/phoe/7a384a0483ff275c1d1a670fbbfacb5c#file-hmmm-lisp-L68 2017-08-17T09:32:05Z phoe: I wasn't spamming much, just most of #lisp, #scheme, #racket, #clojure and a few thousand other randomly chosen accounts 2017-08-17T09:32:49Z loke: phoe: It was for a good cause. Those parens needs ahome. 2017-08-17T09:33:36Z shka_: phoe: save-lisp-and-die! 2017-08-17T09:33:37Z shka_: :P 2017-08-17T09:33:58Z ebzzry_ joined #lisp 2017-08-17T09:36:21Z server001 quit (Ping timeout: 240 seconds) 2017-08-17T09:37:03Z server001 joined #lisp 2017-08-17T09:37:06Z glamas joined #lisp 2017-08-17T09:42:23Z ikopico quit (Quit: Imma make like traffic and jam) 2017-08-17T09:44:45Z ikopico joined #lisp 2017-08-17T09:44:58Z epony quit (Read error: Connection reset by peer) 2017-08-17T09:46:44Z nowhere_man joined #lisp 2017-08-17T09:47:42Z mson quit (Quit: Connection closed for inactivity) 2017-08-17T09:51:10Z argoneus quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) 2017-08-17T09:51:29Z nowhere_man quit (Ping timeout: 240 seconds) 2017-08-17T09:52:11Z argoneus joined #lisp 2017-08-17T09:53:33Z epony joined #lisp 2017-08-17T09:54:35Z server001 quit (Ping timeout: 240 seconds) 2017-08-17T09:58:21Z tonton_ joined #lisp 2017-08-17T10:03:54Z nowhere_man joined #lisp 2017-08-17T10:05:32Z wildbartty joined #lisp 2017-08-17T10:07:52Z Guest69434 is now known as axion 2017-08-17T10:08:14Z axion quit (Changing host) 2017-08-17T10:08:14Z axion joined #lisp 2017-08-17T10:09:53Z newcup quit (Ping timeout: 255 seconds) 2017-08-17T10:10:47Z les quit (Ping timeout: 255 seconds) 2017-08-17T10:10:47Z Kaisyu quit (Ping timeout: 255 seconds) 2017-08-17T10:11:04Z knicklux joined #lisp 2017-08-17T10:11:41Z xristos quit (Ping timeout: 255 seconds) 2017-08-17T10:11:41Z stylewarning quit (Ping timeout: 255 seconds) 2017-08-17T10:11:41Z Ellenor quit (Ping timeout: 255 seconds) 2017-08-17T10:12:12Z fe[nl]ix quit (Ping timeout: 255 seconds) 2017-08-17T10:12:12Z Blkt quit (Ping timeout: 255 seconds) 2017-08-17T10:12:26Z Blkt joined #lisp 2017-08-17T10:12:27Z fe[nl]ix joined #lisp 2017-08-17T10:12:27Z ChanServ has set mode +o fe[nl]ix 2017-08-17T10:12:54Z Ellenor joined #lisp 2017-08-17T10:14:10Z Kaisyu joined #lisp 2017-08-17T10:15:15Z jamtho_ quit (Ping timeout: 240 seconds) 2017-08-17T10:17:20Z les joined #lisp 2017-08-17T10:22:16Z tessier joined #lisp 2017-08-17T10:22:16Z tessier quit (Changing host) 2017-08-17T10:22:16Z tessier joined #lisp 2017-08-17T10:22:30Z ak5 joined #lisp 2017-08-17T10:23:07Z m00natic joined #lisp 2017-08-17T10:23:37Z nsrahmad joined #lisp 2017-08-17T10:23:52Z glamas quit (Remote host closed the connection) 2017-08-17T10:25:00Z MetaHertz joined #lisp 2017-08-17T10:25:39Z drcode joined #lisp 2017-08-17T10:29:01Z loke: Test 2017-08-17T10:29:21Z jackdaniel: # 2017-08-17T10:35:53Z damke joined #lisp 2017-08-17T10:37:19Z nsrahmad quit (Ping timeout: 246 seconds) 2017-08-17T10:38:35Z damke_ quit (Ping timeout: 240 seconds) 2017-08-17T10:41:20Z jameser quit (Read error: Connection reset by peer) 2017-08-17T10:43:23Z wildbartty quit (Remote host closed the connection) 2017-08-17T10:45:46Z damke_ joined #lisp 2017-08-17T10:47:55Z damke quit (Ping timeout: 240 seconds) 2017-08-17T10:54:52Z galdor2 is now known as galdor 2017-08-17T10:55:50Z froggey joined #lisp 2017-08-17T10:56:41Z Bike joined #lisp 2017-08-17T10:59:25Z damke joined #lisp 2017-08-17T10:59:35Z damke_ quit (Ping timeout: 240 seconds) 2017-08-17T10:59:59Z nowhere_man quit (Ping timeout: 240 seconds) 2017-08-17T11:01:27Z nsrahmad joined #lisp 2017-08-17T11:05:32Z varjag joined #lisp 2017-08-17T11:06:50Z theBlackDragon joined #lisp 2017-08-17T11:07:38Z some-user left #lisp 2017-08-17T11:10:38Z Xach joined #lisp 2017-08-17T11:12:59Z Bike quit (Ping timeout: 248 seconds) 2017-08-17T11:17:23Z Bike joined #lisp 2017-08-17T11:19:31Z BitPuffin|osx joined #lisp 2017-08-17T11:20:33Z tonton_ is now known as tonton 2017-08-17T11:38:55Z nsrahmad quit (Remote host closed the connection) 2017-08-17T11:39:02Z Bicyclidine joined #lisp 2017-08-17T11:39:20Z Achylles joined #lisp 2017-08-17T11:40:51Z dec0n joined #lisp 2017-08-17T11:40:52Z lvo left #lisp 2017-08-17T11:41:29Z Bike quit (Ping timeout: 240 seconds) 2017-08-17T11:42:11Z xuxuru joined #lisp 2017-08-17T11:44:41Z xuxuru quit (Client Quit) 2017-08-17T11:46:30Z glv joined #lisp 2017-08-17T11:47:01Z dddddd joined #lisp 2017-08-17T11:50:56Z lvo joined #lisp 2017-08-17T11:58:35Z damke quit (Ping timeout: 240 seconds) 2017-08-17T11:58:35Z JohnTalent joined #lisp 2017-08-17T11:59:54Z damke joined #lisp 2017-08-17T12:00:19Z rpg joined #lisp 2017-08-17T12:01:51Z grublet joined #lisp 2017-08-17T12:03:44Z xuxuru joined #lisp 2017-08-17T12:04:47Z rpg quit (Client Quit) 2017-08-17T12:05:34Z temporal1 is now known as TeMPOraL 2017-08-17T12:06:06Z zagura joined #lisp 2017-08-17T12:14:23Z yrk joined #lisp 2017-08-17T12:14:55Z zacts quit (Quit: WeeChat 1.9) 2017-08-17T12:15:01Z Kevslinger joined #lisp 2017-08-17T12:15:26Z procl0 joined #lisp 2017-08-17T12:17:58Z pok joined #lisp 2017-08-17T12:20:22Z Bicyclidine quit (Ping timeout: 255 seconds) 2017-08-17T12:22:50Z arduo quit (Read error: Connection reset by peer) 2017-08-17T12:22:50Z vaporatorius quit (Read error: Connection reset by peer) 2017-08-17T12:23:00Z stylewarning joined #lisp 2017-08-17T12:23:03Z arduo joined #lisp 2017-08-17T12:23:52Z vap1 joined #lisp 2017-08-17T12:23:52Z vaporatorius joined #lisp 2017-08-17T12:25:37Z vaporatorius quit (Client Quit) 2017-08-17T12:28:18Z arduo quit (Remote host closed the connection) 2017-08-17T12:31:03Z jameser joined #lisp 2017-08-17T12:33:28Z rRru quit (Quit: rRru) 2017-08-17T12:36:21Z dddddd quit (Ping timeout: 240 seconds) 2017-08-17T12:36:35Z JohnTalent quit (Ping timeout: 240 seconds) 2017-08-17T12:39:56Z dddddd joined #lisp 2017-08-17T12:39:59Z grublet quit (Quit: Leaving) 2017-08-17T12:40:57Z d4ryus3 joined #lisp 2017-08-17T12:44:16Z d4ryus2 quit (Ping timeout: 260 seconds) 2017-08-17T12:45:38Z sellout- joined #lisp 2017-08-17T12:46:51Z gremly_ quit (Quit: WeeChat 1.4) 2017-08-17T12:49:41Z EvW1 joined #lisp 2017-08-17T12:49:50Z damke_ joined #lisp 2017-08-17T12:51:55Z damke quit (Ping timeout: 240 seconds) 2017-08-17T12:52:40Z Walex joined #lisp 2017-08-17T12:55:08Z server001 joined #lisp 2017-08-17T12:56:34Z axion: Hello. Is anyone good with bit twiddling? Been stuck on a function for 2 days now. Trying to modify it to support the other endianess. I could make a paste (not much code to parse) if anyone can give me a hand as a last resort before I give up. 2017-08-17T12:58:52Z beach: Paste it, and we will see. 2017-08-17T12:59:15Z axion: Thank you. Give me a moment. 2017-08-17T13:00:22Z doesthiswork joined #lisp 2017-08-17T13:01:15Z satran joined #lisp 2017-08-17T13:01:29Z damke joined #lisp 2017-08-17T13:03:00Z axion: http://paste.lisp.org/display/353653 2017-08-17T13:03:41Z beach: Reading... 2017-08-17T13:03:55Z damke_ quit (Ping timeout: 240 seconds) 2017-08-17T13:04:08Z Xach: axion: "other endianness"? 2017-08-17T13:04:22Z axion: Yes, I want to read bits from the byte vector in little endian rather than big 2017-08-17T13:04:32Z Xach: endianness is generally a property of multi-byte words, not bytes. 2017-08-17T13:04:39Z axion: With a second argument to the function, probably a keyword defaulting to big 2017-08-17T13:04:49Z beach: Xach: Always, even. 2017-08-17T13:04:51Z Xach: does this come up in practice or is it completeness? 2017-08-17T13:04:55Z axion: and multiple bytes can be requested with arbitrary length bits 2017-08-17T13:05:01Z Bike joined #lisp 2017-08-17T13:05:05Z axion: It comes up in practice 2017-08-17T13:07:47Z beach: axion: the comment says you read bits out of bit buffer, but what's the role of *byte-buffer*? 2017-08-17T13:07:58Z beach: It says what type it is, but not what role it plays here. 2017-08-17T13:08:35Z varjag quit (Ping timeout: 240 seconds) 2017-08-17T13:08:45Z antoszka: axion: Hasn't the nibbles library got abstractions for that? 2017-08-17T13:08:52Z pjb: axion: an easy way to twiddle with bits is to use bit-vectors. 2017-08-17T13:08:55Z axion: *byte-buffer* is really just an array of bytes, whose purpose is the same as this code, except for bytes. It can be used to cache large chunks of bytes from a stream, but it's not really relevant to this code. 2017-08-17T13:09:15Z pjb: axion: the only difficult part then is to convert between bit-vectors and byte vectors or integers. 2017-08-17T13:09:31Z axion: pjb: I had considered that, but the conversion got me 2017-08-17T13:09:53Z pjb: axion: for this, you have to mix bit vector indexing, and arithmetic. Happily, you can also use LDB/DPB. 2017-08-17T13:10:34Z pjb: axion: the conversion got you because there are multiple ways to do it, and you have to choose one. (or the choices may be imposed on you, but you have to know which one it is). 2017-08-17T13:10:38Z axion: antoszka: nibbles only supports byte-sized quantities 2017-08-17T13:10:47Z antoszka: axion: ah, ok 2017-08-17T13:11:04Z sellout- quit (Quit: Leaving.) 2017-08-17T13:11:17Z sellout- joined #lisp 2017-08-17T13:11:17Z axion: pjb: The truth is I am by no means good at this stuff, and that small bit took me days. 2017-08-17T13:11:27Z pjb: Notice that network order defines an ordering of bytes, not of bits. 2017-08-17T13:11:28Z axion: So looking for help, and or existing code to do what I need 2017-08-17T13:11:40Z pjb: axion: in practice, bits are implicitely ordered by the hardware itself. 2017-08-17T13:12:27Z axion: Hmm 2017-08-17T13:12:28Z pjb: For example, on serial lines, the msb is transmitted first and the lsb is transmitted last. But on hard disks, it's often the opposite. On the other hand, on multi-track tapes, bits are usually transmitted in parallel. Do you care if they're stored on the outer track or the inner track? 2017-08-17T13:14:09Z pjb: Your bit-buffer is conspiciously missing a "fill pointer". (assuming your bit-count is, as it seems to be, a pointer to the next bit to be read). 2017-08-17T13:14:35Z axion: pjb: Ok, I'm not really sure what that means as far as my need for this code. I will be using this to parse binary formats which encode bytes in either BE or LE...and sometimes both 2017-08-17T13:15:08Z pjb: int-buffer seems to be an integer. In Lisp integers have an infinite number of bits. 2017-08-17T13:15:21Z sellout- quit (Ping timeout: 240 seconds) 2017-08-17T13:15:24Z axion: right 2017-08-17T13:15:26Z pjb: But if you talk of BE or LE, you would assume a word size. 2017-08-17T13:15:27Z axion: pjb: I modified this from 3b's code here: https://github.com/3b/3b-swf/blob/master/low-level/swftype-read.lisp#L51 2017-08-17T13:15:32Z beach: axion: As both Xach and pjb said, endianness has to do with the order of bytes within a multi-byte word. The order of the bits within a byte is unimportant here, i.e. always the same. 2017-08-17T13:15:37Z pjb: You're making all this very confusing by not defining your premises! 2017-08-17T13:15:54Z axion: beach: and what if i request say, 10 bits? 2017-08-17T13:16:05Z pjb: (ldb (byte 10 position) buffer0 2017-08-17T13:16:06Z pjb: (ldb (byte 10 position) buffer) 2017-08-17T13:17:21Z Achylles quit (Ping timeout: 240 seconds) 2017-08-17T13:17:36Z beach: axion: Sorry, don't know. The protocol in question should tell you from which end of the second byte the additional 2 bits are to be taken. 2017-08-17T13:17:57Z axion: Ok, what you say makes some sense to me. I will have to think study some more. This is all very confusing to me 2017-08-17T13:18:17Z varjag joined #lisp 2017-08-17T13:18:46Z beach: Good luck. 2017-08-17T13:18:56Z axion: Thank you. 2017-08-17T13:21:29Z rumbler31 joined #lisp 2017-08-17T13:26:58Z sellout- joined #lisp 2017-08-17T13:33:02Z thetabit joined #lisp 2017-08-17T13:34:48Z pjb: axion: http://paste.lisp.org/display/353653#1 2017-08-17T13:35:11Z neoncontrails quit 2017-08-17T13:35:29Z froggey quit (Ping timeout: 240 seconds) 2017-08-17T13:35:35Z thetabit: What are some strategies for ensuring proper type assignment? e.g. ID is always an integer value, Text is a string value, etc. Using declare? 2017-08-17T13:35:50Z pjb: axion: but notice that since I use LDB wholesomely, bits in the byte are always read in the same order, so you get AA instead of 55 and 33 instead of CC! 2017-08-17T13:36:07Z pjb: thetabit: it's not your job. The implementation takes care of it. 2017-08-17T13:36:44Z axion: pjb: Hmm, I'll see if I can understand this 2017-08-17T13:36:48Z rpg joined #lisp 2017-08-17T13:37:01Z pjb: axion: draw little diagrams! 2017-08-17T13:37:32Z axion: What does this code handle better than my paste? 2017-08-17T13:38:28Z pjb: Not calling an external library. Having a definite length. Therefore being able to read bytes in both orders. 2017-08-17T13:38:49Z dlowe: thetabit: A declaration is a promise, not a check. Use cl:check-type if you really insist. 2017-08-17T13:38:58Z pjb: Not using with-slots in tight loops! 2017-08-17T13:39:31Z pjb: thetabit: sorry, my answer was for the question of type alignment, I grossly misread your question. 2017-08-17T13:39:35Z axion: I see 2017-08-17T13:39:41Z pjb: thetabit: but it still applies in a way :-/ 2017-08-17T13:40:34Z pjb: thetabit: so yes, you definitely want to use check-type. 2017-08-17T13:41:02Z thetabit: thanks 2017-08-17T13:41:12Z thetabit: I will check out check-type 2017-08-17T13:41:22Z thetabit: the problem for me is working with databases 2017-08-17T13:41:47Z pjb: axion: it seems you're reading the octets in the integer, octet by octet. This is useless, since ldb can read any number of bits! 2017-08-17T13:41:48Z thetabit: I am trying to ensure that a string is not bound to an integer when the sql is generated 2017-08-17T13:43:09Z pjb: thetabit: basically you have two situations. check-type is interactive (if the type is wrong, it breaks into the debugger with a restart to read a new value for the place). So you would in general restrict check-type to interface functions, functions meaningful for the user. Internally, you could just break with a type-error. 2017-08-17T13:43:25Z beach: For WSCL, the meaning of a type declaration will be defined according to the value of the SAFETY quality. 2017-08-17T13:43:39Z axion: pjb: Ok 2017-08-17T13:43:58Z pjb: axion: you can implement a function (bit-buffer-remaining-bit-count bb) 2017-08-17T13:47:02Z LiamH joined #lisp 2017-08-17T13:47:43Z dddddd quit (Ping timeout: 246 seconds) 2017-08-17T13:47:59Z froggey joined #lisp 2017-08-17T13:48:21Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-17T13:48:31Z thetabit: so would I use typep, (when (typep (funcall new-id) 'integer) (setq object-id new-id)) 2017-08-17T13:48:52Z thetabit: sorry, just trying to figure this stuff out lol 2017-08-17T13:49:31Z rpg: thetabit: You're checking the return value of NEW-ID, and then setting the OBJECT-ID to the function, rather than the return value. Is that what you want? 2017-08-17T13:49:46Z axion: You can make a promise to the implementation that a function has a return value of a certain type be using an ftype declaration. 2017-08-17T13:50:08Z rpg: but that will generally be an UNCHECKED promise 2017-08-17T13:50:42Z Murii quit (Ping timeout: 240 seconds) 2017-08-17T13:51:00Z thetabit: axion, would you mind explaining a bit more? 2017-08-17T13:51:32Z axion: Do you need the value to be checked or is this for optimization purposes? 2017-08-17T13:52:45Z thetabit: That was an example, but this is someone that may be using a web application and they have updated a field. I want to make sure that the input from the user is correct. 2017-08-17T13:53:37Z thetabit: Let's think about a different example, say there was a datetime field displayed to the user and they could modify it, I would want to make sure that the only string that is bound that field is a datetime string 2017-08-17T13:54:06Z Bike: in that case you want an explicit check, not just a type declaration. 2017-08-17T13:54:08Z axion: Ah well for that you would probably want client and server side validation, the former by means of Javascript. 2017-08-17T13:54:29Z axion: But never solely the former. 2017-08-17T13:54:33Z oleo joined #lisp 2017-08-17T13:54:35Z varjag quit (Ping timeout: 240 seconds) 2017-08-17T13:54:36Z thetabit: okay, so that level of type checking should be done a higher level of abstraction 2017-08-17T13:55:01Z axion: But not relied upon 2017-08-17T13:55:55Z thetabit: True 2017-08-17T13:56:30Z ekinmur joined #lisp 2017-08-17T13:57:51Z mishoo quit (Ping timeout: 240 seconds) 2017-08-17T13:59:34Z beach: minion: Please tell me about WSCL 2017-08-17T13:59:35Z minion: beach: WSCL: Well-Specified Common Lisp. Pronounce it as "whistle". A project to revise the Common Lisp standard in a non-controversial way. See https://github.com/robert-strandh/Well-Specified-Common-Lisp 2017-08-17T13:59:47Z beach: minion: Thanks! 2017-08-17T13:59:47Z minion: no problem 2017-08-17T14:00:07Z ekinmur quit (Client Quit) 2017-08-17T14:01:22Z dddddd joined #lisp 2017-08-17T14:01:54Z ``Erik joined #lisp 2017-08-17T14:03:01Z oleo quit (Quit: irc client terminated!) 2017-08-17T14:03:56Z axion: beach: Can you link me to your paper from...years ago...about sandboxing Common Lisp? 2017-08-17T14:04:18Z beach: This one? http://metamodular.com/environments.pdf 2017-08-17T14:04:32Z doesthiswork quit (Quit: Leaving.) 2017-08-17T14:05:52Z axion: Hmm, I think so. 2017-08-17T14:05:53Z axion: Thanks 2017-08-17T14:06:25Z beach: Sure. It's the only one I have written related to that topic. 2017-08-17T14:07:10Z Murii joined #lisp 2017-08-17T14:07:17Z axion: It doesn't mention another reason why sandboxing is difficult 2017-08-17T14:08:39Z beach: Which one? 2017-08-17T14:08:57Z axion: Even if you removed unsafe symbols, you would need to restrict the reader down. For example, evaluating 9d999 2017-08-17T14:09:09Z beach: Sure. 2017-08-17T14:09:38Z beach: The paper is not about sandboxing, so it doesn't have all the sufficient conditions for it. It is about first-class global environments which is one necessary condition for sanboxing. 2017-08-17T14:09:48Z beach: sandboxing even. 2017-08-17T14:09:52Z varjag joined #lisp 2017-08-17T14:10:20Z axion: Yes, I understand. The topic of sandboxing came up with a colleague the other day, and I was looking for the section in that paper you wrote. 2017-08-17T14:10:23Z Kyo91 joined #lisp 2017-08-17T14:10:24Z joast joined #lisp 2017-08-17T14:10:38Z beach: I see. 2017-08-17T14:11:15Z Murii quit (Ping timeout: 240 seconds) 2017-08-17T14:11:43Z axion: Is that paper dated? I've been here quite a while, but only seemed like a couple years ago I proofread that for you :) 2017-08-17T14:12:51Z beach: It might be a few years old. 2014 at the very oldest. 2017-08-17T14:13:51Z knobo quit (Ping timeout: 240 seconds) 2017-08-17T14:14:15Z beach: 2015, London. 2017-08-17T14:14:40Z beach: April 21st at 17:30 :) 2017-08-17T14:15:06Z axion: Is that all, wow. 2017-08-17T14:15:24Z hebroon joined #lisp 2017-08-17T14:16:24Z hebroon quit (Client Quit) 2017-08-17T14:16:30Z flamebeard quit (Quit: Leaving) 2017-08-17T14:17:09Z yappy joined #lisp 2017-08-17T14:17:43Z yappy quit (Client Quit) 2017-08-17T14:18:13Z oleo joined #lisp 2017-08-17T14:18:25Z abel-abel joined #lisp 2017-08-17T14:20:20Z abel-abel quit (Remote host closed the connection) 2017-08-17T14:21:44Z EvW1 quit (Ping timeout: 240 seconds) 2017-08-17T14:21:46Z glv quit (Quit: Leaving) 2017-08-17T14:25:31Z dec0n quit (Ping timeout: 248 seconds) 2017-08-17T14:26:37Z EvW joined #lisp 2017-08-17T14:31:18Z lvo quit (Remote host closed the connection) 2017-08-17T14:31:42Z felipedvorak quit (Ping timeout: 246 seconds) 2017-08-17T14:32:11Z dmiles quit (Ping timeout: 260 seconds) 2017-08-17T14:34:30Z add^_ joined #lisp 2017-08-17T14:35:37Z dmiles joined #lisp 2017-08-17T14:38:13Z dieggsy joined #lisp 2017-08-17T14:39:46Z Guest51511 quit (Ping timeout: 260 seconds) 2017-08-17T14:43:15Z Karl_Dscc joined #lisp 2017-08-17T14:44:15Z jerme joined #lisp 2017-08-17T14:44:40Z felipedvorak joined #lisp 2017-08-17T14:45:00Z Karl_Dscc quit (Remote host closed the connection) 2017-08-17T14:46:14Z sellout- quit (Quit: Leaving.) 2017-08-17T14:46:21Z sellout- joined #lisp 2017-08-17T14:48:45Z np356 joined #lisp 2017-08-17T14:48:47Z np356: Hello ladies and gentlemen. My sister is sortof late on her masters thesis, that requires about ~80 filled survays left. Could you please help out? Its about "The impact of business analysis techniques on software quality": https://www.surveymonkey.com/r/W39T9TB 2017-08-17T14:50:24Z zulu_inuoe: A chance to complain -and- help somebody out? I'm in 2017-08-17T14:50:40Z sellout- quit (Ping timeout: 255 seconds) 2017-08-17T14:52:48Z Guest51511 joined #lisp 2017-08-17T14:53:47Z satran quit (Ping timeout: 248 seconds) 2017-08-17T14:55:11Z mishoo joined #lisp 2017-08-17T14:55:23Z keviv joined #lisp 2017-08-17T14:57:04Z impulse joined #lisp 2017-08-17T14:57:09Z FreeBirdLjj joined #lisp 2017-08-17T14:57:51Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-17T14:58:30Z schweers: is there a portable alternative to sbcls SB-SEQUENCE? If so, any major disadvantages to those compared to just using SB-SEQUENCE? 2017-08-17T15:01:13Z Bike: sb-sequence is based on a publically defined extension http://www.doc.gold.ac.uk/~mas01cr/papers/ilc2007/sequences-20070301.pdf 2017-08-17T15:01:21Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-17T15:01:24Z Bike: i believe abcl implements it, but i don't know about others 2017-08-17T15:01:44Z Bike: if by "portable" you mean "without deep implementation support" than you're probably out of luck 2017-08-17T15:01:55Z impulse quit (Ping timeout: 240 seconds) 2017-08-17T15:02:02Z impulse joined #lisp 2017-08-17T15:02:39Z schweers: hmm. ccl doesn’t seem to have it. I normally use sbcl, but also being able to use ccl would have been a bonus. I was hoping for something like trivial-sequences, but at least quicklisp doesn’t have that 2017-08-17T15:03:24Z Bike: the trick is that it requires the CL sequence functions to call the custom ones 2017-08-17T15:03:47Z Bike: you could define your own package and do the sequence functions yourself and so on, but you'd probably lose efficiency 2017-08-17T15:03:54Z Bike: and the loop extension is right out. 2017-08-17T15:04:03Z schweers: I think the latter is what sbcl does 2017-08-17T15:04:20Z schweers: cl:length is a compiled function, whereas sb-sequence:length is a generic function 2017-08-17T15:04:24Z schweers: with 3 methods 2017-08-17T15:05:23Z sellout- joined #lisp 2017-08-17T15:06:35Z Bike: cl:length calls sb-sequence:length. 2017-08-17T15:06:55Z schweers: it does? 2017-08-17T15:07:01Z Bike: yes. 2017-08-17T15:07:29Z Bike: this is the idea of the extension. the CL functions remain normal so that it doesn't have to do method dispatch, but for sequences other than vectors and lists it calls generic functions. 2017-08-17T15:09:38Z schweers: uhh … I can specify methods inside a DEFGENERIC? nice, I didn’t know that 2017-08-17T15:10:24Z Bike: :method? yes. 2017-08-17T15:10:28Z jerme left #lisp 2017-08-17T15:10:39Z schweers: I feel a little weird asking this, but … in sbcl’s definition of length I see this: (sb!sequence:length sequence) 2017-08-17T15:11:23Z schweers: when I put point on it and say M-. (in emacs with slime) I am taken to a definition like this: (defgeneric sequence:length (sequence) ...) 2017-08-17T15:11:34Z schweers: is there anything special to this syntax? 2017-08-17T15:11:36Z TMA: schweers: sb!xxx gets translated to sb-xxx during the build process 2017-08-17T15:11:50Z schweers: ah, so this is an sbcl specific thing? 2017-08-17T15:11:56Z Bike: the bang is, yes 2017-08-17T15:12:00Z schweers: thanks 2017-08-17T15:12:05Z Bike: just treat sb!sequence as being sb-sequence 2017-08-17T15:12:16Z aeth quit (Ping timeout: 264 seconds) 2017-08-17T15:12:43Z schweers: what’s even more strange to me is that the last definition is located after this expression: (in-package "SB-IMPL") 2017-08-17T15:13:05Z schweers: uh, ok, sure, why not. I had a brain fart 2017-08-17T15:13:56Z aeth joined #lisp 2017-08-17T15:14:15Z Posterdati quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-17T15:14:41Z SquareWaveZero joined #lisp 2017-08-17T15:14:56Z Posterdati joined #lisp 2017-08-17T15:20:49Z nowhere_man joined #lisp 2017-08-17T15:22:37Z DingoSaar joined #lisp 2017-08-17T15:23:13Z djeis joined #lisp 2017-08-17T15:25:56Z djeis quit (Client Quit) 2017-08-17T15:28:56Z knobo joined #lisp 2017-08-17T15:29:54Z nullniverse quit (Quit: Leaving) 2017-08-17T15:30:43Z nirved quit (Quit: Leaving) 2017-08-17T15:31:39Z _cosmonaut_ quit (Ping timeout: 248 seconds) 2017-08-17T15:32:38Z xuxuru quit (Ping timeout: 268 seconds) 2017-08-17T15:33:35Z xuxuru joined #lisp 2017-08-17T15:34:20Z ferada joined #lisp 2017-08-17T15:35:05Z ferada left #lisp 2017-08-17T15:37:26Z schweers: I just have to ask: what do you folks use for generic sequence and/or iteration purposes? just concrete objects, or is there a sort of consensus on what to use? 2017-08-17T15:40:26Z dlowe: loop if you want to avoid external deps, iterate library otherwise. 2017-08-17T15:41:41Z schweers: I currently use iterate, yet I’m not too happy with the fact that it seems tied to certain sequence types. works fine for the built-in ones, but I’m a little worried about user defined sequence types 2017-08-17T15:42:14Z xristos joined #lisp 2017-08-17T15:42:14Z schweers: although iterate should be extensible enough to support the odd custom sequence, it doesn’t seem generic. 2017-08-17T15:42:16Z xristos is now known as Guest77189 2017-08-17T15:43:55Z foom: If you really want generic sequences, you should use a language other than common-lisp. 2017-08-17T15:44:05Z schweers: why? 2017-08-17T15:44:15Z schweers: because what I’m looking for simply doesn’t exist? 2017-08-17T15:44:21Z schweers: also: that’s not an option ;) 2017-08-17T15:44:38Z foom: Because you effectively can't have them in CL. 2017-08-17T15:44:45Z foom: Most people just make do without, because that's good enough. 2017-08-17T15:45:06Z schweers: why can’t you have it? surely it could be implemented as a library. 2017-08-17T15:45:41Z schweers: also sb-sequence seems quite nice 2017-08-17T15:47:05Z brendyn quit (Ping timeout: 248 seconds) 2017-08-17T15:47:18Z schweers: I should add that I’m not really concerned about loosing cl:mapcar, cl:reduce and the like as long as there are viable alternatives 2017-08-17T15:48:06Z _cosmonaut_ joined #lisp 2017-08-17T15:48:35Z al-damiri joined #lisp 2017-08-17T15:51:59Z Bike: extended sequences aren't used often, schweers. 2017-08-17T15:52:15Z schweers: any particular reason why? 2017-08-17T15:52:50Z Bike: just not a lot of demand, i guess 2017-08-17T15:53:01Z foom: AFAIK, it's still only implemented in SBCL. 2017-08-17T15:53:20Z Xach: It seems to me like a chicken and egg problem. To be really useful, it has to be widely used. 2017-08-17T15:55:38Z schweers: okay, but there is nothing inherently problematic about them which I should be aware of? 2017-08-17T15:55:39Z nowhere_man quit (Ping timeout: 248 seconds) 2017-08-17T15:55:39Z jackdaniel: one could create my-future-common-lisp package with these functions amended. fwiw, closer-mop has such package called closer-common-lisp 2017-08-17T15:56:04Z jackdaniel: (but it shadows different set of functions) 2017-08-17T15:56:26Z jackdaniel: s/functions/symbols/ 2017-08-17T15:56:34Z defaultxr joined #lisp 2017-08-17T15:57:21Z dddddd quit (Ping timeout: 240 seconds) 2017-08-17T15:58:01Z rippa joined #lisp 2017-08-17T15:58:14Z rumbler31 joined #lisp 2017-08-17T15:59:09Z defaultxr quit (Client Quit) 2017-08-17T15:59:23Z Xach: jackdaniel: that's easier to get buy-in because there is really no other option for portable MOPpery 2017-08-17T15:59:39Z AlphaAtom joined #lisp 2017-08-17T16:00:00Z emaczen` joined #lisp 2017-08-17T16:00:21Z dieggsy quit (Ping timeout: 240 seconds) 2017-08-17T16:00:35Z foom: The only other unfortunate part is that CL itself doesn't treat lists and vectors generically. 2017-08-17T16:01:19Z schweers: which I find kind of sad 2017-08-17T16:01:33Z schweers: anyway, I’m going to call it a day and deal with it tomorrow 2017-08-17T16:01:37Z schweers: thanks for your input 2017-08-17T16:01:46Z sellout- quit (Quit: Leaving.) 2017-08-17T16:01:46Z xuxuru quit (Quit: xuxuru) 2017-08-17T16:02:04Z xuxuru joined #lisp 2017-08-17T16:02:10Z schweers quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-17T16:02:11Z foom: the definition of #'equal is a source of continuing sadness. 2017-08-17T16:02:12Z jackdaniel: yeah, I'm not saying its *the* solution, but adding generic abstraction over sequences may be done given one is willing to use such mfcl package 2017-08-17T16:02:36Z jackdaniel: I like CDR about equals and compare operators 2017-08-17T16:02:38Z beach: Given how sad Common Lisp makes people, perhaps they should give it up. 2017-08-17T16:02:43Z defaultxr joined #lisp 2017-08-17T16:02:53Z foom: beach: seems unlikely, at this point. :) 2017-08-17T16:03:50Z foom: But, of course, always worth considering. 2017-08-17T16:05:34Z foom: (Also: show me a language that isn't sadness-inducing in one way or another) 2017-08-17T16:06:14Z beach: The creators of Common Lisp typically had very good reasons for the decisions they made. It is too easy to complain about it for people who haven't contemplated all the parameters that went into their decisions. 2017-08-17T16:06:46Z beach: And it's boring to listen to these complaints as well, especially since nothing can be done about the problems. 2017-08-17T16:07:36Z foom: I certainly do not intend to assign blame -- I'm certain there have been good reasons for each decision, from everyone involved, which eventually necessitated the current state of affairs. 2017-08-17T16:08:01Z foom: Yet, that doesn't mean it's necessarily the optimal state now. 2017-08-17T16:09:18Z beach: The sequence functions treat lists and vectors uniformly. Any other uniform treatment of them would imply serious performance penalties, and performance was definitely high on the list of priorities for the Common Lisp creators. 2017-08-17T16:10:37Z beach: Requiring AREF to be used on a list, or a sequence of CDRs on an array would be totally unacceptable. 2017-08-17T16:11:00Z dddddd joined #lisp 2017-08-17T16:11:37Z beach: And designing a data type that would be kind-of efficient for both use cases, would require some kind of tree structure which gives a non-negligible performance penalty for both kinds of access. 2017-08-17T16:12:09Z SqREL quit (Remote host closed the connection) 2017-08-17T16:12:24Z khisanth_ joined #lisp 2017-08-17T16:12:47Z Bike: i think the extension's compromise is reasonable and doesn't impact performance measurably 2017-08-17T16:12:57Z beach: I totally agree. 2017-08-17T16:13:35Z beach: But that extension does not "treat lists and vectors generically". 2017-08-17T16:14:04Z beach: The extension works only for the sequence functions. 2017-08-17T16:15:54Z beach: It is in fact a great compromise if the sequence functions remain ordinary functions which call the generic version only when the sequence is neither a list nor a vector, which is how it is implemented in SBCL. 2017-08-17T16:15:55Z Guest51511 quit (Ping timeout: 248 seconds) 2017-08-17T16:18:09Z smazga joined #lisp 2017-08-17T16:19:57Z AlphaAtom quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-17T16:19:58Z EvW quit (Ping timeout: 276 seconds) 2017-08-17T16:20:03Z Bike: i think it would be interesting if there were better mechanisms for specifying compile time type discrimination, that it could probably be done well, and that the reason such a thing isn't in the standard is just that it would be a pretty complicated project 2017-08-17T16:20:15Z Bike: sort of like if they'd put MOP through a full standardization process, y'know 2017-08-17T16:22:29Z xxoxx joined #lisp 2017-08-17T16:22:33Z xxoxx: electronics 2017-08-17T16:22:48Z foom: I do not complain that there exist specialized functions that work only on lists or vectors (like cdr or aref), there's no issue with that. 2017-08-17T16:23:13Z foom: But, in some cases, functions that work generically on both are missing (e.g. dosequence), or functions that work on both have arbitrarily different behavior (e.g. equal). 2017-08-17T16:23:26Z beach: foom: So what was it that you wanted when you said "The only other unfortunate part is that CL itself doesn't treat lists and vectors generically."? 2017-08-17T16:24:26Z xxoxx: hello 2017-08-17T16:24:26Z beach: foom: You can easily write such a function yourself. No reason to be sad. 2017-08-17T16:24:36Z beach: Hello xxoxx. 2017-08-17T16:24:40Z CrazyEddy joined #lisp 2017-08-17T16:24:41Z Bike: equal is a little bit arbitrary. but, given the rest of the language, including eql, you can write something with different behavior 2017-08-17T16:25:24Z Bike: and it's probably not less efficient 2017-08-17T16:25:55Z foom: You also need to write your own new hashtable. 2017-08-17T16:26:02Z Bike: oh, that's true. 2017-08-17T16:26:06Z foom: Which, btw, is actually impossible. 2017-08-17T16:26:16Z Bike: sbcl has custom hash functions, which i think is nice. 2017-08-17T16:26:25Z foom: Yep. 2017-08-17T16:26:52Z AlphaAtom joined #lisp 2017-08-17T16:27:02Z Bike: i haven't implemented a hash table myself, but i don't think providing those hooks is difficult? 2017-08-17T16:27:15Z beach: But now we are going to have complaints that it is not in the standard, even though most people are happy to use languages that don't even HAVE a standard. 2017-08-17T16:29:26Z Bike: but how many of those people are in this channel? at least, i doubt anybody here would prefer there to be no lisp standard to there being a flawed standard 2017-08-17T16:32:21Z joast quit (Ping timeout: 240 seconds) 2017-08-17T16:32:32Z Bike: and there's stuff like CFFI and BT to fill in gaps, there just needs to be enough pressure for it 2017-08-17T16:32:37Z Bike: which there is not, for sequences 2017-08-17T16:32:58Z foom: Yep. As I said at the start: Most people just make do without, because that's good enough. 2017-08-17T16:33:25Z foom: I mean, regardless of any feelings of sadness, it really just is. 2017-08-17T16:34:39Z shka joined #lisp 2017-08-17T16:36:29Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-17T16:41:59Z vaporatorius joined #lisp 2017-08-17T16:41:59Z vaporatorius quit (Changing host) 2017-08-17T16:41:59Z vaporatorius joined #lisp 2017-08-17T16:42:12Z vaporatorius__ joined #lisp 2017-08-17T16:43:59Z vap1 quit (Ping timeout: 240 seconds) 2017-08-17T16:47:28Z flip214 joined #lisp 2017-08-17T16:51:27Z mathrick joined #lisp 2017-08-17T16:52:06Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-17T16:54:51Z impulse quit (Quit: leaving) 2017-08-17T16:55:12Z impulse joined #lisp 2017-08-17T16:58:33Z m00natic quit (Remote host closed the connection) 2017-08-17T16:58:35Z damke quit (Ping timeout: 240 seconds) 2017-08-17T16:59:01Z AlphaAtom quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-17T17:02:59Z EvW joined #lisp 2017-08-17T17:06:28Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-17T17:10:15Z AlphaAtom joined #lisp 2017-08-17T17:14:46Z Cthulhux quit (Changing host) 2017-08-17T17:14:46Z Cthulhux joined #lisp 2017-08-17T17:18:29Z vtomole joined #lisp 2017-08-17T17:18:34Z LiamH quit (Quit: Leaving.) 2017-08-17T17:19:51Z jackdaniel: Common Lisp is awful, but it's hard to find something less awful, so some may call it a local optimum in programming right now :-) 2017-08-17T17:20:18Z jackdaniel: seeing problems is a necessary step for fixing them I suppose 2017-08-17T17:21:28Z malice joined #lisp 2017-08-17T17:25:39Z drmeister: I'd like to put a Cando demo (chemistry + Common Lisp) on a server and let people play with it - but not allow people to run arbitrary code that could bring down the server. Common Lisp has a pretty large attack surface. 2017-08-17T17:26:23Z drmeister: beach's first class global environments would be very useful here. 2017-08-17T17:26:25Z whoman: jackdaniel, and i notice too, there *has* to be asymmetry, no matter how perfect symmetry appears 2017-08-17T17:27:08Z vlatkoB_ joined #lisp 2017-08-17T17:27:12Z whoman: drmeister, is it possible to have package scoping that denies any reference outside of it? to make a little shell sandbox 2017-08-17T17:27:15Z jackdaniel: I've recently "broke" CL sandbox with (funcall '#1=cl:eval 'foo) 2017-08-17T17:27:57Z whoman: i broke my emacs a few days ago by (unintern 'nil) somehow 2017-08-17T17:28:36Z drmeister: I might be able to use package scoping - I'll have to think on that. 2017-08-17T17:29:28Z Bike: jackdaniel: er, like the read sanitizer thing allows you to reference eval if you obfuscate it like that? 2017-08-17T17:30:52Z jackdaniel: yeah, it seems the person who wrote it didn't think about reading symbol by custom reader function 2017-08-17T17:30:59Z vlatkoB quit (Ping timeout: 240 seconds) 2017-08-17T17:31:04Z jackdaniel: s/custom/standard/ 2017-08-17T17:31:50Z jackdaniel: it was based on com.informatimago.common-lisp.lisp-reader.reader 2017-08-17T17:34:41Z dim: drmeister: there's some kind of package scoping in use at https://github.com/dimitri/pgloader/blob/master/src/utils/transforms.lisp for the same reasons as the ones you're mentioning 2017-08-17T17:34:52Z dim: the main difference is that I have my own parser for user's input 2017-08-17T17:35:05Z dim: which isn't expected to be lisp code, but may contain lisp expressions at places 2017-08-17T17:38:03Z whoman: perhaps a simple way is to iterate through all the forms and prepend "safe-symbols:" to all symbols =P 2017-08-17T17:38:39Z drmeister is rereading beach's first class global environments paper - this is the way to do it. 2017-08-17T17:39:09Z FreeBirdLjj joined #lisp 2017-08-17T17:39:13Z whoman: ^_^ 2017-08-17T17:49:27Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-17T17:57:07Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-17T17:59:15Z vaporatorius quit (Quit: Leaving) 2017-08-17T18:07:53Z FreeBirdLjj joined #lisp 2017-08-17T18:09:47Z raynold joined #lisp 2017-08-17T18:09:51Z xxoxx quit (Ping timeout: 240 seconds) 2017-08-17T18:10:49Z sz0 joined #lisp 2017-08-17T18:18:07Z galdor quit (Quit: WeeChat 1.8) 2017-08-17T18:18:09Z dcluna quit (Ping timeout: 246 seconds) 2017-08-17T18:18:53Z vtomole quit (Ping timeout: 260 seconds) 2017-08-17T18:19:31Z xxoxx joined #lisp 2017-08-17T18:19:51Z dcluna joined #lisp 2017-08-17T18:22:01Z jackdaniel: did I get this right? I'm fixing namestring parsing in ECL: https://gist.github.com/dkochmanski/e650126c39af74d1bfb201a680cc0126 2017-08-17T18:24:19Z jackdaniel: wrt quoting, so I had to write it down to lay my thoughts 2017-08-17T18:26:20Z rpg joined #lisp 2017-08-17T18:29:42Z random-nick quit (Remote host closed the connection) 2017-08-17T18:30:21Z Bock quit (Ping timeout: 240 seconds) 2017-08-17T18:33:56Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-17T18:35:31Z doesthiswork joined #lisp 2017-08-17T18:44:36Z fsmunoz joined #lisp 2017-08-17T18:47:48Z attila_lendvai joined #lisp 2017-08-17T18:47:48Z attila_lendvai quit (Changing host) 2017-08-17T18:47:48Z attila_lendvai joined #lisp 2017-08-17T18:48:51Z shka quit (Ping timeout: 240 seconds) 2017-08-17T18:51:32Z pjb: jackdaniel: and to have \ in an org-mode file, you seem to have \\ (cf. to have "" vs. to have "\"). 2017-08-17T18:51:55Z pjb: Or is it a githubgist rendering problem? 2017-08-17T18:52:57Z pjb: So: To have “" in the pathname, we’ll have to write “\\”, what is an equivalent of “\” in ordinary string. doesn't make any sense. Perhaps you should use a graphic representation of those strings with a little square per character? 2017-08-17T18:53:03Z jackdaniel: I'm not sure, here is the original snippet (without rendering: http://hellsgate.pl/files/293c1761) 2017-08-17T18:53:22Z pjb: nope, 404. 2017-08-17T18:53:31Z pjb: I can click on RAW> 2017-08-17T18:53:40Z jackdaniel: http://hellsgate.pl/files/293c1761 works for me 2017-08-17T18:53:42Z jackdaniel: without ) 2017-08-17T18:53:50Z pjb: To have "\" in the pathname, we'll have to write "\\\\", what is an equivalent of "\\" in ordinary string. 2017-08-17T18:53:56Z jackdaniel: yes 2017-08-17T18:53:58Z pjb: To have "\\" in the pathname, we'll have to write "\\\\", what is an equivalent of "\\" in ordinary string. 2017-08-17T18:54:53Z Denommus joined #lisp 2017-08-17T18:54:56Z knicklux quit (Remote host closed the connection) 2017-08-17T18:55:00Z jyc__ quit 2017-08-17T18:55:11Z pjb: jackdaniel: I think we should definitely have the same escape syntax in strings and in pathname strings, that is, what is read after #P should be a normal lisp string, then interpreted as a path. 2017-08-17T18:55:18Z jyc joined #lisp 2017-08-17T18:55:44Z test1600 quit (Quit: Leaving) 2017-08-17T18:55:53Z jackdaniel: pjb: but how do you escape #\? then, so it is not wild inferior? 2017-08-17T18:56:02Z jackdaniel: s/inferior/character/ 2017-08-17T18:56:07Z pjb: "\\?" 2017-08-17T18:56:13Z pjb: #P"\\?" ; equivalently. 2017-08-17T18:56:14Z jackdaniel: right 2017-08-17T18:56:39Z jackdaniel: and how do you represent #\\ character in pathname? 2017-08-17T18:56:52Z pjb: "\\\\" is a pathname containing only \ 2017-08-17T18:57:15Z pjb: but indeed, it's a string containing \ and \ 2017-08-17T18:57:23Z scymtym joined #lisp 2017-08-17T18:57:44Z jackdaniel: yes, that's what I've meant in this snippet, maybe I did write it in weird fashion (sorry about that, and thanks for analyzing it) 2017-08-17T18:59:36Z pjb: Yes, you just missed a \ in "\" which should be "\\" to render correctly. The examples are correct. 2017-08-17T19:00:16Z pjb: Now of course, you could go wild! :-) 2017-08-17T19:02:09Z pjb: Since the syntax for wild namestrings is implementation defined… 2017-08-17T19:02:57Z pjb: (wild-pathname-p "[wild]foo?bar*") -> T (wild-pathname-p "foo?bar*") -> NIL :-) or something strange like that 2017-08-17T19:03:50Z antoszka: pjb: does the ANSI standard mandate anything with regards to wild namestrings? 2017-08-17T19:04:00Z pjb: Not a thing. 2017-08-17T19:04:01Z antoszka: pjb: or can they be totally up to the implementor? 2017-08-17T19:04:04Z antoszka: OK. 2017-08-17T19:04:08Z pjb: It's up to the implementor. 2017-08-17T19:04:13Z antoszka: Right. 2017-08-17T19:04:18Z pjb: There's a syntax in logical pathnames, that's all. 2017-08-17T19:04:24Z antoszka: Yep. 2017-08-17T19:05:00Z pjb: wildcard-word---one or more asterisks, uppercase letters, digits, and hyphens, including at least one asterisk, with no two asterisks adjacent 2017-08-17T19:05:22Z pjb: "foo*bar" "*bar" "foo*" "foo*bar*baz" 2017-08-17T19:06:04Z pjb: Also, posix doesn't have wild paths (it's something that's implemented in shells and applications). 2017-08-17T19:06:15Z pjb: So you could specify a cl-ppcre regexp. 2017-08-17T19:06:43Z Kyo91 quit (Ping timeout: 255 seconds) 2017-08-17T19:08:18Z pjb: bash has some extended glob (shopt -s extglob) where you can use ?(…) *(…) +(…) @(…) !(…) with … being a pattern-list, patterns separated by |. 2017-08-17T19:08:22Z random-nick joined #lisp 2017-08-17T19:09:40Z pjb: So "@(foo*(bar)|bar!(quux|foo))" would match foo foobar foobarbar barf barfo barfooo (but not barfoo), etc. 2017-08-17T19:11:17Z pjb: Of course, if you wanted to use ?*+@!| in the path using those extglob, you'd have to escape them, so "+(\\(|\\))foo+(\\(|\\))" matches ((foo)) or ))foo)))) 2017-08-17T19:11:28Z neoncontrails joined #lisp 2017-08-17T19:12:35Z pjb: So I would propose using either the simple * and ? wild characters, cl-ppcre regexps, or bash extglob, since they are familiar and practical options. 2017-08-17T19:15:22Z joast joined #lisp 2017-08-17T19:17:15Z vlatkoB_ quit (Remote host closed the connection) 2017-08-17T19:18:52Z fsmunoz quit (Ping timeout: 255 seconds) 2017-08-17T19:23:38Z Kyo91 joined #lisp 2017-08-17T19:26:18Z DeadTrickster joined #lisp 2017-08-17T19:32:42Z dieggsy joined #lisp 2017-08-17T19:34:42Z FreeBirdLjj joined #lisp 2017-08-17T19:34:46Z astronavt joined #lisp 2017-08-17T19:34:47Z satran joined #lisp 2017-08-17T19:35:08Z satran quit (Client Quit) 2017-08-17T19:35:48Z flip214: loading a system that depends on :mcclim causes some of its sources to be loaded repeatedly, starting with Backends/Standard/grafts.lisp. 2017-08-17T19:36:03Z flip214: looks like some ASDF problem to me; how would I diagnose that in more detail? 2017-08-17T19:36:59Z flip214: simply adding :verbose T doesn't give more information 2017-08-17T19:37:34Z caffe quit (Ping timeout: 276 seconds) 2017-08-17T19:38:15Z flip214: ; compiling file "...src/McCLIM/Backends/Standard/grafts.lisp" (written 24 APR 2017 12:33:52 PM): 2017-08-17T19:38:24Z flip214: so it sees that the file is old 2017-08-17T19:38:24Z astronavt left #lisp 2017-08-17T19:38:37Z satran joined #lisp 2017-08-17T19:41:50Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-17T19:53:07Z DingoSaar_ joined #lisp 2017-08-17T19:54:53Z DingoSaar quit (Disconnected by services) 2017-08-17T19:55:01Z DingoSaar_ is now known as DingoSaar 2017-08-17T19:56:54Z BlueRavenGT joined #lisp 2017-08-17T19:57:34Z np356 quit (Ping timeout: 240 seconds) 2017-08-17T19:58:39Z AlphaAtom quit (Read error: Connection reset by peer) 2017-08-17T19:59:22Z AlphaAtom joined #lisp 2017-08-17T20:00:56Z Tristam joined #lisp 2017-08-17T20:01:20Z Tristam is now known as Guest64893 2017-08-17T20:01:41Z np356 joined #lisp 2017-08-17T20:02:24Z troydm quit (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) 2017-08-17T20:03:12Z Guest64893 quit (Changing host) 2017-08-17T20:03:12Z Guest64893 joined #lisp 2017-08-17T20:04:08Z Guest64893 is now known as Tristma 2017-08-17T20:05:49Z Kyo91_ joined #lisp 2017-08-17T20:05:58Z pillton joined #lisp 2017-08-17T20:07:21Z satran quit (Quit: satran) 2017-08-17T20:07:50Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-17T20:08:10Z satran joined #lisp 2017-08-17T20:08:22Z stee_3_ joined #lisp 2017-08-17T20:08:41Z AlphaAtom quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-17T20:09:40Z satran quit (Client Quit) 2017-08-17T20:12:43Z stee_3 quit (Ping timeout: 248 seconds) 2017-08-17T20:14:03Z caffe joined #lisp 2017-08-17T20:14:27Z caffe quit (Changing host) 2017-08-17T20:14:27Z caffe joined #lisp 2017-08-17T20:19:15Z doesthiswork quit (Quit: Leaving.) 2017-08-17T20:28:22Z Karl_Dscc joined #lisp 2017-08-17T20:31:11Z SquareWaveZero quit (Quit: Konversation terminated!) 2017-08-17T20:38:59Z sellout- joined #lisp 2017-08-17T20:50:04Z scymtym_ joined #lisp 2017-08-17T20:50:56Z scymtym quit (Remote host closed the connection) 2017-08-17T21:00:29Z rumbler31 quit (Ping timeout: 240 seconds) 2017-08-17T21:01:14Z dieggsy quit (Ping timeout: 240 seconds) 2017-08-17T21:02:18Z lnostdal joined #lisp 2017-08-17T21:03:38Z sellout- quit (Quit: Leaving.) 2017-08-17T21:06:03Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-17T21:09:07Z Bike quit (Ping timeout: 255 seconds) 2017-08-17T21:12:23Z EvW quit (Ping timeout: 240 seconds) 2017-08-17T21:16:36Z Kyo91_ joined #lisp 2017-08-17T21:16:54Z np356 quit (Ping timeout: 240 seconds) 2017-08-17T21:25:20Z varjag quit (Ping timeout: 240 seconds) 2017-08-17T21:30:24Z pierpa joined #lisp 2017-08-17T21:30:42Z jasom: first complete run of ql2nix results in over 3800 packages: https://paste.pound-python.org/show/XJrapdCPh9Ml58uDG2FW/ 2017-08-17T21:35:52Z rRru joined #lisp 2017-08-17T21:38:48Z Karl_Dscc quit (Remote host closed the connection) 2017-08-17T21:39:10Z FreeBirdLjj joined #lisp 2017-08-17T21:39:47Z axion: jasom: I'm not seeing any of mine. 2017-08-17T21:40:14Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-17T21:40:43Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-17T21:42:58Z np356 joined #lisp 2017-08-17T21:43:20Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-17T21:45:01Z Subfusc left #lisp 2017-08-17T21:58:50Z mishoo quit (Ping timeout: 248 seconds) 2017-08-17T21:59:12Z klltkr joined #lisp 2017-08-17T21:59:25Z xuxuru quit (Quit: xuxuru) 2017-08-17T22:08:02Z Bike joined #lisp 2017-08-17T22:11:42Z rumbler31 joined #lisp 2017-08-17T22:19:13Z angavrilov quit (Remote host closed the connection) 2017-08-17T22:21:32Z varjag joined #lisp 2017-08-17T22:21:46Z np356 quit (Ping timeout: 248 seconds) 2017-08-17T22:22:13Z random-nick quit (Remote host closed the connection) 2017-08-17T22:23:52Z funnel joined #lisp 2017-08-17T22:26:34Z varjag quit (Ping timeout: 248 seconds) 2017-08-17T22:33:41Z trinitr0n is now known as NimbyTr0n 2017-08-17T22:34:44Z kjak_ joined #lisp 2017-08-17T22:34:47Z NimbyTr0n is now known as NIMBYtr0n 2017-08-17T22:39:54Z FreeBirdLjj joined #lisp 2017-08-17T22:40:53Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-17T22:42:02Z Bike quit (Ping timeout: 248 seconds) 2017-08-17T22:43:54Z Bike joined #lisp 2017-08-17T22:44:10Z d4ryus3 quit (Ping timeout: 248 seconds) 2017-08-17T22:44:21Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-17T22:48:52Z np356 joined #lisp 2017-08-17T22:55:06Z eazar001 joined #lisp 2017-08-17T23:00:16Z Denommus quit (Ping timeout: 255 seconds) 2017-08-17T23:00:36Z smazga quit (Quit: leaving) 2017-08-17T23:04:40Z rpg joined #lisp 2017-08-17T23:05:35Z lerax joined #lisp 2017-08-17T23:07:08Z LooneyTunes joined #lisp 2017-08-17T23:07:20Z whoman: https://ia902603.us.archive.org/30/items/byte-magazine-1979-08/1979_08_BYTE_04-08_LISP.pdf 2017-08-17T23:07:43Z lerax: wow 2017-08-17T23:08:04Z ebzzry_ joined #lisp 2017-08-17T23:11:03Z eazar001 quit (Ping timeout: 240 seconds) 2017-08-17T23:11:27Z lerax left #lisp 2017-08-17T23:12:14Z knobo quit (Ping timeout: 240 seconds) 2017-08-17T23:13:47Z nowhere_man joined #lisp 2017-08-17T23:14:14Z BitPuffin|osx quit (Ping timeout: 240 seconds) 2017-08-17T23:15:03Z whoman: wonder what happened with M-exps 2017-08-17T23:16:30Z jasom: axion: give me an example system and I'll see if/why it was blacklisted 2017-08-17T23:16:50Z axion: jasom: any of the "gamebox" systems in quicklisp are mine 2017-08-17T23:17:02Z axion: and some others I don't see, but that's 5 or so to start with 2017-08-17T23:17:47Z EvW joined #lisp 2017-08-17T23:17:48Z nowhere_man quit (Remote host closed the connection) 2017-08-17T23:17:52Z jasom: axion: also I accidentally forgot to update quicklisp before running, so it was running with september of last-year QL 2017-08-17T23:17:57Z ryanwatkins joined #lisp 2017-08-17T23:18:13Z axion: That would be why :) 2017-08-17T23:18:14Z nowhere_man joined #lisp 2017-08-17T23:18:20Z aeth: whoman: I think the problem with alternate syntax to Lisp is that the various failed proposals (I think M-expressions were the first) were intended for general-purpose computation. 2017-08-17T23:18:28Z jasom: all packages tha depend on iolib are also missing because the libfixposix in nix was too old; I need to check if it's been updated now 2017-08-17T23:19:10Z aeth: whoman: Alternate syntax embedded in macros or reader macros or even strings for special cases can definitely work. For macros, see loop. For strings, see cl-ppcre. For reader macros, I'm not sure of any, but there probably are some. 2017-08-17T23:19:18Z eazar001 joined #lisp 2017-08-17T23:19:25Z aeth: whoman: What the successful ones have in common is that they're all limited in scope. 2017-08-17T23:19:38Z White_Flame: aeth: afaik, m-expressions weren't a post-sexpr alternate, s-expressions were created as an AST structure to back m-expressions 2017-08-17T23:19:58Z aeth: well, s-expressions are low level syntax 2017-08-17T23:20:13Z White_Flame: and I'm not sure if the m-expression layer ever got used 2017-08-17T23:20:20Z White_Flame: as it came after the sexpr layer was working 2017-08-17T23:21:32Z aeth: Well, I can imagine someone making a CAS-like frontend to Common Lisp for some special circumstances. Macsyma/Maxima is sort of an early case, although it probably predates CL implementations and general computers being fast enough to do the whole thing in pure CL. 2017-08-17T23:21:54Z aeth: Of course, I just do scientific computing directly in s-expressions when I need to, but I'm unusual. 2017-08-17T23:21:57Z anticrisis joined #lisp 2017-08-17T23:22:23Z White_Flame: I just want a polyglot REPL which can nest any language I care to use 2017-08-17T23:22:49Z aeth: A good alternative would be a polyglot *CL* where you can nest a rough equivalent to any language you care to use. 2017-08-17T23:23:30Z aeth: Lots of people have made Python knock-offs and JavaScript knock-offs for their platform. Not trying for a 1:1 implementation would make it easier to basically make it familiar syntax on a fast SBCL core without semantics that deviate too far from CL's speed strengths. 2017-08-17T23:23:53Z eazar001 quit (Client Quit) 2017-08-17T23:24:06Z eazar001 joined #lisp 2017-08-17T23:25:33Z aeth: One alternative to a CLR/.NET or JVM approach is just to implement languages on top of CL. Something for light scripting, something purely functional, something that is static, something that's like a CAS, something SQL-like, etc., all could coexist. CL is just about flexible enough to morph into different things. 2017-08-17T23:25:51Z np356 quit (Ping timeout: 240 seconds) 2017-08-17T23:25:51Z eazar001 quit (Client Quit) 2017-08-17T23:26:04Z eazar001 joined #lisp 2017-08-17T23:26:13Z aeth: Of course, even if you did that, there's not too much of a reason not to use s-expressions except maybe in the approachable scripting language and the CAS language. 2017-08-17T23:26:54Z aeth: (In case anyone is confused, I'm talking about computer algebra system when I say "CAS". Wikipedia has about 50,000 entries in the disambiguation page so that won't help you if you don't already know the acronym.) 2017-08-17T23:27:49Z cromachina joined #lisp 2017-08-17T23:29:13Z aeth: What would probably be doable is building a Scheme, a Python-like language, and a JS-like language all on top of a common language core, running in CL. It wouldn't be portable due to a few issues (e.g. floating point NaN/inf/etc.), but could probably be made to run on SBCL, CCL, and ECL. 2017-08-17T23:31:03Z aeth: Nesting them all in one REPL wouldn't be pretty (if they don't use s-expressions), but once you write the ability to compile strings and files to CL, you also have the ability to use reader macros to do the same thing, assuming you used a character stream approach for all three. 2017-08-17T23:31:29Z White_Flame: yeah, toggling between languages would be interesting 2017-08-17T23:31:30Z brendyn joined #lisp 2017-08-17T23:31:40Z White_Flame: I think it would be outside the string, for repl use 2017-08-17T23:31:47Z White_Flame: and abandon pure text editing for source code 2017-08-17T23:31:53Z aeth: I already have near-seemless integration between Brainfuck and CL as a proof of concept. 2017-08-17T23:32:35Z aeth: It becomes more complicated if you have a real language, though, because you'd need to add a lot more syntax and semantics, and you'd have to essentially have a clffi interface between the implemented-in-CL language and CL. 2017-08-17T23:34:41Z terpri joined #lisp 2017-08-17T23:35:19Z aeth: I suspect that CL also probably would need some extensions to be adopted by popular implementations if it suddenly became a compilation target. 2017-08-17T23:38:38Z phoe: aeth: can you call CL from inside Brainfuck? 2017-08-17T23:38:54Z aeth: phoe: no, brainfuck does not permit user-defined functions 2017-08-17T23:39:03Z aeth: and it doesn't return values 2017-08-17T23:39:14Z Bike: how am i supposed to use all my legacy lisp code from my new brainfuck system then 2017-08-17T23:39:15Z White_Flame: or pass values 2017-08-17T23:39:34Z phoe: aeth: I think you can define brainfuck subfunctions though by means of string input and output though 2017-08-17T23:39:42Z phoe: s/though// 2017-08-17T23:39:50Z aeth: possibly 2017-08-17T23:40:09Z phoe: I think it should be possible to call Lisp from inside Brainfuck 2017-08-17T23:40:14Z phoe: for full seamless interop 2017-08-17T23:40:23Z aeth: There are definitely places I could go with cl-brainfuck if I wanted to add features and revise it for 2018-04-01... or I might want to come up with something new for that event, I'm not sure. 2017-08-17T23:40:25Z White_Flame: you can always extend the langauge 2017-08-17T23:40:38Z phoe: so you can mix Brainfuck stack frames with CL ones, like CFFI does 2017-08-17T23:40:42Z phoe: or like Clasp does with C++ 2017-08-17T23:40:59Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-17T23:41:13Z aeth: CL doesn't have first class environments, does it? 2017-08-17T23:41:19Z phoe: not yet 2017-08-17T23:41:21Z White_Flame: (defun-bf q (ptr array) ...) could add the character 'q' to the language, passing in the current pointer 2017-08-17T23:41:36Z phoe: White_Flame: oh, I'd like that 2017-08-17T23:41:46Z phoe: BF and CL operating on the same data 2017-08-17T23:41:52Z Bike: no, i need the brainfuck implementation to match the ANSI BF standard 2017-08-17T23:41:58Z phoe: so I can call my favorite Lisp functions to operate on my Brainfuck arrays 2017-08-17T23:42:02Z Bike: i have a lot of programs with q's in them and they're supposed to be ignored 2017-08-17T23:42:10Z White_Flame: Bike: I'm working on raising funding for a committee 2017-08-17T23:42:19Z aeth: phoe: The lack of first class environments is probably the #1 issue for the idea of implementing many compile-to-CL (or merely interpreted-on-CL) languages and iteroperating them, afaik. 2017-08-17T23:42:30Z aeth: *interoperating 2017-08-17T23:42:32Z phoe: Bike: well, we'll need to use lesser used characters. Unicode FTW 2017-08-17T23:42:43Z phoe: aeth: I think drmeister was reading that paper though. 2017-08-17T23:42:48Z White_Flame: truly a good use case for the private use area 2017-08-17T23:43:24Z Bike: clasp might get first class environments for the sake of actually correct sandboxing 2017-08-17T23:43:33Z Bike: but it's hypothetical 2017-08-17T23:43:41Z Bike: but luckily, brainfuck does not have environments 2017-08-17T23:43:54Z safe joined #lisp 2017-08-17T23:44:00Z White_Flame: wouldn't the byte array & current pointer count as an environment? 2017-08-17T23:44:11Z phoe: He'll most likely think twice if he wants to change the world for the better if aeth goes up to him and says "hey, you've been reading on these first class environments, possibly did some work on implementing them in Clasp/Cando, can you share it with me so I can write a proper Brainfuck compiler?" 2017-08-17T23:44:29Z aeth: Bike: Yeah, but cl-brainfuck was really a test run for some approaches I could use in cl-scheme, which I will resume work on at some point. 2017-08-17T23:44:37Z Bike: i assumed 2017-08-17T23:44:51Z aeth: And environment workarounds for Scheme in CL are not fun, and will probably hurt interoperability and debugging. 2017-08-17T23:44:59Z Bike: phoe: science code gets pretty brainfucky 2017-08-17T23:45:22Z phoe: making the smallest and most efficient water filters versus Brainfuck/CL interoperability: 2017-08-17T23:45:25Z phoe: 0 : 1 2017-08-17T23:45:32Z phoe facepalms 2017-08-17T23:46:06Z phoe: #justlispthings 2017-08-17T23:46:30Z np356 joined #lisp 2017-08-17T23:46:41Z aeth: phoe: Brainfuck is actually a very useful language because it is a tiny, well-defined language. Something like cl-scheme would never actually be a complete project, so it can't actually test features that require a literally complete project. 2017-08-17T23:46:56Z pillton: ANSI BF standard? 2017-08-17T23:46:56Z aeth: cl-brainfuck could, if I put a month or so into it, be literally complete. 2017-08-17T23:47:18Z aeth: It's not every day that you have something in software that can be completed. 2017-08-17T23:47:38Z pillton: What? Nearly every piece of software I use needs to be completed. 2017-08-17T23:47:55Z Bike: pillton: how else would brainfuck users in industry work uniformly 2017-08-17T23:48:27Z np356 quit (Client Quit) 2017-08-17T23:48:52Z scymtym_ quit (Ping timeout: 255 seconds) 2017-08-17T23:48:56Z aeth: pillton: There's the difference between completing something and having something 100% complete. A very tiny language with a very tiny standard could actually be complete. Probably could even be formally proven. 2017-08-17T23:49:01Z QualityAddict joined #lisp 2017-08-17T23:49:10Z pillton: Bike: You should add first class environments to clasp. 2017-08-17T23:49:22Z aeth: I wonder if anyone has ever formally proven a Brainfuck implementation before 2017-08-17T23:49:43Z phoe: aeth: proven to? 2017-08-17T23:49:49Z Bike: already came up 2017-08-17T23:49:52Z sellout- joined #lisp 2017-08-17T23:50:06Z pillton: I'm just casting my vote. 2017-08-17T23:50:26Z aeth: phoe: Very small programs can be proven that they meet their specification. Something like a CL implementation probably cannot. 2017-08-17T23:50:45Z pillton: Bike: ...because, I'm.... important. You know how it is. 2017-08-17T23:51:11Z aeth: https://en.wikipedia.org/wiki/Correctness_(computer_science) 2017-08-17T23:51:14Z phoe: aeth: sure, but what are you proving here? 2017-08-17T23:51:21Z phoe: a Brainfuck program? Brainfuck as a language? 2017-08-17T23:51:27Z phoe: how do you prove a language? 2017-08-17T23:51:40Z kobain joined #lisp 2017-08-17T23:51:42Z aeth: Correct with respect to a specification, if it halts (obviously, the halting problem is a problem). 2017-08-17T23:52:21Z aeth: Is a Brainfuck implementation small enough to formally prove? 2017-08-17T23:52:27Z Bike: halting problem is weak, what you want is rice's theorem 2017-08-17T23:52:28Z jasom: ugh; updated nix disallows md5 as a hash for verifying URLs it fetches... time to calculate sha sums of all of quicklisp :( 2017-08-17T23:52:41Z Bike: can't prove shit about anything #woopwoop 2017-08-17T23:53:47Z aeth: Can't prove anything? http://lmgtfy.com/?q=mathematics 2017-08-17T23:54:02Z aeth: :-P 2017-08-17T23:54:26Z jasom: aeth: that assumes that your axioms are correct though 2017-08-17T23:55:37Z ebzzry_ quit (Ping timeout: 255 seconds) 2017-08-17T23:55:42Z phoe: jasom: you misspelled axion 2017-08-17T23:55:56Z jasom: phoe: I already know axion is correct 2017-08-17T23:56:02Z axion: heh 2017-08-17T23:56:18Z axion: You know how many times I get highlighted accidentally with that word? 2017-08-17T23:56:39Z pillton: It can't be more than someone? 2017-08-17T23:57:01Z pillton: Oh. That person isn't on anymore. 2017-08-17T23:57:22Z ebzzry_ joined #lisp 2017-08-17T23:58:15Z aeth: jasom: Can axioms really be incorrect, or is it more of an issue of whether or not an axiom is useful? 2017-08-17T23:59:36Z pillton: There is an example in Mark Tarver's book Logic, Proof and Computation where the proposed logic system had an incorrect axiom. 2017-08-18T00:00:12Z pillton: Which is catastrophic if your logic system contains the law of explosion. 2017-08-18T00:00:19Z aeth: Afaik, math is only wrong if there is an error in a proof, or if there's the standard philosophical skepticism arguments of e.g. you could just be dreaming, etc. But other than that, math is pretty certain, and it's really when we try to apply it when things get messy. 2017-08-18T00:01:25Z aeth: pillton: But is that kind of axiom incorrect, or does it merely make all results useless? 2017-08-18T00:01:33Z aeth: I thought axioms were given. 2017-08-18T00:02:11Z pillton: It made all proofs useless from what I remember. 2017-08-18T00:02:28Z aeth: Right, so I'm not sure if that makes the axiom incorrect or just useless. 2017-08-18T00:02:39Z aeth: Is anyone here a mathematician who can clarify? 2017-08-18T00:02:47Z jasom: aeth: it depends on the definition of "correct" 2017-08-18T00:02:54Z pillton: The connection between logic and philosophy is quite strong. 2017-08-18T00:03:17Z pillton: Some logic systems do not allow the law of explosion for example. 2017-08-18T00:03:30Z aeth: Logic, afaik, belongs to three academic disciplines. Philosophy, computer science, and mathematics. 2017-08-18T00:03:59Z pillton: I better stop speaking because I don't have the book handy. 2017-08-18T00:06:18Z jasom: aeth: people debated e.g. if the axiom of choice was correct or not, for certain definitions of "correct" 2017-08-18T00:07:51Z nowhere_man quit (Ping timeout: 240 seconds) 2017-08-18T00:09:15Z phoe: but if you chose that it's incorrect, then it means you couldn't have chosen it because of the axiom of choice is incorrect 2017-08-18T00:09:26Z rngoodn joined #lisp 2017-08-18T00:09:28Z jasom: and wikipedia says "Whether it is meaningful (and, if so, what it means) for an axiom, or any mathematical statement, to be "true" is an open question[citation needed] in the philosophy of mathematics.[5]" 2017-08-18T00:09:36Z phoe: therefore its incorrectness leads you to a contradiction, and therefore it's correct 2017-08-18T00:11:53Z aeth: jasom: If I were suddenly to find myself with a billion dollars, getting a PhD in the philosophy of mathematics is something I'd consider doing. It sounds like a very interesting field that no one outside of academia would take seriously due to its lack of practicality. 2017-08-18T00:12:39Z NIMBYtr0n is now known as COURYHOUSE 2017-08-18T00:12:43Z rRru quit (Quit: rRru) 2017-08-18T00:13:14Z phoe: aeth: don't tell me you wouldn't spend a few kilobucks to getting a working CL Brainfuck environment 2017-08-18T00:13:21Z phoe goes to sleep, it's high time 2017-08-18T00:15:39Z aeth: I think the main question is, when dealing with the foundations of mathematics, how meta can you get? 2017-08-18T00:19:25Z slyrus quit (Remote host closed the connection) 2017-08-18T00:21:37Z slyrus joined #lisp 2017-08-18T00:24:10Z kjak_ quit (Quit: leaving) 2017-08-18T00:25:58Z doesthiswork joined #lisp 2017-08-18T00:28:48Z kjak_ joined #lisp 2017-08-18T00:33:05Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-18T00:33:18Z eazar001 joined #lisp 2017-08-18T00:40:23Z jasom: well I have to eat dinner; rebuilding the releases.cdb with sha256 sum instead of md5 made quicklisp unhappy; I'll have to figure out a better way to do this later. 2017-08-18T00:41:26Z FreeBirdLjj joined #lisp 2017-08-18T00:42:54Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-18T00:44:37Z attila_lendvai joined #lisp 2017-08-18T00:44:37Z attila_lendvai quit (Changing host) 2017-08-18T00:44:37Z attila_lendvai joined #lisp 2017-08-18T00:45:51Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-18T00:47:00Z nsnc quit (Ping timeout: 260 seconds) 2017-08-18T00:49:42Z nsnc joined #lisp 2017-08-18T00:56:35Z jameser joined #lisp 2017-08-18T00:59:27Z dec0n joined #lisp 2017-08-18T01:00:00Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-18T01:05:21Z server001 quit (Ping timeout: 240 seconds) 2017-08-18T01:08:10Z dec0n quit (Ping timeout: 248 seconds) 2017-08-18T01:16:15Z DeadTrickster_ joined #lisp 2017-08-18T01:19:14Z DeadTrickster quit (Ping timeout: 240 seconds) 2017-08-18T01:19:53Z glamas joined #lisp 2017-08-18T01:24:21Z ak5 quit (Ping timeout: 240 seconds) 2017-08-18T01:24:54Z hotbobby quit (Ping timeout: 246 seconds) 2017-08-18T01:25:33Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T01:25:59Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T01:27:04Z hotbobby joined #lisp 2017-08-18T01:27:21Z ak5 joined #lisp 2017-08-18T01:30:16Z glamas quit (Remote host closed the connection) 2017-08-18T01:33:36Z glamas joined #lisp 2017-08-18T01:35:16Z rpg joined #lisp 2017-08-18T01:36:27Z marvin2 quit (Quit: quit) 2017-08-18T01:37:52Z quazimodo joined #lisp 2017-08-18T01:42:19Z FreeBirdLjj joined #lisp 2017-08-18T01:44:51Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-18T01:46:21Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-18T01:51:09Z rngoodn joined #lisp 2017-08-18T01:51:25Z rngoodn quit (Client Quit) 2017-08-18T01:58:19Z shwouchk joined #lisp 2017-08-18T01:58:29Z rumbler31 quit (Remote host closed the connection) 2017-08-18T02:03:59Z rngoodn joined #lisp 2017-08-18T02:07:55Z pierpa quit (Quit: Page closed) 2017-08-18T02:08:48Z sellout- quit (Quit: Leaving.) 2017-08-18T02:09:28Z mejja joined #lisp 2017-08-18T02:12:32Z emaczen` quit (Remote host closed the connection) 2017-08-18T02:13:01Z emaczen` joined #lisp 2017-08-18T02:13:05Z emaczen` left #lisp 2017-08-18T02:21:24Z eazar001 joined #lisp 2017-08-18T02:26:38Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-18T02:29:06Z wooden joined #lisp 2017-08-18T02:33:24Z dec0n joined #lisp 2017-08-18T02:35:20Z glamas quit (Remote host closed the connection) 2017-08-18T02:45:34Z glamas joined #lisp 2017-08-18T02:45:46Z cromachina_ joined #lisp 2017-08-18T02:46:58Z cromachina quit (Ping timeout: 240 seconds) 2017-08-18T02:50:50Z wooden quit (Ping timeout: 240 seconds) 2017-08-18T02:51:59Z wooden joined #lisp 2017-08-18T03:03:17Z chens` joined #lisp 2017-08-18T03:05:17Z procl0 quit (Quit: zZzzZz) 2017-08-18T03:05:54Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-18T03:07:29Z dddddd quit (Remote host closed the connection) 2017-08-18T03:10:01Z ebzzry_ quit (Ping timeout: 255 seconds) 2017-08-18T03:14:00Z shka joined #lisp 2017-08-18T03:17:47Z damke joined #lisp 2017-08-18T03:19:53Z neoncontrails quit (Remote host closed the connection) 2017-08-18T03:22:58Z Bike quit (Ping timeout: 240 seconds) 2017-08-18T03:23:54Z neoncontrails joined #lisp 2017-08-18T03:24:15Z schoppenhauer quit (Ping timeout: 264 seconds) 2017-08-18T03:26:02Z schoppenhauer joined #lisp 2017-08-18T03:30:44Z glamas quit (Remote host closed the connection) 2017-08-18T03:31:03Z damke_ joined #lisp 2017-08-18T03:33:25Z whoman: aeth, White_Flame, ahh, i see =) 2017-08-18T03:34:34Z damke quit (Ping timeout: 240 seconds) 2017-08-18T03:35:17Z ebzzry_ joined #lisp 2017-08-18T03:35:26Z whoman: aeth, White_Flame, ahh, i see =) also, interesting ideas. racket does some way to handle multiple 'languages' 2017-08-18T03:38:04Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T03:39:55Z wooden quit (Read error: Connection reset by peer) 2017-08-18T03:41:53Z glamas joined #lisp 2017-08-18T03:43:26Z safe quit (Read error: Connection reset by peer) 2017-08-18T03:44:44Z test1600 joined #lisp 2017-08-18T03:46:20Z wooden joined #lisp 2017-08-18T03:51:16Z abel-abel joined #lisp 2017-08-18T04:01:48Z damke joined #lisp 2017-08-18T04:02:54Z damke_ quit (Ping timeout: 240 seconds) 2017-08-18T04:04:14Z damke_ joined #lisp 2017-08-18T04:06:34Z damke quit (Ping timeout: 240 seconds) 2017-08-18T04:06:50Z wooden quit (Read error: Connection reset by peer) 2017-08-18T04:08:39Z rjeli quit (Ping timeout: 264 seconds) 2017-08-18T04:09:05Z aeth: whoman: Racket is probably the closest to something like this 2017-08-18T04:09:12Z aeth: or, I think, Perl 6 2017-08-18T04:09:34Z aeth: Good ideas do not exist in isolation. 2017-08-18T04:10:19Z aeth: (Alternatively, there may be many considerably better ideas, but we're all stuck thinking in the current trends.) 2017-08-18T04:10:42Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-18T04:11:13Z wooden joined #lisp 2017-08-18T04:17:37Z akkad: Gerbil for scheme can do that as well 2017-08-18T04:19:54Z whoman: hm =) 2017-08-18T04:21:24Z glamas quit (Remote host closed the connection) 2017-08-18T04:25:12Z glamas joined #lisp 2017-08-18T04:26:34Z xxoxx quit (Ping timeout: 240 seconds) 2017-08-18T04:28:13Z xxoxx joined #lisp 2017-08-18T04:30:37Z glamas quit (Remote host closed the connection) 2017-08-18T04:34:15Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T04:35:26Z jasom: hmm quicklisp generates a database from a text file, but it also sometimes reads directly from the text file. 2017-08-18T04:37:59Z rngoodn joined #lisp 2017-08-18T04:40:42Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T04:43:28Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-18T04:46:43Z LooneyTunes quit (Remote host closed the connection) 2017-08-18T04:47:11Z LooneyTunes joined #lisp 2017-08-18T04:48:19Z PinealGlandOptic joined #lisp 2017-08-18T04:52:58Z rjeli joined #lisp 2017-08-18T04:53:23Z knobo joined #lisp 2017-08-18T05:05:11Z flip214: aeth: see "Odysseus of Ithaka" by Stanislav Lem ;) 2017-08-18T05:05:28Z BlueRavenGT quit (Ping timeout: 240 seconds) 2017-08-18T05:08:35Z drmeister: Is gitlab.common-lisp.net a standard common lisp repository? I'm trying to pull asdf but it seems to be down. 2017-08-18T05:09:10Z mejja quit (Quit: \ No newline at end of file) 2017-08-18T05:19:54Z oleo quit (Quit: irc client terminated!) 2017-08-18T05:28:32Z eazar001 joined #lisp 2017-08-18T05:31:14Z doesthiswork quit (Quit: Leaving.) 2017-08-18T05:34:05Z slyrus quit (Remote host closed the connection) 2017-08-18T05:34:15Z whoman: anyone having any difficulties compiling current cl-async ? 2017-08-18T05:36:18Z slyrus joined #lisp 2017-08-18T05:43:02Z slyrus quit (Remote host closed the connection) 2017-08-18T05:43:33Z beach: Good morning everyone! 2017-08-18T05:44:22Z Karl_Dscc joined #lisp 2017-08-18T05:46:20Z ak5 quit (Ping timeout: 240 seconds) 2017-08-18T05:46:53Z jasom: good morning beach 2017-08-18T05:50:20Z xxoxx quit (Ping timeout: 240 seconds) 2017-08-18T05:53:58Z whoman: hi! 2017-08-18T05:54:48Z payphone joined #lisp 2017-08-18T05:55:40Z Bock joined #lisp 2017-08-18T05:56:58Z neoncontrails quit (Remote host closed the connection) 2017-08-18T05:57:17Z neoncontrails joined #lisp 2017-08-18T05:57:53Z H4ns joined #lisp 2017-08-18T06:00:51Z glamas joined #lisp 2017-08-18T06:02:34Z knobo quit (Ping timeout: 240 seconds) 2017-08-18T06:02:46Z mishoo joined #lisp 2017-08-18T06:03:30Z EvW quit (Ping timeout: 246 seconds) 2017-08-18T06:04:48Z satran joined #lisp 2017-08-18T06:08:10Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T06:09:36Z xxoxx joined #lisp 2017-08-18T06:13:58Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-18T06:20:37Z Karl_Dscc quit (Remote host closed the connection) 2017-08-18T06:21:09Z ak5 joined #lisp 2017-08-18T06:27:28Z PinealGlandOptic quit (Ping timeout: 240 seconds) 2017-08-18T06:28:37Z schweers joined #lisp 2017-08-18T06:29:31Z damke joined #lisp 2017-08-18T06:30:50Z anticrisis joined #lisp 2017-08-18T06:31:03Z eazar001 quit (Ping timeout: 240 seconds) 2017-08-18T06:32:14Z damke_ quit (Ping timeout: 240 seconds) 2017-08-18T06:33:38Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T06:35:12Z muzik is now known as muzik_ 2017-08-18T06:36:53Z jameser joined #lisp 2017-08-18T06:37:34Z neoncontrails quit (Remote host closed the connection) 2017-08-18T06:38:50Z Tordek joined #lisp 2017-08-18T06:40:44Z muzik_ is now known as muzik 2017-08-18T06:41:19Z muzik is now known as muzik_ 2017-08-18T06:44:10Z DeadTrickster_ quit (Ping timeout: 248 seconds) 2017-08-18T06:44:38Z angavrilov joined #lisp 2017-08-18T07:00:39Z muzik_ is now known as muzik 2017-08-18T07:02:00Z damke_ joined #lisp 2017-08-18T07:03:34Z damke quit (Ping timeout: 240 seconds) 2017-08-18T07:10:54Z damke_ quit (Ping timeout: 240 seconds) 2017-08-18T07:12:20Z shka quit (Ping timeout: 240 seconds) 2017-08-18T07:12:21Z damke_ joined #lisp 2017-08-18T07:13:31Z jasom: ah, lparallel is wonderful. I added parallelization to something I had never designed to be parallel in about 30 minutes. 2017-08-18T07:16:36Z xxoxx quit (Ping timeout: 255 seconds) 2017-08-18T07:16:39Z abel-abel quit (Remote host closed the connection) 2017-08-18T07:25:00Z tgips joined #lisp 2017-08-18T07:26:54Z daemoz quit (Remote host closed the connection) 2017-08-18T07:27:12Z daemoz joined #lisp 2017-08-18T07:28:03Z LooneyTunes quit (Ping timeout: 240 seconds) 2017-08-18T07:38:51Z tgips left #lisp 2017-08-18T07:42:50Z ebzzry_ quit (Ping timeout: 248 seconds) 2017-08-18T07:43:12Z PinealGlandOptic joined #lisp 2017-08-18T07:47:45Z shwouchk quit (Quit: Connection closed for inactivity) 2017-08-18T07:47:51Z spacepluk joined #lisp 2017-08-18T07:52:09Z quazimodo joined #lisp 2017-08-18T08:03:23Z devon joined #lisp 2017-08-18T08:03:28Z _cosmonaut_ joined #lisp 2017-08-18T08:05:36Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T08:06:06Z jameser joined #lisp 2017-08-18T08:12:55Z random-nick joined #lisp 2017-08-18T08:18:37Z knobo joined #lisp 2017-08-18T08:23:45Z kolko quit (Read error: Connection reset by peer) 2017-08-18T08:23:46Z muzik quit (Read error: Connection reset by peer) 2017-08-18T08:24:07Z kolko joined #lisp 2017-08-18T08:25:06Z test1600 quit (Quit: Leaving) 2017-08-18T08:32:12Z chens` quit (Remote host closed the connection) 2017-08-18T08:34:05Z arduo joined #lisp 2017-08-18T08:40:10Z edgar-rft joined #lisp 2017-08-18T08:40:21Z devon: What's your favorite QL-able omni-platform GUI platform and why? 2017-08-18T08:41:23Z jackdaniel: mcclim, because I work on it ;) working with LTK was a pleasent experience too 2017-08-18T08:42:35Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T08:43:55Z jameser joined #lisp 2017-08-18T08:44:10Z lnostdal quit (Ping timeout: 248 seconds) 2017-08-18T08:44:56Z glamas quit (Remote host closed the connection) 2017-08-18T08:46:32Z beach: devon: McCLIM is actively being worked on. We hang out in #clim in case you need help, or in case you feel like contributing. 2017-08-18T08:48:05Z glamas joined #lisp 2017-08-18T08:51:51Z Ven joined #lisp 2017-08-18T08:52:14Z Ven is now known as Guest37379 2017-08-18T08:57:32Z lnostdal joined #lisp 2017-08-18T08:59:36Z quazimodo quit (Read error: Connection reset by peer) 2017-08-18T09:01:56Z quazimodo joined #lisp 2017-08-18T09:05:11Z yaewa joined #lisp 2017-08-18T09:06:51Z moei quit (Ping timeout: 264 seconds) 2017-08-18T09:10:49Z schweers: is mcclim really omni-platform (I like the term)? I tried it on windows once because that was what I had running as I stumbled on it, and the demo didn’t work. Was my lisp environment somehow misconfigured (which might very well be the case) or is this a general known issue? 2017-08-18T09:11:05Z schweers: I should add that I never tried it on linux so far 2017-08-18T09:11:29Z beach: We don't have a Windows backend yet. 2017-08-18T09:11:53Z beach: But, as I recall, there is a bounty posted for finishing it in case you need the money. 2017-08-18T09:12:00Z schweers: lol, no thanks 2017-08-18T09:12:08Z schweers: I understand why there is no windows backend 2017-08-18T09:12:45Z jackdaniel: actually there is, but it is alpha quality 2017-08-18T09:12:58Z jackdaniel: bounty is for bringing it to meta and merging with main repository 2017-08-18T09:13:36Z jackdaniel: running on windows is also possible with running Xserver there (not that it's appealing, just saying its possible) 2017-08-18T09:13:49Z jackdaniel: Linux is best supported platform atm 2017-08-18T09:14:11Z jackdaniel: there is $500 bounty for windows backend, and $400 for fixing beagle (OSX) backend which is somewhat broken 2017-08-18T09:15:01Z schweers: I’m running the demo on linux right now 2017-08-18T09:15:44Z schweers: hm. has problems with my keyboard layout :/ 2017-08-18T09:16:03Z beach: schweers: Speaking of which, these days I never :USE packages other than the COMMON-LISP package. I use explicit package prefixes for the others. It is much more clear where symbols come from that way, and there is less risk that my software will break when those packages are updated. 2017-08-18T09:16:40Z jackdaniel: hm, in case of CLIM applications you are encouraged to :use CLIM-LISP package :-) 2017-08-18T09:16:50Z beach: Right, that one too. 2017-08-18T09:17:33Z jackdaniel: schweers: yes, keyboard layout other than us not working is known issue. someone works on that 2017-08-18T09:17:47Z schweers: oh 2017-08-18T09:17:54Z schweers: the letters worked alright 2017-08-18T09:18:00Z jackdaniel: see https://github.com/robert-strandh/McCLIM/issues/35 2017-08-18T09:18:04Z schweers: but using modifiers other than shift did not 2017-08-18T09:18:39Z schweers: how come there are bounties? who pays for them? 2017-08-18T09:19:01Z beach: Nice people. 2017-08-18T09:19:15Z jackdaniel: we have started crowdfunding compaign some time ago 2017-08-18T09:19:28Z schweers: ah, okay 2017-08-18T09:19:42Z jackdaniel: we have some constant contributors (who pay monthly around $280) for project development 2017-08-18T09:19:55Z jackdaniel: so each month we create new bounties to attract contributors 2017-08-18T09:20:00Z jackdaniel: and fix issues of course 2017-08-18T09:20:06Z schweers: how is that working out so far? 2017-08-18T09:20:12Z schweers: seems like an interesing model 2017-08-18T09:20:22Z jackdaniel: works pretty well, see for yourself 2017-08-18T09:20:34Z jackdaniel: https://www.bountysource.com/teams/mcclim/bounties 2017-08-18T09:21:18Z jackdaniel: I try to send iteration reports each month (usually its more like 40-50 days between reports) 2017-08-18T09:21:33Z jackdaniel: with some summary of the progress, you may check out mcclim blog 2017-08-18T09:21:45Z jackdaniel: (they got propagated to planet lisp) 2017-08-18T09:21:50Z jackdaniel: s/got/get/ 2017-08-18T09:22:03Z schweers: so, if I’m particularly interested in seeing something fixed I can add my own money to a bounty? 2017-08-18T09:22:08Z jackdaniel: yes 2017-08-18T09:22:11Z schweers: ohhh 2017-08-18T09:23:02Z jackdaniel: or you may contribute to McCLIM project itself (https://salt.bountysource.com/teams/mcclim) 2017-08-18T09:23:51Z jackdaniel: that model proves to be working just fine, we have a steady progress (albeit some may perceive as slow progress) 2017-08-18T09:24:05Z jackdaniel: s/preceive/perceive it/ 2017-08-18T09:24:49Z schweers: I think I’ve never seen something like this before 2017-08-18T09:30:29Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-18T09:31:01Z jackdaniel: :-) 2017-08-18T09:34:14Z damke_ quit (Ping timeout: 240 seconds) 2017-08-18T09:34:58Z beach: I have been thinking of crowdfunding SICL as well, but then, I am reminded that the main problem is not money, but qualified contributors with time on their hands. 2017-08-18T09:35:31Z schweers: and energy 2017-08-18T09:35:43Z beach: Sure, yes. 2017-08-18T09:35:44Z damke_ joined #lisp 2017-08-18T09:50:27Z BitPuffin|osx joined #lisp 2017-08-18T09:50:57Z knobo quit (Ping timeout: 255 seconds) 2017-08-18T09:51:54Z glamas quit (Ping timeout: 248 seconds) 2017-08-18T09:52:41Z glamas joined #lisp 2017-08-18T09:53:34Z Guest37379 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T09:56:18Z jameser quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-18T09:56:45Z arduo quit (Remote host closed the connection) 2017-08-18T10:00:05Z glamas quit (Remote host closed the connection) 2017-08-18T10:17:54Z knobo joined #lisp 2017-08-18T10:20:30Z m00natic joined #lisp 2017-08-18T10:27:58Z lnostdal quit (Ping timeout: 240 seconds) 2017-08-18T10:28:00Z test1600 joined #lisp 2017-08-18T10:30:15Z varjag joined #lisp 2017-08-18T10:30:19Z ak5 quit (Ping timeout: 240 seconds) 2017-08-18T10:42:36Z lnostdal joined #lisp 2017-08-18T10:42:37Z quazimodo quit (Read error: Connection reset by peer) 2017-08-18T10:42:46Z test1600 quit (Quit: Leaving) 2017-08-18T10:42:54Z quazimodo joined #lisp 2017-08-18T10:52:19Z devon quit (Ping timeout: 240 seconds) 2017-08-18T11:01:05Z damke joined #lisp 2017-08-18T11:02:54Z damke_ quit (Ping timeout: 240 seconds) 2017-08-18T11:08:51Z ak5 joined #lisp 2017-08-18T11:14:22Z vlatkoB joined #lisp 2017-08-18T11:21:31Z marvin2 joined #lisp 2017-08-18T11:25:49Z whoman quit (Ping timeout: 240 seconds) 2017-08-18T11:25:58Z yaewa quit (Quit: Leaving...) 2017-08-18T11:26:20Z moei joined #lisp 2017-08-18T11:35:32Z attila_lendvai joined #lisp 2017-08-18T11:36:37Z Bike joined #lisp 2017-08-18T11:37:50Z defaultxr quit (Ping timeout: 240 seconds) 2017-08-18T11:41:54Z jameser joined #lisp 2017-08-18T11:44:36Z d4ryus3 joined #lisp 2017-08-18T11:45:49Z sellout- joined #lisp 2017-08-18T11:48:58Z knobo quit (Ping timeout: 240 seconds) 2017-08-18T11:50:09Z nsrahmad joined #lisp 2017-08-18T11:54:16Z gigetoo joined #lisp 2017-08-18T11:57:42Z damke_ joined #lisp 2017-08-18T12:00:10Z rpg joined #lisp 2017-08-18T12:00:13Z damke quit (Ping timeout: 240 seconds) 2017-08-18T12:02:10Z m00natic quit (Read error: Connection reset by peer) 2017-08-18T12:02:24Z m00natic joined #lisp 2017-08-18T12:06:23Z nsrahmad quit (Ping timeout: 240 seconds) 2017-08-18T12:11:18Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T12:14:37Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T12:15:19Z Bike quit (Ping timeout: 240 seconds) 2017-08-18T12:15:50Z varjag quit (Ping timeout: 240 seconds) 2017-08-18T12:16:14Z scymtym joined #lisp 2017-08-18T12:19:26Z knobo joined #lisp 2017-08-18T12:20:07Z raynold quit (Quit: Connection closed for inactivity) 2017-08-18T12:33:37Z damke joined #lisp 2017-08-18T12:33:45Z knobo quit (Ping timeout: 246 seconds) 2017-08-18T12:34:31Z shka_: hello 2017-08-18T12:34:34Z damke_ quit (Ping timeout: 240 seconds) 2017-08-18T12:34:52Z shka_: how can i check what cipher / encryption is used by drakma? 2017-08-18T12:37:58Z Murii joined #lisp 2017-08-18T12:38:01Z jameser joined #lisp 2017-08-18T12:39:16Z PinealGlandOptic quit (Quit: leaving) 2017-08-18T12:41:07Z jameser quit (Client Quit) 2017-08-18T12:43:14Z quazimodo quit (Read error: Connection reset by peer) 2017-08-18T12:43:31Z quazimodo joined #lisp 2017-08-18T12:54:06Z jameser joined #lisp 2017-08-18T12:55:20Z sellout- quit (Quit: Leaving.) 2017-08-18T12:58:32Z Bike joined #lisp 2017-08-18T13:00:06Z X-Scale joined #lisp 2017-08-18T13:00:27Z doesthiswork joined #lisp 2017-08-18T13:03:51Z damke quit (Ping timeout: 246 seconds) 2017-08-18T13:05:55Z rumbler31 joined #lisp 2017-08-18T13:08:05Z FreeBirdLjj joined #lisp 2017-08-18T13:08:41Z damke joined #lisp 2017-08-18T13:09:23Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T13:09:54Z X-Scale left #lisp 2017-08-18T13:11:15Z cromachina_ quit (Quit: Leaving) 2017-08-18T13:11:39Z jameser joined #lisp 2017-08-18T13:11:50Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2017-08-18T13:12:26Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-18T13:19:32Z ryan_vw joined #lisp 2017-08-18T13:25:51Z damke_ joined #lisp 2017-08-18T13:27:39Z damke quit (Ping timeout: 246 seconds) 2017-08-18T13:28:03Z _cosmonaut_ joined #lisp 2017-08-18T13:39:56Z LiamH joined #lisp 2017-08-18T13:42:06Z oleo joined #lisp 2017-08-18T13:43:03Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T13:44:10Z dddddd joined #lisp 2017-08-18T13:49:41Z xxoxx joined #lisp 2017-08-18T13:52:46Z Kyo91_ joined #lisp 2017-08-18T13:56:55Z akkad: use the grep 2017-08-18T13:57:21Z nsrahmad joined #lisp 2017-08-18T14:01:58Z wooden quit (Ping timeout: 240 seconds) 2017-08-18T14:02:00Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-18T14:02:47Z dec0n quit (Read error: Connection reset by peer) 2017-08-18T14:02:52Z doesthiswork quit (Quit: Leaving.) 2017-08-18T14:08:15Z sellout- joined #lisp 2017-08-18T14:09:40Z EvW1 joined #lisp 2017-08-18T14:11:51Z dddddd_ joined #lisp 2017-08-18T14:11:58Z dddddd quit (Ping timeout: 240 seconds) 2017-08-18T14:15:45Z paul0 joined #lisp 2017-08-18T14:20:12Z wooden joined #lisp 2017-08-18T14:20:46Z nsrahmad quit (Quit: Leaving) 2017-08-18T14:23:52Z nimiux joined #lisp 2017-08-18T14:29:18Z warweasle joined #lisp 2017-08-18T14:32:02Z felipedvorak quit (Ping timeout: 240 seconds) 2017-08-18T14:33:46Z shka_: akkad: not very helpfull 2017-08-18T14:33:47Z shka_: anyway 2017-08-18T14:34:15Z shka_: make-ssl-stream in drakma has nil certificate 2017-08-18T14:34:49Z quazimodo quit (Ping timeout: 246 seconds) 2017-08-18T14:34:59Z shka_: always 2017-08-18T14:35:04Z shka_: not sure what it's purpose is 2017-08-18T14:35:27Z alandipert: is there an idiom for doing something like `case` with with a string key form? 2017-08-18T14:35:28Z _cosmonaut_ quit (Remote host closed the connection) 2017-08-18T14:35:44Z fiddlerwoaroof: alandipert: there's a string-case package 2017-08-18T14:36:27Z shka_: ah, right, now i get it 2017-08-18T14:37:12Z phoe: alandipert: ALEXANDRIA:SWITCH 2017-08-18T14:37:33Z alandipert: thanks all, was hoping for a non-library option, but i'll investigate these 2017-08-18T14:37:58Z whoman joined #lisp 2017-08-18T14:39:52Z fiddlerwoaroof: You could also just use something like a hash-table of callbacks 2017-08-18T14:40:10Z al-damiri joined #lisp 2017-08-18T14:44:29Z jackdaniel: alandipert: alexandria is public domain library with no dependencies, you may just copy `switch' from it 2017-08-18T14:44:55Z sellout- quit (Quit: Leaving.) 2017-08-18T14:45:06Z felipedvorak joined #lisp 2017-08-18T14:53:33Z shka_: ha 2017-08-18T14:54:24Z shka_: ok, so there is no http client that performs correct verification of certs 2017-08-18T14:54:28Z shka_: thats just sad 2017-08-18T14:54:48Z fiddlerwoaroof: I think Xach may have fixed this? 2017-08-18T14:55:02Z fiddlerwoaroof: I remember him talking about this a while ago in relation to quicklisp 2017-08-18T14:56:30Z shka_: fiddlerwoaroof: what package? 2017-08-18T14:56:30Z knobo joined #lisp 2017-08-18T14:56:47Z fiddlerwoaroof: I don't remember, I thought he was going to fix drakma 2017-08-18T14:57:07Z antoszka: hasn't quicklisp got its own simple build-in http client? 2017-08-18T14:57:17Z shka_: well, drakma just warns me 2017-08-18T14:57:23Z antoszka: or tar :) can't remember, there was something built-in :) 2017-08-18T14:57:55Z fiddlerwoaroof: I guess that wouldn't make sense, though, because you have to ql drakma anyways... 2017-08-18T14:58:13Z shka_: i'm using dramka 2.0.2 2017-08-18T14:58:23Z shka_: perhaps 2.0.3 is corrected 2017-08-18T14:59:37Z shka_: well, warning is still there 2017-08-18T14:59:51Z shka_: but at the same time SSL verify error: 20 X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY 2017-08-18T14:59:56Z shka_: is signalled 2017-08-18T15:00:11Z shka_: ok, whatever 2017-08-18T15:00:27Z shka_: i don't get it 2017-08-18T15:00:41Z sellout- joined #lisp 2017-08-18T15:00:47Z JuanDaugherty joined #lisp 2017-08-18T15:01:18Z xxoxx quit (Remote host closed the connection) 2017-08-18T15:01:22Z schweers quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-18T15:01:46Z xxoxx joined #lisp 2017-08-18T15:01:56Z rumbler31 joined #lisp 2017-08-18T15:02:03Z shka_: Support all :VERIFY options with cl+ssl. 2017-08-18T15:02:07Z shka_: oooookej 2017-08-18T15:02:21Z shka_: that's the last commit in drakma 2017-08-18T15:04:17Z antoszka: cool 2017-08-18T15:05:45Z shka_: yeah, but it won't work here 2017-08-18T15:05:52Z shka_: and i don't know why 2017-08-18T15:06:54Z shka_: it fails to verify google.com 2017-08-18T15:06:59Z shka_: it will signal error 2017-08-18T15:07:07Z shka_: and there is no test case for it 2017-08-18T15:07:25Z papachan joined #lisp 2017-08-18T15:08:35Z rngoodn joined #lisp 2017-08-18T15:10:54Z Denommus joined #lisp 2017-08-18T15:17:14Z rumbler31 quit (Ping timeout: 248 seconds) 2017-08-18T15:17:22Z jasom: I got a super-linear speedup by parallelizing my program (by converting to work-queues I was able to batch up doing some work that I had been doing incrementally before, which turned out to be a big win performance-wise) 2017-08-18T15:19:28Z drmeister: Clasp is hanging while trying to connect to the Slime port 50965 - did that change? I thought it was port 4005? 2017-08-18T15:19:49Z jasom: drmeister: the port is random if you launch it within emacs IIRC 2017-08-18T15:24:09Z rpg joined #lisp 2017-08-18T15:24:58Z zaoqi joined #lisp 2017-08-18T15:26:24Z Karl_Dscc joined #lisp 2017-08-18T15:27:49Z neoncontrails joined #lisp 2017-08-18T15:27:55Z reu joined #lisp 2017-08-18T15:32:04Z d4ryus3 quit (Quit: WeeChat 1.9) 2017-08-18T15:32:35Z zaoqi quit (Quit: zaoqi) 2017-08-18T15:33:24Z zaoqi joined #lisp 2017-08-18T15:34:57Z zaoqi quit (Client Quit) 2017-08-18T15:35:07Z d4ryus joined #lisp 2017-08-18T15:35:44Z zaoqi joined #lisp 2017-08-18T15:36:07Z Lowl3v3l joined #lisp 2017-08-18T15:36:56Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-08-18T15:39:30Z zaoqi quit (Client Quit) 2017-08-18T15:40:10Z zaoqi joined #lisp 2017-08-18T15:40:41Z reu quit (Quit: Changing server) 2017-08-18T15:42:41Z raynold joined #lisp 2017-08-18T15:44:38Z DingoSaar quit (Remote host closed the connection) 2017-08-18T15:46:24Z DingoSaar joined #lisp 2017-08-18T15:48:03Z varjag joined #lisp 2017-08-18T15:48:11Z alandipert: for the string case thing, made my own macro. i'm a CL noob so thanks in advance for style/function feedback: https://gist.github.com/99e96112110b24d0861852ffe4bf4c7d 2017-08-18T15:49:36Z Bike: you can just use cond, and probably avoid the labels deal 2017-08-18T15:49:48Z Bike: also, there's a string-case in quicklisp that does some optimization 2017-08-18T15:50:48Z nowhere_man joined #lisp 2017-08-18T15:53:57Z brendyn quit (Ping timeout: 240 seconds) 2017-08-18T15:54:23Z alandipert: Bike by use cond, do you mean map over the clauses and transform to cond clauses? if so, +1 2017-08-18T15:56:03Z shka_ quit (Quit: Konversation terminated!) 2017-08-18T15:56:37Z nsrahmad joined #lisp 2017-08-18T15:57:54Z zaoqi quit (Remote host closed the connection) 2017-08-18T15:59:28Z reu joined #lisp 2017-08-18T16:02:20Z pcell joined #lisp 2017-08-18T16:09:18Z ak5 quit (Ping timeout: 240 seconds) 2017-08-18T16:12:05Z rumbler31 joined #lisp 2017-08-18T16:14:40Z ebzzry_ joined #lisp 2017-08-18T16:15:58Z EvW1 quit (Ping timeout: 246 seconds) 2017-08-18T16:23:14Z ak5 joined #lisp 2017-08-18T16:27:38Z FreeBirdLjj joined #lisp 2017-08-18T16:27:48Z khisanth_ is now known as Khisanth 2017-08-18T16:30:58Z jasom: alandipert: I usually just use COND with STRING= without a macro. Also, if there are a very large number of strings, you may get a performance boost by interning the string into an otherwise unsed package and then just using case 2017-08-18T16:33:11Z damke joined #lisp 2017-08-18T16:33:50Z nsrahmad quit (Quit: Leaving) 2017-08-18T16:34:15Z rumbler31 quit (Remote host closed the connection) 2017-08-18T16:34:52Z rumbler31 joined #lisp 2017-08-18T16:34:55Z aeth: jasom: lparallel appears to be written correctly, too, just based on a quick glance of common mistakes that CL library authors make. 2017-08-18T16:35:53Z damke_ quit (Ping timeout: 240 seconds) 2017-08-18T16:35:59Z aeth: e.g. it has both queue types (vector and cons) 2017-08-18T16:36:12Z ak5 quit (Read error: Connection reset by peer) 2017-08-18T16:36:37Z jasom: aeth: my only wishlist I have is that it's blocking-calls would let other tasks be scheduled on the worker threads. Of course implementing that would be challenging. 2017-08-18T16:37:01Z damke_ joined #lisp 2017-08-18T16:37:46Z jasom: s/it's/its 2017-08-18T16:38:26Z alandipert: jasom thanks 2017-08-18T16:39:13Z damke quit (Ping timeout: 240 seconds) 2017-08-18T16:39:40Z jasom: e.g. right now (submit-task c 'force p) (submit-task c 'force p) (submit-task c 'fulfil p 1) will succeed with 3 or more worker threads and deadlock with 2 or fewer. 2017-08-18T16:40:18Z ak5 joined #lisp 2017-08-18T16:41:41Z jasom: a half-assed implementation of that is possible; you could run another task to completion if you are blocked and there are more tasks pending, but arbitrary scheduling can't be done that way. 2017-08-18T16:44:11Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T16:45:42Z ak5 quit (Read error: Connection reset by peer) 2017-08-18T16:54:29Z scymtym quit (Ping timeout: 246 seconds) 2017-08-18T16:54:53Z sellout- quit (Quit: Leaving.) 2017-08-18T16:55:03Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-18T16:57:46Z m00natic quit (Remote host closed the connection) 2017-08-18T16:58:42Z FreeBirdLjj joined #lisp 2017-08-18T17:01:38Z knicklux joined #lisp 2017-08-18T17:03:53Z damke_ quit (Ping timeout: 240 seconds) 2017-08-18T17:04:57Z aeth: jasom: btw, have you profiled lparallel? 2017-08-18T17:06:17Z damke_ joined #lisp 2017-08-18T17:20:21Z BlueRavenGT joined #lisp 2017-08-18T17:24:30Z Guest6344 joined #lisp 2017-08-18T17:24:43Z BlueRavenGT quit (Remote host closed the connection) 2017-08-18T17:25:57Z dddddd_ quit (Ping timeout: 240 seconds) 2017-08-18T17:26:29Z EvW joined #lisp 2017-08-18T17:26:47Z hlavaty joined #lisp 2017-08-18T17:27:45Z klltkr joined #lisp 2017-08-18T17:28:12Z klltkr quit (Client Quit) 2017-08-18T17:29:13Z damke_ quit (Ping timeout: 240 seconds) 2017-08-18T17:30:50Z vlatkoB quit (Ping timeout: 240 seconds) 2017-08-18T17:31:11Z jasom: aeth: I have not. 2017-08-18T17:31:48Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-18T17:32:38Z vlatkoB joined #lisp 2017-08-18T17:32:43Z hlavaty quit (Remote host closed the connection) 2017-08-18T17:36:46Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T17:39:14Z dddddd_ joined #lisp 2017-08-18T17:43:47Z slyrus joined #lisp 2017-08-18T17:44:53Z paul0 quit (Read error: Connection reset by peer) 2017-08-18T17:45:03Z rngoodn joined #lisp 2017-08-18T17:46:20Z rpg joined #lisp 2017-08-18T17:47:51Z random-nick quit (Remote host closed the connection) 2017-08-18T17:48:09Z paul0 joined #lisp 2017-08-18T17:48:21Z Guest6344 quit (Ping timeout: 246 seconds) 2017-08-18T17:49:49Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-18T18:06:53Z QualityAddict quit (Ping timeout: 240 seconds) 2017-08-18T18:07:30Z QualityAddict joined #lisp 2017-08-18T18:09:08Z dddddd_ quit (Quit: Hasta otra..) 2017-08-18T18:09:29Z dddddd_ joined #lisp 2017-08-18T18:09:32Z nowhere_man quit (Ping timeout: 276 seconds) 2017-08-18T18:09:34Z dddddd_ is now known as dddddd 2017-08-18T18:11:11Z neoncontrails quit (Remote host closed the connection) 2017-08-18T18:14:11Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-18T18:20:59Z random-nick joined #lisp 2017-08-18T18:23:21Z QualityAddict quit (Remote host closed the connection) 2017-08-18T18:24:43Z slyrus quit (Remote host closed the connection) 2017-08-18T18:24:59Z QualityAddict joined #lisp 2017-08-18T18:26:30Z Achylles joined #lisp 2017-08-18T18:29:43Z satran quit (Quit: satran) 2017-08-18T18:29:51Z nsrahmad joined #lisp 2017-08-18T18:29:57Z satran joined #lisp 2017-08-18T18:31:22Z slyrus joined #lisp 2017-08-18T18:36:35Z shka joined #lisp 2017-08-18T18:41:39Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T18:43:41Z nowhere_man joined #lisp 2017-08-18T18:44:26Z peterhil joined #lisp 2017-08-18T18:48:42Z White_Flame: whoman: I think Racket uses a singular top-of-file indicator for which language the file will use. I'm not sure if it also supports mid-file changes of language, or any form of nesting language changes inside expressions 2017-08-18T18:50:02Z arbv quit (Read error: Connection reset by peer) 2017-08-18T18:50:15Z arbv joined #lisp 2017-08-18T18:50:45Z lnostdal quit (Read error: Connection reset by peer) 2017-08-18T18:51:00Z scymtym joined #lisp 2017-08-18T18:54:49Z nsrahmad quit (Quit: Leaving) 2017-08-18T18:56:35Z frgo joined #lisp 2017-08-18T19:00:14Z frgo quit (Remote host closed the connection) 2017-08-18T19:03:57Z jasom: it seems like doing something like that with readtables should be doable in CL. 2017-08-18T19:05:14Z Jesin joined #lisp 2017-08-18T19:05:50Z malice: With readtable, you can have a custom parser for the expression 2017-08-18T19:06:17Z jasom: right, which is part of what racket languages provide; they provide a custom parser and then a custom AST transformer IIRC 2017-08-18T19:06:30Z malice: While I'm not sure if you can scan until EOF, you could establish a syntax like #lang something (body) #endlang 2017-08-18T19:06:44Z malice: So you know when you stop parsing 2017-08-18T19:06:50Z malice: and you could have any language in between 2017-08-18T19:07:44Z jasom: no need for that, load binds *readtable* before loading the file, so you can just make a new readtable and when it reaches EOF the readtable will be reset 2017-08-18T19:08:08Z malice: That's cool. 2017-08-18T19:08:20Z malice: But the ending could help you with more than one language per file, if you needed that. 2017-08-18T19:08:56Z malice: This year's ELS guys from germany had some fun with readtables and made some C(or C++)'s subset parser. They dispatched on space, which was quite funny hack 2017-08-18T19:08:57Z jasom: but whatever syntax is used for ending would have to be invalid in all languages 2017-08-18T19:09:14Z jasom: malice: there's a full C implementation using readtables 2017-08-18T19:09:20Z malice: oh boy 2017-08-18T19:09:27Z jasom: https://github.com/vsedach/Vacietis 2017-08-18T19:09:29Z malice: thank you 2017-08-18T19:10:11Z malice: jasom: why would it have to be invalid in all languages though? 2017-08-18T19:10:25Z jasom: malice: otherwise you'd have an ambiguous parse 2017-08-18T19:10:46Z neoncontrails joined #lisp 2017-08-18T19:10:55Z jasom: what if I want "#endlang" to be a valid line in my custom language? 2017-08-18T19:11:23Z jasom: which could easily happen if it has multiline strings and there's example code in the multiline string 2017-08-18T19:12:28Z malice: But you didn't start your language's parser, did you? 2017-08-18T19:12:37Z malice: Or do I not understand the readtables? 2017-08-18T19:12:59Z jasom: let me give an example... 2017-08-18T19:13:07Z malice: Sure! 2017-08-18T19:13:59Z jasom: http://paste.lisp.org/display/353741 2017-08-18T19:14:19Z jasom: without parsing you can't tell which #endlang is the right one 2017-08-18T19:14:47Z jasom: but one language per file is probably fine anyways 2017-08-18T19:20:08Z whoman: White_Flame, racket can change lang in repl, i think it can mid-sourcefile 2017-08-18T19:20:12Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-18T19:20:14Z rumbler31 quit (Ping timeout: 255 seconds) 2017-08-18T19:21:54Z aeth: jasom: But you *do* parse it. 2017-08-18T19:22:04Z malice: jasom: Wouldn't you ignore the #endlang in string? 2017-08-18T19:22:08Z malice: Just like any arbitrary code in there? 2017-08-18T19:22:13Z aeth: If you're doing it through a reader macro, you will be able to tell the difference, because you need to write a char-stream reader 2017-08-18T19:22:23Z aeth: So when you're in the string, you're still reading the string 2017-08-18T19:22:32Z malice: I'm thinking the same way as aeth 2017-08-18T19:23:26Z aeth: You should be able to do something basically identical to Racket in CL, using reader macros, no additions required. 2017-08-18T19:23:35Z aeth: The issues will be with semantics, not syntax. 2017-08-18T19:24:17Z aeth: Essentially every language will be a subset of CL in different syntax with perhaps some things written in CL added in. So things that you cannot easily or performantly write in CL will be the real issue. 2017-08-18T19:24:52Z White_Flame: jasom: that's why above, I was thinking that the toggles between languages wouldn't be textual. Like you hit Ctrl-something to switch language states, and it stores metadata around parts of the source code. 2017-08-18T19:24:53Z aeth: So I'm sure something like a literal Python implementation would be pretty hard to do (and it wouldn't even be fast when done), but something that looks like Python should be pretty easy, and almost as performant as CL 2017-08-18T19:25:13Z aeth: White_Flame: But if it toggles between languages in a textual way, you can just program SLIME to hide that. 2017-08-18T19:25:22Z aeth: White_Flame: Ctrl+whatever will just send the text command 2017-08-18T19:25:31Z White_Flame: text isn't a great way to store metadata 2017-08-18T19:25:42Z White_Flame: unless you like a bunch of escapes 2017-08-18T19:25:54Z White_Flame: especially if you're not going to constrain the syntax at all 2017-08-18T19:27:07Z whoman: json ~_? sexp though. 2017-08-18T19:27:37Z thblt joined #lisp 2017-08-18T19:28:52Z dmiles quit (Read error: Connection reset by peer) 2017-08-18T19:30:28Z peterhil quit (Quit: Must not waste too much time here...) 2017-08-18T19:33:56Z dmiles joined #lisp 2017-08-18T19:38:08Z frgo joined #lisp 2017-08-18T19:38:56Z frgo quit (Client Quit) 2017-08-18T19:44:33Z vlatkoB quit (Remote host closed the connection) 2017-08-18T19:47:42Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-18T19:53:05Z DingoSaar_ joined #lisp 2017-08-18T19:54:06Z DingoSaar quit (Disconnected by services) 2017-08-18T19:54:27Z DingoSaar_ is now known as DingoSaar 2017-08-18T19:58:20Z Karl_Dscc quit (Remote host closed the connection) 2017-08-18T20:00:36Z heurist quit (Quit: heurist) 2017-08-18T20:00:53Z heurist joined #lisp 2017-08-18T20:03:18Z milanj joined #lisp 2017-08-18T20:09:51Z jasom: malice: right which goes back to what I said about #endlang needing to be an invalid token in all custom languages (otherwise it would be accepted in the parse) 2017-08-18T20:10:55Z jasom: White_Flame: length-prefixed strings are the alternative to escapes 2017-08-18T20:12:00Z jasom: but really I see no problem with EOF to indicate the end of the language. Toggling between multiple languages in a single file seems needlessly complex, absent small DSLs that are readtable-compatible with lisp. 2017-08-18T20:12:26Z sdemarre quit (Quit: Leaving.) 2017-08-18T20:12:37Z BlueRavenGT joined #lisp 2017-08-18T20:15:48Z sdemarre joined #lisp 2017-08-18T20:16:25Z FreeBirdLjj joined #lisp 2017-08-18T20:21:13Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-18T20:23:07Z Achylles quit (Quit: Leaving) 2017-08-18T20:26:20Z neoncontrails quit (Remote host closed the connection) 2017-08-18T20:29:05Z sdemarre quit (Quit: Leaving.) 2017-08-18T20:29:13Z shka quit (Ping timeout: 240 seconds) 2017-08-18T20:41:27Z sdemarre joined #lisp 2017-08-18T20:43:28Z sdemarre quit (Client Quit) 2017-08-18T20:45:24Z dyelar quit (Quit: Leaving.) 2017-08-18T20:52:27Z pcell quit (Ping timeout: 246 seconds) 2017-08-18T20:56:43Z DeadTrickster_ joined #lisp 2017-08-18T20:58:28Z grublet joined #lisp 2017-08-18T21:06:30Z vydd joined #lisp 2017-08-18T21:06:30Z vydd quit (Changing host) 2017-08-18T21:06:30Z vydd joined #lisp 2017-08-18T21:06:42Z EvW quit (Ping timeout: 240 seconds) 2017-08-18T21:08:03Z aeth: jasom: I think you can do both 2017-08-18T21:08:32Z aeth: jasom: embedded non-string languages in CL should terminate on ) where the ) is not matching an internal ( 2017-08-18T21:09:20Z aeth: jasom: e.g. #4f(+++++++++[>++++++++<-]>.<+++[>++++++++<-]>+++++.+++++++..+++.>++++[>++++++++<-]>. <<<+++[>--------<-]>.<+++[>++++++++<-]>.+++.------.--------.>>+.<++++++++++.) 2017-08-18T21:09:51Z papachan quit (Quit: Saliendo) 2017-08-18T21:10:27Z aeth: If Brainfuck didn't use []s and instead used ()s, that still wouldn't be an issue because only a top-level (from the perspective of brainfuck) #\) would end it (and a preceding #\( would make it not top-level). 2017-08-18T21:10:50Z rRru joined #lisp 2017-08-18T21:11:42Z aeth: When you require top level parentheses, you get rid of a lot of issues. For single-language files, no need to even have #langfoo, just go by the extension, e.g. .bf for Brainfuck. 2017-08-18T21:12:52Z aeth: But if you must have a #lang foo because you don't want extension explosion, you can just use EOF because it'd be effectively treated like a monolingual file with its own extension in that case. In the case where mixing and matching is good, use parentheses. 2017-08-18T21:13:37Z aeth: REPL use will be an issue this way, though. Perhaps each language gets its own REPL, that is handled seemlessly through a plugin in Emacs/etc. 2017-08-18T21:16:03Z aeth: So essentailly there would be four ways to embed a language: a string, a reader macro that begins with #\( and ends with a top-level (from the perspective of the language) #\), its own file with its own extension (no header necessary), and a .lisp file with a #lang header that is otherwise identical to the previous 2017-08-18T21:17:24Z aeth: This can already be done quite trivially (this is most of the work of cl-brainfuck, except for the 4th method), but the tricky part is REPL, especially if you wanted to do something like use SLIME with the embedded languages. 2017-08-18T21:17:40Z FreeBirdLjj joined #lisp 2017-08-18T21:18:19Z aeth: e.g. it is probably easier to add Geiser support to cl-scheme than actually try to get some method of mutlilingual toggling in SLIME, and Scheme is very syntactically close to CL (but not close enough to share the same reader) 2017-08-18T21:19:28Z aeth: (Any hard interoperability challenge is probably easier than actually writing some of the more difficult to write declarative languages, though.) 2017-08-18T21:20:37Z rngoodn joined #lisp 2017-08-18T21:21:48Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-18T21:22:34Z defaultxr joined #lisp 2017-08-18T21:22:56Z aeth: Put more briefly, if you want to mix a Python-like language into CL, you'd do something like put it within #lfoo(import foobar ...) 2017-08-18T21:23:18Z aeth: I suggest using #l for language to prevent running out of characters for dispatch functions. 2017-08-18T21:24:21Z aeth: So I could rewrite cl-brainfuck to be #4lbrainfuck(+.) instead of #4f(+.) and the actual meaning of the optional number prefix would depend on the language (in Brainfuck, it's the size of the tape so you don't waste too much memory) 2017-08-18T21:24:51Z Bike quit (Ping timeout: 255 seconds) 2017-08-18T21:25:06Z aeth: And with some sort of convention, emacs could be modified to recognize that convention, and provide embedded syntax highlighting (org-mode probably already has this functionality) 2017-08-18T21:31:51Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T21:33:44Z rngoodn joined #lisp 2017-08-18T21:33:48Z angavrilov quit (Remote host closed the connection) 2017-08-18T21:34:02Z jasom: aeth: that's what I meant by embedded DSLs that are readtable-compatible with lisp. LOOP is an example. 2017-08-18T21:35:54Z EvW joined #lisp 2017-08-18T21:36:21Z White_Flame: I would actually like to replace read tables with a more declarative BNF-ish approach 2017-08-18T21:36:33Z White_Flame: that would be more compatible with emacs integration as well 2017-08-18T21:39:35Z phinxy joined #lisp 2017-08-18T21:39:38Z phinxy quit (Max SendQ exceeded) 2017-08-18T21:40:45Z ksft joined #lisp 2017-08-18T21:40:58Z ksft: /j/part 2017-08-18T21:41:00Z ksft: oops 2017-08-18T21:41:02Z ksft left #lisp 2017-08-18T21:42:50Z BitPuffin|osx joined #lisp 2017-08-18T21:43:39Z sdemarre joined #lisp 2017-08-18T21:44:25Z varjag quit (Ping timeout: 248 seconds) 2017-08-18T21:46:40Z phinxy joined #lisp 2017-08-18T21:46:42Z phinxy quit (Max SendQ exceeded) 2017-08-18T21:47:57Z vydd quit (Ping timeout: 240 seconds) 2017-08-18T21:51:30Z Kyo91 joined #lisp 2017-08-18T21:53:18Z BitPuffin|osx quit (Ping timeout: 240 seconds) 2017-08-18T21:54:08Z Kyo91_ quit (Ping timeout: 255 seconds) 2017-08-18T21:54:27Z aeth: White_Flame: That seems like it's implementable through reader macros 2017-08-18T21:54:40Z White_Flame: potentially 2017-08-18T21:54:47Z White_Flame: well, yes, it could be compiled down to them 2017-08-18T21:55:02Z White_Flame: turing complete etc 2017-08-18T21:55:06Z jasom: the readtable only has 1 character of lookahead, so implementing a full BNF is complicated 2017-08-18T21:55:48Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-18T21:58:54Z slyrus_ joined #lisp 2017-08-18T21:59:49Z random-nick quit (Remote host closed the connection) 2017-08-18T22:02:46Z neoncontrails joined #lisp 2017-08-18T22:02:53Z xxoxx quit (Ping timeout: 240 seconds) 2017-08-18T22:05:29Z brendyn joined #lisp 2017-08-18T22:08:28Z attila_lendvai quit (Quit: Leaving.) 2017-08-18T22:09:16Z josemanuel joined #lisp 2017-08-18T22:09:18Z Bike joined #lisp 2017-08-18T22:10:11Z phinxy joined #lisp 2017-08-18T22:11:29Z phinxy left #lisp 2017-08-18T22:15:35Z milanj quit (Quit: Leaving) 2017-08-18T22:18:27Z FreeBirdLjj joined #lisp 2017-08-18T22:20:58Z pierpa joined #lisp 2017-08-18T22:24:56Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-18T22:25:27Z mishoo quit (Ping timeout: 240 seconds) 2017-08-18T22:25:55Z mishoo joined #lisp 2017-08-18T22:26:01Z aeth: So how many people would be interested in some sort of general sublanguage framework for CL? 2017-08-18T22:28:44Z brendyn quit (Ping timeout: 255 seconds) 2017-08-18T22:33:46Z White_Flame: I"m interested in one for my big back burner pipe dream declarative post-CL lisp 2017-08-18T22:35:02Z GGMethos quit (Quit: WeeChat 1.4) 2017-08-18T22:38:42Z safe joined #lisp 2017-08-18T22:39:47Z Methos joined #lisp 2017-08-18T22:40:10Z cromachina joined #lisp 2017-08-18T22:40:12Z Methos is now known as Guest98617 2017-08-18T22:40:39Z varjag joined #lisp 2017-08-18T22:42:18Z slyrus quit (Ping timeout: 240 seconds) 2017-08-18T22:42:21Z Guest98617 is now known as GGMethos 2017-08-18T22:42:33Z impulse quit (Ping timeout: 248 seconds) 2017-08-18T22:45:45Z varjag quit (Ping timeout: 248 seconds) 2017-08-18T22:48:13Z Jesin quit (Ping timeout: 240 seconds) 2017-08-18T22:48:47Z thblt quit (Ping timeout: 240 seconds) 2017-08-18T22:49:24Z impulse joined #lisp 2017-08-18T22:50:37Z LiamH quit (Quit: Leaving.) 2017-08-18T22:50:47Z kolko quit (Ping timeout: 255 seconds) 2017-08-18T22:50:54Z Jesin joined #lisp 2017-08-18T22:55:47Z Denommus quit (Ping timeout: 255 seconds) 2017-08-18T23:00:39Z aeth: White_Flame: I think that's one of the possible futures of CL. A target language, sort of like JavaScript, but far more capable at that job (and also far less available unless there's a WASM CL) 2017-08-18T23:01:09Z aeth: There are some extensions that are needed at the language level, but most components are already there, just needing libraries. 2017-08-18T23:01:17Z White_Flame: there's nothing in there about being a 'target language', but a primary language 2017-08-18T23:01:34Z White_Flame: with excellent FFI-ish inclusion of others 2017-08-18T23:05:43Z aeth: I would love to see a logic language, a query language, a static language, a pure functional language, a modern CAS, etc., written in and running in CL. (Except for a GPU Lisp, which would just be written in CL, and running on the GPU, obviously.) 2017-08-18T23:05:55Z aeth: As well as any attempts at a modern Lisp 2017-08-18T23:06:05Z aeth: such as your "post-CL lisp" 2017-08-18T23:07:05Z aeth: There needs to be a good interoperability with the host CL and the languages, and probably also some standard framework uniting them. 2017-08-18T23:08:27Z jasom: aeth: I'm interested because I'd like to explore something like typed-racket but with CL. Also I find treating the entire file as a different language is less error-prone that mix-and-matching readtables 2017-08-18T23:08:28Z karswell joined #lisp 2017-08-18T23:09:10Z jasom: Also, it will help keep Fare in the lisp community; the language features of racket are tempting him away IIRC. 2017-08-18T23:09:42Z sjl: jasom: shen can call out to the CL host... is there any support for going the other way? 2017-08-18T23:09:48Z sjl: I haven't played around enough with it 2017-08-18T23:10:18Z aeth: jasom: I would definitely like to use something like typed racket in CL. I often use typed CL anyway, with declare, etc.. 2017-08-18T23:10:39Z aeth: jasom: That would, afaik, probably require modification to the host CLs, though, by adding to the standard. 2017-08-18T23:10:51Z aeth: That's probably the trickiest one next to a CAS language. 2017-08-18T23:12:49Z axion: Is there a constructor for a bit vector, or just the reader macro? 2017-08-18T23:13:13Z Bike: make-array :element-type 'bit 2017-08-18T23:14:21Z axion: Thanks 2017-08-18T23:15:30Z jasom: aeth: I know how to do some of what typed racket without any modification to the host CL; types can be erased at macroexpand time without losing any of the functionality I believe. 2017-08-18T23:16:45Z aeth: jasom: yes, but that afaik also removes the performance advantage of types 2017-08-18T23:17:37Z aeth: A well-designed typed CL embedded within CL with major compiler support would be a good choice for parts of a program that need performance. 2017-08-18T23:18:27Z mishoo quit (Ping timeout: 240 seconds) 2017-08-18T23:20:21Z Cthulhux: can i have a defstruct with predefined "types"? i want to have a number of items which have several "flags", each going from 0 to 5. 2017-08-18T23:21:02Z aeth: yes 2017-08-18T23:21:43Z sellout- joined #lisp 2017-08-18T23:22:03Z FreeBirdLjj joined #lisp 2017-08-18T23:22:15Z aeth: :type 2017-08-18T23:22:46Z Cthulhux reads about that 2017-08-18T23:22:48Z Cthulhux: (thanks) 2017-08-18T23:22:53Z aeth: In fact, afaik, that's the main reason why one would want to use defstruct over defclass because most CLs (CCL doesn't, but SBCL does) ignore :type in CLOS 2017-08-18T23:23:24Z aeth: If they're all the same type, you can even make them inherit from an array. axion does this, so axion probably knows the syntax for that. 2017-08-18T23:24:10Z Cthulhux: currently, those are 17 flags which can all have values from 0 to 5.. 2017-08-18T23:24:50Z axion: Well it's not really inheriting 2017-08-18T23:25:13Z axion: A defstruct has the ability to be typed into a vector or list type. 2017-08-18T23:25:28Z sjl: (deftype flag () (integer 0 5)) (defstruct foo (flag-a 0 :type flag) ...) 2017-08-18T23:25:40Z axion: In that case, it is no longer a structure-class type, and has all the properties of an array (or list) in addition to the struct accessors 2017-08-18T23:25:57Z Cthulhux: :-) 2017-08-18T23:26:05Z axion: This produces the same assembly as using AREF, at least on SBCL last I checked 2017-08-18T23:26:19Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-18T23:26:51Z Bike: defstruct with :type is just a way to define a bunch of accessor afunctions conveniently, and dthey're simple enough that they ought to be inlined 2017-08-18T23:27:18Z Jesin quit (Read error: Connection reset by peer) 2017-08-18T23:27:46Z jasom: aeth: there is THE which gets you the performance advantage back 2017-08-18T23:27:50Z aeth: sjl: why (integer 0 5) and not (mod 6) for the type? 2017-08-18T23:28:09Z aeth: jasom: Does the work with multiple values? Because if it doesn't, that's one disadvantage. 2017-08-18T23:28:33Z aeth: ah, it does, I didn't know that 2017-08-18T23:28:56Z jasom: e.g. lets say we can define a type (list foo) that is (cons foo (list foo)) (which you can't do now). We can eliminate that type and change all calls of (car X) to be (the foo (car X)) 2017-08-18T23:29:05Z sjl: aeth: I find "an integer from zero to five" easier to read than "modulo six" 2017-08-18T23:29:22Z aeth: (the (values integer float) (truncate 3.2 2)) 2017-08-18T23:29:24Z jasom: aeth: yes you can do (the (values X Y) ...) 2017-08-18T23:29:53Z aeth: So let is one of the few places that doesn't take a (values ...) 2017-08-18T23:30:26Z jasom: m-v-b is, I think, the only binding construct that can bind multiple values 2017-08-18T23:30:44Z jasom: there are assignment constructs that can bind multiple values of course 2017-08-18T23:32:38Z DeadTrickster joined #lisp 2017-08-18T23:32:44Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T23:35:47Z DeadTrickster_ quit (Ping timeout: 240 seconds) 2017-08-18T23:35:55Z DeadTrickster_ joined #lisp 2017-08-18T23:36:49Z yrk quit (Read error: Connection reset by peer) 2017-08-18T23:37:04Z Bike: also handler-case, but then it's basically multiple value call anyway. 2017-08-18T23:37:53Z DeadTrickster__ joined #lisp 2017-08-18T23:37:57Z DeadTrickster quit (Ping timeout: 240 seconds) 2017-08-18T23:39:07Z jameser joined #lisp 2017-08-18T23:39:16Z DeadTrickster__ is now known as DeadTrickster 2017-08-18T23:40:49Z DeadTrickster_ quit (Ping timeout: 240 seconds) 2017-08-18T23:50:52Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-18T23:52:35Z PuercoPop: jasom: you use evil right? To which key do you bind jump to definition to? 2017-08-18T23:53:04Z jameser joined #lisp 2017-08-18T23:56:05Z phinxy joined #lisp 2017-08-18T23:56:57Z phinxy left #lisp 2017-08-18T23:58:40Z jasom: PuercoPop: M-. 2017-08-18T23:58:48Z jasom: oh wait 2017-08-18T23:58:50Z jasom: C-] 2017-08-18T23:59:14Z jasom: same as ctags in vim 2017-08-19T00:00:20Z jasom: M-. will work in insert mode by default though 2017-08-19T00:03:31Z PuercoPop: jasom: I swapped [] with () a long time ago, so that won't do :'(. But it seems a sensible choice. I only used vim for ~2 years before switching to Emacs. Giving Evil a try because of lispy-mode 2017-08-19T00:05:44Z EvW quit (Ping timeout: 276 seconds) 2017-08-19T00:15:45Z rngoodn joined #lisp 2017-08-19T00:17:16Z jasom: PuercoPop: evil-lispy looks interesting 2017-08-19T00:17:34Z jasom: I've been using vi for 25 years now, and vim for ~20 of those. 2017-08-19T00:18:44Z jasom: PuercoPop: I should show you my binding for >>/<< as well 2017-08-19T00:18:50Z sellout- quit (Quit: Leaving.) 2017-08-19T00:20:02Z jasom: http://paste.lisp.org/display/353762 2017-08-19T00:20:30Z jasom: << and >> adjust the parentheses to match the indentation, as does TAB/backtab at the start of the line in insert mode 2017-08-19T00:25:58Z rRru quit (Quit: rRru) 2017-08-19T00:26:36Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T00:33:15Z doesthiswork joined #lisp 2017-08-19T00:34:33Z PuercoPop: jasom: Thanks for the tips. I have M-x indent buffer which is kind of inefficient, so when possible I do C-M-a C-SPC 2017-08-19T00:37:46Z daemoz quit (Remote host closed the connection) 2017-08-19T00:38:03Z jameser joined #lisp 2017-08-19T00:38:05Z daemoz joined #lisp 2017-08-19T00:44:09Z wooden quit (Read error: Connection reset by peer) 2017-08-19T00:48:01Z wooden joined #lisp 2017-08-19T00:49:20Z xxoxx joined #lisp 2017-08-19T00:50:46Z satran_ joined #lisp 2017-08-19T00:54:17Z satran quit (Ping timeout: 240 seconds) 2017-08-19T00:55:13Z borei joined #lisp 2017-08-19T00:55:24Z hvxgr joined #lisp 2017-08-19T00:57:35Z borei: hi all 2017-08-19T00:57:51Z borei: im bit stuck with "case" statement 2017-08-19T00:58:07Z borei: https://pastebin.com/50SPL4rh 2017-08-19T00:58:26Z borei: im expecting that first case should work, but it didn't 2017-08-19T00:58:28Z Bike: case doesn't evaluate the key forms. 2017-08-19T00:59:15Z Bike: i mean, so it will only fire if the value of *cqm-graphics-event* is the symbol *CQM-GRAPHICS-CREATE-WINDOW*. 2017-08-19T00:59:48Z borei: aha 2017-08-19T01:00:57Z borei: but what is my option then 2017-08-19T01:01:57Z borei: cond ? 2017-08-19T01:02:40Z Bike: yeah. 2017-08-19T01:04:55Z DeadTrickster quit (Ping timeout: 248 seconds) 2017-08-19T01:05:25Z borei: tks for heads up ! 2017-08-19T01:07:53Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T01:12:57Z borei quit (Read error: Connection reset by peer) 2017-08-19T01:15:09Z keviv quit (Quit: Lost terminal) 2017-08-19T01:17:31Z reu quit (Quit: Lost terminal) 2017-08-19T01:20:50Z d4ryus1 joined #lisp 2017-08-19T01:23:31Z FreeBirdLjj joined #lisp 2017-08-19T01:23:49Z d4ryus quit (Ping timeout: 240 seconds) 2017-08-19T01:26:36Z LooneyTunes joined #lisp 2017-08-19T01:27:53Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-19T01:44:24Z PinealGlandOptic joined #lisp 2017-08-19T02:16:43Z payphone quit (Quit: WeeChat 1.8) 2017-08-19T02:16:52Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-19T02:22:26Z muzik joined #lisp 2017-08-19T02:24:22Z FreeBirdLjj joined #lisp 2017-08-19T02:28:49Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-19T02:31:00Z Karl_Dscc joined #lisp 2017-08-19T02:44:01Z borei joined #lisp 2017-08-19T02:44:40Z borei: Bike, thanks for heads-up - works ! 2017-08-19T02:44:41Z scymtym quit (Ping timeout: 248 seconds) 2017-08-19T02:50:43Z fiddlerwoaroof: jasom: I've been using vim for a while now (10 years +/-) anyways, I recently switched to a custom emacs config based on evil-mode and it's surprisingly good 2017-08-19T02:51:12Z fiddlerwoaroof: Also, I've been playing around with using utilities to bind the shift keys to ( and ) 2017-08-19T02:51:50Z fiddlerwoaroof: Basically, when you hit and release shift quickly without another key, it inserts a parenthesis but if the shift is part of a chord, no parenthesis is inserted 2017-08-19T02:52:17Z fiddlerwoaroof: The jury is still out on this setup, but it makes life a tiny bit easier... and it's more intuitive to use the left side of the keyboard for ( and the right side for ) 2017-08-19T02:58:15Z bigos joined #lisp 2017-08-19T03:00:51Z marvin2 quit 2017-08-19T03:00:54Z jamtho_ joined #lisp 2017-08-19T03:05:35Z anticrisis joined #lisp 2017-08-19T03:10:14Z ebzzry_ joined #lisp 2017-08-19T03:11:48Z malice quit (Remote host closed the connection) 2017-08-19T03:17:14Z muzik left #lisp 2017-08-19T03:18:32Z Bike quit (Ping timeout: 255 seconds) 2017-08-19T03:18:34Z pierpa quit (Quit: Page closed) 2017-08-19T03:24:32Z sellout- joined #lisp 2017-08-19T03:25:05Z FreeBirdLjj joined #lisp 2017-08-19T03:25:13Z Karl_Dscc quit (Remote host closed the connection) 2017-08-19T03:25:39Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T03:29:33Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-19T03:33:45Z brendyn joined #lisp 2017-08-19T03:37:05Z rngoodn joined #lisp 2017-08-19T03:56:00Z damke_ joined #lisp 2017-08-19T03:58:02Z beach: Good morning everyone! 2017-08-19T03:59:47Z fiddlerwoaroof: morning beach 2017-08-19T04:00:17Z Guest6344 joined #lisp 2017-08-19T04:00:32Z damke_ quit (Read error: Connection reset by peer) 2017-08-19T04:00:59Z damke_ joined #lisp 2017-08-19T04:01:08Z BlueRavenGT quit (Read error: Connection reset by peer) 2017-08-19T04:04:50Z bigos quit (Remote host closed the connection) 2017-08-19T04:04:57Z jamtho_ quit (Ping timeout: 240 seconds) 2017-08-19T04:13:21Z devon joined #lisp 2017-08-19T04:24:50Z vhost- is now known as jnerula4 2017-08-19T04:25:54Z FreeBirdLjj joined #lisp 2017-08-19T04:30:17Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-19T04:38:57Z xantoz quit (Ping timeout: 240 seconds) 2017-08-19T04:42:13Z borei: hi beach ! 2017-08-19T04:42:31Z nsrahmad joined #lisp 2017-08-19T04:43:07Z borei: quick question - what framework/library would you recommend for web development. 2017-08-19T04:43:21Z borei: there are several goals 2017-08-19T04:43:36Z borei: 1) more lisp ! 2017-08-19T04:43:53Z borei: 2) learn how to do web in lisp 2017-08-19T04:44:06Z fiddlerwoaroof: borei: ningle is pretty nice 2017-08-19T04:44:06Z borei: 3) make some product 2017-08-19T04:44:26Z fiddlerwoaroof: https://github.com/fukamachi/ningle 2017-08-19T04:44:30Z axion: https://leanpub.com/lispwebtales https://leanpub.com/fullstacklisp 2017-08-19T04:44:34Z borei: basically - mail-users management 2017-08-19T04:45:08Z fiddlerwoaroof: You can also use hunchentoot directly, but that's a bit low-level 2017-08-19T04:45:23Z axion: if ningle is too much, it is built on clack. if ningle is not enough, caveman2 is built on it (all by same author) 2017-08-19T04:45:30Z borei: as i read - hunchentoot is webserver ? 2017-08-19T04:46:06Z fiddlerwoaroof: Yeah, but it has its own rudimentary web framework 2017-08-19T04:46:19Z borei: ic 2017-08-19T04:46:56Z axion: I use a collection of about 10 libraries for axity.net 2017-08-19T04:48:21Z axion: Make that 18 o.O 2017-08-19T04:49:14Z fiddlerwoaroof: I like ningle because it's fairly simple and makes a good macro-target 2017-08-19T04:49:22Z nsrahmad quit (Ping timeout: 240 seconds) 2017-08-19T04:49:40Z fiddlerwoaroof: There is also https://github.com/Shirakumo/radiance 2017-08-19T04:49:46Z borei: axion: looks cool 2017-08-19T04:50:06Z fiddlerwoaroof: Which I've never used, but I generally like Shinmera's stuff 2017-08-19T04:50:06Z sellout- quit (Quit: Leaving.) 2017-08-19T04:54:14Z nsrahmad joined #lisp 2017-08-19T04:58:12Z safe quit (Read error: Connection reset by peer) 2017-08-19T04:58:15Z sukaeto: +1 for ningle 2017-08-19T04:58:26Z sukaeto: any of Fukamachi's stuff, really 2017-08-19T04:58:48Z sukaeto: caveman2 is quite nice, too 2017-08-19T04:59:18Z sukaeto: by default it pulls in a lot of dependencies, but they're all pretty useful (sxql, datafly, djula) 2017-08-19T04:59:45Z sukaeto: and it's got sinatra style route definitions, which is convenient 2017-08-19T05:00:59Z sukaeto: further ningle/caveman2/anything based on clack are pretty easy to manage in production 2017-08-19T05:01:40Z sukaeto: in dev, you can use hunchentoot, and in prod you can use fcgi 2017-08-19T05:02:23Z sukaeto: I use docker to spin up a bunch of fcgi workers and set up nginx to round robin to them 2017-08-19T05:02:56Z xxoxx quit (Remote host closed the connection) 2017-08-19T05:03:21Z xxoxx joined #lisp 2017-08-19T05:04:10Z sukaeto: (needless to say, in dev I just spawn a server with hunchentoot in the repl) 2017-08-19T05:05:38Z nsrahmad quit (Ping timeout: 246 seconds) 2017-08-19T05:05:53Z damke_ quit (Ping timeout: 240 seconds) 2017-08-19T05:07:40Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-19T05:08:11Z borei: thanks for heads-up ! 2017-08-19T05:15:19Z Guest6344 quit (Ping timeout: 240 seconds) 2017-08-19T05:15:41Z safe joined #lisp 2017-08-19T05:22:05Z damke joined #lisp 2017-08-19T05:22:25Z xantoz joined #lisp 2017-08-19T05:25:42Z neoncontrails quit (Remote host closed the connection) 2017-08-19T05:26:22Z neoncontrails joined #lisp 2017-08-19T05:26:40Z FreeBirdLjj joined #lisp 2017-08-19T05:30:19Z neoncontrails quit (Ping timeout: 240 seconds) 2017-08-19T05:30:47Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-19T05:32:22Z xxoxx_ joined #lisp 2017-08-19T05:35:19Z xxoxx quit (Ping timeout: 248 seconds) 2017-08-19T05:44:33Z devon quit (Ping timeout: 240 seconds) 2017-08-19T05:49:30Z safe quit (Read error: Connection reset by peer) 2017-08-19T05:59:44Z jameser joined #lisp 2017-08-19T06:04:43Z damke_ joined #lisp 2017-08-19T06:04:54Z AlphaAtom joined #lisp 2017-08-19T06:05:34Z reu_ joined #lisp 2017-08-19T06:06:10Z reu_ quit (Client Quit) 2017-08-19T06:06:12Z damke quit (Ping timeout: 240 seconds) 2017-08-19T06:06:58Z nsrahmad joined #lisp 2017-08-19T06:08:16Z nsrahmad quit (Client Quit) 2017-08-19T06:08:44Z neoncontrails joined #lisp 2017-08-19T06:09:48Z reu_ joined #lisp 2017-08-19T06:10:45Z reu_ quit (Client Quit) 2017-08-19T06:11:43Z xxoxx_ quit (Read error: Connection reset by peer) 2017-08-19T06:13:54Z nsrahmad joined #lisp 2017-08-19T06:14:52Z quazimodo joined #lisp 2017-08-19T06:21:14Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T06:22:28Z jameser joined #lisp 2017-08-19T06:22:46Z reu_ joined #lisp 2017-08-19T06:23:14Z neoncontrails quit 2017-08-19T06:24:28Z vlatkoB joined #lisp 2017-08-19T06:27:28Z FreeBirdLjj joined #lisp 2017-08-19T06:32:02Z FreeBirdLjj quit (Ping timeout: 255 seconds) 2017-08-19T06:32:50Z AlphaAtom quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T06:34:49Z drmeister: Hey lispers - I set up a demo of Cando running in a jupyter notebook over the web. 2017-08-19T06:35:06Z drmeister: I wonder if a kind soul could connect into it with their browser and tell me if it works for them. 2017-08-19T06:35:12Z angavrilov joined #lisp 2017-08-19T06:35:29Z drmeister: It's a Common Lisp implementation with Chemistry code that builds molecules and displays them in your browser. 2017-08-19T06:35:56Z drmeister: I can open it up to the general public for a little while. 2017-08-19T06:38:16Z drmeister: http://ec2-52-14-101-77.us-east-2.compute.amazonaws.com:8888 2017-08-19T06:38:59Z drmeister: Navigate to "demos" -> "catalyst-trial-demo" -> "design-catalyst.ipynb" 2017-08-19T06:39:19Z damke joined #lisp 2017-08-19T06:39:38Z drmeister: It should open up a notebook and if you click an "In" box and then hit Shift-Enter - it will build some molecules and let you view them. 2017-08-19T06:40:53Z drmeister: You should see something like... http://i.imgur.com/QWZVmBg.png 2017-08-19T06:41:29Z drmeister: I'm just looking for confirmation that it works from somewhere other than my laptop 2017-08-19T06:41:52Z damke_ quit (Ping timeout: 240 seconds) 2017-08-19T06:43:04Z reu_ quit (Quit: Changing server) 2017-08-19T06:43:25Z reu_ joined #lisp 2017-08-19T06:44:13Z drmeister: Hmm, it's pretty quiet around here - I'll try again tomorrow. 2017-08-19T06:44:47Z nsrahmad quit (Quit: Leaving) 2017-08-19T06:45:01Z reu_ quit (Client Quit) 2017-08-19T06:45:07Z pjb: drmeister: in Safari on macOS: https://imagebin.ca/v/3XOCpPsYNexC 2017-08-19T06:45:25Z drmeister: I don't want to leave this thing running - it's running in a Docker container on an AWS instance - but it can evaluate arbitrary code and it costs me a few pennies an hour to run the thing. 2017-08-19T06:45:33Z drmeister: pjb: Thank you - it works! Great! 2017-08-19T06:46:10Z drmeister: Thank you very much. I'm going to shut it down now. 2017-08-19T06:46:31Z pjb: Good night! 2017-08-19T06:46:37Z drmeister: Good night. 2017-08-19T06:47:47Z dddddd quit (Remote host closed the connection) 2017-08-19T06:48:13Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T06:51:37Z kozy quit (Quit: No Ping reply in 180 seconds.) 2017-08-19T06:52:46Z kozy joined #lisp 2017-08-19T07:00:28Z damke_ joined #lisp 2017-08-19T07:02:13Z damke quit (Ping timeout: 240 seconds) 2017-08-19T07:03:22Z teggi joined #lisp 2017-08-19T07:05:40Z zchlyg joined #lisp 2017-08-19T07:11:35Z shka joined #lisp 2017-08-19T07:14:47Z damke joined #lisp 2017-08-19T07:17:17Z borei quit (Ping timeout: 240 seconds) 2017-08-19T07:17:32Z damke_ quit (Ping timeout: 240 seconds) 2017-08-19T07:24:36Z rRru joined #lisp 2017-08-19T07:25:30Z FreeBirdLjj joined #lisp 2017-08-19T07:30:25Z mishoo joined #lisp 2017-08-19T07:31:15Z damke_ joined #lisp 2017-08-19T07:32:52Z damke quit (Ping timeout: 240 seconds) 2017-08-19T07:38:24Z JohnTalent joined #lisp 2017-08-19T07:38:48Z pyx joined #lisp 2017-08-19T07:38:53Z pyx quit (Client Quit) 2017-08-19T07:47:16Z COURYHOUSE is now known as trinitr0n 2017-08-19T07:51:11Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-19T07:52:20Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-19T07:55:33Z teggi quit (Read error: Connection reset by peer) 2017-08-19T07:56:19Z teggi joined #lisp 2017-08-19T07:56:47Z knobo quit (Ping timeout: 240 seconds) 2017-08-19T07:56:49Z nowhere_man quit (Ping timeout: 240 seconds) 2017-08-19T07:57:05Z _ark_ joined #lisp 2017-08-19T07:57:10Z DeadTrickster joined #lisp 2017-08-19T07:59:44Z quazimodo quit (Read error: Connection reset by peer) 2017-08-19T08:00:00Z quazimodo joined #lisp 2017-08-19T08:03:36Z DeadTrickster quit (Ping timeout: 248 seconds) 2017-08-19T08:06:08Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T08:12:20Z JohnTalent quit (Changing host) 2017-08-19T08:12:20Z JohnTalent joined #lisp 2017-08-19T08:21:07Z _paul0 joined #lisp 2017-08-19T08:21:41Z rRru quit (Quit: rRru) 2017-08-19T08:24:00Z knobo joined #lisp 2017-08-19T08:24:23Z paul0 quit (Ping timeout: 248 seconds) 2017-08-19T08:30:12Z _ark_ quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-19T08:43:50Z moei quit (Quit: Leaving...) 2017-08-19T08:44:14Z JohnTalent quit (Quit: leaving) 2017-08-19T08:48:55Z knobo quit (Ping timeout: 248 seconds) 2017-08-19T08:52:54Z jameser joined #lisp 2017-08-19T09:04:35Z ebzzry_ quit (Ping timeout: 255 seconds) 2017-08-19T09:05:52Z varjag joined #lisp 2017-08-19T09:05:53Z vydd joined #lisp 2017-08-19T09:06:51Z ebzzry_ joined #lisp 2017-08-19T09:08:22Z random-nick joined #lisp 2017-08-19T09:09:33Z BitPuffin|osx joined #lisp 2017-08-19T09:10:52Z shka quit (Read error: Connection reset by peer) 2017-08-19T09:11:18Z shka joined #lisp 2017-08-19T09:13:19Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-19T09:15:39Z ebzzry_ joined #lisp 2017-08-19T09:18:34Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T09:21:26Z vydd quit (Remote host closed the connection) 2017-08-19T09:24:25Z rippa joined #lisp 2017-08-19T09:28:36Z teggi quit (Remote host closed the connection) 2017-08-19T09:29:03Z Lowl3v3l quit (Remote host closed the connection) 2017-08-19T09:29:18Z teggi joined #lisp 2017-08-19T09:30:06Z Lowl3v3l joined #lisp 2017-08-19T09:32:28Z Lowl3v3l quit (Remote host closed the connection) 2017-08-19T09:33:40Z Lowl3v3l joined #lisp 2017-08-19T09:33:54Z damke_ quit (Read error: Connection reset by peer) 2017-08-19T09:34:42Z Lowl3v3l quit (Remote host closed the connection) 2017-08-19T09:35:56Z Lowl3v3l joined #lisp 2017-08-19T09:37:13Z damke_ joined #lisp 2017-08-19T09:39:29Z doesthiswork quit (Quit: Leaving.) 2017-08-19T09:46:19Z quazimodo quit (Read error: Connection reset by peer) 2017-08-19T09:51:24Z raynold quit (Quit: Connection closed for inactivity) 2017-08-19T09:59:32Z defaultxr quit (Ping timeout: 240 seconds) 2017-08-19T10:12:47Z jamtho_ joined #lisp 2017-08-19T10:12:54Z vlatkoB quit (Remote host closed the connection) 2017-08-19T10:14:42Z vlatkoB joined #lisp 2017-08-19T10:15:43Z ebzzry_ quit (Ping timeout: 255 seconds) 2017-08-19T10:19:15Z karswell_ joined #lisp 2017-08-19T10:20:03Z neoncontrails joined #lisp 2017-08-19T10:20:11Z karswell quit (Ping timeout: 255 seconds) 2017-08-19T10:29:11Z ebzzry_ joined #lisp 2017-08-19T10:36:12Z josemanuel quit (Quit: leaving) 2017-08-19T10:38:48Z kolko joined #lisp 2017-08-19T10:42:35Z elfmacs joined #lisp 2017-08-19T10:51:04Z Bike joined #lisp 2017-08-19T10:51:55Z kolko quit (Read error: Connection reset by peer) 2017-08-19T10:53:49Z milanj joined #lisp 2017-08-19T10:55:00Z kolko joined #lisp 2017-08-19T11:00:11Z knobo joined #lisp 2017-08-19T11:00:50Z damke joined #lisp 2017-08-19T11:03:12Z damke_ quit (Ping timeout: 240 seconds) 2017-08-19T11:05:19Z varjag quit (Ping timeout: 240 seconds) 2017-08-19T11:13:25Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-19T11:18:38Z milanj quit (Quit: Leaving) 2017-08-19T11:19:59Z Ellenor quit (Ping timeout: 240 seconds) 2017-08-19T11:21:38Z X-Scale joined #lisp 2017-08-19T11:21:57Z marvin2 joined #lisp 2017-08-19T11:21:59Z marvin2 quit (Excess Flood) 2017-08-19T11:24:33Z marvin2 joined #lisp 2017-08-19T11:25:01Z knobo quit (Ping timeout: 255 seconds) 2017-08-19T11:25:22Z X-Scale left #lisp 2017-08-19T11:37:49Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-19T11:38:18Z Ellenor joined #lisp 2017-08-19T11:54:15Z jameser joined #lisp 2017-08-19T11:55:02Z zaoqi joined #lisp 2017-08-19T11:57:13Z jameser quit (Client Quit) 2017-08-19T11:57:43Z nsrahmad joined #lisp 2017-08-19T11:58:25Z jameser joined #lisp 2017-08-19T12:05:27Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T12:08:18Z jameser joined #lisp 2017-08-19T12:08:43Z pcell joined #lisp 2017-08-19T12:08:54Z dddddd joined #lisp 2017-08-19T12:12:07Z AntiSpamMeta quit (Read error: Connection reset by peer) 2017-08-19T12:12:26Z FreeBirdLjj joined #lisp 2017-08-19T12:13:04Z KongWubba joined #lisp 2017-08-19T12:14:46Z jameser quit (Max SendQ exceeded) 2017-08-19T12:16:07Z hylisper joined #lisp 2017-08-19T12:16:41Z jameser joined #lisp 2017-08-19T12:16:55Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-19T12:21:33Z ebzzry_ joined #lisp 2017-08-19T12:23:00Z attila_lendvai joined #lisp 2017-08-19T12:23:58Z AntiSpamMeta joined #lisp 2017-08-19T12:31:56Z zaoqi quit (Remote host closed the connection) 2017-08-19T12:32:32Z poorbean joined #lisp 2017-08-19T12:34:53Z hylisper quit (Quit: leaving) 2017-08-19T12:36:12Z marvin2 quit (Quit: quit) 2017-08-19T12:39:56Z poorbean left #lisp 2017-08-19T12:41:21Z damke_ joined #lisp 2017-08-19T12:41:52Z zaoqi joined #lisp 2017-08-19T12:42:22Z zaoqi: How can I implement microKanren with fair conjunction? 2017-08-19T12:43:32Z jamtho_ quit (Ping timeout: 240 seconds) 2017-08-19T12:43:52Z damke quit (Ping timeout: 240 seconds) 2017-08-19T12:50:24Z attila_lendvai quit (Quit: Leaving.) 2017-08-19T12:54:56Z jameser quit (Ping timeout: 240 seconds) 2017-08-19T12:55:43Z nsrahmad quit (Quit: Leaving) 2017-08-19T12:58:46Z jameser joined #lisp 2017-08-19T13:00:30Z doesthiswork joined #lisp 2017-08-19T13:01:07Z damke_ quit (Read error: Connection reset by peer) 2017-08-19T13:01:30Z damke_ joined #lisp 2017-08-19T13:04:26Z Th30n joined #lisp 2017-08-19T13:04:39Z doesthiswork quit (Ping timeout: 240 seconds) 2017-08-19T13:05:27Z ebzzry_ quit (Ping timeout: 248 seconds) 2017-08-19T13:06:56Z zaoqi quit (Ping timeout: 240 seconds) 2017-08-19T13:07:40Z ebzzry_ joined #lisp 2017-08-19T13:13:14Z FreeBirdLjj joined #lisp 2017-08-19T13:14:01Z elfmacs quit (Remote host closed the connection) 2017-08-19T13:17:43Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-19T13:18:19Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-19T13:27:26Z rumbler31 joined #lisp 2017-08-19T13:27:35Z Karl_Dscc joined #lisp 2017-08-19T13:27:38Z rumbler31 quit (Remote host closed the connection) 2017-08-19T13:27:56Z rumbler31 joined #lisp 2017-08-19T13:56:06Z ebzzry_ joined #lisp 2017-08-19T13:57:35Z BitPuffin|osx quit (Ping timeout: 246 seconds) 2017-08-19T14:01:39Z varjag joined #lisp 2017-08-19T14:04:04Z sellout- joined #lisp 2017-08-19T14:05:29Z EvW joined #lisp 2017-08-19T14:05:43Z varjag quit (Ping timeout: 248 seconds) 2017-08-19T14:06:44Z FreeBirdLjj joined #lisp 2017-08-19T14:10:55Z Th30n: Hmm, did the #:qtools stop supporting win32 builds? 2017-08-19T14:11:21Z safe joined #lisp 2017-08-19T14:28:23Z PinealGlandOptic quit (Quit: leaving) 2017-08-19T14:28:57Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-19T14:29:04Z neoncontrails quit (Remote host closed the connection) 2017-08-19T14:32:32Z felipedvorak quit (Ping timeout: 240 seconds) 2017-08-19T14:32:56Z ebzzry_ quit (Ping timeout: 248 seconds) 2017-08-19T14:34:53Z KongWubba quit (Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org) 2017-08-19T14:34:59Z KongWubba joined #lisp 2017-08-19T14:34:59Z KongWubba quit (Client Quit) 2017-08-19T14:35:00Z ebzzry_ joined #lisp 2017-08-19T14:37:21Z Wojciech_K joined #lisp 2017-08-19T14:40:16Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-19T14:41:42Z dan2 quit (Quit: WeeChat 1.0.1) 2017-08-19T14:41:57Z dan joined #lisp 2017-08-19T14:42:02Z ebzzry_ joined #lisp 2017-08-19T14:44:00Z FreeBirdLjj joined #lisp 2017-08-19T14:44:39Z felipedvorak joined #lisp 2017-08-19T14:50:18Z slyrus_: drmeister: sorry I missed the demo! let me know if you put it back up 2017-08-19T14:51:36Z rngoodn joined #lisp 2017-08-19T14:57:19Z serviteur joined #lisp 2017-08-19T15:02:45Z neoncontrails joined #lisp 2017-08-19T15:02:47Z narendraj9 joined #lisp 2017-08-19T15:07:56Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-19T15:08:08Z terpri quit (Ping timeout: 248 seconds) 2017-08-19T15:09:07Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T15:09:55Z neoncontrails joined #lisp 2017-08-19T15:10:00Z rngoodn joined #lisp 2017-08-19T15:10:05Z Th30n quit (Quit: restarting) 2017-08-19T15:11:01Z Th30n joined #lisp 2017-08-19T15:15:43Z slyrus joined #lisp 2017-08-19T15:16:17Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T15:16:49Z doesthiswork joined #lisp 2017-08-19T15:17:32Z rngoodn joined #lisp 2017-08-19T15:19:04Z phoe: thetabit: no, wait, why? 2017-08-19T15:19:23Z phoe: thetabit: sorry 2017-08-19T15:19:27Z phoe: Th30n: no, why? 2017-08-19T15:19:43Z phoe: poke Shinmera - I think you'll need to download a DLL package that contains win32 DLLs of Qt 2017-08-19T15:19:50Z rngoodn quit (Client Quit) 2017-08-19T15:19:52Z phoe: if it's not in the currently built libs 2017-08-19T15:22:18Z serviteur quit (Remote host closed the connection) 2017-08-19T15:22:40Z serviteur joined #lisp 2017-08-19T15:24:42Z rngoodn joined #lisp 2017-08-19T15:27:13Z sjl quit (Ping timeout: 264 seconds) 2017-08-19T15:30:39Z sellout- quit (Quit: Leaving.) 2017-08-19T15:30:54Z sellout- joined #lisp 2017-08-19T15:31:24Z sellout- quit (Client Quit) 2017-08-19T15:31:44Z sellout- joined #lisp 2017-08-19T15:32:12Z sellout- quit (Client Quit) 2017-08-19T15:32:29Z sellout- joined #lisp 2017-08-19T15:32:30Z drmeister: slyrus_: Will do 2017-08-19T15:32:53Z Th30n: phoe: Yeah, thanks. It appears that his fork of qt4 dropped putting win32 zips in releases 2017-08-19T15:32:59Z sellout- quit (Client Quit) 2017-08-19T15:33:19Z sellout- joined #lisp 2017-08-19T15:33:27Z phoe: Th30n: not really. I remember that one of the older releases had win32 libs 2017-08-19T15:33:33Z phoe: one second 2017-08-19T15:33:40Z Th30n: Yep, but 2.0 no longer have 2017-08-19T15:33:47Z sellout- quit (Client Quit) 2017-08-19T15:33:50Z EvW quit (Ping timeout: 246 seconds) 2017-08-19T15:34:04Z sellout- joined #lisp 2017-08-19T15:34:18Z phoe: https://github.com/Shinmera/qt4/releases 2017-08-19T15:34:32Z phoe: 1.1.3 seems to have them 2017-08-19T15:34:35Z sellout- quit (Client Quit) 2017-08-19T15:34:49Z phoe: you'll need to edit the qt-libs project so it downloads some files with version 1.1.3 2017-08-19T15:34:55Z phoe: and AFAIK 1.1.2 as some others are missing 2017-08-19T15:35:10Z phoe: go find him on #shirakumo 2017-08-19T15:35:21Z Th30n: phoe: Thanks! 2017-08-19T15:37:53Z tcr joined #lisp 2017-08-19T15:48:13Z narendraj9 quit (Ping timeout: 255 seconds) 2017-08-19T15:48:41Z DingoSaar quit (Ping timeout: 255 seconds) 2017-08-19T15:54:04Z damke_ quit (Read error: Connection reset by peer) 2017-08-19T15:57:38Z narendraj9 joined #lisp 2017-08-19T16:00:57Z teggi quit (Quit: Leaving...) 2017-08-19T16:05:52Z pokerdio` joined #lisp 2017-08-19T16:07:25Z damke_ joined #lisp 2017-08-19T16:11:38Z DingoSaar joined #lisp 2017-08-19T16:14:52Z dddddd quit (Ping timeout: 240 seconds) 2017-08-19T16:17:54Z pokerdio` left #lisp 2017-08-19T16:18:35Z dddddd joined #lisp 2017-08-19T16:20:11Z damke joined #lisp 2017-08-19T16:22:24Z damke_ quit (Ping timeout: 246 seconds) 2017-08-19T16:22:56Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-19T16:32:40Z keviv joined #lisp 2017-08-19T16:33:47Z keviv quit (Remote host closed the connection) 2017-08-19T16:34:03Z moei joined #lisp 2017-08-19T16:36:35Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T16:45:03Z hylisper joined #lisp 2017-08-19T16:46:01Z narendraj9 quit (Remote host closed the connection) 2017-08-19T16:47:22Z narendraj9 joined #lisp 2017-08-19T16:47:39Z varjag joined #lisp 2017-08-19T16:49:49Z narendraj9 quit (Read error: Connection reset by peer) 2017-08-19T16:51:26Z brendyn quit (Ping timeout: 240 seconds) 2017-08-19T16:52:17Z ebzzry_ joined #lisp 2017-08-19T17:06:23Z terpri joined #lisp 2017-08-19T17:11:20Z fiveop joined #lisp 2017-08-19T17:20:20Z jamtho_ joined #lisp 2017-08-19T17:26:29Z safe quit (Quit: Leaving) 2017-08-19T17:27:15Z vlatkoB_ joined #lisp 2017-08-19T17:30:17Z Th30n` joined #lisp 2017-08-19T17:31:04Z vlatkoB quit (Ping timeout: 248 seconds) 2017-08-19T17:33:42Z Th30n quit (Ping timeout: 248 seconds) 2017-08-19T17:35:35Z marvin2 joined #lisp 2017-08-19T17:37:01Z Th30n` is now known as Th30n 2017-08-19T17:39:12Z jamtho_ quit (Ping timeout: 240 seconds) 2017-08-19T17:43:16Z hylisper quit (Quit: leaving) 2017-08-19T17:45:48Z slyrus_ quit (Ping timeout: 240 seconds) 2017-08-19T17:48:21Z fiveop quit 2017-08-19T17:48:31Z fiveop joined #lisp 2017-08-19T17:51:02Z fiveop quit (Client Quit) 2017-08-19T17:54:08Z strelox joined #lisp 2017-08-19T17:54:27Z fiveop joined #lisp 2017-08-19T17:54:58Z fiveop quit (Client Quit) 2017-08-19T17:55:12Z fiveop joined #lisp 2017-08-19T18:03:26Z phinxy joined #lisp 2017-08-19T18:04:33Z random-nick quit (Remote host closed the connection) 2017-08-19T18:07:23Z jamtho_ joined #lisp 2017-08-19T18:08:40Z keltvek joined #lisp 2017-08-19T18:10:34Z joeyfn joined #lisp 2017-08-19T18:11:46Z impulse quit (Ping timeout: 240 seconds) 2017-08-19T18:11:53Z random-nick joined #lisp 2017-08-19T18:15:46Z mson joined #lisp 2017-08-19T18:16:38Z random-nick quit (Remote host closed the connection) 2017-08-19T18:17:12Z damke quit (Ping timeout: 240 seconds) 2017-08-19T18:20:23Z Th30n quit (Quit: Enough hacking for today!) 2017-08-19T18:21:10Z random-nick joined #lisp 2017-08-19T18:24:10Z rngoodn joined #lisp 2017-08-19T18:25:10Z random-nick quit (Remote host closed the connection) 2017-08-19T18:29:15Z tcr quit (Ping timeout: 240 seconds) 2017-08-19T18:30:45Z rRru joined #lisp 2017-08-19T18:31:08Z random-nick joined #lisp 2017-08-19T18:33:22Z ebzzry_ quit (Ping timeout: 255 seconds) 2017-08-19T18:34:01Z klltkr joined #lisp 2017-08-19T18:34:27Z knobo joined #lisp 2017-08-19T18:35:43Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T18:42:34Z phinxy quit (Quit: Leaving) 2017-08-19T18:43:47Z rumbler31 quit (Remote host closed the connection) 2017-08-19T18:47:20Z karswell_ quit (Ping timeout: 248 seconds) 2017-08-19T18:50:34Z EvW joined #lisp 2017-08-19T18:53:20Z thblt joined #lisp 2017-08-19T18:55:25Z groovy2shoes quit (Ping timeout: 276 seconds) 2017-08-19T19:00:55Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-19T19:02:53Z serviteur quit (Remote host closed the connection) 2017-08-19T19:06:53Z galdor joined #lisp 2017-08-19T19:07:02Z mfiano quit (Remote host closed the connection) 2017-08-19T19:07:26Z mfiano joined #lisp 2017-08-19T19:07:53Z fiveop quit 2017-08-19T19:10:00Z daemoz quit (Remote host closed the connection) 2017-08-19T19:10:19Z daemoz joined #lisp 2017-08-19T19:10:41Z varjag quit (Ping timeout: 240 seconds) 2017-08-19T19:10:50Z serviteur joined #lisp 2017-08-19T19:11:13Z jamtho_ quit (Ping timeout: 246 seconds) 2017-08-19T19:12:53Z serviteur: Hie, this doesn't work for me to install slime: (ql:quickload "quicklisp-slime-helper"). It tells me to use Make-Operation instead of operation... 2017-08-19T19:14:48Z jackdaniel: serviteur: you have too new asdf which breaks some stuff 2017-08-19T19:15:09Z jackdaniel: you may try to update ql client with (ql:update-client) 2017-08-19T19:15:10Z serviteur: each time I update any piece of slime, it's a mess 2017-08-19T19:15:15Z serviteur: ok 2017-08-19T19:15:43Z jackdaniel: if it doesn't work, I'd stick with ASDF version bundled with your lisp implementation 2017-08-19T19:15:45Z serviteur: It's up to date 2017-08-19T19:16:17Z serviteur: ok 2017-08-19T19:18:21Z narendraj9 joined #lisp 2017-08-19T19:23:45Z drmeister: Hey - does anyone have a few minutes to run some tests accessing a demo Common Lisp running web server that I'm setting up? 2017-08-19T19:24:29Z drmeister: I'm looking for anyone geographically far away from me (Philadelphia, PA) 2017-08-19T19:24:34Z serviteur: well, if it's just about connecting, ok 2017-08-19T19:24:52Z drmeister: serviteur: Yeah - that's all. 2017-08-19T19:24:57Z drmeister: http://ec2-18-220-160-93.us-east-2.compute.amazonaws.com:8888/ 2017-08-19T19:25:10Z drmeister: Can you post a snapshot of what you see when you get there? 2017-08-19T19:25:11Z serviteur: require javascript :^) 2017-08-19T19:25:17Z drmeister: Yes - it does. 2017-08-19T19:25:23Z serviteur: bad webmaster :( 2017-08-19T19:25:24Z varjag joined #lisp 2017-08-19T19:25:26Z drmeister: Is that an issue? 2017-08-19T19:25:51Z serviteur: well, I care about my privacy, so javascript is an issue for me, but whatever 2017-08-19T19:26:07Z drmeister: Ok, that's ok then. 2017-08-19T19:26:08Z serviteur: on what I upload the pic 2017-08-19T19:26:46Z serviteur: "2017-08-19-212348_1680x1050_scrot.png" 2017-08-19T19:26:48Z serviteur: wait 2017-08-19T19:26:51Z serviteur: " Token authentication is enabled " 2017-08-19T19:26:58Z drmeister: I usually use imgur.com 2017-08-19T19:27:25Z drmeister: But it's taking forever to connect on my system (sigh) 2017-08-19T19:27:49Z serviteur: https://cdn-01.anonfile.com/sb1dl0cab2/f4364f09-1503170991/2017-08-19-212348_1680x1050_scrot.png 2017-08-19T19:28:09Z drmeister: serviteur: For background - I'm deploying an application to design molecules. I'm testing the security without a key. 2017-08-19T19:28:31Z drmeister: serviteur: Thank you very much! That's what I was hoping to see. 2017-08-19T19:28:37Z serviteur: it's fast 2017-08-19T19:28:58Z drmeister: I won't bother you to go further - it deploys a lot of Javascript to visualize molecules. 2017-08-19T19:29:10Z serviteur: ok 2017-08-19T19:30:04Z klltkr joined #lisp 2017-08-19T19:31:54Z serviteur quit (Remote host closed the connection) 2017-08-19T19:32:58Z serviteur joined #lisp 2017-08-19T19:34:40Z shka quit (Ping timeout: 246 seconds) 2017-08-19T19:38:33Z sellout- joined #lisp 2017-08-19T19:48:19Z groovy2shoes joined #lisp 2017-08-19T19:49:53Z narendraj9 quit (Remote host closed the connection) 2017-08-19T19:51:13Z narendraj9 joined #lisp 2017-08-19T19:52:11Z vlatkoB_ quit (Remote host closed the connection) 2017-08-19T19:53:08Z DingoSaar_ joined #lisp 2017-08-19T19:53:32Z oleo quit (Read error: Connection reset by peer) 2017-08-19T19:54:04Z DingoSaar quit (Disconnected by services) 2017-08-19T19:54:16Z DingoSaar_ is now known as DingoSaar 2017-08-19T19:57:52Z attila_lendvai joined #lisp 2017-08-19T19:57:52Z attila_lendvai quit (Changing host) 2017-08-19T19:57:52Z attila_lendvai joined #lisp 2017-08-19T20:00:24Z manumanumanu joined #lisp 2017-08-19T20:01:04Z knicklux quit (Quit: Leaving) 2017-08-19T20:01:59Z oleo joined #lisp 2017-08-19T20:04:51Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-19T20:05:05Z EvW quit (Ping timeout: 246 seconds) 2017-08-19T20:05:10Z MetaHertz quit (Ping timeout: 255 seconds) 2017-08-19T20:06:01Z narendra` joined #lisp 2017-08-19T20:06:48Z narendraj9 quit (Ping timeout: 248 seconds) 2017-08-19T20:15:28Z defaultxr joined #lisp 2017-08-19T20:18:32Z varjag quit (Ping timeout: 248 seconds) 2017-08-19T20:25:32Z mson quit (Quit: Connection closed for inactivity) 2017-08-19T20:29:42Z EvW joined #lisp 2017-08-19T20:34:26Z knobo quit (Ping timeout: 240 seconds) 2017-08-19T20:36:19Z slyrus quit (Ping timeout: 240 seconds) 2017-08-19T20:36:22Z narendra` quit (Remote host closed the connection) 2017-08-19T20:40:48Z knobo joined #lisp 2017-08-19T20:48:56Z rRru quit (Quit: rRru) 2017-08-19T20:55:05Z neoncontrails quit (Remote host closed the connection) 2017-08-19T21:00:18Z random-nick quit (Remote host closed the connection) 2017-08-19T21:01:46Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-19T21:06:28Z akkad: can iota be used for larger C projects? like libosicat? 2017-08-19T21:13:42Z random-nick joined #lisp 2017-08-19T21:22:16Z sdemarre quit (Quit: Leaving.) 2017-08-19T21:29:34Z rRru joined #lisp 2017-08-19T21:31:11Z phinxy joined #lisp 2017-08-19T21:34:30Z pierpa joined #lisp 2017-08-19T21:37:26Z JuanDaugherty joined #lisp 2017-08-19T21:40:45Z knobo quit (Ping timeout: 240 seconds) 2017-08-19T21:44:17Z BitPuffin|osx joined #lisp 2017-08-19T21:51:37Z knicklux joined #lisp 2017-08-19T21:52:45Z bigos joined #lisp 2017-08-19T22:11:11Z rRru quit (Quit: rRru) 2017-08-19T22:20:04Z slyrus joined #lisp 2017-08-19T22:20:49Z pcell quit (Ping timeout: 276 seconds) 2017-08-19T22:21:09Z pcell joined #lisp 2017-08-19T22:22:15Z random-nick quit (Remote host closed the connection) 2017-08-19T22:22:47Z slyrus_ joined #lisp 2017-08-19T22:28:56Z thblt quit (Ping timeout: 246 seconds) 2017-08-19T22:38:09Z raynold joined #lisp 2017-08-19T22:52:13Z phinxy quit (Read error: Connection reset by peer) 2017-08-19T22:52:35Z phinxy joined #lisp 2017-08-19T22:52:58Z strelox quit (Remote host closed the connection) 2017-08-19T22:53:29Z phinxy quit (Client Quit) 2017-08-19T23:01:34Z mishoo quit (Ping timeout: 255 seconds) 2017-08-19T23:02:11Z serviteur quit (Remote host closed the connection) 2017-08-19T23:08:27Z quazimodo joined #lisp 2017-08-19T23:09:50Z attila_lendvai quit (Quit: Leaving.) 2017-08-19T23:17:57Z angavrilov quit (Remote host closed the connection) 2017-08-19T23:22:16Z gigetoo quit (Ping timeout: 255 seconds) 2017-08-19T23:23:23Z gigetoo joined #lisp 2017-08-19T23:29:53Z knicklux quit (Remote host closed the connection) 2017-08-19T23:45:38Z joeyfn quit (Remote host closed the connection) 2017-08-19T23:50:56Z bigos quit (Remote host closed the connection) 2017-08-19T23:53:57Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-19T23:58:06Z holycow joined #lisp 2017-08-19T23:59:52Z kozy quit (Remote host closed the connection) 2017-08-20T00:00:18Z kozy joined #lisp 2017-08-20T00:01:03Z Fare joined #lisp 2017-08-20T00:06:22Z keltvek quit (Ping timeout: 255 seconds) 2017-08-20T00:09:28Z kolko quit (Ping timeout: 248 seconds) 2017-08-20T00:43:15Z scymtym joined #lisp 2017-08-20T00:43:51Z neoncontrails joined #lisp 2017-08-20T00:48:08Z anticrisis joined #lisp 2017-08-20T00:48:25Z satran joined #lisp 2017-08-20T00:51:45Z satran_ quit (Ping timeout: 240 seconds) 2017-08-20T00:54:50Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T01:03:54Z klltkr joined #lisp 2017-08-20T01:17:43Z ebzzry_ joined #lisp 2017-08-20T01:18:27Z brendyn joined #lisp 2017-08-20T01:20:01Z d4ryus2 joined #lisp 2017-08-20T01:22:48Z d4ryus1 quit (Ping timeout: 240 seconds) 2017-08-20T01:23:14Z EvW quit (Ping timeout: 246 seconds) 2017-08-20T01:26:15Z scymtym quit (Ping timeout: 240 seconds) 2017-08-20T01:33:39Z safe joined #lisp 2017-08-20T01:41:04Z keviv joined #lisp 2017-08-20T01:41:06Z keviv quit (Client Quit) 2017-08-20T01:43:26Z marvin2 quit (Ping timeout: 240 seconds) 2017-08-20T01:48:45Z quazimodo quit (Read error: Connection reset by peer) 2017-08-20T02:06:54Z jamtho_ joined #lisp 2017-08-20T02:08:13Z slyrus quit (Read error: Connection reset by peer) 2017-08-20T02:10:02Z sjl joined #lisp 2017-08-20T02:10:13Z slyrus joined #lisp 2017-08-20T02:13:26Z slyrus quit (Read error: Connection reset by peer) 2017-08-20T02:15:03Z pierpa quit (Quit: Page closed) 2017-08-20T02:17:28Z slyrus joined #lisp 2017-08-20T02:17:55Z karswell_ joined #lisp 2017-08-20T02:27:11Z Fare quit (Ping timeout: 240 seconds) 2017-08-20T02:29:13Z Fare joined #lisp 2017-08-20T02:30:14Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-20T02:32:15Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T02:44:46Z sjl quit (Ping timeout: 255 seconds) 2017-08-20T02:47:05Z Karl_Dscc quit (Remote host closed the connection) 2017-08-20T02:51:52Z jameser joined #lisp 2017-08-20T02:54:21Z sjl joined #lisp 2017-08-20T02:54:52Z slyrus quit (Read error: Connection reset by peer) 2017-08-20T03:02:03Z slyrus joined #lisp 2017-08-20T03:07:09Z dddddd quit (Remote host closed the connection) 2017-08-20T03:12:28Z benaph joined #lisp 2017-08-20T03:18:32Z rngoodn joined #lisp 2017-08-20T03:21:09Z scymtym joined #lisp 2017-08-20T03:22:11Z benaph left #lisp 2017-08-20T03:33:57Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T03:41:22Z sellout- quit (Quit: Leaving.) 2017-08-20T03:41:35Z sellout- joined #lisp 2017-08-20T03:42:06Z sellout- quit (Client Quit) 2017-08-20T03:42:25Z sellout- joined #lisp 2017-08-20T03:42:54Z sellout- quit (Client Quit) 2017-08-20T03:43:10Z sellout- joined #lisp 2017-08-20T03:43:43Z sellout- quit (Client Quit) 2017-08-20T03:43:58Z sellout- joined #lisp 2017-08-20T03:44:31Z sellout- quit (Client Quit) 2017-08-20T03:44:45Z sellout- joined #lisp 2017-08-20T03:45:19Z sellout- quit (Client Quit) 2017-08-20T03:45:31Z kozy quit (Ping timeout: 240 seconds) 2017-08-20T03:55:49Z jameser joined #lisp 2017-08-20T03:56:43Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-20T03:58:44Z sjl quit (Ping timeout: 240 seconds) 2017-08-20T04:08:36Z nodoko_ joined #lisp 2017-08-20T04:08:38Z kozy joined #lisp 2017-08-20T04:08:48Z ryanwatkins quit (Ping timeout: 240 seconds) 2017-08-20T04:10:21Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T04:13:57Z jameser joined #lisp 2017-08-20T04:23:12Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T04:28:31Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T04:29:08Z klltkr joined #lisp 2017-08-20T04:29:19Z klltkr quit (Client Quit) 2017-08-20T04:29:45Z vtomole joined #lisp 2017-08-20T04:30:30Z vtomole quit (Client Quit) 2017-08-20T04:47:09Z slyrus quit (Read error: Connection reset by peer) 2017-08-20T04:54:29Z slyrus joined #lisp 2017-08-20T04:59:34Z holycow quit (Quit: Lost terminal) 2017-08-20T05:02:05Z nodoko_ quit (Quit: Page closed) 2017-08-20T05:08:44Z CrLF0710 joined #lisp 2017-08-20T05:13:31Z beach: Good morning everyone! 2017-08-20T05:16:29Z mishoo joined #lisp 2017-08-20T05:19:55Z fiddlerwoaroof: akkad: didn't they use it to run doom on Mezzano, or something? 2017-08-20T05:22:28Z LooneyTunes joined #lisp 2017-08-20T05:25:49Z angavrilov joined #lisp 2017-08-20T05:32:46Z nsrahmad joined #lisp 2017-08-20T05:32:48Z Bike quit (Ping timeout: 240 seconds) 2017-08-20T05:35:18Z CrLF0710 quit (Quit: Mutter: www.mutterirc.com) 2017-08-20T05:38:32Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T05:38:48Z pcell quit (Ping timeout: 240 seconds) 2017-08-20T05:52:18Z nsrahmad quit (Ping timeout: 240 seconds) 2017-08-20T06:06:25Z CrLF0710 joined #lisp 2017-08-20T06:18:05Z nsrahmad joined #lisp 2017-08-20T06:18:18Z terpri quit (Ping timeout: 240 seconds) 2017-08-20T06:19:19Z DeadTrickster joined #lisp 2017-08-20T06:26:34Z nsrahmad quit (Quit: Leaving) 2017-08-20T06:30:40Z mishoo quit (Ping timeout: 255 seconds) 2017-08-20T06:36:33Z doesthiswork quit (Quit: Leaving.) 2017-08-20T06:42:54Z FreeBirdLjj joined #lisp 2017-08-20T06:43:26Z slyrus quit (Read error: Connection reset by peer) 2017-08-20T06:44:38Z slyrus joined #lisp 2017-08-20T06:48:53Z mishoo joined #lisp 2017-08-20T06:50:21Z knobo joined #lisp 2017-08-20T06:50:25Z DingoSaar quit (Ping timeout: 240 seconds) 2017-08-20T06:55:53Z jameser joined #lisp 2017-08-20T06:57:26Z mishoo quit (Ping timeout: 248 seconds) 2017-08-20T07:02:33Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T07:03:14Z shka joined #lisp 2017-08-20T07:04:37Z dfrkp joined #lisp 2017-08-20T07:05:14Z dfrkp: Hi! can someone please help me to understand why the following line throws a wrong parameter error: (setq jedi:server-args '("--sys-path" (projectile-project-root))) ; but (setq jedi:server-args '("--sys-path" "/some/path") works as expected? 2017-08-20T07:06:02Z kini quit (Ping timeout: 260 seconds) 2017-08-20T07:09:13Z safe quit (Read error: Connection reset by peer) 2017-08-20T07:09:14Z kini joined #lisp 2017-08-20T07:09:40Z beach: dfrkp: Did you expect (projectile-project-root) to be evaluated? 2017-08-20T07:10:09Z beach: dfrkp: Because it is inside a quote '("..." (projectile-project-root)) it is not evaluated. 2017-08-20T07:10:43Z beach: dfrkp: Perhaps you want a backquote? (setq jedi:server-args `("--sys-path" 2017-08-20T07:10:43Z beach: ,(projectile-project-root))) ? 2017-08-20T07:11:40Z dfrkp: beach: Honestly I did not know about backquote. I will try it right now (have to restart emacs, but will rejoin the channel asap) 2017-08-20T07:12:02Z beach: Oh, is this Emacs Lisp? 2017-08-20T07:12:02Z dfrkp quit (Remote host closed the connection) 2017-08-20T07:12:43Z dfrkp joined #lisp 2017-08-20T07:13:13Z dfrkp: beach: unfortunately I'm now getting a new error: deferred error : (wrong-type-argument stringp (\, (projectile-project-root))) 2017-08-20T07:14:58Z dfrkp: beach: Here's the surrounding code, to give some context: http://paste.lisp.org/display/353876 2017-08-20T07:16:55Z beach: dfrkp: Is this Emacs Lisp? 2017-08-20T07:17:21Z DingoSaar joined #lisp 2017-08-20T07:17:24Z dfrkp: beach: yes 2017-08-20T07:17:28Z slyrus quit (Read error: Connection reset by peer) 2017-08-20T07:17:36Z beach: dfrkp: This channel is dedicated to Common Lisp, so I answered you as if it were. 2017-08-20T07:17:38Z beach: Sorry. 2017-08-20T07:17:52Z dfrkp: no worries, should have mentioned it... 2017-08-20T07:18:22Z beach: You may try (list "..." (projectile-project-root)) instead. 2017-08-20T07:18:34Z beach: In case Emacs Lisp doesn't have backquote. 2017-08-20T07:18:47Z beach: Anyway, I need to go. Good luck. 2017-08-20T07:18:52Z beach quit (Remote host closed the connection) 2017-08-20T07:19:03Z dfrkp: beach: alright, thanks a lot 2017-08-20T07:19:06Z dfrkp left #lisp 2017-08-20T07:21:33Z damke joined #lisp 2017-08-20T07:26:56Z slyrus joined #lisp 2017-08-20T07:30:03Z sdemarre joined #lisp 2017-08-20T07:31:29Z anticrisis joined #lisp 2017-08-20T07:35:20Z LooneyTunes quit (Ping timeout: 240 seconds) 2017-08-20T07:44:13Z DingoSaar quit (Remote host closed the connection) 2017-08-20T07:44:57Z DingoSaar joined #lisp 2017-08-20T07:47:25Z defaultxr quit (Ping timeout: 240 seconds) 2017-08-20T07:53:00Z safe joined #lisp 2017-08-20T07:56:38Z slyrus quit (Read error: Connection reset by peer) 2017-08-20T08:00:09Z rippa joined #lisp 2017-08-20T08:00:34Z slyrus joined #lisp 2017-08-20T08:01:13Z _main_ joined #lisp 2017-08-20T08:01:24Z voidlily quit (Remote host closed the connection) 2017-08-20T08:01:30Z _main_ quit (Read error: Connection reset by peer) 2017-08-20T08:01:40Z __main__ quit (Read error: No route to host) 2017-08-20T08:02:18Z _main_ joined #lisp 2017-08-20T08:03:16Z _main_ quit (Read error: Connection reset by peer) 2017-08-20T08:03:56Z voidlily joined #lisp 2017-08-20T08:04:18Z __main__ joined #lisp 2017-08-20T08:14:54Z vlatkoB joined #lisp 2017-08-20T08:15:07Z terpri joined #lisp 2017-08-20T08:16:42Z jameser joined #lisp 2017-08-20T08:19:52Z fiddlerwoaroof: I think this is an interesting way of implementing extensible pattern-matching: https://github.com/fiddlerwoaroof/fwoar.lisputils/blob/master/patmatch.lisp 2017-08-20T08:21:14Z fiddlerwoaroof: Basically, you pick a symbol to use as the discriminator and then you use find-class and class-prototype to get the class named by the symbol. Then, you pass that prototype object into a generic function with the APPEND method combination 2017-08-20T08:22:06Z fiddlerwoaroof: That way, you can specify how the base class's slots are destructured in one method definition and how the class's slots are destructured in another. 2017-08-20T08:22:25Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-20T08:23:15Z fiddlerwoaroof: I don't think it's anything particularly special, but it seems to me that generic functions could be very useful for writing macros that need to be extensible 2017-08-20T08:23:16Z ebzzry_ joined #lisp 2017-08-20T08:34:55Z shka: fiddlerwoaroof: indeed 2017-08-20T08:46:14Z knobo quit (Ping timeout: 240 seconds) 2017-08-20T09:08:20Z thblt joined #lisp 2017-08-20T09:08:24Z MrBusiness quit (Ping timeout: 246 seconds) 2017-08-20T09:09:47Z Karl_Dscc joined #lisp 2017-08-20T09:12:45Z nirved joined #lisp 2017-08-20T09:18:46Z shka quit (Quit: Konversation terminated!) 2017-08-20T09:20:38Z knicklux joined #lisp 2017-08-20T09:22:45Z shka joined #lisp 2017-08-20T09:24:16Z varjag joined #lisp 2017-08-20T09:28:03Z damke quit (Read error: Connection reset by peer) 2017-08-20T09:29:28Z damke joined #lisp 2017-08-20T09:30:32Z CrLF0710 quit (Quit: Mutter: www.mutterirc.com) 2017-08-20T09:31:04Z safe quit (Quit: Leaving) 2017-08-20T09:32:26Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-20T09:34:45Z damke_ joined #lisp 2017-08-20T09:34:51Z damke quit (Ping timeout: 240 seconds) 2017-08-20T09:39:20Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T09:42:36Z random-nick joined #lisp 2017-08-20T09:45:57Z jameser joined #lisp 2017-08-20T09:47:26Z akr joined #lisp 2017-08-20T09:48:35Z akr: hello, I need to install an old version of slime (slime-20140829-git) 2017-08-20T09:48:42Z akr: any tips on how I do this 2017-08-20T09:49:05Z akr: I need this to connect from emacs to a running lisp system 2017-08-20T09:54:02Z akr: because apparently when I try to connect with slime 2.19, there is an issue 2017-08-20T09:54:55Z attila_lendvai joined #lisp 2017-08-20T09:54:55Z attila_lendvai quit (Changing host) 2017-08-20T09:54:55Z attila_lendvai joined #lisp 2017-08-20T09:56:50Z raynold quit (Quit: Connection closed for inactivity) 2017-08-20T09:57:45Z jameser_ joined #lisp 2017-08-20T09:58:50Z nirved is now known as nirved_afk 2017-08-20T09:59:50Z jameser quit (Ping timeout: 248 seconds) 2017-08-20T10:01:01Z Th30n joined #lisp 2017-08-20T10:02:05Z Xach: akr: you could use git to find a commit from that date and try that. 2017-08-20T10:02:42Z akr: hmm ok I guess it's more of an emacs question than a lisp one 2017-08-20T10:03:00Z akr: XachX: I've been using spacemacs and I'm not sure how to make this work 2017-08-20T10:03:05Z knobo joined #lisp 2017-08-20T10:03:17Z akr: normally I just use the common-lisp layer which installs a bunch of other packages 2017-08-20T10:03:25Z akr: including slime 2017-08-20T10:04:09Z Xach: The question of how to load a project from a source directory? 2017-08-20T10:05:29Z akr: no, the system is already running 2017-08-20T10:05:36Z akr: I just want to connect 2017-08-20T10:05:46Z akr: why isn't slime backwards-compatible :( 2017-08-20T10:05:58Z Xach: Which step is giving you trouble? 2017-08-20T10:06:18Z Xach: Regarding getting the old SLIME. 2017-08-20T10:06:33Z akr: I'm not sure how to install it in spacemacs 2017-08-20T10:07:47Z Xach: I don't know what spacemacs is, but in emacs in general, you push do this: https://common-lisp.net/project/slime/doc/html/Installation.html#Installation 2017-08-20T10:07:57Z Xach: (extra "push" there) 2017-08-20T10:08:12Z Xach: the 2.3.1 bit 2017-08-20T10:08:27Z Karl_Dscc quit (Remote host closed the connection) 2017-08-20T10:08:36Z akr: that's helpful, thank you 2017-08-20T10:10:44Z akr: previous to this I actually tried to update slime in the project, but when I got the new version, compilation started failing 2017-08-20T10:11:08Z akr: is it to be expected that slime-2.19 wouldn't work with SBCL 1.1.14? 2017-08-20T10:11:28Z Xach: akr: not surprising. 1.1.14 is very very old. 2017-08-20T10:12:51Z akr: it's what they ship with ubuntu 14.04 LTS 2017-08-20T10:13:14Z akr: but yes, it would be painful to upgrade all the dependencies anyway... 2017-08-20T10:19:12Z akr: when connecting remotely to a system running a certain version of SBCL, do I need the same version of SBCL on both machines? 2017-08-20T10:19:23Z BitPuffin|osx quit (Remote host closed the connection) 2017-08-20T10:20:04Z BitPuffin|osx joined #lisp 2017-08-20T10:20:39Z grublet quit (Ping timeout: 255 seconds) 2017-08-20T10:23:01Z zulu_inuoe: akr: You don't need SBCL at all on your slime system if you're just connecting 2017-08-20T10:24:35Z akr: ah, sweet 2017-08-20T10:24:46Z akr: I got it working on a single machine now :) 2017-08-20T10:24:54Z akr: I'll try connecting from a remote machine now 2017-08-20T10:33:20Z jameser_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T10:34:08Z jameser joined #lisp 2017-08-20T10:35:15Z jameser quit (Client Quit) 2017-08-20T10:38:04Z jameser joined #lisp 2017-08-20T10:38:31Z akr: hmm, there's something wring with auto-completion 2017-08-20T10:38:33Z akr: wrong 2017-08-20T10:39:42Z akr uploaded an image: slime.png (86KB) 2017-08-20T10:44:48Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T10:45:05Z test1600 joined #lisp 2017-08-20T10:51:07Z attila_lendvai quit (Quit: Leaving.) 2017-08-20T10:57:57Z jamtho_ joined #lisp 2017-08-20T11:01:31Z damke joined #lisp 2017-08-20T11:02:52Z troydm joined #lisp 2017-08-20T11:03:05Z damke_ quit (Ping timeout: 246 seconds) 2017-08-20T11:05:23Z jameser joined #lisp 2017-08-20T11:07:03Z jameser quit (Client Quit) 2017-08-20T11:08:12Z EvW1 joined #lisp 2017-08-20T11:15:35Z Th30n quit (Remote host closed the connection) 2017-08-20T11:16:17Z Th30n joined #lisp 2017-08-20T11:31:34Z dddddd joined #lisp 2017-08-20T11:59:00Z EvW1 quit (Ping timeout: 240 seconds) 2017-08-20T12:01:25Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-20T12:01:51Z MrBusiness joined #lisp 2017-08-20T12:04:16Z EvW joined #lisp 2017-08-20T12:08:14Z knobo quit (Ping timeout: 240 seconds) 2017-08-20T12:12:49Z jameser joined #lisp 2017-08-20T12:16:31Z Fare quit (Ping timeout: 240 seconds) 2017-08-20T12:17:16Z Bike joined #lisp 2017-08-20T12:24:56Z lexicall joined #lisp 2017-08-20T12:27:18Z DingoSaar quit (Remote host closed the connection) 2017-08-20T12:27:26Z Fare joined #lisp 2017-08-20T12:28:50Z DingoSaar joined #lisp 2017-08-20T12:29:37Z EvW quit (Ping timeout: 246 seconds) 2017-08-20T12:29:50Z lexicall quit (Quit: Ah, my macbook is gonna sleep!) 2017-08-20T12:39:04Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T12:39:13Z teggi joined #lisp 2017-08-20T12:39:26Z jameser joined #lisp 2017-08-20T12:41:17Z X-Scale joined #lisp 2017-08-20T12:42:51Z pcell joined #lisp 2017-08-20T12:46:38Z X-Scale left #lisp 2017-08-20T13:00:23Z doesthiswork joined #lisp 2017-08-20T13:01:39Z damke_ joined #lisp 2017-08-20T13:03:31Z damke quit (Ping timeout: 240 seconds) 2017-08-20T13:11:29Z dpg joined #lisp 2017-08-20T13:11:58Z myrkraverk joined #lisp 2017-08-20T13:12:31Z Fare quit (Ping timeout: 240 seconds) 2017-08-20T13:12:42Z sellout- joined #lisp 2017-08-20T13:19:48Z rngoodn joined #lisp 2017-08-20T13:19:49Z dpg quit (Ping timeout: 248 seconds) 2017-08-20T13:26:05Z Achylles joined #lisp 2017-08-20T13:32:02Z terpri quit (Quit: Leaving) 2017-08-20T13:35:16Z DingoSaar quit (Remote host closed the connection) 2017-08-20T13:36:37Z DingoSaar joined #lisp 2017-08-20T13:38:09Z handlex joined #lisp 2017-08-20T13:39:04Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T13:41:05Z nirved_afk is now known as nirved 2017-08-20T13:44:25Z Karl_Dscc joined #lisp 2017-08-20T13:50:26Z handlex quit (Quit: handlex) 2017-08-20T13:59:26Z test1600 quit (Quit: Leaving) 2017-08-20T14:01:42Z Fare joined #lisp 2017-08-20T14:01:47Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-20T14:01:49Z glamas joined #lisp 2017-08-20T14:04:55Z sellout- quit (Quit: Leaving.) 2017-08-20T14:07:19Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-08-20T14:07:38Z keviv joined #lisp 2017-08-20T14:11:53Z grumble quit (Quit: dy) 2017-08-20T14:12:13Z grumble joined #lisp 2017-08-20T14:17:39Z pokerdio joined #lisp 2017-08-20T14:21:24Z pokerdio left #lisp 2017-08-20T14:23:13Z glamas quit (Ping timeout: 240 seconds) 2017-08-20T14:25:00Z damke_ quit (Read error: Connection reset by peer) 2017-08-20T14:25:40Z glamas joined #lisp 2017-08-20T14:33:12Z felipedvorak quit (Ping timeout: 276 seconds) 2017-08-20T14:34:31Z Khisanth quit (Ping timeout: 248 seconds) 2017-08-20T14:38:56Z safe joined #lisp 2017-08-20T14:39:15Z zaoqi joined #lisp 2017-08-20T14:44:15Z varjag quit (Ping timeout: 276 seconds) 2017-08-20T14:45:01Z felipedvorak joined #lisp 2017-08-20T14:46:23Z zaoqi: How can I implement microKanren with fair conjunction? 2017-08-20T14:46:27Z random-nick quit (Remote host closed the connection) 2017-08-20T14:47:19Z damke_ joined #lisp 2017-08-20T14:47:28Z Khisanth joined #lisp 2017-08-20T14:49:00Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T14:49:49Z random-nick joined #lisp 2017-08-20T14:51:54Z skeuomorf joined #lisp 2017-08-20T15:00:17Z Mon_Ouie joined #lisp 2017-08-20T15:02:50Z zulu_inuoe: Hello all. If anyone has experience using the fast-io library: How can I tell I've reached EOF on a buffer when using the multi-byte reads? the fast-read-byte function has eof-error-p and eof-value parameters, but I'm not seeing any such for the multi-byte reads (readu32-le, etc) 2017-08-20T15:03:38Z glamas quit (Remote host closed the connection) 2017-08-20T15:09:05Z glv joined #lisp 2017-08-20T15:10:52Z varjag joined #lisp 2017-08-20T15:17:48Z paule32 joined #lisp 2017-08-20T15:18:03Z paule32: hello 2017-08-20T15:18:12Z paule32: i need help with this: http://paste.lisp.org/display/353902 2017-08-20T15:18:40Z paule32: i would try to construct a schema of a electrical item 2017-08-20T15:18:46Z zaoqi quit (Quit: zaoqi) 2017-08-20T15:19:11Z paule32: so, s0plus s0minus shall be check, if they are 0 or 1 - energy on of off 2017-08-20T15:20:03Z paule32: if both s0plus, and s0minus are true ( 1 1 ) then "on" should be the state 2017-08-20T15:20:48Z paule32: "on" gets itself true T, if the ring is 1 1 2017-08-20T15:21:01Z paule32: how can i solve it? 2017-08-20T15:21:40Z some-user joined #lisp 2017-08-20T15:21:43Z some-user: hello 2017-08-20T15:22:04Z paule32: hi 2017-08-20T15:22:20Z Bike: i don't understand, paule32 . you want an AND gate? 2017-08-20T15:22:37Z some-user: how to eval last exp from package A while my slime-repl is in package B? 2017-08-20T15:23:17Z Fade joined #lisp 2017-08-20T15:23:19Z paule32: Bike: ehm, yes, when s0plus and s0minus connect together, then machine on 2017-08-20T15:23:24Z some-user: even slime-eval-last-expression-in-repl switches repl's current package to A eval exp and then switches back to B 2017-08-20T15:23:25Z paule32: else off 2017-08-20T15:24:14Z Bike: some-user: you can use in-package to change *package* appropriately. 2017-08-20T15:25:18Z nirved quit (Quit: Leaving) 2017-08-20T15:25:54Z Bike: paule32: i don't want to write your whole program. but you can use if for conditionanls, and eql to test whether two things are the same. that seems like it's probably enough. 2017-08-20T15:26:49Z paule32: can it be coded so, that i can iterate reverse of list's ? 2017-08-20T15:26:59Z strelox joined #lisp 2017-08-20T15:27:47Z paule32: ok, stupid 2017-08-20T15:37:16Z sellout- joined #lisp 2017-08-20T15:41:18Z EvW joined #lisp 2017-08-20T15:41:19Z shka: ,seen beach 2017-08-20T15:41:28Z shka: ,clhs pop 2017-08-20T15:41:34Z shka: !clhs pop 2017-08-20T15:41:57Z shka: heh 2017-08-20T15:42:04Z jackdaniel: clhs pop 2017-08-20T15:42:04Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_pop.htm 2017-08-20T15:42:06Z shka: i will never learn to use this bot 2017-08-20T15:42:14Z shka: jackdaniel: thank you! 2017-08-20T15:42:16Z shka: seen beach 2017-08-20T15:42:20Z shka: last beach 2017-08-20T15:42:28Z shka: i guess no such feature 2017-08-20T15:45:24Z jackdaniel: he was last seen 5y6m14d32h43m10s ago, check this out 2017-08-20T15:45:29Z jackdaniel: minion: seen beach 2017-08-20T15:45:30Z minion: Would you /please/ stop playing with me? 3 messages in 59 seconds is too many. 2017-08-20T15:45:42Z jackdaniel: heh 2017-08-20T15:46:14Z shka: jackdaniel: i guess minion has rejected you 2017-08-20T15:46:22Z shka: (on nil) |# 2017-08-20T18:18:35Z pjb: paule32: you can use directly on and off instead of 1 and 0. 2017-08-20T18:18:51Z pjb: (or t and nil, of course). 2017-08-20T18:19:04Z paule32: ok 2017-08-20T18:21:15Z Bike joined #lisp 2017-08-20T18:21:29Z bjdaro joined #lisp 2017-08-20T18:32:38Z bjdaro quit (Quit: Mutter: www.mutterirc.com) 2017-08-20T18:33:23Z mishoo joined #lisp 2017-08-20T18:36:08Z voidlily quit (Remote host closed the connection) 2017-08-20T18:37:02Z mishoo quit (Remote host closed the connection) 2017-08-20T18:37:23Z mishoo joined #lisp 2017-08-20T18:38:35Z bjdaro joined #lisp 2017-08-20T18:40:11Z paule32: (defun stromquelle (plus minus) 2017-08-20T18:40:11Z paule32: (list (if (= (check-and plus minus) 0) 0 2017-08-20T18:40:11Z paule32: (if (= (check-and plus minus) 1) 2))) ; *** - =: (2) is not a number 2017-08-20T18:41:26Z pjb: paule32: it would be helpful and destressing for us, to know what you want to achieve exactly. 2017-08-20T18:41:52Z bjdaro quit (Remote host closed the connection) 2017-08-20T18:42:04Z pjb: paule32: and read what I wrote above about copy-and-paste. 2017-08-20T18:43:12Z voidlily joined #lisp 2017-08-20T18:59:22Z bjdaro joined #lisp 2017-08-20T19:00:47Z paule32: i have no full program 2017-08-20T19:00:59Z paule32: i still in learning lisp 2017-08-20T19:01:32Z paule32: my ittention at the moment is to code a electrical circuit plan 2017-08-20T19:01:47Z paule32: so i have a energy source 2017-08-20T19:01:58Z paule32: with plus and minus inputs/outputs 2017-08-20T19:02:01Z voidlily quit (Remote host closed the connection) 2017-08-20T19:02:49Z pjb: Do you want to simulate it symbolically, or physically? 2017-08-20T19:03:10Z paule32: symulate with computer 2017-08-20T19:03:28Z pjb: Do you want to simulate the voltages and amperage or the logic? 2017-08-20T19:03:40Z bjdaro quit (Remote host closed the connection) 2017-08-20T19:04:00Z paule32: both, but at the moment, i play with lisp how to implement it 2017-08-20T19:04:04Z voidlily joined #lisp 2017-08-20T19:04:26Z akr left #lisp 2017-08-20T19:04:56Z pjb: ok. Have fun. Also, read http://web.mit.edu/alexmv/6.037/sicp.pdf ; it has a section about such a simulator. 2017-08-20T19:07:40Z antoszka: paule32: also, that snippet of code is either missing a closing paren after the first if, or is indented misleadingly :). As pjb said it'd be easier if you told us what the intention is. 2017-08-20T19:08:07Z attila_lendvai joined #lisp 2017-08-20T19:10:20Z paule32: the intention is to rollup lisp and learn 2017-08-20T19:11:29Z caffe: or smoke it 2017-08-20T19:13:08Z antoszka: paule32: please also join #clnoobs for basic learning questions, might be a better place for initial advice. 2017-08-20T19:15:03Z vlatkoB_ quit (Remote host closed the connection) 2017-08-20T19:17:11Z raynold joined #lisp 2017-08-20T19:21:26Z marvin2 joined #lisp 2017-08-20T19:30:26Z klltkr joined #lisp 2017-08-20T19:31:55Z Achylles joined #lisp 2017-08-20T19:34:41Z ebrasca joined #lisp 2017-08-20T19:34:46Z ebrasca: phoe: hi 2017-08-20T19:36:48Z anticrisis joined #lisp 2017-08-20T19:38:05Z scymtym quit (Read error: No route to host) 2017-08-20T19:38:17Z knobo quit (Ping timeout: 240 seconds) 2017-08-20T19:38:58Z scymtym joined #lisp 2017-08-20T19:40:53Z mson quit (Quit: Connection closed for inactivity) 2017-08-20T19:43:40Z optikalmouse joined #lisp 2017-08-20T19:44:48Z anticrisis: Is there an advantage to using the style where LABELS is used to create a single function for a recursive algorithm, versus recurring on the top-level function itself, or another top-level utility function? E.g. the GROUP and FLATTEN functions in LoL? I suppose it keeps the top-level namespace cleaner, but what does that matter since we only :export the main entry points? 2017-08-20T19:44:54Z ebrasca: is #lispweb active? 2017-08-20T19:46:31Z Bike: anticrisis: there may also be a performance advantage as the compiler has everything at once. but it's not a big deal. 2017-08-20T19:46:43Z ebrasca: How to have ningle with ajax? 2017-08-20T19:46:49Z ebrasca: I can only find tutorials for ajax in Hunchentoot. 2017-08-20T19:47:00Z anticrisis: I was wondering about performance... but it's mainly a style preference, then? 2017-08-20T19:47:29Z H4ns: anticrisis: a local function is useful if you want to close over local variables. 2017-08-20T19:47:54Z H4ns: anticrisis: and if you want to close over local variables with mutual recursion, you need LABELS instead of FLET 2017-08-20T19:52:36Z aeth: I tend to use inlined trivial functions at the top level instead of flet. Recursive functions would complicate things. 2017-08-20T19:53:16Z DingoSaar_ joined #lisp 2017-08-20T19:53:35Z aeth: If you think you need simple recursion, see if you can rewrite it with a 0-body do. Scheme actually implements do through tail recursion, and the transformation isn't that complicated. 2017-08-20T19:54:40Z anticrisis: (trying to understand "0-body do") 2017-08-20T19:54:57Z shka: anticrisis: i consider "cleaner" to be main selling point 2017-08-20T19:55:53Z H4ns: DO and "clean" don't blend well. 2017-08-20T19:56:19Z shka: was refering to recursive labels 2017-08-20T19:56:27Z ebrasca: DO is good 2017-08-20T19:56:28Z danieli joined #lisp 2017-08-20T19:56:47Z shka: as for do, sometimes it is actually quite handy 2017-08-20T19:57:03Z DingoSaar quit (Ping timeout: 255 seconds) 2017-08-20T19:57:18Z ebrasca: DO dometimes is hard to read. 2017-08-20T19:57:34Z ebrasca: sometimes* 2017-08-20T19:57:45Z jackdaniel: for sure construct one doesn't use often may look unreadable, but it's the audience problem (ever heard people complaining about "counting parenthesies")? 2017-08-20T19:58:58Z ebrasca: yea people sometimes say to me it have to much of (). 2017-08-20T19:59:20Z shka: (((what a shame))) 2017-08-20T19:59:23Z shka: :P 2017-08-20T19:59:26Z shka: good night all 2017-08-20T19:59:34Z jackdaniel: s/shame/scheme/ 2017-08-20T19:59:41Z ebrasca: shka: bye o/ 2017-08-20T19:59:42Z jackdaniel: otherwise it's an error to write that 2017-08-20T20:01:59Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-08-20T20:01:59Z AlphaAtom joined #lisp 2017-08-20T20:06:12Z eazar001 joined #lisp 2017-08-20T20:06:54Z shka quit (Ping timeout: 240 seconds) 2017-08-20T20:09:42Z ebrasca quit (Remote host closed the connection) 2017-08-20T20:10:31Z gauss joined #lisp 2017-08-20T20:10:41Z gauss: Hello 2017-08-20T20:10:51Z gauss: How does one learn how to implement CAS and theorem provers? 2017-08-20T20:11:14Z scymtym quit (Read error: No route to host) 2017-08-20T20:11:36Z scymtym joined #lisp 2017-08-20T20:11:49Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-20T20:12:02Z eazar001 joined #lisp 2017-08-20T20:16:20Z AlphaAtom quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-20T20:16:25Z aeth: Both are very difficult. 2017-08-20T20:16:41Z edgar-rft: gauss: PAIP has some extensively explained examples: 2017-08-20T20:17:13Z DingoSaar_ is now known as DingoSaar 2017-08-20T20:17:29Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-20T20:17:40Z skeuomorf: edgar-rft: I *knew* about PAIP but was sorta hoping for something more focused and concise, alas, if my search fails, guess that's wher I am going 2017-08-20T20:17:45Z skeuomorf: aeth: Yupe 2017-08-20T20:17:59Z skeuomorf: hope gauss can enlighten us 2017-08-20T20:18:10Z skeuomorf: with his *own* search 2017-08-20T20:18:17Z Bike: i don't know that PAIP would be super helpful with a modern CAS... 2017-08-20T20:18:23Z Bike: for a modern* 2017-08-20T20:18:29Z gauss: I knew about PAIP too 2017-08-20T20:18:30Z Bike: i guess it's a start 2017-08-20T20:18:38Z gauss: but yes, as Bike says, it's not modern 2017-08-20T20:18:58Z gauss: Was asking here cause I know lisp folks doodle in that sort of thing 2017-08-20T20:19:01Z easye quit (Read error: Connection reset by peer) 2017-08-20T20:19:31Z gauss: skeuomorf: You're in the same boat? 2017-08-20T20:19:50Z skeuomorf: skeuomorf: haha, sorta 2017-08-20T20:19:58Z skeuomorf: gauss: ugh 2017-08-20T20:20:04Z skeuomorf: gauss: sorta 2017-08-20T20:20:07Z aeth: gauss: CAS fit into two categories, symbolic and numeric. Symbolic was traditionally the domain of Lisp, and there's even one called Maxima that's still around today (but probably mostly out of date compared to some commercial or modern project) 2017-08-20T20:20:19Z aeth: Numeric CAS was the traditional domain of Fortran. 2017-08-20T20:20:47Z Bike: uh... CAS is computer _algebra_, yes? it's symbolic. 2017-08-20T20:21:08Z edgar-rft: gauss, skeuomorf: the Axiom book has also lots of details, PDF free available under "Documentation" here: 2017-08-20T20:21:38Z skeuomorf: gauss: Have you looked at things like the "Handbook of automated reasoning"? 2017-08-20T20:21:42Z minion quit (Ping timeout: 248 seconds) 2017-08-20T20:21:43Z specbot quit (Ping timeout: 240 seconds) 2017-08-20T20:22:09Z skeuomorf: gauss: I have to clarify, I was wondering if someone was working on a modern CAS in lisp 2017-08-20T20:22:16Z aeth: You would probably need a team of about 10 people with mixed comp sci, mathematics academic backgrounds. 2017-08-20T20:22:38Z aeth: Not impossible to do FOSS over the Internet, but not trivial 2017-08-20T20:22:47Z gauss: edgar-rft: Thanks, looks interesting 2017-08-20T20:23:08Z gauss: skeuomorf: Oh, I am just trying to get started learning the basics, that "handbook" looks very interesting, thanks 2017-08-20T20:23:34Z aeth: If you're doing it in pure Lisp, you'd probably need an SBCL developer on board, too, because there's almost certainly some things that need to be done at the compiler level to make CL more CAS-friendly. 2017-08-20T20:23:52Z skeuomorf: gauss: Since this is a lisp channel, you should also look at "The reasoned schemer" and "the little prover" 2017-08-20T20:24:19Z edgar-rft: skeuomorf, what is a "modern" CAS? (meant serious, not a joke) 2017-08-20T20:24:50Z skeuomorf: edgar-rft: oh, I mean something that was started recently :) 2017-08-20T20:24:51Z aeth: edgar-rft: I'm guessing modern would be something that used the last 27 years of research that has happened since the 80s ended. 2017-08-20T20:25:03Z skeuomorf: aeth: ^ 2017-08-20T20:25:05Z skeuomorf: ugh 2017-08-20T20:25:08Z skeuomorf: edgar-rft: ^ 2017-08-20T20:25:19Z eazar001 quit (Ping timeout: 240 seconds) 2017-08-20T20:25:32Z skeuomorf is confused by his new emacs colorscheme 2017-08-20T20:25:54Z skeuomorf it's affecting his sense of identity apparently 2017-08-20T20:26:17Z edgar-rft: skeuomorf, aeth: I need more details. I'm an electrician, not a math professor. 2017-08-20T20:26:24Z wooden quit (Ping timeout: 240 seconds) 2017-08-20T20:26:59Z Bike: like, in PAIP integration is an AI problem. nowadays we have the risch algorithm 2017-08-20T20:27:16Z Bike: it's cutting edge as of 1968 2017-08-20T20:27:25Z skeuomorf: edgar-rft: I was speaking very broadly, I am not up to date on the advances that happened in numerical computing or automated theorem proving, but I am pretty sure there are significant advances 2017-08-20T20:27:29Z specbot joined #lisp 2017-08-20T20:27:29Z minion joined #lisp 2017-08-20T20:27:31Z aeth: https://arxiv.org/list/cs.NA/recent https://arxiv.org/list/math.NA/recent 2017-08-20T20:27:41Z aeth: Going through that is one of the jobs for the team of 11 I suggested. 2017-08-20T20:27:55Z skeuomorf: lol 2017-08-20T20:28:00Z aeth: And I'm sure there's more that doesn't count as numerical analysis. 2017-08-20T20:28:27Z angavrilov quit (Remote host closed the connection) 2017-08-20T20:28:28Z skeuomorf: yupe 2017-08-20T20:29:00Z skeuomorf: iirc, there was a SIG that's specific to this sort of stuff 2017-08-20T20:29:18Z skeuomorf: ah, there it is http://www.sigsam.org 2017-08-20T20:29:45Z aeth: It doesn't help that this is at the intersection of computer science and mathematics. Plenty of mathematicians can't program and plenty of people with comp sci degrees don't do anything approaching advanced mathematics. 2017-08-20T20:29:59Z voidlily quit (Remote host closed the connection) 2017-08-20T20:30:22Z skeuomorf: if somebody is doing CS academically, they're probably doing advanced mathematics 2017-08-20T20:30:37Z aeth: At the graduate level, yes. 2017-08-20T20:30:43Z skeuomorf: yeah 2017-08-20T20:31:15Z optikalmouse quit (Quit: Leaving) 2017-08-20T20:31:30Z skeuomorf: s/advanced/"advanced" 2017-08-20T20:32:03Z skeuomorf: s/probably/might 2017-08-20T20:32:04Z aeth: Well, if you're doing numerical things, you're working at one of the intersections of math and comp sci (one of the other notable ones being logic) 2017-08-20T20:32:43Z skeuomorf: well, TCS *is* mathematics 2017-08-20T20:33:40Z skeuomorf: You could be doing a bunch of things e.g. (Foundations of Mathematics, Combinatorics, Numerical Optimization, Inference, ...etc) 2017-08-20T20:33:58Z Bike: oh, and i don't think PAIP has anyt heorem proving, does it? 2017-08-20T20:34:29Z Bike: you'd read like... whatever people are doing now... homotoype type theory? maybe that's out of fashion since i heard of it 2017-08-20T20:34:53Z aeth: Whatever is in style is something to do with types, I bet. :-p 2017-08-20T20:35:27Z skeuomorf: Bike: PAIP has symbolic math and logic programming (which touches on theorem proving a bit) iirc 2017-08-20T20:35:48Z Bike: i think that's pretty far from a proof assistant 2017-08-20T20:35:59Z voidlily joined #lisp 2017-08-20T20:36:01Z skeuomorf: Bike: Well, that's if you're going more the math route, re; HoTT 2017-08-20T20:36:22Z skeuomorf: Bike: Hot topics regarding types nowadays are linear types, liquid types, dependent types 2017-08-20T20:36:38Z eazar001 joined #lisp 2017-08-20T20:36:45Z wooden joined #lisp 2017-08-20T20:36:53Z aeth: The 1980s and 1990s were all about OOP. The 2010s are all about types. I wonder what the new thing will be. 2017-08-20T20:37:19Z skeuomorf: Writing robust software :P 2017-08-20T20:38:01Z aeth: Maybe writing software so robots can use VR headsets. 2017-08-20T20:38:06Z fcambus joined #lisp 2017-08-20T20:38:08Z aeth: s/robots/drones/ 2017-08-20T20:38:43Z skeuomorf: Bike: Well, it discussed unification which you'll probably utilize in a proof assistant 2017-08-20T20:38:52Z Bike: navier-stokes, type edition 2017-08-20T20:39:16Z skeuomorf: Actually, solving the navier-stokes problem would be a nice thing to see :) 2017-08-20T20:39:58Z aeth: And if you solve it with Lisp, you force people to use Lisp. win/win 2017-08-20T20:41:41Z skeuomorf: Re: Robust Software, I like this "rant" from one of the wizards https://groups.csail.mit.edu/mac/users/gjs/6.945/readings/robust-systems.pdf 2017-08-20T20:44:12Z gauss: Thanks everyone, thanks skeuomorf for the resources, goodnight! 2017-08-20T20:44:14Z gauss quit (Quit: Page closed) 2017-08-20T20:44:21Z skeuomorf: Cheers :) 2017-08-20T20:44:42Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-20T20:45:09Z skeuomorf: Also https://vimeo.com/151465912 2017-08-20T20:46:22Z eazar001 joined #lisp 2017-08-20T20:46:52Z skeuomorf: aeth: Maybe write a lisp implementation of a gödel machine that will solve it 2017-08-20T20:47:15Z sdemarre quit (Quit: Leaving.) 2017-08-20T20:47:41Z eazar001 quit (Client Quit) 2017-08-20T20:47:50Z fcambus left #lisp 2017-08-20T20:50:38Z DingoSaar quit (Remote host closed the connection) 2017-08-20T20:51:33Z DingoSaar joined #lisp 2017-08-20T20:52:27Z bjdaro joined #lisp 2017-08-20T20:52:49Z brendyn joined #lisp 2017-08-20T20:53:40Z rRru joined #lisp 2017-08-20T20:55:42Z scymtym quit (Ping timeout: 246 seconds) 2017-08-20T20:56:59Z bjdaro quit (Client Quit) 2017-08-20T21:07:56Z rRru quit (Quit: rRru) 2017-08-20T21:08:49Z rngoodn joined #lisp 2017-08-20T21:11:03Z sjl joined #lisp 2017-08-20T21:15:07Z phoe: minion: memo for Th30n: qt-libs rebuilt for win32. 2017-08-20T21:15:07Z minion: Remembered. I'll tell Th30n when he/she/it next speaks. 2017-08-20T21:23:59Z whoman: minion: memo for minion: tell phoe he's a poop head 2017-08-20T21:24:00Z minion: Buzz off. 2017-08-20T21:25:57Z phoe: minion: memo for whoman: tell whoman he's the one who's a poop head 2017-08-20T21:25:57Z minion: Remembered. I'll tell whoman when he/she/it next speaks. 2017-08-20T21:30:06Z Karl_Dscc quit (Remote host closed the connection) 2017-08-20T21:30:42Z strelox quit (Remote host closed the connection) 2017-08-20T21:32:58Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T21:42:48Z asdfadsf joined #lisp 2017-08-20T21:43:11Z random324 joined #lisp 2017-08-20T21:44:22Z asdfadsf left #lisp 2017-08-20T21:44:38Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-20T21:47:04Z attila_lendvai joined #lisp 2017-08-20T21:50:46Z skeuomorf quit (Ping timeout: 248 seconds) 2017-08-20T21:52:36Z random324 left #lisp 2017-08-20T21:53:58Z brendyn quit (Ping timeout: 248 seconds) 2017-08-20T21:59:39Z wooden quit (Ping timeout: 240 seconds) 2017-08-20T22:05:15Z klltkr joined #lisp 2017-08-20T22:07:26Z shwouchk joined #lisp 2017-08-20T22:12:33Z pierpa joined #lisp 2017-08-20T22:14:41Z Mon_Ouie quit (Ping timeout: 276 seconds) 2017-08-20T22:16:33Z Mon_Ouie joined #lisp 2017-08-20T22:23:24Z Geirmund quit (Ping timeout: 260 seconds) 2017-08-20T22:23:30Z random-nick quit (Remote host closed the connection) 2017-08-20T22:30:53Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T22:33:23Z Achylles quit (Quit: Leaving) 2017-08-20T22:33:57Z Jesin joined #lisp 2017-08-20T22:34:24Z ebzzry_ joined #lisp 2017-08-20T22:42:56Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T22:45:01Z mson joined #lisp 2017-08-20T22:58:51Z attila_lendvai quit (Quit: Leaving.) 2017-08-20T22:59:47Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-20T23:02:01Z ebzzry_ joined #lisp 2017-08-20T23:02:11Z slyrus quit (Remote host closed the connection) 2017-08-20T23:02:47Z pjb quit (Ping timeout: 276 seconds) 2017-08-20T23:07:48Z DingoSaar quit (Remote host closed the connection) 2017-08-20T23:08:21Z klltkr joined #lisp 2017-08-20T23:08:40Z DingoSaar joined #lisp 2017-08-20T23:08:59Z varjag quit (Ping timeout: 240 seconds) 2017-08-20T23:09:12Z mishoo quit (Ping timeout: 240 seconds) 2017-08-20T23:09:35Z slyrus_ is now known as slyrus 2017-08-20T23:11:08Z DingoSaar quit (Remote host closed the connection) 2017-08-20T23:12:58Z DingoSaar joined #lisp 2017-08-20T23:19:05Z Jesin quit (Quit: Leaving) 2017-08-20T23:22:10Z EvW1 quit (Ping timeout: 255 seconds) 2017-08-20T23:28:46Z pjb joined #lisp 2017-08-20T23:32:43Z wooden joined #lisp 2017-08-20T23:34:40Z pjb quit (Remote host closed the connection) 2017-08-20T23:48:45Z rngoodn joined #lisp 2017-08-20T23:54:41Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-20T23:55:13Z kora9 joined #lisp 2017-08-20T23:59:34Z pierpa quit (Quit: Page closed) 2017-08-21T00:04:35Z rngoodn joined #lisp 2017-08-21T00:05:28Z vaporatorius__ quit (Remote host closed the connection) 2017-08-21T00:05:48Z varjag joined #lisp 2017-08-21T00:10:12Z varjag quit (Ping timeout: 240 seconds) 2017-08-21T00:12:32Z phinxy joined #lisp 2017-08-21T00:27:56Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-21T00:30:24Z phinxy left #lisp 2017-08-21T00:30:26Z rngoodn joined #lisp 2017-08-21T00:35:23Z quazimodo joined #lisp 2017-08-21T00:41:44Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-21T00:49:57Z satran quit (Ping timeout: 248 seconds) 2017-08-21T00:50:20Z vicfred joined #lisp 2017-08-21T01:00:53Z mson quit (Quit: Connection closed for inactivity) 2017-08-21T01:04:08Z CrazyEddy quit (Remote host closed the connection) 2017-08-21T01:05:45Z keviv quit (Remote host closed the connection) 2017-08-21T01:12:35Z scymtym joined #lisp 2017-08-21T01:14:55Z shwouchk quit (Quit: Connection closed for inactivity) 2017-08-21T01:17:10Z gigetoo quit (Ping timeout: 240 seconds) 2017-08-21T01:17:17Z glamas joined #lisp 2017-08-21T01:17:47Z gigetoo joined #lisp 2017-08-21T01:19:11Z d4ryus3 joined #lisp 2017-08-21T01:21:06Z voidlily quit (Remote host closed the connection) 2017-08-21T01:21:50Z kora9 quit (Ping timeout: 240 seconds) 2017-08-21T01:22:04Z Kaisyu joined #lisp 2017-08-21T01:22:16Z d4ryus2 quit (Ping timeout: 240 seconds) 2017-08-21T01:23:48Z defaultxr quit (Quit: WeeChat 1.9) 2017-08-21T01:23:59Z voidlily joined #lisp 2017-08-21T01:25:56Z DingoSaar quit (Remote host closed the connection) 2017-08-21T01:25:57Z defaultxr joined #lisp 2017-08-21T01:27:27Z DingoSaar joined #lisp 2017-08-21T01:27:36Z eazar001 joined #lisp 2017-08-21T01:27:54Z jameser joined #lisp 2017-08-21T01:28:43Z eazar001 quit (Client Quit) 2017-08-21T01:28:52Z DingoSaar quit (Remote host closed the connection) 2017-08-21T01:29:17Z DingoSaar joined #lisp 2017-08-21T01:37:41Z DingoSaar quit (Remote host closed the connection) 2017-08-21T01:38:09Z DingoSaar joined #lisp 2017-08-21T01:38:24Z sellout- joined #lisp 2017-08-21T01:41:35Z marvin3 joined #lisp 2017-08-21T01:44:42Z marvin2 quit (Ping timeout: 240 seconds) 2017-08-21T01:50:40Z dpg joined #lisp 2017-08-21T01:51:54Z chens joined #lisp 2017-08-21T01:55:15Z jamtho_ joined #lisp 2017-08-21T01:58:54Z scymtym quit (Ping timeout: 240 seconds) 2017-08-21T01:59:59Z neoncontrails quit (Remote host closed the connection) 2017-08-21T02:12:19Z dpg left #lisp 2017-08-21T02:14:50Z dddddd quit (Remote host closed the connection) 2017-08-21T02:19:42Z sellout- quit (Quit: Leaving.) 2017-08-21T02:22:46Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-21T02:29:02Z mrcom joined #lisp 2017-08-21T02:32:43Z scymtym joined #lisp 2017-08-21T02:39:11Z rngoodn joined #lisp 2017-08-21T02:39:52Z DingoSaar quit (Remote host closed the connection) 2017-08-21T02:43:41Z DingoSaar joined #lisp 2017-08-21T02:44:43Z DingoSaar quit (Remote host closed the connection) 2017-08-21T02:45:13Z DingoSaar joined #lisp 2017-08-21T02:47:04Z marvin3 quit 2017-08-21T02:47:36Z marvin2 joined #lisp 2017-08-21T02:47:37Z marvin2 quit (Excess Flood) 2017-08-21T02:48:28Z phf joined #lisp 2017-08-21T02:48:41Z marvin2 joined #lisp 2017-08-21T02:49:11Z phf: does anybody have slime/swank backport to emacs 21, or have last favorite version that works with it? 2017-08-21T02:55:57Z smokeink joined #lisp 2017-08-21T02:55:59Z smokeink quit (Remote host closed the connection) 2017-08-21T02:59:59Z Bike quit (Ping timeout: 240 seconds) 2017-08-21T03:01:47Z smokeink joined #lisp 2017-08-21T03:05:28Z moei quit (Quit: Leaving...) 2017-08-21T03:11:54Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-21T03:13:44Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-21T03:14:24Z phf left #lisp 2017-08-21T03:19:12Z schoppenhauer quit (Ping timeout: 240 seconds) 2017-08-21T03:21:13Z schoppenhauer joined #lisp 2017-08-21T03:23:54Z DingoSaar quit (Remote host closed the connection) 2017-08-21T03:24:47Z DingoSaar joined #lisp 2017-08-21T03:25:32Z DingoSaar quit (Client Quit) 2017-08-21T03:28:44Z neoncontrails joined #lisp 2017-08-21T03:35:59Z payphone joined #lisp 2017-08-21T03:39:27Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-21T03:42:51Z glamas quit (Remote host closed the connection) 2017-08-21T03:43:26Z shwouchk joined #lisp 2017-08-21T03:51:50Z scymtym quit (Ping timeout: 248 seconds) 2017-08-21T04:02:21Z brendyn joined #lisp 2017-08-21T04:03:02Z shka joined #lisp 2017-08-21T04:03:27Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-21T04:09:43Z beach: Good morning everyone! 2017-08-21T04:09:51Z doesthiswork quit (Quit: Leaving.) 2017-08-21T04:16:12Z test1600 joined #lisp 2017-08-21T04:35:12Z glamas joined #lisp 2017-08-21T04:35:43Z Lowl3v3l quit (Remote host closed the connection) 2017-08-21T04:39:50Z glamas quit (Ping timeout: 240 seconds) 2017-08-21T04:45:09Z quazimod1 joined #lisp 2017-08-21T04:48:07Z MetaHertz joined #lisp 2017-08-21T04:48:22Z moei joined #lisp 2017-08-21T04:48:22Z quazimodo quit (Ping timeout: 248 seconds) 2017-08-21T04:56:53Z vlatkoB joined #lisp 2017-08-21T05:00:17Z damke_ joined #lisp 2017-08-21T05:01:50Z pillton: Are the return values of COMPILE supposed to be impacted by WITH-COMPILATION-UNIT? 2017-08-21T05:03:10Z smokeink quit (Ping timeout: 240 seconds) 2017-08-21T05:03:53Z dec0n joined #lisp 2017-08-21T05:10:16Z marvin2 quit (Ping timeout: 240 seconds) 2017-08-21T05:14:47Z vicfred quit (Quit: Leaving) 2017-08-21T05:19:04Z vap1 joined #lisp 2017-08-21T05:19:14Z vaporatorius joined #lisp 2017-08-21T05:19:14Z vap1 quit (Read error: Connection reset by peer) 2017-08-21T05:22:44Z easye joined #lisp 2017-08-21T05:25:16Z flamebeard joined #lisp 2017-08-21T05:37:05Z nsrahmad joined #lisp 2017-08-21T05:37:10Z anticrisis: is there a handy function that lets you assign your own nickname to a package you import or use? 2017-08-21T05:38:15Z oleo quit (Quit: irc client terminated!) 2017-08-21T05:39:55Z Karl_Dscc joined #lisp 2017-08-21T05:39:59Z nsrahmad quit (Client Quit) 2017-08-21T05:40:36Z FalconPilot joined #lisp 2017-08-21T05:43:44Z neoncontrails quit (Remote host closed the connection) 2017-08-21T05:44:20Z pillton: No. 2017-08-21T05:45:02Z pillton: SBCL and ECL support package-local nicknames though. http://www.sbcl.org/manual/#Package_002dLocal-Nicknames 2017-08-21T05:45:56Z anticrisis: oh i see 2017-08-21T05:47:51Z anticrisis: do other implementations ignore defpackage clauses they don't recognize or do you have to put a #+(or sbcl...) thing in front? 2017-08-21T05:49:18Z angavrilov joined #lisp 2017-08-21T05:51:41Z anticrisis: uiop:define-package barfs on :local-nicknames, have to use defpackage 2017-08-21T05:57:22Z anticrisis: Interesting, "Logging in has been restricted to pre-existing users to prevent abuse." 2017-08-21T06:13:32Z ebzzry_ quit (Ping timeout: 255 seconds) 2017-08-21T06:14:32Z Karl_Dscc quit (Remote host closed the connection) 2017-08-21T06:15:17Z ebzzry_ joined #lisp 2017-08-21T06:17:59Z mishoo joined #lisp 2017-08-21T06:21:06Z satran joined #lisp 2017-08-21T06:21:10Z kjak_ quit (Ping timeout: 240 seconds) 2017-08-21T06:22:28Z kjak joined #lisp 2017-08-21T06:22:34Z ebzzry_ quit (Ping timeout: 255 seconds) 2017-08-21T06:24:22Z FalconPilot quit (Ping timeout: 248 seconds) 2017-08-21T06:24:35Z damke_ quit (Read error: Connection reset by peer) 2017-08-21T06:24:58Z jackdaniel: afakik ABCL implements package local nicknames too 2017-08-21T06:29:51Z z0d joined #lisp 2017-08-21T06:37:52Z anticrisis: i'd say it's a pretty handy and hopefully innocuous extension 2017-08-21T06:37:59Z drmeister: Are there any good libraries for doing substitutions in strings? Say (string-replace "{foo} something {bar}" '(("{foo}" . "replace-foo") ("{bar}" . "replace-bar"))) 2017-08-21T06:38:25Z drmeister: Something like that. 2017-08-21T06:38:51Z Mandus joined #lisp 2017-08-21T06:39:21Z drmeister: Or can I do something equivalent with FORMAT? 2017-08-21T06:40:29Z anticrisis: anything here help you? http://quickdocs.org/search?q=string 2017-08-21T06:41:49Z FalconPilot joined #lisp 2017-08-21T06:42:35Z mishoo_ joined #lisp 2017-08-21T06:42:59Z damke_ joined #lisp 2017-08-21T06:43:05Z drmeister: Thank you - I'll take a look. I didn't know that link existed 2017-08-21T06:44:10Z mishoo quit (Ping timeout: 255 seconds) 2017-08-21T06:45:20Z anticrisis: a long list of libraries is only the first step, hope you find what you need 2017-08-21T06:45:26Z schweers joined #lisp 2017-08-21T06:46:23Z trittweiler joined #lisp 2017-08-21T06:49:21Z drmeister: It doesn't look like it. 2017-08-21T06:49:48Z drmeister: I recall there was something in cl21 that did that - but people didn't like it as a general way of working with formatted output. 2017-08-21T06:53:39Z glamas joined #lisp 2017-08-21T07:02:32Z damke joined #lisp 2017-08-21T07:03:42Z shka quit (Ping timeout: 240 seconds) 2017-08-21T07:03:45Z axion: drmeister: I use cl-ppcre for string replacement 2017-08-21T07:03:50Z damke_ quit (Ping timeout: 240 seconds) 2017-08-21T07:04:45Z jackdaniel: drmeister: for a slighlty different approach for formattted output, you may read http://www.cs.yale.edu/homes/dvm/format-stinks.html which has simple `out' macro defined 2017-08-21T07:08:07Z pjb joined #lisp 2017-08-21T07:13:34Z scymtym joined #lisp 2017-08-21T07:23:52Z attila_lendvai joined #lisp 2017-08-21T07:28:19Z schweers quit (Remote host closed the connection) 2017-08-21T07:31:29Z larsen_ is now known as larsen` 2017-08-21T07:31:45Z varjag joined #lisp 2017-08-21T07:32:30Z schweers joined #lisp 2017-08-21T07:40:53Z Riviera quit (Remote host closed the connection) 2017-08-21T07:41:22Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-21T07:41:57Z ssake joined #lisp 2017-08-21T07:43:32Z schweers quit (Remote host closed the connection) 2017-08-21T07:44:40Z schweers joined #lisp 2017-08-21T07:46:18Z smokeink joined #lisp 2017-08-21T07:54:21Z smokeink quit (Quit: leaving) 2017-08-21T07:59:05Z some-user joined #lisp 2017-08-21T07:59:24Z some-user quit (Remote host closed the connection) 2017-08-21T08:06:41Z kjeldahl_ quit (Quit: WeeChat 1.2) 2017-08-21T08:07:02Z kjeldahl joined #lisp 2017-08-21T08:09:17Z shka joined #lisp 2017-08-21T08:15:24Z knicklux quit (Ping timeout: 255 seconds) 2017-08-21T08:16:34Z knicklux joined #lisp 2017-08-21T08:18:03Z knicklux quit (Remote host closed the connection) 2017-08-21T08:21:05Z __paul0 joined #lisp 2017-08-21T08:22:46Z yangby joined #lisp 2017-08-21T08:24:22Z _paul0 quit (Ping timeout: 248 seconds) 2017-08-21T08:24:36Z knobo joined #lisp 2017-08-21T08:28:30Z Beetny joined #lisp 2017-08-21T08:28:45Z knobo: TIL loop's do doesn't need progn to evaluate multiple forms. 2017-08-21T08:29:06Z knobo: after about 10 years of lisp 2017-08-21T08:33:24Z quazimod1 quit (Ping timeout: 240 seconds) 2017-08-21T08:34:40Z skeuomorf joined #lisp 2017-08-21T08:35:08Z loke: knobo: I knew that, but I still had progn for clarity. 2017-08-21T08:36:40Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-21T08:37:21Z attila_lendvai joined #lisp 2017-08-21T08:39:43Z __paul0 quit (Quit: Leaving) 2017-08-21T08:41:53Z random-nick joined #lisp 2017-08-21T08:42:12Z attila_lendvai quit (Client Quit) 2017-08-21T08:44:42Z grublet joined #lisp 2017-08-21T08:58:00Z grublet quit (Quit: Leaving) 2017-08-21T08:58:03Z shrdlu68 joined #lisp 2017-08-21T09:04:38Z raynold quit (Quit: Connection closed for inactivity) 2017-08-21T09:04:39Z shrdlu68: Are there any routines (libraries/implentation-specific) for printing floats in base 2? 2017-08-21T09:06:53Z jackdaniel: shrdlu68: like 100101.1010101 ? 2017-08-21T09:07:26Z shrdlu68: Not this: (format t "~B" 33/100) => 100001/1100100 2017-08-21T09:07:46Z shrdlu68: More like IEEE 754-1985 2017-08-21T09:08:23Z jackdaniel: (let ((*print-base* 2)) (print 10/4)) ; something like this? 2017-08-21T09:08:44Z antoszka: jackdaniel: that'll will work for ratios 2017-08-21T09:08:48Z antoszka: jackdaniel: but not for floats 2017-08-21T09:08:49Z jackdaniel: (let ((*print-base* 2)) (format t "~a" 10/4)) 2017-08-21T09:09:08Z jackdaniel: yes, he suggested ratios above, that's why I have asked about 10101.10101 2017-08-21T09:09:32Z antoszka: > for printing floats 2017-08-21T09:09:43Z antoszka: So I understood 1010.1010, too. 2017-08-21T09:10:31Z jackdaniel: (let ((*print-base* 2) (num 3.3)) (format t "~a" (rationalize num))) 2017-08-21T09:11:06Z pjb: loke: it's somewhat bad to use progn for do body, since by default it's actually a tagbody. 2017-08-21T09:11:17Z shrdlu68: Uh-I'm trying to implement arithmetic compression, and all the books and papers seem to have a way of representing floats in some format I don 2017-08-21T09:11:31Z shrdlu68: ...'t seem to be familiar with. 2017-08-21T09:11:39Z antoszka: shrdlu68: What's the format? 2017-08-21T09:11:50Z shrdlu68: For example: 2017-08-21T09:11:55Z pjb: (do ((i 0 (1+ i))) ((>= i 10)) (if (oddp i) (go :continue)) (print i) :continue) ; prints even numbers. 2017-08-21T09:12:09Z jackdaniel: actually, (format t "~b" (rationalize .3)) ; does the trick 2017-08-21T09:12:15Z jackdaniel: no need to bind *print-base* 2017-08-21T09:12:38Z antoszka: cool, though still not strictly a float :) 2017-08-21T09:12:45Z pjb: shrdlu68: there's integer-decode-float and decode-float to help. 2017-08-21T09:13:08Z shrdlu68: [0.8125,0.825] => [0.1110 00000,0.1110 01100] 2017-08-21T09:13:30Z shrdlu68: It's from this paper: https://www.cc.gatech.edu/~jarek/courses/7491/Arithmetic2.pdf 2017-08-21T09:13:35Z antoszka: clhs integer-decode-float 2017-08-21T09:13:36Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_dec_fl.htm 2017-08-21T09:16:05Z shrdlu68: Ah, I see. Thanks! 2017-08-21T09:16:23Z pjb: Something like: (let ((f pi)) (multiple-value-bind (man exp sig) (integer-decode-float f) (format t "~:[-~;+~]0.~V,'0Be~B" (plusp sig) (float-precision f) man exp)) (values)) #| +0.11001001000011111101101010100010001000010110100011000e-110011 |# I'd guess. 2017-08-21T09:16:43Z searcher joined #lisp 2017-08-21T09:19:43Z pjb: More correctly: (let ((f pi)) (multiple-value-bind (man exp sig) (integer-decode-float f) (format t "~:[-~;+~]0.~V,V,'0Re~VR" (plusp sig) (float-radix f) (float-precision f) man (float-radix f) (+ (float-precision f) exp))) (values)) #| +0.11001001000011111101101010100010001000010110100011000e10 |# 2017-08-21T09:20:04Z pjb: But it wont' always be in binary (eg. on IBM 370/380, it will be in hexadecimal). 2017-08-21T09:21:05Z pjb: (+ (expt 2.0 -3) (expt 2.0 -6)) #| --> 0.140625 |# 2017-08-21T09:21:46Z phoe quit (Ping timeout: 240 seconds) 2017-08-21T09:24:22Z pjb: http://paste.lisp.org/display/353986 2017-08-21T09:26:30Z pjb: Try: (loop for type in '(short-float single-float double-float long-float) do (write-line (float-internal-representation (coerce pi type)))) ; in your implementation ;-) 2017-08-21T09:29:31Z shrdlu68: pjb: #'float-internal-representation is undefined in SBCL. 2017-08-21T09:29:56Z pjb: shrdlu68: why do you think lisppaste exists for? 2017-08-21T09:30:03Z pjb: s/why/what/ 2017-08-21T09:30:18Z defaultxr quit (Ping timeout: 246 seconds) 2017-08-21T09:31:05Z shrdlu68: Ah, hadn't opened it, thought it was the same thing as what you had written earlier, only formatted. My bad. 2017-08-21T09:35:31Z glamas_ joined #lisp 2017-08-21T09:35:31Z glamas quit (Read error: Connection reset by peer) 2017-08-21T09:37:03Z glamas joined #lisp 2017-08-21T09:37:06Z glamas_ quit (Read error: Connection reset by peer) 2017-08-21T09:37:46Z loke: pjb: I wasn't talking about DO body though. I was talking about the DO clause in LOOP. 2017-08-21T09:37:56Z pjb: Oh, sorry. 2017-08-21T09:37:58Z EvW joined #lisp 2017-08-21T09:38:12Z pjb: in loop, it may help. 2017-08-21T09:38:29Z pjb: (depending on the editor indenting abilities). 2017-08-21T09:39:21Z glamas quit (Remote host closed the connection) 2017-08-21T09:40:11Z loke: pjb: The indentation is actually the main reason I use PROGN :-) 2017-08-21T09:46:06Z chens quit (Remote host closed the connection) 2017-08-21T09:49:35Z safe joined #lisp 2017-08-21T09:53:26Z EvW quit (Ping timeout: 276 seconds) 2017-08-21T10:04:32Z hhdave joined #lisp 2017-08-21T10:20:34Z nirved joined #lisp 2017-08-21T10:20:49Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-21T10:23:43Z ebzzry_ joined #lisp 2017-08-21T10:28:59Z DeadTrickster_ joined #lisp 2017-08-21T10:34:50Z damke quit (Ping timeout: 240 seconds) 2017-08-21T10:40:32Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-08-21T10:51:01Z damke joined #lisp 2017-08-21T10:52:48Z bigos joined #lisp 2017-08-21T10:53:38Z EvW joined #lisp 2017-08-21T10:59:27Z m00natic joined #lisp 2017-08-21T11:00:53Z damke_ joined #lisp 2017-08-21T11:02:49Z damke quit (Ping timeout: 240 seconds) 2017-08-21T11:03:38Z EvW quit (Ping timeout: 240 seconds) 2017-08-21T11:20:14Z jamtho_ joined #lisp 2017-08-21T11:23:18Z EvW1 joined #lisp 2017-08-21T11:30:46Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-21T11:31:22Z Bike joined #lisp 2017-08-21T11:38:22Z dddddd joined #lisp 2017-08-21T11:47:18Z Mon_Ouie joined #lisp 2017-08-21T11:54:09Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-21T11:55:15Z marvin2 joined #lisp 2017-08-21T11:57:39Z zaoqi joined #lisp 2017-08-21T11:59:06Z bigos quit (Remote host closed the connection) 2017-08-21T11:59:46Z satran quit (Quit: satran) 2017-08-21T12:00:41Z Beetny quit (Ping timeout: 240 seconds) 2017-08-21T12:02:37Z Mon_Ouie joined #lisp 2017-08-21T12:04:16Z sjl quit (Ping timeout: 240 seconds) 2017-08-21T12:05:30Z knobo: Just thinking.... I would change this: do (loop while (< (freq-m (aref a j)) (* 1.0d0 i)) do (incf j)) in to something like this: do (setf j (position-if (lambda (x) (< x (coerce i 'double-float))) a :start j :key #'freq-m)) 2017-08-21T12:05:54Z CrazyEddy joined #lisp 2017-08-21T12:06:03Z knobo: hmm... almost... 2017-08-21T12:06:23Z zaoqi: How can I implement microKanren with fair conjunction? (conde (+o x y z) (== z 0)) => (conde (== z 0) (+o x y z)) 2017-08-21T12:07:23Z knobo looking at The Computer Language Benchmarks Game 2017-08-21T12:07:38Z sz0 joined #lisp 2017-08-21T12:08:11Z knobo: Did anyone scrutinize the lisp code that's there? 2017-08-21T12:08:16Z ntinos joined #lisp 2017-08-21T12:08:30Z EvW1 quit (Ping timeout: 255 seconds) 2017-08-21T12:08:44Z fmeyer joined #lisp 2017-08-21T12:09:33Z knobo: ";;; Based off of java implementation. " makes me sceptical. 2017-08-21T12:10:13Z knobo: I got to go. 2017-08-21T12:10:37Z Bike: zaoqi: you can keep asking that every day but with no context or specific questions none of us are going to know what you're talking about 2017-08-21T12:10:37Z Colleen: Bike: drmeister said 5 hours, 54 minutes ago: I fixed the most obvious problems with fastgf - it's back online as well as it ever was. I haven't incorporated it fully because there are metastability issues that I haven't fully solved. Maybe we can do that together. Can you pull the latest dev and start building it? 2017-08-21T12:14:55Z knobo quit (Ping timeout: 255 seconds) 2017-08-21T12:19:22Z jameser joined #lisp 2017-08-21T12:20:24Z Bike quit (Ping timeout: 240 seconds) 2017-08-21T12:24:59Z mishoo__ joined #lisp 2017-08-21T12:25:28Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-21T12:26:28Z mishoo_ quit (Ping timeout: 248 seconds) 2017-08-21T12:27:43Z jameser joined #lisp 2017-08-21T12:33:06Z zaoqi quit (Read error: Connection reset by peer) 2017-08-21T12:33:17Z sjl joined #lisp 2017-08-21T12:35:31Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-21T12:39:06Z sjl quit (Ping timeout: 255 seconds) 2017-08-21T12:39:26Z zaoqi joined #lisp 2017-08-21T12:39:38Z BitPuffin|osx joined #lisp 2017-08-21T12:43:58Z fmeyer quit (Quit: WeeChat 1.6) 2017-08-21T12:44:29Z jamtho_ quit (Ping timeout: 240 seconds) 2017-08-21T12:44:33Z peterhil joined #lisp 2017-08-21T12:48:59Z X-Scale joined #lisp 2017-08-21T12:50:24Z X-Scale left #lisp 2017-08-21T12:53:03Z random-nick quit (Remote host closed the connection) 2017-08-21T12:54:34Z hvxgr quit (Read error: Connection reset by peer) 2017-08-21T12:56:13Z knobo joined #lisp 2017-08-21T12:56:16Z random-nick joined #lisp 2017-08-21T12:59:54Z EvW joined #lisp 2017-08-21T13:00:16Z doesthiswork joined #lisp 2017-08-21T13:01:00Z jameser joined #lisp 2017-08-21T13:02:06Z damke joined #lisp 2017-08-21T13:04:29Z damke_ quit (Ping timeout: 240 seconds) 2017-08-21T13:04:36Z Bike joined #lisp 2017-08-21T13:05:24Z jameser quit (Ping timeout: 240 seconds) 2017-08-21T13:06:05Z sjl joined #lisp 2017-08-21T13:10:53Z sjl quit (Ping timeout: 240 seconds) 2017-08-21T13:11:21Z test1600 quit (Quit: Leaving) 2017-08-21T13:11:32Z jamtho_ joined #lisp 2017-08-21T13:13:29Z dieggsy joined #lisp 2017-08-21T13:13:48Z peterhil` joined #lisp 2017-08-21T13:14:16Z knobo quit (Ping timeout: 240 seconds) 2017-08-21T13:16:53Z peterhil quit (Ping timeout: 276 seconds) 2017-08-21T13:17:23Z peterhil joined #lisp 2017-08-21T13:17:50Z keviv joined #lisp 2017-08-21T13:19:14Z peterhil` quit (Ping timeout: 255 seconds) 2017-08-21T13:22:45Z peterhil` joined #lisp 2017-08-21T13:23:21Z butterthebuddha: Reading through Common Lisp by David Touretzky rn 2017-08-21T13:23:29Z butterthebuddha: Anybody know when it gets to discussing actual code? 2017-08-21T13:23:41Z peterhil quit (Ping timeout: 240 seconds) 2017-08-21T13:24:38Z jackdaniel: scrolling through book may help with judging it 2017-08-21T13:24:56Z jackdaniel: if you want book which works with code from the very beginning (i.e doesn't teach how to program in general) go after pcl 2017-08-21T13:25:00Z jackdaniel: minion: tell butterthebuddha about pcl 2017-08-21T13:25:01Z minion: butterthebuddha: look at pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005). 2017-08-21T13:26:55Z shrdlu68 quit (Ping timeout: 246 seconds) 2017-08-21T13:27:35Z sellout- joined #lisp 2017-08-21T13:28:06Z butterthebuddha: Okay thanks 2017-08-21T13:33:00Z edgar-rft: butterthebuddha: The first two chapters in the Touretzky are for people who *never ever* worked with any programming language before. Touretzky mainly explains the language basics in really every detail. "Practical Common Lisp" explains everything with real-world code eamples, but assumes that you have at least a basic knowlege how computer programming works. 2017-08-21T13:33:28Z butterthebuddha: edgar-rft: I suppose practical common lisp is a better choice for me then 2017-08-21T13:34:58Z sellout- quit (Read error: Connection reset by peer) 2017-08-21T13:36:12Z sellout- joined #lisp 2017-08-21T13:39:51Z EvW quit (Ping timeout: 246 seconds) 2017-08-21T13:40:13Z shrdlu68 joined #lisp 2017-08-21T13:45:41Z dieggsy quit (Remote host closed the connection) 2017-08-21T13:45:43Z monsieur_h joined #lisp 2017-08-21T13:46:23Z monsieur_h: Hello there, I'm a programmer and I'm intersted in learning LISP out of curiosity. Can you guys point me towards an up-to-date and efficient tutorial ? 2017-08-21T13:48:04Z hvxgr joined #lisp 2017-08-21T13:49:24Z Xach: monsieur_h: practical common lisp is a good book 2017-08-21T13:49:36Z peterhil` quit (Quit: Must not waste too much time here...) 2017-08-21T13:52:58Z SAL9000: monsieur_h: http://www.gigamonkeys.com/book/ 2017-08-21T13:53:01Z FreeBirdLjj joined #lisp 2017-08-21T13:57:24Z FreeBirdLjj quit (Ping timeout: 255 seconds) 2017-08-21T13:57:51Z monsieur_h: Xach, SAL9000, thanks, going to check that out right now 2017-08-21T13:58:17Z dec0n quit (Read error: Connection reset by peer) 2017-08-21T14:03:24Z stee_3 joined #lisp 2017-08-21T14:04:40Z pjb: monsieur_h: and check http://cliki.net and http://cliki.net/Getting+Started 2017-08-21T14:07:11Z stee_3_ quit (Ping timeout: 240 seconds) 2017-08-21T14:08:36Z monsieur_h: pjb: thanks, will do 2017-08-21T14:13:41Z FalconPilot quit (Ping timeout: 255 seconds) 2017-08-21T14:15:12Z elfmacs joined #lisp 2017-08-21T14:23:17Z oleo joined #lisp 2017-08-21T14:24:54Z damke_ joined #lisp 2017-08-21T14:27:09Z damke quit (Ping timeout: 240 seconds) 2017-08-21T14:28:11Z varjag quit (Remote host closed the connection) 2017-08-21T14:31:50Z varjag joined #lisp 2017-08-21T14:32:22Z felipedvorak quit (Ping timeout: 248 seconds) 2017-08-21T14:32:54Z thblt quit (Remote host closed the connection) 2017-08-21T14:33:57Z Kevslinger joined #lisp 2017-08-21T14:33:58Z Murii quit (Ping timeout: 248 seconds) 2017-08-21T14:35:56Z thetabit: Good morning all 2017-08-21T14:36:05Z flamebeard quit (Quit: Leaving) 2017-08-21T14:36:22Z attila_lendvai joined #lisp 2017-08-21T14:36:38Z thetabit left #lisp 2017-08-21T14:37:06Z thetabit joined #lisp 2017-08-21T14:37:21Z thetabit: In slime, is there a way to reload a variable that has been defined as defconstant without a warning? 2017-08-21T14:39:47Z schweers: doesn’t that depend on the lisp implementation instead of sliem? 2017-08-21T14:39:51Z Xach: thetabit: that depends on the implementation. 2017-08-21T14:40:04Z thetabit: Oh, Emacs, SLIME and SBCL 2017-08-21T14:40:26Z schweers: http://sbcl.org/manual/#Defining-Constants 2017-08-21T14:40:31Z schweers: does that help you? 2017-08-21T14:40:57Z schweers: otherwise just put a restart around your definition if you don’t care about the warning 2017-08-21T14:44:28Z felipedvorak joined #lisp 2017-08-21T14:44:38Z elfmacs quit (Ping timeout: 276 seconds) 2017-08-21T14:44:50Z damke joined #lisp 2017-08-21T14:45:54Z al-damiri joined #lisp 2017-08-21T14:46:29Z damke_ quit (Ping timeout: 240 seconds) 2017-08-21T14:48:32Z DeadTrickster_ quit (Ping timeout: 276 seconds) 2017-08-21T14:48:56Z thetabit: Yep, that was helpful, thank you 2017-08-21T14:49:21Z butterthebuddha: http://www.gigamonkeys.com/book/practical-a-simple-database.html 2017-08-21T14:49:37Z butterthebuddha: "(defun add-record (cd) (push cd *db*))" <- getting a *db* not defined error on that function 2017-08-21T14:49:40Z rippa joined #lisp 2017-08-21T14:49:46Z butterthebuddha: Even though it was defined previously and works for the author of the book 2017-08-21T14:50:44Z FalconPilot joined #lisp 2017-08-21T14:50:48Z butterthebuddha: http://paste.lisp.org/display/354009 2017-08-21T14:50:50Z butterthebuddha: ^ what I have rn 2017-08-21T14:50:52Z schweers: you evaluated the (defvar *db* nil) part of the code? 2017-08-21T14:52:39Z schweers: weird 2017-08-21T14:53:01Z schweers: what happens when you evaluate *db*? 2017-08-21T14:57:41Z schweers quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-21T14:58:03Z dlowe: butterthebuddha: how are you evaluating? on the repl? 2017-08-21T14:58:30Z butterthebuddha: (add-record (make-cd "Roses" "Kathy Mattea" 7 t)) 2017-08-21T14:58:35Z butterthebuddha: Hmm, I just compiled it 2017-08-21T14:58:39Z butterthebuddha: I'm using SLIME for Emacs 2017-08-21T14:59:06Z Lowl3v3l joined #lisp 2017-08-21T14:59:07Z dlowe: compilation isn't necessarily evaluation. 2017-08-21T15:00:03Z dlowe: are you using C-c C-k in slime? 2017-08-21T15:00:13Z dlowe: (which both compiles and loads the current file) 2017-08-21T15:00:58Z butterthebuddha: I was using C-c C-c and C-c C-z 2017-08-21T15:01:04Z butterthebuddha: Let me try C-c C-k 2017-08-21T15:01:29Z dlowe: ok, C-c C-c only compiles the given expression, which for functions is good enough 2017-08-21T15:01:52Z butterthebuddha: Yep C-c C-k works 2017-08-21T15:01:54Z butterthebuddha: Thanks dlowe 2017-08-21T15:01:54Z dlowe: but for statements that you want executed you want to use C-c C-e 2017-08-21T15:02:11Z dlowe: or, you know, just C-c C-k for the whole file 2017-08-21T15:02:29Z dlowe: glad to help 2017-08-21T15:03:18Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-21T15:04:21Z ebzzry_ quit (Ping timeout: 248 seconds) 2017-08-21T15:04:55Z butterthebuddha: Also, is there a recommended common lisp implementation? Rn I'm using GNU Clisp 2017-08-21T15:05:16Z dlowe: sbcl or ccl is the usual recommendation 2017-08-21T15:06:03Z random-nick: does CLISP have any feature SBCL doesn't? 2017-08-21T15:06:31Z butterthebuddha: I just went with the GNU implementation because I didn't know which one to go with 2017-08-21T15:06:51Z random-nick: GNU also has GCL but that's even worse 2017-08-21T15:07:29Z jackdaniel: random-nick: clisp is more portable 2017-08-21T15:07:43Z jackdaniel: gcl is cltl2 atm, not ansi 2017-08-21T15:07:50Z random-nick: jackdaniel: oh, right 2017-08-21T15:08:03Z random-nick: also afaik CLISP can be bootstrapped from C 2017-08-21T15:08:22Z jackdaniel: ecl is bootstrapped from C too 2017-08-21T15:08:33Z random-nick: SBCL needs an existing implementation of CL as well as a C implementation for the runtime, right? 2017-08-21T15:08:48Z jackdaniel: from other clisp features - it has JIT via lightning library 2017-08-21T15:09:26Z jackdaniel: random-nick: only for boostrapping it needs CL implementation and C implementation 2017-08-21T15:09:31Z random-nick: I didn't know about that 2017-08-21T15:09:53Z jackdaniel: "random-nick: only for boostrapping it needs CL implementation and C implementation" ← I'm talking about sbcl, it doesn't need them for runtime 2017-08-21T15:10:22Z jackdaniel: but yes, sbcl and ccl are recommended for everyday use and learning purposes 2017-08-21T15:11:15Z dlowe: once a language has been bootstrapped, I'm not sure its bootstrappability is really an issue 2017-08-21T15:12:33Z random-nick: dlowe: well, you need to bootstrap it again when porting it to a new architecture 2017-08-21T15:13:23Z jackdaniel: random-nick: for practical purposes SBCL has problem solved, because clisp is ported to that architecture (hence it may be used) and C is ported as well 2017-08-21T15:13:24Z dlowe: random-nick: no you don't 2017-08-21T15:13:32Z jackdaniel: also I think it is possible to cross-compile things 2017-08-21T15:13:42Z dlowe: random-nick: you emit object code for the new architecture on a supported architecture 2017-08-21T15:13:49Z monsieur_h left #lisp 2017-08-21T15:14:59Z jackdaniel: I think it is an oversimplification 2017-08-21T15:15:05Z jackdaniel: especially for image-based implementations 2017-08-21T15:17:51Z dlowe: heh. I didn't say it wasn't hard. 2017-08-21T15:18:19Z dlowe: the point is that you don't need an implementation in some other language in which to do it 2017-08-21T15:20:20Z dddddd quit (Ping timeout: 248 seconds) 2017-08-21T15:20:41Z FreeBirdLjj joined #lisp 2017-08-21T15:21:24Z smazga joined #lisp 2017-08-21T15:22:25Z vlatkoB quit (Remote host closed the connection) 2017-08-21T15:23:45Z vlatkoB joined #lisp 2017-08-21T15:24:22Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-21T15:24:32Z Kyo91 joined #lisp 2017-08-21T15:26:50Z knobo joined #lisp 2017-08-21T15:27:23Z FreeBird_ joined #lisp 2017-08-21T15:28:26Z jackdaniel: in SBCL when you cross compile you need to have two hosts available 2017-08-21T15:28:38Z jackdaniel: one with host architecture and one with target architecture (during the building process) 2017-08-21T15:29:14Z jackdaniel: so it is way easier to grab some already ported implementation and boostrap SBCL directly on the host. but yeah, GCC is for instance bootstrapped from GCC, not from assembler 2017-08-21T15:29:23Z trittweiler quit (Ping timeout: 240 seconds) 2017-08-21T15:29:27Z jackdaniel: same tactic is valid for Common Lisp 2017-08-21T15:29:57Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-21T15:30:11Z damke_ joined #lisp 2017-08-21T15:32:09Z damke quit (Ping timeout: 240 seconds) 2017-08-21T15:33:42Z raynold joined #lisp 2017-08-21T15:34:05Z zaoqi_ joined #lisp 2017-08-21T15:34:06Z dddddd joined #lisp 2017-08-21T15:34:46Z zaoqi quit (Ping timeout: 240 seconds) 2017-08-21T15:35:49Z knobo quit (Ping timeout: 240 seconds) 2017-08-21T15:37:57Z fiddlerwoaroof: butterthebuddha: you have to be a bit careful when redefining a constant because it won't necessarily update all the references to that constant 2017-08-21T15:38:09Z knobo joined #lisp 2017-08-21T15:38:49Z fiddlerwoaroof: The compiler will, on occasion, do things like inline a constant's value and then those references won't necessarily get the new value. 2017-08-21T15:40:44Z fiddlerwoaroof: So, the "redefine constant" restart can lead to an inconsistent application state: it's probably better to use reader conditionals to use defparameter in your development environment and defconstant in production, or something like that. 2017-08-21T15:41:14Z axion: I think alexandria:define-constant solves some of this 2017-08-21T15:45:29Z Bike: what define-constant does is avoid trying to redefine the constant if it meets the test with the original value. 2017-08-21T15:46:09Z Bike: so if you do (defconstant +foo+ (list 1 2 3 4) :test 'equal) twice, it defines the constant normally the first time, then the second time ignores the new list. 2017-08-21T15:47:17Z whoman quit (Quit: Leaving) 2017-08-21T15:48:45Z pjb: random-nick: yes, clisp has long-floats (and short-floats) that sbcl doesn't have. 2017-08-21T15:48:59Z pjb: random-nick: also, you can set the precision of long-floats to whatever you want. 2017-08-21T15:49:27Z Bike: sorry, if you do define-constant ... twice. 2017-08-21T15:49:40Z random-nick: pjb: ok, that's useful 2017-08-21T15:51:42Z ryanwatkins joined #lisp 2017-08-21T15:53:09Z DeadTrickster quit (Ping timeout: 240 seconds) 2017-08-21T15:54:41Z zaoqi_ quit (Quit: zaoqi_) 2017-08-21T15:55:28Z knobo quit (Ping timeout: 276 seconds) 2017-08-21T15:55:32Z dddddd quit (Ping timeout: 248 seconds) 2017-08-21T15:58:44Z skeuomorf left #lisp 2017-08-21T15:58:51Z skeuomorf joined #lisp 2017-08-21T16:03:32Z knobo joined #lisp 2017-08-21T16:05:05Z nirved quit (Quit: Leaving) 2017-08-21T16:09:06Z dddddd joined #lisp 2017-08-21T16:13:43Z Jesin joined #lisp 2017-08-21T16:15:16Z mishoo__ quit (Ping timeout: 248 seconds) 2017-08-21T16:18:48Z attila_lendvai joined #lisp 2017-08-21T16:18:48Z attila_lendvai quit (Changing host) 2017-08-21T16:18:48Z attila_lendvai joined #lisp 2017-08-21T16:19:46Z knobo quit (Ping timeout: 240 seconds) 2017-08-21T16:19:46Z attila_lendvai quit (Read error: Connection reset by peer) 2017-08-21T16:20:36Z Karl_Dscc joined #lisp 2017-08-21T16:21:41Z attila_lendvai joined #lisp 2017-08-21T16:22:10Z jnerula4 quit (Ping timeout: 260 seconds) 2017-08-21T16:22:16Z knobo joined #lisp 2017-08-21T16:22:41Z daemoz quit (Ping timeout: 240 seconds) 2017-08-21T16:24:05Z Jesin quit (Quit: Leaving) 2017-08-21T16:25:01Z Karl_Dscc quit (Remote host closed the connection) 2017-08-21T16:29:41Z knobo quit (Ping timeout: 248 seconds) 2017-08-21T16:33:26Z cross joined #lisp 2017-08-21T16:35:19Z daemoz joined #lisp 2017-08-21T16:36:03Z Jesin joined #lisp 2017-08-21T16:38:41Z hhdave quit (Ping timeout: 240 seconds) 2017-08-21T16:38:44Z jnerula4 joined #lisp 2017-08-21T16:41:49Z d4ryus3 quit (Quit: WeeChat 1.9) 2017-08-21T16:47:21Z d4ryus joined #lisp 2017-08-21T16:47:40Z _ark_ joined #lisp 2017-08-21T16:49:41Z dddddd quit (Ping timeout: 240 seconds) 2017-08-21T16:53:59Z yangby quit (Quit: Go out for a walk and buy a drink.) 2017-08-21T16:54:02Z attila_lendvai quit (Quit: Leaving.) 2017-08-21T16:55:43Z dlowe: fwiw, I pretty much never use constants ever in CL. 2017-08-21T16:57:18Z knobo joined #lisp 2017-08-21T16:57:21Z foom2 joined #lisp 2017-08-21T17:00:33Z foom quit (Ping timeout: 255 seconds) 2017-08-21T17:01:02Z defaultxr joined #lisp 2017-08-21T17:01:07Z jasom: The real sollution for string constants is: (define-symbol-macro +foo+ "some string") /s 2017-08-21T17:02:12Z pjb: (define-symbol-macro +foo+ "some string") (let ((+foo+ "some other string")) +foo+) #| --> "some other string" |# 2017-08-21T17:02:26Z damke joined #lisp 2017-08-21T17:02:26Z pjb: Do not name it +foo+! 2017-08-21T17:02:44Z dddddd joined #lisp 2017-08-21T17:04:09Z damke_ quit (Ping timeout: 240 seconds) 2017-08-21T17:05:31Z jasom: pjb: I think that LET will be a style-warning on sbcl at least. 2017-08-21T17:05:48Z sellout- quit (Quit: Leaving.) 2017-08-21T17:07:03Z Bike: shadowing symbol macros should be silent, i would think 2017-08-21T17:07:23Z jasom: Bike: not if they have earmuffs 2017-08-21T17:07:37Z Bike: oh, i guess 2017-08-21T17:07:58Z jasom: IIRC sbcl will give you a warning for (let (*foo*) ) or (let (+foo+)) because of the earmuffs 2017-08-21T17:08:06Z jasom: s/warning/style-warning 2017-08-21T17:08:53Z brendyn quit (Ping timeout: 240 seconds) 2017-08-21T17:11:15Z m00natic quit (Remote host closed the connection) 2017-08-21T17:14:55Z dlowe: probably not for *foo* since that's idiomatic and useful 2017-08-21T17:14:55Z Ukari joined #lisp 2017-08-21T17:14:56Z Ukari quit (Client Quit) 2017-08-21T17:15:24Z dlowe: I can't think of a good reason to locally bind a +foo+ variable, though 2017-08-21T17:16:47Z knobo quit (Remote host closed the connection) 2017-08-21T17:18:47Z Bike: for *foo* when the binding is lexical. 2017-08-21T17:21:57Z phinxy joined #lisp 2017-08-21T17:25:04Z basket: dlowe: Lexically binding a constant is illegal 2017-08-21T17:26:46Z phinxy quit (Ping timeout: 240 seconds) 2017-08-21T17:26:53Z Th30n joined #lisp 2017-08-21T17:27:30Z vlatkoB_ joined #lisp 2017-08-21T17:27:40Z dlowe: basket: yes, but that doesn't actually stop you from doing (defparameter +foo+ 5) 2017-08-21T17:28:09Z dlowe: and in that case, it would be legal, but still inadvisable, since it's clearly intended to be constant-ish 2017-08-21T17:30:38Z Th30n` joined #lisp 2017-08-21T17:31:16Z vlatkoB quit (Ping timeout: 240 seconds) 2017-08-21T17:33:41Z Th30n quit (Ping timeout: 248 seconds) 2017-08-21T17:34:28Z knobo joined #lisp 2017-08-21T17:34:45Z scymtym quit (Ping timeout: 248 seconds) 2017-08-21T17:35:22Z Th30n` is now known as Th30n 2017-08-21T17:37:47Z shka_ joined #lisp 2017-08-21T17:38:13Z FreeBird_ quit (Remote host closed the connection) 2017-08-21T17:38:56Z malice joined #lisp 2017-08-21T17:40:19Z Jesin quit (Quit: Leaving) 2017-08-21T17:44:42Z Jesin joined #lisp 2017-08-21T17:45:29Z damke quit (Ping timeout: 240 seconds) 2017-08-21T17:45:35Z _user joined #lisp 2017-08-21T17:46:33Z _user: does anyone know of a common lisp docstring documentation generator that works with org-mode markup, other than this one: https://github.com/jphmrst/cl-org-sampler 2017-08-21T17:48:32Z phinxy joined #lisp 2017-08-21T17:49:53Z EvW1 joined #lisp 2017-08-21T17:50:55Z malice: shka:? 2017-08-21T17:55:01Z knobo quit (Ping timeout: 248 seconds) 2017-08-21T17:55:27Z FreeBirdLjj joined #lisp 2017-08-21T17:56:58Z knobo joined #lisp 2017-08-21T17:58:35Z pjb quit (Read error: Connection reset by peer) 2017-08-21T18:00:04Z skeuomorf quit (Ping timeout: 255 seconds) 2017-08-21T18:00:37Z pjb joined #lisp 2017-08-21T18:01:49Z random-nick quit (Remote host closed the connection) 2017-08-21T18:03:57Z pjb quit (Read error: Connection reset by peer) 2017-08-21T18:04:53Z random-nick joined #lisp 2017-08-21T18:08:28Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-21T18:08:44Z mson joined #lisp 2017-08-21T18:16:53Z gigetoo quit (Ping timeout: 248 seconds) 2017-08-21T18:17:25Z gigetoo joined #lisp 2017-08-21T18:27:10Z scymtym joined #lisp 2017-08-21T18:33:35Z butterthebuddha: "The ~t directive is for tabulating. The ~10t tells FORMAT to emit enough spaces to move to the tenth column before processing the next ~a. A ~t doesn't consume any arguments." 2017-08-21T18:33:54Z butterthebuddha: What if the first "~a" is longer than 10 columns? 2017-08-21T18:34:41Z Bike: what first ~a? 2017-08-21T18:35:43Z butterthebuddha: For example, "(format t "~a10t~a" "gobblesmackfoobar" "foobar") 2017-08-21T18:36:37Z butterthebuddha: (format t "~a~10t~a" "gobblesmackfoobar" "foobar") rather 2017-08-21T18:37:54Z EvW1 quit (Remote host closed the connection) 2017-08-21T18:38:58Z malice: Well, obviously you can't go back. 2017-08-21T18:39:31Z malice: I believe it inserts at least 1 space, and at most enough to get into the nth column 2017-08-21T18:39:57Z malice: So, the result would be "gobblesmackfoobar foobar", I guess. 2017-08-21T18:45:20Z vtomole joined #lisp 2017-08-21T18:49:24Z scymtym quit (Ping timeout: 248 seconds) 2017-08-21T18:50:27Z safe quit (Quit: Leaving) 2017-08-21T18:51:47Z random-nick quit (Remote host closed the connection) 2017-08-21T18:53:40Z tonton quit (Ping timeout: 240 seconds) 2017-08-21T18:55:36Z random-nick joined #lisp 2017-08-21T18:55:49Z tonton joined #lisp 2017-08-21T18:59:07Z fsmunoz joined #lisp 2017-08-21T19:07:16Z mfiano quit (Remote host closed the connection) 2017-08-21T19:07:39Z mfiano joined #lisp 2017-08-21T19:08:26Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-21T19:08:36Z Th30n quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-21T19:11:13Z FreeBirdLjj joined #lisp 2017-08-21T19:13:25Z shka_ quit (Ping timeout: 246 seconds) 2017-08-21T19:15:31Z milanj joined #lisp 2017-08-21T19:16:08Z Lowl3v3l quit (Remote host closed the connection) 2017-08-21T19:18:09Z knobo quit (Remote host closed the connection) 2017-08-21T19:19:48Z scymtym joined #lisp 2017-08-21T19:20:06Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-21T19:27:26Z vlatkoB_ quit (Remote host closed the connection) 2017-08-21T19:29:01Z attila_lendvai joined #lisp 2017-08-21T19:32:18Z mishoo__ joined #lisp 2017-08-21T19:32:55Z JuanDaugherty joined #lisp 2017-08-21T19:38:21Z jsjolen joined #lisp 2017-08-21T19:41:11Z DeadTrickster joined #lisp 2017-08-21T19:45:35Z drmeister quit (Ping timeout: 246 seconds) 2017-08-21T19:47:01Z jyc quit (Ping timeout: 246 seconds) 2017-08-21T19:47:28Z drmeister joined #lisp 2017-08-21T19:47:50Z jyc joined #lisp 2017-08-21T19:49:59Z kajo joined #lisp 2017-08-21T19:59:00Z whartung joined #lisp 2017-08-21T20:05:41Z Jesin quit (Quit: Leaving) 2017-08-21T20:06:32Z big_num joined #lisp 2017-08-21T20:09:42Z anticrisis joined #lisp 2017-08-21T20:19:30Z malice: How do I run slime-inspector on returned value in REPL? 2017-08-21T20:19:49Z malice: I have something like #, but when I press C-c I in there I get error about illegal sharp macro character 2017-08-21T20:19:56Z flip214: malice: inspect * 2017-08-21T20:20:01Z flip214: that's the last result 2017-08-21T20:20:08Z flip214: and ** would be the previous-to-last 2017-08-21T20:20:13Z flip214: and there's *** too 2017-08-21T20:20:20Z _death: C-c I * 2017-08-21T20:20:53Z scymtym: C-c C-v TAB when the cursor is on the presentation 2017-08-21T20:20:55Z anticrisis: malice: try also C-c C-v TAB whith your cursor 2017-08-21T20:21:07Z malice: flip214: but that would be inspector 2017-08-21T20:21:18Z malice: I want slime's inspector, so I can move around with shortcuts and cursor 2017-08-21T20:21:34Z malice: thanks _death 2017-08-21T20:21:50Z malice: and thanks scymtym and anticrisis 2017-08-21T20:21:52Z malice: both approaches work 2017-08-21T20:23:42Z random-nick quit (Remote host closed the connection) 2017-08-21T20:24:18Z axion: If you use Sly, nearly everything is a button that can easily be inspected. 2017-08-21T20:25:40Z flip214: malice: I meant to use the slime inspector on * 2017-08-21T20:27:11Z varjag joined #lisp 2017-08-21T20:27:17Z skeuomorf joined #lisp 2017-08-21T20:28:28Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-21T20:30:03Z kora9 joined #lisp 2017-08-21T20:32:42Z random-nick joined #lisp 2017-08-21T20:38:08Z klltkr joined #lisp 2017-08-21T20:38:33Z mson quit (Quit: Connection closed for inactivity) 2017-08-21T20:39:33Z KongWubba joined #lisp 2017-08-21T20:43:31Z gnuhurd joined #lisp 2017-08-21T20:44:29Z gnuhurd: hi, if I have a function that setf's a variable, and I want to return the variable at the end, can I use eval? will it pose any risks? if not, what should I do to return it? 2017-08-21T20:45:52Z attila_lendvai quit (Quit: Leaving.) 2017-08-21T20:46:14Z gnuhurd: this is how my function looks currently: https://p.teknik.io/uXWw8 2017-08-21T20:46:46Z Xach: gnuhurd: you can just end with mft-name. no need for eval. 2017-08-21T20:47:23Z Xach: the value of the last form evaluated in the function is what gets returned. and evaluation is "automatic" in this context. 2017-08-21T20:47:36Z gnuhurd: thank you 2017-08-21T20:48:47Z anticris` joined #lisp 2017-08-21T20:50:28Z jasom: are there any decent refactoring tools for lisp (e.g. rename a lexical binding)? I currently make do with find/replace but that seems slightly awkward for some code. 2017-08-21T20:51:05Z Xach: jasom: there was redshank, but i never tried it and i think it was pretty limited in scope. 2017-08-21T20:51:15Z jasom: other things that would be nice to automate is: turn this block into a defun, with parameters named the same as all externally-bound values referenced in the block 2017-08-21T20:52:10Z jasom: (let (foo) (let (bar) (baz foo bar))) <-- e.g. it would be nice to be able to turn the (let (bar) ...) into (defun _CURSOR_ (foo) (baz foo bar)) at the toplevel somewhere 2017-08-21T20:52:28Z anticrisis quit (Ping timeout: 246 seconds) 2017-08-21T20:58:16Z marvin2 quit 2017-08-21T20:58:28Z vtomole quit (Ping timeout: 260 seconds) 2017-08-21T21:04:41Z jsjolen quit (Ping timeout: 246 seconds) 2017-08-21T21:05:21Z knobo joined #lisp 2017-08-21T21:13:07Z malice: flip214:then I didn't understand you, sorry 2017-08-21T21:18:07Z KongWubba quit (Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org) 2017-08-21T21:18:55Z Bike quit (Ping timeout: 255 seconds) 2017-08-21T21:24:54Z nydel1 quit (Read error: Connection reset by peer) 2017-08-21T21:25:37Z seanzheng quit (Quit: Connection closed for inactivity) 2017-08-21T21:29:27Z angavrilov quit (Remote host closed the connection) 2017-08-21T21:29:36Z mishoo__ quit (Ping timeout: 240 seconds) 2017-08-21T21:30:13Z raynold quit (Quit: Connection closed for inactivity) 2017-08-21T21:32:14Z knobo quit (Remote host closed the connection) 2017-08-21T21:32:47Z ebzzry_ joined #lisp 2017-08-21T21:36:25Z EvW joined #lisp 2017-08-21T21:42:06Z rRru joined #lisp 2017-08-21T21:43:50Z JuanDaugherty looks for a way to have sbcl gc *only* on thread exit 2017-08-21T21:46:49Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-21T21:50:43Z anticris` quit (Ping timeout: 248 seconds) 2017-08-21T21:50:54Z anticrisis joined #lisp 2017-08-21T21:52:33Z phinxy quit (Quit: Leaving) 2017-08-21T21:59:27Z JuanDaugherty: http://sbcl-internals.cliki.net/ is broken 2017-08-21T22:00:01Z JuanDaugherty: (on http://www.sbcl.org/links.html ) 2017-08-21T22:00:11Z gnuhurd left #lisp 2017-08-21T22:05:36Z quazimodo joined #lisp 2017-08-21T22:06:31Z Bike joined #lisp 2017-08-21T22:07:03Z Karl_Dscc joined #lisp 2017-08-21T22:08:28Z sdemarre joined #lisp 2017-08-21T22:09:32Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-21T22:09:45Z akkad: doesn't exit cause it to gc the resources of th thread? 2017-08-21T22:10:49Z JuanDaugherty: right 2017-08-21T22:11:19Z JuanDaugherty: although it's not clear to me ATM how that impacts other threads 2017-08-21T22:13:24Z Karl_Dscc quit (Remote host closed the connection) 2017-08-21T22:14:57Z dustyweb joined #lisp 2017-08-21T22:16:13Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-21T22:17:59Z random-nick quit (Remote host closed the connection) 2017-08-21T22:24:05Z dan64- joined #lisp 2017-08-21T22:25:35Z dan64 quit (Ping timeout: 260 seconds) 2017-08-21T22:26:45Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-21T22:28:49Z ebzzry_ joined #lisp 2017-08-21T22:29:08Z klltkr joined #lisp 2017-08-21T22:29:23Z nsnc quit (Ping timeout: 240 seconds) 2017-08-21T22:30:01Z malice: How do you declaim type of &key arguments? (declaim (ftype (function (first-arg ???) return-type) func-name)) 2017-08-21T22:30:10Z malice: what should I put in ??? when I want to include the keyword argument? 2017-08-21T22:30:15Z malice: (s) 2017-08-21T22:32:29Z dan64 joined #lisp 2017-08-21T22:34:28Z axion: (declaim (ftype (function (&key (:keyword-symbol type)) ret) 2017-08-21T22:34:31Z doesthiswork quit (Ping timeout: 255 seconds) 2017-08-21T22:34:38Z nsnc joined #lisp 2017-08-21T22:34:46Z axion: You more than likely want an actual keyword symbol specifying it, too. 2017-08-21T22:35:23Z dan64- quit (Ping timeout: 240 seconds) 2017-08-21T22:35:29Z pierpa joined #lisp 2017-08-21T22:35:41Z malice: I see. THanks. 2017-08-21T22:37:12Z dan64- joined #lisp 2017-08-21T22:37:13Z varjag quit (Ping timeout: 255 seconds) 2017-08-21T22:37:58Z axion: malice: Keyword arguments are slower than regular function arguments. If you are trying to provide type annotations to the compiler for optimization purposes, might just want to use regular arguments if speed is important. 2017-08-21T22:38:40Z basket: malice: You can normally look at things like that by asking Lisp to describe things, eg after (defun f (&key x) (declare (fixnum x)) x), (describe #'f) on SBCL tells me the derived type is (FUNCTION (&KEY (:X FIXNUM)) (VALUES FIXNUM &OPTIONAL)) 2017-08-21T22:39:23Z dan64 quit (Ping timeout: 240 seconds) 2017-08-21T22:43:10Z kajo quit (Quit: WeeChat 1.9) 2017-08-21T22:44:09Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-21T22:46:17Z malice: axion: actually I'm doing it so that I know the expected type 2017-08-21T22:46:47Z malice: thanks basket 2017-08-21T22:48:24Z dan64 joined #lisp 2017-08-21T22:49:43Z slyrus: is there a dedicated channel to lisp web stuff, particularly caveman/clack/ningle/lack/etc...? 2017-08-21T22:49:49Z dan64- quit (Ping timeout: 255 seconds) 2017-08-21T22:50:11Z karswell_ quit (Read error: Connection reset by peer) 2017-08-21T22:51:22Z karswell_ joined #lisp 2017-08-21T22:51:58Z doesthiswork joined #lisp 2017-08-21T22:52:26Z malice: I don't think so. 2017-08-21T22:55:40Z axion: #lispweb? 2017-08-21T22:58:31Z karswell_ quit (Remote host closed the connection) 2017-08-21T23:01:17Z vtomole joined #lisp 2017-08-21T23:04:41Z jasom: slyrus: #lispweb 2017-08-21T23:06:18Z oleo quit (Ping timeout: 240 seconds) 2017-08-21T23:07:01Z slyrus: right, thanks! 2017-08-21T23:07:36Z oleo joined #lisp 2017-08-21T23:09:07Z vtomole` joined #lisp 2017-08-21T23:09:24Z vtomole quit (Quit: Page closed) 2017-08-21T23:12:10Z oleo quit (Ping timeout: 240 seconds) 2017-08-21T23:12:13Z _main_ joined #lisp 2017-08-21T23:12:27Z _main_ quit (Read error: Connection reset by peer) 2017-08-21T23:13:09Z smazga quit (Quit: leaving) 2017-08-21T23:13:15Z _main_ joined #lisp 2017-08-21T23:13:57Z _main_ quit (Read error: Connection reset by peer) 2017-08-21T23:14:40Z __main__ quit (Ping timeout: 240 seconds) 2017-08-21T23:15:11Z ntinos quit (Remote host closed the connection) 2017-08-21T23:15:15Z _main_ joined #lisp 2017-08-21T23:15:59Z ntinos joined #lisp 2017-08-21T23:18:41Z _main_ is now known as __main__ 2017-08-21T23:19:00Z neoncontrails joined #lisp 2017-08-21T23:24:14Z rRru quit (Quit: rRru) 2017-08-21T23:25:15Z karswell joined #lisp 2017-08-21T23:25:15Z quazimodo quit (Read error: Connection reset by peer) 2017-08-21T23:25:35Z vtomole` quit (Read error: No route to host) 2017-08-21T23:26:11Z vtomole joined #lisp 2017-08-21T23:28:14Z _user quit (Remote host closed the connection) 2017-08-21T23:29:05Z Kaisyu joined #lisp 2017-08-21T23:30:43Z vtomole quit (Remote host closed the connection) 2017-08-21T23:32:47Z varjag joined #lisp 2017-08-21T23:37:57Z varjag quit (Ping timeout: 248 seconds) 2017-08-21T23:47:36Z pierpa quit (Quit: Page closed) 2017-08-21T23:48:49Z skeuomorf quit (Ping timeout: 240 seconds) 2017-08-21T23:52:18Z devon joined #lisp 2017-08-21T23:58:23Z ebzzry_ quit (Ping timeout: 240 seconds) 2017-08-22T00:00:22Z emacsomancer joined #lisp 2017-08-22T00:00:27Z ebzzry_ joined #lisp 2017-08-22T00:03:45Z vtomole joined #lisp 2017-08-22T00:10:29Z Jesin joined #lisp 2017-08-22T00:15:41Z EvW quit (Ping timeout: 255 seconds) 2017-08-22T00:16:37Z milanj quit (Quit: This computer has gone to sleep) 2017-08-22T00:16:52Z codermattie joined #lisp 2017-08-22T00:17:07Z peterhil joined #lisp 2017-08-22T00:22:02Z vtomole quit (Ping timeout: 260 seconds) 2017-08-22T00:24:04Z milanj joined #lisp 2017-08-22T00:25:47Z yoyomandude joined #lisp 2017-08-22T00:26:47Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-22T00:26:48Z QualityAddict quit (Disconnected by services) 2017-08-22T00:28:26Z QualityAddict joined #lisp 2017-08-22T00:31:51Z QualityAddict is now known as Guest76076 2017-08-22T00:38:54Z yoyomandude left #lisp 2017-08-22T00:41:34Z felipedvorak quit (Quit: felipedvorak) 2017-08-22T00:47:32Z milanj quit (Quit: Leaving) 2017-08-22T00:53:48Z quazimodo joined #lisp 2017-08-22T01:00:16Z felipedvorak joined #lisp 2017-08-22T01:02:52Z anticris` joined #lisp 2017-08-22T01:02:54Z anticris` quit (Remote host closed the connection) 2017-08-22T01:06:40Z anticrisis quit (Ping timeout: 240 seconds) 2017-08-22T01:06:55Z jameser joined #lisp 2017-08-22T01:10:08Z Fare joined #lisp 2017-08-22T01:14:45Z glamas joined #lisp 2017-08-22T01:16:03Z brendyn joined #lisp 2017-08-22T01:17:21Z d4ryus1 joined #lisp 2017-08-22T01:20:34Z d4ryus quit (Ping timeout: 255 seconds) 2017-08-22T01:35:07Z lerax joined #lisp 2017-08-22T01:35:38Z TDT joined #lisp 2017-08-22T01:35:51Z lerax: Pipelines in Python: https://gist.github.com/ryukinix/1e99bac3d49f81f006c620d102675e16 :v 2017-08-22T01:36:54Z lerax left #lisp 2017-08-22T01:45:19Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-08-22T01:47:33Z FalconPilot quit (Ping timeout: 248 seconds) 2017-08-22T01:47:34Z shiranuidong joined #lisp 2017-08-22T01:52:51Z glamas quit (Remote host closed the connection) 2017-08-22T01:53:14Z QualityAddict joined #lisp 2017-08-22T01:57:06Z glamas joined #lisp 2017-08-22T01:57:55Z brendyn quit (Ping timeout: 255 seconds) 2017-08-22T01:58:46Z brendyn joined #lisp 2017-08-22T02:00:22Z vtomole joined #lisp 2017-08-22T02:02:35Z yaewa joined #lisp 2017-08-22T02:03:58Z moei quit (Ping timeout: 246 seconds) 2017-08-22T02:08:45Z shiranuidong quit (Ping timeout: 240 seconds) 2017-08-22T02:15:17Z devon quit (Ping timeout: 248 seconds) 2017-08-22T02:24:46Z sjl joined #lisp 2017-08-22T02:32:26Z keviv quit (Remote host closed the connection) 2017-08-22T02:33:40Z sjl quit (Ping timeout: 240 seconds) 2017-08-22T02:40:25Z dieggsy joined #lisp 2017-08-22T02:41:10Z glamas quit (Read error: Connection reset by peer) 2017-08-22T02:41:46Z glamas joined #lisp 2017-08-22T02:42:39Z vtomole_ joined #lisp 2017-08-22T02:42:40Z fsmunoz quit (Ping timeout: 240 seconds) 2017-08-22T02:42:47Z sjl joined #lisp 2017-08-22T02:43:12Z vtomole quit (Ping timeout: 260 seconds) 2017-08-22T02:44:44Z yaewa quit (Quit: Leaving...) 2017-08-22T02:46:47Z eeyyy joined #lisp 2017-08-22T02:48:03Z chens joined #lisp 2017-08-22T02:52:28Z FalconPilot joined #lisp 2017-08-22T02:52:31Z eeyyy: Hey i just started learning this a week ago and i put in the code (defmacro unless (condition &rest body) '(if (not ,condition) (progn ,@body))) and got an error. Anyboody know what i did wrong? 2017-08-22T02:53:06Z axion: You didn't use a quasiquote for starters 2017-08-22T02:53:24Z eeyyy: olright 2017-08-22T02:53:25Z keviv joined #lisp 2017-08-22T02:54:49Z oleo joined #lisp 2017-08-22T02:57:19Z scymtym quit (Ping timeout: 255 seconds) 2017-08-22T02:58:19Z Bike: you'll probably get a complaint for trying to redefine the CL macro "unless", so give it a different name. 2017-08-22T03:06:52Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-22T03:14:44Z test1600 joined #lisp 2017-08-22T03:14:48Z schoppenhauer quit (Read error: Connection reset by peer) 2017-08-22T03:16:11Z TDT quit (Read error: Connection reset by peer) 2017-08-22T03:16:36Z glamas quit (Remote host closed the connection) 2017-08-22T03:20:23Z emaczen joined #lisp 2017-08-22T03:20:54Z schoppenhauer joined #lisp 2017-08-22T03:21:43Z emaczen: If I run (sb-thread:make-thread ...) in a loop, will the threads be running concurrently? 2017-08-22T03:22:04Z glamas joined #lisp 2017-08-22T03:22:18Z big_num quit (Quit: WeeChat 1.7) 2017-08-22T03:23:37Z Bike: if they dont end too soon, sure 2017-08-22T03:24:00Z dieggsy quit (Read error: Connection reset by peer) 2017-08-22T03:24:04Z emaczen: Bike: Yep, they are taking some time... 2017-08-22T03:27:39Z jamtho_ joined #lisp 2017-08-22T03:31:09Z peterhil quit (Quit: Must not waste too much time here...) 2017-08-22T03:32:18Z peterhil joined #lisp 2017-08-22T03:35:04Z loke: emaczen: Just don't start too many, or you might cause the system to grind to a halt. 2017-08-22T03:36:47Z emaczen: loke: is 20 some too many? 2017-08-22T03:38:18Z peterhil quit (Ping timeout: 255 seconds) 2017-08-22T03:41:42Z seanzheng joined #lisp 2017-08-22T03:42:04Z loke: emaczen: No. 2017-08-22T03:42:17Z seanzheng left #lisp 2017-08-22T03:43:07Z loke: emaczen: It also depends on what they do. If each thread is using 100% CPU, then obviously there is little benefit of starting more than the number of threads in the CPU (where by "cpu thread" i refer to "virtual" cpu's, = cores*hyperthread) 2017-08-22T03:43:42Z loke: Once you start nmore than, say, 20×the number of cores in the machine, you'll start to feel it. 2017-08-22T03:44:04Z loke: If, on the other hand, the threads are mostly idle, you can easily start thousands without any problems. 2017-08-22T03:44:47Z emaczen: loke: I think it is stalling pretty bad... 2017-08-22T03:45:07Z emaczen: loke: is there a lisp way to check the number of cores? 2017-08-22T03:45:09Z loke: emaczen: "htop" is a useful command to monitor 2017-08-22T03:45:21Z loke: emaczen: No. but use htop in a terminal. 2017-08-22T03:46:11Z emaczen: is that the same thing is top? 2017-08-22T03:46:20Z loke: It's a better version of top 2017-08-22T03:46:21Z malice: almost 2017-08-22T03:46:21Z emaczen: eshell won't let me run htop 2017-08-22T03:46:25Z malice: use ncores 2017-08-22T03:46:30Z malice: ugh, not that 2017-08-22T03:46:39Z malice: nproc 2017-08-22T03:46:44Z malice: nproc tells you how many cores you have 2017-08-22T03:46:55Z loke: emaczen: Um... no. I doubt you'll be able to run any program in eshell that uses terminal controls. 2017-08-22T03:47:05Z loke: Just open a normal terminal. You don't have to do _everything_ in emacs ;-) 2017-08-22T03:47:11Z malice: and should be bundled with your OS. your OS might not provide htop out of the box 2017-08-22T03:47:19Z malice: but you might want to install it, it's a better top. 2017-08-22T03:47:26Z dieggsy joined #lisp 2017-08-22T03:47:28Z malice: loke: blasphemy! 2017-08-22T03:48:09Z loke: malice: OK, OK... M-x terminal then :-) 2017-08-22T03:48:16Z keviv quit (Remote host closed the connection) 2017-08-22T03:48:37Z loke: I seem to recall there is an emacs package that does something similar to top, in a buffer? 2017-08-22T03:49:05Z malice: C-c p, I guess 2017-08-22T03:49:11Z loke: https://www.emacswiki.org/emacs/TopMode 2017-08-22T03:49:16Z malice: C-x p* 2017-08-22T03:49:25Z malice: I often press that by accident 2017-08-22T03:49:27Z emaczen: ok I am installing htop 2017-08-22T03:49:38Z loke: htop is pretty awesome 2017-08-22T03:49:48Z malice: emaczen: if you just want to check how many cores you have though, nproc is more than enough 2017-08-22T03:50:20Z loke: cat /proc/cpuinfo | grep processor | wc -l 2017-08-22T03:51:02Z loke: That saiid, I figured that emaczen also wanted to monitor CPU load during his threading examples. 2017-08-22T03:51:17Z kora9 quit (Ping timeout: 248 seconds) 2017-08-22T03:52:38Z pjb joined #lisp 2017-08-22T03:52:43Z malice: that might be useful 2017-08-22T03:52:56Z malice: also, if you have some simple task that you just want to parallelize, GNU parallel is also a good choice 2017-08-22T03:54:11Z shka_ joined #lisp 2017-08-22T03:55:25Z daemoz quit (Remote host closed the connection) 2017-08-22T03:55:45Z daemoz joined #lisp 2017-08-22T03:59:37Z dddddd quit (Remote host closed the connection) 2017-08-22T04:05:04Z glamas quit (Remote host closed the connection) 2017-08-22T04:05:31Z MrBismuth joined #lisp 2017-08-22T04:06:45Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-22T04:08:13Z MrBusiness quit (Ping timeout: 246 seconds) 2017-08-22T04:09:58Z emaczen quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-22T04:11:17Z vtomole_ quit (Ping timeout: 260 seconds) 2017-08-22T04:11:34Z glamas joined #lisp 2017-08-22T04:14:59Z beach: Good morning everyone! 2017-08-22T04:15:00Z kini quit (Quit: No Ping reply in 180 seconds.) 2017-08-22T04:16:57Z chu quit (Quit: WeeChat 1.9) 2017-08-22T04:17:01Z Lowl3v3l joined #lisp 2017-08-22T04:17:33Z kini joined #lisp 2017-08-22T04:18:49Z chu joined #lisp 2017-08-22T04:18:53Z Lowl3v3l quit (Client Quit) 2017-08-22T04:19:04Z vtomole joined #lisp 2017-08-22T04:22:41Z oleo quit (Quit: irc client terminated!) 2017-08-22T04:26:09Z dieggsy quit (Ping timeout: 240 seconds) 2017-08-22T04:28:12Z kini quit (Quit: No Ping reply in 180 seconds.) 2017-08-22T04:30:35Z kini joined #lisp 2017-08-22T04:30:52Z glamas quit (Remote host closed the connection) 2017-08-22T04:36:51Z vlatkoB joined #lisp 2017-08-22T04:39:03Z scymtym joined #lisp 2017-08-22T04:40:15Z Bike quit (Ping timeout: 240 seconds) 2017-08-22T04:54:35Z loke: Hello! 2017-08-22T04:55:05Z _ark_ quit (Ping timeout: 246 seconds) 2017-08-22T05:03:31Z glamas joined #lisp 2017-08-22T05:04:15Z glamas quit (Remote host closed the connection) 2017-08-22T05:10:22Z PuercoPop: has someone used https://common-lisp.net/project/clonsigna/ ? 2017-08-22T05:10:52Z flamebeard joined #lisp 2017-08-22T05:11:38Z Devon joined #lisp 2017-08-22T05:11:56Z dec0n joined #lisp 2017-08-22T05:16:39Z neoncontrails quit (Remote host closed the connection) 2017-08-22T05:17:00Z Devon quit (Remote host closed the connection) 2017-08-22T05:22:44Z mange joined #lisp 2017-08-22T05:27:10Z ebzzry_ quit (Ping timeout: 255 seconds) 2017-08-22T05:30:50Z shka_: there are download stats 2017-08-22T05:30:51Z shka_: http://blog.quicklisp.org/2017/08/july-2017-quicklisp-download-stats.html 2017-08-22T05:31:04Z shka_: i'm surprised to not see regexps here! 2017-08-22T05:32:17Z shka_: also, numbers seems to be growing 2017-08-22T05:33:39Z malice: shka_: surprised to not see regexps in download stats? 2017-08-22T05:33:47Z malice: or where? 2017-08-22T05:33:56Z shka_: malice: pcre 2017-08-22T05:34:08Z shka_: it is not top downloaded library as it seems 2017-08-22T05:34:14Z malice: it is 2017-08-22T05:34:15Z malice: 8095 2017-08-22T05:34:18Z malice: 7095* 2017-08-22T05:34:23Z malice: cl-ppcre 2017-08-22T05:34:40Z shka_: oooooooooooh 2017-08-22T05:34:47Z shka_: i missed it :] 2017-08-22T05:34:53Z malice: I'm curious whether the stats include deps or not. 2017-08-22T05:34:55Z malice: ;) 2017-08-22T05:35:01Z aeth: shka_: alexandria is always going to be the top downloaded library because of holes in the standard. 2017-08-22T05:35:06Z shka_: i bet they do 2017-08-22T05:35:42Z aeth: Most of the top downloaded projects are things that are core in many modern languages. 2017-08-22T05:36:15Z shka_: aeth: i don't care :P 2017-08-22T05:36:38Z aeth: Not everyone works with text, almost everyone works with something that alexandria covers because it's more general. 2017-08-22T05:38:01Z glamas joined #lisp 2017-08-22T05:38:08Z shka_: esrap is also high 2017-08-22T05:38:57Z neoncontrails joined #lisp 2017-08-22T05:47:53Z angavrilov joined #lisp 2017-08-22T05:47:56Z damke joined #lisp 2017-08-22T05:49:09Z glamas quit (Remote host closed the connection) 2017-08-22T05:49:55Z damke_ joined #lisp 2017-08-22T05:50:05Z doesthiswork quit (Quit: Leaving.) 2017-08-22T05:50:20Z glamas joined #lisp 2017-08-22T05:51:17Z Mon_Ouie quit (Ping timeout: 248 seconds) 2017-08-22T05:52:24Z scymtym quit (Read error: No route to host) 2017-08-22T05:52:45Z damke quit (Ping timeout: 246 seconds) 2017-08-22T05:53:02Z Karl_Dscc joined #lisp 2017-08-22T05:53:38Z scymtym joined #lisp 2017-08-22T05:58:11Z damke joined #lisp 2017-08-22T05:59:36Z Mon_Ouie joined #lisp 2017-08-22T06:00:48Z damke_ quit (Ping timeout: 240 seconds) 2017-08-22T06:01:53Z glamas quit (Remote host closed the connection) 2017-08-22T06:03:16Z moei joined #lisp 2017-08-22T06:03:26Z damke_ joined #lisp 2017-08-22T06:05:08Z damke quit (Ping timeout: 240 seconds) 2017-08-22T06:11:51Z damke_ quit (Read error: Connection reset by peer) 2017-08-22T06:12:51Z damke_ joined #lisp 2017-08-22T06:13:26Z glamas joined #lisp 2017-08-22T06:15:34Z Karl_Dscc quit (Remote host closed the connection) 2017-08-22T06:27:05Z attila_lendvai joined #lisp 2017-08-22T06:27:29Z daemoz quit (Remote host closed the connection) 2017-08-22T06:27:49Z daemoz joined #lisp 2017-08-22T06:32:41Z knobo joined #lisp 2017-08-22T06:33:45Z sellout- joined #lisp 2017-08-22T06:34:46Z mishoo__ joined #lisp 2017-08-22T06:35:13Z EvW1 joined #lisp 2017-08-22T06:38:20Z glamas quit (Remote host closed the connection) 2017-08-22T06:42:04Z fiddlerwoaroof: PuercoPop: I have 2017-08-22T06:42:22Z fiddlerwoaroof: It works pretty well, IIRC, but the docs aren't always accurate 2017-08-22T06:44:01Z pillton: aeth: Stop confusing language and library. 2017-08-22T06:45:51Z glamas joined #lisp 2017-08-22T06:46:45Z EvW1 quit (Ping timeout: 240 seconds) 2017-08-22T06:47:53Z glamas quit (Remote host closed the connection) 2017-08-22T06:48:29Z glamas joined #lisp 2017-08-22T06:49:48Z damke_ quit (Ping timeout: 240 seconds) 2017-08-22T06:52:35Z glamas quit (Client Quit) 2017-08-22T06:54:11Z sellout- quit (Ping timeout: 248 seconds) 2017-08-22T07:01:50Z sellout- joined #lisp 2017-08-22T07:04:15Z damke_ joined #lisp 2017-08-22T07:05:29Z zaoqi joined #lisp 2017-08-22T07:06:58Z mange quit (Remote host closed the connection) 2017-08-22T07:08:08Z damke joined #lisp 2017-08-22T07:08:20Z sellout- quit (Quit: Leaving.) 2017-08-22T07:09:48Z damke_ quit (Ping timeout: 240 seconds) 2017-08-22T07:10:09Z zaoqi quit (Read error: Connection reset by peer) 2017-08-22T07:10:10Z zaoqi_ joined #lisp 2017-08-22T07:13:05Z varjag joined #lisp 2017-08-22T07:14:39Z Xof quit (Ping timeout: 240 seconds) 2017-08-22T07:21:23Z shka_ quit (Ping timeout: 248 seconds) 2017-08-22T07:22:35Z zaoqi joined #lisp 2017-08-22T07:22:48Z zaoqi_ quit (Read error: Connection reset by peer) 2017-08-22T07:28:56Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-22T07:30:39Z trittweiler joined #lisp 2017-08-22T07:37:59Z schweers joined #lisp 2017-08-22T07:42:00Z kazuki_ito joined #lisp 2017-08-22T07:42:17Z kazuki_ito left #lisp 2017-08-22T07:46:39Z hvxgr quit (Ping timeout: 240 seconds) 2017-08-22T07:47:57Z hvxgr joined #lisp 2017-08-22T07:49:23Z rRru joined #lisp 2017-08-22T07:55:11Z damke_ joined #lisp 2017-08-22T07:56:52Z zaoqi quit (Ping timeout: 240 seconds) 2017-08-22T07:57:00Z damke quit (Ping timeout: 246 seconds) 2017-08-22T07:57:36Z arbv quit (Read error: Connection reset by peer) 2017-08-22T07:57:47Z arbv_ joined #lisp 2017-08-22T07:58:04Z arbv_ is now known as arbv 2017-08-22T08:01:06Z zaoqi joined #lisp 2017-08-22T08:03:27Z eeyyy quit (Ping timeout: 260 seconds) 2017-08-22T08:07:24Z shka: malice: i don't use any markup other than lisp itself 2017-08-22T08:22:38Z Murii joined #lisp 2017-08-22T08:24:25Z hhdave joined #lisp 2017-08-22T08:25:12Z random-nick joined #lisp 2017-08-22T08:25:53Z chens quit (Remote host closed the connection) 2017-08-22T08:29:56Z vap1 joined #lisp 2017-08-22T08:30:08Z vaporatorius__ joined #lisp 2017-08-22T08:31:55Z vaporatorius quit (Ping timeout: 276 seconds) 2017-08-22T08:41:32Z flotfacetieux joined #lisp 2017-08-22T08:46:02Z flotfacetieux quit (Ping timeout: 260 seconds) 2017-08-22T08:46:11Z knobo quit (Ping timeout: 248 seconds) 2017-08-22T08:46:38Z Beetny joined #lisp 2017-08-22T08:50:52Z bigos joined #lisp 2017-08-22T08:51:52Z vtomole quit (Ping timeout: 260 seconds) 2017-08-22T08:56:33Z Xof joined #lisp 2017-08-22T09:00:53Z bigos quit (Quit: Leaving) 2017-08-22T09:03:08Z scymtym quit (Read error: No route to host) 2017-08-22T09:05:32Z vap1 quit (Quit: Leaving) 2017-08-22T09:10:16Z knobo joined #lisp 2017-08-22T09:12:56Z lanu joined #lisp 2017-08-22T09:13:35Z damke_ quit (Read error: Connection reset by peer) 2017-08-22T09:14:08Z damke_ joined #lisp 2017-08-22T09:17:12Z lanu quit (Quit: leaving) 2017-08-22T09:17:34Z quazimodo quit (Ping timeout: 255 seconds) 2017-08-22T09:19:51Z ebzzry_ joined #lisp 2017-08-22T09:19:57Z damke joined #lisp 2017-08-22T09:20:08Z damke_ quit (Ping timeout: 240 seconds) 2017-08-22T09:21:15Z shwouchk quit (Quit: Connection closed for inactivity) 2017-08-22T09:26:48Z damke quit (Ping timeout: 240 seconds) 2017-08-22T09:30:46Z Bike joined #lisp 2017-08-22T09:35:39Z test1600 quit (Quit: Leaving) 2017-08-22T09:36:04Z damke joined #lisp 2017-08-22T09:40:20Z m00natic joined #lisp 2017-08-22T09:42:34Z damke_ joined #lisp 2017-08-22T09:44:13Z nullniverse joined #lisp 2017-08-22T09:44:52Z Bike quit (Ping timeout: 248 seconds) 2017-08-22T09:45:08Z damke quit (Ping timeout: 240 seconds) 2017-08-22T09:50:45Z zaoqi quit (Quit: zaoqi) 2017-08-22T09:59:15Z ryanwatkins quit (Ping timeout: 240 seconds) 2017-08-22T09:59:48Z shrdlu68 quit (Ping timeout: 248 seconds) 2017-08-22T10:04:47Z DeadTrickster_ joined #lisp 2017-08-22T10:05:30Z defaultxr quit (Ping timeout: 276 seconds) 2017-08-22T10:09:15Z flamebeard quit (Ping timeout: 240 seconds) 2017-08-22T10:09:55Z flamebeard joined #lisp 2017-08-22T10:26:09Z EvW joined #lisp 2017-08-22T10:31:08Z trittweiler quit (Ping timeout: 240 seconds) 2017-08-22T10:32:10Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-22T10:34:24Z sz0 joined #lisp 2017-08-22T10:40:50Z Tristma is now known as Tristam 2017-08-22T10:46:47Z DeadTrickster__ joined #lisp 2017-08-22T10:47:22Z trittweiler joined #lisp 2017-08-22T10:49:24Z DeadTrickster_ quit (Ping timeout: 248 seconds) 2017-08-22T10:53:08Z vibs29 quit (Ping timeout: 248 seconds) 2017-08-22T10:53:09Z jamtho_ joined #lisp 2017-08-22T10:53:40Z vibs29 joined #lisp 2017-08-22T10:54:12Z schoppenhauer quit (Ping timeout: 248 seconds) 2017-08-22T10:54:27Z epony quit (Quit: QUIT) 2017-08-22T10:54:44Z froggey quit (Ping timeout: 248 seconds) 2017-08-22T10:54:48Z rRru quit (Quit: rRru) 2017-08-22T10:54:57Z froggey joined #lisp 2017-08-22T10:55:35Z EvW quit (Ping timeout: 255 seconds) 2017-08-22T10:56:11Z EvW1 joined #lisp 2017-08-22T10:59:37Z MetaHert` joined #lisp 2017-08-22T10:59:45Z sigjuice quit (Ping timeout: 255 seconds) 2017-08-22T10:59:50Z varjagg joined #lisp 2017-08-22T10:59:55Z minion quit (Disconnected by services) 2017-08-22T10:59:57Z minion joined #lisp 2017-08-22T11:00:04Z neuri8 quit (Ping timeout: 248 seconds) 2017-08-22T11:00:10Z mishoo_ joined #lisp 2017-08-22T11:00:35Z Xof quit (Ping timeout: 248 seconds) 2017-08-22T11:00:35Z hhdave quit (Ping timeout: 248 seconds) 2017-08-22T11:00:35Z catern quit (Ping timeout: 248 seconds) 2017-08-22T11:00:53Z hhdave joined #lisp 2017-08-22T11:00:57Z hvxgr quit (Ping timeout: 240 seconds) 2017-08-22T11:01:06Z angavrilov_ joined #lisp 2017-08-22T11:01:07Z Mandus quit (Ping timeout: 248 seconds) 2017-08-22T11:01:07Z jsnell quit (Ping timeout: 248 seconds) 2017-08-22T11:01:07Z j0ni quit (Ping timeout: 248 seconds) 2017-08-22T11:01:17Z damke joined #lisp 2017-08-22T11:01:20Z jsnell joined #lisp 2017-08-22T11:01:34Z nikivi quit (Ping timeout: 260 seconds) 2017-08-22T11:01:39Z mishoo__ quit (Ping timeout: 248 seconds) 2017-08-22T11:01:39Z daemoz quit (Ping timeout: 248 seconds) 2017-08-22T11:01:39Z axion quit (Ping timeout: 248 seconds) 2017-08-22T11:01:39Z Guest46291 quit (Ping timeout: 248 seconds) 2017-08-22T11:01:41Z varjag quit (Ping timeout: 248 seconds) 2017-08-22T11:01:49Z sigjuice joined #lisp 2017-08-22T11:02:51Z Mandus joined #lisp 2017-08-22T11:02:56Z j0ni joined #lisp 2017-08-22T11:03:16Z MetaHertz quit (Ping timeout: 248 seconds) 2017-08-22T11:03:28Z damke_ quit (Ping timeout: 240 seconds) 2017-08-22T11:03:34Z micro_ joined #lisp 2017-08-22T11:03:59Z micro_ is now known as Guest59794 2017-08-22T11:04:52Z angavrilov quit (Ping timeout: 248 seconds) 2017-08-22T11:05:01Z axion joined #lisp 2017-08-22T11:05:10Z neuri8 joined #lisp 2017-08-22T11:05:10Z nikivi joined #lisp 2017-08-22T11:05:41Z daemoz joined #lisp 2017-08-22T11:08:03Z catern joined #lisp 2017-08-22T11:09:16Z hvxgr joined #lisp 2017-08-22T11:09:18Z akash47 joined #lisp 2017-08-22T11:09:40Z schoppenhauer joined #lisp 2017-08-22T11:14:46Z raynold joined #lisp 2017-08-22T11:15:15Z knobo quit (Ping timeout: 240 seconds) 2017-08-22T11:17:37Z knobo joined #lisp 2017-08-22T11:19:21Z Arnot joined #lisp 2017-08-22T11:24:37Z EvW1 quit (Ping timeout: 246 seconds) 2017-08-22T11:25:03Z scymtym joined #lisp 2017-08-22T11:25:07Z knobo quit (Ping timeout: 248 seconds) 2017-08-22T11:26:56Z knobo joined #lisp 2017-08-22T11:29:48Z ebzzry_ quit (Quit: WeeChat 1.9) 2017-08-22T11:35:53Z schweers: I have a question regarding the debugger. Suppose I have code of the structure like here http://paste.lisp.org/display/354072 Further suppose I’m already single-stepping in the debugger. Can I step over the complete loop to (some-other-code)? I’m using SLIME and SBCL. 2017-08-22T11:37:49Z nullniverse quit (Read error: Connection reset by peer) 2017-08-22T11:37:57Z nullniverse joined #lisp 2017-08-22T11:40:51Z shka: schweers: i don't think that SBCL has stepper implemented 2017-08-22T11:41:06Z schweers: I can single-step with SBCL 2017-08-22T11:41:13Z shka: oooooooh 2017-08-22T11:41:14Z shka: nice 2017-08-22T11:41:18Z schweers: :) 2017-08-22T11:41:19Z shka: i need to try it 2017-08-22T11:41:55Z schweers: I don’t know of any other free implementation which has single-stepping :/ 2017-08-22T11:44:34Z basket quit (Ping timeout: 246 seconds) 2017-08-22T11:48:42Z shka: schweers: super cool 2017-08-22T11:48:52Z schweers: it is 2017-08-22T11:49:05Z shka: all this time, i thought that stepper does not work 2017-08-22T11:49:12Z schweers: that’s one of the reasons I don’t use CCL for development :/ 2017-08-22T11:49:33Z shka: i have been programming in sbcl for over two years 2017-08-22T11:49:37Z shka: like, seriously! 2017-08-22T11:49:37Z schweers: I also thought so for a long time 2017-08-22T11:49:44Z schweers: without a single-stepper? 2017-08-22T11:49:49Z shka: yes 2017-08-22T11:49:52Z X-Scale joined #lisp 2017-08-22T11:49:57Z schweers: sounds painful 2017-08-22T11:50:00Z shka: i was using slime fancy-trace 2017-08-22T11:50:01Z schweers: well, your pain has ended! 2017-08-22T11:50:22Z shka: fancy-trace is pretty usefull, and it kinda effect on how i program 2017-08-22T11:50:38Z schweers: never used it, maybe I should take a look 2017-08-22T11:51:25Z X-Scale left #lisp 2017-08-22T11:53:43Z mson joined #lisp 2017-08-22T11:56:14Z Beetny quit (Ping timeout: 240 seconds) 2017-08-22T11:56:48Z jamtho_ quit (Ping timeout: 240 seconds) 2017-08-22T11:57:49Z schweers: still, it seems as if breakpoints have to be known at compile time 2017-08-22T12:22:21Z BitPuffin|osx joined #lisp 2017-08-22T12:22:47Z Bike joined #lisp 2017-08-22T12:28:57Z bitch quit (Ping timeout: 246 seconds) 2017-08-22T12:29:38Z wxie joined #lisp 2017-08-22T12:30:03Z EvW joined #lisp 2017-08-22T12:30:59Z dddddd joined #lisp 2017-08-22T12:32:22Z bitch joined #lisp 2017-08-22T12:34:52Z knobo quit (Ping timeout: 240 seconds) 2017-08-22T12:37:15Z knobo joined #lisp 2017-08-22T12:41:43Z damke_ joined #lisp 2017-08-22T12:43:28Z damke quit (Ping timeout: 240 seconds) 2017-08-22T12:49:15Z sjl quit (Ping timeout: 240 seconds) 2017-08-22T12:51:05Z strelox joined #lisp 2017-08-22T12:51:38Z javax joined #lisp 2017-08-22T12:53:17Z jamtho_ joined #lisp 2017-08-22T12:54:49Z damke joined #lisp 2017-08-22T12:56:13Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-22T12:56:48Z damke_ quit (Ping timeout: 240 seconds) 2017-08-22T12:59:08Z damke quit (Ping timeout: 240 seconds) 2017-08-22T13:00:09Z Arnot quit (Quit: Page closed) 2017-08-22T13:00:17Z doesthiswork joined #lisp 2017-08-22T13:03:00Z damke joined #lisp 2017-08-22T13:08:19Z dlowe: Xach: do you have a list of milestones required to get Quicklisp out of "beta"? 2017-08-22T13:10:41Z jameser joined #lisp 2017-08-22T13:11:15Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-08-22T13:13:08Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-22T13:13:51Z pjb: schweers: have a look at cl-stepper, so you may use ccl (or any other implementation) in development. 2017-08-22T13:14:45Z cromachina quit (Read error: Connection reset by peer) 2017-08-22T13:14:46Z TDT joined #lisp 2017-08-22T13:14:47Z schweers: does cl-stepper require breakpoints to be known in advance? 2017-08-22T13:15:34Z dlowe: I would expect, not having used it, that it simply uses the condition raised by the (break) form. 2017-08-22T13:16:44Z Mon_Ouie joined #lisp 2017-08-22T13:18:24Z thetabit quit (Quit: Page closed) 2017-08-22T13:19:29Z schweers: which means I have to put the break form into the code in advance 2017-08-22T13:19:33Z schweers: i.e. before compiling it 2017-08-22T13:20:56Z dlowe: Some lisp implementations allow the TRACE form to set a breakpoint 2017-08-22T13:21:20Z pjb: schweers: no. But you need to compile with CL-STEPPER instead of CL. 2017-08-22T13:21:27Z dlowe: but compilation in the normal lisp environment is so trivial that I'm not sure anyone considers it an inconvenience 2017-08-22T13:21:42Z dlowe: ah, I see. 2017-08-22T13:21:44Z pjb: what dlowe says is true too. 2017-08-22T13:21:58Z pjb: (both trace and recompilation). 2017-08-22T13:22:00Z schweers: dlowe: I don’t think I understand 2017-08-22T13:22:44Z EvW quit (Ping timeout: 255 seconds) 2017-08-22T13:22:52Z pjb: schweers: in ccl, trace has :break-before :break :break-after options. 2017-08-22T13:23:14Z schweers: ahaa 2017-08-22T13:23:21Z schweers: I didn’t know that, thanks 2017-08-22T13:23:21Z pjb: and more. 2017-08-22T13:23:39Z dlowe: schweers: in sbcl, if you (TRACE FOO :break T) it will break on every invocation of FOO 2017-08-22T13:23:49Z dlowe: http://www.sbcl.org/manual/ 5.9 2017-08-22T13:24:40Z dlowe: Hm. It sure would be handly if the manual had anchors for the different sections 2017-08-22T13:24:53Z dlowe: ah, it does. just not easily accessible 2017-08-22T13:25:02Z dlowe: http://www.sbcl.org/manual/#Function-Tracing 2017-08-22T13:25:10Z schweers: it does, but they are not numbered 2017-08-22T13:25:36Z dlowe: I mean, if you're *at* the position you want a link for, there's no convenient button 2017-08-22T13:28:08Z yrk joined #lisp 2017-08-22T13:29:36Z knobo quit (Ping timeout: 246 seconds) 2017-08-22T13:31:50Z knobo joined #lisp 2017-08-22T13:35:34Z butterthebuddha: I'm reading practical common lisp rn 2017-08-22T13:35:42Z butterthebuddha: and am on the first practical chapter 2017-08-22T13:35:55Z butterthebuddha: is it OK if I don't understand everything at the end of the chapter? 2017-08-22T13:36:05Z butterthebuddha: Does he go through everything in more detail later? 2017-08-22T13:36:33Z schweers: if I recall correctly, he does 2017-08-22T13:36:57Z schweers: um, yes 2017-08-22T13:37:07Z schweers: this is the chapter in question? http://www.gigamonkeys.com/book/practical-a-simple-database.html 2017-08-22T13:37:18Z Shinmera joined #lisp 2017-08-22T13:37:19Z dlowe: the standard academic model is to say what you're going to say, then say it, then say what you just said 2017-08-22T13:37:20Z butterthebuddha: Yeah 2017-08-22T13:37:48Z oleo joined #lisp 2017-08-22T13:37:54Z butterthebuddha: Okay cool, ty. It's a little overwhelming because lisp is very different from everything else and he goes a little quickly 2017-08-22T13:38:25Z schweers: yes, that’s just a quick show-off tour of what you can do with the language 2017-08-22T13:38:28Z schweers: a teaser if you will 2017-08-22T13:38:43Z Shinmera: The first chapter is a bit hectic, but he tries to show off something "cool" to get you interested and slows down afterwards. 2017-08-22T13:39:04Z Shinmera: Which in my opinion is fine. It could've maybe used a disclaimer of some sort though. 2017-08-22T13:39:12Z schweers: butterthebuddha: I also learned CL mostly by that book 2017-08-22T13:39:37Z schweers: well, I started with that book :) 2017-08-22T13:39:37Z butterthebuddha: Also, how comprehensive is his coverage of CL? 2017-08-22T13:39:53Z Shinmera: It covers most of the fundamentals that are in the standard. 2017-08-22T13:39:56Z schweers: he shows you enough to be able to get further on your own 2017-08-22T13:40:03Z Shinmera: So, well enough to get you going. 2017-08-22T13:40:04Z butterthebuddha: Okay cool, thanks guyz 2017-08-22T13:47:37Z BitPuffin|osx joined #lisp 2017-08-22T13:47:51Z codermattie quit (Remote host closed the connection) 2017-08-22T13:52:35Z flamebeard quit (Ping timeout: 240 seconds) 2017-08-22T13:53:16Z flamebeard joined #lisp 2017-08-22T13:56:51Z sellout- joined #lisp 2017-08-22T13:59:00Z Lowl3v3l joined #lisp 2017-08-22T13:59:31Z smazga joined #lisp 2017-08-22T14:00:40Z epony joined #lisp 2017-08-22T14:03:30Z sellout- quit (Quit: Leaving.) 2017-08-22T14:03:30Z mson quit (Quit: Connection closed for inactivity) 2017-08-22T14:03:49Z lnostdal joined #lisp 2017-08-22T14:03:54Z doesthiswork quit (Quit: Leaving.) 2017-08-22T14:06:24Z FreeBirdLjj joined #lisp 2017-08-22T14:06:55Z shka: butterthebuddha: if you don't like PCL we may recomend few other books 2017-08-22T14:07:02Z shka: but PCL is imho good 2017-08-22T14:07:18Z butterthebuddha: shka: nah I was just a little overwhelmed in the second chapter 2017-08-22T14:07:24Z shka: oh, ok 2017-08-22T14:07:37Z shka: in that case, keep reading it 2017-08-22T14:07:48Z shka: if you want, you may try land of lisp 2017-08-22T14:08:07Z shka: it is very accessible and fun, but I think that PCL is actually better 2017-08-22T14:09:30Z ryanwatkins joined #lisp 2017-08-22T14:10:28Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-22T14:10:59Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-22T14:18:59Z oleo: wth 2017-08-22T14:19:19Z oleo: why does ~/common-lisp directory get searched first in asdf ? 2017-08-22T14:21:14Z oleo: i had some lib there which contained lisp-unit, and antik want's the real lisp-unit package...and even tho i removed the ~/common-lisp/systems/bla.asd links it finds them in the ~/common-lisp/system directory still.... 2017-08-22T14:21:46Z teggi joined #lisp 2017-08-22T14:22:35Z oleo: and to make sure of that i even rm -rf'ed the whole .cache/common-lisp/* dir too 2017-08-22T14:22:35Z flamebeard quit (Quit: Leaving) 2017-08-22T14:23:32Z Kyo91 joined #lisp 2017-08-22T14:23:53Z oleo: and i have no (:tree....) in my systems-registry.conf in .config/common-lisp/source-registry.conf.d/ that points to ~/common-lisp again 2017-08-22T14:24:24Z dlowe: what does the asdf config variable say? 2017-08-22T14:24:35Z oleo: i didn't check it 2017-08-22T14:24:53Z oleo: and i didn't set it anywere ..... 2017-08-22T14:24:56Z whoman joined #lisp 2017-08-22T14:25:18Z oleo: that's the approach asdf3 uses i think 2017-08-22T14:25:24Z dec0n quit (Ping timeout: 248 seconds) 2017-08-22T14:25:52Z oleo: but did someone specify that common-lisp should be searched recursively ? 2017-08-22T14:27:26Z dec0n joined #lisp 2017-08-22T14:31:12Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-22T14:31:14Z Murii quit (Ping timeout: 240 seconds) 2017-08-22T14:33:58Z al-damiri joined #lisp 2017-08-22T14:37:18Z oleo: anyway :) 2017-08-22T14:37:34Z oleo: i could only solve it thru moving those libs in the source there to another out-of-tree location.... 2017-08-22T14:37:55Z oleo: i'd just think that recursively searching common-lisp would not be ok.... 2017-08-22T14:38:11Z wxie quit (Quit: Bye.) 2017-08-22T14:38:31Z oleo: only the systems dir of symliks to the real asdf files such that you know which you want to activate.... 2017-08-22T14:38:42Z oleo: otherwise it forces you to relocate stuff 2017-08-22T14:40:56Z schweers: it’s searched recursively? I was annoyed that it’s not, but it seems that I misunderstood 2017-08-22T14:41:28Z schweers: why don’t you think that it is wrong to search ~/common-lisp recursively? 2017-08-22T14:43:36Z Arnot joined #lisp 2017-08-22T14:46:32Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-22T14:47:12Z varjagg quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-22T14:48:03Z coffeemanmatt joined #lisp 2017-08-22T14:48:33Z warweasle joined #lisp 2017-08-22T14:50:53Z Arnot quit (Quit: Page closed) 2017-08-22T14:51:19Z BitPuffin joined #lisp 2017-08-22T14:53:29Z raynold quit (Quit: Connection closed for inactivity) 2017-08-22T14:55:42Z coffeemanmatt quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-22T14:58:48Z EvW joined #lisp 2017-08-22T15:00:12Z rippa joined #lisp 2017-08-22T15:01:59Z stardiviner joined #lisp 2017-08-22T15:02:57Z lnostdal quit (Remote host closed the connection) 2017-08-22T15:03:53Z lnostdal joined #lisp 2017-08-22T15:06:13Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-08-22T15:06:55Z stee_3_ joined #lisp 2017-08-22T15:06:58Z araujo joined #lisp 2017-08-22T15:06:58Z araujo quit (Changing host) 2017-08-22T15:06:58Z araujo joined #lisp 2017-08-22T15:09:12Z smazga quit (Quit: leaving) 2017-08-22T15:09:55Z BitPuffin quit (Read error: Connection reset by peer) 2017-08-22T15:11:14Z stee_3_ quit (Ping timeout: 240 seconds) 2017-08-22T15:11:15Z stee_3 quit (Ping timeout: 255 seconds) 2017-08-22T15:12:46Z BitPuffin joined #lisp 2017-08-22T15:13:12Z EvW quit (Ping timeout: 246 seconds) 2017-08-22T15:13:14Z himmAllRight quit (Remote host closed the connection) 2017-08-22T15:13:39Z schweers quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-22T15:13:44Z sellout- joined #lisp 2017-08-22T15:13:48Z pillton quit (Ping timeout: 240 seconds) 2017-08-22T15:14:16Z himmAllRight joined #lisp 2017-08-22T15:15:18Z sz0 joined #lisp 2017-08-22T15:16:08Z ft quit (Ping timeout: 240 seconds) 2017-08-22T15:16:37Z milanj joined #lisp 2017-08-22T15:19:41Z oleo: i DO think that it is wrong to search it recursively 2017-08-22T15:19:46Z oleo: what don't you get ? 2017-08-22T15:19:58Z smazga joined #lisp 2017-08-22T15:20:08Z stee_3 joined #lisp 2017-08-22T15:20:39Z EvW joined #lisp 2017-08-22T15:20:46Z oleo: everything (.asd files) which you link from the commonlisp/source to the common-lisp/systems directory is meant to activate that 2017-08-22T15:20:49Z jackdaniel: oleo: if you have directory structure foo/foo.asd foo/tests/foo-tests.asd and you don't search recursively, you don't have tests 2017-08-22T15:20:58Z jackdaniel: so you can't simply link project directory 2017-08-22T15:21:02Z oleo: wth 2017-08-22T15:21:44Z oleo: you can cd to common-lisp/systems and do a find ../source -name "*.asd" -exec ln -s {} \; 2017-08-22T15:22:26Z jackdaniel: well, I can do a lot of things, but searching recursively is the most intuitive to me as well 2017-08-22T15:22:41Z Shinmera: Some systems don't have symlinks. 2017-08-22T15:22:45Z oleo: never mind....that's not how it worked previously.... 2017-08-22T15:23:00Z oleo: ok if that was for that reason..... 2017-08-22T15:23:25Z oleo: Shinmera: which systems are that ? 2017-08-22T15:23:26Z Shinmera: Seems pretty reasonable to me that it would search recursively in a directory called "systems". 2017-08-22T15:23:33Z jackdaniel: asdf had problems with backward compatibility numerous times. one side of the coin is that it breaks stuff, the other one it isn't tied to design which maintainers consider broken 2017-08-22T15:23:34Z Shinmera: oleo: Windows Xp comes to mind. I'm sure there's others. 2017-08-22T15:24:11Z oleo: ya but systems is the collection of activated libs so to say for you.... 2017-08-22T15:24:34Z oleo: now when you do search recursively only systems it would be ok or not ? 2017-08-22T15:24:48Z Shinmera: I have no idea what you just said. 2017-08-22T15:24:59Z jackdaniel: oleo: if you link each asd system individually in common-lisp (without putting directories), it won't go recursively 2017-08-22T15:25:14Z DeadTrickster__ quit (Ping timeout: 240 seconds) 2017-08-22T15:25:34Z oleo: jackdaniel: i just did that...i don't put directories there or so 2017-08-22T15:25:48Z oleo: jackdaniel: and it still searched the whole of common-lisp recursively 2017-08-22T15:26:21Z dec0n quit (Read error: Connection reset by peer) 2017-08-22T15:26:42Z dec0n joined #lisp 2017-08-22T15:26:43Z oleo: anyway, you could divert asdf to detect if it is on such a system without symlinks.... 2017-08-22T15:27:06Z Shinmera: inconsistent behaviour is the worst you could do. 2017-08-22T15:27:19Z oleo: otherwise the mentioned meaning of activating libs the old way just vanishes 2017-08-22T15:27:26Z JohnTalent joined #lisp 2017-08-22T15:27:27Z oleo: and you have to move stuff around 2017-08-22T15:27:41Z Shinmera: anyway, if the default behaviour of ~/common-lisp bothers you so much you can just make your own and define its behaviour explicitly in ASDF's source registry language or whatever. 2017-08-22T15:27:44Z brendyn quit (Ping timeout: 240 seconds) 2017-08-22T15:28:27Z oleo: nm 2017-08-22T15:31:15Z Fare: symlink behavior is not portable across CL implementations 2017-08-22T15:31:34Z Fare: also, it has changed slightly in some recent version of ASDF 2017-08-22T15:31:39Z knusbaum joined #lisp 2017-08-22T15:31:46Z oleo: yah, seems so..... 2017-08-22T15:32:08Z oleo: and one notices stuff when it's not backwards compatible anymore.... 2017-08-22T15:32:17Z Fare: I used to try not to follow them in older versions, because that was the most predictable and also the way to avoid endless recursion. 2017-08-22T15:32:56Z Fare: rpg recently added a layer to avoid endless recursion, and enabled following them on implementations such as SBCL where we were previously not following them. 2017-08-22T15:33:13Z oleo: i unlinked all .asd files in system and it still found the libs in source 2017-08-22T15:33:28Z Fare: oleo: what do you really WANT ? 2017-08-22T15:33:44Z oleo: ergo has nothing todo with following symlinks 2017-08-22T15:33:50Z oleo: it is recursive search! 2017-08-22T15:33:55Z Fare: maybe what you want is the source-registry-cache ? 2017-08-22T15:34:02Z oleo: no i already have that 2017-08-22T15:34:19Z oleo: wait 2017-08-22T15:34:21Z oleo: cache ? 2017-08-22T15:34:22Z Fare: ~/common-lisp/ WILL be recursively searched, but you can use to source-registry-cache to stop the search 2017-08-22T15:34:36Z oleo: how so ? 2017-08-22T15:34:48Z Fare: ..../asdf/tools/cl-source-registry-cache.lisp 2017-08-22T15:34:50Z oleo: i hear of that cache stuff for the first time 2017-08-22T15:34:54Z damke_ joined #lisp 2017-08-22T15:34:58Z oleo: ah 2017-08-22T15:35:12Z Fare: patches to the documentation are of course welcome 2017-08-22T15:35:15Z oleo: well, i don't use asdf from source 2017-08-22T15:37:08Z damke quit (Ping timeout: 240 seconds) 2017-08-22T15:38:12Z Fare: well, you can grab that single file from gitlab 2017-08-22T15:39:19Z nalik891 joined #lisp 2017-08-22T15:39:23Z nullniverse quit (Read error: Connection reset by peer) 2017-08-22T15:42:39Z stardiviner quit (Quit: WeeChat 1.9) 2017-08-22T15:44:13Z lnostdal quit (Remote host closed the connection) 2017-08-22T15:44:46Z FreeBirdLjj joined #lisp 2017-08-22T15:48:13Z oleo: welp, i found a asdf-3.2.1 source somewhere on my hd 2017-08-22T15:48:20Z oleo: somehow that caching stuff didn't work 2017-08-22T15:48:34Z oleo: first it looks for /usr/bin/cl, i didn't have that symlink now i have 2017-08-22T15:48:55Z oleo: and i used it exactly like it says but i get into my sbcl and nothing happens.... 2017-08-22T15:49:07Z oleo: lol 2017-08-22T15:56:37Z EvW quit (Ping timeout: 255 seconds) 2017-08-22T15:56:51Z nalik891 quit (Quit: Leaving) 2017-08-22T15:57:54Z Plazma joined #lisp 2017-08-22T15:58:00Z damke joined #lisp 2017-08-22T15:59:48Z damke_ quit (Ping timeout: 240 seconds) 2017-08-22T16:01:03Z Fare: did it create a .cl-source-registry.cache in the specified directory? 2017-08-22T16:01:07Z kajo joined #lisp 2017-08-22T16:01:28Z Fare: that said, this cache will be computed from a regular search of the directory 2017-08-22T16:01:36Z oleo: no it did not do that nowhere 2017-08-22T16:01:53Z oleo: i looked in comm-lisp/ in common-lisp/source and in common-lisp/systems 2017-08-22T16:02:08Z oleo: nowhere, nothing 2017-08-22T16:04:23Z trittweiler quit (Ping timeout: 255 seconds) 2017-08-22T16:06:14Z heurist` joined #lisp 2017-08-22T16:06:44Z trittweiler joined #lisp 2017-08-22T16:07:48Z skeuomorf joined #lisp 2017-08-22T16:08:01Z oleo quit (Quit: irc client terminated!) 2017-08-22T16:08:52Z papachan joined #lisp 2017-08-22T16:09:08Z heurist quit (Ping timeout: 240 seconds) 2017-08-22T16:10:17Z ft joined #lisp 2017-08-22T16:14:54Z oleo joined #lisp 2017-08-22T16:15:08Z trittweiler quit (Ping timeout: 240 seconds) 2017-08-22T16:15:36Z knusbaum quit (Quit: Leaving.) 2017-08-22T16:15:45Z oleo: Fare: what does cl -sp asdf -E main mean ? 2017-08-22T16:16:25Z oleo: mine is sbcl, i suppose it won't understand -sp and -E 2017-08-22T16:17:16Z knusbaum joined #lisp 2017-08-22T16:17:30Z oleo: i suppose -E is eval 2017-08-22T16:17:35Z oleo: but what is sp ? 2017-08-22T16:17:43Z oleo: sourcepath ? 2017-08-22T16:19:06Z lnostdal joined #lisp 2017-08-22T16:20:34Z ft quit (Ping timeout: 248 seconds) 2017-08-22T16:21:41Z edgar-rft: smartpants 2017-08-22T16:22:10Z antoszka: lol 2017-08-22T16:23:51Z EvW joined #lisp 2017-08-22T16:27:47Z ft joined #lisp 2017-08-22T16:28:29Z kajo quit (Quit: WeeChat 1.9) 2017-08-22T16:29:00Z lnostdal quit (Ping timeout: 276 seconds) 2017-08-22T16:29:12Z Guest59794 is now known as micro_ 2017-08-22T16:30:41Z kajo joined #lisp 2017-08-22T16:37:14Z hhdave quit (Ping timeout: 255 seconds) 2017-08-22T16:37:38Z _ark_ joined #lisp 2017-08-22T16:37:38Z lnostdal joined #lisp 2017-08-22T16:37:54Z knobo quit (Ping timeout: 246 seconds) 2017-08-22T16:38:02Z Karl_Dscc joined #lisp 2017-08-22T16:39:14Z Karl_Dscc quit (Remote host closed the connection) 2017-08-22T16:40:09Z knobo joined #lisp 2017-08-22T16:40:12Z Fare: oleo: use cl-launch 2017-08-22T16:40:22Z Fare: -sp is system and package 2017-08-22T16:40:23Z oleo: oh man..... 2017-08-22T16:40:30Z Fare: load system and in-package 2017-08-22T16:40:36Z oleo: what is cl-launch ? 2017-08-22T16:41:03Z jnerula4 is now known as vhost- 2017-08-22T16:41:04Z Fare: cl-launch is the ultimate adapter between the Unix shell and CL 2017-08-22T16:41:15Z mson joined #lisp 2017-08-22T16:41:17Z oleo: is it avail thru quicklisp ? 2017-08-22T16:41:26Z Fare: only kind of 2017-08-22T16:41:31Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-22T16:41:37Z EvW quit (Ping timeout: 255 seconds) 2017-08-22T16:41:51Z Fare: quicklisp will download it, but you still need it to install it as e.g. /usr/bin/cl 2017-08-22T16:41:59Z vhost- quit (Changing host) 2017-08-22T16:41:59Z vhost- joined #lisp 2017-08-22T16:42:04Z Fare: Debian and Ubuntu must have it 2017-08-22T16:42:29Z Fare: it's also on cliki.net/cl-launch 2017-08-22T16:42:49Z EvW1 joined #lisp 2017-08-22T16:43:58Z safe joined #lisp 2017-08-22T16:45:18Z ft quit (Ping timeout: 255 seconds) 2017-08-22T16:45:29Z oleo: ok now it worked 2017-08-22T16:47:13Z ft joined #lisp 2017-08-22T16:53:01Z oleo: thank you :) 2017-08-22T17:00:42Z m00natic quit (Remote host closed the connection) 2017-08-22T17:01:17Z damke_ joined #lisp 2017-08-22T17:02:48Z damke quit (Ping timeout: 240 seconds) 2017-08-22T17:03:39Z defaultxr joined #lisp 2017-08-22T17:04:53Z raynold joined #lisp 2017-08-22T17:07:18Z bjorkweb joined #lisp 2017-08-22T17:07:32Z bjorkweb left #lisp 2017-08-22T17:09:46Z neoncont_ joined #lisp 2017-08-22T17:09:48Z damke joined #lisp 2017-08-22T17:09:50Z damke_ quit (Read error: Connection reset by peer) 2017-08-22T17:12:18Z neoncontrails quit (Ping timeout: 255 seconds) 2017-08-22T17:16:25Z shka_ joined #lisp 2017-08-22T17:18:48Z damke quit (Ping timeout: 240 seconds) 2017-08-22T17:26:31Z Th30n joined #lisp 2017-08-22T17:26:41Z random-nick quit (Remote host closed the connection) 2017-08-22T17:26:50Z _ark_ quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-22T17:31:22Z vlatkoB quit (Ping timeout: 240 seconds) 2017-08-22T17:32:09Z lnostdal quit (Ping timeout: 246 seconds) 2017-08-22T17:33:03Z vlatkoB joined #lisp 2017-08-22T17:43:24Z dieggsy joined #lisp 2017-08-22T17:48:08Z dieggsy quit (Remote host closed the connection) 2017-08-22T17:50:28Z teggi quit (Quit: Leaving...) 2017-08-22T17:54:12Z knobo quit (Read error: Connection reset by peer) 2017-08-22T17:55:11Z dieggsy joined #lisp 2017-08-22T17:56:41Z varjag joined #lisp 2017-08-22T17:57:13Z EvW1 quit (Ping timeout: 255 seconds) 2017-08-22T17:57:40Z cods quit (Quit: test) 2017-08-22T17:58:12Z Fare quit (Ping timeout: 255 seconds) 2017-08-22T17:58:34Z knobo joined #lisp 2017-08-22T17:58:50Z _ark_ joined #lisp 2017-08-22T18:01:08Z dieggsy quit (Remote host closed the connection) 2017-08-22T18:02:31Z cods joined #lisp 2017-08-22T18:05:42Z Posterdati quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-22T18:08:14Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-22T18:10:18Z random-nick joined #lisp 2017-08-22T18:12:27Z kajo2 joined #lisp 2017-08-22T18:14:44Z kajo quit (Ping timeout: 240 seconds) 2017-08-22T18:22:33Z Kyo91 quit (Ping timeout: 246 seconds) 2017-08-22T18:24:10Z skeuomorf quit (Read error: Connection reset by peer) 2017-08-22T18:28:38Z Bock quit (Ping timeout: 240 seconds) 2017-08-22T18:29:52Z scymtym quit (Ping timeout: 240 seconds) 2017-08-22T18:29:58Z Kyo91 joined #lisp 2017-08-22T18:36:54Z terpri joined #lisp 2017-08-22T18:43:32Z dtornabene joined #lisp 2017-08-22T18:46:16Z Guest76076 quit (Remote host closed the connection) 2017-08-22T18:47:55Z Guest76076 joined #lisp 2017-08-22T18:48:20Z Kyo91 quit (Ping timeout: 248 seconds) 2017-08-22T18:48:40Z _ark_ quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-22T18:49:33Z Kyo91 joined #lisp 2017-08-22T18:56:19Z skeuomorf joined #lisp 2017-08-22T19:05:42Z shka_ quit (Ping timeout: 255 seconds) 2017-08-22T19:07:29Z phinxy joined #lisp 2017-08-22T19:12:06Z phinxy left #lisp 2017-08-22T19:13:45Z eelster joined #lisp 2017-08-22T19:14:58Z Th30n quit (Ping timeout: 248 seconds) 2017-08-22T19:26:50Z krasnal quit (Ping timeout: 246 seconds) 2017-08-22T19:40:45Z krasnal joined #lisp 2017-08-22T19:43:52Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-22T19:45:55Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-22T19:46:59Z klltkr joined #lisp 2017-08-22T19:47:15Z angavrilov_ quit (Remote host closed the connection) 2017-08-22T19:48:46Z random-nick quit (Read error: Connection reset by peer) 2017-08-22T19:49:53Z butterthebuddha: Hey peeps. Just wondering how is something like '(+ 1 2) useful? 2017-08-22T19:50:33Z butterthebuddha: How would I evaluate the form (+ 1 2) if I wanted to (after quoting it)? 2017-08-22T19:51:08Z krasnal quit (Ping timeout: 240 seconds) 2017-08-22T19:51:34Z krasnal joined #lisp 2017-08-22T19:52:57Z knobo quit (Ping timeout: 255 seconds) 2017-08-22T19:53:02Z random-nick joined #lisp 2017-08-22T19:54:42Z dlowe: (eval '(+ 1 2)) 2017-08-22T19:55:18Z Shinmera: In that case you can also do (apply (first form) (rest form)) 2017-08-22T19:55:33Z Shinmera: Either way, I'm not sure what you mean by "useful" 2017-08-22T19:55:41Z Shinmera: Useful for what purpose? 2017-08-22T19:56:11Z dlowe: (funcall (compile nil (list 'lambda nil '(+ 1 2)))) 2017-08-22T19:56:22Z dlowe: it's not terribly useful the way you have it 2017-08-22T19:56:33Z dlowe: but it can be nice to specify literal lists of things. 2017-08-22T19:56:48Z dlowe: (dolist (mode '(ops half-ops admin voice)) ...) 2017-08-22T19:57:12Z Denommus joined #lisp 2017-08-22T20:01:56Z vlatkoB quit (Remote host closed the connection) 2017-08-22T20:05:26Z butterthebuddha: Shinmera: yeah that's kind of my Q haha - why do I ever want to do '(+ 1 2) 2017-08-22T20:05:38Z Fare joined #lisp 2017-08-22T20:05:50Z butterthebuddha: dlowe: Yep, I'm aware of using '(...) for literal lists. I was wondering if quoting a form is ever useful though 2017-08-22T20:05:52Z Shinmera: butterthebuddha: I don't know. You might want to save forms for evaluation at a later point. 2017-08-22T20:06:23Z Shinmera: There are legitimate reasons to want to quote code and evaluate it at another time. 2017-08-22T20:07:12Z Shinmera: For example in a test framework you might want a macro that saves the original form-- both to display it when a failure occurs or when the test is run, and to possibly sidestep compilation errors until test evaluation. 2017-08-22T20:07:48Z butterthebuddha: Hmm, yeah that makes sense 2017-08-22T20:08:37Z dlowe: butterthebuddha: lisp macros exist solely to manipulate quoted forms 2017-08-22T20:08:38Z Shinmera: You might also be implementing some special purpose language that happens to use s expressions as its code format, in which case '(+ 1 2) would be a natural way of writing a program in that language. 2017-08-22T20:09:13Z dlowe: butterthebuddha: so they're critically important to lisp 2017-08-22T20:10:12Z Kyo91 joined #lisp 2017-08-22T20:14:33Z pjb: butterthebuddha: it's useful when writing macros. 2017-08-22T20:14:47Z butterthebuddha: Ah yeah, I should've thought about that 2017-08-22T20:14:50Z butterthebuddha: That makes a ton of sense 2017-08-22T20:15:16Z butterthebuddha: I'm actually kind of excited to get to macros; they sound like they're super powerful 2017-08-22T20:15:35Z butterthebuddha: Can something like (IF ...) be written as a macro? 2017-08-22T20:17:16Z pjb: Of course. 2017-08-22T20:17:36Z dlowe: Yeah, if you use something that IF can be defined in terms of, such as COND 2017-08-22T20:17:49Z pjb: Not even. 2017-08-22T20:18:12Z dlowe: something in the returned code has to branch somehow 2017-08-22T20:18:27Z pjb: (defmacro if* (test then &optional else) `(if-fun ,test (lambda () ,then) (lambda () ,else))) 2017-08-22T20:19:17Z pjb: (defun if-fun (test then else) (funcall (aref (vector else then) (get (not test) 'bit))))\ 2017-08-22T20:19:22Z aeth: `(+ 1 2 ,foo) is used more in practice than '(+ 1 2) afaik... especially in CL macros. 2017-08-22T20:19:26Z moei quit (Quit: Leaving...) 2017-08-22T20:19:29Z pjb: (setf (get 'nil 'bit) 0 (get 't 'bit) 1) 2017-08-22T20:19:37Z dlowe: very clever. 2017-08-22T20:20:20Z aeth: ` is just ' where you can "unquote" with , 2017-08-22T20:24:18Z pjb: dlowe: of course, here there's a test hidden in NOT. 2017-08-22T20:24:41Z pjb: But it comes from the generalized boolean. 2017-08-22T20:26:21Z pjb: If you implemented it in lambda-calculus, you could attach a selector function (car or cdr) to each lisp value. You'd just call: (funcall (selector test) (cons then else)). The macro is only useful to avoid evaluating the other branch. 2017-08-22T20:28:46Z QualityAddict quit (Remote host closed the connection) 2017-08-22T20:28:51Z Guest76076 quit (Remote host closed the connection) 2017-08-22T20:30:21Z QualityAddict joined #lisp 2017-08-22T20:30:26Z Guest76076 joined #lisp 2017-08-22T20:33:23Z jvrssc joined #lisp 2017-08-22T20:38:51Z safe quit (Read error: Connection reset by peer) 2017-08-22T20:49:24Z danieli quit (Read error: Connection reset by peer) 2017-08-22T20:57:13Z dtornabene quit (Quit: Leaving) 2017-08-22T21:03:59Z strelox quit (Remote host closed the connection) 2017-08-22T21:07:37Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-22T21:08:10Z eelster quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-22T21:09:25Z phoe joined #lisp 2017-08-22T21:09:50Z phoe: gah, I stop looking for a moment and my compilation goes to hackernews main page 2017-08-22T21:10:02Z phoe: https://news.ycombinator.com/item?id=15070137 2017-08-22T21:14:30Z Shinmera: If you're lucky you'll end up on n-gate. 2017-08-22T21:15:28Z phoe: hell no 2017-08-22T21:15:32Z phoe: I prefer to be unlucky 2017-08-22T21:15:42Z phoe: but on the other hand, what new can they say about Common Lisp 2017-08-22T21:16:05Z phoe: it can't become any more dead than what it's been proclaimed for the past twenty years I think 2017-08-22T21:16:38Z jasom: I have now created 2685 nix expressions from the quicklisp repository; there's another ~1300 or so systems that ql2nix could not process. I plan to publish it later tonight. 2017-08-22T21:17:35Z Fare quit (Ping timeout: 240 seconds) 2017-08-22T21:18:17Z aeth: phoe: Have you considered rewriting Common Lisp in Rust? /s 2017-08-22T21:18:44Z phoe: aeth: Have you considered rewriting Rust in Common Lisp? /s 2017-08-22T21:19:14Z aeth: phoe: Actually... :p 2017-08-22T21:21:03Z phoe: ha 2017-08-22T21:21:08Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-22T21:22:49Z klltkr joined #lisp 2017-08-22T21:22:51Z klltkr quit (Client Quit) 2017-08-22T21:23:23Z pjb: phoe: consider #hn 2017-08-22T21:23:29Z klltkr joined #lisp 2017-08-22T21:24:22Z earl-ducaine joined #lisp 2017-08-22T21:24:55Z phoe: pjb: what should I do on #hn? 2017-08-22T21:25:05Z pjb: watch the news pass by. :-) 2017-08-22T21:25:10Z phoe: oh 2017-08-22T21:25:27Z danieli joined #lisp 2017-08-22T21:25:43Z pjb: you can message botihn to learn about it. 2017-08-22T21:26:41Z Karl_Dscc joined #lisp 2017-08-22T21:30:24Z Fare joined #lisp 2017-08-22T21:30:49Z Guest29805 quit (Quit: ZNC - http://znc.in) 2017-08-22T21:31:48Z giraffe joined #lisp 2017-08-22T21:32:02Z giraffe is now known as Guest54652 2017-08-22T21:35:08Z ggherdov quit (Ping timeout: 255 seconds) 2017-08-22T21:40:38Z bjorkweb joined #lisp 2017-08-22T21:42:13Z butterthebuddha quit (Quit: ZNC 1.6.3+deb1 - http://znc.in) 2017-08-22T21:44:23Z phoe: good night 2017-08-22T21:44:25Z phoe quit (Quit: leaving) 2017-08-22T21:45:11Z lnostdal joined #lisp 2017-08-22T21:52:44Z smazga quit (Quit: leaving) 2017-08-22T21:56:05Z random-nick quit (Remote host closed the connection) 2017-08-22T21:56:07Z kajo2 quit (Ping timeout: 240 seconds) 2017-08-22T21:57:11Z bjorkweb left #lisp 2017-08-22T22:01:27Z emacsomancer quit (Read error: Connection reset by peer) 2017-08-22T22:04:34Z Kyo91 quit (Ping timeout: 248 seconds) 2017-08-22T22:06:09Z danieli_ joined #lisp 2017-08-22T22:06:24Z danieli quit (Read error: Connection reset by peer) 2017-08-22T22:07:48Z Jesin quit (Quit: Leaving) 2017-08-22T22:10:31Z Karl_Dscc quit (Remote host closed the connection) 2017-08-22T22:16:27Z slyrus quit (Ping timeout: 240 seconds) 2017-08-22T22:22:26Z phinxy joined #lisp 2017-08-22T22:24:42Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-22T22:27:31Z pierpa joined #lisp 2017-08-22T22:29:03Z knusbaum quit (Quit: Leaving.) 2017-08-22T22:29:34Z slyrus joined #lisp 2017-08-22T22:31:07Z vtomole joined #lisp 2017-08-22T22:37:24Z phinxy quit (Read error: Connection reset by peer) 2017-08-22T22:39:48Z Mon_Ouie quit (Ping timeout: 246 seconds) 2017-08-22T22:40:25Z moei joined #lisp 2017-08-22T22:41:20Z axion: Whats a good way to get a CL array from a binary file on disk, bypassing all the streaming? only interested in the full array for a small file. 2017-08-22T22:41:44Z troydm quit (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) 2017-08-22T22:41:53Z Fare quit (Read error: Connection reset by peer) 2017-08-22T22:42:14Z antoszka: axion: You want to slurp the entire file into a byte array? 2017-08-22T22:42:16Z Bike: well, there will still be a stream, but you can just use with-open-file and read-sequence and it's only a few lines. 2017-08-22T22:42:29Z axion: Yes. ok 2017-08-22T22:42:36Z troydm joined #lisp 2017-08-22T22:44:14Z neoncont_ quit (Remote host closed the connection) 2017-08-22T22:44:42Z neoncontrails joined #lisp 2017-08-22T22:44:52Z antoszka: Rosetta Code has a rather canonical take on this: https://rosettacode.org/wiki/Read_entire_file#Common_Lisp 2017-08-22T22:47:06Z axion: yes, except with an array. as bytes in a stream opened as ub8 are not characters 2017-08-22T22:47:15Z axion: thanks! 2017-08-22T22:48:03Z Bike: yeah, that just means you don't need to worry about de/encoding. a blessing if there ever was one. 2017-08-22T22:48:35Z cromachina joined #lisp 2017-08-22T22:49:22Z neoncontrails quit (Ping timeout: 248 seconds) 2017-08-22T22:51:00Z lnostdal quit (Ping timeout: 248 seconds) 2017-08-22T22:52:32Z pillton joined #lisp 2017-08-22T22:52:57Z lnostdal joined #lisp 2017-08-22T22:55:56Z danieli_ is now known as danieli 2017-08-22T22:56:02Z danieli quit (Changing host) 2017-08-22T22:56:02Z danieli joined #lisp 2017-08-22T23:01:15Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-22T23:01:42Z Fare joined #lisp 2017-08-22T23:02:44Z slyrus quit (Ping timeout: 248 seconds) 2017-08-22T23:06:52Z earl-ducaine quit (Ping timeout: 240 seconds) 2017-08-22T23:06:54Z BitPuffin: does common lisp have a function like ormap in racket? By default in the standard (it can obviously be easily defined) 2017-08-22T23:06:57Z BitPuffin: kind of like reduce 2017-08-22T23:07:06Z BitPuffin: except that it performs an or on all of them 2017-08-22T23:07:23Z attila_lendvai quit (Ping timeout: 255 seconds) 2017-08-22T23:07:39Z Mon_Ouie joined #lisp 2017-08-22T23:08:04Z butterthebuddha joined #lisp 2017-08-22T23:09:03Z BitPuffin: so something like (defun reduce-or (f l) (reduce (lambda (v a) (or (f v) a))) l) 2017-08-22T23:09:28Z sukaeto: BitPuffin: I think you're looking for some 2017-08-22T23:10:03Z BitPuffin: sukaeto: would the equivalent andmap be called all by any chance? 2017-08-22T23:10:04Z sukaeto: http://www.lispworks.com/documentation/HyperSpec/Body/f_everyc.htm 2017-08-22T23:10:12Z BitPuffin: seems like it's every 2017-08-22T23:10:17Z sukaeto: BitPuffin: yeah, it's every 2017-08-22T23:10:52Z BitPuffin: sukaeto: much appreciated! 2017-08-22T23:11:02Z sukaeto: BitPuffin: no problem! 2017-08-22T23:14:23Z Saint joined #lisp 2017-08-22T23:16:49Z Fare: BitPuffin, I'm sure some utility library has it. Now to find it. 2017-08-22T23:17:12Z Fare: oh, you just wanted every. 2017-08-22T23:17:17Z BitPuffin: yup :) 2017-08-22T23:17:20Z BitPuffin: thanks anyway 2017-08-22T23:17:37Z jameser joined #lisp 2017-08-22T23:17:51Z slyrus joined #lisp 2017-08-22T23:18:23Z Saint_ joined #lisp 2017-08-22T23:18:46Z Saint_ is now known as Guest31633 2017-08-22T23:18:56Z X-Scale joined #lisp 2017-08-22T23:21:01Z Saint quit (Ping timeout: 260 seconds) 2017-08-22T23:21:15Z Saint joined #lisp 2017-08-22T23:22:04Z Guest31633 quit (Client Quit) 2017-08-22T23:22:27Z wxie joined #lisp 2017-08-22T23:23:00Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-22T23:26:36Z yrk quit (Read error: Connection reset by peer) 2017-08-22T23:28:37Z yrk joined #lisp 2017-08-22T23:30:12Z brendyn joined #lisp 2017-08-22T23:30:16Z X-Scale left #lisp 2017-08-22T23:30:56Z Jesin joined #lisp 2017-08-22T23:36:21Z ggherdov joined #lisp 2017-08-22T23:37:19Z wxie quit (Quit: Bye.) 2017-08-22T23:39:37Z zotan quit (Read error: Connection reset by peer) 2017-08-22T23:39:37Z zotan_ joined #lisp 2017-08-22T23:39:53Z zotan_ is now known as zotan 2017-08-22T23:43:12Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-22T23:52:33Z Saint quit (Quit: ChatZilla 0.9.93 [Firefox 54.0.1/20170628075643]) 2017-08-22T23:55:41Z neoncontrails joined #lisp 2017-08-22T23:57:11Z vtomole quit (Ping timeout: 260 seconds) 2017-08-22T23:59:00Z Bock joined #lisp 2017-08-23T00:03:36Z jvrssc quit (Ping timeout: 260 seconds) 2017-08-23T00:06:52Z malice quit (Remote host closed the connection) 2017-08-23T00:09:19Z jasom: any good way of getting a backtrace when an unhandled memory fault happens? 2017-08-23T00:09:24Z jasom: (in sbcl) 2017-08-23T00:11:52Z [X-Scale] joined #lisp 2017-08-23T00:12:16Z [X-Scale] is now known as X-Scale 2017-08-23T00:14:06Z X-Scale left #lisp 2017-08-23T00:16:33Z doesthiswork joined #lisp 2017-08-23T00:16:40Z safe joined #lisp 2017-08-23T00:18:45Z BitPuffin quit (Read error: Connection reset by peer) 2017-08-23T00:19:00Z JohnTalent quit (Quit: leaving) 2017-08-23T00:23:59Z scymtym joined #lisp 2017-08-23T00:24:27Z jasom: Xach: any chance of switching the quicklisp database from md5 to something newer? It doesn't appear to be used anywhere, and it would save me some small amount of work in ql2nix, since md5 is no longer allowed for verification of downloads in nix. 2017-08-23T00:26:27Z jasom: Xach: here's my current workaround; an awk script that calculates sha256 sums for each package: http://paste.lisp.org/+7L8Q 2017-08-23T00:27:56Z jasom: Xach: I then overwrite releases.txt and rebuild the cdb... nothing broke, and it met me use those sums in my script 2017-08-23T00:34:50Z troydm quit (Remote host closed the connection) 2017-08-23T00:35:10Z troydm joined #lisp 2017-08-23T00:37:15Z Fare: jasom: nah, I believe memory fault is too low-level for regular backtraces. 2017-08-23T00:37:58Z slyrus: so... does anybody still use cxml? 2017-08-23T00:38:12Z Bike: it's not a crash, right? you get a lisp error, it's just useless? 2017-08-23T00:40:30Z Denommus quit (Ping timeout: 255 seconds) 2017-08-23T00:41:00Z mson quit (Quit: Connection closed for inactivity) 2017-08-23T00:45:20Z sellout- quit (Quit: Leaving.) 2017-08-23T00:45:29Z sellout- joined #lisp 2017-08-23T00:45:30Z Fare: slyrus, we used to use it at ITA 2017-08-23T00:45:49Z Fare: did my asdf3 patches ever get merged in 2017-08-23T00:45:50Z Fare: ? 2017-08-23T00:47:17Z slyrus: asdf3 patches to what? 2017-08-23T00:47:41Z slyrus: Fare: yeah, I know people _used_ to use it. But it seems like some things are broken now and I'm wondering if it's just me. 2017-08-23T00:47:45Z Fare: actually, it's cxml-rng that needed a patch, but had an unresponsive maintainer. 2017-08-23T00:47:57Z slyrus: oh, yeah, that sounds familiar. 2017-08-23T00:48:23Z slyrus: I put closure-common up the sharplisper's github page. maybe we need to do the same for cxml and cxml-rng. 2017-08-23T00:48:26Z Fare: I wonder where to publish patches for projects that don't have a git repo 2017-08-23T00:48:35Z Fare: for those that do I have github.com/fare-patches 2017-08-23T00:49:37Z sellout- quit (Ping timeout: 240 seconds) 2017-08-23T00:49:42Z Fare: the following projects were unresponsive and had no github repo: bknr-web cl-blapack cxml-rng jwacs madeira-port org-sampler s-dot 2017-08-23T00:50:20Z Fare: additionally, I had github PRs that are unanswered for: mgl-pax weblocks wuwei yaclml 2017-08-23T00:50:38Z Fare: and that's from months ago, still unresolved. 2017-08-23T00:51:01Z slyrus: I don't see the cxml-rng stuff on fare-patches 2017-08-23T00:51:21Z Fare: because there's no git repo, at least not on github, to send a PR to. 2017-08-23T00:52:08Z Fare: if sharplispers take over some or all of these projects, I'll gladly send a PR. Or I can put the diffs in a repo of its own. 2017-08-23T00:53:56Z Fare: I probably should do it. I would if it looked like anyone were interested. 2017-08-23T00:54:16Z Fare: Common Lisp seems slightly deader than in the ITA days, I'd say. 2017-08-23T00:54:55Z slyrus: are you getting paid to work on Common Lisp these days? 2017-08-23T00:55:20Z Fare: I pay myself to write Gerbil Scheme. 2017-08-23T00:55:34Z slyrus: maybe that's why it seems deader to you :) 2017-08-23T00:56:16Z Fare: I decided to jump ship from CL. Too many things I missed from a modern Lisp. And those things I miss from CL (mainly, CLOS), I can reimplement on top of Gerbil when the time comes. 2017-08-23T00:56:32Z slyrus: sorry to hear that 2017-08-23T00:56:35Z Fare: The other day, I had some "interesting" time learning Scheme macros. 2017-08-23T00:56:58Z Fare: the existing objects system in Gerbil is survivable, just nothing like CLOS. 2017-08-23T00:57:13Z Fare: on the other hand, Gerbil has actors, and that's great. 2017-08-23T00:57:35Z Fare: and I'm hoping to make them even greater, on par with Erlang, some day. 2017-08-23T00:57:47Z Fare: which would never have been possible in CL. 2017-08-23T00:58:25Z Fare: anyway, it's buy low and hold 2017-08-23T00:58:29Z Fare: hodl 2017-08-23T00:58:55Z Fare: with CL, it was buy high and watch it depreciate. 2017-08-23T01:00:25Z axion: Fare: Does that mean Racket was not as good as your recent post suggested? I've never heard of Gerbil. 2017-08-23T01:02:10Z jameser joined #lisp 2017-08-23T01:03:11Z defaultxr quit (Quit: brb) 2017-08-23T01:04:41Z defaultxr joined #lisp 2017-08-23T01:05:30Z quazimodo joined #lisp 2017-08-23T01:05:48Z TDT quit (Quit: TDT) 2017-08-23T01:05:59Z Fare: Racket is probably better than my post suggested. 2017-08-23T01:06:13Z Fare: But I had other reasons to choose Gerbil (http://cons.io) 2017-08-23T01:06:27Z Fare: 1- great rapport with the author, vyzo, a good friend 2017-08-23T01:07:10Z Fare: 2- it does implement a variant of the Racket module system, the most valuable part of Racket. 2017-08-23T01:07:31Z Fare: 3- though it has fewer libraries, they are more consistent, being implemented by one man 2017-08-23T01:07:42Z TDT joined #lisp 2017-08-23T01:07:53Z Fare: 4- it sits on top of Gambit, which is efficient and very suited to backend work, like I do 2017-08-23T01:08:09Z axion: Yeah. I actually spent a week learning Racket after reading your post, and I found it a little too complex for my liking. 2017-08-23T01:08:39Z axion: I have no prior Scheme experience though. 2017-08-23T01:09:29Z Fare: 5- Gambit has a very portable VM, the GVM, that provides interruptability and observability at the GVM level, abstracting away what's below. Which means that to achieve observability for the entire system (which would yield Erlang-style killability, among other things), I "only" have to work on top of the GVM, not down to assembly level. That's a big win for my future plans. 2017-08-23T01:09:48Z whoman: Fare, i hear Guile has actors as well, and fibers 2017-08-23T01:09:48Z minion: whoman, memo from phoe: tell whoman he's the one who's a poop head 2017-08-23T01:10:17Z Fare: whoman: can they kill their actors? I seriously doubt they can, or with big unenforceable restrictions 2017-08-23T01:10:30Z axion: Fare: Nice. Have you relieved yourself from maintaining asdf and the like yet? 2017-08-23T01:12:26Z Fare: "almost" (famous last words) 2017-08-23T01:12:56Z axion: Well, good luck with your future plans! 2017-08-23T01:13:32Z Fare: 3.3.0 will be released "any minute now" 2017-08-23T01:13:39Z axion: Ha 2017-08-23T01:14:13Z axion: I only care that 3.2 finds its way into SBCL this century 2017-08-23T01:15:11Z Fare: then there is an old "syntax control" branch I'd like to update and merge some day 2017-08-23T01:16:04Z felipedvorak quit (Quit: felipedvorak) 2017-08-23T01:16:31Z Fare: are there things you care about in 3.2 ? 2017-08-23T01:16:31Z d4ryus2 joined #lisp 2017-08-23T01:17:29Z axion: Fare: your optimization to subdirectory listing in uiop we talked about 2017-08-23T01:17:52Z Fare: well, the sbcl mailing-list is that-a-way 2017-08-23T01:17:56Z AJavaIdiot joined #lisp 2017-08-23T01:18:25Z whoman: Fare, sorry i dont know! 2017-08-23T01:18:32Z slayne joined #lisp 2017-08-23T01:19:22Z axion: 3.1.5 is pretty much unusable for large directory trees, taking longer than I could care to wait, compared to about a second for CL-FAD 2017-08-23T01:19:32Z Fare: :-( 2017-08-23T01:19:34Z axion: I'd like to finally get rid of that dependency 2017-08-23T01:19:39Z d4ryus1 quit (Ping timeout: 255 seconds) 2017-08-23T01:23:40Z heurist` quit (Read error: Connection reset by peer) 2017-08-23T01:24:31Z heurist` joined #lisp 2017-08-23T01:25:19Z vtomole joined #lisp 2017-08-23T01:28:28Z milanj quit (Quit: This computer has gone to sleep) 2017-08-23T01:34:32Z rngoodn joined #lisp 2017-08-23T01:36:08Z al-damiri joined #lisp 2017-08-23T01:38:38Z neoncontrails quit (Remote host closed the connection) 2017-08-23T01:39:49Z neoncontrails joined #lisp 2017-08-23T01:40:57Z White_Flame: Xach: had talked about moving an executable image to another box, and continuing to run quicklisp there. Now, consider if there is no QL installation on that box, what will need to be done? 2017-08-23T01:42:01Z White_Flame: our model is to drop a binary onto a machine and go, but now with certain things needing more stuff out of quicklisp, there is no preexisting lisp or ql environment there at all for it to go from 2017-08-23T01:42:30Z jameser_ joined #lisp 2017-08-23T01:42:30Z neoncont_ joined #lisp 2017-08-23T01:43:05Z whoman: QL could be loaded into the distributed image, no ? 2017-08-23T01:43:24Z White_Flame: yes, but then it's going to want to load new systems after launching the binary on a different box 2017-08-23T01:43:32Z White_Flame: and that involves ~/quicklisp/ 2017-08-23T01:43:33Z jameser quit (Ping timeout: 246 seconds) 2017-08-23T01:43:47Z Fare: White_Flame, use cl-launch or buildapp to dump an executable 2017-08-23T01:43:55Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-23T01:44:08Z White_Flame: I'm already using an executable. QL needs to load systems after that executable is deployed 2017-08-23T01:44:15Z Fare: then distribute quicklisp with the image 2017-08-23T01:44:16Z whoman: hmm 2017-08-23T01:46:27Z lnostdal quit (Ping timeout: 248 seconds) 2017-08-23T01:47:43Z Jesin quit (Quit: Leaving) 2017-08-23T01:48:32Z lnostdal joined #lisp 2017-08-23T01:48:36Z vtomole quit (Ping timeout: 260 seconds) 2017-08-23T01:51:27Z phadthai quit (Remote host closed the connection) 2017-08-23T01:52:43Z aeth: pillton: I'm a big language proponent. So the language vs. library distinction will be different for me than for some. 2017-08-23T01:52:47Z skeuomorf quit (Ping timeout: 240 seconds) 2017-08-23T01:54:49Z TDT quit (Quit: TDT) 2017-08-23T01:58:45Z TDT joined #lisp 2017-08-23T01:59:48Z whoman: http://fare.livejournal.com/188429.html 2017-08-23T02:01:18Z whoman: i think everything is an opinion; no such thing as fact 2017-08-23T02:06:06Z aeth: whoman: You can deduce things from axioms, and you can establish things statistically. Good luck doing either in software engineering, though, if that's what you mean. 2017-08-23T02:07:19Z whoman: aeth, lots of comparing of languages for myself, lately =) 2017-08-23T02:07:51Z ACE_Recliner joined #lisp 2017-08-23T02:16:05Z vtomole joined #lisp 2017-08-23T02:16:05Z quazimodo quit (Read error: Connection reset by peer) 2017-08-23T02:16:42Z karswell_ joined #lisp 2017-08-23T02:16:48Z karswell quit (Read error: Connection reset by peer) 2017-08-23T02:22:41Z jamtho_ joined #lisp 2017-08-23T02:24:07Z vibs29 quit (Ping timeout: 240 seconds) 2017-08-23T02:24:56Z vibs29 joined #lisp 2017-08-23T02:26:04Z AJavaIdiot quit (Quit: ChatZilla 0.9.93 [Firefox 54.0.1/20170628075643]) 2017-08-23T02:27:11Z earl-ducaine joined #lisp 2017-08-23T02:37:26Z scymtym quit (Read error: Connection reset by peer) 2017-08-23T02:37:36Z phadthai joined #lisp 2017-08-23T02:40:21Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-23T02:42:06Z pierpa quit (Quit: Page closed) 2017-08-23T02:49:21Z quazimodo joined #lisp 2017-08-23T02:50:14Z dieggsy joined #lisp 2017-08-23T03:05:40Z Fare: whoman, did you mention this article because of Hacker News ? 2017-08-23T03:06:48Z shka_ joined #lisp 2017-08-23T03:07:25Z vtomole: The racket/cl one? 2017-08-23T03:08:32Z Fare: yes 2017-08-23T03:08:40Z Fare: I just added a third part on Gerbil. 2017-08-23T03:12:53Z vtomole: wow top post: https://news.ycombinator.com/ maybe people are interested in lisp more than i thought ;) 2017-08-23T03:13:46Z chens joined #lisp 2017-08-23T03:13:54Z Bike quit (Ping timeout: 248 seconds) 2017-08-23T03:17:52Z LooneyTunes joined #lisp 2017-08-23T03:17:57Z chens quit (Remote host closed the connection) 2017-08-23T03:28:27Z jamtho_ quit (Ping timeout: 240 seconds) 2017-08-23T03:38:48Z chens joined #lisp 2017-08-23T03:39:12Z chens is now known as Guest47136 2017-08-23T03:40:17Z Guest47136 is now known as chens` 2017-08-23T03:40:48Z yangby joined #lisp 2017-08-23T03:41:27Z rngoodn joined #lisp 2017-08-23T03:41:28Z damke joined #lisp 2017-08-23T03:42:54Z TDT quit (Quit: TDT) 2017-08-23T03:44:01Z chens` is now known as chens 2017-08-23T03:45:45Z chens quit (Remote host closed the connection) 2017-08-23T03:46:05Z sellout- joined #lisp 2017-08-23T03:50:05Z axion: Does anyone know anyone else besides attila that maintains alexandria? Looks like he hasn't been on IRC in several weeks. 2017-08-23T03:50:32Z fe[nl]ix: axion: he responds to email 2017-08-23T03:50:42Z sellout- quit (Ping timeout: 248 seconds) 2017-08-23T03:50:46Z axion: Ok, I found a bug in alexandria's documentation. 2017-08-23T03:51:19Z chens joined #lisp 2017-08-23T03:52:16Z axion: ROTATE mentions that it returns a sequence of the same type, which to me implies that it does an implicit copy. It doesn't mention anything about destructive behavior. However (let ((x "hello")) (list x (alexandria:rotate x -1))) => ("elloh" "elloh"). I'm not sure what to make of that, heh. 2017-08-23T03:53:48Z fe[nl]ix: send an email to its mailing list 2017-08-23T03:54:07Z yangby quit (Quit: Go out for a walk and buy a drink.) 2017-08-23T03:57:06Z chens quit (Remote host closed the connection) 2017-08-23T03:57:39Z chens joined #lisp 2017-08-23T03:57:45Z beach: Good morning everyone! 2017-08-23T03:58:02Z chens is now known as Guest79351 2017-08-23T03:58:16Z slayne quit (Remote host closed the connection) 2017-08-23T03:59:05Z loke: Good morning beach 2017-08-23T03:59:15Z Guest79351 is now known as chens` 2017-08-23T04:00:25Z fe[nl]ix: hi beach 2017-08-23T04:01:11Z chens` quit (Client Quit) 2017-08-23T04:01:23Z chens` joined #lisp 2017-08-23T04:01:43Z chens` quit (Client Quit) 2017-08-23T04:01:56Z chens` joined #lisp 2017-08-23T04:03:27Z damke quit (Ping timeout: 240 seconds) 2017-08-23T04:05:38Z chens` quit (Remote host closed the connection) 2017-08-23T04:05:46Z damke joined #lisp 2017-08-23T04:05:56Z chens` joined #lisp 2017-08-23T04:06:05Z alandipert quit (Remote host closed the connection) 2017-08-23T04:06:07Z chens` quit (Remote host closed the connection) 2017-08-23T04:06:47Z alandipert joined #lisp 2017-08-23T04:07:44Z chens` joined #lisp 2017-08-23T04:09:47Z doesthiswork quit (Quit: Leaving.) 2017-08-23T04:10:15Z doesthiswork joined #lisp 2017-08-23T04:11:47Z smokeink joined #lisp 2017-08-23T04:15:45Z White_Flame: what's the idiomatic way to invoke a function from a package that wasn't available at read-time? (eval (read-from-string "(foo:bar 1 2 3)")) ? 2017-08-23T04:16:04Z White_Flame: (funcall (find-symbol ...) ...) ? 2017-08-23T04:17:14Z beach: I would personally do the latter, but I am not sure there is an agreed-upon way. 2017-08-23T04:17:16Z dddddd quit (Remote host closed the connection) 2017-08-23T04:17:57Z loke: White_Flame: I do the latter too. 2017-08-23T04:18:14Z smokeink quit (Ping timeout: 240 seconds) 2017-08-23T04:18:47Z loke: If EVAL is part of the proposed solution, that solution is very likely wrong. Not guaranteed, but very likely. 2017-08-23T04:19:40Z aeth: I concur. 2017-08-23T04:21:06Z dieggsy quit (Ping timeout: 248 seconds) 2017-08-23T04:26:59Z doesthiswork1 joined #lisp 2017-08-23T04:27:00Z doesthiswork quit (Read error: Connection reset by peer) 2017-08-23T04:29:36Z White_Flame: yeah, eval is the most compact for specifying the package:symbol directly, but if you need to pass params it gets messy 2017-08-23T04:29:48Z heurist` is now known as heurist 2017-08-23T04:30:05Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-23T04:30:47Z beach: By doing find-package and find-symbol, you can probably emit better error messages as well. 2017-08-23T04:31:48Z White_Flame: eh, I think symbol-not-found conditions would be relatively similar in either, for this case 2017-08-23T04:32:56Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-23T04:33:11Z beach: OK, maybe so. 2017-08-23T04:37:08Z doesthiswork1 quit (Quit: Leaving.) 2017-08-23T04:37:32Z Lowl3v3l quit (Remote host closed the connection) 2017-08-23T04:42:07Z lnostdal quit (Ping timeout: 240 seconds) 2017-08-23T04:49:41Z damke_ joined #lisp 2017-08-23T04:51:47Z damke quit (Ping timeout: 240 seconds) 2017-08-23T04:51:50Z borei joined #lisp 2017-08-23T04:51:58Z borei: hi all ! 2017-08-23T04:52:32Z borei: i have quick question about functions arguments and assoc lists 2017-08-23T04:52:43Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-23T04:52:59Z borei: say for example i have function with &key args 2017-08-23T04:53:51Z borei: im looking how to pass a-list as arguments to that function 2017-08-23T04:54:12Z fiddlerwoaroof: (apply #'function (alist-plist a-list)) 2017-08-23T04:54:18Z shka_: hello all 2017-08-23T04:54:34Z fiddlerwoaroof: where alist-plist is a function that turns an a-list into a p-list (e.g. ALEXANDRIA:ALIST-PLIST) 2017-08-23T04:54:56Z shka_: borei: ... or just just use plist! 2017-08-23T04:55:46Z shka_: well, i think that apply-with-plist is sort of lisp idiom 2017-08-23T04:56:07Z loke: (defun alist-plist (l) (loop for (k . v) in l append (list k v))) 2017-08-23T04:56:15Z loke: something like that? 2017-08-23T04:56:18Z fiddlerwoaroof: yean 2017-08-23T04:56:27Z loke is just trying out my loop-fu 2017-08-23T04:56:51Z shka_: loke: your loop-fu is strong! 2017-08-23T04:56:54Z shka_: ;-) 2017-08-23T04:56:59Z fiddlerwoaroof: or (mapcan (lambda (cons) (list (car cons) (cdr cons))) alist) 2017-08-23T04:57:01Z fiddlerwoaroof: I think... 2017-08-23T04:57:25Z loke: fiddlerwoaroof: Indeed 2017-08-23T04:57:38Z borei: wow ! 2017-08-23T04:57:41Z borei: ok 2017-08-23T04:57:51Z H4ns: loke: (loop for (k . v) in l collect k collect v) 2017-08-23T04:59:05Z fiddlerwoaroof loops with two collect clauses look wrong 2017-08-23T04:59:09Z loke: H4ns: dang it 2017-08-23T04:59:19Z H4ns: fiddlerwoaroof: but they are not wrong. 2017-08-23T04:59:21Z shka_: (reduce (lambda (prev next) (cons (car next) (cons (cdr next) prev))) '((a . b) (c . d)) :initial-value nil) 2017-08-23T04:59:25Z borei: will it correct one 2017-08-23T04:59:27Z borei: (loop for arg in '((:width . 100) (:hight . 100)) collect (car arg) collect (cdr arg)) 2017-08-23T04:59:30Z loke: I was actually thinkiong along those lines, but didn't go down that path 2017-08-23T04:59:35Z vtomole: How do I exit an infinite loop without calling (exit) 2017-08-23T04:59:35Z loke: It is, indeed, more efficient 2017-08-23T04:59:46Z H4ns: loke: i'd say it is also clearer 2017-08-23T05:00:10Z fiddlerwoaroof: vtomole: in what context? (return-from 'function-name) would work, if it's in the body of a function 2017-08-23T05:00:15Z shka_: vtomole: return 2017-08-23T05:00:19Z vtomole: A repl 2017-08-23T05:00:23Z fiddlerwoaroof: C-c 2017-08-23T05:00:24Z fiddlerwoaroof: ? 2017-08-23T05:00:25Z shka_: send interupt 2017-08-23T05:00:25Z loke: H4ns: My judgment is clouded by the fact that the APPEND solution is mine, so I will not argue that. 2017-08-23T05:00:34Z borei: my loop-fu is only "white-belt", i didn't know that i can use several collects 2017-08-23T05:00:47Z fiddlerwoaroof: technically, the append one is a bit slower than necessary, right? 2017-08-23T05:01:07Z vtomole: (loop (print (eval (read)))) 2017-08-23T05:01:23Z H4ns: vtomole: try (return) 2017-08-23T05:01:37Z H4ns: vtomole: although the eval may prevent that from working. 2017-08-23T05:01:42Z logicmoo joined #lisp 2017-08-23T05:01:44Z ACE_Recliner quit (Ping timeout: 240 seconds) 2017-08-23T05:01:45Z minion quit (Disconnected by services) 2017-08-23T05:01:48Z minion joined #lisp 2017-08-23T05:01:51Z neuri8 quit (*.net *.split) 2017-08-23T05:01:51Z axion quit (*.net *.split) 2017-08-23T05:01:52Z drmeister quit (*.net *.split) 2017-08-23T05:01:52Z payphone quit (*.net *.split) 2017-08-23T05:01:52Z voidlily quit (*.net *.split) 2017-08-23T05:01:55Z paule32 quit (*.net *.split) 2017-08-23T05:01:55Z zchlyg quit (*.net *.split) 2017-08-23T05:01:55Z dmiles quit (*.net *.split) 2017-08-23T05:01:55Z stylewarning quit (*.net *.split) 2017-08-23T05:01:55Z djh quit (*.net *.split) 2017-08-23T05:01:55Z jurov quit (*.net *.split) 2017-08-23T05:01:55Z kilimanjaro quit (*.net *.split) 2017-08-23T05:01:55Z angular_mike_ quit (*.net *.split) 2017-08-23T05:01:55Z shaftoe_ quit (*.net *.split) 2017-08-23T05:01:55Z lieven quit (*.net *.split) 2017-08-23T05:01:55Z convexferret quit (*.net *.split) 2017-08-23T05:01:55Z gz_ quit (*.net *.split) 2017-08-23T05:01:55Z gbyers quit (*.net *.split) 2017-08-23T05:01:55Z zkat quit (*.net *.split) 2017-08-23T05:01:55Z dxtr quit (*.net *.split) 2017-08-23T05:01:55Z shenghi quit (*.net *.split) 2017-08-23T05:01:55Z rvirding quit (*.net *.split) 2017-08-23T05:01:55Z c0dehero quit (*.net *.split) 2017-08-23T05:02:05Z djh joined #lisp 2017-08-23T05:02:05Z zchlyg joined #lisp 2017-08-23T05:02:07Z fiddlerwoaroof: vtomole: (throw 'foo) would work too 2017-08-23T05:02:10Z paule32 joined #lisp 2017-08-23T05:02:19Z payphone joined #lisp 2017-08-23T05:02:25Z fiddlerwoaroof: or (throw foo nil) 2017-08-23T05:02:26Z voidlily joined #lisp 2017-08-23T05:02:27Z dxtr joined #lisp 2017-08-23T05:02:28Z lieven joined #lisp 2017-08-23T05:02:28Z H4ns: vtomole: or (foo) for that matter 2017-08-23T05:02:34Z shaftoe_ joined #lisp 2017-08-23T05:02:52Z shenghi joined #lisp 2017-08-23T05:02:54Z drmeister joined #lisp 2017-08-23T05:02:55Z gbyers joined #lisp 2017-08-23T05:02:57Z shka_: (break) 2017-08-23T05:02:59Z kilimanjaro joined #lisp 2017-08-23T05:02:59Z shka_: ? 2017-08-23T05:03:03Z shka_: and abort 2017-08-23T05:03:05Z axion joined #lisp 2017-08-23T05:03:06Z fiddlerwoaroof: vtomole: (catch 'foo (loop (print (eval (read))))) 2017-08-23T05:03:08Z rvirding joined #lisp 2017-08-23T05:03:17Z fiddlerwoaroof: then, in your repl (throw 'foo nil) will get out... 2017-08-23T05:03:22Z gz_ joined #lisp 2017-08-23T05:03:26Z zkat joined #lisp 2017-08-23T05:03:50Z loke: (SB-EXT:EXIT) works too. :-) 2017-08-23T05:03:55Z angular_mike_ joined #lisp 2017-08-23T05:04:27Z fiddlerwoaroof: "without calling (exit)" 2017-08-23T05:04:35Z neuri8 joined #lisp 2017-08-23T05:04:38Z vtomole: fiddlerwoaroof :) 2017-08-23T05:04:47Z vtomole: thx 2017-08-23T05:04:51Z c0dehero joined #lisp 2017-08-23T05:04:51Z jurov joined #lisp 2017-08-23T05:07:05Z loke: Ouch, I missed that part :-) 2017-08-23T05:08:51Z lnostdal joined #lisp 2017-08-23T05:12:12Z pjb quit (Read error: Connection reset by peer) 2017-08-23T05:12:46Z fluxit quit (Quit: ...) 2017-08-23T05:12:59Z fluxit joined #lisp 2017-08-23T05:13:08Z pjb joined #lisp 2017-08-23T05:13:19Z test1600 joined #lisp 2017-08-23T05:17:13Z kjak quit (Read error: Connection reset by peer) 2017-08-23T05:18:23Z kjak__ joined #lisp 2017-08-23T05:19:09Z safe quit (Quit: Leaving) 2017-08-23T05:20:53Z borei: stuck, duh 2017-08-23T05:20:55Z borei: https://pastebin.com/T0bJksY1 2017-08-23T05:21:09Z borei: getting odd number of &KEY arguments 2017-08-23T05:21:23Z borei: arguments list generated properly 2017-08-23T05:21:47Z H4ns: you want APPLY, not FUNCALL 2017-08-23T05:22:29Z slyrus: any mito or postmodern users around? 2017-08-23T05:22:58Z myrkraverk quit (Ping timeout: 248 seconds) 2017-08-23T05:23:56Z borei: gonna read doc 2017-08-23T05:24:16Z jack_rabbit joined #lisp 2017-08-23T05:25:10Z oleo quit (Quit: irc client terminated!) 2017-08-23T05:26:13Z jameser_ quit (Ping timeout: 240 seconds) 2017-08-23T05:27:44Z jameser joined #lisp 2017-08-23T05:28:06Z loke: slyrus: I've used it in the past. 2017-08-23T05:28:18Z loke: I implemented the Kerberos support in postmodern 2017-08-23T05:36:02Z slyrus: any suggestions on using limit/offset to get back a limited number of objects? 2017-08-23T05:38:32Z flamebeard joined #lisp 2017-08-23T05:39:04Z Karl_Dscc joined #lisp 2017-08-23T05:42:33Z smokeink joined #lisp 2017-08-23T05:45:09Z knobo joined #lisp 2017-08-23T05:48:18Z chens` quit (Quit: Asta la vista) 2017-08-23T05:48:31Z fiddlerwoaroof: H4ns: when writing my own json serializers, I'm I supposed to specialize YASON:ENCODE + YASON:ENCODE-SLOTS? 2017-08-23T05:48:37Z chens joined #lisp 2017-08-23T05:48:40Z fiddlerwoaroof: or something else? 2017-08-23T05:49:34Z marusich joined #lisp 2017-08-23T05:52:21Z lnostdal quit (Ping timeout: 240 seconds) 2017-08-23T05:52:24Z ski joined #lisp 2017-08-23T05:53:28Z marusich quit (Client Quit) 2017-08-23T05:53:52Z fiddlerwoaroof: It would be nice if YASON:ENCODE had a default method that just called YASON:ENCODE-OBJECT 2017-08-23T05:58:53Z smokeink quit (Quit: leaving) 2017-08-23T05:58:56Z karswell_ quit (Remote host closed the connection) 2017-08-23T06:00:51Z vlatkoB joined #lisp 2017-08-23T06:03:33Z myrkraverk joined #lisp 2017-08-23T06:06:18Z shdeng joined #lisp 2017-08-23T06:07:39Z mishoo_ joined #lisp 2017-08-23T06:12:49Z Karl_Dscc quit (Remote host closed the connection) 2017-08-23T06:12:49Z quazimodo quit (Read error: Connection reset by peer) 2017-08-23T06:13:05Z quazimodo joined #lisp 2017-08-23T06:15:05Z cromachina_ joined #lisp 2017-08-23T06:15:35Z whoma1 joined #lisp 2017-08-23T06:16:08Z whoman quit (Read error: Connection reset by peer) 2017-08-23T06:16:41Z varjag joined #lisp 2017-08-23T06:18:27Z cromachina quit (Ping timeout: 248 seconds) 2017-08-23T06:20:44Z dan64 quit (Ping timeout: 246 seconds) 2017-08-23T06:23:25Z slyrus: found it... 2017-08-23T06:24:35Z dan64 joined #lisp 2017-08-23T06:26:39Z mishoo__ joined #lisp 2017-08-23T06:28:02Z mishoo_ quit (Ping timeout: 248 seconds) 2017-08-23T06:35:36Z SiCC quit (Ping timeout: 240 seconds) 2017-08-23T06:36:30Z daemoz quit (Quit: WeeChat 1.9) 2017-08-23T06:36:47Z SiCC joined #lisp 2017-08-23T06:39:47Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T06:41:10Z damke_ joined #lisp 2017-08-23T06:42:01Z milanj joined #lisp 2017-08-23T06:46:47Z shka_ quit (Ping timeout: 240 seconds) 2017-08-23T06:53:54Z mishoo__ quit (Ping timeout: 240 seconds) 2017-08-23T06:56:14Z mishoo__ joined #lisp 2017-08-23T06:59:59Z stylewarning joined #lisp 2017-08-23T07:00:13Z zaoqi joined #lisp 2017-08-23T07:00:20Z convexferret joined #lisp 2017-08-23T07:02:42Z elazul joined #lisp 2017-08-23T07:03:27Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T07:05:50Z damke_ joined #lisp 2017-08-23T07:07:51Z damke joined #lisp 2017-08-23T07:10:27Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T07:13:53Z jasom: someone Fare? was asking about my ql2nix script. It needs a lot of cleanup, but here it is in all of its ugliness: https://github.com/jasom/ql2nix 2017-08-23T07:14:10Z mishoo__ quit (Ping timeout: 252 seconds) 2017-08-23T07:14:47Z damke quit (Ping timeout: 240 seconds) 2017-08-23T07:16:14Z schweers joined #lisp 2017-08-23T07:16:36Z jasom: Fare: oh, I want to hear more about safe killing of actors; that's generally not possible without a lot of restrictions 2017-08-23T07:17:05Z chens quit (Remote host closed the connection) 2017-08-23T07:17:07Z damke joined #lisp 2017-08-23T07:29:31Z epony quit (Quit: QUIT) 2017-08-23T07:30:07Z phoe joined #lisp 2017-08-23T07:34:08Z zaoqi quit (Ping timeout: 260 seconds) 2017-08-23T07:37:46Z scottj joined #lisp 2017-08-23T07:38:38Z pjb: jasom: first, you need to set up a good alibi. 2017-08-23T07:39:47Z zaoqi joined #lisp 2017-08-23T07:40:37Z attila_lendvai joined #lisp 2017-08-23T07:41:45Z kajo2 joined #lisp 2017-08-23T07:41:47Z Murii joined #lisp 2017-08-23T07:42:02Z H4ns: fiddlerwoaroof: yason is not really trying to be very convenient for the use case that you describe, serializers for types. i've specifically wanted to be able to tightly control the json output rather than be able to serialize arbitrary lisp objects to json. this is not to say that your suggestion does not make sense, but there may be json libraries that are better for what you're trying to do. 2017-08-23T07:45:55Z SqREL joined #lisp 2017-08-23T07:54:33Z p0nce joined #lisp 2017-08-23T07:54:57Z p0nce: are there lisp that compiles to Javascript? 2017-08-23T07:55:18Z trittweiler joined #lisp 2017-08-23T07:56:32Z H4ns: p0nce: https://github.com/6502/JSLisp 2017-08-23T07:57:38Z earl-ducaine quit (Ping timeout: 248 seconds) 2017-08-23T07:58:28Z schweers: properly implementing lisp numbers and the comparison of strings to numbers on javascript sounds like a real pain 2017-08-23T08:02:00Z pjb: schweers: there's no comparison of string to number in CL, so it should not be painful at all. 2017-08-23T08:02:22Z pjb: (there's only EQ, EQL and EQUAL which could apply both on a string and a number, and the result would be obvious). 2017-08-23T08:03:16Z schweers: often one cannot tell at compiletime which types the variables will hold, so what happens if I have (= a b) and one of them is the number 0 and the other the empty string? in CL this would signal a condition (I think). In JS it should yield true, right? 2017-08-23T08:03:33Z schweers: hmm, true 2017-08-23T08:03:55Z schweers: but still, = in CL is only defined on numbers, at least if I recall correctly 2017-08-23T08:04:48Z jasom: schweers: real numeric stacks have been implemented on top of JS many times 2017-08-23T08:05:01Z p0nce: thanks for the answers 2017-08-23T08:05:09Z schweers: I’m not saying it cannot be done, it just sounds like a real pain to me 2017-08-23T08:06:44Z pjb: schweers: what is painful in signaling a condition? 2017-08-23T08:07:23Z schweers: I would have thought that runtime checks are needed to implement this behaviour, yet JSLisp tries to avoid those 2017-08-23T08:07:44Z schweers: hmmm, or did I misread the README? 2017-08-23T08:07:46Z pjb: schweers: so what? 2017-08-23T08:08:09Z hhdave joined #lisp 2017-08-23T08:09:05Z schweers: on the other hand … in lisp one also needs a runtime check … 2017-08-23T08:09:10Z pjb: Anyways, if you want my advice, don't implement CL in javascript. Implement a CL to javascript compiler in CL. Then use CL to compile this compiler, then use this compiler to compile itself, then you will have a CL to javascript compiler in javascript. 2017-08-23T08:09:12Z schweers: seems I was mistaken, my bad 2017-08-23T08:09:34Z pjb: This way, you only have to deal with javascript as a target language, not as an implementation language. 2017-08-23T08:10:59Z kajo2 quit (Ping timeout: 248 seconds) 2017-08-23T08:12:03Z hhdave_ joined #lisp 2017-08-23T08:12:43Z hhdave quit (Ping timeout: 240 seconds) 2017-08-23T08:12:44Z hhdave_ is now known as hhdave 2017-08-23T08:17:00Z jasom: pjb: I'm pretty sure jscl is implemented in CL 2017-08-23T08:18:41Z phoe: ^ 2017-08-23T08:18:54Z araujo_ joined #lisp 2017-08-23T08:18:55Z phoe: it compiles itself into JS form that is then executable. 2017-08-23T08:20:15Z axion: sigh, JSCL devs still haven't fixed my bug reported where it's possible to freeze the entire image 2017-08-23T08:20:33Z marvin2 joined #lisp 2017-08-23T08:22:07Z araujo quit (Ping timeout: 240 seconds) 2017-08-23T08:28:08Z edgar-rft: axion: javascript folks would be totally unhappy if there's nothing freezing your browser frequently 2017-08-23T08:28:59Z lieven quit (Changing host) 2017-08-23T08:28:59Z lieven joined #lisp 2017-08-23T08:29:29Z Zhivago: Run it in a webworker. :) 2017-08-23T08:29:33Z axion: That must be a poor joke or I must have really good hardware 2017-08-23T08:30:36Z random-nick joined #lisp 2017-08-23T08:31:29Z Zhivago: He's probably a victim of microsoft's blocking ajax support. 2017-08-23T08:32:27Z damke quit (Ping timeout: 240 seconds) 2017-08-23T08:33:48Z damke joined #lisp 2017-08-23T08:33:58Z grublet joined #lisp 2017-08-23T08:39:08Z milanj quit (Quit: This computer has gone to sleep) 2017-08-23T08:43:31Z raynold quit (Quit: Connection closed for inactivity) 2017-08-23T08:43:49Z damke_ joined #lisp 2017-08-23T08:44:47Z damke quit (Ping timeout: 240 seconds) 2017-08-23T08:46:32Z e quit (Quit: edk) 2017-08-23T08:50:39Z zaoqi quit (Quit: zaoqi) 2017-08-23T08:51:08Z kilimanjaro quit (Ping timeout: 276 seconds) 2017-08-23T08:51:08Z gbyers quit (Ping timeout: 276 seconds) 2017-08-23T08:51:21Z zaoqi joined #lisp 2017-08-23T08:51:38Z kilimanjaro joined #lisp 2017-08-23T08:51:39Z gbyers joined #lisp 2017-08-23T08:52:49Z bigos joined #lisp 2017-08-23T08:52:49Z quazimodo quit (Read error: Connection reset by peer) 2017-08-23T08:53:07Z quazimodo joined #lisp 2017-08-23T08:56:47Z damke joined #lisp 2017-08-23T08:58:47Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T09:00:37Z damke_ joined #lisp 2017-08-23T09:01:07Z elazul quit (Ping timeout: 240 seconds) 2017-08-23T09:02:07Z damke quit (Ping timeout: 240 seconds) 2017-08-23T09:05:59Z whoma1 is now known as whoman 2017-08-23T09:07:30Z milanj joined #lisp 2017-08-23T09:09:45Z some-user joined #lisp 2017-08-23T09:09:48Z some-user: http://fare.livejournal.com/188429.html D: 2017-08-23T09:10:02Z phoe: some-user: :D 2017-08-23T09:12:03Z lvo joined #lisp 2017-08-23T09:16:01Z milanj quit (Quit: This computer has gone to sleep) 2017-08-23T09:18:07Z cods quit (Changing host) 2017-08-23T09:18:08Z cods joined #lisp 2017-08-23T09:23:08Z e joined #lisp 2017-08-23T09:25:28Z BitPuffin|osx joined #lisp 2017-08-23T09:29:55Z zaoqi quit (Ping timeout: 248 seconds) 2017-08-23T09:33:06Z defaultxr quit (Ping timeout: 248 seconds) 2017-08-23T09:35:52Z damke joined #lisp 2017-08-23T09:36:27Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T09:37:43Z knobo quit (Ping timeout: 252 seconds) 2017-08-23T09:40:22Z zaoqi joined #lisp 2017-08-23T09:50:09Z strelox joined #lisp 2017-08-23T09:58:31Z searcher quit (Read error: Connection reset by peer) 2017-08-23T10:01:01Z searcher joined #lisp 2017-08-23T10:01:30Z some-use` joined #lisp 2017-08-23T10:02:25Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-08-23T10:02:32Z Jey joined #lisp 2017-08-23T10:04:25Z some-use`: i wonder what is Fare's use case for which CL and Gerbil are interchangable 2017-08-23T10:04:36Z some-user quit (Ping timeout: 240 seconds) 2017-08-23T10:05:50Z m00natic joined #lisp 2017-08-23T10:10:43Z myrkraverk quit (Ping timeout: 252 seconds) 2017-08-23T10:13:08Z attila_lendvai: he's eye'ing infrastructure work ala tunes.org where he doesn't want to waste too much time on the hw related details of a compiler 2017-08-23T10:13:34Z attila_lendvai: btw, that red language mentioned in the comments seems interesting based on 5 minutes of reading: http://www.red-lang.org/p/about.html 2017-08-23T10:13:34Z attila_lendvai quit (Remote host closed the connection) 2017-08-23T10:14:10Z attila_lendvai joined #lisp 2017-08-23T10:22:26Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-23T10:25:25Z damke_ joined #lisp 2017-08-23T10:26:07Z zaoqi quit (Ping timeout: 252 seconds) 2017-08-23T10:28:27Z damke quit (Ping timeout: 240 seconds) 2017-08-23T10:29:10Z p0nce left #lisp 2017-08-23T10:35:32Z phoe destructures axion 2017-08-23T10:36:34Z Bike joined #lisp 2017-08-23T10:36:35Z clog quit (Ping timeout: 248 seconds) 2017-08-23T10:40:09Z Jey quit (Quit: Leaving) 2017-08-23T10:41:00Z knobo joined #lisp 2017-08-23T10:44:28Z test1600 quit (Quit: Leaving) 2017-08-23T10:50:35Z damke joined #lisp 2017-08-23T10:52:27Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T10:57:45Z phoe quit (Quit: leaving) 2017-08-23T11:00:13Z grublet quit (Ping timeout: 252 seconds) 2017-08-23T11:01:47Z mulk_ joined #lisp 2017-08-23T11:06:47Z jamtho_ joined #lisp 2017-08-23T11:10:25Z araujo_ quit (Quit: Leaving) 2017-08-23T11:10:38Z araujo joined #lisp 2017-08-23T11:14:27Z bigos quit (Remote host closed the connection) 2017-08-23T11:18:30Z zaoqi joined #lisp 2017-08-23T11:18:52Z wxie joined #lisp 2017-08-23T11:19:26Z Fare: some-use`, interchangeable? No, I believe Gerbil is superior for what I'm doing right now. 2017-08-23T11:19:31Z Fare: Actors for free. Yay! 2017-08-23T11:22:59Z mishoo__ joined #lisp 2017-08-23T11:24:06Z some-use` quit (Ping timeout: 240 seconds) 2017-08-23T11:24:14Z Fare: jasom, herep -- yes I was asking about ql2nix. As for killing actors, see my recent rant on the gambit list (if you follow me on twitter: http://twitter.com/ngnghm ) 2017-08-23T11:25:20Z TDT joined #lisp 2017-08-23T11:38:04Z lvo quit (Remote host closed the connection) 2017-08-23T11:41:30Z PuercoPop: fiddlerwoaroof: Thanks, I'll give it a try then 2017-08-23T11:42:18Z PuercoPop: slyrus: There is an actively developed and mantained fork of cxml: https://github.com/TBRSS/FXML/ 2017-08-23T11:53:17Z mson joined #lisp 2017-08-23T11:56:59Z milanj joined #lisp 2017-08-23T11:56:59Z some-user joined #lisp 2017-08-23T11:57:12Z damke_ joined #lisp 2017-08-23T11:59:17Z some-user: Fare: Sorry, got disconnected. But what are you doing right know if it's not a secret? Or at what task Gerbil is superior to CL? 2017-08-23T11:59:27Z damke quit (Ping timeout: 240 seconds) 2017-08-23T12:03:06Z shdeng quit (Ping timeout: 240 seconds) 2017-08-23T12:03:31Z shdeng joined #lisp 2017-08-23T12:10:27Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-23T12:12:14Z zaoqi quit (Quit: zaoqi) 2017-08-23T12:12:38Z zkat quit (Ping timeout: 276 seconds) 2017-08-23T12:13:05Z zaoqi joined #lisp 2017-08-23T12:14:39Z zkat joined #lisp 2017-08-23T12:14:53Z Fare: some-user, just backend work in a distributed system. 2017-08-23T12:15:04Z Fare: with a little bit of DSL development 2017-08-23T12:15:40Z satran joined #lisp 2017-08-23T12:15:40Z Fare: Gerbil has actors and RPC builtin, and a decent story for DSLs (including Racket-like #lang) 2017-08-23T12:16:45Z zaoqi quit (Client Quit) 2017-08-23T12:17:30Z zaoqi joined #lisp 2017-08-23T12:17:53Z Bike quit (Ping timeout: 248 seconds) 2017-08-23T12:21:57Z dddddd joined #lisp 2017-08-23T12:26:19Z phoe joined #lisp 2017-08-23T12:26:51Z kajo2 joined #lisp 2017-08-23T12:33:02Z zaoqi quit (Quit: zaoqi) 2017-08-23T12:33:31Z shdeng quit (Quit: Leaving) 2017-08-23T12:36:37Z clog joined #lisp 2017-08-23T12:40:34Z grublet joined #lisp 2017-08-23T12:49:19Z Arnot joined #lisp 2017-08-23T12:52:57Z EvW joined #lisp 2017-08-23T12:53:41Z Fare: Gerbil is also hopefully robust enough for work where security matters 2017-08-23T12:53:46Z Fare: and performance 2017-08-23T12:54:06Z satran quit (Quit: satran) 2017-08-23T12:54:23Z satran joined #lisp 2017-08-23T12:59:35Z satran quit (Quit: satran) 2017-08-23T12:59:49Z satran joined #lisp 2017-08-23T13:02:43Z some-user quit (Ping timeout: 240 seconds) 2017-08-23T13:04:06Z Bike joined #lisp 2017-08-23T13:04:27Z some-user joined #lisp 2017-08-23T13:04:38Z tonton quit (Ping timeout: 246 seconds) 2017-08-23T13:04:53Z some-user: Fare: Thats great! Thank you for sharing! 2017-08-23T13:06:24Z tonton joined #lisp 2017-08-23T13:09:06Z satran quit (Quit: satran) 2017-08-23T13:09:24Z satran joined #lisp 2017-08-23T13:13:06Z mishoo_ joined #lisp 2017-08-23T13:14:21Z mishoo__ quit (Ping timeout: 240 seconds) 2017-08-23T13:14:35Z satran quit (Quit: satran) 2017-08-23T13:14:49Z some-user left #lisp 2017-08-23T13:14:52Z satran joined #lisp 2017-08-23T13:15:07Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T13:17:17Z damke_ joined #lisp 2017-08-23T13:19:21Z Murii quit (Ping timeout: 252 seconds) 2017-08-23T13:20:45Z safe joined #lisp 2017-08-23T13:24:02Z phoe quit (Quit: leaving) 2017-08-23T13:24:06Z satran quit (Quit: satran) 2017-08-23T13:24:20Z satran joined #lisp 2017-08-23T13:26:22Z damke joined #lisp 2017-08-23T13:27:07Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T13:28:41Z safe quit (Quit: Leaving) 2017-08-23T13:29:35Z satran quit (Quit: satran) 2017-08-23T13:29:51Z satran joined #lisp 2017-08-23T13:39:27Z damke quit (Ping timeout: 240 seconds) 2017-08-23T13:39:58Z oleo joined #lisp 2017-08-23T13:41:40Z damke joined #lisp 2017-08-23T13:45:24Z araujo quit (Read error: Connection reset by peer) 2017-08-23T13:45:32Z whoma1 joined #lisp 2017-08-23T13:46:13Z damke_ joined #lisp 2017-08-23T13:47:29Z whoman quit (Ping timeout: 248 seconds) 2017-08-23T13:49:07Z damke quit (Ping timeout: 240 seconds) 2017-08-23T13:50:37Z cromachina_ quit (Read error: Connection reset by peer) 2017-08-23T13:50:45Z Jesin joined #lisp 2017-08-23T13:54:15Z damke joined #lisp 2017-08-23T13:54:29Z FreeBirdLjj joined #lisp 2017-08-23T13:55:07Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T13:58:39Z damke_ joined #lisp 2017-08-23T13:59:14Z FreeBirdLjj quit (Ping timeout: 276 seconds) 2017-08-23T13:59:27Z damke quit (Ping timeout: 240 seconds) 2017-08-23T14:00:33Z araujo joined #lisp 2017-08-23T14:01:11Z kajo2 quit (Ping timeout: 276 seconds) 2017-08-23T14:02:22Z kajo2 joined #lisp 2017-08-23T14:02:22Z quazimodo quit (Read error: Connection reset by peer) 2017-08-23T14:02:38Z quazimodo joined #lisp 2017-08-23T14:04:01Z damke_ quit (Ping timeout: 246 seconds) 2017-08-23T14:05:56Z damke_ joined #lisp 2017-08-23T14:05:59Z dec0n quit (Read error: Connection reset by peer) 2017-08-23T14:06:23Z random-nick quit (Quit: quit) 2017-08-23T14:06:38Z random-nick joined #lisp 2017-08-23T14:06:44Z wxie quit (Remote host closed the connection) 2017-08-23T14:09:04Z sdemarre quit (Read error: Connection reset by peer) 2017-08-23T14:13:38Z Khisanth quit (Ping timeout: 255 seconds) 2017-08-23T14:14:53Z DeadTrickster__ joined #lisp 2017-08-23T14:16:44Z lexicall joined #lisp 2017-08-23T14:20:50Z javax left #lisp 2017-08-23T14:21:32Z Kyo91 joined #lisp 2017-08-23T14:27:15Z Khisanth joined #lisp 2017-08-23T14:27:47Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T14:28:00Z damke joined #lisp 2017-08-23T14:30:54Z Lowl3v3l joined #lisp 2017-08-23T14:30:58Z lexicall quit (Quit: Ah, my macbook is gonna sleep!) 2017-08-23T14:32:26Z damke_ joined #lisp 2017-08-23T14:34:27Z tonton quit (Ping timeout: 248 seconds) 2017-08-23T14:34:43Z brucem quit (Quit: ZNC - http://znc.sourceforge.net) 2017-08-23T14:35:10Z damke quit (Ping timeout: 246 seconds) 2017-08-23T14:36:28Z tonton joined #lisp 2017-08-23T14:39:17Z brucem joined #lisp 2017-08-23T14:39:26Z brucem quit (Changing host) 2017-08-23T14:39:26Z brucem joined #lisp 2017-08-23T14:39:59Z whoma1 is now known as whoman 2017-08-23T14:44:25Z grublet quit (Quit: Leaving) 2017-08-23T14:48:25Z damke joined #lisp 2017-08-23T14:48:26Z Jesin quit (Quit: Leaving) 2017-08-23T14:50:11Z rippa joined #lisp 2017-08-23T14:50:27Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T14:51:06Z slyrus: Great, thanks PuercoPop 2017-08-23T14:51:25Z damke_ joined #lisp 2017-08-23T14:52:46Z damke quit (Ping timeout: 240 seconds) 2017-08-23T14:53:05Z Jesin joined #lisp 2017-08-23T14:55:00Z jack_rabbit joined #lisp 2017-08-23T14:57:17Z zacts joined #lisp 2017-08-23T14:58:08Z slyrus: Wow. There's a lot in that fork. I thought you meant a fork in the github sense, not a whole new project that uses cxml as it's starting point :) 2017-08-23T15:01:35Z teggi joined #lisp 2017-08-23T15:02:57Z damke joined #lisp 2017-08-23T15:04:53Z EvW quit (Ping timeout: 276 seconds) 2017-08-23T15:05:46Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T15:06:17Z optikalmouse joined #lisp 2017-08-23T15:06:33Z Jesin quit (Quit: Leaving) 2017-08-23T15:07:07Z kajo2 quit (Ping timeout: 240 seconds) 2017-08-23T15:09:45Z kajo2 joined #lisp 2017-08-23T15:12:08Z Jesin joined #lisp 2017-08-23T15:13:03Z schweers quit (Ping timeout: 246 seconds) 2017-08-23T15:15:57Z jack_rabbit quit (Ping timeout: 252 seconds) 2017-08-23T15:15:58Z quazimodo quit (Read error: Connection reset by peer) 2017-08-23T15:15:58Z AndroUser joined #lisp 2017-08-23T15:16:04Z AndroUser: X 2017-08-23T15:16:13Z quazimodo joined #lisp 2017-08-23T15:16:52Z AndroUser quit (Client Quit) 2017-08-23T15:17:08Z AndroUser joined #lisp 2017-08-23T15:17:23Z AndroUser is now known as gvaerg 2017-08-23T15:17:31Z gvaerg quit (Client Quit) 2017-08-23T15:17:48Z AndroUser joined #lisp 2017-08-23T15:18:03Z AndroUser quit (Client Quit) 2017-08-23T15:18:08Z flamebeard quit (Quit: Leaving) 2017-08-23T15:18:23Z felipedvorak joined #lisp 2017-08-23T15:18:23Z gvaerg joined #lisp 2017-08-23T15:18:32Z gvaerg: Hello 2017-08-23T15:19:54Z epony joined #lisp 2017-08-23T15:23:03Z mson quit (Quit: Connection closed for inactivity) 2017-08-23T15:26:40Z FreeBirdLjj joined #lisp 2017-08-23T15:27:47Z edgar-rft quit (Quit: edgar-rft) 2017-08-23T15:29:15Z gvaerg quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2017-08-23T15:29:40Z gvaerg joined #lisp 2017-08-23T15:29:58Z gvaerg quit (Client Quit) 2017-08-23T15:34:33Z jack_rabbit joined #lisp 2017-08-23T15:36:30Z sellout- joined #lisp 2017-08-23T15:37:09Z xuxuru joined #lisp 2017-08-23T15:40:34Z Fare quit (Ping timeout: 240 seconds) 2017-08-23T15:42:12Z sellout- quit (Quit: Leaving.) 2017-08-23T15:42:16Z knusbaum joined #lisp 2017-08-23T15:42:31Z sellout- joined #lisp 2017-08-23T15:43:15Z knobo quit (Ping timeout: 248 seconds) 2017-08-23T15:44:03Z Arnot quit (Quit: Page closed) 2017-08-23T15:44:38Z sellout- quit (Client Quit) 2017-08-23T15:46:25Z brendyn quit (Ping timeout: 248 seconds) 2017-08-23T15:50:41Z Mon_Ouie quit (Ping timeout: 248 seconds) 2017-08-23T15:50:44Z mson joined #lisp 2017-08-23T15:51:35Z Mon_Ouie joined #lisp 2017-08-23T15:55:57Z jasom: minion: memo for Fare: it seems like all of your requirements for safe asynchronous aborts can be met by the CL condition system; a restart captures the total state at which the condition was signalled, such that higher levels of abstraction can install a handler that instructs the lower levels to continue until you are at a safe point for the higher level. 2017-08-23T15:55:57Z minion: Remembered. I'll tell Fare when he/she/it next speaks. 2017-08-23T15:58:30Z raynold joined #lisp 2017-08-23T16:02:36Z yrk quit (Remote host closed the connection) 2017-08-23T16:03:43Z tonton quit (Ping timeout: 240 seconds) 2017-08-23T16:05:31Z tonton joined #lisp 2017-08-23T16:05:31Z al-damiri joined #lisp 2017-08-23T16:10:53Z DeadTrickster_ joined #lisp 2017-08-23T16:14:02Z SqREL quit (Remote host closed the connection) 2017-08-23T16:14:11Z DeadTrickster__ quit (Ping timeout: 248 seconds) 2017-08-23T16:14:42Z yrk joined #lisp 2017-08-23T16:15:54Z zacts quit (Ping timeout: 252 seconds) 2017-08-23T16:16:13Z knusbaum quit (Quit: Leaving.) 2017-08-23T16:18:20Z sjl joined #lisp 2017-08-23T16:18:43Z knusbaum joined #lisp 2017-08-23T16:18:57Z zacts joined #lisp 2017-08-23T16:19:08Z baroncha1lus quit (Remote host closed the connection) 2017-08-23T16:23:24Z Karl_Dscc joined #lisp 2017-08-23T16:25:29Z DeadTrickster_ quit (Ping timeout: 276 seconds) 2017-08-23T16:25:48Z trittweiler quit (Ping timeout: 252 seconds) 2017-08-23T16:27:31Z knusbaum quit (Quit: Leaving.) 2017-08-23T16:27:32Z Th30n joined #lisp 2017-08-23T16:29:06Z serviteur joined #lisp 2017-08-23T16:30:16Z danieli quit (Read error: Connection reset by peer) 2017-08-23T16:31:36Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-23T16:35:18Z pillton quit (Read error: Connection reset by peer) 2017-08-23T16:35:20Z Mon_Ouie joined #lisp 2017-08-23T16:37:49Z CrazyEddy quit (Remote host closed the connection) 2017-08-23T16:37:57Z damke_ joined #lisp 2017-08-23T16:39:06Z satran quit (Quit: satran) 2017-08-23T16:39:22Z satran joined #lisp 2017-08-23T16:39:55Z vtomole quit (Ping timeout: 260 seconds) 2017-08-23T16:40:06Z damke quit (Ping timeout: 240 seconds) 2017-08-23T16:40:43Z hhdave quit (Ping timeout: 240 seconds) 2017-08-23T16:42:16Z danieli joined #lisp 2017-08-23T16:43:47Z phoe joined #lisp 2017-08-23T16:44:35Z satran quit (Quit: satran) 2017-08-23T16:44:53Z satran joined #lisp 2017-08-23T16:46:36Z damke_ quit (Read error: Connection reset by peer) 2017-08-23T16:47:06Z rRru joined #lisp 2017-08-23T16:47:06Z smazga joined #lisp 2017-08-23T16:47:55Z Fare joined #lisp 2017-08-23T16:52:46Z knusbaum joined #lisp 2017-08-23T16:53:59Z random-nick quit (Remote host closed the connection) 2017-08-23T16:54:06Z satran quit (Quit: satran) 2017-08-23T16:54:20Z satran joined #lisp 2017-08-23T16:55:10Z knusbaum1 joined #lisp 2017-08-23T16:56:45Z m00natic quit (Remote host closed the connection) 2017-08-23T16:56:51Z knusbaum quit (Ping timeout: 240 seconds) 2017-08-23T16:57:06Z terpri quit (Ping timeout: 240 seconds) 2017-08-23T16:58:06Z random-nick joined #lisp 2017-08-23T16:59:35Z satran quit (Quit: satran) 2017-08-23T16:59:41Z damke_ joined #lisp 2017-08-23T16:59:50Z satran joined #lisp 2017-08-23T17:00:08Z stara joined #lisp 2017-08-23T17:00:30Z defaultxr joined #lisp 2017-08-23T17:00:52Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-23T17:01:41Z skeuomorf joined #lisp 2017-08-23T17:03:10Z damke joined #lisp 2017-08-23T17:04:06Z satran quit (Client Quit) 2017-08-23T17:04:06Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T17:04:24Z satran joined #lisp 2017-08-23T17:05:05Z knusbaum1 quit (Ping timeout: 246 seconds) 2017-08-23T17:09:35Z satran quit (Quit: satran) 2017-08-23T17:09:50Z satran joined #lisp 2017-08-23T17:12:06Z damke quit (Ping timeout: 240 seconds) 2017-08-23T17:12:33Z damke joined #lisp 2017-08-23T17:17:05Z cobol_ joined #lisp 2017-08-23T17:18:38Z damke_ joined #lisp 2017-08-23T17:20:29Z damke quit (Ping timeout: 246 seconds) 2017-08-23T17:23:59Z tessier quit (Ping timeout: 255 seconds) 2017-08-23T17:27:25Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-23T17:27:50Z vlatkoB_ joined #lisp 2017-08-23T17:28:03Z shka_ joined #lisp 2017-08-23T17:29:19Z klltkr joined #lisp 2017-08-23T17:31:13Z vlatkoB quit (Ping timeout: 240 seconds) 2017-08-23T17:35:53Z optikalmouse quit (Quit: optikalmouse) 2017-08-23T17:37:06Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-23T17:37:47Z cobol_ is now known as cobol 2017-08-23T17:40:39Z stara quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-23T17:43:13Z skeuomorf quit (Ping timeout: 248 seconds) 2017-08-23T17:43:46Z damke_ quit (Ping timeout: 240 seconds) 2017-08-23T17:44:15Z yrk quit (Read error: Connection reset by peer) 2017-08-23T17:47:19Z yrk joined #lisp 2017-08-23T17:51:03Z sjl quit (Ping timeout: 252 seconds) 2017-08-23T17:51:21Z damke_ joined #lisp 2017-08-23T17:52:20Z sjl joined #lisp 2017-08-23T17:53:06Z ski: minion: chant 2017-08-23T17:53:06Z minion: MORE ZEROES 2017-08-23T17:54:15Z teggi quit (Remote host closed the connection) 2017-08-23T17:54:40Z phoe: xD 2017-08-23T17:54:44Z phoe: I did not expect that 2017-08-23T17:55:04Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-23T17:55:51Z Th30n quit (Quit: dinner) 2017-08-23T17:57:06Z varjag joined #lisp 2017-08-23T17:57:58Z tessier joined #lisp 2017-08-23T17:57:58Z tessier quit (Changing host) 2017-08-23T17:57:58Z tessier joined #lisp 2017-08-23T17:59:13Z drcode quit (Read error: Connection reset by peer) 2017-08-23T17:59:40Z damke_ quit (Ping timeout: 246 seconds) 2017-08-23T18:07:39Z optikalmouse joined #lisp 2017-08-23T18:08:51Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-23T18:10:53Z Posterdati joined #lisp 2017-08-23T18:13:08Z kajo3 joined #lisp 2017-08-23T18:15:20Z quazimodo quit (Ping timeout: 276 seconds) 2017-08-23T18:15:48Z kajo2 quit (Ping timeout: 260 seconds) 2017-08-23T18:18:01Z EvW joined #lisp 2017-08-23T18:21:15Z axion multiple values phoe 2017-08-23T18:21:40Z phoe returns phoe 2017-08-23T18:30:43Z Bock quit (Ping timeout: 248 seconds) 2017-08-23T18:31:18Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-23T18:31:37Z sellout- joined #lisp 2017-08-23T18:32:18Z Fare quit (Ping timeout: 252 seconds) 2017-08-23T18:33:24Z knusbaum joined #lisp 2017-08-23T18:33:34Z Kyo91 joined #lisp 2017-08-23T18:34:06Z satran quit (Quit: satran) 2017-08-23T18:34:21Z satran joined #lisp 2017-08-23T18:37:43Z drcode joined #lisp 2017-08-23T18:39:35Z satran quit (Quit: satran) 2017-08-23T18:39:52Z satran joined #lisp 2017-08-23T18:42:51Z dustyweb is now known as paroneayea 2017-08-23T18:44:23Z BitPuffin|osx quit (Ping timeout: 260 seconds) 2017-08-23T18:46:15Z random-nick is now known as beaky-nick 2017-08-23T18:48:46Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-23T18:52:41Z phinxy joined #lisp 2017-08-23T18:53:07Z terpri joined #lisp 2017-08-23T18:56:19Z vlatkoB_ quit (Remote host closed the connection) 2017-08-23T19:00:01Z phoe quit (Ping timeout: 248 seconds) 2017-08-23T19:00:19Z beaky-nick is now known as random-nick 2017-08-23T19:01:56Z arbv quit (Ping timeout: 246 seconds) 2017-08-23T19:03:23Z mishoo_ joined #lisp 2017-08-23T19:04:31Z arbv joined #lisp 2017-08-23T19:07:18Z mfiano quit (Remote host closed the connection) 2017-08-23T19:07:20Z Lowl3v3l quit (Remote host closed the connection) 2017-08-23T19:07:42Z mfiano joined #lisp 2017-08-23T19:08:34Z rRru quit (Quit: rRru) 2017-08-23T19:12:48Z xuxuru quit (Quit: xuxuru) 2017-08-23T19:13:47Z drcode quit (Read error: Connection reset by peer) 2017-08-23T19:15:50Z krasnal quit (Ping timeout: 240 seconds) 2017-08-23T19:18:33Z gvaerg joined #lisp 2017-08-23T19:19:07Z drcode joined #lisp 2017-08-23T19:20:27Z gvaerg quit (Client Quit) 2017-08-23T19:20:48Z drcode quit (Excess Flood) 2017-08-23T19:21:08Z gvaerg joined #lisp 2017-08-23T19:21:59Z satran quit (Quit: satran) 2017-08-23T19:22:17Z skeuomorf joined #lisp 2017-08-23T19:22:41Z gvaerg quit (Remote host closed the connection) 2017-08-23T19:22:58Z gvaerg joined #lisp 2017-08-23T19:23:46Z gvaerg quit (Client Quit) 2017-08-23T19:24:03Z gvaerg joined #lisp 2017-08-23T19:27:44Z gvaerg quit (Client Quit) 2017-08-23T19:29:08Z drcode joined #lisp 2017-08-23T19:30:06Z phoe joined #lisp 2017-08-23T19:34:02Z Posterdati quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-23T19:35:03Z Posterdati joined #lisp 2017-08-23T19:37:50Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-23T19:38:06Z drcode quit (Read error: Connection reset by peer) 2017-08-23T19:39:35Z scottj left #lisp 2017-08-23T19:41:50Z drcode joined #lisp 2017-08-23T19:42:34Z neoncont_ quit (Remote host closed the connection) 2017-08-23T19:44:24Z klltkr joined #lisp 2017-08-23T19:46:07Z klltkr quit (Client Quit) 2017-08-23T19:48:24Z klltkr joined #lisp 2017-08-23T19:48:31Z klltkr quit (Client Quit) 2017-08-23T19:49:37Z sellout- quit (Ping timeout: 248 seconds) 2017-08-23T19:49:42Z neoncontrails joined #lisp 2017-08-23T19:50:24Z klltkr joined #lisp 2017-08-23T19:51:37Z klltkr quit (Client Quit) 2017-08-23T19:51:55Z sellout- joined #lisp 2017-08-23T19:52:35Z drcode quit (Read error: Connection reset by peer) 2017-08-23T19:58:40Z Kyo91 joined #lisp 2017-08-23T20:02:02Z phinxy quit (Read error: Connection reset by peer) 2017-08-23T20:05:35Z skeuomorf quit (Ping timeout: 240 seconds) 2017-08-23T20:05:38Z strelox quit (Remote host closed the connection) 2017-08-23T20:09:44Z shka_ quit (Ping timeout: 276 seconds) 2017-08-23T20:21:08Z edgar-rft joined #lisp 2017-08-23T20:21:42Z felipedvorak quit (Quit: felipedvorak) 2017-08-23T20:27:17Z klltkr joined #lisp 2017-08-23T20:28:54Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-23T20:40:19Z fsmunoz joined #lisp 2017-08-23T20:47:36Z mishoo_ quit (Ping timeout: 252 seconds) 2017-08-23T20:48:14Z pierpa joined #lisp 2017-08-23T20:54:38Z kolko joined #lisp 2017-08-23T20:56:18Z dyelar joined #lisp 2017-08-23T21:02:11Z sz0 joined #lisp 2017-08-23T21:13:14Z knobo joined #lisp 2017-08-23T21:15:07Z dim: is it possible to defmethod using sql specializer for more than one value? 2017-08-23T21:15:49Z Shinmera: Sure, why not. 2017-08-23T21:15:56Z Shinmera: If you meant eql, that is 2017-08-23T21:16:29Z Shinmera: And if you meant specialising two arguments by eql, not specialising the same argument to two different eql values at the same time. 2017-08-23T21:16:34Z varjag quit (Ping timeout: 248 seconds) 2017-08-23T21:16:57Z dim: (defmethod foo ((x (eql :s))) ...) 2017-08-23T21:17:20Z dim: I'd like to say eql to (or :s :t :u :v) 2017-08-23T21:17:23Z dim: any chance? 2017-08-23T21:17:28Z Shinmera: No. Dupe the method. 2017-08-23T21:17:37Z dim: 'k, thx 2017-08-23T21:18:00Z Shinmera: (flet ((foo (a) ...)) (demethod ... (foo a)) (defmethod .. (foo a))) 2017-08-23T21:18:06Z dim: mayne it's a sign I should dispatch on a type and have a supertype 2017-08-23T21:18:17Z Shinmera: Can't dispatch on types either. 2017-08-23T21:18:34Z skeuomorf joined #lisp 2017-08-23T21:18:39Z Shinmera: Or rather, you can't specialise on types. Only classes. 2017-08-23T21:19:03Z dim: yes, using defstruct a lot here 2017-08-23T21:19:47Z dim: I almost have &key parameters that depend on format 2017-08-23T21:19:59Z dim: with the right angle I can see a format defstruct coming 2017-08-23T21:20:00Z dim: th 2017-08-23T21:23:10Z dim: I guess :include allows to define a tree of structs and then to dispatch on more general ones, same as classes? 2017-08-23T21:25:15Z Shinmera: Yes, as long as you don't futz about with :type 2017-08-23T21:25:46Z dim: sure 2017-08-23T21:26:25Z Bike quit (Ping timeout: 276 seconds) 2017-08-23T21:26:34Z Shinmera: Interestingly enough the defstruct entry talks about subtype relationships, rather than saying that the new structure class being defined is a subclass of the included one. 2017-08-23T21:27:49Z Shinmera: So, I might be wrong here, but it seems possible that an implementation might (for no good reason) define a structure class that does not follow a hierarchy, and instead handle the subtype relation in the type specifier, thus making it unsuitable for generic function dispatch. 2017-08-23T21:30:31Z mson quit (Quit: Connection closed for inactivity) 2017-08-23T21:31:17Z pjb quit (Remote host closed the connection) 2017-08-23T21:31:43Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-23T21:33:06Z pjb joined #lisp 2017-08-23T21:33:20Z knobo quit (Ping timeout: 240 seconds) 2017-08-23T21:35:42Z dim: I only target SBCL and CCL here 2017-08-23T21:35:58Z Shinmera: Sure, just something interesting that I noticed. 2017-08-23T21:36:10Z dim: well I'd like to target ABCL and play with JDBC sometime, but I can't produce pgloader.jar yet 2017-08-23T21:37:01Z jasom: my reading of the spec as well is that a defstruct with an :include is allowed to not be a subclass of the struct it includes 2017-08-23T21:38:00Z Shinmera: I don't know if it's intentional, though. 2017-08-23T21:38:05Z dim: in practice, is it, in sbcl and ccl? testing... 2017-08-23T21:38:10Z jasom: I always assumed it was intentional 2017-08-23T21:38:10Z neoncontrails quit (Remote host closed the connection) 2017-08-23T21:38:34Z jasom: I can think of reasonable implementations in which it would work that way 2017-08-23T21:38:45Z Shinmera: Given that it specifies that a structure-class must be created , I don't know. 2017-08-23T21:39:12Z jasom: but the structure-class metaclass need not implement class inheritance at all 2017-08-23T21:39:42Z optikalmouse quit (Quit: optikalmouse) 2017-08-23T21:39:45Z Shinmera: I suppose. 2017-08-23T21:42:44Z jasom: on sbcl it makes it a direct-superclass 2017-08-23T21:43:20Z jasom: ccl as well 2017-08-23T21:45:19Z dim: yeah it seems to work (I had to refactor quite some code around it to check) 2017-08-23T21:45:48Z grublet joined #lisp 2017-08-23T21:47:50Z Denommus joined #lisp 2017-08-23T21:47:52Z Karl_Dscc quit (Remote host closed the connection) 2017-08-23T21:49:33Z Denommus quit (Client Quit) 2017-08-23T21:49:54Z Denommus joined #lisp 2017-08-23T22:01:56Z pjb quit (Remote host closed the connection) 2017-08-23T22:05:31Z Bike joined #lisp 2017-08-23T22:12:27Z varjag joined #lisp 2017-08-23T22:12:37Z random-nick quit (Remote host closed the connection) 2017-08-23T22:13:51Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-23T22:13:55Z dyelar quit (Quit: Leaving.) 2017-08-23T22:15:01Z malice joined #lisp 2017-08-23T22:16:46Z dim: ok now I have proper human-readable *and* proper JSON output 2017-08-23T22:17:22Z varjag quit (Ping timeout: 248 seconds) 2017-08-23T22:19:15Z klltkr joined #lisp 2017-08-23T22:19:29Z dim: is there a simple way to handle ncurses from CL and output unicode chars? I tried once but couldn't display e.g. ♣ and ⚑ 2017-08-23T22:23:13Z ryanwatkins quit (Ping timeout: 246 seconds) 2017-08-23T22:25:50Z mson joined #lisp 2017-08-23T22:30:59Z neoncontrails joined #lisp 2017-08-23T22:37:46Z storer joined #lisp 2017-08-23T22:57:54Z terpri quit (Ping timeout: 248 seconds) 2017-08-23T23:03:04Z papachan quit (Quit: Saliendo) 2017-08-23T23:06:58Z raydeejay_ joined #lisp 2017-08-23T23:07:10Z msb quit (Ping timeout: 264 seconds) 2017-08-23T23:07:10Z raydeejay quit (Ping timeout: 264 seconds) 2017-08-23T23:07:10Z raydeejay_ is now known as raydeejay 2017-08-23T23:07:35Z msb joined #lisp 2017-08-23T23:07:41Z neoncontrails quit 2017-08-23T23:13:48Z axion: With drakma, if I query a URL with a 301 redirect, how would I get the url it is going to redirect to without actually connecting? 2017-08-23T23:15:44Z Bike: it's in the location field of the response... i think that's accessible 2017-08-23T23:15:47Z axion: I purposely construct a URL that redirects to a non-existent domain, and drakma will try to resolve this, even if I tell drakma not to redirect with :redirect 0, making usockets error. 2017-08-23T23:16:18Z axion: I cannot get a response though with this non-existent 301 2017-08-23T23:16:55Z Bike: oh, i see 2017-08-23T23:16:57Z axion: I will instead get Condition USOCKET:NS-HOST-NOT-FOUND-ERROR was signalled, because drakma attempts to resolve the 301 target 2017-08-23T23:18:02Z phoe: axion: I think you need to dive into drakma for that. 2017-08-23T23:18:22Z axion: sigh 2017-08-23T23:18:23Z phoe: I do not think it was designed to work with incorrect URLs. 2017-08-23T23:18:24Z phoe: But. 2017-08-23T23:18:40Z phoe: You can try to inspect the USOCKET:NS-HOST-NOT-FOUND-ERROR condition instance. 2017-08-23T23:18:47Z sellout- quit (Quit: Leaving.) 2017-08-23T23:18:48Z phoe: Perhaps, in one of its slots, it contains the URL you seek. 2017-08-23T23:18:55Z phoe: At least that's how I would construct the condition. 2017-08-23T23:18:58Z sellout- joined #lisp 2017-08-23T23:19:14Z axion: No it doesn't. It's further down the stack 2017-08-23T23:19:27Z phoe: Well, it sucks then. 2017-08-23T23:19:32Z wxie joined #lisp 2017-08-23T23:19:46Z skeuomorf quit (Ping timeout: 248 seconds) 2017-08-23T23:19:58Z phoe: Is it some kind of generic function call? Perhaps you can write an AROUND method that hijacks the call if some dynamic variable is set. 2017-08-23T23:20:05Z sellout- quit (Client Quit) 2017-08-23T23:20:10Z smazga quit (Quit: leaving) 2017-08-23T23:20:26Z phoe: So you can (let ((*hijack-301-url* t)) (drakma-call-here)) 2017-08-23T23:20:33Z axion: Drakma is only passing the domain to usockets anyway, and not the path 2017-08-23T23:20:44Z phoe: Ouch. 2017-08-23T23:20:53Z phoe: At this point, time to modify drakma I think. 2017-08-23T23:20:56Z Bike: if :redirect 0 doesn't work, isn't that a bug? 2017-08-23T23:21:30Z axion: Redirect 0 results in 2017-08-23T23:21:33Z axion: Status code was 301, but redirection limit has been exceeded. 2017-08-23T23:21:36Z axion: [Condition of type DRAKMA::DRAKMA-SIMPLE-ERROR] 2017-08-23T23:21:45Z Bike: and no other information? 2017-08-23T23:21:45Z axion: Still no response to query for the header url 2017-08-23T23:21:56Z phoe: no other information it seems. 2017-08-23T23:22:18Z Bike: that seems like something that could be changed 2017-08-23T23:22:19Z axion: I eve tried dexador, and it does similar stupid stuff 2017-08-23T23:22:26Z phoe: You might actually want to make a Drakma PR that, in that place, signals a custom condition, whose slots contain the URL information. 2017-08-23T23:22:32Z phoe: instead of DRAKMA-SIMPLE-ERROR 2017-08-23T23:22:44Z logicmoo is now known as dmiles 2017-08-23T23:24:04Z axion: You can try it yourself with a url i made: (drakma:http-request "https://is.gd/ESNHyV" :redirect 0) 2017-08-23T23:27:53Z pillton joined #lisp 2017-08-23T23:28:49Z slyrus quit (Ping timeout: 248 seconds) 2017-08-23T23:31:00Z phoe: well, shit. there is nowhere one can inject their code inside that stack. 2017-08-23T23:33:18Z phoe: time for you to edit code. 2017-08-23T23:33:29Z axion: I wouldn't even know where to begin heh 2017-08-23T23:33:34Z axion: Time to scrap this project is more like it 2017-08-23T23:35:08Z phoe: also holy fuck, DRAKMA:HTTP-REQUEST is a function 400 lines of code long 2017-08-23T23:35:14Z phoe: and 300 lines of docstring long, too 2017-08-23T23:36:03Z axion: wow 2017-08-23T23:36:28Z phoe: it is impossible to hook into this code 2017-08-23T23:36:50Z phoe: it might be genius code, but it's freaking impossible to extend 2017-08-23T23:36:55Z Bike: well you wouldn't do it at that level. 2017-08-23T23:37:06Z axion: What about dexador? 2017-08-23T23:37:09Z Bike: mainly i'm surprised that it signals an error instead of just returning, like it does for 404, say 2017-08-23T23:37:14Z axion: similar issues there 2017-08-23T23:42:50Z slyrus joined #lisp 2017-08-23T23:44:43Z knusbaum quit (Ping timeout: 240 seconds) 2017-08-23T23:45:57Z axion: the `trivial-http` library doesn't error and shows the url in the returned header. Just very irksome i'll be using 2 http clients in this project 2017-08-23T23:47:53Z cromachina joined #lisp 2017-08-23T23:51:38Z phoe: axion: d'oh 2017-08-23T23:51:47Z phoe: if it works, use it 2017-08-23T23:52:06Z phoe: Geralt had two them swords for different use cases and you're complaining about two HTTP clients 2017-08-23T23:52:28Z phoe: anyway, night 2017-08-23T23:52:42Z axion: It's just a pain because it doesnt support keep alive, and i'll be doing many urls at once 2017-08-23T23:52:51Z axion: so it's going to be sloooowwww 2017-08-23T23:59:01Z phoe: well, there's your motivation to actually update drakma's HTTP-REQUEST with Yet Another Keyword Argument™ 2017-08-23T23:59:29Z phoe: (drakma:http-request "http://foo.bar" :redirect 0 :return-url-on-redirect-exhaustion t) 2017-08-23T23:59:41Z phoe: that one would be actually trivial to implement 2017-08-24T00:02:08Z sellout- joined #lisp 2017-08-24T00:02:56Z sellout- quit (Client Quit) 2017-08-24T00:03:11Z Bike: i don't see why that's not just the default behavior 2017-08-24T00:03:19Z Bike: it's a simple-error, too. fuck simple errors 2017-08-24T00:04:30Z brendyn joined #lisp 2017-08-24T00:04:43Z axion: tbh i'd much rather see this in dexador, because lots of drakma sucks. but i have bug reports from years gone unanswered by fukamachi. I try to avoid his software for this reason, but some of it is too nice 2017-08-24T00:05:26Z marvin2: I kind of like clojure's concise way of defining a lambda: #(fun % 1) would be the same as (lambda (x) (fun x 1)). is there a way to write something similar to that (doesn't need to be exactly the same syntax)? 2017-08-24T00:07:07Z marvin2: arguments can also be referred by their position, %1, %2, etc 2017-08-24T00:07:20Z Bike: there are a few libraries to do that 2017-08-24T00:07:48Z Bike: such as... https://github.com/Hexstream/positional-lambda 2017-08-24T00:07:54Z Bike: i remember seeing one or two others 2017-08-24T00:07:55Z CrazyEddy joined #lisp 2017-08-24T00:08:23Z Kaisyu joined #lisp 2017-08-24T00:08:49Z aeth: marvin2: you might be looking for alexandria's curry and rcurry (although it's not fully positional, it's just right or left) e.g. (rcurry #'fun 1) 2017-08-24T00:09:13Z aeth: And it's not a major dependency because practically any large program will have some dependency that already uses alexandria. 2017-08-24T00:10:17Z marvin2: yeah I am familiar with those, they are often useful 2017-08-24T00:14:04Z wxie quit (Remote host closed the connection) 2017-08-24T00:14:06Z marvin2: it is different than # though, and doesn't always replace it. positional-lambda seems to be closer (virtually the same). I am tempted to write a macro λ that just expands to plambda 2017-08-24T00:15:03Z JuanDaugherty joined #lisp 2017-08-24T00:16:16Z aeth: Careful about using the unicode lambda... A lot of us replace "lambda" with it through emacs configuration. 2017-08-24T00:16:23Z marvin2: maybe make it a reader macro? would this be possible? 2017-08-24T00:16:27Z marvin2: λ(+ :1 10) 2017-08-24T00:17:02Z aeth: You'd probably want to make it #λ and use this: http://www.lispworks.com/documentation/HyperSpec/Body/f_mk_dis.htm 2017-08-24T00:17:04Z marvin2: aeth interesting. there is a mode that does that? 2017-08-24T00:17:08Z aeth: several. 2017-08-24T00:17:18Z JuanDaugherty checks if sbcl unicode support would let him code using hanzi 2017-08-24T00:18:15Z marvin2: is that some sort of convention, to start all user defined reader macros with '#' sign? 2017-08-24T00:18:50Z JuanDaugherty: apparently not 2017-08-24T00:19:21Z pillton: clhs 2.4.8 2017-08-24T00:19:22Z specbot: Sharpsign: http://www.lispworks.com/reference/HyperSpec/Body/02_dh.htm 2017-08-24T00:19:28Z pillton: marvin2: See clhs 2.4.8 2017-08-24T00:19:45Z rngoodn joined #lisp 2017-08-24T00:21:34Z Bike: JuanDaugherty: really, it doesn't? 2017-08-24T00:21:50Z jack_rabbit quit (Ping timeout: 246 seconds) 2017-08-24T00:21:51Z Bike: marvin2: not exactly a convention, it's just kind of convenient. you could use the lambda character if you want. 2017-08-24T00:21:52Z phoe: marvin2: sharpsign is a standard dispatching macro character. 2017-08-24T00:21:57Z phoe: you can define your own. 2017-08-24T00:21:58Z JuanDaugherty: i have inferred that it does not except in strings and character literals 2017-08-24T00:22:30Z Bike: that would surprise me 2017-08-24T00:22:39Z jack_rabbit joined #lisp 2017-08-24T00:22:41Z Bike: given that a symbol is just a pair with a string in it 2017-08-24T00:22:55Z JuanDaugherty: well ... 2017-08-24T00:23:16Z Bike: (i'd verify myself, but i have no IME. guess i could copypaste) 2017-08-24T00:23:24Z JuanDaugherty: (rhetorical ellipsis that makes presumptions about realities of compilers) 2017-08-24T00:24:23Z JuanDaugherty: by the time i would get around to determining the matter of fact, it prolly will 2017-08-24T00:25:08Z Oladon joined #lisp 2017-08-24T00:25:30Z Bike: checked. i can (defun 𨳒 (x) (1+ x)) (𨳒 3) => 4 no problem 2017-08-24T00:25:36Z JuanDaugherty: and I would not accept the acceptance of single symbol 2017-08-24T00:25:58Z JuanDaugherty: but that is encouraging, a substantial confirmation 2017-08-24T00:26:20Z Bike: like, you wouldn't accept a symbol with only one character in it, or you wouldn't accept the use of only one symbol incorporating hanzi? 2017-08-24T00:26:53Z doesthiswork joined #lisp 2017-08-24T00:26:55Z JuanDaugherty: i wouldn't accept that I freely code using hanzi, but at this point think it would have a good shot 2017-08-24T00:27:10Z JuanDaugherty: *can freely 2017-08-24T00:27:19Z JuanDaugherty: ty 2017-08-24T00:33:42Z ryan_vw quit (Ping timeout: 240 seconds) 2017-08-24T00:34:10Z groovy2shoes quit (Ping timeout: 255 seconds) 2017-08-24T00:38:12Z Ellenor is now known as graceful 2017-08-24T00:38:37Z JuanDaugherty: and (defun 𨳒今 (x) (1+ x)) at least worked 2017-08-24T00:40:44Z Bike: something weird happened when i tried to define factorial, but it might have been that i was blindly pasting curse words 2017-08-24T00:42:25Z phoe quit (Ping timeout: 248 seconds) 2017-08-24T00:45:23Z JuanDaugherty: yeah, that must have a non expletive meaning the radicals are too common, wiktionary says it's cantonese 2017-08-24T00:46:15Z azzamsa joined #lisp 2017-08-24T00:46:48Z JuanDaugherty: lil wierdness is OK but more than that is the gap I had in mind between just accepting a symbol and freely coding 2017-08-24T00:48:52Z JuanDaugherty: *weirdness 2017-08-24T00:49:22Z malice: During quickloading I get an error "illegal function call". Can I somehow learn which function call is illegal? 2017-08-24T00:49:30Z rme joined #lisp 2017-08-24T00:49:35Z wheelsucker joined #lisp 2017-08-24T00:51:38Z EvW quit (Ping timeout: 255 seconds) 2017-08-24T00:51:40Z ryan_vw joined #lisp 2017-08-24T00:54:10Z safe joined #lisp 2017-08-24T00:54:24Z terpri joined #lisp 2017-08-24T00:57:38Z Bike: malice: does the error provide more information? 2017-08-24T00:59:00Z malice: Not really. 2017-08-24T00:59:21Z Bike: Nothing? No backtrace? No form? Just "illegal function call"? 2017-08-24T00:59:24Z malice: I found it manually, but it would be nice to know something more in the future. 2017-08-24T00:59:50Z malice: I got exactly this: http://ix.io/znf 2017-08-24T01:00:01Z axion: :verbose t? 2017-08-24T01:00:22Z malice: Oh. I always forget about this option. Next time I have this error, I'll try that. 2017-08-24T01:00:40Z groovy2shoes joined #lisp 2017-08-24T01:00:48Z axion: That will at least tell you the last file/function it was loading 2017-08-24T01:01:28Z axion: Just be sure to like touch packages.lisp or something to force a recompile 2017-08-24T01:02:21Z malice: Sure. Thanks, axion 2017-08-24T01:02:21Z Bike: oh, asdf being weird 2017-08-24T01:06:33Z pillton: axion: You can do (asdf:load-system "system" :force t). 2017-08-24T01:07:40Z axion: Yes, you could, but the question was about quickloading so I gave an answer closer to that usage. 2017-08-24T01:10:15Z quazimodo joined #lisp 2017-08-24T01:10:30Z mson quit (Quit: Connection closed for inactivity) 2017-08-24T01:10:33Z malice: Is there some way to escape Lisp's string to proper filename? 2017-08-24T01:10:48Z malice: I've got some filename like "Filename /02/01" 2017-08-24T01:11:08Z malice: I'd like to at least escape slashes 2017-08-24T01:13:39Z rme quit (Ping timeout: 180 seconds) 2017-08-24T01:14:03Z phoe joined #lisp 2017-08-24T01:14:40Z akkad: expand it? 2017-08-24T01:15:30Z rme quit (Ping timeout: 248 seconds) 2017-08-24T01:15:39Z d4ryus3 joined #lisp 2017-08-24T01:18:42Z d4ryus2 quit (Ping timeout: 240 seconds) 2017-08-24T01:18:55Z malice: akkad: what do you mean? 2017-08-24T01:19:31Z jamtho_ joined #lisp 2017-08-24T01:20:37Z axion: Why would you want to do that? If you are writing it to disk, you wouldnt use a namestring, but a pathname 2017-08-24T01:21:45Z malice: Well, I might have been unclear 2017-08-24T01:21:50Z malice: it can be *any* string 2017-08-24T01:22:02Z malice: so "Filename /02/01" is as valid as "//.dsfs" 2017-08-24T01:22:12Z malice: but this is a single name, not a path designator 2017-08-24T01:22:17Z malice: (the string comes from internet) 2017-08-24T01:23:54Z axion: I would just use cl-ppcre:regex-replace-all 2017-08-24T01:26:25Z malice: Yes, that's what I'm currently using. I was curious whether there was some better alternative. 2017-08-24T01:27:51Z axion: There are lots of ways. That depends what you mean by better. 2017-08-24T01:29:07Z R0B_ROD joined #lisp 2017-08-24T01:29:38Z malice: Well, I don't know all the things I should escape. 2017-08-24T01:29:54Z malice: Some unprintable unicode? 2017-08-24T01:30:38Z axion: First question, is why are you wanted to escape in the first place. 2017-08-24T01:30:55Z axion: Is it to write a URL query? 2017-08-24T01:31:00Z axion: Is it to write to the filesystem? 2017-08-24T01:31:39Z malice: As I said, I will receive some string from the internet, so I'm not sure what it will contain. I want to use this string as a filename - so I want to write it to the filesystem. 2017-08-24T01:32:07Z defaultxr quit (Ping timeout: 260 seconds) 2017-08-24T01:32:53Z axion: Then you'll have to encode them in some encoding that works best for your application. Most web stuff is base64 encoded. You can use cl-base64 for that. It accepts a string, octet vector, or stream as input 2017-08-24T01:34:12Z axion: Or you could just write a binary stream to disk. It really depends what you are doing with these files once on disk. 2017-08-24T01:36:21Z malice: I'll see cl-base64. Thanks. 2017-08-24T01:37:50Z phoe quit (Ping timeout: 240 seconds) 2017-08-24T01:56:47Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-24T01:56:57Z safe quit (Read error: Connection reset by peer) 2017-08-24T02:03:20Z milanj quit (Quit: This computer has gone to sleep) 2017-08-24T02:07:28Z zulu_inuoe: Is it allowed & kosher to use #+ and #- reader macros in an ASD file? I'd like to load certain components on different platforms 2017-08-24T02:09:24Z Ologn joined #lisp 2017-08-24T02:09:44Z axion: Sure 2017-08-24T02:09:57Z Bike: asdf has a thing for that 2017-08-24T02:10:01Z Bike: :feature or something? 2017-08-24T02:10:45Z axion: zulu_inuoe: Many many projects do this. https://github.com/rpav/fast-io/blob/master/fast-io.asd#L15 2017-08-24T02:12:14Z Bike: https://common-lisp.net/project/asdf/asdf/The-defsystem-grammar.html#Feature-dependencies 2017-08-24T02:12:44Z zulu_inuoe: Thanks! I don't know how I missed that 2017-08-24T02:15:36Z whoman quit (Quit: Leaving) 2017-08-24T02:17:09Z chens joined #lisp 2017-08-24T02:26:29Z TDT quit (Quit: TDT) 2017-08-24T02:27:26Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-24T02:29:52Z defaultxr joined #lisp 2017-08-24T02:30:15Z attila_lendvai quit (Quit: Leaving.) 2017-08-24T02:30:26Z pierpa quit (Quit: Page closed) 2017-08-24T02:31:21Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-24T02:32:27Z safe joined #lisp 2017-08-24T02:34:31Z azzamsa quit (Quit: Leaving) 2017-08-24T02:36:18Z jamtho_ quit (Ping timeout: 252 seconds) 2017-08-24T02:39:03Z Denommus quit (Ping timeout: 252 seconds) 2017-08-24T02:40:27Z attila_lendvai joined #lisp 2017-08-24T02:41:08Z attila_lendvai quit (Client Quit) 2017-08-24T02:41:08Z Oladon quit (Read error: Connection reset by peer) 2017-08-24T02:42:38Z Oladon joined #lisp 2017-08-24T02:46:18Z drcode joined #lisp 2017-08-24T02:48:05Z flazh1 quit (Ping timeout: 240 seconds) 2017-08-24T02:49:13Z drcode quit (Read error: Connection reset by peer) 2017-08-24T03:00:05Z tonton quit (Ping timeout: 240 seconds) 2017-08-24T03:00:05Z azzamsa_ joined #lisp 2017-08-24T03:00:11Z azzamsa_ quit (Remote host closed the connection) 2017-08-24T03:00:48Z tonton joined #lisp 2017-08-24T03:01:06Z chens quit (Ping timeout: 248 seconds) 2017-08-24T03:01:26Z drcode joined #lisp 2017-08-24T03:02:04Z test1600 joined #lisp 2017-08-24T03:11:51Z sellout- joined #lisp 2017-08-24T03:12:06Z sellout-1 joined #lisp 2017-08-24T03:13:18Z safe quit (Read error: Connection reset by peer) 2017-08-24T03:16:34Z sellout- quit (Ping timeout: 248 seconds) 2017-08-24T03:18:08Z tonton quit (Ping timeout: 248 seconds) 2017-08-24T03:19:38Z tonton joined #lisp 2017-08-24T03:24:11Z flazh1 joined #lisp 2017-08-24T03:24:19Z impulse joined #lisp 2017-08-24T03:27:32Z dddddd quit (Remote host closed the connection) 2017-08-24T03:38:45Z serviteur quit (Remote host closed the connection) 2017-08-24T03:39:30Z Bike quit (Ping timeout: 248 seconds) 2017-08-24T03:40:46Z araujo quit (Ping timeout: 240 seconds) 2017-08-24T03:41:50Z fsmunoz quit (Ping timeout: 240 seconds) 2017-08-24T03:51:13Z rngoodn joined #lisp 2017-08-24T03:53:13Z elfmacs joined #lisp 2017-08-24T03:54:39Z damke_ joined #lisp 2017-08-24T03:55:16Z vtomole joined #lisp 2017-08-24T03:56:35Z tonton quit (Ping timeout: 240 seconds) 2017-08-24T03:56:46Z tonton joined #lisp 2017-08-24T03:59:13Z eaxy joined #lisp 2017-08-24T04:00:02Z beach: Good morning everyone! 2017-08-24T04:00:37Z axion: Hello beach 2017-08-24T04:01:20Z FalconPilot quit (Ping timeout: 240 seconds) 2017-08-24T04:02:00Z pillton: G'day beach. 2017-08-24T04:03:09Z damke__ joined #lisp 2017-08-24T04:03:46Z damke_ quit (Ping timeout: 240 seconds) 2017-08-24T04:04:00Z whoman joined #lisp 2017-08-24T04:05:16Z anticrisis joined #lisp 2017-08-24T04:07:26Z damke__ quit (Ping timeout: 240 seconds) 2017-08-24T04:08:01Z shka_ joined #lisp 2017-08-24T04:09:19Z eaxy quit (Quit: Page closed) 2017-08-24T04:09:26Z damke__ joined #lisp 2017-08-24T04:14:21Z FalconPilot joined #lisp 2017-08-24T04:14:57Z damke joined #lisp 2017-08-24T04:17:26Z damke__ quit (Ping timeout: 240 seconds) 2017-08-24T04:21:35Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-24T04:22:35Z tonton quit (Ping timeout: 240 seconds) 2017-08-24T04:22:45Z tonton joined #lisp 2017-08-24T04:30:42Z terpri quit (Ping timeout: 240 seconds) 2017-08-24T04:31:42Z eschatologist quit (Quit: ZNC 1.6.4+deb1 - http://znc.in) 2017-08-24T04:32:28Z eschatologist joined #lisp 2017-08-24T04:33:43Z damke_ joined #lisp 2017-08-24T04:36:06Z damke quit (Ping timeout: 240 seconds) 2017-08-24T04:43:46Z tonton quit (Ping timeout: 240 seconds) 2017-08-24T04:46:44Z vtomole: I've heard somewhere (here :https://gist.github.com/chrisdone/516489f4f27846712225#file-anintro-md), That it is hard to write a self intepreter in a statically typed lisp. Is that true? 2017-08-24T04:49:50Z tonton joined #lisp 2017-08-24T04:52:24Z cromachina_ joined #lisp 2017-08-24T04:52:47Z cromachina quit (Ping timeout: 260 seconds) 2017-08-24T04:53:00Z damke joined #lisp 2017-08-24T04:54:12Z beach: I can definitely imagine that. 2017-08-24T04:55:46Z damke_ quit (Ping timeout: 240 seconds) 2017-08-24T04:56:47Z malice quit (Remote host closed the connection) 2017-08-24T04:58:32Z vtomole: That is different from using type declarations? Type declartions catch type errors at compile-time? 2017-08-24T04:58:38Z smokeink joined #lisp 2017-08-24T04:58:44Z smokeink quit (Client Quit) 2017-08-24T05:04:53Z cromachina joined #lisp 2017-08-24T05:05:21Z cromachina_ quit (Ping timeout: 252 seconds) 2017-08-24T05:09:25Z pjb joined #lisp 2017-08-24T05:11:04Z tonton quit (Ping timeout: 240 seconds) 2017-08-24T05:11:53Z dec0n joined #lisp 2017-08-24T05:11:54Z Bock joined #lisp 2017-08-24T05:12:44Z tonton joined #lisp 2017-08-24T05:13:03Z cromachina quit (Ping timeout: 252 seconds) 2017-08-24T05:13:04Z elazul joined #lisp 2017-08-24T05:14:23Z devon joined #lisp 2017-08-24T05:14:24Z marvin2 quit (Ping timeout: 248 seconds) 2017-08-24T05:18:31Z pillton: The standard doesn't specify. Some implementations do catch type errors at compile time. 2017-08-24T05:21:16Z quazimodo joined #lisp 2017-08-24T05:21:45Z vtomole: I figure thats the reason type declarations exist. What would be the benefit of an implementation catching errors at runtime with type declarations? 2017-08-24T05:23:33Z vtomole: Oh and if lisp can catch errors at compile-time, then the amount of misinformation out in the wild is insane (ex. "I don't want to use lisp cause it's dynamically typed") 2017-08-24T05:24:02Z vtomole: I've heard people say that more than plenty 2017-08-24T05:24:44Z Zhivago: Well, given a sufficiently intelligent and constrained compiler ... 2017-08-24T05:25:35Z trittweiler joined #lisp 2017-08-24T05:26:06Z Zhivago: But frankly, most lisp systems don't take much advantage of static type analysis. 2017-08-24T05:26:55Z cromachina joined #lisp 2017-08-24T05:27:06Z vtomole: Yeah I've notice that in the SICL and SBCL source code 2017-08-24T05:27:28Z trittweiler quit (Read error: Connection reset by peer) 2017-08-24T05:27:41Z pjb quit (Read error: Connection reset by peer) 2017-08-24T05:28:09Z pjb joined #lisp 2017-08-24T05:29:09Z White_Flame: you really need (safety 0) if you're going to do type analysis 2017-08-24T05:29:18Z pjb: vtomole: no, type declarations in Common Lisp is to let the compiler avoid doing any type inference or type checking. It is you being smarter than the compiler! 2017-08-24T05:29:18Z pillton: Well it is often hard to do since you can call (setf (fdefinition 'my-func) #'new-func) at any time. 2017-08-24T05:29:24Z White_Flame: and a compiler that really screams loudly if there's any possibility of putting the wrong type somewhere 2017-08-24T05:29:42Z elazul quit (Ping timeout: 240 seconds) 2017-08-24T05:30:04Z White_Flame: pillton: yeah, in such a dynamic system it really needs jit recompilation 2017-08-24T05:30:16Z White_Flame: to propagate new type information into different optimization decisions 2017-08-24T05:32:22Z pillton: I'd rather see a second compiler which sacrifices interactivity for improved analysis. 2017-08-24T05:33:05Z White_Flame: or even just a manual "bake" and "unbake" user command once you think the system is stable type-wise 2017-08-24T05:33:42Z grublet quit (Ping timeout: 240 seconds) 2017-08-24T05:36:56Z doesthiswork quit (Quit: Leaving.) 2017-08-24T05:38:33Z Zhivago: There are always systems like stalin. 2017-08-24T05:38:48Z Zhivago: Which do whole program static analysis. 2017-08-24T05:39:35Z pjb` joined #lisp 2017-08-24T05:39:42Z grublet joined #lisp 2017-08-24T05:42:12Z pjb quit (Ping timeout: 252 seconds) 2017-08-24T05:42:21Z pjb` quit (Remote host closed the connection) 2017-08-24T05:43:40Z edgar-rft: vtomole: the amount of nonsense about lisp can be significantly reduced by listening to sufficiently intelligent people :-) 2017-08-24T05:45:29Z flamebeard joined #lisp 2017-08-24T05:47:51Z Zhivago: Just be aware that there's plenty of nonsense on both sides. :) 2017-08-24T05:48:41Z Karl_Dscc joined #lisp 2017-08-24T05:49:47Z whoman quit (Quit: Leaving) 2017-08-24T05:51:01Z drcode quit (Read error: Connection reset by peer) 2017-08-24T05:55:48Z angavrilov joined #lisp 2017-08-24T05:59:48Z dmiles: i almost need to take the work "inference" off my irc highlighting expecially now that 95% of the time it is the opposite of interesting :) 2017-08-24T05:59:56Z pjb joined #lisp 2017-08-24T06:00:40Z damke_ joined #lisp 2017-08-24T06:01:26Z oleo quit (Quit: irc client terminated!) 2017-08-24T06:02:26Z damke__ joined #lisp 2017-08-24T06:02:43Z dmiles: work/word 2017-08-24T06:03:06Z damke quit (Ping timeout: 240 seconds) 2017-08-24T06:04:46Z damke_ quit (Ping timeout: 240 seconds) 2017-08-24T06:04:55Z jdz quit (Ping timeout: 240 seconds) 2017-08-24T06:05:06Z kajo3 quit (Ping timeout: 240 seconds) 2017-08-24T06:05:30Z dmiles: though at least in #lisp its only used 60% of the time in the boring way 2017-08-24T06:06:44Z pillton: Why is it not interesting? There is nothing stopping an implementation for performing inference/optimizations in code using operators in the CL package. 2017-08-24T06:09:43Z pillton: Perhaps a CDR could be written to allow for users to create their own immutable packages? 2017-08-24T06:09:48Z jdz joined #lisp 2017-08-24T06:10:11Z Shinmera: There's package locks for that. 2017-08-24T06:12:08Z easye quit (Remote host closed the connection) 2017-08-24T06:12:36Z beach: Which should really be called "environment lock". 2017-08-24T06:13:05Z minion quit (Read error: No route to host) 2017-08-24T06:13:07Z specbot quit (Read error: No route to host) 2017-08-24T06:13:35Z minion joined #lisp 2017-08-24T06:14:14Z specbot joined #lisp 2017-08-24T06:14:22Z Zhivago: Well, there are some things limiting it -- like which things can be dynamically changed. 2017-08-24T06:16:53Z vlatkoB joined #lisp 2017-08-24T06:23:10Z pillton: Generic functions is an interesting one. 2017-08-24T06:23:10Z Karl_Dscc quit (Remote host closed the connection) 2017-08-24T06:25:19Z easye joined #lisp 2017-08-24T06:25:29Z pillton: Is there a forum for these type of discussions at ELS? 2017-08-24T06:26:01Z pillton: Apart from a cafe/resturant/pub? 2017-08-24T06:26:02Z pjb: Why wait for ELS? Talk about it here or in news:comp.lang.lisp 2017-08-24T06:28:37Z terpri joined #lisp 2017-08-24T06:29:04Z pjb: At least some card pushing! 2017-08-24T06:30:27Z pillton: Instances of funcallable-standard-object is another one. 2017-08-24T06:33:55Z schweers joined #lisp 2017-08-24T06:34:59Z tonton quit (Ping timeout: 252 seconds) 2017-08-24T06:41:52Z tonton joined #lisp 2017-08-24T06:47:15Z clintm joined #lisp 2017-08-24T06:48:33Z clintm quit (Client Quit) 2017-08-24T06:50:09Z malice joined #lisp 2017-08-24T06:50:46Z clintm joined #lisp 2017-08-24T06:51:33Z malice: Hi! Is there some universal way of protecting against unknown errors? I'm looking for something to wrap the place which is most prone to errors. 2017-08-24T06:52:11Z shka_: malice: how does that "protects"? 2017-08-24T06:52:22Z malice: Right now I got some error which I could correct by myself(and rewrite the code so it does not happen again), but because I forgot about that, I only have an option to reevaluate slime request(which is basically "start from the beginnning" or killing the thread 2017-08-24T06:52:41Z malice: shka_: provides restarts for programer to fix the code on the run 2017-08-24T06:52:48Z mishoo_ joined #lisp 2017-08-24T06:52:52Z shka_: ah, right 2017-08-24T06:53:02Z malice: e.g. "change value" or "reevaluate function" 2017-08-24T06:53:06Z malice: (and not whole slime request) 2017-08-24T06:53:15Z shka_: well, just provide restarts, then 2017-08-24T06:53:21Z shka_: i don't see anything else 2017-08-24T06:53:25Z pjb: Notice that to be effective, you have to provide the restarts close to the source of the error. 2017-08-24T06:53:29Z clintm: (restart-case), etc. 2017-08-24T06:54:20Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-24T06:54:21Z malice: Yes, but are there some built-in restarts that provide me with that functionality? 2017-08-24T06:55:48Z malice: (with-basic-protection (execute-my-code)) :) 2017-08-24T06:57:06Z pillton: Assert provides a use-value restart. 2017-08-24T06:58:40Z pillton: Sorry.. check-type does. 2017-08-24T07:01:06Z damke joined #lisp 2017-08-24T07:01:37Z knobo joined #lisp 2017-08-24T07:02:33Z sellout-1 quit (Quit: Leaving.) 2017-08-24T07:02:40Z sellout- joined #lisp 2017-08-24T07:03:18Z sellout- quit (Client Quit) 2017-08-24T07:03:26Z damke__ quit (Ping timeout: 240 seconds) 2017-08-24T07:03:32Z sellout- joined #lisp 2017-08-24T07:04:06Z sellout- quit (Client Quit) 2017-08-24T07:04:16Z sellout- joined #lisp 2017-08-24T07:04:54Z sellout- quit (Client Quit) 2017-08-24T07:05:04Z sellout- joined #lisp 2017-08-24T07:05:42Z sellout- quit (Client Quit) 2017-08-24T07:05:43Z otera joined #lisp 2017-08-24T07:05:52Z sellout- joined #lisp 2017-08-24T07:06:30Z sellout- quit (Client Quit) 2017-08-24T07:08:24Z chens joined #lisp 2017-08-24T07:08:32Z otera: Is there a standard way or library of converting a nested data structure in lisp (could be any or all of plists, alists, hashtables or CLOS objects) into a nested dict in javascript? I'm using parenscript, but it is not a prerequisite. 2017-08-24T07:09:02Z jackdaniel: minion: memo for knusbaum: try (clim:accepting-values (t) (setf *config-name* (clim:accept 'string :prompt "Config nname:")) 2017-08-24T07:09:02Z minion: Remembered. I'll tell knusbaum when he/she/it next speaks. 2017-08-24T07:14:08Z jello_pudding joined #lisp 2017-08-24T07:15:21Z mishoo__ joined #lisp 2017-08-24T07:16:42Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-24T07:19:41Z malice quit (Remote host closed the connection) 2017-08-24T07:21:08Z milanj joined #lisp 2017-08-24T07:28:50Z shka_ quit (Ping timeout: 248 seconds) 2017-08-24T07:33:18Z phoe joined #lisp 2017-08-24T07:36:32Z Murii joined #lisp 2017-08-24T07:36:34Z zaoqi joined #lisp 2017-08-24T07:37:14Z zaoqi quit (Client Quit) 2017-08-24T07:38:04Z zaoqi joined #lisp 2017-08-24T07:43:55Z borei quit (Ping timeout: 276 seconds) 2017-08-24T07:51:52Z z3t0 quit (Ping timeout: 260 seconds) 2017-08-24T07:55:06Z jello_pudding quit (Ping timeout: 240 seconds) 2017-08-24T07:56:46Z tonton quit (Ping timeout: 240 seconds) 2017-08-24T07:58:43Z tonton joined #lisp 2017-08-24T07:58:56Z random-nick joined #lisp 2017-08-24T07:59:49Z otera quit (Ping timeout: 260 seconds) 2017-08-24T08:02:19Z Beetny joined #lisp 2017-08-24T08:04:26Z hhdave joined #lisp 2017-08-24T08:08:49Z damke_ joined #lisp 2017-08-24T08:11:06Z damke quit (Ping timeout: 240 seconds) 2017-08-24T08:12:05Z lvo joined #lisp 2017-08-24T08:12:32Z varjag joined #lisp 2017-08-24T08:13:10Z Murii: if I call car car it will return the second element in the list? 2017-08-24T08:13:35Z phoe: Murii: no 2017-08-24T08:13:36Z z0d: no 2017-08-24T08:13:41Z phoe: second is cadr. 2017-08-24T08:13:47Z phoe: Murii: do you know how lists are constructed? 2017-08-24T08:13:57Z Murii: yes 2017-08-24T08:13:59Z phoe: like, the basics of how cons cells work? 2017-08-24T08:14:12Z Murii: yep 2017-08-24T08:14:23Z phoe: If you have an N-element list, then in which cell is the second element located? 2017-08-24T08:14:28Z phoe: N>=2 2017-08-24T08:14:45Z phoe: s/cadr/cdar/ 2017-08-24T08:14:50Z Murii: car(cdr) 2017-08-24T08:15:03Z Murii: no 2017-08-24T08:15:03Z phoe: wait, no, cadr was right 2017-08-24T08:15:05Z Murii: cdr(car) 2017-08-24T08:15:26Z phoe: (car (cdr cons)) - you get the cdr first to get the second cell, then its car to extract the element 2017-08-24T08:16:13Z phoe: so (cadr cons) 2017-08-24T08:16:30Z phoe: I got confused about the order of #\a #\d for a moment :) 2017-08-24T08:16:54Z Murii: and if I do cdr(car) what's wrong there? 2017-08-24T08:17:06Z phoe: first, you extract the first element of the list 2017-08-24T08:17:22Z phoe: that element has to be a cons, because you attempt to extract its CDR. 2017-08-24T08:17:30Z whoman joined #lisp 2017-08-24T08:17:50Z phoe: if you have a list ((1 2) 3 4) then you can see what cadr and cdar gives you on it 2017-08-24T08:18:23Z storer42 joined #lisp 2017-08-24T08:19:26Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-24T08:19:50Z chens quit (Remote host closed the connection) 2017-08-24T08:20:34Z storer quit (Ping timeout: 248 seconds) 2017-08-24T08:22:56Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-24T08:25:46Z axion: Hmm TIL 2017-08-24T08:26:22Z axion: I can't find anything in the spec that says this should be possible, but I just stumbled on it accidentally: (format t "~b~%" #(121 33 43)) => #(1111001 100001 101011) 2017-08-24T08:27:07Z phoe: axion: http://www.lispworks.com/documentation/lw51/CLHS/Body/22_cbc.htm 2017-08-24T08:27:09Z axion: Interestingly you can't pad zeros though. just radix control works on a sequence 2017-08-24T08:27:17Z phoe: ~B binds *print-escape* to false, *print-radix* to false, *print-base* to 2, and *print-readably* to false. 2017-08-24T08:27:54Z axion: so how does that say it works on a sequence? 2017-08-24T08:27:59Z phoe: from 22.3.2.3 Tilde B: Binary: "This is just like ~D..." 2017-08-24T08:28:17Z phoe: from 22.3.2.2 Tilde D: Decimal: "If arg is not an integer, it is printed in ~A format..." 2017-08-24T08:28:31Z phoe: there 2017-08-24T08:28:46Z phoe: so you're printing an array with ~A and *print-base* bound to 2 2017-08-24T08:29:17Z axion: Ah 2017-08-24T08:30:06Z jackdaniel: Murii: if you want second element in a list, just use (second my-list) 2017-08-24T08:30:38Z Murii: jackdaniel, I'm making my own lisp so I'm limited at the moment 2017-08-24T08:30:40Z jackdaniel: if you want nth element in the list, use (nth n my-list) where elements are indexed from 0 2017-08-24T08:30:47Z jackdaniel: (nth 3 my-list) - fourth element 2017-08-24T08:31:09Z jackdaniel: if you are making your own lisp, then providing function nth is much simpler than adding all caaddaaaar alternatives 2017-08-24T08:31:24Z jackdaniel: and you may simply provide car and cdr as cons cell access functions 2017-08-24T08:31:33Z jackdaniel: second element on the list is (car (cdr my-list)) 2017-08-24T08:32:41Z pjb: axion: indeed, the argument "should be an integer", but all implementations (I have on this computer) behave this way. 2017-08-24T08:33:06Z phoe: pjb: take note that there's an explicit clause for "if arg is not an integer". 2017-08-24T08:33:23Z pjb: Oh right. So it's specified and conforming. 2017-08-24T08:33:25Z phoe: so "should" is not THE normative "should" that you would expect in such a place. 2017-08-24T08:33:38Z phoe: behaviour is defined if arg is not an integer. 2017-08-24T08:33:49Z pjb: yes. 2017-08-24T08:35:30Z legend joined #lisp 2017-08-24T08:47:05Z grumble quit (Quit: ) 2017-08-24T08:50:30Z zaoqi quit (Read error: Connection reset by peer) 2017-08-24T08:52:28Z zaphyr joined #lisp 2017-08-24T08:52:54Z some-user joined #lisp 2017-08-24T08:53:01Z some-user: hello 2017-08-24T08:53:08Z zagura quit (Changing host) 2017-08-24T08:53:08Z zagura joined #lisp 2017-08-24T08:53:54Z some-user: how to make run-program to respect my PATH? (run-program "ls" '()) doesn't work because it fails to look into $PATH 2017-08-24T08:54:12Z tonton quit (Ping timeout: 240 seconds) 2017-08-24T08:54:36Z grumble joined #lisp 2017-08-24T08:54:56Z pjb: some-user: if available, there may be a :shell t option to use the shell. 2017-08-24T08:55:24Z pjb: some-user: otherwise use execlp or execvp instead. 2017-08-24T08:56:03Z pjb: some-user: notice that when using the shell, it will in general load some profile (eg. .bashrc when using bash), and the PATH can be reset in this profile. 2017-08-24T08:56:12Z tonton joined #lisp 2017-08-24T08:56:38Z pjb: some-user: so if you changed the PATH or just want the one inherited, you may have no other choice than calling fork/execvp yourself. 2017-08-24T08:57:02Z milanj quit (Quit: This computer has gone to sleep) 2017-08-24T08:57:05Z pjb: (And this has nothing to do with lisp, it's plain basic posix programming). 2017-08-24T08:58:16Z phoe: some-user: (UIOP:CHDIR) 2017-08-24T08:58:19Z jackdaniel: some-user: I assume you use sbcl which requires absolute path by default 2017-08-24T08:58:27Z jackdaniel: some-user: try (sb-ext:run-program "ls" nil :search t) 2017-08-24T08:58:30Z phoe: if you want to do it for the whole image. 2017-08-24T08:58:59Z jackdaniel: some-user: function is described in detail in sbcl manual here: http://sbcl.org/manual/index.html#Running-external-programs 2017-08-24T08:59:37Z jackdaniel: if you want off-the-shelf solution, just call (uiop:run-program "ls" nil) 2017-08-24T08:59:44Z phoe: ^ 2017-08-24T08:59:44Z pjb: It's :force-shell t with uiop:run-program. 2017-08-24T08:59:48Z phoe: I advise using uiop. 2017-08-24T09:00:30Z jackdaniel: I don't, you never know when it'll break its api, it's not even documented (unless someone considers docstrings being documentation) 2017-08-24T09:00:46Z pjb: Yes, we do. 2017-08-24T09:01:41Z zaoqi joined #lisp 2017-08-24T09:02:51Z marvin2 joined #lisp 2017-08-24T09:06:31Z some-user: "(run-program "ls" '() :shell t" - unkown keyword :shell, "(uiop:run-program "ls" nil)" - odd number of key args 2017-08-24T09:06:39Z some-user: the only thing that worked is 2017-08-24T09:06:44Z some-user: (run-program "ls" '() :search t) 2017-08-24T09:06:47Z some-user: thanks! 2017-08-24T09:06:52Z jackdaniel: sure 2017-08-24T09:08:26Z antoszka: you must have some strange UIOP version 2017-08-24T09:08:36Z antoszka: :shell is totally a proper keyword here 2017-08-24T09:09:19Z some-user: (uiop:lisp-version-string) "1.3.19" 2017-08-24T09:09:25Z some-user: is that it? 2017-08-24T09:09:30Z phoe: (asdf:asdf-version) 2017-08-24T09:09:34Z jackdaniel: the problem is that uiop instead of making distinction between program and arguments does split by itself 2017-08-24T09:09:45Z some-user: 3.1.5 2017-08-24T09:09:46Z axion: sbcl only has aadf 3.1.5 2017-08-24T09:09:49Z jackdaniel: so correct invocation would be (uiop:run-program "ls" :shell t) 2017-08-24T09:10:07Z some-user: how to update asdf in sbcl? 2017-08-24T09:10:19Z phoe: (uiop:run-program "ls" :search t) 2017-08-24T09:10:21Z phoe: works 2017-08-24T09:10:35Z phoe: your invocation was incorrect. 2017-08-24T09:10:38Z jackdaniel: what does :search in uiop? 2017-08-24T09:11:06Z phoe: ugh, ignore that 2017-08-24T09:11:14Z phoe: (uiop:run-program "ls") 2017-08-24T09:12:51Z jackdaniel: some-user: regarding update, you may use a library created by Anton for that: https://github.com/avodonosov/ql-asdf-chooser 2017-08-24T09:13:14Z jackdaniel: note that new asdf versions may break some software you use 2017-08-24T09:13:21Z jackdaniel: or configuration 2017-08-24T09:13:51Z jackdaniel: (some incompatible changes were introduced, like enforcing using make-operation instead of make-instance to assure singleton objects) 2017-08-24T09:14:48Z phoe: (mapcar (curry #'asdf:operate 'asdf:liver-transplant-operation) living-patients) 2017-08-24T09:15:43Z some-user: jackdaniel: got it, thanks, will do as readme says most likeley and update asdf manually 2017-08-24T09:21:59Z some-user: https://common-lisp.net/project/plexippus-xpath/examples.html#id53256 where can i get (stp:make-builder) from? 2017-08-24T09:22:15Z some-user: or is there other xpath lib for cl used nowadays? 2017-08-24T09:22:58Z ninegrid joined #lisp 2017-08-24T09:23:36Z jamtho_ joined #lisp 2017-08-24T09:23:37Z damke joined #lisp 2017-08-24T09:24:32Z jackdaniel: try (ql:system-apropos "stp") 2017-08-24T09:24:43Z jackdaniel: masz tam cxml-stp i fxml/stp 2017-08-24T09:24:57Z jackdaniel: tfu, s/masz tam/you have there/ 2017-08-24T09:25:07Z jackdaniel: s/tfu/erm/ 2017-08-24T09:25:12Z antoszka: lol 2017-08-24T09:25:15Z jackdaniel: I've switched to Polish accidenntly, sorry ;) 2017-08-24T09:25:46Z damke_ quit (Ping timeout: 240 seconds) 2017-08-24T09:29:03Z Shinmera prefers CSS selectors over Xpath 2017-08-24T09:29:12Z schweers quit (Remote host closed the connection) 2017-08-24T09:29:32Z phoe: CSS ain't cover everything 2017-08-24T09:30:05Z Shinmera: Sure, it's less powerful than Xpath, but I find it's more than enough in the vast majority of cases. 2017-08-24T09:30:05Z legend hates html and css 2017-08-24T09:30:21Z phoe: (incf Shinmera) 2017-08-24T09:32:26Z whoman quit (Ping timeout: 240 seconds) 2017-08-24T09:32:42Z Shinmera: legend: I also hate XML. 2017-08-24T09:33:11Z whoman joined #lisp 2017-08-24T09:33:56Z clintm: I'd probably dislike it a lot more if it wasn't the only way to get a cross platform gui. 2017-08-24T09:34:21Z Shinmera: I dislike it because of exactly that. Being forced to use a particular tech is irksome. 2017-08-24T09:34:48Z test1600 quit (Quit: Leaving) 2017-08-24T09:34:54Z legend: Shinmera: XML is worse 2017-08-24T09:35:27Z legend hates gui 2017-08-24T09:35:58Z phoe: why? 2017-08-24T09:35:59Z Shinmera is writing his own GUI kit right now. 2017-08-24T09:36:07Z Shinmera: Fortunately I'm not yet at the point where I hate it completely. 2017-08-24T09:36:17Z Shinmera: But I'm sure I'll get there 2017-08-24T09:37:01Z legend: Or to better put it. I don't hate guis but I hate building UIs 2017-08-24T09:37:15Z clintm: Shinmera: are you continuing down the qt path or is this something new? 2017-08-24T09:37:20Z Shinmera: Most GUIs are trash so I don't mind saying I hate both making and using GUIs 2017-08-24T09:37:40Z phoe: 2017-08-24T09:37:44Z Shinmera: clintm: Well Qt is a toolkit that's already done, so this is new. It's for my game engine. Doesn't need to be super complex for that, fortunately enough. 2017-08-24T09:37:45Z phoe: this is beautiful though 2017-08-24T09:37:55Z ninegrid quit (Quit: leaving) 2017-08-24T09:38:06Z Shinmera: phoe: The best part of waking up is acid in your cup 2017-08-24T09:38:16Z ninegrid joined #lisp 2017-08-24T09:38:32Z phoe: Shinmera: if I needed to choose between acid and XML, I'd choose acid. 2017-08-24T09:38:45Z phoe: at least it has widespread database usages. 2017-08-24T09:38:56Z defaultxr quit (Ping timeout: 248 seconds) 2017-08-24T09:39:41Z clintm: Maybe I need to revisit qt and the associated tools for cl. The last time I tried, it always seemed to blow up in unexpected and frustrating ways. 2017-08-24T09:40:11Z phoe: I used qtools, it's surprisingly nice. 2017-08-24T09:40:14Z Shinmera: Qtools works fine in most cases I've heard of. 2017-08-24T09:40:21Z phoe: (for a C++ based toolkit) 2017-08-24T09:40:23Z Shinmera: There's always edge cases, but chances are you won't be hit. 2017-08-24T09:40:41Z Shinmera: Like some weird Win10 issues I could never reproduce. 2017-08-24T09:40:55Z loke: phoe: COMMON-LISPCAR 2017-08-24T09:40:56Z loke: of course 2017-08-24T09:42:01Z phoe: loke: oh geez 2017-08-24T09:42:04Z Shinmera: The attribute / child-element dichotomy strikes again! 2017-08-24T09:42:56Z phoe: Shinmera: why not both!? 2017-08-24T09:43:04Z phoe: it is an error in case of discrepancy 2017-08-24T09:45:44Z loke: Are any of you old enough to remember the XML hysteria of the early 2000's? 2017-08-24T09:46:11Z loke: There was an abomination coming out of that... Sit thee down, for 'tis a borrible story. 2017-08-24T09:46:15Z phoe: I was 8 years old in 2000 2017-08-24T09:46:26Z Shinmera: I was a bab 2017-08-24T09:46:42Z phoe: in 1992 I was merely a cons cell 2017-08-24T09:46:42Z Shinmera: Still am 2017-08-24T09:46:45Z loke: There was this language whose syntax was XML... 2017-08-24T09:46:46Z wheelsucker quit (Ping timeout: 276 seconds) 2017-08-24T09:47:02Z clintm: Oh god, I remember that. I was old even then :( 2017-08-24T09:47:13Z loke: Or, kinda sorta XML. Because apparently as long as it was like XML it was great. Or something 2017-08-24T09:47:16Z Shinmera: loke: There's multiple of those, as far as I know. 2017-08-24T09:47:30Z loke: I do recall they argued that their version of xml was convertible to real xml 2017-08-24T09:47:34Z clintm: this was a special kind of 'enterprise' language... 2017-08-24T09:47:50Z loke: anyway... the language was called "water" and there is very little information available on it these days. Buthere's a snippet: 2017-08-24T09:47:55Z loke: http://www.informit.com/articles/article.aspx?p=27644&seqNum=5 2017-08-24T09:48:26Z antoszka: omg, that's ugly 2017-08-24T09:48:30Z loke: The guy was very bullish on his creation, saying that it was going to be the best thing ever, blah blah 2017-08-24T09:48:49Z loke: It was kinda/sorts lisp, but with XML syntax embedded in HTML pages 2017-08-24T09:48:51Z Shinmera: attributes with sub-elements? whoa nelly 2017-08-24T09:49:21Z loke: Now, after a while, this thing seemed to just disappear, and there were no more updates (I had been casually following it for years, just to see how long it would last) 2017-08-24T09:49:47Z loke: Then I figured out why the project died, since I recently decided to search for the guy's name to figure out what he was up to now: 2017-08-24T09:49:50Z loke: And I found this: 2017-08-24T09:49:53Z loke: http://www.wickedlocal.com/article/20100329/NEWS/303299789 2017-08-24T09:50:22Z phoe facepalms 2017-08-24T09:50:27Z clintm: I vaguely remember the huge tech bookstore in portland having a whole wall dedicated to books on UML because it was the future. 2017-08-24T09:50:36Z phoe: correlation does not imply causation 2017-08-24T09:50:38Z phoe: but still 2017-08-24T09:50:42Z loke: So there you have it... Too much XML will do bad things to you. 2017-08-24T09:51:12Z Shinmera: clintm: UML is still being taught at universities to this day :/ 2017-08-24T09:51:13Z clintm: holy crap, ouch. 2017-08-24T09:51:31Z Shinmera 's "Software Engineering" class this semester required us to model stuff with UML 2017-08-24T09:51:34Z phoe: haha, I was taught UML as a part of my software engineering class 2017-08-24T09:51:38Z phoe highfives Shinmera 2017-08-24T09:51:46Z Shinmera: I don't want to high five about that shit 2017-08-24T09:52:00Z phoe: it's a highfive of compassion 2017-08-24T09:52:03Z clintm: good lord. I guess someone's using it somewhere. 2017-08-24T09:52:04Z otera joined #lisp 2017-08-24T09:52:13Z clintm: I'm not, that's for sure. 2017-08-24T09:52:20Z Shinmera: They also taught us "design patterns" as if those were a good idea 2017-08-24T09:52:27Z phoe: clintm: you know what's worse? there's this language called Java with all its spinoffs like SOAP... 2017-08-24T09:52:34Z jackdaniel: without macros design patterns make sense 2017-08-24T09:52:40Z phoe: design patterns are where I say, "I've run out of language" 2017-08-24T09:52:44Z Shinmera: In the very least the class also showed formal verification and static analysis, which is actually useful. 2017-08-24T09:52:51Z loke: After the dotcom company I had been working for for a few months had to fire everybody (this is back in 2002 or something) I interviewed joined a company implkementing a new system. They sead they were heavily into UML, so while waiting for my first day at work, I bought a UML book to learn what the hell it was all about... Well... 2017-08-24T09:52:54Z jackdaniel: not that I'm saying that languages without macros make sense, but for some syntax macros doesn't ,) 2017-08-24T09:52:59Z clintm: hah.... soap. reminded me of dealing with corba 2017-08-24T09:53:50Z Shinmera: Design patterns are when you don't understand your problem and start out thinking you can fit it into a premade solution, only to realise it doesn't fit, and have to warp it into a monster of crap as time goes on. 2017-08-24T09:54:04Z loke: Turns out that the cuonsolutancy company who had been doing the implementation of the system (I was hired to bring the project in-house) had designed an object model in UML (rational Rose, I think). The model was based on EJB 1.0. And they they hired some interns to implement stubs for aveenrthing in C++ 2017-08-24T09:55:13Z Shinmera: loke: Eh? Isn't EJB a java thing? Why C++? 2017-08-24T09:55:25Z clintm: I got a job at and no one on my team ever wrote code outside of work. I mean, it's their time to do with what they want, but it was still a bit shocking to me. 2017-08-24T09:55:35Z loke: Shinmera: Well... :-) 2017-08-24T09:55:52Z loke: Shinmera: Probably because the lead developer didn't know Java, but he had heard about the gratness of EJB 2017-08-24T09:56:09Z Shinmera: clintm: Most of the students I've met at uni don't really code in their free time either. 2017-08-24T09:56:13Z loke: Shinmera: So he built all these Home/Remote classes and stuff. 2017-08-24T09:56:13Z Shinmera shrugs 2017-08-24T09:56:24Z Shinmera: loke: Oh boy. 2017-08-24T09:56:26Z loke: He then build a framework around it, which didn't actually do anything that EJB does. 2017-08-24T09:57:41Z loke: So instead of doing new Foo() and call a method on it, you had to look up a session home, instantiating it, and call a creation method on that to generate some kind of object or whatever. I don't rememebr, it was just too insane. 2017-08-24T09:58:05Z loke: So you had kinda-sorta the calling sequence of Java EJB 1.0, with none of the benefits. 2017-08-24T09:58:18Z phoe: sounds like an average Java experience 2017-08-24T09:58:24Z some-user quit (Remote host closed the connection) 2017-08-24T09:58:56Z loke: phoe: He had no Java experience. If he had, he'd ahve known EJB 1.0 was an absolute clusterfuck. 2017-08-24T10:00:26Z loke: He also implemented the application in 4 distinct "layers". And even though the classes for all of them were available everywhere (it was all compiled into a single monolithic C++ application using VS anyway), he still created these "session objects" that did nothing but to call the next function in the stack., 2017-08-24T10:01:21Z loke: So he had thousants of stub classes implemented by these interns who had just been manually copy/pasting the class definitions. None of the classes had any implementations behind them of course, and these classes were just things they had designed in Rational Rose without any imput from the domain experts. 2017-08-24T10:01:34Z clintm: (trying to keep from writing a simple parser for Water... I best just close the tab) 2017-08-24T10:02:11Z loke: So you had objects representing hardware devices with a .PowerOn() method... How to send a command to an unpowered device? Hell if I know.... 2017-08-24T10:02:29Z loke: clintm: :-) 2017-08-24T10:02:43Z zaoqi quit (Remote host closed the connection) 2017-08-24T10:03:03Z loke: clintm: Don't do it! I dont' want to read a news article about you... 2017-08-24T10:05:28Z nightvox joined #lisp 2017-08-24T10:06:07Z nightvox left #lisp 2017-08-24T10:06:32Z angelo_ joined #lisp 2017-08-24T10:07:22Z angelo_ quit (Client Quit) 2017-08-24T10:10:01Z clintm: hah... still haven't closed the tab, but no need to worry about news articles. 2017-08-24T10:11:09Z clintm: ah, ok, qt4 et. all has finished installing, so I can distract myself with qtools, etc. closing the tab... 2017-08-24T10:11:16Z zaphyr quit (Quit: Leaving) 2017-08-24T10:11:30Z Shinmera: qtools install its own version of the qt4 libraries. No need to install anything manually. 2017-08-24T10:11:35Z Shinmera: *installs 2017-08-24T10:11:53Z clintm: haha, that's right. I forgot about that. 2017-08-24T10:13:04Z loke: clintm: If you want a bigger insight into the mess which is that language, have a look at this: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.199.9060&rep=rep1&type=pdf 2017-08-24T10:15:58Z phoe: loke: the file dows not download for me 2017-08-24T10:16:30Z loke: Try it again. It worked the secodn tiem for me (after a few minutes) 2017-08-24T10:19:40Z clintm: Huh. Should (ql:quickload '(qtools qtcore qtgui)) work out of the box? Maybe I've done something to my sbcl and ccl installs. Or, maybe I need to read the docs and this time pay attention. 2017-08-24T10:19:41Z random-nick quit (Remote host closed the connection) 2017-08-24T10:20:00Z Shinmera: clintm: it should 2017-08-24T10:20:06Z Shinmera: What's the error you're getting? 2017-08-24T10:22:01Z clintm: http://paste.lisp.org/display/354220 2017-08-24T10:22:26Z Shinmera: ... whaaaa 2017-08-24T10:22:52Z clintm: it's the same on both ccl and sbcl... so, I mean, there's a little consistency :) 2017-08-24T10:22:56Z Shinmera: backtrace? 2017-08-24T10:23:34Z random-nick joined #lisp 2017-08-24T10:23:55Z clintm: what's the shortcut in sbcl for a backtrace in the restarts prompt? I seem to have forgotten it. 2017-08-24T10:24:05Z Shinmera: Just: backtrace 2017-08-24T10:25:08Z clintm: Nothing helpful. I'll set debugging and try it again. 2017-08-24T10:25:14Z Shinmera: Just paste it to me 2017-08-24T10:25:28Z Shinmera: I need to know where the make-pathname is called. 2017-08-24T10:25:40Z drcode joined #lisp 2017-08-24T10:26:37Z clintm: there we go. one sec 2017-08-24T10:28:06Z clintm: annotated that paste... it's a thorough backtrace :) 2017-08-24T10:29:38Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-24T10:29:43Z Shinmera: What OS are you on? 2017-08-24T10:29:51Z clintm: freebsd 2017-08-24T10:30:00Z Shinmera: Ah, thought so. I don't currently support bsd. 2017-08-24T10:30:03Z clintm: 11.0-rel 2017-08-24T10:30:14Z clintm: That would explain it! 2017-08-24T10:30:45Z Shinmera: linux / osx / windows only for the moment. With all the different bsd flavours I wouldn't even know where to start. 2017-08-24T10:30:57Z Shinmera: Should put in a better error message for unsupported systems though. I thought I had done that. 2017-08-24T10:32:23Z Shinmera: Ah, I did, but it never reaches it because the pathname fails first. 2017-08-24T10:32:58Z clintm: Supporting bsds requires building all of the libraries, correct? Not exactly a trivial job. 2017-08-24T10:33:08Z Shinmera: As a first step, yes. 2017-08-24T10:33:09Z clintm: I mean, ahead of time for download. 2017-08-24T10:33:10Z clintm: yea 2017-08-24T10:33:31Z clintm: Maybe I'm not feeling quite as ambitious as I thought I was. hehe. 2017-08-24T10:33:34Z Shinmera: Qt4 aside, you can make it build things for you. 2017-08-24T10:34:30Z Shinmera: But, since I never put in any support for BSD, I first need to fix up some of the lower level stuff. 2017-08-24T10:39:28Z Shinmera: clintm: Is freebsd a hassle to set up? 2017-08-24T10:40:07Z loke: Shinmera: Not really. 2017-08-24T10:40:49Z Bike joined #lisp 2017-08-24T10:40:53Z clintm: Naw, but then again, I'm very used to it. The installer is right about the same complexity as the text based debian installer, if you're familiar with that. 2017-08-24T10:41:08Z clintm: err, curses based debian installer. 2017-08-24T10:41:16Z Shinmera: Ah, sure, that's fine then. 2017-08-24T10:41:37Z Shinmera: Is freebsd like the most used of the bsds or? 2017-08-24T10:43:15Z clintm: I'm not sure, I know openbsd has a large fan base. Afaik, most people use it for a server as opposed to desktop. 2017-08-24T10:43:27Z Shinmera wonders if he'll have to go through similar hoops as on Linux (patchelf, et al) 2017-08-24T10:44:21Z clintm: Oh, but there is a full (or afaik reasonably full) binary compat layer in freebsd that seems to be complete. 2017-08-24T10:44:30Z m00natic joined #lisp 2017-08-24T10:44:34Z clintm: based on some version of centos (/barf) 2017-08-24T10:47:15Z attila_lendvai joined #lisp 2017-08-24T10:47:43Z TMA: clintm: I have heard that the compat layer is somewhat neglected mainintenance-wise 2017-08-24T10:47:57Z clintm: Maybe it's time to do this month's "what versions of linux don't have systemd" scan a little early. 2017-08-24T10:49:09Z clintm: TMA: Yea, I've seen that as well. For example, you used to be able to use the linux version of skype4 but something bitrotted and the port hasn't been updated. or, at least it wasn't about a month ago. 2017-08-24T10:49:55Z ninegrid quit (Quit: leaving) 2017-08-24T10:50:17Z ninegrid joined #lisp 2017-08-24T10:52:11Z attila_lendvai quit (Quit: Leaving.) 2017-08-24T10:53:55Z Shinmera: Let's see if VMWare decides to work today 2017-08-24T10:54:05Z Shinmera: Oh, it does. Good. 2017-08-24T10:55:20Z MrBismuth quit (Ping timeout: 246 seconds) 2017-08-24T11:01:02Z damke_ joined #lisp 2017-08-24T11:02:17Z Younder joined #lisp 2017-08-24T11:02:25Z damke quit (Ping timeout: 240 seconds) 2017-08-24T11:04:02Z milanj joined #lisp 2017-08-24T11:10:27Z whoma1 joined #lisp 2017-08-24T11:11:44Z whoman quit (Ping timeout: 248 seconds) 2017-08-24T11:12:01Z Bike quit (Remote host closed the connection) 2017-08-24T11:18:48Z Bike joined #lisp 2017-08-24T11:24:14Z Arnot joined #lisp 2017-08-24T11:24:51Z Arnot quit (Client Quit) 2017-08-24T11:33:29Z paul0 joined #lisp 2017-08-24T11:35:27Z whoma1 is now known as whoman 2017-08-24T11:44:29Z phoe quit (Quit: leaving) 2017-08-24T11:44:57Z BitPuffin|osx joined #lisp 2017-08-24T12:10:37Z EvW1 joined #lisp 2017-08-24T12:12:30Z phoe joined #lisp 2017-08-24T12:12:40Z Shinmera: clintm: Weew, looks like Smoke is not configured for Freebsd either, so I'll need to make fixes to that to get it to compile. 2017-08-24T12:13:00Z Shinmera: I'm gonna tackle that another time. Setting up a running desktop took me long enough already. 2017-08-24T12:13:29Z clintm: okie dokie! 2017-08-24T12:13:40Z Bike quit (Ping timeout: 276 seconds) 2017-08-24T12:14:52Z phoe: good lords, someone attempts to use Qtools on FreeBSD 2017-08-24T12:14:55Z phoe: God sped you. 2017-08-24T12:15:12Z Murii quit (Ping timeout: 248 seconds) 2017-08-24T12:15:33Z Shinmera: clintm: What was it like to be sped along, on a cruise I assume, by god? 2017-08-24T12:16:22Z daemoz joined #lisp 2017-08-24T12:17:21Z clintm: hehe... so many vulgar but funny things come to mind. 2017-08-24T12:18:07Z clintm: It was the most glorious of deliverance. 2017-08-24T12:19:03Z clintm: Clearly it's time for me to make coffee. My eloquence is failing me. 2017-08-24T12:19:15Z damke joined #lisp 2017-08-24T12:19:45Z damke_ quit (Ping timeout: 240 seconds) 2017-08-24T12:20:54Z yrk quit (Read error: Connection reset by peer) 2017-08-24T12:21:22Z mson joined #lisp 2017-08-24T12:23:41Z elfmacs quit (Ping timeout: 252 seconds) 2017-08-24T12:23:57Z whoman: i dont think caffeine will help 2017-08-24T12:24:18Z shka: in sufficiant ammount, it can end the misery 2017-08-24T12:25:00Z Shinmera: Well, anything can kill you if you just take enough of it. 2017-08-24T12:25:03Z Shinmera: So that's trivially true. 2017-08-24T12:25:29Z shka: so yeah, caffeine can solve all problems 2017-08-24T12:25:46Z whoman: meditate instead if you wanna code better =P n some yoga and eating healthy never hurt anyone 2017-08-24T12:25:57Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-24T12:26:03Z Shinmera: I tried yoga once and died. 2017-08-24T12:26:47Z clintm: I think I'll try going to bed before I'm a complete zombie and see what that does. 2017-08-24T12:26:49Z whoman: dying is the best way to find out how to truly live right 2017-08-24T12:27:14Z otera quit (Quit: Page closed) 2017-08-24T12:28:55Z MrBismuth joined #lisp 2017-08-24T12:29:23Z shka: clintm: well, sleep is cousine of death 2017-08-24T12:31:44Z whoma1 joined #lisp 2017-08-24T12:31:46Z whoman quit (Read error: Connection reset by peer) 2017-08-24T12:33:21Z Beetny quit (Ping timeout: 248 seconds) 2017-08-24T12:33:25Z storer42 quit (Quit: Leaving) 2017-08-24T12:33:44Z clintm: semi-controlled time travelling. 2017-08-24T12:34:06Z clintm: one way though, sadly. 2017-08-24T12:34:48Z varjag: it's both ways actually 2017-08-24T12:35:07Z varjag: ever dream something awful, then wake up and think thankgod this didnt happen? 2017-08-24T12:35:13Z clintm: sleep and go back in time? is that like falling up? 2017-08-24T12:35:39Z clintm: ah, yea, I see your point. 2017-08-24T12:35:43Z shka: interesting story can be made on this idea 2017-08-24T12:35:46Z storer joined #lisp 2017-08-24T12:36:03Z shka: dreams sent trough time 2017-08-24T12:37:32Z varjag: going back and branching out from sleep is deeply instinctive 2017-08-24T12:37:37Z varjag: its' in the language 2017-08-24T12:37:45Z varjag: "i hope this nightmare is over" 2017-08-24T12:37:49Z varjag: "someone pinch me" 2017-08-24T12:38:13Z varjag: :p 2017-08-24T12:40:22Z yrk joined #lisp 2017-08-24T12:41:11Z pjb: Too much meditation is indistiguishable from death. 2017-08-24T12:41:43Z pjb: http://www.ibtimes.co.uk/mummified-buddhist-monk-still-alive-after-200-years-nearly-buddha-1486570 2017-08-24T12:42:49Z whoma1 quit (Ping timeout: 240 seconds) 2017-08-24T12:43:05Z pjb: Sleeping is to time travel what rapid kayaking is to navigation. 2017-08-24T12:45:10Z pjb: and there are more than one: http://www.welikeviral.com/mummified-buddhist-monk-found-alive-almost-90-years-death.html 2017-08-24T12:46:05Z damke quit (Ping timeout: 240 seconds) 2017-08-24T12:48:28Z al-damiri joined #lisp 2017-08-24T12:51:25Z storer quit (Ping timeout: 240 seconds) 2017-08-24T12:55:27Z zaoqi joined #lisp 2017-08-24T12:56:01Z epony quit (Remote host closed the connection) 2017-08-24T13:00:15Z doesthiswork joined #lisp 2017-08-24T13:00:55Z damke joined #lisp 2017-08-24T13:04:45Z Trystam joined #lisp 2017-08-24T13:06:58Z Tristam quit (Ping timeout: 248 seconds) 2017-08-24T13:09:04Z Trystam quit (Ping timeout: 248 seconds) 2017-08-24T13:09:53Z devon quit (Ping timeout: 252 seconds) 2017-08-24T13:11:13Z nowhere_man joined #lisp 2017-08-24T13:25:48Z quazimodo joined #lisp 2017-08-24T13:28:21Z flamebeard quit (Quit: Leaving) 2017-08-24T13:28:33Z Bike joined #lisp 2017-08-24T13:31:53Z flamebeard joined #lisp 2017-08-24T13:38:42Z doesthiswork quit (Quit: Leaving.) 2017-08-24T13:40:07Z quazimodo quit (Read error: Connection reset by peer) 2017-08-24T13:49:05Z cromachina quit (Read error: Connection reset by peer) 2017-08-24T13:49:11Z mingus quit (Read error: Connection reset by peer) 2017-08-24T13:50:54Z wxie joined #lisp 2017-08-24T13:53:05Z sellout- joined #lisp 2017-08-24T13:53:36Z mingus joined #lisp 2017-08-24T13:56:25Z FreeBirdLjj joined #lisp 2017-08-24T13:57:02Z paroneayea is now known as dustyweb 2017-08-24T13:59:56Z dec0n quit (Read error: Connection reset by peer) 2017-08-24T14:00:25Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-24T14:02:47Z wxie quit (Quit: Bye.) 2017-08-24T14:03:51Z quazimodo joined #lisp 2017-08-24T14:06:11Z phoe quit (Quit: leaving) 2017-08-24T14:09:52Z Xach: ieee-floats is busted and that affects a lot 2017-08-24T14:10:41Z dddddd joined #lisp 2017-08-24T14:12:06Z Bike: what's busted about it? 2017-08-24T14:12:06Z quazimodo quit (Read error: Connection reset by peer) 2017-08-24T14:12:30Z quazimodo joined #lisp 2017-08-24T14:12:47Z damke_ joined #lisp 2017-08-24T14:13:45Z damke quit (Ping timeout: 240 seconds) 2017-08-24T14:14:39Z JuanDaugherty joined #lisp 2017-08-24T14:15:37Z sellout-1 joined #lisp 2017-08-24T14:16:55Z Xach: changes to the system file means it signals an error in asdf 3.1.5 2017-08-24T14:17:03Z Xach: change committed 0.75 days ago 2017-08-24T14:17:40Z Bike: well, at least they'll probably be responsive. 2017-08-24T14:18:06Z Xach: Sort of. It's a pull request from a new contributor, and marijn offers maintainership to him. 2017-08-24T14:18:16Z Tristam joined #lisp 2017-08-24T14:18:24Z zaoqi quit (Quit: zaoqi) 2017-08-24T14:18:35Z Xach: hmm, i wonder why it only shows up as an indirect failure. 2017-08-24T14:18:36Z sellout- quit (Ping timeout: 260 seconds) 2017-08-24T14:18:47Z dyelar joined #lisp 2017-08-24T14:19:03Z Xach: http://report.quicklisp.org/2017-08-24/failure-report.html <-- ieee-floats isn't in the failure list, but its dependant systems do. 2017-08-24T14:19:11Z zaoqi joined #lisp 2017-08-24T14:20:31Z Denommus joined #lisp 2017-08-24T14:21:01Z Xach: oh, error is too early for my system checker. 2017-08-24T14:22:56Z zaoqi quit (Client Quit) 2017-08-24T14:23:42Z zaoqi joined #lisp 2017-08-24T14:25:52Z damke_ quit (Read error: Connection reset by peer) 2017-08-24T14:27:30Z damke joined #lisp 2017-08-24T14:29:54Z oleo joined #lisp 2017-08-24T14:29:58Z lvo quit (Remote host closed the connection) 2017-08-24T14:30:17Z Kyo91_ joined #lisp 2017-08-24T14:32:15Z damke quit (Read error: Connection reset by peer) 2017-08-24T14:33:37Z flamebeard quit (Quit: Leaving) 2017-08-24T14:35:55Z teggi joined #lisp 2017-08-24T14:37:39Z damke joined #lisp 2017-08-24T14:41:11Z knobo quit (Ping timeout: 252 seconds) 2017-08-24T14:41:17Z smazga joined #lisp 2017-08-24T14:46:49Z rippa joined #lisp 2017-08-24T14:50:35Z phoe joined #lisp 2017-08-24T14:51:39Z vtomole quit (Ping timeout: 260 seconds) 2017-08-24T14:51:51Z felipedvorak joined #lisp 2017-08-24T14:52:45Z damke quit (Ping timeout: 240 seconds) 2017-08-24T14:53:38Z damke joined #lisp 2017-08-24T14:57:18Z zaoqi quit (Read error: Connection reset by peer) 2017-08-24T14:57:54Z zaoqi joined #lisp 2017-08-24T14:59:46Z damke_ joined #lisp 2017-08-24T15:01:25Z damke quit (Ping timeout: 240 seconds) 2017-08-24T15:02:10Z peterhil joined #lisp 2017-08-24T15:04:19Z drcode quit (Ping timeout: 240 seconds) 2017-08-24T15:05:25Z BitPuffin|osx quit (Ping timeout: 240 seconds) 2017-08-24T15:06:35Z caffe quit (Quit: brb) 2017-08-24T15:13:39Z caffe joined #lisp 2017-08-24T15:15:09Z knusbaum joined #lisp 2017-08-24T15:15:58Z caffe: welcome back, knusbaum 2017-08-24T15:16:09Z knusbaum: Hello, caffe. 2017-08-24T15:16:10Z minion: knusbaum, memo from jackdaniel: try (clim:accepting-values (t) (setf *config-name* (clim:accept 'string :prompt "Config nname:")) 2017-08-24T15:16:31Z knusbaum: :) I did figure that out eventually. 2017-08-24T15:18:10Z jackdaniel: that said, as it was pointed out by nyef, this is a bug that accepting-values doesn't return last value(s) on `OK' 2017-08-24T15:18:18Z knusbaum: Strange, though, the docs say accepting-values should return the body 2017-08-24T15:18:19Z damke joined #lisp 2017-08-24T15:18:20Z jackdaniel: I've created the issue for that 2017-08-24T15:18:25Z knusbaum: Ahh, yeah. 2017-08-24T15:18:30Z jackdaniel: https://github.com/robert-strandh/McCLIM/issues/308 2017-08-24T15:18:31Z jackdaniel: here 2017-08-24T15:18:38Z knusbaum: Sweet. 2017-08-24T15:18:45Z jackdaniel: we'll fix it before Kupala Night release 2017-08-24T15:19:38Z antoszka: jackdaniel: As in, July 2018? 2017-08-24T15:19:56Z jackdaniel: hopefully earlier :) 2017-08-24T15:20:09Z antoszka: That's when the nearest Kupała Night is. 2017-08-24T15:20:23Z antoszka: July 6th, afair. 2017-08-24T15:21:05Z damke_ quit (Ping timeout: 240 seconds) 2017-08-24T15:21:12Z jackdaniel: I think we're not obliged with dates wrt naming releases 2017-08-24T15:21:22Z antoszka: Haha :) 2017-08-24T15:22:58Z FreeBirdLjj joined #lisp 2017-08-24T15:23:30Z antoszka: Is there a preferred git hosting service for QuickLisp projects? As in github vs gitlab? 2017-08-24T15:23:58Z dlowe: common-lisp.net will host common lisp projects and has a gitlab instance. 2017-08-24T15:25:09Z Lowl3v3l joined #lisp 2017-08-24T15:25:19Z phoe: antoszka: I think not. 2017-08-24T15:25:27Z phoe: quicklisp pulls repositories from literally everywhere. 2017-08-24T15:25:34Z dlowe: that's true too 2017-08-24T15:26:08Z phoe: http://paste.lisp.org/display/353474 2017-08-24T15:26:08Z epony joined #lisp 2017-08-24T15:26:20Z antoszka: What about cultural preference? :) 2017-08-24T15:26:41Z phoe: antoszka: HYPWTFYW 2017-08-24T15:27:16Z dlowe: Yeah, github is undeniably the king here. 2017-08-24T15:28:02Z antoszka: OK, I though I saw a big number of gitlab projects. 2017-08-24T15:28:13Z phoe: clnet's gitlab instance. 2017-08-24T15:30:07Z quazimodo quit (Ping timeout: 255 seconds) 2017-08-24T15:30:24Z dim: some days using CL feels lonely. Today I wanted to see about implementing MySQL replication protocol, already existing in Java, Python and Go. Reading the docs makes me turn away. 2017-08-24T15:30:42Z dim: I would have implemented support for it in pgloader if I didn't have to implement the protocol myself :/ 2017-08-24T15:30:44Z zaoqi quit (Quit: zaoqi) 2017-08-24T15:31:25Z phoe: dim: I know the feeling. 2017-08-24T15:32:43Z dim: that said I might be able to pay another CL hacker to implement the lib, then use it in pgloader 2017-08-24T15:32:48Z fsmunoz joined #lisp 2017-08-24T15:32:54Z dim: this time it's a paid contract after all 2017-08-24T15:35:19Z damke_ joined #lisp 2017-08-24T15:37:05Z epony: Culturally, what does HYPWTFYW mean? 2017-08-24T15:37:05Z damke quit (Ping timeout: 240 seconds) 2017-08-24T15:38:12Z antoszka: I've no idea. phoe ↑, what does that mean? 2017-08-24T15:38:18Z phoe: host your project wherever the fuck you want 2017-08-24T15:39:26Z antoszka: ACK 2017-08-24T15:39:27Z TDT joined #lisp 2017-08-24T15:40:47Z phoe: as long as Quicklisp can do a git clone from that location and you're sure no malicious agents can inject their code there, you're golden 2017-08-24T15:41:04Z phoe: not even a git clone, as long as it can pull a tarball even. 2017-08-24T15:41:56Z dim: Xach: ping? 2017-08-24T15:42:26Z damke joined #lisp 2017-08-24T15:44:05Z damke_ quit (Ping timeout: 240 seconds) 2017-08-24T15:45:09Z trocado joined #lisp 2017-08-24T15:45:24Z trocado: hi! what's wrong with this: 2017-08-24T15:45:28Z trocado: (loop :for wf :in '((1 #'1+) (2 #'1+)) :collect (funcall (cdr wf) (car wf))) 2017-08-24T15:46:10Z jackdaniel: first thing is that you use keywords, many people consider it a bad thing in loop macro 2017-08-24T15:46:10Z phoe: trocado: you are quoting your #'s. 2017-08-24T15:46:28Z dim: cdr returns a list 2017-08-24T15:46:46Z trocado: many things then :P 2017-08-24T15:47:11Z phoe: (loop for wf in (list (list 1 #'1+) (list 2 #'1+)) collect (funcall (second wf) (first wf))) 2017-08-24T15:47:15Z phoe: ;=> (2 3) 2017-08-24T15:47:24Z dim: use list rather than literal lists, as in phoe example 2017-08-24T15:47:30Z jackdaniel: (loop for wf in `((1 ,#'1+) (2 ,#'1+)) :collect (funcall (cadr wf) (car wf))) 2017-08-24T15:47:40Z jackdaniel: for shortened list 2017-08-24T15:47:46Z dim: use function instead of #' for clarity, too 2017-08-24T15:47:53Z trocado: ok! i'll try that, thank you guys! 2017-08-24T15:47:55Z phoe: dim: wat, why/ 2017-08-24T15:47:58Z dim: in (list (list 1 (function 1+))) 2017-08-24T15:48:05Z jackdaniel: or even '((1 1+) (2 1+)) , funcall accepts symbols 2017-08-24T15:48:05Z phoe: #'1+ is clear enough 2017-08-24T15:48:24Z dim: not when used in `, and it becomes ,#'1+ 2017-08-24T15:48:35Z dim: too many non alphanumeric chars for my taste 2017-08-24T15:49:00Z phoe: dim: he can digest that. some people even use Perl and don't complain. 2017-08-24T15:49:04Z phoe runs off for RL 2017-08-24T15:49:15Z dim: I agree it's then a matter of taste / policy 2017-08-24T15:49:39Z sellout-1 is now known as sellout 2017-08-24T15:51:37Z Karl_Dscc joined #lisp 2017-08-24T15:52:57Z phoe: dim: `(function ,@`#'(function ,@'#'function)) 2017-08-24T15:53:03Z phoe: ;=> (FUNCTION FUNCTION (FUNCTION FUNCTION FUNCTION)) 2017-08-24T15:53:48Z Bike: why this. 2017-08-24T15:53:49Z dim: meh 2017-08-24T15:57:37Z knusbaum quit (Quit: Leaving.) 2017-08-24T15:59:51Z knusbaum joined #lisp 2017-08-24T16:08:54Z kajo3 joined #lisp 2017-08-24T16:16:23Z EvW1 quit (Ping timeout: 255 seconds) 2017-08-24T16:33:21Z oleo: splice the form splice the function 2017-08-24T16:33:21Z hhdave quit (Ping timeout: 248 seconds) 2017-08-24T16:35:03Z oleo: the form maybe multiple values over which the function gets funcalled or it maybe a list to the function as in a lambda-list 2017-08-24T16:35:46Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-24T16:40:03Z fsmunoz quit (Ping timeout: 240 seconds) 2017-08-24T16:42:57Z borei joined #lisp 2017-08-24T16:43:06Z Karl_Dscc quit (Remote host closed the connection) 2017-08-24T16:44:16Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-24T16:44:56Z arbv quit (Read error: Connection reset by peer) 2017-08-24T16:45:10Z arbv joined #lisp 2017-08-24T16:48:41Z trocado quit (Ping timeout: 240 seconds) 2017-08-24T16:50:42Z beach quit (Ping timeout: 240 seconds) 2017-08-24T16:51:11Z mson quit (Quit: Connection closed for inactivity) 2017-08-24T16:56:47Z FreeBirdLjj joined #lisp 2017-08-24T17:00:39Z damke_ joined #lisp 2017-08-24T17:00:43Z m00natic quit (Remote host closed the connection) 2017-08-24T17:01:04Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-24T17:02:25Z damke quit (Ping timeout: 240 seconds) 2017-08-24T17:03:59Z beach joined #lisp 2017-08-24T17:05:05Z phinxy joined #lisp 2017-08-24T17:05:25Z shka_ joined #lisp 2017-08-24T17:09:02Z nitros_ joined #lisp 2017-08-24T17:09:32Z nitros_ left #lisp 2017-08-24T17:10:28Z random-nick: what is the best way to make a common lisp application extensible? 2017-08-24T17:11:07Z random-nick: to have configuration in defvars and load an user file at startup? 2017-08-24T17:11:36Z Xach: random-nick: there are really very many ways! you could expose the repl, or commands that load stuff. document functions and data. 2017-08-24T17:13:24Z Xach: random-nick: i've always been interested in writing an application that is extensible with cl-js. 2017-08-24T17:14:48Z mson joined #lisp 2017-08-24T17:17:44Z grumble quit (Quit: somebody) 2017-08-24T17:18:07Z grumble joined #lisp 2017-08-24T17:21:00Z joast quit (Quit: Leaving.) 2017-08-24T17:22:15Z joast joined #lisp 2017-08-24T17:26:30Z reverse_light joined #lisp 2017-08-24T17:27:23Z mishoo__ quit (Quit: (save-lisp-and-die)) 2017-08-24T17:27:48Z vlatkoB_ joined #lisp 2017-08-24T17:28:54Z beach: random-nick: An important technique that I use it to make sure I use standard classes and generic functions as much as is practical. That way, client code can extend it with sub-classes and specific methods. 2017-08-24T17:28:58Z mishoo joined #lisp 2017-08-24T17:29:07Z beach: random-nick: Doesn't cover all situations of course. 2017-08-24T17:30:17Z defaultxr joined #lisp 2017-08-24T17:31:41Z vlatkoB quit (Ping timeout: 252 seconds) 2017-08-24T17:33:54Z whoman joined #lisp 2017-08-24T17:34:17Z Shinmera: And you need to still take care to design things in a way that makes them actually extensible, even if you do use CLOS. 2017-08-24T17:35:06Z knusbaum: OO design can make things incredibly un-extensible if you do it badly. 2017-08-24T17:38:25Z damke_ quit (Ping timeout: 240 seconds) 2017-08-24T17:39:24Z whoman: yeah=( 2017-08-24T17:39:28Z TDT quit (Quit: TDT) 2017-08-24T17:39:49Z whoman: like a prefurnished house eh 2017-08-24T17:41:16Z damke_ joined #lisp 2017-08-24T17:41:19Z beach: I agree with Shinmera. You have to know something about software design. 2017-08-24T17:41:45Z beach: .. and with knusbaum, by extension. 2017-08-24T17:44:20Z whoman: i like the analogy of prefabricated or closed objects. if i am building my whole house, i dont have to build my own furniture. also if i am building my own furniture, i dont need to build my own house. or i can build it all, or i can get them all prebuilt and arrange them according to how they are built 2017-08-24T17:44:57Z dlowe: also, if you get the wrong couch, your house launches into space. 2017-08-24T17:46:17Z damke joined #lisp 2017-08-24T17:48:05Z damke_ quit (Ping timeout: 240 seconds) 2017-08-24T17:48:32Z jasom: random-nick: for basic configuration stuff, a file that gets loaded at startup is great. almost no work and really easy 2017-08-24T17:50:11Z knusbaum: Often I use a file that contains some lisp data that I read but do not eval. 2017-08-24T17:51:00Z Th30n joined #lisp 2017-08-24T17:51:25Z damke quit (Ping timeout: 240 seconds) 2017-08-24T17:53:26Z jasom: random-nick: http://paste.lisp.org/+7LC1 <-- here's my config from a small webapp I wrote 2017-08-24T17:57:34Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2017-08-24T17:58:02Z beach: jasom: The problem is what the application lets you put in that file. 2017-08-24T17:58:54Z beach: jasom: The application must be written to allow for extensions and the possible extensions must be documented somewhere. 2017-08-24T18:01:41Z knusbaum: Should be obvious, but it's worth saying that files that the application calls (load) on shouldn't be writable by users with fewer/different permissions than the user the application runs as. 2017-08-24T18:03:32Z jasom: beach: yes, making an application properly extensible is a wide problem, hence I said "for basic configuration stuff" 2017-08-24T18:04:41Z dlowe: the downside of LOADing configuration is that your configuration file becomes un-analyzable by simple software. 2017-08-24T18:05:18Z dlowe: in a multi-team environment, it can be really awful. 2017-08-24T18:05:25Z jasom: dlowe: only if you do complicated stuff in it; if it's a line of a dozen SETFs then it's fine to analyze. It's only harder to analyze if you use things that you couldn't do in a simple file. 2017-08-24T18:06:36Z dlowe: jasom: oh, sure. That's how it starts :) 2017-08-24T18:06:46Z knusbaum: In general, my experience says that if something *can* be abused, it *will* be abused, especially in large teams. 2017-08-24T18:07:36Z beach: knusbaum: So what do you suggest? 2017-08-24T18:08:20Z jasom: many configuration files start out simple and get an ad-hoc turing complete language by accident at some point. 2017-08-24T18:08:37Z beach: I think that's great. 2017-08-24T18:08:43Z beach: Like the .emacs file. 2017-08-24T18:08:45Z knusbaum: Just limit it to a file containing an assoc list or somesuch. If you're limiting your config to simple setf's anyway, what's the difference? 2017-08-24T18:09:27Z jasom: beach: well .emacs was always a turing-complete language (as was vimrc). I'm thinking things like every web server ever written. 2017-08-24T18:10:10Z knusbaum: To be clear, I'm saying for situations where you *don't* want it to get out of hand. loading configs is great for stuff like emacs, where I know it's only me that's going to be messing with the config. :) 2017-08-24T18:10:30Z dlowe: even emacs went to an assoc list for config 2017-08-24T18:10:41Z dlowe: e.g. its "custom" stuff 2017-08-24T18:11:07Z jasom: I've just seen too many things where it starts out as like a .ini file and then they start adding [if condition=foo]... [else]... and it's now crappy *and* can't be analyzed 2017-08-24T18:12:12Z drcode joined #lisp 2017-08-24T18:12:17Z teggi quit (Quit: Leaving...) 2017-08-24T18:12:39Z beach: My question is "why would you want it to be analyzed?" And that depends on the use case. 2017-08-24T18:12:54Z drcode quit (Remote host closed the connection) 2017-08-24T18:13:54Z beach: The idea of "protecting users against themselves" is controversial. 2017-08-24T18:14:07Z knusbaum: Well for machine-analysis that depends on the use-case, yes. For human-analysis, config files should ideally be as readable as possible (again, if they have to be shared among many people) 2017-08-24T18:16:37Z jasom: clearly we just need better static analysis tools for lisp; then it will be moot :P 2017-08-24T18:16:48Z knusbaum: :) 2017-08-24T18:17:14Z aindilis joined #lisp 2017-08-24T18:24:27Z CrazyEddy quit (Remote host closed the connection) 2017-08-24T18:24:33Z beach quit (Ping timeout: 240 seconds) 2017-08-24T18:25:15Z phinxy quit (Read error: Connection reset by peer) 2017-08-24T18:25:53Z dustyweb is now known as paroneayea 2017-08-24T18:27:32Z arbv quit (Ping timeout: 240 seconds) 2017-08-24T18:27:50Z arbv joined #lisp 2017-08-24T18:28:13Z Jesin quit (Quit: Leaving) 2017-08-24T18:29:13Z Denommus quit (Ping timeout: 255 seconds) 2017-08-24T18:31:03Z Bock quit (Ping timeout: 240 seconds) 2017-08-24T18:32:11Z Th30n quit (Ping timeout: 252 seconds) 2017-08-24T18:33:28Z paroneayea is now known as dustyweb 2017-08-24T18:35:19Z kajo3 quit (Ping timeout: 240 seconds) 2017-08-24T18:37:41Z kajo3 joined #lisp 2017-08-24T18:40:09Z TDT joined #lisp 2017-08-24T18:45:33Z nowhereman joined #lisp 2017-08-24T18:48:48Z nowhere_man quit (Ping timeout: 248 seconds) 2017-08-24T18:49:36Z nowhereman quit (Remote host closed the connection) 2017-08-24T18:50:00Z nowhereman joined #lisp 2017-08-24T18:54:03Z varjag joined #lisp 2017-08-24T18:56:58Z Jesin joined #lisp 2017-08-24T19:01:54Z dustyweb is now known as paroneayea 2017-08-24T19:04:05Z tessier quit (Ping timeout: 252 seconds) 2017-08-24T19:16:48Z axion: Xach: hello 2017-08-24T19:18:06Z askatasuna quit (Ping timeout: 264 seconds) 2017-08-24T19:19:01Z CrazyEddy joined #lisp 2017-08-24T19:20:40Z CrazyEddy quit (Remote host closed the connection) 2017-08-24T19:23:43Z CrazyEddy joined #lisp 2017-08-24T19:25:04Z aindilis quit (Read error: Connection reset by peer) 2017-08-24T19:31:12Z mson quit (Quit: Connection closed for inactivity) 2017-08-24T19:34:46Z sellout quit (Quit: Leaving.) 2017-08-24T19:46:17Z milanj quit (Quit: This computer has gone to sleep) 2017-08-24T19:56:08Z e quit (Quit: edk) 2017-08-24T19:56:57Z random-nick: what is the best resource for learning to use (mc)clim? 2017-08-24T19:57:10Z random-nick: the lispworks user guide? 2017-08-24T19:57:32Z vlatkoB_ quit (Remote host closed the connection) 2017-08-24T19:58:29Z Lowl3v3l quit (Remote host closed the connection) 2017-08-24T19:59:22Z mishoo_ joined #lisp 2017-08-24T20:00:33Z mishoo quit (Ping timeout: 240 seconds) 2017-08-24T20:03:31Z jackdaniel: random-nick: McCLIM manual has some introductory material (see mcclim website) 2017-08-24T20:03:44Z jackdaniel: random-nick: also #clim channel can provide you some good advice if you are stuck 2017-08-24T20:04:02Z jackdaniel: random-nick: moreover Examples/ directory has some very informative programs 2017-08-24T20:04:09Z paroneayea is now known as dustyweb 2017-08-24T20:04:49Z random-nick: jackdaniel: thank you 2017-08-24T20:06:37Z e joined #lisp 2017-08-24T20:07:34Z jackdaniel: (lispworks guide is also good learning material of course, same as allegro clim manual) 2017-08-24T20:08:06Z Karunamon joined #lisp 2017-08-24T20:08:26Z stylewarning: jackdaniel: make a new clim manual and call it the clamual 2017-08-24T20:08:42Z jackdaniel: heh 2017-08-24T20:08:48Z Karunamon left #lisp 2017-08-24T20:17:32Z nowhereman quit (Ping timeout: 240 seconds) 2017-08-24T20:37:39Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-24T20:40:32Z sellout- joined #lisp 2017-08-24T20:41:05Z angavrilov quit (Remote host closed the connection) 2017-08-24T20:42:24Z BitPuffin|osx joined #lisp 2017-08-24T20:46:44Z sellout- quit (Quit: Leaving.) 2017-08-24T20:47:20Z tessier joined #lisp 2017-08-24T20:47:20Z tessier quit (Changing host) 2017-08-24T20:47:20Z tessier joined #lisp 2017-08-24T20:47:42Z kajo3 quit (Quit: WeeChat 1.9) 2017-08-24T20:53:05Z pierpa joined #lisp 2017-08-24T21:06:15Z carmack joined #lisp 2017-08-24T21:06:18Z sz0 joined #lisp 2017-08-24T21:06:29Z carmack: Hi! No help in clnoobs 2017-08-24T21:06:36Z carmack: So anyway... 2017-08-24T21:06:50Z carmack: https://pstbin.ru/f/69349/ 2017-08-24T21:06:56Z carmack: Error while trying to load definition for system drakma from pathname ~/quicklisp/dists/quicklisp/software/drakma-v2.0.3/drakma.asd: SYSTEM::%EXPAND-FORM: (LOAD-SYSTEM TEST-OP) must 2017-08-24T21:06:59Z carmack: be lambda-expression 2017-08-24T21:07:40Z jasom: carmack: pstbin.ru isn't loading for me... 2017-08-24T21:07:48Z jasom: try http://paste.lisp.org/new ? 2017-08-24T21:10:15Z Bike: carmack: i remember seeing that before. i think it boiled down to making sure your asdf and quicklisp and such are recent versions 2017-08-24T21:10:27Z carmack: Oh, god... 2017-08-24T21:10:33Z Bike: ...right, system::%expand-form is clisp. you're on clisp? 2017-08-24T21:10:51Z carmack: Yeah 2017-08-24T21:11:12Z Bike: clisp has a pretty old asdf by default i think 2017-08-24T21:11:12Z carmack: Which best way include package? 2017-08-24T21:11:20Z carmack: So 2017-08-24T21:11:21Z Bike: you just need to install a newer asdf 2017-08-24T21:11:59Z carmack: https://pstbin.ru/f/34765/ 2017-08-24T21:12:20Z Bike: okay, that should be fine, but clisp probably isn't seeing it 2017-08-24T21:12:30Z Bike: could you do (asdf:asdf-version) in clisp? 2017-08-24T21:12:34Z jasom: I think just dropping it in local-packages is sufficient, or you could just load the asdf.lisp in your clisprc.lisp 2017-08-24T21:12:42Z carmack: asdf is not working 2017-08-24T21:12:46Z carmack: I don't understand 2017-08-24T21:12:48Z Bike: "not working"? 2017-08-24T21:12:52Z carmack: Yeah 2017-08-24T21:12:55Z carmack: Error 2017-08-24T21:12:56Z Bike: we need details. 2017-08-24T21:13:19Z carmack: I don't understand why is the problem just install package? 2017-08-24T21:13:46Z carmack: I just want write small programm 2017-08-24T21:13:47Z Bike: ASDF is the system that deals with what you call "packages". clisp is an old implementation, so its ASDF is too old to support modern "packages". 2017-08-24T21:14:06Z Bike: Okay how about: just don't use clisp. you have sbcl installed. try doing this on sbcl. 2017-08-24T21:14:10Z jasom: but ASDF is upgradable, so you can just get a new version and tell clisp to load it 2017-08-24T21:14:41Z carmack: sbcl --load file.lisp? 2017-08-24T21:14:54Z Bike: sure. 2017-08-24T21:15:18Z carmack: Hmmm, something happend 2017-08-24T21:15:26Z Bike: Details! 2017-08-24T21:15:29Z carmack: He start download some files 2017-08-24T21:15:37Z Bike: okay, so drakma is working. 2017-08-24T21:16:24Z carmack: https://pstbin.ru/f/82211/ 2017-08-24T21:17:05Z carmack: What now? :D 2017-08-24T21:17:23Z Bike: That's a network timeout. 2017-08-24T21:18:00Z Bike: Possibly the website you're trying to use drakma from is down. 2017-08-24T21:18:05Z Bike: lisp.org does seem to be down. 2017-08-24T21:19:49Z whoman: snap 2017-08-24T21:19:58Z carmack sigh 2017-08-24T21:22:38Z vtomole joined #lisp 2017-08-24T21:22:55Z Bike quit (Ping timeout: 248 seconds) 2017-08-24T21:24:29Z Karl_Dscc joined #lisp 2017-08-24T21:24:32Z carmack: I'm read book, and in book they say only good word about common lisp 2017-08-24T21:24:57Z carmack: While i start use quicklisp i say many bad words 2017-08-24T21:26:18Z whoman: instructions are for following 2017-08-24T21:27:00Z carmack: https://www.quicklisp.org/beta/#basic-commands 2017-08-24T21:29:24Z Kyo91_ quit (Ping timeout: 276 seconds) 2017-08-24T21:29:45Z whoman: it may not be a LISP issue but an ENGLISH one 2017-08-24T21:33:26Z carmack: This is really i have no good way install library? 2017-08-24T21:33:41Z carmack: Just install, required and this working? 2017-08-24T21:33:44Z carmack: In file 2017-08-24T21:35:29Z whoman: me no understand 2017-08-24T21:35:55Z whoman: quicklisp.lisp ... load ... (ql:install ... (ql:save... done 2017-08-24T21:36:06Z knusbaum: carmack: If a website is down, that's not really quicklisp's fault. Most of the time quicklisp works really well. 2017-08-24T21:36:18Z carmack: Ok 2017-08-24T21:36:23Z carmack: Have another way do it? 2017-08-24T21:36:38Z knusbaum: carmack: download manually and use asdf 2017-08-24T21:37:06Z carmack: But website is down 2017-08-24T21:37:12Z carmack: I don't inderstand... 2017-08-24T21:37:16Z knusbaum: Then no. 2017-08-24T21:37:26Z knusbaum: If you can't get the code, you can't get the code. 2017-08-24T21:37:26Z carmack: Common Lisp have a repository with libs? 2017-08-24T21:37:35Z mson joined #lisp 2017-08-24T21:37:40Z carmack: Or how this working? 2017-08-24T21:39:17Z phinxy joined #lisp 2017-08-24T21:39:30Z neoncontrails joined #lisp 2017-08-24T21:39:49Z knusbaum: Common Lisp doesn't. 2017-08-24T21:40:12Z knusbaum: Quicklisp is a library that keeps track of packages. 2017-08-24T21:40:35Z carmack: knusbaum: ok, if i want required drakma, what i must do? 2017-08-24T21:40:41Z carmack: knusbaum: website is down 2017-08-24T21:40:42Z White_Flame: (in the "software packages" sense, not in the Common Lisp namespace package sense) 2017-08-24T21:40:49Z nowhereman joined #lisp 2017-08-24T21:40:52Z knusbaum: Yes. 2017-08-24T21:40:57Z Shinmera: Quicklisp is not down 2017-08-24T21:41:01Z Shinmera: Drakma installed just fine. 2017-08-24T21:41:14Z Shinmera: The problem that you pasted is that the website you're trying to access /with/ drakma is down. 2017-08-24T21:41:53Z carmack: Oh 2017-08-24T21:41:55Z carmack: Really? 2017-08-24T21:42:00Z Shinmera: Yes, really. 2017-08-24T21:42:10Z Shinmera: Quicklisp does not use usocket. 2017-08-24T21:42:35Z Shinmera: And beside that, Quicklisp downloads from AWS. If that were down, a lot more would be affected too. 2017-08-24T21:42:58Z carmack: Ok, what best way execute .lisp file? 2017-08-24T21:43:26Z carmack: I do mean, if i want execute .sh i use sh 2017-08-24T21:43:40Z carmack: And get result 2017-08-24T21:43:49Z knusbaum: I usually work in a repl, and load the files from there. 2017-08-24T21:43:49Z whoman: sbcl --load 2017-08-24T21:43:52Z carmack: Yeah 2017-08-24T21:43:58Z carmack: But see this https://pstbin.ru/f/26710/ 2017-08-24T21:44:27Z carmack: garbage information 2017-08-24T21:45:12Z whoman: that is no information 2017-08-24T21:45:18Z whoman: successful load of drakma 2017-08-24T21:45:41Z dieggsy joined #lisp 2017-08-24T21:46:09Z carmack: https://pstbin.ru/f/35129/ 2017-08-24T21:47:22Z whoman: ok? 2017-08-24T21:47:25Z whoman: looks fine. 2017-08-24T21:48:16Z carmack: Not 2017-08-24T21:48:20Z carmack: Is not ok 2017-08-24T21:48:45Z carmack: Because http://weitz.de/drakma/ i must get something another 2017-08-24T21:48:49Z whoman: what do you see ? 2017-08-24T21:48:57Z whoman: there are no errors 2017-08-24T21:49:06Z whoman: in the pictures. 2017-08-24T21:49:07Z carmack: https://pstbin.ru/f/38151/ 2017-08-24T21:49:08Z carmack: This 2017-08-24T21:49:16Z carmack: No result 2017-08-24T21:49:20Z whoman: that is the result 2017-08-24T21:49:25Z whoman: isnt it ? 2017-08-24T21:49:32Z axion: umm 2017-08-24T21:49:53Z whoman: it seems to return him to REPL control with no error message. so yeah.. 2017-08-24T21:49:59Z carmack: I must get like this https://pstbin.ru/f/11279/ 2017-08-24T21:50:16Z carmack: And now i don't understand what must use 2017-08-24T21:50:35Z axion: 1) Use SLIME or Sly, 2) Actually run the example form 2017-08-24T21:50:52Z whoman: https://pastebin.com/HqHwKnqh ? 2017-08-24T21:51:10Z whoman: carmack, well type in that first line there. 2017-08-24T21:51:23Z axion: He's asking why he doesn't see the result of an http request when he only loaded a file 2017-08-24T21:51:54Z whoman: carmack, type in (drakma:http-request "http://google.com") ?? 2017-08-24T21:51:58Z carmack: Ok 2017-08-24T21:52:34Z carmack: With slime? 2017-08-24T21:52:41Z whoman: yeah, at the cl-user> repl 2017-08-24T21:52:54Z carmack: Guys I am totally confused, I don't know what to do 2017-08-24T21:52:58Z carmack: Ok 2017-08-24T21:52:58Z whoman: took me a minute to catch up with what was going on sry axi =/ 2017-08-24T21:53:18Z whoman: after you (ql:quickload :drakma) , at the repl, type the other thing. the repl is slime i guess 2017-08-24T21:53:29Z skeuomorf joined #lisp 2017-08-24T21:53:47Z axion: carmack: An http client library lets you connect to web sites. If you want to see the result of connecting to an http server, you have to, connect to an http server. 2017-08-24T21:53:56Z Jesin quit (Quit: Leaving) 2017-08-24T21:54:41Z big_num joined #lisp 2017-08-24T21:55:07Z carmack: Okay, I give up, this is nonsense... 2017-08-24T21:55:57Z carmack: whoman: (ql:quickload :drakma) --> ql is not exist 2017-08-24T21:56:13Z whoman: you are running faster than your legs will carry you, thats all. just slow down and takes things step by step, there is no rush 2017-08-24T21:56:35Z whoman: where did quicklisp go ? 2017-08-24T21:56:40Z carmack: I thought there would be so many problems with such simple things. Now I begin to understand why common lisp is not such a popular 2017-08-24T21:57:03Z carmack: I try do it almost 3 hours! 2017-08-24T21:57:11Z carmack: Step by step 2017-08-24T21:57:11Z whoman: you are trying to run before tying your shoes and pulling up your pants 2017-08-24T21:57:16Z random-nick: did you add quicklisp to your init file? 2017-08-24T21:57:31Z whoman: running in circles. just slow down, dont need to go around and around 2017-08-24T21:57:32Z carmack: I'm do all what https://www.quicklisp.org/beta/#basic-commands want 2017-08-24T21:57:50Z carmack: Folks! I'm using elisp and this is easy 2017-08-24T21:57:51Z whoman: i think he re-ran slime and quicklisp wasnt saved to reload 2017-08-24T21:58:06Z knusbaum: carmack: Look at the section above "Basic Commands" 2017-08-24T21:58:06Z carmack: And clojure too 2017-08-24T21:58:16Z carmack: I read book about common lisp 2017-08-24T21:58:21Z carmack: Because i want know it 2017-08-24T21:58:30Z carmack: But i don't understand simple thing 2017-08-24T21:58:31Z carmack: :( 2017-08-24T21:58:47Z axion: Please follow the installation instructions. During quickinstall, you are given the chance to add it to your implementation's init file. 2017-08-24T21:58:55Z carmack: Ok, after smoke 2017-08-24T21:59:15Z axion: Take a deep breath, and read things carefully before getting upset :) 2017-08-24T21:59:35Z axion: There is no rush for the power this will bring to you 2017-08-24T21:59:51Z nowhereman quit (Remote host closed the connection) 2017-08-24T22:00:52Z nowhereman joined #lisp 2017-08-24T22:01:39Z whoman: getting behind the wheel of a ferrari , this guy =) 2017-08-24T22:01:51Z whoman: ok ok F1 2017-08-24T22:02:02Z carmack: I'm use GNU EMACS whole 4 years and do all what i want 2017-08-24T22:02:06Z carmack: With elisp 2017-08-24T22:02:21Z carmack: Ok, i'm try again 2017-08-24T22:02:27Z axion: Common Lisp is very different than Elisp 2017-08-24T22:02:42Z carmack: And use Clojure almost year 2017-08-24T22:03:18Z Karl_Dscc quit (Remote host closed the connection) 2017-08-24T22:04:57Z whoman: M-x slime -> (load "quicklisp.lisp") -> follow instruction both times, there is two commands it will ask you -> (ql:quickload :drakma) -> .. 2017-08-24T22:06:08Z mishoo_ quit (Ping timeout: 252 seconds) 2017-08-24T22:07:49Z skeuomorf quit (Ping timeout: 240 seconds) 2017-08-24T22:08:35Z skeuomorf joined #lisp 2017-08-24T22:08:47Z attila_lendvai joined #lisp 2017-08-24T22:11:35Z Bike joined #lisp 2017-08-24T22:12:55Z milanj joined #lisp 2017-08-24T22:14:42Z carmack: Ok guys! Thanks for help, bye 2017-08-24T22:14:44Z carmack left #lisp 2017-08-24T22:16:45Z dieggsy quit (Ping timeout: 240 seconds) 2017-08-24T22:23:55Z random-nick quit (Read error: Connection reset by peer) 2017-08-24T22:25:28Z vtomole quit (Ping timeout: 260 seconds) 2017-08-24T22:27:38Z phinxy quit (Quit: Leaving) 2017-08-24T22:30:07Z dim: is it ok to setf a function parameter? 2017-08-24T22:30:43Z Bike: yes, but don't think it will have any effect outside of the body of the function. 2017-08-24T22:31:59Z dim: yeah, that's my intend here 2017-08-24T22:32:51Z dim: doing a small refactoring that reaches out far more than anticipated 2017-08-24T22:34:00Z varjag quit (Ping timeout: 255 seconds) 2017-08-24T22:35:02Z skeuomorf left #lisp 2017-08-24T22:35:55Z dim: 18 files changed, 121 insertions(+), 59 deletions(-) 2017-08-24T22:36:34Z dim: for allowing a better way to specify the target table in the user's DSL, because there's documentation and regression test support and then the “lisp API” 2017-08-24T22:39:52Z pjb: dim: I perfer to rebind: (defun bar (foo) (let ((foo (normalize foo))) …)) instead of (defun bar (foo) (setf foo (normalize foo)) …) 2017-08-24T22:41:24Z nowhereman quit (Remote host closed the connection) 2017-08-24T22:41:45Z pillton: There is also this from the SBCL manual: "Python is very aggressive and clever about inferring the types of values bound with let, let*, inline function call, and so forth. However, it's much more passive and dumb about inferring the types of values assigned with setq, setf, and friends." 2017-08-24T22:41:58Z smazga quit (Quit: leaving) 2017-08-24T22:42:24Z dim: pjb: I prefer too, first time I do that 2017-08-24T22:42:35Z dim: but the diff is going to be unbearable for a small change 2017-08-24T22:42:42Z dim: the function's body is quite long 2017-08-24T22:43:45Z dim: maybe I can refactor this function's body while at it 2017-08-24T22:46:17Z nowhereman joined #lisp 2017-08-24T22:46:50Z pjb: You can also break the indentation if your objective is to have short bearable commits. 2017-08-24T22:46:58Z pierpa quit (Quit: Page closed) 2017-08-24T22:47:38Z pjb: Good night! 2017-08-24T22:50:25Z dim: it's not about short, it's about being able to read the changes... 2017-08-24T22:50:52Z dim: when 99% of the function's body has changed because of indentation, I find it hard to read the diff/project's history 2017-08-24T22:53:26Z pjb quit (Ping timeout: 252 seconds) 2017-08-24T23:04:01Z wxie joined #lisp 2017-08-24T23:05:00Z galdor quit (Read error: Connection reset by peer) 2017-08-24T23:05:18Z galdor joined #lisp 2017-08-24T23:07:57Z knusbaum quit (Quit: Leaving.) 2017-08-24T23:10:35Z Xal quit (Ping timeout: 246 seconds) 2017-08-24T23:12:23Z Xal joined #lisp 2017-08-24T23:14:53Z Mon_Ouie quit (Ping timeout: 252 seconds) 2017-08-24T23:18:41Z zulu_inuoe: Is there any reason why a (successful) gethash followed by a remhash, with the exact same arguments, would fail? 2017-08-24T23:19:47Z White_Flame: exact same as in EQ? 2017-08-24T23:19:55Z zulu_inuoe: Yes. 2017-08-24T23:20:41Z zulu_inuoe: I'm doing (let ((val (gethash key map))) ... (remhash key map)) 2017-08-24T23:20:50Z zulu_inuoe: eq key & map 2017-08-24T23:20:59Z White_Flame: multithreading? weak references? custom hash test? 2017-08-24T23:21:10Z zooey quit (Ping timeout: 268 seconds) 2017-08-24T23:21:29Z White_Flame: unknown side effect in the "..."? 2017-08-24T23:21:49Z zulu_inuoe: hash test is equalp, single thread, no weakness 2017-08-24T23:22:03Z White_Flame: which lisp implementation? 2017-08-24T23:22:09Z zulu_inuoe: No. It's looking at completely unrelated things. SBCL 2017-08-24T23:22:37Z White_Flame: if you built or linked to source, you could always step through & inspect what's going on, if you think it's a bug in the hashtable itself 2017-08-24T23:22:38Z zulu_inuoe: I'm going to run some more tests to make 10000% it's not me 2017-08-24T23:22:40Z dim: 26 files changed, 570 insertions(+), 343 deletions(-) --- came to be quite a refacoring 2017-08-24T23:22:47Z dim: I think I got side tracked again 2017-08-24T23:23:13Z zulu_inuoe: I just wanted to make sure that I wasn't overlooking some weird behavior in remhash/gethash when it came to say, an equalp test 2017-08-24T23:23:38Z jamtho_ joined #lisp 2017-08-24T23:23:58Z zooey joined #lisp 2017-08-24T23:26:09Z BitPuffin|osx quit (Remote host closed the connection) 2017-08-24T23:26:13Z dim: :allow-other-keys t 2017-08-24T23:26:21Z dim: I think that's my first usage of that facility ;-) 2017-08-24T23:27:50Z zagura quit (Remote host closed the connection) 2017-08-24T23:27:51Z Mon_Ouie joined #lisp 2017-08-24T23:27:56Z sellout- joined #lisp 2017-08-24T23:30:11Z varjag joined #lisp 2017-08-24T23:32:49Z yrk quit (Read error: Connection reset by peer) 2017-08-24T23:33:03Z shka_ quit (Ping timeout: 240 seconds) 2017-08-24T23:35:06Z varjag quit (Ping timeout: 260 seconds) 2017-08-24T23:39:26Z zulu_inuoe: White_Flame: So, I'm noticing one of those great errors where a printf (format) is changing the outcome of my hash success. One of the components of my key is a pathname. I noticed if I do a format ~A on said pathname then my gethash/remhash will fail. 2017-08-24T23:40:02Z zulu_inuoe: AFAYK, is there a side effect of pretty-printing a pathname such that it won't be equalp ? 2017-08-24T23:40:03Z sellout- quit (Quit: Leaving.) 2017-08-24T23:41:01Z White_Flame: I don't know. Maybe it fills in stuff on the structure? print out both before & after that print 2017-08-24T23:41:14Z White_Flame: pathnames are traversed for composite equality at the EQUAL level 2017-08-24T23:42:26Z Kaisyu joined #lisp 2017-08-24T23:44:54Z fsmunoz joined #lisp 2017-08-24T23:45:08Z zulu_inuoe: It must be. Even inspecting it will change it so the gethash fails I'm not sure how to even see 'how' it's changing. I'm going to look through CLHS to see if this is expected 2017-08-24T23:47:30Z pillton: What implementation? 2017-08-24T23:47:35Z zulu_inuoe: SBCL 2017-08-24T23:48:16Z pillton: What does "One of the components of my key" mean? 2017-08-24T23:48:47Z zulu_inuoe: the key is (cons pathname integer) 2017-08-24T23:50:00Z TDT quit (Quit: TDT) 2017-08-24T23:50:24Z pjb joined #lisp 2017-08-24T23:50:38Z pillton: I'm not sure I understand what you are saying. It seems to work fine: http://paste.lisp.org/display/354259 2017-08-24T23:50:53Z axion: I cannot reproduce either. 2017-08-24T23:51:03Z vtomole joined #lisp 2017-08-24T23:51:05Z axion: Do you think you can isolate a small test that reproduces this issue? 2017-08-24T23:51:23Z White_Flame: zulu_inuoe: can you reproduce the issue if your hashtable only has that single entry? 2017-08-24T23:51:42Z TDT joined #lisp 2017-08-24T23:51:57Z zulu_inuoe: One second 2017-08-25T00:01:11Z mson quit (Quit: Connection closed for inactivity) 2017-08-25T00:03:34Z zulu_inuoe: I'm sorry. I'm trying to come up with a test case that works. Because my gut feeling is that it has to do with how the pathname gets constructed 2017-08-25T00:03:54Z Jesin joined #lisp 2017-08-25T00:07:15Z zulu_inuoe: http://paste.lisp.org/display/354260 2017-08-25T00:08:13Z zulu_inuoe: That fails for me 2017-08-25T00:08:41Z zulu_inuoe: But only some times 2017-08-25T00:08:55Z zulu_inuoe: Meaning like, the first time since I changed the literal pathname 2017-08-25T00:09:04Z Kyo91_ joined #lisp 2017-08-25T00:09:49Z zulu_inuoe: Don't need the cons, either. 2017-08-25T00:11:28Z zulu_inuoe: I annotated the paste to be the simpler test case 2017-08-25T00:13:01Z antonv joined #lisp 2017-08-25T00:13:33Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-25T00:14:07Z bjorkintosh joined #lisp 2017-08-25T00:14:49Z pjb quit (Ping timeout: 252 seconds) 2017-08-25T00:15:55Z zulu_inuoe: Aand one last one. Don't need the call to pathname, either. 2017-08-25T00:19:49Z jasom: zulu_inuoe: works for me 2017-08-25T00:20:45Z Jesin quit (Quit: Leaving) 2017-08-25T00:20:56Z jasom: zulu_inuoe: I added an assertion and put it in a loop, it ran 10000 times in a row with no issues. 2017-08-25T00:22:28Z zulu_inuoe: What OS are you running on? 2017-08-25T00:22:37Z zulu_inuoe: also what version of SBCL? 2017-08-25T00:23:01Z zulu_inuoe: jasom: Also, it fails the first time only. None after that. 2017-08-25T00:23:26Z jasom: zulu_inuoe: linux 2017-08-25T00:23:39Z jasom: 1.3.17 2017-08-25T00:24:01Z zulu_inuoe: Windows x64 1.3.19 2017-08-25T00:24:25Z jasom: I can test that reasonably quickly... 2017-08-25T00:24:54Z jasom: where did you get the 1.3.19? 1.3.18 is the newest in the platform-table 2017-08-25T00:25:19Z zulu_inuoe: Oh. Sorry no yes it is 18 2017-08-25T00:25:25Z zulu_inuoe: I don't know why I thought I had 19.. 2017-08-25T00:26:03Z zulu_inuoe: I'm booting up a virtual machine just in case, too 2017-08-25T00:26:22Z jasom: zulu_inuoe: and the very last annotation falis occasionally? 2017-08-25T00:26:48Z FalconPilot quit (Read error: Connection reset by peer) 2017-08-25T00:26:58Z zulu_inuoe: They all fail on the first go-around. My guess is whatever the format is doing, it's messing with the cached pathname or something 2017-08-25T00:27:04Z pillton: Oh. remhash returns NIL. It might be a bug in remhash. 2017-08-25T00:27:22Z zulu_inuoe: If I change the pathname to something else it'll fail again 2017-08-25T00:27:28Z zulu_inuoe: or if I restart the image 2017-08-25T00:27:45Z zulu_inuoe: not just remhash. If I did another gethash it would fail, too 2017-08-25T00:28:08Z zulu_inuoe: scratch that 2017-08-25T00:28:23Z pillton: Yeah weird. 2017-08-25T00:28:32Z pillton: I can reproduce that. 2017-08-25T00:28:34Z zulu_inuoe: Yeah the gethash works but the remhash doesn't 2017-08-25T00:28:38Z jasom: reproduces here too 2017-08-25T00:28:44Z zulu_inuoe: good. 2017-08-25T00:28:50Z zulu_inuoe: Here as in your linux build? 2017-08-25T00:29:06Z jasom: zulu_inuoe: no sbcl 1.3.18 on win32 x64 2017-08-25T00:29:30Z zulu_inuoe: Ah okay. Still, at least I'm not crazy 2017-08-25T00:29:35Z pillton: OSX 10.10.5 2017-08-25T00:29:51Z attila_lendvai quit (Quit: Leaving.) 2017-08-25T00:29:54Z zulu_inuoe: ooo 2017-08-25T00:30:01Z pillton: Yeah. File that at https://bugs.launchpad.net/sbcl 2017-08-25T00:31:17Z pillton: Nice one. 2017-08-25T00:31:57Z jasom: gethash works every time for me, but remhash does not 2017-08-25T00:32:03Z FalconPilot joined #lisp 2017-08-25T00:32:30Z jasom: and hash-table-count returns 1 after the remhash 2017-08-25T00:32:40Z jasom: zulu_inuoe: if you don't have a launchpad account, I can file it 2017-08-25T00:33:18Z pillton: Eric Marsden hasn't even found that one. 2017-08-25T00:33:21Z zulu_inuoe: I do, I just haven't used it in a long time. Sorry haha 2017-08-25T00:33:29Z jasom: I'll file it... 2017-08-25T00:33:37Z zulu_inuoe: Thank you sir! 2017-08-25T00:34:00Z TDT quit (Quit: TDT) 2017-08-25T00:34:08Z zulu_inuoe: ... and/or madam! 2017-08-25T00:34:15Z jdaugherty joined #lisp 2017-08-25T00:35:58Z jasom: https://bugs.launchpad.net/sbcl/+bug/1712944 2017-08-25T00:36:12Z nowhereman quit (Remote host closed the connection) 2017-08-25T00:37:31Z nowhereman joined #lisp 2017-08-25T00:37:36Z jdaugherty quit (Client Quit) 2017-08-25T00:37:53Z vtomole quit (Ping timeout: 260 seconds) 2017-08-25T00:39:22Z jasom: OT: is there a gender-neutral formal address? I'm familiar with he/she/they and Mr/Ms/Mx, what about sir/madam/??? 2017-08-25T00:40:23Z zulu_inuoe: I hope there is. I like to get fancy when I address people some times but I don't want to sacrifice gender neutrality to do it 2017-08-25T00:40:47Z Bike: i live in academia and call everyone "doctor" 2017-08-25T00:42:58Z zulu_inuoe: Not all of us can be that lucky. 2017-08-25T00:42:58Z zulu_inuoe: Anyway, using pathnames was temporary until I migrated to URI's, so I suppose now's a good a time as ever to work on that since this bug is breaking me 2017-08-25T00:45:34Z axion: I can reproduce on Linux SBCL 1.3.20 2017-08-25T00:47:15Z zulu_inuoe: oh snap!! 2017-08-25T00:47:33Z quazimodo joined #lisp 2017-08-25T00:49:40Z axion: That is a very scary bug heh 2017-08-25T00:50:08Z zulu_inuoe: Yes. Yes it is. But it looks like it's recent since jasom was not able to replicate on 1.3.17 2017-08-25T00:50:40Z axion: Should make it somewhat bisectable at least 2017-08-25T00:51:56Z zulu_inuoe: how much do you want to bet it's https://github.com/sbcl/sbcl/commit/58602640ed7040d9f75c7fe28f058a0b2755c6c0 2017-08-25T00:52:09Z zulu_inuoe: happened right before 1.3.18 2017-08-25T00:52:48Z Jesin joined #lisp 2017-08-25T00:53:25Z fsmunoz quit (Ping timeout: 240 seconds) 2017-08-25T01:02:45Z trinitr0n is now known as COURYHOUSE 2017-08-25T01:07:59Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-25T01:10:56Z nowhereman quit (Remote host closed the connection) 2017-08-25T01:11:06Z whoman quit (Remote host closed the connection) 2017-08-25T01:11:23Z nowhereman joined #lisp 2017-08-25T01:11:27Z whoman joined #lisp 2017-08-25T01:13:49Z d4ryus4 joined #lisp 2017-08-25T01:14:47Z neoncontrails quit (Read error: Connection reset by peer) 2017-08-25T01:16:58Z d4ryus3 quit (Ping timeout: 252 seconds) 2017-08-25T01:17:23Z nowhereman quit (Remote host closed the connection) 2017-08-25T01:17:48Z nowhereman joined #lisp 2017-08-25T01:21:53Z Fare joined #lisp 2017-08-25T01:28:07Z jello_pudding joined #lisp 2017-08-25T01:34:40Z phinxy joined #lisp 2017-08-25T01:37:54Z phinxy left #lisp 2017-08-25T01:39:29Z COURYHOUSE is now known as trinitr0n 2017-08-25T01:41:39Z marvin2 quit 2017-08-25T01:44:04Z nowhereman quit (Ping timeout: 240 seconds) 2017-08-25T01:44:26Z jello_pudding quit (Quit: Leaving) 2017-08-25T01:47:46Z elfmacs joined #lisp 2017-08-25T01:49:11Z dddddd quit (Remote host closed the connection) 2017-08-25T01:58:37Z rngoodn joined #lisp 2017-08-25T01:59:23Z vtomole joined #lisp 2017-08-25T02:01:18Z R0B_ROD: Hi just started 2017-08-25T02:01:58Z R0B_ROD: hello 2017-08-25T02:06:32Z vtomole: hey 2017-08-25T02:07:54Z R0B_ROD: Reading SICP 2017-08-25T02:08:09Z milanj quit (Quit: This computer has gone to sleep) 2017-08-25T02:08:17Z R0B_ROD: Trying to build StumpWM in SBCL 2017-08-25T02:08:38Z R0B_ROD: Interested in Type I Engineering 2017-08-25T02:09:43Z big_num quit (Quit: WeeChat 1.7) 2017-08-25T02:09:58Z vtomole: What's Type 1 Engineering? 2017-08-25T02:10:41Z CharlieBrown joined #lisp 2017-08-25T02:12:59Z CharlieBrown: !hi 2017-08-25T02:13:13Z CharlieBrown: ,how are you? 2017-08-25T02:15:16Z sjl_ joined #lisp 2017-08-25T02:17:21Z sjl quit (Ping timeout: 248 seconds) 2017-08-25T02:18:32Z dieggsy joined #lisp 2017-08-25T02:20:11Z FalconPilot quit (Ping timeout: 240 seconds) 2017-08-25T02:22:20Z FalconPilot joined #lisp 2017-08-25T02:22:28Z larme quit (Ping timeout: 246 seconds) 2017-08-25T02:23:17Z |3b|` joined #lisp 2017-08-25T02:23:52Z |3b| quit (Ping timeout: 246 seconds) 2017-08-25T02:23:53Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-25T02:25:32Z dieggsy quit (Ping timeout: 240 seconds) 2017-08-25T02:25:45Z TDT joined #lisp 2017-08-25T02:25:50Z cromachina joined #lisp 2017-08-25T02:26:08Z Kyo91_ joined #lisp 2017-08-25T02:28:35Z test1600 joined #lisp 2017-08-25T02:30:40Z Kyo91_ quit (Ping timeout: 252 seconds) 2017-08-25T02:31:52Z larme joined #lisp 2017-08-25T02:34:55Z emacsomancer joined #lisp 2017-08-25T02:39:26Z R0B_ROD: Hey 2017-08-25T02:41:10Z R0B_ROD: https://news.ycombinator.com/item?id=13862284 2017-08-25T02:41:41Z R0B_ROD: https://teachyourselfcs.com 2017-08-25T02:41:51Z antonv: R0B_ROD: any progress reading? 2017-08-25T02:41:52Z R0B_ROD: Thats where I read about Type I engineers 2017-08-25T02:42:20Z R0B_ROD: Yes antonv I have made basic practice definitions for exercising 2017-08-25T02:42:38Z R0B_ROD: like multiplying reps times load to get volume...still on chapter one 2017-08-25T02:42:40Z antonv: Type I is better 2017-08-25T02:42:40Z aindilis joined #lisp 2017-08-25T02:42:44Z R0B_ROD: :) 2017-08-25T02:42:59Z R0B_ROD: Deep understanding of the science 2017-08-25T02:43:08Z R0B_ROD: trying to get alexandria for sbcl 2017-08-25T02:43:15Z R0B_ROD: to compile stumpwm 2017-08-25T02:43:25Z antonv: (ql:quickload :alexandria) 2017-08-25T02:43:27Z R0B_ROD: so I can keep learning lisp 2017-08-25T02:43:58Z antonv: R0B_ROD: I wouldn't mix installing StumpVM and learning programming techniques from SICP 2017-08-25T02:44:31Z antonv: It would multiplying complexity of these to thing and rise the barier 2017-08-25T02:45:16Z R0B_ROD: Constrain? 2017-08-25T02:45:24Z JuanDaugherty joined #lisp 2017-08-25T02:46:41Z antonv: ?? 2017-08-25T02:47:58Z antonv: *It would multiply complexity of these two thing and rise the barrier 2017-08-25T02:48:05Z R0B_ROD: Understood 2017-08-25T02:48:18Z R0B_ROD: thanks for the definition 2017-08-25T02:48:26Z R0B_ROD: i needed to install quicklisp first tho lol 2017-08-25T02:49:02Z antonv: yes, I hope you found the way to do it 2017-08-25T02:49:30Z antonv: do you realize SICP uses Scheme and not Common Lisp? 2017-08-25T02:49:55Z Fare: there is a SICP language for Racket 2017-08-25T02:50:00Z Zhivago: Does SICP use continuations? I don't remember. 2017-08-25T02:50:04Z Fare: and of course, MIT Scheme is still usable 2017-08-25T02:50:11Z Fare: Zhivago: if it does, minimally 2017-08-25T02:50:24Z fiddlerwoaroof: Zhivago: the biggest issue in SICP is that DEFINE has no real equivalent in Common Lisp 2017-08-25T02:50:44Z Zhivago: Well, it has a couple of equivalents depending on context, but I can see how that would be confusing. 2017-08-25T02:50:48Z Fare: Zhivago: you *implement* call/cc in SICP 2017-08-25T02:51:04Z R0B_ROD: Yes I use Racket with sicp lang pack 2017-08-25T02:51:17Z Fare: fiddlerwoaroof, why is it a big problem? between defvar, defun, let* and labels... 2017-08-25T02:51:28Z Fare: #racket is that-a-way 2017-08-25T02:51:50Z fiddlerwoaroof: Fare: if you're know lisp, it's easy enough but for a beginner, translating define to the appropriate form is a bit confusing 2017-08-25T02:53:14Z Fare: antonv, has there been a new quicklisp since we last tested? 2017-08-25T02:53:17Z fiddlerwoaroof: Also, I had a hard time reading the code samples in SICP because I would mentally intepret them in "Lisp-N>1 mode" when they're written for a Lisp-1 2017-08-25T02:53:31Z fiddlerwoaroof: But, that's not a beginner problem 2017-08-25T02:53:47Z antonv: Fare: no new quicklisp releases I'm aware of 2017-08-25T02:54:34Z antonv: Fare: BTW, I posted only one test and said "will do others in coming days" but when read you reply that "we can release the current ASDF" I relaxed and didn't do more tests 2017-08-25T02:54:50Z antonv: Are other tests still relevant? 2017-08-25T02:55:20Z Fare: I don't think so 2017-08-25T02:55:27Z Fare: or only marginally 2017-08-25T02:56:00Z Fare: A recent SBCL tends to be the more informative platform to run those tests on. 2017-08-25T02:56:54Z Fare: ASDF is portable enough that there is no reason it would break on one implementation and not the other, unless bad magic in #+ccl or such. 2017-08-25T02:57:56Z antonv: So you think testing sbcl-1.3.20 in addition to sbcl-1.3.17 I posted makes sense? 2017-08-25T03:03:01Z Fare: could be useful, but I think 3.3.0 is going to be released imminently anyway. 2017-08-25T03:04:11Z fiddlerwoaroof: R0B_ROD: to install stumpwm:: wget http://beta.quicklisp.org/quicklisp.lisp && sbcl --load quicklisp.lisp --eval '(quicklisp-quickstart:install)' --eval '(ql:quickload :stumpwm)' --eval '(save-lisp-and-die "stumpwm" :executable t :toplevel #'"'"'stumpwm:stumpwm)' 2017-08-25T03:04:38Z R0B_ROD: fiddlerwoaroof: nice!! :) 2017-08-25T03:06:04Z vtomole: How long has quicklisp been beta? 2017-08-25T03:06:06Z Bike quit (Ping timeout: 276 seconds) 2017-08-25T03:08:47Z fiddlerwoaroof: It's like Gmail 2017-08-25T03:09:22Z fiddlerwoaroof: Xach had a list somewhere of features to add before it would be out of beta 2017-08-25T03:09:36Z vtomole: Gmail, ha! makes sense 2017-08-25T03:10:07Z R0B_ROD: fiddlerwoaroof: https://bpaste.net/show/ce578dd2669d 2017-08-25T03:10:52Z antonv: R0B_ROD: stumpwm: Is a directory 2017-08-25T03:10:52Z antonv: 2017-08-25T03:11:04Z antonv: in your paste 2017-08-25T03:11:15Z fiddlerwoaroof: Yeah, the first argument to save-lisp-and-die is the place where the stumpwm executable will be created 2017-08-25T03:11:20Z TDT quit (Quit: TDT) 2017-08-25T03:11:39Z antonv: Fare: in this case I will save some time not running the tests 2017-08-25T03:11:52Z R0B_ROD: yes i saw 2017-08-25T03:11:53Z R0B_ROD: lol 2017-08-25T03:11:59Z R0B_ROD: was going to bed so i just pated it 2017-08-25T03:12:05Z antonv: Fare: at least not now 2017-08-25T03:12:28Z antonv: R0B_ROD: no bed, CS is waiting for you :) 2017-08-25T03:14:23Z R0B_ROD: I know 2017-08-25T03:14:31Z R0B_ROD: but I have to get up early for my day job 2017-08-25T03:14:38Z R0B_ROD: got it to compile 2017-08-25T03:14:41Z R0B_ROD: thanks fiddlerwoaroof 2017-08-25T03:14:45Z R0B_ROD: going to launch it 2017-08-25T03:14:50Z R0B_ROD quit (Quit: leaving) 2017-08-25T03:15:02Z schoppenhauer quit (Ping timeout: 240 seconds) 2017-08-25T03:16:51Z schoppenhauer joined #lisp 2017-08-25T03:20:50Z R0B_ROD joined #lisp 2017-08-25T03:21:05Z R0B_ROD: Well it launched 2017-08-25T03:21:17Z R0B_ROD: But i need to learn how to use it lol...for now jwm works well 2017-08-25T03:21:22Z R0B_ROD: nite 2017-08-25T03:29:11Z xantoz quit (Ping timeout: 240 seconds) 2017-08-25T03:36:19Z dim quit (Ping timeout: 246 seconds) 2017-08-25T03:39:05Z chens joined #lisp 2017-08-25T03:41:59Z xantoz joined #lisp 2017-08-25T03:43:58Z vtomole quit (Ping timeout: 260 seconds) 2017-08-25T03:58:38Z shiranuidong joined #lisp 2017-08-25T04:02:05Z whoman quit (Remote host closed the connection) 2017-08-25T04:10:48Z BW^- joined #lisp 2017-08-25T04:10:49Z BW^-: what algorithms are there for tracking *all* circular structures within a graph? 2017-08-25T04:10:51Z BW^-: what are they called? 2017-08-25T04:11:56Z jasom: BW^-: not really on-topic here, but a generalized form of tortoise-hare algorithm would work with that 2017-08-25T04:14:32Z jasom: actually if you need to find all, then a standard DFS traversal will do it for you; just note whenever you reach a node you've already visited, you have found an edge for a loop. 2017-08-25T04:17:35Z reich joined #lisp 2017-08-25T04:21:06Z BW^-: what do you call a directed tree that allows downward cycles?? =) 2017-08-25T04:21:30Z BW^-: jasom: i need a dynamic algorithm =o 2017-08-25T04:21:40Z BW^-: jasom: is tortoise-hare dynamic? 2017-08-25T04:21:47Z BW^-: (online) for dynamic grpah 2017-08-25T04:27:47Z beach joined #lisp 2017-08-25T04:31:28Z neoncontrails joined #lisp 2017-08-25T04:33:49Z jasom: BW^-: see https://en.wikipedia.org/wiki/Dynamic_programming 2017-08-25T04:34:30Z jasom: and let me know if you have any questions specifically pertaining to common lisp. 2017-08-25T04:39:26Z BW^-: jason: indeed this is an OT question, but ##algorithms is asleep. 2017-08-25T04:39:57Z BW^-: jason: what was your point with refering me to the dynamic programming page? dynamic programming as in lisp style typing i guess... a dynamic graph algorithm means however that it's for a dynamic graph 2017-08-25T04:42:02Z slyrus: dynamic programming is neither... 2017-08-25T04:44:01Z cromachina quit (Ping timeout: 248 seconds) 2017-08-25T04:46:15Z BW^-: slyrus: so what's your point? 2017-08-25T04:47:00Z slyrus: no point. just commenting on the origin the relatively content-free name. still, a great algorithmic advance! 2017-08-25T04:47:09Z slyrus: origin of... 2017-08-25T04:51:41Z safe joined #lisp 2017-08-25T04:51:41Z quazimodo quit (Read error: Connection reset by peer) 2017-08-25T04:51:59Z quazimodo joined #lisp 2017-08-25T04:53:08Z drcode joined #lisp 2017-08-25T04:57:16Z sellout- joined #lisp 2017-08-25T04:58:19Z cromachina joined #lisp 2017-08-25T04:59:35Z shka_ joined #lisp 2017-08-25T05:01:55Z zagura joined #lisp 2017-08-25T05:06:29Z dec0n joined #lisp 2017-08-25T05:08:49Z lain_ joined #lisp 2017-08-25T05:09:17Z mishoo joined #lisp 2017-08-25T05:11:02Z reich quit (Ping timeout: 240 seconds) 2017-08-25T05:14:54Z jasom: slyrus: IIRC it was named originally to be buzzwordy 2017-08-25T05:15:07Z slyrus: correct 2017-08-25T05:15:17Z slyrus: and to be unobjectionable 2017-08-25T05:17:49Z BW^- quit (Ping timeout: 246 seconds) 2017-08-25T05:18:44Z jasom: my ql2nix script decided that babel depended on a system named ":trivial-features" which we don't know how to build and so all systems that directly or indirectly depend on babel were not built; cffi depends on babel... 2017-08-25T05:18:56Z jasom: this is why you shouldn't parse with regex's 2017-08-25T05:19:30Z jasom could handle foo:trivial-features but not foo::trivial-features 2017-08-25T05:19:33Z malice joined #lisp 2017-08-25T05:20:20Z jasom: But instead of switching away from regexes, I'm just goign to make the regex more complicated: "Component ([^: ]*::?([^ ]*)|\"([^\"]+)\"|([^ ]+)) not found" 2017-08-25T05:23:20Z jasom: now I just need to wait for something to depend on |foo| and I can make it even *more* complicated 2017-08-25T05:23:26Z Bock joined #lisp 2017-08-25T05:24:15Z BW^- joined #lisp 2017-08-25T05:26:32Z vlatkoB joined #lisp 2017-08-25T05:27:43Z Mon_Ouie quit (Ping timeout: 248 seconds) 2017-08-25T05:35:52Z Mon_Ouie joined #lisp 2017-08-25T05:37:48Z damke joined #lisp 2017-08-25T05:40:01Z dim joined #lisp 2017-08-25T05:43:44Z BW^-: slyrus: an algorithmic advance of what? 2017-08-25T05:45:23Z jasom: BW^-: what is a dynamic graph? 2017-08-25T05:45:48Z jasom: The term "dynamic algorithm" typically refers to dynamic programming. 2017-08-25T05:46:43Z jasom: and dynamic programming has nothing to do with lisp style typing. Dynamic programming is a style of algorithm that basically boils down to recursion + memoization. 2017-08-25T05:47:05Z BW^-: jasom: a dynamic graph is a graph that changes edge content over time i.e. edges may be deleted or inserted 2017-08-25T05:47:16Z BW^-: jasom: aha. um ok. weird. 2017-08-25T05:47:25Z vtomole joined #lisp 2017-08-25T05:48:42Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-25T05:48:53Z jasom: BW^-: this sounds like an incrementalcycle-detector for a reference-counted system. You can probably find algorithms to do this in the garbage collection literature 2017-08-25T05:49:36Z jasom: BW^-: and you *can't* do it for arbitrary concurrent mutation of the graph unless you have some sort of agrement between the mutator and the cycle-detector. 2017-08-25T05:51:44Z Karl_Dscc joined #lisp 2017-08-25T05:54:06Z jasom: BW^-: consider A->B->C and the Mutator changes the graph to C->B->A. You could easily have a false-positive if your cycle-detector was considering B at the time. *however* if you don't allow graph nodes to stay alive while disconnected, then there is no way to perform that transformation without generating a cycle, and you don't have a false-positive, because there was a cycle there at some point in time. 2017-08-25T05:57:23Z jasom: alternatively if you can exclude the mutator from running when you have found a potential cycle, you can check if the potential cycle is truly a cycle. But if you can prevent the mutator from running, you could just run your entire graph traversal as well, and then the "dynamic" requirement is non-sensical. 2017-08-25T05:57:44Z damke quit (Ping timeout: 240 seconds) 2017-08-25T06:00:18Z BW^-: jasom: sure i'm aware the mutator must be synced with the cycle detector ys 2017-08-25T06:00:20Z damke joined #lisp 2017-08-25T06:00:57Z BW^-: jasom: what cycle detection algorithms are you aware of being used in reference-counted systems? 2017-08-25T06:01:00Z jasom: BW^-: so what are the requirements; could the cycle detector exclude the mutator and run a full-pass? Because then it doesn't matter that the graph is dynamic, because it will be static for the full run of your algorithm 2017-08-25T06:03:11Z BW^-: jasom: yes 2017-08-25T06:03:24Z BW^-: jasome: sure. any dynamic cycle detectors around? 2017-08-25T06:05:32Z damke_ joined #lisp 2017-08-25T06:06:04Z damke quit (Ping timeout: 240 seconds) 2017-08-25T06:06:43Z jasom: Tarjan's cycle finder is the common one 2017-08-25T06:07:23Z jasom: https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm 2017-08-25T06:09:36Z oleo quit (Quit: irc client terminated!) 2017-08-25T06:09:57Z jasom: That partitions verticies into components; Any component with multiple verticies is a cycle, and any component with just one vertex is not part of a cycle. 2017-08-25T06:12:43Z vtomole quit (Ping timeout: 260 seconds) 2017-08-25T06:13:41Z shka_ quit (Ping timeout: 240 seconds) 2017-08-25T06:14:06Z BW^-: jasom: but that one is for undirected graphs. 2017-08-25T06:15:53Z Karl_Dscc quit (Remote host closed the connection) 2017-08-25T06:16:17Z FalconPilot quit (Ping timeout: 248 seconds) 2017-08-25T06:16:39Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-25T06:16:56Z jasom: BW^-: from the page: The algorithm takes a directed graph as input, ... 2017-08-25T06:18:39Z BW^-: jasom: excellent. thanks. 2017-08-25T06:18:46Z BW^-: a month of reading papers gives blurry eyes lol 2017-08-25T06:20:29Z damke_ quit (Ping timeout: 246 seconds) 2017-08-25T06:22:34Z moei quit (Quit: Leaving...) 2017-08-25T06:23:18Z damke_ joined #lisp 2017-08-25T06:28:22Z damke joined #lisp 2017-08-25T06:29:04Z damke_ quit (Ping timeout: 240 seconds) 2017-08-25T06:35:38Z FalconPilot joined #lisp 2017-08-25T06:41:50Z Bike joined #lisp 2017-08-25T06:42:46Z malice quit (Remote host closed the connection) 2017-08-25T06:46:38Z flamebeard joined #lisp 2017-08-25T06:52:37Z sigjuice quit (Quit: ZNC - http://znc.in) 2017-08-25T06:53:44Z sigjuice joined #lisp 2017-08-25T06:54:46Z |3b|` is now known as |3b| 2017-08-25T06:56:29Z pjb joined #lisp 2017-08-25T06:58:13Z lain_ quit (Ping timeout: 260 seconds) 2017-08-25T07:01:10Z wxie quit (Remote host closed the connection) 2017-08-25T07:02:04Z damke_ joined #lisp 2017-08-25T07:04:24Z damke quit (Ping timeout: 240 seconds) 2017-08-25T07:06:58Z knobo joined #lisp 2017-08-25T07:07:20Z flip214: can I tell QL to compile some systems (with all their dependencies), but not load them? 2017-08-25T07:07:42Z flip214: guess I can't, because compiling them might require some dependencies to be available... 2017-08-25T07:08:51Z jasom: flip214: on sbcl, if you don't have any threads running, you can fork a process, load them all and then exit. 2017-08-25T07:11:00Z flip214: jasom: yeah, that's basically what I'm doing right now. 2017-08-25T07:11:15Z flip214: but it's not allowed to have several processes running QL in parallel, is it? 2017-08-25T07:11:32Z flip214: they might conflict over the compile results, I think. 2017-08-25T07:12:04Z damke_ quit (Ping timeout: 240 seconds) 2017-08-25T07:12:24Z jasom: flip214: you can use poiu to handle that 2017-08-25T07:12:56Z jasom: http://www.cliki.net/poiu 2017-08-25T07:13:10Z flip214: thanks for the pointer, looking! 2017-08-25T07:14:21Z damke_ joined #lisp 2017-08-25T07:14:29Z jasom: even if it doesn't do what you want, it would be a good place to start to do what you're doing 2017-08-25T07:14:57Z flip214: poiu isn't in QL yet, right? 2017-08-25T07:15:04Z jasom: no clue 2017-08-25T07:15:30Z jasom: it doesn't appear to be 2017-08-25T07:15:32Z defaultxr quit (Ping timeout: 240 seconds) 2017-08-25T07:15:44Z DeadTrickster quit (Remote host closed the connection) 2017-08-25T07:16:21Z Murii joined #lisp 2017-08-25T07:16:28Z jasom: https://gitlab.common-lisp.net/qitab/poiu/tree/master 2017-08-25T07:16:31Z varjag joined #lisp 2017-08-25T07:17:15Z mishoo_ joined #lisp 2017-08-25T07:17:32Z milanj joined #lisp 2017-08-25T07:18:08Z flip214: might be very useful for ironclad, for example... 2017-08-25T07:18:32Z mishoo quit (Ping timeout: 240 seconds) 2017-08-25T07:18:55Z nowhereman joined #lisp 2017-08-25T07:19:31Z clintm quit (Ping timeout: 255 seconds) 2017-08-25T07:24:10Z flip214: hmmm, cliki.net says that my account doesn't exist.... was there a cleanup some time ago? 2017-08-25T07:25:09Z flip214: re-registration did work, though 2017-08-25T07:25:55Z nowhereman quit (Remote host closed the connection) 2017-08-25T07:26:18Z nowhereman joined #lisp 2017-08-25T07:28:31Z flip214: http://common-lisp.net/gitweb? seems broken right now 2017-08-25T07:32:32Z nowhereman quit (Ping timeout: 248 seconds) 2017-08-25T07:33:18Z jibanes quit (Ping timeout: 240 seconds) 2017-08-25T07:33:33Z vhost- quit (Ping timeout: 240 seconds) 2017-08-25T07:33:36Z jibanes joined #lisp 2017-08-25T07:34:04Z flip214: but perhaps that's because gitweb got superceded by gitlab? 2017-08-25T07:34:49Z nirved joined #lisp 2017-08-25T07:36:38Z damke joined #lisp 2017-08-25T07:37:50Z Bike quit (Ping timeout: 246 seconds) 2017-08-25T07:38:53Z borei quit (Ping timeout: 240 seconds) 2017-08-25T07:39:44Z damke_ quit (Ping timeout: 240 seconds) 2017-08-25T07:40:20Z vhost- joined #lisp 2017-08-25T07:40:44Z damke quit (Ping timeout: 240 seconds) 2017-08-25T07:42:55Z damke joined #lisp 2017-08-25T07:46:04Z mfiano_ joined #lisp 2017-08-25T07:46:23Z damke_ joined #lisp 2017-08-25T07:48:04Z damke quit (Ping timeout: 240 seconds) 2017-08-25T07:48:51Z mfiano quit (Ping timeout: 240 seconds) 2017-08-25T07:48:58Z damke joined #lisp 2017-08-25T07:51:04Z damke_ quit (Ping timeout: 240 seconds) 2017-08-25T07:53:02Z damke_ joined #lisp 2017-08-25T07:54:44Z damke quit (Ping timeout: 240 seconds) 2017-08-25T07:54:57Z BW^- quit (Ping timeout: 246 seconds) 2017-08-25T07:55:00Z aindilis quit (Remote host closed the connection) 2017-08-25T07:55:00Z milanj quit (Quit: This computer has gone to sleep) 2017-08-25T07:57:47Z BitPuffin|osx joined #lisp 2017-08-25T08:01:55Z Shinmera: Yes. 2017-08-25T08:02:12Z Shinmera: The primary problem with c-l.net is that like 99% of the pages hosted on it point to links that are long gone. 2017-08-25T08:03:20Z antoszka: There should be an automatic cleanup procedure. A bot that checks the links and removes them or marks them *dead*. 2017-08-25T08:03:54Z flip214: or checks whether the project moved to gitlab, and fixes the links.... 2017-08-25T08:04:06Z scymtym joined #lisp 2017-08-25T08:04:12Z Shinmera: Well the former is doable. The latter not so much, since links are hard. 2017-08-25T08:04:31Z Shinmera: Either way the problem is that maintainers don't really care to begin with, or there is no real maintainer, so the links stay dead. 2017-08-25T08:04:39Z flip214: that might be the best solution, because the automatic fixing can be made more intelligent over time 2017-08-25T08:05:04Z flip214: can the cliki pages be fetched via git or CVS? 2017-08-25T08:06:56Z flip214: then I could try to rig something up. (and I had to resist HARD to write "... to make cliki great again" ;) 2017-08-25T08:07:24Z Shinmera: A new wiki software has been on my todo for a bit, but time stays short. 2017-08-25T08:07:44Z flip214: yeah, I understand. still, that wouldn't fix any contents. 2017-08-25T08:08:22Z Shinmera: Sure, but ease of collaboration and integration can go a long way to gaining traction. Cliki feels sluggish and dead. 2017-08-25T08:08:32Z flip214: any alexandria maintainers here by chance? I asked for permissions to gitlab about a month ago, so I can fix up some of the doc strings... and no answer yet. 2017-08-25T08:08:43Z flip214: Shinmera: sadly true. 2017-08-25T08:09:12Z flip214: the github interface to edit _any_ file (which just clones the repo and does a PR in the background!) is very slick. 2017-08-25T08:09:20Z hhdave joined #lisp 2017-08-25T08:09:39Z flip214: and now cliki seems dead. 2017-08-25T08:10:36Z shka: is there any need for Clicki nowdays? 2017-08-25T08:11:07Z angavrilov joined #lisp 2017-08-25T08:11:09Z Shinmera: There is definitely value in the idea of a central hub of information and advice for CL. 2017-08-25T08:11:14Z jackdaniel: yes, cliki has a lot of information not covered anywhere else 2017-08-25T08:11:17Z shka: right 2017-08-25T08:11:26Z jackdaniel: and it's our wiki 2017-08-25T08:11:51Z shka: but is there a point in writing custom wiki engine? 2017-08-25T08:12:06Z Shinmera: The point is having fun with it and trying out new ideas. 2017-08-25T08:12:11Z jackdaniel: no, imo it doesn't matter if cliki runs on lisp or php 2017-08-25T08:12:11Z Shinmera: At least for me. 2017-08-25T08:12:31Z shka: Shinmera: now that's the idea worth coding for! ;-) 2017-08-25T08:15:24Z Shinmera: Anyway, the software and the "cliki idea" are only marginally tied together, so I agree with jackdaniel to a point. 2017-08-25T08:19:21Z flip214: but if people would hear that the CL wiki would run on PHP, wouldn't that be awful?? ;) 2017-08-25T08:21:09Z _paul0 joined #lisp 2017-08-25T08:21:19Z yangby joined #lisp 2017-08-25T08:22:26Z hajovonta joined #lisp 2017-08-25T08:23:50Z daemoz quit (Ping timeout: 268 seconds) 2017-08-25T08:24:20Z daemoz joined #lisp 2017-08-25T08:24:24Z paul0 quit (Ping timeout: 240 seconds) 2017-08-25T08:27:16Z hajovonta: hello dear lispers 2017-08-25T08:27:30Z Shinmera: flip214: There are more important things to pursue than pride. 2017-08-25T08:28:51Z hajovonta: (philosophy) 2017-08-25T08:29:08Z random-nick joined #lisp 2017-08-25T08:30:01Z clintm` joined #lisp 2017-08-25T08:30:09Z BW^- joined #lisp 2017-08-25T08:30:32Z clintm`: /nick clintm 2017-08-25T08:30:35Z clintm`: oops 2017-08-25T08:30:46Z BW^-: more OT: what ultra extra über smart DAG data structures exist where I can get estimations of the distance to the bottom of the DAG and to the top of the DAG, inexpensively? 2017-08-25T08:31:18Z BW^-: so like, routines in the DAG to help me make various traversals of the DAG structure cheaper (up and down) 2017-08-25T08:31:48Z Shinmera: Typically since a DAG is directed you only go one way. 2017-08-25T08:32:16Z BW^-: i have source pointers my internally in my DAG 2017-08-25T08:32:33Z flip214: well, why not keep a hash-table that caches distances? 2017-08-25T08:33:02Z flip214: a weak one might be sufficient, so that a non-cached node needs only a few traversals to find cached data from another node 2017-08-25T08:33:13Z BW^-: flip214: yeah sure, as a basic optimization that works 2017-08-25T08:33:24Z aindilis joined #lisp 2017-08-25T08:33:25Z BW^-: flip214: that works nicely for distance from root 2017-08-25T08:33:29Z Shinmera: Anyway, not sure if #lisp is the best place to look for algorithms. Hit up google scholars and read some papers, or search an algorithms textbook. 2017-08-25T08:34:16Z BW^-: kinda. 2017-08-25T08:34:21Z BW^-: shinmera: what books would you suggest i browse? 2017-08-25T08:34:40Z BW^-: indeed this is OT to #lisp. however also i got surprisingly much input here =) 2017-08-25T08:34:45Z BW^-: this is for lisp code anyhow haha. 2017-08-25T08:34:54Z Shinmera: I only read one as part of my university required reading, and I don't remember that it covered anything useful for your specific task. 2017-08-25T08:35:15Z Colleen quit (Ping timeout: 260 seconds) 2017-08-25T08:35:50Z Shinmera: The qualifier for "ultra extra über smart" kinda forces you to go look for recent research papers, you know? 2017-08-25T08:36:11Z flip214: BW^-: if your DAG is mostly static, simple storing the distance somewhere (in the nodes, or a hashtable) would work. 2017-08-25T08:36:49Z flip214: if you routinely insert nodes (and would have to recalculate the distances!), you might need some additional validity information. 2017-08-25T08:37:08Z BW^-: flip214: it's dynamic. there's not soo much change going on though 2017-08-25T08:38:15Z flip214: BW^-: is it a real DAG, or a tree with fixed number of children? 2017-08-25T08:38:34Z BW^-: flip214: a real DAG 2017-08-25T08:41:26Z sellout- quit (Quit: Leaving.) 2017-08-25T08:41:36Z sellout- joined #lisp 2017-08-25T08:42:11Z sellout- quit (Client Quit) 2017-08-25T08:42:21Z sellout- joined #lisp 2017-08-25T08:43:00Z sellout- quit (Client Quit) 2017-08-25T08:43:09Z sellout- joined #lisp 2017-08-25T08:43:48Z sellout- quit (Client Quit) 2017-08-25T08:43:57Z sellout- joined #lisp 2017-08-25T08:44:36Z sellout- quit (Client Quit) 2017-08-25T08:47:37Z attila_lendvai joined #lisp 2017-08-25T08:52:57Z grublet quit (Quit: Leaving) 2017-08-25T08:58:06Z neoncontrails quit (Remote host closed the connection) 2017-08-25T09:04:13Z mrcom quit (Read error: Connection reset by peer) 2017-08-25T09:04:13Z quazimodo quit (Read error: Connection reset by peer) 2017-08-25T09:04:30Z quazimodo joined #lisp 2017-08-25T09:05:32Z Murii quit (Ping timeout: 240 seconds) 2017-08-25T09:11:34Z damke joined #lisp 2017-08-25T09:12:13Z BW^-: DAG is a term, but what about directed graphs that can have cycles in them, are those called "Directed Cyclic Graph"s?? 2017-08-25T09:13:45Z mishoo_ quit (Ping timeout: 260 seconds) 2017-08-25T09:13:55Z easye: BW^-: probably such an object would be a "directed graph" 2017-08-25T09:14:04Z damke_ quit (Ping timeout: 240 seconds) 2017-08-25T09:14:13Z BW^-: easye: ok 2017-08-25T09:14:35Z smokeink joined #lisp 2017-08-25T09:15:10Z Xof joined #lisp 2017-08-25T09:28:35Z Bike joined #lisp 2017-08-25T09:29:35Z Murii joined #lisp 2017-08-25T09:29:53Z flip214: haha, https://gitlab.common-lisp.net/xcvb/asdf-dependency-grovel has a very long explanation how it works through all the difficulties... 2017-08-25T09:30:15Z flip214: but the heading "How to Use ADG" has only "*** more here ***" 2017-08-25T09:32:21Z mishoo_ joined #lisp 2017-08-25T09:32:45Z BW^-: what's the name of a tree in a DAG... a directed tree? 2017-08-25T09:33:31Z shka: BW^-: DAG = tree 2017-08-25T09:33:40Z shka: subtree of tree = tree 2017-08-25T09:33:51Z shka: root = tree without parent 2017-08-25T09:34:19Z BW^-: shka: nono, a DAG can have overlaps: this is a dag: A -> B -> C -> D -> E PLUS B -> F -> D 2017-08-25T09:34:33Z BW^-: shka: the difference between a DAG and a tree is that a tree has no overlaps like that at all 2017-08-25T09:34:36Z shka: who said that trees can't overlap? 2017-08-25T09:34:42Z BW^-: loool 2017-08-25T09:34:49Z BW^-: shka: that would be a forest?? 2017-08-25T09:34:59Z shka: bush? :D 2017-08-25T09:35:05Z BW^-: shka: i think in graph science, a tree never has internal overlaps - the idea is a stub, leading to trunk, branches, leaves 2017-08-25T09:35:10Z BW^-: perfect overlapping hierarchy 2017-08-25T09:35:14Z BW^-: that's my understanding of the graph term tree 2017-08-25T09:35:39Z shka: ah, right 2017-08-25T09:35:49Z shka: also, trees, have to be fully-connected 2017-08-25T09:35:57Z m00natic joined #lisp 2017-08-25T09:36:20Z BW^-: yes.. DAG:s too i guess 2017-08-25T09:36:21Z BW^-: anyhow so 2017-08-25T09:36:25Z BW^-: a.. "directed tree" lol 2017-08-25T09:36:30Z shka: and only one parent 2017-08-25T09:36:45Z BW^-: mm 2017-08-25T09:36:45Z shka: so i guess trees are special case of DAG 2017-08-25T09:36:49Z BW^-: yea 2017-08-25T09:45:02Z test1600 quit (Quit: Leaving) 2017-08-25T09:46:32Z Shinmera: A tree is an undirected graph with no cycles. 2017-08-25T09:47:18Z phoe: also some people select a single vertex in that graph to call it the "root" of the tree. 2017-08-25T09:47:29Z phoe: which is useful in some cases, not useful in others. 2017-08-25T09:48:21Z phoe: also, some trees are called "trees" by notion but are directed graphs; "parents" point to "children" but not the other way around. 2017-08-25T09:49:25Z BW^-: shinmera: so "directed tree" is a meaningful term then 2017-08-25T09:50:03Z narendraj9 joined #lisp 2017-08-25T09:50:25Z phoe: example: Lisp list 2017-08-25T09:50:48Z phoe bbl 2017-08-25T09:50:55Z chens quit (Remote host closed the connection) 2017-08-25T09:52:37Z Shinmera: BW^-: That's a polytree. 2017-08-25T09:53:02Z BW^-: shinmera: why "poly-"? 2017-08-25T09:53:29Z Shinmera: Because it was named such at some point by mathematicians. 2017-08-25T09:53:33Z BW^-: lol ok 2017-08-25T09:53:52Z BW^-: nonono 2017-08-25T09:53:53Z BW^-: wait 2017-08-25T09:54:03Z BW^-: shinmera: the picture of the polytree here, https://en.wikipedia.org/wiki/Polytree , 2017-08-25T09:54:14Z BW^-: shinmera: i actually want a tree! just that its edges are directed 2017-08-25T09:54:22Z BW^-: like this https://en.wikipedia.org/wiki/Tree_(graph_theory) 2017-08-25T09:54:33Z Shinmera: Well, if you change the edges to be undirected, you get a tree. 2017-08-25T09:54:40Z Shinmera: That's the definition of a polytree. 2017-08-25T09:55:04Z phoe quit (Ping timeout: 252 seconds) 2017-08-25T09:55:59Z Shinmera scurries off to lunch 2017-08-25T09:56:32Z mishoo_ quit (Ping timeout: 248 seconds) 2017-08-25T09:57:13Z marvin2 joined #lisp 2017-08-25T09:57:53Z BW^-: shinmera: I want exactly the thing in the illustration here https://en.wikipedia.org/wiki/Tree_(graph_theory) , but with arrows on the edges :) 2017-08-25T09:59:22Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-25T10:00:18Z flip214: I thought that a tree needs to have _directed_ edges - if it didn't, you could take any node and proclaim it to be _the_ root! 2017-08-25T10:00:34Z attila_lendvai quit (Ping timeout: 252 seconds) 2017-08-25T10:02:57Z random-nick quit (Quit: quit) 2017-08-25T10:03:19Z random-nick joined #lisp 2017-08-25T10:04:22Z random-nick quit (Client Quit) 2017-08-25T10:08:21Z random-nick joined #lisp 2017-08-25T10:08:24Z lieven: nah especially in mathematics a tree is a connected graph with no cycles 2017-08-25T10:08:43Z lieven: also in applications like networking spanning tree there is no uniquely special root 2017-08-25T10:09:24Z shiranuidong quit (Remote host closed the connection) 2017-08-25T10:10:02Z shiranuidong joined #lisp 2017-08-25T10:10:22Z epony quit (Remote host closed the connection) 2017-08-25T10:12:03Z pjb: the root of a tree is just the current node. 2017-08-25T10:12:17Z pjb: ;-) 2017-08-25T10:17:04Z BW^-: so "directed tree" is a meaningful term then. 2017-08-25T10:17:37Z shka quit (Read error: Connection reset by peer) 2017-08-25T10:20:00Z flazh1 quit (Ping timeout: 248 seconds) 2017-08-25T10:22:39Z flip214: lieven: every ethernet spanning tree has one (elected) root node ;) 2017-08-25T10:23:49Z jamtho_ joined #lisp 2017-08-25T10:26:32Z jack_rabbit quit (Ping timeout: 246 seconds) 2017-08-25T10:26:33Z quazimodo quit (Read error: Connection reset by peer) 2017-08-25T10:27:45Z attila_lendvai joined #lisp 2017-08-25T10:29:19Z shka joined #lisp 2017-08-25T10:33:55Z dddddd joined #lisp 2017-08-25T10:51:04Z strelox joined #lisp 2017-08-25T10:55:01Z zacts quit (Ping timeout: 252 seconds) 2017-08-25T10:57:00Z phoe joined #lisp 2017-08-25T10:59:19Z Guest54652 quit (Remote host closed the connection) 2017-08-25T10:59:19Z itruslove quit (Remote host closed the connection) 2017-08-25T11:00:05Z tonton quit (Ping timeout: 264 seconds) 2017-08-25T11:00:42Z ski: minion: chant 2017-08-25T11:00:42Z minion: MORE HERE 2017-08-25T11:00:48Z damke quit (Read error: Connection reset by peer) 2017-08-25T11:01:28Z tonton joined #lisp 2017-08-25T11:01:33Z damke joined #lisp 2017-08-25T11:03:25Z random-nick quit (Remote host closed the connection) 2017-08-25T11:03:39Z phoe: minion: chant 2017-08-25T11:03:39Z minion: MORE HERE 2017-08-25T11:03:59Z easye: minion: LESS THERE 2017-08-25T11:04:05Z minion: LESS THERE: I can't be expected to work when CLiki doesn't respond to me, can I? 2017-08-25T11:09:34Z phoe: minion: chant less 2017-08-25T11:09:35Z minion: MORE HERE 2017-08-25T11:11:23Z jameser joined #lisp 2017-08-25T11:12:18Z epony joined #lisp 2017-08-25T11:13:27Z zacts joined #lisp 2017-08-25T11:13:33Z random-nick joined #lisp 2017-08-25T11:17:04Z antonv quit (Ping timeout: 248 seconds) 2017-08-25T11:21:16Z milanj joined #lisp 2017-08-25T11:22:55Z sjl_ quit (Ping timeout: 248 seconds) 2017-08-25T11:25:55Z al-damiri joined #lisp 2017-08-25T11:27:34Z safe quit (Read error: Connection reset by peer) 2017-08-25T11:28:23Z flazh1 joined #lisp 2017-08-25T11:28:47Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-25T11:29:05Z skeuomorf joined #lisp 2017-08-25T11:29:48Z lambda-smith joined #lisp 2017-08-25T11:31:42Z attila_lendvai quit (Quit: Leaving.) 2017-08-25T11:37:01Z narendraj9 quit (Ping timeout: 240 seconds) 2017-08-25T11:48:02Z Colleen joined #lisp 2017-08-25T11:48:56Z Shinmera: flip214: That's the point. In graph theory, a tree has no "root". Any node in the tree can potentially be considered its root, but that consideration is purely arbitrary. 2017-08-25T11:52:59Z fmeyer joined #lisp 2017-08-25T11:55:02Z dez joined #lisp 2017-08-25T11:56:27Z itruslove joined #lisp 2017-08-25T11:56:31Z mathi_aihtam joined #lisp 2017-08-25T11:58:39Z serviteur joined #lisp 2017-08-25T11:59:28Z giraffe joined #lisp 2017-08-25T11:59:28Z giraffe is now known as Guest36961 2017-08-25T12:01:26Z TDT joined #lisp 2017-08-25T12:06:07Z Murii quit (Ping timeout: 248 seconds) 2017-08-25T12:09:51Z Bike quit (Ping timeout: 240 seconds) 2017-08-25T12:13:53Z epony quit (Remote host closed the connection) 2017-08-25T12:20:27Z epony joined #lisp 2017-08-25T12:24:24Z jamtho_ joined #lisp 2017-08-25T12:25:13Z elfmacs quit (Ping timeout: 252 seconds) 2017-08-25T12:25:20Z knobo quit (Ping timeout: 248 seconds) 2017-08-25T12:27:39Z Wair1978 joined #lisp 2017-08-25T12:32:29Z dddddd quit (*.net *.split) 2017-08-25T12:32:29Z _paul0 quit (*.net *.split) 2017-08-25T12:32:29Z Bock quit (*.net *.split) 2017-08-25T12:32:29Z zagura quit (*.net *.split) 2017-08-25T12:32:29Z emacsomancer quit (*.net *.split) 2017-08-25T12:32:29Z Jesin quit (*.net *.split) 2017-08-25T12:32:29Z Tristam quit (*.net *.split) 2017-08-25T12:33:17Z pillton quit (*.net *.split) 2017-08-25T12:33:17Z Khisanth quit (*.net *.split) 2017-08-25T12:33:17Z searcher quit (*.net *.split) 2017-08-25T12:33:17Z alandipert quit (*.net *.split) 2017-08-25T12:33:17Z micro_ quit (*.net *.split) 2017-08-25T12:33:17Z j0ni quit (*.net *.split) 2017-08-25T12:33:17Z Mandus quit (*.net *.split) 2017-08-25T12:33:17Z __main__ quit (*.net *.split) 2017-08-25T12:33:17Z ssake quit (*.net *.split) 2017-08-25T12:33:17Z Tordek quit (*.net *.split) 2017-08-25T12:33:17Z Patzy quit (*.net *.split) 2017-08-25T12:33:17Z White_Flame quit (*.net *.split) 2017-08-25T12:33:17Z ssake_ joined #lisp 2017-08-25T12:33:17Z Mandus_ joined #lisp 2017-08-25T12:33:17Z zagura joined #lisp 2017-08-25T12:33:17Z zagura quit (Changing host) 2017-08-25T12:33:17Z zagura joined #lisp 2017-08-25T12:33:17Z yangby quit (Quit: Go out for a walk and buy a drink.) 2017-08-25T12:33:17Z White_Flame joined #lisp 2017-08-25T12:33:17Z Patzy joined #lisp 2017-08-25T12:33:17Z Tordek joined #lisp 2017-08-25T12:33:17Z _paul0 joined #lisp 2017-08-25T12:33:17Z Jesin joined #lisp 2017-08-25T12:33:17Z Bock joined #lisp 2017-08-25T12:33:17Z Khisanth joined #lisp 2017-08-25T12:33:17Z Tristam joined #lisp 2017-08-25T12:33:17Z j0ni joined #lisp 2017-08-25T12:33:17Z micro_ joined #lisp 2017-08-25T12:33:17Z searcher joined #lisp 2017-08-25T12:33:17Z alandipert joined #lisp 2017-08-25T12:33:17Z dddddd joined #lisp 2017-08-25T12:33:17Z _main_ joined #lisp 2017-08-25T12:33:17Z emacsoma` joined #lisp 2017-08-25T12:33:20Z micro_ is now known as Guest10288 2017-08-25T12:35:21Z narendraj9 joined #lisp 2017-08-25T12:35:49Z Wair1978 quit (Remote host closed the connection) 2017-08-25T12:35:49Z EvW joined #lisp 2017-08-25T12:36:58Z _main_ is now known as __main__ 2017-08-25T12:39:30Z oleo joined #lisp 2017-08-25T12:42:14Z grublet joined #lisp 2017-08-25T12:47:23Z wxie joined #lisp 2017-08-25T12:50:45Z jamtho_ quit (Remote host closed the connection) 2017-08-25T12:50:56Z tonton quit (Ping timeout: 248 seconds) 2017-08-25T12:51:08Z yrk joined #lisp 2017-08-25T12:51:11Z jamtho_ joined #lisp 2017-08-25T12:51:53Z tonton joined #lisp 2017-08-25T12:53:02Z mrcom joined #lisp 2017-08-25T12:58:45Z R0B_ROD: Hello 2017-08-25T12:59:46Z mishoo_ joined #lisp 2017-08-25T13:00:33Z Wair1978 joined #lisp 2017-08-25T13:00:51Z Bike joined #lisp 2017-08-25T13:02:02Z beach: Hello R0B_ROD. 2017-08-25T13:03:03Z damke_ joined #lisp 2017-08-25T13:03:33Z phoe: Hey hi everyone 2017-08-25T13:03:57Z beach: Hello phoe. 2017-08-25T13:04:33Z phoe: Hey beach. 2017-08-25T13:05:24Z damke quit (Ping timeout: 240 seconds) 2017-08-25T13:07:22Z dieggsy joined #lisp 2017-08-25T13:09:41Z Wair1978 left #lisp 2017-08-25T13:10:04Z Younder: welcome to our little club 2017-08-25T13:11:24Z R0B_ROD: Nice 2017-08-25T13:11:31Z R0B_ROD: Learning SICP 2017-08-25T13:11:51Z SAL9000_ joined #lisp 2017-08-25T13:12:38Z R0B_ROD quit (Quit: Lost terminal) 2017-08-25T13:12:48Z mathi_aihtam quit (Ping timeout: 240 seconds) 2017-08-25T13:13:04Z mathi_aihtam joined #lisp 2017-08-25T13:14:51Z edgar-rft: (defun everyone (&rest args) (apply #'every (lambda (x) (eql 1 x)) args)) 2017-08-25T13:15:05Z SAL9000 quit (Ping timeout: 264 seconds) 2017-08-25T13:17:41Z phoe: edgar-rft: that was good 2017-08-25T13:18:17Z Younder: I'd use loop 2017-08-25T13:18:27Z edgar-rft: phoe: what's with the other numbers? like everytwo, everythree, and so on... 2017-08-25T13:19:01Z oleo: every-n 2017-08-25T13:19:29Z Younder: edgar-rft, your implementaion conses like crazy. It will be slow for large datasets 2017-08-25T13:20:15Z edgar-rft: Younder: that's a limitation of using EVERY 2017-08-25T13:21:10Z Bike: where does it cons? 2017-08-25T13:21:36Z Bike: if the &rest arg is stack allocated i don't think it would. 2017-08-25T13:21:53Z Bike: though maybe i don't understand it anyway. is args supposed to be a list of numbers or a list of lists? 2017-08-25T13:22:31Z oleo: apply needs a list 2017-08-25T13:22:42Z oleo: as it's last argument at least 2017-08-25T13:23:03Z Bike: no shit? 2017-08-25T13:25:15Z shka: i see that terrible puns are still around 2017-08-25T13:25:38Z edgar-rft: I did my best to make it even worse! 2017-08-25T13:25:45Z phoe: wait, conses? 2017-08-25T13:25:53Z phoe: why does EVERY cons? 2017-08-25T13:25:58Z Bike: it shouldn't. 2017-08-25T13:26:05Z phoe: so why does the above cons? 2017-08-25T13:26:14Z phoe: Younder: ^ 2017-08-25T13:26:55Z MerinoBailon is now known as bailon 2017-08-25T13:27:00Z Younder: In compiler theory we use bitsets. Because they are a more compact representation of bool. Particularly in data flow analysis. 2017-08-25T13:27:36Z Younder: (I am more familiar to doing it in C that Lisp) 2017-08-25T13:27:36Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-25T13:27:48Z mathi_aihtam quit (Quit: mathi_aihtam) 2017-08-25T13:28:45Z oleo: When the function receives its arguments via &rest, it is permissible (but not required) for the implementation to bind the rest parameter to an object that shares structure with the last argument to apply. Because a function can neither detect whether it was called via apply nor whether (if so) the last argument to apply was a constant, conforming programs must neither rely on the list structure of a rest list to be freshly consed, nor modify that list 2017-08-25T13:28:47Z oleo: structure. 2017-08-25T13:31:08Z edgar-rft: oleo: yes, now it's even worse to use EVERYONE 2017-08-25T13:31:55Z edgar-rft: and to make EVERYONE happy, here's EVERYCONS: 2017-08-25T13:31:56Z edgar-rft: (defun everycons (&rest args) (mapcar #'cons args)) 2017-08-25T13:32:27Z edgar-rft: umm, sorry, this one: (defun everycons (&rest args) (reduce #'cons args)) 2017-08-25T13:32:51Z Fare: oleo: wow, I didn't know that and probably wrote programs that ran afoul of it. 2017-08-25T13:33:58Z Fare: edgar: you forgot :initial-element nil :from-end t 2017-08-25T13:34:46Z phoe: lispers don't die, for it takes eternity to understand the standard 2017-08-25T13:34:58Z zulu_inuoe: ^ 2017-08-25T13:37:53Z TDT quit (Quit: TDT) 2017-08-25T13:38:24Z shiranuidong quit (Remote host closed the connection) 2017-08-25T13:39:01Z shiranuidong joined #lisp 2017-08-25T13:39:08Z hjudt joined #lisp 2017-08-25T13:45:36Z aeth: :initial-value nil 2017-08-25T13:45:47Z aeth: One of the inconsistencies in the API 2017-08-25T13:46:10Z SAL9000 joined #lisp 2017-08-25T13:46:46Z phoe: :initial-initiality :initial-value 2017-08-25T13:47:27Z raynold quit (Quit: Connection closed for inactivity) 2017-08-25T13:47:57Z aeth: :initial-element :initial-value :initform :initial-foo :initial-phoe 2017-08-25T13:48:38Z fmeyer quit (Quit: WeeChat 1.6) 2017-08-25T13:48:42Z aeth: anyway, this is the final form: (defun everycons (&rest args) (reduce #'cons args :initial-value nil :from-end t)) 2017-08-25T13:48:57Z fmeyer joined #lisp 2017-08-25T13:49:04Z SAL9000_ quit (Ping timeout: 248 seconds) 2017-08-25T13:49:13Z sellout- joined #lisp 2017-08-25T13:49:56Z Younder: reduce conses like crazy 2017-08-25T13:50:26Z Younder: again loop 2017-08-25T13:51:54Z Shinmera: Younder: reduce does not cons at all. Quit talking shit. 2017-08-25T13:52:21Z Younder SHOOTS HIMSELF 2017-08-25T13:52:47Z Younder: but cons does i would think 2017-08-25T13:53:00Z Shinmera: Well duh. 2017-08-25T13:53:26Z Younder: Well I was talking about the expression 2017-08-25T13:56:44Z jamtho_ quit (Ping timeout: 276 seconds) 2017-08-25T13:57:43Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-25T13:57:48Z FreeBirdLjj joined #lisp 2017-08-25T14:00:19Z dec0n quit (Read error: Connection reset by peer) 2017-08-25T14:02:15Z FreeBirdLjj quit (Ping timeout: 255 seconds) 2017-08-25T14:09:34Z aeth: (defun everycons (&rest args) args) 2017-08-25T14:10:49Z skeuomorf quit (Ping timeout: 252 seconds) 2017-08-25T14:13:15Z mson joined #lisp 2017-08-25T14:13:41Z epony quit (Remote host closed the connection) 2017-08-25T14:14:28Z epony joined #lisp 2017-08-25T14:15:12Z R0B_ROD joined #lisp 2017-08-25T14:16:37Z R0B_ROD: Everytime I try to build something or pull a library it says quicklips isnt installed 2017-08-25T14:17:12Z R0B_ROD: I just need xlib to compile 2017-08-25T14:17:21Z R0B_ROD: Im super new so im just hacking my way thru 2017-08-25T14:17:28Z mathi_aihtam joined #lisp 2017-08-25T14:17:30Z mathi_aihtam left #lisp 2017-08-25T14:19:29Z phinxy joined #lisp 2017-08-25T14:19:47Z phinxy quit (Read error: Connection reset by peer) 2017-08-25T14:19:50Z quazimodo joined #lisp 2017-08-25T14:20:45Z wxie quit (Quit: Bye.) 2017-08-25T14:21:05Z mishoo_ quit (Ping timeout: 264 seconds) 2017-08-25T14:23:18Z Fare: "you haven't seen my final form yet!" 2017-08-25T14:23:39Z epony quit (Remote host closed the connection) 2017-08-25T14:24:19Z Fare: aeth: you forgot to copy-list for freshness. 2017-08-25T14:24:20Z epony joined #lisp 2017-08-25T14:24:40Z al-damiri joined #lisp 2017-08-25T14:25:43Z pjb: edgar-rft: so there are ones who are more ones than others… (everyone '(1 1.0 2/2 1.0d0)) #| --> nil |# 2017-08-25T14:26:01Z pjb: (everyone '(1 2/2 #c(1 0))) #| --> t |# 2017-08-25T14:28:38Z phoe: R0B_ROD: what do you mean? 2017-08-25T14:28:47Z phoe: how are you attempting to build something? 2017-08-25T14:33:05Z felipedvorak quit (Ping timeout: 264 seconds) 2017-08-25T14:33:23Z Kyo91_ joined #lisp 2017-08-25T14:34:16Z Lowl3v3l joined #lisp 2017-08-25T14:37:10Z Younder: pjb I assume 1 is true? 2017-08-25T14:37:55Z phoe: Younder: only nil is false 2017-08-25T14:38:12Z pjb: Younder: (eql 1 x) matches only bit one, not float one. 2017-08-25T14:38:36Z Younder: that makes sense 2017-08-25T14:38:44Z pjb: (= 1 x) matches all ones. 2017-08-25T14:38:54Z phoe: unlike in insane languages http://i.imgur.com/pBchFyz.jpg 2017-08-25T14:39:25Z pjb: :-) 2017-08-25T14:40:09Z edgar-rft: pjb: float 1.0 could be an arbitrary accumualtion of floating-point rounding errors, so you can't surely say if float 1.0 is *really* fixnum 1. 2017-08-25T14:40:29Z Younder: phoe, rotfl 2017-08-25T14:41:31Z edgar-rft: phoe, implement this: 2017-08-25T14:41:54Z Younder: Type systems are notoriously hard to get correct, and embarrassingly easy to get wrong. 2017-08-25T14:42:13Z Younder: Thus type theory 2017-08-25T14:44:47Z R0B_ROD quit (Quit: leaving) 2017-08-25T14:46:00Z felipedvorak joined #lisp 2017-08-25T14:50:01Z narendraj9 quit (Remote host closed the connection) 2017-08-25T14:50:16Z Karl_Dscc joined #lisp 2017-08-25T14:50:39Z hajovonta quit (Quit: hajovonta) 2017-08-25T14:55:39Z JuanDaugherty joined #lisp 2017-08-25T14:59:08Z shka: complex type systems makes program very complex 2017-08-25T14:59:12Z shka: and hard to understand 2017-08-25T14:59:50Z shka: i think that CL balances this well 2017-08-25T15:00:03Z flamebeard quit (Quit: Leaving) 2017-08-25T15:00:23Z phoe: JS type system isn't complex 2017-08-25T15:00:28Z phoe: it's bonkers 2017-08-25T15:01:08Z shka: honestly, i was talking in advance to ML enthusiasts :P 2017-08-25T15:01:17Z shka: because Younder said type theory 2017-08-25T15:01:24Z shka: and they are lurking around 2017-08-25T15:02:53Z Bike: finer points of floating point don't have a lot to do with type theory 2017-08-25T15:04:32Z mishoo_ joined #lisp 2017-08-25T15:04:33Z slyrus quit (Read error: Connection reset by peer) 2017-08-25T15:04:58Z DeadTrickster joined #lisp 2017-08-25T15:06:04Z zulu_inuoe: I know people complain about LOOP, and show off their loop-fu, but I don't think I've ever even came close to writing a DO that works, even a simple list iteration 2017-08-25T15:06:30Z zulu_inuoe: I always give up and end up with loop instead 2017-08-25T15:07:40Z marvin2: i think most people who dislike loop don't use do but dolist, filter, map, reduce, etc 2017-08-25T15:08:14Z zulu_inuoe: I agree. I just wonder if anyone at all uses do 2017-08-25T15:08:47Z zulu_inuoe: Or maybe it's just a problem with me. But I cannot parse it 2017-08-25T15:08:48Z marvin2: i never used it beyond figuring out how it works, which I probably forgot by now 2017-08-25T15:09:04Z zulu_inuoe: You made it further than me haha 2017-08-25T15:10:06Z mishoo_ quit (Ping timeout: 248 seconds) 2017-08-25T15:11:56Z marvin2: (do ((var init step) ..) test-form result-form) 2017-08-25T15:11:56Z quazimodo quit (Read error: Connection reset by peer) 2017-08-25T15:12:03Z reich joined #lisp 2017-08-25T15:12:08Z marvin2: examples here: http://www.lispworks.com/documentation/lw60/CLHS/Body/m_do_do.htm 2017-08-25T15:14:10Z marvin2: step keeps getting evaluated (and assigned to var) while test-form evalutes to true. when test-form evaluates ot false, result-form is returned 2017-08-25T15:14:48Z easye quit (Remote host closed the connection) 2017-08-25T15:15:25Z marvin2: quite possible i got something wrong, just glanced at that link 2017-08-25T15:15:43Z zulu_inuoe: I see. Your example honestly makes more sense thatn I've gotten from the CLHS 2017-08-25T15:16:23Z zulu_inuoe: I think the main thing that threw me off (and something wrong in your example) is that test-form needs to be wrapped in parens, and is followed by multiple return values 2017-08-25T15:17:18Z minion quit (Read error: No route to host) 2017-08-25T15:17:26Z marvin2: multiple return values? which one is picked then? 2017-08-25T15:17:30Z specbot quit (Read error: No route to host) 2017-08-25T15:17:41Z zulu_inuoe: All of them => (values x y z) 2017-08-25T15:17:48Z marvin2: ah 2017-08-25T15:18:18Z minion joined #lisp 2017-08-25T15:18:29Z knusbaum joined #lisp 2017-08-25T15:18:57Z specbot joined #lisp 2017-08-25T15:19:50Z Suzuran42 joined #lisp 2017-08-25T15:20:20Z phoe: marvin2: your example is not paren'd correctly 2017-08-25T15:20:47Z phoe: (do ((var init step) ...) (test-form . result-progn) . loop-steps) 2017-08-25T15:21:05Z phoe: result-progn is evaluated at loop exit and the value of its last form is returned 2017-08-25T15:21:25Z zulu_inuoe: phoe: I thought it was all the values 2017-08-25T15:21:37Z zulu_inuoe: "otherwise, the values returned by the result-forms." 2017-08-25T15:22:39Z zulu_inuoe: Just tested it. You're right. Apparently it is only the value of the last form 2017-08-25T15:22:59Z Suzuran quit (Ping timeout: 246 seconds) 2017-08-25T15:22:59Z Suzuran42 is now known as Suzuran 2017-08-25T15:23:19Z zulu_inuoe: "the result-forms are evaluated in order as an implicit progn" 2017-08-25T15:23:20Z marvin2: phoe so each variable has its own step, plus an additional loop step 2017-08-25T15:23:31Z marvin2: what a weird control structure 2017-08-25T15:25:04Z easye joined #lisp 2017-08-25T15:25:15Z phoe: zulu_inuoe: you are right 2017-08-25T15:25:23Z phoe: (do () (t (values 1 2 3))) ;=> 1 2 3 2017-08-25T15:25:26Z phoe: I was wrong 2017-08-25T15:25:43Z phoe: marvin2: surprisingly, loop-steps are often skipped in loops that don't require them 2017-08-25T15:25:51Z zulu_inuoe: Well, no we're both wrong haha. It is the last (values) of the last form 2017-08-25T15:26:08Z phoe: often the only thing that you need in loops are updating the variables and checking the test 2017-08-25T15:26:29Z zulu_inuoe: (do () (t (print "hello world!") (values 1 2 3))) => 1 2 3 2017-08-25T15:26:43Z TDT joined #lisp 2017-08-25T15:27:46Z shka quit (Quit: Konversation terminated!) 2017-08-25T15:31:36Z sjl joined #lisp 2017-08-25T15:34:34Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-25T15:35:14Z DeadTrickster joined #lisp 2017-08-25T15:35:25Z oleo: 1 2017-08-25T15:35:27Z oleo: 2 2017-08-25T15:35:28Z oleo: 3 2017-08-25T15:35:34Z phoe fanfares 2017-08-25T15:42:36Z TDT quit (Quit: TDT) 2017-08-25T15:45:12Z lambda-smith quit (Quit: Konversation terminated!) 2017-08-25T15:50:44Z slyrus joined #lisp 2017-08-25T15:52:23Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-25T15:57:57Z BW^- quit (Ping timeout: 246 seconds) 2017-08-25T15:58:04Z lambda-smith joined #lisp 2017-08-25T15:58:37Z smokeink quit (Ping timeout: 252 seconds) 2017-08-25T16:00:03Z aeth: I use do. It's not that hard once you learn it. It's just a let that updates itself each step. do* is just a let* that updates itself each step. 2017-08-25T16:00:05Z zacts quit (Ping timeout: 246 seconds) 2017-08-25T16:00:35Z aeth: The only confusing part, then, is the termination and return part. 2017-08-25T16:01:30Z knusbaum quit (Quit: Leaving.) 2017-08-25T16:02:22Z knusbaum joined #lisp 2017-08-25T16:02:33Z aeth: You can even use it basically like a let except with a (t ...) around the let body: (do ((foo 42) (bar 37)) (t (values foo bar))) 2017-08-25T16:02:37Z aeth: (Don't do that.) 2017-08-25T16:04:50Z aeth: A properly-written do often needs no body, if it is functional. The form above is one useless example. The body is mostly useful for side effects, when setf makes the iteration more readable. 2017-08-25T16:05:22Z antoszka: aeth: can you show an example please? 2017-08-25T16:05:58Z pjb: zulu_inuoe: try to use do* instead of do. Often it will do better what you want. 2017-08-25T16:06:21Z aeth: Just modifying my example to have it run 3 times: (do ((foo 42 (- foo 2)) (bar 37 (1+ bar))) ((= bar 40) (values foo bar))) 2017-08-25T16:07:14Z aeth: This will increment bar to 40 (i.e. 3 times) so foo will be 42-6 (i.e. 36). The final return value will be (values 36 40) 2017-08-25T16:07:20Z pjb: zulu_inuoe: consider (loop :while :do ) vs. (while ) : it may be good to define a set of simple iteration macros. while, until, repeat, for, etc… 2017-08-25T16:07:53Z fmeyer quit (Quit: WeeChat 1.6) 2017-08-25T16:08:30Z aeth: Most of the time I use do, though, it's as a macro target. 2017-08-25T16:08:44Z pjb: marvin2: you're wrong, in do, the test-form is a END-test-form: it's a stop condition! 2017-08-25T16:09:07Z pjb: do loops are until loops, not while loops. 2017-08-25T16:09:39Z pjb: (also, writing those simple looping macros, expanding to do/do* is a good exercise to understand how things work…) 2017-08-25T16:10:28Z damke joined #lisp 2017-08-25T16:10:41Z aeth: Right, in CL almost all iteration (in most implementations) will ultimately become let + tagbody + go, like do expands to in most implementations. Expanding it to do is just a time saver with a more human readable intermediate step. 2017-08-25T16:11:11Z aeth: I'd much rather deal with do than deal with tagbody, although I'll probably read both forms (expanding to do, and expanding that do to tagbody) just to be sure. 2017-08-25T16:11:42Z aeth: goto considered useful 2017-08-25T16:11:47Z pjb: tagbody is funny to use sometimes. I mean, assembly programming has its charm! :-) 2017-08-25T16:12:22Z pjb: eg. writing a loop with tagbody by starting (tagbody (go :test) :loop …) to optimize out one jump per iteration and stuff like that :-) 2017-08-25T16:13:04Z damke_ quit (Ping timeout: 240 seconds) 2017-08-25T16:13:10Z aeth: And all do forms have an implicit tagbody (although your editor probably only supports gotos and labels properly in tagbody, not do-foo and prog) so they really are intended to be useful as an intermediate form. 2017-08-25T16:13:10Z smazga joined #lisp 2017-08-25T16:13:43Z aeth: You never have to drop down to tagbody if you're using do, because you can put some confusing goto in do itself (but don't do this unless you're writing a macro that targets do, please) 2017-08-25T16:14:14Z pjb: you can profit from the tagbody in looping macros to do continue, retry, etc. 2017-08-25T16:14:44Z aeth: tagbody is evidence that CL is still, in 2017, the only serious Lisp for general purpose high performance uses. 2017-08-25T16:14:46Z zacts joined #lisp 2017-08-25T16:14:51Z aeth: Every other Lisp wants to be a scripting language. 2017-08-25T16:15:06Z pjb: (do (…) (…) :retry … (cond ((donep) (go :continue)) ((failedp) (go :retry))) … :continue) 2017-08-25T16:18:24Z warweasle joined #lisp 2017-08-25T16:21:46Z knusbaum quit (Quit: Leaving.) 2017-08-25T16:25:08Z damke_ joined #lisp 2017-08-25T16:26:16Z hylisper joined #lisp 2017-08-25T16:27:24Z damke quit (Ping timeout: 240 seconds) 2017-08-25T16:31:40Z hylisper quit (Quit: leaving) 2017-08-25T16:33:49Z hhdave quit (Ping timeout: 252 seconds) 2017-08-25T16:35:34Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-25T16:36:00Z DeadTrickster joined #lisp 2017-08-25T16:41:44Z jasom: zulu_inuoe: fix for the bug should be in the next version of sbcl 2017-08-25T16:42:18Z jasom: zulu_inuoe: https://github.com/sbcl/sbcl/commit/585853373a4b43aba7ac740f1fe50bd622f673eb 2017-08-25T16:44:50Z Fare: aeth, CL is a somewhat decent scripting language, now 2017-08-25T16:45:00Z Fare: I hope gerbil will be too, soon 2017-08-25T16:48:13Z m00natic quit (Remote host closed the connection) 2017-08-25T16:49:35Z TETOFILO joined #lisp 2017-08-25T16:50:43Z TETOFILO left #lisp 2017-08-25T16:53:52Z warweasle quit (Quit: gotta go...) 2017-08-25T16:54:14Z jasom: Fare: hmm did you get my memo asking about CL conditions and using them for asynchronous aborts? 2017-08-25T16:54:45Z jasom doesn't see minion sending it out 2017-08-25T16:56:21Z jasom: I'm not sure how what you're doing in Gerbil is fundamentally different from restarts that escape the critical section and resignal, allowing higher levels of abstractions to do the same. 2017-08-25T16:57:32Z neoncontrails joined #lisp 2017-08-25T16:58:31Z Fare: jasom: I don't remember getting that memo. Did you read my rant on the gambit-list ? 2017-08-25T16:58:43Z jasom: Fare: I think so 2017-08-25T16:58:57Z jasom: I read a rant about asynchronous aborts, not sure if I read sufficiently far into the thread 2017-08-25T17:00:20Z Fare: I'm sure you could do it with restarts, as long as lower-level failures were handled, e.g. failures in the middle of memory allocation, in the middle of having allocating a resource and binding it to a variable that the user will watch with his own finalizers/restart/whatever 2017-08-25T17:01:08Z Fare: say I do a (let ((x (open ...))) ...) 2017-08-25T17:01:34Z damke_ quit (Read error: Connection reset by peer) 2017-08-25T17:01:39Z Fare: what if the async abort happens after the open, before the binding to x, and before any unwind-protect inside that let? 2017-08-25T17:01:54Z jasom: ah 2017-08-25T17:02:02Z jasom: I see 2017-08-25T17:02:41Z damke_ joined #lisp 2017-08-25T17:03:32Z Fare: java has try-with-resources pattern... but it would have to be extended to handle atomic return from the function that provides the resource 2017-08-25T17:04:06Z jasom: so each binding construct would have to ensure that code in the bindings either completely finishes or cleans-up after itself 2017-08-25T17:04:23Z phoe: how can that restart know when the async abort happened? can it analyze the stack or something? 2017-08-25T17:04:41Z Fare: I wonder how Rust does it. But then again, I don't think even Rust has async abort. I hear the Swift guys are interested in it... good luck to them, I'm curious what they come up with. 2017-08-25T17:04:43Z jasom: phoe: the full stack is available for all condition handlers in lisp 2017-08-25T17:04:51Z phoe: like, before/during/after the open, before/after binding to x, before/during the unwind-protect... 2017-08-25T17:05:17Z phoe: jasom: yes, but things like LET and UNWIND-PROTECT are not a part of the stack. 2017-08-25T17:05:27Z jasom: phoe: all binding forms would need to support this 2017-08-25T17:05:30Z Fare: But most importantly: what is atomic at one level isn't at another level 2017-08-25T17:05:54Z jasom: Fare: which is why the condition needs to be resignaled once it's safe at the current level of abstraction 2017-08-25T17:05:55Z phoe: jasom: yes, it would be required for them to provide much more fine-grained information to the condition system 2017-08-25T17:06:10Z Fare: to kill a thread without killing the larger program, you need to sync it to an atomic transaction *at the highest level* that any other thread cares for. 2017-08-25T17:06:59Z jasom: phoe: not really; the dumbest way would be to not allow any interruptions until the binding happens, once the form has begun to be evaluated; blocking calls should defer this until no more syscalls are required. 2017-08-25T17:07:05Z Fare: jasom: exactly. So you must first get everything right at the low-level, then have a mechanism to let the user percolate the information up the abstraction tower 2017-08-25T17:07:25Z jasom: Fare: conditions are sufficient for the latter, but work would need to be done for the former in CL. 2017-08-25T17:07:27Z Jesin quit (Quit: Leaving) 2017-08-25T17:08:03Z phoe: jasom: so you enable interrupts inside (open), disable them once you get the value, bind the value to x, enable interrupts again? 2017-08-25T17:08:04Z Fare: the "atomic return" issue suggests that atomicity does not follow scope. 2017-08-25T17:08:13Z Fare: at least, not trivially 2017-08-25T17:08:18Z jasom: And it sounds like Gambit already does a lot at the low level, compared to the typical CL implementation 2017-08-25T17:08:29Z Fare: yes, that's one big reason I adopted Gambit 2017-08-25T17:09:21Z Fare: phoe: remember, there are now several levels of interruption, one for each level of abstraction. 2017-08-25T17:09:44Z Fare: phoe: and I don't know how to keep higher-order functions modular in presence of that. 2017-08-25T17:09:54Z jasom: phoe: at the low level, you want two things to happen with (let ((x (open))) ...) 1: either x is bound to the open file, or the file is not open. 2: We don't disable interrupts for the entire open call, which could take an unbounded amount of time. 2017-08-25T17:11:05Z phoe: hm hm. 2017-08-25T17:11:10Z neoncontrails quit (Remote host closed the connection) 2017-08-25T17:12:00Z Jesin joined #lisp 2017-08-25T17:12:12Z jasom: so one way would be the following: 1) disable interrupts 2) have open establish an unwind-protect 3) inside that unwind-protect enable interrupts 4) disable interrupts just before leaving the unwind protect 5) establish the binding 6) reenable interrupts 2017-08-25T17:12:38Z jasom: however, this still leaves the issue of (let ((x (open))) (unwind-protect FOO (close x))) as having an unsafe region 2017-08-25T17:13:31Z jasom: wheras (let (x) (uwind-protect (progn (setf x (open)) ...) (when x (close x))) would be safe 2017-08-25T17:14:08Z jasom: but it's only safe if similar work is done to setf to make sure that it either completes, or the side-effects of the value form are not visible. 2017-08-25T17:14:25Z jasom: (for some definition of "visible") 2017-08-25T17:15:14Z jasom: what if "open" is opening a device, and you must send shutdown codes to the device to ensure that it is back in a sane state; then just closing the file when interruptied is not okay... 2017-08-25T17:15:28Z smokeink joined #lisp 2017-08-25T17:15:31Z phoe: sounds like another case for unwind-protect, sending the shutdown codes. 2017-08-25T17:16:11Z jasom: phoe: right, but now open must be slightly different; you need to finish the open any time that the underlying syscall succeeds. 2017-08-25T17:16:31Z phoe: so whenever the syscall succeeds, open must also succeed. 2017-08-25T17:16:54Z jasom: phoe: correct, and whenever open is in a binding or assignment, if open succeeds, so must the binding/assignment 2017-08-25T17:16:57Z phoe: OR if the syscall succeeds but open fails after that but before it returns, a handler must close the device. 2017-08-25T17:17:11Z sellout- quit (Quit: Leaving.) 2017-08-25T17:17:20Z sellout- joined #lisp 2017-08-25T17:17:31Z jasom: phoe: nope, that's possibly insufficient; OPEN doesn't know about the higher levels, so it should succeed and then pass the buck for handling the signal 2017-08-25T17:17:46Z phoe: succeed and pass the buck for handling the signal? 2017-08-25T17:17:52Z jasom: then assignment doesn't know about higher levels, so it should succeed and then pass the buck similarly 2017-08-25T17:18:02Z phoe: wait a second 2017-08-25T17:18:18Z phoe: I'm talking about the moment between issuing a syscall and returning from open 2017-08-25T17:18:32Z phoe: if open fails at that moment, then how can it succeed nonetheless? 2017-08-25T17:18:44Z phoe: and how can the outer code know if the success is a successful success or a failed success? 2017-08-25T17:19:06Z jasom: phoe: let's call the open syscal "sysopen" for clarity; if "sysopen" completes, this imposes side-effects of unknown importance on the higher levels 2017-08-25T17:19:22Z jasom: so whenever sysopen completes, the entire OPEN function should complete 2017-08-25T17:19:23Z phoe: jasom: I got it. 2017-08-25T17:20:10Z jasom: similarly (setf FOO BAR) must complete if BAR completes 2017-08-25T17:20:59Z jasom: if you impose both of those, then (let (x) (uwind-protect (progn (setf x (open)) ...) (when x (close x))) will be safe regardless of when you get interrupted. 2017-08-25T17:21:31Z sellout- quit (Ping timeout: 240 seconds) 2017-08-25T17:21:43Z jasom: There are a lot of moving parts, so when Fare tossed out the phrase "safe asynchronous aborts" casually in a list of what he liked about gerbil, it got my attention. 2017-08-25T17:22:42Z phoe: yes, there are a lot of them. I needed a moment to make what seems like a working model of that. 2017-08-25T17:23:09Z Fare: I didn't claim that gerbil had it just yet 2017-08-25T17:23:16Z phoe: so you are talking only about atomic bindings and assignments. 2017-08-25T17:23:28Z jasom: phoe: that's just one level of abstraction 2017-08-25T17:23:44Z phoe: But you can reduce that case to assignments only by transforming (let ((foo bar)) ...) into (let (foo) (setf foo bar) ...) 2017-08-25T17:23:56Z phoe: jasom: yes, and I think I understood that level of abstraction so far. 2017-08-25T17:24:11Z jasom: phoe: each level of abstraction needs to ensure that any visible side-effects either 100% happen or 100% don't because otherwise it's not a solid foundation to build upon 2017-08-25T17:24:17Z jasom: phoe: that transformation is insufficient 2017-08-25T17:25:05Z phoe: jasom: wait, is it? 2017-08-25T17:25:09Z jasom: (let ((foo bar)) (unwind-protect ...)) needs to be transformed into (let (foo) (unwind-protect (setf foo bar) ...)) 2017-08-25T17:25:23Z phoe: oh, let me think about it for a second 2017-08-25T17:26:35Z phoe: I don't get it yet 2017-08-25T17:26:43Z jasom: if you allow asynchronous aborts, then (ESTABLISH-BINDING (UNWIND-PROTECT )) has an unsafe point between the binding established and the unwind-protect being established 2017-08-25T17:26:45Z phoe: why do you stuff the assignment into the inner unwind-protect? 2017-08-25T17:27:14Z neoncontrails joined #lisp 2017-08-25T17:27:23Z jasom: (let ((X Y)) (unwind-protect Z (cleanup X))) <-- race condition where X might not be cleaned-up 2017-08-25T17:28:03Z vlatkoB_ joined #lisp 2017-08-25T17:28:07Z phoe: I see. 2017-08-25T17:28:34Z phoe: I'm confusing the UNWIND-PROTECT from the first LET with the UNWIND-PROTECT from the second LET because they do different things. 2017-08-25T17:28:42Z phoe: Or seem to. 2017-08-25T17:28:58Z phoe: The first one does not care about assignment, while the second one does. 2017-08-25T17:28:58Z jasom: and this can't be solved in the general case in a sane manner because consider (let ((x y) (z (loop-forever))) (unwind-protect ... (cleanup x)) 2017-08-25T17:29:22Z phoe: but that code will loop anyway 2017-08-25T17:29:29Z nirved quit (Quit: Leaving) 2017-08-25T17:29:42Z jasom: phoe: right, and then you interrupt it, and you never reached the unwind-protect so X is left not cleaned up 2017-08-25T17:30:16Z phoe: welp. so what do you do, a tower of unwind-protects that establishes a cleanup for each bound variable? 2017-08-25T17:30:46Z FreeBirdLjj joined #lisp 2017-08-25T17:31:07Z phoe: (let (x z) (unwind-protect (progn (setf x y) ...) (cleanup x)), where ... is (unwind-protect (progn (setf z (loop-forever))) (hypothetic-cleanup z))? 2017-08-25T17:31:26Z phoe: the X-cleanup will be fired in this case 2017-08-25T17:31:44Z phoe: but gah, we get LET* instead of LET! 2017-08-25T17:31:55Z vlatkoB quit (Ping timeout: 260 seconds) 2017-08-25T17:32:08Z phoe: when we consider the bindings to be parallel, we get undefined state "between" the bindings 2017-08-25T17:32:23Z phoe: for LET*, this is doable, for LET... not so much 2017-08-25T17:32:23Z jasom: phoe: that's a *very* good question that I don't have an answer for, except rewriting code so that you don't ever rely on a let over an unwind-protect... My preferred style in not lisp things is to have the equivalent of a "with-foo" type form that allows it to escape the scope, and then just not ever use let for binding values with side-effects. 2017-08-25T17:33:41Z phoe: jasom: actually let's talk about a different thing for a moment. 2017-08-25T17:33:44Z damke_ quit (Ping timeout: 240 seconds) 2017-08-25T17:33:44Z jasom: C++ lets you do this because the destructor is *always* called when the value leaves scope, so an unwind-protect is not needed 2017-08-25T17:33:56Z jasom: no try/catch/finally requied 2017-08-25T17:34:06Z phoe: what's the main *practical* difference between LET and LET*? 2017-08-25T17:34:26Z phoe: I mean, why can't you always replace LETs with LET*s? 2017-08-25T17:34:39Z jasom: phoe: the order the bindings are established in (not the order that the value forms are evaluated in) 2017-08-25T17:34:50Z jasom: you can replace let with let* 2017-08-25T17:34:54Z karswell_ joined #lisp 2017-08-25T17:35:24Z phoe: I see. 2017-08-25T17:35:39Z phoe: So, once we have a PROTECTED-LET*, we can artificially construct a PROTECTED-LET. 2017-08-25T17:35:48Z jasom: (let ((foo 1) (bar 2)) => (let* ((#:foo-gensym 1) (#:bar-gensym 2) (foo #:foo-gensym) (bar #:bar-gensym)) 2017-08-25T17:35:59Z phoe: Yes, exactly. 2017-08-25T17:36:20Z phoe: So once we solve the case for LET*, which is solvable with a tower of unwind-protects, we solve the case for LET. 2017-08-25T17:36:43Z phoe: so if the tower is strong enough to survive this, then it seems we have a solution. 2017-08-25T17:36:51Z phoe: for binding and assignment. 2017-08-25T17:36:57Z jasom: right, but LET doesn't know what to do for cleanup, so we need to combine LET and UNWIND-PROTECT into a single form 2017-08-25T17:37:12Z phoe: that's why I said above, PROTECTED-LET 2017-08-25T17:37:32Z phoe: d'oh, wait a second 2017-08-25T17:37:55Z phoe: https://github.com/phoe/gateway/blob/577c822b869118c762cf3865ad4aa0a5f0d6a0f1/utils/macros.lisp#L48 2017-08-25T17:38:20Z phoe: this, except modify the LET on line 53 not to do the assignment 2017-08-25T17:38:21Z drcode quit (Read error: Connection reset by peer) 2017-08-25T17:39:00Z phoe: anyway - this is macro-implementable 2017-08-25T17:39:10Z jasom: so (protected-let ((X Y Z)) W) => (let ((X #:PL1)) (unwind-protect (setf X Y) (progn W) (unless (eq X #:PL1) Z)) 2017-08-25T17:39:19Z zulu_inuoe: jasom: Sweet! Great to know. 2017-08-25T17:39:43Z shka_ joined #lisp 2017-08-25T17:39:48Z jasom: phoe: but it then still requires all side-effecting standard library functions to be rewritten 2017-08-25T17:39:59Z phoe: jasom: that's another level of abstraction 2017-08-25T17:40:08Z jasom: phoe: right, a lower-level 2017-08-25T17:40:18Z phoe: well, one can do it 2017-08-25T17:40:24Z jasom: but if it's wrong anywhere, it's wrong everywhere. 2017-08-25T17:40:31Z malice joined #lisp 2017-08-25T17:41:05Z phoe: and basically implement a PROTECTED-COMMON-LISP package that somewhat-portably reimplements the language in that manner. 2017-08-25T17:41:25Z phoe: but then again, we're dealing with stuff on the boundary of the CL image and the operating system, so I don't think much of it can be done in actual portable CL. 2017-08-25T17:41:32Z phoe: most of that stuff will be implementation-dependent. 2017-08-25T17:41:49Z aeth: What exactly is this for? 2017-08-25T17:41:51Z jasom: And I understand now; Fare's point is that Gambit's preexisting ability to move thunks at nearly any point in execution means it's closer to being correct than most other lisp implementations 2017-08-25T17:42:12Z phoe: but the upside is, if your package does (:use :protected-cl) instead of (:use :cl), you might be much safer. 2017-08-25T17:42:33Z jasom: phoe: until you accidentally call another package that does (:use :cl) 2017-08-25T17:42:36Z phoe: and if you dare to recompile all packages that (:use :cl) to (:use :protected-cl) instead, woohoo, oh boy. 2017-08-25T17:42:40Z phoe: jasom: exactly my thoughts 2017-08-25T17:42:57Z phoe: you'll need to recompile everything to use that. 2017-08-25T17:43:03Z drcode joined #lisp 2017-08-25T17:43:28Z jasom: But the existence of let over unwind-protect as a code idiom means just fixing the implementation of CL is necessary, but not sufficient 2017-08-25T17:43:39Z knusbaum joined #lisp 2017-08-25T17:44:36Z phoe: jasom: that code idiom alone is replaceable with a macro 2017-08-25T17:45:08Z phoe: it's the other stuff that I am more worried about, the implementation-dependent one. 2017-08-25T17:46:10Z phoe: jasom: it's amusing 2017-08-25T17:46:16Z phoe: it's a lot of work, I admit 2017-08-25T17:46:42Z phoe: but it's funny that one can just modify the implementation, write some portable CL 2017-08-25T17:46:59Z phoe: and boom, your existing CL code is suddenly async-abort-proof 2017-08-25T17:47:17Z jasom: what do you mean by "that code idiom alone is replaceable with a macro" 2017-08-25T17:47:24Z phoe: let over unwind-protect 2017-08-25T17:47:35Z jasom: you need to rewrite the code, it's not possible to automatically transform it. 2017-08-25T17:48:14Z phoe: jasom: uh wait a second 2017-08-25T17:48:28Z phoe: you basically need to turn LETs into PROTECTED-LETs and add the cleanup forms. 2017-08-25T17:48:36Z smokeink quit (Ping timeout: 255 seconds) 2017-08-25T17:49:36Z aeth: I think at this point it would just be easier to treat your variant of CL as a separate programming language and forget about translating the libraries, just treating them as foreign libraries. 2017-08-25T17:49:37Z sellout- joined #lisp 2017-08-25T17:50:03Z phoe: huh, sounds correct. 2017-08-25T17:50:08Z jasom: phoe: right, the transformation from LET into PROTECTED-LET can't be done automatically 2017-08-25T17:50:14Z phoe: correct. 2017-08-25T17:51:01Z jasom: aeth: the big downside to treating them as foreign libraries is you lose a lot of asynchronity; you'd need to disable interruption for the entirety of the forign code being run. 2017-08-25T17:51:26Z aeth: Popular libraries could be handled specially. 2017-08-25T17:51:32Z aeth: That reduces the problem to handling 20 or so 2017-08-25T17:51:38Z jasom: and unbounded time with interrupts disabled means you aren't safe 2017-08-25T17:52:02Z aeth: If you're going to make your own CL variant, you could even make things like alexandria and cl-ppcre core to the language. 2017-08-25T17:52:06Z jasom: right, this would add a path to gradual adoption 2017-08-25T17:52:09Z phoe: aeth: Lisp isn't popular as a language, therefore its libraries aren't popular either. I just reduced the problem to 0. 2017-08-25T17:52:12Z phoe ducks 2017-08-25T17:52:42Z malice: let's just add transpiler JS-to-new-CL and we're good 2017-08-25T17:52:42Z aeth: phoe: Except one can assume that the same libraries would be popular no matter the size of Lisp, unless the size of Lisp causes new libraries that are even better. 2017-08-25T17:53:04Z borei joined #lisp 2017-08-25T17:53:09Z aeth: malice: JS to CL wouldn't work because fast JS relies on JIT magic to be decently performant. 2017-08-25T17:53:25Z jasom: there already exists a JS to CL compiler 2017-08-25T17:53:38Z phoe: jasom: wait, which one? 2017-08-25T17:53:46Z jasom: https://github.com/akapav/js 2017-08-25T17:53:52Z aeth: Without JIT magic, you're left with a slow language with a handful of very basic types that makes everything slow (like using double-floats for all numbers... JIT magic if it can prove it can turn those into integers) 2017-08-25T17:54:07Z phoe: woah 2017-08-25T17:54:35Z knusbaum quit (Quit: Leaving.) 2017-08-25T17:55:53Z p_l: IIRC, the naive JS->CL compilers used to be some of the fastest options out there before V8, and you could probably abuse the recompilation more (especially if willing to use implementation-specific bits) 2017-08-25T17:56:17Z knusbaum joined #lisp 2017-08-25T17:58:26Z neoncont_ joined #lisp 2017-08-25T17:59:26Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-25T17:59:34Z jasom: to quote Fare: "Asynchronous abort of user-land threads is HARD." 2017-08-25T18:01:09Z malice: Is asking about preferences in scope of the channel? 2017-08-25T18:01:20Z jasom: malice: if they involve CL, yes 2017-08-25T18:01:35Z malice: I'll give it a shot. 2017-08-25T18:01:50Z malice: What is in your opinion a CL's "killer feature"(or two)? 2017-08-25T18:01:57Z malice: I'm wondering what makes it really good. 2017-08-25T18:02:04Z jasom: malice: SLIME 2017-08-25T18:03:23Z malice: jasom: and why :) I know that SLIME provides nice level of interactivity and provides (quite good) interface for many CL's features that are otherwise a bit harder to use, but I've seen someone talk in here about smalltalk being more interactive 2017-08-25T18:03:25Z jasom: malice: though really it's a bag of features; I can compile a function, profile it, get the disassembly, with instruction-level profiling, modify the function, recompile it, run it again. All in about a minute, without ever waiting for anything (the only time I'm waiting is when I'm collecting profiling data, which is usually seconds tops) 2017-08-25T18:03:45Z Shinmera: malice: There's no killer feature, it's just the local optimum of things I prefer. 2017-08-25T18:04:00Z jasom: malice: smalltalk and lisp have historically had a lot of cross-pollination as far as tooling goes. 2017-08-25T18:04:15Z malice: Shinmera: you were programming in PHP before, right? 2017-08-25T18:04:31Z Shinmera: malice: PHP, Java, JS, C, GML. 2017-08-25T18:04:55Z jasom: the other thing is that CL mostly gets out of my way, and when it does get in my way, I can change it to not be in my way anymore. 2017-08-25T18:04:57Z malice: jasom: do you profile with SBCL's statistical compiler? I also haven't heard of instruction-level profiling, care to explain a bit more? 2017-08-25T18:05:16Z jasom: malice: if you use sb-sprof, then disassemble you get instruction-level profiling output 2017-08-25T18:05:30Z malice: Shinmera: any dramatic differences? What made you learn CL? 2017-08-25T18:05:37Z Shinmera: malice: Curiosity. 2017-08-25T18:05:44Z Shinmera needs to head off now 2017-08-25T18:05:52Z malice: thanks for input :) 2017-08-25T18:07:56Z aeth: malice: consistent syntax, real macros (follows from the syntax), good representation of numbers, good performance. Also, yes, fast recompiles, the SLIME REPL, and disassemble are good. 2017-08-25T18:08:09Z aeth: Multiple return values are overlooked, but they're nice, too. 2017-08-25T18:08:31Z malice: Right. Althugh they aren't integrated enough into the language imho. 2017-08-25T18:08:31Z lambda-smith: Not kiddings about SLIME. It's so good, it makes programming in other languages (even other Lisp dialects) feels like a chore. 2017-08-25T18:08:46Z aeth: The only languages that come close are Schemes, but they usually fail on performance and the practical development side of things (i.e. SLIME). 2017-08-25T18:09:41Z aeth: I also prefer how CL handles sequences to Scheme. 2017-08-25T18:10:02Z lambda-smith: aeth: Scheme really needs a better IDE. Geiser is good, but still no where near SLIME. 2017-08-25T18:10:14Z lambda-smith: Also, the fact that Geiser is buggy as hell doesn't help either 2017-08-25T18:12:01Z aeth: When I have time to put in the month or so to get cl-scheme working, I wonder how I should get its REPL working. Geiser or maybe even try SLIME? Apparently one Scheme can already work with SLIME. 2017-08-25T18:12:39Z malice: Wouldn't SLIME be that good without restarts though? 2017-08-25T18:12:43Z drcode quit (Read error: Connection reset by peer) 2017-08-25T18:12:56Z phoe: without restarts you would have no debugger 2017-08-25T18:13:11Z phoe: or rather, you'd get the stack traces and everything, but you'd lose the interactivity 2017-08-25T18:13:27Z phoe: aeth: go for a SLIME server fired on a different port. 2017-08-25T18:13:37Z lambda-smith: aeth: cl-scheme? What's that? 2017-08-25T18:14:42Z aeth: lambda-smith: A compiler (transpiler?) and (if I get to it) interpreter of Scheme written in CL, sort of like Pseudoscheme but not pseudo and r7rs-small instead of r4rs. 2017-08-25T18:15:00Z dcluna quit (Read error: Connection reset by peer) 2017-08-25T18:15:04Z lambda-smith: aeth: Oooh! Sounds nice! 2017-08-25T18:15:24Z lambda-smith: Be sure to share when you get it up and running. 2017-08-25T18:15:35Z aeth: Hygienic macros and continuations are the tricky parts, as well as the lack of portable lexical scope globals in CL. 2017-08-25T18:15:51Z aeth: For continuations, I'm probably going to just use CL lambdas with continuation passing style. 2017-08-25T18:16:14Z aeth: Ideally, anything in Quicklisp should be runnable within cl-scheme with some wrapping. 2017-08-25T18:16:30Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-25T18:17:04Z DeadTrickster joined #lisp 2017-08-25T18:17:04Z lambda-smith: Wow, you intend to implement even continuations? 2017-08-25T18:17:26Z neoncontrails joined #lisp 2017-08-25T18:17:54Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-25T18:18:00Z neoncont_ quit (Ping timeout: 260 seconds) 2017-08-25T18:18:13Z aeth: The wrapping would be for continuations as well as the separate '() and #f 2017-08-25T18:18:50Z dieggsy quit (Remote host closed the connection) 2017-08-25T18:19:19Z lambda-smith: Interesting 2017-08-25T18:19:38Z dcluna joined #lisp 2017-08-25T18:19:47Z aeth: lambda-smith: I already have many functions written in CPS and tested with #'identity, e.g. (cl-scheme::%s-+ #'identity 2 3) => 5 2017-08-25T18:20:08Z aeth: (cl-scheme::%s-= #'identity 2 3) => :FALSE 2017-08-25T18:20:09Z head|cat_ quit (Quit: WeeChat 0.4.2) 2017-08-25T18:20:28Z lambda-smith: So you are going to implement cl-scheme entirely in a continuation passing style? 2017-08-25T18:21:00Z EvW quit (Ping timeout: 255 seconds) 2017-08-25T18:21:29Z aeth: Doing some analysis on it could remove some of the performance disadvantages with things like e.g. (+ 1 2 (/ 3 4)) 2017-08-25T18:22:00Z aeth: But I think even written mostly naively cl-scheme on SBCL should beat most existing Schemes because SBCL is really fast. 2017-08-25T18:23:16Z phoe: geez 2017-08-25T18:23:21Z aeth: So I basically just need to complete it (hygienic macros and the global environment will be tricky), get the FFI working both ways, get the REPL working, and benchmark it and see. 2017-08-25T18:23:22Z ryanwatkins joined #lisp 2017-08-25T18:23:26Z phoe: "the fastest scheme? CL" 2017-08-25T18:23:30Z lambda-smith: lol 2017-08-25T18:23:35Z lambda-smith: Sounds nifty :P 2017-08-25T18:23:36Z aeth: Well, #sbcl does all the hard work. I piggyback on it. 2017-08-25T18:23:45Z phoe: yes, but I can imagine you finishing it and then going to troll all the #scheme people 2017-08-25T18:23:57Z phoe facepalms 2017-08-25T18:24:20Z aeth: Iirc, jcowan actually likes the idea. 2017-08-25T18:24:30Z aeth: It's not really trolling, it's bootstrapping a Scheme. 2017-08-25T18:24:44Z aeth: In fact, if Quicklisp interoperability works, it bootstraps a very large library ecosystem, too. 2017-08-25T18:25:05Z lambda-smith: Yeah, maybe this will be what finally united CL and Scheme communities :D 2017-08-25T18:25:06Z phoe: aeth: I know it's not trolling, just, in the context of the great scheme-or-lisp debate... 2017-08-25T18:25:22Z lambda-smith: phoe: Ugh, I'm tired of the rivalry 2017-08-25T18:26:18Z aeth: My ultimate goal is to use CL (with reader macros!) as a multi-language platform, not unlike Racket or (heh) JavaScript. 2017-08-25T18:26:34Z lambda-smith: aeth: Now that's a goal I can get behind. 2017-08-25T18:27:10Z lambda-smith: I know Racket also has the same goal, but I really hate Scheme/Racket hygenic macros... 2017-08-25T18:27:11Z marvin2 quit (Ping timeout: 240 seconds) 2017-08-25T18:27:43Z aeth: Certain CL implementations could in the long run be modified to make certain things faster, perhaps even e.g. continuations. 2017-08-25T18:28:14Z aeth: Or improved support for environments, that's where a lot of hackiness comes from. 2017-08-25T18:28:30Z lambda-smith: aeth: I dream of that day. CL with a first-class support for continuation would be golden 2017-08-25T18:28:49Z lambda-smith: (of course, it might also upset a lot of CL people, but well... :P) 2017-08-25T18:29:03Z aeth: Well, it would afaik be more like second-class, but transpiling languages (including perhaps a CL subset language) could treat it as first class. 2017-08-25T18:29:26Z lambda-smith: that'd still be an improvement 2017-08-25T18:30:32Z malice: jasom: wow! 2017-08-25T18:30:40Z malice: I didn't know that disassembly and sb-sprof works this way 2017-08-25T18:30:40Z aeth: Going much further than Scheme would be tricky, too. Some (e.g. C) require low-level things. Others (e.g. JS) require a JIT to be performant. Although maybe CL is powerful enough to have a JIT transpiler? 2017-08-25T18:30:44Z malice: I've just tested it and it looks great. 2017-08-25T18:30:49Z malice: Thanks so much! 2017-08-25T18:31:15Z _death: every time I see this nonword "transpiling" I feel an urge to go to a different buffer.. 2017-08-25T18:31:16Z lambda-smith: malice: Do you know about C-c A-d? 2017-08-25T18:31:31Z phoe: lambda-smith: A-d? 2017-08-25T18:31:47Z malice: No, I don't. 2017-08-25T18:31:57Z aeth: _death: How else am I supposed to distinguish between writing a native code compiler in (SB)CL and writing a compiler *to* (SB)CL that then uses (SB)CL's native compiler? 2017-08-25T18:32:14Z lambda-smith: phoe: Sorry, Meta 2017-08-25T18:32:56Z lambda-smith: malice: It's a SLIME shotcut that let you dissamble a function that you current has the cursor on; try it. 2017-08-25T18:33:12Z phoe: lambda-smith: you know you've become a lisper when you no longer recognize Alt as a keyboard key 2017-08-25T18:33:20Z _death: aeth: context, perhaps.. 2017-08-25T18:33:40Z pjb: phoe: I have both A- and M- (and also H- and s-) on my keyboards… 2017-08-25T18:33:49Z pjb: xmodmap is nice. 2017-08-25T18:34:23Z lambda-smith: _death: s/transpilling/compilling amir? 2017-08-25T18:34:48Z malice: Nice. 2017-08-25T18:34:53Z malice: Thanks, lambda-smith 2017-08-25T18:34:53Z TCZ joined #lisp 2017-08-25T18:35:02Z Bock quit (Ping timeout: 255 seconds) 2017-08-25T18:35:30Z lambda-smith: malice: np, I was pretty excited when I found out about that too 2017-08-25T18:35:40Z _death: it's just a personal peeve.. I see no reason to import javascript jargon for stuff that computer science has managed to discuss just fine for many decades 2017-08-25T18:36:22Z phoe: compiling JS to CL? 2017-08-25T18:36:33Z phoe: "JS-to-CL compiler" sounds completely valid to me 2017-08-25T18:36:40Z phoe: so you can then compile CL into whatever you want 2017-08-25T18:36:55Z _death: I guess it's known as a "source-to-source compiler" 2017-08-25T18:37:21Z aeth: Third time saying this today, but JS-to-CL would never match the performance of a proper JS implementation because of how JS the language works. 2017-08-25T18:37:47Z aeth: If you want something like JS, Lua, Python, etc., don't 1:1 translate the language, come up with something superficially similar that would perform better when compiled to CL. 2017-08-25T18:38:12Z phoe: then I'm confused 2017-08-25T18:38:16Z aeth: Although I think in this channel, what people would want is Smalltalk-to-CL 2017-08-25T18:38:21Z phoe: > transpiling languages (including perhaps a CL subset language) could treat it as first class. 2017-08-25T18:38:29Z lambda-smith: Python is hopeless when it comes to performance in general anyway 2017-08-25T18:38:30Z phoe: what do you mean by "transpiling languages"? 2017-08-25T18:39:36Z aeth: phoe: Languages that compile to CL (including perhaps a CL subset language) could treat continuations as first class, but afaik CL itself cannot have first class continuations because of its restart system (iirc). 2017-08-25T18:39:47Z aeth: Even if a CL implementation added some form of continuations 2017-08-25T18:40:27Z aeth: Although I might be remembering the wrong reason why CL doesn't have continuations but has better debugging than Scheme. 2017-08-25T18:41:26Z lambda-smith: aeth: You got it right. unwind-protect is the reason why CL doesn't have first-class continuation 2017-08-25T18:42:25Z lambda-smith: That, and one of the CL designer really don't like continuation (because it conflicted with the restart system) 2017-08-25T18:42:49Z Bike: i thought unwind-protect was just a limited version of dynamic-wind. 2017-08-25T18:43:57Z lambda-smith: Bike: IIRC, CL designer claimed that unwind-protect is better than dynamic-wind because CL doesn't have first-class continuation 2017-08-25T18:46:10Z Bike: well yes, dynamic wind doesn't make a lot of sense if there's no way to abnormally enter a dynamic extent. 2017-08-25T18:46:19Z aeth: Sometimes what a language cannot do is pretty important. Only weakly related, I can imagine a 100% purely functional embedded language within CL (no need for any way to deal with side effects if it's embeddable into CL) that could make so many assumptions when compiled into CL because of being functional. 2017-08-25T18:46:39Z Bike: i'm just saying i don't think unwind-protect is why there are no first class continuations. it's rather because the CL designers didn't want them. 2017-08-25T18:49:04Z lambda-smith: Bike: That's what I suspected as well, but hey, that's what the CL designer claimed. 2017-08-25T18:49:20Z phoe: I can't see why CL + dynamic-wind could *not* have first-class continuations 2017-08-25T18:50:08Z phoe: unwind-protect only covers the "exit dynamic extent" part; dynamic-wind also covers the "enter dynamic extent" part 2017-08-25T18:51:01Z emacsoma` quit (Remote host closed the connection) 2017-08-25T18:52:04Z EvW joined #lisp 2017-08-25T18:53:20Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-25T18:54:05Z emacsomancer joined #lisp 2017-08-25T18:54:38Z phoe afk 2017-08-25T18:57:45Z lambda-smith quit (Quit: Konversation terminated!) 2017-08-25T18:59:00Z phoe quit (Ping timeout: 252 seconds) 2017-08-25T19:00:43Z edgar-rft: Hmm, what would be the best language to transpile a big pile of junk into another pile of total crap? 2017-08-25T19:02:07Z _death: any language without a garbage collector 2017-08-25T19:02:28Z aeth: lol 2017-08-25T19:03:00Z aeth: edgar-rft: All programming languages... no, all software is pretty bad. It's just that some things are tolerable. 2017-08-25T19:07:15Z varjag joined #lisp 2017-08-25T19:07:30Z Jesin quit (Quit: Leaving) 2017-08-25T19:07:37Z malice: edgar-rft: llvm? 2017-08-25T19:07:48Z tonton quit (Ping timeout: 240 seconds) 2017-08-25T19:07:51Z malice: not a language, but... 2017-08-25T19:09:50Z tonton joined #lisp 2017-08-25T19:10:32Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-25T19:10:40Z aeth: malice: it's a language, just not one you'd write directly 2017-08-25T19:11:08Z aeth: Well, LLVM IR 2017-08-25T19:11:56Z aeth: Way messier than if they had just used s-expressions, too. https://en.wikipedia.org/wiki/LLVM#Intermediate_representation 2017-08-25T19:14:33Z aeth: There's no hope for humanity if some of the brightest minds in computing think learning a very different syntax for every layer of abstraction is a good idea. 2017-08-25T19:16:21Z aeth: Soon it'll be: some language with decent syntax and semantics compiles to JS which will compile (in the future) to some intermediate form (perhaps similar to wasm) which will be written in C++ which compiles to LLVM IR which compiles to x86-64 asm, all with a different syntax, except for x86-64 asm, which has two syntaxes. 2017-08-25T19:17:15Z aeth: Interoperating with HTML and CSS, which have their own syntaxes, of course. 2017-08-25T19:17:29Z drcode joined #lisp 2017-08-25T19:17:49Z Bike: you can just call the llvm ir functions and do it in memory, you don't need the text format 2017-08-25T19:18:21Z Bike: i guess the C API kind of blows, though 2017-08-25T19:19:50Z serviteur quit (Read error: Connection reset by peer) 2017-08-25T19:22:05Z phoe joined #lisp 2017-08-25T19:24:32Z FalconPilot quit (Ping timeout: 255 seconds) 2017-08-25T19:26:53Z FreeBirdLjj joined #lisp 2017-08-25T19:31:38Z knusbaum: aeth: I wonder if there have been any studies about the "telephone effect" from multiple translations specifically in computer lanugages? I imagine it's much less that in human lanugages, but you still probably lose some information. 2017-08-25T19:32:00Z FreeBirdLjj quit (Ping timeout: 252 seconds) 2017-08-25T19:32:54Z mson quit (Quit: Connection closed for inactivity) 2017-08-25T19:33:34Z grublet quit (Ping timeout: 248 seconds) 2017-08-25T19:35:49Z aeth: knusbaum: I was thinking more about the subtle errors that probably happen when people have to switch between half a dozen syntaxes in one day to get something done. 2017-08-25T19:36:12Z reu joined #lisp 2017-08-25T19:36:14Z phinxy joined #lisp 2017-08-25T19:37:23Z phinxy left #lisp 2017-08-25T19:41:14Z zchlyg quit (Remote host closed the connection) 2017-08-25T19:41:57Z knusbaum: aeth: Yeah, I understood, and it's a good point. I was just thinking about information loss during translation and wonder if it would become a problem at any stage. 2017-08-25T19:42:18Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-25T19:43:10Z Karl_Dscc quit (Remote host closed the connection) 2017-08-25T19:45:40Z tonton quit (Ping timeout: 264 seconds) 2017-08-25T19:47:00Z tonton joined #lisp 2017-08-25T19:53:13Z scymtym quit (Ping timeout: 240 seconds) 2017-08-25T19:55:11Z Kyo91_ joined #lisp 2017-08-25T19:56:05Z knusbaum left #lisp 2017-08-25T19:56:35Z moonking joined #lisp 2017-08-25T20:00:21Z knusbaum joined #lisp 2017-08-25T20:00:27Z knusbaum quit (Client Quit) 2017-08-25T20:02:04Z knusbaum joined #lisp 2017-08-25T20:02:18Z knusbaum quit (Client Quit) 2017-08-25T20:02:30Z shka_ quit (Ping timeout: 240 seconds) 2017-08-25T20:04:00Z tonton quit (Ping timeout: 240 seconds) 2017-08-25T20:05:52Z tonton joined #lisp 2017-08-25T20:08:20Z Murii|osx joined #lisp 2017-08-25T20:12:49Z TCZ quit (Quit: Leaving) 2017-08-25T20:15:51Z scymtym joined #lisp 2017-08-25T20:15:52Z reu: I keep running into trouble using dr racket for the SICP (the package doesn't have the filter primitive). is it worthy to switch for mit-scheme instead? 2017-08-25T20:16:38Z Shinmera: Neither are appropriate for this channel. Try #scheme. 2017-08-25T20:16:47Z reu: Sorry 2017-08-25T20:23:42Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-25T20:24:28Z FalconPilot joined #lisp 2017-08-25T20:24:54Z reich left #lisp 2017-08-25T20:24:58Z dyelar quit (Quit: Leaving.) 2017-08-25T20:25:18Z moonking quit (Ping timeout: 240 seconds) 2017-08-25T20:29:24Z jasom: Fare: also, I can confirm that workout-timer works fine after running my ql2nix script, though those gong sounds are annoying :P 2017-08-25T20:29:59Z Fare: jasom: yay! 2017-08-25T20:30:09Z Fare: jasom: do you produce an executable, too? 2017-08-25T20:30:29Z pjb: reu: I would rather use MIT Scheme indeed. edwin is nice and good. 2017-08-25T20:30:48Z anticrisis joined #lisp 2017-08-25T20:34:54Z varjag quit (Ping timeout: 248 seconds) 2017-08-25T20:38:02Z knusbaum joined #lisp 2017-08-25T20:40:36Z moei joined #lisp 2017-08-25T20:41:33Z phoe: woah 2017-08-25T20:41:40Z phoe: I just fired up spacemacs in terminal instead of in GUI 2017-08-25T20:41:48Z phoe: and I failed to notice the difference at first 2017-08-25T20:44:37Z knusbaum left #lisp 2017-08-25T20:49:18Z Xof quit (Ping timeout: 240 seconds) 2017-08-25T20:55:31Z pillton joined #lisp 2017-08-25T20:56:30Z knusbaum joined #lisp 2017-08-25T21:00:38Z varjag joined #lisp 2017-08-25T21:07:10Z sz0 joined #lisp 2017-08-25T21:09:21Z phoe quit (Ping timeout: 252 seconds) 2017-08-25T21:12:46Z angavrilov quit (Remote host closed the connection) 2017-08-25T21:18:05Z rRru joined #lisp 2017-08-25T21:18:41Z defaultxr joined #lisp 2017-08-25T21:22:00Z Fare quit (Ping timeout: 252 seconds) 2017-08-25T21:26:28Z Bike quit (Ping timeout: 264 seconds) 2017-08-25T21:26:49Z strelox quit (Remote host closed the connection) 2017-08-25T21:27:23Z Fare joined #lisp 2017-08-25T21:33:48Z tonton quit (Ping timeout: 240 seconds) 2017-08-25T21:34:00Z pjb: lisppaste is OOS: Service Unavailable / The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later. 2017-08-25T21:34:00Z pjb: 2017-08-25T21:34:00Z pjb: 2017-08-25T21:34:11Z knusbaum: Bummer 2017-08-25T21:35:53Z tonton joined #lisp 2017-08-25T21:37:48Z malice: Can ASDF create executable, or do I have use external tools(and write compile/make script)? 2017-08-25T21:39:18Z Shinmera: It can. 2017-08-25T21:39:28Z knusbaum: I've had mixed success with it. 2017-08-25T21:39:31Z Fare: it can, using program-op 2017-08-25T21:39:40Z Shinmera: knusbaum: I've had no issues whatsoever. 2017-08-25T21:39:42Z Fare: or using cl-launch as a shell interface 2017-08-25T21:40:43Z malice: I'm googling program-op right now. Do you have some link to examples/projects which use this feature? 2017-08-25T21:40:51Z Fare: malice: workout-timer ? 2017-08-25T21:41:02Z Fare: exscribe ? 2017-08-25T21:41:27Z Shinmera: I use an extension of it that manages foreign libraries as well. https://github.com/Shinmera/deploy 2017-08-25T21:41:37Z yrk quit (Read error: Connection reset by peer) 2017-08-25T21:41:43Z Shinmera: Since I practically never deploy anything that doesn't have shared libraries it needs too. 2017-08-25T21:41:52Z samarthwiz joined #lisp 2017-08-25T21:42:17Z Fare: Shinmera, cool. Maybe workout-timer should use it. 2017-08-25T21:43:13Z Fare: Shinmera, (asdf:make :my-system) is short-hand for (asdf:operate :build-op :my-system) 2017-08-25T21:43:24Z Shinmera: Good to know, thanks! 2017-08-25T21:44:04Z Shinmera: I assumed that it would be named "build-system", in line with "compile/load-system" and couldn't find it because of that. 2017-08-25T21:44:52Z Fare: Shinmera, there was a debate about that back in 2013 or 2014. 2017-08-25T21:45:20Z Fare: we ended up deciding that we wanted a short name. 2017-08-25T21:46:16Z Fare: so asdf could DTRT for a system, whatever the Right Thing was. 2017-08-25T21:46:32Z Jesin joined #lisp 2017-08-25T21:46:38Z Fare: asdf:dtrt was probably less clear than asdf:make or asdf:build-system 2017-08-25T21:48:03Z gigetoo quit (Ping timeout: 240 seconds) 2017-08-25T21:49:18Z Shinmera: asdf:magic 2017-08-25T21:50:01Z Fare: also the the -system suffix was now misleading since asdf 3 can correctly operate on components inside systems. 2017-08-25T21:50:16Z mson joined #lisp 2017-08-25T21:50:38Z Fare: (not that you anyone usually does it -- even less so since asdf 2 couldn't) 2017-08-25T21:51:16Z Fare: I think my favorite was asdf:build, but the consensus came around asdf:make 2017-08-25T21:52:24Z alandipert: is anyone aware of tricks for speeding sbcl --script startup? 2017-08-25T21:53:04Z Shinmera: Don't use --script and instead dump a core once things are loaded. Then use this core instead of the default. 2017-08-25T21:53:05Z Fare: jasom, your git repo contains backup files ~ -- maybe you want to remove them and gitignore them. 2017-08-25T21:53:05Z _death: save a core with third party libs 2017-08-25T21:53:30Z Fare: alandipert, see my blog post about it 2017-08-25T21:55:00Z gigetoo joined #lisp 2017-08-25T21:56:05Z Xof joined #lisp 2017-08-25T21:57:25Z Fare: https://fare.livejournal.com/184127.html 2017-08-25T22:00:54Z alandipert: Fare thanks, i'll read it 2017-08-25T22:01:50Z knusbaum quit (Quit: BYE) 2017-08-25T22:08:10Z random-nick quit (Remote host closed the connection) 2017-08-25T22:09:12Z searcher quit (Ping timeout: 240 seconds) 2017-08-25T22:09:52Z malice: does ASDF automatically pull :defsystem-depends-on deps? 2017-08-25T22:10:03Z Shinmera: ASDF doesn't pull anything. 2017-08-25T22:10:17Z searcher joined #lisp 2017-08-25T22:10:21Z malice: quicklisp does? 2017-08-25T22:10:23Z Shinmera: Yes. 2017-08-25T22:10:37Z Shinmera: It does pull d-d-o for stuff that's already in quicklisp 2017-08-25T22:10:54Z Shinmera: but it's a long-standing problem that it doesn't pull stuff for local-projects. 2017-08-25T22:11:11Z jasom: Fare: yeah; and I do not produce an executable. I suppose I could check for program-op 2017-08-25T22:11:16Z malice: because I tried to quickload my project with this deps and I had some error 2017-08-25T22:11:33Z malice: let me remove deploy and try again 2017-08-25T22:11:34Z Shinmera: https://github.com/quicklisp/quicklisp-client/issues/108 2017-08-25T22:12:43Z skeuomorf joined #lisp 2017-08-25T22:13:47Z Shinmera: Specifically, https://github.com/quicklisp/quicklisp-client/issues/108#issuecomment-110823939 2017-08-25T22:17:55Z Bike joined #lisp 2017-08-25T22:19:12Z malice: Shinmera: I've commented on the issue. 2017-08-25T22:20:57Z FalconPilot quit (Read error: Connection reset by peer) 2017-08-25T22:24:32Z vlatkoB_ quit (Remote host closed the connection) 2017-08-25T22:25:22Z malice: Can I somehow build an executable from SLIME? When I run (asdf:make :my-system), I get an error "Cannot save core with multiple threads running.". I'm using SBCL. 2017-08-25T22:26:38Z Fare: malice: you can call out to cl-launch to do it 2017-08-25T22:26:48Z Fare: or use lisp-invocation 2017-08-25T22:26:59Z Fare: see how cffi-toolchain does it 2017-08-25T22:27:09Z Shinmera: Just run the build command from a term, what's the problem 2017-08-25T22:27:11Z Fare: part of the cffi repo, under toolchain/ 2017-08-25T22:27:26Z FalconPilot joined #lisp 2017-08-25T22:27:48Z Fare: jasom: note that in this case, the program-op is in a secondary system. 2017-08-25T22:28:03Z nsnc quit (Ping timeout: 240 seconds) 2017-08-25T22:28:33Z smazga quit (Quit: leaving) 2017-08-25T22:31:45Z nsnc joined #lisp 2017-08-25T22:32:33Z malice: Shinmera: I have a quick question about deploy; how can I change the location of the binary? 2017-08-25T22:32:49Z malice: I've found #'data-directory, but it's #P"/usr/bin", and there's nothing there 2017-08-25T22:33:06Z Shinmera: data-directory is something else. 2017-08-25T22:33:20Z malice: the binary has been created in "src/bin/", since I have :pathname "src" option 2017-08-25T22:33:42Z malice: but I'd prefer it to be at "project-name/bin" instead of "project-name/src/bin" 2017-08-25T22:33:46Z Shinmera: I think you can change the location with the :build-pathname option. 2017-08-25T22:33:58Z Shinmera: I don't quite remember, though. Sorry. 2017-08-25T22:34:09Z Fare: I hate this :build-pathname option, but until someone comes up with something better, that's where it's at. 2017-08-25T22:34:12Z Shinmera: And I'm too tired to investigate right now (past midnight. I should be asleep) 2017-08-25T22:34:28Z malice: Sure. Thanks anyway. 2017-08-25T22:35:19Z Fare: I suppose that now that operate options can be cleaned up, there could be a :to argument to operate, whereby you could redirect output for the toplevel action. 2017-08-25T22:37:47Z malice: Does anyone have the problem with SLIME when opening deploy's deploy.lisp ? 2017-08-25T22:37:57Z malice: I get an error: Warning (slime): Caught error during fontification while searching for forms 2017-08-25T22:37:57Z malice: that are suppressed by reader-conditionals. The error was: (error "Connection closed."). 2017-08-25T22:38:25Z malice: And it's messing my slime up 2017-08-25T22:38:34Z samarthwiz quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-25T22:39:01Z samarthwiz joined #lisp 2017-08-25T22:39:19Z AntiSpamMeta quit (Read error: Connection reset by peer) 2017-08-25T22:39:21Z samarthwiz quit (Client Quit) 2017-08-25T22:39:33Z AntiSpamMeta joined #lisp 2017-08-25T22:40:02Z samarthwiz joined #lisp 2017-08-25T22:40:10Z samarthwiz quit (Client Quit) 2017-08-25T22:40:52Z malice: ugh 2017-08-25T22:40:58Z malice: got to restart emacs,brb 2017-08-25T22:41:02Z malice quit (Remote host closed the connection) 2017-08-25T22:44:01Z malice joined #lisp 2017-08-25T22:45:21Z AntiSpamMeta quit (Read error: Connection reset by peer) 2017-08-25T22:45:33Z AntiSpamMeta joined #lisp 2017-08-25T22:45:53Z nowhere_man joined #lisp 2017-08-25T22:47:00Z Murii|osx quit (Remote host closed the connection) 2017-08-25T22:51:10Z rRru left #lisp 2017-08-25T22:52:09Z Younder quit (Remote host closed the connection) 2017-08-25T22:56:20Z mfiano_ quit (Remote host closed the connection) 2017-08-25T22:56:43Z mfiano_ joined #lisp 2017-08-25T23:09:09Z malice: How to get access to command line arguments from the asdf's built executable? 2017-08-25T23:09:37Z malice: Previously I built the executable with buildapp, had a main function which accepted a single argument(args), and then used command-line-arguments to parse that 2017-08-25T23:09:53Z malice: after building with asdf the main function gets 0 arguments passed 2017-08-25T23:09:59Z malice: is there some global or something? 2017-08-25T23:10:50Z tonton quit (Ping timeout: 260 seconds) 2017-08-25T23:11:02Z tonton joined #lisp 2017-08-25T23:11:15Z milanj quit (Quit: Leaving) 2017-08-25T23:19:09Z pjb quit (Ping timeout: 252 seconds) 2017-08-25T23:19:15Z circ-user-FEzYX joined #lisp 2017-08-25T23:19:17Z Fare: malice: I use the command-line-arguments package, but you can use directly uiop:command-line-arguments, or you can use the mother-of-all package for command line arguments, CLON by Didier Verna 2017-08-25T23:19:46Z malice: Fare: well, I use it too. It's just that the main entry point didn't get any arguments. 2017-08-25T23:19:56Z Fare: it's called entry-point, not main 2017-08-25T23:20:13Z malice: I guess this might be due to the Shinmera's deploy package. Maybe I'll just use vanilla asdf and see how it goes 2017-08-25T23:20:18Z malice: yes, that's what I meant. 2017-08-25T23:21:03Z Fare: (defun entry-point () (main (uiop:command-line-arguments))) or some such thing 2017-08-25T23:22:53Z malice: Ahh. So I guess that the buildapp provided the arguments. 2017-08-25T23:24:36Z malice: Thanks, Fare. 2017-08-25T23:24:55Z Fare: unhappily, buildapp includes argv0 in the first position, and not uiop. Sigh. 2017-08-25T23:25:08Z Fare: I discovered the incompatibility many years afterwards 2017-08-25T23:25:23Z FalconPilot quit (Ping timeout: 240 seconds) 2017-08-25T23:25:28Z Kyo91_ joined #lisp 2017-08-25T23:26:04Z Fare: (for the record, xcvb-driver then uiop that subsumed it started stripping the oft-unavailable or non-sensical argv0 long before buildapp existed) 2017-08-25T23:26:17Z Fare: and cl-launch, before xcvb-driver, actually 2017-08-25T23:27:22Z varjag quit (Ping timeout: 246 seconds) 2017-08-25T23:27:59Z FalconPilot joined #lisp 2017-08-25T23:28:12Z circ-user-FEzYX quit (Remote host closed the connection) 2017-08-25T23:28:38Z jack_rabbit joined #lisp 2017-08-25T23:34:50Z guna joined #lisp 2017-08-25T23:37:28Z pierpa joined #lisp 2017-08-25T23:37:51Z tonton quit (Ping timeout: 248 seconds) 2017-08-25T23:38:38Z tonton joined #lisp 2017-08-25T23:40:15Z vtomoe joined #lisp 2017-08-25T23:41:37Z wxie joined #lisp 2017-08-25T23:45:19Z tonton quit (Ping timeout: 248 seconds) 2017-08-25T23:46:19Z tonton joined #lisp 2017-08-25T23:47:50Z Murii|osx joined #lisp 2017-08-25T23:50:20Z JuanDaugherty joined #lisp 2017-08-25T23:52:50Z Murii|osx quit (Ping timeout: 260 seconds) 2017-08-25T23:55:14Z zulu_inuoe: Is there any way to expand the slime inspector besides print-object overloads? 2017-08-25T23:55:50Z zulu_inuoe: That is, ways to change the way it displays instances of a class and such 2017-08-26T00:03:27Z schoppenhauer quit (Ping timeout: 248 seconds) 2017-08-26T00:03:58Z Bike: swank/backend:emacs-inspect maybe? 2017-08-26T00:05:32Z Bike: i don't think it's really intended for programmer customization. 2017-08-26T00:06:26Z zulu_inuoe: Yeah. I don't think so either. No biggie, it was more of a curiosity question than one out of necessity. Though it definitely would be nice! 2017-08-26T00:07:51Z schoppenhauer joined #lisp 2017-08-26T00:10:22Z Xof quit (Ping timeout: 248 seconds) 2017-08-26T00:11:17Z sellout- quit (Quit: Leaving.) 2017-08-26T00:12:56Z grublet joined #lisp 2017-08-26T00:16:48Z tonton quit (Ping timeout: 248 seconds) 2017-08-26T00:17:26Z tonton joined #lisp 2017-08-26T00:18:37Z jasom didn't realize cl-launch was older than xcvb-driver 2017-08-26T00:19:55Z mson quit (Quit: Connection closed for inactivity) 2017-08-26T00:26:21Z whoman joined #lisp 2017-08-26T00:28:10Z tonton__ joined #lisp 2017-08-26T00:28:30Z tonton quit (Ping timeout: 248 seconds) 2017-08-26T00:28:39Z EvW quit (Ping timeout: 255 seconds) 2017-08-26T00:33:24Z tonton__ quit (Ping timeout: 252 seconds) 2017-08-26T00:33:28Z rngoodn joined #lisp 2017-08-26T00:34:54Z tonton joined #lisp 2017-08-26T00:37:15Z wxie quit (Remote host closed the connection) 2017-08-26T00:38:23Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-26T00:38:45Z DeadTrickster joined #lisp 2017-08-26T00:39:08Z skeuomorf left #lisp 2017-08-26T00:42:12Z tonton quit (Ping timeout: 252 seconds) 2017-08-26T00:43:38Z tonton joined #lisp 2017-08-26T00:47:04Z Kyo91_ quit (Ping timeout: 260 seconds) 2017-08-26T00:48:35Z Murii|osx joined #lisp 2017-08-26T00:50:46Z LooneyTunes joined #lisp 2017-08-26T00:53:29Z Murii|osx quit (Ping timeout: 260 seconds) 2017-08-26T01:00:38Z Kyo91_ joined #lisp 2017-08-26T01:09:02Z vtomoe quit (Ping timeout: 260 seconds) 2017-08-26T01:12:58Z d4ryus joined #lisp 2017-08-26T01:15:58Z d4ryus4 quit (Ping timeout: 248 seconds) 2017-08-26T01:28:29Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-26T01:31:42Z FreeBirdLjj joined #lisp 2017-08-26T01:34:41Z Karl_Dscc joined #lisp 2017-08-26T01:36:12Z malice: Fare: is your workout-timer available anywhere besides gitlab? 2017-08-26T01:36:15Z malice: I don't have access to that 2017-08-26T01:38:54Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-26T01:42:38Z midre joined #lisp 2017-08-26T01:43:43Z whoma1 joined #lisp 2017-08-26T01:44:15Z whoman quit (Ping timeout: 248 seconds) 2017-08-26T01:49:03Z whoma1 quit (Ping timeout: 248 seconds) 2017-08-26T01:49:09Z felipedvorak quit (Quit: felipedvorak) 2017-08-26T01:49:21Z Murii|osx joined #lisp 2017-08-26T01:52:16Z EvW joined #lisp 2017-08-26T01:54:23Z Murii|osx quit (Ping timeout: 248 seconds) 2017-08-26T01:54:29Z wxie joined #lisp 2017-08-26T01:54:54Z whoman joined #lisp 2017-08-26T01:54:58Z Fare: malice: there must be a copy on github. It's in quicklisp. Soon to be in nixpkgs, I suppose, if jasom gets his stuff upstreamed. 2017-08-26T01:55:25Z Fare: jasom: cl-launch started in 2006, generalizing scripts I wrote at ITA. 2017-08-26T01:56:37Z malice: Fare: will look into that 2017-08-26T01:57:03Z malice: btw. autocompletion is really useful. I almost used this chat as a REPL, but lack of autocompletion made me aware that this is irc. lol 2017-08-26T01:58:08Z Karl_Dscc quit (Remote host closed the connection) 2017-08-26T02:02:15Z clintm` quit (Remote host closed the connection) 2017-08-26T02:02:31Z malice: Why would one prefer keywords in LOOP over symbols? 2017-08-26T02:02:51Z malice: e.g. (loop :for x :across vec :collect x) instead of (loop for x across vec collect x) ? 2017-08-26T02:03:26Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-08-26T02:04:03Z pyx joined #lisp 2017-08-26T02:04:22Z pyx quit (Client Quit) 2017-08-26T02:06:07Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-26T02:09:04Z axion: a few reasons, such as syntax highlighting 2017-08-26T02:12:47Z axion: Some people think it is cleaner to not have things like FOR, FROM, TO, IN, ACROSS, etc interned into their package. 2017-08-26T02:13:06Z elfmacs joined #lisp 2017-08-26T02:15:43Z axion: I do it mostly for the former reason though - at a glance I can quickly see what a function is doing a little easier, by having the editor syntax highlight loop symbols differently. 2017-08-26T02:18:45Z axion: For some reason I don't like making '=' a keyword symbol though. 2017-08-26T02:23:26Z varjag joined #lisp 2017-08-26T02:24:00Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-26T02:24:00Z axion: To me the first form is easier to mentally parse, though this is a rather terse example: https://files.axity.net/images/screenshots/img-20170825221627.png 2017-08-26T02:27:59Z varjag quit (Ping timeout: 248 seconds) 2017-08-26T02:35:21Z FreeBirdLjj joined #lisp 2017-08-26T02:36:43Z dddddd quit (Ping timeout: 240 seconds) 2017-08-26T02:39:32Z vtomole joined #lisp 2017-08-26T02:39:54Z FreeBirdLjj quit (Ping timeout: 252 seconds) 2017-08-26T02:42:19Z kobain joined #lisp 2017-08-26T02:45:21Z adhoc joined #lisp 2017-08-26T02:52:28Z axion: Another reason I suppose is if you had a package that exported, say COLLECT, and you USE-PACKAGE that package where you are using non-keyword loop keywords that includes COLLECT, you will get a symbol conflict error. 2017-08-26T02:52:57Z smokeink joined #lisp 2017-08-26T02:54:47Z Fare: malice: gitlab.common-lisp.net is pretty much open access, isn't it? 2017-08-26T02:55:14Z Fare: at least, to read it. Maybe to send MR's you need to first request an account, which can take a day or two 2017-08-26T02:57:27Z pierpa quit (Quit: Page closed) 2017-08-26T02:58:56Z Fare: cl-launch 2006, xcvb 2008, asdf2 2010, asdf3 2013, asdf3.1 2014, bazelisp 2016, asdf3.3 2017... I've been doing the same crap just slightly better for 11 years... :-( 2017-08-26T02:59:36Z Fare: "our best shit yet" 2017-08-26T03:03:52Z EvW quit (Ping timeout: 276 seconds) 2017-08-26T03:12:14Z shiranuidong quit (Ping timeout: 248 seconds) 2017-08-26T03:12:38Z shiranuidong joined #lisp 2017-08-26T03:14:26Z emma joined #lisp 2017-08-26T03:14:47Z schoppenhauer quit (Ping timeout: 240 seconds) 2017-08-26T03:17:03Z schoppenhauer joined #lisp 2017-08-26T03:17:34Z em quit (Ping timeout: 260 seconds) 2017-08-26T03:34:01Z Murii|osx joined #lisp 2017-08-26T03:35:59Z FreeBirdLjj joined #lisp 2017-08-26T03:38:23Z Murii|osx quit (Ping timeout: 248 seconds) 2017-08-26T03:40:30Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-26T03:43:08Z beach: Good morning everyone! 2017-08-26T03:44:29Z vtomole: Hey beach 2017-08-26T03:48:10Z fe[nl]ix: morning beach 2017-08-26T03:49:12Z Bike quit (Ping timeout: 252 seconds) 2017-08-26T04:04:00Z Fare: chào anh 2017-08-26T04:04:30Z heurist quit (Ping timeout: 248 seconds) 2017-08-26T04:06:49Z heurist joined #lisp 2017-08-26T04:07:21Z guna quit (Ping timeout: 252 seconds) 2017-08-26T04:07:58Z jamtho_ joined #lisp 2017-08-26T04:11:39Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-26T04:11:58Z defaultxr quit (Ping timeout: 248 seconds) 2017-08-26T04:18:36Z quazimodo joined #lisp 2017-08-26T04:31:10Z elfmacs quit (Ping timeout: 246 seconds) 2017-08-26T04:34:02Z smokeink quit (Remote host closed the connection) 2017-08-26T04:34:45Z Murii|osx joined #lisp 2017-08-26T04:35:16Z elderK joined #lisp 2017-08-26T04:35:16Z elderK quit (Changing host) 2017-08-26T04:35:16Z elderK joined #lisp 2017-08-26T04:36:49Z FreeBirdLjj joined #lisp 2017-08-26T04:39:03Z Murii|osx quit (Ping timeout: 240 seconds) 2017-08-26T04:41:19Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-26T04:46:57Z FreeBirdLjj joined #lisp 2017-08-26T04:47:50Z neoncontrails quit (Remote host closed the connection) 2017-08-26T04:48:37Z EvW joined #lisp 2017-08-26T04:49:57Z neoncontrails joined #lisp 2017-08-26T04:51:35Z damke_ joined #lisp 2017-08-26T04:53:35Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-26T05:09:48Z safe joined #lisp 2017-08-26T05:14:07Z wxie quit (Quit: Bye.) 2017-08-26T05:14:49Z Bock joined #lisp 2017-08-26T05:26:08Z myrkraverk joined #lisp 2017-08-26T05:27:42Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-26T05:39:05Z drcode quit (Quit: ZNC 1.6.5 - http://znc.in) 2017-08-26T05:40:57Z drcode joined #lisp 2017-08-26T05:58:39Z defaultxr joined #lisp 2017-08-26T06:04:36Z axion is now known as mfiano 2017-08-26T06:06:16Z angavrilov joined #lisp 2017-08-26T06:09:36Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-26T06:12:16Z teggi joined #lisp 2017-08-26T06:16:50Z EvW quit (Ping timeout: 246 seconds) 2017-08-26T06:23:59Z varjag joined #lisp 2017-08-26T06:27:29Z zaoqi joined #lisp 2017-08-26T06:28:54Z varjag quit (Ping timeout: 260 seconds) 2017-08-26T06:32:12Z vtomole quit (Ping timeout: 260 seconds) 2017-08-26T06:37:02Z mathi_aihtam joined #lisp 2017-08-26T06:41:17Z zaoqi_ joined #lisp 2017-08-26T06:42:10Z mathi_aihtam quit (Quit: mathi_aihtam) 2017-08-26T06:42:51Z mathi_aihtam joined #lisp 2017-08-26T06:42:55Z zaoqi quit (Ping timeout: 248 seconds) 2017-08-26T06:44:47Z zaoqi_ quit (Client Quit) 2017-08-26T06:45:44Z zaoqi_ joined #lisp 2017-08-26T06:45:56Z mishoo_ joined #lisp 2017-08-26T06:52:02Z varjag joined #lisp 2017-08-26T06:52:07Z damke joined #lisp 2017-08-26T06:52:23Z damke_ quit (Ping timeout: 240 seconds) 2017-08-26T06:52:34Z mson joined #lisp 2017-08-26T06:58:53Z mathi_aihtam_ joined #lisp 2017-08-26T06:59:04Z mathi_aihtam quit (Read error: Connection reset by peer) 2017-08-26T06:59:04Z mathi_aihtam_ is now known as mathi_aihtam 2017-08-26T07:03:09Z pjb joined #lisp 2017-08-26T07:05:29Z neoncontrails quit (Remote host closed the connection) 2017-08-26T07:15:22Z Murii|osx joined #lisp 2017-08-26T07:16:06Z vlatkoB joined #lisp 2017-08-26T07:17:59Z mathi_aihtam quit (Ping timeout: 240 seconds) 2017-08-26T07:18:29Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-26T07:20:14Z Murii|osx quit (Ping timeout: 248 seconds) 2017-08-26T07:25:00Z nullniverse joined #lisp 2017-08-26T07:28:20Z safe quit (Read error: Connection reset by peer) 2017-08-26T07:29:43Z Murii|osx joined #lisp 2017-08-26T07:30:02Z elderK quit (Quit: WeeChat 1.9) 2017-08-26T07:33:08Z FalconPilot quit (Read error: Connection reset by peer) 2017-08-26T07:36:15Z mfiano quit (Quit: WeeChat 1.8) 2017-08-26T07:36:46Z mfiano joined #lisp 2017-08-26T07:38:22Z Murii|osx quit (Remote host closed the connection) 2017-08-26T07:38:35Z zaoqi_ quit (Quit: zaoqi_) 2017-08-26T07:38:37Z FalconPilot joined #lisp 2017-08-26T07:39:09Z zaoqi_ joined #lisp 2017-08-26T07:55:13Z troydm quit (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) 2017-08-26T08:13:31Z troydm joined #lisp 2017-08-26T08:14:38Z zaoqi_ quit (Quit: zaoqi_) 2017-08-26T08:22:25Z elderK joined #lisp 2017-08-26T08:22:25Z elderK quit (Changing host) 2017-08-26T08:22:25Z elderK joined #lisp 2017-08-26T08:22:52Z LooneyTunes quit (Ping timeout: 246 seconds) 2017-08-26T08:24:47Z quazimodo quit (Read error: Connection reset by peer) 2017-08-26T08:25:21Z elderK quit (Client Quit) 2017-08-26T08:28:36Z quazimodo joined #lisp 2017-08-26T08:31:26Z shka_ joined #lisp 2017-08-26T08:35:28Z Fare quit (Ping timeout: 264 seconds) 2017-08-26T08:38:27Z elderK joined #lisp 2017-08-26T08:39:12Z Murii|osx joined #lisp 2017-08-26T08:40:30Z oleo: morning 2017-08-26T08:42:47Z beach: Hello oleo. 2017-08-26T08:44:00Z Murii|osx quit (Ping timeout: 252 seconds) 2017-08-26T08:49:59Z oleo: mornign beach! 2017-08-26T08:50:00Z quazimodo quit (Read error: Connection reset by peer) 2017-08-26T08:51:29Z ryanwatkins quit (Ping timeout: 240 seconds) 2017-08-26T08:51:49Z defaultxr quit (Ping timeout: 260 seconds) 2017-08-26T08:52:06Z marvin2 joined #lisp 2017-08-26T08:52:10Z wxie joined #lisp 2017-08-26T08:58:04Z elderK quit (Quit: WeeChat 1.9) 2017-08-26T08:58:24Z EvW joined #lisp 2017-08-26T08:58:40Z Murii|osx joined #lisp 2017-08-26T09:00:52Z phoe joined #lisp 2017-08-26T09:02:23Z mson quit (Quit: Connection closed for inactivity) 2017-08-26T09:04:19Z ryanwatkins joined #lisp 2017-08-26T09:04:35Z whoman quit (Read error: Connection reset by peer) 2017-08-26T09:05:11Z malcom2073 quit (Quit: No Ping reply in 180 seconds.) 2017-08-26T09:08:31Z samarthwiz joined #lisp 2017-08-26T09:12:37Z whoman joined #lisp 2017-08-26T09:18:12Z smokeink joined #lisp 2017-08-26T09:18:21Z smokeink quit (Client Quit) 2017-08-26T09:23:29Z random-nick joined #lisp 2017-08-26T09:26:41Z mishoo_ joined #lisp 2017-08-26T09:32:22Z guna joined #lisp 2017-08-26T09:35:59Z damke_ joined #lisp 2017-08-26T09:37:17Z guna quit (Ping timeout: 248 seconds) 2017-08-26T09:38:03Z damke quit (Ping timeout: 240 seconds) 2017-08-26T09:40:39Z smokeink joined #lisp 2017-08-26T09:48:53Z anticrisis quit (Remote host closed the connection) 2017-08-26T09:51:20Z troydm quit (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) 2017-08-26T09:55:19Z EvW quit (Ping timeout: 276 seconds) 2017-08-26T09:55:53Z damke joined #lisp 2017-08-26T09:57:03Z damke_ quit (Ping timeout: 240 seconds) 2017-08-26T10:01:58Z samarthwiz quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-26T10:02:26Z samarthwiz joined #lisp 2017-08-26T10:02:44Z samarthwiz quit (Client Quit) 2017-08-26T10:02:56Z pacon joined #lisp 2017-08-26T10:03:17Z samarthwiz joined #lisp 2017-08-26T10:03:32Z samarthwiz quit (Client Quit) 2017-08-26T10:05:32Z klay joined #lisp 2017-08-26T10:05:53Z klay: Hello there 2017-08-26T10:05:55Z samarthwiz joined #lisp 2017-08-26T10:05:56Z samarthwiz quit (Client Quit) 2017-08-26T10:07:03Z quazimodo joined #lisp 2017-08-26T10:07:18Z phoe: Hey hi klay 2017-08-26T10:07:34Z klay: Is there Emacs Lisp users? :) 2017-08-26T10:08:19Z klay: or at least Emacs users 2017-08-26T10:08:40Z jackdaniel: klay: there are, but this is common lisp channel, you may want to check on #emacs 2017-08-26T10:08:44Z jackdaniel: for elisp 2017-08-26T10:09:27Z klay: Oh thank you 2017-08-26T10:09:34Z pjb: klay: however, if you go to ##lisp, you can ask emacs lisp questions there. 2017-08-26T10:09:45Z pjb: #emacs is so noisy. 2017-08-26T10:09:50Z phoe: pjb: but ##lisp is pretty ded 2017-08-26T10:10:22Z pjb: It all depends on the questions asked. 2017-08-26T10:10:38Z pjb: You can always ask here, and people intereted in the discussion will go there./ 2017-08-26T10:23:47Z klay left #lisp 2017-08-26T10:29:03Z varjag quit (Ping timeout: 248 seconds) 2017-08-26T10:30:55Z samarthwiz joined #lisp 2017-08-26T10:34:18Z damke_ joined #lisp 2017-08-26T10:35:10Z mishoo_ quit (Ping timeout: 246 seconds) 2017-08-26T10:35:43Z damke quit (Ping timeout: 240 seconds) 2017-08-26T10:40:00Z malcom2073 joined #lisp 2017-08-26T10:40:16Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-26T10:40:40Z random-nick quit (Read error: Connection reset by peer) 2017-08-26T10:40:41Z DeadTrickster joined #lisp 2017-08-26T10:41:15Z BitPuffin|osx joined #lisp 2017-08-26T10:42:54Z EvW joined #lisp 2017-08-26T10:44:36Z random-nick joined #lisp 2017-08-26T10:47:34Z random-nick quit (Remote host closed the connection) 2017-08-26T10:50:30Z random-nick joined #lisp 2017-08-26T10:53:20Z random-nick quit (Remote host closed the connection) 2017-08-26T10:53:23Z Bike joined #lisp 2017-08-26T10:56:23Z random-nick joined #lisp 2017-08-26T10:59:19Z dddddd_ joined #lisp 2017-08-26T11:09:04Z zaoqi joined #lisp 2017-08-26T11:09:29Z whoman quit (Ping timeout: 260 seconds) 2017-08-26T11:10:43Z damke_ quit (Ping timeout: 240 seconds) 2017-08-26T11:12:15Z damke_ joined #lisp 2017-08-26T11:12:24Z dddddd_ quit (Ping timeout: 260 seconds) 2017-08-26T11:13:59Z troydm joined #lisp 2017-08-26T11:18:09Z jack_rabbit quit (Quit: BYE) 2017-08-26T11:24:47Z dddddd_ joined #lisp 2017-08-26T11:25:04Z varjag joined #lisp 2017-08-26T11:29:29Z varjag quit (Ping timeout: 240 seconds) 2017-08-26T11:32:47Z test1600 joined #lisp 2017-08-26T11:39:59Z phoe quit (Ping timeout: 252 seconds) 2017-08-26T11:40:56Z EvW quit (Ping timeout: 255 seconds) 2017-08-26T11:42:15Z samarthwiz quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-26T11:43:33Z samarthwiz joined #lisp 2017-08-26T11:43:47Z samarthwiz quit (Client Quit) 2017-08-26T11:46:06Z samarthwiz joined #lisp 2017-08-26T11:46:11Z samarthwiz quit (Client Quit) 2017-08-26T11:47:01Z EvW joined #lisp 2017-08-26T11:50:18Z daemoz quit (Ping timeout: 268 seconds) 2017-08-26T11:53:32Z symm- joined #lisp 2017-08-26T11:54:00Z symm-: hi, if I write (list '+ 1 2) I get (+ 1 2), why isn't the latter evaluated? 2017-08-26T11:54:12Z _death: why do you expect it to be evaluated 2017-08-26T11:54:27Z symm-: because if I write (+ 1 2) manually, it will get evaluated 2017-08-26T11:54:34Z _death: it's read-eval-print-loop, not read-eval^2-print-loop 2017-08-26T11:54:35Z symm-: what's the difference between the two 2017-08-26T11:54:41Z pjb: when you write (list '+ 1 2), (list '+ 1 2) is evaluated. 2017-08-26T11:54:47Z Bike quit (Ping timeout: 240 seconds) 2017-08-26T11:54:57Z symm-: so the rule of thumb is "evaluate only once"? 2017-08-26T11:55:11Z pjb: symm-: so to answer your question, the latter is not evaluated because otherwise that'd make an infinite loop! 2017-08-26T11:55:20Z _death: yes.. you can evaluate the last result by evaluating (eval *) 2017-08-26T11:55:27Z symm-: why? it would just evaluate to 3 2017-08-26T11:55:38Z pjb: (loop for sexp = '(list '+ 1 2) then (eval sexp)) 2017-08-26T11:56:02Z pjb: right, and them you'd evaluate 3, which would result in 3, and you'd evaluate 3 which would result in 3. Infinite loop. 2017-08-26T11:56:28Z symm-: ah 2017-08-26T11:56:29Z pjb: Notice that you can write expressions that converge to a sequence of period greater than 1, and even non-convergent sequences (in lisp). 2017-08-26T11:56:41Z symm-: I see 2017-08-26T11:56:54Z pjb: cf. quines 2017-08-26T11:56:56Z symm-: so you can't safeguard 2017-08-26T11:57:09Z pjb: No, it's not being silly. 2017-08-26T11:58:00Z pjb: What do you mean by "you can't safeguard"? 2017-08-26T11:58:35Z symm-: I mean since some expressions don't converge like you said, you can just keep evaluating until your result is the same as the previous result, then stop 2017-08-26T11:58:41Z symm-: you can't* 2017-08-26T11:58:46Z pjb: Yes. 2017-08-26T11:59:07Z pjb: symm-: any lisp data is a lisp program! 2017-08-26T11:59:26Z symm-: even a list of numbers? 2017-08-26T11:59:32Z pjb: So how could you get any result if you kept evaluating it? Even with a test for convergence, you wouldn't get the wanted result. 2017-08-26T11:59:38Z pjb: Yes. 2017-08-26T11:59:47Z pjb: It's a program with a program-error in it, but it's still a program. 2017-08-26T11:59:53Z symm-: ah 2017-08-26T12:00:35Z ski: what you enter into the interactor is an expression (or perhaps definition, or similar). what you get back is data (a sexpr) 2017-08-26T12:00:55Z symm-: but just to clarify, the result of evaluating (list '+ 1 2) has the exact same representation in memory as when I manually type in (+ 1 2) ? 2017-08-26T12:00:59Z pjb: ski: both a s-exps. 2017-08-26T12:01:01Z ski: it so happens that expressions are also written as (very special kinds of) sexps 2017-08-26T12:01:13Z pjb: symm-: nope. 2017-08-26T12:01:13Z ski: but you should still keep them separate in your mind 2017-08-26T12:01:14Z pjb: (list 2017-08-26T12:01:27Z pjb: (list '+ 1 2) is a list of 4 elements. (+ 1 2) is a list of 3 elements. 2017-08-26T12:01:37Z _death: pjb: he asks about the result 2017-08-26T12:01:42Z symm-: pjb: the result of evaluating (list '+ 1 2) 2017-08-26T12:01:46Z pjb: Oh, yes, the result of evaluating it is (+ 1 2) too. 2017-08-26T12:01:57Z pjb: It's equal. Not the same list, but a list with the same elements. 2017-08-26T12:02:02Z symm-: and the two (+ 1 2) are exactly the same in memory? 2017-08-26T12:02:08Z pjb: Not identical, equal. 2017-08-26T12:02:21Z symm-: I mean in terms of list structure and pointers etc 2017-08-26T12:02:31Z ski: ("structurally equal", if you want more precision) 2017-08-26T12:02:34Z marvin2: quick, without looking up, are they eq, eql, equal and equalp? 2017-08-26T12:02:36Z symm-: ok 2017-08-26T12:02:44Z pjb: (let ((a (list '+ 1 2)) (b '(+ 1 2))) (values (eql a b) (equal a b) (equalp a b))) #| --> nil ; t ; t |# 2017-08-26T12:03:04Z symm-: I guess what I'm asking is, does (list '+ 1 2) return (+ 1 2) or '(+ 1 2) ? 2017-08-26T12:03:19Z _death: symm: when you type (+ 1 2) the lisp reader will translate the characters into something that is equal to the result of (list '+ 1 2).. 2017-08-26T12:03:23Z pjb: it returns (+ 1 2) which is the same result as evaluating '(+ 1 2) 2017-08-26T12:03:51Z ski: symm- : as a consequence, you should clearly distinguish between "these two expressions evaluate to equal (or perhaps the same) results" and "this expression evaluates to this datum" 2017-08-26T12:03:53Z symm-: _death: thank you 2017-08-26T12:04:05Z pjb: (let ((a (list '+ 1 2)) (b '(+ 1 2)) (c (read-from-string "(+ 1 2)"))) (values (eql a b) (equal a b) (equal a c))) #| --> nil ; t ; t |# 2017-08-26T12:04:09Z _death: symm: you can see it by evaluating (equal (read-from-string "(+ 1 2)") (list '+ 1 2)) 2017-08-26T12:04:14Z _death: heh pjb :) 2017-08-26T12:05:08Z symm-: I'm having difficulty wrapping my head around this seemingly artificial rule, "a list is evaluated but only once" 2017-08-26T12:05:15Z daemoz joined #lisp 2017-08-26T12:05:18Z symm-: like a hot potato that goes cold after a first round of evaluation 2017-08-26T12:05:25Z symm-: I'll figure it out for myself 2017-08-26T12:05:26Z ski: symm- : an *expression* is evaluated to data. period 2017-08-26T12:05:40Z pjb: symm-: have a look at an implementation of the REPL! 2017-08-26T12:05:42Z ski: symm- : an arbitrary list should not be evaluated 2017-08-26T12:06:18Z symm-: ski: is 'expression' defined as a list with an operator as the first member? 2017-08-26T12:06:37Z pjb: A simple one is: (loop (print (eval (read)))) ; a minimal CL REPl can be found at: https://gitlab.com/com-informatimago/com-informatimago/blob/master/common-lisp/interactive/interactive.lisp#L91 2017-08-26T12:06:57Z ski: symm- : evaluating the expression (list '+ 1 2) is not any different from evaluating the expression (list 'banana 1 2) -- in either case, you get some datum back, (+ 1 2) respectively (banana 1 2) 2017-08-26T12:07:01Z pjb: https://gitlab.com/com-informatimago/com-informatimago/blob/master/common-lisp/interactive/interactive.lisp#L131 2017-08-26T12:07:37Z _death: symm: you can have your own multiple-evaluating repl... (defvar *times-to-evaluate* 2) (defun re^npl () (loop (print (loop repeat *times-to-evaluate* for form = (eval (read)) then (eval form) finally (return form))))) 2017-08-26T12:07:37Z phoe joined #lisp 2017-08-26T12:07:44Z symm-: ski: I see, but how is (list '+ 1 2) different from (helicopter '+ 1 2) 2017-08-26T12:07:55Z pjb: It is not. 2017-08-26T12:08:16Z pjb: (defun helicopter (a b c) (vector a b c a b a)) (helicopter '+ 1 2) #| --> #(+ 1 2 + 1 +) |# 2017-08-26T12:08:22Z ski: symm- : in the former case, this datum itself *could* be further interpreted as an expression, which could then be evaluated (see `eval'). but this *may* be a coincidence. without knowing more about the code which produced the datum (+ 1 2) you can't tell whether it's supposed to itself be interpreted as an expression 2017-08-26T12:08:56Z symm-: I see 2017-08-26T12:09:10Z pjb: symm-: notice that even if helicopter is not defined, you can still evaluate (helicopter '+ 1 2) and obtain a good result! 2017-08-26T12:09:22Z ski: symm- : "is 'expression' defined as a list with an operator as the first member?" -- no. an expression is something *you* want to evaluate. you can't look at a datum, and determine, just by looking at it, whether whoever produced it intends for it to be interpreted as an expression 2017-08-26T12:09:58Z symm-: so the only way to tell is to evaluate it? 2017-08-26T12:10:00Z ski: symm- : btw, here's an expression that's not "a list with an operator as the first member" : 3 2017-08-26T12:10:19Z ski: symm- : no, the only way to tell is to ask whoever produced it 2017-08-26T12:10:20Z symm-: ski: I see, what about (3) ? 2017-08-26T12:10:28Z phoe: > but how is (list '+ 1 2) different from (helicopter '+ 1 2) 2017-08-26T12:10:32Z pjb: symm-: cf. http://paste.lisp.org/display/354365 2017-08-26T12:10:46Z phoe: they are both lists of length 4 and same 2nd, 3rd, 4th elements, but different 1st elements 2017-08-26T12:11:08Z symm-: lol pjb 2017-08-26T12:11:23Z ski: symm- : (list '+ 1 2) can be interpreted as an expression, while (helicopter '+ 1 2) can't -- unless of course you have a function `helicopter' defined :) 2017-08-26T12:11:26Z pjb: (tree-difference '(list '+ 1 2) '(helicopter '+ 1 2)) #| --> ((/= list helicopter) (= = . =) = = . =) |# 2017-08-26T12:11:43Z pjb: ski: (helicopter '+ 1 2) is a perfectly good expression, see my paste! 2017-08-26T12:11:54Z pjb: Even without a definition. 2017-08-26T12:12:10Z ski: (symm- : whether it's intended to be interpreted as an expression is another matter. you have to ask whoever produced it, which possibly is yourself) 2017-08-26T12:12:11Z pjb: In my paste I added a definition during the evaluation, but I could have obtained a result without doing that. 2017-08-26T12:12:21Z phoe: it is a good expression, the error comes from elsewhere - that you do not have a function HELICOPTER defined, when you try to evaluate that expression 2017-08-26T12:12:31Z pjb: And what you do interactively in the debugger, you can do it automatically with restarts and handler-bind, etc. 2017-08-26T12:13:24Z _death: symm: (3) is not a form (per clhs), but of course you can define your own semantics for it 2017-08-26T12:13:27Z ski: pjb : well, i count that as a variation of "you have a function `helicopter' defined". except that that definition happens after the fact 2017-08-26T12:13:44Z daemoz quit (Ping timeout: 268 seconds) 2017-08-26T12:14:03Z pjb: ski: again I can do it without a definition! 2017-08-26T12:14:16Z serses joined #lisp 2017-08-26T12:14:55Z serses: Which is better CCL or SBCL? 2017-08-26T12:15:11Z phoe: serses: depends 2017-08-26T12:15:27Z serses: i'm new to this. I just want to learn 2017-08-26T12:15:33Z phoe: grab either 2017-08-26T12:15:33Z ski: symm- : (3) can't be a valid expression, `3' is not a valid function identifier 2017-08-26T12:15:41Z _death: serses: then either can serve you well 2017-08-26T12:15:47Z phoe: from a newbie's perspective, both are good enough 2017-08-26T12:15:54Z serses: ok thanks 2017-08-26T12:15:58Z phoe: and you'll get support for both of them over here. 2017-08-26T12:16:10Z edgar-rft: AFAIK worse is better 2017-08-26T12:16:18Z phoe: but well, you'll be learning Common Lisp first, and only afterwards any features specific to CCL or SBCL. 2017-08-26T12:16:24Z symm-: thanks guys, I will read up more 2017-08-26T12:16:59Z pjb: ski: (handler-bind ((undefined-function (lambda (err) (invoke-restart 'result 42)))) (restart-case (helicopter '+ 1 2) (result (result) result))) #| --> 42 |# 2017-08-26T12:17:07Z pjb: Without any helicopter function defined. 2017-08-26T12:17:20Z ski: pjb : point taken. i still consider this along the lines of "having a definition" (even if it's only a transient one, only in force for the particular call in question) 2017-08-26T12:17:38Z jamtho_ joined #lisp 2017-08-26T12:18:11Z ski: (namely, you con construe that as defining `helicopter', invoking it, and immediately removing the definition, before continuing) 2017-08-26T12:18:27Z pjb: ski: the beauty of the thing is that you can wrap your whole central nuclear plant, or your whole space ship in a handler-bind / restart-case, and program in advance handling of unexpected errors, so that if there's a problem it doesn't fail catastrophically like Ariane-5 or so many other examples. 2017-08-26T12:18:46Z phoe: > the beauty of the thing is that you can wrap your whole central nuclear plant, or your whole space ship in a handler-bind / restart-case 2017-08-26T12:19:09Z ski: .. and in any case, i think that, even if you consider it not strictly true, this is true enough as a first working approximation, for a learner 2017-08-26T12:19:23Z phoe: News Report: Fukushima Meltdown Saved By Rogue Programmer Wrapping The Whole Codebase In RESTART-CASE 2017-08-26T12:19:29Z ski: (throw away ladder and all that) 2017-08-26T12:20:29Z pjb: phoe: well the guy who is guilty for Fukushima is the guy who decide to buy an American nuclear powerplant (instead of a French one, or to design a Japanese one). 2017-08-26T12:20:41Z symm- quit (Ping timeout: 252 seconds) 2017-08-26T12:20:54Z ski: pjb : well, if your Ariane-5 connection suddenly drops you in a debugger interactor, you may not have time to fix the problem before it's too late :) 2017-08-26T12:21:24Z ski: pjb : and with automation, it's hard to predict how to correct the problem usefully 2017-08-26T12:21:29Z pjb: phoe: perhaps it's the Americans who forced Japan to buy an Amercian nuclear power plant? But when he signed, he knew that it was only a matter of time for this catastrophe. 2017-08-26T12:21:36Z edgar-rft: I assume that after the nuclear plant is exploded, a restart would be quite useless... 2017-08-26T12:21:37Z phoe: ski: in such a case, you'll fail anyway 2017-08-26T12:21:48Z ski nods 2017-08-26T12:21:57Z pjb: You only have to look at the gross schematics of this nuclear power plant to know that the only place on Earth where it must not been installed is in Japan. 2017-08-26T12:21:59Z phoe: but go look at deep space 1 and how it was saved by the fact you had a REPL 2017-08-26T12:22:19Z ski: (sorry, mixed up pjb and phoe there for a short while) 2017-08-26T12:22:26Z pjb: ski: hence handler-bind and restart-case! 2017-08-26T12:22:29Z phoe: it was the REPL with the longest ping delay ever 2017-08-26T12:22:53Z pjb: Happily, at NASA they keep a duplicate on Earth to test and debug during the flight. 2017-08-26T12:23:12Z ski: phoe : *nod* :) 2017-08-26T12:23:45Z _death: I once saved a puppy by using HANDLER-BIND 2017-08-26T12:24:32Z ski: (phoe : link for more info on that ?) 2017-08-26T12:24:35Z phoe: :) 2017-08-26T12:24:46Z phoe: ski: http://www.flownet.com/gat/jpl-lisp.html 2017-08-26T12:24:49Z ski: ty 2017-08-26T12:25:16Z phoe: "Debugging a program running on a $100M piece of hardware that is 100 million miles away is an interesting experience." 2017-08-26T12:28:48Z _death: every time I see figures such as $100M I think there should be a timestamp attached 2017-08-26T12:29:44Z mfiano: The month and year is not good enough? 2017-08-26T12:30:36Z _death: mfiano: depends on the particular month and year, I guess 2017-08-26T12:30:45Z mfiano: The one mentioned in the article? 2017-08-26T12:31:04Z phoe: "Remote Agent controlled DS1 for two days in May of 1999." 2017-08-26T12:31:20Z daemoz joined #lisp 2017-08-26T12:31:25Z phoe: I think this conforms to _death 's requirements 2017-08-26T12:31:33Z _death: mfiano: sure, I didn't mean that the article was missing context 2017-08-26T12:35:51Z zaoqi quit (Read error: Connection reset by peer) 2017-08-26T12:36:18Z wxie quit (Remote host closed the connection) 2017-08-26T12:36:37Z wxie joined #lisp 2017-08-26T12:41:45Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-26T12:42:15Z DeadTrickster joined #lisp 2017-08-26T12:42:38Z zaoqi joined #lisp 2017-08-26T12:43:35Z zaoqi quit (Remote host closed the connection) 2017-08-26T12:44:15Z zaoqi joined #lisp 2017-08-26T12:46:19Z quazimodo quit (Read error: Connection reset by peer) 2017-08-26T12:50:39Z serses: Can someone help me with this ? https://p.teknik.io/Simple/0y1dt 2017-08-26T12:50:49Z serses: I get "An opening format directive is never closed; expecting '}'." 2017-08-26T12:51:26Z pjb: serses: all format directives start with ~ 2017-08-26T12:51:28Z pjb: even ~} 2017-08-26T12:52:02Z serses: oh now I get it, thanks 2017-08-26T12:54:20Z sebastien_: I wrote a CL quickstart for Debian users on https://wiki.debian.org/CommonLisp 2017-08-26T12:54:27Z sebastien_: feedback (or even direct editing!) is welcome 2017-08-26T12:55:05Z pjb: sebastien_: you should mention ccl even if you install it with svn instead of apt-get. 2017-08-26T12:55:12Z pjb: Oh you did, sorry. 2017-08-26T12:55:30Z phoe: sebastien_: PLEASE get rid of GCL on that front page. 2017-08-26T12:55:41Z pjb: Well, not really. ccl is avaialble on debian. use svn checkout! 2017-08-26T12:56:26Z pjb: gcl is not even a conforming CL implementation yet. 2017-08-26T12:56:37Z phoe: GCL is not a conforming Common Lisp implementation, has been dead for a long time, is unmaintained, not supported by almost anyone on #lisp and in my (and not only my) opinion should be left in the graveyard. 2017-08-26T12:57:24Z phoe: Even if you have to keep it there, it should not be above CLISP and even not above CMU CL. 2017-08-26T12:57:30Z pjb: If you had resources to work on gcl, they would probably be better spent on clicc actually. 2017-08-26T12:57:31Z sebastien_: phoe: well, gcl is part of Debian, is somewhat maintained there, and serves its purpose, so it cannot just be ignored 2017-08-26T12:57:50Z sebastien_: however you'll see further down on the page that is written it does not work with ASDF 2017-08-26T12:57:55Z pjb: if asdf doesn't work on gcl, it's because gcl is not conforming. 2017-08-26T12:58:00Z phoe: sebastien_: sure, but the fact that it's somewhat maintained there does not mean it's a good and conforming CL implementation. 2017-08-26T12:58:17Z sebastien_: sure, maybe we could mention that it's not totally conforming then 2017-08-26T12:58:21Z phoe: ^ 2017-08-26T12:58:57Z nopf joined #lisp 2017-08-26T13:00:44Z sebastien_: phoe: I have put it at the bottom of the list and mentioned it is not fully ANSI-compliant 2017-08-26T13:01:07Z test1600 quit (Ping timeout: 246 seconds) 2017-08-26T13:01:11Z phoe: sebastien_: <3 2017-08-26T13:01:24Z serses quit (Remote host closed the connection) 2017-08-26T13:01:53Z serses joined #lisp 2017-08-26T13:01:57Z sebastien_: pjb: concerning CCL, I am not sure I want to mention that it can be installed through SVN, this is pretty obvious, and the idea is to emphasize the Debian way 2017-08-26T13:02:02Z sebastien_: of course the best solution would be to package it… 2017-08-26T13:02:13Z phoe: sebastien_: CCL is not debian-packageable I think. 2017-08-26T13:02:30Z phoe: There were issues with building CCL and packaging it AFAIR. 2017-08-26T13:03:15Z pjb: Well I guess making a tarball of the svn checkout would do. A post install to link to script/ccl64 is all what is needed. 2017-08-26T13:03:58Z phoe: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=609047 I think 2017-08-26T13:04:06Z sebastien_: phoe: yes it is linked from the wiki page 2017-08-26T13:05:37Z sebastien_: if someone wants to take up the job of packaging CCL in Debian, I would be happy to be your sponsor 2017-08-26T13:06:06Z sebastien_: but I am still too new to CL to do it myself 2017-08-26T13:06:21Z phoe: https://github.com/roswell/roswell <- I'd mention Roswell there since it takes care of managing Lisp implementations and versions. 2017-08-26T13:07:59Z phoe: sebastien_: also, huge thanks for spending your energy on that 2017-08-26T13:08:46Z sebastien_: as a newbie it took me some time to figure out all that is on this page, so I felt I had to write it down 2017-08-26T13:10:15Z phoe: sebastien_: <3 2017-08-26T13:10:17Z zaoqi quit (Ping timeout: 240 seconds) 2017-08-26T13:10:26Z phoe: geez, makes me remember the old times when I was a complete newbie 2017-08-26T13:10:33Z sebastien_: :) 2017-08-26T13:10:38Z phoe: and when I was so frustrated that I decided to start up CLUS 2017-08-26T13:11:06Z phoe: and now I'm an old fart with too much real life duties to finish what I've started regarding CLUS. 2017-08-26T13:11:17Z phoe: sigh, I miss being 24 years old 2017-08-26T13:11:28Z phoe is 25 now 2017-08-26T13:11:44Z sebastien_: I’m 37, so don’t complain! 2017-08-26T13:12:56Z zaoqi joined #lisp 2017-08-26T13:13:16Z phoe: :D 2017-08-26T13:13:50Z mfiano: I started using CL when I was your age...and that was a while ago. 2017-08-26T13:18:02Z clintm joined #lisp 2017-08-26T13:18:39Z smokeink quit (Ping timeout: 264 seconds) 2017-08-26T13:22:15Z serses left #lisp 2017-08-26T13:22:23Z Mon_Ouie quit (Ping timeout: 248 seconds) 2017-08-26T13:22:53Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-26T13:23:49Z peterhil` joined #lisp 2017-08-26T13:24:02Z daemoz quit (Ping timeout: 268 seconds) 2017-08-26T13:26:27Z Murii|osx quit 2017-08-26T13:26:29Z peterhil quit (Ping timeout: 240 seconds) 2017-08-26T13:26:32Z Mon_Ouie joined #lisp 2017-08-26T13:26:51Z tonton__ joined #lisp 2017-08-26T13:27:09Z tonton quit (Ping timeout: 260 seconds) 2017-08-26T13:28:00Z daemoz joined #lisp 2017-08-26T13:31:27Z Mon_Ouie quit (Ping timeout: 248 seconds) 2017-08-26T13:35:35Z mishoo_ joined #lisp 2017-08-26T13:36:07Z peterhil` quit (Quit: Must not waste too much time here...) 2017-08-26T13:36:24Z peterhil joined #lisp 2017-08-26T13:36:51Z zaoqi__ joined #lisp 2017-08-26T13:38:09Z peterhil quit (Remote host closed the connection) 2017-08-26T13:38:14Z zaoqi quit (Ping timeout: 260 seconds) 2017-08-26T13:38:51Z peterhil joined #lisp 2017-08-26T13:40:19Z Mon_Ouie joined #lisp 2017-08-26T13:40:31Z mishoo_ quit (Ping timeout: 248 seconds) 2017-08-26T13:50:31Z Karl_Dscc joined #lisp 2017-08-26T13:51:43Z peterhil quit (Quit: Must not waste too much time here...) 2017-08-26T13:52:13Z peterhil joined #lisp 2017-08-26T13:53:56Z wxie quit (Quit: Bye.) 2017-08-26T14:05:57Z knobo joined #lisp 2017-08-26T14:07:28Z epony quit (Read error: Connection reset by peer) 2017-08-26T14:07:41Z guna joined #lisp 2017-08-26T14:09:17Z drcode quit (Ping timeout: 248 seconds) 2017-08-26T14:12:10Z epony joined #lisp 2017-08-26T14:13:01Z guna_ joined #lisp 2017-08-26T14:13:29Z EvW quit (Ping timeout: 255 seconds) 2017-08-26T14:13:30Z varjag joined #lisp 2017-08-26T14:13:56Z guna is now known as Guest54080 2017-08-26T14:14:17Z guna_ is now known as guna 2017-08-26T14:16:47Z Guest54080 quit (Ping timeout: 248 seconds) 2017-08-26T14:19:19Z drcode joined #lisp 2017-08-26T14:20:01Z epony quit (Quit: QUIT) 2017-08-26T14:23:23Z dddddd_ quit (Remote host closed the connection) 2017-08-26T14:26:09Z d4ryus quit (Quit: WeeChat 1.9) 2017-08-26T14:29:47Z epony joined #lisp 2017-08-26T14:30:15Z smokeink joined #lisp 2017-08-26T14:31:49Z guna_ joined #lisp 2017-08-26T14:32:17Z guna quit (Ping timeout: 240 seconds) 2017-08-26T14:32:30Z guna_ is now known as guna 2017-08-26T14:40:23Z d4ryus joined #lisp 2017-08-26T14:40:42Z guna quit (Ping timeout: 240 seconds) 2017-08-26T14:42:45Z smokeink quit (Quit: Lost terminal) 2017-08-26T14:50:16Z grublet quit (Quit: Leaving) 2017-08-26T14:51:56Z neoncontrails joined #lisp 2017-08-26T14:57:40Z whoman joined #lisp 2017-08-26T14:58:59Z knobo quit (Ping timeout: 240 seconds) 2017-08-26T15:00:10Z drcode quit (Ping timeout: 276 seconds) 2017-08-26T15:00:38Z nalik891 joined #lisp 2017-08-26T15:00:56Z nullniverse quit (Read error: Connection reset by peer) 2017-08-26T15:01:14Z nalik891 quit (Remote host closed the connection) 2017-08-26T15:01:24Z neoncontrails quit (Remote host closed the connection) 2017-08-26T15:10:34Z zaoqi__ quit (Quit: zaoqi__) 2017-08-26T15:12:36Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-26T15:14:22Z klltkr joined #lisp 2017-08-26T15:14:22Z klltkr quit (Client Quit) 2017-08-26T15:14:51Z test1600 joined #lisp 2017-08-26T15:15:03Z klltkr joined #lisp 2017-08-26T15:15:38Z klltkr quit (Client Quit) 2017-08-26T15:18:04Z lambda-smith joined #lisp 2017-08-26T15:18:38Z klltkr joined #lisp 2017-08-26T15:19:51Z nullniverse joined #lisp 2017-08-26T15:26:25Z al-damiri joined #lisp 2017-08-26T15:37:36Z LooneyTunes joined #lisp 2017-08-26T15:39:02Z zaoqi__ joined #lisp 2017-08-26T15:42:20Z zaoqi__ quit (Client Quit) 2017-08-26T15:43:00Z zaoqi__ joined #lisp 2017-08-26T15:43:50Z zaoqi__ quit (Remote host closed the connection) 2017-08-26T15:44:01Z Khisanth quit (Ping timeout: 255 seconds) 2017-08-26T15:49:52Z klltkr quit (Read error: Connection reset by peer) 2017-08-26T15:53:35Z klltkr joined #lisp 2017-08-26T15:57:30Z Khisanth joined #lisp 2017-08-26T15:59:14Z Oladon quit (Read error: Connection reset by peer) 2017-08-26T15:59:52Z Oladon joined #lisp 2017-08-26T16:01:11Z Jesin quit (Quit: Leaving) 2017-08-26T16:02:04Z neoncontrails joined #lisp 2017-08-26T16:02:07Z klltkr quit (Read error: Connection reset by peer) 2017-08-26T16:04:06Z klltkr joined #lisp 2017-08-26T16:07:12Z Murii|osx joined #lisp 2017-08-26T16:09:29Z aindilis quit (Ping timeout: 252 seconds) 2017-08-26T16:13:43Z Jesin joined #lisp 2017-08-26T16:26:10Z oleo: wth 2017-08-26T16:26:25Z oleo: what happened again that i can't use gsll all of a sudden.... 2017-08-26T16:28:15Z broccolistem joined #lisp 2017-08-26T16:28:28Z wooden quit (Ping timeout: 240 seconds) 2017-08-26T16:28:33Z oleo: system side requirements are ok 2017-08-26T16:28:55Z oleo: and cffi broke uffi, with it's cffi-uffi-compat thing.... 2017-08-26T16:29:26Z oleo: what the heck is going on 2017-08-26T16:30:25Z oleo: gsll breaks with nonlinear-least-squares 2017-08-26T16:30:43Z oleo: however i don't have any debugger stuff telling something of importance.... 2017-08-26T16:43:15Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-26T16:43:48Z DeadTrickster joined #lisp 2017-08-26T16:49:41Z epony quit (Quit: QUIT) 2017-08-26T16:52:27Z grublet joined #lisp 2017-08-26T16:54:11Z grublet quit (Remote host closed the connection) 2017-08-26T16:55:51Z serviteur joined #lisp 2017-08-26T16:58:21Z broccolistem quit (Ping timeout: 248 seconds) 2017-08-26T17:02:48Z damke joined #lisp 2017-08-26T17:04:22Z damke_ quit (Ping timeout: 240 seconds) 2017-08-26T17:04:44Z varjag quit (Ping timeout: 260 seconds) 2017-08-26T17:12:49Z Bike joined #lisp 2017-08-26T17:12:54Z Bike quit (Remote host closed the connection) 2017-08-26T17:13:23Z Bike joined #lisp 2017-08-26T17:13:40Z Karl_Dscc quit (Remote host closed the connection) 2017-08-26T17:14:13Z grublet joined #lisp 2017-08-26T17:15:17Z wooden joined #lisp 2017-08-26T17:15:30Z kobain joined #lisp 2017-08-26T17:17:17Z broccolistem joined #lisp 2017-08-26T17:19:47Z guna_ joined #lisp 2017-08-26T17:26:19Z phoe quit (Ping timeout: 260 seconds) 2017-08-26T17:27:55Z epony joined #lisp 2017-08-26T17:28:04Z vlatkoB_ joined #lisp 2017-08-26T17:31:58Z vlatkoB quit (Ping timeout: 248 seconds) 2017-08-26T17:32:31Z symm- joined #lisp 2017-08-26T17:35:30Z guna_ is now known as guna 2017-08-26T17:45:44Z lambda-smith quit (Ping timeout: 252 seconds) 2017-08-26T17:47:21Z rngoodn joined #lisp 2017-08-26T17:55:20Z neoncontrails quit (Remote host closed the connection) 2017-08-26T17:56:41Z teggi quit (Quit: Leaving...) 2017-08-26T17:59:43Z lambda-smith joined #lisp 2017-08-26T18:00:08Z varjag joined #lisp 2017-08-26T18:00:23Z JuanDaugherty joined #lisp 2017-08-26T18:00:42Z lambda-smith: Hmmm... am I going insane, so is your plain 'old lists really does use less memory than vectors? 2017-08-26T18:00:49Z dddddd joined #lisp 2017-08-26T18:01:29Z Bike: how do you figure that? a cons cell is probably two pointers, and a list of length n has n cons cells. a general vector of length n has n pointers. 2017-08-26T18:01:39Z Bike: of course, lists can share structure and all 2017-08-26T18:02:20Z lambda-smith: Bike: By running my program and observed memory usage 2017-08-26T18:02:39Z Shinmera: If you're just going to recreate vectors all over the place, then.. well. 2017-08-26T18:02:58Z lambda-smith: Shinmera: Yeah, my program does that when I use vectors 2017-08-26T18:03:14Z lambda-smith: Shinmera: Guess that's the culprit's then? :P 2017-08-26T18:03:47Z Shinmera: I don't know what you're doing, so I can't say. 2017-08-26T18:03:51Z lambda-smith: The good news is that converting to using lists as sets instead of vectors seems to both save memory and makes the program faster too 2017-08-26T18:03:53Z Bock quit (Ping timeout: 252 seconds) 2017-08-26T18:03:56Z phoe joined #lisp 2017-08-26T18:04:14Z lambda-smith: It's a simple program that parse graph dataset and stored the dataset inside hash table 2017-08-26T18:05:02Z lambda-smith: So the key is a vertex ID, while the value is all of the vertex's edges (which is where I use lists/vertices) 2017-08-26T18:05:21Z Bike: vectors probably aren't great as sets, no. too much hackin and wackin 2017-08-26T18:05:43Z lambda-smith: Bike: Yeah, you're probably right. 2017-08-26T18:06:24Z lambda-smith: I initially choose to use vectors as sets because the set of each vertex's edges can grow pretty large ~ thousands to ten thousands 2017-08-26T18:06:48Z lambda-smith: But it seems I've only commited the sins of premature optimization 2017-08-26T18:07:29Z Shinmera: Vectors could still be faster. Depends on your usage pattern, and where you can use destructive operations to your benefit, and so forth. 2017-08-26T18:07:39Z Shinmera: Again, I don't know what you're doing, so I can't say. 2017-08-26T18:07:40Z mfiano: lists make good tree structures. it's really about how you will be accessing nodes, and if you have the groundwork for storing tail pointers. also, lists have built in set theory functions. 2017-08-26T18:07:54Z Bike: if it's set unions and differences and stuff i can imagine lists being faster 2017-08-26T18:08:07Z Bike: but, then you could make it faster by using a more intelligent structure like a balanced btree 2017-08-26T18:09:45Z lambda-smith: Hmmm... thanks for the inputs guys, maybe I really need to profile this properly. 2017-08-26T18:10:11Z lambda-smith: Bike: Speaking of balanced btree, do you happened to know an implementation in CL? 2017-08-26T18:10:17Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-26T18:10:28Z Bike: i don't. there might be one in FSet. 2017-08-26T18:10:46Z lambda-smith: I see, thanks. I'll take a look. 2017-08-26T18:13:20Z dddddd quit (Ping timeout: 255 seconds) 2017-08-26T18:15:16Z guna_ joined #lisp 2017-08-26T18:16:14Z guna is now known as Guest6260 2017-08-26T18:16:32Z guna_ is now known as guna 2017-08-26T18:19:15Z Guest6260 quit (Ping timeout: 264 seconds) 2017-08-26T18:19:28Z rngoodn joined #lisp 2017-08-26T18:21:39Z wooden quit (Ping timeout: 264 seconds) 2017-08-26T18:23:31Z dan quit (Quit: WeeChat 1.0.1) 2017-08-26T18:25:16Z wooden joined #lisp 2017-08-26T18:26:23Z tonton__ quit (Ping timeout: 255 seconds) 2017-08-26T18:26:28Z dddddd joined #lisp 2017-08-26T18:26:37Z lambda-smith quit (Quit: Konversation terminated!) 2017-08-26T18:28:16Z tonton joined #lisp 2017-08-26T18:29:45Z marvin2 quit (Ping timeout: 246 seconds) 2017-08-26T18:30:37Z FalconPilot quit (Ping timeout: 248 seconds) 2017-08-26T18:30:56Z mistnim_ joined #lisp 2017-08-26T18:31:10Z marvin3 joined #lisp 2017-08-26T18:32:42Z damke quit (Ping timeout: 240 seconds) 2017-08-26T18:33:50Z symm- quit (Ping timeout: 248 seconds) 2017-08-26T18:38:58Z tonton quit (Ping timeout: 240 seconds) 2017-08-26T18:39:24Z JuanDaugherty quit (Read error: Connection reset by peer) 2017-08-26T18:39:44Z JuanDaugherty joined #lisp 2017-08-26T18:41:12Z symm- joined #lisp 2017-08-26T18:42:18Z FalconPilot joined #lisp 2017-08-26T18:46:33Z JuanDaugherty quit (Ping timeout: 246 seconds) 2017-08-26T18:48:00Z symm- quit (Quit: Leaving...) 2017-08-26T18:48:25Z random-nick quit (Remote host closed the connection) 2017-08-26T18:51:20Z tonton joined #lisp 2017-08-26T18:51:49Z sellout- joined #lisp 2017-08-26T18:53:18Z sz0 joined #lisp 2017-08-26T18:55:42Z tonton quit (Ping timeout: 248 seconds) 2017-08-26T18:56:43Z tonton joined #lisp 2017-08-26T19:00:31Z defaultxr joined #lisp 2017-08-26T19:05:27Z oleo: anyone else got problems with gsll ? 2017-08-26T19:05:50Z brendyn quit (Ping timeout: 248 seconds) 2017-08-26T19:06:04Z LooneyTunes quit (Remote host closed the connection) 2017-08-26T19:07:57Z shka_ quit (Ping timeout: 248 seconds) 2017-08-26T19:07:58Z tonton quit (Ping timeout: 248 seconds) 2017-08-26T19:09:03Z tonton joined #lisp 2017-08-26T19:09:46Z LooneyTunes joined #lisp 2017-08-26T19:10:22Z Murii|osx quit (Remote host closed the connection) 2017-08-26T19:15:30Z eazar001 joined #lisp 2017-08-26T19:24:45Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-26T19:24:52Z random-nick joined #lisp 2017-08-26T19:25:11Z DeadTrickster joined #lisp 2017-08-26T19:28:04Z quotation joined #lisp 2017-08-26T19:31:19Z eazar001 quit (Ping timeout: 246 seconds) 2017-08-26T19:38:38Z phinxy joined #lisp 2017-08-26T19:39:27Z phinxy left #lisp 2017-08-26T19:39:29Z EvW joined #lisp 2017-08-26T19:40:51Z eazar001 joined #lisp 2017-08-26T19:43:45Z oleo: and why the fuck does trivial-garbage use remf in it's make-weak-hash-table on it's args when args supposed to not be meddled with in the first place...... 2017-08-26T19:44:47Z oleo: when you modify passed arguments .......either use a copy or don't do it... 2017-08-26T19:45:32Z oleo: second it seems that it's failing anyway....the args still contains a :weakness-matters key to cl:make-hash-table which it does not understand ofc...... 2017-08-26T19:45:53Z oleo: and are keys supposed to be property-lists anyway ? 2017-08-26T19:46:23Z oleo: what are keys implemented as ? 2017-08-26T19:47:18Z _death: oleo: yes, it looks like a bug.. submit a patch 2017-08-26T19:47:34Z oleo: what about (setf args (remf args :blah)) ? 2017-08-26T19:47:46Z oleo: but that is still not ok 2017-08-26T19:48:00Z neoncontrails joined #lisp 2017-08-26T19:48:26Z _death: no, remf is already setting the place.. but it should use something like alexandria:remove-from-plist, or perhaps not at all 2017-08-26T19:48:35Z oleo: (setf args (remf (copy-seq args) :blah)) ? 2017-08-26T19:48:42Z oleo: no wait 2017-08-26T19:49:24Z eazar001 quit (Ping timeout: 276 seconds) 2017-08-26T19:49:52Z vlatkoB_ quit (Remote host closed the connection) 2017-08-26T19:50:08Z oleo: (setf bla (remf (copy-seq args) :blah)) it should not set args at all.... 2017-08-26T19:50:27Z oleo: and use an auxilary variable or so 2017-08-26T19:51:33Z oleo: _death: bringing more and more library interdependencies is not a solution at all.... or is it ? 2017-08-26T19:52:02Z _death: notice I said "something like" 2017-08-26T19:52:20Z oleo: ok 2017-08-26T19:52:52Z _death: remf returns a generalized boolean, so there's no point in assigning the result.. you could do something like (setf args (copy-list args)) (remf ...) 2017-08-26T19:53:42Z oleo: welp, you surely don't want to set args, something which is passed....without using an intermediary 2017-08-26T19:53:56Z _death: ? 2017-08-26T19:54:02Z broccolistem quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-26T19:54:08Z oleo: ok then why does remf fail then ? 2017-08-26T19:54:21Z _death: because args is a &rest list, that should not be modified 2017-08-26T19:54:51Z oleo: even if it were a normal passed arg it should not be modified afaik 2017-08-26T19:55:05Z _death: I don't understand how that is relevant 2017-08-26T19:55:05Z eazar001 joined #lisp 2017-08-26T19:55:06Z oleo: that summons just UB 2017-08-26T19:55:29Z oleo: anyway, remf fails 2017-08-26T19:55:32Z oleo notices 2017-08-26T19:55:57Z _death: that's not a good problem description 2017-08-26T20:01:14Z nullniverse quit (Quit: Leaving) 2017-08-26T20:07:43Z dieggsy joined #lisp 2017-08-26T20:10:56Z Murii|osx joined #lisp 2017-08-26T20:14:58Z dan joined #lisp 2017-08-26T20:15:41Z Murii|osx quit (Ping timeout: 248 seconds) 2017-08-26T20:16:38Z mistnim_ quit (Ping timeout: 260 seconds) 2017-08-26T20:17:58Z payphone_ joined #lisp 2017-08-26T20:18:15Z payphone quit (Ping timeout: 246 seconds) 2017-08-26T20:26:53Z slyrus: so it's 2017. when do we get proper local package nickname support? 2017-08-26T20:27:28Z Shinmera: As soon as you implement it for all implementations. 2017-08-26T20:27:35Z slyrus: heh 2017-08-26T20:27:56Z slyrus: i hate it when you try to use two packages with the same nickname... 2017-08-26T20:28:09Z aeth: You don't need it for all implementations. SBCL, CCL, ECL, ABCL are the priorities, in that order. 2017-08-26T20:28:40Z Shinmera: Well, that's just like, your opinion, man. 2017-08-26T20:29:06Z _death: some implementations already have it 2017-08-26T20:29:13Z aeth: I mean, the other ones are commerical (where someone paid to do it can do it), dead or dying (GCL or CLISP), etc. 2017-08-26T20:29:21Z slyrus: this implementation will not stand 2017-08-26T20:31:39Z Guest46808 quit (Quit: WeeChat 1.6) 2017-08-26T20:32:22Z libre-man joined #lisp 2017-08-26T20:32:54Z payphone joined #lisp 2017-08-26T20:33:18Z payphone_ quit (Ping timeout: 248 seconds) 2017-08-26T20:33:39Z dieggsy quit (Quit: ERC (IRC client for Emacs 26.0.50)) 2017-08-26T20:34:30Z dieggsy joined #lisp 2017-08-26T20:36:02Z tonton quit (Ping timeout: 240 seconds) 2017-08-26T20:43:20Z tonton joined #lisp 2017-08-26T20:45:41Z mson joined #lisp 2017-08-26T20:46:50Z vtomole joined #lisp 2017-08-26T20:47:09Z payphone quit (Ping timeout: 248 seconds) 2017-08-26T20:48:16Z tonton quit (Ping timeout: 240 seconds) 2017-08-26T20:48:33Z mistnim joined #lisp 2017-08-26T20:48:46Z payphone joined #lisp 2017-08-26T20:48:56Z tonton joined #lisp 2017-08-26T20:57:30Z Murii|osx joined #lisp 2017-08-26T20:58:55Z guna quit (Quit: Leaving) 2017-08-26T20:59:23Z guna joined #lisp 2017-08-26T21:06:02Z dieggsy quit (Ping timeout: 240 seconds) 2017-08-26T21:06:34Z knobo joined #lisp 2017-08-26T21:07:58Z tonton quit (Ping timeout: 240 seconds) 2017-08-26T21:08:06Z phoe: we cannot hold! 2017-08-26T21:09:09Z oleo: so broken.... 2017-08-26T21:11:46Z knobo quit (Ping timeout: 240 seconds) 2017-08-26T21:14:58Z tonton joined #lisp 2017-08-26T21:16:16Z test1600 quit (Ping timeout: 240 seconds) 2017-08-26T21:17:41Z vtomole quit (Ping timeout: 260 seconds) 2017-08-26T21:17:49Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-26T21:18:27Z FreeBirdLjj joined #lisp 2017-08-26T21:22:25Z mistnim quit (Ping timeout: 255 seconds) 2017-08-26T21:23:08Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2017-08-26T21:26:42Z pierpa joined #lisp 2017-08-26T21:36:41Z Murii|osx quit 2017-08-26T21:37:49Z quotation quit (Quit: Connection closed for inactivity) 2017-08-26T21:41:22Z tonton quit (Ping timeout: 240 seconds) 2017-08-26T21:42:00Z tonton joined #lisp 2017-08-26T21:49:25Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-26T22:02:58Z tonton quit (Ping timeout: 240 seconds) 2017-08-26T22:03:59Z random-nick quit (Remote host closed the connection) 2017-08-26T22:04:59Z tonton joined #lisp 2017-08-26T22:05:59Z EvW quit (Ping timeout: 255 seconds) 2017-08-26T22:09:32Z quazimodo joined #lisp 2017-08-26T22:14:47Z oleo: it doesn't even call trivial-gray:make-weak-hash-table, it just jumps to sb-ext:make-hash-table..... 2017-08-26T22:15:36Z oleo: as trampolining is involved i'd assume there's a bug in sbcl itself.....hmmmm 2017-08-26T22:23:53Z neoncontrails quit (Remote host closed the connection) 2017-08-26T22:26:14Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-26T22:26:40Z DeadTrickster joined #lisp 2017-08-26T22:32:36Z vtomole joined #lisp 2017-08-26T22:34:06Z bjorkintosh quit (Read error: Connection reset by peer) 2017-08-26T22:34:26Z bjorkintosh joined #lisp 2017-08-26T22:35:47Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-26T22:37:58Z phinxy joined #lisp 2017-08-26T22:41:02Z phinxy quit (Read error: Connection reset by peer) 2017-08-26T22:41:31Z phinxy joined #lisp 2017-08-26T22:43:36Z bjorkintosh quit (Read error: Connection reset by peer) 2017-08-26T22:43:55Z bjorkintosh joined #lisp 2017-08-26T22:44:25Z Cthulhux: hmm 2017-08-26T22:44:44Z Cthulhux: how can i do a "transition: translate(...) rotate(...)" in LASS? 2017-08-26T22:46:35Z dddddd quit (Ping timeout: 252 seconds) 2017-08-26T22:47:58Z sellout- quit (Ping timeout: 240 seconds) 2017-08-26T22:49:58Z phinxy quit (Read error: Connection reset by peer) 2017-08-26T22:50:13Z phinxy joined #lisp 2017-08-26T22:50:21Z phinxy quit (Client Quit) 2017-08-26T22:51:25Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-08-26T22:51:58Z varjag quit (Ping timeout: 240 seconds) 2017-08-26T22:54:50Z tonton quit (Ping timeout: 252 seconds) 2017-08-26T22:59:27Z dddddd joined #lisp 2017-08-26T23:00:27Z sz0 joined #lisp 2017-08-26T23:00:40Z jasom: aeth: clisp has been resuscitated recently 2017-08-26T23:01:04Z aeth: I haven't been keeping up with things in the past few months. I've been busy. 2017-08-26T23:02:41Z aeth: Good to hear that it's back. Maybe someone will improve its numerical performance. 2017-08-26T23:03:03Z aeth: Major low hanging fruit there, e.g. specialized arrays on the various float types. 2017-08-26T23:03:24Z Bike: upgrading asdf... would be good 2017-08-26T23:04:55Z aeth: I think clisp is the only major CL where this isn't the case: (upgraded-array-element-type 'single-float) => SINGLE-FLOAT 2017-08-26T23:05:46Z bjorkintosh quit (Ping timeout: 240 seconds) 2017-08-26T23:06:46Z tonton joined #lisp 2017-08-26T23:07:40Z wxie joined #lisp 2017-08-26T23:11:30Z oleo: another lisp to botch until there is no more ? 2017-08-26T23:11:33Z oleo: lol 2017-08-26T23:16:03Z ryan_vw_ joined #lisp 2017-08-26T23:16:30Z ryan_vw quit (Ping timeout: 248 seconds) 2017-08-26T23:16:56Z oleo: since when is inherit-stdin failin in sbcl ? 2017-08-26T23:17:45Z oleo: and which was the last release where the tests didn't fail apart from the expected ones ? 2017-08-26T23:21:17Z raynold joined #lisp 2017-08-26T23:25:28Z mson quit (Quit: Connection closed for inactivity) 2017-08-26T23:25:28Z quazimodo quit (Read error: Connection reset by peer) 2017-08-26T23:28:45Z oleo quit (Quit: irc client terminated!) 2017-08-26T23:31:22Z brendyn joined #lisp 2017-08-26T23:32:39Z oleo joined #lisp 2017-08-26T23:35:21Z vtomole quit (Ping timeout: 260 seconds) 2017-08-26T23:39:39Z eazar001 quit (Ping timeout: 264 seconds) 2017-08-26T23:48:13Z varjag joined #lisp 2017-08-26T23:48:27Z Kyo91_ joined #lisp 2017-08-26T23:52:44Z varjag quit (Ping timeout: 248 seconds) 2017-08-26T23:57:28Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-26T23:59:11Z pjb quit (Ping timeout: 252 seconds) 2017-08-26T23:59:42Z kozy quit (Remote host closed the connection) 2017-08-27T00:00:09Z kozy joined #lisp 2017-08-27T00:07:58Z clintm quit (Remote host closed the connection) 2017-08-27T00:08:04Z yhaq joined #lisp 2017-08-27T00:08:27Z yhaq left #lisp 2017-08-27T00:09:03Z malice quit (Remote host closed the connection) 2017-08-27T00:12:32Z Bock joined #lisp 2017-08-27T00:14:35Z dez: hi all, who can help me with running sbcl in script mode for MacOS? I trying to start script but it seems on running shell script instead sbcl 2017-08-27T00:14:50Z Cthulhux: what are you trying? 2017-08-27T00:15:58Z dez: i trying to execute file with #!/usr/local/bin/sbcl --script 2017-08-27T00:16:43Z dez: and it is not work 2017-08-27T00:18:06Z Kyo91_ joined #lisp 2017-08-27T00:18:39Z dez: may be anyone faced with that problem on macbook ? In the past I running that script on the Debian and all worked fine 2017-08-27T00:19:00Z aeth: Is that the actual path to your sbcl? 2017-08-27T00:19:15Z dez: yes i checked it 2017-08-27T00:19:49Z dez: if I load script from sbcl all works fine 2017-08-27T00:20:23Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-27T00:23:56Z tonton quit (Ping timeout: 252 seconds) 2017-08-27T00:25:13Z pjb joined #lisp 2017-08-27T00:25:37Z tonton joined #lisp 2017-08-27T00:27:09Z safe joined #lisp 2017-08-27T00:36:40Z dez: may be i don`t correct to usehasbang ? 2017-08-27T00:37:01Z dez: *don`t correct to use 2017-08-27T00:37:59Z eazar001 joined #lisp 2017-08-27T00:39:03Z Cthulhux: #! works for me on freebsd 2017-08-27T00:39:12Z Cthulhux: so it should on macos as well 2017-08-27T00:41:28Z Kyo91_ quit (Ping timeout: 260 seconds) 2017-08-27T00:43:09Z dez: yes, i undertood it, it works fine in linux... but at mac os it is not works. Another shell scripts works 2017-08-27T00:43:11Z pjb quit (Ping timeout: 252 seconds) 2017-08-27T00:44:12Z zulu_inuoe: If I have a form (make-array x :element-type 'y :adjustable t :fill-pointer 0), I'm getting a warning that "default initial element 0 is not a Y". Am I doing something wrong? The initial element shouldn't matter if my fill-pointer is 0, right? 2017-08-27T00:46:19Z AxelAlex joined #lisp 2017-08-27T01:00:57Z chens joined #lisp 2017-08-27T01:01:49Z Kyo91_ joined #lisp 2017-08-27T01:06:50Z Bike: zulu_inuoe: well, no, the array still has elements (if x isn't zero or nil), and you can access them with aref. 2017-08-27T01:08:26Z zulu_inuoe: Bike: Interesting. So.. I suppose I need to provide some dummy value then. 2017-08-27T01:08:50Z zulu_inuoe: I was sure that aref wouldn't let you access above the fill-pointer. But that's my mistake 2017-08-27T01:09:57Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T01:12:13Z d4ryus1 joined #lisp 2017-08-27T01:13:36Z Kyo91_ joined #lisp 2017-08-27T01:15:02Z d4ryus quit (Ping timeout: 240 seconds) 2017-08-27T01:15:19Z sellout- joined #lisp 2017-08-27T01:22:18Z Kyo91_ quit (Ping timeout: 260 seconds) 2017-08-27T01:24:50Z quazimodo joined #lisp 2017-08-27T01:25:10Z AxelAlex quit (Quit: AxelAlex) 2017-08-27T01:30:16Z malice joined #lisp 2017-08-27T01:35:17Z fiddlerwoaroof: has anyone else noticed that emacs misindents methods with qualifiers for alternative method combinations? 2017-08-27T01:35:33Z pierpa quit (Quit: Page closed) 2017-08-27T01:36:02Z fiddlerwoaroof: the line after (defmethod foo append ()...) is sometimes aligned with the method name. 2017-08-27T01:38:28Z Kyo91_ joined #lisp 2017-08-27T01:38:35Z mfiano: Can you give an example? 2017-08-27T01:39:19Z fiddlerwoaroof: http://paste.lisp.org/+7LI9 2017-08-27T01:39:27Z fiddlerwoaroof: try reindenting that in emacs 2017-08-27T01:39:57Z mfiano: It looks fine? 2017-08-27T01:40:48Z fiddlerwoaroof: Interesting, I get http://paste.lisp.org/+7LI9/1 2017-08-27T01:41:15Z mfiano: https://files.axity.net/images/screenshots/img-20170826214123.png 2017-08-27T01:41:17Z fiddlerwoaroof: I wonder if it's trying to indent my code as emacs lisp or something 2017-08-27T01:42:35Z mfiano: If it matters, I use Sly over SLIME, with paredit. Nothing else should matter 2017-08-27T01:45:56Z bjorksung joined #lisp 2017-08-27T01:46:12Z bjorksung is now known as bjorkintosh 2017-08-27T01:50:46Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T01:52:42Z parjanya joined #lisp 2017-08-27T01:57:57Z guna quit (Ping timeout: 240 seconds) 2017-08-27T02:02:58Z Kyo91_ joined #lisp 2017-08-27T02:04:17Z safe quit (Read error: Connection reset by peer) 2017-08-27T02:07:22Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-27T02:11:21Z emacsoma` joined #lisp 2017-08-27T02:12:50Z emacsomancer quit (Ping timeout: 252 seconds) 2017-08-27T02:16:16Z sellout-1 joined #lisp 2017-08-27T02:18:54Z sellout- quit (Ping timeout: 248 seconds) 2017-08-27T02:19:25Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-27T02:19:42Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T02:19:42Z FreeBirdLjj joined #lisp 2017-08-27T02:22:23Z Karl_Dscc joined #lisp 2017-08-27T02:23:46Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-27T02:25:39Z jamtho_ joined #lisp 2017-08-27T02:30:00Z safe joined #lisp 2017-08-27T02:30:16Z karswell_ quit (Remote host closed the connection) 2017-08-27T02:31:23Z karswell_ joined #lisp 2017-08-27T02:35:19Z aindilis joined #lisp 2017-08-27T02:46:04Z JuanDaugherty joined #lisp 2017-08-27T02:59:58Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-27T03:10:35Z eazar001 quit (Ping timeout: 252 seconds) 2017-08-27T03:16:06Z Kyo91_ joined #lisp 2017-08-27T03:20:13Z FreeBirdLjj joined #lisp 2017-08-27T03:20:40Z neoncontrails joined #lisp 2017-08-27T03:21:00Z KarlDscc joined #lisp 2017-08-27T03:21:02Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T03:24:16Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-27T03:25:00Z Karl_Dscc quit (Ping timeout: 248 seconds) 2017-08-27T03:25:23Z myrkraverk_ joined #lisp 2017-08-27T03:25:34Z myrkraverk quit (Ping timeout: 248 seconds) 2017-08-27T03:25:43Z myrkraverk_ is now known as myrkraverk 2017-08-27T03:31:50Z dddddd quit (Remote host closed the connection) 2017-08-27T03:42:39Z FalconPilot quit (Ping timeout: 255 seconds) 2017-08-27T03:43:09Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-27T03:43:25Z KarlDscc quit (Remote host closed the connection) 2017-08-27T03:51:15Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-27T03:55:32Z FalconPilot joined #lisp 2017-08-27T04:03:17Z elfmacs joined #lisp 2017-08-27T04:10:08Z shka_ joined #lisp 2017-08-27T04:20:42Z FreeBirdLjj joined #lisp 2017-08-27T04:21:09Z beach: Good morning everyone! 2017-08-27T04:22:37Z mfiano: Morning 2017-08-27T04:24:46Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-27T04:31:01Z emacsomancer joined #lisp 2017-08-27T04:51:41Z elderK joined #lisp 2017-08-27T04:52:55Z emaczen joined #lisp 2017-08-27T04:55:40Z yeticry joined #lisp 2017-08-27T05:01:24Z thinkpad quit (Read error: Connection reset by peer) 2017-08-27T05:02:55Z serviteur quit (Remote host closed the connection) 2017-08-27T05:03:05Z elderK quit (Quit: Seeya!) 2017-08-27T05:03:08Z fiddlerwoaroof quit (Ping timeout: 248 seconds) 2017-08-27T05:04:58Z fiddlerwoaroof joined #lisp 2017-08-27T05:08:11Z thinkpad joined #lisp 2017-08-27T05:17:49Z Kyo91_ joined #lisp 2017-08-27T05:19:42Z Bike quit (Ping timeout: 248 seconds) 2017-08-27T05:20:40Z parjanya: mornings! :) 2017-08-27T05:24:13Z Kyo91_ quit (Ping timeout: 252 seconds) 2017-08-27T05:28:10Z mishoo_ joined #lisp 2017-08-27T05:29:31Z PinealGlandOptic joined #lisp 2017-08-27T05:37:16Z teggi joined #lisp 2017-08-27T05:41:58Z rngoodn joined #lisp 2017-08-27T05:47:42Z emaczen left #lisp 2017-08-27T05:58:27Z yeticry quit (Ping timeout: 276 seconds) 2017-08-27T06:04:24Z yeticry joined #lisp 2017-08-27T06:06:29Z lonjil: good mornings as well 2017-08-27T06:08:45Z malice quit (Remote host closed the connection) 2017-08-27T06:10:59Z quazimodo quit (Read error: Connection reset by peer) 2017-08-27T06:11:55Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-27T06:18:46Z wooden quit (Ping timeout: 240 seconds) 2017-08-27T06:20:43Z wooden joined #lisp 2017-08-27T06:24:57Z wooden quit (Ping timeout: 240 seconds) 2017-08-27T06:25:37Z damke joined #lisp 2017-08-27T06:25:54Z wooden joined #lisp 2017-08-27T06:28:23Z myrkraverk_ joined #lisp 2017-08-27T06:28:28Z myrkraverk quit (Ping timeout: 248 seconds) 2017-08-27T06:31:00Z myrkraverk_ is now known as myrkraverk 2017-08-27T06:34:23Z mistnim joined #lisp 2017-08-27T06:37:43Z damke_ joined #lisp 2017-08-27T06:38:42Z damke quit (Ping timeout: 240 seconds) 2017-08-27T06:38:47Z daemoz quit (Ping timeout: 268 seconds) 2017-08-27T06:39:01Z defaultxr quit (Ping timeout: 252 seconds) 2017-08-27T06:40:07Z safe quit (Read error: Connection reset by peer) 2017-08-27T06:40:35Z mistnim quit (Remote host closed the connection) 2017-08-27T06:40:48Z mistnim joined #lisp 2017-08-27T06:53:48Z daemoz joined #lisp 2017-08-27T06:58:16Z mistnim quit (Ping timeout: 240 seconds) 2017-08-27T06:59:21Z nullniverse joined #lisp 2017-08-27T07:01:11Z damke joined #lisp 2017-08-27T07:03:09Z nsrahmad joined #lisp 2017-08-27T07:03:41Z quazimodo joined #lisp 2017-08-27T07:03:42Z damke_ quit (Ping timeout: 240 seconds) 2017-08-27T07:06:37Z clintm joined #lisp 2017-08-27T07:10:50Z clintm: Do I have to manually export the symbols for accessors to a class if I want to use a class defined in one package in another? 2017-08-27T07:10:59Z shka_: clintm: yes 2017-08-27T07:11:02Z clintm: I'm surprised that I've never run into this before. 2017-08-27T07:11:14Z shka_: not at all 2017-08-27T07:11:39Z shka_: accessors are not that often used far away 2017-08-27T07:12:16Z Murii|osx joined #lisp 2017-08-27T07:12:26Z shka_: at least that's my observation 2017-08-27T07:12:40Z Shinmera: clintm: You can IMPORT symbols even if they're not exported from their home package. 2017-08-27T07:12:42Z clintm: No, I guess not. I've got postmodern classes that I'd like to export out of a common package and use in the client and server packages. I just assumed that there would be something at the language level to handle this. Some sort of magic that happened when you exported a class out of a package. 2017-08-27T07:13:04Z Shinmera: And accessors are just functions like any other. 2017-08-27T07:13:22Z Shinmera: Packages handle symbols. What the symbols do is completely disconnected from that. 2017-08-27T07:13:33Z Shinmera: Or rather, what the symbols name. 2017-08-27T07:13:41Z nsrahmad quit (Quit: Leaving) 2017-08-27T07:14:00Z clintm: Right, it's all about the symbols, after all. 2017-08-27T07:14:57Z shka_: you can import without export, just don't do it 2017-08-27T07:14:59Z shka_: ;-) 2017-08-27T07:15:11Z clintm: hehe right. 2017-08-27T07:16:09Z beach: Or, better yet, neither import not export. Just use explicit package prefixes. 2017-08-27T07:16:12Z clintm: So is it more common to call slot-value, etc. when using classes from another package? 2017-08-27T07:16:17Z beach: Er, export, but not import. 2017-08-27T07:16:27Z shka_: yes 2017-08-27T07:16:30Z beach: clintm: No. 2017-08-27T07:16:37Z shka_: that makes things easier 2017-08-27T07:16:37Z beach: clintm: Don't use slot-value. 2017-08-27T07:16:47Z shka_: clintm: not really 2017-08-27T07:16:51Z Shinmera: clintm: slot-value is sometimes treated akin to using unexported symbols. 2017-08-27T07:17:01Z beach: clintm: It makes things harder, because you don't respect the protocols if you use slot-value. 2017-08-27T07:17:12Z Shinmera: Since the accessor might do additional things other than setting the slot. Thus accessing the slot breaks the protocol. 2017-08-27T07:17:37Z shka_: clintm: what is really common, is that slot accessors are often not exported as they are a little bit low level 2017-08-27T07:17:40Z beach: clintm: You should have a package where the class name and the accessor names are exported, but preferably not the slot names. 2017-08-27T07:17:41Z mistnim joined #lisp 2017-08-27T07:17:49Z sunset_NOVA joined #lisp 2017-08-27T07:18:00Z borei quit (Ping timeout: 246 seconds) 2017-08-27T07:18:25Z beach: clintm: shka_ is right in that not all slot accessors are necessarily exported. 2017-08-27T07:18:48Z shka_: clintm: that may explain why you never run into this issue 2017-08-27T07:19:10Z shka_: this may be the first time you actually want to use accessor outside of it's package! :-) 2017-08-27T07:19:29Z shka_: as for import 2017-08-27T07:19:34Z shka_: yeah, i agree with beach 2017-08-27T07:19:39Z clintm: Ok, so perhaps a better question might be, how do you handle these situations? Obviously, I don't want to (defclass) the same thing in two packages, but rather have one common point of reference. They're just your normal (defclass a () ((b :initarg :b :accessor a-b) type of things. 2017-08-27T07:20:22Z beach: clintm: You just refer to the class using a package prefix, like package1:a. 2017-08-27T07:20:36Z Kyo91_ joined #lisp 2017-08-27T07:20:41Z shka_: clintm: exporting accessors is not wrong, it is just less common then you may think 2017-08-27T07:20:55Z beach: clintm: For example, if you want to define a method on it while you are in a different package, you say (defmethod package1:a (...) ...) 2017-08-27T07:21:18Z mfiano: beach is right. You shouldn't abuse USE-PACKAGE. 2017-08-27T07:21:56Z shka_: clintm: https://github.com/sirherrbatka/cl-data-structures/blob/master/src/dicts/hamt/api.lisp#L545 example 2017-08-27T07:22:00Z clintm: mfiano: yea, I think I've grown to used to using use-package. 2017-08-27T07:22:02Z beach: clintm: (defparameter *p* (make-instance 'package1:a :b ...)) then (package1:a-b *p*). 2017-08-27T07:22:22Z beach: clintm: It is something you should get used to getting rid of. 2017-08-27T07:22:39Z shka_: https://github.com/sirherrbatka/cl-data-structures/blob/master/src/dicts/hamt/api.lisp#L14 second example 2017-08-27T07:22:49Z beach: clintm: You should :USE only packages that are completely stable. In practice only COMMON-LISP. 2017-08-27T07:22:55Z mfiano: using USE-PACKAGE for anything other than cl and perhaps utility libraries like alexandria (but even that's pushing it), makes code complicated, and just introduces problems like these. It also makes others trying to make sense of your code that much more difficult, not knowing where symbols are coming from. 2017-08-27T07:23:18Z beach: clintm: I totally agree with mfiano. 2017-08-27T07:23:25Z shka_: also, there is one extra point 2017-08-27T07:23:50Z shka_: it is easier to catch reader errors when you are refactoring if you are not using useing 2017-08-27T07:24:25Z beach: Yes, many things become easier to understand and debug. 2017-08-27T07:24:49Z Shinmera shrugs 2017-08-27T07:24:54Z shka_: so yeah, i don't use use-package anymore 2017-08-27T07:25:00Z shka_: almost 2017-08-27T07:25:04Z clintm: shka_: very true. I had almost forgotten about the last time I made a big symbol soup and was trying to make sense of it a few months later. Thank you for the reminder. 2017-08-27T07:25:10Z Shinmera: It really depends. Sometimes, when you have an overabundant need to access the symbols of another package, :use is appropriate. 2017-08-27T07:25:13Z Kyo91_ quit (Ping timeout: 252 seconds) 2017-08-27T07:25:23Z shka_: sure 2017-08-27T07:25:37Z shka_: i am ok with :use alexandria 2017-08-27T07:25:56Z beach: I use :USE also when I have two packages that evolve in parallel, like package P and package P-TEST, where the latter contains code for testing code in P. 2017-08-27T07:26:22Z Shinmera: And sometimes the other package is strictly engineered to be :used, like in the case of my vector library where everything is prefixed with a `v`. Typing stuff like (3d-vectors:+ a (3d-vectors:vec3 0 1 2) (3d-vectors:- ...)) makes things very bothersome to read. 2017-08-27T07:26:31Z beach: [So to speak. Packages don't contain code of course.] 2017-08-27T07:27:43Z beach: Shinmera: In cases like that, I would have preferred to see a package alias such as 3dv. 2017-08-27T07:28:14Z clintm: Thanks, all of you. I've got some refactoring to do now! 2017-08-27T07:28:47Z beach: clintm: Good luck! 2017-08-27T07:28:56Z shka_: it saves time on the long run 2017-08-27T07:29:03Z shka_: so yeah, good luck 2017-08-27T07:29:10Z Shinmera: beach: (3dv:+ ..) is still quite a bit longer than (v+ ...). This is one of the very few cases where I really, really want brevity in names. 2017-08-27T07:29:13Z mfiano: I do agree with Shinmera. My linear algebra is the same way. There are exceptions to every rule. 2017-08-27T07:29:26Z mfiano: But just do not abuse it :) 2017-08-27T07:30:27Z mfiano: When you are chaining several vector/matrix operations together using ~10 symbols that should be printed on the same line to be read just like it is presented in a math text, it makes sense. 2017-08-27T07:30:31Z pillton quit (Ping timeout: 240 seconds) 2017-08-27T07:31:31Z beach: So the message to clintm is "don't :USE any packages, except MINE". 2017-08-27T07:31:47Z Shinmera: My message never was not to use. 2017-08-27T07:31:57Z shka_: … and even then, better not ;-) 2017-08-27T07:32:27Z clintm: haha 2017-08-27T07:32:36Z clintm: Yes, well, I wasn't going to say it. 2017-08-27T07:34:04Z mishoo_ quit (Ping timeout: 248 seconds) 2017-08-27T07:34:09Z clintm: Hrm, yes, a little refactoring is needed, I'd say. (defpackage with a :use list that has 9 packages in it. What have I become? 2017-08-27T07:34:23Z mfiano: Wow 2017-08-27T07:35:02Z mfiano: It is tempting to do for sure, but not doing that will save you and people maintaining your code a lot of trouble. 2017-08-27T07:36:52Z shka_: clintm: evil starts with small seeds 2017-08-27T07:37:00Z shka_: purge the unclean 2017-08-27T07:37:30Z clintm: Purging away as we speak. 2017-08-27T07:38:26Z beach: clintm: Don't worry. The code I wrote a decade or so ago looks the same. But now I am having a very hard time understanding it, debugging it, modifying it, etc. I think it is normal for a programmer to have his or her programming style evolve over time. 2017-08-27T07:38:45Z clintm: I'm both a bit scared and excited for the day when I can hire a seasoned CL programmer. Excited by what I'll learn, and scared of what they'll see. I'm sure I'm doing a lot of things against the norm which I blame on working in relative isolation. 2017-08-27T07:39:20Z mfiano: clintm: read your messages lately? 2017-08-27T07:39:51Z mistnim quit (Ping timeout: 276 seconds) 2017-08-27T07:40:29Z clintm: mfiano: /msg? I don't see a new one. 2017-08-27T07:40:46Z mfiano: clintm: Hehe. I had replied to you on reddit 2017-08-27T07:41:43Z Jesin quit (Ping timeout: 252 seconds) 2017-08-27T07:41:50Z clintm: oh! right, let me look. 2017-08-27T07:45:09Z shka_: what reddit? 2017-08-27T07:46:14Z clintm: the one on the internet 2017-08-27T07:46:27Z clintm: *rimshot* /r/common_lisp I think 2017-08-27T07:46:54Z clintm: Oh, no, it was in /r/lisp 2017-08-27T07:49:12Z shka_: right 2017-08-27T07:49:53Z shka_ quit (Quit: Konversation terminated!) 2017-08-27T07:54:44Z shka joined #lisp 2017-08-27T07:58:44Z clintm quit (Remote host closed the connection) 2017-08-27T07:58:46Z teggi quit (Quit: Leaving...) 2017-08-27T08:01:07Z _main_ joined #lisp 2017-08-27T08:01:27Z _main_ quit (Read error: Connection reset by peer) 2017-08-27T08:02:07Z _main_ joined #lisp 2017-08-27T08:03:23Z _main_ quit (Read error: Connection reset by peer) 2017-08-27T08:03:42Z __main__ quit (Ping timeout: 240 seconds) 2017-08-27T08:04:59Z __main__ joined #lisp 2017-08-27T08:13:28Z LooneyTunes quit (Ping timeout: 255 seconds) 2017-08-27T08:14:39Z shka: oh, gsll finally works with newest GSL 2017-08-27T08:14:41Z shka: SWEET! 2017-08-27T08:16:33Z chens quit (Remote host closed the connection) 2017-08-27T08:21:04Z __paul0 joined #lisp 2017-08-27T08:24:48Z _paul0 quit (Ping timeout: 255 seconds) 2017-08-27T08:25:52Z test1600 joined #lisp 2017-08-27T08:36:33Z phoe: beach: it is normal, at least for me. I often stare at my own code from 6+ months ago and go "who the hell wrote this piece of crap" and then I look at the commit history and go "...oh" 2017-08-27T08:38:03Z mistnim joined #lisp 2017-08-27T08:39:23Z beach: I fully understand. 2017-08-27T08:39:26Z beach has to go. 2017-08-27T08:39:32Z beach left #lisp 2017-08-27T08:42:15Z pjb joined #lisp 2017-08-27T08:49:54Z eponym joined #lisp 2017-08-27T08:50:07Z mishoo_ joined #lisp 2017-08-27T08:52:28Z epony quit (Ping timeout: 246 seconds) 2017-08-27T08:58:34Z eponym quit (Quit: QUIT) 2017-08-27T09:01:11Z beach joined #lisp 2017-08-27T09:01:43Z beach: phoe: Though I find that the 6-month period you mention gets longer over time, fortunately. 2017-08-27T09:02:01Z phoe: beach: Me too. 2017-08-27T09:02:05Z phoe: It was 2 months for me initially. 2017-08-27T09:02:12Z beach: Yeah. 2017-08-27T09:02:23Z random-nick joined #lisp 2017-08-27T09:02:25Z phoe: Now, the code I wrote 2 months ago, is readable to me and looks somewhat nice. 2017-08-27T09:03:07Z beach: I think it is part of a normal process. 2017-08-27T09:03:12Z phoe: Yep 2017-08-27T09:09:02Z nowhere_man quit (Ping timeout: 248 seconds) 2017-08-27T09:13:07Z jack_rabbit joined #lisp 2017-08-27T09:14:28Z [jlk] joined #lisp 2017-08-27T09:15:42Z guna joined #lisp 2017-08-27T09:21:23Z Kyo91_ joined #lisp 2017-08-27T09:22:53Z FreeBirdLjj joined #lisp 2017-08-27T09:25:41Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T09:26:50Z epony joined #lisp 2017-08-27T09:28:13Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-27T09:28:16Z beach quit (Ping timeout: 240 seconds) 2017-08-27T09:28:50Z DeadTrickster joined #lisp 2017-08-27T09:29:41Z symm- joined #lisp 2017-08-27T09:36:23Z test1600 quit (Ping timeout: 260 seconds) 2017-08-27T09:36:42Z elfmacs quit (Quit: WeeChat 1.9) 2017-08-27T09:38:18Z beach joined #lisp 2017-08-27T09:39:36Z beach: minion: Memo for Bike: At some point, I decided to replace fixnum-+ etc. with fixnum-add etc., but I never removed the old primops, instructions, and documentation. Can you confirm that Clasp is not using the old stuff so that I can remove it? 2017-08-27T09:39:36Z minion: Remembered. I'll tell Bike when he/she/it next speaks. 2017-08-27T09:43:57Z beach quit (Ping timeout: 240 seconds) 2017-08-27T09:48:46Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-27T09:49:20Z DeadTrickster joined #lisp 2017-08-27T09:59:54Z Bike joined #lisp 2017-08-27T10:05:03Z beach joined #lisp 2017-08-27T10:05:55Z beach: Boy, the Wifi on this train is flaky. Luckily, someone on the train seems to have forgotten to set a password on the wifi of his or her OnePlus 3 smartphone. 2017-08-27T10:06:06Z Shinmera: Heh! 2017-08-27T10:08:46Z beach: Now, it is not entirely unlikely that that person will get off at this station we are now approaching. 2017-08-27T10:09:12Z phoe: beach: now you're riding the emotional rollercoaster 2017-08-27T10:09:37Z beach: I'll try to stay calm and focused. 2017-08-27T10:20:03Z beach: Uh oh. 2017-08-27T10:23:27Z phoe: https://i.imgtc.com/FAtGtpE.png 2017-08-27T10:24:45Z beach quit (Ping timeout: 240 seconds) 2017-08-27T10:27:51Z ristur joined #lisp 2017-08-27T10:30:13Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-27T10:30:48Z DeadTrickster joined #lisp 2017-08-27T10:36:04Z Bike quit (Ping timeout: 246 seconds) 2017-08-27T10:38:06Z whoman quit (Ping timeout: 248 seconds) 2017-08-27T10:46:38Z quazimodo quit (Read error: Connection reset by peer) 2017-08-27T10:48:14Z joga quit (Ping timeout: 246 seconds) 2017-08-27T10:49:10Z joga joined #lisp 2017-08-27T10:51:13Z guna quit (Quit: Leaving) 2017-08-27T10:58:36Z grublet quit (Quit: Leaving) 2017-08-27T10:59:10Z symm- quit (Ping timeout: 252 seconds) 2017-08-27T10:59:41Z klltkr joined #lisp 2017-08-27T11:00:18Z damke quit (Read error: Connection reset by peer) 2017-08-27T11:00:45Z damke joined #lisp 2017-08-27T11:02:50Z Karl_Dscc joined #lisp 2017-08-27T11:05:49Z jsnell quit (Ping timeout: 246 seconds) 2017-08-27T11:06:41Z jsnell joined #lisp 2017-08-27T11:09:20Z haom joined #lisp 2017-08-27T11:09:28Z haom: hello 2017-08-27T11:10:26Z haom: when compiling and loading a library from quicklisp, is there a way for the user of the library to pass a parameter how exactly the library should be built? 2017-08-27T11:10:48Z EvW joined #lisp 2017-08-27T11:12:08Z _death: quicklisp is for loading stuff at the repl.. you actually want to read up on asdf 2017-08-27T11:13:05Z haom: i know that asdf is used under the hood, i hoped somebody could give me a hint what to look for. 2017-08-27T11:13:17Z _death: the question is too general 2017-08-27T11:13:23Z phoe: haom: what is that you need to modify in the build process of a given library? 2017-08-27T11:14:15Z haom: for now a simple boolean yes or no, whether the library should be built one (default) way or another. 2017-08-27T11:14:36Z phoe: haom: I don't get it. 2017-08-27T11:14:43Z _death: one way to do that is by setting a special variable 2017-08-27T11:14:49Z phoe: You want to pass a boolean to a built library or return a boolean from a built library? 2017-08-27T11:15:14Z phoe: Or pass a boolean to a library before it's built or return a boolean from a variable before it's built? 2017-08-27T11:15:36Z haom: i want the user to decide whether he would like to use the default build parameters, or some legacy features i would support sometime in the future. 2017-08-27T11:15:37Z guna_ joined #lisp 2017-08-27T11:16:02Z haom: i want to pass a bolean to the build system. 2017-08-27T11:16:08Z _death: another way is to use reader conditionals 2017-08-27T11:16:09Z phoe: from the CL side, you could use *features* for that or set a special variable. 2017-08-27T11:16:18Z wxie quit (Remote host closed the connection) 2017-08-27T11:16:30Z phoe: from the ASDF side, there should be something useful for that - but I don't know ASDF enough. 2017-08-27T11:16:39Z wxie joined #lisp 2017-08-27T11:16:56Z haom: phoe: my question was where the user could set that special variable before loading it with quicklisp so asdf can see it during the build. 2017-08-27T11:17:22Z phoe: haom: (defvar *foo* t) (ql:quickload :something-that-depends-on-foo) is the naïve solution 2017-08-27T11:17:52Z guna_ quit (Client Quit) 2017-08-27T11:17:55Z phoe: because then the code being built will be able to see if CL-USER:*FOO* is bound. 2017-08-27T11:18:16Z phoe: but that solution won't work every time because if SOMETHING-THAT-DEPENDS-ON-FOO is already compiled, then the precompiled FASLs will be loaded. 2017-08-27T11:18:34Z phoe: So you might need to (asdf:operate 'asdf:load-op :something-that-depends-on-foo :force t) to force recompilation. 2017-08-27T11:18:42Z phoe: at least that's what I do 2017-08-27T11:18:49Z haom: mhm, i hoped for something like (ql:quickload "library" :parameter t) 2017-08-27T11:18:59Z jamtho_ joined #lisp 2017-08-27T11:20:11Z _death: another solution is to support such parameterization at runtime 2017-08-27T11:20:42Z haom: yeah, that is my plan b. 2017-08-27T11:21:37Z guna_ joined #lisp 2017-08-27T11:22:12Z Kyo91_ joined #lisp 2017-08-27T11:22:22Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-27T11:23:24Z guna_ is now known as guna` 2017-08-27T11:23:50Z guna` quit (Client Quit) 2017-08-27T11:26:58Z Kyo91_ quit (Ping timeout: 255 seconds) 2017-08-27T11:31:58Z joga quit (Changing host) 2017-08-27T11:31:58Z joga joined #lisp 2017-08-27T11:34:27Z lnostdal joined #lisp 2017-08-27T11:34:59Z test1600 joined #lisp 2017-08-27T11:43:16Z mistnim quit (Quit: Leaving) 2017-08-27T11:46:45Z EvW quit (Ping timeout: 246 seconds) 2017-08-27T11:47:15Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-27T11:50:12Z Mon_Ouie joined #lisp 2017-08-27T11:52:44Z random-nick: where can I read about the thread safety of standard common lisp functions? 2017-08-27T11:54:29Z _death: your implementation's manual 2017-08-27T11:54:30Z guna joined #lisp 2017-08-27T11:56:51Z vaporatorius__ quit (Quit: Leaving) 2017-08-27T11:57:04Z vaporatorius joined #lisp 2017-08-27T11:57:05Z vaporatorius quit (Changing host) 2017-08-27T11:57:05Z vaporatorius joined #lisp 2017-08-27T11:58:08Z Shinmera: well, most likely not even that and instead the implementation's source code instead. 2017-08-27T11:58:31Z Shinmera: *-instead{2} 2017-08-27T11:59:23Z Bike joined #lisp 2017-08-27T12:02:45Z shka: random-nick: you can assume that it is unsafe 2017-08-27T12:02:55Z Shinmera: depends on unsafe in what way 2017-08-27T12:08:59Z vaporatorius quit (Remote host closed the connection) 2017-08-27T12:09:00Z grublet joined #lisp 2017-08-27T12:11:57Z test1600 quit (Ping timeout: 248 seconds) 2017-08-27T12:14:22Z dddddd joined #lisp 2017-08-27T12:16:50Z EvW joined #lisp 2017-08-27T12:17:08Z Karl_Dscc quit (Remote host closed the connection) 2017-08-27T12:18:10Z JuanDaugherty joined #lisp 2017-08-27T12:22:11Z varjag joined #lisp 2017-08-27T12:22:50Z jamtho_ quit (Ping timeout: 246 seconds) 2017-08-27T12:22:59Z Kyo91_ joined #lisp 2017-08-27T12:25:34Z test1600 joined #lisp 2017-08-27T12:25:42Z trigt[m] joined #lisp 2017-08-27T12:27:21Z varjag quit (Ping timeout: 255 seconds) 2017-08-27T12:27:21Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T12:30:59Z phoe: unsafe in general 2017-08-27T12:31:14Z phoe: everyone who uses these function in multithreaded code dies after some time 2017-08-27T12:32:38Z Shinmera: phoe: Is LIST unsafe? Is CAR unsafe? Is APPEND unsafe? 2017-08-27T12:33:07Z Shinmera: Unsafe always depends on what you think you're going to be doing, or what the implementation might be doing. 2017-08-27T12:33:29Z Shinmera: If the functions just were "unsafe in general" you could not write parallel code in CL period. 2017-08-27T12:33:32Z Shinmera: Which is just bogus. 2017-08-27T12:35:10Z varjag joined #lisp 2017-08-27T12:37:52Z edgar-rft: Shinmera: People tend to die at the end of their life. How can LIST, CAR, or APPEND save me from that? 2017-08-27T12:38:56Z Shinmera: edgar-rft: What it means to die is debatable. For example, some say if you spend your life making a legacy, you carry on after your body turns into a corpse. 2017-08-27T12:39:09Z Shinmera: edgar-rft: Given that, you can use Lisp programs to carry some part of you on into the future. 2017-08-27T12:40:36Z edgar-rft: Shinmera: That's true. Lisp will save me. Praise to the gods of Lisp. 2017-08-27T12:43:28Z EvW quit (Ping timeout: 255 seconds) 2017-08-27T12:58:34Z shka: Shinmera: unsafe for modification, happy? 2017-08-27T12:58:48Z Shinmera: shka: What kind of modification 2017-08-27T12:59:25Z lnostdal quit (Ping timeout: 248 seconds) 2017-08-27T13:01:56Z damke_ joined #lisp 2017-08-27T13:02:04Z shka: i would not trust any 2017-08-27T13:02:12Z shka: unless documentation says otherwise 2017-08-27T13:02:24Z shka: and no 2017-08-27T13:02:42Z shka: non-destructive modification does not count as modification 2017-08-27T13:03:11Z _death: what is a nondestructive modification? 2017-08-27T13:03:19Z Shinmera: My point is that it is very difficult to say under which circumstances which things are "safe" to parallelise. Making any kind of blanket statement is just stupid and harmful. 2017-08-27T13:03:26Z shka: i don't know but people are using this term so let it be 2017-08-27T13:03:41Z damke quit (Ping timeout: 240 seconds) 2017-08-27T13:04:07Z Shinmera: In this case the question was about CL standard functions, implying random-nick was asking whether functions might have an internal side-effect with the implementation outside of the data structures being directly accessed. 2017-08-27T13:04:25Z Shinmera: Which can be the case for literally anything, if the implementation so chooses. But it is also very likely not the case for the vast majority of functions. 2017-08-27T13:04:43Z shka: Shinmera: standard does not know about threads and so those not cover this topic, if you want to ensure that you program is portable, assuming that anything that is not just read is unsafe is your best bet 2017-08-27T13:05:08Z Shinmera: shka: And that's an absolutely worthless thing to say because no implementation acts like nothing is safe. 2017-08-27T13:05:30Z BitPuffin|osx joined #lisp 2017-08-27T13:05:57Z shka: Shinmera: and to check what is happening underneath i should check source code? 2017-08-27T13:06:31Z Shinmera: The source code is the definitive answer, always. 2017-08-27T13:06:35Z shka: this is just not realistic approach 2017-08-27T13:06:36Z nirved joined #lisp 2017-08-27T13:06:49Z Shinmera: I'll tell you what's not realistic: saying that nothing is safe. 2017-08-27T13:07:15Z mishoo_ quit (Ping timeout: 246 seconds) 2017-08-27T13:07:52Z shka: how checking every single function for thread safety allows me to write programs? 2017-08-27T13:07:59Z shka: nobody will do that, sorry 2017-08-27T13:08:34Z Shinmera: Outside of a select few things like COMPILE/COMPILE-FILE and definitions, you can pretty safely assume that there will not be internal side effects. 2017-08-27T13:08:37Z shka: the only practical approach is to assume no thread safety, unless documentation says otherwise 2017-08-27T13:08:55Z Shinmera: That's not practical at all because that's hardly ever documented, if ever at all. 2017-08-27T13:09:36Z shka: yup 2017-08-27T13:09:46Z _death: if the source code is the definitive answer, then there are no bugs, and the definition changes whenever the source changes.. that is why the specification/manual should normally be given precedence 2017-08-27T13:09:53Z SAL9000_ joined #lisp 2017-08-27T13:10:05Z shka: make-hash-table in sbcl can be synchronized, same for CCL 2017-08-27T13:10:07Z sunset_NOVA quit (Quit: leaving) 2017-08-27T13:10:08Z vaporatorius joined #lisp 2017-08-27T13:10:18Z shka: but i would never assume that sort is thread safe 2017-08-27T13:10:29Z Shinmera: thread safe for what 2017-08-27T13:10:36Z SAL9000 quit (Ping timeout: 248 seconds) 2017-08-27T13:10:41Z Shinmera: safe for the thing it operates on, or safe for the rest of the environment? 2017-08-27T13:10:52Z shka: the thing if operates on 2017-08-27T13:10:55Z Shinmera: safe for multiple sorts on mutually exclusive structures at the same time? 2017-08-27T13:11:25Z vap1 joined #lisp 2017-08-27T13:11:36Z shka: sure, that one is safe or whole env is useless in multithreading 2017-08-27T13:12:13Z shka: but no singular instance modification is safe, unless described as such 2017-08-27T13:12:38Z Shinmera: _death: Sure. I like specifications, but most of the time there just ain't any. 2017-08-27T13:13:00Z shka: otherwise, we are in the wonderful land of GIL 2017-08-27T13:13:02Z _death: last I remember the term "thread safety" was dropped off the multithreading community's jargon in the recent decade, because of its ambiguity and vagueness 2017-08-27T13:13:10Z raynold quit (Quit: Connection closed for inactivity) 2017-08-27T13:13:23Z Shinmera: _death: I think that's a good move. 2017-08-27T13:17:43Z SAL9000 joined #lisp 2017-08-27T13:19:40Z haom quit (Ping timeout: 248 seconds) 2017-08-27T13:19:58Z SAL9000_ quit (Ping timeout: 252 seconds) 2017-08-27T13:24:03Z oleo quit (Read error: Connection reset by peer) 2017-08-27T13:24:52Z _death: it also makes sense to distinguish the current state of affairs from the desired state of affairs.. in the current state of affairs it's true that claims about multithreading for an implementation like sbcl are split between the manual, docstrings, and comments, and that some assumptions need to be gleaned from the source 2017-08-27T13:25:38Z shka: ideally, thread safety information would be in the standard 2017-08-27T13:26:34Z _death: Java went along that path 2017-08-27T13:26:56Z shka: that sounds like it is a bad thing ;-) 2017-08-27T13:28:36Z _death: I dislike Java for many reasons, but not everything about it is terrible.. in this case, I have too little knowledge (or interest) to give judgment, although I think if you go that path it's much more important to get things right 2017-08-27T13:30:01Z wxie: This channel is amazing: 373 users with only 1 moderator. 2017-08-27T13:30:29Z _death: freenode has ChanServ 2017-08-27T13:30:37Z shka: what is so amazing about it? 2017-08-27T13:30:55Z guna is now known as __nil 2017-08-27T13:31:09Z __nil is now known as guna 2017-08-27T13:31:43Z wxie: shka: I have seen channels with more moderators. 2017-08-27T13:32:11Z shka: moderators are kinda pointless anyway 2017-08-27T13:32:35Z shka: more often are actually harmful 2017-08-27T13:32:50Z shka: (IMHO) 2017-08-27T13:32:55Z wxie: That's the amazing part. 2017-08-27T13:34:10Z shka: why? 2017-08-27T13:34:23Z shka: if they are indeed harmful, then we don't need them, right? 2017-08-27T13:36:40Z vaporatorius quit (Quit: Leaving) 2017-08-27T13:39:55Z vap1 quit (Quit: Leaving) 2017-08-27T13:39:56Z ryanwatkins quit (Ping timeout: 240 seconds) 2017-08-27T13:40:12Z vaporatorius joined #lisp 2017-08-27T13:40:35Z ryanwatkins joined #lisp 2017-08-27T13:42:32Z wooden quit (Ping timeout: 260 seconds) 2017-08-27T13:45:48Z wooden joined #lisp 2017-08-27T13:48:41Z wxie quit (Quit: Bye.) 2017-08-27T13:53:40Z mc40 joined #lisp 2017-08-27T13:57:16Z oleo joined #lisp 2017-08-27T13:57:18Z stara joined #lisp 2017-08-27T14:00:36Z wooden quit (Read error: Connection reset by peer) 2017-08-27T14:00:39Z wooden_ joined #lisp 2017-08-27T14:01:15Z oleo quit (Client Quit) 2017-08-27T14:03:15Z Bike quit (Ping timeout: 240 seconds) 2017-08-27T14:05:00Z Bike joined #lisp 2017-08-27T14:08:21Z test1600 quit (Ping timeout: 240 seconds) 2017-08-27T14:23:44Z Kyo91_ joined #lisp 2017-08-27T14:27:35Z EvW1 joined #lisp 2017-08-27T14:28:26Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T14:30:18Z knobo joined #lisp 2017-08-27T14:47:56Z phoe: wxie is wrong 2017-08-27T14:47:57Z phoe: so very wrong 2017-08-27T14:48:14Z phoe: a quick query on Freenode shows how many people have op, just decide not to carry it around all the time 2017-08-27T14:51:11Z borei joined #lisp 2017-08-27T14:51:57Z FalconPilot quit (Ping timeout: 260 seconds) 2017-08-27T14:52:43Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-27T14:53:14Z oleo joined #lisp 2017-08-27T14:54:33Z DeadTrickster joined #lisp 2017-08-27T15:03:07Z wooden_ quit (Read error: Connection reset by peer) 2017-08-27T15:03:40Z test1600 joined #lisp 2017-08-27T15:03:55Z moei quit (Read error: Connection reset by peer) 2017-08-27T15:04:32Z moei joined #lisp 2017-08-27T15:07:36Z wooden joined #lisp 2017-08-27T15:11:20Z rngoodn joined #lisp 2017-08-27T15:15:53Z damke joined #lisp 2017-08-27T15:17:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-27T15:20:21Z stara quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-27T15:23:12Z kajo joined #lisp 2017-08-27T15:27:43Z parjanya quit (Ping timeout: 255 seconds) 2017-08-27T15:29:52Z Jesin joined #lisp 2017-08-27T15:31:27Z CrLF0710 joined #lisp 2017-08-27T15:31:47Z kajo quit (Quit: WeeChat 1.9) 2017-08-27T15:33:29Z kajo joined #lisp 2017-08-27T15:34:27Z stara joined #lisp 2017-08-27T15:35:29Z CrLF0710 quit (Client Quit) 2017-08-27T15:38:29Z klay joined #lisp 2017-08-27T15:41:29Z EvW1 quit (Ping timeout: 276 seconds) 2017-08-27T15:44:49Z nsnc quit (Quit: ZNC 1.6.3+deb1 - http://znc.in) 2017-08-27T15:45:31Z stara quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-27T15:46:34Z nsnc_ joined #lisp 2017-08-27T15:47:15Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-27T15:50:21Z whoman joined #lisp 2017-08-27T15:51:01Z kajo quit (Ping timeout: 240 seconds) 2017-08-27T15:52:41Z guna quit (Quit: ERC (IRC client for Emacs 25.1.1)) 2017-08-27T15:53:30Z nsnc_ quit (Quit: ZNC 1.6.3+deb1 - http://znc.in) 2017-08-27T15:55:15Z wow-1234 joined #lisp 2017-08-27T15:55:37Z wow-1234 left #lisp 2017-08-27T15:56:35Z nsnc_ joined #lisp 2017-08-27T15:56:42Z CrLF0710 joined #lisp 2017-08-27T15:59:38Z serviteur joined #lisp 2017-08-27T16:00:31Z CrLF0710 quit (Client Quit) 2017-08-27T16:01:21Z test1600 quit (Ping timeout: 240 seconds) 2017-08-27T16:02:13Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-27T16:06:43Z rippa joined #lisp 2017-08-27T16:08:31Z Mon_Ouie joined #lisp 2017-08-27T16:10:28Z grublet quit (Ping timeout: 252 seconds) 2017-08-27T16:13:24Z klay quit (Remote host closed the connection) 2017-08-27T16:18:19Z mishoo_ joined #lisp 2017-08-27T16:24:32Z Kyo91_ joined #lisp 2017-08-27T16:28:45Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T16:30:03Z Sarkic joined #lisp 2017-08-27T16:33:13Z CrLF0710 joined #lisp 2017-08-27T16:37:15Z CrLF0710 quit (Client Quit) 2017-08-27T16:39:20Z mc40 quit (Quit: ChatZilla 0.9.93 [Firefox 56.0/20170825011442]) 2017-08-27T16:47:56Z FalconPilot joined #lisp 2017-08-27T16:50:22Z raynold joined #lisp 2017-08-27T16:50:23Z slyrus quit (Ping timeout: 276 seconds) 2017-08-27T16:52:26Z FalconPilot quit (Ping timeout: 240 seconds) 2017-08-27T16:52:37Z TDT joined #lisp 2017-08-27T16:53:12Z drcode joined #lisp 2017-08-27T16:53:48Z drcode quit (Remote host closed the connection) 2017-08-27T17:00:02Z Murii|osx quit (Remote host closed the connection) 2017-08-27T17:01:06Z vtomole joined #lisp 2017-08-27T17:02:10Z damke_ joined #lisp 2017-08-27T17:02:41Z damke quit (Ping timeout: 240 seconds) 2017-08-27T17:03:08Z IAmRasputin joined #lisp 2017-08-27T17:04:41Z TDT quit (Quit: TDT) 2017-08-27T17:04:46Z slyrus joined #lisp 2017-08-27T17:04:47Z FalconPilot joined #lisp 2017-08-27T17:04:57Z trn quit (Ping timeout: 260 seconds) 2017-08-27T17:10:01Z damke_ quit (Ping timeout: 240 seconds) 2017-08-27T17:11:57Z lnostdal joined #lisp 2017-08-27T17:12:17Z symm- joined #lisp 2017-08-27T17:12:21Z kuwze joined #lisp 2017-08-27T17:12:27Z nowhere_man joined #lisp 2017-08-27T17:12:54Z defaultxr joined #lisp 2017-08-27T17:25:30Z drcode joined #lisp 2017-08-27T17:26:20Z kuwze quit (Ping timeout: 260 seconds) 2017-08-27T17:31:06Z beach joined #lisp 2017-08-27T17:32:19Z beach: Good evening everyone! 2017-08-27T17:33:25Z vtomole: Morning! uh how? Thought you lived in France 2017-08-27T17:34:15Z phoe: vtomole: he said evening 2017-08-27T17:34:39Z vtomole: I see him say Morning so much that my brain just skips it! uh 2017-08-27T17:34:40Z vtomole: lol 2017-08-27T17:34:48Z phoe: but goodness, whenever beach says "Good X everyone", I assume it's morning 2017-08-27T17:34:50Z phoe: vtomole: haha 2017-08-27T17:34:55Z phoe: same here 2017-08-27T17:35:09Z beach: Sorry about that. 2017-08-27T17:35:12Z phoe: I actually had to notice your post to re-read what beach said and go "oh, it's not morning this time" 2017-08-27T17:35:42Z beach: Anyway, I won't stick around. I just got home, so I want to spend time with my (admittedly small) family. 2017-08-27T17:36:16Z vtomole: admittedly small? 2017-08-27T17:36:41Z beach: Just my wife. 2017-08-27T17:36:45Z beach: ... and me. 2017-08-27T17:36:58Z phoe: See you! 2017-08-27T17:43:56Z nirved quit (Quit: Leaving) 2017-08-27T17:44:26Z knobo quit (Ping timeout: 240 seconds) 2017-08-27T17:45:14Z shka: beach: that sounds kinda awesome if you ask me ;-) 2017-08-27T17:47:24Z random-nick quit (Remote host closed the connection) 2017-08-27T17:55:38Z random-nick joined #lisp 2017-08-27T18:01:09Z Murii|osx joined #lisp 2017-08-27T18:02:20Z trn joined #lisp 2017-08-27T18:04:54Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-27T18:05:08Z Murii|osx quit (Ping timeout: 240 seconds) 2017-08-27T18:08:00Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-27T18:08:06Z rngoodn joined #lisp 2017-08-27T18:11:04Z attila_lendvai joined #lisp 2017-08-27T18:13:57Z FreeBirdLjj joined #lisp 2017-08-27T18:19:23Z kang0 joined #lisp 2017-08-27T18:19:32Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-27T18:19:34Z kang0: I am new to emacs 2017-08-27T18:20:00Z kang0: Can anyone help me how to Draft a code Save and compile or run it 2017-08-27T18:20:02Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-27T18:20:26Z vtomole: Do you want to compile a function or a file? 2017-08-27T18:20:27Z ristur quit (Quit: leaving) 2017-08-27T18:20:50Z kang0: A file vtomole 2017-08-27T18:20:56Z pjb: kang0: M-x compile RET 2017-08-27T18:21:02Z kang0: It may contain functions also 2017-08-27T18:21:25Z kang0: pjb is that command to type in? 2017-08-27T18:21:36Z pjb: What do you want to compile? 2017-08-27T18:21:52Z kang0: I have emacs 2017-08-27T18:22:05Z kang0: I want to compile a code after creating 2017-08-27T18:22:15Z pjb: Then type M-x compile RET 2017-08-27T18:22:33Z kang0: I am not in front of pc 2017-08-27T18:22:36Z kang0: Now 2017-08-27T18:22:46Z zulu_inuoe: *confused* 2017-08-27T18:23:22Z kang0: On phone 2017-08-27T18:23:36Z mistnim joined #lisp 2017-08-27T18:24:00Z phoe: kang0: wait a second, why are you asking for help with emacs if you don't have emacs in front of you to check them out? 2017-08-27T18:24:02Z kang0: pjb how to run code after compilation 2017-08-27T18:24:11Z pjb: Depends. 2017-08-27T18:24:33Z kang0: phoe I may not have acess to internet when I have pc 2017-08-27T18:24:58Z kang0: pjb for c and python and js script 2017-08-27T18:25:20Z Kyo91_ joined #lisp 2017-08-27T18:25:32Z vtomole: This is a Common Lisp channel 2017-08-27T18:25:37Z rngoodn joined #lisp 2017-08-27T18:25:38Z pjb: kang0: what are you doing in #lisp, when you don't even know how to run a program? 2017-08-27T18:25:59Z rngoodn quit (Client Quit) 2017-08-27T18:26:30Z kang0: I want to start with lisp learning 2017-08-27T18:26:47Z pjb: Then why do you want to compile C, Python and Javascript programs? 2017-08-27T18:26:47Z kang0: And emacs both 2017-08-27T18:26:48Z vtomole: You said you want to code c python and js though.. 2017-08-27T18:26:52Z phoe: kang0: you just asked for help with C, Python and JS 2017-08-27T18:26:59Z knobo joined #lisp 2017-08-27T18:27:05Z kang0: I guess emacs can run any program 2017-08-27T18:27:08Z phoe: please make up your mind, otherwise we won't be able to help you 2017-08-27T18:27:11Z kang0: Am I wrong!? 2017-08-27T18:27:12Z phoe: emacs is an editor. 2017-08-27T18:27:17Z phoe: Lisp, C, Python and JS are programming languages. 2017-08-27T18:27:21Z pjb: Lisp is easy, but it still requires a minimum of intelligence and common sense. 2017-08-27T18:27:32Z kang0: If I have downloaded emacs 2017-08-27T18:27:34Z phoe: Emacs does not run programs. Emacs, if anything, is an editor for code. 2017-08-27T18:27:38Z pjb: emacs can only run emacs lisp programs. 2017-08-27T18:27:43Z kang0: Do I need to download lisp separately? 2017-08-27T18:27:53Z kang0: Or is it builtin? 2017-08-27T18:27:55Z IAmRasputin: kang0: If you want to start with Lisp, you should read about SLIME, which has tools to write, compile, and run Lisp. If you're not familiar with emacs yet, you should try to learn as much about it as you can before you start writing code with it. 2017-08-27T18:27:58Z pjb: kang0: have a look at http://cliki.net/Getting+Started 2017-08-27T18:28:23Z random-nick: also, did you go through the emacs tutorial? 2017-08-27T18:28:37Z kang0: Yes 2017-08-27T18:28:44Z pjb: type Control-h then t to get to the tutorial. 2017-08-27T18:29:23Z kang0: I guess the first Tutorial I finished has no link with lisp/compile/run 2017-08-27T18:29:57Z Kyo91_ quit (Ping timeout: 255 seconds) 2017-08-27T18:30:04Z IAmRasputin: kang0: Lisp works very differently than languages like C, Python, and Javascript. You should read a book about how Lisp works, such as www.gigamonkeys.com/book 2017-08-27T18:30:08Z random-nick: the emacs tutorial introduces the emacs keybinding notation 2017-08-27T18:30:31Z pjb: kang0: Common Lisp tutorials are linked in the page I mentionned above. Also http://cliki.net/Online+Tutorial 2017-08-27T18:31:54Z shka: are all dynamic languages should be image based? 2017-08-27T18:32:03Z shka: what's your opinion, gyus 2017-08-27T18:32:43Z mistnim: this is not a channel to talk about lisps in general right? 2017-08-27T18:33:38Z shka: uhm, it is not 2017-08-27T18:34:29Z phoe: mistnim: ##lisp is for lisps in general, #lisp is for CL 2017-08-27T18:34:49Z mistnim: thanks phoe 2017-08-27T18:35:08Z shka: i will just go to lispcafe 2017-08-27T18:36:47Z phoe: and there's #lispcafe which is a general chillout zone 2017-08-27T18:37:16Z shka: yeah 2017-08-27T18:37:29Z shka: we listen to future sound of london, smoke joints and stuff 2017-08-27T18:37:32Z shka: chill man 2017-08-27T18:37:44Z phoe: the only thing we don't tolerate there is Soviet Nazi Vehicles (acronym: SNV) 2017-08-27T18:38:15Z phoe: (goodness, I still get the creeps when I remember that guy) 2017-08-27T18:45:49Z Murii|osx joined #lisp 2017-08-27T18:46:50Z pjb: shka: clicc and mocl are not image based. 2017-08-27T18:47:22Z lonjil: Is SBCL idling at 30% CPU normal while Hunchentoot is running? 2017-08-27T18:47:30Z lonjil: I'm not too thrilled about it 2017-08-27T18:49:31Z daemoz quit (Ping timeout: 268 seconds) 2017-08-27T18:50:30Z phoe: lonjil: I don't think so? 2017-08-27T18:50:46Z lonjil: Hmm 2017-08-27T18:51:20Z lonjil: I wonder why it's doing that then. 2017-08-27T18:52:06Z phoe: lonjil: profile it 2017-08-27T18:52:11Z phoe: SBCL is lucky to have a working profiler 2017-08-27T18:59:51Z BW^- joined #lisp 2017-08-27T19:00:09Z shka: pjb: interesting! 2017-08-27T19:00:28Z BW^-: off-topic, a lovely graph science question: what algorithms are there for cycle detection in dynamic directed graphs? 2017-08-27T19:01:41Z phoe: BW^-: by dynamic, you mean that you can add/remove edges over time and you want to detect cycles? 2017-08-27T19:02:16Z phoe: https://en.wikipedia.org/wiki/Cycle_detection#Algorithms looks like a starting point 2017-08-27T19:03:13Z BW^-: phoe: yes 2017-08-27T19:03:26Z shka: BW^-: directed? 2017-08-27T19:03:29Z shka: weighted? 2017-08-27T19:04:02Z shka: BW^-: go for some variation of Dijkstra's alghorithm 2017-08-27T19:04:30Z TDT joined #lisp 2017-08-27T19:04:39Z TDT quit (Client Quit) 2017-08-27T19:05:03Z klltkr joined #lisp 2017-08-27T19:05:42Z phoe: BW^-: do you want to avoid cycles altogether? 2017-08-27T19:05:58Z phoe: or do you want to just detect and, uh "enumerate" them? 2017-08-27T19:07:48Z lonjil: I did (require :sb-sprof), which returned ("SB-SPROF"), and (sb-sprof: ) in sly brought up the autocomplete, but actually calling one of the functions throws an undefined function error 2017-08-27T19:07:49Z shka: BW^-: perhaps bidirectional search would work great 2017-08-27T19:09:07Z shka: if you store process in dynamic programming style you may reuse it after modification 2017-08-27T19:10:31Z shka: or just say: screw it and trade memory for run time 2017-08-27T19:10:54Z shka: and store every node reachable from every single node in the graph 2017-08-27T19:11:29Z shka: maybe some clever representation can be figured out 2017-08-27T19:11:49Z shka: for instance, if your node count is low enough, you may just use integer 2017-08-27T19:12:04Z shka: or even better: bit vector 2017-08-27T19:15:25Z brendyn quit (Ping timeout: 248 seconds) 2017-08-27T19:15:35Z BW^-: shka: bidirectional search, how? 2017-08-27T19:15:52Z BW^-: shka: how does Dijkstra's algorithm work here?? 2017-08-27T19:16:13Z shka: nah, ignore everything i said 2017-08-27T19:16:21Z shka: just read wikipedia 2017-08-27T19:16:48Z shka: my approach is naive 2017-08-27T19:18:32Z BW^-: shka: wikipedia only discusses a static graph i think 2017-08-27T19:19:30Z shka: well, in that case, i would ask a simple question: how large is your graph? 2017-08-27T19:21:08Z shka: if it is small enough, you may just store ALL nodes that are reachable from EVERY node as bit vector 2017-08-27T19:21:37Z BW^-: shka: large! 2017-08-27T19:21:44Z shka: right 2017-08-27T19:21:48Z pjb: millions of node is not large nowadays. 2017-08-27T19:22:16Z shka: in such case, perhaps you may store some fixed number of reachable nodes in every node? 2017-08-27T19:22:54Z shka: you will still have to scan for cycle, but in such case you should be able to skip large number of nodes 2017-08-27T19:23:11Z Danishman joined #lisp 2017-08-27T19:23:33Z BW^-: shka: what do you mean? 2017-08-27T19:23:40Z BW^-: more ideas of algorithms? 2017-08-27T19:23:55Z shka: not fully baked algorithm 2017-08-27T19:24:37Z shka: but lets say you have node 4 along with information that from this node you may eventually reach nodes 6, 8, 12, 15 2017-08-27T19:24:37Z xpo joined #lisp 2017-08-27T19:24:45Z shka: and you have node 10 2017-08-27T19:25:04Z shka: 10 can be reached (eventually) from 8 2017-08-27T19:25:33Z shka: you don't have full cyclic path 2017-08-27T19:25:52Z shka: but you can discard scanning 12, 6, 15 and move to 8 2017-08-27T19:25:52Z BW^-: ? 2017-08-27T19:25:56Z BW^-: btw, what's the graph science name for this? 2017-08-27T19:26:09Z BW^-: are there any more nice names than just "cycle detection in directed graph"? 2017-08-27T19:26:24Z shka: sounds accurate for me 2017-08-27T19:27:06Z shka: anyway, i would try to develop something from this 2017-08-27T19:28:45Z shka: memory can be a problem, though 2017-08-27T19:28:50Z shka: dunno 2017-08-27T19:28:51Z neoncontrails quit (Remote host closed the connection) 2017-08-27T19:29:06Z shka: BW^-: well, i obviously have no idea :D 2017-08-27T19:29:18Z shka: but it is interesting problem 2017-08-27T19:31:39Z BW^-: ok 2017-08-27T19:33:39Z MrBismuth quit (Quit: https://www.youtube.com/watch?v=xIIqYqtR1lY -- Suicide is Painless - Johnny Mandel) 2017-08-27T19:36:26Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-27T19:42:02Z MrBusiness joined #lisp 2017-08-27T19:48:13Z random-nick quit (Remote host closed the connection) 2017-08-27T19:50:24Z lonjil: Anyone here wouldn't have a clue as to why SBCL is telling me sb-sprof:start-profiling doesn't exist? 2017-08-27T19:51:54Z Bike: do (require :sb-sprof) first, it might not be loaded by default. 2017-08-27T19:51:55Z minion: Bike, memo from beach: At some point, I decided to replace fixnum-+ etc. with fixnum-add etc., but I never removed the old primops, instructions, and documentation. Can you confirm that Clasp is not using the old stuff so that I can remove it? 2017-08-27T19:52:30Z lonjil: Bike: I did, the other symbols in sb-sprof exist 2017-08-27T19:52:49Z lonjil: only start-profiling and stop-profiling are missing 2017-08-27T19:52:51Z EvW joined #lisp 2017-08-27T19:53:08Z lonjil: both of them show up in the autocomplete, however 2017-08-27T19:53:11Z pierpa joined #lisp 2017-08-27T19:54:24Z fiddlerwoaroof: did you require :sb-sprof? 2017-08-27T19:54:31Z lonjil: Yes 2017-08-27T19:54:42Z fiddlerwoaroof: Ah, my window wasn't scrolled all the way down 2017-08-27T19:55:15Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-27T19:55:25Z Bike: beach: go ahead and remove it. i'll fix it up in clasp before i upgrade the sicl module. 2017-08-27T19:55:40Z DeadTrickster joined #lisp 2017-08-27T19:56:28Z fiddlerwoaroof: lonjil: what version of sbcl? 2017-08-27T19:56:50Z lonjil: 1.3.18, latest pre-compiled for windows 2017-08-27T19:57:15Z fiddlerwoaroof: Hmm, I wonder of sprof is available for windows... 2017-08-27T19:57:45Z fiddlerwoaroof: Maybe try profiling in a fresh repl? 2017-08-27T19:58:00Z lonjil: I have tried that 2017-08-27T19:58:20Z lonjil: The windows port not being complete sounds like a plausible explanation. 2017-08-27T19:58:35Z Bike: https://github.com/sbcl/sbcl/blob/master/contrib/sb-sprof/sb-sprof.lisp#L763-L764 yep 2017-08-27T19:59:50Z fiddlerwoaroof: lonjil: yeah, one of the not-so-great aspects of OSS is that windows ports frequently don't have very much manpower 2017-08-27T20:00:20Z random-nick joined #lisp 2017-08-27T20:00:27Z fiddlerwoaroof: My only access to windows is through a VM, for example, and it's enough of a pain that I don't boot it up all that frequently 2017-08-27T20:03:51Z lonjil: Coincidentally, windows just decided to bsod 2017-08-27T20:04:15Z phoe slow claps 2017-08-27T20:06:07Z lonjil: I also have this feeling the perf problem will go away if I try it on linux 2017-08-27T20:06:34Z phoe: well, try it 2017-08-27T20:06:48Z phoe: at least you'll know if the 30% idle persists between platforms 2017-08-27T20:07:21Z fiddlerwoaroof: I'm currently running a hunchentoot server and it's at like 0.7% on Linux 2017-08-27T20:07:36Z pjb: clhs set-macro-character 2017-08-27T20:07:36Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_set_ma.htm 2017-08-27T20:07:49Z phoe: fiddlerwoaroof: well, huh 2017-08-27T20:07:54Z fiddlerwoaroof: I'm using a custom acceptor though and only overriding acceptor-dispatch-request 2017-08-27T20:07:59Z phoe: windows-only issue then 2017-08-27T20:08:54Z fiddlerwoaroof: lonjil: are you using hunchentoot directly, or via something like clack/ningle 2017-08-27T20:09:13Z lonjil: directly 2017-08-27T20:09:25Z lonjil: with an easy acceptor 2017-08-27T20:09:27Z PinealGlandOptic quit (Quit: leaving) 2017-08-27T20:09:57Z lonjil: I'm gonna try the code on linux see how it works 2017-08-27T20:10:43Z fiddlerwoaroof: If you notice a problem, you might mention it in #sbcl, I've had really good success in getting things resolved that way 2017-08-27T20:14:41Z symm- quit (Ping timeout: 240 seconds) 2017-08-27T20:14:45Z kang0 quit (Read error: Connection reset by peer) 2017-08-27T20:16:49Z detectiveaoi joined #lisp 2017-08-27T20:23:10Z lonjil: it's using 0% CPU while idling on my 10 year old linux PC, lol 2017-08-27T20:23:52Z mistnim quit (Ping timeout: 260 seconds) 2017-08-27T20:24:00Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-27T20:24:08Z phoe: lonjil: sounds like a windows bug then 2017-08-27T20:24:30Z lonjil: indeed 2017-08-27T20:26:08Z Kyo91_ joined #lisp 2017-08-27T20:26:40Z malice joined #lisp 2017-08-27T20:30:25Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T20:38:22Z guna joined #lisp 2017-08-27T20:45:15Z fiddlerwoaroof: Is there a specified point after which a class is guaranteed to be finalized? 2017-08-27T20:45:57Z Bike: by the time you make an instance 2017-08-27T20:46:36Z fiddlerwoaroof: So, it's not like functions where they're guaranteed to be available once a file has been read and compiled? 2017-08-27T20:47:13Z phoe: define "available" 2017-08-27T20:47:16Z phoe: available for what? 2017-08-27T20:47:42Z fiddlerwoaroof: I mean, when are classes finalized 2017-08-27T20:48:20Z fiddlerwoaroof: This macro, for example, occasionally complains about the class not being finalized (e.g. in the invocation at line 107): https://github.com/fiddlerwoaroof/fwoar.lisputils/blob/b05aaebb3d3b83801b5330e5766a4d77b8f6fc73/patmatch.lisp#L36 2017-08-27T20:49:06Z phoe: which macro? 2017-08-27T20:49:09Z phoe: 107 is a defmethod 2017-08-27T20:49:39Z fiddlerwoaroof: oops, 119 is where macroexpansion happens, the macro is at 41 2017-08-27T20:50:14Z phoe: fiddlerwoaroof: let's figure out what happens at which time 2017-08-27T20:50:27Z phoe: load-time, macroexpansion-time, compile-time, execute-time 2017-08-27T20:50:28Z Bike: fiddlerwoaroof: it's delayed so that you can have forward referenced classes, and yes it's independent of file compilation stuff. 2017-08-27T20:50:28Z angavrilov quit (Remote host closed the connection) 2017-08-27T20:50:55Z fiddlerwoaroof: Ok, so the way the let-pat* macro works is that it calls the handle-pattern generic function to figure out the expansion 2017-08-27T20:51:09Z Bike: fiddlerwoaroof: you can force it with closer-mop:finalize-inheritance 2017-08-27T20:51:40Z fiddlerwoaroof: Initially, handle-pattern is called with a symbol as its first argument and the defmethod for that case looks-up the class named by that symbol and then calls handle-pattern with the class-prototype of that class 2017-08-27T20:52:14Z phoe: Bike: TIL 2017-08-27T20:52:28Z fiddlerwoaroof: This is so that I can define the pattern matching behavior of the base class separately from the behavior of the subclasses 2017-08-27T20:52:53Z fiddlerwoaroof: (and have the appropriate method calls generated implicitly) 2017-08-27T20:52:54Z Bike: today you learn what 2017-08-27T20:53:37Z phoe: about finalize-inheritance 2017-08-27T20:54:06Z Bike: oh. 2017-08-27T20:54:09Z fiddlerwoaroof: I guess my question is, if I use ensure-finalized, will I break anything 2017-08-27T20:54:21Z fiddlerwoaroof: Or cause any other unexpected side-effects 2017-08-27T20:54:25Z Bike: it will break if the class cannot be finalized 2017-08-27T20:54:32Z Bike: where "break" means "signal an error" 2017-08-27T20:55:01Z Bike: in your example here it might cause a problem because defclass has pretty limited compile time side effects 2017-08-27T20:55:28Z phoe: eval-when? 2017-08-27T20:55:52Z daemoz joined #lisp 2017-08-27T20:56:01Z fiddlerwoaroof: Yeah, I haven't pushed the eval-when version to github yet 2017-08-27T20:56:50Z phoe: I read this as (eval-when (:version :to :github :yet) ...) 2017-08-27T20:56:54Z phoe: time to sleep 2017-08-27T21:04:20Z shka quit (Ping timeout: 246 seconds) 2017-08-27T21:04:21Z Murii|osx quit 2017-08-27T21:27:43Z [jlk] quit (Remote host closed the connection) 2017-08-27T21:32:05Z JuanDaugherty joined #lisp 2017-08-27T21:35:05Z guna quit (Quit: ZNC 1.6.5 - http://znc.in) 2017-08-27T21:35:12Z nullniverse quit (Read error: Connection reset by peer) 2017-08-27T21:35:23Z guna joined #lisp 2017-08-27T21:43:32Z safe joined #lisp 2017-08-27T21:45:25Z Karl_Dscc joined #lisp 2017-08-27T21:50:40Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-27T21:59:24Z grublet joined #lisp 2017-08-27T22:00:34Z grublet quit (Remote host closed the connection) 2017-08-27T22:01:17Z kolko quit (Quit: ZNC - http://znc.in) 2017-08-27T22:03:59Z random-nick quit (Remote host closed the connection) 2017-08-27T22:08:57Z Karl_Dscc quit (Remote host closed the connection) 2017-08-27T22:12:58Z attila_lendvai quit (Quit: Leaving.) 2017-08-27T22:16:15Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-27T22:16:22Z grublet joined #lisp 2017-08-27T22:16:54Z DeadTrickster joined #lisp 2017-08-27T22:21:37Z attila_lendvai joined #lisp 2017-08-27T22:21:37Z attila_lendvai quit (Changing host) 2017-08-27T22:21:37Z attila_lendvai joined #lisp 2017-08-27T22:22:31Z pillton joined #lisp 2017-08-27T22:26:54Z Kyo91_ joined #lisp 2017-08-27T22:31:15Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-27T22:35:00Z klltkr joined #lisp 2017-08-27T22:41:49Z varjag quit (Ping timeout: 248 seconds) 2017-08-27T22:44:55Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-27T22:51:17Z attila_lendvai quit (Quit: Leaving.) 2017-08-27T22:52:06Z reinuseslisp joined #lisp 2017-08-27T22:56:02Z mfiano_ quit (Remote host closed the connection) 2017-08-27T22:56:28Z mfiano_ joined #lisp 2017-08-27T22:57:15Z wxie joined #lisp 2017-08-27T23:04:07Z reinuseslisp left #lisp 2017-08-27T23:05:53Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-27T23:10:06Z IAmRasputin quit (Quit: WeeChat 1.4) 2017-08-27T23:12:49Z Mon_Ouie joined #lisp 2017-08-27T23:15:20Z neoncontrails joined #lisp 2017-08-27T23:21:15Z eazar001 joined #lisp 2017-08-27T23:25:31Z Kaisyu joined #lisp 2017-08-27T23:31:10Z brendyn joined #lisp 2017-08-27T23:31:13Z hhdave joined #lisp 2017-08-27T23:32:38Z hhdave quit (Client Quit) 2017-08-27T23:36:02Z amerlyq quit (Ping timeout: 264 seconds) 2017-08-27T23:37:16Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-27T23:37:41Z DeadTrickster joined #lisp 2017-08-27T23:38:11Z varjag joined #lisp 2017-08-27T23:38:58Z amerlyq joined #lisp 2017-08-27T23:39:38Z pierpa quit (Quit: Page closed) 2017-08-27T23:43:09Z varjag quit (Ping timeout: 248 seconds) 2017-08-27T23:48:57Z Danishman quit (Quit: KVIrc 4.9.1 Aria http://www.kvirc.net/) 2017-08-27T23:54:06Z ninegrid quit (Ping timeout: 252 seconds) 2017-08-27T23:59:41Z pjb quit (Ping timeout: 246 seconds) 2017-08-28T00:06:10Z serviteur quit (Remote host closed the connection) 2017-08-28T00:07:40Z wxie quit (Quit: Bye.) 2017-08-28T00:09:47Z nightvox joined #lisp 2017-08-28T00:10:19Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-08-28T00:10:49Z nightvox left #lisp 2017-08-28T00:16:18Z mejja joined #lisp 2017-08-28T00:17:09Z Younder joined #lisp 2017-08-28T00:23:41Z Kyo91_ joined #lisp 2017-08-28T00:26:06Z pjb joined #lisp 2017-08-28T00:28:12Z CrazyEddy quit (Remote host closed the connection) 2017-08-28T00:28:24Z rngoodn joined #lisp 2017-08-28T00:29:56Z CrazyEddy joined #lisp 2017-08-28T00:31:07Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-28T00:34:01Z phinxy joined #lisp 2017-08-28T00:34:41Z Younder quit (Remote host closed the connection) 2017-08-28T00:35:22Z phinxy left #lisp 2017-08-28T00:36:16Z mejja quit (Quit: Abort, Retry, Ignore?) 2017-08-28T00:36:39Z grublet quit (Quit: Leaving) 2017-08-28T00:38:04Z jameser joined #lisp 2017-08-28T00:42:10Z Kyo91_ joined #lisp 2017-08-28T00:42:30Z pjb quit (Ping timeout: 252 seconds) 2017-08-28T00:43:19Z quazimodo joined #lisp 2017-08-28T00:48:13Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-28T00:51:10Z Kyo91_ joined #lisp 2017-08-28T00:56:57Z EvW quit (Ping timeout: 255 seconds) 2017-08-28T00:57:17Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-28T00:57:18Z Younder joined #lisp 2017-08-28T00:58:55Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-28T01:02:30Z damke_ joined #lisp 2017-08-28T01:04:28Z Kyo91_ joined #lisp 2017-08-28T01:10:23Z d4ryus2 joined #lisp 2017-08-28T01:11:48Z Kyo91_ quit (Ping timeout: 255 seconds) 2017-08-28T01:13:20Z d4ryus1 quit (Ping timeout: 240 seconds) 2017-08-28T01:14:35Z Suzuran quit (Ping timeout: 246 seconds) 2017-08-28T01:26:03Z skeuomorf joined #lisp 2017-08-28T01:27:57Z neoncont_ joined #lisp 2017-08-28T01:28:17Z grublet joined #lisp 2017-08-28T01:29:47Z neoncontrails quit (Ping timeout: 248 seconds) 2017-08-28T01:33:52Z Kyo91_ joined #lisp 2017-08-28T01:35:38Z yrk joined #lisp 2017-08-28T01:50:09Z Kyo91_ quit (Ping timeout: 252 seconds) 2017-08-28T01:58:18Z test1600 joined #lisp 2017-08-28T01:58:35Z eazar001 quit (Ping timeout: 248 seconds) 2017-08-28T02:05:54Z Kyo91_ joined #lisp 2017-08-28T02:05:56Z FR13_NDS joined #lisp 2017-08-28T02:07:00Z FR13_NDS quit (Max SendQ exceeded) 2017-08-28T02:09:22Z eazar001 joined #lisp 2017-08-28T02:10:14Z Kyo91_ quit (Ping timeout: 246 seconds) 2017-08-28T02:12:45Z marvin3 quit (Ping timeout: 240 seconds) 2017-08-28T02:14:22Z vtomole_ joined #lisp 2017-08-28T02:14:35Z eazar001 quit (Ping timeout: 248 seconds) 2017-08-28T02:14:50Z vtomole_ quit (Client Quit) 2017-08-28T02:18:54Z eazar001 joined #lisp 2017-08-28T02:37:11Z Suzuran joined #lisp 2017-08-28T02:40:38Z beach: Good morning everyone! 2017-08-28T02:40:43Z beach: Bike: OK, thanks! 2017-08-28T02:43:18Z detectiveaoi quit (Quit: Leaving...) 2017-08-28T02:43:59Z skeuomorf quit (Remote host closed the connection) 2017-08-28T02:46:08Z skeuomorf joined #lisp 2017-08-28T02:49:28Z jamtho_ joined #lisp 2017-08-28T02:55:25Z text1 joined #lisp 2017-08-28T02:56:42Z rngoodn joined #lisp 2017-08-28T03:00:19Z pillton: beach: Do you know if the return values of compile or supposed to be influenced by with-compilation-unit? 2017-08-28T03:00:36Z beach: pillton: Not by heart, no. 2017-08-28T03:01:20Z Bike: of cl:compile? they shouldn't be 2017-08-28T03:01:27Z Bike: compile file might be tricker i guess 2017-08-28T03:01:41Z pillton: beach Bike: https://sourceforge.net/p/sbcl/mailman/message/36002063/ 2017-08-28T03:02:02Z pillton: Nobody has replied and I am wondering if I asked a stupid question. 2017-08-28T03:02:48Z Bike: huh. weird. 2017-08-28T03:02:56Z Bike: probably kind of a "who cares" thing mainly though. 2017-08-28T03:03:10Z pillton: Well, I care at the moment. 2017-08-28T03:03:28Z beach: I see what you mean. 2017-08-28T03:03:36Z beach: Looks strange to me too. 2017-08-28T03:07:48Z pillton: As for the context, I was hoping I could use compile to determine if a form could be evaluated in a null lexical environment. 2017-08-28T03:08:07Z shiranuidong quit (Ping timeout: 260 seconds) 2017-08-28T03:08:17Z shiranuidong joined #lisp 2017-08-28T03:09:13Z beach: Note to self: In WSCL, specify whether WITH-COMPILATION-UNIT can influence the behavior of COMPILE. 2017-08-28T03:09:52Z emacsoma` quit (Ping timeout: 260 seconds) 2017-08-28T03:11:10Z pillton: Not strictly a null lexical environment, but that problem is the same as the one here: https://github.com/markcox80/specialization-store/blob/master/src/lambda-lists.lisp#L524 2017-08-28T03:11:45Z malice quit (Remote host closed the connection) 2017-08-28T03:12:29Z Bike: i am... skeptical 2017-08-28T03:12:38Z pillton: About? 2017-08-28T03:12:58Z Bike: this working 2017-08-28T03:14:34Z pillton: Well, it assumes the compiler signals a warning. 2017-08-28T03:14:57Z pillton: It isn't a requirement for specialization-store. You just get better error messages. 2017-08-28T03:15:05Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-28T03:15:27Z beach: I was going to say something like what Bike said. Is it even well defined what kinds of warnings the compiler must emit in each situation? 2017-08-28T03:15:54Z pillton: There is a distinction between style-warnings and warnings from what I recall. 2017-08-28T03:16:02Z beach: Indeed. 2017-08-28T03:16:06Z Bike: there are some definitions like "if a warning is signaled it's of this class", and some guidelines for style warning versus warning 2017-08-28T03:16:27Z Bike: but for example there's no guarantee the compiler detects unresolvable variable references, or that it warns about them, or anything 2017-08-28T03:16:33Z Bike: though most do. 2017-08-28T03:16:53Z Bike: i don't really understand what the with-compilation-unit is for though. 2017-08-28T03:16:59Z pillton: Bloody ASDF. 2017-08-28T03:17:21Z pillton: Excuse my language. 2017-08-28T03:17:29Z Bike: i'm ok with blood. 2017-08-28T03:18:59Z borei quit (Quit: Leaving.) 2017-08-28T03:20:43Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-08-28T03:21:01Z damke joined #lisp 2017-08-28T03:23:20Z damke_ quit (Ping timeout: 240 seconds) 2017-08-28T03:26:20Z skeuomorf quit (Remote host closed the connection) 2017-08-28T03:30:21Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-28T03:32:08Z pillton: In my opinion, you shouldn't need the handler-case or the with-compilation-unit. 2017-08-28T03:32:35Z pillton: It depends on the answer to the question in the mailing list though. 2017-08-28T03:35:08Z Bike: i would expect not, no 2017-08-28T03:35:19Z pillton: The distinction between style-warnings and warnings should also improved so that you can distinguish between compilation issues and things like (macrolet ((my-macro () (warn "...") nil)) ...). 2017-08-28T03:37:40Z Bike: that's on the my-macro author 2017-08-28T03:38:21Z Bike: but yes, the interaction of the compiler with the condition system is kind of hard ot understand 2017-08-28T03:52:13Z beach: It would be a good idea to go through what the Common Lisp HyperSpec says about what kind of condition is signaled for each situation detected by the compiler, and then to specify more precisely what will happen in each situation. 2017-08-28T03:53:33Z Bike: i don't think there are actually any standard condition types for compiler conditions 2017-08-28T03:54:06Z beach: There are some. 2017-08-28T03:54:42Z Bike: like? 2017-08-28T03:54:51Z beach: Hold on... 2017-08-28T03:56:23Z beach: Hmm, I was sure I had seen some. 2017-08-28T03:56:38Z vtomole: Can you coerce matrix to list? 2017-08-28T03:57:56Z vtomole: Looks like no. Guess i'll have to use vectors 2017-08-28T03:58:13Z Bike: stuff like unbound-variable is a full error 2017-08-28T03:58:20Z beach: Bike: I may have imagined that. Either way, I shall have to get back to you. I am too busy this morning for looking further. 2017-08-28T03:58:27Z Bike: don't worry about it 2017-08-28T03:58:49Z beach: vtomole: You can always do the conversion yourself. 2017-08-28T03:59:08Z beach: vtomole: Either way, it is going to be inefficient and required memory to be allocated. 2017-08-28T04:00:28Z beach: vtomole: (loop for row from 0 below (array-dimension array 0) collect (loop for column from 0 below (array-dimension array 1) collect (aref array row column))) 2017-08-28T04:00:32Z beach: something like that. 2017-08-28T04:01:30Z damke_ joined #lisp 2017-08-28T04:01:31Z vtomole: Thanks. I usually check if cl has a function built in before I try my own implementation 2017-08-28T04:01:50Z vtomole: Why wouldn't corece work with arrays? 2017-08-28T04:02:08Z vtomole: I mean is that not defined? 2017-08-28T04:02:29Z beach: I am guessing because there is no agreement as to what the result would be. 2017-08-28T04:02:30Z Bike: it's not a bijection 2017-08-28T04:02:38Z vtomole: ah 2017-08-28T04:02:51Z Bike: that's my guess, i mean. coerce is a bit arbitrary 2017-08-28T04:02:52Z beach: A list of lists? A list of vectors? A list of all the elements with no nesting? 2017-08-28T04:03:00Z damke quit (Ping timeout: 240 seconds) 2017-08-28T04:11:38Z Sarkic quit (Quit: leaving) 2017-08-28T04:12:04Z sarkic joined #lisp 2017-08-28T04:21:25Z Bike quit (Ping timeout: 240 seconds) 2017-08-28T04:30:49Z BW^- quit (Quit: BW^-) 2017-08-28T04:38:53Z Lowl3v3l quit (Remote host closed the connection) 2017-08-28T04:42:46Z dddddd quit (Remote host closed the connection) 2017-08-28T04:49:11Z whoman: why does defconstant complain about redefinition at first use ? 2017-08-28T04:50:35Z loke: whoman: It doesn't 2017-08-28T04:50:51Z loke: whoman: It complains about redefinition the second time. 2017-08-28T04:51:01Z loke: (unless the value is EQL to the old value) 2017-08-28T04:58:48Z oleo quit (Quit: irc client terminated!) 2017-08-28T05:06:44Z Kyo91_ joined #lisp 2017-08-28T05:07:12Z kang0 joined #lisp 2017-08-28T05:07:13Z dec0n joined #lisp 2017-08-28T05:10:44Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-28T05:16:02Z CrazyEddy quit (Remote host closed the connection) 2017-08-28T05:17:25Z test1600 quit (Quit: Leaving) 2017-08-28T05:19:31Z CrazyEddy joined #lisp 2017-08-28T05:19:54Z flip214: Looks like inspecting functions in swank is broken since sbcl d84042ff9b011bf33d496bb2444945db2a2efbf0: The function SB-KERNEL:%SIMPLE-FUN-SELF is undefined. 2017-08-28T05:20:01Z flip214: http://paste.lisp.org/display/354552 2017-08-28T05:20:12Z flip214: There's no newer slime/swank in QL. 2017-08-28T05:22:57Z sellout-1 quit (Quit: Leaving.) 2017-08-28T05:23:15Z flip214: but there's https://github.com/slime/slime/commit/0f3459f558bb71daab2416102b99a8ce39947d83, so a slime release seems to be in order. 2017-08-28T05:24:40Z shka joined #lisp 2017-08-28T05:26:19Z loke: flip214: I can still inpsect, and I compiled the latest sbcl today 2017-08-28T05:26:49Z pillton: Weird, I get the same as flip214. 2017-08-28T05:26:55Z scymtym quit (Ping timeout: 240 seconds) 2017-08-28T05:27:12Z flip214: stassats: looks like you're the one doing releases for slime; please do a 2.20, so that QL gets to include 0f3459f558bb71daab2416102b99a8ce39947d83. 2017-08-28T05:27:29Z flip214: loke: pillton: if you have slime HEAD active, it's already fixed. 2017-08-28T05:27:35Z flip214: with 2.19 from QL it's broken. 2017-08-28T05:27:56Z flip214: but applying the patch I linked might make it work again. 2017-08-28T05:28:03Z Ologn left #lisp 2017-08-28T05:28:09Z pillton: I don't think stassats hangs out here anymore. 2017-08-28T05:28:23Z flip214: pillton: yeah, already copied over to #sbcl. 2017-08-28T05:30:24Z pillton: flip214: I haven't noticed until now. I only inspect generic functions. 2017-08-28T05:30:42Z pillton: What do you get out of it normally? 2017-08-28T05:30:58Z pillton: Why do you inspect ordinary functions? 2017-08-28T05:33:16Z loke: Ah I see 2017-08-28T05:33:40Z loke: pillton: it's very useful. You can, for example see closed-over bindings, as well as the disassembly 2017-08-28T05:36:48Z Karl_Dscc joined #lisp 2017-08-28T05:37:06Z pillton: Interesting. I use disassembly for the disassembly. I don't think I have ever wanted to know what bindings a function closes over from a function object. 2017-08-28T05:37:25Z mishoo_ joined #lisp 2017-08-28T05:38:06Z flamebeard joined #lisp 2017-08-28T05:40:28Z symm- joined #lisp 2017-08-28T05:46:08Z text1 quit (Read error: Connection reset by peer) 2017-08-28T05:46:08Z safe quit (Read error: Connection reset by peer) 2017-08-28T05:47:26Z zaoqi joined #lisp 2017-08-28T05:48:52Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-28T05:49:02Z vlatkoB joined #lisp 2017-08-28T05:49:56Z whoman: loke, first time, defconstant complains. i only have one of them 2017-08-28T05:53:36Z beach: whoman: If you load the file several times, you will execute it several times. 2017-08-28T05:53:44Z kang0 quit (Read error: Connection reset by peer) 2017-08-28T05:53:48Z beach: It is not about how many textual instances of the code you have. 2017-08-28T05:53:57Z beach: It is about how many times you evaluate the same form. 2017-08-28T05:55:50Z beach: If you evaluate a DEFCONSTANT form for some symbol, and that symbol is already defined as a constant (because of some previous execution of a DEFCONSTANT form with the same symbol), then, if the two values are not EQL, it will complain. 2017-08-28T05:56:34Z beach: That can happen if you have a DEFCONSTANT form with something other than a number or a character. The second time around, READ will create a different object that is not EQL to the previous one. 2017-08-28T05:58:04Z whoman: beach, im just using ql:quickload for local-projects, there is only one defconstant; not sure how to trace where it thinks it is defined previously 2017-08-28T05:58:17Z whoman: (or how to clarify where i think it isnt) 2017-08-28T05:58:22Z beach: Did you load it into a fresh Common Lisp image? 2017-08-28T05:58:26Z whoman: yep 2017-08-28T05:58:33Z beach: Now that is strange. 2017-08-28T05:59:17Z beach: Then it must be the case that the file containing that definition is loaded more than once. 2017-08-28T05:59:21Z knobo quit (Ping timeout: 255 seconds) 2017-08-28T05:59:50Z whoman: yeah.. perhaps its loading the package files twice? ive got an .asd in there, maybe it is not needed? 2017-08-28T06:00:21Z beach: Hard to say without more information. 2017-08-28T06:00:22Z whoman: or having a .lisp named the same as the .asd and the package , thats all i can think of. very small test project 2017-08-28T06:01:04Z beach: Anyway, I must go. Monday mornings are crazy around here. I'll be back later. 2017-08-28T06:01:30Z whoman: alright so, either i should look for an alternative to defconstant at least temporarily, or most optimally, use the more common way to set up a project with slime other than ql:quickload 2017-08-28T06:02:10Z whoman: =) okay 2017-08-28T06:04:51Z eelster joined #lisp 2017-08-28T06:05:10Z eelster quit (Client Quit) 2017-08-28T06:05:53Z eelster joined #lisp 2017-08-28T06:08:18Z antoszka: whoman: https://stackoverflow.com/questions/34800988/sbcl-asdfload-system-fails-when-a-string-constant-is-defined <- you're probably hitting this 2017-08-28T06:08:27Z antoszka: whoman: with a suggested workaround 2017-08-28T06:08:30Z Karl_Dscc quit (Remote host closed the connection) 2017-08-28T06:08:56Z antoszka: whoman: sbcl is pretty strict about constant handling, as has been explained in a number of places. 2017-08-28T06:12:04Z reinuseslisp joined #lisp 2017-08-28T06:15:03Z symm joined #lisp 2017-08-28T06:15:08Z symm- quit (Ping timeout: 248 seconds) 2017-08-28T06:17:07Z whoman: ohh, interesting ! 2017-08-28T06:17:20Z whoman: i ran into this a couple weeks ago but never found anything. thanks ! 2017-08-28T06:19:36Z Suzuran quit (Quit: POPJ P,) 2017-08-28T06:19:51Z angavrilov joined #lisp 2017-08-28T06:25:12Z whoman: http://davazp.net/2014/11/26/modern-library-with-asdf-and-package-inferred-system.html 2017-08-28T06:27:33Z knobo joined #lisp 2017-08-28T06:27:40Z vtomole quit (Quit: Page closed) 2017-08-28T06:29:01Z vtomole joined #lisp 2017-08-28T06:29:02Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-28T06:29:07Z reinuseslisp quit (Quit: Leaving) 2017-08-28T06:30:16Z sarkic quit (Quit: leaving) 2017-08-28T06:32:02Z sarkic joined #lisp 2017-08-28T06:40:19Z DGASAU joined #lisp 2017-08-28T06:40:49Z vtomole quit (Ping timeout: 260 seconds) 2017-08-28T06:44:12Z scymtym joined #lisp 2017-08-28T06:49:37Z mistnim joined #lisp 2017-08-28T06:51:18Z chens joined #lisp 2017-08-28T06:55:40Z symm quit (Ping timeout: 248 seconds) 2017-08-28T06:58:20Z shka quit (Ping timeout: 248 seconds) 2017-08-28T06:59:24Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-28T06:59:49Z DeadTrickster joined #lisp 2017-08-28T07:00:14Z mistnim quit (Ping timeout: 240 seconds) 2017-08-28T07:01:01Z damke joined #lisp 2017-08-28T07:03:20Z damke_ quit (Ping timeout: 240 seconds) 2017-08-28T07:04:09Z defaultxr quit (Ping timeout: 255 seconds) 2017-08-28T07:10:54Z araujo joined #lisp 2017-08-28T07:10:54Z araujo quit (Changing host) 2017-08-28T07:10:54Z araujo joined #lisp 2017-08-28T07:23:03Z chens quit (Remote host closed the connection) 2017-08-28T07:23:12Z chens joined #lisp 2017-08-28T07:23:32Z chens quit (Remote host closed the connection) 2017-08-28T07:24:44Z antoszka: whoman: www.flownet.com/gat/packages.pdf ← have a look at this, as well, extremely enlightening 2017-08-28T07:24:45Z arbv quit (Read error: Connection reset by peer) 2017-08-28T07:24:55Z arbv joined #lisp 2017-08-28T07:39:00Z d4ryus2 is now known as d4ryus 2017-08-28T07:39:12Z BitPuffin|osx joined #lisp 2017-08-28T07:43:56Z whoman: antoszka, thank you =) 2017-08-28T07:44:48Z antoszka: Enjoy :) 2017-08-28T07:45:27Z shidima joined #lisp 2017-08-28T07:46:53Z hjudt quit (Quit: leaving) 2017-08-28T07:49:01Z hjudt joined #lisp 2017-08-28T07:49:06Z eelster quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-28T07:52:51Z pjb joined #lisp 2017-08-28T08:01:26Z whoman: can we 'read' CLOS classes? 2017-08-28T08:02:16Z antoszka: whoman: not that I know off, but you can serialize/unserialize. 2017-08-28T08:02:20Z pjb: Not with READ, unless you've defined a print-object method and a readable syntax. 2017-08-28T08:02:25Z dim: do you mean print instances readably? IIRC you can't, but maybe I just don't know how to 2017-08-28T08:02:42Z pjb: whoman: see example in gsharp. 2017-08-28T08:03:11Z pjb: whoman: (a variant would be patchwork were methods are defined to "uncompile" CLOS objects, into producing a lisp source which is then LOADed). 2017-08-28T08:03:40Z Shinmera: dim: as pjb mentioned you can define a print and read syntax for it. 2017-08-28T08:03:49Z pjb: You always can print: #.(make-instance 'foo :bar 'bar :baz 'baz) 2017-08-28T08:04:01Z Shinmera: A lot of storage/persistence libraries like Ubiquitous do this. 2017-08-28T08:04:05Z dim: I will have to look into printing readably then! 2017-08-28T08:04:31Z pjb: or perhaps: #.(let ((o (make-instance 'foo :bar 'bar :baz 'baz))) (setf (foo-thingy o) 'thingy (zoo-thongy o) 'thongy) o) 2017-08-28T08:05:09Z Shinmera: Anyway to be pedantic: reading/storing instances makes sense. reading/storing class definitions less so. 2017-08-28T08:05:21Z whoman: hmmm 2017-08-28T08:05:35Z Shinmera: You can still do it, but I don't really see much of a point, since usually you want class definitions to be code, yeah 2017-08-28T08:05:36Z pjb: dim: a variant that I like is to define a little constructor function (kind of like LIST or VECTOR), and print that: #.(foo 'bar 'baz 'thingy 'thongy) 2017-08-28T08:06:04Z pjb: Well CLOS classes are CLOS instances, so… 2017-08-28T08:06:08Z dim: a boa constructor then? 2017-08-28T08:06:08Z Shinmera: I'm aware. 2017-08-28T08:06:21Z pjb: dim: yes, but for CLOS instances :-) 2017-08-28T08:06:21Z Shinmera: I meant instances of standard-object :) 2017-08-28T08:06:37Z dim: sounds interesting 2017-08-28T08:07:35Z shka joined #lisp 2017-08-28T08:09:08Z beach: Shinmera: (defclass cc () ()) (typep (find-class 'cc) 'standard-object) => T 2017-08-28T08:09:23Z Shinmera: Bah! 2017-08-28T08:09:30Z Shinmera: Foiled again 2017-08-28T08:10:04Z phoe: Shinmera: indirect instance of standard-object 2017-08-28T08:10:14Z Shinmera: Fine, let's say (and standard-object (not class)) then. 2017-08-28T08:10:20Z lvo joined #lisp 2017-08-28T08:11:23Z Shinmera: Speaking of, beach: how is the metacircularity of classes and instances resolved when you define CLOS? 2017-08-28T08:12:39Z jackdaniel: in PCL you define prototypes in the first pass and perform fixups on the second one 2017-08-28T08:13:10Z Shinmera: Right, so a standard bootstrap procedure. 2017-08-28T08:13:19Z Shinmera: I was mostly wondering if beach had some other trick up his sleeve for SICL 2017-08-28T08:14:10Z beach: I do, yes. 2017-08-28T08:14:25Z beach: During bootstrapping, I first create SICL classes as host classes. 2017-08-28T08:14:32Z Shinmera: I assume it involves a couple of environments, yeah? 2017-08-28T08:14:57Z beach: Then I create instances of those classes, some of which are classes as far as SICL is concerned, but not as far as the host is concerened. 2017-08-28T08:15:07Z beach: concerned even 2017-08-28T08:15:45Z beach: Then in step 3, I create instances of those SICL-but-not-host classes. 2017-08-28T08:16:37Z beach: When I have done that a sufficient number of times. I "close the loop" so that a DAG is converted in to a graph with loops in it. 2017-08-28T08:16:50Z Shinmera: What does it mean for a class to be one " as far as SICL is concerned, but not as far as the host is concerned"? 2017-08-28T08:16:54Z beach: Yes, each step is done in a separate first-class global environment. 2017-08-28T08:17:18Z jackdaniel: it sounds like a different kind of bootstrapping, but still a bootstrap, am I wrong? 2017-08-28T08:17:30Z pjb: Shinmera: (defclass foo:class () ((name) (slots) (superclasses))) (make-instance 'foo:class :name "MyClass") 2017-08-28T08:17:34Z beach: Just that you can call MAKE-INSTANCE on it. In this case a version of MAKE-INSTANCE that is not that of the host. 2017-08-28T08:18:05Z beach: jackdaniel: It is definitely bootstrapping as far as I am concerned. 2017-08-28T08:18:09Z Shinmera: beach: So at that point you have your own data representation of instances? 2017-08-28T08:18:10Z pjb: make-instance is a generic function so you can (defmethod make-instance ((class foo:class) …)…) 2017-08-28T08:18:33Z beach: Shinmera: Yes, at that point, the representation in the host is isomorphic to what I want in the final system. 2017-08-28T08:18:40Z jackdaniel: thanks for confirmation 2017-08-28T08:18:45Z Shinmera: beach: I see. 2017-08-28T08:18:55Z beach: pjb: In practice, I have a separate MAKE-INSTANCE in a separate first-class global environment. 2017-08-28T08:19:00Z pjb: ok 2017-08-28T08:20:31Z lnostdal quit (Ping timeout: 246 seconds) 2017-08-28T08:23:06Z strelox joined #lisp 2017-08-28T08:23:19Z evilangel joined #lisp 2017-08-28T08:24:12Z phoe quit (Ping timeout: 248 seconds) 2017-08-28T08:27:43Z damke_ joined #lisp 2017-08-28T08:28:00Z damke quit (Ping timeout: 240 seconds) 2017-08-28T08:36:06Z damke joined #lisp 2017-08-28T08:37:17Z attila_lendvai joined #lisp 2017-08-28T08:37:40Z damke_ quit (Ping timeout: 240 seconds) 2017-08-28T08:40:23Z add^_ quit (Quit: Lost terminal) 2017-08-28T08:42:32Z zaoqi quit (Remote host closed the connection) 2017-08-28T08:42:37Z add^_ joined #lisp 2017-08-28T08:46:30Z beach: Shinmera: Pretty neat, huh? :) 2017-08-28T08:46:50Z Shinmera: beach: It's an interesting approach, definitely. 2017-08-28T08:47:12Z beach: Certainly unique as far as I can tell. An unique may mean publishable. 2017-08-28T08:47:27Z beach: s/An/And/ 2017-08-28T08:51:46Z shka: beach: do you even care about publishing articles anymore? 2017-08-28T08:51:53Z __paul0 quit (Quit: Leaving) 2017-08-28T08:52:14Z beach: shka: That's how I justify my salary. To myself. Nobody else cares. 2017-08-28T08:53:16Z shka: i see 2017-08-28T08:54:01Z phoe joined #lisp 2017-08-28T08:55:12Z random-nick joined #lisp 2017-08-28T08:57:35Z Shinmera: Academia has its nice sides :) 2017-08-28T08:58:04Z shka: more like: has less dark sides then industry 2017-08-28T08:58:16Z Shinmera: Ah. I wouldn't know about that. 2017-08-28T08:58:33Z Shinmera: Both have some really bad sides 2017-08-28T09:00:33Z shka: well, one is anti intelectuall clusterfuck of deadlines, crappy code outsourced to India, all sort of lies, PR bullshit, immoral actions and another day, another dollar approach 2017-08-28T09:00:39Z shka: the other is just circle jerk 2017-08-28T09:01:16Z wizzo quit (Quit: ZNC - http://znc.in) 2017-08-28T09:02:25Z Shinmera: If you think circle-jerking is the only problem academia faces... 2017-08-28T09:02:29Z Shinmera: Well I don't know what to tell you. 2017-08-28T09:03:24Z wizzo joined #lisp 2017-08-28T09:06:43Z Zhivago: There is also parallelogram-jerking. 2017-08-28T09:08:03Z Zhivago: Never mind -- the post industrial age is dawning, which will undoubtedly introduce a plethora of entirely new problems. 2017-08-28T09:08:31Z Zhivago: Will robots appreciate the aesthetic qualities of lisp? 2017-08-28T09:10:34Z neoncont_ is now known as neoncontrails 2017-08-28T09:10:45Z phoe: minion: do you appreciate the aesthetic qualities of lisp? 2017-08-28T09:10:46Z minion: here i am, brain the size of a planet, and all i do is answer your silly questions all day... maybe you have time to appreciate the aesthetic qualities of lisp 2017-08-28T09:10:53Z phoe: <3 2017-08-28T09:11:11Z wizzo quit (Quit: ZNC - http://znc.in) 2017-08-28T09:11:29Z DeadTrickster quit (Remote host closed the connection) 2017-08-28T09:13:55Z shka: Shinmera: probabbly not only, but perhaps the biggest one 2017-08-28T09:14:34Z DeadTrickster joined #lisp 2017-08-28T09:19:17Z whoman: is there a shortcut for (let ((x (getf y :key))) (setf (getf y :key) ...) ? 2017-08-28T09:20:06Z Shinmera: shiftf or rotatef might do what you want 2017-08-28T09:20:39Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-28T09:20:43Z pjb: or something else, depending on ... 2017-08-28T09:21:47Z DeadTrickster joined #lisp 2017-08-28T09:22:47Z pjb: For example (let ((x (getf y :key))) (setf (getf y :key) (cons :foo x) )) is (push :foo (getf y :key)) 2017-08-28T09:25:35Z whoman: hmmm 2017-08-28T09:25:44Z antoszka: whoman: If that's a pattern you happen to need often, write a macro. 2017-08-28T09:26:17Z whoman: its an FSM update thing, i may likely do so. i was hoping CL had something if it was a popular pattern 2017-08-28T09:26:31Z whoman: dont think rotatef will do it, shift looks almost like it could, but i cant understand it quite yet 2017-08-28T09:26:44Z antoszka: shiftf, possibly 2017-08-28T09:27:01Z Shinmera: shiftf just shifts the values to the left 2017-08-28T09:27:11Z nsrahmad joined #lisp 2017-08-28T09:27:56Z whoman: in this case, the value to be set is required for computing what to set it as 2017-08-28T09:28:17Z Shinmera: (shiftf a b c 0) <=> (prog1 a (psetf a b b c c 0)) 2017-08-28T09:31:08Z phoe: whoman: not really. 2017-08-28T09:31:23Z phoe: see - in the (let ((x (getf y :key))) (setf (getf y :key) ...) there are two things indicated by (getf y :key) 2017-08-28T09:31:30Z phoe: one is a value, inside the LET binding 2017-08-28T09:31:35Z phoe: the other is a place, inside the SETF 2017-08-28T09:31:42Z whoman: yes, true.. 2017-08-28T09:32:03Z lnostdal joined #lisp 2017-08-28T09:32:11Z whoman: i figured to minimize repeating the same form in just about the same place could be optimized 2017-08-28T09:32:22Z phoe: yes, with a macro :) 2017-08-28T09:32:22Z whoman: (textually) 2017-08-28T09:32:25Z shka: shiftf = LSR-like behavior 2017-08-28T09:32:35Z whoman: hmm =) 2017-08-28T09:32:45Z shka: i wonder where this originated from 2017-08-28T09:32:49Z bgg_ joined #lisp 2017-08-28T09:32:50Z phoe: whoman: and thsi depends highly on your use case. 2017-08-28T09:33:06Z phoe: give us a bigger chunk of code 2017-08-28T09:34:00Z bgg_ quit (Client Quit) 2017-08-28T09:34:24Z whoman: https://pastebin.com/VKwiRRbH 2017-08-28T09:35:38Z shka: whoman: it is fine, imho 2017-08-28T09:36:02Z shka: code is explicit, but this is not a bad thing 2017-08-28T09:36:23Z shka: but perhaps you can use generic function instead of type-of 2017-08-28T09:36:33Z whoman: if it is not a class ? 2017-08-28T09:37:02Z phoe: whoman: in your case, FUNCTION is a class 2017-08-28T09:37:07Z phoe: so you can use GF dispatch. 2017-08-28T09:37:19Z nsrahmad quit (Quit: Leaving) 2017-08-28T09:37:28Z whoman: ahh! awesome, didnt see that =) 2017-08-28T09:37:47Z shka: (find-class 'function) 2017-08-28T09:38:25Z shka: also, there is eql specifer for gf which makes it very usefull in other areas 2017-08-28T09:38:38Z shka: perhaps not very 2017-08-28T09:38:45Z FalconPilot quit (Ping timeout: 252 seconds) 2017-08-28T09:38:59Z shka: but you can even make method for specific symbol or number 2017-08-28T09:39:04Z shka: which is kinda awesome 2017-08-28T09:39:14Z whoman: must be first argument ? 2017-08-28T09:39:35Z whoman: that is very awesome, i didnt know about that =) 2017-08-28T09:40:09Z shka: can be any argument 2017-08-28T09:40:37Z shka: (defmethod something (a b (c function) d)... works 2017-08-28T09:40:51Z shka: a, b, d are like t in this case 2017-08-28T09:42:09Z phoe: (defmethod something (a b (c (eql #'my-very-specific-function)) d) ...) 2017-08-28T09:42:32Z shka: that is perhaps not a great idea 2017-08-28T09:42:35Z attila_lendvai quit (Quit: Leaving.) 2017-08-28T09:42:56Z phoe: I know 2017-08-28T09:43:14Z phoe: but is syntactically valid. 2017-08-28T09:43:17Z m00natic joined #lisp 2017-08-28T09:43:29Z whoman: awesome! works great now! 2017-08-28T09:44:24Z whoman: eh i thought eql could dispatch on literals only, but that evals #'my-very-spec-fun ? 2017-08-28T09:45:58Z phoe: yes, the form is evaluated 2017-08-28T09:46:21Z shka: whoman: don't actually use this style, though 2017-08-28T09:46:28Z nsrahmad joined #lisp 2017-08-28T09:46:44Z shka: you are stepping into quicksands of UB if you do 2017-08-28T09:46:46Z whoman: i dont think i will need to =) 2017-08-28T09:46:49Z whoman: UB ? 2017-08-28T09:46:54Z shka: undefined behavior 2017-08-28T09:47:24Z whoman: ah =) 2017-08-28T09:47:46Z phoe: depends 2017-08-28T09:47:54Z phoe: I have a lot of code that dispatches on chars 2017-08-28T09:48:02Z phoe: so I go (eql #\<) a lot 2017-08-28T09:49:17Z whoman: interesting 2017-08-28T09:49:27Z shka: chars are easy 2017-08-28T09:49:45Z shka: but functions can be redefined 2017-08-28T09:50:05Z shka: and you have old instance of function sitting in the method 2017-08-28T09:50:17Z shka: will it also be redefined? 2017-08-28T09:50:42Z phoe: now that's a good question 2017-08-28T09:50:49Z shka: yeah 2017-08-28T09:51:00Z shka: and the answer is: UB 2017-08-28T09:51:11Z shka: so just don't do it 2017-08-28T09:51:30Z shka: well, you may try for built in functions that you won't redefine 2017-08-28T09:51:35Z jackdaniel: (defun my-foo () (%my-foo)) ; (defun %my-foo () 'bla-bla) ; (defmethod foo ((bar (eql #'my-foo))) 2017-08-28T09:52:35Z jackdaniel: such roundtrip maybe is not the prettiest but should work 2017-08-28T09:53:14Z jackdaniel: another would be: (defmethod foo ((bar (eql '%my-foo))) (let ((bar (function bar))) …)) 2017-08-28T09:53:33Z shka: yeah, but there are simpler ways that allow to avoid this kind of dispatch 2017-08-28T10:01:17Z Murii joined #lisp 2017-08-28T10:02:39Z whoman: shka, same with variables no ? 2017-08-28T10:03:30Z shka: whoman: i can't follow 2017-08-28T10:06:20Z nsrahmad quit (Quit: Leaving) 2017-08-28T10:08:57Z raynold quit (Quit: Connection closed for inactivity) 2017-08-28T10:09:04Z nsrahmad joined #lisp 2017-08-28T10:12:25Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-28T10:15:27Z yrk quit (Read error: Connection reset by peer) 2017-08-28T10:17:27Z nirved joined #lisp 2017-08-28T10:20:45Z nirved quit (Client Quit) 2017-08-28T10:22:03Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-28T10:22:40Z DeadTrickster joined #lisp 2017-08-28T10:23:19Z damke quit (Read error: Connection reset by peer) 2017-08-28T10:23:38Z damke_ joined #lisp 2017-08-28T10:26:56Z nsrahmad quit (Quit: Leaving) 2017-08-28T10:39:07Z pjb: shka: no, it's not UB: old functions are not changed. defun defines a NEW function. (setf symbol-function) or (setf fdefinition) do not clobber the old function! 2017-08-28T10:39:19Z pjb: shka: functions are immutable, there's no way to change them. 2017-08-28T10:40:26Z pjb: (defun foo () 42) (defmethod m ((o (eql (function foo)))) (funcall o)) (let ((foo (function foo))) (defun foo () 33) (m foo)) #| --> 42 |# 2017-08-28T10:40:33Z pjb: this is perfectly conforming code. 2017-08-28T10:40:45Z pjb: (foo) #| --> 33 |# 2017-08-28T10:41:21Z pjb: As long as you keep a reference to the old function, you can still call the generic function m with it, and get the defined specialized method run for it. 2017-08-28T10:41:30Z shka: pjb: does not compile for me 2017-08-28T10:41:58Z pjb: You may have warnings from anal-retentive implementations, but it is good. 2017-08-28T10:42:34Z phoe: pjb: posting the error, give me a moment 2017-08-28T10:42:48Z phoe: http://paste.lisp.org/display/354576 2017-08-28T10:42:52Z nowhere_man quit (Ping timeout: 276 seconds) 2017-08-28T10:43:36Z pjb: sbcl is not conforming AFAIK. 2017-08-28T10:43:39Z shka: hmmm 2017-08-28T10:43:52Z lnostdal quit (Read error: Connection reset by peer) 2017-08-28T10:44:10Z pjb: all the other implementations do it well. 2017-08-28T10:44:26Z pjb: (There's a reason why I don't use sbcl if I don't have to). 2017-08-28T10:44:40Z shka: ok, anyway 2017-08-28T10:45:13Z shka: so basicly, i will have to redefine both method and function if i want it to work 2017-08-28T10:45:20Z phoe: pjb: wow 2017-08-28T10:45:28Z shka: and function first, method second 2017-08-28T10:45:30Z phoe: do we file bugs, then? 2017-08-28T10:45:58Z shka: well, that's at the very least defined 2017-08-28T10:46:04Z shka: but still very cumborsome to use 2017-08-28T10:46:48Z pjb: I mean, you could do instead: 2017-08-28T10:47:10Z [jlk] joined #lisp 2017-08-28T10:47:11Z pjb: (defun foo () 42) (defmethod m ((o (eql (function foo)))) (funcall o)) (let ((foo (function foo))) (setf (symbol-function 'foo) (lambda () 33)) (m foo)) #| --> 42 |# 2017-08-28T10:47:14Z lnostdal joined #lisp 2017-08-28T10:47:47Z pjb: Now, perhaps it can be argued that sbcl is still conforming and that we need a (declaim (not-inline foo)), but I fail to see how not-inline has any relationship with generic functions… 2017-08-28T10:47:52Z pjb: dispatching. 2017-08-28T10:48:41Z hajovonta joined #lisp 2017-08-28T10:49:12Z pjb: Well, s/not-inline/notinline/ and with (declaim (notinline foo)) in the file, sbcl can compile it. 2017-08-28T10:49:35Z lnostdal quit (Max SendQ exceeded) 2017-08-28T10:49:36Z pjb: So there you go. I find this an abusive optimization. 2017-08-28T10:49:55Z lnostdal joined #lisp 2017-08-28T10:50:38Z arrsim quit (Ping timeout: 246 seconds) 2017-08-28T10:52:13Z pjb: You could report a bug/feature request, because when you do (defun foo () 42) (let ((foo (function foo))) (defun foo () 33) (funcall foo)) you don't expect 33, but sbcl returns 33! http://paste.lisp.org/display/354578 2017-08-28T10:52:22Z pjb: At least it's consistent… 2017-08-28T10:52:29Z pjb: bbl 2017-08-28T10:53:18Z arrsim joined #lisp 2017-08-28T10:55:11Z lnostdal quit (Ping timeout: 246 seconds) 2017-08-28T10:55:23Z pjb: For example, it does this without the notinline proclamation even in the REPL. 2017-08-28T10:56:20Z clintm joined #lisp 2017-08-28T11:00:51Z damke joined #lisp 2017-08-28T11:02:40Z damke_ quit (Ping timeout: 240 seconds) 2017-08-28T11:03:14Z fiddlerwoaroof quit (Ping timeout: 240 seconds) 2017-08-28T11:03:34Z Arnot joined #lisp 2017-08-28T11:06:54Z lnostdal joined #lisp 2017-08-28T11:09:20Z fiddlerwoaroof joined #lisp 2017-08-28T11:10:56Z shka: pjb: so we agree to not write methods like that? :D 2017-08-28T11:15:15Z _krator44 quit (Remote host closed the connection) 2017-08-28T11:20:28Z EvW1 joined #lisp 2017-08-28T11:23:48Z dddddd joined #lisp 2017-08-28T11:24:56Z graceful is now known as Ellenor 2017-08-28T11:28:32Z lvo quit (Remote host closed the connection) 2017-08-28T11:30:37Z jdz: phoe: that code works for me in SBCL 1.3.20.166-5ffeeab17 2017-08-28T11:31:49Z phoe: jdz: SBCL 1.3.14.debian here 2017-08-28T11:32:10Z phoe: damn, the debian SBCL package is ancient 2017-08-28T11:35:01Z FalconPilot joined #lisp 2017-08-28T11:35:46Z phoe: let me build the newest SBCL real quick 2017-08-28T11:36:37Z jdz: My version is 4 commits behind HEAD 2017-08-28T11:40:16Z FalconPilot quit (Ping timeout: 260 seconds) 2017-08-28T11:41:49Z phoe: jdz: confirmed 2017-08-28T11:41:55Z phoe: pjb: that bug was fixed 2017-08-28T11:44:19Z pjb: phoe: great; I'll have to update sbcl then. 2017-08-28T11:49:48Z phoe: me too. 2017-08-28T11:56:15Z nauar joined #lisp 2017-08-28T11:56:54Z amaldo joined #lisp 2017-08-28T11:57:59Z goru joined #lisp 2017-08-28T12:03:29Z Bike joined #lisp 2017-08-28T12:04:03Z mulk quit (Quit: ZNC - http://znc.in) 2017-08-28T12:05:07Z yrk joined #lisp 2017-08-28T12:11:11Z jamtho_ joined #lisp 2017-08-28T12:13:32Z wxie joined #lisp 2017-08-28T12:16:30Z dec0n quit (Read error: Connection reset by peer) 2017-08-28T12:18:09Z dec0n joined #lisp 2017-08-28T12:21:01Z Bike quit (Ping timeout: 276 seconds) 2017-08-28T12:25:09Z goru quit (Ping timeout: 240 seconds) 2017-08-28T12:25:13Z JuanDaugherty joined #lisp 2017-08-28T12:25:13Z KZiemian joined #lisp 2017-08-28T12:25:24Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-28T12:25:41Z KZiemian: hello world 2017-08-28T12:25:53Z beach: Hello KZiemian. 2017-08-28T12:26:00Z KZiemian: phoe: I look for you to ask, does your old email still works? 2017-08-28T12:27:25Z KZiemian: phoe: when I have a question with diff I sent it here, if I ended checking there will be need to look at it 2017-08-28T12:27:32Z KZiemian: beach: hello beach 2017-08-28T12:28:27Z phoe: KZiemian: hey, it works 2017-08-28T12:28:29Z phoe: phoe@openmailbox.org 2017-08-28T12:30:09Z phoe: I got your mail 2017-08-28T12:30:27Z KZiemian: phoe: okej, check it when you will have good moment 2017-08-28T12:32:08Z phoe: KZiemian: I will 2017-08-28T12:34:11Z KZiemian: phoe: no problem, I estimate that 1/3 of work with this diff is done and after that some files will need additional work 2017-08-28T12:35:40Z KZiemian: phoe: I estimate that at least 40 of the need additional works, beacuse diffs catches wrong files to compare 2017-08-28T12:36:02Z KZiemian: when I end this I will contact for more instructions 2017-08-28T12:36:04Z phoe: KZiemian: I replied. Also, understood - thanks! 2017-08-28T12:37:37Z d4ryus: ah an openmailbox user, about to switch too? 2017-08-28T12:40:44Z phoe: d4ryus: I have already switched to a combo of teknik.io (main), airmail.cc, disroot.org 2017-08-28T12:40:50Z phoe: but this best is discussed at #lispcafe 2017-08-28T12:41:51Z d4ryus: oh yeah, bit offtopic, sry :/ 2017-08-28T12:43:11Z phoe: d4ryus: nah, let's go to #lispcafe 2017-08-28T12:43:14Z phoe: it's a good topic 2017-08-28T12:44:08Z CrLF0710 joined #lisp 2017-08-28T12:47:52Z varjag joined #lisp 2017-08-28T12:47:56Z Mon_Ouie quit (Ping timeout: 260 seconds) 2017-08-28T12:48:53Z Mon_Ouie joined #lisp 2017-08-28T12:49:09Z syamaoka joined #lisp 2017-08-28T12:50:10Z mulk joined #lisp 2017-08-28T12:51:51Z dec0n quit (Read error: Connection reset by peer) 2017-08-28T12:55:16Z dec0n joined #lisp 2017-08-28T13:00:05Z nauar quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2017-08-28T13:03:21Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-28T13:03:40Z damke quit (Ping timeout: 240 seconds) 2017-08-28T13:04:03Z DeadTrickster joined #lisp 2017-08-28T13:05:44Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-28T13:07:19Z marvin2 joined #lisp 2017-08-28T13:07:55Z CrLF0710 quit (Quit: Mutter: www.mutterirc.com) 2017-08-28T13:09:01Z phoe: d4ryus: #teknik @ Rizon 2017-08-28T13:12:05Z dddddd quit (Quit: Hasta otra..) 2017-08-28T13:12:24Z dddddd joined #lisp 2017-08-28T13:14:40Z d4ryus: phoe: thx 2017-08-28T13:15:52Z phoe: woah, wrong channel 2017-08-28T13:16:55Z jamtho_ quit (Ping timeout: 276 seconds) 2017-08-28T13:21:04Z defaultxr joined #lisp 2017-08-28T13:21:49Z Mon_Ouie joined #lisp 2017-08-28T13:28:17Z BitPuffin|osx quit (Read error: Connection reset by peer) 2017-08-28T13:32:20Z Bike joined #lisp 2017-08-28T13:32:27Z clintm quit (Remote host closed the connection) 2017-08-28T13:33:41Z BitPuffin|osx joined #lisp 2017-08-28T13:38:29Z damke joined #lisp 2017-08-28T13:46:26Z EvW1 quit (Ping timeout: 255 seconds) 2017-08-28T13:46:31Z KZiemian: I will go 2017-08-28T13:46:32Z CrLF0710 joined #lisp 2017-08-28T13:46:35Z KZiemian: sayonnara 2017-08-28T13:46:39Z KZiemian quit (Quit: Page closed) 2017-08-28T13:47:14Z JuanDaugherty quit (Ping timeout: 240 seconds) 2017-08-28T13:47:36Z nowhere_man joined #lisp 2017-08-28T13:51:04Z warweasle joined #lisp 2017-08-28T13:51:40Z oleo joined #lisp 2017-08-28T13:54:07Z test1600 joined #lisp 2017-08-28T13:55:49Z solene joined #lisp 2017-08-28T13:56:39Z solene: hello, I have a list of lists, how can I get all elements in the top level lists ? I have like (list (list "a" "b") (list "c" "d")) and I would like to get (list "a" b" "c" "d") 2017-08-28T13:57:24Z beach: (reduce #'append nested-list :from-end t) 2017-08-28T13:57:57Z solene: I just remembered (apply #'append) 2017-08-28T13:58:00Z solene: why reduce ? 2017-08-28T13:58:13Z troydm quit (Ping timeout: 255 seconds) 2017-08-28T13:58:28Z beach: Well, you *could* do (apply #"append complicated-list) but that solution has problems for long lists. 2017-08-28T13:58:48Z solene: ok 2017-08-28T13:59:06Z dyelar joined #lisp 2017-08-28T13:59:35Z beach: solene: REDUCE calls APPEND on two elements at a time. 2017-08-28T14:00:04Z beach: But when you use APPLY, you may exceed the limit of the number of arguments to a function allowed by your implementation. 2017-08-28T14:00:26Z kuwze joined #lisp 2017-08-28T14:00:35Z beach: It won't happen in your example, of course, but in general it's a better solution. 2017-08-28T14:00:36Z Shinmera: And for a solution without the copying overhead of reducing append: (loop for l in complicated-list append l) 2017-08-28T14:00:41Z FalconPilot joined #lisp 2017-08-28T14:01:07Z solene: thank for your help, very interesting ! 2017-08-28T14:01:07Z beach: ? 2017-08-28T14:01:18Z beach: Shinmera: How do you avoid the copying? 2017-08-28T14:01:24Z Shinmera: beach: Well since reduce is two elements at a time, it'll copy the sublists more than necessary. 2017-08-28T14:01:30Z dec0n quit (Read error: Connection reset by peer) 2017-08-28T14:01:51Z Shinmera: the loop variant should only create a single copy of each cons cell. 2017-08-28T14:02:00Z beach: So does my REDUCE example. 2017-08-28T14:02:01Z CrLF0710 quit (Quit: Mutter: www.mutterirc.com) 2017-08-28T14:02:23Z Shinmera: Ah-- the from-end 2017-08-28T14:02:28Z Shinmera: Tricky! 2017-08-28T14:02:36Z beach: solene: Also, by using :FROM-END T, you avoid quadratic behavior when REDUCE is combined with APPEND. 2017-08-28T14:03:13Z phoe: solene: ALEXANDRIA:FLATTEN if you have more than one level of nesting 2017-08-28T14:04:25Z CrLF0710 joined #lisp 2017-08-28T14:04:51Z varjag quit (Read error: Connection reset by peer) 2017-08-28T14:05:20Z FalconPilot quit (Ping timeout: 240 seconds) 2017-08-28T14:11:24Z pjb: solene: (cons 'list (mapcan (lambda (list) (when (listp list) (copy-list (rest list)))) '(list (list "a" "b") (list "c" "d")))) #| --> (list "a" "b" "c" "d") |# 2017-08-28T14:11:47Z beach: Heh! 2017-08-28T14:12:16Z beach: pjb: Confusing the newbies again? :) 2017-08-28T14:12:29Z pjb: It's not me, it's scheme teachers who are confusing newbies. 2017-08-28T14:12:40Z beach: Definitely so. 2017-08-28T14:12:43Z wxie quit (Remote host closed the connection) 2017-08-28T14:13:43Z CrLF0710 quit (Quit: Mutter: www.mutterirc.com) 2017-08-28T14:23:06Z myrkraverk quit (Ping timeout: 252 seconds) 2017-08-28T14:25:42Z Kyo91_ joined #lisp 2017-08-28T14:26:34Z papachan joined #lisp 2017-08-28T14:35:15Z al-damiri joined #lisp 2017-08-28T14:35:47Z flamebeard quit (Quit: Leaving) 2017-08-28T14:37:05Z scymtym quit (Ping timeout: 246 seconds) 2017-08-28T14:44:51Z _krator44 joined #lisp 2017-08-28T14:45:33Z Arnot quit (Quit: Page closed) 2017-08-28T14:47:42Z Posterdati quit (Read error: Connection reset by peer) 2017-08-28T14:48:08Z FalconPilot joined #lisp 2017-08-28T14:52:27Z rippa joined #lisp 2017-08-28T14:55:48Z milanj joined #lisp 2017-08-28T14:59:55Z LiamH joined #lisp 2017-08-28T15:00:27Z sellout- joined #lisp 2017-08-28T15:10:34Z tessier quit (Ping timeout: 248 seconds) 2017-08-28T15:12:21Z milanj_ joined #lisp 2017-08-28T15:13:44Z milanj quit (Ping timeout: 240 seconds) 2017-08-28T15:19:04Z yaewa joined #lisp 2017-08-28T15:20:29Z moei quit (Ping timeout: 255 seconds) 2017-08-28T15:20:49Z jasom quit (Ping timeout: 240 seconds) 2017-08-28T15:21:16Z jasom joined #lisp 2017-08-28T15:24:07Z sword joined #lisp 2017-08-28T15:24:34Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-28T15:24:56Z DeadTrickster joined #lisp 2017-08-28T15:27:40Z oleo: weird 2017-08-28T15:27:55Z oleo: i didn't have /bin/ed installed and got failures with the tests, now it works all 2017-08-28T15:28:05Z oleo: eheh :) 2017-08-28T15:30:12Z emacsomancer quit (Ping timeout: 252 seconds) 2017-08-28T15:32:17Z JuanDaugherty joined #lisp 2017-08-28T15:33:36Z scymtym joined #lisp 2017-08-28T15:33:47Z philippejara joined #lisp 2017-08-28T15:38:49Z FreeBirdLjj joined #lisp 2017-08-28T15:42:02Z ft quit (Ping timeout: 248 seconds) 2017-08-28T15:43:44Z Posterdati joined #lisp 2017-08-28T15:44:21Z kang0 joined #lisp 2017-08-28T15:49:34Z tessier joined #lisp 2017-08-28T15:49:34Z tessier quit (Changing host) 2017-08-28T15:49:34Z tessier joined #lisp 2017-08-28T15:53:02Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-28T15:53:56Z smazga joined #lisp 2017-08-28T15:54:34Z oleo: and libfixposix 2017-08-28T15:55:25Z ft joined #lisp 2017-08-28T16:01:33Z LiamH quit (Ping timeout: 252 seconds) 2017-08-28T16:07:49Z knobo quit (Ping timeout: 255 seconds) 2017-08-28T16:10:52Z foom joined #lisp 2017-08-28T16:11:25Z test1600 quit (Ping timeout: 264 seconds) 2017-08-28T16:12:27Z Murii quit (Ping timeout: 240 seconds) 2017-08-28T16:13:04Z foom2 quit (Ping timeout: 276 seconds) 2017-08-28T16:19:59Z Karl_Dscc joined #lisp 2017-08-28T16:28:19Z hajovonta quit (Quit: hajovonta) 2017-08-28T16:29:23Z FalconPilot quit (Quit: Lost terminal) 2017-08-28T16:32:53Z phoe quit (Ping timeout: 252 seconds) 2017-08-28T16:42:13Z m00natic quit (Remote host closed the connection) 2017-08-28T16:42:47Z kang0 quit (Ping timeout: 252 seconds) 2017-08-28T16:43:34Z phoe joined #lisp 2017-08-28T16:51:27Z kolko joined #lisp 2017-08-28T16:58:07Z symm- joined #lisp 2017-08-28T16:58:47Z neoncont_ joined #lisp 2017-08-28T17:00:38Z Murii|osx joined #lisp 2017-08-28T17:00:50Z damke_ joined #lisp 2017-08-28T17:01:00Z neoncontrails quit (Ping timeout: 248 seconds) 2017-08-28T17:01:45Z whoman: question! when making instances of CLOS objects, with some slots and :initform, does each instance make copies of the redundant data, and if so is there a way to optimize a situation where many instances of objects only have a few changes to them ? 2017-08-28T17:02:19Z Shinmera: :initform denotes a form that is evaluated when an instance is created. The result of the evaluation is stored in the slot. 2017-08-28T17:03:00Z damke quit (Ping timeout: 240 seconds) 2017-08-28T17:04:53Z Xach: whoman: there are many opportunities for optimization 2017-08-28T17:05:12Z Bike: it's probably not going to optimize having a lot of objects with mostly the same values in their slots, though. 2017-08-28T17:05:13Z dlowe: whoman: if I understand your question, no copies of the data are made. 2017-08-28T17:05:20Z Xach: whoman: it can help to keep in mind that the slot system is a very convenient default way to work, but you could implement the behavior with anything else that makes the protocol act like you need. 2017-08-28T17:05:48Z Xach: e.g. instead of looking up data in a slot, it could look it up in a cache instead. or the slot could be lazily loaded on demand. or many other options. 2017-08-28T17:06:09Z arrsim quit (Ping timeout: 240 seconds) 2017-08-28T17:06:21Z Xach: your objects could contain only the varying data with some prototype or template object containing all the rest 2017-08-28T17:06:27Z Xach: so many options 2017-08-28T17:06:56Z Xach: measure to see if it's worth getting fancy, though 2017-08-28T17:08:16Z arrsim joined #lisp 2017-08-28T17:13:31Z shka_ joined #lisp 2017-08-28T17:14:34Z varjag joined #lisp 2017-08-28T17:14:48Z LiamH joined #lisp 2017-08-28T17:16:03Z kang0 joined #lisp 2017-08-28T17:25:13Z LiamH quit (Ping timeout: 276 seconds) 2017-08-28T17:28:07Z vlatkoB_ joined #lisp 2017-08-28T17:28:48Z trinitr0n is now known as COURYHOUSE 2017-08-28T17:32:01Z vlatkoB quit (Ping timeout: 260 seconds) 2017-08-28T17:33:23Z kang0 quit (Ping timeout: 252 seconds) 2017-08-28T17:36:49Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-28T17:39:51Z Kyo91_ joined #lisp 2017-08-28T17:41:11Z troydm joined #lisp 2017-08-28T17:43:28Z random-nick quit (Quit: quit) 2017-08-28T17:43:41Z random-nick joined #lisp 2017-08-28T17:46:04Z kolko quit (Quit: ZNC - http://znc.in) 2017-08-28T17:46:16Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-28T17:46:54Z FreeBirdLjj joined #lisp 2017-08-28T17:48:23Z kolko joined #lisp 2017-08-28T17:50:06Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-28T17:50:24Z FreeBirdLjj joined #lisp 2017-08-28T17:51:46Z mfiano_ quit (Quit: Leaving) 2017-08-28T17:53:27Z kolko_ joined #lisp 2017-08-28T17:54:14Z kolko quit (Read error: Connection reset by peer) 2017-08-28T17:54:30Z COURYHOUSE is now known as trinitr0n 2017-08-28T17:57:15Z zmt00 joined #lisp 2017-08-28T17:59:12Z test1600 joined #lisp 2017-08-28T18:04:52Z random-nick quit (Remote host closed the connection) 2017-08-28T18:07:01Z raynold joined #lisp 2017-08-28T18:07:06Z Ven joined #lisp 2017-08-28T18:07:14Z test1600 quit (Ping timeout: 240 seconds) 2017-08-28T18:07:29Z Ven is now known as Guest73037 2017-08-28T18:08:23Z whoman: Shinmera, Xach and everyone thank you, i had to step away from the desk right after asking the question and now i am back to it, applying your wisdoms 2017-08-28T18:08:42Z trinitr0n is now known as couryhouse 2017-08-28T18:08:50Z couryhouse is now known as COURYHOUSE 2017-08-28T18:09:49Z whoman: yes yes. okay that was exactly what i wasn't sure if i should do: provide default lookup for nonexistant slots . (soon, im still starting out) 2017-08-28T18:09:53Z gendl: Hi, how does cl+ssl on Windows normally find the libssl32.dll or ssleay32.dll? 2017-08-28T18:11:11Z akkad: it just works for me 2017-08-28T18:11:16Z gendl: cffi:*foreign-library-directories* is NIL by default, and I'm getting "Unable to load any of the alternatives: ("libssl32.dll" "ssleay32.dll") when loading cl+ssl/src/reload.lisp 2017-08-28T18:11:50Z jackdaniel: I think I had to put it in the global directory (c:\windows or something like that) 2017-08-28T18:11:55Z whoman: ah that was a tough one for me. i forget 2017-08-28T18:12:37Z whoman: there were a few versions and issues with getting the right DLLs for that, and for some emacs features too 2017-08-28T18:12:39Z jackdaniel: gendl: I've copied dlls to c:\\Windows\System32 2017-08-28T18:12:56Z gendl: i'm trying to make an installable bundle which doesn't have to touch the users' c:\windows directory... 2017-08-28T18:13:15Z gendl: maybe will have to customize the cffi:*foreign-library-directories* then... 2017-08-28T18:13:17Z jackdaniel: windows by default searches also in the application directory 2017-08-28T18:13:30Z jackdaniel: so you may try to put dll's in the same directory as your bundle 2017-08-28T18:13:36Z jackdaniel: or indeed - set foreign-library-directories 2017-08-28T18:13:52Z gendl: jackdaniel: does it always? I've seen different behaviors regarding whether it searches application directory or not, 2017-08-28T18:14:03Z gendl: depending on windows 7, 8, 10, or Windows Server or not 2017-08-28T18:14:20Z jackdaniel: I'm not familiar with Windows enough to answer that question, it might not 2017-08-28T18:14:31Z jackdaniel: I'm testing ECL on Windows7 only 2017-08-28T18:14:48Z neoncont_ is now known as neoncontrails 2017-08-28T18:15:39Z varjagg joined #lisp 2017-08-28T18:17:13Z varjag quit (Ping timeout: 276 seconds) 2017-08-28T18:17:48Z gendl: jackdaniel: I think to be certain, i'll have to figure out how to customize the cffi:*foreign-library-directories*... 2017-08-28T18:18:08Z gendl: both for initial quicklisp loading and for downstream startup of my pre-built bundle 2017-08-28T18:18:48Z gendl: does cffi try to do anything to automatically reload foreign libraries when a built image starts up? Or does that have to be done explicitly as part of the application's restart function? 2017-08-28T18:18:50Z varjagg quit (Read error: Connection reset by peer) 2017-08-28T18:19:38Z jackdaniel: if you have loaded library in bundle which you save-lisp-and-die, SBCL at least expects library to be at exactly the same location 2017-08-28T18:19:45Z jackdaniel: and it reloads library from that location 2017-08-28T18:19:49Z phoe: gendl: best to do it explicitly. 2017-08-28T18:19:56Z jackdaniel: if you have accessible library somewhere else, it will fail 2017-08-28T18:20:15Z jackdaniel: so having load-libraries and unload-libraries functions would be wise choice 2017-08-28T18:20:15Z phoe: close foreign libraries before killing SBCL, open them again as a part of reload hooks. 2017-08-28T18:20:44Z kolko_ quit (Ping timeout: 240 seconds) 2017-08-28T18:20:58Z gendl: phoe: Ok. In this case it will be either CCL or SBCL. 2017-08-28T18:22:40Z damke_ quit (Ping timeout: 240 seconds) 2017-08-28T18:22:41Z jackdaniel: important note: don't call close on *all* loaded libraries, but only on ones loaded by yourself (define-foreign-library macro is useful for that), because you may make some unpleasent suprise to other programmers if they use your library 2017-08-28T18:23:08Z gendl: Ok. 2017-08-28T18:23:21Z jackdaniel: someone may expect with reasonable certainity, that on his own host shared objects are in the same location, so he doesn't call close before saving the image 2017-08-28T18:26:14Z aeth quit (Ping timeout: 240 seconds) 2017-08-28T18:26:59Z Xach: Shinmera: http://report.quicklisp.org/2017-08-28/failure-report/north.html#north 2017-08-28T18:27:43Z Xach: north-drakma.asd has (asdf:defsystem north ...) 2017-08-28T18:27:46Z Xach: oops! 2017-08-28T18:28:02Z Shinmera: Xach: Whoops indeed. I'll fix it once I'm done with some other stuff. Thanks for the report! 2017-08-28T18:28:30Z aeth joined #lisp 2017-08-28T18:30:35Z AndroUser2 joined #lisp 2017-08-28T18:30:36Z Bock quit (Ping timeout: 248 seconds) 2017-08-28T18:32:23Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-28T18:32:25Z AndroUser2 quit (Read error: Connection reset by peer) 2017-08-28T18:33:00Z philippejara quit (Ping timeout: 264 seconds) 2017-08-28T18:33:09Z dlowe: My new CL project is trying to make a static site generator using stencl 2017-08-28T18:33:10Z Shinmera: Actually I think that's from a bunch of patches I never quite finalised and then recently accidentally pushed. Will have to look at this in detail tomorrow. 2017-08-28T18:33:41Z dlowe: which is considerably less... ambitious than my previous projects, but I'm working with what time I have 2017-08-28T18:34:15Z jackdaniel: re static site generators, coleslaw prove very useful to me 2017-08-28T18:34:22Z jackdaniel: did you consider contributing to it? 2017-08-28T18:34:26Z strelox quit (Ping timeout: 255 seconds) 2017-08-28T18:34:30Z dlowe: Does it use stencl? 2017-08-28T18:35:11Z vlatkoB_ quit (Remote host closed the connection) 2017-08-28T18:35:33Z jackdaniel: ah, you extend your project, misunderstood your intention 2017-08-28T18:35:46Z jackdaniel: I don't know what it use 2017-08-28T18:37:00Z jackdaniel: it seems it uses "closure-template" 2017-08-28T18:37:10Z dlowe: coleslaw looks mostly dead (or perfected, depending on your perspective) 2017-08-28T18:37:24Z whoman: i think i might like to get more comfortable with CL before i try to employ my ancient OOP design 'techniques' to CLOS ; i dont see a reason to use it just for organizing by tree hierarchy, if we are doing that with our program designs anyway. it seems too meta, but i am new and learning 2017-08-28T18:38:35Z random-nick joined #lisp 2017-08-28T18:39:41Z krasnal joined #lisp 2017-08-28T18:39:56Z varjag joined #lisp 2017-08-28T18:40:52Z dlowe: jackdaniel: I sympathize with your push to consolidate efforts on similar projcets, though. 2017-08-28T18:41:37Z jackdaniel: :) 2017-08-28T18:42:53Z Plazma left #lisp 2017-08-28T18:43:55Z knobo joined #lisp 2017-08-28T18:52:10Z skeuomorf joined #lisp 2017-08-28T19:00:17Z reinuseslisp joined #lisp 2017-08-28T19:00:40Z reinuseslisp left #lisp 2017-08-28T19:00:50Z reinuseslisp joined #lisp 2017-08-28T19:00:56Z reinuseslisp left #lisp 2017-08-28T19:00:59Z Kyo91_ quit (Ping timeout: 246 seconds) 2017-08-28T19:01:20Z Th30n joined #lisp 2017-08-28T19:02:15Z test1600 joined #lisp 2017-08-28T19:02:41Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-28T19:03:10Z DeadTrickster joined #lisp 2017-08-28T19:03:52Z Guest73037 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-28T19:13:57Z COURYHOUSE is now known as trinitr0n 2017-08-28T19:16:00Z dyelar quit (Ping timeout: 240 seconds) 2017-08-28T19:18:36Z Orion3k joined #lisp 2017-08-28T19:18:55Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2017-08-28T19:20:22Z yeticry_ joined #lisp 2017-08-28T19:21:40Z yeticry quit (Read error: Connection reset by peer) 2017-08-28T19:26:02Z Th30n quit (Ping timeout: 248 seconds) 2017-08-28T19:31:06Z random-nick quit (Quit: quit) 2017-08-28T19:31:19Z random-nick joined #lisp 2017-08-28T19:35:10Z dieggsy joined #lisp 2017-08-28T19:39:43Z test1600 quit (Quit: Leaving) 2017-08-28T19:43:13Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-28T19:43:46Z DeadTrickster joined #lisp 2017-08-28T19:44:37Z vtomole joined #lisp 2017-08-28T19:45:23Z vtomole: Hey I've just installed quicklisp on my server and when I try to use it I get "You need ASDF >= 3.1 to load this system correctly" I'm on SBCL 1.1.14.debian 2017-08-28T19:45:49Z jackdaniel: vtomole: your sbcl is pretty ancient 2017-08-28T19:46:04Z vtomole: I just installed it from apt-get 2017-08-28T19:46:12Z vtomole: It's been working for me on my other machines 2017-08-28T19:46:26Z jackdaniel: I'd recommend installing SBCL from sbcl.org (or building it yourself) 2017-08-28T19:47:08Z jackdaniel: if you insist in keeping it, then clone ASDF repository, pick release of your choice (3.1.8 wouldn't be the worst choice you could do) and issue make 2017-08-28T19:47:28Z jackdaniel: then put (load (compile-file "/path/to/asdf.lisp")) *before* loading quicklisp in your .sbclrc 2017-08-28T19:48:10Z jackdaniel: to pick ASDF release you need to `git chekckout' specific tag in the repository (releases are tagged) 2017-08-28T19:48:22Z jackdaniel: s/you could do/you could make/ 2017-08-28T19:48:26Z jackdaniel: vtomole: ↑ 2017-08-28T19:48:41Z vtomole: How would updating sbcl make sure I have the correct asdf version? 2017-08-28T19:48:58Z scymtym: updating sbcl will not result in a newer bundled asdf version in this case, so the first suggestion will not work 2017-08-28T19:48:59Z jackdaniel: upstream SBCL had ASDF 3.1.5 afair 2017-08-28T19:49:25Z Th30n joined #lisp 2017-08-28T19:49:59Z jackdaniel: and my repl confirms that (I have SBCL from source code) 2017-08-28T19:49:59Z jackdaniel: * asdf::*asdf-version* 2017-08-28T19:49:59Z jackdaniel: "3.1.5" 2017-08-28T19:50:54Z dyelar joined #lisp 2017-08-28T19:50:54Z scymtym: sorry for the misinformation, then. how did i miss that 2017-08-28T19:51:11Z vtomole: Mine is: "3.0.3" 2017-08-28T19:51:17Z vtomole: asdf version 2017-08-28T19:52:10Z jackdaniel: vtomole: yes, because you have old SBCL version. I've suggested two paths - one is to update your SBCL, another is to provide your ASDF version. 2017-08-28T19:52:23Z krasnal quit (Read error: Connection reset by peer) 2017-08-28T19:52:26Z vtomole: I'm updating sbcl now :) 2017-08-28T19:52:54Z jackdaniel: \o/ gl hf :) and good night o/ 2017-08-28T19:53:33Z vtomole: You too! 2017-08-28T19:54:46Z vtomole: Oops : install.sh: 13: .: Can't open output/prefix.def 2017-08-28T19:55:08Z vtomole: In sbcl-1.3.20 2017-08-28T19:56:28Z dyelar quit (Ping timeout: 248 seconds) 2017-08-28T19:57:25Z Kyo91_ joined #lisp 2017-08-28T19:57:43Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-28T19:58:27Z dyelar joined #lisp 2017-08-28T20:00:07Z kuwze: vtomole: you could try installing roswell by following the commands for building from source here: https://github.com/roswell/roswell/wiki/1.-Installation#building-from-source 2017-08-28T20:00:29Z kuwze: it will automatically install a new version of sbcl + asdf + quicklisp for you I believe 2017-08-28T20:01:44Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-28T20:02:59Z Blkt quit (Remote host closed the connection) 2017-08-28T20:03:00Z fe[nl]ix quit (Remote host closed the connection) 2017-08-28T20:03:11Z Blkt joined #lisp 2017-08-28T20:03:12Z fe[nl]ix joined #lisp 2017-08-28T20:03:12Z ChanServ has set mode +o fe[nl]ix 2017-08-28T20:03:23Z brendyn quit (Ping timeout: 240 seconds) 2017-08-28T20:03:23Z Blkt quit (Read error: Connection reset by peer) 2017-08-28T20:03:24Z fe[nl]ix quit (Read error: Connection reset by peer) 2017-08-28T20:04:05Z Blkt joined #lisp 2017-08-28T20:04:17Z Blkt quit (Remote host closed the connection) 2017-08-28T20:04:32Z Blkt joined #lisp 2017-08-28T20:04:33Z fe[nl]ix joined #lisp 2017-08-28T20:04:33Z ChanServ has set mode +o fe[nl]ix 2017-08-28T20:06:59Z eschatologist quit (Ping timeout: 240 seconds) 2017-08-28T20:08:30Z Kyo91_ joined #lisp 2017-08-28T20:13:53Z yaewa quit (Quit: Leaving...) 2017-08-28T20:17:44Z CrazyEddy quit (Ping timeout: 240 seconds) 2017-08-28T20:19:39Z dieggsy quit (Ping timeout: 240 seconds) 2017-08-28T20:20:29Z akr joined #lisp 2017-08-28T20:20:58Z vtomole quit (Ping timeout: 260 seconds) 2017-08-28T20:21:44Z akr: hi, how do I get emacs to show me line numbers in this backtrace? 2017-08-28T20:22:10Z akr uploaded an image: slime.png (133KB) 2017-08-28T20:22:33Z shka_ quit (Ping timeout: 246 seconds) 2017-08-28T20:23:38Z dieggsy joined #lisp 2017-08-28T20:23:41Z wooden: akr: if you put your cursor on one of those frames and press 'v' it'll open a buffer with the cursor on the line in question 2017-08-28T20:24:51Z akr: hmm, this is funny 2017-08-28T20:25:06Z akr: looks like some of those frames are on the localhost, whereas others are on a remote machine 2017-08-28T20:25:15Z akr: and it seems to be having trouble opening the remote ones 2017-08-28T20:26:04Z akr: I'll try running everything on remote 2017-08-28T20:26:04Z Murii|osx quit 2017-08-28T20:27:27Z akr: okay, it just points me to the function 2017-08-28T20:27:57Z akr: maybe because I'm using an old version of slime (2.9) 2017-08-28T20:32:55Z vtomole joined #lisp 2017-08-28T20:33:46Z milanj_ quit (Ping timeout: 255 seconds) 2017-08-28T20:38:38Z safe joined #lisp 2017-08-28T20:44:24Z neoncontrails quit (Remote host closed the connection) 2017-08-28T20:48:58Z vtomole quit (Ping timeout: 260 seconds) 2017-08-28T20:53:23Z Th30n quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-28T20:59:09Z milanj joined #lisp 2017-08-28T21:05:59Z neoncontrails joined #lisp 2017-08-28T21:16:42Z dieggsy quit (Remote host closed the connection) 2017-08-28T21:22:26Z varjag quit (Ping timeout: 260 seconds) 2017-08-28T21:25:11Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-28T21:25:37Z DeadTrickster joined #lisp 2017-08-28T21:28:47Z evilangel quit (Ping timeout: 252 seconds) 2017-08-28T21:40:46Z mejja joined #lisp 2017-08-28T21:44:13Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-28T21:46:23Z Bike quit (Ping timeout: 240 seconds) 2017-08-28T21:47:49Z vtomole joined #lisp 2017-08-28T21:48:40Z vtomole quit (Client Quit) 2017-08-28T21:48:55Z vtomole joined #lisp 2017-08-28T21:50:41Z angavrilov quit (Remote host closed the connection) 2017-08-28T21:58:59Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-28T22:00:30Z Karl_Dscc quit (Remote host closed the connection) 2017-08-28T22:05:46Z daemoz quit (Quit: WeeChat 1.9) 2017-08-28T22:12:11Z trinitr0n is now known as Not_EdSharpe 2017-08-28T22:12:20Z nowhere_man quit (Remote host closed the connection) 2017-08-28T22:12:44Z nowhere_man joined #lisp 2017-08-28T22:12:49Z Not_EdSharpe is now known as trinitr0n 2017-08-28T22:13:26Z Suzuran joined #lisp 2017-08-28T22:13:41Z mejja quit (Quit: \ No newline at end of file) 2017-08-28T22:16:43Z symm- quit (Ping timeout: 240 seconds) 2017-08-28T22:17:08Z macdavid313 joined #lisp 2017-08-28T22:18:03Z varjag joined #lisp 2017-08-28T22:19:37Z random-nick quit (Read error: Connection reset by peer) 2017-08-28T22:20:09Z macdavid313 quit (Client Quit) 2017-08-28T22:22:43Z varjag quit (Ping timeout: 240 seconds) 2017-08-28T22:32:51Z jasom: Xach: you around? I was hoping I could talk to you about quicklisp's use of md5... 2017-08-28T22:37:58Z astronavt joined #lisp 2017-08-28T22:52:26Z milanj quit (Ping timeout: 248 seconds) 2017-08-28T22:53:21Z wxie joined #lisp 2017-08-28T23:04:30Z papachan quit (Quit: Saliendo) 2017-08-28T23:06:43Z smazga quit (Quit: leaving) 2017-08-28T23:06:56Z wxie quit (Quit: Bye.) 2017-08-28T23:14:36Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-28T23:24:02Z neoncontrails quit (Remote host closed the connection) 2017-08-28T23:26:53Z neoncontrails joined #lisp 2017-08-28T23:36:31Z sz0 joined #lisp 2017-08-28T23:58:03Z Xach: jasom: it uses md5 only because i thought it would help me check against s3's etag 2017-08-28T23:58:15Z Xach: jasom: it does not use it for verification of anything else 2017-08-29T00:00:24Z Xach: it doesn't even check against the etag 2017-08-29T00:09:23Z pjb quit (Ping timeout: 252 seconds) 2017-08-29T00:12:11Z Bike joined #lisp 2017-08-29T00:13:13Z BitPuffin|osx quit (Ping timeout: 240 seconds) 2017-08-29T00:18:47Z PuercoPop: dlowe: if you want template re-use by injecting snippets into larger templates, it would be easy to make Coleslaw use stencl. If you want something like Django-inherentance for templates then no. 2017-08-29T00:27:02Z epony quit (Remote host closed the connection) 2017-08-29T00:33:37Z astronavt quit (Remote host closed the connection) 2017-08-29T00:38:44Z brendyn joined #lisp 2017-08-29T00:41:28Z astronavt joined #lisp 2017-08-29T00:41:53Z astronavt: here's a Lisp problem that i as a newbie feel like should be "easy" with Lisp and macros but i have no idea how to approach: generate a Lisp program with interpolated values and save it to a file 2017-08-29T00:42:06Z Kyo91_ joined #lisp 2017-08-29T00:42:41Z astronavt: e.g. (gen-program '(+ BASE_NUM 3) :BASE_NUM 42) -> '(+ 42 3) 2017-08-29T00:43:00Z astronavt: and then write the resulting '(+ 42 3) form to a file, e.g. output.lisp 2017-08-29T00:45:05Z Bike: well, depends on how exact you want to be 2017-08-29T00:45:25Z Bike: you could have (gen-program '(+ BASE_NUM 3) :BASE_NUM 42) => (let ((BASE_NUM 42)) (+ BASE_NUM 3)), that's pretty easy 2017-08-29T00:45:45Z al-damiri joined #lisp 2017-08-29T00:46:23Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-29T00:46:28Z Bike: if you actually want (+ 42 3) out, you could do (subst 42 'BASE_NUM expression), but that will mess up on some expressions 2017-08-29T00:46:37Z Bike: it's a pretty dumb interpolation, basically 2017-08-29T00:46:56Z astronavt: that's might be good enough for my case 2017-08-29T00:47:46Z astronavt: i'm looking for dumb interpolation. like what autoconf/automake does (although i admit that is mostly black magic to me) 2017-08-29T00:48:47Z astronavt: (i want to automatically generate my sbclrc, ccl-init, clinit.lisp files from a common template) 2017-08-29T00:49:24Z Bike: Usually when you do that sort of thing you use macro or symbol macro bindings. Like (+ BASE_NUM 3) -> (symbol-macrolet ((BASE_NUM 42)) (+ BASE_NUM 3)) 2017-08-29T00:49:32Z Bike: and then the actual compiled code is the same as what you'd get from (+ 42 3). 2017-08-29T00:49:48Z Bike: (it probably would be from the let too, but eh) 2017-08-29T00:50:09Z astronavt: i see that makes sense 2017-08-29T00:50:44Z astronavt: i can "compile" it without compiling to _machine code_ right? i.e. just expand all macros? 2017-08-29T00:51:05Z astronavt: or would it make more sense to have forms like (or #+SBCL (stuff) #+CCL (more-stuff) ...) everywhere? 2017-08-29T00:52:07Z Bike: that's more common, yeah. 2017-08-29T00:52:57Z Bike: so, for example you might have (defvar *argv* #+sbcl sb-posix:*argv* #+ccl (ccl::argv)) or whatever 2017-08-29T00:54:11Z astronavt: yup that's exactly what i'm going for here 2017-08-29T00:54:45Z astronavt: i guess it just feels ugly to me having that same "switch pile" all over the place 2017-08-29T00:55:37Z astronavt: my temptation is to extract all that switching logic into some kind of config mapping, and just substitute in the right values/forms where needed 2017-08-29T00:56:06Z astronavt: almost like the "strategy pattern" from OO programming 2017-08-29T00:56:43Z Bike: well, that's implicitly what macros or #+ would do. 2017-08-29T00:57:00Z Bike: i mean when you do #+sbcl that means the next form is skipped on other implementations. there's no performance impact or anything. 2017-08-29T00:59:40Z astronavt: true. i'm thinking more in terms of not having to write #+sbcl #+ccl #+allegro etc repeatedly 2017-08-29T01:00:42Z astronavt: not sure if thats just being lazy 2017-08-29T01:01:05Z astronavt: from a "good software engineering" perspective 2017-08-29T01:01:55Z Bike: you could have a shared file loaded by all your rcs 2017-08-29T01:04:39Z foom2 joined #lisp 2017-08-29T01:05:11Z astronavt: or better yet just symlink them all together 2017-08-29T01:05:30Z astronavt: ln -s ~/dotfiles/lisp/init.lisp ~/.sbclrc 2017-08-29T01:05:52Z foom quit (Read error: Connection reset by peer) 2017-08-29T01:07:11Z pjb joined #lisp 2017-08-29T01:09:01Z astronavt: Bike thanks for the tips 2017-08-29T01:09:27Z Bike: no problem. 2017-08-29T01:09:32Z d4ryus1 joined #lisp 2017-08-29T01:12:38Z d4ryus quit (Ping timeout: 252 seconds) 2017-08-29T01:15:46Z rngoodn joined #lisp 2017-08-29T01:16:49Z holycow joined #lisp 2017-08-29T01:24:11Z slyrus quit (Ping timeout: 252 seconds) 2017-08-29T01:25:15Z Kaisyu joined #lisp 2017-08-29T01:25:16Z peterhil quit (Read error: Connection reset by peer) 2017-08-29T01:26:06Z jamtho_ joined #lisp 2017-08-29T01:26:45Z peterhil joined #lisp 2017-08-29T01:27:37Z pjb quit (Ping timeout: 255 seconds) 2017-08-29T01:30:18Z jamtho_ quit (Ping timeout: 248 seconds) 2017-08-29T01:36:41Z peterhil quit (Read error: Connection reset by peer) 2017-08-29T01:37:29Z jameser joined #lisp 2017-08-29T01:40:22Z test1600 joined #lisp 2017-08-29T01:41:56Z quazimodo joined #lisp 2017-08-29T02:00:59Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-29T02:01:58Z gabrielm14 joined #lisp 2017-08-29T02:02:08Z gabrielm14: hell 2017-08-29T02:02:09Z gabrielm14: o 2017-08-29T02:03:03Z gabrielm14: quienhabña español 2017-08-29T02:03:09Z gabrielm14: quien habla español 2017-08-29T02:06:26Z gabrielm14 left #lisp 2017-08-29T02:12:43Z vtomole quit (Ping timeout: 260 seconds) 2017-08-29T02:14:27Z marvin3 joined #lisp 2017-08-29T02:15:19Z marvin2 quit (Ping timeout: 240 seconds) 2017-08-29T02:34:03Z phinxy joined #lisp 2017-08-29T02:42:35Z Kyo91_ joined #lisp 2017-08-29T02:44:05Z astronavt quit (Remote host closed the connection) 2017-08-29T02:47:06Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-29T02:47:34Z CrazyEddy joined #lisp 2017-08-29T02:51:15Z dieggsy joined #lisp 2017-08-29T03:06:13Z vtomole joined #lisp 2017-08-29T03:11:39Z schoppenhauer quit (Ping timeout: 248 seconds) 2017-08-29T03:13:19Z schoppenhauer joined #lisp 2017-08-29T03:13:23Z CrLF0710 joined #lisp 2017-08-29T03:14:36Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-29T03:18:18Z holycow quit (Quit: Lost terminal) 2017-08-29T03:18:42Z dddddd quit (Remote host closed the connection) 2017-08-29T03:26:50Z pjb joined #lisp 2017-08-29T03:28:29Z phinxy quit (Read error: Connection reset by peer) 2017-08-29T03:28:30Z neoncontrails quit (Remote host closed the connection) 2017-08-29T03:28:41Z phinxy joined #lisp 2017-08-29T03:32:52Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-29T03:42:09Z eazar001 joined #lisp 2017-08-29T03:42:18Z peterhil joined #lisp 2017-08-29T03:57:21Z damke_ joined #lisp 2017-08-29T03:58:13Z chens joined #lisp 2017-08-29T04:01:13Z damke joined #lisp 2017-08-29T04:01:40Z neoncontrails joined #lisp 2017-08-29T04:03:19Z damke_ quit (Ping timeout: 240 seconds) 2017-08-29T04:03:41Z Bike quit (Ping timeout: 252 seconds) 2017-08-29T04:10:19Z CrLF0710 quit (Ping timeout: 248 seconds) 2017-08-29T04:10:40Z shka_ joined #lisp 2017-08-29T04:24:35Z pjb quit (Ping timeout: 252 seconds) 2017-08-29T04:33:05Z skeuomorf quit (Remote host closed the connection) 2017-08-29T04:34:40Z terpri quit (Read error: Connection reset by peer) 2017-08-29T04:36:01Z myrkraverk joined #lisp 2017-08-29T04:36:58Z mhd joined #lisp 2017-08-29T04:43:04Z Kyo91_ joined #lisp 2017-08-29T04:47:39Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-29T04:48:05Z dieggsy quit (Ping timeout: 260 seconds) 2017-08-29T04:53:50Z cromachina quit (Read error: Connection reset by peer) 2017-08-29T04:54:16Z cromachina joined #lisp 2017-08-29T04:55:32Z dustyweb quit (Remote host closed the connection) 2017-08-29T04:55:57Z dustyweb joined #lisp 2017-08-29T04:57:24Z cross quit (Ping timeout: 246 seconds) 2017-08-29T04:57:52Z cross joined #lisp 2017-08-29T05:03:03Z vtomole quit (Ping timeout: 260 seconds) 2017-08-29T05:05:13Z bitch quit (Ping timeout: 240 seconds) 2017-08-29T05:05:24Z mishoo_ joined #lisp 2017-08-29T05:05:41Z safe quit (Read error: Connection reset by peer) 2017-08-29T05:10:52Z bitch joined #lisp 2017-08-29T05:10:55Z beach: Good morning everyone! 2017-08-29T05:11:28Z dec0n joined #lisp 2017-08-29T05:11:33Z Bock joined #lisp 2017-08-29T05:13:37Z phinxy quit (Read error: Connection reset by peer) 2017-08-29T05:16:30Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-29T05:19:12Z scymtym quit (Ping timeout: 264 seconds) 2017-08-29T05:19:34Z vlatkoB joined #lisp 2017-08-29T05:19:44Z damke_ joined #lisp 2017-08-29T05:20:59Z damke quit (Ping timeout: 240 seconds) 2017-08-29T05:21:55Z pjb joined #lisp 2017-08-29T05:32:51Z oleo quit (Quit: irc client terminated!) 2017-08-29T05:34:59Z flamebeard joined #lisp 2017-08-29T05:35:57Z sarkic quit (Quit: leaving) 2017-08-29T05:36:09Z slyrus joined #lisp 2017-08-29T05:37:07Z CrLF0710 joined #lisp 2017-08-29T05:37:34Z sarkic joined #lisp 2017-08-29T05:37:57Z Karl_Dscc joined #lisp 2017-08-29T05:39:44Z slyrus: evening 2017-08-29T05:39:45Z Colleen: slyrus: jackdaniel said 27 minutes, 31 seconds ago: fix-warnings looks good, I wonder only why 2e795ca06b19503be538882d7ac237957c926fd4 doesn't remove pathname computation if pathname is ignored anyway 2017-08-29T05:40:27Z beach: Hello slyrus. 2017-08-29T05:40:46Z slyrus: how's it going beach? 2017-08-29T05:41:01Z beach: slyrus: Fine, thanks. And you? 2017-08-29T05:41:29Z slyrus: not bad. long day, but finally home. 2017-08-29T05:41:44Z beach: Have you been traveling? 2017-08-29T05:42:17Z slyrus: just the delay commute and a trip to the east bay. So, not really, yet still a few hours in the car today :( 2017-08-29T05:43:14Z pjb quit (Ping timeout: 252 seconds) 2017-08-29T05:47:50Z cromachina quit (Read error: Connection reset by peer) 2017-08-29T05:48:16Z cromachina joined #lisp 2017-08-29T06:00:33Z beach: I need to figure out a way to test the code for converting concrete syntax trees to abstract syntax trees. 2017-08-29T06:01:24Z beach: I can test it at the REPL by using a SICL first-class global environment, but I need something simpler. 2017-08-29T06:12:05Z Karl_Dscc quit (Remote host closed the connection) 2017-08-29T06:12:20Z Murii joined #lisp 2017-08-29T06:18:22Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-29T06:34:56Z symm- joined #lisp 2017-08-29T06:38:24Z evilangel joined #lisp 2017-08-29T06:39:07Z evilangel quit (Client Quit) 2017-08-29T06:43:32Z Kyo91_ joined #lisp 2017-08-29T06:43:50Z jasom: Xach: in ql2nix I had been using the md5 for generating the nix expression, but they've now banned md5 from usage in nixpkgs. Is there any reason it couldn't switch to a sha-2 or sha-3 (I don't know anything about s3)? 2017-08-29T06:44:18Z chens quit (Remote host closed the connection) 2017-08-29T06:47:52Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-29T06:50:23Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-08-29T06:52:31Z mishoo joined #lisp 2017-08-29T06:54:03Z scymtym joined #lisp 2017-08-29T06:55:06Z neoncontrails quit (Ping timeout: 276 seconds) 2017-08-29T06:56:39Z froggey quit (Ping timeout: 240 seconds) 2017-08-29T06:58:18Z knobo: slyrus: did you fix your crash yet? 2017-08-29T06:58:47Z froggey joined #lisp 2017-08-29T06:59:27Z nirved joined #lisp 2017-08-29T06:59:34Z slyrus: yes, just now. so I had two copies of the mito source tree in my image and one had the fixed code I needed, one didn't. 2017-08-29T06:59:55Z slyrus: apparently the error handling causes a crash, rather than just throwing a proper error 2017-08-29T07:00:08Z slyrus: but at least my particular problem seems to have gone away 2017-08-29T07:00:59Z damke joined #lisp 2017-08-29T07:01:35Z knobo: ok. I had a similar problem before. My crash went away when I entered the backdoor and cleard the djula template cache. 2017-08-29T07:02:31Z knobo: I have stoped using djula. 2017-08-29T07:02:39Z damke_ quit (Ping timeout: 240 seconds) 2017-08-29T07:02:53Z knobo: I had too many issues with it. 2017-08-29T07:03:19Z slyrus: this one doesn't seem to be a djula problem, but i see what you mean. Still, it's pretty handy. 2017-08-29T07:04:59Z neoncontrails joined #lisp 2017-08-29T07:05:30Z knobo: Yes. One of my problems is that it is not made for the way I'm working right now. I'm serving multiple web domains from the same lisp. 2017-08-29T07:05:45Z knobo: With their own djula templates and directory structures. 2017-08-29T07:06:25Z knobo: So having one djula template variable does not work very well. 2017-08-29T07:07:18Z slyrus: I decided to punt on multiple web domains from an image and to use a container per domain 2017-08-29T07:09:49Z moei joined #lisp 2017-08-29T07:10:01Z knobo: I can see why. 2017-08-29T07:11:19Z shka_ quit (Ping timeout: 240 seconds) 2017-08-29T07:11:58Z knobo: I started out trying to put serveral services in one container. Then it got too complicated, and I had to split them up. Now I'm moving in the direction of putting them back in one container. 2017-08-29T07:12:38Z knobo: One problem was getting it to run stable enough. So when one service crashed, it crashed all of the domains. 2017-08-29T07:12:52Z angavrilov joined #lisp 2017-08-29T07:13:12Z knobo: Now it looks like I have gotten it stable enough to run all in one. 2017-08-29T07:14:39Z mc40 joined #lisp 2017-08-29T07:18:45Z mc40 quit (Client Quit) 2017-08-29T07:19:28Z hrair joined #lisp 2017-08-29T07:21:27Z eh643027 joined #lisp 2017-08-29T07:22:00Z hrair quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-29T07:22:01Z eh643027 left #lisp 2017-08-29T07:22:53Z hsu joined #lisp 2017-08-29T07:26:57Z neoncontrails quit (Ping timeout: 276 seconds) 2017-08-29T07:28:20Z d4ryus1 is now known as d4ryus 2017-08-29T07:32:12Z panji joined #lisp 2017-08-29T07:35:06Z defaultxr quit (Ping timeout: 240 seconds) 2017-08-29T07:37:43Z symm- quit (Ping timeout: 240 seconds) 2017-08-29T07:39:48Z BitPuffin|osx joined #lisp 2017-08-29T07:40:12Z neoncontrails joined #lisp 2017-08-29T07:49:59Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2017-08-29T07:49:59Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2017-08-29T07:52:57Z nowhere_man quit (Remote host closed the connection) 2017-08-29T07:53:20Z nowhere_man joined #lisp 2017-08-29T07:54:24Z clintm joined #lisp 2017-08-29T07:58:35Z antoszka quit (Quit: WeeChat 1.9) 2017-08-29T07:58:35Z mrSpec quit (Quit: ZNC - http://znc.in) 2017-08-29T07:58:48Z neoncontrails quit (Ping timeout: 276 seconds) 2017-08-29T08:00:51Z hhdave joined #lisp 2017-08-29T08:02:23Z knobo quit (Ping timeout: 252 seconds) 2017-08-29T08:02:59Z neoncontrails joined #lisp 2017-08-29T08:08:26Z neoncontrails quit (Ping timeout: 252 seconds) 2017-08-29T08:12:43Z nowhere_man quit (Ping timeout: 240 seconds) 2017-08-29T08:13:00Z nowhere_man joined #lisp 2017-08-29T08:17:06Z hhdave quit (Ping timeout: 255 seconds) 2017-08-29T08:18:09Z neoncontrails joined #lisp 2017-08-29T08:18:18Z knobo joined #lisp 2017-08-29T08:23:42Z antoszka joined #lisp 2017-08-29T08:26:21Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-29T08:27:02Z fnodeuser joined #lisp 2017-08-29T08:29:20Z fnodeuser left #lisp 2017-08-29T08:30:38Z pjb joined #lisp 2017-08-29T08:35:35Z ChanServ has set mode +o p_l 2017-08-29T08:36:04Z ChanServ has set mode -o p_l 2017-08-29T08:36:38Z jameser quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-29T08:38:57Z jameser joined #lisp 2017-08-29T08:39:03Z neoncontrails joined #lisp 2017-08-29T08:39:10Z nirved quit (Quit: Leaving) 2017-08-29T08:39:38Z test1600 quit (Quit: Leaving) 2017-08-29T08:42:44Z hajovonta joined #lisp 2017-08-29T08:42:54Z hajovonta: hi friends 2017-08-29T08:44:15Z random-nick joined #lisp 2017-08-29T08:45:33Z clintm quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-29T08:47:32Z phoe: hey hajovonta 2017-08-29T08:50:17Z amerlyq quit (Ping timeout: 248 seconds) 2017-08-29T08:50:22Z akr left #lisp 2017-08-29T08:50:25Z hajovonta: are there any python code generators for common lisp? 2017-08-29T08:51:24Z beach: Why would anyone want such a thing. "Here, take this, it will slow your code down by a factor 50!" 2017-08-29T08:52:01Z hajovonta: :) I have an existing code base in python and contributions will be most likely in python. 2017-08-29T08:52:03Z shka quit (Quit: Konversation terminated!) 2017-08-29T08:52:13Z jackdaniel: hajovonta: there is python implementation in Common Lisp and python bindings 2017-08-29T08:52:17Z shka joined #lisp 2017-08-29T08:52:21Z jackdaniel: check cl-python and burgled-batteries projects 2017-08-29T08:52:29Z jackdaniel: none of these generates python though 2017-08-29T08:52:50Z hajovonta: they enable CL to run python code, I guess ? 2017-08-29T08:52:52Z tonton quit (Ping timeout: 240 seconds) 2017-08-29T08:53:10Z neoncontrails quit (Remote host closed the connection) 2017-08-29T08:53:22Z jackdaniel: yes 2017-08-29T08:53:52Z neoncontrails joined #lisp 2017-08-29T08:53:57Z amerlyq joined #lisp 2017-08-29T08:53:59Z jackdaniel: hajovonta: check this: https://talks.kepibu.org/2012/pyowa-bb/talk.html 2017-08-29T08:54:03Z hajovonta: thanks 2017-08-29T08:54:41Z clintm` joined #lisp 2017-08-29T08:54:51Z clintm` is now known as clintm 2017-08-29T08:54:58Z clintm quit (Changing host) 2017-08-29T08:54:58Z clintm joined #lisp 2017-08-29T08:58:10Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-29T08:58:49Z some-user joined #lisp 2017-08-29T08:58:51Z some-user: hello 2017-08-29T08:59:11Z hajovonta: hi 2017-08-29T08:59:22Z beach: Hello some-user. 2017-08-29T09:00:43Z some-user: trying to inspect function in slime with sbcl but gettin sb-kernel:%simple-fun-self is undefined 2017-08-29T09:01:03Z beach: Yeah, I have seen that too. 2017-08-29T09:01:12Z some-user: how can i fix it or does sbcl support slime function inspection? 2017-08-29T09:01:58Z phoe: some-user: what's your SBCL and Slime version? 2017-08-29T09:02:13Z terminal joined #lisp 2017-08-29T09:02:23Z some-user sbcl --version 2017-08-29T09:02:39Z some-user: ugh, sorry - SBCL 1.3.20 2017-08-29T09:03:33Z hhdave joined #lisp 2017-08-29T09:03:33Z some-user: slime-20170820.1946 2017-08-29T09:03:51Z some-user: phoe: ^ 2017-08-29T09:04:38Z beach: some-user: Maybe ask in #sbcl. 2017-08-29T09:05:02Z phoe: ^ 2017-08-29T09:06:14Z some-user: okay 2017-08-29T09:08:26Z some-user: if anyone interested - people on #sbcl told that my slime version is too old. :) 2017-08-29T09:09:16Z jackdaniel: well, when you use bleeding edge you bleed :p you need to take upstream repository of slime, I doubt it got propagated to quicklisp 2017-08-29T09:09:19Z jackdaniel: yet 2017-08-29T09:09:21Z beach: 9 days old. Hmm. 2017-08-29T09:09:41Z jackdaniel: beach: commit bumping slime to 2.20 dates 22 hours 2017-08-29T09:09:59Z jackdaniel: s/hours/hours ago/ 2017-08-29T09:12:05Z neoncontrails joined #lisp 2017-08-29T09:13:53Z beach quit (Ping timeout: 252 seconds) 2017-08-29T09:15:20Z tonton joined #lisp 2017-08-29T09:16:23Z some-user quit (Remote host closed the connection) 2017-08-29T09:17:32Z terminal quit (Quit: Page closed) 2017-08-29T09:17:56Z panji quit (Quit: Leaving) 2017-08-29T09:18:54Z beach joined #lisp 2017-08-29T09:31:23Z lnostdal quit (Ping timeout: 248 seconds) 2017-08-29T09:41:32Z random-nick: I use slime from MELPA, should I be using the quicklisp one? 2017-08-29T09:42:16Z jackdaniel: yes, that's the wisest choice 2017-08-29T09:42:25Z CrLF0710 quit (Read error: Connection reset by peer) 2017-08-29T09:42:26Z mfiano: I would use what you prefer. I use Sly instead of SLIME (from MELPA) 2017-08-29T09:42:37Z m00natic joined #lisp 2017-08-29T09:42:39Z CrLF0710 joined #lisp 2017-08-29T09:42:40Z Kyo91_ joined #lisp 2017-08-29T09:46:17Z Shinmera: MELPA is fine. Just update regularly. 2017-08-29T09:46:48Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-29T09:50:25Z random-nick quit (Read error: Connection reset by peer) 2017-08-29T09:54:21Z random-nick joined #lisp 2017-08-29T09:57:28Z fmeyer joined #lisp 2017-08-29T10:02:23Z lnostdal joined #lisp 2017-08-29T10:04:34Z macdavid313 joined #lisp 2017-08-29T10:11:04Z clog quit (Ping timeout: 252 seconds) 2017-08-29T10:14:55Z lnostdal quit (Ping timeout: 252 seconds) 2017-08-29T10:18:48Z attila_lendvai joined #lisp 2017-08-29T10:18:48Z attila_lendvai quit (Changing host) 2017-08-29T10:18:48Z attila_lendvai joined #lisp 2017-08-29T10:21:33Z klltkr joined #lisp 2017-08-29T10:22:32Z klltkr quit (Client Quit) 2017-08-29T10:24:21Z CrLF0710 quit (Quit: Mutter: www.mutterirc.com) 2017-08-29T10:31:49Z raynold quit (Quit: Connection closed for inactivity) 2017-08-29T10:35:51Z macdavid313 quit 2017-08-29T10:42:59Z jameser quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-29T10:43:02Z Bike joined #lisp 2017-08-29T10:43:04Z Bike quit (Remote host closed the connection) 2017-08-29T10:43:47Z Bike joined #lisp 2017-08-29T10:45:31Z lnostdal joined #lisp 2017-08-29T10:45:48Z dddddd joined #lisp 2017-08-29T10:45:54Z Xach: Can you downgrade with melpa? 2017-08-29T10:46:05Z Xach: like, "my lisp needs slime from 2016" or something? 2017-08-29T10:47:04Z clog joined #lisp 2017-08-29T10:49:35Z Shinmera: You can keep old versions when you update with Emacs. 2017-08-29T10:49:53Z Shinmera: Not sure if you can request a specific version. 2017-08-29T10:52:35Z dim: el-get allows checking out a sha1 commit from git if needed 2017-08-29T10:53:10Z dim: MELPA is great tho, I wish someone would add to it the few missing features from el-get so that I may switch someday ;-) 2017-08-29T10:53:18Z knicklux joined #lisp 2017-08-29T10:58:55Z attila_lendvai quit (Ping timeout: 252 seconds) 2017-08-29T11:09:16Z CrLF0710 joined #lisp 2017-08-29T11:11:43Z CrLF0710 quit (Client Quit) 2017-08-29T11:27:47Z fmeyer left #lisp 2017-08-29T11:31:02Z wxie joined #lisp 2017-08-29T11:34:42Z clintm quit (Remote host closed the connection) 2017-08-29T11:37:17Z clintm joined #lisp 2017-08-29T11:37:58Z Mon_Ouie quit (Ping timeout: 252 seconds) 2017-08-29T11:40:25Z wxie quit (Ping timeout: 248 seconds) 2017-08-29T11:43:20Z Mon_Ouie joined #lisp 2017-08-29T11:54:03Z kurolox joined #lisp 2017-08-29T11:54:14Z kurolox: hello, it's there any alternative to clisp for running common lisp? 2017-08-29T11:55:29Z random-nick: there are many implementations of common lisp 2017-08-29T11:55:48Z pjb: kurolox: have a look at: http://www.cliki.net/Common%20Lisp%20implementation 2017-08-29T11:57:10Z pjb: kurolox: To get help choosing a CL implementation, connect to telnet://hubble.informatimago.com:8101 2017-08-29T12:00:36Z knicklux quit (Ping timeout: 276 seconds) 2017-08-29T12:07:45Z knicklux joined #lisp 2017-08-29T12:09:14Z damke_ joined #lisp 2017-08-29T12:11:19Z damke quit (Ping timeout: 240 seconds) 2017-08-29T12:20:00Z phoe: pjb: geez, why do you have a telnet application for selecting CL implementations 2017-08-29T12:20:02Z manumanumanu: pjb: cool telnet thingy. i got the expected results 2017-08-29T12:20:12Z phoe: you guys at #lisp surprise me every day 2017-08-29T12:20:13Z Bike quit (Ping timeout: 240 seconds) 2017-08-29T12:20:45Z manumanumanu: phoe: browsers are still way behind the telnet experience 2017-08-29T12:26:22Z Murii quit (Ping timeout: 252 seconds) 2017-08-29T12:30:31Z scymtym quit (Remote host closed the connection) 2017-08-29T12:30:39Z scymtym joined #lisp 2017-08-29T12:33:19Z kurolox: pjb that telnet application is nice and all, but the criteria I'm looking for is just a CL implementation that can launch a lisp file from CLI easily like clisp, but that's not clisp. 2017-08-29T12:33:50Z pjb: kurolox: I would advise ccl. 2017-08-29T12:34:52Z epony joined #lisp 2017-08-29T12:34:53Z pjb: phoe: you can get the sources and run it locally in your REPL, but for that, you would have to choose an implementation before being able to run the program to choose an implementation. 2017-08-29T12:35:43Z kurolox: pjb ideally one that's in the debian repository? If not I guess that I can install CCL manually. 2017-08-29T12:36:06Z kurolox: neither clisp or ccl are in the debian repository. 2017-08-29T12:37:09Z mazoe joined #lisp 2017-08-29T12:39:14Z dim: sbcl is, and it's a solid choice 2017-08-29T12:39:39Z dim: I'd like ccl to get to debian too, we need a maintainer! 2017-08-29T12:40:19Z kurolox: Unfortunately I'm not used to debian. I'm more of an arch user, but I'm using debian on the server where I need to set up lisp. 2017-08-29T12:40:31Z kurolox: Otherwise I'd volunteer myself to help with it. 2017-08-29T12:42:41Z kurolox: Also, I'm not really sure how to run a file with sbcl. Using sbcl --load /path/to/file seems to just put me in the interpreter. 2017-08-29T12:44:13Z pjb: kurolox: it's easy to install ccl. What I do: mkdir /usr/local/src/ ; cd /usr/local/src/ ; svn checkout http://svn.clozure.com/publicsvn/openmcl/release/1.11/${SYSTEM}/ccl ccl-1.11 ; ln -s ccl-1.11 ccl ; ln -s ../src/ccl/scripts/ccl64 /usr/local/bin/ccl 2017-08-29T12:44:38Z pjb: kurolox: well that would depend on the file. 2017-08-29T12:45:12Z kurolox: well, that's kinda the problem 2017-08-29T12:45:27Z kurolox: I need a consistent way to do it with all different kind of files 2017-08-29T12:45:27Z pjb: If the file starts with: #!/usr/local/bin/sbcl --script # then there's nothing to do. Just chmod 755 your-lisp-script and run it. 2017-08-29T12:45:52Z pjb: What kinds of files do you have? 2017-08-29T12:45:55Z kurolox: essentially, I need this. http://www.thegeekstuff.com/2009/12/lisp-hello-world-example-how-to-write-and-execute-lisp-program-on-linux-os/ 2017-08-29T12:46:02Z JuanDaugherty joined #lisp 2017-08-29T12:46:18Z kurolox: Everything. I'm making a bot that runs code, so the input will be different each time and I have no way to know how it will be. 2017-08-29T12:46:33Z pjb: Well, no, you don't need this. 2017-08-29T12:47:06Z pjb: If you're running random code, you have to wrap it in much more. 2017-08-29T12:47:25Z pjb: you may have a look at clall. 2017-08-29T12:48:31Z pjb: http://git.informatimago.com/viewgit/index.php?a=viewblob&p=public/bin&h=5e43fee1e6982d33b2f28bba256bc1a3aeaf7496&hb=c6f3bbb7b93483506487cf17a438a18a58e2a82f&f=clall 2017-08-29T12:48:42Z mhd joined #lisp 2017-08-29T12:49:57Z pjb: Also, you may have to run it in a chroot, you may have to setup a reference environment (perhaps containing quicklisp and a few libraries), etc. 2017-08-29T12:51:08Z pjb: You should probably study very well how it works, what kind of delivery we can have with CL, how each implementation must be invoked, deal with the rc files, quicklisp, the environment in general, etc. You can also have a look at cl-launch. 2017-08-29T12:55:36Z kurolox: Sure thing. Thanks for the explanation. I'll do my research then. 2017-08-29T13:00:55Z damke joined #lisp 2017-08-29T13:03:18Z damke_ quit (Ping timeout: 240 seconds) 2017-08-29T13:06:43Z milanj joined #lisp 2017-08-29T13:10:08Z sellout- quit (Quit: Leaving.) 2017-08-29T13:14:10Z al-damiri joined #lisp 2017-08-29T13:26:04Z varjag joined #lisp 2017-08-29T13:27:46Z mson joined #lisp 2017-08-29T13:35:35Z wxie joined #lisp 2017-08-29T13:37:47Z LiamH joined #lisp 2017-08-29T13:39:17Z QualityAddict quit (Remote host closed the connection) 2017-08-29T13:39:23Z scymtym_ joined #lisp 2017-08-29T13:39:25Z scymtym quit (Ping timeout: 240 seconds) 2017-08-29T13:44:09Z Guest76076 quit (Ping timeout: 248 seconds) 2017-08-29T13:45:04Z knicklux quit (Ping timeout: 255 seconds) 2017-08-29T13:47:15Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-29T13:47:36Z JuanDaugherty joined #lisp 2017-08-29T13:49:57Z Bike joined #lisp 2017-08-29T13:50:01Z itruslove quit (Ping timeout: 255 seconds) 2017-08-29T13:50:14Z yaewa joined #lisp 2017-08-29T13:51:28Z moei quit (Ping timeout: 240 seconds) 2017-08-29T13:52:44Z itruslove joined #lisp 2017-08-29T13:54:43Z astronavt joined #lisp 2017-08-29T13:54:55Z milanj_ joined #lisp 2017-08-29T13:56:34Z milanj quit (Ping timeout: 252 seconds) 2017-08-29T13:58:09Z wxie quit (Quit: Bye.) 2017-08-29T13:58:45Z wxie joined #lisp 2017-08-29T14:00:16Z hajovonta quit (Quit: hajovonta) 2017-08-29T14:02:28Z dec0n quit (Read error: Connection reset by peer) 2017-08-29T14:04:33Z wxie quit (Remote host closed the connection) 2017-08-29T14:05:29Z strelox joined #lisp 2017-08-29T14:09:56Z fsmunoz joined #lisp 2017-08-29T14:10:25Z damke_ joined #lisp 2017-08-29T14:10:43Z astronavt: is it possible to use a non-ASCII character with (set-macro-character) ? like unicode U+2712 ("BLACK NIB") 2017-08-29T14:10:54Z Bike: sure. 2017-08-29T14:11:03Z astronavt: great. how? ;) 2017-08-29T14:11:09Z astronavt: i have cl-unicode installed if that helps 2017-08-29T14:11:11Z Bike: same way as any other character? 2017-08-29T14:11:21Z astronavt: (set-macro-character #\✒︎ #'my-macro-fun) 2017-08-29T14:11:38Z Bike: yeah. 2017-08-29T14:11:47Z astronavt: CLISP was not happy 2017-08-29T14:11:55Z Bike: does clisp even support unicode? 2017-08-29T14:11:58Z damke quit (Ping timeout: 240 seconds) 2017-08-29T14:12:09Z astronavt: sbcl doesnt like it either 2017-08-29T14:12:13Z astronavt: unrecognized character name: "✒︎" 2017-08-29T14:12:38Z jackdaniel: Bike: afaik yes 2017-08-29T14:12:41Z Bike: try #\u+2712 or #\BLACK_NIB 2017-08-29T14:13:35Z hajovonta joined #lisp 2017-08-29T14:13:41Z astronavt: there is no character with name "u+2712︎" 2017-08-29T14:13:54Z Bike: i don't have clisp, but this works on sbcl 2017-08-29T14:13:57Z astronavt: hmm ok 2017-08-29T14:14:00Z antoszka: astronavt: CL-USER(1): #\u+2712 2017-08-29T14:14:03Z antoszka: #\BLACK_NIB 2017-08-29T14:14:18Z antoszka: It definitely works on sbcl. 2017-08-29T14:14:21Z jackdaniel: http://www.gnu.org/software/clisp/impnotes/encoding.html 2017-08-29T14:14:21Z astronavt: oh weird ok 2017-08-29T14:14:42Z pjb: (length "✒︎") #| --> 2 |# 2017-08-29T14:14:55Z pjb: (map 'list 'char-name "✒︎") #| --> ("U+2712" "U+FE0E") |# 2017-08-29T14:15:14Z astronavt: thanks. works in sbcl! ...am i using an ancient version of clisp? Welcome to GNU CLISP 2.49 (2010-07-07) 2017-08-29T14:15:25Z antoszka: astronavt: why clisp? 2017-08-29T14:15:39Z astronavt: was using it for readline support, but ive since found rlwrap 2017-08-29T14:15:39Z dlowe: that looks to be seven years old 2017-08-29T14:15:45Z jackdaniel: astronavt: your build may lack unicode, it is configurable at compile time 2017-08-29T14:15:54Z antoszka: astronavt: use LINEDIT, it's a native readline-compatible repl for sbcl 2017-08-29T14:15:57Z astronavt: hm ok. seems the Mac Homebrew version is way out of date 2017-08-29T14:16:03Z dlowe: astronavt: the real lisp experience is to be found with editor integration :) 2017-08-29T14:16:11Z ryanwatkins quit (Ping timeout: 248 seconds) 2017-08-29T14:16:16Z antoszka: astronavt: also, use SLIME, playing around with a bare REPL won't get you far, as dlowe says :) 2017-08-29T14:16:18Z astronavt: yeah i have linedit too, just need to symlink up my init script 2017-08-29T14:16:31Z antoszka: Cool. 2017-08-29T14:16:37Z pjb: astronavt: it's the current version. 2017-08-29T14:17:09Z pjb: astronavt: it means that your clisp programs kept working for 7 years. You cannot say that much for sbcl programs… 2017-08-29T14:17:34Z dlowe: you can just not upgrade sbcl, too 2017-08-29T14:17:37Z astronavt: i do have neovim+slimv set up (tried emacs+slime and gave up after about 2 hours). just too many keyboard shortcuts to learn for plunking around on 15 minute breaks 2017-08-29T14:18:23Z pjb: Anyways, the problem here is that you're using a unicode code-point combination, but CL implementations don't do the right thing with respect to unicode: they map code-points to characters, instead of mapping characters to characters… 2017-08-29T14:18:39Z dlowe: fair enough. I did fine with rlwrap until I started doing it for my job. 2017-08-29T14:18:47Z antoszka: astronavt: Tried neovim+vlime? 2017-08-29T14:18:57Z pjb: If you use just #\✒ instead of #\✒︎ it'll work everywhere (even in clisp). 2017-08-29T14:19:18Z antoszka: astronavt: Though seriously, if you're a vim person, just use spacemacs (full vim emulation) with the common-lisp layer, you'll get full SLIME power and most of your vim habits (and more). 2017-08-29T14:19:25Z astronavt: https://github.com/l04m33/vlime nope havent tried it. will do 2017-08-29T14:19:42Z antoszka: astronavt: Go for spacemacs. 2017-08-29T14:20:02Z dlowe: I found evil-type systems for emacs to be just dissonant enough with real vim to be even worse than learning emacs 2017-08-29T14:20:22Z antoszka: I find it more than good enough. 2017-08-29T14:20:31Z antoszka: YMMV 2017-08-29T14:21:11Z Kyo91_ joined #lisp 2017-08-29T14:21:16Z Jesin quit (Quit: Leaving) 2017-08-29T14:21:27Z astronavt: pbj what is the difference between those 2017-08-29T14:21:31Z astronavt: pjb 2017-08-29T14:22:46Z sellout- joined #lisp 2017-08-29T14:22:47Z varjag quit (Ping timeout: 240 seconds) 2017-08-29T14:23:24Z Murii|osx joined #lisp 2017-08-29T14:24:50Z Jesin joined #lisp 2017-08-29T14:27:35Z hajovonta quit (Quit: hajovonta) 2017-08-29T14:29:37Z Khisanth quit (Ping timeout: 246 seconds) 2017-08-29T14:29:40Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-29T14:30:49Z DeadTrickster joined #lisp 2017-08-29T14:32:34Z Kevslinger joined #lisp 2017-08-29T14:32:58Z phoe: on an unrelated note, I just realized that pbj = peanut butter & jelly 2017-08-29T14:34:18Z antoszka: There's no pbj here. 2017-08-29T14:36:31Z phoe: I know, but astronavt made a typo. 2017-08-29T14:36:36Z dlowe: peanut jelly and butter? 2017-08-29T14:36:57Z mishoo quit (Ping timeout: 248 seconds) 2017-08-29T14:37:05Z astronavt: stuff of nightmares 2017-08-29T14:39:56Z Lowl3v3l joined #lisp 2017-08-29T14:41:35Z joast quit (Quit: Leaving.) 2017-08-29T14:43:26Z Khisanth joined #lisp 2017-08-29T14:45:27Z dieggsy joined #lisp 2017-08-29T14:46:33Z PinealGlandOptic joined #lisp 2017-08-29T14:47:37Z dieggsy quit (Client Quit) 2017-08-29T14:49:52Z milanj__ joined #lisp 2017-08-29T14:50:42Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-29T14:51:23Z DeadTrickster joined #lisp 2017-08-29T14:52:05Z flamebeard quit (Quit: Leaving) 2017-08-29T14:52:12Z milanj_ quit (Ping timeout: 276 seconds) 2017-08-29T14:56:22Z Murii|osx quit (Remote host closed the connection) 2017-08-29T14:56:58Z pjb: (list (length "✒︎") (length "✒")) #| --> (2 1) |# 2017-08-29T14:58:59Z Murii|osx joined #lisp 2017-08-29T14:59:28Z rippa joined #lisp 2017-08-29T15:00:36Z astronavt: ugh. unicode. 2017-08-29T15:00:42Z astronavt: are those different codepoints? 2017-08-29T15:01:26Z pjb: (mapcar (lambda (s) (map 'list 'char-code s)) '( "✒︎" "✒")) #| --> ((10002 65038) (10002)) |# 2017-08-29T15:02:33Z astronavt: heh thank you 2017-08-29T15:02:41Z papachan joined #lisp 2017-08-29T15:02:48Z Bike: the other character is a variation selector, i guess 2017-08-29T15:03:17Z astronavt: whats the inverse of `char-code`? 2017-08-29T15:03:27Z pjb: code-char 2017-08-29T15:03:29Z pjb: clhs char-code 2017-08-29T15:03:29Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_char_c.htm 2017-08-29T15:04:41Z c__ joined #lisp 2017-08-29T15:04:48Z astronavt: ugh of course. 2017-08-29T15:04:53Z dieggsy joined #lisp 2017-08-29T15:05:50Z [jlk] quit (Ping timeout: 260 seconds) 2017-08-29T15:08:44Z sellout- quit (Read error: Connection reset by peer) 2017-08-29T15:09:16Z learning_ joined #lisp 2017-08-29T15:17:41Z sellout- joined #lisp 2017-08-29T15:18:17Z eazar001 quit (Ping timeout: 246 seconds) 2017-08-29T15:18:33Z dyelar quit (Ping timeout: 248 seconds) 2017-08-29T15:19:27Z astronavt: how many people here use CL at work vs for a hobby? if you're using at work, what are you using it for? 2017-08-29T15:19:44Z pjb: for programming. 2017-08-29T15:19:52Z beach: Heh! 2017-08-29T15:20:06Z pjb: astronavt: https://franz.com/success/ 2017-08-29T15:20:38Z dlowe: I don't use it for work anymore, but when I did: http://google.com/flights/ 2017-08-29T15:21:38Z astronavt: dlowe: oh cool. were you at ITA pre-Google? 2017-08-29T15:21:44Z dlowe: yep. 2017-08-29T15:22:06Z stee_3_ joined #lisp 2017-08-29T15:22:19Z astronavt: sweet. i actually was in business travel for a while. used ITA Matrix and Google Flights quite a lot 2017-08-29T15:22:53Z dlowe: I originally learned CL for a job working on a cognitive model in a psychology dept, where CL is alive and kicking in its niche 2017-08-29T15:23:46Z dlowe: they have to learn CL to understand the papers, and they aren't programmers, so they aren't going to learn another language, so their papers come out in CL, and it's this nice self-reinforcing loop 2017-08-29T15:23:46Z JuanDaugherty: one of em 2017-08-29T15:23:54Z dlowe: yeah, one of them 2017-08-29T15:23:55Z mishoo joined #lisp 2017-08-29T15:24:13Z dyelar joined #lisp 2017-08-29T15:25:59Z stee_3 quit (Ping timeout: 246 seconds) 2017-08-29T15:26:21Z smazga joined #lisp 2017-08-29T15:28:38Z FreeBirdLjj joined #lisp 2017-08-29T15:31:55Z learning_ quit 2017-08-29T15:32:24Z symm- joined #lisp 2017-08-29T15:32:32Z nweston joined #lisp 2017-08-29T15:32:37Z neoncontrails quit (Ping timeout: 255 seconds) 2017-08-29T15:34:49Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-29T15:36:59Z neoncontrails joined #lisp 2017-08-29T15:39:22Z knusbaum joined #lisp 2017-08-29T15:43:06Z mrSpec joined #lisp 2017-08-29T15:43:12Z mrSpec quit (Changing host) 2017-08-29T15:43:12Z mrSpec joined #lisp 2017-08-29T15:45:13Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-29T15:45:42Z milanj__ quit (Quit: Leaving) 2017-08-29T15:45:57Z milanj joined #lisp 2017-08-29T15:56:35Z Xach: Shinmera: any luck with north updates? 2017-08-29T15:56:36Z aindilis quit (Read error: Connection reset by peer) 2017-08-29T15:56:45Z Xach: oh good 2017-08-29T15:56:50Z Xach: looks good to me from here 2017-08-29T15:58:10Z Shinmera: Xach: Great! 2017-08-29T16:00:04Z sellout- quit (Quit: Leaving.) 2017-08-29T16:02:54Z slyrus: I use it work for munging data, drawing pretty pictures, and working with small molecules, and DNA and protein sequences 2017-08-29T16:03:17Z slyrus: if you're still talking about this astronavt 2017-08-29T16:03:39Z astronavt: always interested 2017-08-29T16:07:09Z Lowl3v3l quit (Remote host closed the connection) 2017-08-29T16:11:40Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-29T16:12:07Z DeadTrickster joined #lisp 2017-08-29T16:12:31Z beach: astronavt: I use Common Lisp as a vehicle for my research about language implementation. 2017-08-29T16:13:08Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-29T16:15:40Z beach: Common Lisp having many interesting features (multiple dispatch, nested functions, closures, type declarations, etc) makes it very interesting to work with. 2017-08-29T16:15:55Z sellout- joined #lisp 2017-08-29T16:16:10Z chocolait joined #lisp 2017-08-29T16:17:20Z oleo joined #lisp 2017-08-29T16:17:22Z neoncontrails joined #lisp 2017-08-29T16:20:07Z searcher quit (Ping timeout: 252 seconds) 2017-08-29T16:22:04Z searcher joined #lisp 2017-08-29T16:22:30Z Murii|osx quit 2017-08-29T16:23:38Z Murii|osx joined #lisp 2017-08-29T16:24:30Z neoncontrails quit (Ping timeout: 276 seconds) 2017-08-29T16:25:03Z terpri joined #lisp 2017-08-29T16:27:24Z dyelar quit (Quit: Leaving.) 2017-08-29T16:30:01Z BitPuffin|osx quit (Remote host closed the connection) 2017-08-29T16:32:30Z dyelar joined #lisp 2017-08-29T16:35:15Z thawes joined #lisp 2017-08-29T16:38:34Z BitPuffin|osx joined #lisp 2017-08-29T16:40:18Z hhdave quit (Ping timeout: 240 seconds) 2017-08-29T16:41:00Z bgg_ joined #lisp 2017-08-29T16:41:07Z bgg_ quit (Remote host closed the connection) 2017-08-29T16:45:12Z shka_ joined #lisp 2017-08-29T16:47:25Z m00natic quit (Remote host closed the connection) 2017-08-29T16:50:51Z Murii|osx quit (Quit: My MacBook Air has gone to sleep. ZZZzzz…) 2017-08-29T16:56:53Z epony quit (Quit: QUIT) 2017-08-29T16:59:21Z dyelar quit (Ping timeout: 248 seconds) 2017-08-29T16:59:50Z yaewa quit (Quit: Leaving...) 2017-08-29T17:00:10Z defaultxr joined #lisp 2017-08-29T17:00:49Z moei joined #lisp 2017-08-29T17:01:13Z dyelar joined #lisp 2017-08-29T17:01:47Z damke joined #lisp 2017-08-29T17:02:38Z epony joined #lisp 2017-08-29T17:03:18Z damke_ quit (Ping timeout: 240 seconds) 2017-08-29T17:07:55Z raynold joined #lisp 2017-08-29T17:09:34Z Karl_Dscc joined #lisp 2017-08-29T17:13:04Z jlk- joined #lisp 2017-08-29T17:14:45Z zulu_inuoe quit (Read error: Connection reset by peer) 2017-08-29T17:16:45Z neoncontrails joined #lisp 2017-08-29T17:17:24Z emaczen joined #lisp 2017-08-29T17:17:31Z mson quit (Quit: Connection closed for inactivity) 2017-08-29T17:18:00Z emaczen: Xach: Is there anything strange that hunchentoot will do with documents it serves, especially with regards to HTML doctypes? 2017-08-29T17:23:46Z yrk quit (Read error: Connection reset by peer) 2017-08-29T17:24:28Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-29T17:26:00Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-29T17:27:47Z moei quit (Quit: Leaving...) 2017-08-29T17:28:12Z vlatkoB_ joined #lisp 2017-08-29T17:31:58Z vlatkoB quit (Ping timeout: 240 seconds) 2017-08-29T17:32:44Z sz0 joined #lisp 2017-08-29T17:33:38Z Posterdati: hi 2017-08-29T17:33:47Z phoe: Hey Posterdati 2017-08-29T17:34:44Z FreeBirdLjj quit (Remote host closed the connection) 2017-08-29T17:37:12Z Posterdati: is it possible to use cl-async to monitor the presence of a new file in a dir? 2017-08-29T17:38:05Z Posterdati: I mean I need to program a file converter in a owncloud directory 2017-08-29T17:38:39Z Posterdati: when the user copies a file into this directory the program takes the file and convert it... 2017-08-29T17:39:38Z damke quit (Ping timeout: 240 seconds) 2017-08-29T17:41:30Z brendyn quit (Ping timeout: 248 seconds) 2017-08-29T17:42:20Z malice joined #lisp 2017-08-29T17:42:57Z malice: How should I set my project up to avoid "constant is being redefined" errors? 2017-08-29T17:43:40Z malice: Right now, I have a file which contains a constant definition. While quickloading the project, I get an error about redefining the constant variable(from its value to its value). 2017-08-29T17:43:45Z malice: I'm using SBCL, btw. 2017-08-29T17:44:09Z beach: malice: Use DEFCONSTANT only for numbers and characters. 2017-08-29T17:44:19Z beach: malice: Use DEFPARAMETER for the others. 2017-08-29T17:44:37Z zulu_inuoe joined #lisp 2017-08-29T17:44:55Z Bike: or if it's actually okay to not redefine it, there's alexandria:define-constant 2017-08-29T17:50:44Z malice: beach: well, that shows that I don't know something about CL. 2017-08-29T17:51:01Z malice: First of all, does the problem occur because the file is first compiled, and then loaded into REPL? 2017-08-29T17:51:08Z malice: and the constant is assigned two times? 2017-08-29T17:53:03Z beach: Sounds right. 2017-08-29T17:53:25Z beach: But it only happens when the two values are not EQL. 2017-08-29T17:53:41Z beach: Typically when you use something other than numbers or characters. 2017-08-29T17:53:49Z beach: Like strings, lists, etc. 2017-08-29T17:54:14Z phoe: ^ 2017-08-29T17:54:25Z phoe: and the reader has a very bad/nice habit of always creating new obects when it reads them 2017-08-29T17:54:35Z phoe: so when you read "asdfsafdasf" twice it will be two different objects 2017-08-29T17:54:57Z phoe: unless then the implementation does some weird constant folding, but the most popular ones AFAIK don't do it 2017-08-29T17:55:16Z kuwze quit (Quit: Page closed) 2017-08-29T17:55:45Z kuwze joined #lisp 2017-08-29T17:57:01Z malice: I see. Thanks. 2017-08-29T18:05:18Z krasnal joined #lisp 2017-08-29T18:06:22Z dieggsy quit (Remote host closed the connection) 2017-08-29T18:07:33Z Tristam quit (Read error: Connection timed out) 2017-08-29T18:10:48Z antoszka: Posterdati: you could launch a thread that watches a directory directly, or use a wrapper around a library like FAM/gamin to do it more lightweight. 2017-08-29T18:10:49Z dieggsy joined #lisp 2017-08-29T18:11:04Z antoszka: Posterdati: I've no idea if FFI bindings for any of those exist, though. 2017-08-29T18:13:10Z EvilAngel joined #lisp 2017-08-29T18:13:37Z dieggsy quit (Client Quit) 2017-08-29T18:14:34Z pjb: Posterdati: what about inotify? 2017-08-29T18:14:40Z pjb: Aren't you on linux? 2017-08-29T18:15:22Z skeuomorf joined #lisp 2017-08-29T18:20:40Z EvilAngel quit (Quit: I need a shrubbery!) 2017-08-29T18:21:25Z antoszka: Yeah, inotify is yet another one. 2017-08-29T18:23:12Z Baggers joined #lisp 2017-08-29T18:30:58Z Bock quit (Ping timeout: 240 seconds) 2017-08-29T18:31:18Z Denommus joined #lisp 2017-08-29T18:35:08Z knobo quit (Ping timeout: 276 seconds) 2017-08-29T18:37:18Z vydd joined #lisp 2017-08-29T18:38:31Z Posterdati: pjb: yes 2017-08-29T18:38:46Z nullniverse joined #lisp 2017-08-29T18:40:33Z Murii|osx joined #lisp 2017-08-29T18:42:54Z vlatkoB_ quit (Remote host closed the connection) 2017-08-29T18:47:36Z dieggsy joined #lisp 2017-08-29T18:52:36Z milanj quit (Quit: This computer has gone to sleep) 2017-08-29T18:52:38Z random-nick quit (Remote host closed the connection) 2017-08-29T18:54:09Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-29T18:54:42Z DeadTrickster joined #lisp 2017-08-29T18:59:34Z djinni` quit (Quit: Leaving) 2017-08-29T18:59:50Z astronavt quit (Quit: Leaving...) 2017-08-29T19:03:10Z narendraj9 joined #lisp 2017-08-29T19:03:18Z djinni` joined #lisp 2017-08-29T19:04:57Z knobo joined #lisp 2017-08-29T19:10:21Z dieggsy quit (Ping timeout: 240 seconds) 2017-08-29T19:12:45Z Posterdati: pjb: done! Thanks 2017-08-29T19:14:20Z Ven joined #lisp 2017-08-29T19:14:44Z Ven is now known as Guest18365 2017-08-29T19:20:06Z Guest18365 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-29T19:20:42Z shka_ quit (Ping timeout: 240 seconds) 2017-08-29T19:21:38Z Oddity quit (Ping timeout: 240 seconds) 2017-08-29T19:22:12Z random-nick joined #lisp 2017-08-29T19:24:22Z dyelar quit (Ping timeout: 252 seconds) 2017-08-29T19:25:48Z neoncontrails joined #lisp 2017-08-29T19:25:59Z searcher quit (Ping timeout: 260 seconds) 2017-08-29T19:26:41Z dyelar joined #lisp 2017-08-29T19:29:03Z Oddity joined #lisp 2017-08-29T19:29:12Z scymtym_ quit (Ping timeout: 246 seconds) 2017-08-29T19:29:25Z searcher joined #lisp 2017-08-29T19:31:12Z fsmunoz quit (Ping timeout: 255 seconds) 2017-08-29T19:31:39Z shka_ joined #lisp 2017-08-29T19:31:41Z neoncontrails quit (Ping timeout: 276 seconds) 2017-08-29T19:33:58Z sz0 quit (Quit: Connection closed for inactivity) 2017-08-29T19:34:47Z narendraj9 quit (Remote host closed the connection) 2017-08-29T19:40:00Z dieggsy joined #lisp 2017-08-29T19:41:28Z kolko joined #lisp 2017-08-29T19:44:23Z mishoo quit (Ping timeout: 264 seconds) 2017-08-29T19:47:34Z Baggers quit (Ping timeout: 260 seconds) 2017-08-29T19:54:32Z thawes quit (Remote host closed the connection) 2017-08-29T19:55:04Z Murii|osx quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-29T20:06:03Z eschatologist joined #lisp 2017-08-29T20:06:33Z stux|RC-only quit (Quit: Aloha!) 2017-08-29T20:06:38Z al-damiri joined #lisp 2017-08-29T20:06:56Z aindilis joined #lisp 2017-08-29T20:07:03Z mishoo joined #lisp 2017-08-29T20:07:44Z stux|RC-only joined #lisp 2017-08-29T20:08:29Z malice quit (Remote host closed the connection) 2017-08-29T20:13:22Z phinxy joined #lisp 2017-08-29T20:14:34Z Kyo91_ quit (Ping timeout: 248 seconds) 2017-08-29T20:17:15Z milanj joined #lisp 2017-08-29T20:17:21Z random-nick quit (Read error: Connection reset by peer) 2017-08-29T20:18:04Z scymtym joined #lisp 2017-08-29T20:18:21Z random-nick joined #lisp 2017-08-29T20:20:14Z nullniverse quit (Quit: Leaving) 2017-08-29T20:22:33Z smazga quit (Quit: leaving) 2017-08-29T20:24:07Z pierpa joined #lisp 2017-08-29T20:31:21Z sword quit (Read error: Connection reset by peer) 2017-08-29T20:32:18Z sword joined #lisp 2017-08-29T20:34:18Z Kyo91_ joined #lisp 2017-08-29T20:34:39Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-29T20:35:47Z DeadTrickster joined #lisp 2017-08-29T20:36:50Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2017-08-29T20:38:05Z neoncontrails joined #lisp 2017-08-29T20:39:31Z vaporatorius quit (Remote host closed the connection) 2017-08-29T20:42:32Z strelox quit (Remote host closed the connection) 2017-08-29T20:49:45Z shka_ quit (Ping timeout: 248 seconds) 2017-08-29T20:52:04Z varjag joined #lisp 2017-08-29T20:53:06Z neoncontrails quit (Ping timeout: 255 seconds) 2017-08-29T20:55:42Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-29T20:56:14Z DeadTrickster joined #lisp 2017-08-29T20:58:17Z skeuomorf quit (Remote host closed the connection) 2017-08-29T21:01:31Z Karl_Dscc quit (Remote host closed the connection) 2017-08-29T21:08:44Z emacsomancer joined #lisp 2017-08-29T21:10:20Z neoncontrails joined #lisp 2017-08-29T21:21:42Z Bike quit (Ping timeout: 240 seconds) 2017-08-29T21:22:28Z JuanDaugherty joined #lisp 2017-08-29T21:31:45Z angavrilov quit (Remote host closed the connection) 2017-08-29T21:35:50Z LiamH quit (Ping timeout: 240 seconds) 2017-08-29T21:38:09Z mson joined #lisp 2017-08-29T21:45:08Z hhdave_ joined #lisp 2017-08-29T21:46:13Z LiamH joined #lisp 2017-08-29T21:48:18Z FreeBirdLjj joined #lisp 2017-08-29T21:48:50Z dieggsy quit (Ping timeout: 276 seconds) 2017-08-29T21:51:46Z symm- quit (Ping timeout: 252 seconds) 2017-08-29T21:52:29Z FreeBirdLjj quit (Ping timeout: 255 seconds) 2017-08-29T21:53:26Z mishoo quit (Ping timeout: 246 seconds) 2017-08-29T21:56:12Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-29T21:56:36Z DeadTrickster joined #lisp 2017-08-29T22:02:21Z Denommus quit (Quit: going home) 2017-08-29T22:04:25Z Kyo91_ quit (Ping timeout: 252 seconds) 2017-08-29T22:04:26Z kurolox quit (Ping timeout: 248 seconds) 2017-08-29T22:04:36Z milanj quit (Quit: This computer has gone to sleep) 2017-08-29T22:05:38Z chocolait quit (Ping timeout: 240 seconds) 2017-08-29T22:06:02Z knusbaum quit (Quit: Leaving.) 2017-08-29T22:08:45Z Bike joined #lisp 2017-08-29T22:09:58Z varjag quit (Read error: Connection reset by peer) 2017-08-29T22:12:07Z attila_lendvai joined #lisp 2017-08-29T22:12:07Z attila_lendvai quit (Changing host) 2017-08-29T22:12:07Z attila_lendvai joined #lisp 2017-08-29T22:17:27Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2017-08-29T22:17:27Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2017-08-29T22:18:19Z mhd joined #lisp 2017-08-29T22:21:13Z mhd quit (Ping timeout: 180 seconds) 2017-08-29T22:23:05Z mhd quit (Ping timeout: 248 seconds) 2017-08-29T22:33:50Z random-nick quit (Remote host closed the connection) 2017-08-29T22:36:28Z Kyo91_ joined #lisp 2017-08-29T22:39:19Z klltkr joined #lisp 2017-08-29T22:41:23Z Kyo91_ quit (Ping timeout: 264 seconds) 2017-08-29T22:43:36Z hhdave_ quit (Quit: hhdave_) 2017-08-29T22:45:23Z moei joined #lisp 2017-08-29T22:52:23Z whoman: l15p is l05e 2017-08-29T22:57:41Z dan: I'm still new to lisp and trying to figure out how to use the gsll library for numerical computing. Where i'm running into problems is figuring out how to use the reader macros things like #2m(...) I think it might be a namespace issue, since by loading the project with quicklisp I have to prefix all the functions with "gsll:foo". I'm not sure how to access the reader macros inside the package 2017-08-29T22:58:23Z LiamH quit (Ping timeout: 276 seconds) 2017-08-29T23:01:53Z wxie joined #lisp 2017-08-29T23:02:02Z milanj joined #lisp 2017-08-29T23:04:29Z Kyo91_ joined #lisp 2017-08-29T23:04:37Z pjb: dan: usually, the library will provide a macro to install its reader macros. 2017-08-29T23:04:43Z pjb: dan: so read the documentation. 2017-08-29T23:05:23Z pjb: dan: there's also the case where they use the named readtable library, which makes it easier to combine reader macros from different libraries. In that case, read also the documentation of the named readtable library. 2017-08-29T23:08:08Z dan: Ok, i'll try to dig a bit deeper. The documentation did mention they use a package called antik for arrays, and the documentation for that points to a non-existing url. I'll try to dig deeper into that to find what I need 2017-08-29T23:08:10Z dan: thanks for the tips 2017-08-29T23:11:03Z dan: Ah, just found a bug report saying antik doesn't provide a method for exporting macros or named readtables. Maybe I'll see if I can find a different package to use 2017-08-29T23:11:05Z Bike: http://quickdocs.org/antik/api see set-reader 2017-08-29T23:11:41Z Suzuran42 joined #lisp 2017-08-29T23:12:31Z dan: Bike: thank you! 2017-08-29T23:13:50Z milanj quit (Quit: Leaving) 2017-08-29T23:14:59Z Suzuran quit (Ping timeout: 246 seconds) 2017-08-29T23:14:59Z Suzuran42 is now known as Suzuran 2017-08-29T23:15:39Z brendyn joined #lisp 2017-08-29T23:16:18Z sjl quit (Ping timeout: 240 seconds) 2017-08-29T23:30:05Z pjb: dan: probably you'll want to use the macro set-reader-in-file rather. 2017-08-29T23:39:08Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-08-29T23:41:59Z nowhere_man quit (Remote host closed the connection) 2017-08-29T23:42:24Z nowhere_man joined #lisp 2017-08-29T23:42:27Z emaczen quit (Read error: Connection reset by peer) 2017-08-29T23:45:36Z safe joined #lisp 2017-08-29T23:45:45Z vydd quit (Ping timeout: 246 seconds) 2017-08-29T23:48:59Z FreeBirdLjj joined #lisp 2017-08-29T23:51:01Z wxie quit (Quit: Bye.) 2017-08-29T23:53:12Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-29T23:55:33Z emaczen joined #lisp 2017-08-29T23:57:56Z mson quit (Quit: Connection closed for inactivity) 2017-08-30T00:01:26Z danlentz quit (Ping timeout: 276 seconds) 2017-08-30T00:02:31Z attila_lendvai quit (Quit: Leaving.) 2017-08-30T00:03:24Z danlentz joined #lisp 2017-08-30T00:05:28Z aindilis quit (Ping timeout: 248 seconds) 2017-08-30T00:09:44Z AntiSpamMeta quit (Read error: Connection reset by peer) 2017-08-30T00:09:57Z AntiSpamMeta joined #lisp 2017-08-30T00:23:56Z aeth_ joined #lisp 2017-08-30T00:25:27Z aeth quit (Disconnected by services) 2017-08-30T00:27:03Z vtomole joined #lisp 2017-08-30T00:28:17Z aeth_ is now known as aeth 2017-08-30T00:42:17Z eazar001 joined #lisp 2017-08-30T00:45:01Z pjb quit (Ping timeout: 252 seconds) 2017-08-30T00:47:21Z ted_ joined #lisp 2017-08-30T00:47:43Z phinxy quit (Read error: Connection reset by peer) 2017-08-30T00:49:23Z FreeBirdLjj joined #lisp 2017-08-30T00:51:49Z ted_ left #lisp 2017-08-30T00:52:50Z brendyn quit (Ping timeout: 240 seconds) 2017-08-30T00:53:49Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2017-08-30T00:56:46Z clintm quit (Read error: Connection reset by peer) 2017-08-30T00:57:09Z clintm joined #lisp 2017-08-30T01:00:21Z marvin3 quit 2017-08-30T01:01:16Z dieggsy joined #lisp 2017-08-30T01:01:46Z vtomole quit (Ping timeout: 260 seconds) 2017-08-30T01:02:18Z pjb joined #lisp 2017-08-30T01:07:01Z pjb quit (Ping timeout: 252 seconds) 2017-08-30T01:08:41Z d4ryus1 joined #lisp 2017-08-30T01:09:50Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-30T01:11:38Z quazimodo joined #lisp 2017-08-30T01:11:42Z d4ryus quit (Ping timeout: 240 seconds) 2017-08-30T01:38:09Z Kyo91_ quit (Ping timeout: 260 seconds) 2017-08-30T01:38:49Z jameser joined #lisp 2017-08-30T01:50:14Z wharrgarbl joined #lisp 2017-08-30T01:54:14Z Kyo91_ joined #lisp 2017-08-30T01:58:38Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-30T02:00:32Z papachan quit (Ping timeout: 246 seconds) 2017-08-30T02:11:40Z Kaisyu joined #lisp 2017-08-30T02:13:46Z papachan joined #lisp 2017-08-30T02:16:08Z mazoe quit (Ping timeout: 248 seconds) 2017-08-30T02:20:19Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-30T02:27:37Z brendyn joined #lisp 2017-08-30T02:35:13Z pierpa quit (Quit: Page closed) 2017-08-30T02:40:11Z dddddd quit (Remote host closed the connection) 2017-08-30T02:46:28Z skeuomorf joined #lisp 2017-08-30T02:47:00Z skeuomorf quit (Remote host closed the connection) 2017-08-30T02:48:45Z Dotcra joined #lisp 2017-08-30T02:49:57Z FreeBirdLjj joined #lisp 2017-08-30T02:54:12Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2017-08-30T02:58:20Z chocolait joined #lisp 2017-08-30T02:58:35Z shdeng joined #lisp 2017-08-30T02:59:12Z shdeng quit (Remote host closed the connection) 2017-08-30T03:03:03Z shiranuidong quit (Ping timeout: 252 seconds) 2017-08-30T03:03:56Z shiranuidong joined #lisp 2017-08-30T03:09:56Z schoppenhauer quit (Ping timeout: 276 seconds) 2017-08-30T03:11:32Z schoppenhauer joined #lisp 2017-08-30T03:13:06Z dieggsy quit (Remote host closed the connection) 2017-08-30T03:14:00Z dieggsy joined #lisp 2017-08-30T03:14:56Z skeuomorf joined #lisp 2017-08-30T03:15:59Z nydel joined #lisp 2017-08-30T03:20:42Z sjl joined #lisp 2017-08-30T03:22:05Z sellout-1 joined #lisp 2017-08-30T03:22:45Z sellout- quit (Ping timeout: 240 seconds) 2017-08-30T03:32:45Z dieggsy quit (Ping timeout: 252 seconds) 2017-08-30T03:36:35Z symm- joined #lisp 2017-08-30T03:39:52Z Bike quit (Ping timeout: 248 seconds) 2017-08-30T03:42:27Z xisp7 joined #lisp 2017-08-30T03:50:21Z FreeBirdLjj joined #lisp 2017-08-30T03:50:45Z jack_rabbit joined #lisp 2017-08-30T03:53:46Z xpo is now known as xpoqp 2017-08-30T03:53:50Z xpoqp quit (Changing host) 2017-08-30T03:53:51Z xpoqp joined #lisp 2017-08-30T03:54:48Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-30T03:56:33Z karswell_ quit (Remote host closed the connection) 2017-08-30T04:01:45Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-30T04:05:44Z symm- quit (Ping timeout: 260 seconds) 2017-08-30T04:07:07Z beach: Good morning everyone! 2017-08-30T04:09:44Z Dotcra quit (Remote host closed the connection) 2017-08-30T04:09:58Z loke: Hello beach 2017-08-30T04:11:27Z JuanDaugherty: yello beach 2017-08-30T04:16:34Z borei joined #lisp 2017-08-30T04:17:24Z borei quit (Client Quit) 2017-08-30T04:18:06Z emaczen quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-30T04:31:01Z shka_ joined #lisp 2017-08-30T04:31:17Z ryanwatkins joined #lisp 2017-08-30T04:37:28Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-30T04:37:30Z safe quit (Read error: Connection reset by peer) 2017-08-30T04:38:09Z DeadTrickster joined #lisp 2017-08-30T04:40:16Z neoncontrails quit (Remote host closed the connection) 2017-08-30T04:41:25Z neoncontrails joined #lisp 2017-08-30T04:41:31Z grublet quit (Quit: Leaving) 2017-08-30T04:41:54Z grublet joined #lisp 2017-08-30T04:42:47Z neoncont_ joined #lisp 2017-08-30T04:44:27Z sellout- joined #lisp 2017-08-30T04:45:07Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-30T04:45:21Z sellout-1 quit (Ping timeout: 252 seconds) 2017-08-30T04:45:57Z neoncontrails quit (Ping timeout: 255 seconds) 2017-08-30T04:50:58Z sellout- quit (Ping timeout: 240 seconds) 2017-08-30T04:56:06Z sellout- joined #lisp 2017-08-30T04:58:48Z damke joined #lisp 2017-08-30T05:04:11Z symm- joined #lisp 2017-08-30T05:06:18Z skeuomorf quit (Ping timeout: 248 seconds) 2017-08-30T05:08:11Z dec0n joined #lisp 2017-08-30T05:11:51Z cromachina quit (Read error: Connection reset by peer) 2017-08-30T05:11:56Z grublet quit (Read error: Connection reset by peer) 2017-08-30T05:12:16Z cromachina joined #lisp 2017-08-30T05:12:32Z grublet joined #lisp 2017-08-30T05:13:56Z Bock joined #lisp 2017-08-30T05:14:18Z emacsomancer quit (Remote host closed the connection) 2017-08-30T05:14:32Z emacsoma` joined #lisp 2017-08-30T05:14:36Z zooey quit (Ping timeout: 268 seconds) 2017-08-30T05:16:31Z malcom2073 quit (Read error: Connection reset by peer) 2017-08-30T05:16:38Z zooey joined #lisp 2017-08-30T05:17:39Z malcom2073 joined #lisp 2017-08-30T05:21:58Z oleo quit (Quit: irc client terminated!) 2017-08-30T05:32:05Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-30T05:36:12Z nowhere_man quit (Ping timeout: 240 seconds) 2017-08-30T05:43:36Z flamebeard joined #lisp 2017-08-30T05:48:23Z Karl_Dscc joined #lisp 2017-08-30T05:51:13Z FreeBirdLjj joined #lisp 2017-08-30T05:54:42Z scymtym quit (Ping timeout: 240 seconds) 2017-08-30T05:55:20Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2017-08-30T06:08:57Z neoncont_ quit (Remote host closed the connection) 2017-08-30T06:09:40Z neoncontrails joined #lisp 2017-08-30T06:10:04Z phinxy joined #lisp 2017-08-30T06:13:29Z dan quit (Ping timeout: 260 seconds) 2017-08-30T06:14:37Z phinxy quit (Client Quit) 2017-08-30T06:17:34Z symm- quit (Ping timeout: 260 seconds) 2017-08-30T06:18:01Z Karl_Dscc quit (Remote host closed the connection) 2017-08-30T06:23:10Z mishoo joined #lisp 2017-08-30T06:29:27Z eazar001 quit (Quit: WeeChat 1.9) 2017-08-30T06:30:35Z beach: How can I instruct ASDF to bind *READTABLE* to a value of my choice during the compilation of some selected components? 2017-08-30T06:30:50Z ryanwatkins quit (Ping timeout: 240 seconds) 2017-08-30T06:31:29Z dan joined #lisp 2017-08-30T06:32:13Z jackdaniel: beach: http://www.cliki.net/asdf-flv for general use 2017-08-30T06:32:28Z jackdaniel: named-readtables for something akin in-package (in-readtable it's called) 2017-08-30T06:33:14Z jackdaniel: hm, I misread the intention, you want to do it during compilation, sorry 2017-08-30T06:33:54Z beach: I think named-readtables might do the trick. 2017-08-30T06:34:53Z beach: In fact, asdf-flv might work too. 2017-08-30T06:35:10Z beach: No wait. I don't need anything in particular. 2017-08-30T06:35:28Z beach: *READTABLE* is already bound to itself during compilation. 2017-08-30T06:35:33Z jackdaniel: if you want to do exactly what you have asked for, you could subclass component type and specialize perform :around ((op compile-op) (c my-component)) (let ((*readtable* …)) (call-next-method) 2017-08-30T06:35:34Z beach: So I can just assign to it. 2017-08-30T06:35:58Z beach: That's another possibility. 2017-08-30T06:36:11Z beach: But I think I can just assign to it at compile-time. 2017-08-30T06:36:51Z beach: (eval-when (:compile-toplevel) (setq *readtable* *my-readtable*)) 2017-08-30T06:37:10Z vlatkoB joined #lisp 2017-08-30T06:37:29Z jackdaniel: yes, if you have control on the source files that's perfectly valid way 2017-08-30T06:37:36Z beach: I do. 2017-08-30T06:37:37Z jackdaniel: I thought you need it for some arbitrary source code 2017-08-30T06:37:48Z beach: Yeah, sorry for the vague question. 2017-08-30T06:38:04Z jackdaniel: in such case subclassing component would be the simpliest I suppose 2017-08-30T06:38:11Z beach: I guess so, yes. 2017-08-30T06:38:30Z vap1 joined #lisp 2017-08-30T06:38:34Z vaporatorius joined #lisp 2017-08-30T06:39:40Z zRecursive joined #lisp 2017-08-30T06:39:50Z angavrilov joined #lisp 2017-08-30T06:43:22Z pillton: There is section 11.1 of the ASDF manual too. 2017-08-30T06:44:05Z pillton: I think you would do something like :around-compile (lambda (thunk) (let* ((*read-table* ...)) (funcall thunk))) 2017-08-30T06:45:38Z Murii joined #lisp 2017-08-30T06:46:40Z pillton: That works. 2017-08-30T06:47:31Z beach: But won't that do it for all components? 2017-08-30T06:47:37Z beach: I just want it for selected components. 2017-08-30T06:48:07Z beach: Though, I guess there is no harm in doing it for the others as well. 2017-08-30T06:48:35Z beach: Thanks for the information. 2017-08-30T06:49:07Z vap1 quit (Quit: Leaving) 2017-08-30T06:49:29Z pillton: I just tried (:file "packages" :around-compile ...) and it worked. 2017-08-30T06:49:53Z beach: Ah, I see. Yes, very nice. Thanks. 2017-08-30T06:53:09Z shka_ quit (Ping timeout: 260 seconds) 2017-08-30T06:53:41Z beach: pillton: That's perfect for me. Thanks again. 2017-08-30T06:57:54Z mishoo quit (Ping timeout: 252 seconds) 2017-08-30T06:59:59Z BitPuffin|osx joined #lisp 2017-08-30T07:00:38Z damke_ joined #lisp 2017-08-30T07:02:37Z damke quit (Ping timeout: 240 seconds) 2017-08-30T07:02:44Z zRecursive quit (Remote host closed the connection) 2017-08-30T07:05:47Z creat quit (Ping timeout: 240 seconds) 2017-08-30T07:08:09Z varjag joined #lisp 2017-08-30T07:12:39Z creat joined #lisp 2017-08-30T07:12:52Z mishoo joined #lisp 2017-08-30T07:17:47Z scymtym joined #lisp 2017-08-30T07:20:25Z phinxy joined #lisp 2017-08-30T07:22:39Z knobo quit (Ping timeout: 252 seconds) 2017-08-30T07:22:48Z chocolait quit (Remote host closed the connection) 2017-08-30T07:24:15Z phinxy quit (Read error: Connection reset by peer) 2017-08-30T07:26:16Z clintm quit (Read error: Connection reset by peer) 2017-08-30T07:31:22Z Arnot joined #lisp 2017-08-30T07:34:13Z mishoo_ joined #lisp 2017-08-30T07:35:38Z mishoo quit (Ping timeout: 248 seconds) 2017-08-30T07:36:07Z hajovonta joined #lisp 2017-08-30T07:36:55Z vydd joined #lisp 2017-08-30T07:36:55Z vydd quit (Changing host) 2017-08-30T07:36:55Z vydd joined #lisp 2017-08-30T07:37:09Z hajovonta: good morning! 2017-08-30T07:37:18Z beach: Hello hajovonta. 2017-08-30T07:40:27Z knobo joined #lisp 2017-08-30T07:53:00Z shiranuidong quit (Read error: Connection reset by peer) 2017-08-30T07:54:02Z shiranuidong joined #lisp 2017-08-30T08:00:04Z shka: hey all 2017-08-30T08:00:17Z hajovonta quit (Quit: hajovonta) 2017-08-30T08:02:20Z hhdave joined #lisp 2017-08-30T08:07:32Z schweers joined #lisp 2017-08-30T08:09:37Z Beetny joined #lisp 2017-08-30T08:12:07Z schweers: I want to have a file which contains data in the same directory as my sources. I’d also like to open the file from code in said sources. How do I specify a path relative to the file in which the path is given? I know this can be done, but I forgot how to do it. 2017-08-30T08:12:43Z hhdave_ joined #lisp 2017-08-30T08:13:46Z hhdave quit (Ping timeout: 264 seconds) 2017-08-30T08:13:46Z hhdave_ is now known as hhdave 2017-08-30T08:13:54Z Shinmera: (make-pathname :name "foo" :type "bla" :defaults #.(or compile-file-pathname load-pathname (error "Can't find file path"))) 2017-08-30T08:14:12Z Shinmera: err, *compile-file-pathname* *load-pathname* 2017-08-30T08:14:28Z Shinmera: Forgot the earmuffs at home for a second there. 2017-08-30T08:14:30Z random-nick joined #lisp 2017-08-30T08:14:31Z schweers: ahh, thanks alot! 2017-08-30T08:14:42Z Shinmera: The alot didn't do anything. I gave you the suggestion. 2017-08-30T08:14:52Z schweers: well it’s summer, I also left my earmuffs at home ;) 2017-08-30T08:15:57Z quazimodo quit (Ping timeout: 240 seconds) 2017-08-30T08:16:07Z Shinmera: If you want to tie your library to ASDF, there's also asdf:system-relative-pathname 2017-08-30T08:16:23Z Shinmera: This being relative to the system root, of course, so your paths may vary. 2017-08-30T08:16:53Z schweers: hmm, I use ASDF, so why not? 2017-08-30T08:17:28Z Shinmera: Because decoupling is good. 2017-08-30T08:17:52Z schweers: I was just thinking. this means I need asdf. 2017-08-30T08:18:09Z flip214: schweers: see also http://xach.livejournal.com/294639.html 2017-08-30T08:18:18Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-30T08:18:29Z Shinmera: The downside of the snippet I posted is that it only works if you load or compile-file the entire source file. 2017-08-30T08:18:40Z Shinmera: When you C-c C-c the snippet with slime, it won't do what you want. 2017-08-30T08:18:53Z DeadTrickster joined #lisp 2017-08-30T08:19:22Z schweers: true, but that is something I can live with 2017-08-30T08:19:35Z Mon_Ouie joined #lisp 2017-08-30T08:19:36Z schweers: but yes, it is something one should keep in mind. 2017-08-30T08:19:42Z schweers: thanks for the heads up. 2017-08-30T08:19:46Z jackdaniel: having (defparameter *foo* #.(alexandria:read-file-into-byte-vector path)) ; or read-file-into-string ; isn't a bad choice for resources unless you really need something to be a file 2017-08-30T08:20:00Z jackdaniel: thenn you have resource directly in the image 2017-08-30T08:27:26Z Arnot quit (Ping timeout: 260 seconds) 2017-08-30T08:31:55Z random-nick quit (Read error: Connection reset by peer) 2017-08-30T08:32:17Z hajovonta joined #lisp 2017-08-30T08:34:02Z random-nick joined #lisp 2017-08-30T08:36:48Z pjb joined #lisp 2017-08-30T08:37:03Z pjb is now known as Guest30354 2017-08-30T08:39:19Z Guest30354 is now known as pjb` 2017-08-30T08:39:36Z pjb` is now known as pjb 2017-08-30T08:42:44Z defaultxr quit (Ping timeout: 276 seconds) 2017-08-30T08:45:04Z mfiano is now known as axion 2017-08-30T08:45:29Z axion quit (Changing host) 2017-08-30T08:45:29Z axion joined #lisp 2017-08-30T08:48:37Z lnostdal quit (Ping timeout: 240 seconds) 2017-08-30T08:49:41Z nicklaf joined #lisp 2017-08-30T08:50:52Z kurolox joined #lisp 2017-08-30T08:52:10Z nicklaf quit (Client Quit) 2017-08-30T08:52:27Z nicklaf joined #lisp 2017-08-30T08:54:05Z nicklaf quit (Client Quit) 2017-08-30T08:55:10Z zmt01 joined #lisp 2017-08-30T08:55:14Z nicklaf joined #lisp 2017-08-30T08:57:57Z zmt00 quit (Ping timeout: 240 seconds) 2017-08-30T09:01:29Z damke joined #lisp 2017-08-30T09:03:19Z random-nick quit (Read error: Connection reset by peer) 2017-08-30T09:03:37Z damke_ quit (Ping timeout: 240 seconds) 2017-08-30T09:06:40Z axion is now known as mfiano 2017-08-30T09:06:57Z nicklaf quit (Quit: leaving) 2017-08-30T09:07:13Z nicklaf joined #lisp 2017-08-30T09:08:30Z random-nick joined #lisp 2017-08-30T09:08:39Z nicklaf quit (Client Quit) 2017-08-30T09:09:00Z nicklaf joined #lisp 2017-08-30T09:09:16Z shidima quit (Remote host closed the connection) 2017-08-30T09:09:16Z nicklaf quit (Client Quit) 2017-08-30T09:09:42Z nicklaf joined #lisp 2017-08-30T09:09:45Z mazoe joined #lisp 2017-08-30T09:10:19Z BitPuffin|osx quit (Remote host closed the connection) 2017-08-30T09:10:23Z nicklaf quit (Client Quit) 2017-08-30T09:10:41Z nicklaf joined #lisp 2017-08-30T09:12:13Z random-nick quit (Remote host closed the connection) 2017-08-30T09:13:22Z phinxy joined #lisp 2017-08-30T09:16:37Z random-nick joined #lisp 2017-08-30T09:17:16Z m00natic joined #lisp 2017-08-30T09:19:17Z mfiano quit (Changing host) 2017-08-30T09:19:17Z mfiano joined #lisp 2017-08-30T09:23:41Z shiranuidong quit (Quit: Leaving) 2017-08-30T09:24:02Z shiranuidong joined #lisp 2017-08-30T09:24:20Z random-nick quit (Remote host closed the connection) 2017-08-30T09:29:11Z random-nick joined #lisp 2017-08-30T09:31:11Z araujo quit (Ping timeout: 240 seconds) 2017-08-30T09:31:31Z araujo joined #lisp 2017-08-30T09:31:31Z araujo quit (Changing host) 2017-08-30T09:31:31Z araujo joined #lisp 2017-08-30T09:34:01Z BitPuffin|osx joined #lisp 2017-08-30T09:34:44Z random-nick quit (Remote host closed the connection) 2017-08-30T09:44:45Z random-nick joined #lisp 2017-08-30T09:46:32Z knicklux joined #lisp 2017-08-30T09:48:15Z quazimodo joined #lisp 2017-08-30T09:49:29Z attila_lendvai joined #lisp 2017-08-30T09:52:56Z joga quit (Ping timeout: 276 seconds) 2017-08-30T09:54:50Z attila_lendvai quit (Quit: Leaving.) 2017-08-30T09:55:40Z d4ryus1 is now known as d4ryus 2017-08-30T09:58:51Z jameser_ joined #lisp 2017-08-30T09:59:11Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-30T09:59:37Z DeadTrickster joined #lisp 2017-08-30T10:01:06Z jasom: Note that in-general C-c C-k is safer because the compiler is allowed to inline functions in the same file by default. 2017-08-30T10:01:16Z Beetny quit (Read error: Connection reset by peer) 2017-08-30T10:01:49Z jameser quit (Ping timeout: 240 seconds) 2017-08-30T10:04:11Z schweers quit (Ping timeout: 246 seconds) 2017-08-30T10:06:50Z phinxy quit (Read error: No route to host) 2017-08-30T10:08:54Z mazoe quit (Read error: Connection reset by peer) 2017-08-30T10:11:02Z mazoe joined #lisp 2017-08-30T10:11:10Z lnostdal joined #lisp 2017-08-30T10:15:51Z CrLF0710 joined #lisp 2017-08-30T10:22:57Z nsrahmad joined #lisp 2017-08-30T10:28:20Z nsrahmad quit (Ping timeout: 246 seconds) 2017-08-30T10:31:06Z lnostdal quit (Read error: Connection reset by peer) 2017-08-30T10:33:11Z jameser_ quit (Ping timeout: 240 seconds) 2017-08-30T10:38:54Z nicklaf quit (Quit: leaving) 2017-08-30T10:39:37Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-30T10:40:16Z DeadTrickster joined #lisp 2017-08-30T10:43:53Z lnostdal joined #lisp 2017-08-30T10:49:56Z schweers joined #lisp 2017-08-30T10:50:41Z add^_: regarding SICL, I'm having problems when trying to create the BOOT class 2017-08-30T10:50:42Z add^_: http://paste.lisp.org/display/354722 2017-08-30T10:53:21Z add^_ will continue to try 2017-08-30T10:54:01Z beach: add^_: What is the purpose of your attempt? 2017-08-30T10:54:16Z beach: add^_: I haven't made it easy for the general public to do things like that. 2017-08-30T10:54:42Z add^_: The purpose of using SICL? 2017-08-30T10:54:54Z add^_: well, trying to build it I should say 2017-08-30T10:55:01Z beach: You can't. 2017-08-30T10:55:04Z beach: It is not finished. 2017-08-30T10:55:05Z add^_: ah ok 2017-08-30T10:55:27Z beach: Though what you did ought to work. 2017-08-30T10:55:44Z add^_: I'm for some reason getting further this attempt 2017-08-30T10:55:51Z add^_: I didn't do anything different 2017-08-30T10:56:03Z beach: Let me try it out... 2017-08-30T10:56:10Z add^_: I just ran the (defparameter *b* ... thing again 2017-08-30T10:56:19Z add^_: now it finished 2017-08-30T10:56:31Z beach: That's strange 2017-08-30T10:56:33Z add^_ is confused 2017-08-30T10:56:51Z add^_: Got a REPL now 2017-08-30T10:57:07Z beach: Great! 2017-08-30T10:57:11Z beach: It is very fragile. 2017-08-30T10:57:15Z add^_: ah 2017-08-30T10:57:22Z beach: The smallest error and you are back to the host REPL. 2017-08-30T10:57:54Z add^_: If I was a more seasoned lisper, I'd help out if people wanted to use it 2017-08-30T10:58:38Z add^_: My thought train of "using it" was: Oh, a CL implementation that tries to do things the portable way, sounds good! 2017-08-30T10:58:41Z beach: I could try to think of some easy things you could help out with, but I have tried that in the past and not been terribly successful. 2017-08-30T10:58:50Z add^_: ah 2017-08-30T10:58:58Z add^_: then I will most likely fail 2017-08-30T10:59:08Z add^_: but it could be a good experience 2017-08-30T10:59:10Z beach: I think you are better off waiting a while. 2017-08-30T10:59:12Z add^_: nonetheless 2017-08-30T10:59:14Z add^_: ok 2017-08-30T10:59:19Z add^_: thanks beach :-) 2017-08-30T10:59:26Z beach: If you see something you think you can handle, we can discuss it. 2017-08-30T11:00:45Z beach: I can do (asdf:load-system :sicl-boot) without loading anything else first. 2017-08-30T11:01:35Z damke_ joined #lisp 2017-08-30T11:01:36Z beach: And I get past the loading of the SHIFTF macro the first time. 2017-08-30T11:01:43Z beach: Strange stuff. 2017-08-30T11:02:26Z Bike joined #lisp 2017-08-30T11:02:28Z Bike quit (Remote host closed the connection) 2017-08-30T11:03:17Z damke quit (Ping timeout: 240 seconds) 2017-08-30T11:03:28Z add^_: Maybe you have it cached 2017-08-30T11:03:41Z beach: It was from a fresh image. 2017-08-30T11:03:47Z add^_: hm, I have no idea 2017-08-30T11:04:19Z clintm joined #lisp 2017-08-30T11:05:47Z flazh1 quit (Ping timeout: 246 seconds) 2017-08-30T11:05:48Z beach: Thanks for letting me know that there might be problems. I'll go through the instructions again at some point to check what might be going on. 2017-08-30T11:05:54Z EvilAngel joined #lisp 2017-08-30T11:08:40Z dddddd joined #lisp 2017-08-30T11:08:47Z obm joined #lisp 2017-08-30T11:08:59Z easieste joined #lisp 2017-08-30T11:11:42Z Bike joined #lisp 2017-08-30T11:15:34Z knicklux quit (Quit: Leaving) 2017-08-30T11:15:43Z grumble quit (Quit: once) 2017-08-30T11:17:26Z grumble joined #lisp 2017-08-30T11:18:02Z geertvl joined #lisp 2017-08-30T11:24:16Z quazimodo quit (Read error: Connection reset by peer) 2017-08-30T11:24:32Z quazimodo joined #lisp 2017-08-30T11:26:16Z easieste quit (Quit: easieste) 2017-08-30T11:28:00Z quazimodo quit (Read error: Connection reset by peer) 2017-08-30T11:29:32Z quazimodo joined #lisp 2017-08-30T11:40:49Z knobo quit (Ping timeout: 240 seconds) 2017-08-30T11:42:59Z Arnot joined #lisp 2017-08-30T11:44:09Z lnostdal quit (Ping timeout: 248 seconds) 2017-08-30T11:45:49Z dddddd quit (Ping timeout: 240 seconds) 2017-08-30T11:46:44Z easieste joined #lisp 2017-08-30T11:51:12Z easieste quit (Client Quit) 2017-08-30T11:56:01Z mson joined #lisp 2017-08-30T11:56:56Z wxie joined #lisp 2017-08-30T11:58:54Z dddddd joined #lisp 2017-08-30T12:05:06Z damke joined #lisp 2017-08-30T12:05:17Z philippejara joined #lisp 2017-08-30T12:06:37Z philippejara quit (*.net *.split) 2017-08-30T12:06:37Z grumble quit (*.net *.split) 2017-08-30T12:06:38Z shiranuidong quit (*.net *.split) 2017-08-30T12:06:38Z kurolox quit (*.net *.split) 2017-08-30T12:06:38Z pjb quit (*.net *.split) 2017-08-30T12:06:38Z hhdave quit (*.net *.split) 2017-08-30T12:06:38Z sjl quit (*.net *.split) 2017-08-30T12:06:39Z dyelar quit (*.net *.split) 2017-08-30T12:06:39Z zulu_inuoe quit (*.net *.split) 2017-08-30T12:07:47Z Kevslinger quit (*.net *.split) 2017-08-30T12:07:47Z shka quit (*.net *.split) 2017-08-30T12:07:47Z peterhil quit (*.net *.split) 2017-08-30T12:07:47Z fe[nl]ix quit (*.net *.split) 2017-08-30T12:07:47Z Blkt quit (*.net *.split) 2017-08-30T12:07:47Z Orion3k quit (*.net *.split) 2017-08-30T12:07:47Z phoe quit (*.net *.split) 2017-08-30T12:07:47Z jasom quit (*.net *.split) 2017-08-30T12:07:47Z kozy quit (*.net *.split) 2017-08-30T12:07:47Z libre-man quit (*.net *.split) 2017-08-30T12:07:47Z easye quit (*.net *.split) 2017-08-30T12:07:47Z White_Flame quit (*.net *.split) 2017-08-30T12:07:47Z larme quit (*.net *.split) 2017-08-30T12:07:47Z Xal quit (*.net *.split) 2017-08-30T12:07:47Z reverse_light quit (*.net *.split) 2017-08-30T12:07:47Z groovy2shoes quit (*.net *.split) 2017-08-30T12:07:47Z gbyers quit (*.net *.split) 2017-08-30T12:07:47Z dan64 quit (*.net *.split) 2017-08-30T12:07:47Z zulu_inuoe joined #lisp 2017-08-30T12:07:47Z reverse_light joined #lisp 2017-08-30T12:07:47Z grumble joined #lisp 2017-08-30T12:07:47Z shiranuidong joined #lisp 2017-08-30T12:07:47Z Orion3k joined #lisp 2017-08-30T12:07:47Z damke_ quit (Ping timeout: 240 seconds) 2017-08-30T12:07:47Z groovy2shoes joined #lisp 2017-08-30T12:07:59Z kozy joined #lisp 2017-08-30T12:08:01Z hhdave joined #lisp 2017-08-30T12:08:49Z guna quit (Ping timeout: 240 seconds) 2017-08-30T12:09:53Z amerlyq quit (Ping timeout: 260 seconds) 2017-08-30T12:10:25Z jlk- quit 2017-08-30T12:10:39Z dan64 joined #lisp 2017-08-30T12:10:57Z Xal joined #lisp 2017-08-30T12:11:14Z dyelar joined #lisp 2017-08-30T12:11:44Z amerlyq joined #lisp 2017-08-30T12:11:49Z guna joined #lisp 2017-08-30T12:11:58Z lnostdal joined #lisp 2017-08-30T12:12:49Z CrLF0710 quit (Quit: Mutter: www.mutterirc.com) 2017-08-30T12:13:47Z knobo joined #lisp 2017-08-30T12:15:57Z Bike quit (Ping timeout: 255 seconds) 2017-08-30T12:21:40Z sjl_ joined #lisp 2017-08-30T12:21:41Z peterhil` joined #lisp 2017-08-30T12:21:41Z philippejara joined #lisp 2017-08-30T12:21:41Z kurolox joined #lisp 2017-08-30T12:21:41Z pjb joined #lisp 2017-08-30T12:21:41Z Kevslinger joined #lisp 2017-08-30T12:21:41Z shka joined #lisp 2017-08-30T12:21:41Z fe[nl]ix joined #lisp 2017-08-30T12:21:41Z Blkt joined #lisp 2017-08-30T12:21:41Z phoe joined #lisp 2017-08-30T12:21:41Z jasom joined #lisp 2017-08-30T12:21:41Z libre-man joined #lisp 2017-08-30T12:21:41Z easye joined #lisp 2017-08-30T12:21:41Z White_Flame joined #lisp 2017-08-30T12:21:41Z larme joined #lisp 2017-08-30T12:21:41Z gbyers joined #lisp 2017-08-30T12:21:41Z verne.freenode.net has set mode +o fe[nl]ix 2017-08-30T12:24:35Z attila_lendvai joined #lisp 2017-08-30T12:26:08Z knobo1 joined #lisp 2017-08-30T12:28:44Z knobo quit (Ping timeout: 240 seconds) 2017-08-30T12:30:14Z lnostdal quit (Quit: lnostdal) 2017-08-30T12:32:49Z postit_ joined #lisp 2017-08-30T12:33:13Z postit_ is now known as postit 2017-08-30T12:33:24Z attila_lendvai quit (Ping timeout: 252 seconds) 2017-08-30T12:34:49Z postit quit (Client Quit) 2017-08-30T12:35:18Z postit joined #lisp 2017-08-30T12:35:44Z flazh1 joined #lisp 2017-08-30T12:37:50Z postit quit (Client Quit) 2017-08-30T12:41:32Z knobo2 joined #lisp 2017-08-30T12:44:29Z Guest10288 is now known as micro_ 2017-08-30T12:44:58Z knobo1 quit (Ping timeout: 264 seconds) 2017-08-30T12:54:08Z shiranuidong quit (Quit: Leaving) 2017-08-30T12:56:35Z attila_lendvai joined #lisp 2017-08-30T12:56:35Z attila_lendvai quit (Changing host) 2017-08-30T12:56:35Z attila_lendvai joined #lisp 2017-08-30T12:59:35Z damke_ joined #lisp 2017-08-30T13:01:37Z damke quit (Ping timeout: 240 seconds) 2017-08-30T13:01:58Z nowhere_man joined #lisp 2017-08-30T13:04:12Z attila_lendvai quit (Ping timeout: 252 seconds) 2017-08-30T13:22:12Z lambda-smith joined #lisp 2017-08-30T13:23:46Z yangby joined #lisp 2017-08-30T13:25:49Z knobo2 quit (Ping timeout: 240 seconds) 2017-08-30T13:26:33Z Murii quit (Ping timeout: 248 seconds) 2017-08-30T13:26:48Z yangby quit (Client Quit) 2017-08-30T13:37:21Z [jlk] joined #lisp 2017-08-30T13:37:53Z oleo joined #lisp 2017-08-30T13:39:29Z lonjil: Does anyone know how to get Hunchentoot to do a redirect? I have an upload page and I'd like to redirect to the new page created after the user uploads something. 2017-08-30T13:40:56Z EvW joined #lisp 2017-08-30T13:41:13Z lambda-smith quit (Remote host closed the connection) 2017-08-30T13:41:35Z lambda-smith joined #lisp 2017-08-30T13:41:52Z Shinmera: With the REDIRECT function? 2017-08-30T13:42:10Z _death: you could search the manual for "redirect" 2017-08-30T13:44:09Z JuanDaugherty joined #lisp 2017-08-30T13:44:47Z lonjil: Shinmera: yeah, I tried that. Didn't work but I might be using it wrong 2017-08-30T13:45:41Z Bock quit (Ping timeout: 240 seconds) 2017-08-30T13:51:30Z wxie quit (Remote host closed the connection) 2017-08-30T13:51:50Z astronavt joined #lisp 2017-08-30T13:52:40Z cromachina quit (Read error: Connection reset by peer) 2017-08-30T14:00:17Z hajovonta quit (Quit: hajovonta) 2017-08-30T14:00:19Z dec0n quit (Read error: Connection reset by peer) 2017-08-30T14:04:05Z Murii|osx joined #lisp 2017-08-30T14:05:43Z mishoo_ quit (Ping timeout: 246 seconds) 2017-08-30T14:06:02Z easieste joined #lisp 2017-08-30T14:06:35Z attila_lendvai joined #lisp 2017-08-30T14:06:35Z attila_lendvai quit (Changing host) 2017-08-30T14:06:35Z attila_lendvai joined #lisp 2017-08-30T14:08:34Z easieste quit (Client Quit) 2017-08-30T14:11:24Z damke joined #lisp 2017-08-30T14:12:20Z EvilAngel quit (Quit: I need a shrubbery!) 2017-08-30T14:13:17Z astronavt quit (Remote host closed the connection) 2017-08-30T14:13:37Z damke_ quit (Ping timeout: 240 seconds) 2017-08-30T14:16:46Z warweasle joined #lisp 2017-08-30T14:19:33Z attila_lendvai quit (Ping timeout: 252 seconds) 2017-08-30T14:20:30Z attila_lendvai joined #lisp 2017-08-30T14:20:30Z attila_lendvai quit (Changing host) 2017-08-30T14:20:30Z attila_lendvai joined #lisp 2017-08-30T14:21:15Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-30T14:21:36Z DeadTrickster joined #lisp 2017-08-30T14:21:40Z jackdaniel: I've added simple readme for qmynd (mysql library) https://github.com/qitab/qmynd if anyone is interested in quick tutorial 2017-08-30T14:28:30Z joast joined #lisp 2017-08-30T14:32:29Z Kyo91_ joined #lisp 2017-08-30T14:35:43Z attila_lendvai quit (Read error: Connection reset by peer) 2017-08-30T14:36:25Z mishoo_ joined #lisp 2017-08-30T14:37:13Z geertvl quit (Quit: geertvl) 2017-08-30T14:38:00Z attila_lendvai joined #lisp 2017-08-30T14:38:00Z attila_lendvai quit (Changing host) 2017-08-30T14:38:00Z attila_lendvai joined #lisp 2017-08-30T14:39:34Z scymtym quit (Ping timeout: 264 seconds) 2017-08-30T14:40:11Z Arnot quit (Ping timeout: 260 seconds) 2017-08-30T14:41:22Z Lowl3v3l joined #lisp 2017-08-30T14:44:34Z al-damiri joined #lisp 2017-08-30T14:46:01Z xisp7 quit (Remote host closed the connection) 2017-08-30T14:51:53Z obm quit (Ping timeout: 248 seconds) 2017-08-30T15:00:36Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-30T15:06:25Z LiamH joined #lisp 2017-08-30T15:07:49Z brendyn quit (Ping timeout: 240 seconds) 2017-08-30T15:13:41Z vydd quit (Ping timeout: 240 seconds) 2017-08-30T15:16:24Z schweers quit (Ping timeout: 248 seconds) 2017-08-30T15:17:21Z lambda-smith quit (Quit: Konversation terminated!) 2017-08-30T15:17:58Z DGASAU quit (Ping timeout: 264 seconds) 2017-08-30T15:20:58Z DGASAU joined #lisp 2017-08-30T15:30:12Z maarhart joined #lisp 2017-08-30T15:32:15Z edgar-rft quit (Quit: edgar-rft) 2017-08-30T15:32:39Z maarhart quit (Client Quit) 2017-08-30T15:32:55Z Murii|osx quit (Quit: My MacBook Air has gone to sleep. ZZZzzz…) 2017-08-30T15:33:17Z michalisko joined #lisp 2017-08-30T15:38:58Z nsrahmad joined #lisp 2017-08-30T15:39:07Z yrk joined #lisp 2017-08-30T15:40:07Z Murii|osx joined #lisp 2017-08-30T15:47:16Z kuwze quit (Ping timeout: 260 seconds) 2017-08-30T15:50:43Z knobo2 joined #lisp 2017-08-30T15:54:23Z knusbaum joined #lisp 2017-08-30T15:54:23Z knusbaum quit (Client Quit) 2017-08-30T15:54:24Z zmt01 quit (Quit: Gone.) 2017-08-30T15:55:50Z mson quit (Quit: Connection closed for inactivity) 2017-08-30T15:56:59Z nsrahmad quit (Ping timeout: 246 seconds) 2017-08-30T16:01:30Z teggi joined #lisp 2017-08-30T16:03:01Z Tristam joined #lisp 2017-08-30T16:04:11Z tessier quit (Ping timeout: 240 seconds) 2017-08-30T16:04:41Z scymtym joined #lisp 2017-08-30T16:07:28Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-30T16:08:13Z Bike joined #lisp 2017-08-30T16:08:17Z Bike quit (Remote host closed the connection) 2017-08-30T16:08:38Z Bike joined #lisp 2017-08-30T16:09:33Z BitPuffin|osx quit (Remote host closed the connection) 2017-08-30T16:09:49Z Tristam quit (Ping timeout: 240 seconds) 2017-08-30T16:10:36Z BitPuffin|osx joined #lisp 2017-08-30T16:11:12Z attila_lendvai quit (Read error: Connection reset by peer) 2017-08-30T16:12:53Z flamebeard quit (Quit: Leaving) 2017-08-30T16:13:10Z attila_lendvai joined #lisp 2017-08-30T16:13:10Z attila_lendvai quit (Changing host) 2017-08-30T16:13:10Z attila_lendvai joined #lisp 2017-08-30T16:16:13Z klltkr joined #lisp 2017-08-30T16:16:25Z klltkr quit (Client Quit) 2017-08-30T16:16:41Z Bock joined #lisp 2017-08-30T16:17:01Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-30T16:19:24Z varjag joined #lisp 2017-08-30T16:19:24Z attila_lendvai quit (Read error: Connection reset by peer) 2017-08-30T16:21:30Z attila_lendvai joined #lisp 2017-08-30T16:22:02Z skeuomorf joined #lisp 2017-08-30T16:24:15Z symm- joined #lisp 2017-08-30T16:29:44Z Karl_Dscc joined #lisp 2017-08-30T16:31:11Z Karl_Dscc quit (Remote host closed the connection) 2017-08-30T16:32:20Z vydd joined #lisp 2017-08-30T16:36:44Z hhdave quit (Ping timeout: 240 seconds) 2017-08-30T16:41:20Z emaczen joined #lisp 2017-08-30T16:42:48Z Bike quit (Ping timeout: 240 seconds) 2017-08-30T16:42:50Z m00natic quit (Remote host closed the connection) 2017-08-30T16:46:18Z mson joined #lisp 2017-08-30T16:50:15Z dieggsy joined #lisp 2017-08-30T16:50:57Z shka_ joined #lisp 2017-08-30T16:51:11Z Tristam joined #lisp 2017-08-30T16:52:34Z klltkr joined #lisp 2017-08-30T16:59:46Z attila_lendvai quit (Read error: Connection reset by peer) 2017-08-30T17:01:26Z defaultxr joined #lisp 2017-08-30T17:02:00Z damke_ joined #lisp 2017-08-30T17:02:55Z attila_lendvai joined #lisp 2017-08-30T17:02:55Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-30T17:02:57Z damke quit (Ping timeout: 240 seconds) 2017-08-30T17:03:24Z DeadTrickster joined #lisp 2017-08-30T17:25:35Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-30T17:26:33Z attila_lendvai quit (Read error: Connection reset by peer) 2017-08-30T17:27:35Z attila_lendvai joined #lisp 2017-08-30T17:28:17Z vlatkoB_ joined #lisp 2017-08-30T17:31:48Z vlatkoB quit (Ping timeout: 240 seconds) 2017-08-30T17:34:26Z vydd quit (Ping timeout: 240 seconds) 2017-08-30T17:37:55Z attila_lendvai quit (Quit: Leaving.) 2017-08-30T17:39:48Z dieggsy quit (Ping timeout: 240 seconds) 2017-08-30T17:48:35Z smazga joined #lisp 2017-08-30T17:48:44Z raynold: ahh it's a wonderful day :D 2017-08-30T17:49:57Z damke_ quit (Ping timeout: 240 seconds) 2017-08-30T17:53:58Z Bike joined #lisp 2017-08-30T17:58:41Z skeuomorf quit (Ping timeout: 240 seconds) 2017-08-30T17:58:58Z marvin2 joined #lisp 2017-08-30T18:00:18Z teggi quit (Quit: Leaving...) 2017-08-30T18:01:52Z philippejara quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2017-08-30T18:03:53Z knobo2 quit (Remote host closed the connection) 2017-08-30T18:07:34Z LiamH quit (Ping timeout: 246 seconds) 2017-08-30T18:13:27Z nsnc_ quit (Ping timeout: 248 seconds) 2017-08-30T18:15:00Z nsnc_ joined #lisp 2017-08-30T18:15:13Z michalisko quit (Remote host closed the connection) 2017-08-30T18:17:50Z dieggsy joined #lisp 2017-08-30T18:19:05Z malice joined #lisp 2017-08-30T18:20:05Z attila_lendvai joined #lisp 2017-08-30T18:20:05Z attila_lendvai quit (Changing host) 2017-08-30T18:20:05Z attila_lendvai joined #lisp 2017-08-30T18:25:02Z sebastien_ quit (Quit: leaving) 2017-08-30T18:28:33Z sebastien_ joined #lisp 2017-08-30T18:31:04Z quazimodo quit (Read error: Connection reset by peer) 2017-08-30T18:31:22Z quazimodo joined #lisp 2017-08-30T18:40:43Z Guest77189 quit (Quit: ZNC - http://znc.in) 2017-08-30T18:45:53Z knobo2 joined #lisp 2017-08-30T18:51:44Z knobo2 quit (Remote host closed the connection) 2017-08-30T18:52:51Z knobo2 joined #lisp 2017-08-30T18:53:19Z random-nick quit (Remote host closed the connection) 2017-08-30T18:55:08Z quazimodo quit (Read error: Connection reset by peer) 2017-08-30T18:55:24Z quazimodo joined #lisp 2017-08-30T18:57:40Z warweasle quit (Quit: later) 2017-08-30T19:03:42Z astronavt joined #lisp 2017-08-30T19:04:05Z phoe: evening 2017-08-30T19:04:14Z phoe: at least over here 2017-08-30T19:08:18Z shka_ quit (Ping timeout: 240 seconds) 2017-08-30T19:09:45Z astronavt: anyone here have a good (or not good) experience using Clozure CL to do Mac GUI work? 2017-08-30T19:10:34Z drcode quit (Read error: Connection reset by peer) 2017-08-30T19:11:00Z yeticry joined #lisp 2017-08-30T19:11:03Z Bock quit (Ping timeout: 252 seconds) 2017-08-30T19:11:04Z yeticry_ quit (Read error: Connection reset by peer) 2017-08-30T19:11:54Z rpg joined #lisp 2017-08-30T19:12:46Z phoe: astronavt: #ccl might be able to help best 2017-08-30T19:13:03Z astronavt: thanks 2017-08-30T19:14:23Z drcode joined #lisp 2017-08-30T19:19:11Z drcode quit (Read error: Connection reset by peer) 2017-08-30T19:20:10Z postit joined #lisp 2017-08-30T19:20:46Z postit quit (Client Quit) 2017-08-30T19:21:06Z postit joined #lisp 2017-08-30T19:23:33Z tessier joined #lisp 2017-08-30T19:23:33Z tessier quit (Changing host) 2017-08-30T19:23:33Z tessier joined #lisp 2017-08-30T19:24:19Z random-nick joined #lisp 2017-08-30T19:24:50Z drcode joined #lisp 2017-08-30T19:26:53Z drcode quit (Read error: Connection reset by peer) 2017-08-30T19:27:18Z drcode joined #lisp 2017-08-30T19:30:03Z dustyweb quit (Changing host) 2017-08-30T19:30:03Z dustyweb joined #lisp 2017-08-30T19:31:10Z Denommus joined #lisp 2017-08-30T19:33:22Z Xach: attila_lendvai: http://report.quicklisp.org/2017-08-30/failure-report/hu.dwim.reiterate.html#hu.dwim.reiterate_iterate ?? 2017-08-30T19:35:44Z anticrisis joined #lisp 2017-08-30T19:41:34Z Jonsky joined #lisp 2017-08-30T19:45:17Z drcode quit (Read error: Connection reset by peer) 2017-08-30T19:47:13Z kokonaisluku joined #lisp 2017-08-30T19:50:17Z MetaHert` quit (Ping timeout: 240 seconds) 2017-08-30T19:50:42Z drcode joined #lisp 2017-08-30T19:51:58Z kokonaisluku quit (Client Quit) 2017-08-30T19:52:51Z klltkr joined #lisp 2017-08-30T19:56:05Z eschulte joined #lisp 2017-08-30T19:57:11Z dieggsy quit (Remote host closed the connection) 2017-08-30T19:57:35Z emaczen quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-30T19:59:43Z vlatkoB_ quit (Remote host closed the connection) 2017-08-30T19:59:45Z Baggers joined #lisp 2017-08-30T19:59:46Z symm- quit (Quit: Leaving...) 2017-08-30T20:01:37Z neoncontrails quit (Remote host closed the connection) 2017-08-30T20:02:13Z Kyo91_ quit (Ping timeout: 255 seconds) 2017-08-30T20:02:15Z neoncontrails joined #lisp 2017-08-30T20:03:05Z drcode quit (Read error: Connection reset by peer) 2017-08-30T20:03:27Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-30T20:03:37Z knobo2 quit (Remote host closed the connection) 2017-08-30T20:06:26Z neoncontrails quit (Ping timeout: 240 seconds) 2017-08-30T20:07:22Z drcode joined #lisp 2017-08-30T20:08:13Z knobo2 joined #lisp 2017-08-30T20:08:50Z Jonsky quit (Quit: time to eat banana) 2017-08-30T20:12:10Z Kyo91_ joined #lisp 2017-08-30T20:15:41Z klltkr joined #lisp 2017-08-30T20:19:38Z attila_lendvai is looking 2017-08-30T20:23:52Z astronavt quit (Remote host closed the connection) 2017-08-30T20:25:54Z attila_lendvai: Xach: I wanted to be conservative, not pushing some of the brand new patches, but apparently I ended up pushing something half-baked. I pushed everything I had, it should load fine now 2017-08-30T20:28:35Z phoe quit (Ping timeout: 252 seconds) 2017-08-30T20:28:45Z nowhere_man quit (Quit: Konversation terminated!) 2017-08-30T20:28:55Z nowhere_man joined #lisp 2017-08-30T20:31:27Z klltkr quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-30T20:36:31Z phinxy joined #lisp 2017-08-30T20:39:00Z malice: Is the error signalled when accessing out-of-bounds element of array/vector well-defined? 2017-08-30T20:39:13Z malice: I can see that SBCL signalls some SBCL error, is that so for each implementation? 2017-08-30T20:39:46Z Karl_Dscc joined #lisp 2017-08-30T20:40:59Z neoncontrails joined #lisp 2017-08-30T20:43:08Z _death: yes, it's not defined 2017-08-30T20:43:40Z Khisanth quit (Quit: Leaving) 2017-08-30T20:47:31Z phoe joined #lisp 2017-08-30T20:47:48Z cmatei quit (Remote host closed the connection) 2017-08-30T20:48:08Z Khisanth joined #lisp 2017-08-30T20:49:11Z knobo2 quit (Ping timeout: 240 seconds) 2017-08-30T20:50:04Z Baggers quit (Remote host closed the connection) 2017-08-30T20:50:32Z AxelAlex joined #lisp 2017-08-30T20:50:34Z Baggers joined #lisp 2017-08-30T20:50:41Z Murii|osx quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-30T20:53:20Z edgar-rft joined #lisp 2017-08-30T20:55:16Z jfrancis joined #lisp 2017-08-30T20:55:32Z kurolox quit (Ping timeout: 252 seconds) 2017-08-30T20:57:58Z phinxy quit (Read error: Connection reset by peer) 2017-08-30T20:58:13Z jfrancis: I just upgraded my quicklisp packages and broke my code. Drakma is now puking on the self-signed cert I'm using in my test system. If I do (drakma:http-request uri :verify nil ...) shouldn't it ignore the validity of the cert? Or am I reading the drakma docs wrong? 2017-08-30T20:58:17Z mishoo_ quit (Ping timeout: 252 seconds) 2017-08-30T21:05:35Z emaczen joined #lisp 2017-08-30T21:05:38Z Baggers left #lisp 2017-08-30T21:08:11Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-30T21:09:27Z ryan_vw_ quit (Ping timeout: 248 seconds) 2017-08-30T21:18:07Z scymtym: jfrancis: the current quicklisp release includes a combination of cl+ssl and drakma in which :verify nil does not work (because some necessary changes in drakma did not make it into quicklisp). in the meantime, a drakma release to fix this has been prepared and the next quicklisp release is probably imminent 2017-08-30T21:20:38Z cmatei joined #lisp 2017-08-30T21:23:47Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-30T21:23:58Z phoe: I am preparing a writeup post about the current state of the UltraSpec 2017-08-30T21:31:02Z pierpa joined #lisp 2017-08-30T21:31:49Z rpg joined #lisp 2017-08-30T21:35:50Z jfrancis: scymtym: thanks. in the meantime, I rolled back the quicklisp upgrade from a backup and that got me back up and running. 2017-08-30T21:37:14Z phoe: jfrancis: you can always clone a recent version into ~/quicklisp/local-projects 2017-08-30T21:37:55Z Shinmera: Or use Quicklisp's own versioning to roll back to the previous dist state. 2017-08-30T21:38:03Z Shinmera: Though I don't recall how to actually do that :( 2017-08-30T21:38:05Z jfrancis: I'll probably just wait. Right now, making progress on my application is more important than having the latest libraries. Only so many hours in a day. 2017-08-30T21:38:38Z jfrancis: Yeah, I know I can do that with quicklisp, but it was quicker to pull from a backup. Not enough time to learn everything I wish I could. 2017-08-30T21:41:46Z pjb` joined #lisp 2017-08-30T21:42:50Z pjb quit (Ping timeout: 252 seconds) 2017-08-30T21:43:00Z PinealGlandOptic quit (Quit: leaving) 2017-08-30T21:52:51Z ecraven quit (Ping timeout: 246 seconds) 2017-08-30T21:57:09Z Karl_Dscc quit (Remote host closed the connection) 2017-08-30T21:57:41Z varjag quit (Ping timeout: 240 seconds) 2017-08-30T21:59:06Z ecraven joined #lisp 2017-08-30T21:59:29Z Kyo91_ joined #lisp 2017-08-30T22:00:18Z jfrancis quit (Ping timeout: 240 seconds) 2017-08-30T22:04:18Z Kyo91_ quit (Ping timeout: 260 seconds) 2017-08-30T22:04:29Z kolko quit (Ping timeout: 246 seconds) 2017-08-30T22:07:42Z kolko joined #lisp 2017-08-30T22:09:47Z pjb` quit (Ping timeout: 252 seconds) 2017-08-30T22:11:22Z jfrancis joined #lisp 2017-08-30T22:11:51Z bjorkintosh quit (Ping timeout: 248 seconds) 2017-08-30T22:13:19Z angavrilov_ joined #lisp 2017-08-30T22:13:37Z angavrilov quit (Remote host closed the connection) 2017-08-30T22:17:43Z kolko quit (Ping timeout: 260 seconds) 2017-08-30T22:20:09Z phoe: https://blog.teknik.io/phoe/p/375 2017-08-30T22:20:27Z dieggsy joined #lisp 2017-08-30T22:20:37Z kolko joined #lisp 2017-08-30T22:20:47Z phoe: I hereby announce the presence of #clus - IRC channel linked to Discord where I hope to discuss matters related to development of Common Lisp UltraSpec. 2017-08-30T22:26:25Z pillton: beach: You're welcome. 2017-08-30T22:28:28Z drmeister: Hey lispers - any CLOS implementation experts online? 2017-08-30T22:28:38Z phoe: drmeister: ask the question 2017-08-30T22:28:48Z drmeister: I'm implementing beach's fast generic function approach and running into metastability issues. 2017-08-30T22:29:44Z drmeister: Nasty ones that I'm guess are due to when I'm compiling a dispatch function it invokes other generic functions with missing or incomplete dispatch functions and that so on. 2017-08-30T22:30:21Z pillton: I think beach (and others) call that problem satiation. 2017-08-30T22:30:26Z drmeister: There probably isn't a good answer for this but how does ECL avoid this. 2017-08-30T22:30:27Z phoe: are you bootstrapping the new dispatch from an existing one? 2017-08-30T22:30:35Z angavrilov_ quit (Remote host closed the connection) 2017-08-30T22:30:40Z drmeister: I am bootstrapping the new dispatch from the existing one. 2017-08-30T22:30:59Z drmeister: That doesn't seem to be enough. 2017-08-30T22:31:18Z pillton: There is a bit in the AMOP book that talks about it I think. 2017-08-30T22:31:29Z drmeister: Clasp starts up using the ECL dispatch method and then switches all of its generic functions over to the new method. 2017-08-30T22:31:50Z random-nick quit (Remote host closed the connection) 2017-08-30T22:32:13Z phoe: all of them. 2017-08-30T22:32:24Z drmeister: While running with the old ECL dispatch method each generic function accumulates a "call history" of specializer lists that it has been called with and effective methods for those specializer lists. 2017-08-30T22:32:28Z phoe: So, in theory, you are not using any of the old dispatch's functions, correct? 2017-08-30T22:32:57Z drmeister: The generic function dispatch compiler simply compiles that alist into native code alist search. 2017-08-30T22:33:23Z drmeister: Well, I use this to convert over... 2017-08-30T22:33:34Z pillton: phoe: It is not just the dispatch functions, you have to ensure that all of the method objects use the new meta classes too. 2017-08-30T22:33:37Z drmeister: https://www.irccloud.com/pastebin/onuPO4jc/ 2017-08-30T22:33:50Z drmeister: Note the list of functions that are not converted over. 2017-08-30T22:34:04Z drmeister: That list grows longer the more times I try it - until I gave up. 2017-08-30T22:34:15Z drmeister: Clasp can run with both dispatch methods side-by-side. 2017-08-30T22:34:41Z dieggsy quit (Ping timeout: 255 seconds) 2017-08-30T22:34:55Z pillton: beach has said in the past that he has a paper on this problem. 2017-08-30T22:34:57Z drmeister: This isn't an easy question and I don't expect easy answers. I'm kind of flailing for other perspectives. 2017-08-30T22:35:50Z mson quit (Quit: Connection closed for inactivity) 2017-08-30T22:36:21Z drmeister: He has a paper on the fast generic function method and another on bootstrapping . It's not clear how they are related and I've discussed this with him. I don't have a solution yet. 2017-08-30T22:36:56Z drmeister: What really puzzles me is that ECL avoids this problem somehow. 2017-08-30T22:37:31Z drmeister: I'm thinking maybe I'm doing something in the wrong order, which makes my code sensitive to the problem. (sigh) 2017-08-30T22:37:46Z phoe: Most likely, now that I think of it. 2017-08-30T22:38:04Z phoe: ECL has two dispatches? It bootstraps one from the other? 2017-08-30T22:38:45Z drmeister: When the fastgf dispatch function detects a dispatch miss it calculates an effective method, updates the call-history, compiles a new dispatch function and calls the effective method and returns. 2017-08-30T22:39:19Z drmeister: No, ECL has a hash table cache. I mimic their cache. 2017-08-30T22:40:07Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-08-30T22:40:11Z drmeister: I built beach's method on top of Clasp and I can switch individual generic functions to fastgf any time. 2017-08-30T22:41:37Z drmeister: It wasn't easy and it took weeks of work. Now I'm ready to switch over to it - but this metastability issue that I don't understand is keeping me from doing that. 2017-08-30T22:43:31Z drmeister: The idea is during startup I would switch over from the old to the new one and from then on all new generic functions would use the fastgf code. I can switch over but as soon as I evaluate anything interesting it goes into an infinite recursive loop and blows the stack. 2017-08-30T22:44:51Z attila_lendvai quit (Quit: Leaving.) 2017-08-30T22:45:16Z pillton: What about hard coding some of the generic functions first then switching them over to generic functions? 2017-08-30T22:45:22Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-30T22:45:56Z DeadTrickster joined #lisp 2017-08-30T22:46:30Z cturner[m] joined #lisp 2017-08-30T22:47:55Z drmeister: I'm thinking I effectively have that already. Ecl does that and I get call histories from that startup time 2017-08-30T22:53:05Z pillton: What is the infinite loop trying to do? 2017-08-30T22:53:33Z wxie joined #lisp 2017-08-30T22:53:54Z pillton: mop compute-effective-method 2017-08-30T22:53:55Z specbot: http://metamodular.com/CLOS-MOP/compute-effective-method.html 2017-08-30T22:55:33Z pillton: Is the new generic function sharing meta classes of the old one? 2017-08-30T22:56:46Z pillton: It has been a while since I read the fastgf paper. From what I remember it requires changing internals of standard-object. 2017-08-30T23:03:57Z Bock joined #lisp 2017-08-30T23:04:45Z pjb` joined #lisp 2017-08-30T23:14:33Z kuwze joined #lisp 2017-08-30T23:19:56Z wxie quit (Quit: Bye.) 2017-08-30T23:20:11Z pjb` quit (Ping timeout: 252 seconds) 2017-08-30T23:20:30Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-08-30T23:21:58Z rngoodn joined #lisp 2017-08-30T23:22:42Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-30T23:23:17Z williamyaoh joined #lisp 2017-08-30T23:25:30Z phinxy joined #lisp 2017-08-30T23:25:33Z williamyaoh quit (Client Quit) 2017-08-30T23:28:09Z stee_3_ quit (Ping timeout: 264 seconds) 2017-08-30T23:28:52Z drmeister: Afk for a bit. Dinner 2017-08-30T23:32:56Z rpg joined #lisp 2017-08-30T23:33:18Z phoe quit (Ping timeout: 240 seconds) 2017-08-30T23:36:30Z stee_3 joined #lisp 2017-08-30T23:40:29Z nullniverse joined #lisp 2017-08-30T23:40:32Z Denommus quit (Ping timeout: 252 seconds) 2017-08-30T23:50:47Z brendyn joined #lisp 2017-08-31T00:01:43Z Kevslinger joined #lisp 2017-08-31T00:03:54Z QualityAddict joined #lisp 2017-08-31T00:14:01Z quazimodo quit (Read error: Connection reset by peer) 2017-08-31T00:14:18Z quazimodo joined #lisp 2017-08-31T00:14:53Z emacsomancer joined #lisp 2017-08-31T00:15:19Z clintm quit (Remote host closed the connection) 2017-08-31T00:18:05Z pjb` joined #lisp 2017-08-31T00:20:40Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T00:21:14Z smazga quit (Quit: leaving) 2017-08-31T00:21:19Z karswell joined #lisp 2017-08-31T00:27:50Z pjb` quit (Ping timeout: 252 seconds) 2017-08-31T00:32:41Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T00:32:53Z EvW quit (Ping timeout: 246 seconds) 2017-08-31T00:33:47Z malice quit (Remote host closed the connection) 2017-08-31T00:35:38Z learning_ joined #lisp 2017-08-31T00:35:49Z phoe joined #lisp 2017-08-31T00:35:55Z learning_: is there a goto library for oauth2? 2017-08-31T00:36:19Z learning_: google gives me several 2017-08-31T00:38:56Z emacsomancer quit (Ping timeout: 240 seconds) 2017-08-31T00:48:21Z rngoodn joined #lisp 2017-08-31T00:49:17Z phoe quit (Ping timeout: 252 seconds) 2017-08-31T00:50:05Z Kaisyu joined #lisp 2017-08-31T00:51:43Z scottj joined #lisp 2017-08-31T00:56:41Z quazimodo quit (Ping timeout: 248 seconds) 2017-08-31T01:07:50Z d4ryus1 joined #lisp 2017-08-31T01:09:47Z wooden_ joined #lisp 2017-08-31T01:10:11Z wooden quit (Ping timeout: 240 seconds) 2017-08-31T01:10:41Z d4ryus quit (Ping timeout: 240 seconds) 2017-08-31T01:18:24Z karswell quit (Remote host closed the connection) 2017-08-31T01:19:31Z karswell joined #lisp 2017-08-31T01:24:54Z pjb` joined #lisp 2017-08-31T01:25:26Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T01:26:55Z safe joined #lisp 2017-08-31T01:29:02Z clintm` joined #lisp 2017-08-31T01:32:25Z karswell quit (Ping timeout: 248 seconds) 2017-08-31T01:33:35Z rngoodn joined #lisp 2017-08-31T01:34:23Z pjb` quit (Ping timeout: 252 seconds) 2017-08-31T01:38:11Z rngoodn quit (Client Quit) 2017-08-31T01:39:22Z AxelAlex quit (Quit: AxelAlex) 2017-08-31T01:42:40Z dddddd quit (Remote host closed the connection) 2017-08-31T01:48:54Z learning_ quit (Remote host closed the connection) 2017-08-31T01:57:16Z jameser joined #lisp 2017-08-31T01:57:55Z __main__ quit (Read error: Connection reset by peer) 2017-08-31T01:58:50Z _main_ joined #lisp 2017-08-31T02:00:03Z rpg joined #lisp 2017-08-31T02:01:40Z _main_ is now known as __main__ 2017-08-31T02:06:21Z drmeister: Hello 2017-08-31T02:08:43Z rngoodn joined #lisp 2017-08-31T02:09:55Z gabriel_laddel_p joined #lisp 2017-08-31T02:10:42Z gabriel_laddel_p quit (Changing host) 2017-08-31T02:10:42Z gabriel_laddel_p joined #lisp 2017-08-31T02:10:42Z gabriel_laddel_p quit (Changing host) 2017-08-31T02:10:42Z gabriel_laddel_p joined #lisp 2017-08-31T02:16:16Z quazimodo joined #lisp 2017-08-31T02:16:50Z marvin2 quit (Ping timeout: 246 seconds) 2017-08-31T02:31:40Z pjb` joined #lisp 2017-08-31T02:35:47Z dieggsy joined #lisp 2017-08-31T02:35:47Z Oladon quit (Read error: Connection reset by peer) 2017-08-31T02:36:19Z Oladon joined #lisp 2017-08-31T02:39:54Z marvin2 joined #lisp 2017-08-31T02:44:52Z gabriel_laddel_p quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-31T02:45:22Z gabriel_laddel_p joined #lisp 2017-08-31T02:47:25Z learning_ joined #lisp 2017-08-31T02:50:27Z dieggsy quit (Ping timeout: 246 seconds) 2017-08-31T02:58:01Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T02:58:32Z pjb` quit (Ping timeout: 252 seconds) 2017-08-31T03:05:40Z neoncontrails quit (Ping timeout: 255 seconds) 2017-08-31T03:08:16Z schoppenhauer quit (Ping timeout: 240 seconds) 2017-08-31T03:10:17Z schoppenhauer joined #lisp 2017-08-31T03:10:32Z dieggsy joined #lisp 2017-08-31T03:17:16Z dieggsy quit (Remote host closed the connection) 2017-08-31T03:17:54Z beach: Good morning everyone! 2017-08-31T03:18:11Z dieggsy joined #lisp 2017-08-31T03:19:37Z neoncontrails joined #lisp 2017-08-31T03:24:58Z clintm`: Good morning, beach 2017-08-31T03:25:02Z clintm` is now known as clingm 2017-08-31T03:25:08Z clingm is now known as clintm` 2017-08-31T03:26:54Z dieggsy` joined #lisp 2017-08-31T03:29:41Z gabriel_laddel_p quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-31T03:30:15Z mazoe quit (Ping timeout: 248 seconds) 2017-08-31T03:30:19Z dieggsy quit (Ping timeout: 246 seconds) 2017-08-31T03:36:37Z pierpa quit (Quit: Page closed) 2017-08-31T03:40:09Z dieggsy` quit (Ping timeout: 246 seconds) 2017-08-31T03:44:28Z safe quit (Read error: Connection reset by peer) 2017-08-31T03:50:16Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-31T03:51:22Z test1600 joined #lisp 2017-08-31T03:53:33Z chens joined #lisp 2017-08-31T03:55:05Z pjb` joined #lisp 2017-08-31T03:56:51Z rngoodn quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T04:07:17Z pjb` quit (Ping timeout: 252 seconds) 2017-08-31T04:07:35Z sellout- quit (Ping timeout: 248 seconds) 2017-08-31T04:08:57Z learning_ quit 2017-08-31T04:11:44Z Lowl3v3l quit (Quit: Leaving.) 2017-08-31T04:19:13Z zulu_inuoe_ joined #lisp 2017-08-31T04:21:59Z zulu_inuoe quit (Ping timeout: 248 seconds) 2017-08-31T04:32:57Z safe joined #lisp 2017-08-31T04:48:55Z shka_ joined #lisp 2017-08-31T04:52:56Z phinxy quit (Ping timeout: 252 seconds) 2017-08-31T04:53:05Z jdz quit (Ping timeout: 240 seconds) 2017-08-31T04:53:52Z beach: I still have only a vague idea about the GC algorithm to use for the old generation objects in SICL. But one possibility is to just use a traditional memory allocator that doesn't move the objects. 2017-08-31T04:53:52Z beach: A heap-allocated object in SICL is always a 2-word header and (for non-CONS objects) a "rack" referred to by the header. I have already decided to use a mark-and-sweep algorithm for the headers. Maybe I'll just use a traditional allocator for the racks. That way, they will never move, which simplifies a lot of things. 2017-08-31T04:55:05Z beach: As Paul Wilson's excellent allocator-survey paper shows, fragmentation is not a problem in practice, and was "invented" by theoreticians who had the wrong model of the behavior of real programs. 2017-08-31T04:56:22Z beach: For the young generation, I do use a per-thread mark-and-compact collector, which takes care of most short-lived objects. 2017-08-31T04:56:37Z pillton: beach: Is that the Uniprocessor Garbage Collection Techniques paper? 2017-08-31T04:56:42Z beach: No. 2017-08-31T04:56:48Z beach: The allocator-survey paper. 2017-08-31T04:56:52Z beach: Hold on... 2017-08-31T04:57:10Z adhoc: what is SICL ? 2017-08-31T04:57:21Z beach: minion: Please tell adhoc about SICL. 2017-08-31T04:57:21Z minion: adhoc: SICL: SICL is a (perhaps futile) attempt to re-implement Common Lisp from scratch, hopefully using improved programming and bootstrapping techniques. See https://github.com/robert-strandh/SICL 2017-08-31T04:57:36Z beach: pillton: http://dl.acm.org/citation.cfm?id=664690 2017-08-31T04:57:58Z pillton: beach: Ta. 2017-08-31T04:58:08Z adhoc: ta 2017-08-31T04:58:15Z jdz joined #lisp 2017-08-31T04:59:52Z beach: pillton: PDF here: http://www.cs.northwestern.edu/~pdinda/ics-s05/doc/dsa.pdf 2017-08-31T05:00:11Z beach: pillton: It's a brilliant piece of research. 2017-08-31T05:00:44Z beach: pillton: They basically show that all the research into memory allocation up to the point of that paper is wrong. 2017-08-31T05:01:12Z beach: pillton: I was very lucky to be able to spend a year in Austin with Paul Wilson and his group. I learned tons of things. 2017-08-31T05:01:52Z adhoc: beach: you are still in research ? 2017-08-31T05:02:02Z beach: adhoc: I am, yes. 2017-08-31T05:02:03Z Bike quit (Ping timeout: 246 seconds) 2017-08-31T05:02:04Z pillton: beach: Thanks for the link to PDF. I am at work so I have free access to pretty much everything. 2017-08-31T05:02:12Z beach: Ah, OK. 2017-08-31T05:03:10Z beach: adhoc: I recommend you come to ELS in Marbella in 2018. That way you can find out some of the research related to Common Lisp that is going on. 2017-08-31T05:03:35Z jasom: beach: fragmentation is definitely a problem allocators for javascript implementations have had to deal with 2017-08-31T05:04:06Z jasom: beach: though IIRC firefox solved it without moving or compacting 2017-08-31T05:04:10Z adhoc: Marbella, Spain? 2017-08-31T05:04:18Z beach: jasom: They must not have used any of the allocators recommended in that paper. 2017-08-31T05:04:22Z beach: adhoc: Yes. 2017-08-31T05:04:23Z pjb` joined #lisp 2017-08-31T05:04:33Z shka_: beach: they can't 2017-08-31T05:04:36Z adhoc: I'll have to update my passport =) 2017-08-31T05:04:53Z beach: adhoc: Doesn't sound hard. 2017-08-31T05:05:04Z shka_: beach: JS is tied strictly to C++ models of browser 2017-08-31T05:05:24Z shka_: so it GC should be conservative 2017-08-31T05:05:34Z beach: shka_: The paper is about implementing malloc/free. I don't see how that can be a restriction. 2017-08-31T05:05:46Z beach: shka_: No GC involved. 2017-08-31T05:05:54Z shka_: right 2017-08-31T05:05:55Z dec0n joined #lisp 2017-08-31T05:06:16Z beach: jasom: A lot of computing is done by people who, for some reason, decide not to read up on relevant research. 2017-08-31T05:06:52Z adhoc: beach: a lot of research is not very accessible though 2017-08-31T05:07:08Z beach: True. 2017-08-31T05:07:17Z Zhivago: JS isn't tied to anything particularly, although some implementations may be. 2017-08-31T05:07:37Z adhoc: not just hidden behind journal paywalls 2017-08-31T05:07:57Z beach: adhoc: But it's well worth the investment to figure it out. 2017-08-31T05:08:34Z adhoc: the language itself can be impenetrable 2017-08-31T05:08:56Z adhoc: beach: it certainly can be a journey 2017-08-31T05:09:23Z beach: That is true for *some* articles. For most of them, it is a matter of getting used to the way they are presented. 2017-08-31T05:09:39Z beach: The allocator survey is definitely very accessible. 2017-08-31T05:10:12Z Zhivago: If you're interested in GC, there's been some interesting developments in unifying tracing and reference counting. 2017-08-31T05:10:47Z beach: Zhivago: That sounds like something that has been around for a while. 2017-08-31T05:11:39Z Zhivago: Yeah, a couple of years -- but there hasn't been much excitement since then iirc. 2017-08-31T05:12:35Z drcode quit (Read error: Connection reset by peer) 2017-08-31T05:14:11Z beach: adhoc: I agree that some researchers could benefit from reading Steven Pinker's book "A Sense of Style". 2017-08-31T05:16:20Z jasom: my personal pet peeve is researchers who use their own self-invented notation in all their papers, explaining it only once in the first paper. 2017-08-31T05:16:54Z loke: jasom: How major are their differences conmpared to conventional notation? 2017-08-31T05:18:55Z clintm` quit (Changing host) 2017-08-31T05:18:55Z clintm` joined #lisp 2017-08-31T05:18:55Z clintm` is now known as clintm 2017-08-31T05:19:11Z clintm is now known as clintm` 2017-08-31T05:20:52Z clintm` is now known as clintm 2017-08-31T05:23:25Z clintm quit (Remote host closed the connection) 2017-08-31T05:26:39Z chocolait joined #lisp 2017-08-31T05:28:40Z vlatkoB joined #lisp 2017-08-31T05:29:25Z nsrahmad joined #lisp 2017-08-31T05:30:17Z moei quit (Ping timeout: 240 seconds) 2017-08-31T05:32:32Z pjb` quit (Ping timeout: 252 seconds) 2017-08-31T05:33:03Z safe quit (Read error: Connection reset by peer) 2017-08-31T05:34:48Z clintm joined #lisp 2017-08-31T05:35:23Z damke_ joined #lisp 2017-08-31T05:40:48Z in0perable joined #lisp 2017-08-31T05:41:43Z Karl_Dscc joined #lisp 2017-08-31T05:41:55Z in0perable is now known as inoperable 2017-08-31T05:46:09Z mishoo_ joined #lisp 2017-08-31T05:50:48Z inoperable is now known as Inoperable 2017-08-31T05:57:08Z damke joined #lisp 2017-08-31T05:58:12Z neoncontrails quit (Remote host closed the connection) 2017-08-31T05:58:20Z shka_: Zhivago: honestly, implementations in web browsers are… 2017-08-31T05:58:40Z neoncontrails joined #lisp 2017-08-31T05:59:06Z nsrahmad quit (Ping timeout: 246 seconds) 2017-08-31T05:59:16Z damke_ quit (Ping timeout: 240 seconds) 2017-08-31T05:59:32Z beach: shka_: Are what? 2017-08-31T05:59:44Z shka_: JS implementations 2017-08-31T06:00:04Z shka_: are tied to C++ 2017-08-31T06:02:55Z neoncontrails quit (Ping timeout: 246 seconds) 2017-08-31T06:03:47Z oleo quit (Quit: irc client terminated!) 2017-08-31T06:05:25Z Zhivago: That doesn't mean that they need be conservative. 2017-08-31T06:05:40Z shka_: yes 2017-08-31T06:05:46Z Zhivago: It does mean that the C++ objects need to be aware of the GC. 2017-08-31T06:08:10Z Zhivago: (If it is not to be conservative, that is) 2017-08-31T06:08:27Z scymtym quit (Ping timeout: 260 seconds) 2017-08-31T06:08:46Z shka_: i guess it would be easier if browser had not such large and complex c code base already 2017-08-31T06:09:12Z Karl_Dscc quit (Remote host closed the connection) 2017-08-31T06:10:09Z vtomole joined #lisp 2017-08-31T06:11:11Z Zhivago: Remember that JS does not need to interact with most of the browser directly. 2017-08-31T06:11:43Z Zhivago: It needs access to the DOM and timers, mostly. 2017-08-31T06:13:46Z obm joined #lisp 2017-08-31T06:14:32Z neoncontrails joined #lisp 2017-08-31T06:18:21Z emaczen` joined #lisp 2017-08-31T06:20:25Z emaczen quit (Ping timeout: 240 seconds) 2017-08-31T06:22:10Z moei joined #lisp 2017-08-31T06:22:50Z vtomole quit (Ping timeout: 260 seconds) 2017-08-31T06:27:32Z mishoo_ quit (Ping timeout: 252 seconds) 2017-08-31T06:30:07Z pjb` joined #lisp 2017-08-31T06:32:26Z knobo2 joined #lisp 2017-08-31T06:33:11Z Lord_Nightmare quit (Quit: ZNC - http://znc.in) 2017-08-31T06:34:11Z phoe joined #lisp 2017-08-31T06:38:18Z geertvl joined #lisp 2017-08-31T06:39:39Z schweers joined #lisp 2017-08-31T06:43:15Z Lord_Nightmare joined #lisp 2017-08-31T06:43:29Z pjb` quit (Ping timeout: 252 seconds) 2017-08-31T06:43:47Z vydd joined #lisp 2017-08-31T06:45:02Z varjag joined #lisp 2017-08-31T06:45:59Z mishoo joined #lisp 2017-08-31T06:47:45Z phoe quit (Ping timeout: 246 seconds) 2017-08-31T06:49:14Z Murii joined #lisp 2017-08-31T07:01:21Z damke_ joined #lisp 2017-08-31T07:01:54Z MetaYan joined #lisp 2017-08-31T07:02:00Z knobo2 quit (Ping timeout: 248 seconds) 2017-08-31T07:03:16Z damke quit (Ping timeout: 240 seconds) 2017-08-31T07:04:20Z knobo2 joined #lisp 2017-08-31T07:08:17Z phadthai quit (Ping timeout: 240 seconds) 2017-08-31T07:09:03Z pjb` joined #lisp 2017-08-31T07:10:41Z phadthai joined #lisp 2017-08-31T07:10:51Z hajovonta joined #lisp 2017-08-31T07:17:10Z angavrilov joined #lisp 2017-08-31T07:17:35Z vydd quit (Ping timeout: 252 seconds) 2017-08-31T07:19:36Z nowhere_man quit (Remote host closed the connection) 2017-08-31T07:20:53Z shka_ quit (Read error: No route to host) 2017-08-31T07:21:03Z schweers quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-31T07:21:04Z shka_ joined #lisp 2017-08-31T07:22:13Z nowhere_man joined #lisp 2017-08-31T07:24:55Z dtornabene joined #lisp 2017-08-31T07:25:00Z dtornabene_ joined #lisp 2017-08-31T07:25:27Z shka_ quit (Ping timeout: 248 seconds) 2017-08-31T07:25:35Z dtornabene_ quit (Client Quit) 2017-08-31T07:28:58Z Shinmera: Well, with USB access becoming a web standard among other bullshit, JS needs to access a lot more than that nowadays. 2017-08-31T07:30:18Z pjb` is now known as pjb 2017-08-31T07:36:56Z vhost- quit (Ping timeout: 240 seconds) 2017-08-31T07:43:29Z zulu_inuoe joined #lisp 2017-08-31T07:45:07Z scottj quit (Quit: leaving) 2017-08-31T07:46:15Z zulu_inuoe_ quit (Ping timeout: 248 seconds) 2017-08-31T07:48:14Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-31T07:48:48Z DeadTrickster joined #lisp 2017-08-31T07:56:54Z dtornabene quit (Remote host closed the connection) 2017-08-31T07:57:13Z dtornabene joined #lisp 2017-08-31T07:58:41Z anticrisis quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-31T07:59:28Z vydd joined #lisp 2017-08-31T08:00:36Z kurolox joined #lisp 2017-08-31T08:02:42Z mazoe joined #lisp 2017-08-31T08:03:01Z mazoe: Morning all 2017-08-31T08:03:46Z loke: Hello 2017-08-31T08:04:25Z MetaYan: Hoy 2017-08-31T08:05:55Z BitPuffin|osx joined #lisp 2017-08-31T08:05:58Z geertvl quit (Quit: geertvl) 2017-08-31T08:06:48Z geertvl joined #lisp 2017-08-31T08:12:49Z scymtym joined #lisp 2017-08-31T08:14:23Z lvo joined #lisp 2017-08-31T08:24:01Z flamebeard joined #lisp 2017-08-31T08:28:58Z dtornabene quit (Read error: Connection reset by peer) 2017-08-31T08:33:06Z phoe joined #lisp 2017-08-31T08:39:58Z phoe: hello 2017-08-31T08:46:15Z beach: Hello phoe. 2017-08-31T08:46:23Z phoe: Hey beach. 2017-08-31T08:46:27Z beach: MetaYan: Are you new here? I don't recognize your nick. 2017-08-31T08:49:43Z MetaYan: Yeah. Hi. 2017-08-31T08:49:51Z beach: MetaYan: What brings you to #lisp? 2017-08-31T08:50:09Z MetaYan: Lisp. :) 2017-08-31T08:50:19Z beach: Great! :) 2017-08-31T08:50:22Z lvo: Nice one 2017-08-31T08:51:22Z random-nick joined #lisp 2017-08-31T08:52:56Z phoe: ^ 2017-08-31T08:53:38Z phoe: MetaYan: need a small tour around? 2017-08-31T08:55:05Z MetaYan quit (Ping timeout: 260 seconds) 2017-08-31T08:55:18Z beach: I guess not. 2017-08-31T08:56:07Z phoe: oops 2017-08-31T08:57:43Z vydd quit (Ping timeout: 248 seconds) 2017-08-31T09:04:24Z vydd joined #lisp 2017-08-31T09:04:24Z vydd quit (Changing host) 2017-08-31T09:04:24Z vydd joined #lisp 2017-08-31T09:05:05Z mazoe: phoe: ooh there's a tour option?! 2017-08-31T09:09:09Z phoe: mazoe: yes, I just decided to open it today 2017-08-31T09:09:39Z beach: Roll up, roll up for the magical mystery tour. 2017-08-31T09:10:31Z defaultxr quit (Ping timeout: 248 seconds) 2017-08-31T09:19:12Z phinxy joined #lisp 2017-08-31T09:19:15Z phinxy quit (Changing host) 2017-08-31T09:19:16Z phinxy joined #lisp 2017-08-31T09:21:13Z raynold quit (Quit: Connection closed for inactivity) 2017-08-31T09:21:30Z Mon_Ouie quit (Quit: WeeChat 1.9) 2017-08-31T09:29:03Z phinxy quit (Ping timeout: 240 seconds) 2017-08-31T09:34:06Z Xof joined #lisp 2017-08-31T09:36:06Z BitPuffin|osx quit (Ping timeout: 246 seconds) 2017-08-31T09:37:17Z knobo2 quit (Ping timeout: 240 seconds) 2017-08-31T09:37:28Z mishoo_ joined #lisp 2017-08-31T09:38:47Z mishoo quit (Ping timeout: 248 seconds) 2017-08-31T09:42:24Z obm quit (Remote host closed the connection) 2017-08-31T09:43:03Z mishoo__ joined #lisp 2017-08-31T09:43:11Z knobo2 joined #lisp 2017-08-31T09:44:10Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-31T09:51:28Z knobo2 quit (Ping timeout: 255 seconds) 2017-08-31T09:52:18Z geertvl left #lisp 2017-08-31T09:52:33Z attila_lendvai joined #lisp 2017-08-31T09:53:42Z quazimodo quit (Ping timeout: 248 seconds) 2017-08-31T09:54:18Z jameser quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-31T09:54:37Z quazimodo joined #lisp 2017-08-31T09:58:17Z chens quit (Remote host closed the connection) 2017-08-31T09:59:02Z mishoo_ joined #lisp 2017-08-31T10:00:10Z mishoo__ quit (Ping timeout: 240 seconds) 2017-08-31T10:06:26Z attila_lendvai quit (Ping timeout: 252 seconds) 2017-08-31T10:10:36Z aindilis joined #lisp 2017-08-31T10:10:52Z strelox joined #lisp 2017-08-31T10:10:58Z attila_lendvai joined #lisp 2017-08-31T10:18:59Z Amplituhedron joined #lisp 2017-08-31T10:21:17Z attila_lendvai quit (Ping timeout: 252 seconds) 2017-08-31T10:23:57Z rafadc joined #lisp 2017-08-31T10:25:16Z drcode joined #lisp 2017-08-31T10:28:23Z rafadc quit (Client Quit) 2017-08-31T10:29:12Z rafadc joined #lisp 2017-08-31T10:30:44Z aindilis quit (Remote host closed the connection) 2017-08-31T10:33:46Z aindilis joined #lisp 2017-08-31T10:41:52Z yonson joined #lisp 2017-08-31T10:47:16Z wigust joined #lisp 2017-08-31T10:50:36Z Amplituhedron quit (Ping timeout: 240 seconds) 2017-08-31T10:50:40Z papachan quit (Ping timeout: 240 seconds) 2017-08-31T11:00:38Z Amplituhedron joined #lisp 2017-08-31T11:00:44Z damke joined #lisp 2017-08-31T11:02:36Z damke_ quit (Ping timeout: 240 seconds) 2017-08-31T11:05:31Z Bike joined #lisp 2017-08-31T11:06:01Z rafadc quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T11:09:14Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-31T11:09:57Z DeadTrickster joined #lisp 2017-08-31T11:11:13Z Mon_Ouie joined #lisp 2017-08-31T11:26:44Z nullniverse quit (Quit: Leaving) 2017-08-31T11:29:44Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-31T11:30:48Z DeadTrickster joined #lisp 2017-08-31T11:31:45Z phinxy joined #lisp 2017-08-31T11:32:46Z test1600 quit (Quit: Leaving) 2017-08-31T11:35:21Z zooey quit (Remote host closed the connection) 2017-08-31T11:36:09Z zooey joined #lisp 2017-08-31T11:44:47Z BitPuffin|osx joined #lisp 2017-08-31T11:47:12Z epony quit (Quit: QUIT) 2017-08-31T11:50:37Z phinxy quit (Read error: No route to host) 2017-08-31T11:50:50Z phinxy joined #lisp 2017-08-31T11:51:21Z MetaYan joined #lisp 2017-08-31T11:55:52Z Amplituhedron quit (Ping timeout: 248 seconds) 2017-08-31T11:56:03Z rafadc joined #lisp 2017-08-31T11:59:21Z grumble quit (Quit: told) 2017-08-31T11:59:23Z rumble joined #lisp 2017-08-31T11:59:28Z rumble is now known as grumble 2017-08-31T11:59:56Z rpg joined #lisp 2017-08-31T12:04:39Z knobo2 joined #lisp 2017-08-31T12:05:16Z fsmunoz joined #lisp 2017-08-31T12:10:43Z EvW joined #lisp 2017-08-31T12:14:36Z Murii quit (Ping timeout: 240 seconds) 2017-08-31T12:15:22Z phinxy quit (Read error: No route to host) 2017-08-31T12:20:02Z fsmunoz quit (Ping timeout: 260 seconds) 2017-08-31T12:28:41Z m00natic joined #lisp 2017-08-31T12:36:07Z vlatkoB quit (Remote host closed the connection) 2017-08-31T12:37:02Z vlatkoB joined #lisp 2017-08-31T12:45:41Z obm joined #lisp 2017-08-31T12:45:47Z Amplituhedron joined #lisp 2017-08-31T12:45:55Z phinxy joined #lisp 2017-08-31T12:46:36Z vlatkoB quit (Remote host closed the connection) 2017-08-31T12:47:17Z phinxy left #lisp 2017-08-31T12:48:55Z dddddd joined #lisp 2017-08-31T12:49:52Z LiamH joined #lisp 2017-08-31T12:53:33Z vlatkoB joined #lisp 2017-08-31T12:55:08Z rafadc quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T12:55:09Z shiranuidong joined #lisp 2017-08-31T12:55:52Z sellout- joined #lisp 2017-08-31T12:57:16Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-31T13:00:11Z rafadc joined #lisp 2017-08-31T13:01:13Z damke quit (Read error: Connection reset by peer) 2017-08-31T13:06:06Z damke joined #lisp 2017-08-31T13:08:16Z Amplituhedron quit (Ping timeout: 240 seconds) 2017-08-31T13:09:48Z kurolox quit (Remote host closed the connection) 2017-08-31T13:14:43Z Mon_Ouie joined #lisp 2017-08-31T13:16:11Z sjl_ quit (Ping timeout: 252 seconds) 2017-08-31T13:18:09Z Amplituhedron joined #lisp 2017-08-31T13:23:13Z EvW quit (Ping timeout: 246 seconds) 2017-08-31T13:27:16Z EvW joined #lisp 2017-08-31T13:28:50Z flamebeard quit (Quit: Leaving) 2017-08-31T13:34:46Z Mon_Ouie quit (Ping timeout: 240 seconds) 2017-08-31T13:36:31Z strelox quit (Ping timeout: 246 seconds) 2017-08-31T13:40:09Z myrkraverk quit (Ping timeout: 255 seconds) 2017-08-31T13:40:42Z myrkraverk joined #lisp 2017-08-31T13:45:53Z warweasle joined #lisp 2017-08-31T13:50:43Z Mon_Ouie joined #lisp 2017-08-31T13:51:03Z oleo joined #lisp 2017-08-31T13:54:27Z hajovonta quit (Quit: hajovonta) 2017-08-31T13:55:36Z wigust quit (Ping timeout: 240 seconds) 2017-08-31T14:00:52Z dieggsy joined #lisp 2017-08-31T14:01:45Z dec0n quit (Read error: Connection reset by peer) 2017-08-31T14:02:20Z dec0n joined #lisp 2017-08-31T14:02:44Z dec0n quit (Read error: Connection reset by peer) 2017-08-31T14:03:50Z wxie joined #lisp 2017-08-31T14:04:21Z White_Flame: argh, asdf itself seems to be caching my home directory from the build machine, expecting ~/.cache/common-lisp to be there on the deployment machine 2017-08-31T14:04:23Z mulk_ quit (Quit: mulk_) 2017-08-31T14:04:33Z White_Flame: with the different /home/username/ 2017-08-31T14:04:34Z mulk_ joined #lisp 2017-08-31T14:07:32Z Xach: White_Flame: in my experience asdf has the capability to be pretty smart about that, but there are still traps for the unwary. What does the backtrace look like? 2017-08-31T14:08:58Z White_Flame: in trying to load quicklisp on the deployment machine, there's a (ensure-directories-exist #P"/home/wf/.cache/common-lisp/sbcl .... /quicklisp/package.fasl"), and it can't create /home/wf 2017-08-31T14:10:13Z Xach: But what's calling the e-d-e? 2017-08-31T14:10:30Z shka quit (Remote host closed the connection) 2017-08-31T14:11:21Z White_Flame: (load "quicklisp.lisp") 2017-08-31T14:11:43Z White_Flame: that starts the build process on the deployemnt machine 2017-08-31T14:11:44Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-31T14:11:53Z White_Flame: which wants to use .cache/common-lisp from the build machine's path 2017-08-31T14:11:56Z Xach: that is teasing me :~( 2017-08-31T14:12:07Z Xach: i guess I meant the next level up, not the very top of the call chain. 2017-08-31T14:12:22Z DeadTrickster joined #lisp 2017-08-31T14:12:28Z Xach: White_Flame: this is from a saved image? 2017-08-31T14:12:37Z White_Flame: yes 2017-08-31T14:12:48Z White_Flame: saving the image, then attempting to load up quicklisp on the deployment box 2017-08-31T14:13:20Z Xach: White_Flame: is quicklisp loaded before saving the image? 2017-08-31T14:13:28Z wxie quit (Remote host closed the connection) 2017-08-31T14:14:15Z White_Flame: http://paste.lisp.org/display/354800 2017-08-31T14:14:18Z White_Flame: no 2017-08-31T14:14:45Z White_Flame: because quicklisp also remembered teh paths from the build box, I tried just running QL solely after deployment 2017-08-31T14:15:16Z White_Flame: the use case is allowing dynamically deployed applications running on this server to pull in QL libraries 2017-08-31T14:16:24Z Xach: hmm, i guess i don't get billed for that kind of inter-aws stuff 2017-08-31T14:16:59Z White_Flame: heh, well it is an issue regardless of who owns the box it's running on ;) 2017-08-31T14:17:10Z Xach: White_Flame: i don't have any good guesses, sorry. it looks a bit like user-homedir-pathname is fouled up, but that seems unlikely 2017-08-31T14:17:13Z White_Flame: but I think I'm going to just end up baking in the QL libs we currently need before build 2017-08-31T14:17:21Z Xach: gotta be some saved state somewhere 2017-08-31T14:17:24Z White_Flame: stopgap measur 2017-08-31T14:17:33Z Xach: you could map all symbols and look for bound specials with that value perhaps. 2017-08-31T14:19:47Z White_Flame: it'd probably be _all_ symbols, as there's a ton of asdf packages 2017-08-31T14:19:57Z BitPuffin|osx quit (Ping timeout: 246 seconds) 2017-08-31T14:20:12Z White_Flame: and if it's being held in asdf, uiop, or ql is anybody's guess, and probably multiple times 2017-08-31T14:20:36Z Xach: quicklisp has ql-setup:*quicklisp-home* against which all filesystem ops are merged. 2017-08-31T14:20:45Z Xach: change that and quicklisp config is done. 2017-08-31T14:21:25Z White_Flame: yeah, but when quicklisp asks asdf to build from that directory, I wonder if asdf will still blow up looking for the wrong .cache dir 2017-08-31T14:21:52Z Xach: Sure, I'm just saying that the quicklisp part is not a "who knows" thing, it's pretty localized. 2017-08-31T14:21:59Z White_Flame: heh, yep 2017-08-31T14:22:03Z White_Flame: newer code, better design 2017-08-31T14:22:15Z Xach: simpler, anyway. 2017-08-31T14:22:36Z White_Flame: anyway, I am going to punt on this for now and just bake in needed libs 2017-08-31T14:22:42Z Xach: and it ignores images and image generation entirely, which asdf does not, for good reason 2017-08-31T14:23:02Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T14:25:59Z Kyo91_ joined #lisp 2017-08-31T14:26:48Z shka joined #lisp 2017-08-31T14:27:43Z Jesin quit (Quit: Leaving) 2017-08-31T14:27:48Z al-damiri joined #lisp 2017-08-31T14:30:47Z White_Flame: hmm, back on my dev box, why can I download some new systems but not others? for instance, it'll get "git" but not "str" 2017-08-31T14:30:54Z White_Flame: via ql 2017-08-31T14:31:25Z White_Flame: (System "str" not found) 2017-08-31T14:32:01Z Xach: I don't recognize "str" or "git" as quicklisp-provided systems. 2017-08-31T14:32:11Z Xach: Hmm, i guess it is! 2017-08-31T14:32:14Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-31T14:32:19Z White_Flame: well, I tried "cl-git", as well as "cl-str", "str", etc 2017-08-31T14:33:12Z White_Flame: str's the one bring problematic 2017-08-31T14:33:13Z shka: White_Flame: update dist? 2017-08-31T14:33:32Z DeadTrickster joined #lisp 2017-08-31T14:34:02Z White_Flame: shka: will that download new versions for all my current libs? 2017-08-31T14:34:09Z White_Flame: don't want to touch the existing codebase, just add new ones 2017-08-31T14:34:11Z shka: hmmm 2017-08-31T14:34:21Z shka: actually i don't remember 2017-08-31T14:34:29Z White_Flame: yeah, same here. I'm not really an admin type 2017-08-31T14:34:35Z shka: perhaps there is update? 2017-08-31T14:34:44Z White_Flame: I've been looking 2017-08-31T14:34:46Z shka: give me a second, i will check 2017-08-31T14:35:08Z jackdaniel: White_Flame: it will update your packages, unless you have your local base linked in local-projects 2017-08-31T14:35:28Z jackdaniel: White_Flame: what you could do is creating a bundle from your software, linking it in local-projects, and then calling update-all-dists 2017-08-31T14:35:38Z jackdaniel: then you'll "freeze" your current codebase 2017-08-31T14:36:10Z White_Flame: btw, can you guys quickload :str fine? 2017-08-31T14:36:17Z jackdaniel: let me see 2017-08-31T14:36:30Z jackdaniel: yes, loaded fine 2017-08-31T14:36:39Z White_Flame: huh 2017-08-31T14:37:21Z lvo quit (Remote host closed the connection) 2017-08-31T14:37:36Z jackdaniel: another solution is to create your own ql distribution with your current codebase and have it installed after ql (so packages are taken from it first), but having bundle should be much simplier 2017-08-31T14:38:28Z White_Flame: yeah, our codebase is old, pre-ql, so I think all the code that really matters for consistent builds is already pulled out into our own lib directories 2017-08-31T14:38:46Z White_Flame: so I'm not opposed to running update-all-dists, but is that the only way it'll see a new list of available systems? 2017-08-31T14:39:01Z White_Flame: (assuming the problem is that I have a local copy of available dists that's out of date) 2017-08-31T14:39:10Z jackdaniel: you could clone it manually to local projects, but that defeats the purpose of having ql 2017-08-31T14:39:11Z pjb: clhs format 2017-08-31T14:39:11Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_format.htm 2017-08-31T14:39:43Z Mandus_ quit (Ping timeout: 240 seconds) 2017-08-31T14:39:50Z jackdaniel: also you don't have guarantee, that it doesn't depend on some API which did have change between QL releases 2017-08-31T14:40:54Z White_Flame: yeah, I know 2017-08-31T14:40:54Z Xach: White_Flame: ql:update-dist is what i use. 2017-08-31T14:41:10Z Xach: White_Flame: but if you want finer control over what stuff is installed, i think qlot is meant for that 2017-08-31T14:41:12Z White_Flame: Xach: exactly how? 2017-08-31T14:41:32Z White_Flame: I don't have that dist on my box yet 2017-08-31T14:41:50Z Xach: White_Flame: not sure of context - how qlot? or how update-dist? 2017-08-31T14:42:22Z White_Flame: how update-dist, for a system that isn't in my local list of available systems 2017-08-31T14:42:41Z White_Flame: because my systems.txt etc are out of date 2017-08-31T14:42:52Z Xach: White_Flame: a dist is a set of projects, and they are all released together. each version of a dist updates everything at once. 2017-08-31T14:43:04Z Xach: White_Flame: you can't say "update this particular system" 2017-08-31T14:43:13Z White_Flame: ok 2017-08-31T14:43:23Z Xach: White_Flame: you can say "get the same dist on my system as this other system" though. 2017-08-31T14:43:40Z Xach: that is easiest if "same" means "the latest released", because that's what "update-dist" does. 2017-08-31T14:43:46Z Xach: but you can also match older versions. 2017-08-31T14:43:46Z White_Flame: so update-dist will update that system plus all its dependencies, where update-all-dists does everythign that's installed? 2017-08-31T14:44:20Z Xach: White_Flame: update-dist updates a specific dist, update-all-dists updates all dists. there is only one popularly available and updated dist right now, and it's the default, named "quicklisp" 2017-08-31T14:44:24Z obm quit (Ping timeout: 248 seconds) 2017-08-31T14:44:38Z White_Flame: ah, ok. so that's what the parameter is 2017-08-31T14:44:39Z Xach: but in the Glorious Future there may be a lot of different dists for different purposes, and update-all-dists calls update-dist on each of them. 2017-08-31T14:44:56Z Xach: yeah 2017-08-31T14:45:04Z MetaYan quit (Ping timeout: 260 seconds) 2017-08-31T14:45:29Z phoe: (dolist (dist (ql:all-dists)) (ql:update-dist dist)) 2017-08-31T14:45:40Z dlowe: Surprised the dwim.hu folks haven't made their own dist. It would make a lot of sense. 2017-08-31T14:45:49Z astronavt joined #lisp 2017-08-31T14:46:06Z astronavt: any reason not to use SLY instead of SLIME for Emacs? https://github.com/joaotavora/sly 2017-08-31T14:46:12Z Xach: well, there's no documentation for how to do it. working on it. 2017-08-31T14:46:23Z phoe: astronavt: ask mfiano, he is a heavy sly user 2017-08-31T14:46:24Z phoe: mfiano: ^ 2017-08-31T14:46:29Z Xach: astronavt: i would like to try it. maybe september will be the September of Sly 2017-08-31T14:46:31Z phoe afk 2017-08-31T14:46:36Z phoe quit (Quit: leaving) 2017-08-31T14:47:16Z mfiano: There is no reason. Sly offers more than SLIME, but SLIME is the old and tried solution. 2017-08-31T14:47:25Z mfiano: Use what works for you best. 2017-08-31T14:47:33Z astronavt: my concern with any "we forked it to make it better" project is... why not just contribute upstream? i'm a heavy neovim proponent but it took a good deal of convincing to get me to do it. now vim is reimplementing neovim features and its weird for the community 2017-08-31T14:47:46Z mfiano: astronavt: upstream wouldnt change it 2017-08-31T14:47:48Z astronavt: so wondering if it really is just "SLIME but better" or if theres something else going on 2017-08-31T14:48:16Z mfiano: The author has a rationale. The views of both project maintainers differed too much to merge 2017-08-31T14:48:30Z astronavt: i see. would be interesting to read some of that 2017-08-31T14:48:36Z Denommus joined #lisp 2017-08-31T14:48:51Z astronavt: SLY just says "look at all this stuff that makes it better" but if the SLIME author thought it wasnt good, then maybe theres something to the latter perspective 2017-08-31T14:49:03Z Denommus quit (Client Quit) 2017-08-31T14:49:27Z Amplituhedron quit (Ping timeout: 255 seconds) 2017-08-31T14:49:30Z rpg joined #lisp 2017-08-31T14:49:31Z Denommus joined #lisp 2017-08-31T14:49:35Z mfiano: Oh, anyone can read the README 2017-08-31T14:49:41Z White_Flame: well, sometimes it's not necessarily "good" vs "bad", but whether or not it stays with the development direction intended for the project 2017-08-31T14:50:07Z astronavt: readme doesnt appear to explain why SLIME didnt want these fatures 2017-08-31T14:50:09Z White_Flame: for instance, SLY requires emacs 24, SLIME supports 23 2017-08-31T14:50:09Z astronavt: features 2017-08-31T14:51:39Z mfiano: There weren't really any reasons. SLIME was just stubborn, which is not necessarily a bad thing, and had a clear vision for the direction it wanted the project to take. 2017-08-31T14:52:20Z mfiano: It's also not about features. There are long standing bugs fixed from SLIME to Sly 2017-08-31T14:52:39Z mfiano: Some that still exist in SLIME to this day 2017-08-31T14:52:54Z astronavt: what is a feature but an ancient unfixed bug? ;) 2017-08-31T14:53:00Z astronavt: ok, sounds like ill try SLY out then 2017-08-31T14:53:04Z astronavt: reminds me of the vim/neovim split 2017-08-31T14:54:42Z Xach: there was a thing that preceded slime called ILISP 2017-08-31T14:55:03Z Xach: it took a really nice video demo to get me to switch, even though ILISP had a lot of problems, I just couldn't picture how a new way would work. 2017-08-31T14:55:07Z beach: It is also about the estimated likelihood of things being maintained in the future. 2017-08-31T14:55:23Z beach: I am reminded of the XEmacs split. 2017-08-31T14:56:11Z Shinmera: One reason not to use sly is that SBCL is pretty active in its development, and their devs (mostly stassats) will adapt slime as necessary. Sly might take a bit to catch up with the fixes. 2017-08-31T14:56:49Z mfiano: astronavt: I have been using Sly since my switch to Emacs about 3 years ago (on SBCL), without any issues. I can't say the same about my experiences with SLIME. 2017-08-31T14:56:56Z astronavt: good to know 2017-08-31T14:57:08Z astronavt: thanks for the details everyone. i think i made my decision 2017-08-31T14:58:01Z astronavt quit (Remote host closed the connection) 2017-08-31T14:58:12Z Amplituhedron joined #lisp 2017-08-31T14:58:24Z paule32: hello 2017-08-31T14:58:29Z paule32: need help with cffi 2017-08-31T14:58:31Z paule32: http://paste.lisp.org/display/354797 2017-08-31T14:58:48Z paule32: i can't load external C function's 2017-08-31T14:59:03Z paule32: how can I do it? 2017-08-31T14:59:08Z paule32: i am under linux 2017-08-31T14:59:15Z paule32: gcc 6.2.0 2017-08-31T14:59:19Z paule32: sbcl 2017-08-31T14:59:54Z paule32: sbcl --version: 1.1.14.debian 2017-08-31T15:00:02Z varjag: is it in your library path 2017-08-31T15:00:17Z paule32: yes, the lib itself will load 2017-08-31T15:00:19Z varjag: libkallup.so 2017-08-31T15:00:27Z paule32: yes 2017-08-31T15:00:29Z Shinmera: varjag: if it weren't, use-foreign-library would fail 2017-08-31T15:00:33Z shka: paule32: check if symbol is there 2017-08-31T15:01:04Z paule32: shka: see http://paste.lisp.org/display/354797 test.c 2017-08-31T15:01:15Z shka: paule32: is shared library 2017-08-31T15:01:32Z paule32: shka: shared object 2017-08-31T15:01:51Z paule32: gcc -shared -o libkallup.so test.o 2017-08-31T15:02:12Z astronavt joined #lisp 2017-08-31T15:02:13Z shka: paule32: check it with nm 2017-08-31T15:02:34Z paule32: arg 2017-08-31T15:02:35Z shka: https://sourceware.org/binutils/docs/binutils/nm.html 2017-08-31T15:02:38Z paule32: no symbols 2017-08-31T15:02:59Z paule32: $ strip libkallup.so 2017-08-31T15:03:02Z paule32: not right? 2017-08-31T15:03:07Z Mandus joined #lisp 2017-08-31T15:03:19Z shka: paule32: not at all 2017-08-31T15:03:33Z shka: you will need to find symbols in order to use those 2017-08-31T15:03:41Z shka: don't strip 2017-08-31T15:03:59Z paule32: 0000000000000660 T KALLUP_init_app 2017-08-31T15:04:10Z shka: yup, that sounds right 2017-08-31T15:04:27Z shka: try to load it now 2017-08-31T15:05:13Z paule32: # 2017-08-31T15:05:13Z paule32: ; caught STYLE-WARNING: 2017-08-31T15:05:13Z paule32: ; Undefined alien: "KALLUP_init_app" 2017-08-31T15:05:46Z vhost- joined #lisp 2017-08-31T15:06:37Z jackdaniel: aliens! run for your life! 2017-08-31T15:07:48Z shka: paule32: btw, i just checked cffi manual 2017-08-31T15:07:55Z smazga joined #lisp 2017-08-31T15:09:05Z shka: paule32: i am not sure if you are using defcfun correctly 2017-08-31T15:09:30Z paule32: (defcfun ("KALLUP_init_app" kallup::kallup-init-app) :void) 2017-08-31T15:09:48Z shka: what about (defcfun "KALLUP_init_app" :void) ? 2017-08-31T15:10:19Z shka: cffi should be smart enough to translate C coding convention to lispy one, so i don't think this is even required 2017-08-31T15:12:44Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-31T15:13:07Z paule32: # 2017-08-31T15:13:07Z paule32: debugger invoked on a SB-KERNEL::UNDEFINED-ALIEN-FUNCTION-ERROR in thread 2017-08-31T15:13:07Z paule32: #: 2017-08-31T15:13:07Z paule32: The alien function "KALLUP_init_app" is undefined. 2017-08-31T15:13:11Z emaczen` left #lisp 2017-08-31T15:13:16Z DeadTrickster joined #lisp 2017-08-31T15:15:51Z phoe joined #lisp 2017-08-31T15:16:35Z shka: paule32: where is your so file located? 2017-08-31T15:17:10Z paule32: $ ~/Projekte/ai/test 2017-08-31T15:18:24Z shka: set this path as search-path in define-foreign-library 2017-08-31T15:18:32Z damke_ joined #lisp 2017-08-31T15:19:56Z damke quit (Ping timeout: 240 seconds) 2017-08-31T15:20:28Z Denommus quit (Ping timeout: 252 seconds) 2017-08-31T15:27:36Z mishoo_ quit (Ping timeout: 240 seconds) 2017-08-31T15:27:42Z paule32: haha 2017-08-31T15:27:50Z paule32: sbcl is very cluge 2017-08-31T15:27:54Z paule32: (CFFI::FL-ERROR "Unable to load foreign library (~A).~% ~A" LIBKALLUP "Error opening shared object \"libkallup.so.so\": 2017-08-31T15:28:42Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T15:28:54Z paule32: it works now 2017-08-31T15:29:03Z paule32: thank you to all for helping 2017-08-31T15:30:05Z shka: paule32: you are welcome :-) 2017-08-31T15:30:48Z rpg joined #lisp 2017-08-31T15:31:18Z vydd quit (Ping timeout: 248 seconds) 2017-08-31T15:31:27Z paule32: what is about common lisp (clisp), and sbcl (steal bank common lisp)? 2017-08-31T15:31:35Z paule32: clisp out of date? 2017-08-31T15:31:57Z paule32: steal bank sound little bit profit makers 2017-08-31T15:32:31Z dieggsy quit (Quit: ERC (IRC client for Emacs 26.0.50)) 2017-08-31T15:33:19Z shka: paule32: it is steel, not steal 2017-08-31T15:33:21Z shka: ;-) 2017-08-31T15:33:46Z paule32: oops 2017-08-31T15:33:48Z paule32: :-) 2017-08-31T15:33:54Z shka: i don't know about clisp status, but SBCL appears to be the most popular CL nowdays 2017-08-31T15:34:12Z shka: also, there is backstory for name 2017-08-31T15:34:13Z shka: :-) 2017-08-31T15:34:28Z paule32: kewl 2017-08-31T15:35:28Z paule32: i hope sbcl has the advantages for making power application's, and not just for learning and turning into the dusted book board 2017-08-31T15:35:46Z shka: SBCL is optimized 2017-08-31T15:35:52Z shka: can produce fast code 2017-08-31T15:35:58Z paule32: bytecode 2017-08-31T15:36:02Z shka: no 2017-08-31T15:36:03Z shka: code 2017-08-31T15:36:08Z paule32: native 2017-08-31T15:36:11Z shka: yes 2017-08-31T15:36:14Z paule32: cool 2017-08-31T15:36:21Z paule32: i have never check it 2017-08-31T15:36:32Z White_Flame: "steel bank" is just a pun off of "carnegie mellon", the industries those 2 names were in 2017-08-31T15:36:50Z paule32: \o/ 2017-08-31T15:37:02Z White_Flame: as it forked from CMUCL, from CMU 2017-08-31T15:38:04Z JuanDaugherty joined #lisp 2017-08-31T15:39:34Z paule32: what the average of the channel here? 2017-08-31T15:40:11Z shka: paule32: like user count? 2017-08-31T15:40:25Z paule32: for notice, i am 37 years old 2017-08-31T15:40:38Z paule32: shka: common 2017-08-31T15:40:45Z shka: ha, i don't think anybody knows that 2017-08-31T15:41:00Z Shinmera: I'm a toddler 2017-08-31T15:41:18Z paule32: very strong gurus here, i realize 2017-08-31T15:42:03Z paule32: i love grandpa's, they where slow, but have the stronges informations/skills 2017-08-31T15:42:13Z paule32: that is what i missed today 2017-08-31T15:43:35Z paule32: or the pioniers of computer - the holeplate makers 2017-08-31T15:43:37Z paule32: :-) 2017-08-31T15:43:56Z paule32: plate = papper 2017-08-31T15:44:16Z White_Flame: punchcard? 2017-08-31T15:44:43Z paule32: please sorry for my englisch, i learn it myself, so many idioms from german 2017-08-31T15:45:10Z knobo2 quit (Ping timeout: 248 seconds) 2017-08-31T15:45:40Z White_Flame: schlagkarte ;) 2017-08-31T15:46:00Z paule32: White_Flame: no, the cards that was read by hole reader 2017-08-31T15:46:03Z paule32: damm 2017-08-31T15:46:17Z paule32: missing the describe 2017-08-31T15:46:27Z White_Flame: yes, punchcards. just having fun with bad literalism in translating 2017-08-31T15:47:04Z BitPuffin|osx joined #lisp 2017-08-31T15:47:16Z White_Flame: https://www.google.com/search?q=punchcard&tbm=isch 2017-08-31T15:47:19Z paule32: lke a punch ... 2017-08-31T15:47:29Z paule32: a musican text 2017-08-31T15:47:31Z paule32: :-) 2017-08-31T15:47:36Z paule32: like 2017-08-31T15:47:38Z dieggsy joined #lisp 2017-08-31T15:48:09Z White_Flame: or schlagkarte, like that one Price Is Right game where you punch through paper holes... 2017-08-31T15:48:41Z White_Flame: anyway, this is getting a little #lispcafe 2017-08-31T15:51:09Z paule32: so i am little busy, dinner and coffe time 2017-08-31T15:52:05Z Murii|osx joined #lisp 2017-08-31T15:52:19Z EvW quit (Ping timeout: 246 seconds) 2017-08-31T15:53:02Z rafadc quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T15:55:34Z teggi joined #lisp 2017-08-31T15:57:23Z raynold joined #lisp 2017-08-31T15:59:14Z sellout- quit (Quit: Leaving.) 2017-08-31T16:02:31Z karswell joined #lisp 2017-08-31T16:02:33Z mrcom quit (Quit: This computer has gone to sleep) 2017-08-31T16:05:13Z dieggsy quit (Quit: ERC (IRC client for Emacs 26.0.50)) 2017-08-31T16:05:52Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T16:12:46Z sjl_ joined #lisp 2017-08-31T16:13:19Z sjl_ is now known as sjl 2017-08-31T16:13:28Z [jlk] quit (Ping timeout: 248 seconds) 2017-08-31T16:16:46Z DeadTrickster quit (Ping timeout: 240 seconds) 2017-08-31T16:19:22Z rpg joined #lisp 2017-08-31T16:20:07Z yonson quit (Quit: WeeChat 1.9) 2017-08-31T16:21:32Z Karl_Dscc joined #lisp 2017-08-31T16:21:51Z Kaisyu quit (Quit: Connection closed for inactivity) 2017-08-31T16:23:25Z manumanumanu: So,I am looking at common lisp as a beginner, and I have narrowed it down to either sbcl or ccl. In the remote future I might want to do some gui stuff. Is any one of them preferrable when it comes to that? 2017-08-31T16:23:26Z Suzuran42 joined #lisp 2017-08-31T16:23:47Z Shinmera: ain't like it's hard to switch anyway? 2017-08-31T16:24:01Z trinitr0n is now known as Encom_CEO 2017-08-31T16:24:18Z beach: manumanumanu: Unless you use an implementation-specific GUI library, you should be fine either way. 2017-08-31T16:24:55Z random-nick: ECL can use EQL for Qt 2017-08-31T16:25:22Z Shinmera: CCL and SBCL can use CommonQt. 2017-08-31T16:25:28Z random-nick: but most use GUI libraries use CFFI which is a FFI library which runs on multiple implementations 2017-08-31T16:25:41Z random-nick: Shinmera: isn't CommonQt only Qt4? 2017-08-31T16:25:48Z Shinmera: It is, but it's still Qt. 2017-08-31T16:27:02Z Suzuran42 quit (Read error: Connection reset by peer) 2017-08-31T16:27:14Z Suzuran42 joined #lisp 2017-08-31T16:27:42Z Suzuran quit (Ping timeout: 246 seconds) 2017-08-31T16:27:42Z Suzuran42 is now known as Suzuran 2017-08-31T16:28:49Z manumanumanu: random-nick: is eql qt4 or 5? 2017-08-31T16:29:08Z manumanumanu: Google says qt4 2017-08-31T16:29:15Z Encom_CEO is now known as trinitr0n 2017-08-31T16:29:26Z random-nick: manumanumanu: there's a qt4 version and a qt5 version 2017-08-31T16:31:19Z hjudt: hi! i encounter encoding problems when querying data with clsql-odbc and an oracle database. e.g. umlaut characters get converted into ascii, e.g. ä=>a. plain-odbc returns those fine. any idea what encoding types one needs to set for clsql that could solve the problem? on the other hand, i could stay with plain-odbc even if it is old, with last release in 2012. 2017-08-31T16:32:53Z mishoo_ joined #lisp 2017-08-31T16:38:01Z djh: Is there a way to make loop iterate over two variables at once? I know I can do (loop for (a b) in '((1 2)(3 4)) ... ) but I'd like to be able to supply just the list '(1 2 3 4) rather than have a list of pairs 2017-08-31T16:38:20Z Shinmera: just use two for clauses 2017-08-31T16:39:15Z djh: ..how? 2017-08-31T16:39:20Z neoncontrails quit (Remote host closed the connection) 2017-08-31T16:39:36Z Shinmera: by writing them down? 2017-08-31T16:39:57Z neoncontrails joined #lisp 2017-08-31T16:40:23Z sjl: (loop for (a b) on '(1 2 3 4) by #'cddr do (print (cons a b))) 2017-08-31T16:40:58Z Shinmera: Oh, iterating over a plist? 2017-08-31T16:41:04Z Shinmera: I got confused by "over two variables at once" 2017-08-31T16:41:15Z sjl: using `on` instead of `in` gives the entire list to the destructuring form, and using cddr to advance skips over two elements at a time 2017-08-31T16:41:27Z djh: ahhh 2017-08-31T16:41:29Z djh: tyvm! 2017-08-31T16:41:55Z sjl: although I'm unsure if destructuring (1 2 ...more) into (a b) is technically valid 2017-08-31T16:42:05Z Shinmera: It is. 2017-08-31T16:42:06Z m00natic quit (Read error: Connection reset by peer) 2017-08-31T16:42:18Z sjl: hm 2017-08-31T16:42:21Z Shinmera: Loop's destructuring is, for better or worse, not a lambda-list. 2017-08-31T16:42:26Z sjl: it's not in destructuring-bind 2017-08-31T16:42:34Z sjl: but loop's destructuring is weird 2017-08-31T16:42:56Z sjl: I guess (a b) is equivalent to (a b . nil) and nil is loop's "ignore this" 2017-08-31T16:43:17Z djh: that seems to work in my use-case, at any rate :) 2017-08-31T16:43:42Z djh: cheers! 2017-08-31T16:44:00Z Th30n joined #lisp 2017-08-31T16:44:16Z neoncontrails quit (Ping timeout: 240 seconds) 2017-08-31T16:46:04Z dieggsy joined #lisp 2017-08-31T16:49:03Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2017-08-31T16:51:03Z shka_ joined #lisp 2017-08-31T16:54:03Z Baggers joined #lisp 2017-08-31T16:57:53Z mfiano: Keep in mind that NIL can be used in regular destructuring-bind only on SBCL where it is treated as an empty list. This is not portable, and will fail elsewhere. 2017-08-31T16:58:04Z mfiano: Loop is different 2017-08-31T16:59:28Z paule32: manumanumanu: i plan a gui with Qt5.8 2017-08-31T17:00:32Z astronavt quit (Remote host closed the connection) 2017-08-31T17:01:10Z damke joined #lisp 2017-08-31T17:01:42Z defaultxr joined #lisp 2017-08-31T17:03:36Z damke_ quit (Ping timeout: 240 seconds) 2017-08-31T17:04:53Z dieggsy quit (Remote host closed the connection) 2017-08-31T17:05:12Z vydd joined #lisp 2017-08-31T17:05:12Z vydd quit (Changing host) 2017-08-31T17:05:12Z vydd joined #lisp 2017-08-31T17:07:47Z dieggsy joined #lisp 2017-08-31T17:08:05Z Xach: mfiano: can you elaborate more on the SBCL-specific behavior of destructuring-bind? 2017-08-31T17:08:39Z Xach: mfiano: my heart is trying to reject this info but my brain wants to know more 2017-08-31T17:09:09Z sjl: Xach: (destructuring-bind (a nil b) (list 1 () 2) (cons a b)) 2017-08-31T17:09:11Z mfiano: Xach: Sure. NIL can be used to ignore a binding in D-B, but only on SBCL. You should be using (declare (ignore ..)) though 2017-08-31T17:09:27Z sjl: oh huh (destructuring-bind (a nil b) (list 1 'foo 2) (cons a b)) 2017-08-31T17:09:31Z sjl: interesting 2017-08-31T17:09:34Z mfiano: Other implementations, will error on the spot. SBCL lets it pass, to be similar to LOOP 2017-08-31T17:09:47Z Xach: That sounds like a bug to me. 2017-08-31T17:09:53Z mfiano: Perhaps 2017-08-31T17:10:06Z _death: I think "can be used" may be a bit misleading 2017-08-31T17:10:06Z Xach: mfiano: do you know if this has been discussed sometime in the past? 2017-08-31T17:10:33Z mfiano: Xach: Only that pjb said NOT to do it. I'm not sure if it is a bug or not, but this came up recently, because for about a decade I was doing that! 2017-08-31T17:10:48Z warweasle quit (Quit: need to work...) 2017-08-31T17:11:35Z paule32: maybe event vs. signal handling 2017-08-31T17:12:44Z epony joined #lisp 2017-08-31T17:13:58Z sjl: yeah this seems to violate the spec 2017-08-31T17:14:01Z sjl: clhs 3.4.4.1.1 2017-08-31T17:14:01Z |3b|: yeah, sbcl seems to have some bugs on argument count mismatch detection for destructuring 2017-08-31T17:14:01Z specbot: Data-directed Destructuring by Lambda Lists: http://www.lispworks.com/reference/HyperSpec/Body/03_ddaa.htm 2017-08-31T17:14:14Z sjl: > Wherever a component is to be extracted, a symbol appears in the pattern; this symbol is the name of the variable whose value will be that component. 2017-08-31T17:14:28Z sjl: nil is a symbol, but I don't think it's a valid variable name 2017-08-31T17:14:52Z _death: nil is also (), so my common sense tells me it should match nil only 2017-08-31T17:15:01Z mfiano: Well this bug has existed since I started using CL almost a decade ago. 2017-08-31T17:15:15Z sjl: I mean, it's handy 2017-08-31T17:15:15Z _death: but the spec doesn't say so, I believe 2017-08-31T17:15:19Z mfiano: It was just this month (maybe last) that I brought this up. 2017-08-31T17:15:27Z |3b|: yeah, matching empty list seems reasonable, but matching an atom or non-empty list doesn't 2017-08-31T17:15:44Z sjl: _death: that's true, one could argue that it should match exactly nil/() and nothing else 2017-08-31T17:16:12Z aeth quit (Read error: Connection reset by peer) 2017-08-31T17:16:40Z aeth joined #lisp 2017-08-31T17:20:03Z neoncontrails joined #lisp 2017-08-31T17:20:05Z Mon_Ouie quit (Quit: WeeChat 1.9) 2017-08-31T17:21:36Z mazoe quit (Ping timeout: 240 seconds) 2017-08-31T17:21:36Z _death: maybe the spec does say that after all 2017-08-31T17:23:53Z yrk quit (Read error: Connection reset by peer) 2017-08-31T17:23:56Z varjag joined #lisp 2017-08-31T17:24:36Z _death: clhs 3.4.4.1 2017-08-31T17:24:36Z specbot: Destructuring by Lambda Lists: http://www.lispworks.com/reference/HyperSpec/Body/03_dda.htm 2017-08-31T17:25:44Z _death: the first paragraph suggests that () is ok and interpreted as an empty list 2017-08-31T17:27:42Z sjl: yeah, though the one I pasted before seems to contradict that, because nil is both a list and a symbol 2017-08-31T17:28:07Z sjl: but since a variable can't be named nil, it seems to be saner to say nil == empty list 2017-08-31T17:28:14Z sjl: which is not what SBCL does 2017-08-31T17:28:18Z vlatkoB_ joined #lisp 2017-08-31T17:28:19Z _death: but nil cannot serve as a parameter name 2017-08-31T17:28:37Z knobo2 joined #lisp 2017-08-31T17:28:50Z sjl: either way, nil being used to ignore a form is definitely not in there 2017-08-31T17:28:52Z _death: right 2017-08-31T17:29:16Z DeadTrickster joined #lisp 2017-08-31T17:32:03Z vlatkoB quit (Ping timeout: 240 seconds) 2017-08-31T17:32:05Z mfiano: Wonder how many more decades it will be a bug. Has this _ever_ been reported? 2017-08-31T17:32:52Z al-damiri quit (Quit: Connection closed for inactivity) 2017-08-31T17:36:50Z Xach: I wonder if any project relies on it. 2017-08-31T17:37:54Z _death: Xach: conceivably it could provide some error checking, say for macros that make use of destructuring-bind 2017-08-31T17:38:02Z Xach: yes 2017-08-31T17:38:16Z Kyo91_ quit (Ping timeout: 240 seconds) 2017-08-31T17:38:43Z jfrancis: Looks handy. If I had discovered it worked, I would have been using it. I tend to only use SBCL, so I probably would never have realized it didn't work anywhere else. 2017-08-31T17:39:41Z _death: jfrancis: that's not a good approach to programming :).. it's better to know that it should work by reading the authoritative document 2017-08-31T17:39:45Z jackdaniel: I'll add test for that to ansi-tests 2017-08-31T17:40:24Z yrk joined #lisp 2017-08-31T17:40:32Z |3b|: yeah, seems like the sort of thing sbcl devs would be more likely to fix than intentionally keep, so i wouldn't rely on it even for sbcl only 2017-08-31T17:40:56Z DGASAU quit (Ping timeout: 248 seconds) 2017-08-31T17:41:26Z mfiano: I tend to have very bad luck with talking to stassats about bugs. I refuse to go to #sbcl. Perhaps the mailing list would be better. 2017-08-31T17:41:49Z |3b|: filing a bug on launchpad would probably be reasonable 2017-08-31T17:42:06Z |3b| thought i did last time it came up, but apparently not :( 2017-08-31T17:42:24Z jfrancis: _death: you're right. but if I accidentally happened upon it, I probably never would have thought to make sure it was valid. at least subconciously, I would have assumed that if it works, it's legal 2017-08-31T17:42:56Z jackdaniel: I've carried question to #sbcl 2017-08-31T17:43:08Z teggi quit (Quit: Leaving...) 2017-08-31T17:43:41Z _death: jfrancis: yep.. when people have this mindset, it is usually only (bad) experience that causes them to change it 2017-08-31T17:43:52Z mfiano: That can be a very costly assumption 2017-08-31T17:44:18Z jfrancis: :D 2017-08-31T17:44:28Z kang0 joined #lisp 2017-08-31T17:44:34Z Murii|osx quit (Quit: My MacBook Air has gone to sleep. ZZZzzz…) 2017-08-31T17:44:38Z kang0: Elisp comes under lisp? 2017-08-31T17:44:50Z mfiano: This channel is for Common Lisp 2017-08-31T17:45:04Z mfiano: I think you want #emacs or ##lisp 2017-08-31T17:45:18Z _death: jfrancis: but then I did C++ for years prior to learning Lisp and worked with big codebases :) 2017-08-31T17:45:44Z _death: and then, it's much harder to get away with that approach 2017-08-31T17:45:49Z kang0: (kang0) I want to learn code by work 2017-08-31T17:45:53Z kang0: (kang0) (kang0) Anyone looking for assistant? 2017-08-31T17:46:28Z jackdaniel: kang0: pick maintained open source project with dozen of bugs and try to fix them 2017-08-31T17:46:41Z kang0: Can you link me few? 2017-08-31T17:46:50Z kang0: I wish a direct partner 2017-08-31T17:47:00Z kang0: Chat partner Cum mentor 2017-08-31T17:47:26Z dyelar quit (Quit: Leaving.) 2017-08-31T17:47:39Z jfrancis: Sigh. emacs-current semi-broken with slime: error in process filter: Wrong number of arguments: (0 . 1), 2 2017-08-31T17:47:42Z jackdaniel: this projects are at least maintained: http://blog.quicklisp.org/2017/08/august-2017-quicklisp-dist-update-now.html 2017-08-31T17:47:58Z jfrancis: Had to pull a week-old version. Too much to do to try to debug emacs itself. :D 2017-08-31T17:48:08Z _death: kang0: there was https://github.com/Lisp-Guild/lisp-todo/projects/1 2017-08-31T17:48:58Z _death: jfrancis: hmm, I also had to fix an issue there.. maybe it's the same issue 2017-08-31T17:49:45Z Kyo91_ joined #lisp 2017-08-31T17:49:58Z _death: jfrancis: try http://paste.lisp.org/display/354818 2017-08-31T17:50:43Z jfrancis: slime was broken with the version of sbcl available in apt on ubuntu mint. So I decided to upgrade everything (sbcl, emacs, slime). upgrading sbcl fixed the slime issue. upgrading emacs broke slime again in a different way. kept new slime and new sbcl, rolled back to older emacs, now I can work again. 2017-08-31T17:51:10Z DGASAU joined #lisp 2017-08-31T17:51:35Z dyelar joined #lisp 2017-08-31T17:51:42Z _death: I usually use "cutting-edge" emacs/sbcl/slime 2017-08-31T17:52:38Z jfrancis: _death: that paste certainly *smells* like the right fix. will poke at it later this afternoon. I have some deliverables (which yes, I'm currently avoiding by reading irc). 2017-08-31T17:52:49Z jfrancis: (for the first time in a year or so) 2017-08-31T17:58:16Z damke quit (Ping timeout: 240 seconds) 2017-08-31T17:58:44Z amer joined #lisp 2017-08-31T17:58:49Z kang0: Which are other wonderful books like sicp and htdp 2017-08-31T18:00:08Z amerlyq quit (Ping timeout: 248 seconds) 2017-08-31T18:02:40Z Th30n quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-08-31T18:02:56Z sellout- joined #lisp 2017-08-31T18:03:34Z Kyo91_ quit (Read error: Connection reset by peer) 2017-08-31T18:04:37Z Kyo91 joined #lisp 2017-08-31T18:04:47Z paule32: (defgeneric exec (app)) 2017-08-31T18:04:59Z paule32: app refers to class application 2017-08-31T18:05:22Z paule32: when use cffi 2017-08-31T18:05:33Z paule32: what is app? a pointer? 2017-08-31T18:06:20Z paule32: when this pointer is a pointer to a c++ class, can i wrap it through cffi 2017-08-31T18:13:12Z dieggsy quit (Quit: ERC (IRC client for Emacs 26.0.50)) 2017-08-31T18:14:08Z dieggsy joined #lisp 2017-08-31T18:16:28Z Amplituhedron quit (Ping timeout: 252 seconds) 2017-08-31T18:19:23Z random-nick quit (Remote host closed the connection) 2017-08-31T18:19:27Z [jlk] joined #lisp 2017-08-31T18:20:52Z jackdaniel: minion: tell kang0 about gentle 2017-08-31T18:20:52Z minion: kang0: please look at gentle: "Common Lisp: A Gentle Introduction to Symbolic Computation" is a smoother introduction to lisp programming. http://www.cs.cmu.edu/~dst/LispBook/ 2017-08-31T18:20:56Z brendyn quit (Ping timeout: 248 seconds) 2017-08-31T18:26:01Z Jesin joined #lisp 2017-08-31T18:26:50Z lnostdal joined #lisp 2017-08-31T18:27:49Z AxelAlex joined #lisp 2017-08-31T18:32:10Z Bock quit (Ping timeout: 240 seconds) 2017-08-31T18:38:49Z drmeister: Hi lispers - re my question yesterday and beach's fast generic function implementation. 2017-08-31T18:39:18Z drmeister: I can never invalidate generic functions - I need to maintain dispatchers for key CLOS generic functions all the time. 2017-08-31T18:39:40Z drmeister: So adding and removing methods needs to force recompilation of the dispatch function. 2017-08-31T18:39:58Z drmeister: It may be possible to do this lazily - I'm going to do it immediately for now. 2017-08-31T18:40:50Z Bike: i don't see a lot of reason to do it lazily, adding and removing methods doesn't happen very much 2017-08-31T18:40:59Z Bike: clasp's compiler is slllllow so it will be more noticeable of course 2017-08-31T18:40:59Z JuanDaugherty: htdp? 2017-08-31T18:41:13Z drmeister: Well, there are startup times - but lets see what happens. 2017-08-31T18:41:30Z drmeister: This uses a special purpose compiler. 2017-08-31T18:42:02Z drmeister: That's something I want to explore more with Clasp - compiled domain specific languages. 2017-08-31T18:42:16Z phoe quit (Ping timeout: 240 seconds) 2017-08-31T18:42:36Z drmeister: The cmpgf.lsp code is that. 2017-08-31T18:43:59Z drmeister: The generic-function-call-history is the language, the compiled dispatcher that searches it for a list of arguments is the compiled output. 2017-08-31T18:44:19Z sellout- quit (Quit: Leaving.) 2017-08-31T18:44:22Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-31T18:44:25Z shka_: drmeister: does that new implementation was already benchmarked? 2017-08-31T18:44:31Z Murii|osx joined #lisp 2017-08-31T18:44:52Z ryan_vw joined #lisp 2017-08-31T18:48:15Z random-nick joined #lisp 2017-08-31T18:52:04Z JuanDaugherty quit (Quit: Ex-Chat) 2017-08-31T18:56:10Z Kyo91 joined #lisp 2017-08-31T18:56:12Z kang0: . (kang0) (kang0) (mfiano) Install Slime, sbcl, quicklisp, paredit (or equivalent), and hack away 2017-08-31T18:56:22Z kang0: Can you explain me what's this 2017-08-31T18:56:27Z mfiano: Please stop spamming that in every channel 2017-08-31T18:56:48Z kang0: Wait for few minutes 2017-08-31T18:56:53Z kang0: May be resolved soon 2017-08-31T18:57:13Z random-nick quit (Remote host closed the connection) 2017-08-31T18:57:14Z dustyweb is now known as paroneayea 2017-08-31T18:57:25Z paroneayea is now known as dustyweb 2017-08-31T18:58:39Z kang0: Any website För online elisp? 2017-08-31T18:58:50Z Suzuran42 joined #lisp 2017-08-31T18:59:14Z random-nick joined #lisp 2017-08-31T19:00:00Z phoe joined #lisp 2017-08-31T19:01:00Z EvW joined #lisp 2017-08-31T19:01:42Z Suzuran quit (Ping timeout: 246 seconds) 2017-08-31T19:02:15Z Suzuran joined #lisp 2017-08-31T19:04:08Z Suzuran42 quit (Ping timeout: 246 seconds) 2017-08-31T19:05:57Z jerme joined #lisp 2017-08-31T19:07:12Z phadthai quit (Ping timeout: 260 seconds) 2017-08-31T19:08:23Z Ven joined #lisp 2017-08-31T19:08:47Z Ven is now known as Guest78495 2017-08-31T19:10:43Z phadthai joined #lisp 2017-08-31T19:14:55Z Guest78495 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T19:16:22Z knobo2 quit (Ping timeout: 248 seconds) 2017-08-31T19:23:22Z paule32: http://paste.lisp.org/display/354828 2017-08-31T19:23:24Z scymtym quit (Ping timeout: 240 seconds) 2017-08-31T19:23:51Z paule32: what has a "pointer" to do with a list? 2017-08-31T19:25:45Z tessier quit (Ping timeout: 255 seconds) 2017-08-31T19:26:08Z jackdaniel: paule32: your declaration is wrong 2017-08-31T19:26:19Z jackdaniel: you have (defcfun "KALLUP_init_app" kallup-init-app *application-id*) 2017-08-31T19:26:22Z Bike: defcfun doesn't evaluate its arguments, i don't think 2017-08-31T19:26:53Z jackdaniel: that should be (defcfun ("KALLUP_init_app" kallup-init-app) :pointer) 2017-08-31T19:27:13Z jackdaniel: note, that you put *application-id* as third argument, which is reserved for function arguments 2017-08-31T19:27:18Z jackdaniel: second argument is for returned type 2017-08-31T19:27:33Z paule32: oh thank you 2017-08-31T19:27:35Z jackdaniel: also, as Bike mentioned, defcfun doesn't evaluate its arguments 2017-08-31T19:30:12Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T19:31:27Z pjb: paule32: your naming convention is wrong. Type must not be named with stars around. This is reserved for dynamic variables! 2017-08-31T19:31:52Z paule32: oh 2017-08-31T19:32:07Z pjb: paule32: you are still trying to pilot a Boeing 747 without even knowing how to walk! 2017-08-31T19:32:32Z paule32: joking 2017-08-31T19:32:36Z pjb: I'm not. 2017-08-31T19:32:42Z jackdaniel: well, that *might* be fun if you can do re-do's :) 2017-08-31T19:34:16Z pjb: paule32: for example, you're trying to write a Qt5 application in Common Lisp, and you don't even know that initialize-instance lambda-list should end in a &allow-other-keys. 2017-08-31T19:34:48Z pjb: You should put your project on rest for at least one year, and concentrate on learning the language. 2017-08-31T19:35:14Z paule32: \o/ 2017-08-31T19:35:18Z pjb: How could a baby you can just barely say "Papa" and "Mama" try to pilot a 747 and communicate meaningfully with the tower? 2017-08-31T19:35:33Z pjb: Stop what you're doing right now, and read a CL tutorial! 2017-08-31T19:35:42Z paule32: baby brabbel language 2017-08-31T19:36:36Z paule32: last night, i have download common lisp practicable 2017-08-31T19:36:54Z paule32: over 800 sides in pdf 2017-08-31T19:36:56Z shka_: btw, flying is easier part, landing can be problematic ;-) 2017-08-31T19:37:07Z paule32: yeah 2017-08-31T19:37:19Z shka_: good night all 2017-08-31T19:38:39Z paule32: a mexican guy want to leave mexico to go usa. on the border, he was killed by a gun from a soldiar on the half way - the question is now, where will be grave on? 2017-08-31T19:39:01Z Shinmera: Not in this channel, that's for sure. 2017-08-31T19:39:05Z phoe: ^ 2017-08-31T19:39:12Z paule32: ok 2017-08-31T19:39:14Z phoe: #lispcafe might be a better place for that 2017-08-31T19:39:15Z paule32: sorry 2017-08-31T19:39:34Z rafadc joined #lisp 2017-08-31T19:42:32Z jerme left #lisp 2017-08-31T19:45:42Z shka_ quit (Ping timeout: 248 seconds) 2017-08-31T19:48:20Z mazoe joined #lisp 2017-08-31T19:48:27Z drmeister: shka: Sorry - I don't understand the question. Was clasp benchmarked or the generic function dispatch method? 2017-08-31T19:48:50Z Baggers quit (Remote host closed the connection) 2017-08-31T19:49:26Z eschatologist quit (Quit: ZNC 1.6.4+deb1 - http://znc.in) 2017-08-31T19:51:12Z eschatologist joined #lisp 2017-08-31T19:53:05Z Murii|osx quit (Quit: Textual IRC Client: www.textualapp.com) 2017-08-31T19:53:16Z st` joined #lisp 2017-08-31T19:56:40Z dyelar quit (Quit: Leaving.) 2017-08-31T19:59:47Z krasnal quit (Ping timeout: 246 seconds) 2017-08-31T20:05:35Z mazoe quit (Quit: mazoe) 2017-08-31T20:06:31Z dyelar joined #lisp 2017-08-31T20:08:57Z dez quit (Disconnected by services) 2017-08-31T20:10:34Z kuwze quit (Ping timeout: 260 seconds) 2017-08-31T20:14:53Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-31T20:15:34Z DeadTrickster joined #lisp 2017-08-31T20:18:58Z scymtym joined #lisp 2017-08-31T20:19:34Z sellout- joined #lisp 2017-08-31T20:21:38Z vlatkoB_ quit (Remote host closed the connection) 2017-08-31T20:22:01Z sellout- quit (Client Quit) 2017-08-31T20:25:29Z pillton: How many times should the EXAMPLE macro be expanded when compiling example.lisp at http://paste.lisp.org/display/354829 ? 2017-08-31T20:25:39Z sellout- joined #lisp 2017-08-31T20:26:31Z Shinmera: As many times as the implementation wants. 2017-08-31T20:27:38Z pjb: Yes, it could even change from one compilation to the other (eg. depending on the memory load, or depending on the optimization levels). 2017-08-31T20:27:50Z mfiano: Also on inlining 2017-08-31T20:29:28Z pjb: Also, while execution from left to right is specified, AFAIK, macroexpansion could be performed in a different order, so your two calls to example in the eval-when could be expanded in a surprising order. 2017-08-31T20:31:05Z pjb: ie. if you had two macros, A and B, any sequence of expansions matching (A+B|B+A)(A|B)* is possible, AFAIUI. 2017-08-31T20:32:29Z pillton: Hmm... 2017-08-31T20:33:27Z Bike: side effects in macros are Bad 2017-08-31T20:34:02Z pillton: Only because of this reason. 2017-08-31T20:34:12Z angavrilov quit (Remote host closed the connection) 2017-08-31T20:34:20Z Shinmera: Nah 2017-08-31T20:35:03Z Bike: side effects in macros are bad because there is no order of evaluation at all even to the extent of a count. yeah, sure. 2017-08-31T20:35:40Z Shinmera: It's also Bad™ because it makes compilation non-deterministic. 2017-08-31T20:35:56Z pjb: Bike: well, the order on the toplevel is specified. So for toplevel macros, it's ok. 2017-08-31T20:36:58Z Bike: fundamentally, there's no restriction that macros are onlye xpanded by compile and compile file, or something 2017-08-31T20:37:09Z Bike: editor's free to, for instance 2017-08-31T20:37:26Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-08-31T20:37:53Z pjb: and debuggers, etc. 2017-08-31T20:39:50Z pillton: This situation is bad even for non destructive macros. Consider macros which expand to `(progn (defun ,(gensym) ...) ...). 2017-08-31T20:40:33Z kuwze joined #lisp 2017-08-31T20:40:33Z pjb: This is why, if you need cross-macro-call information passing, you should wrap them in a macro that will mediate it. 2017-08-31T20:40:50Z Bike: the particular identity of the gensym shouldn't really matter 2017-08-31T20:42:21Z pjb: Sometimes it's stored in a variable or hash-table, etc, so you would want to make sure it's correctly updated when you re-evaluate the macro. 2017-08-31T20:42:27Z Shinmera: Also, gensym technically side-effects, so ;) 2017-08-31T20:44:47Z kang0 quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2017-08-31T20:46:43Z pillton: I'm not sure I agree with that either. defclass doesn't do it with respect init forms for example. 2017-08-31T20:46:51Z pillton: Anyway, it is what it is. 2017-08-31T20:47:23Z tessier joined #lisp 2017-08-31T20:47:23Z tessier quit (Changing host) 2017-08-31T20:47:23Z tessier joined #lisp 2017-08-31T20:48:51Z Bike: er... doesn't do what with respect to init forms? 2017-08-31T20:50:57Z sellout- quit (Quit: Leaving.) 2017-08-31T20:54:59Z gabriel_laddel_p joined #lisp 2017-08-31T20:55:20Z random-nick quit (Remote host closed the connection) 2017-08-31T20:55:35Z gabriel_laddel_p quit (Changing host) 2017-08-31T20:55:35Z gabriel_laddel_p joined #lisp 2017-08-31T20:55:35Z gabriel_laddel_p quit (Changing host) 2017-08-31T20:55:35Z gabriel_laddel_p joined #lisp 2017-08-31T20:58:43Z pillton: Doesn't matter. If you had init forms which required cross-macro-call information passing you would need to wrap a defclass form with a with-my-crazy-stuff macro. 2017-08-31T20:59:35Z Bike: huh?? 2017-08-31T21:01:26Z pillton: Shinmera: Thanks for pointing out the gensym problem. My mistake. 2017-08-31T21:02:18Z pillton: Bike: Sorry. I have to go. 2017-08-31T21:02:42Z Bike: boy howdy, i'm confused 2017-08-31T21:05:14Z pillton: Sorry. I have to get to work. 2017-08-31T21:05:22Z pillton: Thanks everyone for the help. 2017-08-31T21:05:35Z stylewarning: Crazy lispers 2017-08-31T21:11:35Z rafadc quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T21:12:28Z pierpa joined #lisp 2017-08-31T21:14:07Z sellout- joined #lisp 2017-08-31T21:16:54Z st` quit (Ping timeout: 248 seconds) 2017-08-31T21:23:05Z jack_rabbit joined #lisp 2017-08-31T21:27:10Z Karl_Dscc quit (Remote host closed the connection) 2017-08-31T21:29:26Z rpg joined #lisp 2017-08-31T21:32:33Z JohnTalent joined #lisp 2017-08-31T21:33:15Z JohnTalent: Didn't #lisp once have like 1186 people in here on the daily? 2017-08-31T21:35:59Z phinxy joined #lisp 2017-08-31T21:37:43Z phoe: JohnTalent: 1186 people? that sounds like a pretty huge record 2017-08-31T21:37:46Z phoe: why do you ask? 2017-08-31T21:39:24Z dieggsy quit (Quit: ERC (IRC client for Emacs 26.0.50)) 2017-08-31T21:40:32Z pjb: I thought it was usually around 300. 2017-08-31T21:40:51Z phinxy left #lisp 2017-08-31T21:41:39Z vydd quit (Ping timeout: 240 seconds) 2017-08-31T21:55:53Z DeadTrickster quit (Read error: Connection reset by peer) 2017-08-31T21:56:20Z DeadTrickster joined #lisp 2017-08-31T21:57:57Z Jesin quit (Quit: Leaving) 2017-08-31T21:58:09Z varjag quit (Ping timeout: 240 seconds) 2017-08-31T21:59:39Z eazar001 joined #lisp 2017-08-31T22:00:19Z Amplituhedron joined #lisp 2017-08-31T22:01:36Z gabriel_laddel_p quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2017-08-31T22:01:54Z Jesin joined #lisp 2017-08-31T22:08:19Z clintm: That's an oddly specific number.... 2017-08-31T22:08:33Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-08-31T22:13:21Z MrBismuth joined #lisp 2017-08-31T22:14:09Z mfiano: 491 was the record in last 9 or so years 2017-08-31T22:14:09Z Kyo91 quit (Ping timeout: 240 seconds) 2017-08-31T22:14:30Z mfiano: That was 2y62d ago 2017-08-31T22:16:09Z MrBusiness quit (Ping timeout: 240 seconds) 2017-08-31T22:26:12Z attila_lendvai joined #lisp 2017-08-31T22:27:35Z pjb: You can take the logs and do precise statistics. 2017-08-31T22:40:58Z phoe quit (Ping timeout: 255 seconds) 2017-08-31T22:44:14Z rpg joined #lisp 2017-08-31T22:53:58Z mishoo_ quit (Ping timeout: 248 seconds) 2017-08-31T23:01:21Z wigust joined #lisp 2017-08-31T23:01:37Z JuanDaugherty joined #lisp 2017-08-31T23:04:04Z pillton: Bike: I've lost my train of thought with respect to my defclass comment. Defclass isn't a very good example because of the compile time semantics (see http://paste.lisp.org/display/354843). 2017-08-31T23:06:34Z lambdice joined #lisp 2017-08-31T23:06:58Z lambdice: hello all, i am curious to know if some people here use lisp for solving machine learning ? 2017-08-31T23:07:09Z pillton: Yes. 2017-08-31T23:07:25Z lambdice: i know pythin is well used (they have some good library) and ofc octave or matlab 2017-08-31T23:07:44Z JuanDaugherty: it's "pythong" 2017-08-31T23:08:01Z lambdice: pillton: nice :), you use lisp for machine learning ? 2017-08-31T23:08:14Z pillton: Yes 2017-08-31T23:08:50Z lambdice: pillton: well i browsed a bit the net, and seem all the library are pretty old.. maybe not outdated but it seems you have to developp your proper tools for this ? 2017-08-31T23:08:55Z JuanDaugherty: no I don't even use machine learning which to me is dummy down cooptation of a part of what used to be called artificial intelligence 2017-08-31T23:09:17Z JuanDaugherty: which google and other slaver bitches sat and or shat on 2017-08-31T23:09:18Z lambdice: JuanDaugherty: lets say machine learning is a buzzword ofc, :) 2017-08-31T23:09:41Z lambdice: JuanDaugherty: but i am not sure of this, but we can say that machine learning is a subset of artificial intelligence 2017-08-31T23:10:23Z JuanDaugherty: since in said circles lisp is declasse you are likely to find more stuff in other langs 2017-08-31T23:10:47Z pillton: lambdice: I use my own stuff. I haven't looked at others. 2017-08-31T23:11:15Z edgar-rft quit (Ping timeout: 240 seconds) 2017-08-31T23:11:20Z lambdice: JuanDaugherty: i dont want to find other stuff in other langs i want to use lisp :) 2017-08-31T23:11:42Z lambdice: JuanDaugherty: the problem is just that some algo are really hard to understand as a neophyt like me in mathematics 2017-08-31T23:12:04Z JuanDaugherty: well follow (your bliss) 2017-08-31T23:12:51Z JuanDaugherty is looking for somekina continuous gc, some work around for stop the world 2017-08-31T23:13:24Z smazga quit (Quit: leaving) 2017-08-31T23:13:59Z zooey quit (Remote host closed the connection) 2017-08-31T23:14:05Z lambdice: pillton: well i will try to make my own stuff too, pretty sure it is easy for basic linear or logistic regression, but not sure about the other big stuff 2017-08-31T23:14:17Z zooey joined #lisp 2017-08-31T23:16:46Z JuanDaugherty: "lisp machine learning" turned up a bunch of stuff at github, likely pillton's as well 2017-08-31T23:17:24Z JuanDaugherty: also you might check out #scheme/racket if ur not fixed on cl 2017-08-31T23:17:48Z pillton: I haven't released any of my stuff yet. 2017-08-31T23:17:54Z Bike: pillton: i mean i have no idea how initforms came into it or anything... and i don't think any standard macro is side effecting except for trivial things like gensym 2017-08-31T23:18:24Z lambdice: JuanDaugherty: thx 2017-08-31T23:18:29Z lambdice: pillton: maybe 1 day :) 2017-08-31T23:18:31Z edgar-rft joined #lisp 2017-08-31T23:21:22Z pillton: Well, the init forms in a defclass form need to be processed because minimal compilation. The fact that defclass has to provide a stub at compile time suggests that any macros in the init forms may be expanded more then once. 2017-08-31T23:22:09Z pjb: Obviously. 2017-08-31T23:22:10Z Bike: the initforms aren't needed for the stub 2017-08-31T23:22:15Z pillton: I think that is where I was going with it. 2017-08-31T23:23:50Z JuanDaugherty: lambdice, also you should not be deterred by a lisp pkg being old, many perhaps most of the best ones are 2017-08-31T23:24:44Z lambdice: JuanDaugherty: yeah indeed, the algo are the same since a some decades so i will give it a try 2017-08-31T23:25:46Z JuanDaugherty: usually if it's CL of at least the late 80s, porting to a current implementation is not that big of deal 2017-08-31T23:26:41Z lambdice: JuanDaugherty: how can you judge if a CL library is good or not ? 2017-08-31T23:27:07Z pjb: read the source. 2017-08-31T23:27:11Z lambdice: JuanDaugherty: nowdays, 1) you need a github, 2) a lot of followers on it 3) commit at least every week haha 2017-08-31T23:27:12Z JuanDaugherty: compile it as see if it works? did it have a history of actual use? stuff like that 2017-08-31T23:27:19Z JuanDaugherty: *and see 2017-08-31T23:27:36Z lambdice: pjb: yeah the good way, aka the old way 2017-08-31T23:28:36Z dddddd quit (Quit: Hasta otra..) 2017-08-31T23:28:36Z margeas joined #lisp 2017-08-31T23:28:48Z nachoBA joined #lisp 2017-08-31T23:29:29Z sveit quit (Quit: Bye) 2017-08-31T23:31:49Z EvW quit (Ping timeout: 255 seconds) 2017-08-31T23:32:27Z MetaYan joined #lisp 2017-08-31T23:39:50Z margeas quit (Ping timeout: 248 seconds) 2017-08-31T23:39:50Z mrcom joined #lisp 2017-08-31T23:41:13Z wxie joined #lisp 2017-08-31T23:44:19Z wxie quit (Client Quit) 2017-08-31T23:54:17Z eazar001 quit (Quit: WeeChat 1.5) 2017-08-31T23:54:43Z pjb quit (Ping timeout: 252 seconds)