2016-11-25T00:01:54Z ovenpasta quit (Ping timeout: 258 seconds) 2016-11-25T00:05:00Z ovenpasta joined #lisp 2016-11-25T00:08:42Z BusFactor1 quit (Ping timeout: 256 seconds) 2016-11-25T00:12:14Z NeverDie quit (Quit: http://radiux.io/) 2016-11-25T00:13:23Z ovenpasta1 joined #lisp 2016-11-25T00:14:33Z ovenpasta quit (Ping timeout: 268 seconds) 2016-11-25T00:14:33Z ovenpasta1 is now known as ovenpasta 2016-11-25T00:23:42Z mrottenkolber quit (Ping timeout: 265 seconds) 2016-11-25T00:26:16Z Tarap quit (Ping timeout: 268 seconds) 2016-11-25T00:31:25Z stepnem quit (Ping timeout: 250 seconds) 2016-11-25T00:33:55Z al-damiri quit (Quit: Connection closed for inactivity) 2016-11-25T00:50:26Z NeverDie joined #lisp 2016-11-25T00:52:56Z slyrus_ joined #lisp 2016-11-25T00:58:17Z mathrick_ is now known as mathrick 2016-11-25T01:01:15Z ovenpasta quit (Ping timeout: 260 seconds) 2016-11-25T01:03:52Z nilof joined #lisp 2016-11-25T01:04:10Z nilof: Is there an analog of mapcar for vectors? 2016-11-25T01:04:34Z Xach: nilof: map will do it 2016-11-25T01:08:10Z shdeng joined #lisp 2016-11-25T01:19:13Z EvW quit (Ping timeout: 245 seconds) 2016-11-25T01:24:45Z bocaneri joined #lisp 2016-11-25T01:26:42Z mishoo quit (Ping timeout: 268 seconds) 2016-11-25T01:30:57Z bgg_ joined #lisp 2016-11-25T01:36:31Z bobo quit (Quit: Leaving) 2016-11-25T01:40:25Z BitPuffin|osx joined #lisp 2016-11-25T01:45:07Z Einwq quit (Ping timeout: 260 seconds) 2016-11-25T02:09:42Z bgg_ quit (Read error: Connection reset by peer) 2016-11-25T02:19:56Z stardiviner joined #lisp 2016-11-25T02:20:30Z jfe joined #lisp 2016-11-25T02:36:23Z tgips joined #lisp 2016-11-25T02:39:18Z tgips left #lisp 2016-11-25T02:57:24Z NeverDie quit (Quit: http://radiux.io/) 2016-11-25T02:58:23Z NeverDie joined #lisp 2016-11-25T02:58:27Z jlarocco joined #lisp 2016-11-25T03:03:55Z robotoad joined #lisp 2016-11-25T03:05:59Z django_ joined #lisp 2016-11-25T03:06:15Z jlarocco: where's a good place to ask questions about lispbuilder-sdl? 2016-11-25T03:07:13Z jlarocco: it seems broken on OSX 2016-11-25T03:15:10Z axion: jlarocco: #lispgames, but keep in mind that is old, unmaintained, and not for sdl2. 2016-11-25T03:19:31Z FreeBirdLjj quit (Remote host closed the connection) 2016-11-25T03:19:54Z travv0 joined #lisp 2016-11-25T03:24:07Z robotoad quit (Quit: robotoad) 2016-11-25T03:26:46Z jusss joined #lisp 2016-11-25T03:27:06Z NeverDie quit (Quit: http://radiux.io/) 2016-11-25T03:27:42Z NeverDie joined #lisp 2016-11-25T03:27:51Z jusss: I'm trying use quicklisp to install slime, but get a 404 when it download asdf.lisp 2016-11-25T03:28:19Z jusss: Connecting to www.quicklisp.org (www.quicklisp.org)|198.100.148.110|:443... connected. HTTP request sent, awaiting response... 404 Not Found 2016-11-25T03:29:01Z jusss: is it normal? 2016-11-25T03:29:41Z jusss: I use 'wget http://quicklisp.org/asdf/asdf.lisp' 2016-11-25T03:31:20Z robotoad joined #lisp 2016-11-25T03:32:04Z BitPuffin|osx quit (Ping timeout: 260 seconds) 2016-11-25T03:35:05Z jfe quit (Ping timeout: 256 seconds) 2016-11-25T03:43:55Z django_: vtomole, hey you around? 2016-11-25T03:45:53Z jusss quit (Ping timeout: 260 seconds) 2016-11-25T03:48:41Z fluter quit (Ping timeout: 256 seconds) 2016-11-25T03:51:52Z Fare joined #lisp 2016-11-25T04:02:10Z test1600 joined #lisp 2016-11-25T04:13:57Z django_ quit (Ping timeout: 248 seconds) 2016-11-25T04:15:32Z nilof quit (Quit: Going offline, see ya! (www.adiirc.com)) 2016-11-25T04:21:21Z akkad hunts for core-crypto or ecc-crypto-b571 libs 2016-11-25T04:23:33Z Fare quit (Ping timeout: 248 seconds) 2016-11-25T04:23:45Z arescorpio joined #lisp 2016-11-25T04:36:30Z FreeBirdLjj joined #lisp 2016-11-25T04:39:19Z pyx joined #lisp 2016-11-25T04:46:24Z jokleinn joined #lisp 2016-11-25T04:53:04Z FreeBirdLjj quit (Remote host closed the connection) 2016-11-25T04:54:53Z FreeBirdLjj joined #lisp 2016-11-25T04:55:49Z y2c quit (Ping timeout: 265 seconds) 2016-11-25T04:59:41Z FreeBirdLjj quit (Ping timeout: 265 seconds) 2016-11-25T05:06:07Z yoonkn joined #lisp 2016-11-25T05:12:24Z travv0 quit (Ping timeout: 258 seconds) 2016-11-25T05:12:55Z jusss joined #lisp 2016-11-25T05:13:08Z jusss quit (Remote host closed the connection) 2016-11-25T05:13:14Z travv0 joined #lisp 2016-11-25T05:31:14Z jleija quit (Quit: leaving) 2016-11-25T05:36:47Z Harag joined #lisp 2016-11-25T05:43:48Z arescorpio quit (Quit: Leaving.) 2016-11-25T05:46:32Z pyx quit (Quit: WeeChat 1.6) 2016-11-25T05:52:04Z stardiviner quit (Ping timeout: 260 seconds) 2016-11-25T05:55:57Z fluter joined #lisp 2016-11-25T05:58:40Z sellout-1 quit (Quit: Leaving.) 2016-11-25T05:59:06Z sellout- joined #lisp 2016-11-25T06:01:50Z shka_ joined #lisp 2016-11-25T06:02:16Z ASau quit (Remote host closed the connection) 2016-11-25T06:05:23Z stardiviner joined #lisp 2016-11-25T06:08:52Z ssice quit (Ping timeout: 260 seconds) 2016-11-25T06:12:33Z krwq joined #lisp 2016-11-25T06:13:25Z ssice joined #lisp 2016-11-25T06:15:13Z macdavid313 joined #lisp 2016-11-25T06:19:02Z shrdlu68 joined #lisp 2016-11-25T06:19:02Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2016-11-25T06:20:35Z oleo quit (Quit: Leaving) 2016-11-25T06:21:05Z shrdlu68: akkad: I'm also looking for ECC libs. 2016-11-25T06:22:52Z vlatkoB joined #lisp 2016-11-25T06:25:21Z shrdlu68: There's a pull request for ECC in ironclad but it hasn't been merged yet. 2016-11-25T06:29:51Z eivarv joined #lisp 2016-11-25T06:30:11Z zacts quit (Ping timeout: 256 seconds) 2016-11-25T06:30:22Z eivarv quit (Client Quit) 2016-11-25T06:32:48Z krwq quit (Remote host closed the connection) 2016-11-25T06:34:16Z akkad: https://github.com/dbmcclain/AONT-Tolstoy uses it. 2016-11-25T06:41:49Z MrWoohoo joined #lisp 2016-11-25T06:48:39Z zacts joined #lisp 2016-11-25T06:58:17Z shka_ quit (Ping timeout: 244 seconds) 2016-11-25T07:00:33Z Karl_Dscc joined #lisp 2016-11-25T07:00:46Z robotoad quit (Quit: robotoad) 2016-11-25T07:04:01Z Quadrescence quit (Quit: Leaving) 2016-11-25T07:08:19Z robotoad joined #lisp 2016-11-25T07:12:03Z DeadTrickster joined #lisp 2016-11-25T07:13:16Z travv0 quit (Ping timeout: 260 seconds) 2016-11-25T07:15:28Z travv0 joined #lisp 2016-11-25T07:15:31Z tmtwd joined #lisp 2016-11-25T07:16:18Z scymtym quit (Ping timeout: 245 seconds) 2016-11-25T07:16:57Z Karl_Dscc quit (Remote host closed the connection) 2016-11-25T07:25:09Z sdothum quit (Quit: ZNC - 1.6.0 - http://znc.in) 2016-11-25T07:25:43Z DeadTrickster quit (Ping timeout: 256 seconds) 2016-11-25T07:27:49Z gingerale joined #lisp 2016-11-25T07:28:14Z DeadTrickster joined #lisp 2016-11-25T07:30:35Z alpert joined #lisp 2016-11-25T07:35:04Z leb joined #lisp 2016-11-25T07:35:10Z chongwish joined #lisp 2016-11-25T07:36:08Z NeverDie quit (Quit: http://radiux.io/) 2016-11-25T07:42:57Z MoALTz joined #lisp 2016-11-25T07:44:31Z lnostdal quit (Read error: Connection reset by peer) 2016-11-25T07:44:48Z lnostdal joined #lisp 2016-11-25T07:44:57Z travv0 quit (Ping timeout: 240 seconds) 2016-11-25T07:50:37Z jlarocco quit (Ping timeout: 240 seconds) 2016-11-25T07:52:05Z Harag quit (Remote host closed the connection) 2016-11-25T07:52:22Z Harag joined #lisp 2016-11-25T07:53:57Z flamebeard joined #lisp 2016-11-25T07:53:59Z Ven joined #lisp 2016-11-25T07:54:42Z Ven quit (Read error: Connection reset by peer) 2016-11-25T07:55:04Z Ven joined #lisp 2016-11-25T07:56:42Z mvilleneuve joined #lisp 2016-11-25T07:56:50Z Einwq joined #lisp 2016-11-25T07:57:09Z stepnem joined #lisp 2016-11-25T07:59:36Z andrei-n joined #lisp 2016-11-25T08:01:07Z mishoo joined #lisp 2016-11-25T08:10:07Z DeadTrickster quit (Ping timeout: 260 seconds) 2016-11-25T08:10:25Z leb quit 2016-11-25T08:10:39Z tmtwd quit (Ping timeout: 258 seconds) 2016-11-25T08:11:28Z DeadTrickster joined #lisp 2016-11-25T08:11:50Z shka joined #lisp 2016-11-25T08:14:56Z gingerale quit (Remote host closed the connection) 2016-11-25T08:15:15Z jlarocco joined #lisp 2016-11-25T08:16:29Z gingerale joined #lisp 2016-11-25T08:20:04Z jlarocco quit (Ping timeout: 252 seconds) 2016-11-25T08:20:46Z varjag joined #lisp 2016-11-25T08:22:10Z krasnal joined #lisp 2016-11-25T08:22:35Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2016-11-25T08:32:23Z Ven joined #lisp 2016-11-25T08:36:11Z easye: SLIME question: there doesn't seem to be a way to visit the inferior lisp buffer for a given SLIME connection right? When dealing with multiple connections for a cross-implementation question, sometimes the inferior lisp buffers have useful information, but after starting five CL's, I get lost as to which *inferior-lisp* belongs to which connection. 2016-11-25T08:42:07Z mvilleneuve left #lisp 2016-11-25T08:43:09Z jackdaniel: easye: (switch-to-buffer (process-buffer (slime-process))) in elisp eval 2016-11-25T08:43:41Z jackdaniel: (when you are in a slime repl window, slime-process will return that instance process) 2016-11-25T08:44:53Z ggole joined #lisp 2016-11-25T08:45:43Z easye: jackdaniel: nice. But it would be useful to hack SLIME for some keybindings to "flip" between the two, right? 2016-11-25T08:47:00Z jackdaniel: I'm not good at elisp, so I won't step in for that – but yeah, that would be useful :) 2016-11-25T08:48:01Z carenz joined #lisp 2016-11-25T08:52:15Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2016-11-25T08:54:25Z Fare joined #lisp 2016-11-25T08:59:04Z kamog joined #lisp 2016-11-25T08:59:16Z hhdave joined #lisp 2016-11-25T09:01:27Z satran joined #lisp 2016-11-25T09:01:33Z hhdave_ joined #lisp 2016-11-25T09:03:41Z hhdave quit (Ping timeout: 260 seconds) 2016-11-25T09:03:41Z hhdave_ is now known as hhdave 2016-11-25T09:05:46Z Grue` joined #lisp 2016-11-25T09:09:34Z jlarocco joined #lisp 2016-11-25T09:12:38Z angavrilov joined #lisp 2016-11-25T09:14:24Z jlarocco quit (Ping timeout: 256 seconds) 2016-11-25T09:15:49Z DeadTrickster quit (Ping timeout: 248 seconds) 2016-11-25T09:16:45Z attila_lendvai joined #lisp 2016-11-25T09:16:45Z attila_lendvai quit (Changing host) 2016-11-25T09:16:45Z attila_lendvai joined #lisp 2016-11-25T09:17:11Z DeadTrickster joined #lisp 2016-11-25T09:17:18Z ggole_ joined #lisp 2016-11-25T09:20:04Z ggole quit (Ping timeout: 256 seconds) 2016-11-25T09:24:57Z Grue` quit (Ping timeout: 246 seconds) 2016-11-25T09:26:24Z pyx joined #lisp 2016-11-25T09:26:47Z chongwish quit (Remote host closed the connection) 2016-11-25T09:27:32Z william3 joined #lisp 2016-11-25T09:29:50Z freehck joined #lisp 2016-11-25T09:29:53Z scymtym joined #lisp 2016-11-25T09:32:17Z william3 quit (Ping timeout: 265 seconds) 2016-11-25T09:33:14Z defaultxr quit (Ping timeout: 250 seconds) 2016-11-25T09:35:36Z wokko quit (Quit: leaving) 2016-11-25T09:36:48Z wokko joined #lisp 2016-11-25T09:38:44Z przl joined #lisp 2016-11-25T09:39:45Z sellout- quit (Quit: Leaving.) 2016-11-25T09:40:22Z william3 joined #lisp 2016-11-25T09:44:12Z alpert quit (Remote host closed the connection) 2016-11-25T09:44:46Z alpert joined #lisp 2016-11-25T09:45:13Z attila_lendvai quit (Ping timeout: 260 seconds) 2016-11-25T09:48:30Z igam joined #lisp 2016-11-25T09:48:40Z Fare quit (Ping timeout: 260 seconds) 2016-11-25T09:48:53Z alpert quit (Ping timeout: 248 seconds) 2016-11-25T09:50:07Z igam: knobo: a function is not defined in any package in particular. A function source sexp may be _read_ in a specific package, meaning that at that time, when reading the source sexp, there's a certain mapping from unqualified symbol names in the source text to actual symbols. 2016-11-25T09:50:12Z robotoad quit (Quit: robotoad) 2016-11-25T09:50:29Z igam: knobo: but there are other ways to define functions than to read a defun source form and evaluate it. 2016-11-25T09:53:25Z przl quit (Quit: leaving) 2016-11-25T09:53:55Z przl joined #lisp 2016-11-25T09:55:22Z bogdanm joined #lisp 2016-11-25T09:56:05Z Ven joined #lisp 2016-11-25T10:02:34Z zooey quit (Remote host closed the connection) 2016-11-25T10:02:48Z m00natic joined #lisp 2016-11-25T10:03:04Z ovenpasta joined #lisp 2016-11-25T10:03:24Z zooey joined #lisp 2016-11-25T10:03:37Z MrMc joined #lisp 2016-11-25T10:03:54Z jlarocco joined #lisp 2016-11-25T10:08:05Z jlarocco quit (Ping timeout: 248 seconds) 2016-11-25T10:18:45Z ovenpasta quit (Ping timeout: 244 seconds) 2016-11-25T10:29:25Z troydm quit (Ping timeout: 248 seconds) 2016-11-25T10:32:45Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2016-11-25T10:35:27Z yoonkn quit (Remote host closed the connection) 2016-11-25T10:39:13Z ggole__ joined #lisp 2016-11-25T10:42:26Z PinealGlandOptic quit (Quit: leaving) 2016-11-25T10:42:50Z ggole_ quit (Ping timeout: 250 seconds) 2016-11-25T10:44:18Z yeticry joined #lisp 2016-11-25T10:44:51Z vtomole quit (Ping timeout: 260 seconds) 2016-11-25T10:50:22Z Joreji joined #lisp 2016-11-25T10:51:37Z Harag quit (Ping timeout: 240 seconds) 2016-11-25T10:53:21Z test1600 quit (Quit: Leaving) 2016-11-25T10:56:34Z troydm joined #lisp 2016-11-25T10:57:44Z jlarocco joined #lisp 2016-11-25T11:01:25Z ak5 joined #lisp 2016-11-25T11:02:56Z jlarocco quit (Ping timeout: 250 seconds) 2016-11-25T11:07:29Z John[Lisbeth] quit (Remote host closed the connection) 2016-11-25T11:08:46Z pyx quit (Quit: WeeChat 1.6) 2016-11-25T11:12:40Z d4ryus quit (Ping timeout: 260 seconds) 2016-11-25T11:12:49Z alexherbo2 quit (Quit: WeeChat 1.6) 2016-11-25T11:14:50Z loke quit (Remote host closed the connection) 2016-11-25T11:15:04Z d4ryus joined #lisp 2016-11-25T11:15:22Z Grue` joined #lisp 2016-11-25T11:20:01Z django_ joined #lisp 2016-11-25T11:20:05Z django_: okay guys 2016-11-25T11:20:09Z django_: i dont think emacs are for me 2016-11-25T11:20:24Z django_: how can i run lisp code on my cmd prompt? 2016-11-25T11:20:33Z django_: like how i run python code: python file.py 2016-11-25T11:21:43Z malice`: django_: you don't 2016-11-25T11:21:45Z malice`: (usually) 2016-11-25T11:22:02Z malice`: in Emacs you mostly use Slime to write code and execute it 2016-11-25T11:22:17Z malice`: When you're done, you either (somehow) create executable, or just run it 2016-11-25T11:22:29Z malice`: in rare cases you use whatever compiler you have at hand, but this varies 2016-11-25T11:22:39Z malice`: in sbcl I believe it would be sbcl --script file.lisp 2016-11-25T11:22:53Z edgar-rft: Every CL implementation I know can be run from the command line, but since that's implementation-specific behaviour either tell the CL implementation you're using or read the manual of your implementation. 2016-11-25T11:23:51Z Joreji quit (Ping timeout: 244 seconds) 2016-11-25T11:24:25Z django_: yeah i just wanna use a sublime text 2016-11-25T11:25:16Z jackdaniel: django_: there is CL plugin or sublime I think 2016-11-25T11:26:07Z django_: gotcha 2016-11-25T11:26:20Z django_: ty jackdaniel 2016-11-25T11:27:23Z malice`: django_: I strongly encourage you to try Emacs and Slime 2016-11-25T11:27:27Z malice`: It's really very good 2016-11-25T11:27:30Z jackdaniel: there is also atom-slime: https://atom.io/packages/atom-slime (for atom) 2016-11-25T11:28:14Z ovenpasta joined #lisp 2016-11-25T11:29:31Z django_: malice`, its just different i think 2016-11-25T11:29:36Z django_: sublime text is great 2016-11-25T11:29:50Z jackdaniel: malice`: emacs is not everyones thing 2016-11-25T11:30:01Z jackdaniel: I personaly hate emacs, but haven't found better editor so far ;P 2016-11-25T11:30:07Z django_: haha 2016-11-25T11:31:10Z django_: i would just use ctr N, ctrl p and ctrl l 2016-11-25T11:31:14Z django_: maybe a and e 2016-11-25T11:31:24Z flip214: vim with slimv WorksForMe(tm) 2016-11-25T11:31:49Z wokko: emacs + slime ftw :) 2016-11-25T11:31:50Z przl quit (Ping timeout: 252 seconds) 2016-11-25T11:31:59Z django_: be back later 2016-11-25T11:32:01Z django_ quit (Quit: Leaving) 2016-11-25T11:32:09Z jackdaniel: good luck :) 2016-11-25T11:33:01Z macdavid314 joined #lisp 2016-11-25T11:34:24Z macdavid313 quit (Ping timeout: 250 seconds) 2016-11-25T11:34:25Z macdavid314 is now known as macdavid313 2016-11-25T11:35:03Z stardiviner quit (Ping timeout: 256 seconds) 2016-11-25T11:40:51Z malice`: jackdaniel: I know, that's why I strongly encourage and not call names 2016-11-25T11:41:43Z malice`: jackdaniel: yet since many people are discouraged by some stupid meaningless things like "this language sucks, it has too many parenthesis!", I decided to encourage to take another try ;) 2016-11-25T11:45:19Z bogdanm quit (Quit: Leaving) 2016-11-25T11:46:37Z ak5 quit (Remote host closed the connection) 2016-11-25T11:46:47Z Ven joined #lisp 2016-11-25T11:46:59Z ak5 joined #lisp 2016-11-25T11:47:58Z aerique quit (Quit: ...) 2016-11-25T11:49:51Z MrWoohoo quit (Ping timeout: 246 seconds) 2016-11-25T11:52:05Z jlarocco joined #lisp 2016-11-25T11:54:12Z iippo joined #lisp 2016-11-25T11:56:49Z jlarocco quit (Ping timeout: 260 seconds) 2016-11-25T12:01:07Z dilated_dinosaur quit (Ping timeout: 260 seconds) 2016-11-25T12:03:48Z shdeng quit (Quit: Leaving) 2016-11-25T12:07:40Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2016-11-25T12:08:59Z Ven joined #lisp 2016-11-25T12:09:17Z Ven quit (Read error: Connection reset by peer) 2016-11-25T12:09:32Z william3 quit (Remote host closed the connection) 2016-11-25T12:10:10Z jusss joined #lisp 2016-11-25T12:11:20Z jusss: (defun f (x) x) (f '(+ 1 1))=> (+ 1 1) (f (f '(+ 1 1))) => (+ 1 1) why not 2? 2016-11-25T12:11:57Z jusss: (f (+ 1 1)) return 2, (f (f '(+ 1 1))) why not return 2? 2016-11-25T12:12:07Z william3 joined #lisp 2016-11-25T12:12:19Z jackdaniel: because you call (f '(+ 1 1)) not (f (+ 1 1)), quote prevents evaluation 2016-11-25T12:12:25Z jackdaniel: minion: tell jusss about pcl 2016-11-25T12:12:26Z minion: jusss: 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). 2016-11-25T12:12:30Z Ven joined #lisp 2016-11-25T12:14:20Z jackdaniel: look for "evaluation rule" 2016-11-25T12:14:26Z jackdaniel: for instance here: http://www.gigamonkeys.com/book/syntax-and-semantics.html 2016-11-25T12:15:11Z |3b|: in (f (+ 1 1)), (+ 1 1) is evaluated to get 2, which is passed to F, which returns it. in (f (f '(+ 1 1))), (f '(+ 1 1)) is evaluated to get the list (+ 1 1) which is passed to F which returns it. 2016-11-25T12:15:23Z Ven quit (Client Quit) 2016-11-25T12:16:53Z william3 quit (Ping timeout: 260 seconds) 2016-11-25T12:21:23Z Ven joined #lisp 2016-11-25T12:22:15Z quazimodo joined #lisp 2016-11-25T12:25:32Z knobo: I want to divide my application up in several modules, and require them in a main application whenever I need them. I can have several "main" applications that use the different modules with different configuraion. Do you have any suggestion on how to configure the different modules? 2016-11-25T12:25:48Z jusss: (defvar x (f '(+ 1 1))) 2016-11-25T12:26:05Z jusss: (f x) => (+ 1 1) still not 2 2016-11-25T12:26:47Z jusss: |3b|: x is evaluated to get (+ 1 1)? 2016-11-25T12:27:06Z edgar-rft: I think what confuses you is that the Lisp printer doesn't print the ' or (quote...) when a quoted list is printed 2016-11-25T12:27:19Z stardiviner joined #lisp 2016-11-25T12:27:39Z edgar-rft: it looks like (f '(+ 1 1)) => (+ 1 1) but in real it's (f '(+ 1 1)) => '(+ 1 1) 2016-11-25T12:28:02Z przl joined #lisp 2016-11-25T12:28:09Z jusss: ? 2016-11-25T12:28:10Z |3b| thinks that is more confusing, since it isn't '(+ 1 1) 2016-11-25T12:28:32Z edgar-rft: what is it then? 2016-11-25T12:28:36Z knobo: Is there a way for asdf to provide configuration data for a system it loads? 2016-11-25T12:28:46Z |3b|: it is a 3 element list containing the symbol + and the number 1 twice 2016-11-25T12:28:56Z |3b|: no QUOTE symbol anywhere 2016-11-25T12:29:26Z jusss: edgar-rft: (f (quote (+ 1 1))), eval (quote (+ 1 1)) get (+ 1 1) and pass (+ 1 1) to F, so get (+ 1 1) 2016-11-25T12:29:31Z |3b|: '(+ 1 1) is (quote (+ 1 1)), a 2 element list containing the symbol QUOTE and the 3-element list (+ 1 1) 2016-11-25T12:29:49Z edgar-rft: if it were then the outer (f...) in (f (f '(+ 1 1))) were (f (+ 1 2)) what would IMO evaluate to 2 2016-11-25T12:30:11Z |3b|: jusss: you are missing that all of those things evaluate to the list (+ 1 1), and there is nothing that adds an extra evaluation to turn that into 2 2016-11-25T12:30:14Z TMA: jusss: (+ 1 1) evaluates to value 2; '(+ 1 1) evaluates to (+ 1 1) i.e. a list of three elements 2016-11-25T12:30:36Z edgar-rft: sorry, but now I'm confused, too... 2016-11-25T12:30:46Z |3b|: edgar-rft: no, the call to F is what gets evaluated, not the list it returns 2016-11-25T12:31:01Z knobo: hmmm.. I think I have thought out a solution. I'll make a confifuration system, and every module I write will depend on that system, and ask tha configuration system for it's configuration. 2016-11-25T12:31:23Z |3b|: same way (quote (+ 1 1)) gets evaluated to the list (+ 1 1), and nothing turns that into 2 2016-11-25T12:31:33Z TMA: jusss: (f whatever) first evaluates the whatever then it evaluates the body of f with the parameter bound to the resulting value 2016-11-25T12:32:03Z edgar-rft understood now, thanks :-) 2016-11-25T12:32:09Z |3b|: you are just passing around a list object that happens to look like code 2016-11-25T12:32:38Z |3b|: same way (f (f (list 1 1))) passes the list (1 1) to F, which returns it and it is then passed to the outer call 2016-11-25T12:32:40Z jusss: TMA: (defvar x (f '(+ 1 1))), x is ? 2016-11-25T12:33:13Z kamog: jusss: what's f? 2016-11-25T12:33:18Z igam: jusss: ill named. 2016-11-25T12:33:24Z TMA: therefore (f (f '(+ 1 1))) is evaluated thus: first '(+ 1 1) is evaluated to produce (+ 1 1); the inner f then receives (+ 1 1) which it returns, therefore the value of the inner f call is (+ 1 1). 2016-11-25T12:33:34Z igam: jusss: it should be *x* since defvar declares it special. 2016-11-25T12:33:46Z jusss: igam: ... 2016-11-25T12:33:46Z |3b|: jusss: you might want defparameter there, since DEFVAR won't change the value of an existing variable of same name 2016-11-25T12:33:59Z TMA: jusss: that in turn gets passed to the outer f. the outer f receives (+ 1 1) which it then returns. 2016-11-25T12:34:33Z TMA: jusss: in that case x has the value (+ 1 1) 2016-11-25T12:35:17Z jusss: TMA: the parameters of function will be evaluated, it's right? 2016-11-25T12:35:25Z TMA: jusss: yes. 2016-11-25T12:35:41Z jusss: TMA: (f x) get (+ 1 1), but (eval x) get 2 2016-11-25T12:35:55Z jusss: so why (f x) not get 2? 2016-11-25T12:36:08Z |3b|: eval is a function, so X gets evaluated before being passed to EVAL 2016-11-25T12:36:15Z |3b|: so eval sees the list (+ 1 1) 2016-11-25T12:36:19Z |3b|: same as F 2016-11-25T12:36:27Z |3b|: EVAL evaluates it, F doesn't 2016-11-25T12:36:28Z TMA: jusss: no. (f x) gets (+ 1 1); eval gets (+ 1 1) too 2016-11-25T12:36:38Z jusss: so x will be evaluated to (+ 1 1)? 2016-11-25T12:36:39Z igam: knobo: what do you call configuration here? An asd file is in itself the definition of a configuration. You can have multiple system definitions (multiple asd files), with different configuration using common sources. 2016-11-25T12:36:43Z stardiviner quit (Ping timeout: 245 seconds) 2016-11-25T12:36:52Z TMA: jusss: they do different things with it 2016-11-25T12:37:21Z malice`: jusss: you need to understand what's evaluated when 2016-11-25T12:37:26Z jusss: TMA: eval x this identifer and get its value? 2016-11-25T12:37:48Z TMA: jusss: the *s (called earmufs) are a convention for special variables (in other languages those would be global variables, but in lisp the analogy is not perfect, you can have non-global special variables) 2016-11-25T12:37:52Z kamog: jusss: oh, f is as the identity function. (f '(+ 1 1)) is interpreted by the reader to become (f (quote (+ 1 1))). (quote (+ 1 1)) is evaluated; quote is a special operator: (quote (+ 1 1)) is the object (list) (+ 1 1) that lisp interpreter read. f takes that object and returns it back. x gets assigned the list (+ 1 1) that was read. 2016-11-25T12:38:11Z jusss: malice`: yes, I'm completely confused about evaluate 2016-11-25T12:38:32Z malice`: (f (list '+ 1 1)): first you evaluate (list '+ 1 1) and get: (f (+ 1 1)). Then you evaluate the latter, and since f returns its argument, you get (+ 1 1) back. Now eval: (eval (list '+ 1 1)): step 1 is the same as in f: you get (eval (+ 1 1)). Now you get into eval. 2016-11-25T12:38:39Z EvW joined #lisp 2016-11-25T12:38:41Z igam: (defun f (x) (if (and (listp x) (eq (first x) '+)) (reduce (function +) (mapcar (function f) (rest x))) x)) Now f evaluates: (f '(+ 1 (+ 2 3))) #| --> 6 |# 2016-11-25T12:38:49Z TMA: jusss: if you call (eval x) the interpreter first evaluates x, the value of gets passed to the eval function 2016-11-25T12:39:16Z TMA: jusss: then the eval function evaluates that again 2016-11-25T12:39:18Z malice`: Now eval does different thing than your function; you have identity function(returns whatever has as an argument); eval evaluates(treats as a code, returns the result). Therefore when eval sees (+ 1 1) it does something like (apply '+ (1 1)) 2016-11-25T12:39:29Z malice`: jusss: and that's why you get different results 2016-11-25T12:39:52Z TMA: jusss: you can think of x as (eval 'x) 2016-11-25T12:40:43Z jusss: TMA: the name, what you call it? variable's name or identifier somethings 2016-11-25T12:41:02Z nostoi joined #lisp 2016-11-25T12:41:05Z TMA: jusss: it's called a symbol 2016-11-25T12:41:49Z jusss: TMA: evaluated x this symbol and will get its value, this is right? 2016-11-25T12:42:00Z TMA: yes 2016-11-25T12:42:20Z macdavid314 joined #lisp 2016-11-25T12:42:36Z jusss: I see 2016-11-25T12:42:54Z macdavid313 quit (Ping timeout: 244 seconds) 2016-11-25T12:42:55Z macdavid314 is now known as macdavid313 2016-11-25T12:42:57Z przl quit (Quit: leaving) 2016-11-25T12:43:14Z przl joined #lisp 2016-11-25T12:43:21Z przl quit (Client Quit) 2016-11-25T12:43:51Z przl joined #lisp 2016-11-25T12:44:32Z jusss: "eval or not eval, this is a problem" LOL 2016-11-25T12:45:59Z jlarocco joined #lisp 2016-11-25T12:46:09Z dilated_dinosaur joined #lisp 2016-11-25T12:46:27Z igam: jusss: the problem of eval in CL is that it uses the NIL environment. 2016-11-25T12:46:31Z TMA: jusss: most things evaluate to themselves (1 => 1 "hi" => "hi" and so on) 2016-11-25T12:46:44Z igam: jusss: you can write your own evaluating functions, and give them environment parameters. 2016-11-25T12:47:12Z TMA: jusss: the exception are symbols and lists (those things in parentheses) 2016-11-25T12:47:21Z jusss: igam: I have not that power yet 2016-11-25T12:47:55Z TMA: jusss: symbols (identifiers in other languages) evaluate to the value they are bound to 2016-11-25T12:47:56Z igam: It's trivial: (defun f (x e) (cond ((and (listp x) (eq (first x) '+)) (reduce (function +) (mapcar (lambda (a) (f a e)) (rest x)))) ((symbolp x) (cdr (assoc x e))) (t x))) (f '(+ a (+ b c)) '((a . 1) (b . 2) (c . 3))) #| --> 6 |# 2016-11-25T12:48:38Z TMA: jusss: (defvar *x* 123) ; now *x* is bound to the value 123 2016-11-25T12:48:45Z igam: TMA: nope. 2016-11-25T12:49:06Z igam: (defvar *x* 42) (defvar *x* 123) ; now *x* is bound to something, probably not 123. 2016-11-25T12:50:33Z pierpa joined #lisp 2016-11-25T12:50:53Z jlarocco quit (Ping timeout: 245 seconds) 2016-11-25T12:50:56Z malice`: igam: ? 2016-11-25T12:52:38Z TMA: igam: of course. 2016-11-25T12:53:21Z TMA: malice`: defvar does not reset the value if the symbol is already declared special and bound; you'd need defparameter for that 2016-11-25T12:53:33Z stardiviner joined #lisp 2016-11-25T12:53:36Z Cymew: malice`: Try it out. 2016-11-25T12:56:03Z ASau joined #lisp 2016-11-25T13:00:12Z stardiviner quit (Ping timeout: 250 seconds) 2016-11-25T13:01:04Z django_ joined #lisp 2016-11-25T13:03:27Z quazimodo quit (Ping timeout: 256 seconds) 2016-11-25T13:04:13Z malice`: Oh, right 2016-11-25T13:04:44Z malice`: I'm sometimes fooled by that; that's why I always use defparameter 2016-11-25T13:04:46Z Einwq quit (Quit: Leaving) 2016-11-25T13:05:10Z satran quit (Quit: satran) 2016-11-25T13:05:28Z kamog quit (Quit: ERC (IRC client for Emacs 25.1.1)) 2016-11-25T13:06:28Z jusss: is there identifier name rules? like you can only use _ number and character in C 2016-11-25T13:07:22Z jusss: I can use ? or - in identifier's name, and what I can't use? 2016-11-25T13:07:56Z TMA: jusss: yes. it is a bit complex though. you can use any character, but you need to quote some of them 2016-11-25T13:07:59Z malice`: jusss: of course there are rules 2016-11-25T13:08:19Z malice`: but they are more liberal than C 2016-11-25T13:09:17Z jusss: I see some names like quicklisp-quickstart:install this is one name? I mean there's ':' in it, and I don't what ':' means 2016-11-25T13:09:53Z TMA: jusss: : is a separator between a package name and a symbol name 2016-11-25T13:09:55Z jusss: of course I can't use () in names, I think :) 2016-11-25T13:10:20Z quazimodo joined #lisp 2016-11-25T13:10:26Z TMA: jusss: quicklisp-quickstart:install is a symbol named INSTALL in package named QUICKLISP-QUICKSTART 2016-11-25T13:11:29Z jusss: TMA: like Class.variable in other OOP language? 2016-11-25T13:12:09Z TMA: jusss: somewhat. or std::size_t 2016-11-25T13:12:18Z django_: how can i use common lisp with sublime text? 2016-11-25T13:12:20Z hardenedapple joined #lisp 2016-11-25T13:13:11Z Cymew: Just type away. 2016-11-25T13:13:41Z Cymew: But, if you want to easily evaluate expressions and get completion, most of us use emacs. 2016-11-25T13:14:35Z stardiviner joined #lisp 2016-11-25T13:14:49Z TMA: jusss: except not quite. in those languages identifiers are something that exists in the compiler (in the running program there are vestiges) 2016-11-25T13:15:16Z nilof joined #lisp 2016-11-25T13:17:05Z igam: jusss: you can use any character, even : and () in symbol names: (defun |(:)| () 'ha) (funcall (intern "(:)")) #| --> ha |# 2016-11-25T13:17:22Z TMA: jusss: symbols are one of the basic object types in lisp. for example: in those languages you would use an enum that is just a name for a number; in lisp you would use the symbols 2016-11-25T13:17:23Z malice`: ^ 2016-11-25T13:17:24Z malice`: :) 2016-11-25T13:19:36Z jusss: :-} can't be a identifer :0( 2016-11-25T13:20:17Z macdavid314 joined #lisp 2016-11-25T13:20:20Z django_: Cymew, how do you run a lisp program? 2016-11-25T13:20:37Z jusss: django_: you can use emacs with slime 2016-11-25T13:20:48Z django_: jusss, yeah its installed 2016-11-25T13:20:56Z jusss: that's what I'm using now, and it's very good 2016-11-25T13:21:08Z rippa joined #lisp 2016-11-25T13:21:09Z Cymew: django_: You evaluate in a REPL. 2016-11-25T13:21:20Z django_: Cymew, how do you open the repl? 2016-11-25T13:21:51Z macdavid313 quit (Ping timeout: 260 seconds) 2016-11-25T13:21:52Z macdavid314 is now known as macdavid313 2016-11-25T13:21:53Z jusss: M-x slime or jusr run `your-lisp-program` in terminal 2016-11-25T13:22:00Z araujo quit (Read error: Connection timed out) 2016-11-25T13:22:03Z Cymew: django_: The nice thing with interfacing closely with your lisp environment in the editor is you in emacs just can position the pointer at an expression and send it for evalution. 2016-11-25T13:22:31Z Cymew: Using e.g. sublime or atom, you need to open, say, sbcl in a terminal and then copy and paste your code there. 2016-11-25T13:22:49Z araujo joined #lisp 2016-11-25T13:23:05Z django_: oh 2016-11-25T13:23:27Z Cymew: ...or you create a shell wrapper and you can, like jusss sugests, just run it from your shell like any other program. 2016-11-25T13:23:52Z Cymew: That's not for the development process, that's final deployment, though. 2016-11-25T13:24:13Z django_: there has to be a way of doing this with sublime lol 2016-11-25T13:24:30Z jusss: TMA: igam , () {} | can't be part of a identifier, what else? 2016-11-25T13:24:50Z Cymew: Maybe, but like I said most people here uses emacs. There are some vi heretics as well, and we love them dearly. ;) 2016-11-25T13:25:08Z django_: lol 2016-11-25T13:25:15Z jusss: (define :- 3) is ok on racket, and (defvar :- 3) is not ok on sbcl 2016-11-25T13:25:58Z Cymew: slime is basically a network pipe in between emacs and your lisp. You could use something similar in sublime if it has some kind of network port, I guess. 2016-11-25T13:26:03Z jusss: then I try }, and it's not ok too, then I remember {} can instead of () now 2016-11-25T13:27:09Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2016-11-25T13:27:10Z jusss: what sysmbols I can't use for identifier? 2016-11-25T13:28:06Z django_: Cymew, how would i install CLISP? 2016-11-25T13:28:39Z jusss: django_: are you using Windows or ? 2016-11-25T13:28:44Z Cymew: django_: The implementation called "clisp", or common lisp in general? 2016-11-25T13:28:59Z django_: jusss, im on linux 2016-11-25T13:29:06Z django_: so im looking at: http://stackoverflow.com/questions/28086295/how-can-i-send-a-clisp-code-to-the-sublime-text-3-repl 2016-11-25T13:29:06Z Cymew: Then I'd suggest sbcl 2016-11-25T13:29:12Z django_: he says he installed CLISP 2016-11-25T13:29:14Z jusss: django_: then you use your package manager 2016-11-25T13:29:22Z Cymew: Right 2016-11-25T13:29:25Z django_: apt-get install sbcl? 2016-11-25T13:29:42Z django_: okay 2016-11-25T13:29:46Z Fare joined #lisp 2016-11-25T13:29:50Z jusss: pacman for archlinux, apt-whatever for debian/ubuntu, yum for centos 2016-11-25T13:29:53Z django_: and i guess sbcl runs the CLISP repl? 2016-11-25T13:30:00Z Cymew: No 2016-11-25T13:30:10Z Cymew: clisp is an implementation 2016-11-25T13:30:18Z jusss: sbcl is another implementation 2016-11-25T13:30:29Z Cymew: It's like Borland C or Watcom C etc 2016-11-25T13:30:55Z jusss: and there's cmucl sbcl and other else 2016-11-25T13:31:25Z django_: Im trying to do what is being done in the SO link 2016-11-25T13:31:45Z django_: ohh i think i got it 2016-11-25T13:31:55Z django_: have to wait 20 min for sbcl to install 2016-11-25T13:37:35Z igam: jusss: you can use any character, even (){} and |! just have to escape them (or use a readtable that let you read them as constituent characters {} are already constituent characters by default!). 2016-11-25T13:38:10Z igam: jusss: (defun {\(foo\|bar\)} () 'hello?) ({\(foo\|bar\)}) #| --> hello? |# 2016-11-25T13:38:32Z django_: any of you ever make a web scraper with lisp? 2016-11-25T13:38:48Z igam: django_: I did once. 2016-11-25T13:38:56Z igam: before html 4! 2016-11-25T13:40:14Z Zhivago: Web scraping these days means automating a browser and then interrogating the DOM, mostly. 2016-11-25T13:40:20Z jlarocco joined #lisp 2016-11-25T13:40:30Z Zhivago: There is a browser in CL, although I'm not sure how complete it is. 2016-11-25T13:40:41Z kobain joined #lisp 2016-11-25T13:41:27Z jusss: igam: () {} | : what else should use 'escape'? 2016-11-25T13:42:27Z django_: Zhivago, what about scrapy? 2016-11-25T13:42:38Z django_: Zhivago, you mean using something like Selenium? 2016-11-25T13:42:52Z Zhivago: Selenium is an example of that, yes. 2016-11-25T13:43:13Z stardiviner quit (Ping timeout: 260 seconds) 2016-11-25T13:43:16Z django_: Zhivago, i was doing that but its useless for sites that you need to login 2016-11-25T13:43:23Z EvW quit (Ping timeout: 245 seconds) 2016-11-25T13:43:26Z Zhivago: jusss: It depends on the readtable configuration. 2016-11-25T13:43:40Z Zhivago: django: That is untrue. You just need to tell it how to login. 2016-11-25T13:43:48Z jfe joined #lisp 2016-11-25T13:44:03Z django_: Zhivago, yeah through the dom 2016-11-25T13:44:12Z django_: but id rather just use requests 2016-11-25T13:44:13Z Zhivago: No, through browser automation. 2016-11-25T13:44:16Z Ven joined #lisp 2016-11-25T13:44:25Z django_: hmm how do you automate login without using the DOM Zhivago ? 2016-11-25T13:44:51Z Zhivago: You can move the pointer around and click on things if you are so inclined. 2016-11-25T13:45:17Z jlarocco quit (Ping timeout: 260 seconds) 2016-11-25T13:45:19Z Zhivago: Using the dom to find where to move the pointer or the element to click on can make things easier. 2016-11-25T13:45:24Z django_: Zhivago, is it possible to generalize it for any page? 2016-11-25T13:46:04Z Zhivago: Certainly, if you're prepared to do the work required. 2016-11-25T13:46:26Z stardiviner joined #lisp 2016-11-25T13:46:37Z django_: cool 2016-11-25T13:46:42Z django_: what kind of work is required Zhivago ? 2016-11-25T13:47:30Z django_: This is off topic, mind if i pm Zhivago ? 2016-11-25T13:48:01Z Zhivago: It depends on how much intelligence is required to figure out where to move the pointer, mostly. 2016-11-25T13:49:03Z Zhivago: In most cases this requires being slightly more intelligent than a cactus, but captchas require some effort. 2016-11-25T13:50:03Z jusss: why lisp's return always use upper-case? 2016-11-25T13:50:31Z Xach: jusss: that has to do with the default settings of how the code is read 2016-11-25T13:50:40Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2016-11-25T13:50:44Z django_: Zhivago, so you can move the pointer based on finding input tags with "login" or something like that 2016-11-25T13:51:20Z jusss: Xach: lisp couldn't recognized upper-case and low-case in code? 2016-11-25T13:51:27Z jusss: or don't 2016-11-25T13:51:39Z Xach: jusss: it can, but the default settings convert symbols to uppercase. 2016-11-25T13:52:07Z jusss: where I can set the default setting? 2016-11-25T13:52:23Z jusss: implementation's rc file? 2016-11-25T13:53:50Z Xach: jusss: the documentation for the default value is in the spec, but I can't find it offhand. the control is via http://l1sp.org/cl/readtable-case 2016-11-25T13:54:22Z EvW joined #lisp 2016-11-25T13:59:36Z stardiviner quit (Ping timeout: 252 seconds) 2016-11-25T14:00:42Z mishoo quit (Ping timeout: 252 seconds) 2016-11-25T14:01:10Z mishoo joined #lisp 2016-11-25T14:01:49Z Ven quit (Read error: Connection reset by peer) 2016-11-25T14:02:16Z Ven joined #lisp 2016-11-25T14:03:43Z wokko quit (Quit: leaving) 2016-11-25T14:06:22Z igam: jusss: it actually depends on the current *readtable* but in the standard readtable, notably spaces. {} doesn't need escapes!!! 2016-11-25T14:07:23Z igam: jusss: (setf (readtable-case *readtable*) :preserve) (DEFUN Foo () 'Foo) (DEFUN foo () '42) (LIST (Foo) (foo)) #| --> (Foo 42) |# 2016-11-25T14:09:28Z sdothum joined #lisp 2016-11-25T14:13:08Z jusss: igam: this will recognize low-case? 2016-11-25T14:13:32Z oleo joined #lisp 2016-11-25T14:14:12Z jusss: (defvar } 3) variable 2016-11-25T14:14:23Z jusss: variable } is unbound 2016-11-25T14:15:52Z django_ quit (Read error: Connection reset by peer) 2016-11-25T14:16:30Z django_ joined #lisp 2016-11-25T14:18:41Z deank quit (Remote host closed the connection) 2016-11-25T14:18:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2016-11-25T14:19:18Z Grue` quit (Ping timeout: 246 seconds) 2016-11-25T14:19:24Z django_: razzy, you around> 2016-11-25T14:19:46Z przl quit (Ping timeout: 252 seconds) 2016-11-25T14:22:55Z JuanDaugherty quit (Quit: Hibernate, reboot, exeunt, etc.) 2016-11-25T14:23:12Z BitPuffin|osx joined #lisp 2016-11-25T14:26:23Z william3 joined #lisp 2016-11-25T14:28:03Z nostoi quit (Quit: Verlassend) 2016-11-25T14:29:21Z django_: (defvar *x* "hello") creates a variable x set it to value "hello" 2016-11-25T14:29:37Z igam: IF 2016-11-25T14:29:44Z django_: (defvar *x* "helloooo") 2016-11-25T14:29:44Z django_: when i do *x* i get "hello" 2016-11-25T14:29:57Z Fare: defparameter vs defvar 2016-11-25T14:30:03Z przl joined #lisp 2016-11-25T14:30:35Z Fare: the difference between a systems language and a programming language 2016-11-25T14:31:09Z igam: jusss: possibly you have a loaded a library that set reader macros in the *readtable* for {} which is why you get this error on } 2016-11-25T14:32:10Z Cymew: django_: Read back on the conversation from earlier today about the difference between DEFPARAMETER and DEFVAR. 2016-11-25T14:32:20Z igam: jusss: (SETF (READTABLE-CASE *READTABLE*) :UPCASE) (setf *readtable* (copy-readtable nil)) (defvar } 3) } --> 3 2016-11-25T14:33:00Z igam: jusss: if you set it to :preserve, then defvar is not read as CL:DEFVAR and then it expects it's a function and will try to evaluate } and 3. 2016-11-25T14:33:35Z stardiviner joined #lisp 2016-11-25T14:33:55Z jusss: igam: yeah, this time (defvar } 3) is ok 2016-11-25T14:34:36Z stardiviner quit (Client Quit) 2016-11-25T14:34:42Z jlarocco joined #lisp 2016-11-25T14:37:48Z cibs quit (Ping timeout: 268 seconds) 2016-11-25T14:39:11Z cibs joined #lisp 2016-11-25T14:39:21Z jlarocco quit (Ping timeout: 258 seconds) 2016-11-25T14:44:25Z django_ quit (Quit: Leaving) 2016-11-25T14:46:18Z w37 quit (Remote host closed the connection) 2016-11-25T14:47:23Z jusss quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2016-11-25T14:57:18Z grublet joined #lisp 2016-11-25T15:01:25Z zeissoctopus joined #lisp 2016-11-25T15:03:03Z al-damiri joined #lisp 2016-11-25T15:03:51Z DGASAU quit (Read error: Connection reset by peer) 2016-11-25T15:04:09Z attila_lendvai joined #lisp 2016-11-25T15:08:02Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2016-11-25T15:09:18Z DGASAU joined #lisp 2016-11-25T15:12:00Z DGASAU quit (Write error: Connection reset by peer) 2016-11-25T15:12:42Z DGASAU joined #lisp 2016-11-25T15:15:48Z Ven joined #lisp 2016-11-25T15:16:07Z deank joined #lisp 2016-11-25T15:17:12Z Ven_ joined #lisp 2016-11-25T15:17:12Z Ven quit (Read error: Connection reset by peer) 2016-11-25T15:21:01Z ggole__ is now known as ggole 2016-11-25T15:22:07Z Guest68411 quit (Read error: Connection reset by peer) 2016-11-25T15:22:23Z Guest68411 joined #lisp 2016-11-25T15:23:02Z cluck joined #lisp 2016-11-25T15:23:05Z attila_lendvai quit (Ping timeout: 260 seconds) 2016-11-25T15:25:31Z Karl_Dscc joined #lisp 2016-11-25T15:26:31Z zeissoctopus quit (Quit: Leaving) 2016-11-25T15:28:34Z jlarocco joined #lisp 2016-11-25T15:33:49Z jlarocco quit (Ping timeout: 265 seconds) 2016-11-25T15:34:30Z beach joined #lisp 2016-11-25T15:34:38Z beach: Good afternoon everyone! 2016-11-25T15:34:44Z manuel__ joined #lisp 2016-11-25T15:37:25Z phoe: Hey beach! 2016-11-25T15:37:33Z beach: minion: memo for jusss: If you are still confused about evaluation, have a look at this link containing an explanation I prepared especially for you: http://metamodular.com/for-jusss.text 2016-11-25T15:37:34Z minion: Remembered. I'll tell jusss when he/she/it next speaks. 2016-11-25T15:40:03Z beach: phoe: What's up? 2016-11-25T15:40:18Z phoe: beach: found some time to sit into Common Lisp again. 2016-11-25T15:40:35Z phoe: And I found out on my own why it's a poor idea to hold configuration inside dynamic variables. 2016-11-25T15:41:08Z phoe: Mostly because I sat to the code I wrote about a month ago and I was like, who the hell wrote this crap. 2016-11-25T15:41:43Z phoe: I mean - I can see the overall code quality of my Lisp improve. 2016-11-25T15:41:54Z beach: Yeah, it happens to all of us. 2016-11-25T15:42:02Z phoe: Because I essentially start over again every time I begin anew. 2016-11-25T15:42:16Z phoe: And move files one by one into the new project. 2016-11-25T15:42:22Z Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2016-11-25T15:42:27Z phoe: The code that's already fairly solid just goes, whoosh, it's there. 2016-11-25T15:42:37Z phoe: But code that I wrote recently, it essentially gets refactored. 2016-11-25T15:43:03Z phoe: So each iteration processes quickly for the code I consider good *after* I look at it from a distance, and goes slowly for code that I want refactored after I look at it from a distance. 2016-11-25T15:43:24Z phoe: And it teaches me a lot about Lisp code style. 2016-11-25T15:43:30Z Karl_Dscc quit (Remote host closed the connection) 2016-11-25T15:43:47Z django_ joined #lisp 2016-11-25T15:43:51Z django_: i feel dumb 2016-11-25T15:44:05Z phoe: django_: uh? 2016-11-25T15:44:06Z phoe: Why? 2016-11-25T15:44:13Z django_: ( defvar *db* (list 1 2 3) ) 2016-11-25T15:44:15Z django_: (dolist(val *db*) (format t val) ) 2016-11-25T15:44:19Z django_: why doesnt it just print the values? 2016-11-25T15:44:31Z phoe: django_: (format t val) 2016-11-25T15:44:41Z django_: yeah im doing that 2016-11-25T15:44:43Z phoe: (format t "~D~%" val) 2016-11-25T15:44:51Z phoe: you want this, I presume 2016-11-25T15:44:59Z ecraven: or (princ val) 2016-11-25T15:45:14Z phoe: ecraven: PRINC won't do any whitespace AFAIK 2016-11-25T15:45:22Z phoe: and I think he wants 1 2 3 printed and not 123 2016-11-25T15:45:32Z django_: does how does the ~D~"% work? 2016-11-25T15:45:40Z phoe: clhs format 2016-11-25T15:45:40Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_format.htm 2016-11-25T15:45:43Z ecraven: django_: ~D means integer, ~% means newline 2016-11-25T15:45:50Z phoe: Basically - FORMAT is pretty huge and complicated. 2016-11-25T15:45:55Z ecraven: so that won't give you 1 2 3 either, but 1\n2\n3\n :D 2016-11-25T15:45:55Z phoe: For now, you can stick to what ecraven said. 2016-11-25T15:46:06Z phoe: Okay, sheesh, "~D " 2016-11-25T15:46:26Z django_: ah 2016-11-25T15:46:37Z ecraven: phoe: that'll print a trailing space.. probably there's a way to fix this with FORMAT, but I'm really bad at non-basic format use 2016-11-25T15:47:14Z django_: (dolist (cd *db*) (format t "~{~a:~10t~a~%~}~%" cd))) 2016-11-25T15:47:19Z django_: Im trying to understand that 2016-11-25T15:47:59Z grublet2 joined #lisp 2016-11-25T15:48:00Z Ven joined #lisp 2016-11-25T15:48:23Z phoe: ecraven: ~{ ~} is iteration 2016-11-25T15:48:38Z phoe: so it'll do the clauses inside for each element of cd 2016-11-25T15:49:43Z ecraven: I wish Scheme had something like FORMAT :-/ 2016-11-25T15:50:16Z beach: ecraven: Just program in Common Lisp instead. 2016-11-25T15:50:33Z phoe: ecraven: https://www.gnu.org/software/guile/manual/html_node/Formatted-Output.html 2016-11-25T15:50:35Z phoe: also what beach said 2016-11-25T15:51:38Z grublet quit (Ping timeout: 256 seconds) 2016-11-25T15:51:45Z ecraven: beach: that would solve many problems :D 2016-11-25T15:52:26Z beach: What is stopping you? 2016-11-25T15:53:06Z ecraven: what is ~q? "Inquiry message"? sbcl dies on that 2016-11-25T15:53:25Z phoe: ecraven: ? 2016-11-25T15:53:29Z phoe: where did you get ~q from? 2016-11-25T15:53:33Z ecraven: that page you linked 2016-11-25T15:53:36Z ecraven: last entry 2016-11-25T15:53:39Z phoe: ooh 2016-11-25T15:53:44Z phoe: this is Guile Scheme's format. 2016-11-25T15:53:45Z ecraven: ah, sorry, my fault 2016-11-25T15:53:50Z phoe: no doubt it doesn't work on CL. 2016-11-25T15:53:52Z ecraven: hehe, I thought it was the hyperspec 2016-11-25T15:54:04Z phoe: oh, right 2016-11-25T15:54:04Z ecraven: though it does look totally different, thinking about it 2016-11-25T15:54:09Z phoe: it's Guile Scheme 2016-11-25T15:54:35Z ecraven: ah, that format is actually from SLIB 2016-11-25T15:55:23Z ecraven: anyway, the main reason is that I like lisp-1 2016-11-25T15:55:33Z ecraven: for no particular reason, it just seems nice to me 2016-11-25T15:56:07Z phoe: ecraven: 2016-11-25T15:56:07Z phoe: guile> (format #t "~q") 2016-11-25T15:56:07Z phoe: SLIB Common LISP format version 3.0 2016-11-25T15:56:07Z phoe: (C) copyright 1992-1994 by Dirk Lutzebaeck 2016-11-25T15:56:07Z phoe: please send bug reports to `lutzeb@cs.tu-berlin.de' 2016-11-25T15:56:08Z iippo quit (Quit: Konversation terminated!) 2016-11-25T15:56:15Z phoe: that's what it tells me 2016-11-25T15:56:17Z ecraven: yea, just tried that 2016-11-25T15:56:31Z phoe: #t felt weird when I was typing it 2016-11-25T15:56:46Z phoe: must be the GNU creeping along my spine 2016-11-25T15:56:57Z ecraven: phoe: hehe, r7rs mandates #true and #false if you like that better :P 2016-11-25T15:59:05Z phoe: ecraven: ewwww 2016-11-25T15:59:17Z phoe: this actually sucks 2016-11-25T15:59:22Z phoe: longer names 2016-11-25T15:59:29Z manuel__ quit (Quit: manuel__) 2016-11-25T16:00:06Z ecraven: phoe: I agree... #t/#f aren't ideal, but certainly better than #true and #false 2016-11-25T16:00:36Z gilez joined #lisp 2016-11-25T16:04:17Z django_ quit (Ping timeout: 240 seconds) 2016-11-25T16:05:21Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2016-11-25T16:06:30Z cluck: i wonder if guile now kinda sorta counts as a common lisp in a twisted way since it is massive, comes with batteries included and can run emacs that has (require 'cl) 2016-11-25T16:06:54Z phoe: cluck: does it implement the CLHS? 2016-11-25T16:07:33Z quazimodo quit (Ping timeout: 245 seconds) 2016-11-25T16:07:57Z phoe: Guile as a backend for elisp doesn't necessarily constitute CL yet 2016-11-25T16:08:23Z drdo: racket is pretty cool 2016-11-25T16:08:44Z cluck: https://www.gnu.org/software/guile/manual/html_node/Nil.html it has t, f and nil does that count ;D 2016-11-25T16:08:48Z ecraven: most Scheme *implementations* come with batteries included, it's just that the *standard* was very minimal (r7rs-large tries to fix that) 2016-11-25T16:09:16Z eivarv joined #lisp 2016-11-25T16:10:04Z BusFactor1 joined #lisp 2016-11-25T16:10:55Z cluck: joking aside, i suspect the guile vm could be a very interesting target for a cl implementation 2016-11-25T16:11:19Z knobo: igam: great idea. Maybe I'll just use asdf. 2016-11-25T16:12:54Z igam: knobo: there are other kinds of configuration. asdf like makefiles are for compilation-time configuration. There is also installation-time configuration and run-time configuration. Those are different things. 2016-11-25T16:13:32Z igam: cluck: one idea of sicl is to be easily retargettable. You should be able to port it to the guile vm. 2016-11-25T16:13:48Z EvW quit (Ping timeout: 245 seconds) 2016-11-25T16:13:51Z igam: cluck: (drmeister ported parts of it to llvm). 2016-11-25T16:15:40Z phoe: igam: this would be sick 2016-11-25T16:15:47Z phoe: Common Lisp which compiles down to Scheme 2016-11-25T16:15:58Z igam: This wouldn't be the first time it's been done. 2016-11-25T16:16:02Z igam: And vice versa. 2016-11-25T16:16:09Z igam: Cf. Butterfly CL. 2016-11-25T16:16:22Z sellout- joined #lisp 2016-11-25T16:16:25Z igam: or CommonMusic (version 2). 2016-11-25T16:16:34Z phoe: now this is something I didn't know, Butterfly CL 2016-11-25T16:17:29Z cluck: more important than that, once on the guile vm it could theoretically interact with all other langs the vm supports 2016-11-25T16:18:02Z igam: Not so easily. It's not because you're running on a VM that your data structures are compatible. 2016-11-25T16:18:23Z igam: cf. eg. nil=() in CL vs. nil != () != false in scheme in pseudo-scheme. 2016-11-25T16:18:54Z igam: In CL, strings are vectors are arrays. Not so in scheme. 2016-11-25T16:19:22Z igam: In CL you have one numerical tower, in scheme an entirely different one. 2016-11-25T16:19:49Z igam: And we're talking CL vs scheme, don't even think about C, Java, JavaScript, Ruby, etc. 2016-11-25T16:20:45Z igam: Basically, interoperable language implementations are language implementations that draw a lot on their standard definition. 2016-11-25T16:21:12Z igam: Which means that it may not be so easy in practice to use them to compile and run random code. 2016-11-25T16:21:14Z varjag quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2016-11-25T16:21:31Z Trystam joined #lisp 2016-11-25T16:21:31Z Trystam quit (Changing host) 2016-11-25T16:21:31Z Trystam joined #lisp 2016-11-25T16:22:29Z rpg joined #lisp 2016-11-25T16:22:57Z jlarocco joined #lisp 2016-11-25T16:23:06Z strelox joined #lisp 2016-11-25T16:24:03Z Tristam quit (Ping timeout: 256 seconds) 2016-11-25T16:24:25Z Trystam is now known as Tristam 2016-11-25T16:25:11Z william3 quit (Remote host closed the connection) 2016-11-25T16:25:11Z bobo joined #lisp 2016-11-25T16:25:45Z FreeBirdLjj joined #lisp 2016-11-25T16:26:23Z william3 joined #lisp 2016-11-25T16:26:30Z przl quit (Ping timeout: 265 seconds) 2016-11-25T16:27:27Z jlarocco quit (Ping timeout: 256 seconds) 2016-11-25T16:28:32Z grublet2 quit (Quit: Leaving) 2016-11-25T16:28:42Z flamebeard quit (Quit: Leaving) 2016-11-25T16:28:57Z william3 quit (Remote host closed the connection) 2016-11-25T16:29:08Z william3 joined #lisp 2016-11-25T16:29:37Z cluck: igam: see the link i previously posted 2016-11-25T16:30:12Z FreeBirdLjj quit (Ping timeout: 246 seconds) 2016-11-25T16:30:17Z cluck: also guile vm != scheme 2016-11-25T16:31:07Z karswell joined #lisp 2016-11-25T16:32:13Z cluck: (don't get me wrong, there's lots of influence and scheme _is_ the first class citizen by definition but you should think of the guile vm as akin to llvm, an IL of sorts) 2016-11-25T16:33:04Z shrdlu68 joined #lisp 2016-11-25T16:34:14Z cluck: (and to counter your examples, there's an ecmascript implementation though i have no idea about its completeness status) 2016-11-25T16:35:34Z igam: cluck: this is what I mean, the VM can have unification or low level data structures. But if you implement a strict scheme where the three objects are different, you will have problems when passing those objects to CL where they're the same identical object. 2016-11-25T16:36:17Z cluck: besides, CL was *designed* to do this in the lispms, cl interacting with other langs' data structures is nothing new 2016-11-25T16:37:11Z igam: cluck: but not as native data! 2016-11-25T16:37:30Z igam: scheme:nil scheme:empty-list and scheme:false have nothing in common with cl:nil. 2016-11-25T16:38:30Z igam: and (scheme:+ 1.0s0 1.0f0 1.0d0 1.0l0 1/2) may very well not be possible at all. 2016-11-25T16:39:14Z igam: cluck: this means that you need a FFI, and you need to convert the data when crossing the FFI border. 2016-11-25T16:40:20Z igam: Paradoxically, it may be easier to deal with user defined types (structures or classes), because you may provide a more homogeneous functional abstration to deal with them. (but don't count on it either, notably if you try to subclass across the FFI border). 2016-11-25T16:40:37Z cluck: igam: what are you talking about? guile vm's nil is pretty much the same as cl's 2016-11-25T16:41:14Z cluck: did you even look at the link? 2016-11-25T16:41:50Z igam: for example what is the value of (cl:let ((x (scheme:list)) (y (scheme:= 1 0)) (z (scheme:string->symbol "nil"))) (assert (and (eq x y) (eq x z))) (scheme:dotted-list-p (scheme:cons 'x (elt (vector x y z) (random 3))))) 2016-11-25T16:41:57Z igam: cluck: I looked at it. 2016-11-25T16:42:22Z cluck: granted they aren't the same but they are to be used as primitives not booleans 2016-11-25T16:42:35Z igam: cluck: they probably made the right practical choice, but it means that either scheme won't be scheme, or scheme will have to stay incompatible. 2016-11-25T16:42:47Z cdmp joined #lisp 2016-11-25T16:43:17Z igam: I should have written scheme:dotted-list? :-) 2016-11-25T16:43:19Z cluck: you can implement cl's logic just fine (if you couldn't elisp could not run atop it) 2016-11-25T16:43:29Z cluck: but* 2016-11-25T16:44:49Z travv0 joined #lisp 2016-11-25T16:45:14Z igam: what I mean is whatever you do at the VM level (and it helps, I won't deny it), you will still have to write (cons 'x (convert-cl-nil-to-scheme-empty-list (elt (vector x y z) (random 3)))) and you will have to have a CL discriminant between (scheme:list) (scheme:= 1 0) (scheme:string->symbol "nil") because you'll find scheme data structures where the difference is important! 2016-11-25T16:45:58Z igam: And (mapcar 'convert-cl-float-to-scheme-inexact '(1.0s0 1.0f0 1.0d0 1.0l0)) 2016-11-25T16:46:19Z travv0 quit (Remote host closed the connection) 2016-11-25T16:47:28Z cluck: wait, i suspect our disagreement is more due to getting lost in translation than different viewpoints 2016-11-25T16:47:50Z igam: ok. 2016-11-25T16:50:27Z papachan quit (Ping timeout: 260 seconds) 2016-11-25T16:50:30Z Fare quit (Quit: Leaving) 2016-11-25T16:50:37Z cluck: iiuc you're saying the data passed around isn't transparently transformed while i'm saying the primitives are shared and thus it only requires minor contextual transformations 2016-11-25T16:51:22Z cluck: is that it? are we arguing about nothing? 2016-11-25T16:51:52Z shka quit (Quit: Konversation terminated!) 2016-11-25T16:54:26Z cdmp quit (Quit: leaving) 2016-11-25T16:55:09Z rippa joined #lisp 2016-11-25T16:56:32Z MrMc quit (Remote host closed the connection) 2016-11-25T16:56:44Z MrMc joined #lisp 2016-11-25T17:00:57Z Khisanth quit (Ping timeout: 268 seconds) 2016-11-25T17:01:06Z mrottenkolber joined #lisp 2016-11-25T17:02:57Z scymtym quit (Ping timeout: 240 seconds) 2016-11-25T17:03:06Z william3 quit (Remote host closed the connection) 2016-11-25T17:03:46Z igam: cluck: yes. 2016-11-25T17:03:52Z igam: We're both right. 2016-11-25T17:04:32Z papachan joined #lisp 2016-11-25T17:06:11Z phoe throws a party 2016-11-25T17:07:25Z bobo left #lisp 2016-11-25T17:07:31Z Reinisch quit (Quit: Leaving...) 2016-11-25T17:07:47Z Reinisch joined #lisp 2016-11-25T17:08:09Z shrdlu68 quit (Ping timeout: 256 seconds) 2016-11-25T17:09:56Z manuel__ joined #lisp 2016-11-25T17:10:24Z slyrus_ quit (Ping timeout: 250 seconds) 2016-11-25T17:13:24Z Khisanth joined #lisp 2016-11-25T17:16:48Z jlarocco joined #lisp 2016-11-25T17:16:51Z carenz quit (Quit: Leaving) 2016-11-25T17:17:56Z nilof: THe only difference between defvar and defparameter is whether or not it will update an already bound variable? 2016-11-25T17:18:12Z beach: Yes. 2016-11-25T17:18:27Z macdavid313 quit (Remote host closed the connection) 2016-11-25T17:18:45Z macdavid313 joined #lisp 2016-11-25T17:20:00Z nilof: If I have a defparameter inside a let form, will it change the local variable or the shadowed global variable? 2016-11-25T17:20:07Z jlarocco quit (Remote host closed the connection) 2016-11-25T17:20:14Z jlarocco joined #lisp 2016-11-25T17:20:25Z TDT joined #lisp 2016-11-25T17:20:38Z beach: nilof: DEFPARAMETER and DEFVAR create special variables. 2016-11-25T17:21:24Z White_Flame: defparameter performs an assignment, so I would presume it changes the current binding 2016-11-25T17:21:26Z beach: Whether or not those LET bindings refer to lexical or special variables will depend on whether you compiled your LET form before or after doing the first DEF**. 2016-11-25T17:22:37Z beach: nilof: It is highly unusual to have DEFPARAMETER or DEFVAR inside a LET. They are usually at the top-level. 2016-11-25T17:22:47Z igam: actually this is a good question. 2016-11-25T17:23:11Z igam: (let ((foo)) (declare (special foo)) (defparameter foo 42)) would not depend on a previous declaration of foo. 2016-11-25T17:23:35Z beach: Right. 2016-11-25T17:23:45Z igam: defparameter itself includes a declaration, but it is a "run-time" declaration, so it couldn't be taken into account when compiling the let form. 2016-11-25T17:24:16Z cluck quit (Remote host closed the connection) 2016-11-25T17:24:19Z White_Flame: nilof: so in summary, it depends on what the LET knows, moreso than the DEF* 2016-11-25T17:24:40Z igam: In general, it's better to avoid non-toplevel use of def* forms. 2016-11-25T17:28:37Z macdavid314 joined #lisp 2016-11-25T17:30:07Z macdavid313 quit (Ping timeout: 260 seconds) 2016-11-25T17:30:08Z macdavid314 is now known as macdavid313 2016-11-25T17:30:31Z phoe: igam: with the only exception being EVAL-WHEN 2016-11-25T17:31:03Z zaquest quit (Ping timeout: 260 seconds) 2016-11-25T17:33:39Z m00natic quit (Remote host closed the connection) 2016-11-25T17:34:42Z beach: phoe: Top-level form is not necessarily at the top level. :) 2016-11-25T17:35:03Z shrdlu68 joined #lisp 2016-11-25T17:35:09Z beach: phoe: Forms inside eval-when are sometimes top level. 2016-11-25T17:35:23Z beach: clhs 3.2.3.1 2016-11-25T17:35:24Z specbot: Processing of Top Level Forms: http://www.lispworks.com/reference/HyperSpec/Body/03_bca.htm 2016-11-25T17:36:49Z phoe: beach: note taken. 2016-11-25T17:42:12Z ak5 quit (Quit: WeeChat 1.6) 2016-11-25T17:42:44Z FreeBirdLjj joined #lisp 2016-11-25T17:43:17Z hhdave quit (Ping timeout: 240 seconds) 2016-11-25T17:48:03Z zaquest joined #lisp 2016-11-25T18:02:24Z sellout-1 joined #lisp 2016-11-25T18:03:14Z FreeBirdLjj quit (Remote host closed the connection) 2016-11-25T18:04:26Z sellout- quit (Ping timeout: 258 seconds) 2016-11-25T18:05:52Z defaultxr joined #lisp 2016-11-25T18:18:40Z EvW joined #lisp 2016-11-25T18:22:33Z FreeBirdLjj joined #lisp 2016-11-25T18:28:56Z varjag joined #lisp 2016-11-25T18:30:25Z shka_ joined #lisp 2016-11-25T18:34:07Z krwq joined #lisp 2016-11-25T18:37:56Z krwq: good morning :) 2016-11-25T18:38:55Z cluck joined #lisp 2016-11-25T18:40:45Z dddddd joined #lisp 2016-11-25T18:41:15Z Amplituhedron joined #lisp 2016-11-25T18:41:39Z beach: Hello krwq. 2016-11-25T18:45:56Z zygentoma joined #lisp 2016-11-25T18:46:49Z redF joined #lisp 2016-11-25T18:46:58Z FreeBirdLjj quit 2016-11-25T18:47:10Z robotoad joined #lisp 2016-11-25T18:47:29Z FreeBirdLjj joined #lisp 2016-11-25T18:58:42Z neoncontrails joined #lisp 2016-11-25T19:00:45Z manuel__ quit (Quit: manuel__) 2016-11-25T19:05:34Z scymtym joined #lisp 2016-11-25T19:07:41Z redF: hello 2016-11-25T19:08:14Z ggole quit (Quit: ggole) 2016-11-25T19:10:15Z akkad: what would be the right way to reduce this code https://gist.github.com/9743eab3e674146c228b0c43469f9894 2016-11-25T19:10:53Z krwq: iterate on names and generate code 2016-11-25T19:11:49Z Xach: akkad: macrolet is one way to do it. (macrolet ((a-generator-macro (&rest classes) ...)) (a-generator-macro additionaleventdata awsregion ...))))) 2016-11-25T19:16:37Z eivarv quit (Quit: Sleep) 2016-11-25T19:17:36Z akkad: nice thanks 2016-11-25T19:18:23Z space_otter joined #lisp 2016-11-25T19:18:25Z fredy_ joined #lisp 2016-11-25T19:19:37Z rpg quit (Ping timeout: 240 seconds) 2016-11-25T19:19:52Z fredy_ quit (Client Quit) 2016-11-25T19:20:31Z redF quit (Quit: Page closed) 2016-11-25T19:22:47Z manuel__ joined #lisp 2016-11-25T19:22:58Z EvW quit (Ping timeout: 245 seconds) 2016-11-25T19:26:23Z fredy_ joined #lisp 2016-11-25T19:27:36Z rpg_ joined #lisp 2016-11-25T19:27:42Z crupizkas joined #lisp 2016-11-25T19:28:02Z fredy_: exit 2016-11-25T19:28:07Z fredy_ quit (Client Quit) 2016-11-25T19:28:41Z attila_lendvai joined #lisp 2016-11-25T19:31:18Z eivarv joined #lisp 2016-11-25T19:32:11Z crupizkas quit (Client Quit) 2016-11-25T19:37:25Z nullniverse quit (Read error: Connection reset by peer) 2016-11-25T19:38:37Z nullniverse joined #lisp 2016-11-25T19:38:52Z rumbler31 joined #lisp 2016-11-25T19:39:04Z sjl joined #lisp 2016-11-25T19:39:49Z alexherbo2 joined #lisp 2016-11-25T19:40:28Z alexherbo2 quit (Client Quit) 2016-11-25T19:40:43Z EvW joined #lisp 2016-11-25T19:41:25Z alexherbo2 joined #lisp 2016-11-25T19:42:33Z attila_lendvai quit (Ping timeout: 260 seconds) 2016-11-25T19:48:57Z attila_lendvai joined #lisp 2016-11-25T19:48:57Z attila_lendvai quit (Changing host) 2016-11-25T19:48:57Z attila_lendvai joined #lisp 2016-11-25T19:50:34Z jlarocco quit (Ping timeout: 250 seconds) 2016-11-25T19:52:07Z TDT quit (Quit: TDT) 2016-11-25T19:52:55Z vtomole joined #lisp 2016-11-25T19:53:30Z jlarocco joined #lisp 2016-11-25T19:54:37Z akkad: irc is harsd 2016-11-25T19:56:33Z attila_lendvai quit (Ping timeout: 260 seconds) 2016-11-25T19:59:47Z jlarocco quit (Ping timeout: 268 seconds) 2016-11-25T20:02:44Z macdavid314 joined #lisp 2016-11-25T20:02:45Z macdavid313 quit (Ping timeout: 248 seconds) 2016-11-25T20:02:57Z macdavid314 is now known as macdavid313 2016-11-25T20:04:25Z rpg_ quit (Read error: Connection reset by peer) 2016-11-25T20:04:40Z rpg joined #lisp 2016-11-25T20:10:49Z rumbler31 quit (Remote host closed the connection) 2016-11-25T20:13:58Z mrottenkolber quit (Ping timeout: 268 seconds) 2016-11-25T20:15:30Z LooneyTunes joined #lisp 2016-11-25T20:24:04Z manuel__ quit (Quit: manuel__) 2016-11-25T20:25:05Z Fare joined #lisp 2016-11-25T20:26:13Z hhdave joined #lisp 2016-11-25T20:28:58Z LooneyTunes quit (Remote host closed the connection) 2016-11-25T20:30:48Z hhdave quit (Ping timeout: 260 seconds) 2016-11-25T20:37:35Z attila_lendvai joined #lisp 2016-11-25T20:37:43Z papachan quit (Ping timeout: 244 seconds) 2016-11-25T20:37:55Z daniel-s joined #lisp 2016-11-25T20:40:36Z LooneyTunes joined #lisp 2016-11-25T20:44:38Z LooneyTunes quit (Remote host closed the connection) 2016-11-25T20:45:21Z LooneyTunes joined #lisp 2016-11-25T20:47:36Z shka_ quit (Quit: Konversation terminated!) 2016-11-25T20:47:47Z jlarocco joined #lisp 2016-11-25T20:47:51Z LooneyTunes quit (Remote host closed the connection) 2016-11-25T20:49:03Z sjl quit (Read error: Connection reset by peer) 2016-11-25T20:50:45Z cluck: is that the contraction of harsh+hard? 2016-11-25T20:51:15Z cluck: (+ half arsed ?) 2016-11-25T20:51:37Z attila_lendvai quit (Ping timeout: 260 seconds) 2016-11-25T20:52:18Z cluck: heh, that was a valid sexp, i must be thinking about humor in lisp 2016-11-25T20:52:34Z atgreen joined #lisp 2016-11-25T20:53:44Z jlarocco quit (Ping timeout: 244 seconds) 2016-11-25T20:54:37Z shka joined #lisp 2016-11-25T20:55:12Z papachan joined #lisp 2016-11-25T20:57:38Z shka quit (Remote host closed the connection) 2016-11-25T21:00:22Z shka joined #lisp 2016-11-25T21:09:39Z eivarv quit (Quit: Sleep) 2016-11-25T21:11:53Z rpg quit (Ping timeout: 258 seconds) 2016-11-25T21:12:06Z akkad: The function (COMMON-LISP:SETF LEM::BUFFER-HEAD-LINE) is undefined. hmm 2016-11-25T21:13:31Z robotoad quit (Quit: robotoad) 2016-11-25T21:17:02Z nullniverse quit (Quit: Leaving) 2016-11-25T21:17:12Z quazimodo joined #lisp 2016-11-25T21:17:50Z phoe: akkad: LEM has some bugs 2016-11-25T21:17:59Z phoe: I think I stumbled upon that one, actually 2016-11-25T21:18:54Z eivarv joined #lisp 2016-11-25T21:19:04Z akkad: ahh 2016-11-25T21:23:38Z bocaneri quit (Read error: Connection reset by peer) 2016-11-25T21:25:16Z robotoad joined #lisp 2016-11-25T21:28:37Z PuercoPop: akkad: weird, in theory it should be defined by (define-class buffer ... head-line) See https://github.com/cxxxr/lem/blob/00b20b168f84b2e63c1a0771c7a50a211e6c0ed4/src/header.lisp#L14 2016-11-25T21:29:01Z PuercoPop: weirder still that the author wants to mimick accessors with functions 2016-11-25T21:31:10Z attila_lendvai joined #lisp 2016-11-25T21:31:54Z space_otter quit (Remote host closed the connection) 2016-11-25T21:33:14Z shka: hmmm 2016-11-25T21:33:21Z shka: PuercoPop: weird code 2016-11-25T21:33:28Z space_otter joined #lisp 2016-11-25T21:33:46Z space_otter quit (Remote host closed the connection) 2016-11-25T21:36:56Z rpg joined #lisp 2016-11-25T21:37:06Z phoe: ay 2016-11-25T21:37:13Z phoe: writing Lisp is pleasure 2016-11-25T21:37:25Z PuercoPop: shka: indeed, the author is probably doing that for 'performance'. 2016-11-25T21:38:50Z shka: PuercoPop: you can do that without macro 2016-11-25T21:39:08Z shka: if it really matters 2016-11-25T21:39:12Z PuercoPop: Btw there is no guarantee that prog1 preserve the top levelness of the form right? The ideally the return value of define-class should be the new class as well 2016-11-25T21:39:36Z Fare tries to think of a positive lesson from his painful retrofitting of phase separation into ASDF. 2016-11-25T21:39:39Z gingerale quit (Remote host closed the connection) 2016-11-25T21:39:46Z Fare: in vain 2016-11-25T21:39:55Z shka: why so negative? 2016-11-25T21:40:16Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2016-11-25T21:42:02Z jlarocco joined #lisp 2016-11-25T21:44:42Z space_otter joined #lisp 2016-11-25T21:44:49Z fiddlerwoaroof: Is it conforming to use a symbol from cl: as a function argument? 2016-11-25T21:45:17Z fiddlerwoaroof: i.e. something like (defun foo (type string ...) ...) 2016-11-25T21:46:54Z fiddlerwoaroof: Asking, because the declaration errors here are throwing errors in SBCL: https://github.com/kanru/cl-mustache/blob/master/mustache.lisp#L245 2016-11-25T21:46:57Z jlarocco quit (Ping timeout: 246 seconds) 2016-11-25T21:47:11Z fiddlerwoaroof: s/declaration errors/declarations/ 2016-11-25T21:49:00Z PuercoPop: fiddlerwoaroof: works fine on my machine 2016-11-25T21:49:10Z PuercoPop: what error are you encountering? 2016-11-25T21:49:41Z Fare: shka: so much pain for so little result 2016-11-25T21:50:01Z Fare: I don't know that anyone is using ASDF in a context where my bug fixes matter much. 2016-11-25T21:50:20Z Fare: certainly Google isn't using asdf anymore -- they use Bazel. 2016-11-25T21:50:51Z shka: wtf is bazel anyway? 2016-11-25T21:51:12Z Fare: maybe I have the vague hope that someday ASDF can be transformed into something that can rival with Bazel, at least for building Lisp software. 2016-11-25T21:51:16Z fiddlerwoaroof: PuercoPop: https://github.com/kanru/cl-mustache/issues/25 2016-11-25T21:51:16Z fiddlerwoaroof: 2016-11-25T21:52:15Z Fare: https://github.com/qitab/bazelisp 2016-11-25T21:52:43Z shka: thanks 2016-11-25T21:52:45Z MrMc quit (Ping timeout: 265 seconds) 2016-11-25T21:53:02Z PuercoPop: fiddlerwoaroof: you aren't given enough information there. Which SBCL version are you running? What are the steps to reproduce? (ej (ql:quickload :cl-mustache) ?) What OS? 2016-11-25T21:53:13Z attila_lendvai quit (Ping timeout: 260 seconds) 2016-11-25T21:53:32Z fiddlerwoaroof: Yeah, one second 2016-11-25T21:53:46Z fiddlerwoaroof: The lisp version is in the issue title 2016-11-25T21:55:07Z gilez quit (Quit: Lost terminal) 2016-11-25T21:55:28Z EvW quit (Ping timeout: 245 seconds) 2016-11-25T21:55:40Z fiddlerwoaroof: PuercoPop: updated the comment, but I just realized I'm not exactly sure how to reproduce this 2016-11-25T21:56:12Z PuercoPop: fiddlerwoaroof: what other dependencies are in the other system? 2016-11-25T21:56:19Z fiddlerwoaroof: It's an issue that seems to occur randomly: sometimes I can quickload it fine, sometimes it fails. 2016-11-25T21:56:36Z EvW1 joined #lisp 2016-11-25T21:57:05Z shka: Fare: so now we should use bazel? Not gonna happen anytime, soon, fix asdf :P 2016-11-25T21:57:26Z fiddlerwoaroof: I wonder if it's actually a sbcl issue, I've had this problem intermittently for a long time 2016-11-25T21:57:30Z fiddlerwoaroof: Puercopop: https://github.com/fiddlerwoaroof/araneus/blob/master/araneus.asd 2016-11-25T21:58:47Z fiddlerwoaroof: However, SBCL's manual suggests that line 246 of mustache.lisp is non-conforming: http://sbcl.org/manual/index.html#Lexical-Bindings-and-Declarations 2016-11-25T22:01:44Z Fare: shka: well, currently Bazel only supports Lisp with SBCL on Linux x64 2016-11-25T22:02:08Z Fare: there's no conceptual hurdle to porting it to other platforms, just a SMOP (ha ha) 2016-11-25T22:02:22Z scymtym quit (Remote host closed the connection) 2016-11-25T22:02:28Z shka: well, i may consider trying it instead of cmake 2016-11-25T22:02:37Z shka: because cmake is no-fun 2016-11-25T22:02:42Z hardenedapple quit (Quit: WeeChat 1.6) 2016-11-25T22:03:05Z shka: though google seems to throw random build systems one after another 2016-11-25T22:05:28Z Fare: bazel is the one they use internally for everything they can 2016-11-25T22:05:35Z quazimodo quit (Ping timeout: 268 seconds) 2016-11-25T22:05:45Z shka: well, nice 2016-11-25T22:05:48Z PuercoPop: fiddlerwoaroof: Sorry, I can't reproduce. Tried loading the dependencies first then cl-mustache but no error. But I'm on not on 1.3.7. 2016-11-25T22:06:58Z quazimodo joined #lisp 2016-11-25T22:07:18Z eivarv quit (Quit: Sleep) 2016-11-25T22:08:55Z PuercoPop: fiddlerwoaroof: you should note in the issue that the error doesn't happen when you load cl-mustache directly but randomly when loading it as dependency. 2016-11-25T22:09:31Z PuercoPop: Btw, why are you using spinneret and cl-mustache? Don't they cover the same space? 2016-11-25T22:10:31Z fiddlerwoaroof: Yeah, the project sort of needs cleanup 2016-11-25T22:11:15Z fiddlerwoaroof: I started out with mustache because I was trying to port some templates from a python app I have and then I added spinneret because I wanted to be able to define pages inline in my views. 2016-11-25T22:11:16Z shka: Fare: i kinda hate to say it, but bazel looks actually interesting 2016-11-25T22:11:29Z shka: i can build C and lisp with same system 2016-11-25T22:11:39Z shka: which seems to be useful 2016-11-25T22:14:22Z vtomole quit (Quit: Page closed) 2016-11-25T22:14:42Z vlatkoB quit (Remote host closed the connection) 2016-11-25T22:15:43Z xuxuru joined #lisp 2016-11-25T22:17:40Z eivarv joined #lisp 2016-11-25T22:17:55Z cluck` joined #lisp 2016-11-25T22:17:58Z EvW1 quit (Ping timeout: 245 seconds) 2016-11-25T22:18:13Z sellout-1 quit (Quit: Leaving.) 2016-11-25T22:19:15Z cluck quit (Remote host closed the connection) 2016-11-25T22:19:45Z cluck` is now known as cluck 2016-11-25T22:19:45Z travv0 joined #lisp 2016-11-25T22:20:02Z LooneyTunes joined #lisp 2016-11-25T22:20:27Z cluck quit (Client Quit) 2016-11-25T22:21:16Z atgreen quit (Ping timeout: 258 seconds) 2016-11-25T22:24:45Z LooneyTunes quit (Remote host closed the connection) 2016-11-25T22:25:53Z EvW joined #lisp 2016-11-25T22:26:04Z LooneyTunes joined #lisp 2016-11-25T22:27:35Z neoncontrails quit (Remote host closed the connection) 2016-11-25T22:29:13Z shrdlu68 quit (Ping timeout: 245 seconds) 2016-11-25T22:30:39Z Fare: shka: why hate say it? 2016-11-25T22:32:09Z varjag quit (Ping timeout: 260 seconds) 2016-11-25T22:32:58Z prxq joined #lisp 2016-11-25T22:35:09Z shka: Fare: well, i thought that you would want us to see asdf as a better system 2016-11-25T22:36:22Z jlarocco joined #lisp 2016-11-25T22:40:37Z jlarocco quit (Ping timeout: 248 seconds) 2016-11-25T22:42:05Z handicraftsman joined #lisp 2016-11-25T22:53:01Z quazimodo quit (Read error: Connection reset by peer) 2016-11-25T22:54:57Z travv0 quit (Remote host closed the connection) 2016-11-25T22:55:19Z william3 joined #lisp 2016-11-25T22:55:31Z angavrilov quit (Remote host closed the connection) 2016-11-25T22:57:44Z _death: yet another sbcl bug :(... http://paste.lisp.org/display/332457 2016-11-25T22:58:24Z quazimodo joined #lisp 2016-11-25T22:59:11Z shka: where exactly bug hides? 2016-11-25T22:59:24Z william3 quit (Ping timeout: 246 seconds) 2016-11-25T23:01:20Z _death: if a constant is redefined, and the thing that uses it is also redefined, I'd expect the latter to use the new value of the former 2016-11-25T23:02:09Z krwq: _death: as far as i know redefining constants is an undefined behavior 2016-11-25T23:02:37Z stepnem quit (Ping timeout: 252 seconds) 2016-11-25T23:03:00Z _death: krwq: this is not a standards question, it's an implementation question 2016-11-25T23:03:05Z shka: "or to assign it to a different value using a subsequent defconstant." 2016-11-25T23:03:12Z shka: http://clhs.lisp.se/Body/m_defcon.htm 2016-11-25T23:03:35Z _death: I'm guessing it's a regression.. if not, the CONTINUE restart is worthless 2016-11-25T23:04:17Z ja-barr quit (Quit: ZNC 1.6.1 - http://znc.in) 2016-11-25T23:04:47Z quazimodo quit (Ping timeout: 268 seconds) 2016-11-25T23:05:03Z shka: _death: so it used to work as you would like to? 2016-11-25T23:05:46Z _death: shka: I believe so, but I haven't tested on an old version to verify 2016-11-25T23:07:23Z _death: also, I think everyone would like it to work that way, not just I... 2016-11-25T23:07:39Z shka: it is undefined behavior 2016-11-25T23:08:12Z prxq: so: nasal dragons, etc. 2016-11-25T23:08:16Z fiddlerwoaroof: _death: wouldn't that make certain optimizations difficult? 2016-11-25T23:08:17Z _death: sigh 2016-11-25T23:08:29Z krwq: _death: depends what are the trade-offs - if everything would work faster (due to some clever caching) without this feature I'd prefer it not to work 2016-11-25T23:08:45Z _death: fine.. forget about it. 2016-11-25T23:09:28Z shka: _death: (declare (optimize safety)) 2016-11-25T23:09:28Z krwq: _death: if there is no advantage of not having this i'd rather have it working 2016-11-25T23:09:37Z prxq: defconstant sucks. That's the truth about it. 2016-11-25T23:09:42Z shka: in your function 2016-11-25T23:10:13Z shka: and you can redefine your constant 2016-11-25T23:10:26Z _death: shka: did you try the test case 2016-11-25T23:10:26Z krwq: i'm getting quite annoyed with defconstant when defining strings and reevaling file but fortunatelly alexandria has define-constant 2016-11-25T23:10:33Z shka: _death: yes 2016-11-25T23:11:10Z _death: shka: is it the same version, does it give the output _I_ would like 2016-11-25T23:11:52Z shka: add (declare (optimize safety)) to your encapsulate function 2016-11-25T23:12:01Z papachan quit (Quit: Saliendo) 2016-11-25T23:12:03Z shka: and it does here 2016-11-25T23:12:30Z BusFactor1 quit (Ping timeout: 256 seconds) 2016-11-25T23:12:54Z shka: ok, so now 2016-11-25T23:13:00Z shka: how to install bazel… 2016-11-25T23:13:26Z yrk quit (Read error: Connection reset by peer) 2016-11-25T23:14:23Z shka: damn 2016-11-25T23:14:30Z shka: i should go to sleep instead 2016-11-25T23:14:38Z shka: take care everyone! 2016-11-25T23:15:05Z krwq: good night shka! 2016-11-25T23:15:54Z _death: doesn't work here 2016-11-25T23:16:24Z dddddd quit (Remote host closed the connection) 2016-11-25T23:17:20Z scymtym joined #lisp 2016-11-25T23:18:47Z _death: it's likely just a stupid pcl cache bug.. I keep finding these silly behaviors lately, and I just know that if I try another implementation I'll find others.. 2016-11-25T23:19:44Z shka quit (Ping timeout: 260 seconds) 2016-11-25T23:20:06Z krwq: _death: at least fork if you start new impl :) 2016-11-25T23:21:48Z PuercoPop: _death: doesn't SBCL signal an error when you redefine the constant? http://www.sbcl.org/manual/#Defining-Constants 2016-11-25T23:21:53Z robotoad quit (Quit: robotoad) 2016-11-25T23:22:07Z _death: PuercoPop: I choose the CONTINUE restart that it provides.. and then redefine everything that references that constant 2016-11-25T23:22:16Z _death: PuercoPop: something I've been doing for 10 years 2016-11-25T23:22:19Z PuercoPop: Or you are choosing the change value restart and lamenting that SBCL doesn't do what you want on UD? 2016-11-25T23:22:56Z _death: PuercoPop: if redefining everything that uses that constant does not reference the new value, that is simply stupid, as it makes the CONTINUE restart worthless 2016-11-25T23:23:24Z handicraftsman quit (Quit: Leaving) 2016-11-25T23:23:47Z Fare: shka: asdf is better... than the competition written in CL, so far. 2016-11-25T23:23:48Z neoncontrails joined #lisp 2016-11-25T23:24:01Z PuercoPop: it is a best effort restart. The clearly warn you against it in the reference of the error message. Certainly not a bug. Although clearly not the most desirable behavior 2016-11-25T23:24:17Z Fare: shka: I want UIOP to be seen as better, and ASDF+UIOP as a way to enable CL scripting. 2016-11-25T23:24:37Z Fare: but bazel is vastly superior in terms of multi-language support, deterministic build, parallelization, etc. 2016-11-25T23:24:45Z Fare: it's also a huge dog in term of code size 2016-11-25T23:25:15Z Fare: ASDF+UIOP is ~13kloc 2016-11-25T23:25:29Z _death: PuercoPop: fine, it's not a bug.. I'll just (decf sbcl-sanity-expectation) 2016-11-25T23:25:47Z Fare: bazel including all libraries might be several Mloc of code 2016-11-25T23:26:07Z borodust: @all, where can I find sources of cl-cont? 2016-11-25T23:26:34Z _death will try ccl now 2016-11-25T23:27:06Z Fare: borodust, ask Google? Or use hu.dwim.delico ? 2016-11-25T23:27:13Z borodust: did 2016-11-25T23:27:48Z PuercoPop: borodust: https://github.com/quicklisp/quicklisp-projects/blob/master/projects/cl-cont/source.txt 2016-11-25T23:28:33Z borodust: PuercoPop: tnx much 2016-11-25T23:29:00Z Fare: quicklisp-projects/projects/cl-cont/source.txt says it's in darcs http://common-lisp.net/project/cl-cont/darcs/cl-cont 2016-11-25T23:30:14Z jlarocco joined #lisp 2016-11-25T23:32:48Z FreeBirdLjj quit (Remote host closed the connection) 2016-11-25T23:34:56Z jlarocco quit (Ping timeout: 244 seconds) 2016-11-25T23:35:12Z daniel-s quit (Remote host closed the connection) 2016-11-25T23:35:24Z drmeister: How do you debug a problem where your code is retaining a lot of one kind of object? 2016-11-25T23:36:24Z Fare: what do you mean? 2016-11-25T23:36:28Z _death: welp, at least ccl gives expected behavior for this scenario 2016-11-25T23:38:45Z Fare: drmeister, you mean, like a memory leak? 2016-11-25T23:39:03Z atgreen joined #lisp 2016-11-25T23:39:36Z manuel__ joined #lisp 2016-11-25T23:39:47Z FreeBirdLjj joined #lisp 2016-11-25T23:41:00Z drmeister: Yes - I suppose so. 2016-11-25T23:41:17Z prxq: patience & coffe 2016-11-25T23:41:20Z drmeister: Clasp accumulates 320MB of string-output-streams when it's compiling Cleavir. 2016-11-25T23:41:22Z prxq: coffee, even 2016-11-25T23:42:08Z prxq: that's a bit excessive, I agree:-) 2016-11-25T23:43:59Z drmeister: I just realized that I had set the NeedsFinalization policy for string-output-stream's to 'True' - not good. 2016-11-25T23:44:17Z Karl_Dscc joined #lisp 2016-11-25T23:47:23Z zygentoma quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2016-11-25T23:48:03Z warweasle joined #lisp 2016-11-25T23:49:12Z drmeister: How do memory leaks happen in a memory managed language like Common Lisp? 2016-11-25T23:49:53Z drmeister: I suppose I should know the answer to this - I don't 2016-11-25T23:50:11Z _death: for example by holding references to objects that are no longer used 2016-11-25T23:50:15Z prxq: some things are kept forever, like symbols. If something creates symbols at random, it can fill up memory. 2016-11-25T23:50:34Z Fare: drmeister, bugs in your code, bugs in the GC 2016-11-25T23:50:40Z drmeister: Ok, I see those. 2016-11-25T23:50:41Z Fare: or conservativeness in the GC 2016-11-25T23:50:43Z _death: symbols aren't necessarily kept forever 2016-11-25T23:51:03Z prxq: you can have a bug where you accumulate stuff into a list, but never release or clean up the list. 2016-11-25T23:51:18Z prxq: That sometimes happens when debugging routines are forgotten. 2016-11-25T23:51:50Z Fare: the hu.dwim guys had a system to debug code-level memory leaks on SBCL 2016-11-25T23:52:32Z Fare: basically, tracing all objects from given roots, and saving the path in a hash-table 2016-11-25T23:53:23Z _death: anyway, first thing I notice is that ccl is slower. but I'll keep at it for now. 2016-11-25T23:53:33Z Fare: slower than what? 2016-11-25T23:53:36Z _death: sbcl 2016-11-25T23:53:38Z prxq: slower than sbcl? certainly 2016-11-25T23:53:56Z al-damiri quit (Quit: Connection closed for inactivity) 2016-11-25T23:54:02Z prxq: sbcl is borderline ridiculous in that respect 2016-11-25T23:54:05Z _death: for just doing some vecto and saving a png.. the difference is quite noticeable 2016-11-25T23:54:12Z Fare: it compiles 2-4x faster, the resulting code is 2-4x slower. 2016-11-25T23:54:44Z _death: Fare: no, it's much slower than that in my test case. also, it doesn't have its own profiler it seems 2016-11-25T23:55:09Z Akardi joined #lisp 2016-11-25T23:55:58Z _death: (also, I believe vecto and its dependencies don't have sbcl-specific code..) 2016-11-25T23:57:19Z Fare: sbcl may have a few optimizations