2014-09-01T00:08:47Z ccl-logbot joined #lisp 2014-09-01T00:08:47Z 2014-09-01T00:08:47Z names: ccl-logbot ^Posterdati^ stoned lupine AeroNotix_ shwouchk redline6561_ Ralt nightshade427 nitro_idiot_ luis` arpunk ThePhoeron_ sivoais_ lemoinem spockokt_ jackdani1l cross_ tstc ineiros_ Faed josteink Phreak GuilOooo_ devn jsnell_ cods__ Adeon_ micro_ ski_ vsync- MightyJoe ``Erik_ angavrilov d4gg4d____ sepi``` popsorange cpape``` didi defaultxr mncoder kristof phax wizzo Vutral __prefect nug700_ Aranshada|W__ kobain_ Nizumzen scottj ndrei nand1 Ethan- 2014-09-01T00:08:47Z names: Adlai ejbs ikki Rptx TheDerpSquad logand` dmiles_afk EvW1 kirin` nell zwer blueingress innertracks MrWoohoo khisanth_ davorb1 oleo hellome tadni Patzy attila_lendvai [F]tarball vert2 Tordek farawayexplorer Patzy_ BitPuffin paul0 fortitude newcup Oddity Fare araujo isoraqathedh resttime bgs100 sigjuice codeburg segv- wgl dxtr cy DrCode eni drmeister karswell` _schulte_ z0d thierrygar wchun girrig K1rk tkd_ tomaw ck_ _death felipe galdor mood brucem sellout 2014-09-01T00:08:47Z names: Okasu l3thal edran eMBee flip214 endou__ justinmcp_ mal_ alpha- yano OmegaAlpha _bryan Natch jasom bobbysmith007 tessier smull_ bambams TDT leoc Bike Denommus oGMo pchrist troydm hzp teiresias frkout clop2 p_l|backup ``Erik misv Krystof Lefeni eak stopbit mgv Tristam posterdati300 theBlackDragon matija ozzloy_ Guest12563 Odin- hugod manfoo7` cpt_nemo ered tomaw- Kabaka Xach sid_cypher joshe faheem Soft gensym arrdem AntiSpamMeta dlowe sytse sjl- ircbrowse 2014-09-01T00:08:47Z names: rvirding victor_lowther Neet aksatac_ DKordic` tbarletz Subfusc_ _ku minion Blkt White__Flame lacedaemon _tca birk aerique_ johs ft phf john-mcaleely benny felideon keen________ jdz Sgeo_ Nshag WeirdEnthusiast jtz pok funnel faheem_ chit honkfestival alchemis7 cwandrews ferada nimiux aoh finnrobi yauz_2 setheus_ qbit fmu mathrick axion easye acieroid clog nicdev effy stacksmith sprang ggherdov __main__ cmbntr_ wormphle1m necronian njsg zymurgy tkd 2014-09-01T00:08:47Z names: schoppenhauer GGMethos srcerer_ yeltzooo Neptu Tuxedo_ killmaster tokenrov1 bege BlastHardcheese dan64- FunfYears copec diginet eazar001 grungier daimrod stokachu lusory eagleflo dim eee-blt rk[imposter] j_king schjetne pjb replcated H4ns gko Svetlana ivan\ _5kg leo2007 specbot Colleen__ whartung TheMoonMaster nightfly gabot splittist_ Borbus kbtr junke_ j0ni jchochli_ enn emartenson__ ttm cyphase byte48 oconnore yakccd PuercoPop xristos tvaalen harish 2014-09-01T00:08:47Z names: ahungry_ mtd sfa yroeht1 ThomasSolti antoszka jayne scharan FracV_ p_l hyoyoung anannie ChibaPet Anarch quasisane angavrilov_ slyrus akkad vhost- mdallastella bjorkintosh eigenlicht_ gz_ Ober_ ineiros arbscht ramus jsnell kyl peccu1 sklr milosn AndroidShoutapop brown`` sword` |3b| imanc_ superjudge__ c74d mr-foobar c3w` zbigniew decent_ sausages_ Shozan otwieracz Mandus sshirokov marsam abbe rvchangue sbryant inklesspen joga rainbyte heddwch TristamWrk 2014-09-01T00:08:47Z names: foom2 nisstyre rotty les farhaven wasamasa s_e kpreid yeticry matko joast xebd` ecraven Longlius mac_ified guaqua d4gg4d___ blakbunnie27 drewc dfox whmark AdmiralBumbleBee phadthai Jesin gluegadget atgreen tajjada kalzz stepnem djinni` gadmyth zeitue Kruppe bit` varjag vlnx malice yacks froggey LiamH kjeldahl pillton cibs zz_karupa nyef stanislav wooden samebchase mikaelj_ awaythrick_ bcoburn seg_ ssake 2014-09-01T00:14:09Z ccl-logbot joined #lisp 2014-09-01T00:14:09Z 2014-09-01T00:14:09Z names: ccl-logbot zRecursive joneshf-laptop joneshf ^Posterdati^ stoned lupine AeroNotix_ shwouchk redline6561_ Ralt nightshade427 nitro_idiot_ luis` arpunk ThePhoeron_ sivoais_ lemoinem spockokt_ jackdani1l cross_ tstc ineiros_ Faed josteink Phreak GuilOooo_ devn jsnell_ cods__ Adeon_ micro_ ski_ vsync- MightyJoe ``Erik_ angavrilov d4gg4d___ sepi``` popsorange cpape``` didi defaultxr mncoder kristof phax wizzo Vutral __prefect nug700_ Aranshada|W__ kobain_ 2014-09-01T00:14:09Z names: Nizumzen scottj ndrei nand1 Ethan- Adlai ejbs ikki Rptx TheDerpSquad logand` dmiles_afk EvW1 kirin` nell zwer blueingress innertracks MrWoohoo khisanth_ davorb1 oleo hellome tadni Patzy attila_lendvai [F]tarball vert2 Tordek farawayexplorer Patzy_ BitPuffin paul0 fortitude newcup Oddity Fare araujo isoraqathedh resttime bgs100 sigjuice codeburg segv- wgl dxtr cy DrCode eni drmeister karswell` _schulte_ z0d thierrygar wchun girrig K1rk ssake seg_ bcoburn 2014-09-01T00:14:09Z names: awaythrick_ mikaelj_ samebchase wooden stanislav nyef zz_karupa cibs pillton kjeldahl LiamH froggey yacks malice vlnx varjag bit` Kruppe zeitue gadmyth djinni` stepnem kalzz tajjada atgreen gluegadget Jesin phadthai AdmiralBumbleBee whmark dfox drewc blakbunnie27 guaqua mac_ified Longlius ecraven xebd` joast matko yeticry kpreid s_e wasamasa farhaven les rotty nisstyre foom2 TristamWrk heddwch rainbyte joga inklesspen sbryant rvchangue abbe marsam sshirokov 2014-09-01T00:14:09Z names: Mandus otwieracz Shozan sausages_ decent_ zbigniew c3w` mr-foobar c74d superjudge__ imanc_ |3b| sword` brown`` AndroidShoutapop milosn sklr peccu1 kyl ramus arbscht Ober_ gz_ eigenlicht_ bjorkintosh mdallastella vhost- akkad slyrus quasisane Anarch ChibaPet anannie hyoyoung p_l FracV_ scharan jayne antoszka ThomasSolti yroeht1 sfa mtd ahungry_ harish tvaalen xristos PuercoPop yakccd oconnore byte48 cyphase ttm emartenson__ enn jchochli_ j0ni junke_ kbtr 2014-09-01T00:14:09Z names: Borbus splittist_ gabot nightfly TheMoonMaster whartung Colleen__ specbot leo2007 _5kg ivan\ Svetlana gko H4ns replcated pjb schjetne j_king rk[imposter] eee-blt dim eagleflo lusory stokachu daimrod grungier eazar001 diginet copec FunfYears dan64- BlastHardcheese bege tokenrov1 killmaster Tuxedo_ Neptu yeltzooo srcerer_ GGMethos schoppenhauer tkd zymurgy njsg necronian wormphle1m cmbntr_ __main__ ggherdov sprang stacksmith effy nicdev clog acieroid easye 2014-09-01T00:14:09Z names: axion mathrick fmu qbit setheus_ yauz_2 finnrobi aoh nimiux ferada cwandrews alchemis7 honkfestival chit faheem_ funnel pok jtz WeirdEnthusiast Nshag Sgeo_ jdz keen________ felideon benny john-mcaleely phf ft johs aerique_ birk _tca lacedaemon White__Flame Blkt minion _ku Subfusc_ tbarletz DKordic` aksatac_ Neet victor_lowther rvirding ircbrowse sjl- sytse dlowe AntiSpamMeta arrdem gensym Soft faheem joshe sid_cypher Xach Kabaka tomaw- ered cpt_nemo 2014-09-01T00:14:09Z names: manfoo7` hugod Odin- Guest12563 ozzloy_ matija theBlackDragon posterdati300 Tristam tkd_ tomaw ck_ _death felipe galdor mood brucem sellout Okasu l3thal edran eMBee flip214 endou__ justinmcp_ mal_ alpha- yano OmegaAlpha _bryan Natch jasom bobbysmith007 tessier smull_ bambams TDT leoc Bike Denommus oGMo pchrist troydm hzp teiresias frkout clop2 p_l|backup misv Krystof Lefeni eak stopbit mgv 2014-09-01T00:19:30Z ccl-logbot joined #lisp 2014-09-01T00:19:30Z 2014-09-01T00:19:30Z names: ccl-logbot kcj hiyosi theos zRecursive joneshf-laptop joneshf ^Posterdati^ stoned lupine AeroNotix_ shwouchk redline6561_ Ralt nightshade427 nitro_idiot_ luis` arpunk ThePhoeron_ sivoais_ lemoinem spockokt_ jackdani1l cross_ tstc ineiros_ Faed josteink Phreak GuilOooo_ devn jsnell_ cods__ Adeon_ micro_ ski_ vsync- MightyJoe ``Erik_ angavrilov d4gg4d___ sepi``` popsorange cpape``` didi defaultxr mncoder kristof phax wizzo Vutral __prefect nug700_ 2014-09-01T00:19:30Z names: Aranshada|W__ kobain_ scottj ndrei nand1 Ethan- Adlai ejbs ikki Rptx TheDerpSquad logand` dmiles_afk EvW1 kirin` nell zwer blueingress innertracks MrWoohoo khisanth_ davorb1 oleo hellome tadni Patzy attila_lendvai [F]tarball vert2 Tordek farawayexplorer Patzy_ BitPuffin paul0 fortitude newcup Oddity Fare araujo isoraqathedh resttime bgs100 sigjuice codeburg segv- wgl dxtr cy DrCode eni drmeister karswell` _schulte_ z0d thierrygar wchun girrig K1rk ssake 2014-09-01T00:19:30Z names: seg_ bcoburn awaythrick_ mikaelj_ samebchase wooden stanislav nyef zz_karupa cibs pillton kjeldahl LiamH froggey yacks malice vlnx varjag bit` Kruppe zeitue gadmyth djinni` stepnem kalzz tajjada atgreen gluegadget Jesin phadthai AdmiralBumbleBee whmark dfox drewc blakbunnie27 guaqua mac_ified Longlius ecraven xebd` joast matko yeticry kpreid s_e wasamasa farhaven les rotty nisstyre foom2 TristamWrk heddwch rainbyte inklesspen sbryant rvchangue abbe 2014-09-01T00:19:30Z names: marsam sshirokov Mandus otwieracz Shozan sausages_ decent_ zbigniew c3w` mr-foobar c74d superjudge__ imanc_ |3b| sword` brown`` joga AndroidShoutapop milosn sklr peccu1 kyl ramus arbscht Ober_ gz_ eigenlicht_ bjorkintosh mdallastella vhost- akkad slyrus quasisane Anarch ChibaPet anannie hyoyoung p_l FracV_ scharan jayne antoszka ThomasSolti yroeht1 sfa mtd ahungry_ harish tvaalen xristos PuercoPop yakccd oconnore byte48 cyphase ttm emartenson__ enn 2014-09-01T00:19:30Z names: jchochli_ j0ni junke_ kbtr Borbus splittist_ gabot nightfly TheMoonMaster whartung Colleen__ specbot leo2007 _5kg ivan\ Svetlana gko H4ns replcated pjb schjetne j_king rk[imposter] eee-blt dim eagleflo lusory stokachu daimrod grungier eazar001 diginet copec FunfYears dan64- BlastHardcheese bege tokenrov1 killmaster Tuxedo_ Neptu yeltzooo srcerer_ GGMethos schoppenhauer tkd zymurgy njsg necronian wormphle1m cmbntr_ __main__ ggherdov sprang stacksmith 2014-09-01T00:19:30Z names: effy nicdev clog acieroid easye axion mathrick fmu qbit setheus_ yauz_2 finnrobi aoh nimiux ferada cwandrews alchemis7 honkfestival chit faheem_ funnel pok jtz WeirdEnthusiast Nshag Sgeo_ jdz keen________ felideon benny john-mcaleely phf ft johs aerique_ birk _tca lacedaemon White__Flame Blkt minion _ku Subfusc_ tbarletz DKordic` aksatac_ Neet victor_lowther rvirding ircbrowse sjl- sytse dlowe AntiSpamMeta arrdem gensym Soft faheem joshe sid_cypher Xach 2014-09-01T00:19:30Z names: Kabaka tomaw- ered cpt_nemo manfoo7` hugod Odin- Guest12563 ozzloy_ matija theBlackDragon posterdati300 Tristam mgv stopbit eak Lefeni Krystof misv p_l|backup clop2 frkout teiresias hzp troydm pchrist oGMo Denommus Bike leoc TDT bambams smull_ tessier bobbysmith007 jasom Natch _bryan OmegaAlpha yano alpha- mal_ justinmcp_ endou__ flip214 eMBee edran l3thal Okasu sellout brucem mood galdor tkd_ tomaw ck_ _death felipe 2014-09-01T00:23:00Z harish quit (Quit: Leaving) 2014-09-01T00:25:48Z thierrygar quit (Quit: thierrygar) 2014-09-01T00:30:34Z harish joined #lisp 2014-09-01T00:35:12Z ndrei quit (Ping timeout: 245 seconds) 2014-09-01T00:35:12Z gadmyth quit (Read error: Connection reset by peer) 2014-09-01T00:35:26Z araujo quit (Ping timeout: 250 seconds) 2014-09-01T00:37:10Z varjag quit (Quit: Connection closed for inactivity) 2014-09-01T00:37:48Z xebd` quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-01T00:38:25Z xebd` joined #lisp 2014-09-01T00:38:45Z araujo joined #lisp 2014-09-01T00:39:11Z AeroNotix_ is now known as AeroNotix 2014-09-01T00:40:31Z nand1 quit (Remote host closed the connection) 2014-09-01T00:52:07Z jusss joined #lisp 2014-09-01T00:52:23Z kcj quit (Read error: Connection reset by peer) 2014-09-01T00:53:30Z pyx joined #lisp 2014-09-01T00:54:45Z didi quit (Ping timeout: 240 seconds) 2014-09-01T00:55:57Z CrazyEddy joined #lisp 2014-09-01T00:57:04Z djinni` quit (Remote host closed the connection) 2014-09-01T01:01:30Z pyx quit (Quit: WeeChat 0.4.3) 2014-09-01T01:02:18Z __prefect quit (Ping timeout: 250 seconds) 2014-09-01T01:02:32Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-01T01:04:48Z stepnem quit (Ping timeout: 255 seconds) 2014-09-01T01:05:03Z djinni` joined #lisp 2014-09-01T01:05:05Z djinni` quit (Remote host closed the connection) 2014-09-01T01:08:29Z djinni` joined #lisp 2014-09-01T01:09:47Z harish quit (Ping timeout: 245 seconds) 2014-09-01T01:16:29Z myrkraverk joined #lisp 2014-09-01T01:16:41Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-01T01:17:04Z djinni` quit (Remote host closed the connection) 2014-09-01T01:18:52Z CrazyEddy joined #lisp 2014-09-01T01:19:23Z araujo quit (Ping timeout: 240 seconds) 2014-09-01T01:20:14Z spacebat joined #lisp 2014-09-01T01:21:57Z popsorange quit (Ping timeout: 240 seconds) 2014-09-01T01:21:59Z araujo joined #lisp 2014-09-01T01:22:38Z djinni` joined #lisp 2014-09-01T01:23:36Z echo-area joined #lisp 2014-09-01T01:26:05Z mncoder quit (Read error: Connection reset by peer) 2014-09-01T01:26:07Z davorb joined #lisp 2014-09-01T01:26:11Z mncoder_ joined #lisp 2014-09-01T01:26:52Z ejbs quit (Ping timeout: 240 seconds) 2014-09-01T01:29:01Z malice quit (Remote host closed the connection) 2014-09-01T01:29:48Z davorb1 quit (Ping timeout: 260 seconds) 2014-09-01T01:30:35Z phax quit (Quit: Leaving) 2014-09-01T01:31:47Z kanru joined #lisp 2014-09-01T01:34:20Z yrdz joined #lisp 2014-09-01T01:39:10Z didi joined #lisp 2014-09-01T01:44:27Z yrdz quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-01T01:58:55Z yrk joined #lisp 2014-09-01T01:59:22Z yrk quit (Changing host) 2014-09-01T01:59:22Z yrk joined #lisp 2014-09-01T02:03:10Z theethicalegoist joined #lisp 2014-09-01T02:03:14Z gabot quit (Remote host closed the connection) 2014-09-01T02:03:26Z gabot joined #lisp 2014-09-01T02:05:34Z CrazyEddy quit (Ping timeout: 250 seconds) 2014-09-01T02:07:30Z Uber-Ich joined #lisp 2014-09-01T02:08:12Z zophy joined #lisp 2014-09-01T02:27:29Z cy quit (Quit: i should go to bed) 2014-09-01T02:28:07Z TheDerpSquad quit (Read error: Connection reset by peer) 2014-09-01T02:28:29Z TheDerpSquad joined #lisp 2014-09-01T02:30:44Z frkout_ joined #lisp 2014-09-01T02:34:36Z frkout quit (Ping timeout: 250 seconds) 2014-09-01T02:36:50Z sausages_ quit (Quit: leaving) 2014-09-01T02:38:02Z zRecursive: clhs macrolet 2014-09-01T02:38:02Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_flet_.htm 2014-09-01T02:38:04Z BitPuffin quit (Ping timeout: 250 seconds) 2014-09-01T02:38:23Z TheDerpSquad quit (Read error: Connection reset by peer) 2014-09-01T02:40:32Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-01T02:40:48Z didi left #lisp 2014-09-01T02:46:35Z LiamH quit (Quit: Leaving.) 2014-09-01T02:47:50Z heddwch quit (Quit: ZNC - http://znc.in) 2014-09-01T02:50:47Z heddwch joined #lisp 2014-09-01T02:52:37Z nell joined #lisp 2014-09-01T03:04:09Z mine joined #lisp 2014-09-01T03:04:53Z ThePhoeron_ is now known as ThePhoeron 2014-09-01T03:06:08Z mine: Does any one have the ebook Artificial Intelligence by Patrick Winston? 2014-09-01T03:07:57Z nyef: mine: I believe that my copy is a second edition, BICBW. 2014-09-01T03:08:02Z nyef: Why do you ask? 2014-09-01T03:08:03Z kobain_ is now known as kobain 2014-09-01T03:08:42Z nyef: Very old-school AI, IIRC. 2014-09-01T03:11:08Z nyef: Just checked my shelf, I have the first and second editions. 2014-09-01T03:12:35Z mine: nyef: Can you give me a link? 2014-09-01T03:12:41Z [F]tarball quit 2014-09-01T03:12:52Z frkout joined #lisp 2014-09-01T03:13:01Z nyef: Oh, sorry, you asked for ebook. I have physical copies. 2014-09-01T03:13:21Z nyef: (Oddly, "the ebook" looks like a typo of "the book".) 2014-09-01T03:13:30Z mine: nyef: Ok. thanks. 2014-09-01T03:13:55Z nyef: Shouldn't be particularly expensive used, I wouldn't think. 2014-09-01T03:14:36Z logand`: AeroNotix: it has been done before; many times; it's actually rather easy because you dont need read-n-bits as you originaly suggested, simply read byte(s) and extract required bits from that which is almost trivial 2014-09-01T03:14:52Z frkout_ quit (Ping timeout: 245 seconds) 2014-09-01T03:14:56Z Fare quit (Remote host closed the connection) 2014-09-01T03:16:11Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-01T03:17:27Z attila_lendvai quit (Quit: Leaving.) 2014-09-01T03:17:46Z mine quit (Ping timeout: 246 seconds) 2014-09-01T03:20:42Z nyef quit (Quit: Sleep beckons) 2014-09-01T03:29:23Z CrazyEddy joined #lisp 2014-09-01T03:34:20Z fortitude quit (Quit: Leaving) 2014-09-01T03:34:38Z Uber-Ich quit (Quit: leaving) 2014-09-01T03:40:45Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-01T03:40:58Z wol joined #lisp 2014-09-01T03:44:27Z EvW1 quit (Ping timeout: 245 seconds) 2014-09-01T03:47:21Z Karl_Dscc joined #lisp 2014-09-01T03:48:22Z ikki quit (Ping timeout: 240 seconds) 2014-09-01T03:48:37Z optikalmouser joined #lisp 2014-09-01T03:51:27Z eni quit (Ping timeout: 245 seconds) 2014-09-01T03:55:13Z nell joined #lisp 2014-09-01T04:05:18Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-01T04:07:33Z Zhivago joined #lisp 2014-09-01T04:07:52Z hiyosi joined #lisp 2014-09-01T04:07:57Z Zhivago quit (Changing host) 2014-09-01T04:07:57Z Zhivago joined #lisp 2014-09-01T04:08:48Z Rotacidni joined #lisp 2014-09-01T04:10:01Z kushal joined #lisp 2014-09-01T04:12:21Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-01T04:13:43Z Rptx quit (Quit: gonna sleep!) 2014-09-01T04:16:05Z sivoais_ is now known as sivoais 2014-09-01T04:16:08Z sivoais quit (Changing host) 2014-09-01T04:16:08Z sivoais joined #lisp 2014-09-01T04:16:26Z op12345 joined #lisp 2014-09-01T04:17:15Z op12345: Hi, new here and to LISP. Can someone recommend good performant packages for postgresql, json, html generation, redis, image manipulation, and serving? 2014-09-01T04:17:57Z Zhivago: I'd start by looking at what quicklisp supports. 2014-09-01T04:18:16Z beach joined #lisp 2014-09-01T04:18:24Z beach: Good morning everyone! 2014-09-01T04:20:48Z Oddity: hi 2014-09-01T04:20:55Z logand`: morning 2014-09-01T04:21:14Z Bike: op12345: cl-json, cl-who, opticl, hunchentoot? 2014-09-01T04:24:15Z op12345: thanks Zhivago, Bike 2014-09-01T04:24:47Z op12345: I'll give them a shot 2014-09-01T04:28:34Z myrkraverk quit (Ping timeout: 250 seconds) 2014-09-01T04:29:14Z logand`: op12345: for postgres postmodern (or maybe it's called ecl-postgres) 2014-09-01T04:29:17Z drmeister quit (Remote host closed the connection) 2014-09-01T04:29:31Z logand`: cl-postgres i mean 2014-09-01T04:30:59Z op12345 quit (Quit: Leaving) 2014-09-01T04:32:02Z nand1 joined #lisp 2014-09-01T04:32:26Z beach: Strange way to start learning Lisp in my opinion. 2014-09-01T04:36:12Z Karl_Dscc quit (Remote host closed the connection) 2014-09-01T04:37:24Z Ethan- quit (Ping timeout: 260 seconds) 2014-09-01T04:40:29Z Zhivago: Trying to do something useful is usually a good way to start, as long as you expect to fail. 2014-09-01T04:41:25Z ASau joined #lisp 2014-09-01T04:42:08Z myrkraverk joined #lisp 2014-09-01T04:53:09Z tajjada quit (Ping timeout: 240 seconds) 2014-09-01T04:53:57Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-01T04:55:10Z tajjada joined #lisp 2014-09-01T04:55:49Z innertracks quit (Quit: innertracks) 2014-09-01T04:57:07Z mr-foobar quit (Quit: Leaving...) 2014-09-01T04:58:12Z bit` quit (Ping timeout: 245 seconds) 2014-09-01T04:58:43Z kristof: Zhivago: I think using libraries for json and html generation would be quite difficult if you don't have a firm grasp of macros and lisp's evaluation semantics 2014-09-01T05:00:15Z Clarice joined #lisp 2014-09-01T05:00:47Z zwer: maybe I am getting paranoid but I think he was trolling and expected to get "there are no such libraries" answer. 2014-09-01T05:02:46Z Bike: you are paranoid. he went into more detail in another channel 2014-09-01T05:02:54Z Clarice quit (Remote host closed the connection) 2014-09-01T05:03:06Z zwer: extremely weird way to start learning a new language, then 2014-09-01T05:03:08Z Clarice joined #lisp 2014-09-01T05:03:18Z kristof quit (Ping timeout: 255 seconds) 2014-09-01T05:03:32Z kushal quit (Quit: Leaving) 2014-09-01T05:07:53Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-01T05:08:35Z CrazyEddy joined #lisp 2014-09-01T05:08:36Z hiyosi joined #lisp 2014-09-01T05:09:39Z Clarice quit (Remote host closed the connection) 2014-09-01T05:09:58Z Clarice joined #lisp 2014-09-01T05:11:28Z sdemarre joined #lisp 2014-09-01T05:12:37Z araujo quit (Quit: Leaving) 2014-09-01T05:13:07Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-01T05:13:31Z innertracks joined #lisp 2014-09-01T05:14:56Z bit` joined #lisp 2014-09-01T05:17:34Z beach: zwer: That was exactly what I was thinking (trolling). 2014-09-01T05:18:04Z Clarice: What was trolling? 2014-09-01T05:18:08Z beach: I guess I am getting paranoid as well. 2014-09-01T05:18:29Z beach: Clarice: Oh, someone who showed up for the first time asking for several libraries. 2014-09-01T05:18:38Z zwer: for all we know he pulled a more detailed, elaborate troll on another channel :) 2014-09-01T05:18:47Z zwer: +ing 2014-09-01T05:18:57Z scottj: what does it say about a language/community when people assume someone who asks for json/sql/etc library recommendations must be trolling? 2014-09-01T05:19:18Z beach: scottj: That it has a lot of experience with such things? 2014-09-01T05:19:27Z zwer: scottj, that wasn't the weird part, the "I am new to the language" that preceeded it was 2014-09-01T05:20:13Z scottj: zwer: if someone wasn't knew to the language, they'd probably already know about the popular libraries. seems pretty normal to me. 2014-09-01T05:20:28Z Clarice: Well, Practical Common Lisp does web serving and binary parsing. 2014-09-01T05:21:17Z Clarice: Big projects are not a bad way to learn Lisp, I.e. just jumping right in 2014-09-01T05:23:09Z zwer: scottj when you are new to the language it makes sense to stick to the basics, syntax, types, string manipulation. not to ask for half a dozen libraries that cover anything from a web server to image manipulation. but I guess it depends how new he really was 2014-09-01T05:23:12Z myrkraverk quit (Remote host closed the connection) 2014-09-01T05:23:42Z innertracks quit (Quit: innertracks) 2014-09-01T05:26:44Z zardy joined #lisp 2014-09-01T05:27:08Z Bike: nobody wants to learn programming so they can print hello world. 2014-09-01T05:27:10Z zardy: why is lambda a macro that expands to #'(lambda ...)? that seems very weird and unnecessary? 2014-09-01T05:27:20Z zwer: baby steps first, though 2014-09-01T05:27:40Z zwer: if he just wanted a glue language that doesn't require much thought or learning he should have picked python. 2014-09-01T05:27:43Z Bike: zardy: because the FUNCTION special form (aka #') is the only way to refer to functions 2014-09-01T05:28:37Z zardy: but lambda is unnamed function. there are no possible name clashes 2014-09-01T05:29:02Z beach: zardy: What would you have preferred? 2014-09-01T05:29:29Z zardy: no preference just wondering 2014-09-01T05:29:44Z beach: zardy: 1. That lambda be a special operator? 2. That it not be possible to write just (lambda ...) so that you had to write #'(lambda ...) all the time? 2014-09-01T05:30:37Z Zhivago: It's because FUNCTION is where the magic happens. 2014-09-01T05:30:52Z snits joined #lisp 2014-09-01T05:31:02Z beach: zardy: My guess would be that it has historical reasons. It was already possible to write (function (lambda ...)), so the macro was introduced to make it more convenient. 2014-09-01T05:31:21Z zardy: why doesnt this cause infinite recursion at compile time 2014-09-01T05:31:43Z Bike: because the function special operator doesn't macroexpand its argument. 2014-09-01T05:31:48Z beach: zardy: The LAMBDA in (function (lambda ...)) is not evaluated. 2014-09-01T05:32:55Z john-mcaleely quit (Remote host closed the connection) 2014-09-01T05:33:01Z john-mcaleely joined #lisp 2014-09-01T05:33:10Z zardy: what does lambda refer to in (function (lambda ? 2014-09-01T05:33:21Z Bike: it's just a symbol. 2014-09-01T05:33:32Z Bike: http://www.lispworks.com/documentation/lw51/CLHS/Body/s_lambda.htm 2014-09-01T05:34:16Z jusss joined #lisp 2014-09-01T05:34:21Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-01T05:34:23Z zardy: so function macro handles being passed a lambda 2014-09-01T05:34:34Z beach: Yes. 2014-09-01T05:34:45Z zardy: weird shit :) 2014-09-01T05:34:55Z beach: zardy: Historical baggage for you. 2014-09-01T05:34:56Z zardy: but it makes sense now 2014-09-01T05:34:57Z Bike: function is a special operator, not a macro, but basically yes. 2014-09-01T05:35:25Z john-mcaleely quit (Remote host closed the connection) 2014-09-01T05:35:31Z john-mcaleely joined #lisp 2014-09-01T05:36:17Z hiroakip joined #lisp 2014-09-01T05:36:19Z harish_ joined #lisp 2014-09-01T05:36:27Z Clarice: zardy: the lambda that you see in the macroexpansion of the lambda macro is actually a special operator 2014-09-01T05:36:58Z beach: Clarice: No it isn't. 2014-09-01T05:37:04Z Bike: no, it's a symbol. 2014-09-01T05:37:11Z Clarice: I thought it was :o 2014-09-01T05:37:15Z beach: clhs lambda 2014-09-01T05:37:15Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/a_lambda.htm 2014-09-01T05:37:49Z pillton: I had to answer this question the other day. The person that was confused thought the same thing. 2014-09-01T05:38:14Z sdemarre quit (Quit: Leaving.) 2014-09-01T05:38:59Z pt1 joined #lisp 2014-09-01T05:39:23Z Bike: you could have a concept of "functional evaluation", as what happens to the form given to the FUNCTION operator; then you have symbols and setf and lambda forms, and the latter can be interpreted as 'lambda' being a special operator in function evaluation. but that's kind of... overcomplicated 2014-09-01T05:39:35Z Bike: it's how i think of it when implementations have their own lambda-like things though. 2014-09-01T05:40:14Z pillton: I prefer the simple explanation, it is just data to the FUNCTION special operator. 2014-09-01T05:40:17Z Clarice: No, the symbol explanation makes more sense. It didn't occur to me that a lambda expression is literally just a list that has LAMBDA as its first element. 2014-09-01T05:40:47Z Clarice: And so function merely looks for either a name or a lambda expression. Yes, that makes sense. 2014-09-01T05:40:53Z beach: Clarice: Special operators only exist as the first element of a list representing a form (a special form). And a form is an expression meant to be evaluated. The (lambda ...) in (function (lambda ...)) is not meant to be evaluated so it is not a form. 2014-09-01T05:41:26Z Bike: the point is that the thing in FUNCTION isn't evaluated in the same way as anything else, anyway, and "special operator" is a concept tied to evaluation. 2014-09-01T05:41:37Z Clarice: Right 2014-09-01T05:42:15Z Clarice: So function is the special form, not lambda, understood. 2014-09-01T05:43:34Z pnpuff joined #lisp 2014-09-01T05:43:42Z pnpuff quit (Changing host) 2014-09-01T05:43:42Z pnpuff joined #lisp 2014-09-01T05:43:50Z malbertife joined #lisp 2014-09-01T05:44:34Z pnpuff quit (Client Quit) 2014-09-01T05:45:14Z zardy: is it common to use CLOS? or do CLispers tend to stick more to the functional style? 2014-09-01T05:45:15Z jusss quit (Read error: Connection reset by peer) 2014-09-01T05:45:41Z Bike: it is common to use clos 2014-09-01T05:45:47Z beach: zardy: Most modern serious CL software uses CLOS. 2014-09-01T05:46:37Z beach doesn't see the point of depriving himself with such a powerful tool. 2014-09-01T05:46:56Z zardy: isn't mutation considered bad? 2014-09-01T05:46:59Z beach: no 2014-09-01T05:47:08Z nightfly: you might have the wrong lisp :) 2014-09-01T05:47:10Z Harag joined #lisp 2014-09-01T05:47:15Z beach: zardy: You must be thinking of functional languages and functional programming. 2014-09-01T05:47:30Z zardy: yes 2014-09-01T05:47:36Z beach: zardy: CL is not it. 2014-09-01T05:48:07Z zardy: CL is not a functional programming language? 2014-09-01T05:48:07Z Clarice: zardy: CL is one of those languages where everything is possible. There's no bondage and discipline here. 2014-09-01T05:48:29Z beach: zardy: That's right. It is a general-purpose language with the most powerful object system out there. 2014-09-01T05:48:33Z MrWoohoo joined #lisp 2014-09-01T05:48:41Z pt1 quit (Remote host closed the connection) 2014-09-01T05:48:57Z theethicalegoist quit (Quit: Leaving) 2014-09-01T05:49:01Z CrazyEddy joined #lisp 2014-09-01T05:49:08Z Clarice: zardy: So the fact that you can do "functional programming" has no bearing on the fact that you can do all sorts of other kinds of programming in it, too 2014-09-01T05:49:33Z zardy: sure. it is more of a culture thing too 2014-09-01T05:49:54Z jusss joined #lisp 2014-09-01T05:50:01Z zardy: most languages that are considered functional arent purely functional 2014-09-01T05:50:19Z zardy: and honestly this is the first time I hear that cl is not a functional prog languag 2014-09-01T05:50:45Z nightfly: It's often misreported as being one 2014-09-01T05:51:01Z Clarice: But being "functional" without being purely functional merely amounts to 1) being able to accept function pointers as arguments and 2) being able to return them as values. Big whoop! 2014-09-01T05:51:22Z Bike: people say lisp is but i'm honestly unsure why. even sicp, which is pretty "pure", has plenty of mutation. and early lisp code is pretty damn procedural. 2014-09-01T05:52:26Z zardy: Clarice to me a functional programming language (and the community that uses it) encourages a functional style.. by your definition C is a functional programming language too 2014-09-01T05:53:20Z Clarice: zardy: you can't return function pointers in C in quite the same way that I'm thinking. 2014-09-01T05:53:28Z zardy: so what is the dominant paradigm in lisp? 2014-09-01T05:53:52Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-01T05:55:39Z Clarice: zardy: functional, maybe. But I use objects all the time. 2014-09-01T05:56:03Z slassh joined #lisp 2014-09-01T05:56:21Z Clarice: zardy: in Lisp, you do whatever feels right instead of only doing what you feel is possible. 2014-09-01T05:56:30Z Clarice: Because everything becomes possible. 2014-09-01T05:57:11Z Harag quit (Remote host closed the connection) 2014-09-01T05:57:20Z Harag joined #lisp 2014-09-01T05:57:59Z tajjada quit (Ping timeout: 272 seconds) 2014-09-01T05:58:56Z Zhivago: Meaningless gibberish. 2014-09-01T05:59:07Z Zhivago: Everything is possible in visual basic, also. 2014-09-01T05:59:29Z Zhivago: It's just a question of how much you'll feel like stabbing yourself in the eye with a fish-fork. 2014-09-01T06:01:54Z Clarice: Zhivago: Not so in bondage-and-discipline languages. I can't, for instance, return methods as values in Java (prior to Java 8) or work hassle-free with mutable structures in Haskell. 2014-09-01T06:02:06Z Zhivago: You can do equivalent things. 2014-09-01T06:02:19Z Zhivago: And there are plenty of arbitrary limitation in CL. 2014-09-01T06:02:41Z Clarice: Your definition of plenty is different from mine. 2014-09-01T06:03:16Z oleo quit (Quit: Verlassend) 2014-09-01T06:04:04Z mncoder_ quit (Quit: mncoder_) 2014-09-01T06:05:46Z zardy: Zhivago got an example of arbitrary limitation? 2014-09-01T06:06:12Z Zhivago: The reader can only return one token for one read. 2014-09-01T06:08:52Z CrazyEddy joined #lisp 2014-09-01T06:09:02Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-01T06:09:24Z hiyosi joined #lisp 2014-09-01T06:11:06Z bgs100 quit (Quit: bgs100) 2014-09-01T06:11:35Z alchemis7 left #lisp 2014-09-01T06:11:37Z alchemis7 joined #lisp 2014-09-01T06:13:19Z emartenson__: I have another one 2014-09-01T06:13:30Z emartenson__ is now known as loke 2014-09-01T06:13:57Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-01T06:14:14Z zardy: the suspense is killing us 2014-09-01T06:14:31Z Bike: you can wait more than sixty seconds. 2014-09-01T06:14:48Z zardy: no. 40 is my limit 2014-09-01T06:14:49Z loke: No continutation 2014-09-01T06:14:54Z loke: I mean continuations 2014-09-01T06:15:04Z loke: (sorry, I'm working at the same time) 2014-09-01T06:16:09Z Zhivago: You probably mean 'no first class continuations'. 2014-09-01T06:16:10Z beach left #lisp 2014-09-01T06:16:13Z zardy: can't one just use continuation passing style? 2014-09-01T06:16:33Z Zhivago: To a point, certainly -- and that applies to visual basic, likewise. 2014-09-01T06:16:46Z loke: Zhivago: Exactly, and no way to properly implement it. Which brings me to my second issue: No standard way of doing a full code walker. 2014-09-01T06:17:56Z Zhivago: In the presence of implementation specific specials? 2014-09-01T06:17:57Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-01T06:18:08Z drmeister joined #lisp 2014-09-01T06:18:11Z loke: Zhivago: When SBCL has SB-WALKER 2014-09-01T06:18:17Z loke: I mena "Well" 2014-09-01T06:18:44Z zRecursive: CPS is really not a good way to programming, as it make code hard to debug ... 2014-09-01T06:19:08Z Zhivago: CPS is an implementation strategy. 2014-09-01T06:19:15Z kcj joined #lisp 2014-09-01T06:19:17Z Zhivago: It's useful for constructing coroutines, etc. 2014-09-01T06:19:21Z pranavrc joined #lisp 2014-09-01T06:19:23Z zRecursive: a bad strategy 2014-09-01T06:19:45Z zRecursive: mess code up 2014-09-01T06:21:01Z pillton: loke: You can exploit the requirements of minimal compilation to build a portable code walker. 2014-09-01T06:21:42Z zRecursive: it remind me of setjmp/longjmp ? 2014-09-01T06:22:21Z drmeister quit (Ping timeout: 240 seconds) 2014-09-01T06:22:22Z loke: pillton: WHat requirements are those? 2014-09-01T06:23:04Z pillton: loke: That all compiler macros and macros are to be expanded. 2014-09-01T06:24:44Z loke: pillton: But at no point do you have access to the tree post-expansion 2014-09-01T06:24:58Z pillton: loke: Wrap *MACROEXPAND-HOOK* with a function that records all expansions then replay them on the input form. 2014-09-01T06:25:09Z slassh quit (Ping timeout: 240 seconds) 2014-09-01T06:25:29Z loke: pillton: True, but an implementation is allowed to expand macros as late as just prior to evaluation 2014-09-01T06:25:32Z Mon_Ouie joined #lisp 2014-09-01T06:25:39Z loke: So there is no way you xan expand but not evaluate 2014-09-01T06:25:47Z pillton: loke: Wrap that code in a lambda form. 2014-09-01T06:26:04Z loke: pillton: not guaranteed to be evaluated until that form is evaluated 2014-09-01T06:26:12Z loke: s/evaluated/expanded/ 2014-09-01T06:26:14Z pillton: Minimal compilation says it has to be. 2014-09-01T06:26:22Z pillton: loke: http://hastebin.com/epulizukuc 2014-09-01T06:26:34Z pillton: http://www.lispworks.com/documentation/HyperSpec/Body/03_bbb.htm 2014-09-01T06:27:34Z loke: pillton: But a fully interpreted implementation does its compilation when the code runs, not before. 2014-09-01T06:27:43Z loke: or rather "compilation" 2014-09-01T06:28:40Z Bike: (let ((*macroexpand-hook* #'magic)) (compile nil '(lambda () ...code to walk...))) 2014-09-01T06:32:12Z loke: pillton: the code you posted refers to SB-CLTL2:ENCLOSE. That can't be implemented portably, can it? 2014-09-01T06:34:14Z malbertife quit (Quit: Leaving) 2014-09-01T06:34:32Z CrazyEddy joined #lisp 2014-09-01T06:37:35Z pillton: No, but I think you can get around it. 2014-09-01T06:38:14Z pillton: I'm not sure on that. I remember thinking about it when I wrote the above. 2014-09-01T06:39:10Z mishoo joined #lisp 2014-09-01T06:39:43Z Clarice quit (Remote host closed the connection) 2014-09-01T06:40:01Z Clarice joined #lisp 2014-09-01T06:40:22Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-01T06:41:17Z mvilleneuve joined #lisp 2014-09-01T06:43:09Z pt1 joined #lisp 2014-09-01T06:43:42Z zarul joined #lisp 2014-09-01T06:44:48Z harish_ quit (Ping timeout: 260 seconds) 2014-09-01T06:47:48Z snits quit (Quit: leaving) 2014-09-01T06:48:20Z mr-foobar joined #lisp 2014-09-01T06:51:38Z defaultxr quit (Quit: gnight) 2014-09-01T06:52:56Z CrazyEddy joined #lisp 2014-09-01T06:53:03Z CrazyEddy quit (Changing host) 2014-09-01T06:53:03Z CrazyEddy joined #lisp 2014-09-01T06:57:22Z gingerale joined #lisp 2014-09-01T06:57:43Z karswell` quit (Remote host closed the connection) 2014-09-01T06:58:28Z karswell` joined #lisp 2014-09-01T07:00:33Z katsh joined #lisp 2014-09-01T07:06:40Z zRecursive quit (Remote host closed the connection) 2014-09-01T07:07:20Z ggole joined #lisp 2014-09-01T07:09:06Z vaporatorius joined #lisp 2014-09-01T07:10:14Z hiyosi joined #lisp 2014-09-01T07:13:59Z nostoi joined #lisp 2014-09-01T07:15:09Z hiyosi quit (Ping timeout: 255 seconds) 2014-09-01T07:16:24Z Subfusc_ is now known as Subfusc 2014-09-01T07:17:22Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-01T07:18:22Z ASau quit (Ping timeout: 240 seconds) 2014-09-01T07:20:27Z pt1_ joined #lisp 2014-09-01T07:20:47Z arenz joined #lisp 2014-09-01T07:21:20Z Zeedox_ joined #lisp 2014-09-01T07:21:20Z varjag joined #lisp 2014-09-01T07:22:52Z Harag quit (Ping timeout: 240 seconds) 2014-09-01T07:23:16Z __prefect joined #lisp 2014-09-01T07:24:00Z pt1 quit (Ping timeout: 260 seconds) 2014-09-01T07:24:54Z BitPuffin joined #lisp 2014-09-01T07:26:44Z zacharias_ joined #lisp 2014-09-01T07:27:08Z petrutrimbitas joined #lisp 2014-09-01T07:30:20Z cods__ is now known as cods 2014-09-01T07:33:33Z ehu joined #lisp 2014-09-01T07:33:36Z BitPuffin quit (Ping timeout: 250 seconds) 2014-09-01T07:34:16Z zacharias_ quit (Ping timeout: 260 seconds) 2014-09-01T07:34:23Z urandom__ joined #lisp 2014-09-01T07:37:01Z __prefect is now known as nha 2014-09-01T07:44:58Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-01T07:45:21Z CrazyEddy joined #lisp 2014-09-01T07:48:16Z renard_ joined #lisp 2014-09-01T07:50:54Z ndrei joined #lisp 2014-09-01T07:51:04Z Clarice quit (Remote host closed the connection) 2014-09-01T07:51:20Z Clarice joined #lisp 2014-09-01T07:54:05Z nug700 joined #lisp 2014-09-01T07:54:26Z EvW joined #lisp 2014-09-01T07:57:00Z nug700_ quit (Ping timeout: 250 seconds) 2014-09-01T08:00:08Z harish_ joined #lisp 2014-09-01T08:03:42Z cods quit (Changing host) 2014-09-01T08:03:42Z cods joined #lisp 2014-09-01T08:05:27Z Adeon_ is now known as Adeon 2014-09-01T08:05:53Z Cymew joined #lisp 2014-09-01T08:06:15Z pt1_ quit (Remote host closed the connection) 2014-09-01T08:06:51Z drmeister joined #lisp 2014-09-01T08:07:39Z pt1 joined #lisp 2014-09-01T08:07:42Z BitPuffin joined #lisp 2014-09-01T08:10:53Z vanila joined #lisp 2014-09-01T08:11:04Z hiyosi joined #lisp 2014-09-01T08:11:36Z drmeister quit (Ping timeout: 260 seconds) 2014-09-01T08:12:32Z Beetny joined #lisp 2014-09-01T08:13:20Z pgomes joined #lisp 2014-09-01T08:13:55Z edgar-rft joined #lisp 2014-09-01T08:15:42Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-01T08:16:32Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-01T08:20:32Z AeroNotix: ads 2014-09-01T08:31:18Z choletelin joined #lisp 2014-09-01T08:32:00Z choletelin is now known as CrazyEddy 2014-09-01T08:34:51Z CrazyEddy quit (Changing host) 2014-09-01T08:34:51Z CrazyEddy joined #lisp 2014-09-01T08:38:08Z nha_ joined #lisp 2014-09-01T08:39:28Z nha quit (Ping timeout: 250 seconds) 2014-09-01T08:40:11Z petrutrimbitas joined #lisp 2014-09-01T08:48:19Z zacharias joined #lisp 2014-09-01T08:50:33Z mr-foobar quit (Ping timeout: 255 seconds) 2014-09-01T08:51:59Z mr-foobar joined #lisp 2014-09-01T08:54:57Z stepnem joined #lisp 2014-09-01T08:55:43Z malice joined #lisp 2014-09-01T08:58:00Z malice quit (Client Quit) 2014-09-01T08:58:18Z nimiux quit (Quit: leaving) 2014-09-01T08:58:26Z malice joined #lisp 2014-09-01T08:58:59Z nimiux joined #lisp 2014-09-01T08:58:59Z nimiux quit (Changing host) 2014-09-01T08:58:59Z nimiux joined #lisp 2014-09-01T08:59:09Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-01T08:59:28Z nimiux left #lisp 2014-09-01T08:59:34Z hlavaty joined #lisp 2014-09-01T09:05:48Z DGASAU joined #lisp 2014-09-01T09:06:13Z bdr3552 joined #lisp 2014-09-01T09:09:47Z GuilOooo_ quit (Ping timeout: 245 seconds) 2014-09-01T09:11:13Z Zeedox_ quit (Remote host closed the connection) 2014-09-01T09:11:32Z ndrei quit (Ping timeout: 250 seconds) 2014-09-01T09:11:50Z hiyosi joined #lisp 2014-09-01T09:15:47Z przl joined #lisp 2014-09-01T09:16:39Z hiyosi quit (Ping timeout: 255 seconds) 2014-09-01T09:17:21Z nostoi quit (Quit: Verlassend) 2014-09-01T09:19:41Z nug700 quit (Quit: bye) 2014-09-01T09:20:54Z jusss quit (Read error: Connection reset by peer) 2014-09-01T09:23:10Z jusss joined #lisp 2014-09-01T09:23:40Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-01T09:24:27Z CrazyEddy joined #lisp 2014-09-01T09:24:46Z petrutrimbitas joined #lisp 2014-09-01T09:28:44Z ssake quit (Read error: No route to host) 2014-09-01T09:32:03Z fzappa joined #lisp 2014-09-01T09:32:12Z ndrei joined #lisp 2014-09-01T09:34:22Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-01T09:35:51Z vanila: how does a compiler implement shift and reset? 2014-09-01T09:36:31Z loke: reset? 2014-09-01T09:36:43Z Shozan is now known as SHODAN 2014-09-01T09:36:55Z mal_: shift/reset is one way of doing continuations IIRC 2014-09-01T09:37:06Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-01T09:37:13Z vanila: yeah, I'm stuck on how to do continuations 2014-09-01T09:37:33Z alopez joined #lisp 2014-09-01T09:37:37Z mal_: http://en.wikipedia.org/wiki/Delimited_continuation 2014-09-01T09:38:13Z vanila: I thought you used CPS transform to make it so every call was a tail call, but when you add these the CPS transform isn't always tail calls 2014-09-01T09:38:32Z alopez left #lisp 2014-09-01T09:40:40Z karswell` is now known as karswell 2014-09-01T09:41:51Z ndrei quit (Ping timeout: 255 seconds) 2014-09-01T09:43:30Z ndrei joined #lisp 2014-09-01T09:44:11Z Zhivago: Just jump on the trampoline. 2014-09-01T09:44:35Z attila_lendvai joined #lisp 2014-09-01T09:44:35Z attila_lendvai quit (Changing host) 2014-09-01T09:44:35Z attila_lendvai joined #lisp 2014-09-01T09:47:08Z vanila: so I don't need to do anything special like run CPS a second time? 2014-09-01T09:48:36Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-01T09:50:23Z Puffin joined #lisp 2014-09-01T09:51:05Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-09-01T09:52:22Z mr-foobar quit (Ping timeout: 240 seconds) 2014-09-01T09:52:39Z BitPuffin quit (Ping timeout: 255 seconds) 2014-09-01T09:53:50Z mr-foobar joined #lisp 2014-09-01T09:55:21Z _bryan left #lisp 2014-09-01T09:55:35Z drmeister joined #lisp 2014-09-01T09:59:52Z drmeister quit (Ping timeout: 240 seconds) 2014-09-01T10:03:06Z Clarice quit (Remote host closed the connection) 2014-09-01T10:03:22Z ndrei quit (Ping timeout: 240 seconds) 2014-09-01T10:03:23Z Clarice joined #lisp 2014-09-01T10:04:01Z ndrei joined #lisp 2014-09-01T10:04:26Z jtza8 joined #lisp 2014-09-01T10:04:50Z Puffin quit (Ping timeout: 255 seconds) 2014-09-01T10:06:56Z CrazyEddy joined #lisp 2014-09-01T10:10:59Z kcj quit (Remote host closed the connection) 2014-09-01T10:11:32Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-01T10:12:22Z ndrei quit (Ping timeout: 245 seconds) 2014-09-01T10:12:41Z Harag joined #lisp 2014-09-01T10:13:01Z pgomes joined #lisp 2014-09-01T10:13:02Z hiyosi joined #lisp 2014-09-01T10:13:57Z gravicappa joined #lisp 2014-09-01T10:14:34Z posterdati300 quit (Read error: Connection reset by peer) 2014-09-01T10:15:34Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-09-01T10:17:09Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-01T10:18:20Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-01T10:18:28Z dmiles_afk joined #lisp 2014-09-01T10:20:30Z isoraqathedh quit (Read error: Connection reset by peer) 2014-09-01T10:27:44Z Clarice quit (Remote host closed the connection) 2014-09-01T10:28:02Z Clarice joined #lisp 2014-09-01T10:29:14Z ndrei joined #lisp 2014-09-01T10:30:19Z CrazyEddy joined #lisp 2014-09-01T10:37:26Z Clarice quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-09-01T10:41:07Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-01T10:43:24Z yeticry quit (Ping timeout: 250 seconds) 2014-09-01T10:45:04Z pbgc joined #lisp 2014-09-01T10:45:29Z yeticry joined #lisp 2014-09-01T10:46:32Z CrazyEddy joined #lisp 2014-09-01T10:51:15Z otwieracz quit (Quit: Reconnecting) 2014-09-01T10:51:30Z otwieracz joined #lisp 2014-09-01T10:52:53Z echo-area quit (Remote host closed the connection) 2014-09-01T10:54:56Z otwieracz quit (Client Quit) 2014-09-01T10:55:26Z otwieracz joined #lisp 2014-09-01T10:56:31Z ``Erik_ is now known as ``Erik 2014-09-01T11:02:54Z przl quit (Ping timeout: 250 seconds) 2014-09-01T11:03:20Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-01T11:04:07Z vaporatorius quit (Quit: Leaving) 2014-09-01T11:06:05Z yakccd quit (Remote host closed the connection) 2014-09-01T11:07:12Z stanislav quit (Quit: Konversation terminated!) 2014-09-01T11:07:28Z stanislav joined #lisp 2014-09-01T11:08:22Z ehu quit (Ping timeout: 240 seconds) 2014-09-01T11:10:37Z resttime quit (Quit: resttime) 2014-09-01T11:12:13Z nimiux|irssi joined #lisp 2014-09-01T11:13:34Z hiyosi joined #lisp 2014-09-01T11:14:26Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-01T11:14:43Z vanila quit (Remote host closed the connection) 2014-09-01T11:16:26Z zardy quit (Quit: IRCGate CGI:IRC User (Session timeout)) 2014-09-01T11:18:07Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-01T11:20:26Z isoraqathedh joined #lisp 2014-09-01T11:22:46Z CrazyEddy joined #lisp 2014-09-01T11:25:22Z knob joined #lisp 2014-09-01T11:26:15Z zxq9 joined #lisp 2014-09-01T11:27:06Z davorb1 joined #lisp 2014-09-01T11:29:47Z ndrei quit (Ping timeout: 245 seconds) 2014-09-01T11:30:52Z davorb quit (Ping timeout: 260 seconds) 2014-09-01T11:31:39Z ndrei joined #lisp 2014-09-01T11:32:18Z ndrei quit (Read error: Connection reset by peer) 2014-09-01T11:33:14Z nimiux|irssi quit (Quit: leaving) 2014-09-01T11:34:45Z yacks quit (Quit: Leaving) 2014-09-01T11:36:08Z przl joined #lisp 2014-09-01T11:36:38Z ndrei joined #lisp 2014-09-01T11:44:25Z drmeister joined #lisp 2014-09-01T11:47:22Z urandom__ quit (Quit: Konversation terminated!) 2014-09-01T11:49:04Z drmeister quit (Ping timeout: 260 seconds) 2014-09-01T11:49:29Z wooden: in the ipython repl it's possible to type myclass. to get a listing of all the attributes and methods on the class. does similar functionality exist for sbcl common lisp? is there another way to interactivley explore objects? 2014-09-01T11:51:10Z AeroNotix: wooden: not in SBCL, but there are good editor plugins 2014-09-01T11:51:16Z AeroNotix: wooden: what editor are you using? 2014-09-01T11:51:26Z wooden: AeroNotix: vim + slimv 2014-09-01T11:51:26Z phadthai: slime can auto-complete symbols, and inspect objects 2014-09-01T11:51:37Z AeroNotix: wooden: Not too clued up on slimv 2014-09-01T11:52:00Z wooden: AeroNotix: how would you do it in emacs + slime? 2014-09-01T11:52:19Z AeroNotix: wooden: well I would just type and then press TAB 2014-09-01T11:52:29Z AeroNotix: it has proper completion 2014-09-01T11:52:58Z Krystof: but not really context-sensitive completion like wooden describes 2014-09-01T11:53:03Z Krystof: on the other hand, it does have an inspector 2014-09-01T11:53:50Z AeroNotix: yeah the inspector is badass 2014-09-01T11:54:02Z Nizumzen joined #lisp 2014-09-01T11:55:04Z phadthai: yes it's not class/attribute specific, but with the usual name-slotaccessor naming, you would also get a list of matching symbols 2014-09-01T11:55:37Z Krystof: I don't think that's usual, for what it's worth (and it doesn't work desperately well with subclassing) 2014-09-01T11:55:59Z phadthai: for methods/generic functions it wouldn't work well, yes 2014-09-01T11:57:04Z mr-foobar quit (Ping timeout: 250 seconds) 2014-09-01T11:58:53Z mr-foobar joined #lisp 2014-09-01T11:59:39Z araujo joined #lisp 2014-09-01T12:02:09Z drmeister joined #lisp 2014-09-01T12:02:43Z wooden: AeroNotix, Krystof: thanks much. i think the inspector is close to what i want. i just didn't know the name of what i was looking for. https://github.com/kovisoft/slimv/blob/master/doc/slimv.txt#L932 2014-09-01T12:14:17Z hiyosi joined #lisp 2014-09-01T12:14:29Z petrutrimbitas joined #lisp 2014-09-01T12:18:45Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-01T12:19:08Z urandom__ joined #lisp 2014-09-01T12:20:42Z jtza8 quit (Ping timeout: 245 seconds) 2014-09-01T12:20:42Z Beetny quit (Ping timeout: 245 seconds) 2014-09-01T12:22:28Z yacks joined #lisp 2014-09-01T12:23:19Z LiamH joined #lisp 2014-09-01T12:28:30Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-01T12:31:18Z flip214 quit (Remote host closed the connection) 2014-09-01T12:37:52Z slyrus quit (Ping timeout: 240 seconds) 2014-09-01T12:38:04Z petrutrimbitas joined #lisp 2014-09-01T12:43:57Z paul0 quit (Ping timeout: 240 seconds) 2014-09-01T12:45:38Z schoppenhauer quit (Quit: Adé) 2014-09-01T12:51:39Z flip214 joined #lisp 2014-09-01T12:51:47Z AeroNotix: what do people recommend for sockets? 2014-09-01T12:51:55Z AeroNotix: I was looking at usockets 2014-09-01T12:52:00Z H4ns: AeroNotix: usocket for portability 2014-09-01T12:52:09Z H4ns: AeroNotix: iolib for performance (posix only) 2014-09-01T12:52:12Z pecg joined #lisp 2014-09-01T12:52:23Z AeroNotix: H4ns: thanks 2014-09-01T12:52:33Z H4ns: AeroNotix: iolib does run on windows to a large extent, though. 2014-09-01T12:52:35Z AeroNotix: H4ns: with usockets, how do I inspect a socket's state? 2014-09-01T12:52:43Z H4ns: AeroNotix: what do you mean by that? 2014-09-01T12:53:06Z AeroNotix: H4ns: e.g. when I create a connection and the remote side closes that connection, how to detect that 2014-09-01T12:53:24Z AeroNotix: because I'm playing with it here and I can write to a socket using STREAM-SOCKET after it's closed remotely 2014-09-01T12:53:26Z H4ns: AeroNotix: you read from the socket. it will return zero bytes if it was closed. 2014-09-01T12:53:37Z AeroNotix: H4ns: hmm 2014-09-01T12:54:36Z schoppenhauer joined #lisp 2014-09-01T13:05:00Z Whitesquall joined #lisp 2014-09-01T13:09:48Z bend3r joined #lisp 2014-09-01T13:12:30Z jaseemabid joined #lisp 2014-09-01T13:15:08Z hiyosi joined #lisp 2014-09-01T13:15:42Z ssake joined #lisp 2014-09-01T13:17:40Z pecg quit (Ping timeout: 250 seconds) 2014-09-01T13:18:11Z BlueRavenGT joined #lisp 2014-09-01T13:18:23Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-01T13:19:52Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-01T13:20:55Z ski_ is now known as ski 2014-09-01T13:31:04Z ivan4th joined #lisp 2014-09-01T13:33:44Z pranavrc quit 2014-09-01T13:34:24Z Whitesquall quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-01T13:34:31Z Whitesquall joined #lisp 2014-09-01T13:34:47Z Whitesquall quit (Remote host closed the connection) 2014-09-01T13:35:11Z Whitesquall joined #lisp 2014-09-01T13:36:17Z mr-foobar quit (Quit: Leaving...) 2014-09-01T13:36:49Z CrazyEddy joined #lisp 2014-09-01T13:38:01Z scottj left #lisp 2014-09-01T13:38:44Z jackdani1l is now known as jackdaniel 2014-09-01T13:39:39Z vydd joined #lisp 2014-09-01T13:40:19Z vydd quit (Remote host closed the connection) 2014-09-01T13:44:52Z leavessteep joined #lisp 2014-09-01T13:45:58Z davazp joined #lisp 2014-09-01T13:46:14Z Cymew: I wanted to read a file of data, and then display them in chucks, say 1000, then a newline and then the next chunk. I thought WRITE-TO-STRING and then a newline was the right thing. Looking at the docs for that function it does not seem suitable. Anyone have any suggestion of what might be a better solution? I thought I did it once before, but can't find the code... 2014-09-01T13:46:41Z H4ns: princ? 2014-09-01T13:46:52Z Cymew: I slept really bad last night and think really slow now. 2014-09-01T13:47:06Z eudoxia joined #lisp 2014-09-01T13:47:37Z Cymew: I thought of PRINC, but seem to remember it was one of the -to-string or similar things I used. Maybe I should just scrap those vague memories. 2014-09-01T13:48:37Z rainbyte quit (*.net *.split) 2014-09-01T13:48:37Z nisstyre quit (*.net *.split) 2014-09-01T13:48:37Z peccu1 quit (*.net *.split) 2014-09-01T13:48:37Z gz_ quit (*.net *.split) 2014-09-01T13:48:37Z scharan quit (*.net *.split) 2014-09-01T13:48:37Z cyphase quit (*.net *.split) 2014-09-01T13:48:37Z jchochli_ quit (*.net *.split) 2014-09-01T13:48:37Z nightfly quit (*.net *.split) 2014-09-01T13:48:37Z ered quit (*.net *.split) 2014-09-01T13:48:37Z clop2 quit (*.net *.split) 2014-09-01T13:48:37Z mal_ quit (*.net *.split) 2014-09-01T13:48:41Z Cymew: Wait a minute, there's a PRINC-TO-STRING lying around.... 2014-09-01T13:48:55Z nightfly joined #lisp 2014-09-01T13:48:58Z rainbyte joined #lisp 2014-09-01T13:49:00Z clop2 joined #lisp 2014-09-01T13:49:01Z peccu1 joined #lisp 2014-09-01T13:49:03Z gz__ joined #lisp 2014-09-01T13:49:04Z ered joined #lisp 2014-09-01T13:49:12Z scharan joined #lisp 2014-09-01T13:49:15Z H4ns: i thought you wanted to "display" the file. why are you looking for -to-string then? 2014-09-01T13:49:31Z jchochli_ joined #lisp 2014-09-01T13:50:14Z cyphase joined #lisp 2014-09-01T13:50:20Z Cymew: That's where I wonder if I'm barking up the wrong tree. I thought I last time did build a string of those 1000 entries, printed that string with a newline at the ned, made a new string and so on. 2014-09-01T13:50:24Z nisstyre joined #lisp 2014-09-01T13:50:25Z leavessteep quit (Write error: Connection reset by peer) 2014-09-01T13:50:33Z mal_ joined #lisp 2014-09-01T13:50:56Z Cymew: Maybe I should just sleep on it 2014-09-01T13:51:21Z eudoxia quit (Client Quit) 2014-09-01T13:51:57Z phadthai quit (Ping timeout: 240 seconds) 2014-09-01T13:53:14Z eudoxia joined #lisp 2014-09-01T13:53:44Z kobain joined #lisp 2014-09-01T13:55:20Z tajjada joined #lisp 2014-09-01T14:03:36Z tajjada quit (Ping timeout: 250 seconds) 2014-09-01T14:04:03Z attila_lendvai quit (Quit: Leaving.) 2014-09-01T14:04:16Z wbooze joined #lisp 2014-09-01T14:05:05Z posterdati300 joined #lisp 2014-09-01T14:05:38Z tajjada joined #lisp 2014-09-01T14:06:21Z oleo joined #lisp 2014-09-01T14:06:23Z ndrei quit (Ping timeout: 240 seconds) 2014-09-01T14:07:40Z Cymew: It seems like my brain prefers sh today. For those you feel like taking Fare up on the scripting abilities of CL, this is what i did in bash. let apa=1; for i in `cat delete.data `; do if [[ $apa -ge 1000 ]]; then printf "$i\n" >>ffile; let apa=1; else printf "$i|" >> ffile; let apa=$apa+1; fi; done 2014-09-01T14:10:43Z hiyosi joined #lisp 2014-09-01T14:12:33Z arpunk quit (Remote host closed the connection) 2014-09-01T14:15:48Z ndrei joined #lisp 2014-09-01T14:18:12Z zophy quit (Ping timeout: 245 seconds) 2014-09-01T14:19:20Z munksgaard joined #lisp 2014-09-01T14:21:57Z dim: clhs with-output-to-string 2014-09-01T14:21:57Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_w_out_.htm 2014-09-01T14:22:03Z dim: Cymew: that might be useful for you 2014-09-01T14:22:17Z dim: (provided I understand half enough of what you're doing here) 2014-09-01T14:23:43Z Cymew: Maybe that was the -to-string I remembered... 2014-09-01T14:24:47Z vaporatorius joined #lisp 2014-09-01T14:25:03Z Cymew: dim: That looks awefully familiar! 2014-09-01T14:25:25Z Cymew: I guess that was what I used before 2014-09-01T14:27:05Z drmeister quit (Remote host closed the connection) 2014-09-01T14:27:36Z loke_ joined #lisp 2014-09-01T14:27:49Z splittist_: Depending on the format of delete.data a couple of nested with-open-files, a read-sequence and a simple format might do the trick. 2014-09-01T14:27:57Z pt1 quit (Ping timeout: 240 seconds) 2014-09-01T14:29:55Z billstclair joined #lisp 2014-09-01T14:29:55Z billstclair quit (Changing host) 2014-09-01T14:29:55Z billstclair joined #lisp 2014-09-01T14:31:23Z mncoder joined #lisp 2014-09-01T14:31:32Z ndrei quit (Ping timeout: 245 seconds) 2014-09-01T14:32:48Z munksgaard quit (Quit: Changing server) 2014-09-01T14:33:24Z ndrei joined #lisp 2014-09-01T14:33:52Z fzappa quit (Remote host closed the connection) 2014-09-01T14:34:47Z AeroNotix: what do people prefer as an actor library 2014-09-01T14:35:05Z AeroNotix: I want to express my program as separate entities which communicate via blocking channels 2014-09-01T14:36:33Z dim: AeroNotix: I've been using lparallel and I like it 2014-09-01T14:36:34Z pbgc quit (Quit: Computer has gone to sleep.) 2014-09-01T14:37:57Z AeroNotix: what about calispel? 2014-09-01T14:39:57Z pbgc joined #lisp 2014-09-01T14:40:20Z ndrei quit (Ping timeout: 260 seconds) 2014-09-01T14:41:33Z splittist_: Cymew: Or slurp all the data into a list and (format s "~{~1000@{%A|~}~}" big-list-of-data). Can be fiddled with if you don't want trailing pipes. (: 2014-09-01T14:42:30Z Patzy quit (Quit: leaving) 2014-09-01T14:42:36Z zacharias quit (Ping timeout: 250 seconds) 2014-09-01T14:42:56Z paul0 joined #lisp 2014-09-01T14:42:56Z Patzy_ quit (Quit: leaving) 2014-09-01T14:43:11Z Patzy joined #lisp 2014-09-01T14:43:43Z splittist_: gah. (format s "~{~1000@{~D~^|~}~%~}" ...) 2014-09-01T14:43:43Z Cymew: Yeah, I remember toying with the idea of looping in FORMAT, then then found WITH-OUTPUT-TO-STRING and everythign felt much easier. :) 2014-09-01T14:44:13Z splittist_: Cymew: fair enough. But with format you can feed the recipe in as a parameter to your script (: 2014-09-01T14:45:23Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-01T14:49:17Z mr-foobar joined #lisp 2014-09-01T14:49:53Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-01T14:51:41Z CrazyEddy joined #lisp 2014-09-01T14:51:59Z sepi``` is now known as sepi 2014-09-01T14:54:09Z ndrei joined #lisp 2014-09-01T14:54:44Z Adlai: AeroNotix: I'm using chanl right now, although it's still rough around the edges http://github.com/sykopomp/chanl 2014-09-01T14:55:09Z Adlai: it's not much of an actor library, just provides channels 2014-09-01T14:57:25Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-01T14:59:25Z DGASAU quit (Remote host closed the connection) 2014-09-01T14:59:42Z decent_ is now known as decent 2014-09-01T15:03:46Z AeroNotix: Adlai: thanks 2014-09-01T15:03:53Z innertracks joined #lisp 2014-09-01T15:06:10Z DGASAU` joined #lisp 2014-09-01T15:07:05Z davazp quit (Remote host closed the connection) 2014-09-01T15:12:41Z LiamH quit (Remote host closed the connection) 2014-09-01T15:13:27Z LiamH joined #lisp 2014-09-01T15:13:39Z vlnx quit (Quit: leaving) 2014-09-01T15:14:07Z vlnx joined #lisp 2014-09-01T15:15:35Z pbgc quit (Quit: Computer has gone to sleep.) 2014-09-01T15:15:47Z nell joined #lisp 2014-09-01T15:19:08Z DGASAU` is now known as DGASAU 2014-09-01T15:21:39Z gravicappa quit (Remote host closed the connection) 2014-09-01T15:22:46Z bdr3553 joined #lisp 2014-09-01T15:24:46Z cyphase quit (Remote host closed the connection) 2014-09-01T15:26:27Z bdr3552 quit (Ping timeout: 245 seconds) 2014-09-01T15:28:02Z bgs100 joined #lisp 2014-09-01T15:30:29Z pbgc joined #lisp 2014-09-01T15:32:39Z cmatei joined #lisp 2014-09-01T15:33:03Z wol: Adlai:any thoughts on why chanl instead of lparallel? Just curious, have not used either. 2014-09-01T15:33:26Z Adlai hasn't used lparallel 2014-09-01T15:33:32Z przl quit (Ping timeout: 245 seconds) 2014-09-01T15:33:53Z Adlai: sykopomp and i wrote chanl a few years back as an experiment, so it was the natural choice since i was already familiar with it 2014-09-01T15:34:03Z Adlai: (natural choice for me, in my project. YMMV) 2014-09-01T15:34:10Z flip214 quit (Ping timeout: 250 seconds) 2014-09-01T15:35:47Z shka joined #lisp 2014-09-01T15:35:50Z shka: ave tux! 2014-09-01T15:36:15Z shka: Xach: i'm trying to draw any empty box frame using the vecto 2014-09-01T15:36:38Z shka: i should draw 4 rectangles or there is a better way to do this? 2014-09-01T15:37:44Z ndrei quit (Ping timeout: 260 seconds) 2014-09-01T15:37:51Z khisanth_ is now known as Khisanth 2014-09-01T15:38:44Z petrutrimbitas joined #lisp 2014-09-01T15:39:48Z Cymew quit (Ping timeout: 250 seconds) 2014-09-01T15:40:00Z ehu joined #lisp 2014-09-01T15:40:08Z wol: Adlai: Thanks 2014-09-01T15:40:15Z flip214 joined #lisp 2014-09-01T15:40:45Z ivan4th quit (Ping timeout: 240 seconds) 2014-09-01T15:43:07Z petrutrimbitas quit (Ping timeout: 245 seconds) 2014-09-01T15:43:28Z k-stz joined #lisp 2014-09-01T15:50:13Z wws joined #lisp 2014-09-01T15:50:27Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-01T15:52:08Z wws quit (Ping timeout: 185 seconds) 2014-09-01T15:52:59Z billstclair quit (Disconnected by services) 2014-09-01T15:53:03Z wws is now known as billstclair 2014-09-01T15:53:06Z billstclair quit (Changing host) 2014-09-01T15:53:06Z billstclair joined #lisp 2014-09-01T15:53:17Z ivan4th joined #lisp 2014-09-01T15:53:22Z jaseemabid quit (Ping timeout: 240 seconds) 2014-09-01T15:56:01Z loke_: I'm trying to use trivial-gray-streams, but why is there no CLOSE method to implement? 2014-09-01T15:56:09Z loke_: How can I know when the gray stream is closed? 2014-09-01T15:57:02Z khisanth_ joined #lisp 2014-09-01T15:58:42Z Khisanth quit (Disconnected by services) 2014-09-01T15:58:53Z khisanth_ is now known as Khisanth 2014-09-01T16:05:22Z Harag quit (Ping timeout: 240 seconds) 2014-09-01T16:07:39Z ndrei joined #lisp 2014-09-01T16:10:39Z kpreid quit (Quit: Quitting) 2014-09-01T16:10:54Z kpreid joined #lisp 2014-09-01T16:12:43Z beach joined #lisp 2014-09-01T16:12:56Z beach: Good evening everyone! 2014-09-01T16:13:10Z wgl: Good Evening! 2014-09-01T16:14:55Z vydd joined #lisp 2014-09-01T16:15:57Z drmeister joined #lisp 2014-09-01T16:16:56Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-01T16:16:56Z FracV_ is now known as FracV 2014-09-01T16:20:40Z drmeister quit (Ping timeout: 260 seconds) 2014-09-01T16:21:20Z posterdati300 quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-01T16:24:03Z vlnx quit (Read error: Connection reset by peer) 2014-09-01T16:25:18Z shka: beach: good evening 2014-09-01T16:25:41Z vlnx joined #lisp 2014-09-01T16:27:19Z marsam quit (Changing host) 2014-09-01T16:27:19Z marsam joined #lisp 2014-09-01T16:28:33Z wol: why does ariel-networks think that every file should be its own package? Does everyone actually use 100 packages if you have 100 source files? 2014-09-01T16:29:29Z Nizumzen joined #lisp 2014-09-01T16:29:38Z beach: Not everyone. But if a source file corresponds to a "module", then a package per source file is reasonable. 2014-09-01T16:29:51Z phadthai joined #lisp 2014-09-01T16:29:57Z loke_ quit (Remote host closed the connection) 2014-09-01T16:30:23Z CrazyEddy joined #lisp 2014-09-01T16:30:31Z przl joined #lisp 2014-09-01T16:30:38Z beach: Perhaps more common is for a module to be implemented as a few source files. Then all those source files will use the same package, so there will be fewer packages than source files. 2014-09-01T16:30:55Z wol: That makes sense. 2014-09-01T16:31:45Z lavros joined #lisp 2014-09-01T16:32:38Z lavros left #lisp 2014-09-01T16:35:20Z wol: Been trying out generator-angular-caveman2 and chasing issues that seem to be caused failure to import from the separate config package. (or my misunderstanding of what the author is doing) 2014-09-01T16:35:24Z przl quit (Ping timeout: 255 seconds) 2014-09-01T16:36:42Z varjag quit (Quit: Leaving) 2014-09-01T16:37:22Z arenz quit (Ping timeout: 245 seconds) 2014-09-01T16:38:20Z Karl_Dscc joined #lisp 2014-09-01T16:38:44Z pgomes joined #lisp 2014-09-01T16:44:05Z Vutral quit (Ping timeout: 260 seconds) 2014-09-01T16:44:28Z paul0 quit (Ping timeout: 260 seconds) 2014-09-01T16:46:56Z edgar-rft quit (Quit: you better not read this) 2014-09-01T16:47:45Z drmeister joined #lisp 2014-09-01T16:48:42Z pt1 joined #lisp 2014-09-01T16:49:36Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-01T16:50:46Z beach: drmeister: Got your email. 2014-09-01T16:51:52Z drmeister: beach: Great - do you think it is a good idea or a bad idea? 2014-09-01T16:51:56Z beach: drmeister: I'll answer as soon as possible. Cleavir is basically public domain, so you are allowed to do whatever you like with it. However, it is far from being finished. 2014-09-01T16:52:07Z beach: drmeister: I don't know if it will fit your problem. 2014-09-01T16:52:33Z beach: drmeister: But I wouldn't have created Cleavir if I didn't think it was a good idea for writing CL compilers. 2014-09-01T16:53:07Z drmeister: I think it might. It looks like you have carefully thought out what is needed to write a highly optimizing compiler. I have no clue how to write a highly optimizing compiler. 2014-09-01T16:53:22Z beach: drmeister: I have given it a lot of thought, yes. 2014-09-01T16:53:51Z innertracks quit (Ping timeout: 255 seconds) 2014-09-01T16:53:52Z LiamH quit (Read error: Connection reset by peer) 2014-09-01T16:54:03Z beach: I think we should exchange a few emails to see what can be done. Right now I am about to go spend time with my (admittedly small) family. 2014-09-01T16:54:13Z beach: [it is dinner time here] 2014-09-01T16:54:23Z drmeister: But you have stuff in there for dealing with unboxed numerical values, escape analysis, removing dead code, inlining, tail call optimization. That's all the stuff I know I need. 2014-09-01T16:55:12Z ASau joined #lisp 2014-09-01T16:55:22Z drmeister: At least you are receptive to the idea. I'm not going to solve my problem quickly here. Thanks. 2014-09-01T16:55:23Z beach: Sure. Except that the code is not in a state to be distributed yet. The document often reflects what I will do. So it's a mixture of documentation and specification. 2014-09-01T16:55:45Z beach: If you have time, then that's good. 2014-09-01T16:55:56Z beach: OK, got to go. Talk later. 2014-09-01T16:56:04Z drmeister: I'll talk to you later. 2014-09-01T16:56:14Z Vutral joined #lisp 2014-09-01T16:56:42Z gendl joined #lisp 2014-09-01T16:56:57Z pt1 quit (Remote host closed the connection) 2014-09-01T16:59:40Z lectual joined #lisp 2014-09-01T17:00:16Z lectual: Hey, did anyone do repl live programming on a microcontroller? 2014-09-01T17:00:40Z alexey joined #lisp 2014-09-01T17:00:52Z Ven_ joined #lisp 2014-09-01T17:00:59Z AeroNotix: lectual: is this just an academic question or are you trying to solve something? 2014-09-01T17:01:29Z lectual: Well, there is'nt a robot uprising on hand, so it'd be academic 2014-09-01T17:01:56Z MoALTz joined #lisp 2014-09-01T17:03:08Z ndrei quit (Ping timeout: 260 seconds) 2014-09-01T17:04:04Z ehu quit (Ping timeout: 260 seconds) 2014-09-01T17:06:49Z phadthai: lectual: only in Forth long ago (which is also interactive yet very small to implement, so more common than Lisp for firmware programming) 2014-09-01T17:07:00Z CrazyEddy joined #lisp 2014-09-01T17:07:29Z cy joined #lisp 2014-09-01T17:07:34Z pgomes quit (Quit: Leaving) 2014-09-01T17:07:49Z Bike: i'll be doing that for a class this term, but only for my own fun 2014-09-01T17:08:34Z ivan4th` joined #lisp 2014-09-01T17:09:38Z alexey quit (Remote host closed the connection) 2014-09-01T17:09:47Z ivan4th quit (Ping timeout: 245 seconds) 2014-09-01T17:12:16Z nihilatus joined #lisp 2014-09-01T17:13:28Z Vutral quit (Excess Flood) 2014-09-01T17:14:53Z tokenrov1: lectual: there's picobit, which i'm going to be playing with soon, although i haven't had time just yet. 2014-09-01T17:14:58Z tokenrov1 is now known as tokenrove 2014-09-01T17:15:19Z Vutral joined #lisp 2014-09-01T17:15:41Z zwer quit (Remote host closed the connection) 2014-09-01T17:16:28Z zwer joined #lisp 2014-09-01T17:17:50Z ivan4th`` joined #lisp 2014-09-01T17:18:32Z ivan4th` quit (Ping timeout: 260 seconds) 2014-09-01T17:19:50Z Vutral quit (Excess Flood) 2014-09-01T17:20:04Z gravicappa joined #lisp 2014-09-01T17:20:50Z Vutral joined #lisp 2014-09-01T17:20:50Z Vutral quit (Changing host) 2014-09-01T17:20:50Z Vutral joined #lisp 2014-09-01T17:20:52Z Vutral quit (Excess Flood) 2014-09-01T17:21:55Z marsam is now known as marsbot 2014-09-01T17:24:27Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-01T17:24:29Z ndrei joined #lisp 2014-09-01T17:25:36Z pbgc quit (Quit: Textual IRC Client: http://www.textualapp.com/) 2014-09-01T17:28:04Z lectual quit (Quit: Page closed) 2014-09-01T17:28:49Z mrSpec joined #lisp 2014-09-01T17:29:26Z varjag joined #lisp 2014-09-01T17:29:26Z pnpuff joined #lisp 2014-09-01T17:29:40Z Zeedox_ joined #lisp 2014-09-01T17:31:34Z przl joined #lisp 2014-09-01T17:34:48Z Vutral joined #lisp 2014-09-01T17:35:20Z Vutral quit (Excess Flood) 2014-09-01T17:36:16Z przl quit (Ping timeout: 260 seconds) 2014-09-01T17:37:02Z CrazyEddy joined #lisp 2014-09-01T17:37:28Z resttime joined #lisp 2014-09-01T17:39:18Z Vutral joined #lisp 2014-09-01T17:39:45Z ivan4th`` quit (Ping timeout: 255 seconds) 2014-09-01T17:39:50Z Vutral quit (Excess Flood) 2014-09-01T17:40:31Z petrutrimbitas joined #lisp 2014-09-01T17:42:46Z mrSpec quit (Read error: Connection reset by peer) 2014-09-01T17:42:54Z mrSpec joined #lisp 2014-09-01T17:43:13Z circuit joined #lisp 2014-09-01T17:43:41Z circuit: Hey, how does "(funcall (lambda (x y) (* x y) (+ x y)) 2 3) => 5" this work? What's with (* x y)? Under what conditions does it get called? 2014-09-01T17:44:52Z shka: circuit: hey 2014-09-01T17:44:53Z ecraven: it's a sequence of expressions 2014-09-01T17:45:08Z petrutrimbitas quit (Ping timeout: 260 seconds) 2014-09-01T17:45:09Z kobain quit (Read error: Connection timed out) 2014-09-01T17:45:10Z ecraven: so first (* x y) is evaluated, the result is thrown away, then (+ x y) is evaluated, and the result is returned 2014-09-01T17:45:12Z shka: lambda creates the the funcallable object 2014-09-01T17:45:34Z mncoder quit (Quit: mncoder) 2014-09-01T17:45:42Z phadthai: compilers may also at their discretion eliminate some dead code 2014-09-01T17:45:44Z mrSpec quit (Client Quit) 2014-09-01T17:45:52Z shka: circuit: and everything else was explained i guess 2014-09-01T17:46:19Z kobain joined #lisp 2014-09-01T17:47:44Z Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-01T17:47:54Z shka: it is a bit confusing that body in the lambda expression is &rest, indeed 2014-09-01T17:48:27Z mrSpec joined #lisp 2014-09-01T17:48:33Z shka: mrSpec: hi 2014-09-01T17:48:43Z mrSpec: shka: hello! 2014-09-01T17:50:06Z beach left #lisp 2014-09-01T17:52:00Z zophy joined #lisp 2014-09-01T17:55:48Z Vutral joined #lisp 2014-09-01T17:57:12Z slassh joined #lisp 2014-09-01T17:58:20Z Vutral quit (Excess Flood) 2014-09-01T17:59:35Z olivierrrrr joined #lisp 2014-09-01T17:59:55Z pt1 joined #lisp 2014-09-01T18:04:39Z olivierrrrr is now known as olivierr 2014-09-01T18:04:43Z Xach: shka: Did you have any luck with vecto? 2014-09-01T18:05:58Z Ven_ joined #lisp 2014-09-01T18:07:04Z ndrei quit (Ping timeout: 260 seconds) 2014-09-01T18:07:19Z emma joined #lisp 2014-09-01T18:08:56Z gravicappa quit (Remote host closed the connection) 2014-09-01T18:12:49Z eudoxia quit (Quit: Lost terminal) 2014-09-01T18:12:50Z zacharias joined #lisp 2014-09-01T18:13:52Z Xach: shka: http://paste.lisp.org/display/143587 is a square version 2014-09-01T18:14:04Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-01T18:14:17Z defaultxr joined #lisp 2014-09-01T18:14:50Z mrSpec joined #lisp 2014-09-01T18:15:27Z sheilong joined #lisp 2014-09-01T18:15:41Z stacksmith: Can someone confirm that ,restart-inferior-lisp creates an entirely new process for SBCL (using Xubuntu)? I am using cl-cffi-gtk. The demos work for a while, then (usually after an error) nothing works at all (getting / zero restarts), and even after restarting SBCL. 2014-09-01T18:20:46Z shka: Xach: yeah, i wrote code that simply draws 4 rectangles as borders 2014-09-01T18:20:50Z shka: and it wokrs 2014-09-01T18:20:58Z ubii joined #lisp 2014-09-01T18:21:03Z shka: but to tired after whole day do move any further 2014-09-01T18:23:07Z shka: Xach: and actually i think i should be able to finish the thing, once i will get a bit more time 2014-09-01T18:23:46Z Davidbrcz joined #lisp 2014-09-01T18:23:47Z Longlius quit (Remote host closed the connection) 2014-09-01T18:25:50Z Vutral joined #lisp 2014-09-01T18:27:04Z Xach: stacksmith: it is my experience that ,restart-inferior-lisp always creates a new process for sbcl 2014-09-01T18:28:21Z Vutral quit (Excess Flood) 2014-09-01T18:28:43Z mrSpec quit (Quit: mrSpec) 2014-09-01T18:29:11Z Xach: shka: ok. i usually set the line-width to get different width borders on a path 2014-09-01T18:29:28Z shka: this is also a good idea 2014-09-01T18:29:45Z shka: but this element is reprecable :) 2014-09-01T18:29:50Z Vutral joined #lisp 2014-09-01T18:29:50Z shka: eeeh 2014-09-01T18:29:51Z slyrus joined #lisp 2014-09-01T18:29:59Z shka can't communicate 2014-09-01T18:30:08Z shka: sorry :( 2014-09-01T18:30:45Z mrSpec joined #lisp 2014-09-01T18:33:32Z Vutral quit (Excess Flood) 2014-09-01T18:35:44Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-01T18:37:24Z jtza8 joined #lisp 2014-09-01T18:38:12Z innertracks joined #lisp 2014-09-01T18:41:13Z mrSpec joined #lisp 2014-09-01T18:42:10Z Vutral joined #lisp 2014-09-01T18:42:14Z Vutral quit (Excess Flood) 2014-09-01T18:43:25Z zwer quit (Remote host closed the connection) 2014-09-01T18:43:57Z mrSpec quit (Client Quit) 2014-09-01T18:45:06Z Vutral joined #lisp 2014-09-01T18:48:42Z mrSpec joined #lisp 2014-09-01T18:49:01Z circuit quit (Quit: Page closed) 2014-09-01T18:49:21Z lpaste joined #lisp 2014-09-01T18:50:30Z zygentoma joined #lisp 2014-09-01T18:53:56Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-01T18:57:34Z mrSpec joined #lisp 2014-09-01T18:57:51Z Adlai quit (Ping timeout: 264 seconds) 2014-09-01T18:58:20Z Adlai joined #lisp 2014-09-01T19:02:24Z malbertife joined #lisp 2014-09-01T19:02:44Z mrSpec quit (Quit: mrSpec) 2014-09-01T19:03:00Z nand1 quit (Remote host closed the connection) 2014-09-01T19:03:17Z nand1 joined #lisp 2014-09-01T19:06:07Z Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-01T19:06:29Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-01T19:06:51Z alexey joined #lisp 2014-09-01T19:07:07Z pt1 quit (Remote host closed the connection) 2014-09-01T19:08:49Z Longlius joined #lisp 2014-09-01T19:08:57Z Jesin quit (Quit: Leaving) 2014-09-01T19:09:32Z olivierr quit (Remote host closed the connection) 2014-09-01T19:09:36Z jtza8 quit (Ping timeout: 260 seconds) 2014-09-01T19:11:00Z przl joined #lisp 2014-09-01T19:11:09Z mrSpec joined #lisp 2014-09-01T19:13:17Z Ragnaroek joined #lisp 2014-09-01T19:13:57Z Patzy quit (Ping timeout: 245 seconds) 2014-09-01T19:14:18Z Karl_Dscc quit (Remote host closed the connection) 2014-09-01T19:14:39Z Patzy joined #lisp 2014-09-01T19:17:53Z nihilatus quit (Quit: Connection closed for inactivity) 2014-09-01T19:19:57Z jtza8 joined #lisp 2014-09-01T19:21:30Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-01T19:23:04Z LiamH joined #lisp 2014-09-01T19:25:26Z mncoder joined #lisp 2014-09-01T19:25:39Z ejbs joined #lisp 2014-09-01T19:26:56Z shka quit (Quit: Lost terminal) 2014-09-01T19:30:12Z fantazo joined #lisp 2014-09-01T19:30:57Z nell joined #lisp 2014-09-01T19:31:11Z pecg joined #lisp 2014-09-01T19:31:11Z pecg quit (Changing host) 2014-09-01T19:31:11Z pecg joined #lisp 2014-09-01T19:31:15Z mrSpec quit (Quit: mrSpec) 2014-09-01T19:31:41Z pecg quit (Client Quit) 2014-09-01T19:32:29Z arpunk joined #lisp 2014-09-01T19:33:09Z pt1 joined #lisp 2014-09-01T19:33:59Z Ven_ joined #lisp 2014-09-01T19:34:00Z mrSpec joined #lisp 2014-09-01T19:34:00Z pt1 quit (Remote host closed the connection) 2014-09-01T19:35:50Z Ven_ quit (Client Quit) 2014-09-01T19:36:44Z pecg joined #lisp 2014-09-01T19:36:44Z pecg quit (Changing host) 2014-09-01T19:36:44Z pecg joined #lisp 2014-09-01T19:39:04Z Ven_ joined #lisp 2014-09-01T19:41:27Z cpape``` quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-01T19:41:49Z petrutrimbitas joined #lisp 2014-09-01T19:42:18Z hiroakip joined #lisp 2014-09-01T19:46:12Z petrutrimbitas quit (Ping timeout: 255 seconds) 2014-09-01T19:48:19Z arenz joined #lisp 2014-09-01T19:49:24Z sdemarre joined #lisp 2014-09-01T19:52:31Z Ragnaroek quit (Remote host closed the connection) 2014-09-01T19:52:34Z drmeister: beach: Are you still online? 2014-09-01T19:54:07Z ehu joined #lisp 2014-09-01T19:54:47Z jtza8 quit (Ping timeout: 245 seconds) 2014-09-01T19:55:46Z ndrei joined #lisp 2014-09-01T19:57:27Z przl quit (Ping timeout: 255 seconds) 2014-09-01T19:58:04Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-01T19:58:08Z arenz quit (Ping timeout: 260 seconds) 2014-09-01T20:01:03Z malbertife quit (Ping timeout: 255 seconds) 2014-09-01T20:02:02Z przl joined #lisp 2014-09-01T20:02:28Z kristof joined #lisp 2014-09-01T20:05:51Z zwer joined #lisp 2014-09-01T20:07:04Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-01T20:07:28Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-01T20:07:44Z HG` joined #lisp 2014-09-01T20:08:01Z HG` quit (Client Quit) 2014-09-01T20:08:21Z pecg quit (Quit: WeeChat 1.0) 2014-09-01T20:09:57Z kcj joined #lisp 2014-09-01T20:10:37Z przl quit (Ping timeout: 245 seconds) 2014-09-01T20:12:09Z przl joined #lisp 2014-09-01T20:17:29Z wizzo quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-01T20:17:49Z zacts joined #lisp 2014-09-01T20:20:25Z pgomes joined #lisp 2014-09-01T20:25:58Z Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-01T20:26:24Z k-stz quit (Remote host closed the connection) 2014-09-01T20:28:32Z przl quit (Ping timeout: 245 seconds) 2014-09-01T20:32:37Z fantazo quit (Quit: Verlassend) 2014-09-01T20:33:51Z pgomes left #lisp 2014-09-01T20:35:21Z c3w` left #lisp 2014-09-01T20:35:23Z edgar-rft joined #lisp 2014-09-01T20:42:28Z nell quit (Ping timeout: 260 seconds) 2014-09-01T20:43:21Z nydel joined #lisp 2014-09-01T20:45:07Z krid joined #lisp 2014-09-01T20:46:32Z Davidbrcz quit (Quit: Leaving) 2014-09-01T20:46:48Z MrWoohoo joined #lisp 2014-09-01T20:47:22Z alexey quit (Remote host closed the connection) 2014-09-01T20:49:24Z nyef joined #lisp 2014-09-01T20:50:25Z cy is now known as cyan 2014-09-01T20:51:07Z francogrex joined #lisp 2014-09-01T20:51:52Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-01T20:52:14Z urandom__ quit (Quit: Konversation terminated!) 2014-09-01T20:54:13Z nell joined #lisp 2014-09-01T20:55:37Z segv- quit (Remote host closed the connection) 2014-09-01T20:55:37Z fikusz joined #lisp 2014-09-01T20:57:59Z pjb: AeroNotix: you can write files of bits, but the file format is not standardized. Some implementations will pack the bits into file bytes, some won't. The order of the packed bits can be different. 2014-09-01T20:58:25Z phserr joined #lisp 2014-09-01T20:58:50Z pjb: Some will have a header, some not. 2014-09-01T20:59:05Z AeroNotix: pjb: any links to further expand my understanding? 2014-09-01T20:59:41Z pjb: (with-open-file (out "/tmp/bits" :element-type 'bit :direction :output :if-does-not-exist :create :if-exists :supersede) (write-byte 1 out) (write-byte 0 out) (write-byte 1 out) (write-byte 0 out)) 2014-09-01T21:00:16Z pjb: compare the output file when created from different implementations. 2014-09-01T21:01:02Z AeroNotix attemps 2014-09-01T21:01:05Z AeroNotix: attempts* 2014-09-01T21:01:06Z rollertrump joined #lisp 2014-09-01T21:01:40Z pjb: This is the reason why you've been advised to use octet files :element-type (unsigned-byte 8) and do the packing yourself. It's the only way to ensure the file format you want. 2014-09-01T21:02:28Z AeroNotix: pjb: very interesting, thanks! 2014-09-01T21:03:31Z pjb: Notice how the lack of precise specifications (the presence of "implementation specific behavior") renders the feature useless… 2014-09-01T21:04:40Z AeroNotix: pjb: aha, subtle 2014-09-01T21:04:42Z AeroNotix: :) 2014-09-01T21:05:26Z chu joined #lisp 2014-09-01T21:05:29Z nyef: For that matter, there's no guarantee that even (unsigned-byte 8) produces files that are portable across implementations, but in practice it's hard to sanely have it produce anything that ISN'T compatible. 2014-09-01T21:06:02Z mishoo quit (Ping timeout: 245 seconds) 2014-09-01T21:06:02Z CrazyEddy joined #lisp 2014-09-01T21:13:16Z sdemarre quit (Ping timeout: 260 seconds) 2014-09-01T21:14:22Z slassh quit (Ping timeout: 245 seconds) 2014-09-01T21:16:32Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-01T21:18:44Z knob quit (Quit: Leaving) 2014-09-01T21:18:52Z hiyosi joined #lisp 2014-09-01T21:23:32Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-01T21:24:49Z katsh quit (Quit: WeeChat 1.0) 2014-09-01T21:24:54Z jtza8 joined #lisp 2014-09-01T21:25:44Z pjb: malice: literals are quoted and self evaluating objects. In: '(1 2 3) #(1 2 3) '"123" the conses of the list (1 2 3), the vector built by reading #(1 2 3) and the string "123" are literal. 2014-09-01T21:26:56Z kcj quit (Remote host closed the connection) 2014-09-01T21:27:07Z pjb: malice: I don't say that 1 or #\1 are literals, because it doesn't matter: they're immutable. 2014-09-01T21:27:27Z davorb joined #lisp 2014-09-01T21:28:08Z pjb: malice: but a structure #S(point :x 1 :y 2) in the source would be literal, while the structure returned by (make-point :x 1 :y 2) would not. 2014-09-01T21:28:19Z nug700 joined #lisp 2014-09-01T21:29:25Z mncoder quit (Quit: mncoder) 2014-09-01T21:31:28Z davorb1 quit (Ping timeout: 260 seconds) 2014-09-01T21:35:04Z krid quit (Quit: xyzzy) 2014-09-01T21:35:37Z ggole quit 2014-09-01T21:41:30Z marsbot is now known as marsam 2014-09-01T21:48:21Z cyan is now known as cy 2014-09-01T21:48:57Z CrazyEddy joined #lisp 2014-09-01T21:48:57Z pnpuff quit (Quit: Lost terminal) 2014-09-01T21:51:10Z zarul quit (Ping timeout: 250 seconds) 2014-09-01T21:51:20Z attila_lendvai joined #lisp 2014-09-01T21:51:20Z attila_lendvai quit (Changing host) 2014-09-01T21:51:20Z attila_lendvai joined #lisp 2014-09-01T21:54:53Z francogrex quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-01T21:57:07Z petrutrimbitas joined #lisp 2014-09-01T21:57:11Z eudoxia joined #lisp 2014-09-01T21:59:56Z wbooze quit (Ping timeout: 260 seconds) 2014-09-01T22:01:08Z EvW quit (Quit: EvW) 2014-09-01T22:01:20Z nihilatus joined #lisp 2014-09-01T22:01:30Z marsam is now known as marsbot 2014-09-01T22:05:16Z zarul joined #lisp 2014-09-01T22:10:57Z zwer quit (Remote host closed the connection) 2014-09-01T22:11:25Z zwer joined #lisp 2014-09-01T22:16:01Z malice: pjb, thanks 2014-09-01T22:16:26Z malice: even though some time passed since I asked that question :D 2014-09-01T22:18:15Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-01T22:18:28Z dmiles_afk joined #lisp 2014-09-01T22:18:53Z logand`` joined #lisp 2014-09-01T22:19:39Z hiyosi joined #lisp 2014-09-01T22:19:41Z oleo quit (Read error: Connection reset by peer) 2014-09-01T22:21:02Z fikusz quit (Ping timeout: 245 seconds) 2014-09-01T22:21:51Z oleo joined #lisp 2014-09-01T22:22:21Z logand` quit (Ping timeout: 240 seconds) 2014-09-01T22:23:44Z zophy quit (Ping timeout: 260 seconds) 2014-09-01T22:24:36Z hiyosi quit (Ping timeout: 255 seconds) 2014-09-01T22:24:40Z Whitesquall quit (Ping timeout: 260 seconds) 2014-09-01T22:34:00Z phserr quit (Ping timeout: 260 seconds) 2014-09-01T22:34:03Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-01T22:40:32Z Intensity joined #lisp 2014-09-01T22:49:02Z CrazyEddy joined #lisp 2014-09-01T22:50:42Z ehu quit (Ping timeout: 255 seconds) 2014-09-01T22:51:52Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-01T22:59:53Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-01T23:00:04Z dmiles_afk joined #lisp 2014-09-01T23:01:05Z vaporatorius quit (Remote host closed the connection) 2014-09-01T23:04:44Z dmiles joined #lisp 2014-09-01T23:05:06Z dmiles_afk quit (Ping timeout: 255 seconds) 2014-09-01T23:06:41Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-01T23:10:42Z davazp joined #lisp 2014-09-01T23:14:03Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-01T23:15:40Z vert2 quit (Ping timeout: 250 seconds) 2014-09-01T23:15:42Z Tordek quit (Ping timeout: 245 seconds) 2014-09-01T23:16:18Z vert2 joined #lisp 2014-09-01T23:16:32Z bend3r quit (Ping timeout: 250 seconds) 2014-09-01T23:16:38Z bend3r joined #lisp 2014-09-01T23:18:46Z eudoxia quit (Quit: Lost terminal) 2014-09-01T23:19:05Z jtza8 quit (Remote host closed the connection) 2014-09-01T23:20:06Z MouseTheLuckyDog joined #lisp 2014-09-01T23:20:29Z hiyosi joined #lisp 2014-09-01T23:21:18Z MouseTheLuckyDog: Is it possible to liar all the variables in a particular scope/binding? 2014-09-01T23:21:29Z Tordek joined #lisp 2014-09-01T23:22:35Z AeroNotix: MouseTheLuckyDog: liar? 2014-09-01T23:22:50Z AeroNotix: list? 2014-09-01T23:23:20Z MouseTheLuckyDog: AeroNotix, Oops. Yeah. list. My fingers slipped one over :) 2014-09-01T23:25:09Z AeroNotix: MouseTheLuckyDog: what implementation are you using? 2014-09-01T23:25:20Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-01T23:25:47Z MouseTheLuckyDog: AeroNotix, it's a generic question. 2014-09-01T23:25:54Z AeroNotix: MouseTheLuckyDog: there isn't a generic answer. 2014-09-01T23:27:11Z MouseTheLuckyDog: AeroNotix, so there would be a different answer for Corman Lisp than CLISP than SBCL? I should say that I am assuming CLOS. 2014-09-01T23:27:40Z AeroNotix: MouseTheLuckyDog: CLOS has nothing to do with it. 2014-09-01T23:27:48Z davorb1 joined #lisp 2014-09-01T23:28:17Z AeroNotix: MouseTheLuckyDog: and yes 2014-09-01T23:30:33Z mncoder joined #lisp 2014-09-01T23:31:08Z AeroNotix: MouseTheLuckyDog: https://gist.github.com/AeroNotix/e34eabffabcaa21503e6 note line 15 2014-09-01T23:31:24Z davorb quit (Ping timeout: 260 seconds) 2014-09-01T23:33:27Z blueingress quit (Ping timeout: 255 seconds) 2014-09-01T23:37:10Z varjag quit (Quit: Connection closed for inactivity) 2014-09-01T23:45:24Z jleija joined #lisp 2014-09-01T23:52:08Z pjb: MouseTheLuckyDog: you can do it with your own macro. 2014-09-01T23:52:13Z __prefect joined #lisp 2014-09-01T23:53:00Z pjb: (defmacro mylet (bindings &body body) `(let ,bindings (flet ((bindings () ',(mapcar (lambda (b) (if (symbolp b) b (first b))) bindings))) ,@body))) 2014-09-01T23:53:41Z pjb: (mylet ((a 1) (b 2)) (bindings)) --> (a b) 2014-09-01T23:54:00Z pjb: you can easily extend it for embedded mylets if you want them all. 2014-09-01T23:54:22Z nha_ quit (Ping timeout: 245 seconds) 2014-09-01T23:54:25Z hiyosi joined #lisp 2014-09-01T23:54:54Z pjb: (defun bindings () '()) (defmacro mylet (bindings &body body) `(let ,bindings (flet ((bindings () (append ',(mapcar (lambda (b) (if (symbolp b) b (first b))) bindings) (bindings)))) ,@body))) (mylet ((a 1) (b 2)) (mylet ((c 1) (d 2)) (bindings))) --> (c d a b) 2014-09-01T23:58:57Z nell joined #lisp 2014-09-01T23:59:47Z MouseTheLuckyDog: Thanks pjb. 2014-09-01T23:59:54Z zz_karupa is now known as karupa 2014-09-02T00:00:06Z nell: hmmm 2014-09-02T00:05:00Z kristof quit (Ping timeout: 260 seconds) 2014-09-02T00:07:53Z nihilatus quit (Quit: Connection closed for inactivity) 2014-09-02T00:09:08Z nand1 quit (Remote host closed the connection) 2014-09-02T00:14:36Z theos quit (Disconnected by services) 2014-09-02T00:15:02Z theos joined #lisp 2014-09-02T00:15:54Z zRecursive joined #lisp 2014-09-02T00:17:33Z ndrei quit (Ping timeout: 255 seconds) 2014-09-02T00:22:28Z BlueRavenGT quit (Remote host closed the connection) 2014-09-02T00:22:50Z stepnem quit (Ping timeout: 250 seconds) 2014-09-02T00:23:57Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-02T00:26:56Z pecg joined #lisp 2014-09-02T00:26:56Z pecg quit (Changing host) 2014-09-02T00:26:56Z pecg joined #lisp 2014-09-02T00:31:57Z harish_ quit (Ping timeout: 240 seconds) 2014-09-02T00:39:36Z yacks quit (Ping timeout: 255 seconds) 2014-09-02T00:41:12Z CrazyEddy joined #lisp 2014-09-02T00:43:23Z yacks joined #lisp 2014-09-02T00:43:57Z zygentoma quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-02T00:46:42Z theethicalegoist joined #lisp 2014-09-02T00:49:20Z ejbs quit (Ping timeout: 260 seconds) 2014-09-02T00:50:44Z banjara joined #lisp 2014-09-02T00:55:03Z wol quit (Quit: Konversation terminated!) 2014-09-02T00:55:48Z marsbot is now known as marsam 2014-09-02T00:57:13Z attila_lendvai quit (Quit: Leaving.) 2014-09-02T00:58:47Z ndrei joined #lisp 2014-09-02T00:59:28Z MoALTz_ joined #lisp 2014-09-02T01:02:52Z MoALTz quit (Ping timeout: 260 seconds) 2014-09-02T01:04:21Z jusss joined #lisp 2014-09-02T01:12:20Z pecg quit (Read error: Connection reset by peer) 2014-09-02T01:13:13Z stanislav_ joined #lisp 2014-09-02T01:14:44Z chu quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-02T01:16:07Z stanislav quit (Ping timeout: 245 seconds) 2014-09-02T01:20:33Z Zeedox_ quit (Ping timeout: 255 seconds) 2014-09-02T01:24:49Z marsam is now known as marsbot 2014-09-02T01:28:41Z paul0 joined #lisp 2014-09-02T01:32:42Z phax joined #lisp 2014-09-02T01:34:05Z zophy joined #lisp 2014-09-02T01:35:03Z cross_ is now known as cross 2014-09-02T01:39:11Z drmeister: Where in the CLHS does it say that lexical function and macro definitions shadow global macro definitions with the same name? 2014-09-02T01:39:34Z drmeister: I'm asking about regular macro definitions rather than compiler macro definitions - I know where that is. 2014-09-02T01:40:02Z Bike: clhs flet 2014-09-02T01:40:02Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_flet_.htm 2014-09-02T01:40:04Z Bike: i think 2014-09-02T01:40:31Z Bike: "Within the function definitions, local function names that match those being defined refer to functions or macros defined outside the flet. flet can locally shadow a global function name, and the new definition can refer to the global definition. " there you go 2014-09-02T01:41:02Z ndrei quit (Ping timeout: 245 seconds) 2014-09-02T01:45:06Z drmeister: Thank you. 2014-09-02T01:46:51Z phadthai: then probably on the equivalent macrolet entry, I'd assume 2014-09-02T01:47:44Z phadthai: oh it's the same page :) 2014-09-02T01:47:50Z harish_ joined #lisp 2014-09-02T01:49:32Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-02T01:51:26Z innertracks quit (Quit: innertracks) 2014-09-02T01:52:36Z davazp quit (Remote host closed the connection) 2014-09-02T02:04:00Z zophy quit (Ping timeout: 260 seconds) 2014-09-02T02:04:13Z CrazyEddy joined #lisp 2014-09-02T02:09:13Z Vutral quit (Ping timeout: 260 seconds) 2014-09-02T02:11:33Z nicdev quit (Ping timeout: 260 seconds) 2014-09-02T02:11:54Z didi joined #lisp 2014-09-02T02:12:01Z dlowe quit (Ping timeout: 260 seconds) 2014-09-02T02:12:08Z nyef quit (Quit: G'night all.) 2014-09-02T02:12:29Z dlowe joined #lisp 2014-09-02T02:13:46Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-02T02:14:14Z didi: Can I extend concatenate to a new type I define myself? Maybe extending `sequence'? Given the answer for extending LOOP, I am guessing "no." 2014-09-02T02:14:56Z pecg joined #lisp 2014-09-02T02:14:56Z pecg quit (Changing host) 2014-09-02T02:14:56Z pecg joined #lisp 2014-09-02T02:15:17Z echo-area joined #lisp 2014-09-02T02:15:32Z pecg quit (Client Quit) 2014-09-02T02:18:24Z TDog joined #lisp 2014-09-02T02:21:10Z xebd`: didi: No and yes. 2014-09-02T02:21:40Z didi: Ah, a riddle. I see. 2014-09-02T02:21:44Z xebd`: didi: concatenate is a compiled function, not a generic function (which would allow specialization on type). In that extent, no. 2014-09-02T02:21:59Z didi: oic 2014-09-02T02:22:12Z xebd`: didi: Could you define a new symbol-function in your package that shadows cl:concatenate, calling cl:concatenate when needed? Sure. 2014-09-02T02:22:32Z didi: Hum. Intriguing idea. 2014-09-02T02:22:46Z Vutral joined #lisp 2014-09-02T02:23:09Z Jameser joined #lisp 2014-09-02T02:23:12Z xebd`: I've done similar when playing with an ORM: I hijacked cl:defstruct with my own code, which both called cl:defstruct _and_ did its own thing. 2014-09-02T02:23:27Z xebd`: (Yes, I could have used CLOS instead. Whether or not I should have is a discussion all its own.) 2014-09-02T02:23:41Z didi: xebd`: Cool. Thank you. 2014-09-02T02:23:51Z xebd`: didi: No problem. :) 2014-09-02T02:24:51Z xebd`: (When I say "could have used CLOS instead", I should clarify: I could have used CLOS classes instead of mutilating and bastardizing defstruct.) 2014-09-02T02:26:27Z Zhivago: Bastardization is one of CL's best qualities. 2014-09-02T02:27:35Z jleija quit (Quit: leaving) 2014-09-02T02:29:05Z drmeister: Why does the CLHS say that compiler-macros are expanded by calling *macroexpand-hook* but Steele's book (2nd ed) says COMPILER-MACROEXPAND-1 is called repeatedly? 2014-09-02T02:29:17Z phadthai: didi: some implementations have support for extending sequences however, and libraries may also provide it with a CL-compatible interface 2014-09-02T02:29:31Z Xach: drmeister: because steele's book is wrong the standard is right. 2014-09-02T02:29:57Z Xach: drmeister: chronologically, steele's book was a stopgap and the standard has the final say. 2014-09-02T02:30:04Z drmeister: Ok. When I find differences CLHS is gospel. 2014-09-02T02:30:17Z Xach: drmeister: right. except for minor typos, maybe. 2014-09-02T02:32:05Z didi: phadthai: Oh, cool. SBCL can do it. 2014-09-02T02:34:42Z Bike quit (Quit: leaving) 2014-09-02T02:37:29Z xebd`: Bastardization is one of CL's best qualities. 2014-09-02T02:37:30Z xebd`: :) 2014-09-02T02:37:59Z Bike joined #lisp 2014-09-02T02:38:03Z pjb: didi: if you are an implementer, you can extend concatenate, thust defining a super set of Common Lisp, on the condition that you document it. 2014-09-02T02:39:27Z pjb: didi: if you are a user, then you can define a package "EXTENDED-COMMON-LISP" from which you export all symbols from CL but CL:CONCATENATE, and an EXTENDED-COMMON-LISP:CONCATENATE symbol defined and documented as you wish. Then in your program you would (:use "EXTENDED-COMMON-LISP) instead of (:use "COMMON-LISP") and everybody would be happy. 2014-09-02T02:40:56Z pjb: didi: notice that sbcl allows you to define new subtypes of SEQUENCE, and therefore in sbcl, I would expect concatenate to take those new types for the first parameter. 2014-09-02T02:41:42Z xebd`: pjb: Also a good point (SBCL sequence subtypes) 2014-09-02T02:41:52Z optikalmouser quit (Ping timeout: 240 seconds) 2014-09-02T02:45:33Z bgs100 quit (Quit: bgs100) 2014-09-02T02:45:45Z zophy joined #lisp 2014-09-02T02:46:52Z didi: pjb: Thank you for the extended-* package idea. I didn't think of doing it like that. 2014-09-02T02:47:25Z wizzo joined #lisp 2014-09-02T02:49:10Z xebd`: didi: Write enough code for enough different projects, and you probably will end up with a "DIDI-COMMON-LISP" that you :use by default instead of plain "CL" ;) 2014-09-02T02:49:52Z didi: xebd`: Heh. One day, maybe. One day. ;-) 2014-09-02T02:51:18Z xebd`: didi: It'll sneak up on you. Not only will you have your own code, but you also will find favorites (e.g. alexandria, bordeaux-threads, cl-ppcre, and a few other handy tidbits). 2014-09-02T02:52:49Z pecg joined #lisp 2014-09-02T02:52:49Z pecg quit (Changing host) 2014-09-02T02:52:49Z pecg joined #lisp 2014-09-02T02:54:29Z pecg quit (Client Quit) 2014-09-02T02:55:40Z didi: xebd`: Speaking of cl-ppcre, which I do happen to use occasionally, it would be nice to have a sexp regexp engine, like Emacs' `rx'. 2014-09-02T02:57:12Z Bike: ppcre has a sexp syntax, or do you mean something else? 2014-09-02T02:57:19Z didi: ... 2014-09-02T02:57:31Z didi goes look 2014-09-02T02:57:35Z xebd`: didi: How about cl-ppcre? 2014-09-02T02:57:40Z didi: :-P 2014-09-02T02:57:44Z Bike: there's also cl-irregsexp. 2014-09-02T02:57:55Z xebd`: didi: What Bike said... cl-ppcre has a nice s-expr representation. 2014-09-02T02:58:03Z Bike: http://www.weitz.de/cl-ppcre/#create-scanner2 here are the sexprs 2014-09-02T02:58:25Z Bike: i'm glad it's in there, i always get confused remembering how many backslashes to throw around 2014-09-02T02:58:51Z didi: Noice. I've been using it wrong. 2014-09-02T02:59:01Z xebd`: cl-ppcre:parse-string will convert a regexp string to its s-expr format 2014-09-02T02:59:22Z xebd`: So you can play with your existing regexps to hit the ground running 2014-09-02T02:59:56Z didi: :-D 2014-09-02T03:00:00Z drmeister: The CLHS defines an exceptional situation for FUNCALL (error of type undefined-function) but not for APPLY - does anyone know why? 2014-09-02T03:00:08Z xebd`: "Using it wrong"? Does not sound like Lisp. :) 2014-09-02T03:00:34Z theethicalegoist quit (Quit: Leaving) 2014-09-02T03:00:41Z didi: Hehe. It's regexp, so it applies. 2014-09-02T03:00:44Z Bike: drmeister: nope! that's weird. 2014-09-02T03:00:54Z xebd`: drmeister: /me did not know that 2014-09-02T03:01:33Z Zhivago: drmeister: CLHS isn't the most consistent document :( 2014-09-02T03:01:35Z pjb: drmeister: do the right thing! 2014-09-02T03:02:24Z xebd`: drmeister: As a pragmatic manner, I see that both funcall and apply behave the same when passed NIL instead of a function. (Tested: CCL and SBCL) 2014-09-02T03:02:54Z LiamH quit (Read error: Connection reset by peer) 2014-09-02T03:03:01Z pjb: drmeister: by the way, do you know xcl? 2014-09-02T03:03:26Z drmeister: I don't know xcl. 2014-09-02T03:03:50Z pjb: It's a CL implementation written in C++, by the same author than originally abcl. 2014-09-02T03:04:03Z pjb: It's not entirely finished, but you might want to have a look at it. 2014-09-02T03:04:28Z pjb: https://github.com/gnooth/xcl 2014-09-02T03:04:55Z drmeister: Oh yeah - I saw that when I started. There was some reason why it wasn't useful. 2014-09-02T03:05:13Z pjb: ok 2014-09-02T03:05:46Z vydd quit (Remote host closed the connection) 2014-09-02T03:07:01Z didi left #lisp 2014-09-02T03:11:07Z xristos quit (Quit: none) 2014-09-02T03:12:09Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-02T03:17:48Z drmeister: Does Peter Graves visit #lisp? 2014-09-02T03:18:58Z drmeister: Peter Graves who wrote XCL and ABCL 2014-09-02T03:20:09Z xristos joined #lisp 2014-09-02T03:21:00Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-02T03:21:37Z banjara quit (Quit: Leaving.) 2014-09-02T03:26:36Z katsh joined #lisp 2014-09-02T03:26:47Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-02T03:27:02Z CrazyEddy joined #lisp 2014-09-02T03:27:06Z zRecursive: drmeister: maybe it is too busy to visit #lisp :) 2014-09-02T03:30:36Z zRecursive: drmeister: Is XCL similar with your Clasp ? 2014-09-02T03:31:18Z drmeister: No. 2014-09-02T03:32:50Z katsh: do i really have to learn emcas to start using lisp? 2014-09-02T03:33:17Z phadthai: only a subset of emacs and slime, or you could perhaps try slimv 2014-09-02T03:33:40Z katsh: there's no way to use any text editor, compile and run in the terminal after? 2014-09-02T03:33:41Z phadthai: (or the implementation's REPL, but that's usually quite limited) 2014-09-02T03:34:01Z phadthai: you sure could, but it would be less integrated and interactive 2014-09-02T03:34:17Z phadthai: commercial implementations also come with custom GUI IDEs 2014-09-02T03:34:32Z katsh: oy 2014-09-02T03:34:43Z katsh: ill do the emcas tutorial i suppose. thanks. 2014-09-02T03:36:03Z xebd`: drmeister: Orthogonal and complementary to the benchmarks you're running, are you familiar with cl-bench / the Gabriel benchmarks? 2014-09-02T03:36:26Z drmeister: xebd`: I've seen them, I haven't run them. 2014-09-02T03:36:33Z xebd`: drmeister: You may wish to compare your implementation against a couple common ones to improve your feel for what's "fast" and what's "slow". 2014-09-02T03:36:39Z xebd`: drmeister: okay, cool :) 2014-09-02T03:37:26Z xebd`: katsh: It's less painful than you think. :) 2014-09-02T03:37:44Z xebd`: katsh: There also is a PDF cheatsheet somewhere... albeit for v22 IIRC... that is handy to print. 2014-09-02T03:38:11Z drmeister: xebd`: Is there CL code for the Gabriel benchmarks. 2014-09-02T03:38:43Z katsh: I will go through it. but i will struggle a bit. Installing lisp in a box at the moment 2014-09-02T03:38:56Z xebd`: katsh: "GNU Emacs Reference Card" - and I see that I've printed and laminated for v24. (Hold for URL...) 2014-09-02T03:39:03Z xebd`: drmeister: cl-bench 2014-09-02T03:39:10Z gmcastil joined #lisp 2014-09-02T03:41:11Z nell joined #lisp 2014-09-02T03:41:34Z xebd`: drmeister: http://www.dreamsongs.org/Files/Timrep.pdf 2014-09-02T03:42:13Z xebd`: katsh: http://www.gnu.org/software/emacs/refcards/pdf/refcard.pdf 2014-09-02T03:42:48Z katsh: thank you sir 2014-09-02T03:43:39Z xebd`: katsh: Have fun. :) Once you are accustomed to Emacs, you'll either love it (and feel lost when faced with any other editor), or have it so much that you craft a wicked custom VIM environment. 2014-09-02T03:44:36Z katsh: only time will tell 2014-09-02T03:44:57Z xebd` <-- the former happened 2014-09-02T03:44:59Z katsh: i only want to learn lisp because people say it "makes you thinkn differnetly" 2014-09-02T03:45:13Z katsh: if you dont plan on using it, learning it will make you a better programmer. alas, here i am 2014-09-02T03:45:34Z katsh: was trying to skip emacs but looks like doing so will only make things worse 2014-09-02T03:45:36Z xebd`: katsh: You know that you're thinking sufficiently differently, and are sufficiently better, when you start hating other languages. ;) 2014-09-02T03:45:40Z Zhivago: You should also learn prolog, for the same reason, only perhaps more so. 2014-09-02T03:46:05Z xebd`: xebd`: Read _On Lisp_, _Practical Common Lisp_, and (when you're ready to blow your mind!) _Let Over Lambda_. 2014-09-02T03:46:06Z zwer: you may add haskell to that list too 2014-09-02T03:46:08Z xebd`: err 2014-09-02T03:46:12Z xebd`: katsh: ... 2014-09-02T03:46:43Z hiyosi joined #lisp 2014-09-02T03:47:15Z katsh: one a time. lisp first 2014-09-02T03:47:44Z xebd`: katsh: As you embark on your Lisp journey, remember: "functions when possible and macros when necessary" 2014-09-02T03:48:09Z xebd`: katsh: What Lisp calls "macros" are far more powerful... think of them as "compiler plug-ins". 2014-09-02T03:48:29Z xebd`: * far more powerful than most other languages' "macros" 2014-09-02T03:48:34Z katsh: i will keep it in mind 2014-09-02T03:49:24Z xebd`: katsh: When you do get to macro-writing, appreciate that it's all still the same language syntax. Contrast with C++, which has different syntaxes for preprocesser macros, for inheritance, and for templating. 2014-09-02T03:49:52Z katsh: ok :) 2014-09-02T03:49:57Z Zhivago: Just remember that CL macros are tiny little brain-damaged compilers. :) 2014-09-02T03:51:27Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-02T03:52:31Z mncoder quit (Quit: mncoder) 2014-09-02T03:54:48Z xebd`: katsh: Were you so inclined, you could even hijack the Lisp reader, and totally convert your REPL into a processor/compiler for another language. As for why, consider the benefit of embedded DSLs (domain-specific languages) for certain tasks. E.g.: You may find a situation where you would like to include EBNF inline. No problem! That, however, would likely be a leter exercise. 2014-09-02T03:55:03Z xebd`: katsh: I'm just trying to dangle goodies, whet your appetite, and tempt you. ;-) 2014-09-02T03:55:17Z zRecursive: xebd`: glad to see "functions when possible and macros when necessary", How about the Scheme's macro ? is it same as CL macro ? 2014-09-02T03:56:16Z xebd`: zRecursive: TBH, I'm a bit rusted on Scheme, and never did much with its macros. 2014-09-02T03:56:59Z pecg joined #lisp 2014-09-02T03:56:59Z pecg quit (Changing host) 2014-09-02T03:56:59Z pecg joined #lisp 2014-09-02T03:57:54Z xebd`: zRecursive: I sometimes use macros that [deliberately] use anaphoric capture (cf.: _Let Over Lambda_, Doug Hoyte), so I'm not big on so-called hygienic macros. Of course, with that power comes responsibility... 2014-09-02T03:58:19Z zRecursive: I heard of Schemers call its macro hygience which i really donot understand ... 2014-09-02T03:58:50Z zRecursive: Isnot CL macro not hygient ? 2014-09-02T03:58:59Z xebd`: zRecursive: No, it is not. 2014-09-02T03:59:13Z xebd`: zRecursive: Personally, I consider that a feature -- so long as one is aware of it. 2014-09-02T03:59:48Z zRecursive: ok 2014-09-02T04:00:25Z MoALTz__ joined #lisp 2014-09-02T04:00:31Z White__Flame quit (Read error: Connection reset by peer) 2014-09-02T04:00:38Z xebd`: zRecursive: http://letoverlambda.com/index.cl/toc # check out chapters 3 and 6 2014-09-02T04:01:16Z nakiya joined #lisp 2014-09-02T04:02:19Z drmeister: Hygienic macros are like training wheels on a rocket. What makes CL macros powerful is what makes them dangerous. 2014-09-02T04:02:31Z xebd`: http://c2.com/cgi/wiki?LispSchemeDifferences 2014-09-02T04:02:44Z Bike: you can set up an unhygenic system from a hygenic one, iirc 2014-09-02T04:03:28Z MoALTz_ quit (Ping timeout: 260 seconds) 2014-09-02T04:04:34Z drmeister: If I'm bootstrapping a CL and DEFPACKAGE is not yet defined is this a good idiom for creating a package: https://gist.github.com/drmeister/bf9ee3810d24fad4fdfa 2014-09-02T04:05:30Z MoALTz joined #lisp 2014-09-02T04:06:44Z vydd joined #lisp 2014-09-02T04:07:23Z xebd`: drmeister: At the risk of sounding flip, I'll say "it depends, but quite likely". 2014-09-02T04:07:48Z sigjuice quit (Quit: leaving) 2014-09-02T04:08:08Z MoALTz__ quit (Ping timeout: 260 seconds) 2014-09-02T04:08:25Z xebd`: drmeister: I'd need to RTFS on different DEFPACKAGE implementations, but such is a convenience macro... so... if making your package is all that you need, great. 2014-09-02T04:08:49Z drmeister: RTFS? 2014-09-02T04:09:05Z drmeister: read the f'ng spec? 2014-09-02T04:09:16Z xebd`: { source | spec } -- yes :) 2014-09-02T04:09:57Z xebd`: drmeister: Note that http://clhs.lisp.se/Body/f_mk_pkg.htm lists "exceptional situations" which you may or may not wish to consider during your bootstrap code. 2014-09-02T04:10:30Z drmeister: Yeah - that will do then. 2014-09-02T04:11:06Z vydd quit (Ping timeout: 255 seconds) 2014-09-02T04:16:10Z kushal joined #lisp 2014-09-02T04:19:45Z Karl_Dscc joined #lisp 2014-09-02T04:25:49Z vydd joined #lisp 2014-09-02T04:28:37Z nakiya quit 2014-09-02T04:30:29Z mr-foobar quit (Quit: Leaving...) 2014-09-02T04:30:32Z vydd quit (Ping timeout: 260 seconds) 2014-09-02T04:31:09Z nakiya joined #lisp 2014-09-02T04:31:42Z Karl_Dscc quit (Remote host closed the connection) 2014-09-02T04:40:53Z edgar-rft quit (Quit: activity disappeared because all hope lost) 2014-09-02T04:41:28Z wooden: is it possible to print ibm extended characters in lisp? i'm using cl-ncurses and want to specify the borders to be drawn with these characters. 2014-09-02T04:41:45Z wooden: ^ common lisp, sbcl 2014-09-02T04:42:10Z echo-area quit (Remote host closed the connection) 2014-09-02T04:43:01Z Bike: Box drawing characters should all be in unicode, so yeah, usually. 2014-09-02T04:43:10Z Bike: #\╣ 2014-09-02T04:43:24Z echo-area joined #lisp 2014-09-02T04:43:27Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-02T04:43:31Z wooden: Bike: thank you. i had only gotten to chars like #\a in my studies so far. 2014-09-02T04:43:42Z Bike: ncurses might need something odd, though, i'm not sure 2014-09-02T04:46:20Z wooden: Bike: mmm, yeah. "The value #\BOX_DRAWINGS_DOUBLE_VERTICAL_AND_LEFT is not of type (SIGNED-BYTE 32)" 2014-09-02T04:46:45Z Bike: what, so you shouldn't be passing lisp characters in the first place. 2014-09-02T04:47:12Z pjb: wooden: try to find the unicode code point(s) for this character! 2014-09-02T04:47:37Z hiyosi joined #lisp 2014-09-02T04:48:57Z kushal quit (Quit: Leaving) 2014-09-02T04:49:14Z gmcastil quit (Remote host closed the connection) 2014-09-02T04:51:10Z echo-area quit (Remote host closed the connection) 2014-09-02T04:51:18Z beach joined #lisp 2014-09-02T04:51:43Z beach: Good morning everyone! 2014-09-02T04:51:52Z pjb: Good morning! 2014-09-02T04:51:57Z echo-area joined #lisp 2014-09-02T04:52:30Z hiyosi quit (Ping timeout: 255 seconds) 2014-09-02T04:54:35Z beach: drmeister: Converting a form to an AST is not part of Cleavir because it is very implementation dependent. It needs to access the environment, and the organization of the environment is up to each implementation. 2014-09-02T04:55:46Z beach: I don't know whether it is possible to come up with some protocol that would be acceptable to most implementations so that they can still use their own environment implementations. 2014-09-02T04:56:27Z pecg quit (Quit: WeeChat 1.0) 2014-09-02T04:56:34Z Bike: cltl2's not adequate? (I mean, the interface kinda sucks, but all the information's there) 2014-09-02T04:56:59Z drmeister: Could you explain that a bit more? What about if we used the environment accessing functions described in Steele's book? 2014-09-02T04:57:05Z drmeister: What Bike said. 2014-09-02T04:57:48Z beach: I have found them inadequate. 2014-09-02T04:57:48Z drmeister: The Franz Lisp guys came up with a more detailed proposal for standardizing what environments look like. I could dig that up. 2014-09-02T04:58:03Z Bike: beach: how so, i'm curious. 2014-09-02T04:58:32Z beach: Bike: Wow, you are asking me to recall stuff like this years after I gave it some thought! :) 2014-09-02T04:58:36Z TDog quit (Quit: ChatZilla 0.9.90.1 [Firefox 31.0/20140716183446]) 2014-09-02T04:58:53Z pjb: I'm sure there's some notes in some emacs buffer not too far away ;-) 2014-09-02T04:59:05Z beach: Maybe! 2014-09-02T04:59:07Z Bike: um, sorry. 2014-09-02T04:59:10Z drmeister: I'm trying to understand how I get from S-expressions to Cleavir AST's. That is important right? 2014-09-02T04:59:19Z beach: drmeister: That's the first step, yes. 2014-09-02T04:59:54Z beach: I need to think about it some more. 2014-09-02T05:00:09Z drmeister: And you would start with minimal compiled S-expressions - correct? You mention that eval-when has already been processed away. 2014-09-02T05:00:18Z pjb: Yes. 2014-09-02T05:00:28Z pjb: Only special operators need to be translated (at first). 2014-09-02T05:00:43Z pjb: You may also opencode some "primitive" CL functions. 2014-09-02T05:01:05Z beach: Minimal compilation requires the environment, so that would be the choice of the implementation. 2014-09-02T05:01:19Z oleo quit (Quit: Verlassend) 2014-09-02T05:01:44Z beach: Oh, I remember some stuff. The CLtL2 is silent on compiler macros as I recall. 2014-09-02T05:02:00Z Bike: well, there aren't lexical compiler macros, so... 2014-09-02T05:02:02Z beach: And the interaction between compiler macros and functions/macros is a bit strange. 2014-09-02T05:02:12Z beach: I am talking about the global environment. 2014-09-02T05:02:16Z drmeister: I'm just implementing compiler macros. 2014-09-02T05:02:17Z kcj joined #lisp 2014-09-02T05:02:39Z Bike: it's true though, when i tried doing some funky stuff with compiler macros, ccl did stuff that could possibly be nonconformant, and at was at the least inconvenient 2014-09-02T05:02:40Z drmeister: Lexical functions shadow global macros. 2014-09-02T05:02:40Z beach: Turning a form into an AST must access the global environment. 2014-09-02T05:03:26Z beach: There are rules such as a macro and a special operator can co-exist, but not a function and a macro. 2014-09-02T05:03:34Z Bike: its compiler macro functions are also definitely broken, in a separate way, which just goes to show nobody gives a damn about 'em 2014-09-02T05:03:46Z beach: Then there are rules about what happens to a function when a macro is defined, and vice versa. 2014-09-02T05:03:57Z beach: None of that stuff is talked about in CLtL2. 2014-09-02T05:05:06Z beach: So I decided that I wasn't up to defining an implementation-independent environment-manipulating protocol. 2014-09-02T05:05:12Z drmeister: Ok, but if I have an implementation and I do minimal compilation. Then the question becomes "how do I convert the minimially compiled S-exp" to a Cleavir AST - doesn't it? 2014-09-02T05:05:45Z pjb: Yes, you must convert each special operators (and even, not all of them, since some can do nothing). 2014-09-02T05:05:53Z echo-area quit (Remote host closed the connection) 2014-09-02T05:06:32Z Bike: http://franz.com/support/documentation/8.2/doc/environments.htm i swear there was a different page, but i don't know where it went 2014-09-02T05:06:49Z beach: drmeister: If it is already minimally compiled, all you need to do is distinguish between special operators and functions. For special operators, there are mostly an equivalent AST. 2014-09-02T05:07:58Z beach: drmeister: Some special operators don't have ASTs in Cleavir. You can then either add your own AST for them, or you can implement them differently. For instance, some of the dynamic binding stuff can be implemented as function calls. 2014-09-02T05:09:18Z tadni quit (Remote host closed the connection) 2014-09-02T05:09:20Z drmeister: Right, but things like Cleavir 2.2.18 "typeq-ast" needs type information from the environment as well as the variable-ast which I assume is either a symbol-value-ast or a lexical-ast? 2014-09-02T05:10:07Z beach: Right. 2014-09-02T05:11:52Z Rotacidni quit (Ping timeout: 245 seconds) 2014-09-02T05:12:02Z drmeister: Ok. 2014-09-02T05:12:27Z drmeister: I'm still confused about LET - each binding gets converted into a setq-ast? 2014-09-02T05:12:45Z pjb: To make it simplier, you can convert let into a call to lambda. 2014-09-02T05:12:52Z pjb: Then you only have to optimize function calls. 2014-09-02T05:13:06Z beach: drmeister: Yes, the AST does not need scoping information. Different variables with the same name become different AST instances. 2014-09-02T05:13:20Z jusss joined #lisp 2014-09-02T05:14:09Z beach: drmeister: In the AST, the "scope" of a variable ends when it is no longer used. 2014-09-02T05:14:33Z drmeister: pjb: That's an idea but beach indicates it's not necessary. 2014-09-02T05:14:45Z drmeister: beach: Ok, I think I see. 2014-09-02T05:15:13Z innertracks joined #lisp 2014-09-02T05:15:19Z beach: drmeister: Though, as I said, the analysis of the lifetime of variables is done later in the MIR representation of the program. 2014-09-02T05:15:29Z drmeister: pjb: Are you familiar with Cleavir? I emailed beach asking if I could use it as a guide to writing an optimizing Common Lisp compiler for Clasp. 2014-09-02T05:15:40Z cy quit (Quit: :q!) 2014-09-02T05:15:41Z pjb: I've just read the paper presenting it. 2014-09-02T05:16:29Z drmeister: beach: Is there more than the document "Cleavir Cutting edge compilation for Common Lisp"? 2014-09-02T05:16:44Z beach: OK, so here is a challenge to #lisp then: Come up with a protocol for managing compilation environments (global and lexical) that would be compatible with any implementation. 2014-09-02T05:16:45Z TDog joined #lisp 2014-09-02T05:16:52Z beach: drmeister: No, that's it. 2014-09-02T05:17:47Z beach: drmeister: However, much of the Cleavir stuff was extracted from SICL, so there might still be material in the SICL documentation itself that I haven't yet moved. 2014-09-02T05:19:14Z beach: I have such a protocol for SICL, of course. But is it general enough that it can be used in other implementations? 2014-09-02T05:19:22Z innertracks quit (Ping timeout: 245 seconds) 2014-09-02T05:20:46Z drmeister: Environments are tricky. IMHO they are among the most important things in Common Lisp and the most poorly described in the specification. 2014-09-02T05:20:57Z beach: I agree. 2014-09-02T05:21:17Z beach: Since they are poorly described, each implementation is likely to come up with its own stuff. 2014-09-02T05:21:39Z echo-area joined #lisp 2014-09-02T05:21:40Z beach: For instance, most implementations store values in symbols. 2014-09-02T05:21:41Z Zhivago: CLTL2 did a much better job. 2014-09-02T05:21:53Z innertracks joined #lisp 2014-09-02T05:22:06Z drmeister: I came up with a Rube Goldberg implementation that works for both my C++ based interpreter and I use it in my compiler. 2014-09-02T05:22:25Z beach: SICL, on the other hand, stores symbol values in an environment object. 2014-09-02T05:23:07Z drmeister: What is CLTL2? It's not the CLHS? or is it Steele's book? 2014-09-02T05:23:15Z drmeister: (stupid question - I know) 2014-09-02T05:23:27Z beach: minion: cltl2 2014-09-02T05:23:27Z minion: cltl2: No definition was found in the first 5 lines of http://www.cliki.net/cltl2 2014-09-02T05:23:31Z Zhivago: It's Steele's book, from which CLHS was produced by throwing out anything that looked slightly tricky. 2014-09-02T05:23:40Z pjb: Common Lisp the Language 2nd edition. 2014-09-02T05:23:53Z beach: I suggest that a new, more complete, protocol use more CLOS than the one in CLtL2. 2014-09-02T05:23:56Z pjb: Don't confuse it with cltl1 which is also Steele's book. 2014-09-02T05:24:02Z drmeister: Right - I have that. And when CLTL2 and the CLHS disagree the CLHS is correct. 2014-09-02T05:24:20Z innertracks quit (Client Quit) 2014-09-02T05:24:29Z beach: drmeister: CLtL2 is mostly a superset of CLHS. 2014-09-02T05:24:29Z Zhivago: Sure, but CLHS is also missing a lot of stuff from CLTL2. 2014-09-02T05:25:17Z drmeister: I have a document somewhere from the Franz Lisp guys on a better definition of environments - I'll try and dig it out. 2014-09-02T05:25:48Z beach: drmeister: I have read it I think. As I recall, it is not very CLOSy either. 2014-09-02T05:25:51Z drmeister: It was basically an expansion on the environment querying and modifying functions in CLTL2 2014-09-02T05:26:06Z beach: Yes, that is my recollection as well. 2014-09-02T05:26:20Z drmeister: beach: Do you have a copy? It's not coming up when I search my computer. 2014-09-02T05:26:35Z vydd joined #lisp 2014-09-02T05:26:38Z beach: I don't. 2014-09-02T05:26:43Z beach: I would have to redo the search. 2014-09-02T05:27:12Z beach: http://franz.com/support/documentation/8.2/doc/environments.htm 2014-09-02T05:28:19Z TomRS joined #lisp 2014-09-02T05:28:29Z drmeister: Ok, so the first step is to come up with a mapping of minimal compiled Sexps to the Cleavir AST and then what would you do? 2014-09-02T05:28:40Z beach: pjb: You are a smart guy. Do you want to accept my challenge? 2014-09-02T05:28:45Z pjb: O 2014-09-02T05:28:48Z pjb: I'm busy. 2014-09-02T05:28:51Z beach: :( 2014-09-02T05:29:10Z beach: drmeister: Then, Cleavir translates that to MIR for you. 2014-09-02T05:29:33Z drmeister: Oh, so you have source code as well? 2014-09-02T05:29:41Z beach: Yes. 2014-09-02T05:30:02Z drmeister: Hmmm, LLVM is SSA. At what point would MIR be converted to SSA? 2014-09-02T05:30:18Z beach: drmeister: Very early. 2014-09-02T05:30:24Z beach: drmeister: But, there is a problem. 2014-09-02T05:30:24Z drmeister: Would I need MIR? 2014-09-02T05:30:45Z beach: drmeister: MIR is the notation in which optimizations are done. 2014-09-02T05:30:53Z drmeister: Got it - so yes. 2014-09-02T05:30:55Z beach: Also escape analysis. 2014-09-02T05:31:12Z vydd quit (Ping timeout: 260 seconds) 2014-09-02T05:31:18Z beach: The problem is that you can't really do SSA on variables that are arbitrarily captured. 2014-09-02T05:31:20Z drmeister: What is the problem? 2014-09-02T05:31:27Z Bike: mir is sicl's intermediate, yeah? what's it got that's nice? spec somewhere? 2014-09-02T05:31:45Z drmeister: I don't understand that sentance. 2014-09-02T05:31:46Z pjb: Happily, I'm busy with a lisp project for now, and the following will also be implemented in CL. 2014-09-02T05:32:07Z Bike: i don't understand what beach means either, but it sounds interestin'. 2014-09-02T05:32:10Z beach is becoming overloaded. 2014-09-02T05:32:24Z pjb: Clearvir could be compared to clisp VM. 2014-09-02T05:32:55Z drmeister: No problem. We can pick up some other time. 2014-09-02T05:33:06Z tajjada quit (Ping timeout: 250 seconds) 2014-09-02T05:33:18Z beach: If several threads can access a variable simultaneously, for instance (let ((x ...)) (f (lambda () (incf x))) (loop do (g x))), then you can't really have several versions of x. 2014-09-02T05:33:54Z beach: Here, we don't know what F will do. It can create a thread that calls the anonymous function repeatedly. 2014-09-02T05:34:17Z beach: If we apply SSA to X then we will just get the wrong result. 2014-09-02T05:34:18Z pjb: beach: what do you think of (mapcar 'funcall (let ((x 0)) (flet ((foo () (incf x))) (list #'foo #'foo #'foo)))) 2014-09-02T05:34:25Z Bike: huh, yeah... i guess once you put things in a closure you're kind of boned? 2014-09-02T05:34:50Z beach: Bike: Only if the closure can escape "arbitrarily". There are limited situations where it is possible. 2014-09-02T05:35:06Z beach: Bike: All that analysis is (or will be) done on the MIR notation. 2014-09-02T05:35:06Z pjb: beach: all implementation return (1 2 3), but it seems in no place it's specified that function should return the same closure each time. 2014-09-02T05:35:10Z Bike: is being used as an argument to an unknown function not arbitrary? 2014-09-02T05:35:16Z drmeister: I haven't thought about thread safety at all. 2014-09-02T05:35:57Z beach: pjb: You think much faster than I do. I need more time. 2014-09-02T05:36:11Z Bike: clhs 3.1.4 2014-09-02T05:36:11Z specbot: Closures and Lexical Binding: http://www.lispworks.com/reference/HyperSpec/Body/03_ad.htm 2014-09-02T05:36:18Z pjb: Not faster, before. It was mentionned yesterday :-) 2014-09-02T05:36:28Z Bike: "The result of the above form is a list of ten closures. Each requires only the binding of x. It is the same binding in each case, but the ten closure objects might or might not be identical." 2014-09-02T05:36:32Z beach: drmeister: I would rather think about that right away than having to ditch everything I have done later. 2014-09-02T05:36:34Z Bike: is i guess the important thing? 2014-09-02T05:36:43Z Bike: of course, that's with lambda forms, there might be something else with flet. 2014-09-02T05:37:11Z beach: Bike: About documentation. There is MIR specification in the Cleavir doc. Maybe more in the SICL doc. I don't remember. 2014-09-02T05:37:16Z Bike: so getting (1 2 3) is specified, but (eq #'foo #'foo) wouldn't be 2014-09-02T05:37:47Z Bike: beach: i just have my own toy lisp project and it'd be nice not to reinvent the wheel. and drmeister's samples of llvm-ir are ugly, so i don't wanna use that :p 2014-09-02T05:38:07Z beach: Bike: I see. 2014-09-02T05:38:25Z Bike: well, not invent too many wheels, anyway. maybe just reinvent the axle 2014-09-02T05:39:12Z drmeister: beach: But for single thread there is no problem? 2014-09-02T05:39:36Z beach: drmeister: So I can't just implement SSA transformation as documented in the literature. I have to do it per-variable, and I have to figure out which variables can be candidates. 2014-09-02T05:39:53Z beach: drmeister: Still a problem, unfortunately. 2014-09-02T05:39:58Z drmeister: Why is that? 2014-09-02T05:39:59Z pjb: It is an implementer's choice: "In situations where a closure of a lambda expression over the same set of bindings may be produced more than once, the various resulting closures may or may not be identical, at the discretion of the implementation." 2014-09-02T05:40:00Z hiroakip joined #lisp 2014-09-02T05:40:07Z kristof joined #lisp 2014-09-02T05:40:12Z beach: drmeister: Consider (defun f (x) (setq *fun* x) 2014-09-02T05:40:15Z Bike: yeah. i just mean the bindings are the same, so you'll always get (1 2 3). 2014-09-02T05:40:24Z pt1 joined #lisp 2014-09-02T05:40:26Z pjb: which is the reason I asked an implementer ;-) 2014-09-02T05:41:00Z bdr3552 joined #lisp 2014-09-02T05:41:03Z echo-area quit (Remote host closed the connection) 2014-09-02T05:41:25Z ehu joined #lisp 2014-09-02T05:41:27Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-02T05:41:30Z beach: drmeister: More complete: (let ((x ...)) (f (lambda () (incf x))) (g (lambda () (incf x)))) 2014-09-02T05:42:09Z beach: drmeister: Now if F and G both save the closure to global variables, then the closures can be called later in some arbitrary order. 2014-09-02T05:42:38Z beach: drmeister: You can't allow x to have a single assignment then. It *has* to be shared. 2014-09-02T05:42:54Z bdr3553 quit (Ping timeout: 255 seconds) 2014-09-02T05:43:04Z pjb: You cannot have closures to special variables. 2014-09-02T05:43:18Z Bike: x isn't special here 2014-09-02T05:43:19Z pjb: closures work only on lexical variables. 2014-09-02T05:43:25Z beach: *sigh* 2014-09-02T05:43:50Z jaseemabid joined #lisp 2014-09-02T05:43:51Z Bike: anyway, i'm sure this problem has come up. i mean, everyone loves ssa and downward funargs, right? 2014-09-02T05:43:53Z beach: (defparameter *some-closure*) (defun f (closure) (setf *some-closure* closure)) 2014-09-02T05:44:18Z pjb: Or, /save/; I misread this word. Sorry. 2014-09-02T05:44:32Z kristof: Is there an implementation that converts to SSA? I know SBCL does not. 2014-09-02T05:44:34Z beach: Sorry, hard to keep up. 2014-09-02T05:44:43Z drmeister: Hasn't this stuff been worked out? There are implementations of Common Lisp. 2014-09-02T05:44:49Z beach: kristof: Oh? I think it does. No? 2014-09-02T05:44:52Z malbertife joined #lisp 2014-09-02T05:44:52Z Bike: they don't use SSA 2014-09-02T05:45:01Z beach: Wow. 2014-09-02T05:45:03Z Bike: sbcl doesn't, just something close, i think 2014-09-02T05:45:11Z beach: Interesting. 2014-09-02T05:45:12Z kristof: beach: last I read from Paul Khuong's blog 2014-09-02T05:45:12Z nand1 joined #lisp 2014-09-02T05:45:15Z Bike: but i imagine someone's figured out how to mix downward funargs and ssa 2014-09-02T05:45:25Z Bike: just maybe not in CL. 2014-09-02T05:45:25Z beach: drmeister: And no, I don't think it has been worked out. 2014-09-02T05:45:44Z beach: drmeister: Which is good for me, because it means there are more papers ahead. 2014-09-02T05:45:49Z Bike: good attitud4e 2014-09-02T05:45:52Z pjb: drmeister: they all use the same environment for all the closures created in the same lexical context. 2014-09-02T05:46:04Z kristof: What do the Schemer's do? I would check Chicken and Racket. 2014-09-02T05:46:07Z malbertife quit (Client Quit) 2014-09-02T05:46:43Z drmeister: Other lisps have used CPS and I've been told (but don't understand) that CPS is equivalent to SSA - no? 2014-09-02T05:46:50Z kristof: That is true 2014-09-02T05:47:17Z beach: It is true only if you hide assignments as updates of a first-class variable box. 2014-09-02T05:47:17Z drmeister: So why can't the solution for CPS be translated to SSA? 2014-09-02T05:47:21Z kristof: But some optimization techniques are described in terms of SSA and not CPS, I think 2014-09-02T05:47:46Z Bike: http://wiki.call-cc.org/eggref/4/graph-ssa this does not look like a compiler... 2014-09-02T05:48:05Z beach: Before you say that they are equivalent, you should consider the conditions under which it is true. 2014-09-02T05:48:21Z hiyosi joined #lisp 2014-09-02T05:50:06Z pt1 quit (Remote host closed the connection) 2014-09-02T05:50:07Z slassh joined #lisp 2014-09-02T05:50:09Z drmeister: beach: You mean it is true if you make assignments write to memory rather than create new registers? I'm confused. 2014-09-02T05:51:13Z Harag joined #lisp 2014-09-02T05:51:37Z beach: drmeister: The papers that talk about this equivalence assume that variables that are updated are represented as an object in memory with its own identity. Assignments are then translated into function calls that update the contents of that object. This way, everything is nice and functional, and you don't have to deal with assignments. 2014-09-02T05:52:29Z beach: The lexical variable containing a reference to the updated variable is then only assigned to once. 2014-09-02T05:53:03Z sheilong quit (Quit: Konversation terminated!) 2014-09-02T05:53:08Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-02T05:53:26Z beach: It's a neat trick for a paper or a dissertation, but it doesn't solve the problem for the compiler writer. 2014-09-02T05:54:01Z drmeister: Is the problem deciding what can go in registers and what has to go in memory. 2014-09-02T05:54:10Z drmeister: I'm way out of my depth. 2014-09-02T05:54:44Z mr-foobar joined #lisp 2014-09-02T05:54:45Z drmeister: I better get to bed as well. It's very late here and I'm trying to get more sleep 2014-09-02T05:54:49Z beach: drmeister: To summarize: SSA and CPS are equivalent only when conditions are met that are unacceptable to the compiler writer. 2014-09-02T05:55:08Z beach: drmeister: So for all practical purposes, they are not equivalent as far as I can tell. 2014-09-02T05:55:13Z drmeister: I am dismayed. 2014-09-02T05:55:35Z kristof: drmeister: what problem are you trying to solve? 2014-09-02T05:55:38Z drmeister: So Common Lisp can't currently be compiled to SSA? 2014-09-02T05:55:46Z beach: drmeister: Sure it can. 2014-09-02T05:56:04Z beach: drmeister: You just have to exclude variables that are arbitrarily captured. 2014-09-02T05:56:29Z drmeister: Meaning you have to store variables that are arbitrarily captured in memory? 2014-09-02T05:56:49Z beach: drmeister: Yes. Let's call it the "static runtime environment". 2014-09-02T05:57:00Z beach: drmeister: But that's no problem. 2014-09-02T05:57:11Z beach: It's just that the details have to be worked out. 2014-09-02T05:57:14Z drmeister: I thought it was unacceptable. 2014-09-02T05:57:15Z beach: No reason to panic. 2014-09-02T05:57:30Z beach: Not unacceptable at all. 2014-09-02T05:57:33Z drmeister: I operate in a continuous state of panic. 2014-09-02T05:57:40Z beach: I can tell :) 2014-09-02T05:57:42Z bdr3552 quit (Ping timeout: 245 seconds) 2014-09-02T05:58:08Z drmeister: Of course. 2014-09-02T05:58:28Z przl joined #lisp 2014-09-02T05:59:04Z beach: drmeister: Very few variables are "arbitrarily captured". "Normal" variables can still be SSA-ed. 2014-09-02T05:59:23Z drmeister: Is it easy to tell them apart? 2014-09-02T05:59:41Z beach: drmeister: Let's say "straightforward" rather than "easy" :) 2014-09-02T05:59:50Z beach: I know how to do it on MIR. 2014-09-02T05:59:53Z Bike: it's escape analysis, so, solved problem, if not easy? 2014-09-02T06:00:02Z beach: Exactly. 2014-09-02T06:00:08Z ehu quit (Ping timeout: 260 seconds) 2014-09-02T06:00:08Z hiroakip quit (Ping timeout: 260 seconds) 2014-09-02T06:00:11Z kristof: "SSA is formally equivalent to a well-behaved subset of CPS (excluding non-local control flow, which does not occur when CPS is used as intermediate representation)" 2014-09-02T06:00:15Z sdemarre joined #lisp 2014-09-02T06:00:35Z kristof: Key words: well-behaved subset and non-local control flow. 2014-09-02T06:00:50Z beach: kristof: Indeed. 2014-09-02T06:00:54Z slassh quit (Ping timeout: 255 seconds) 2014-09-02T06:00:56Z beach: Those are some pretty severe conditions. 2014-09-02T06:01:25Z kristof: A good question is: what subset of common lisp is translatable to SSA? 2014-09-02T06:01:35Z bdr3552 joined #lisp 2014-09-02T06:01:40Z kristof: beach: I await the answer at ILC 2015 :) 2014-09-02T06:01:43Z beach: Bike: But it is good to do some more sophisticated analysis, so that when known functions are called with a closure, the behavior of those functions can be taken into account. 2014-09-02T06:01:44Z drmeister: That's what I was hoping to hear. 2014-09-02T06:01:47Z petrutrimbitas joined #lisp 2014-09-02T06:02:03Z petrutrimbitas quit (Client Quit) 2014-09-02T06:02:07Z beach: drmeister: What were you hoping to hear again? 2014-09-02T06:02:17Z drmeister: That everything is going to be ok? 2014-09-02T06:02:22Z beach: Heh! Sure. 2014-09-02T06:02:23Z Bike: beach: yeah. probably that's why sbcl has annotations for "this function sometimes funcalls arguments" and such, i guess 2014-09-02T06:02:47Z beach: Bike: I assume so. SBCL does a pretty good job, so it has to take stuff like this into account. 2014-09-02T06:03:25Z beach: drmeister: Consider: (let ((x ...)) (find-if (lambda (y) (> x y)) ...)) 2014-09-02T06:03:30Z Zhivago: How do you capture variables arbitrarily? Via prog? 2014-09-02T06:03:52Z kristof: Global variables was the context 2014-09-02T06:03:56Z Bike: have you been reading this conversation? 2014-09-02T06:04:04Z beach: Zhivago: (let ((x ...)) (f (lambda () (incf x)))) 2014-09-02T06:04:11Z beach: Zhivago: Where F is unknown. 2014-09-02T06:04:57Z Zhivago: Then it isn't captured -- it's global. 2014-09-02T06:05:31Z Bike: huh? 2014-09-02T06:05:39Z beach: drmeister: In that example, X is captured, but we know what FIND-IF does and we can use that information to do a better job. 2014-09-02T06:05:55Z beach: Bike: he was answering kristof I think. 2014-09-02T06:06:12Z beach: Wow, IRC is not optimal for conversations like this. 2014-09-02T06:06:21Z kristof: :P 2014-09-02T06:06:27Z drmeister: No, it's very slow. 2014-09-02T06:06:35Z pranavrc joined #lisp 2014-09-02T06:06:35Z pranavrc quit (Changing host) 2014-09-02T06:06:35Z pranavrc joined #lisp 2014-09-02T06:06:41Z drmeister: I think I see your point - I need to sleep on it. 2014-09-02T06:06:56Z beach: drmeister: Sleep well. 2014-09-02T06:07:38Z beach: I should get some work done. 2014-09-02T06:07:41Z beach left #lisp 2014-09-02T06:08:25Z urandom__ joined #lisp 2014-09-02T06:09:28Z sdemarre quit (Ping timeout: 260 seconds) 2014-09-02T06:12:09Z kristof quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-09-02T06:18:57Z phadthai quit (Ping timeout: 245 seconds) 2014-09-02T06:20:44Z MoALTz quit (Quit: Leaving) 2014-09-02T06:20:57Z Xlt joined #lisp 2014-09-02T06:21:30Z Xlt is now known as Vlx 2014-09-02T06:21:41Z nipra joined #lisp 2014-09-02T06:24:59Z tadni joined #lisp 2014-09-02T06:25:20Z jaseemabid quit (Ping timeout: 260 seconds) 2014-09-02T06:25:23Z defaultxr quit (Quit: gnight) 2014-09-02T06:34:12Z frkout quit (Ping timeout: 255 seconds) 2014-09-02T06:34:40Z przl quit (Ping timeout: 260 seconds) 2014-09-02T06:35:16Z Tuxedo_ is now known as Tuxedo 2014-09-02T06:35:47Z pt1 joined #lisp 2014-09-02T06:38:16Z mishoo joined #lisp 2014-09-02T06:38:40Z zRecursive quit (Remote host closed the connection) 2014-09-02T06:38:55Z zRecursive joined #lisp 2014-09-02T06:39:13Z nakiya quit 2014-09-02T06:42:18Z TomRS quit (Ping timeout: 255 seconds) 2014-09-02T06:42:45Z phadthai joined #lisp 2014-09-02T06:43:05Z jusss quit (Read error: Connection reset by peer) 2014-09-02T06:45:41Z ggole joined #lisp 2014-09-02T06:49:09Z arenz joined #lisp 2014-09-02T06:49:14Z hiyosi joined #lisp 2014-09-02T06:52:23Z Whitesquall joined #lisp 2014-09-02T06:53:57Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-02T06:57:30Z xificurC joined #lisp 2014-09-02T06:59:24Z frkout joined #lisp 2014-09-02T07:00:23Z edgar-rft joined #lisp 2014-09-02T07:02:25Z ggole quit (Read error: Connection timed out) 2014-09-02T07:08:10Z mvilleneuve joined #lisp 2014-09-02T07:09:01Z ehu joined #lisp 2014-09-02T07:10:45Z jusss joined #lisp 2014-09-02T07:11:08Z przl joined #lisp 2014-09-02T07:11:53Z zRecursive quit (Remote host closed the connection) 2014-09-02T07:14:59Z frkout quit (Remote host closed the connection) 2014-09-02T07:15:26Z frkout joined #lisp 2014-09-02T07:17:22Z Mandus quit (Ping timeout: 240 seconds) 2014-09-02T07:21:33Z p_l quit (Ping timeout: 240 seconds) 2014-09-02T07:21:54Z harish_ quit (Ping timeout: 255 seconds) 2014-09-02T07:23:32Z __prefect quit (Ping timeout: 245 seconds) 2014-09-02T07:25:41Z isoraqathedh quit (Quit: No Ping reply in 180 seconds.) 2014-09-02T07:26:10Z isoraqathedh joined #lisp 2014-09-02T07:27:33Z kcj quit (Read error: Connection reset by peer) 2014-09-02T07:28:02Z davorb joined #lisp 2014-09-02T07:30:19Z `JRG joined #lisp 2014-09-02T07:32:04Z davorb1 quit (Ping timeout: 260 seconds) 2014-09-02T07:33:56Z Zeedox_ joined #lisp 2014-09-02T07:37:11Z `JRG_ joined #lisp 2014-09-02T07:38:09Z echo-area joined #lisp 2014-09-02T07:38:46Z `JRG quit (Ping timeout: 246 seconds) 2014-09-02T07:39:30Z Mandus joined #lisp 2014-09-02T07:39:33Z p_l joined #lisp 2014-09-02T07:40:16Z Cymew joined #lisp 2014-09-02T07:43:34Z `JRG_ is now known as `JRG 2014-09-02T07:44:08Z Beetny joined #lisp 2014-09-02T07:46:12Z przl quit (Ping timeout: 255 seconds) 2014-09-02T07:48:32Z przl joined #lisp 2014-09-02T07:49:48Z ASau quit (Ping timeout: 260 seconds) 2014-09-02T07:50:02Z hiyosi joined #lisp 2014-09-02T07:54:56Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-02T08:01:17Z frkout_ joined #lisp 2014-09-02T08:02:30Z pgomes joined #lisp 2014-09-02T08:02:44Z faheem quit (Quit: Connection closed for inactivity) 2014-09-02T08:04:39Z frkout quit (Ping timeout: 255 seconds) 2014-09-02T08:05:01Z `JRG quit (Ping timeout: 246 seconds) 2014-09-02T08:14:16Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-02T08:16:47Z kristof joined #lisp 2014-09-02T08:17:34Z kristof: It was not clear to me before that there is a useful trick of assigning a lexical closure containing a GO or RETURN-FROM form and then passing that closure to some function at runtime 2014-09-02T08:18:07Z przl quit (Ping timeout: 245 seconds) 2014-09-02T08:18:14Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-02T08:18:16Z kristof: I was trying to achieve the same thing with CATCH and THROW but this is better 2014-09-02T08:19:49Z ^Posterdati^: hi 2014-09-02T08:20:08Z ^Posterdati^: what happened to www.lispeati.com? 2014-09-02T08:20:13Z ^Posterdati^: what happened to www.lisperati.com? 2014-09-02T08:20:24Z arenz quit (Ping timeout: 255 seconds) 2014-09-02T08:23:08Z Vlx quit (Quit: Konversation terminated!) 2014-09-02T08:24:18Z Zhivago: krisof: Be careful of dynamic extent. 2014-09-02T08:24:33Z kristof: Now here's the question: will (BLOCK A (defconstant +LONGJMP-TO-A-WITH-VAL+ (lambda (val) (return-from A val))) (some-fun)) allow me to invoke that constant-function in the definition of some-fun and work the way I want it to? 2014-09-02T08:24:57Z kristof: Zhivago: right, I can't leave the scope of the block or else my return-from will expire. 2014-09-02T08:25:25Z vaporatorius joined #lisp 2014-09-02T08:27:08Z kristof: The defconstant wasn't well thought put. Pretend it's a defvar, and some sucker hasn't dynamically rebound it. 2014-09-02T08:28:10Z AeroNotix: https://github.com/flambard/thnappy/ or https://github.com/brown/snappy ? 2014-09-02T08:29:51Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-09-02T08:30:02Z kristof: AeroNotix: thnappy exports more symbols, so that might be an objective measure of which to use. 2014-09-02T08:30:22Z AeroNotix: kristof: so snappy then :) 2014-09-02T08:30:30Z kristof: Pffft 2014-09-02T08:30:37Z AeroNotix: was jk 2014-09-02T08:30:41Z kristof: AeroNotix: :P 2014-09-02T08:30:44Z AeroNotix: I'll check through them both. 2014-09-02T08:31:34Z harish_ joined #lisp 2014-09-02T08:32:41Z kristof: " (funcall (read-from-string "snappy-test:test-snappy"))" 2014-09-02T08:32:52Z AeroNotix: dang 2014-09-02T08:32:53Z kristof: ...is that normal to do? 2014-09-02T08:33:02Z AeroNotix: kristof: if you smoke crack, I suspect it is. 2014-09-02T08:33:06Z kristof: Lol 2014-09-02T08:33:20Z AeroNotix: where is that? 2014-09-02T08:33:34Z kristof: AeroNotix: the guy defines a test-op for snappy and everything so I'm sure he's not stupid 2014-09-02T08:33:49Z kristof: AeroNotix: asd file for snappy-test 2014-09-02T08:33:55Z kristof: I.e. not thnappy 2014-09-02T08:34:01Z alexey joined #lisp 2014-09-02T08:34:42Z kristof: But thnappy doesn't even have a test suite! Your mileage may vary wildly depending on barometric pressure and tarot card readings. 2014-09-02T08:34:48Z AeroNotix: haha 2014-09-02T08:34:50Z AeroNotix: dang 2014-09-02T08:35:09Z kristof: That just threw me for a loop though 2014-09-02T08:35:22Z kristof: Maybe it was a joke 2014-09-02T08:35:34Z AeroNotix: what does `defsuite' do? 2014-09-02T08:35:43Z kristof: Probably a fiveam thing 2014-09-02T08:36:01Z AeroNotix: #:hu.dwim.stefil 2014-09-02T08:36:03Z kristof: Defines a suite of tests to call when you call the suite. 2014-09-02T08:36:10Z AeroNotix: It uses ^ 2014-09-02T08:36:13Z kristof: Oh, it's stefil then :P 2014-09-02T08:36:56Z kristof: AeroNotix: hey, have you ever read that blog post comparing the major lisp test frameworks? And sabra's blog post on JSON libraries? 2014-09-02T08:37:11Z AeroNotix: kristof: I've read the test framework one 2014-09-02T08:37:50Z jusss joined #lisp 2014-09-02T08:38:23Z kristof: That kind of curation is really helpful when the wiki pages for problem domains are basically just long lists of a) good libraries b) obsolete libraries and c) one-offs that some guy hacked in 20 minutes for one project and slapped onto the wiki just because 2014-09-02T08:38:58Z kristof: Which reminds me: I need to reorganize the concurrency page :o 2014-09-02T08:41:04Z AeroNotix: kristof: the only thing that kind of put me off is that the person writing it was evaluating them for use with Project Euler questions 2014-09-02T08:41:29Z kristof: The test framework one? 2014-09-02T08:41:32Z AeroNotix: yeah 2014-09-02T08:41:34Z kristof: I don't remember that 2014-09-02T08:41:38Z ASau joined #lisp 2014-09-02T08:41:41Z AeroNotix: ISTR 2014-09-02T08:41:50Z kristof: I just remember a flyby of features 2014-09-02T08:44:17Z Harag quit (Quit: Harag) 2014-09-02T08:45:13Z kristof: AeroNotix: wtf, why would you unit-test euler problem functions 2014-09-02T08:48:08Z Whitesquall quit (Ping timeout: 260 seconds) 2014-09-02T08:48:44Z stepnem joined #lisp 2014-09-02T08:49:45Z petrutrimbitas joined #lisp 2014-09-02T08:50:12Z nug700 quit (Ping timeout: 245 seconds) 2014-09-02T08:50:36Z petrutrimbitas quit (Client Quit) 2014-09-02T08:50:54Z hiyosi joined #lisp 2014-09-02T08:52:17Z rszeno joined #lisp 2014-09-02T08:52:21Z luis` is now known as luis 2014-09-02T08:55:30Z hiyosi quit (Ping timeout: 255 seconds) 2014-09-02T08:56:53Z capitaomorte joined #lisp 2014-09-02T08:57:05Z AeroNotix: kristof: I'm not sure, either way it is a good overview 2014-09-02T08:59:53Z rszeno quit (Quit: Leaving.) 2014-09-02T09:03:59Z frkout_ quit (Remote host closed the connection) 2014-09-02T09:04:26Z frkout joined #lisp 2014-09-02T09:10:35Z zmyrgel joined #lisp 2014-09-02T09:17:33Z kristof quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-09-02T09:23:48Z bdr3553 joined #lisp 2014-09-02T09:23:50Z bdr3552 quit (Read error: Connection reset by peer) 2014-09-02T09:24:25Z TomRS joined #lisp 2014-09-02T09:28:21Z zarul quit (Ping timeout: 255 seconds) 2014-09-02T09:30:16Z capitaomorte left #lisp 2014-09-02T09:33:38Z capitaomorte joined #lisp 2014-09-02T09:33:43Z przl joined #lisp 2014-09-02T09:35:09Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-02T09:36:45Z hitecnologys joined #lisp 2014-09-02T09:37:44Z karupa is now known as zz_karupa 2014-09-02T09:41:48Z attila_lendvai joined #lisp 2014-09-02T09:42:10Z alexey quit (Remote host closed the connection) 2014-09-02T09:42:23Z yrk quit (Read error: Connection reset by peer) 2014-09-02T09:45:34Z pgomes joined #lisp 2014-09-02T09:47:57Z ASau quit (Ping timeout: 264 seconds) 2014-09-02T09:48:32Z resttime quit (Quit: resttime) 2014-09-02T09:51:35Z hiyosi joined #lisp 2014-09-02T09:55:21Z Zeedox_ quit (Ping timeout: 255 seconds) 2014-09-02T09:55:32Z ndrei joined #lisp 2014-09-02T09:56:21Z hiyosi quit (Ping timeout: 264 seconds) 2014-09-02T09:59:44Z jtza8 joined #lisp 2014-09-02T10:02:16Z malice quit (Remote host closed the connection) 2014-09-02T10:03:28Z mrottenkolber joined #lisp 2014-09-02T10:03:40Z mrottenkolber left #lisp 2014-09-02T10:04:54Z BitPuffin joined #lisp 2014-09-02T10:06:07Z ndrei quit (Quit: Lost terminal) 2014-09-02T10:12:24Z jchochli_ quit (Remote host closed the connection) 2014-09-02T10:12:49Z jchochli joined #lisp 2014-09-02T10:12:50Z ggole joined #lisp 2014-09-02T10:15:33Z kcj joined #lisp 2014-09-02T10:18:22Z dmiles quit (Read error: Connection reset by peer) 2014-09-02T10:18:28Z dmiles_afk joined #lisp 2014-09-02T10:25:26Z IAm_thor joined #lisp 2014-09-02T10:25:27Z IAm_thor left #lisp 2014-09-02T10:26:22Z gravicappa joined #lisp 2014-09-02T10:27:51Z isoraqathedh quit (Quit: No Ping reply in 180 seconds.) 2014-09-02T10:28:00Z isoraqathedh joined #lisp 2014-09-02T10:28:25Z fikusz joined #lisp 2014-09-02T10:31:20Z ggole quit (Read error: Connection timed out) 2014-09-02T10:32:01Z ggole joined #lisp 2014-09-02T10:32:46Z echo-area quit (Remote host closed the connection) 2014-09-02T10:36:39Z vydd joined #lisp 2014-09-02T10:43:06Z Phreak quit (Quit: No Ping reply in 180 seconds.) 2014-09-02T10:44:23Z EvW joined #lisp 2014-09-02T10:45:25Z _d3f joined #lisp 2014-09-02T10:45:58Z ehu_ joined #lisp 2014-09-02T10:46:14Z petrutrimbitas joined #lisp 2014-09-02T10:46:27Z ehu quit (Ping timeout: 245 seconds) 2014-09-02T10:49:15Z YDJX joined #lisp 2014-09-02T10:51:58Z cross quit (Quit: leaving) 2014-09-02T10:52:28Z hiyosi joined #lisp 2014-09-02T10:52:29Z cross joined #lisp 2014-09-02T10:57:22Z hiyosi quit (Ping timeout: 272 seconds) 2014-09-02T11:01:27Z apitaomortec joined #lisp 2014-09-02T11:03:52Z capitaomorte quit (Ping timeout: 240 seconds) 2014-09-02T11:04:38Z apitaomortec is now known as capitaomorte 2014-09-02T11:04:52Z karswell quit (Remote host closed the connection) 2014-09-02T11:05:31Z karswell` joined #lisp 2014-09-02T11:07:28Z fikusz quit (Quit: Leaving) 2014-09-02T11:11:02Z jtza8 quit (Ping timeout: 245 seconds) 2014-09-02T11:13:49Z fikusz joined #lisp 2014-09-02T11:17:01Z przl quit (Ping timeout: 268 seconds) 2014-09-02T11:18:22Z rvchangue quit (Ping timeout: 240 seconds) 2014-09-02T11:20:56Z TomRS quit (Ping timeout: 276 seconds) 2014-09-02T11:25:14Z hitecnologys: If I have something like ...:components ((:file "foo") (:file "bar" :depends-on ("foo")) (:file "one" :depends-on ("foo" "bar")) (:file :depends-on ("foo" "bar")))... in my ASDF system definition, can I safely remove "foo" from :depends-on section even if "one" and "two" explicitly depend on it? The manual doesn't seem to say anything specific on that part. 2014-09-02T11:28:20Z nipra quit (Quit: Leaving.) 2014-09-02T11:29:12Z davazp joined #lisp 2014-09-02T11:30:49Z rvchangue joined #lisp 2014-09-02T11:33:12Z Longlius quit (Remote host closed the connection) 2014-09-02T11:36:15Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-09-02T11:37:34Z pgomes joined #lisp 2014-09-02T11:39:28Z capitaomorte quit (Remote host closed the connection) 2014-09-02T11:39:37Z capitaomorte joined #lisp 2014-09-02T11:40:08Z capitaomorte quit (Client Quit) 2014-09-02T11:40:35Z Nizumzen joined #lisp 2014-09-02T11:41:13Z Zeedox_ joined #lisp 2014-09-02T11:42:24Z przl joined #lisp 2014-09-02T11:43:17Z typhonic joined #lisp 2014-09-02T11:45:46Z capitaomorte joined #lisp 2014-09-02T11:47:14Z przl quit (Ping timeout: 268 seconds) 2014-09-02T11:48:13Z jtza8 joined #lisp 2014-09-02T11:49:24Z knob joined #lisp 2014-09-02T11:50:03Z theos quit (Read error: Connection reset by peer) 2014-09-02T11:51:13Z theos joined #lisp 2014-09-02T11:53:17Z hiyosi joined #lisp 2014-09-02T11:58:02Z hiyosi quit (Ping timeout: 252 seconds) 2014-09-02T11:59:34Z davazp quit (Ping timeout: 268 seconds) 2014-09-02T12:03:03Z Sgeo_ quit (Read error: Connection reset by peer) 2014-09-02T12:05:10Z pranavrc quit (Read error: Connection reset by peer) 2014-09-02T12:05:16Z pranavrc joined #lisp 2014-09-02T12:05:16Z pranavrc quit (Changing host) 2014-09-02T12:05:16Z pranavrc joined #lisp 2014-09-02T12:13:34Z _schulte_ quit (Quit: leaving) 2014-09-02T12:15:03Z nyef joined #lisp 2014-09-02T12:26:06Z mr-foobar quit (Ping timeout: 255 seconds) 2014-09-02T12:27:10Z mr-foobar joined #lisp 2014-09-02T12:28:20Z kcj quit (Read error: Connection reset by peer) 2014-09-02T12:29:54Z drmeister quit (Remote host closed the connection) 2014-09-02T12:31:15Z Whitesquall joined #lisp 2014-09-02T12:39:53Z bjorkintosh quit (Ping timeout: 240 seconds) 2014-09-02T12:42:29Z yacks quit (Read error: Connection reset by peer) 2014-09-02T12:42:51Z przl joined #lisp 2014-09-02T12:43:22Z alexey joined #lisp 2014-09-02T12:43:40Z paul0 quit (Quit: Saindo) 2014-09-02T12:45:12Z Beetny quit (Ping timeout: 260 seconds) 2014-09-02T12:49:10Z mr-foobar quit (Ping timeout: 260 seconds) 2014-09-02T12:53:39Z joast quit (Quit: Leaving.) 2014-09-02T12:54:02Z hiyosi joined #lisp 2014-09-02T12:58:57Z hiyosi quit (Ping timeout: 255 seconds) 2014-09-02T13:00:23Z mac_ified quit (Ping timeout: 240 seconds) 2014-09-02T13:03:01Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-02T13:06:14Z jtza8 quit (Ping timeout: 276 seconds) 2014-09-02T13:08:05Z Cymew: Can you really have a :file section with a :depends-on but not a file name? That looks odd. 2014-09-02T13:08:11Z mhd joined #lisp 2014-09-02T13:09:24Z easye: Cymew: I've done that for :components sections but not a :file section. 2014-09-02T13:09:45Z kressara joined #lisp 2014-09-02T13:10:08Z kressara: Hey. 2014-09-02T13:10:15Z Cymew: I don't know ASDF (and wonder if anyone but Fare do) but for a :file it looks weird 2014-09-02T13:10:33Z kressara: General Lisp question. 2014-09-02T13:11:18Z easye: Not even Fare *really* understands ASDF. That can be shown be his willingness to rewrite whole chunks of the thing. 2014-09-02T13:12:01Z kressara: How does the parser detect if it has a tail call optimization? 2014-09-02T13:12:02Z kressara: Like... (define foo (lambda (a) (foo (+ a 1)))) 2014-09-02T13:12:16Z kressara: For other languages, you'd have to do [[int foo(a) { a++; foo(a); }]] 2014-09-02T13:12:31Z H4ns: kressara: it is the compiler that detects it. but you're seemingly interested in scheme, so please ask in #scheme 2014-09-02T13:12:44Z thierrygar joined #lisp 2014-09-02T13:12:48Z H4ns: kressara: this channel is about common lisp. tail call optimiziation is optional in cl. 2014-09-02T13:12:50Z easye: kressara: Depends on the "parser" implementation. But CL isn't required t ooptimize/detect tail calls. 2014-09-02T13:12:57Z kressara: I se. 2014-09-02T13:13:08Z kressara: Okay, thanks. 2014-09-02T13:14:31Z easye waves to H4ns. 2014-09-02T13:14:38Z H4ns: easye: hi! 2014-09-02T13:14:49Z easye: Back in Berlin? 2014-09-02T13:15:25Z H4ns: easye: sure, since 2 weeks already. 2014-09-02T13:15:39Z easye: Good. Stoopid Florida. 2014-09-02T13:16:13Z H4ns: easye: hah. my next trip there is queued for end of this month already :) 2014-09-02T13:16:28Z H4ns: easye: but i'm kind of enjoying it anyway 2014-09-02T13:16:42Z easye: Man. I'm lucky that "my Americans" are cheap enough to *not* want me to travel. 2014-09-02T13:16:57Z przl quit (Ping timeout: 255 seconds) 2014-09-02T13:17:03Z easye: But if you like the change of scenery. It's gotta be better than Berlin in winter. 2014-09-02T13:17:10Z joast joined #lisp 2014-09-02T13:17:18Z fortitude joined #lisp 2014-09-02T13:17:48Z H4ns: easye: i know how to enjoy myself there. basically by getting up very very early :) 2014-09-02T13:17:58Z mncoder joined #lisp 2014-09-02T13:18:39Z easye: EDT certainly has the advantage of making CEST slackers _look_ productive. 2014-09-02T13:19:13Z easye: Anyways, back to CL topics. 2014-09-02T13:19:23Z easye prods H4ns about the mailing list archives. 2014-09-02T13:19:35Z kressara: Erm, is it okay to ask somewhat subjective questions? 2014-09-02T13:19:47Z H4ns: kressara: depends. 2014-09-02T13:19:48Z easye: kressara: As long as they are about CL, mostly. 2014-09-02T13:21:45Z kressara: easye: Not only about CL, but CL is part of it. 2014-09-02T13:21:56Z H4ns: the suspense is killing me. 2014-09-02T13:22:11Z H4ns: kressara: it is okay not to be annoying. ask your question already. 2014-09-02T13:22:30Z easye: We promise that H4ns will very quickly tell you whether yiu are off-topic. 2014-09-02T13:22:49Z kressara: Well, basically, I want to know where CL is more appropriate and where Scheme is more appropriate. 2014-09-02T13:22:59Z H4ns rolls eyes 2014-09-02T13:23:15Z easye: Doesn't look good. 2014-09-02T13:23:17Z Krystof rolls them back 2014-09-02T13:23:25Z Xach: If you like CL, use it. If you like Scheme, us it. If you like both, use both -- if you really like both, you will know which you prefer for a given task. 2014-09-02T13:23:34Z H4ns: kressara: scheme is more appropriate in #scheme. cl is more appropriate in #lisp 2014-09-02T13:23:46Z easye: Scheme: when you write all your own stuff anyways; CL: when you want to stand on the shoulders of giants. 2014-09-02T13:23:48Z Xach: Many people here like CL more and use it for anything. 2014-09-02T13:23:57Z kressara: easye: Yeah. That's why I decided to ask first. 2014-09-02T13:23:58Z Krystof: any sufficiently large program ends up being mostly written in Make, anyway 2014-09-02T13:23:59Z kressara: Xach: I see. So they're both designed to be GPL? 2014-09-02T13:23:59Z kressara: to be a GPL* 2014-09-02T13:24:07Z easye: Krystof: Naw! 2014-09-02T13:24:25Z easye: kressara: GPL is an orthogonal, "non-functional" concern. 2014-09-02T13:24:49Z H4ns: easye: "general programming language" 2014-09-02T13:24:50Z jtza8 joined #lisp 2014-09-02T13:24:58Z Xach: kressara: GPL as local jargon usually means the GNU GPL. 2014-09-02T13:25:04Z easye: H4ns: Oops. 2014-09-02T13:25:05Z yrk joined #lisp 2014-09-02T13:25:11Z H4ns: kressara: it is also okay to do some research using the web before asking too broad questions. 2014-09-02T13:25:28Z yrk quit (Changing host) 2014-09-02T13:25:28Z yrk joined #lisp 2014-09-02T13:25:40Z Xach: kressara: cl specifies a general-purpose programming language. scheme implementations often implement a general-purpose programming language. there are many toy schemes but few toys CLs. 2014-09-02T13:26:12Z Xach: lisp500 springs to mind, but not many others. maybe xcl? but that was not exactly a toy. 2014-09-02T13:26:44Z easye: XCL had most of the guts of ABCL (i.e. the Lisp impementation) 2014-09-02T13:26:49Z H4ns: some schemes are also design for specific purposes (i.e. they are extension languages) 2014-09-02T13:26:56Z easye: So, it wasn't so "toyish". 2014-09-02T13:27:02Z easye: "isn't" 2014-09-02T13:27:39Z przl joined #lisp 2014-09-02T13:28:27Z eudoxia joined #lisp 2014-09-02T13:28:44Z kressara quit (Ping timeout: 272 seconds) 2014-09-02T13:28:47Z Xach: I suppose the js repl one was sort-of a toy cl 2014-09-02T13:28:55Z dmiles_afk: i am about to implemnt CL in a certain programing language (i will keep secret!) I have bene looking for the largest rotio of lisp to non-lisp cod ei can find that can pass the ansi-tests 2014-09-02T13:29:20Z easye: Xach: yep. Although it had a lot of people helping out (Nikodemus comes to mind). 2014-09-02T13:29:54Z dmiles_afk: largest ratio or #R(?lisp ?nonlisp) code .. wanting the maximal lisp code 2014-09-02T13:30:10Z dmiles_afk: XCL is proof it can be done fairly small 2014-09-02T13:30:26Z wasamasa: dmiles_afk: are we allowed to guess what secret language it is? 2014-09-02T13:30:47Z dmiles_afk: its no fun if you guess it 2014-09-02T13:31:24Z nihilatus joined #lisp 2014-09-02T13:31:35Z dmiles_afk: ABCL has a stage that tons of crazy code needed to support it for the moments the lisp compiler didnt work 2014-09-02T13:31:47Z dmiles_afk: well to get the library up and coding code 2014-09-02T13:32:06Z dmiles_afk: that it replaced part by part as the libraries loaded 2014-09-02T13:32:13Z easye: dmiles_afk: If you are thinking of a more portable compiler for ABCL and descendents, I'm all ears. 2014-09-02T13:34:09Z dmiles_afk: well i am using ABCL as an example here.. it has a "booting" process that gets it into full library mode 2014-09-02T13:34:38Z dmiles_afk: once its all loaded up .. barely any java code is needed 2014-09-02T13:34:43Z easye: And CLOS has a bootstrapping phase on top of that. 2014-09-02T13:34:55Z easye: Yep. That much we got right. 2014-09-02T13:35:20Z dmiles_afk: yet to get loaded up .. lots of java code that pretends it's lisp at first has to exist 2014-09-02T13:35:56Z dlowe: sbcl is about 10% C 2014-09-02T13:35:59Z dmiles_afk: (not complaining.. but just pointing out how much work an implmentation is) 2014-09-02T13:35:59Z easye: Right. Because that is the artifact of its implementation from within a generalization of Emacs for Java ("J" the editor) 2014-09-02T13:36:33Z CrazyEddy joined #lisp 2014-09-02T13:36:37Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-02T13:37:07Z easye: J: ABCL :: Emacs : Elisp 2014-09-02T13:37:10Z mhd joined #lisp 2014-09-02T13:37:12Z dmiles_afk: so for example ABCL when its booted up might be 5% to 95% .. but to get booted up it need 50% to 50% 2014-09-02T13:37:38Z dlowe: 9.34% C, actually 2014-09-02T13:37:42Z dlowe: (by line count) 2014-09-02T13:37:44Z pranavrc quit 2014-09-02T13:37:51Z loke_ joined #lisp 2014-09-02T13:37:53Z AeroNotix: dlowe: so about 10% then 2014-09-02T13:38:14Z dmiles_afk: i havent looked at XCL.. but i think it is one the same track 2014-09-02T13:38:27Z dmiles_afk: (lately that is) 2014-09-02T13:38:36Z Jameser` joined #lisp 2014-09-02T13:38:47Z easye: I don't think much has happened with XCL is the last couple years. 2014-09-02T13:38:57Z Krystof: no :-( 2014-09-02T13:42:05Z dmiles_afk: easye: i am so happy the CLOS is going.. very good work 2014-09-02T13:42:47Z easye: Three cheers for Rudi. 2014-09-02T13:42:58Z easye owes that man a lot of whatever he's drinking. 2014-09-02T13:46:09Z Xach is reminded to ping roger corman about corman lisp sources 2014-09-02T13:46:51Z Shinmera joined #lisp 2014-09-02T13:47:40Z arpnk joined #lisp 2014-09-02T13:48:21Z arpunk quit (Ping timeout: 272 seconds) 2014-09-02T13:49:16Z dmiles_afk: which lisp (ECL, SBCL, ABCL, or CLISP) is the most "toy" before it gets to the .lisp files? 2014-09-02T13:49:53Z dmiles_afk already thinks ABCL is the least toy btw (that is a complemnt btw) 2014-09-02T13:49:57Z drmeister joined #lisp 2014-09-02T13:50:07Z nyef: What do you mean by "toy" in this context? 2014-09-02T13:50:22Z tajjada joined #lisp 2014-09-02T13:50:27Z dmiles_afk: well would be the simplest to implement 2014-09-02T13:50:28Z H4ns: easye: looks interesting 2014-09-02T13:50:56Z dmiles_afk: say in SOID 2014-09-02T13:50:58Z Denommus` joined #lisp 2014-09-02T13:51:13Z dmiles_afk: erm SIOD 2014-09-02T13:51:36Z Jameser` quit (Remote host closed the connection) 2014-09-02T13:51:55Z dmiles_afk: (the scheme in on day thing is C .. lets say i had to adapt it to be able to handle the lisp libraries of on of those said systems) 2014-09-02T13:52:05Z nyef: Ah. 2014-09-02T13:52:34Z nyef: I don't know that that's a reasonable thing to even attempt, really. 2014-09-02T13:53:14Z hiyosi joined #lisp 2014-09-02T13:54:21Z dmiles_afk: i'd imagine even stripping away all of CLISP .lisp files.. then making it use SBCL's is jsut as hard and yet should be dead simple? 2014-09-02T13:54:23Z nyef: AIUI, both ECL and CLISP contain fairly substantial interpreters written in C (or some extension on C), SBCL contains very little other than memory and interrupt management in its non-.lisp parts but requires a suitable host lisp to build, and I know basically nothing about ABCL. 2014-09-02T13:54:28Z easye: H4ns: Help me shape it with feedback if you still have a need. 2014-09-02T13:54:42Z easye: I'd relicense as BSD if that bothers you. 2014-09-02T13:54:47Z nyef: Why should it be dead simple? 2014-09-02T13:54:48Z dmiles_afk: (a should be simple but not at all) 2014-09-02T13:55:25Z nyef: You wouldn't even be able to do that between SBCL and CMUCL. 2014-09-02T13:55:45Z Denommus` quit (Ping timeout: 264 seconds) 2014-09-02T13:56:43Z dmiles_afk: OK, this was the sanity check I needed :) But now it give me hope when you say "SBCL contains very little other than memory and interrupt management in its non-.lisp parts" 2014-09-02T13:57:54Z H4ns: easye: i do - i'll try to work in that area next week or so. 2014-09-02T13:58:40Z easye: Np. I've got a lot of hours to bill anyways. 2014-09-02T13:58:56Z easye: (the good kind of problem) 2014-09-02T14:00:53Z redline6561_ is now known as redline6561 2014-09-02T14:01:56Z Aranshada|W__ is now known as Aranshada|W 2014-09-02T14:02:11Z nyef: dmiles_afk: As you start digging into things at this level, you're going to find an intimate relationship between a compiler, the lisp "library" as it were, and the support code. 2014-09-02T14:03:06Z easye is always reminded of Escher's "Hands" image. 2014-09-02T14:04:01Z Denommus` joined #lisp 2014-09-02T14:05:40Z zarul joined #lisp 2014-09-02T14:05:40Z zarul quit (Changing host) 2014-09-02T14:05:40Z zarul joined #lisp 2014-09-02T14:05:56Z TDog quit (Ping timeout: 260 seconds) 2014-09-02T14:07:09Z Denommus`` joined #lisp 2014-09-02T14:08:34Z Denommus` quit (Ping timeout: 252 seconds) 2014-09-02T14:09:59Z Denommus` joined #lisp 2014-09-02T14:10:19Z splittist_: dmiles_afk: you could always try working backwards from SICL and Closette and MIT Loop to get a feeling for which dependency circularities are particularly annoying. 2014-09-02T14:11:30Z Denommus`` quit (Ping timeout: 252 seconds) 2014-09-02T14:12:14Z petrutrimbitas joined #lisp 2014-09-02T14:13:40Z dmiles_afk: nyef, yeah .. actually that th part that would be too much. the fact as CLISP is hosting the build.. it is making non lisp code for SBCL ? 2014-09-02T14:14:03Z Denommus`` joined #lisp 2014-09-02T14:14:22Z Denommus` quit (Ping timeout: 245 seconds) 2014-09-02T14:15:22Z nyef: dmiles_afk: All lisp code in SBCL is processed by its compiler. The bootstrap process involves compiling the compiler on another lisp and using it to compile all of the files (including the compiler again) required for a minimal system (and then some, actually), and a further program to bind the fasls into an embryonic core file. 2014-09-02T14:16:52Z Denommus` joined #lisp 2014-09-02T14:17:22Z splittist_: dmiles_afk: if you like stories involving Earth, Earth-Prime and time-travel paradoxes you'll love the sbcl build process 2014-09-02T14:17:24Z nyef: The non-lisp code is either processed using part of the compiler in a very specific configuration OR is processed using gcc and binutils. 2014-09-02T14:17:35Z dmiles_afk: nyef: i've built sbcl 3 times .. and that indeed was the experience.. it's pretty awe-inspiring 2014-09-02T14:17:54Z nyef: splittist_: Hah! And SBCL's process is the *SANE* version. 2014-09-02T14:18:17Z dmiles_afk: oops meant to say that to splittist_ 2014-09-02T14:18:26Z Harag joined #lisp 2014-09-02T14:18:37Z Denommus`` quit (Ping timeout: 260 seconds) 2014-09-02T14:19:19Z oleo joined #lisp 2014-09-02T14:20:06Z Zhivago: They all stem from non-determinism. 2014-09-02T14:20:22Z Zhivago: Rather, acausality. 2014-09-02T14:20:36Z Zhivago: If you can remove that, then they stop being interesting or paradoxical. 2014-09-02T14:20:57Z Zhivago: Just like FLT. 2014-09-02T14:21:05Z Zhivago: er, FTL, gah. 2014-09-02T14:21:15Z dlowe: nyef: wait, the non-lisp code can be processed by the sbcl compiler? 2014-09-02T14:21:24Z kristof joined #lisp 2014-09-02T14:21:34Z Denommus` quit (Ping timeout: 260 seconds) 2014-09-02T14:21:34Z alexey quit (Remote host closed the connection) 2014-09-02T14:21:44Z dlowe: is there, like, a basic C to IR compiler in there? 2014-09-02T14:21:46Z nyef: dlowe: Anything in src/assembly/target/ is largely non-lisp. 2014-09-02T14:22:01Z dlowe: oh, ok. 2014-09-02T14:22:03Z nyef: dlowe: Anything in src/runtime/ is non-lisp and processed by the gcc / binutils toolchain. 2014-09-02T14:22:51Z dlowe: that'd be pretty neat if sbcl had a straight-up C compiler to use for compiling its own runtime. 2014-09-02T14:23:31Z dlowe: impractical, maybe, but neat 2014-09-02T14:24:01Z eudoxia: maybe a tiny CL interpreter written in C to bootstrap the compiler 2014-09-02T14:24:08Z dmiles_afk: i think when i build it once i used a pre-prepaired embrio on windows 2014-09-02T14:24:08Z Xach: lisp9000 2014-09-02T14:24:11Z eudoxia: then again that's not gonna end up being very "tiny" ;) 2014-09-02T14:24:34Z eudoxia: Xach: lisp>9000 2014-09-02T14:25:47Z dmiles_afk: that embrio on windows was the binary that built the real binrary 2014-09-02T14:26:59Z dmiles_afk: nyef probably remembers that time period though i cant remeber if it was 2007 or ealier 2014-09-02T14:27:00Z badkins joined #lisp 2014-09-02T14:27:46Z dmiles_afk: (i think it was only there for conveinence .. but would been requored) 2014-09-02T14:28:40Z dmiles_afk: (would not been required.. maybe it was left from a previous try) 2014-09-02T14:29:06Z marsbot is now known as marsam 2014-09-02T14:29:11Z yacks joined #lisp 2014-09-02T14:31:38Z mncoder quit (Quit: mncoder) 2014-09-02T14:31:39Z splittist_: Wasn't BBN Butterfly Common Lisp built on BBN Butterfly Scheme? 2014-09-02T14:33:09Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-02T14:34:17Z petrutrimbitas joined #lisp 2014-09-02T14:36:02Z pt1 quit (Ping timeout: 245 seconds) 2014-09-02T14:36:26Z dmiles_afk: splittist_: yup! and that looks pretty doiable.. at least providing enough scheme support 2014-09-02T14:36:52Z Cymew quit (Ping timeout: 245 seconds) 2014-09-02T14:37:04Z alexey joined #lisp 2014-09-02T14:37:36Z Denommus` joined #lisp 2014-09-02T14:37:50Z hitecnologys: Cymew: sorry, I was a little bit AFK. Well, it's a typo. "two" was supposed to be there. Apology, I didn't notice it at all. 2014-09-02T14:38:42Z splittist_: dmiles_afk: Racket is supposed to be the super-scheme; surely a CL implementation (a pithy the Common Larceny name is taken) would be a matter of a few days... 2014-09-02T14:38:58Z splittist_: s/pithy/pity/ 2014-09-02T14:39:15Z kristof: A CL implementation in Scheme? 2014-09-02T14:39:45Z kristof: I'd rather use PseudoScheme, which is the other way around. 2014-09-02T14:40:04Z Xach could not get pseudoscheme to build 2014-09-02T14:40:14Z Xach did not try for many hours though 2014-09-02T14:40:50Z kristof: Xach: I noticed you had a branch open in your github account, I was wondering what the results of that had been :P 2014-09-02T14:41:14Z Xach: I asked jar if I could do that, and he said ok. Then I did not get it to work quickly and haven't had time to revisit. 2014-09-02T14:41:33Z kristof: Xach: What about your native-syscalls in CMUCL/SBCL stuff? Did any of that ever get merged with the main projects? 2014-09-02T14:41:52Z Denommus` quit (Ping timeout: 245 seconds) 2014-09-02T14:42:03Z Rotacidni joined #lisp 2014-09-02T14:42:27Z Xach: kristof: No, nor did I expect/intend for that to happen. I suspect since doug crosher wrote it it might be present in Scieneer, though. 2014-09-02T14:42:32Z Denommus` joined #lisp 2014-09-02T14:42:53Z kristof: Xach: With some more polish and lots of testing, is it a good idea? 2014-09-02T14:43:27Z asedeno joined #lisp 2014-09-02T14:43:31Z dmiles_afk: splittist_: hah 2014-09-02T14:44:12Z Xach: kristof: maybe? i'm not sure. maybe it would be more pain to maintain than benefit to use. 2014-09-02T14:46:18Z Harag quit (Ping timeout: 260 seconds) 2014-09-02T14:46:28Z nyef: CMUCL used to (might still) have direct syscall support. SBCL doesn't, at least partly because it was a maintenance issue. 2014-09-02T14:47:34Z bambams_ joined #lisp 2014-09-02T14:47:45Z k-stz joined #lisp 2014-09-02T14:48:25Z GuilOooo joined #lisp 2014-09-02T14:50:58Z Denommus` quit (Ping timeout: 260 seconds) 2014-09-02T14:52:17Z przl quit (Ping timeout: 245 seconds) 2014-09-02T14:52:46Z nell joined #lisp 2014-09-02T14:53:18Z normanrichards joined #lisp 2014-09-02T14:53:51Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-02T14:56:39Z normanri_ joined #lisp 2014-09-02T14:58:27Z Denommus`` joined #lisp 2014-09-02T14:58:42Z normanrichards quit (Ping timeout: 246 seconds) 2014-09-02T15:00:44Z przl joined #lisp 2014-09-02T15:00:55Z Denommus` joined #lisp 2014-09-02T15:02:39Z viaken joined #lisp 2014-09-02T15:03:06Z Denommus`` quit (Ping timeout: 272 seconds) 2014-09-02T15:05:50Z Denommus` quit (Ping timeout: 276 seconds) 2014-09-02T15:06:23Z bdr3552 joined #lisp 2014-09-02T15:06:41Z kristof: I can see maintenance being an issue. 2014-09-02T15:07:13Z kristof: Same with SBCL abi compatibility. 2014-09-02T15:07:42Z nyef: Now, for a "bare lisp on linux kernel" hack, there's less of a maintenance issue and more of a "wait, we got rid of all the non-lisp libraries and now we're dead in the water" issue. 2014-09-02T15:08:12Z kristof: Wait, what does that mean? I'm lost. 2014-09-02T15:08:17Z H4ns: "we can write everything in lisp, and it will be so much quicker because lisp is so much more productive!1" 2014-09-02T15:08:31Z Xach: kristof: it doesn't play nice with foreign code 2014-09-02T15:08:31Z kristof: You mean replace userland with Lisp? ._. 2014-09-02T15:08:46Z nyef: kristof: Yes. It's been proposed several times before. 2014-09-02T15:08:56Z kristof: By who? :p 2014-09-02T15:09:03Z kristof: I happen to like systemd. 2014-09-02T15:09:04Z Xach: oh, that. i don't care anything about that. 2014-09-02T15:09:05Z Shinmera: Lunatics! 2014-09-02T15:09:05Z H4ns: kristof: here! 2014-09-02T15:09:09Z bdr3553 quit (Ping timeout: 240 seconds) 2014-09-02T15:09:21Z Xach: i just wanted something else besides sb-bsd-sockets, which drives me crazy whenever i use it. 2014-09-02T15:09:32Z Xach: it feels very much like perl to me. 2014-09-02T15:09:47Z kristof: Xach: usocket leaves you wanting? 2014-09-02T15:10:18Z Shinmera: kristof: I'm guessing he means for quicklisp, so he can't just require usocket 2014-09-02T15:10:25Z nicdev joined #lisp 2014-09-02T15:10:30Z kristof: Ah right 2014-09-02T15:10:31Z Xach: No, I don't mean for quicklisp, this was for personal use. Predates usocket, I think. 2014-09-02T15:10:39Z kristof: Gotcha 2014-09-02T15:10:51Z Xach: I wound up writing my own stuff with pinned arrays and alien functions, I think. 2014-09-02T15:11:19Z Shinmera: Xach: Anyway, I hope my Tumblr library won't drive you crazy. 2014-09-02T15:11:24Z kristof: When kdbus comes out, someone is going to have to write implementation support for it. At least I think it'll require implementation support 2014-09-02T15:11:25Z Xach: makes me very sad that ecl copied sb-bsd-sockets wholesale, down to the name. 2014-09-02T15:11:38Z Xach: Shinmera: Do you know if the twitter slug can be edited or viewed via the API? 2014-09-02T15:12:03Z Shinmera: Xach: You can provide a tweet text to use when you create a post, but beyond that I have not found anything. 2014-09-02T15:12:07Z Xach: It didn't seem to, from the docs, but I wondered if it was just thrown into the results anyway. 2014-09-02T15:12:19Z Xach: Shinmera: good to know, thanks. 2014-09-02T15:12:21Z shka joined #lisp 2014-09-02T15:12:27Z shka: ave tux! 2014-09-02T15:12:36Z Shinmera: I'm pretty sure I've mapped out all the fields now, even those that are unspecified 2014-09-02T15:12:48Z Shinmera: but you can always use the lli API calls to have a look at the bare results yourself 2014-09-02T15:12:52Z pecg joined #lisp 2014-09-02T15:13:13Z Xach: Thanks, I'll give that a try. 2014-09-02T15:14:19Z xificurC quit (Quit: WeeChat 0.4.3) 2014-09-02T15:15:02Z Shinmera: There's also a few things that I have not found in the API at all, such as replying to posts or writing asks to somebody 2014-09-02T15:15:24Z Shinmera: I'll have to investigate how the webpages achieve that and maybe I can integrate it somehow, but I doubt it. 2014-09-02T15:19:40Z dlowe quit (Quit: ZNC - http://znc.sourceforge.net) 2014-09-02T15:20:39Z hitecnologys quit (Quit: hitecnologys) 2014-09-02T15:20:41Z housel joined #lisp 2014-09-02T15:21:47Z innertracks joined #lisp 2014-09-02T15:21:59Z hitecnologys joined #lisp 2014-09-02T15:22:42Z wheelsucker joined #lisp 2014-09-02T15:22:59Z kobain joined #lisp 2014-09-02T15:24:25Z marsam is now known as marsbot 2014-09-02T15:24:34Z vaporatorius quit (Quit: Leaving) 2014-09-02T15:25:19Z bambams_ quit (Ping timeout: 246 seconds) 2014-09-02T15:27:32Z Karl_Dscc joined #lisp 2014-09-02T15:28:35Z davorb1 joined #lisp 2014-09-02T15:28:38Z YDJX left #lisp 2014-09-02T15:28:41Z t4nk934 joined #lisp 2014-09-02T15:29:04Z normanri_ quit (Ping timeout: 272 seconds) 2014-09-02T15:32:44Z davorb quit (Ping timeout: 260 seconds) 2014-09-02T15:34:13Z alexey quit (Read error: Connection reset by peer) 2014-09-02T15:34:34Z alexey joined #lisp 2014-09-02T15:34:54Z hitecnologys quit (Quit: hitecnologys) 2014-09-02T15:35:09Z drmeister: The CLHS doesn't say that in top level forms MACROLET definitions shadow COMPILER-MACRO definitions with the same name. Should it? 2014-09-02T15:35:35Z hitecnologys joined #lisp 2014-09-02T15:36:29Z urandom__ quit (Quit: Konversation terminated!) 2014-09-02T15:37:53Z nihilatus quit (Quit: Connection closed for inactivity) 2014-09-02T15:39:20Z shka: drmeister: i don't know :( 2014-09-02T15:39:30Z gravicappa quit (Remote host closed the connection) 2014-09-02T15:39:52Z shka: pjb: hey 2014-09-02T15:40:03Z shka: can you try to answer drmeister? 2014-09-02T15:40:22Z Bike: drmeister: i'd say a macrolet macro form shouldn't be compiler-macroexpanded, yeah. 2014-09-02T15:41:03Z nyef: drmeister: Where are you looking that implies that it might not? 2014-09-02T15:43:11Z Bike: i think he's just saying that it doesn't say it doesn't. 2014-09-02T15:44:12Z dmiles_afk: well my start of the CL interp :) 2014-09-02T15:44:16Z dmiles_afk: http://pastebin.com/K2eKB1nk 2014-09-02T15:44:21Z Xach: AeroNotix: fyi, people can't clone a github repo with git@github.com unless they are the owner or are otherwise granted special access 2014-09-02T15:45:38Z loke_: Who is currently maintaining Hunchentoot? 2014-09-02T15:45:57Z nydel quit (Remote host closed the connection) 2014-09-02T15:47:32Z mr-foobar joined #lisp 2014-09-02T15:48:24Z yacks quit (Ping timeout: 246 seconds) 2014-09-02T15:48:58Z t4nk934 quit (Quit: Page closed) 2014-09-02T15:51:50Z drmeister: minion clhs 3.2.3.1 2014-09-02T15:52:12Z Bike: skip the "minion" part. 2014-09-02T15:52:17Z drmeister: clhs 3.2.3.1 2014-09-02T15:52:17Z specbot: Processing of Top Level Forms: http://www.lispworks.com/reference/HyperSpec/Body/03_bca.htm 2014-09-02T15:52:20Z yacks joined #lisp 2014-09-02T15:52:22Z drmeister: Thanks. 2014-09-02T15:52:44Z drmeister: The first point doesn't mention macrolet. 2014-09-02T15:53:10Z attila_lendvai quit (Quit: Leaving.) 2014-09-02T15:53:57Z Bike: why would it? 2014-09-02T15:56:26Z kristof quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-09-02T16:00:29Z drmeister: If the form is in a MACROLET lexical environment that defines a lexical macro with the same name as a compiler macro then there is a choice of which macro shadows which. 2014-09-02T16:00:30Z kobain quit (Ping timeout: 260 seconds) 2014-09-02T16:00:36Z IAm_thor joined #lisp 2014-09-02T16:00:39Z IAm_thor left #lisp 2014-09-02T16:00:48Z drmeister: The consistent thing to do would be to have the macrolet definition shadow the compiler macro. 2014-09-02T16:00:58Z marsbot is now known as marsam 2014-09-02T16:01:07Z TDog joined #lisp 2014-09-02T16:01:55Z drmeister: But it's not explicitly stated - that makes me worry that I misunderstood something or the behavior may just be implied from how compiler macros are shadowed by flet/labels/macrolet definitions in non-top level forms. 2014-09-02T16:02:20Z LiamH joined #lisp 2014-09-02T16:03:07Z Bike: well, definitely t he right thing is for the macrolet to disable the compiler macro. 2014-09-02T16:03:14Z Bike: don't worry too much. 2014-09-02T16:04:39Z nyef: Arguably, define-compiler-macro sets or modifies an EXISTING function binding, while MACROLET establishes a NEW function binding. 2014-09-02T16:05:00Z nyef: The REAL tricky case is what to do when you have a D-C-M inside a MACROLET for the same name. d-: 2014-09-02T16:05:24Z hlavaty left #lisp 2014-09-02T16:05:32Z hlavaty joined #lisp 2014-09-02T16:05:52Z Uber-Ich joined #lisp 2014-09-02T16:06:00Z cy joined #lisp 2014-09-02T16:06:20Z Bike: it's not like anyone uses compiler macros anyway. iirc ccl and sbcl have different shadowing behavior and nobody's noticed. 2014-09-02T16:07:17Z slyrus quit (Ping timeout: 245 seconds) 2014-09-02T16:08:16Z eudoxia: now i'm curious. what do compiler macros do? 2014-09-02T16:08:17Z zacharias quit (Ping timeout: 260 seconds) 2014-09-02T16:08:59Z oGMo: erm plenty of people use compiler macros heh 2014-09-02T16:09:04Z Shinmera: yeah 2014-09-02T16:09:09Z Shinmera: CL-PPCRE f.e. makes heavy use of them 2014-09-02T16:09:36Z Xach: eudoxia: they receive the entire form of a function or macro call and can return a new form (or the original form, if they don't want to do anything) 2014-09-02T16:10:12Z Shinmera: eudoxia: It's handy to tune things if you can statically analyse the function arguments 2014-09-02T16:10:14Z oGMo: yeah you can think of them as custom inlining 2014-09-02T16:10:35Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-02T16:10:42Z Shinmera: e.g. looking at strings and compiling them to a more convenient format at compile time, like what PPCRE does. 2014-09-02T16:11:04Z eudoxia: hm i think i get it from the examples in the CLHS 2014-09-02T16:11:38Z nyef: The problem is that compiler macros are of spectacularly limited usefulness without something like the CLtL2 environment introspection stuff. 2014-09-02T16:12:18Z oGMo: nyef: sadly, and that's one of my top gripes about CL really 2014-09-02T16:12:35Z Bike: indeed. not even constant-form-value to facilitate the sort of thing ppcre does. 2014-09-02T16:12:37Z elderK joined #lisp 2014-09-02T16:12:43Z rpg joined #lisp 2014-09-02T16:12:44Z nyef: That... when you want to do something tricky with compile-time optimizations, it turns out to be compiler-dependent? 2014-09-02T16:13:16Z Bike: well, even cltl2 introspection would let you do some nice things. reading type annotations you put in yourself and such. 2014-09-02T16:13:25Z wasamasa: cltl2? 2014-09-02T16:13:37Z Bike: the pre-clhs "common lisp" is thing. 2014-09-02T16:13:39Z Bike: ish* 2014-09-02T16:13:51Z Bike: Common Lisp: The Language, by Guy Steele i think 2014-09-02T16:14:12Z oGMo: nyef: that it generally is impossible for a certain class of optimization .. i look at it as being such a specific complaint it says something pretty positive about the language otherwise ;) 2014-09-02T16:14:14Z nyef: No, that'd be CLtL. CLtL2 is the second edition of that. 2014-09-02T16:19:51Z sfa quit (Quit: leaving) 2014-09-02T16:19:53Z yati joined #lisp 2014-09-02T16:20:00Z sfa joined #lisp 2014-09-02T16:20:46Z AeroNotix: Xach: ok 2014-09-02T16:20:49Z hitecnologys quit (Quit: hitecnologys) 2014-09-02T16:21:19Z AeroNotix: Xach: where do you want me to update something? 2014-09-02T16:21:31Z mood: AeroNotix: The CQLCL README 2014-09-02T16:21:44Z AeroNotix: mood: oh ok 2014-09-02T16:27:38Z Xach was excited about a project named cl-sandbox from someone on github, but it turned out to be the sense of a "personal playground" than a sandbox like i was hoping. 2014-09-02T16:27:52Z eudoxia: hah 2014-09-02T16:27:53Z knob quit (Quit: Leaving) 2014-09-02T16:28:24Z joneshf quit (Remote host closed the connection) 2014-09-02T16:28:48Z joneshf joined #lisp 2014-09-02T16:30:24Z Xach: I suppose I should not expect projects to drop fully formed onto github all the time. 2014-09-02T16:31:08Z AeroNotix: Xach: I certainly use it as a backup remote 2014-09-02T16:31:19Z AeroNotix: there's stuff I put on there that's just "initial commit" 2014-09-02T16:33:42Z matko quit (Remote host closed the connection) 2014-09-02T16:34:47Z ehu_ quit (Ping timeout: 245 seconds) 2014-09-02T16:36:50Z BitPuffin quit (Ping timeout: 276 seconds) 2014-09-02T16:42:08Z przl_ joined #lisp 2014-09-02T16:43:38Z brown``: I have some code that fails to load with ABCL and XCL. http://paste.lisp.org/display/143590 2014-09-02T16:43:39Z jlarocco joined #lisp 2014-09-02T16:44:08Z brown``: The code lives in an asd file, but I get the same error when I just load it. 2014-09-02T16:44:31Z brown``: Error is: The variable PROTOBUF-CONFIG::*PROTOC* is unbound. 2014-09-02T16:44:43Z marsam is now known as marsbot 2014-09-02T16:44:52Z przl quit (Ping timeout: 245 seconds) 2014-09-02T16:45:01Z alexey quit (Read error: Connection reset by peer) 2014-09-02T16:45:13Z brown``: It looks like ABCL is treating the DEFVAR as not CL:DEFVAR ... 2014-09-02T16:45:22Z alexey joined #lisp 2014-09-02T16:45:48Z pecg quit (Quit: WeeChat 1.0) 2014-09-02T16:46:21Z przl_ quit (Ping timeout: 240 seconds) 2014-09-02T16:46:45Z jdz: brown``: what does (find-symbol "*PROTOC*" :cl-user) say? 2014-09-02T16:47:09Z s_e quit (Ping timeout: 240 seconds) 2014-09-02T16:47:40Z brown``: Two values: nil nil 2014-09-02T16:48:05Z Xach: brown``: i can't reproduce. loads fine for me with abcl-bin-1.3.1 2014-09-02T16:48:17Z Xach: what version are you using? 2014-09-02T16:48:29Z brown``: OK, maybe something in my personal environment is triggering it. 2014-09-02T16:49:14Z BitPuffin joined #lisp 2014-09-02T16:49:23Z brown``: Xach: HEAD from the repository ... 1.4.0-dev, but also some earlier checked out version. 2014-09-02T16:49:30Z Xach: ok. 2014-09-02T16:49:33Z milosn quit (Ping timeout: 240 seconds) 2014-09-02T16:49:39Z s_e joined #lisp 2014-09-02T16:50:24Z milosn joined #lisp 2014-09-02T16:51:53Z gravicappa joined #lisp 2014-09-02T16:55:17Z BitPuffin quit (Ping timeout: 245 seconds) 2014-09-02T16:55:27Z loke_ quit (Remote host closed the connection) 2014-09-02T16:56:19Z Cymew joined #lisp 2014-09-02T17:00:36Z rpg quit (Ping timeout: 255 seconds) 2014-09-02T17:00:53Z Vlx joined #lisp 2014-09-02T17:02:21Z jtza8 quit (Ping timeout: 240 seconds) 2014-09-02T17:03:31Z nate_c joined #lisp 2014-09-02T17:08:46Z stacksmith: G'day. How do you catch SIGWINCH (I am messing with cl-charms) when a terminal is resized? 2014-09-02T17:09:50Z ejbs joined #lisp 2014-09-02T17:11:02Z eudoxia quit (Ping timeout: 245 seconds) 2014-09-02T17:13:08Z brown``: Xach/jdz: Thanks! One of my init files called "make-package" and it's implementation dependent what the resulting package's use list will be if it's not specified. 2014-09-02T17:14:49Z gadmyth joined #lisp 2014-09-02T17:15:18Z honkfestival quit (Remote host closed the connection) 2014-09-02T17:15:51Z EvW quit (Quit: EvW) 2014-09-02T17:17:11Z eudoxia joined #lisp 2014-09-02T17:18:36Z sdemarre joined #lisp 2014-09-02T17:19:19Z Xach: ahh 2014-09-02T17:19:36Z Xach: sbcl!! *shakes fist* 2014-09-02T17:19:52Z EvW joined #lisp 2014-09-02T17:21:26Z pecg joined #lisp 2014-09-02T17:21:41Z brown``: Xach: Maybe SBCL's behavior should be changed? A style warning too? 2014-09-02T17:23:32Z dlowe joined #lisp 2014-09-02T17:24:17Z innertracks quit (Ping timeout: 276 seconds) 2014-09-02T17:25:22Z dlowe left #lisp 2014-09-02T17:25:27Z dlowe joined #lisp 2014-09-02T17:31:36Z mac_ified joined #lisp 2014-09-02T17:32:47Z alexey quit (Remote host closed the connection) 2014-09-02T17:33:35Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-09-02T17:37:06Z _d3f quit (Read error: Connection reset by peer) 2014-09-02T17:39:58Z innertracks joined #lisp 2014-09-02T17:40:06Z pecg quit (Quit: WeeChat 1.0) 2014-09-02T17:40:32Z _d3f joined #lisp 2014-09-02T17:42:04Z Cymew quit (Ping timeout: 272 seconds) 2014-09-02T17:45:19Z innertracks quit (Quit: innertracks) 2014-09-02T17:48:53Z Ven joined #lisp 2014-09-02T17:49:07Z przl joined #lisp 2014-09-02T17:52:06Z banjara joined #lisp 2014-09-02T17:52:09Z sdemarre quit (Ping timeout: 264 seconds) 2014-09-02T17:53:08Z petrutrimbitas joined #lisp 2014-09-02T17:54:51Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-02T17:58:19Z mrSpec joined #lisp 2014-09-02T18:00:04Z yrk quit (Remote host closed the connection) 2014-09-02T18:00:18Z slassh joined #lisp 2014-09-02T18:00:20Z marsbot is now known as marsam 2014-09-02T18:01:52Z renard_ quit (Quit: ZNC - http://znc.sourceforge.net) 2014-09-02T18:02:21Z shka quit (Quit: Lost terminal) 2014-09-02T18:02:39Z renard_ joined #lisp 2014-09-02T18:03:54Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-02T18:07:29Z pnpuff joined #lisp 2014-09-02T18:09:57Z sdemarre joined #lisp 2014-09-02T18:12:08Z Krystof: it must be "shake fist at sbcl" day 2014-09-02T18:12:26Z Krystof: thank you for reminding me of an older "social contract" that sbcl merrily broke 2014-09-02T18:12:38Z Krystof: any other favourites? 2014-09-02T18:12:46Z nyef: (ARRAY NIL) ? 2014-09-02T18:12:46Z Krystof: (defconstant is probably mine) 2014-09-02T18:13:02Z Krystof: that's a good one but probably didn't actually affect much code out there in the wild 2014-09-02T18:13:19Z nyef: No, but it occasionally causes SBCL build issues. 2014-09-02T18:13:55Z nyef: (Admittedly, I haven't heard of one in a while, but I haven't been paying all that much attention.) 2014-09-02T18:15:26Z yakcc joined #lisp 2014-09-02T18:17:08Z yakcc: hi all 2014-09-02T18:17:11Z eudoxia quit (Quit: Lost terminal) 2014-09-02T18:17:28Z yakcc: I was wondering if anyone could help with a problem I have. 2014-09-02T18:17:46Z yakcc: I'm using emacs+slime and whenever I type something in the REPL 2014-09-02T18:17:58Z yakcc: i get error messages of the following sort 2014-09-02T18:18:01Z yakcc: "error in process filter: Reply to canceled synchronous eval request tag=slime-result-47-51964 sexp=(swank:documentation-symbol "setf")" 2014-09-02T18:18:18Z yakcc: in the mini-buffer 2014-09-02T18:19:09Z elderK quit (Ping timeout: 264 seconds) 2014-09-02T18:19:24Z elderK joined #lisp 2014-09-02T18:19:28Z yakcc: googling tells me that I should switch the 'ac-auto-show-menu' variable but 2014-09-02T18:19:28Z yakcc: that hasn't solved the problem. 2014-09-02T18:20:14Z yakcc: any ideas? 2014-09-02T18:21:00Z przl quit (Ping timeout: 246 seconds) 2014-09-02T18:21:19Z Krystof: not off the top of my head. Try the slime mailing list (or github issue)? 2014-09-02T18:21:46Z yakcc: strange thing is this only happens on my laptop and not my desktop 2014-09-02T18:21:52Z yakcc: which has the exact same config 2014-09-02T18:22:12Z mood: Is the SLIME version also the same? 2014-09-02T18:22:19Z yakcc: yes 2014-09-02T18:24:00Z mood: The only thing I can come up with is "Have you tried turning it off and on again?", but that's about it. 2014-09-02T18:24:23Z yakcc: yeah, tis but a strange one 2014-09-02T18:24:39Z yakcc: thanks, anyway 2014-09-02T18:24:51Z karswell` quit (Read error: Connection reset by peer) 2014-09-02T18:25:09Z Vlx quit (Ping timeout: 264 seconds) 2014-09-02T18:26:05Z petrutrimbitas joined #lisp 2014-09-02T18:27:39Z jtza8 joined #lisp 2014-09-02T18:28:13Z przl joined #lisp 2014-09-02T18:28:47Z Mon_Ouie quit (Quit: WeeChat 1.0) 2014-09-02T18:31:27Z marsam is now known as marsbot 2014-09-02T18:32:00Z AeroNotix: Where can I find out how to implement the stream interface? (assuming this is how the stream abstraction works) 2014-09-02T18:32:09Z AeroNotix: I assume I need to defmethod several methods for my type 2014-09-02T18:32:41Z dlowe: AeroNotix: there is no such thing in portable ANSI CL 2014-09-02T18:32:49Z AeroNotix: dlowe: but grey-streams 2014-09-02T18:33:25Z dlowe: right. I'd read the documentation of your particular grey stream implementation 2014-09-02T18:33:32Z AeroNotix: dlowe: ACK 2014-09-02T18:33:45Z dlowe: AeroNotix: FIN 2014-09-02T18:34:04Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-02T18:34:31Z mood: Isn't trivial-gray-streams the thing to use? 2014-09-02T18:34:59Z AeroNotix: mood: /me engooglates 2014-09-02T18:36:45Z renard_ quit (Ping timeout: 240 seconds) 2014-09-02T18:37:16Z yati quit (Quit: Leaving) 2014-09-02T18:38:40Z renard_ joined #lisp 2014-09-02T18:39:25Z AeroNotix: hmm, well in order to hopefully avoid reimplementing something I just want a stream that will return random data 2014-09-02T18:39:30Z AeroNotix: for testing porpoises 2014-09-02T18:39:41Z AeroNotix: anything out there? 2014-09-02T18:42:22Z vydd quit (Remote host closed the connection) 2014-09-02T18:45:51Z ehu joined #lisp 2014-09-02T18:50:33Z foom2 is now known as foom 2014-09-02T18:50:58Z mncoder joined #lisp 2014-09-02T18:52:05Z przl quit (Ping timeout: 260 seconds) 2014-09-02T18:52:46Z vydd joined #lisp 2014-09-02T18:53:36Z przl joined #lisp 2014-09-02T18:54:47Z slassh quit (Quit: Leaving) 2014-09-02T18:56:50Z vydd quit (Remote host closed the connection) 2014-09-02T18:57:53Z billstclair quit (Connection reset by peer) 2014-09-02T18:58:17Z billstclair quit (Read error: Connection reset by peer) 2014-09-02T18:58:30Z wheelsucker quit (Quit: Client Quit) 2014-09-02T19:00:57Z prxq joined #lisp 2014-09-02T19:07:04Z zacharias joined #lisp 2014-09-02T19:07:52Z _5kg quit (Ping timeout: 240 seconds) 2014-09-02T19:08:29Z elderK quit (Quit: leaving) 2014-09-02T19:08:34Z vaporatorius joined #lisp 2014-09-02T19:10:00Z hiyosi quit (Ping timeout: 268 seconds) 2014-09-02T19:10:11Z lowfyr joined #lisp 2014-09-02T19:10:23Z varjag joined #lisp 2014-09-02T19:10:40Z katsh quit (Ping timeout: 260 seconds) 2014-09-02T19:10:51Z lowfyr: o/ Hi #lisp 2014-09-02T19:12:47Z matko joined #lisp 2014-09-02T19:12:56Z Uber-Ich quit (Quit: leaving) 2014-09-02T19:14:04Z Jesin joined #lisp 2014-09-02T19:15:20Z Jesin quit (Max SendQ exceeded) 2014-09-02T19:16:22Z ASau joined #lisp 2014-09-02T19:16:33Z Jesin joined #lisp 2014-09-02T19:17:00Z Ven joined #lisp 2014-09-02T19:18:07Z matko quit (Remote host closed the connection) 2014-09-02T19:18:17Z matko joined #lisp 2014-09-02T19:18:25Z sdemarre quit (Read error: Connection reset by peer) 2014-09-02T19:18:40Z Ven quit (Client Quit) 2014-09-02T19:20:23Z innertracks joined #lisp 2014-09-02T19:21:52Z Jesin quit (Ping timeout: 240 seconds) 2014-09-02T19:23:52Z sdemarre joined #lisp 2014-09-02T19:27:42Z vydd joined #lisp 2014-09-02T19:28:31Z zacharias quit (Quit: Bye!) 2014-09-02T19:29:05Z zacharias joined #lisp 2014-09-02T19:32:21Z vydd quit (Ping timeout: 264 seconds) 2014-09-02T19:33:39Z Jesin joined #lisp 2014-09-02T19:34:47Z Patzy quit (Ping timeout: 245 seconds) 2014-09-02T19:35:38Z Patzy joined #lisp 2014-09-02T19:41:19Z yoyoyoyo joined #lisp 2014-09-02T19:41:25Z jasom: AeroNotix: you can always open /dev/urandom 2014-09-02T19:41:41Z AeroNotix: jasom: ha! of course. 2014-09-02T19:41:42Z jasom: AeroNotix: but I'm not aware of a userspace implementation of that 2014-09-02T19:42:37Z yoyoyoyo: Hello. I am trying to extract information from a pdf file. I have a sample pdf and I have installed cl-pdf-parser and cl-pdf through quicklisp (quicklisp is great) 2014-09-02T19:42:43Z jasom: you could also use arcfour with /dev/zero and ironclad, I suppose 2014-09-02T19:43:16Z yoyoyoyo: now, I am trying to get / find the function to read the pdf file and start playing with it, but I simply cant find any documentation for this step 2014-09-02T19:43:25Z jtza8 quit (Ping timeout: 260 seconds) 2014-09-02T19:43:33Z pnpuff left #lisp 2014-09-02T19:43:36Z Xach: yoyoyoyo: there's unfortunatley no documentation. i had some success with cl-pdf-parser but it involved looking at its sources. 2014-09-02T19:44:06Z Xach: yoyoyoyo: i got the most traction by reading the pdf reference alongside, because what cl-pdf-parser returns is a bunch of vectors and dictionaries and a few other object types. 2014-09-02T19:44:12Z jasom: I figured out how to do it, and cl-pdf rapidly ran out of core 2014-09-02T19:44:22Z yoyoyoyo: how can I list all of the exported functions by a package (using emacs, slime) 2014-09-02T19:44:23Z jasom: so I ended up writing my own pdf parsing code 2014-09-02T19:44:56Z yoyoyoyo: jasom: is that something you can are willing to share (the pdf parsing code) ? 2014-09-02T19:45:28Z Xach: yoyoyoyo: the parsing stuff is not exported, iirc. 2014-09-02T19:45:41Z jasom: yoyoyoyo: https://github.com/jasom/pdfparse 2014-09-02T19:45:53Z yoyoyoyo: jasom: thanks 2014-09-02T19:46:06Z mrSpec quit (Read error: Connection reset by peer) 2014-09-02T19:46:07Z Xach: yoyoyoyo: try M-. on pdf::read-pdf-file to get to the code. 2014-09-02T19:46:08Z jasom: yoyoyoyo: 100% undocumented too though 2014-09-02T19:46:12Z yoyoyoyo: I didn't see that listed when I used quicklisp apropos's feature 2014-09-02T19:46:22Z jasom: yoyoyoyo: not in ql AFAIK 2014-09-02T19:46:35Z yoyoyoyo: Xach: maybe we should add it ;) 2014-09-02T19:47:44Z yoyoyoyo: jasom: going to try this as well 2014-09-02T19:47:51Z yoyoyoyo: Thanks Xach, jasom 2014-09-02T19:47:58Z Xach: I had to parse some PDFs to extract coordinates for form input elements. It required wiring a lot of low-level stuff together in an ad hoc query thing for sanity. 2014-09-02T19:48:15Z jasom: yoyoyoyo: https://github.com/jasom/pdfparse <-- there's where I actually use it 2014-09-02T19:48:18Z yoyoyoyo: I am trying to import by bank statements 2014-09-02T19:48:26Z Xach: To do otherwise is a little like working with raw json 2014-09-02T19:48:27Z innertracks quit (Ping timeout: 255 seconds) 2014-09-02T19:49:03Z nyef: yoyoyoyo: Find out if your bank will export statements as CSV. 2014-09-02T19:49:03Z jasom: yoyoyoyo: it's not very lispy since rather than read the PDF spec I was lazy and ported some python code directly 2014-09-02T19:49:31Z jasom: but you define a set of methods for handling various aspects of rendering the PDF and they get called 2014-09-02T19:49:38Z Xach: yoyoyoyo: Good luck. In my experience, PDF text is often not structured at all, output by printer drivers that care only that certain things appear in certain places visually, not for making the "real" structure available. 2014-09-02T19:50:03Z yoyoyoyo: nyef: I am looking for that option (I think they used too, but they might be charging for it now, still investigating) 2014-09-02T19:50:21Z nyef: (My bank will export Quicken 2000 and CSV, easily... And charge for paper statements, WTF?) 2014-09-02T19:50:26Z slyrus joined #lisp 2014-09-02T19:51:01Z yoyoyoyo: Xach: you are correct, I might have to find a better way, but for now, this is fun ;) 2014-09-02T19:51:02Z Xach: I had problems where consecutive lines on screen were established by very distant data structures. I didn't go as far as trying to figure out the coordinates of everything and then sorting them. 2014-09-02T19:51:42Z jasom: yoyoyoyo: https://github.com/jasom/pdfparse/blob/master/simple-device.lisp <-- that should be enough to extract the strings as-is; like Xach says you'll likely run into things being in the wrong order 2014-09-02T19:51:42Z Xach: In one case it was easier to write a lisp program that cleaned up the garbage that came from cutting and pasting from a pdf viewer. 2014-09-02T19:51:48Z _5kg joined #lisp 2014-09-02T19:52:08Z Xach: But yes, it can be fun to mess with these things. 2014-09-02T19:52:11Z dlowe: There's a program called pdf2text, too 2014-09-02T19:52:16Z drmeister quit (Remote host closed the connection) 2014-09-02T19:52:18Z jasom: Xach: I've done sorting of all of the characters with a set of zones, etc. It's a pain 2014-09-02T19:53:06Z jasom: dlowe: I found it to be not so useful. I switched to pdfminer, which could output xml in various levels of detail (up to a single element with bounding-boxes for every character) 2014-09-02T19:53:59Z jasom: That was 100% good enough, but when I tried to figure out how to bundle that into something I could run portably I hit a hitch (I'm sure it's a solved problem in the python community, but I couldn't find it) so I ported the parts I used to lisp 2014-09-02T19:54:47Z jtza8 joined #lisp 2014-09-02T19:56:10Z edgar-rft quit (Quit: mental process terminated into eternal corruption) 2014-09-02T19:57:51Z jasom: IIRC I couldn't get cl-pdf-parse to parse just 1 page at a time. I was trying to parse a 400page PDF which was 60MB in size. It was unable to do so in 16GB of core. I didn't try with more 2014-09-02T19:59:03Z bjorkintosh joined #lisp 2014-09-02T19:59:28Z attila_lendvai joined #lisp 2014-09-02T19:59:28Z attila_lendvai quit (Changing host) 2014-09-02T19:59:28Z attila_lendvai joined #lisp 2014-09-02T19:59:30Z yoyoyoyo: This is a simple question ,but I simply do not know how to do it faster yet 2014-09-02T19:59:41Z yoyoyoyo: I git clone pdfparse 2014-09-02T19:59:59Z francogrex joined #lisp 2014-09-02T20:00:02Z yoyoyoyo: then within slime I did (load "/path/to/package.lisp") 2014-09-02T20:00:14Z yoyoyoyo: so I used quicklisp to load them 2014-09-02T20:00:17Z yoyoyoyo: that complaint about some missing libs 2014-09-02T20:00:39Z francogrex: it is most likely my understanding that is deficient, but someone enlighten me: STRING=: argument should be a string, a symbol or a character! 2014-09-02T20:00:40Z yoyoyoyo: and it complaint again, (load simple-pdf-device), repeat for all others 2014-09-02T20:00:51Z Xach: yoyoyoyo: you don't load systems via "load". 2014-09-02T20:00:54Z yoyoyoyo: is there a better / right way of loading this package into the system? 2014-09-02T20:01:00Z kobain joined #lisp 2014-09-02T20:01:00Z francogrex: string we understand but the other two? 2014-09-02T20:01:01Z yoyoyoyo: like an all at once ? 2014-09-02T20:01:21Z pecg joined #lisp 2014-09-02T20:01:21Z pecg quit (Changing host) 2014-09-02T20:01:21Z pecg joined #lisp 2014-09-02T20:01:31Z yoyoyoyo: What are the basic steps of loading a git clone "system" / "package" like pdfparse ? 2014-09-02T20:01:35Z Xach: yoyoyoyo: I think the easiest way is to cd to ~/quicklisp/local-projects and then use (ql:quickload :pdfparse) 2014-09-02T20:01:44Z yoyoyoyo: trying that 2014-09-02T20:01:51Z francogrex: (STRING= 'a 'a) 2014-09-02T20:02:10Z Xach: yoyoyoyo: that should load pdfparse and automatically fetch & install whatever it needs (as long as it is available via quicklisp or in your asdf source registry) 2014-09-02T20:02:16Z yoyoyoyo: Xach: that implies that I have git cloned to that location, correct ? 2014-09-02T20:02:25Z jasom: yoyoyoyo: you can put it in ~/common-lisp/ and ql:quickload as well 2014-09-02T20:02:31Z Xach: oh, sorry, yes, i skipped the clone part. 2014-09-02T20:02:39Z yoyoyoyo: ok, let me try that 2014-09-02T20:02:40Z Xach: Yes, clone into ~/quicklisp/local-projects/ 2014-09-02T20:02:47Z Xach: ~/common-lisp/ will work on sufficiently new ASDFs 2014-09-02T20:03:01Z yoyoyoyo: Xach: can I configure that path somewhere? 2014-09-02T20:03:02Z jasom: 3.1.2 or latter 2014-09-02T20:03:06Z yoyoyoyo: I have all of my code in a specific path 2014-09-02T20:03:18Z Xach: yoyoyoyo: You can add paths to ql:*local-project-directories* 2014-09-02T20:03:19Z jasom: yoyoyoyo: http://common-lisp.net/project/asdf/asdf/Configuring-ASDF-to-find-your-systems.html#Configuring-ASDF-to-find-your-systems 2014-09-02T20:03:30Z yoyoyoyo: reading, thanks 2014-09-02T20:03:32Z jasom: yoyoyoyo: that will tell ASDF where to find things, and quicklisp will find anything that asdf can find 2014-09-02T20:03:42Z Xach: yoyoyoyo: You can also symlink into the local-projects directory if you like. 2014-09-02T20:06:06Z hiyosi joined #lisp 2014-09-02T20:06:34Z mrottenkolber joined #lisp 2014-09-02T20:06:46Z mrottenkolber: I am violating the standard am I not? http://common-lisp.net/project/cl-test-grid/library/mpc.html 2014-09-02T20:07:27Z dim: another user bumped into the --load option for pgloader, that is intended to load extra lisp source code; but is sometime used against the pgloader command file... should I just throw a ignore-errors around it? 2014-09-02T20:07:32Z mrottenkolber: I shall only define methods on classes, not types? 2014-09-02T20:07:41Z dim: handler-case maybe 2014-09-02T20:07:53Z Xach: mrottenkolber: yes 2014-09-02T20:07:53Z dim: http://pgsql.privatepaste.com/7548c934ed for more context 2014-09-02T20:08:08Z dim: wondering how to recognize that a source file isn't lisp actually 2014-09-02T20:08:43Z Xach: mrottenkolber: it is ok for implementations to add more system classes, but simple-array is not a standard system class. 2014-09-02T20:08:45Z dim: I could refuse to --load a file unless it has a "lisp" extension 2014-09-02T20:09:51Z Xach: dim: is that a case where someone thought --load was for a data file? 2014-09-02T20:09:57Z Karl_Dscc quit (Remote host closed the connection) 2014-09-02T20:10:01Z mrottenkolber: Xach: thanks, go go cl test grid! 2014-09-02T20:10:03Z dim: yes, and it's not the first time 2014-09-02T20:10:11Z dim: and I got confused myself for a bit 2014-09-02T20:10:24Z dim: so I'd like to implement a gatekeeper (?) 2014-09-02T20:10:25Z Xach: dim: is renaming it something like --load-lisp-file considerable? 2014-09-02T20:10:29Z Fare joined #lisp 2014-09-02T20:10:38Z dim: sure 2014-09-02T20:10:43Z dim: that's actually a good idea 2014-09-02T20:11:03Z dim: is there another commonly used extension than "lisp" for lisp sources, tho? 2014-09-02T20:11:10Z Xach: dim: .cl is a distant, distant second. 2014-09-02T20:11:11Z dim: I'm thinking I should just do both 2014-09-02T20:11:22Z Xach: I've also seen .lsp (barf) 2014-09-02T20:11:30Z dim: I still want to be able to support windows users someday 2014-09-02T20:11:42Z nyef: I've seen .l as well. 2014-09-02T20:11:42Z dim: so I should have a 3-letter compat' extension I guess 2014-09-02T20:11:42Z yoyoyoyo: Xach: ql:*local-project-directories* works like bash's PATH variable? if so, how can I add another directory to it and have it persist when I shutdown my lisp image? Add it to a .quicklisp file somewhere ? 2014-09-02T20:11:59Z dim: so '("lisp" "cl" "lsp") would be the whitelist, good 2014-09-02T20:12:14Z dlowe: "asd" 2014-09-02T20:12:29Z cyphase joined #lisp 2014-09-02T20:13:41Z Xach: yoyoyoyo: you would have to add it to an init file somewhere, yes. i usually update it in my ~/.sbclrc. 2014-09-02T20:14:16Z Xach: yoyoyoyo: you could also create a *.lisp file in ~/quicklisp/local-init/ that does it, and it will be loaded whenever quicklisp loads. 2014-09-02T20:14:33Z AeroNotix: Xach: can I put multiple .lisp files in there? 2014-09-02T20:14:52Z dim: dlowe: can you actually (load (compile-file "foo.asd"))? 2014-09-02T20:14:57Z Xach: AeroNotix: yes. they are loaded in string< order by pathname-name. 2014-09-02T20:15:03Z dim: pgloader isn't smart enough to load a whole asd system 2014-09-02T20:15:03Z AeroNotix: Xach: cool thanks 2014-09-02T20:15:13Z dlowe: dim: if you have asdf installed, yeah. 2014-09-02T20:15:19Z dlowe: or at least you used to be able to 2014-09-02T20:15:27Z dim: interesting 2014-09-02T20:15:29Z Xach: AeroNotix: not documented, sorry. 2014-09-02T20:15:41Z dlowe: The asdf landscape isn't as simple as it once was. 2014-09-02T20:15:42Z dim: I could add it to the list and see what happens later when people try and use it ;-) 2014-09-02T20:15:52Z k-stz quit (Remote host closed the connection) 2014-09-02T20:15:58Z pecg quit (Ping timeout: 252 seconds) 2014-09-02T20:16:21Z TDog quit (Ping timeout: 240 seconds) 2014-09-02T20:16:48Z hiyosi quit (Ping timeout: 255 seconds) 2014-09-02T20:17:59Z yoyoyoyo: Xach: thanks for all of the information. I simpy moved the code to quicklisp/local-projects and that worked 2014-09-02T20:18:14Z yoyoyoyo: I am not going to try all of the other options, just to learn more about how all of this magic happens 2014-09-02T20:18:32Z gingerale quit (Ping timeout: 245 seconds) 2014-09-02T20:20:48Z Jesin quit (Quit: Leaving) 2014-09-02T20:23:00Z zophy quit (Ping timeout: 260 seconds) 2014-09-02T20:23:06Z sdemarre quit (Ping timeout: 255 seconds) 2014-09-02T20:25:05Z mac_ified quit 2014-09-02T20:29:42Z sz0 joined #lisp 2014-09-02T20:30:04Z dim: asdf:*central-registry* is the old magic 2014-09-02T20:31:08Z resttime joined #lisp 2014-09-02T20:32:40Z mindCrime joined #lisp 2014-09-02T20:32:53Z mrottenkolber: anyone got an idea about these failures? 2014-09-02T20:32:55Z mrottenkolber: http://common-lisp.net/project/cl-test-grid/library/cl-rfc2047.html 2014-09-02T20:34:57Z karswell` joined #lisp 2014-09-02T20:36:30Z honkfestival joined #lisp 2014-09-02T20:39:15Z nyef: mrottenkolber: Just looking at the error message, I'd say that there's a problem with the reader conditionals in that one part of "lift" when run on CMUCL. 2014-09-02T20:40:09Z przl quit (Ping timeout: 264 seconds) 2014-09-02T20:40:20Z slyrus_ joined #lisp 2014-09-02T20:41:16Z slyrus quit (Ping timeout: 252 seconds) 2014-09-02T20:41:18Z nyef: And possibly more going on... 2014-09-02T20:41:30Z slyrus_ is now known as slyrus 2014-09-02T20:41:42Z francogrex quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-02T20:42:26Z mrottenkolber: meh 2014-09-02T20:42:40Z mrottenkolber: I have no idea abou lift 2014-09-02T20:42:53Z mrottenkolber: system used it before I took over 2014-09-02T20:43:09Z nyef: Then for the type errors, something weird with CL-BASE64. 2014-09-02T20:43:18Z mrottenkolber: also not my turf 2014-09-02T20:44:01Z ferada: the lift one uses #+cmu sb-ext: 2014-09-02T20:44:09Z mrottenkolber: thats wrong :p 2014-09-02T20:44:18Z ferada: sb-ext:: even 2014-09-02T20:44:18Z nyef: Well, here's the thing: The symptoms for the type-error are such that the CMUCL maintainer should be informed. 2014-09-02T20:44:19Z mac_ified joined #lisp 2014-09-02T20:44:53Z typhonic quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-02T20:44:56Z nyef: Wow. Using sb-ext on cmucl is bad enough, but the double-colon? That's a sign that even SBCL doesn't want you doing that. 2014-09-02T20:45:01Z kobain quit (Ping timeout: 260 seconds) 2014-09-02T20:46:22Z mrottenkolber: lets find the author of lift and shame him publicly :P 2014-09-02T20:46:43Z ferada: welp, see here http://common-lisp.net/project/cl-test-grid/library/trivial-timeout.html 2014-09-02T20:47:07Z ferada: lift includes trivial-timeout 2014-09-02T20:47:29Z nyef: That'd do it. 2014-09-02T20:47:52Z logand`` quit (Remote host closed the connection) 2014-09-02T20:48:16Z mrottenkolber: cl-test-grid is sooooawesome 2014-09-02T20:48:16Z nyef: Also, asynchronous unwind is almost stupidly dangerous, and nearly impossible to do safely even when you know what you're doing. 2014-09-02T20:49:18Z Xach: mrottenkolber: yes 2014-09-02T20:49:36Z Xach: mrottenkolber: it is exactly the kind of thing i hoped quicklisp might facilitate 2014-09-02T20:49:58Z mrottenkolber: Xach: I want CLTG as a service, push 2014-09-02T20:50:13Z mrottenkolber: my tarball, get results per email 2014-09-02T20:50:19Z logand joined #lisp 2014-09-02T20:50:39Z mrottenkolber: or similar 2014-09-02T20:50:45Z mrottenkolber: could run my own 2014-09-02T20:50:48Z Whitesquall quit (Ping timeout: 272 seconds) 2014-09-02T20:53:01Z gravicappa quit (Remote host closed the connection) 2014-09-02T20:54:42Z urandom__ joined #lisp 2014-09-02T20:56:24Z Patzy quit (Ping timeout: 255 seconds) 2014-09-02T20:57:00Z Patzy joined #lisp 2014-09-02T20:58:34Z marsbot is now known as marsam 2014-09-02T20:58:40Z stacksmith: Xach: I am trying to break up a small project (created with quickproject) into several files. One of the files defines a different package. I thought that adding (:file "mypackage") to (:components ...) in the .asd file is enough, but apparently I am wrong as SBCL fails to load mypackage... 2014-09-02T21:02:14Z mood: stacksmith: Is the (:file "mypackage") earlier in the list than files that depend on it? 2014-09-02T21:03:31Z stacksmith: mood: Crap, I had a typo in it. Now it loads... Thanks. 2014-09-02T21:03:34Z Xach: yay 2014-09-02T21:11:05Z Fare: ok, it does look like a lot of the "phantom" time in cl-launch startup is the CLOS machinery happening on ASDF functions *after* ASDF loaded and when its classes are first used. 2014-09-02T21:11:25Z Fare: a bit over .2s 2014-09-02T21:12:53Z hiyosi joined #lisp 2014-09-02T21:15:46Z Fare: so after optimizing away asdf:initialize-source-registry using a cache, we're left with .6s of startup time, most of it loading asdf.fasl + initializing CLOS for it. 2014-09-02T21:15:54Z jasom: Fare: oh, I ran into that in sbcl using ltk 2014-09-02T21:16:13Z jasom: Fare: If I started up my gui before saving an image, it shaved 1.2s off of startup time. 2014-09-02T21:16:53Z Fare: in QRes, we used to have some magic invocation to try populate the CLOS caches. 2014-09-02T21:17:33Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-02T21:17:49Z jasom: It's every possible value passed to make-instance that needs to match, IIRC 2014-09-02T21:17:54Z jasom: or type perhaps 2014-09-02T21:18:04Z Fare: I don't know if it's still valid... (sb-pcl::update-dispatch-dfuns) (sb-pcl::precompile-random-code-segments) 2014-09-02T21:19:09Z nydel joined #lisp 2014-09-02T21:19:48Z drmeister joined #lisp 2014-09-02T21:19:52Z jasom: Fare: someone pointed me at those; I wasn't able to get them to work, and just starting up the gui and closing it was like a 2 line change in my build script so I didn't try very hard 2014-09-02T21:21:06Z Fare: I don't think they were measurably effective on QRes when we last tried them, either 2014-09-02T21:22:13Z Fare: nyef: did I ever show you my diagrams about asynchronous unwind? 2014-09-02T21:22:32Z ggole quit 2014-09-02T21:23:17Z mrottenkolber: Fare: I'd like to see them 2014-09-02T21:23:24Z AeroNotix: ldb doesn't work with signed numbers ? 2014-09-02T21:23:55Z AeroNotix: (ldb (byte 8 0) -1) => 255 2014-09-02T21:24:34Z mrottenkolber: AeroNotix: How would LDB know about signed? 2014-09-02T21:25:06Z AeroNotix: mrottenkolber: to be honest I just thought LDB was extracting the bits at those positions and returning the value as a signed number 2014-09-02T21:27:56Z Fare: what's the simplest way to sign-extend a n-bit integer? 2014-09-02T21:28:46Z francogrex joined #lisp 2014-09-02T21:29:02Z francogrex: this is nice: http://www.cneufeld.ca/genie/blog/2014/08/the-less-familiar-parts-of-lisp-for-beginners-index-of-summary-posts/ 2014-09-02T21:29:09Z Fare: (if (logbitp x (1- n)) (logior (ash -1 n) x) x) ? 2014-09-02T21:29:14Z vydd joined #lisp 2014-09-02T21:29:22Z ehu quit (Ping timeout: 268 seconds) 2014-09-02T21:30:49Z AeroNotix: Fare: what's n/x here? 2014-09-02T21:32:01Z stacksmith: How do I set SBCL running in a separate terminal to not provide a commandline, and use Swank only? 2014-09-02T21:32:31Z Xach: stacksmith: sb-daemon might do it, and i think there's a more generic daemonize library. 2014-09-02T21:34:09Z vydd quit (Ping timeout: 264 seconds) 2014-09-02T21:36:18Z stacksmith: Xach, I am not sure about sb-daemon... I am trying to start SBCL and use its terminal for ncurses (that is keep the file descriptors connected to the terminal). I just want to disable its command-line processing, so that SBCL does not eat my keystrokes inside an ncurses application. 2014-09-02T21:37:06Z stacksmith: By command-line processing I meant REPL 2014-09-02T21:37:09Z Fare quit (Ping timeout: 240 seconds) 2014-09-02T21:37:13Z marsam is now known as marsbot 2014-09-02T21:37:16Z gendl quit (Ping timeout: 250 seconds) 2014-09-02T21:37:21Z AeroNotix: stacksmith: --non-interactive? 2014-09-02T21:38:41Z stacksmith: AeroNotix: that seems right. I have an awful feeling of having asked this question before... 2014-09-02T21:38:49Z AeroNotix: I remember it being asked recently 2014-09-02T21:39:35Z replcated: Is there a better way to find out how many characters FORMAT has written than outputting to string and checking its length? I'm thinking something like the C %n printf specifier. 2014-09-02T21:39:49Z hiroakip joined #lisp 2014-09-02T21:42:34Z Rotacidni quit (Ping timeout: 264 seconds) 2014-09-02T21:46:18Z przl joined #lisp 2014-09-02T21:48:20Z badkins quit 2014-09-02T21:49:06Z hiroakip quit (Ping timeout: 260 seconds) 2014-09-02T21:51:00Z przl quit (Ping timeout: 246 seconds) 2014-09-02T21:51:03Z mac_ified quit 2014-09-02T21:51:52Z j0ni quit (Quit: leaving) 2014-09-02T21:51:58Z stacksmith: AeroNotix: need a little more help, buddy. How do you make SBCL not quit after starting a swank server? 2014-09-02T21:53:10Z AeroNotix: stacksmith: how are you starting it? 2014-09-02T21:53:16Z AeroNotix: what's the full invocation 2014-09-02T21:54:08Z stacksmith: sbcl --non-interactive --load "loader.lisp" loader.lisp contains (ql:quickload "swank") (swank:create-server) 2014-09-02T21:54:34Z j0ni joined #lisp 2014-09-02T21:54:42Z AeroNotix: stacksmith: lets try --noprint ? 2014-09-02T21:54:47Z mishoo quit (Ping timeout: 245 seconds) 2014-09-02T21:55:07Z francogrex quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-02T21:55:22Z AeroNotix: sbcl --noinform --noprint 2014-09-02T21:55:25Z AeroNotix: try that? 2014-09-02T21:55:37Z alexander-01 joined #lisp 2014-09-02T21:55:39Z drmeister quit (Remote host closed the connection) 2014-09-02T21:56:20Z stacksmith: Will try, but will it read keystrokes? The point of this exercise is to bar it from reading REPL... 2014-09-02T21:56:39Z AeroNotix: stacksmith: oh --non-interactive implies --quit 2014-09-02T21:58:05Z Xach: stacksmith: you could use --eval to run a function that doesn't return 2014-09-02T21:58:48Z AeroNotix: but don't busy-wait though :) 2014-09-02T21:58:51Z alexander-01: I installed a binary of sbcl on my tablet then tried compiling a newer version. after installing the newer version sbcl doesnt work anymore. Im using debian wheezy, any ideas on how to uninstall both the binary and source versions? 2014-09-02T21:58:52Z Xach: stacksmith: like (start-my-text-ui) 2014-09-02T21:59:14Z stacksmith: or (sleep 99999999999999999999999) 2014-09-02T21:59:38Z Xach: alexander-01: the binary and source usually install the stuff in /usr/local/lib/sbcl and /usr/local/bin/sbcl 2014-09-02T22:00:07Z Xach: alexander-01: out of curiosity, in what way does sbcl not work any more? 2014-09-02T22:01:02Z alexander-01: Xach: do I just remove these? Do I need to do anything else? 2014-09-02T22:01:40Z Xach: alexander-01: I don't think so. 2014-09-02T22:02:05Z oGMo: so by 3.2.2.3 functions must be able to refer to other definitions in the same file, but do those other definitions have to be toplevel? it doesn't seem to specify 2014-09-02T22:02:19Z oGMo: e.g., (eval-when ... (unless (fboundp ... 2014-09-02T22:02:21Z defaultxr joined #lisp 2014-09-02T22:02:40Z alexander-01: Im using emacs and slime + sbcl at the repl when I type something in and enter the curdor changes line and freezes 2014-09-02T22:02:46Z Bike: clhs 3.2.2.3 2014-09-02T22:02:46Z specbot: Semantic Constraints: http://www.lispworks.com/reference/HyperSpec/Body/03_bbc.htm 2014-09-02T22:03:13Z Xach: alexander-01: does it work if you start it in the terminal? is there anything in *inferior-lisp*? 2014-09-02T22:03:36Z nyef: alexander-01: Does it work without emacs+slime? 2014-09-02T22:04:23Z alexander-01: Yeah it does work in a terminal not sure on inferior lusp in emacs 2014-09-02T22:04:26Z Bike: oGMo: i think most implementations that do block compilation stuff would be alright as long as the defun is in compile-time 2014-09-02T22:04:31Z alexander-01: yeah 2014-09-02T22:04:36Z stacksmith: AeroNotix: thank you - sleep seems to work. Taking detailed notes this time! 2014-09-02T22:05:12Z ASau` joined #lisp 2014-09-02T22:05:17Z alexander-01: gtg at work bbs 2014-09-02T22:05:47Z oGMo: Bike: well neither sbcl nor ccl seem to complain, but 2014-09-02T22:06:20Z AeroNotix: stacksmith: fwiw I think that you could find something a bit more elegant than sleep 2014-09-02T22:06:49Z Bike: oGMo: do they warn about having to do runtime fdefinition? i forget 2014-09-02T22:07:01Z ASau` quit (Remote host closed the connection) 2014-09-02T22:07:04Z oGMo: not that i see 2014-09-02T22:07:19Z Bike: so if they're not optimizing you might not know 2014-09-02T22:07:20Z stacksmith: AeroNotix: what would you do instead of sleep? 2014-09-02T22:07:29Z BitPuffin joined #lisp 2014-09-02T22:07:42Z ASau` joined #lisp 2014-09-02T22:08:57Z ASau quit (Ping timeout: 264 seconds) 2014-09-02T22:09:05Z drmeister joined #lisp 2014-09-02T22:10:51Z ASau` is now known as ASau 2014-09-02T22:11:04Z stacksmith: AeroNotix: It's all wrong. Now I get no keystrokes. What I need is to somehow shut down the REPL without freezing stdin! ...crap... 2014-09-02T22:11:31Z zwer quit (Remote host closed the connection) 2014-09-02T22:11:40Z zwer joined #lisp 2014-09-02T22:12:36Z AeroNotix: stacksmith: look, I've just been reading the man page and googling. I've not done what you're trying to do. 2014-09-02T22:12:38Z AeroNotix: I'm going to bed. 2014-09-02T22:12:58Z Shinmera quit (Quit: ZzZZ) 2014-09-02T22:13:10Z stacksmith: AeroNotix: thank you for helping. Much appreciated. G'night. 2014-09-02T22:13:42Z hiyosi joined #lisp 2014-09-02T22:14:48Z alexander-01 quit (Ping timeout: 246 seconds) 2014-09-02T22:16:14Z BitPuffin quit (Ping timeout: 268 seconds) 2014-09-02T22:17:14Z kobain joined #lisp 2014-09-02T22:17:54Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-02T22:18:21Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-02T22:18:28Z dmiles_afk joined #lisp 2014-09-02T22:19:03Z logand` joined #lisp 2014-09-02T22:20:30Z fragamus joined #lisp 2014-09-02T22:21:58Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-02T22:22:42Z cy is now known as what 2014-09-02T22:22:48Z logand quit (Ping timeout: 255 seconds) 2014-09-02T22:22:49Z what is now known as cy 2014-09-02T22:27:59Z mrottenkolber left #lisp 2014-09-02T22:28:29Z akeip joined #lisp 2014-09-02T22:30:26Z vaporatorius quit (Remote host closed the connection) 2014-09-02T22:32:55Z Rotacidni joined #lisp 2014-09-02T22:32:58Z drmeister quit (Read error: Connection reset by peer) 2014-09-02T22:34:47Z mncoder quit (Quit: mncoder) 2014-09-02T22:39:05Z ramfjord joined #lisp 2014-09-02T22:41:03Z drmeister joined #lisp 2014-09-02T22:42:37Z gendl joined #lisp 2014-09-02T22:42:44Z nyef: drmeister: Ping? 2014-09-02T22:48:54Z mncoder joined #lisp 2014-09-02T22:49:14Z drmeister: pong 2014-09-02T22:49:48Z drmeister: What's up? 2014-09-02T22:49:58Z nyef: I just had a random heretical thought about your compiler, and I didn't know if it was something you were already doing or something that you might want to consider doing going forward. 2014-09-02T22:50:17Z nyef: Is the actual compiler part of your system written in C++, or Lisp? 2014-09-02T22:51:41Z nyef: It occurs to me that if it's written in C++, it would basically be available from the get-go, which could lead to a faster initial startup process, among other things. 2014-09-02T22:51:53Z drmeister: The actual compiler is written in Lisp with no CLOS. 2014-09-02T22:52:34Z nyef: And would also mean that you could use the C++ object model rather than dealing with meta-stability stuff with CLOS or avoiding CLOS altogether. 2014-09-02T22:54:31Z drmeister: I'm not sure what that means. I do use the C++ object model, I wrap C++ methods as Common Lisp functions, but I didn't set up code to extend C++ classes in Common Lisp. C++ is single dispatch only as you probably know. 2014-09-02T22:55:46Z nyef: Okay, ignore the last bit, but I'm basically trying to suggest that it might make sense for you to write the compiler part in C++ rather than in Lisp. 2014-09-02T22:57:01Z drmeister: This might help in explaining what I've done: https://gist.github.com/drmeister/739d7c5562c39364d830 2014-09-02T22:57:24Z drmeister: This is the list of source files that are loaded to build Clasp Common Lisp. 2014-09-02T22:57:27Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-02T22:57:57Z drmeister: They keyword entries are "intermediate build targets". 2014-09-02T22:58:07Z nyef: Okay, and I see a chunk of compiler stuff which is probably rather more than should be transliterated to C++. Fair enough. 2014-09-02T22:58:15Z drmeister: 2/3 of these entries correspond to ECL Common Lisp source code. 2014-09-02T22:58:48Z drmeister: Right - I don't want to do any more C++ than I have to. 2014-09-02T23:00:38Z drmeister: The interpreter loads the files in order... cmp/jit-setup, lsp/foundation, lsp/export, lsp/defmacro ... and then the compiler is loaded. Once the cmp/* files are loaded to the :cmp stage the files up to :cmp are COMPILE-FILEd by the interpreter - this takes about 15-20 minutes. 2014-09-02T23:01:25Z drmeister: After every file is COMPILE-FILEd the resulting fasl file (LLVM bitcode) is immediately loaded. That replaces interpreted functions with compiled functions. 2014-09-02T23:01:36Z drmeister: The compilation gets faster and faster . 2014-09-02T23:02:45Z drmeister: Once :cmp is hit the cmp/cmprepl file is loaded. That inserts an "implicit compilation" step into the REPL so that every form that is read gets COMPILEd and the compiled code is evaluated. Now things run a lot faster. 2014-09-02T23:03:20Z oleo is now known as Guest50585 2014-09-02T23:03:25Z drmeister: Then lsp/sharpmacros, lsp/assert, lsp/describe ... is loaded and every form is implicitly compiled. The files up to :min are loaded this way. 2014-09-02T23:04:09Z drmeister: Then it goes back and COMPILE-FILE's the source files between :cmp and :min. It then generates object code for all of the bitcode files and links them with the unix linker "ld". 2014-09-02T23:04:22Z drmeister: Now I have a .dll file that is a minimal Common Lisp with no CLOS. 2014-09-02T23:04:51Z fragamus quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-02T23:05:00Z oleo__ joined #lisp 2014-09-02T23:05:11Z Fare joined #lisp 2014-09-02T23:05:18Z drmeister: Then I boot the minimal Common Lisp and load and implicitly compile every file from :base to :all. Then it COMPILE-FILEs every source file from :base to :all. 2014-09-02T23:05:56Z drmeister: Then it does link-time-optimization of ALL of the bitcode files and come compiled C++ code to inline everything small into everything else. 2014-09-02T23:06:05Z zophy joined #lisp 2014-09-02T23:06:28Z Guest50585 quit (Ping timeout: 252 seconds) 2014-09-02T23:06:37Z drmeister: Then I have a .dll file that contains a full Common Lisp system that boots in 3.7 seconds, and uses the Boehm or MPS garbage collector. 2014-09-02T23:06:48Z yoyoyoyo quit (Quit: Page closed) 2014-09-02T23:06:54Z drmeister: I'll pause there. 2014-09-02T23:06:56Z nyef: Mmm. Impressive. Thank you for the explanation. (-: 2014-09-02T23:06:56Z hiyosi joined #lisp 2014-09-02T23:07:18Z nyef: And I just got the call for dinner, so I'm gone for a bit. 2014-09-02T23:08:12Z drmeister: Enjoy. I'd love to talk more if you have any thoughts. 2014-09-02T23:09:18Z drmeister: The two compilations take 30-40 minutes. 2014-09-02T23:09:44Z drmeister: beach - are you still on? Probably not. 2014-09-02T23:10:17Z oGMo: https://github.com/rpav/make-util <- my stupid-simple local alternative to quickutil ;) 2014-09-02T23:11:01Z oGMo: grabs source with swank's source-location and pretty-prints it all to a file, no infrastructure or special definition required 2014-09-02T23:11:29Z drmeister: oGMo: How do you pretty print code? 2014-09-02T23:11:36Z oGMo: drmeister: pprint 2014-09-02T23:11:49Z oGMo: with a couple *print-..* set 2014-09-02T23:11:53Z drmeister: Just (PPRINT form)? 2014-09-02T23:12:14Z oGMo: more or less, the whole thing is just existing functions strung together 2014-09-02T23:13:01Z jasom: oGMo: can it pull in in-package dependencies from the call-graph? 2014-09-02T23:13:17Z oGMo: jasom: hell no ;) 2014-09-02T23:13:53Z oGMo: it does warn you if the definition wasn't from a defun/defmacro/define-compiler-macro, but that's about all. it's mostly for maintaining your own stuff locally, so you should know how it works 2014-09-02T23:14:21Z Sgeo joined #lisp 2014-09-02T23:16:24Z fortitude quit (Quit: leaving) 2014-09-02T23:16:56Z drmeister: Huh, weird - that's why I never got pprint to work. ECL defines it in the C code and not in Common Lisp in the pprint.lsp file. 2014-09-02T23:18:41Z alexander-01 joined #lisp 2014-09-02T23:21:47Z jtza8 quit (Remote host closed the connection) 2014-09-02T23:23:32Z jleija joined #lisp 2014-09-02T23:29:14Z davorb joined #lisp 2014-09-02T23:30:22Z LiamH quit (Quit: Leaving.) 2014-09-02T23:30:53Z vydd joined #lisp 2014-09-02T23:32:51Z davorb1 quit (Ping timeout: 246 seconds) 2014-09-02T23:33:57Z Jubb joined #lisp 2014-09-02T23:34:15Z stacksmith: Can anyone point me in the right direction re: What does SLIME do with stdin of a terminal? Trying to get SBCL REPL to not randomly consume keyboard characters from an ncurses application running in a separate terminal (hosting SWANK). No luck so far... 2014-09-02T23:35:30Z vydd quit (Ping timeout: 260 seconds) 2014-09-02T23:36:08Z nyef: First things that come to mind are to ask how you're launching SWANK, and grepping for "tty" or "terminal-io" in the SWANK source code. 2014-09-02T23:36:32Z nyef: (And in the SLIME source code, in case there's anything really weird going on.) 2014-09-02T23:36:49Z stacksmith: Launching with create-server, then connecting from Emacs... 2014-09-02T23:37:08Z nyef: (That said, I haven't used SLIME professionally in... possibly years now, and personally in nearly as long.) 2014-09-02T23:37:24Z stacksmith: nyef: what do you use instead? 2014-09-02T23:37:28Z duggiefresh joined #lisp 2014-09-02T23:38:15Z nyef: Professionally, I'm back to the edit/compile/test cycle or the edit/run-test-suite cycle, depending on if I've figured out how to get test coverage for what I'm working on or not. 2014-09-02T23:38:40Z nyef: Personally, I tend to hack on low-level bits of SBCL that require a full build cycle anyway. 2014-09-02T23:38:59Z stacksmith: Thanks, I'll dig some more... 2014-09-02T23:39:46Z nyef: (SLIME/SWANK just tended to break often enough at work that it wasn't worth the hassle of figuring out how to fix it.) 2014-09-02T23:40:05Z nyef: And the situation could be massively improved by this point and I simply wouldn't know. 2014-09-02T23:40:31Z nyef: Oh, and rlwrap. I use rlwrap to fix up the bare SBCL REPL into something tolerable. 2014-09-02T23:40:39Z nyef: Not always, but often. 2014-09-02T23:40:40Z drmeister: Darn it. What does PPRINT need to work? I set *print-pretty* and *print-escape* to T yet PPRINT still generates everything on one line: (pprint (macroexpand '(defun x () (let ((x 1)) (print x))))) --> (PROGN (CORE::FSET 'X #'(EXT:LAMBDA-BLOCK X NIL (DECLARE (CORE::C-GLOBAL)) (LET ((X 1)) (PRINT X)))) NIL 'X) 2014-09-02T23:41:22Z drmeister: While ECL (who's PPRINT source code I use generates nice (dare I say pretty?) multi-line output). 2014-09-02T23:41:31Z nyef: drmeister: Check your pprint dispatch table, and also consider if the stream character "width" is an issue. 2014-09-02T23:42:30Z nyef: Umm... And try calling the function from the pprint-dispatch table directly, to see if it's a problem with the functions or with the dispatching. 2014-09-02T23:46:53Z drmeister: How would I do that - is there a portable way? The *print-pprint-dispatch* value is a struct in ECL that prints as: <#PPRINT-DISPATCH-TABLE #####> 2014-09-02T23:48:57Z MouldyOldBones joined #lisp 2014-09-02T23:51:14Z drmeister: The stream "width" seems to work fine. In ECL it's accessed with FILE-COLUMN. (progn (terpri) (format t "abcdefg") (file-column t)) --> 7 2014-09-02T23:52:11Z nyef: Umm... That's backwards. FILE-COLUMN would be the current horizontal position, not the overall width. 2014-09-02T23:52:32Z jasom: drmeister: I'm pretty sure that there is no portable way. You can set, but not get values from the dispatch table portably 2014-09-02T23:52:56Z jasom: drmeister: you could call pprint-dispatch for each type you care about, I suppose 2014-09-02T23:53:20Z nyef: Hrm. Might be an SBCL-specific concept, but that doesn't feel quite right. 2014-09-02T23:53:44Z drmeister: I see it - thanks. (pprint-dispatch 'do) --> # that's all I ever get, there are no entries. 2014-09-02T23:54:18Z alexander-01 quit (Quit: Bye) 2014-09-02T23:54:19Z nyef: So, that'd be a good reason why it doesn't work properly. 2014-09-02T23:54:54Z Zeedox_ quit (Ping timeout: 246 seconds) 2014-09-02T23:55:01Z drmeister: Hmm, this is how it is defined. I have to think about how it works: https://gist.github.com/drmeister/8a88a8ba3240a88e6fec 2014-09-02T23:56:06Z drmeister: It is defining the a list of symbols->dispatchers +magic-forms+ at compile-time and using #.+magic-forms+ to inline those magic forms. 2014-09-02T23:57:14Z drmeister: Maybe something about my #. is broken? 2014-09-02T23:57:30Z nyef: What does (pprint-dispatch '(do () () ())) return? 2014-09-02T23:57:54Z nyef: Or (pprint-dispatch '(progn (values foo))) ? 2014-09-02T23:57:56Z Nizumzen joined #lisp 2014-09-02T23:58:02Z drmeister: # 2014-09-02T23:58:22Z slyrus quit (Ping timeout: 260 seconds) 2014-09-02T23:58:43Z drmeister: I used the wrong kind of object - I was passing symbols. 2014-09-02T23:58:45Z drmeister: Thanks. 2014-09-02T23:59:31Z drmeister: Ok, so no problem with #. - great but then what the heck is wrong. 2014-09-02T23:59:57Z nyef: So, the function takes two arguments, (stream object). 2014-09-03T00:00:26Z nyef: Try it with the PROGN, just funcall it with *standard-output* and a quoted progn form of at least two subforms, and see if that much works. 2014-09-03T00:00:50Z nyef: It'll tell you if the problem is the pprinter functions or triggering the pprinter in the first place. 2014-09-03T00:03:05Z nyef: (Of course, it might be both, but now you can narrow down to one area of focus at a time.) 2014-09-03T00:04:45Z drmeister: Do you mean PPRINT-DISPATCH or PPRINT? 2014-09-03T00:05:08Z Aranshada|W_ joined #lisp 2014-09-03T00:05:29Z nyef: Start by making sure that the pprint-dispatch stuff returns a function that can print the form "prettily". 2014-09-03T00:05:30Z drmeister: PPRINT-DISPATCH takes an object and a table. PPRINT takes a form and a stream. 2014-09-03T00:05:44Z nyef: The function returned by pprint-dispatch takes a stream and a form. 2014-09-03T00:05:49Z drmeister: Got it. 2014-09-03T00:06:48Z nyef: If that much doesn't work, make it work, then see if the issue is fixed. If it DOES work, track the logic between PPRINT and PPRINT-DISPATCH. 2014-09-03T00:07:12Z Oddity quit (Ping timeout: 250 seconds) 2014-09-03T00:07:25Z Oddity joined #lisp 2014-09-03T00:07:39Z Aranshada|W quit (Ping timeout: 255 seconds) 2014-09-03T00:08:07Z Aranshada|W joined #lisp 2014-09-03T00:09:52Z Aranshada|W_ quit (Ping timeout: 240 seconds) 2014-09-03T00:12:00Z duggiefresh quit (Remote host closed the connection) 2014-09-03T00:12:34Z duggiefresh joined #lisp 2014-09-03T00:13:42Z drmeister: Duh. For some reason I have a *enable-print-pretty* dynamic variable preventing pretty-printing from working. I turned it on and now it dispatches but chokes for an unrelated reason. 2014-09-03T00:14:12Z thierrygar: 2` 2014-09-03T00:14:12Z minion: thierrygar, memo from pjb: have a look at news:comp.lang.lisp 2014-09-03T00:14:23Z drmeister: I probably put it under control of a dynamic variable when the system was more primitive and it would go into an infinite loop. 2014-09-03T00:14:46Z thierrygar: oops cat on keyboard 2014-09-03T00:15:10Z nyef: thierrygar: Beware the Ctrl-Paw-Delete. 2014-09-03T00:15:42Z thierrygar: right! 2014-09-03T00:16:52Z duggiefresh quit (Ping timeout: 245 seconds) 2014-09-03T00:18:05Z mncoder quit (Quit: mncoder) 2014-09-03T00:19:04Z ``Erik_ joined #lisp 2014-09-03T00:19:22Z ``Erik quit (Ping timeout: 240 seconds) 2014-09-03T00:20:43Z zRecursive joined #lisp 2014-09-03T00:22:36Z ejbs` joined #lisp 2014-09-03T00:22:54Z zz_karupa is now known as karupa 2014-09-03T00:23:13Z thierrygar: learning lisp; having trouble with lexical scope, symbols. why is 'a unbound in this: (let ((a "something")) (boundp 'a)) 2014-09-03T00:23:52Z gadmyth quit (Quit: zzz...) 2014-09-03T00:24:50Z ejbs quit (Ping timeout: 276 seconds) 2014-09-03T00:25:42Z duggiefresh joined #lisp 2014-09-03T00:26:27Z jasom: thierrygar: a is bound; boundp is just named stupidly 2014-09-03T00:27:21Z jasom: "The function bound determines only whether a symbol has a value in the global environment; any lexical bindings are ignored." 2014-09-03T00:28:21Z nyef: BOUNDP checks for "special" (a.k.a. "dynamic") bindings, while LET will default to lexical unless the variable was previously declaimed as special or is declared as special as a bound declaration of the LET. 2014-09-03T00:28:25Z nyef: Something like that, at least. 2014-09-03T00:29:02Z thierrygar: my bad I see it in hyperspec now. 2014-09-03T00:29:57Z Rotacidni quit (Ping timeout: 264 seconds) 2014-09-03T00:30:58Z ejbs` quit (Remote host closed the connection) 2014-09-03T00:31:23Z vydd joined #lisp 2014-09-03T00:31:59Z jasom: thierrygar: not really your fault; it seems to be an artifact from before lisp had lexical bindings 2014-09-03T00:32:28Z thierrygar: I see symbol-value similarly cannot see lexical vars. So is there a way to get at the value of a lexical variable if I only know its symbol-name? 2014-09-03T00:32:44Z jasom: thierrygar: not dynamically 2014-09-03T00:32:53Z jasom: thierrygar: obviously if you reference it directly 2014-09-03T00:33:02Z jasom: (let ((x 2)) x) <-- that will get you the value of x 2014-09-03T00:33:10Z bgs100 joined #lisp 2014-09-03T00:33:44Z jasom: thierrygar: if you have a small set of lexical variables for which you need to get the binding dynamically you could use a hash-table or a case 2014-09-03T00:33:54Z thierrygar: jasom: right; I was wondering about using symbol-name rather than directly. I'll bark up another tree; probably I am misconceiving something else fundamental. 2014-09-03T00:34:00Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-03T00:34:17Z jasom: thierrygar: perhaps the better question is "why do you need to do that?" 2014-09-03T00:34:31Z thierrygar: jasom: exactly. I probably don't. 2014-09-03T00:34:55Z urandom__ quit (Quit: Konversation terminated!) 2014-09-03T00:36:10Z vydd quit (Ping timeout: 260 seconds) 2014-09-03T00:38:18Z nyef: Consider the equivalent case in, say, C. How do you get the value of a local variable, given only its name? 2014-09-03T00:40:23Z zRecursive: nyef: In C, it will be translated into [SP + offset] ? 2014-09-03T00:40:46Z zRecursive: by compiler 2014-09-03T00:42:54Z thierrygar: aren't variable names effectively completely lost in C in compiled/linked code? (unlike CL) 2014-09-03T00:43:13Z nyef: zRecursive: If it's a reference, yes, but what if all you have is the name as a literal? 2014-09-03T00:43:55Z nyef: thierrygar: That's just the thing, the same thing applies for lexical variables in CL, unless you're digging into implementation-specific debugging support stuff. 2014-09-03T00:44:37Z zRecursive: nyef: what is "name as a literal" in C ? 2014-09-03T00:45:58Z EvW quit (Quit: EvW) 2014-09-03T00:46:09Z zRecursive: Do you mean name before compiling ? 2014-09-03T00:46:30Z resttime quit (Read error: Connection reset by peer) 2014-09-03T00:46:47Z nyef: Yes, so presumably a literal string. 2014-09-03T00:46:47Z Longlius joined #lisp 2014-09-03T00:47:25Z thierrygar: it's just that I am just getting accustomed to symbols, internment in packages, etc. and now it appears that lexical vars are different in a way I had not anticipated. 2014-09-03T00:47:29Z nyef: Essentially, the information is deliberately discarded, and it doesn't even make sense to ask the question. 2014-09-03T00:48:13Z nyef: thierrygar: For what it's worth, I've been hacking CL for most of a decade now, give or take, and I'm *STILL* learning surprising things every so often. 2014-09-03T00:48:46Z thierrygar: nyef: I have an interesting decade ahead of me then. 2014-09-03T00:49:46Z nyef: There's been a bit of a long-tail effect over that time period as well. 2014-09-03T00:50:28Z nyef: The surprises are substantially less frequent these days, unless I'm starting to dig into something new to me, such as the implementation of the metaobject protocol, or something like that. 2014-09-03T00:51:02Z thierrygar: I have been using CL for a while now in a very non-expert non-lispy way and I still like it lots. 2014-09-03T00:51:02Z coredump joined #lisp 2014-09-03T00:51:26Z thierrygar: Am finally tackling On Lisp and Let Over Lambda. But I see I have basics to learn yet. 2014-09-03T00:51:48Z Xach: two of the worst books ever for starting out 2014-09-03T00:52:09Z nyef: I... still haven't read either of those. 2014-09-03T00:52:17Z thierrygar: really? I am getting quite a bit from both (in small pieces). 2014-09-03T00:52:43Z Xach: really. they preach some weird CL ideas mixed in with whatever's good. it takes some experience to sort out which is which. 2014-09-03T00:53:10Z thierrygar: what would you suggest for a not-quite-noob? 2014-09-03T00:53:11Z Xach: i think paradigms of ai programming is very solid both for getting started and doing advanced stuff. it's dense but rewarding. 2014-09-03T00:53:24Z pillton quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-03T00:53:41Z Xach: i was put off by the title (i don't care much about learning ai stuff) but it turns out that's just a sort of narrative hook for exploring good techniques in CL 2014-09-03T00:54:06Z nyef: One caveat of PAIP is that it's written for CLtL1-era implementations. 2014-09-03T00:54:16Z thierrygar: Xach: yeah I have paradigns of ai prog. also. Actually I have two norvig books so I'll dig into them: lots of reading. 2014-09-03T00:54:26Z nyef: But it's a VERY good book for how to think about programming in Lisp. 2014-09-03T00:54:46Z nyef: Or about programming in general. 2014-09-03T00:54:47Z Xach: It's not either. 2014-09-03T00:54:53Z Xach: PAIP is post-95. 2014-09-03T00:55:02Z Xach: Where did you get the cltl1 idea? 2014-09-03T00:55:04Z stepnem quit (Ping timeout: 260 seconds) 2014-09-03T00:55:11Z nyef: Okay, so CLtL2-era? 2014-09-03T00:55:16Z Xach: ANSI era. 2014-09-03T00:55:40Z nyef: There are some specific things done which were commonly accepted at the time, but which aren't ANSI-conformant. 2014-09-03T00:55:46Z Xach: There may be some specific case that I'm forgetting, so feel free to refresh me. 2014-09-03T00:55:51Z nyef: SETQ/SETF at toplevel, for example. 2014-09-03T00:56:29Z Xach: He could never have seen the cultural breakage wrought by Krystof and his SBCL minions! 2014-09-03T00:56:34Z drewc quit (Remote host closed the connection) 2014-09-03T00:57:02Z thierrygar: I also own Lisp in Small Pieces, Metaobject Protocol and Keene's book on CLOS: have only read the latter. Any comments on these? 2014-09-03T00:57:38Z fragamus joined #lisp 2014-09-03T00:57:41Z nyef: LiSP is Scheme-specific, but generally good. Keene's book contains some odd examples, but likewise. AMOP is spectacularly dense going. 2014-09-03T00:58:06Z nyef: I think I've done more AMOP reading in the past week than in the entire preceeding year. 2014-09-03T00:58:16Z thierrygar: I'll leave AMOP and LiSP for next year, I think. 2014-09-03T00:58:30Z harish_ quit (Ping timeout: 255 seconds) 2014-09-03T00:58:45Z zRecursive: thierrygar: leave for what ? 2014-09-03T00:58:55Z nyef: LiSP is good for understanding compilation issues in lisps generally, even if it IS for Scheme. 2014-09-03T00:59:19Z thierrygar: I'll read them after Dec 31 when I finish my current project. 2014-09-03T00:59:47Z coredump quit (Quit: C-x C-c) 2014-09-03T01:02:19Z isoraqathedh quit (Quit: No Ping reply in 180 seconds.) 2014-09-03T01:04:29Z Vivitron joined #lisp 2014-09-03T01:04:32Z isoraqathedh joined #lisp 2014-09-03T01:07:35Z Vivitron: I'm a little confused by the boundp note in the spec claiming it only detects symbol values in the global environment 2014-09-03T01:08:11Z Vivitron: I've used it to check for local special bindings, are the implementations allowing that in error? 2014-09-03T01:09:10Z nyef: Local special bindings are in the global environment. That is, the *binding* is in the global environment, the specialness of the variable isn't. 2014-09-03T01:10:07Z nyef: (Unless specialness is declaimed at toplevel, it's a lexical property, while special bindings are always globally visible if you look for them.) 2014-09-03T01:10:42Z nyef: Also, if you're going down this route, PROGV may well either explain a few things or merely confuse you further. 2014-09-03T01:11:47Z prxq_ joined #lisp 2014-09-03T01:11:59Z Vivitron: Thanks, I think that clears it up for me 2014-09-03T01:12:51Z Vivitron: nyef: progv brought me here already:) https://github.com/m-n/yarty/blob/master/utils.lisp#L24 2014-09-03T01:13:07Z Rotacidni joined #lisp 2014-09-03T01:14:21Z cy quit (Ping timeout: 240 seconds) 2014-09-03T01:15:32Z prxq quit (Ping timeout: 276 seconds) 2014-09-03T01:16:08Z cy joined #lisp 2014-09-03T01:16:19Z sz0 quit 2014-09-03T01:19:00Z pillton joined #lisp 2014-09-03T01:19:45Z Fare quit (Ping timeout: 264 seconds) 2014-09-03T01:19:50Z drmeister: nyef: My gray streams implementation has some problems. 2014-09-03T01:20:47Z drmeister: So pretty-stream is not working properly. 2014-09-03T01:21:22Z lowfyr quit (Ping timeout: 240 seconds) 2014-09-03T01:21:49Z nyef: Well, at least you know more about what's going on. 2014-09-03T01:27:10Z varjag quit (Quit: Connection closed for inactivity) 2014-09-03T01:28:50Z Fare joined #lisp 2014-09-03T01:32:15Z vydd joined #lisp 2014-09-03T01:34:40Z davorb1 joined #lisp 2014-09-03T01:35:00Z davorb quit (Ping timeout: 246 seconds) 2014-09-03T01:36:48Z vydd quit (Ping timeout: 252 seconds) 2014-09-03T01:38:21Z isoraqathedh quit (Ping timeout: 264 seconds) 2014-09-03T01:39:59Z jusss joined #lisp 2014-09-03T01:42:02Z isoraqathedh joined #lisp 2014-09-03T01:45:33Z atgreen quit (Ping timeout: 240 seconds) 2014-09-03T01:49:33Z isoraqathedh quit (Ping timeout: 240 seconds) 2014-09-03T01:49:55Z echo-area joined #lisp 2014-09-03T01:50:41Z ramfjord quit (Ping timeout: 260 seconds) 2014-09-03T01:59:09Z seg_ quit (Quit: quit) 2014-09-03T01:59:39Z seg joined #lisp 2014-09-03T02:00:03Z fragamus quit (Quit: My iMac has gone to sleep. ZZZzzz…) 2014-09-03T02:02:53Z Jesin joined #lisp 2014-09-03T02:08:33Z akeip quit (Quit: Page closed) 2014-09-03T02:09:06Z thierrygar quit (Quit: thierrygar) 2014-09-03T02:11:39Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-03T02:12:03Z fragamus joined #lisp 2014-09-03T02:13:15Z ubii quit (Quit: Leaving) 2014-09-03T02:16:05Z nell joined #lisp 2014-09-03T02:16:43Z aomdoa joined #lisp 2014-09-03T02:17:27Z harish_ joined #lisp 2014-09-03T02:18:52Z Jameser quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-03T02:24:48Z phax quit (Quit: Leaving) 2014-09-03T02:26:42Z cmatei quit (Ping timeout: 255 seconds) 2014-09-03T02:27:54Z attila_lendvai quit (Quit: Leaving.) 2014-09-03T02:27:55Z aomdoa quit (Quit: Leaving) 2014-09-03T02:31:12Z frkout_ joined #lisp 2014-09-03T02:31:49Z innertracks joined #lisp 2014-09-03T02:32:09Z nand1 quit (Remote host closed the connection) 2014-09-03T02:32:54Z vydd joined #lisp 2014-09-03T02:34:30Z frkout quit (Ping timeout: 246 seconds) 2014-09-03T02:37:30Z vydd quit (Ping timeout: 255 seconds) 2014-09-03T02:39:18Z Vivitron quit (Read error: Connection reset by peer) 2014-09-03T02:39:28Z Vivitron joined #lisp 2014-09-03T02:41:21Z seg quit (Ping timeout: 264 seconds) 2014-09-03T02:55:53Z bgs100 quit (Quit: bgs100) 2014-09-03T02:57:38Z TDog joined #lisp 2014-09-03T03:01:30Z whmark quit (Remote host closed the connection) 2014-09-03T03:07:13Z beach joined #lisp 2014-09-03T03:07:21Z beach: Good morning everyone! 2014-09-03T03:07:43Z nyef: Hello beach. 2014-09-03T03:08:04Z yeticry quit (Ping timeout: 260 seconds) 2014-09-03T03:10:06Z yeticry joined #lisp 2014-09-03T03:10:48Z isoraqathedh joined #lisp 2014-09-03T03:14:03Z duggiefresh quit 2014-09-03T03:17:35Z mhd quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-03T03:17:36Z mhd quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-03T03:18:00Z ubii joined #lisp 2014-09-03T03:18:03Z beach: I think I know how to do two things: 1. Define an implementation-independent protocol for accessing the compilation/evaluation environment. 2. Define an extensible implementation-independent protocol for converting forms to ASTs. 2014-09-03T03:18:16Z beach: It will take me some time to iron out the details of course. 2014-09-03T03:18:40Z Bike: cool. 2014-09-03T03:19:01Z beach: I am thinking for point #1 that it will be an expanded CLOSy version of the CLtL2 environment functions. 2014-09-03T03:21:06Z beach: The converter of point #2 will take as an argument an object representing the implementation, so that implementations can define :before, :after, and :around methods, or simply override the default method. I can then supply reasonable defaults that can be used by most implementations while still allowing customization. 2014-09-03T03:24:03Z beach: drmeister: Thanks for the offer of helping out. I'll answer your email in more detail later. I need to think about how I would organize contributions. It is not an easy task to do, given that I am doing the specification and the implementation in parallel. 2014-09-03T03:24:21Z drmeister: Hello. 2014-09-03T03:24:36Z nyef: Ahh, that special realization that I won't have to stay up until three AM in order to deal with starting a second long-running batch process so that it's done in the morning. 2014-09-03T03:25:11Z billstclair joined #lisp 2014-09-03T03:25:11Z billstclair quit (Changing host) 2014-09-03T03:25:11Z billstclair joined #lisp 2014-09-03T03:25:39Z drmeister: That sounds good. 2014-09-03T03:25:41Z pillton: nyef: YES! I know that feeling. 2014-09-03T03:25:55Z drmeister: I was reading SICL code relating to COMPILE-FILE. 2014-09-03T03:25:59Z drmeister: Where do you expand macros? 2014-09-03T03:26:42Z beach: drmeister: There is code in there that is no longer or will no longer be used, so you need to be careful what you read :) 2014-09-03T03:27:02Z beach: drmeister: Macro expansion should be in a file call generate-ast.lisp or something similar. 2014-09-03T03:27:04Z drmeister: I'm just trying to get my bearings by identifying things that I expect to see. 2014-09-03T03:27:29Z Fare quit (Remote host closed the connection) 2014-09-03T03:27:30Z beach: I don't do a separate minimal compilation phase. 2014-09-03T03:27:38Z drmeister: So you generate the AST as you expand macros. So there is no separate minimal compilation. 2014-09-03T03:27:39Z drmeister: Right. 2014-09-03T03:27:44Z beach: Exactly. 2014-09-03T03:29:01Z drmeister: Why do you need an implementation independent protocol for the environment? Can't you just define your own environment? 2014-09-03T03:30:03Z beach: drmeister: I already define my own environment. But then you asked how to translate to AST in *your* implementation, so I thought about how to make the environment access implementation independent so that I can make it part of Cleavir. 2014-09-03T03:30:10Z drmeister: Does compilation need to interact with the implementations environment at all? Since you take S-expressions->AST->MIR->native code? 2014-09-03T03:30:51Z beach: The translation from form to AST requires the compilation environment, and eval-when requires the evaluation environment. 2014-09-03T03:31:13Z drmeister: Hmm, my environments are really designed for my interpreter - they suffer from all sorts of shortcomings for compilation - I see that now. 2014-09-03T03:31:18Z beach: I am not talking about the runtime environment. Only the environments involved in compilation. 2014-09-03T03:31:22Z killmaster quit (Ping timeout: 240 seconds) 2014-09-03T03:31:49Z drmeister: Yes. But here's how I see this working from my end... 2014-09-03T03:32:09Z killmaster joined #lisp 2014-09-03T03:32:46Z drmeister: I have an interpreter and a compiler that generates fairly poor code but it boots Common Lisp and CLOS. I would then load the SICL compiler and use that to recompile everything again. 2014-09-03T03:33:28Z drmeister: SICL depends on CLOS. My compiler doesn't. I can't get CLOS running without my compiler. 2014-09-03T03:33:49Z vydd joined #lisp 2014-09-03T03:33:49Z vydd quit (Changing host) 2014-09-03T03:33:49Z vydd joined #lisp 2014-09-03T03:33:50Z drmeister: Does that sound reasonable? 2014-09-03T03:34:39Z beach: Almost. 2014-09-03T03:34:46Z drmeister: What's missing/wrong? 2014-09-03T03:36:33Z beach: The SICL compiler will be SICL specific. You would want to use Cleavir and customize it. You would then write methods to access your environment so that Cleavir can turn your forms into ASTs. Then Cleavir will turn the AST into MIR. You can then choose what optimizations you want to do on MIR by calling Cleavir functions to do things like SSA, value numbering, common subexpression elimination, you name it. 2014-09-03T03:37:09Z dlowe quit (Ping timeout: 272 seconds) 2014-09-03T03:37:11Z beach: Finally, you would call Cleavir functions to generate native code, and those will again have to be customized for your calling conventions, register usage, etc. 2014-09-03T03:37:57Z vydd quit (Ping timeout: 240 seconds) 2014-09-03T03:38:02Z nyef: Would there be an option for generating yet another representation from MIR instead of straight-up native code? 2014-09-03T03:38:16Z beach: nyef: Such as? 2014-09-03T03:38:37Z nyef: A bytecode of some sort would be the first thing that comes to mind. 2014-09-03T03:39:12Z beach: nyef: Oh, sure. But that won't be highest priority for me. I already do have a MIR interpreter, so that I can execute the MIR directly. 2014-09-03T03:39:22Z hiyosi quit (Ping timeout: 268 seconds) 2014-09-03T03:39:26Z Karl_Dscc joined #lisp 2014-09-03T03:39:58Z nyef: Oh, very nice! 2014-09-03T03:39:59Z beach: nyef: I am also thinking about a C backend. Any number of different backends are possible. 2014-09-03T03:42:13Z nyef: Will the compiler require CLOS in order to operate? 2014-09-03T03:42:16Z beach: I have actually done quite a lot already, but it is not yet well organized. Furthermore, I still need to convert a lot of code from being SICL specific to being implementation independent and customizable so that I can put it in Cleavir instead. 2014-09-03T03:42:20Z whmark joined #lisp 2014-09-03T03:42:25Z beach: nyef: Definitely. 2014-09-03T03:43:27Z alexander-01 joined #lisp 2014-09-03T03:43:28Z beach: nyef: It is already a lot of work to write an implementation-independent customizable compiler. I can't afford the additional work involved in depriving me of CLOS. 2014-09-03T03:44:02Z drmeister: Hmm, but my forms are just S-expressions in the top-level environment. The lexical environment only gets constructed as the forms are walked. Or do you mean the global/dynamic environment as well? 2014-09-03T03:44:22Z Karl_Dscc quit (Remote host closed the connection) 2014-09-03T03:44:39Z nyef: Fair enough. My only follow-on question from that is if your CLOS implementation will work in such a regime? I know that one of the issues with SBCL is that the CLOS stuff depends on the compiler for doing various things even at runtime. 2014-09-03T03:46:24Z beach: drmeister: Technically, forms are s-expressions in the compilation environment, which is one global environment. But I don't want to make any assumptions about how that environment is accessed. 2014-09-03T03:47:00Z drmeister: I have similar issues with CLOS. That's why I think I'll have to keep my current compiler and load/run the SICL compiler on top of it. 2014-09-03T03:47:33Z pjb: drmeister: You need to set *print-right-margin* to a lower number of columns (eg 72 or 80, sometimes 60 or 40). 2014-09-03T03:47:40Z pjb: drmeister: for pprinting of code. 2014-09-03T03:48:36Z drmeister: You have a better perspective on it than I do. Once you know what the environment accessing generic functions look like I'd love to see that. I would then know how I'll have to modify/implement environments to support them. 2014-09-03T03:48:37Z beach: nyef: Yes, I see what you mean. Normally, running the compiler should not have to invoke the MOP machinery, but I don't have a proof for that. 2014-09-03T03:48:43Z drmeister: Will it look like the Franz proposal? 2014-09-03T03:49:00Z beach: drmeister: The environment functions? No. 2014-09-03T03:49:08Z beach: drmeister: It will be more CLOSy. 2014-09-03T03:49:19Z drmeister: Fair enough. 2014-09-03T03:49:37Z drmeister: Well if you have a piece that you would like me to write just say the word. 2014-09-03T03:50:09Z beach: drmeister: I'll keep it in mind. I haven't really thought about that possibility, but since you offer, I might start thinking in such terms. 2014-09-03T03:50:41Z drmeister: And then I guess I would write an LLVM backend. Will there still be issues with mapping to SSA or are there simple work arounds for the capture problems you were describing last night? 2014-09-03T03:52:45Z alexander-01 quit (Ping timeout: 264 seconds) 2014-09-03T03:53:05Z beach: drmeister: The Cleavir stuff would be a CL-adapted version of LLVM. I know of no workarounds for the fact that some variables can not be SSA. I don't know LLVM, though. Can it handle nested functions and closures correctly? 2014-09-03T03:53:29Z drmeister: I'm doing it now. 2014-09-03T03:54:08Z drmeister: Do you mean FUNCTION within FUNCTION? 2014-09-03T03:54:41Z beach: I mean things like (let ((x ...)) (f (lambda () (incf x)))) 2014-09-03T03:55:12Z drmeister: I'm a little less exhausted. Let me stare at that for a few minutes to try and divine it's meaning and what problems it might cause. 2014-09-03T03:55:24Z nyef: IIRC, that requires "interprocedural" SSA. 2014-09-03T03:55:36Z beach: None of the compiler papers/books I have read take such situations into account. They basically assume that you are compiling C. 2014-09-03T03:55:57Z beach: nyef: Oh, do you have any links to that? 2014-09-03T03:56:29Z nyef: Not offhand, it's been a while since I was doing my own research dive into SSA. 2014-09-03T03:56:44Z beach: nyef: Never mind. I found some links to start with. 2014-09-03T03:56:46Z beach: Thanks! 2014-09-03T03:56:52Z nyef: And I have a terrible habit of not keeping track of references. 2014-09-03T03:57:03Z kushal joined #lisp 2014-09-03T03:57:12Z nyef: No problem. Sometimes a search term is enough to get one un-stuck. 2014-09-03T03:57:22Z beach: Yeah, what would be the point? They can always be searched for again. 2014-09-03T03:58:32Z drmeister: Well, I just typed the following into my compiler: (defun f (fn) (funcall fn)) (let ((x 1)) (f (lambda () (incf x)))) --> 2 2014-09-03T03:59:08Z beach: drmeister: That's an easy one. 2014-09-03T03:59:13Z drmeister: If you put values into memory then SSA works with them just fine. 2014-09-03T03:59:54Z drmeister: Registers are tricky (of course) and you need phi-nodes to deal with different branches coming together. 2014-09-03T04:00:10Z beach: Try (defvar *f*) (defun f (fn) (setf *f* fn)) (let ((x 1)) ....) and then (funcall *f*) (funcall *f*) 2014-09-03T04:00:33Z nyef: Oh! That reminds me. Please, please, please tell me that you have barriers (compiler, read, write, and data-dependency) in Cleavir? 2014-09-03T04:00:44Z Bike: what's a compiler barrier? 2014-09-03T04:01:11Z nyef: Bike: The compiler isn't allowed to move code (including variable references) across the barrier. 2014-09-03T04:01:23Z Bike: huh, where is that used? 2014-09-03T04:01:25Z nyef: It's like a read or write barrier, only without the barrier instruction. 2014-09-03T04:01:31Z beach: nyef: Not yet. Cleavir is far from being done. 2014-09-03T04:02:00Z Bike: Ohhhhh. 2014-09-03T04:02:11Z nyef: I'm... not actually sure what the scenario is for the compiler barrier. The rest I mostly have an idea about, at least. 2014-09-03T04:02:29Z drmeister: What should go in the (let ((x 1)) ...) ellipsis? 2014-09-03T04:02:52Z beach: drmeister: (f (lambda () (incf x))) as before. 2014-09-03T04:03:48Z beach: drmeister: As I wrote in the new version of the Cleavir specification, I can't see how X can be SSAed here while respecting the CL semantics. 2014-09-03T04:04:17Z drmeister: (funcall *f*) --> 2 (funcall *f*) --> 3 2014-09-03T04:04:20Z beach: drmeister: So either the example works, and X is not SSAed, or it doesn't work. 2014-09-03T04:04:37Z pjb: - 2014-09-03T04:04:41Z beach: drmeister: I would like to see that SSA conversion then. 2014-09-03T04:05:05Z drmeister: That's the thing. All my variables are in activation frames. If I know what can go in SSA registers and what cannot then it's not a problem. 2014-09-03T04:05:16Z drmeister: I know how to write shitty compilers. 2014-09-03T04:05:42Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-03T04:05:49Z beach: I do too, but I am more interested in writing good ones. 2014-09-03T04:05:56Z nyef: Writing a shitty compiler is fairly straightforward. Writing a Sufficiently Smart Compiler is a lot harder. 2014-09-03T04:06:00Z drmeister: Ditto. 2014-09-03T04:06:09Z hiyosi joined #lisp 2014-09-03T04:06:33Z beach: https://tspace.library.utoronto.ca/bitstream/1807/27573/6/Calman_Silvian_201103_PhD_thesis.pdf might be a start. It is recent, too! 2014-09-03T04:07:25Z theos quit (Quit: i will be back...nvm) 2014-09-03T04:08:20Z drmeister: Here's another thing. LLVM has a mem2reg optimization pass. 2014-09-03T04:09:08Z jleija quit (Quit: leaving) 2014-09-03T04:09:31Z beach: Sounds reasonable. 2014-09-03T04:09:44Z drmeister: If I know which bindings I can put on the stack and which I need to put on the heap then I would alloca everything that needs to be on the stack within the stack frame. I would then add the mem2reg pass to the function pass optimizer and it would decide which variables can go into registers and which need to stay in the stack frame. 2014-09-03T04:09:47Z mouse_ joined #lisp 2014-09-03T04:10:12Z Zhivago: Remember that alloca isn't standard. 2014-09-03T04:10:19Z drmeister: It is in LLVM. 2014-09-03T04:10:24Z Zhivago: Fair enough. 2014-09-03T04:10:40Z drmeister: There are a lot of other optimization passes provided by the LLVM library. 2014-09-03T04:11:02Z hiyosi quit (Ping timeout: 276 seconds) 2014-09-03T04:12:12Z drmeister: That's why I didn't think this would be such a big job. I know LLVM pretty well. It seems to me that I could take the MIR at a very early stage and transform it into LLVM-IR/SSA and then instruct LLVM to optimize and lower it the rest of the way to the silicon. 2014-09-03T04:13:00Z MouseTheLuckyDog quit (Ping timeout: 252 seconds) 2014-09-03T04:13:25Z drmeister: What LLVM doesn't do is the language level optimizations. 2014-09-03T04:13:43Z beach: drmeister: With that scenario, it sounds like you could translate the Cleavir MIR to LLVM-IR and let LLVM do the rest. 2014-09-03T04:14:11Z drmeister: That was what I was thinking. 2014-09-03T04:14:53Z mouse_ quit (Read error: Connection reset by peer) 2014-09-03T04:14:57Z beach: I already have a conservative algorithm for determining what variables must go in the static runtime environment. 2014-09-03T04:15:43Z beach: Basically, it finds every captured variable. 2014-09-03T04:16:23Z drmeister: I would love to learn how it works and incorporate it into Clasp. 2014-09-03T04:16:53Z drmeister: I would undoubtedly achieve the first as I carried out the second. 2014-09-03T04:16:58Z beach: In my email, I told you where to find it. It is still in the form of comments in one of the SICL files. 2014-09-03T04:17:30Z drmeister: Yes, and I started rummaging around in SICL. It is very pretty code. 2014-09-03T04:17:39Z beach: Thanks! 2014-09-03T04:19:41Z drmeister: The other thing about interprocedural SSA... Is that for inlining and open-coding? 2014-09-03T04:20:25Z beach: I don't know. I just learned about it. But if you inline nested functions, the problem goes away. 2014-09-03T04:21:02Z drmeister: LLVM also does inlining as an optimization pass. It also has tail-calls. Does Cleavir identify tail-calls? 2014-09-03T04:21:28Z beach: Yes. I consider that an absolute necessity. 2014-09-03T04:21:36Z drmeister: Great. 2014-09-03T04:21:46Z beach: Cleavir MIR has a TAILCALL instruction. 2014-09-03T04:22:27Z drmeister: Can they be turned off for debugging? Do you just use a regular call and a return if you don't want tailcalls? They do mess up back-traces don't they? 2014-09-03T04:23:58Z beach: They do yes. It would not be hard to turn off, but again Cleavir is far from being finished. Turning off tail calls is not highest priority right now. 2014-09-03T04:24:32Z drmeister: Fair enough. I'll keep that in mind. 2014-09-03T04:25:07Z yoyoyoyo joined #lisp 2014-09-03T04:25:46Z drmeister: Do you have any provisions for tracking source code information? I generate DWARF debugging information and I put a lot of work into keeping track of what generated code comes from what source file/lineno/column. I think it's important to make Lisp more debuggable. 2014-09-03T04:26:55Z beach: Oh, I fully agree. I have bits and pieces of it. I also have a lot of code that I thought would work, but then I abandoned it. 2014-09-03T04:28:22Z drmeister: I've been through the same thing. I currently map S-expressions to source info in a hash-table and then lookup the source-info in the compiler. I could probably map AST nodes to the source info of the S-expressions that generate the AST nodes. 2014-09-03T04:28:45Z mouse_ joined #lisp 2014-09-03T04:29:29Z beach: Yes. I am thinking each AST node and each MIR instruction should have a slot for source info. But each implementation would have to put things in there that correspond to how that particular implementation does it. 2014-09-03T04:30:50Z beach: I also track correspondence between different SSA versions of a variable and the original one, so that the debugger can show information in terms of the original code. 2014-09-03T04:31:16Z drmeister: Yeah, that's why I like using hash-tables or weak-hash-tables, they don't pollute the implementation. This is really great, I'm getting excited again. I was a bit down in the dumps last week feeling way out of my depth. It's definitely looking up. 2014-09-03T04:33:04Z drmeister: I plan to present Clasp at the LLVM meeting at the end of October. This is looking like a great plan to incorporate a better compiler I'll feel better about it. 2014-09-03T04:33:05Z isoraqathedh quit (Ping timeout: 260 seconds) 2014-09-03T04:34:11Z drmeister: I better get to bed. 2014-09-03T04:34:24Z beach: Sleep well. 2014-09-03T04:34:31Z drmeister: beach - thank you, thank you very much. 2014-09-03T04:34:56Z nyef: I, too, had best to bed away. 2014-09-03T04:34:58Z beach: Hmm, ISSA may not be about nested functions. :( 2014-09-03T04:35:05Z nyef quit (Quit: Sleep well, all.) 2014-09-03T04:36:45Z nate_c quit (Ping timeout: 255 seconds) 2014-09-03T04:39:26Z Vlx joined #lisp 2014-09-03T04:41:29Z isoraqathedh joined #lisp 2014-09-03T04:47:54Z resttime joined #lisp 2014-09-03T04:49:15Z innertracks quit (Quit: innertracks) 2014-09-03T04:52:45Z kushal quit (Ping timeout: 268 seconds) 2014-09-03T04:52:45Z Rotacidni quit (Ping timeout: 272 seconds) 2014-09-03T04:53:09Z tajjada quit (Ping timeout: 272 seconds) 2014-09-03T04:54:18Z tajjada joined #lisp 2014-09-03T04:58:23Z cy quit (Quit: :q!) 2014-09-03T04:58:29Z Vlx quit (Ping timeout: 276 seconds) 2014-09-03T05:00:07Z beach: Time to get to work. 2014-09-03T05:00:10Z beach left #lisp 2014-09-03T05:00:15Z Vlx joined #lisp 2014-09-03T05:05:05Z Jesin quit (Excess Flood) 2014-09-03T05:06:01Z Jesin joined #lisp 2014-09-03T05:06:53Z hiyosi joined #lisp 2014-09-03T05:08:53Z banjara quit (Quit: Leaving.) 2014-09-03T05:11:46Z hiyosi quit (Ping timeout: 272 seconds) 2014-09-03T05:13:41Z mr-foobar quit (Quit: Leaving...) 2014-09-03T05:18:23Z drmeister: If I want to make Common Lisp less shouty and display everything in lower-case that it currently prints in upper-case how do I do that? Is it all in the read-table-case? 2014-09-03T05:19:46Z Bike: *print-case*, maybe? 2014-09-03T05:20:01Z drmeister: *print-case* - yes, thank you. 2014-09-03T05:21:51Z DrCode quit (Ping timeout: 264 seconds) 2014-09-03T05:23:44Z tomal joined #lisp 2014-09-03T05:23:52Z Vlx quit (Ping timeout: 240 seconds) 2014-09-03T05:25:47Z yoyoyoyo quit (Quit: Page closed) 2014-09-03T05:27:50Z frkout_ quit (Remote host closed the connection) 2014-09-03T05:28:16Z frkout joined #lisp 2014-09-03T05:28:47Z theos joined #lisp 2014-09-03T05:29:41Z davorb joined #lisp 2014-09-03T05:29:59Z tomal quit (Quit: Konversation terminated!) 2014-09-03T05:31:26Z przl joined #lisp 2014-09-03T05:32:46Z DrCode joined #lisp 2014-09-03T05:33:00Z davorb1 quit (Ping timeout: 246 seconds) 2014-09-03T05:34:33Z sdemarre joined #lisp 2014-09-03T05:39:19Z yacks quit (Quit: Leaving) 2014-09-03T05:39:24Z isoraqathedh quit (Quit: No Ping reply in 180 seconds.) 2014-09-03T05:39:33Z ASau quit (Ping timeout: 240 seconds) 2014-09-03T05:39:49Z isoraqathedh joined #lisp 2014-09-03T05:39:56Z ASau` joined #lisp 2014-09-03T05:42:40Z vinleod joined #lisp 2014-09-03T05:44:19Z bdr3553 joined #lisp 2014-09-03T05:44:52Z sdemarre quit (Ping timeout: 245 seconds) 2014-09-03T05:45:25Z tajjada quit (Ping timeout: 260 seconds) 2014-09-03T05:46:35Z bdr3552 quit (Ping timeout: 276 seconds) 2014-09-03T05:59:52Z bdr3552 joined #lisp 2014-09-03T06:01:22Z mishoo joined #lisp 2014-09-03T06:02:26Z pranavrc joined #lisp 2014-09-03T06:02:26Z pranavrc quit (Changing host) 2014-09-03T06:02:26Z pranavrc joined #lisp 2014-09-03T06:03:22Z bdr3553 quit (Ping timeout: 240 seconds) 2014-09-03T06:07:49Z hiyosi joined #lisp 2014-09-03T06:08:04Z sigjuice joined #lisp 2014-09-03T06:11:25Z mr-foobar joined #lisp 2014-09-03T06:12:22Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-03T06:16:18Z edgar-rft joined #lisp 2014-09-03T06:18:05Z zarul quit (Ping timeout: 260 seconds) 2014-09-03T06:18:52Z kcj joined #lisp 2014-09-03T06:19:24Z yacks joined #lisp 2014-09-03T06:19:40Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-03T06:20:38Z patbarron joined #lisp 2014-09-03T06:21:02Z bdr3552 quit (Ping timeout: 260 seconds) 2014-09-03T06:23:32Z zophy quit (Ping timeout: 245 seconds) 2014-09-03T06:25:52Z pranavrc quit (Ping timeout: 240 seconds) 2014-09-03T06:26:27Z pranavrc joined #lisp 2014-09-03T06:26:27Z pranavrc quit (Changing host) 2014-09-03T06:26:27Z pranavrc joined #lisp 2014-09-03T06:27:46Z yakcc quit (Quit: rcirc on GNU Emacs 24.3.1) 2014-09-03T06:28:15Z patbarron quit (Quit: Exiting HexChat) 2014-09-03T06:29:47Z przl quit (Ping timeout: 245 seconds) 2014-09-03T06:31:32Z ASau` is now known as ASau 2014-09-03T06:31:41Z zarul joined #lisp 2014-09-03T06:31:41Z przl joined #lisp 2014-09-03T06:32:38Z pt1 joined #lisp 2014-09-03T06:38:14Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-03T06:38:19Z Mon_Ouie joined #lisp 2014-09-03T06:38:19Z Mon_Ouie quit (Changing host) 2014-09-03T06:38:19Z Mon_Ouie joined #lisp 2014-09-03T06:38:35Z nell joined #lisp 2014-09-03T06:40:07Z bdr3552 joined #lisp 2014-09-03T06:40:53Z mouse__ joined #lisp 2014-09-03T06:42:30Z przl quit (Ping timeout: 260 seconds) 2014-09-03T06:42:36Z Jesin quit (Ping timeout: 252 seconds) 2014-09-03T06:43:37Z schoppenhauer quit (Ping timeout: 245 seconds) 2014-09-03T06:44:26Z mouse_ quit (Ping timeout: 252 seconds) 2014-09-03T06:45:00Z Jesin joined #lisp 2014-09-03T06:45:32Z mouse__ quit (Ping timeout: 252 seconds) 2014-09-03T06:46:29Z nand1 joined #lisp 2014-09-03T06:49:21Z schoppenhauer joined #lisp 2014-09-03T06:50:17Z pgomes joined #lisp 2014-09-03T06:51:26Z xificurC joined #lisp 2014-09-03T06:51:33Z pgomes quit (Client Quit) 2014-09-03T06:57:17Z Vutral quit (Ping timeout: 260 seconds) 2014-09-03T06:57:35Z frkout_ joined #lisp 2014-09-03T06:57:50Z mouse__ joined #lisp 2014-09-03T07:00:09Z defaultxr quit (Quit: gnight) 2014-09-03T07:01:08Z Vutral joined #lisp 2014-09-03T07:01:09Z frkout quit (Ping timeout: 264 seconds) 2014-09-03T07:02:06Z GGMethos quit (Quit: WeeChat 1.1-dev) 2014-09-03T07:04:23Z Cymew joined #lisp 2014-09-03T07:05:41Z GGMethos joined #lisp 2014-09-03T07:07:25Z ehu joined #lisp 2014-09-03T07:08:34Z hiyosi joined #lisp 2014-09-03T07:13:37Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-03T07:14:20Z vinleod quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-03T07:15:57Z zRecursive quit (Remote host closed the connection) 2014-09-03T07:16:17Z zacharias quit (Ping timeout: 272 seconds) 2014-09-03T07:20:10Z mvilleneuve joined #lisp 2014-09-03T07:22:45Z Jesin quit (Ping timeout: 240 seconds) 2014-09-03T07:24:03Z ggole joined #lisp 2014-09-03T07:26:10Z arenz joined #lisp 2014-09-03T07:26:45Z bit` quit (Ping timeout: 240 seconds) 2014-09-03T07:27:46Z ASau quit (Ping timeout: 260 seconds) 2014-09-03T07:27:58Z rszeno joined #lisp 2014-09-03T07:31:24Z resttime quit (Quit: resttime) 2014-09-03T07:31:45Z Jesin joined #lisp 2014-09-03T07:32:54Z przl joined #lisp 2014-09-03T07:36:49Z vydd joined #lisp 2014-09-03T07:37:07Z Jesin quit (Max SendQ exceeded) 2014-09-03T07:37:52Z OmegaAlpha quit (Ping timeout: 250 seconds) 2014-09-03T07:39:55Z Shinmera joined #lisp 2014-09-03T07:40:40Z Jesin joined #lisp 2014-09-03T07:40:52Z vydd quit (Ping timeout: 240 seconds) 2014-09-03T07:41:28Z jusss joined #lisp 2014-09-03T07:41:47Z bit` joined #lisp 2014-09-03T07:45:48Z Beetny joined #lisp 2014-09-03T07:45:54Z kcj quit (Remote host closed the connection) 2014-09-03T07:47:35Z jtza8 joined #lisp 2014-09-03T07:49:21Z rszeno quit (Quit: Leaving.) 2014-09-03T07:57:12Z OmegaAlpha joined #lisp 2014-09-03T07:58:57Z theos quit (Ping timeout: 246 seconds) 2014-09-03T08:02:21Z theos joined #lisp 2014-09-03T08:07:19Z Harag joined #lisp 2014-09-03T08:09:27Z hiyosi joined #lisp 2014-09-03T08:14:24Z hiyosi quit (Ping timeout: 267 seconds) 2014-09-03T08:16:00Z tessier quit (Ping timeout: 250 seconds) 2014-09-03T08:16:03Z theos quit (Ping timeout: 272 seconds) 2014-09-03T08:16:26Z jasom quit (Ping timeout: 250 seconds) 2014-09-03T08:16:40Z BitPuffin joined #lisp 2014-09-03T08:16:56Z tessier joined #lisp 2014-09-03T08:17:23Z przl quit (Ping timeout: 276 seconds) 2014-09-03T08:17:36Z AeroNotix: https://github.com/sbcl/sbcl/blob/master/OPTIMIZATIONS why does this refer to Python a lot? 2014-09-03T08:19:25Z Shinmera: Because the compiler is called Python 2014-09-03T08:20:45Z AeroNotix: ooohh! 2014-09-03T08:21:00Z Shinmera: It is a frequent cause for confusion, yes. 2014-09-03T08:21:07Z AeroNotix: Indeed I was confused. 2014-09-03T08:21:38Z cmatei joined #lisp 2014-09-03T08:21:50Z alexey joined #lisp 2014-09-03T08:24:12Z jasom joined #lisp 2014-09-03T08:25:39Z Cymew: I seem to remember that cmucl had a motd message mentioning Python, as the compiler. 2014-09-03T08:25:58Z Cymew: "motd message", oh well... 2014-09-03T08:26:13Z Cymew: Threw me for a while 2014-09-03T08:26:15Z cmatei quit (Ping timeout: 246 seconds) 2014-09-03T08:26:57Z kcj joined #lisp 2014-09-03T08:27:21Z Guest12563 quit (Ping timeout: 260 seconds) 2014-09-03T08:27:28Z cmatei joined #lisp 2014-09-03T08:29:24Z BitPuffin quit (Ping timeout: 255 seconds) 2014-09-03T08:29:48Z Cymew: Look at that. I just say loaded subsystems 2014-09-03T08:31:07Z xebd`` joined #lisp 2014-09-03T08:31:13Z xebd` quit (Read error: Connection reset by peer) 2014-09-03T08:31:33Z yacks quit (Ping timeout: 240 seconds) 2014-09-03T08:32:11Z smithzv joined #lisp 2014-09-03T08:32:21Z smithzv is now known as Guest37145 2014-09-03T08:32:41Z wizzo quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-03T08:32:50Z alexey quit (Remote host closed the connection) 2014-09-03T08:33:45Z theos joined #lisp 2014-09-03T08:34:19Z stepnem joined #lisp 2014-09-03T08:34:55Z wizzo joined #lisp 2014-09-03T08:34:58Z jasom quit (Ping timeout: 260 seconds) 2014-09-03T08:35:28Z jasom joined #lisp 2014-09-03T08:35:36Z bdr3552 quit (Remote host closed the connection) 2014-09-03T08:37:24Z vydd joined #lisp 2014-09-03T08:37:24Z vydd quit (Changing host) 2014-09-03T08:37:24Z vydd joined #lisp 2014-09-03T08:39:15Z Vivitron quit (Read error: Connection reset by peer) 2014-09-03T08:39:28Z Vivitron joined #lisp 2014-09-03T08:41:49Z vydd quit (Ping timeout: 260 seconds) 2014-09-03T08:43:47Z c74d quit (Killed (hobana.freenode.net (Nickname regained by services))) 2014-09-03T08:45:04Z Jesin quit (Ping timeout: 252 seconds) 2014-09-03T08:45:30Z c74d joined #lisp 2014-09-03T08:45:38Z frkout_ quit (Remote host closed the connection) 2014-09-03T08:46:05Z frkout joined #lisp 2014-09-03T08:46:28Z jtza8 quit (Ping timeout: 272 seconds) 2014-09-03T08:46:41Z Jesin joined #lisp 2014-09-03T08:48:05Z sid_cypher quit (Remote host closed the connection) 2014-09-03T08:48:41Z Jesin quit (Max SendQ exceeded) 2014-09-03T08:52:01Z ggole quit (Ping timeout: 268 seconds) 2014-09-03T08:52:18Z yacks joined #lisp 2014-09-03T08:52:25Z ggole joined #lisp 2014-09-03T08:54:06Z kcj quit (Remote host closed the connection) 2014-09-03T08:59:03Z mr-foobar quit (Quit: Leaving...) 2014-09-03T09:04:54Z zacharias joined #lisp 2014-09-03T09:06:00Z _d3f quit (Remote host closed the connection) 2014-09-03T09:06:52Z przl joined #lisp 2014-09-03T09:08:09Z capitaomorte quit (Quit: Temalogo) 2014-09-03T09:09:49Z theos quit (Remote host closed the connection) 2014-09-03T09:10:01Z luis quit (Quit: ZNC - http://znc.sourceforge.net) 2014-09-03T09:10:08Z luis joined #lisp 2014-09-03T09:10:11Z hiyosi joined #lisp 2014-09-03T09:11:03Z luis quit (Client Quit) 2014-09-03T09:13:29Z varjag joined #lisp 2014-09-03T09:13:41Z capitaomorte joined #lisp 2014-09-03T09:14:18Z luis joined #lisp 2014-09-03T09:14:45Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-03T09:16:13Z wasamasa: Shinmera: do you know why that's the case? 2014-09-03T09:16:39Z Shinmera: wasamasa: Because things have names 2014-09-03T09:16:54Z wasamasa: no, I mean, does said compiler precede python as a language? 2014-09-03T09:17:18Z zophy joined #lisp 2014-09-03T09:17:30Z Shinmera: Well CMUCL has been around since the 1980s 2014-09-03T09:17:43Z wasamasa: I take that as a yes 2014-09-03T09:17:58Z Shinmera: I can't say either way, but I would guess it does. 2014-09-03T09:18:23Z capitaomorte left #lisp 2014-09-03T09:20:06Z wasamasa: since python's been invented in 1998 IIRC 2014-09-03T09:20:19Z Shinmera: 1991 according to wikipedia 2014-09-03T09:20:30Z wasamasa: hum 2014-09-03T09:20:33Z przl quit (Ping timeout: 260 seconds) 2014-09-03T09:20:43Z wasamasa: well, it only gained substantial popularity in the 2000s 2014-09-03T09:21:29Z Vutral quit (Ping timeout: 260 seconds) 2014-09-03T09:21:56Z zophy quit (Ping timeout: 272 seconds) 2014-09-03T09:22:16Z przl joined #lisp 2014-09-03T09:22:47Z capitaomorte joined #lisp 2014-09-03T09:25:12Z loke: What is the most efficient way to copy a subarray into another array? (analogous to Java's System.arraycopy() or C memmove()). 2014-09-03T09:25:37Z loke: Right now I LOOP and (setf aref) which is probably not the most efficient way 2014-09-03T09:26:13Z Zhivago: Is the subarray a vector? 2014-09-03T09:26:28Z loke: Zhivago: Yes. But it's adjutsable 2014-09-03T09:27:22Z loke: Note that the copy is within a single array. I'm not copying between array 2014-09-03T09:27:25Z loke: s 2014-09-03T09:28:01Z Zhivago: You might find that row-major-aref is a bit faster. 2014-09-03T09:28:41Z Zhivago: Otherwise, you could try using a displaced array and setf subseq if you have a sufficiently intelligent compiler. 2014-09-03T09:28:49Z Zhivago: Although I doubt that you do. :) 2014-09-03T09:28:52Z loke: I have SBCL 2014-09-03T09:29:06Z loke: (but at least theoretically it's a generic library) 2014-09-03T09:29:07Z Zhivago: I don't think that it's quite that magical, but I might be out of date. 2014-09-03T09:29:11Z mr-foobar joined #lisp 2014-09-03T09:29:54Z Shinmera: I thought I heard that displaced arrays are really inefficient access-time wise 2014-09-03T09:30:10Z loke: This is a low-level library doing thread-safe sequences. This is an implementation of a queue which is implemented using a vector as back-end storage. The copy happens when the size has to be extended 2014-09-03T09:30:33Z loke: (now size extensions are obviously rare) 2014-09-03T09:31:01Z Zhivago: shinmera: Unless your compiler is sufficiently intelligent. :) 2014-09-03T09:31:10Z Shinmera: Zhivago: ofc, but we're talking SBCL 2014-09-03T09:31:18Z Zhivago: Sure, see above. 2014-09-03T09:33:08Z alexey joined #lisp 2014-09-03T09:34:02Z urandom__ joined #lisp 2014-09-03T09:35:07Z zophy joined #lisp 2014-09-03T09:37:15Z Vutral joined #lisp 2014-09-03T09:37:29Z zophy quit (Client Quit) 2014-09-03T09:37:52Z Vutral quit (Excess Flood) 2014-09-03T09:38:09Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-03T09:38:19Z vydd joined #lisp 2014-09-03T09:40:39Z karupa is now known as zz_karupa 2014-09-03T09:42:33Z vydd quit (Ping timeout: 246 seconds) 2014-09-03T09:48:26Z xebd`` is now known as xebd` 2014-09-03T09:49:20Z Shinmera quit (Quit: brb) 2014-09-03T09:49:59Z harish_ quit (Ping timeout: 268 seconds) 2014-09-03T09:51:38Z Vutral joined #lisp 2014-09-03T09:53:10Z alexey quit (Remote host closed the connection) 2014-09-03T09:53:18Z EvW joined #lisp 2014-09-03T09:53:33Z Harag quit (Quit: Harag) 2014-09-03T09:54:07Z Harag joined #lisp 2014-09-03T09:54:56Z przl_ joined #lisp 2014-09-03T09:55:12Z kushal joined #lisp 2014-09-03T09:56:47Z Shinmera joined #lisp 2014-09-03T09:57:15Z przl quit (Ping timeout: 246 seconds) 2014-09-03T09:57:16Z malice joined #lisp 2014-09-03T09:57:21Z attila_lendvai joined #lisp 2014-09-03T10:01:09Z BitPuffin joined #lisp 2014-09-03T10:04:01Z Vutral_ joined #lisp 2014-09-03T10:06:01Z przl_ quit (Ping timeout: 268 seconds) 2014-09-03T10:06:43Z przl joined #lisp 2014-09-03T10:11:03Z hiyosi joined #lisp 2014-09-03T10:15:16Z przl quit (Ping timeout: 252 seconds) 2014-09-03T10:15:37Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-03T10:17:52Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-03T10:18:26Z dmiles_afk joined #lisp 2014-09-03T10:18:44Z petrutrimbitas joined #lisp 2014-09-03T10:26:27Z alexander-01 joined #lisp 2014-09-03T10:28:22Z przl joined #lisp 2014-09-03T10:29:23Z malice: Is there a way to open a text file and automatically recognize its encoding? 2014-09-03T10:30:58Z stepnem quit (Ping timeout: 272 seconds) 2014-09-03T10:31:19Z stepnem_ joined #lisp 2014-09-03T10:31:28Z stepnem_ is now known as stepnem 2014-09-03T10:31:46Z alexander-01: I am having a problem getting emacs + slime + sbcl to work. I am using debian testing on linux deploy on my tablet. I have apt-get installed both emacs and slime and downlpaded the armhf binary for sbcl. I have edited the .emacs file but emacs and emacs + slime do not run properly. sbcl does work in the terminal though. any ideas on where to lok for info appreciated 2014-09-03T10:32:36Z wasamasa: "do not run properly" is a pretty weak description 2014-09-03T10:32:44Z Shinmera: alexander-01: don't get slime from the deb packages 2014-09-03T10:33:00Z Shinmera: alexander-01: get it either through quicklisp's slime-helper or through melpa/marmalade 2014-09-03T10:33:15Z vydd joined #lisp 2014-09-03T10:34:02Z loke: Are any of the CL log libraries worth using? 2014-09-03T10:34:15Z Shinmera: I like my own, but what are you looking for? 2014-09-03T10:34:22Z wasamasa: hehe 2014-09-03T10:34:36Z wasamasa: Shinmera: you did an irc library, right? 2014-09-03T10:34:52Z Shinmera: wasamasa: amongst other things. Not so much a library than a framework though. 2014-09-03T10:35:13Z loke: Shinmera: Nothing fancy. Building my own can be done within an hour of course, but if there is something other people use, then why not? 2014-09-03T10:35:40Z Shinmera: loke: Have a look then http://shinmera.github.io/verbose/ 2014-09-03T10:36:04Z loke: Shinmera: It's in QL, good. 2014-09-03T10:36:12Z Shinmera: loke: Otherwise I can recommend log4cl, though it might be a bit overboard if you don't want all the fancy features it has 2014-09-03T10:36:30Z alexander-01: Shimera: I have tried using quicklisp-slime-helper it didnt wprk either same problem .. it shows sbcl being loaded but anything entered does not run 2014-09-03T10:36:42Z wasamasa: Shinmera: yeah, I considered using it for writing an irc bot 2014-09-03T10:36:55Z loke: wasamasa: I used CL-IRC for my ircbot 2014-09-03T10:36:57Z loke: worked fine 2014-09-03T10:37:05Z wasamasa: Shinmera: the other one I've seen was cl-irc 2014-09-03T10:37:18Z Shinmera: wasamasa: I still haven't gotten around to writing better docs for it, but if you do end up trying it, let me know about anything and I'll see if I can help out. 2014-09-03T10:37:26Z loke: alexander-01: Show us what you have in .emacs 2014-09-03T10:37:28Z wasamasa: Shinmera: did you write it because you were unsatisfied with cl-irc or just out of fun? 2014-09-03T10:38:04Z alexander-01: k just a min 2014-09-03T10:38:04Z Shinmera: wasamasa: I couldn't get cl-irc to run, went with trivial-irc. That got to piss me off, so I wrote my own lib and turned it into a framework, because I like frameworks. 2014-09-03T10:39:43Z wasamasa: Shinmera: I see, thanks 2014-09-03T10:39:58Z wasamasa: Shinmera: would prefer using a library which doesn't require me to sign up on a mailing list for support :P 2014-09-03T10:40:20Z Shinmera: wasamasa: I don't do mailing lists, I'm just offering my help if anything bugs you 2014-09-03T10:40:28Z Shinmera: wasamasa: Because feedback is good. 2014-09-03T10:40:34Z wasamasa: Shinmera: yeah, the mailing list bit was about cl-irc 2014-09-03T10:40:40Z Shinmera: wasamasa: ah, I see. 2014-09-03T10:41:50Z alexander-01: pastebin.com/7EcAu1VR 2014-09-03T10:42:24Z Mon_Ouie quit (Ping timeout: 246 seconds) 2014-09-03T10:43:34Z H4ns: alexander-01: when you install quicklisp-slime-helper, it displays instructions as to what to put into your .emacs 2014-09-03T10:43:45Z H4ns: alexander-01: remove what you have and use what the instructions say. 2014-09-03T10:43:58Z matija quit (Quit: internet timeout) 2014-09-03T10:44:32Z H4ns: alexander-01: it is best to completely ignore everything that your operating system thinks about common lisp. if you see "/usr/share/common-lisp/", think "this is wrong, i need to stop using it" 2014-09-03T10:45:33Z alexander-01: H4ns: I have tried two methods both result in the same error. I have already tried using quicklisp . ;p on what I know:) 2014-09-03T10:46:03Z H4ns: alexander-01: try again. it works very well. 2014-09-03T10:46:16Z H4ns: alexander-01: what you have in your .emacs does not, though. remove that. 2014-09-03T10:47:48Z ``Erik_ is now known as ``Erik 2014-09-03T10:48:47Z alexander-01: I'm going to try again with quicklisp the other idea of using apt-get install slime 2014-09-03T10:49:59Z H4ns: alexander-01: please do not use apt-get to install slime. 2014-09-03T10:50:02Z alexander-01: doh was going to say that sbcl doesnt work in emacs without using slime at all .. maybe its not a slime problem 2014-09-03T10:50:18Z H4ns: alexander-01: what do you mean by "work in emacs"? 2014-09-03T10:51:15Z alexander-01: If I use sbcl in termonal it works .. if I try either emacs or emacs + slime no good 2014-09-03T10:52:30Z H4ns: alexander-01: are you looking for support? then please try to describe your problems in detail. "no good" and "does not work" are no good ways to describe a problem. 2014-09-03T10:53:52Z przl quit (Ping timeout: 240 seconds) 2014-09-03T10:54:44Z alexander-01: when I alt x and type slime it does what it supposed to do when I enter something like (+ 2 3) and press enter it hangs and does nothing further the debugger gives two options both return to the hung screen 2014-09-03T10:55:38Z H4ns: alexander-01: very well. did you install slime using (ql:quickload :quicklisp-slime-helper), follow the instructions as to what to put into your .emacs file and restart emacs? 2014-09-03T10:57:00Z Mon_Ouie joined #lisp 2014-09-03T10:57:04Z alexander-01: I have tried apt-get install emacs + slime then removed slime and ql:quickloaded slime and followed the instructions 2014-09-03T10:57:33Z H4ns: what's in your .emacs now? 2014-09-03T10:57:47Z H4ns: and what is the error that you see? 2014-09-03T10:58:06Z alexander-01: there is the (load (... for ql:quickload which I entered when I installed it 2014-09-03T10:58:24Z H4ns: and the error? 2014-09-03T11:01:26Z alexander-01: H4ns: no error unless I ctrl c a few times checking now 2014-09-03T11:01:54Z H4ns: look at your *inferior-lisp* buffer 2014-09-03T11:02:07Z echo-area quit (Remote host closed the connection) 2014-09-03T11:02:10Z alexander-01: Condition of type sim[le error 2014-09-03T11:02:23Z endou__ quit (Ping timeout: 272 seconds) 2014-09-03T11:02:32Z H4ns: please do not type in the error. copy and paste it to paste.lisp.org 2014-09-03T11:02:42Z H4ns: the complete error message. not just the first line. 2014-09-03T11:02:45Z ehu_ joined #lisp 2014-09-03T11:03:01Z sytse quit (Ping timeout: 272 seconds) 2014-09-03T11:03:23Z alexander-01: not so easy no graphical interface 2014-09-03T11:03:38Z H4ns: alexander-01: why? 2014-09-03T11:03:40Z josteink quit (Ping timeout: 272 seconds) 2014-09-03T11:04:04Z alexander-01: minimal linux running on a tablet 2014-09-03T11:04:21Z endou__ joined #lisp 2014-09-03T11:04:27Z alexander-01: Linux deploy using debian testing 2014-09-03T11:04:27Z ehu quit (Ping timeout: 246 seconds) 2014-09-03T11:04:33Z H4ns: alexander-01: that is not a proper tool. i'm sorry. 2014-09-03T11:04:46Z alexander-01: Only want the lisp 2014-09-03T11:04:58Z wasamasa: one can paste stuff with curl :P 2014-09-03T11:05:04Z alexander-01: take it to work 2014-09-03T11:05:09Z wasamasa: `curl ix.io` 2014-09-03T11:06:59Z josteink joined #lisp 2014-09-03T11:07:38Z jtza8 joined #lisp 2014-09-03T11:09:09Z theos joined #lisp 2014-09-03T11:10:40Z AndChat|374100 joined #lisp 2014-09-03T11:10:40Z alexander-01 quit (Read error: Connection reset by peer) 2014-09-03T11:11:52Z hiyosi joined #lisp 2014-09-03T11:13:34Z AndChat|374100: H4ns: thanks for the help I appreciate it sorry for mucking you around 2014-09-03T11:17:11Z hiyosi quit (Ping timeout: 272 seconds) 2014-09-03T11:19:43Z CrazyEddy joined #lisp 2014-09-03T11:21:04Z gravicappa joined #lisp 2014-09-03T11:23:01Z YDJX joined #lisp 2014-09-03T11:27:09Z sytse joined #lisp 2014-09-03T11:27:10Z varjag quit (Quit: Connection closed for inactivity) 2014-09-03T11:27:46Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-03T11:28:48Z petrutrimbitas joined #lisp 2014-09-03T11:30:26Z attila_lendvai quit (Ping timeout: 260 seconds) 2014-09-03T11:34:27Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-03T11:37:36Z oleo joined #lisp 2014-09-03T11:39:08Z oleo__ quit (Ping timeout: 268 seconds) 2014-09-03T11:39:12Z Vivitron quit (Read error: Connection reset by peer) 2014-09-03T11:39:17Z davazp joined #lisp 2014-09-03T11:39:29Z Vivitron joined #lisp 2014-09-03T11:39:44Z AndChat|374100 quit (Ping timeout: 255 seconds) 2014-09-03T11:40:18Z knob joined #lisp 2014-09-03T11:41:24Z AdmiralBumbleBee quit (Ping timeout: 250 seconds) 2014-09-03T11:41:57Z stacksmith quit (Ping timeout: 260 seconds) 2014-09-03T11:49:49Z CrazyEddy joined #lisp 2014-09-03T11:50:27Z pjb` joined #lisp 2014-09-03T11:50:42Z przl joined #lisp 2014-09-03T11:51:42Z pjb quit (Ping timeout: 246 seconds) 2014-09-03T11:55:50Z przl quit (Ping timeout: 272 seconds) 2014-09-03T12:01:42Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-03T12:02:43Z pjb` is now known as pjb 2014-09-03T12:03:02Z Sgeo quit (Read error: Connection reset by peer) 2014-09-03T12:08:00Z przl joined #lisp 2014-09-03T12:08:16Z pjb: malice: have a look at: https://gitorious.org/com-informatimago/com-informatimago/source/d02bb0ea8009ffc236fef0c29c8e7d9739741c3c:tools/make-depends.lisp#L690 2014-09-03T12:10:18Z petrutrimbitas joined #lisp 2014-09-03T12:11:21Z pjb: malice: and the rest of the file of course. 2014-09-03T12:11:49Z yacks quit (Quit: Leaving) 2014-09-03T12:12:44Z hiyosi joined #lisp 2014-09-03T12:14:27Z fragamus quit (Ping timeout: 245 seconds) 2014-09-03T12:14:50Z przl_ joined #lisp 2014-09-03T12:15:37Z nyef joined #lisp 2014-09-03T12:15:45Z nyef: G'morning all. 2014-09-03T12:16:12Z Harag quit (Remote host closed the connection) 2014-09-03T12:16:16Z Longlius quit (Read error: Connection reset by peer) 2014-09-03T12:17:25Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-03T12:17:33Z przl quit (Ping timeout: 240 seconds) 2014-09-03T12:22:37Z TomRS joined #lisp 2014-09-03T12:23:31Z Harag joined #lisp 2014-09-03T12:26:12Z knob: Good morning nyef 2014-09-03T12:26:24Z knob: This article mentions lisp at the end... :) http://bjorn.tipling.com/if-programming-languages-were-weapons 2014-09-03T12:26:35Z wasamasa: yes it does 2014-09-03T12:27:44Z schoppenhauer: well. c++ may be powerful, but it is definitely not impressive. 2014-09-03T12:28:08Z wasamasa: also, where's haskell 2014-09-03T12:28:32Z schoppenhauer: When looking at the other stuff this person writes ... I wouldn't think he even knows about haskell. 2014-09-03T12:28:39Z nyef: C++ is impressive, in the "how on earth could they DO that?!?" sense. 2014-09-03T12:28:46Z Beetny quit (Ping timeout: 260 seconds) 2014-09-03T12:29:21Z tvaalen: And as Louie says, they just threw death and human suffering at it. 2014-09-03T12:31:24Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-03T12:34:01Z kobain joined #lisp 2014-09-03T12:35:33Z drmeister quit (Remote host closed the connection) 2014-09-03T12:35:38Z hugod is now known as hugod|away 2014-09-03T12:35:49Z hugod|away is now known as hugod 2014-09-03T12:38:49Z Shinmera: Yay, another article about programming languages by someone who doesn't know enough about programming languages. 2014-09-03T12:39:43Z Xach: DEATH TO WHIMSY 2014-09-03T12:40:27Z hlavaty left #lisp 2014-09-03T12:40:33Z hlavaty joined #lisp 2014-09-03T12:43:48Z hitecnologys joined #lisp 2014-09-03T12:45:50Z davazp quit (Ping timeout: 276 seconds) 2014-09-03T12:46:31Z drmeister joined #lisp 2014-09-03T12:48:26Z LiamH joined #lisp 2014-09-03T12:48:34Z Shinmera: DEATH TO CRITIQUE 2014-09-03T12:50:59Z chitofan joined #lisp 2014-09-03T12:53:30Z drmeister quit (Read error: Connection reset by peer) 2014-09-03T12:55:42Z drmeister joined #lisp 2014-09-03T12:57:10Z Xach wonders about the use of :+ and := in http://lisp-univ-etc.blogspot.com/2014/09/how-to-write-english-pos-tagger-with-cl.html 2014-09-03T12:58:03Z thierrygar joined #lisp 2014-09-03T12:58:44Z isoraqathedh: Wait, that seems improbable. 2014-09-03T12:59:06Z isoraqathedh: Unless there's some trickery going on, that's not a form that I'm familiar with. 2014-09-03T12:59:08Z Krystof: I have no minions! I am a slave to PRINCIPLES in any case 2014-09-03T12:59:43Z Xach: isoraqathedh: no trickery, just fbinding a keyword symbol. i do it often, but only for personal repl-oriented utilities, not for source code in files. 2014-09-03T12:59:54Z TomRS quit (Remote host closed the connection) 2014-09-03T13:00:03Z Xach: doing it in a library seems like an invitation for problems. doing it in an application seems fine, though. 2014-09-03T13:00:11Z Shinmera: What does the backquote reader macro do? 2014-09-03T13:00:14Z TomRS joined #lisp 2014-09-03T13:00:17Z Shinmera: as in #` 2014-09-03T13:00:19Z isoraqathedh: Creates lambdas, so I read. 2014-09-03T13:00:24Z isoraqathedh: anonymous functions (#`()). 2014-09-03T13:00:33Z yacks joined #lisp 2014-09-03T13:00:38Z nyef: ... Wha? 2014-09-03T13:00:43Z nyef: clhs #` 2014-09-03T13:00:43Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/02_dh.htm 2014-09-03T13:00:56Z Shinmera: nyef: I'm talking about the article Xach linked 2014-09-03T13:01:04Z nyef: Undefined. 2014-09-03T13:01:15Z Shinmera: Well I know it's not defined in the standard 2014-09-03T13:01:18Z Shinmera: hence why I'm asking 2014-09-03T13:01:24Z isoraqathedh: Seems like a borrowing from some other Lisp. 2014-09-03T13:01:28Z wasamasa: isoraqathedh: I think that's #' :P 2014-09-03T13:01:34Z nyef: Ah. Good grief. 2014-09-03T13:01:45Z isoraqathedh: No, it really is a backtick. 2014-09-03T13:01:46Z pt1_ joined #lisp 2014-09-03T13:01:54Z wasamasa: the one creating lambdas 2014-09-03T13:02:05Z nyef: wasamasa: #' wouldn't work there, as it's not taking a function-name as the following form. 2014-09-03T13:02:10Z isoraqathedh: #` → #'(lambda […]) 2014-09-03T13:02:11Z yeticry quit (Read error: Connection reset by peer) 2014-09-03T13:02:44Z Shinmera: Looks like it does something clojure-like 2014-09-03T13:02:58Z petrutrimbitas joined #lisp 2014-09-03T13:03:07Z nyef: isoraqathedh: Looks like it's (lambda (%) ...), possibly (lambda (&optional % %% %%% %%%%) (declare (ignorable % %% %%% %%%%)) ...) or similar. 2014-09-03T13:03:43Z Shinmera: I was wondering because it could've done some code walking to get rid of the := and replace them with other function calls or something. 2014-09-03T13:03:52Z Shinmera: But I guess not. 2014-09-03T13:04:01Z nyef: I'm trying to think if I've EVER seen # as part of a constituent before. 2014-09-03T13:04:13Z nyef: It's non-terminating, so legal, but definitely odd. 2014-09-03T13:04:41Z drmeister: nyef: I got pretty printing to work. Thanks for your help last night. 2014-09-03T13:04:49Z Shinmera: Xach: I'm using colon-prefixed function names in a macro of mine to differentiate them from the ordinary comparators and operators, but the macro transforms them away so they aren't actually fbound 2014-09-03T13:04:51Z nyef: drmeister: Congratulations. 2014-09-03T13:04:55Z Joreji joined #lisp 2014-09-03T13:05:01Z Shinmera: Xach: I agree that declaring functions on keywords is a bad idea 2014-09-03T13:05:02Z pt1 quit (Ping timeout: 252 seconds) 2014-09-03T13:05:10Z drmeister: I spent two years looking at ugly S-expressions. This is a real treat. 2014-09-03T13:05:12Z Xach: Shinmera: Agree with whom? I don't think it's a bad idea at all. 2014-09-03T13:05:27Z Xach: I do it all the time. 2014-09-03T13:05:32Z Shinmera: In a library I meant 2014-09-03T13:05:48Z Xach: Ah 2014-09-03T13:06:12Z nyef: It's a reasonable thing for private utilities, it's not great for anything that someone else might use as a dependency. 2014-09-03T13:06:14Z Xach: drmeister: have you read old lisp books or other material where it's ugly-printed m-expressions? 2014-09-03T13:06:26Z Xach shudders 2014-09-03T13:06:53Z Xach: Lisp is cool and all but I'd rather be using it today than in the 60s or 70s or 80s or 90s or 2000s. 2014-09-03T13:07:21Z TDog quit (Ping timeout: 260 seconds) 2014-09-03T13:07:24Z drmeister: Only McCarthy's original paper. 2014-09-03T13:07:26Z Shinmera: The same could be said for pretty much every language that's still alive 2014-09-03T13:07:31Z isoraqathedh: Even the 2000s? 2014-09-03T13:07:36Z isoraqathedh: How's a sampler? 2014-09-03T13:07:58Z Shinmera: isoraqathedh: 2000s didn't have QL ;) 2014-09-03T13:08:01Z yeticry joined #lisp 2014-09-03T13:08:15Z isoraqathedh: All of 2000? 2014-09-03T13:08:16Z isoraqathedh: Oh wow. 2014-09-03T13:08:17Z _5kg quit (Ping timeout: 260 seconds) 2014-09-03T13:09:27Z pranavrc quit 2014-09-03T13:13:05Z huza joined #lisp 2014-09-03T13:13:29Z hiyosi joined #lisp 2014-09-03T13:14:37Z zeitue quit (Quit: Leaving) 2014-09-03T13:14:42Z mouse_ joined #lisp 2014-09-03T13:15:22Z Jameser joined #lisp 2014-09-03T13:16:19Z cy joined #lisp 2014-09-03T13:17:03Z pt1_ quit (Remote host closed the connection) 2014-09-03T13:17:05Z drmeister quit (Read error: Connection reset by peer) 2014-09-03T13:17:52Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-03T13:18:14Z mouse__ quit (Ping timeout: 252 seconds) 2014-09-03T13:18:16Z malice: pjb, thanks 2014-09-03T13:18:21Z pt1 joined #lisp 2014-09-03T13:20:48Z mouse_ quit (Ping timeout: 252 seconds) 2014-09-03T13:23:08Z AeroNotix: http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/lisp/code/testing/cover/0.html 2014-09-03T13:23:09Z froggey quit (Ping timeout: 240 seconds) 2014-09-03T13:23:14Z AeroNotix: anyone used? 2014-09-03T13:23:41Z Xach: AeroNotix: very slightly. 2014-09-03T13:23:47Z AeroNotix: Xach: good/bad? 2014-09-03T13:23:53Z Xach: sbcl comes with sb-cover, which is an sbcl-aware version of the idea. 2014-09-03T13:24:00Z AeroNotix: oh dang! 2014-09-03T13:24:04Z AeroNotix: Lemme scoop that up 2014-09-03T13:24:10Z Xach: AeroNotix: good idea. not always easy to do on an arbitrary codebase/implementation. 2014-09-03T13:24:26Z AeroNotix: Xach: I can imagine 2014-09-03T13:24:32Z chit quit (Quit: Changing server) 2014-09-03T13:25:52Z AdmiralBumbleBee joined #lisp 2014-09-03T13:29:13Z tajjada joined #lisp 2014-09-03T13:29:56Z davorb1 joined #lisp 2014-09-03T13:30:50Z przl_ quit (Ping timeout: 272 seconds) 2014-09-03T13:31:37Z jtza8 quit (Ping timeout: 260 seconds) 2014-09-03T13:32:40Z mouse_ joined #lisp 2014-09-03T13:33:15Z eudoxia joined #lisp 2014-09-03T13:33:33Z davorb quit (Ping timeout: 246 seconds) 2014-09-03T13:36:31Z froggey joined #lisp 2014-09-03T13:36:32Z loke_ joined #lisp 2014-09-03T13:43:32Z mr-foobar quit (Quit: Leaving...) 2014-09-03T13:43:53Z chitofan: im trying to write a function for 2048-clone 2014-09-03T13:44:03Z chitofan: if i have a function that checks a row i.e. (2 empty empty 2) 2014-09-03T13:44:18Z chitofan: then it will save the value and position of the first 2 and eat the list until it comes to the next 2 2014-09-03T13:44:35Z chitofan: the problem is the list by then is only (2) 2014-09-03T13:45:02Z eudoxia quit (Quit: Lost terminal) 2014-09-03T13:45:07Z chitofan: i thought that if i created a second list so i can append it to the eaten list it would be quite wordy already 2014-09-03T13:45:12Z chitofan: is there a better way to do it? 2014-09-03T13:45:31Z loke_: chitofan: You better show us what you've got first, and we can propose a better way of doing it. 2014-09-03T13:45:47Z loke_: I did it in APL in about 10 characters :-) 2014-09-03T13:46:32Z chitofan: http://paste.lisp.org/display/143593 2014-09-03T13:47:57Z loke_: Hmm, I can't seem to be able to access the lisppaste 2014-09-03T13:48:15Z knob quit (Ping timeout: 246 seconds) 2014-09-03T13:48:44Z chitofan: its quite wordy :( 2014-09-03T13:49:01Z loke_: To me it looks like lisppaste is down. 2014-09-03T13:49:16Z eudoxia joined #lisp 2014-09-03T13:49:30Z knob joined #lisp 2014-09-03T13:49:33Z Xach: chitofan: I like to check lisppaste. it's easier for me if you give it a good title and use your real nick. 2014-09-03T13:50:35Z chitofan: http://paste.lisp.org/display/143594 2014-09-03T13:50:36Z chitofan: title chit 2014-09-03T13:50:55Z loke_: Well, I can't access it 2014-09-03T13:50:56Z loke_: weird 2014-09-03T13:51:34Z H4ns: woah. i need to say, that piece of lisp reminds me of goto spaghetti 2014-09-03T13:51:41Z H4ns: sorry to have to say that. 2014-09-03T13:51:48Z loke_: I wish I could see it :-) 2014-09-03T13:52:01Z H4ns: loke_: no. you should be glad that you don't need to 2014-09-03T13:52:07Z loke_: :-) 2014-09-03T13:52:14Z H4ns: chitofan: nested conds are really really hard to follow 2014-09-03T13:52:30Z H4ns: chitofan: defparameter is for variables set by humans, defvar for variables set by programs 2014-09-03T13:52:48Z chitofan: i know.. :( 2014-09-03T13:52:56Z _5kg joined #lisp 2014-09-03T13:52:58Z H4ns: chitofan: i'd rather strive for a more functional approach where the new state is returned rather than global state be mutated 2014-09-03T13:53:15Z chitofan: could i see a simple example of what you're saying? 2014-09-03T13:53:23Z H4ns: chitofan: also, you need to learn about case. your outer cond should be a case instead of a cond. 2014-09-03T13:53:46Z H4ns: chitofan: i have no simple example, sorry. 2014-09-03T13:54:00Z tajjada quit (Ping timeout: 250 seconds) 2014-09-03T13:54:22Z H4ns: chitofan: (if (null foo) x) should be (unless foo x) 2014-09-03T13:54:33Z dlowe joined #lisp 2014-09-03T13:54:43Z H4ns: chitofan: also, put a newline after the condition so that the consequent clause is on a separate, indented line. 2014-09-03T13:55:06Z chitofan: mm, ok 2014-09-03T13:56:08Z tajjada joined #lisp 2014-09-03T13:56:12Z chitofan: there's cl source code for 2048 on the net 2014-09-03T13:56:19Z chitofan: should i peek at it or continue trying to write my own one? 2014-09-03T14:00:45Z yrk joined #lisp 2014-09-03T14:01:11Z yrk quit (Changing host) 2014-09-03T14:01:11Z yrk joined #lisp 2014-09-03T14:01:15Z harish_ joined #lisp 2014-09-03T14:03:06Z vydd_ joined #lisp 2014-09-03T14:03:23Z vydd quit (Read error: Connection reset by peer) 2014-09-03T14:03:47Z cy: what is 2048 even? 2014-09-03T14:03:57Z wgl quit (Remote host closed the connection) 2014-09-03T14:04:20Z wasamasa: a catchy game 2014-09-03T14:04:26Z wheelsucker joined #lisp 2014-09-03T14:04:38Z wasamasa: not too hard to write, but pretty satisfying to play 2014-09-03T14:05:03Z leo2007 quit (Ping timeout: 246 seconds) 2014-09-03T14:05:29Z wasamasa: source: I wrote my own in elisp 2014-09-03T14:07:45Z arenz quit (Ping timeout: 268 seconds) 2014-09-03T14:08:03Z loke_: Who is the hunchentoot maintainer now? 2014-09-03T14:08:14Z H4ns: icke 2014-09-03T14:08:19Z loke_: Who is icke? 2014-09-03T14:08:21Z H4ns: <= 2014-09-03T14:08:23Z loke_: Ah 2014-09-03T14:08:25Z wasamasa: hehe 2014-09-03T14:08:32Z loke_: H4ns: Would you mind implementing a small change? 2014-09-03T14:08:40Z H4ns: loke_: discuss 2014-09-03T14:08:43Z wasamasa: loke_: it's berliner accent for "me" 2014-09-03T14:08:53Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-03T14:08:58Z loke_: H4ns: It's in hunchentoot:process-connection 2014-09-03T14:09:12Z loke_: I would like to be able to tell it not to close the socket after it's done. 2014-09-03T14:10:40Z loke_: I'm doing HTML5=style push notifications, which means keeping a socket open for a long time. I have implemented an acceptor that can handle this (basically exits the handler thread, but keeps the socket open so it can be used to send further push messages, I'm using usockets poll-mechanism to track all the sockets 2014-09-03T14:11:13Z H4ns: sounds okay, but what mechanism do you propose? 2014-09-03T14:11:22Z H4ns: do you subclass acceptor for that? 2014-09-03T14:11:38Z ee_cc joined #lisp 2014-09-03T14:11:47Z loke_: H4ns: I'd be OK with just setting a dynamic variable, and having the two calls to CLOSE at the end of that function to look at it 2014-09-03T14:11:57Z H4ns: loke_: ieh 2014-09-03T14:12:07Z radioninja joined #lisp 2014-09-03T14:12:18Z loke_: Right now, I implemented a gray-stream wrapper that has the ability inhibit close. :-) 2014-09-03T14:12:29Z petrutrimbitas joined #lisp 2014-09-03T14:12:32Z loke_: https://github.com/lokedhs/lofn/blob/master/polling-server.lisp 2014-09-03T14:12:33Z petrutrimbitas quit (Client Quit) 2014-09-03T14:12:37Z loke_: Very, very ugly. 2014-09-03T14:12:52Z H4ns: maybe a generic function that you can specialize on your acceptor class? 2014-09-03T14:13:07Z H4ns: keep-socket-open-p ? 2014-09-03T14:13:18Z loke_: H4ns: Well, it's on a per-request basis 2014-09-03T14:13:32Z loke_: I only keep the socket open for specific urls 2014-09-03T14:14:09Z loke_: Right now, I just call (SIGNAL 'request-polling) to trigger the machinery 2014-09-03T14:14:20Z hiyosi joined #lisp 2014-09-03T14:14:44Z loke_: It's all wrapped in a HANDLER-BIND so I can do my magic before returning from the handler 2014-09-03T14:14:52Z loke_: see line 95 2014-09-03T14:15:09Z H4ns: i'm looking at process-connection right now. 2014-09-03T14:15:23Z H4ns: it is also very ugly, so i guess whatever works and can be documented would be okay. 2014-09-03T14:15:49Z loke_: Yes, it's quite ugly and quite difficult to extend. 2014-09-03T14:16:01Z H4ns: like much of hunchentoot, fwiw 2014-09-03T14:16:07Z H4ns: okay, but i'm not here to whine: 2014-09-03T14:16:21Z loke_: I might want to do a fully multiplexed acceptor later, and I think it might need even more 2014-09-03T14:16:53Z Shinmera: Handling open sockets through a specific acceptor on an extra port sounds like a 'clean' solution to me if that's possible. 2014-09-03T14:16:58Z H4ns: why not rename *close-hunchentoot-stream* to *finish-processing-socket* as a first step, and then add a *close-hunchentoot-stream* variable that is T by default and that can be set to NIL to prevent the close from happening? 2014-09-03T14:17:23Z loke_: H4ns: Yes, sounds good enough for me 2014-09-03T14:17:39Z H4ns: loke_: can you send a patch? i'll write the docs. 2014-09-03T14:17:45Z loke_: Shinmera: Not possible with today's design. 2014-09-03T14:17:55Z __prefect joined #lisp 2014-09-03T14:18:03Z loke_: Shinmera: One could, of course, use an entirely different server type of the "other" listener. 2014-09-03T14:18:08Z loke_: OK, no problems 2014-09-03T14:18:21Z H4ns: loke_: just a pull request will be great. 2014-09-03T14:18:31Z Shinmera: Every time I hear about hunchentoot in here it makes me want to write my own HTTP server. 2014-09-03T14:18:35Z Shinmera: Maybe I'll get to that some day. 2014-09-03T14:18:48Z tvaalen quit (Changing host) 2014-09-03T14:18:48Z tvaalen joined #lisp 2014-09-03T14:18:52Z Xach: You should before it gets too crowded! 2014-09-03T14:19:03Z H4ns: Shinmera: it is a surprising amount of work to write one that is complete. 2014-09-03T14:19:07Z loke_: H4ns: edicl/hunchentoot on github? 2014-09-03T14:19:07Z dlowe: I had high hopes for Toot 2014-09-03T14:19:11Z H4ns: loke_: ack 2014-09-03T14:19:13Z H4ns: dlowe: hah 2014-09-03T14:19:16Z Shinmera: H4ns: I'm very well aware, which is why I've held off until now. 2014-09-03T14:19:24Z harish_ quit (Ping timeout: 246 seconds) 2014-09-03T14:19:28Z hiyosi quit (Ping timeout: 268 seconds) 2014-09-03T14:19:55Z dlowe: H4ns: I think it was a decent idea. 2014-09-03T14:20:04Z _d3f joined #lisp 2014-09-03T14:20:08Z Xach: I would like to check out Wookie sometime 2014-09-03T14:21:05Z H4ns: dlowe: i'm not sure - hunchentoot is not really a malleable substrate for something decent. (i'm partly responsible for that, and i'm not blaming anyone, except maybe ITA who were unwilling to pay for a proper refactoring) 2014-09-03T14:21:07Z H4ns: :D 2014-09-03T14:21:11Z wasamasa: what others are there 2014-09-03T14:21:15Z wasamasa: tpd2 and antiweb? 2014-09-03T14:21:25Z huza quit (Quit: WeeChat 0.3.8) 2014-09-03T14:22:56Z capitaomorte: H4ns: what do you dislike in hunchentoot, or what do you think could be improved? 2014-09-03T14:23:19Z gingerale joined #lisp 2014-09-03T14:23:29Z H4ns: capitaomorte: it is a structural mess which is hard to understand and extend. 2014-09-03T14:23:47Z capitaomorte: H4ns: I've been playing around with it 2014-09-03T14:23:49Z harish joined #lisp 2014-09-03T14:23:50Z capitaomorte: and I quite like it 2014-09-03T14:23:59Z H4ns: capitaomorte: i'm satisfied with it as a user, but i'm keeping my expectations very low. and for that, it is great. 2014-09-03T14:24:01Z capitaomorte: I rewrote hunchensocket on top of it for the new RFC 2014-09-03T14:24:09Z H4ns: capitaomorte: you're the man! 2014-09-03T14:24:16Z ee_cc quit (Quit: ee_cc) 2014-09-03T14:24:33Z capitaomorte: (https://github.com/capitaomorte/hunchensocket) 2014-09-03T14:24:33Z H4ns: capitaomorte: is that open source? because that is something which people often ask for. 2014-09-03T14:24:44Z capitaomorte: I meant to release it earlier 2014-09-03T14:24:58Z capitaomorte: I'm not too good at advertising stuff 2014-09-03T14:25:11Z H4ns: capitaomorte: awesome, thanks! 2014-09-03T14:25:34Z capitaomorte: It's not super-well tested though, and I would like to hear some feedback 2014-09-03T14:25:48Z eudoxia quit (Quit: Lost terminal) 2014-09-03T14:25:54Z capitaomorte: the original author has already agree to let me push this to quicklisp 2014-09-03T14:25:59Z hiyosi joined #lisp 2014-09-03T14:27:39Z capitaomorte: H4ns: but I would still like to hear why you think it's a structural mess... 2014-09-03T14:28:03Z __prefect quit (Ping timeout: 255 seconds) 2014-09-03T14:28:05Z H4ns: capitaomorte: look at process-connection for example. i find it hard to follow what's going on. 2014-09-03T14:28:32Z loke_: H4ns: Done and pull request created' 2014-09-03T14:29:05Z H4ns: capitaomorte: but maybe i'm just in a bad mood and listened to people complaining about hunchentoot too much :) 2014-09-03T14:29:21Z loke_: Process-connection is indeed quite a mess 2014-09-03T14:29:27Z loke_: but other parts are quite pleasant 2014-09-03T14:29:51Z loke_: The fact that I _almost_ managed to implement multiplexing without any changes is a testiment to that 2014-09-03T14:29:57Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-03T14:29:58Z capitaomorte: funny you should mention process-connection 2014-09-03T14:30:20Z capitaomorte: that's one of the places that hunchensocket hooks into with an :around method for its special acceptor class 2014-09-03T14:30:31Z capitaomorte: something I think worked quite nicely 2014-09-03T14:30:43Z capitaomorte: https://github.com/capitaomorte/hunchensocket/blob/master/hunchensocket.lisp#L466 2014-09-03T14:31:26Z capitaomorte: I agree maybe the implementation is not superpretty, but it appears to do what it purports to do :-) 2014-09-03T14:31:37Z AeroNotix: Xach: sb-cover is sweet! Thanks for the tip 2014-09-03T14:31:45Z Xach: No problem. 2014-09-03T14:31:56Z H4ns: loke_: the patch looks good. i'll not immediately pull it as i'll first update the documentation. should be done in by the weekend. please nag me if you feel like it. 2014-09-03T14:32:09Z AeroNotix: H4ns: can I nag you if I feel like it? 2014-09-03T14:32:39Z H4ns: capitaomorte: what's it with the :after method and the "ask upstream" comment? :) 2014-09-03T14:32:39Z hugod is now known as hugod|away 2014-09-03T14:32:43Z hugod|away is now known as hugod 2014-09-03T14:33:01Z capitaomorte: hehe, it's because of hunchentoot::content-stream 2014-09-03T14:33:04Z H4ns: AeroNotix: try. 2014-09-03T14:33:05Z capitaomorte: it's internal 2014-09-03T14:33:05Z __main__ quit (Read error: Connection reset by peer) 2014-09-03T14:33:12Z AeroNotix: H4ns: why is the sky blue 2014-09-03T14:33:13Z capitaomorte: but maybe there's an accessor already 2014-09-03T14:33:35Z H4ns: AeroNotix: gfas 2014-09-03T14:33:48Z AeroNotix: gfas? 2014-09-03T14:33:49Z capitaomorte: H4ns: also this: hunchentoot::set-timeouts 2014-09-03T14:33:51Z xebd`: capitomorte: Good enough at advertising -- I found Hunchensocket just a couple months back when I was searching for any prexisting WS-fu. I really need to play with it... 2014-09-03T14:34:14Z xebd`: capitaomorte: So... thanks for writing it. :-) 2014-09-03T14:34:17Z capitaomorte: xebd`: but did you find the new or the old version? 2014-09-03T14:34:32Z H4ns: capitaomorte: if you want to open an issue with your desires, i'll look at it and then have something real in there for the next release :) 2014-09-03T14:34:43Z xebd`: capitaomorte: I'd have to go back and look. 2014-09-03T14:34:45Z loke_: H4ns: Sure, thanks 2014-09-03T14:34:49Z H4ns: woo-hoo, two internal methods exposed AND a new dynamic variable!1!elf 2014-09-03T14:35:43Z capitaomorte: H4ns: I don't follow sorry. Are hunchentoot releases very rare or very empty? 2014-09-03T14:36:02Z capitaomorte: H4ns: Or would you rather not expose those methods? 2014-09-03T14:36:14Z H4ns: capitaomorte: i'm making fun of myself. development was very silent in the last few years. 2014-09-03T14:36:26Z loke_ is happily eliminating the gray-streams code 2014-09-03T14:37:24Z capitaomorte: H4ns: because it's so good and reasonably structured, right? :-) 2014-09-03T14:37:34Z loke_: Oh! And some horrible MOP code as well (to clone the innards of a usocket :-) ) 2014-09-03T14:37:47Z Nizumzen joined #lisp 2014-09-03T14:37:56Z capitaomorte: I'm kidding I don't know hunchentoot that well 2014-09-03T14:37:58Z pt1 quit (Ping timeout: 272 seconds) 2014-09-03T14:38:01Z capitaomorte: I just like reading the docstrings 2014-09-03T14:38:54Z H4ns: capitaomorte: i'll need to review whether the methods are documentable, but i'll not be too picky. 2014-09-03T14:39:23Z capitaomorte: xebd`: make sure the README mentions the new RFC 2014-09-03T14:40:08Z capitaomorte: H4ns: the content-stream method could probably be replaced by the external HUNCHENTOOT:RAW-POST-DATA 2014-09-03T14:40:30Z capitaomorte: which according to edi is "slightly misnamed" but should return a stream when given :want-stream 2014-09-03T14:40:36Z loke_: Yay! Just look at this beauty: https://github.com/lokedhs/lofn/commit/7d5005a5fddb86c7771e3af70b614236196e83ce 2014-09-03T14:41:04Z capitaomorte: the timeouts thing has to be exposed I'm afraid, since WebSocket has different rules for that 2014-09-03T14:41:13Z wasamasa: loke_: a webframework without a silly name? 2014-09-03T14:41:32Z loke_: wasamasa: Which one? Lofn is not silly enough for you? 2014-09-03T14:41:33Z scharan quit (Ping timeout: 255 seconds) 2014-09-03T14:41:45Z nydel quit (Remote host closed the connection) 2014-09-03T14:41:46Z H4ns: capitaomorte: are you sure that the timeouts actually do what the websocket requires? 2014-09-03T14:41:46Z leo2007 joined #lisp 2014-09-03T14:41:47Z wasamasa: loke_: no, I've earlier clicked through web-related libraries and found mingle and caveman 2014-09-03T14:41:57Z capitaomorte: and the special variable I don't know why I need anymore 2014-09-03T14:42:00Z loke_: wasamasa: Lofn is the name of a nordic goddess 2014-09-03T14:42:04Z capitaomorte: H4ns: no :-) 2014-09-03T14:42:07Z H4ns: capitaomorte: i'm not sure, but these are just inter-packet timeouts iirc, which are pretty useless. 2014-09-03T14:42:26Z mr-foobar joined #lisp 2014-09-03T14:42:38Z ferada: 'window 20 2014-09-03T14:42:44Z ferada: ah, sry 2014-09-03T14:42:51Z loke_: wasamasa: The part in lofn that works best is the templating library. I'm actually compiling it directly to lisp code, which should at least in theory make it as fast as it can be :-) 2014-09-03T14:42:53Z capitaomorte: H4ns: I implemented this in May, four months ago 2014-09-03T14:43:25Z capitaomorte: but the timeouts logic is in the original "e-user" implementation 2014-09-03T14:43:33Z arpnk quit (Quit: WeeChat 0.4.3) 2014-09-03T14:43:43Z capitaomorte: (https://github.com/e-user/hunchensocket) 2014-09-03T14:43:47Z H4ns: capitaomorte: ok - i'll look at it and probably just document that it can be exportet 2014-09-03T14:43:49Z H4ns: d 2014-09-03T14:43:50Z arpunk joined #lisp 2014-09-03T14:43:59Z arpunk quit (Changing host) 2014-09-03T14:43:59Z arpunk joined #lisp 2014-09-03T14:44:08Z wasamasa: loke_: and while caveman looks cool, there is something deeply troubling about its name 2014-09-03T14:44:13Z CrazyEddy joined #lisp 2014-09-03T14:44:24Z __main__ joined #lisp 2014-09-03T14:44:26Z capitaomorte: and I do recall it was necessary. It's a question of checking what happens if the line is removed 2014-09-03T14:44:31Z przl joined #lisp 2014-09-03T14:47:35Z alexey joined #lisp 2014-09-03T14:49:38Z vaporatorius joined #lisp 2014-09-03T14:50:48Z wasamasa: loke_: why a webwork around hunchentoot though? 2014-09-03T14:51:00Z wasamasa: loke_: I only know it's the most popular lisp server, but not for what reason 2014-09-03T14:51:16Z wasamasa: loke_: does it have special debugging features or why? 2014-09-03T14:51:28Z mrSpec joined #lisp 2014-09-03T14:51:49Z Rotacidni joined #lisp 2014-09-03T14:52:33Z TDog joined #lisp 2014-09-03T14:52:53Z Xach: It was one of the first to be easy to install and use. Good docs and a pretty sipmle model of operation. 2014-09-03T14:53:29Z Xach: At the time hunchentoot was made, the only other easy option was Portable AllegroServe, which was a port of an Allegro-specific program. 2014-09-03T14:53:51Z Xach: There was also CL-HTTP, which has a strange license and a strange author and used by only a few. 2014-09-03T14:54:13Z Jameser quit (Ping timeout: 260 seconds) 2014-09-03T14:55:49Z k-stz joined #lisp 2014-09-03T14:58:44Z dlowe: There was araneida 2014-09-03T14:58:51Z dlowe: but it had its own problems 2014-09-03T14:59:07Z dlowe: hunchentoot was the *easy* alternative 2014-09-03T14:59:34Z H4ns: was it not because it ran on usocket or something? 2014-09-03T15:00:18Z Xach: oh my. i totally forgot about araneida. 2014-09-03T15:00:30Z cy: has anyone tried out Lisp Flavored Erlang? 2014-09-03T15:00:43Z Xach: araneida was somewhat tied to serve-event, wasn't it? or was it? 2014-09-03T15:00:45Z Xach can't remember 2014-09-03T15:02:55Z TDog_ joined #lisp 2014-09-03T15:03:31Z Xach: I have forgotten the early history, I guess. tbnl came first. I don't remember if it spoke http right away or if it was only mod_lisp/mod_lisp2. 2014-09-03T15:03:56Z H4ns: it was mod_lisp at first 2014-09-03T15:04:02Z TDog quit (Ping timeout: 245 seconds) 2014-09-03T15:04:04Z TDog_ is now known as TDog 2014-09-03T15:04:14Z Xach: I used tbnl with mod_lisp up until june of this year, when I sold my website. 2014-09-03T15:04:24Z Xach: millions of graphics later 2014-09-03T15:07:19Z xificurC quit (Quit: WeeChat 0.4.3) 2014-09-03T15:07:49Z Xach: weirdly popular with The Teens: https://twitter.com/search?q=wigflip.com&src=typd 2014-09-03T15:09:22Z Bike: http://wigflip.com/ds/ looks like a typo on the bottom there? "Created by [blank]" 2014-09-03T15:10:55Z Xach: I asked them to remove my name so people would stop emailing me for support. Looks like they did it, sort of. 2014-09-03T15:13:28Z Jesin joined #lisp 2014-09-03T15:13:30Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-03T15:16:52Z zarul quit (Ping timeout: 240 seconds) 2014-09-03T15:18:42Z Karl_Dscc joined #lisp 2014-09-03T15:19:56Z nyef: araneida was tied to serve-event, yes. And after dan?b passed on the maintainership there was a noted tendency for people who took up the maintainership to leave lisp hacking within a few months. 2014-09-03T15:20:33Z nyef: Notable projects that used (and might still use?) araneida include cliki and lisppaste. 2014-09-03T15:20:42Z ehu_ quit (Ping timeout: 252 seconds) 2014-09-03T15:21:00Z xebd` quit (Ping timeout: 246 seconds) 2014-09-03T15:22:25Z chitofan quit (Ping timeout: 246 seconds) 2014-09-03T15:22:29Z Rotacidni quit (Ping timeout: 276 seconds) 2014-09-03T15:22:45Z dlowe: nyef: heh heh. coincidence? 2014-09-03T15:23:23Z vaporatorius quit (Quit: Leaving) 2014-09-03T15:23:36Z ee_cc joined #lisp 2014-09-03T15:26:16Z nyef: There's no such thing as coincidence. 2014-09-03T15:27:14Z dlowe: sure there is. Things coincide all the time. 2014-09-03T15:29:27Z ee_cc quit (Quit: ee_cc) 2014-09-03T15:29:30Z CrazyEddy joined #lisp 2014-09-03T15:30:18Z zarul joined #lisp 2014-09-03T15:30:38Z Cymew: Is hunchentoot "the thing"? I have not kept up 2014-09-03T15:31:01Z Xach: It's a thing. Pretty handy. 2014-09-03T15:31:15Z Cymew: Feels odd that nobody felt like doing the next great webserver 2014-09-03T15:31:17Z Xach: I am a little sad that people get so hung up on easy handler that they want to use it for everything. 2014-09-03T15:31:21Z Cymew: Maybe it's not that sexy 2014-09-03T15:32:35Z dlowe: it's kind of hard, actually. HTTP just isn't that simple of a protocol. 2014-09-03T15:32:53Z dlowe: Getting more complex all the time. 2014-09-03T15:33:20Z Cymew: Could be. I once got an idea for a HTTP server architechture, but I never got so far as to test if it was feasible at all. 2014-09-03T15:34:13Z Cymew: I did write a ftp server way back, so maybe I'll be satisfied with that 2014-09-03T15:35:38Z marsbot is now known as marsam 2014-09-03T15:38:32Z kushal quit (Ping timeout: 245 seconds) 2014-09-03T15:38:32Z ubii quit (Ping timeout: 245 seconds) 2014-09-03T15:40:00Z Xach: ftp could make a comeback 2014-09-03T15:40:24Z nyef: Passwords in plaintext? You'd at least need TLS... 2014-09-03T15:40:44Z ubii joined #lisp 2014-09-03T15:41:16Z Rotacidni joined #lisp 2014-09-03T15:44:33Z atgreen joined #lisp 2014-09-03T15:45:03Z zacharias quit (Quit: Bye!) 2014-09-03T15:45:17Z BitPuffin quit (Ping timeout: 245 seconds) 2014-09-03T15:49:55Z Jameser joined #lisp 2014-09-03T15:50:02Z ubii quit (Ping timeout: 252 seconds) 2014-09-03T15:50:59Z Cymew searches cliki for TLS 2014-09-03T15:51:39Z nyef: Hah! Good luck with that. 2014-09-03T15:51:44Z ahungry_ quit (Remote host closed the connection) 2014-09-03T15:52:17Z jewel joined #lisp 2014-09-03T15:52:36Z nyef: For that matter, if you find anything usable, please let me know. 2014-09-03T15:53:08Z Cymew: Looks like there's a opening for someone to do some good! :) 2014-09-03T15:53:19Z nyef: (Usable includes documentation, includes a non-broken stream implementation, and includes a good story about non-blocking I/O.) 2014-09-03T15:53:45Z Cymew: I see what you mean, and do not disagree much. 2014-09-03T15:53:57Z Jameser quit (Ping timeout: 240 seconds) 2014-09-03T15:54:22Z ahungry joined #lisp 2014-09-03T15:54:59Z Cymew: If you want to write network code today, that library almost has to be written. Makes me suspect huchentoot doesn't handle HTTPS. 2014-09-03T15:55:00Z nyef: (Improving the situation is on my todo list, but is fairly well down there.) 2014-09-03T15:55:37Z innertracks joined #lisp 2014-09-03T15:55:56Z nyef: The 'toot does handle HTTPS, but it uses CL+SSL, which had a few issues last time I checked. Little things, like my criteria for usability above. 2014-09-03T15:56:24Z ubii joined #lisp 2014-09-03T15:56:33Z oGMo: Cymew: i've been wanting/meaning to wrap gnutls (and gpgme!) but i haven't yet ;/ 2014-09-03T15:57:01Z oGMo: gnutls seems like a fair bit of work to use, but it has documentation and examples :P 2014-09-03T15:57:27Z Cymew: That's a start 2014-09-03T15:57:29Z oGMo: (and not _that_ hard, you just have to make sure you handle the various cases to be secure) 2014-09-03T15:57:34Z nyef: One issue is that the existing tools are just about good enough to use for the most basic of use-cases. 2014-09-03T15:57:57Z oGMo: nyef: almost 80% to 80%? 2014-09-03T15:58:05Z nyef: Something like that. 2014-09-03T15:58:11Z Cymew: What's the biggest thing about cl+ssl? broken streams? 2014-09-03T15:58:39Z nyef: Broken streams was the deal-breaker for me, though lack of documentation was spectacularly annoying. 2014-09-03T15:59:22Z nyef: Oh, and most of the condition stuff is internal symbols and undocumented, so if an error DOES occur you're still sunk. 2014-09-03T15:59:25Z Cymew: Streams and cryptography, two of the biggest black holes in my knowledge in the matter, sadly. 2014-09-03T15:59:39Z shka joined #lisp 2014-09-03T15:59:41Z shka: ave tux! 2014-09-03T15:59:52Z ehu joined #lisp 2014-09-03T16:00:21Z oGMo: lack of docs is a dealbreaker for me .. i want explicit, complete docs on exactly how it's intended to be used, or i can't really be sure it's secure 2014-09-03T16:00:51Z capitaomorte: nyef: I didn't follow sorry. Is hunchentoot's support for HTTPS broken somehow? 2014-09-03T16:02:21Z gale joined #lisp 2014-09-03T16:03:03Z joshee joined #lisp 2014-09-03T16:03:09Z endou___ joined #lisp 2014-09-03T16:03:10Z TDT` joined #lisp 2014-09-03T16:03:19Z nyef: capitaomorte: It uses CL+SSL. CL+SSL is broken in at least three respects, and SBCL's Gray Streams is (possibly was, by now) broken in a third that CL+SSL manages to trigger. 2014-09-03T16:03:54Z luis` joined #lisp 2014-09-03T16:04:08Z bend3r quit (Ping timeout: 260 seconds) 2014-09-03T16:04:08Z splittist__ joined #lisp 2014-09-03T16:04:17Z smithzv joined #lisp 2014-09-03T16:04:22Z smithzv is now known as Guest32080 2014-09-03T16:04:29Z drmeister joined #lisp 2014-09-03T16:04:30Z abbe_ joined #lisp 2014-09-03T16:04:35Z lonjil joined #lisp 2014-09-03T16:04:49Z _8hzp joined #lisp 2014-09-03T16:05:04Z vert2 quit (Ping timeout: 260 seconds) 2014-09-03T16:05:12Z manfoo7`` joined #lisp 2014-09-03T16:05:15Z Tordek quit (Ping timeout: 255 seconds) 2014-09-03T16:05:16Z effy_ joined #lisp 2014-09-03T16:05:20Z wizzo quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-03T16:05:22Z capitaomorte: nyef: is there a CL+SSL maintainer? have you reported those three issues, can I have a look at them somewhere? 2014-09-03T16:05:33Z alexey quit (Remote host closed the connection) 2014-09-03T16:05:47Z Tuxedo_ joined #lisp 2014-09-03T16:05:52Z setheus joined #lisp 2014-09-03T16:05:56Z asedeno_ joined #lisp 2014-09-03T16:06:08Z Blkt_ joined #lisp 2014-09-03T16:06:26Z OmegaAlp1a joined #lisp 2014-09-03T16:06:30Z AdmiralBumbleB-1 joined #lisp 2014-09-03T16:06:37Z misv_ joined #lisp 2014-09-03T16:06:40Z njsg_ joined #lisp 2014-09-03T16:06:53Z pchrist_ joined #lisp 2014-09-03T16:06:56Z fe[nl]ix joined #lisp 2014-09-03T16:06:58Z wormphlegm joined #lisp 2014-09-03T16:06:59Z ozzloy joined #lisp 2014-09-03T16:06:59Z ozzloy quit (Changing host) 2014-09-03T16:06:59Z ozzloy joined #lisp 2014-09-03T16:07:03Z ferada_ joined #lisp 2014-09-03T16:07:04Z feliped joined #lisp 2014-09-03T16:07:06Z Svetlana_ joined #lisp 2014-09-03T16:07:23Z otwierac1 joined #lisp 2014-09-03T16:07:24Z victor_lowther_ joined #lisp 2014-09-03T16:07:24Z nyef: I have no idea if anyone currently holds the maintainership, actually. 2014-09-03T16:07:28Z capitaomorte: https://github.com/cl-plus-ssl 2014-09-03T16:07:35Z srcerer joined #lisp 2014-09-03T16:07:41Z shka_ joined #lisp 2014-09-03T16:07:50Z teiresia1 joined #lisp 2014-09-03T16:07:56Z capitaomorte: nyef: three issues were recently closed :-) 2014-09-03T16:07:57Z Jesin quit (Ping timeout: 255 seconds) 2014-09-03T16:07:59Z easye` joined #lisp 2014-09-03T16:08:05Z jdz_ joined #lisp 2014-09-03T16:08:10Z qbit_ joined #lisp 2014-09-03T16:08:13Z Tordek joined #lisp 2014-09-03T16:08:15Z kalzz_ joined #lisp 2014-09-03T16:08:18Z lpaste_ joined #lisp 2014-09-03T16:08:25Z capitaomorte: nyef: perhaps you can report yours there? https://github.com/cl-plus-ssl/cl-plus-ssl/issues 2014-09-03T16:08:30Z endou__ quit (Ping timeout: 260 seconds) 2014-09-03T16:08:30Z abbe quit (Ping timeout: 260 seconds) 2014-09-03T16:08:30Z joshe quit (Ping timeout: 260 seconds) 2014-09-03T16:08:30Z benny quit (Ping timeout: 260 seconds) 2014-09-03T16:08:30Z _tca quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z luis quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z Guest37145 quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z splittist_ quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z phf quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z rvirding quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z asedeno quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z imanc_ quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z Tuxedo quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z cwandrews quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z WeirdEnthusiast quit (Ping timeout: 260 seconds) 2014-09-03T16:08:31Z felideon quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z aksatac_ quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z Neet quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z cpt_nemo quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z gingerale quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z dlowe quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z cy quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z OmegaAlpha quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z kalzz quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z gko quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z njsg quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z clog quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z qbit quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z setheus_ quit (Ping timeout: 260 seconds) 2014-09-03T16:08:32Z lpaste quit (Ping timeout: 260 seconds) 2014-09-03T16:08:33Z _ku quit (Ping timeout: 260 seconds) 2014-09-03T16:08:33Z stopbit quit (Ping timeout: 260 seconds) 2014-09-03T16:08:33Z misv quit (Ping timeout: 260 seconds) 2014-09-03T16:08:33Z hzp quit (Ping timeout: 260 seconds) 2014-09-03T16:08:33Z pchrist quit (Ping timeout: 260 seconds) 2014-09-03T16:08:33Z AdmiralBumbleBee quit (Ping timeout: 260 seconds) 2014-09-03T16:08:33Z otwieracz quit (Ping timeout: 260 seconds) 2014-09-03T16:08:33Z Nshag quit (Ping timeout: 260 seconds) 2014-09-03T16:08:33Z keen________ quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z lacedaemon quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z Blkt quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z gensym quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z manfoo7` quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z Svetlana quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z ozzloy_ quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z oGMo quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z Denommus quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z TDT quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z wormphle1m quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z ggherdov quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z effy quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z ferada quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z jdz quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z birk quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z victor_lowther quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z shka quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z yacks quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z Vutral quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z ircbrowse quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z Odin- quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z srcerer_ quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z axion quit (Ping timeout: 260 seconds) 2014-09-03T16:08:34Z teiresias quit (Ping timeout: 260 seconds) 2014-09-03T16:08:35Z leoc quit (Ping timeout: 260 seconds) 2014-09-03T16:08:35Z hellome quit (Write error: Connection reset by peer) 2014-09-03T16:08:35Z easye quit (Ping timeout: 260 seconds) 2014-09-03T16:08:35Z Kabaka quit (Ping timeout: 260 seconds) 2014-09-03T16:08:36Z benny joined #lisp 2014-09-03T16:08:36Z kalzz_ is now known as kalzz 2014-09-03T16:08:36Z otwierac1 is now known as otwieracz 2014-09-03T16:08:37Z stopbyte joined #lisp 2014-09-03T16:08:37Z endou___ is now known as endou__ 2014-09-03T16:08:43Z splittist__ is now known as splittist_ 2014-09-03T16:08:46Z oGMo_ joined #lisp 2014-09-03T16:08:47Z oGMo_ is now known as oGMo 2014-09-03T16:08:50Z cwandrews joined #lisp 2014-09-03T16:08:51Z gale is now known as gingerale 2014-09-03T16:08:54Z _tca_ joined #lisp 2014-09-03T16:08:55Z mrSpec quit (Write error: Connection reset by peer) 2014-09-03T16:09:01Z Nshag joined #lisp 2014-09-03T16:09:06Z cy joined #lisp 2014-09-03T16:09:08Z rvirding_ joined #lisp 2014-09-03T16:09:12Z qbit_ is now known as qbit 2014-09-03T16:09:12Z phf joined #lisp 2014-09-03T16:09:18Z ircbrowse joined #lisp 2014-09-03T16:09:34Z dlowe joined #lisp 2014-09-03T16:09:34Z axion joined #lisp 2014-09-03T16:09:47Z aksatac_ joined #lisp 2014-09-03T16:09:47Z gko joined #lisp 2014-09-03T16:09:54Z nyef: Hrm... Looks like at least one of the issues has been fixed. 2014-09-03T16:10:05Z _ku joined #lisp 2014-09-03T16:10:08Z Denommus joined #lisp 2014-09-03T16:10:09Z imanc_ joined #lisp 2014-09-03T16:10:14Z gensym joined #lisp 2014-09-03T16:10:16Z Neet joined #lisp 2014-09-03T16:10:23Z shka_: this is strange 2014-09-03T16:10:36Z keen________ joined #lisp 2014-09-03T16:11:16Z yacks joined #lisp 2014-09-03T16:11:30Z leoc joined #lisp 2014-09-03T16:11:54Z WeirdEnthusiast joined #lisp 2014-09-03T16:11:58Z jdz_ is now known as jdz 2014-09-03T16:12:01Z oGMo: hrm is asdf:perform :after a good place for *features*, or after defpackage, or something else 2014-09-03T16:12:04Z cpt_nemo joined #lisp 2014-09-03T16:12:06Z bit` quit (Ping timeout: 246 seconds) 2014-09-03T16:12:24Z przl quit (Ping timeout: 252 seconds) 2014-09-03T16:12:26Z nyef: Documentation is still dreadful, condition-related symbols are still unexported. 2014-09-03T16:12:53Z Kabaka joined #lisp 2014-09-03T16:13:01Z bend3r joined #lisp 2014-09-03T16:13:06Z nyef: Oh, and apparently nothing has changed since mid-2011. 2014-09-03T16:13:10Z joshee is now known as joshe 2014-09-03T16:13:19Z oGMo: sounds secure 2014-09-03T16:13:33Z Vutral joined #lisp 2014-09-03T16:13:40Z vert2 joined #lisp 2014-09-03T16:14:10Z capitaomorte: nyef: talking about CL+SSL still_ 2014-09-03T16:14:14Z capitaomorte: ? 2014-09-03T16:14:22Z nyef: Yeah. 2014-09-03T16:14:33Z LiamH quit (Ping timeout: 246 seconds) 2014-09-03T16:14:42Z capitaomorte: I see lots of commits for 2014 2014-09-03T16:14:43Z nyef: Given a general update to the systems at work, I can almost see using it again. 2014-09-03T16:14:50Z kirin` quit (Ping timeout: 250 seconds) 2014-09-03T16:15:09Z nyef: Look at the website and at the index.html in the repository: Nothing new since 2011. 2014-09-03T16:15:17Z kirin` joined #lisp 2014-09-03T16:15:25Z capitaomorte: nyef: yeah, website... 2014-09-03T16:15:49Z victor_lowther_ is now known as victor_lowther 2014-09-03T16:16:08Z capitaomorte: nyef: website is not the software :-D 2014-09-03T16:16:20Z capitaomorte: nyef: but it is ridiculously broken yes 2014-09-03T16:16:51Z YDJX left #lisp 2014-09-03T16:16:54Z nyef: Website is the documentation. Without documentation, the software may as well be broken. 2014-09-03T16:17:21Z Shinmera: Am I misremembering or was there another SSL lib for CL? 2014-09-03T16:17:51Z nyef: Two predecessors to CL+SSL, IIRC. 2014-09-03T16:18:26Z Shinmera: But I'm guessing if you want to use SSL you're kind of bound to use CL+SSL, right? 2014-09-03T16:19:02Z oGMo: well some things do, like hunchentoot 2014-09-03T16:19:22Z jewel_ joined #lisp 2014-09-03T16:19:25Z capitaomorte: nyef: I think you should lobby to bring the documentation of CL+SSL to a github README.md or github pages 2014-09-03T16:19:30Z _tca_ is now known as _tca 2014-09-03T16:19:31Z nyef: Yeah, I want a good option for Drakma and for Postmodern. 2014-09-03T16:19:31Z capitaomorte: Or do that pull request yourself 2014-09-03T16:19:39Z Harag quit (Quit: Harag) 2014-09-03T16:19:44Z jewel quit (Ping timeout: 252 seconds) 2014-09-03T16:19:47Z nyef: Quite possibly. 2014-09-03T16:20:02Z _tca quit (Changing host) 2014-09-03T16:20:02Z _tca joined #lisp 2014-09-03T16:20:02Z _tca quit (Changing host) 2014-09-03T16:20:02Z _tca joined #lisp 2014-09-03T16:20:11Z capitaomorte: common-lisp.net info about projets is sometimes confusing and misleading 2014-09-03T16:20:42Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-03T16:20:47Z capitaomorte: github is not the answer per se 2014-09-03T16:20:50Z capitaomorte: but it does help 2014-09-03T16:21:04Z Karl_Dscc quit (Remote host closed the connection) 2014-09-03T16:21:20Z capitaomorte: when SLIME moved to github, random people found typos in the doc and other glitches 2014-09-03T16:21:49Z cite-reader joined #lisp 2014-09-03T16:21:52Z manfoo7 joined #lisp 2014-09-03T16:21:57Z marsam is now known as marsbot 2014-09-03T16:22:08Z ggherdov joined #lisp 2014-09-03T16:23:07Z kirin` quit (Read error: Connection reset by peer) 2014-09-03T16:23:31Z kirin` joined #lisp 2014-09-03T16:25:03Z feliped is now known as felideon 2014-09-03T16:26:26Z eudoxia joined #lisp 2014-09-03T16:26:46Z Joreji quit (Ping timeout: 260 seconds) 2014-09-03T16:27:07Z stacksmith joined #lisp 2014-09-03T16:27:42Z Cymew quit (Ping timeout: 245 seconds) 2014-09-03T16:28:17Z typhonic joined #lisp 2014-09-03T16:28:49Z bit` joined #lisp 2014-09-03T16:32:03Z kirin` quit (Read error: Connection reset by peer) 2014-09-03T16:32:27Z kirin` joined #lisp 2014-09-03T16:32:39Z gravicappa quit (Remote host closed the connection) 2014-09-03T16:32:52Z wasamasa: mhh 2014-09-03T16:32:56Z wasamasa: moar eyeballs 2014-09-03T16:33:22Z jewel_ quit (Ping timeout: 240 seconds) 2014-09-03T16:36:10Z petrutrimbitas joined #lisp 2014-09-03T16:36:22Z luis` is now known as luis 2014-09-03T16:38:06Z kirin` quit (Ping timeout: 255 seconds) 2014-09-03T16:38:39Z TomRS` joined #lisp 2014-09-03T16:39:32Z kirin` joined #lisp 2014-09-03T16:40:04Z scharan joined #lisp 2014-09-03T16:40:46Z TomRS quit (Ping timeout: 260 seconds) 2014-09-03T16:45:00Z kirin` quit (Ping timeout: 246 seconds) 2014-09-03T16:46:40Z kirin` joined #lisp 2014-09-03T16:47:35Z theos quit (Disconnected by services) 2014-09-03T16:48:08Z theos joined #lisp 2014-09-03T16:48:09Z innertracks quit (Ping timeout: 246 seconds) 2014-09-03T16:48:50Z eli joined #lisp 2014-09-03T16:49:40Z jewel_ joined #lisp 2014-09-03T16:51:02Z innertracks joined #lisp 2014-09-03T16:53:01Z kirin` quit (Ping timeout: 268 seconds) 2014-09-03T16:53:45Z kirin` joined #lisp 2014-09-03T16:54:37Z clog joined #lisp 2014-09-03T16:55:27Z wz1000 joined #lisp 2014-09-03T16:58:15Z sdemarre joined #lisp 2014-09-03T17:02:16Z wz1000: I was writing a basic scheme interpreter, and had a question about dotted lists. What representation do compilers generally use for them? I have a choice between a simple uniform 'Cons ScVal ScVal' or two seperate representations in the form of a single list, and a list with an extra value at the end. I like the uniform representation better, but in that case, when evaluating functions, i will have make a pass through the entire 'cons' to check whether it is a 2014-09-03T17:02:17Z wz1000: valid form or not. What should I do? 2014-09-03T17:03:21Z Bike: generally conses are conses, i.e. the first thing you said 2014-09-03T17:03:32Z kirin` quit (Read error: Connection reset by peer) 2014-09-03T17:04:15Z kirin` joined #lisp 2014-09-03T17:05:22Z teiresia1 is now known as teiresias 2014-09-03T17:05:38Z teiresias quit (Changing host) 2014-09-03T17:05:38Z teiresias joined #lisp 2014-09-03T17:07:01Z marsbot is now known as marsam 2014-09-03T17:07:02Z wz1000: Bike: Yes, I like the 'cons' representation much better in a mathematical sense, but some things become easier to code with the seperate representations. 2014-09-03T17:07:48Z stanislav_ quit (Ping timeout: 255 seconds) 2014-09-03T17:07:51Z Bike: if it's a stereotypical scheme interpreter usually you'll just catch the dotted list error from evlis 2014-09-03T17:08:11Z oGMo: wz1000: you should probably read Lisp In Small Pieces and look at how e.g. CCL and SBCL do it 2014-09-03T17:08:22Z oGMo: LiSP deals with scheme specifically iirc 2014-09-03T17:08:26Z TDog quit (Ping timeout: 276 seconds) 2014-09-03T17:08:56Z wz1000: oGMo: Thanks, I will check those out. 2014-09-03T17:09:22Z oGMo: you can buy the pdf for like $50 or less iirc 2014-09-03T17:09:36Z stanislav joined #lisp 2014-09-03T17:10:09Z ehu quit (Ping timeout: 264 seconds) 2014-09-03T17:10:12Z kirin` quit (Ping timeout: 245 seconds) 2014-09-03T17:12:25Z kirin` joined #lisp 2014-09-03T17:14:07Z loke_ quit (Remote host closed the connection) 2014-09-03T17:14:13Z kirin` quit (Read error: Connection reset by peer) 2014-09-03T17:14:22Z yeticry quit (Ping timeout: 260 seconds) 2014-09-03T17:15:07Z jasom: Lisp In Small Pieces is very strongly grounded in CPS based interpreters and compilers 2014-09-03T17:15:11Z MouldyOldBones quit (Remote host closed the connection) 2014-09-03T17:15:21Z jasom: which I suppose is good if you're writing a scheme interpreter 2014-09-03T17:15:45Z kirin` joined #lisp 2014-09-03T17:15:57Z Bike: also denotational semantics. still a cool book though. 2014-09-03T17:16:02Z yeticry joined #lisp 2014-09-03T17:16:44Z whartung: You don't think a CPS based compiler is appropriate for a CL? 2014-09-03T17:17:00Z jasom: whartung: I think it is 2014-09-03T17:17:08Z jasom: whartung: I just have never encountered one 2014-09-03T17:17:34Z whartung: I workd through much of that book years ago. Never got all the way through. 2014-09-03T17:17:39Z whartung: Just casual reading 2014-09-03T17:18:02Z jasom: I'm about 1/3 of the way through now. Just starting to get to stuff I hadn't figured out on my own when trying to write a CL interpreter 2014-09-03T17:18:04Z whartung: back in the day you could actually stumbled across a book like that at a bookstore 2014-09-03T17:18:12Z whartung: like what? 2014-09-03T17:18:44Z jasom: whartung: unwind-protect with CPS 2014-09-03T17:18:54Z whartung: ahok 2014-09-03T17:19:13Z jasom: the initial interpreter solution was exceedingly elegant 2014-09-03T17:19:37Z ehu joined #lisp 2014-09-03T17:19:46Z anannie quit (Quit: No Ping reply in 180 seconds.) 2014-09-03T17:20:04Z anannie joined #lisp 2014-09-03T17:20:04Z anannie quit (Changing host) 2014-09-03T17:20:04Z anannie joined #lisp 2014-09-03T17:20:15Z ggole: I first found SICP in a (second-hand) bookstore 2014-09-03T17:20:21Z Oberon4278 joined #lisp 2014-09-03T17:20:26Z ggole: For $2, not bad :) 2014-09-03T17:25:44Z dim: dlowe: I guess you're dlowe-net on github as in https://github.com/dlowe-net/local-time/issues/25#issuecomment-54283501 ; thx for the comment, my reading of it means I shall maintain that debian specific patch, right? (which is cool btw) 2014-09-03T17:26:51Z misv_ is now known as misv 2014-09-03T17:32:14Z drmeiste_ joined #lisp 2014-09-03T17:34:12Z banjara joined #lisp 2014-09-03T17:34:26Z stanislav quit (Ping timeout: 260 seconds) 2014-09-03T17:36:52Z jewel_ quit (Ping timeout: 240 seconds) 2014-09-03T17:42:27Z gravicappa joined #lisp 2014-09-03T17:44:20Z mhd joined #lisp 2014-09-03T17:46:36Z hitecnologys quit (Quit: hitecnologys) 2014-09-03T17:46:40Z abbe_ is now known as abbe 2014-09-03T17:47:05Z ramfjord joined #lisp 2014-09-03T17:48:54Z ee_cc_ joined #lisp 2014-09-03T17:49:07Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-03T17:49:11Z marsam is now known as marsbot 2014-09-03T17:50:13Z dlowe: dim: that's me 2014-09-03T17:50:35Z dim: cool 2014-09-03T17:50:39Z dlowe: yeah, you can even ditch the tzinfo files in the patch if you want. 2014-09-03T17:50:53Z dim: that's what I did, the package isn't installing the tzinfo 2014-09-03T17:51:02Z dlowe: dwim.hu was the first major non-me user of the library 2014-09-03T17:51:11Z dlowe: and they really needed consistency between windows and linux 2014-09-03T17:51:41Z dim: yeah, I didn't think about the windows use case 2014-09-03T17:51:49Z dim: so patching it at the packaging level makes sense 2014-09-03T17:51:54Z dim afk, bbl 2014-09-03T17:55:03Z jewel_ joined #lisp 2014-09-03T18:05:02Z vydd_ quit (Remote host closed the connection) 2014-09-03T18:06:03Z wgl joined #lisp 2014-09-03T18:06:38Z nydel joined #lisp 2014-09-03T18:10:48Z mhd quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-03T18:10:48Z mhd quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-03T18:11:01Z stanislav joined #lisp 2014-09-03T18:11:59Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-03T18:13:38Z nydel joined #lisp 2014-09-03T18:13:55Z ee_cc_ quit (Quit: ee_cc_) 2014-09-03T18:15:29Z bdr3552 joined #lisp 2014-09-03T18:18:20Z ejbs joined #lisp 2014-09-03T18:18:38Z vaporatorius joined #lisp 2014-09-03T18:21:45Z eudoxia quit (Quit: Lost terminal) 2014-09-03T18:22:49Z ehu quit 2014-09-03T18:23:54Z ehu joined #lisp 2014-09-03T18:24:52Z jewel_ quit (Ping timeout: 240 seconds) 2014-09-03T18:25:53Z davazp joined #lisp 2014-09-03T18:25:54Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-03T18:33:48Z Zeedox_ joined #lisp 2014-09-03T18:36:47Z slyrus joined #lisp 2014-09-03T18:39:17Z petrutrimbitas joined #lisp 2014-09-03T18:40:22Z pt1 joined #lisp 2014-09-03T18:40:40Z nell joined #lisp 2014-09-03T18:40:50Z jewel_ joined #lisp 2014-09-03T18:43:24Z Jesin joined #lisp 2014-09-03T18:46:21Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-03T18:46:22Z zarul quit (Ping timeout: 240 seconds) 2014-09-03T18:48:17Z pt1 quit (Remote host closed the connection) 2014-09-03T18:56:29Z pt1 joined #lisp 2014-09-03T18:57:29Z pt1 quit (Remote host closed the connection) 2014-09-03T18:57:58Z typhonic quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-03T19:00:05Z zarul joined #lisp 2014-09-03T19:02:04Z wz1000 quit (Quit: Konversation terminated!) 2014-09-03T19:05:32Z drmeister: nyef: You folks have a nice compiler for SBCL - what is it about SICL's compiler that interests you? 2014-09-03T19:06:04Z wasamasa: drmeister: any updates on the legal front? 2014-09-03T19:06:13Z jewel_ quit (Ping timeout: 268 seconds) 2014-09-03T19:06:14Z wasamasa: drmeister: IIRC I asked you exactly a week ago about it the last time 2014-09-03T19:06:30Z Mon_Ouie quit (Ping timeout: 272 seconds) 2014-09-03T19:06:40Z cite-reader quit (Quit: leaving) 2014-09-03T19:06:55Z drmeister: wasamasa: Nope, they move at their own pace I'm afraid. But now that you mention it I'll ping them to make sure they don't forget me. 2014-09-03T19:06:59Z Xach: drmeister: I can't answer for nyef, but sbcl's compiler is rooted in 80s design and is missing (many?) features you'd normally see in a "modern" compiler. 2014-09-03T19:09:16Z drmeister: There, I pinged them. 2014-09-03T19:09:25Z dlowe: I don't know what things happened since the 80s other than JIT compilation and cache coherence 2014-09-03T19:09:42Z Xach: I've heard that peephole optimization is stymied by python's design. Don't know firsthand. 2014-09-03T19:09:52Z drmeister: Got it. 2014-09-03T19:10:45Z dlowe: Oh, I bet there's tons of stuff I've never heard of. 2014-09-03T19:11:03Z dlowe: The amount of knowledge that goes into making a compiler these days must be insane. 2014-09-03T19:11:07Z ggole: I think it's mostly that the algorithms are better, rather than they do completely new things 2014-09-03T19:11:08Z pnpuff joined #lisp 2014-09-03T19:11:40Z ggole: For example, a good GVNPRE pass could obviate a ton of manual work 2014-09-03T19:12:02Z EvW quit (Remote host closed the connection) 2014-09-03T19:12:06Z Karl_Dscc joined #lisp 2014-09-03T19:12:07Z EvW1 joined #lisp 2014-09-03T19:13:34Z ggole: JITs are a bit of a different story, with tracing compilers and all 2014-09-03T19:17:22Z Vutral_ quit (Ping timeout: 264 seconds) 2014-09-03T19:18:00Z Vutral_ joined #lisp 2014-09-03T19:19:41Z k-stz quit (Remote host closed the connection) 2014-09-03T19:21:10Z rme joined #lisp 2014-09-03T19:21:24Z jewel_ joined #lisp 2014-09-03T19:24:04Z ASau joined #lisp 2014-09-03T19:25:55Z drmeister: wasamasa: The IP office responded with a list of questions that I immediately answered and sent back to them. Perhaps this is a light at the end of the tunnel. 2014-09-03T19:26:10Z wasamasa: drmeister: sounds exciting 2014-09-03T19:26:30Z wasamasa: drmeister: though I have more experience with me being the lazy part of obligations :P 2014-09-03T19:27:22Z shka_: what about llvm based lisp compiler? 2014-09-03T19:27:24Z drmeister: Just so you know, what I'm releasing has a pretty slow compiler. But I've got a plan now to incorporate a much faster compiler by building on beach's fascinating SICL compiler. 2014-09-03T19:27:47Z drmeister: shka_: What about it? Clasp is an LLVM based Common Lisp compiler. 2014-09-03T19:27:49Z CrazyEddy joined #lisp 2014-09-03T19:28:13Z shka_: drmeister: how good it is? 2014-09-03T19:28:30Z shka_: what does author says about it? 2014-09-03T19:28:42Z drmeister: The author says it's brilliant. 2014-09-03T19:29:00Z schaueho joined #lisp 2014-09-03T19:29:17Z TomRS` quit (Ping timeout: 272 seconds) 2014-09-03T19:29:22Z ck_: :-) 2014-09-03T19:29:39Z shka_: and is it? 2014-09-03T19:30:20Z drmeister: The author thinks it's going to rival the best CL compilers there are but there's still some work to be done to get there. The defining difference is that it interoperates smoothly with C++. You can expose C++ libraries within it and write a mix of Common Lisp and C++. 2014-09-03T19:30:52Z shka_: it sounds sooooooooooo sexy 2014-09-03T19:30:58Z drmeister: You can use C++ for speed and Common Lisp for smarts. And when the Clasp Common Lisp compiler improves you can do everything new in Common Lisp and just use C++ for legacy libraries. 2014-09-03T19:30:59Z dim: is it possible to load SICL format and look in jscl? 2014-09-03T19:31:19Z drmeister: dim: Is that a question directed to me? 2014-09-03T19:31:32Z dim: either you or beach I presume 2014-09-03T19:31:47Z drmeister: And by "load SICL format" do you mean the SICL FORMAT code? 2014-09-03T19:32:02Z dim: I did try JSCL as in http://davazp.net/jscl/jscl.html but was sorry that not format nor loop was available, now that I see SICL, I might be able to rejoice ;-) 2014-09-03T19:32:16Z drmeister: And what is jscl? I think beach is asleep at the moment - he is in France. 2014-09-03T19:32:20Z shka_: drmeister: and how standard compilant is it? 2014-09-03T19:32:37Z shka_: can i simply fetch it with existing code tested on the sbcl? 2014-09-03T19:32:46Z dim: I'm in France too ;-) 2014-09-03T19:32:57Z dim: jscl is a javascript project implementing a CL 2014-09-03T19:33:06Z dim: you can actually play with its repl at http://davazp.net/jscl/jscl.html 2014-09-03T19:33:13Z shka_: ...? 2014-09-03T19:33:15Z jewel_: drmeister, how big is the Clasp and MPS codebase? 2014-09-03T19:33:16Z drmeister: dim: bonjour. 2014-09-03T19:33:16Z dim: I wanted to use that to make teaching programming games 2014-09-03T19:33:21Z shka_: somebody was bored :P 2014-09-03T19:33:33Z dim: drmeister: Bonjour! ;-) 2014-09-03T19:33:58Z Bicyclidine joined #lisp 2014-09-03T19:34:03Z Shinmera: shka_: Atwood's Law 2014-09-03T19:34:27Z gingerale quit (Ping timeout: 245 seconds) 2014-09-03T19:34:59Z drmeister: dim: There is a FORMAT in SICL - I don't use it, I use the FORMAT from ECL which came from the CMU Common Lisp project. 2014-09-03T19:35:13Z dim: gotcha 2014-09-03T19:35:46Z drmeister: jewel_: I don't know how to answer that question right now. C++ lines of code maybe 150K Common Lisp maybe 30K 2014-09-03T19:36:03Z drmeister: Or rather, I don't have accurate numbers. 2014-09-03T19:36:10Z shka_: drmeister: i wanted to try the clasp 2014-09-03T19:36:24Z shka_: sorry 2014-09-03T19:36:28Z shka_: *i want to try clasp 2014-09-03T19:36:42Z kpreid quit (Quit: Quitting) 2014-09-03T19:37:39Z drmeister: shka_: Great, but don't have too high expectations. It's slow now and missing some Common Lisp features. But it is unique and I have a plan to make it fast and totally compliant. 2014-09-03T19:38:40Z shka_: drmeister: i wish i could help you :( 2014-09-03T19:39:14Z drmeister: I'd be happy to get some help - there's a lot of great stuff we can do. 2014-09-03T19:39:54Z varjag joined #lisp 2014-09-03T19:40:12Z Xach: drmeister: would it help to enroll at your university? or become an employee? 2014-09-03T19:40:15Z alexey joined #lisp 2014-09-03T19:40:39Z shka_: drmeister: i'm kinda n00b, but i really want to try 2014-09-03T19:40:46Z shka_: is it actually cl code? 2014-09-03T19:41:07Z kobain quit (Ping timeout: 245 seconds) 2014-09-03T19:41:24Z drmeister: It's C++ and CL. 2014-09-03T19:41:32Z hiroakip joined #lisp 2014-09-03T19:42:08Z drdo joined #lisp 2014-09-03T19:42:34Z banjara quit (Quit: Leaving.) 2014-09-03T19:43:01Z shka_: in the moments like this 2014-09-03T19:43:20Z shka_: i really wish i would knew more about compilers ^^ 2014-09-03T19:43:35Z Shinmera: Then go learn about 'em. 2014-09-03T19:44:11Z drmeister: shka_: This is my first compiler. Three years ago when I started I had no idea either. 2014-09-03T19:44:26Z shka_: Shinmera: good plan 2014-09-03T19:44:28Z banjara joined #lisp 2014-09-03T19:44:37Z drmeister: I've never had a course on compiler design. 2014-09-03T19:44:45Z shka_: Shinmera: lisp in small pieces + red dragoon book? 2014-09-03T19:45:06Z drmeister: Lisp in small pieces is where I started. 2014-09-03T19:45:29Z shka_: ok 2014-09-03T19:45:29Z drmeister: Is there a way to figure out what methods are defined for a generic function? 2014-09-03T19:45:35Z shka_: i wanted to read it anyway 2014-09-03T19:46:06Z Shinmera: shka_: Didn't read either, but I've written a bunch of parsers and compilers. 2014-09-03T19:46:31Z shka_: Shinmera: i have a bad news for you 2014-09-03T19:46:50Z Shinmera: all news is bad news 2014-09-03T19:46:52Z shka_: from now you may be bothered by shka 2014-09-03T19:46:54Z Bicyclidine: drmeister: mop:generic-function-methods 2014-09-03T19:47:00Z wasamasa: lol 2014-09-03T19:47:19Z drmeister: I don't have the package MOP 2014-09-03T19:48:00Z Bicyclidine: drmeister: on ecl they're probably in ext: or something 2014-09-03T19:48:15Z shka_: drmeister: it is not part of the standard actually 2014-09-03T19:48:23Z Shinmera: shka_: idk if asking me is the best idea since I don't have a lot of theoretical background, just practical. 2014-09-03T19:48:41Z Shinmera: and even of the practical not that much 2014-09-03T19:48:51Z Shinmera: there's certainly more qualified people in here than myself 2014-09-03T19:49:07Z drmeister: For some reason GRAY:STREAMP is failing on an obvious gray stream I created. It fails on Linux and works on OS X. WTF? 2014-09-03T19:49:23Z drmeister: ECL CLOS::GENERIC-FUNCTION-METHODS 2014-09-03T19:50:20Z Bicyclidine: well, there you go then. i don't know ecl 2014-09-03T19:50:42Z Bicyclidine: in an application you'd use the closer-to-mop wrapping library, but i didn't know if you were using clasp (so it wouldn't be implemented) 2014-09-03T19:51:01Z oleo: sb-mop 2014-09-03T19:51:17Z oleo: (find-package :sb-mop) 2014-09-03T19:51:26Z Bicyclidine: he's not on sbcl, dude 2014-09-03T19:54:24Z OmegaAlp1a quit (Changing host) 2014-09-03T19:54:24Z OmegaAlp1a joined #lisp 2014-09-03T19:54:31Z OmegaAlp1a is now known as OmegaAlpha 2014-09-03T19:54:52Z BitPuffin joined #lisp 2014-09-03T19:55:57Z stacksmith quit (Ping timeout: 240 seconds) 2014-09-03T19:56:48Z Bicyclidine quit (Ping timeout: 252 seconds) 2014-09-03T19:59:08Z pnpuff: oleo: : resiste the beginnings and consider the end. :) 2014-09-03T19:59:15Z pnpuff: *resist , uff 2014-09-03T19:59:45Z slyrus quit (Remote host closed the connection) 2014-09-03T20:00:30Z drmeister: Am I eating crazy pills? The GRAY:STREAMP function is reporting NIL for an object that is obviously of a class that derives from STREAM https://gist.github.com/drmeister/1746cd8a1dcb88c8111c 2014-09-03T20:01:01Z drmeister: Please excuse the ugly printing. I'm debugging pretty printing and all I have is ugly printing at the moment. 2014-09-03T20:01:33Z pnpuff: lol 2014-09-03T20:02:09Z cy quit (Quit: :q!) 2014-09-03T20:04:28Z nand1 quit (Remote host closed the connection) 2014-09-03T20:04:35Z nand1 joined #lisp 2014-09-03T20:04:48Z sdemarre quit (Ping timeout: 268 seconds) 2014-09-03T20:05:09Z gravicappa quit (Remote host closed the connection) 2014-09-03T20:05:19Z Bicyclidine joined #lisp 2014-09-03T20:05:55Z shka_ quit (Quit: Lost terminal) 2014-09-03T20:07:21Z ejbs: Reading what dr'meister types here is one of the more interesting things that's happening in my life atm. Maybe that says more about me though 2014-09-03T20:08:26Z edgar-rft quit (Quit: conversation discontinued by sudden death) 2014-09-03T20:08:55Z ehu_ joined #lisp 2014-09-03T20:09:35Z drmeister: I think it's time to delete all compiled files on Linux and OS X, push/pull all changes and rebuild from scratch. Crazy stuff happening here. 2014-09-03T20:09:52Z ehu quit (Ping timeout: 240 seconds) 2014-09-03T20:11:58Z drmeister: ejbs: What a nice thing to say - thank you. And there's no need to be self-deprecating, you are probably as capable as I am. 2014-09-03T20:12:41Z dim: I PostgreSQL we have "make maintainer-clean" for that 2014-09-03T20:13:09Z dim: s/I /In / 2014-09-03T20:13:59Z attila_lendvai joined #lisp 2014-09-03T20:14:24Z cite-reader joined #lisp 2014-09-03T20:16:24Z LiamH joined #lisp 2014-09-03T20:16:36Z jewel_ quit (Ping timeout: 252 seconds) 2014-09-03T20:17:49Z nand1 quit (Remote host closed the connection) 2014-09-03T20:18:06Z nand1 joined #lisp 2014-09-03T20:19:22Z ferada_ is now known as ferada 2014-09-03T20:20:20Z Davidbrcz joined #lisp 2014-09-03T20:20:22Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-03T20:20:34Z MoALTz joined #lisp 2014-09-03T20:26:14Z marsbot is now known as marsam 2014-09-03T20:26:26Z ejbs: drmeister: Don't worry, the self-deprecating remark was light-hearted :) (the rest was very much serious though!) 2014-09-03T20:27:34Z drmeister: Good. We all struggle with personal demons. 2014-09-03T20:29:14Z ejbs: drmeister: That's very thoughtful of you, thanks 2014-09-03T20:30:23Z davazp quit (Ping timeout: 240 seconds) 2014-09-03T20:30:50Z zacharias joined #lisp 2014-09-03T20:32:09Z AeroNotix: is there a way to make SBCL output more warnings? 2014-09-03T20:32:17Z AeroNotix: (aside from writing worse code) 2014-09-03T20:32:56Z Bicyclidine: higher optimization settings? 2014-09-03T20:32:57Z wgl: More warnings? I am pretty satisfied with its current verbosity. 2014-09-03T20:33:11Z AeroNotix: wgl: more static analysis isn't bad though :) 2014-09-03T20:33:15Z mr-foobar quit (Quit: Leaving...) 2014-09-03T20:33:41Z ggole: Stick some type declarations in there 2014-09-03T20:35:27Z ehu joined #lisp 2014-09-03T20:35:32Z resttime joined #lisp 2014-09-03T20:37:09Z ehu_ quit (Ping timeout: 264 seconds) 2014-09-03T20:37:46Z vydd joined #lisp 2014-09-03T20:38:12Z vydd quit (Remote host closed the connection) 2014-09-03T20:39:04Z askatasuna joined #lisp 2014-09-03T20:40:10Z rme: More warnings? Maybe somene should write cl-navi, a library to bring Navi ("Hey! Listen!") from the Legend of Zelda: Ocarina of Time into your lisp development environment. 2014-09-03T20:41:57Z hiyosi quit (Ping timeout: 246 seconds) 2014-09-03T20:42:00Z oGMo: heh 2014-09-03T20:42:52Z stacksmith joined #lisp 2014-09-03T20:43:39Z Xach: minion, chant 2014-09-03T20:43:39Z minion: MORE WARNINGS 2014-09-03T20:45:07Z AeroNotix: rme: clippy => clispy? 2014-09-03T20:47:12Z schaueho quit (Ping timeout: 272 seconds) 2014-09-03T20:47:26Z Ven joined #lisp 2014-09-03T20:47:29Z Karl_Dscc quit (Remote host closed the connection) 2014-09-03T20:52:24Z ggole: "It looks like you're trying to write a parenthesized expression. Would you like help?" 2014-09-03T20:55:19Z oGMo: go classic; "is it because of your plans that you say defmethod initialize instance?" 2014-09-03T20:55:39Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-03T20:58:05Z ggole: Heh. 2014-09-03T20:59:14Z Vivitron quit (Read error: Connection reset by peer) 2014-09-03T20:59:34Z Adlai would appreciate a paperclip that automatically suggested macro templates from source code 2014-09-03T20:59:47Z Vivitron joined #lisp 2014-09-03T21:00:12Z Adlai: often i don't write them out myself just because i'd rather add new functionalities, but going back to edit old code, i'd have appreciated if mac had written that one out for me 2014-09-03T21:00:29Z knob quit (Quit: Leaving) 2014-09-03T21:01:17Z oGMo: you should do that out of habit :P though you probably don't need macros 2014-09-03T21:01:43Z oGMo: "am i using more than 1 line for this?" 2014-09-03T21:03:07Z Bicyclidine quit (Ping timeout: 245 seconds) 2014-09-03T21:03:39Z fortitude joined #lisp 2014-09-03T21:03:47Z Adlai: this would be especially nice for macrolets 2014-09-03T21:04:17Z ehu_ joined #lisp 2014-09-03T21:04:18Z Adlai: the sufficiently smart paperclip could actually prove that the macrolet didn't change the code semantics! 2014-09-03T21:04:41Z fortitude: anybody have any tips for getting ECL to actually collect garbage? 2014-09-03T21:04:46Z ehu quit (Ping timeout: 260 seconds) 2014-09-03T21:04:56Z fortitude: I was just testing large string construction and noticed that the gc doesn't want to reap any of that data 2014-09-03T21:06:08Z karswell` is now known as karswell 2014-09-03T21:06:10Z nydel quit (Ping timeout: 260 seconds) 2014-09-03T21:06:37Z alexey quit (Remote host closed the connection) 2014-09-03T21:08:35Z hiyosi joined #lisp 2014-09-03T21:09:36Z pnpuff quit (Quit: Lost terminal) 2014-09-03T21:12:14Z Mon_Ouie joined #lisp 2014-09-03T21:12:43Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-03T21:13:12Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-03T21:16:13Z attila_lendvai quit (Quit: Leaving.) 2014-09-03T21:17:22Z attila_lendvai joined #lisp 2014-09-03T21:17:22Z attila_lendvai quit (Changing host) 2014-09-03T21:17:22Z attila_lendvai joined #lisp 2014-09-03T21:20:16Z Bicyclidine joined #lisp 2014-09-03T21:21:09Z gensym quit (Ping timeout: 240 seconds) 2014-09-03T21:22:32Z rade joined #lisp 2014-09-03T21:22:41Z attila_lendvai quit (Quit: Leaving.) 2014-09-03T21:23:33Z bgs100 joined #lisp 2014-09-03T21:24:44Z gensym joined #lisp 2014-09-03T21:25:11Z attila_lendvai joined #lisp 2014-09-03T21:26:21Z innertracks quit (Ping timeout: 264 seconds) 2014-09-03T21:26:52Z jtza8 joined #lisp 2014-09-03T21:28:32Z tankrim joined #lisp 2014-09-03T21:28:45Z rade left #lisp 2014-09-03T21:29:22Z ASau quit (Remote host closed the connection) 2014-09-03T21:30:22Z davorb joined #lisp 2014-09-03T21:32:47Z ehu_ quit (Ping timeout: 272 seconds) 2014-09-03T21:33:45Z davorb1 quit (Ping timeout: 246 seconds) 2014-09-03T21:34:01Z ASau joined #lisp 2014-09-03T21:37:56Z Shinmera quit (Quit: Zzzz) 2014-09-03T21:41:49Z ggole quit 2014-09-03T21:45:51Z LiamH quit (Quit: Leaving.) 2014-09-03T21:45:58Z wheelsucker quit (Quit: Client Quit) 2014-09-03T21:53:52Z Bicyclidine quit (Ping timeout: 240 seconds) 2014-09-03T21:54:08Z Svetlana_ quit (Quit: No Ping reply in 180 seconds.) 2014-09-03T21:54:54Z samebchase quit (Ping timeout: 255 seconds) 2014-09-03T21:55:17Z kyl quit (Ping timeout: 245 seconds) 2014-09-03T21:58:00Z marsam is now known as marsbot 2014-09-03T21:59:27Z Davidbrcz quit (Ping timeout: 245 seconds) 2014-09-03T22:01:01Z samebchase joined #lisp 2014-09-03T22:01:59Z kyl joined #lisp 2014-09-03T22:02:52Z Svetlana joined #lisp 2014-09-03T22:03:40Z Bicyclidine joined #lisp 2014-09-03T22:09:06Z froggey quit (Ping timeout: 246 seconds) 2014-09-03T22:09:14Z hiyosi joined #lisp 2014-09-03T22:09:30Z Zeedox_ quit (Remote host closed the connection) 2014-09-03T22:11:14Z froggey joined #lisp 2014-09-03T22:13:52Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-03T22:14:12Z work_op joined #lisp 2014-09-03T22:18:10Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-03T22:18:27Z dmiles_afk joined #lisp 2014-09-03T22:18:48Z logand`` joined #lisp 2014-09-03T22:19:52Z alchemis7 left #lisp 2014-09-03T22:19:54Z alchemis7 joined #lisp 2014-09-03T22:21:49Z Longlius joined #lisp 2014-09-03T22:22:17Z logand` quit (Ping timeout: 245 seconds) 2014-09-03T22:28:39Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-03T22:32:35Z davazp joined #lisp 2014-09-03T22:34:02Z fortitude quit (Quit: leaving) 2014-09-03T22:36:57Z sz0 joined #lisp 2014-09-03T22:37:09Z Rotacidni quit (Ping timeout: 240 seconds) 2014-09-03T22:41:19Z askatasuna quit (Quit: WeeChat 1.0) 2014-09-03T22:42:53Z Zarathustrian joined #lisp 2014-09-03T22:42:59Z cy joined #lisp 2014-09-03T22:43:25Z defaultxr joined #lisp 2014-09-03T22:44:52Z sivoais quit (Ping timeout: 240 seconds) 2014-09-03T22:47:25Z Zarathustrian quit (Ping timeout: 260 seconds) 2014-09-03T22:47:35Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-03T22:50:54Z marsbot is now known as marsam 2014-09-03T22:51:40Z petrutrimbitas joined #lisp 2014-09-03T22:54:00Z sz0 quit 2014-09-03T22:54:16Z prxq_ quit (Ping timeout: 252 seconds) 2014-09-03T22:54:45Z ejbs` joined #lisp 2014-09-03T22:55:01Z TDog joined #lisp 2014-09-03T22:56:21Z ejbs quit (Ping timeout: 246 seconds) 2014-09-03T22:57:35Z kobain joined #lisp 2014-09-03T23:00:08Z Sgeo joined #lisp 2014-09-03T23:01:04Z vaporatorius quit (Remote host closed the connection) 2014-09-03T23:02:21Z mishoo quit (Ping timeout: 264 seconds) 2014-09-03T23:02:40Z work_op quit (Ping timeout: 246 seconds) 2014-09-03T23:03:17Z ejbs` quit (Remote host closed the connection) 2014-09-03T23:03:34Z rme quit (Quit: rme) 2014-09-03T23:03:34Z rme quit (Quit: rme) 2014-09-03T23:03:48Z Bicyclidine quit (Ping timeout: 252 seconds) 2014-09-03T23:06:04Z nydel joined #lisp 2014-09-03T23:10:04Z hiyosi joined #lisp 2014-09-03T23:10:36Z ejbs joined #lisp 2014-09-03T23:10:44Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-03T23:11:47Z rszeno joined #lisp 2014-09-03T23:14:48Z Bicyclidine joined #lisp 2014-09-03T23:14:57Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-03T23:19:18Z antonv joined #lisp 2014-09-03T23:19:41Z marsam is now known as marsbot 2014-09-03T23:22:22Z banjara quit (Quit: Leaving.) 2014-09-03T23:22:38Z banjara joined #lisp 2014-09-03T23:23:56Z Rotacidni joined #lisp 2014-09-03T23:26:15Z tankrim quit (Read error: Connection reset by peer) 2014-09-03T23:28:31Z tankrim joined #lisp 2014-09-03T23:28:45Z theos quit (Ping timeout: 264 seconds) 2014-09-03T23:29:11Z jtza8 quit (Remote host closed the connection) 2014-09-03T23:30:25Z davorb1 joined #lisp 2014-09-03T23:31:34Z nug700 joined #lisp 2014-09-03T23:34:09Z davorb quit (Ping timeout: 246 seconds) 2014-09-03T23:34:14Z hiroakip quit (Ping timeout: 252 seconds) 2014-09-03T23:39:44Z mouse_ quit (Ping timeout: 252 seconds) 2014-09-03T23:43:10Z gregburd joined #lisp 2014-09-03T23:52:22Z hiyosi joined #lisp 2014-09-03T23:52:52Z Krystof quit (Ping timeout: 250 seconds) 2014-09-03T23:53:05Z mouse_ joined #lisp 2014-09-03T23:54:09Z urandom__ quit (Quit: Konversation terminated!) 2014-09-03T23:57:25Z Rptx joined #lisp 2014-09-03T23:58:21Z banjara quit (Quit: Leaving.) 2014-09-03T23:59:29Z Vivitron` joined #lisp 2014-09-03T23:59:30Z Vivitron quit (Read error: Connection reset by peer) 2014-09-04T00:02:13Z ggherdov quit (Ping timeout: 272 seconds) 2014-09-04T00:02:46Z banjara joined #lisp 2014-09-04T00:03:40Z d4gg4d___ quit (Ping timeout: 272 seconds) 2014-09-04T00:04:03Z d4gg4d____ joined #lisp 2014-09-04T00:05:02Z Bicyclidine quit (Ping timeout: 252 seconds) 2014-09-04T00:05:04Z protist joined #lisp 2014-09-04T00:05:32Z protist: I just put up a cool read macro for function literals in Common Lisp like those in Clojure: https://github.com/GordianNaught/Function-Literal 2014-09-04T00:06:27Z nisstyre quit (Ping timeout: 272 seconds) 2014-09-04T00:06:32Z Xach: #( is a pretty not good choice. 2014-09-04T00:06:48Z wasamasa: that must be why clojure went for it 2014-09-04T00:06:53Z CrazyEddy joined #lisp 2014-09-04T00:06:54Z BitPuffin quit (Ping timeout: 260 seconds) 2014-09-04T00:06:59Z frkout_ joined #lisp 2014-09-04T00:07:23Z protist: wasamasa: lol :) 2014-09-04T00:07:31Z Xach: I don't think that's relevant in CL. Using #( will break existing code. 2014-09-04T00:07:44Z Xach: If you make a new language you can use whatever you like. 2014-09-04T00:07:54Z wasamasa: throwing out the cruft 2014-09-04T00:07:55Z protist: Xach: yeah I put a warning on there :p 2014-09-04T00:08:09Z Rptx` joined #lisp 2014-09-04T00:08:10Z wasamasa: who needs car and cdr anyways when you're writing your own lisp 2014-09-04T00:08:30Z oleo is now known as Guest31080 2014-09-04T00:08:35Z gendl_ joined #lisp 2014-09-04T00:09:07Z zRecursive joined #lisp 2014-09-04T00:09:10Z rszeno quit (Quit: Leaving.) 2014-09-04T00:09:25Z phadthai_ joined #lisp 2014-09-04T00:09:25Z flip214_ joined #lisp 2014-09-04T00:09:31Z cite-rea1er joined #lisp 2014-09-04T00:09:32Z nitro_idiot joined #lisp 2014-09-04T00:10:06Z Xach: protist: I don't think that's sufficient. 2014-09-04T00:10:06Z angavrilov_ joined #lisp 2014-09-04T00:10:10Z oleo__ joined #lisp 2014-09-04T00:10:19Z wizzo joined #lisp 2014-09-04T00:10:24Z protist: Xach: hmmm 2014-09-04T00:10:38Z wasamasa: protist: you could consult the clhs for untaken reader macros 2014-09-04T00:10:53Z Xach: There are several reserved for such things 2014-09-04T00:11:04Z vlnx_ joined #lisp 2014-09-04T00:11:08Z EvW1 quit (Ping timeout: 272 seconds) 2014-09-04T00:11:15Z Guest31080 quit (Ping timeout: 246 seconds) 2014-09-04T00:11:15Z wasamasa: I remember someone posting a link to it this day 2014-09-04T00:11:20Z Xach: http://l1sp.org/cl/2.4.8 2014-09-04T00:11:20Z wormphle1m joined #lisp 2014-09-04T00:11:24Z ssake_ joined #lisp 2014-09-04T00:11:27Z Mandus_ joined #lisp 2014-09-04T00:11:45Z Patzy_ joined #lisp 2014-09-04T00:11:54Z p_l_ joined #lisp 2014-09-04T00:12:05Z cross_ joined #lisp 2014-09-04T00:12:10Z leo2007 quit (Ping timeout: 255 seconds) 2014-09-04T00:12:10Z shwouchk quit (Ping timeout: 255 seconds) 2014-09-04T00:12:10Z girrig quit (Ping timeout: 255 seconds) 2014-09-04T00:12:11Z Zhivago quit (Ping timeout: 255 seconds) 2014-09-04T00:12:11Z nitro_idiot_ quit (Ping timeout: 255 seconds) 2014-09-04T00:12:11Z cite-reader quit (Ping timeout: 243 seconds) 2014-09-04T00:12:11Z clog quit (Ping timeout: 270 seconds) 2014-09-04T00:12:11Z frkout quit (Ping timeout: 243 seconds) 2014-09-04T00:12:11Z phadthai quit (Ping timeout: 243 seconds) 2014-09-04T00:12:11Z vlnx quit (Ping timeout: 243 seconds) 2014-09-04T00:12:11Z flip214 quit (Ping timeout: 243 seconds) 2014-09-04T00:12:11Z Rptx quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z gendl quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z Patzy quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z cross quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z p_l quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z Mandus quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z Intensity quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z ssake quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z ^Posterdati^ quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z blakbunnie27 quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z wormphlegm quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z _d3f quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z fikusz quit (Ping timeout: 255 seconds) 2014-09-04T00:12:12Z angavrilov quit (Ping timeout: 255 seconds) 2014-09-04T00:12:13Z Intensity joined #lisp 2014-09-04T00:12:13Z gendl_ is now known as gendl 2014-09-04T00:12:13Z Intensity quit (Changing host) 2014-09-04T00:12:13Z Intensity joined #lisp 2014-09-04T00:12:20Z fikusz_ joined #lisp 2014-09-04T00:12:20Z wasamasa: protist: #{} looks good 2014-09-04T00:12:37Z girrig joined #lisp 2014-09-04T00:12:41Z wasamasa: protist: or #[] 2014-09-04T00:12:45Z clog joined #lisp 2014-09-04T00:12:45Z ^Posterdati^ joined #lisp 2014-09-04T00:12:48Z _d3f joined #lisp 2014-09-04T00:12:48Z shwouchk joined #lisp 2014-09-04T00:13:10Z protist: wasamasa: ide rather not steal balanced punctuation from something that might need it more 2014-09-04T00:13:18Z p_l_ is now known as p_l 2014-09-04T00:13:27Z Xach: but the already-defined #() is ok? or is that also bad? 2014-09-04T00:13:31Z wasamasa: protist: you're stealing, one way or the other 2014-09-04T00:13:35Z ejbs: #L, L for Lambda, right? 2014-09-04T00:13:39Z protist: wasamasa: lol true 2014-09-04T00:14:23Z protist: yeah I like the idea of # then a single char/symbol maybe 2014-09-04T00:14:36Z protist: although # by itself is more terse, which is kind of the point 2014-09-04T00:14:52Z protist: also liked it naturally producing #` from LoL 2014-09-04T00:15:11Z protist: LOL* 2014-09-04T00:15:24Z ggherdov joined #lisp 2014-09-04T00:15:40Z ejbs: Still a heck of a lot more terse than writing lambda :) 2014-09-04T00:15:58Z protist: #λ ? 2014-09-04T00:16:12Z wasamasa: APLISP 2014-09-04T00:16:31Z protist: I happen to be writing an APL interpreter in Prolog currently :D 2014-09-04T00:17:04Z wasamasa: that explains everything 2014-09-04T00:17:51Z protist: I aplogize for my existance :p 2014-09-04T00:18:03Z protist: and my spelling 2014-09-04T00:18:48Z blakbunnie27 joined #lisp 2014-09-04T00:20:41Z CrazyEddy quit (Ping timeout: 276 seconds) 2014-09-04T00:21:31Z banjara quit (Quit: Leaving.) 2014-09-04T00:21:55Z banjara joined #lisp 2014-09-04T00:22:27Z Oberon4278 quit (Ping timeout: 252 seconds) 2014-09-04T00:22:30Z banjara quit (Client Quit) 2014-09-04T00:24:03Z leo2007 joined #lisp 2014-09-04T00:27:35Z attila_lendvai quit (Quit: Leaving.) 2014-09-04T00:27:55Z drmeister quit (Remote host closed the connection) 2014-09-04T00:29:45Z malice quit (Remote host closed the connection) 2014-09-04T00:29:54Z Zhivago joined #lisp 2014-09-04T00:29:54Z Zhivago quit (Changing host) 2014-09-04T00:29:54Z Zhivago joined #lisp 2014-09-04T00:30:39Z zz_karupa is now known as karupa 2014-09-04T00:30:59Z whmark: how can I remove packages installed with quicklisp? do I need to manually do that? 2014-09-04T00:34:20Z nisstyre joined #lisp 2014-09-04T00:34:32Z CrazyEddy joined #lisp 2014-09-04T00:34:55Z cite-rea1er quit (Quit: leaving) 2014-09-04T00:35:29Z Lowfyr joined #lisp 2014-09-04T00:39:24Z nyef: whmark: The first question that comes to mind is "why would you need to?" 2014-09-04T00:40:38Z Rptx` is now known as Rptx 2014-09-04T00:47:29Z zeitue joined #lisp 2014-09-04T00:47:42Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-04T00:47:47Z kangfy joined #lisp 2014-09-04T00:48:50Z whmark: nyef: to remove climacs 2014-09-04T00:49:24Z PuercoPop: whmark: why do you need to remove climacs? 2014-09-04T00:50:22Z PuercoPop: there is ql:uninstall btw 2014-09-04T00:50:52Z kangfy quit (Remote host closed the connection) 2014-09-04T00:51:04Z drmeister joined #lisp 2014-09-04T00:51:17Z PuercoPop: 17:03 *** Bicyclidine JOIN 2014-09-04T00:51:18Z shwouchk quit (Ping timeout: 255 seconds) 2014-09-04T00:51:53Z theos joined #lisp 2014-09-04T00:52:12Z Intensity quit (Ping timeout: 255 seconds) 2014-09-04T00:52:43Z nyef: The only reason that comes to mind to uninstall anything in QL is "low disk space". 2014-09-04T00:54:00Z whmark: PuercoPop: I didn't like it 2014-09-04T00:54:09Z whmark: anyways thanks 2014-09-04T00:56:20Z nyef: If you don't like it, don't use it. But it shouldn't do particularly much harm just sitting there. 2014-09-04T00:56:56Z defaultxr quit (Quit: defaultxr) 2014-09-04T00:57:19Z defaultxr joined #lisp 2014-09-04T00:57:26Z shwouchk joined #lisp 2014-09-04T00:57:43Z Xach: whmark: ql:uninstall will do it 2014-09-04T00:58:47Z nyef: Xach is the authority when it comes to quicklisp. If you want it gone, that'd be how to arrange it. (-: 2014-09-04T01:00:07Z drmeister quit (Read error: Connection reset by peer) 2014-09-04T01:02:52Z harish quit (Ping timeout: 240 seconds) 2014-09-04T01:03:04Z stepnem quit (Ping timeout: 272 seconds) 2014-09-04T01:04:19Z CrazyEddy joined #lisp 2014-09-04T01:07:59Z drmeister joined #lisp 2014-09-04T01:10:40Z Rotacidni quit (Ping timeout: 272 seconds) 2014-09-04T01:11:59Z work_op joined #lisp 2014-09-04T01:16:49Z Lowfyr` joined #lisp 2014-09-04T01:17:24Z davazp quit (Remote host closed the connection) 2014-09-04T01:19:46Z froggey quit (Ping timeout: 264 seconds) 2014-09-04T01:20:34Z froggey joined #lisp 2014-09-04T01:20:48Z Lowfyr quit (Ping timeout: 272 seconds) 2014-09-04T01:25:32Z work_op: what does #lisp think about learnlispthehardway? 2014-09-04T01:25:37Z ejbs quit (Ping timeout: 260 seconds) 2014-09-04T01:27:22Z mouse_ quit (Remote host closed the connection) 2014-09-04T01:28:24Z Vivitron`: protist: that doesn't just block array syntax it also blocks e.g. pathnames and hex as well. Typically I much prefer to have a reader macro function itself (e.g. lambda-macro-reader) exported than to have it bound to something for me. 2014-09-04T01:28:39Z Jesin quit (Quit: Leaving) 2014-09-04T01:29:00Z Jesin joined #lisp 2014-09-04T01:29:18Z nyef: I am, for some reason, reminded of xml-mixed-mode. 2014-09-04T01:29:34Z protist: Vivitron`: i'm not well versed in modularity...feel free to give a pull request :)....make sure to edit the readme 2014-09-04T01:29:43Z nyef: (a non-terminating #\< reader-macro that parses XML tags within Lisp source code.) 2014-09-04T01:29:47Z protist: Vivitron`: ask me about your choice of dispatch characters first 2014-09-04T01:30:32Z davorb joined #lisp 2014-09-04T01:31:34Z Vivitron`: protist: my point is that my preference is that the consumer of the library make that choice 2014-09-04T01:32:08Z protist: Vivitron`: ah 2014-09-04T01:34:12Z davorb1 quit (Ping timeout: 246 seconds) 2014-09-04T01:34:21Z nisstyre quit (Quit: WeeChat 0.4.3) 2014-09-04T01:35:08Z nisstyre joined #lisp 2014-09-04T01:38:50Z phadthai_ is now known as phadthai 2014-09-04T01:40:21Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-04T01:40:41Z _schulte_ joined #lisp 2014-09-04T01:44:37Z anvilmutant joined #lisp 2014-09-04T01:45:06Z anvilmutant quit (Excess Flood) 2014-09-04T01:46:20Z jusss joined #lisp 2014-09-04T01:47:12Z paddymahoney joined #lisp 2014-09-04T01:48:08Z mathrick quit (Ping timeout: 250 seconds) 2014-09-04T01:49:08Z theethicalegoist joined #lisp 2014-09-04T01:56:12Z CrazyEddy joined #lisp 2014-09-04T01:57:48Z Rotacidni joined #lisp 2014-09-04T02:04:24Z vlnx_ quit (Read error: Connection reset by peer) 2014-09-04T02:05:58Z vlnx joined #lisp 2014-09-04T02:06:07Z gregburd quit (Quit: Connection closed for inactivity) 2014-09-04T02:06:21Z askatasuna joined #lisp 2014-09-04T02:07:11Z varjag quit (Quit: Connection closed for inactivity) 2014-09-04T02:09:31Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-04T02:14:11Z Tordek quit (Ping timeout: 268 seconds) 2014-09-04T02:14:56Z Tordek joined #lisp 2014-09-04T02:16:57Z nydel quit (Ping timeout: 260 seconds) 2014-09-04T02:19:05Z sheilong joined #lisp 2014-09-04T02:19:36Z Rptx quit (Ping timeout: 252 seconds) 2014-09-04T02:20:38Z harish joined #lisp 2014-09-04T02:26:34Z CrazyEddy joined #lisp 2014-09-04T02:31:09Z theos quit (Ping timeout: 264 seconds) 2014-09-04T02:32:01Z theos joined #lisp 2014-09-04T02:36:33Z cwandrews quit (Ping timeout: 260 seconds) 2014-09-04T02:37:28Z atgreen quit (Remote host closed the connection) 2014-09-04T02:38:29Z defaultxr quit (Remote host closed the connection) 2014-09-04T02:38:38Z Jesin quit (Excess Flood) 2014-09-04T02:38:42Z cwandrews joined #lisp 2014-09-04T02:39:02Z vert2 quit (Ping timeout: 245 seconds) 2014-09-04T02:39:15Z Jesin joined #lisp 2014-09-04T02:39:30Z defaultxr joined #lisp 2014-09-04T02:39:47Z vert2 joined #lisp 2014-09-04T02:41:41Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-04T02:42:06Z atgreen joined #lisp 2014-09-04T02:42:37Z Vutral quit (Ping timeout: 260 seconds) 2014-09-04T02:44:12Z juiko joined #lisp 2014-09-04T02:45:34Z radioninja quit (Ping timeout: 264 seconds) 2014-09-04T02:46:10Z Rptx joined #lisp 2014-09-04T02:46:27Z Tordek quit (Ping timeout: 245 seconds) 2014-09-04T02:48:12Z vert2 quit (Ping timeout: 245 seconds) 2014-09-04T02:49:02Z Intensity joined #lisp 2014-09-04T02:51:47Z Tordek joined #lisp 2014-09-04T02:53:20Z vert2 joined #lisp 2014-09-04T02:55:15Z Vutral joined #lisp 2014-09-04T02:59:26Z juiko` joined #lisp 2014-09-04T03:01:17Z juiko quit (Ping timeout: 260 seconds) 2014-09-04T03:04:56Z bgs100 quit (Quit: bgs100) 2014-09-04T03:10:14Z marsbot is now known as marsam 2014-09-04T03:17:54Z jusss joined #lisp 2014-09-04T03:20:58Z CrazyEddy quit (Ping timeout: 264 seconds) 2014-09-04T03:21:08Z cy quit (Quit: i still have no idea) 2014-09-04T03:21:33Z askatasuna quit (Quit: WeeChat 1.0) 2014-09-04T03:25:06Z hiyosi quit (Ping timeout: 268 seconds) 2014-09-04T03:25:58Z viaken: My lambda is limp. 2014-09-04T03:26:03Z Karl_Dscc joined #lisp 2014-09-04T03:26:13Z viaken: Whatever font urxvt is choosing to display the lambda has a floppy ascender. 2014-09-04T03:29:59Z Karl_Dscc quit (Remote host closed the connection) 2014-09-04T03:31:54Z theethicalegoist quit (Quit: Leaving) 2014-09-04T03:37:19Z drmeister: Ugh, I'm banging my head against a wall. I broke something related to generic function dispatch in CLOS. (gray:streamp f) where "f" is clearly a gray stream is returning NIL. A couple of git commits ago everything was fine. What do I do? Unwind commits or try to debug generic function dispatch. Bleh. 2014-09-04T03:38:17Z drmeister: I just had to go and mess with implementing compiler macros and there are some compiler macros utilized in ECL clos. 2014-09-04T03:39:00Z drmeister: I had them all disabled and everything worked fine without them but I've touched something and woken the beast within generic function dispatch. 2014-09-04T03:39:50Z drmeister: There are two methods for GRAY:STREAMP. 2014-09-04T03:40:24Z drmeister: (defmethod streamp ((stream t)) nil) 2014-09-04T03:40:25Z viaken: My suggestion is to do a git bysect, you can figure out exactly which commit broke it. Gives you more info to fix it with. 2014-09-04T03:41:16Z White_Flame joined #lisp 2014-09-04T03:41:36Z drmeister: I haven't done stuff like that with git yet (I'm new to git). Do you have any recommendations on how to do it without breaking anything? 2014-09-04T03:41:47Z Bike: drmeister: declare everything notinline, see if it still breaks? 2014-09-04T03:42:04Z Bike: well, assuming you do notinline and compiler macros right, i guess 2014-09-04T03:42:11Z drmeister: Everything is notinline - this is my compiler we are talking about. 2014-09-04T03:42:27Z nyef: Git bisect is actually fairly easy to operate, but requires a clean working tree to start with. 2014-09-04T03:42:40Z |3b|: notinline prevents expansion of compiler macros too 2014-09-04T03:43:22Z drmeister: I don't have compiler macros at the moment. They are disabled because they aren't fully implemented yet. Yet, something has changed. 2014-09-04T03:43:34Z Bike: uh... hm. 2014-09-04T03:43:37Z nyef: On the other hand, if you're in the habit of huge commits and breaking stuff generally, bisect might not help all that much. 2014-09-04T03:44:01Z drmeister: They aren't huge commits. Just a few files at a time for the past couple of days. 2014-09-04T03:44:13Z Mon_Ouie quit (Ping timeout: 268 seconds) 2014-09-04T03:44:25Z nyef: How long does a build take to get to the point where you can test this bug? 2014-09-04T03:44:37Z drmeister: About 10 minutes. 2014-09-04T03:44:43Z nyef: Yeah, do the bisect. 2014-09-04T03:45:10Z nyef: "git bisect bad", check out something from before it showed up, "git bisect good", then it'll pick something in the middle for you to check. 2014-09-04T03:45:20Z drmeister: Hmm, that's an actual command "git bisect" ... reading... 2014-09-04T03:45:39Z nyef: Don't worry about the automation script stuff for now. 2014-09-04T03:45:44Z drmeister: How does it know the difference between good and bad? 2014-09-04T03:45:48Z nyef: You tell it. 2014-09-04T03:45:55Z drmeister struggles with it himself. 2014-09-04T03:46:05Z nyef: It says "try this one", you try it, and then you say "git bisect good" or "git bisect bad". 2014-09-04T03:46:14Z Bike: as in, you pick a commit before things broke, and that's the "good" one. 2014-09-04T03:47:09Z nyef: Your initial "good" and "bad" commits form the bounds, and you do a binary search within that space with git doing most of the hard work. 2014-09-04T03:47:23Z drmeister: I see - that's pretty neat. 2014-09-04T03:48:14Z drmeister: How do I figure out the last "good" commit? 2014-09-04T03:48:43Z PuercoPop: you can do the test of streamp you spoke of above, 2014-09-04T03:49:01Z PuercoPop: sorry misread 2014-09-04T03:49:08Z PuercoPop: nvm 2014-09-04T03:49:25Z nyef: That's a bit more random, but you could either start at the beginning of time, or just jump backwards about a week at a hop or whatever seems right until you find a good commit. 2014-09-04T03:50:03Z nyef: (And remember to mark each "bad" commit as you find them, since you're testing them anyway.) 2014-09-04T03:50:55Z drmeister: And how do you specify revisions with git? I look at "git log" and use things like f646478253b233aef9df323a1c834ca25455333b 2014-09-04T03:51:15Z drmeister: I find them to be a bit cryptic. 2014-09-04T03:51:30Z nyef: It's an SHA hash, IIRC. 2014-09-04T03:51:32Z hiyosi joined #lisp 2014-09-04T03:51:42Z nyef: It's perfectly good for an argument to "git checkout". 2014-09-04T03:51:45Z drmeister: I liked svn's revisions -r 1432 - that was a great revision. 2014-09-04T03:51:54Z Bike: can't you also use the first, uh, i think six hex digits there? 2014-09-04T03:52:07Z nyef: Something like that, yeah, but if you have copy-and-paste, use it. 2014-09-04T03:52:16Z Bike: true. 2014-09-04T03:52:49Z nyef: I find that I double-click to get the entire hash, then either use the copy and paste keyboard shortcuts, Yank in emacs, or the middle mouse button to paste. 2014-09-04T03:53:13Z nyef: Hrm. I might have to re-assess that practice in a few months. 2014-09-04T03:54:11Z drmeister: Ok, I jumped back to Saturday - I'm pretty sure it worked then. 2014-09-04T03:54:42Z drmeister: I glance at them and retype them from memory. 2014-09-04T03:54:58Z nyef: Good memory, if it works. 2014-09-04T03:55:47Z protist: drmeister: what compiler? 2014-09-04T03:55:48Z |3b| just uses gitk, can check it out directly with mouse :p 2014-09-04T03:55:49Z drmeister: Nope, it's never worked because I type them with my forehead. 2014-09-04T03:55:54Z nyef: Make sure to re-check that the supposed-good commit works, otherwise it'll get fingered as the breaking one and you might get really confused when it doesn't seem to make any sense in context. 2014-09-04T03:56:09Z drmeister: I'm doing that now. 2014-09-04T03:56:28Z drmeister: protist: It's called Clasp. 2014-09-04T03:56:33Z hiyosi quit (Ping timeout: 268 seconds) 2014-09-04T03:58:57Z drmeister: It's compiling the CL source now. I get the cold-sweats when dispatching doesn't work. It's so tricky to debug. I spent months doing this in the spring of either this year or last year trying to get CLOS to load and run properly. 2014-09-04T03:59:57Z Vivitron`: drmeister: I wrote a short example for using "git bisect run" which automates bisect using a script, for if you get sick of shepherding compiles https://github.com/m-n/rundown/blob/master/git-bisect.md 2014-09-04T04:00:27Z drmeister: Hmm, it's still broken. This is not what I thought it was. It's pretty-printing - now that I enabled pretty printing some other bug is surfacing. 2014-09-04T04:01:40Z drmeister: Pretty printing uses gray streams and now that pretty printing is being invoked in the C++ code my gray stream code is being exercised. 2014-09-04T04:01:54Z beach joined #lisp 2014-09-04T04:02:01Z beach: Good morning everyone! 2014-09-04T04:02:13Z drmeister: I think I'm going to have to figure out what's going on with dispatch. 2014-09-04T04:02:17Z drmeister: beach: Hello! 2014-09-04T04:02:44Z drmeister: I've been thinking about you and SICL all day. 2014-09-04T04:03:10Z beach: I hope that's good. :) 2014-09-04T04:03:37Z drmeister: Oh yes, only nice things. 2014-09-04T04:04:52Z beach: Whew! 2014-09-04T04:05:18Z protist: question for everyone here....I am a firm OOP hater....does CLOS have anything to offer for someone as predjudiced as I am? 2014-09-04T04:05:26Z protist: i've heard CLOS is different 2014-09-04T04:05:58Z Bike: there's no public/protected/private stuff. 2014-09-04T04:06:25Z jusss quit (Ping timeout: 268 seconds) 2014-09-04T04:06:42Z protist: Bike: well that's a step up 2014-09-04T04:07:01Z drmeister: protist: Classes are containers of data and that's it. Rather than single dispatch methods you have "generic functions" which are a beautiful generalization of functions. 2014-09-04T04:07:06Z beach: I have started a specification for environments in Cleavir. See chapter 2 of http://metamodular.com/cleavir.pdf. It is not finished yet. I still have to work on functions for augmenting the environment, and there are a few query functions missing. 2014-09-04T04:08:14Z Bike: i think the entry for :identity in lexical-variable-info was mispasted from one for specials. 2014-09-04T04:08:21Z protist: drmeister: that sounds good :) 2014-09-04T04:08:26Z drmeister: beach: Did you see my email (I hate asking that question, you either did and are busy or you didn't and then you feel like you should have). 2014-09-04T04:08:33Z beach: Bike: Yeah, that can happen. Thanks. 2014-09-04T04:08:52Z beach: drmeiste: I saw it, but I have been sleeping since. I'll get to it soon. 2014-09-04T04:08:56Z protist: drmeister: what are you hoping to offer with Clasp that you find lacking in other implementations? 2014-09-04T04:09:02Z protist: drmeister: or is it for fun? 2014-09-04T04:09:12Z protist: drmeister: or just link me to your readme lol 2014-09-04T04:09:50Z drmeister: protist: C++ interoperation 2014-09-04T04:09:55Z Bike: not sure i understand what identity is for. why do local functions have them and global functions don't? (and why are those separate, incidentally) 2014-09-04T04:10:26Z protist: drmeister: nifty :D 2014-09-04T04:10:50Z Bike: and local macros don't have them... hm. 2014-09-04T04:11:09Z drmeister: beach: No problem. I'm traveling to SF tomorrow for a workshop on "Directed/Programmable Matter for Energy" I'll have time on the plane to dig into SICL/Cleavir some more. 2014-09-04T04:11:13Z beach: drmeister: Yes, in SICL there should be everything you need to generate MIR. 2014-09-04T04:11:50Z beach: drmeister: SICL is meant to be a collection of independent packages for people like you. You should definitely pick whatever you need and leave the rest. 2014-09-04T04:11:57Z drmeister: I'm extremely excited about this. 2014-09-04T04:13:28Z drmeister: Oh - gotta do something. BBL 2014-09-04T04:14:29Z beach: Bike: I fixed it in the GitHub repository, but I didn't upload a new version to metamodular. Thanks again. 2014-09-04T04:15:06Z Bike: Fixed? 2014-09-04T04:15:37Z beach: Bike: The entry on :identity you pointed out. 2014-09-04T04:15:51Z beach: Oh, I am not keeping up. Sorry. 2014-09-04T04:16:27Z beach: Bike: Local functions need identity because there can be several with the same name. 2014-09-04T04:16:38Z beach: Bike: But there can be only one global function with a particular name. 2014-09-04T04:16:42Z Bike: I see. 2014-09-04T04:17:11Z nydel joined #lisp 2014-09-04T04:17:14Z beach: Macros don't need an identity because they are just expanded and no longer kept around after that. 2014-09-04T04:19:47Z kushal joined #lisp 2014-09-04T04:21:01Z beach: I am not happy with the term "identity". I used to call it "location", but that is even worse. I considered "identifier" but that word has a glossary entry in the CLHS. Of course, "identity" is a symbol in the CL package, so it's not great either. 2014-09-04T04:21:24Z beach: I also considered "unique-id". 2014-09-04T04:21:36Z nug700_ joined #lisp 2014-09-04T04:22:10Z nug700 quit (Ping timeout: 260 seconds) 2014-09-04T04:26:33Z marsam is now known as marsbot 2014-09-04T04:31:49Z Rptx quit (Quit: gonna sleep!) 2014-09-04T04:33:09Z Jesin quit (Quit: Leaving) 2014-09-04T04:36:46Z drmeister: beach: How do operations on unboxed numbers (floats) work? Is the idea that they are unboxed once and then worked with as unboxed values for a while before they are boxed up again. 2014-09-04T04:37:32Z beach: drmeister: Right. And then a sequence of box->unbox can be eliminated. 2014-09-04T04:37:48Z drmeister: Across function calls though you pass boxed values? 2014-09-04T04:38:00Z beach: drmeister: Furthermore, most implementations have specialized arrays that contain unboxed floats. 2014-09-04T04:38:13Z beach: No, across function calls, they have to be boxed. 2014-09-04T04:38:51Z drmeister: Yes, I have those. I plan to expand arrays to include any C++ struct/class. 2014-09-04T04:39:29Z Bike: beach: Does that include local functions, out of curiosity? 2014-09-04T04:39:33Z beach: In fact, eliminating box->unbox is probably automatic with value numbering. 2014-09-04T04:39:53Z Zhivago: Don't you also have a tagged immediate and untagged immediate representation? 2014-09-04T04:39:57Z drmeister: I think I see. So iterating across an array of unboxed values you can do that in Common Lisp while working with unboxed intermediate values? 2014-09-04T04:40:24Z beach: Bike: No, there are situations where it is possible to use unboxed numbers across function calls. That's one of them. I was simplifying. 2014-09-04T04:40:30Z Bike: oh, ok. 2014-09-04T04:40:35Z Zhivago: If the container specifies the content class sufficiently, it should be possible to store them as untagged immediates. 2014-09-04T04:40:37Z modula joined #lisp 2014-09-04T04:40:53Z yeticry quit (Quit: leaving) 2014-09-04T04:40:55Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-04T04:40:58Z beach: Zhivago: Right. 2014-09-04T04:41:02Z drmeister: beach: Do you have different types of calls? Like general, slower calls and faster, more register passing calls? 2014-09-04T04:41:27Z defaultxr quit (Ping timeout: 246 seconds) 2014-09-04T04:41:27Z modula is now known as defaultxr 2014-09-04T04:41:35Z beach: drmeister: All my calls are fast! :) 2014-09-04T04:41:59Z Bike: sometimes i wonder about the practicality of having multiple entry points for a function with arguments of known type, so that they could be unsafely called with unboxed values by skipping the unboxing part of the code 2014-09-04T04:42:01Z beach: drmeister: For the x86-64, for example, I use pretty much the standard calling convention. 2014-09-04T04:42:42Z juiko` quit (Ping timeout: 260 seconds) 2014-09-04T04:42:44Z beach: Bike: I am considering doing that safely within a compilation unit. 2014-09-04T04:42:52Z drmeister: You don't specify the calling convention do you? I currently pass the closed environment, the number of arguments, three arguments in registers (or NULL) and the rest in varargs. I plan to switch from varargs to passing the arguments in the multiple-value return array. 2014-09-04T04:42:53Z beach: I think that will capture most interesting situations. 2014-09-04T04:43:17Z Bike: oh, i guess outside a compilation unit you have to worry about redefinitions. bummer. 2014-09-04T04:43:23Z beach: drmeister: I do specify calling conventions for SICL and for each backend. 2014-09-04T04:43:23Z juiko` joined #lisp 2014-09-04T04:43:44Z beach: drmeister: But your system is not SICL, so you can use whatever calling conventions you want. 2014-09-04T04:44:01Z Zhivago: Redefinitions should be able to take into account what it is redefining and populate the same entry points. 2014-09-04T04:44:24Z yeticry joined #lisp 2014-09-04T04:44:46Z nyef quit (Quit: G'night all) 2014-09-04T04:45:40Z beach: drmeister: Again, I am trying to make the different modules implementation independent. You should be able to pick modules that fit your implementation. I still have to figure out how to integrate backends into Cleavir without imposing register use and calling conventions. 2014-09-04T04:46:45Z defaultxr quit (Ping timeout: 260 seconds) 2014-09-04T04:46:55Z drmeister: Escape analysis is carried out on MIR - right? 2014-09-04T04:47:02Z beach: Right. 2014-09-04T04:47:36Z drmeister: How does the MIR work? I see the inputs/outputs/predecessors/successors - but how does it work? 2014-09-04T04:48:33Z beach: drmeister: That's a strange question. It's just a graph of instructions. Most instructions have a single successor. Conditional instructions have two. Inputs and outputs are whatever the instructions consumes/produces. 2014-09-04T04:48:54Z drmeister: Like fixnum-add-instruction? It takes two input fixnum values, adds then and outputs the one result? 2014-09-04T04:49:26Z beach: That particular instruction is a conditional instruction that chooses its successor based on overflow or not. 2014-09-04T04:49:34Z drmeister: What are predecessors and successors? 2014-09-04T04:49:43Z innertracks joined #lisp 2014-09-04T04:49:51Z beach: drmeister: It's a graph of instructions? 2014-09-04T04:50:14Z drmeister: But the inputs and outputs define the graph don't they? 2014-09-04T04:50:20Z beach: drmeister: The successor is based on control flow. The predecessor is just the inverse of successor. 2014-09-04T04:50:57Z beach: drmeister: Right, there are two superimposed graphs. One is the control flow graph, and the other is the data flow graph. Pretty standard stuff. 2014-09-04T04:51:21Z drmeister: Oh, I see, the predecessor and successor describe what executes before and after the instruction. 2014-09-04T04:51:21Z beach: drmeister: Except that in the literature, inputs and outputs are typically in the form of names. 2014-09-04T04:51:31Z drmeister: The inputs/outputs are where the data comes from and where it goes to. 2014-09-04T04:51:37Z beach: Right. 2014-09-04T04:51:38Z drmeister: Where the result goes to. 2014-09-04T04:51:40Z drmeister: Got it. 2014-09-04T04:52:26Z hiyosi joined #lisp 2014-09-04T04:52:43Z tajjada quit (Ping timeout: 272 seconds) 2014-09-04T04:53:23Z drmeister: Are there MIR instructions that define function entry and return? I see enter-instruction. 2014-09-04T04:53:34Z beach: Yes, enter and return. 2014-09-04T04:53:46Z beach: ... and call, tailcall. 2014-09-04T04:53:54Z harish quit (Ping timeout: 268 seconds) 2014-09-04T04:54:13Z beach: It's one of those things where I have no problem imagining the graph in my head, but when I render it with Graphviz, the result is really scary. :) 2014-09-04T04:54:15Z tajjada joined #lisp 2014-09-04T04:54:19Z drmeister: Which instructions interact with closures? 2014-09-04T04:54:27Z beach: enclose 2014-09-04T04:54:32Z beach: and call. 2014-09-04T04:55:36Z innertracks quit (Quit: innertracks) 2014-09-04T04:55:49Z Bike: call is the same for closures and non-? 2014-09-04T04:55:56Z beach: Yes. 2014-09-04T04:56:37Z drmeister: How does enclose know what to enclose - the inputs? 2014-09-04T04:56:50Z drmeister: There is no environment at this point - right - everything is encoded in the MIR. 2014-09-04T04:57:25Z beach: Enclose has a special input: The enter instruction of the code to enclose. 2014-09-04T04:57:35Z hiyosi quit (Ping timeout: 276 seconds) 2014-09-04T04:57:46Z beach: drmeister: There is the runtime environment at this point of course. 2014-09-04T04:58:28Z drmeister: Oh, there is a runtime environment alongside the MIR that is necessary to interpret the MIR properly. 2014-09-04T04:58:30Z beach: drmeister: But some analyses (escape analysis, register allocation, etc) are meant to establish exactly how the runtime environment is structured. 2014-09-04T04:58:34Z ramfjord quit (Ping timeout: 260 seconds) 2014-09-04T04:58:39Z beach: Yes. 2014-09-04T04:59:08Z drmeister: Got it. Is the environment formed from a SICL environment object? 2014-09-04T04:59:12Z beach: Again, it's standard stuff. I am not making anything up. 2014-09-04T04:59:33Z drmeister: Every sufficiently advanced technology looks like magic. 2014-09-04T04:59:34Z beach: drmeister: As far as MIR is concerned, you represent the environment any way you want. 2014-09-04T05:00:29Z drmeister: That scares me. I have no idea how to represent an environment that MIR needs. What does it need to maintain? Declarations? Specialness? 2014-09-04T05:00:36Z beach: drmeister: In (say) the x86-64 backend, I use pretty much standard register use and stack frames. The dynamic runtime environment is allocated on the stack, which is appropriate. 2014-09-04T05:01:05Z beach: drmeister: The specialness of a variable has already been taken care of. 2014-09-04T05:01:15Z beach: drmeister: Declarations too. 2014-09-04T05:01:34Z drmeister: Oh, this is a runtime environment. We are running the MIR. Not a compile-time environment. 2014-09-04T05:01:36Z beach: drmeister: Type declarations are encoded in the TYPEQ and THE instructions. 2014-09-04T05:01:41Z beach: yes. 2014-09-04T05:01:46Z beach: Just stack and registers. 2014-09-04T05:01:53Z drmeister: Got it. So it's a stack and a memory allocator. 2014-09-04T05:02:01Z drmeister: and registers. 2014-09-04T05:02:04Z bdr3553 joined #lisp 2014-09-04T05:02:08Z beach: Pretty much, yes. 2014-09-04T05:02:09Z antonv: erc 2014-09-04T05:02:16Z drmeister: This will be very educational. 2014-09-04T05:02:43Z drmeister: Compiler bootcamp. 2014-09-04T05:03:09Z beach: drmeister: You may have to read a paper or two from time to time. 2014-09-04T05:03:27Z drmeister: Not a problem. 2014-09-04T05:03:58Z oleo__ quit (Quit: Verlassend) 2014-09-04T05:04:03Z drmeister: I'm more of a doer than a reader but I will read when I have to. Red wine helps. 2014-09-04T05:04:08Z beach: Again, I am not inventing anything (or at least not much). Just mostly applying known techniques. 2014-09-04T05:04:10Z bdr3552 quit (Ping timeout: 260 seconds) 2014-09-04T05:04:23Z beach: Heh! Yes, I see. 2014-09-04T05:05:11Z beach: I tend to do first and read later. It helps my understanding of the issues, but it means that occasionally, the work I do has already been done. 2014-09-04T05:05:26Z beach: On the other hand, more often than not, I stumble on something that has *not* been done. 2014-09-04T05:07:00Z drmeister: Ok, I better get to bed. I'll be in California for the next couple of days and may be incommunicado. 2014-09-04T05:07:16Z beach: Have a nice trip! 2014-09-04T05:07:43Z drmeister: Thanks. Cheers 2014-09-04T05:08:25Z pjb: I doubt it. AFAIK, California is the densest area of free wifi. 2014-09-04T05:08:39Z pjb: (at least the populated areas of California). 2014-09-04T05:08:41Z drmeister: Oh, hang on - are there any git experts still online? If I checked out an earlier commit and "git branch" says (detached from d29bf49) how do I get back to the HEAD? 2014-09-04T05:09:11Z pjb: I'm no expert. I would try git checkout HEAD. 2014-09-04T05:09:47Z drmeister: when I say "git checkout HEAD" "git branch" still says "* (detached from d29bf49)" 2014-09-04T05:10:01Z pjb: QED. 2014-09-04T05:10:09Z drmeister: I'd like to return to the branch that I was working on. 2014-09-04T05:10:16Z pjb: Try to ask that to google (and get a stackoverflow answer). 2014-09-04T05:10:38Z pjb: It's a shame nowadays people rely on stackoverflow for documentation and support of their clumsy software. 2014-09-04T05:10:54Z drmeister: Yeah - I'm being lazy - sorry. 2014-09-04T05:11:17Z pjb: I mean, they should design software that aren't clumsy and don't need a query to google for each step. 2014-09-04T05:11:57Z harish joined #lisp 2014-09-04T05:14:03Z pranavrc joined #lisp 2014-09-04T05:14:05Z pranavrc quit (Changing host) 2014-09-04T05:14:05Z pranavrc joined #lisp 2014-09-04T05:15:59Z sword` quit (Read error: Connection reset by peer) 2014-09-04T05:21:34Z juiko` quit (Read error: Connection reset by peer) 2014-09-04T05:22:13Z pt1 joined #lisp 2014-09-04T05:25:10Z sheilong quit (Quit: Konversation terminated!) 2014-09-04T05:25:35Z work_op: is it necessarily the developers fault if the user cant retain attention for more than several minute and resorts to googling? 2014-09-04T05:30:09Z tajjada quit (Ping timeout: 260 seconds) 2014-09-04T05:30:41Z jusss joined #lisp 2014-09-04T05:31:29Z protist: funny we need expert git users.....vc shouldn't be this hard 2014-09-04T05:31:36Z protist: and yet it is 2014-09-04T05:32:11Z MoALTz quit (Quit: Leaving) 2014-09-04T05:32:16Z protist: the problem is obvious when you see multiple answers saying different methods of doing the same thing getting high marks on SO 2014-09-04T05:32:16Z H4ns: protist: it has a tradition. in shops where clearcase is used, there usually is at least one "clearcase administrator" who is the go-to person for anything that fails. 2014-09-04T05:32:42Z H4ns: protist: that tells me that the problem is hard, no matter what the solution is. 2014-09-04T05:33:12Z drmeister quit (Remote host closed the connection) 2014-09-04T05:35:35Z sivoais joined #lisp 2014-09-04T05:38:18Z paddymahoney quit (Ping timeout: 268 seconds) 2014-09-04T05:41:53Z hiroakip joined #lisp 2014-09-04T05:42:49Z slyrus joined #lisp 2014-09-04T05:44:39Z pt1 quit (Remote host closed the connection) 2014-09-04T05:46:01Z Rotacidni quit (Ping timeout: 260 seconds) 2014-09-04T05:46:32Z theos quit (Ping timeout: 245 seconds) 2014-09-04T05:46:53Z theos joined #lisp 2014-09-04T05:49:38Z sdemarre joined #lisp 2014-09-04T05:50:45Z yacks quit (Ping timeout: 246 seconds) 2014-09-04T05:52:22Z yacks joined #lisp 2014-09-04T05:53:15Z hiyosi joined #lisp 2014-09-04T05:54:05Z Shinmera joined #lisp 2014-09-04T05:54:05Z easye` quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-04T05:54:26Z easye joined #lisp 2014-09-04T05:55:49Z beach: Time to get some work done. 2014-09-04T05:55:52Z beach left #lisp 2014-09-04T05:56:26Z sdemarre quit (Ping timeout: 260 seconds) 2014-09-04T05:58:41Z hiyosi quit (Ping timeout: 276 seconds) 2014-09-04T05:59:47Z Mon_Ouie joined #lisp 2014-09-04T06:00:05Z work_op: Time to sleep. 2014-09-04T06:02:54Z slyrus quit (Ping timeout: 252 seconds) 2014-09-04T06:07:24Z prxq joined #lisp 2014-09-04T06:07:40Z jusss quit (Read error: Connection reset by peer) 2014-09-04T06:07:40Z hiroakip quit (Ping timeout: 252 seconds) 2014-09-04T06:14:42Z sdemarre joined #lisp 2014-09-04T06:15:04Z slyrus joined #lisp 2014-09-04T06:19:46Z yrk quit (Remote host closed the connection) 2014-09-04T06:21:47Z __prefect joined #lisp 2014-09-04T06:22:57Z sdemarre quit (Ping timeout: 246 seconds) 2014-09-04T06:23:38Z mrSpec joined #lisp 2014-09-04T06:25:28Z mr-foobar joined #lisp 2014-09-04T06:27:28Z harish quit (Ping timeout: 252 seconds) 2014-09-04T06:34:32Z edgar-rft joined #lisp 2014-09-04T06:34:58Z xificurC joined #lisp 2014-09-04T06:35:31Z banjara joined #lisp 2014-09-04T06:36:28Z ck_: drmeiste_: have you solved the git issue? 2014-09-04T06:38:55Z mr-fooba_ joined #lisp 2014-09-04T06:41:16Z mr-foobar quit (Ping timeout: 272 seconds) 2014-09-04T06:42:11Z ggole joined #lisp 2014-09-04T06:43:59Z harish joined #lisp 2014-09-04T06:44:21Z ThePhoeron quit (Ping timeout: 240 seconds) 2014-09-04T06:45:37Z mishoo joined #lisp 2014-09-04T06:46:52Z pt1 joined #lisp 2014-09-04T06:47:03Z ehu joined #lisp 2014-09-04T06:49:23Z ThePhoeron joined #lisp 2014-09-04T06:51:22Z mvilleneuve joined #lisp 2014-09-04T06:53:44Z Lowfyr` quit (Remote host closed the connection) 2014-09-04T06:53:59Z hiyosi joined #lisp 2014-09-04T06:55:53Z arenz joined #lisp 2014-09-04T06:56:13Z CrazyWoods joined #lisp 2014-09-04T06:58:31Z Harag joined #lisp 2014-09-04T06:58:58Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-04T07:00:12Z __prefect quit (Ping timeout: 245 seconds) 2014-09-04T07:01:16Z alexey joined #lisp 2014-09-04T07:03:02Z petrutrimbitas joined #lisp 2014-09-04T07:03:24Z gz__ quit (Ping timeout: 260 seconds) 2014-09-04T07:03:43Z gz__ joined #lisp 2014-09-04T07:05:33Z Krystof joined #lisp 2014-09-04T07:07:42Z zxq9 quit (Ping timeout: 245 seconds) 2014-09-04T07:08:51Z zRecursive quit (Remote host closed the connection) 2014-09-04T07:12:04Z stepnem joined #lisp 2014-09-04T07:14:34Z nell joined #lisp 2014-09-04T07:14:41Z jewel_ joined #lisp 2014-09-04T07:15:25Z ehu quit (Ping timeout: 276 seconds) 2014-09-04T07:16:24Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-04T07:21:16Z shka joined #lisp 2014-09-04T07:22:10Z drmeister joined #lisp 2014-09-04T07:22:28Z shka: drmeister: good morning 2014-09-04T07:23:16Z jewel__ joined #lisp 2014-09-04T07:24:48Z Beetny joined #lisp 2014-09-04T07:24:58Z jewel_ quit (Ping timeout: 272 seconds) 2014-09-04T07:25:24Z jusss` joined #lisp 2014-09-04T07:25:44Z jusss` is now known as jusss- 2014-09-04T07:26:39Z drmeister quit (Ping timeout: 246 seconds) 2014-09-04T07:27:40Z jewel__ is now known as jewel 2014-09-04T07:28:14Z Cymew joined #lisp 2014-09-04T07:29:33Z ztomo joined #lisp 2014-09-04T07:30:09Z Shinmera: capitaomorte: Hey, are you around? 2014-09-04T07:33:04Z ztomo left #lisp 2014-09-04T07:37:03Z innertracks joined #lisp 2014-09-04T07:37:14Z ASau quit (Ping timeout: 260 seconds) 2014-09-04T07:49:25Z snits joined #lisp 2014-09-04T07:50:20Z Vutral_ quit (Ping timeout: 252 seconds) 2014-09-04T07:52:44Z jewel quit (Quit: Leaving) 2014-09-04T07:54:23Z antonv quit (Ping timeout: 276 seconds) 2014-09-04T07:54:50Z hiyosi joined #lisp 2014-09-04T07:55:25Z Vutral quit (Excess Flood) 2014-09-04T07:55:56Z alexey quit (Remote host closed the connection) 2014-09-04T07:56:01Z Vutral joined #lisp 2014-09-04T07:56:16Z flip214_ is now known as flip214 2014-09-04T07:56:24Z flip214 quit (Changing host) 2014-09-04T07:56:25Z flip214 joined #lisp 2014-09-04T07:59:12Z Vivitron` quit (Read error: Connection reset by peer) 2014-09-04T07:59:24Z Vivitron joined #lisp 2014-09-04T07:59:38Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-04T08:01:37Z capitaomorte left #lisp 2014-09-04T08:02:58Z Maurice_TCF joined #lisp 2014-09-04T08:04:47Z ramfjord joined #lisp 2014-09-04T08:08:51Z posterdati300 joined #lisp 2014-09-04T08:12:54Z banjara quit (Quit: Leaving.) 2014-09-04T08:23:52Z ee_cc_ joined #lisp 2014-09-04T08:24:36Z Vutral quit (Excess Flood) 2014-09-04T08:24:45Z ee_cc_ quit (Client Quit) 2014-09-04T08:24:56Z malice joined #lisp 2014-09-04T08:28:34Z ramfjord quit (Ping timeout: 260 seconds) 2014-09-04T08:28:39Z Maurice_TCF: Trying to get Lisp in the box running, want to add some key bindings but ~/.emacs is not being read. Tips? 2014-09-04T08:29:26Z H4ns: Maurice_TCF: what platform? 2014-09-04T08:29:52Z Vutral joined #lisp 2014-09-04T08:29:53Z Maurice_TCF: OSX 2014-09-04T08:30:08Z H4ns: Maurice_TCF: what emacs? 2014-09-04T08:31:06Z Maurice_TCF: GNU Emacs 23.2.1 2014-09-04T08:31:33Z Maurice_TCF: Mmm. The supplied bash scripts runs with --no-init-file That could be a clue... 2014-09-04T08:32:02Z H4ns: i'm not saying that it will solve your problem, but i'm using emacs 24.9.93 from http://emacsformacosx.com/builds and things work for me 2014-09-04T08:32:17Z H4ns: but --no-init-file is a real explanation :) 2014-09-04T08:32:29Z Maurice_TCF: Thank. You are using it on OSX too? 2014-09-04T08:32:34Z H4ns: Maurice_TCF: yes. 2014-09-04T08:32:58Z innertracks quit (Quit: innertracks) 2014-09-04T08:33:00Z Maurice_TCF: Do you use some customised keybindings for copy/pasting and navigation (cmd+up / down) 2014-09-04T08:33:20Z innertracks joined #lisp 2014-09-04T08:33:30Z H4ns: Maurice_TCF: no, it is all working out of the box with that build. 2014-09-04T08:33:49Z H4ns: Maurice_TCF: i do swap alt and cmd, though. 2014-09-04T08:34:00Z Maurice_TCF: Ok, thank. Will look into it. 2014-09-04T08:34:16Z H4ns: Maurice_TCF: all that is better discussed in #emacs, really. #lisp is about common lisp 2014-09-04T08:34:25Z H4ns: Error 404 No such file 2014-09-04T08:34:28Z H4ns: oops 2014-09-04T08:34:52Z Maurice_TCF: Yes, you're right. Sorry. Trying to get Lisp in the Box up and running, which uses Emacs. 2014-09-04T08:36:19Z ee_cc joined #lisp 2014-09-04T08:36:20Z innertracks quit (Client Quit) 2014-09-04T08:37:12Z nug700_ quit (Quit: bye) 2014-09-04T08:37:36Z H4ns: Maurice_TCF: no problem. 2014-09-04T08:41:15Z petrutrimbitas joined #lisp 2014-09-04T08:46:42Z clarkema joined #lisp 2014-09-04T08:53:07Z pgomes joined #lisp 2014-09-04T08:54:33Z BitPuffin joined #lisp 2014-09-04T08:55:39Z hiyosi joined #lisp 2014-09-04T08:59:56Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-04T09:00:34Z hiyosi quit (Ping timeout: 268 seconds) 2014-09-04T09:01:21Z gravicappa joined #lisp 2014-09-04T09:10:52Z drmeister joined #lisp 2014-09-04T09:14:02Z ee_cc quit (Quit: ee_cc) 2014-09-04T09:14:45Z jusss- quit (Ping timeout: 268 seconds) 2014-09-04T09:15:33Z drmeister quit (Ping timeout: 260 seconds) 2014-09-04T09:21:27Z H4ns: can ~$ insert commas every three digits? 2014-09-04T09:21:52Z Zhivago: Like 123,456,7? 2014-09-04T09:22:09Z H4ns: Zhivago: like 1,234,567.89 2014-09-04T09:22:20Z dim: I think yes, don't remember the details 2014-09-04T09:23:05Z H4ns: dim: thanks for telling me that you don't remember either :) 2014-09-04T09:23:45Z dim: (format nil "The answer is ~:D." (expt 47 5)) 2014-09-04T09:23:56Z ee_cc_ joined #lisp 2014-09-04T09:23:59Z dim: https://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node200.html 2014-09-04T09:24:12Z H4ns: dim: only that D prints integers. 2014-09-04T09:24:25Z dim: oh. 2014-09-04T09:25:06Z H4ns: but i can certainly work from there, thanks anyway 2014-09-04T09:26:49Z schjetne: I'm a bit confused by the random-state concept. What I want to do 2014-09-04T09:26:49Z schjetne: is to manually seed the RNG so I can get the exact same sequence every 2014-09-04T09:26:50Z schjetne: time, for testing purposes. 2014-09-04T09:27:25Z schjetne: (not sure why my message was split, must be something wrong with 2014-09-04T09:27:26Z schjetne: my ERC config) 2014-09-04T09:27:39Z petrutrimbitas joined #lisp 2014-09-04T09:29:15Z H4ns: schjetne: you'll have to save the random state and then bind *random-state* to a copy of the saved value when you want to start the sequence from the same point. 2014-09-04T09:30:34Z schjetne: H4ns: I'm guessing that random state would be different each time I start SBCL 2014-09-04T09:30:47Z H4ns: schjetne: yes, supposedly so. 2014-09-04T09:30:58Z schjetne: (found the problem with the line breaks, had auto-fill-mode for some reason) 2014-09-04T09:31:57Z H4ns: schjetne: you need to save a known random state to some persistent store and then restore it from that store to initialize your *random-state* 2014-09-04T09:34:07Z Krystof: A detail: I think sbcl images start up with the same random state each time 2014-09-04T09:34:35Z Krystof: but it is probably wise nevertheless to make and bind your own random state 2014-09-04T09:34:40Z rszeno joined #lisp 2014-09-04T09:34:55Z schjetne: Yes, I'd prefer to make it independent of builds, versions or even CL implementations 2014-09-04T09:35:20Z schjetne: I'm guessing I need to use some kind of CLOS serialization system 2014-09-04T09:35:53Z schjetne: Because the CLHS on make-random-state doesn't provide any clues 2014-09-04T09:37:53Z H4ns: schjetne: (with-standard-io-syntax (read-from-string (with-output-to-string (*standard-output*) (print (make-random-state))))) 2014-09-04T09:38:06Z H4ns: schjetne: cleanse to suit 2014-09-04T09:39:14Z schjetne: H4ns: thanks, I'll give it a try! 2014-09-04T09:39:40Z kcj joined #lisp 2014-09-04T09:41:49Z schjetne: Of course, print gives a readable representation, sometimes I forget how awesome Lisp really is. 2014-09-04T09:42:23Z H4ns: i don't know if the CLHS requires a random state object to be readable. 2014-09-04T09:42:32Z H4ns: but for sbcl, this approach will work just fine. 2014-09-04T09:43:22Z H4ns: i have written some code to save and restore the random state in bknr-datastore, maybe you want to grep in that tree to see how it works there. that is at least portable between ccl and sbcl, iirc. 2014-09-04T09:44:28Z loke: Yay! I just got multiplexed push-messages working from hunchentoot 2014-09-04T09:44:39Z H4ns: woo-hoo! 2014-09-04T09:45:31Z schjetne: loke: that is relevant to my interests 2014-09-04T09:46:06Z loke: H4ns: However, I'm thinking that it would be really useful to be able to keep a reference to *hunchentoot-stream*. Right now I have to access it using ::. Perhaps it should be exported? 2014-09-04T09:46:30Z loke: schjetne: My implementaiton is here: https://github.com/lokedhs/lofn/blob/master/polling-server.lisp 2014-09-04T09:46:46Z H4ns: loke: is the stream not returned by raw-post-data? 2014-09-04T09:46:57Z loke: Hmm.... 2014-09-04T09:47:06Z loke: Ah. yes 2014-09-04T09:47:32Z loke: Of course... Silly me. I never actually thought of that. The drawback of having digged too much in the hunchentoot innards :-) 2014-09-04T09:47:43Z wasamasa: drmeiste_: this is probably really obvious, but since you've been speaking of C++ interop only, will this include C interop automatically, too? 2014-09-04T09:48:29Z schjetne: loke: long polling? I was thinking of using the Nginx push module, but doing it directly with Hunchentoot would be a lot more elegant 2014-09-04T09:48:44Z loke: schjetne: Exactly. 2014-09-04T09:48:53Z schjetne: I'll bookmark it for future reference, thanks 2014-09-04T09:49:11Z TomRS` joined #lisp 2014-09-04T09:49:24Z loke: schjetne: Basically, I exit the handler thread and only keep a reference to the socket. Then I use the usocket poll functionality to monitor all the sockets at the same time 2014-09-04T09:49:57Z rvirding_ quit (Ping timeout: 240 seconds) 2014-09-04T09:51:35Z loke: schjetne: It's compatible with (and requires) my one-thread-per-connection implementation here: https://github.com/lokedhs/html5-notification 2014-09-04T09:51:37Z rvirding_ joined #lisp 2014-09-04T09:55:22Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-04T09:56:26Z hiyosi joined #lisp 2014-09-04T09:56:42Z alexey joined #lisp 2014-09-04T09:59:12Z hugod is now known as hugod|away 2014-09-04T09:59:16Z ejbs joined #lisp 2014-09-04T09:59:25Z hugod|away is now known as hugod 2014-09-04T10:01:17Z alexey quit (Ping timeout: 260 seconds) 2014-09-04T10:01:17Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-04T10:02:45Z arenz quit (Ping timeout: 246 seconds) 2014-09-04T10:04:18Z jtza8 joined #lisp 2014-09-04T10:05:19Z kalzz quit (Ping timeout: 268 seconds) 2014-09-04T10:05:19Z josteink quit (Ping timeout: 268 seconds) 2014-09-04T10:05:39Z josteink joined #lisp 2014-09-04T10:06:33Z manfoo7`` quit (Ping timeout: 268 seconds) 2014-09-04T10:08:04Z ee_cc_ quit (Quit: ee_cc_) 2014-09-04T10:08:28Z Guest32080 quit (Quit: ZNC - http://znc.in) 2014-09-04T10:08:56Z TomRS`` joined #lisp 2014-09-04T10:09:00Z smithzv joined #lisp 2014-09-04T10:09:06Z smithzv is now known as Guest13747 2014-09-04T10:09:45Z kalzz joined #lisp 2014-09-04T10:12:17Z TomRS` quit (Ping timeout: 245 seconds) 2014-09-04T10:18:24Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-04T10:18:25Z dmiles joined #lisp 2014-09-04T10:19:18Z effy joined #lisp 2014-09-04T10:21:53Z effy_ quit (Ping timeout: 240 seconds) 2014-09-04T10:23:08Z capitaomorte joined #lisp 2014-09-04T10:23:29Z capitaomorte: Shinmera: yes, sorry I'm here 2014-09-04T10:24:09Z capitaomorte: I bad at IRC still... :| 2014-09-04T10:24:50Z Shinmera: capitaomorte: I tried out your example on hunchensocket. The code runs fine, but when I try the websocket echo page it simply reports "ERROR: undefined" 2014-09-04T10:24:53Z wasamasa: capitaomorte: as long as you're good on keeping yasnippet good 2014-09-04T10:25:15Z Shinmera: capitaomorte: I'm seeing a hunchentoot log entry in the REPL, but otherwise I have no clue what might be going wrong 2014-09-04T10:26:54Z ejbs quit (Ping timeout: 252 seconds) 2014-09-04T10:27:35Z protist quit (Quit: Konversation terminated!) 2014-09-04T10:31:05Z loke: (setq hunchentoot:*catch-errors-p* nil) 2014-09-04T10:31:31Z capitaomorte: wasamasa: :) 2014-09-04T10:31:46Z alexey joined #lisp 2014-09-04T10:31:52Z Shinmera: loke: I'm not getting any errors. 2014-09-04T10:32:04Z Shinmera: loke: only on the websocket page, but HT itself doesn't report anything 2014-09-04T10:32:06Z capitaomorte: Shinmera: I have to look at the example again. I remember it was working at the time. 2014-09-04T10:32:27Z capitaomorte: can you open an issue? 2014-09-04T10:32:41Z Shinmera: capitaomorte: I'm not sure what I should report beyond what I said, but sure 2014-09-04T10:32:46Z capitaomorte: I promise to look at it later 2014-09-04T10:32:53Z Shinmera: Sure, it's not urgent. 2014-09-04T10:33:24Z capitaomorte: well you can say what is "it" in the "it simply reports" :-) 2014-09-04T10:33:36Z Shinmera: 127.0.0.1 - [2014-09-04 12:31:31] "GET /?encoding=text HTTP/1.1" 404 292 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36" 2014-09-04T10:33:40Z Shinmera: nothing more. 2014-09-04T10:33:41Z capitaomorte: is it the text you see on the page? 2014-09-04T10:33:55Z H4ns: "404" 2014-09-04T10:34:45Z Shinmera: Ah, I'm dumb 2014-09-04T10:35:05Z Shinmera: capitaomorte: You should ammend to the tutorial that you have to enter the chatroom to connect to in the location 2014-09-04T10:35:21Z capitaomorte: ah 2014-09-04T10:35:28Z capitaomorte: so it works now? 2014-09-04T10:35:32Z Shinmera: Works nicely now, sorry for the inconvenience 2014-09-04T10:36:09Z cy joined #lisp 2014-09-04T10:36:45Z capitaomorte: so it should be "enter ws://localhost:12345/bongo as the host and play around chatting with yourself." 2014-09-04T10:36:58Z capitaomorte: Shinmera: right? 2014-09-04T10:37:05Z Shinmera: yes 2014-09-04T10:37:24Z capitaomorte: Well OK, still there's a problem with the error reporting which is atrocious ... 2014-09-04T10:37:33Z capitaomorte: but I'm glad it's not horribly broken 2014-09-04T10:38:00Z capitaomorte: Shinmera: please do open the issue if you find the time, ok? 2014-09-04T10:38:11Z capitaomorte: that and any more issues/comments that you come across 2014-09-04T10:38:28Z Shinmera: Well, issues seem to be deactivated for your repository? 2014-09-04T10:38:36Z capitaomorte: ah :) 2014-09-04T10:39:08Z capitaomorte: shoulbe OK 2014-09-04T10:39:25Z capitaomorte: I'm sorry I have to leave now, thanks for trying out hunchensocket 2014-09-04T10:39:33Z Shinmera: Sure, I'll dabble around some more 2014-09-04T10:39:43Z capitaomorte left #lisp 2014-09-04T10:41:19Z ee_cc joined #lisp 2014-09-04T10:46:14Z rwiker_ joined #lisp 2014-09-04T10:46:15Z rwiker___ joined #lisp 2014-09-04T10:47:21Z rwiker___ quit (Client Quit) 2014-09-04T10:47:32Z rwiker_ quit (Client Quit) 2014-09-04T10:48:43Z rwiker_ joined #lisp 2014-09-04T10:50:21Z rwiker_ quit (Client Quit) 2014-09-04T10:50:45Z rwiker_ joined #lisp 2014-09-04T10:50:48Z zacharias quit (Ping timeout: 272 seconds) 2014-09-04T10:54:13Z work_op quit (Ping timeout: 246 seconds) 2014-09-04T10:57:14Z hiyosi joined #lisp 2014-09-04T10:57:31Z rwiker_ quit (Quit: Leaving) 2014-09-04T10:58:03Z rwiker_ joined #lisp 2014-09-04T10:59:24Z Vivitron` joined #lisp 2014-09-04T10:59:24Z Vivitron quit (Read error: Connection reset by peer) 2014-09-04T10:59:40Z drmeister joined #lisp 2014-09-04T11:00:47Z rwiker_ quit (Client Quit) 2014-09-04T11:02:03Z hiyosi quit (Ping timeout: 268 seconds) 2014-09-04T11:03:52Z drmeister quit (Ping timeout: 240 seconds) 2014-09-04T11:03:56Z TomRS``` joined #lisp 2014-09-04T11:06:56Z bogi_ joined #lisp 2014-09-04T11:07:28Z kcj quit (Read error: Connection reset by peer) 2014-09-04T11:07:42Z TomRS`` quit (Ping timeout: 260 seconds) 2014-09-04T11:09:34Z bogi_ left #lisp 2014-09-04T11:14:31Z clarkema quit (Quit: clarkema) 2014-09-04T11:18:05Z harish quit (Ping timeout: 268 seconds) 2014-09-04T11:21:44Z jtza8 quit (Ping timeout: 255 seconds) 2014-09-04T11:21:54Z rszeno quit (Quit: Leaving.) 2014-09-04T11:23:40Z arenz joined #lisp 2014-09-04T11:30:58Z davorb1 joined #lisp 2014-09-04T11:33:28Z malice is now known as Malice 2014-09-04T11:34:27Z davorb quit (Ping timeout: 246 seconds) 2014-09-04T11:37:22Z zxq9 joined #lisp 2014-09-04T11:38:05Z TomRS```: hi! I got a question: Who can I check quickly if a list of lists is fully contained in another list of lists :) 2014-09-04T11:38:12Z TomRS```: I tried member: (member '((B T)(C T)) '((B T)(C T)(D T))) 2014-09-04T11:38:28Z vydd joined #lisp 2014-09-04T11:38:28Z vydd quit (Changing host) 2014-09-04T11:38:28Z vydd joined #lisp 2014-09-04T11:38:36Z TomRS```: even this is NIL: (member '(B T) '((B T) (C T) (D T))) 2014-09-04T11:38:40Z H4ns: TomRS```: :test #'equal may help 2014-09-04T11:39:19Z H4ns: TomRS```: but that'd only help in the second case, not the first. 2014-09-04T11:39:31Z TomRS```: right 2014-09-04T11:39:33Z karupa is now known as zz_karupa 2014-09-04T11:39:35Z TomRS```: just tested 2014-09-04T11:39:36Z TomRS```: thanks! 2014-09-04T11:39:54Z H4ns: TomRS```: you may want to look at mismatch, maybe. 2014-09-04T11:40:04Z H4ns: TomRS```: or set-intersection 2014-09-04T11:40:08Z TomRS```: H4ns: thanks!! I'll look into it! 2014-09-04T11:40:12Z H4ns: TomRS```: or maybe at a better data structure than a list :) 2014-09-04T11:40:48Z TomRS```: H4ns: any idea for a better data structure? 2014-09-04T11:41:05Z H4ns: TomRS```: no, because i don't know what you're trying to do. 2014-09-04T11:41:22Z H4ns: TomRS```: but there are arrays and hash tables, and there are libraries for trees and many other things. 2014-09-04T11:42:33Z TomRS```: H4ns: I have two hash tables with lists as keys. I need to find out if a key from the first hash table is fully contained in the key of the second :) 2014-09-04T11:44:05Z H4ns: TomRS```: well, if you insist on that, you'll have to write your test function. you'd first use member to find the start of the key, and if it is found, use mismatch to determine whether it is fully contained. 2014-09-04T11:53:08Z ccl-logbot joined #lisp 2014-09-04T11:53:08Z 2014-09-04T11:53:08Z names: ccl-logbot lupine dfox john-mcaleely abbe khisanth_ lemoinem joga_ Adeon_ les_ Fade tstc` Ralt peccu2 rotty_ vsync gluegadget guaqua` vydd zxq9 davorb1 arenz TomRS``` Vivitron` ee_cc cy alexey effy dmiles kalzz Guest13747 josteink rvirding_ gravicappa BitPuffin pgomes Vutral Malice posterdati300 Maurice_TCF snits Cymew Beetny shka nell stepnem Krystof gz__ Harag CrazyWoods mvilleneuve ThePhoeron pt1 mishoo ggole mr-fooba_ xificurC edgar-rft mrSpec slyrus 2014-09-04T11:53:08Z names: prxq Mon_Ouie easye Shinmera yacks theos sivoais pranavrc bdr3553 yeticry kushal nydel White_Flame vert2 Tordek Intensity atgreen cwandrews vlnx _schulte_ nisstyre froggey shwouchk zeitue Zhivago leo2007 blakbunnie27 ggherdov _d3f ^Posterdati^ clog girrig fikusz_ cross_ p_l Patzy_ Mandus_ ssake_ wormphle1m wizzo angavrilov_ nitro_idiot flip214 phadthai gendl frkout_ d4gg4d____ tankrim Sgeo TDog alchemis7 logand`` Svetlana kyl samebchase gensym stacksmith 2014-09-04T11:53:08Z names: resttime nand1 drdo zarul stanislav wgl drmeiste_ anannie kirin` eli scharan bit` manfoo7 bend3r Kabaka cpt_nemo WeirdEnthusiast leoc keen________ Neet imanc_ Denommus _ku gko aksatac_ axion dlowe ircbrowse phf Nshag _tca oGMo stopbyte lpaste_ qbit jdz teiresias srcerer victor_lowther otwieracz felideon ferada ozzloy fe[nl]ix pchrist_ njsg_ misv AdmiralBumbleB-1 OmegaAlpha Blkt_ asedeno_ setheus Tuxedo_ _8hzp lonjil splittist_ luis TDT` endou__ joshe 2014-09-04T11:53:08Z names: benny ubii ahungry __main__ arpunk _5kg thierrygar hlavaty pjb sytse c74d jasom cmatei tessier GGMethos schoppenhauer sigjuice isoraqathedh DrCode whmark killmaster billstclair pillton ``Erik Aranshada|W Oddity Jubb zwer j0ni honkfestival karswell mindCrime cyphase bjorkintosh matko renard_ milosn s_e jlarocco joneshf sfa housel nicdev viaken GuilOooo joast rvchangue jchochli zmyrgel tadni xristos Bike rollertrump zacts Adlai DGASAU ered clop2 rainbyte 2014-09-04T11:53:08Z names: nightfly araujo heddwch gabot djinni` spacebat joneshf-laptop stoned AeroNotix redline6561 nightshade427 spockokt_ jackdaniel ineiros_ devn jsnell_ cods micro_ ski MightyJoe sepi farawayexplorer newcup codeburg z0d wchun K1rk bcoburn awaythrick_ mikaelj_ wooden zz_karupa cibs kjeldahl Kruppe ecraven wasamasa farhaven foom TristamWrk inklesspen sbryant marsbot sshirokov SHODAN decent zbigniew superjudge__ |3b| brown`` AndroidShoutapop sklr ramus arbscht 2014-09-04T11:53:08Z names: Ober_ eigenlicht_ mdallastella vhost- akkad quasisane Anarch ChibaPet hyoyoung FracV jayne antoszka ThomasSolti yroeht1 mtd tvaalen PuercoPop oconnore byte48 ttm loke enn junke_ kbtr Borbus TheMoonMaster whartung Colleen__ specbot ivan\ H4ns replcated schjetne j_king rk[imposter] eee-blt dim eagleflo lusory stokachu daimrod grungier eazar001 diginet copec FunfYears dan64- BlastHardcheese bege tokenrove Neptu yeltzooo tkd zymurgy necronian cmbntr_ sprang 2014-09-04T11:53:08Z names: acieroid fmu yauz_2 finnrobi aoh faheem_ funnel pok jtz ft johs aerique_ minion Subfusc tbarletz DKordic` sjl- AntiSpamMeta arrdem Soft Xach tomaw- hugod theBlackDragon Tristam mgv eak Lefeni p_l|backup troydm bambams smull_ bobbysmith007 Natch yano tkd_ tomaw ck_ _death felipe galdor mood brucem sellout Okasu l3thal edran eMBee justinmcp_ alpha- 2014-09-04T11:55:34Z emma joined #lisp 2014-09-04T11:56:16Z clarkema joined #lisp 2014-09-04T11:57:33Z frkout_ quit (Ping timeout: 264 seconds) 2014-09-04T11:58:08Z hiyosi joined #lisp 2014-09-04T11:58:15Z petrutrimbitas joined #lisp 2014-09-04T12:01:26Z dim: wow, mismatch. 2014-09-04T12:01:27Z Sgeo quit (Read error: Connection reset by peer) 2014-09-04T12:02:11Z dim: it almost looks like you could implement Boyer&Moore with a loop over mismatch :from-end t 2014-09-04T12:02:57Z hiyosi quit (Ping timeout: 264 seconds) 2014-09-04T12:03:17Z yrk joined #lisp 2014-09-04T12:03:42Z yrk quit (Changing host) 2014-09-04T12:03:42Z yrk joined #lisp 2014-09-04T12:04:13Z vydd quit (Remote host closed the connection) 2014-09-04T12:04:40Z vydd joined #lisp 2014-09-04T12:07:17Z Maurice_TCF: Stupid question, but what extension is more frequently used: .cl or .lisp ? 2014-09-04T12:07:33Z wasamasa places his money on .lisp 2014-09-04T12:07:47Z H4ns: Maurice_TCF: .lisp 2014-09-04T12:07:48Z clarkema quit (Quit: clarkema) 2014-09-04T12:07:48Z wasamasa: !puts 2014-09-04T12:07:53Z dim: .lisp 2014-09-04T12:08:23Z Maurice_TCF: wasama: thanks 2014-09-04T12:08:33Z cy quit (Quit: :q!) 2014-09-04T12:11:54Z alexey quit (Remote host closed the connection) 2014-09-04T12:12:58Z clarkema joined #lisp 2014-09-04T12:13:19Z wasamasa: Maurice_TCF: also, irc clients have this pretty useful feature of tab-completing nicks 2014-09-04T12:13:46Z knob joined #lisp 2014-09-04T12:14:13Z Maurice_TCF: ≈load_flile 2014-09-04T12:14:27Z Maurice_TCF: *wrong window* 2014-09-04T12:14:55Z wasamasa: Maurice_TCF: very useful to make sure you're highlighting the person you're replying to 2014-09-04T12:15:29Z Maurice_TCF: wasamasa: thanks 2014-09-04T12:19:23Z TomRS```` joined #lisp 2014-09-04T12:20:14Z ee_cc quit (Quit: ee_cc) 2014-09-04T12:20:42Z stanislav quit (Ping timeout: 245 seconds) 2014-09-04T12:20:42Z harish joined #lisp 2014-09-04T12:20:50Z Adeon_ is now known as Adeon 2014-09-04T12:22:03Z Beetny quit (Ping timeout: 255 seconds) 2014-09-04T12:22:48Z vydd quit (Remote host closed the connection) 2014-09-04T12:22:50Z TomRS``` quit (Ping timeout: 268 seconds) 2014-09-04T12:23:24Z vydd joined #lisp 2014-09-04T12:24:32Z ee_cc joined #lisp 2014-09-04T12:24:44Z TomRS````: I just noticed that (+ 0.90 0.95) -> 1.8499999 ... I know this is because of float point arithmetic, but how can I fix this easily? 2014-09-04T12:25:00Z H4ns: what do you mean by "fix"? 2014-09-04T12:25:08Z TomRS````: I want to see 1.85 2014-09-04T12:25:29Z H4ns: use double floats 2014-09-04T12:25:51Z H4ns: (+ 0.9d0 0.95d0) => 1.85d0 2014-09-04T12:25:56Z TomRS````: H4ns: thanks! 2014-09-04T12:26:52Z TomRS````: H4ns: that's what I nedded :) 2014-09-04T12:27:54Z vydd quit (Ping timeout: 255 seconds) 2014-09-04T12:28:53Z AeroNotix: TomRS````: [1]> (* 0.3d0 3d0) 2014-09-04T12:28:55Z AeroNotix: 0.8999999999999999d0 2014-09-04T12:28:58Z AeroNotix: still not perfect though :) 2014-09-04T12:29:15Z AeroNotix: TomRS````: is this for currency calculations? 2014-09-04T12:32:34Z vydd joined #lisp 2014-09-04T12:34:33Z TomRS````: AeroNotix: it's for probability calculus 2014-09-04T12:34:34Z Maurice_TCF: TomRS````: (/ (round (* 1.849999d0 100d0)) 100d0) 2014-09-04T12:35:08Z TomRS````: Maurice_TCF: yeah a round function makes sense 2014-09-04T12:36:11Z Maurice_TCF: TomRS````: H4ns gave the correct answer 2014-09-04T12:36:33Z alexey joined #lisp 2014-09-04T12:37:28Z TomRS````: Maurice_TCF: yeah, I am using double floats now, but thanks for pointing out a way to quickly round 'nasty' values :) 2014-09-04T12:37:55Z TomRS```` is still a bid bad noob :) 2014-09-04T12:38:01Z TomRS````: *big 2014-09-04T12:40:12Z gravicappa quit (Ping timeout: 245 seconds) 2014-09-04T12:41:09Z typhonic joined #lisp 2014-09-04T12:41:16Z stanislav joined #lisp 2014-09-04T12:41:27Z rollertrump quit (Read error: Connection reset by peer) 2014-09-04T12:42:46Z pranavrc quit 2014-09-04T12:43:10Z ndrei joined #lisp 2014-09-04T12:47:37Z hitecnologys joined #lisp 2014-09-04T12:52:42Z TomRS```` quit (Remote host closed the connection) 2014-09-04T12:52:58Z TomRS```` joined #lisp 2014-09-04T12:55:20Z EvW joined #lisp 2014-09-04T12:55:31Z YDJX joined #lisp 2014-09-04T12:58:54Z hiyosi joined #lisp 2014-09-04T12:59:20Z gravicappa joined #lisp 2014-09-04T13:04:34Z hiyosi quit (Ping timeout: 252 seconds) 2014-09-04T13:05:17Z ck_: see also *read-default-float-format* 2014-09-04T13:08:52Z arenz quit (Ping timeout: 240 seconds) 2014-09-04T13:09:05Z InfusoElAmbulant joined #lisp 2014-09-04T13:14:22Z TomRS```` quit (Ping timeout: 245 seconds) 2014-09-04T13:15:56Z clarkema quit (Quit: clarkema) 2014-09-04T13:19:02Z eudoxia joined #lisp 2014-09-04T13:19:46Z ee_cc quit (Quit: ee_cc) 2014-09-04T13:21:17Z fortitude joined #lisp 2014-09-04T13:24:41Z sz0 joined #lisp 2014-09-04T13:26:52Z ee_cc joined #lisp 2014-09-04T13:28:10Z sz0 quit (Client Quit) 2014-09-04T13:28:50Z mingvs joined #lisp 2014-09-04T13:29:29Z bdr3552 joined #lisp 2014-09-04T13:30:30Z TDog quit (Ping timeout: 260 seconds) 2014-09-04T13:31:07Z bdr3553 quit (Ping timeout: 245 seconds) 2014-09-04T13:32:49Z Nizumzen joined #lisp 2014-09-04T13:33:42Z oleo joined #lisp 2014-09-04T13:34:57Z ndrei quit (Ping timeout: 255 seconds) 2014-09-04T13:36:32Z arenz joined #lisp 2014-09-04T13:40:37Z cods quit (Ping timeout: 245 seconds) 2014-09-04T13:41:10Z bdr3553 joined #lisp 2014-09-04T13:42:00Z tajjada joined #lisp 2014-09-04T13:42:38Z atgreen quit (Ping timeout: 260 seconds) 2014-09-04T13:44:12Z ndrei joined #lisp 2014-09-04T13:44:14Z bdr3552 quit (Ping timeout: 268 seconds) 2014-09-04T13:55:43Z ustunozgur joined #lisp 2014-09-04T13:55:46Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-04T13:56:03Z mr-fooba_ quit (Quit: Leaving...) 2014-09-04T13:56:42Z cods joined #lisp 2014-09-04T13:57:22Z nydel joined #lisp 2014-09-04T13:58:12Z drmeister joined #lisp 2014-09-04T13:59:10Z Vivitron` quit (Read error: Connection reset by peer) 2014-09-04T13:59:25Z Vivitron joined #lisp 2014-09-04T14:01:36Z hiyosi joined #lisp 2014-09-04T14:01:53Z ejbs joined #lisp 2014-09-04T14:02:27Z TomRS```` joined #lisp 2014-09-04T14:05:35Z Cromulent joined #lisp 2014-09-04T14:06:02Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-04T14:06:33Z mvilleneuve_ joined #lisp 2014-09-04T14:06:50Z xificurC_ joined #lisp 2014-09-04T14:07:53Z jayne_ joined #lisp 2014-09-04T14:08:24Z angavrilov joined #lisp 2014-09-04T14:08:35Z tankrim quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-04T14:08:46Z tkd__ joined #lisp 2014-09-04T14:08:57Z mindCrime_ joined #lisp 2014-09-04T14:10:44Z misv_ joined #lisp 2014-09-04T14:11:00Z les joined #lisp 2014-09-04T14:11:00Z les quit (Changing host) 2014-09-04T14:11:00Z les joined #lisp 2014-09-04T14:11:01Z gingerale joined #lisp 2014-09-04T14:13:06Z slyrus_ joined #lisp 2014-09-04T14:13:14Z vaporatorius joined #lisp 2014-09-04T14:14:05Z leoc_ joined #lisp 2014-09-04T14:14:20Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-04T14:14:30Z Cromulent quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-04T14:14:44Z petrutrimbitas joined #lisp 2014-09-04T14:16:44Z ahungry_ joined #lisp 2014-09-04T14:17:03Z Nizumzen quit (*.net *.split) 2014-09-04T14:17:03Z harish quit (*.net *.split) 2014-09-04T14:17:03Z les_ quit (*.net *.split) 2014-09-04T14:17:03Z mvilleneuve quit (*.net *.split) 2014-09-04T14:17:03Z xificurC quit (*.net *.split) 2014-09-04T14:17:03Z slyrus quit (*.net *.split) 2014-09-04T14:17:03Z theos quit (*.net *.split) 2014-09-04T14:17:03Z ^Posterdati^ quit (*.net *.split) 2014-09-04T14:17:03Z angavrilov_ quit (*.net *.split) 2014-09-04T14:17:03Z leoc quit (*.net *.split) 2014-09-04T14:17:03Z keen________ quit (*.net *.split) 2014-09-04T14:17:03Z misv quit (*.net *.split) 2014-09-04T14:17:03Z j0ni quit (*.net *.split) 2014-09-04T14:17:03Z mindCrime quit (*.net *.split) 2014-09-04T14:17:03Z matko quit (*.net *.split) 2014-09-04T14:17:03Z jlarocco quit (*.net *.split) 2014-09-04T14:17:03Z jayne quit (*.net *.split) 2014-09-04T14:17:03Z zymurgy quit (*.net *.split) 2014-09-04T14:17:03Z AndroidShoutapop quit (*.net *.split) 2014-09-04T14:17:03Z tkd quit (*.net *.split) 2014-09-04T14:17:08Z leoc_ is now known as leoc 2014-09-04T14:17:31Z j0ni joined #lisp 2014-09-04T14:18:58Z slyrus_ is now known as slyrus 2014-09-04T14:19:10Z Tordek quit (Ping timeout: 272 seconds) 2014-09-04T14:19:22Z ehu joined #lisp 2014-09-04T14:19:30Z ndrei quit (Ping timeout: 260 seconds) 2014-09-04T14:19:48Z bend3r quit (Ping timeout: 272 seconds) 2014-09-04T14:20:03Z ee_cc quit (Quit: ee_cc) 2014-09-04T14:20:51Z ^Posterdati^ joined #lisp 2014-09-04T14:21:02Z ndrei joined #lisp 2014-09-04T14:21:15Z harish joined #lisp 2014-09-04T14:21:29Z jlarocco joined #lisp 2014-09-04T14:21:54Z theos joined #lisp 2014-09-04T14:22:46Z Tordek joined #lisp 2014-09-04T14:22:51Z AndroidShoutapop joined #lisp 2014-09-04T14:23:01Z AndroidShoutapop is now known as Guest84074 2014-09-04T14:23:07Z zymurgy joined #lisp 2014-09-04T14:23:33Z effy quit (Ping timeout: 260 seconds) 2014-09-04T14:23:50Z keen________ joined #lisp 2014-09-04T14:25:33Z Davidbrcz joined #lisp 2014-09-04T14:25:38Z effy joined #lisp 2014-09-04T14:26:02Z TomRS```` quit (Ping timeout: 245 seconds) 2014-09-04T14:26:22Z easye quit (Read error: Connection reset by peer) 2014-09-04T14:27:19Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-04T14:27:32Z easye joined #lisp 2014-09-04T14:27:56Z ee_cc joined #lisp 2014-09-04T14:28:02Z bend3r joined #lisp 2014-09-04T14:28:20Z petrutrimbitas joined #lisp 2014-09-04T14:28:26Z Zeedox__ joined #lisp 2014-09-04T14:29:22Z ehu_ joined #lisp 2014-09-04T14:29:46Z petrutrimbitas quit (Client Quit) 2014-09-04T14:29:47Z ehu quit (Ping timeout: 245 seconds) 2014-09-04T14:33:21Z abbe quit (Ping timeout: 260 seconds) 2014-09-04T14:33:29Z 17SAA4KOY joined #lisp 2014-09-04T14:33:29Z mvilleneuve joined #lisp 2014-09-04T14:33:29Z xificurC joined #lisp 2014-09-04T14:33:29Z 17SAA4BHF joined #lisp 2014-09-04T14:33:29Z angavrilov_ joined #lisp 2014-09-04T14:33:29Z 17SAA33JG joined #lisp 2014-09-04T14:33:29Z misv joined #lisp 2014-09-04T14:33:29Z 17SAA3O5I joined #lisp 2014-09-04T14:33:33Z xificurC quit (Max SendQ exceeded) 2014-09-04T14:33:42Z 17SAA4KOY quit (Ping timeout: 244 seconds) 2014-09-04T14:33:52Z mvilleneuve quit (Ping timeout: 244 seconds) 2014-09-04T14:34:00Z 17SAA4BHF quit (Ping timeout: 244 seconds) 2014-09-04T14:34:01Z angavrilov_ quit (Ping timeout: 244 seconds) 2014-09-04T14:34:07Z 17SAA33JG quit (Ping timeout: 244 seconds) 2014-09-04T14:34:08Z misv quit (Ping timeout: 244 seconds) 2014-09-04T14:34:15Z 17SAA3O5I quit (Ping timeout: 244 seconds) 2014-09-04T14:34:16Z abbe joined #lisp 2014-09-04T14:35:13Z benny quit (Ping timeout: 260 seconds) 2014-09-04T14:35:16Z easye quit (Read error: Connection reset by peer) 2014-09-04T14:35:41Z cpt_nemo quit (Ping timeout: 260 seconds) 2014-09-04T14:35:43Z benny joined #lisp 2014-09-04T14:35:48Z cpt_nemo joined #lisp 2014-09-04T14:36:20Z quazimodo joined #lisp 2014-09-04T14:37:25Z shka quit (Remote host closed the connection) 2014-09-04T14:38:10Z victor_lowther quit (Ping timeout: 272 seconds) 2014-09-04T14:38:29Z Nizumzen joined #lisp 2014-09-04T14:39:22Z kobain joined #lisp 2014-09-04T14:39:52Z victor_lowther_ joined #lisp 2014-09-04T14:40:37Z lifenoodles joined #lisp 2014-09-04T14:42:00Z quazimodo quit (Read error: Connection reset by peer) 2014-09-04T14:49:45Z radioninja joined #lisp 2014-09-04T14:51:16Z ndrei quit (Ping timeout: 252 seconds) 2014-09-04T14:51:26Z joga_ is now known as joga 2014-09-04T14:51:32Z joga quit (Changing host) 2014-09-04T14:51:33Z joga joined #lisp 2014-09-04T14:52:29Z rme joined #lisp 2014-09-04T14:52:57Z ndrei joined #lisp 2014-09-04T14:53:12Z j_king: morning... anyone here work with CCL's cocoa interop? I'm curious whether I should invest in a mocl license or if it's possible to build an application bundle for iOS on CCL. 2014-09-04T14:53:46Z rme: j_king: CCL doesn't work on iOS. 2014-09-04T14:55:09Z j_king: rme: gotcha 2014-09-04T14:55:31Z j_king: rme: is it the hardware? 2014-09-04T14:57:27Z ndrei quit (Ping timeout: 246 seconds) 2014-09-04T14:58:19Z vydd quit (Remote host closed the connection) 2014-09-04T14:58:21Z billstclair: http://spin.atomicobject.com/2014/09/03/visualizing-garbage-collection-algorithms/ 2014-09-04T14:58:30Z radioninja quit (Ping timeout: 246 seconds) 2014-09-04T14:58:47Z wheelsucker joined #lisp 2014-09-04T14:59:36Z billstclair: j_king: Gary Byers got CCL working in iOS, but only on a jailbroken phone. The problem is that the compiler creates native code, but iOS doesn't allow userspace code to set the execute bit on a page, so you can't run that code. 2014-09-04T14:59:55Z rme: No, it's iOS. It won't allow writable pages to be executable, and working around that is too painful. 2014-09-04T14:59:58Z billstclair: We've considered shipping with pre-compiled code, and a byte-code interpreter for newly compiled code, but haven't had funding for that 2014-09-04T15:00:16Z billstclair: And Matt and I answered simultaneously. :) 2014-09-04T15:00:19Z j_king: billstclair: Ah, I see. 2014-09-04T15:00:37Z dfox quit (Ping timeout: 245 seconds) 2014-09-04T15:01:22Z dfox joined #lisp 2014-09-04T15:01:33Z j_king: billstclair: I assume that's how mocl got around to it. 2014-09-04T15:01:37Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-04T15:01:54Z billstclair: I'm pretty sure MOCL compiles on your Mac, and loads a precompiled binary to the iPhone 2014-09-04T15:02:01Z ee_cc quit (Quit: ee_cc) 2014-09-04T15:02:13Z billstclair: But I haven't used it 2014-09-04T15:02:22Z hiyosi joined #lisp 2014-09-04T15:02:30Z zwer quit (Excess Flood) 2014-09-04T15:02:56Z zwer joined #lisp 2014-09-04T15:03:04Z nydel joined #lisp 2014-09-04T15:06:25Z ndrei joined #lisp 2014-09-04T15:07:06Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-04T15:07:45Z mr-foobar joined #lisp 2014-09-04T15:08:03Z mvilleneuve_ quit (Quit: This computer has gone to sleep) 2014-09-04T15:09:58Z innertracks joined #lisp 2014-09-04T15:14:28Z j_king: billstclair: is it just a funding issue holding CCL back from iOS? 2014-09-04T15:14:50Z billstclair: Well, if somebody paid us to do it, it would likely get done. 2014-09-04T15:15:23Z billstclair: I don't remember if anybody estimated how big a project it would be, but not trivial. The compiler already exists and works on ARM linux 2014-09-04T15:15:33Z xificurC_ quit (Read error: Connection reset by peer) 2014-09-04T15:15:41Z billstclair: And I think Gary had a simple command-line version working in iOS and Android 2014-09-04T15:16:07Z billstclair: And he's been working on 64-bit ARM in his copious spare time. Don't know where he is with that 2014-09-04T15:16:22Z gravicappa quit (Ping timeout: 240 seconds) 2014-09-04T15:17:31Z billstclair: The other issue is whether Apple would allow us to ship code with a lisp to byte code compiler and a byte-code interpreter. They've been loosening the restrictions on interpreters 2014-09-04T15:18:55Z billstclair: But they'd almost certainly allow our customers to ship iOS apps all precompiled. We'd still have to finagle something for closures, but I doubt Apple would consider that to be an interpreter, if they even understood it was there 2014-09-04T15:19:47Z lifenoodles quit (Ping timeout: 255 seconds) 2014-09-04T15:21:35Z pt1 quit (Ping timeout: 276 seconds) 2014-09-04T15:22:14Z mal_ joined #lisp 2014-09-04T15:23:50Z YDJX left #lisp 2014-09-04T15:23:53Z k-stz joined #lisp 2014-09-04T15:26:32Z j_king: billstclair: it seems you are allowed to embed interpreters these days. 2014-09-04T15:29:47Z cy joined #lisp 2014-09-04T15:29:57Z TDog joined #lisp 2014-09-04T15:31:12Z davorb joined #lisp 2014-09-04T15:32:37Z ehu_ quit (Ping timeout: 260 seconds) 2014-09-04T15:34:54Z davorb1 quit (Ping timeout: 246 seconds) 2014-09-04T15:35:51Z clarkema joined #lisp 2014-09-04T15:35:54Z gendl quit (Quit: gendl) 2014-09-04T15:35:57Z Davidbrcz quit (Ping timeout: 246 seconds) 2014-09-04T15:35:59Z clarkema quit (Client Quit) 2014-09-04T15:36:49Z theos quit (Disconnected by services) 2014-09-04T15:37:16Z theos joined #lisp 2014-09-04T15:37:28Z Denommus quit (Ping timeout: 252 seconds) 2014-09-04T15:38:47Z vydd joined #lisp 2014-09-04T15:39:00Z vaporatorius quit (Quit: Leaving) 2014-09-04T15:40:52Z zarul quit (Ping timeout: 240 seconds) 2014-09-04T15:41:11Z Denommus joined #lisp 2014-09-04T15:43:18Z clarkema joined #lisp 2014-09-04T15:43:20Z clarkema quit (Remote host closed the connection) 2014-09-04T15:43:23Z vydd quit (Ping timeout: 272 seconds) 2014-09-04T15:45:19Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-09-04T15:45:34Z alexey quit (Remote host closed the connection) 2014-09-04T15:47:41Z banjara joined #lisp 2014-09-04T15:48:25Z Davidbrcz joined #lisp 2014-09-04T15:48:49Z kang joined #lisp 2014-09-04T15:50:05Z ustunozgur quit (Remote host closed the connection) 2014-09-04T15:53:52Z kang quit (Read error: Connection reset by peer) 2014-09-04T16:00:12Z decent left #lisp 2014-09-04T16:03:12Z hiyosi joined #lisp 2014-09-04T16:04:17Z cite-reader joined #lisp 2014-09-04T16:07:06Z Cymew quit (Ping timeout: 246 seconds) 2014-09-04T16:07:27Z ndrei quit (Ping timeout: 246 seconds) 2014-09-04T16:07:40Z beach joined #lisp 2014-09-04T16:07:54Z beach: Good evening everyone! 2014-09-04T16:08:23Z hiyosi quit (Ping timeout: 276 seconds) 2014-09-04T16:09:39Z ndrei joined #lisp 2014-09-04T16:10:00Z mishoo quit (Ping timeout: 272 seconds) 2014-09-04T16:12:22Z MightyJoe quit (Ping timeout: 240 seconds) 2014-09-04T16:12:37Z wgl: Good Evening. How is the weather? 2014-09-04T16:12:42Z hlavaty left #lisp 2014-09-04T16:12:47Z hlavaty joined #lisp 2014-09-04T16:12:54Z beach: wgl: Sunny and warm. 2014-09-04T16:13:35Z zwer quit (Remote host closed the connection) 2014-09-04T16:13:46Z slyrus: lousy weather for coding 2014-09-04T16:13:51Z zwer joined #lisp 2014-09-04T16:13:57Z beach: Indeed. 2014-09-04T16:13:59Z wgl: Rainy here; but otherwise has been a marvelous summer. 2014-09-04T16:15:20Z theos quit (Disconnected by services) 2014-09-04T16:15:46Z theos joined #lisp 2014-09-04T16:16:42Z beach: I have been working on chapter 2 of this document: http://metamodular.com/cleavir.pdf. Let me know what you think. 2014-09-04T16:17:21Z beach: I need to go cook dinner soon, but I will read the logs in case anyone has comments after I leave. 2014-09-04T16:21:09Z Oberon4278 joined #lisp 2014-09-04T16:21:21Z rg4 joined #lisp 2014-09-04T16:21:24Z slyrus: beach: (minor nits) on page 2: 1) an notation -> a notation 2) (more importantly) in the bulleted list after "once these..." it's not clear to me what the "* it ..." is. Is "it" cleavir? MIR? the transformed notation? With just those two bullet points, I would rewrite both of those as full sentences. 2014-09-04T16:21:55Z beach: slyrus: OK. I'll have a look at that. Thanks. 2014-09-04T16:22:12Z beach: I won't fix it right away. But I will definitely do it. 2014-09-04T16:23:37Z rg4 quit (Client Quit) 2014-09-04T16:23:59Z marsbot is now known as marsam 2014-09-04T16:24:31Z slyrus: beach: on page 4, the first sentence of the paragraph that starts "On the other hand..." doesn't make sense to me 2014-09-04T16:25:38Z beach: Yeah, I see. A comma might help, but I'll try to make it more clear. 2014-09-04T16:26:01Z slyrus: implementations don't want things 2014-09-04T16:26:20Z beach: Right. :) 2014-09-04T16:26:45Z slyrus: don't anthropomorphize computers. they hate it when you do that. 2014-09-04T16:26:53Z beach: heh! 2014-09-04T16:27:42Z beach: I can still hear Dijkstra complaining when people did that in talks. 2014-09-04T16:28:50Z njsg_ quit (Quit: "fix nickserv") 2014-09-04T16:28:51Z cy is now known as DarkTurquoise 2014-09-04T16:29:06Z njsg joined #lisp 2014-09-04T16:29:54Z beach: OK, I am off to fix dinner. I'll check in later in case there are more remarks. 2014-09-04T16:30:48Z DarkTurquoise is now known as cy 2014-09-04T16:32:21Z MightyJoe joined #lisp 2014-09-04T16:37:38Z arenz quit (Ping timeout: 276 seconds) 2014-09-04T16:39:18Z vydd joined #lisp 2014-09-04T16:40:07Z zarul joined #lisp 2014-09-04T16:40:21Z Harag quit (Ping timeout: 255 seconds) 2014-09-04T16:42:36Z BitPuffin quit (Ping timeout: 255 seconds) 2014-09-04T16:43:32Z theos quit (Ping timeout: 245 seconds) 2014-09-04T16:44:01Z vydd quit (Ping timeout: 260 seconds) 2014-09-04T16:46:31Z hiroakip joined #lisp 2014-09-04T16:47:55Z theos joined #lisp 2014-09-04T16:50:10Z rg4 joined #lisp 2014-09-04T16:52:47Z nate_c joined #lisp 2014-09-04T16:53:18Z ramfjord joined #lisp 2014-09-04T16:56:26Z ee_cc joined #lisp 2014-09-04T16:56:27Z pt1 joined #lisp 2014-09-04T16:56:59Z marsam is now known as marsbot 2014-09-04T16:57:02Z gravicappa joined #lisp 2014-09-04T17:00:08Z jayne_ is now known as jayne 2014-09-04T17:00:37Z rg4 quit 2014-09-04T17:00:43Z typhonic quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-04T17:00:43Z dxtr joined #lisp 2014-09-04T17:01:02Z hiroakip quit (Ping timeout: 276 seconds) 2014-09-04T17:02:20Z kobain quit (Ping timeout: 276 seconds) 2014-09-04T17:03:12Z ndrei quit (Ping timeout: 272 seconds) 2014-09-04T17:03:59Z hiyosi joined #lisp 2014-09-04T17:05:58Z cades joined #lisp 2014-09-04T17:07:24Z xebd` joined #lisp 2014-09-04T17:08:32Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-04T17:09:20Z Maurice_TCF quit (Quit: This computer has gone to sleep) 2014-09-04T17:09:30Z Nizumzen quit (Ping timeout: 252 seconds) 2014-09-04T17:10:26Z pt1 quit (Remote host closed the connection) 2014-09-04T17:10:42Z ramfjord quit (Ping timeout: 245 seconds) 2014-09-04T17:11:03Z Rotacidni joined #lisp 2014-09-04T17:18:04Z kushal quit (Quit: Leaving) 2014-09-04T17:19:25Z kushal joined #lisp 2014-09-04T17:19:53Z kushal quit (Read error: Connection reset by peer) 2014-09-04T17:20:51Z Fare joined #lisp 2014-09-04T17:27:13Z il joined #lisp 2014-09-04T17:28:53Z bdr3552 joined #lisp 2014-09-04T17:29:17Z ered quit (Read error: Connection reset by peer) 2014-09-04T17:30:57Z radioninja joined #lisp 2014-09-04T17:32:14Z bdr3553 quit (Ping timeout: 252 seconds) 2014-09-04T17:34:21Z cy quit (Quit: :q!) 2014-09-04T17:35:38Z mhd joined #lisp 2014-09-04T17:36:56Z cy joined #lisp 2014-09-04T17:38:59Z il left #lisp 2014-09-04T17:40:09Z vydd joined #lisp 2014-09-04T17:43:40Z BitPuffin joined #lisp 2014-09-04T17:43:42Z kobain joined #lisp 2014-09-04T17:44:05Z stacksmith: G'morn. What's a good way to get rid of a symbol in my own package? In particular, 'initialize-instance' for a particular CLOS class? 2014-09-04T17:44:19Z yrk quit (Remote host closed the connection) 2014-09-04T17:45:03Z Shinmera: slime-inspect 2014-09-04T17:45:14Z vydd quit (Ping timeout: 276 seconds) 2014-09-04T17:45:50Z banjara quit (Quit: Leaving.) 2014-09-04T17:46:08Z pnpuff joined #lisp 2014-09-04T17:46:18Z alexey joined #lisp 2014-09-04T17:46:25Z stacksmith: Shinmera: ??? 2014-09-04T17:47:11Z Shinmera: What you're asking for are two different things 2014-09-04T17:47:11Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-04T17:47:17Z Shinmera: removing a symbol is done by UNINTERN 2014-09-04T17:47:31Z Shinmera: removing a method is done by REMOVE-METHOD 2014-09-04T17:48:22Z Shinmera: Removing methods manually is a pita, so there's slime-inspect to do it interactively 2014-09-04T17:48:34Z stacksmith: Fair enough. I edited a file that defines a CLOS classes, removing 'initialize-instance' for one class. What's a good thing to do next? 2014-09-04T17:49:05Z Shinmera: look at the CLHS and find out how to remove methods. 2014-09-04T17:49:12Z Bike: get slime to do it. if not, use remove-method and find-method 2014-09-04T17:49:25Z nanny joined #lisp 2014-09-04T17:49:35Z josemanuel joined #lisp 2014-09-04T17:49:38Z nanny left #lisp 2014-09-04T17:50:06Z BitPuffin quit (Ping timeout: 255 seconds) 2014-09-04T17:50:19Z Xach: stacksmith: I use this: C-c I RET 2014-09-04T17:50:32Z Xach: oops. with a #' 2014-09-04T17:50:34Z alexey quit (Ping timeout: 252 seconds) 2014-09-04T17:50:39Z bdr3553 joined #lisp 2014-09-04T17:50:41Z ered joined #lisp 2014-09-04T17:51:01Z Xach: Then I go to the method I want to remove and hit RET on the [remove method] text 2014-09-04T17:51:41Z josemanuel quit (Client Quit) 2014-09-04T17:51:46Z marsbot is now known as marsam 2014-09-04T17:51:56Z pnpuff left #lisp 2014-09-04T17:53:13Z ramfjord joined #lisp 2014-09-04T17:53:30Z bdr3552 quit (Ping timeout: 252 seconds) 2014-09-04T17:56:07Z slyrus quit (Ping timeout: 245 seconds) 2014-09-04T17:56:11Z stacksmith: Xach: thanks. Whew. 2014-09-04T17:57:42Z eudoxia quit (Quit: Lost terminal) 2014-09-04T18:00:30Z stacksmith: Shinmera: I get that answering what appears to be stupid newb questions is frustrating. Trust me that the question came after a somewhat reasonable amount of digging. Some practical aspects of CL are not obvious, and even knowing where to look is often a challenge. Thank you. 2014-09-04T18:01:22Z vydd joined #lisp 2014-09-04T18:01:54Z LiamH joined #lisp 2014-09-04T18:02:11Z Shinmera: I'm not even angry in the slightest? 2014-09-04T18:03:13Z wasamasa: keep on the miscommunication 2014-09-04T18:04:18Z Shinmera: I was just being brief, doesn't mean I'm upset or anything. 2014-09-04T18:04:24Z Shinmera shrugs 2014-09-04T18:04:48Z hiyosi joined #lisp 2014-09-04T18:04:57Z Adlai: .o( use smilisp, convey your emotions! :) 2014-09-04T18:05:07Z askatasuna joined #lisp 2014-09-04T18:05:11Z mishoo joined #lisp 2014-09-04T18:05:27Z beach left #lisp 2014-09-04T18:07:07Z stacksmith: Shinmera: my comment was completely genuine, no dig intended. I needed advice more practical then RTFM. We are cool :) 2014-09-04T18:07:25Z Shinmera: stacksmith: Alright, then all is well! 2014-09-04T18:09:22Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-04T18:09:32Z Xach: stacksmith: Sometime I'd like to write about why Google is not usually a great source of Common Lisp help. Part of it involves knowing enough terminology to frame the question. 2014-09-04T18:10:14Z Nizumzen joined #lisp 2014-09-04T18:10:28Z Xach: stacksmith: When there's a massive amount of training data it can do magic, like when i type near-gibberish words i half heard on the radio and get the right song as hit #1. No such luck with lisp questions. 2014-09-04T18:10:53Z Xach: It really helps to have a real person meet you halfway, or more than halfway, when trying to figure stuff out. 2014-09-04T18:11:06Z Shinmera: When I look for CL stuff on google I first try my terms with 'clhs' prepended so it usually brings relevant hyperspec pages first 2014-09-04T18:11:07Z dlowe: needs more stack overflow questions :) 2014-09-04T18:11:26Z wasamasa: Xach: the CL people working at Google should be lucky and the exception to your observation :P 2014-09-04T18:12:58Z DGASAU quit (Remote host closed the connection) 2014-09-04T18:13:49Z DGASAU joined #lisp 2014-09-04T18:14:23Z stacksmith: Xach: True. This channel is indispensible for me and I do my best to think again before asking. I am amazed that the Lisp books I have talk about packages without addressing obvious issues of how to get rid of stale definitions hanging around. 2014-09-04T18:15:15Z Shinmera: stacksmith: They don't because, except for methods, you usually don't need to remove functions or macros. 2014-09-04T18:15:52Z Shinmera: An unused function or two lying about until your session ends some time won't have an impact. 2014-09-04T18:15:59Z pt1 joined #lisp 2014-09-04T18:16:16Z Shinmera: But yeah, removing methods is a bit more painful than need be and should be mentioned, I agree. 2014-09-04T18:16:25Z Xach: stacksmith: I don't know why it's like that, either. 2014-09-04T18:16:34Z mood: Unless you've renamed a function and forgot to change a reference to it somewhere 2014-09-04T18:17:00Z Xach: mood: That sort of situation prompted me to use slime-edit-uses for the first time last week. It was really slick. 2014-09-04T18:17:11Z Shinmera: I think I made an 'undefmethod' macro some time that looks almost the same as a defmethod form, hold on 2014-09-04T18:17:19Z stacksmith: There is an issue with sourcefile/state. If I delete a function from a file and recompile without noticing a reference, I may be very surprised the next time I start up my environment... 2014-09-04T18:17:46Z mood: Xach: Ooh nice, didn't know about that one. 2014-09-04T18:17:55Z Xach: I vaguely remember some Lisp IDE having a "kill definition" that would both delete the text of a method and invoke remove-method for you. 2014-09-04T18:18:24Z Shinmera: Yeah here we gohttp://plaster.tymoon.eu/view/3N 2014-09-04T18:18:29Z Shinmera: * http://plaster.tymoon.eu/view/3N 2014-09-04T18:19:13Z Shinmera: as in (undefmethod initialize-instance ((foo my-class))) 2014-09-04T18:19:39Z stacksmith: Shinmera: how does it handle :before and :after? 2014-09-04T18:19:50Z Shinmera: it should handle them just fine 2014-09-04T18:20:10Z Shinmera: but yes I should update that to simply work on an entire defmethod so you can just change the defmethod to undefmethod, hit C-c C-c and be done. 2014-09-04T18:20:37Z stacksmith: Shinmera: great. 2014-09-04T18:21:16Z Longlius joined #lisp 2014-09-04T18:22:52Z stacksmith: I wish there was a site that had 'best practices' for doing things with CL and SLIME... Sometimes I find ways of doing things that seem to work but are clearly idiotic... 2014-09-04T18:23:14Z Bike: there was slime-tips, but i think it doesn't update no more 2014-09-04T18:23:16Z wasamasa: stacksmith: I think xach started a microblog on that 2014-09-04T18:23:27Z wasamasa: also, did I just completely type out Xach 2014-09-04T18:23:29Z Xach: I don't have best practices, just a bunch of tips. 2014-09-04T18:23:45Z Xach: lisptips.com is mine, slime-tips.tumblr.com is from stassats 2014-09-04T18:24:12Z pt1 quit (Remote host closed the connection) 2014-09-04T18:24:23Z stacksmith: Bookmarking... 2014-09-04T18:24:59Z ustunozgur joined #lisp 2014-09-04T18:25:32Z pt1 joined #lisp 2014-09-04T18:25:40Z urandom__ joined #lisp 2014-09-04T18:26:03Z TDog quit (Ping timeout: 268 seconds) 2014-09-04T18:26:43Z mrSpec quit (Read error: No route to host) 2014-09-04T18:26:43Z stacksmith: I am working on a simple browser for reading/searching #lisp logs... There is a lot of good shit here. 2014-09-04T18:26:55Z ndrei joined #lisp 2014-09-04T18:26:57Z AeroNotix: stacksmith: someone else is doing that 2014-09-04T18:26:59Z angavrilov quit (Remote host closed the connection) 2014-09-04T18:27:00Z AeroNotix: I think .... Bike? 2014-09-04T18:27:49Z mood: Shinmera has logs at http://log.irc.tymoon.eu/freenode/lisp 2014-09-04T18:28:10Z Xach: minion: logs 2014-09-04T18:28:10Z minion: logs: #lisp logs are available at http://ccl.clozure.com/irc-logs/lisp/ (since 2008-09) and http://tunes.org/~nef/logs/lisp/ (since 2000) 2014-09-04T18:28:31Z Xach: rme: the ccl logs seem to have stopped in spring 2014-09-04T18:29:02Z Bike: AeroNotix: nope. 2014-09-04T18:29:13Z AeroNotix: Bike: oh it was Shinmera 2014-09-04T18:29:27Z Bike: Xach: the monthly logs are still happening, just not the daily ones. not sure why. 2014-09-04T18:29:51Z mrSpec joined #lisp 2014-09-04T18:29:54Z Xach: oh. i never really noticed the monthly logs. thanks. 2014-09-04T18:30:54Z stacksmith: Shinmera: do you have an application, or is it the website mentioned above? 2014-09-04T18:30:55Z p_l quit (Remote host closed the connection) 2014-09-04T18:31:08Z pt1 quit (Remote host closed the connection) 2014-09-04T18:31:10Z Shinmera: stacksmith: the above mentioned website 2014-09-04T18:31:27Z Shinmera: stacksmith: It doesn't have searching (yet), but browsing by time and message type and such 2014-09-04T18:31:52Z ndrei quit (Ping timeout: 240 seconds) 2014-09-04T18:32:12Z rme: I better take a look. By the way, if anyone has a superior lisp-based irc logging system, I'd be happy to use it. I'm using a slightly hacked version of Kevin Rosenberg's irc-logger. 2014-09-04T18:32:23Z stacksmith: Shinmera: is there a way to go back farther in time? 2014-09-04T18:32:50Z Shinmera: stacksmith: you can click a date and it'll automatically load logs surrounding that date (±6 hours) 2014-09-04T18:33:27Z Shinmera: stacksmith: otherwise you can specify ranges with the FROM and TO get params 2014-09-04T18:33:53Z Shinmera: stacksmith: It isn't as user-friendly as it should be, I know 2014-09-04T18:33:58Z petrutrimbitas joined #lisp 2014-09-04T18:34:09Z stacksmith: Shinmera: My browser may be blocking something, as I see no dates at all... 2014-09-04T18:34:29Z Shinmera: stacksmith: on the left to each message? 2014-09-04T18:34:35Z Shinmera: stacksmith: the time stamp 2014-09-04T18:34:43Z stacksmith: Shinmera: just time in xx:xx:xx format 2014-09-04T18:34:51Z Shinmera: stacksmith: yes, click it 2014-09-04T18:35:18Z ndrei joined #lisp 2014-09-04T18:35:19Z stacksmith: Shinmera: Oh, I see. You can just crawl back by clicking the first available timestamp. 2014-09-04T18:35:32Z Shinmera: stacksmith: yeah or as I said with the GET params 2014-09-04T18:35:36Z stacksmith: Shinmera: or hack the URL. 2014-09-04T18:35:48Z Shinmera: I'll add proper navigation when I have more time 2014-09-04T18:35:58Z stacksmith: Cool. 2014-09-04T18:36:23Z rme: Shinmera: is your loggeer written in lisp? 2014-09-04T18:36:35Z misv_ quit (Ping timeout: 276 seconds) 2014-09-04T18:36:43Z Shinmera: rme: both the logger and front-end, yes 2014-09-04T18:36:51Z misv joined #lisp 2014-09-04T18:38:30Z radioninja quit (Ping timeout: 260 seconds) 2014-09-04T18:38:58Z Shinmera: Fixed the undefmethod thing http://plaster.tymoon.eu/view/3N 2014-09-04T18:39:01Z rme: Nice. Does the source happen to be available? Or is it a private project? 2014-09-04T18:39:33Z Shinmera: all my sources are public. https://github.com/Shinmera/radiance-chatlog https://github.com/Shinmera/colleen/blob/master/modules/chatlog-pg.lisp 2014-09-04T18:40:35Z DGASAU quit (Remote host closed the connection) 2014-09-04T18:40:42Z stacksmith: Shinmera: thank you 2014-09-04T18:41:18Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-04T18:41:30Z DGASAU joined #lisp 2014-09-04T18:42:05Z ndrei quit (Ping timeout: 268 seconds) 2014-09-04T18:42:06Z rme: Shinmera: Thanks. I plan on looking over your code. 2014-09-04T18:42:15Z Shinmera: rme: Now I'm scared 2014-09-04T18:42:22Z nate_c quit (Ping timeout: 240 seconds) 2014-09-04T18:42:23Z ndrei joined #lisp 2014-09-04T18:42:33Z rme: Heh. It's not an exam. 2014-09-04T18:42:43Z rme: Or an evaluation. 2014-09-04T18:42:46Z Shinmera: I'm still worried people will notice all the horrible things I've written 2014-09-04T18:42:59Z stacksmith: Wait till you see mine. 2014-09-04T18:43:21Z attila_lendvai joined #lisp 2014-09-04T18:43:21Z attila_lendvai quit (Changing host) 2014-09-04T18:43:21Z attila_lendvai joined #lisp 2014-09-04T18:43:36Z mood: Shinmera: I looked over your code a couple of times, and it looked quite pretty 2014-09-04T18:43:36Z stacksmith: You guys will shit your pants laughing, no doubt. 2014-09-04T18:43:41Z rme: It's hard to get over that feeling. I have it myself. 2014-09-04T18:44:07Z Shinmera: mood: Heh, thanks, I guess 2014-09-04T18:44:08Z mood: That said, you are too productive for me to keep up actually looking at all of it :D 2014-09-04T18:44:36Z Shinmera: I haven't put up much today because I've spent most of the day doing freelance webdesign work :/ 2014-09-04T18:44:51Z Shinmera: At least I got to test LASS. 2014-09-04T18:45:00Z prxq: getting something done has its own intrinsic value in my book. 2014-09-04T18:45:06Z stacksmith: Shinmera: my sympathies. 2014-09-04T18:45:51Z Shinmera: stacksmith: Webdesign ain't that bad, it's just really exhausting me for some reason 2014-09-04T18:45:52Z prxq: lots of people obsess over prettyness but don't get much done. 2014-09-04T18:46:20Z marsam is now known as marsbot 2014-09-04T18:46:36Z mood: prxq: It's a matter of finding a balance, really 2014-09-04T18:46:52Z prxq: of course 2014-09-04T18:47:01Z stacksmith: Shinmera: it seems painful... HTML as it stands is probably on the opposite side of the circle from CL as sanity goes. 2014-09-04T18:47:06Z Xach: Ed Catmull gave a speech about showing your work every day that was pretty motivating. 2014-09-04T18:47:28Z Vivitron: stacksmith: ircbrowse.net has a pretty slick interface for searching #lisp logs 2014-09-04T18:47:28Z Shinmera: stacksmith: most of webdesign rests in CSS and JS, really. CSS is its own world of insanity, but it's getting better. 2014-09-04T18:47:54Z Xach: I think https://www.youtube.com/watch?v=k2h2lvhzMDc is it, but I don't remember. 2014-09-04T18:48:04Z cross_ is now known as cross 2014-09-04T18:48:06Z Shinmera: Xach: Even though I still freak out every time people talk about my code, I'm really glad I got over my anxiety and put everything on github. 2014-09-04T18:48:17Z Nizumzen joined #lisp 2014-09-04T18:49:36Z stacksmith: Shinmera: by HTML I really meant all of it. I was offered $1K/page a while ago to work on a corporate site, but realized that it's way not enough as it would never end and wind up being worse then minimum wage... 2014-09-04T18:52:45Z wasamasa: stacksmith: you mean, xml 2014-09-04T18:53:29Z ee_cc quit (Quit: ee_cc) 2014-09-04T18:54:19Z stacksmith: Add a designer niggling over pixels in some spacing in every browser, a client that constantly changes their mind, and a database backstore that is rocking under you, and you have a disaster. 2014-09-04T18:55:12Z Xach: ah yes. https://www.youtube.com/watch?v=k2h2lvhzMDc&feature=youtu.be&t=6m10s 2014-09-04T18:56:35Z Shinmera: Anyways, imma get to drawing (shameful off-topic self promotion http://www.twitch.tv/shinmera ) 2014-09-04T18:57:20Z Karl_Dscc joined #lisp 2014-09-04T18:58:24Z DGASAU quit (Ping timeout: 252 seconds) 2014-09-04T19:00:08Z ee_cc joined #lisp 2014-09-04T19:00:50Z nell joined #lisp 2014-09-04T19:01:32Z nell left #lisp 2014-09-04T19:02:04Z ndrei quit (Ping timeout: 252 seconds) 2014-09-04T19:02:13Z cite-reader quit (Quit: leaving) 2014-09-04T19:02:19Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-04T19:02:31Z DGASAU joined #lisp 2014-09-04T19:03:31Z Davidbrcz quit (Ping timeout: 272 seconds) 2014-09-04T19:05:33Z hiyosi joined #lisp 2014-09-04T19:06:02Z PuercoPop left #lisp 2014-09-04T19:06:06Z stacksmith: Vivitron: thanks, I've played with ircbrowse. It's cool, but I really like local applications. Call me old-fashined. 2014-09-04T19:07:23Z Ven joined #lisp 2014-09-04T19:10:12Z hiyosi quit (Ping timeout: 255 seconds) 2014-09-04T19:10:47Z Alfr joined #lisp 2014-09-04T19:10:53Z vaporatorius joined #lisp 2014-09-04T19:12:05Z drmeister quit (Remote host closed the connection) 2014-09-04T19:12:50Z bdr3552 joined #lisp 2014-09-04T19:17:14Z bdr3553 quit (Ping timeout: 268 seconds) 2014-09-04T19:17:15Z Vivitron quit (Read error: Connection reset by peer) 2014-09-04T19:17:50Z Vivitron joined #lisp 2014-09-04T19:19:54Z Vivitron quit (Read error: Connection reset by peer) 2014-09-04T19:21:27Z CrazyWoods quit (Quit: leaving) 2014-09-04T19:22:22Z PuercoPop joined #lisp 2014-09-04T19:26:12Z Fare: Xach: nice video 2014-09-04T19:27:53Z xebd`: Shinmera: it seems painful... HTML as it stands is probably on the opposite side of the circle from CL as sanity goes. [18:47] 2014-09-04T19:27:53Z xebd`: 2014-09-04T19:27:54Z xebd`: +1 2014-09-04T19:28:16Z DGASAU quit (Remote host closed the connection) 2014-09-04T19:29:08Z wgl: xebd`: Perhaps you haven't spent much time with SGML. Quite a bit worse. 2014-09-04T19:29:25Z DGASAU joined #lisp 2014-09-04T19:30:21Z xebd`: wgl: True. 2014-09-04T19:30:40Z xebd`: wgl: All are pretty bad. All make me wonder why people ignored the beauty of s-exprs. 2014-09-04T19:31:12Z wgl: Lead guy on SGML design is a lawyer, and no real computer scientists participated. 2014-09-04T19:31:39Z xebd`: Heh. I was unaware. 2014-09-04T19:31:43Z ejbs: wgl: Didn't Naggum participate? 2014-09-04T19:31:56Z xebd` ... . o O ( Although what wgl said would explain a fair amount... ) 2014-09-04T19:32:18Z wgl: Naggum did for a while, but he eventually figured out that they were without a clue and went *poof*. 2014-09-04T19:32:28Z stacksmith: Whenever I see structured data that is not some form of Lisp, it is obvious that someone somewhere was ignorant of Lisp. Sadly, I've done it myself. That is why I am learning Lisp. Better late then never. 2014-09-04T19:32:46Z dlowe: ... it doesn't solve all ills. 2014-09-04T19:33:11Z stacksmith: dlowe: At least it doesn't create new ills. 2014-09-04T19:33:22Z spockokt_ quit (Ping timeout: 240 seconds) 2014-09-04T19:33:45Z wgl: There is an intersting parallel with ASCII itself. There are these nice characters RS and GS and FS that would make ideal delimiters for CSV. 2014-09-04T19:34:37Z wgl: Whoever designed CSV knew, at least superficially about ASCII. But didn't realize the pain that using those low-stick characters would have saved the rest of us all these years. 2014-09-04T19:35:12Z logand``: wgl xebd: 1998: Advice for XML, W3 and ICE http://www-formal.stanford.edu/jmc/cbcl2/node4.html 2014-09-04T19:35:50Z wgl: Yes, well. 2014-09-04T19:35:55Z stacksmith: Sigh. 2014-09-04T19:36:12Z wgl: Keep in mind that one of the authors of XML was quite familiar with Lisp: Tim Bray. 2014-09-04T19:36:22Z xebd`: wgl: Yes. Sometimes I wonder if "new" means "deliberately disregard anything existing". 2014-09-04T19:36:25Z wgl: I suspect that it is a matter of what folks will accept. 2014-09-04T19:36:38Z xebd`: wgl: Sort of like ATM -- it could have been implemented as a special case/variant of frame relay. 2014-09-04T19:36:50Z wgl: xebd`: Henry Ford said "History is Bunk". Kind of an american attitude. 2014-09-04T19:37:01Z xebd` nods 2014-09-04T19:37:04Z logand``: John McCarthy "Lisp notation is better." :-) 2014-09-04T19:38:07Z logand``: the good thing is that one can work with sexp on serverside and convert to html just before sending it to the client 2014-09-04T19:38:11Z wgl: Meanwhile, languages slowly incorporate 50 year old Lisp ideas. 2014-09-04T19:38:26Z stacksmith: "Those who cannot remember the past are condemned to repeat it." 2014-09-04T19:38:37Z spockokt joined #lisp 2014-09-04T19:38:38Z xebd`: logand``: Or after. 2014-09-04T19:38:52Z xebd`: logand``: Although client-side text routines tend to be a bit slow. 2014-09-04T19:39:02Z wgl: logand``: When I am auditing asp.net applications, i convert the web.config files to sexp. 2014-09-04T19:39:03Z Alfr quit (Quit: Leaving) 2014-09-04T19:39:17Z wgl: Easier to read and navigate. 2014-09-04T19:39:29Z stacksmith: Those who cannot remember the past will fund idiotic ventures. 2014-09-04T19:39:36Z xebd`: wgl: Definitely. Ditto Juniper router configs. 2014-09-04T19:39:58Z xebd`: (Although Juniper configs are easier reading than Cisco configs!) 2014-09-04T19:40:41Z wgl: Well, I have written some high-performance applications in Lisp, and end up with some binary structures for speed and size. But that is after starting with sexp and finding bottlenecks. 2014-09-04T19:40:59Z wgl: Ah, yes. Then there is FIX. 2014-09-04T19:41:10Z wgl: And FIXml. 2014-09-04T19:41:41Z Xach: whartung has a nice opus along these lines. 2014-09-04T19:42:07Z Xach: gah, google groups made it hard to link to it. 2014-09-04T19:42:08Z wgl: But from a penetration tester's standpoint (day job), it is fun to take a hand-rolled protocol and gain RCE with fuzzing. 2014-09-04T19:42:12Z xebd`: wgl: And EDI, if you want to head in the FIX/FIXml direction 2014-09-04T19:42:17Z logand``: it is not problem only with xml 2014-09-04T19:42:42Z wgl: EDI. Forgot about that. 2014-09-04T19:43:29Z whartung: The Opus - my 15m of fame 2014-09-04T19:43:36Z logand``: it is general problem with most software, look at tls or ipp or docx|xlsx|odt|ods stuff, they are so arbitrary in many ways, almost like there was money to be made from extra complexity 2014-09-04T19:44:06Z xebd`: logand``: Bingo 2014-09-04T19:44:27Z xebd`: logand``: I wish I could cite the reference properly, but someone suggested that the value of a software company is the aggregate cost of all users switching away. 2014-09-04T19:44:41Z whartung: complexity is as complexity does. "in the beginning" there was Design, then it hits the real world and folks start hammering on it to make it work for them 2014-09-04T19:44:47Z k-stz quit (Remote host closed the connection) 2014-09-04T19:44:49Z logand``: the best way to deal with them is to convert them to sexp, then it becomes more bearable to work with 2014-09-04T19:44:51Z xebd`: logand``: Intuitively, it make sense: People will take the course of least resistance. Therefore, switching cost is a reasonable metric of user value. 2014-09-04T19:45:07Z xebd`: logand``: Make something complex and incompatible, make switching expensive, increase value, then profit. 2014-09-04T19:45:42Z slyrus joined #lisp 2014-09-04T19:46:16Z wgl: Well, there is always the tension between conspiracy and screw-up. 2014-09-04T19:46:26Z whartung: sexp is a cheap AST, but it's really not dramatically different from any of the other modern representations -- JSON, and XML. Not from the computers point of view at least. sexp can be more useable by a human being, to a point, but JSON isn't that truly awful. XML isnt really human friendly in the large, IMHO 2014-09-04T19:46:27Z nand1 quit (Remote host closed the connection) 2014-09-04T19:46:58Z wgl: Much of the disaster with SGML, for example, I classify more as screw-up. 2014-09-04T19:47:03Z alexey joined #lisp 2014-09-04T19:47:25Z wgl: Built essentially by academics with no particular business agenda. 2014-09-04T19:47:53Z xebd`: whartung: JSON isn't awful, but my comma-trained eyes are a bit sensitive to JSON's utilization of commas as [superfluous] delimiters. ;) 2014-09-04T19:48:31Z whartung: yea, that's a valid point xebd` 2014-09-04T19:48:59Z whartung: I think in the context of JSON, the comma SEEM superfluous, but perhaps not in the overall JS framework. 2014-09-04T19:49:23Z xebd`: whartung: I shan't hate on Clojure, because I think it fills a nice gap between Lisp and Java, but I also question the value of its comma-happy-to-my-eyes nature. 2014-09-04T19:49:37Z mood: My use of lisp has dramatically decreased my comma-delimiter tolerance 2014-09-04T19:49:38Z whartung: I've not worked with clojure. 2014-09-04T19:50:00Z whartung: I've always been a bit off put at "lisps" that don't use pure sexp. 2014-09-04T19:50:02Z xebd`: whartung: Exactly. Because JSON is a subset of valid ECMAScript, the commas are syntactically necessary. Perhaps I should have complained about ECMAScript instead of JSON. ;) 2014-09-04T19:50:55Z mood: The comma in Clojure is treated as whitespace, so I don't really see how it's comma-happy. Perhaps there are people who use them far too much though, it's been a while since I seriously looked at any Clojure 2014-09-04T19:51:13Z whartung: For example, Racket…I have no idea what the difference between [] and () are. I thiknk [] are vectors in CLojure, but I'm not sure. and, I'm not interested to enough to find out. 2014-09-04T19:51:30Z pnpuff joined #lisp 2014-09-04T19:51:37Z alexey quit (Ping timeout: 260 seconds) 2014-09-04T19:51:44Z xebd`: mood: Less comma-happy than JSON (comma required), but still comma-happy in the sense that commas are optional. 2014-09-04T19:52:23Z dim: I think [] is just an alternative way to spell () and they use it in place where we would embed (), as in (let [a 1] [b 2] ...) rather than (let ((a 1) (b 2)) ...) 2014-09-04T19:52:34Z dim: they also tried to remove all and any nesting they could 2014-09-04T19:53:27Z ASau joined #lisp 2014-09-04T19:53:28Z whartung: so you're saying that (let [a 1] [b 2] …) and (let ((a 1) (b 2)) …) are equivalent? or is the lack of enclosing [/( in the first example a typo? 2014-09-04T19:53:53Z xebd`: wgartung: Interestingly, Clojure's use of [] and {} doesn't bother me that much. For instance, using { :foo "bar" :blah "quux" } to read an alist is a reasonable compromise between a pure s-expr and generating JSON objects. 2014-09-04T19:53:53Z innertracks quit (Quit: innertracks) 2014-09-04T19:53:58Z dim: they even do (let [a 1 b 2] ...) actually 2014-09-04T19:54:00Z ejbs: whartung: They're vectors in Clojure. Why the heck do you supply a vector for the argument list during function definition though? 2014-09-04T19:54:29Z mood: In clojure [] is a vector, in racket I believe it's just an alternative for () 2014-09-04T19:54:37Z xebd`: (When I say using { ... } to read an alist: I obviously am assuming a reader macro that dispatches on #\{.) 2014-09-04T19:55:08Z bdr3553 joined #lisp 2014-09-04T19:55:48Z whartung: I'm sure there's some benefit for folks coming from other languages. But coming from sexp, I just find it "un-intuitive" 2014-09-04T19:55:52Z dim: now that we mention that I guess I should see about using http://common-lisp.net/project/metabang-bind/user-guide.html 2014-09-04T19:56:13Z xebd`: (Or one can read a hash-table. Or a semi-opaque structure that includes whatever storage and custom print function.) 2014-09-04T19:56:21Z Xach: dim: i think optima does something similar in a better way 2014-09-04T19:56:28Z banjara joined #lisp 2014-09-04T19:56:29Z Xach: but I'm not 100% sure. i haven't used them. 2014-09-04T19:56:49Z dim: IIRC it does pattern matching, right? 2014-09-04T19:56:58Z Xach: It does that 2014-09-04T19:57:04Z dim: yeah 2014-09-04T19:57:14Z AeroNotix: dim: Xach for a lot of these improvements it'd be good to get another standard 2014-09-04T19:57:20Z dim: what's the other name for pattern matching when you have a prolog background? 2014-09-04T19:57:21Z xebd`: dim: reading... 2014-09-04T19:57:22Z bdr3552 quit (Ping timeout: 272 seconds) 2014-09-04T19:57:25Z AeroNotix: these are trivial things and should be merged back into the core imho 2014-09-04T19:57:43Z mood: dim: destructuring? 2014-09-04T19:57:45Z dmiles: unification 2014-09-04T19:57:46Z Xach: AeroNotix: Have you listened to Peter's talk about the original standardization process? 2014-09-04T19:58:02Z dim: ah yeah, there's another unification lib too (thx dmiles) 2014-09-04T19:58:05Z AeroNotix: Xach: Seibel? 2014-09-04T19:58:29Z Xach: AeroNotix: yes. 2014-09-04T19:58:38Z AeroNotix: Xach: yeah I've watched it. 2014-09-04T19:59:03Z xebd`: dim: Liking. Similar to, yet cleaner than, some utilities I wrote. Will also look at optima. (Thanks, Xach!) 2014-09-04T19:59:40Z dim: there's also let+ (or let-plus if you google for it) that's alike metabang-bind but just readin the docs I think I prefer bind 2014-09-04T20:00:08Z Xach: AeroNotix: Oh, I didn't know there was video. I found it to provide pretty good context for why the original standardization took place, and why further big-S Standardization is unlikely. 2014-09-04T20:00:49Z whartung: yea that would be hard to imagine 2014-09-04T20:01:17Z whartung: JS is under heavy pressure because of that massive commercial interests in it driven by the browser wars. 2014-09-04T20:01:26Z Xach: Do you have a link to the video? 2014-09-04T20:01:37Z whartung: but CL is pretty "settled" and can "standardize" trhough ad hoc mechanisms of simply popularity 2014-09-04T20:01:47Z Xach: https://soundcloud.com/zach-beane/peter-seibel-common-lisp is the audio of the talk 2014-09-04T20:02:00Z whartung: is there even movement to do CL enchancement requests ala what Scheme did? 2014-09-04T20:02:28Z Xach: He talks about the expansion/exploration and contraction/standardization life cycle a bit 2014-09-04T20:02:46Z dim: whartung: there's CDR 2014-09-04T20:03:00Z dim: see http://cdr.eurolisp.org/ 2014-09-04T20:03:11Z Xach: I think things like package-local nicknames are fairly likely to become broadly available someday. 2014-09-04T20:03:15Z AeroNotix: Xach: it certainly is unfortunate 2014-09-04T20:04:13Z whartung: and down it goes lol 2014-09-04T20:04:33Z mood: I think it'd be very interesting to have packages be named by symbols 2014-09-04T20:04:40Z pnpuff left #lisp 2014-09-04T20:06:23Z hiyosi joined #lisp 2014-09-04T20:08:15Z ndrei joined #lisp 2014-09-04T20:08:50Z Shinmera: mood: but you need packages to have symbols 2014-09-04T20:09:10Z oleo: lol 2014-09-04T20:09:12Z Shinmera: mood: well, aside from package-less symbols ofc 2014-09-04T20:09:35Z oleo: someone in the quest to break cl it seems.... 2014-09-04T20:09:38Z oleo: meh 2014-09-04T20:09:55Z drmeiste_ quit (Remote host closed the connection) 2014-09-04T20:10:29Z mood: Shinmera: That's what makes it even more interesting. You'd have packages named by symbols for which you don't need to know the name, like KEYWORD 2014-09-04T20:10:32Z drmeister joined #lisp 2014-09-04T20:11:03Z alexey joined #lisp 2014-09-04T20:11:03Z Shinmera: mood: Sounds like a confusing mess to me. What exactly would it solve? 2014-09-04T20:11:09Z tajjada quit (Read error: Connection reset by peer) 2014-09-04T20:11:28Z nand1 joined #lisp 2014-09-04T20:11:30Z hiyosi quit (Ping timeout: 268 seconds) 2014-09-04T20:12:33Z mood: Shinmera: It'd make packages more like first class objects. I'm imagining it also solving package local nicknames. Perhaps I'm thinking more about storing packages in variables, hmm. I'm not really sure what it'd solve 2014-09-04T20:13:28Z dim: I'd like defpackage to allow renaming packages in a local fashion 2014-09-04T20:13:36Z drmeiste_ joined #lisp 2014-09-04T20:13:56Z Vivitron joined #lisp 2014-09-04T20:14:33Z wasamasa: dim: I'm slightly shocked CDR #0 has a rtf document 2014-09-04T20:14:43Z dim: (defpackage #:foo (:use :cl) (:use-with-local-nickname :long-name :ln) ...) 2014-09-04T20:14:50Z Shinmera: mood: If you don't know what it solves then you've got a bad idea on your hands :) 2014-09-04T20:15:07Z wasamasa: dim: also, it looks like I made the server temporarily unavailable 2014-09-04T20:15:09Z drmeiste_: beach: Are you still online? 2014-09-04T20:15:14Z drmeiste_ is now known as drmeister_ 2014-09-04T20:15:17Z whartung: none of the cdr links work for me, save the home page. 2014-09-04T20:15:24Z wasamasa: great 2014-09-04T20:15:42Z Adlai: mood: seen http://www.hexstreamsoft.com/libraries/symbol-namespaces/ ? 2014-09-04T20:16:19Z dim: http://www.sbcl.org/manual/#Package_002dLocal-Nicknames of course 2014-09-04T20:16:20Z Vivitron quit (Read error: Connection reset by peer) 2014-09-04T20:16:30Z Vivitron joined #lisp 2014-09-04T20:16:44Z wasamasa wonders just what this server runs 2014-09-04T20:16:55Z vanila joined #lisp 2014-09-04T20:17:23Z vanila: hello 2014-09-04T20:17:26Z |3b|: mood: packages are first-class objects you can store in variables, the problem is that you need to use them based on sequences of characters in source text 2014-09-04T20:17:34Z dim: wasamasa: nothing anymore, you're saying? 2014-09-04T20:17:53Z vanila: does anyone have pointers on how to directly implement shift/reset in a compiler 2014-09-04T20:18:15Z whartung: you mean in the parser vanila ? 2014-09-04T20:18:45Z mood: Adlai: I hadn't, thanks 2014-09-04T20:18:46Z vanila: delimited continuations rather than parser theory 2014-09-04T20:19:42Z innertracks joined #lisp 2014-09-04T20:20:06Z wasamasa: dim: no, what software can't handle a few people trying to access static documents 2014-09-04T20:20:17Z mood: |3b|: Yes. They aren't as useful as I think they should be. I don't know how it should work though 2014-09-04T20:20:45Z whartung: ok, I have no idea what you're refering to vanila 2014-09-04T20:21:16Z |3b|: vanila: #scheme might know more, this channel mostly deals with common lisp 2014-09-04T20:23:26Z |3b|: mood: yeah, there are lots of things that could be better, if someone smart had a bunch of time to do a bunch of research and design stuff, then somehow managed to convince everyone to implement it :p 2014-09-04T20:24:27Z mood: |3b|: Convincing people is always the problem with everything, sadly 2014-09-04T20:24:54Z Xach: I can't recommend peter's talk highly enough for understanding why a standard was created when it was created. 2014-09-04T20:25:38Z |3b| is at least glad we managed to get some support for package-local-nicknames :) 2014-09-04T20:26:14Z whartung: is there a transcript Xach ? 2014-09-04T20:26:27Z |3b|: now we just need to get it into more implementations 2014-09-04T20:26:30Z Karl_Dscc quit (Remote host closed the connection) 2014-09-04T20:27:07Z Xach: whartung: no 2014-09-04T20:27:41Z whartung: k thx 2014-09-04T20:27:42Z Vivitron quit (Ping timeout: 245 seconds) 2014-09-04T20:27:44Z drmeister_ quit (Read error: Connection reset by peer) 2014-09-04T20:31:02Z gingerale quit (Ping timeout: 245 seconds) 2014-09-04T20:33:12Z lifenoodles joined #lisp 2014-09-04T20:35:47Z TDog joined #lisp 2014-09-04T20:35:51Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-04T20:37:23Z antonv joined #lisp 2014-09-04T20:37:52Z ramfjord quit (Quit: Lost terminal) 2014-09-04T20:38:06Z Vivitron joined #lisp 2014-09-04T20:38:09Z lifenoodles quit (Quit: Leaving) 2014-09-04T20:38:41Z antonv: how to submit pull requests to ASDF? Or patches to mailing lists are preferred? 2014-09-04T20:40:19Z Xach: antonv: Fare might know. rpg would know, but he is not here. 2014-09-04T20:40:44Z gravicappa quit (Ping timeout: 276 seconds) 2014-09-04T20:43:35Z knob quit (Quit: Leaving) 2014-09-04T20:44:49Z Vivitron: antonv: fwiw when I sent a trivial patch to the mailing list rpg welcomed it there 2014-09-04T20:47:52Z Ven joined #lisp 2014-09-04T20:48:42Z cite-reader joined #lisp 2014-09-04T20:49:54Z rpg joined #lisp 2014-09-04T20:52:17Z posterdati300 quit (Ping timeout: 260 seconds) 2014-09-04T20:53:33Z mikeit joined #lisp 2014-09-04T20:57:49Z Bicyclidine joined #lisp 2014-09-04T21:00:24Z antonv: ok, I will use mailing list (or maybe even their launchpad.net) 2014-09-04T21:01:43Z kobain quit (Read error: Connection reset by peer) 2014-09-04T21:02:55Z elderK joined #lisp 2014-09-04T21:06:11Z ahungry_ quit (Quit: leaving) 2014-09-04T21:07:15Z hiyosi joined #lisp 2014-09-04T21:08:19Z ustunozgur quit (Remote host closed the connection) 2014-09-04T21:09:11Z Fare: antonv: I suppose you can issue a pull request on my github, but yes, since rpg is the new maintainer and he probably doesn't follow my github repo, you still need warn him, preferrably on the list 2014-09-04T21:09:24Z Fare: launchpad is a good place to publish patches, too 2014-09-04T21:09:48Z rpg: Launchpad would be great! 2014-09-04T21:09:48Z strg joined #lisp 2014-09-04T21:10:25Z Fare: rpg: do you want me to add you as an admin on my github/fare/asdf ? to clone it for yourself? To start a new github account for asdf? 2014-09-04T21:10:30Z Fare: or to not use github 2014-09-04T21:10:38Z rpg: No. I'm not going to use github for this. 2014-09-04T21:11:06Z rpg: cl.net is not broken, and spawning a new repo has the sweet smell of work I don't have to do. 2014-09-04T21:11:25Z Fare: :-) 2014-09-04T21:11:57Z rpg: (I actually also have a personal github version, which I mostly use to move local patches back and forth between my linux box and Mac) 2014-09-04T21:11:57Z hiyosi quit (Ping timeout: 264 seconds) 2014-09-04T21:12:25Z Fare: rpg: what about the faster-registry branch? shall I merge it in? To be useful, it depends on the install-asdf.lisp script that is only debugged in the minimakefile branch, but I could port that script back to the master branch 2014-09-04T21:12:29Z posterdati300 joined #lisp 2014-09-04T21:13:17Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-04T21:13:30Z strg quit (Client Quit) 2014-09-04T21:14:57Z drmeister quit (Remote host closed the connection) 2014-09-04T21:15:11Z drmeister joined #lisp 2014-09-04T21:16:40Z kobain joined #lisp 2014-09-04T21:16:51Z rpg: So this is still backwards compatible, right? The default is still to walk the tree? 2014-09-04T21:17:33Z Fare: yes 2014-09-04T21:17:35Z alexey quit (Remote host closed the connection) 2014-09-04T21:18:52Z Fare: as long as the user doesn't explicitly override the *recurse-beyond-asds* flag or create a .cl-source-registry.cache file in any directory, it's backward compatible. 2014-09-04T21:19:30Z askatasuna quit (Ping timeout: 260 seconds) 2014-09-04T21:19:48Z Davidbrcz joined #lisp 2014-09-04T21:20:52Z elderK quit (Ping timeout: 240 seconds) 2014-09-04T21:22:04Z elderK joined #lisp 2014-09-04T21:25:02Z clapautius joined #lisp 2014-09-04T21:25:03Z rpg: Great. Sure. If you don't mind the backpatch of install-asdf.lisp, feel free. 2014-09-04T21:27:06Z mikeit quit (Quit: Leaving) 2014-09-04T21:27:33Z elderK quit (Ping timeout: 264 seconds) 2014-09-04T21:27:42Z mrSpec quit (Quit: mrSpec) 2014-09-04T21:29:47Z Fare: ok. I'll first backpatch it, then I'll merge the branch 2014-09-04T21:31:28Z MrWoohoo2 joined #lisp 2014-09-04T21:33:07Z kobain quit (Read error: Connection timed out) 2014-09-04T21:35:42Z mishoo quit (Ping timeout: 245 seconds) 2014-09-04T21:35:42Z ustunozgur joined #lisp 2014-09-04T21:36:59Z mood: Xach: Thanks for the link to Peter Seibel's talk. Very interesting. (And those "Card Services" calls are great) 2014-09-04T21:37:29Z mishoo joined #lisp 2014-09-04T21:41:00Z prxq quit (Remote host closed the connection) 2014-09-04T21:42:03Z mishoo quit (Ping timeout: 246 seconds) 2014-09-04T21:42:39Z wheelsucker quit (Quit: Client Quit) 2014-09-04T21:42:51Z Shinmera: And a quick screenshot of my latest project before I hop off to bed. http://shinmera.tymoon.eu/public/screenshot-2014.09.04-23:41:11.png 2014-09-04T21:43:52Z Davidbrcz quit (Ping timeout: 240 seconds) 2014-09-04T21:47:55Z cy: Shinmera: css? 2014-09-04T21:48:12Z Shinmera: a css compiler, yes. 2014-09-04T21:49:23Z Shinmera: http://shinmera.tymoon.eu/public/screenshot-2014.09.04-23:32:46.png 2014-09-04T21:49:35Z kobain joined #lisp 2014-09-04T21:49:42Z alexander-01 joined #lisp 2014-09-04T21:54:28Z Nizumzen joined #lisp 2014-09-04T21:54:38Z Fare: Xach: thanks again for the video, I really really liked it. 2014-09-04T21:54:44Z ggole quit 2014-09-04T21:55:07Z alexander-01 quit (Quit: Bye) 2014-09-04T21:55:10Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-04T21:57:52Z Xach: Glad to hear it. 2014-09-04T21:57:58Z urandom__ quit (Quit: Konversation terminated!) 2014-09-04T21:58:33Z Longlius quit (Remote host closed the connection) 2014-09-04T22:00:12Z mhd quit (Ping timeout: 245 seconds) 2014-09-04T22:02:10Z Shinmera quit (Quit: ZzZz) 2014-09-04T22:05:39Z stepnem_ joined #lisp 2014-09-04T22:05:53Z stepnem quit (Ping timeout: 276 seconds) 2014-09-04T22:05:53Z stepnem_ is now known as stepnem 2014-09-04T22:06:07Z innertracks quit (Ping timeout: 245 seconds) 2014-09-04T22:06:10Z mhd joined #lisp 2014-09-04T22:08:05Z hiyosi joined #lisp 2014-09-04T22:12:33Z zwer quit (Remote host closed the connection) 2014-09-04T22:12:47Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-04T22:12:47Z zwer joined #lisp 2014-09-04T22:15:00Z drmeister quit (Remote host closed the connection) 2014-09-04T22:15:34Z drmeister joined #lisp 2014-09-04T22:17:36Z oleo__ joined #lisp 2014-09-04T22:17:58Z dmiles quit (Read error: Connection reset by peer) 2014-09-04T22:18:08Z oleo is now known as Guest35756 2014-09-04T22:18:48Z Guest35756 quit (Ping timeout: 246 seconds) 2014-09-04T22:19:03Z logand``` joined #lisp 2014-09-04T22:20:11Z tkd__ is now known as tkd 2014-09-04T22:23:02Z logand`` quit (Ping timeout: 272 seconds) 2014-09-04T22:27:49Z dmiles_afk joined #lisp 2014-09-04T22:28:47Z stacksmith joined #lisp 2014-09-04T22:29:14Z stacksmith: (aporpos "dick: butt") 2014-09-04T22:33:02Z capitaomorte joined #lisp 2014-09-04T22:33:51Z petrutrimbitas quit (Quit: petrutrimbitas) 2014-09-04T22:36:04Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-04T22:38:13Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-04T22:38:34Z dirtyob joined #lisp 2014-09-04T22:39:52Z Vivitron` joined #lisp 2014-09-04T22:41:23Z Fare: rpg: should I add the asdf-encodings dependency to ext/ ? It's used by the test-encodings.script 2014-09-04T22:42:09Z Vivitron quit (Ping timeout: 255 seconds) 2014-09-04T22:44:42Z ee_cc quit (Quit: ee_cc) 2014-09-04T22:44:51Z innertracks joined #lisp 2014-09-04T22:45:03Z ndrei quit (Ping timeout: 246 seconds) 2014-09-04T22:49:42Z rpg: Oh, yes, please do. 2014-09-04T22:49:54Z stacksmith joined #lisp 2014-09-04T22:52:52Z OmegaAlpha quit (Ping timeout: 240 seconds) 2014-09-04T22:54:16Z strg joined #lisp 2014-09-04T22:54:45Z dirtyob quit (Read error: Connection reset by peer) 2014-09-04T22:54:47Z Fare: rpg: ok, all pushed 2014-09-04T22:54:59Z Fare: also merged changes into the minimakefile branch 2014-09-04T22:55:08Z Fare: please review at your earliest convenience 2014-09-04T22:55:10Z rpg: OK. I'm afraid I"m going to be working pretty late tonight ... not on ASDF. 2014-09-04T22:55:28Z rpg: So earliest convenience might be next Thursday ;-( 2014-09-04T22:55:44Z capriciouseducat joined #lisp 2014-09-04T22:55:44Z Fare: np 2014-09-04T22:56:08Z Fare: I updated the doc/asdf.texinfo 2014-09-04T22:56:24Z Fare: to document this new persistent cache feature 2014-09-04T22:57:13Z Fare: I forgot to document the fact that this cache only offers a speedup if the implementation-provided ASDF is 3.1.4 or later. 2014-09-04T22:57:18Z cite-reader quit (Quit: leaving) 2014-09-04T22:57:22Z Fare: Meh. 2014-09-04T22:57:35Z Fare: (well, 3.1.3.7 or later) 2014-09-04T22:58:02Z edgar-rft quit (Quit: activity closed by sudden death) 2014-09-04T22:58:34Z OmegaAlpha joined #lisp 2014-09-04T22:58:37Z Fare: dim: I recommend uiop:nest over metabang-bind 2014-09-04T22:59:33Z Fare: vanila: there is a famous series of papers by oleg k on the topic of adding delimited continuations to an existing compiler 2014-09-04T22:59:54Z vanila: thanks Fare, that looks very useful 2014-09-04T23:00:02Z Fare: apparently, it's not very hard if you follow the recipe, and he did it to ocaml as a demo 2014-09-04T23:00:50Z vaporatorius quit (Remote host closed the connection) 2014-09-04T23:00:53Z Fare: there were several improvements over the first attempt, too, including ones with better types 2014-09-04T23:01:26Z rpg quit (Quit: rpg) 2014-09-04T23:01:52Z capriciouseducat quit (Read error: Connection reset by peer) 2014-09-04T23:02:40Z burpcopper joined #lisp 2014-09-04T23:02:56Z ndrei joined #lisp 2014-09-04T23:03:45Z Jesin joined #lisp 2014-09-04T23:04:10Z Fare: |3b|: I've come to believe that the faslpath / quick-build style now available as asdf 3.1's package-inferred-system is more useful in fostering maintainable modularity of CL software than package nicknames. 2014-09-04T23:05:50Z |3b|: Fare: not sure what you mean 2014-09-04T23:06:10Z Fare: see the style in which asdf or lisp-interface-library are written. 2014-09-04T23:06:11Z OmegaAlpha quit (Changing host) 2014-09-04T23:06:11Z OmegaAlpha joined #lisp 2014-09-04T23:06:14Z antonv: Fare: rpg: ok, I'll do launchpad (I just want asdf:implementaion-implementation identifier to include CCL source control revision number when we work with a DEV version, not release. As it happens for ECL, ABCL, ECL...) 2014-09-04T23:06:18Z |3b| thinks global nicknames are generally a bad thing, while local nicknames are a positive thing 2014-09-04T23:06:48Z |3b|: Fare: can you summarize? 2014-09-04T23:07:08Z antonv: Fare: how it solves the nicknames/longnames problem? 2014-09-04T23:07:29Z Fare: |3b|: in this style, every file starts with its own defpackage (or uiop:define-package) form, from which dependencies are deduced 2014-09-04T23:07:33Z Malice quit (Remote host closed the connection) 2014-09-04T23:07:57Z Fare: furthermore, this encourages good factoring of code into finer-grained packages 2014-09-04T23:08:30Z Fare: antonv: yes, it encourages you to only use imported symbols. No package prefix. No need for it to be short. 2014-09-04T23:08:55Z hiyosi joined #lisp 2014-09-04T23:09:06Z |3b|: so i can't use cl:rotate and math-library:rotate in the same code? 2014-09-04T23:09:29Z Fare: if you need to deal with a lot of package prefixes, you are probably doing it wrong, and/or you should homestead a short package name, like lisp-interface-library's pure, stateful, posh and classy packages. 2014-09-04T23:09:37Z |3b|: or open/close 2 different kinds of things at once 2014-09-04T23:09:44Z Fare: |3b|: you can shadow. 2014-09-04T23:09:57Z |3b|: not both without prefixes 2014-09-04T23:10:09Z Fare: shadow the cl variant and use the short cl: prefix 2014-09-04T23:10:24Z Fare: or create a system that exports trampolines and use THAT system. 2014-09-04T23:10:53Z |3b| picked a bad example... use a symbol from a package that doesn't have a short nickname 2014-09-04T23:11:07Z burpcopper quit (Remote host closed the connection) 2014-09-04T23:11:11Z Fare: the only thing for which proxies don't work is special variables that need to be bound 2014-09-04T23:11:16Z |3b|: (and i guess there isn't even a cl:rotate... wonder what i was thinking of) 2014-09-04T23:11:27Z Fare: then, you can export a macro that does the binding, and use it with uiop:nest 2014-09-04T23:11:35Z antonv: Fare: having all the imporeted packages here in the same file helps to understand code, also smaller packages less imports. But local nicknames would be good to have too. 2014-09-04T23:12:13Z |3b| also notes that a local nickname seems like as reasonable source of dependency as importing 2014-09-04T23:12:17Z Xach: I wish there was a way to express "Import, but only if external" with defpackage. 2014-09-04T23:12:27Z Fare: antonv: I agree package nicknames would probably be good, but too much effort to make them universal, for less gain than adopting the package-inferred-system discipline. 2014-09-04T23:13:03Z Fare: Xach: isn't that what :use does? Or do you want it with symbol granularity? 2014-09-04T23:13:12Z stepnem quit (Ping timeout: 255 seconds) 2014-09-04T23:13:32Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-04T23:13:35Z Fare: It's not too late to improve uiop:define-package, though it's a slight pain to depend on a recent enough version of uiop. 2014-09-04T23:13:38Z Xach: Fare: I don't want unconstrained use. I want to know exactly what symbols I'm importing and that it's part of the intended external interface. 2014-09-04T23:13:39Z Zeedox__ quit (Ping timeout: 255 seconds) 2014-09-04T23:13:48Z |3b|: also, wasn't someone complaining about an asdf bug recently where it got packages wrong? :p 2014-09-04T23:14:01Z Fare: did asdf get packages wrong? 2014-09-04T23:14:20Z Xach: |3b|: SBCL got packages wrong, wrt apropos. 2014-09-04T23:14:31Z |3b|: Fare: something in #+ecl in footer uses a symbol which isn't in that package 2014-09-04T23:15:10Z |3b|: Fare: if it hasn't been reported to asdf, i can try to find the specifics 2014-09-04T23:15:12Z Fare: oh yes, ASDF itself had a bug, that was hidden by some other features 2014-09-04T23:15:40Z Fare: apparently no one noticed except the clasp guy 2014-09-04T23:15:55Z |3b|: yeah, that 2014-09-04T23:16:02Z Bicyclidine: meister said he reported it. 2014-09-04T23:16:10Z Fare: the bug was only in a #+ecl, and not visible unless you messed with ext:*module-provider-functions* 2014-09-04T23:16:12Z |3b|: cool 2014-09-04T23:16:53Z Oberon4278 quit 2014-09-04T23:17:07Z Fare: I introduced it some time between releases 3.0.3 and 3.1.2. It's embarrassing, but hopefully no one will see it. 2014-09-04T23:17:09Z |3b| was just commenting since asdf was mentioned as an example, and that seemed to have been overly fine-grained package :) 2014-09-04T23:17:53Z Fare: ECL somehow failed to issue a warning. Or maybe I was disregarding any warnings because it shows too many warnings anyway and didn't make this one special. 2014-09-04T23:18:12Z LiamH quit (Quit: Leaving.) 2014-09-04T23:18:12Z drmeister quit (Remote host closed the connection) 2014-09-04T23:18:16Z alexey joined #lisp 2014-09-04T23:18:28Z drmeister joined #lisp 2014-09-04T23:18:44Z Fare: ECL isn't getting much love these days. 2014-09-04T23:20:49Z Fare: too many warnings is as useless as no warnings at all 2014-09-04T23:21:28Z Fare remembers the old QPX build system at ITA, where some guy had written a perl script to filter CMUCL output... instead of using handler-bind to filter the conditions. Sigh. 2014-09-04T23:22:26Z oGMo: heh 2014-09-04T23:22:30Z alexey quit (Ping timeout: 246 seconds) 2014-09-04T23:22:55Z Fare: the handler-bind stuff that eventually got written is an ancestor to uiop's uninteresting-condition support. 2014-09-04T23:24:16Z Fare adds a link to Ed Catmull's video to his post on related issues at ITA: http://fare.livejournal.com/171998.html 2014-09-04T23:24:49Z Xach: Fare: for what it's worth, i liked that video more when i didn't know about http://www.cartoonbrew.com/business/pixars-ed-catmull-emerges-as-central-figure-in-the-wage-fixing-scandal-101362.html 2014-09-04T23:27:57Z Fare: Catmull's actions in this cartel are disgusting indeed. The article then goes on to praise unions, which are just another form of cartel. LOL. 2014-09-04T23:28:22Z innertracks quit (Ping timeout: 240 seconds) 2014-09-04T23:30:26Z Sgeo joined #lisp 2014-09-04T23:32:02Z BitPuffin joined #lisp 2014-09-04T23:33:21Z cy: trying to install emacs with slime, for some reason when it loads it's giving me the error: symbol's function definition is void: slime-setup-contribs 2014-09-04T23:33:29Z ejbs: Fare: Cartel of the worker. Btw, is it true that you don't use CLOS at ITA? And if so: Why not? 2014-09-04T23:33:42Z cy: i mean to say, i already have emacs, i'm trying to install slime 2014-09-04T23:34:50Z ejbs: cy: Install Quicklisp 2014-09-04T23:34:57Z cy: ejbs: it's installed 2014-09-04T23:35:24Z ejbs: cy: Ok, run (ql:quickload "quicklisp-slime-helper") 2014-09-04T23:35:34Z vanila: does anyone know the situation with lambda the ultimate? 2014-09-04T23:37:59Z cy: ejbs: i did so, it gave me a line to put in my ~/.emacs, which i did 2014-09-04T23:38:05Z cy: ejbs: same error 2014-09-04T23:38:24Z Fare: ejbs: ITA had two projects, QPX and QRes. QPX is a speed junky that mostly doesn't use CLOS; it's alive and strong and powers Google Flights. QRes didn't have as big speed requirements, and used CLOS all over the place, but development was cancelled and it's in maintenance mode. 2014-09-04T23:38:32Z xyjprc joined #lisp 2014-09-04T23:40:41Z ejbs: cy: Ouch :/, did you delete any relevant lines you had added yourself? 2014-09-04T23:40:52Z Fare: see my above post for things we did wrong with QRes. 2014-09-04T23:41:12Z cy: ejbs: i did. it gives me the error with i use M-x slime 2014-09-04T23:41:29Z |3b|: Fare: code review is good even if you don't have 1 team :p 2014-09-04T23:41:34Z ejbs: Fare: Alright, so it was a performance thing. I'm reading it right now! 2014-09-04T23:41:56Z |3b| tries to always read the patch before checking things in on solo projects 2014-09-04T23:41:58Z ejbs: cy: I'm sorry, I can't help you :/ 2014-09-04T23:42:06Z cite-reader joined #lisp 2014-09-04T23:42:33Z |3b|: cy: make sure you don't have any bits and pieces of other slime installs anywhere (for example from a linux distro if running linux) 2014-09-04T23:42:36Z kobain quit (Read error: Connection reset by peer) 2014-09-04T23:43:00Z Fare: |3b|: my code improves when I do, but I sometimes fail to do it :-( 2014-09-04T23:43:03Z cy: |3b|: i have slimv in my .vim, would that be interfering? 2014-09-04T23:43:56Z |3b|: cy: .vim shouldn't be a problem 2014-09-04T23:44:01Z hiyosi joined #lisp 2014-09-04T23:44:38Z Xach: cy: where is slime.el on your system? 2014-09-04T23:44:48Z Xach: like, does "locate slime.el" show anything? 2014-09-04T23:44:57Z cy: Xach: ~/.emacs.d/slime/slime.el 2014-09-04T23:45:05Z fortitude quit (Quit: leaving) 2014-09-04T23:45:06Z Xach: Anything else? 2014-09-04T23:46:26Z cy: Xach: well, after installing quicklisp-slime-helper it's also in ~/quicklisp/dists/quicklisp/software/slime-2.6/slime.el 2014-09-04T23:46:30Z cy: it wasn't before 2014-09-04T23:47:18Z Xach: cy: that is a little old. you will get 2.9 if you (ql:update-dist "quicklisp"). but it isn't directly related to the error you're getting now. 2014-09-04T23:47:51Z Xach: cy: i think you are getting an old slime.el loaded. are you up for removing every slime except the one from the ~/quicklisp/ directory? 2014-09-04T23:48:48Z cy: Xach: sorry, the first thing |3b| told me was the problem, i had it installed through my package manager, apparently 2014-09-04T23:48:55Z Fare: Xach: uiop:define-package could grow a :import-exported-from clause (that package-inferred-system would need to be aware of). Would that satisfy you? 2014-09-04T23:49:18Z cite-reader quit (Quit: leaving) 2014-09-04T23:49:48Z cy: i just assomed that wasn't the problem because i don't remember ever installing it through there 2014-09-04T23:49:52Z Xach: Fare: I don't use uiop. 2014-09-04T23:49:57Z Xach: cy: oh, ok. 2014-09-04T23:50:04Z cy: anyway, thank you Xach, |3b|, ejbs 2014-09-04T23:50:19Z Fare: Xach: your loss. 2014-09-04T23:50:33Z Xach: I'll live. 2014-09-04T23:50:42Z Fare: til the day you die, you will. 2014-09-04T23:50:49Z Xach: If I can call it living, anyway. 2014-09-04T23:51:33Z Fare: you can call it anything you want. Alpha-conversion! 2014-09-04T23:51:50Z DKordic` quit (Read error: Connection reset by peer) 2014-09-04T23:52:03Z DKordic` joined #lisp 2014-09-04T23:52:49Z hitecnologys quit (Quit: hitecnologys) 2014-09-04T23:53:12Z innertracks joined #lisp 2014-09-04T23:56:27Z attila_lendvai quit (Quit: Leaving.) 2014-09-04T23:57:52Z vanila quit (Quit: Leaving) 2014-09-04T23:57:58Z ejbs quit (Remote host closed the connection) 2014-09-05T00:03:25Z Fare quit (Quit: Leaving) 2014-09-05T00:08:31Z wgl: Xach: Is there something that you use instead of uiop? 2014-09-05T00:09:26Z zRecursive joined #lisp 2014-09-05T00:15:23Z innertracks quit (Ping timeout: 240 seconds) 2014-09-05T00:17:01Z Rotacidni quit (Ping timeout: 272 seconds) 2014-09-05T00:18:15Z drmeister quit (Remote host closed the connection) 2014-09-05T00:18:50Z drmeister joined #lisp 2014-09-05T00:25:43Z nightshade427: what easiest way to char => unicode-code-point in sbcl 2014-09-05T00:27:24Z |3b|: clhs char-code 2014-09-05T00:27:24Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_char_c.htm 2014-09-05T00:29:40Z nightshade427: (char-code #\DEVANAGARI_LETTER_NA) => 2344 2014-09-05T00:29:48Z nightshade427: which isnt correct unicode code point 2014-09-05T00:30:28Z |3b|: looks right to me 2014-09-05T00:30:41Z BitPuffin quit (Ping timeout: 260 seconds) 2014-09-05T00:30:56Z nightshade427: http://www.fileformat.info/info/unicode/char/2344/index.htm 2014-09-05T00:31:00Z nightshade427: they arent the same 2014-09-05T00:31:04Z nightshade427: :( 2014-09-05T00:31:30Z |3b|: http://www.unicode.org/charts/PDF/Unicode-7.0/U70-0900.pdf says 0928 (in hex), which is 2344 in decimal 2014-09-05T00:31:34Z rme: base 10 vs. base 16 2014-09-05T00:32:04Z nightshade427: ahh, gotcha! ;) 2014-09-05T00:32:14Z zz_karupa is now known as karupa 2014-09-05T00:32:23Z nightshade427: thanks! 2014-09-05T00:32:29Z nightshade427: thats what I was missing 2014-09-05T00:32:32Z nightshade427: much appreciated 2014-09-05T00:33:19Z elderK joined #lisp 2014-09-05T00:34:26Z tankrim joined #lisp 2014-09-05T00:38:26Z Longlius joined #lisp 2014-09-05T00:39:01Z kyfho joined #lisp 2014-09-05T00:43:57Z joneshf-laptop quit (Ping timeout: 245 seconds) 2014-09-05T00:45:31Z elderK quit (Ping timeout: 272 seconds) 2014-09-05T00:50:33Z joneshf-laptop joined #lisp 2014-09-05T00:51:05Z banjara quit (Quit: Leaving.) 2014-09-05T00:51:06Z jusss joined #lisp 2014-09-05T01:00:37Z ustunozgur quit (Remote host closed the connection) 2014-09-05T01:00:58Z stacksmith: Is there an easy way to word-break an (english) string to fit into a specified line width? 2014-09-05T01:02:00Z InfusoElAmbulant quit (Ping timeout: 272 seconds) 2014-09-05T01:11:06Z defaultxr joined #lisp 2014-09-05T01:12:41Z harish quit (Ping timeout: 260 seconds) 2014-09-05T01:15:32Z arrsim joined #lisp 2014-09-05T01:19:08Z alexey joined #lisp 2014-09-05T01:20:22Z LiamH joined #lisp 2014-09-05T01:23:22Z alexey quit (Ping timeout: 240 seconds) 2014-09-05T01:24:00Z drmeister quit (Remote host closed the connection) 2014-09-05T01:24:14Z drmeister joined #lisp 2014-09-05T01:29:42Z jusss quit (Read error: Connection reset by peer) 2014-09-05T01:30:45Z jusss joined #lisp 2014-09-05T01:31:47Z Bicyclidine quit (Ping timeout: 255 seconds) 2014-09-05T01:32:21Z slyrus: oh my. html/xhtml/css/javascript really is a giant mess of bogus hacks. 2014-09-05T01:32:33Z slyrus: now back to your regularly scheduled #lisp discussion 2014-09-05T01:39:00Z kirin` quit (Ping timeout: 246 seconds) 2014-09-05T01:40:17Z kirin` joined #lisp 2014-09-05T01:43:18Z mhd quit (Ping timeout: 184 seconds) 2014-09-05T01:44:17Z mhd quit (Ping timeout: 276 seconds) 2014-09-05T01:46:20Z mhd joined #lisp 2014-09-05T01:47:10Z isoraqathedh quit (Remote host closed the connection) 2014-09-05T01:47:32Z isoraqathedh joined #lisp 2014-09-05T01:48:27Z slyrus quit (Ping timeout: 255 seconds) 2014-09-05T01:49:24Z Xach: wgl: For what? 2014-09-05T01:49:38Z vlnx quit (Read error: Connection reset by peer) 2014-09-05T01:50:46Z vlnx joined #lisp 2014-09-05T01:55:14Z stacksmith: Is there really no whitespace-char-p predicate for characters? 2014-09-05T01:55:15Z EvW quit (Quit: EvW) 2014-09-05T02:02:31Z marsbot is now known as marsam 2014-09-05T02:04:28Z isoraqathedh quit (Ping timeout: 252 seconds) 2014-09-05T02:07:40Z wooden quit (Read error: Connection reset by peer) 2014-09-05T02:08:37Z wooden joined #lisp 2014-09-05T02:08:37Z wooden quit (Changing host) 2014-09-05T02:08:37Z wooden joined #lisp 2014-09-05T02:09:22Z ndrei quit (Ping timeout: 245 seconds) 2014-09-05T02:21:01Z marsam is now known as marsbot 2014-09-05T02:24:02Z drmeister quit (Remote host closed the connection) 2014-09-05T02:24:38Z drmeister joined #lisp 2014-09-05T02:26:33Z frkout joined #lisp 2014-09-05T02:27:32Z mindCrime joined #lisp 2014-09-05T02:30:33Z frkout_ joined #lisp 2014-09-05T02:32:21Z LiamH quit (Read error: Connection reset by peer) 2014-09-05T02:33:36Z frkout quit (Ping timeout: 246 seconds) 2014-09-05T02:34:53Z cades quit (Quit: cades) 2014-09-05T02:34:55Z kanru joined #lisp 2014-09-05T02:35:03Z harish joined #lisp 2014-09-05T02:35:18Z cades joined #lisp 2014-09-05T02:45:04Z kobain joined #lisp 2014-09-05T02:47:07Z defaultxr quit (Quit: bbiab) 2014-09-05T02:57:16Z cades quit (Ping timeout: 268 seconds) 2014-09-05T02:59:01Z kyfho quit (Quit: Lost terminal) 2014-09-05T02:59:36Z resttime quit (Quit: resttime) 2014-09-05T03:03:37Z vlnx quit (Quit: leaving) 2014-09-05T03:04:07Z vlnx joined #lisp 2014-09-05T03:17:25Z PuercoPop: stacksmith: No but you can make your own with with member 2014-09-05T03:19:44Z snits quit (Remote host closed the connection) 2014-09-05T03:19:57Z rme quit (Quit: rme) 2014-09-05T03:19:57Z rme quit (Quit: rme) 2014-09-05T03:20:07Z alexey joined #lisp 2014-09-05T03:20:30Z drmeister quit (Remote host closed the connection) 2014-09-05T03:20:42Z drmeister joined #lisp 2014-09-05T03:24:03Z snits joined #lisp 2014-09-05T03:24:22Z alexey quit (Ping timeout: 245 seconds) 2014-09-05T03:24:36Z zRecursive quit (Remote host closed the connection) 2014-09-05T03:26:43Z defaultxr joined #lisp 2014-09-05T03:32:28Z PuercoPop: stacksmith: for example here is where hunchentoot defines its whitespacep: https://github.com/edicl/hunchentoot/blob/d5e1687cb8af576d2265eac3af232553a72bb224/url-rewrite/primitives.lisp#L38 2014-09-05T03:34:26Z modula joined #lisp 2014-09-05T03:34:27Z frkout_ quit (Remote host closed the connection) 2014-09-05T03:34:53Z frkout joined #lisp 2014-09-05T03:35:16Z p_l joined #lisp 2014-09-05T03:36:33Z defaultxr quit (Ping timeout: 264 seconds) 2014-09-05T03:40:02Z MrWoohoo2 quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-05T03:40:37Z modula quit (Ping timeout: 245 seconds) 2014-09-05T03:42:50Z defaultxr joined #lisp 2014-09-05T03:44:06Z kushal joined #lisp 2014-09-05T03:44:45Z hiyosi quit (Ping timeout: 268 seconds) 2014-09-05T03:47:24Z strg quit (Quit: Linkinus - http://linkinus.com) 2014-09-05T03:49:45Z defaultxr quit (Read error: Connection reset by peer) 2014-09-05T03:50:19Z defaultxr joined #lisp 2014-09-05T03:55:04Z modula joined #lisp 2014-09-05T03:55:45Z defaultxr quit (Ping timeout: 264 seconds) 2014-09-05T03:55:46Z modula is now known as defaultxr 2014-09-05T03:57:04Z khisanth_ is now known as Khisanth 2014-09-05T04:01:23Z defaultxr quit (Quit: defaultxr) 2014-09-05T04:02:59Z echo-area joined #lisp 2014-09-05T04:04:10Z isoraqathedh joined #lisp 2014-09-05T04:10:11Z CrazyEddy joined #lisp 2014-09-05T04:11:34Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-05T04:11:57Z cades joined #lisp 2014-09-05T04:14:32Z cadeskao joined #lisp 2014-09-05T04:14:54Z cades quit (Remote host closed the connection) 2014-09-05T04:14:57Z cades1 joined #lisp 2014-09-05T04:14:57Z cades1 quit (Client Quit) 2014-09-05T04:15:32Z cadeskao1 joined #lisp 2014-09-05T04:18:35Z cadeskao1 quit (Remote host closed the connection) 2014-09-05T04:19:17Z cadeskao quit (Ping timeout: 268 seconds) 2014-09-05T04:20:27Z angavrilov joined #lisp 2014-09-05T04:20:29Z resttime joined #lisp 2014-09-05T04:20:32Z drmeister quit (Remote host closed the connection) 2014-09-05T04:21:06Z drmeister joined #lisp 2014-09-05T04:27:16Z beach joined #lisp 2014-09-05T04:27:24Z beach: Good morning everyone! 2014-09-05T04:27:50Z pjb: logand```: it was originally from 1975. They can't say they didn't know. 2014-09-05T04:28:06Z pjb: (cbcl) 2014-09-05T04:36:52Z beach: Slyrus gave me some comments on this document: http://metamodular.com/cleavir.pdf but I am soliciting more comments on chapter 2. 2014-09-05T04:40:41Z hiyosi joined #lisp 2014-09-05T04:41:56Z pjb: stacksmith: try: (com.informatimago.common-lisp.cesarum.string:string-justify-left "Hello world! How do you do" 16 4) 2014-09-05T04:42:43Z |3b|: beach: in 2.2 "We strongly advice ..." -> advise 2014-09-05T04:42:55Z |3b|: and same in next sentence 2014-09-05T04:42:58Z beach: |3b|: Thanks. 2014-09-05T04:44:15Z pjb: beach: the font for symbols should be changed, the dash looks too much like an underline… 2014-09-05T04:44:30Z beach: Hmm. 2014-09-05T04:44:59Z beach: pjb: I'll give it some thought. I don't know how to do that right now. 2014-09-05T04:45:10Z cy quit (Quit: :q!) 2014-09-05T04:45:12Z hiyosi quit (Ping timeout: 246 seconds) 2014-09-05T04:45:21Z pjb: And probably a different dash should be used in "common-lisp" and in ":use-ing" {common-lisp} and {:use}-ing with {text in programming font}-text in normal font. 2014-09-05T04:46:02Z beach: OK. 2014-09-05T04:48:51Z pjb: I didn't see any function to get the environments themselves? 2014-09-05T04:48:55Z stoned is now known as Rugal 2014-09-05T04:49:20Z Bike: I thought they were just supposed to be from normal &environment. 2014-09-05T04:49:23Z beach: pjb: I don't understand. 2014-09-05T04:49:52Z pjb: (start-environment) (compilation-environment) (evaluation-environment) (runtime-environment); a compiler would need to call at least a couple of them. 2014-09-05T04:50:07Z beach: You don't call environments. 2014-09-05T04:50:17Z pjb: call functions to get those environments. 2014-09-05T04:50:38Z pjb: But perhaps they would just provide their own. 2014-09-05T04:50:41Z beach: They are always there in the form of a parameter. 2014-09-05T04:51:19Z beach: When the compilation starts, the startup environment is passed as an argument to the function that translates forms to ASTs. 2014-09-05T04:51:41Z beach: The evaluation argument is the result of calling the augmentation functions on the startup environment. 2014-09-05T04:51:54Z beach: Sorry, the compilation environment. 2014-09-05T04:52:23Z pjb: How does clearvir find the environment to pass to add-special-variable? 2014-09-05T04:52:36Z |3b| wonders if it would be worth having a common superclass for name/type/ignore of variable bindings 2014-09-05T04:52:51Z pjb: Oh, passed to the clearvir translation function. Ok. 2014-09-05T04:52:54Z beach: pbj: It is an argument to the compilation functino. 2014-09-05T04:52:58Z beach: Yes. 2014-09-05T04:53:15Z meiji11 joined #lisp 2014-09-05T04:53:16Z beach: |3b|: Yeah, probably. 2014-09-05T04:54:21Z |3b|: might also clarify the meaning of "special variable", since lexical-variable-info can be dynamic extent 2014-09-05T04:54:28Z pjb: It could be an implementation details. Would clearvir need it? 2014-09-05T04:54:47Z |3b|: i assume it means the global binding of a defparameter variable? 2014-09-05T04:54:54Z pjb: We could allow for global specials even if CL doesn't provide them. 2014-09-05T04:55:05Z pjb: global lexicals I mean. 2014-09-05T04:55:39Z beach: |3b|: Not necessarily. Special variables can be introduced locally. 2014-09-05T04:55:55Z |3b|: right, was just about to ask about that 2014-09-05T04:56:26Z |3b|: so lexical means there is an actual local binding, while special means there isn't? 2014-09-05T04:56:39Z beach: |3b|: (let ((x ...)) (+ x (locally (declare (special x)) x))) 2014-09-05T04:56:45Z |3b|: yeah 2014-09-05T04:57:03Z beach: Yes, lexical means introduced by LET basically. 2014-09-05T04:57:10Z beach: Or by a function parameter. 2014-09-05T04:58:16Z jimmyy joined #lisp 2014-09-05T04:58:19Z jimmyy quit (Max SendQ exceeded) 2014-09-05T04:58:19Z beach: pjb: Would Cleavir need what? 2014-09-05T04:58:49Z Rotacidni joined #lisp 2014-09-05T04:59:24Z meiji11 quit (Read error: Connection reset by peer) 2014-09-05T05:00:42Z |3b|: beach: no 'type' info for constants? 2014-09-05T05:00:58Z beach: No, the are their own type. 2014-09-05T05:01:10Z beach: 234 is (integer 234 234) 2014-09-05T05:01:58Z vydd quit (Remote host closed the connection) 2014-09-05T05:04:17Z beach: OK, thanks for your remarks. 2014-09-05T05:04:45Z beach: If you have more remarks after I leave, I will pick them up from the logs. 2014-09-05T05:05:29Z beach: I think the next step is to test this stuff in real life. 2014-09-05T05:05:51Z beach: I will also think about factoring some of the classes. I had problems coming up with good names for them. 2014-09-05T05:06:42Z |3b|: maybe a named-binding, typed-binding etc mixins? 2014-09-05T05:07:57Z beach: Yeah, maybe so. Good thinking. 2014-09-05T05:08:14Z |3b|: though i guess there are different uses for the docs where both styles are appropriate 2014-09-05T05:08:51Z |3b| was thinking it is repetitive when reading through all at once, but if you are looking for a specific class, having all the methods in one place is nice even if they are also in a bunch of other places 2014-09-05T05:08:52Z beach: Right. Presenting that is slightly harder, but I'll see what can be done. 2014-09-05T05:09:10Z beach: Yeah, I know exactly what you mean. 2014-09-05T05:09:49Z beach: That's the reason I didn't find it urgent to factor the classes. Repetition is OK if it helps the reader find the info fast. 2014-09-05T05:10:05Z |3b|: is "any type specifier" valid for functions? 2014-09-05T05:10:15Z |3b| would expect an ftype 2014-09-05T05:10:21Z theos quit (Disconnected by services) 2014-09-05T05:10:50Z theos joined #lisp 2014-09-05T05:10:57Z beach: |3b|: FTYPE is used to distinguish the two name spaces. It is done here by using different classes. 2014-09-05T05:11:28Z beach: But yeah, it has to be a valid function type. 2014-09-05T05:11:31Z |3b|: clhs ftype 2014-09-05T05:11:31Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/d_ftype.htm 2014-09-05T05:11:50Z |3b|: yeah, i guess function is what i meant 2014-09-05T05:11:57Z beach: Right. 2014-09-05T05:12:12Z beach: Did I say "any" type? I should fix that then. 2014-09-05T05:12:34Z |3b|: yeah, same description as variables i think 2014-09-05T05:12:41Z beach: OK. I'll look. 2014-09-05T05:13:07Z anannie quit (Ping timeout: 245 seconds) 2014-09-05T05:14:30Z beach: |3b|: Fixed in the GitHub repository. I will upload an updated version to metamodular later. 2014-09-05T05:14:33Z beach: Thanks. 2014-09-05T05:15:14Z |3b|: that was in global and local functions in case you didn't catch both 2014-09-05T05:15:29Z beach: Yeah, I caught both. 2014-09-05T05:16:26Z pjb: beach: I guess clearvir could be used to write extensions to CL too, so I'd say yes. 2014-09-05T05:17:05Z beach: pjb: I still don't know what you were referring to when you said "Does Cleavir need it?" 2014-09-05T05:17:16Z pjb: The problem with JVM and LLVM is that they're too limited to their target languages. 2014-09-05T05:17:36Z pjb: >> We could allow for global lexical even if CL doesn't provide them. 2014-09-05T05:17:54Z beach: Oh, OK. 2014-09-05T05:20:24Z zRecursive joined #lisp 2014-09-05T05:20:27Z |3b|: in global-function-info and global-macro-info :compiler-macro initarg, ".. when compiler macro is associated" -> ".. when a compiler macro ..."? 2014-09-05T05:20:32Z beach: I will write the form-to-AST translator so that it can be customized as well. Then the creator of the implementation can choose what to accept. 2014-09-05T05:20:47Z drmeister quit (Remote host closed the connection) 2014-09-05T05:20:53Z alexey joined #lisp 2014-09-05T05:21:01Z beach: |3b|: Thanks. 2014-09-05T05:21:02Z drmeister joined #lisp 2014-09-05T05:21:53Z beach: |3b|: Fixed. 2014-09-05T05:25:53Z alexey quit (Ping timeout: 268 seconds) 2014-09-05T05:26:30Z oleo__ quit (Quit: Verlassend) 2014-09-05T05:27:21Z lpaste_ quit (Ping timeout: 272 seconds) 2014-09-05T05:27:57Z beach: pjb: Let me know if you have specific suggestions about the typographical issues. I am not a very sophisticated TeX user. 2014-09-05T05:29:46Z |3b| thought the defaults for optimization qualities were 1 or 2, but can't find that in spec 2014-09-05T05:30:38Z beach: clhs optimize 2014-09-05T05:30:38Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/d_optimi.htm 2014-09-05T05:30:57Z beach: "(quality 3) can be abbreviated to quality" 2014-09-05T05:31:13Z |3b|: right, i mean if not specified at all 2014-09-05T05:31:22Z beach: Oh! Hmm. 2014-09-05T05:31:25Z beach: I don't know. 2014-09-05T05:31:28Z lpaste joined #lisp 2014-09-05T05:31:41Z davorb1 joined #lisp 2014-09-05T05:32:25Z beach: But I guess Cleavir doesn't need to know that. 2014-09-05T05:32:39Z beach: As long as the implementation supplies the right values for optimize-info. 2014-09-05T05:32:47Z pjb: beach: Perhaps something like: \usepackage{courier} \texttt{common-lisp} \texttt{:use}-ing http://tex.stackexchange.com/questions/24840/use-courier-font-inline-on-text I'm no TeX user either. 2014-09-05T05:32:50Z vydd joined #lisp 2014-09-05T05:32:52Z |3b|: well, it would be nice to have the CL default as default (if there is one) 2014-09-05T05:33:34Z beach: pjb: OK, I'll experiment with that. I fear it will change the font of the entire text. 2014-09-05T05:34:03Z pjb: Seems \usepackage{courier} is optional, \texttt{} is the important part. 2014-09-05T05:34:10Z |3b|: hmm, maybe i was confused by the "with 1 the neutral value" 2014-09-05T05:34:17Z beach: I already use texttt for those things. 2014-09-05T05:34:45Z beach: |3b|: If find the info, let me know. 2014-09-05T05:35:00Z ee_cc joined #lisp 2014-09-05T05:35:36Z davorb quit (Ping timeout: 246 seconds) 2014-09-05T05:37:38Z vydd quit (Ping timeout: 276 seconds) 2014-09-05T05:39:12Z beach: *you find 2014-09-05T05:39:13Z |3b|: beach: in type-expand, "... that does not contain any user-defined introduced by deftype" -> " ... user defined types introduced by deftype"? 2014-09-05T05:39:26Z mishoo joined #lisp 2014-09-05T05:39:51Z beach: Why? 2014-09-05T05:40:01Z beach: Oh, missing types 2014-09-05T05:40:04Z beach: Thanks. 2014-09-05T05:40:08Z |3b|: yeah, sorry about changing something else 2014-09-05T05:40:26Z |3b|: also, does that distinguish between no type and a user type that expands to NIL? 2014-09-05T05:41:06Z |3b|: did the previous functions specify what happens when no matching entry is found? 2014-09-05T05:41:31Z beach: I haven't specified that yet. 2014-09-05T05:41:32Z hiyosi joined #lisp 2014-09-05T05:41:33Z bdr3552 joined #lisp 2014-09-05T05:41:37Z mr-foobar quit (Quit: Leaving...) 2014-09-05T05:41:40Z |3b|: ok 2014-09-05T05:41:43Z beach: I need a bunch of conditions to be signaled. 2014-09-05T05:42:41Z beach: I am not sure whether Cleavir should signal that, or the method provided by the implementation. 2014-09-05T05:43:34Z beach: I guess the implementation-supplied method does not have enough information to do anything about it. 2014-09-05T05:43:50Z beach: But that all needs to be specified. 2014-09-05T05:44:00Z bdr3553 quit (Ping timeout: 246 seconds) 2014-09-05T05:44:01Z |3b|: to add a local variable with a bunch of declarations, does that require an extra environment for each step? (1 with the local variable, another with a type specified for that var, etc) 2014-09-05T05:44:14Z beach: Yeah. 2014-09-05T05:44:34Z beach: Not a big deal. The depth of the environment will be quite limited anyway. 2014-09-05T05:45:58Z beach: I think maybe I'll specify that the implementation-supplied methods return NIL when no entry is found. Then Cleavir will signal a condition. Does that seem reasonable? 2014-09-05T05:47:12Z |3b|: NIL for not finding an entry sounds reasonable (aside from the type-expand ambiguity) 2014-09-05T05:47:34Z beach: Yeah, OK. I'll think about that. Great feedback! Thanks again! 2014-09-05T05:47:42Z |3b|: and condition when it actually tries to do something that requires it to have found a binding and failed 2014-09-05T05:48:04Z |3b|: (so yeah, NIL from implementation-supplied methods, and condition from cleavir when it tries to use it) 2014-09-05T05:48:30Z hiyosi quit (Ping timeout: 252 seconds) 2014-09-05T05:49:11Z beach: Yeah, sounds reasonable. 2014-09-05T05:49:21Z beach: We'll see how it works out. 2014-09-05T05:50:24Z beach: Well, that gives me enough work for the day. 2014-09-05T05:51:28Z pranavrc joined #lisp 2014-09-05T05:51:28Z pranavrc quit (Changing host) 2014-09-05T05:51:28Z pranavrc joined #lisp 2014-09-05T05:51:37Z beach: I had better get cracking. 2014-09-05T05:51:40Z beach left #lisp 2014-09-05T05:54:43Z |3b|: beach: in add-function-ignore, ".. function named symbol-name" -> "function named function-name" 2014-09-05T05:56:03Z |3b|: beach: and same in add-function-dynamic-extent and add-inline 2014-09-05T05:58:34Z Shinmera joined #lisp 2014-09-05T05:59:19Z kanru quit (Remote host closed the connection) 2014-09-05T06:00:48Z kanru joined #lisp 2014-09-05T06:00:54Z isoraqathedh quit (Quit: No Ping reply in 180 seconds.) 2014-09-05T06:02:16Z isoraqathedh joined #lisp 2014-09-05T06:09:44Z wizzo quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-05T06:09:59Z Harag joined #lisp 2014-09-05T06:12:15Z wizzo joined #lisp 2014-09-05T06:18:12Z isoraqathedh quit (Ping timeout: 252 seconds) 2014-09-05T06:20:52Z drmeister quit (Remote host closed the connection) 2014-09-05T06:21:14Z bdr3552 left #lisp 2014-09-05T06:21:21Z banjara joined #lisp 2014-09-05T06:21:27Z drmeister joined #lisp 2014-09-05T06:27:05Z logand``` left #lisp 2014-09-05T06:28:24Z nipra joined #lisp 2014-09-05T06:29:14Z c74d quit (Remote host closed the connection) 2014-09-05T06:32:12Z isoraqathedh joined #lisp 2014-09-05T06:32:19Z c74d joined #lisp 2014-09-05T06:35:04Z mr-foobar joined #lisp 2014-09-05T06:35:24Z duko joined #lisp 2014-09-05T06:37:29Z pyx joined #lisp 2014-09-05T06:37:37Z isoraqathedh quit (Read error: Connection reset by peer) 2014-09-05T06:37:55Z easye joined #lisp 2014-09-05T06:38:54Z icylisper joined #lisp 2014-09-05T06:39:05Z vydd joined #lisp 2014-09-05T06:39:15Z isoraqathedh joined #lisp 2014-09-05T06:39:21Z duko left #lisp 2014-09-05T06:40:01Z icylisper quit (Client Quit) 2014-09-05T06:41:22Z pt1 joined #lisp 2014-09-05T06:43:33Z vydd quit (Ping timeout: 260 seconds) 2014-09-05T06:44:14Z CrazyEddy quit (Ping timeout: 252 seconds) 2014-09-05T06:45:45Z mvilleneuve_ joined #lisp 2014-09-05T06:48:34Z shka joined #lisp 2014-09-05T06:50:46Z pgomes joined #lisp 2014-09-05T06:54:41Z ggole joined #lisp 2014-09-05T06:57:06Z banjara1 joined #lisp 2014-09-05T06:57:11Z banjara quit (Read error: Connection reset by peer) 2014-09-05T06:59:16Z varjag joined #lisp 2014-09-05T06:59:25Z CrazyEddy joined #lisp 2014-09-05T07:05:30Z zRecursive quit (Remote host closed the connection) 2014-09-05T07:05:47Z CrazyEddy quit (Ping timeout: 268 seconds) 2014-09-05T07:06:09Z ASau quit (Ping timeout: 255 seconds) 2014-09-05T07:06:33Z alexey joined #lisp 2014-09-05T07:08:45Z alexander-01 joined #lisp 2014-09-05T07:10:10Z arenz joined #lisp 2014-09-05T07:11:43Z alexey quit (Remote host closed the connection) 2014-09-05T07:12:35Z wuehlmaus joined #lisp 2014-09-05T07:14:05Z jusss joined #lisp 2014-09-05T07:14:05Z jusss quit (Changing host) 2014-09-05T07:14:05Z jusss joined #lisp 2014-09-05T07:15:22Z alexey joined #lisp 2014-09-05T07:16:27Z Mandus_ quit (Ping timeout: 245 seconds) 2014-09-05T07:17:09Z drmeister quit (Remote host closed the connection) 2014-09-05T07:17:25Z drmeister joined #lisp 2014-09-05T07:17:44Z banjara1 quit (Quit: Leaving.) 2014-09-05T07:18:48Z CrazyEddy joined #lisp 2014-09-05T07:22:56Z kcj joined #lisp 2014-09-05T07:23:27Z alexander-01: I have installed emacs 24.3 and compiled sbcl-1.2.3 from source using sbcl-1.2.1 on debian testing. I have a problem when I ctrl-u alt x run-lisp sbcl in that the icon for sbcl appears but any exspressions I enter are not evaluated 2014-09-05T07:26:24Z kang joined #lisp 2014-09-05T07:26:46Z H4ns: how did sbcl-1.2.1 not satisfy your needs? did it work with that version? 2014-09-05T07:28:45Z kang quit (Read error: Connection reset by peer) 2014-09-05T07:30:48Z Mandus joined #lisp 2014-09-05T07:30:52Z alexander-01: no it did not .. sbcl works in the terminal fine. I was trying with slime originally but have isolated the fault to emacs 2014-09-05T07:31:01Z AntiSpamMeta quit (Remote host closed the connection) 2014-09-05T07:31:21Z AntiSpamMeta joined #lisp 2014-09-05T07:32:37Z davorb joined #lisp 2014-09-05T07:33:13Z mrSpec joined #lisp 2014-09-05T07:33:35Z H4ns: alexander-01: if it is an emacs problem, you'll want to see #emacs 2014-09-05T07:34:47Z jusss quit (Read error: Connection reset by peer) 2014-09-05T07:34:56Z xificurC joined #lisp 2014-09-05T07:35:39Z davorb1 quit (Ping timeout: 246 seconds) 2014-09-05T07:36:02Z alexander-01: H4ns: that makes perfect sense .. thanks :D 2014-09-05T07:36:39Z Cymew joined #lisp 2014-09-05T07:38:24Z ggole: The *icon* for sbcl? 2014-09-05T07:39:39Z vydd joined #lisp 2014-09-05T07:39:49Z alexander-01: Tj 2014-09-05T07:40:18Z Beetny joined #lisp 2014-09-05T07:40:19Z hitecnologys joined #lisp 2014-09-05T07:40:27Z alexander-01: the this is sbcl etc and * 2014-09-05T07:41:07Z drmeiste_ joined #lisp 2014-09-05T07:42:11Z ggole: Oh, I see 2014-09-05T07:42:38Z ggole: Does it work with an emacs -Q? 2014-09-05T07:43:21Z ggole: (You will have to C-u M-x run-lisp sbcl RET, since the relevant variable won't be set.) 2014-09-05T07:44:38Z vydd quit (Ping timeout: 268 seconds) 2014-09-05T07:46:13Z stepnem joined #lisp 2014-09-05T07:46:26Z hiyosi joined #lisp 2014-09-05T07:46:29Z axion quit (Ping timeout: 268 seconds) 2014-09-05T07:47:03Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-05T07:47:08Z AntiSpamMeta quit (Remote host closed the connection) 2014-09-05T07:47:22Z AntiSpamMeta joined #lisp 2014-09-05T07:48:46Z j0ni quit (Remote host closed the connection) 2014-09-05T07:48:55Z alexey quit (Remote host closed the connection) 2014-09-05T07:49:00Z j0ni joined #lisp 2014-09-05T07:51:12Z drmeiste_ joined #lisp 2014-09-05T07:51:32Z hiyosi quit (Ping timeout: 276 seconds) 2014-09-05T07:52:31Z alexey joined #lisp 2014-09-05T07:52:48Z CrazyEddy quit (Ping timeout: 246 seconds) 2014-09-05T07:53:59Z attila_lendvai joined #lisp 2014-09-05T07:54:05Z attila_lendvai quit (Changing host) 2014-09-05T07:54:05Z attila_lendvai joined #lisp 2014-09-05T07:54:21Z drmeiste_: beach: Are you online? 2014-09-05T07:56:39Z edgar-rft joined #lisp 2014-09-05T07:59:26Z alexey quit (Remote host closed the connection) 2014-09-05T08:00:15Z MrWoohoo joined #lisp 2014-09-05T08:01:40Z malice joined #lisp 2014-09-05T08:01:46Z Rugal is now known as stoned 2014-09-05T08:02:47Z drmeiste_: Well if you come on later... the SICL code is a pleasure to read. If I read it correctly the SICL COMPILE-FILE currently generates AST's and doesn't do anything further with them like generate MIR. Is that correct? 2014-09-05T08:04:00Z drmeiste_: minion: memo for beach The SICL code is a pleasure to read. If I read it correctly the SICL COMPILE-FILE currently generates AST's and doesn't do anything further with them like generate MIR. Is that correct? 2014-09-05T08:04:01Z minion: what would you do otherwise? 2014-09-05T08:04:09Z drmeiste_: Argh 2014-09-05T08:04:14Z H4ns: :D 2014-09-05T08:04:34Z drmeiste_: minion: memo for beach: The SICL code is a pleasure to read. If I read it correctly the SICL COMPILE-FILE currently generates AST's and doesn't do anything further with them like generate MIR. Is that correct? 2014-09-05T08:04:35Z minion: Remembered. I'll tell beach when he/she/it next speaks. 2014-09-05T08:06:25Z CrazyEddy joined #lisp 2014-09-05T08:09:01Z alexander-01 quit (Quit: Bye) 2014-09-05T08:09:07Z hitecnologys quit (Quit: hitecnologys) 2014-09-05T08:09:33Z pt1_ joined #lisp 2014-09-05T08:10:19Z hitecnologys joined #lisp 2014-09-05T08:12:22Z pt1 quit (Ping timeout: 240 seconds) 2014-09-05T08:12:29Z AntiSpamMeta quit (Remote host closed the connection) 2014-09-05T08:12:45Z axion joined #lisp 2014-09-05T08:12:57Z AntiSpamMeta joined #lisp 2014-09-05T08:13:12Z necronian quit (Ping timeout: 245 seconds) 2014-09-05T08:13:34Z attila_lendvai quit (Quit: Leaving.) 2014-09-05T08:13:37Z shka quit (Ping timeout: 245 seconds) 2014-09-05T08:17:12Z drmeister quit (Remote host closed the connection) 2014-09-05T08:17:13Z alexey joined #lisp 2014-09-05T08:17:48Z drmeister joined #lisp 2014-09-05T08:18:20Z necronian joined #lisp 2014-09-05T08:29:52Z Beetny quit (Ping timeout: 240 seconds) 2014-09-05T08:35:30Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-05T08:40:26Z vydd joined #lisp 2014-09-05T08:41:01Z ehu joined #lisp 2014-09-05T08:43:01Z `JRG joined #lisp 2014-09-05T08:44:51Z pt1_ quit (Remote host closed the connection) 2014-09-05T08:44:52Z vydd quit (Ping timeout: 240 seconds) 2014-09-05T08:45:17Z pt1 joined #lisp 2014-09-05T08:47:09Z hiyosi joined #lisp 2014-09-05T08:47:48Z Cymew: Artifical stupidity in action 2014-09-05T08:48:21Z drmeiste_ quit (Remote host closed the connection) 2014-09-05T08:51:32Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-05T08:51:37Z capitaomorte: Shinmera: are you there? 2014-09-05T08:52:08Z hitecnologys quit (Quit: hitecnologys) 2014-09-05T08:54:05Z theos quit (Disconnected by services) 2014-09-05T08:54:19Z itheos joined #lisp 2014-09-05T08:57:25Z kcj quit (Quit: kcj) 2014-09-05T08:58:43Z Shinmera: capitaomorte: I am, I have not gotten to try it out again yet, but I will today, don't worry. 2014-09-05T08:59:20Z gravicappa joined #lisp 2014-09-05T09:02:54Z hitecnologys joined #lisp 2014-09-05T09:03:52Z DGASAU quit (Ping timeout: 240 seconds) 2014-09-05T09:05:52Z DGASAU joined #lisp 2014-09-05T09:11:57Z zacharias joined #lisp 2014-09-05T09:14:19Z AntiSpamMeta2 joined #lisp 2014-09-05T09:14:19Z AntiSpamMeta quit (Killed (sendak.freenode.net (Nickname regained by services))) 2014-09-05T09:14:19Z AntiSpamMeta2 is now known as AntiSpamMeta 2014-09-05T09:14:37Z zacharias quit (Client Quit) 2014-09-05T09:15:05Z zacharias joined #lisp 2014-09-05T09:16:00Z drmeister quit (Remote host closed the connection) 2014-09-05T09:16:16Z drmeister joined #lisp 2014-09-05T09:20:37Z Beetny joined #lisp 2014-09-05T09:22:19Z shka joined #lisp 2014-09-05T09:24:05Z BitPuffin joined #lisp 2014-09-05T09:25:46Z AeroNotix: https://github.com/AeroNotix/cqlcl 2014-09-05T09:25:53Z AeroNotix: It's a Cassandra native client 2014-09-05T09:26:01Z AeroNotix: rather than using thrift. 2014-09-05T09:27:42Z shka quit (Ping timeout: 245 seconds) 2014-09-05T09:28:35Z alexey quit (Remote host closed the connection) 2014-09-05T09:28:42Z CrazyEddy quit (Ping timeout: 246 seconds) 2014-09-05T09:29:12Z brucem: AeroNotix: nice ...the binary protocol they did is pretty nice compared to dealing with all of Thrift. 2014-09-05T09:29:33Z vinleod joined #lisp 2014-09-05T09:32:25Z Baggers joined #lisp 2014-09-05T09:32:39Z davorb1 joined #lisp 2014-09-05T09:35:42Z davorb quit (Ping timeout: 246 seconds) 2014-09-05T09:36:25Z loke_ joined #lisp 2014-09-05T09:40:06Z pyx quit (Quit: WeeChat 0.4.3) 2014-09-05T09:41:09Z vydd joined #lisp 2014-09-05T09:41:57Z CrazyEddy joined #lisp 2014-09-05T09:43:34Z milanj joined #lisp 2014-09-05T09:45:22Z vydd quit (Ping timeout: 240 seconds) 2014-09-05T09:45:37Z harish quit (Ping timeout: 245 seconds) 2014-09-05T09:45:39Z AeroNotix: brucem: yupp, it's a joy to implement 2014-09-05T09:48:27Z hiyosi joined #lisp 2014-09-05T09:49:17Z Vutral quit (Ping timeout: 260 seconds) 2014-09-05T09:49:56Z brucem: AeroNotix: see PM whenever. 2014-09-05T09:52:42Z hiyosi quit (Ping timeout: 252 seconds) 2014-09-05T09:54:10Z CrazyEddy quit (Ping timeout: 252 seconds) 2014-09-05T09:54:24Z wokko joined #lisp 2014-09-05T09:57:22Z bjorkintosh quit (Ping timeout: 260 seconds) 2014-09-05T09:57:30Z Vutral joined #lisp 2014-09-05T09:57:33Z Vutral quit (Excess Flood) 2014-09-05T09:59:40Z antonv quit (Ping timeout: 252 seconds) 2014-09-05T09:59:52Z bjorkintosh joined #lisp 2014-09-05T10:04:41Z zacharias quit (Ping timeout: 260 seconds) 2014-09-05T10:07:06Z Vutral joined #lisp 2014-09-05T10:09:17Z Vutral_ joined #lisp 2014-09-05T10:12:04Z zxq9 quit (Quit: Konversation terminated!) 2014-09-05T10:15:20Z attila_lendvai joined #lisp 2014-09-05T10:16:02Z drmeister quit (Remote host closed the connection) 2014-09-05T10:16:54Z drmeister joined #lisp 2014-09-05T10:17:46Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-05T10:18:26Z dmiles_afk joined #lisp 2014-09-05T10:20:26Z ndrei joined #lisp 2014-09-05T10:21:52Z ggole quit (Ping timeout: 240 seconds) 2014-09-05T10:23:09Z CrazyEddy joined #lisp 2014-09-05T10:28:02Z shka joined #lisp 2014-09-05T10:30:07Z resttime_ joined #lisp 2014-09-05T10:30:47Z Vutral_ quit (Ping timeout: 276 seconds) 2014-09-05T10:31:03Z shka quit (Read error: Connection reset by peer) 2014-09-05T10:33:12Z resttime quit (Ping timeout: 245 seconds) 2014-09-05T10:33:39Z Vutral__ joined #lisp 2014-09-05T10:34:35Z ggole joined #lisp 2014-09-05T10:35:20Z CrazyEddy quit (Ping timeout: 276 seconds) 2014-09-05T10:37:12Z heddwch quit (Ping timeout: 250 seconds) 2014-09-05T10:41:55Z vydd joined #lisp 2014-09-05T10:43:37Z heddwch joined #lisp 2014-09-05T10:45:02Z Guest84074 is now known as AndroidShoutapop 2014-09-05T10:45:32Z AndroidShoutapop is now known as Guest56367 2014-09-05T10:46:09Z Guest56367 is now known as AndroidKitKat 2014-09-05T10:46:38Z AndroidKitKat is now known as Guest34813 2014-09-05T10:47:02Z vydd quit (Ping timeout: 276 seconds) 2014-09-05T10:47:08Z Guest34813 quit (Changing host) 2014-09-05T10:47:08Z Guest34813 joined #lisp 2014-09-05T10:47:11Z Guest34813 is now known as AndroidShoutapop 2014-09-05T10:48:40Z Nizumzen joined #lisp 2014-09-05T10:48:44Z hiyosi joined #lisp 2014-09-05T10:49:14Z drmeiste_ joined #lisp 2014-09-05T10:49:34Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-05T10:49:35Z CrazyEddy joined #lisp 2014-09-05T10:53:57Z hiyosi quit (Ping timeout: 264 seconds) 2014-09-05T10:57:53Z itheos is now known as theos 2014-09-05T11:02:11Z echo-area quit (Read error: Connection reset by peer) 2014-09-05T11:09:34Z ustunozgur joined #lisp 2014-09-05T11:11:16Z nipra quit (Quit: Leaving.) 2014-09-05T11:15:32Z bit` quit (Ping timeout: 268 seconds) 2014-09-05T11:19:28Z ustunozgur quit (Remote host closed the connection) 2014-09-05T11:22:33Z drmeister quit (Remote host closed the connection) 2014-09-05T11:22:49Z drmeister joined #lisp 2014-09-05T11:25:20Z AeroNotix: Can I dispatch a defmethod based on a value of a slot? 2014-09-05T11:25:43Z H4ns: AeroNotix: no. you can only dispatch on arguments. 2014-09-05T11:25:58Z AeroNotix: H4ns: ok 2014-09-05T11:27:21Z Mon_Ouie quit (Read error: No route to host) 2014-09-05T11:27:50Z Mon_Ouie joined #lisp 2014-09-05T11:27:50Z Mon_Ouie quit (Changing host) 2014-09-05T11:27:50Z Mon_Ouie joined #lisp 2014-09-05T11:29:13Z bit` joined #lisp 2014-09-05T11:29:22Z alexey joined #lisp 2014-09-05T11:32:11Z davorb joined #lisp 2014-09-05T11:33:06Z knob joined #lisp 2014-09-05T11:33:40Z alexey quit (Ping timeout: 246 seconds) 2014-09-05T11:33:58Z Lefeni quit (Ping timeout: 250 seconds) 2014-09-05T11:35:45Z davorb1 quit (Ping timeout: 246 seconds) 2014-09-05T11:36:23Z schjetne: Has anyone here tried using Common Lisp with CouchDB? 2014-09-05T11:36:30Z capitaomorte: H4ns: is there a method in hunchentoot to check if an acceptor has been started already? 2014-09-05T11:36:52Z ee_cc quit (Quit: ee_cc) 2014-09-05T11:36:57Z Xach: schjetne: yes. 2014-09-05T11:36:58Z FBNRYMNTY joined #lisp 2014-09-05T11:37:14Z Xach: schjetne: there is at least one client on github 2014-09-05T11:37:16Z H4ns: capitaomorte: please check the documentation. if there is one, it is documented. if there is none and there is a need for it, i might add it. 2014-09-05T11:37:22Z ee_cc_ joined #lisp 2014-09-05T11:37:28Z schjetne: I'm looking at the two libraries, neither seem very active 2014-09-05T11:37:35Z schjetne: But clouchdb looks very complete 2014-09-05T11:37:42Z schjetne: Xach: what do you use? 2014-09-05T11:37:53Z AeroNotix: schjetne: do you absolutely need to use couch? 2014-09-05T11:38:08Z AeroNotix: I've found that it is a pretty absymal offering 2014-09-05T11:38:13Z Xach: schjetne: clouchdb in quicklisp. 2014-09-05T11:38:55Z Longlius quit (Remote host closed the connection) 2014-09-05T11:39:28Z capitaomorte: H4ns: there isn't. I find it's useful in automated testing to avoid address-in-use errors and to avoid having to shutdown the acceptor, which takes around 2 secs. 2014-09-05T11:40:21Z capitaomorte: I've been using: (unless (hunchentoot::acceptor-listen-socket acceptor) (hunchentoot:start acceptor)) 2014-09-05T11:40:30Z _schulte_ quit (Ping timeout: 260 seconds) 2014-09-05T11:40:49Z capitaomorte: so maybe (defun started-p (acceptor) (acceptor-listen-socket acceptor)) ? 2014-09-05T11:41:34Z clapautius left #lisp 2014-09-05T11:41:52Z capitaomorte: H4ns: Shall I open issues in github for these small requests? 2014-09-05T11:42:17Z H4ns: capitaomorte: preferably pull requests with documentation updates. 2014-09-05T11:42:45Z vydd joined #lisp 2014-09-05T11:42:52Z H4ns: capitaomorte: started-p sounds okay, but i'd not want to leak the socket, so it'd be (and (acceptor-listen-socket acceptor) t) 2014-09-05T11:43:47Z AeroNotix: H4ns: nice idae 2014-09-05T11:43:49Z AeroNotix: idea* 2014-09-05T11:43:56Z H4ns: oO 2014-09-05T11:44:02Z AeroNotix: To not leak the socket 2014-09-05T11:44:44Z schjetne: AeroNotix: not absolutely, but I'm evaluating a few options 2014-09-05T11:45:23Z AeroNotix: schjetne: what are your requirements? 2014-09-05T11:45:37Z FBNRYMNTY quit (Ping timeout: 245 seconds) 2014-09-05T11:45:51Z shka joined #lisp 2014-09-05T11:46:22Z xyjprc quit (Remote host closed the connection) 2014-09-05T11:47:08Z EvW joined #lisp 2014-09-05T11:47:24Z vydd quit (Ping timeout: 255 seconds) 2014-09-05T11:47:51Z capitaomorte: H4ns: also probably a generic function for good measure, right? 2014-09-05T11:48:33Z ndrei quit (Ping timeout: 264 seconds) 2014-09-05T11:48:54Z H4ns: capitaomorte: right, nothing wrong with that. 2014-09-05T11:49:34Z hiyosi joined #lisp 2014-09-05T11:50:14Z schjetne: AeroNotix: map reduce with aggressive caching should fit my use case. Large sets of slowly changing data, availability is more important than consistence. 2014-09-05T11:50:43Z AeroNotix: schjetne: except couchdb doesn't really scale well beyond a few nodes 2014-09-05T11:50:45Z fridim_ joined #lisp 2014-09-05T11:50:51Z AeroNotix: so your availability may be hampered because of this 2014-09-05T11:51:17Z AeroNotix: If you favour AP over CP, then it makes things a little easier 2014-09-05T11:51:26Z AeroNotix: schjetne: what kind of query patterns do you / will you have? 2014-09-05T11:51:48Z H4ns: AeroNotix: dismissing a technology because it "does not scale beyond a few nodes" without knowing anything about the application at hand is rather ignorant 2014-09-05T11:51:59Z AeroNotix: H4ns: that's why I am asking about the application 2014-09-05T11:52:25Z AeroNotix: H4ns: but I've used many of the "nosql" databases extensively. 2014-09-05T11:52:35Z AeroNotix: couchdb is good for a very select set of cases 2014-09-05T11:53:10Z H4ns: AeroNotix: i hate them like the next guy, but not because of artificial scalability complaints. 2014-09-05T11:53:25Z AeroNotix: H4ns: *shrug* not sure what you're trying to say 2014-09-05T11:53:58Z hiyosi quit (Ping timeout: 246 seconds) 2014-09-05T11:54:07Z AeroNotix: They provide alternatives to traditional datastores which may help with scaling given particular data models and query patterns along with the correct needs with regards to CAP. 2014-09-05T11:54:30Z AeroNotix: They're the tool I reach for first, however. 2014-09-05T11:54:59Z H4ns: because they don't scale beyond a few nodes? 2014-09-05T11:55:04Z AeroNotix: H4ns: a lot of them do 2014-09-05T11:55:09Z schjetne: AP sounds about right. Records will be added from a central location at predictable times. 2014-09-05T11:55:33Z AeroNotix: schjetne: how will you be querying your data? What about relationships? What kind of things do you want to store? 2014-09-05T11:55:48Z AeroNotix: If you choose the wrong datastore it can cause a tonne of rework down the line 2014-09-05T11:55:56Z AeroNotix: especially with these specialized datastores 2014-09-05T11:57:27Z schjetne: AeroNotix: it will be similar to a directory service 2014-09-05T11:57:36Z AeroNotix: schjetne: expand on that? 2014-09-05T11:57:53Z schjetne: I can't, unfortunately 2014-09-05T11:58:14Z AeroNotix: Either way, I'd do a tonne of research before settling on couchdb. 2014-09-05T11:58:26Z AeroNotix: It's a bit of a mindfield to make a truly accurate choice with nosql solutions 2014-09-05T11:58:36Z AeroNotix: there's not a "one size fits all" unfortunately -- unlike postgres :) 2014-09-05T11:58:48Z AeroNotix: minefield* 2014-09-05T11:59:17Z schjetne: And for the most part you have to write your own clients or not use CL 2014-09-05T11:59:38Z AeroNotix: schjetne: Well, I'm not going to argue much in that area. :) 2014-09-05T11:59:52Z AeroNotix: I'm writing the consumer for the cassandra native protocol myself now, so I know what you mean 2014-09-05T11:59:58Z AeroNotix: but it's an excuse to write more CL :) 2014-09-05T11:59:58Z H4ns: schjetne: postgres is really a joy to use from cl using postmodern. 2014-09-05T12:00:20Z schjetne: There will be some graph and tree data, I have looked at Neo4J and Arango-DB 2014-09-05T12:00:43Z H4ns: schjetne: the basic issue that i have with all database systems is that of query language syntax. i hate having to switch between lisp and $whatever-query-language, and postmodern makes the pain rather small. 2014-09-05T12:00:50Z AeroNotix: I agree with H4ns. To expand on it in relation to what I am saying -- I find psql more flexible than any of the other nosql solutions in the beginnging of a project. It's easier to figure out bottlenecks and move those aspects over to a nosql backend when needed 2014-09-05T12:00:50Z Sgeo quit (Read error: Connection reset by peer) 2014-09-05T12:01:00Z schjetne: I'll look at Postmodern as well 2014-09-05T12:01:11Z schjetne: I'd rather not use AllegroGraph, since it's proprietary. 2014-09-05T12:01:18Z AeroNotix: schjetne: Neo4J is strictly a single-node thing. Zero scalability. 2014-09-05T12:01:33Z AeroNotix: if you *needed* availability, like you said before. 2014-09-05T12:01:40Z H4ns: "not scalable" is such an empty phrase. 2014-09-05T12:02:13Z schjetne: And if I understand the Franz correctly, the AllegroGraph client only works with Allegro CL 2014-09-05T12:02:15Z AeroNotix: H4ns: fault tolerant, availability etc 2014-09-05T12:02:41Z H4ns: AeroNotix: all that is not at all meaningful without context 2014-09-05T12:02:59Z H4ns: AeroNotix: i can demand "fault tolerant" and rightfully dismiss anything that you're offering me. 2014-09-05T12:03:14Z AeroNotix: H4ns: schjetne mentioned he needed availability. There is zero physical chance of offering availability with a single node. 2014-09-05T12:03:38Z AeroNotix: H4ns: I don't get what you mean by "dismiss anything" 2014-09-05T12:03:51Z H4ns: AeroNotix: availability is a scale, not a definition of anything. 2014-09-05T12:04:07Z capitaomorte: H4ns: pull request done 2014-09-05T12:04:08Z H4ns: AeroNotix: i'm not surprised that you don't get it :) 2014-09-05T12:04:21Z AeroNotix: H4ns: Why's that? 2014-09-05T12:06:31Z H4ns: capitaomorte: how about race conditions? 2014-09-05T12:06:33Z H4ns: capitaomorte: is acceptor-listen-socket reset to nil by stop? 2014-09-05T12:06:54Z AeroNotix: H4ns: if you demanded "fault tolerance" I would suggest anthing -- you can't demand a single facet of scalability in isolation without hurting others 2014-09-05T12:07:04Z AeroNotix: the requirements come as a whole, not individual goals to be achieved. 2014-09-05T12:07:15Z AeroNotix: I wouldn't* suggest anything* 2014-09-05T12:07:24Z H4ns: capitaomorte: not saying that it'd not be acceptable, but i'm interested in knowing what the contract is. 2014-09-05T12:11:40Z ustunozgur joined #lisp 2014-09-05T12:12:51Z zwer quit (Ping timeout: 264 seconds) 2014-09-05T12:14:14Z zwer joined #lisp 2014-09-05T12:15:21Z ustunozgur quit (Ping timeout: 252 seconds) 2014-09-05T12:22:48Z drmeister quit (Remote host closed the connection) 2014-09-05T12:23:10Z drmeister joined #lisp 2014-09-05T12:25:08Z ee_cc_ quit (Quit: ee_cc_) 2014-09-05T12:25:32Z ustunozgur joined #lisp 2014-09-05T12:29:42Z Vutral__ quit (Ping timeout: 255 seconds) 2014-09-05T12:29:49Z Vutral quit (Ping timeout: 260 seconds) 2014-09-05T12:32:34Z schjetne: It's interesting that Clouchdb uses Parenscript instead of native CL to do the views 2014-09-05T12:32:36Z schjetne: as Chillax does 2014-09-05T12:35:22Z capitaomorte: H4ns: Good one. Didn't think about race-conditions at all :-) but I would say more or less intuitively that since it's just it's a reader, it doesn't matter 2014-09-05T12:36:22Z josemanuel joined #lisp 2014-09-05T12:37:17Z Nizumzen quit (Ping timeout: 245 seconds) 2014-09-05T12:37:23Z capitaomorte: and yes acceptor-listen-socket is set to nil by stop 2014-09-05T12:37:30Z Vutral joined #lisp 2014-09-05T12:37:31Z Vutral quit (Excess Flood) 2014-09-05T12:38:59Z capitaomorte: H4ns: but yes, the acceptor may have started listening and its taskmaster not started yet. 2014-09-05T12:39:04Z Nizumzen joined #lisp 2014-09-05T12:39:36Z kushal quit (Quit: Leaving) 2014-09-05T12:41:21Z capitaomorte: still I think the contract holds like this "This function indicates that ACCEPTOR's startup procedure has been initiated and that its shutdown procedure, if for some reason already initiated, hasn't finished." 2014-09-05T12:41:36Z k-stz joined #lisp 2014-09-05T12:41:45Z capitaomorte: s/and that/or that/ 2014-09-05T12:42:02Z capitaomorte: But is it worth it? 2014-09-05T12:43:24Z vydd joined #lisp 2014-09-05T12:44:31Z kushal joined #lisp 2014-09-05T12:44:47Z Vutral joined #lisp 2014-09-05T12:45:15Z zacharias joined #lisp 2014-09-05T12:45:44Z cods quit (Quit: brb.. hopefully) 2014-09-05T12:48:10Z vydd quit (Ping timeout: 272 seconds) 2014-09-05T12:50:23Z hiyosi joined #lisp 2014-09-05T12:51:40Z lyanchih joined #lisp 2014-09-05T12:52:07Z lyanchih quit (Client Quit) 2014-09-05T12:52:26Z yeticry quit (Read error: Connection reset by peer) 2014-09-05T12:53:25Z karupa is now known as zz_karupa 2014-09-05T12:54:35Z pillton quit (*.net *.split) 2014-09-05T12:54:35Z kjeldahl quit (*.net *.split) 2014-09-05T12:54:35Z cibs quit (*.net *.split) 2014-09-05T12:54:35Z zz_karupa quit (*.net *.split) 2014-09-05T12:55:01Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-05T12:55:08Z wokko left #lisp 2014-09-05T12:58:21Z yeticry joined #lisp 2014-09-05T12:58:35Z pillton joined #lisp 2014-09-05T12:58:35Z kjeldahl joined #lisp 2014-09-05T12:58:35Z cibs joined #lisp 2014-09-05T12:58:35Z zz_karupa joined #lisp 2014-09-05T13:02:33Z CrazyEddy quit (Ping timeout: 246 seconds) 2014-09-05T13:04:06Z CrazyEddy joined #lisp 2014-09-05T13:07:44Z ndrei joined #lisp 2014-09-05T13:07:46Z joshe quit (Ping timeout: 268 seconds) 2014-09-05T13:12:36Z alexey joined #lisp 2014-09-05T13:15:53Z rotty_ quit (Ping timeout: 246 seconds) 2014-09-05T13:16:38Z rotty joined #lisp 2014-09-05T13:18:18Z drmeister quit (Remote host closed the connection) 2014-09-05T13:18:55Z drmeiste_ joined #lisp 2014-09-05T13:19:26Z askatasuna joined #lisp 2014-09-05T13:22:02Z eudoxia joined #lisp 2014-09-05T13:25:16Z zeitue quit (Remote host closed the connection) 2014-09-05T13:25:20Z pillton quit (*.net *.split) 2014-09-05T13:25:20Z kjeldahl quit (*.net *.split) 2014-09-05T13:25:20Z cibs quit (*.net *.split) 2014-09-05T13:25:20Z zz_karupa quit (*.net *.split) 2014-09-05T13:25:57Z Beetny quit (Ping timeout: 255 seconds) 2014-09-05T13:27:27Z pillton joined #lisp 2014-09-05T13:27:28Z kjeldahl joined #lisp 2014-09-05T13:27:28Z cibs joined #lisp 2014-09-05T13:27:28Z zz_karupa joined #lisp 2014-09-05T13:28:27Z AeroNotix: do people prefer returning (values) or NIL when they want the function to return nothing? 2014-09-05T13:28:37Z AeroNotix: I've seen both 2014-09-05T13:28:43Z H4ns: capitaomorte: i'd just like to be clear in the documentation. the issue that i see is that someone could thing they'd be able to use your new reader to determine whether the server had already been started and start it if it returns false. in a single thread scenario, this would certainly work, but what if the acceptor had been started from another thread? 2014-09-05T13:29:07Z Zhivago: (values) means return nothing. nil means return nil. 2014-09-05T13:29:07Z oleo joined #lisp 2014-09-05T13:29:25Z H4ns: capitaomorte: but again, i'm not saying this would be a big issue. the listen socket is set from the START function, right? 2014-09-05T13:29:44Z Xach: AeroNotix: I like to use (values). I get the impression that it's a recent style. 2014-09-05T13:29:54Z Xach: Recent as in the past 10 years or so. 2014-09-05T13:30:11Z CrazyEddy quit (Ping timeout: 276 seconds) 2014-09-05T13:30:16Z AeroNotix: Xach: Yeah, it makes it very clear that you're executing for side-effects. 2014-09-05T13:31:24Z fortitude joined #lisp 2014-09-05T13:31:29Z TomRS```` joined #lisp 2014-09-05T13:31:31Z vydd joined #lisp 2014-09-05T13:31:31Z vydd quit (Changing host) 2014-09-05T13:31:31Z vydd joined #lisp 2014-09-05T13:31:47Z TomRS````: how can I test that 1 == 1.0 ? 2014-09-05T13:31:56Z Xach: TomRS````: with = 2014-09-05T13:32:07Z TomRS````: (equal 1 1.0) doesn't work... 2014-09-05T13:32:09Z TomRS````: that was fast 2014-09-05T13:32:14Z TomRS````: Xach: thanks! 2014-09-05T13:32:17Z davorb1 joined #lisp 2014-09-05T13:32:18Z Xach: No problem. 2014-09-05T13:32:47Z AeroNotix: is there a function to see how long the current Lisp session has been running? 2014-09-05T13:32:54Z dlowe: TomRS````: I highly recommend reading the documentation for EQ, EQL, EQUAL, EQUALP, and = 2014-09-05T13:33:11Z dlowe: AeroNotix: (run-program "ps") 2014-09-05T13:33:53Z Shinmera: AeroNotix: you could also put something like (defvar *startup-time* (get-universal-time)) into your .sbclrc 2014-09-05T13:34:06Z AeroNotix: Shinmera: ha! Nice idea 2014-09-05T13:34:46Z `JRG quit (Ping timeout: 246 seconds) 2014-09-05T13:34:49Z pranavrc quit 2014-09-05T13:35:05Z Xach: If you use sbcl, (get-internal-real-time) is relative to session startup. 2014-09-05T13:35:14Z Xach: Not sure if that applies to any others. 2014-09-05T13:35:19Z dlowe: (with-open-file (inf "/proc/self/stat") (read-line inf)) 2014-09-05T13:36:00Z dlowe: one of those values in there is the start time of the process 2014-09-05T13:36:34Z davorb quit (Ping timeout: 246 seconds) 2014-09-05T13:37:16Z AeroNotix: thanks all 2014-09-05T13:37:49Z Xach: It looks to me like Clozure dates get-internal-real-time from process startup too. 2014-09-05T13:37:57Z zacharias quit (Ping timeout: 260 seconds) 2014-09-05T13:38:27Z andc joined #lisp 2014-09-05T13:39:31Z dlowe: it's very easy to get subsecond time from process startup on posix 2014-09-05T13:47:48Z cods joined #lisp 2014-09-05T13:50:21Z Vivitron joined #lisp 2014-09-05T13:50:21Z Vivitron` quit (Read error: Connection reset by peer) 2014-09-05T13:50:29Z `JRG joined #lisp 2014-09-05T13:51:18Z arpunk quit (Quit: WeeChat 0.4.3) 2014-09-05T13:53:05Z andc left #lisp 2014-09-05T13:57:53Z zalatovo joined #lisp 2014-09-05T14:00:23Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-05T14:02:30Z nipra joined #lisp 2014-09-05T14:02:35Z hiyosi joined #lisp 2014-09-05T14:02:37Z hiyosi quit (Ping timeout: 252 seconds) 2014-09-05T14:02:40Z atgreen joined #lisp 2014-09-05T14:02:41Z ehu quit (Ping timeout: 255 seconds) 2014-09-05T14:02:47Z atgreen quit (Changing host) 2014-09-05T14:02:47Z atgreen joined #lisp 2014-09-05T14:05:57Z LiamH joined #lisp 2014-09-05T14:07:20Z ndrei quit (Ping timeout: 272 seconds) 2014-09-05T14:07:57Z TomRS```` quit (Ping timeout: 272 seconds) 2014-09-05T14:08:08Z theos quit (Disconnected by services) 2014-09-05T14:08:36Z theos joined #lisp 2014-09-05T14:09:58Z ndrei joined #lisp 2014-09-05T14:12:29Z CrazyEddy joined #lisp 2014-09-05T14:12:31Z CrazyEddy quit (Changing host) 2014-09-05T14:12:31Z CrazyEddy joined #lisp 2014-09-05T14:14:52Z ustunozgur quit (Remote host closed the connection) 2014-09-05T14:17:29Z hiroakip joined #lisp 2014-09-05T14:17:38Z zalatovo quit (Quit: WeeChat 1.0) 2014-09-05T14:17:52Z leo2007 quit (Ping timeout: 240 seconds) 2014-09-05T14:18:20Z drmeiste_ quit (Remote host closed the connection) 2014-09-05T14:18:21Z pillton quit (*.net *.split) 2014-09-05T14:18:21Z kjeldahl quit (*.net *.split) 2014-09-05T14:18:21Z cibs quit (*.net *.split) 2014-09-05T14:18:21Z zz_karupa quit (*.net *.split) 2014-09-05T14:18:53Z drmeister joined #lisp 2014-09-05T14:20:46Z capitaomorte: H4ns: yes it is, the socket is set from the calles of the start function. The calling thread will know, for sure, if it reads T that 1. the START has been initiated OR 2. that STOP hasn't finished. If it reads NIL it knows that 3. START hasn't finished OR 4. STOP has been initiated OR 5. START never got called. 2014-09-05T14:21:06Z capitaomorte: If I ammend the doc to state this, is it OK? 2014-09-05T14:21:09Z capitaomorte: *amend 2014-09-05T14:21:20Z capitaomorte: *callees 2014-09-05T14:21:27Z H4ns: capitaomorte: well, STOP is typically called in an asynchronous fashion. anyway, a little more doc will suffice, thanks! 2014-09-05T14:22:13Z capitaomorte: H4ns: We could also use a flag and a mutex of course 2014-09-05T14:22:32Z mishoo quit (Ping timeout: 272 seconds) 2014-09-05T14:22:35Z capitaomorte: does hunchentoot have a locking library loaded? 2014-09-05T14:23:26Z H4ns: capitaomorte: no, let's not go there. 2014-09-05T14:23:31Z capitaomorte: it does, we could use BORDEAUX-THREADS:ACQUIRE-LOCK 2014-09-05T14:23:31Z gingerale joined #lisp 2014-09-05T14:23:45Z AeroNotix: yeah but mutex 2014-09-05T14:23:47Z AeroNotix: :( 2014-09-05T14:23:50Z capitaomorte: OK, a little more doc then 2014-09-05T14:24:14Z capitaomorte: AeroNotix: what's wrong with mutex :-)? 2014-09-05T14:24:27Z H4ns: capitaomorte: everything. 2014-09-05T14:24:41Z capitaomorte: H4ns: oh, OK... 2014-09-05T14:26:34Z harish joined #lisp 2014-09-05T14:26:39Z mishoo joined #lisp 2014-09-05T14:27:17Z pillton joined #lisp 2014-09-05T14:27:17Z kjeldahl joined #lisp 2014-09-05T14:27:17Z cibs joined #lisp 2014-09-05T14:27:17Z zz_karupa joined #lisp 2014-09-05T14:28:05Z tankrim left #lisp 2014-09-05T14:31:18Z radioninja joined #lisp 2014-09-05T14:33:04Z wheelsucker joined #lisp 2014-09-05T14:34:47Z shka quit (Ping timeout: 245 seconds) 2014-09-05T14:36:31Z rme joined #lisp 2014-09-05T14:37:28Z kanru` joined #lisp 2014-09-05T14:39:56Z gravicappa quit (Remote host closed the connection) 2014-09-05T14:40:32Z capitaomorte: H4ns: I amended the pull request with some improved doc. 2014-09-05T14:41:16Z capitaomorte: H4ns, AeroNotix: still would like to know what is wrong with locks? Are they broken in that library, or in lisp, or in general? 2014-09-05T14:42:10Z EvW1 joined #lisp 2014-09-05T14:42:45Z AeroNotix: capitaomorte: Just personally as a tool I find that they don't compose well. There are far better abstractions for things like this. 2014-09-05T14:43:08Z EvW quit (Remote host closed the connection) 2014-09-05T14:43:55Z chitofan joined #lisp 2014-09-05T14:45:16Z varjag quit (Quit: Leaving) 2014-09-05T14:45:32Z capitaomorte: AeroNotix: What abstraction would you use in this particular case if the calling thread had to know absolutely that another thread has finished a call to START? 2014-09-05T14:45:52Z H4ns: capitaomorte: thanks! i'll look at it on the weekend 2014-09-05T14:46:13Z vaporatorius joined #lisp 2014-09-05T14:46:15Z capitaomorte: Actually in this case there it's one writer/many readers, so a simple flag will do 2014-09-05T14:47:59Z ndrei quit (Read error: No route to host) 2014-09-05T14:49:07Z xificurC quit (Quit: WeeChat 0.4.3) 2014-09-05T14:49:23Z AeroNotix: capitaomorte: sure, my comments were more about mutexes in general rather than a specific instance of using mutexes 2014-09-05T14:49:27Z oGMo: i'd use channels and "call this when you're done" 2014-09-05T14:49:34Z AeroNotix: oGMo: this is typically what I'd do 2014-09-05T14:50:01Z oGMo: mutexes alone require usually require too much juggling 2014-09-05T14:50:19Z oGMo: i.e., you usually need mutexes plus something else, and then you should be abstracting it anyway 2014-09-05T14:51:00Z ananna joined #lisp 2014-09-05T14:51:01Z ananna quit (Changing host) 2014-09-05T14:51:01Z ananna joined #lisp 2014-09-05T14:51:32Z pt1 quit (Ping timeout: 245 seconds) 2014-09-05T14:52:00Z hiyosi joined #lisp 2014-09-05T14:54:49Z Ralt quit (Ping timeout: 272 seconds) 2014-09-05T14:54:52Z eigenlicht_ quit (Ping timeout: 240 seconds) 2014-09-05T14:56:49Z hiyosi quit (Ping timeout: 260 seconds) 2014-09-05T14:57:02Z vydd quit (Remote host closed the connection) 2014-09-05T14:59:45Z mr-foobar quit (Quit: Leaving...) 2014-09-05T15:02:33Z ustunozgur joined #lisp 2014-09-05T15:03:32Z ndrei joined #lisp 2014-09-05T15:07:36Z hiyosi joined #lisp 2014-09-05T15:10:21Z Cymew quit (Ping timeout: 260 seconds) 2014-09-05T15:10:41Z innertracks joined #lisp 2014-09-05T15:12:06Z vaporatorius quit (Quit: Leaving) 2014-09-05T15:13:49Z ndrei quit (Ping timeout: 272 seconds) 2014-09-05T15:14:31Z `JRG quit (Ping timeout: 246 seconds) 2014-09-05T15:15:30Z ndrei joined #lisp 2014-09-05T15:15:59Z oGMo: hrm is there a way to make slime output return values instead of minibuffering them 2014-09-05T15:16:51Z oGMo: aha. 2014-09-05T15:17:03Z drmeister quit (Remote host closed the connection) 2014-09-05T15:17:16Z drmeister joined #lisp 2014-09-05T15:19:23Z Davidbrcz joined #lisp 2014-09-05T15:21:32Z kanru` quit (Ping timeout: 245 seconds) 2014-09-05T15:22:57Z Karl_Dscc joined #lisp 2014-09-05T15:27:57Z drmeiste_ joined #lisp 2014-09-05T15:28:47Z Ralt joined #lisp 2014-09-05T15:30:26Z drmeiste_: I just identified a really nasty bug (IMHO) in the ECL Common Lisp source code - I wonder what #lispers think. The CLOS::SORT-APPLICABLE-METHODS looks like this: https://gist.github.com/drmeister/4755106b6e8bc8d22a82 2014-09-05T15:30:36Z blakbunnie27 quit (Quit: EliteBNC free bnc service - http://elitebnc.org - be a part of the Elite!) 2014-09-05T15:30:54Z drmeiste_: It will work in ECL because ECL uses tagged fixnum values. 2014-09-05T15:31:40Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-09-05T15:31:41Z drmeiste_: It's on line 25. EQ is being used to compare an integer value returned by COMPARE-METHODS to the literal "2". 2014-09-05T15:31:55Z drmeiste_: "2" the integer value. 2014-09-05T15:32:19Z davorb joined #lisp 2014-09-05T15:32:44Z dlowe: well, it's sort of implementation-specific code 2014-09-05T15:32:46Z drmeiste_: Clasp doesn't use tagged fixnums yet, its fixnums are boxed so this test will fail. SORT-APPLICABLE-METHODS will fail and generic dispatch will fail 2014-09-05T15:33:00Z dlowe: but yeah, it should probably be = 2014-09-05T15:33:09Z dlowe: or EQL. 2014-09-05T15:34:20Z bit` quit (Ping timeout: 276 seconds) 2014-09-05T15:34:21Z drmeiste_: But in general, if you write Common Lisp code (eq 2 2) will but true on systems with tagged fixnum and probably NIL on systems without. I guess the compiler should catch this? 2014-09-05T15:35:01Z ustunozgur quit (Remote host closed the connection) 2014-09-05T15:35:06Z capitaomorte: oGMo: concerning abstraction, at some point down the abstraction you'll have to lock actually lock the mutex, right? RAII is your friend there. 2014-09-05T15:35:38Z zacharias joined #lisp 2014-09-05T15:36:00Z drmeiste_: This bug has cost me three days. Debugging generic function dispatch gives me nightmares because _everything_ depends on it. It's infinite loops every day, all day. 2014-09-05T15:36:12Z davorb1 quit (Ping timeout: 246 seconds) 2014-09-05T15:36:56Z rme: On the other hand, an implementation is totally justified in relying on implementation-specific behaviour as part of its, er, implementation. 2014-09-05T15:37:15Z oGMo: capitaomorte: raii is a terrible terrible thing 2014-09-05T15:37:36Z capitaomorte: oGMo: ohh 2014-09-05T15:38:31Z attila_lendvai quit (Quit: Leaving.) 2014-09-05T15:39:18Z capitaomorte: oGMo: OK, I'm not that intransigent about any one programming concept in general 2014-09-05T15:39:40Z capitaomorte: even "goto" comes in handy sometimes :-) 2014-09-05T15:40:50Z mindCrime quit (Ping timeout: 276 seconds) 2014-09-05T15:41:55Z drmeiste_: oGMo: Why is RAII a terrible thing? 2014-09-05T15:42:46Z capitaomorte: isn't with-open-file a good example of RAII? Are we talking about the same thing, or is with-open-file terrible terrible too? 2014-09-05T15:42:58Z ndrei quit (Ping timeout: 272 seconds) 2014-09-05T15:43:33Z oGMo: because it's basically refcounting, and you can do better 2014-09-05T15:43:43Z oGMo: if you think refcounting is good, go read books 2014-09-05T15:44:00Z oGMo: ...or papers on GC 2014-09-05T15:44:05Z ndrei joined #lisp 2014-09-05T15:44:48Z drmeiste_: Have you seen this? It's animations of ref-counting vs various garbage collection approaches. http://spin.atomicobject.com/2014/09/03/visualizing-garbage-collection-algorithms/ 2014-09-05T15:45:13Z oGMo: if you just mean the unwind-protect-like bits, that's sortof ok, but you can still do better (like unwind-protect) 2014-09-05T15:45:51Z drmeiste_: In ##C++ you will hear the diametrically opposed view that RAII is *awesome* and garbage collection is for weenies. 2014-09-05T15:45:57Z drmeiste_ is agnostic. 2014-09-05T15:46:10Z alexey quit (Remote host closed the connection) 2014-09-05T15:46:10Z capitaomorte: RAII isn't just for the resource "memory" 2014-09-05T15:46:12Z oGMo: that's because C++ people do a lot of C++ so they have to live with it 2014-09-05T15:46:37Z capitaomorte: and it also doesn't say anything about the way it should be implemented 2014-09-05T15:46:39Z oGMo: refcounting: where reading also requires writes! 2014-09-05T15:48:20Z oGMo: capitaomorte: raii by definition requires allocation, otherwise it's not really raii 2014-09-05T15:49:00Z oGMo: also it assumes things will be done in a very stackish manner, which isn't great if you like CPS, though you can still emulate a stack for some purposes 2014-09-05T15:49:26Z bit` joined #lisp 2014-09-05T15:49:56Z Rotacidni quit (Ping timeout: 272 seconds) 2014-09-05T15:50:32Z drmeiste_: Within 30 seconds I've grown completely paranoid about the ECL source code using EQ to compare fixnums. Gah. 2014-09-05T15:50:46Z hugod quit (Remote host closed the connection) 2014-09-05T15:51:27Z capitaomorte: oGMo: that it requires allocation is an implementation detail. with-open-file gets you an initialized, opened file in a variable, that. Once the variable goes out of scope, the resource is relinquished. 2014-09-05T15:51:40Z Baggers quit (Ping timeout: 252 seconds) 2014-09-05T15:52:10Z capitaomorte: that's the way I understand RAII at least. But I will read books and papers. 2014-09-05T15:52:18Z capitaomorte: :) 2014-09-05T15:52:31Z drmeiste_: It's like pulling away some carpet and seeing termites. 2014-09-05T15:52:43Z hugod joined #lisp 2014-09-05T15:52:50Z hugod is now known as Guest19557 2014-09-05T15:53:05Z faheem_: drmeiste_: how't it going with the optimization? and you must be tired of answering the obvious question, so I won't... 2014-09-05T15:54:38Z Guest19557 is now known as hugoduncan 2014-09-05T15:54:47Z TDog quit (Ping timeout: 245 seconds) 2014-09-05T15:54:55Z oGMo: capitaomorte: tying stuff to scope sometimes works fine, though in that (and pretty much every other) case it's actually tied to a block, and has nothing to do with allocation or destruction (or scope) 2014-09-05T15:55:01Z drmeiste_: Why would you do something like this? This function returns '= (a SYMBOL) '1 or '2 (FIXNUMs) or NIL (a SYMBOL). https://gist.github.com/drmeister/805eef62b56a2225114c 2014-09-05T15:57:32Z drmeiste_: And then the caller tests the return value with EQ. 2014-09-05T15:57:42Z ggole: drmeiste_: it works, doesn't it? (On that implementation.) 2014-09-05T15:58:18Z blakbunnie27 joined #lisp 2014-09-05T15:59:10Z drmeiste_: Yeah, but Common Lisp implementations borrow from each other. I just got bit by this and I don't know how deep it goes. 2014-09-05T15:59:53Z drmeiste_: Well it's motivation to get immediate, tagged fixnums working. 2014-09-05T15:59:54Z ejbs joined #lisp 2014-09-05T15:59:57Z ndrei quit (Ping timeout: 264 seconds) 2014-09-05T16:00:17Z ee_cc joined #lisp 2014-09-05T16:00:57Z lyanchih joined #lisp 2014-09-05T16:00:57Z drmeiste_: I didn't want to do that just yet because it's going to be tricky writing the automated refactoring code for C++. 2014-09-05T16:01:34Z Harag quit (Ping timeout: 252 seconds) 2014-09-05T16:03:32Z alexey joined #lisp 2014-09-05T16:03:51Z Harag joined #lisp 2014-09-05T16:05:38Z ee_cc quit (Quit: ee_cc) 2014-09-05T16:06:47Z ndrei joined #lisp 2014-09-05T16:07:08Z drmeiste_: I'm glad I spent the three days tracking it down. It was a subtle bug in generic function dispatch - the SICL compiler uses generic functions a lot. All heck would have broken loose. 2014-09-05T16:07:17Z Nizumzen joined #lisp 2014-09-05T16:11:43Z chitofan: is it me or is the loop documentation a bit difficult to understand.. 2014-09-05T16:12:19Z chitofan: http://paste.lisp.org/display/143614 2014-09-05T16:13:03Z redstonewarrior joined #lisp 2014-09-05T16:13:07Z ejbs: chitofan: Nah, it is a bit difficult to understand. 2014-09-05T16:13:08Z redstonewarrior left #lisp 2014-09-05T16:14:13Z mr-foobar joined #lisp 2014-09-05T16:15:25Z loke_ quit (Quit: Leaving) 2014-09-05T16:17:05Z drmeister quit (Remote host closed the connection) 2014-09-05T16:17:58Z Guest29763 joined #lisp 2014-09-05T16:18:01Z drmeister joined #lisp 2014-09-05T16:18:08Z ejbs` joined #lisp 2014-09-05T16:18:17Z drmeiste_: faheem_: It's coming along. I've been digging through the SICL code working to understand it before I start trying to incorporate it. 2014-09-05T16:18:32Z Guest29763 left #lisp 2014-09-05T16:19:50Z ndrei quit (Ping timeout: 276 seconds) 2014-09-05T16:20:10Z ejbs quit (Ping timeout: 268 seconds) 2014-09-05T16:20:23Z drmeiste_: I switched all cases where '1 and '2 were returned and compared with EQ to 'spec-1 and 'spec-2. That fixed the obvious dispatch problem I was seeing where GRAY:STREAMP was returning NIL for an argument that absolutely was a gray stream. 2014-09-05T16:21:00Z Davidbrcz quit (Ping timeout: 255 seconds) 2014-09-05T16:24:56Z jasom: oGMo: RAII is much closer to dynamic binding than to ref counting. 2014-09-05T16:32:11Z Pullphinger joined #lisp 2014-09-05T16:33:30Z yrk joined #lisp 2014-09-05T16:34:05Z yrk quit (Changing host) 2014-09-05T16:34:05Z yrk joined #lisp 2014-09-05T16:36:23Z Rotacidni joined #lisp 2014-09-05T16:40:10Z chitofan: can anyone explain to me how i get stuck in an infinite loop here? 2014-09-05T16:40:11Z chitofan: http://paste.lisp.org/display/143615 2014-09-05T16:40:34Z mvilleneuve_ quit (Quit: This computer has gone to sleep) 2014-09-05T16:40:55Z eudoxia: when (...) (break) 2014-09-05T16:40:58Z eudoxia: i think 2014-09-05T16:41:29Z lyanchih__ joined #lisp 2014-09-05T16:41:33Z chitofan: im looking at a book example, it doens't have break 2014-09-05T16:41:42Z lyanchih quit (Ping timeout: 255 seconds) 2014-09-05T16:41:42Z lyanchih__ is now known as lyanchih 2014-09-05T16:41:43Z chitofan: the extra parantheses are because it's a part of a function 2014-09-05T16:41:44Z chitofan: forgot to remove 2014-09-05T16:43:14Z josemanuel quit (Quit: Saliendo) 2014-09-05T16:45:28Z chitofan: oh ok, sorry i'm wrong :( 2014-09-05T16:47:30Z TDog joined #lisp 2014-09-05T16:47:31Z cy joined #lisp 2014-09-05T16:47:38Z gravicappa joined #lisp 2014-09-05T16:50:31Z varjag joined #lisp 2014-09-05T16:51:29Z eigenlicht_ joined #lisp 2014-09-05T16:51:57Z fridim_ quit (Ping timeout: 245 seconds) 2014-09-05T16:52:20Z chitofan: if someone could try my code in the REPL 2014-09-05T16:52:21Z chitofan: http://paste.lisp.org/display/143615#1 2014-09-05T16:52:31Z chitofan: then this 2014-09-05T16:52:31Z chitofan: (do-move *1* *store1* *store2*) 2014-09-05T16:52:41Z chitofan: i get an error of unbound-variable 2014-09-05T16:53:00Z chitofan: i dont understand why it only applies to pos2 2014-09-05T16:54:00Z Harag quit (Ping timeout: 252 seconds) 2014-09-05T16:54:33Z hitecnologys_ joined #lisp 2014-09-05T16:55:11Z urandom__ joined #lisp 2014-09-05T16:56:15Z kobain joined #lisp 2014-09-05T16:56:43Z dlowe: chitofan: because LET binds the variables in parallel, so that pos2 and pos1 are unavailable to the expression in difference 2014-09-05T16:56:45Z kjeldahl quit (Ping timeout: 252 seconds) 2014-09-05T16:56:52Z kobain quit (Max SendQ exceeded) 2014-09-05T16:56:56Z dlowe: chitofan: You can nest LET statements or use LET* to fix. 2014-09-05T16:56:57Z hitecnologys quit (Ping timeout: 245 seconds) 2014-09-05T16:57:33Z chitofan: sorry, i don't understand your explaination.. 2014-09-05T16:57:41Z innertracks quit (Ping timeout: 260 seconds) 2014-09-05T16:57:53Z chitofan: but i will google the difference between let and let* :) 2014-09-05T16:58:51Z kobain joined #lisp 2014-09-05T16:58:55Z Xach: It is worse than a hu-man explanation 2014-09-05T16:58:57Z eudoxia: (let* ((a 1)) (b 2)) ...) => (let ((a 1)) (let ((b 2)) ...)) 2014-09-05T16:59:27Z hitecnologys_ quit (Quit: hitecnologys_) 2014-09-05T17:02:14Z Harag joined #lisp 2014-09-05T17:03:59Z ndrei joined #lisp 2014-09-05T17:05:56Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-05T17:06:00Z eudoxia quit (Quit: wow lunchtime) 2014-09-05T17:06:34Z innertracks joined #lisp 2014-09-05T17:07:01Z kjeldahl joined #lisp 2014-09-05T17:08:04Z drmeiste_: I'm always starting with a LET or a DO and having to go back and change it to LET* and DO*. 2014-09-05T17:08:35Z Jesin quit (Quit: Leaving) 2014-09-05T17:09:44Z Xach: I fix half of that by almost never using DO. 2014-09-05T17:10:31Z innertra1 joined #lisp 2014-09-05T17:10:42Z innertracks quit (Ping timeout: 246 seconds) 2014-09-05T17:11:51Z arenz quit (Ping timeout: 255 seconds) 2014-09-05T17:12:26Z awaythrick_ quit (Remote host closed the connection) 2014-09-05T17:12:38Z ggole: I wouldn't mind it if the definitions of let and let* were swapped 2014-09-05T17:12:42Z Jesin joined #lisp 2014-09-05T17:13:28Z test1600 joined #lisp 2014-09-05T17:15:58Z slyrus joined #lisp 2014-09-05T17:17:09Z brown`` quit (Ping timeout: 240 seconds) 2014-09-05T17:17:38Z [1]test1600 joined #lisp 2014-09-05T17:17:49Z icylisper joined #lisp 2014-09-05T17:18:32Z mishoo quit (Ping timeout: 245 seconds) 2014-09-05T17:18:33Z icylisper quit (Client Quit) 2014-09-05T17:19:51Z kjeldahl quit (Ping timeout: 252 seconds) 2014-09-05T17:19:52Z test1600 quit (Ping timeout: 240 seconds) 2014-09-05T17:20:45Z [1]test1600 is now known as test1600 2014-09-05T17:22:09Z nipra quit (Ping timeout: 264 seconds) 2014-09-05T17:22:52Z drmeister quit (Remote host closed the connection) 2014-09-05T17:22:57Z kjeldahl joined #lisp 2014-09-05T17:23:04Z drmeister joined #lisp 2014-09-05T17:23:42Z brown`` joined #lisp 2014-09-05T17:24:18Z joga quit (Ping timeout: 272 seconds) 2014-09-05T17:25:29Z joga joined #lisp 2014-09-05T17:26:09Z lyanchih quit (Ping timeout: 268 seconds) 2014-09-05T17:26:51Z ustunozgur joined #lisp 2014-09-05T17:26:57Z ustunozgur quit (Remote host closed the connection) 2014-09-05T17:27:35Z ustunozgur joined #lisp 2014-09-05T17:28:31Z pchrist_ is now known as pchrist 2014-09-05T17:29:01Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-05T17:29:46Z ustunozg_ joined #lisp 2014-09-05T17:30:18Z drmeiste_ joined #lisp 2014-09-05T17:30:31Z MoALTz joined #lisp 2014-09-05T17:33:09Z ustunozgur quit (Ping timeout: 260 seconds) 2014-09-05T17:34:52Z test1600 quit (Ping timeout: 245 seconds) 2014-09-05T17:36:52Z Harag quit (Ping timeout: 240 seconds) 2014-09-05T17:36:57Z jlongster joined #lisp 2014-09-05T17:37:21Z mathrick joined #lisp 2014-09-05T17:38:19Z zacharias quit (Quit: Bye!) 2014-09-05T17:38:52Z ustunozg_ quit (Remote host closed the connection) 2014-09-05T17:39:28Z ustunozgur joined #lisp 2014-09-05T17:39:47Z urandom__ quit (Quit: Konversation terminated!) 2014-09-05T17:43:01Z chitofan quit (Quit: Page closed) 2014-09-05T17:49:33Z tkhoa2711 joined #lisp 2014-09-05T17:50:40Z banjara joined #lisp 2014-09-05T17:53:26Z alexey quit (Remote host closed the connection) 2014-09-05T17:53:26Z hiroakip quit (Ping timeout: 276 seconds) 2014-09-05T17:53:37Z slyrus quit (Ping timeout: 245 seconds) 2014-09-05T17:54:14Z tkhoa2711 quit (Client Quit) 2014-09-05T17:55:09Z TDog quit (Ping timeout: 264 seconds) 2014-09-05T17:56:07Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-05T17:57:36Z Mon_Ouie quit (Ping timeout: 268 seconds) 2014-09-05T17:57:59Z ndrei quit (Ping timeout: 276 seconds) 2014-09-05T17:59:01Z ndrei joined #lisp 2014-09-05T18:01:31Z EvW1 quit (Remote host closed the connection) 2014-09-05T18:04:51Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-05T18:05:41Z EvW joined #lisp 2014-09-05T18:09:13Z drmeiste_ joined #lisp 2014-09-05T18:09:56Z askatasuna quit (Ping timeout: 268 seconds) 2014-09-05T18:11:01Z askatasuna joined #lisp 2014-09-05T18:13:34Z ndrei quit (Ping timeout: 252 seconds) 2014-09-05T18:16:13Z OmegaAlpha is now known as anunnaki 2014-09-05T18:19:44Z eudoxia joined #lisp 2014-09-05T18:22:55Z drmeister quit (Remote host closed the connection) 2014-09-05T18:23:21Z radioninja quit (Ping timeout: 264 seconds) 2014-09-05T18:23:27Z drmeister joined #lisp 2014-09-05T18:25:19Z dkcl joined #lisp 2014-09-05T18:27:57Z cgore joined #lisp 2014-09-05T18:30:50Z kushal quit (Quit: Leaving) 2014-09-05T18:42:51Z pnpuff joined #lisp 2014-09-05T18:45:34Z oleo quit (Quit: Verlassend) 2014-09-05T18:45:55Z dkcl quit (Quit: Lost terminal) 2014-09-05T18:49:40Z eudoxia quit (Quit: Lost terminal) 2014-09-05T18:49:54Z oleo joined #lisp 2014-09-05T18:52:01Z ustunozg_ joined #lisp 2014-09-05T18:54:47Z gingerale quit (Ping timeout: 245 seconds) 2014-09-05T18:55:37Z ustunozgur quit (Ping timeout: 245 seconds) 2014-09-05T18:56:05Z vydd joined #lisp 2014-09-05T18:56:55Z pnpuff quit (Quit: leaving) 2014-09-05T18:56:57Z araujo quit (Ping timeout: 245 seconds) 2014-09-05T18:57:48Z pnpuff joined #lisp 2014-09-05T18:59:11Z Longlius joined #lisp 2014-09-05T19:00:24Z Karl_Dscc quit (Remote host closed the connection) 2014-09-05T19:04:55Z AeroNotix: ggole: Oh man, I would love it 2014-09-05T19:05:35Z Jesin quit (Quit: Leaving) 2014-09-05T19:05:57Z strg joined #lisp 2014-09-05T19:07:03Z Shinmera: I don't find myself needing let* very often at all. 2014-09-05T19:07:43Z Shinmera: Almost by a factor of 7 it seems. 2014-09-05T19:08:51Z Shinmera: Though I suppose most lets could be changed to let*s without much of a hassle. 2014-09-05T19:09:04Z pnpuff left #lisp 2014-09-05T19:10:08Z zwer quit 2014-09-05T19:10:31Z Xach: If I saw a let* where a let would do, I'd assume I was missing something important. 2014-09-05T19:10:57Z c3w joined #lisp 2014-09-05T19:11:36Z banjara quit (Quit: Leaving.) 2014-09-05T19:13:01Z krid joined #lisp 2014-09-05T19:15:52Z rme: Some people I respect tend to use let* by default, even if there's only one bindng form. 2014-09-05T19:17:11Z pnpuff joined #lisp 2014-09-05T19:17:35Z dnm joined #lisp 2014-09-05T19:17:47Z ggole: Xach: there is some value in making the distinction, but does it outweigh the annoyance of going back and adding the * (and reindenting)? 2014-09-05T19:18:16Z Shinmera: Given that I don't have to do that often at all: yes 2014-09-05T19:18:21Z Nizumzen joined #lisp 2014-09-05T19:18:53Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-05T19:20:29Z milanj quit (Quit: Leaving) 2014-09-05T19:21:59Z Xach: ggole: I dunno. For me it does. 2014-09-05T19:23:16Z ggole: I wonder if there is a reasonable design that would cover both desires... 2014-09-05T19:24:56Z stanislav: use an asterix-adding editor macro? 2014-09-05T19:25:23Z ejbs joined #lisp 2014-09-05T19:25:37Z pnpuff left #lisp 2014-09-05T19:26:06Z wizzo quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-05T19:26:07Z drmeister quit (Remote host closed the connection) 2014-09-05T19:26:20Z drmeister joined #lisp 2014-09-05T19:26:20Z stanislav: btw, does anyone know an easy way to use uiop:run-program to fork a process as by inferior-shell:fork? 2014-09-05T19:27:27Z rme: Personally, if I could go back in time, I'd switch let and let*. But, given that CL is the way it is, I myself use let unless I need let*'s sequential binding behavior. 2014-09-05T19:27:44Z vaporatorius joined #lisp 2014-09-05T19:28:32Z ejbs` quit (Ping timeout: 245 seconds) 2014-09-05T19:28:59Z Patzy_ quit (Ping timeout: 276 seconds) 2014-09-05T19:29:23Z Patzy joined #lisp 2014-09-05T19:29:42Z Shinmera: You could suggest the switch for CL21 2014-09-05T19:30:03Z sroy_ joined #lisp 2014-09-05T19:30:19Z ustunozg_ quit (Remote host closed the connection) 2014-09-05T19:31:55Z dim: I think the Common Lisp Coding Style paper from Norvig advices using let* by default 2014-09-05T19:32:06Z atgreen quit (Ping timeout: 246 seconds) 2014-09-05T19:32:15Z ggole: Huh, really? I don't remember that. 2014-09-05T19:33:09Z dim: pare 19 2014-09-05T19:33:10Z jasom: I agree that swapping let and let* would make more sense; bindings fall into 3 categories: 1) order doesn't matter 2) sequential needed 3) parallel needed. So far #3 is by far the most rare for me. 2014-09-05T19:33:14Z dim: page 10 even, ggole 2014-09-05T19:33:46Z dim: Here are examples involving let and let􏰢􏰅 The 􏰈rst exploits parallel binding and the second sequential􏰅 The third is neutral􏰅 2014-09-05T19:34:10Z ggole: We must have a different page 10. 2014-09-05T19:34:24Z ggole: Ah, 19 2014-09-05T19:34:30Z jasom: ah, those ligatures didn't survive irc through my terminal emulator 2014-09-05T19:34:34Z dim: wow, typo after typo, sorry 2014-09-05T19:34:45Z dim: copy/paste is quite sadly broken here from this PDF too 2014-09-05T19:35:07Z ggole: "Consistency matters more than the actual choice" and I have to agree with that. 2014-09-05T19:35:18Z dim: so he saith be consistent with which is the "neutral" form, and my reading is that as let allows for parallel binding I prefer let* 2014-09-05T19:35:25Z dim: but I now realize that's not what he says at all 2014-09-05T19:35:43Z dim: so I'm only remembering what I took out of the paper, as usual? 2014-09-05T19:35:48Z Xach: heh 2014-09-05T19:35:57Z ggole: He says use one consistently and use the other only where the particular behaviour is necessary, which is thoroughly sensible 2014-09-05T19:36:07Z ggole: But doesn't guide you in picking which one 2014-09-05T19:36:12Z dim: exactly 2014-09-05T19:36:15Z Mon_Ouie joined #lisp 2014-09-05T19:36:29Z dim: he knew not to pick a fight ;-) 2014-09-05T19:37:22Z AeroNotix: https://groups.google.com/forum/#!topic/comp.lang.lisp/fmapirOZIog 2014-09-05T19:37:25Z AeroNotix: Xach: holy shit^ 2014-09-05T19:37:52Z slyrus joined #lisp 2014-09-05T19:38:20Z ggole: Haha 2014-09-05T19:38:43Z AeroNotix: You have to lead a very sad life to troll IRC channels and then take it to the mailing list to continue 2014-09-05T19:38:57Z Xach: Gavin Schuette's visits are becoming more and more rare. 2014-09-05T19:39:33Z slyrus_ joined #lisp 2014-09-05T19:39:59Z Shinmera: I'm kinda sad I missed that 2014-09-05T19:40:25Z AeroNotix: same 2014-09-05T19:40:46Z ggole: That doesn't look like trolling, more like illness 2014-09-05T19:41:07Z AeroNotix: it's definitely some kind of cry for help 2014-09-05T19:41:08Z ggole: Not that you can reliably tell from text alone 2014-09-05T19:41:12Z Xach: Well, yes. I'm not sure how to respond to disruptive people who seem to have some real problems. 2014-09-05T19:41:24Z AeroNotix: Xach: he really deserved a bad 2014-09-05T19:41:27Z AeroNotix: ban 2014-09-05T19:41:28Z H4ns: some illnesses interfere with the ability of a person to take part in certain social activities. 2014-09-05T19:41:54Z AeroNotix: autism? 2014-09-05T19:41:58Z ggole: Politely banning them is probably about the best you can do 2014-09-05T19:42:09Z AeroNotix: apparently he genuinely is 40+ 2014-09-05T19:42:13Z AeroNotix: (google sluething) 2014-09-05T19:42:53Z AeroNotix: http://teapartyorg.ning.com/profile/GavinSchuette 2014-09-05T19:43:26Z Xach: No need to discuss Gavin any further, though. 2014-09-05T19:43:40Z slyrus quit (Ping timeout: 268 seconds) 2014-09-05T19:43:42Z AeroNotix: Xach: agreded 2014-09-05T19:43:43Z slyrus_ is now known as slyrus 2014-09-05T19:43:46Z AeroNotix: Agreed* 2014-09-05T19:44:19Z AeroNotix: I'm currently waiting for the CLOS book by Keene 2014-09-05T19:44:25Z AeroNotix: looking forward to it! 2014-09-05T19:44:32Z AeroNotix: any opinions on that book? 2014-09-05T19:45:01Z H4ns: i liked it. 2014-09-05T19:45:06Z pnpuff joined #lisp 2014-09-05T19:51:15Z ccl-logbot joined #lisp 2014-09-05T19:51:15Z 2014-09-05T19:51:15Z names: ccl-logbot cmack pnpuff slyrus Mon_Ouie sroy_ Patzy vaporatorius drmeister ejbs Nizumzen dnm c3w strg Longlius vydd oleo cgore askatasuna EvW mathrick jlongster MoALTz joga brown`` kjeldahl innertra1 kobain eigenlicht_ varjag gravicappa cy Rotacidni yrk Pullphinger mr-foobar blakbunnie27 hugoduncan bit` davorb Ralt hiyosi ananna rme wheelsucker zz_karupa cibs pillton harish CrazyEddy theos LiamH Vivitron cods fortitude rotty yeticry Vutral k-stz knob 2014-09-05T19:51:15Z names: heddwch ggole resttime_ dmiles_afk bjorkintosh vinleod BitPuffin AntiSpamMeta DGASAU necronian axion malice MrWoohoo edgar-rft j0ni stepnem mrSpec Mandus wuehlmaus isoraqathedh easye c74d kanru Shinmera lpaste angavrilov p_l frkout snits vlnx wooden mhd kirin` arrsim joneshf-laptop DKordic` anunnaki posterdati300 nand1 spockokt PuercoPop misv ered xebd` dxtr zarul MightyJoe njsg hlavaty Denommus mal_ nydel dfox victor_lowther_ cpt_nemo benny abbe bend3r 2014-09-05T19:51:15Z names: effy keen________ zymurgy AndroidShoutapop Tordek jlarocco ^Posterdati^ leoc les mindCrime_ tkd jayne mingvs stanislav emma lupine john-mcaleely Khisanth lemoinem Adeon Fade tstc` peccu2 vsync gluegadget guaqua` kalzz Guest13747 josteink rvirding_ Krystof gz__ ThePhoeron yacks sivoais White_Flame vert2 Intensity cwandrews nisstyre froggey shwouchk Zhivago ggherdov _d3f clog girrig fikusz_ cross ssake_ wormphle1m nitro_idiot flip214 phadthai d4gg4d____ 2014-09-05T19:51:15Z names: alchemis7 Svetlana kyl samebchase gensym drdo wgl eli scharan manfoo7 Kabaka WeirdEnthusiast Neet imanc_ _ku gko aksatac_ dlowe ircbrowse phf Nshag _tca oGMo stopbyte qbit jdz teiresias srcerer otwieracz felideon ferada ozzloy fe[nl]ix pchrist AdmiralBumbleB-1 Blkt_ asedeno_ setheus Tuxedo_ _8hzp lonjil splittist_ luis TDT` endou__ ubii ahungry __main__ _5kg thierrygar pjb sytse jasom cmatei tessier GGMethos schoppenhauer sigjuice DrCode whmark killmaster 2014-09-05T19:51:15Z names: billstclair ``Erik Aranshada|W Oddity Jubb honkfestival karswell cyphase renard_ milosn s_e joneshf sfa housel nicdev viaken GuilOooo joast rvchangue jchochli zmyrgel tadni xristos Bike zacts Adlai clop2 rainbyte nightfly gabot djinni` spacebat stoned AeroNotix redline6561 nightshade427 jackdaniel ineiros_ devn jsnell_ micro_ ski sepi farawayexplorer newcup codeburg z0d wchun K1rk tkd_ tomaw ck_ _death felipe galdor mood brucem sellout Okasu l3thal edran 2014-09-05T19:51:15Z names: eMBee justinmcp_ alpha- yano Natch bobbysmith007 smull_ bambams troydm p_l|backup eak mgv Tristam theBlackDragon tomaw- Xach Soft arrdem sjl- tbarletz Subfusc minion aerique_ johs ft jtz pok funnel faheem_ aoh finnrobi yauz_2 fmu acieroid sprang cmbntr_ yeltzooo Neptu tokenrove bege BlastHardcheese dan64- FunfYears copec diginet eazar001 grungier daimrod stokachu lusory eagleflo dim eee-blt rk[imposter] j_king schjetne replcated H4ns ivan\ specbot 2014-09-05T19:51:15Z names: Colleen__ whartung TheMoonMaster Borbus kbtr junke_ enn loke ttm byte48 oconnore tvaalen mtd yroeht1 ThomasSolti antoszka FracV hyoyoung ChibaPet Anarch quasisane akkad vhost- mdallastella Ober_ arbscht ramus sklr |3b| superjudge__ zbigniew SHODAN sshirokov marsam sbryant inklesspen TristamWrk foom farhaven wasamasa ecraven Kruppe mikaelj_ bcoburn 2014-09-05T19:51:22Z banjara joined #lisp 2014-09-05T19:51:28Z AeroNotix: Xach: I'll add that to the list 2014-09-05T19:52:04Z Xach: Should be fairly cheap used. 2014-09-05T19:52:37Z jasom: The great thing about OO lisp idioms is that there are so many of them 2014-09-05T19:52:47Z alexey joined #lisp 2014-09-05T19:53:56Z dim: and it's much more consistent that what I know of the other OOP "styles" (calling the parent's constructor in python is the latest example I've been exposed to) 2014-09-05T19:54:19Z ehu joined #lisp 2014-09-05T19:55:01Z oleo__ joined #lisp 2014-09-05T19:55:08Z slyrus quit (Ping timeout: 252 seconds) 2014-09-05T19:55:12Z pnpuff: to python... or not to python :) for to use paraview to piton is needed 2014-09-05T19:55:17Z oleo is now known as Guest1627 2014-09-05T19:55:21Z AeroNotix: dim: the fact you even need to do that in python is a bit annoying 2014-09-05T19:55:35Z oleo__ quit (Read error: Connection reset by peer) 2014-09-05T19:56:02Z Guest1627 quit (Ping timeout: 245 seconds) 2014-09-05T19:56:45Z pnpuff: python. sorry.. 2014-09-05T19:57:22Z wgl quit (Ping timeout: 240 seconds) 2014-09-05T19:57:32Z Hydan joined #lisp 2014-09-05T19:58:14Z oleo__ joined #lisp 2014-09-05T19:58:29Z oleo__ is now known as oleo 2014-09-05T19:58:42Z hiyosi quit (Ping timeout: 246 seconds) 2014-09-05T19:59:01Z dim: AeroNotix: yeah. and yeah I'm sorry I played with python before I tried CL seriously, it looks almost like wasted time 2014-09-05T19:59:13Z AeroNotix: dim: it's not to be dismissed as a tool, though 2014-09-05T19:59:22Z cgore quit (Remote host closed the connection) 2014-09-05T19:59:26Z AeroNotix: the library support and its ubiquity are very compelling 2014-09-05T20:00:45Z dlowe: yeah, there are other advantages than raw expressive power 2014-09-05T20:00:48Z Xach: dim: you're like the opposite of peter norvig! 2014-09-05T20:01:21Z ggole: Shame the implementation is such rubbish 2014-09-05T20:01:35Z ggole: Not that it seems to have hurt adoption. 2014-09-05T20:01:36Z AeroNotix: ggole: depends where you're looking from 2014-09-05T20:01:58Z dlowe: python sucked up all the perl people :) 2014-09-05T20:02:08Z AeroNotix: dlowe: I don't see this as a problem 2014-09-05T20:02:22Z dlowe: no, I'm just saying that it was an enormous improvement for those people. 2014-09-05T20:02:37Z dlowe: ruby sucked up about half the php crowd for similar reasons 2014-09-05T20:02:56Z ggole: AeroNotix: I'm looking from a position where I can see Self and Strongtalk 2014-09-05T20:03:07Z ggole: The view doesn't do Python many favours 2014-09-05T20:03:43Z AeroNotix: ggole: I'm not familiar with either of those so I can't say much there :) 2014-09-05T20:03:54Z AeroNotix: we're all blub programmers on some level 2014-09-05T20:04:39Z Bicyclidine joined #lisp 2014-09-05T20:04:41Z dim: Xach: hehe I don't know about opposite, but https://github.com/dimitri/sudoku is adding to your point I guess 2014-09-05T20:06:32Z AeroNotix: dim: I've probably never seen Hz used as a benchmark metric 2014-09-05T20:07:05Z Hydan quit (Quit: -a- IRC for Android 2.1.19) 2014-09-05T20:07:06Z dim: yeah it was new to me to, I've been following what Norvig did 2014-09-05T20:07:28Z slyrus joined #lisp 2014-09-05T20:08:03Z jasom: AeroNotix: I would say it's by far the most common benchmark metric I've seen 2014-09-05T20:08:20Z AeroNotix: jasom: expressed in Hz? 2014-09-05T20:08:30Z jasom: usually not named Hz though 2014-09-05T20:08:33Z AeroNotix: jasom: indeed 2014-09-05T20:08:36Z capitaomorte joined #lisp 2014-09-05T20:08:36Z AeroNotix: that's what I was meaning 2014-09-05T20:08:39Z AeroNotix: usually Req/s 2014-09-05T20:08:43Z AeroNotix: or something similar to that 2014-09-05T20:08:59Z jasom: I measure speed in meter Hertz 2014-09-05T20:09:32Z AeroNotix: :) 2014-09-05T20:10:08Z jasom: I drive on the freeway at about 21 m*Hz 2014-09-05T20:10:13Z jasom: s/21/31 2014-09-05T20:10:23Z hugoduncan is now known as hugod 2014-09-05T20:11:28Z pnpuff: it's too fast... 2014-09-05T20:12:16Z pnpuff: now i'm reading about the speed limits :) 2014-09-05T20:13:40Z araujo joined #lisp 2014-09-05T20:14:12Z resttime_ is now known as resttime 2014-09-05T20:18:28Z pnpuff: AeroNotix: sure, python is a tool ... like blender is a tool and so on 2014-09-05T20:18:37Z pnpuff: like c++ is a tool :) 2014-09-05T20:18:55Z pnpuff: but Cl is more than a tool , maybe 2014-09-05T20:19:00Z pnpuff: *CL 2014-09-05T20:19:40Z sroy_ quit (Quit: Leaving) 2014-09-05T20:20:28Z pnpuff: I would like to think so 2014-09-05T20:24:44Z vaporatorius quit (Quit: Leaving) 2014-09-05T20:25:22Z hiyosi joined #lisp 2014-09-05T20:26:09Z drmeister quit (Remote host closed the connection) 2014-09-05T20:26:44Z drmeister joined #lisp 2014-09-05T20:26:49Z Jesin joined #lisp 2014-09-05T20:29:52Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-05T20:30:27Z stacksmith joined #lisp 2014-09-05T20:40:03Z zygentoma joined #lisp 2014-09-05T20:42:14Z cite-reader joined #lisp 2014-09-05T20:44:08Z gravicappa quit (Remote host closed the connection) 2014-09-05T20:45:43Z ndrei joined #lisp 2014-09-05T20:45:56Z nell joined #lisp 2014-09-05T20:46:23Z innertra1 quit (Quit: innertra1) 2014-09-05T20:47:21Z malkomalko joined #lisp 2014-09-05T20:53:01Z binghe joined #lisp 2014-09-05T20:53:28Z innertracks joined #lisp 2014-09-05T20:55:12Z resttime quit (Quit: resttime) 2014-09-05T20:55:47Z k-stz quit (Remote host closed the connection) 2014-09-05T20:55:54Z knob quit (Quit: Leaving) 2014-09-05T20:58:17Z resttime joined #lisp 2014-09-05T21:02:42Z Bicyclidine quit (Ping timeout: 255 seconds) 2014-09-05T21:04:29Z binghe quit (Quit: ChatZilla 0.9.90.1 [SeaMonkey 2.26.1/20140612182257]) 2014-09-05T21:06:20Z malice: Hello, question. I've got a function in Common Lisp (short script) that I'd like to turn into executable. It converts text file from win1250 to utf8. Let's call it Convert. I'd like to be able to just run in terminal "Convert filepath", where filepath would be path to text file, and it would convert it staright away. 2014-09-05T21:06:39Z malice: How can I do it so that I can call it that way? 2014-09-05T21:07:27Z malice: I hope you can understand what I mean 2014-09-05T21:07:28Z malice: :d 2014-09-05T21:07:50Z Xach: malice: What implementation of Common Lisp do you use? 2014-09-05T21:08:08Z malice: Xach, SBCL 2014-09-05T21:08:26Z malice: I tried just turning it into executable, naively hoping that it would pass argument straight to the function 2014-09-05T21:08:33Z malice: But I got disappointed. 2014-09-05T21:08:51Z malice: Programming ain't that easy :) 2014-09-05T21:08:51Z Xach: malice: You can look at sb-ext:*posix-argv* to see the argument. 2014-09-05T21:09:15Z malice: I'll do that. Thanks! 2014-09-05T21:09:33Z Bicyclidine joined #lisp 2014-09-05T21:09:34Z AeroNotix: Xach: back in the days of yore 2014-09-05T21:09:48Z AeroNotix: Why didn't the standardization process "take care" of executables? 2014-09-05T21:10:03Z AeroNotix: or standardize on certain things like argv 2014-09-05T21:10:28Z malkomalko quit 2014-09-05T21:10:49Z Xach: AeroNotix: I don't know. It's hard to answer "why didn't they" without knowing exactly what options and concerns were before them at the time. 2014-09-05T21:11:17Z AeroNotix: Sure 2014-09-05T21:12:02Z Xach: The landscape of file systems, operating systems, processes, etc, certainly had more variety in the 80s and 90s. 2014-09-05T21:12:09Z Xach: Maybe that has something to do with it. 2014-09-05T21:12:09Z mrSpec quit (Remote host closed the connection) 2014-09-05T21:12:16Z AeroNotix: I suppose that at the time Lisp was mostly applications running on dedicated machines 2014-09-05T21:12:29Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-05T21:13:00Z Xach fondly remembers his vast confusion going from MS-DOS to VM/CMS filesystem ideas back then 2014-09-05T21:13:24Z Xach: AeroNotix: Did you listen to Peter's talk? 2014-09-05T21:13:49Z AeroNotix: Xach: I did. I'll re-watch it again because you've mentioned it to me twice now so I think I must've missed something :) 2014-09-05T21:13:54Z Xach: watch? 2014-09-05T21:13:58Z Xach: there's nothing to watch? 2014-09-05T21:14:08Z Xach: It survives only as an audio recording. 2014-09-05T21:14:29Z AeroNotix: Then we've both been referring to different things 2014-09-05T21:14:33Z slyrus_ joined #lisp 2014-09-05T21:14:44Z Ralt_ joined #lisp 2014-09-05T21:14:51Z Ralt_ quit (Client Quit) 2014-09-05T21:14:51Z AeroNotix: Xach: https://www.youtube.com/watch?v=4NO83wZVT0A 2014-09-05T21:14:56Z AeroNotix: this is what I was thinking you meant 2014-09-05T21:15:18Z Xach: Anyway, one of the points that stuck with me is that people these days often assume that a decision back then was made because they didn't know any better, the decision was made in the dark and we know better now. But in fact most of the decisions were hashed out and argued to death before a decision was made. 2014-09-05T21:15:31Z Xach: Some people were happy with how it went, some weren't, but a decision had to be made and they made it. 2014-09-05T21:15:33Z Bicyclidine quit (Ping timeout: 264 seconds) 2014-09-05T21:15:41Z pandaman joined #lisp 2014-09-05T21:15:43Z AeroNotix: Oh totally, I'm not saying they were making stupid decisions 2014-09-05T21:15:45Z pandaman: ayo 2014-09-05T21:15:52Z pandaman: it's quite lively in here 2014-09-05T21:15:53Z malice: btw. it's somewhat disappointing coming to Common Lisp from, e.g. C++, where you compile file and got lightweight executable without any problems, and now, if I just want the world to see my "Hello, World" program, it is 30mb big... 2014-09-05T21:15:57Z pandaman is now known as p4nd4m4n 2014-09-05T21:16:01Z Xach: AeroNotix: https://soundcloud.com/zach-beane/peter-seibel-common-lisp is the talk to which i'm referring 2014-09-05T21:16:15Z AeroNotix: malice: if you want to make an apple pie from scratch, you must first invent the universe. 2014-09-05T21:16:27Z slyrus quit (Ping timeout: 245 seconds) 2014-09-05T21:16:29Z Xach: malice: It would be nice if you could have all the nice things of common lisp, and a small executable at the end, but that is not how it is right now. 2014-09-05T21:16:37Z malice: :) 2014-09-05T21:16:39Z slyrus_ is now known as slyrus 2014-09-05T21:16:55Z malice: CL is nice language, I kinda like it, but at the same time some of the things seem wrong 2014-09-05T21:17:01Z AeroNotix: Xach: thansk! 2014-09-05T21:17:09Z malice: It looks like CL could use new standard 2014-09-05T21:17:10Z AeroNotix: malice: seem wrong compared to C++? 2014-09-05T21:17:25Z Xach: malice: Maybe. They are the way they are and are unlikely to change much any time soon. 2014-09-05T21:17:28Z malice: seem wrong compared to what you would come up with now 2014-09-05T21:17:40Z Xach: You can add stuff but not really take away or change stuff very easily. 2014-09-05T21:17:45Z malice: Unfortunately. 2014-09-05T21:18:00Z AeroNotix: malice: it's worth learning something more extensively before saying "It doesn't have X that I had before, it's bad!" 2014-09-05T21:18:04Z Xach: I would love to see more people add more stuff, especially if they are licensed in a way that I can reuse! 2014-09-05T21:18:17Z Xach: I don't mind that it doesn't change much, much. 2014-09-05T21:18:28Z AeroNotix: It would be nice to get certain things standardized. 2014-09-05T21:18:56Z Bicyclidine joined #lisp 2014-09-05T21:18:57Z malice: AeroNotix, I'm not CL pro, but what I mean is e.g. PCL's chapter about filesystem. 2014-09-05T21:18:59Z Xach: I think portability libraries are the way that happens now. 2014-09-05T21:19:06Z francogrex joined #lisp 2014-09-05T21:19:14Z CrazyEddy quit (Quit: Leaving) 2014-09-05T21:19:19Z Xach: I think cffi and closer-mop are good examples. usocket is an ok example. 2014-09-05T21:19:34Z malice: generally, it looks like it isn't easy to write portable CL code 2014-09-05T21:19:46Z AeroNotix: malice: that chapter isn't indicative of CL nowadays, I think that chapter is meant as a way to both introduce WHY some things are a certain way and to show HOW to fundamentally change things to make it better 2014-09-05T21:19:50Z malice: but I'm beginner so I may be wrong ;) 2014-09-05T21:19:51Z Xach: malice: It depends on what you're working on. 2014-09-05T21:20:32Z malice: Well that's right that book does great work at showing how easily you can get something done in CL 2014-09-05T21:20:53Z AeroNotix: malice: not to mention that C++ isn't any better with standardization across compilers 2014-09-05T21:21:10Z AeroNotix: especially when you bring in the windows "compiler" 2014-09-05T21:21:16Z malice: please 2014-09-05T21:21:29Z pnpuff_ joined #lisp 2014-09-05T21:22:06Z malice: I'm not an advocate of C++ :) It's nice experience coming from lower level language to CL and see how you can get things done fast and easily 2014-09-05T21:22:15Z malice: But at the same time there are some good things in both languages 2014-09-05T21:22:26Z AeroNotix: For sure, but you can say that about anything really. 2014-09-05T21:22:31Z malice: True 2014-09-05T21:22:35Z malice: well 2014-09-05T21:22:40Z malice: I don't really like Pascal 2014-09-05T21:22:48Z malice: But.... :) 2014-09-05T21:22:54Z kcj joined #lisp 2014-09-05T21:23:06Z drmeister quit (Remote host closed the connection) 2014-09-05T21:23:20Z drmeister joined #lisp 2014-09-05T21:23:45Z malice: Well, let's hope that I'll learn CL well enough to promote it in the world, if it's worth it. 2014-09-05T21:23:53Z AeroNotix: Xach: the whole history of Lisp is very appealing to me 2014-09-05T21:24:05Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-05T21:24:33Z Pullphinger quit 2014-09-05T21:24:46Z pnpuff quit (Ping timeout: 260 seconds) 2014-09-05T21:25:17Z AeroNotix: is anyone doing (large?) deployment with Lisp on EC2? 2014-09-05T21:25:20Z pnpuff_ is now known as pnpuff 2014-09-05T21:25:30Z Xach: AeroNotix: The more I learn about the history of CL, the more I understand why there are many grumpy/disgruntled actors still around. 2014-09-05T21:25:39Z AeroNotix: Xach: haha 2014-09-05T21:25:57Z AeroNotix: I'd be a shame to lose this kind of history. This talk is a great way to preserve this kind of stuff. 2014-09-05T21:26:09Z hiyosi joined #lisp 2014-09-05T21:26:11Z marsam is now known as marsbot 2014-09-05T21:27:04Z Xach: I'd like to do more CL stuff on ec2. 2014-09-05T21:27:16Z AeroNotix: Just asking in relation to malice's question 2014-09-05T21:27:22Z Xach: I'd like to do more build testing that way. Right now my process is very linear and takes a couple hours to complete. 2014-09-05T21:27:37Z AeroNotix: Xach: ansible/puppet + jenkins 2014-09-05T21:28:47Z Xach: I don't know what that means, sorry. 2014-09-05T21:29:04Z TDog joined #lisp 2014-09-05T21:29:09Z Xach: http://ml.cddddr.org/quinquevirate/ is a good archive of some serious history. It feels a little weird to read what the authors thought was private, though. 2014-09-05T21:29:20Z AeroNotix: Xach: ansible and puppet are tools for scripting large installs/automation of system deployments 2014-09-05T21:29:32Z AeroNotix: and jenkins is good for doing repeated tasks and CI 2014-09-05T21:30:37Z hiyosi quit (Ping timeout: 245 seconds) 2014-09-05T21:31:58Z p4nd4m4n: anybody based in NYC? 2014-09-05T21:32:29Z Fare joined #lisp 2014-09-05T21:33:07Z wilfredh joined #lisp 2014-09-05T21:43:13Z LiamH quit (Quit: Leaving.) 2014-09-05T21:43:27Z thierrygar quit (Quit: thierrygar) 2014-09-05T21:43:36Z ejbs` joined #lisp 2014-09-05T21:44:08Z blahzik joined #lisp 2014-09-05T21:44:20Z wheelsucker quit (Quit: Client Quit) 2014-09-05T21:45:17Z ejbs quit (Ping timeout: 245 seconds) 2014-09-05T21:45:50Z bgs100 joined #lisp 2014-09-05T21:46:00Z edgar-rft quit (Quit: no meaningful message available) 2014-09-05T21:48:07Z slyrus quit (Ping timeout: 245 seconds) 2014-09-05T21:50:44Z Beetny joined #lisp 2014-09-05T21:51:25Z alexey quit (Remote host closed the connection) 2014-09-05T21:51:49Z mr-foobar quit (Quit: Leaving...) 2014-09-05T21:52:47Z Davidbrcz joined #lisp 2014-09-05T21:57:50Z CrazyEddy joined #lisp 2014-09-05T21:59:47Z hugod is now known as hugod|away 2014-09-05T21:59:52Z stack` joined #lisp 2014-09-05T22:00:00Z slyrus joined #lisp 2014-09-05T22:00:45Z hugod|away is now known as hugod 2014-09-05T22:00:51Z marsbot is now known as marsam 2014-09-05T22:01:01Z stacksmith joined #lisp 2014-09-05T22:01:30Z francogrex quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-05T22:04:38Z ggole quit 2014-09-05T22:05:27Z askatasuna quit (Quit: WeeChat 1.0) 2014-09-05T22:09:29Z ASau joined #lisp 2014-09-05T22:13:32Z Mon_Ouie quit (Ping timeout: 245 seconds) 2014-09-05T22:15:26Z marsam is now known as marsbot 2014-09-05T22:16:41Z slyrus_ joined #lisp 2014-09-05T22:17:49Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-05T22:18:23Z dmiles_afk joined #lisp 2014-09-05T22:19:41Z slyrus quit (Ping timeout: 268 seconds) 2014-09-05T22:19:47Z slyrus_ is now known as slyrus 2014-09-05T22:21:33Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-05T22:21:51Z wizzo joined #lisp 2014-09-05T22:23:09Z drmeister quit (Remote host closed the connection) 2014-09-05T22:23:43Z drmeister joined #lisp 2014-09-05T22:25:23Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-05T22:27:00Z hiyosi joined #lisp 2014-09-05T22:28:08Z drmeiste_ joined #lisp 2014-09-05T22:31:42Z hiyosi quit (Ping timeout: 252 seconds) 2014-09-05T22:35:30Z cmack` joined #lisp 2014-09-05T22:37:29Z cmack quit (Ping timeout: 276 seconds) 2014-09-05T22:41:28Z vowyer joined #lisp 2014-09-05T22:41:42Z ASau quit (Ping timeout: 255 seconds) 2014-09-05T22:41:59Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-05T22:41:59Z stack` quit (Ping timeout: 272 seconds) 2014-09-05T22:42:18Z vowyer quit (Client Quit) 2014-09-05T22:42:44Z vowyer joined #lisp 2014-09-05T22:43:24Z Sgeo joined #lisp 2014-09-05T22:43:37Z vowyer: How performant is method dispatch vs typecase or case? 2014-09-05T22:44:28Z Bicyclidine: method dispatch is slower than typecase. 2014-09-05T22:44:43Z Bicyclidine: but don't optimize prematurely. 2014-09-05T22:45:52Z pnpuff quit (Quit: Lost terminal) 2014-09-05T22:47:21Z PuercoPop: has anyone tried out sly? the repl is marked read-only 2014-09-05T22:48:11Z AeroNotix: PuercoPop: I was just looking at sly 2014-09-05T22:48:17Z AeroNotix: I couldn't figure out why I should care 2014-09-05T22:49:43Z PuercoPop: AeroNotix: well there i now a screencast 2014-09-05T22:49:59Z PuercoPop: it seems to have C-r search a-la shell 2014-09-05T22:50:04Z PuercoPop: *bash 2014-09-05T22:50:17Z slyrus quit (Ping timeout: 245 seconds) 2014-09-05T22:50:24Z pillton quit (Remote host closed the connection) 2014-09-05T22:50:30Z CrazyEddy joined #lisp 2014-09-05T22:50:39Z PuercoPop: + I like the changes he has made to the stefil fork (now renamed fiasco) so I figure I should give it a shot 2014-09-05T22:50:47Z AeroNotix: PuercoPop: you can already do that 2014-09-05T22:50:48Z AeroNotix: in SLIME 2014-09-05T22:50:55Z AeroNotix: type the first part of your command and then C-p 2014-09-05T22:52:52Z AeroNotix: sb-concurrency:mailbox! Interesting 2014-09-05T22:53:35Z PuercoPop: I found about that a couple of days ago, that doesn't do fuzzy search afaiu. That was the most important thing for me. The trace dialog seemed nice (in slime I can never get it work and the multiple repls is not a feature I need.) 2014-09-05T22:54:13Z PuercoPop: but If I can't type in to the repl, I guess I'll stick to slime until sly is in beta at least 2014-09-05T22:54:25Z AeroNotix: PuercoPop: do a buffer search then? 2014-09-05T22:56:05Z Bicyclidine quit (Ping timeout: 260 seconds) 2014-09-05T22:58:14Z sz0 joined #lisp 2014-09-05T22:58:30Z blahzik quit (Quit: blahzik) 2014-09-05T22:58:37Z p4nd4m4n quit (Ping timeout: 245 seconds) 2014-09-05T22:59:41Z AeroNotix: also, why does this need to fork the entirety of SLIME? 2014-09-05T23:02:46Z marsbot is now known as marsam 2014-09-05T23:03:08Z vowyer quit (Remote host closed the connection) 2014-09-05T23:03:18Z PuercoPop: you mean why he didn't only fork the emacs-lisp part? 2014-09-05T23:03:19Z ustunozgur joined #lisp 2014-09-05T23:04:46Z phadthai: probably as the protocol can change among versions 2014-09-05T23:04:57Z ehu quit (Ping timeout: 260 seconds) 2014-09-05T23:05:01Z Fare: vowyer: on SICL, method dispatch and typecase should be about the same performanc 2014-09-05T23:06:15Z Bicyclidine joined #lisp 2014-09-05T23:07:22Z marsam is now known as marsbot 2014-09-05T23:08:38Z malice quit (Remote host closed the connection) 2014-09-05T23:11:11Z pillton joined #lisp 2014-09-05T23:12:47Z johs quit (Ping timeout: 245 seconds) 2014-09-05T23:12:54Z johs joined #lisp 2014-09-05T23:13:26Z EvW quit (Quit: EvW) 2014-09-05T23:14:32Z blahzik joined #lisp 2014-09-05T23:15:11Z slyrus joined #lisp 2014-09-05T23:19:29Z zwer_ joined #lisp 2014-09-05T23:20:22Z heddwch quit (Ping timeout: 240 seconds) 2014-09-05T23:22:34Z zeitue joined #lisp 2014-09-05T23:22:35Z Davidbrcz quit (Ping timeout: 268 seconds) 2014-09-05T23:22:46Z heddwch joined #lisp 2014-09-05T23:27:44Z hiyosi joined #lisp 2014-09-05T23:29:03Z kobain quit (Read error: Connection reset by peer) 2014-09-05T23:31:56Z kobain joined #lisp 2014-09-05T23:32:30Z blahzik left #lisp 2014-09-05T23:32:54Z hiyosi quit (Ping timeout: 272 seconds) 2014-09-05T23:33:10Z blahzik joined #lisp 2014-09-05T23:33:26Z blahzik quit (Quit: blahzik) 2014-09-05T23:34:49Z nell joined #lisp 2014-09-05T23:35:18Z ejbs`: What? That's insanely fast 2014-09-05T23:35:36Z slyrus_ joined #lisp 2014-09-05T23:35:38Z nell quit (Client Quit) 2014-09-05T23:35:57Z Shinmera: Or insanely slow :^) 2014-09-05T23:37:35Z jasom: In theory it would be possible to make them the same speed even on sbcl just by recompiling all functions that contain a method dispatch to an open-coded typecase everytime a new defmethod happens 2014-09-05T23:38:17Z slyrus__ joined #lisp 2014-09-05T23:38:37Z slyrus quit (Ping timeout: 268 seconds) 2014-09-05T23:39:38Z Shinmera quit (Quit: ZzzZ) 2014-09-05T23:41:39Z slyrus_ quit (Ping timeout: 246 seconds) 2014-09-05T23:42:49Z drmeiste_ quit (Remote host closed the connection) 2014-09-05T23:43:06Z Fare: jasom: that's what SICL does 2014-09-05T23:43:07Z stepnem quit (Ping timeout: 245 seconds) 2014-09-05T23:43:36Z slyrus joined #lisp 2014-09-05T23:43:55Z zygentoma quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-05T23:45:16Z jasom: Fare: wow, someone actually implemented that? It was my first thought when I saw how slow method dipatch was, but then I thought "That's probably way to much work to get right" 2014-09-05T23:45:28Z Fare: it compiles type dispatch into binary search through type tags. 2014-09-05T23:45:58Z jasom: Fare: how does it deal with functions that call generics before all of the defmethods have been seen? 2014-09-05T23:46:35Z Fare: and invalidates those dispatch routines when a class or function is redefined 2014-09-05T23:46:46Z jasom: I supose it could always force a function-call to the dispatch function, and then replace the dispatch function in-place, but that would add an extra level of indirection. 2014-09-05T23:46:47Z Bicyclidine: i don't think it inserts the dispatch inline 2014-09-05T23:46:49Z Fare: jasom: bootstrap 2014-09-05T23:47:14Z slyrus__ quit (Ping timeout: 252 seconds) 2014-09-05T23:48:53Z Fare: jasom: the cross-compiler initially builds tables for all the system functions and classes. As long as dispatch routine for those essential functions are updated in an atomic-enough way, you're safe. 2014-09-05T23:49:19Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-05T23:49:53Z jlongster quit (Ping timeout: 240 seconds) 2014-09-05T23:50:29Z drmeister quit (Remote host closed the connection) 2014-09-05T23:50:33Z slyrus_ joined #lisp 2014-09-05T23:50:39Z nydel joined #lisp 2014-09-05T23:50:43Z drmeister joined #lisp 2014-09-05T23:52:05Z alexey joined #lisp 2014-09-05T23:53:12Z slyrus quit (Ping timeout: 245 seconds) 2014-09-05T23:53:13Z slyrus_ is now known as slyrus 2014-09-05T23:53:44Z Fare: jasom: or just jump 2014-09-05T23:53:52Z Fare: no need to call 2014-09-05T23:55:16Z heddwch quit (Ping timeout: 268 seconds) 2014-09-05T23:55:49Z heddwch joined #lisp 2014-09-05T23:56:11Z Fare: defmethod and defclass are probably rare enough events that they justify an i-cache invalidation — although on some architectures that can be really bad unless you can group code regenerations together, or invalidate in a fine grain 2014-09-05T23:56:27Z alexey quit (Ping timeout: 245 seconds) 2014-09-05T23:56:47Z rwiker_ joined #lisp 2014-09-05T23:58:02Z vlnx quit (Read error: Connection reset by peer) 2014-09-05T23:58:42Z jasom: with LOAD you could at least defer until the end of the file (or maybe also the next eval-when) 2014-09-05T23:59:21Z vlnx joined #lisp 2014-09-06T00:00:10Z rwiker_ quit (Client Quit) 2014-09-06T00:00:12Z heddwch quit (Ping timeout: 246 seconds) 2014-09-06T00:00:40Z jchochli quit (Read error: Connection reset by peer) 2014-09-06T00:03:50Z heddwch joined #lisp 2014-09-06T00:04:28Z slyrus quit (Ping timeout: 252 seconds) 2014-09-06T00:04:28Z Bicyclidine quit (Ping timeout: 252 seconds) 2014-09-06T00:07:12Z ejbs`: SICL could have a huge impact on the feasibility of the CL21 project 2014-09-06T00:10:17Z Vivitron quit (Read error: Connection reset by peer) 2014-09-06T00:10:21Z Vivitron` joined #lisp 2014-09-06T00:10:41Z p4nd4m4n joined #lisp 2014-09-06T00:11:02Z jchochli joined #lisp 2014-09-06T00:15:17Z p4nd4m4n quit (Ping timeout: 255 seconds) 2014-09-06T00:17:53Z jchochli quit 2014-09-06T00:18:32Z keen________ quit (Read error: Connection reset by peer) 2014-09-06T00:18:53Z Rotacidni quit (Ping timeout: 276 seconds) 2014-09-06T00:19:11Z jchochli joined #lisp 2014-09-06T00:19:37Z keen________ joined #lisp 2014-09-06T00:20:43Z p4nd4m4n joined #lisp 2014-09-06T00:23:27Z wilfredh quit (Quit: Connection closed for inactivity) 2014-09-06T00:26:15Z yrk quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-06T00:28:26Z Jesin quit (Quit: Leaving) 2014-09-06T00:28:34Z hiyosi joined #lisp 2014-09-06T00:28:51Z tkhoa2711 joined #lisp 2014-09-06T00:28:54Z Jesin joined #lisp 2014-09-06T00:29:02Z jleija joined #lisp 2014-09-06T00:29:05Z ubii quit (Quit: Leaving) 2014-09-06T00:31:23Z kyfho joined #lisp 2014-09-06T00:31:29Z kobain quit (Read error: Connection timed out) 2014-09-06T00:31:47Z kobain joined #lisp 2014-09-06T00:32:30Z optikalmouser joined #lisp 2014-09-06T00:32:32Z kobain quit (Max SendQ exceeded) 2014-09-06T00:32:49Z kobain joined #lisp 2014-09-06T00:33:18Z hiyosi quit (Ping timeout: 255 seconds) 2014-09-06T00:36:20Z Jesin quit (Quit: Leaving) 2014-09-06T00:36:47Z Jesin joined #lisp 2014-09-06T00:37:54Z fortitude quit (Quit: leaving) 2014-09-06T00:38:00Z tkhoa2711 quit (Quit: tkhoa2711) 2014-09-06T00:42:50Z hiyosi joined #lisp 2014-09-06T00:43:16Z ustunozgur quit (Remote host closed the connection) 2014-09-06T00:47:04Z defaultxr joined #lisp 2014-09-06T00:50:32Z drmeister quit (Remote host closed the connection) 2014-09-06T00:51:15Z drmeister joined #lisp 2014-09-06T00:52:06Z innertracks quit (Quit: innertracks) 2014-09-06T00:53:48Z cite-reader quit (Quit: leaving) 2014-09-06T00:59:11Z drmeiste_ joined #lisp 2014-09-06T00:59:45Z banjara quit (Quit: Leaving.) 2014-09-06T01:06:48Z leo2007 joined #lisp 2014-09-06T01:13:09Z stanislav_ joined #lisp 2014-09-06T01:16:14Z stanislav quit (Ping timeout: 260 seconds) 2014-09-06T01:17:30Z normanrichards joined #lisp 2014-09-06T01:22:41Z innertracks joined #lisp 2014-09-06T01:23:51Z heddwch quit (Ping timeout: 246 seconds) 2014-09-06T01:27:02Z jchochli left #lisp 2014-09-06T01:27:31Z Karl_Dscc joined #lisp 2014-09-06T01:28:28Z heddwch joined #lisp 2014-09-06T01:29:36Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T01:31:18Z strg_ joined #lisp 2014-09-06T01:34:23Z Rotacidni joined #lisp 2014-09-06T01:35:46Z strg quit (Ping timeout: 272 seconds) 2014-09-06T01:38:17Z strg joined #lisp 2014-09-06T01:39:14Z sz0 quit 2014-09-06T01:40:01Z vinleod quit (Quit: Computer has gone to sleep.) 2014-09-06T01:40:16Z Karl_Dscc quit (Remote host closed the connection) 2014-09-06T01:42:05Z strg_ quit (Ping timeout: 276 seconds) 2014-09-06T01:47:56Z Rotacidni quit (Ping timeout: 276 seconds) 2014-09-06T01:48:15Z drmeister quit (Remote host closed the connection) 2014-09-06T01:48:27Z drmeister joined #lisp 2014-09-06T01:48:52Z jusss joined #lisp 2014-09-06T01:52:47Z innertracks1 joined #lisp 2014-09-06T01:53:01Z alexey joined #lisp 2014-09-06T01:53:04Z drmeiste_ joined #lisp 2014-09-06T01:53:57Z innertracks quit (Ping timeout: 246 seconds) 2014-09-06T01:56:11Z ejbs`` joined #lisp 2014-09-06T01:57:24Z alexey quit (Ping timeout: 252 seconds) 2014-09-06T01:57:42Z ejbs` quit (Ping timeout: 245 seconds) 2014-09-06T02:03:00Z ejbs`` quit (Remote host closed the connection) 2014-09-06T02:03:56Z jlongster joined #lisp 2014-09-06T02:05:52Z nipra joined #lisp 2014-09-06T02:11:20Z Vivitron` quit (Ping timeout: 276 seconds) 2014-09-06T02:18:12Z zRecursive joined #lisp 2014-09-06T02:18:27Z jusss quit (Read error: Connection reset by peer) 2014-09-06T02:18:49Z innertracks1 quit (Ping timeout: 272 seconds) 2014-09-06T02:22:09Z dnm quit (Ping timeout: 264 seconds) 2014-09-06T02:23:38Z chew joined #lisp 2014-09-06T02:25:28Z chew quit (Client Quit) 2014-09-06T02:26:02Z jlongster quit (Ping timeout: 245 seconds) 2014-09-06T02:26:33Z chew joined #lisp 2014-09-06T02:27:21Z innertracks joined #lisp 2014-09-06T02:27:43Z chew quit (Client Quit) 2014-09-06T02:29:21Z jlongster joined #lisp 2014-09-06T02:30:21Z Svetlana quit (Remote host closed the connection) 2014-09-06T02:34:43Z Svetlana__ joined #lisp 2014-09-06T02:36:18Z Svetlana__ quit (Remote host closed the connection) 2014-09-06T02:48:14Z drmeister quit (Remote host closed the connection) 2014-09-06T02:48:54Z drmeister joined #lisp 2014-09-06T02:51:46Z Svetlana__ joined #lisp 2014-09-06T02:52:35Z p4nd4m4n quit (Remote host closed the connection) 2014-09-06T02:52:52Z rtoym joined #lisp 2014-09-06T02:54:01Z strg quit (Quit: Linkinus - http://linkinus.com) 2014-09-06T02:54:43Z jusss joined #lisp 2014-09-06T02:54:58Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T02:59:43Z Uber-Ich joined #lisp 2014-09-06T03:01:05Z Svetlana__ quit (Remote host closed the connection) 2014-09-06T03:02:29Z jlongster quit (Ping timeout: 260 seconds) 2014-09-06T03:06:06Z beach joined #lisp 2014-09-06T03:06:16Z beach: Good morning everyone! 2014-09-06T03:06:16Z minion: beach, memo from drmeiste_: The SICL code is a pleasure to read. If I read it correctly the SICL COMPILE-FILE currently generates AST's and doesn't do anything further with them like generate MIR. Is that correct? 2014-09-06T03:06:20Z joneshf-laptop quit (Ping timeout: 272 seconds) 2014-09-06T03:08:23Z beach: drmeister: Yes, I think that's true. Like I said, I am in the process of factoring stuff out from SICL to Cleavir. 2014-09-06T03:09:04Z beach: drmeister: Translating AST to MIR works though. You just have to figure out the right function to call. 2014-09-06T03:09:31Z Fare: beach: what's the status of SICL and Cleavir? 2014-09-06T03:09:59Z beach: Fare: A few years of additional work to do. :) 2014-09-06T03:10:13Z Fare: you checked in a fasl file: Lisp-Unit/lisp-unit.fasl 2014-09-06T03:10:24Z Fare: is that on purpose? 2014-09-06T03:10:24Z beach: Me? Crap! 2014-09-06T03:10:27Z beach: No 2014-09-06T03:10:40Z Fare: ok 2014-09-06T03:10:42Z beach: I'll remove it some day. 2014-09-06T03:11:19Z beach: I find it is not worth the trouble to have a unit-test framework. 2014-09-06T03:12:16Z Fare: I believe a good semi-standard framework would be nice 2014-09-06T03:12:33Z Fare: instead of reinventing the wheel 2014-09-06T03:12:45Z beach: It would have to support my favorite testing method: random tests against a trivial implementation. 2014-09-06T03:13:18Z beach: Fare: There is a lot of code in SICL, but since I am constantly working on it, and I am not pushing for anyone to use it yet, it is not organized so that it can be used out of the box. 2014-09-06T03:13:31Z Fare: for ASDF, I had to evolve the previous homegrown test system, under the assumption that you couldn't use asdf to load a library when testing asdf. These days I'd question this assumption. 2014-09-06T03:13:45Z innertracks quit (Ping timeout: 264 seconds) 2014-09-06T03:16:07Z kyfho is now known as shemale-magic 2014-09-06T03:17:06Z harish quit (Ping timeout: 255 seconds) 2014-09-06T03:17:10Z _8hzp` joined #lisp 2014-09-06T03:19:59Z jusss quit (Read error: Connection reset by peer) 2014-09-06T03:20:20Z jusss joined #lisp 2014-09-06T03:20:51Z protist joined #lisp 2014-09-06T03:21:14Z _8hzp quit (Ping timeout: 268 seconds) 2014-09-06T03:21:16Z protist: how is with-gensyms supposed to be used in CLISP? 2014-09-06T03:21:18Z protist: if I do (with-gensyms (a b) (list a b)) it doesn't return a list of gensyms 2014-09-06T03:21:56Z protist: whereas a macro I found online gives the expected behavior 2014-09-06T03:22:19Z Fare: then use the online macro from e.g. alexandria or uiop 2014-09-06T03:22:42Z protist: I still want to know what with-gensyms is doing in CLISP 2014-09-06T03:22:52Z protist: I know what I expect, and I can make it 2014-09-06T03:23:47Z Fare: go read the source or grep for examples 2014-09-06T03:23:49Z jlongster joined #lisp 2014-09-06T03:24:14Z zRecursive: protist: Is CLISP still alive ? 2014-09-06T03:24:15Z Fare: why care about a non-portable thing that doesn't work as expected, when there are portable alternatives? 2014-09-06T03:24:29Z Fare: CLISP has been very lightly maintained this year 2014-09-06T03:26:21Z jusss quit (Ping timeout: 264 seconds) 2014-09-06T03:26:28Z zRecursive: IIRC, CLISP has been discarded ... 2014-09-06T03:26:55Z beach: zRecursive: pjb is still using it. 2014-09-06T03:27:23Z CrazyEddy quit (Ping timeout: 276 seconds) 2014-09-06T03:28:15Z zRecursive: I ever used CLISP to build a smallest STUMPWM years ago 2014-09-06T03:30:18Z Uber-Ich quit (Quit: leaving) 2014-09-06T03:30:41Z CrazyEddy joined #lisp 2014-09-06T03:37:41Z beach: I added conditions to chapter 2 of http://metamodular.com/cleavir.pdf in case someone is interested. 2014-09-06T03:38:34Z joneshf-laptop joined #lisp 2014-09-06T03:39:20Z nand1 quit (Remote host closed the connection) 2014-09-06T03:42:45Z Fare: where is cleavir.git? 2014-09-06T03:42:50Z shemale-magic quit (Quit: leaving) 2014-09-06T03:43:16Z beach: Right now it's a subdirectory of SICL. 2014-09-06T03:43:49Z beach: https://github.com/robert-strandh/SICL 2014-09-06T03:44:33Z beach: There is not yet any code corresponding to chapter 2 of that PDF. 2014-09-06T03:44:41Z Fare: common-lisp.net is dead? 2014-09-06T03:45:15Z beach: "dead"? 2014-09-06T03:45:20Z beach: It is accessible. 2014-09-06T03:45:46Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-06T03:45:56Z Fare: I mean, your git repo at git://common-lisp.net/projects/sicl/SICL.git 2014-09-06T03:46:27Z beach: Oh. Right. I quit using that when cl.net had problems a few years back. 2014-09-06T03:46:34Z Fare: ok 2014-09-06T03:48:19Z drmeister quit (Remote host closed the connection) 2014-09-06T03:48:33Z drmeister joined #lisp 2014-09-06T03:48:49Z Fare is looking for a pair programmer for his compiler written in clojure of a pure python dialect into clojure 2014-09-06T03:49:36Z marsbot is now known as marsam 2014-09-06T03:50:52Z zRecursive quit (Remote host closed the connection) 2014-09-06T03:53:33Z pjb: AeroNotix: You use uptime of course: cl-user> (uptime) 2014-09-06T03:53:33Z pjb: uptime: 9 days, 10 hours, 9 minutes, 11 seconds. 2014-09-06T03:53:33Z pjb: 2014-09-06T03:53:55Z pjb: com.informatimago.common-lisp.interactive.interactive:uptime that is. 2014-09-06T03:53:56Z alexey joined #lisp 2014-09-06T03:58:24Z alexey quit (Ping timeout: 252 seconds) 2014-09-06T03:58:42Z marsam is now known as marsbot 2014-09-06T04:01:36Z hugod is now known as hugod|away 2014-09-06T04:02:15Z beach: AeroNotix: IIRC, the C standard doesn't mention how to create executables either. 2014-09-06T04:13:31Z drmeiste_ joined #lisp 2014-09-06T04:13:36Z resttime quit (Ping timeout: 246 seconds) 2014-09-06T04:14:06Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T04:16:57Z innertracks joined #lisp 2014-09-06T04:17:29Z innertracks quit (Client Quit) 2014-09-06T04:19:45Z snits quit (Quit: leaving) 2014-09-06T04:19:49Z pjb: And you don't write a main function… when you're writing a device driver or a file system module or some other kind of programs. 2014-09-06T04:21:46Z beach: Yeah, executables are 20th century technology. I am glad they didn't standardize them. 2014-09-06T04:25:30Z mac__ joined #lisp 2014-09-06T04:25:40Z mac__ left #lisp 2014-09-06T04:29:14Z Fare wonders why he sees people replying to AeroNotix but no message to reply to, and nothing in my ignore list. 2014-09-06T04:29:53Z beach: Fare: We are reading the logs. 2014-09-06T04:30:32Z Fare: well, asdf / cl-launch now provide a semi-standard way of creating executables from CL code 2014-09-06T04:30:44Z Fare: #!/usr/bin/cl 2014-09-06T04:30:58Z harish joined #lisp 2014-09-06T04:30:59Z Fare: or cl-launch -o program -d ! ... 2014-09-06T04:31:02Z beach: Yesterday, I discovered a concept that was new to me "Region-based compilation". It seems to have been invented around 1995. 2014-09-06T04:31:19Z Fare: for static memory management? 2014-09-06T04:31:36Z beach: No. These are regions of the machine code. 2014-09-06T04:31:41Z beach: Or of the MIR code. 2014-09-06T04:32:13Z drmeiste_ joined #lisp 2014-09-06T04:32:37Z beach: The idea is that functions are so big (because of the desire to inline in order to optimize more) that many optimization techniques would be too slow. 2014-09-06T04:32:58Z beach: So instead, optimization is applied per-region, such as loops. 2014-09-06T04:33:10Z beach: It sounds very right to me. 2014-09-06T04:33:12Z cy quit (Ping timeout: 246 seconds) 2014-09-06T04:33:57Z beach: I mean, imagine a function with a single loop in it. Optimizing that loop is likely to have much more impact than optimizing the rest of the function. 2014-09-06T04:34:39Z beach: So if one can identify what parts of the program are likely to be executed and what parts are less likely, then it makes sense to me to concentrate on the likely ones. 2014-09-06T04:35:37Z beach: Register allocation is one technique that would benefit a lot from being used per region. 2014-09-06T04:36:31Z Fare: ok 2014-09-06T04:36:57Z jasom: beach: you could always just cheat and have automatic profile-driven optimizations 2014-09-06T04:37:02Z Fare: I'm writing a trivial compiler for a pure python dialect to clojure, right now 2014-09-06T04:37:14Z Fare: and it's plenty of passes 2014-09-06T04:37:21Z beach: jasom: Yes, that is very true. 2014-09-06T04:37:22Z Fare: I try to keep every pass linear 2014-09-06T04:37:29Z nell joined #lisp 2014-09-06T04:37:35Z radioninja joined #lisp 2014-09-06T04:38:18Z jasom: Fare: you lose out on a lot of interesting optimizations that way 2014-09-06T04:38:27Z jasom: even SSA is superlinear 2014-09-06T04:38:28Z beach: Fare: So you don't use global value numbering, and other optimization techniques then? 2014-09-06T04:39:32Z harish quit (Ping timeout: 276 seconds) 2014-09-06T04:40:53Z beach: jasom: Earlier you asked about generic dispatch. Here is the paper I presented at ILC: http://metamodular.com/generic-dispatch.pdf 2014-09-06T04:41:04Z gingerale joined #lisp 2014-09-06T04:43:26Z drmeiste_: beach: I fixed a serious bug in my Common Lisp implementation this morning that could have wrecked all of my plans. 2014-09-06T04:43:50Z drmeiste_: In ECL Common Lisp FIXNUMs are immediate tagged pointer values. 2014-09-06T04:44:02Z beach: drmeiste_: Yes, I read that in the logs. 2014-09-06T04:44:24Z beach: How did you fix it? 2014-09-06T04:44:53Z drmeiste_: I was working on getting pretty printing to work - I got tired of ugly s-expressions. 2014-09-06T04:45:17Z drmeiste_: For some reason GRAY:STREAMP was returning nil for an argument that was absolutely a stream. 2014-09-06T04:45:29Z Fare: beach: global value numbering? For what? 2014-09-06T04:45:42Z drmeiste_: I tracked it down to SORT-APPLICABLE-METHODS not returning the correct order of methods. 2014-09-06T04:45:51Z jleija quit (Quit: leaving) 2014-09-06T04:46:06Z beach: Fare: It's a standard optimization technique that allows you to remove a number of redundant calculations. 2014-09-06T04:46:37Z Fare: jasom: some phases are actually superlinear. How is SSA superlinear? 2014-09-06T04:46:43Z drmeiste_: Staring at the code for half an hour I realized that the programmer was using EQ to compare a function return value to the fixnum 2. 2014-09-06T04:47:02Z beach: drmeiste_: So did you fix it by using immediate fixnums, or by replacing EQ. 2014-09-06T04:47:07Z beach: s/./?/ 2014-09-06T04:47:08Z drmeiste_: This would work with immediate tagged pointer fixnums but I have boxed fixnums. 2014-09-06T04:47:10Z jlongster quit (Ping timeout: 252 seconds) 2014-09-06T04:47:25Z drmeiste_: I replaced the immediate fixnums returned and compared with symbols. 2014-09-06T04:47:53Z drmeiste_: I plan to implement immediate fixnums, much of the code is in place but I have to do a lot of refactoring. 2014-09-06T04:48:21Z drmeister quit (Remote host closed the connection) 2014-09-06T04:48:46Z Fare: boxed fixnums could be a source of a lot of your slowdown wrt ECL 2014-09-06T04:48:58Z drmeister joined #lisp 2014-09-06T04:48:59Z Fare: boxing means a lot of memory access, and that's slow 2014-09-06T04:49:12Z drmeiste_: Fare: It's part of the problem but the bigger problem is that I use heap based activation frames to store all bindings. 2014-09-06T04:49:58Z Fare: why use the heap at all, if you don't have multi-use continuations? 2014-09-06T04:50:09Z drmeiste_: I'm starting to incorporate beach's SICL compiler. 2014-09-06T04:50:26Z drmeiste_: My compiler is primitive. 2014-09-06T04:50:31Z Fare: ok 2014-09-06T04:50:33Z drmeiste_: It doesn't do escape analysis. 2014-09-06T04:50:34Z beach: drmeiste_: If you do that, how much of ECL will remain in your system? 2014-09-06T04:50:58Z drmeiste_: Everything I'm currently using. 2014-09-06T04:51:05Z drmeiste_: I don't use any of ECL's compiler. 2014-09-06T04:51:13Z Fare: beach: where is SICL at? Can it compile simple fixnum expressions? 2014-09-06T04:51:32Z beach: Fare: Difficult question to answer. Let me try... 2014-09-06T04:51:35Z drmeiste_: I'll still retain my current compiler. 2014-09-06T04:52:09Z beach: Fare: At some point, I could compile top-level forms to X86-64 machine code in the form of a byte vector. 2014-09-06T04:52:12Z drmeiste_: beach: Where would you recommend I start? Should I start with getting the SICL environment to work? 2014-09-06T04:52:18Z jasom: Fare: converting to SSA generates code that is worst case N^2 compared to the non SSA form 2014-09-06T04:52:34Z jasom: Fare: that's why it's not a free lunch that certain dataflow analyses are linear on the SSA form 2014-09-06T04:53:12Z beach: Fare: But then I decided I wanted to factor out Cleavir, an implementation-independent module for compilation. I then probably broke a lot of the passes beyond MIR creation. 2014-09-06T04:53:40Z drmeiste_: My plan was to get COMPILE-FILE working and generate ASTs 2014-09-06T04:54:40Z beach: drmeiste_: If I were you, I would lay low and wait until I get the Cleavir environment and AST generation to work. 2014-09-06T04:54:57Z beach: drmeiste_: Then you should be able to use it pretty much out of the box. 2014-09-06T04:55:55Z beach: drmeiste_: Did you see the spec I have been working on? Chapter 2 of the Cleavir spec. It defines protocols for converting forms to AST. 2014-09-06T04:57:20Z beach: drmeiste_: I think in a week or so, I will have converted the SICL AST generation into Cleavir and made it implementation independent. 2014-09-06T04:59:09Z beach: Fare: Oh, at some point after generating x86-64 machine code, I also decided that I didn't need both a static environment and a "linkage vector" (where constants and other global stuff is kept) because all this information could be part of the static environment. 2014-09-06T04:59:22Z beach: Fare: So I probably broke some more stuff in that process. 2014-09-06T04:59:33Z bgs100 quit (Quit: bgs100) 2014-09-06T05:00:03Z beach: Fare: Eliminating the linkage vector, I save one register and one instruction in the function call protocol. 2014-09-06T05:00:17Z jasom: Fare: FWIW paul khuong theorized that SSA was more likely to hit the quadratic case with Lisp vs. C: http://www.pvk.ca/Blog/Implementation/SSA_in_practices.html 2014-09-06T05:00:29Z drmeiste_: beach: You mean the Chapter 2 on environments? Yes, I read that part. 2014-09-06T05:01:14Z beach: drmeiste_: That chapter tells you what methods you need to define in order to benefit from Cleavir's conversion from forms to ASTs. 2014-09-06T05:01:26Z beach: jasom: Very intersting! 2014-09-06T05:01:30Z beach: *interesting. 2014-09-06T05:01:52Z radioninja quit (Ping timeout: 240 seconds) 2014-09-06T05:02:17Z Fare: I seem to be using a semi-pruned ssa form 2014-09-06T05:04:26Z Fare: well, it's not exactly SSA, since I'm not using ϕ-functions, but passing around vectors of bindings 2014-09-06T05:06:50Z drmeiste_: I just read that pkhuong article. It's curious that there are Common Lisp -> C compilers (ECL) and C compilers -> SSA (Clang) but Common Lisp -> SSA suffers from space complexity problems. 2014-09-06T05:08:28Z drmeiste_: beach: Specifically are you referring to chapter 2 "Environment" of http://metamodular.com/cleavir.pdf ? 2014-09-06T05:08:33Z Fare: so yes, some of my passes are actually quadratic due to this accumulation of variables 2014-09-06T05:08:39Z beach: drmeiste_: Yes. 2014-09-06T05:08:49Z ruste joined #lisp 2014-09-06T05:08:56Z jasom: drmeiste_: compile a large module with ecl 2014-09-06T05:09:14Z jasom: drmeiste_: I did so and the GCC pass took hours and consumed gigabytes of ram 2014-09-06T05:09:29Z beach: Wow! 2014-09-06T05:09:31Z drmeiste_: jasom: Hmmm. 2014-09-06T05:09:44Z jasom: drmeiste_: this was an obscenely large module though 2014-09-06T05:09:46Z drmeiste_: beach: Does MIR have any concept of basic blocks? 2014-09-06T05:10:31Z beach: drmeiste_: Yes, I did write some code for basic blocks. I have been thinking I could get away with not using them (and just have one instruction per basic block) but that may not be the case. 2014-09-06T05:11:49Z beach: drmeiste_: See SICL/Code/Compiler/program.lisp 2014-09-06T05:12:15Z banjara joined #lisp 2014-09-06T05:12:20Z drmeiste_: I was thinking that I would have to divine where basic block boundaries would need to be. You can't jump into or out of basic blocks. You can only branch at the end of a basic block and you can only jump in to the top of a basic block. You probably are aware of this. 2014-09-06T05:12:51Z beach: drmeiste_: Actually, let me modify that. MIR itself doesn't specify basic blocks. They are computed from any MIR program by grouping instructions. 2014-09-06T05:13:33Z beach: drmeiste_: Yes, I know the definition of "basic block". 2014-09-06T05:14:04Z drmeiste_: Right - that's what I thought. Grouping doesn't sound like it should be difficult. 2014-09-06T05:14:31Z beach: No it isn't. The code is in that file. 2014-09-06T05:15:01Z beach: jasom: I am more and more convinced that region-based compilation might be the right thing to do for Common Lisp. 2014-09-06T05:15:41Z banjara1 joined #lisp 2014-09-06T05:16:01Z banjara quit (Read error: Connection reset by peer) 2014-09-06T05:19:13Z beach: http://impact.crhc.illinois.edu/shared/report/phd-thesis-rick-hank.pdf 2014-09-06T05:19:38Z beach: Hank's dissertation on region-based compilation ^. 2014-09-06T05:21:45Z pjb: On the other hand, there's a call for global analysis, and I've got 24 GB of RAM and 8 processors… 2014-09-06T05:23:43Z beach: What method is used could be selected by SPEED and COMPILATION-SPEED optimization qualities. 2014-09-06T05:23:44Z rme quit (Quit: rme) 2014-09-06T05:23:44Z rme quit (Quit: rme) 2014-09-06T05:25:30Z beach: pjb: I have been looking into techniques for register allocation. It is interesting that the techniques I have seen come up with a "global" solution (i.e., a variable is either permanently assigned to a register or permanently assigned to a stack location for the entire function). 2014-09-06T05:25:51Z beach: pjb: Region-based register allocation could yield a much better solution. 2014-09-06T05:26:49Z test1600 joined #lisp 2014-09-06T05:27:33Z beach: pjb: Take my example of a function with a loop. What happens upon loop entry and loop exit is likely to be much less important than what happens inside the loop. A good register allocator would consider the loop first, and the remaining code only after the loop has been fully optimized. 2014-09-06T05:29:19Z beach: Also, superlinear algorithms can easily consume even relatively abundant resources. 2014-09-06T05:31:39Z drmeiste_ despairs that SSA generated from Common Lisp won't run on his Furby(tm) 2014-09-06T05:31:53Z pjb: It could be worthwhile to be able to determine if the loop will probably be run a lot of times, or just a couple of times. We often write loops that exist only to avoid copy-pasting a couple of similar expressions (eg. processing 2D or 3D vectors). 2014-09-06T05:32:22Z beach: Yes, that would be very important. 2014-09-06T05:32:32Z pjb: Then inlining the loop would give better results, and not losing time setting up for a fast loop that won't run long, would be good. 2014-09-06T05:33:05Z beach: I fully agree. 2014-09-06T05:33:28Z pjb: But otherwise, I agree that register allocation should be done region by region, it seems obvious. 2014-09-06T05:34:04Z beach: Apparently not so obvious, given that the first few decades of algorithms didn't consider it. 2014-09-06T05:36:31Z pjb: That's SSP optimization :-) 2014-09-06T05:36:43Z beach: SSP? 2014-09-06T05:36:53Z pjb: Sufficiently Smart Programmer. 2014-09-06T05:37:01Z beach: Right :) 2014-09-06T05:37:59Z drmeiste_: beach: When you define "variable-info environment symbol" as a generic function. Which arguments does it specialize on? 2014-09-06T05:38:05Z drmeiste_: Cleavir 2.3.1 2014-09-06T05:39:01Z drmeiste_: Is it "environment"? If so, do I write methods to dispatch on my implementations environments? 2014-09-06T05:39:34Z beach: drmeiste_: Client code will have to write a method that specializes on exactly the class of the environment object that client code passes as an argument to the function that translates from forms to ASTs. 2014-09-06T05:40:15Z beach: drmeiste_: Yes, and if your implementation doesn't have first-class global environments, you will have to invent some kind of object to pass. 2014-09-06T05:41:25Z drmeiste_: I have a class sys:environment for lexical environments. I thought the global environment was always NIL. 2014-09-06T05:41:40Z drmeiste_: Or NIL is the top-level environment. 2014-09-06T05:42:10Z beach: drmeiste_: Then you shall have to invent some bogus environment class to dispatch on. 2014-09-06T05:42:23Z beach: For instance, it is typical for an implementation to store a function definition in a slot in the symbol and not in an environment. 2014-09-06T05:42:45Z drmeiste_: I store function definitions in a slot in the symbol. 2014-09-06T05:42:55Z beach: There you go. 2014-09-06T05:43:00Z vydd quit (Remote host closed the connection) 2014-09-06T05:43:13Z drmeiste_: So that requires a bogus environment class? 2014-09-06T05:43:22Z beach: So your method on function-info, when given your bogus class, will look in the symbol. 2014-09-06T05:43:38Z drmeiste_: Got it. 2014-09-06T05:44:03Z beach: ... whereas the method defined by SICL will look in the environment object. 2014-09-06T05:44:10Z drmeiste_: What about the lexical part of the environment - do you need to access my implementations lexical environments? 2014-09-06T05:44:26Z drmeister quit (Remote host closed the connection) 2014-09-06T05:44:42Z drmeister joined #lisp 2014-09-06T05:44:45Z beach: drmeiste_: No, but you will need to implement the augmentation methods. 2014-09-06T05:45:00Z beach: They will create instances of your lexical environments. 2014-09-06T05:45:05Z drmeiste_: Got it. 2014-09-06T05:45:11Z beach: Then the -info functions will access those. 2014-09-06T05:47:11Z drmeiste_: I don't currently store variable-type, function-type, variable-ignore, optimize or inline info in my lexical environments. They are primarily designed for my interpreter. 2014-09-06T05:47:22Z mrSpec joined #lisp 2014-09-06T05:48:45Z beach: You can ignore all those if you want. 2014-09-06T05:49:23Z beach: It is always allowed for an implementation to ignore type declarations, and it is always allowed not to inline. 2014-09-06T05:49:45Z beach: But your resulting code won't be very fast if you do that. 2014-09-06T05:51:55Z drmeiste_: I'll add it. 2014-09-06T05:52:29Z MrWoohoo joined #lisp 2014-09-06T05:53:15Z drmeiste_: Will this environment interface change in the next couple of weeks or do you think you've nailed it down? 2014-09-06T05:53:54Z beach: Until I have tested that it works by implementing it, it won't be fully nailed down. But I suspect it won't change very much. 2014-09-06T05:54:32Z beach: I am not smart enough to write a foolproof specification without also testing it by implementing it. 2014-09-06T05:54:33Z edgar-rft joined #lisp 2014-09-06T05:54:46Z alexey joined #lisp 2014-09-06T05:59:21Z alexey quit (Ping timeout: 260 seconds) 2014-09-06T05:59:22Z rainbyte quit (Ping timeout: 245 seconds) 2014-09-06T06:01:52Z drmeiste_: No problem. It's about as complicated as it needs to be. 2014-09-06T06:08:33Z slyrus joined #lisp 2014-09-06T06:13:33Z mr-foobar joined #lisp 2014-09-06T06:19:32Z hitecnologys joined #lisp 2014-09-06T06:26:52Z Jesin quit (Quit: Leaving) 2014-09-06T06:33:59Z korqio- joined #lisp 2014-09-06T06:35:57Z BitPuffin quit (Ping timeout: 264 seconds) 2014-09-06T06:37:59Z ehu joined #lisp 2014-09-06T06:42:46Z innertracks joined #lisp 2014-09-06T06:43:17Z Shinmera joined #lisp 2014-09-06T06:43:51Z vydd joined #lisp 2014-09-06T06:44:29Z drmeister quit (Remote host closed the connection) 2014-09-06T06:44:56Z Mon_Ouie joined #lisp 2014-09-06T06:45:06Z drmeister joined #lisp 2014-09-06T06:46:46Z ehu_ joined #lisp 2014-09-06T06:48:21Z vydd quit (Ping timeout: 260 seconds) 2014-09-06T06:48:32Z ehu quit (Ping timeout: 252 seconds) 2014-09-06T06:56:31Z innertracks quit (Quit: innertracks) 2014-09-06T06:56:34Z vydd joined #lisp 2014-09-06T07:01:05Z ggole joined #lisp 2014-09-06T07:01:12Z vydd quit (Ping timeout: 255 seconds) 2014-09-06T07:01:25Z gravicappa joined #lisp 2014-09-06T07:02:15Z radioninja joined #lisp 2014-09-06T07:12:58Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T07:13:38Z drmeiste_ joined #lisp 2014-09-06T07:16:11Z test1600 quit (Ping timeout: 268 seconds) 2014-09-06T07:18:03Z drmeiste_ quit (Ping timeout: 246 seconds) 2014-09-06T07:22:15Z H4ns: loke: therep? 2014-09-06T07:29:36Z radioninja quit (Ping timeout: 246 seconds) 2014-09-06T07:32:02Z isoraqathedh quit (Quit: No Ping reply in 180 seconds.) 2014-09-06T07:32:05Z alexey joined #lisp 2014-09-06T07:33:01Z isoraqathedh joined #lisp 2014-09-06T07:40:26Z Karl_Dscc joined #lisp 2014-09-06T07:40:50Z drmeister quit (Remote host closed the connection) 2014-09-06T07:41:05Z drmeister joined #lisp 2014-09-06T07:42:49Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-06T07:46:09Z leo2007 quit (Ping timeout: 264 seconds) 2014-09-06T07:47:20Z banjara1 quit (Quit: Leaving.) 2014-09-06T07:55:34Z aftershave joined #lisp 2014-09-06T07:57:19Z vydd joined #lisp 2014-09-06T07:59:33Z stepnem joined #lisp 2014-09-06T07:59:51Z Harag joined #lisp 2014-09-06T08:01:52Z vydd quit (Ping timeout: 252 seconds) 2014-09-06T08:04:12Z H4ns: minion: message to loke: please have a look at https://github.com/edicl/hunchentoot/tree/socket-detaching for a revision of your proposal 2014-09-06T08:04:12Z minion: you speak nonsense 2014-09-06T08:04:28Z H4ns: minion: memo for loke: please have a look at https://github.com/edicl/hunchentoot/tree/socket-detaching for a revision of your proposal 2014-09-06T08:04:28Z minion: Remembered. I'll tell loke when he/she/it next speaks. 2014-09-06T08:12:55Z easye kicks minion. 2014-09-06T08:15:54Z Mon_Ouie quit (Quit: WeeChat 1.0) 2014-09-06T08:17:21Z Davidbrcz joined #lisp 2014-09-06T08:23:00Z Fare quit (Ping timeout: 272 seconds) 2014-09-06T08:34:43Z oleo is now known as Guest7881 2014-09-06T08:36:20Z oleo__ joined #lisp 2014-09-06T08:37:56Z leo2007 joined #lisp 2014-09-06T08:38:44Z Guest7881 quit (Ping timeout: 276 seconds) 2014-09-06T08:40:53Z drmeister quit (Remote host closed the connection) 2014-09-06T08:41:46Z drmeister joined #lisp 2014-09-06T08:42:10Z vaporatorius joined #lisp 2014-09-06T08:45:54Z kcj quit (Read error: Connection reset by peer) 2014-09-06T08:47:12Z defaultxr quit (Quit: gnight) 2014-09-06T08:47:32Z malbertife joined #lisp 2014-09-06T08:49:06Z zacharias joined #lisp 2014-09-06T08:54:33Z sword joined #lisp 2014-09-06T08:56:38Z araujo quit (Quit: Leaving) 2014-09-06T08:58:04Z vydd joined #lisp 2014-09-06T09:02:17Z vydd quit (Ping timeout: 245 seconds) 2014-09-06T09:02:20Z mishoo joined #lisp 2014-09-06T09:02:42Z Davidbrcz quit (Ping timeout: 246 seconds) 2014-09-06T09:03:43Z ee_cc joined #lisp 2014-09-06T09:08:17Z grungier quit (Remote host closed the connection) 2014-09-06T09:10:19Z resttime joined #lisp 2014-09-06T09:11:05Z grungier joined #lisp 2014-09-06T09:11:17Z vinleod joined #lisp 2014-09-06T09:13:08Z k-stz joined #lisp 2014-09-06T09:13:55Z drmeiste_ joined #lisp 2014-09-06T09:18:54Z drmeiste_ quit (Ping timeout: 268 seconds) 2014-09-06T09:28:58Z schaueho joined #lisp 2014-09-06T09:34:55Z husker joined #lisp 2014-09-06T09:37:21Z mishoo quit (Ping timeout: 255 seconds) 2014-09-06T09:39:20Z alexey quit (Remote host closed the connection) 2014-09-06T09:42:49Z drmeister quit (Remote host closed the connection) 2014-09-06T09:43:02Z drmeister joined #lisp 2014-09-06T09:45:31Z Grue` joined #lisp 2014-09-06T09:45:49Z shka joined #lisp 2014-09-06T09:45:52Z shka: ave 2014-09-06T09:46:06Z pt1 joined #lisp 2014-09-06T09:46:18Z shka: guys, i'm looking for some good tutorial about web development in common lisp 2014-09-06T09:46:29Z Shinmera: What kind of web development 2014-09-06T09:46:54Z shka: i just want to make simple blog-like web page 2014-09-06T09:47:00Z shka: however 2014-09-06T09:47:19Z shka: everything that i can find targets web developers who want to learn lisp 2014-09-06T09:47:35Z shka: not lispers want to make a web page ;-) 2014-09-06T09:47:42Z Shinmera: Just take a look at hunchentoot's docs, they show how to get a simple site up and running easily enough. 2014-09-06T09:47:53Z shka: oh, ok 2014-09-06T09:47:56Z shka: thanks 2014-09-06T09:48:00Z Shinmera: And from there on out it's just... rendering your page and getting a database involved if you want that 2014-09-06T09:48:10Z Shinmera: There's not much to it, really 2014-09-06T09:49:47Z shka: i hope so 2014-09-06T09:50:14Z H4ns: shka: if your needs are simple, just have a look at the hunchentoot documentation. 2014-09-06T09:50:28Z Shinmera: That's what I said :) 2014-09-06T09:50:46Z Adlai: shka: maybe learn around a bit about general web development, and then the other tutorials will make more sense? 2014-09-06T09:50:58Z H4ns: oh sorry, scrolled out of my window already 2014-09-06T09:51:00Z Adlai: become the target audience :P 2014-09-06T09:56:44Z nipra quit (Ping timeout: 276 seconds) 2014-09-06T09:57:45Z husker quit (Ping timeout: 268 seconds) 2014-09-06T09:58:49Z shka: Adlai: well, i guess 2014-09-06T09:58:50Z husker joined #lisp 2014-09-06T09:58:56Z vydd joined #lisp 2014-09-06T09:58:56Z shka: but i hate those web languages 2014-09-06T09:59:06Z shka: especially php 2014-09-06T10:01:15Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-06T10:02:10Z isoraqathedh quit (Read error: Connection reset by peer) 2014-09-06T10:02:20Z mishoo joined #lisp 2014-09-06T10:03:07Z vydd quit (Ping timeout: 245 seconds) 2014-09-06T10:03:28Z isoraqathedh joined #lisp 2014-09-06T10:07:39Z jusss joined #lisp 2014-09-06T10:08:22Z pt1 quit (Remote host closed the connection) 2014-09-06T10:11:02Z isoraqathedh quit (Quit: No Ping reply in 180 seconds.) 2014-09-06T10:11:20Z isoraqathedh joined #lisp 2014-09-06T10:11:53Z mhd joined #lisp 2014-09-06T10:12:52Z eigenlicht_ quit (Ping timeout: 240 seconds) 2014-09-06T10:16:25Z isoraqathedh quit (Read error: No route to host) 2014-09-06T10:17:43Z hugod|away is now known as hugod 2014-09-06T10:17:44Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-06T10:18:23Z dmiles_afk joined #lisp 2014-09-06T10:19:55Z Svetlana_ joined #lisp 2014-09-06T10:20:11Z H4ns: minion: memo for loke: but instead of a condition, it should be just an api function, i think. let's discuss when it is convenient. 2014-09-06T10:20:11Z minion: Remembered. I'll tell loke when he/she/it next speaks. 2014-09-06T10:20:49Z hiroakip joined #lisp 2014-09-06T10:23:23Z wasamasa: shka: I'd recommend understanding what exactly happens if you visit and interact with a website first 2014-09-06T10:23:29Z wasamasa: shka: then the rest should be rather simple 2014-09-06T10:24:08Z wasamasa: shka: PHP is famous for hodgepodging webdevelopment and rather not being a good example of how to solve common problems, so you shouldn't really need specific CL tutorials 2014-09-06T10:25:21Z ustunozgur joined #lisp 2014-09-06T10:30:57Z mr-foobar quit (Ping timeout: 260 seconds) 2014-09-06T10:31:05Z ee_cc quit (Quit: ee_cc) 2014-09-06T10:31:49Z Svetlana_ quit (Read error: Connection reset by peer) 2014-09-06T10:32:01Z Svetlana joined #lisp 2014-09-06T10:33:49Z isoraqathedh joined #lisp 2014-09-06T10:42:53Z drmeister quit (Remote host closed the connection) 2014-09-06T10:43:29Z drmeister joined #lisp 2014-09-06T10:43:58Z BitPuffin joined #lisp 2014-09-06T10:48:00Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-06T10:51:50Z PersonX joined #lisp 2014-09-06T10:52:45Z PersonX quit (Max SendQ exceeded) 2014-09-06T10:53:01Z resttime quit (Quit: resttime) 2014-09-06T10:53:42Z vinleod quit (Quit: Computer has gone to sleep.) 2014-09-06T10:56:48Z mhd joined #lisp 2014-09-06T10:57:56Z jtza8 joined #lisp 2014-09-06T10:58:54Z PersonX joined #lisp 2014-09-06T10:59:38Z vydd joined #lisp 2014-09-06T11:00:44Z PersonX quit (Max SendQ exceeded) 2014-09-06T11:00:46Z mrSpec quit (Read error: Connection timed out) 2014-09-06T11:01:00Z shka: wasamasa: i think you are right 2014-09-06T11:01:41Z attila_lendvai joined #lisp 2014-09-06T11:01:41Z attila_lendvai quit (Changing host) 2014-09-06T11:01:41Z attila_lendvai joined #lisp 2014-09-06T11:02:50Z Davidbrcz joined #lisp 2014-09-06T11:03:29Z pt1 joined #lisp 2014-09-06T11:04:30Z vydd quit (Ping timeout: 272 seconds) 2014-09-06T11:08:12Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-06T11:10:58Z hiroakip joined #lisp 2014-09-06T11:14:16Z vinleod joined #lisp 2014-09-06T11:14:19Z wasamasa: shka: in other programming languages you're frequently told to use a webframework 2014-09-06T11:14:40Z drmeiste_ joined #lisp 2014-09-06T11:14:46Z wasamasa: shka: I've found this one so far for CL: https://github.com/fukamachi/caveman 2014-09-06T11:15:25Z Shinmera: http://cliki.net/web%20framework 2014-09-06T11:15:58Z Svetlana quit (Quit: ?? ????????) 2014-09-06T11:17:06Z wasamasa: Shinmera: just clicked their link to the comparision matrix and it only has one entry 2014-09-06T11:17:21Z Shinmera: Yeah that's a useless page 2014-09-06T11:19:02Z drmeiste_ quit (Ping timeout: 245 seconds) 2014-09-06T11:19:46Z shka: wasamasa: i know this 2014-09-06T11:19:57Z shka: but there is no tutorial for newbies 2014-09-06T11:20:09Z shka: so i rather do something from the ground up 2014-09-06T11:21:49Z abbe quit (Ping timeout: 260 seconds) 2014-09-06T11:22:17Z benny quit (Ping timeout: 260 seconds) 2014-09-06T11:23:13Z easye quit (Ping timeout: 260 seconds) 2014-09-06T11:23:13Z cpt_nemo quit (Ping timeout: 260 seconds) 2014-09-06T11:23:27Z zygentoma joined #lisp 2014-09-06T11:24:11Z PersonX joined #lisp 2014-09-06T11:24:23Z easye joined #lisp 2014-09-06T11:25:11Z PersonX quit (Max SendQ exceeded) 2014-09-06T11:25:24Z wasamasa: hmm, if I weren't that happy with flask, I'd probably go for clack, ningle or caveman2 2014-09-06T11:25:25Z abbe joined #lisp 2014-09-06T11:26:25Z AeroNotix: Which method do I need to implement to change the way a type prints? 2014-09-06T11:26:40Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-06T11:27:37Z benny joined #lisp 2014-09-06T11:29:24Z cpt_nemo joined #lisp 2014-09-06T11:30:29Z Shinmera: I'm not sure what exactly you mean? 2014-09-06T11:30:40Z Shinmera: Do you want to change the way a class instance is printed or? 2014-09-06T11:31:01Z Svetlana joined #lisp 2014-09-06T11:33:00Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-06T11:33:47Z alexey joined #lisp 2014-09-06T11:36:18Z AeroNotix: Shinmera: yeah that 2014-09-06T11:36:55Z shka: AeroNotix: print-object 2014-09-06T11:36:59Z AeroNotix: shka: thanks 2014-09-06T11:37:01Z mr-foobar joined #lisp 2014-09-06T11:37:29Z shka: AeroNotix: http://www.gigamonkeys.com/book/object-reorientation-classes.html 2014-09-06T11:37:42Z AeroNotix: I've read the book 2014-09-06T11:37:43Z shka: more details in the practical common lisp ebook 2014-09-06T11:37:45Z Shinmera: AeroNotix: also see 2014-09-06T11:37:50Z Shinmera: clhs print-unreadable-object 2014-09-06T11:37:50Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_pr_unr.htm 2014-09-06T11:37:58Z AeroNotix: Thanks all 2014-09-06T11:38:02Z shka: AeroNotix: oh, that's good 2014-09-06T11:38:08Z shka: book is really good 2014-09-06T11:38:12Z AeroNotix: Yes. 2014-09-06T11:38:51Z shka: or even excelent 2014-09-06T11:39:02Z shka: author did a great job... 2014-09-06T11:39:25Z wasamasa: hum: http://thephoeron.viewdocs.io/REDSHIFTNET 2014-09-06T11:39:45Z wasamasa: how exactly does that gcc step work in their tutorial? 2014-09-06T11:40:27Z nand1 joined #lisp 2014-09-06T11:40:44Z Shinmera: the CC=gcc just sets the CC env variable to 'gcc', which I assume is read from the make.lisp script out 2014-09-06T11:41:09Z Shinmera: which then in turn probably uses run-program or similar to call gcc. 2014-09-06T11:41:28Z wasamasa: since I thought you couldn't really create binaries with sbcl 2014-09-06T11:41:48Z Shinmera: sure you can. 2014-09-06T11:41:53Z mhd joined #lisp 2014-09-06T11:41:55Z Shinmera: have a look at Buildapp. 2014-09-06T11:42:44Z Shinmera: No idea what it needs gcc for, would have to take a look at the source for that 2014-09-06T11:44:48Z wasamasa: I assume it's this file: https://github.com/thephoeron/REDSHIFTNET/blob/master/new-app-templates/make.lisp 2014-09-06T11:45:11Z drmeister quit (Remote host closed the connection) 2014-09-06T11:45:25Z drmeister joined #lisp 2014-09-06T11:47:51Z Shinmera: Hm, that doesn't mention the CC env var, but CLON might use it 2014-09-06T11:49:13Z pjb: AeroNotix: you cannot change the way types print. You can change the way instances of non-predefined standard-object or structure-object classes. 2014-09-06T11:49:36Z pjb: AeroNotix: You cannot change the way types print, because CLOS method dispatching is based only on classes, not on types. 2014-09-06T11:49:55Z Nizumzen joined #lisp 2014-09-06T11:50:32Z hitecnologys: Shinmera: your Modularize thing is aewsome. Why haven't anyone told me of its existence before? 2014-09-06T11:50:43Z pjb: AeroNotix: and you cannot define a method on print-object on a predefined class because of 11.1.2.1.2 Constraints on the COMMON-LISP Package for Conforming Programs, point 19. 2014-09-06T11:50:53Z PersonX joined #lisp 2014-09-06T11:50:56Z Shinmera: hitecnologys: Idunno, I'm not a high-profile lisper. 2014-09-06T11:51:03Z Shinmera: hitecnologys: Glad you find it useful though! 2014-09-06T11:51:19Z pjb: AeroNotix: so if you really want to print _types_ differently, then you will have to provide your own printing functions. 2014-09-06T11:51:33Z urandom__ joined #lisp 2014-09-06T11:51:43Z Blaguvest joined #lisp 2014-09-06T11:51:47Z AeroNotix: pjb: I just wanted (and have done so) print my own class isntances differently 2014-09-06T11:51:55Z AeroNotix: pjb: but thanks for the clarification 2014-09-06T11:52:15Z hitecnologys: Shinmera: it's exactly what I had in my mind for ages and it's exactly what I tried to implement some time ago but half of my code turned out to be useless garbage so dumped it. 2014-09-06T11:52:53Z Shinmera: hitecnologys: Heh. Well, this is my third go at a modularisation thing and I think I finally got the fundamental ideas right. 2014-09-06T11:53:36Z pjb: AeroNotix: notice the difference between "printing types differently" and "printing instances of my own classes differently". 2014-09-06T11:53:42Z pjb: Not the same string… 2014-09-06T11:53:49Z AeroNotix: pjb: I grokked what you meant 2014-09-06T11:53:51Z hitecnologys: Shinmera: now I can finally get rid of my thing. It was lots of pain. Thanks. 2014-09-06T11:53:56Z pjb: AeroNotix: :-) 2014-09-06T11:53:57Z AeroNotix: and I apologise for my inaccuracy 2014-09-06T11:54:16Z Shinmera: hitecnologys: I'm happy to hear that someone has a use for something I thought nobody would use aside from myself, haha 2014-09-06T11:54:23Z pjb: AeroNotix: remember this section 11.1.2.1.2 2014-09-06T11:54:38Z AeroNotix: reading it now 2014-09-06T11:54:50Z wasamasa: Shinmera: CLON looks like it does option parsing and some extras 2014-09-06T11:54:53Z pjb: (and the 11.1.2.1.1 if you're an implementer). 2014-09-06T11:54:59Z wasamasa: Shinmera: let me check whether those involve CC 2014-09-06T11:55:11Z wasamasa: Shinmera: it can for example print the commandline usage in christmas colors 2014-09-06T11:55:23Z Shinmera: wasamasa: I'd take a look at its DUMP function, since that's what the make script calls 2014-09-06T11:55:54Z hitecnologys: Shinmera: in case you want to make sure you don't go my path, the repository is on my GitHub account. 2014-09-06T11:56:43Z Shinmera: hitecnologys: you might also want to take a look at the -interfaces extension, since that's the primary reason I wrote modularize in the first palce 2014-09-06T11:56:45Z Shinmera: *place 2014-09-06T11:57:15Z hitecnologys: Shinmera: yes, I've already done that. 2014-09-06T11:57:21Z Shinmera: aight 2014-09-06T11:59:00Z wasamasa: Shinmera: ok, it looks like that one's a wrapper around the facilities various lisp implementations provide to dump a core 2014-09-06T11:59:22Z wasamasa: Shinmera: and since it supports ECL, setting CC looks appropriate 2014-09-06T11:59:22Z Shinmera: wasamasa: What happens if you try to run it without the CC env var? 2014-09-06T11:59:30Z Shinmera: wasamasa: ah, that might be it then 2014-09-06T12:00:16Z wasamasa: Shinmera: so it's indeed supporting something that looks to be their equivalent to buildapp 2014-09-06T12:00:20Z malbertife quit (Quit: Leaving) 2014-09-06T12:00:25Z wasamasa: Shinmera: still, thanks 2014-09-06T12:00:36Z ustunozgur quit (Remote host closed the connection) 2014-09-06T12:00:51Z Shinmera: wasamasa: Well, you figured it out yourself, no need to thank me! 2014-09-06T12:01:09Z wasamasa: Shinmera: https://www.lrde.epita.fr/~didier/software/lisp/clon/user/Dumping-Executables.html#Dumping-Executables 2014-09-06T12:01:18Z wasamasa: Shinmera: "The CC=gcc bit is needed for the sb-grovel contrib module that Clon uses (unless restricted mode is requested)." 2014-09-06T12:01:45Z PersonX quit (Remote host closed the connection) 2014-09-06T12:01:49Z wasamasa: "The sb-grovel module helps in generation of foreign function interfaces. It aids in extracting constants' values from the C compiler and in generating SB-ALIEN structure and union types, see Defining Foreign Types." 2014-09-06T12:02:19Z pt1 quit (Remote host closed the connection) 2014-09-06T12:02:38Z wasamasa: so, it's necessary for FFI to work I guess 2014-09-06T12:02:48Z hitecnologys: Shinmera: archimag has added similar ("interfaces", but he prefers to call them "policies") thing to RESTAS some time ago. I've tried using it and it was also very painful. I'm sure my architecture is just wrong, but in my opinion it's not very obvious how to do it right. You might also want to check them out too if you're into that sort of stuff. 2014-09-06T12:04:49Z Shinmera: hitecnologys: I think my interfaces way is about as intuitive and simple as you can get 2014-09-06T12:05:22Z Shinmera: hitecnologys: I've had much more complicated and annoying systems in my previous iteration of the stack that looked similar to what this policy thing does 2014-09-06T12:06:22Z hitecnologys: Shinmera: yeah, it looks like your current code is quite usable. At least it fits my style of writing programs. 2014-09-06T12:07:27Z Shinmera: hitecnologys: if you want to have a look at the horros of the predecessor https://github.com/Shinmera/radiance/blob/0dfa754ee2a49e84b142121ee77fb4c01b402f41/lib/core/interface.lisp https://github.com/Shinmera/radiance/blob/0dfa754ee2a49e84b142121ee77fb4c01b402f41/lib/core/module.lisp 2014-09-06T12:07:31Z Shinmera: *horrors 2014-09-06T12:09:23Z eigenlicht_ joined #lisp 2014-09-06T12:09:40Z AeroNotix: pjb: some interesting things here, setting TRACE is undefined behaviour 2014-09-06T12:09:42Z AeroNotix: ? 2014-09-06T12:10:50Z pjb: Implementation specific. 2014-09-06T12:11:13Z pjb: Each implementation can do something different. 2014-09-06T12:11:24Z AeroNotix: pjb: how do you differentiate between "undefined behaviour" and "implementation specific" ? 2014-09-06T12:11:35Z wasamasa: Shinmera: are these code samples supposed to have html entities: https://github.com/Shinmera/clip#updating-a-node-with-values ? 2014-09-06T12:12:24Z Shinmera: wasamasa: The markdown parser I use to generate my documentation is broken and screws up on html entities in plain code blocks. 2014-09-06T12:12:29Z Shinmera: wasamasa: Read the doc here http://shinmera.github.io/clip/ 2014-09-06T12:12:41Z Shinmera: wasamasa: I'm thinking of writing my own markdown parser sometime soon to get around this. 2014-09-06T12:12:54Z wasamasa: Shinmera: well, now that there are people who attempt standardizing markdown 2014-09-06T12:12:56Z wasamasa: Shinmera: why not 2014-09-06T12:13:00Z Shinmera: wasamasa: yeah exactly 2014-09-06T12:14:57Z PersonX joined #lisp 2014-09-06T12:15:02Z wasamasa: Shinmera: all your logos are your own work? 2014-09-06T12:15:27Z Shinmera: wasamasa: they are. Haven't had the time to make some for all my recent projects because there've been so many though. 2014-09-06T12:15:31Z AeroNotix: Shinmera: I was thinking of just making a cffi binding to that standard markdown parser 2014-09-06T12:15:47Z wasamasa: Shinmera: I should really learn inkscape and grab an intuos to make my own, too :P 2014-09-06T12:15:59Z Shinmera: AeroNotix: I like writing parsers and loathe ffi, so 2014-09-06T12:16:18Z Shinmera: wasamasa: I make the logos by fumbling around in pixlr 2014-09-06T12:16:23Z AeroNotix: Shinmera: ffi is almost like a free library 2014-09-06T12:16:30Z Shinmera: wasamasa: Ain't got time for vectorisin' 2014-09-06T12:16:34Z AeroNotix: if the only cost is time 2014-09-06T12:16:59Z AeroNotix: Also, hot damn TRACE is sweet 2014-09-06T12:18:08Z pjb: AeroNotix: basically, undefined behavior: anything can happen, even nasal daemons. Implementation specific is when the standard imposes some range of (sane) behavior, that may differ from one implementation to another, but within some range. 2014-09-06T12:18:54Z AeroNotix: pjb: so the standard expresses it in a similar way to: "Implementations may do one of these [a,b,c] things." ? 2014-09-06T12:19:17Z PersonX quit (Read error: Connection reset by peer) 2014-09-06T12:19:18Z pjb: For example (eq 1 1) is implementation specific. But (cl:trace cl:sin) may break the system or may do nothing, or may do what you expect, or something else. 2014-09-06T12:19:25Z pjb: AeroNotix: yes. 2014-09-06T12:19:42Z AeroNotix: pjb: gotcha 2014-09-06T12:19:43Z pjb: (eq 1 1) --> true, or nil. 2014-09-06T12:19:43Z protist: AeroNotix: you could look at Peter Norvigs code for DCGs (definite clause grammars) 2014-09-06T12:19:55Z AeroNotix: protist: huh? 2014-09-06T12:20:10Z protist: AeroNotix: you could then adapt those to your needs (if they are as well implemented as I hope) 2014-09-06T12:20:15Z pjb: Notice that (eq 1 1) --> 'you-are-a-spuntz is valid :-) 2014-09-06T12:20:24Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-06T12:20:25Z AeroNotix: protist: What are your tips in relation to? 2014-09-06T12:20:31Z pjb: is conforming. 2014-09-06T12:20:43Z protist: AeroNotix: your markdown parsing 2014-09-06T12:20:44Z AeroNotix: pjb: Thanks for the insight. 2014-09-06T12:21:23Z AeroNotix: protist: well, I didn't actually need to write a markdown parser. I just thought that if someone wrote a starndard markdown parser in C then it'd make more sense to start off with that since it would be a true implemtnation 2014-09-06T12:21:42Z AeroNotix: Well, now they're calling it Common Markdown because butthurt people 2014-09-06T12:21:44Z AeroNotix: but still. 2014-09-06T12:22:11Z Shinmera: they might have to change it again because names 2014-09-06T12:22:21Z protist: AeroNotix: kk 2014-09-06T12:22:22Z wasamasa: common markdown? 2014-09-06T12:22:30Z wasamasa: that cuts down one possible name for the lisp version :P 2014-09-06T12:22:42Z AeroNotix: wasamasa: yeah people are making a standard for markdown 2014-09-06T12:22:57Z AeroNotix: which I think is a good idea -- it's always annoying using people's personal implementations of Markdown 2014-09-06T12:23:47Z wasamasa: http://blog.codinghorror.com/standard-markdown-is-now-common-markdown/ 2014-09-06T12:23:50Z wasamasa: oh well 2014-09-06T12:23:51Z pjb: reStructured Text is the best format (at least for usual text). I don't like markdown at all (or org-mode formatting for that matter). 2014-09-06T12:24:02Z wasamasa: pjb: now, if only it weren't tied to python... 2014-09-06T12:24:02Z pjb: rightly on coding horror, yes. 2014-09-06T12:24:10Z AeroNotix: I really tried to like org-mode given how much people rave about it 2014-09-06T12:24:13Z pjb: There's a reStructured Text in CL. 2014-09-06T12:24:21Z pjb: org-mode is nice to use. 2014-09-06T12:25:21Z shka: yes, org-mode is usefull 2014-09-06T12:25:25Z wasamasa: pjb: sounds like that one will be different when it comes to extension via directives 2014-09-06T12:25:31Z AeroNotix: I rarely take notes 2014-09-06T12:25:48Z wasamasa: pjb: since the more complex ones are python code in docutils 2014-09-06T12:26:14Z hiroakip quit (Ping timeout: 276 seconds) 2014-09-06T12:26:50Z mhd joined #lisp 2014-09-06T12:27:04Z wasamasa: pjb: https://github.com/willijar/cl-docutils also looks a lot less complicated which is good 2014-09-06T12:29:46Z harish_ joined #lisp 2014-09-06T12:29:48Z pjb: Anyways, I write my own rst directive in lisp (with a pre-processor) :-) 2014-09-06T12:30:27Z MoALTz_ joined #lisp 2014-09-06T12:30:55Z protist: shot in the dark....anyone here hiring Common Lispers in New Zealand or Australia? 2014-09-06T12:31:20Z pjb: Yes, there was one place in Melbourne IIRC. 2014-09-06T12:31:56Z protist: do you have a link or more information? 2014-09-06T12:32:51Z Ven joined #lisp 2014-09-06T12:33:12Z MoALTz quit (Ping timeout: 245 seconds) 2014-09-06T12:33:25Z zophy joined #lisp 2014-09-06T12:33:34Z pjb: have alook on the lisp job blog. 2014-09-06T12:34:11Z protist: the WIll Fitzgerald one? 2014-09-06T12:34:26Z yeticry quit (Ping timeout: 272 seconds) 2014-09-06T12:34:41Z beach: protist: You don't necessarily need to be hired to do Common Lisp in order to use Common Lisp in your job. 2014-09-06T12:34:41Z Davidbrcz quit (Ping timeout: 276 seconds) 2014-09-06T12:36:02Z yeticry joined #lisp 2014-09-06T12:36:20Z ndrei quit (Ping timeout: 272 seconds) 2014-09-06T12:36:55Z protist: beach: the job I have is incompatible 2014-09-06T12:37:03Z protist: beach: closed system 2014-09-06T12:37:09Z AeroNotix: "closed system"? 2014-09-06T12:37:18Z protist: proprietary all on the cloud 2014-09-06T12:37:22Z protist: compiles remotely 2014-09-06T12:38:04Z beach: Sure, some jobs are incompatible. I am just saying you could get hired by a company where you could use CL even though they don't announce it. 2014-09-06T12:38:31Z AeroNotix: For example in my current job I write Clojure and some tools in CL 2014-09-06T12:38:43Z AeroNotix: primarily though we use Erlang, and we don't really talk about Lisp related stuff 2014-09-06T12:39:36Z protist: Ide like to get something with a gaurantee of using a homoiconic language primarilly 2014-09-06T12:39:53Z AeroNotix: protist: there's a non-trivial uptick in companies using clojure. 2014-09-06T12:40:18Z protist: I may look into that...the little bit of Clojure that I have played with left a bad taste in my mouth 2014-09-06T12:40:28Z pjb: beach: that said, it looks like indeed, more and more shops are constrained by strong (if implicit) technology choices, imposed by the target platforms. Often I long for older IT… 2014-09-06T12:41:08Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-06T12:41:18Z beach: pjb: I am sure you are right (since you observe it more closely than I do). Too bad. 2014-09-06T12:42:31Z protist: I feel like Clojure is overly functional...and I feel like hygenic macros are crippled 2014-09-06T12:42:48Z protist: all personal preference though, I know 2014-09-06T12:43:02Z AeroNotix: protist: what do you mean about Clojure's macros? 2014-09-06T12:43:39Z AeroNotix: The FP aspects of Clojure *are* pervasive, I agree, I do wish there was a CLOS-like system in Clojure. 2014-09-06T12:43:59Z AeroNotix: but still, FP in Clojure is a joy 2014-09-06T12:44:09Z protist: There are a lot of macros where putting generated symbols in the body is useful (I don't have much experience in hygenic macros, maybe they have workarounds) 2014-09-06T12:44:24Z AeroNotix: Uhm, that's an unhygenic macro, no? 2014-09-06T12:44:32Z protist: sounds like it to me 2014-09-06T12:44:50Z AeroNotix: You can do anaphoric macros in Clojure but it's not straight forward 2014-09-06T12:44:59Z protist: for instance if I want to hide arguments in a definite clause grammar, or more cleanly pass information around in a DSL 2014-09-06T12:45:20Z drmeister quit (Remote host closed the connection) 2014-09-06T12:45:25Z wasamasa: Shinmera: what's with the TymoonNET/NexT copyright in your packages? 2014-09-06T12:45:35Z AeroNotix: I actually forget off the top of my head how to write anaphoric macros in Clojure now that you mention it 2014-09-06T12:45:52Z protist: AeroNotix: I don't think you can 2014-09-06T12:45:58Z protist: AeroNotix: oh you said it is possible 2014-09-06T12:46:08Z drmeister joined #lisp 2014-09-06T12:46:09Z Shinmera: wasamasa: that's my group/team/whateveryouwanttocallit 2014-09-06T12:46:11Z AeroNotix: protist: No I specifically remember walking through this one day, there's a massive level of hackery to achieve it 2014-09-06T12:46:20Z wasamasa: Shinmera: so no actual company? 2014-09-06T12:46:25Z Shinmera: wasamasa: nope 2014-09-06T12:46:33Z protist: AeroNotix: and no reader macros is understandable, but sad 2014-09-06T12:46:42Z wasamasa: Shinmera: since there's this one company from the eighties 2014-09-06T12:46:46Z AeroNotix: protist: http://amalloy.hubpages.com/hub/Unhygenic-anaphoric-Clojure-macros-for-fun-and-profit 2014-09-06T12:46:50Z Shinmera: wasamasa: I know about NeXT 2014-09-06T12:47:03Z wasamasa: Shinmera: which only differs in capitalization 2014-09-06T12:47:10Z AeroNotix: protist: the lack of reader macros does limit some extensibility, but even in CL is that reader macros should be avoided generally. 2014-09-06T12:47:43Z Shinmera: wasamasa: hence why I always write the full name 2014-09-06T12:49:06Z pnpuff joined #lisp 2014-09-06T12:49:10Z protist: AeroNotix: yeah 2014-09-06T12:49:20Z protist: AeroNotix: and the immutability is gross 2014-09-06T12:49:32Z AeroNotix: protist: disagree 2014-09-06T12:49:40Z AeroNotix: also, it's not immutability all the time 2014-09-06T12:49:50Z protist: AeroNotix: I don't write imperative lisp code really....but sometimes mutating is a clear expression of what you want 2014-09-06T12:49:52Z AeroNotix: it's explicit mutability 2014-09-06T12:50:02Z protist: AeroNotix: ah ok 2014-09-06T12:50:16Z alexey quit (Remote host closed the connection) 2014-09-06T12:50:20Z AeroNotix: For sure, you need a mix of it in a program. Clojure has very clear ways of expressing mutability with immutable data structures by default 2014-09-06T12:50:36Z AeroNotix: rather than immutable by default and non-standardized ways of achieving immutability 2014-09-06T12:50:44Z AeroNotix: it's the better way, imho 2014-09-06T12:51:06Z AeroNotix: Because you can always trust parts of your program until you read that "OH there's some mutable reference type here" 2014-09-06T12:51:35Z wasamasa: Shinmera: I see 2014-09-06T12:51:57Z harish_ quit (Quit: Leaving) 2014-09-06T12:52:05Z protist: AeroNotix: makes sense 2014-09-06T12:52:24Z protist: AeroNotix: also I remember the debug output looking mangled 2014-09-06T12:52:32Z AeroNotix: protist: stacktraces are fubar by default 2014-09-06T12:52:34Z protist: AeroNotix: but I really didn't do much with it 2014-09-06T12:52:47Z Shinmera: wasamasa: I might change the name some day when I can think of a better one. *shrug* 2014-09-06T12:52:50Z AeroNotix: but if you use CIDER (clojure's SLIME) then there's a REPL middleware to clean it up 2014-09-06T12:53:39Z PersonX joined #lisp 2014-09-06T12:55:52Z alexey joined #lisp 2014-09-06T12:56:06Z pjb: NeXT lost a good occasion to make lisp a mainstream language. If they had taken Interface Builder as it was (or perhaps converted it to Common Lisp), and made lisp the OpenStep programming language, we'd be programming in lisp on MacOSX and iOS instead of Objective-C or swift or whatever. 2014-09-06T12:57:03Z rme joined #lisp 2014-09-06T12:59:10Z Shaftoe___ joined #lisp 2014-09-06T13:00:25Z PersonX quit (Remote host closed the connection) 2014-09-06T13:00:27Z Shaftoe___: hi all. I'm running SBCL 1.2.2 on darwin. I have a problem that I'm not sure is a real problem or a pebkac 2014-09-06T13:00:28Z alexey quit (Remote host closed the connection) 2014-09-06T13:01:07Z vydd joined #lisp 2014-09-06T13:01:13Z hitecnologys: pjb: well, I wouldn't be surprised if after Swift Apple suggested something Lisp-like. 2014-09-06T13:01:39Z hitecnologys: Shaftoe___: please tell more. 2014-09-06T13:01:58Z Shaftoe___: heh. yes . sorry formatting the paste bin 2014-09-06T13:02:01Z protist: hitecnologys: I would be 2014-09-06T13:02:08Z protist: hitecnologys: everyone is afraid of the parens 2014-09-06T13:02:20Z hitecnologys: protist: that's why I said "Lisp-like". 2014-09-06T13:02:20Z protist: hitecnologys: or homoiconicity in general 2014-09-06T13:02:32Z hitecnologys: protist: somthing close to Clojure might work. 2014-09-06T13:02:38Z protist: hitecnologys: homoiconicity in general ends up looking strange to most people 2014-09-06T13:02:59Z ejbs joined #lisp 2014-09-06T13:03:00Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-06T13:03:03Z wasamasa: protist: let's just make it look like xml 2014-09-06T13:03:16Z Shaftoe___: http://paste.lisp.org/display/143629 2014-09-06T13:03:17Z wasamasa: protist: that will work, people in general don't see what's wrong with it 2014-09-06T13:03:33Z protist: hitecnologys: I see people at my uni using Clojure for an AI class (i've taken it too), and they line up there outermost parens on separate lines like curlies in C 2014-09-06T13:03:44Z Shaftoe___: that code gives me an "Error in SB-POSIX:TCSETATTR: Invalid argument (22)" 2014-09-06T13:03:54Z protist: hitecnologys: the level of unacceptence of the syntax is really surprising 2014-09-06T13:04:18Z Shaftoe___: inspecting *term* gives me a structure that is different from what I am expecting to see if I rely on C headers 2014-09-06T13:04:23Z protist: wasamasa: lol funny how if you repeat yourself then people might like it more 2014-09-06T13:05:02Z shka: hitecnologys: the main problem for lisp is that it simply looks like bunch of strange features for new programmers 2014-09-06T13:05:26Z shka: you need to understand lisp in order to see why it is great 2014-09-06T13:05:33Z shka: and it is not that simple actually 2014-09-06T13:05:38Z shka: it requires work 2014-09-06T13:05:42Z vydd quit (Ping timeout: 245 seconds) 2014-09-06T13:05:49Z shka: and not everyone wants to work 2014-09-06T13:06:06Z Shaftoe___: any ideas on this? 2014-09-06T13:06:10Z protist: not everyone can even work with map and reduce intuitively 2014-09-06T13:06:20Z shka: and swift is "look how easy it is!" kind of thing 2014-09-06T13:06:40Z shka: it is designed to write flappy bird games 2014-09-06T13:06:49Z protist: and something like a closure is completely out of scope 2014-09-06T13:06:59Z protist: (no pun intended) 2014-09-06T13:07:00Z shka: Shaftoe___: darwin = osx? 2014-09-06T13:07:04Z protist: (but I wish it was) 2014-09-06T13:07:08Z Shaftoe___: I've added an annotation to show what I see if I inspect *term* 2014-09-06T13:07:10Z Shaftoe___: yes, osx 2014-09-06T13:07:26Z hitecnologys: Shaftoe___: your #+nil is in a wrong place. 2014-09-06T13:07:50Z hitecnologys: Wait, forget it, I parsed it wrong. 2014-09-06T13:08:20Z Shaftoe___: from an equivalent C program, I can tell that it's missing ispeed and ospeed records in that *term* structure 2014-09-06T13:08:50Z alexey joined #lisp 2014-09-06T13:09:35Z ejbs: shka: I dunno, people seem pretty eager to learn Clojure. 2014-09-06T13:09:53Z Shaftoe___: I'm *assuming* that's where the complaint for invalid parameter comes from. but I'm not sure this assumption is valid. How can the structure being returned by sb-posix:tcgetattr be seemingly wrong? 2014-09-06T13:10:00Z ejbs: I think it's just the prejudice that Lisp is "old and weird" and people who know it are 'wizards' 2014-09-06T13:10:15Z wasamasa: protist: you see, if you drop some of the syntax xml has and turn the ending tags into closing parentheses, it almost looks like lisp 2014-09-06T13:10:43Z protist: wasamasa: i know....and people like it because it repeats itself, lol 2014-09-06T13:11:22Z wasamasa: considering some people do willingly write xslt 2014-09-06T13:11:28Z wasamasa: it might just work out 2014-09-06T13:11:49Z mhd joined #lisp 2014-09-06T13:11:59Z hitecnologys: Shaftoe___: why do you use #+nil for commenting? This seems kind of confusing to me. 2014-09-06T13:12:27Z Shaftoe___: I agree, it's crap. It was just from sample code. ignore the #+nil. 2014-09-06T13:12:31Z protist: wasamasa: sadly we have an IRC channel filled with people who would write Common Lisp for pay 2014-09-06T13:12:39Z protist: wasamasa: and not all can find jobs in it 2014-09-06T13:13:23Z wasamasa: protist: well, I'm not so sure given it's also filled with people who kill you for even mentioning scheme 2014-09-06T13:13:55Z Shaftoe___: how can I check the actual struct definition of sb-posix:termios ? 2014-09-06T13:14:10Z protist: wasamasa: yeah I prefer Common Lisp by far too 2014-09-06T13:15:09Z wasamasa: protist: you'd think someone who'd like to find a lisp job would have better things to do than that :P 2014-09-06T13:15:26Z drmeiste_ joined #lisp 2014-09-06T13:15:30Z protist: wasamasa: than what? 2014-09-06T13:15:37Z protist: wasamasa: avoid scheme? 2014-09-06T13:17:44Z PersonX joined #lisp 2014-09-06T13:18:34Z pjb: We don't avoid scheme. 80% of people here are also in #scheme. 2014-09-06T13:18:37Z protist: some of the things I like most about Common Lisp aren't that is is a Lisp-2 2014-09-06T13:18:46Z pjb: But what happens in #scheme must stay in #scheme. 2014-09-06T13:18:54Z protist: odd we don't really see Lisp-1s with unhygenic macros 2014-09-06T13:18:58Z pnpuff: is there any good dataflow extension to CLOS? 2014-09-06T13:18:59Z beach: protist: You are free to start a company using Common Lisp. 2014-09-06T13:19:00Z pnpuff: Thx 2014-09-06T13:19:12Z pjb: pnpuff: several. Which one do you want? 2014-09-06T13:19:12Z hitecnologys: Shaftoe___: TCSETATTR accepts file descriptior as its first argument. Why are you passing exit code? 2014-09-06T13:19:15Z protist: beach: that would be cool 2014-09-06T13:19:24Z wasamasa: protist: no, that would be fine 2014-09-06T13:19:34Z pjb: pnpuff: Have a look at KR, or at Cells. 2014-09-06T13:19:41Z pnpuff: ok 2014-09-06T13:19:48Z protist: wasamasa: yeah, I would like a lisp-1 with Common Lisp features 2014-09-06T13:19:49Z pjb: Well if you insist on clos, that'd be cells. 2014-09-06T13:19:52Z drmeiste_ quit (Ping timeout: 245 seconds) 2014-09-06T13:20:00Z pjb: KR has it's own OO system. 2014-09-06T13:20:06Z beach: protist: I know a few people who set up a startup company, got venture capitalists to invest, spent 2 years having fun burning the money, then took a regular job. 2014-09-06T13:20:07Z protist: wasamasa: I don't think you have to be a lisp-2 to have most things 2014-09-06T13:20:15Z Shaftoe___: *tmp* is the file descriptor as obtained by sb-posix:open 2014-09-06T13:20:21Z hitecnologys: Shaftoe___: oh goddamit, I'm completely blind today. Ignore what I say. I shall get back to doing whatever I was doing. 2014-09-06T13:20:25Z protist: beach: beautiful 2014-09-06T13:20:34Z pjb: beach: did they do anything useful or interesting? 2014-09-06T13:20:45Z Shaftoe___: hitecnologys: no worries, man. Thanks for looking. 2014-09-06T13:20:49Z wasamasa: protist: rather things like repeatedly questioning me for linking a talk that states on one slide that guile emacs is a viable alternative to emacs 2014-09-06T13:20:55Z beach: pjb: Yes, but not necessarily anything the market wanted. 2014-09-06T13:21:19Z protist: wasamasa: I use vim, please don't kill me 2014-09-06T13:21:46Z Shaftoe___: it's frustrating because m0prl and Xach seem to have had this very conversation 2 years ago (http://ccl.clozure.com/irc-logs/lisp/2011-12/lisp-2011.12.29.txt) 2014-09-06T13:22:04Z Shaftoe___: more like 3 years ago. 2014-09-06T13:22:16Z Shaftoe___: " it works fine on linux, but on os x the tcsetattr call fails thusly: Error in SB-POSIX:TCSETATTR: Invalid argument (22)" 2014-09-06T13:22:29Z pjb: Shaftoe___: well, we're mostly always repeating the same thing over and over every 3-5 years anyways, AFAICS, here or on cll. 2014-09-06T13:22:48Z wasamasa: protist: and accusing me to be in favour of scheme rather than CL 2014-09-06T13:22:50Z pjb: That's why the news are the best: you have all the history available in your mailbox. 2014-09-06T13:22:52Z Shaftoe___: pjb: history! =) 2014-09-06T13:23:17Z Shaftoe___: I wonder what the solution was. the pastebin entry seems to have expired 2014-09-06T13:23:28Z PersonX quit (Read error: Connection reset by peer) 2014-09-06T13:24:25Z protist: beach: what did they make? be vague if you have to 2014-09-06T13:24:49Z beach: I forget the details. Some smartphone apps I think. 2014-09-06T13:25:04Z protist: beach: also venture captitalists invest in sectors more than ideas....so with the right categorization you could probably get funding haha 2014-09-06T13:25:20Z Shaftoe___: Xach: when you get this, do you know whatever was the cause of the "Error in SB-POSIX:TCSETATTR: Invalid argument (22)" error from a long time ago (http://code.google.com/p/irc-logs/source/browse/trunk/logs/freenode/lisp/2011/2011-12-29?spec=svn65&r=61) 2014-09-06T13:25:59Z PersonX joined #lisp 2014-09-06T13:26:21Z ejbs: Shaftoe___: Use FIND-CLASS and inspect the class object? 2014-09-06T13:27:09Z pjb: beach: by the way, something interesting about optimization: http://www.daemonology.net/blog/2014-09-06-zeroing-buffers-is-insufficient.html 2014-09-06T13:27:40Z pjb: beach: an (OS) implementation would need a declaration to prevent this :-) 2014-09-06T13:27:58Z Shaftoe___: ejbs: you mean (find-class 'sb-posix:termios) ? 2014-09-06T13:28:32Z ejbs: Shaftoe___: Exactly, then you can right-click on the object (assuming SLIME) and inspect it OR find the definition 2014-09-06T13:28:54Z mrSpec joined #lisp 2014-09-06T13:29:16Z beach: pjb: Neat! :) 2014-09-06T13:29:43Z vydd joined #lisp 2014-09-06T13:29:52Z Shaftoe___: yeah, so it is missing 2 slots. what gives? this is an SBCL bug or? 2014-09-06T13:30:11Z PersonX quit (Read error: Connection reset by peer) 2014-09-06T13:30:37Z Shaftoe___: is there a way to "live update" an intrinsic class definition without recompiling sbcl? so as to allow me to see if this is really the problem? 2014-09-06T13:32:18Z ejbs: Shaftoe___: Well, what you'd do is re-compile that specific class. SBCL runs in CL so you can recompile whatever basically. You can't recompile the define-protocol-class though 'cuz it depends on some ALIEN type definition. I'd ask in #sbcl though 2014-09-06T13:32:48Z ejbs: (I'm no SBCL expert so take what I say with a handful of salt) 2014-09-06T13:32:55Z Shaftoe___: ejbs: good point about #sbcl 2014-09-06T13:34:29Z Beetny quit (Ping timeout: 276 seconds) 2014-09-06T13:36:58Z Shaftoe___: ugh. time for a recompile to see what's up. 2014-09-06T13:37:33Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-06T13:37:59Z ejbs: Shaftoe___: What slots are missing for you? Mine is the same as in the manual 2014-09-06T13:39:35Z Shaftoe___: ejbs: missing slots appear to be ispeed and ospeed 2014-09-06T13:39:49Z Shaftoe___: ejbs: this is why I came here though, to make sure I wasn't being an idiot. 2014-09-06T13:41:07Z Shaftoe___: ejbs: my definition is in /usr/include/sys/termios.h 2014-09-06T13:41:29Z Shaftoe___: ejbs: and it has speed_t c_ispeed and speed_t c_ospeed after the cc field 2014-09-06T13:44:34Z ejbs: Shaftoe___: Seems like SBCL don't include those slots, yeah. Okay, I can't help you more than that, time for SBCL devs to help heh :) 2014-09-06T13:45:13Z LiamH joined #lisp 2014-09-06T13:45:19Z EvW joined #lisp 2014-09-06T13:45:29Z Shaftoe___: ejbs: ok. thank you. I was looking for this confirmation that I wasn't being an idiot. 2014-09-06T13:45:33Z PersonX joined #lisp 2014-09-06T13:45:35Z Shaftoe___: onto #sbcl 2014-09-06T13:48:00Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-06T13:49:04Z PersonX quit (Read error: Connection reset by peer) 2014-09-06T13:49:17Z alexey quit (Remote host closed the connection) 2014-09-06T13:49:20Z drmeister quit (Remote host closed the connection) 2014-09-06T13:49:32Z drmeister joined #lisp 2014-09-06T13:51:52Z chitofan joined #lisp 2014-09-06T13:53:05Z chitofan: how do you guys decide whether to break down a function into several small parts? 2014-09-06T13:53:06Z chitofan: http://paste.lisp.org/display/143630 2014-09-06T13:53:34Z chitofan: http://paste.lisp.org/display/143630#1 2014-09-06T13:54:05Z PersonX joined #lisp 2014-09-06T13:55:02Z PersonX quit (Max SendQ exceeded) 2014-09-06T13:55:03Z protist: chitofan: never! one huge cond and recursion 2014-09-06T13:55:09Z pjb: chitofan: how do you decide whether to break down a big sentence into several small sentences? 2014-09-06T13:55:35Z pjb: chitofan: just use your language brain cells. 2014-09-06T13:55:45Z beach: chitofan: Each function should have a natural name. If you can't put a natural name to a bunch of forms, then it shouldn't be in its own function. 2014-09-06T13:56:14Z protist: chitofan: a good rule might be "go only one cond deep" 2014-09-06T13:56:21Z chitofan: hmm, but the local variables in that function are used in almost every statement 2014-09-06T13:56:49Z mhd joined #lisp 2014-09-06T13:57:02Z protist: chitofan: I don't think those are local 2014-09-06T13:57:05Z protist: chitofan: :*( 2014-09-06T13:57:10Z beach: chitofan: Why do you use so many special variables. Is *store2* used outside this function? 2014-09-06T13:57:26Z wasamasa: chitofan: I'd first stop numbering variables 2014-09-06T13:58:06Z chitofan: yea 2014-09-06T13:58:06Z phadthai: if you really need those to be global or dynamically scoped, it's also still possible to create local bindings for performance and side effect reduction 2014-09-06T13:58:26Z beach: chitofan: It helps to use more idiomatic code: (eq nil) => (null ) (setf (+ 1 )) => (incf ) 2014-09-06T13:58:33Z protist: chitofan: like hwere you comment ;encounter number.....you could have the code in there implemented in a separate function called "handle-number" or something 2014-09-06T13:58:55Z chitofan: ok, i will try some of the suggestions here :) 2014-09-06T13:59:15Z protist: chitofan: excited to see what you do :) 2014-09-06T13:59:34Z beach: chitofan: You didn't answer my question. Is *store2* used outside this function? 2014-09-06T13:59:42Z chitofan: yea, it is 2014-09-06T13:59:52Z beach: Wow! 2014-09-06T13:59:59Z protist: beach: :( 2014-09-06T14:00:16Z chitofan: how do i address people like in beach: ? 2014-09-06T14:00:24Z beach: chitofan: Then it has a horrible name. 2014-09-06T14:00:40Z protist: chitofan: try to make your code look more like your comments 2014-09-06T14:00:50Z PersonX joined #lisp 2014-09-06T14:01:02Z beach: chitofan: You type the nick followed by `:'. 2014-09-06T14:01:22Z beach: chitofan: If you use a good client, you can use completion. 2014-09-06T14:01:27Z chitofan: ok i will do that next time :) 2014-09-06T14:01:30Z ustunozgur joined #lisp 2014-09-06T14:01:42Z chitofan: i use irc from a browser 2014-09-06T14:02:44Z shka: chitofan: i really don't like those... 2014-09-06T14:02:51Z shka: even erc from emacs is better 2014-09-06T14:03:05Z beach: chitofan: If you have a recursive function, you try to handle the base case first, just like in a mathematical proof by induction. 2014-09-06T14:03:31Z chitofan: what do you mean by base case? 2014-09-06T14:03:48Z protist: chitofan: what does this program do?....can we see the whole function?....or maybe the whole program? 2014-09-06T14:03:55Z beach: chitofan: Null, 0, atom, whatever does not need to recurse. 2014-09-06T14:04:09Z Grue`: I wrote some great looking code today https://gist.github.com/tshatrov/8b74bd4a1f1234b7f10d 2014-09-06T14:04:24Z chitofan: protist: i'm embarassed now.. could i refine my code first :P 2014-09-06T14:05:19Z beach: chitofan: No need to be embarrassed. Just try to learn and improve. 2014-09-06T14:05:50Z protist: chitofan: yeah no judgement here, I would like to see it 2014-09-06T14:06:04Z protist: chitofan: refactoring is a fun excercise 2014-09-06T14:06:22Z clop2 quit (Ping timeout: 240 seconds) 2014-09-06T14:07:08Z chitofan: the thing is.. i don't even have a program :( i tried writing it top down, but when i started writing the bottom functions 2014-09-06T14:07:12Z theos quit (Disconnected by services) 2014-09-06T14:07:23Z chitofan: i started rewriting and rewriting my functions because i saw better ways to write them 2014-09-06T14:07:24Z protist: chitofan: ide be happy to look at whatever you have 2014-09-06T14:07:36Z beach: chitofan: Example of base case first: you write (defun fact (n) (if (zerop n) 1 (* n (fact (1- n))))) You don't write (defun fact (n) (if (> n 0) (* n (fact (1- n))) 1)). 2014-09-06T14:07:38Z protist: chitofan: rewriting is good 2014-09-06T14:07:43Z theos joined #lisp 2014-09-06T14:08:18Z protist: chitofan: another good method is to pretend you have every function you imagine, and use them before you implement them 2014-09-06T14:08:23Z chitofan: this is what workable code i have, even if its buggy 2014-09-06T14:08:25Z chitofan: http://paste.lisp.org/display/143630#2 2014-09-06T14:08:52Z protist: what game is this for? 2014-09-06T14:09:25Z chitofan: 2048 2014-09-06T14:11:29Z PersonX quit (Remote host closed the connection) 2014-09-06T14:11:49Z husker quit (Ping timeout: 268 seconds) 2014-09-06T14:12:33Z ejbs: Grue`: Whoa, did you actually write that manually? 2014-09-06T14:13:31Z Grue`: ejbs: large part of it was transformed from source javascript using keyboard macros 2014-09-06T14:14:27Z ejbs: Grue`: A-ha 2014-09-06T14:14:39Z les quit (Remote host closed the connection) 2014-09-06T14:15:50Z PersonX joined #lisp 2014-09-06T14:16:07Z Davidbrcz joined #lisp 2014-09-06T14:16:56Z pt1 joined #lisp 2014-09-06T14:17:00Z pt1 quit (Remote host closed the connection) 2014-09-06T14:17:14Z husker joined #lisp 2014-09-06T14:17:41Z clop2 joined #lisp 2014-09-06T14:20:36Z les joined #lisp 2014-09-06T14:21:21Z ndrei joined #lisp 2014-09-06T14:22:00Z Shaftoe___: anyone know if there is a way to just rebuild a particular contrib without rebuilding the entire sbcl source? 2014-09-06T14:27:41Z ejbs: Shaftoe___: Do you have the source code? 2014-09-06T14:27:50Z Shaftoe___: yes 2014-09-06T14:28:26Z Shaftoe___: I just want to avoid building the entire source tree which takes 20+ minutes. 2014-09-06T14:28:41Z ejbs: OK so there's a .asd file, you should be able to replace the fasls with ASDF then. Right? 2014-09-06T14:28:43Z Shaftoe___: (but be able to rebuild the entire contrib sb-posix) 2014-09-06T14:29:33Z Shaftoe___: I guess I understand you conceptually. but how do I go about recompiling the asd ? 2014-09-06T14:29:53Z protist: chitofan: hey 2014-09-06T14:30:00Z protist: chitofan: you still there? 2014-09-06T14:30:19Z gravicappa quit (Ping timeout: 268 seconds) 2014-09-06T14:30:34Z ejbs: Shaftoe___: Right, so I'm not entirely sure. You'd have to read the ASDF manual for that 2014-09-06T14:30:37Z chitofan: protist: yup, i'm rewriting the code per everybody's advice :) 2014-09-06T14:30:47Z protist: chitofan: take a look, if you want: http://pastebin.com/Pgy1KE9c 2014-09-06T14:30:53Z protist: chitofan: haven't tested 2014-09-06T14:31:03Z Shaftoe___: ejbs: ok. thanks. I shall start. 2014-09-06T14:31:17Z protist: chitofan: but by making the board a list of rows...i defined findings things in every direction in terms of find-right 2014-09-06T14:31:25Z protist: chitofan: but I didn't write find-right 2014-09-06T14:31:36Z Shaftoe___: btw, do you know why there's tumbleweeds blowing across #sbcl ? are the all asleep at this time or? 2014-09-06T14:32:13Z ejbs: Nah, I don't know 2014-09-06T14:32:14Z protist: chitofan: forgot the board argument on one of my /flip-point-horiz/s 2014-09-06T14:32:48Z chitofan: wow, i'm not on a level to read that and understand it without writing every sentence of code down lol 2014-09-06T14:33:00Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-06T14:33:36Z chitofan: but it's close to what i wanted to do 2014-09-06T14:33:44Z protist: chitofan: well hopefully it gives you ideas, even just organization 2014-09-06T14:33:46Z protist: chitofan: :) 2014-09-06T14:33:56Z chitofan: but i would've defined things in find-right/down find-left/up 2014-09-06T14:34:09Z protist: chitofan: oh and my dolist is stupid 2014-09-06T14:34:09Z chitofan: i will study it when i'm done with the core functions :) 2014-09-06T14:34:14Z protist: chitofan: don't need my dolist haha 2014-09-06T14:34:15Z chitofan: this is useful 2014-09-06T14:34:16Z chitofan: thanks! 2014-09-06T14:34:30Z protist: chitofan: you are welcome :) 2014-09-06T14:34:58Z protist: chitofan: be careful with it, it has at least 2 errors I see...just take it as something to think on 2014-09-06T14:36:02Z clop2 quit (Ping timeout: 245 seconds) 2014-09-06T14:36:18Z chitofan: errors help me learn better :) 2014-09-06T14:36:33Z protist: chitofan: good! haha 2014-09-06T14:36:35Z protist: chitofan: keep at it 2014-09-06T14:36:59Z clop2 joined #lisp 2014-09-06T14:38:36Z LiamH quit (Read error: Connection reset by peer) 2014-09-06T14:38:45Z innertracks joined #lisp 2014-09-06T14:39:18Z LiamH joined #lisp 2014-09-06T14:40:29Z alexey joined #lisp 2014-09-06T14:40:31Z yacks quit (Read error: Connection reset by peer) 2014-09-06T14:40:45Z normanrichards quit 2014-09-06T14:41:49Z mhd joined #lisp 2014-09-06T14:41:53Z kpreid joined #lisp 2014-09-06T14:42:50Z PersonX quit (Remote host closed the connection) 2014-09-06T14:45:29Z kanru` joined #lisp 2014-09-06T14:45:37Z mishoo quit (Ping timeout: 245 seconds) 2014-09-06T14:46:11Z protist: what is the opposite of every in Common Lisp? 2014-09-06T14:46:16Z isoraqathedh: notevery? 2014-09-06T14:46:21Z isoraqathedh: Or notany. 2014-09-06T14:46:21Z rme quit (Quit: rme) 2014-09-06T14:46:22Z rme quit (Quit: rme) 2014-09-06T14:46:23Z eudoxia joined #lisp 2014-09-06T14:46:27Z isoraqathedh: It's notany. 2014-09-06T14:46:27Z protist: isoraqathedh: thank you :) 2014-09-06T14:46:37Z protist: kk 2014-09-06T14:46:46Z isoraqathedh: I mean, it depends on what you mean by opposite. 2014-09-06T14:46:56Z protist: guess it depends on your definition of opposite haha 2014-09-06T14:46:58Z protist: yep! 2014-09-06T14:47:08Z yacks joined #lisp 2014-09-06T14:47:09Z protist: i did not mean logical disjunction 2014-09-06T14:47:21Z isoraqathedh: You'd think those words would have hyphens in them but they don't. 2014-09-06T14:47:28Z PersonX joined #lisp 2014-09-06T14:47:31Z isoraqathedh: Probably just a holdover. 2014-09-06T14:47:50Z protist: I meant (every (lamda (x) (not p x)) l) --> (notany p l) 2014-09-06T14:48:51Z isoraqathedh: Ah. 2014-09-06T14:49:22Z drmeister quit (Remote host closed the connection) 2014-09-06T14:50:04Z drmeister joined #lisp 2014-09-06T14:50:04Z husker quit (Remote host closed the connection) 2014-09-06T14:50:22Z husker joined #lisp 2014-09-06T14:50:47Z PersonX quit (Read error: Connection reset by peer) 2014-09-06T14:51:50Z ndrei_ joined #lisp 2014-09-06T14:53:13Z ndrei quit (Ping timeout: 260 seconds) 2014-09-06T14:53:46Z Davidbrcz quit (Ping timeout: 272 seconds) 2014-09-06T14:54:04Z PersonX joined #lisp 2014-09-06T14:55:34Z pnpuff quit (Quit: Lost terminal) 2014-09-06T15:09:52Z ndrei_ quit (Ping timeout: 240 seconds) 2014-09-06T15:11:38Z ndrei joined #lisp 2014-09-06T15:15:10Z jyuan joined #lisp 2014-09-06T15:18:00Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-06T15:18:23Z nell joined #lisp 2014-09-06T15:19:47Z Gavekort joined #lisp 2014-09-06T15:19:52Z ndrei quit (Ping timeout: 240 seconds) 2014-09-06T15:21:56Z Gavekort: Hi. Noobquestion. What is wrong with assigning a variable this way: (let(fetched (nth (position 'pear fruit) fruit))) 2014-09-06T15:22:08Z Gavekort: fruit being (apple, pear, banana, etc) 2014-09-06T15:22:09Z alexey quit (Ping timeout: 260 seconds) 2014-09-06T15:23:13Z ndrei joined #lisp 2014-09-06T15:26:03Z alexey joined #lisp 2014-09-06T15:26:49Z mhd joined #lisp 2014-09-06T15:28:04Z rme joined #lisp 2014-09-06T15:28:14Z beach: Gavekort: To begin with, your LET bindings are nor syntactically correct. 2014-09-06T15:28:14Z beach: 2014-09-06T15:28:48Z beach: Gavekort: It should be (let ((var1 val1) (var2 val2) ... (varn valn)) ...) 2014-09-06T15:29:25Z beach: Gavekort: So if you have a single variable to bind (say FETCHED), it should be (let ((fetched ...)) ...) 2014-09-06T15:29:28Z Gavekort: beach: Thanks. But why var1 and var2 twice? Do you have any examples? 2014-09-06T15:29:51Z beach: (let ((x 10) (y 20)) ...) 2014-09-06T15:30:06Z chitofan: http://paste.lisp.org/display/143630#3 2014-09-06T15:30:07Z isoraqathedh: VaRs and vaLs I think 2014-09-06T15:30:14Z Gavekort: Isn't that what I'm doing? 2014-09-06T15:30:17Z chitofan: if someone could kindly input this chunk of code into their repl 2014-09-06T15:30:28Z chitofan: i get an error that i don't know how to use the debugger to my advantage 2014-09-06T15:30:39Z beach: Gavekort: Count the number of parentheses you have before FETCHED and then count how many I have. 2014-09-06T15:31:03Z chitofan: i get something like 2014-09-06T15:31:09Z chitofan: 0: (CCL::=-2 (2 0) 2) Locals: CCL::X = (2 0) CCL::Y = 2 #:G187235 = 3 2014-09-06T15:31:15Z Gavekort: Let me try it out, thanks beach 2014-09-06T15:31:18Z chitofan: and i don't know what to make out of it 2014-09-06T15:32:15Z Zeedox_ joined #lisp 2014-09-06T15:32:38Z beach: chitofan: That doesn't look like an error message. 2014-09-06T15:32:58Z chitofan: value (2 0) is not of the expected type NUMBER. [Condition of type TYPE-ERROR] 2014-09-06T15:33:06Z chitofan: but i dont know how to use the backtrace to help me 2014-09-06T15:33:15Z wasamasa: chitofan: get out of it then 2014-09-06T15:33:56Z chitofan: oh ok 2014-09-06T15:34:00Z chitofan: i saw my mistake, sorry all 2014-09-06T15:34:00Z beach: chitofan: You are using = to compare lists. 2014-09-06T15:34:07Z beach: chitofan: That won't work. 2014-09-06T15:34:25Z beach: Gavekort: Are you still here? 2014-09-06T15:34:53Z Gavekort: Yup 2014-09-06T15:34:57Z Gavekort: This is what I got now 2014-09-06T15:35:00Z Gavekort: (let((fetched (nth (position 'pear fruit) fruit)))) 2014-09-06T15:35:02Z Gavekort: (format t "Fetched is ~a" fetched) 2014-09-06T15:35:08Z Gavekort: Fetched is unbound though 2014-09-06T15:35:13Z beach: Gavekort: LET does not assign variables. It BINDS them so that they are available in the body of the LET. Your LET does not have a body. 2014-09-06T15:35:24Z Gavekort: Oooh 2014-09-06T15:35:39Z beach: Gavekort: You need to put the FORMAT in the body of the LET. Not after it. 2014-09-06T15:35:51Z Gavekort: (let((fetched (nth (position 'pear fruit) fruit))) 2014-09-06T15:35:53Z Gavekort: (format t "Fetched is ~a" fetched)) 2014-09-06T15:35:55Z Gavekort: There we go! 2014-09-06T15:35:58Z Gavekort: Looks good_ 2014-09-06T15:36:00Z Gavekort: ? 2014-09-06T15:36:25Z beach: Except for your incorrect spacing, yes, it looks better. 2014-09-06T15:36:36Z isoraqathedh: You 'd want to push in your (format) two spaces inward. 2014-09-06T15:36:47Z isoraqathedh: If you have Emacs as your editor, pressing ‹tab› should do the job nicely. 2014-09-06T15:36:50Z beach: Put a space before the first `(' in a group, so (let ((... 2014-09-06T15:37:11Z ggole: (nth (position ... list) list) is a bit dubious, but I suppose this is just an exercise 2014-09-06T15:37:24Z Gavekort: (let ((fetched (nth (position 'pear fruit) fruit))) 2014-09-06T15:37:27Z Gavekort: (format t "Fetched is ~a" fetched)) 2014-09-06T15:37:31Z Gavekort: Better? 2014-09-06T15:37:42Z beach: only 2 spaces. 2014-09-06T15:37:52Z Gavekort: before (format ? 2014-09-06T15:37:53Z beach: Indentation, that is. 2014-09-06T15:37:57Z beach: Yes. 2014-09-06T15:38:01Z Vutral quit (Ping timeout: 260 seconds) 2014-09-06T15:38:04Z Gavekort: I just pressed tab once 2014-09-06T15:38:05Z isoraqathedh: Tab anywhere on the line to fix it, that is. 2014-09-06T15:38:12Z zophy: hi 2014-09-06T15:38:20Z Gavekort: I'm using emacs+slime 2014-09-06T15:38:32Z zophy: i like slime 2014-09-06T15:38:37Z killmaster quit (Ping timeout: 245 seconds) 2014-09-06T15:38:40Z beach: Gavekort: OK, don't worry about it. We'll see it better when you use lisppaste. 2014-09-06T15:39:00Z zophy: i wish there was a ghostbuster connection to slime 2014-09-06T15:39:05Z Gavekort: Ah ok 2014-09-06T15:39:21Z Gavekort: I'm more of a vim-guy really, but emacs and slime is great for lisp 2014-09-06T15:39:38Z wasamasa: well, there's slimv for vim I've heard 2014-09-06T15:40:04Z Gavekort: Interesting *googling slimv* 2014-09-06T15:40:12Z nisstyre quit (Quit: WeeChat 1.0) 2014-09-06T15:40:16Z killmaster joined #lisp 2014-09-06T15:40:20Z shka: eeeh 2014-09-06T15:40:29Z nisstyre joined #lisp 2014-09-06T15:40:39Z shka: how do we escape # from strings? 2014-09-06T15:40:45Z shka: \\? 2014-09-06T15:40:48Z Gavekort: Lisp is also my first functional programming language, so it's a bit of a leap for me this whole thing. Haha 2014-09-06T15:41:00Z shka: Gavekort: actually lisp is not functional 2014-09-06T15:41:06Z Gavekort: No? 2014-09-06T15:41:07Z beach: Gavekort: Sorry to disappoint you, but Lisp is not a functional language. 2014-09-06T15:41:22Z shka: it just happens to work best with functional style 2014-09-06T15:41:31Z beach: shka: What does it mean to "escape # from a string"? 2014-09-06T15:41:32Z shka: but it is true to many other languages 2014-09-06T15:42:01Z beach: shka: It works best with CLOS-style object orientation actually. 2014-09-06T15:42:03Z davorb quit (Ping timeout: 246 seconds) 2014-09-06T15:42:13Z davorb1 joined #lisp 2014-09-06T15:42:23Z shka: beach: i'm trying to setf string to a symbol, but compiler complains about the unreaded octet string 2014-09-06T15:42:26Z isoraqathedh: Haskell and (maybe) Scheme are more functional. 2014-09-06T15:42:30Z isoraqathedh: Scheme is also a Lisp. 2014-09-06T15:42:40Z shka: some also like ml 2014-09-06T15:43:04Z Gavekort: Found this: http://letoverlambda.com/index.cl/guest/chap5.html 2014-09-06T15:43:09Z isoraqathedh: Try |#|? 2014-09-06T15:43:10Z ejbs: shka: What's the code? 2014-09-06T15:43:14Z nisstyre quit (Client Quit) 2014-09-06T15:43:16Z beach: shka: You are not making sense. First you want to "escape # from a string", then you want to "setf a string to a symbol". 2014-09-06T15:43:26Z nisstyre joined #lisp 2014-09-06T15:43:37Z alexey quit (Ping timeout: 260 seconds) 2014-09-06T15:43:37Z shka: beach: sorry, i just want to bind string to a symbol 2014-09-06T15:43:43Z beach: shka: And the latter is supposed to be an elaboration of the first. 2014-09-06T15:43:51Z beach: shka: You bind variables to values. 2014-09-06T15:43:54Z gravicappa joined #lisp 2014-09-06T15:43:57Z beach: shka: Not strings to symbols. 2014-09-06T15:44:00Z attila_lendvai quit (Quit: Leaving.) 2014-09-06T15:44:30Z nisstyre quit (Client Quit) 2014-09-06T15:44:55Z beach: shka: So "escaping # from a string", "setf a string to a symbol", and "bind a string to a symbol" are supposed to be the same thing? 2014-09-06T15:44:57Z test1600 joined #lisp 2014-09-06T15:45:12Z shka: http://paste.lisp.org/display/143631 2014-09-06T15:45:14Z shka: beach: this 2014-09-06T15:45:19Z shka: does not work 2014-09-06T15:45:24Z sprang quit (Remote host closed the connection) 2014-09-06T15:45:48Z shka: because the octet sequence #(197) cannot be decoded. 2014-09-06T15:45:49Z isoraqathedh: You're forgetting to escape ". 2014-09-06T15:45:57Z isoraqathedh: content: ".". 2014-09-06T15:46:05Z shka: isoraqathedh: great, thanks 2014-09-06T15:46:10Z nisstyre joined #lisp 2014-09-06T15:46:19Z isoraqathedh: Strings only need to have " and \ escaped. Nothing else needs to. 2014-09-06T15:46:20Z lagging_troll joined #lisp 2014-09-06T15:46:50Z isoraqathedh: Also, just a quick note – the string you put on has a lot of left margin. 2014-09-06T15:46:54Z isoraqathedh: It'd look like 2014-09-06T15:47:07Z isoraqathedh: html { 2014-09-06T15:47:07Z isoraqathedh: font-family: ‹blah› ‹etc› 2014-09-06T15:47:19Z shka: isoraqathedh: i know, just copy paste ;-) 2014-09-06T15:49:03Z vaporatorius quit (Quit: Leaving) 2014-09-06T15:52:11Z Shaftoe___: pkhuong: http://paste.lisp.org/display/143632 2014-09-06T15:53:11Z protist: does dot as a function name have any known conflicts? 2014-09-06T15:53:24Z protist: I just produced one of the most useful higher order functions ever 2014-09-06T15:53:29Z protist: didn't invent it 2014-09-06T15:53:38Z protist: but implemented 2014-09-06T15:53:46Z protist: at least for math it is awesome 2014-09-06T15:53:54Z protist: the dyadic dot operator from APL 2014-09-06T15:54:07Z drmeister quit (Remote host closed the connection) 2014-09-06T15:54:19Z drmeister joined #lisp 2014-09-06T15:54:51Z ejbs: protist: dot or . ? 2014-09-06T15:54:57Z protist: you can use it to make matrix multiplication like this (dot #'+ #'*) 2014-09-06T15:54:58Z ejbs: cuz . is a big no no 2014-09-06T15:55:04Z protist: `dot' haha 2014-09-06T15:55:25Z isoraqathedh: |.| works but it's ugly. 2014-09-06T15:55:47Z protist: you can use it to analyze pipe flow matrices like (dot #'+ #'-) (I don't know the math behind it) 2014-09-06T15:56:06Z protist: and you can use some logic operators to analyze adjacency matrices etc etc 2014-09-06T15:56:43Z isoraqathedh: Oh no, this is advanced maths. 2014-09-06T15:56:45Z protist: isoraqathedh: is a thought...might stick with dot unless it is used a lot 2014-09-06T15:57:01Z protist: isoraqathedh: the point is it is general and awesome :P 2014-09-06T15:58:03Z isoraqathedh: Yeah… but it's like handing me the LHC: it's very powerful, but I don't know how powerful and I don't know how to use it. 2014-09-06T15:58:09Z schaueho quit (Ping timeout: 264 seconds) 2014-09-06T15:58:50Z ejbs: protist: dyadic-dot? 2014-09-06T15:58:53Z protist: isoraqathedh: read Kenneth Iverson's Turing award winning Notation as a Tool of Thought to see it in action 2014-09-06T15:58:56Z protist: ejbs: yes 2014-09-06T15:59:08Z protist: ejbs: oh suggesting a name? 2014-09-06T16:00:34Z Vutral joined #lisp 2014-09-06T16:01:05Z protist: i have the caffiene/nicotine shivers going...should sleep soon lol 2014-09-06T16:02:20Z hiroakip joined #lisp 2014-09-06T16:04:02Z clop2 quit (Ping timeout: 252 seconds) 2014-09-06T16:06:01Z protist: ah it is called the inner product operator apparently 2014-09-06T16:07:36Z Ven joined #lisp 2014-09-06T16:11:20Z Vutral_ joined #lisp 2014-09-06T16:12:28Z impulse joined #lisp 2014-09-06T16:14:31Z Gavekort: Can I use setq to make lists within lists? like '((foo bar) (baz qux)) 2014-09-06T16:14:56Z innertracks quit (Remote host closed the connection) 2014-09-06T16:16:16Z clop2 joined #lisp 2014-09-06T16:17:49Z shka: Gavekort: something like (setf some-list (list (list foo bar) (list baz qux)))? 2014-09-06T16:18:09Z ggole: setq is just assignment, it doesn't itself have anything to do with constructing values 2014-09-06T16:18:31Z Gavekort: So I should use setf, not setq? 2014-09-06T16:18:35Z shka: Gavekort: no 2014-09-06T16:18:46Z shka: Gavekort: it is not like that 2014-09-06T16:18:47Z ggole: setf is a more general mechanism for assignment 2014-09-06T16:18:48Z a20140906 joined #lisp 2014-09-06T16:18:57Z shka: look, this is not creation 2014-09-06T16:19:01Z shka: list creates list 2014-09-06T16:19:08Z shka: and setf assign values 2014-09-06T16:19:14Z ggole: You can use either (I prefer to use the more specific form, but people disagree on that). 2014-09-06T16:19:15Z Gavekort: I see 2014-09-06T16:19:22Z jyuan quit (Ping timeout: 245 seconds) 2014-09-06T16:19:47Z ggole: But yes, setf vs setq also has no bearing on creating values 2014-09-06T16:20:19Z shka: Gavekort: so what exactly you were asking? 2014-09-06T16:20:39Z EvW quit (Quit: EvW) 2014-09-06T16:20:42Z vowyer joined #lisp 2014-09-06T16:21:31Z Gavekort: I need a list that looks like this: '((foo bar) (baz qux)) 2014-09-06T16:21:49Z Gavekort: The content of the list should be static 2014-09-06T16:22:11Z Gavekort: As in: I will hardcode them 2014-09-06T16:22:31Z ggole: You seem to have mastered most of it already. 2014-09-06T16:22:55Z ggole: Replace foo, bar, etc with what you want 2014-09-06T16:23:08Z shka: Gavekort: ok, this is any global (dynamic) scoped? 2014-09-06T16:23:09Z Gavekort: So with my lack of knowledge I was hoping this would work (setq mylist '((foo bar) (baz qux))) 2014-09-06T16:23:32Z pt1 joined #lisp 2014-09-06T16:23:39Z Gavekort: It's just a tutorial, so I thought global variables would be fine 2014-09-06T16:23:43Z shka: Gavekort: ah! 2014-09-06T16:23:48Z ggole: You might need to bind mylist first 2014-09-06T16:23:50Z shka: try that 2014-09-06T16:24:05Z ggole: Er, define, rather 2014-09-06T16:24:11Z shka: (defvar mylist '((foo bar) (baz qux))) 2014-09-06T16:24:15Z vowyer quit (Client Quit) 2014-09-06T16:24:33Z shka: Gavekort: the problem is, you are confusing purpose of setf 2014-09-06T16:24:37Z shka: or setf 2014-09-06T16:24:39Z shka: *setq 2014-09-06T16:24:55Z shka can't type setq even when he really wants :P 2014-09-06T16:25:09Z shka: setf is just for assingment 2014-09-06T16:25:28Z shka: not for declaring new variables or creation of lists 2014-09-06T16:25:32Z Gavekort: So setq/setf will only assign, but isn't anything with '() automatically a list in lisp_ 2014-09-06T16:25:35Z Gavekort: ? 2014-09-06T16:25:47Z Gavekort: (setq fruit '(apple orange pear lemon)) 2014-09-06T16:25:49Z Gavekort: Worked fine 2014-09-06T16:26:06Z shka: Gavekort: but did you declared fruit first? 2014-09-06T16:26:18Z Gavekort: It's on the top of my code, so I doubt it 2014-09-06T16:26:22Z ggole: assignment isn't really related to lists 2014-09-06T16:26:45Z Gavekort: So is (setq fruit '(apple orange pear lemon)) wrongish too? 2014-09-06T16:27:12Z ggole: It's not wrong (so long as fruit has been defined), you just have to understand what it does 2014-09-06T16:28:02Z shka: Gavekort: what error do you have when trying to setq mylist? 2014-09-06T16:28:04Z Gavekort: Fruit is giving me a bunch of warnings though, so I don't think it's defined. Hahah 2014-09-06T16:28:21Z shka: Gavekort: reading errors helps :) 2014-09-06T16:28:24Z ggole: Before you can setq a global variable, you should declare it with defvar. 2014-09-06T16:28:32Z ggole: (defvar fruit) (setq fruit '(...)) 2014-09-06T16:29:44Z francogrex joined #lisp 2014-09-06T16:29:59Z Gavekort: Gotcha. At first it wouldn't load the code, but now it seems different, and something is happening 2014-09-06T16:30:34Z Gavekort: There be lispgremlings in my code 2014-09-06T16:31:05Z shka: Gavekort: maybe paste your code to the pastebin? 2014-09-06T16:32:03Z DrCode quit (Ping timeout: 264 seconds) 2014-09-06T16:32:43Z Gavekort: https://pastee.org/zh8vf 2014-09-06T16:32:55Z Gavekort: I think fruit2 is fine now 2014-09-06T16:33:26Z cy joined #lisp 2014-09-06T16:33:34Z Gavekort: Although calling (fruit) doesn't work. Should it? 2014-09-06T16:33:53Z hiroakip quit (Ping timeout: 276 seconds) 2014-09-06T16:34:22Z kanru` quit (Ping timeout: 240 seconds) 2014-09-06T16:34:55Z chitofan quit (Ping timeout: 246 seconds) 2014-09-06T16:35:08Z a20140906: Gavekort: take the parenthesis off 2014-09-06T16:35:12Z a20140906: fruit should work 2014-09-06T16:35:27Z ggole: Things have to be functions to call them. 2014-09-06T16:35:29Z a20140906: (fruit) would call the function fruit 2014-09-06T16:35:41Z shka: Gavekort: there is problem in different place 2014-09-06T16:35:59Z Gavekort: a20140906 | (fruit) would call the function fruit 2014-09-06T16:36:01Z Gavekort: I see 2014-09-06T16:36:06Z Gavekort: just fruit worked fine 2014-09-06T16:36:06Z a20140906: you want to derefenrece (get the value) of a variable, so simply typing fruit (after defined and assinged) should cause the evaluator to spit out its value 2014-09-06T16:36:15Z a20140906: cool 2014-09-06T16:36:22Z DrCode joined #lisp 2014-09-06T16:36:33Z shka: Gavekort: btw 2014-09-06T16:36:44Z shka: Gavekort: maybe you should know about elt 2014-09-06T16:36:51Z nydel: morning all 2014-09-06T16:37:00Z shka: it is like setf vs setq 2014-09-06T16:37:02Z Gavekort: I've heard of it, barely. 2014-09-06T16:37:05Z shka: (elt is more generic) 2014-09-06T16:37:33Z shka: also 2014-09-06T16:37:46Z shka: i belive that instead of this position stuff 2014-09-06T16:37:47Z protist quit (Quit: Konversation terminated!) 2014-09-06T16:37:54Z a20140906: nydel: morning to you 2014-09-06T16:37:58Z shka: you really want to simply use find 2014-09-06T16:38:05Z shka: nydel: good morning sir 2014-09-06T16:38:24Z Gavekort: Yeah. All this position-stuff is really dragged out of thin air 2014-09-06T16:38:38Z shka: http://jtra.cz/stuff/lisp/sclr/find.html 2014-09-06T16:38:51Z Gavekort: I could add a method using find underneath, just so that I have both 2014-09-06T16:39:02Z ggole: Gavekort: I get the impression that you are recompiling and loading this code every time that you change it 2014-09-06T16:39:09Z Gavekort: Or above, since it's probably a more correct way of doing it 2014-09-06T16:39:17Z shka: yeah, just bare in mind that using position and nth like you do is inneficient 2014-09-06T16:39:27Z Gavekort: ggole: You read my mind 2014-09-06T16:39:40Z ggole: So... why not use the repl? 2014-09-06T16:39:48Z ggole: That's the easiest way to try bits of code out 2014-09-06T16:39:58Z Gavekort: Because I'm a really, really fresh noob 2014-09-06T16:40:13Z shka: Gavekort: that's ok -- do you use emacs with slime? 2014-09-06T16:40:19Z Gavekort: Yup 2014-09-06T16:40:29Z shka: ok, that's good enough 2014-09-06T16:40:37Z zophy quit (Ping timeout: 245 seconds) 2014-09-06T16:40:39Z Gavekort: I have like 10 mins of experience with lisp. :D 2014-09-06T16:40:40Z alexey joined #lisp 2014-09-06T16:40:44Z shka: do you know about C-c C-l? 2014-09-06T16:41:10Z Gavekort: Yup. Compile and load? 2014-09-06T16:41:39Z shka: yeah 2014-09-06T16:41:49Z shka: so you are good to go 2014-09-06T16:42:08Z Gavekort: If I use defvar, is it in a global scope? 2014-09-06T16:42:10Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-06T16:42:22Z shka: Gavekort: kinda 2014-09-06T16:42:30Z shka: it is called "dynamic" scope 2014-09-06T16:42:41Z shka: but it works almost as a global scope 2014-09-06T16:43:05Z Gavekort: Inside my defun with my position-stuff it is nagging that fruit is undefined 2014-09-06T16:43:37Z Gavekort: I have put defvar in the top of my code 2014-09-06T16:44:04Z kobain joined #lisp 2014-09-06T16:44:33Z shka: Gavekort: to be honest i have no idea how to use format, so i can't help :P 2014-09-06T16:44:43Z ejbs: Gavekort: Have you compiled/eval:d the defvar? 2014-09-06T16:44:52Z shka: btw, do you use any book? 2014-09-06T16:45:01Z ejbs: btw, standard is to *surround* special variables with stars 2014-09-06T16:45:33Z shka: i just want to add that *convention* is quite important 2014-09-06T16:45:44Z shka: you will soon find out why 2014-09-06T16:45:52Z shka: well, any standard would work 2014-09-06T16:45:59Z shka: but ** are most common 2014-09-06T16:47:46Z drmeiste_ joined #lisp 2014-09-06T16:49:17Z ejbs: Gavekort: The easiest way to think about lexical dynamic variables is how functions look them up. Functions look up dynamic variables where the function is called, lexical from where the function is defined. 2014-09-06T16:49:24Z ejbs: lexical vs dynamic * 2014-09-06T16:50:55Z korqio joined #lisp 2014-09-06T16:52:26Z francogrex quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-06T16:54:10Z drmeister quit (Remote host closed the connection) 2014-09-06T16:54:37Z nydel: simulating dealing deck of cards using (random 52) ... what'll be a good way to see to it that duplicates don't occur? 2014-09-06T16:54:45Z drmeister joined #lisp 2014-09-06T16:55:34Z p_l: nydel: hashtable with numeric key? 2014-09-06T16:55:58Z nydel: p_l: that's where i'm going, thanks. recursive or iterate? 2014-09-06T16:56:36Z p_l: doesn't really matter, IMO 2014-09-06T16:57:52Z pt1 quit (Remote host closed the connection) 2014-09-06T16:57:59Z nydel: i feel like one way, probably recur, lets me check the table less frequently 2014-09-06T16:58:27Z DrCode quit (Ping timeout: 264 seconds) 2014-09-06T16:58:56Z ndrei quit (Ping timeout: 268 seconds) 2014-09-06T16:59:15Z blakbunnie27 quit (Ping timeout: 255 seconds) 2014-09-06T16:59:27Z p_l: nydel: not really. Also, a great trick is to check for existence of key in the table instead of storing anything meaningful in it, IMO 2014-09-06T17:00:12Z nydel: just see if "1" is there, not pull a value off it you mean? 2014-09-06T17:01:27Z Adlai quit (Ping timeout: 264 seconds) 2014-09-06T17:01:45Z p_l: nydel: I've did some code once which stored a "t" under the key, and checked if anything was returned on checking a key 2014-09-06T17:03:41Z nydel: that's a whole new way to use hash tables for me, real cool p_l 2014-09-06T17:06:30Z DrCode joined #lisp 2014-09-06T17:07:25Z wasamasa: nydel: there are some project euler solutions that abuse the keys of hash tables as faster lists :P 2014-09-06T17:09:04Z antonv joined #lisp 2014-09-06T17:09:57Z p_l: http://paste.lisp.org/display/143634 2014-09-06T17:10:03Z p_l: have an example of using "just keys" 2014-09-06T17:10:54Z p_l: possibly overengineered it a little, but it originates from code that was supposed to check a ... much bigger set ;) 2014-09-06T17:11:06Z Maurice_TCF joined #lisp 2014-09-06T17:11:07Z p_l: essentially this abuses a hashtable to be a "set" 2014-09-06T17:12:07Z oGMo: does slime 2.9 have issues with detecting in-package? it _says_ the right package but *package* is always common-lisp-user 2014-09-06T17:12:34Z Adlai joined #lisp 2014-09-06T17:12:38Z oGMo: actually, hrm 2014-09-06T17:13:09Z pjb: Type: C-x C-f /tmp/a.lisp RET (in-package :keyword) cl:*package* C-x C-e (in-package :cl-user) *package* C-x C-e 2014-09-06T17:13:40Z oGMo: right, *package* is wrong when eval'd 2014-09-06T17:14:43Z pjb: That's funny, because otherwise, things are read and interned in the right package. 2014-09-06T17:15:14Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-06T17:15:21Z oGMo: right, in fact, "hovering" the cursor to see a variable value etc is correct, just eval is wrong 2014-09-06T17:15:43Z Maurice_TCF quit (Client Quit) 2014-09-06T17:15:51Z jyuan joined #lisp 2014-09-06T17:15:55Z pjb: I guess it's related to swank:*default-worker-thread-bindings* SWANK:*MACROEXPAND-PRINTER-BINDINGS* SWANK::*INSPECTOR-VERBOSE-PRINTER-BINDINGS* SWANK::*INSPECTOR-PRINTER-BINDINGS* and swank::*backtrace-printer-bindings* 2014-09-06T17:16:31Z pjb left #lisp 2014-09-06T17:16:39Z pjb joined #lisp 2014-09-06T17:16:42Z oGMo: doh 2014-09-06T17:16:45Z Maurice_TCF joined #lisp 2014-09-06T17:16:53Z oGMo: but dunno, restarting everything with master 2014-09-06T17:17:48Z ustunozgur quit (Remote host closed the connection) 2014-09-06T17:18:18Z oGMo: seems ok after a restart and update so works for me heh 2014-09-06T17:18:46Z oGMo: ..i lied, *package* is still always cl-user 2014-09-06T17:20:24Z jyuan quit (Ping timeout: 246 seconds) 2014-09-06T17:20:53Z jleija joined #lisp 2014-09-06T17:22:25Z resttime joined #lisp 2014-09-06T17:22:38Z ejbs` joined #lisp 2014-09-06T17:22:56Z lpaste: nydel pasted “(draw 10) ;tarot cards for a reading” at http://lpaste.net/110612 2014-09-06T17:23:09Z nydel: p_l: have i done this right? 2014-09-06T17:23:10Z edgar-rft quit (Quit: conversation closed because existence stopped) 2014-09-06T17:23:53Z eudoxia quit (Quit: leaving) 2014-09-06T17:23:58Z MouldyOldBones joined #lisp 2014-09-06T17:24:20Z ejbs quit (Ping timeout: 252 seconds) 2014-09-06T17:24:53Z Bike: whoa, lisppaste is on irc again? 2014-09-06T17:25:45Z nydel: lambda paste. i didn't know if it was connected, just needed a bin (tx0 is private at the sdf for a minute) 2014-09-06T17:26:05Z p_l: nydel: replace (hand '()) with (hand (list)) 2014-09-06T17:26:11Z Bike: oh, i see. 2014-09-06T17:26:49Z nydel: p_l: right, what in the hell am i calling quote for. 2014-09-06T17:27:03Z Harag quit (Ping timeout: 246 seconds) 2014-09-06T17:27:06Z p_l: nydel: while your code worked without that here, I've been bitten by surprises like editing literals used in LET before... 2014-09-06T17:27:41Z alexey quit (Remote host closed the connection) 2014-09-06T17:27:59Z vinleod quit (Quit: Computer has gone to sleep.) 2014-09-06T17:28:05Z p_l: it was very interesting when debugging finally gave me the answer of "you just overwrote function header, that's why it only works once" 2014-09-06T17:28:07Z nydel: i can scope them globally actually, there's only one going on at a time. what about the hash table? 2014-09-06T17:28:15Z p_l: nydel: it's fine 2014-09-06T17:28:41Z nydel: thanks p_l. 2014-09-06T17:28:49Z nydel: time to write the same thing using statistics! woo 2014-09-06T17:29:04Z nydel: love me some saturday morning. 2014-09-06T17:29:06Z p_l: nydel: with literals it's possible to end up modifying the function so that next call of the function has different "constant" 2014-09-06T17:29:44Z p_l: so I try to avoid any literals in LET that aren't bound to what will be a constant 2014-09-06T17:29:54Z oGMo: weird, so apparently change a binding in slime-mode-map breaks things 2014-09-06T17:30:15Z oGMo: aha. 2014-09-06T17:31:11Z Davidbrcz joined #lisp 2014-09-06T17:31:33Z Davidbrcz quit (Remote host closed the connection) 2014-09-06T17:32:20Z nydel: noted. actually now i'm running sbcl on blinkenshell.org where i only have 32mb ram, putting a bunch of literals into lets. 2014-09-06T17:32:58Z Xach: Shaftoe___: don't remember, sorry. 2014-09-06T17:34:24Z drmeister quit (Remote host closed the connection) 2014-09-06T17:34:40Z drmeister joined #lisp 2014-09-06T17:37:12Z Emin_ joined #lisp 2014-09-06T17:37:52Z edgar-rft joined #lisp 2014-09-06T17:37:54Z hitecnologys quit (Quit: hitecnologys) 2014-09-06T17:39:46Z nydel quit (Remote host closed the connection) 2014-09-06T17:41:04Z Grue` quit (Remote host closed the connection) 2014-09-06T17:42:53Z nydel joined #lisp 2014-09-06T17:43:39Z nydel quit (Client Quit) 2014-09-06T17:44:57Z nydel joined #lisp 2014-09-06T17:45:19Z ndrei joined #lisp 2014-09-06T17:47:13Z stacksmith joined #lisp 2014-09-06T17:47:38Z stacksmith: beach: are you around? 2014-09-06T17:51:25Z Gavekort: shka/ejbs: Thanks for the help 2014-09-06T17:51:29Z ejbs` quit (Ping timeout: 260 seconds) 2014-09-06T17:51:56Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-06T17:53:28Z nydel joined #lisp 2014-09-06T17:59:34Z strg joined #lisp 2014-09-06T18:01:17Z Vutral quit (Ping timeout: 260 seconds) 2014-09-06T18:01:19Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-06T18:02:08Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T18:04:25Z stacksmith: Does anyone know what the deal is with mcclim-truetype? The only mention of it in mcclim is in the changelog... 2014-09-06T18:05:49Z vinleod joined #lisp 2014-09-06T18:06:57Z ndrei quit (Ping timeout: 245 seconds) 2014-09-06T18:06:58Z mishoo joined #lisp 2014-09-06T18:09:05Z ndrei joined #lisp 2014-09-06T18:10:31Z wheelsucker joined #lisp 2014-09-06T18:11:24Z mhd quit (Ping timeout: 183 seconds) 2014-09-06T18:11:33Z nydel joined #lisp 2014-09-06T18:11:57Z vinleod quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-06T18:12:10Z mhd quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-06T18:13:39Z stacksmith: asdf question: can I just add a (:directory "...") to my ../source-registry.conf.d/xx.conf file? It already has a (:tree ...) form. 2014-09-06T18:17:14Z antonv quit (Ping timeout: 276 seconds) 2014-09-06T18:18:27Z Vutral joined #lisp 2014-09-06T18:19:19Z husker quit (Remote host closed the connection) 2014-09-06T18:19:43Z husker joined #lisp 2014-09-06T18:20:19Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-06T18:23:44Z Vutral_ quit (Ping timeout: 252 seconds) 2014-09-06T18:24:12Z drmeiste_ joined #lisp 2014-09-06T18:26:17Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T18:27:23Z nydel quit (Remote host closed the connection) 2014-09-06T18:28:54Z nydel joined #lisp 2014-09-06T18:32:03Z hiroakip joined #lisp 2014-09-06T18:33:46Z Vutral quit (Excess Flood) 2014-09-06T18:34:15Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-06T18:34:27Z drmeister quit (Remote host closed the connection) 2014-09-06T18:35:22Z drmeister joined #lisp 2014-09-06T18:39:19Z pgomes joined #lisp 2014-09-06T18:39:28Z defaultxr joined #lisp 2014-09-06T18:40:02Z oleo__ quit (Quit: Verlassend) 2014-09-06T18:40:19Z drmeiste_ joined #lisp 2014-09-06T18:41:00Z Vutral joined #lisp 2014-09-06T18:43:19Z nydel joined #lisp 2014-09-06T18:43:52Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T18:44:13Z clop2 quit (Ping timeout: 260 seconds) 2014-09-06T18:44:57Z resttime quit (Quit: resttime) 2014-09-06T18:46:12Z Vutral quit (Excess Flood) 2014-09-06T18:46:17Z drmeiste_ joined #lisp 2014-09-06T18:46:27Z nand1 quit (Remote host closed the connection) 2014-09-06T18:46:42Z pgomes quit (Quit: Leaving) 2014-09-06T18:47:01Z pgomes joined #lisp 2014-09-06T18:47:28Z hiroakip quit (Ping timeout: 268 seconds) 2014-09-06T18:48:22Z ndrei quit (Ping timeout: 240 seconds) 2014-09-06T18:48:44Z husker quit (Quit: husker) 2014-09-06T18:49:43Z husker joined #lisp 2014-09-06T18:51:32Z a20140906 quit (Quit: Page closed) 2014-09-06T18:51:58Z a20190906 joined #lisp 2014-09-06T18:53:54Z Vutral joined #lisp 2014-09-06T18:54:18Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T18:56:23Z blakbunnie27 joined #lisp 2014-09-06T18:57:15Z drmeiste_ joined #lisp 2014-09-06T18:57:16Z ndrei joined #lisp 2014-09-06T18:57:26Z clop2 joined #lisp 2014-09-06T18:59:47Z husker quit (Quit: husker) 2014-09-06T18:59:53Z oleo joined #lisp 2014-09-06T19:01:47Z hiroakip joined #lisp 2014-09-06T19:05:14Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T19:05:24Z nydel: [M / 2014-09-06T19:05:51Z drmeiste_ joined #lisp 2014-09-06T19:08:30Z dim: stacksmith: yes, and you can also create another file in there too 2014-09-06T19:10:25Z Tuxedo joined #lisp 2014-09-06T19:10:32Z aftersha_ joined #lisp 2014-09-06T19:10:39Z jtza8 quit (Remote host closed the connection) 2014-09-06T19:11:58Z Kruppe quit (Ping timeout: 252 seconds) 2014-09-06T19:11:58Z aftershave quit (Ping timeout: 252 seconds) 2014-09-06T19:11:59Z drmeiste_ quit (Ping timeout: 252 seconds) 2014-09-06T19:11:59Z Tuxedo_ quit (Ping timeout: 252 seconds) 2014-09-06T19:11:59Z hiroakip quit (Ping timeout: 252 seconds) 2014-09-06T19:11:59Z pjb quit (Ping timeout: 252 seconds) 2014-09-06T19:12:33Z Krystof quit (Ping timeout: 252 seconds) 2014-09-06T19:13:00Z pgomes quit (Quit: Leaving) 2014-09-06T19:13:47Z cy quit (Ping timeout: 252 seconds) 2014-09-06T19:13:47Z s_e quit (Ping timeout: 252 seconds) 2014-09-06T19:14:45Z drmeiste_ joined #lisp 2014-09-06T19:15:04Z kanru quit (Ping timeout: 252 seconds) 2014-09-06T19:15:27Z s_e joined #lisp 2014-09-06T19:16:47Z edgar-rft quit (*.net *.split) 2014-09-06T19:16:47Z eigenlicht_ quit (*.net *.split) 2014-09-06T19:16:48Z vlnx quit (*.net *.split) 2014-09-06T19:16:48Z Patzy quit (*.net *.split) 2014-09-06T19:16:48Z Longlius quit (*.net *.split) 2014-09-06T19:16:48Z wooden quit (*.net *.split) 2014-09-06T19:16:48Z zarul quit (*.net *.split) 2014-09-06T19:16:48Z njsg quit (*.net *.split) 2014-09-06T19:16:48Z mindCrime_ quit (*.net *.split) 2014-09-06T19:16:48Z jayne quit (*.net *.split) 2014-09-06T19:16:48Z tstc` quit (*.net *.split) 2014-09-06T19:16:48Z White_Flame quit (*.net *.split) 2014-09-06T19:16:48Z gensym quit (*.net *.split) 2014-09-06T19:16:48Z teiresias quit (*.net *.split) 2014-09-06T19:16:48Z setheus quit (*.net *.split) 2014-09-06T19:16:48Z __main__ quit (*.net *.split) 2014-09-06T19:16:48Z schoppenhauer quit (*.net *.split) 2014-09-06T19:16:48Z Jubb quit (*.net *.split) 2014-09-06T19:16:49Z stoned quit (*.net *.split) 2014-09-06T19:17:02Z stoned joined #lisp 2014-09-06T19:17:05Z innertracks joined #lisp 2014-09-06T19:17:31Z _main_ joined #lisp 2014-09-06T19:19:08Z Karl_Dscc quit (Remote host closed the connection) 2014-09-06T19:19:46Z ndrei quit (Ping timeout: 272 seconds) 2014-09-06T19:20:30Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T19:21:47Z _main_ is now known as __main__ 2014-09-06T19:21:48Z setheus joined #lisp 2014-09-06T19:22:17Z wooden joined #lisp 2014-09-06T19:22:17Z wooden quit (Changing host) 2014-09-06T19:22:17Z wooden joined #lisp 2014-09-06T19:22:27Z vlnx joined #lisp 2014-09-06T19:22:50Z njsg joined #lisp 2014-09-06T19:23:24Z attila_lendvai joined #lisp 2014-09-06T19:23:24Z attila_lendvai quit (Changing host) 2014-09-06T19:23:24Z attila_lendvai joined #lisp 2014-09-06T19:25:13Z nand1 joined #lisp 2014-09-06T19:28:28Z alexey joined #lisp 2014-09-06T19:29:03Z rme quit (Quit: rme) 2014-09-06T19:29:03Z rme quit (Quit: rme) 2014-09-06T19:29:17Z edgar-rft joined #lisp 2014-09-06T19:29:17Z eigenlicht_ joined #lisp 2014-09-06T19:29:17Z Patzy joined #lisp 2014-09-06T19:29:17Z Longlius joined #lisp 2014-09-06T19:29:17Z mindCrime_ joined #lisp 2014-09-06T19:29:17Z jayne joined #lisp 2014-09-06T19:29:17Z tstc` joined #lisp 2014-09-06T19:29:17Z White_Flame joined #lisp 2014-09-06T19:29:17Z gensym joined #lisp 2014-09-06T19:29:17Z teiresias joined #lisp 2014-09-06T19:29:17Z schoppenhauer joined #lisp 2014-09-06T19:29:17Z Jubb joined #lisp 2014-09-06T19:30:34Z David___ joined #lisp 2014-09-06T19:32:05Z David___ left #lisp 2014-09-06T19:32:07Z zarul joined #lisp 2014-09-06T19:32:42Z alexey quit (Ping timeout: 246 seconds) 2014-09-06T19:32:52Z thierrygar joined #lisp 2014-09-06T19:37:16Z pierre1_ joined #lisp 2014-09-06T19:37:45Z drmeister quit (Remote host closed the connection) 2014-09-06T19:37:58Z drmeister joined #lisp 2014-09-06T19:39:05Z ARM9 joined #lisp 2014-09-06T19:40:41Z PersonX quit (Ping timeout: 260 seconds) 2014-09-06T19:43:37Z spacebat quit (Ping timeout: 245 seconds) 2014-09-06T19:44:24Z cy joined #lisp 2014-09-06T19:44:32Z Kruppe joined #lisp 2014-09-06T19:47:02Z Emin_ quit (Quit: Leaving) 2014-09-06T19:50:16Z Alfr joined #lisp 2014-09-06T19:50:39Z drmeiste_ joined #lisp 2014-09-06T19:51:32Z Shinmera quit (Quit: brb) 2014-09-06T19:52:57Z Shinmera joined #lisp 2014-09-06T19:53:01Z Nizumzen joined #lisp 2014-09-06T19:58:38Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T20:01:16Z angavrilov quit (Remote host closed the connection) 2014-09-06T20:07:36Z pgomes joined #lisp 2014-09-06T20:10:36Z attila_lendvai quit (Quit: Leaving.) 2014-09-06T20:11:10Z Kruppe quit (Ping timeout: 252 seconds) 2014-09-06T20:11:54Z Nizumzen quit (Ping timeout: 252 seconds) 2014-09-06T20:12:55Z Nizumzen joined #lisp 2014-09-06T20:16:36Z Kruppe joined #lisp 2014-09-06T20:20:01Z MouldyOldBones quit (Remote host closed the connection) 2014-09-06T20:21:31Z MouldyOldBones joined #lisp 2014-09-06T20:25:23Z [1]test1600 joined #lisp 2014-09-06T20:25:27Z [1]test1600 quit (Read error: Connection reset by peer) 2014-09-06T20:26:55Z kristof joined #lisp 2014-09-06T20:27:37Z Grue` joined #lisp 2014-09-06T20:28:32Z test1600 quit (Ping timeout: 276 seconds) 2014-09-06T20:29:16Z AdmiralBumbleB-1 quit (Quit: AdmiralBumbleB-1) 2014-09-06T20:29:44Z ndrei joined #lisp 2014-09-06T20:29:56Z hiroakip joined #lisp 2014-09-06T20:33:19Z schaueho joined #lisp 2014-09-06T20:34:05Z stacksmi` joined #lisp 2014-09-06T20:37:08Z pgomes quit (Quit: Leaving) 2014-09-06T20:37:32Z beach left #lisp 2014-09-06T20:37:47Z drmeister quit (Remote host closed the connection) 2014-09-06T20:38:40Z Gavekort: Is there a more efficient way of doing this: https://pastee.org/gfauw 2014-09-06T20:38:41Z drmeister joined #lisp 2014-09-06T20:38:48Z Grue`: is there a contrib for SLIME that's like slime-asdf but uses quicklisp:quickload instead of asdf:load-system? 2014-09-06T20:38:56Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-06T20:39:06Z Gavekort: The idea is to find and fetch 'pear 2014-09-06T20:39:30Z gravicappa quit (Remote host closed the connection) 2014-09-06T20:40:56Z hiroakip quit (Ping timeout: 268 seconds) 2014-09-06T20:41:53Z stanislav_: Gavekort: there must be a more efficient way as you multiply traverse fruit2 without need 2014-09-06T20:42:03Z kristof: Gavekort: Loop loops over the list since you're using nth and i, but find is a way of looping over a list, too. 2014-09-06T20:42:05Z stanislav_: however, what is "to fetch 'pear"? 2014-09-06T20:42:08Z dim: Gavekort: assoc maybe? 2014-09-06T20:42:22Z dim: (assoc 'pear '((apple orange)(pear lemon))) --> (PEAR LEMON) 2014-09-06T20:42:52Z kristof: dim: That just gives you the association, not the symbol pear 2014-09-06T20:43:12Z kristof: dim: I think the idea is that pear can either by x or y in the alist 2014-09-06T20:43:13Z dim: that's true, but I'm yet to understand what Gavekort wants here 2014-09-06T20:43:24Z dim: assoc then rassoc then? ;-) 2014-09-06T20:43:38Z dim: seriously, let's see what Gavekort wants to achieve... 2014-09-06T20:43:44Z Gavekort: I just want to fetch the 'pear from the list, that's it 2014-09-06T20:43:51Z kristof: It seems like an efficient way to recurse through a tree and find a symbol, thus... returning the symbol? But if you're EQing for the symbol then you already have it. ._. 2014-09-06T20:43:55Z Gavekort: Any way I can get hold of 'pear without hardcoding it 2014-09-06T20:44:22Z dim: well if you know you search for 'pear then you already have 'pear, so you just want to know whether it's in the tree or not? 2014-09-06T20:44:30Z Gavekort: I'm a noob in lisp, so take into consideration that this should be newbiefriendly 2014-09-06T20:44:31Z stanislav_: Gavekort: (defun task2b () 'pear) is it all right? 2014-09-06T20:44:46Z Gavekort: what? 2014-09-06T20:44:53Z stanislav_: this returns 'pear 2014-09-06T20:44:58Z stanislav_: you seem to want 'pear 2014-09-06T20:45:02Z stanislav_: here you are 2014-09-06T20:45:03Z Gavekort: I mean finding and fetching the object in the list, not just creating a new one. Haha 2014-09-06T20:45:18Z stanislav_: there's no object 'pear in list fruit2 2014-09-06T20:45:29Z stanislav_: please specify 2014-09-06T20:45:43Z dim: Gavekort: we don't understand what you want to do here, for real 2014-09-06T20:45:45Z Gavekort: (setq fruit2 '((apple orange)(pear lemon))) 2014-09-06T20:45:50Z kristof: Gavekort: But you're determining what symbol it is by using eq (or does find use eql?), so you already, you know, have it. 2014-09-06T20:46:12Z Gavekort: You guys understand what my current code does? 2014-09-06T20:46:16Z stanislav_: no 2014-09-06T20:46:19Z dim: no 2014-09-06T20:46:22Z Gavekort: Really? 2014-09-06T20:46:28Z kristof: Yes, but do you understand what it does? 2014-09-06T20:46:37Z stanislav_: it's rather hard to figure it out 2014-09-06T20:46:50Z stanislav_: an example, maybe? 2014-09-06T20:47:05Z Gavekort: It looks through fruit2 for the element 'pear and sets it to fetched 2014-09-06T20:47:54Z zophy joined #lisp 2014-09-06T20:48:02Z stanislav_: you know, 'pear is 'pear whichever list it belongs to 2014-09-06T20:48:12Z Gavekort: I understand that my code may be cluttered since I'm not good at lisp, so this is why I want feedback 2014-09-06T20:48:21Z Gavekort: But that's missing the point 2014-09-06T20:48:26Z kristof: So explain the point 2014-09-06T20:48:35Z stanislav_: if 'pear is not in any sublist of fruit2, what do you want your function to return? 2014-09-06T20:48:40Z Gavekort: It's more like a proof of concept of how I can locate an element in a nested list 2014-09-06T20:48:49Z stacksmi` quit (Ping timeout: 272 seconds) 2014-09-06T20:48:57Z stanislav_: you want to find an element in a sublist? 2014-09-06T20:49:01Z Gavekort: 'pear is in a sublist 2014-09-06T20:49:08Z Gavekort: (setq fruit2 '((apple orange)(pear lemon))) 2014-09-06T20:49:19Z Gavekort: (setq fruit2 '((apple orange)(>>PEAR<< lemon))) 2014-09-06T20:50:24Z stanislav_: (find 'pear fruit2 :key #'member :test #'eq) - this will return you the sublist containing 'pear (a generalized true) or nil if there's no such sublist 2014-09-06T20:50:25Z Gavekort: Let me explain what my C-brain is thinking: 2014-09-06T20:51:07Z Grue`: there's basically only one symbol PEAR per package 2014-09-06T20:51:35Z Gavekort: Take the fruit2 list and for each list within the fruit2-list look for 'pear. If 'pear is found in a sublist then assign the pear to "fetched" 2014-09-06T20:51:55Z stanislav_: ok 2014-09-06T20:52:04Z Vivitron joined #lisp 2014-09-06T20:52:14Z stanislav_: (if (find 'pear fruit2 :key #'member :test #'eq) 'pear nil) 2014-09-06T20:52:31Z kristof: Grue`: This amounts to an excercise in efficient list traversal. 2014-09-06T20:52:32Z Gavekort: Sorry for being confusing. You'll might have to be patient with me. Haha 2014-09-06T20:52:53Z stanislav_: (if (member 'pear fruit2 :key #'member :test #'eq) 'pear nil) may be more efficient then find 2014-09-06T20:53:00Z Gavekort: Thanks stanislav_ I'll see what I can make of that 2014-09-06T20:53:22Z Gavekort: But is it just for performance-reason or am I completely lost in the woods called Lisp? 2014-09-06T20:53:46Z Gavekort: From 1 to 10, how terrible is my method? 2014-09-06T20:54:34Z kristof: Gavekort: you are lost in the woods called programming 2014-09-06T20:54:38Z stanislav_: very terrible :) unreadable and inefficient as you calculate length and all that nth's (each one means one more traversal) 2014-09-06T20:54:48Z zophy quit (Ping timeout: 252 seconds) 2014-09-06T20:55:41Z kristof: Gavekort: What stanislav said. You need not calculate length on a linked list (not even C!) because you'll know when it ends. Also, when you're assigning things in C mid-function, it's usually to return something; the functions you're using already return useful things, so there's no need in Lisp. 2014-09-06T20:56:01Z dim: Gavekort: will pear always be first in the sublist, will the sublist always have 2 elements? 2014-09-06T20:56:06Z kristof: in C, you'd check if cons->next == NULL. 2014-09-06T20:57:08Z dim: it would be useful to give some context about why you're trying to do that pear to fetched modification too 2014-09-06T20:57:36Z Vivitron: Gavekort: "the pear" is part of the confusion here. The nature of symbols is that there is only one pear 2014-09-06T20:57:51Z Shinmera: There can only be one 2014-09-06T20:58:12Z Gavekort: Isn't "fetched" a pointer to the same element? 2014-09-06T20:58:13Z a20190906 quit (Quit: Page closed) 2014-09-06T20:58:22Z Gavekort: Or maybe I copied it 2014-09-06T20:58:27Z Shinmera: There are no pointers 2014-09-06T20:58:54Z urandom__ quit (Quit: Konversation terminated!) 2014-09-06T20:58:55Z Gavekort: Ah ok 2014-09-06T20:58:56Z dim: (let ((fruit2 (list (list 'apple 'orange) (list 'pear 'lemon)))) (setf (car (assoc 'pear fruit2)) 'fecthed) fruit2) ; might be what you're trying to do 2014-09-06T20:59:17Z kristof: Gavekort: fetched is a lexical binding. That can mean whatever the compiler decides it to mean. 2014-09-06T20:59:24Z dim: Gavekort: you might have to read about the lisp concept of "places" 2014-09-06T20:59:48Z dim: 5.1 Generalized Reference in clhs 2014-09-06T20:59:53Z dim: clhs 5.1 2014-09-06T20:59:53Z specbot: Generalized Reference: http://www.lispworks.com/reference/HyperSpec/Body/05_a.htm 2014-09-06T21:00:02Z Gavekort: kristof: I understand that this is a local variable that I've created 2014-09-06T21:00:15Z Gavekort: dim: No time. They are pushing assignments on me like crazy 2014-09-06T21:00:31Z Gavekort: This is Lisp in Kamikaze-style 2014-09-06T21:00:48Z kristof: Then your code will be an equivalent plane wreck 2014-09-06T21:00:51Z Maurice_TCF quit (Quit: This computer has gone to sleep) 2014-09-06T21:01:03Z Gavekort: Exactly, but tell that to my professor 2014-09-06T21:01:29Z Gavekort: At least I'm learning a lot 2014-09-06T21:01:44Z CrazyEddy quit (Ping timeout: 272 seconds) 2014-09-06T21:02:26Z dim: no time to read the specs, no learning 2014-09-06T21:02:33Z kristof: Gavekort: Here's the long answer to what you're asking. We're all confused about the 'pear stuff because of the way symbols work. If what you're actually doing is creating an exercise in list traversal, then you should ask a better question. 2014-09-06T21:03:45Z kristof: Gavekort: The short answer is that stanislav's find example does exactly what you need: traverses a sequence and returns the subsequence that satisfies your test, and returns NIL otherwise. 2014-09-06T21:03:57Z Gavekort: What I'm trying to achieve is basically selecting the pear-element in ((foo bar) (pear baz)) in any way possible 2014-09-06T21:04:06Z Gavekort: Get it out of there so that I can use it 2014-09-06T21:04:20Z kristof: Gavekort: Do you mean getting BAZ, then? 2014-09-06T21:04:57Z korqio- quit (Ping timeout: 255 seconds) 2014-09-06T21:05:16Z korqio- joined #lisp 2014-09-06T21:05:35Z Gavekort: No. I mean getting PEAR. So that I can print e.g., "I found PEAR in the list" 2014-09-06T21:05:40Z kristof: Gavekort: Take some time to figure out what you mean by "use it", come up with a good example of how you would use it, and then come back to us. 2014-09-06T21:06:47Z kristof: Gavekort: Then you're not asking about getting the pear element out of the list. You're asking about finding out if the pear element is in the list at all and then doing something after. Notice how my wording is slightly different now. 2014-09-06T21:07:22Z Gavekort: This could also be a list of numbers ((1 2) (3 4)), so then I want to fetch number 3 so that I can use it in (+ 7 fetchednumber) 2014-09-06T21:07:43Z Gavekort: The point is not what I use the element for. I'm doing this to learn and understand the functioning of lists 2014-09-06T21:07:52Z kristof: Okay. 2014-09-06T21:07:59Z dim: but when you search for the number 3 you already know you will use the number 3 (if you find it), so all you want to know really is if the number 3 is in the list, right? 2014-09-06T21:08:29Z Gavekort: Yeah. It's really redundant, so that is why the use is not important 2014-09-06T21:08:33Z dim: exercises like that are just plain stupid, or it's me getting old 2014-09-06T21:08:39Z Gavekort: I just want to access the element and get it in my hands 2014-09-06T21:08:48Z Shinmera: dim: I'm young and it is plain stupid. 2014-09-06T21:08:56Z dim: hehe thanks 2014-09-06T21:09:10Z dim: I'm not that old, I *feel* old sometimes, that's different I guess ;-) 2014-09-06T21:09:13Z Gavekort: I'm young and stupid, and I think this is stupid 2014-09-06T21:09:20Z oleo is now known as Guest9870 2014-09-06T21:09:48Z Shinmera: Then do an exercise that isn't stupid to learn the language 2014-09-06T21:09:58Z kristof: Then we should come up with a better example. You have a list of fruit-basket objects consisting of the slots BASKET-OWNER (of type string) and FRUITS (a list of fruit symbols). When you find the basket that has a pear in it, you want to say "BASKET-OWNER has a pear!" 2014-09-06T21:10:07Z kristof: Shinmera: ^ 2014-09-06T21:10:11Z Gavekort: Shinmera: Bad for my grades, unfortunately 2014-09-06T21:10:39Z Shinmera: Gavekort: By doing non-stupid things first, the stupid often becomes trivial :^) 2014-09-06T21:11:01Z oleo__ joined #lisp 2014-09-06T21:11:22Z Gavekort: I am this |--| close to skip the task. But I figured I might as well ask here first 2014-09-06T21:11:36Z zophy joined #lisp 2014-09-06T21:11:40Z kristof: Gavekort: How do you want this to behave? Do you want to use the first occurrence that you find, or do you want to do something to all of them should they exist in your searched list? 2014-09-06T21:11:44Z Gavekort: At least I get constructive input to the clusterf**k I created 2014-09-06T21:12:00Z dim: yes, #lisp is awesome that way 2014-09-06T21:12:23Z Guest9870 quit (Ping timeout: 268 seconds) 2014-09-06T21:12:34Z Gavekort: I want something flexible that can search through either (foo bar baz) ((foo bar) (baz)) or ((foo) (bar) (baz)) 2014-09-06T21:12:48Z kristof: Gavekort: That did not answer the question I asked you. 2014-09-06T21:12:51Z drmeiste_ joined #lisp 2014-09-06T21:13:17Z kristof: Gavekort: (foo (bar baz baz) bar (baz foo) (foo bar (bar bar (bar)) baz)) 2014-09-06T21:13:21Z Gavekort: They should all be unique 2014-09-06T21:13:35Z Gavekort: They are three different scenarios 2014-09-06T21:13:37Z dim: have you read the documentation for find, position, member and the like? they all take a :test and :key function args, that's quite flexible 2014-09-06T21:14:05Z edgar-rft quit (Quit: connection terminated into eternal nothing) 2014-09-06T21:14:16Z imanc_ left #lisp 2014-09-06T21:14:21Z Gavekort: dim: I can study it further. Haven't though about that 2014-09-06T21:14:53Z pnpuff joined #lisp 2014-09-06T21:14:55Z kristof: Gavekort: So you're saying bar is guaranteed to only have one occurrence in the list, if it occurs at all? 2014-09-06T21:15:19Z dim: it really does sound like an hash table in a list, or an alist 2014-09-06T21:15:43Z kristof: dim: The goal is to understand how to traverse arbitrary lists and do stuff, though. 2014-09-06T21:15:56Z dim: well we have loop for that 2014-09-06T21:16:22Z dim: (loop :for (key value-list) :in fruit2 :do (something key value-list)) 2014-09-06T21:16:44Z dim: (loop :for (key value-list) :in fruit2 :when (member 'pear value-list) :do (something key value-list)) 2014-09-06T21:16:46Z Gavekort: You guys might be overrating the complexity of the task. For each scenario (foo bar baz), ((foo bar) (baz) or ((foo) (bar) (baz)) there will only be one occurance of each element. The trick is to search through the lists and find where that element is and "return" it. 2014-09-06T21:17:02Z dim: I don't know, so many variants are possible here, nobody understand the exercice it seems 2014-09-06T21:17:14Z Gavekort: I barely do myself 2014-09-06T21:17:22Z kristof: Gavekort: Then when I asked you my question, you should have just said "return the first occurrence". 2014-09-06T21:17:53Z dim: maybe what's wanted is a kind of a bfs 2014-09-06T21:18:00Z Gavekort: What is the difference between first occurence and any occurence when they are all unique? 2014-09-06T21:18:14Z dim: http://norvig.com/paip/search.lisp 2014-09-06T21:18:17Z Gavekort: ...Per scenario 2014-09-06T21:19:03Z kristof: Gavekort: There isn't, but that wasn't clear until you specified that each element will be guaranteed to only appear once. 2014-09-06T21:19:52Z Gavekort: Oh ok. Sorry about that. Yeah, they will only appear once per scenario 2014-09-06T21:20:44Z kristof: Gavekort: Since those scenarios are all trees, do you want depth-first or breadth-first searches? 2014-09-06T21:21:56Z Gavekort: This is getting really advanced for a newbie-course, hahah. BFS would be preferred 2014-09-06T21:23:12Z kristof: Gavekort: dim just linked to a breadth first search in common lisp 2014-09-06T21:23:42Z Gavekort: Reading through it as we speak 2014-09-06T21:24:30Z kristof: Gavekort: What class is this for? 2014-09-06T21:24:36Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-06T21:26:46Z jlongster joined #lisp 2014-09-06T21:27:24Z drmeiste_ quit (Remote host closed the connection) 2014-09-06T21:28:06Z vanila joined #lisp 2014-09-06T21:28:07Z vanila: hi 2014-09-06T21:28:11Z vanila: what is up with lambda the ultimate? 2014-09-06T21:28:34Z Xach: vanila: This is the channel for discussing Common Lisp, not Lambda the Ultimate, sorry. 2014-09-06T21:29:20Z alexey joined #lisp 2014-09-06T21:30:04Z wasamasa: Xach: isn't it about the powah of common lisp? 2014-09-06T21:30:42Z vanila: Fare: for what it's worth, i liked that video more when i didn't know about http://www.cartoonbrew.com/business/pixars-ed-catmull-emerges-as-central-figure-in-the-wage-fixing-scandal-101362.html 2014-09-06T21:30:56Z Gavekort: kristof: No class 2014-09-06T21:31:08Z Xach: vanila: Sorry. I try not to do that too often, and I try not to make that my only contribution. 2014-09-06T21:31:39Z Xach: The discussion of the video in the first place was in the context of being ashamed of showing your imperfect common lisp code to the world. 2014-09-06T21:33:25Z Xach: (ed says, show your work every day and get over being embarrassed.) 2014-09-06T21:33:37Z alexey quit (Ping timeout: 245 seconds) 2014-09-06T21:34:21Z dim: then push the code to github, to make it easy to get free reviews 2014-09-06T21:34:28Z dim: that seldom happens anyway 2014-09-06T21:34:49Z resttime joined #lisp 2014-09-06T21:35:23Z strg quit (Quit: Linkinus - http://linkinus.com) 2014-09-06T21:35:34Z Xach: dim: I actually used to take time to send feedback to people out of the blue, but I started to feel a little bad about it (nobody asked me) and then I just had no time for it. 2014-09-06T21:35:55Z zophy quit (Ping timeout: 272 seconds) 2014-09-06T21:36:34Z dim: ENOTIME might the the general situation, I would have liked to get some unanticipated feedback; on the other hand I got quite a lot of it from here 2014-09-06T21:36:42Z dim: only on published code tho, as you said 2014-09-06T21:39:21Z drmeister quit (Remote host closed the connection) 2014-09-06T21:39:28Z dim: anyway, good night here! 2014-09-06T21:39:36Z drmeister joined #lisp 2014-09-06T21:42:16Z CrazyEddy joined #lisp 2014-09-06T21:44:36Z rme joined #lisp 2014-09-06T21:44:44Z Krystof joined #lisp 2014-09-06T21:48:57Z schaueho quit (Ping timeout: 245 seconds) 2014-09-06T21:51:38Z Shinmera quit (Quit: ZzZz) 2014-09-06T21:52:52Z ggole quit 2014-09-06T21:54:19Z gmcastil joined #lisp 2014-09-06T21:58:38Z Vivitron quit (Ping timeout: 268 seconds) 2014-09-06T22:05:00Z kristof quit (Quit: WeeChat 1.0) 2014-09-06T22:05:10Z kristof joined #lisp 2014-09-06T22:05:27Z marsbot is now known as marsam 2014-09-06T22:06:43Z oleo__ quit (Quit: Verlassend) 2014-09-06T22:09:04Z oleo joined #lisp 2014-09-06T22:09:08Z kristof quit (Client Quit) 2014-09-06T22:09:18Z kristof joined #lisp 2014-09-06T22:13:38Z zwer_ quit (Remote host closed the connection) 2014-09-06T22:14:00Z zwer_ joined #lisp 2014-09-06T22:15:39Z marsam is now known as marsbot 2014-09-06T22:16:31Z ARM9 quit (Quit: swi 0x06) 2014-09-06T22:16:37Z kristof: I wonder how much of common lisp you can fit on 32KB of ROM? 2014-09-06T22:17:38Z drmeiste_ joined #lisp 2014-09-06T22:18:22Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-06T22:18:23Z dmiles joined #lisp 2014-09-06T22:18:28Z Xach: Seems like you'd need to do some tricks. right off the bat 1/3rd of it would be taken up by standard symbol names, if you didn't get clever. 2014-09-06T22:19:29Z marsbot is now known as marsam 2014-09-06T22:20:23Z marsam is now known as marsbot 2014-09-06T22:20:42Z Beetny joined #lisp 2014-09-06T22:22:51Z kristof: Xach: Looking at a library right now that compiles a subset of CL to C++ for use with Arduino. Can't find any documentation, though, so I don't know how much of CL is missing. 2014-09-06T22:23:47Z kristof: Xach: On an embedded system, though you really don't want any dynamicism anyway, so you can get rid of a lot of needless functionality. 2014-09-06T22:28:54Z mrSpec quit (Remote host closed the connection) 2014-09-06T22:30:15Z vaporatorius joined #lisp 2014-09-06T22:33:10Z ehu_ quit (Ping timeout: 268 seconds) 2014-09-06T22:34:49Z schaueho joined #lisp 2014-09-06T22:36:07Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-06T22:39:24Z drmeister quit (Remote host closed the connection) 2014-09-06T22:39:57Z drmeister joined #lisp 2014-09-06T22:44:16Z shka quit (Quit: Lost terminal) 2014-09-06T22:47:59Z nell joined #lisp 2014-09-06T22:50:17Z schaueho quit (Ping timeout: 245 seconds) 2014-09-06T22:52:09Z kristof quit (Ping timeout: 264 seconds) 2014-09-06T22:55:42Z ndrei quit (Ping timeout: 246 seconds) 2014-09-06T22:56:22Z zygentoma quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-06T22:58:09Z jlongster quit (Ping timeout: 246 seconds) 2014-09-06T23:01:34Z jasom: how big was LISP 1.5? 2014-09-06T23:06:15Z jasom: All of the functions fit on 3 pages in the index, so it was probably a lot smaller 2014-09-06T23:07:03Z vanila: Even smaller is the R5RS scheme 2014-09-06T23:07:12Z vanila: A very nice compact lisp 2014-09-06T23:07:32Z jasom: vanila: I wasn't going to stir up the "Is scheme a lisp" debate 2014-09-06T23:11:07Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-06T23:17:53Z wasamasa: jasom: vanila is! 2014-09-06T23:19:15Z kristof joined #lisp 2014-09-06T23:19:25Z jasom: I should just link to that insanely long flamefest on c.l.l 2014-09-06T23:19:30Z bgs100 joined #lisp 2014-09-06T23:19:38Z bgs100 quit (Changing host) 2014-09-06T23:19:38Z bgs100 joined #lisp 2014-09-06T23:20:00Z CrazyEddy joined #lisp 2014-09-06T23:24:01Z wasamasa: vanila: why do you keep asking scheme questions here 2014-09-06T23:24:06Z kristof: jasom: which one is that? 2014-09-06T23:24:14Z kristof: wasamasa: He's got nothing better to do. 2014-09-06T23:24:20Z wasamasa: kristof: ._. 2014-09-06T23:24:34Z wasamasa: kristof: I mean, sure, it's a nice language, but this channel is rather on-topic 2014-09-06T23:25:41Z vanila: wasamasa, what are you talking about 2014-09-06T23:27:13Z jasom: kristof: I'm trying to find it now. The first email contained the line "I don't want to start a flamewar, but ..." 2014-09-06T23:27:52Z kristof: lol 2014-09-06T23:28:12Z kristof: jasom: Oh, is that the lisp-6 vs lisp-7 business where kent pitman (I think?) contributed to the discussion? 2014-09-06T23:28:32Z jasom: I think it was started by Ron Garret 2014-09-06T23:29:17Z jasom: and yes KMP chimed in at one point 2014-09-06T23:30:11Z alexey joined #lisp 2014-09-06T23:31:08Z jasom: https://groups.google.com/forum/#!topic/comp.lang.lisp/Bj8Hx6mZEYI%5B1-25-false%5D <-- there it is 2014-09-06T23:31:09Z gmcastil quit (Ping timeout: 264 seconds) 2014-09-06T23:31:37Z wasamasa: vanila: you've repeatedly asked how to implement CPS for a compiler and were directed to #scheme 2014-09-06T23:32:15Z kristof: jasom: I was thinking of something else. I do like the Naggum post in there, though. 2014-09-06T23:33:10Z vanila: wasamasa, ok? 2014-09-06T23:33:29Z vanila: why are you telling me this? 2014-09-06T23:34:02Z wasamasa: because you've asked me what I'm talking about 2014-09-06T23:35:12Z alexey quit (Ping timeout: 260 seconds) 2014-09-06T23:36:11Z drmeister quit (Remote host closed the connection) 2014-09-06T23:36:26Z drmeister joined #lisp 2014-09-06T23:36:38Z antonv joined #lisp 2014-09-06T23:41:20Z kristof quit (Ping timeout: 272 seconds) 2014-09-06T23:41:35Z pnpuff quit (Quit: Lost terminal) 2014-09-06T23:43:49Z mishoo quit (Ping timeout: 260 seconds) 2014-09-06T23:45:56Z korqio- quit (Ping timeout: 268 seconds) 2014-09-06T23:54:34Z zophy joined #lisp 2014-09-06T23:55:12Z k-stz quit (Remote host closed the connection) 2014-09-07T00:00:44Z vaporatorius quit (Remote host closed the connection) 2014-09-07T00:03:52Z wilfredh joined #lisp 2014-09-07T00:08:52Z korqio- joined #lisp 2014-09-07T00:10:58Z zophy quit (Ping timeout: 252 seconds) 2014-09-07T00:12:12Z gmcastil joined #lisp 2014-09-07T00:15:21Z ejbs joined #lisp 2014-09-07T00:16:58Z nydel quit (Remote host closed the connection) 2014-09-07T00:19:20Z innertracks quit (Quit: innertracks) 2014-09-07T00:27:50Z erikc joined #lisp 2014-09-07T00:28:57Z gmcastil quit (Ping timeout: 245 seconds) 2014-09-07T00:30:29Z resttime quit (Quit: resttime) 2014-09-07T00:35:42Z DGASAU quit (Remote host closed the connection) 2014-09-07T00:36:13Z drmeister quit (Remote host closed the connection) 2014-09-07T00:36:34Z DGASAU joined #lisp 2014-09-07T00:36:53Z drmeister joined #lisp 2014-09-07T00:50:39Z MouldyOldBones quit (Ping timeout: 264 seconds) 2014-09-07T00:51:45Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-07T00:53:46Z mingvs quit (Ping timeout: 268 seconds) 2014-09-07T00:53:54Z mingvs joined #lisp 2014-09-07T00:55:25Z stepnem quit (Ping timeout: 272 seconds) 2014-09-07T00:55:43Z MouldyOldBones joined #lisp 2014-09-07T00:56:24Z zophy joined #lisp 2014-09-07T00:57:11Z varjag quit (Quit: Connection closed for inactivity) 2014-09-07T01:04:24Z jlongster joined #lisp 2014-09-07T01:04:38Z a20140906 joined #lisp 2014-09-07T01:07:27Z MouldyOldBones quit (Ping timeout: 264 seconds) 2014-09-07T01:08:59Z CrazyEddy joined #lisp 2014-09-07T01:10:12Z Karl_Dscc joined #lisp 2014-09-07T01:10:38Z jlongster quit (Ping timeout: 272 seconds) 2014-09-07T01:11:20Z cy is now known as cyan 2014-09-07T01:11:25Z Karl_Dscc quit (Remote host closed the connection) 2014-09-07T01:11:52Z cyan is now known as cy 2014-09-07T01:13:50Z Alfr quit (Quit: Leaving) 2014-09-07T01:15:33Z zophy quit (Ping timeout: 264 seconds) 2014-09-07T01:19:33Z mingvs quit (Ping timeout: 246 seconds) 2014-09-07T01:21:05Z jordonbiondo joined #lisp 2014-09-07T01:21:29Z mingvs joined #lisp 2014-09-07T01:21:55Z jordonbiondo: say you were writing a lisp, in your opinion should length of (a b . c) be 3 or a type error? 2014-09-07T01:24:37Z Vutral quit (Ping timeout: 260 seconds) 2014-09-07T01:25:14Z Bike: common lisp, so error 2014-09-07T01:31:05Z alexey joined #lisp 2014-09-07T01:32:22Z Vutral joined #lisp 2014-09-07T01:35:18Z alexey quit (Ping timeout: 246 seconds) 2014-09-07T01:38:30Z a20140906 quit (Quit: Page closed) 2014-09-07T01:39:39Z nydel joined #lisp 2014-09-07T01:41:09Z drmeister quit (Remote host closed the connection) 2014-09-07T01:41:25Z drmeister joined #lisp 2014-09-07T01:42:12Z Shaftoe___ joined #lisp 2014-09-07T01:42:37Z zophy joined #lisp 2014-09-07T01:42:53Z Vutral_ joined #lisp 2014-09-07T01:43:00Z jordonbiondo left #lisp 2014-09-07T01:45:35Z LiamH quit (Quit: Leaving.) 2014-09-07T01:46:22Z ejbs quit (Ping timeout: 240 seconds) 2014-09-07T01:48:50Z MouldyOldBones joined #lisp 2014-09-07T01:48:53Z zophy quit (Ping timeout: 255 seconds) 2014-09-07T01:49:10Z gingerale quit (Read error: Connection reset by peer) 2014-09-07T01:58:08Z jonh joined #lisp 2014-09-07T02:03:07Z drmeiste_ quit (Remote host closed the connection) 2014-09-07T02:09:06Z cy quit (Quit: :q!) 2014-09-07T02:09:43Z cy joined #lisp 2014-09-07T02:10:44Z innertracks joined #lisp 2014-09-07T02:19:10Z burger-brother joined #lisp 2014-09-07T02:19:14Z burger-brother: huge tits!! 2014-09-07T02:19:23Z burger-brother: huge white oily fake tits!! 2014-09-07T02:21:20Z setheus quit (Ping timeout: 268 seconds) 2014-09-07T02:22:25Z Bicyclidine joined #lisp 2014-09-07T02:22:53Z setheus joined #lisp 2014-09-07T02:22:59Z vanila: high burger-brother :))) 2014-09-07T02:23:12Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-07T02:23:24Z burger-brother: word 2014-09-07T02:25:15Z kobain quit (Read error: Connection timed out) 2014-09-07T02:25:53Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-07T02:26:13Z kobain joined #lisp 2014-09-07T02:26:52Z atgreen joined #lisp 2014-09-07T02:27:18Z burger-brother: lets switch everything to lisp 2014-09-07T02:27:23Z burger-brother: end oracle 2014-09-07T02:27:25Z burger-brother: and apple 2014-09-07T02:27:30Z burger-brother: :) 2014-09-07T02:29:38Z PersonX joined #lisp 2014-09-07T02:31:32Z korqio- quit (Ping timeout: 245 seconds) 2014-09-07T02:32:29Z korqio- joined #lisp 2014-09-07T02:33:34Z kcj joined #lisp 2014-09-07T02:34:47Z Bicyclidine quit (Ping timeout: 245 seconds) 2014-09-07T02:38:57Z CrazyEddy joined #lisp 2014-09-07T02:40:30Z burger-brother quit (Quit: Lost terminal) 2014-09-07T02:41:12Z drmeister quit (Remote host closed the connection) 2014-09-07T02:41:45Z drmeister joined #lisp 2014-09-07T02:43:37Z askatasuna joined #lisp 2014-09-07T02:44:13Z erikc quit (Quit: erikc) 2014-09-07T02:44:22Z tankrim joined #lisp 2014-09-07T02:46:49Z drmeiste_ joined #lisp 2014-09-07T02:46:59Z vlnx quit (Read error: Connection reset by peer) 2014-09-07T02:47:30Z Adlai quit (Remote host closed the connection) 2014-09-07T02:47:54Z Adlai joined #lisp 2014-09-07T02:48:05Z zophy joined #lisp 2014-09-07T02:49:17Z vlnx joined #lisp 2014-09-07T02:50:30Z drmeist__ joined #lisp 2014-09-07T02:51:33Z drmeiste_ quit (Ping timeout: 264 seconds) 2014-09-07T02:53:52Z PersonX quit (Ping timeout: 272 seconds) 2014-09-07T02:58:20Z zophy quit (Ping timeout: 268 seconds) 2014-09-07T03:01:45Z jlongster joined #lisp 2014-09-07T03:13:25Z wilfredh quit (Quit: Connection closed for inactivity) 2014-09-07T03:14:51Z nand1 quit (Remote host closed the connection) 2014-09-07T03:18:45Z hitecnologys joined #lisp 2014-09-07T03:21:33Z zarul quit (Ping timeout: 264 seconds) 2014-09-07T03:21:57Z zophy joined #lisp 2014-09-07T03:23:38Z atgreen quit (Ping timeout: 272 seconds) 2014-09-07T03:24:18Z Zeedox_ quit (Ping timeout: 255 seconds) 2014-09-07T03:31:18Z nug700 joined #lisp 2014-09-07T03:32:02Z alexey joined #lisp 2014-09-07T03:36:34Z alexey quit (Ping timeout: 268 seconds) 2014-09-07T03:37:09Z zophy quit (Ping timeout: 264 seconds) 2014-09-07T03:37:37Z drmeister quit (Remote host closed the connection) 2014-09-07T03:37:49Z drmeister joined #lisp 2014-09-07T03:39:18Z wheelsucker quit (Quit: Client Quit) 2014-09-07T03:39:55Z Shaftoe___ joined #lisp 2014-09-07T03:41:09Z milosn quit (Ping timeout: 240 seconds) 2014-09-07T03:42:20Z milosn joined #lisp 2014-09-07T03:47:29Z zarul joined #lisp 2014-09-07T03:47:29Z zarul quit (Changing host) 2014-09-07T03:47:29Z zarul joined #lisp 2014-09-07T03:49:17Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-07T03:53:22Z askatasuna quit (Quit: WeeChat 1.0) 2014-09-07T03:55:54Z rme quit (Quit: rme) 2014-09-07T03:57:34Z beach joined #lisp 2014-09-07T03:57:42Z beach: Good morning everyone! 2014-09-07T03:58:22Z optikalmouser quit (Ping timeout: 240 seconds) 2014-09-07T04:00:49Z hitecnologys: beach: morning. 2014-09-07T04:01:56Z hugod is now known as hugod|away 2014-09-07T04:05:09Z korqio- quit (Ping timeout: 260 seconds) 2014-09-07T04:05:17Z sz0 joined #lisp 2014-09-07T04:15:01Z drmeist__ quit (Remote host closed the connection) 2014-09-07T04:20:02Z paul0 joined #lisp 2014-09-07T04:23:46Z dmiles_afk joined #lisp 2014-09-07T04:24:20Z dmiles quit (Ping timeout: 276 seconds) 2014-09-07T04:29:31Z Jesin joined #lisp 2014-09-07T04:30:31Z vanila quit (Quit: Leaving) 2014-09-07T04:37:40Z drmeister quit (Remote host closed the connection) 2014-09-07T04:38:35Z drmeister joined #lisp 2014-09-07T04:39:42Z kcj quit (Remote host closed the connection) 2014-09-07T04:41:18Z Shaftoe___ joined #lisp 2014-09-07T04:51:55Z narayana1 joined #lisp 2014-09-07T04:52:38Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-07T04:52:59Z jleija quit (Quit: leaving) 2014-09-07T04:55:03Z hitecnologys_ joined #lisp 2014-09-07T04:55:05Z wheelsucker joined #lisp 2014-09-07T04:57:32Z Shaftoe___ joined #lisp 2014-09-07T04:58:47Z hitecnologys quit (Ping timeout: 276 seconds) 2014-09-07T05:05:02Z chitofan joined #lisp 2014-09-07T05:09:04Z jlongster quit (Ping timeout: 268 seconds) 2014-09-07T05:12:19Z quazimodo joined #lisp 2014-09-07T05:15:29Z zacts quit (Quit: leaving) 2014-09-07T05:21:17Z vydd quit (Remote host closed the connection) 2014-09-07T05:28:24Z beach: minion: memo for stacksmith: I don't know what the problem is. The mcclim-truetype.asd file is in the subdirectory Experimental/freetype/ in the McCLIM distribution. You may have to tell ASDF about that directory, as in (push ".../Experimental/freetype/" asdf:*central-registry*). 2014-09-07T05:28:24Z minion: Remembered. I'll tell stacksmith when he/she/it next speaks. 2014-09-07T05:32:50Z alexey joined #lisp 2014-09-07T05:33:01Z pjb joined #lisp 2014-09-07T05:36:41Z quazimod1 joined #lisp 2014-09-07T05:37:18Z quazimodo quit (Quit: leaving) 2014-09-07T05:37:26Z quazimod1 quit (Client Quit) 2014-09-07T05:37:29Z alexey quit (Ping timeout: 255 seconds) 2014-09-07T05:37:43Z quazimodo joined #lisp 2014-09-07T05:40:23Z drmeister quit (Remote host closed the connection) 2014-09-07T05:40:38Z drmeister joined #lisp 2014-09-07T05:43:59Z gravicappa joined #lisp 2014-09-07T05:44:48Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-07T05:48:24Z hitecnologys_ is now known as hitecnologys 2014-09-07T05:48:47Z drmeiste_ joined #lisp 2014-09-07T05:49:53Z knightblader joined #lisp 2014-09-07T05:50:01Z drmeiste_: Hello beach - how are things going? 2014-09-07T05:50:30Z innertracks quit (Quit: innertracks) 2014-09-07T05:51:46Z drmeiste_: I've cleaned up my bootstrapping build system so that I can build/incorporate the SICL compiler. 2014-09-07T05:54:00Z drmeiste_: I set up a list of source files that the build system compiles if they are more recent than the bitcode file generated from them. It also links all bitcode files in the file list into a single library and prepares it so that it can be loaded by Clasp. 2014-09-07T05:55:42Z quazimodo quit (Ping timeout: 245 seconds) 2014-09-07T05:58:03Z beach: drmeiste_: Things are going fine, thanks. 2014-09-07T05:59:00Z beach: drmeiste_: I started implementing the specification I wrote. You will find it in the subdirectory Cleavir/Environment/ 2014-09-07T05:59:46Z beach: Next, I'll work on specifying the Cleavir version (i.e., implementation-independent) of the first pass of the compiler, translating forms to ASTs. 2014-09-07T06:01:31Z bgs100 quit (Quit: bgs100) 2014-09-07T06:05:42Z theos quit (Ping timeout: 245 seconds) 2014-09-07T06:12:57Z drmeiste_: What do you run SICL in? SBCL? 2014-09-07T06:13:06Z beach: Yeah. 2014-09-07T06:13:29Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-07T06:14:11Z drmeiste_: How does that work? You load the SICL system, it declares a bunch of new packages and how do you use its functionality? My question may not be very clear. 2014-09-07T06:14:48Z drmeiste_: Do you replace a lot of the SBCL functions with SICL functions? 2014-09-07T06:15:56Z beach: No. As I have told you, SICL is not finished. I haven't seen its prompt yet. 2014-09-07T06:16:05Z beach: I have run the cross compiler in SBCL. 2014-09-07T06:16:35Z beach: I have also been able to run several other modules like FORMAT, the CONS module, etc. 2014-09-07T06:17:33Z Maurice_TCF joined #lisp 2014-09-07T06:18:32Z drmeiste_: But you have a reader and FORMAT - how complete are they. 2014-09-07T06:18:48Z Maurice_TCF quit (Client Quit) 2014-09-07T06:19:16Z beach: I have two readers actually. The fast one is not complete. The simple one should be complete. FORMAT is lacking a few things, but it's mostly there. 2014-09-07T06:20:02Z resttime joined #lisp 2014-09-07T06:20:17Z protist joined #lisp 2014-09-07T06:20:45Z drmeiste_: I think I mentioned this but when I started my project I needed to implement a reader in C++ to bootstrap everything. I used the SICL reader and READTABLE code as a guide to write my C++ reader. 2014-09-07T06:21:11Z beach: OK. 2014-09-07T06:22:05Z vydd joined #lisp 2014-09-07T06:22:32Z Maurice_TCF joined #lisp 2014-09-07T06:22:40Z Shinmera joined #lisp 2014-09-07T06:22:43Z beach: I often get the question about how I bootstrap SICL, and there seems to be an assumption that you must start with some low-level functionality and build on it. But if you use a full CL implementation as a host, you can avoid most of that low-level stuff. 2014-09-07T06:22:48Z angavrilov joined #lisp 2014-09-07T06:24:07Z drmeiste_: I was trying to formulate a question about how you bootstrap SICL.\ 2014-09-07T06:24:37Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-07T06:25:03Z drmeiste_: I understand the "start with some low-level functionality and build on it" very well. How you host a Common Lisp within a Common Lisp... not so much. How do you decide what functionality you can use and what functionality you will implement. 2014-09-07T06:25:10Z beach: The bootstrapping process is not complete yet, but I start with bootstrapping CLOS, so that I have all the classes I need. 2014-09-07T06:25:34Z pjb: drmeiste_: you can host cl in cl by using different package names for cl, keyword and cl-user. 2014-09-07T06:26:12Z pjb: or, if you don't use the host package system for your own packages, the question is mute. 2014-09-07T06:26:22Z vydd quit (Ping timeout: 240 seconds) 2014-09-07T06:26:23Z drmeiste_: CLOS and generic functions was the last thing I got working. It was frustrating to write my compiler without generic functions. 2014-09-07T06:27:05Z beach: It is still possible to write a compiler using CLOS, because you can run it in a different system. 2014-09-07T06:27:14Z beach: This is particularly true for the file compiler. 2014-09-07T06:27:24Z beach: ... modulo a few things that won't work. 2014-09-07T06:28:20Z drmeiste_: I couldn't run in another lisp because I need to use LLVM functions to generate IR. No other lisp has access to the LLVM functionality I needed for the compiler. 2014-09-07T06:28:38Z beach: I see, yes. 2014-09-07T06:30:30Z drmeiste_: It would be interesting now to write a groveler in Clasp to generate an FFI for LLVM that would work in other Common Lisp implementations. Then I could run my compiler on other Common Lisps. 2014-09-07T06:31:07Z beach: That's a good idea. Interesting project. 2014-09-07T06:31:24Z sz0 quit 2014-09-07T06:31:31Z Shaftoe___ joined #lisp 2014-09-07T06:32:31Z dmiles joined #lisp 2014-09-07T06:33:08Z drmeiste_: It's not interesting enough though just for that reason alone - but LLVM is a powerful library. 2014-09-07T06:34:51Z beach: Well, I would think that you could then use CLOS to write the compiler. 2014-09-07T06:34:52Z dmiles_afk quit (Ping timeout: 252 seconds) 2014-09-07T06:36:34Z mrSpec joined #lisp 2014-09-07T06:37:38Z dmiles quit (Quit: Read error: 110 (Connection timed out)) 2014-09-07T06:38:41Z pierre1_ quit (Quit: Leaving) 2014-09-07T06:39:56Z drmeiste_: To boot I use an S-expression walking interpreter that is really slow. It would take days to boot CLOS on the interpreter because it expands macros over and over again. 2014-09-07T06:40:26Z drmeister quit (Remote host closed the connection) 2014-09-07T06:41:07Z drmeister joined #lisp 2014-09-07T06:41:14Z beach: Yes, I see. But if you had access to LLVM from another CL, then you could run your compiler in (say) SBCL, so you wouldn't get the slowness. 2014-09-07T06:42:55Z drmeiste_: Probably. I ended up doing all the dispatch by hand and only loading enough Common Lisp code into the interpreter to support the compiler, loading the compiler and then having the compiler compile the minimal Common Lisp system and itself. 2014-09-07T06:43:38Z drmeiste_: Then the minimal system reloads everything (including CLOS) and COMPILE-FILE's and links everything. 2014-09-07T06:44:36Z drmeiste_: My plan is to run Cleavir on the full system. 2014-09-07T06:45:01Z drmeiste_: So Clasp will have one interpreter and two compilers. The interpreter and first compiler will only be used for bootstrapping. 2014-09-07T06:46:29Z beach: It sounds a bit messy to me. 2014-09-07T06:46:35Z drmeiste_: If I've said this before I apologize, I've spent 12 hours locked in a room with 20 young scientists talking about "Atomically precise manufacturing applied to energy" all day. 2014-09-07T06:46:44Z beach: ... as in potential maintenance problems. 2014-09-07T06:47:02Z pjb: It's a bootstrapping system. 2014-09-07T06:49:14Z drmeiste_: I think it mirrors what ECL went through. They started with an S-expression walking interpreter and at some point wrote a Common Lisp compiler in C that generates byte-code and a second compiler that generates "C". 2014-09-07T06:49:45Z phadthai: yes, ecl-min and ecl 2014-09-07T06:50:43Z chitofan: is there an implicit progn in a loop's DO? 2014-09-07T06:50:50Z drmeiste_: I think they felt they had to write the byte-code compiler because the combination of a slow S-expression walking interpreter and a CL compiler that requires an external C compiler is not that great. Their bytecode compiler generates really fast code. But I found it to be impenetrable. I couldn't figure out how it works. 2014-09-07T06:50:51Z beach: chitofan: Yes. 2014-09-07T06:51:01Z chitofan: ok, thanks 2014-09-07T06:51:02Z pjb: chitofan: tagbody even! 2014-09-07T06:51:26Z antonv quit (Ping timeout: 268 seconds) 2014-09-07T06:51:40Z gingerale joined #lisp 2014-09-07T06:52:22Z drmeiste_: In retrospect I'm sure there are cleaner ways to get where I've gotten to. But at the time it seemed to be the only way. 2014-09-07T06:52:26Z beach: My philosophy with SICL is to try as much as possible to write things once. Then I try to figure out how to bootstrap it. 2014-09-07T06:54:44Z theos joined #lisp 2014-09-07T06:55:17Z drmeiste_: In my approach I had about 50 Common Lisp source files from ECL and I wanted to run them on top of new low-level functionality in C++ that interoperated with C++. So I wrote a reader (in C++, inspired by the one in SICL because it was written so clearly:-)) and started reading file #1. When it failed because some low level function wasn't available I wrote it and then tried to load the source file again. 2014-09-07T06:55:21Z phadthai: drmeiste_: the other issue is environments where ECL should ship without the requirement of an available compiler at runtime 2014-09-07T06:55:30Z drmeiste_: Rinse, lather repeat through 50 ECL Common Lisp source files. 2014-09-07T06:55:39Z Harag joined #lisp 2014-09-07T06:55:41Z phadthai: drmeiste_: err, available C compiler 2014-09-07T06:56:20Z drmeiste_: phadthai: How do you achieve that? Cross compilation? 2014-09-07T06:56:25Z MrWoohoo joined #lisp 2014-09-07T06:56:39Z vydd joined #lisp 2014-09-07T06:56:40Z phadthai: SBCL depends on CLisp or SBCL to bootstrap, but that also makes it harder to support more architectures 2014-09-07T06:56:52Z phadthai: drmeiste_: using the bytecode interpreter 2014-09-07T06:57:22Z drmeiste_: But all systems have C compilers don't they? 2014-09-07T06:57:34Z pjb: No, not really. 2014-09-07T06:57:59Z phadthai: those which support POSIX systems at least usually have C low level-code 2014-09-07T06:58:25Z phadthai: drmeiste_: Windows is a target where a compiler isn't always available 2014-09-07T06:58:41Z pjb: drmeiste_: for example, MacOS didn't have a C compiler for several years, while it had an assembler and a Pascal compiler. 2014-09-07T06:58:41Z drmeiste_: On systems without C compilers you can't compile ECL's C code to run the interpreter to interpret the bytecode. How does it work on systems like that. 2014-09-07T06:59:13Z pjb: It doesn't :-) 2014-09-07T06:59:15Z phadthai: drmeiste_: you compile in a system which does, then ship for systems which might not have one 2014-09-07T06:59:20Z phadthai: s/in/on/ 2014-09-07T06:59:26Z pjb: But for this, you need to provide for cross-compilation. 2014-09-07T06:59:31Z phadthai: right 2014-09-07T07:00:52Z vydd quit (Ping timeout: 240 seconds) 2014-09-07T07:00:53Z drmeiste_: beach: I appreciate what (I think) you are doing with SICL. You are trying to build a Common Lisp system written in as much Common Lisp as possible. So that the amount of low level code is at an absolute minimum. Is that correct? 2014-09-07T07:02:33Z drmeiste_: ECL has a LOT of low level functionality written in C. I wonder sometimes why there was so much. It might be a historical artifact. 2014-09-07T07:02:55Z pjb: drmeiste_: and optimization too. Clisp is like that too. 2014-09-07T07:03:18Z hitecnologys quit (Quit: hitecnologys) 2014-09-07T07:03:24Z pjb: while the CL->native compiler doesn't generate good enough code. 2014-09-07T07:04:52Z beach: drmeiste_: Yes, that sounds right. Plus that I am trying to make the code implementation-independent as much as possible, hoping that it will be useful for people like you who also write CL systems. 2014-09-07T07:05:45Z drmeiste_: I ended up matching ECL's C functionality almost one for one. Occasionally I substituted a Common Lisp version for a C function but maybe only a dozen times. 2014-09-07T07:05:51Z phadthai: drmeiste_: since ECL compiles to C, and that for embedding purposes C must also be able to call the libraries, writing them in C (or with minimally preprocessed-C) was a reasonable choice for ECL I think 2014-09-07T07:05:56Z beach: Combined with the fact that I don't want to compromise performance, it is not an easy task. 2014-09-07T07:07:15Z drmeiste_: beach: I agree, that is not an easy task. But if you write a "sufficiently smart compiler" then you can write your code in Common Lisp and have it run fast too. 2014-09-07T07:07:40Z beach: That's the idea, yes. 2014-09-07T07:07:43Z phadthai: I agree that it'd be nice, and that it seems like a tedious task 2014-09-07T07:07:54Z beach: tedious? 2014-09-07T07:07:56Z beach: How? 2014-09-07T07:08:08Z phadthai: "not an easy task" 2014-09-07T07:09:04Z beach: Sure. When I see "tedious", I think negative thoughts, like "tiresome" or "monotonous". But that's not at all the case. 2014-09-07T07:09:24Z phadthai: drmeiste_: and yes ECL inherited from a tradition from Tokyo Common Lisp, GCL 2014-09-07T07:09:29Z beach: "not an easy task" to me means research, papers, etc. 2014-09-07T07:09:42Z beach: phadthai: Kyoto. 2014-09-07T07:09:46Z beach: Not Tokyo. 2014-09-07T07:09:49Z phadthai: err yes :) 2014-09-07T07:11:45Z wuehlmaus quit (Quit: Lost terminal) 2014-09-07T07:12:06Z drmeiste_: "Tedious" is writing a C++ function to replace a C function that talks to Common Lisp code when you don't quite understand what the C function does in the first place and you are just trying to get the darn thing to fool the Common Lisp into thinking everything is ok. 2014-09-07T07:12:33Z beach: heh! 2014-09-07T07:12:44Z beach: Tedium competition? 2014-09-07T07:12:45Z drmeiste_: With PATHNAME I just gave up and took the ECL C code and translated it line by line into C++. 2014-09-07T07:12:52Z korqio- joined #lisp 2014-09-07T07:12:54Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-07T07:13:50Z drmeiste_: Amazingly it works. 2014-09-07T07:14:21Z ehu joined #lisp 2014-09-07T07:15:03Z drmeiste_: Then I run into things like I did yesterday where a Common Lisp function returned a fixnum and the ECL Common Lisp code used EQ to compare it to a fixnum literal. That works if you have tagged pointer/immediate value fixnums. It doesn't work if you have boxed fixnums on the heap (as I currently do). 2014-09-07T07:16:17Z drmeiste_: It still surprises me that I got everything to work even if it is slow. 2014-09-07T07:16:33Z beach: drmeiste_: I am convinced that many implementations are written like that, i.e., assuming only their own implementation. That's what I want to do differently with SICL; every time I write a module I try to think of how to do it so that it would be useful in other systems as wel. 2014-09-07T07:16:36Z beach: *well 2014-09-07T07:16:53Z mishoo joined #lisp 2014-09-07T07:16:58Z jusss joined #lisp 2014-09-07T07:17:14Z drmeiste_: Have you read Vernor Vinge "Deepness in the Sky"? It's science fiction. 2014-09-07T07:17:18Z cy quit (Quit: :q!) 2014-09-07T07:17:42Z beach: Me? No, can't say I have. 2014-09-07T07:18:12Z drmeiste_: Programmers were called "programmer archeologists" because they spent much of their time digging old code out of centuries old code-bases on these multigeneration space-ships. 2014-09-07T07:18:15Z edgar-rft joined #lisp 2014-09-07T07:18:25Z PersonX joined #lisp 2014-09-07T07:18:28Z beach: Is that how you feel? 2014-09-07T07:19:42Z drmeiste_: The question was asked "why doesn't someone just start over again and rewrite all of the code". The answer is that for any large codebase by the time you rewrite everything your new code will be as buggy and as inconsistent as the code you started with. 2014-09-07T07:19:59Z Zeedox_ joined #lisp 2014-09-07T07:20:46Z beach: I *almost* agree with that. 2014-09-07T07:20:48Z k-stz joined #lisp 2014-09-07T07:22:07Z pjb: drmeiste_: I don't agree with that. If done correctly, when you rewrite a system you get at least 1/10 of the code size (by generalizing and using better abstractions), so that you have reduced the number of bugs by at least a factor of 10. 2014-09-07T07:22:14Z drmeiste_: The author, Vernor Vinge is a mathematician who seems to understand complex systems. 2014-09-07T07:22:38Z pjb: Complexity in software systems is mostly self inflicted. 2014-09-07T07:22:46Z beach: pjb: The problem is that it is usually not done correctly. 2014-09-07T07:22:53Z pjb: Granted. 2014-09-07T07:23:04Z beach: pjb: I have seen incompetent people rewrite code just because they don't understand it. 2014-09-07T07:23:07Z PersonX quit (Ping timeout: 245 seconds) 2014-09-07T07:23:34Z beach: pjb: And then, the result is bound to be just as bad, since they are obviously not competent enough to understand existing code. 2014-09-07T07:23:41Z pjb: Well, I don't mind the code rewriting, I'd mind if they don't realize when they're done that the original code was better :-) 2014-09-07T07:23:53Z pjb: Code writing is a learning process. 2014-09-07T07:23:55Z drmeiste_: Yeah, understanding everything at once to make all the right decisions from the start requires a rare individual. 2014-09-07T07:25:01Z pjb: Well, of course, rewriting a system thrice to get it right is best done by the same team. 2014-09-07T07:25:38Z beach: I think the reason existing implementations are the way they are is that the goal was to get something running as fast as possible. 2014-09-07T07:25:54Z beach: When you rewrite (for the right reason), then you don't have that kind of pressure. 2014-09-07T07:26:11Z PersonX joined #lisp 2014-09-07T07:27:18Z beach: They kind of skipped the essential "refactoring" phase of XP. 2014-09-07T07:28:26Z drmeiste_: That was my goal. I thought "implement the 20-odd special operators and a few low level functions and vioila the Common Lisp source code will run and compile itself". Ho boy was I wrong. 2014-09-07T07:28:49Z pjb: You need to provide a vanilla set of CL macros too. 2014-09-07T07:28:57Z pjb: and sicl CL functions. 2014-09-07T07:29:16Z pjb: The point here is that most implementations have implementation specific expansions for the CL macros. 2014-09-07T07:29:34Z drmeiste_: I think something like a quarter of the Common Lisp functions are implemented in C within ECL and C++ now within Clasp. 2014-09-07T07:30:12Z ggole joined #lisp 2014-09-07T07:30:42Z drmeiste_: Does SBCL have any C code? Is it pure Common Lisp? 2014-09-07T07:31:01Z pjb: They thought the garbage collector had to be written in C :-/ 2014-09-07T07:31:24Z beach: drmeiste_: It does have some C code. 2014-09-07T07:33:40Z drmeiste_: For instance in ECL, OPEN is written in C. Why do that? Why not write it in Common Lisp? 2014-09-07T07:33:40Z alexey joined #lisp 2014-09-07T07:34:17Z drmeiste_: It's not a function that has to run that fast and it has a lot of logic in it. 2014-09-07T07:35:04Z pjb: Nothing should be written in C. Even unix kernels have been written in other languages such as Pascal. 2014-09-07T07:35:08Z drmeiste_: It's a rhetorical question of course. None of you were there when the decision was made to implement it in C. 2014-09-07T07:35:10Z nug700_ joined #lisp 2014-09-07T07:35:35Z banjara joined #lisp 2014-09-07T07:35:44Z drmeiste_: But some of it just mystifies me. 2014-09-07T07:36:05Z korqio quit (Ping timeout: 260 seconds) 2014-09-07T07:36:22Z beach: drmeiste_: Writing OPEN in Lisp would require an existing OS interface for Lisp. Since libc already has that, it is probably easier to write it in C. 2014-09-07T07:36:22Z Shaftoe___ joined #lisp 2014-09-07T07:36:23Z drmeiste_: And I had to duplicate it because otherwise I might introduce some difference that would bite me later on. 2014-09-07T07:36:30Z brucem: drmeiste_: in SBCl, there also some bits in C to avoid pain with symbol versioning in the libc. 2014-09-07T07:37:54Z alexey quit (Ping timeout: 246 seconds) 2014-09-07T07:38:41Z nug700 quit (Ping timeout: 276 seconds) 2014-09-07T07:38:56Z korqio joined #lisp 2014-09-07T07:39:49Z brucem: drmeiste_: an example of that is the opendir/closedir stuff in src/runtime/wrap.c 2014-09-07T07:40:57Z drmeiste_: brucem: In ECL? 2014-09-07T07:41:29Z brucem: drmeiste_: dunno what ECL does there :) I just know what SBCL does there as I had to deal with something similar. 2014-09-07T07:41:34Z drmeister quit (Remote host closed the connection) 2014-09-07T07:41:49Z drmeister joined #lisp 2014-09-07T07:42:16Z drmeiste_: Ah, SBCL. Well, I find the idea of a language that is completely written in itself to be fascinating. 2014-09-07T07:42:58Z dmiles_afk joined #lisp 2014-09-07T07:43:38Z drmeiste_: That's not exactly what we are talking about here. But it's fascinating nonetheless. 2014-09-07T07:44:50Z drmeiste_: And I'm curious beach with how far you can go in terms of writing a CL that is written completely in system independent CL. 2014-09-07T07:47:09Z drmeiste_: I'm interested in the question of what is the minimum sized molecular system that could replicate itself that could be used to manufacture other products. It's a related question. 2014-09-07T07:47:15Z beach: drmeiste_: By "system", do you mean "operating system" or "CL implementation"? 2014-09-07T07:48:42Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-07T07:49:12Z beach: If "CL implementation" independent, clearly you need to make decisions about low-level representation of objects, etc. That part is always going to be implementation-specific. 2014-09-07T07:49:19Z drmeiste_: I guess both. I meant, idiomatic, portable Common Lisp with as few interactions with the underlying operating system as possible. 2014-09-07T07:49:34Z pt1 joined #lisp 2014-09-07T07:49:52Z beach: You need the underlying OS for things like opening files, I/O, etc. 2014-09-07T07:50:28Z beach: And you probably want to provide OS services to the users of your CL implementation. 2014-09-07T07:50:54Z PersonX quit (Ping timeout: 272 seconds) 2014-09-07T07:52:09Z beach: Hence this project: http://metamodular.com/POSIX-API/posix-api.html 2014-09-07T07:53:31Z beach: drmeiste_: I think it is mostly a matter of making compromises for reasons of performance. 2014-09-07T07:54:29Z beach: Example: SBCL LOOP, when traversing a vector with ACROSS uses an implementation-specific expansion. I am guessing for performance reasons. 2014-09-07T07:55:21Z beach: SICL LOOP expands it to AREFs. To make that fast, I will need to recognize looping over vectors in the compiler optimization phase. 2014-09-07T07:57:26Z vydd joined #lisp 2014-09-07T07:58:19Z Shaftoe___ joined #lisp 2014-09-07T07:58:22Z drmeiste_: You think things through. I'm glad that you feel this is valuable to do in Common Lisp - it makes me feel better for choosing it as my own language of choice. 2014-09-07T07:59:14Z drmeiste_: C++ - she don't mean nothin' to me. It's just physical don't you see? Common Lisp - you are the only language for me. 2014-09-07T07:59:32Z beach: :) 2014-09-07T08:00:00Z drmeiste_: Was Scheme too easy? 2014-09-07T08:00:06Z beach: I think things through because that's in the job description of a researcher. I can't think of any more interesting project as the basis for research than implementing Common Lisp. 2014-09-07T08:00:20Z Shaftoe___ quit (Client Quit) 2014-09-07T08:01:14Z beach: drmeiste_: Too easy for what? 2014-09-07T08:02:17Z vydd quit (Ping timeout: 272 seconds) 2014-09-07T08:02:33Z drmeiste_: It's another dialect of Lisp that one could use to implement a more pure, modular version of the language. 2014-09-07T08:03:42Z whmark: why does read-char-no-hang hang? I thought it wasn't supposed to hang if there is nothing to read. 2014-09-07T08:04:01Z whmark: I'm reading from a fifo file btw 2014-09-07T08:04:51Z Mandus quit (Ping timeout: 246 seconds) 2014-09-07T08:06:15Z H4ns: it should not hang. maybe it is a bug in your implementation. 2014-09-07T08:06:38Z PersonX joined #lisp 2014-09-07T08:07:05Z drmeiste_: beach: Don't worry about it. I'm being a little too philosophical. I've had a long day and my inner clock thinks its 4:00am. I should just shut up and go to bed. 2014-09-07T08:07:08Z whmark: I'm using sbcl 2014-09-07T08:07:48Z drmeiste_ trundles off to bed - 'night all. 2014-09-07T08:07:51Z H4ns: whmark: can you come up with a minimal example demonstrating the problem? 2014-09-07T08:08:20Z banjara quit (Quit: Leaving.) 2014-09-07T08:08:34Z drmeiste_ quit (Quit: Leaving...) 2014-09-07T08:08:51Z H4ns: whmark: are you sure that it is read-char-no-hang that hangs and not the open call? 2014-09-07T08:09:31Z whmark: (with-open-file (f "fifo") 2014-09-07T08:09:31Z whmark: (read-char-no-hang f)) 2014-09-07T08:09:32Z whmark: it hangs until I run 'echo "hello" >> fifo' 2014-09-07T08:09:46Z whmark: then it returns #\h 2014-09-07T08:10:07Z H4ns: whmark: it is the open that hangs. 2014-09-07T08:10:44Z H4ns: whmark: a fifo can be opened for read only when there is a writer. if there is no writer, an open for reading will hang. 2014-09-07T08:11:25Z whmark: ah ok 2014-09-07T08:12:54Z H4ns: whmark: "my pleasure" 2014-09-07T08:13:00Z zophy joined #lisp 2014-09-07T08:14:34Z whmark: I tried 'echo <> fifo' then ran the above lisp code, but it still hangs until echo returns. I guess its because echo doesn't flush the output as it recieves input. Is there a way to do what I'm wanting or should I just use a regular socket instead? 2014-09-07T08:15:15Z H4ns: whmark: use cat. or a common lisp function that uses read-line and flush. 2014-09-07T08:22:06Z chitofan: my emacs hangs when i get a stack overflow 2014-09-07T08:22:10Z chitofan: what is a stack overflow exactly? 2014-09-07T08:22:45Z stepnem joined #lisp 2014-09-07T08:23:07Z Shinmera: surely wikipedia can help you with that 2014-09-07T08:23:37Z PersonX quit (Ping timeout: 245 seconds) 2014-09-07T08:25:21Z whmark: chitofan: stack overflow is a website 2014-09-07T08:25:48Z Bike: generally a stack overflow in lisp is going to be due to a function calling itself recursively without limit. 2014-09-07T08:27:33Z pt1 quit (Remote host closed the connection) 2014-09-07T08:31:12Z Vutral quit (Excess Flood) 2014-09-07T08:33:26Z Mandus joined #lisp 2014-09-07T08:35:29Z Vutral joined #lisp 2014-09-07T08:36:13Z jtza8 joined #lisp 2014-09-07T08:36:26Z PersonX joined #lisp 2014-09-07T08:38:03Z ARM9 joined #lisp 2014-09-07T08:42:05Z drmeister quit (Remote host closed the connection) 2014-09-07T08:42:39Z drmeister joined #lisp 2014-09-07T08:47:08Z ndrei joined #lisp 2014-09-07T08:53:51Z Zeedox_ quit (Ping timeout: 246 seconds) 2014-09-07T08:54:18Z ee_cc joined #lisp 2014-09-07T08:54:49Z defaultxr quit (Quit: gnight) 2014-09-07T08:58:12Z vydd joined #lisp 2014-09-07T09:01:32Z ee_cc quit (Quit: ee_cc) 2014-09-07T09:01:50Z Shaftoe___ joined #lisp 2014-09-07T09:02:22Z vydd quit (Ping timeout: 245 seconds) 2014-09-07T09:02:27Z shka joined #lisp 2014-09-07T09:02:38Z shka: ave tux! 2014-09-07T09:06:09Z Vutral quit (Ping timeout: 260 seconds) 2014-09-07T09:06:31Z wilfredh joined #lisp 2014-09-07T09:06:40Z Mon_Ouie joined #lisp 2014-09-07T09:08:53Z varjag joined #lisp 2014-09-07T09:09:40Z vaporatorius joined #lisp 2014-09-07T09:10:19Z beach: hello shka 2014-09-07T09:10:45Z Shaftoe___ quit (Ping timeout: 264 seconds) 2014-09-07T09:12:29Z Vutral joined #lisp 2014-09-07T09:13:18Z shka: beach: generating webpages from the common lisp code is way better than writting it by hand 2014-09-07T09:13:38Z shka: strange that common lisp is not a major language in web development 2014-09-07T09:15:53Z Shinmera: Parenphobia 2014-09-07T09:21:00Z shka: yeah 2014-09-07T09:21:17Z Shinmera: Among other reasons 2014-09-07T09:21:23Z PersonX quit (Remote host closed the connection) 2014-09-07T09:21:26Z shka: because operator priority and syntax clusterfuck is just that better 2014-09-07T09:21:29Z beach: shka: What are you referring to? 2014-09-07T09:21:37Z shka: who needs regularity! 2014-09-07T09:21:43Z shka: who needs simple rules! 2014-09-07T09:21:52Z shka: it only gives us parenthesis! 2014-09-07T09:22:21Z nug700_ quit (Quit: bye) 2014-09-07T09:22:27Z shka: beach: with common lisp you can write everything in the same language 2014-09-07T09:22:34Z shka: js, html, backend 2014-09-07T09:22:35Z Shaftoe___ joined #lisp 2014-09-07T09:22:40Z beach: shka: What hand-written web pages are you referring to? 2014-09-07T09:23:13Z PersonX joined #lisp 2014-09-07T09:23:15Z shka: i'm not refering to the web pages, but to the process of creating web pages with main stream tools 2014-09-07T09:23:30Z Shaftoe____ joined #lisp 2014-09-07T09:24:03Z beach: shka: I am afraid I must have missed the context. Yes, I know that it is better to generate web pages than writing them by hand, but I don't know why you are telling me this. 2014-09-07T09:24:03Z shka: common lisp grants more uniform way to handle that 2014-09-07T09:24:11Z PersonX quit (Max SendQ exceeded) 2014-09-07T09:24:37Z shka: beach: sorry, i'm just over-excited about this 2014-09-07T09:24:48Z shka: i make no sense most likely 2014-09-07T09:24:56Z shka: ^^ 2014-09-07T09:26:33Z shka: anyway 2014-09-07T09:26:51Z shka: beach: how sundays goes? 2014-09-07T09:27:33Z Shaftoe___ quit (Ping timeout: 264 seconds) 2014-09-07T09:27:33Z Shaftoe____ is now known as Shaftoe___ 2014-09-07T09:27:43Z mood: Is there a function (in the standard, alexandria, or whatever) that splits a list into multiple lists based on some property of the elements satisfying a test? 2014-09-07T09:27:53Z leo2007 quit (Ping timeout: 276 seconds) 2014-09-07T09:28:07Z Shaftoe___ quit (Client Quit) 2014-09-07T09:28:26Z shka: mood: sadly, not in the standard 2014-09-07T09:28:40Z shka: but there is a library that does grouping 2014-09-07T09:29:02Z shka: and i guess that's what you are really trying to do, right? 2014-09-07T09:29:07Z Shinmera: mood: split-sequence 2014-09-07T09:29:11Z mood: shka: yes 2014-09-07T09:30:16Z shka: Shinmera: nice, i didn't knew about split-sequence 2014-09-07T09:30:27Z shka: mood: it is trivial to write such tool 2014-09-07T09:30:33Z shka: give me a second 2014-09-07T09:30:34Z mood: Shinmera: I could abuse split-sequence to do what I want by first sorting the list and then split-sequence-if with a closure that keeps track of the last thing, but it seems very ugly 2014-09-07T09:30:39Z mood: Shinmera: Or am I missing something? 2014-09-07T09:31:13Z Shinmera: mood: I'm not sure what exactly you want to do? 2014-09-07T09:32:25Z mood: Shinmera: Basically grouping items based on some thing being equal. So if I have a list of objects which have a slot GROUP which is a number, I want to split the list into multiple lists, each of which contains objects which have the same value for GROUP 2014-09-07T09:32:39Z beach: shka: Sunday goes fine, thank you. Yours? 2014-09-07T09:32:44Z Shinmera: mood: Ah, I see. 2014-09-07T09:32:59Z shka: http://paste.lisp.org/display/143645 2014-09-07T09:33:05Z shka: mood: something like this? 2014-09-07T09:33:07Z Shinmera: mood: You could abuse sorting+split-sequence for that, but it doesn't sit quite right with me 2014-09-07T09:34:02Z shka: beach: excelent, but last days of summer makes me kinda nostalgic 2014-09-07T09:34:33Z shka: mood: could you check if the pasted code does what you need to do? 2014-09-07T09:34:33Z alexey joined #lisp 2014-09-07T09:34:59Z mood: shka: Something like that, yes 2014-09-07T09:35:42Z Vutral_ quit (Ping timeout: 245 seconds) 2014-09-07T09:35:46Z Shinmera: mood: idk if this is good, but certainly more readable than whatever it is shka made http://plaster.tymoon.eu/view/6P# 2014-09-07T09:37:20Z Shinmera: Obviously will only work for standard equality comparisons 2014-09-07T09:37:21Z zarul quit (Ping timeout: 255 seconds) 2014-09-07T09:37:59Z shka: Shinmera: you are making me sad 2014-09-07T09:38:03Z mood: Shinmera: That looks good too. I only need standard equality comparisons right now, so I'm going to use that 2014-09-07T09:38:37Z Shinmera: shka: I'm sorry that I can't grok 15 lines of jumbled code immediately 2014-09-07T09:39:00Z shka: heh, ok, we still can be friends 2014-09-07T09:39:11Z alexey quit (Ping timeout: 272 seconds) 2014-09-07T09:39:45Z Vutral quit (Ping timeout: 260 seconds) 2014-09-07T09:39:46Z shka: i admit that i tend to write quite condensed code 2014-09-07T09:41:12Z PersonX joined #lisp 2014-09-07T09:42:12Z PersonX quit (Max SendQ exceeded) 2014-09-07T09:44:36Z oleo__ joined #lisp 2014-09-07T09:45:08Z oleo is now known as Guest26340 2014-09-07T09:46:21Z Guest26340 quit (Ping timeout: 255 seconds) 2014-09-07T09:48:14Z rme joined #lisp 2014-09-07T09:48:30Z Vutral joined #lisp 2014-09-07T09:48:56Z PersonX joined #lisp 2014-09-07T09:49:56Z PersonX quit (Max SendQ exceeded) 2014-09-07T09:51:42Z ee_cc_ joined #lisp 2014-09-07T09:52:18Z attila_lendvai joined #lisp 2014-09-07T09:52:45Z PersonX joined #lisp 2014-09-07T09:54:00Z milosn_ joined #lisp 2014-09-07T09:54:20Z milosn_ quit (Client Quit) 2014-09-07T09:54:52Z milosn_ joined #lisp 2014-09-07T09:55:00Z milosn_ quit (Client Quit) 2014-09-07T09:55:07Z Ethan- joined #lisp 2014-09-07T09:57:26Z dnm joined #lisp 2014-09-07T10:00:03Z wasamasa: mood: perhaps you're looking for something implementing a "group by" function 2014-09-07T10:00:27Z wasamasa: mood: to give you something better to look out for 2014-09-07T10:00:43Z mood: wasamasa: Yes, I figured that out. Thanks 2014-09-07T10:01:28Z mood: wasamasa: I don't actually know why I didn't think of that term myself before asking 2014-09-07T10:01:55Z wasamasa: mood: must be most people rather associating it with sql :P 2014-09-07T10:03:32Z ee_cc_ quit (Quit: ee_cc_) 2014-09-07T10:04:35Z kushal joined #lisp 2014-09-07T10:04:44Z kushal quit (Changing host) 2014-09-07T10:04:44Z kushal joined #lisp 2014-09-07T10:05:10Z pjb: beach: you don't need the underlying OS, to write a compiler for a program that needs the underlying OS. 2014-09-07T10:05:20Z pjb: This is the basic principle of cross-compilation. 2014-09-07T10:05:44Z pjb: When you write a compiler in conforming Common Lisp targetting a unix system, you are basically cross-compiling. 2014-09-07T10:06:18Z CrazyEddy quit (Ping timeout: 246 seconds) 2014-09-07T10:06:34Z pjb: (as long as you have a way to convert eg. (unsigned-byte 8) files to executables, which on unix systems is just identity). 2014-09-07T10:06:41Z pjb: + chmod 2014-09-07T10:07:08Z beach: Right. 2014-09-07T10:07:48Z beach: pjb: I was not thinking of the cross compiler when I wrote that, but of the runtime system. 2014-09-07T10:07:57Z beach: I might have been answering the wrong question. 2014-09-07T10:08:30Z drmeister quit (Remote host closed the connection) 2014-09-07T10:08:43Z drmeister joined #lisp 2014-09-07T10:13:22Z schaueho joined #lisp 2014-09-07T10:14:12Z ee_cc_ joined #lisp 2014-09-07T10:14:57Z AeroNotix: anyone speak russian in here? 2014-09-07T10:16:21Z wasamasa: sorry, I just read russian 2014-09-07T10:16:29Z pjb: beach: my point is that you can "access" the run-time system indirectly, by generating the right native code file format. (ie. x86 in a ELF file). 2014-09-07T10:16:57Z beach: pjb: Yeah, sure. I see what you mean. 2014-09-07T10:17:08Z wasamasa: but I can't write any 2014-09-07T10:17:38Z pjb: wasamasa: M-x set-input-method RET russian-computer RET and write some! 2014-09-07T10:18:23Z Grue`: AeroNotix: yes 2014-09-07T10:18:29Z AeroNotix: Grue`: pm 2014-09-07T10:20:21Z Vutral quit (Ping timeout: 260 seconds) 2014-09-07T10:21:40Z wasamasa: ;_; 2014-09-07T10:22:36Z CrazyEddy joined #lisp 2014-09-07T10:23:15Z mrSpec quit (Remote host closed the connection) 2014-09-07T10:26:26Z Vutral joined #lisp 2014-09-07T10:31:43Z leo2007 joined #lisp 2014-09-07T10:32:12Z gadmyth joined #lisp 2014-09-07T10:33:28Z Vutral_ joined #lisp 2014-09-07T10:35:29Z dnm quit (Ping timeout: 276 seconds) 2014-09-07T10:44:32Z hugod|away is now known as hugod 2014-09-07T10:59:45Z vydd joined #lisp 2014-09-07T11:00:13Z nand1 joined #lisp 2014-09-07T11:01:23Z zarul joined #lisp 2014-09-07T11:02:17Z korqio- quit (Ping timeout: 245 seconds) 2014-09-07T11:02:31Z DrCode quit (Remote host closed the connection) 2014-09-07T11:04:00Z DrCode joined #lisp 2014-09-07T11:04:12Z vydd quit (Ping timeout: 255 seconds) 2014-09-07T11:07:47Z DGASAU quit (Ping timeout: 245 seconds) 2014-09-07T11:08:13Z pt1 joined #lisp 2014-09-07T11:08:34Z drmeister quit (Remote host closed the connection) 2014-09-07T11:09:08Z drmeister joined #lisp 2014-09-07T11:11:55Z dmiles_afk quit (Quit: Read error: 110 (Connection timed out)) 2014-09-07T11:12:02Z gadmyth quit (Remote host closed the connection) 2014-09-07T11:16:48Z rme quit (Quit: rme) 2014-09-07T11:17:39Z vaporatorius quit (Quit: Leaving) 2014-09-07T11:18:09Z jtza8 quit (Ping timeout: 255 seconds) 2014-09-07T11:27:17Z kjeldahl quit (Ping timeout: 252 seconds) 2014-09-07T11:30:20Z kjeldahl joined #lisp 2014-09-07T11:30:41Z ejbs joined #lisp 2014-09-07T11:33:23Z hiroakip joined #lisp 2014-09-07T11:35:25Z alexey joined #lisp 2014-09-07T11:37:17Z pnpuff joined #lisp 2014-09-07T11:39:45Z alexey quit (Ping timeout: 255 seconds) 2014-09-07T11:44:06Z yakcc joined #lisp 2014-09-07T11:44:13Z Nizumzen joined #lisp 2014-09-07T11:52:16Z dmiles_afk joined #lisp 2014-09-07T11:53:05Z ustunozgur joined #lisp 2014-09-07T11:58:10Z jtza8 joined #lisp 2014-09-07T11:59:44Z Longlius quit (Remote host closed the connection) 2014-09-07T12:00:03Z Beetny quit (Ping timeout: 246 seconds) 2014-09-07T12:00:28Z vydd joined #lisp 2014-09-07T12:01:53Z Longlius joined #lisp 2014-09-07T12:03:18Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-07T12:03:24Z husker joined #lisp 2014-09-07T12:05:30Z vydd quit (Ping timeout: 272 seconds) 2014-09-07T12:08:54Z drmeister quit (Remote host closed the connection) 2014-09-07T12:09:05Z drmeister joined #lisp 2014-09-07T12:15:33Z ircbrowse quit (Changing host) 2014-09-07T12:15:33Z ircbrowse joined #lisp 2014-09-07T12:17:57Z cmatei quit (Remote host closed the connection) 2014-09-07T12:19:12Z EvW joined #lisp 2014-09-07T12:19:22Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-07T12:20:20Z cmatei joined #lisp 2014-09-07T12:20:55Z CrazyEddy joined #lisp 2014-09-07T12:21:13Z pt1 quit (Remote host closed the connection) 2014-09-07T12:23:42Z Ven joined #lisp 2014-09-07T12:25:08Z Mon_Ouie quit (Ping timeout: 272 seconds) 2014-09-07T12:25:16Z YDJX joined #lisp 2014-09-07T12:29:22Z jtza8 quit (Ping timeout: 268 seconds) 2014-09-07T12:29:27Z vydd joined #lisp 2014-09-07T12:30:09Z CrazyEddy quit (Ping timeout: 246 seconds) 2014-09-07T12:30:50Z Longlius quit (Ping timeout: 272 seconds) 2014-09-07T12:31:18Z jtza8 joined #lisp 2014-09-07T12:38:44Z alexey joined #lisp 2014-09-07T12:42:47Z zophy quit (Ping timeout: 245 seconds) 2014-09-07T12:42:53Z hiroakip quit (Ping timeout: 276 seconds) 2014-09-07T12:43:43Z malbertife joined #lisp 2014-09-07T12:44:16Z Longlius joined #lisp 2014-09-07T12:45:05Z Karl_Dscc joined #lisp 2014-09-07T12:45:43Z CrazyEddy joined #lisp 2014-09-07T12:46:51Z hiroakip joined #lisp 2014-09-07T12:53:36Z CrazyEddy quit (Ping timeout: 246 seconds) 2014-09-07T12:54:24Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-07T12:54:24Z Mon_Ouie joined #lisp 2014-09-07T12:56:42Z husker quit (Quit: husker) 2014-09-07T12:57:37Z pt1 joined #lisp 2014-09-07T13:00:00Z chitofan quit (Quit: Page closed) 2014-09-07T13:01:52Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-07T13:04:34Z yakcc quit (Quit: rcirc on GNU Emacs 24.3.1) 2014-09-07T13:04:35Z mutley89 joined #lisp 2014-09-07T13:05:11Z jusss quit (Read error: Connection reset by peer) 2014-09-07T13:06:31Z CrazyEddy joined #lisp 2014-09-07T13:07:49Z alexey quit (Remote host closed the connection) 2014-09-07T13:08:56Z drmeister quit (Remote host closed the connection) 2014-09-07T13:09:36Z drmeister joined #lisp 2014-09-07T13:10:27Z pnpuff left #lisp 2014-09-07T13:12:14Z husker joined #lisp 2014-09-07T13:12:46Z ustunozgur quit (Remote host closed the connection) 2014-09-07T13:13:21Z ustunozgur joined #lisp 2014-09-07T13:14:30Z EvW quit (Remote host closed the connection) 2014-09-07T13:18:19Z Nizumzen joined #lisp 2014-09-07T13:18:39Z EvW joined #lisp 2014-09-07T13:19:18Z mutley89 quit (Ping timeout: 252 seconds) 2014-09-07T13:20:07Z zophy joined #lisp 2014-09-07T13:24:28Z alexey joined #lisp 2014-09-07T13:29:55Z _paul0 joined #lisp 2014-09-07T13:32:17Z paul0 quit (Ping timeout: 245 seconds) 2014-09-07T13:32:50Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-07T13:33:26Z wilfredh quit (Quit: Connection closed for inactivity) 2014-09-07T13:33:48Z pnpuff joined #lisp 2014-09-07T13:34:16Z resttime quit (Quit: resttime) 2014-09-07T13:38:43Z fikusz_ quit (Remote host closed the connection) 2014-09-07T13:42:34Z pnpuff quit (Ping timeout: 260 seconds) 2014-09-07T13:47:39Z Maurice_TCF quit (Quit: Leaving) 2014-09-07T13:48:04Z Maurice_TCF joined #lisp 2014-09-07T13:49:46Z Adlai quit (Remote host closed the connection) 2014-09-07T13:49:47Z Maurice_TCF quit (Client Quit) 2014-09-07T13:50:13Z Adlai joined #lisp 2014-09-07T13:55:08Z rwiker_ joined #lisp 2014-09-07T13:55:40Z rwiker_ quit (Client Quit) 2014-09-07T14:01:09Z munge joined #lisp 2014-09-07T14:06:11Z CrazyEddy quit (Ping timeout: 268 seconds) 2014-09-07T14:09:03Z TomRS joined #lisp 2014-09-07T14:09:11Z CrazyEddy joined #lisp 2014-09-07T14:11:47Z Davidbrcz joined #lisp 2014-09-07T14:13:13Z drmeister quit (Remote host closed the connection) 2014-09-07T14:13:28Z drmeister joined #lisp 2014-09-07T14:13:37Z nell quit (Ping timeout: 245 seconds) 2014-09-07T14:15:01Z ARM9 quit (Quit: swi 0x06) 2014-09-07T14:16:23Z kpreid quit (Quit: Quitting) 2014-09-07T14:16:37Z kpreid joined #lisp 2014-09-07T14:17:36Z Davidbrcz quit (Ping timeout: 252 seconds) 2014-09-07T14:18:39Z CrazyEddy quit (Ping timeout: 246 seconds) 2014-09-07T14:19:08Z Maurice_TCF joined #lisp 2014-09-07T14:21:43Z Zeedox_ joined #lisp 2014-09-07T14:27:13Z Vutral quit (Ping timeout: 260 seconds) 2014-09-07T14:27:32Z TomRS` joined #lisp 2014-09-07T14:28:29Z mutley89 joined #lisp 2014-09-07T14:28:31Z jusss joined #lisp 2014-09-07T14:29:56Z protist quit (Quit: Konversation terminated!) 2014-09-07T14:30:01Z gravicappa quit (Ping timeout: 260 seconds) 2014-09-07T14:30:26Z TomRS quit (Ping timeout: 252 seconds) 2014-09-07T14:32:16Z CrazyEddy joined #lisp 2014-09-07T14:34:38Z Maurice_TCF quit (Quit: This computer has gone to sleep) 2014-09-07T14:34:38Z Vutral joined #lisp 2014-09-07T14:39:19Z gravicappa joined #lisp 2014-09-07T14:43:05Z Vutral_ quit (Ping timeout: 260 seconds) 2014-09-07T14:45:15Z Davidbrcz joined #lisp 2014-09-07T14:46:30Z henesy joined #lisp 2014-09-07T14:48:13Z Vutral quit (Ping timeout: 260 seconds) 2014-09-07T14:50:17Z zophy quit (Ping timeout: 276 seconds) 2014-09-07T14:52:08Z yukko joined #lisp 2014-09-07T14:52:21Z Maurice_TCF joined #lisp 2014-09-07T14:52:26Z mishoo quit (Ping timeout: 252 seconds) 2014-09-07T14:52:46Z yukko: so what is a lisp exactly? 2014-09-07T14:53:05Z chitofan joined #lisp 2014-09-07T14:53:44Z Shinmera: A speech impediment and/or a way to be smug 2014-09-07T14:54:00Z yukko: lol 2014-09-07T14:55:55Z beach: yukko: A fantastically powerful general-purpose programming language. 2014-09-07T14:58:28Z alexey quit (Remote host closed the connection) 2014-09-07T14:59:21Z AdmiralBumbleBee joined #lisp 2014-09-07T14:59:29Z Vutral joined #lisp 2014-09-07T15:00:11Z YDJX left #lisp 2014-09-07T15:00:31Z Vutral quit (Excess Flood) 2014-09-07T15:02:22Z Davidbrcz quit (Ping timeout: 240 seconds) 2014-09-07T15:02:40Z wasamasa: what is a yukko exactly? 2014-09-07T15:03:37Z shka: yukko: lisp is a family of programming languages with common characteristics 2014-09-07T15:04:22Z shka: and as beach mentioned, those characteristics makes it extreamly powerfull 2014-09-07T15:04:35Z mrSpec joined #lisp 2014-09-07T15:04:36Z beach: shka: Turn on your spell checker! :) 2014-09-07T15:05:15Z shka: beach: i can't! 2014-09-07T15:05:18Z beach: shka: M-x flyspell-mode. 2014-09-07T15:05:30Z shka: this won't work on irssi, but thanks 2014-09-07T15:05:32Z beach: shka: Why are you using inferior tools without spell checkers? 2014-09-07T15:05:48Z Shinmera: shka: Weechat has spellchecker and is generally better than irssi. 2014-09-07T15:05:49Z wasamasa: I'm not sure I'd like spell checking in irc 2014-09-07T15:05:57Z leo2007 quit (Ping timeout: 264 seconds) 2014-09-07T15:06:02Z shka: Shinmera: i use weechat at home 2014-09-07T15:06:19Z beach: wasamasa: It's for the benefit of the others. 2014-09-07T15:06:28Z shka: but now i'm out and only crappy netbook here 2014-09-07T15:06:38Z Shinmera: shka: What's stopping you from installing weechat? 2014-09-07T15:06:47Z wasamasa: beach: it's not like I'd benefit from spell checking anyways 2014-09-07T15:06:58Z Vutral joined #lisp 2014-09-07T15:07:04Z shka: well, i guess i should like to do that 2014-09-07T15:07:14Z shka: give me a second, i will install weechat 2014-09-07T15:07:38Z wasamasa: beach: something along the lines of "High cyclomatic complexity detected!" would be far more useful 2014-09-07T15:07:40Z beach: wasamasa: Congratulations to not needing it! 2014-09-07T15:08:06Z cpape joined #lisp 2014-09-07T15:08:07Z shka quit (Quit: leaving) 2014-09-07T15:08:21Z beach: wasamasa: I speak several languages with slightly different spelling of common words, so I am turning dyslexic with age. 2014-09-07T15:08:32Z wasamasa: beach: or "This sentence could use some love." 2014-09-07T15:08:48Z shka joined #lisp 2014-09-07T15:08:53Z shka: ok, i'm back 2014-09-07T15:09:11Z beach: wasamasa: No point in debating it. You don't need it; good for you! 2014-09-07T15:09:12Z shka: Shinmera: can you please, remind me how did we install addons for weechat? 2014-09-07T15:09:21Z pnpuff joined #lisp 2014-09-07T15:09:37Z shka: well, wasamasa is not hopelessly dyslectic :] 2014-09-07T15:09:59Z wasamasa: shka: dyslexic? 2014-09-07T15:10:06Z shka: wasamasa: yes, that 2014-09-07T15:10:08Z wasamasa: shka: oh snap, that was supposed to be a joke 2014-09-07T15:10:10Z shka: thanks ^^ 2014-09-07T15:10:10Z TomRS`` joined #lisp 2014-09-07T15:10:10Z wasamasa: ,whoosh 2014-09-07T15:10:11Z Shinmera: shka: Can't quite remember, been ages since I set this thing up 2014-09-07T15:10:20Z shka: heh, same here 2014-09-07T15:10:22Z pnpuff quit (Client Quit) 2014-09-07T15:10:28Z wasamasa: shka: I've heard good things about an /iset plugin 2014-09-07T15:11:16Z shka: i belive there was a shortcut for that 2014-09-07T15:12:18Z wasamasa: I've also heard they've integrated a command to install scripts by now 2014-09-07T15:12:28Z wasamasa: must be some no-nonsense name like /script 2014-09-07T15:12:34Z wasamasa: just like in irssi 2014-09-07T15:12:45Z mood: It is indeed called /script 2014-09-07T15:12:54Z TomRS` quit (Ping timeout: 246 seconds) 2014-09-07T15:13:14Z drmeister quit (Remote host closed the connection) 2014-09-07T15:13:52Z drmeister joined #lisp 2014-09-07T15:14:12Z cpape quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-07T15:14:53Z shka: ok 2014-09-07T15:15:02Z shka: aspell is installed by default 2014-09-07T15:15:11Z shka: but it does not work 2014-09-07T15:15:16Z shka: (everything is red) 2014-09-07T15:15:25Z shka: maybe i miss dictionary 2014-09-07T15:15:34Z wasamasa: perhaps 2014-09-07T15:16:16Z shka: eeeh, still red 2014-09-07T15:18:13Z chitofan: http://paste.lisp.org/display/143647 2014-09-07T15:18:20Z chitofan: i thought do has an implicit progn? 2014-09-07T15:18:41Z pjb: chitofan: there's no stop condition to your loop! 2014-09-07T15:18:57Z chitofan: when (= i (length rows)) ? 2014-09-07T15:19:04Z pjb: When that, WHAT? 2014-09-07T15:19:14Z pjb: chitofan: it doesn't matter since you have only one expression after DO. But otherwise, yes. 2014-09-07T15:19:18Z shka: chitofan: sadly pjb is right 2014-09-07T15:19:21Z Mon_Ouie quit (Ping timeout: 255 seconds) 2014-09-07T15:19:22Z Shinmera: you want until 2014-09-07T15:19:22Z chitofan: oh.. 2014-09-07T15:19:28Z chitofan: okay :) 2014-09-07T15:19:43Z Shinmera: most likely. 2014-09-07T15:20:02Z dkcl joined #lisp 2014-09-07T15:20:10Z pjb: beach: blame others for not speaking Latin. 2014-09-07T15:21:33Z Maurice_TCF quit (Quit: This computer has gone to sleep) 2014-09-07T15:21:36Z shka: pjb: i actually was learning latin at the high school 2014-09-07T15:21:43Z pjb: chitofan: be sure you understand the difference between when while until and unless! 2014-09-07T15:21:47Z shka: but as you can see, it didn't do my anything good 2014-09-07T15:21:53Z chitofan: so sorry 2014-09-07T15:22:17Z pjb: In Europe, Latin should be obligatory first idiom taught to everybody. I mean, if they were serious about Europe anyways… 2014-09-07T15:23:01Z beach: In your dreams. 2014-09-07T15:23:02Z shka: chitofan: don't worry, you can live without for loop ;-) 2014-09-07T15:23:53Z dkcl huggles LOOP 2014-09-07T15:23:57Z Shinmera: Latin was a monumental waste of my time 2014-09-07T15:24:03Z wasamasa: ^ 2014-09-07T15:24:12Z shka: Shinmera: but, please note: "monumental" 2014-09-07T15:25:01Z Shinmera: shka: I don't need to learn latin grammar to know a word 2014-09-07T15:25:22Z shka: that's certainly true 2014-09-07T15:25:37Z beach: I am reading up on region-based compilation, and I think it can be very useful for compiling CL. 2014-09-07T15:25:44Z beach: [just to get back on topic] 2014-09-07T15:26:21Z shka: beach: do you actually work on compiler? 2014-09-07T15:26:21Z Ethan- quit (Ping timeout: 264 seconds) 2014-09-07T15:26:29Z beach: shka: Yes. 2014-09-07T15:26:38Z beach: minion: Please tell shka about SICL. 2014-09-07T15:26:39Z minion: shka: 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 2014-09-07T15:26:44Z shka: heh, that makes you awesome in my eyes 2014-09-07T15:27:05Z beach: Basic idea: forget about a function being something special in terms of compilation unit. Instead, consider any region of the flow graph as being a valid compilation unit. 2014-09-07T15:28:06Z beach: Now, inlining can be partial. Consider for instance a function with some initial tests, and then a loop. The tests could be inlined and the loop could be compiled as a separate region. 2014-09-07T15:28:08Z shka: hmmm, does this work if code uses dynamic scoped var? 2014-09-07T15:28:24Z PersonX quit (Remote host closed the connection) 2014-09-07T15:28:26Z beach: It is not affected. 2014-09-07T15:28:33Z shka: ok, that's interesting 2014-09-07T15:28:49Z shka: is it used anywhere? since concept sounds quite a bit lispy 2014-09-07T15:29:15Z beach: Good question. I don't know. The technique is 20 years old. 2014-09-07T15:29:44Z zophy joined #lisp 2014-09-07T15:29:49Z shka: actually it sound so lispy, that i initially thought it is lisp compiler feature 2014-09-07T15:30:15Z beach: http://impact.crhc.illinois.edu/shared/report/phd-thesis-rick-hank.pdf 2014-09-07T15:30:17Z shka: beach: 20 years old as from 90s? 2014-09-07T15:30:27Z beach: 1996 to be exact. 2014-09-07T15:30:38Z beach: Actually, they had a preliminary paper in 1995. 2014-09-07T15:31:25Z shka: ok, since somehow i still manage to think that 20 years ago = 80s 2014-09-07T15:31:32Z shka: ;-) 2014-09-07T15:31:46Z shka: so yeah, this is quite new 2014-09-07T15:32:23Z beach: With region-based compilation, there is a solution to the problem that register allocation using graph coloring only gives a global answer: either a variable is in a register in the entire function, or it is spilled in the entire function. 2014-09-07T15:32:30Z ggole: beach: seems vaguely reminiscent of trace compilation, although I suppose it is an ahead-of-time technique 2014-09-07T15:33:12Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-07T15:33:18Z beach: ggole: Remind me what trace compilation is? 2014-09-07T15:34:04Z ggole: Trace compilers collect "streams" of code as execution passes over conditional, function call etc boundaries 2014-09-07T15:34:17Z waterbelly joined #lisp 2014-09-07T15:34:37Z ggole: The block, called a trace, is optimized as a linear whole even though its components may come from many places. 2014-09-07T15:34:49Z beach: I see. 2014-09-07T15:34:58Z ggole: (That's the part in which I see the similarity.) 2014-09-07T15:35:12Z beach: Yeah, I understand why. 2014-09-07T15:35:55Z ggole: It's nifty in that things like function boundaries almost disappear. 2014-09-07T15:36:07Z beach: Yeah. 2014-09-07T15:37:23Z beach: I am thinking with region-based compilation that in a compilation unit (i.e., a file), top-level functions would just exist because of the required external interface. The bodies of the functions would then be reorganized by the compiler in order to improve performance. 2014-09-07T15:39:08Z chew joined #lisp 2014-09-07T15:39:08Z ggole: Hmm, I think I see 2014-09-07T15:39:44Z chew: Hi everyone 2014-09-07T15:39:53Z beach: Hello chew! 2014-09-07T15:40:04Z chew: This is my first time here, and I'm a Lisp noob 2014-09-07T15:40:16Z shka: chew: hi 2014-09-07T15:40:20Z beach: chew: OK, welcome! 2014-09-07T15:40:25Z shka: chew: i'm lisp noob as well 2014-09-07T15:40:34Z TomRS``: chew: mee too 2014-09-07T15:40:56Z wasamasa: stop the invasion! 2014-09-07T15:41:16Z chew: Great! I was worried everyone here was already an expert! 2014-09-07T15:41:19Z phadthai: "we're all newbies but less than you are!" 2014-09-07T15:41:37Z chew: Hahah true 2014-09-07T15:41:42Z Shinmera: Not nearly enough smug in the air today. 2014-09-07T15:41:48Z shka: wasamasa: you cannot stop us 2014-09-07T15:41:53Z shka: buahahaha 2014-09-07T15:42:03Z wasamasa: ._. 2014-09-07T15:42:17Z shka hugs wasamasa 2014-09-07T15:42:17Z wasamasa: no, I mean, there's no need to announce it over and over again 2014-09-07T15:42:21Z wasamasa: that's all 2014-09-07T15:42:25Z chew: So, I'm basically looking for some advice on which Lisp dialect/environment to get started with.. 2014-09-07T15:42:40Z shka: chew: depends what do you seek 2014-09-07T15:42:40Z Shinmera: As the topic says, this is the Common Lisp channel 2014-09-07T15:42:42Z beach: chew: This channel is about Common Lisp, so we are biased. 2014-09-07T15:42:50Z chew: I've been programming mostly with c#/.net for 9 years.. 2014-09-07T15:42:55Z beach: Sorry to hear that. 2014-09-07T15:42:59Z shka: chew: :( 2014-09-07T15:43:08Z chew: Yeah I know.. I'm pretty sick of it already! 2014-09-07T15:43:14Z shka: chew: no wonder 2014-09-07T15:43:27Z chew: Sorry I didn't realize this was a Common Lisp channel specifically 2014-09-07T15:43:37Z beach: chew: The most frequent advice here would be SBCL + Emacs + SLIME. 2014-09-07T15:43:47Z wasamasa: for some reason common lispers have claimed #lisp for themselves 2014-09-07T15:43:49Z shka: chew: this cl channel so many would love to say "common lisp!" but scheme would probabbly come second 2014-09-07T15:44:07Z jdz: wasamasa: you know, "common"? 2014-09-07T15:44:19Z wasamasa: claiming .lisp clearly wasn't enough 2014-09-07T15:44:31Z H4ns: get on with it. 2014-09-07T15:44:41Z chew: But how is SBCL in Windows? I would like to be able to write desktop GUI and web applications in Windows and Linux if possible 2014-09-07T15:44:43Z beach: Thanks H4ns! 2014-09-07T15:44:58Z wasamasa: chew: should be supported 2014-09-07T15:45:05Z wasamasa: chew: I'd worry about getting popular enough first 2014-09-07T15:45:06Z davorb1 quit (Ping timeout: 246 seconds) 2014-09-07T15:45:20Z Shinmera: On windows I'd rather suggest Clozure CL than SBCL tbqh 2014-09-07T15:45:28Z shka: chew: not sure about gui, but web apps are pretty awesome with common lisp 2014-09-07T15:45:36Z beach: chew: For Windows, you can buy an excellent commercial Lisp system called LispWorks. It comes with a great GUI tool set I hear. 2014-09-07T15:45:46Z shka: yeah 2014-09-07T15:45:50Z beach: Works on Linux too. 2014-09-07T15:45:53Z shka: and it is a bit expensive :P 2014-09-07T15:45:58Z H4ns: and osx, fwiw 2014-09-07T15:46:14Z beach: chew: In fact, I think there is a trial version you can download. 2014-09-07T15:46:33Z chew: Well I'm not trying to write anything big or trying to get popular.. I'm mostly starting out with things that are useful for me 2014-09-07T15:46:33Z puchacz joined #lisp 2014-09-07T15:46:55Z Maurice_TCF joined #lisp 2014-09-07T15:46:57Z chew: But since my work is still in C# land I want to be able to easily switch back and forth between Linux and Windows 2014-09-07T15:47:02Z wasamasa: also, linux is simply a lot less painful for development asides from C# and so on 2014-09-07T15:47:24Z chew: Ya I love Linux.. but not so easy for me atm to get away from Windows completely 2014-09-07T15:47:37Z shka: chew: i understand this pain bro 2014-09-07T15:47:44Z Grue`: i dunno about gui apps, but i use sbcl on windows all the time 2014-09-07T15:48:00Z Grue`: it's not that bad 2014-09-07T15:48:04Z H4ns: no open source gui development for windows or osx with common lisp. 2014-09-07T15:48:04Z chew: shka: former C# dev as well? :) 2014-09-07T15:48:09Z shka: no 2014-09-07T15:48:23Z chew: H4ns: ahh that's too bad 2014-09-07T15:48:25Z Vutral quit (Ping timeout: 260 seconds) 2014-09-07T15:48:25Z H4ns: abcl is the closest call, but if you like pretty, there is nothing. 2014-09-07T15:48:48Z shka: i work on the native application written in C++ that needs to interact with native api 2014-09-07T15:49:03Z shka: and i'm not payed enough for this shit 2014-09-07T15:49:08Z shka: -_-' 2014-09-07T15:49:27Z chew: shka: yeah that sounds a bit more painful than C# 2014-09-07T15:49:42Z shka: it is extreamly painfull 2014-09-07T15:49:50Z vaporatorius joined #lisp 2014-09-07T15:49:52Z chew: Ok.. so I guess desktop Windows dev is out of the question unless I want to fork out a bunch of money 2014-09-07T15:49:53Z shka: and ugly as hell 2014-09-07T15:50:07Z wasamasa: minion: tell chew about tias 2014-09-07T15:50:08Z minion: Sorry, I couldn't find anything in the database for ``tias''. 2014-09-07T15:50:11Z wasamasa: ._. 2014-09-07T15:50:18Z campaniform joined #lisp 2014-09-07T15:50:25Z campaniform quit (Changing host) 2014-09-07T15:50:25Z campaniform joined #lisp 2014-09-07T15:50:35Z chew: shka: Indeed! language beauty is one my top concerns having now encountered lisp 2014-09-07T15:50:49Z Shinmera: CommonQt works, but it certainly ain't pretty. 2014-09-07T15:51:01Z waterbelly quit (Ping timeout: 268 seconds) 2014-09-07T15:51:10Z shka: chew: well, lisp is sexy 2014-09-07T15:51:27Z shka: i don't hate C++ though 2014-09-07T15:51:28Z chew: Ok, I kind of suspected I wouldn't be able to get nice cross-platform gui as well.. 2014-09-07T15:51:39Z Shinmera: You can, it just won't be lispy 2014-09-07T15:51:48Z Grue`: LTK maybe? 2014-09-07T15:51:48Z wasamasa: Shinmera: it's all about the theme, no? 2014-09-07T15:51:51Z H4ns: lispworks capi is pretty cool. 2014-09-07T15:52:03Z Shinmera: wasamasa: I meant not pretty in relation to how the code will look 2014-09-07T15:52:08Z wasamasa: Shinmera: of course 2014-09-07T15:52:15Z chew: H4ns: how much is Lispworks? 2014-09-07T15:52:26Z H4ns: chew: lispworks.com has all the information 2014-09-07T15:52:32Z pjb: - 2014-09-07T15:52:34Z Maurice_TCF quit (Quit: This computer has gone to sleep) 2014-09-07T15:52:35Z chew: Grue: do you think LTK is mature/stable 2014-09-07T15:52:53Z Maurice_TCF joined #lisp 2014-09-07T15:52:53Z Grue`: well its pretty old 2014-09-07T15:53:03Z H4ns: it is very mature and very stable 2014-09-07T15:53:57Z hugod quit (Remote host closed the connection) 2014-09-07T15:54:01Z chew: Hmm ok, so LTK is an option then.. 2014-09-07T15:54:26Z chew: Wow.. Lispworks is quite expensive! There doesn't seem to be a licensing option for open-source/hobbiest dev. 2014-09-07T15:54:35Z chew: just commercial/academic 2014-09-07T15:54:50Z jdz: chew: there is 2014-09-07T15:55:07Z PersonX joined #lisp 2014-09-07T15:55:11Z jdz: chew: i think it was called "personal edition" 2014-09-07T15:55:59Z chew: jdz: I only see Professional and Enterprise.. 2014-09-07T15:56:02Z Vutral joined #lisp 2014-09-07T15:56:43Z bgs100 joined #lisp 2014-09-07T15:56:45Z jdz: chew: products -> "LispWorks Personal Edition" 2014-09-07T15:57:24Z chew: jdz: thanks! 2014-09-07T15:57:33Z wasamasa: chew: GUIs are overrated anyways :P 2014-09-07T15:58:30Z chew: wasamasa: yeah.. I sort of agree.. but necessary for non-devs 2014-09-07T15:58:52Z wasamasa: chew: the question is of course who you're targeting 2014-09-07T15:59:26Z Grue`: many apps can get away with web-based UI 2014-09-07T15:59:28Z wasamasa: chew: I've managed to avoid them with the exception of one CS assignment 2014-09-07T15:59:33Z chew: Well some of my pet projects are just for me and others are for myself and non-dev friends 2014-09-07T15:59:44Z wasamasa: chew: and if I'd have to, I'd seriously question whether a web interface wouldn't make more sense 2014-09-07T15:59:57Z chew: wasamasa: you're reading my mind! 2014-09-07T16:00:13Z wasamasa: chew: since I know my way around css and it would look the same in every modern browser 2014-09-07T16:00:16Z chew: wasamasa: I would totally be ok with writing a web interface on localhost 2014-09-07T16:00:39Z Nizumzen joined #lisp 2014-09-07T16:00:55Z chew: wasamasa: except it would be really nice (maybe even necessary) to interact with the OS' notification and system tray 2014-09-07T16:00:57Z wasamasa: chew: heck, a co-worker told me it's possible to flash hardware via chrome and its USB API these days 2014-09-07T16:01:07Z mutley89 quit (Ping timeout: 245 seconds) 2014-09-07T16:01:29Z beach: chew: Then you can use the Common Lisp web server called Hunchentoot! 2014-09-07T16:01:59Z chew: Ya I've heard a lot about Hunchentoot.. I guess it must be quite mature and stable? 2014-09-07T16:02:22Z zophy quit (Ping timeout: 272 seconds) 2014-09-07T16:02:26Z pjb: chew: wouldn't you prefer software that works and is useful rather that software that's mature and stable? 2014-09-07T16:02:27Z beach: I think H4ns can answer that question better than I can. It works for me. 2014-09-07T16:03:53Z PersonX quit (Remote host closed the connection) 2014-09-07T16:04:00Z chew: pjb: ya I should clarify why I keep mentioning mature/stable.. I just mean that so many environments/platforms are constantly on the bleeding edge of innovation (e.g. node.js, clojure, even some of c#) that I worry about stability 2014-09-07T16:05:10Z pjb: I agree too (I often complain about the oppposite query, about whether they're "maintained"), but this shouldn't be the first concern, I think. 2014-09-07T16:05:21Z PersonX joined #lisp 2014-09-07T16:05:27Z pnpuff joined #lisp 2014-09-07T16:06:03Z chew: pjb: yes good point 2014-09-07T16:06:07Z PersonX quit (Max SendQ exceeded) 2014-09-07T16:06:12Z chew: So I'm thinking I would write my primary GUI as a web app and have tiny bits of code for OS interop.. 2014-09-07T16:06:17Z Jesin quit (Quit: Leaving) 2014-09-07T16:06:36Z cy joined #lisp 2014-09-07T16:06:50Z beach: chew: Sounds like you are in business. Go write some code! :) 2014-09-07T16:06:50Z H4ns: chew: Hunchentoot works well as http server. it also supports https to some extent and there are a number of extensions available to add features like declarative routing and websockets. 2014-09-07T16:07:03Z shka: chew: i'm not web dev, but i realy like cl web development style 2014-09-07T16:07:25Z chew: Ok that's good to hear about Hunchentoot 2014-09-07T16:07:39Z chew: But about the OS interop part.. 2014-09-07T16:07:44Z H4ns: chew: it does have some limitations with respect to scalability (i.e. it builds on streams and cannot be converted to async operation), but other than that, it is fine. 2014-09-07T16:08:10Z drmeister quit (Remote host closed the connection) 2014-09-07T16:08:15Z pnpuff quit (Quit: leaving) 2014-09-07T16:08:23Z drmeister joined #lisp 2014-09-07T16:08:30Z chew: Is it easy to interop with C/C++ to get to the OS functionality? 2014-09-07T16:08:45Z chew: Could LTK handle this bit well? 2014-09-07T16:08:56Z dkcl quit (Quit: WeeChat 0.4.3) 2014-09-07T16:09:32Z shka: chew: C -- possible 2014-09-07T16:09:38Z PersonX joined #lisp 2014-09-07T16:09:39Z shka: C++ -- a bit harder 2014-09-07T16:09:50Z p_l: interop with C++ is an exercise in masochism most of the time 2014-09-07T16:10:01Z shka: i tend to agree 2014-09-07T16:10:17Z dkcl joined #lisp 2014-09-07T16:10:22Z dkcl: #ccl 2014-09-07T16:10:26Z dkcl: Whoops 2014-09-07T16:10:26Z PersonX quit (Max SendQ exceeded) 2014-09-07T16:10:31Z Grue`: chew: you can just call Windows API through CFFI 2014-09-07T16:11:24Z shka: heh 2014-09-07T16:11:27Z chew: dkcl: CCL is cross-platform? 2014-09-07T16:11:33Z shka: i worked with winapi recently 2014-09-07T16:11:39Z shka: what a pita 2014-09-07T16:11:43Z chew: ok, I will forgo C++ then :) 2014-09-07T16:11:45Z pjb: chew: yes. 2014-09-07T16:11:49Z dkcl: chew: Sure 2014-09-07T16:11:54Z tankrim quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-07T16:11:56Z pjb: MacOSX, Linux, MS-Windows, various processors. 2014-09-07T16:12:10Z pjb: Most CL implementations are. 2014-09-07T16:12:13Z chew: Ok.. so SBCL or CCL then.. 2014-09-07T16:12:38Z chew: Is CFFI just an API I could use through SBCL or CCL? 2014-09-07T16:12:42Z zwer_: I had least problems with CCL on windows. but that was 2 years ago 2014-09-07T16:12:56Z zwer_: don't know if the same thing holds true today 2014-09-07T16:13:15Z Shinmera: Still holds true from my experience 2014-09-07T16:13:19Z H4ns: chew: cffi is a wrapper around the ffi's of the major lisps. 2014-09-07T16:13:31Z pnpuff joined #lisp 2014-09-07T16:13:53Z H4ns: chew: if you don't care about cross-implementation portability, the native ffi may be nicer to get along with. 2014-09-07T16:14:06Z vinleod joined #lisp 2014-09-07T16:14:16Z innertracks joined #lisp 2014-09-07T16:14:29Z chew: H4ns: good point, thanks 2014-09-07T16:15:57Z zacharias quit (Ping timeout: 260 seconds) 2014-09-07T16:17:01Z chew: I personally prefer using vim.. is slimv comparable to EMACS + Slime? 2014-09-07T16:17:08Z H4ns: chew: no 2014-09-07T16:17:17Z chew: What is everyone's preferred IDE? 2014-09-07T16:17:18Z shka: chew: install evil 2014-09-07T16:17:20Z H4ns: chew: slime is much more developed and mature. 2014-09-07T16:17:22Z shka: chew: slime 2014-09-07T16:17:34Z shka: chew: slime is everyones favorite 2014-09-07T16:17:42Z chew: Ok I'll look into evil 2014-09-07T16:17:43Z shka: well, some use lw 2014-09-07T16:18:07Z chew: Is LW for vim? 2014-09-07T16:18:18Z shka: chew: evil basicly reimplements vim in emacs 2014-09-07T16:18:25Z shka: chew: lw = lispworks 2014-09-07T16:18:47Z shka: that expensive commercial implementation you saw 2014-09-07T16:18:54Z pt1 quit (Remote host closed the connection) 2014-09-07T16:18:59Z chew: Ohh awesome.. so I can have vim key-navigation in emacs then? 2014-09-07T16:19:05Z shka: yes 2014-09-07T16:19:11Z shka: and not only that 2014-09-07T16:19:17Z chew: shka: yup thanks 2014-09-07T16:19:24Z dkcl quit (Quit: WeeChat 0.4.3) 2014-09-07T16:19:46Z shka: but also vim style macros, visual mode (including visual block) and everything else 2014-09-07T16:19:54Z Natch quit (Ping timeout: 250 seconds) 2014-09-07T16:20:04Z shka: and hey, you still can use emacs features along with it :D 2014-09-07T16:20:26Z pjb: chew: you can if you want, but what would be the point? emacs is so much better. You want to do the opposite, switch to emacs key bindings and feel as soon as you can. 2014-09-07T16:20:39Z chew: shka: that's awesome I am definitely going to look into evil 2014-09-07T16:20:58Z shka: pjb: sure, let's start another emacs vs vim flamewar :) 2014-09-07T16:21:14Z chew: Yes no need for flameware on that topic! :) 2014-09-07T16:21:20Z pjb: chew: for example, TextEdit.app or NSTextView doesn't implement vim key bindings, it implements emacs key bindings (the simple ones, with control- and meta-). 2014-09-07T16:21:51Z chew: pjb: i'm not sure what that means 2014-09-07T16:22:18Z chitofan: guys 2014-09-07T16:22:20Z PersonX joined #lisp 2014-09-07T16:22:27Z shka: chitofan: and ladys! 2014-09-07T16:22:36Z chitofan: where should i look for to create a front end for my game? 2014-09-07T16:22:36Z shka: there must be one here! 2014-09-07T16:22:39Z pjb: chew: that means that other editor or word processors copy on emacs, but never on vim. 2014-09-07T16:22:52Z chitofan: shka :) 2014-09-07T16:22:54Z jdz: chitofan: #lispgames maybe 2014-09-07T16:23:11Z shka: yes lispgames is full of awesome people 2014-09-07T16:23:13Z PersonX quit (Max SendQ exceeded) 2014-09-07T16:23:13Z chew: Just briefly, what major things would I be missing if I went with vim + slimv vs emacs + slime? 2014-09-07T16:23:21Z dkcl joined #lisp 2014-09-07T16:23:33Z shka: chew: for instance integration with repl 2014-09-07T16:23:37Z chitofan: woah, i didnt know such a channel existed!! 2014-09-07T16:23:45Z shka: since vim sucks in this area 2014-09-07T16:23:54Z pnpuff quit (Quit: leaving) 2014-09-07T16:24:08Z chew: yeah.. unfortunate 2014-09-07T16:24:21Z shka: chew: really, go for emacs 2014-09-07T16:24:26Z shka: i tried slimv 2014-09-07T16:24:53Z shka: and after trying emacs with evil mode, i switched my editor completly 2014-09-07T16:25:01Z shka: and i no longer use vim 2014-09-07T16:25:09Z chew: shka: interesting 2014-09-07T16:25:19Z shka: so initially i was using emacs just for slime 2014-09-07T16:25:21Z chew: Is there a good emacs version on Windows? 2014-09-07T16:25:31Z shka: and now i'm using it for everything 2014-09-07T16:25:37Z shka: chew: there are several 2014-09-07T16:25:40Z H4ns: chew: sure, use emacsw32 2014-09-07T16:25:43Z chew: free? 2014-09-07T16:25:44Z pjb: chew: just the main GNU emacs. 2014-09-07T16:25:47Z shka: chew: yes 2014-09-07T16:25:48Z H4ns: chew: it works great. of course free. 2014-09-07T16:25:57Z shka: chew: i use it at work 2014-09-07T16:26:08Z shka: for C++ and org-mode 2014-09-07T16:26:13Z chew: H4ns: of course.. RMS wrote it write? :) 2014-09-07T16:26:19Z shka: and ERC ^^ 2014-09-07T16:26:33Z pjb: chew: ftp://ftp.gnu.org/gnu/emacs/windows/ 2014-09-07T16:26:33Z eni joined #lisp 2014-09-07T16:27:15Z chew: Oh boy.. it took so long to get used to a enjoy Vim.. now you guys have me learning a whole other universe!! :) 2014-09-07T16:27:25Z shka: chew: the only problem is that you will need to make a small workaround for a problem with git when using magit 2014-09-07T16:27:42Z shka: chew: install evil, it will make it mostly painless 2014-09-07T16:27:53Z chew: shka: yes I definitely will 2014-09-07T16:27:57Z chew: pjb: thanks 2014-09-07T16:28:03Z jdz: magit is awesome 2014-09-07T16:28:17Z shka: it is indeed good 2014-09-07T16:28:31Z chew: Ok I will try magit.. thanks guys 2014-09-07T16:28:47Z shka: chew: well, only if you want to use git ;-) 2014-09-07T16:29:02Z PersonX joined #lisp 2014-09-07T16:29:26Z chew: Yes I love git.. never had it integrated into an editor before though.. never really saw the need.. cmd line seemed to suffice 2014-09-07T16:30:06Z PersonX quit (Read error: Connection reset by peer) 2014-09-07T16:30:09Z H4ns: magit allows you to stage chunks that add -p won't be able to stage separately, which i think is rather handy in many situations. 2014-09-07T16:30:25Z djuber joined #lisp 2014-09-07T16:30:54Z zophy joined #lisp 2014-09-07T16:30:59Z zophy quit (Read error: Connection reset by peer) 2014-09-07T16:31:28Z chew: Is GNU Emacs 24 (that I see in the Software Center) recommended? 2014-09-07T16:31:36Z chew: for Ubuntu.. 2014-09-07T16:31:42Z H4ns: chew: yes. 2014-09-07T16:32:18Z chew: thanks 2014-09-07T16:32:22Z PersonX joined #lisp 2014-09-07T16:32:22Z H4ns: chew: magit tends to be a bit on the bleeding edge, so you may want to track a separate ppa for emacs. but give the system source a try first. 2014-09-07T16:32:27Z rme joined #lisp 2014-09-07T16:33:04Z chew: H4ns: thanks, good point 2014-09-07T16:33:36Z chew: Do I really need magit though? Why couldn't I just use cmd-line git? What are the big feature I'm missing out on? 2014-09-07T16:33:45Z wasamasa: sure you can 2014-09-07T16:33:55Z wasamasa: it's just that you don't need to fire up a terminal emulator to stage 2014-09-07T16:34:01Z wasamasa: and can immediately see what's unpushed 2014-09-07T16:34:01Z H4ns: chew: magit is just cool, but completely orthogonal to slime. 2014-09-07T16:34:05Z wasamasa: and have a blame view 2014-09-07T16:34:06Z H4ns: chew: you do need slime 2014-09-07T16:34:11Z wasamasa: and much more 2014-09-07T16:34:25Z stanislav_: chew: no one knows what you'll be missing if you choose vim, because there seem to be no experts in both of them. I admit I'm only an amateur lisper, but vim + slimv quite suffices my needs; moreover, it satisfies the requirements listed in Norvig's style guide 2014-09-07T16:34:43Z chitofan quit (Quit: Page closed) 2014-09-07T16:34:55Z wasamasa: chew: as I've said earlier, TIAS 2014-09-07T16:35:19Z chew: TIAS? 2014-09-07T16:35:29Z wasamasa: Try It And See™ 2014-09-07T16:35:49Z chew: Ok.. I'm going to put magit lower down on my priority 2014-09-07T16:36:27Z chew: stanislav_: thanks for that.. I will try emacs still, but I'm going to also install slimv, just so I can jump to it when I get really stuck in emacs 2014-09-07T16:37:06Z nyef joined #lisp 2014-09-07T16:37:14Z nyef: Hello all. 2014-09-07T16:37:31Z chew: Hi! 2014-09-07T16:38:13Z chew: just installed emacs! 2014-09-07T16:38:27Z chew: Gotta say, that welcome screen is much nicer than vim's! 2014-09-07T16:38:52Z nyef: I'm looking at transitioning my main system from a Linux box to OSX in about four and a half months, and I'm wondering... is there a good story about integrating SBCL and Cocoa/ObjC? 2014-09-07T16:38:59Z PersonX quit (Remote host closed the connection) 2014-09-07T16:39:14Z chew: Could you guys recommend a book/online tutorial to get going quickly with Emacs? I don't want to spend too much time here as I want to devote that to lisp for now 2014-09-07T16:39:14Z nyef: (Or am I going to have yet another project to look forward to in the near-term future?) 2014-09-07T16:39:57Z Grue`: chew: press "Ctrl-h t" for tutorial 2014-09-07T16:40:01Z phadthai: chew: emacs itself has a small interactive built-in tutorial 2014-09-07T16:40:36Z ggole_ joined #lisp 2014-09-07T16:40:47Z ggole_ left #lisp 2014-09-07T16:41:07Z chew: Ok great, vim has something like that too but I found external book/tutorials more helpful.. Are there any other considerable better resources there? I'm perfectly ok using the embedded tutorial but just asking 2014-09-07T16:41:29Z phadthai: you might easily find some "cheat sheets" 2014-09-07T16:41:33Z djuber: check xah lee's website for some good hints (he's got his own opinions) http://ergoemacs.org/emacs/emacs.html 2014-09-07T16:42:41Z wasamasa: djuber: sounds like the understatement of the year :P 2014-09-07T16:43:15Z chew: djuber: thanks I bookmarked it 2014-09-07T16:45:44Z innertracks quit (Quit: innertracks) 2014-09-07T16:45:50Z PersonX joined #lisp 2014-09-07T16:46:00Z chew: Considering I have about 9 years experience programming in c# what book/online resource would you guys recommend for learning Common Lisp? I've already started Practical Common Lisp, and Common Lisp: A Gentle Intro.. 2014-09-07T16:46:04Z ahungry quit (Remote host closed the connection) 2014-09-07T16:46:40Z PersonX quit (Max SendQ exceeded) 2014-09-07T16:47:01Z chew: are those ok? 2014-09-07T16:47:10Z phadthai: chew: On Lisp might be a good next read after those 2014-09-07T16:47:43Z chew: phadthai: thanks I'll add it to the list 2014-09-07T16:47:45Z phadthai: Lisp In Small Pieces if you're interested in compiler writing or details 2014-09-07T16:48:18Z ggole: Always fun to work through 99 problems 2014-09-07T16:49:09Z PersonX joined #lisp 2014-09-07T16:49:10Z nyef: At this point? Don't look for what book is next, get some programming time in. 2014-09-07T16:49:18Z chew: i'll add that too 2014-09-07T16:49:27Z jtza8 quit (Ping timeout: 245 seconds) 2014-09-07T16:49:31Z chew: nyef: yep good point 2014-09-07T16:49:52Z phadthai: On Lisp cannot be considered a good Common Lisp style guide, but it covers advanced topics with macros etc 2014-09-07T16:50:03Z PersonX quit (Max SendQ exceeded) 2014-09-07T16:50:18Z nyef: Leave the clever macro stuff alone for a while, get used to the base language. 2014-09-07T16:50:27Z chew: Yeah I'm really excited to dive into macros.. I was worried some of the introductory books might not give it fair time 2014-09-07T16:50:56Z chew: nyef: heheh.. aww.. but I don't think I can help myself! :) 2014-09-07T16:52:22Z phadthai: the important is not to replace functions with macros; but macros help to develop new languages or constructs, for implicit finalization forms (i.e. with-style macros) 2014-09-07T16:52:29Z PersonX joined #lisp 2014-09-07T16:52:41Z chew: phadthai: right 2014-09-07T16:53:08Z shka: chew: i personally dislike on lisp 2014-09-07T16:53:10Z chew: I'm so, so tired of the boilerplate in all languages.. this is one of the biggest reasons I'm so excited about Lisp 2014-09-07T16:53:17Z shka: and graham as a writer 2014-09-07T16:53:23Z PersonX quit (Max SendQ exceeded) 2014-09-07T16:53:28Z chew: shka: curious why? 2014-09-07T16:53:41Z nyef: WITH-* macros are a good basic use. 2014-09-07T16:54:01Z shka: chew: i am somehow unable to understand his explanations 2014-09-07T16:54:08Z shka: but there is other book 2014-09-07T16:54:10Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-07T16:54:20Z shka: it is called let over lambdas and it is awesome 2014-09-07T16:54:32Z shka: but again, this one is advanced macrology 2014-09-07T16:54:47Z nyef: Though I find that pretty much all of my WITH-* macros these days expand to `(flet ((,thunk-name (...) ,@body)) (declare (dynamic-extent #',thunk-name)) (call-with-... #'thunk-name ...)) 2014-09-07T16:54:55Z AeroNotix: hmm, after working with lisp-unit for a while I find I really don't like it., 2014-09-07T16:54:55Z chew: shka: I was just about to ask about this book! I actually bought it a couple years ago but never started it 2014-09-07T16:55:13Z shka: chew: ha, great investment 2014-09-07T16:55:21Z shka: i really like this book 2014-09-07T16:55:31Z shka: it is far better than on lisp imho 2014-09-07T16:55:43Z chew: awesome.. but looks like I'll have to wait even longer to start it since I'm just starting lisp 2014-09-07T16:55:53Z shka: that's ok 2014-09-07T16:55:57Z shka: to be honest... 2014-09-07T16:56:11Z shka: macros are not that difficult to understand 2014-09-07T16:56:14Z chew: shka: thanks for that.. I'll replace it with On lisp on my list 2014-09-07T16:56:31Z pjb: nyef: (define-with-macro (with-stuff something other) call-with-stuff) 2014-09-07T16:56:46Z shka: once you understand that your code is a list 2014-09-07T16:57:01Z shka: and macro is something that returns list that is code 2014-09-07T16:57:07Z shka: it simply makes sense 2014-09-07T16:57:32Z chew: awesome 2014-09-07T16:57:45Z shka: i think that clos is harder to understand 2014-09-07T16:58:06Z shka: since it is simply more advanced than java, C++ or C# 2014-09-07T16:58:11Z nyef: pjb: You'd need to specify the arglist correctly, generate a suitable thunk-name (because #:G1492 is a lousy thing to see as a function in a backtrace), indicate which parameters are to be evaluated, which are variable names to bind, what needs to be unevaluated... 2014-09-07T16:58:13Z chew: oh really wow? 2014-09-07T16:58:16Z shka: and dynamic typing makes such a difference 2014-09-07T16:59:04Z shka: chew: in clos, we don't store methods "inside" of the classes 2014-09-07T16:59:07Z chew: ya I'm looking forward to getting away from static typing as well 2014-09-07T16:59:09Z shka: it is not message passing 2014-09-07T16:59:10Z alexey joined #lisp 2014-09-07T16:59:27Z pjb: nyef: have a look at com.informatimago.common-lisp.lisp-sexp.source-form 2014-09-07T16:59:35Z shka: chew: hm, do you happen to know some java reflection? 2014-09-07T16:59:58Z chew: shka: I did it once several years ago 2014-09-07T17:00:13Z shka: for multiple dispatch, perhaps? 2014-09-07T17:00:31Z chew: nope.. simplerr 2014-09-07T17:00:44Z shka: well, clos has multiple dispatch methods 2014-09-07T17:01:03Z shka: and around methods 2014-09-07T17:01:08Z shka: and before methods 2014-09-07T17:01:15Z shka: and MOP on top of that 2014-09-07T17:01:21Z nyef: And custom method combinations, and... 2014-09-07T17:01:23Z chew: ohh.. like AOP? 2014-09-07T17:01:34Z shka: chew: it was invented in lisp 2014-09-07T17:01:55Z shka: chew: clos is the most advanced object system i know 2014-09-07T17:02:15Z shka: and aop was figured out in lisp like 20 years ago 2014-09-07T17:02:36Z chew: Like so many techniques it seems... amazing 2014-09-07T17:02:50Z shka: my main problem with clos is that i can't quite understand it (yet) 2014-09-07T17:03:00Z nyef: Wasn't AOP by one or more of the AMOP authors? 2014-09-07T17:03:13Z chew: How important is CLOS for beginner/intermediate? 2014-09-07T17:03:18Z p_l: nyef: it was 2014-09-07T17:03:22Z wasamasa: AOP? 2014-09-07T17:03:27Z shka: chew: not really important 2014-09-07T17:03:30Z alexey quit (Ping timeout: 246 seconds) 2014-09-07T17:03:35Z shka: you can learn basics 2014-09-07T17:03:37Z p_l: nyef: including being presented at ILC, afaik 2014-09-07T17:03:42Z chew: aspect-oriented programming 2014-09-07T17:03:51Z shka: and live with it just fine 2014-09-07T17:04:23Z chew: ok thanks 2014-09-07T17:04:39Z chew: So what do you guys use for testing? 2014-09-07T17:04:46Z Maurice_TCF quit (Quit: This computer has gone to sleep) 2014-09-07T17:04:59Z innertracks joined #lisp 2014-09-07T17:05:06Z wasamasa: "AspectL is now part of the Closer Project. This means that it takes advantage of the Closer to MOP compatibility layer, so that it runs on more Common Lisp implementations than ever before." 2014-09-07T17:05:09Z phadthai: do you mean unit tests? 2014-09-07T17:05:38Z shka: i belive he ment 2014-09-07T17:05:52Z shka: chew: can't help, i simply test my functions in repl 2014-09-07T17:06:01Z shka: but there are testing frameworks 2014-09-07T17:06:03Z nyef: I currently use a unit test system of my own design, as anemic as it may be, but there are plenty of options out there. 2014-09-07T17:06:32Z shka: in practical cl there is even chapter where you can implement unit testing framework 2014-09-07T17:06:45Z shka: macros make it fairly easy 2014-09-07T17:07:18Z Grue`: i like lisp-unit 2014-09-07T17:07:51Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-07T17:08:12Z drmeister quit (Remote host closed the connection) 2014-09-07T17:08:16Z kobain joined #lisp 2014-09-07T17:08:24Z chew: Yeah I didn't necessarily mean unit testing but that included 2014-09-07T17:08:47Z drmeister joined #lisp 2014-09-07T17:09:05Z shka: drmeister: hi 2014-09-07T17:09:16Z chew: Honestly, I never did much unit testing in c# and my programs generally ran well so I'm a unit-testing zealot or anything 2014-09-07T17:09:19Z nydel joined #lisp 2014-09-07T17:09:30Z chew: so I'd be ok just using repl also.. 2014-09-07T17:09:39Z chew: Grue: thanks I'll look at it 2014-09-07T17:09:55Z shka: chew: well, tests are usefull and no doubts about it 2014-09-07T17:10:07Z nyef: Actually, since we're on the topic of testing, a whole awful lot of testing literature seems to presuppose a specific style of object-oriented language semantic, and then uses "mocks" or "dependency injection" or whatever else as part of the test strategy. 2014-09-07T17:10:23Z shka: yeah 2014-09-07T17:10:31Z ahungry joined #lisp 2014-09-07T17:10:32Z shka: that's true 2014-09-07T17:10:49Z nyef: And I've been having trouble wrapping my head around how to make that work for lisp code, especially where it can be an awful lot more procedural. 2014-09-07T17:10:58Z kpreid: nyef: I'd like to comment on that 2014-09-07T17:11:04Z chew: nyef: yep read lots of stuff to that end too.. 2014-09-07T17:11:37Z ejbs: chew: Hey, don't forget to install Quicklisp and check out CLiki.net 2014-09-07T17:11:43Z kpreid: nyef: the specifics like mocks and DI are means to the end. the end is to _isolate the thing under test_ so that it doesn't have other outputs (side effects) or inputs 2014-09-07T17:11:43Z urandom__ joined #lisp 2014-09-07T17:12:09Z ejbs: There's a list of currently recommended libraries (unfortunately very incomplete) on Cliki.net and you can download them with Quicklisp 2014-09-07T17:12:17Z kpreid: nyef: so if you have (defun mathematical-algorithm-thing ...) then obviously that stuff is irrelevant 2014-09-07T17:12:18Z nyef: kpreid: Right, I can easily believe that. 2014-09-07T17:12:52Z nyef: kpreid: And if I have (defun intern-guid ...)? 2014-09-07T17:13:12Z nyef: Or (defun create-record-on-server ...)? 2014-09-07T17:13:23Z kpreid: the latter is easier to talk about 2014-09-07T17:13:32Z kpreid: at a minimum somewhere in your system is "_which_ server" 2014-09-07T17:13:39Z kpreid: so you make up a server for testing purposes 2014-09-07T17:13:58Z kpreid: (and "mock" vs "fake" vs "stub" are a taxonomy of variants of things-made-for-testing-purposes) 2014-09-07T17:14:17Z faheem joined #lisp 2014-09-07T17:14:31Z nyef: I'm already frightened about the idea of making up a server for testing. How MUCH of a server? Am I going to need to run hunchentoot as part of my test suite? 2014-09-07T17:14:31Z kpreid: in common lisp style instead of "dependency injection" you might, say, (let ((*the-server-address* testing-server-address)) ...) 2014-09-07T17:14:50Z kpreid: well, you want the minimum amount of machinery which still tests the thing under test 2014-09-07T17:15:03Z dkcl quit (Quit: WeeChat 0.4.3) 2014-09-07T17:15:30Z chew: ejbs: thanks I'll check it out as well 2014-09-07T17:16:54Z kpreid: nyef: regarding reducing machinery, this is an area where _in my opinion_ the more purist object-oriented notions are superior to how CL for example does things 2014-09-07T17:17:26Z dkcl joined #lisp 2014-09-07T17:17:42Z kpreid: ideally you have the option of not running a complete http server but rather replacing the _http client_ used by the create-record-on-server with a thing which just loops back the answers 2014-09-07T17:17:42Z kristof joined #lisp 2014-09-07T17:18:03Z kpreid: not saying that that's the best choice of boundary, but it's an example of minimizing the needed machinery 2014-09-07T17:18:07Z Jaood joined #lisp 2014-09-07T17:18:36Z nyef: Mmm. And that's actually what I currently do, rebinding #'DRAKMA:HTTP-REQUEST with a stub that checks parameters and gives a hardcoded result, just within a single test case. 2014-09-07T17:18:58Z kpreid: but the minimal thing you need for proper testing is just "the I/O can be redirected" really. but what "I/O" means depends on what level/module of the system you're testing 2014-09-07T17:19:10Z kristof: So! It didn't occur to me that you could enforce some compile time invariants just by evaling during compile time and throwing an error. That's really nifty. 2014-09-07T17:20:12Z kpreid: "dependency injection" is just about formalizing the points-at-which-things-can-be-replaced, so as to preserve the interface/public vs implementation/private distinction, rather than rebinding things ad-hoc 2014-09-07T17:20:32Z kpreid: (scratch that "just", there's more to it but that would be wandering offtopic) 2014-09-07T17:20:42Z kristof: The standard doesn't specify how many times a macro will be expanded, but I can be guaranteed the order they're expanded in, right? 2014-09-07T17:20:50Z PersonX joined #lisp 2014-09-07T17:21:29Z nyef: kristof: Only in terms of nesting, not necessarily order within a form, IIRC. 2014-09-07T17:21:37Z husker quit (Quit: husker) 2014-09-07T17:22:10Z kristof: nyef: nesting, ok, but what about previous forms versus later forms? 2014-09-07T17:22:14Z nyef: kpreid: Right, there's a whole other side to DI which involves setting up your object graphs for normal operation, not just for testing. 2014-09-07T17:22:16Z Bike: probably doesn't guarantee order from nesting either, not that it's gonna be anything else 2014-09-07T17:22:33Z Bike: kristof: it probably doesn't have to macroexpand left to right, no. 2014-09-07T17:22:48Z PersonX quit (Read error: Connection reset by peer) 2014-09-07T17:22:55Z nyef: Bike: Macroexpansion has to happen from outside in, otherwise you could end up with calling the macroexpander on what ends up being data. 2014-09-07T17:23:11Z Bike: i know. it probably doesn't say that explicitly is all. 2014-09-07T17:23:22Z kristof: Bike: I meant (macro-form ____) ; and then later in source code /n (macroform2 ____) 2014-09-07T17:23:32Z kpreid: nyef: right, there are actually two concepts there which get conflated a lot; I'm not sure which is the "true meaning" of the term. The first is, make your dependencies explicit (each object has a reference to X which it was constructed with, rather than the code has a static reference to X). The second is frameworks to automate that. 2014-09-07T17:23:38Z Bike: oh, in compile-file i suppose it's ordered, yes. 2014-09-07T17:23:40Z nyef: kristof: Toplevel forms are processed sequentially, yes. 2014-09-07T17:23:46Z kristof: Right on. 2014-09-07T17:24:03Z kpreid: I mean, frameworks to automate _passing in those arguments_. 2014-09-07T17:24:11Z Bike: so that compile time effects can happen to later forms, like you probably want. 2014-09-07T17:24:15Z nyef: kpreid: Right, and then apparently there's a THIRD concept which merely hijacks the name. 2014-09-07T17:24:19Z kristof: I'm committing lisp sin and using side affects in ny macros. 2014-09-07T17:24:23Z kristof: *effects. 2014-09-07T17:24:27Z nyef: (Some node.js framework thing, I hear.) 2014-09-07T17:24:37Z shka: kristof: you shall burn in hell! 2014-09-07T17:24:45Z Bike: kristof: you can't just expand to eval-when something? 2014-09-07T17:24:57Z kpreid: I am skeptical about said frameworks (though I haven't used any) because that implicit picking up of things is _wrong_ imo. 2014-09-07T17:25:08Z kpreid: (the wrongness often doesn't reveal itself immediately) 2014-09-07T17:25:14Z Davidbrcz joined #lisp 2014-09-07T17:25:18Z kristof: Bike: But if that appears within a macro, it could get expanded multiple times anyway 2014-09-07T17:25:34Z nyef: kristof: shka isn't kidding. That WILL break eventually, and it'll be one of those really weird bugs that's impossible to track down... 2014-09-07T17:25:37Z Bike: but only executed once. 2014-09-07T17:25:46Z Bike: probably. maybe. 2014-09-07T17:26:00Z kristof: Bike: I need later expansions to depend on that side effect. 2014-09-07T17:26:17Z shka: kristof: ok, you will really burn in hell 2014-09-07T17:26:18Z PersonX joined #lisp 2014-09-07T17:26:22Z Bike: so, expand to (progn (eval-when (bla bla) (do-side-effect)) ...) 2014-09-07T17:26:29Z shka: in 8 circle ^^ 2014-09-07T17:26:33Z kristof: I'm avoiding problems with multiple expansion by using a combination of DEFVAR and CONS. 2014-09-07T17:26:33Z ejbs: But kristof, there's no guarantee how many times a macro will be expanded during macro-expansion time :( 2014-09-07T17:26:34Z Bike: ... will definitely execute after the side effect 2014-09-07T17:26:44Z kristof: ejbs: ^ 2014-09-07T17:26:44Z Bike: as will later forms 2014-09-07T17:26:50Z Bike: if you're at toplevel 2014-09-07T17:27:02Z nyef: kristof: If you're at toplevel, expand to something that will side-effect. If you're not at toplevel, you might be able to get away with the macrolet / macroexpand-at-macroexpand-time trick. 2014-09-07T17:27:34Z kristof: nyef: That latter trick sounds like I could lose an appendage if I do it wrong. 2014-09-07T17:27:44Z nipra joined #lisp 2014-09-07T17:28:04Z kpreid: I'm on the side of "only do this if they're sequential toplevel forms" (because that _has_ to be in order, even if the spec doesn't mention that) 2014-09-07T17:28:06Z nyef: Yes, you could. 2014-09-07T17:28:19Z nyef: kpreid: IIRC, it actually does mention that. 2014-09-07T17:28:28Z nyef: Somewhere in chapter 2 or 3. 2014-09-07T17:28:36Z kristof: kpreid: this amounts to a modified defclass form, so yes. 2014-09-07T17:28:39Z davazp joined #lisp 2014-09-07T17:29:09Z nyef: kristof: You're only really going to lose an appendage with the macrolet/macroexpand trick if you need a cross-compile environment the way that SBCL does. 2014-09-07T17:29:23Z vanila joined #lisp 2014-09-07T17:29:25Z vanila: Zhivago, hi 2014-09-07T17:29:26Z nyef: ... Umm. 2014-09-07T17:29:31Z nyef: Hunh. 2014-09-07T17:30:01Z nyef: Going to have to think about that, actually. Shouldn't need an explicit macroexpand if the macrolet is clever enough. 2014-09-07T17:30:04Z kristof: I exclusively develop on SBCL so yes, sounds problematic. 2014-09-07T17:30:52Z nyef: In that case, have a look at SB!C:ASSEMBLE, assuming that nobody's stripped out the craziness (and I hope that they haven't, I LIKE the functionality it implements). 2014-09-07T17:31:30Z bit` quit (Ping timeout: 246 seconds) 2014-09-07T17:32:12Z vinleod quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-07T17:32:42Z chew: Would you guys recommend any video tutorials for lisp/common lisp? 2014-09-07T17:32:59Z kristof: nyef: context is that I'm using "inheritance" to incrementally talk about pattern match forms. Later pattern match forms can "intercept" (match before) its super-class or "augment" (match after). 2014-09-07T17:33:07Z zacharias joined #lisp 2014-09-07T17:34:00Z shka: chew: i don't know -- i recommend sticking to books 2014-09-07T17:34:06Z shka: we have just enough of those 2014-09-07T17:34:17Z kristof: nyef: I say "inheritance" because I know for a fact that I don't want the inheritance order to change after compilation. And that'll make it faster, anyway. 2014-09-07T17:34:22Z nipra quit (Ping timeout: 245 seconds) 2014-09-07T17:34:23Z shka: (well maybe some clos oriented would be cool) 2014-09-07T17:34:53Z matko joined #lisp 2014-09-07T17:35:04Z Vutral quit (Excess Flood) 2014-09-07T17:35:16Z kristof: Which means normal class inheritance along with method combination doesn't jive with me. I looked into making my own method combination but that ended up becoming overengineering. 2014-09-07T17:35:28Z chew: How about any podcasts? 2014-09-07T17:35:32Z kristof: My new method looks like underengineering, though. 2014-09-07T17:35:36Z innertracks quit (Ping timeout: 252 seconds) 2014-09-07T17:35:51Z chew: Can't read while driving so would be nice if any good ones out there.. :) 2014-09-07T17:36:06Z pjb: google car. 2014-09-07T17:36:55Z chew: pjb: hmm good point 2014-09-07T17:36:56Z nyef: Looks like the ASSEMBLE craziness is still there as of June, and I think that I know what can be done to make it almost sane. 2014-09-07T17:37:20Z banjara joined #lisp 2014-09-07T17:37:22Z Harag quit (Ping timeout: 245 seconds) 2014-09-07T17:38:21Z PersonX quit (Ping timeout: 264 seconds) 2014-09-07T17:38:22Z chew: I don't mean to start a flamewar with this but what are your thoughts of Racket? 2014-09-07T17:38:43Z vanila: chew: I hate immutable conses 2014-09-07T17:38:46Z chew: it seems to have good multi-platform support and maybe simpler interface 2014-09-07T17:38:47Z nyef: "It's a total Racket, and you should stick with Common Lisp." d-: 2014-09-07T17:39:15Z chew: What would you guys say are the biggest drawbacks to Racket compared to CL 2014-09-07T17:39:20Z vanila: immutable conses 2014-09-07T17:39:38Z kristof: Namespacing. 2014-09-07T17:39:47Z vanila: racket is good for playing with continuations & kanren 2014-09-07T17:40:10Z kristof: Common Lisp has packages. Racket does not have a way to qualify imports. 2014-09-07T17:40:18Z kristof: I know Chicken does, though. 2014-09-07T17:40:47Z chew: I find it appealing because it seems to have cross-platform GUI as well 2014-09-07T17:41:06Z kristof: The cross platform gui is lame :P 2014-09-07T17:41:08Z _tca: lack of emacs integration, slow 2014-09-07T17:41:08Z vydd quit (Remote host closed the connection) 2014-09-07T17:41:18Z nyef: All cross-platform GUIs are lame, by definition. 2014-09-07T17:41:26Z _tca: the gui stuff uses a gross OO style 2014-09-07T17:41:48Z chew: nyef: ya.. I guess that may never change... 2014-09-07T17:42:08Z chew: _tca: I see.. thanks 2014-09-07T17:42:14Z nyef: (Specifically, all platforms are different, and have different look-and-feel guidelines, thus any GUI that fits in with ONE system will look out-of-place on all of the others.) 2014-09-07T17:42:24Z chew: _tca: if it doesn't look native than I'd just rather do web apps 2014-09-07T17:42:41Z wasamasa: nyef: that must be why the lispworks gui toolkit was recommended earlier :P 2014-09-07T17:42:43Z vanila: What's wrong with Tcl/Tk? 2014-09-07T17:42:50Z wasamasa: vanila: the toolbars 2014-09-07T17:43:02Z wasamasa: vanila: you could poke someone's eyes out with them 2014-09-07T17:43:28Z stanislav_: Tcl/Tk looks horribly in KDE 2014-09-07T17:43:38Z pnpuff joined #lisp 2014-09-07T17:44:01Z nyef: vanila: The correct question is, "what's right with Tcl/Tk", at which point the answer is "it runs nearly everywhere". 2014-09-07T17:44:15Z zwer_: don't qt and wxwidgets look decent on all platforms? 2014-09-07T17:44:16Z nyef: (See: Cross-platform GUI. See: lame.) 2014-09-07T17:44:20Z _tca: chew: i meant the api of the gui lib not the actual appearance 2014-09-07T17:44:37Z chew: _tca: ohhh 2014-09-07T17:45:43Z wasamasa: zwer_: qt looks horribly out of place on linux unless you run KDE 2014-09-07T17:45:49Z aftersha_ quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-07T17:45:52Z wasamasa: zwer_: doesn't really good look either on osx 2014-09-07T17:46:09Z wasamasa: zwer_: windows is the only platform where I'd use it on 2014-09-07T17:46:14Z banjara quit (Ping timeout: 252 seconds) 2014-09-07T17:46:21Z zwer_: what about wxwidgets? 2014-09-07T17:46:34Z wasamasa: isn't that what audacity uses? 2014-09-07T17:46:37Z zwer_: from what I've read they use native windows on all the platforms 2014-09-07T17:46:50Z zwer_: native controls 2014-09-07T17:47:40Z zwer_: I don't know what audacity uses 2014-09-07T17:47:48Z nyef: zwer_: Merely using native widgets doesn't completely solve the problem. Consider where the menu bar goes. Consider keyboard shortcuts, conventions about menu layouts, specific differences in dialogue box layouts... 2014-09-07T17:47:56Z wasamasa: zwer_: yes, it does 2014-09-07T17:48:02Z wasamasa: zwer_: well, where are the lisp bindings to it 2014-09-07T17:48:17Z wasamasa: zwer_: I've found a japanese blog and an empty github repository promising activity 2014-09-07T17:49:01Z bit` joined #lisp 2014-09-07T17:49:06Z stanislav_: are lisp bindings to wxwidgets still alive? 2014-09-07T17:49:26Z pnpuff left #lisp 2014-09-07T17:49:34Z chew: How about Clojure? I'm not really considering it because I'd like to avoid the JVM but what would you guys say are the biggest drawbacks using Clojure compared to CL? 2014-09-07T17:49:58Z shka: chew: it shifts focus toward other goals 2014-09-07T17:50:01Z wasamasa: chew: it takes a dozen seconds to start a repl? 2014-09-07T17:50:17Z wasamasa: chew: immutability by default? 2014-09-07T17:50:38Z wasamasa: chew: a rather strong focus on sequences and composition? 2014-09-07T17:51:00Z wasamasa: chew: oh and having to futz around with java for everything less trivial? 2014-09-07T17:51:01Z zwer_: are you listing pros or cons? :) 2014-09-07T17:51:03Z vanila: I found that Clojure libraries are too hard to install that it is not possible to do by hand 2014-09-07T17:51:04Z shka: and it is lazy 2014-09-07T17:51:14Z chew: hmm interesting you guys aren't fans of immutability 2014-09-07T17:51:23Z shka: chew: some of us, are 2014-09-07T17:51:24Z vydd joined #lisp 2014-09-07T17:51:25Z vanila: you have to use a special tool to install the libraries; The tool didn't work for me 2014-09-07T17:51:45Z chew: oh yes good point about libraries! 2014-09-07T17:51:47Z wasamasa: chew: well, it makes certain things impossible 2014-09-07T17:51:57Z shka: chew: clojure puts focus on other aspects 2014-09-07T17:52:05Z nyef: We're fans of immutability where it makes sense, and mutability makes a LOT of things easier. 2014-09-07T17:52:24Z chew: wasamasa: ok, I just don't have the experience there to doubt that but seems so many talk so highly of it 2014-09-07T17:52:28Z wasamasa: chew: http://maryrosecook.com/blog/post/the-fibonacci-heap-ruins-my-life 2014-09-07T17:52:57Z shka: wow 2014-09-07T17:53:01Z chew: wasamasa: thanks i'll read that 2014-09-07T17:53:06Z shka: wasamasa: who's blog is that? 2014-09-07T17:53:10Z wasamasa: shka: no idea 2014-09-07T17:53:20Z shka: i really like the layout 2014-09-07T17:53:21Z wasamasa: shka: I just found it an amusing read regarding immutability and algorithms 2014-09-07T17:53:32Z shka: it is perfect 2014-09-07T17:53:42Z chew: Is there anything like NPM for CL? 2014-09-07T17:53:52Z wasamasa: quicklisp 2014-09-07T17:53:52Z chew: How do you guys install libraries? 2014-09-07T17:54:12Z shka: chew: quicklisp 2014-09-07T17:54:25Z shka: chew: quicklisp is AWESOME 2014-09-07T17:54:35Z chew: Oh I thought quicklisp was a competitor to SBLC, CCL, etc? 2014-09-07T17:54:35Z shka: you really, really, really want to install it 2014-09-07T17:54:40Z shka: no no 2014-09-07T17:54:51Z shka: quicklisp is package manager for cl 2014-09-07T17:54:58Z narayana1 quit (Quit: leaving) 2014-09-07T17:55:00Z chew: Ok awesome 2014-09-07T17:55:01Z shka: for any cl 2014-09-07T17:55:10Z stanislav_: very awesome 2014-09-07T17:55:30Z shka: yes, it allows to simply install libs with single line of code 2014-09-07T17:55:48Z shka: very usefull tool 2014-09-07T17:55:58Z stanislav_: excellent design, it just works 2014-09-07T17:56:21Z chew: Would you guys say it's comparable to NPM in terms of how well it handles dependencies, versioning, etc? 2014-09-07T17:56:54Z shka: chew: sorry but i don't know what npm is 2014-09-07T17:57:06Z ustunozgur quit (Remote host closed the connection) 2014-09-07T17:57:43Z wasamasa: shka: the node package manager 2014-09-07T17:57:44Z chew: Node Package Manager.. apparently a revolution in package management.. one of the few (first?) to actually work 2014-09-07T17:57:57Z wasamasa: chew: unless you're on arch :P 2014-09-07T17:57:57Z chew: as opposed to Ruby Gems, etc. 2014-09-07T17:58:24Z wasamasa: chew: had fun helping people to get it working because it assumed nobody would ever use python3 as the standard python on your system 2014-09-07T17:59:27Z djuber quit (Remote host closed the connection) 2014-09-07T17:59:31Z chew: wasamasa: heheh yep no surprise you archers would be on it ;) 2014-09-07T18:00:20Z vanila: what the hell was the point in making python3 2014-09-07T18:00:30Z vanila: stupid incompatabile changes 2014-09-07T18:00:33Z Aranshada|W quit (Ping timeout: 246 seconds) 2014-09-07T18:00:44Z Shinmera: guido.txt 2014-09-07T18:00:57Z vanila: like making a new scheme with immutable conses, let's break all the code everyone wrote before today 2014-09-07T18:01:07Z wasamasa: vanila: cleaning stuff up 2014-09-07T18:01:20Z wasamasa: vanila: simple as that 2014-09-07T18:01:23Z stanislav_: lisp has more fun, anyway 2014-09-07T18:01:31Z zwer_: the changes weren't even that significant to warrant breaking most old code 2014-09-07T18:01:33Z stanislav_: who cares about python :P 2014-09-07T18:01:46Z defaultxr joined #lisp 2014-09-07T18:01:55Z mishoo joined #lisp 2014-09-07T18:02:02Z wasamasa: personally, I'm still shocked the SBCL compiler is named python, too 2014-09-07T18:04:10Z nyef: wasamasa: And it has been since '90. 2014-09-07T18:08:45Z chew: Ok cool, so I will definitely install quicklisp 2014-09-07T18:08:50Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-07T18:09:04Z ee_cc_ quit (Quit: ee_cc_) 2014-09-07T18:09:09Z chew: Thanks so much for all this guys, it has been extremely informative! 2014-09-07T18:09:19Z ustunozgur joined #lisp 2014-09-07T18:09:22Z EvW quit (Ping timeout: 245 seconds) 2014-09-07T18:09:36Z stanislav_: chew: happy hacking! :) 2014-09-07T18:12:01Z PersonX joined #lisp 2014-09-07T18:12:16Z drmeister quit (Remote host closed the connection) 2014-09-07T18:12:28Z drmeister joined #lisp 2014-09-07T18:15:24Z dkcl quit (Quit: WeeChat 0.4.3) 2014-09-07T18:15:45Z chew: Thanks, I'm sure I'll be back from time to time for help! :) 2014-09-07T18:16:27Z oleo__ quit (Read error: Connection reset by peer) 2014-09-07T18:16:30Z henesy quit (Read error: Connection reset by peer) 2014-09-07T18:17:26Z chew quit (Quit: Leaving) 2014-09-07T18:17:54Z PersonX quit (Ping timeout: 272 seconds) 2014-09-07T18:18:48Z oleo joined #lisp 2014-09-07T18:21:38Z PersonX joined #lisp 2014-09-07T18:23:18Z oleo quit (Read error: Connection reset by peer) 2014-09-07T18:24:12Z Shinmera quit (Quit: brb) 2014-09-07T18:24:41Z Shinmera joined #lisp 2014-09-07T18:25:39Z malbertife quit (Ping timeout: 255 seconds) 2014-09-07T18:28:34Z Jaood left #lisp 2014-09-07T18:30:37Z Vutral joined #lisp 2014-09-07T18:32:01Z vanila: is Lisp In Small Pieces any good 2014-09-07T18:33:17Z husker joined #lisp 2014-09-07T18:33:20Z shka: vanila: i heared so 2014-09-07T18:33:32Z vanila: i skimmed it and it doesn't look to good 2014-09-07T18:33:37Z vanila: but m aybe I judge too soon 2014-09-07T18:33:50Z Vutral quit (Excess Flood) 2014-09-07T18:34:47Z beach: vanila: It's an excellent book. 2014-09-07T18:34:58Z beach: vanila: But it might not be what you are looking for. 2014-09-07T18:35:07Z beach: vanila: What is it that you want to learn? 2014-09-07T18:35:24Z Natch joined #lisp 2014-09-07T18:36:09Z vanila: beach, I want to write a lisp to C compiler and I understand CPS and CC but I don't know what code to generate - I tried using a stack that executes closures but it segfaults 2014-09-07T18:36:34Z shka: vanila: why not lisp to assembler? 2014-09-07T18:36:41Z shka: or c-- 2014-09-07T18:36:48Z shka: or byte code 2014-09-07T18:36:54Z beach: vanila: Well, Lisp in Small Pieces is not going to solve your segfault. 2014-09-07T18:37:04Z vanila: shka, I thought that would be harder, I want to start easier and succeed then do better things like to sam 2014-09-07T18:37:06Z vanila: asm* 2014-09-07T18:37:48Z ehu: vanila: what's your ultimate goal? sbcl already goes down to ASM. 2014-09-07T18:38:01Z ehu: and others do as well. 2014-09-07T18:38:13Z ehu: ccl can target a large number of architectures. 2014-09-07T18:38:20Z vanila: ehu, gain the experience of making this myself 2014-09-07T18:38:25Z ehu: ok. 2014-09-07T18:38:37Z ehu: can't beat that with anything pre-existing :-) 2014-09-07T18:38:39Z ehu: well, 2014-09-07T18:39:05Z ehu: I guess the segfault is simply on your road between here and having that experience... 2014-09-07T18:39:44Z vanila: that's true.. 2014-09-07T18:39:58Z vanila: just that it leaves me stuck 2014-09-07T18:40:23Z ehu: right. but I wonder if any level of (Common) Lisp book can help you past it. 2014-09-07T18:40:51Z ehu: talking to other implementors might be more effective in your case. 2014-09-07T18:40:52Z campaniform quit (Ping timeout: 252 seconds) 2014-09-07T18:40:54Z vanila: I think that I need to learn more about the codegen and runtime/gc part of a lisp compiler 2014-09-07T18:41:15Z vanila: how lisp objects relate to heap allocation and pointers etc. 2014-09-07T18:41:31Z phadthai: vanila: have you looked at ECL? It generates C code, and is open source 2014-09-07T18:41:47Z davazp quit (Remote host closed the connection) 2014-09-07T18:41:56Z phadthai: its C code is also visible if Lisp code is compiled with an option to not delete temporary C files 2014-09-07T18:42:20Z wasamasa: vanila: you want to do your own common lisp compiler? 2014-09-07T18:42:32Z vanila: no, in general I find it impossible to learn from such a large piece of code like a compiler but I will look at it 2014-09-07T18:42:45Z phadthai: i.e. (setf C::*DELETE-FILES* nil) 2014-09-07T18:42:54Z ehu: vanila: I think the point is to look at the generated C code. 2014-09-07T18:43:20Z matko quit (Remote host closed the connection) 2014-09-07T18:43:29Z nyef: A compiler doesn't HAVE to be large, but usually is. But large pieces of code usually turn out to be made of smaller pieces of code which are easier to understand. 2014-09-07T18:43:37Z vanila: http://ecls.cvs.sourceforge.net/viewvc/ecls/ecl/src/ there really are hundreds of files 2014-09-07T18:43:39Z matko joined #lisp 2014-09-07T18:44:19Z ehu: but you won't learn about lisp objects and memory *de*allocation from ECL. Because it doesn't -- as far as I know it depends on an external GC. 2014-09-07T18:45:20Z ehu: vanila: maybe that's a good place to start for you too? 2014-09-07T18:45:47Z ehu: taking an external GC library and build your runtime library on top of it? 2014-09-07T18:45:50Z malice joined #lisp 2014-09-07T18:46:02Z vanila: im not sure 2014-09-07T18:46:15Z vanila: I wrote a simple two space copy and collect GC and built a runtime with that 2014-09-07T18:46:31Z ehu: ok. 2014-09-07T18:46:37Z ehu: that can work. 2014-09-07T18:46:38Z vanila: its just that there's one of those really hard to track down problems that occurs in the execution of compiled code 2014-09-07T18:47:11Z oleo joined #lisp 2014-09-07T18:47:16Z ehu: sounds like you're in for some fun post-mortem dissecting? 2014-09-07T18:48:31Z ggole: Maybe a missing root 2014-09-07T18:48:41Z ggole: Did you write a heap verification tool? 2014-09-07T18:48:55Z vanila: I didn't. what's that? 2014-09-07T18:49:28Z vanila: I did try to debug it and isolate the problem but it's really hard, I think that I might have something conceptual wrong about the compilers target 2014-09-07T18:49:30Z ggole: It basically walks the value graph of the program checking that all the invariants that should hold actually hold 2014-09-07T18:49:30Z vanila: anguage 2014-09-07T18:52:06Z oleo quit (Remote host closed the connection) 2014-09-07T18:54:36Z vanila: I don't think there's a missing root, for the root I use the stack + a nursery of things that have been popped but aren't garbage yet 2014-09-07T18:54:44Z nand1 quit (Remote host closed the connection) 2014-09-07T18:55:24Z vanila: it seems to be that the GC moves a thing that something pointed to and the pointer isn't updated or something 2014-09-07T18:55:24Z oleo joined #lisp 2014-09-07T18:56:06Z munge quit (Remote host closed the connection) 2014-09-07T18:56:27Z ggole: That's the sort of thing a heap verifier tries to catch 2014-09-07T18:56:35Z nyef: Sounds like a missed root to me. 2014-09-07T18:56:37Z campaniform joined #lisp 2014-09-07T18:57:09Z nyef: Alternately, you could have a case where a pointer is updated, but incorrectly. 2014-09-07T18:57:44Z ggole: Eg, after moving everything, write a recognisable pattern into the old space. Then crawl the heap looking for anything that points to memory containing that pattern. 2014-09-07T18:58:38Z ggole: Or do the check on every access. 2014-09-07T18:58:56Z vanila: thanks for the ideas to look into :) 2014-09-07T18:59:42Z PersonX quit (Ping timeout: 272 seconds) 2014-09-07T19:00:06Z alexey joined #lisp 2014-09-07T19:02:07Z nyef: Crawl the heap and bounds-check each pointer against oldspace, rather than the whole recognizable pattern bit. 2014-09-07T19:02:37Z nyef: Also the stack. Also look for places (FFI?) where you might be stashing a pointer where the GC wouldn't see it as a root. 2014-09-07T19:02:40Z vanila: I bounds check the pointers to knw whether to move them or leave them alone 2014-09-07T19:03:04Z vanila: if they are on the stack or nursery leave it alone 2014-09-07T19:04:45Z alexey quit (Ping timeout: 272 seconds) 2014-09-07T19:05:48Z korqio- joined #lisp 2014-09-07T19:06:33Z husker quit (Quit: husker) 2014-09-07T19:07:04Z optikalmouser joined #lisp 2014-09-07T19:08:01Z nyef: If you're getting a segfault, you should be able to figure out at least the first level of where the bad pointer comes from, even if you have to do a full-memory search for the pointer value. That can sometimes help in figuring out what happened. 2014-09-07T19:09:24Z nyef: Oh, wow. The kickstarter for the Modbook Pro X has hit more than twice the target funding level. 2014-09-07T19:10:04Z nyef: (Less than an hour to go on it, too.) 2014-09-07T19:10:08Z shka: heh 2014-09-07T19:10:11Z shka: i just googled that 2014-09-07T19:10:18Z shka: who would want this? 2014-09-07T19:10:22Z shka: i have no idea... 2014-09-07T19:10:38Z nyef: The primary target market would be digital artists of all sorts. 2014-09-07T19:10:57Z shka: ah right 2014-09-07T19:11:08Z shka: so no need for external tablet or something 2014-09-07T19:11:29Z nyef: Basically the "you thought a Cintiq was good? *snicker*" crowd. 2014-09-07T19:12:01Z shka: well, not for me 2014-09-07T19:12:09Z shka: i'm not any artis of any sort 2014-09-07T19:12:18Z drmeister quit (Remote host closed the connection) 2014-09-07T19:12:54Z drmeister joined #lisp 2014-09-07T19:13:21Z zymurgy quit (Ping timeout: 246 seconds) 2014-09-07T19:13:31Z Vutral joined #lisp 2014-09-07T19:16:20Z zymurgy joined #lisp 2014-09-07T19:18:57Z drmeiste_ joined #lisp 2014-09-07T19:21:33Z drmeiste_: For an ASDF system, within ASDF is there a way to get at the list/order of source files that are built by a particular system? 2014-09-07T19:22:33Z drmeiste_: With "make" I can say "make -n" and it will take all the dependencies in the makefile and print out the build operations in the order that they would be evaluated to build the system. 2014-09-07T19:22:47Z drmeiste_: I want something like "ASDF -n XXXX.asd" 2014-09-07T19:23:23Z ustunozgur quit (Remote host closed the connection) 2014-09-07T19:23:35Z drmeiste_: Reason: I don't have ASDF running in my system but I have implemented a home-brew build system that given a list of CL source files will compile/link them. 2014-09-07T19:24:42Z nyef: So... you want a trace of the "plan" that ASDF uses for a specific operation on a system? 2014-09-07T19:25:06Z drmeiste_: Something like "ASDF -n xxx.asd" would let me use ASDF on another CL system to figure out the order of building a large package and I could use that order in my build system. 2014-09-07T19:25:32Z drmeiste_: nyef: Yeah. 2014-09-07T19:28:13Z prxq joined #lisp 2014-09-07T19:29:04Z Grue`: (asdf::plan-actions (asdf:make-plan nil 'asdf:load-op :your-system)) 2014-09-07T19:29:09Z nyef: Looks like it might be something like obta... yeah, that. 2014-09-07T19:29:45Z drmeiste_: Grue`: Awesome! 2014-09-07T19:30:12Z Bike: surprised that's not exported. 2014-09-07T19:30:34Z nyef: It's probably exported from something like asdf/plan. 2014-09-07T19:30:44Z Grue`: yeah it's asdf/plan:plan-actions 2014-09-07T19:32:55Z PersonX joined #lisp 2014-09-07T19:33:06Z prxq: when I read the crane announcement, i thought, wow, that would be great if really worked well. 2014-09-07T19:33:29Z prxq: i'm unhappy to report that it doesn't work well at all. 2014-09-07T19:33:49Z resttime joined #lisp 2014-09-07T19:34:11Z nyef: Yet Another Bloody Broken ORM? 2014-09-07T19:35:14Z prxq: it is broken for sure. 2014-09-07T19:36:18Z Davidbrcz quit (Ping timeout: 255 seconds) 2014-09-07T19:36:47Z prxq: at least the version bundled with quicklisp isn't compatible with the online docs. 2014-09-07T19:37:10Z prxq: but that's not all. 2014-09-07T19:37:34Z dim: I've been unable to load any XLS file with cl-olefs, is there any other option when using SBCL? 2014-09-07T19:37:55Z dim: (I'd like to avoid ABCL-only features in pgloader) 2014-09-07T19:38:00Z nyef: dim: Are you sure that it's an XLS and not an XLSX? 2014-09-07T19:38:00Z prxq: well, whatever. Only lost an hour because of that. 2014-09-07T19:38:19Z dim: the file is named .xls yes 2014-09-07T19:38:34Z nyef: I'm not asking about the extension, I'm asking about the format. 2014-09-07T19:38:40Z nyef: What does file(1) have to say about it? 2014-09-07T19:38:41Z dim: how do I check? 2014-09-07T19:38:56Z dim: CDF V2 Document, Little Endian, Os: Windows, Version 6.1, Code page: 1252 2014-09-07T19:39:16Z nyef: Hrm. Okay, that's more on the xls side than the xlsx side, I believe. 2014-09-07T19:39:24Z dim: get the file at http://www.acclaimedmusic.net/ : http://www.acclaimedmusic.net/Current/top_6000_songs_140727.xls 2014-09-07T19:39:59Z nyef: I still haven't tried using cl-olefs myself, though I have some files that I outright expect it to break on. 2014-09-07T19:40:32Z dim: well I've been trying some files here and there, each time to no avail 2014-09-07T19:40:50Z mishoo quit (Ping timeout: 276 seconds) 2014-09-07T19:41:35Z Euge joined #lisp 2014-09-07T19:41:57Z nyef: hlavaty: Ping? 2014-09-07T19:42:52Z Aranshada|W joined #lisp 2014-09-07T19:43:54Z nyef: Ugh. It's been far too long. How do I load and compile ASDF system when the .asd file is in the current directory? 2014-09-07T19:44:19Z PersonX quit (Remote host closed the connection) 2014-09-07T19:44:24Z ARM9 joined #lisp 2014-09-07T19:44:41Z vanila: WHat's the difference between a cons and size 2 vector? 2014-09-07T19:45:10Z Grue`: (push "" asdf:*central-registry*) ? 2014-09-07T19:45:15Z nyef: vanila: A lot of associate semantics, for starters. 2014-09-07T19:45:29Z nyef: Grue`: Okay, and after that how do I load the actual project in question? 2014-09-07T19:45:40Z nyef: (It really HAS been that long since I've used ASDF outside of quicklisp.) 2014-09-07T19:45:42Z kpreid quit (Ping timeout: 245 seconds) 2014-09-07T19:45:42Z Grue`: (asdf:load-system ...) 2014-09-07T19:45:43Z dim: nyef: push the directory to asdf:*central-registry* 2014-09-07T19:46:04Z dim: oh and then use asdf:load-system, right 2014-09-07T19:46:30Z nyef: Okay, that seems to have worked, thanks. 2014-09-07T19:48:22Z shka: vanila: vector is any 1 dimmensional array 2014-09-07T19:48:37Z shka: array is very different data structure from list 2014-09-07T19:49:05Z nyef: olefs::parse-xls-file did something reasonable with the first file I tried it with. 2014-09-07T19:49:06Z shka: and is good at better things 2014-09-07T19:49:12Z shka: oh crap 2014-09-07T19:49:24Z shka: vanila: and is good at OTHER things 2014-09-07T19:49:30Z shka: that's what i wanted to say 2014-09-07T19:49:37Z vanila: thanks all :) 2014-09-07T19:49:46Z gravicappa quit (Remote host closed the connection) 2014-09-07T19:49:48Z shka: vanila: do you found details? 2014-09-07T19:50:01Z vanila: that's all i wanted to know 2014-09-07T19:50:05Z shka: *did you found good explanation somewhere? 2014-09-07T19:50:18Z shka: vanila: i belive you want to know more 2014-09-07T19:50:19Z Grue`: vector is ATOM ;) 2014-09-07T19:50:51Z shka: vanila: it is good idea to know those basic structures well 2014-09-07T19:51:02Z shka: arrays and lists are used everywhere 2014-09-07T19:51:14Z shka: not just in lisp but in ANY language 2014-09-07T19:51:18Z nyef: Now, I should have a file that contains some amount of text that will be corrupted by the this setup... 2014-09-07T19:53:28Z kristof: shka: not in Java, C++, and C. It seems people would rather use dynamically resizing arrays than linked lists. 2014-09-07T19:53:49Z kpreid joined #lisp 2014-09-07T19:53:57Z Grue`: to be fair, most of the time arrays are faster 2014-09-07T19:54:55Z AeroNotix: http://common-lisp.net/project/fiveam/docs/Checks.html#Generators 2014-09-07T19:55:01Z kristof: That is true. 2014-09-07T19:55:11Z AeroNotix: 5am suggests they provide defgenerator -- but the package in quicklisp doesn't seem to have it 2014-09-07T19:55:13Z Davidbrcz joined #lisp 2014-09-07T19:55:30Z nyef: Okay, second file I tried with, "The assertion (EQUAL OLEFS::*READING-UNICODE-STRING* (OLEFS::READ-OCTET STREAM)) failed." 2014-09-07T19:56:06Z kristof: Grue`: except when you resize. 2014-09-07T19:56:25Z shka: kristof: yes, but list and array are the two most used data structures in all programming languages 2014-09-07T19:56:49Z kristof: Right, so I'm just being nitpicky :) 2014-09-07T19:57:00Z emma quit (Ping timeout: 255 seconds) 2014-09-07T19:57:04Z schaueho quit (Ping timeout: 268 seconds) 2014-09-07T19:58:22Z kristof: vanila: there is no good difference between a cons and a general simple vector of length 2. 2014-09-07T19:58:37Z nyef: dim: It's looking to me as though the library isn't particularly complete or well-documented, TBH. 2014-09-07T19:58:39Z shka: there is whole land of difference to be honest 2014-09-07T19:58:53Z kristof: shka: huh? Please elaborate, I'm curious. 2014-09-07T19:59:25Z shka: the one common thing between list and vector? both are sequences 2014-09-07T19:59:32Z shka: both are ordered 2014-09-07T19:59:41Z pt1 joined #lisp 2014-09-07T19:59:50Z kristof: Oh, I see where you're going with this 2014-09-07T20:00:01Z shka: but internal structure is different and properties are different 2014-09-07T20:00:14Z kristof: Oh, I don't 2014-09-07T20:00:57Z dim: nyef: yeah, no .xls support for pgloader, that's all 2014-09-07T20:01:28Z shka: well, access to any element of the list? sure, just walk over it, with linear complexity 2014-09-07T20:01:56Z dim: I'd like to find a nice demo data set for pgcharts and I stumbled upon a Excel based data sheet, so wanted to see about loading it with pgloader... will probably find something more interesting 2014-09-07T20:01:58Z nyef: dim: Alternately, you get to fork the library, debug, improve, and document it, and THEN add .xls support to pgloader. 2014-09-07T20:02:40Z nyef: Right now my process works on the order of "get an .xls file, export to utf-8 CSV, feed to my loader program". 2014-09-07T20:02:54Z shka: vanila: basicly: list = linked cons cells, cons cells can be stored at any memory adress 2014-09-07T20:03:02Z dim: done that for too many source types already (csv, mysql, ixf, fixed file format, and an attempt at a syslog receiver) 2014-09-07T20:03:04Z kristof: shka: assuming sbcl, if you fixed the length of the vector, made sure it was a simple vector (non-adjustable, no fill pointers or displacement), and let the elements be of any type, I think the compiler would optimize the representation to an array of two pointers. 2014-09-07T20:03:06Z attila_lendvai quit (Read error: Connection reset by peer) 2014-09-07T20:03:08Z ggole: conses aren't just slow vectors, they can express structures that vectors can't 2014-09-07T20:03:14Z TomRS`` quit (Ping timeout: 268 seconds) 2014-09-07T20:03:25Z shka: kristof: yup 2014-09-07T20:03:48Z kristof: Right, that's all I was saying, and what vanila wanted to hear 2014-09-07T20:04:04Z shka: vanila: i still think you should simply read about it 2014-09-07T20:04:09Z Davidbrcz quit (Ping timeout: 260 seconds) 2014-09-07T20:04:09Z vanila: ok! 2014-09-07T20:04:16Z attila_lendvai joined #lisp 2014-09-07T20:04:17Z attila_lendvai quit (Changing host) 2014-09-07T20:04:17Z attila_lendvai joined #lisp 2014-09-07T20:04:31Z shka: data structures are important and actually interesting topic 2014-09-07T20:04:53Z drmeiste_: nyef, Grue`: You guys couldn't have asked/answered those questions about using ASDF at a better time for me - thanks! 2014-09-07T20:05:09Z kristof: shka: vanila is an experienced haskell programmer and pretty well versed in datatypes and low level programming. 2014-09-07T20:05:20Z shka: aaaah 2014-09-07T20:05:30Z shka: vanila: sorry, i thought you are newbie 2014-09-07T20:05:34Z kristof: There was no way for you to know that so that's alright 2014-09-07T20:05:55Z kristof: shka: context is that he's writing a compiler for lisp, which is why he asked that 2014-09-07T20:05:55Z shka: what? 2014-09-07T20:06:01Z ndrei quit (Ping timeout: 260 seconds) 2014-09-07T20:06:01Z shka: SHODAN: is on the channel 2014-09-07T20:06:05Z shka: we are doomed! 2014-09-07T20:06:30Z shka: vanila: heh, sorry, i did not realize that 2014-09-07T20:06:49Z shka: kristof: i will note this 2014-09-07T20:07:27Z shka: ok, enough of those failures 2014-09-07T20:07:30Z shka: good night all 2014-09-07T20:07:37Z shka: vanila: happy hacking your compiler 2014-09-07T20:07:44Z shka: let it be awesome! 2014-09-07T20:08:03Z Grue`: heh guess my comment that vector is atom and cons is not was actually the only useful one 2014-09-07T20:08:13Z shka: Grue`: :D 2014-09-07T20:08:21Z kristof: vanila: to answer your question, if you didn't fix the length of the vrctor and if it weren't simple, you'd have to store the following: fill pointers, size, displacement, and some other features that elude my memory 2014-09-07T20:08:42Z kristof: By displacement I'm referring to fortran style array overlap 2014-09-07T20:09:56Z attila_lendvai: cl.net is dying? it comes online sometimes, but it's mostly offline in the past hour or so 2014-09-07T20:10:06Z nyef: Even with a SIMPLE-VECTOR, you end up with at least size, IIRC. 2014-09-07T20:11:22Z kristof: nyef: I think there's a way to fix the size, which SBCL will take for granted. 2014-09-07T20:11:30Z drmeister quit (Remote host closed the connection) 2014-09-07T20:11:34Z Karl_Dscc quit (Remote host closed the connection) 2014-09-07T20:11:46Z drmeister joined #lisp 2014-09-07T20:11:54Z kristof: If you can't, that would mean an extra level of boxing which is totally impossible to remove. I'd be displeased. 2014-09-07T20:13:13Z nyef: Let's see... the VECTOR primobj has a widetag, has a length slot, and has data slots. 2014-09-07T20:13:53Z nyef: That's about as minimal as it can get, really. 2014-09-07T20:14:26Z shka quit (Quit: WeeChat 1.0) 2014-09-07T20:14:32Z nyef: And the vector LENGTH slot sits in the same place as an ARRAY (header) FILL-POINTER, which is kindof cute. 2014-09-07T20:14:39Z cy is now known as notcy 2014-09-07T20:14:47Z oleo quit (Ping timeout: 245 seconds) 2014-09-07T20:15:14Z kristof: nyef: how are you getting the obect representation? 2014-09-07T20:15:18Z Aranshada|W quit (Ping timeout: 246 seconds) 2014-09-07T20:15:27Z nyef: How do you mean? 2014-09-07T20:15:36Z nyef: Are you asking where it sits in the source code? 2014-09-07T20:15:44Z normanrichards joined #lisp 2014-09-07T20:16:09Z kristof: nyef: oh, are you getting this information from sbcl source? 2014-09-07T20:16:20Z nyef: Yeah, SYS:SRC;COMPILER;GENERIC;OBJDEF.LISP. 2014-09-07T20:16:50Z kristof: Bummer. How does one use unboxed, totally unsafe arrays in Lisp for numeric computation? 2014-09-07T20:16:59Z ggole: Some runtimes (for other languages) stash length and tag/gc info into the same word: that's about the only memory savings I can imagine 2014-09-07T20:17:54Z nyef: kristof: If you want them outside of heap space, you're on your own. Otherwise, use a specialized vector format such as :element-type :double-float or something and then use (safety 0) code. 2014-09-07T20:18:24Z kristof: nyef: right, but will safety 0 elide length checks? 2014-09-07T20:18:36Z nyef: Typically, yes, but by no means guaranteed. 2014-09-07T20:19:15Z kristof: nyef: if you don't participate in length checks, why store the length? 2014-09-07T20:19:35Z ggole: Because (length ...) has to return it 2014-09-07T20:19:45Z ggole: Similarly iteration, etc 2014-09-07T20:19:47Z nyef: Because the GC needs to know it, for starters. 2014-09-07T20:19:49Z emma_ joined #lisp 2014-09-07T20:19:50Z emma_ quit (Changing host) 2014-09-07T20:19:50Z emma_ joined #lisp 2014-09-07T20:20:02Z kristof: All three of those make sense. Hrm. 2014-09-07T20:20:15Z ggole: You'd have to encode length into the type tag or something 2014-09-07T20:20:33Z kristof: Right, right. 2014-09-07T20:21:03Z kristof: And you're storing a type tag too so unboxing is not an option. Part of me is saf about that. 2014-09-07T20:21:24Z ggole: Do you want flat arrays of (fixed size) arrays? 2014-09-07T20:21:56Z kristof: The nesting's not necessary. Just fixed size, fixed type arrays. 2014-09-07T20:22:11Z k-stz quit (Remote host closed the connection) 2014-09-07T20:22:44Z ggole: You can use arrays for that, for some types 2014-09-07T20:23:17Z emma_ is now known as emma 2014-09-07T20:23:17Z ggole: But there will be headers and length. 2014-09-07T20:23:24Z kristof: I see. 2014-09-07T20:23:52Z kristof: I'm under impression that unboxed arrays exist in Haskell. I could be wrong, but I could also be right. 2014-09-07T20:24:14Z ggole: They have machinery for that, but I'm not really familiar with it. 2014-09-07T20:24:25Z kristof: But a single pointer dereference isn't really worth whining about, right? 2014-09-07T20:24:48Z ggole: Depends. Is it costing you money/time? 2014-09-07T20:24:53Z kristof: If I'm worried about a single fetch, I should probably just be writing some stupid, unsafe C and call it. 2014-09-07T20:24:55Z Euge quit (Read error: Connection reset by peer) 2014-09-07T20:25:04Z ggole: It *can* make sense to worry about these things, although it usually doesn't. 2014-09-07T20:25:06Z oleo joined #lisp 2014-09-07T20:25:27Z ggole: (It's also fun, which I think drives most such effort.) 2014-09-07T20:25:40Z ggole looks guilty 2014-09-07T20:26:12Z kristof: ggole: Absolutely. People don't know how to worry about the right things, anyway. One second they're unrolling a loop manually and the next they're using glibc's malloc. 2014-09-07T20:27:27Z Davidbrcz joined #lisp 2014-09-07T20:27:37Z kristof: ggole: Yes! This stuff is fun to think about. Until it's not. 2014-09-07T20:28:03Z work_op joined #lisp 2014-09-07T20:29:02Z kobain quit (Ping timeout: 245 seconds) 2014-09-07T20:29:11Z ggole: Yeah, it can be enthralling or crushingly tedious... sometimes the same problem. 2014-09-07T20:29:22Z ggole: This programming thing is a funny business. 2014-09-07T20:29:55Z eni quit (Remote host closed the connection) 2014-09-07T20:30:26Z jegaxd26 joined #lisp 2014-09-07T20:31:46Z beach left #lisp 2014-09-07T20:32:30Z notcy is now known as cy 2014-09-07T20:32:33Z Davidbrcz quit (Ping timeout: 255 seconds) 2014-09-07T20:33:13Z kristof: ggole: Heh. Anyway, minor discrepancies about a single box here and there aside, Common Lisp is still the best programming language evar and SBCL makes it the fastest dynamic language around. So, there. 2014-09-07T20:33:30Z kristof sneers at the pythonistas and their GIL. 2014-09-07T20:33:43Z pt1 quit (Remote host closed the connection) 2014-09-07T20:33:44Z faheem_: kristof: :-) 2014-09-07T20:34:22Z kristof: faheem_: For real, yo. 2014-09-07T20:34:26Z ARM9 left #lisp 2014-09-07T20:35:16Z nand1` joined #lisp 2014-09-07T20:36:56Z ndrei joined #lisp 2014-09-07T20:37:23Z OSADIpp joined #lisp 2014-09-07T20:40:28Z faheem_: kristof: not a Python fan? 2014-09-07T20:41:06Z Davidbrcz joined #lisp 2014-09-07T20:42:35Z gingerale quit (Ping timeout: 276 seconds) 2014-09-07T20:42:38Z rme quit (Quit: rme) 2014-09-07T20:42:47Z work_op: the whitespace aspect of python is lame 2014-09-07T20:42:52Z Soft quit (Ping timeout: 240 seconds) 2014-09-07T20:42:59Z ndrei quit (Read error: Connection reset by peer) 2014-09-07T20:43:03Z EvW joined #lisp 2014-09-07T20:43:27Z faheem_: work_op: i'd use the term misfeature myself 2014-09-07T20:43:30Z work_op: and guido has expressed anti-functional sentiments in the past. 2014-09-07T20:43:34Z kristof: faheem_: Everytime someone tells me something about Python, my thought process is either 1) "Lisp has been doing that since forever, and it still manages to be efficiently compiled' or 2) "Why all the dynamicism?" 2014-09-07T20:43:36Z phax joined #lisp 2014-09-07T20:43:36Z phax quit (Changing host) 2014-09-07T20:43:36Z phax joined #lisp 2014-09-07T20:43:39Z work_op: ruby was more fun to read about 2014-09-07T20:43:40Z faheem_: work_op: oh? 2014-09-07T20:43:43Z work_op: yeah 2014-09-07T20:43:52Z kristof: Dog slow, next! 2014-09-07T20:44:35Z ggole: That's just an excuse: even very dynamic languages like Self were fairly fast 2014-09-07T20:44:42Z francogrex joined #lisp 2014-09-07T20:44:48Z ggole: Python and Ruby are just poorly implemented 2014-09-07T20:44:55Z jtza8 joined #lisp 2014-09-07T20:45:03Z faheem_: I don't think Python is that bad. 2014-09-07T20:45:15Z Xach: There is a place to discuss whether it's good or bad 2014-09-07T20:45:26Z faheem_: agreed, more people should be using CL 2014-09-07T20:46:42Z puchacz: guys, I take an attempt to use abcl on android is not a good idea, is it? 2014-09-07T20:46:43Z francogrex: I have a code within a function does something like that (incf *myvar* 10) (func ...[uses *myvar*]) ... *myvar* is not updated however replacing (incf *myvar* 10) with (setf *myvar* (+ *myvar* 10)) does update *myvar* used in func 2014-09-07T20:47:08Z francogrex: is this what is expected? 2014-09-07T20:48:57Z H4ns: francogrex: no 2014-09-07T20:49:18Z ggole: Have you shadowed incf or something like that? 2014-09-07T20:49:36Z H4ns: probably just forgot to compile or something. 2014-09-07T20:50:30Z francogrex: ok. i will do some verifications. it seems odd 2014-09-07T20:51:07Z kobain joined #lisp 2014-09-07T20:53:04Z farhaven quit (Ping timeout: 260 seconds) 2014-09-07T20:53:32Z mathrick quit (Quit: Leaving) 2014-09-07T20:54:12Z awaythrick joined #lisp 2014-09-07T20:57:06Z kristof quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-09-07T20:57:20Z Vutral quit (Excess Flood) 2014-09-07T20:58:17Z Davidbrcz quit (Ping timeout: 260 seconds) 2014-09-07T20:59:52Z ejbs quit (Ping timeout: 245 seconds) 2014-09-07T21:00:40Z wizzo quit (Ping timeout: 272 seconds) 2014-09-07T21:00:56Z alexey1 joined #lisp 2014-09-07T21:02:53Z drmeiste_: Grrr. In SBCL I type: (push #P"/Users/meister/Development/clasp/src/lisp/kernel/SICL/Code/" asdf:*central-registry*) then I type (asdf:load-system "sicl.asd") - there is a file /Users/meister/Development/clasp/src/lisp/kernel/SICL/Code/sicl.asd but all I get is: "Component sicl.asd not found 2014-09-07T21:04:49Z drmeiste_: Does anyone have any ideas about what I'm missing? 2014-09-07T21:04:50Z Vutral joined #lisp 2014-09-07T21:05:14Z prxq: did you try (asdf:load-system 'sicl) ? 2014-09-07T21:05:31Z alexey1 quit (Ping timeout: 268 seconds) 2014-09-07T21:05:32Z francogrex: (asdf:operate 'asdf:load-op :sicl) 2014-09-07T21:05:40Z prxq: or that 2014-09-07T21:06:05Z drmeiste_: That's the ticket. 2014-09-07T21:06:19Z drmeiste_: It fails for other reasons but it finds the .asd file. 2014-09-07T21:06:59Z angavrilov quit (Remote host closed the connection) 2014-09-07T21:07:09Z francogrex: I would use pushnew instead of push (but not related to your error) 2014-09-07T21:07:39Z ndrei joined #lisp 2014-09-07T21:08:05Z drmeiste_: Now the "sicl.asd" file looks like this: https://gist.github.com/drmeister/f6c6a5c42fa8f1b60674 2014-09-07T21:08:18Z stanislav_: *central-registry* is kind of obsolete, anyway 2014-09-07T21:08:29Z prxq: but useful 2014-09-07T21:08:45Z stanislav_: I'd add a symlink to .../Code to quicklisp's local dists 2014-09-07T21:08:59Z stanislav_: or it doesn't work on Windows? 2014-09-07T21:09:33Z drmeiste_: The asdf:load-system is failing with "failed to find the TRUENAME of /Users/meister/Development/clasp/src/lisp/kernel/SICL/Code/tags.lisp: No such file or directory" - and there is no such file. There is however "Code/Tags/tags.lisp". Is this an ill-formed system definition file or should ASDF be crawling into subdirectories to find files? 2014-09-07T21:09:55Z francogrex: it should work anywhere. stick the sicl in ql's local dist and don't bother with asdf manually 2014-09-07T21:10:37Z francogrex: btw sicl sucks 2014-09-07T21:10:39Z stanislav_: I'm not an expert with ASDF, but it should work if you introduce the module Tags containing the file tags.lisp 2014-09-07T21:11:34Z drmeister quit (Remote host closed the connection) 2014-09-07T21:12:06Z drmeister joined #lisp 2014-09-07T21:13:30Z drmeiste_: francogrex: I understand what sicl is. I'm very interested in parts of it (it's compiler) and I'm talking with beach about incorporating his compiler in Clasp, the Common Lisp/C++ system I'm developing. 2014-09-07T21:14:16Z Xach: francogrex: Why would you claim sicl sucks? 2014-09-07T21:14:52Z ThomasSolti quit (Ping timeout: 240 seconds) 2014-09-07T21:15:10Z drmeiste_: I'd rather leave the editorializing behind, I'm just trying to figure out how to use ASDF to calculate the build order for the parts of SICL that I want to incorporate. 2014-09-07T21:15:28Z ThomasSolti joined #lisp 2014-09-07T21:15:33Z zwer_ quit (Remote host closed the connection) 2014-09-07T21:15:51Z DrCode quit (Ping timeout: 264 seconds) 2014-09-07T21:15:52Z zwer_ joined #lisp 2014-09-07T21:16:13Z work_op quit (Ping timeout: 246 seconds) 2014-09-07T21:16:29Z cpt_nemo quit (Ping timeout: 260 seconds) 2014-09-07T21:16:53Z yauz_2 quit (Ping timeout: 240 seconds) 2014-09-07T21:17:03Z MouldyOldBones quit (Ping timeout: 264 seconds) 2014-09-07T21:17:03Z stanislav_: drmeiste_: take a look at 6.2 http://common-lisp.net/project/asdf/asdf.html 2014-09-07T21:17:53Z easye` joined #lisp 2014-09-07T21:18:15Z Adlai quit (Ping timeout: 264 seconds) 2014-09-07T21:19:03Z francogrex: Xach: sucks is incorrect (just sucks without explanation). sucks as it is now because it is incomplete. Once it's completed and fully ansi-compliant it's another matter 2014-09-07T21:19:05Z easye quit (Ping timeout: 268 seconds) 2014-09-07T21:19:15Z drmeiste_: stanislav_: Thanks, I have that bookmarked already. I appreciate that people have the patience to offer help so that I don't have to wade through all that. :-) 2014-09-07T21:20:38Z stanislav_: drmeiste_: you are welcome :) 2014-09-07T21:20:55Z drmeiste_ is now known as drmeister_ 2014-09-07T21:21:07Z MouldyOldBones joined #lisp 2014-09-07T21:21:07Z _d3f quit (Ping timeout: 245 seconds) 2014-09-07T21:21:08Z Xach: francogrex: Don't write that it sucks in the first place, please. 2014-09-07T21:21:30Z francogrex: yes acknowledged 2014-09-07T21:21:38Z nyef: "It's not that it sucks, it's that it has ``great unrealized potential''." 2014-09-07T21:22:03Z ThomasSolti quit (Ping timeout: 255 seconds) 2014-09-07T21:22:41Z drmeister_: I'd just like to say that the SICL code is incredibly clean and easy to read. 2014-09-07T21:22:42Z _d3f joined #lisp 2014-09-07T21:22:50Z ircbrowse quit (Ping timeout: 272 seconds) 2014-09-07T21:23:23Z drmeister_: Two years ago I used the SICL reader and readtable code to implement C++ versions because I couldn't figure out SBCL or ECL's code. 2014-09-07T21:23:34Z ThomasSolti joined #lisp 2014-09-07T21:24:01Z drmeister_ thinks 'nuff said. 2014-09-07T21:24:06Z l3thal quit (Ping timeout: 250 seconds) 2014-09-07T21:24:52Z yauz joined #lisp 2014-09-07T21:25:46Z cy is now known as cybot 2014-09-07T21:25:55Z DrCode joined #lisp 2014-09-07T21:26:07Z zacharias quit (Ping timeout: 245 seconds) 2014-09-07T21:26:30Z cybot is now known as cy 2014-09-07T21:27:36Z mrSpec quit (Remote host closed the connection) 2014-09-07T21:27:48Z ircbrowse joined #lisp 2014-09-07T21:28:16Z l3thal joined #lisp 2014-09-07T21:29:58Z cpt_nemo joined #lisp 2014-09-07T21:30:09Z yauz quit (Ping timeout: 255 seconds) 2014-09-07T21:31:10Z yauz joined #lisp 2014-09-07T21:32:21Z easye` quit (Ping timeout: 260 seconds) 2014-09-07T21:32:55Z puchacz quit (Quit: Konversation terminated!) 2014-09-07T21:33:52Z easye` joined #lisp 2014-09-07T21:34:24Z ThomasSolti quit (Ping timeout: 246 seconds) 2014-09-07T21:35:03Z MouldyOldBones quit (Ping timeout: 264 seconds) 2014-09-07T21:35:49Z cy is now known as cybot 2014-09-07T21:36:05Z benny quit (Ping timeout: 260 seconds) 2014-09-07T21:36:29Z ThomasSolti joined #lisp 2014-09-07T21:37:11Z benny joined #lisp 2014-09-07T21:37:11Z Vivitron joined #lisp 2014-09-07T21:38:24Z Adlai joined #lisp 2014-09-07T21:41:44Z jegaxd26 quit (Remote host closed the connection) 2014-09-07T21:42:30Z francogrex: hmm i haven't looked at it for some time, but a lot of new has been made like /Code/Backends/ARM/ 2014-09-07T21:42:37Z MouldyOldBones joined #lisp 2014-09-07T21:43:09Z pt1 joined #lisp 2014-09-07T21:43:28Z abbe quit (Read error: Connection reset by peer) 2014-09-07T21:44:01Z benny quit (Ping timeout: 260 seconds) 2014-09-07T21:44:52Z l3thal quit (Ping timeout: 240 seconds) 2014-09-07T21:45:00Z lpaste quit (Ping timeout: 272 seconds) 2014-09-07T21:45:29Z ThomasSolti quit (Quit: ZNC - http://znc.sourceforge.net) 2014-09-07T21:45:51Z codeburg quit (Ping timeout: 264 seconds) 2014-09-07T21:45:52Z _d3f quit (Ping timeout: 240 seconds) 2014-09-07T21:46:00Z ThomasSolti joined #lisp 2014-09-07T21:46:02Z AndroidShoutapop quit (Ping timeout: 260 seconds) 2014-09-07T21:46:13Z ircbrowse quit (Ping timeout: 268 seconds) 2014-09-07T21:46:17Z normanrichards quit 2014-09-07T21:46:49Z cpt_nemo quit (Ping timeout: 260 seconds) 2014-09-07T21:47:26Z drmeister_: francogrex: Currently beach is working on consolidating the compiler so that it could be used by other Common Lisp systems. His compiler would take S-expressions to and AST and that to an MIR representation. In the MIR representation he's got escape analysis, dead-code analysis, tail-call analysis and a bunch of other Common Lisp language level optimizations. 2014-09-07T21:47:27Z yauz quit (Ping timeout: 268 seconds) 2014-09-07T21:47:52Z yano quit (Remote host closed the connection) 2014-09-07T21:48:26Z drmeister_: I'm hoping to incorporate his compiler in my system and translate the MIR representation into LLVM-IR->native code. 2014-09-07T21:48:42Z pt1 quit (Remote host closed the connection) 2014-09-07T21:49:47Z drmeister_: The SBCL people are also excited about it because the core of the SBCL compiler was written in the '80's 2014-09-07T21:50:00Z francogrex: nice. drmeister_: clasp https://github.com/openlisp/clasp here I suppose is not your clasp 2014-09-07T21:50:18Z abbe_ joined #lisp 2014-09-07T21:50:51Z _d3f joined #lisp 2014-09-07T21:51:01Z drmeister_: No - that's not mine. 2014-09-07T21:51:51Z francogrex: name is confusing. so your developing a lisp to c++ compiler/translator? 2014-09-07T21:51:59Z francogrex: you're 2014-09-07T21:52:19Z l3thal joined #lisp 2014-09-07T21:52:53Z Mandus quit (Ping timeout: 260 seconds) 2014-09-07T21:53:21Z easye` quit (Ping timeout: 260 seconds) 2014-09-07T21:54:13Z benny joined #lisp 2014-09-07T21:54:13Z Vivitron quit (Read error: Connection reset by peer) 2014-09-07T21:54:50Z benny is now known as Guest25933 2014-09-07T21:55:12Z drmeister_: Not quite. I'm developing a Common Lisp environment that generates LLVM-IR and interoperates with C++ (you can easily expose and call C++ libraries). 2014-09-07T21:55:38Z Vivitron joined #lisp 2014-09-07T21:55:41Z whmark quit (Remote host closed the connection) 2014-09-07T21:55:58Z whmark joined #lisp 2014-09-07T21:56:11Z yauz joined #lisp 2014-09-07T22:00:23Z matko quit (Remote host closed the connection) 2014-09-07T22:00:31Z codeburg joined #lisp 2014-09-07T22:01:43Z Mandus joined #lisp 2014-09-07T22:02:28Z whmark quit (Remote host closed the connection) 2014-09-07T22:02:43Z whmark joined #lisp 2014-09-07T22:03:17Z isoraqathedh quit (Read error: Connection reset by peer) 2014-09-07T22:04:55Z isoraqathedh joined #lisp 2014-09-07T22:05:27Z cybot is now known as cy 2014-09-07T22:07:28Z AndroidShoutapop joined #lisp 2014-09-07T22:07:38Z AndroidShoutapop is now known as Guest49966 2014-09-07T22:08:48Z francogrex: ok good project I guess. I which you success. I myself do not support Clang 2014-09-07T22:09:02Z Vivitron quit (Ping timeout: 276 seconds) 2014-09-07T22:09:02Z yauz quit (Ping timeout: 268 seconds) 2014-09-07T22:09:04Z francogrex: wish 2014-09-07T22:12:01Z Vutral quit (Ping timeout: 260 seconds) 2014-09-07T22:12:28Z drmeister quit (Remote host closed the connection) 2014-09-07T22:12:29Z oleo is now known as Guest74721 2014-09-07T22:12:41Z drmeister joined #lisp 2014-09-07T22:14:14Z zwer_ quit (Remote host closed the connection) 2014-09-07T22:14:23Z zwer_ joined #lisp 2014-09-07T22:15:42Z Guest74721 quit (Ping timeout: 245 seconds) 2014-09-07T22:18:03Z Vutral joined #lisp 2014-09-07T22:18:06Z Xach updates quicklisp-controller to automatically xref the github issue involved in the project to be committed 2014-09-07T22:23:11Z atgreen joined #lisp 2014-09-07T22:23:16Z attila_lendvai quit (Quit: Leaving.) 2014-09-07T22:24:18Z oleo__ joined #lisp 2014-09-07T22:24:21Z ggole quit 2014-09-07T22:24:38Z oleo__ is now known as oleo 2014-09-07T22:25:07Z drmeister_ quit (Remote host closed the connection) 2014-09-07T22:25:47Z ehu quit 2014-09-07T22:26:13Z whmark quit (Remote host closed the connection) 2014-09-07T22:27:20Z vanila quit (Quit: Leaving) 2014-09-07T22:27:51Z ustunozgur joined #lisp 2014-09-07T22:28:42Z nell joined #lisp 2014-09-07T22:29:03Z dnm joined #lisp 2014-09-07T22:29:08Z leo2007 joined #lisp 2014-09-07T22:31:40Z Nizumzen joined #lisp 2014-09-07T22:31:53Z Vutral quit (Excess Flood) 2014-09-07T22:32:23Z Soft joined #lisp 2014-09-07T22:32:32Z Soft is now known as Guest21654 2014-09-07T22:32:34Z brucem quit (Ping timeout: 250 seconds) 2014-09-07T22:33:25Z francogrex quit (Remote host closed the connection) 2014-09-07T22:35:18Z ircbrowse joined #lisp 2014-09-07T22:36:18Z lpaste joined #lisp 2014-09-07T22:36:46Z yauz joined #lisp 2014-09-07T22:41:41Z jtza8 quit (Remote host closed the connection) 2014-09-07T22:41:42Z Vutral joined #lisp 2014-09-07T22:42:31Z urthbound joined #lisp 2014-09-07T22:42:57Z cpt_nemo joined #lisp 2014-09-07T22:46:33Z OSADIpp quit (Ping timeout: 260 seconds) 2014-09-07T22:46:33Z nyef quit (Quit: G'night all) 2014-09-07T22:48:56Z wasamasa: drmeister: does that involve c automatically, too? 2014-09-07T22:49:52Z tvaalen quit (Ping timeout: 240 seconds) 2014-09-07T22:50:21Z optikalmouser quit (Ping timeout: 268 seconds) 2014-09-07T22:50:26Z tvaalen joined #lisp 2014-09-07T22:52:03Z Zeedox_ quit (Ping timeout: 255 seconds) 2014-09-07T22:53:15Z Vivitron joined #lisp 2014-09-07T22:58:45Z EvW quit (Quit: EvW) 2014-09-07T23:01:04Z vaporatorius quit (Remote host closed the connection) 2014-09-07T23:01:52Z alexey joined #lisp 2014-09-07T23:06:23Z alexey quit (Ping timeout: 268 seconds) 2014-09-07T23:08:55Z forebitten joined #lisp 2014-09-07T23:10:26Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-07T23:10:42Z campaniform quit (Ping timeout: 268 seconds) 2014-09-07T23:12:22Z kristof joined #lisp 2014-09-07T23:12:31Z drmeister quit (Remote host closed the connection) 2014-09-07T23:13:14Z eudoxia joined #lisp 2014-09-07T23:13:19Z drmeister joined #lisp 2014-09-07T23:14:49Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-07T23:15:24Z dmiles_afk joined #lisp 2014-09-07T23:19:48Z whmark joined #lisp 2014-09-07T23:21:43Z hugod joined #lisp 2014-09-07T23:24:33Z forebitten quit (Ping timeout: 264 seconds) 2014-09-07T23:25:12Z jleija joined #lisp 2014-09-07T23:27:23Z urthbound quit 2014-09-07T23:30:07Z brucem joined #lisp 2014-09-07T23:31:09Z brucem quit (Changing host) 2014-09-07T23:31:09Z brucem joined #lisp 2014-09-07T23:32:27Z ustunozgur quit (Remote host closed the connection) 2014-09-07T23:35:06Z innertracks joined #lisp 2014-09-07T23:38:30Z ejbs joined #lisp 2014-09-07T23:39:15Z MouldyOldBones quit (Ping timeout: 264 seconds) 2014-09-07T23:39:22Z innertracks quit (Ping timeout: 240 seconds) 2014-09-07T23:40:05Z nihilatus joined #lisp 2014-09-07T23:41:44Z stoichiometry joined #lisp 2014-09-07T23:43:26Z MouldyOldBones joined #lisp 2014-09-07T23:45:29Z stacksmith joined #lisp 2014-09-07T23:46:18Z Shinmera quit (Quit: ZzzzZ) 2014-09-07T23:46:58Z work_op joined #lisp 2014-09-07T23:52:39Z urandom__ quit (Quit: Konversation terminated!) 2014-09-08T00:13:59Z edgar-rft left #lisp 2014-09-08T00:14:17Z Vivitron quit (Read error: Connection reset by peer) 2014-09-08T00:14:20Z Vivitron` joined #lisp 2014-09-08T00:15:02Z drmeister quit (Remote host closed the connection) 2014-09-08T00:15:15Z drmeister joined #lisp 2014-09-08T00:15:55Z eudoxia quit (Quit: Lost terminal) 2014-09-08T00:26:53Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T00:28:12Z korqio- quit (Ping timeout: 245 seconds) 2014-09-08T00:32:03Z Vutral joined #lisp 2014-09-08T00:33:17Z vanila joined #lisp 2014-09-08T00:33:32Z zz_karupa is now known as karupa 2014-09-08T00:35:21Z stoichiometry quit (Ping timeout: 246 seconds) 2014-09-08T00:38:14Z CrazyEddy joined #lisp 2014-09-08T00:38:18Z korqio- joined #lisp 2014-09-08T00:43:20Z drmeiste_ joined #lisp 2014-09-08T00:45:09Z pillton quit (Ping timeout: 252 seconds) 2014-09-08T00:45:44Z abbe_ is now known as abbe 2014-09-08T00:47:13Z varjag quit (Quit: Connection closed for inactivity) 2014-09-08T00:47:53Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T00:52:55Z Vutral joined #lisp 2014-09-08T00:55:03Z juiko joined #lisp 2014-09-08T00:55:17Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-08T01:02:42Z alexey joined #lisp 2014-09-08T01:03:36Z Vivitron joined #lisp 2014-09-08T01:03:47Z Vivitron` quit (Read error: Connection reset by peer) 2014-09-08T01:07:30Z alexey quit (Ping timeout: 255 seconds) 2014-09-08T01:07:54Z ejbs quit (Ping timeout: 246 seconds) 2014-09-08T01:10:53Z CrazyEddy joined #lisp 2014-09-08T01:10:57Z thierrygar: Thinking of doing native CL implementation of SRU http://www.loc.gov/standards/sru/; want to check that this does not already exist. 2014-09-08T01:10:58Z minion: thierrygar, memo from pjb: you can get the value of a lexical variable knowing its name using ECASE: (let ((a 1) (b 2) (c 3)) (ECASE name (a a) (b b) (c c))) 2014-09-08T01:11:26Z thierrygar: Checked github, cliki.net, quicklisp, common-lisp.net. Other places I should check? 2014-09-08T01:14:19Z kristof: thierrygar: quickdocs? but if it's not on quicklisp, it won't be on quickdocs 2014-09-08T01:14:43Z prxq_ joined #lisp 2014-09-08T01:15:04Z drmeister quit (Remote host closed the connection) 2014-09-08T01:15:43Z drmeister joined #lisp 2014-09-08T01:16:03Z thierrygar: kristof: thx I checked it just to be sure 2014-09-08T01:16:32Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-08T01:16:53Z zRecursive joined #lisp 2014-09-08T01:17:58Z korqio- quit (Ping timeout: 252 seconds) 2014-09-08T01:18:50Z prxq quit (Ping timeout: 276 seconds) 2014-09-08T01:18:52Z kristof quit (Ping timeout: 240 seconds) 2014-09-08T01:19:29Z TDog quit (Ping timeout: 276 seconds) 2014-09-08T01:19:37Z BitPuffin quit (Ping timeout: 260 seconds) 2014-09-08T01:21:41Z henesy joined #lisp 2014-09-08T01:21:46Z Aranshada|W joined #lisp 2014-09-08T01:22:56Z pillton joined #lisp 2014-09-08T01:25:14Z henesy_ joined #lisp 2014-09-08T01:26:00Z henesy_ quit (Client Quit) 2014-09-08T01:30:19Z korqio- joined #lisp 2014-09-08T01:30:50Z CrazyEddy joined #lisp 2014-09-08T01:32:41Z Vivitron quit (Ping timeout: 255 seconds) 2014-09-08T01:34:39Z henesy quit (Ping timeout: 272 seconds) 2014-09-08T01:38:28Z juiko quit (Remote host closed the connection) 2014-09-08T01:38:51Z juiko joined #lisp 2014-09-08T01:41:39Z jusss joined #lisp 2014-09-08T01:42:18Z juiko` joined #lisp 2014-09-08T01:45:06Z henesy joined #lisp 2014-09-08T01:46:09Z Aranshada|W quit (Ping timeout: 264 seconds) 2014-09-08T01:47:54Z nihilatus quit (Quit: Connection closed for inactivity) 2014-09-08T01:48:55Z Aranshada|W joined #lisp 2014-09-08T01:51:44Z wizzo joined #lisp 2014-09-08T01:53:27Z jlongster joined #lisp 2014-09-08T01:57:11Z ndrei quit (Ping timeout: 276 seconds) 2014-09-08T01:58:25Z Aranshada|W quit (Read error: Connection reset by peer) 2014-09-08T01:58:58Z juiko` quit (Read error: Connection reset by peer) 2014-09-08T01:58:59Z juiko quit (Read error: Connection reset by peer) 2014-09-08T02:04:12Z Aranshada|W joined #lisp 2014-09-08T02:06:57Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-08T02:10:36Z zRecursive quit (Remote host closed the connection) 2014-09-08T02:12:02Z drmeiste_ quit (Remote host closed the connection) 2014-09-08T02:14:30Z Clarice joined #lisp 2014-09-08T02:15:42Z Clarice is now known as Crazy 2014-09-08T02:15:48Z Crazy is now known as Clarice 2014-09-08T02:16:00Z Clarice quit (Client Quit) 2014-09-08T02:16:12Z Clarice joined #lisp 2014-09-08T02:16:52Z dnm quit (Ping timeout: 245 seconds) 2014-09-08T02:17:22Z Clarice is now known as kristof 2014-09-08T02:17:55Z drmeister quit (Remote host closed the connection) 2014-09-08T02:18:07Z drmeister joined #lisp 2014-09-08T02:19:49Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T02:21:10Z kristof quit (Quit: WeeChat 1.0) 2014-09-08T02:21:19Z kristof joined #lisp 2014-09-08T02:23:22Z CrazyEddy joined #lisp 2014-09-08T02:27:47Z Aranshada|W quit (Ping timeout: 245 seconds) 2014-09-08T02:30:53Z frkout_ joined #lisp 2014-09-08T02:34:00Z frkout quit (Ping timeout: 246 seconds) 2014-09-08T02:40:09Z stepnem quit (Ping timeout: 264 seconds) 2014-09-08T02:42:52Z phax quit (Quit: Leaving) 2014-09-08T02:43:05Z Vutral joined #lisp 2014-09-08T02:46:21Z juiko joined #lisp 2014-09-08T02:46:25Z Vutral quit (Excess Flood) 2014-09-08T02:46:30Z juiko` joined #lisp 2014-09-08T02:50:47Z dnm joined #lisp 2014-09-08T02:51:02Z Vutral joined #lisp 2014-09-08T02:52:09Z CrazyEddy quit (Ping timeout: 264 seconds) 2014-09-08T02:55:52Z beach joined #lisp 2014-09-08T02:56:00Z beach: Good morning everyone! 2014-09-08T02:56:00Z minion: beach, memo from pjb: instead of optimizing a single function or region, if we started from a specific function call (high level calls in a program), we could analyse the whole algorithm and data flow, and therefore generate (partially evaluated) code that would be more precise and hopefully faster. For example, we could do away with boxing and tagging and use static or auto allocation for all internal values. 2014-09-08T02:56:57Z beach: pjb: Good idea! That's basically what I was thinking as well. 2014-09-08T02:57:09Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T02:57:25Z vanila: Hi beach, good morning 2014-09-08T02:57:42Z beach: vanila: What's up? 2014-09-08T02:58:03Z vanila: I fixed my GC thanks very much for your hint yesterday 2014-09-08T02:58:25Z beach: I forget what hint that was :( 2014-09-08T02:58:39Z vanila: you said that LISP wont sole my segafult :) 2014-09-08T02:58:53Z beach: Heh! OK. 2014-09-08T03:01:05Z vanila: I'm curious what compiler do you work on? 2014-09-08T03:01:26Z beach: minion: Please tell vanila about SICL. 2014-09-08T03:01:27Z minion: vanila: 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 2014-09-08T03:02:34Z zRecursive joined #lisp 2014-09-08T03:04:36Z CrazyEddy joined #lisp 2014-09-08T03:05:10Z bgs100 quit (Quit: bgs100) 2014-09-08T03:07:32Z Vutral joined #lisp 2014-09-08T03:08:03Z vanila: wowwwwww 2014-09-08T03:08:24Z kristof: wow! 2014-09-08T03:12:09Z TDog joined #lisp 2014-09-08T03:14:44Z jusss quit (Read error: Connection reset by peer) 2014-09-08T03:16:50Z frkout_ quit (Remote host closed the connection) 2014-09-08T03:17:31Z jleija quit (Quit: leaving) 2014-09-08T03:17:44Z frkout joined #lisp 2014-09-08T03:17:57Z drmeister quit (Remote host closed the connection) 2014-09-08T03:18:04Z vanila: good luck I would be interested to follow this project 2014-09-08T03:18:31Z drmeister joined #lisp 2014-09-08T03:18:32Z vanila: what can it compile currently or is it doing other parts first 2014-09-08T03:18:46Z snits joined #lisp 2014-09-08T03:19:01Z kristof: Not currently usable, I think 2014-09-08T03:19:12Z beach: Correct. Not usable yet. 2014-09-08T03:19:17Z xyjprc joined #lisp 2014-09-08T03:19:17Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-08T03:19:55Z vanila: good night 2014-09-08T03:20:10Z beach: 'night vanila. 2014-09-08T03:20:25Z vanila quit (Remote host closed the connection) 2014-09-08T03:21:21Z _tca: beach: the backends look nice are they useful for an outside project to use yet? 2014-09-08T03:22:17Z beach: _tca: They are not complete. The x86 assembler is kind of usable, but many instructions are missing. 2014-09-08T03:22:43Z beach: _tca: And the ARM instruction description is usable too. But also incomplete. 2014-09-08T03:23:12Z _tca: thanks, still sounds cool 2014-09-08T03:23:21Z beach: _tca: Thanks. 2014-09-08T03:23:22Z kristof: beach: Did you get any feedback from the SBCL maintainers about your method to speed up generic function dispatch? 2014-09-08T03:24:20Z beach: kristof: No, I don't think so. What kind of feedback would that be? 2014-09-08T03:24:39Z grungier quit (Remote host closed the connection) 2014-09-08T03:25:02Z beach: I remember nyef asked me whether it would be possible to use for SBCL, and I think I basically answered "no, I don't think so". 2014-09-08T03:25:03Z kristof: beach: Something along the lines of "We should do that" 2014-09-08T03:25:12Z kristof: Oh, why would it not be possible? 2014-09-08T03:26:09Z Jesin joined #lisp 2014-09-08T03:26:09Z beach: I don't know the details of SBCL, but I think it would require changing the representation of many objects. 2014-09-08T03:26:20Z kristof: Ah. 2014-09-08T03:26:27Z beach: I might be wrong, of course. 2014-09-08T03:28:22Z mr-foobar quit (Ping timeout: 240 seconds) 2014-09-08T03:29:30Z mr-foobar joined #lisp 2014-09-08T03:29:38Z zRecursive quit (Remote host closed the connection) 2014-09-08T03:34:09Z beach: kristof: Part of the reason I started SICL, as opposed to improving some existing implementation, was that I suspected that my ideas would require modifications to the existing implementation that would be so radical that they would be basically equivalent to a rewrite. 2014-09-08T03:35:11Z beach: kristof: So I suspect that no existing implementation would have maintainers willing to accept (or having the time to do so) my suggested changes. 2014-09-08T03:38:40Z beach: The downside, of course is that SICL will "suck" (in the words of francogrex) for some time to come. 2014-09-08T03:38:43Z xyjprc quit (Remote host closed the connection) 2014-09-08T03:41:07Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-08T03:41:12Z CrazyEddy joined #lisp 2014-09-08T03:41:43Z nug700 joined #lisp 2014-09-08T03:41:44Z gadmyth joined #lisp 2014-09-08T03:46:09Z kristof: beach: I see. And the majority of your ideas exist in some form of documentation on github, right? 2014-09-08T03:47:01Z beach: kristof: Yes, except perhaps the ones I have come up with in the past few weeks. 2014-09-08T03:47:45Z beach: kristof: Also, not systematically organized. Some are in code, some in comments, some in documentation, some in papers. 2014-09-08T03:51:00Z cy: are there any major differences between clojure's macros and common lisp's macros? 2014-09-08T03:53:44Z kristof: No. 2014-09-08T03:54:02Z kristof: It's just a function run between read-time and compile-time. 2014-09-08T03:54:19Z kristof: cy: eval-when stuff doesn't exist in clojure, though. Same with reader macros that are user extensible. 2014-09-08T03:55:30Z cy: kristof: thank you. i've finally gotten around to giving clojure a try, and from what i can tell, it's a pretty decent language 2014-09-08T03:55:52Z kristof: cy: It is. I prefer Common Lisp because I get more paradigm and abstractive flexibility, but Clojure is by all means a "lisp". 2014-09-08T03:56:44Z cy: so far i've only found a couple things that particularly bug me, like function arguments having to be a vector 2014-09-08T03:58:09Z kristof: Well, that's kind of silly to be bugged about :P 2014-09-08T03:58:25Z cy: it only really bugs me because i'm used to using parentheses 2014-09-08T03:58:33Z cy: so i get yelled at by the compiler a lot 2014-09-08T04:02:06Z harish joined #lisp 2014-09-08T04:05:21Z mr-foobar quit (Ping timeout: 264 seconds) 2014-09-08T04:06:15Z mr-foobar joined #lisp 2014-09-08T04:07:39Z kristof: cy: I'm sure you'll get used to it :P 2014-09-08T04:07:46Z kristof: cy: #clojure is an excellent channel 2014-09-08T04:11:33Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-08T04:13:32Z drmeister quit (Remote host closed the connection) 2014-09-08T04:13:46Z drmeister joined #lisp 2014-09-08T04:14:37Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T04:18:26Z Karl_Dscc joined #lisp 2014-09-08T04:20:32Z kcj joined #lisp 2014-09-08T04:21:05Z WeirdEnthusiast quit (Quit: EliteBNC free bnc service - http://elitebnc.org - be a part of the Elite!) 2014-09-08T04:21:32Z Vutral joined #lisp 2014-09-08T04:24:46Z juiko`` joined #lisp 2014-09-08T04:24:52Z Karl_Dscc quit (Remote host closed the connection) 2014-09-08T04:25:35Z CrazyEddy joined #lisp 2014-09-08T04:26:11Z juiko`` quit (Client Quit) 2014-09-08T04:26:24Z juiko` quit (Ping timeout: 255 seconds) 2014-09-08T04:27:03Z juiko quit (Ping timeout: 268 seconds) 2014-09-08T04:30:33Z CrazyEddy quit (Ping timeout: 264 seconds) 2014-09-08T04:31:00Z Vutral quit (Excess Flood) 2014-09-08T04:33:55Z Vutral joined #lisp 2014-09-08T04:34:07Z BitPuffin joined #lisp 2014-09-08T04:35:22Z CrazyEddy joined #lisp 2014-09-08T04:36:53Z a20140907 joined #lisp 2014-09-08T04:40:39Z henesy quit (Remote host closed the connection) 2014-09-08T04:45:50Z zacts joined #lisp 2014-09-08T04:46:29Z a20140907 quit (Quit: Page closed) 2014-09-08T04:49:29Z juiko joined #lisp 2014-09-08T04:53:21Z nell quit (Ping timeout: 264 seconds) 2014-09-08T04:56:08Z WeirdEnthusiast joined #lisp 2014-09-08T04:56:08Z oleo quit (Quit: Verlassend) 2014-09-08T04:58:45Z BitPuffin quit (Ping timeout: 264 seconds) 2014-09-08T05:00:49Z kristof quit (Ping timeout: 260 seconds) 2014-09-08T05:00:58Z slyrus quit (Ping timeout: 268 seconds) 2014-09-08T05:00:59Z kristof joined #lisp 2014-09-08T05:01:23Z kristof is now known as Guest42938 2014-09-08T05:02:29Z Guest42938 quit (Client Quit) 2014-09-08T05:04:39Z alexey joined #lisp 2014-09-08T05:04:50Z eli` joined #lisp 2014-09-08T05:05:02Z slyrus joined #lisp 2014-09-08T05:05:20Z eli quit (Disconnected by services) 2014-09-08T05:05:54Z eli` is now known as eli 2014-09-08T05:05:54Z eli quit (Changing host) 2014-09-08T05:05:54Z eli joined #lisp 2014-09-08T05:06:31Z CrazyEddy quit (Ping timeout: 268 seconds) 2014-09-08T05:08:38Z Vutral quit (Excess Flood) 2014-09-08T05:09:02Z alexey quit (Ping timeout: 245 seconds) 2014-09-08T05:13:10Z juiko quit (Read error: Connection reset by peer) 2014-09-08T05:13:35Z drmeister quit (Remote host closed the connection) 2014-09-08T05:14:15Z drmeister joined #lisp 2014-09-08T05:17:10Z Vutral joined #lisp 2014-09-08T05:18:00Z Vutral quit (Excess Flood) 2014-09-08T05:18:19Z juiko joined #lisp 2014-09-08T05:20:40Z cy quit (Quit: :q!) 2014-09-08T05:20:42Z pranavrc joined #lisp 2014-09-08T05:20:53Z CrazyEddy joined #lisp 2014-09-08T05:24:09Z juiko quit (Ping timeout: 272 seconds) 2014-09-08T05:24:25Z gingerale joined #lisp 2014-09-08T05:28:14Z Vutral joined #lisp 2014-09-08T05:28:15Z drmeiste_ joined #lisp 2014-09-08T05:29:57Z gadmyth quit (Remote host closed the connection) 2014-09-08T05:29:59Z Vutral quit (Excess Flood) 2014-09-08T05:30:49Z mrSpec joined #lisp 2014-09-08T05:37:04Z sz0 joined #lisp 2014-09-08T05:37:18Z Guest21654 quit (Quit: WeeChat 1.1-dev) 2014-09-08T05:37:39Z Soft joined #lisp 2014-09-08T05:37:49Z Soft is now known as Guest4225 2014-09-08T05:40:22Z tvaalen quit (Ping timeout: 240 seconds) 2014-09-08T05:41:07Z pt1 joined #lisp 2014-09-08T05:41:41Z Vutral joined #lisp 2014-09-08T05:42:34Z tvaalen joined #lisp 2014-09-08T05:44:17Z yano joined #lisp 2014-09-08T05:46:13Z Vutral quit (Excess Flood) 2014-09-08T05:47:00Z MoALTz_ quit (Quit: Leaving) 2014-09-08T05:47:16Z Harag joined #lisp 2014-09-08T05:49:08Z pt1 quit (Remote host closed the connection) 2014-09-08T05:50:45Z les quit (Quit: leaving) 2014-09-08T05:51:34Z les joined #lisp 2014-09-08T05:51:34Z les quit (Changing host) 2014-09-08T05:51:34Z les joined #lisp 2014-09-08T05:52:00Z cy joined #lisp 2014-09-08T05:52:25Z pranavrc_ joined #lisp 2014-09-08T05:52:42Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-08T05:54:04Z pranavrc quit (Ping timeout: 252 seconds) 2014-09-08T05:54:10Z Vutral joined #lisp 2014-09-08T05:54:12Z beach left #lisp 2014-09-08T05:55:48Z Guest4225 quit (Quit: WeeChat 1.1-dev) 2014-09-08T05:59:06Z work_op: are there any good irc clients that can be extended with common lisp? 2014-09-08T06:03:34Z Mon_Ouie joined #lisp 2014-09-08T06:03:34Z Mon_Ouie quit (Changing host) 2014-09-08T06:03:34Z Mon_Ouie joined #lisp 2014-09-08T06:06:48Z Shinmera joined #lisp 2014-09-08T06:07:05Z CrazyEddy joined #lisp 2014-09-08T06:08:52Z jlongster quit (Ping timeout: 240 seconds) 2014-09-08T06:09:15Z drmeister quit (Remote host closed the connection) 2014-09-08T06:09:31Z drmeister joined #lisp 2014-09-08T06:12:41Z Ralt quit (Ping timeout: 272 seconds) 2014-09-08T06:12:50Z Soft- joined #lisp 2014-09-08T06:17:21Z tvaalen quit (Ping timeout: 260 seconds) 2014-09-08T06:17:45Z tvaalen joined #lisp 2014-09-08T06:20:30Z Davidbrcz joined #lisp 2014-09-08T06:26:41Z korqio- quit (Ping timeout: 260 seconds) 2014-09-08T06:27:18Z Cymew joined #lisp 2014-09-08T06:30:54Z slyrus: beirc 2014-09-08T06:31:15Z Maurice_TCF joined #lisp 2014-09-08T06:33:29Z pt1 joined #lisp 2014-09-08T06:33:58Z Ralt joined #lisp 2014-09-08T06:35:42Z korqio- joined #lisp 2014-09-08T06:39:23Z resttime: i just had a quick thought 2014-09-08T06:39:35Z resttime: how does one obfuscate compiled lisp code? 2014-09-08T06:40:39Z resttime: for example, obfuscating the code in an image made with save-lisp-and-die 2014-09-08T06:42:35Z resttime: basically to disallow people from searching through the core image to retrieve the code 2014-09-08T06:44:37Z jegaxd26 joined #lisp 2014-09-08T06:45:37Z Shinmera: What if some code retrieves symbols using strings or even user input? Can't obfuscate symbols then. 2014-09-08T06:47:09Z ndrei joined #lisp 2014-09-08T06:47:19Z H4ns: what a terrible thought 2014-09-08T06:47:54Z resttime: can you please explain :D ? 2014-09-08T06:49:25Z Ralt quit (Ping timeout: 272 seconds) 2014-09-08T06:50:13Z mishoo joined #lisp 2014-09-08T06:51:17Z dto joined #lisp 2014-09-08T06:51:38Z mingvs quit (Ping timeout: 276 seconds) 2014-09-08T06:52:13Z dto: is specifying a different :initform value for an inherited slot, not the right way to change what a subclass's default value is for that slot? 2014-09-08T06:53:20Z defaultxr quit (Quit: gnight) 2014-09-08T06:53:21Z theos quit (Read error: Connection reset by peer) 2014-09-08T06:53:50Z resttime: dto: I think it depends on preference 2014-09-08T06:53:50Z theos joined #lisp 2014-09-08T06:53:54Z BitPuffin joined #lisp 2014-09-08T06:54:09Z resttime: :default-initargs works too 2014-09-08T06:55:11Z splittist_ is now known as splittist 2014-09-08T06:55:51Z dto: hmm resttime. thank you. 2014-09-08T06:59:36Z Px12 joined #lisp 2014-09-08T07:03:15Z mingvs joined #lisp 2014-09-08T07:06:50Z Ralt joined #lisp 2014-09-08T07:06:51Z pillton quit (Ping timeout: 252 seconds) 2014-09-08T07:08:28Z dim: gcl 2.6.11 released... 2014-09-08T07:09:01Z pgomes joined #lisp 2014-09-08T07:09:17Z drmeister quit (Remote host closed the connection) 2014-09-08T07:09:31Z jegaxd26` joined #lisp 2014-09-08T07:09:54Z nand1` quit (Remote host closed the connection) 2014-09-08T07:09:56Z drmeister joined #lisp 2014-09-08T07:12:13Z nand1 joined #lisp 2014-09-08T07:12:47Z isoraqathedh quit (Remote host closed the connection) 2014-09-08T07:13:09Z jegaxd26 quit (Ping timeout: 264 seconds) 2014-09-08T07:13:52Z jtza8 joined #lisp 2014-09-08T07:14:07Z isoraqathedh joined #lisp 2014-09-08T07:14:42Z isoraqathedh_d joined #lisp 2014-09-08T07:15:30Z zacts: is on lisp a good first lisp book? it mentions I should already know some lisp already.. 2014-09-08T07:15:40Z Shinmera: It is not. 2014-09-08T07:15:59Z zacts: would it be a good read after I've read practical common lisp? 2014-09-08T07:16:19Z Shinmera: It has some interesting ideas, but I personally would not recommend it as learning material 2014-09-08T07:16:27Z reboant joined #lisp 2014-09-08T07:16:30Z zacts: oh wow 2014-09-08T07:16:36Z reboant quit (Changing host) 2014-09-08T07:16:37Z reboant joined #lisp 2014-09-08T07:16:48Z Shinmera: PCL is probably the best place to start though 2014-09-08T07:16:54Z zacts: ok 2014-09-08T07:16:56Z Shinmera: And after that, just write some programs, read some code. 2014-09-08T07:17:07Z zacts: does PCL teach OOP and CLOS? 2014-09-08T07:17:11Z Shinmera: Yes 2014-09-08T07:17:15Z CrazyEddy quit (Ping timeout: 268 seconds) 2014-09-08T07:17:16Z reboant is now known as CrazyEddy 2014-09-08T07:17:17Z zacts: sweet, thanks 2014-09-08T07:18:29Z varjag joined #lisp 2014-09-08T07:19:01Z yacks quit (Quit: Leaving) 2014-09-08T07:19:49Z Ralt quit (Ping timeout: 272 seconds) 2014-09-08T07:20:44Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-08T07:22:23Z mvilleneuve_ joined #lisp 2014-09-08T07:23:29Z tkhoa2711 joined #lisp 2014-09-08T07:24:01Z drmeiste_ joined #lisp 2014-09-08T07:29:47Z jegaxd26` quit (Ping timeout: 245 seconds) 2014-09-08T07:30:22Z Davidbrcz quit (Ping timeout: 240 seconds) 2014-09-08T07:31:06Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-08T07:32:06Z Jesin quit (Ping timeout: 272 seconds) 2014-09-08T07:32:12Z lemoinem quit (Ping timeout: 246 seconds) 2014-09-08T07:32:33Z yacks joined #lisp 2014-09-08T07:32:53Z Jesin joined #lisp 2014-09-08T07:33:24Z lemoinem joined #lisp 2014-09-08T07:35:01Z Davide joined #lisp 2014-09-08T07:35:41Z shka joined #lisp 2014-09-08T07:35:53Z zophy joined #lisp 2014-09-08T07:37:37Z Px12 quit (Ping timeout: 260 seconds) 2014-09-08T07:38:49Z stux joined #lisp 2014-09-08T07:39:02Z yati joined #lisp 2014-09-08T07:39:12Z alexey joined #lisp 2014-09-08T07:39:21Z ggole joined #lisp 2014-09-08T07:40:27Z Davide is now known as jegaxd26 2014-09-08T07:41:21Z Beetny joined #lisp 2014-09-08T07:41:32Z easye joined #lisp 2014-09-08T07:43:40Z tkhoa2711 quit (Quit: tkhoa2711) 2014-09-08T07:47:21Z bit` quit (Ping timeout: 264 seconds) 2014-09-08T07:51:00Z alexey quit (Quit: Leaving...) 2014-09-08T07:51:54Z ehu joined #lisp 2014-09-08T07:54:05Z angavrilov joined #lisp 2014-09-08T07:55:50Z arenz joined #lisp 2014-09-08T07:57:27Z cods quit (Ping timeout: 255 seconds) 2014-09-08T08:00:05Z Px12 joined #lisp 2014-09-08T08:01:46Z urandom__ joined #lisp 2014-09-08T08:02:52Z bit` joined #lisp 2014-09-08T08:06:24Z gravicappa joined #lisp 2014-09-08T08:11:51Z dto quit (Remote host closed the connection) 2014-09-08T08:14:03Z munksgaard joined #lisp 2014-09-08T08:14:08Z munksgaard left #lisp 2014-09-08T08:14:17Z munksgaard joined #lisp 2014-09-08T08:15:38Z drmeister quit (Remote host closed the connection) 2014-09-08T08:15:54Z drmeister joined #lisp 2014-09-08T08:17:15Z H4ns quit (Remote host closed the connection) 2014-09-08T08:19:10Z Cymew: zacts: If you want a good book about OOP/CLOS I can recommend "Sonya Keene, Object-Oriented Programming in Common Lisp: A Programmer's Guide to CLOS, 1988, Addison-Wesley. ISBN 0-201-17589-4@ 2014-09-08T08:19:27Z Cymew: Hmm. Scratch that @ 2014-09-08T08:19:44Z cods joined #lisp 2014-09-08T08:20:57Z edgar-rft joined #lisp 2014-09-08T08:21:28Z cods quit (Changing host) 2014-09-08T08:21:28Z cods joined #lisp 2014-09-08T08:23:17Z H4ns joined #lisp 2014-09-08T08:25:17Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-08T08:36:57Z nug700 quit (Quit: bye) 2014-09-08T08:37:48Z attila_lendvai joined #lisp 2014-09-08T08:40:11Z mpucci joined #lisp 2014-09-08T08:41:37Z CrazyEddy joined #lisp 2014-09-08T08:47:09Z mpucci quit (Remote host closed the connection) 2014-09-08T08:47:32Z calliostro joined #lisp 2014-09-08T08:59:05Z chu joined #lisp 2014-09-08T09:00:02Z H4ns quit (Remote host closed the connection) 2014-09-08T09:01:08Z dkcl joined #lisp 2014-09-08T09:05:17Z Px12 quit (Ping timeout: 245 seconds) 2014-09-08T09:07:29Z ehu quit (Ping timeout: 276 seconds) 2014-09-08T09:08:21Z Px12 joined #lisp 2014-09-08T09:09:33Z korqio- quit (Ping timeout: 260 seconds) 2014-09-08T09:10:50Z dto joined #lisp 2014-09-08T09:11:07Z dto: how can i test whether a symbol denotes a generic function, as opposed to an ordinary defun? 2014-09-08T09:11:59Z dkcl quit (Remote host closed the connection) 2014-09-08T09:12:40Z Shinmera: (typep (fdefinition symbol) 'standard-generic-function) 2014-09-08T09:12:51Z dto: Shinmera: thank you :) 2014-09-08T09:13:03Z dto: i'm almost finished with my documentation extractor. 2014-09-08T09:13:18Z dto: it spits out org-mode syntax 2014-09-08T09:13:21Z dto: :) 2014-09-08T09:13:34Z Shinmera: dto: You might want to take a look at https://github.com/Shinmera/staple/blob/master/symbols.lisp then 2014-09-08T09:14:41Z dto: i will. thank you for your help Shinmera n 2014-09-08T09:14:45Z dkcl joined #lisp 2014-09-08T09:14:50Z dkcl quit (Changing host) 2014-09-08T09:14:50Z dkcl joined #lisp 2014-09-08T09:15:37Z harish quit (Ping timeout: 260 seconds) 2014-09-08T09:15:39Z drmeister quit (Remote host closed the connection) 2014-09-08T09:15:53Z dto: Shinmera: want to see what i'm working on? i have a video. 2014-09-08T09:16:00Z Shinmera: Sure 2014-09-08T09:16:10Z dto: https://www.youtube.com/watch?v=rgGi-U1u8OI 2014-09-08T09:16:12Z dto: :) 2014-09-08T09:16:15Z drmeister joined #lisp 2014-09-08T09:17:00Z Shinmera: Reminds me a lot of Atari games. 2014-09-08T09:17:18Z dto: that's very intentional :) 2014-09-08T09:17:29Z Shinmera: I assumed so, nice job matching it then 2014-09-08T09:17:45Z dto: hehe 2014-09-08T09:18:09Z dto: the reason i'm working on doc extractors is so that i can finish up all the docstrings and release a nice HTML documentation 2014-09-08T09:18:14Z Shinmera: dto: btw the file I linked to is from my Staple project, which does documentation generation as well, although with HTML as output. 2014-09-08T09:18:38Z Shinmera: Should be in quicklisp 2014-09-08T09:19:16Z dto: thanks Shinmera . i will look. i'm sure it's better than what i'm doing :) 2014-09-08T09:19:24Z dto: but for now, to write the docstrings. 2014-09-08T09:19:26Z Shinmera: Idunno about that 2014-09-08T09:21:34Z dto: this is what it generates thus far. nothing fancy. http://blocky.io/xelf-manual.html 2014-09-08T09:21:36Z H4ns joined #lisp 2014-09-08T09:21:51Z dto: my problem is that a lot of docs are missing 2014-09-08T09:21:52Z dto: :) 2014-09-08T09:22:34Z Shinmera: Staple's output is pretty much entirely user-dependant. 2014-09-08T09:23:01Z Shinmera: Or rather, you can change it to whatever you want by writing your own template https://github.com/Shinmera/staple/blob/master/default.ctml 2014-09-08T09:26:24Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-09-08T09:26:44Z nihilatus joined #lisp 2014-09-08T09:28:14Z munksgaard quit (Quit: leaving) 2014-09-08T09:30:03Z shka: dto: quite cool video 2014-09-08T09:30:08Z dto: hey thanks shka :) 2014-09-08T09:30:49Z dkcl quit (Remote host closed the connection) 2014-09-08T09:33:00Z stepnem joined #lisp 2014-09-08T09:33:11Z pjb: Try to ask an unboxed unchecked array to the USS Enterprise (NCD-1701-D) computer… 2014-09-08T09:33:38Z dkcl joined #lisp 2014-09-08T09:34:27Z kcj quit (Read error: Connection reset by peer) 2014-09-08T09:34:31Z DGASAU joined #lisp 2014-09-08T09:40:44Z karupa is now known as zz_karupa 2014-09-08T09:40:47Z dkcl quit (Remote host closed the connection) 2014-09-08T09:44:37Z attila_lendvai quit (Quit: Leaving.) 2014-09-08T09:45:08Z Shinmera: Does anyone know where stassats went off to? I haven't seen him around lately 2014-09-08T09:46:13Z zacharias joined #lisp 2014-09-08T09:46:46Z pjb: GCL 2.6.11 is released! 2014-09-08T09:47:34Z wasamasa: Shinmera: is staple the one that had issues with <>? 2014-09-08T09:48:03Z Shinmera: wasamasa: Staple itself has no issues with <>, but 3BMD has issues with <> within ``` foo ``` 2014-09-08T09:49:08Z Shinmera: Strangely enough it works if you instead use ```commonlisp foo ``` (or some other language) 2014-09-08T09:49:17Z wasamasa: hum 2014-09-08T09:49:18Z Shinmera: But that messes with staple's automated documentation linking 2014-09-08T09:49:43Z Shinmera: I should probably file a bug report about that, but I haven't gotten around to extensively testing it yet 2014-09-08T09:50:03Z fe[nl]ix quit (Remote host closed the connection) 2014-09-08T09:50:03Z Blkt_ quit (Remote host closed the connection) 2014-09-08T09:50:11Z Blkt joined #lisp 2014-09-08T09:50:13Z fe[nl]ix joined #lisp 2014-09-08T09:54:14Z rszeno joined #lisp 2014-09-08T09:56:13Z chu quit (Ping timeout: 260 seconds) 2014-09-08T09:56:42Z Shinmera: If you don't write your readme's in markdown you'll be just fine though :) 2014-09-08T09:56:42Z dim: pjb: have you been using GCL before for serious projects? 2014-09-08T09:57:59Z hlavaty left #lisp 2014-09-08T09:58:05Z munksgaard joined #lisp 2014-09-08T09:58:35Z hlavaty joined #lisp 2014-09-08T10:00:04Z hlavaty: dim: thanks for the report, i'll have a look at the xls file hopefully soon and let you know 2014-09-08T10:00:17Z dim: hlavaty: cool! thanks ;-) 2014-09-08T10:02:22Z pjb: dim: I've tried it. It was missing some features. But since it's "actively maintained" I guess it will become more and more conforming. 2014-09-08T10:02:48Z pjb: dim: instead, I've used ecl, which was more complete. 2014-09-08T10:04:17Z ustunozgur joined #lisp 2014-09-08T10:06:57Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T10:07:35Z dto: my mind is numbing from writing so many docstrings 2014-09-08T10:07:48Z dto: i'm halfway thru the alphabet 2014-09-08T10:08:08Z pjb: (defun xaionr4en () "Just read the code below!" …) 2014-09-08T10:09:20Z Shinmera: (setf (documentation 'foo 'function) (princ-to-string (function-lambda-expression 'foo))) 2014-09-08T10:09:35Z Shinmera: *#' 2014-09-08T10:09:42Z pjb: :-) 2014-09-08T10:09:48Z dim: pjb: thanks for the answer, that's useful! 2014-09-08T10:13:43Z pt1_ joined #lisp 2014-09-08T10:14:41Z drmeister quit (Remote host closed the connection) 2014-09-08T10:14:54Z drmeister joined #lisp 2014-09-08T10:16:57Z pt1 quit (Ping timeout: 245 seconds) 2014-09-08T10:17:01Z ggole quit 2014-09-08T10:17:24Z ggole joined #lisp 2014-09-08T10:20:39Z dto quit (Remote host closed the connection) 2014-09-08T10:22:39Z Nizumzen joined #lisp 2014-09-08T10:25:41Z alchemis7 left #lisp 2014-09-08T10:25:48Z alchemis7 joined #lisp 2014-09-08T10:26:43Z Puffin joined #lisp 2014-09-08T10:27:39Z cy quit (Quit: need sleep) 2014-09-08T10:30:19Z harish joined #lisp 2014-09-08T10:31:14Z zacts: Cymew: thanx 2014-09-08T10:35:32Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-08T10:36:00Z zacts: is GCL the gnu common lisp? 2014-09-08T10:36:06Z zacts: it used to be called clisp right? 2014-09-08T10:37:24Z Shinmera: No 2014-09-08T10:37:41Z Shinmera: Clisp is Clisp 2014-09-08T10:38:08Z zacts: eek, ok. I think the cliki.net explains this actually.. 2014-09-08T10:38:12Z zacts: sorry 2014-09-08T10:38:22Z Xach: GNU CLISP is distinct from GNU Common Lisp, aka GCL. 2014-09-08T10:38:38Z zacts: ah ok 2014-09-08T10:38:41Z wasamasa: why are there two? 2014-09-08T10:38:51Z wasamasa: I mean, two GNU-certified common lisp implementations 2014-09-08T10:39:18Z H4ns: there is gnu certification? 2014-09-08T10:39:26Z H4ns: that sounds awesome! 2014-09-08T10:40:01Z l3thal quit (Changing host) 2014-09-08T10:40:01Z l3thal joined #lisp 2014-09-08T10:40:09Z zvrba joined #lisp 2014-09-08T10:40:12Z CrazyEddy quit (Ping timeout: 272 seconds) 2014-09-08T10:40:31Z Xach: wasamasa: "gnu" doesn't really mean anything, when attached to a project, aside from licensing. 2014-09-08T10:40:42Z rszeno clips server is down 2014-09-08T10:40:44Z ustunozgur quit (Remote host closed the connection) 2014-09-08T10:41:02Z zacts: Xach: even then it doesn't mean anything. iirc, gnuplot isn't in any way related to the gnu project or license 2014-09-08T10:41:15Z wasamasa: Xach: hmm, so GCL is the gnu-certified one 2014-09-08T10:41:34Z Xach: wasamasa: I am not familiar with the term "gnu-certified". What does it mean? 2014-09-08T10:41:53Z H4ns: wasamasa: there is no such thing. 2014-09-08T10:41:54Z Xach: zacts: I think that's an exceptional case, though. 2014-09-08T10:42:30Z zacts: ah ok 2014-09-08T10:42:31Z wasamasa: Xach: I'm refering to the "This project is part of the GNU project." 2014-09-08T10:43:40Z Xach: wasamasa: That is like saying "This person is a member of the national geographic society" 2014-09-08T10:43:51Z Xach: You don't have to do much for it to happen. 2014-09-08T10:44:25Z wasamasa: hmmk 2014-09-08T10:44:32Z Xach: It doesn't imply quality or suitability or much of anything else; certainly not that there is only one project with the same aim in the GNU project. 2014-09-08T10:45:34Z rszeno afaik the only gnu project is hurd 2014-09-08T10:46:08Z wasamasa: and emacs! 2014-09-08T10:46:37Z TomRS`` joined #lisp 2014-09-08T10:46:59Z rszeno: aha, ok, the fundation, :) 2014-09-08T10:47:00Z shka: gnuplot is not gnu 2014-09-08T10:47:09Z shka: and has nothing to do with gnu 2014-09-08T10:47:23Z shka: it is just named gnuplot for some obscure reason 2014-09-08T10:47:43Z rszeno: gnuplot was not hosted of savanah? 2014-09-08T10:47:59Z TomRS``: how can I test efficiently if a list of lists contains an element? e.g. if 'a is contained in '((a 1) (b 2)) ? 2014-09-08T10:48:21Z H4ns: TomRS``: you asked that question already and got answers 2014-09-08T10:48:29Z H4ns: TomRS``: what has changed? 2014-09-08T10:48:54Z TomRS``: H4ns: I seem to have a bad memory... sorry.. will look through history 2014-09-08T10:49:06Z shka: use find 2014-09-08T10:49:09Z alpha-: gcc is not gnu project? 2014-09-08T10:49:13Z shka: it is good :) 2014-09-08T10:49:21Z shka: alpha-: gcc is very gnu 2014-09-08T10:49:38Z TomRS``: shka: thanks! 2014-09-08T10:49:48Z alpha-: also gdb 2014-09-08T10:49:52Z shka: and many others 2014-09-08T10:49:57Z alpha-: gnash 2014-09-08T10:49:58Z shka: for instance, GNOME 2014-09-08T10:50:02Z alpha-: <_< 2014-09-08T10:50:15Z alpha-: pretty sure gnome isn't a gnu project 2014-09-08T10:51:21Z jegaxd26 quit (Ping timeout: 246 seconds) 2014-09-08T10:51:46Z Xach: the GNU Network Object Model Environment 2014-09-08T10:52:08Z Xach: But anyway GCL and GNU CLISP are two distinct things that exist. 2014-09-08T10:52:44Z pt1_ quit (Remote host closed the connection) 2014-09-08T10:53:02Z CrazyEddy joined #lisp 2014-09-08T10:53:16Z hlavaty quit (Remote host closed the connection) 2014-09-08T10:53:18Z dlowe: clisp didn't start as GNU 2014-09-08T10:55:34Z H4ns: it is a nice example of gpl virality. 2014-09-08T10:56:49Z uber joined #lisp 2014-09-08T10:59:47Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-08T11:03:13Z farhaven joined #lisp 2014-09-08T11:03:30Z dto joined #lisp 2014-09-08T11:04:11Z pt1 joined #lisp 2014-09-08T11:04:52Z theBlackDragon quit (Ping timeout: 240 seconds) 2014-09-08T11:05:24Z dlowe: well, they didn't *have* to insist on GNU readline 2014-09-08T11:07:06Z dim: GNU readline is kind of a shame of GPL virality :( 2014-09-08T11:07:21Z TomRS``` joined #lisp 2014-09-08T11:07:47Z theBlackDragon joined #lisp 2014-09-08T11:08:52Z TomRS```` joined #lisp 2014-09-08T11:09:25Z TomRS````: Am I being kicked? Don't know why erc is reconnecting all the time 2014-09-08T11:09:39Z ggole: Hmm, slime's inspector hangs on (some) circular structures 2014-09-08T11:09:57Z TomRS`` quit (Ping timeout: 272 seconds) 2014-09-08T11:11:49Z TomRS``` quit (Ping timeout: 260 seconds) 2014-09-08T11:11:50Z phadthai: TomRS````: you seem to be connected twice, after a third just ping timeout 2014-09-08T11:11:58Z phadthai: ah there's the other one 2014-09-08T11:12:14Z phadthai: unresponsive client or network failure 2014-09-08T11:13:27Z CrazyEddy joined #lisp 2014-09-08T11:13:57Z TomRS```` quit (Ping timeout: 245 seconds) 2014-09-08T11:14:43Z drmeister quit (Remote host closed the connection) 2014-09-08T11:15:03Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-08T11:15:19Z drmeister joined #lisp 2014-09-08T11:15:23Z dmiles_afk joined #lisp 2014-09-08T11:16:37Z jegaxd26 joined #lisp 2014-09-08T11:16:40Z dto quit (Remote host closed the connection) 2014-09-08T11:18:02Z dkcl joined #lisp 2014-09-08T11:23:05Z chitofan joined #lisp 2014-09-08T11:28:14Z rszeno quit (Quit: Leaving.) 2014-09-08T11:31:36Z henesy joined #lisp 2014-09-08T11:32:08Z sz0 quit 2014-09-08T11:35:26Z EvW joined #lisp 2014-09-08T11:40:43Z atgreen quit (Remote host closed the connection) 2014-09-08T11:43:17Z henesy quit (Ping timeout: 272 seconds) 2014-09-08T11:46:02Z ustunozgur joined #lisp 2014-09-08T11:46:19Z zacts: has anyone attempted to write a BSD or Linux device driver in Common Lisp? 2014-09-08T11:47:24Z dkcl: I wouldn't like to run the mailing list for such a project 2014-09-08T11:47:54Z nihilatus quit (Quit: Connection closed for inactivity) 2014-09-08T11:51:21Z ARM9 joined #lisp 2014-09-08T11:51:26Z araujo joined #lisp 2014-09-08T11:53:02Z zacharias quit (Ping timeout: 272 seconds) 2014-09-08T11:55:34Z Puffin quit (Remote host closed the connection) 2014-09-08T11:56:29Z Cymew: zacts: For bare metal lisp stuff, take a look at Movitz 2014-09-08T11:57:03Z vanila joined #lisp 2014-09-08T12:01:06Z _paul0 quit (Quit: Saindo) 2014-09-08T12:02:45Z phadthai: zacts: it's possible to use some Lua code in a NetBSD kernel, and possible to generate C code from some CL compilers (which might need modifications), but I know of no Lisp-in-kernel project, other than movitz, which also with modifications might allow to generate code you want (there are other challenges to integrating such code in a unix-like kernel; you'll have to deal with interfacing with C code, and the lack of (or implementation of) a GC) 2014-09-08T12:03:46Z Sgeo quit (Read error: Connection reset by peer) 2014-09-08T12:04:12Z phadthai: I find C reasonable for such low level code personally, especially if the rest of the kernel is C (and if necessary, one can develop and use C libraries with bound checking, stack smashing protection, etc) 2014-09-08T12:04:57Z phadthai: in the kernel, stack usage has to be kept at a minimum too 2014-09-08T12:07:08Z wasamasa: I doubt the guys well versed in this would reach for something else than C 2014-09-08T12:07:11Z ehu joined #lisp 2014-09-08T12:07:22Z wasamasa: but I've seen a scheme kernel module that gives you a device to use as a repl 2014-09-08T12:07:24Z phadthai: ah and there's also the possibility for a kernel component to communicate with a more complex and elegant userland component 2014-09-08T12:07:40Z wasamasa: perhaps someone insane enough will do the same with ECL :P 2014-09-08T12:07:51Z Krystof: Xach: do you have a contact e-mail address for thephoeron (let-over-lambda "production code" maintainer)? 2014-09-08T12:08:04Z dim: the main area where I need advanced operators/control-flow nowadays are to implement proper error handling, and I think CL is the best thing I've ever tried on that front (condition system, restarts); I guess having some kind of a condition system in C or in the kernel would go a long way to make it "reasonable" for any use, really 2014-09-08T12:12:41Z drmeister quit (Remote host closed the connection) 2014-09-08T12:12:54Z drmeister joined #lisp 2014-09-08T12:15:53Z przl joined #lisp 2014-09-08T12:16:06Z isoraqathedh_d quit (Remote host closed the connection) 2014-09-08T12:16:27Z Xach: Krystof: not offhand. i can check git log though. 2014-09-08T12:16:52Z munksgaard quit (Ping timeout: 240 seconds) 2014-09-08T12:19:12Z dkcl quit (Quit: WeeChat 0.4.3) 2014-09-08T12:19:31Z dkcl joined #lisp 2014-09-08T12:24:02Z yeticry quit (Ping timeout: 245 seconds) 2014-09-08T12:26:24Z yeticry joined #lisp 2014-09-08T12:27:08Z Nizumzen joined #lisp 2014-09-08T12:27:47Z sg|polyneikes joined #lisp 2014-09-08T12:30:36Z sg|polyneikes quit (Client Quit) 2014-09-08T12:32:08Z malglim joined #lisp 2014-09-08T12:33:47Z pranavrc_ quit (Remote host closed the connection) 2014-09-08T12:34:04Z pranavrc joined #lisp 2014-09-08T12:34:04Z pranavrc quit (Changing host) 2014-09-08T12:34:04Z pranavrc joined #lisp 2014-09-08T12:37:10Z zacharias joined #lisp 2014-09-08T12:37:43Z Amaan joined #lisp 2014-09-08T12:39:12Z dkcl quit (Remote host closed the connection) 2014-09-08T12:39:44Z dkcl joined #lisp 2014-09-08T12:39:50Z dkcl quit (Changing host) 2014-09-08T12:39:50Z dkcl joined #lisp 2014-09-08T12:42:40Z DataLinkDroid joined #lisp 2014-09-08T12:42:54Z CrazyEddy quit (Ping timeout: 252 seconds) 2014-09-08T12:43:02Z henesy joined #lisp 2014-09-08T12:43:13Z munksgaard joined #lisp 2014-09-08T12:43:14Z DataLinkDroid quit (Client Quit) 2014-09-08T12:46:49Z Vutral joined #lisp 2014-09-08T12:47:29Z dkcl quit (Remote host closed the connection) 2014-09-08T12:53:49Z francogrex joined #lisp 2014-09-08T12:53:56Z francogrex: msg? 2014-09-08T12:55:25Z stanislav_ quit (Quit: Konversation terminated!) 2014-09-08T12:55:45Z Beetny quit (Ping timeout: 264 seconds) 2014-09-08T12:56:21Z henesy quit (Ping timeout: 264 seconds) 2014-09-08T12:56:30Z francogrex quit (Client Quit) 2014-09-08T12:56:49Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T12:57:52Z CrazyEddy joined #lisp 2014-09-08T12:58:48Z eudoxia joined #lisp 2014-09-08T13:01:10Z yati quit (Remote host closed the connection) 2014-09-08T13:01:10Z sroy joined #lisp 2014-09-08T13:04:16Z wheelsucker quit (Quit: Client Quit) 2014-09-08T13:05:43Z eudoxia_ joined #lisp 2014-09-08T13:05:43Z eudoxia quit (Read error: Connection reset by peer) 2014-09-08T13:08:53Z gadmyth joined #lisp 2014-09-08T13:09:53Z eudoxia_ quit (Client Quit) 2014-09-08T13:11:55Z Longlius quit (Remote host closed the connection) 2014-09-08T13:12:39Z eudoxia joined #lisp 2014-09-08T13:12:43Z drmeister quit (Remote host closed the connection) 2014-09-08T13:13:19Z drmeister joined #lisp 2014-09-08T13:20:00Z Cromulent joined #lisp 2014-09-08T13:22:43Z huza joined #lisp 2014-09-08T13:23:57Z Nizumzen quit (Ping timeout: 252 seconds) 2014-09-08T13:24:21Z gale joined #lisp 2014-09-08T13:25:52Z zeitue quit (Quit: Leaving) 2014-09-08T13:26:07Z Cromulent quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-08T13:26:32Z gingerale quit (Ping timeout: 252 seconds) 2014-09-08T13:26:32Z gale is now known as gingerale 2014-09-08T13:29:17Z oleo joined #lisp 2014-09-08T13:33:19Z huza quit (Quit: WeeChat 0.3.8) 2014-09-08T13:34:01Z LiamH joined #lisp 2014-09-08T13:34:44Z ARM9 quit (Quit: swi 0x06) 2014-09-08T13:37:23Z Soft- is now known as Soft 2014-09-08T13:37:25Z Soft quit (Changing host) 2014-09-08T13:37:25Z Soft joined #lisp 2014-09-08T13:39:07Z Soft quit (Quit: WeeChat 1.1-dev) 2014-09-08T13:39:50Z TDog quit (Ping timeout: 276 seconds) 2014-09-08T13:39:59Z Soft joined #lisp 2014-09-08T13:41:24Z fortitude joined #lisp 2014-09-08T13:42:22Z pranavrc quit 2014-09-08T13:42:22Z DGASAU: phadthai: theoretically, there should be some use for pud(4). 2014-09-08T13:42:51Z drmeiste_ joined #lisp 2014-09-08T13:43:05Z korqio quit (Ping timeout: 276 seconds) 2014-09-08T13:43:06Z hiyosi quit (Quit: WeeChat 1.0) 2014-09-08T13:46:00Z phadthai: DGASAU: true 2014-09-08T13:46:14Z typhonic joined #lisp 2014-09-08T13:46:19Z phadthai: zacts: see above, related to your question (that's NetBSD specific, though) 2014-09-08T13:46:44Z korqio joined #lisp 2014-09-08T13:46:49Z ejbs joined #lisp 2014-09-08T13:47:07Z ejbs: Do you ever find yourself thinking "I wish that Lisp had a library for X"? If so, what is X? 2014-09-08T13:47:18Z AeroNotix: filtering stupid irc questions 2014-09-08T13:47:24Z AeroNotix: Joke :) 2014-09-08T13:47:39Z Xach: ejbs: Lately when I have had that feeling, I just express it on IRC and Shinmera makes it for me 2014-09-08T13:47:45Z Xach: (or on twitter) 2014-09-08T13:47:45Z eudoxia: hah 2014-09-08T13:47:54Z drmeiste_ quit (Remote host closed the connection) 2014-09-08T13:48:17Z ThePhoeron: Krystof: my email address is in the asdf file 2014-09-08T13:48:26Z Shinmera: I'm not sure how long I can keep up with that, but I'll try my best to satisfy the hungry lispers. 2014-09-08T13:48:40Z Xach: ejbs: I wish the Amazon AWS suite was fully supported by a CL library. I think it could be done with one overarching library for auth and API interaction and sub-libraries with a domain-specific set of macros to define individual service APIs 2014-09-08T13:48:42Z ejbs: Xach: Haha. AeroNotix: :), I'm mostly asking because I don't really perceive CL to have that large a lack of well-documented libs for the most common use cases. 2014-09-08T13:49:02Z AeroNotix: ejbs: I agree with that sentiment 2014-09-08T13:49:07Z eudoxia: common lisp actually has a good ecosystem 2014-09-08T13:49:13Z Guest49966 is now known as AndroidShoutapop 2014-09-08T13:49:21Z AndroidShoutapop quit (Changing host) 2014-09-08T13:49:21Z AndroidShoutapop joined #lisp 2014-09-08T13:49:26Z eudoxia: the perceived lack of libraries is, well... perceived 2014-09-08T13:49:41Z AeroNotix: I think a lot of is is that in the Before Time there was not quicklisp 2014-09-08T13:49:45Z Shinmera: One thing that changed drastically in my attitude after coming to CL is that I longer shy away from writing my own libraries for things because it's usually not that much of a problem. 2014-09-08T13:49:47Z Xach: I think it's real. There are good libraries for many purposes but it falls short of what's available with other environments. 2014-09-08T13:49:59Z Shinmera: Back in Java world I always spent days searching for good libs first. 2014-09-08T13:49:59Z wasamasa: eudoxia: and you're hacking on your own lisp implementation instead of contributing libraries! 2014-09-08T13:50:08Z Krystof: ThePhoeron: thanks, I found it in the end, and sent you mail 2014-09-08T13:50:20Z Adlai: ejbs: concurrency the way i imagine it in my head 2014-09-08T13:50:27Z Xach: It's also a little hard to find libraries. I think a better search system for quickdocs.org could help. 2014-09-08T13:50:35Z Adlai: that said, i'm not sure such a thing exists anywhere yet, so i'm still looking at the existing implementations 2014-09-08T13:50:38Z eudoxia: wasamasa: well excuse me i have contributed plenty of libraries, and there are plenty more in the pipeline 2014-09-08T13:50:44Z Shinmera: Xach: That is definitely an issue. 2014-09-08T13:50:52Z Xach: It could really use good stemming of some sort. I was looking for "date parsing" libraries and because I didn't get the exact right variation of "parse" in my search term I missed a useful one. 2014-09-08T13:51:06Z ejbs: Xach: Yeah, I've been working a bit on the Current Recommended Libraries section but it's not nearly complete 2014-09-08T13:51:44Z AeroNotix: it'd be good if the download stats were taken from Quicklisp's download stats 2014-09-08T13:52:05Z eudoxia: i was meaning to ask Xach for just that 2014-09-08T13:52:06Z Xach: I have many months worth of download logs to process. 2014-09-08T13:52:11Z eudoxia: actual S3 download stats 2014-09-08T13:52:18Z AeroNotix: yeah 2014-09-08T13:52:39Z eudoxia: it's a useful metric because it's easy to inflate the numbers and mislead other coders 2014-09-08T13:53:12Z eudoxia wrings hands, conspirationally 2014-09-08T13:53:33Z Xach: S3 download stats can be inflated and distorted too. just (ql:quickload "...") (ql:uninstall "...") in a loop. 2014-09-08T13:54:04Z Xach: That is an extreme example, but setting up a new quicklisp install has the same effect. Or provisioning a network install, or anything else like that. 2014-09-08T13:54:18Z AeroNotix: that's the same for most download stats 2014-09-08T13:54:24Z Xach: They are at best rough numbers of uncertain value 2014-09-08T13:54:37Z Xach: I still want to process and share them in some way though. 2014-09-08T13:54:41Z eudoxia: or when i vagrant destroy -f; vagrant up one of my CL virtual machines and it installs everything again 2014-09-08T13:54:45Z ThePhoeron: Krystof: yes, I'm reviewing it now. thanks! 2014-09-08T13:54:52Z knob joined #lisp 2014-09-08T13:57:09Z zacharias quit (Ping timeout: 272 seconds) 2014-09-08T13:57:50Z shka quit (Read error: Connection reset by peer) 2014-09-08T14:00:39Z eudoxia quit (Quit: Lost terminal) 2014-09-08T14:05:21Z splittist: If we can't measure what we want, we must learn to want what we can measure. 2014-09-08T14:05:50Z jlongster joined #lisp 2014-09-08T14:10:02Z Cymew: I think we talked about the lack of a solid and well documented solution for SSL last week. 2014-09-08T14:10:24Z Cymew: Maybe that's a question of looking in the right places as well 2014-09-08T14:10:48Z Xach: oh yeah! i'd like to have good ssl networking in the runtimes of all lisps. 2014-09-08T14:11:08Z Xach: i thought lispworks had it, but i checked their docs and you still seem to have to install an ssl dll to use it. but maybe i misread the docs. 2014-09-08T14:11:56Z drmeister quit (Remote host closed the connection) 2014-09-08T14:12:11Z drmeister joined #lisp 2014-09-08T14:12:42Z vaporatorius joined #lisp 2014-09-08T14:13:11Z chitofan: clhs let 2014-09-08T14:13:11Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_let_l.htm 2014-09-08T14:17:31Z Cymew: Considering the mess surrounding openSSL, maybe we're not worse off than the rest of the universe, though. A wrapper lib for OpenBSD's new fork would b eneat, though. 2014-09-08T14:18:04Z Cymew thinks he is way to fond of "though" 2014-09-08T14:18:14Z przl quit (Ping timeout: 252 seconds) 2014-09-08T14:20:40Z chitofan: if you have a flet and let 2014-09-08T14:20:45Z chitofan: in a single function 2014-09-08T14:20:57Z chitofan: does it matter which you place first? 2014-09-08T14:21:27Z chitofan: clhs labels 2014-09-08T14:21:28Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_flet_.htm 2014-09-08T14:21:52Z Xach: chitofan: yes. 2014-09-08T14:22:11Z Xach: chitofan: but only if one references the other. the one that is referenced must come first. 2014-09-08T14:22:32Z chitofan: ok, thanks :) 2014-09-08T14:23:40Z eudoxia joined #lisp 2014-09-08T14:23:57Z Px12 quit (Ping timeout: 245 seconds) 2014-09-08T14:25:31Z duggiefresh joined #lisp 2014-09-08T14:26:00Z Px12 joined #lisp 2014-09-08T14:26:44Z Px12 quit (Max SendQ exceeded) 2014-09-08T14:27:33Z przl joined #lisp 2014-09-08T14:27:57Z yakccd joined #lisp 2014-09-08T14:30:15Z Px12 joined #lisp 2014-09-08T14:33:26Z lagging_troll quit (Remote host closed the connection) 2014-09-08T14:33:58Z chitofan quit (Quit: Page closed) 2014-09-08T14:35:23Z Px12 quit (Ping timeout: 240 seconds) 2014-09-08T14:38:54Z swflint joined #lisp 2014-09-08T14:40:06Z dlowe: yes, with the openssl debacles, rolling your own seems like a less risky venture. 2014-09-08T14:41:10Z dlowe: The security situation on the Internet is nicely ecological. An extremely common library is hardened against most attacks, but when a vulnerability is found, everyone is compromised. 2014-09-08T14:41:22Z Xach: "nicely" 2014-09-08T14:41:34Z chitofan joined #lisp 2014-09-08T14:41:53Z dlowe: While if you use an unpopular library, you are more vulnerable to a targeted attack, but you don't tend to have epidemics. 2014-09-08T14:42:19Z dlowe: "nicely" meaning "neatly," not "fortunately" 2014-09-08T14:45:11Z chitofan: if i have a list of lists, how do i use mapcar to find items inside the nested lists? 2014-09-08T14:45:44Z dlowe: chitofan: you don't use mapcar to find things 2014-09-08T14:45:45Z Xach: mapcar is not the right tool for that job. 2014-09-08T14:46:06Z chitofan: hm.. but i wanted to search all the lists for a specific item 2014-09-08T14:46:34Z Shinmera: find+member 2014-09-08T14:47:12Z drmeiste_ joined #lisp 2014-09-08T14:47:19Z splittist: chitofan: do you want to count the occurrences, build a list from them, extract the first list that contains the item...? 2014-09-08T14:48:05Z rme joined #lisp 2014-09-08T14:48:08Z chitofan: build a list to record the index of each of these items 2014-09-08T14:48:40Z Xach: the plot thickens 2014-09-08T14:49:20Z dlowe: so use position to find the index, then mapcar to build the list 2014-09-08T14:49:56Z capitaomorte quit (Quit: ZNC - http://znc.sourceforge.net) 2014-09-08T14:49:56Z luis quit (Quit: ZNC - http://znc.sourceforge.net) 2014-09-08T14:50:06Z chitofan: what if it's a nested list? 2014-09-08T14:50:18Z chitofan: is there another way other than using recursion to build the index one list at a time? 2014-09-08T14:50:32Z splittist: chitofan: is the nesting arbitrary, or one level deep? 2014-09-08T14:50:39Z chitofan: one level deep 2014-09-08T14:51:13Z Adlai: has anybody found themselves overusing (reduce 'slot-value '(some nested access) :initial-value *global-thingy*) ? 2014-09-08T14:51:42Z Adlai wonders what this symptom says about his design problems 2014-09-08T14:52:10Z Shinmera: I have used reduce exactly once 2014-09-08T14:53:10Z Xach: Adlai: I think that (not exactly that, but something similar) can happen sometimes when the data structures are pretty ad hoc and not abstracted and named. It's just a soup of slots. 2014-09-08T14:53:11Z dlowe: I often have an inner conflict on here about solving someone's problem and urging them to figure it out on their own. 2014-09-08T14:53:14Z eudoxia: i think i used reduce+concatenate string once 2014-09-08T14:53:42Z Shinmera: dlowe: Same 2014-09-08T14:53:44Z Xach: Adlai: reminds me a little bit of using (aref (car (cdr (assoc ...)))) chains directly. 2014-09-08T14:53:47Z Adlai: there are a bunch of abstractions, they're just nested within eachother 2014-09-08T14:54:23Z Adlai: these are statements i use at the repl or in one unfixed wart 2014-09-08T14:54:41Z chitofan: dlowe: i could solve the problem with recursion, but i was wondering if there was another way i could do it 2014-09-08T14:54:41Z Adlai: most of the code doesn't deal with objects that aren't directly accessible 2014-09-08T14:54:47Z yrk joined #lisp 2014-09-08T14:54:50Z Xach: Adlai: ah 2014-09-08T14:55:31Z dlowe: chitofan: (mapcar (lambda (list) (position item list)) lists) will do what I think you want. 2014-09-08T14:55:31Z yrk quit (Changing host) 2014-09-08T14:55:32Z yrk joined #lisp 2014-09-08T14:55:40Z capitaomorte joined #lisp 2014-09-08T14:56:10Z luis joined #lisp 2014-09-08T14:56:23Z dkcl joined #lisp 2014-09-08T14:57:50Z hitecnologys joined #lisp 2014-09-08T14:58:26Z momo-reina joined #lisp 2014-09-08T14:58:51Z momo-reina quit (Remote host closed the connection) 2014-09-08T15:01:24Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-08T15:02:23Z gravicappa quit (Ping timeout: 276 seconds) 2014-09-08T15:03:28Z xebd` ... . o O ( "Slot soup"... gives me the idea that an alphabet-soup manufacturer should add certain punctuation, including plenty of parens, as a "Lisp edition". ) 2014-09-08T15:04:37Z Adlai: you don't even need parens if the magnets are strong enough to rely upon significant fridgespace and indentation 2014-09-08T15:07:25Z calliostro quit (Remote host closed the connection) 2014-09-08T15:09:52Z Maurice_TCF quit (Ping timeout: 240 seconds) 2014-09-08T15:10:01Z cy joined #lisp 2014-09-08T15:11:59Z drmeister quit (Remote host closed the connection) 2014-09-08T15:12:37Z drmeister joined #lisp 2014-09-08T15:12:56Z strg joined #lisp 2014-09-08T15:13:18Z nyef joined #lisp 2014-09-08T15:13:29Z nyef: G'morning all. 2014-09-08T15:13:46Z oleo: morning 2014-09-08T15:15:09Z ustunozgur quit (Remote host closed the connection) 2014-09-08T15:15:45Z ustunozgur joined #lisp 2014-09-08T15:17:12Z dkcl quit (Remote host closed the connection) 2014-09-08T15:18:15Z Vutral joined #lisp 2014-09-08T15:20:31Z TDog joined #lisp 2014-09-08T15:22:34Z H4ns: loke: ping 2014-09-08T15:22:53Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T15:26:17Z dlowe: I've become quite a fan of positional-lambda. 2014-09-08T15:26:25Z dlowe: thought I'd throw that out there. 2014-09-08T15:26:35Z nell joined #lisp 2014-09-08T15:26:53Z chitofan quit (Quit: Page closed) 2014-09-08T15:27:27Z munksgaard quit (Ping timeout: 255 seconds) 2014-09-08T15:27:44Z stepnem quit (Ping timeout: 272 seconds) 2014-09-08T15:28:57Z H4ns: neat 2014-09-08T15:29:04Z innertracks joined #lisp 2014-09-08T15:29:06Z stepnem joined #lisp 2014-09-08T15:29:12Z ndrei_ joined #lisp 2014-09-08T15:29:21Z ndrei_ quit (Read error: Connection reset by peer) 2014-09-08T15:29:21Z ndrei quit (Quit: Lost terminal) 2014-09-08T15:30:32Z ndrei joined #lisp 2014-09-08T15:31:32Z przl quit (Ping timeout: 272 seconds) 2014-09-08T15:32:40Z CrazyEddy quit (Ping timeout: 252 seconds) 2014-09-08T15:33:18Z yakccd quit (Remote host closed the connection) 2014-09-08T15:34:09Z zophy quit (Ping timeout: 264 seconds) 2014-09-08T15:34:14Z mishoo quit (Ping timeout: 276 seconds) 2014-09-08T15:34:22Z pt1 quit (Ping timeout: 245 seconds) 2014-09-08T15:34:54Z k-stz joined #lisp 2014-09-08T15:36:42Z CrazyEddy joined #lisp 2014-09-08T15:38:01Z Karl_Dscc joined #lisp 2014-09-08T15:40:26Z varjag quit (Quit: Leaving) 2014-09-08T15:41:55Z dkcl joined #lisp 2014-09-08T15:42:18Z dnm quit (Ping timeout: 268 seconds) 2014-09-08T15:42:20Z plww joined #lisp 2014-09-08T15:42:28Z zacts: cool 2014-09-08T15:45:33Z dkcl: zacts: FreeBSD, eh? Nice 2014-09-08T15:46:10Z mvilleneuve_ quit (Quit: This computer has gone to sleep) 2014-09-08T15:46:14Z zacts: dkcl: yeah, but I'm liking OpenBSD more and more now 2014-09-08T15:46:24Z dkcl: Even nicer! 2014-09-08T15:46:24Z zacts: I also like slackware. 2014-09-08T15:46:41Z dkcl: CL development is difficult on OpenBSD, though 2014-09-08T15:46:55Z zacts: and I'm hoping to implement a minix3 server using lisp 2014-09-08T15:47:16Z dkcl: A multithreaded SBCL will compile every now and then, but other tests fail 2014-09-08T15:47:24Z dkcl: Haha, that should be interesting 2014-09-08T15:47:24Z zacts: dkcl: yeah, I'm doing my lisp stuff on Slackware right now 2014-09-08T15:48:14Z oleo: congrats to the stable! 2014-09-08T15:49:06Z dkcl: oleo: Thanks for reminding about #lispgames by saying something 2014-09-08T15:49:33Z dkcl ... lost his .emacs file a few days ago 2014-09-08T15:49:34Z hitecnologys quit (Quit: hitecnologys) 2014-09-08T15:49:47Z eudoxia: version control, people 2014-09-08T15:50:26Z dkcl: Well, who version-controls the version-controllers? 2014-09-08T15:50:58Z eudoxia: ¯\_(ツ)_/¯ 2014-09-08T15:51:02Z dlowe: A lisper not comfortable with recursion? 2014-09-08T15:51:22Z pjb: or with metalinguistic towers? 2014-09-08T15:51:30Z pjb: or with turtles? 2014-09-08T15:51:33Z korqio quit (Ping timeout: 264 seconds) 2014-09-08T15:52:13Z nyef: pjb: No, that last is LOGO users. d-: 2014-09-08T15:52:49Z jasom: It's amphibians all the way down. 2014-09-08T15:52:54Z pjb: I was refering to all the turtles all the way down. 2014-09-08T15:52:56Z Shinmera: eudoxia: I'd rather version control people 2014-09-08T15:53:05Z innertracks quit (Ping timeout: 276 seconds) 2014-09-08T15:53:32Z eudoxia: we're gonna need version control when we're all posthuman 2014-09-08T15:53:46Z eudoxia: you'll need to roll-back updates to ~your brain~ 2014-09-08T15:54:03Z pjb: Cloning them like in Resident Evil, and duplicating them with a teletransporter like in Star Trek? 2014-09-08T15:54:14Z pjb: s/and/or/ 2014-09-08T15:54:17Z Shinmera: Merge all the brain branches 2014-09-08T15:54:22Z eudoxia: no, just keeping diffs of brain state 2014-09-08T15:54:30Z dkcl wonders where the hidden directories will be stored 2014-09-08T15:54:47Z pjb: dkcl: in a police phone booth, of course. 2014-09-08T16:00:17Z przl joined #lisp 2014-09-08T16:01:32Z innertracks joined #lisp 2014-09-08T16:02:32Z cite-reader joined #lisp 2014-09-08T16:05:29Z impulse quit (Read error: Connection reset by peer) 2014-09-08T16:06:17Z gadmyth quit (Remote host closed the connection) 2014-09-08T16:06:36Z jkaye joined #lisp 2014-09-08T16:10:45Z Cymew quit (Ping timeout: 264 seconds) 2014-09-08T16:12:04Z BitPuffin quit (Ping timeout: 272 seconds) 2014-09-08T16:12:18Z vydd_ joined #lisp 2014-09-08T16:12:22Z ehu quit (Ping timeout: 245 seconds) 2014-09-08T16:14:30Z zacharias joined #lisp 2014-09-08T16:14:41Z vydd quit (Ping timeout: 260 seconds) 2014-09-08T16:17:17Z drmeister quit (Remote host closed the connection) 2014-09-08T16:17:20Z devn quit (Remote host closed the connection) 2014-09-08T16:17:30Z drmeister joined #lisp 2014-09-08T16:18:08Z bit` quit (Ping timeout: 252 seconds) 2014-09-08T16:18:55Z Nizumzen joined #lisp 2014-09-08T16:20:02Z tkhoa2711 joined #lisp 2014-09-08T16:21:22Z nipra joined #lisp 2014-09-08T16:23:12Z ejbs quit (Ping timeout: 245 seconds) 2014-09-08T16:23:39Z drmeiste_ joined #lisp 2014-09-08T16:23:54Z impulse joined #lisp 2014-09-08T16:23:57Z Odin- joined #lisp 2014-09-08T16:26:10Z drmeiste_: Does anyone use cl-conspack? 2014-09-08T16:27:14Z drmeiste_: I ask because I need a serialization library - it looks like the best match - but it requires a lot of other systems to run. If it is really good I'll take the trouble to get all the other systems to work. 2014-09-08T16:28:34Z Grue`: i only used cl-store 2014-09-08T16:29:02Z drmeiste_: In particular, static-vectors requires cffi. I don't have cffi working yet. 2014-09-08T16:29:09Z Xach: I use cl-store too. 2014-09-08T16:29:21Z jasom: I have also used cl-store 2014-09-08T16:29:32Z Xach: cl-store has no dependencies 2014-09-08T16:29:39Z drmeiste_: Does cl-store do circular references well? 2014-09-08T16:29:59Z Xach: I haven't tried, that I remember. It does everything else I needed (which was not much) pretty easily. 2014-09-08T16:30:13Z jasom: drmeiste_: I haven't tried, but I would expect it to. 2014-09-08T16:31:02Z jlarocco quit (Ping timeout: 245 seconds) 2014-09-08T16:31:59Z jasom: apparently it doesn't 2014-09-08T16:32:04Z CrazyEddy quit (Ping timeout: 252 seconds) 2014-09-08T16:32:08Z drmeiste_: Have you tried to customize cl-store? You need to assign a unique integer code for each custom object. 2014-09-08T16:32:28Z jasom: nevermind it does; i just had print-circle unset 2014-09-08T16:32:36Z jasom: so the REPL blew the stack 2014-09-08T16:33:08Z munksgaard joined #lisp 2014-09-08T16:33:09Z bit` joined #lisp 2014-09-08T16:33:50Z jlarocco joined #lisp 2014-09-08T16:34:07Z jasom: drmeiste_: it has a *check-for-circs* which you can set to nil for a performance boost if you don't have circularities. 2014-09-08T16:34:35Z Grue`: (let ((*print-circle* t)) is by itself a pretty good serializer 2014-09-08T16:34:47Z jasom: Grue`: depends on the implementation 2014-09-08T16:34:57Z drmeiste_: I need to serialize C++ classes that are exposed within Clasp. My own serialization library doesn't work well with linked lists so I thought I would come in from the other end. I would use a Common Lisp serialization library and customize it to serialize C++ objects. 2014-09-08T16:35:31Z jasom: drmeiste_: cl-store is quite easy to customize 2014-09-08T16:36:10Z drmeiste_: Representing chemical bonds between atoms involves lots of circularities. 2014-09-08T16:36:27Z jasom: drmeiste_: depends on your choice of representation 2014-09-08T16:36:37Z mrSpec quit (Quit: mrSpec) 2014-09-08T16:36:55Z drmeiste_: Right - one of my several representations involves lots of circularities. 2014-09-08T16:37:24Z wasamasa: emacs just cuts off after a certain level of circularity 2014-09-08T16:37:36Z wasamasa: it's pretty silly 2014-09-08T16:37:44Z eudoxia has never used a circular structure 2014-09-08T16:37:46Z ggole: You can turn that off 2014-09-08T16:37:56Z eudoxia: i'd just have a hash table of atoms. which i did, once 2014-09-08T16:37:56Z drmeiste_: It might be time to re-evaluate the representations I use. 2014-09-08T16:38:00Z jasom: eudoxia: never? Not even a doubly-linked list? 2014-09-08T16:38:36Z eudoxia: jasom: i mean in CL 2014-09-08T16:38:59Z drmeiste_: I'll look deeper into cl-store. The no-dependencies aspect of it is very alluring. When I tried to get cl-conspack running in SBCL ASDF reported a COMPILE-FILE error in :fast-io. 2014-09-08T16:39:04Z jasom: eudoxia: I've used at least trees with parent pointers in lisp before; not sure about doubly-linked list 2014-09-08T16:39:25Z drmeiste_: I've been down enough rabbit holes. I don't want to debug other peoples library dependencies. 2014-09-08T16:39:30Z eudoxia: in lower-level languages i've probably accidentally created circularities in many dimensions 2014-09-08T16:39:42Z jegaxd26 quit (Remote host closed the connection) 2014-09-08T16:40:39Z munksgaard quit (Ping timeout: 246 seconds) 2014-09-08T16:41:42Z jasom: to me, a structure with backwards pointers is so convienient, regardless of high or low level language choice. 2014-09-08T16:43:26Z ggole: pointer-to-other-or-self turns up often, too 2014-09-08T16:43:34Z ggole: Disjoint sets, for instance. 2014-09-08T16:44:02Z nipra quit (Ping timeout: 245 seconds) 2014-09-08T16:44:10Z shka joined #lisp 2014-09-08T16:44:13Z shka: ave tux! 2014-09-08T16:44:17Z shka: ave lisp! 2014-09-08T16:44:29Z shka quit (Quit: leaving) 2014-09-08T16:44:51Z Shaftoe___ joined #lisp 2014-09-08T16:45:06Z shka joined #lisp 2014-09-08T16:45:11Z CrazyEddy joined #lisp 2014-09-08T16:45:36Z shka: heh, i forgot that i installed weechat 2014-09-08T16:45:47Z shka: and spell checking works now! 2014-09-08T16:45:48Z pt1 joined #lisp 2014-09-08T16:46:29Z Shaftoe___: is there some sort of throughish documentation or samples for cl-autowrap out there? 2014-09-08T16:46:55Z varjag joined #lisp 2014-09-08T16:48:16Z Maurice_TCF joined #lisp 2014-09-08T16:50:00Z henesy joined #lisp 2014-09-08T16:50:36Z AeroNotix: shka: you have spell checking in weechat? 2014-09-08T16:50:46Z wheelsucker joined #lisp 2014-09-08T16:52:11Z gravicappa joined #lisp 2014-09-08T16:52:45Z arenz quit (Ping timeout: 264 seconds) 2014-09-08T16:53:48Z Vutral joined #lisp 2014-09-08T16:53:53Z Vutral quit (Excess Flood) 2014-09-08T16:55:11Z Shinmera: AeroNotix: Weechat does indeed have spellchecking. http://shinmera.tymoon.eu/public/screenshot-2014.09.08-18:55:09.png 2014-09-08T16:55:30Z AeroNotix: Shinmera: yeah I was just enabling it, thanks :) 2014-09-08T16:55:57Z Shinmera: AeroNotix: It allows multiple dicts at the same time too which is nice if you're multilingual. 2014-09-08T16:56:26Z AeroNotix: Shinmera: trilingual :) 2014-09-08T16:57:03Z malbertife joined #lisp 2014-09-08T16:57:03Z Shinmera: AeroNotix: Nice, same here and on the way to quadrilingual. 2014-09-08T17:04:29Z tkhoa2711 quit (Quit: tkhoa2711) 2014-09-08T17:07:55Z dkcl quit (Remote host closed the connection) 2014-09-08T17:08:24Z dkcl joined #lisp 2014-09-08T17:09:06Z Oberon4278 joined #lisp 2014-09-08T17:09:10Z nipra joined #lisp 2014-09-08T17:09:16Z shka: AeroNotix: yes, i do 2014-09-08T17:09:52Z shka: but no lisp spell checking ^^ 2014-09-08T17:10:09Z henesy quit (Ping timeout: 264 seconds) 2014-09-08T17:11:06Z dkcl: I guess AI was more interesting 2014-09-08T17:12:45Z shka: yes, "modern approach" has excellent cover 2014-09-08T17:12:51Z sivoais quit (Ping timeout: 246 seconds) 2014-09-08T17:13:02Z shka: one of the best 2014-09-08T17:13:45Z sivoais joined #lisp 2014-09-08T17:14:59Z Vivitron joined #lisp 2014-09-08T17:16:13Z dkcl: I have it around, but I never got around reading it 2014-09-08T17:16:30Z dkcl: PAIP is the closest I've been to "proper" AI 2014-09-08T17:17:40Z shka: dkcl: but at least cover is great :D 2014-09-08T17:17:44Z cite-reader quit (Quit: leaving) 2014-09-08T17:18:15Z cite-reader joined #lisp 2014-09-08T17:19:09Z pt1 quit (Remote host closed the connection) 2014-09-08T17:21:42Z jegaxd26 joined #lisp 2014-09-08T17:22:05Z korqio joined #lisp 2014-09-08T17:22:07Z dkcl: I prefer Go to chess :P 2014-09-08T17:22:08Z nipra quit (Ping timeout: 276 seconds) 2014-09-08T17:22:33Z dkcl: Which, incidentally, is also an AI problem 2014-09-08T17:22:52Z eudoxia: and apparently much harder than chess 2014-09-08T17:23:38Z slyrus quit (Ping timeout: 272 seconds) 2014-09-08T17:24:08Z Shinmera: I want an AI that beats me at Uno 2014-09-08T17:24:16Z CrazyEddy quit (Ping timeout: 272 seconds) 2014-09-08T17:24:25Z dkcl: Shinmera: Haha 2014-09-08T17:24:26Z Shinmera folds his arms 2014-09-08T17:24:59Z korqio- joined #lisp 2014-09-08T17:25:38Z matko joined #lisp 2014-09-08T17:26:20Z nipra joined #lisp 2014-09-08T17:26:25Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-08T17:29:07Z CrazyEddy joined #lisp 2014-09-08T17:31:58Z vanila: "AI" has deviated a lot away from symbloic/conceptual reasoning 2014-09-08T17:32:15Z vanila: it's all about matrices and probability 2014-09-08T17:32:27Z eudoxia quit (Quit: Lost terminal) 2014-09-08T17:32:35Z dkcl: That's what keeps me from opening the serious books, really 2014-09-08T17:33:27Z vanila: I would like to see more on the conceptual side - reasoning with ideas rather than statistics, of course it's not what gets good results today 2014-09-08T17:35:14Z EvW quit (Remote host closed the connection) 2014-09-08T17:36:19Z shka: statistic is crucial for all kinds of science 2014-09-08T17:36:30Z shka: from physics to the medicine 2014-09-08T17:36:35Z dkcl: Fuzzy logic on matrices is not something that appeals to my problem-solving instinct 2014-09-08T17:36:39Z dkcl: Well, of course 2014-09-08T17:36:44Z shka: it is kinda amazing when you think about it 2014-09-08T17:36:46Z dkcl: It's just a matter of interest 2014-09-08T17:37:22Z Harag quit (Ping timeout: 245 seconds) 2014-09-08T17:38:18Z shka: dkcl: well, if AI program that utilize such "reasoning" and symbolic computation actually works good it is not considered AI ;-) 2014-09-08T17:38:28Z jasom: vanila: I think that people reason in a way that can only be tractibly reasoned about with statistics 2014-09-08T17:39:18Z Adlai: has there been any attempt at a JSON library using the MOP to turn json objects into actual lisp objects? 2014-09-08T17:39:23Z shka: vanila: how is your compiler going? 2014-09-08T17:39:32Z EvW joined #lisp 2014-09-08T17:39:42Z jasom: Adlai: I think json objects are more closely modled as hash-tables 2014-09-08T17:39:53Z ustunozg_ joined #lisp 2014-09-08T17:40:07Z Adlai: in many cases, they're actually closer to structs or simple objects 2014-09-08T17:40:15Z Adlai: at least in the cases i'm dealing with 2014-09-08T17:40:23Z ustunozg_ quit (Remote host closed the connection) 2014-09-08T17:40:41Z Adlai: (web APIs that think all problems can be solved by serializing data as json) 2014-09-08T17:40:56Z Bike: Adlai: cl-json does that (optionally) 2014-09-08T17:41:08Z Adlai: hm 2014-09-08T17:41:22Z Bike: http://common-lisp.net/project/cl-json/#CLOS-DECODER 2014-09-08T17:43:21Z ustunozgur quit (Ping timeout: 255 seconds) 2014-09-08T17:44:14Z Vivitron quit (Ping timeout: 276 seconds) 2014-09-08T17:45:01Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-08T17:45:10Z CrazyEddy quit (Ping timeout: 272 seconds) 2014-09-08T17:46:41Z pt1 joined #lisp 2014-09-08T17:47:28Z Vutral joined #lisp 2014-09-08T17:48:05Z BitPuffin joined #lisp 2014-09-08T17:49:21Z Harag joined #lisp 2014-09-08T17:50:10Z CrazyEddy joined #lisp 2014-09-08T17:51:53Z kirin` quit (Ping timeout: 240 seconds) 2014-09-08T17:52:37Z vanila: shka, after despairing all day I looked into it a bit and fixed the GC problem quite quickly 2014-09-08T17:53:07Z jlongster quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-08T17:53:26Z vanila: jasom, I think that is true but I can't imagine it's not the full story 2014-09-08T17:53:28Z vanila: -not 2014-09-08T17:54:04Z kirin` joined #lisp 2014-09-08T17:56:53Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T17:57:33Z jlongster joined #lisp 2014-09-08T17:57:42Z cite-reader quit (Quit: leaving) 2014-09-08T17:59:52Z drmeiste_ quit (Ping timeout: 245 seconds) 2014-09-08T18:01:31Z shout-user19 joined #lisp 2014-09-08T18:02:21Z matko quit (Ping timeout: 264 seconds) 2014-09-08T18:05:49Z drmeiste_ joined #lisp 2014-09-08T18:08:10Z yrk: hi, is the author of SLY here? 2014-09-08T18:09:22Z husker joined #lisp 2014-09-08T18:09:24Z Xach: yrk: yes. capitaomorte is the author. 2014-09-08T18:09:46Z yrk: Xach: thanks 2014-09-08T18:09:49Z Xach: although what "here" really means is not clear 2014-09-08T18:09:52Z cy quit (Ping timeout: 272 seconds) 2014-09-08T18:10:36Z Zeedox_ joined #lisp 2014-09-08T18:10:56Z husker quit (Client Quit) 2014-09-08T18:12:59Z brown`` quit (Remote host closed the connection) 2014-09-08T18:13:37Z Vivitron joined #lisp 2014-09-08T18:16:17Z drmeister quit (Remote host closed the connection) 2014-09-08T18:16:49Z drmeister joined #lisp 2014-09-08T18:18:47Z AntiSpamMeta quit (Quit: going to the mOOOOOOOOOOOOOOOOOOOOooooooooooooooooooooooooooonnnnnnnnn. My owner is probably high out of his mind right now. /msg athanasius high!) 2014-09-08T18:19:00Z AntiSpamMeta joined #lisp 2014-09-08T18:20:33Z reb joined #lisp 2014-09-08T18:22:42Z pt1 quit (Remote host closed the connection) 2014-09-08T18:26:13Z stacksmith: Is there a way to loop across a range of a vector, or should I use for-from-to and index the vector explicitly? 2014-09-08T18:26:14Z minion: stacksmith, memo from beach: I don't know what the problem is. The mcclim-truetype.asd file is in the subdirectory Experimental/freetype/ in the McCLIM distribution. You may have to tell ASDF about that directory, as in (push ".../Experimental/freetype/" asdf:*central-registry*). 2014-09-08T18:26:14Z strg quit (Quit: Linkinus - http://linkinus.com) 2014-09-08T18:26:54Z Xach: stacksmith: for-from-to is the easiest, shortest option, i think. 2014-09-08T18:26:57Z Harag quit (Ping timeout: 268 seconds) 2014-09-08T18:27:19Z stacksmith: Xach: thanks, that's what I thought. 2014-09-08T18:27:48Z kushal quit (Quit: Leaving) 2014-09-08T18:28:02Z cite-reader joined #lisp 2014-09-08T18:28:04Z ustunozgur joined #lisp 2014-09-08T18:28:27Z stacksmith: minion: thanks I found it. 2014-09-08T18:28:27Z minion: no problem 2014-09-08T18:32:10Z shout-user19 quit (Remote host closed the connection) 2014-09-08T18:36:16Z pgomes joined #lisp 2014-09-08T18:36:52Z cy joined #lisp 2014-09-08T18:39:16Z Px12 joined #lisp 2014-09-08T18:40:16Z Px12 quit (Max SendQ exceeded) 2014-09-08T18:42:06Z malbertife quit (Ping timeout: 246 seconds) 2014-09-08T18:42:58Z Px12 joined #lisp 2014-09-08T18:43:01Z slyrus joined #lisp 2014-09-08T18:43:48Z Px12 quit (Max SendQ exceeded) 2014-09-08T18:44:56Z plww quit (Quit: leaving) 2014-09-08T18:45:46Z slyrus_ joined #lisp 2014-09-08T18:46:29Z Px12 joined #lisp 2014-09-08T18:47:41Z Px12 quit (Max SendQ exceeded) 2014-09-08T18:48:13Z slyrus quit (Ping timeout: 260 seconds) 2014-09-08T18:48:26Z slyrus_ is now known as slyrus 2014-09-08T18:50:49Z drmeiste_ quit (Remote host closed the connection) 2014-09-08T18:51:02Z AeroNotix: is there something in the standard library like Clojure's juxt? 2014-09-08T18:51:10Z AeroNotix: easily written, but if it's there already..... 2014-09-08T18:51:35Z przl quit (Quit: leaving) 2014-09-08T18:52:39Z awaythrick quit (Remote host closed the connection) 2014-09-08T18:52:52Z Xach: What does juxt do? 2014-09-08T18:53:16Z zygentoma joined #lisp 2014-09-08T18:53:20Z AeroNotix: Xach: takes a number of functions and returns a function which applies all those functions to a value 2014-09-08T18:54:22Z drmeister quit (Remote host closed the connection) 2014-09-08T18:54:36Z drmeister joined #lisp 2014-09-08T18:54:39Z AeroNotix: Xach: ((juxt a b c) x) => [(a x) (b x) (c x)] 2014-09-08T18:54:48Z AeroNotix: where a, b, and c are functions 2014-09-08T18:54:59Z Zeedox_ is now known as Zeedox 2014-09-08T18:55:06Z Xach: AeroNotix: nothing built-in that i can think of. 2014-09-08T18:55:06Z drmeiste_ joined #lisp 2014-09-08T18:55:10Z Px12 joined #lisp 2014-09-08T18:55:11Z AeroNotix: Xach: thanks! 2014-09-08T18:55:36Z awaythrick joined #lisp 2014-09-08T18:56:04Z Xach: (mapcar (callfun x) '(a b c)), sort of. 2014-09-08T18:56:10Z Px12 quit (Max SendQ exceeded) 2014-09-08T18:56:39Z Xach: with a callfun of (defun callfun (value) (lambda (fun) (funcall fun value))) or so 2014-09-08T18:56:40Z sheilong joined #lisp 2014-09-08T18:56:53Z AeroNotix: Sure 2014-09-08T18:58:27Z stacksmith: But it actually creates a function for you - I would see a macro solution here. 2014-09-08T18:58:42Z slyrus_ joined #lisp 2014-09-08T18:58:44Z AeroNotix: stacksmith: a macro could work 2014-09-08T18:58:58Z AeroNotix: but I'm not sure this situation needs one 2014-09-08T18:59:08Z AeroNotix: In clojure I remember using (apply juxt ...) once or twice 2014-09-08T18:59:22Z drmeiste_ quit (Ping timeout: 240 seconds) 2014-09-08T18:59:24Z stacksmith: AeroNotix: how are closure macros to work with, btw? 2014-09-08T18:59:44Z AeroNotix: stacksmith: fine enough - you can't really make anaphoric macros. But I don't usually any way. 2014-09-08T18:59:49Z AeroNotix: There's no reader macros as well. 2014-09-08T18:59:56Z AeroNotix: (Not without herculian hacks) 2014-09-08T19:00:03Z gravicappa quit (Remote host closed the connection) 2014-09-08T19:00:22Z slyrus quit (Ping timeout: 240 seconds) 2014-09-08T19:00:36Z AeroNotix: stacksmith: you also have a gensym reader macro, which is quite nice 2014-09-08T19:00:37Z slyrus_ is now known as slyrus 2014-09-08T19:01:15Z stacksmith: So it's more like lisp then scheme? 2014-09-08T19:01:27Z AeroNotix: I've never used a scheme so I wouldn't know 2014-09-08T19:02:01Z innertracks quit (Quit: innertracks) 2014-09-08T19:02:16Z attila_lendvai joined #lisp 2014-09-08T19:02:16Z attila_lendvai quit (Changing host) 2014-09-08T19:02:16Z attila_lendvai joined #lisp 2014-09-08T19:02:50Z wasamasa: AeroNotix: wait, what? 2014-09-08T19:03:00Z AeroNotix: wasamasa: what 2014-09-08T19:03:06Z wasamasa: AeroNotix: does clojure have a hygiene issue or is it just too much effort to have anaphoric macros? 2014-09-08T19:03:18Z stacksmith: I mean, non-hygienic, and operating on forms... 2014-09-08T19:03:24Z Px12 joined #lisp 2014-09-08T19:03:36Z bdr3552 joined #lisp 2014-09-08T19:03:44Z innertracks joined #lisp 2014-09-08T19:03:49Z AeroNotix: wasamasa: just symbols need special treatment when you're making them as anaphors -- a bit more work than usual. 2014-09-08T19:04:09Z wasamasa: AeroNotix: ok, I see 2014-09-08T19:06:25Z awaythrick quit (Quit: Leaving) 2014-09-08T19:06:42Z backupthrick joined #lisp 2014-09-08T19:08:16Z Patzy quit (Ping timeout: 252 seconds) 2014-09-08T19:08:52Z Patzy joined #lisp 2014-09-08T19:08:54Z Jesin quit (Quit: Leaving) 2014-09-08T19:09:19Z cite-reader quit (Quit: leaving) 2014-09-08T19:09:34Z Harag joined #lisp 2014-09-08T19:09:44Z AeroNotix: https://gist.github.com/e6caac786a3a9572b84f I don't understand why this is giving me an ETYPECASE fallthrough error 2014-09-08T19:10:56Z AeroNotix: derp why did I make it a macro 2014-09-08T19:11:03Z AeroNotix: there we go 2014-09-08T19:11:31Z puchacz joined #lisp 2014-09-08T19:11:40Z AeroNotix: we were talking about macros and I must've typod defun to defmacro 2014-09-08T19:13:30Z drmeiste_ joined #lisp 2014-09-08T19:15:01Z zophy joined #lisp 2014-09-08T19:16:14Z swflint quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-08T19:16:59Z Harag quit (Ping timeout: 272 seconds) 2014-09-08T19:18:38Z mr-foobar quit (Quit: Leaving...) 2014-09-08T19:18:49Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-08T19:19:29Z cy is now known as cyan 2014-09-08T19:19:55Z AdmiralBumbleBee quit (Quit: AdmiralBumbleBee) 2014-09-08T19:20:05Z Longlius joined #lisp 2014-09-08T19:20:09Z cyan is now known as cy 2014-09-08T19:22:15Z ustunozgur quit (Remote host closed the connection) 2014-09-08T19:23:04Z innertracks quit (Ping timeout: 268 seconds) 2014-09-08T19:26:48Z zwer__n joined #lisp 2014-09-08T19:27:15Z zwer_ quit (Ping timeout: 264 seconds) 2014-09-08T19:27:40Z fortitude93 joined #lisp 2014-09-08T19:27:49Z Davidbrcz joined #lisp 2014-09-08T19:28:37Z nipra quit (Ping timeout: 245 seconds) 2014-09-08T19:29:02Z junke_ quit (Ping timeout: 245 seconds) 2014-09-08T19:30:28Z TDog quit (Ping timeout: 268 seconds) 2014-09-08T19:30:41Z slyrus_ joined #lisp 2014-09-08T19:30:45Z nand1 quit (Remote host closed the connection) 2014-09-08T19:31:30Z nand1 joined #lisp 2014-09-08T19:31:42Z nand1 quit (Remote host closed the connection) 2014-09-08T19:31:47Z ggole_ joined #lisp 2014-09-08T19:32:22Z slyrus quit (Ping timeout: 245 seconds) 2014-09-08T19:32:32Z ustunozgur joined #lisp 2014-09-08T19:32:36Z nand1 joined #lisp 2014-09-08T19:33:08Z slyrus joined #lisp 2014-09-08T19:34:27Z ggole quit (Ping timeout: 245 seconds) 2014-09-08T19:36:52Z slyrus_ quit (Ping timeout: 252 seconds) 2014-09-08T19:37:42Z dnm joined #lisp 2014-09-08T19:37:49Z dim: https://github.com/marijnh/Postmodern/blob/master/cl-postgres/ieee-floats.lisp ; why would Postmodern include ieee-floats? predates Quicklisp? 2014-09-08T19:37:55Z thierrygar quit (Quit: thierrygar) 2014-09-08T19:39:01Z foom: most CL libraries predate quicklisp 2014-09-08T19:39:35Z Xach: dim: yes. and marijnh also is pretty picky about external dependencies. 2014-09-08T19:39:41Z dim: I know I'm showing my noobisness here... 2014-09-08T19:39:45Z dim: ok 2014-09-08T19:40:06Z dim: my question comes from https://github.com/dimitri/pgloader/issues/64#issuecomment-54821981 where building pgloader with CCL meets a dependency error on ieee-floats 2014-09-08T19:40:20Z dim: I wonder if it might be about a too old Quicklisp distribution 2014-09-08T19:40:26Z Xach: No. 2014-09-08T19:40:42Z gingerale quit (Ping timeout: 245 seconds) 2014-09-08T19:41:18Z dim: sorry, you don't have the whole data, the "newer" system that depends on ieee-floats here is cl-ixf 2014-09-08T19:41:23Z Xach: Some people are still pretty conservative about adding potentially big chains of dependencies for potentially small conveniences, too. I think that makes sense. 2014-09-08T19:42:05Z Xach: Also, some people (maybe just one?) feel that dependencies are evil and that quicklisp is part of an evil scheme to enslave common lisp users through dependency. 2014-09-08T19:42:20Z Xach reads the issue 2014-09-08T19:42:28Z dim: arf. 2014-09-08T19:42:36Z dim: dunno what to think about what you just said really. 2014-09-08T19:44:04Z Davidbrcz quit (Ping timeout: 245 seconds) 2014-09-08T19:46:20Z oGMo: sounds like a purist 2014-09-08T19:46:24Z Puffin joined #lisp 2014-09-08T19:47:04Z pgomes left #lisp 2014-09-08T19:47:10Z Bicyclidine joined #lisp 2014-09-08T19:47:48Z stacksmith: Ouch. Getting a lengthy warning on SBCL startup - that I am using ASDF 3.1.3, but have ASDF 3.0.3 registerd at /usr/share/common-lisp/source/cl-asdf/asdf.asd. Followed by 3K of confusing text. Any suggestions about unregistering the old version? 2014-09-08T19:47:52Z slyrus_ joined #lisp 2014-09-08T19:48:31Z matko joined #lisp 2014-09-08T19:48:34Z Xach: stacksmith: that path is usually set up by a package manager. removing asdf via the package manager might help get things going again. 2014-09-08T19:49:22Z slyrus quit (Ping timeout: 245 seconds) 2014-09-08T19:49:23Z slyrus_ is now known as slyrus 2014-09-08T19:49:48Z oleo: or just remove that dir manualy and unlink files in /usr/share/common-lisp/system/ 2014-09-08T19:51:26Z eudoxia joined #lisp 2014-09-08T19:51:41Z shka quit (Quit: WeeChat 1.0) 2014-09-08T19:51:43Z eudoxia quit (Client Quit) 2014-09-08T19:51:58Z BitPuffin quit (Ping timeout: 252 seconds) 2014-09-08T19:53:23Z stacksmith: Thanks, removed package... 2014-09-08T19:53:43Z slyrus_ joined #lisp 2014-09-08T19:54:30Z Xach: Did that help? 2014-09-08T19:55:45Z slyrus quit (Ping timeout: 264 seconds) 2014-09-08T19:55:47Z slyrus_ is now known as slyrus 2014-09-08T19:56:14Z ggole_ quit 2014-09-08T19:57:34Z fortitude93 quit (Remote host closed the connection) 2014-09-08T19:57:52Z nell joined #lisp 2014-09-08T19:57:52Z Xach: dim: There was a timeframe when clozure cl and the quicklisp client didn't work well together due to how a certain version of asdf cached stuff. 2014-09-08T19:58:18Z Xach: dim: i think a sufficiently new clozure cl, or a sufficiently new quicklisp client, could fix the problem. i don't know if that's in play for the issue you linked, though. 2014-09-08T19:58:33Z Xach: the symptoms were similar: it would not see a dependency that had just been downloaded 2014-09-08T19:58:40Z dim: yeah I don't know either, thanks for having had a look 2014-09-08T19:59:13Z Shinmera: One of my projects causes caching issues in the form of inexistent packages sometimes. 2014-09-08T19:59:17Z dim: I had that problem here too, I did rm -rf ~/.cache/common-lisp/ and make clean and built again and it passed, or something like that 2014-09-08T19:59:26Z dim: maybe did I update QL that said, or CCL, or both 2014-09-08T20:01:22Z __main__ quit (Ping timeout: 240 seconds) 2014-09-08T20:02:02Z Karl_Dscc quit (Remote host closed the connection) 2014-09-08T20:02:32Z _8hzp joined #lisp 2014-09-08T20:03:38Z Davidbrcz joined #lisp 2014-09-08T20:05:38Z angavrilov quit (Remote host closed the connection) 2014-09-08T20:06:07Z _8hzp` quit (Ping timeout: 245 seconds) 2014-09-08T20:06:21Z dto joined #lisp 2014-09-08T20:06:41Z mishoo joined #lisp 2014-09-08T20:12:13Z djuber joined #lisp 2014-09-08T20:13:22Z cite-reader joined #lisp 2014-09-08T20:13:51Z mhd joined #lisp 2014-09-08T20:13:52Z arrdem quit (Ping timeout: 250 seconds) 2014-09-08T20:14:36Z justinmcp_ quit (Read error: Connection reset by peer) 2014-09-08T20:14:42Z justinmcp joined #lisp 2014-09-08T20:14:47Z arrdem joined #lisp 2014-09-08T20:15:01Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-08T20:15:05Z vydd_ quit (Remote host closed the connection) 2014-09-08T20:15:09Z renard_ quit (Ping timeout: 240 seconds) 2014-09-08T20:15:10Z Xach quit (Ping timeout: 250 seconds) 2014-09-08T20:15:18Z Xach joined #lisp 2014-09-08T20:15:33Z djuber left #lisp 2014-09-08T20:15:42Z malbertife joined #lisp 2014-09-08T20:15:56Z mrSpec joined #lisp 2014-09-08T20:16:28Z renard_ joined #lisp 2014-09-08T20:16:55Z sword quit (Ping timeout: 272 seconds) 2014-09-08T20:19:56Z bambams quit (Ping timeout: 250 seconds) 2014-09-08T20:20:06Z blakbunnie27 quit (Ping timeout: 246 seconds) 2014-09-08T20:20:23Z __main__ joined #lisp 2014-09-08T20:20:37Z hiroakip joined #lisp 2014-09-08T20:20:46Z bambams joined #lisp 2014-09-08T20:20:46Z bambams quit (Changing host) 2014-09-08T20:20:46Z bambams joined #lisp 2014-09-08T20:21:18Z blakbunnie27 joined #lisp 2014-09-08T20:22:38Z joneshf quit (Ping timeout: 260 seconds) 2014-09-08T20:25:28Z peterhil joined #lisp 2014-09-08T20:25:55Z joneshf joined #lisp 2014-09-08T20:26:00Z sellout quit (Ping timeout: 250 seconds) 2014-09-08T20:26:05Z drmeiste_ quit (Remote host closed the connection) 2014-09-08T20:27:11Z sellout joined #lisp 2014-09-08T20:27:26Z sellout is now known as Guest66052 2014-09-08T20:27:37Z Nizumzen joined #lisp 2014-09-08T20:27:51Z slyrus_ joined #lisp 2014-09-08T20:28:45Z dim: is there a way to create a swank server on * rather than localhost? 2014-09-08T20:29:05Z Bicyclidine: what's *? 2014-09-08T20:29:33Z slyrus quit (Ping timeout: 246 seconds) 2014-09-08T20:29:36Z slyrus_ is now known as slyrus 2014-09-08T20:30:09Z dim: all if on the machine 2014-09-08T20:30:39Z Bicyclidine: well, you can specify a port if you want. 2014-09-08T20:31:43Z dim: trying 0.0.0.0 rather than localhost 2014-09-08T20:31:58Z Tristam quit (Read error: Connection timed out) 2014-09-08T20:32:30Z Bicyclidine: but i don't think i understand what you want, i mean, it's a server, if you're using the client from the same machine as the server that'll be localhost. 2014-09-08T20:32:48Z mood: dim: Swank has an (unexported) variable *LOOPBACK-INTERFACE* that contains "127.0.0.1" 2014-09-08T20:33:26Z logand joined #lisp 2014-09-08T20:33:46Z mood: That variable is used as the hostname, so you can probably rebind it to "0.0.0.0" or something 2014-09-08T20:35:02Z nyef: The more-typical thing to do is use an ssh port-forward. 2014-09-08T20:35:50Z Px12 quit (Ping timeout: 268 seconds) 2014-09-08T20:36:37Z hiato joined #lisp 2014-09-08T20:36:43Z hiato quit (Client Quit) 2014-09-08T20:37:16Z Shinmera: Publicly exposing your swank server is a bad idea generally. 2014-09-08T20:37:24Z djuber joined #lisp 2014-09-08T20:38:10Z Px12 joined #lisp 2014-09-08T20:38:55Z Px12 quit (Max SendQ exceeded) 2014-09-08T20:41:31Z Longlius quit (Remote host closed the connection) 2014-09-08T20:43:03Z theseb joined #lisp 2014-09-08T20:43:03Z bdr3552 left #lisp 2014-09-08T20:43:50Z theseb: are macros just convenient text substitutions that are only for convenience?...just like 'a is just a convenient way to say (quote a)? 2014-09-08T20:44:24Z antoszka: no 2014-09-08T20:44:25Z H4ns: theseb: macros do not operate on text, but on the internal s-expression representation. 2014-09-08T20:44:27Z theseb: what i'm getting at is lisp is turing complete w/o macros and they programs can always be written to excise the macro right? 2014-09-08T20:44:32Z Bicyclidine: that's a reader macro. 2014-09-08T20:44:39Z Tristam joined #lisp 2014-09-08T20:45:47Z Bicyclidine: lisp is turing complete without macros, arithmetic, the printer, CLOS, and function names, but programming in that would suck. turing completeness isn't really what your criterion should be. 2014-09-08T20:46:09Z a20140908 joined #lisp 2014-09-08T20:46:16Z wasamasa: theseb: macros can be used to attain extra syntax 2014-09-08T20:46:47Z wasamasa: theseb: you could for example program in lisp without `if' by using lambdas 2014-09-08T20:46:52Z wasamasa: theseb: but would you want to? 2014-09-08T20:46:55Z wasamasa: theseb: I guess not 2014-09-08T20:47:14Z wasamasa: theseb: I guess you wouldn't want to live without `defun' either although you could 2014-09-08T20:47:15Z mrSpec quit (Remote host closed the connection) 2014-09-08T20:47:22Z Vutral joined #lisp 2014-09-08T20:47:24Z wasamasa: theseb: or loop constructs 2014-09-08T20:47:52Z wasamasa: theseb: or anything else useful that doesn't follow rules (and isn't just a function) 2014-09-08T20:48:13Z theseb: wasamasa: right 2014-09-08T20:48:32Z faheem_ quit (Ping timeout: 250 seconds) 2014-09-08T20:49:02Z wasamasa: theseb: so, when used in moderation, they can make your code cleaner and more powerful 2014-09-08T20:49:22Z antoszka: theseb: you've also got the full language (including macros) available for the sexp transformation. 2014-09-08T20:49:23Z faheem_ joined #lisp 2014-09-08T20:49:52Z jasom: theseb: 99% of any existant language exists only for convenience 2014-09-08T20:49:56Z wasamasa: theseb: it's a completely different level of abstraction when you go beyond what mere functions can do 2014-09-08T20:52:17Z logand left #lisp 2014-09-08T20:52:21Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T20:52:40Z antoszka: theseb: the views in the book are not wildly popular among common-lispers, but if you have a look at the first few chapters in Hoyte's “Let over Lambda” (available mostly for free online), you'll get the idea of the level of abstraction possible. 2014-09-08T20:53:04Z wasamasa: antoszka: why is that the case? 2014-09-08T20:53:18Z wasamasa: antoszka: I've found the chapters way over my head, but still pretty interesting 2014-09-08T20:53:54Z antoszka: wasamasa: I find that very inspiring (and mostly way over my head, too), I'm just reporting on the general reception I'm noticing ;). 2014-09-08T20:54:04Z wasamasa: antoszka: hmk 2014-09-08T20:54:05Z jasom: wasamasa: I think it's more of "Yes you can do it, but don't" 2014-09-08T20:54:15Z antoszka: Yeah, something along these lines. 2014-09-08T20:54:20Z Vutral joined #lisp 2014-09-08T20:54:27Z wasamasa: jasom: is it because the author is recommending alternatives to just using CLOS? 2014-09-08T20:54:46Z jasom: wasamasa: Like my car *can* go 130MPH on the freeway, but doing so is dangerous and ill-advised. However, the extra horsepower that allows it to go fast is still usefull when having to merge. 2014-09-08T20:54:56Z logand joined #lisp 2014-09-08T20:55:26Z antoszka: I think he might be going a bit overboard with the macros-writing-macros theme. I mean, you'd totally lose the mental representation of what's happening at this level of macroization. 2014-09-08T20:55:45Z dim: ok, remote slime is awesome 2014-09-08T20:55:49Z jasom: wasamasa: Most lispers avoid advanced macrology when it isn't necessary. A lot of LoL is more "look this is cool" rather than actually necessary 2014-09-08T20:55:52Z antoszka: Well, I do, definitely; but then, I can imagine it *does* open really interesting fields of research. 2014-09-08T20:55:59Z Shinmera: dim: Welcome to the future past 2014-09-08T20:56:02Z wasamasa: jasom: I see, thanks 2014-09-08T20:56:26Z dim: Shinmera: yeah ;-) (here using in a vagrant debian VM from my laptop) 2014-09-08T20:56:28Z drmeiste_ joined #lisp 2014-09-08T20:56:39Z Shinmera: dim: I hope you're using SSH tunnelling now though, yes? 2014-09-08T20:56:46Z sheilong quit (Quit: Konversation terminated!) 2014-09-08T20:56:50Z dim: yeah 2014-09-08T20:57:04Z dim: config.vm.network :forwarded_port, guest: 4205, host: 4205 2014-09-08T20:57:07Z jasom: wasamasa: not to say that understanding the techniques in LoL isn't good, just that having to deal with code written by someone who just finished reading it and wants to use them everywhere is a PITA 2014-09-08T20:57:08Z dim: but for that to work: 2014-09-08T20:57:11Z Shinmera: Also, don't forget to exit slime with ,disconnect rather than ,quit 2014-09-08T20:57:14Z knob quit (Quit: Leaving) 2014-09-08T20:57:18Z dim: (let ((swank::*loopback-interface* "0.0.0.0")) (swank:create-server :port 4205 :style :spawn :dont-close t)) 2014-09-08T20:57:53Z Vutral quit (Excess Flood) 2014-09-08T20:58:11Z wasamasa: dim: I'm very looking forward to work with a remote REPL using swank 2014-09-08T20:58:52Z dim: controling a debian VM from my "native" mac Emacs with a full slime repl is a cool experience 2014-09-08T20:59:20Z Shinmera: Sometimes I wish there was an extra command to connect to remotes with slime that would inhibit the use of ,quit so I don't accidentally shut it down 2014-09-08T21:02:48Z Bicyclidine quit (Ping timeout: 246 seconds) 2014-09-08T21:02:52Z Guest66052 is now known as sellout 2014-09-08T21:06:21Z munksgaard joined #lisp 2014-09-08T21:07:06Z ustunozgur quit (Remote host closed the connection) 2014-09-08T21:11:27Z duggiefresh quit 2014-09-08T21:11:45Z Bicyclidine joined #lisp 2014-09-08T21:12:54Z nyef quit (Quit: G'night all.) 2014-09-08T21:14:02Z slyrus_ joined #lisp 2014-09-08T21:14:44Z k-stz quit (Remote host closed the connection) 2014-09-08T21:15:10Z jegaxd26` joined #lisp 2014-09-08T21:15:41Z slyrus quit (Ping timeout: 260 seconds) 2014-09-08T21:15:57Z slyrus_ is now known as slyrus 2014-09-08T21:15:58Z malbertife_ joined #lisp 2014-09-08T21:16:43Z jegaxd26` quit (Read error: Connection reset by peer) 2014-09-08T21:17:40Z jegaxd26` joined #lisp 2014-09-08T21:19:59Z malbertife quit (Ping timeout: 252 seconds) 2014-09-08T21:19:59Z jegaxd26 quit (Ping timeout: 252 seconds) 2014-09-08T21:21:08Z EvW quit (Read error: Connection reset by peer) 2014-09-08T21:21:14Z EvW1 joined #lisp 2014-09-08T21:21:55Z Px12 joined #lisp 2014-09-08T21:22:11Z Px12 quit (Excess Flood) 2014-09-08T21:22:25Z jegaxd26` quit (Remote host closed the connection) 2014-09-08T21:22:50Z korqio- quit (Ping timeout: 252 seconds) 2014-09-08T21:23:39Z korqio- joined #lisp 2014-09-08T21:23:48Z mishoo quit (Ping timeout: 246 seconds) 2014-09-08T21:24:54Z drmeiste_ quit (Remote host closed the connection) 2014-09-08T21:26:24Z munksgaard quit (Ping timeout: 268 seconds) 2014-09-08T21:26:59Z Adlai quit (Remote host closed the connection) 2014-09-08T21:27:28Z Adlai joined #lisp 2014-09-08T21:28:48Z whmark quit (Remote host closed the connection) 2014-09-08T21:30:35Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-08T21:31:37Z whmark joined #lisp 2014-09-08T21:32:54Z Davidbrcz quit (Ping timeout: 246 seconds) 2014-09-08T21:32:58Z drmeiste_ joined #lisp 2014-09-08T21:35:19Z slyrus_ joined #lisp 2014-09-08T21:35:58Z Davidbrcz joined #lisp 2014-09-08T21:37:15Z slyrus__ joined #lisp 2014-09-08T21:37:30Z slyrus quit (Ping timeout: 252 seconds) 2014-09-08T21:37:48Z Zeedox quit (Ping timeout: 255 seconds) 2014-09-08T21:39:16Z a20140908 quit (Quit: Page closed) 2014-09-08T21:39:29Z slyrus__ is now known as slyrus 2014-09-08T21:39:35Z drmeiste_: Does CL have any way of creating in memory binary streams? 2014-09-08T21:39:50Z alexherbo2 joined #lisp 2014-09-08T21:39:57Z H4ns: no. 2014-09-08T21:40:07Z H4ns: flexi-streams has them 2014-09-08T21:40:22Z Bicyclidine quit (Ping timeout: 240 seconds) 2014-09-08T21:40:30Z Vutral joined #lisp 2014-09-08T21:40:32Z Vutral quit (Excess Flood) 2014-09-08T21:41:09Z slyrus_ quit (Ping timeout: 252 seconds) 2014-09-08T21:41:18Z _8hzp` joined #lisp 2014-09-08T21:42:29Z ustunozgur joined #lisp 2014-09-08T21:42:35Z Blaguvest quit 2014-09-08T21:42:38Z AeroNotix: I have way too much fun with flexi-streams 2014-09-08T21:42:43Z stanislav joined #lisp 2014-09-08T21:44:45Z wheelsucker quit (Quit: Client Quit) 2014-09-08T21:45:23Z _8hzp quit (Ping timeout: 276 seconds) 2014-09-08T21:48:04Z LiamH quit (Quit: Leaving.) 2014-09-08T21:48:33Z Davidbrcz quit (Ping timeout: 264 seconds) 2014-09-08T21:50:20Z Vivitron quit (Ping timeout: 252 seconds) 2014-09-08T21:52:19Z drmeiste_: Thank you. cl-store and flexi-streams gives me the ability to serialize objects into in-memory streams. 2014-09-08T21:53:09Z zygentoma quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-08T21:53:47Z vlnx quit (Read error: Connection reset by peer) 2014-09-08T21:53:53Z ustunozgur quit (Remote host closed the connection) 2014-09-08T21:54:27Z ustunozgur joined #lisp 2014-09-08T21:55:18Z vlnx joined #lisp 2014-09-08T21:55:58Z dim: cl-store targetting in-memory? well, what about cramfs then? 2014-09-08T21:56:12Z dim: unless I misunderstand what cl-store is all about, maybe 2014-09-08T21:56:58Z drmeiste_: What is cramfs? 2014-09-08T21:57:00Z puchacz quit (Quit: Konversation terminated!) 2014-09-08T21:57:39Z dim: a linux file system that lives in RAM (memory) 2014-09-08T21:57:41Z drmeiste_: Google sends me to bitbucket and that requires me to log in. 2014-09-08T21:58:03Z dim: you just mkfs in memory then mount and use as usual 2014-09-08T21:58:20Z dim: trumps software that believe into safe writes 2014-09-08T21:58:21Z drmeiste_: That's not quite what I'm looking for. I'm looking to serialize combinations of Common Lisp/C++ objects over OpenMPS. 2014-09-08T21:58:36Z dim: so they won't stay in memory, ok 2014-09-08T21:58:49Z dim: rather than cramfs you're after /net in plan9 and inferno 2014-09-08T21:58:49Z drmeiste_: BBL 2014-09-08T21:58:51Z drmeiste_ quit (Remote host closed the connection) 2014-09-08T21:59:06Z dim: unfortunately I don't think we have /net yet in linux, we're not up to the late 80s yet 2014-09-08T21:59:16Z dim: (although we got /proc) 2014-09-08T22:00:35Z drmeiste_ joined #lisp 2014-09-08T22:00:52Z drmeiste_: Sorry, I had to get off a crowded train. Did I miss anything? 2014-09-08T22:01:55Z dim: my rambling about /proc and /net and linux and the 80s, but was only 2 lines long 2014-09-08T22:02:06Z malbertife_ quit (Ping timeout: 255 seconds) 2014-09-08T22:02:19Z dim: so I guess the real answer is "nothing" ;-) 2014-09-08T22:03:32Z jlarocco quit (Quit: Leaving) 2014-09-08T22:05:18Z attila_lendvai quit (Quit: Leaving.) 2014-09-08T22:05:45Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-08T22:06:21Z bgs100 joined #lisp 2014-09-08T22:07:49Z strg joined #lisp 2014-09-08T22:07:53Z matko quit (Remote host closed the connection) 2014-09-08T22:08:17Z emma quit (Remote host closed the connection) 2014-09-08T22:08:27Z matko joined #lisp 2014-09-08T22:08:31Z emma joined #lisp 2014-09-08T22:10:42Z pillton joined #lisp 2014-09-08T22:10:45Z drmeiste_ quit (Remote host closed the connection) 2014-09-08T22:14:41Z zwer__n quit (Remote host closed the connection) 2014-09-08T22:15:05Z zwer__n joined #lisp 2014-09-08T22:15:44Z slyrus_ joined #lisp 2014-09-08T22:17:10Z zwer__n is now known as zwer 2014-09-08T22:17:57Z dim: Xach: for the book-sized editing you're mentioning at twitter, did you condiser pandoc and markdown? 2014-09-08T22:18:34Z slyrus quit (Ping timeout: 252 seconds) 2014-09-08T22:18:38Z slyrus_ is now known as slyrus 2014-09-08T22:18:47Z dim found pandoc to be a killer tool, especially so when producing PDFs with latex as an intermediate format 2014-09-08T22:19:06Z logand` joined #lisp 2014-09-08T22:22:48Z logand quit (Ping timeout: 255 seconds) 2014-09-08T22:25:27Z drmeister quit (Remote host closed the connection) 2014-09-08T22:25:44Z paddymahoney joined #lisp 2014-09-08T22:26:23Z drmeister joined #lisp 2014-09-08T22:28:13Z ustunozg_ joined #lisp 2014-09-08T22:32:04Z ustunozgur quit (Ping timeout: 272 seconds) 2014-09-08T22:35:54Z EvW1 quit (Quit: EvW1) 2014-09-08T22:39:55Z Shinmera quit (Quit: ZzzZ) 2014-09-08T22:42:30Z normanrichards joined #lisp 2014-09-08T22:44:27Z kobain joined #lisp 2014-09-08T22:45:01Z kobain quit (Max SendQ exceeded) 2014-09-08T22:45:19Z kobain joined #lisp 2014-09-08T22:45:55Z kobain quit (Max SendQ exceeded) 2014-09-08T22:46:16Z kobain joined #lisp 2014-09-08T22:46:53Z kobain quit (Max SendQ exceeded) 2014-09-08T22:47:10Z kobain joined #lisp 2014-09-08T22:47:36Z Xach: dim: i thought about markdown but didn't hear good stuff about it for larger project. 2014-09-08T22:47:39Z Xach: projects. 2014-09-08T22:47:47Z Xach: haven't heard about pandoc. 2014-09-08T22:48:09Z Xach: i want something i can author fully & happily in emacs. 2014-09-08T22:48:18Z kobain quit (Max SendQ exceeded) 2014-09-08T22:48:28Z Xach: (this is for quicklisp documentation. i'd like to start soon, so i will probably just pick something and run with it and stop flailing.) 2014-09-08T22:48:37Z kobain joined #lisp 2014-09-08T22:48:39Z jkaye quit (Remote host closed the connection) 2014-09-08T22:49:11Z jkaye joined #lisp 2014-09-08T22:49:14Z kobain quit (Max SendQ exceeded) 2014-09-08T22:49:21Z fortitude quit (Quit: leaving) 2014-09-08T22:49:37Z kobain joined #lisp 2014-09-08T22:50:13Z kobain quit (Max SendQ exceeded) 2014-09-08T22:50:31Z kobain joined #lisp 2014-09-08T22:50:53Z blakbunnie27 quit (Quit: EliteBNC free bnc service - http://elitebnc.org - be a part of the Elite!) 2014-09-08T22:52:45Z rvirding_ is now known as rvirding 2014-09-08T22:53:08Z slyrus: smarkup! 2014-09-08T22:53:12Z jkaye quit (Ping timeout: 245 seconds) 2014-09-08T22:54:34Z normanrichards quit 2014-09-08T22:54:37Z Sgeo joined #lisp 2014-09-08T22:56:44Z Oberon4278 quit 2014-09-08T22:57:44Z Vutral joined #lisp 2014-09-08T22:58:32Z dto: Xach: you're making a book? 2014-09-08T22:59:51Z Xach: dto: sort of 2014-09-08T23:00:12Z DrCode quit (Remote host closed the connection) 2014-09-08T23:00:14Z vaporatorius quit (Remote host closed the connection) 2014-09-08T23:01:04Z DrCode joined #lisp 2014-09-08T23:01:16Z dto: Xach: some kind of compilation of quicklisp docs? 2014-09-08T23:01:26Z dto: Xach: i've had good experiences with org-mode as a documentation format 2014-09-08T23:01:57Z Xach: dto: Yes. 2014-09-08T23:02:07Z dto: hey sounds like a fun project 2014-09-08T23:04:24Z dto: Xach i was going to link to your "How to get help with lisp" post in my xelf docs if that's ok. 2014-09-08T23:04:53Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T23:06:30Z kobain quit (Read error: Connection timed out) 2014-09-08T23:07:33Z kobain joined #lisp 2014-09-08T23:07:50Z Xach: Sure 2014-09-08T23:08:10Z hiroakip quit (Ping timeout: 272 seconds) 2014-09-08T23:08:24Z kobain quit (Max SendQ exceeded) 2014-09-08T23:08:42Z kobain joined #lisp 2014-09-08T23:09:23Z hiroakip joined #lisp 2014-09-08T23:15:23Z dmiles joined #lisp 2014-09-08T23:15:23Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-08T23:15:34Z wasamasa: hmm 2014-09-08T23:15:35Z Bicyclidine joined #lisp 2014-09-08T23:16:09Z wasamasa: I should investigate into cl-docutils and whether it would make sense to rewrite my almost complete blog engine in common lisp I originally wrote in python 2014-09-08T23:16:37Z wasamasa: since all the common lisp knowledge I have comes from using cl-loop in emacs 2014-09-08T23:17:17Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-08T23:17:50Z Px12 joined #lisp 2014-09-08T23:19:48Z blakbunnie27 joined #lisp 2014-09-08T23:23:24Z matko quit (Read error: Connection reset by peer) 2014-09-08T23:25:42Z Vivitron joined #lisp 2014-09-08T23:28:57Z jasom: wasamasa: I've done straight ports fromi python to lisp before 2014-09-08T23:29:24Z jasom: wasamasa: only 2 things that are hard are truthyness and yield statments 2014-09-08T23:29:34Z Jesin joined #lisp 2014-09-08T23:30:01Z drmeister quit (Remote host closed the connection) 2014-09-08T23:30:15Z drmeister joined #lisp 2014-09-08T23:31:08Z Vutral joined #lisp 2014-09-08T23:32:17Z jasom: wasamasa: but I likely have more common lisp knowledge than you (I've never written any non-trivial elisp though). 2014-09-08T23:32:50Z rme quit (Quit: rme) 2014-09-08T23:34:46Z blakbunnie27 quit (Ping timeout: 272 seconds) 2014-09-08T23:35:57Z jtza8 quit (Remote host closed the connection) 2014-09-08T23:36:20Z normanrichards joined #lisp 2014-09-08T23:37:38Z normanrichards quit (Client Quit) 2014-09-08T23:38:17Z normanrichards joined #lisp 2014-09-08T23:39:25Z Vutral quit (Ping timeout: 260 seconds) 2014-09-08T23:40:14Z urandom__ quit (Quit: Konversation terminated!) 2014-09-08T23:40:26Z zophy quit (Ping timeout: 276 seconds) 2014-09-08T23:43:37Z normanrichards quit (Ping timeout: 272 seconds) 2014-09-08T23:45:12Z stepnem quit (Ping timeout: 246 seconds) 2014-09-08T23:46:19Z normanrichards joined #lisp 2014-09-08T23:48:49Z defaultxr joined #lisp 2014-09-08T23:49:55Z DataLinkDroid joined #lisp 2014-09-08T23:53:15Z dkcl quit (Ping timeout: 246 seconds) 2014-09-09T00:00:45Z slyrus_ joined #lisp 2014-09-09T00:01:32Z edgar-rft quit (Quit: no meaningful message available) 2014-09-09T00:02:42Z slyrus quit (Ping timeout: 255 seconds) 2014-09-09T00:02:46Z slyrus_ is now known as slyrus 2014-09-09T00:04:57Z Bicyclidine quit (Ping timeout: 255 seconds) 2014-09-09T00:05:18Z blakbunnie27 joined #lisp 2014-09-09T00:07:12Z varjag quit (Quit: Connection closed for inactivity) 2014-09-09T00:08:37Z zeitue joined #lisp 2014-09-09T00:09:36Z zRecursive joined #lisp 2014-09-09T00:09:50Z oleo is now known as Guest19128 2014-09-09T00:11:27Z oleo__ joined #lisp 2014-09-09T00:12:22Z paddymahoney quit (Ping timeout: 245 seconds) 2014-09-09T00:13:35Z Guest19128 quit (Ping timeout: 276 seconds) 2014-09-09T00:13:41Z blakbunnie27 quit (Quit: EliteBNC free bnc service - http://elitebnc.org - be a part of the Elite!) 2014-09-09T00:17:46Z duggiefresh joined #lisp 2014-09-09T00:25:11Z momo-reina joined #lisp 2014-09-09T00:27:05Z Bicyclidine joined #lisp 2014-09-09T00:29:21Z cite-reader quit (Quit: leaving) 2014-09-09T00:29:27Z xyjprc joined #lisp 2014-09-09T00:30:02Z ustunozg_ quit (Remote host closed the connection) 2014-09-09T00:30:03Z drmeister quit (Remote host closed the connection) 2014-09-09T00:30:34Z sheilong joined #lisp 2014-09-09T00:30:36Z drmeister joined #lisp 2014-09-09T00:31:03Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-09T00:31:51Z fragamus joined #lisp 2014-09-09T00:32:14Z rme joined #lisp 2014-09-09T00:32:38Z erts joined #lisp 2014-09-09T00:32:39Z DataLinkDroid quit (Quit: Disconnecting -- bye) 2014-09-09T00:32:51Z dto quit (Ping timeout: 255 seconds) 2014-09-09T00:32:57Z bcoburn quit (Remote host closed the connection) 2014-09-09T00:33:07Z erts left #lisp 2014-09-09T00:33:53Z erts joined #lisp 2014-09-09T00:34:10Z erts left #lisp 2014-09-09T00:38:16Z strg quit (Quit: Linkinus - http://linkinus.com) 2014-09-09T00:41:49Z CrazyEddy joined #lisp 2014-09-09T00:42:48Z blakbunnie27 joined #lisp 2014-09-09T00:45:00Z slyrus quit (Ping timeout: 255 seconds) 2014-09-09T00:49:47Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-09T00:49:57Z Longlius joined #lisp 2014-09-09T00:50:46Z drmeiste_ joined #lisp 2014-09-09T00:54:02Z harish quit (Ping timeout: 252 seconds) 2014-09-09T00:56:12Z circ-user-PehT0 joined #lisp 2014-09-09T00:56:34Z circ-user-PehT0: scheme 2014-09-09T01:00:33Z zRecursive: ? 2014-09-09T01:00:47Z Shaftoe___ joined #lisp 2014-09-09T01:00:57Z circ-user-PehT0 quit (Remote host closed the connection) 2014-09-09T01:02:57Z Px12 quit (Ping timeout: 264 seconds) 2014-09-09T01:05:32Z drmeiste_ quit (Remote host closed the connection) 2014-09-09T01:05:49Z CrazyEddy joined #lisp 2014-09-09T01:07:33Z innertracks joined #lisp 2014-09-09T01:07:57Z jlongster quit (Ping timeout: 255 seconds) 2014-09-09T01:09:56Z drmeiste_ joined #lisp 2014-09-09T01:15:16Z prxq joined #lisp 2014-09-09T01:18:32Z prxq_ quit (Ping timeout: 245 seconds) 2014-09-09T01:18:57Z Vutral joined #lisp 2014-09-09T01:19:45Z momo-reina quit (Remote host closed the connection) 2014-09-09T01:20:59Z optikalmouser joined #lisp 2014-09-09T01:22:36Z careless-lisper joined #lisp 2014-09-09T01:27:13Z Vutral quit (Ping timeout: 260 seconds) 2014-09-09T01:28:48Z Vutral_ joined #lisp 2014-09-09T01:28:53Z Vutral_ quit (Excess Flood) 2014-09-09T01:30:12Z Bicyclidine quit (Ping timeout: 246 seconds) 2014-09-09T01:36:46Z innertracks quit (Ping timeout: 268 seconds) 2014-09-09T01:37:50Z jlongster joined #lisp 2014-09-09T01:40:29Z bcoburn joined #lisp 2014-09-09T01:40:41Z dsksd joined #lisp 2014-09-09T01:43:57Z Bicyclidine joined #lisp 2014-09-09T01:44:43Z drmeiste_: Grrr, cl-store does not handle references properly: https://gist.github.com/drmeister/c0089c5286762a11f518 2014-09-09T01:45:33Z drmeiste_: When I create two atoms and bond them to each other, serialize the molecule, read the molecule back in and compare the bonded atom of one atom to the other atom, they are not EQ. 2014-09-09T01:46:10Z Bicyclidine: Does it claim to? 2014-09-09T01:46:22Z Bicyclidine: ah, *check-for-circs* 2014-09-09T01:47:03Z drmeiste_: Right, and cl-store:*check-for-circs* --> T 2014-09-09T01:47:30Z work_op: has #lisp heard of SICL? (https://github.com/robert-strandh/SICL) 2014-09-09T01:47:36Z drmeiste_: Yes. 2014-09-09T01:47:40Z drmeiste_: work_op: Yes. 2014-09-09T01:48:08Z drmeiste_: Are you commenting on the posting to Hacker news re: SICL? 2014-09-09T01:48:10Z normanrichards quit 2014-09-09T01:48:10Z drmeister quit (Remote host closed the connection) 2014-09-09T01:48:24Z drmeister joined #lisp 2014-09-09T01:48:35Z work_op: thats how i found out, but most of HN users are morons. 2014-09-09T01:48:41Z Guest25933 quit (Ping timeout: 260 seconds) 2014-09-09T01:48:47Z work_op: i hadnt heard of it before the post 2014-09-09T01:48:52Z pillton: Heh, beach will be sending a big cheque to his PR department. 2014-09-09T01:49:15Z Blkt quit (Read error: Connection reset by peer) 2014-09-09T01:49:21Z Blkt joined #lisp 2014-09-09T01:49:59Z easye quit (Read error: Connection reset by peer) 2014-09-09T01:50:04Z lacedaemon joined #lisp 2014-09-09T01:50:05Z drmeiste_: It's a project that is under active development. I don't know why the HN poster felt it necessary to post on it. I didn't get the sense he contacted the author before posting. 2014-09-09T01:50:05Z cpt_nemo quit (Ping timeout: 260 seconds) 2014-09-09T01:50:12Z cpt_nemo joined #lisp 2014-09-09T01:50:17Z fe[nl]ix quit (Read error: Connection reset by peer) 2014-09-09T01:50:51Z easye joined #lisp 2014-09-09T01:51:36Z mhd quit (Connection reset by peer) 2014-09-09T01:51:37Z benny joined #lisp 2014-09-09T01:51:38Z vanila quit (Remote host closed the connection) 2014-09-09T01:51:38Z benny is now known as Guest72843 2014-09-09T01:51:38Z mhd quit (Read error: Connection reset by peer) 2014-09-09T01:51:45Z jsnell_: it'd be pretty boring to read a site that only contained links to dead projects 2014-09-09T01:51:48Z work_op: drmeiste_: welcome to HN 2014-09-09T01:52:02Z dlowe: drmeiste_: I thought that was kind of the point of cl-store 2014-09-09T01:52:07Z mhd joined #lisp 2014-09-09T01:52:11Z work_op: they have been known to post shit marked "dont post to HN" 2014-09-09T01:52:21Z drmeiste_: Now beach may be fielding emails asking "how do I get this to work", "why doesn't this work?" 2014-09-09T01:53:09Z drmeiste_: I'm not open sourcing my project until I've written my own HN & reddit/r/programming posts. 2014-09-09T01:53:23Z drmeiste_: dlowe: I thought so too. 2014-09-09T01:53:42Z jsnell_: you're wildly overestimating both the likelihood of a random HN reader trying it out, and of a random user contacting the author if something doesn't seem to work 2014-09-09T01:54:03Z zz_karupa is now known as karupa 2014-09-09T01:54:04Z Bicyclidine: drmeiste_: well, anyway, that seems like a bug, if only in documentation. might wanna ask the maintainers what's up 2014-09-09T01:54:09Z jsnell_: it's of course very rude to post something to social aggregator sites if the author has explicitly asked not to 2014-09-09T01:54:19Z drmeiste_: jsnell_: Perhaps. 2014-09-09T01:55:20Z alchemis7 quit (Quit: @) 2014-09-09T01:57:17Z drmeiste_: Hmm, cl-store mailing lists are 404 and there are no email addresses. 2014-09-09T01:57:49Z alchemis7 joined #lisp 2014-09-09T02:00:14Z spacebat joined #lisp 2014-09-09T02:00:31Z normanrichards joined #lisp 2014-09-09T02:01:05Z Vutral joined #lisp 2014-09-09T02:01:05Z Vutral quit (Changing host) 2014-09-09T02:01:05Z Vutral joined #lisp 2014-09-09T02:01:14Z theos quit (Disconnected by services) 2014-09-09T02:01:16Z Vutral quit (Excess Flood) 2014-09-09T02:01:18Z drmeiste_: I posted an issue on github. But there have been no updates in a year. (sigh) 2014-09-09T02:01:34Z rme: It appears that common-lisp.net has still not been revitalized. 2014-09-09T02:01:48Z theos joined #lisp 2014-09-09T02:04:22Z Bicyclidine quit (Ping timeout: 245 seconds) 2014-09-09T02:04:33Z fragamus quit (Quit: My iMac has gone to sleep. ZZZzzz…) 2014-09-09T02:09:05Z drmeiste_: On the latest SBCL: (ql:quickload "cl-conspack") fails because it needs fast-io which needs static-vectors which can't load "cffi-groveler". Does anyone know what "cffi-groveler" is? 2014-09-09T02:10:51Z phadthai: hmm this reminds me that when I visit common-lisp.net, I can easily find some hosted projects via the community link, but although I know that it also hosts some mailing lists, I can't find those 2014-09-09T02:11:34Z phadthai: (other than the lists I'm already subscribed to, of course) 2014-09-09T02:12:17Z phadthai: it seems that some time ago I couldn't even find the list of projects it hosted, but I can see it now 2014-09-09T02:12:22Z harish joined #lisp 2014-09-09T02:12:42Z drmeiste_: phadthai: Could you post the URL for that list? 2014-09-09T02:15:03Z phadthai: drmeiste_: hmm I think the only cl-net hosted mailing list I'm still subscribed to now is the cl-pros one (are you familiar with that one?) 2014-09-09T02:16:02Z phadthai: ah the link I kept in my archives still works for this one: http://mailman.common-lisp.net/cgi-bin/mailman/listinfo/pro 2014-09-09T02:18:33Z theos quit (Ping timeout: 264 seconds) 2014-09-09T02:19:34Z theos joined #lisp 2014-09-09T02:19:39Z phadthai: the audience of this list is not well defined, but I've seen some say that it was for people getting payed to code in Lisp (professionals), implementors needing to reach consensus, and/or general Lisp knowledgeable people (basically it's not a tutorial or newbies list) 2014-09-09T02:22:23Z phadthai: http://mailman.common-lisp.net/cgi-bin/mailman/listinfo/ interesting that shows more lists 2014-09-09T02:22:46Z normanrichards quit (Read error: Connection reset by peer) 2014-09-09T02:25:08Z ndrei quit (Ping timeout: 272 seconds) 2014-09-09T02:28:05Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T02:29:41Z mhd joined #lisp 2014-09-09T02:29:42Z Puffin quit (Ping timeout: 246 seconds) 2014-09-09T02:34:27Z work_op: drmeiste_: on the topic of HN/redditors, i have what i consider a brilliant idea about my own project. 2014-09-09T02:35:08Z work_op: i am going to release videos of products as they existed months before. so the only content they have is outdated. when a competitor rears its head, i can boost the project forward in time 2014-09-09T02:36:18Z gaze__ joined #lisp 2014-09-09T02:36:40Z gaze__: Hey guys, why am I not being prompted in slime when I type comma at the repl to activate a shortcut? 2014-09-09T02:37:20Z gaze__: and clearly I don't ",cd blah" at the repl because then I get a "comma not inside a backquote" 2014-09-09T02:38:11Z phadthai: are you sure that you're in the slime repl, and not in the inferior lisp buffer? 2014-09-09T02:38:45Z arbscht quit (Ping timeout: 240 seconds) 2014-09-09T02:39:06Z gaze__: not at all 2014-09-09T02:39:50Z gaze__: if I c-c c-z in a lisp-mode enabled buffer, I'll go to the slime repl yes? 2014-09-09T02:41:56Z work_op: yes 2014-09-09T02:43:01Z gaze__: yep, well then I'm definitely in the slime repl 2014-09-09T02:43:02Z drmeiste_ quit (Remote host closed the connection) 2014-09-09T02:43:33Z jackdaniel quit (Ping timeout: 240 seconds) 2014-09-09T02:44:30Z jackdaniel joined #lisp 2014-09-09T02:45:59Z theos quit (Disconnected by services) 2014-09-09T02:46:07Z drmeiste_ joined #lisp 2014-09-09T02:46:17Z phadthai: hmm C-c C-z doesn't seem to work for me if at the inferior-lisp REPL, but C-x b repl works 2014-09-09T02:46:28Z theos joined #lisp 2014-09-09T02:48:13Z drmeister quit (Remote host closed the connection) 2014-09-09T02:49:01Z drmeister joined #lisp 2014-09-09T02:53:48Z zwer quit (Remote host closed the connection) 2014-09-09T02:55:24Z gaze__: yep just tried aquamacs as well 2014-09-09T02:55:33Z gaze__: and I tried with sbcl and ccl 2014-09-09T02:55:40Z gaze__: this is really irritating 2014-09-09T02:56:01Z zwer joined #lisp 2014-09-09T02:56:43Z bcoburn quit (Remote host closed the connection) 2014-09-09T02:56:57Z beach joined #lisp 2014-09-09T02:57:08Z beach: Good morning everyone! 2014-09-09T03:02:08Z zophy joined #lisp 2014-09-09T03:02:15Z gaze__: jesus christ slime-repl ended up in a contrib and now it has to be enabled explicitly 2014-09-09T03:02:18Z bgs100 quit (Quit: bgs100) 2014-09-09T03:02:22Z gaze__: how confusing is that? 2014-09-09T03:03:05Z namespace joined #lisp 2014-09-09T03:03:08Z gaze__: and evidently if I c-c c-z in a lisp-mode enabled buffer without the slime-repl enabled, I just go to inferior-lisp 2014-09-09T03:03:29Z namespace: In common lisp how do I update a variable in lexical scope, eg. in a let statement? 2014-09-09T03:03:55Z drmeiste_: Hello beach. 2014-09-09T03:04:45Z theos quit (Ping timeout: 264 seconds) 2014-09-09T03:05:22Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T03:05:56Z namespace: Ah, setq does it. 2014-09-09T03:06:33Z dsksd: bea': 'morning. 2014-09-09T03:07:23Z beach: namespace: Yes, or SETF. There seems to be an agreement to prefer SETF to SETQ. 2014-09-09T03:07:46Z dsksd: agreement? 2014-09-09T03:08:16Z gaze__ left #lisp 2014-09-09T03:08:18Z beach: dsksd: As in "that's what most Lisp programmers so, and that's what they recommend others do too". 2014-09-09T03:08:26Z beach: s/so/do/ 2014-09-09T03:08:32Z beach is not quite awake yet. 2014-09-09T03:09:33Z beach: drmeiste_: I implemented the environment functions in Cleavir. I am now working on moving generate-ast from SICL to Cleavir, and making it implementation-independent by making it use the new environment functions. 2014-09-09T03:10:20Z dsksd: despite your pajamas and bed-head, i got that point. (-: 2014-09-09T03:10:41Z beach: dsksd: Thanks! :) 2014-09-09T03:10:52Z jyuan joined #lisp 2014-09-09T03:11:06Z drmeiste_: beach: That sounds great - I'm very excited to get started. In the meantime I'm trying to get some kind of Common Lisp serialization package to work properly. 2014-09-09T03:11:41Z beach: drmeiste_: What kind of stuff do you want to serialize? 2014-09-09T03:11:59Z beach: drmeiste_: I just use the Lisp reader for that when I need it. 2014-09-09T03:13:06Z drmeiste_: I want to define structures that refer to each other like this: https://gist.github.com/drmeister/ee4f366da551721b879f 2014-09-09T03:14:16Z beach quit (Read error: Connection reset by peer) 2014-09-09T03:14:23Z drmeiste_: I define two atoms and create a bond between them. h1->h2 and h2->h1 When I serialize h1 and h2 and restore them with cl-store I get h1->h2' and h2->h1' and h1 != h1' 2014-09-09T03:14:50Z drmeiste_: And cl-store says it handles circularities. 2014-09-09T03:14:51Z mhd joined #lisp 2014-09-09T03:16:02Z beach joined #lisp 2014-09-09T03:16:19Z phadthai: dsksd: since SETF is a macro, it can be as efficient as SETQ for the common case, yet can expand for more complex cases (like an overridable setter-method); however, also note that setting a dynamically bound variable will only set it at that binding level 2014-09-09T03:16:27Z beach: Sorry, computer crashed. :( 2014-09-09T03:16:49Z drmeiste_: The whole reason I'm developing Clasp is to support scientific programming. I will use OpenMPI to run tens of thousands of copies of Clasp on tens of thousands of processors and send serialized objects back and forth to each other. 2014-09-09T03:17:08Z drmeiste_: beach: Ah, you missed my response: I define two atoms and create a bond between them. h1->h2 and h2->h1 When I serialize h1 and h2 and restore them with cl-store I get h1->h2' and h2->h1' and h1 != h1' 2014-09-09T03:17:20Z theos joined #lisp 2014-09-09T03:17:44Z beach: drmeiste_: If you use *print-circle*, the printer/reader will take care of it for you. 2014-09-09T03:17:52Z drmeiste_: If I generate a molecule on one processor and serialize/send/deserialize it on another and I don't get the same structure then everything breaks. 2014-09-09T03:18:35Z beach: clhs *print-cirle* 2014-09-09T03:18:35Z specbot: Couldn't find anything for *print-cirle*. 2014-09-09T03:18:39Z beach: clhs *print-circle* 2014-09-09T03:18:40Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/v_pr_cir.htm 2014-09-09T03:19:15Z drmeiste_: But the printer/reader won't handle hash-tables and how do I get it to work with C++ objects? 2014-09-09T03:19:18Z beach: drmeiste_: The CL printer/reader will use #n= and #n# to preserve the structure. 2014-09-09T03:19:35Z beach: drmeiste_: You program it. 2014-09-09T03:19:54Z careless-lisper: beach: I recently wondered about that - is it reasonable to (setf *print-circle* t) at the REPL if you're dealing with structures containing cycles? 2014-09-09T03:20:00Z drmeiste_: I thought it wasn't up to the task and that is why people write serializers. 2014-09-09T03:20:10Z Bike: careless-lisper: sure. 2014-09-09T03:20:18Z beach: When I use it for standard objects, I use the notation [package-name::class-name ] 2014-09-09T03:20:51Z Bike: drmeiste_: the lisp printer is super overengineered, it can do anything if you define the methods, and it should handle circularities. 2014-09-09T03:20:52Z beach: careless-lisper: What Bike said. That's what it's for. 2014-09-09T03:20:56Z dsksd: phadthai: nod. thanks. 2014-09-09T03:21:51Z beach: careless-lisper: I used this method to serialize the contents of an entire information system. Works like a charm. 2014-09-09T03:22:12Z beach: careless-lisper: And I use it in Gsharp too. 2014-09-09T03:22:27Z careless-lisper: beach: ok, thanks. And I enjoyed your SICL talk in Mtl! 2014-09-09T03:22:44Z nipra joined #lisp 2014-09-09T03:22:56Z Bike: careless-lisper: in general you can do whatever you want in the repl. i mean, if you fuck it up you can just restart the system. 2014-09-09T03:23:12Z beach: careless-lisper: Thanks! I guess I can't recall the correspondence between nicks and people! :) 2014-09-09T03:23:17Z arbscht joined #lisp 2014-09-09T03:23:18Z dsksd: that was pretty good. 2014-09-09T03:23:29Z dsksd also listened to beach. 2014-09-09T03:24:00Z beach: Wow! :) 2014-09-09T03:24:05Z careless-lisper: bike: True. I find I do that more often than I'd like. :) 2014-09-09T03:26:42Z dsksd: what does richard stallman think of setf? 2014-09-09T03:27:14Z Bike: is it important to know that? 2014-09-09T03:28:35Z jlongster quit (Ping timeout: 276 seconds) 2014-09-09T03:28:36Z drmeiste_: Ok, this works. https://gist.github.com/drmeister/462c935e7f8ab6b2573e 2014-09-09T03:29:13Z drmeiste_: What is the point of cl-store? 2014-09-09T03:29:55Z Bike: a serialization format more compact than source text, i'm guessing 2014-09-09T03:29:59Z beach: drmeiste_: Are you saying, you managed to do it, despite lack of confidence? 2014-09-09T03:30:27Z Bike: ah, yes, it has multiple backends. 2014-09-09T03:32:21Z beach: Can someone point me to the original Hacker News article about SICL? 2014-09-09T03:32:27Z drmeiste_: That's more or less a rhetorical question. 2014-09-09T03:32:27Z drmeiste_: But you can't serialize hash-tables this way - are there any other caveats? 2014-09-09T03:32:41Z pjb` joined #lisp 2014-09-09T03:32:56Z TDT`` joined #lisp 2014-09-09T03:32:57Z beach: drmeiste_: Why would you not be able to serialize hash tables? 2014-09-09T03:33:17Z TDog joined #lisp 2014-09-09T03:33:26Z Bike: because implementations don't have to be able to print them readably 2014-09-09T03:33:30Z _tca_ joined #lisp 2014-09-09T03:33:45Z Bike: and you couldn't define a print-object method for them, i suppose. 2014-09-09T03:33:45Z victor_lowther__ joined #lisp 2014-09-09T03:33:46Z manfoo7` joined #lisp 2014-09-09T03:33:51Z guaqua`` joined #lisp 2014-09-09T03:33:57Z aksatac__ joined #lisp 2014-09-09T03:34:00Z teiresias quit (Ping timeout: 252 seconds) 2014-09-09T03:34:01Z teiresias joined #lisp 2014-09-09T03:34:24Z beach: drmeiste_: Program the printer to print them (say) like this: { (key1 val1) (key2 val2) ...}, then write a reader macro for `{' that creates the hash table from that notation. 2014-09-09T03:34:38Z brucem_ joined #lisp 2014-09-09T03:34:57Z careless-lisper: beach: https://news.ycombinator.com/item?id=8284835 2014-09-09T03:35:02Z brucem_ quit (Changing host) 2014-09-09T03:35:02Z brucem_ joined #lisp 2014-09-09T03:35:06Z Bike: can you, though? I guess you could do something with the pretty printer instead of print object, maybe? 2014-09-09T03:35:15Z beach: careless-lisper: Thanks! 2014-09-09T03:35:22Z Amaan_ joined #lisp 2014-09-09T03:35:47Z emma_ joined #lisp 2014-09-09T03:36:02Z mingvs_ joined #lisp 2014-09-09T03:36:05Z setheus_ joined #lisp 2014-09-09T03:36:05Z c74d quit (Killed (hobana.freenode.net (Nickname regained by services))) 2014-09-09T03:36:06Z honkfest1val joined #lisp 2014-09-09T03:36:11Z Patzy_ joined #lisp 2014-09-09T03:36:16Z spockokt_ joined #lisp 2014-09-09T03:36:26Z misv_ joined #lisp 2014-09-09T03:36:29Z kirin` quit (Disconnected by services) 2014-09-09T03:36:32Z dsksd: Bike: as important as what colour tie you happen to choose to wear on a monday morning. in spite of that i'm curious. 2014-09-09T03:36:36Z p_l_ joined #lisp 2014-09-09T03:36:49Z kirin` joined #lisp 2014-09-09T03:36:49Z brucem quit (Disconnected by services) 2014-09-09T03:36:55Z brucem_ is now known as brucem 2014-09-09T03:37:01Z dsksd: the man may not be important his work is 2014-09-09T03:37:06Z dsksd: <: 2014-09-09T03:37:59Z c74d joined #lisp 2014-09-09T03:38:40Z oleo joined #lisp 2014-09-09T03:38:43Z teiresias quit (*.net *.split) 2014-09-09T03:38:43Z drmeister quit (*.net *.split) 2014-09-09T03:38:44Z drmeiste_ quit (*.net *.split) 2014-09-09T03:38:44Z oleo__ quit (*.net *.split) 2014-09-09T03:38:44Z malglim quit (*.net *.split) 2014-09-09T03:38:44Z frkout quit (*.net *.split) 2014-09-09T03:38:44Z yauz quit (*.net *.split) 2014-09-09T03:38:44Z cmatei quit (*.net *.split) 2014-09-09T03:38:45Z Krystof quit (*.net *.split) 2014-09-09T03:38:45Z Kruppe quit (*.net *.split) 2014-09-09T03:38:45Z eigenlicht_ quit (*.net *.split) 2014-09-09T03:38:45Z mindCrime_ quit (*.net *.split) 2014-09-09T03:38:45Z jayne quit (*.net *.split) 2014-09-09T03:38:45Z tstc` quit (*.net *.split) 2014-09-09T03:38:45Z White_Flame quit (*.net *.split) 2014-09-09T03:38:45Z gensym quit (*.net *.split) 2014-09-09T03:38:45Z schoppenhauer quit (*.net *.split) 2014-09-09T03:38:45Z Jubb quit (*.net *.split) 2014-09-09T03:39:06Z dlowe_ joined #lisp 2014-09-09T03:39:23Z capitaomorte` joined #lisp 2014-09-09T03:39:42Z Vutral joined #lisp 2014-09-09T03:39:52Z s_e_ joined #lisp 2014-09-09T03:40:33Z spacebat quit (*.net *.split) 2014-09-09T03:40:34Z emma quit (*.net *.split) 2014-09-09T03:40:34Z whmark quit (*.net *.split) 2014-09-09T03:40:34Z Patzy quit (*.net *.split) 2014-09-09T03:40:35Z capitaomorte quit (*.net *.split) 2014-09-09T03:40:35Z Amaan quit (*.net *.split) 2014-09-09T03:40:35Z cods quit (*.net *.split) 2014-09-09T03:40:35Z mingvs quit (*.net *.split) 2014-09-09T03:40:35Z pjb quit (*.net *.split) 2014-09-09T03:40:36Z setheus quit (*.net *.split) 2014-09-09T03:40:36Z s_e quit (*.net *.split) 2014-09-09T03:40:36Z clop2 quit (*.net *.split) 2014-09-09T03:40:36Z p_l quit (*.net *.split) 2014-09-09T03:40:37Z spockokt quit (*.net *.split) 2014-09-09T03:40:37Z misv quit (*.net *.split) 2014-09-09T03:40:37Z mal_ quit (*.net *.split) 2014-09-09T03:40:37Z victor_lowther_ quit (*.net *.split) 2014-09-09T03:40:37Z guaqua` quit (*.net *.split) 2014-09-09T03:40:37Z jonh quit (*.net *.split) 2014-09-09T03:40:38Z ggherdov quit (*.net *.split) 2014-09-09T03:40:38Z samebchase quit (*.net *.split) 2014-09-09T03:40:38Z manfoo7 quit (*.net *.split) 2014-09-09T03:40:38Z aksatac_ quit (*.net *.split) 2014-09-09T03:40:38Z dlowe quit (*.net *.split) 2014-09-09T03:40:38Z _tca quit (*.net *.split) 2014-09-09T03:40:39Z TDT` quit (*.net *.split) 2014-09-09T03:40:39Z honkfestival quit (*.net *.split) 2014-09-09T03:40:40Z dlowe_ is now known as dlowe 2014-09-09T03:41:00Z samebchase joined #lisp 2014-09-09T03:41:02Z cods joined #lisp 2014-09-09T03:41:39Z jonh joined #lisp 2014-09-09T03:41:57Z spacebat joined #lisp 2014-09-09T03:41:59Z Amaan_ is now known as Amaan 2014-09-09T03:42:02Z clop2 joined #lisp 2014-09-09T03:42:21Z kanru joined #lisp 2014-09-09T03:42:42Z teiresias joined #lisp 2014-09-09T03:42:42Z drmeister joined #lisp 2014-09-09T03:42:42Z drmeiste_ joined #lisp 2014-09-09T03:42:42Z malglim joined #lisp 2014-09-09T03:42:42Z frkout joined #lisp 2014-09-09T03:42:42Z yauz joined #lisp 2014-09-09T03:42:42Z cmatei joined #lisp 2014-09-09T03:42:42Z Krystof joined #lisp 2014-09-09T03:42:42Z Kruppe joined #lisp 2014-09-09T03:42:42Z eigenlicht_ joined #lisp 2014-09-09T03:42:42Z mindCrime_ joined #lisp 2014-09-09T03:42:42Z jayne joined #lisp 2014-09-09T03:42:42Z tstc` joined #lisp 2014-09-09T03:42:42Z White_Flame joined #lisp 2014-09-09T03:42:42Z gensym joined #lisp 2014-09-09T03:42:42Z schoppenhauer joined #lisp 2014-09-09T03:42:42Z Jubb joined #lisp 2014-09-09T03:43:17Z _tca_ is now known as _tca 2014-09-09T03:43:39Z victor_lowther__ is now known as victor_lowther_ 2014-09-09T03:45:21Z Vutral quit (Ping timeout: 260 seconds) 2014-09-09T03:45:23Z kpreid quit (Quit: Quitting) 2014-09-09T03:45:25Z gingerale joined #lisp 2014-09-09T03:45:37Z ggherdov_ joined #lisp 2014-09-09T03:45:51Z whmark joined #lisp 2014-09-09T03:46:14Z beach: drmeiste_: Did you manage to serialize hash tables? 2014-09-09T03:46:29Z kpreid joined #lisp 2014-09-09T03:46:33Z ggherdov_ is now known as ggherdov 2014-09-09T03:48:28Z teiresias quit (Changing host) 2014-09-09T03:48:28Z teiresias joined #lisp 2014-09-09T03:49:40Z drmeister quit (Ping timeout: 252 seconds) 2014-09-09T03:50:16Z drmeister joined #lisp 2014-09-09T03:50:20Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T03:50:37Z drmeister quit (Remote host closed the connection) 2014-09-09T03:50:49Z rme quit (Quit: rme) 2014-09-09T03:50:50Z drmeister joined #lisp 2014-09-09T03:50:52Z Jesin quit (Quit: Leaving) 2014-09-09T03:50:57Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-09T03:51:21Z renard_ quit (Quit: ZNC - http://znc.sourceforge.net) 2014-09-09T03:51:56Z drmeiste_: beach: The IRC channel split and the last thing I heard from you was: drmeiste_: You program it. 2014-09-09T03:51:58Z renard_ joined #lisp 2014-09-09T03:52:42Z jlongster joined #lisp 2014-09-09T03:52:52Z beach: drmeiste_: Oh! :( 2014-09-09T03:53:40Z beach: drmeiste_: Yeah, you program the printer and the reader to serialize hash tables. Not rocket science. 2014-09-09T03:53:57Z zophy quit (Ping timeout: 245 seconds) 2014-09-09T03:54:34Z Bike: i really am curious how programming the printer in this situation would be done. 2014-09-09T03:55:05Z drmeiste_: Ditto. Do you have code that implements that? 2014-09-09T03:55:14Z beach: Bike: Oh, I guess you are not really allowed to do that. 2014-09-09T03:55:36Z beach: So I guess you have to make your own my-print-object that calls print-object for everything else. 2014-09-09T03:55:37Z kpreid quit (Quit: Offline) 2014-09-09T03:55:47Z Bike: rocket science :/ 2014-09-09T03:56:26Z beach: 10 more lines of code. Unless I am missing something else. 2014-09-09T03:57:31Z Bike: what happens if your hash table has values that are standard-objects or otherwise compound, and have a hash table subelement? 2014-09-09T03:57:35Z duggiefresh quit 2014-09-09T03:57:49Z beach: :( 2014-09-09T03:57:52Z beach: Rocket science! 2014-09-09T03:58:15Z Bike: the whole point of this was circularity detection, so that's not just imaginary 2014-09-09T03:58:20Z drmeiste_: Right - this is why I turned to serialization packages - which as far as I can tell, are all broken. 2014-09-09T03:59:17Z drmeiste_: Or the ones that tout themselves as handling circularity are all broken. 2014-09-09T04:00:02Z mhd joined #lisp 2014-09-09T04:00:12Z oGMo: drmeiste_: i didn't see a bug report :p 2014-09-09T04:00:40Z work_op: freenode netsplits all the damn time, thats so amateur :( 2014-09-09T04:01:25Z oGMo: granted cl-conspack lacks a bit in the documentation and even example department 2014-09-09T04:01:44Z Bike: well, practically speaking i'd probably just complain to the implementation if i couldn't print hash tables and needed to 2014-09-09T04:01:56Z Bike: failing that i'd define a print-object method anyway. #yolo 2014-09-09T04:02:13Z drmeiste_: oGMo: For cl-store? I submitted an issue to github but the example code got mangled by github. I'm thinking about reposting it. 2014-09-09T04:02:24Z Svetlana quit (Quit: No Ping reply in 180 seconds.) 2014-09-09T04:02:25Z oGMo: drmeiste_: for conspack 2014-09-09T04:02:40Z drmeiste_: oGMo: Do you work on cl-conspack? 2014-09-09T04:02:44Z oGMo: drmeiste_: yeah 2014-09-09T04:03:05Z oGMo: iirc cl-store was somewhat fragile, i think i used it in CheckL 2014-09-09T04:03:37Z drmeiste_: Fantastic. That was my first choice but it has a lot of dependencies and it depends on fast-io which depends on static-vector which fails because it can't find cffi-grovel(ler)? 2014-09-09T04:03:47Z oGMo: ah doh 2014-09-09T04:04:13Z Bike: maybe you can use it without fast io? 2014-09-09T04:04:18Z drmeiste_: The CFFI dependency is what really shut me down. I haven't implemented CFFI in Clasp. 2014-09-09T04:04:33Z oGMo: yeah i'm trying to get away from that myself heh 2014-09-09T04:04:57Z kyl quit (Ping timeout: 260 seconds) 2014-09-09T04:04:59Z samebchase quit (Ping timeout: 276 seconds) 2014-09-09T04:05:27Z drmeiste_: Could you? The fast-io/static-vector/cffi dependency chain is what made me turn to cl-store. After a day I realized cl-store was broken. 2014-09-09T04:05:55Z oGMo: ah right static-vectors doesn't have anything in *features* 2014-09-09T04:06:17Z drmeiste_: Oh, the other thing that I really liked about cl-conspack is all I have to do to serialize my C++ classes is create an encode/decode method for each C++ class that returns/takes an a-list to represent the object. That is very convenient. 2014-09-09T04:06:56Z rvchangue quit (Ping timeout: 276 seconds) 2014-09-09T04:09:53Z drmeiste_: oGMo: I'd love to use cl-conspack in Clasp for my scientific programming. If you could see your way to removing those dependencies (or making them optional) I would be most appreciative. 2014-09-09T04:11:00Z samebchase joined #lisp 2014-09-09T04:11:11Z jegaxd26 joined #lisp 2014-09-09T04:11:47Z kyl joined #lisp 2014-09-09T04:12:38Z kpreid joined #lisp 2014-09-09T04:12:40Z oGMo: drmeiste_: yeah sec, i think i have an easy way to do it 2014-09-09T04:13:03Z emma_ is now known as emma 2014-09-09T04:13:52Z oGMo: ok i pushed an update to fast-io which should make that optional, should have thought of that solution awhile ago heh 2014-09-09T04:14:01Z drmeiste_: Just to underscore how serious I am, I implemented weak-key-hash-tables (in both the Boehm garbage collector and MPS) about a month ago for the sole purpose of supporting cl-conspack. 2014-09-09T04:14:08Z oGMo: drmeiste_: you'll have to pull from github for now, but 2014-09-09T04:14:13Z drmeiste_: Great! Thanks so much! 2014-09-09T04:14:16Z oGMo: yeah i recall this heh 2014-09-09T04:14:17Z oGMo: np 2014-09-09T04:15:39Z oGMo: er. well i'm not sure if it actually loads, but i can fix it if not 2014-09-09T04:16:03Z oGMo: ok yeah seems fine 2014-09-09T04:16:28Z careless-lisper quit (Ping timeout: 246 seconds) 2014-09-09T04:16:30Z drmeiste_: Do I have the right repo? This is reporting no changes have been made: https://github.com/conspack/cl-conspack 2014-09-09T04:16:57Z oGMo: drmeiste_: ah no just fast-io, https://github.com/rpav/fast-io 2014-09-09T04:17:40Z slyrus joined #lisp 2014-09-09T04:18:22Z abbe quit (Read error: Connection reset by peer) 2014-09-09T04:18:22Z abbe joined #lisp 2014-09-09T04:18:22Z Blkt quit (Quit: No Ping reply in 180 seconds.) 2014-09-09T04:18:25Z drmeiste_: Ok, got that. 2014-09-09T04:18:31Z Blkt joined #lisp 2014-09-09T04:18:33Z oGMo: also it's not really possible to express the dependency of the change in the asd to recompiling the file, so old fasls might be broken etc etc 2014-09-09T04:19:08Z kristof joined #lisp 2014-09-09T04:19:16Z nug700 joined #lisp 2014-09-09T04:19:22Z optikalmouser quit (Ping timeout: 245 seconds) 2014-09-09T04:20:02Z theseb quit (Quit: Leaving) 2014-09-09T04:21:06Z Shaftoe___ joined #lisp 2014-09-09T04:21:11Z drmeiste_: It's working. I haven't built any fasls with it given that it wouldn't compile. 2014-09-09T04:22:33Z oGMo: cool. it was a minor thing, i wish there were better ways to insert API like that into CL, but ah well 2014-09-09T04:23:26Z kristof: oGMo: what's the context of thst statement? 2014-09-09T04:23:52Z drmeiste_: As a chemist, wanting to use Common Lisp for chemistry I find it really, really unfortunate that ATOM is a standard Common Lisp symbol. 2014-09-09T04:24:18Z kristof: drmeiste_: shadowing import :P 2014-09-09T04:24:56Z |3b|: beach: "functionname"->"function-name" in 2.4.10 and 2.4.12 of cleavir.pdf, also don't see any way to add global functions/macros to environment? 2014-09-09T04:25:15Z innertracks joined #lisp 2014-09-09T04:25:35Z oGMo: kristof: specifically, static-vectors in fast-io; i.e. there's no generalized way to say "and when you make a , use this type" because API varies vastly .. i could probably support a generator/factory type model (i.e. supply a lambda that returns...) but thta's not particularly idiomatic and i'm not sure it's sufficient either 2014-09-09T04:26:09Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-09T04:26:59Z kristof: oGMo: I actually don't follow. Could you elaborate more? 2014-09-09T04:27:36Z oGMo: you sound suspiciously like eliza... 2014-09-09T04:27:39Z oGMo: ;) 2014-09-09T04:27:47Z kristof: Who? ._. 2014-09-09T04:27:56Z kristof: Is that a bot? Or a regular troll? 2014-09-09T04:28:03Z Shaftoe___ joined #lisp 2014-09-09T04:28:16Z nell joined #lisp 2014-09-09T04:28:26Z oGMo: kristof: in fast-io, i make either an array or a static-vector; two different function calls.. but say i wanted to support some arbitrary types-of-array or something 2014-09-09T04:28:30Z oGMo: kristof: M-x doctor 2014-09-09T04:29:14Z Shaftoe____ joined #lisp 2014-09-09T04:29:19Z kristof: oGMo: oh, ha! My favorite bot is the one that passef the turing test in the 70s by being rude and obscene. Gonzo was his name, maybe. 2014-09-09T04:29:46Z beach: |3b|: Thanks! 2014-09-09T04:30:05Z Blkt quit (Read error: Connection reset by peer) 2014-09-09T04:30:11Z Blkt joined #lisp 2014-09-09T04:30:24Z beach: |3b|: The only way global functions could be added would be by using eval-when, and that is taken care of by the EVAL generic function. 2014-09-09T04:30:25Z kushal joined #lisp 2014-09-09T04:30:38Z pjb` is now known as pjb 2014-09-09T04:31:05Z lacedaemon quit (Ping timeout: 260 seconds) 2014-09-09T04:31:24Z fe[nl]ix joined #lisp 2014-09-09T04:31:38Z oGMo: actually i guess i could make a GF that specialized on eql 'name to produce values too. hrm. i'm still half asleep i guess. i sortof like the lambda solution though 2014-09-09T04:32:21Z bit` quit (Ping timeout: 264 seconds) 2014-09-09T04:32:39Z beach: |3b|: Fixed! 2014-09-09T04:32:57Z Shaftoe___ quit (Ping timeout: 264 seconds) 2014-09-09T04:32:58Z Shaftoe____ is now known as Shaftoe___ 2014-09-09T04:33:36Z jlongste` joined #lisp 2014-09-09T04:33:36Z jlongste` quit (Remote host closed the connection) 2014-09-09T04:33:56Z kristof: oGMo: I'm sorry, what's wrong with passing :element-type to make array? 2014-09-09T04:34:10Z oGMo: kristof: what if you're not calling make-array? 2014-09-09T04:34:15Z drmeiste_: oGMo: So this exhausts the control stack in SBCL. https://gist.github.com/drmeister/bd5b72b3544e5fee7c21 2014-09-09T04:34:21Z Guest72843 quit (Ping timeout: 260 seconds) 2014-09-09T04:34:50Z kristof: oGMo: oh, you're talking specifically about the static vectors? 2014-09-09T04:34:56Z oGMo: drmeiste_: yeah, wrap encode calls in (tracking-refs () (encode ...)) or it doesn't do circularity 2014-09-09T04:34:58Z fe[nl]ix quit (Read error: Connection reset by peer) 2014-09-09T04:35:02Z abbe_ joined #lisp 2014-09-09T04:35:14Z fe[nl]ix joined #lisp 2014-09-09T04:35:16Z Blkt quit (Read error: Connection reset by peer) 2014-09-09T04:35:20Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T04:35:22Z Blkt joined #lisp 2014-09-09T04:35:36Z oGMo: drmeiste_: it's not the best API, but it's basically like *print-circle* 2014-09-09T04:36:13Z abbe quit (Ping timeout: 260 seconds) 2014-09-09T04:36:13Z cpt_nemo quit (Ping timeout: 260 seconds) 2014-09-09T04:36:20Z cpt_nemo joined #lisp 2014-09-09T04:36:23Z zophy joined #lisp 2014-09-09T04:36:38Z oGMo: kristof: in this case yes, but generalizing that to injecting substitute types there and similarly elsewhere 2014-09-09T04:36:52Z benny` joined #lisp 2014-09-09T04:37:20Z kristof: oGMo: can't we add a type declaration and call it a day? 2014-09-09T04:37:29Z oGMo: heh no 2014-09-09T04:37:39Z kristof: :( 2014-09-09T04:38:16Z kristof: Oh 2014-09-09T04:38:25Z dnm_ joined #lisp 2014-09-09T04:38:33Z innertracks quit (Ping timeout: 260 seconds) 2014-09-09T04:38:46Z dmiles_afk joined #lisp 2014-09-09T04:39:35Z kristof: actually yes 2014-09-09T04:39:47Z dnm quit (Ping timeout: 245 seconds) 2014-09-09T04:39:57Z dmiles quit (Ping timeout: 260 seconds) 2014-09-09T04:40:00Z bobbysmith007 quit (Ping timeout: 250 seconds) 2014-09-09T04:40:32Z clog quit (Ping timeout: 268 seconds) 2014-09-09T04:41:08Z innertracks joined #lisp 2014-09-09T04:42:10Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-09T04:42:28Z drmeiste_: oGMo: The fact that it works with circular references hides a multitude of sins wrt its API. https://gist.github.com/drmeister/0b1df2c566d2f05e7b47 2014-09-09T04:43:29Z drmeiste_: Thank you very much. Tomorrow I'll see if it works in Clasp. 2014-09-09T04:44:44Z mhd joined #lisp 2014-09-09T04:45:04Z drmeiste_: Not that there are sins in the API. That was a joke. 2014-09-09T04:45:07Z innertracks1 joined #lisp 2014-09-09T04:45:33Z innertracks quit (Ping timeout: 260 seconds) 2014-09-09T04:46:11Z kristof: oGMo: (declaim (type (static-vector TYPE-T 8) *your-vec*)) 2014-09-09T04:46:24Z pjb: vectors of quarks are atoms, but not lists of quarks: (atom (vector 'charm 'up 'strange)) -> T (atom (list 'charm 'up 'strange)) -> NIL 2014-09-09T04:46:52Z kristof: oGMo: no :element-type needed 2014-09-09T04:47:15Z kristof: And yet the containing type is still specialized, right? Please correct me. 2014-09-09T04:47:20Z kristof: If I'm wrong 2014-09-09T04:49:36Z fragamus joined #lisp 2014-09-09T04:49:48Z gingerale quit (Ping timeout: 252 seconds) 2014-09-09T04:50:39Z drmeister quit (Remote host closed the connection) 2014-09-09T04:51:28Z drmeister joined #lisp 2014-09-09T04:51:58Z bit` joined #lisp 2014-09-09T04:53:36Z DrCode quit (Remote host closed the connection) 2014-09-09T04:54:49Z Maurice_TCF quit (Read error: Connection reset by peer) 2014-09-09T04:55:18Z oGMo: kristof: erm how does that say "when you make new vectors here, use static-vectors"? 2014-09-09T04:55:20Z Maurice_TCF joined #lisp 2014-09-09T04:56:52Z DrCode joined #lisp 2014-09-09T04:57:22Z innertracks1 quit (Ping timeout: 245 seconds) 2014-09-09T05:03:07Z zophy quit (Ping timeout: 245 seconds) 2014-09-09T05:03:46Z benny` is now known as benny 2014-09-09T05:07:16Z Maurice_TCF quit (Read error: Connection reset by peer) 2014-09-09T05:08:03Z Maurice_TCF joined #lisp 2014-09-09T05:17:45Z araujo quit (Ping timeout: 260 seconds) 2014-09-09T05:20:18Z araujo joined #lisp 2014-09-09T05:20:20Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T05:23:24Z beach: drmeiste_: Are you still here? 2014-09-09T05:27:16Z sheilong quit (Quit: Konversation terminated!) 2014-09-09T05:27:29Z pranavrc joined #lisp 2014-09-09T05:27:29Z pranavrc quit (Changing host) 2014-09-09T05:27:29Z pranavrc joined #lisp 2014-09-09T05:27:51Z rvchangue joined #lisp 2014-09-09T05:28:18Z oleo quit (Quit: Verlassend) 2014-09-09T05:29:40Z mhd joined #lisp 2014-09-09T05:30:54Z mrSpec joined #lisp 2014-09-09T05:33:00Z jlongster quit (Ping timeout: 255 seconds) 2014-09-09T05:34:34Z kcj joined #lisp 2014-09-09T05:37:22Z cmack` quit (Read error: Connection reset by peer) 2014-09-09T05:38:07Z Shaftoe___ joined #lisp 2014-09-09T05:40:53Z hiroakip joined #lisp 2014-09-09T05:42:54Z pt1 joined #lisp 2014-09-09T05:43:55Z cmack` joined #lisp 2014-09-09T05:44:40Z Maurice_TCF quit (Quit: This computer has gone to sleep) 2014-09-09T05:46:53Z drmeister quit (Remote host closed the connection) 2014-09-09T05:47:06Z drmeister joined #lisp 2014-09-09T05:47:50Z mr-foobar joined #lisp 2014-09-09T05:49:08Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-09T05:49:19Z fragamus quit (Quit: My iMac has gone to sleep. ZZZzzz…) 2014-09-09T05:49:57Z pt1 quit (Remote host closed the connection) 2014-09-09T05:50:35Z fragamus joined #lisp 2014-09-09T05:50:39Z munksgaard joined #lisp 2014-09-09T05:53:15Z mishoo joined #lisp 2014-09-09T05:54:11Z beach left #lisp 2014-09-09T05:55:26Z Shaftoe___ joined #lisp 2014-09-09T05:56:52Z Davidbrcz joined #lisp 2014-09-09T05:58:28Z frkout_ joined #lisp 2014-09-09T05:58:48Z jegaxd26 quit (Remote host closed the connection) 2014-09-09T06:02:02Z frkout quit (Ping timeout: 252 seconds) 2014-09-09T06:03:43Z Davidbrcz quit (Quit: Leaving) 2014-09-09T06:04:45Z dnm_ quit (Ping timeout: 264 seconds) 2014-09-09T06:05:18Z zophy joined #lisp 2014-09-09T06:07:39Z Harag joined #lisp 2014-09-09T06:07:47Z bobbysmith007 joined #lisp 2014-09-09T06:09:33Z nand1 quit (Ping timeout: 260 seconds) 2014-09-09T06:14:42Z defaultxr quit (Quit: gnight) 2014-09-09T06:16:31Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-09T06:18:22Z ndrei joined #lisp 2014-09-09T06:22:46Z marsbot is now known as marsam 2014-09-09T06:24:18Z nand1 joined #lisp 2014-09-09T06:24:32Z ndrei quit (Ping timeout: 272 seconds) 2014-09-09T06:27:29Z jusss` joined #lisp 2014-09-09T06:29:22Z jusss` is now known as jusss 2014-09-09T06:30:56Z jusss quit (Changing host) 2014-09-09T06:30:57Z jusss joined #lisp 2014-09-09T06:30:58Z nand1 quit (Remote host closed the connection) 2014-09-09T06:31:06Z munksgaard quit (Remote host closed the connection) 2014-09-09T06:31:14Z pt1 joined #lisp 2014-09-09T06:32:06Z marsam is now known as marsbot 2014-09-09T06:33:18Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-09T06:37:45Z Shaftoe___ joined #lisp 2014-09-09T06:37:51Z hiroakip quit (Ping timeout: 246 seconds) 2014-09-09T06:39:38Z clog joined #lisp 2014-09-09T06:40:34Z shka joined #lisp 2014-09-09T06:46:57Z drmeister quit (Remote host closed the connection) 2014-09-09T06:47:07Z nand1` joined #lisp 2014-09-09T06:47:43Z drmeister joined #lisp 2014-09-09T06:50:21Z kushal quit (Ping timeout: 264 seconds) 2014-09-09T06:53:11Z cy quit (Quit: :q!) 2014-09-09T06:56:56Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-09T06:57:25Z jegaxd26 joined #lisp 2014-09-09T06:59:02Z jegaxd26 quit (Read error: Connection reset by peer) 2014-09-09T06:59:31Z jegaxd26 joined #lisp 2014-09-09T06:59:39Z MouldyOldBones quit (Ping timeout: 264 seconds) 2014-09-09T06:59:50Z zeitue quit (Ping timeout: 276 seconds) 2014-09-09T07:01:19Z Shaftoe___ joined #lisp 2014-09-09T07:01:26Z MouldyOldBones joined #lisp 2014-09-09T07:02:49Z jtza8 joined #lisp 2014-09-09T07:03:35Z zRecursive quit (Remote host closed the connection) 2014-09-09T07:04:25Z jegaxd26 quit (Ping timeout: 272 seconds) 2014-09-09T07:04:30Z zwer quit (Remote host closed the connection) 2014-09-09T07:04:57Z zwer joined #lisp 2014-09-09T07:10:49Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-09T07:11:03Z frkout_ quit (Remote host closed the connection) 2014-09-09T07:11:11Z mvilleneuve joined #lisp 2014-09-09T07:11:30Z frkout joined #lisp 2014-09-09T07:15:47Z jusss quit (Read error: Connection reset by peer) 2014-09-09T07:17:11Z jusss joined #lisp 2014-09-09T07:18:55Z zeitue joined #lisp 2014-09-09T07:22:56Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-09T07:29:28Z mrSpec joined #lisp 2014-09-09T07:31:09Z kushal joined #lisp 2014-09-09T07:34:30Z xificurC joined #lisp 2014-09-09T07:35:03Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T07:38:31Z varjag joined #lisp 2014-09-09T07:40:05Z Beetny joined #lisp 2014-09-09T07:40:16Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-09T07:42:50Z mrSpec joined #lisp 2014-09-09T07:43:38Z drmeister quit (Remote host closed the connection) 2014-09-09T07:43:53Z drmeister joined #lisp 2014-09-09T07:44:42Z mhd joined #lisp 2014-09-09T07:47:28Z arenz joined #lisp 2014-09-09T07:52:26Z tkhoa2711 joined #lisp 2014-09-09T07:52:46Z malglim quit (Read error: Connection reset by peer) 2014-09-09T07:52:50Z malglim_ joined #lisp 2014-09-09T07:56:44Z nug700_ joined #lisp 2014-09-09T07:59:22Z nug700 quit (Ping timeout: 252 seconds) 2014-09-09T07:59:56Z ehu joined #lisp 2014-09-09T08:00:38Z momo-reina joined #lisp 2014-09-09T08:01:58Z attila_lendvai joined #lisp 2014-09-09T08:01:58Z attila_lendvai quit (Changing host) 2014-09-09T08:01:58Z attila_lendvai joined #lisp 2014-09-09T08:03:55Z tkhoa2711 quit (Quit: tkhoa2711) 2014-09-09T08:04:17Z pt1 quit (Remote host closed the connection) 2014-09-09T08:11:16Z pt1 joined #lisp 2014-09-09T08:12:17Z jtza8 quit (Ping timeout: 260 seconds) 2014-09-09T08:15:54Z zarul quit (Ping timeout: 255 seconds) 2014-09-09T08:18:37Z ejt joined #lisp 2014-09-09T08:20:20Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T08:23:29Z harish quit (Ping timeout: 260 seconds) 2014-09-09T08:24:55Z nug700_ quit (Quit: bye) 2014-09-09T08:27:15Z malglim_ quit (Quit: ZNC - http://znc.in) 2014-09-09T08:29:01Z yacks quit (Remote host closed the connection) 2014-09-09T08:29:03Z zacharias quit (Ping timeout: 272 seconds) 2014-09-09T08:29:36Z MrWoohoo joined #lisp 2014-09-09T08:30:02Z mhd joined #lisp 2014-09-09T08:33:18Z Svetlana__ joined #lisp 2014-09-09T08:36:08Z Svetlana__ is now known as Svetlana 2014-09-09T08:37:21Z dkcl joined #lisp 2014-09-09T08:37:44Z Guthur joined #lisp 2014-09-09T08:38:52Z tkhoa2711 joined #lisp 2014-09-09T08:39:08Z vramana joined #lisp 2014-09-09T08:39:18Z theos quit (Ping timeout: 246 seconds) 2014-09-09T08:40:29Z dkcl` joined #lisp 2014-09-09T08:40:42Z H4ns quit (Remote host closed the connection) 2014-09-09T08:41:36Z abbe_ quit (Ping timeout: 260 seconds) 2014-09-09T08:41:45Z dkcl quit (Ping timeout: 246 seconds) 2014-09-09T08:43:10Z l3thal quit (Ping timeout: 264 seconds) 2014-09-09T08:43:40Z drmeister quit (Remote host closed the connection) 2014-09-09T08:43:44Z l3thal joined #lisp 2014-09-09T08:43:50Z rotty quit (Ping timeout: 276 seconds) 2014-09-09T08:44:15Z rotty joined #lisp 2014-09-09T08:44:15Z drmeister joined #lisp 2014-09-09T08:44:20Z abbe joined #lisp 2014-09-09T08:44:56Z pranavrc_ joined #lisp 2014-09-09T08:47:02Z pranavrc quit (Ping timeout: 252 seconds) 2014-09-09T08:47:41Z Krystof quit (Read error: Connection reset by peer) 2014-09-09T08:50:07Z H4ns joined #lisp 2014-09-09T08:51:40Z dkcl` is now known as dkcl 2014-09-09T08:51:45Z harish joined #lisp 2014-09-09T08:51:57Z dkcl quit (Changing host) 2014-09-09T08:51:57Z dkcl joined #lisp 2014-09-09T08:53:17Z Vutral joined #lisp 2014-09-09T08:53:39Z Krystof joined #lisp 2014-09-09T08:54:34Z angavrilov joined #lisp 2014-09-09T08:59:14Z urandom__ joined #lisp 2014-09-09T09:00:48Z Vutral quit (Excess Flood) 2014-09-09T09:03:41Z Harag quit (Read error: Connection reset by peer) 2014-09-09T09:03:48Z harish quit (Ping timeout: 246 seconds) 2014-09-09T09:04:03Z Harag joined #lisp 2014-09-09T09:04:54Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-09T09:05:24Z BitPuffin joined #lisp 2014-09-09T09:16:53Z zarul joined #lisp 2014-09-09T09:16:53Z zarul quit (Changing host) 2014-09-09T09:16:53Z zarul joined #lisp 2014-09-09T09:18:06Z Shaftoe___ joined #lisp 2014-09-09T09:19:05Z theos joined #lisp 2014-09-09T09:23:15Z Shaftoe___: this may not be a lisp question, but here goes: I've created a C++ dylib to encapsulate some stuff and want to call it using CFFI. However, the exported symbols are being name mangled. I've used other libraries using CFFI and I never had to be aware of the name mangling. Is there something I should be doing differently to be able to just call the function using its name? 2014-09-09T09:26:13Z |3b|: you were probably using C libraries, not c++ previously 2014-09-09T09:26:55Z |3b|: if possible, easiest solution would be to add a C API to your lib 2014-09-09T09:27:39Z dim: (handler-case (ecase ...) (case-failure (e) ...)) sounds awkward... to me only? 2014-09-09T09:27:53Z |3b|: c++ is much harder to call correctly from other languages than C, and name mangling is the least of the problems 2014-09-09T09:28:30Z |3b|: dim: is that just a complicated way of adding a 'default' case? 2014-09-09T09:28:51Z dim: but then you don't need to ecase at all, just a straight case 2014-09-09T09:28:53Z dim: you're right 2014-09-09T09:29:17Z vramana quit (Quit: vramana) 2014-09-09T09:29:32Z vramana joined #lisp 2014-09-09T09:30:02Z |3b|: also, the spec only guarantees the error is of type 'type-error' not something more specific 2014-09-09T09:30:53Z dim: handling a default sounds a better way to spell it anyway 2014-09-09T09:31:06Z Shaftoe___: |3b|: totally right. I just came back to this window to say exactly that. 2014-09-09T09:34:35Z harish joined #lisp 2014-09-09T09:34:54Z typhonic2 joined #lisp 2014-09-09T09:35:49Z leo2007 quit (Ping timeout: 260 seconds) 2014-09-09T09:36:02Z typhonic quit (Ping timeout: 245 seconds) 2014-09-09T09:37:49Z yacks joined #lisp 2014-09-09T09:38:11Z edgar-rft joined #lisp 2014-09-09T09:39:41Z ska` joined #lisp 2014-09-09T09:43:11Z dnm joined #lisp 2014-09-09T09:45:36Z leo2007 joined #lisp 2014-09-09T09:46:42Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-09T09:48:15Z jusss quit (Ping timeout: 268 seconds) 2014-09-09T09:48:33Z quazimodo joined #lisp 2014-09-09T09:48:36Z drmeister quit (Remote host closed the connection) 2014-09-09T09:48:52Z drmeister joined #lisp 2014-09-09T09:51:13Z ska` quit (Remote host closed the connection) 2014-09-09T09:51:14Z zacharias joined #lisp 2014-09-09T09:51:54Z ndrei joined #lisp 2014-09-09T09:55:17Z momo-reina quit (Ping timeout: 245 seconds) 2014-09-09T09:55:43Z mal_ joined #lisp 2014-09-09T09:57:45Z ggole joined #lisp 2014-09-09T09:57:53Z dnm quit 2014-09-09T09:58:24Z Px12 joined #lisp 2014-09-09T10:03:47Z p_l_ is now known as p_l 2014-09-09T10:04:30Z tkhoa2711 quit (Quit: tkhoa2711) 2014-09-09T10:05:43Z vramana: What is the way to setup Scheme on Linux so that I can use it with Sublime Text? 2014-09-09T10:06:03Z H4ns: vramana: ask in #scheme 2014-09-09T10:06:08Z H4ns: vramana: this channel is about common lisp. 2014-09-09T10:06:38Z vramana left #lisp 2014-09-09T10:08:36Z Shaftoe___ joined #lisp 2014-09-09T10:13:19Z Shaftoe___ quit (Client Quit) 2014-09-09T10:18:08Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T10:27:12Z ustunozgur joined #lisp 2014-09-09T10:27:42Z BitPuffin quit (Ping timeout: 245 seconds) 2014-09-09T10:29:40Z mhd joined #lisp 2014-09-09T10:31:13Z Saigut joined #lisp 2014-09-09T10:35:24Z namespace quit (Ping timeout: 255 seconds) 2014-09-09T10:37:04Z karupa is now known as zz_karupa 2014-09-09T10:38:53Z quazimodo quit (Ping timeout: 276 seconds) 2014-09-09T10:39:21Z ndrei quit (Ping timeout: 246 seconds) 2014-09-09T10:40:56Z ndrei joined #lisp 2014-09-09T10:41:36Z kcj quit (Remote host closed the connection) 2014-09-09T10:42:47Z quazimodo joined #lisp 2014-09-09T10:44:07Z namespace joined #lisp 2014-09-09T10:44:46Z stepnem joined #lisp 2014-09-09T10:45:20Z pjb: *** Topic for #lisp: Common Lisp, the #1=(programmable . #1#) programming language logs:|contact op if muted| New: SBCL 1.2.3, cl-launch 4.1, ASDF 3.1.3 2014-09-09T10:45:39Z pjb: I would use upper case: Topic for #lisp: COMMON-LISP 2014-09-09T10:48:38Z drmeister quit (Remote host closed the connection) 2014-09-09T10:49:16Z drmeister joined #lisp 2014-09-09T10:50:48Z typhonic2 quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-09T10:53:16Z capitaomorte`: H4ns: are you here? 2014-09-09T10:53:52Z capitaomorte`: I wanted to ask about hunchentoot's "socket-detaching" branch 2014-09-09T10:54:26Z capitaomorte`: is that something I can use for hunchensocket, instead of the current highjacking that is does right now? 2014-09-09T10:55:22Z namespace quit (Ping timeout: 240 seconds) 2014-09-09T10:58:28Z namespace joined #lisp 2014-09-09T11:00:37Z ejbs joined #lisp 2014-09-09T11:05:26Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T11:06:16Z EvW joined #lisp 2014-09-09T11:06:48Z gravicappa joined #lisp 2014-09-09T11:08:31Z dim: btw |3b|, https://github.com/qitab/qmynd/commit/fc1b3dba92b6ff78146296a438d026fbc69bd849 2014-09-09T11:10:51Z |3b| thinks you don't need to call make-condition by hand like that 2014-09-09T11:11:01Z White__Flame joined #lisp 2014-09-09T11:11:08Z White_Flame quit (Ping timeout: 252 seconds) 2014-09-09T11:11:49Z typhonic joined #lisp 2014-09-09T11:13:07Z theos quit (Ping timeout: 245 seconds) 2014-09-09T11:13:23Z H4ns: capitaomorte`: i plan to merge this to the deployed version as soon as i have confirmation from loke that he likes it. 2014-09-09T11:13:35Z H4ns: capitaomorte`: but any comments would be appreciated. 2014-09-09T11:14:45Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-09T11:14:51Z mhd joined #lisp 2014-09-09T11:14:54Z dim: |3b|: well I copied the qmynd code around that place 2014-09-09T11:15:12Z quazimodo quit (Ping timeout: 268 seconds) 2014-09-09T11:15:22Z dmiles_afk joined #lisp 2014-09-09T11:15:37Z Mon_Ouie quit (Ping timeout: 245 seconds) 2014-09-09T11:15:44Z dim: I should have accepted stassats advice for what they were (true) and should have wrote another pure CL driver for MySQL, but well, I didn't 2014-09-09T11:16:53Z Xach: dim: is there one already that's unsuitable for some reason? 2014-09-09T11:17:46Z dim: I began using cl-mysql that is a CFFI binding to the .so, but doesn't allow any control over resultset memory usage (and I want to be able to stream result sets larger than RAM) 2014-09-09T11:18:11Z dim: then switched to qmynd and worked a lot on its performances characteristics because it was more than twice as slow as cl-mysql 2014-09-09T11:18:49Z dim: that's when stassats helped me a lot and said that given qmynd code state he would just write a new driver, but that seemed like too much work for me, as my goal was pgloader and improving qmynd was just a distraction 2014-09-09T11:19:39Z |3b|: dim: calling it isn't 'wrong', just more verbose 2014-09-09T11:19:44Z dim: but then Fare confirmed that the qmynd code had been written by a cl noob doing an internship at ITA, and I understood that what I didn't like in qmynd code base wasn't just stylistic issues... 2014-09-09T11:20:15Z |3b| initially saw the MAKE-CONDITION first and thought it returned a condition or something odd like that until i actually read it 2014-09-09T11:20:25Z dim: |3b|: yeah, so either I comply with the style around that code so that it's consistent, or I fix all the other places... I went with the lazy approach 2014-09-09T11:23:24Z hitecnologys joined #lisp 2014-09-09T11:23:50Z dim: also me improving qmynd was a noob fixing another noob code, really 2014-09-09T11:24:12Z dim: Xach: do you happen to know of another pure-cl mysql driver? 2014-09-09T11:24:52Z malice quit (Ping timeout: 245 seconds) 2014-09-09T11:25:14Z BitPuffin joined #lisp 2014-09-09T11:25:52Z malice joined #lisp 2014-09-09T11:26:02Z dim: oh there's http://www.obrezan.com/lisp/mysql/ that I didn't find last time, though it seems to be LispWorks specific 2014-09-09T11:32:18Z xificurC_ joined #lisp 2014-09-09T11:33:26Z Px12 quit (Remote host closed the connection) 2014-09-09T11:33:36Z xificurC quit (Ping timeout: 272 seconds) 2014-09-09T11:34:40Z Blaguvest joined #lisp 2014-09-09T11:35:17Z Mon_Ouie joined #lisp 2014-09-09T11:36:02Z theos joined #lisp 2014-09-09T11:40:53Z Shaftoe___ joined #lisp 2014-09-09T11:43:21Z korqio- quit (Ping timeout: 255 seconds) 2014-09-09T11:43:53Z Longlius quit (Remote host closed the connection) 2014-09-09T11:46:07Z malglim joined #lisp 2014-09-09T11:46:49Z drmeister quit (Remote host closed the connection) 2014-09-09T11:47:02Z drmeister joined #lisp 2014-09-09T11:49:12Z ustunozgur quit (Remote host closed the connection) 2014-09-09T11:50:20Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T11:52:28Z ustunozg_ joined #lisp 2014-09-09T11:53:53Z chitofan joined #lisp 2014-09-09T11:54:17Z Nizumzen joined #lisp 2014-09-09T11:54:20Z gensym quit (Ping timeout: 252 seconds) 2014-09-09T11:54:24Z schoppenhauer quit (Ping timeout: 252 seconds) 2014-09-09T11:54:27Z gensym joined #lisp 2014-09-09T11:55:34Z capitaomorte`: H4ns: if I read correctly, it looks like it is perfect for detaching the socket to websockets 2014-09-09T11:55:43Z capitaomorte`: but an example would be great 2014-09-09T11:56:22Z teiresia1 joined #lisp 2014-09-09T11:56:25Z mindCrime__ joined #lisp 2014-09-09T11:56:35Z teiresias quit (Ping timeout: 252 seconds) 2014-09-09T11:56:35Z ejbs quit (Ping timeout: 252 seconds) 2014-09-09T11:57:04Z mindCrime_ quit (Ping timeout: 252 seconds) 2014-09-09T11:57:13Z capitaomorte`: Anyway, I hope the current hijacking scheme done by hunchensocket done in ACCEPTOR-DISPATCH-REQUEST isn't broken 2014-09-09T11:57:33Z ndrei quit (Ping timeout: 264 seconds) 2014-09-09T11:58:04Z samebchase quit (Ping timeout: 252 seconds) 2014-09-09T11:58:11Z samebchase joined #lisp 2014-09-09T11:58:26Z yauz quit (Ping timeout: 252 seconds) 2014-09-09T11:58:33Z yauz joined #lisp 2014-09-09T11:59:38Z clarkema joined #lisp 2014-09-09T11:59:42Z schoppenhauer joined #lisp 2014-09-09T11:59:50Z schoppenhauer quit (Changing host) 2014-09-09T11:59:50Z schoppenhauer joined #lisp 2014-09-09T12:01:22Z samebchase quit (*.net *.split) 2014-09-09T12:01:22Z gensym quit (*.net *.split) 2014-09-09T12:01:22Z malglim quit (*.net *.split) 2014-09-09T12:01:23Z H4ns quit (*.net *.split) 2014-09-09T12:01:23Z rotty quit (*.net *.split) 2014-09-09T12:01:23Z Svetlana quit (*.net *.split) 2014-09-09T12:01:23Z Beetny quit (*.net *.split) 2014-09-09T12:01:23Z nand1` quit (*.net *.split) 2014-09-09T12:01:23Z bobbysmith007 quit (*.net *.split) 2014-09-09T12:01:23Z kristof quit (*.net *.split) 2014-09-09T12:01:23Z drmeiste_ quit (*.net *.split) 2014-09-09T12:01:24Z cmatei quit (*.net *.split) 2014-09-09T12:01:24Z Kruppe quit (*.net *.split) 2014-09-09T12:01:24Z eigenlicht_ quit (*.net *.split) 2014-09-09T12:01:24Z jayne quit (*.net *.split) 2014-09-09T12:01:24Z tstc` quit (*.net *.split) 2014-09-09T12:01:24Z Jubb quit (*.net *.split) 2014-09-09T12:01:56Z ustunozg_ quit (Remote host closed the connection) 2014-09-09T12:01:59Z Sgeo quit (Read error: Connection reset by peer) 2014-09-09T12:04:08Z Svetlana joined #lisp 2014-09-09T12:04:15Z chitofan: http://paste.lisp.org/display/143666 2014-09-09T12:04:19Z chitofan: why does my code not compile? 2014-09-09T12:04:36Z eigenlicht_ joined #lisp 2014-09-09T12:04:38Z vinleod joined #lisp 2014-09-09T12:04:45Z chitofan: i declared both variable and function with let and labels.. 2014-09-09T12:05:54Z mhd joined #lisp 2014-09-09T12:05:54Z samebchase joined #lisp 2014-09-09T12:05:54Z gensym joined #lisp 2014-09-09T12:05:54Z malglim joined #lisp 2014-09-09T12:05:54Z H4ns joined #lisp 2014-09-09T12:05:54Z rotty joined #lisp 2014-09-09T12:05:54Z Beetny joined #lisp 2014-09-09T12:05:54Z nand1` joined #lisp 2014-09-09T12:05:54Z bobbysmith007 joined #lisp 2014-09-09T12:05:54Z kristof joined #lisp 2014-09-09T12:05:54Z drmeiste_ joined #lisp 2014-09-09T12:05:54Z cmatei joined #lisp 2014-09-09T12:05:54Z jayne joined #lisp 2014-09-09T12:05:54Z tstc` joined #lisp 2014-09-09T12:05:54Z Jubb joined #lisp 2014-09-09T12:07:10Z capitaomorte`: chitofan: try #'index-empty-values 2014-09-09T12:07:38Z capitaomorte`: oh no, never mind 2014-09-09T12:07:58Z Kruppe joined #lisp 2014-09-09T12:08:49Z capitaomorte`: or yes, depending on whether you do have an INDEX-EMPTY-VALUES function 2014-09-09T12:10:06Z antoszka: chitofan: (tile-positions) is a function call, and there's no function tile-positions as far as i can see 2014-09-09T12:10:41Z capitaomorte`: yes, that's another one. And `newlist` should be `new-list` 2014-09-09T12:11:03Z chitofan: sorry, these were mistakes i made when sleepy.. i just caught them too 2014-09-09T12:11:04Z capitaomorte`: at least then it should compile with a style warning because the index-empty-values is undefined 2014-09-09T12:11:04Z chitofan: thanks! 2014-09-09T12:11:44Z pjb: chitofan: type C-c C-k then M-n and read the message in the minibuffer. Type M-n or M-p to move to the next or previous problem. 2014-09-09T12:12:15Z dim: also the code is quite confused and the function name makes no sense to me given the implementation, and you've forgotten docstrings and comments 2014-09-09T12:12:17Z antoszka: chitofan: also, you probably meant (MAPCAR #'INDEX-EMPTY-VALUES …) 2014-09-09T12:12:50Z Longlius joined #lisp 2014-09-09T12:12:53Z dim: it really does look like chitofan managed to have is homework fixed for free, doesn't it? 2014-09-09T12:12:59Z antoszka: hehe 2014-09-09T12:14:16Z dim: chitofan: if you're half as confused about the code than the code appears to be, please begin with a comment block (in between #| and |#) explaining what you want to achieve and including input/output examples (basically, the homework problem statement) 2014-09-09T12:14:34Z pjb: ALWAYS do that! 2014-09-09T12:15:01Z dim: +1 2014-09-09T12:15:09Z pjb: If you don't write the specifications of each function in their docstring, then once they compile, they are CORRECT! Since they do what they do, and nobody can contradict it! 2014-09-09T12:15:23Z wasamasa: chitofan: use `when' instead of the `if'-`progn' combination 2014-09-09T12:15:41Z wasamasa: dim: and no, he's probably still writing his own 2048 implementation 2014-09-09T12:17:56Z drmeiste_ quit (Remote host closed the connection) 2014-09-09T12:19:38Z dim: wasamasa: that's a good project to learn a GUI, good idea 2014-09-09T12:20:05Z dim: I should probably begin there when I'm back on coding for the kids, as I wanted something more visual ;-) 2014-09-09T12:20:20Z wasamasa: dim: I've implemented in emacs with its svg prowess 2014-09-09T12:20:26Z wasamasa: dim: lots of fun except the animation part 2014-09-09T12:20:50Z wasamasa: dim: hence it's not finished yet 2014-09-09T12:20:51Z dim: ah awesome, I've seen the project and wanted to play with it, but then did something else of course ;-) 2014-09-09T12:22:34Z jtza8 joined #lisp 2014-09-09T12:22:36Z Px12 joined #lisp 2014-09-09T12:25:19Z hitecnologys quit (Quit: hitecnologys) 2014-09-09T12:25:47Z Xach: dim: I thought I heard of one, but perhaps there is none. 2014-09-09T12:25:57Z Xach: dim: I think I might have been thinking of Art Obrezan's as you linked. 2014-09-09T12:26:11Z dim: I don't remember having seen it before 2014-09-09T12:26:12Z wasamasa: dim: there's an experimental implementation of animation in a separate file, didn't publish the library for managing the data though 2014-09-09T12:26:16Z Xach: dim: I met Art in Amsterdam. He is an interesting guy but does not care much for life outside of lispworks. 2014-09-09T12:26:18Z Beetny quit (Ping timeout: 252 seconds) 2014-09-09T12:26:36Z dim: well the license at least seem to allow me working on a fork 2014-09-09T12:26:42Z Xach: His first question to me was "Have you done any lisp work for big companies?" and when I said no he said "I don't care about talking to you." 2014-09-09T12:26:53Z justinmcp_ joined #lisp 2014-09-09T12:26:53Z dim: but I'd have to first realize how deep into qmynd I am 2014-09-09T12:26:56Z wasamasa: :< 2014-09-09T12:27:03Z dim: ouch. 2014-09-09T12:27:14Z Xach: But he's written a lot of interesting stuff and I remember it being good code 2014-09-09T12:27:21Z wasamasa works at a smaller company employing lisp 2014-09-09T12:27:23Z Px12 quit (Read error: Connection reset by peer) 2014-09-09T12:27:28Z rme joined #lisp 2014-09-09T12:27:55Z Krystof quit (Write error: Broken pipe) 2014-09-09T12:27:56Z justinmcp quit (Write error: Broken pipe) 2014-09-09T12:27:56Z TDT`` quit (Write error: Broken pipe) 2014-09-09T12:28:26Z TDT`` joined #lisp 2014-09-09T12:28:28Z hitecnologys joined #lisp 2014-09-09T12:29:50Z theos quit (Disconnected by services) 2014-09-09T12:30:18Z theos joined #lisp 2014-09-09T12:31:46Z Xach: I think you could probably do the world a nice service by making versions of his stuff that ran on everything, rather than on just lispworks. 2014-09-09T12:32:15Z dim: well his MySQL driver is a surprisingly small amount of code 2014-09-09T12:33:06Z ustunozgur joined #lisp 2014-09-09T12:33:34Z Px12 joined #lisp 2014-09-09T12:34:56Z drmeiste_ joined #lisp 2014-09-09T12:35:10Z drmeiste_ quit (Remote host closed the connection) 2014-09-09T12:35:20Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T12:38:11Z wasamasa: mhh 2014-09-09T12:38:12Z ustunozgur quit (Ping timeout: 272 seconds) 2014-09-09T12:38:30Z teiresia1 quit (Changing host) 2014-09-09T12:38:30Z teiresia1 joined #lisp 2014-09-09T12:38:41Z teiresia1 is now known as teiresias 2014-09-09T12:40:02Z chitofan: clhs count 2014-09-09T12:40:03Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_countc.htm 2014-09-09T12:41:03Z resttime_ joined #lisp 2014-09-09T12:44:21Z resttime quit (Ping timeout: 264 seconds) 2014-09-09T12:44:38Z malice quit (Remote host closed the connection) 2014-09-09T12:44:40Z mhd joined #lisp 2014-09-09T12:45:25Z vanila joined #lisp 2014-09-09T12:45:29Z Krystof joined #lisp 2014-09-09T12:45:40Z jusss joined #lisp 2014-09-09T12:45:49Z drmeiste_ joined #lisp 2014-09-09T12:47:07Z resttime_ quit (Quit: resttime_) 2014-09-09T12:47:14Z drmeister quit (Remote host closed the connection) 2014-09-09T12:47:49Z drmeister joined #lisp 2014-09-09T12:48:10Z chitofan: is there a function with the combined utility of member and nth? 2014-09-09T12:48:25Z chitofan: return the rest of the row from nth index 2014-09-09T12:48:41Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-09T12:48:46Z Xach: chitofan: nthcdr 2014-09-09T12:48:54Z Xach: It's not like member though. 2014-09-09T12:49:28Z chitofan: ok, thanks! 2014-09-09T12:51:25Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-09T12:51:37Z chitofan: the scary thing about lisp is that there's so many ways to do one thing (at least for simple stuff) 2014-09-09T12:51:58Z H4ns: for complex stuff, there are even more ways 2014-09-09T12:51:59Z eudoxia joined #lisp 2014-09-09T12:53:26Z drmeiste_ joined #lisp 2014-09-09T12:54:00Z drmeiste_: beach: Are you still online? 2014-09-09T12:55:54Z pjb: siesta hour. 2014-09-09T12:56:11Z jkaye joined #lisp 2014-09-09T12:57:12Z wasamasa: chitofan: start out with the ones you know, then improve 2014-09-09T12:57:17Z Vutral joined #lisp 2014-09-09T12:58:45Z Saigut_ joined #lisp 2014-09-09T12:59:22Z malice joined #lisp 2014-09-09T13:00:30Z knob joined #lisp 2014-09-09T13:01:09Z Saigut quit (Ping timeout: 260 seconds) 2014-09-09T13:01:28Z Guthur: drmeiste_: Hi, was wondering if your LLVM work is available now or anytime in the future? 2014-09-09T13:02:03Z dkcl quit (Remote host closed the connection) 2014-09-09T13:02:05Z Vutral quit (Ping timeout: 260 seconds) 2014-09-09T13:04:12Z kristof quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-09-09T13:04:36Z cmack`` joined #lisp 2014-09-09T13:05:06Z Xach: Guthur: in the past he has indicated that he wants to share it but that it is being reviewed by lawyers first. 2014-09-09T13:05:09Z Xach: I don't know the current state. 2014-09-09T13:05:26Z drmeiste_: Guthur: I'm waiting for the green-light from my intellectual property office. I've been pushing them for months. They are working on some sort of open-source/commercial dual license thing. 2014-09-09T13:06:49Z Guthur: drmeiste_: cool, looking forward to having a look when/if it comes out 2014-09-09T13:07:05Z cmack` quit (Ping timeout: 276 seconds) 2014-09-09T13:07:14Z xificurC joined #lisp 2014-09-09T13:07:25Z drmeiste_: Guthur: Thanks for the encouragement. 2014-09-09T13:07:28Z hitecnologys: Is there something built-in to remove n-th element of the list? The only thing I can make up is: (loop for elt in list for i from 0 unless (= i n) collect elt), but this one conses new list. 2014-09-09T13:07:39Z murftown joined #lisp 2014-09-09T13:07:50Z hitecnologys: Well, I's not the only one, but the others are significantly longer. 2014-09-09T13:08:29Z murftown: I love Lisps! super inexperienced though, much more experience in python/vim/php 2014-09-09T13:08:32Z Xach: hitecnologys: delete-if with :start and :count 2014-09-09T13:08:41Z drmeiste_: hitecnologys: You could use rplacd and point the CDR of the nth-1 element to the nth+1 2014-09-09T13:08:47Z phadthai: with rplaca or rplacd (or setf on cdr and car), you could relink the list around the item(s) you want to remove, if you want to avoid consing a new list 2014-09-09T13:08:49Z Xach: hitecnologys: no built-in direct way that i can think of. 2014-09-09T13:09:59Z hitecnologys: I see. Thanks Xach, drmeiste_ and phadthai. I'll probably stick to RPLACD. 2014-09-09T13:10:35Z Xach: If you use rplacd you are eligible for the "last person to use rplacd in the 2010s" contest 2014-09-09T13:10:42Z xificurC_ quit (Ping timeout: 245 seconds) 2014-09-09T13:10:45Z phadthai: heh 2014-09-09T13:11:05Z clarkema quit (Quit: clarkema) 2014-09-09T13:11:16Z hitecnologys: Well, I don't want to cons new list for each operation of removal. That's kind of waste of memory. 2014-09-09T13:12:15Z ggole: I think the implication is that setf is a better way, rather than that you should never use destructive functions 2014-09-09T13:12:18Z phadthai: you also could use a doubly linked list if you suspect removal operations to occur often 2014-09-09T13:12:46Z vaporatorius joined #lisp 2014-09-09T13:13:17Z hitecnologys: Hmm, I haven't thought of double-linked list. Sounds like a solution worth trying too. 2014-09-09T13:13:54Z hitecnologys: ggole: you mean use (setf cdr)/(setf car)? 2014-09-09T13:14:36Z wasamasa: drmeiste_: something like the gpl3/agpl dual licenses? 2014-09-09T13:15:11Z pjb: (if (zerop n) (cdr list) (pop (nthcdr (1- n) list))) 2014-09-09T13:15:23Z pranavrc_ quit 2014-09-09T13:15:30Z Xach: nthcdr is not an accessor 2014-09-09T13:15:35Z wasamasa: drmeiste_: sounds like that could work, have seen it with agpl for mongodb and related technologies and with the gpl for a zed shaw project 2014-09-09T13:15:52Z pjb: too bad :-( 2014-09-09T13:16:07Z namespace quit (Quit: Reconnecting) 2014-09-09T13:16:15Z namespace joined #lisp 2014-09-09T13:16:22Z xyjprc quit (Remote host closed the connection) 2014-09-09T13:16:25Z pjb: I thought I wrote something like that once. 2014-09-09T13:16:59Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-09T13:20:55Z Nizumzen joined #lisp 2014-09-09T13:21:06Z Guthur: pjb: you wrote the license? 2014-09-09T13:21:52Z ustunozgur joined #lisp 2014-09-09T13:22:24Z Guthur: actually GPL would be no use for what I was interested in trying anyway, I wanted to try using the drmeiste_'s clasp with Unreal 4 2014-09-09T13:22:41Z Guthur: but the license for that explicitly forbiddens including any GPL code 2014-09-09T13:23:08Z pjb: Guthur: I was refering to (pop (nthcdr …)) 2014-09-09T13:23:09Z attila_lendvai quit (Quit: Leaving.) 2014-09-09T13:23:31Z pjb: Guthur: make Unreal 4 be released under the GPL instead! 2014-09-09T13:23:38Z dkcl joined #lisp 2014-09-09T13:24:06Z Guthur: pjb: about as likely as me getting any enjoyment out wrestling with there C++ API 2014-09-09T13:24:13Z Guthur: there/their 2014-09-09T13:24:55Z hugod quit (Remote host closed the connection) 2014-09-09T13:25:06Z Guthur: to my knowledge the only company that realised there game tech as GPL is Id 2014-09-09T13:25:31Z Guthur: least i think it was GPL, open source of some kind anyway 2014-09-09T13:25:37Z hugod joined #lisp 2014-09-09T13:26:21Z Guthur: i suspect that policy might end since they got acquire by Bethesda Softworks 2014-09-09T13:28:41Z oleo joined #lisp 2014-09-09T13:31:03Z clarkema joined #lisp 2014-09-09T13:31:51Z malice quit (Remote host closed the connection) 2014-09-09T13:32:51Z kjeldahl quit (Ping timeout: 252 seconds) 2014-09-09T13:33:30Z stefy945 joined #lisp 2014-09-09T13:33:36Z stefy945 left #lisp 2014-09-09T13:35:04Z rme quit (Quit: rme) 2014-09-09T13:36:04Z ndrei joined #lisp 2014-09-09T13:38:57Z theos quit (Ping timeout: 245 seconds) 2014-09-09T13:40:42Z drmeister quit (Remote host closed the connection) 2014-09-09T13:40:54Z drmeister joined #lisp 2014-09-09T13:41:31Z drmeiste_ joined #lisp 2014-09-09T13:41:42Z TDog quit (Ping timeout: 246 seconds) 2014-09-09T13:43:39Z theos joined #lisp 2014-09-09T13:44:30Z Puffin joined #lisp 2014-09-09T13:45:12Z xyjprc joined #lisp 2014-09-09T13:47:47Z yeticry quit (Ping timeout: 245 seconds) 2014-09-09T13:48:00Z BitPuffin quit (Ping timeout: 246 seconds) 2014-09-09T13:48:50Z yeticry joined #lisp 2014-09-09T13:49:09Z mr-foobar quit (Ping timeout: 264 seconds) 2014-09-09T13:49:13Z ahungry_ joined #lisp 2014-09-09T13:49:17Z Pullphinger joined #lisp 2014-09-09T13:49:41Z rme joined #lisp 2014-09-09T13:52:54Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-09T13:54:44Z DrCode quit (Remote host closed the connection) 2014-09-09T13:55:04Z tvossen joined #lisp 2014-09-09T13:55:36Z paddymahoney joined #lisp 2014-09-09T13:55:59Z DrCode joined #lisp 2014-09-09T13:56:32Z Mon_Ouie quit (Ping timeout: 245 seconds) 2014-09-09T13:56:42Z kjeldahl joined #lisp 2014-09-09T13:58:38Z fortitude joined #lisp 2014-09-09T13:59:57Z Saigut joined #lisp 2014-09-09T14:00:33Z dan64- quit (Quit: ZNC - http://znc.in) 2014-09-09T14:01:11Z jegaxd26 joined #lisp 2014-09-09T14:01:18Z dan64 joined #lisp 2014-09-09T14:03:12Z vydd joined #lisp 2014-09-09T14:03:18Z Saigut_ quit (Ping timeout: 255 seconds) 2014-09-09T14:03:48Z murftown quit (Quit: murftown) 2014-09-09T14:04:31Z dan64 quit (Client Quit) 2014-09-09T14:04:42Z ary joined #lisp 2014-09-09T14:05:16Z dan64 joined #lisp 2014-09-09T14:05:18Z murftown joined #lisp 2014-09-09T14:05:58Z murftown quit (Client Quit) 2014-09-09T14:06:07Z dan64 quit (Client Quit) 2014-09-09T14:06:50Z dan64 joined #lisp 2014-09-09T14:07:06Z murftown joined #lisp 2014-09-09T14:10:20Z ary quit (Ping timeout: 268 seconds) 2014-09-09T14:11:29Z jkaye quit (Remote host closed the connection) 2014-09-09T14:12:05Z jkaye joined #lisp 2014-09-09T14:15:00Z bjorkintosh quit (Ping timeout: 255 seconds) 2014-09-09T14:16:22Z jkaye quit (Ping timeout: 240 seconds) 2014-09-09T14:16:41Z bjorkintosh joined #lisp 2014-09-09T14:17:18Z Guthur quit (Remote host closed the connection) 2014-09-09T14:19:38Z varjag_ joined #lisp 2014-09-09T14:22:16Z nicdev quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-09T14:23:32Z nug700 joined #lisp 2014-09-09T14:23:54Z normanrichards joined #lisp 2014-09-09T14:24:10Z nicdev joined #lisp 2014-09-09T14:26:03Z pt1_ joined #lisp 2014-09-09T14:26:53Z pt1_ quit (Remote host closed the connection) 2014-09-09T14:29:22Z pt1 quit (Ping timeout: 240 seconds) 2014-09-09T14:31:18Z chitofan: is there a way to find the index of repeated keys in a list? 2014-09-09T14:32:27Z chitofan: i want to modify this (mapcar (lambda (list) (position item list)) lists) 2014-09-09T14:32:32Z chitofan: it only gives me the first instance 2014-09-09T14:32:44Z H4ns: :start 2014-09-09T14:32:50Z chitofan: but i want to create a list of all the position of all instances 2014-09-09T14:34:09Z Xach: chitofan: loop is the easiest way to do that. did you post this question to stack overflow? 2014-09-09T14:34:12Z malice joined #lisp 2014-09-09T14:34:16Z Xach: if not you, someone else did just yesterday. 2014-09-09T14:34:31Z schoppenhauer quit (Quit: Adé) 2014-09-09T14:34:31Z chitofan: ok, i'll look for it 2014-09-09T14:34:35Z chitofan: thanks 2014-09-09T14:34:50Z malice quit (Remote host closed the connection) 2014-09-09T14:34:58Z Xach: http://stackoverflow.com/questions/25730957/producing-a-list-of-positions-in-common-lisp 2014-09-09T14:35:02Z jlongster joined #lisp 2014-09-09T14:35:49Z Mon_Ouie joined #lisp 2014-09-09T14:36:01Z marsbot is now known as marsam 2014-09-09T14:36:13Z eni joined #lisp 2014-09-09T14:38:25Z murftown quit (Quit: murftown) 2014-09-09T14:38:45Z ndrei quit (Ping timeout: 246 seconds) 2014-09-09T14:39:04Z dan64 quit (Quit: ZNC - http://znc.in) 2014-09-09T14:39:23Z gravicappa quit (Ping timeout: 276 seconds) 2014-09-09T14:39:36Z eni quit (Client Quit) 2014-09-09T14:39:52Z dan64 joined #lisp 2014-09-09T14:40:42Z ndrei joined #lisp 2014-09-09T14:41:12Z mr-foobar joined #lisp 2014-09-09T14:42:32Z schoppenhauer joined #lisp 2014-09-09T14:42:42Z Puffin is now known as BitPuffin 2014-09-09T14:46:44Z jegaxd26 quit (Remote host closed the connection) 2014-09-09T14:48:56Z chitofan quit (Quit: Page closed) 2014-09-09T14:49:15Z jegaxd26 joined #lisp 2014-09-09T14:49:36Z ejbs joined #lisp 2014-09-09T14:50:28Z marsam is now known as marsbot 2014-09-09T14:51:58Z dan64 quit (Quit: ZNC - http://znc.in) 2014-09-09T14:52:43Z dan64 joined #lisp 2014-09-09T14:54:12Z ejbs quit (Remote host closed the connection) 2014-09-09T14:58:01Z shka quit (Read error: Connection reset by peer) 2014-09-09T14:59:57Z arenz quit (Ping timeout: 264 seconds) 2014-09-09T15:03:52Z jegaxd26 quit (Ping timeout: 240 seconds) 2014-09-09T15:04:22Z ndrei quit (Ping timeout: 240 seconds) 2014-09-09T15:04:53Z MouldyOldBones quit (Quit: MouldyOldBones) 2014-09-09T15:05:03Z Longlius quit (Remote host closed the connection) 2014-09-09T15:06:22Z typhonic quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-09T15:10:21Z gingerale joined #lisp 2014-09-09T15:10:56Z murftown joined #lisp 2014-09-09T15:14:27Z jegaxd26 joined #lisp 2014-09-09T15:16:57Z Karl_Dscc joined #lisp 2014-09-09T15:20:12Z xificurC quit (Quit: WeeChat 0.4.3) 2014-09-09T15:20:43Z zacharias quit (Ping timeout: 272 seconds) 2014-09-09T15:22:45Z k-stz joined #lisp 2014-09-09T15:25:52Z jusss quit (Read error: Connection reset by peer) 2014-09-09T15:35:49Z jkaye joined #lisp 2014-09-09T15:36:24Z cite-reader joined #lisp 2014-09-09T15:38:55Z thierrygar joined #lisp 2014-09-09T15:45:11Z kruhft` joined #lisp 2014-09-09T15:46:58Z theos quit (Disconnected by services) 2014-09-09T15:47:30Z theos joined #lisp 2014-09-09T15:48:37Z ehu quit (Ping timeout: 245 seconds) 2014-09-09T15:48:53Z drmeiste_ quit (Read error: Connection reset by peer) 2014-09-09T15:49:20Z drmeiste_ joined #lisp 2014-09-09T15:51:16Z marsbot is now known as marsam 2014-09-09T15:51:22Z gravicappa joined #lisp 2014-09-09T15:54:02Z murftown: '(1 2 3) 2014-09-09T15:54:28Z vanila: hi 2014-09-09T15:54:34Z murftown: hi 2014-09-09T15:55:10Z fragamus quit (Ping timeout: 268 seconds) 2014-09-09T15:57:13Z ndrei joined #lisp 2014-09-09T15:57:23Z kruhft` quit (Remote host closed the connection) 2014-09-09T15:58:12Z korqio- joined #lisp 2014-09-09T15:59:18Z LiamH joined #lisp 2014-09-09T15:59:23Z TDog joined #lisp 2014-09-09T16:01:17Z nipra quit (Ping timeout: 276 seconds) 2014-09-09T16:05:17Z korqio- quit (Ping timeout: 245 seconds) 2014-09-09T16:05:49Z jegaxd26 quit (Remote host closed the connection) 2014-09-09T16:06:45Z jegaxd26 joined #lisp 2014-09-09T16:07:41Z dsksd quit (Remote host closed the connection) 2014-09-09T16:08:08Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-09T16:08:53Z shka joined #lisp 2014-09-09T16:12:04Z vanila: Can anyone give me adviceon how to write a very simple lisp compiler? 2014-09-09T16:12:20Z H4ns: vanila: your question is quite general 2014-09-09T16:12:26Z vanila: I've been trying at it for months and not got success 2014-09-09T16:13:17Z H4ns: vanila: one answer would be "open text editor, write compiler" 2014-09-09T16:13:20Z White__Flame: you mean native code compilation? 2014-09-09T16:13:28Z White__Flame is now known as White_Flame 2014-09-09T16:13:39Z vanila: White__Flame, I thought I could avoid register allocation and make things a bit easier by targetting C 2014-09-09T16:13:43Z AeroNotix: H4ns: apparently another would be "open text editor, try for months, close text editor" 2014-09-09T16:13:50Z Xach: vanila: Lisp in Small Pieces is a good book on that topic. 2014-09-09T16:14:15Z Xach: vanila: it includes an example that compiles to C. it discusses a lot of the design decisions that apply specifically to lisp-style languages. 2014-09-09T16:14:18Z White_Flame: You first need to decide how to implement all the low-level necessities like garbage collection, tagged pointers, condition handlers, etc 2014-09-09T16:14:30Z White_Flame: reading disassemblies in existing lisp native code compilers can give you good ideas there 2014-09-09T16:14:41Z White_Flame: once those decisions are made, writing the compiler becomes a whole lot more clear 2014-09-09T16:15:14Z vanila: White_Flame, I did do those things. I've looked over Lisp in Small Pieces a bit it's kind of hard to get into but I will try to read it more thoroughly 2014-09-09T16:15:34Z clarkema quit (Quit: clarkema) 2014-09-09T16:15:48Z White_Flame: then the question is probably more along the lines of "How do I write a compiler?", which is more general, if you've tackled the lisp specifics 2014-09-09T16:16:30Z mhd joined #lisp 2014-09-09T16:16:51Z White_Flame: plus, consider what it means to eval or defun at runtime. If you translate to C for external machine compilation, you quickly get into dynamic loaders 2014-09-09T16:17:40Z eudoxia: well, a lisp doesn't necessarily require eval 2014-09-09T16:18:18Z vanila: yeah it's cheatinb but for first steps I decided to avoid things like EVAL 2014-09-09T16:18:40Z vanila: I saw the L.I.S.P. cover it in a few different ways 2014-09-09T16:19:39Z White_Flame: also consider macros, which might require multiple compilation passes; first to generate your compile-time macro executables, which generates more lisp source code, which then is converted to more C code. Still static assembly, but multiple phases of it 2014-09-09T16:20:15Z White_Flame: have you already written a Lisp interpreter? 2014-09-09T16:20:20Z vanila: yes i've written interpreters 2014-09-09T16:20:28Z vanila: I thought that an interpeter would be a good way to do the macros 2014-09-09T16:20:56Z vanila: because you can call on the interpreter to expand the macros as the compiler comes across trhem 2014-09-09T16:21:07Z normanrichards quit 2014-09-09T16:21:19Z White_Flame: right, though if macros have side effects that are supposed to be retained in the runtime (like macros that build up data structures to be read at runtime), the interpreter's output must be made available to the compiled code as well 2014-09-09T16:21:25Z Aiwass joined #lisp 2014-09-09T16:21:28Z vanila: the main problem I have is that the emitted code is so huge compared to the lisp source that it came from 2014-09-09T16:21:36Z White_Flame: that's fine for a learning project 2014-09-09T16:21:39Z vanila: and when I tried to compile larger programs they printed out garbage 2014-09-09T16:22:12Z vanila: but I went from 100 lines of lisp to 47k lines of C 2014-09-09T16:22:26Z Jesin joined #lisp 2014-09-09T16:22:32Z mrSpec joined #lisp 2014-09-09T16:22:40Z Aiwass quit (Client Quit) 2014-09-09T16:22:57Z White_Flame: you should probably rely more on clear function calls than trying to make large inline expansions, to keep the source more readable if that's the goal 2014-09-09T16:23:07Z paddymahoney quit (Ping timeout: 245 seconds) 2014-09-09T16:23:28Z theos quit (Disconnected by services) 2014-09-09T16:23:56Z theos joined #lisp 2014-09-09T16:23:59Z White_Flame: or write a set of C macros which implement some of the lisp runtime architecture, and have your code generator use those 2014-09-09T16:24:54Z vanila: Thanks 2014-09-09T16:25:43Z innertracks joined #lisp 2014-09-09T16:26:41Z cy joined #lisp 2014-09-09T16:26:48Z Jesin quit (Client Quit) 2014-09-09T16:27:14Z zacharias joined #lisp 2014-09-09T16:29:07Z vanila: oh and I was wondering if it should turn everthig like LET into lambdas or compile them directly? 2014-09-09T16:30:07Z ggole: You can do either. 2014-09-09T16:30:19Z vanila: okay 2014-09-09T16:30:50Z White_Flame: just make sure to support (let ((*woohoo-earmuffs* t)) ... ) bindings work 2014-09-09T16:30:56Z White_Flame: -work 2014-09-09T16:31:17Z jasom: White_Flame: I was surprised how easy that was to get right in my interpreter; I thought it would have been more of a pain. 2014-09-09T16:31:43Z White_Flame: jasom: do you have anything more complicated than an environment a-list? 2014-09-09T16:31:50Z jasom: White_Flame: nope :) 2014-09-09T16:31:54Z White_Flame: there you go :) 2014-09-09T16:32:06Z vanila: ((*woohoo-earmuffs* lol 2014-09-09T16:32:09Z jasom: White_Flame: but still, it's just do it this way if it's special that way if it's not 2014-09-09T16:32:11Z ggole: What sort of lisp are you compiling? There are some nice papers around on writing simple Scheme compilers. 2014-09-09T16:32:24Z vanila: ggole, would love to look at them! 2014-09-09T16:32:43Z jasom: White_Flame: in fact whether or not it is special isn't resolved through the environment a-list in my implementation 2014-09-09T16:32:44Z ggole: I'll dig em up 2014-09-09T16:32:46Z vanila: i have looked at Steele RABBIT paper 2014-09-09T16:33:04Z jasom: White_Flame: it's either a local declaration or globally special 2014-09-09T16:33:25Z wasamasa: vanila: http://scheme2006.cs.uchicago.edu/11-ghuloum.pdf 2014-09-09T16:33:56Z wasamasa: vanila: http://www.call-with-current-continuation.org/scheme-implementation-techniques.pdf 2014-09-09T16:34:02Z jasom: and you always know at compile time if a variable is lexical or dynamic 2014-09-09T16:34:02Z innertracks quit (Ping timeout: 245 seconds) 2014-09-09T16:34:53Z ggole: ^ that's the one I had in mind 2014-09-09T16:35:02Z White_Flame: jasom: yep 2014-09-09T16:35:05Z ggole: And maybe www.cs.indiana.edu/~dyb/pubs/nano-jfp.pdf 2014-09-09T16:35:11Z juiko joined #lisp 2014-09-09T16:35:22Z gravicappa quit (Ping timeout: 240 seconds) 2014-09-09T16:35:32Z stacksmith joined #lisp 2014-09-09T16:35:44Z vanila: thank you 2014-09-09T16:35:56Z jasom: White_Flame: so I don't think it would be any harder to get right in a compiled bindings representation 2014-09-09T16:35:57Z vanila: this could help alot 2014-09-09T16:36:26Z White_Flame: jasom: right, it's not difficult, it's just an easily missed piece 2014-09-09T16:36:29Z wasamasa: vanila: next time, ask common lisp questions on this channel 2014-09-09T16:36:36Z juiko` joined #lisp 2014-09-09T16:36:44Z theos quit (Ping timeout: 252 seconds) 2014-09-09T16:37:00Z White_Flame: jasom: especially for lambda, if it has a different implementation than let 2014-09-09T16:37:15Z jasom: White_Flame: huh, maybe I overuse dynamic bindings, since it was the very first thing I added to lambda after the basics worked 2014-09-09T16:37:33Z White_Flame: I tend to use them quite often for thread-local context 2014-09-09T16:38:49Z MoALTz joined #lisp 2014-09-09T16:38:53Z jasom: I need to add more stuff to my interpreter; I've got 12/798 symbols complete. 2014-09-09T16:38:54Z White_Flame: but the data access and branching for TLS vs global always annoys me in the disassemblies. Micro-optimization I know, but I'd like to see a thread-local declaration one of these days 2014-09-09T16:39:10Z jasom: Though I have dozens more that I've implemented only the funcion half of the accessor for 2014-09-09T16:39:21Z ggole: vanila: oh, and http://matt.might.net/articles/closure-conversion/ might also be interesting 2014-09-09T16:40:14Z marsam is now known as marsbot 2014-09-09T16:40:27Z jasom: White_Flame: the first step might be to just add an explicit thread-local accessor (if there isn't one already) 2014-09-09T16:40:29Z Guest13747 quit (Ping timeout: 260 seconds) 2014-09-09T16:40:29Z vanila: ggole, cheers! 2014-09-09T16:40:48Z juiko quit (Ping timeout: 268 seconds) 2014-09-09T16:41:14Z jasom: I avoid multithreading when at all possible (in favor of multiprocessing) 2014-09-09T16:41:15Z White_Flame: jasom: Right. It's actually pretty hard to come up with an optimized thread-local lisp special var that still is definable as a special var 2014-09-09T16:41:56Z stacksmith: Can someone clarify: Does slime always compile functions via C-c into the package the REPL is in? How to work with 2 files that represent 2 packages? 2014-09-09T16:41:57Z White_Flame: threading is good, no marshalling involved for comms 2014-09-09T16:41:58Z jasom: White_Flame: I was more thinking that once you have the accessor, you can put in the declaration and have it affect behavior when (safety 0) is set 2014-09-09T16:42:50Z smithzv joined #lisp 2014-09-09T16:42:50Z innertracks joined #lisp 2014-09-09T16:42:59Z smithzv is now known as Guest29240 2014-09-09T16:43:03Z White_Flame: true, it could be linked to safety 0. My thread launchers tend to give all related special vars their own binding at the thread entry, so they're never going to refer to the main value 2014-09-09T16:43:33Z Jesin joined #lisp 2014-09-09T16:43:55Z jasom: stacksmith: IIRC C-c C-c will try to infer the package from context; I use C-c C-k instead since that's usually nearly as fast and much safer 2014-09-09T16:43:57Z White_Flame: either that, or the vars are only ever accessed within a scope that provides a binding 2014-09-09T16:45:19Z jasom: threading is bad as state can be accidentally shared 2014-09-09T16:45:28Z stacksmith: jasom: merci. 2014-09-09T16:45:46Z White_Flame: read-only state is great for sharing, especially when it's multi-GB 2014-09-09T16:45:47Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-09T16:45:58Z atgreen joined #lisp 2014-09-09T16:45:58Z jasom: stacksmith: de rien. 2014-09-09T16:46:38Z jkaye quit (Remote host closed the connection) 2014-09-09T16:46:42Z jasom: White_Flame: oh I agree, and I'll admit there are some places where threading is the correct solution hands down. I just find it's easier to convert from multiprocessing to multithreading than the reverse, so I default to multiprocessing. 2014-09-09T16:47:10Z jkaye joined #lisp 2014-09-09T16:47:48Z Jessin joined #lisp 2014-09-09T16:48:14Z Jesin quit (Read error: Connection reset by peer) 2014-09-09T16:49:33Z theos joined #lisp 2014-09-09T16:49:40Z Jessin is now known as Jesin 2014-09-09T16:51:13Z BitPuffin quit (Ping timeout: 260 seconds) 2014-09-09T16:51:32Z jkaye quit (Ping timeout: 245 seconds) 2014-09-09T16:51:34Z White_Flame: jasom: yeah, we tend to have too large of per-process footprints to rely on that for same-machine core utilization 2014-09-09T16:52:11Z White_Flame: though distribution and heterogeneous languages tend to push us into multiprocess anyway 2014-09-09T16:53:22Z ndrei quit (Ping timeout: 240 seconds) 2014-09-09T16:56:14Z normanrichards joined #lisp 2014-09-09T16:56:36Z Longlius joined #lisp 2014-09-09T16:57:30Z Maurice_TCF joined #lisp 2014-09-09T16:58:41Z drmeiste_ quit (Ping timeout: 260 seconds) 2014-09-09T17:02:53Z zophy quit (Ping timeout: 260 seconds) 2014-09-09T17:03:08Z ndrei joined #lisp 2014-09-09T17:03:33Z ustunozgur quit (Remote host closed the connection) 2014-09-09T17:04:07Z ustunozgur joined #lisp 2014-09-09T17:06:20Z malbertife joined #lisp 2014-09-09T17:06:51Z murftown quit (Quit: murftown) 2014-09-09T17:07:04Z jkaye joined #lisp 2014-09-09T17:11:47Z jkaye quit (Ping timeout: 272 seconds) 2014-09-09T17:12:41Z ustunozg_ joined #lisp 2014-09-09T17:15:24Z beach joined #lisp 2014-09-09T17:15:25Z gravicappa joined #lisp 2014-09-09T17:15:36Z beach: Good evening everyone! 2014-09-09T17:16:00Z slyrus: hey beach! 2014-09-09T17:16:27Z ustunozgur quit (Ping timeout: 245 seconds) 2014-09-09T17:16:50Z Adlai: slyrus: my last patch just fixes the documentation to always use #\/ 2014-09-09T17:17:07Z slyrus: right. I saw that. Still not sure what the best thing to do here is... 2014-09-09T17:17:41Z Grue`: what's the recommended common lisp xml parser these days? 2014-09-09T17:17:41Z Adlai: leave behavior unchanged since there's no pressing reason to change, but update documentation to match behavior 2014-09-09T17:18:19Z jasom: Grue`: I use cxml 2014-09-09T17:18:24Z Xach: Grue`: i like cxml. 2014-09-09T17:18:29Z sharkey joined #lisp 2014-09-09T17:19:14Z beach: drmeister: You were asking for me before? 2014-09-09T17:19:26Z jasom: Grue`: the only gripe I have with cxml is that its DOM implementation is fairly memory hungry. That's only an issue for medium-sized documents though, as you'll want a streaming parser for large documents anyway. 2014-09-09T17:19:52Z Grue`: well, i need streaming parser for large documents :) 2014-09-09T17:20:04Z Fare joined #lisp 2014-09-09T17:20:05Z jasom: Grue`: and cxml has 2 different streaming parsers 2014-09-09T17:20:23Z jasom: Grue`: a SAX style and a StAX style 2014-09-09T17:20:47Z hitecnologys quit (Quit: hitecnologys) 2014-09-09T17:23:37Z wasamasa: stax? 2014-09-09T17:23:54Z wasamasa: does that one require extra power supplies? 2014-09-09T17:24:27Z jasom: wasamasa: no; It's a pull-based XML streaming parser API from java; cxml calls it's take on that "klacks" 2014-09-09T17:24:39Z eudoxia quit (Quit: Lost terminal) 2014-09-09T17:24:48Z jasom: http://en.wikipedia.org/wiki/StAX 2014-09-09T17:24:58Z rme left #lisp 2014-09-09T17:25:08Z wasamasa: forgive me the silly joke about the headphone company with the same name 2014-09-09T17:25:38Z jasom had no idea there were electrostatic headphones 2014-09-09T17:25:45Z drmeister quit (Remote host closed the connection) 2014-09-09T17:25:59Z wasamasa: I know, right 2014-09-09T17:26:02Z pt1 joined #lisp 2014-09-09T17:26:17Z wasamasa: people who're so crazy about their music experience they put on headphones that might fry their brain 2014-09-09T17:26:22Z drmeister joined #lisp 2014-09-09T17:26:35Z wasamasa: luckily I'm not one of them 2014-09-09T17:26:55Z wasamasa: but thanks for the mention, I've only known about SAX so far 2014-09-09T17:28:23Z vanila: Hi beach 2014-09-09T17:30:01Z drmeiste_ joined #lisp 2014-09-09T17:30:33Z jasom: wasamasa: klacks code becomes very nice, like a non-backtracking recursive-descent parser on the DOM. 2014-09-09T17:31:33Z beach: drmeiste_: Which nick are you using? Both? 2014-09-09T17:31:57Z jkaye joined #lisp 2014-09-09T17:31:59Z Maurice_TCF quit (Quit: Leaving) 2014-09-09T17:32:56Z vanila: beach, do you have any advice about learning to write compilers? I got into more trouble with it 2014-09-09T17:34:18Z beach: vanila: It is very hard to give general advice, because it depends on what your goals are. Full CL? Speed? Portability? Compatibility with C? Something else? 2014-09-09T17:34:35Z vanila: the most important thing to me is bootstrapping 2014-09-09T17:34:54Z vanila: an dsince Im a beginner I wouldn't approach something like full CL, just a very cut down lisp language 2014-09-09T17:35:08Z beach: vanila: And how do you want your bootstrapping to work? 2014-09-09T17:35:46Z beach: vanila: The easiest thing to do is to use an existing implementation and write a cross compiler (file compiler) that generates FASL files for your implementation. 2014-09-09T17:35:53Z vanila: I write the compiler in without using too many complex language features, then I can add support for any parts it needs to compile itself 2014-09-09T17:36:12Z beach: That is a very masochistic approach. 2014-09-09T17:36:47Z beach: Writing a compiler is hard enough as it is, without having to do it with a crippled language in addition. 2014-09-09T17:37:08Z vanila: I see! 2014-09-09T17:37:11Z ggole: Indeed. 2014-09-09T17:37:31Z ggole: Particularly your first, or something that you are struggling with. 2014-09-09T17:38:34Z wasamasa: even clojure started out at first with a common lisp implementation :P 2014-09-09T17:38:46Z beach: vanila: The hardest part about writing a compiler is implementing all the optimizations that exist in the literature. 2014-09-09T17:39:17Z kobain joined #lisp 2014-09-09T17:39:23Z jasom: beach: I would have said the hardest part is choosing which optimizations to implement from the literature. 2014-09-09T17:39:45Z beach: jasom: Yeah, sure. And in which order to apply them. 2014-09-09T17:39:47Z puchacz joined #lisp 2014-09-09T17:40:53Z beach: vanila: I suggest you have your compiler work in several phases. Phase 1: turn forms into ASTs by accessing the environment. 2014-09-09T17:42:05Z beach: vanila: When you have done that, we can discuss the remaining phases. 2014-09-09T17:43:36Z vanila: What do you mean by accessing the environment? I wrote here the stages that I use http://lpaste.net/raw/110798 2014-09-09T17:45:03Z beach: vanila: When you see a symbol as a form, you have to know whether it is a lexical variable, special variable, constant variable, symbol macro. When you see a compound form, you have to decide whether it is a global function, local function, global macro, local macro, or a special form. 2014-09-09T17:45:16Z beach: vanila: That's what the environment tells you. 2014-09-09T17:46:05Z beach: vanila: Oh, Scheme? OK. 2014-09-09T17:47:06Z beach: vanila: Stage 2 requires the environment. For instance, if you have (let ((let 10)) (+ let 20)), you must know not to take the inner let for a special operator. 2014-09-09T17:47:19Z vanila: that sort of thing is very difficult 2014-09-09T17:47:28Z beach: So? 2014-09-09T17:47:32Z vanila: but I guess its important so yeah 2014-09-09T17:47:35Z vanila: have to do it 2014-09-09T17:47:53Z beach: Yes. Unless you want your compiler to do the wrong thing. 2014-09-09T17:47:57Z otwieracz: Hi guys. 2014-09-09T17:48:04Z beach: Hello otwieracz. 2014-09-09T17:48:41Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-09T17:49:59Z beach: vanila: Though that's no different from what an interpreter has to do, and I understand you already have one, so you must already know how to do it. 2014-09-09T17:50:07Z vanila: yeah I have 2014-09-09T17:50:27Z otwieracz: I am looking for some kind of microcomputer (like raspberry pi, but maybe even smaller, lighter and consuming less power) with full-featured lisp on it. 2014-09-09T17:51:08Z beach: vanila: It is time for me to go spend time with my (admittedly small) family. We shall have to talk more some other time. 2014-09-09T17:51:12Z beach left #lisp 2014-09-09T17:51:14Z vanila: bye! 2014-09-09T17:51:25Z vanila: thanks for your advice 2014-09-09T17:52:57Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-09T17:54:16Z zophy joined #lisp 2014-09-09T18:00:42Z jtza8 quit (Ping timeout: 252 seconds) 2014-09-09T18:02:29Z murftown joined #lisp 2014-09-09T18:02:49Z TDog quit (Ping timeout: 268 seconds) 2014-09-09T18:03:42Z AntiSpamMeta quit (Remote host closed the connection) 2014-09-09T18:03:55Z AntiSpamMeta joined #lisp 2014-09-09T18:04:03Z drewc joined #lisp 2014-09-09T18:04:31Z slyrus: otwieracz: odroid? 2014-09-09T18:04:52Z yacks quit (Ping timeout: 240 seconds) 2014-09-09T18:06:00Z matko joined #lisp 2014-09-09T18:06:24Z AntiSpamMeta quit (Client Quit) 2014-09-09T18:06:38Z AntiSpamMeta joined #lisp 2014-09-09T18:07:08Z mhd quit (Ping timeout: 184 seconds) 2014-09-09T18:07:47Z mhd quit (Remote host closed the connection) 2014-09-09T18:08:22Z zophy quit (Ping timeout: 240 seconds) 2014-09-09T18:10:02Z otwieracz: slyrus: I believe it's overkill. 2014-09-09T18:10:50Z otwieracz: I've heard about wrtnode. 2014-09-09T18:11:00Z otwieracz: But I'm scared a bit about OpenWRT. 2014-09-09T18:12:26Z Patzy_ quit (Remote host closed the connection) 2014-09-09T18:12:33Z Patzy joined #lisp 2014-09-09T18:13:49Z yacks joined #lisp 2014-09-09T18:14:36Z Px12 quit (Read error: Connection reset by peer) 2014-09-09T18:14:57Z jdz quit (Quit: ZNC - http://znc.in) 2014-09-09T18:15:12Z jdz_ joined #lisp 2014-09-09T18:16:53Z korqio- joined #lisp 2014-09-09T18:19:14Z zophy joined #lisp 2014-09-09T18:19:43Z tvossen quit (Quit: tvossen) 2014-09-09T18:19:48Z malice joined #lisp 2014-09-09T18:20:50Z zacharias quit (Ping timeout: 272 seconds) 2014-09-09T18:20:59Z theos quit (Disconnected by services) 2014-09-09T18:21:03Z ivan4th joined #lisp 2014-09-09T18:21:21Z mvilleneuve joined #lisp 2014-09-09T18:21:35Z theos joined #lisp 2014-09-09T18:22:23Z jasom: otwieracz: odroid-w? 2014-09-09T18:22:46Z innertracks quit (Ping timeout: 264 seconds) 2014-09-09T18:23:12Z otwieracz: Not recommended for new designs. Broadcom informed us that they will not accept our order of the BCM2835 SoC anymore. 2014-09-09T18:23:15Z otwieracz: When the first trial batch is sold out, you can’t buy the ODROID-W anymore. 2014-09-09T18:23:18Z otwieracz: Sorry for the inconvenience. 2014-09-09T18:23:18Z jasom: damn 2014-09-09T18:23:51Z otwieracz: However, it looks awesome. 2014-09-09T18:26:15Z drewc has a beagleboneblack, however has no idea what the conversation is about. It runs CCL atm. 2014-09-09T18:26:34Z jasom: beagle bone is lower power than the rpi I think 2014-09-09T18:26:38Z drewc also has many rPIs and a WRT54G 2014-09-09T18:27:08Z drewc: lower power usage? which rPI are you referring to as well? 2014-09-09T18:27:25Z jasom: drewc: not sure, otwieracz was looking at rpi or smaller that could run lisp 2014-09-09T18:27:42Z drewc has hacked the hardware itself as well... but BBB is preferred for many reasons beyond that for me. 2014-09-09T18:28:36Z drewc: otwieracz: I can recommend an rPI B+ to start off with. it is useful for other things beyond running lisp widely available, and fairly cheap. 2014-09-09T18:29:22Z theos quit (Ping timeout: 240 seconds) 2014-09-09T18:29:36Z otwieracz: But it has to flight, so dimensions and weight are important. 2014-09-09T18:30:11Z jasom: otwieracz: I would imagine the battery will dominate weight 2014-09-09T18:30:18Z otwieracz: Yeah. 2014-09-09T18:30:28Z otwieracz: And that's why power consumption is important. 2014-09-09T18:30:50Z drmeister quit (Remote host closed the connection) 2014-09-09T18:30:59Z otwieracz: (too) 2014-09-09T18:31:06Z drmeister joined #lisp 2014-09-09T18:31:09Z Fare: drewc: hi! 2014-09-09T18:31:12Z jasom: they are both 86x56, right? 2014-09-09T18:31:35Z otwieracz: They, you mean who? 2014-09-09T18:31:45Z jasom: rpi and beagle bone 2014-09-09T18:31:54Z drewc: otwieracz: well, if you really want to reduce the weight, Raspberry Pi Compute Module is very light 2014-09-09T18:32:17Z Fare is waiting for the new generation of AA64 devices this Xmas 2014-09-09T18:32:45Z jegaxd26 quit (Remote host closed the connection) 2014-09-09T18:32:59Z drewc: jasom: AM335x 1GHz ARM® Cortex-A8 for the BBB 2014-09-09T18:33:25Z drewc: and it can run Android. 2014-09-09T18:33:38Z husker joined #lisp 2014-09-09T18:33:54Z drewc: Fare: Hello Hello! 2014-09-09T18:34:05Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-09T18:34:22Z Fare: :) 2014-09-09T18:34:25Z Fare: how are you doing? 2014-09-09T18:34:41Z drmeiste_ quit (Ping timeout: 276 seconds) 2014-09-09T18:35:04Z pt1 quit (Remote host closed the connection) 2014-09-09T18:35:40Z Fare is still looking for a pair programmer. My current project is clojure, thou 2014-09-09T18:36:00Z otwieracz: Fare: You want to employ lisper? 2014-09-09T18:36:44Z Fare: employ? 2014-09-09T18:36:57Z Fare: depends at what price point. 2014-09-09T18:37:01Z Fare: for what services 2014-09-09T18:37:11Z funnel quit (Remote host closed the connection) 2014-09-09T18:37:18Z AeroNotix: cheap, .pl :) 2014-09-09T18:37:21Z AntiSpamMeta quit (Remote host closed the connection) 2014-09-09T18:37:27Z Fare: but yes, I should sell services at some point 2014-09-09T18:37:31Z Fare: and hire 2014-09-09T18:37:33Z AntiSpamMeta joined #lisp 2014-09-09T18:37:34Z Fare: not now 2014-09-09T18:37:38Z Fare: Google, for now 2014-09-09T18:37:39Z funnel joined #lisp 2014-09-09T18:37:51Z drewc: Doing quite well, just busy as FUBAR at the moment. However, you and Clojure is something I might try to make some time for. I almost had a Clojure contract in 2007... went for ITA instead and so I figure you took me away from Clojure! 2014-09-09T18:38:37Z rme joined #lisp 2014-09-09T18:39:09Z Fare: Clojure has very different strength and weaknesses from CL 2014-09-09T18:39:25Z Fare: I like it so far 2014-09-09T18:39:37Z Fare: though it's no CL replacement 2014-09-09T18:40:41Z otwieracz: Fare: I've understood that you are looking for someone to hire for clojure project. 2014-09-09T18:40:41Z wasamasa: must be the missing LOOP :P 2014-09-09T18:41:07Z innertracks joined #lisp 2014-09-09T18:41:10Z drewc: I just never liked Java at all .... and it was the backtraces beyond anything else that drove me nuts. But yeah, I guess I am used to such wonderful things that CL provides :| 2014-09-09T18:41:42Z Fare: I still don't like Java, though I don't hate it either. 2014-09-09T18:41:56Z Fare: I'm told it would be bearable if I were using the correct tool 2014-09-09T18:42:03Z Fare: IntelliJ or something 2014-09-09T18:42:21Z theos joined #lisp 2014-09-09T18:42:23Z Fare: wasamasa: I'm missing more basic things, like return 2014-09-09T18:42:41Z White_Flame: I can't imagine writing Java without something like Eclipse filling in all the boilerplate & doing refactoring work for me 2014-09-09T18:42:46Z Fare: or proper tail calls 2014-09-09T18:42:49Z wasamasa: right 2014-09-09T18:43:11Z wasamasa: I'm still pretty shocked it allows recursion only in the tail call position, yet doesn't optimize it away 2014-09-09T18:43:13Z White_Flame: and even then, the Object-Obsessed design is annoying unto physcially painful 2014-09-09T18:43:47Z zophy quit (Ping timeout: 276 seconds) 2014-09-09T18:44:33Z Fare: I hate not being able to define a method on an existing class from the outside 2014-09-09T18:46:25Z oGMo: in clojure? 2014-09-09T18:46:41Z Fare: in Java 2014-09-09T18:46:48Z White_Flame: I wanted a Java REPL even before I knew what a REPL was, just from BASIC experience 2014-09-09T18:46:51Z oGMo: ah i was about to say, not sure java can even do that 2014-09-09T18:46:53Z Fare: I love being able to do it in CL or Clojure 2014-09-09T18:47:13Z josemanuel joined #lisp 2014-09-09T18:47:30Z oGMo: cool. yeah if you have to use the jvm, java isn't the way to go if possible 2014-09-09T18:47:47Z Fare: Yup, I remember the pain moving from Applesoft BASIC to MSDOS: no REPL anymore! 2014-09-09T18:47:55Z oGMo: heh 2014-09-09T18:48:26Z husker quit (Quit: husker) 2014-09-09T18:48:51Z Oberon4278 joined #lisp 2014-09-09T18:49:57Z wasamasa: White_Flame: there is even one these days 2014-09-09T18:50:06Z wasamasa: White_Flame: http://www.javarepl.com/console.html 2014-09-09T18:50:34Z White_Flame: yeah, I knew it was very feasible to write one early on using reflection, but didn't want to bother ;) 2014-09-09T18:51:18Z dim: ISTM Clojure has lein repl 2014-09-09T18:51:35Z dim: and Emacs integration with Cedar or something like that 2014-09-09T18:52:00Z Fare: yes, clojure has plenty of REPLs 2014-09-09T18:52:12Z Fare: cedar replaced by nrepl, these days 2014-09-09T18:53:14Z Grue` quit (Remote host closed the connection) 2014-09-09T18:53:50Z dim: oh I though it was the other way round 2014-09-09T18:53:56Z wasamasa: same here 2014-09-09T18:54:01Z mood: ...which is now called CIDER 2014-09-09T18:54:02Z Fare: I might be confused 2014-09-09T18:54:13Z dim: tho I've only been following thanks to el-get pull requests, so not closely at all 2014-09-09T18:54:18Z attila_lendvai joined #lisp 2014-09-09T18:54:19Z attila_lendvai quit (Changing host) 2014-09-09T18:54:19Z attila_lendvai joined #lisp 2014-09-09T18:54:20Z dim: Cider! yeah. 2014-09-09T18:54:23Z mood: Or, not really. CIDER is based on nrepl 2014-09-09T18:54:42Z josemanuel quit (Quit: Saliendo) 2014-09-09T18:55:30Z Grue` joined #lisp 2014-09-09T18:56:06Z drewc: I think I still have a working Apple II clone... but the PET was my first REPL. 2014-09-09T18:56:40Z White_Flame has his SX-64s about 4 feet from him 2014-09-09T18:57:10Z Fare: I want to finish "Robot Odyssey" and "Prisoner II" some day 2014-09-09T18:58:04Z drewc has the Pacific Ocean 4 feet from him ... no room for all the bitjunk he used to have back on land :( 2014-09-09T18:58:45Z Fare has too much bitjunk 2014-09-09T19:00:28Z drewc: I still have a number of pseudo-working thinkpads and a bunch of bricked tablets, so just minimal (or mental), not completely off the hook. 2014-09-09T19:01:22Z murftown: hey guys, I have a question. I'm following the getting started tips for Mac OS X on http://www.mohiji.org/2011/01/31/modern-common-lisp-on-osx/ - I downloaded SBCL and QuickLisp, and here's my question: QuickLisp provides a PGP signature for verification purposes…but it's in a separate file, quick lisp.lisp.asc … so I'm not really sure how that verifies anything? (Sorry if this is off-topic!) 2014-09-09T19:02:23Z Fare: Google has trash bins for used electronics. 2014-09-09T19:02:27Z cite-reader quit (Quit: leaving) 2014-09-09T19:02:36Z wasamasa: >2011 2014-09-09T19:02:38Z wasamasa: >modern 2014-09-09T19:02:45Z Fare: I have plenty of devices that are not supported by model linux kernels :-/ 2014-09-09T19:02:49Z H4ns: wasamasa: it is modern enough. 2014-09-09T19:02:59Z H4ns: murftown: it is not, although maybe you want to ask in #quicklisp 2014-09-09T19:03:03Z drewc: murftown: /join #quicklisp might get a better answer 2014-09-09T19:03:35Z Fare: is PGP support enabled in quicklisp these days? 2014-09-09T19:03:39Z wasamasa: murftown: well, someone who can tamper with that file can tamper with the release as well 2014-09-09T19:03:43Z Fare: I thought it was a WiP 2014-09-09T19:04:28Z drewc: murftown: though it is way more on-topic over what I have been going on about, so no apology needed :) 2014-09-09T19:05:00Z wasamasa: murftown: the question behind the sense of signatures revolves around what you expect them to verify 2014-09-09T19:05:13Z drmeiste_ joined #lisp 2014-09-09T19:05:37Z ndrei quit (Ping timeout: 245 seconds) 2014-09-09T19:06:09Z murftown: wasamasa: right, I guess I was hoping for a checksum or hash or something, but that's not what this is. no worries, still better attempt at security than most programs I download and run with no knowledge of the contents! 2014-09-09T19:06:40Z wasamasa: murftown: like, with distros it's usually to make sure the person who's responsible for the package can be identified with that key and signing 2014-09-09T19:07:02Z murftown: gotcha. makes sense 2014-09-09T19:07:30Z wasamasa: murftown: which implies you should be able to trust that person first :P 2014-09-09T19:08:00Z Karl_Dscc quit (Remote host closed the connection) 2014-09-09T19:08:06Z Fare: but only the first time 2014-09-09T19:09:58Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-09T19:12:49Z ustunozg_ quit (Remote host closed the connection) 2014-09-09T19:13:21Z hiroakip joined #lisp 2014-09-09T19:14:02Z Patzy quit (Ping timeout: 245 seconds) 2014-09-09T19:15:05Z Patzy joined #lisp 2014-09-09T19:16:09Z theos quit (Ping timeout: 264 seconds) 2014-09-09T19:17:09Z murftown: sweet I have SBCL and QuickLisp now. Pumped! I'm such a vim-head, are you guys all into emacs? Haven't really tried it too much 2014-09-09T19:17:29Z jasom: murftown: I'm a total vim-head 2014-09-09T19:17:34Z stanislav: +1 2014-09-09T19:17:43Z stanislav: slimv is fine 2014-09-09T19:17:50Z jasom: murftown: I use emacs with evil for lisp development, but I've heard slimv works well to 2014-09-09T19:18:27Z murftown: the only reason I might switch to emacs is does it allow you to use proportional fonts / embed images? 2014-09-09T19:18:41Z stanislav: I don't know which bells'n'wistles emacs provides, so I don't miss theme and am quite happy with slimv 2014-09-09T19:19:18Z mood: vim + slimv works fine, at least when you're starting out. After a while I switched to Emacs + Evil + SLIME, which is a lot better, but it takes a ton of time to switch 2014-09-09T19:20:36Z mood: (Even now, after at least 6 months, there's a lot of stuff I haven't figured out, so switching might not be worth it yet) 2014-09-09T19:20:46Z murftown: whoa does slimv have Emacs embedded in it just to use as a lisp repl? 2014-09-09T19:21:10Z murftown: from http://www.vim.org/scripts/script.php?script_id=2531 Slimv is a SWANK client for Vim, similarly to SLIME for Emacs. SWANK is a TCP server for Emacs, which runs a Common Lisp, Clojure or Scheme REPL and provides a socket interface for evaluating, compiling, debugging, profiling lisp code. The SWANK server is embedded in Slimv, but you can also use your own SWANK installation. 2014-09-09T19:21:11Z drmeister quit (Quit: Leaving...) 2014-09-09T19:21:18Z drmeiste_ is now known as drmeister 2014-09-09T19:21:21Z BitPuffin joined #lisp 2014-09-09T19:21:34Z drmeister: beach: Yes, and you were asking for me in the middle of the night. How are things going? 2014-09-09T19:22:21Z innertracks quit (Ping timeout: 255 seconds) 2014-09-09T19:22:22Z mood: murftown: Swank is on the Common lisp side of things. SLIME connects to a swank server, and so does SLIMV. SLIMV doesn't embed Emacs or anything 2014-09-09T19:22:39Z murftown: mood: sounds perfect 2014-09-09T19:23:16Z shka quit (Remote host closed the connection) 2014-09-09T19:23:24Z dkcl quit (Remote host closed the connection) 2014-09-09T19:23:29Z murftown: mood: but with emacs your whole editing session is built on lisp, whereas in vim you can't interact realtime with your editing session via lisp, right? 2014-09-09T19:23:43Z stanislav: murftown: yes you can 2014-09-09T19:23:53Z murftown: stanislav: that's awesome 2014-09-09T19:24:31Z murftown: I use python within vim all the time, but I'm very attracted to lisp's homo-icono-whatever-it-is, having the code and data be the same thing 2014-09-09T19:24:35Z stanislav: vim + slimv satisfies the requirements listed in Norvig's guide, so objectively it's not bad 2014-09-09T19:24:39Z zadock joined #lisp 2014-09-09T19:26:59Z mood: murftown: If by "whole editing session" you mean the editor, that's Emacs Lisp, not Common Lisp. SLIME is written in Emacs Lisp, and connects to a Common Lisp image. They're separate things 2014-09-09T19:27:00Z ejbs joined #lisp 2014-09-09T19:27:38Z oGMo: but that said dealing with CL in elisp is still decent 2014-09-09T19:27:45Z oGMo: vs whatever vim has 2014-09-09T19:28:07Z nipra joined #lisp 2014-09-09T19:28:36Z murftown: mood: yes, I do mean interacting with the editor. in vim I can call out to python and say vim.current.line, for example, which gives me the contents of the current line in real-time. I assumed Elisp has the same abilities in Emacs, and was wondering if Slimv is well-enough integrated into vim to have bindings to some of those same functions 2014-09-09T19:29:38Z stanislav: no, in this sense you don't have lisp in vim, i. e. you can't use lisp instead of vimlang 2014-09-09T19:29:59Z murftown: stanislav: gotcha, that's what I figured. one reason I may eventually want to learn Emacs 2014-09-09T19:30:02Z oGMo: though isn't ecl embeddable? in theory you could hack in support via that 2014-09-09T19:30:10Z jasom: murftown: elisp makes the python integration in vim look quaint. 2014-09-09T19:30:13Z oGMo: or _maybe_ via swank 2014-09-09T19:30:39Z murftown: jasom: that's pretty awesome, because the python-vim integration is pretty great 2014-09-09T19:30:43Z stanislav: http://pastebin.com/7dECuJjA a few tweaks in my ftplugin/lisp.vim 2014-09-09T19:31:02Z jasom: oGMo: well, even getting something as primitive as the vim python integration is a bit painful; That's one of the things they are working on in the modernized vim fork (forget the name at the moment) 2014-09-09T19:31:31Z jasom: neovim 2014-09-09T19:33:05Z AeroNotix: https://plus.google.com/u/0/+CalvinMitchell/posts/hJmZkoRGiCq 2014-09-09T19:33:06Z stanislav: murftown: but if you want lisp development in vim, it's all right: you've got REPL, "load function", "compile and load file" and anything you need 2014-09-09T19:34:03Z Fare quit (Ping timeout: 272 seconds) 2014-09-09T19:34:34Z H4ns: inspector? interactive backtrace? 2014-09-09T19:34:44Z murftown quit (Quit: murftown) 2014-09-09T19:35:04Z stanislav: interactive backtrace - yes 2014-09-09T19:35:10Z stanislav: inspector? hm 2014-09-09T19:35:26Z Fare joined #lisp 2014-09-09T19:36:07Z matko quit (Remote host closed the connection) 2014-09-09T19:36:10Z H4ns: i'm just asking because i'm curious. so far, all i heard was that slimv was kind of neat, but incomplete and lacking a lot of features that slime has. 2014-09-09T19:36:13Z stanislav: what does the inspector do? 2014-09-09T19:36:15Z H4ns: but maybe that has changed. 2014-09-09T19:36:33Z H4ns: the inspector is used to navigate data structures. 2014-09-09T19:36:39Z matko joined #lisp 2014-09-09T19:36:46Z H4ns: rather than just print your stuff, you can walk through it. 2014-09-09T19:36:59Z stanislav: H4ns: that's most likely, as slime is actively developed by many, while slimv is not so actively developed by one :) on the other hand, a decent editor 2014-09-09T19:37:16Z Fare changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language logs:|contact op if muted| New: SBCL 1.2.3, cl-launch 4.1 2014-09-09T19:37:25Z Fare removed ASDF 3.1.3 from the New: line 2014-09-09T19:37:43Z mood: The inspector is something you won't know you missed until you've used it, so while developing in Vim you should probably try not to think about the fact that SLIME has it 2014-09-09T19:38:14Z jtza8 joined #lisp 2014-09-09T19:38:18Z H4ns: mood: of course. it is like an ssd. when you never had one, you're not missing it. when you had one once, all hard disks suck. 2014-09-09T19:38:40Z stanislav: but what does it do, maybe slimv has it? 2014-09-09T19:38:49Z mood: H4ns: Sssh, I don't have one. 2014-09-09T19:39:34Z oGMo: jasom: yeah doubtless 2014-09-09T19:39:44Z Fare wants an SSC. Sufficiently Smart Compiler. 2014-09-09T19:39:53Z mood: stanislav: Hmm, Slimv's readme does state it supports SLIME's inspector 2014-09-09T19:40:17Z Tristam quit (Ping timeout: 245 seconds) 2014-09-09T19:40:37Z Fare: can anyone tell me whether I should switch to SLY ? 2014-09-09T19:41:07Z Fare: capitaomorte looked like he was actively modifying SLIME, and now he's working on SLY instead? What happened? 2014-09-09T19:41:08Z jasom: Fare: so did Itanium 2014-09-09T19:41:37Z oGMo: looking at the pages it's unclear what sly offers 2014-09-09T19:41:38Z Fare: jasom: ? 2014-09-09T19:41:43Z attila_lendvai: Fare: hit his head in The Wall? :) 2014-09-09T19:41:46Z jasom: Fare: SSC 2014-09-09T19:41:49Z Fare: oh 2014-09-09T19:42:03Z jasom: a SSC could actually take advantage of the VLIW architecture 2014-09-09T19:42:10Z Fare: and by "The Wall" you mean the previous maintainers? 2014-09-09T19:42:53Z attila_lendvai: I mean Helmut specifically, and also in general the conservativeness of slime the slime project management 2014-09-09T19:44:28Z lagging_troll joined #lisp 2014-09-09T19:44:46Z ggole: Pounding away at old x86 was certainly a better idea 2014-09-09T19:45:47Z ehu joined #lisp 2014-09-09T19:47:22Z zadock quit (Ping timeout: 240 seconds) 2014-09-09T19:53:59Z Gavekort: How can I make a list ((foo) (bar) (baz)) using cons? (cons (cons 'foo nil) (cons 'bar nil) (cons 'baz nil))) seems like the reasonable way to do it, but cons doesn't take three agruments 2014-09-09T19:54:59Z Bicyclidine joined #lisp 2014-09-09T19:55:25Z murftown joined #lisp 2014-09-09T19:55:26Z ggole: Figure out how to do (list 1 2 3) in terms of conses 2014-09-09T19:55:36Z ggole: Then substitute (cons 'foo nil) for 1, etc 2014-09-09T19:56:55Z zwer quit 2014-09-09T19:57:11Z Vutral joined #lisp 2014-09-09T19:57:53Z Tristam joined #lisp 2014-09-09T19:57:54Z cite-reader joined #lisp 2014-09-09T20:00:14Z Vutral quit (Excess Flood) 2014-09-09T20:00:25Z pjb: Gavekort: (cons 'a (cons 'b (cons 'c nil))) --> (a b c) 2014-09-09T20:00:57Z Tristam quit (Read error: Connection reset by peer) 2014-09-09T20:01:08Z matko quit (Ping timeout: 276 seconds) 2014-09-09T20:01:15Z dim: who's behind CCL development nowadays? is it just a bunch of folks on their free time as SBCL, or something more structured? 2014-09-09T20:01:39Z Fare: dim: mostly gb, rme, gz from clozure.com 2014-09-09T20:01:40Z pjb: http://clozure.com 2014-09-09T20:02:08Z dim: thanks 2014-09-09T20:02:31Z Fare: see #ccl 2014-09-09T20:02:38Z dim: ok so that's baked by a consulting company, still open source, but contribs all come from the same place or abouts, thanks 2014-09-09T20:02:39Z Fare: rme is quite responsive 2014-09-09T20:02:57Z dim: well it's just about business/open-source, I have my answer, thanks 2014-09-09T20:03:07Z Fare: ITA used to fund some CCL development via Clozure. Not anymore. 2014-09-09T20:03:26Z gravicappa quit (Remote host closed the connection) 2014-09-09T20:04:21Z Fare: ITA/Google tried at various point to contract external hackers for SBCL development, but for various reasons it was never a success. These days, dougk@g does a lot of SBCL hacking. 2014-09-09T20:04:32Z sroy quit (Quit: Leaving) 2014-09-09T20:04:52Z dim: public hacking? 2014-09-09T20:07:16Z Tristam joined #lisp 2014-09-09T20:10:16Z Fare: it's all in the public git indeed 2014-09-09T20:10:40Z Fare: see e.g. the latest commit da8effeb 2014-09-09T20:11:14Z Tristam quit (Max SendQ exceeded) 2014-09-09T20:13:57Z Zeedox_ joined #lisp 2014-09-09T20:14:58Z nug700_ joined #lisp 2014-09-09T20:16:21Z Tristam joined #lisp 2014-09-09T20:16:24Z _nug700_ joined #lisp 2014-09-09T20:16:58Z dim: url? 2014-09-09T20:17:42Z nug700 quit (Ping timeout: 245 seconds) 2014-09-09T20:19:28Z mood: dim: There's a mirror here: https://github.com/sbcl/sbcl 2014-09-09T20:19:42Z jtza8 quit (Remote host closed the connection) 2014-09-09T20:19:52Z nug700_ quit (Ping timeout: 240 seconds) 2014-09-09T20:19:59Z dim: thanks! 2014-09-09T20:21:06Z zadock joined #lisp 2014-09-09T20:26:46Z knob quit (Quit: Leaving) 2014-09-09T20:28:14Z angavrilov quit (Remote host closed the connection) 2014-09-09T20:32:38Z stanislav quit (Quit: Konversation terminated!) 2014-09-09T20:32:46Z stanislav joined #lisp 2014-09-09T20:32:46Z stanislav quit (Client Quit) 2014-09-09T20:34:52Z Fare: the official origin repo seems to be: git://git.code.sourceforge.net/p/sbcl/sbcl 2014-09-09T20:35:57Z gingerale quit (Ping timeout: 264 seconds) 2014-09-09T20:36:09Z marsbot is now known as marsam 2014-09-09T20:38:27Z malice quit (Remote host closed the connection) 2014-09-09T20:40:04Z mrSpec quit (Quit: mrSpec) 2014-09-09T20:41:38Z zophy joined #lisp 2014-09-09T20:44:18Z zadock quit (Quit: Leaving) 2014-09-09T20:44:47Z farhaven quit (Ping timeout: 245 seconds) 2014-09-09T20:49:48Z Pullphinger quit 2014-09-09T20:52:27Z someone joined #lisp 2014-09-09T20:53:19Z resttime joined #lisp 2014-09-09T20:53:21Z Ven joined #lisp 2014-09-09T20:53:21Z Ven quit (Client Quit) 2014-09-09T20:54:55Z dnm joined #lisp 2014-09-09T20:54:57Z marsam is now known as marsbot 2014-09-09T20:55:21Z Fare quit (Ping timeout: 272 seconds) 2014-09-09T21:00:22Z malbertife quit (Ping timeout: 252 seconds) 2014-09-09T21:00:22Z jlarocco joined #lisp 2014-09-09T21:04:19Z drmeister quit (Read error: Connection reset by peer) 2014-09-09T21:05:00Z Longlius quit (Remote host closed the connection) 2014-09-09T21:05:43Z normanrichards quit 2014-09-09T21:06:24Z drmeister joined #lisp 2014-09-09T21:09:00Z xyjprc quit (Quit: Going fishing) 2014-09-09T21:11:01Z pnpuff joined #lisp 2014-09-09T21:11:52Z Vutral joined #lisp 2014-09-09T21:11:53Z Vutral quit (Excess Flood) 2014-09-09T21:13:34Z _kruhft joined #lisp 2014-09-09T21:15:21Z k-stz quit (Remote host closed the connection) 2014-09-09T21:15:39Z mingvs_ quit (Ping timeout: 246 seconds) 2014-09-09T21:16:26Z ggole quit 2014-09-09T21:18:11Z Longlius joined #lisp 2014-09-09T21:21:56Z pnpuff quit (Quit: Lost terminal) 2014-09-09T21:23:39Z luis: I'm looking for a portable CL evaluator implemented in CL. I have found this: is there anything else? 2014-09-09T21:25:08Z Xach: I thought there was a hu.dwim.eval, but there's only a hu.dwim.partial-eval. 2014-09-09T21:25:17Z Xach can't think of anything else that might fit the bill 2014-09-09T21:25:21Z luis: I was hoping SICL had one, but it's not immediately obvious if it does. 2014-09-09T21:25:49Z luis: There's a MIR interpreter, but I'm not sure what the M stands for. 2014-09-09T21:29:26Z Bicyclidine: I wrote a simple lisp-to-closures compiler once, though i messed up blocks a bit. I think it was a few pages of code, taking advantage of a few functions in alexandria (for parsing declares) 2014-09-09T21:30:01Z hiroakip quit (Ping timeout: 268 seconds) 2014-09-09T21:30:14Z Bicyclidine: though you probably don't want to hear "just do it yourself!", so uh, sorry. 2014-09-09T21:31:17Z luis: Heh, I'm trying to avoid that option, yes. :) 2014-09-09T21:31:56Z drewc: There is the ARNESI:EVALUATE-CC function, which is that + call/cc 2014-09-09T21:32:36Z drewc: so all of common lisp written in CL save for some forms that do not bode well will continuations 2014-09-09T21:32:41Z Bicyclidine: it might not be hard to adapt that ancient code you dug up. evalhook is gone, of course 2014-09-09T21:33:52Z normanrichards joined #lisp 2014-09-09T21:36:22Z drewc: IE: (defmethod evaluate/cc ((let let-form) lex-env dyn-env k) (evaluate-let/cc (binds let) nil (body let) lex-env (import-specials let dyn-env) k)) ... and IMHO continuation transformation is a-normal form ... so a good way to implement an interpreter/compiler ! :P 2014-09-09T21:37:10Z hiroakip joined #lisp 2014-09-09T21:39:50Z luis: drewc: thanks, I'll take a look. 2014-09-09T21:41:14Z drewc: luis: fwiw, I used it in production for some 7 years or so... so it is quite functional in both senses of the word. 2014-09-09T21:41:34Z luis: drewc: is http://common-lisp.net/project/bese/repos/arnesi_dev/ the canonical repo? 2014-09-09T21:42:37Z drewc: no idea actually, though that /was/ back in the day, for some version of canon. 2014-09-09T21:43:59Z luis: darcs is complaining about it being deprecated and then it fails :( 2014-09-09T21:45:10Z luis: oh well, I'll just use quicklisp :) yay 2014-09-09T21:45:37Z drewc: it is in quicklisp, and it works there... Xach probably knows how to ask quicklisp where the repo is :) 2014-09-09T21:46:06Z drewc should read the docs/grep -ir and find out himself, but meh. 2014-09-09T21:46:24Z xyjprc joined #lisp 2014-09-09T21:47:21Z atgreen quit (Ping timeout: 264 seconds) 2014-09-09T21:47:48Z luis: drewc: https://github.com/quicklisp/quicklisp-projects/blob/master/arnesi/source.txt 2014-09-09T21:48:10Z bcoburn joined #lisp 2014-09-09T21:48:36Z zygentoma joined #lisp 2014-09-09T21:48:55Z drewc: heh, well, I have an idea now and, well, heh. 2014-09-09T21:51:02Z dim: FWIW to find any software repo from QL, I know go to http://quickdocs/ then click on "Source Code" 2014-09-09T21:51:09Z dim: that's the easiest way I've found 2014-09-09T21:51:33Z zalatovo joined #lisp 2014-09-09T21:51:46Z dim: and of course there's no "Source Code" button for arnesi ;-0 2014-09-09T21:51:48Z drewc: It used to work! I used to use darcs and knew how to migrate repos etc... now I don't and tend to use quicklisp for almost everything. ~/quicklisp/local-projects/ is full of `ln -s $FOO`s 2014-09-09T21:56:16Z luis: Xach: thanks a lot for turning us into lazy bastards, pfft. 2014-09-09T21:58:08Z dim: Xach: http://www.obrezan.com/lisp/ --- there isn't that many libs, I'm surprised, the way you mentioned it I almost expected an Ediware like collection 2014-09-09T22:01:05Z jlongster quit (Ping timeout: 260 seconds) 2014-09-09T22:01:27Z ehu quit (Ping timeout: 245 seconds) 2014-09-09T22:03:03Z defaultxr joined #lisp 2014-09-09T22:04:02Z ndrei joined #lisp 2014-09-09T22:04:29Z Nizumzen joined #lisp 2014-09-09T22:07:28Z Bicyclidine quit (Ping timeout: 252 seconds) 2014-09-09T22:08:08Z puchacz quit (Quit: Konversation terminated!) 2014-09-09T22:09:28Z Harag quit (Ping timeout: 272 seconds) 2014-09-09T22:12:00Z hiroakip quit (Ping timeout: 272 seconds) 2014-09-09T22:14:37Z cy quit (Quit: :q!) 2014-09-09T22:15:25Z Px12 joined #lisp 2014-09-09T22:16:22Z mishoo quit (Ping timeout: 240 seconds) 2014-09-09T22:16:38Z theethicalegoist joined #lisp 2014-09-09T22:19:21Z logand`` joined #lisp 2014-09-09T22:20:09Z Vutral joined #lisp 2014-09-09T22:20:12Z ahungry quit (Ping timeout: 245 seconds) 2014-09-09T22:22:14Z ahungry joined #lisp 2014-09-09T22:23:15Z logand` quit (Ping timeout: 255 seconds) 2014-09-09T22:24:04Z murftown quit (Quit: murftown) 2014-09-09T22:24:40Z zophy quit (Quit: Leaving) 2014-09-09T22:24:53Z Vutral quit (Ping timeout: 260 seconds) 2014-09-09T22:26:06Z drmeister quit (Remote host closed the connection) 2014-09-09T22:26:08Z theos joined #lisp 2014-09-09T22:29:58Z nug700 joined #lisp 2014-09-09T22:30:38Z ahungry quit (Ping timeout: 276 seconds) 2014-09-09T22:30:54Z bgs100 joined #lisp 2014-09-09T22:31:56Z fortitude quit (Quit: leaving) 2014-09-09T22:32:57Z _nug700_ quit (Ping timeout: 264 seconds) 2014-09-09T22:34:14Z innertracks joined #lisp 2014-09-09T22:36:39Z drmeister joined #lisp 2014-09-09T22:39:35Z cy joined #lisp 2014-09-09T22:41:38Z Px12 quit (Remote host closed the connection) 2014-09-09T22:42:59Z theos quit (Disconnected by services) 2014-09-09T22:43:10Z zalatovo quit (Quit: WeeChat 1.0) 2014-09-09T22:43:29Z theos joined #lisp 2014-09-09T22:46:47Z attila_lendvai quit (Quit: Leaving.) 2014-09-09T22:48:17Z urandom__ quit (Quit: Konversation terminated!) 2014-09-09T22:51:49Z wgl joined #lisp 2014-09-09T22:52:36Z _kruhft quit (Ping timeout: 246 seconds) 2014-09-09T22:52:57Z Jesin quit (Quit: Leaving) 2014-09-09T22:57:28Z jkaye quit (Remote host closed the connection) 2014-09-09T22:58:00Z jkaye joined #lisp 2014-09-09T22:59:45Z drmeister quit (Read error: Connection reset by peer) 2014-09-09T23:00:39Z vaporatorius quit (Remote host closed the connection) 2014-09-09T23:01:18Z Fare joined #lisp 2014-09-09T23:02:11Z marsbot is now known as marsam 2014-09-09T23:02:28Z jkaye quit (Ping timeout: 252 seconds) 2014-09-09T23:03:58Z LiamH quit (Quit: Leaving.) 2014-09-09T23:07:21Z ejbs quit (Ping timeout: 255 seconds) 2014-09-09T23:10:22Z kami joined #lisp 2014-09-09T23:11:44Z vanila: otwieracz, one option might be PICOBIT 2014-09-09T23:13:28Z juiko` quit (Remote host closed the connection) 2014-09-09T23:13:47Z juiko` joined #lisp 2014-09-09T23:14:42Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-09T23:15:12Z murftown joined #lisp 2014-09-09T23:15:21Z dmiles_afk joined #lisp 2014-09-09T23:15:22Z murftown quit (Client Quit) 2014-09-09T23:16:29Z theos quit (Disconnected by services) 2014-09-09T23:16:34Z marsam is now known as marsbot 2014-09-09T23:17:01Z theos joined #lisp 2014-09-09T23:19:07Z kami: Hello. I'm playing around with cl-spidermonkey and would like to add a global function (defined in CL). The function is registered correctly but when it is called by spidermonkey, I get an error: http://paste.lisp.org/display/143668 2014-09-09T23:19:39Z kami: Seems like my argument declaration is not correct. 2014-09-09T23:21:16Z kami: I'd appreciate any hint. 2014-09-09T23:22:40Z drewc: kami: without knowing anything but what you pasted : "(CL-SPIDERMONKEY:COMPILE-AND-EVALUATE-JS "print(\"Hello\")" :CALLBACK NIL)" 2014-09-09T23:23:36Z drewc: is callback allowed to be NIL? it looks like it should be a (pointer?) "(signed-byte 32)" 2014-09-09T23:26:03Z jleija joined #lisp 2014-09-09T23:26:31Z kami: drewc: yes, callback is allowed to be nil. It is an optional arg to c-a-e-js which is used like this: (if callback (funcall callback return-value-of-the-evaluated-script).. 2014-09-09T23:26:59Z edgar-rft quit (Quit: experience disappeared because of unknown reasons) 2014-09-09T23:27:12Z varjag_ quit (Quit: Connection closed for inactivity) 2014-09-09T23:29:26Z drewc: kami: ok, and what does (cffi:mem-ref argv 'smlib:jsval) return, is argv a (signed-byte 32) or NIL, what is the value of CONTEXT in that macro, why are you using a non-exported (smlib::js-value-to-string ctx jsval), what does that return, and does (smlib:js-get-string-bytes ...) like it? 2014-09-09T23:31:09Z drewc: and of course,have you DECLAIM'd the optimize for debug, and what version of SBCL are you using, and ... hmmm... DISASSEMBLE probably makes no sense here ... running out of ideas I am. 2014-09-09T23:31:15Z Oberon4278 quit 2014-09-09T23:34:11Z kami: drewc: thank you. That are enough things to check for the moment :) 2014-09-09T23:35:41Z drewc must note that he is just reading the code and asking what it returns .... and to think of the compiler as reading the code, and the runtime asking what it returns. :) 2014-09-09T23:38:07Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-09T23:38:13Z wasamasa: kami: let me guess, it's a binding to the spidermonkey js engine for common lisp? 2014-09-09T23:39:30Z theos quit (Ping timeout: 252 seconds) 2014-09-09T23:39:35Z kami: wasamasa: yes, cl-spidermonkey https://github.com/gonzojive/cl-spidermonkey. Rather old, uses 1.8. 2014-09-09T23:39:52Z wasamasa: ugh 2014-09-09T23:40:11Z wasamasa: I usually stay the hell away from anything on github where the last commit is over two years ago 2014-09-09T23:41:49Z cmack``` joined #lisp 2014-09-09T23:43:29Z wws joined #lisp 2014-09-09T23:43:50Z cmack`` quit (Ping timeout: 268 seconds) 2014-09-09T23:44:03Z billstclair quit (Disconnected by services) 2014-09-09T23:44:07Z wws is now known as billstclair 2014-09-09T23:44:11Z billstclair quit (Changing host) 2014-09-09T23:44:11Z billstclair joined #lisp 2014-09-09T23:44:14Z drewc: kami: http://marijnhaverbeke.nl/cl-javascript/ does not have the ECMAScript you want eh? CL+C+Spidermonkey+Javascript seems like a recipe for too much at once, like that fact that JS and C do not know anything about NIL at all, for example :) 2014-09-09T23:45:16Z kami: drewc: I'll poke at it a bit more tomorrow and if I don't find a solution, I'll try cl-javascript. Thank you for the hint. 2014-09-09T23:45:24Z drewc: https://github.com/akapav/js <--- less then 2 years ago! 2014-09-09T23:45:43Z kami: I updated http://paste.lisp.org/display/143668#1 2014-09-09T23:46:25Z drewc has Turbo-C, QBASIC and PCDOS that he runs under QEMU .. a wee bit older than 2 years, but what does how know about modern code! :D 2014-09-09T23:47:11Z Vutral joined #lisp 2014-09-09T23:47:26Z kami: at least argc is correct 2014-09-09T23:47:51Z juiko` quit (Ping timeout: 255 seconds) 2014-09-09T23:48:11Z kami: I just tried 'print("a", "b")' and argc changes to 2 2014-09-09T23:48:23Z jasom: I still remember Turbo Pascal; it was an amazing feat. 2014-09-09T23:48:28Z drewc: kami: and smlib:js-bool is the same as a common lisp string? 2014-09-09T23:49:23Z drewc: jasom: that was the third lang I learned. First was BASIC of course, Second was "Turing" (from UofT AFAIK). 2014-09-09T23:49:42Z drewc: Fourth was C ... Turbo-C :) 2014-09-09T23:49:50Z jasom: I used Power C 2014-09-09T23:49:52Z leo2007 quit (Ping timeout: 245 seconds) 2014-09-09T23:49:57Z Vutral quit (Read error: Connection reset by peer) 2014-09-09T23:50:02Z jasom: http://www.mixsoftware.com/product/powerc.htm 2014-09-09T23:51:08Z drewc: ah yes, I remember that and used it ... on my Compaq XT IIRC 2014-09-09T23:52:04Z CrazyEddy joined #lisp 2014-09-09T23:52:24Z kami: drewc: thank you. That was the problem. I didn't return a jsval boolean. The result of format was that NIL. 2014-09-09T23:52:28Z kami: Thanks! 2014-09-09T23:52:43Z drewc: I remember liking Turbo-C because the editor was similar to edit.com or something along those lines. 2014-09-09T23:53:12Z jasom: drewc: it used word-star keybindings; is that what you're thinking of? 2014-09-09T23:53:16Z drewc: kami: I must note that I was just reading the code and asking what it returns .... and to think of the compiler as reading the code, and the runtime asking what it returns. :) 2014-09-09T23:53:21Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-09T23:53:29Z drewc: jasom: yes!! 2014-09-09T23:53:42Z drewc: ahh now my memories are flooding in ... 2014-09-09T23:53:45Z kami: drewc: you're a good compiler AND runtime! 2014-09-09T23:54:23Z kami: Turbo-C had a lot of weird shortcut keys. 2014-09-09T23:54:58Z drewc: jasom: time to go play kings quest or leisure suit, on a monochrome green screen, and then a spreadsheet on 1-2-3, and I think I will have relived the 80's 2014-09-09T23:55:19Z jasom: drewc: I had amber, not green. 2014-09-09T23:55:20Z kami: :) 2014-09-09T23:55:23Z EvW quit (Quit: EvW) 2014-09-09T23:55:25Z vinleod quit (Quit: Computer has gone to sleep.) 2014-09-09T23:55:41Z DKordic` left #lisp 2014-09-09T23:55:42Z jasom: HGC 2014-09-09T23:56:56Z drewc: jasom: I had both ... Green on the IBM XT and Commodore PET, Amber on Compaq Portable Computer and my first 286. IIRC 2014-09-09T23:57:15Z jasom: I had a WYSE 12.5MHz 286 2014-09-09T23:57:19Z drewc: http://www.ebay.com/itm/Rare-Original-1983-Compaq-Portable-Computer-8088-Processor-1st-PC-Clone-Luggable-/281123146487?pt=US_Vintage_Computers_Mainframes&hash=item41743ecaf7 <--- tempting. 2014-09-09T23:57:47Z emma quit (Ping timeout: 245 seconds) 2014-09-09T23:57:56Z juiko` joined #lisp 2014-09-09T23:58:11Z drewc: that is where I learned how to program... making config.sys and autoexec.bat run the right TSR's so my games would work... 2014-09-09T23:58:19Z drewc: then making TSR's 2014-09-09T23:58:36Z kami: for the records, here is the working version: http://paste.lisp.org/display/143668#2 2014-09-09T23:58:47Z emma joined #lisp 2014-09-09T23:59:02Z jasom: drewc: sounds very familiar, though I'm guessing I'm a couple years younger than you (I got hand-me-down computers). 2014-09-10T00:00:47Z jasom: Though you ended up on a sailboat in West Vancouver, and I had to settle for living a mile from the ocean in Santa Barbara. 2014-09-10T00:00:50Z leo2007 joined #lisp 2014-09-10T00:01:26Z kami: jasom: if I may interrupt your nostalgia, this is yours, isn't it? https://github.com/jasom/foil 2014-09-10T00:01:39Z jasom: kami: yes 2014-09-10T00:01:47Z jasom: kami: well I got it working on non-lisp-works 2014-09-10T00:01:54Z drewc: jasom: well, I am somewhat young [36 years ... and I think the life expectancy in .ca is like 72(??), so 2x age of majority and start of middle aged :)] ... but we were given that computer and remember '87 as the year. 2014-09-10T00:02:39Z Sgeo joined #lisp 2014-09-10T00:02:42Z kami: jasom: thank you. I am currently experimenting with it. I merged it with https://github.com/nja/foil 2014-09-10T00:02:51Z zygentoma quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-10T00:02:59Z drewc: so, no idea if age has to do with it ... but that is what my feeble old mind recalls 2014-09-10T00:03:04Z kami: (cherry-picked your changes on top of his cvs-imported repo) 2014-09-10T00:03:35Z jasom: oh, didn't know there was a CVS import somewhere; I was just playing around and needed version control. I got gtk# working on top of it though. 2014-09-10T00:03:36Z slyrus quit (Ping timeout: 255 seconds) 2014-09-10T00:03:44Z nand1` quit (Remote host closed the connection) 2014-09-10T00:03:55Z jasom: I don't recall if I pushed my changes needed for that out yet; 2014-09-10T00:04:19Z jasom: gtk# has lovely things like objects with methods\ named "New" and "add" and "Add" 2014-09-10T00:04:28Z kami: jasom: no, there were only the trivial-garbage related changes 2014-09-10T00:04:30Z jasom: which plays poorly with foil's case-insensitivity 2014-09-10T00:04:38Z jasom: kami: oh, so at least no memory leaks 2014-09-10T00:05:03Z jasom: kami: I think I have locally a switch to closer-mop as well for ECL and CCL support 2014-09-10T00:05:32Z kami: jasom: I haven't stress-tested it yet. Just trying to bridge to some dayjob-related java code. 2014-09-10T00:06:10Z jasom: kami: I don't know how actually useful it is, but it's pretty slick to see completion and apropos and such for java and CLI functions from slime 2014-09-10T00:06:28Z kami: If you push your changes, I will merge them on top of my nja repo fork. 2014-09-10T00:07:24Z kami: jasom: yes, that's nice. 2014-09-10T00:08:01Z jasom: mostly only related to the C# side of things in the more recent changes; some of them might be too opinionated for you 2014-09-10T00:08:12Z Fare quit (Ping timeout: 245 seconds) 2014-09-10T00:08:25Z bcoburn quit (Remote host closed the connection) 2014-09-10T00:08:55Z kami: jasom: if they don't affect the java side negatively, that's no problem 2014-09-10T00:09:42Z kami: I have to get some sleep. 2 am here. Good night! 2014-09-10T00:09:44Z jasom: I'm not sure, you can feel free to look over it; I made some changes to reduce the size of the top-level forms generated; IIRC it would put everything, including DEFUNs inside a single LET 2014-09-10T00:10:01Z jasom: which caused very poor behavior in a lot of lisps 2014-09-10T00:10:53Z bcoburn joined #lisp 2014-09-10T00:10:58Z kami: jasom: I will try them out and get back to you. 2014-09-10T00:13:37Z Longlius quit (Remote host closed the connection) 2014-09-10T00:15:37Z normanrichards quit 2014-09-10T00:15:54Z jasom: generating wrappers for just the Gtk package of gtksharp yielded 23MB 2014-09-10T00:16:28Z wasamasa: jasom: so you've implemented something compiling js to cl in a bit more than 3000 lines? 2014-09-10T00:16:43Z juiko`` joined #lisp 2014-09-10T00:16:46Z innertracks quit (Ping timeout: 272 seconds) 2014-09-10T00:16:48Z jasom: wasamasa: I've done no such think that I'm aware of 2014-09-10T00:17:03Z wasamasa: jasom: or no, the guy behind cl-javascript 2014-09-10T00:17:16Z CrazyEddy quit (Ping timeout: 252 seconds) 2014-09-10T00:17:57Z kami quit (Ping timeout: 264 seconds) 2014-09-10T00:18:27Z jasom: wasamasa: it does seem reasonable, there are few things that javascript does that lisp doesn't 2014-09-10T00:18:43Z wasamasa: jasom: thought it would take more code 2014-09-10T00:19:04Z jasom: might need some fancy CLOS code to get prototype based objects working just right 2014-09-10T00:19:10Z zRecursive joined #lisp 2014-09-10T00:19:11Z juiko` quit (Ping timeout: 276 seconds) 2014-09-10T00:20:37Z dto joined #lisp 2014-09-10T00:28:05Z ivan4th` joined #lisp 2014-09-10T00:29:52Z ivan4th quit (Ping timeout: 245 seconds) 2014-09-10T00:30:10Z zz_karupa is now known as karupa 2014-09-10T00:35:49Z theos joined #lisp 2014-09-10T00:38:15Z Fare joined #lisp 2014-09-10T00:38:35Z cite-reader quit (Quit: leaving) 2014-09-10T00:38:44Z oleo is now known as Guest3107 2014-09-10T00:39:31Z duggiefresh joined #lisp 2014-09-10T00:40:29Z oleo__ joined #lisp 2014-09-10T00:41:14Z theos quit (Disconnected by services) 2014-09-10T00:41:42Z theos joined #lisp 2014-09-10T00:41:50Z Guest3107 quit (Ping timeout: 255 seconds) 2014-09-10T00:42:48Z vydd quit (Remote host closed the connection) 2014-09-10T00:43:35Z drmeister joined #lisp 2014-09-10T00:45:17Z CrazyEddy joined #lisp 2014-09-10T00:50:19Z jusss joined #lisp 2014-09-10T00:50:33Z BitPuffin quit (Ping timeout: 246 seconds) 2014-09-10T00:51:10Z defaultxr quit (Quit: brb) 2014-09-10T00:52:57Z Longlius joined #lisp 2014-09-10T00:53:34Z defaultxr joined #lisp 2014-09-10T00:56:53Z harish quit (Ping timeout: 276 seconds) 2014-09-10T00:58:37Z jkaye joined #lisp 2014-09-10T00:59:08Z zwer joined #lisp 2014-09-10T00:59:50Z theos quit (Disconnected by services) 2014-09-10T01:00:12Z theos joined #lisp 2014-09-10T01:02:48Z jkaye quit (Ping timeout: 246 seconds) 2014-09-10T01:05:47Z slyrus joined #lisp 2014-09-10T01:08:54Z zeitue quit (Quit: Leaving) 2014-09-10T01:10:47Z prxq_ joined #lisp 2014-09-10T01:13:57Z prxq quit (Ping timeout: 245 seconds) 2014-09-10T01:16:05Z AntiSpamMeta quit (Quit: Automatic restart triggered due to persistent lag. Freenode staff: If this is happening too frequently, please set a nickserv freeze on my account, and once my connection is stable, unfreeze the account and /kill me to trigger a reconnect.) 2014-09-10T01:16:21Z AntiSpamMeta joined #lisp 2014-09-10T01:23:36Z ahungry joined #lisp 2014-09-10T01:24:54Z duggiefresh quit 2014-09-10T01:28:08Z theethicalegoist quit (Quit: Leaving) 2014-09-10T01:29:47Z mindCrime__ quit (Remote host closed the connection) 2014-09-10T01:30:06Z mindCrime__ joined #lisp 2014-09-10T01:30:32Z LiamH joined #lisp 2014-09-10T01:35:03Z codeburg quit (Ping timeout: 264 seconds) 2014-09-10T01:38:49Z Zeedox__ joined #lisp 2014-09-10T01:40:57Z Zeedox_ quit (Ping timeout: 246 seconds) 2014-09-10T01:41:05Z codeburg joined #lisp 2014-09-10T01:53:29Z vydd joined #lisp 2014-09-10T01:53:29Z vydd quit (Changing host) 2014-09-10T01:53:29Z vydd joined #lisp 2014-09-10T01:55:43Z nand1 joined #lisp 2014-09-10T01:56:57Z Vivitron quit (Ping timeout: 245 seconds) 2014-09-10T01:57:42Z vydd quit (Ping timeout: 245 seconds) 2014-09-10T02:04:15Z zeitue joined #lisp 2014-09-10T02:05:35Z Vutral joined #lisp 2014-09-10T02:08:10Z dnm quit 2014-09-10T02:10:37Z mingvs joined #lisp 2014-09-10T02:11:13Z Vutral quit (Ping timeout: 260 seconds) 2014-09-10T02:12:11Z chaps joined #lisp 2014-09-10T02:13:19Z harish joined #lisp 2014-09-10T02:19:04Z jlongster joined #lisp 2014-09-10T02:21:07Z slyrus quit (Ping timeout: 245 seconds) 2014-09-10T02:23:55Z Guthur joined #lisp 2014-09-10T02:24:00Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-10T02:27:50Z _schulte_ joined #lisp 2014-09-10T02:32:45Z theos quit (Disconnected by services) 2014-09-10T02:33:13Z theos joined #lisp 2014-09-10T02:33:38Z _schulte_ quit (Quit: leaving) 2014-09-10T02:35:45Z erikc joined #lisp 2014-09-10T02:40:49Z CrazyEddy joined #lisp 2014-09-10T02:41:37Z TDog joined #lisp 2014-09-10T02:42:51Z erikc quit (Quit: erikc) 2014-09-10T02:43:39Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-10T02:46:55Z LiamH quit (Quit: Leaving.) 2014-09-10T02:48:59Z kpreid quit (Read error: Connection reset by peer) 2014-09-10T02:49:05Z kpreid_ joined #lisp 2014-09-10T02:51:46Z theos quit (Disconnected by services) 2014-09-10T02:52:18Z theos joined #lisp 2014-09-10T02:54:44Z Fare quit (Remote host closed the connection) 2014-09-10T02:54:50Z theos quit (Disconnected by services) 2014-09-10T02:55:19Z theos joined #lisp 2014-09-10T02:58:20Z Vutral joined #lisp 2014-09-10T02:58:23Z Vutral quit (Excess Flood) 2014-09-10T02:59:23Z jkaye joined #lisp 2014-09-10T03:03:44Z jkaye quit (Ping timeout: 252 seconds) 2014-09-10T03:03:54Z bgs100 quit (Quit: bgs100) 2014-09-10T03:07:03Z leo2007 quit (Ping timeout: 246 seconds) 2014-09-10T03:07:28Z Shaftoe___ joined #lisp 2014-09-10T03:09:42Z kpreid_ quit (Quit: Quitting) 2014-09-10T03:11:33Z vanila quit (Quit: Leaving) 2014-09-10T03:14:22Z leo2007 joined #lisp 2014-09-10T03:14:39Z DrCode quit (Ping timeout: 264 seconds) 2014-09-10T03:18:25Z gaze__ joined #lisp 2014-09-10T03:19:04Z gaze__: yoo... how do I interactively develop using cl-opengl? 2014-09-10T03:19:10Z nipra quit (Ping timeout: 272 seconds) 2014-09-10T03:19:25Z gaze__: it seems like I need to use swank's fd-handler communication mode or my app hangs 2014-09-10T03:19:45Z DrCode joined #lisp 2014-09-10T03:19:51Z gaze__: but then any commands I send get queued 2014-09-10T03:19:56Z beach joined #lisp 2014-09-10T03:20:02Z beach: Good morning everyone! 2014-09-10T03:23:46Z ered quit (Read error: No route to host) 2014-09-10T03:26:09Z ooben joined #lisp 2014-09-10T03:26:43Z xyjprc quit (Remote host closed the connection) 2014-09-10T03:26:48Z ooben: Is it OK to use macro with-slots on a structure? 2014-09-10T03:27:35Z kpreid joined #lisp 2014-09-10T03:28:37Z ered joined #lisp 2014-09-10T03:29:07Z rme: ooben: it's not portable CL 2014-09-10T03:29:54Z zRecursive: ooben: there is with-accessors for structure 2014-09-10T03:30:47Z ooben: thanks all. i was just looking to save some typing. guess i will use with-accessors 2014-09-10T03:31:16Z karupa is now known as zz_karupa 2014-09-10T03:32:00Z patbarron joined #lisp 2014-09-10T03:32:03Z Saigut_ joined #lisp 2014-09-10T03:33:45Z theos quit (Disconnected by services) 2014-09-10T03:34:16Z theos joined #lisp 2014-09-10T03:34:56Z ooben quit (Quit: (. _ .))) 2014-09-10T03:35:13Z Saigut quit (Ping timeout: 260 seconds) 2014-09-10T03:35:50Z leo2007 quit (Quit: rcirc on GNU Emacs 24.4.50.1) 2014-09-10T03:44:36Z marsbot is now known as marsam 2014-09-10T03:44:51Z nipra joined #lisp 2014-09-10T03:48:17Z slyrus joined #lisp 2014-09-10T03:51:42Z drmeister: Hello beach. 2014-09-10T03:53:58Z gingerale joined #lisp 2014-09-10T03:54:00Z pillton: Good morning beach. 2014-09-10T03:58:55Z Saigut joined #lisp 2014-09-10T03:59:57Z beach: drmeister: Sorry about talking to you in the middle of the night. 2014-09-10T04:00:08Z jleija quit (Quit: leaving) 2014-09-10T04:00:34Z drmeister: No problem - I'm often up very late. I'm trying to not do that quite as often. 2014-09-10T04:00:51Z drmeister: How are things going? 2014-09-10T04:01:37Z beach: Very well, thank you. I have done a significant part of the implementation-independent form-to-AST translator for Cleavir. 2014-09-10T04:01:39Z Saigut_ quit (Ping timeout: 246 seconds) 2014-09-10T04:02:50Z drmeister: Excellent. 2014-09-10T04:03:54Z drmeister: You may have seen it but oGMo kindly made some changes to the cl-conspack system and now it works for me. 2014-09-10T04:04:15Z beach: Yeah, I saw that. Great! 2014-09-10T04:06:08Z Guthur: hi beach 2014-09-10T04:06:20Z Guthur: just having a look at your SICL project 2014-09-10T04:06:21Z drmeister: I need something that will transfer CL/C++ objects accurately between OpenMPI processes on large parallel computers. 2014-09-10T04:06:44Z beach: Guthur: Great. Let me know if you have any comments. 2014-09-10T04:06:56Z drmeister: beach: How did you feel about that posting to Hacker News? 2014-09-10T04:06:59Z dto quit (Remote host closed the connection) 2014-09-10T04:07:05Z Guthur: was wondering if the project defines the minimum required primitives for each module? 2014-09-10T04:07:24Z Guthur: my knowledge of SICL is very superficial at the moment 2014-09-10T04:07:26Z beach: drmeister: I agree with some people here that it might create unwanted bug reports and such. 2014-09-10T04:07:29Z marsam is now known as marsbot 2014-09-10T04:07:53Z drmeister: That was my take on it. 2014-09-10T04:08:02Z Guthur: but from my understanding it will be a collection of components that can be used to flesh out a full implementation 2014-09-10T04:08:27Z beach: Guthur: Maybe not for each module. 2014-09-10T04:09:21Z beach: Guthur: It also depends on the way the implementer wants to write (in particular bootstrap) his or her implementation. 2014-09-10T04:09:29Z Guthur: true 2014-09-10T04:09:47Z jusss quit (Ping timeout: 245 seconds) 2014-09-10T04:09:53Z Guthur: it would be great to have some sort of idea of what is minimally needed to bootstrap the system 2014-09-10T04:09:58Z beach: Guthur: There is this widespread idea that you must bootstrap from C or something equivalent. I think it is much more convenient to use a full CL implementation as a host for bootstrapping. 2014-09-10T04:10:10Z Shaftoe____ joined #lisp 2014-09-10T04:11:04Z Shaftoe_____ joined #lisp 2014-09-10T04:11:13Z beach: Guthur: As a consequence, people get confused by the apparently circular dependencies between some SICL modules. In reality, there is no circularity, because a module can depend on the host system as much as it wants. 2014-09-10T04:13:03Z Guthur: beach: I will continue to have a dig around SICL 2014-09-10T04:13:08Z beach: Great! 2014-09-10T04:13:09Z Shaftoe___ quit (Ping timeout: 264 seconds) 2014-09-10T04:13:10Z Shaftoe_____ is now known as Shaftoe___ 2014-09-10T04:13:15Z Guthur: and will forward any feedback 2014-09-10T04:13:45Z beach: Thanks. 2014-09-10T04:15:10Z Shaftoe____ quit (Ping timeout: 268 seconds) 2014-09-10T04:15:16Z Longlius quit (Quit: Leaving) 2014-09-10T04:16:06Z mr-foobar quit (Quit: Leaving...) 2014-09-10T04:23:31Z theos: hey 2014-09-10T04:25:06Z beach: Hello theos. 2014-09-10T04:25:09Z drmeister: Well, I'm off to bed - 'night all. 2014-09-10T04:26:57Z theos: cya 2014-09-10T04:28:30Z nell joined #lisp 2014-09-10T04:32:22Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-10T04:36:02Z cmack```` joined #lisp 2014-09-10T04:37:45Z cmack``` quit (Ping timeout: 260 seconds) 2014-09-10T04:38:13Z rme quit (Quit: rme) 2014-09-10T04:39:33Z stepnem quit (Ping timeout: 264 seconds) 2014-09-10T04:39:49Z gaze__ quit (Ping timeout: 246 seconds) 2014-09-10T04:44:30Z mhd joined #lisp 2014-09-10T04:45:26Z ustunozgur joined #lisp 2014-09-10T04:46:17Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-10T04:48:52Z CrazyEddy joined #lisp 2014-09-10T04:52:16Z mhd quit (Connection reset by peer) 2014-09-10T04:52:47Z mhd quit (Read error: Connection reset by peer) 2014-09-10T04:53:06Z mhd joined #lisp 2014-09-10T04:56:06Z nell quit (Ping timeout: 255 seconds) 2014-09-10T04:57:17Z nell joined #lisp 2014-09-10T04:57:44Z ustunozgur quit (Remote host closed the connection) 2014-09-10T04:58:57Z ustunozg_ joined #lisp 2014-09-10T04:59:15Z gingerale quit (Ping timeout: 255 seconds) 2014-09-10T04:59:34Z Vutral joined #lisp 2014-09-10T05:00:02Z oleo__ quit (Quit: Verlassend) 2014-09-10T05:01:48Z patbarron quit (Quit: Exiting HexChat) 2014-09-10T05:02:45Z MrWoohoo joined #lisp 2014-09-10T05:04:21Z Vutral quit (Ping timeout: 260 seconds) 2014-09-10T05:04:35Z zz_karupa is now known as karupa 2014-09-10T05:05:38Z leo2007 joined #lisp 2014-09-10T05:06:06Z pranavrc joined #lisp 2014-09-10T05:07:13Z Shaftoe___ joined #lisp 2014-09-10T05:07:45Z bit` quit (Ping timeout: 264 seconds) 2014-09-10T05:13:09Z Saigut quit (Read error: Connection reset by peer) 2014-09-10T05:13:25Z effy quit (Read error: Connection reset by peer) 2014-09-10T05:14:06Z Saigut joined #lisp 2014-09-10T05:14:31Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-10T05:15:52Z jlongster quit (Ping timeout: 240 seconds) 2014-09-10T05:16:27Z CrazyWoods joined #lisp 2014-09-10T05:16:50Z Shaftoe___ joined #lisp 2014-09-10T05:20:13Z Shaftoe___ quit (Client Quit) 2014-09-10T05:21:02Z jlongster joined #lisp 2014-09-10T05:22:50Z mishoo joined #lisp 2014-09-10T05:22:59Z bit` joined #lisp 2014-09-10T05:24:31Z mhd quit (Ping timeout: 182 seconds) 2014-09-10T05:26:42Z mhd quit (Ping timeout: 255 seconds) 2014-09-10T05:27:16Z jusss joined #lisp 2014-09-10T05:27:59Z pt1 joined #lisp 2014-09-10T05:28:43Z mhd joined #lisp 2014-09-10T05:29:07Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-10T05:34:03Z Shaftoe___ joined #lisp 2014-09-10T05:34:22Z pt1 quit (Remote host closed the connection) 2014-09-10T05:34:42Z emma quit (Ping timeout: 272 seconds) 2014-09-10T05:36:23Z mhd quit (Read error: Connection reset by peer) 2014-09-10T05:36:36Z mhd joined #lisp 2014-09-10T05:37:08Z MoALTz quit (Quit: Leaving) 2014-09-10T05:37:11Z emma joined #lisp 2014-09-10T05:40:33Z ustunozgur joined #lisp 2014-09-10T05:43:51Z ustunozg_ quit (Ping timeout: 246 seconds) 2014-09-10T05:43:51Z angavrilov joined #lisp 2014-09-10T05:44:35Z chaps quit (Ping timeout: 268 seconds) 2014-09-10T05:45:15Z malbertife joined #lisp 2014-09-10T05:45:33Z cy quit (Quit: :q!) 2014-09-10T05:46:17Z mr-foobar joined #lisp 2014-09-10T05:47:29Z mrSpec joined #lisp 2014-09-10T05:47:33Z sid_cypher joined #lisp 2014-09-10T05:49:37Z Zeedox__ is now known as Zeedox 2014-09-10T05:49:54Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-10T05:50:45Z CrazyEddy quit (Ping timeout: 268 seconds) 2014-09-10T05:55:36Z beach left #lisp 2014-09-10T05:55:53Z ``Erik quit (Ping timeout: 276 seconds) 2014-09-10T05:56:31Z Shaftoe___ joined #lisp 2014-09-10T05:59:15Z Shaftoe___ quit (Client Quit) 2014-09-10T06:03:24Z defaultxr quit (Quit: gnight) 2014-09-10T06:04:20Z CrazyEddy joined #lisp 2014-09-10T06:04:33Z ``Erik joined #lisp 2014-09-10T06:09:15Z juiko`` quit (Ping timeout: 268 seconds) 2014-09-10T06:10:39Z Harag joined #lisp 2014-09-10T06:12:42Z ustunozgur quit (Ping timeout: 245 seconds) 2014-09-10T06:15:15Z malbertife_ joined #lisp 2014-09-10T06:17:46Z CrazyEddy quit (Ping timeout: 272 seconds) 2014-09-10T06:18:24Z Saigut quit (Ping timeout: 272 seconds) 2014-09-10T06:19:09Z malbertife quit (Ping timeout: 264 seconds) 2014-09-10T06:19:12Z shka joined #lisp 2014-09-10T06:31:02Z CrazyEddy joined #lisp 2014-09-10T06:31:09Z jlongster quit (Ping timeout: 260 seconds) 2014-09-10T06:31:20Z pt1 joined #lisp 2014-09-10T06:33:27Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-10T06:34:04Z mhd joined #lisp 2014-09-10T06:35:18Z Shaftoe___ joined #lisp 2014-09-10T06:35:40Z malbertife_ quit (Ping timeout: 252 seconds) 2014-09-10T06:36:32Z farhaven joined #lisp 2014-09-10T06:46:10Z logand``: dim: cl-olefs now reads the spreadsheet you had problems with; however, i briefly looked at the spreadsheet and it seems that there are data missing in the output sexp, likely because some part of the spreadsheet follow hidden column and scrool separately; please let me know if there is something wrong and i will investigate further 2014-09-10T06:46:38Z logand``: s/scrool/scroll 2014-09-10T06:50:53Z sharkey quit (Quit: sharkey has no reason) 2014-09-10T06:51:14Z jusss quit (Read error: Connection reset by peer) 2014-09-10T06:53:09Z emma quit (Ping timeout: 246 seconds) 2014-09-10T06:54:22Z Zeedox quit (Ping timeout: 252 seconds) 2014-09-10T06:58:53Z jusss joined #lisp 2014-09-10T06:58:57Z ``Erik quit (Ping timeout: 255 seconds) 2014-09-10T07:01:57Z Harag quit (Ping timeout: 245 seconds) 2014-09-10T07:02:09Z emma joined #lisp 2014-09-10T07:02:15Z joneshf-laptop quit (Ping timeout: 246 seconds) 2014-09-10T07:02:21Z joneshf-laptop_ joined #lisp 2014-09-10T07:02:28Z ``Erik joined #lisp 2014-09-10T07:03:20Z Px12 joined #lisp 2014-09-10T07:03:37Z Harag joined #lisp 2014-09-10T07:06:02Z zRecursive quit (Remote host closed the connection) 2014-09-10T07:07:09Z emma quit (Ping timeout: 264 seconds) 2014-09-10T07:07:57Z wooden quit (Ping timeout: 255 seconds) 2014-09-10T07:10:12Z mvilleneuve joined #lisp 2014-09-10T07:11:27Z nug700 quit (Ping timeout: 245 seconds) 2014-09-10T07:11:37Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-10T07:12:16Z smull_ quit (Remote host closed the connection) 2014-09-10T07:13:32Z kanru left #lisp 2014-09-10T07:14:02Z easye quit (Read error: Connection reset by peer) 2014-09-10T07:14:48Z easye joined #lisp 2014-09-10T07:15:07Z easye quit (Remote host closed the connection) 2014-09-10T07:15:20Z easye joined #lisp 2014-09-10T07:15:21Z kanru joined #lisp 2014-09-10T07:15:27Z xach quit (Ping timeout: 185 seconds) 2014-09-10T07:16:06Z ananna quit (Quit: No Ping reply in 180 seconds.) 2014-09-10T07:16:11Z anannie joined #lisp 2014-09-10T07:16:11Z anannie quit (Changing host) 2014-09-10T07:16:11Z anannie joined #lisp 2014-09-10T07:17:09Z wooden joined #lisp 2014-09-10T07:17:15Z Shaftoe___ joined #lisp 2014-09-10T07:19:13Z Px12 quit (Ping timeout: 260 seconds) 2014-09-10T07:19:48Z Vutral joined #lisp 2014-09-10T07:19:54Z Vutral quit (Changing host) 2014-09-10T07:19:54Z Vutral joined #lisp 2014-09-10T07:20:12Z ustunozgur joined #lisp 2014-09-10T07:22:03Z emma joined #lisp 2014-09-10T07:25:45Z Vutral quit (Ping timeout: 260 seconds) 2014-09-10T07:26:27Z emma quit (Ping timeout: 245 seconds) 2014-09-10T07:30:36Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-10T07:31:11Z pt1_ joined #lisp 2014-09-10T07:31:13Z Px12 joined #lisp 2014-09-10T07:31:33Z CrazyWoods quit (Quit: leaving) 2014-09-10T07:34:30Z emma joined #lisp 2014-09-10T07:34:45Z pt1 quit (Ping timeout: 264 seconds) 2014-09-10T07:36:10Z nand1 quit (Remote host closed the connection) 2014-09-10T07:36:32Z Shaftoe___ joined #lisp 2014-09-10T07:36:40Z nand1 joined #lisp 2014-09-10T07:37:15Z korqio- quit (Ping timeout: 246 seconds) 2014-09-10T07:37:28Z EvW joined #lisp 2014-09-10T07:40:19Z korqio- joined #lisp 2014-09-10T07:41:12Z jtza8 joined #lisp 2014-09-10T07:44:25Z yacks quit (Ping timeout: 260 seconds) 2014-09-10T07:44:27Z Beetny joined #lisp 2014-09-10T07:45:49Z nydel quit (Ping timeout: 260 seconds) 2014-09-10T07:47:02Z theos quit (Disconnected by services) 2014-09-10T07:47:29Z urandom__ joined #lisp 2014-09-10T07:47:36Z theos joined #lisp 2014-09-10T07:47:59Z JuanDaugherty joined #lisp 2014-09-10T07:49:06Z Px12 quit (Remote host closed the connection) 2014-09-10T07:49:38Z arenz joined #lisp 2014-09-10T07:49:52Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-10T07:51:30Z prxq_ quit (Remote host closed the connection) 2014-09-10T07:56:02Z smull joined #lisp 2014-09-10T07:57:00Z cmack```` quit (Ping timeout: 255 seconds) 2014-09-10T07:58:08Z dkcl joined #lisp 2014-09-10T07:58:30Z mhd joined #lisp 2014-09-10T08:00:17Z pt1_ quit (Remote host closed the connection) 2014-09-10T08:01:10Z pt1 joined #lisp 2014-09-10T08:01:15Z hiroakip joined #lisp 2014-09-10T08:03:03Z xificurC joined #lisp 2014-09-10T08:07:36Z theos quit (Disconnected by services) 2014-09-10T08:07:50Z ustunozgur quit (Ping timeout: 276 seconds) 2014-09-10T08:08:11Z theos joined #lisp 2014-09-10T08:08:12Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-10T08:09:05Z chaps joined #lisp 2014-09-10T08:10:53Z tkhoa2711 joined #lisp 2014-09-10T08:11:25Z Maurice_TCF joined #lisp 2014-09-10T08:12:40Z ejt quit (Quit: leaving) 2014-09-10T08:16:08Z kcj joined #lisp 2014-09-10T08:16:17Z hiroakip quit (Ping timeout: 268 seconds) 2014-09-10T08:18:12Z Harag quit (Ping timeout: 245 seconds) 2014-09-10T08:18:35Z Shaftoe___ joined #lisp 2014-09-10T08:18:59Z kanru quit (Read error: Connection reset by peer) 2014-09-10T08:20:03Z kanru joined #lisp 2014-09-10T08:20:58Z Shaftoe___ quit (Client Quit) 2014-09-10T08:23:06Z Shaftoe___ joined #lisp 2014-09-10T08:26:02Z kanru quit (Read error: Connection reset by peer) 2014-09-10T08:26:16Z zarul quit (Read error: Connection reset by peer) 2014-09-10T08:27:00Z kanru joined #lisp 2014-09-10T08:27:10Z zarul joined #lisp 2014-09-10T08:27:10Z zarul quit (Changing host) 2014-09-10T08:27:10Z zarul joined #lisp 2014-09-10T08:27:24Z kanru quit (Remote host closed the connection) 2014-09-10T08:30:37Z Harag joined #lisp 2014-09-10T08:34:03Z kanru joined #lisp 2014-09-10T08:35:41Z momo-reina joined #lisp 2014-09-10T08:37:05Z zacharias joined #lisp 2014-09-10T08:41:24Z mhd quit (Input/output error) 2014-09-10T08:41:25Z mhd quit (Remote host closed the connection) 2014-09-10T08:42:21Z pranavrc_ joined #lisp 2014-09-10T08:42:47Z pranavrc quit (Ping timeout: 272 seconds) 2014-09-10T08:42:58Z mhd joined #lisp 2014-09-10T08:45:06Z BitPuffin joined #lisp 2014-09-10T08:47:01Z mhd quit (Connection reset by peer) 2014-09-10T08:47:14Z mhd_ joined #lisp 2014-09-10T08:47:14Z mhd quit (Read error: Connection reset by peer) 2014-09-10T08:47:58Z hlavaty joined #lisp 2014-09-10T08:50:41Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-10T08:54:30Z Px12 joined #lisp 2014-09-10T08:55:18Z mhd joined #lisp 2014-09-10T08:55:19Z kcj quit (Read error: Connection reset by peer) 2014-09-10T08:56:29Z mhd_ quit (Ping timeout: 182 seconds) 2014-09-10T08:58:18Z mhd_ quit (Ping timeout: 252 seconds) 2014-09-10T08:58:44Z alchemis7 quit (Remote host closed the connection) 2014-09-10T08:59:02Z theos quit (Disconnected by services) 2014-09-10T08:59:29Z theos joined #lisp 2014-09-10T09:00:10Z mhd quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-10T09:00:10Z mhd quit (Client Quit) 2014-09-10T09:02:14Z Px12 quit (Remote host closed the connection) 2014-09-10T09:04:05Z munksgaard joined #lisp 2014-09-10T09:07:33Z momo-reina quit (Ping timeout: 246 seconds) 2014-09-10T09:13:32Z dim: logand``: hey, thanks for working on that! 2014-09-10T09:14:09Z CrazyEddy joined #lisp 2014-09-10T09:15:50Z edgar-rft joined #lisp 2014-09-10T09:17:23Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-10T09:19:40Z hlavaty: dim: no problem; let me know when you find more issues 2014-09-10T09:20:25Z hlavaty: implementing ms formats is never ending work :-) 2014-09-10T09:24:10Z dim: yeah 2014-09-10T09:24:14Z dim: pgloader is never ending also 2014-09-10T09:26:09Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-10T09:26:33Z dim: oh and the MySQL driver :( 2014-09-10T09:26:44Z hlavaty: dim: pgloader looks interesting; you should also add roundtrips, mssql, oracle etc; then you have lifetime worth of work :-) 2014-09-10T09:27:01Z dim: that's the plan 2014-09-10T09:27:09Z hlavaty: sounds like a good plan 2014-09-10T09:27:21Z dim: I have a customer currently evaluating sponsoring mssql support 2014-09-10T09:27:32Z dim: I might have a Sybase one too down the road 2014-09-10T09:27:41Z dim: Oracle of course is on the roadmap 2014-09-10T09:27:48Z dim: then XML, JSON and MongoDB 2014-09-10T09:27:56Z tkhoa2711 quit (Quit: tkhoa2711) 2014-09-10T09:27:58Z resttime quit (Ping timeout: 252 seconds) 2014-09-10T09:28:28Z dim: XML and JSON and the like will be interesting challenges because mostly you want to normalize the data while loading, so I will have to invent a DSL for expressing how to normalize on the fly in the loader 2014-09-10T09:29:19Z dim: before that I want to release 3.1, implement a WHEN clause to dispatch a single source into several targets, and then implement more parallel processing options (multiple queues, multiple worker threads, single source streaming, things like that) 2014-09-10T09:29:31Z dim: so yeah, looks like life-long commitment here ;-) 2014-09-10T09:31:40Z tkhoa2711 joined #lisp 2014-09-10T09:34:17Z wasamasa: drmeister: it's wednesday again, another week has passed 2014-09-10T09:34:25Z wasamasa: drmeister: any updates on the legal front? 2014-09-10T09:35:03Z hlavaty: dim: great; pure lisp mysql driver? 2014-09-10T09:36:02Z harish quit (Ping timeout: 245 seconds) 2014-09-10T09:36:22Z CrazyEddy quit (Ping timeout: 240 seconds) 2014-09-10T09:37:42Z hlavaty: dim: we actually did mysql -> pg|oracle migration and i wrote a tool for that; so we can move data between oracle and postgresql now freely; and make upgrades mostly automatically, but we have different strategy then pgloader 2014-09-10T09:38:13Z dim: yeah? I'm interested ;-) 2014-09-10T09:38:39Z hlavaty: what we would actually need now is mssql driver; ideally in pure lisp 2014-09-10T09:39:00Z Grue` quit (Ping timeout: 252 seconds) 2014-09-10T09:39:28Z hlavaty: unfortunatelly it is not published 2014-09-10T09:40:33Z quazimodo joined #lisp 2014-09-10T09:40:44Z dim: I've found cl-mssql which uses FreeTDS, and there's also the odbd approach that should work 2014-09-10T09:40:54Z dim: odbc, sorry 2014-09-10T09:41:07Z dim: http://common-lisp.net/project/plain-odbc/ or suchlike 2014-09-10T09:41:34Z hlavaty: yeah but those require ffi which is a pain; i dont have so good memories of implementing oci driver in lisp 2014-09-10T09:41:46Z dim: https://github.com/archimag/cl-mssql might be all you need 2014-09-10T09:42:31Z hlavaty: yeah; but i would prefer something in pure lisp; like postmodern which is brilliant 2014-09-10T09:42:37Z dim: +1 2014-09-10T09:43:16Z dim: well if you work on a pure-cl driver for MSSQL keep me in the loop, by all means 2014-09-10T09:43:29Z hlavaty: likewise :-D 2014-09-10T09:44:26Z dim: mmm I still have to see how promising http://www.obrezan.com/lisp/mysql/ actually is btw, that's another pure-cl mysql driver, competing with qmynd 2014-09-10T09:45:13Z gravicappa joined #lisp 2014-09-10T09:47:13Z stepnem joined #lisp 2014-09-10T09:47:40Z hlavaty: interesting; luckily we dont plan to use mysql anymore :-D 2014-09-10T09:47:47Z ggole joined #lisp 2014-09-10T09:48:30Z korqio- quit (Ping timeout: 246 seconds) 2014-09-10T09:49:14Z tkhoa2711 quit (Ping timeout: 276 seconds) 2014-09-10T09:49:48Z ivan4th`` joined #lisp 2014-09-10T09:50:31Z dim: hehe, that's a good place to be in ;-) 2014-09-10T09:50:47Z wasamasa: unlike github :P 2014-09-10T09:51:07Z CrazyEddy joined #lisp 2014-09-10T09:52:09Z ivan4th` quit (Ping timeout: 264 seconds) 2014-09-10T09:53:44Z jusss quit (Ping timeout: 272 seconds) 2014-09-10T09:55:00Z dim: ? 2014-09-10T09:55:53Z wasamasa: they recently did a blog post about how they tuned their mysql databases 2014-09-10T09:57:22Z dim: ah yes, well, I don't know a single "big user" of MySQL that doesn't have basically its own in-house fork of it (Google, Facebook, Twitter, maybe GitHub too?) 2014-09-10T09:57:26Z tkhoa2711 joined #lisp 2014-09-10T09:57:42Z dim: but we're slowly drifting off-topic here 2014-09-10T10:04:57Z ggole quit (Read error: Connection timed out) 2014-09-10T10:05:26Z ggole joined #lisp 2014-09-10T10:06:02Z echo-area joined #lisp 2014-09-10T10:09:09Z ndrei quit (Ping timeout: 246 seconds) 2014-09-10T10:11:30Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-10T10:14:23Z otwieracz quit (Ping timeout: 272 seconds) 2014-09-10T10:19:51Z Vutral joined #lisp 2014-09-10T10:20:55Z otwieracz joined #lisp 2014-09-10T10:22:08Z echo-area quit (Remote host closed the connection) 2014-09-10T10:32:39Z yacks joined #lisp 2014-09-10T10:35:13Z Vutral quit (Ping timeout: 260 seconds) 2014-09-10T10:36:18Z CrazyEddy quit (Ping timeout: 255 seconds) 2014-09-10T10:37:22Z Joreji joined #lisp 2014-09-10T10:45:20Z CrazyEddy joined #lisp 2014-09-10T10:49:46Z mvilleneuve joined #lisp 2014-09-10T10:50:03Z harish joined #lisp 2014-09-10T10:56:50Z munksgaard quit (Ping timeout: 276 seconds) 2014-09-10T11:02:33Z karupa is now known as zz_karupa 2014-09-10T11:05:31Z munksgaard joined #lisp 2014-09-10T11:11:46Z munksgaard quit (Ping timeout: 252 seconds) 2014-09-10T11:14:48Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-10T11:14:50Z tkhoa2711 quit (Quit: tkhoa2711) 2014-09-10T11:15:22Z dmiles_afk joined #lisp 2014-09-10T11:21:55Z marsbot quit (Quit: (╯°□°)╯︵ ┻━┻) 2014-09-10T11:23:12Z namespace quit (Quit: Reconnecting) 2014-09-10T11:23:14Z CrazyEddy quit (Ping timeout: 321 seconds) 2014-09-10T11:23:26Z namespace joined #lisp 2014-09-10T11:23:51Z gadmyth joined #lisp 2014-09-10T11:26:14Z urandom__ quit (Quit: Konversation terminated!) 2014-09-10T11:29:28Z JuanDaugherty quit (Quit: Exit IRC/Hibernate) 2014-09-10T11:30:18Z huza joined #lisp 2014-09-10T11:31:08Z Xach is so excited for another day of lisp hacking! 2014-09-10T11:31:34Z YDJX joined #lisp 2014-09-10T11:32:35Z wasamasa installed SLIME today 2014-09-10T11:32:42Z munksgaard joined #lisp 2014-09-10T11:33:16Z vaporatorius joined #lisp 2014-09-10T11:34:47Z stassats joined #lisp 2014-09-10T11:34:50Z stassats quit (Changing host) 2014-09-10T11:34:50Z stassats joined #lisp 2014-09-10T11:35:49Z stassats: why did i ever use the (apply #'foo (if x (list :test x))) idiom for adding keywords? when (multiple-value-call #'foo (if x (values :test x) (values))) doesn't cons and is faster 2014-09-10T11:36:18Z pjb: because multiple-value-call is longer than apply. 2014-09-10T11:36:23Z H4ns: stassats: you've been missed 2014-09-10T11:36:54Z stassats: H4ns: i was busy typing "multiple-value-call" instead of "apply" all this time 2014-09-10T11:36:59Z CrazyEddy joined #lisp 2014-09-10T11:37:15Z Bike: works for multiple keywords too. neato. 2014-09-10T11:37:22Z H4ns: heh. i can see how all your software now runs much faster 2014-09-10T11:37:28Z pjb: (defmacro mvc (&rest args) `(multiple-value-call ,@args)) 2014-09-10T11:37:37Z pjb: (mvc #'foo (if x (values :test x) (values))) 2014-09-10T11:37:40Z stassats: anyhow, i guess somebody can make a lisp-tip out of it 2014-09-10T11:37:44Z pjb: see, much better already :-) 2014-09-10T11:38:24Z stassats: that's all i wanted to share today, back to writing code (including that thing) 2014-09-10T11:38:26Z stassats left #lisp 2014-09-10T11:43:32Z jegaxd26 joined #lisp 2014-09-10T11:50:24Z ndrei joined #lisp 2014-09-10T11:50:32Z theos quit (Disconnected by services) 2014-09-10T11:50:50Z pjb` joined #lisp 2014-09-10T11:51:00Z theos joined #lisp 2014-09-10T11:51:57Z alchemis7 joined #lisp 2014-09-10T11:52:14Z przl joined #lisp 2014-09-10T11:52:42Z pjb quit (Ping timeout: 245 seconds) 2014-09-10T11:52:47Z Beetny quit (Ping timeout: 245 seconds) 2014-09-10T11:53:00Z Px12 joined #lisp 2014-09-10T11:53:27Z CrazyEddy quit (Ping timeout: 246 seconds) 2014-09-10T11:54:24Z attila_lendvai joined #lisp 2014-09-10T11:59:47Z Shaftoe___ joined #lisp 2014-09-10T12:00:17Z Shaftoe___ quit (Client Quit) 2014-09-10T12:00:28Z knob joined #lisp 2014-09-10T12:00:39Z rme joined #lisp 2014-09-10T12:00:40Z clarkema joined #lisp 2014-09-10T12:00:42Z Shaftoe___ joined #lisp 2014-09-10T12:02:00Z jtza8 quit (Ping timeout: 252 seconds) 2014-09-10T12:02:04Z Sgeo quit (Read error: Connection reset by peer) 2014-09-10T12:03:24Z Shaftoe___ quit (Client Quit) 2014-09-10T12:04:01Z vydd joined #lisp 2014-09-10T12:04:49Z H4ns: is there a library that parses date and time specifcations like "yesterday", "last monday" etc? 2014-09-10T12:06:02Z drmeister quit (Remote host closed the connection) 2014-09-10T12:06:26Z wasamasa: hmm 2014-09-10T12:06:29Z drmeister joined #lisp 2014-09-10T12:06:34Z wasamasa: let's it call TOMRAF 2014-09-10T12:06:40Z wasamasa: *call it 2014-09-10T12:06:45Z H4ns: wasamasa: wat? 2014-09-10T12:06:56Z wasamasa: H4ns: the function that reverse engineers what FORMAT produced 2014-09-10T12:07:20Z H4ns: "haha". thank you for your help! 2014-09-10T12:07:51Z wasamasa: I haven't seen such a thing for other languages yet 2014-09-10T12:08:10Z wasamasa: just the usual parsers that take locale in account and standard date fields 2014-09-10T12:08:17Z H4ns: wasamasa: i have. for ruby and python, and for java iirc. 2014-09-10T12:08:25Z H4ns: wasamasa: there are a lot of these kinds of things around. 2014-09-10T12:08:47Z rme: H4ns: gz was looking something called "chronicity" for that the other day. 2014-09-10T12:09:14Z drmeister quit (Remote host closed the connection) 2014-09-10T12:09:25Z H4ns: rme: nice, thanks! 2014-09-10T12:10:18Z wasamasa: huh, nice 2014-09-10T12:10:24Z H4ns: (chronicity:parse "yesterday") => @2014-09-09T00:00:00.000000Z 2014-09-10T12:10:26Z H4ns: awesome. 2014-09-10T12:10:55Z antoszka: Nice. Is @... READ-able? 2014-09-10T12:11:01Z yeticry quit (Read error: Connection reset by peer) 2014-09-10T12:11:11Z H4ns: (local-time:enable-read-macros) 2014-09-10T12:11:15Z antoszka: Cool. 2014-09-10T12:11:41Z Nizumzen joined #lisp 2014-09-10T12:12:16Z vanila joined #lisp 2014-09-10T12:16:23Z yeticry joined #lisp 2014-09-10T12:16:43Z `JRG joined #lisp 2014-09-10T12:17:12Z otwieracz: CL-USER> (chronicity:parse "tomorrow at 6 pm") 2014-09-10T12:17:13Z otwieracz: @2014-09-11T18:00:00.000000+02:00 2014-09-10T12:17:15Z otwieracz: wow 2014-09-10T12:17:19Z hlavaty: H4ns: except days dont have a concept of timezones, so I expect you can hit problems with that 2014-09-10T12:19:38Z varjag quit (Quit: Leaving) 2014-09-10T12:20:22Z theos quit (Ping timeout: 240 seconds) 2014-09-10T12:21:25Z pt1_ joined #lisp 2014-09-10T12:21:37Z theos joined #lisp 2014-09-10T12:22:25Z drmeister joined #lisp 2014-09-10T12:23:12Z Krystof: wasamasa: the function that reverse-engineers what format produced is called (setf format) 2014-09-10T12:23:23Z Krystof: http://jcsu.jesus.cam.ac.uk/~csr21/format-setf.lisp 2014-09-10T12:24:02Z pt1_ quit (Remote host closed the connection) 2014-09-10T12:24:16Z pt1 quit (Read error: No route to host) 2014-09-10T12:24:28Z pt1 joined #lisp 2014-09-10T12:24:29Z JuanDaugherty joined #lisp 2014-09-10T12:25:21Z wasamasa: ";;; The rest of this is my code. All mine. Not yours. Mine. Ha." 2014-09-10T12:25:40Z wasamasa: Krystof: that's not you, right? 2014-09-10T12:25:43Z przl quit (Ping timeout: 272 seconds) 2014-09-10T12:25:57Z `JRG: hey lispers, do you know of any portable implementation of buffered-io-streams? 2014-09-10T12:26:07Z hlavaty: that's him 2014-09-10T12:26:10Z huza quit (Quit: WeeChat 0.3.8) 2014-09-10T12:26:26Z Xach: `JRG: flexi-streams perhaps. 2014-09-10T12:27:30Z wasamasa: Krystof: still, thanks 2014-09-10T12:29:20Z Krystof: it is me, 14 years ago 2014-09-10T12:29:25Z cods quit (Changing host) 2014-09-10T12:29:25Z cods joined #lisp 2014-09-10T12:29:26Z Krystof: that was my first CL program 2014-09-10T12:29:37Z dim: H4ns: in case it's helpful, PostgreSQL has some of that too: select date 'yesterday'; 2014-09-09 2014-09-10T12:29:39Z Krystof: "how hard can this be?" 2014-09-10T12:30:57Z Xach: does it work on ~/? i could make some headlines by reversing ~/sha1:digest/ directives! 2014-09-10T12:31:58Z Guthur: that chroncity is pretty neat 2014-09-10T12:32:29Z `JRG: Xach: thanks, but last time I checked they seemed to serve a different purpose... I need them to control the IO of an inferior process 2014-09-10T12:32:35Z CrazyEddy joined #lisp 2014-09-10T12:33:14Z drmeister quit (Remote host closed the connection) 2014-09-10T12:33:17Z `JRG: before implementing my gray streams I wanted to make sure nobody already did what I need 2014-09-10T12:35:02Z wasamasa: Krystof: holy hell 2014-09-10T12:35:11Z wasamasa: Krystof: shall I rewrite it to keep the cycle up? 2014-09-10T12:37:19Z hlavaty: H4ns: representing date as timestamp is really bad idea; you get different date depending on the timestamp 2014-09-10T12:37:22Z Xach: `JRG: I think it could be pressed into service for that, but maybe it's not a good fit. 2014-09-10T12:42:13Z vydd quit (Remote host closed the connection) 2014-09-10T12:43:02Z theos quit (Disconnected by services) 2014-09-10T12:43:07Z quazimodo quit (Ping timeout: 245 seconds) 2014-09-10T12:43:18Z `JRG: Xach: ok, thanks. It looks like my corporate proxy doesn't like weitz.de this afternoon, will have a look at the docstrings. I'm implementing a very stripped down version of expect, again, I system-apropos'ed "expect" and googled for cl-expect, with no luck 2014-09-10T12:43:34Z theos joined #lisp 2014-09-10T12:43:57Z Krystof: xach: it delegates to the (setf sha1:digest) function 2014-09-10T12:44:00Z `JRG: if you know of any alternatives please share :) 2014-09-10T12:46:24Z 1JTAAEMB7 joined #lisp 2014-09-10T12:46:26Z LiamH joined #lisp 2014-09-10T12:48:57Z Xach: `JRG: I don't know of an expect-alike for cl. I thought about making it myself. It would be pretty useful. I think it may be of limited portability without some underlying support from the implementation's process plumbing. either that or implementing a lot of plumbing yourself in e.g. cffi or something. 2014-09-10T12:49:30Z Xach: If you make it and it is nice you will have at least one happy user, me! 2014-09-10T12:50:28Z drmeister joined #lisp 2014-09-10T12:50:49Z drmeister quit (Read error: Connection reset by peer) 2014-09-10T12:52:18Z `JRG quit (Quit: Page closed) 2014-09-10T12:53:24Z JuanDaugherty: Xach, are you now or have you ever been in TO? 2014-09-10T12:54:48Z Xach: JuanDaugherty: What is TO? 2014-09-10T12:55:07Z JuanDaugherty: Toronto, Ontario? 2014-09-10T12:55:22Z Xach: Yes, I have been in Toronto, Ontario. 2014-09-10T12:55:37Z JuanDaugherty: ah but are no longer I take it 2014-09-10T12:56:18Z JuanDaugherty is still near there, but hopefully not for much longer 2014-09-10T12:57:08Z gadmyth quit (Remote host closed the connection) 2014-09-10T13:00:33Z theos quit (Disconnected by services) 2014-09-10T13:01:08Z theos joined #lisp 2014-09-10T13:04:22Z jegaxd26 quit (Remote host closed the connection) 2014-09-10T13:08:24Z varjag_ joined #lisp 2014-09-10T13:12:11Z 1JTAAEMB7 quit (Remote host closed the connection) 2014-09-10T13:13:58Z jkaye joined #lisp 2014-09-10T13:14:50Z theos quit (Disconnected by services) 2014-09-10T13:15:16Z theos joined #lisp 2014-09-10T13:15:50Z vinleod joined #lisp 2014-09-10T13:16:55Z eudoxia joined #lisp 2014-09-10T13:17:30Z przl joined #lisp 2014-09-10T13:17:42Z Vutral joined #lisp 2014-09-10T13:17:42Z Vutral quit (Changing host) 2014-09-10T13:17:42Z Vutral joined #lisp 2014-09-10T13:22:17Z Vutral quit (Ping timeout: 260 seconds) 2014-09-10T13:22:41Z oleo joined #lisp 2014-09-10T13:23:56Z zeitue quit (Quit: Leaving) 2014-09-10T13:24:18Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-10T13:25:12Z hitecnologys joined #lisp 2014-09-10T13:26:20Z munksgaard quit (Ping timeout: 276 seconds) 2014-09-10T13:27:39Z Vutral joined #lisp 2014-09-10T13:30:53Z TDog quit (Ping timeout: 240 seconds) 2014-09-10T13:32:33Z Vutral quit (Ping timeout: 260 seconds) 2014-09-10T13:33:32Z hitecnologys quit (Quit: hitecnologys) 2014-09-10T13:36:42Z hitecnologys joined #lisp 2014-09-10T13:38:46Z ircbrowse quit (Changing host) 2014-09-10T13:38:46Z ircbrowse joined #lisp 2014-09-10T13:40:06Z wheelsucker joined #lisp 2014-09-10T13:41:06Z ndrei quit (Ping timeout: 272 seconds) 2014-09-10T13:42:12Z clarkema quit (Quit: clarkema) 2014-09-10T13:43:27Z ndrei joined #lisp 2014-09-10T13:50:36Z drmeister joined #lisp 2014-09-10T13:51:53Z pranavrc_ quit 2014-09-10T13:57:37Z knob quit (Quit: Leaving) 2014-09-10T13:58:47Z jtza8 joined #lisp 2014-09-10T14:02:50Z fortitude joined #lisp 2014-09-10T14:02:52Z mr-foobar quit (Quit: Leaving...) 2014-09-10T14:06:35Z dim: mmm, new errors when using a packaged image, I hate that. 2014-09-10T14:08:09Z normanrichards joined #lisp 2014-09-10T14:09:59Z jusss joined #lisp 2014-09-10T14:15:17Z thierrygar quit (Quit: thierrygar) 2014-09-10T14:17:47Z theos quit (Ping timeout: 245 seconds) 2014-09-10T14:18:34Z jusss quit (Read error: Connection reset by peer) 2014-09-10T14:20:19Z jusss joined #lisp 2014-09-10T14:20:52Z theos joined #lisp 2014-09-10T14:26:13Z pt1_ joined #lisp 2014-09-10T14:26:24Z gravicappa quit (Remote host closed the connection) 2014-09-10T14:26:56Z Vutral joined #lisp 2014-09-10T14:27:01Z Vutral quit (Excess Flood) 2014-09-10T14:27:21Z pt1_ quit (Remote host closed the connection) 2014-09-10T14:28:44Z nipra quit (Ping timeout: 276 seconds) 2014-09-10T14:29:57Z pt1 quit (Ping timeout: 260 seconds) 2014-09-10T14:33:57Z Vutral joined #lisp 2014-09-10T14:36:41Z Guthur quit (Read error: Connection reset by peer) 2014-09-10T14:38:49Z Vutral quit (Ping timeout: 260 seconds) 2014-09-10T14:40:55Z hiroakip joined #lisp 2014-09-10T14:41:48Z tkhoa2711 joined #lisp 2014-09-10T14:42:08Z thierrygar_ joined #lisp 2014-09-10T14:42:43Z wheelsucker quit (Remote host closed the connection) 2014-09-10T14:42:52Z ndrei quit (Ping timeout: 240 seconds) 2014-09-10T14:44:12Z jlongster joined #lisp 2014-09-10T14:48:37Z zacharias quit (Ping timeout: 272 seconds) 2014-09-10T14:49:02Z theos quit (Disconnected by services) 2014-09-10T14:49:30Z theos joined #lisp 2014-09-10T14:49:43Z dim: trying to sbcl --load quicklisp/setup.lisp all I get is: The file "/usr/share/common-lisp/source/cl-asdf/build/asdf.lisp" is not writable. 2014-09-10T14:51:59Z ndrei joined #lisp 2014-09-10T14:52:02Z dim: (SB-IMPL::RENAME-THE-OLD-ONE "/usr/share/common-lisp/source/cl-asdf/build/asdf.lisp" "/usr/share/common-lisp/source/cl-asdf/build/asdf.lisp.bak") 2014-09-10T14:52:10Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-10T14:52:14Z dim: quicklisp really is wanting to do that?! 2014-09-10T14:52:33Z dim: or is it asdf itself when upgrading? 2014-09-10T14:53:15Z dim: yeah, it's (asdf:load-system :asdf) 2014-09-10T14:53:16Z dim: wow. 2014-09-10T14:53:28Z oGMo: i usually just build a new asdf into sbcl heh 2014-09-10T14:55:23Z hlavaty: H4ns: sorry i meant you get different date depending on the timezone ;-) 2014-09-10T14:55:53Z H4ns: hlavaty: i understand. i am aware of the restrictions. it is helpful for me nevertheless. 2014-09-10T14:56:09Z hlavaty: ok :-) 2014-09-10T14:57:05Z dlowe: SB-IMPL::DEPLOY-SHOGGOTHS 2014-09-10T14:57:24Z shka quit (Remote host closed the connection) 2014-09-10T14:57:24Z dlowe: SB-IMPL::WAKE-SLEEPING-GODS-AND-DIE 2014-09-10T14:58:41Z dim: oGMo: yeah, what about clean building on a multi-user system? :( 2014-09-10T14:58:52Z oGMo: dim: ? 2014-09-10T14:58:58Z dim: ranting, sorry 2014-09-10T14:59:03Z tkhoa2711 quit (Quit: tkhoa2711) 2014-09-10T14:59:15Z oGMo: if you mean off a multi-user install, then yeah it should probably be elsewhere, though i swear QL kept it in ~/quicklisp somehwere 2014-09-10T14:59:32Z dim: yeah 2014-09-10T14:59:41Z eudoxia: note that SB-IMPL::WAKE-SLEEPING-GODS-AND-DIE only works with make.sh --fancy 2014-09-10T14:59:52Z oGMo: in fact, ~/quicklisp/asdf.lisp 2014-09-10T15:00:01Z dim: well I'm preparing a binary image for pgloader and now I have a strange bug I don't understand, only in the image, not when using the REPL 2014-09-10T15:00:31Z Xach: ~/quicklisp/asdf.lisp is used only as a last resort. quicklisp will try to load asdf from the system first, and check to see if it's sufficiently new. 2014-09-10T15:02:40Z dim: the specific error I have in the binary image is The value of CL-POSTGRES::USER is NIL, which is not of type STRING. 2014-09-10T15:03:06Z dim: the ql/asdf problems I have are when trying to load a swank server on the vagrant machine so that I can remote debug the situation with a REPL in SLIME 2014-09-10T15:03:36Z dim: I could hack my image to open a swank server for me and wait there 2014-09-10T15:03:59Z Xach: The usual advice when hitting /usr/share/common-lisp/ is to not use the package manager to install asdf. 2014-09-10T15:08:03Z theos quit (Disconnected by services) 2014-09-10T15:08:30Z theos joined #lisp 2014-09-10T15:10:22Z hiroakip quit (Ping timeout: 240 seconds) 2014-09-10T15:12:02Z kuzy000_ joined #lisp 2014-09-10T15:12:29Z Shaftoe___ joined #lisp 2014-09-10T15:15:02Z dim: that's the usual advice yes 2014-09-10T15:15:20Z dim: I'm preparing a debian package here, so my goal is to manage to work with the system 2014-09-10T15:15:55Z InvalidCo joined #lisp 2014-09-10T15:15:57Z InvalidCo: hey 2014-09-10T15:15:58Z gingerale joined #lisp 2014-09-10T15:16:34Z Fare joined #lisp 2014-09-10T15:16:47Z InvalidCo: how should I go about loading a file using a specific package? 2014-09-10T15:16:59Z neutrino-- joined #lisp 2014-09-10T15:17:15Z Xach: InvalidCo: the package in effect is determined by the value of CL:*PACKAGE*. so one option would be to bind it around the load operation. 2014-09-10T15:17:20Z InvalidCo: ah 2014-09-10T15:17:30Z Xach: dim: oh, so you get to absorb all the pain into yourself to free the users of it? 2014-09-10T15:17:42Z InvalidCo: just (let ((*package* asdfbasdf)) (cl:eval code))? 2014-09-10T15:18:01Z dim: Xach: yes 2014-09-10T15:18:01Z Xach: InvalidCo: not exactly. 2014-09-10T15:18:03Z dlowe: InvalidCo: if you're using LOAD however, it can be overridden by an IN-PACKAGE form 2014-09-10T15:18:08Z drmeister quit (Ping timeout: 276 seconds) 2014-09-10T15:18:12Z dim: it's quite painful today indeed 2014-09-10T15:18:18Z Xach: InvalidCo: in your example, CODE has already been loaded and its symbols are in whatever package they are in. 2014-09-10T15:18:29Z InvalidCo: my bad 2014-09-10T15:18:32Z InvalidCo: I meant load 2014-09-10T15:18:35Z dim: it seems I won't be able to load swank on the VM :( 2014-09-10T15:18:36Z Xach: InvalidCo: the value of package affects operations that convert strings to symbols, e.g. READ, or READ-FROM-STRING, etc. 2014-09-10T15:18:47Z Xach: the value of *package*, rather. 2014-09-10T15:20:30Z InvalidCo: in the case of code => #P"filename.lisp" (specified before the let-package-form), I need to specify the package it belongs to, too, correct? 2014-09-10T15:20:35Z TDog joined #lisp 2014-09-10T15:21:09Z Xach: Under normal circumstances that is done by making (in-package ...) the first form of every source file. 2014-09-10T15:21:36Z InvalidCo: you're saying you don't know? 2014-09-10T15:21:49Z Xach: I don't understand the context, sorry. 2014-09-10T15:22:36Z Xach: If you want to read a stream or string that has unprefixed symbols in it, the symbols are interned according to the value of *package*. The value of *package* in typical source code is managed by putting (in-package ...) forms into it. It is not that common to bind *package* while reading normal source code files. 2014-09-10T15:22:47Z Xach: But I can imagine some circumstances where you might want to do that, they're just not normal. 2014-09-10T15:22:53Z Xach: What prompts your questions about it? 2014-09-10T15:23:57Z Maurice_TCF quit (Ping timeout: 264 seconds) 2014-09-10T15:24:47Z arenz quit (Ping timeout: 245 seconds) 2014-09-10T15:25:09Z InvalidCo: just writing a simple text + script -> non-ascii text + bytecode -translator 2014-09-10T15:25:14Z YDJX left #lisp 2014-09-10T15:25:19Z drmeister joined #lisp 2014-09-10T15:25:22Z InvalidCo: and thought it'd be nice to use all the cl features if needed 2014-09-10T15:26:10Z Lorra joined #lisp 2014-09-10T15:26:22Z hitecnologys: InvalidCo: in other words, compiler? 2014-09-10T15:26:58Z Xach: InvalidCo: ok. well, if the sources don't have in-package forms, and if you load them with LOAD, symbols without a package prefix will be in whatever package is the value of *package* when you call LOAD. 2014-09-10T15:27:40Z murftown joined #lisp 2014-09-10T15:27:46Z Xach: LOAD also binds *PACKAGE*, so when LOAD is finished, any changes to the binding of *PACKAGE* done by the forms of the file are undone. 2014-09-10T15:27:58Z murftown: morning guyth! 2014-09-10T15:28:04Z drmeiste_ joined #lisp 2014-09-10T15:28:07Z InvalidCo: hitecnologys: not really 2014-09-10T15:28:32Z mishoo quit (Ping timeout: 276 seconds) 2014-09-10T15:29:00Z InvalidCo: it's more like a makeshift assembler 2014-09-10T15:29:12Z Xach: murftown: Very, very tired non-humor. 2014-09-10T15:29:33Z hitecnologys: InvalidCo: ah, I see. 2014-09-10T15:29:43Z H4ns: Xach: you're pretty thin-skinned :) 2014-09-10T15:30:02Z mhd joined #lisp 2014-09-10T15:30:08Z Xach: H4ns: I have to see "webthiteth" and "nekthuth" scroll by every time I build quicklisp. 2014-09-10T15:30:10Z InvalidCo: some dictionary compression 2014-09-10T15:30:24Z Xach: And other dopey jokes like that. 2014-09-10T15:30:24Z xificurC quit (Read error: Connection reset by peer) 2014-09-10T15:30:54Z hitecnologys: InvalidCo: if I were you, I'd use some MOP magic instead of *PACKAGE* tricks. 2014-09-10T15:31:59Z InvalidCo: hitecnologys: maybe you should try writing your own 2014-09-10T15:32:06Z mr-foobar joined #lisp 2014-09-10T15:32:10Z InvalidCo: I don't really see how MOP would be useful in this situation 2014-09-10T15:32:11Z mishoo joined #lisp 2014-09-10T15:32:26Z drmeister quit (Ping timeout: 276 seconds) 2014-09-10T15:33:18Z hitecnologys: InvalidCo: it depends on what exactly you're trying to achieve. 2014-09-10T15:33:59Z InvalidCo: so you're recommending MOP because you don't know what I'm trying to achieve? 2014-09-10T15:34:06Z InvalidCo: talk about object-obsessed programming! 2014-09-10T15:35:46Z vanila: MOP Isg ood 2014-09-10T15:35:51Z murftown: Xach: (no (offenth intended)) 2014-09-10T15:36:28Z Xach left #lisp 2014-09-10T15:36:48Z murftown: man he didn't like that. and he's like a badass lisp programmer right? 2014-09-10T15:37:09Z joast quit (Ping timeout: 240 seconds) 2014-09-10T15:37:14Z H4ns: murftown: go away 2014-09-10T15:37:17Z hitecnologys: InvalidCo: using classes for storing operators sounds more natural to me. You are free to choose whichever approach you like more. 2014-09-10T15:37:24Z mhd quit (Ping timeout: 183 seconds) 2014-09-10T15:37:49Z ndrei quit (Ping timeout: 268 seconds) 2014-09-10T15:38:05Z murftown: H4ns: seriously? 2014-09-10T15:38:17Z hitecnologys: murftown: T. 2014-09-10T15:38:44Z mhd quit (Read error: Connection reset by peer) 2014-09-10T15:38:56Z mhd joined #lisp 2014-09-10T15:39:53Z murftown: ok. (setq murftown nil) 2014-09-10T15:39:57Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-10T15:39:59Z murftown quit (Quit: murftown) 2014-09-10T15:42:01Z wasamasa: what was that 2014-09-10T15:42:06Z wasamasa: and I thought my humor is bad 2014-09-10T15:42:56Z yc` joined #lisp 2014-09-10T15:43:12Z yc` left #lisp 2014-09-10T15:47:58Z Jesin joined #lisp 2014-09-10T15:48:54Z ahungry_ quit (Quit: leaving) 2014-09-10T15:49:09Z mishoo quit (Ping timeout: 264 seconds) 2014-09-10T15:50:21Z theos quit (Ping timeout: 264 seconds) 2014-09-10T15:51:05Z Shaftoe___: Hi all. Anyone here have any experience with real time processing of video in lisp? 2014-09-10T15:51:14Z theos joined #lisp 2014-09-10T15:51:19Z zwer: you know what would make it funny? if the joke drove Xach to his breaking point and he parted #lisp to contemplate suicide. 2014-09-10T15:51:22Z przl quit (Ping timeout: 240 seconds) 2014-09-10T15:51:31Z beach joined #lisp 2014-09-10T15:51:46Z beach: Good evening everyone! 2014-09-10T15:51:52Z H4ns: zwer: can you leave as well? 2014-09-10T15:52:20Z vinleod quit (Quit: Computer has gone to sleep.) 2014-09-10T15:52:22Z cite-reader joined #lisp 2014-09-10T15:52:24Z zwer: I can't. too lazy to type /part. feel free to do it for me, though 2014-09-10T15:52:56Z ChanServ has set mode +o fe[nl]ix 2014-09-10T15:53:05Z fe[nl]ix has set mode +b *!~zwer@gateway/tor-sasl/zwer 2014-09-10T15:53:06Z zwer [~quassel@pdpc/supporter/professional/fenlix] has been kicked from #lisp by fe[nl]ix (zwer) 2014-09-10T15:53:16Z k-stz joined #lisp 2014-09-10T15:53:25Z ChanServ has set mode -o fe[nl]ix 2014-09-10T15:57:51Z InvalidCo: Shaftoe___: are you talking about post-processing or /(en|de)coding/ or...? 2014-09-10T15:58:20Z ndrei joined #lisp 2014-09-10T15:59:20Z InvalidCo: if you're doing color correction or special effects with basic home computer hardware, you're probably better off using GLSL 2014-09-10T15:59:26Z InvalidCo: which can actually be coded in lisp 2014-09-10T15:59:26Z Shaftoe___: InvalidCo: I'm talking about computer vision related stuff. So really: compact and intelligent data representation of video frames, fast buffer manipulations, and minimal displaying abilities. mainly the data representation side of things though. 2014-09-10T15:59:26Z Shaftoe___: And for the purpose of actually running Computer Vision algorithms on it. 2014-09-10T15:59:34Z Shaftoe___: nah, none of that sort of stuff 2014-09-10T15:59:43Z InvalidCo: I haven't tried it yet, but https://github.com/cbaggers/varjo 2014-09-10T15:59:44Z InvalidCo: ah 2014-09-10T16:00:04Z InvalidCo: like OCR? 2014-09-10T16:00:36Z beach: Question: The Common Lisp HyperSpec allows for FTYPE to appear in a declaration mentioning a global function. What would be a situation where this is useful? 2014-09-10T16:01:40Z Shaftoe___: InvalidCo: OCR would be a good example, but that's an "easy" application (no speed requirement). I'm thinking more along the lines of real time facial recognition, object tracking etc. 2014-09-10T16:02:06Z InvalidCo: ah yes 2014-09-10T16:02:17Z eudoxia: Shaftoe___: OpenCV comes with a face recognition example, you could try that on one of the OpenCV bindings 2014-09-10T16:02:27Z hitecnologys: Shaftoe___: there are several OpenCV bindings. Have you checked them out? 2014-09-10T16:02:35Z Shaftoe___: At present, I'm actually resorting to making a dynamic library in C++ that encapsulates some basic or fundamental operations that are coded in OpenCV and then doing the 9 ball juggling act in the lisp side. But even then, I'm thinking I need to have proper data representations 2014-09-10T16:03:00Z Shaftoe___: I have checked them out and they are unfortunatley woefully inadequate. 2014-09-10T16:03:05Z neutrino-- quit (Quit: WeeChat 1.0) 2014-09-10T16:03:13Z InvalidCo: you can make your own 2014-09-10T16:04:02Z hitecnologys: I don't think it's a good idea to make one more. 2014-09-10T16:04:06Z Shaftoe___: however, I've also come to the conclusion that openCV bindings aren't necessarily the way to go. Case in point, there's an algorithm called "BRISK" which I do currently use in my project. It outputs very high level data structures, and manipulating these in lisp is pretty great 2014-09-10T16:04:11Z InvalidCo: ffi is generally pretty scary, but once you get used to the segfaults... ;) 2014-09-10T16:04:56Z Shaftoe___: To answer everyone: the problem with the bindings to openCV is that none of them are exhaustive and most of them work with token samples (like the token facial recognition sample) but simply don't work when you try to work on "substantial" algorithms 2014-09-10T16:05:14Z wasamasa: InvalidCo: I've heard the actual high-speed ones are developed on FPGAs 2014-09-10T16:05:38Z InvalidCo: wasamasa: the actual high-speed whats? 2014-09-10T16:05:51Z oGMo: InvalidCo: ffi isn't scary at all ;/ 2014-09-10T16:05:53Z wasamasa: InvalidCo: highspeed image processing applications 2014-09-10T16:06:00Z InvalidCo: mm 2014-09-10T16:06:08Z eudoxia: yeah, OpenCV is a pretty vast library and making a binding that covers the whole thing is probably hard 2014-09-10T16:06:15Z eudoxia: an autogenerated cl-autowrap one could work though 2014-09-10T16:06:16Z wasamasa: InvalidCo: perhaps that keyword will help you with your search 2014-09-10T16:06:17Z oGMo: in fact if you come from the C end of things, it's a nice way to transition into CL 2014-09-10T16:06:17Z ferada: beach: i think i've used that for forward declarations 2014-09-10T16:06:28Z Shaftoe___: eudoxia: I also happen to think it's unnecessary. 2014-09-10T16:06:45Z beach: ferada: Are you sure it was a declaration, and not a proclamation? 2014-09-10T16:06:54Z wasamasa: hmm, I remember reading the varjo thing (or some other lisp->glsl compiler) gave its author a job 2014-09-10T16:07:14Z oGMo: Shaftoe___: if you can rewrite stuff that has definite advantages 2014-09-10T16:07:26Z Shaftoe___: so coming back to my question: are there any cl packages that handle the data representation side of things in a sensibly fast manner? i.e. that won't triplicate memory movements etc etc 2014-09-10T16:07:34Z joast joined #lisp 2014-09-10T16:07:35Z InvalidCo: oGMo: maybe I just have too many bad experiences with stabbing opengl ffi in scheme 2014-09-10T16:07:35Z ferada: beach: probably declaim 2014-09-10T16:07:51Z InvalidCo: wasamasa: oh, cool 2014-09-10T16:07:55Z beach: Yeah, there I can see it. But (locally (declare (ftype ...)) ...)? 2014-09-10T16:07:56Z oGMo: InvalidCo: ah, well, the CL one is pretty good 2014-09-10T16:08:06Z wasamasa: InvalidCo: but I can't find any reference, was probably just a hackernews comment 2014-09-10T16:08:11Z oGMo: InvalidCo: you can still easily segfault for the same reasons you would in C, though 2014-09-10T16:08:29Z oGMo: i.e. out-of-context calls 2014-09-10T16:09:02Z InvalidCo: Shaftoe___: I'm guessing SBCL optimizes pretty well when you specify all data types 2014-09-10T16:09:04Z p_l: well, segfaults are normally used to trigger GC... 2014-09-10T16:09:19Z beach: ferada: Interesting use case, though. Does that muffle warnings about undefined functions (say in SBCL)? 2014-09-10T16:09:29Z Shaftoe___: InvalidCo: "specify all data types" -> what hides behind this statement? 2014-09-10T16:09:52Z ferada: beach: i'm guessing that it's just the difference between globally declaring it and doing the same thing just in that scope 2014-09-10T16:09:57Z InvalidCo: Shaftoe___: using declare type and the 2014-09-10T16:09:59Z Shaftoe___: A bitmap image is a helluva data type. I just think it's probably not a Good Idea™ to come up with a new implementation of one. 2014-09-10T16:10:04Z gravicappa joined #lisp 2014-09-10T16:10:11Z ndrei quit (Ping timeout: 265 seconds) 2014-09-10T16:10:12Z ferada: beach: also, yes it did for me at some point 2014-09-10T16:10:41Z beach: ferada: Yeah, I just don't know what it's supposed to mean. I mean, the function is not altered in any way locally. 2014-09-10T16:11:03Z vydd joined #lisp 2014-09-10T16:11:04Z Jesin quit (Read error: Connection reset by peer) 2014-09-10T16:11:10Z Jessin joined #lisp 2014-09-10T16:11:36Z ndrei joined #lisp 2014-09-10T16:11:56Z Shaftoe___: I guess I could use an opencv binding and use their cv::Mat data type as a basic data type. :\ 2014-09-10T16:12:02Z munksgaard joined #lisp 2014-09-10T16:12:16Z beach: I wonder whether it would be valid to declare a restricted type locally if one knows that the argument types are restricted. Consider (defun f (x) (declare (type (or symbol integer) x)) (if (symbolp x) x (1+ x))). 2014-09-10T16:12:20Z InvalidCo: Shaftoe___: declare is a bit misleading name 2014-09-10T16:12:27Z Jessin quit (Remote host closed the connection) 2014-09-10T16:12:39Z InvalidCo: it actually is used to tell the compiler that these things are those and a number of other things 2014-09-10T16:12:50Z beach: Could I say: (locally (declare (ftype (function (integer) integer) f) (f 234)))? 2014-09-10T16:12:54Z InvalidCo: the is just used to signal the compiler that the form enclosed is a certain type 2014-09-10T16:13:37Z Bike: beach: well, it's legal. 2014-09-10T16:13:57Z beach: Bike: What evidence do you have for that? 2014-09-10T16:14:08Z Bike: clhs type/d 2014-09-10T16:14:08Z specbot: Couldn't find anything for type/d. 2014-09-10T16:14:17Z Bike: er, well look up the declaration, and " type declarations can be free declarations or bound declarations. " 2014-09-10T16:14:29Z jollygood joined #lisp 2014-09-10T16:14:29Z Bike: ftype's probably the same but let me check. 2014-09-10T16:14:34Z beach: Right, that part I know about. 2014-09-10T16:14:44Z beach: I thought you were referring to my last use case. 2014-09-10T16:14:50Z Bike: "ftype declarations can be free declarations or bound declarations." 2014-09-10T16:14:50Z beach: Restricting the type locally. 2014-09-10T16:15:01Z Bike: free declarations can be used with locally. 2014-09-10T16:15:25Z beach: Yeah. 2014-09-10T16:15:43Z Bike: so i'm not sure what you're asking about. 2014-09-10T16:15:57Z Bike: oh, no, i think i see. 2014-09-10T16:16:14Z beach: Oh, I see why. I forgot to proclaim the type of f globally. 2014-09-10T16:16:24Z Bike: yeah i get w hat you mean now. 2014-09-10T16:16:43Z Bike: i would think it's okay, but i don't get how CL function types subtype, to be honest. 2014-09-10T16:17:08Z beach: Bike: In addition, you can't use function types to test for. 2014-09-10T16:17:31Z beach: As in (typep fun ...) 2014-09-10T16:17:37Z Bike: oh, here: "an ftype declaration for a function describes calls to the function, not the actual definition of the function" 2014-09-10T16:17:43Z InvalidCo: Shaftoe___: if you're manipulating lots of vectors on the x86-64, you probably want to check this out, also http://www.pvk.ca/Blog/2013/06/05/fresh-in-sbcl-1-dot-1-8-sse-intrinsics/ 2014-09-10T16:17:51Z Bike: clhs function/t 2014-09-10T16:17:51Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/t_fn.htm 2014-09-10T16:17:53Z beach: Bike: AHA! Nice! Thanks! 2014-09-10T16:18:34Z beach: So my use case was correct. 2014-09-10T16:18:46Z Bike: basically (locally (declare (ftype (function (x) y) f)) (f a)) is equivalent to (the y (f (the x a))) 2014-09-10T16:19:01Z beach: Yes, I see. Very nice! 2014-09-10T16:19:13Z Jesin joined #lisp 2014-09-10T16:19:14Z Shaftoe___: that's pretty cool InvalidCo. Thanks for the heads up 2014-09-10T16:19:29Z Bike: sorry i didn't get what you meant at first. 2014-09-10T16:19:57Z innertracks joined #lisp 2014-09-10T16:20:10Z beach: Bike: Quite understandable. These things are hard to describe. 2014-09-10T16:20:22Z InvalidCo: Shaftoe___: np! 2014-09-10T16:22:10Z Bike: i wonder if those semantics negatively impact hypothetical representation selection on functions... 2014-09-10T16:22:19Z Bike: not sure there's much point in such a thing, though 2014-09-10T16:22:48Z murftown joined #lisp 2014-09-10T16:22:54Z mishoo joined #lisp 2014-09-10T16:23:01Z beach: Bike: what do you mean by "representation selection"? 2014-09-10T16:23:12Z Nizumzen joined #lisp 2014-09-10T16:23:42Z Bike: Like, imagine your compiler compiles f as three functions, one for symbols, one for integers, and a dispatch, and then in the locally decided any f passed around would just be the integer version. 2014-09-10T16:23:51Z Bike: i guess you can't do anything with functions but call them so it's okay, probably? 2014-09-10T16:24:11Z Bike: "in the locally decided". programming leads to odd grammar at times. 2014-09-10T16:24:14Z beach: I would think so, yes. 2014-09-10T16:25:01Z gumbo joined #lisp 2014-09-10T16:25:10Z gumbo: hi 2014-09-10T16:25:13Z gumbo: anyone here? 2014-09-10T16:25:16Z beach: Hello gumbo. 2014-09-10T16:25:24Z beach: gumbo: Plenty of people are here. 2014-09-10T16:25:56Z beach: Bike: Now, of course, I am curious why my attempt add proclaiming function types using OR was not supposed to be valid. I forget if it was you who told me that or someone else. 2014-09-10T16:26:07Z murftown: Hi gumbo. 2014-09-10T16:26:11Z Bike: A few months ago? I think that was me. 2014-09-10T16:26:17Z Bike: But I don't remember details. 2014-09-10T16:26:51Z Harag quit (Ping timeout: 255 seconds) 2014-09-10T16:27:07Z beach: Bike: I was trying to use the proclamations as different "call cases" so that one could infer the type of a return value from the type of the argument. 2014-09-10T16:27:33Z mishoo quit (Ping timeout: 260 seconds) 2014-09-10T16:27:33Z Bike: i mean, i don't remember any actual examples. 2014-09-10T16:27:35Z gumbo: I asked because noone seemed to be active on #clnoobs 2014-09-10T16:27:44Z gumbo: I'm trying to learn lisp 2014-09-10T16:27:59Z beach: Bike: Like for CAR: (declaim (ftype (or (function (null) null) (function (cons) t)) CAR) 2014-09-10T16:28:06Z Bike: (defun f (g n) (declare (type integer n) (type (function (integer) integer) g)) (funcall g n)) <-- wondering about the calling convention. I think the rules for function/t imply that f couldn't be compiled to accept only integer-integer calling convention functions, since you could pass a (function ((or symbol integer)) integer) or whatever 2014-09-10T16:28:11Z gumbo: and I'm having a problem defining my first recursive function 2014-09-10T16:28:13Z gumbo: http://pastecode.org/index.php/view/75499652 2014-09-10T16:28:13Z murftown quit (Quit: murftown) 2014-09-10T16:28:27Z gumbo: when I try to run it it says recorrer is undefined 2014-09-10T16:28:29Z gumbo: why? 2014-09-10T16:28:44Z Bike: beach: Oh, right. That declaration says "CAR is either a function from NULL to NULL, or a function from CONS to T", but of course it's neither, it's a function that accepts either. 2014-09-10T16:29:04Z beach: Hmm. 2014-09-10T16:29:09Z Bike: beach: basically i think you're relying on a conceptual distributivity rule for OR types that doesn't exist. 2014-09-10T16:29:09Z xyjprc joined #lisp 2014-09-10T16:29:33Z Bike: gumbo: why (equipos)? 2014-09-10T16:29:50Z beach: gumbo: It should say equipos is an unknown function. 2014-09-10T16:30:02Z gumbo: oh 2014-09-10T16:30:13Z gumbo: that's suposed to be the argument 2014-09-10T16:30:25Z gumbo: it shouldn't be with parenthesis right? 2014-09-10T16:30:26Z beach: Bike: I guess that's what you told me last time. I think I haven't fully comprehended it yet. 2014-09-10T16:30:29Z Bike: beach: I don't think "this function either accepts a CONS and returns a T, or accepts a NULL and returns a NULL" is expressible in the CL type system. 2014-09-10T16:30:34Z Bike: and that of course is what you want to say. 2014-09-10T16:30:40Z beach: Indeed. 2014-09-10T16:31:20Z InvalidCo: is there some kind of a special purpose for the (eql (cddr...) nil) ? 2014-09-10T16:31:34Z beach: Bike: But if function types describe calls, why does this not mean that either I intend to call it with a NULL and I expect a NULL in return, or I intend to call it with a CONS and I expect a T in return? 2014-09-10T16:31:45Z Bike: lemme type something up 2014-09-10T16:31:46Z InvalidCo: I'd just write (not (cddr equipos)) 2014-09-10T16:31:54Z Bike: actually, no, that's easier to answer 2014-09-10T16:32:05Z InvalidCo: ...or maybe that's a bit too convoluted 2014-09-10T16:32:26Z Bike: beach: imagine (... (declare (ftype (or ...) car)) (list (car nil) (car '(3 4)))) 2014-09-10T16:32:31Z murftown joined #lisp 2014-09-10T16:32:46Z gumbo: no that's fine, more concise it seems 2014-09-10T16:32:53Z gumbo: with time I'll pick up lisp idioms 2014-09-10T16:32:55Z Bike: you said it used one of the conventions, but then you used both. 2014-09-10T16:33:15Z beach: Bike: Exclusive OR? 2014-09-10T16:33:16Z beach: Hmm. 2014-09-10T16:33:32Z Bike: well, i mean... 2014-09-10T16:33:46Z Bike: (... (declare (type (or symbol integer) x)) (list (symbol-name x) (+ x 7))) 2014-09-10T16:33:48Z Bike: obviously wrong. 2014-09-10T16:34:03Z knob joined #lisp 2014-09-10T16:34:18Z beach: Yeah. 2014-09-10T16:34:32Z Bike: though... maybe that's not due to or, strictly speaking, but the way the types themselves are defined... grr. 2014-09-10T16:35:28Z beach: Bike: I read what you are saying and I understand your argument, but I still haven't really internalized it. I need to think some more. 2014-09-10T16:35:41Z Bike: Since there's no object that's an (and symbol integer) but there are objects that are (and (function (integer) integer) (function (null) null))... 2014-09-10T16:35:49Z beach: Bike: So sorry for subjecting you to this stuff again. 2014-09-10T16:35:50Z matko joined #lisp 2014-09-10T16:35:52Z Jesin quit (Quit: Leaving) 2014-09-10T16:36:01Z InvalidCo: of course, even shorter would be to put just cddr in the test-clause and just put the cons in the then-clause 2014-09-10T16:36:08Z Bike: it's fine to think about. just means i should actually do my own projects more 2014-09-10T16:36:33Z nydel joined #lisp 2014-09-10T16:36:33Z InvalidCo: as if returns NIL if the test is nil and there's no else clause to execute 2014-09-10T16:36:42Z Bike: no, wait, there AREN'T objects that are (and ...) like that. 2014-09-10T16:37:08Z gumbo: yes, but that's not the problem I'm looking to solve, sbcl and clisp both return an undefined function RECORRER error 2014-09-10T16:37:13Z Bike: okay, well. i think i don't like function types. 2014-09-10T16:37:18Z InvalidCo: gumbo: still? 2014-09-10T16:37:33Z beach: Bike: Heh! I am beginning to understand why! 2014-09-10T16:37:37Z InvalidCo: did you make any changes to the code? 2014-09-10T16:38:02Z Bike: beach: honestly when i learned how function types work in type theory, even the basic subtyping, it was like uuuuuuh lisp is not like that, shit 2014-09-10T16:38:15Z Lorra left #lisp 2014-09-10T16:38:47Z beach: Bike: I see. 2014-09-10T16:38:49Z gumbo: yes 2014-09-10T16:39:03Z beach: gumbo: That's not the errors I get. 2014-09-10T16:39:14Z Bike: http://en.wikipedia.org/wiki/Subtyping#Function_types if i understand correctly, (subtypep (function (integer) integer) (function (t) t)) => T 2014-09-10T16:39:16Z beach: gumbo: I get: undefined function: EQUIPOS (as I said). 2014-09-10T16:39:17Z Bike: er 2014-09-10T16:39:22Z gravicappa quit (Ping timeout: 245 seconds) 2014-09-10T16:39:28Z InvalidCo: gumbo: paste the newest and let's have a look-see 2014-09-10T16:39:32Z Bike: (subtypep '(function (t) t) '(function (integer) integer)) => T 2014-09-10T16:39:34Z vinleod joined #lisp 2014-09-10T16:39:40Z gumbo: [2]> (recorrer '(a b c d)) 2014-09-10T16:39:40Z gumbo: *** - EVAL: la función RECORRER no está definida 2014-09-10T16:39:40Z gumbo: Es posible continuar en los siguientes puntos: 2014-09-10T16:39:40Z gumbo: USE-VALUE :R1 Input a value to be used instead of (FDEFINITION 'RECORRER). 2014-09-10T16:39:40Z gumbo: RETRY :R2 Reintentar 2014-09-10T16:39:40Z gumbo: STORE-VALUE :R3 Input a new value for (FDEFINITION 'RECORRER). 2014-09-10T16:39:42Z gumbo: ABORT :R4 Abort main loop 2014-09-10T16:39:57Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-10T16:39:59Z gumbo: the same error whether it's equipos or (equipos) 2014-09-10T16:40:29Z beach: Bike: I guess I am too tired at this time of day to think it through. 2014-09-10T16:40:37Z InvalidCo: gumbo: I'm going to guess that you have neglected to load the code 2014-09-10T16:40:37Z Bike: it happens. 2014-09-10T16:40:44Z InvalidCo: which dev setup are you using? 2014-09-10T16:41:15Z beach: Bike: I think I'll call it a day, and go spend time with my (admittedly small) family instead. Thanks again! 2014-09-10T16:41:20Z Bike: have fun 2014-09-10T16:41:22Z gumbo: nope, all the code is in codere.lisp, and I use (load "codere.lisp") while running clisp under the directory the file is in 2014-09-10T16:41:35Z gumbo: the rest of the functions run flawlessly 2014-09-10T16:41:56Z gumbo: both sbcl and clisp return the same error, fedora 15(?) 2014-09-10T16:42:06Z beach left #lisp 2014-09-10T16:42:13Z hitecnologys quit (Quit: hitecnologys) 2014-09-10T16:42:15Z InvalidCo: and you don't define any new packages? 2014-09-10T16:42:43Z Bike: on sbcl i get The function COMMON-LISP-USER::FLECHA-ABAJO is undefined. 2014-09-10T16:43:02Z InvalidCo: Bike: isn't that in the ANSI? ;) 2014-09-10T16:43:12Z Bike: hm? 2014-09-10T16:43:29Z InvalidCo: just...joking 2014-09-10T16:43:32Z InvalidCo: nm 2014-09-10T16:44:15Z gumbo: I don't think so, I don't know how to do that 2014-09-10T16:45:39Z gumbo: full code: http://pastecode.org/index.php/view/29728857 2014-09-10T16:46:44Z eudoxia: where's the definition of recorrer 2014-09-10T16:46:50Z eudoxia: oh 2014-09-10T16:46:57Z zacharias joined #lisp 2014-09-10T16:47:54Z gumbo: last one 2014-09-10T16:48:25Z InvalidCo: my next guess: you haven't saved your file in your editor 2014-09-10T16:48:32Z eudoxia: it runs here on SBCL if i replace (equipos) with equipos 2014-09-10T16:48:32Z gumbo: saved 2014-09-10T16:48:42Z gumbo: even changed the order of defuns 2014-09-10T16:49:49Z kobain joined #lisp 2014-09-10T16:49:50Z InvalidCo: it's highly unlikely, but... 2014-09-10T16:49:51Z kobain quit (Changing host) 2014-09-10T16:49:51Z kobain joined #lisp 2014-09-10T16:49:56Z InvalidCo: look in your dev directory 2014-09-10T16:50:01Z InvalidCo: check that the file is right 2014-09-10T16:50:19Z InvalidCo: if you see .fasl files with the same name, delete those 2014-09-10T16:50:25Z gumbo: fuck, for some reason I thought you meant changing the (equipos) from the function argument section 2014-09-10T16:50:30Z gumbo: long day at college 2014-09-10T16:50:31Z gumbo: sorry 2014-09-10T16:50:34Z InvalidCo: ahh 2014-09-10T16:50:53Z Bike: so are you getting the right error now. 2014-09-10T16:52:48Z dim: ok at least a classic buildapp with QL is giving the same problems on the VM, maybe something with SBCL 1.2.2 that I didn't try before 2014-09-10T16:55:12Z Bike: minion: memo for beach: i think the definitions of or/and types and functions are incompatible or underdefined. your originall cons ftype may actually have been right, but it's a hairy enough case that i wouldn't use it and expect uniform results across implementations. (well, i wouldn't if i thought any of them took ftypes that seriously, anyway.) 2014-09-10T16:55:12Z minion: Remembered. I'll tell beach when he/she/it next speaks. 2014-09-10T16:57:12Z varjag_ quit (Quit: Connection closed for inactivity) 2014-09-10T16:59:02Z jtza8 quit (Ping timeout: 245 seconds) 2014-09-10T17:02:01Z stacksmith joined #lisp 2014-09-10T17:02:48Z przl joined #lisp 2014-09-10T17:03:06Z Zeedox_ joined #lisp 2014-09-10T17:05:22Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-10T17:07:21Z Vutral joined #lisp 2014-09-10T17:09:52Z ndrei quit (Ping timeout: 245 seconds) 2014-09-10T17:10:15Z mvilleneuve joined #lisp 2014-09-10T17:10:39Z mvilleneuve quit (Client Quit) 2014-09-10T17:10:55Z mvilleneuve joined #lisp 2014-09-10T17:10:58Z mvilleneuve quit (Client Quit) 2014-09-10T17:11:36Z mvilleneuve joined #lisp 2014-09-10T17:11:48Z bdr3552 joined #lisp 2014-09-10T17:11:57Z ndrei joined #lisp 2014-09-10T17:12:21Z Vutral quit (Ping timeout: 260 seconds) 2014-09-10T17:13:01Z malbertife joined #lisp 2014-09-10T17:13:14Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-10T17:13:22Z mvilleneuve quit (Read error: No route to host) 2014-09-10T17:14:41Z Bike: minion: memo for beach: http://paste.lisp.org/+32UW 2014-09-10T17:14:41Z minion: Remembered. I'll tell beach when he/she/it next speaks. 2014-09-10T17:21:29Z zacharias quit (Ping timeout: 272 seconds) 2014-09-10T17:23:19Z dim: same error with sbcl 1.2.0 2014-09-10T17:23:30Z malbertife_ joined #lisp 2014-09-10T17:23:50Z gravicappa joined #lisp 2014-09-10T17:24:29Z eudoxia: dim: cl-postgres:user being nil? 2014-09-10T17:25:01Z dim: yes 2014-09-10T17:25:49Z dim: doesn't happen at the REPL, happens from the binary image, must have borked something along the way, not seeing it 2014-09-10T17:26:24Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-10T17:26:26Z cy joined #lisp 2014-09-10T17:26:35Z jtza8 joined #lisp 2014-09-10T17:26:51Z gumbo: hey, I'm back 2014-09-10T17:27:09Z gumbo: I typed the (defun recorrer on my repl 2014-09-10T17:27:14Z gumbo: and it worked as intended 2014-09-10T17:27:16Z gumbo: but now 2014-09-10T17:27:24Z gumbo: when writing to the file 2014-09-10T17:27:29Z gumbo: It won't work agais 2014-09-10T17:27:32Z gumbo: again 2014-09-10T17:27:33Z malbertife quit (Ping timeout: 264 seconds) 2014-09-10T17:27:39Z Bike: be specific. 2014-09-10T17:27:39Z gumbo: the file is properly saved and loaded 2014-09-10T17:27:45Z gumbo: same error 2014-09-10T17:30:31Z fsvehla joined #lisp 2014-09-10T17:32:36Z zacharias joined #lisp 2014-09-10T17:34:13Z gumbo: anyone can help me? 2014-09-10T17:35:23Z jegaxd26 joined #lisp 2014-09-10T17:35:58Z InvalidCo: try saving it with another filename and then loading that filename 2014-09-10T17:36:10Z InvalidCo: for example, call it correr2.lisp 2014-09-10T17:36:13Z InvalidCo: and then load that file 2014-09-10T17:36:18Z InvalidCo: report back 2014-09-10T17:36:49Z puchacz joined #lisp 2014-09-10T17:38:32Z przl quit (Ping timeout: 276 seconds) 2014-09-10T17:39:18Z zacharias quit (Ping timeout: 268 seconds) 2014-09-10T17:40:07Z gumbo: for some reason it worked 2014-09-10T17:40:12Z gumbo: thanks 2014-09-10T17:40:32Z zacharias joined #lisp 2014-09-10T17:40:45Z gumbo: also, is there a difference between (A . B) and (A B)? 2014-09-10T17:41:01Z gumbo: if you know the reason for my previous error please tell me 2014-09-10T17:41:05Z Bike: (cdr '(a . b)) => b, (cdr '(a b)) => (b) 2014-09-10T17:43:07Z vanila: (a b c) is short for (a . (b . (c . ()))) 2014-09-10T17:43:37Z drmeiste_: I'm looking for advice: I am incorporating my Chemistry code into Clasp and I'd like to use Common Lisp SYMBOLs to represent atom names and all sorts of other names. 1) I could put all symbols in the #:CHEM package but that risks clashes with other symbols for functions and classes in that package 2) I could put the names in the keyword package or 3) I could create a #:CHEM-KW package and put them all in there. I'm leaning towards opti 2014-09-10T17:43:38Z drmeiste_: on #3. Any thoughts? 2014-09-10T17:43:57Z theos quit (Ping timeout: 245 seconds) 2014-09-10T17:44:01Z drmeiste_ is now known as drmeister 2014-09-10T17:44:02Z Bike: i'd go for three 2014-09-10T17:45:02Z dlowe: Option 3 is really the only sensible one 2014-09-10T17:45:21Z theos joined #lisp 2014-09-10T17:45:41Z mingvs quit (Ping timeout: 276 seconds) 2014-09-10T17:45:43Z drmeister: Option 4 (what I do now in C++) would be to use strings to represent names but that will be slower. It seems more "lispy" to use symbols 2014-09-10T17:45:47Z mingvs joined #lisp 2014-09-10T17:46:18Z gumbo: thanks, is there any way to turn (a b) into (a . b)? 2014-09-10T17:46:29Z drewc: gumbo: from the paste you gave, you arre calling a funcion that does not exist ... 2014-09-10T17:46:30Z dlowe: gumbo: (cons (first a) (second b) 2014-09-10T17:47:18Z dlowe: drmeister: the big difference comes in comparison. It's very fast to check to see if a symbol is EQ to another 2014-09-10T17:47:32Z drmeister: Would it be permissible to enhance Common Lisp packages so that I can tell #:CHEM-KW package that any symbol interned within it is automatically exported - like the keyword package? 2014-09-10T17:47:38Z dlowe: you can check to see if strings are EQ, of course, but you won't get support from the reader 2014-09-10T17:47:46Z slyrus quit (Ping timeout: 252 seconds) 2014-09-10T17:47:53Z zacharias_ joined #lisp 2014-09-10T17:47:56Z zacharias quit (Ping timeout: 268 seconds) 2014-09-10T17:47:58Z gumbo: yea but an arbitrary list? as in I have (a b) as a function return result and want to turn it into (a . b) 2014-09-10T17:48:04Z zacharias_ is now known as zacharias 2014-09-10T17:48:10Z drmeister: dlowe: Agreed. EQ comparisons of symbols are what drew me to the idea of using symbols. 2014-09-10T17:48:35Z drewc: gumbo: " (if (eql (cddr equipos) nil) (equipos) ...) " 2014-09-10T17:48:35Z dlowe: gumbo: I don't know why you would want to do that, but yes, if you understood how linked lists of cons cells worked, this would be obvious 2014-09-10T17:48:36Z gumbo: the paste lacks flecha-abajo and flecha-derecha, but that wasn't the problem 2014-09-10T17:48:37Z pjb`: gumbo: (let ((result (fun))) (cons (first result) (second result))) 2014-09-10T17:48:45Z pjb`: gumbo: or (apply (function cons) (fun)) 2014-09-10T17:48:52Z gumbo: oh yea we resolved that already 2014-09-10T17:48:58Z gumbo: this is the new code 2014-09-10T17:49:12Z gumbo: (defun recorrer (equipos) 2014-09-10T17:49:12Z gumbo: (if (eql (cddr equipos) nil) 2014-09-10T17:49:12Z gumbo: (list equipos) 2014-09-10T17:49:12Z gumbo: (cons (flecha-abajo equipos) (recorrer (flecha-derecha equipos))))) 2014-09-10T17:49:22Z drewc: please do not spam ... 2014-09-10T17:49:26Z gumbo: when written on the repl it ran ok 2014-09-10T17:49:27Z gumbo: sorry 2014-09-10T17:49:30Z drewc: there is a pastebin you know 2014-09-10T17:49:44Z gumbo: but when loaded it said undefined function 2014-09-10T17:49:44Z drmeister: oGMo: Does cl-conspack represent symbols in an efficient way. If I had an array of 1000 identical symbols. How does that get represented? 2014-09-10T17:49:55Z gumbo: changing the file name made it run properly 2014-09-10T17:50:17Z gumbo: thanks pjb` 2014-09-10T17:50:34Z drewc: did you try to remove the .fasl, or load the source file and not the fasl itself? 2014-09-10T17:50:45Z pjb`: drmeister: it would be an implementation specific extension, that would be somehow incompatible: if activated by default, it would break Common Lisp programs. Therefore it would be bad. 2014-09-10T17:50:51Z pjb` is now known as pjb 2014-09-10T17:50:52Z oGMo: drmeister: i forget if it uses refs for symbols (probably should), but you can also specify an index if you have a limited/fixed set of symbols. i also knew i forgot to document something... 2014-09-10T17:52:16Z pjb: drmeister: if you added a (:auto-export t) option to defpackage, then it could be added, but anybody would avoid it, since that'd render their programs automatically non-conforming. 2014-09-10T17:53:07Z pjb: Notice that KEYWORD is an auto-export package. 2014-09-10T17:53:14Z pjb: So the concept is not too alien. 2014-09-10T17:53:37Z theos quit (Ping timeout: 245 seconds) 2014-09-10T17:53:39Z oGMo: drmeister: yeah if you're tracking-refs, it will tag symbols, which isn't the _most_ efficient way, but is pretty efficient for fire-and-forget 2014-09-10T17:53:51Z drmeister: It would be better if I could just encode the symbol rather than an index. The atom names are arbitrary. 2014-09-10T17:54:15Z drmeister: oGMo: Good, thank you. 2014-09-10T17:54:35Z gumbo: drewc: I loaded the original file with (load "codere.lisp") 2014-09-10T17:54:39Z gumbo: is that ok? 2014-09-10T17:54:43Z oGMo: if you have a "very" fixed symbol set of <15 or <256 you can encode those in 1-2 bytes respectively with an index, but that's more targeted toward file formats 2014-09-10T17:54:50Z oGMo: drmeister: np 2014-09-10T17:54:55Z gumbo: the copy, (load "codere2.lisp") 2014-09-10T17:55:32Z Fare: I feel like as a language, clojure is less ambitious than cl, and thus is more successful at its goals. 2014-09-10T17:55:37Z drmeister: Common Lisp wish-list: should have user extensible packages. 2014-09-10T17:55:50Z Fare: drmeister, what's a "user extensible package" ? 2014-09-10T17:55:51Z pjb: Packages are user-extensible in CL! 2014-09-10T17:56:01Z drewc: gumbo: http://www.lispworks.com/documentation/HyperSpec/Body/02_da.htm <--- or : (let* ((ab (list 'a 'b)) (a.b (cons (car ab) (cadr ab)))) (format nil "~A : ~A" ab a.b)) => "(A B) : (A . B)" 2014-09-10T17:56:12Z drewc is scrolling back 2014-09-10T17:56:28Z drmeister: I just thought of one little addition. Auto-export in packages. 2014-09-10T17:56:43Z pjb: drmeister: just don't make it the default! 2014-09-10T17:57:04Z eudoxia: a :clasp-auto-export option would work, it could even take a regexp 2014-09-10T17:57:05Z pjb: Implementations can be supersets of CL and can have extensions, as long as they are _documented_. 2014-09-10T17:57:11Z drmeister: pjb: Of course, that would be very bad. 2014-09-10T17:57:14Z rme: drmeister: we have an internal extension in ccl that does that 2014-09-10T17:58:05Z drmeister: rme: Oh - so there's precedent. Great. 2014-09-10T17:58:20Z drewc: gumbo: and what does "diff codere2.lisp codere.lisp"put out? OR : why did one work while one did not? 2014-09-10T17:58:37Z eudoxia quit (Quit: leaving) 2014-09-10T17:58:54Z drewc: what does auto-export do? 2014-09-10T17:58:54Z nipra joined #lisp 2014-09-10T17:59:11Z drmeister: My guess is whenever you intern a symbol it is automatically exported. 2014-09-10T17:59:21Z drmeister: Like the keyword package. 2014-09-10T18:00:01Z drmeister: bbl 2014-09-10T18:00:03Z drmeister quit (Remote host closed the connection) 2014-09-10T18:00:22Z JuanDaugherty quit (Ping timeout: 240 seconds) 2014-09-10T18:00:25Z drewc: oh ... I could see why that might be useful for some packages that I use just for symbols ... but beyond that, yikes! :) 2014-09-10T18:00:42Z gumbo: wow, for some reason emacs wasn't saving the changes I made to the file, even though I *did* save it 2014-09-10T18:01:02Z gumbo: the diff shows the changes added since yesterday 2014-09-10T18:01:11Z drewc: gumbo: sure you did, computers are always at fault! ;) 2014-09-10T18:01:15Z gumbo: that is, the recorrer function entirely 2014-09-10T18:01:42Z gumbo: doesn't file->save save the file changes to the file in emacs? 2014-09-10T18:02:19Z drewc: my emacs does not have a menu, so no, it doesn't... for me 2014-09-10T18:02:45Z Grue` joined #lisp 2014-09-10T18:02:49Z Maurice_TCF joined #lisp 2014-09-10T18:02:49Z gumbo: mine does, fedora repository version 2014-09-10T18:02:50Z Maurice_TCF quit (Client Quit) 2014-09-10T18:02:53Z przl joined #lisp 2014-09-10T18:03:10Z drmeister joined #lisp 2014-09-10T18:03:33Z drewc: ok, so fedora is always at fault ... but you pay for support! :D 2014-09-10T18:04:52Z murftown quit (Quit: murftown) 2014-09-10T18:05:28Z drewc tries out the GTK emacs without his init.el ... 2014-09-10T18:06:04Z theos joined #lisp 2014-09-10T18:06:27Z Maurice_TCF joined #lisp 2014-09-10T18:06:49Z Nizumzen joined #lisp 2014-09-10T18:08:19Z drewc: and yes, File > Save is C-x C-s ... you really should email the support team and give a demo (video'd) of you hitting save on the menu but it not saving! That should not be, is a major bug, and 2014-09-10T18:09:11Z drewc is grinning ... but makes no sound Out Loud :P 2014-09-10T18:09:33Z sdemarre joined #lisp 2014-09-10T18:09:57Z knob quit (Quit: Leaving) 2014-09-10T18:10:08Z CrazyEddy quit (Ping timeout: 268 seconds) 2014-09-10T18:10:32Z pjb: Perhaps drewc doesn't say anything, but I'm sure he's doing that: https://www.youtube.com/watch?v=b_SSxP9urPg 2014-09-10T18:10:33Z nate_c joined #lisp 2014-09-10T18:11:21Z drewc is now! 2014-09-10T18:11:22Z jtza8 quit (Ping timeout: 240 seconds) 2014-09-10T18:11:42Z ndrei quit (Ping timeout: 255 seconds) 2014-09-10T18:11:47Z normanrichards quit 2014-09-10T18:11:53Z Maurice_TCF quit (Quit: This computer has gone to sleep) 2014-09-10T18:12:15Z drewc: man ...I need some pickled herring and some beer! 2014-09-10T18:13:03Z phadthai: surstromming? 2014-09-10T18:14:07Z drewc is half Irish, Fionn mac Cumhaill in English is Finn McCool, so Finns are related to cool! 2014-09-10T18:14:51Z angavrilov quit (Remote host closed the connection) 2014-09-10T18:15:00Z drewc tries to make it relevant to his background and, well, Finns! :) 2014-09-10T18:15:38Z varjag_ joined #lisp 2014-09-10T18:16:32Z drewc: phadthai: exactly ... even Finns love to hate it :) 2014-09-10T18:17:01Z gendl joined #lisp 2014-09-10T18:18:34Z Vivitron joined #lisp 2014-09-10T18:19:09Z theos quit (Ping timeout: 246 seconds) 2014-09-10T18:22:25Z yacks quit (Quit: Leaving) 2014-09-10T18:25:29Z CrazyEddy joined #lisp 2014-09-10T18:25:51Z matko quit (Read error: Connection reset by peer) 2014-09-10T18:27:43Z jtza8 joined #lisp 2014-09-10T18:30:27Z yacks joined #lisp 2014-09-10T18:31:10Z Fare quit (Ping timeout: 272 seconds) 2014-09-10T18:31:41Z Fare joined #lisp 2014-09-10T18:34:31Z LaGaVuLiN__ joined #lisp 2014-09-10T18:35:08Z JuanDaugherty joined #lisp 2014-09-10T18:37:45Z malbertife_ quit (Ping timeout: 264 seconds) 2014-09-10T18:40:39Z Ralt_ joined #lisp 2014-09-10T18:40:40Z Fare quit (Ping timeout: 272 seconds) 2014-09-10T18:41:03Z murftown joined #lisp 2014-09-10T18:41:15Z Ralt_: hi 2014-09-10T18:41:26Z Ralt_: I have a web application where I'm going to store users' passwords 2014-09-10T18:41:45Z Ralt_: in other languages I worked with, every implementation detail was taken care of, and I just use the high-level API 2014-09-10T18:42:08Z Ralt_: so I'm not sure how I should go about this. I have plenty of questions, and I can't find any resource explaining all the details. 2014-09-10T18:42:12Z Fare joined #lisp 2014-09-10T18:42:21Z jasom: Ralt_: IIRC eudoxia wrote a lib to do that 2014-09-10T18:42:23Z Ralt_: I guess I'm going to use ironclad, but that's as far as I've guessed. 2014-09-10T18:42:50Z jasom: https://github.com/eudoxia0/cl-pass 2014-09-10T18:43:18Z Ralt_: thanks! 2014-09-10T18:43:37Z Ralt_: hm... not salt to take care of? it handles it all? 2014-09-10T18:43:56Z jasom: Ralt_: yes, it generates a salt, and stores it with the result of hash 2014-09-10T18:44:04Z Ralt_: ok 2014-09-10T18:44:19Z thierrygar_ quit (Quit: thierrygar_) 2014-09-10T18:44:31Z jasom: Think of it as a block box for which you can give a password, and it returns a token you can use to check the password in the future 2014-09-10T18:44:54Z dlowe: Ralt_: also, if you use a backend database, it might have a built-in password hashing function 2014-09-10T18:45:11Z Ralt_: jasom: thanks 2014-09-10T18:45:15Z Ralt_: dlowe: oh, checking 2014-09-10T18:45:18Z Ralt_: (it's postgres) 2014-09-10T18:45:24Z dlowe: yes, postgres has one 2014-09-10T18:45:52Z nipra quit (Ping timeout: 240 seconds) 2014-09-10T18:46:09Z munksgaard quit (Ping timeout: 264 seconds) 2014-09-10T18:46:49Z Ralt_: http://stackoverflow.com/a/18687445/851498 2014-09-10T18:46:54Z Ralt_: thanks dlowe, I'm going to use that 2014-09-10T18:47:32Z thierrygar joined #lisp 2014-09-10T18:47:45Z zacharias quit (Ping timeout: 268 seconds) 2014-09-10T18:48:29Z CrazyEddy quit (Ping timeout: 260 seconds) 2014-09-10T18:48:46Z zacharias joined #lisp 2014-09-10T18:49:56Z repudiation joined #lisp 2014-09-10T18:50:50Z clarkema joined #lisp 2014-09-10T18:51:32Z jollygood quit (Quit: IRCGate CGI:IRC User (EOF)) 2014-09-10T18:52:03Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-10T18:54:05Z pjb: Ralt_: oh, so in other programming languages, you never wrote the application. It was all already coded, and you just put together high level blocks. 2014-09-10T18:54:09Z pjb: Are you sure you are a programmer? 2014-09-10T18:54:22Z pjb: Perhaps you were just a product manager or something… 2014-09-10T18:54:51Z cite-reader: No, stop that. If we couldn't make use of abstractions we'd have to write everything in a hex editor and then where would we be? 2014-09-10T18:55:25Z ehu joined #lisp 2014-09-10T18:55:28Z pjb: cite-reader: you should be able to do it, if the need arises. 2014-09-10T18:55:53Z pjb: A programmer is somebody who can take care of every implementation details, if needed. 2014-09-10T18:56:33Z eschulte joined #lisp 2014-09-10T18:56:35Z pjb: Clearly, job titles are lagging far behind the reality. You have to read between the lines in resumes and job offers, to understand that. 2014-09-10T18:56:39Z Grue`: honestly, the less programmers have to code crypto-related stuff the better 2014-09-10T18:56:48Z Fare: hex editors? Why don't you use the switchboard, like any adult? http://2.bp.blogspot.com/_jnJ4qzoIvXw/R8diQt-qLQI/AAAAAAAAAAk/m_YJUmxQKQk/s1600-h/ENIAC%5B1%5D.gif 2014-09-10T18:56:50Z cite-reader: Yes, what Grue` said. 2014-09-10T18:56:56Z drewc has done so... and is a developer and systems architect as well as a programmer, so developed the system that needed hex! 2014-09-10T18:57:11Z Karl_Dscc joined #lisp 2014-09-10T18:57:32Z drewc: that was some 20 odd years ago, and was not lisp or even crypto related. 2014-09-10T18:57:43Z eschulte: is there an alternative to mapcan which doesn't alter the list being mapped over? 2014-09-10T18:57:56Z jasom: pjb: Ralt_ was indicating he knew had to do so if needed. I don't see the problem. 2014-09-10T18:57:59Z pjb: Fare: don't joke, my next fun project will be to implement a patch panel computer emulator. 2014-09-10T18:58:06Z eschulte: I'm constantly doing (mapcan #'foo (copy-tree bar)) 2014-09-10T18:58:22Z pjb: eschulte: wrap it into a functional abstraction then. 2014-09-10T18:58:32Z jasom: s/had/how 2014-09-10T18:58:45Z eschulte: pjb: alright, just wondering if there was some obvious alternate function I was missing 2014-09-10T18:58:51Z dlowe: eschulte: just use mapcar 2014-09-10T18:58:53Z drewc: eschulte: (apply #'append (maplist f x1 ... xn)) 2014-09-10T18:58:53Z Fare: eschulte: alexandria:mappend 2014-09-10T18:58:54Z wgl: pjb: I just had a flashback memory of my days with RPG III 2014-09-10T18:58:56Z pjb: jasom: I had the opposite impression from " so I'm not sure how I should go about this.". 2014-09-10T18:59:05Z Fare: uiop:reduce/append 2014-09-10T18:59:06Z dlowe: or maplist, yeah 2014-09-10T18:59:07Z eschulte: Fare: perfect, thanks 2014-09-10T18:59:16Z dlowe: or that :p 2014-09-10T18:59:25Z drewc: OR: read the hyperspec, and in the description ... 2014-09-10T18:59:36Z Fare: oops it's not in UIOP. 2014-09-10T18:59:45Z Fare: unlike reduce/strcat 2014-09-10T18:59:50Z malice joined #lisp 2014-09-10T18:59:59Z drewc: and the non-destructive version of nconc is? #'append! :) 2014-09-10T19:00:07Z jasom: pjb: well he was researching how to do it, and he found ironclad, so he was at least partly there; furthermore he didn't say "I give up and am not going to use lisp since it doesn't have a pw hash function" 2014-09-10T19:00:22Z Fare: rule of thumb: NEVER, EVER use NCONC. Use append, or a better data structure. 2014-09-10T19:00:27Z Grue`: you'd think it would be #'conc 2014-09-10T19:00:51Z pjb: Fare: a simulator for an IBM 402 for example. http://en.wikipedia.org/wiki/Plugboard Shall be fun. 2014-09-10T19:01:03Z Fare: pjb: why, oh why? 2014-09-10T19:01:04Z pjb: jasom: that's the positive point :-) 2014-09-10T19:01:07Z jasom: I've never written a gui 100% from scratch either, so I might have a little trouble getting started there, but I know I could and still comsider myself a programmer 2014-09-10T19:01:30Z jasom: Fare: I use nconc in nested loops fairly regularly 2014-09-10T19:01:42Z pjb: Yes, nconc is nice. And even nreconc. 2014-09-10T19:01:57Z pjb: Today, I would have used a nreconc that worked on sequences (vectors). 2014-09-10T19:02:07Z Fare: pjb: what about instead playing with a FPGA and implementing the processor using a Lisp to VHDL compiler? 2014-09-10T19:02:21Z pjb: Already done :-) 2014-09-10T19:02:33Z slyrus joined #lisp 2014-09-10T19:02:37Z Fare: ok 2014-09-10T19:02:44Z Fare: what was the conclusion? 2014-09-10T19:02:56Z pjb: Now of course, one problem could be to find old programs for those machines, since they're even more hardware than punch cards. 2014-09-10T19:03:16Z pjb: You would have to patch new programs. 2014-09-10T19:03:17Z ndrei joined #lisp 2014-09-10T19:03:29Z jasom: pjb: probably written down in somebody's notebook 2014-09-10T19:03:41Z pjb: Perhaps. 2014-09-10T19:03:55Z pjb: But lost, I doubt anybody scanned this kind of document. 2014-09-10T19:04:13Z Fare: write a JIT from x86 to IBM 402 and run Linux on it? 2014-09-10T19:04:59Z pjb: With a little robot to wire the patches? :-) 2014-09-10T19:05:00Z repudiation quit (Ping timeout: 246 seconds) 2014-09-10T19:08:31Z munksgaard joined #lisp 2014-09-10T19:09:14Z normanrichards joined #lisp 2014-09-10T19:09:43Z cite-reader quit (Quit: leaving) 2014-09-10T19:12:40Z dipsaceous joined #lisp 2014-09-10T19:13:14Z resttime joined #lisp 2014-09-10T19:13:52Z TDog quit (Ping timeout: 240 seconds) 2014-09-10T19:14:40Z BitPuffin is now known as ABitPuffinA 2014-09-10T19:14:53Z c3w left #lisp 2014-09-10T19:15:51Z clarkema quit (Quit: clarkema) 2014-09-10T19:16:33Z ABitPuffinA is now known as BitPuffin 2014-09-10T19:20:26Z zacharias quit (Read error: Connection reset by peer) 2014-09-10T19:22:38Z jkaye quit (Remote host closed the connection) 2014-09-10T19:24:21Z normanrichards quit 2014-09-10T19:26:37Z drewc: and a bug to fly into it! 2014-09-10T19:26:43Z zacharias joined #lisp 2014-09-10T19:26:43Z Grue`: in asdf is there a way to have a :file component that only loads when it exists? 2014-09-10T19:30:19Z Fare: there's always a way 2014-09-10T19:30:40Z Fare: not sure how/why you would do that. What is the real requirement? 2014-09-10T19:31:35Z Ralt_: pjb: I know enough about crypto to know that I don't know enough :) 2014-09-10T19:31:37Z Fare: you can define a subclass of :cl-source-file that does what you want. 2014-09-10T19:31:39Z Grue`: a file that contains my passwords that won't be committed into git repository, but the system shouldn't break if it can't find it 2014-09-10T19:31:43Z Ralt_: at least I don't try to roll my own crypto. 2014-09-10T19:32:00Z Fare: why make it part of the code at all? 2014-09-10T19:32:08Z Ralt_: so yes, I'd rather use high-level APIs made by better developers than me at this than roll my own crypto. 2014-09-10T19:32:23Z Fare: it's a runtime resource, not a compile-time source file 2014-09-10T19:32:36Z Fare: you could use system-relative-pathname to locate it 2014-09-10T19:33:37Z vinleod quit (Quit: Computer has gone to sleep.) 2014-09-10T19:33:59Z drmeister quit (Remote host closed the connection) 2014-09-10T19:35:21Z vinleod joined #lisp 2014-09-10T19:38:34Z drmeister joined #lisp 2014-09-10T19:40:13Z dim: maybe the password is needed at compile time to "unlock" a source file or something? ;-) 2014-09-10T19:40:21Z dipsaceous quit (Ping timeout: 255 seconds) 2014-09-10T19:40:21Z drmeiste_ joined #lisp 2014-09-10T19:40:24Z protoveratrine joined #lisp 2014-09-10T19:40:37Z drmeiste_ is now known as drmeister_ 2014-09-10T19:41:33Z slyrus_ joined #lisp 2014-09-10T19:41:52Z AeroNotix: CIDER is not SLIME 2014-09-10T19:42:01Z Grue`: ok this seems to work (eval-when (:load-toplevel) (load (asdf:system-relative-pathname :blah "dbsettings.lisp"))) 2014-09-10T19:42:22Z fsvehla quit (Quit: fsvehla) 2014-09-10T19:43:45Z drmeister quit (Ping timeout: 272 seconds) 2014-09-10T19:43:47Z slyrus__ joined #lisp 2014-09-10T19:44:12Z PuercoPop: AeroNotix: well it is like slime.el and nrepl like swank 2014-09-10T19:44:23Z AeroNotix: PuercoPop: No 2014-09-10T19:44:27Z slyrus quit (Ping timeout: 245 seconds) 2014-09-10T19:44:36Z slyrus__ is now known as slyrus 2014-09-10T19:44:39Z PuercoPop: wasn't cider the rename of nrepl.el? 2014-09-10T19:44:59Z AeroNotix: PuercoPop: it's no where near as robust as SLIME 2014-09-10T19:45:43Z murftown quit (Quit: murftown) 2014-09-10T19:46:23Z Fare: Grue: I would keep it as a always-runtime thing 2014-09-10T19:46:52Z slyrus_ quit (Ping timeout: 245 seconds) 2014-09-10T19:46:59Z PuercoPop: no doubt about it, I can't even get the equivalent of C-c ~ to work. (which was something like C-c C-n IIRC), kept having to eval the ns form in the repl 2014-09-10T19:47:09Z drmeister_: How do people work with conditions/errors in their programs. Do you create new error class hierarchies to indicate errors specific to your application/package? Say I have a #:CHEM package and I catch an error like the user asks for an atom with a specific name in a residue and that atom isn't found. Do I return a CHEM-ERROR or CHEM:ATOM-NOT-FOUND condition which is a subclass of the CHEM:CHEM-ERROR which is a subclass of CL:ERROR? 2014-09-10T19:47:18Z PuercoPop: but they are conceptually the same right? 2014-09-10T19:47:34Z jlarocco quit (Quit: Leaving) 2014-09-10T19:47:35Z AeroNotix: PuercoPop: they're for the same thing 2014-09-10T19:47:43Z PuercoPop: (I gave up on clojure after I found cl was much more easy to get started with) 2014-09-10T19:47:51Z Fare: drmeister_, that's usually the Right Thing to do, unless the condition is so unrecoverable that it doesn't matter 2014-09-10T19:47:53Z AeroNotix: $DAYJOB uses it 2014-09-10T19:48:00Z drmeister_: I could go a little crazy declaring different conditions for every kind of error that can happen. 2014-09-10T19:48:11Z protoveratrine quit (Ping timeout: 268 seconds) 2014-09-10T19:48:41Z drmeister_: Fare: What is the goal here? To differentiate conditions as much as possible so that the user can write restart handlers for every condition? 2014-09-10T19:48:50Z Fare: yes 2014-09-10T19:48:55Z clarkema joined #lisp 2014-09-10T19:48:55Z Ralt_: wasn't there a fork of slime recently? 2014-09-10T19:49:05Z Fare: handlers, or filters, or tests, etc. 2014-09-10T19:49:12Z PuercoPop: Ralt_: yes sly. www.github/com/captainmore/sly 2014-09-10T19:49:13Z chelicere joined #lisp 2014-09-10T19:49:14Z Fare: loggers 2014-09-10T19:50:03Z Ralt_: is it worth using yet? It says it's in alpha, but not sure what it means. 2014-09-10T19:50:45Z PuercoPop: AeroNotix: do you think the middleware abstraction(?prolly not the right word) is something swank should learn from nrepl? 2014-09-10T19:51:49Z josemanuel joined #lisp 2014-09-10T19:52:15Z AeroNotix: PuercoPop: I don't see any advantages so far. In fact it has introduced quite a few issues but I think that could just be related to the fact it hasn't had as much development time. 2014-09-10T19:52:23Z PuercoPop: Ralt_: well give it a go. The author fixed an issue with me being unable to type on the repl which was a blocker. Other than that it is a cleaner interface but you lose swank presentations. I like C-r on the repl in particular. It still has some rough spots but it is not a minefield in my exp. Been using it for a couple of days 2014-09-10T19:52:51Z Ralt_: k, I'll check it out then 2014-09-10T19:54:44Z PuercoPop: AeroNotix: I thought they had stuff like debuggers as a middleware. Well time will tell. 2014-09-10T19:55:03Z vydd quit (Remote host closed the connection) 2014-09-10T19:56:02Z Fare quit (Ping timeout: 272 seconds) 2014-09-10T19:56:21Z chelicere quit (Ping timeout: 264 seconds) 2014-09-10T19:57:04Z dim: did lparallel or bordeaux-threads recently change the way they handle special variables?! 2014-09-10T19:57:17Z zacharias quit (Read error: Connection reset by peer) 2014-09-10T19:58:29Z zacharias joined #lisp 2014-09-10T19:58:46Z dim: ah. using 0.0.2. 2014-09-10T19:58:47Z dim: ok 2014-09-10T19:59:02Z LaGaVuLiN__ quit (Ping timeout: 252 seconds) 2014-09-10T20:01:24Z chadhs joined #lisp 2014-09-10T20:01:35Z munksgaard quit (Quit: Lost terminal) 2014-09-10T20:02:51Z chelicere joined #lisp 2014-09-10T20:02:59Z jkaye joined #lisp 2014-09-10T20:03:37Z clarkema quit (Quit: clarkema) 2014-09-10T20:03:58Z cite-reader joined #lisp 2014-09-10T20:05:32Z EvW quit (Ping timeout: 272 seconds) 2014-09-10T20:05:55Z Fare joined #lisp 2014-09-10T20:06:32Z EvW joined #lisp 2014-09-10T20:07:30Z theethicalegoist joined #lisp 2014-09-10T20:08:25Z normanrichards joined #lisp 2014-09-10T20:08:26Z normanrichards quit (Read error: Connection reset by peer) 2014-09-10T20:10:03Z sctb joined #lisp 2014-09-10T20:10:11Z normanrichards joined #lisp 2014-09-10T20:11:13Z Bicyclidine joined #lisp 2014-09-10T20:12:10Z pnpuff joined #lisp 2014-09-10T20:21:08Z TDog joined #lisp 2014-09-10T20:21:11Z Vutral joined #lisp 2014-09-10T20:21:27Z chadhs quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-10T20:21:45Z JokesOnYou77 joined #lisp 2014-09-10T20:21:57Z JokesOnYou77: Hi all 2014-09-10T20:24:04Z oleo: sup 2014-09-10T20:24:08Z nug700 joined #lisp 2014-09-10T20:24:34Z sdemarre quit (Ping timeout: 268 seconds) 2014-09-10T20:25:43Z sctb quit (Remote host closed the connection) 2014-09-10T20:28:04Z Vutral quit (Read error: Connection reset by peer) 2014-09-10T20:30:03Z jtza8 quit (Ping timeout: 246 seconds) 2014-09-10T20:30:51Z Karl_Dscc quit (Remote host closed the connection) 2014-09-10T20:31:27Z chelicere quit (Ping timeout: 245 seconds) 2014-09-10T20:34:00Z pnpuff quit (Quit: Lost terminal) 2014-09-10T20:36:00Z Ven joined #lisp 2014-09-10T20:36:31Z JokesOnYou77: I just finished a recursive function to create in-order ngrams (word groupings) and I was hoping I could get some feedback: http://pastebin.com/iTREnp1i Tests and output are at the bottom. 2014-09-10T20:40:32Z clarkema joined #lisp 2014-09-10T20:42:01Z Fare quit (Ping timeout: 272 seconds) 2014-09-10T20:42:27Z Fare joined #lisp 2014-09-10T20:43:18Z antonv joined #lisp 2014-09-10T20:44:37Z resttime: how can I encode my octets into a byte string like emacs does to a base64 string? 2014-09-10T20:44:59Z AeroNotix: resttime: FLEXI-STREAMS:OCTETS-TO-STRING ? 2014-09-10T20:45:03Z resttime: they are apparently different 2014-09-10T20:45:12Z AeroNotix: derp missed the base64 req 2014-09-10T20:45:24Z jtza8 joined #lisp 2014-09-10T20:45:40Z resttime: well i have an octet vector of an image and i want to change it into a byte string for emacs to read 2014-09-10T20:46:17Z resttime: but the byte string that emacs wants for #'create-image is different than what common lisp encodes 2014-09-10T20:47:03Z gravicappa quit (Remote host closed the connection) 2014-09-10T20:47:31Z zeitue joined #lisp 2014-09-10T20:48:31Z resttime: i have to convert the octet vector into base64 and feed it into emacs's base64-decode-string for it to work 2014-09-10T20:49:01Z resttime: I'm wondering how i can by pass that and just directly make the unibyte string 2014-09-10T20:49:05Z resttime: *bypass 2014-09-10T20:49:13Z Jokes joined #lisp 2014-09-10T20:49:33Z resttime: flexi-streams, babel, and a mapping of #'code-char produce the same output 2014-09-10T20:49:53Z resttime: but emacs isn't compatible with that it seems 2014-09-10T20:50:21Z rme: There's a library called cl-base64. It's in Quicklisp. 2014-09-10T20:51:33Z resttime: i use that for the intermediary before changing the octet vector to base64 before passing to emacs 2014-09-10T20:51:43Z resttime: s/before/for 2014-09-10T20:51:55Z resttime: http://www.gnu.org/software/emacs/manual/html_node/elisp/Base-64.html 2014-09-10T20:52:13Z resttime: according to this though the base64 decode just makes it a unibyte string 2014-09-10T20:52:53Z resttime: so I think to myself, "i can just convert this octet data into a byte string myself" 2014-09-10T20:53:17Z resttime: and that's where i'm stuck with flexi-streams/babel/etc. 2014-09-10T20:54:08Z mood: resttime: What external format do you use in flexi-streams? ASCII right? 2014-09-10T20:54:38Z Vutral joined #lisp 2014-09-10T20:54:40Z Bicyclidine: Jokes: you're JokesOnYou77? 2014-09-10T20:55:08Z JokesOnYou77: Bicyclidine, Sorry about that. Was afk and joined on my phone 2014-09-10T20:55:11Z resttime: yes i believe that's the case, though i'm not too sure, specifically the type that emacs uses, which they call a uibyte string 2014-09-10T20:55:16Z resttime: *unibyte 2014-09-10T20:55:23Z Jokes quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-09-10T20:55:47Z Bicyclidine: JokesOnYou77: i've probably mis-guessed what ngrams are, but maybe you'll find this a bit interesting. http://paste.lisp.org/display/143674 2014-09-10T20:56:52Z resttime: :external-format :ascii with flexi-streams doesn't work 2014-09-10T20:57:17Z resttime: "No character which corresponds to the octet #x89." 2014-09-10T20:57:55Z zeitue quit (Quit: Leaving) 2014-09-10T20:57:56Z resttime: hmmm that might be a clue now that i think about it 2014-09-10T20:58:06Z Vutral quit (Excess Flood) 2014-09-10T20:58:25Z resttime: the resulting unibyte striong with emacs string has fewer '\' 2014-09-10T20:58:29Z resttime: *string 2014-09-10T20:59:18Z resttime: so the conversion involved might be ignoring the conversion of these octets with no character, and just leaving it as an integer 2014-09-10T21:00:06Z resttime: where flexi-streams gives me an error instead 2014-09-10T21:01:33Z Bicyclidine quit (Ping timeout: 246 seconds) 2014-09-10T21:02:02Z resttime: http://pastebin.com/JXFuqJ60 2014-09-10T21:02:21Z resttime: copy of octet data i'm testing, just a 100x100 png with random scribble 2014-09-10T21:02:41Z rme: resttime: What is the converted output supposed to look like? 2014-09-10T21:02:48Z cite-reader left #lisp 2014-09-10T21:04:22Z ehu quit (Ping timeout: 245 seconds) 2014-09-10T21:04:46Z bgs100 joined #lisp 2014-09-10T21:04:50Z bgs100 quit (Changing host) 2014-09-10T21:04:51Z bgs100 joined #lisp 2014-09-10T21:04:52Z ehu joined #lisp 2014-09-10T21:06:02Z JokesOnYou77: Bicyclidine, Thanks for the response. Ngrams are supposed to be groups of words, typically used for natural language processing. So a trigram is three words, and a bigram is two, etc. The fnction I pasted is to make only the ngrams that are in sequential order. So, (go to outer) but not (go to space). Otherwise it would just be a powerset function. I like the powerset function you wrote though. 2014-09-10T21:06:20Z jtza8 quit (Remote host closed the connection) 2014-09-10T21:07:12Z gingerale quit (Ping timeout: 255 seconds) 2014-09-10T21:07:36Z Bicyclidine joined #lisp 2014-09-10T21:07:37Z arrdem is now known as grimoire 2014-09-10T21:08:04Z Bicyclidine: that's what i get for trying to be clever. 2014-09-10T21:08:25Z grimoire is now known as GENSYM_9001 2014-09-10T21:08:43Z GENSYM_9001 is now known as arrdem 2014-09-10T21:09:06Z froggey quit (Ping timeout: 260 seconds) 2014-09-10T21:09:15Z xyjprc quit (Remote host closed the connection) 2014-09-10T21:09:34Z JokesOnYou77: Bicyclidine, hey, I'm thankful just to get people who know more about lisp to look at it. No criticism from me. :) 2014-09-10T21:10:56Z JokesOnYou77: Also, I didn't know about paste.lisp.org before so that's awesome too 2014-09-10T21:12:46Z JokesOnYou77: For my first try at it I also needed to MAPCAR #'REVERSE the output. I solved that by requiring all input to be a list of lists though 2014-09-10T21:12:53Z murftown joined #lisp 2014-09-10T21:13:24Z resttime: rme: something like this http://pastebin.com/RLj4qVtx 2014-09-10T21:13:32Z zxq9 joined #lisp 2014-09-10T21:13:49Z resttime: saved my repl to a text file with that emacs string outputted and copy and pasted that 2014-09-10T21:14:10Z Nizumzen joined #lisp 2014-09-10T21:15:55Z dim released pgloader 3.1.0! 2014-09-10T21:16:12Z vinleod quit (Quit: Computer has gone to sleep.) 2014-09-10T21:16:25Z froggey joined #lisp 2014-09-10T21:16:32Z dim: pgloader source tree is now open for refactoring and fixing, plenty of fun and perfs to work on in Common Lisp, I know you want to make a difference ;-) 2014-09-10T21:17:06Z dim: pgloader v3.1.0 has been measured up to 30 times faster than v2.x; maybe you can add x2 on-top of that for v3.2.0 with your name on it? 2014-09-10T21:17:26Z przl quit (Quit: leaving) 2014-09-10T21:19:59Z rme: resttime: I don't think understand what that is supposed to be. Is it supposed to be a string with arbitrary 8-bit characters in it? I guess you could try an :external-format of :iso-8859-1 and then be sure you escape #\" characters with a #\\ 2014-09-10T21:20:44Z resttime: rme: yeah i don't really understand it either 2014-09-10T21:22:33Z Fare quit (Ping timeout: 272 seconds) 2014-09-10T21:24:44Z ehu_ joined #lisp 2014-09-10T21:24:58Z clarkema quit (Quit: clarkema) 2014-09-10T21:26:02Z Michaelmas joined #lisp 2014-09-10T21:26:21Z ehu quit (Ping timeout: 264 seconds) 2014-09-10T21:28:49Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-10T21:30:55Z Bicyclidine: JokesOnYou77: well, i feel there should be a way to do it with less queues. you can do ngrams list = (cons list (append (ngrams (rest list)) (ngrams (butlast list)))) but that gets you duplicates 2014-09-10T21:32:51Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-10T21:35:08Z vydd joined #lisp 2014-09-10T21:35:08Z vydd quit (Changing host) 2014-09-10T21:35:08Z vydd joined #lisp 2014-09-10T21:36:06Z Michaelmas quit (Ping timeout: 272 seconds) 2014-09-10T21:36:17Z JokesOnYou77: Bicyclidine, Yeah. I know what you mean. I've never seen butlast btw. The way I thought about it when I wrote it was as a tree traversal. At each node I need to perform another recursive action. CURR and ACC1 keep track of the elements for that recursion. I had a previous version that used two separate functions, but I thought this was cleaner. 2014-09-10T21:36:57Z Zeedox_ quit (Quit: Zeedox_) 2014-09-10T21:37:59Z Bicyclidine quit (Ping timeout: 272 seconds) 2014-09-10T21:38:37Z resttime quit (Ping timeout: 245 seconds) 2014-09-10T21:38:45Z DGASAU quit (Remote host closed the connection) 2014-09-10T21:39:40Z DGASAU joined #lisp 2014-09-10T21:40:41Z resttime joined #lisp 2014-09-10T21:41:36Z resttime: well apparently something gets lost between emacs and sbcl 2014-09-10T21:42:37Z vlnx quit (Read error: Connection reset by peer) 2014-09-10T21:42:38Z resttime: http://paste.lisp.org/display/143675 2014-09-10T21:43:31Z resttime: then first invocation works, the second displays nothing 2014-09-10T21:44:06Z resttime: http://i.imgur.com/q5yQegA.png 2014-09-10T21:44:26Z vydd quit (Remote host closed the connection) 2014-09-10T21:44:56Z puchacz quit (Quit: Konversation terminated!) 2014-09-10T21:45:02Z resttime: i guess i'll have to go into emacs lisp for this 2014-09-10T21:45:03Z vlnx joined #lisp 2014-09-10T21:46:01Z drmeister_ quit (Read error: Connection reset by peer) 2014-09-10T21:46:17Z resttime: probably some sort of encoding issues between strings i guess 2014-09-10T21:46:25Z drmeister joined #lisp 2014-09-10T21:46:26Z resttime: between the two processes 2014-09-10T21:50:48Z LiamH quit (Quit: Leaving.) 2014-09-10T21:51:32Z jkaye quit (Remote host closed the connection) 2014-09-10T21:51:48Z Michaelmas joined #lisp 2014-09-10T21:52:04Z jkaye joined #lisp 2014-09-10T21:52:45Z kuzy000_ quit (Ping timeout: 264 seconds) 2014-09-10T21:56:33Z jkaye quit (Ping timeout: 260 seconds) 2014-09-10T21:58:32Z Michaelmas quit (Ping timeout: 276 seconds) 2014-09-10T21:58:55Z Nizumzen quit (Ping timeout: 268 seconds) 2014-09-10T22:00:06Z attila_lendvai quit (Quit: Leaving.) 2014-09-10T22:03:35Z josemanuel quit (Quit: Saliendo) 2014-09-10T22:03:58Z drmeister quit (Remote host closed the connection) 2014-09-10T22:04:50Z jasom: resttime: use (unsigned-byte 8) for octets, or a bivalent streams library if you need character decoding as well. 2014-09-10T22:05:15Z Ralt_ quit (Ping timeout: 246 seconds) 2014-09-10T22:05:20Z mrSpec quit (Quit: mrSpec) 2014-09-10T22:06:05Z jasom: resttime: ah, I see you did a base64; without knowing what format emacs wants, that's the best solution. 2014-09-10T22:06:20Z jasom: resttime: arguably even knowing it, it's probably still a good solution. 2014-09-10T22:06:32Z wasamasa: hmm, looking at mpc now 2014-09-10T22:06:50Z wasamasa: that makes monadic parser combinators look a bit less weird 2014-09-10T22:06:52Z akkad: what does the circle/square/and triangle keys do in symbolics lisp? 2014-09-10T22:07:28Z ggole quit 2014-09-10T22:08:45Z Joreji quit (Ping timeout: 246 seconds) 2014-09-10T22:09:31Z Bicyclidine joined #lisp 2014-09-10T22:09:34Z drmeister joined #lisp 2014-09-10T22:10:24Z Michaelmas joined #lisp 2014-09-10T22:10:31Z Michaelmas quit (Changing host) 2014-09-10T22:10:31Z Michaelmas joined #lisp 2014-09-10T22:10:38Z resttime quit (Ping timeout: 268 seconds) 2014-09-10T22:10:43Z Fare joined #lisp 2014-09-10T22:12:57Z yrk quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-10T22:13:51Z stacksmi` joined #lisp 2014-09-10T22:15:45Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-10T22:16:22Z Fare quit (Ping timeout: 240 seconds) 2014-09-10T22:16:40Z hiroakip joined #lisp 2014-09-10T22:19:06Z logand``` joined #lisp 2014-09-10T22:19:20Z Michaelmas quit (Ping timeout: 276 seconds) 2014-09-10T22:19:40Z Ralt_ joined #lisp 2014-09-10T22:20:08Z Ralt_ is now known as Ralt` 2014-09-10T22:21:31Z k-stz quit (Remote host closed the connection) 2014-09-10T22:22:07Z nate_c quit (Remote host closed the connection) 2014-09-10T22:22:22Z Ralt` is now known as Ralt 2014-09-10T22:22:24Z vinleod joined #lisp 2014-09-10T22:22:48Z logand`` quit (Ping timeout: 255 seconds) 2014-09-10T22:23:52Z phadthai: akkad: http://computer-programming-forum.com/50-lisp/f1c8190604ba1b5b.htm 2014-09-10T22:23:53Z innertracks quit (Ping timeout: 276 seconds) 2014-09-10T22:25:11Z slyrus quit (Ping timeout: 276 seconds) 2014-09-10T22:25:13Z murftown quit (Quit: murftown) 2014-09-10T22:26:46Z dnm joined #lisp 2014-09-10T22:27:46Z murftown joined #lisp 2014-09-10T22:28:29Z resttime joined #lisp 2014-09-10T22:29:21Z resttime: jasom, yeah that's probably what i'll do 2014-09-10T22:29:57Z resttime: on a side note, apparently my internet is sensitive to the weather :/ 2014-09-10T22:29:58Z Sgeo joined #lisp 2014-09-10T22:32:36Z sword joined #lisp 2014-09-10T22:32:42Z ejbs joined #lisp 2014-09-10T22:32:42Z murftown quit (Quit: murftown) 2014-09-10T22:33:54Z Michaelmas joined #lisp 2014-09-10T22:34:16Z jlarocco joined #lisp 2014-09-10T22:34:59Z drmeister quit (Read error: Connection reset by peer) 2014-09-10T22:35:38Z stacksmi` quit (Ping timeout: 272 seconds) 2014-09-10T22:36:10Z stacksmith joined #lisp 2014-09-10T22:36:33Z ehu_ quit (Ping timeout: 264 seconds) 2014-09-10T22:36:42Z nell joined #lisp 2014-09-10T22:40:21Z slyrus joined #lisp 2014-09-10T22:41:32Z Michaelmas quit (Ping timeout: 245 seconds) 2014-09-10T22:42:51Z murftown joined #lisp 2014-09-10T22:43:37Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-10T22:45:01Z drmeister joined #lisp 2014-09-10T22:46:40Z jayne quit (Read error: Connection reset by peer) 2014-09-10T22:46:58Z jayne joined #lisp 2014-09-10T22:47:20Z nate_c joined #lisp 2014-09-10T22:48:50Z Blaguvest quit 2014-09-10T22:49:06Z theethicalegoist quit (Quit: Leaving) 2014-09-10T22:49:49Z vinleod quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-10T22:56:21Z Michaelmas joined #lisp 2014-09-10T22:58:07Z malice quit (Ping timeout: 245 seconds) 2014-09-10T22:59:20Z malice joined #lisp 2014-09-10T23:00:47Z vaporatorius quit (Remote host closed the connection) 2014-09-10T23:02:02Z Nizumzen joined #lisp 2014-09-10T23:03:52Z dkcl` joined #lisp 2014-09-10T23:05:24Z Bicyclidine quit (Ping timeout: 272 seconds) 2014-09-10T23:06:30Z dkcl quit (Ping timeout: 246 seconds) 2014-09-10T23:06:54Z Michaelmas quit (Ping timeout: 255 seconds) 2014-09-10T23:07:28Z jlarocco quit (Remote host closed the connection) 2014-09-10T23:10:27Z gumbo quit (Ping timeout: 268 seconds) 2014-09-10T23:10:28Z Bicyclidine joined #lisp 2014-09-10T23:12:48Z dkcl` quit (Ping timeout: 246 seconds) 2014-09-10T23:14:44Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-10T23:15:26Z dmiles_afk joined #lisp 2014-09-10T23:21:05Z pjb: The problem with errors, is that they're as bloating as tests. Often, if you enter into the details, your condition ontology will develop a class hierarchy as consequent if not more than your model class hierarchy. Similar to how tests can be 100% or more of the code size. 2014-09-10T23:22:04Z pjb: You start with a one-liner program, and when you've added all that need to be added such as error handling, documentation, help strings, tests, edge cases, etc., you end up with 1000% the size. 2014-09-10T23:24:23Z Fare joined #lisp 2014-09-10T23:24:56Z |3b|: pjb: you mean the problem with programming is that there are lots of important parts that are easy to say aren't /really/ programming so aren't important 2014-09-10T23:24:59Z Michaelmas joined #lisp 2014-09-10T23:25:49Z |3b|: you have a 10 line program, but can ignore 90% of it and have 1 line of 'code' that does something, which may or may not be what it is supposed to do, or always work, or be what people expect it to do 2014-09-10T23:26:30Z faheem_: random link - http://sogrady-media.redmonk.com/sogrady/files/2014/01/lang-rank-114-wm.png 2014-09-10T23:26:39Z faheem_: common lisp is an outlier. 2014-09-10T23:27:24Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-10T23:28:11Z pjb: Well, for example, in CL we have restarts. But you have to establish the restarts arround the code that will signal the condition. And when the restart is invoked, you still need to explicitely loop over, or do something else to handle the error. There's nothing automatic really. 2014-09-10T23:28:44Z pjb: What we'd expect, is an AI handler-bound, that would scan the source of the program when an error occurs, and correct the situation automatically. 2014-09-10T23:28:48Z defaultxr joined #lisp 2014-09-10T23:29:52Z slyrus quit (Ping timeout: 252 seconds) 2014-09-10T23:30:06Z stepnem quit (Ping timeout: 272 seconds) 2014-09-10T23:32:18Z fortitude quit (Quit: leaving) 2014-09-10T23:32:23Z zacharias quit (Ping timeout: 272 seconds) 2014-09-10T23:34:24Z jlarocco joined #lisp 2014-09-10T23:35:33Z slyrus joined #lisp 2014-09-10T23:41:00Z jasom: clx could be greatly improved by making display a kwarg that defaults to a special variable *display* 2014-09-10T23:41:26Z c74d is now known as Guest10529 2014-09-10T23:42:19Z jasom: pjb: what we'd expect is an AI that lets you describe what you want in natural language and have it generate a correct program. 2014-09-10T23:42:31Z Guest10529 quit (Ping timeout: 268 seconds) 2014-09-10T23:43:22Z c74d joined #lisp 2014-09-10T23:45:06Z zacharias joined #lisp 2014-09-10T23:45:17Z ejbs quit (Ping timeout: 272 seconds) 2014-09-10T23:45:41Z rme quit (Quit: rme) 2014-09-10T23:50:36Z antonv quit (Ping timeout: 246 seconds) 2014-09-10T23:52:37Z cy quit (Quit: :q!) 2014-09-10T23:52:46Z jkaye joined #lisp 2014-09-10T23:54:21Z cy joined #lisp 2014-09-10T23:54:27Z Michaelmas quit (Ping timeout: 245 seconds) 2014-09-10T23:54:48Z EvW quit (Ping timeout: 272 seconds) 2014-09-10T23:55:09Z froggey quit (Ping timeout: 246 seconds) 2014-09-10T23:55:11Z EvW joined #lisp 2014-09-10T23:55:24Z xyjprc joined #lisp 2014-09-10T23:55:32Z Fare quit (Ping timeout: 276 seconds) 2014-09-10T23:56:17Z froggey joined #lisp 2014-09-10T23:57:12Z varjag_ quit (Quit: Connection closed for inactivity) 2014-09-10T23:57:19Z jkaye quit (Ping timeout: 268 seconds) 2014-09-10T23:57:22Z snits quit (Quit: leaving) 2014-09-10T23:57:46Z snits joined #lisp 2014-09-10T23:59:55Z zxq9 quit (Quit: Konversation terminated!) 2014-09-11T00:00:45Z ivan4th`` quit (Ping timeout: 246 seconds) 2014-09-11T00:00:56Z gingerale joined #lisp 2014-09-11T00:01:08Z Bicyclidine quit (Quit: Reconnecting) 2014-09-11T00:01:24Z Bicyclidine joined #lisp 2014-09-11T00:02:18Z JokesOnYou77 quit (Quit: Leaving) 2014-09-11T00:04:35Z diginet quit (Quit: diginet has quit!) 2014-09-11T00:06:34Z diginet joined #lisp 2014-09-11T00:07:24Z Px12 quit (Ping timeout: 246 seconds) 2014-09-11T00:09:48Z Michaelmas joined #lisp 2014-09-11T00:17:52Z Bicyclidine quit (Ping timeout: 240 seconds) 2014-09-11T00:18:23Z zRecursive joined #lisp 2014-09-11T00:19:07Z EvW quit (Quit: EvW) 2014-09-11T00:21:03Z BitPuffin quit (Ping timeout: 246 seconds) 2014-09-11T00:22:36Z malice quit (Quit: Leaving) 2014-09-11T00:25:54Z rme joined #lisp 2014-09-11T00:28:57Z zz_karupa is now known as karupa 2014-09-11T00:32:03Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-11T00:32:18Z snits quit (Quit: leaving) 2014-09-11T00:32:28Z nell joined #lisp 2014-09-11T00:34:03Z gingerale quit (Read error: Connection reset by peer) 2014-09-11T00:36:18Z nell quit (Client Quit) 2014-09-11T00:38:04Z harish quit (Ping timeout: 252 seconds) 2014-09-11T00:38:35Z Bicyclidine joined #lisp 2014-09-11T00:38:48Z DGASAU quit (Remote host closed the connection) 2014-09-11T00:39:51Z DGASAU joined #lisp 2014-09-11T00:42:55Z murftown quit (Quit: murftown) 2014-09-11T00:44:30Z murftown joined #lisp 2014-09-11T00:44:47Z Bicyclidine quit (Ping timeout: 245 seconds) 2014-09-11T00:46:37Z murftown: I'm sorry for my non-humorous comments earlier that were not appreciated. I really did mean it as a harmless playful joke. I have a lot of respect for everyone in this room and want to learn as much as I can about lisp and homoiconic programming. 2014-09-11T00:47:53Z pjb: murftown: browse http://cliki.net/ 2014-09-11T00:49:40Z murftown: pjb: will do. any particular part you'd like to point me to? 2014-09-11T00:49:56Z jusss joined #lisp 2014-09-11T00:50:23Z pjb: all parts are useful. 2014-09-11T00:50:30Z pjb: there are references to everything CL related. 2014-09-11T00:51:22Z murftown: pjb: thanks 2014-09-11T00:54:17Z murftown quit (Quit: murftown) 2014-09-11T00:57:29Z slyrus quit (Ping timeout: 272 seconds) 2014-09-11T01:01:26Z theos joined #lisp 2014-09-11T01:03:21Z Vutral joined #lisp 2014-09-11T01:05:34Z jlongster quit (Ping timeout: 252 seconds) 2014-09-11T01:07:53Z Vutral quit (Ping timeout: 260 seconds) 2014-09-11T01:11:14Z jonh left #lisp 2014-09-11T01:12:54Z nate_c quit (Ping timeout: 252 seconds) 2014-09-11T01:15:24Z DoctorDude joined #lisp 2014-09-11T01:16:15Z normanrichards quit 2014-09-11T01:21:05Z optikalmouser joined #lisp 2014-09-11T01:21:53Z echo-area joined #lisp 2014-09-11T01:31:28Z jlongster joined #lisp 2014-09-11T01:36:33Z jlongster quit (Ping timeout: 264 seconds) 2014-09-11T01:36:49Z theos quit (Disconnected by services) 2014-09-11T01:37:05Z Shaftoe___ joined #lisp 2014-09-11T01:37:16Z theos joined #lisp 2014-09-11T01:38:40Z DrCode quit (Remote host closed the connection) 2014-09-11T01:39:24Z DrCode joined #lisp 2014-09-11T01:40:40Z oleo__ joined #lisp 2014-09-11T01:41:18Z oleo is now known as Guest82040 2014-09-11T01:41:33Z Guest82040 quit (Ping timeout: 246 seconds) 2014-09-11T01:48:41Z hugod quit (Remote host closed the connection) 2014-09-11T01:49:20Z hugod joined #lisp 2014-09-11T01:50:57Z vinleod joined #lisp 2014-09-11T01:52:31Z juiko joined #lisp 2014-09-11T01:53:33Z jkaye joined #lisp 2014-09-11T01:54:06Z murftown joined #lisp 2014-09-11T01:57:00Z harish joined #lisp 2014-09-11T01:57:47Z jkaye quit (Ping timeout: 245 seconds) 2014-09-11T02:08:06Z Jesin joined #lisp 2014-09-11T02:12:31Z DoctorDude left #lisp 2014-09-11T02:16:14Z gadmyth joined #lisp 2014-09-11T02:17:42Z theos quit (Ping timeout: 245 seconds) 2014-09-11T02:17:47Z Michaelmas quit (Ping timeout: 245 seconds) 2014-09-11T02:24:25Z dnm quit 2014-09-11T02:26:16Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-11T02:30:28Z Michaelmas joined #lisp 2014-09-11T02:31:39Z nell joined #lisp 2014-09-11T02:32:39Z jlongster joined #lisp 2014-09-11T02:33:19Z zeitue joined #lisp 2014-09-11T02:33:59Z Fare joined #lisp 2014-09-11T02:34:57Z jlongster quit (Remote host closed the connection) 2014-09-11T02:35:16Z jlongster joined #lisp 2014-09-11T02:44:11Z JuanDaugherty quit (Quit: Exit IRC/Hibernate) 2014-09-11T02:44:23Z murftown quit (Quit: murftown) 2014-09-11T02:45:45Z Vutral joined #lisp 2014-09-11T02:47:49Z murftown joined #lisp 2014-09-11T02:50:33Z Vutral quit (Ping timeout: 260 seconds) 2014-09-11T02:51:25Z bgs100 quit (Quit: bgs100) 2014-09-11T02:51:55Z atgreen joined #lisp 2014-09-11T02:54:17Z Michaelmas quit (Ping timeout: 260 seconds) 2014-09-11T02:57:39Z murftown quit (Quit: murftown) 2014-09-11T03:00:15Z normanrichards joined #lisp 2014-09-11T03:02:09Z theos joined #lisp 2014-09-11T03:03:04Z dto joined #lisp 2014-09-11T03:05:42Z vanila quit (Quit: Leaving) 2014-09-11T03:09:40Z Michaelmas joined #lisp 2014-09-11T03:11:24Z pyx joined #lisp 2014-09-11T03:13:18Z juiko` joined #lisp 2014-09-11T03:14:52Z juiko quit (Ping timeout: 240 seconds) 2014-09-11T03:15:24Z zacharias_ joined #lisp 2014-09-11T03:16:32Z Michaelmas quit (Ping timeout: 245 seconds) 2014-09-11T03:18:09Z zacharias quit (Ping timeout: 246 seconds) 2014-09-11T03:19:23Z Bike quit (Quit: restart) 2014-09-11T03:20:31Z Bike joined #lisp 2014-09-11T03:20:55Z beach joined #lisp 2014-09-11T03:21:15Z eazar001 quit (Read error: Connection reset by peer) 2014-09-11T03:22:18Z beach: Good morning everyone! 2014-09-11T03:22:18Z minion: beach, memo from Bike: i think the definitions of or/and types and functions are incompatible or underdefined. your originall cons ftype may actually have been right, but it's a hairy enough case that i wouldn't use it and expect uniform results across implementations. (well, i wouldn't if i thought any of them took ftypes that seriously, anyway.) 2014-09-11T03:22:18Z minion: beach, memo from Bike: http://paste.lisp.org/+32UW 2014-09-11T03:22:48Z Bike: sup. 2014-09-11T03:22:48Z beach: Bike: Thanks. I studied it already. 2014-09-11T03:23:00Z beach: I see your point. 2014-09-11T03:23:50Z beach: While using AND in function types is well defined and useful, that doesn't seem to be the case with OR. 2014-09-11T03:25:22Z beach: Thanks for going to all this trouble explaining it to me. 2014-09-11T03:26:55Z Bike: no problem i guess 2014-09-11T03:28:22Z jlongster quit (Ping timeout: 240 seconds) 2014-09-11T03:30:16Z kristof joined #lisp 2014-09-11T03:30:33Z kristof quit (Changing host) 2014-09-11T03:30:33Z kristof joined #lisp 2014-09-11T03:31:12Z slyrus joined #lisp 2014-09-11T03:31:19Z boogie joined #lisp 2014-09-11T03:32:08Z drmeister: Hello beach 2014-09-11T03:32:46Z beach: drmeister: How is it project going? 2014-09-11T03:33:22Z drmeister: I'm working in bringing my Chemistry code as an extension to Clasp - the whole purpose of this grand adventure. 2014-09-11T03:34:02Z drmeister: It has been a long time since I looked at it. I'm experiencing a bit of shock. 2014-09-11T03:34:06Z brucem: hey beach, drmeister 2014-09-11T03:34:17Z drmeister: brucem: Greetings. 2014-09-11T03:34:31Z beach: drmeister: Why shock? Is the code a bit old? 2014-09-11T03:34:54Z sertularioid joined #lisp 2014-09-11T03:35:01Z drmeister: Yes. I used a lot of STL containers. I can't use them anymore because they will not work with the Memory Pool System GC. 2014-09-11T03:35:12Z Bike: i'm just glad you're finally getting past one of the largest distractions i've ever heard of 2014-09-11T03:35:49Z beach: :) 2014-09-11T03:36:58Z drmeister: Well, Clasp is far from perfect but it runs now. I need to get some macromolecular design going. We had Harry Gray give a talk today - he's a famous inorganic chemist. He spoke about the need for robust enzyme-mimics that can split water and synthesize chemical fuels and feedstocks from CO2. 2014-09-11T03:37:33Z Bike: enzyme-mimics being the entire point of this part of your research, yes? 2014-09-11T03:37:53Z drmeister: Yes. 2014-09-11T03:38:09Z Bike: hey, "bioinorganic chemistry", there's a cool term. 2014-09-11T03:38:18Z drmeister: That is a thing. 2014-09-11T03:38:47Z Bike: every time i've tried to explain organic chemistry people have thought it's biochemistry, so that's a cute counterpoint or something. 2014-09-11T03:40:21Z jlongster joined #lisp 2014-09-11T03:41:11Z drmeister: beach: How is your stuff going? How do you feel about it being used to do energy/nanotechnology research? 2014-09-11T03:41:32Z nipra joined #lisp 2014-09-11T03:42:40Z beach: drmeister: Should I have an opinion about that? 2014-09-11T03:43:19Z billstclair quit (Read error: Connection reset by peer) 2014-09-11T03:43:28Z drmeister: No, not really. I'm not a very linear thinker. 2014-09-11T03:43:31Z cy: am i the only person in the world who really doesn't like systems like asdf? 2014-09-11T03:43:51Z cy: because it seems like it at times 2014-09-11T03:43:54Z beach: drmeister: Since I made it public domain, I guess I have no right to opinions about how it is used. 2014-09-11T03:43:57Z Bike: "systems like asdf" could mean a few things. 2014-09-11T03:44:15Z Bike: hey now, you can have opinions. you just can't enforce them through the legal system. 2014-09-11T03:44:22Z clog quit (Ping timeout: 240 seconds) 2014-09-11T03:44:52Z Fade quit (Remote host closed the connection) 2014-09-11T03:45:00Z Fade joined #lisp 2014-09-11T03:45:04Z dto-00 joined #lisp 2014-09-11T03:45:29Z beach: Bike: Sure, but then it is probably pointless to voice such opinions. In the case of energy/nanotechnology research, I don't have any. At least not at the moment. 2014-09-11T03:45:34Z korqio- joined #lisp 2014-09-11T03:46:06Z Bike: you could convince drmeister to quit, thus saving the planet from grey goo in fifty years! think positive 2014-09-11T03:46:10Z beach: drmeister: I am confused. You created Clasp to interact with C++. But now I learn that it is not working with STL. I know very little C++, but doesn't that limit the usefulness of Clasp a bit? 2014-09-11T03:46:24Z beach: Bike: I'll consider that. :) 2014-09-11T03:46:29Z slyrus: drmeister: wouldn't it just be easier to rewrite your c++ code in lisp, rather than write your own lisp impl? 2014-09-11T03:46:29Z Bike: I'm curious why STL doesn't work with MPS 2014-09-11T03:46:34Z careless-lisper joined #lisp 2014-09-11T03:46:40Z kristof: slyrus: C++ libraries 2014-09-11T03:46:46Z drmeister: Bike: I'm much more worried about pink goo (humans) destroying their environment. 2014-09-11T03:47:01Z pyx quit (Ping timeout: 260 seconds) 2014-09-11T03:47:07Z beach: kristof: Except the ones using STL. 2014-09-11T03:47:12Z Bike: i mean, if nothing else, doesn't MPS let you keep malloc/free areas around 2014-09-11T03:47:23Z dto quit (Remote host closed the connection) 2014-09-11T03:47:36Z pyx joined #lisp 2014-09-11T03:47:48Z drmeister: Harry Gray said something interesting/prophetic/obvious. In 50 years we are going to have to build everything out of CO2, sea-water and nitrogen gas. 2014-09-11T03:48:29Z Vutral joined #lisp 2014-09-11T03:48:30Z cy: Bike: i like how Go's package system works. i hate how asdf works. 2014-09-11T03:48:32Z Vutral quit (Excess Flood) 2014-09-11T03:48:53Z beach: ASDF is not a package system. 2014-09-11T03:48:57Z Bike: who needs phosphorus anyway, i always say. 2014-09-11T03:49:05Z cy: beach: what is it, then? 2014-09-11T03:49:10Z Bike: "Go's package system" probably means something more like lisp systems than lisp packages 2014-09-11T03:49:15Z drmeister: beach: I can't put pointers that the compacting garbage collector needs to fix in STL containers. As long as the pointers aren't in STL containers or the STL containers are used for non-GC objects - everything is fine. 2014-09-11T03:49:30Z cy: Bike: i mean package in the sense of every language besides lisp 2014-09-11T03:49:36Z dto-00 is now known as dto 2014-09-11T03:49:44Z kristof: cy: Lisp has been around longer than pretty much every other language that has used the term. 2014-09-11T03:49:47Z Bike: so, what i said. 2014-09-11T03:49:58Z beach: cy: I don't know what to call it. A "build tool"? A "make-like tool"? 2014-09-11T03:50:03Z drmeister: Exposed C++ libraries can't and won't use the garbage collector. My chemistry code does. 2014-09-11T03:50:03Z cy: kristof: that doesn't make it any more right 2014-09-11T03:50:06Z Bike: drmeister: oh, i see. 2014-09-11T03:50:33Z Bike: you can have GC'd and malloc/free areas but not pointing into one another. rough. 2014-09-11T03:50:45Z beach: drmeister: I see. 2014-09-11T03:50:46Z xyjprc quit (Remote host closed the connection) 2014-09-11T03:51:06Z Bike: Does STL actually use malloc itself? Maybe you could use STL in an MPS arena with a manual pool. 2014-09-11T03:51:40Z Guest29240 quit (Ping timeout: 272 seconds) 2014-09-11T03:51:44Z drmeister: I wrote replacement GC-aware containers that replace std::vector and std::array but I don't have them for std::map or std::set. The latter two are where all the work is. I have to switch to hash-tables. 2014-09-11T03:51:47Z careless-lisper is now known as carless-lisper 2014-09-11T03:51:58Z cy: beach: then why do so many projects rely on asdf to load the actual library? a "make-like too" readies the code for external use, it doesn't load it 2014-09-11T03:52:19Z drmeister: Bike: I can't guarantee that the STL code will work with the MPS garbage collector. You have to do things carefully when you use MPS. 2014-09-11T03:52:25Z |3b|: cy: thats where the -like part comes in 2014-09-11T03:52:49Z Bike: drmeister: You don't need to write fix methods for things allocated only in manual pools, right? 2014-09-11T03:52:50Z smithzv joined #lisp 2014-09-11T03:52:56Z cy: |3b|: okay how many make-like tools require you to use it to effectively use a project that uses it? 2014-09-11T03:52:59Z smithzv is now known as Guest39815 2014-09-11T03:53:08Z |3b|: all of them? 2014-09-11T03:53:14Z cy: |3b|: make doesn't. 2014-09-11T03:53:22Z |3b|: can't use a library without building it 2014-09-11T03:53:34Z drmeister: Bike: If the manual pools contain pointers into the MPS space I do have to write fix methods. Or rather, my static analyzer writes fix methods for them. 2014-09-11T03:53:38Z beach: slyrus: I wonder whether it would be an effort of similar magnitude to write a tool for translating his C++ code to CL. 2014-09-11T03:53:42Z cy: yes but you don't have to write a makescript to use a project that ships with a makescript 2014-09-11T03:53:52Z Bike: drmeister: How confusing... 2014-09-11T03:54:08Z jkaye joined #lisp 2014-09-11T03:54:19Z slyrus: beach: not clear that he has the code for the C++ libs 2014-09-11T03:54:26Z |3b|: right, you don't /have/ to write a .asd to use something that uses asdf, you can call asdf by hand to build/load it 2014-09-11T03:54:27Z drmeister: Bike: It took me a year to figure it out. 2014-09-11T03:54:47Z sertularioid quit (Ping timeout: 245 seconds) 2014-09-11T03:54:49Z drmeister: I had people in ##C++ laugh at me and tell me it was impossible. 2014-09-11T03:54:55Z beach: slyrus: True. 2014-09-11T03:55:17Z beach: drmeister: I wouldn't be too worried about people in ##C++ laughing at you. 2014-09-11T03:55:29Z drmeister: They hurt my feelings. 2014-09-11T03:55:35Z beach: Aww! 2014-09-11T03:55:35Z |3b|: CL tends to mix 'build' and 'use' a bit more than most languages, so you don't usually get the same workflow 2014-09-11T03:56:03Z |3b|: if you wanted though, you could build an image with your asdf libraries preloaded, then use that with no further ASDF use 2014-09-11T03:56:33Z pyx quit (Quit: WeeChat 0.4.3) 2014-09-11T03:56:37Z |3b|: or you might be able to build 1 big .fasl file from asdf and load that without asdf (i seem to remember that being a feature of asdf now, though may be confusing it with something else) 2014-09-11T03:57:00Z drmeister: Ugh, I use sooooo many std::map containers. 2014-09-11T03:58:22Z jkaye quit (Ping timeout: 240 seconds) 2014-09-11T03:59:04Z drmeister: The big problem is I iterate over std::map with C++ iterators and hash-tables don't use iterators they use MAPHASH. I either write a GC-aware red/black tree or I simulate some kind of C++ iterator for my hash tables or I grit my teeth and rewrite every iterator loop as a MAPHASH. 2014-09-11T03:59:36Z |3b|: or feel free to use mk-defsystem or require if you think all of the ASDF maintainers' work was pointless and you'd rather pretend it doesn't exist 2014-09-11T03:59:38Z drmeister: One saving feature of C++11 is it has lambda functions (only 50 years after they were invented in Lisp) making MAPHASH slightly less painful. 2014-09-11T04:00:28Z |3b|: or feel free to make something better if you can handle all the random use cases asdf handles with a nicer API/workflow :) 2014-09-11T04:01:54Z drmeister: At what point is it useful to use hash-tables? How many elements? If I have a dozen keyed entries is it faster to just put them in a vector and search it linearly? 2014-09-11T04:02:59Z beach: drmeister: Probably. 2014-09-11T04:03:31Z beach: drmeister: Furthermore, if they are ordered, you can do a binary search. 2014-09-11T04:03:59Z beach: drmeister: Then we are talking thousands of elements until a hash table is advantageous. 2014-09-11T04:04:48Z drmeister: I can't order them. They are keyed on Symbols which will move around in memory. I'd have to use location dependency and rebuild when they get stale. 2014-09-11T04:04:57Z drmeister: I could order them. 2014-09-11T04:05:34Z drmeister: I would have do more work to maintain their order given they are managed by a compacting GC. 2014-09-11T04:06:52Z drmeister: I think I'll implement a gc-aware map and use a list of key/value pairs for now and implement a location dependency aware red/black tree or something like that later. 2014-09-11T04:06:59Z beach: drmeister: You can probably do a little performance test with random inputs to see how many elements you need in order for a hash table to be advantageous for the unordered case. 2014-09-11T04:08:38Z beach: drmeister: Here is another trick: In the case of a list or a vector, if you have a non-uniform distribution of access, you can reorder the elements so that it is more likely that you get a hit early. 2014-09-11T04:09:30Z beach: That can be done automatically by always moving the most recently accessed element to the beginning. 2014-09-11T04:10:34Z drmeister: I think I'll call it a gctools::SmallMap and store it as a linear array of key/value pairs. 2014-09-11T04:10:55Z drmeister: beach: That's an interesting idea. I'll use that. 2014-09-11T04:10:55Z Zhivago: drmeister: I recall some benchmarks putting the cutoff point up at about 60ish for modern x86 hardware. 2014-09-11T04:10:58Z dorsocentral joined #lisp 2014-09-11T04:11:25Z drmeister: For most of the time when I use a std::map I never have 60 entries. 2014-09-11T04:11:26Z Zhivago: That's assuming a compact vector with no branch prediction failure opportunities. 2014-09-11T04:11:44Z Zhivago: Yeah, I'd expect so. 2014-09-11T04:12:19Z theos quit (Disconnected by services) 2014-09-11T04:12:46Z theos joined #lisp 2014-09-11T04:12:54Z rvchangue quit (Ping timeout: 255 seconds) 2014-09-11T04:16:01Z Karl_Dscc joined #lisp 2014-09-11T04:16:37Z rme quit (Quit: rme) 2014-09-11T04:18:08Z optikalmouser quit (Ping timeout: 276 seconds) 2014-09-11T04:18:36Z optikalmouser joined #lisp 2014-09-11T04:28:19Z carless-lisper left #lisp 2014-09-11T04:30:46Z Karl_Dscc quit (Remote host closed the connection) 2014-09-11T04:31:26Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-11T04:34:37Z yacks quit (Ping timeout: 260 seconds) 2014-09-11T04:38:17Z theos quit (Ping timeout: 276 seconds) 2014-09-11T04:40:10Z blakbunnie27 quit (Ping timeout: 264 seconds) 2014-09-11T04:40:14Z eazar001 joined #lisp 2014-09-11T04:41:18Z cy quit (Quit: :q!) 2014-09-11T04:42:35Z theos joined #lisp 2014-09-11T04:46:35Z nell joined #lisp 2014-09-11T04:51:50Z Vutral joined #lisp 2014-09-11T04:53:51Z drmeister: When doing template programming the language C++ is marginally more readable than the language Brainf*ck. https://gist.github.com/drmeister/6bd8c3629ca21f5d5e26 2014-09-11T04:54:28Z drmeister: C++ template program is to Common Lisp macros what IRS tax forms are to poetry. 2014-09-11T04:54:45Z drmeister: s/program/programming/ 2014-09-11T04:55:10Z kristof quit (Ping timeout: 268 seconds) 2014-09-11T04:56:33Z Vutral quit (Ping timeout: 260 seconds) 2014-09-11T04:56:41Z drmeister: And this example isn't even the worst. This is what I had to do to automatically generate wrappers for C++ functions. https://gist.github.com/drmeister/1d56f64077e27a4781d2 Google pump code that generates C++ template code that generates C++ code at compile time. 2014-09-11T04:56:51Z Bike: I had no idea typedefs could be public. 2014-09-11T04:57:24Z drmeister: Oh yeah. 2014-09-11T04:57:31Z mr-foobar quit (Quit: Leaving...) 2014-09-11T04:58:25Z Zhivago: Which is not to say that CL macros are particularly readable. :) 2014-09-11T04:58:42Z Zhivago: I think that scheme probably did a better job with syntax-case and friends. 2014-09-11T05:00:07Z drmeister: At least in CL you don't have to duplicate code for every arity and to generate situational code. 2014-09-11T05:00:48Z blakbunnie27 joined #lisp 2014-09-11T05:00:48Z oleo__ quit (Quit: Verlassend) 2014-09-11T05:01:12Z Zhivago: On the other hand you have all of the issues of when they run and what side-effects they produce, and weird s-exp generation by cons smashing. 2014-09-11T05:01:52Z Zhivago: And the disjunction with compiler-macros. 2014-09-11T05:09:22Z Jesin quit (Ping timeout: 240 seconds) 2014-09-11T05:10:59Z nell left #lisp 2014-09-11T05:11:22Z Jesin joined #lisp 2014-09-11T05:13:02Z Jesin quit (Max SendQ exceeded) 2014-09-11T05:13:09Z Shaftoe___ joined #lisp 2014-09-11T05:13:18Z dorsocentral quit (Ping timeout: 246 seconds) 2014-09-11T05:13:42Z Jesin joined #lisp 2014-09-11T05:14:51Z viaken: Realising this may be a bit of a religious question, is car/cadr/etc or first/second/etc preferred? 2014-09-11T05:16:19Z drmeister: car/cadr/etc lead to other combinations cddr, caar, cdar. You can't do that with first/second etc. 2014-09-11T05:16:47Z drmeister: fffirst? No. 2014-09-11T05:17:05Z phadthai: it depends on the context, you should use what represents best the intention 2014-09-11T05:18:00Z beach: viaken: A good rule would be to use first/second/rest when you are dealing with lists, and car/cdr when you are dealing with arbitrary tree structures. Having said that, I often use car/cdr even for lists. 2014-09-11T05:19:31Z viaken has learned. 2014-09-11T05:20:29Z mrSpec joined #lisp 2014-09-11T05:21:46Z |3b|: car/cdr when using a cons as a 2-element pair also 2014-09-11T05:26:23Z theos quit (Ping timeout: 276 seconds) 2014-09-11T05:29:43Z dorsocentral joined #lisp 2014-09-11T05:34:55Z jegaxd26 quit (Read error: Connection reset by peer) 2014-09-11T05:35:02Z juiko`` joined #lisp 2014-09-11T05:36:22Z juiko` quit (Ping timeout: 240 seconds) 2014-09-11T05:36:23Z boogie quit (Remote host closed the connection) 2014-09-11T05:41:11Z juiko``` joined #lisp 2014-09-11T05:41:39Z beach left #lisp 2014-09-11T05:42:17Z clog joined #lisp 2014-09-11T05:42:53Z juiko`` quit (Ping timeout: 255 seconds) 2014-09-11T05:43:03Z jlongster quit (Ping timeout: 246 seconds) 2014-09-11T05:44:33Z Ven joined #lisp 2014-09-11T05:45:49Z ehu joined #lisp 2014-09-11T05:46:57Z farhaven quit (Ping timeout: 260 seconds) 2014-09-11T05:47:27Z defaultxr quit (Quit: gnight) 2014-09-11T05:49:09Z TDog quit (Ping timeout: 264 seconds) 2014-09-11T05:50:51Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-11T05:50:57Z drmeister: I implemented a SmallMap that is GC aware and stores key/value pairs in a vector. That should ease integration of the chemistry code into Cando (Clasp+chemistry). beach: I used the idea you suggested, swapping the found entry with the first entry. 2014-09-11T05:51:24Z sdemarre joined #lisp 2014-09-11T05:52:21Z drmeister: Later I'll profile it and maybe I'll implement a Map that works more like the STL map<...> 2014-09-11T05:52:59Z |3b| wonders if swapping with the first is best heuristic, seems like the bad case of alternating between 2 wouldn't be too uncommon 2014-09-11T05:54:20Z drmeister: I don't know the answer to that. 2014-09-11T05:55:49Z drmeister: The worst case would be if I repeatedly search for the last element (and what becomes the last element). 2014-09-11T05:56:39Z runciter joined #lisp 2014-09-11T05:56:57Z jusss quit (Read error: Connection reset by peer) 2014-09-11T06:02:26Z frkout_ joined #lisp 2014-09-11T06:03:35Z Maurice_TCF joined #lisp 2014-09-11T06:03:40Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-11T06:04:45Z Fare quit (Ping timeout: 264 seconds) 2014-09-11T06:05:56Z frkout quit (Ping timeout: 272 seconds) 2014-09-11T06:07:01Z sdemarre quit (Ping timeout: 260 seconds) 2014-09-11T06:10:42Z vinleod quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-11T06:12:09Z juiko``` quit (Remote host closed the connection) 2014-09-11T06:12:18Z bdr3553 joined #lisp 2014-09-11T06:13:07Z ehu quit (Ping timeout: 245 seconds) 2014-09-11T06:14:52Z bdr3552 quit (Ping timeout: 245 seconds) 2014-09-11T06:15:10Z rvchangue joined #lisp 2014-09-11T06:16:18Z jegaxd26 joined #lisp 2014-09-11T06:18:54Z runciter quit (Ping timeout: 255 seconds) 2014-09-11T06:22:39Z frkout_ quit (Remote host closed the connection) 2014-09-11T06:23:06Z frkout joined #lisp 2014-09-11T06:25:07Z murftown joined #lisp 2014-09-11T06:25:22Z harish quit (Ping timeout: 240 seconds) 2014-09-11T06:27:08Z Maurice_TCF quit (Quit: This computer has gone to sleep) 2014-09-11T06:29:09Z mr-foobar joined #lisp 2014-09-11T06:29:29Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-11T06:32:30Z schaueho joined #lisp 2014-09-11T06:36:22Z murftown quit (Quit: murftown) 2014-09-11T06:36:31Z Px12 joined #lisp 2014-09-11T06:38:14Z jegaxd26 quit (Ping timeout: 272 seconds) 2014-09-11T06:39:29Z Px12 quit (Remote host closed the connection) 2014-09-11T06:41:53Z kanru quit (Remote host closed the connection) 2014-09-11T06:42:01Z jegaxd26 joined #lisp 2014-09-11T06:42:12Z dto quit (Remote host closed the connection) 2014-09-11T06:42:47Z BitPuffin joined #lisp 2014-09-11T06:43:10Z Px12 joined #lisp 2014-09-11T06:44:39Z kanru joined #lisp 2014-09-11T06:50:02Z Harag joined #lisp 2014-09-11T06:51:38Z momo-reina joined #lisp 2014-09-11T06:53:33Z effy joined #lisp 2014-09-11T07:00:17Z korqio- quit 2014-09-11T07:01:09Z frkout_ joined #lisp 2014-09-11T07:02:26Z ehu joined #lisp 2014-09-11T07:02:44Z zRecursive quit (Remote host closed the connection) 2014-09-11T07:04:32Z frkout quit (Ping timeout: 252 seconds) 2014-09-11T07:07:08Z munksgaard joined #lisp 2014-09-11T07:11:39Z mvilleneuve joined #lisp 2014-09-11T07:12:09Z pt1 joined #lisp 2014-09-11T07:14:50Z jusss joined #lisp 2014-09-11T07:14:50Z jusss quit (Changing host) 2014-09-11T07:14:50Z jusss joined #lisp 2014-09-11T07:20:21Z arenz joined #lisp 2014-09-11T07:22:05Z Px12 quit (Ping timeout: 276 seconds) 2014-09-11T07:23:36Z Harag quit (Ping timeout: 252 seconds) 2014-09-11T07:29:14Z dorsocentral quit (Ping timeout: 276 seconds) 2014-09-11T07:30:31Z angavrilov joined #lisp 2014-09-11T07:33:03Z bdr3552 joined #lisp 2014-09-11T07:34:57Z bdr3553 quit (Ping timeout: 255 seconds) 2014-09-11T07:35:47Z jtza8 joined #lisp 2014-09-11T07:39:05Z otwieracz quit (Quit: Lost terminal) 2014-09-11T07:39:57Z otwieracz joined #lisp 2014-09-11T07:40:12Z jegaxd26 quit (Remote host closed the connection) 2014-09-11T07:41:22Z jegaxd26 joined #lisp 2014-09-11T07:42:56Z zacharias_ is now known as zacharias 2014-09-11T07:45:22Z bdr3552 quit (Ping timeout: 268 seconds) 2014-09-11T07:47:30Z otwieracz: Hi guys. 2014-09-11T07:48:41Z otwieracz: How about Lisp and MIPS? 2014-09-11T07:48:46Z otwieracz: ECL works on MIPS? 2014-09-11T07:48:50Z otwieracz: (ECLS i mean) 2014-09-11T07:49:19Z varjag joined #lisp 2014-09-11T07:50:15Z dkcl joined #lisp 2014-09-11T07:52:57Z optikalmouser quit (Ping timeout: 260 seconds) 2014-09-11T07:54:59Z hitecnologys joined #lisp 2014-09-11T07:59:45Z przl joined #lisp 2014-09-11T08:00:50Z stepnem joined #lisp 2014-09-11T08:01:57Z Px12 joined #lisp 2014-09-11T08:02:00Z dkcl quit (Ping timeout: 246 seconds) 2014-09-11T08:02:39Z pt1 quit (Remote host closed the connection) 2014-09-11T08:02:49Z pt1 joined #lisp 2014-09-11T08:03:54Z momo-reina quit (Remote host closed the connection) 2014-09-11T08:04:32Z xificurC joined #lisp 2014-09-11T08:06:07Z gabriel-artigue joined #lisp 2014-09-11T08:07:26Z theos joined #lisp 2014-09-11T08:08:05Z yacks joined #lisp 2014-09-11T08:08:49Z gabriel-artigue quit (Client Quit) 2014-09-11T08:10:39Z dkcl joined #lisp 2014-09-11T08:11:04Z |3b|: otwieracz: sbcl supports mips, ecl and clisp might also work 2014-09-11T08:11:35Z otwieracz: Hmm. 2014-09-11T08:11:39Z gabriel-artigue joined #lisp 2014-09-11T08:11:40Z otwieracz: But SBCL supports old lisp. 2014-09-11T08:11:43Z otwieracz: blah 2014-09-11T08:11:54Z otwieracz: But SBCL on MIPS is not recent, I mean. 2014-09-11T08:12:24Z |3b|: that's just the latest binary anyone uploaded, newest should work as well if you compile it yourself 2014-09-11T08:12:35Z stassats joined #lisp 2014-09-11T08:12:40Z |3b|: (though it probably hasn't been tested in a while) 2014-09-11T08:12:59Z stassats: if it hadn't been bitrotten 2014-09-11T08:13:15Z stassats: be the one to check 2014-09-11T08:13:45Z otwieracz: Maybe. 2014-09-11T08:13:59Z otwieracz: I am doing small research what I can run on http://wrtnode.com/ 2014-09-11T08:13:59Z |3b|: using an old version probably wouldn't be too horrible if new version didn't work though, not like there has been a new release of clisp in a while either 2014-09-11T08:20:11Z Shaftoe___ joined #lisp 2014-09-11T08:23:01Z fzappa joined #lisp 2014-09-11T08:23:11Z clarkema joined #lisp 2014-09-11T08:25:27Z clarkema quit (Client Quit) 2014-09-11T08:25:27Z Adlai quit (Ping timeout: 264 seconds) 2014-09-11T08:28:11Z theos quit (Remote host closed the connection) 2014-09-11T08:30:25Z Adlai joined #lisp 2014-09-11T08:30:29Z attila_lendvai joined #lisp 2014-09-11T08:32:11Z farhaven joined #lisp 2014-09-11T08:32:52Z frkout_ quit (Remote host closed the connection) 2014-09-11T08:33:19Z frkout joined #lisp 2014-09-11T08:37:46Z dim: writing 5680 bytes from the read-only space at 0x0x20000000 -- 0x0x, to be sure sure? ;-) 2014-09-11T08:38:25Z stassats: huh? 2014-09-11T08:38:41Z zacharias quit (Ping timeout: 260 seconds) 2014-09-11T08:40:20Z stassats: is that the latest sbcl? 2014-09-11T08:40:39Z stassats: it is 2014-09-11T08:43:51Z stassats: dim: fixed 2014-09-11T08:47:47Z TDog joined #lisp 2014-09-11T08:47:59Z dim: wow, thanks 2014-09-11T08:48:15Z dim: stassats: welcome back, happy to have you around again ;-) 2014-09-11T08:48:26Z tkhoa2711 joined #lisp 2014-09-11T08:48:28Z stassats: shh, i'm not here 2014-09-11T08:48:49Z dim: ok great, as long as you are... 2014-09-11T08:49:36Z kuzy000_ joined #lisp 2014-09-11T08:50:10Z hitecnologys: If I want to ensure that an argument passed to function is of specific type, is combination of CHECK-TYPE and type declaration (for inspector to display correct typespec) enough? Is it acceptable practise or should I better evade such a constructs? 2014-09-11T08:50:32Z stassats: in sbcl, just check-type should do 2014-09-11T08:51:11Z stassats: if you want broader optimizations, a global ftype is needed 2014-09-11T08:51:11Z hitecnologys: I see. Thanks. 2014-09-11T08:52:32Z stassats: in fact in sbcl a declaration is enough, but that's specific to sbcl, since it treats type declarations as assertions, so you always have to use CHECK-TYPE 2014-09-11T08:53:48Z tkhoa2711 quit (Ping timeout: 252 seconds) 2014-09-11T08:54:30Z |3b|: if you use check-type and declarations, make sure you don't call check-type inside the scope of the declaration 2014-09-11T08:55:40Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-11T08:55:40Z nug700 quit (Quit: bye) 2014-09-11T08:55:40Z stassats: the code becomes not so nice, so i would just use check-type 2014-09-11T08:55:50Z hitecnologys: Does CHECK-TYPE give all the benefits of declaration in SBCL or I have to use declaration to squeeze the last drops out of optimizer (with safety set to 0 and speed set to 3 and stuff)? 2014-09-11T08:56:18Z stassats: safety 0 and declaration do not mix 2014-09-11T08:56:30Z |3b| wouldn't set safety to 0 unless you have benchmarked carefully and done lots of explicit checks 2014-09-11T08:57:03Z |3b|: check-type is enough for sbcl to figure out the type of the argument in most cases, so additional declarations won't help 2014-09-11T08:57:17Z hitecnologys: I see. 2014-09-11T08:57:47Z hitecnologys: I know safety isn't very safe in many cases, I was just being curious. 2014-09-11T08:57:50Z |3b| doesn't remember what the cases were where they differed, something with array types i think, and that may have been fixed since then 2014-09-11T08:58:01Z stassats: a declaration may perform a cheaper type check, or rather, error reporting 2014-09-11T08:58:22Z malice joined #lisp 2014-09-11T08:58:32Z hitecnologys: Cheaper in what way? Faster? 2014-09-11T08:58:53Z frkout_ joined #lisp 2014-09-11T08:59:00Z stassats: in some way 2014-09-11T08:59:03Z stassats: or another 2014-09-11T09:00:10Z hitecnologys: But why is DECLARE cheaper? 2014-09-11T09:00:40Z stassats: because it's not check-type 2014-09-11T09:00:40Z pgomes joined #lisp 2014-09-11T09:00:58Z stassats: clhs check-type 2014-09-11T09:00:58Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_check_.htm 2014-09-11T09:01:05Z stassats: read what it does in case of an error 2014-09-11T09:02:08Z TDog quit (Quit: ChatZilla 0.9.90.1 [Firefox 31.0/20140716183446]) 2014-09-11T09:02:42Z frkout quit (Ping timeout: 255 seconds) 2014-09-11T09:04:40Z hitecnologys: You mean that the error is correctable? 2014-09-11T09:06:13Z theos joined #lisp 2014-09-11T09:06:46Z dkcl huggles anyone who voted in favor of ETYPECASE 2014-09-11T09:07:50Z Beetny joined #lisp 2014-09-11T09:11:32Z zarul quit (Remote host closed the connection) 2014-09-11T09:12:57Z gravicappa joined #lisp 2014-09-11T09:18:33Z snits joined #lisp 2014-09-11T09:22:18Z Adlai: has anybody ever had using defstruct for prototyping turn out well? 2014-09-11T09:22:39Z stassats: yes 2014-09-11T09:22:53Z Adlai observes that this is a frequent premature optimization for him 2014-09-11T09:23:31Z stassats: i usually know what i'm going to write, so i choose at the beginning 2014-09-11T09:24:23Z Adlai has no clue what he's doing 2014-09-11T09:24:25Z dim: you can always change your mind 2014-09-11T09:25:09Z dim: I like defstruct more than "anonymous data structures", at least it allows some level of documentation, and allows conveying the intent 2014-09-11T09:25:41Z |3b|: dim: can't change your mind as easily with defstruct 2014-09-11T09:25:51Z dim: recklessly continue 2014-09-11T09:25:53Z hitecnologys: dim: you can also dispatch on structs. 2014-09-11T09:26:06Z dim: hitecnologys: yeah, defmethod on structs is nice 2014-09-11T09:26:28Z stassats: you can inherit too, just not multiple 2014-09-11T09:29:31Z theos quit (Remote host closed the connection) 2014-09-11T09:30:18Z kcj joined #lisp 2014-09-11T09:31:11Z mtxp joined #lisp 2014-09-11T09:32:27Z mtxp: hello :-) 2014-09-11T09:32:49Z H4ns: mtxp: welcome 2014-09-11T09:34:19Z Harag joined #lisp 2014-09-11T09:38:44Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-11T09:40:03Z munksgaard quit (Ping timeout: 255 seconds) 2014-09-11T09:40:57Z joast quit (Ping timeout: 255 seconds) 2014-09-11T09:42:04Z mishoo joined #lisp 2014-09-11T09:42:29Z hiroakip joined #lisp 2014-09-11T09:51:10Z quazimodo joined #lisp 2014-09-11T09:52:18Z hlavaty left #lisp 2014-09-11T09:52:21Z hlavaty joined #lisp 2014-09-11T09:55:39Z zacharias joined #lisp 2014-09-11T09:55:42Z mtxp quit (Ping timeout: 245 seconds) 2014-09-11T10:00:15Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-11T10:00:54Z YDJX joined #lisp 2014-09-11T10:04:29Z ggole joined #lisp 2014-09-11T10:06:32Z quazimodo quit (Ping timeout: 276 seconds) 2014-09-11T10:09:18Z mtxp joined #lisp 2014-09-11T10:14:09Z Cymew joined #lisp 2014-09-11T10:16:32Z ndrei quit (Ping timeout: 245 seconds) 2014-09-11T10:19:10Z echo-area quit (Remote host closed the connection) 2014-09-11T10:23:06Z EvW joined #lisp 2014-09-11T10:24:59Z pt1 quit (Remote host closed the connection) 2014-09-11T10:27:06Z dorsocentral joined #lisp 2014-09-11T10:27:34Z pt1 joined #lisp 2014-09-11T10:29:21Z Cymew quit (Ping timeout: 264 seconds) 2014-09-11T10:30:25Z theos joined #lisp 2014-09-11T10:32:52Z Nizumzen joined #lisp 2014-09-11T10:38:13Z pt1 quit (Remote host closed the connection) 2014-09-11T10:39:10Z mrSpec quit (Read error: No route to host) 2014-09-11T10:40:09Z kcj quit (Remote host closed the connection) 2014-09-11T10:41:34Z mrSpec joined #lisp 2014-09-11T10:42:17Z gadmyth quit (Ping timeout: 245 seconds) 2014-09-11T10:43:32Z Mon_Ouie quit (Ping timeout: 245 seconds) 2014-09-11T10:48:08Z mutley89 joined #lisp 2014-09-11T10:51:24Z mtxp quit (Ping timeout: 246 seconds) 2014-09-11T10:53:01Z karupa is now known as zz_karupa 2014-09-11T10:54:44Z Jesin quit (Ping timeout: 272 seconds) 2014-09-11T10:55:40Z munksgaard joined #lisp 2014-09-11T10:57:16Z Mon_Ouie joined #lisp 2014-09-11T10:57:52Z dkcl: Is garbage collection hackery required to turn SBCL|CCL into a feasible server, or am I thinking too much? 2014-09-11T10:58:07Z dkcl: Um, s/server/multithreaded, asynchronous server/ 2014-09-11T10:58:32Z jegaxd26 quit (Ping timeout: 276 seconds) 2014-09-11T10:58:36Z dkcl: Networking really isn't my forte 2014-09-11T10:58:45Z jtza8 quit (Ping timeout: 264 seconds) 2014-09-11T10:59:09Z H4ns: it depends on how much latency your clients are willing to cope with 2014-09-11T10:59:39Z H4ns: you'll rarely see gc pauses longer than a few dozen milliseconds in my experience, so if that is okay for your users, you don't need to do anything. 2014-09-11T10:59:46Z Jesin joined #lisp 2014-09-11T11:00:15Z stassats: until you do 2014-09-11T11:00:39Z stassats: except that there isn't much to do, except literally hacking 2014-09-11T11:01:04Z H4ns: well, you can avoid consing or try to force the collector to run at specific times. 2014-09-11T11:04:02Z gadmyth joined #lisp 2014-09-11T11:05:30Z Jesin quit (Ping timeout: 272 seconds) 2014-09-11T11:06:08Z Jesin joined #lisp 2014-09-11T11:07:17Z przl quit (Ping timeout: 245 seconds) 2014-09-11T11:08:53Z Jesin quit (Excess Flood) 2014-09-11T11:09:35Z hiroakip quit (Ping timeout: 276 seconds) 2014-09-11T11:10:25Z Jesin joined #lisp 2014-09-11T11:12:03Z hiroakip joined #lisp 2014-09-11T11:12:19Z yacks quit (Remote host closed the connection) 2014-09-11T11:12:48Z Jesin quit (Max SendQ exceeded) 2014-09-11T11:15:14Z jtza8 joined #lisp 2014-09-11T11:15:14Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-11T11:15:23Z dmiles_afk joined #lisp 2014-09-11T11:16:44Z Jesin joined #lisp 2014-09-11T11:17:23Z dkcl: How would I go about the latter? Tweaking the source for SBCL? 2014-09-11T11:18:14Z Krystof: explicit calls to SB-EXT:GC 2014-09-11T11:19:20Z H4ns: it is not guaranteed that the collector never runs implicitly in your consing, but if you manage to call it often enough explictly, it may not need to run implicitly. 2014-09-11T11:19:24Z dkcl: Ah, there's something I hadn't used before 2014-09-11T11:19:51Z dkcl: That's very useful, thanks 2014-09-11T11:20:18Z stassats: do you already have a problem with the gc? 2014-09-11T11:20:26Z H4ns: i'm vague because the details can be complicated, i.e. some allocation may actually force the collector to restructure its heap, even though it has run explicitly before and collected everything at that point. 2014-09-11T11:20:50Z dkcl: stassats: Not at all, I'm just worried about scalability 2014-09-11T11:21:07Z H4ns: dkcl: measure, then decide. 2014-09-11T11:22:49Z yeticry quit (Quit: leaving) 2014-09-11T11:23:32Z BitPuffin quit (Ping timeout: 245 seconds) 2014-09-11T11:27:09Z mvilleneuve joined #lisp 2014-09-11T11:31:54Z Adlai quit (Remote host closed the connection) 2014-09-11T11:32:44Z Adlai joined #lisp 2014-09-11T11:33:14Z przl joined #lisp 2014-09-11T11:34:27Z nyef joined #lisp 2014-09-11T11:35:23Z pt1 joined #lisp 2014-09-11T11:35:42Z jegaxd26 joined #lisp 2014-09-11T11:38:07Z przl quit (Ping timeout: 245 seconds) 2014-09-11T11:38:46Z Fare joined #lisp 2014-09-11T11:42:16Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-11T11:42:55Z ndrei joined #lisp 2014-09-11T11:48:20Z bit` quit (Ping timeout: 252 seconds) 2014-09-11T11:48:43Z resttime quit (Quit: resttime) 2014-09-11T11:51:29Z harish joined #lisp 2014-09-11T11:56:19Z EvW1 joined #lisp 2014-09-11T11:56:38Z EvW quit (Remote host closed the connection) 2014-09-11T11:57:29Z knob joined #lisp 2014-09-11T11:58:45Z Px12 quit (Remote host closed the connection) 2014-09-11T12:02:21Z Px12 joined #lisp 2014-09-11T12:02:31Z bit` joined #lisp 2014-09-11T12:04:02Z Sgeo quit (Read error: Connection reset by peer) 2014-09-11T12:06:58Z BitPuffin joined #lisp 2014-09-11T12:10:11Z yacks joined #lisp 2014-09-11T12:12:35Z Beetny quit (Ping timeout: 255 seconds) 2014-09-11T12:14:02Z ndrei quit (Ping timeout: 245 seconds) 2014-09-11T12:14:25Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-11T12:16:42Z przl joined #lisp 2014-09-11T12:19:45Z drmeister quit (Remote host closed the connection) 2014-09-11T12:20:02Z ndrei joined #lisp 2014-09-11T12:21:52Z isoraqathedh quit (Ping timeout: 240 seconds) 2014-09-11T12:21:53Z DGASAU quit (Read error: Connection reset by peer) 2014-09-11T12:22:33Z DGASAU joined #lisp 2014-09-11T12:24:43Z ndrei quit (Ping timeout: 268 seconds) 2014-09-11T12:27:07Z gadmyth quit (Remote host closed the connection) 2014-09-11T12:31:38Z DGASAU quit (Read error: Connection reset by peer) 2014-09-11T12:32:06Z isoraqathedh joined #lisp 2014-09-11T12:32:14Z DGASAU joined #lisp 2014-09-11T12:34:10Z jtza8 quit (Ping timeout: 272 seconds) 2014-09-11T12:34:24Z hitecnologys quit (Quit: hitecnologys) 2014-09-11T12:35:41Z hitecnologys joined #lisp 2014-09-11T12:36:44Z Fare quit (Ping timeout: 252 seconds) 2014-09-11T12:42:23Z DGASAU quit (Read error: Connection reset by peer) 2014-09-11T12:43:09Z DGASAU joined #lisp 2014-09-11T12:43:32Z emma quit (Ping timeout: 245 seconds) 2014-09-11T12:44:46Z emma joined #lisp 2014-09-11T12:44:54Z emma quit (Changing host) 2014-09-11T12:44:54Z emma joined #lisp 2014-09-11T12:46:33Z capitaomorte` left #lisp 2014-09-11T12:48:05Z jegaxd26 quit (Read error: Connection reset by peer) 2014-09-11T12:50:55Z rme joined #lisp 2014-09-11T12:51:40Z jegaxd26 joined #lisp 2014-09-11T12:53:23Z emma quit (Ping timeout: 240 seconds) 2014-09-11T12:53:45Z Pullphinger joined #lisp 2014-09-11T12:56:02Z Harag quit (Ping timeout: 245 seconds) 2014-09-11T12:56:41Z urandom__ joined #lisp 2014-09-11T12:56:41Z TDog joined #lisp 2014-09-11T12:58:12Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-11T12:59:59Z jusss joined #lisp 2014-09-11T13:01:45Z clarkema joined #lisp 2014-09-11T13:04:30Z attila_lendvai quit (Quit: Leaving.) 2014-09-11T13:04:43Z jkaye joined #lisp 2014-09-11T13:07:08Z vaporatorius joined #lisp 2014-09-11T13:07:55Z emma joined #lisp 2014-09-11T13:11:47Z dorsocentral quit (Ping timeout: 276 seconds) 2014-09-11T13:12:54Z emma quit (Ping timeout: 255 seconds) 2014-09-11T13:13:38Z emma joined #lisp 2014-09-11T13:18:32Z emma quit (Ping timeout: 245 seconds) 2014-09-11T13:19:17Z emma joined #lisp 2014-09-11T13:20:23Z kobain joined #lisp 2014-09-11T13:21:01Z kobain quit (Max SendQ exceeded) 2014-09-11T13:21:19Z kobain joined #lisp 2014-09-11T13:22:26Z kobain quit (Max SendQ exceeded) 2014-09-11T13:22:44Z kobain joined #lisp 2014-09-11T13:23:32Z kobain quit (Max SendQ exceeded) 2014-09-11T13:23:50Z kobain joined #lisp 2014-09-11T13:24:23Z oleo joined #lisp 2014-09-11T13:24:27Z kobain quit (Max SendQ exceeded) 2014-09-11T13:24:34Z emma quit (Ping timeout: 265 seconds) 2014-09-11T13:24:45Z kobain joined #lisp 2014-09-11T13:24:54Z kobain quit (Changing host) 2014-09-11T13:24:54Z kobain joined #lisp 2014-09-11T13:24:59Z emma joined #lisp 2014-09-11T13:26:22Z dorsocentral joined #lisp 2014-09-11T13:29:53Z yrk joined #lisp 2014-09-11T13:30:02Z vaporatorius quit (Read error: Connection reset by peer) 2014-09-11T13:30:37Z yrk quit (Changing host) 2014-09-11T13:30:37Z yrk joined #lisp 2014-09-11T13:31:26Z varjag quit (Quit: Leaving) 2014-09-11T13:31:29Z jusss quit (Read error: Connection reset by peer) 2014-09-11T13:32:58Z vanila joined #lisp 2014-09-11T13:35:48Z J_Arcane2 joined #lisp 2014-09-11T13:36:30Z emma quit (Ping timeout: 252 seconds) 2014-09-11T13:36:39Z ejbs joined #lisp 2014-09-11T13:36:59Z mvilleneuve joined #lisp 2014-09-11T13:37:14Z emma joined #lisp 2014-09-11T13:37:24Z jusss joined #lisp 2014-09-11T13:37:24Z jusss quit (Read error: Connection reset by peer) 2014-09-11T13:38:17Z c3w joined #lisp 2014-09-11T13:39:36Z katana- joined #lisp 2014-09-11T13:39:41Z jusss joined #lisp 2014-09-11T13:40:21Z katana- quit (Read error: Connection reset by peer) 2014-09-11T13:41:21Z yeticry joined #lisp 2014-09-11T13:42:27Z dkcl` joined #lisp 2014-09-11T13:42:50Z mr-foobar quit (Quit: Leaving...) 2014-09-11T13:45:00Z dkcl quit (Ping timeout: 246 seconds) 2014-09-11T13:46:07Z TDog quit (Ping timeout: 268 seconds) 2014-09-11T13:50:42Z oleo quit (Ping timeout: 245 seconds) 2014-09-11T13:51:12Z oleo joined #lisp 2014-09-11T13:51:34Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-11T13:52:11Z dkcl` is now known as dkcl 2014-09-11T13:52:17Z dkcl quit (Changing host) 2014-09-11T13:52:17Z dkcl joined #lisp 2014-09-11T13:54:10Z jtza8 joined #lisp 2014-09-11T13:55:22Z yrk quit (Ping timeout: 240 seconds) 2014-09-11T14:01:26Z dorsocentral quit (Ping timeout: 252 seconds) 2014-09-11T14:04:28Z drmeister joined #lisp 2014-09-11T14:06:11Z theos quit (Disconnected by services) 2014-09-11T14:06:35Z theos joined #lisp 2014-09-11T14:08:28Z dlowe: I'm so ashamed of my storage solution for this program I'm writing. Generic functions clone, serialize, and unserialize. Serialize specialized on class, emits '(class value value value), Unserialize specialized on (eql 'class) 2014-09-11T14:08:59Z stassats: that's a start 2014-09-11T14:09:45Z dlowe: yeah. No abstraction at all, just slots to and from lists 2014-09-11T14:09:53Z stassats: my serialization put out something like this at first, now the output looks like  2014-09-11T14:10:23Z drmeister: If I wanted a single character reader macro that behaved like ":" for keywords but interned the symbol in a package intended for chemical names (elements, atom names, residue names, molecule names, fragment names etc.) what should I use? I'm thinking bang (!) as in !C !Ala !Aspirin. The "!" reader macro would read the next symbol and intern it in the #:CHEM-KEYWORD package and automatically export it. stassats - y 2014-09-11T14:10:23Z drmeister: ou did something like this for QT. 2014-09-11T14:10:39Z dlowe: No support for superclasses, either, so changing a base class means changing the output of all its subclasses 2014-09-11T14:11:16Z dlowe: drmeister: I'm not sure why the automatic export is so important to you 2014-09-11T14:11:16Z drmeister: I'm fishing for advice on my proposal for using "!" as a reader macro to denote symbols interned/exported from the #:CHEM-KEYWORD package. 2014-09-11T14:11:33Z stassats: commonqt has #_abc, which preserves case 2014-09-11T14:11:51Z dkcl quit (Remote host closed the connection) 2014-09-11T14:12:29Z stassats: and does a hacky trick to make (#_abc a bc) into a function call 2014-09-11T14:12:56Z drmeister: stassats: Yes, I saw that "#_". Is it better to use a two character sharpsign-whatever reader macro or use up a character like exclamation-mark as a single character reader macro. 2014-09-11T14:13:18Z dkcl joined #lisp 2014-09-11T14:14:52Z theos quit (Ping timeout: 240 seconds) 2014-09-11T14:15:09Z dlowe: drmeister: why must they be exported? chem-keyword::aspirin is too verbose? 2014-09-11T14:15:13Z joast joined #lisp 2014-09-11T14:15:21Z drmeister: I'm also wondering if it should preserve case or not. Elements have case "Ca", "Nb" - but I could use "CA" and "NB" in the context is clear. 2014-09-11T14:15:38Z wasamasa: drmeister: hey, you 2014-09-11T14:15:41Z rme: drmeister: http://trac.clozure.com/ccl/browser/trunk/source/objc-bridge/bridge.lisp#L389 is what we do in ccl 2014-09-11T14:15:56Z drmeister: dlowe: Auto-exporting may not be important. I was drawing an analogy to the CL keyword package. 2014-09-11T14:15:59Z wasamasa: drmeister: I've pinged you yesterday regarding the legal status 2014-09-11T14:16:27Z drmeister: Yes, chem-keyword::aspirin is too verbose. My code uses a lot of names. 2014-09-11T14:17:07Z rme: With that, '#/FoO:fd: => NEXTSTEP-FUNCTIONS:|FoO:fd:| 2014-09-11T14:17:10Z dlowe: drmeister: sure, it just seems like you're going through a lot of trouble when, from what I've seen, just using the standard symbol stuff would work fine. 2014-09-11T14:17:20Z drmeister: It's one of the things that drew me to Common Lisp, the ability to reconfigure the language to use symbols as names - any other language I would have to use strings. Strings are slow and case is not important. 2014-09-11T14:17:26Z dlowe: give chem-keyword the nickname ck 2014-09-11T14:17:33Z ejbs quit (Ping timeout: 246 seconds) 2014-09-11T14:17:35Z dlowe: ck::aspirin 2014-09-11T14:18:05Z hitecnologys quit (Ping timeout: 276 seconds) 2014-09-11T14:18:07Z drmeister: dlowe: Why do we use 'X and not (quote X)? 2014-09-11T14:18:27Z drmeister: Or :X rather than KEYWORD:X 2014-09-11T14:18:46Z dlowe: Why do we use Common Lisp and not Perl? 2014-09-11T14:18:56Z dorsocentral joined #lisp 2014-09-11T14:19:19Z drmeister: For the exact same reason, the former is awesome and the latter sucks donkey balls. 2014-09-11T14:19:37Z dlowe: So brevity isn't everything 2014-09-11T14:19:37Z billstclair joined #lisp 2014-09-11T14:20:00Z dlowe: I'm not unsympathetic 2014-09-11T14:20:10Z theos joined #lisp 2014-09-11T14:21:01Z drmeister: No, but it removes clutter. The most important thing is to use symbols rather than strings. An ancillary benefit of using Common Lisp is I can reconfigure the language to accept !aspirin as equivalent to chem-keyword::aspirin or ckw::aspirin. 2014-09-11T14:21:05Z dkcl quit (Remote host closed the connection) 2014-09-11T14:21:07Z Shaftoe___ joined #lisp 2014-09-11T14:21:39Z dkcl joined #lisp 2014-09-11T14:21:53Z dkcl quit (Remote host closed the connection) 2014-09-11T14:21:55Z drmeister: Once I start coding with the reader macro and inserting !aspirin, !pro4ss, !pro4ss-tbu everywhere I'm committed. 2014-09-11T14:22:39Z dlowe: I run sed on my programs all the time :D 2014-09-11T14:22:56Z dkcl joined #lisp 2014-09-11T14:23:05Z drmeister: So do I use !pro4ss or $pro4ss or #_pro4ss or ^pro4ss. I like bang "!" because it's one handed and I don't see it used much to start symbols in CL. 2014-09-11T14:23:11Z dlowe: My advice is to just do it and see what happens. 2014-09-11T14:23:33Z dlowe: What's the worst that can happen? :D 2014-09-11T14:23:42Z dkcl actually made emacs asplode 2014-09-11T14:23:42Z attila_lendvai joined #lisp 2014-09-11T14:23:51Z hitecnologys joined #lisp 2014-09-11T14:23:59Z dlowe: does that by itself occasionally 2014-09-11T14:24:29Z dkcl: Haha 2014-09-11T14:24:56Z fzappa quit (Remote host closed the connection) 2014-09-11T14:25:46Z wasamasa: I still can't believe the silly things I do to emacs don't just make it explode 2014-09-11T14:26:06Z drmeister: wasamasa: I saw that. It prompted me to email the IP people and tell them I need it by next week or I loose the opportunity to tell the DOD that I've finished Clasp and open sourced it. 2014-09-11T14:26:20Z wasamasa: drmeister: ok then 2014-09-11T14:26:27Z wasamasa: drmeister: mind if I keep bugging you weekly? 2014-09-11T14:26:38Z drmeister grumbles, not that I've really finished anything but I got it to some kind of a milestone. 2014-09-11T14:26:55Z drmeister: wasamasa: Not at all. I appreciate it. 2014-09-11T14:27:09Z wasamasa: now I need someone else to do the same for me :P 2014-09-11T14:27:31Z dlowe: drmeister: well, it's sure to make a big splash when you announce it 2014-09-11T14:27:34Z jlongster joined #lisp 2014-09-11T14:27:39Z clarkema quit (Quit: clarkema) 2014-09-11T14:28:21Z eudoxia joined #lisp 2014-09-11T14:28:26Z wasamasa: drmeister: the other thing I pinged you for was regarding the C++ interop 2014-09-11T14:28:29Z impulse quit (Ping timeout: 276 seconds) 2014-09-11T14:28:50Z wasamasa: drmeister: would it automatically include C? 2014-09-11T14:29:12Z Fare joined #lisp 2014-09-11T14:29:25Z ndrei joined #lisp 2014-09-11T14:29:31Z hiroakip joined #lisp 2014-09-11T14:29:57Z impulse joined #lisp 2014-09-11T14:30:15Z clarkema joined #lisp 2014-09-11T14:31:11Z drmeister: wasamasa: It needs a very recent clang/llvm to be installed. clang is the compiler that compiles Clasp. 2014-09-11T14:31:13Z madrik joined #lisp 2014-09-11T14:31:23Z wasamasa: drmeister: would 3.5 be recent enough? 2014-09-11T14:33:05Z drmeister: It's not going to be for general consumption at first. It's going to be pretty raw. But if you want to grovel C++/C code or start exposing C++ libraries within it and program in something approaching Common Lisp (it's missing about 50-100 CL functions) while we bring it closer to the Common Lisp spec. - you can do that. 2014-09-11T14:33:15Z |3b|: drmeister: i vote #\atom_symbol for your reader macro :p 2014-09-11T14:33:41Z drmeister: 3.5 is recent enough. I'm currently using a 3.4 TOT build from a couple of months ago. I'll upgrade to stock 3.5 and then freeze there. 2014-09-11T14:33:45Z jusss quit (Read error: Connection reset by peer) 2014-09-11T14:33:57Z wasamasa: nice 2014-09-11T14:34:05Z normanrichards quit 2014-09-11T14:36:07Z munksgaard quit (Ping timeout: 245 seconds) 2014-09-11T14:36:16Z drmeister: Everytime I upgrade the LLVM/Clang library things break. Fortunately, the CL/C++ interop means it's easy to fix the wrapping code. 2014-09-11T14:38:03Z pt1 quit (Remote host closed the connection) 2014-09-11T14:38:45Z yrk joined #lisp 2014-09-11T14:38:47Z drmeister: I've laid out a path here for CL/C++ interoperation and you can expose C++ libraries and write CL code that uses it. The compiled CL code it generates is slow (until beach finishes his modern Cleavir compiler and we incorporate that into Clasp) and is missing some CL features (until we add them in). But it's not streamlined like SBCL by any means. It does have a modern compacting garbage collector - so it's not a toy. 2014-09-11T14:39:08Z yrk quit (Changing host) 2014-09-11T14:39:08Z yrk joined #lisp 2014-09-11T14:40:18Z drmeister: It is still missing immediate fixnums and characters. You get the picture. I would need a couple more years of work by myself to make it fully CL compliant. I can't continue as I have been. I'm reaching the limit of what I can do by myself. 2014-09-11T14:40:54Z mr-foobar joined #lisp 2014-09-11T14:41:15Z drmeister: But I have lots of plans and I think there is a lot of fun stuff to do. 2014-09-11T14:42:21Z drmeister: But until I flip the switch that makes the github repo go from Private to Public - I haven't done anything meaningful. 2014-09-11T14:43:14Z smull quit (Remote host closed the connection) 2014-09-11T14:46:20Z attila_lendvai quit (Quit: Leaving.) 2014-09-11T14:47:29Z pt1 joined #lisp 2014-09-11T14:47:45Z Karl_Dscc joined #lisp 2014-09-11T14:48:18Z Karl_Dscc quit (Remote host closed the connection) 2014-09-11T14:49:40Z smull joined #lisp 2014-09-11T14:50:20Z ndrei quit (Ping timeout: 272 seconds) 2014-09-11T14:53:31Z normanrichards joined #lisp 2014-09-11T14:54:42Z gravicappa quit (Remote host closed the connection) 2014-09-11T14:55:24Z joast quit (Ping timeout: 272 seconds) 2014-09-11T14:55:24Z dkcl quit (Read error: Connection reset by peer) 2014-09-11T14:55:52Z dkcl joined #lisp 2014-09-11T14:59:44Z gingerale joined #lisp 2014-09-11T15:00:48Z YDJX left #lisp 2014-09-11T15:02:03Z stacksmith joined #lisp 2014-09-11T15:02:15Z Nizumzen joined #lisp 2014-09-11T15:04:34Z varjag_ joined #lisp 2014-09-11T15:05:27Z stanislav joined #lisp 2014-09-11T15:06:58Z drmeiste_ joined #lisp 2014-09-11T15:08:04Z Jesin quit (Ping timeout: 272 seconds) 2014-09-11T15:08:24Z stanislav quit (Client Quit) 2014-09-11T15:09:19Z Jesin joined #lisp 2014-09-11T15:09:45Z drmeister quit (Ping timeout: 260 seconds) 2014-09-11T15:12:25Z Fare: drmeiste_, are you still 70x too slow? 2014-09-11T15:12:37Z Fare: do you have immediate floats? 2014-09-11T15:12:49Z Fare: e.g. using denormal for non-floats 2014-09-11T15:12:49Z Jesin quit (Max SendQ exceeded) 2014-09-11T15:12:59Z xificurC quit (Read error: Connection reset by peer) 2014-09-11T15:14:56Z Jesin joined #lisp 2014-09-11T15:17:37Z pjb: drmeiste_: !?{}[] are reserved for the user. The question is whether you consider yourself a user when defining ! for chem-keywords ;-) 2014-09-11T15:18:16Z drmeiste_: Fare: I don't have immediate floats yet. I have the infrastructure to support them (smart/tagged pointers) but I haven't done the big job of refactoring my C++ code to convert all interaction with boxed fixnum/character/floats to immediate accesses. 2014-09-11T15:19:22Z Jesin quit (Max SendQ exceeded) 2014-09-11T15:20:16Z pjb: drmeiste_: There are already a lot of characters used with sharp for dispatching macros. And I'm not sure about their reserved status. I guess an implementation could preempt them, but this is a problem, when porting code or mixing libraries coming from different implementations… 2014-09-11T15:20:17Z Jesin joined #lisp 2014-09-11T15:20:36Z eudoxia quit (Quit: leaving) 2014-09-11T15:21:29Z eudoxia joined #lisp 2014-09-11T15:22:01Z pjb: drmeiste_: therefore my advice would be to provide a reader macro or dispatching reader macro function, and to let the user configure it on the character(s) he wants. 2014-09-11T15:22:51Z stassats: that's the worst idea 2014-09-11T15:22:58Z Jesin quit (Max SendQ exceeded) 2014-09-11T15:22:58Z pjb: drmeiste_: otherwise, you can use ! or $, or make them dispatching character macros !c $c -> chemicals $m -> molecules $a -> atoms. 2014-09-11T15:23:17Z pjb: stassats: for a library, that'd be the only good way to do it. 2014-09-11T15:23:32Z namespace is now known as If 2014-09-11T15:23:38Z pjb: again, depends on whether one consider chem and chem-keyword to be a library or an implementation part. 2014-09-11T15:23:45Z If is now known as namespace 2014-09-11T15:23:52Z Denommus quit (Ping timeout: 240 seconds) 2014-09-11T15:24:00Z innertracks joined #lisp 2014-09-11T15:24:16Z pjb: And considering it an implementation part makes the code that uses it more difficult to port, and therefore is a bad thing IMO and IME. 2014-09-11T15:24:36Z Jesin joined #lisp 2014-09-11T15:26:01Z k-stz joined #lisp 2014-09-11T15:26:04Z Denommus joined #lisp 2014-09-11T15:26:12Z pjb: drmeiste_: you may also consider using unicode characters for reader macros. eg. ¢ or more specific: ⚗ ⚛ ⌬ ⏣ etc. 2014-09-11T15:26:29Z normanrichards quit 2014-09-11T15:26:33Z atgreen quit (Ping timeout: 260 seconds) 2014-09-11T15:26:52Z pjb: ⚛He ⚛Li ⚛C would be a nice reader macro for atoms :-) 2014-09-11T15:29:14Z inklesspen: use ☃ 2014-09-11T15:29:30Z drmeiste_: pjb: I don't consider myself a user when defining ! for chem-keywords. CANDO (the chemistry code on top of Clasp) is so important that it's going to be a superset of Common Lisp. I don't intend to ever run the chemistry code outside of Clasp on another Common Lisp implementation. 2014-09-11T15:30:22Z Jesin quit (Ping timeout: 240 seconds) 2014-09-11T15:30:24Z drmeiste_: What I want to avoid is choosing a reader macro character that clashes with Common Lisp. But I don't care about being compatible with other implementations of Common Lisp. 2014-09-11T15:30:50Z drmeiste_: Just for the chemistry code mind you. Stand-alone Clasp is going to be a standard Common Lisp implementation. 2014-09-11T15:31:05Z pjb: Now, for example, there's a lot of code that use #_ #/ #$ because they're defined by ccl to access native functions, constants, variables, etc. 2014-09-11T15:31:24Z drmeiste_: CANDO is an extension of Clasp (it will be a separate executable) that builds on and extends the Common Lisp within Clasp. 2014-09-11T15:31:33Z pjb: If I wanted to use this code on clasp, I would have to implement those dispatching macro with for my application or libraries. 2014-09-11T15:31:59Z pjb: Therefore I would not advise you, the implementer to use those dispatching reader macros, because of the potential collision (because of other implementations). 2014-09-11T15:32:00Z drmeiste_: Undrestood. 2014-09-11T15:32:16Z drmeiste_ is now known as drmeister 2014-09-11T15:32:48Z drmeister: Right - Clasp won't use #_ or #/ or #$. Clasp is meant to be a vanilla Common Lisp. 2014-09-11T15:33:07Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-11T15:33:13Z pjb: In the ASCII set, ?![]{} are reserved for the user (eg. there are several libraries that use [] for specific things). I would advise to leave those to the users. 2014-09-11T15:33:33Z Vivitron quit (Read error: No route to host) 2014-09-11T15:34:30Z pjb: So remains only a few characters, such as $ _ ^ that could be used as a reader macro by the implementation, assuming that few libraries use them as prefix in symbol names. 2014-09-11T15:34:31Z drmeister: CANDO (Clasp + chemistry code) will use whatever the chemistry domain specific code needs while trying not to clash with the Common Lisp way of doing things. For instance CANDO wouldn't use | or ' as single character reader macro characters. That would screw up the Common Lisp. 2014-09-11T15:34:35Z Fare: drmeister, you need a different readtable for your magic characters, anyway 2014-09-11T15:34:53Z pjb: drmeister: if you're supporting unicode, I would rather bet on a unicode character. 2014-09-11T15:35:10Z Fare: which reminds me that the branch of ASDF that properly deals with readtable has been put on the backburner for many months now. 2014-09-11T15:35:36Z drmeister: I don't support unicode at the moment. 2014-09-11T15:36:21Z jlongster quit (Remote host closed the connection) 2014-09-11T15:37:13Z drmeister: So $ _ and ^ are not reserved for the user in Common Lisp. What about @ and *? I see lots of code using * in symbols. 2014-09-11T15:37:26Z pjb: ⚗ ⚛ ⌬ ⏣ 2014-09-11T15:37:28Z Fare: @ is used by ,@ 2014-09-11T15:37:28Z drmeister: What about ~ ? 2014-09-11T15:37:29Z murftown joined #lisp 2014-09-11T15:37:35Z Fare: *special-variables* abound 2014-09-11T15:37:39Z stassats: * is not a reader macro 2014-09-11T15:37:48Z pjb: drmeister: and ~; they are constituent characters: user code can use them in symbols. 2014-09-11T15:37:48Z stassats: @ is a part of ` 2014-09-11T15:37:51Z drmeister: Oh yeah - special variables - forget * . 2014-09-11T15:37:52Z innertracks quit (Quit: innertracks) 2014-09-11T15:37:54Z Fare: drmeister, [ ] are usually free, or & 2014-09-11T15:37:59Z pjb: $ is often used in macros for short lambda. 2014-09-11T15:38:01Z zacharias quit (Quit: Bye!) 2014-09-11T15:38:02Z Fare: maybe ? 2014-09-11T15:38:13Z drmeister: & is for &key &optional &aux &rest 2014-09-11T15:38:14Z jasom: drmeister: $ is definitely reserved for the user #$ is what you are thinking of perhaps? 2014-09-11T15:38:22Z stassats: if you don't want the users not to multiple numbers, leave * as it is 2014-09-11T15:38:25Z pjb: {+ $1 $2} --> (lambda ($1 $2) (+ #$1 $2)) 2014-09-11T15:38:46Z Fare: if CANDO is a "user" of CL, then it can use $ 2014-09-11T15:38:51Z pjb: drmeister: but a reader macro on & could take care of the lambda-list-keywords. 2014-09-11T15:38:53Z drmeister: No, I'm looking for a single character reader macro. 2014-09-11T15:39:01Z drmeister: Can it not use ! ? 2014-09-11T15:39:06Z Fare: just export a separate readtable, then you can use whichever character you want 2014-09-11T15:39:13Z joast joined #lisp 2014-09-11T15:39:14Z stassats: there are non-terminating reader macros, so, *special* will still work 2014-09-11T15:39:16Z stassats: but (* 1 2) won't 2014-09-11T15:39:22Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-11T15:39:25Z pjb: IMO the best character for a reader macro would be choosen in unicode. 2014-09-11T15:39:34Z pjb: What are you reading here? 2014-09-11T15:39:35Z stassats: ! is in unicode 2014-09-11T15:39:46Z pjb: atoms? molecules? 2014-09-11T15:39:46Z foom: most non-ascii characters are difficult to type on keyboards 2014-09-11T15:40:03Z jasom: clhs 2.1.4 defines the syntax of all 96 standard characters IIRC 2014-09-11T15:40:11Z drmeister: pjb: Symbols. !xxx would be equivalent to chem-keyword::xxx 2014-09-11T15:40:29Z pjb: stassats: I mean non standard-character unicode characters. 2014-09-11T15:40:30Z pjb: foom: this has to change. 2014-09-11T15:40:30Z pjb: notice how easily I've typed them. 2014-09-11T15:40:37Z eudoxia: drmeister: are you just reading chemical symbols or atomic coordinates? 2014-09-11T15:40:38Z stassats: drmeister: why not use :xx? 2014-09-11T15:40:45Z drmeister: Atom names, residue names, fragment names, molecule names, element names. 2014-09-11T15:40:50Z Fare reminds everyone of his lambda-reader package that allows for λ as LAMBDA 2014-09-11T15:40:53Z pjb: ⚛ 2014-09-11T15:41:07Z drmeister: Bond order names, hybridization names, stereochemical names (R/S/undefined). 2014-09-11T15:41:13Z Fare: 1- copy paste 2- emacs binding 2014-09-11T15:41:20Z pjb: What about ⚛Li ⌬CH2O2 ? 2014-09-11T15:41:32Z Jesin joined #lisp 2014-09-11T15:41:33Z pjb: or see how they do it with APL. 2014-09-11T15:41:40Z pjb: clasp can provide a xmodmap. :-) 2014-09-11T15:41:52Z foom: pjb: I'm glad you can type them. I can type some too if I remember the secret combination of keys, because I turned on the compose key (which isn't there by default). 2014-09-11T15:42:04Z drmeister: I don't have unicode. I went with 8 bit characters. 2014-09-11T15:42:09Z Fare: 3- C-u C-\ tex RET 2014-09-11T15:42:20Z jasom: drmeister: that still gives you 127 non-ascii characters to use 2014-09-11T15:42:23Z pjb: just remember their name. C-x 8 RET atom symbol RET ⚛ 2014-09-11T15:42:34Z Pullphinger quit (Ping timeout: 242 seconds) 2014-09-11T15:42:40Z AeroNotix: > 2014 2014-09-11T15:42:44Z AeroNotix: > not having unicode 2014-09-11T15:42:46Z AeroNotix: > mfw 2014-09-11T15:42:47Z drmeister: pjb: Unicode is a good suggestion if I had unicode. 2014-09-11T15:43:03Z Fare: my ~/.XCompose seems to not be heeded anymore since I upgraded to Ubuntu 14.04 2014-09-11T15:43:12Z pjb: drmeister: I proposed: ¢ (cent sign, for chemistry). 2014-09-11T15:43:14Z foom: gnome doesn't use it 2014-09-11T15:43:24Z jasom: © 2014-09-11T15:43:25Z foom: they decided to implement their own input method, for consistency 2014-09-11T15:43:31Z foom: consistency with what? windows I think 2014-09-11T15:43:39Z pjb: § and ¶ are also easily typed on a lot of keyboards. 2014-09-11T15:43:57Z jasom: × 2014-09-11T15:44:01Z uzo joined #lisp 2014-09-11T15:44:02Z phadthai: foom: the same issue with qt lately, if I remember 2014-09-11T15:44:02Z eudoxia: foom: that's the stupidiest thing i have heard all day 2014-09-11T15:44:11Z pjb: × is too often used elsewhere. 2014-09-11T15:44:27Z pjb: × and · are used in matrix lisp code. 2014-09-11T15:44:28Z eudoxia: i wonder if that's why my compose keybindings don't work on Firefox 2014-09-11T15:45:29Z stassats quit (Read error: No route to host) 2014-09-11T15:45:31Z jasom: ¹²³ 2014-09-11T15:45:34Z stassats` joined #lisp 2014-09-11T15:45:53Z Fare googles for how to add lambda to whatever new input method GNOME is using 2014-09-11T15:46:00Z phadthai: changing bindings via xkb works, but my xmodmap maps stopped to work in gtk and qt 2014-09-11T15:46:22Z boogie joined #lisp 2014-09-11T15:46:41Z Fare: ugly fallback: C-S-u 03BB 2014-09-11T15:47:16Z foom: ...which only works in the new gnome input-method, not in the non-gnome xim 2014-09-11T15:48:06Z eudoxia: why is everything so terrible, what was wrong with XCompose anyways 2014-09-11T15:48:47Z Fare: sigh. 2014-09-11T15:49:25Z Fare: Linux input configuration sucks because they are too many standards. I know! I'll invent a new input configuration standard... 2014-09-11T15:49:35Z clarkema quit (Quit: clarkema) 2014-09-11T15:49:45Z stassats`: let's all just use english 2014-09-11T15:49:58Z foom: ascii was good enough for everyone. 2014-09-11T15:51:04Z hitecnologys: stassats`: English isn't good enough. 2014-09-11T15:51:05Z dim: well just use Emacs input methods 2014-09-11T15:51:21Z dim: λ is just l~ here 2014-09-11T15:51:30Z Fare: Baudot code is good enough for everyone. 2014-09-11T15:51:32Z stassats`: hitecnologys: what? not enough swear words? 2014-09-11T15:51:48Z J_Arcane2: vittu perkele? ;) 2014-09-11T15:51:50Z Fare: dim: which input mode is it? 2014-09-11T15:51:58Z dim: mine 2014-09-11T15:52:00Z dim: of course. 2014-09-11T15:52:38Z Fare: dim: do you use my lambda-reader or something equivalent? 2014-09-11T15:52:42Z innertracks joined #lisp 2014-09-11T15:52:45Z hitecnologys: stassats`: no, swear words can always be made up. It's rather more ambiguity than I can handle. 2014-09-11T15:53:15Z stassats`: it's no programming language, what did you expect? 2014-09-11T15:53:19Z eudoxia quit (Quit: Lost terminal) 2014-09-11T15:53:21Z dim: Λ λ 2014-09-11T15:53:28Z hitecnologys: Something better? 2014-09-11T15:53:37Z pjb: Greek-l -> λ 2014-09-11T15:53:39Z dim: you can do that with C-x 8 RET GREEK SMALL LETTER LAMBDA 2014-09-11T15:53:41Z dim: if you want to 2014-09-11T15:53:46Z joast quit (Ping timeout: 268 seconds) 2014-09-11T15:53:47Z eudoxia joined #lisp 2014-09-11T15:54:00Z dim: Fare: I did fancy using something like that for elisp, but didn't 2014-09-11T15:54:23Z arenz quit (Ping timeout: 268 seconds) 2014-09-11T15:54:28Z dim: ;; just for fun 2014-09-11T15:54:29Z dim: (defalias 'λ 'lambda) 2014-09-11T15:54:32Z ferada: the tex input mode is also great 2014-09-11T15:54:33Z dim: I still have that in my emacs setup 2014-09-11T15:54:35Z oGMo: i wish there was an xinput method for rfc1345 ;/ 2014-09-11T15:54:44Z vydd joined #lisp 2014-09-11T15:54:54Z vydd quit (Changing host) 2014-09-11T15:54:54Z vydd joined #lisp 2014-09-11T15:55:02Z phadthai: 𐎍 2014-09-11T15:55:11Z dim: well the greek input mode allows you to just type l to have λ 2014-09-11T15:55:12Z oGMo: eudoxia: xcompose is bad because it doesn't cover very much 2014-09-11T15:55:12Z J_Arcane2: hitecnologys: thus the evil that results when people decide to write natural language programming languages in English ... 2014-09-11T15:55:26Z dim: βθτ τηεν ιτ'σ α λιττλε τοο ηαρδ το ρεαδ φορ με 2014-09-11T15:55:34Z ehu quit (Ping timeout: 272 seconds) 2014-09-11T15:55:54Z eudoxia: oGMo: what do you mean? 2014-09-11T15:56:10Z eudoxia: i have keybindings to produce emoji, good enough for me ¯\_(ツ)_/¯ 2014-09-11T15:56:14Z Fare: dim: I don't know what defalias does, but it probably doesn't support the special form ((λ (x) ...) ...) 2014-09-11T15:56:17Z oGMo: eudoxia: lots of language support missing iirc 2014-09-11T15:56:26Z hitecnologys: J_Arcane2: oh my, don't remind me of these... 2014-09-11T15:56:33Z oGMo: eudoxia: plus inconvenient for regular entry of said languages 2014-09-11T15:56:55Z dim: Fare: yeah 2014-09-11T15:57:14Z Fare: lambda-reader does, somehow. 2014-09-11T15:57:22Z J_Arcane2: hitecnologys: my first first attempted entry point into Mac programming as a younger man was HyperTalk ... 2014-09-11T15:57:36Z Fare: I didn't invent the trick, though, I only packaged it 2014-09-11T15:57:37Z oGMo: Fare: the reader just has to spit out cl:lambda doesn't it? 2014-09-11T15:57:45Z Fare: oGMo: yup. 2014-09-11T15:58:14Z cmack joined #lisp 2014-09-11T15:59:56Z Fare: and the printer detects whether the current readtable and current package use the lambda-reader, and if so print cl:lambda as λ 2014-09-11T16:00:36Z hitecnologys: J_Arcane2: well, there are certain use cases for such languages. LOOP looks quite nice, for instance. 2014-09-11T16:01:52Z Nizumzen joined #lisp 2014-09-11T16:02:47Z cy joined #lisp 2014-09-11T16:02:57Z oGMo: Fare: makes sense 2014-09-11T16:03:41Z oGMo: i didn't realize you could customize the printer 2014-09-11T16:04:04Z normanrichards joined #lisp 2014-09-11T16:04:14Z oGMo: er. well not true i guess, you just specialize print-object for (eql 'lambda)? 2014-09-11T16:04:44Z oGMo: amazing how much one can accomplish heh 2014-09-11T16:05:22Z stassats`: except that you can't do that 2014-09-11T16:05:39Z stassats`: a pretty print dispatch table will work 2014-09-11T16:05:49Z oGMo: ah, now that i don't know about 2014-09-11T16:06:16Z Fare: oGMo: see the source code at http://cliki.net/lambda-reader 2014-09-11T16:07:23Z Fare: http://common-lisp.net/gitweb?p=users/frideau/lambda-reader.git;a=blob;f=lambda-reader.lisp;h=99259ca856fd4300609406fc95dd4f8ce42f7c5b;hb=master;js=1 2014-09-11T16:07:47Z oGMo: yeah 2014-09-11T16:08:11Z gabriel-artigue quit (Quit: leaving) 2014-09-11T16:12:31Z gravicappa joined #lisp 2014-09-11T16:12:32Z capitaomorte` joined #lisp 2014-09-11T16:12:35Z ndrei joined #lisp 2014-09-11T16:12:46Z LiamH joined #lisp 2014-09-11T16:13:03Z munksgaard joined #lisp 2014-09-11T16:15:36Z jkaye quit (Read error: Connection reset by peer) 2014-09-11T16:16:02Z jkaye joined #lisp 2014-09-11T16:16:05Z jlongster joined #lisp 2014-09-11T16:16:26Z zlrth joined #lisp 2014-09-11T16:17:30Z schoppenhauer quit (Quit: Adé) 2014-09-11T16:18:43Z jkaye quit (Read error: Connection reset by peer) 2014-09-11T16:19:01Z dkcl quit (Remote host closed the connection) 2014-09-11T16:19:04Z schoppenhauer joined #lisp 2014-09-11T16:19:05Z jkaye joined #lisp 2014-09-11T16:20:04Z shka joined #lisp 2014-09-11T16:20:08Z shka: ave tux! 2014-09-11T16:20:32Z shka: how well elephant works on the more recent sbcl? 2014-09-11T16:20:57Z shka: common-lisp.net states that it is not developed since 2009 2014-09-11T16:21:00Z xyjprc joined #lisp 2014-09-11T16:21:35Z EvW1 quit (Remote host closed the connection) 2014-09-11T16:21:41Z xenophon joined #lisp 2014-09-11T16:21:44Z EvW joined #lisp 2014-09-11T16:23:22Z stassats` quit (Ping timeout: 240 seconds) 2014-09-11T16:24:23Z eudoxia: use crane instead http://eudoxia0.github.io/crane/ 2014-09-11T16:24:35Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-09-11T16:24:43Z shka: eudoxia: thank you very much 2014-09-11T16:24:58Z zlrth quit (Ping timeout: 246 seconds) 2014-09-11T16:25:39Z schoppenhauer quit (Quit: Adé) 2014-09-11T16:25:58Z schoppenhauer joined #lisp 2014-09-11T16:26:05Z shka: eudoxia: it this simply modern variant of elephant, or something a bit different? 2014-09-11T16:26:31Z MoALTz joined #lisp 2014-09-11T16:26:36Z schoppenhauer quit (Client Quit) 2014-09-11T16:26:43Z oGMo: eudoxia: do you handle aggregation? 2014-09-11T16:26:48Z eudoxia: shka: elephant, if i recall correctly, tries to serialize arbitrary data structures (classes, lists, hash tables, etc.) to multiple backends, one of which is SQL 2014-09-11T16:26:54Z schoppenhauer joined #lisp 2014-09-11T16:27:35Z eudoxia: shka: crane's sole backend is SQL and doesn't try to serialize everything, ie if you want to store a set of objects you'll have to look into database design and database relations 2014-09-11T16:28:07Z hitecnologys quit (Quit: hitecnologys) 2014-09-11T16:28:35Z eudoxia: if you want to serialize arbitrary data structures i think cl-store does that 2014-09-11T16:29:01Z oGMo: or cl-conspack! ;) but not at all an ORM 2014-09-11T16:29:28Z oGMo: eudoxia: crane looks neat. i'll have to try it next time i'm looking for database stuff 2014-09-11T16:29:50Z shka: eudoxia: ok, thanks again 2014-09-11T16:29:59Z slyrus: oh crane does look neat. advantages/disadvantages over postmodern? 2014-09-11T16:30:02Z eudoxia: oGMo: thanks :) 2014-09-11T16:30:05Z oGMo: calling it an ORM seems like trickery, which is mostly a good thing imho 2014-09-11T16:30:21Z shka: eudoxia: aaah, so you are the guy behind it! 2014-09-11T16:30:25Z H4ns: slyrus: postmodern is not at all an orm 2014-09-11T16:30:29Z shka: so your opinion is biased :P 2014-09-11T16:30:51Z eudoxia: slyrus: postmodern is postgres only, crane is postgres/mysql/sqlite, and does automatic migrations when the table definitions change (just not on Sqlite yet because it's horrible) 2014-09-11T16:31:00Z eudoxia: shka: it was a shameless plug 2014-09-11T16:31:29Z eudoxia: slyrus: also, while crane allows you to use SxQL (similar to Postmodern's S-SQL), it also comes with a Django-inspired interface for doing simple queries 2014-09-11T16:31:58Z slyrus: the migrations thing sounds handy 2014-09-11T16:32:46Z eudoxia: it's the one thing i wish all ORMs did 2014-09-11T16:32:47Z oGMo: as long as SxQL lets you do db-specific constructs (which i wouldn't expect to magically translate) 2014-09-11T16:33:12Z effy quit (Ping timeout: 245 seconds) 2014-09-11T16:34:02Z eudoxia: oGMo: here's a (nasty) example of that https://github.com/eudoxia0/crane/blob/7d4720f8306151b8a75d7181d730e91b1f9347b3/src/interface.lisp#L75-L79 2014-09-11T16:34:36Z schoppenhauer quit (Quit: Adé) 2014-09-11T16:34:38Z wasamasa: eudoxia: ah, crane is your invention 2014-09-11T16:34:46Z eudoxia: tl;dr Sqlite3 doesn't support "INSERT INTO table VALUES (id, ...) RETURNING id" 2014-09-11T16:35:19Z zlrth joined #lisp 2014-09-11T16:36:18Z oGMo: eudoxia: ah i meant more like pg sql extensions 2014-09-11T16:36:21Z oGMo: eudoxia: but, cool 2014-09-11T16:36:39Z schoppenhauer joined #lisp 2014-09-11T16:36:40Z wasamasa: eudoxia: what exactly are fixtures? 2014-09-11T16:37:14Z eudoxia: wasamasa: stuff you always want to load into the database 2014-09-11T16:37:35Z eudoxia: like, currencies, languages, countries, things that are basically static 2014-09-11T16:38:04Z EvW1 joined #lisp 2014-09-11T16:38:24Z wasamasa: eudoxia: so, preseeded data? 2014-09-11T16:38:29Z eudoxia: yes 2014-09-11T16:38:31Z EvW quit (Remote host closed the connection) 2014-09-11T16:38:33Z wasamasa: I see, thanks 2014-09-11T16:38:57Z gravicappa quit (Ping timeout: 264 seconds) 2014-09-11T16:39:18Z ndrei quit (Ping timeout: 246 seconds) 2014-09-11T16:39:52Z Shaftoe____ joined #lisp 2014-09-11T16:41:31Z ndrei joined #lisp 2014-09-11T16:42:38Z izirku joined #lisp 2014-09-11T16:44:09Z schoppenhauer quit (Quit: Adé) 2014-09-11T16:44:20Z Shaftoe___ quit (Ping timeout: 268 seconds) 2014-09-11T16:44:20Z Shaftoe____ is now known as Shaftoe___ 2014-09-11T16:45:36Z schoppenhauer joined #lisp 2014-09-11T16:45:38Z farhaven quit (Read error: Connection reset by peer) 2014-09-11T16:53:24Z malbertife joined #lisp 2014-09-11T16:53:25Z Px12 quit (Remote host closed the connection) 2014-09-11T16:53:46Z jegaxd26 quit (Remote host closed the connection) 2014-09-11T16:54:25Z jkaye quit (Remote host closed the connection) 2014-09-11T16:54:58Z jkaye joined #lisp 2014-09-11T16:57:09Z Aiwass joined #lisp 2014-09-11T16:59:21Z Jesin quit (Ping timeout: 264 seconds) 2014-09-11T16:59:52Z farhaven joined #lisp 2014-09-11T16:59:58Z jkaye quit (Ping timeout: 264 seconds) 2014-09-11T17:02:31Z TDog joined #lisp 2014-09-11T17:03:03Z effy joined #lisp 2014-09-11T17:03:11Z hiroakip joined #lisp 2014-09-11T17:03:38Z normanrichards quit 2014-09-11T17:06:00Z resttime joined #lisp 2014-09-11T17:06:24Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-11T17:07:37Z TDog_ joined #lisp 2014-09-11T17:07:53Z TDog quit (Read error: Connection reset by peer) 2014-09-11T17:08:00Z TDog_ is now known as TDog 2014-09-11T17:08:42Z pt1 quit (Remote host closed the connection) 2014-09-11T17:11:15Z Petit_Dejeuner joined #lisp 2014-09-11T17:11:49Z jasom: shka: elephant works, but it doesn't "just work" IIRC; some configuration and stuff is necessary 2014-09-11T17:11:56Z Petit_Dejeuner: So, what's the story with the hunchentoot logo? 2014-09-11T17:12:18Z joast joined #lisp 2014-09-11T17:13:28Z EvW1 quit (Ping timeout: 272 seconds) 2014-09-11T17:13:54Z jasom: Petit_Dejeuner: the word hunchentoot is from Frank Zappa, so I just ignore anything weird with it 2014-09-11T17:14:16Z shka: Petit_Dejeuner: it reminds me frank zappa own logo 2014-09-11T17:14:33Z J_Arcane2: and a bit of Conrad Barski's Lisp alien 2014-09-11T17:14:37Z jasom: FYI Drakma was the main character of the play hunchentoot, so there's that connection 2014-09-11T17:14:39Z Petit_Dejeuner: This is the guy in the picture inside the example test server? 2014-09-11T17:14:40Z ndrei quit (Ping timeout: 252 seconds) 2014-09-11T17:15:03Z Petit_Dejeuner: Not the alien, guy with a ciggarette. Let me get the picture. 2014-09-11T17:15:07Z shka: Petit_Dejeuner: he is well know musician 2014-09-11T17:15:17Z wasamasa: "The main character in Hunchentoot is Drakma (Queen of Cosmic Greed), an alien that wants to invade Earth." 2014-09-11T17:15:21Z wasamasa: that explains everything 2014-09-11T17:15:26Z jasom: hunchentoot was a giant space spider, and drakma was a queen 2014-09-11T17:15:55Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-11T17:15:56Z J_Arcane2: hah. 2014-09-11T17:16:19Z shka: well, now we need some kate bush and tom waits themed libs :P 2014-09-11T17:16:20Z ndrei joined #lisp 2014-09-11T17:16:24Z Petit_Dejeuner: Same guy? http://i.imgur.com/UVb9tVy.png 2014-09-11T17:16:47Z jasom: that looks like frank zappa 2014-09-11T17:17:52Z sdemarre joined #lisp 2014-09-11T17:17:53Z shka: he is so frank zappa that he can't be more 2014-09-11T17:18:44Z jkaye joined #lisp 2014-09-11T17:20:13Z xyjprc quit (Remote host closed the connection) 2014-09-11T17:20:48Z EvW joined #lisp 2014-09-11T17:22:52Z bit` quit (Ping timeout: 240 seconds) 2014-09-11T17:23:05Z malbertife_ joined #lisp 2014-09-11T17:23:57Z dkcl joined #lisp 2014-09-11T17:24:22Z Fare quit (Quit: Leaving) 2014-09-11T17:24:35Z Karl_Dscc joined #lisp 2014-09-11T17:25:11Z erikc joined #lisp 2014-09-11T17:26:55Z Jesin joined #lisp 2014-09-11T17:27:09Z malbertife quit (Ping timeout: 255 seconds) 2014-09-11T17:28:09Z gravicappa joined #lisp 2014-09-11T17:29:08Z eudoxia quit (Quit: Lost terminal) 2014-09-11T17:30:24Z munksgaard quit (Ping timeout: 246 seconds) 2014-09-11T17:30:42Z fantazo joined #lisp 2014-09-11T17:32:16Z slyrus: i came to the conclusion that, apart from poaching edi's turf, titties and beer was an inappropriate name for any of my libraries 2014-09-11T17:32:29Z typhonic joined #lisp 2014-09-11T17:32:44Z Petit_Dejeuner: This play is amazing. 2014-09-11T17:32:49Z wasamasa: slyrus: what? 2014-09-11T17:32:57Z Petit_Dejeuner: slyrus, just name it t&b 2014-09-11T17:33:03Z slyrus: wasamasa: another frank zappa song 2014-09-11T17:34:59Z EvW quit (Ping timeout: 272 seconds) 2014-09-11T17:35:12Z Vivitron joined #lisp 2014-09-11T17:36:12Z Soft quit (Quit: WeeChat 1.1-dev) 2014-09-11T17:36:14Z schoppenhauer quit (Quit: Adé) 2014-09-11T17:36:32Z schoppenhauer joined #lisp 2014-09-11T17:37:11Z EvW joined #lisp 2014-09-11T17:38:04Z bit` joined #lisp 2014-09-11T17:38:32Z Aiwass left #lisp 2014-09-11T17:39:08Z kami joined #lisp 2014-09-11T17:39:21Z kami: Hello #lisp 2014-09-11T17:39:32Z Soft joined #lisp 2014-09-11T17:40:49Z sdemarre quit (Ping timeout: 267 seconds) 2014-09-11T17:41:13Z pjb: Hello kami 2014-09-11T17:43:45Z hiroakip quit (Ping timeout: 260 seconds) 2014-09-11T17:46:02Z innertracks quit (Quit: innertracks) 2014-09-11T17:48:53Z murftown: kami: hi 2014-09-11T17:51:21Z izirku quit 2014-09-11T17:52:22Z Jesin quit (Ping timeout: 245 seconds) 2014-09-11T17:55:50Z Jesin joined #lisp 2014-09-11T17:56:49Z namespace is now known as namespace|sleep 2014-09-11T17:57:15Z nipra quit (Quit: Leaving.) 2014-09-11T17:57:38Z Jesin quit (Max SendQ exceeded) 2014-09-11T17:58:28Z Jesin joined #lisp 2014-09-11T17:58:54Z sdemarre joined #lisp 2014-09-11T17:59:46Z kushal quit (Quit: Leaving) 2014-09-11T18:00:09Z vlnx quit (Read error: Connection reset by peer) 2014-09-11T18:01:56Z vlnx joined #lisp 2014-09-11T18:03:22Z innertracks joined #lisp 2014-09-11T18:04:37Z innertracks quit (Client Quit) 2014-09-11T18:05:04Z husker joined #lisp 2014-09-11T18:05:18Z innertracks joined #lisp 2014-09-11T18:10:42Z vaporatorius joined #lisp 2014-09-11T18:12:01Z zacharias joined #lisp 2014-09-11T18:17:27Z ndrei quit (Ping timeout: 268 seconds) 2014-09-11T18:21:32Z Amaan quit (Quit: Connection closed for inactivity) 2014-09-11T18:21:55Z nipra joined #lisp 2014-09-11T18:22:17Z Mon_Ouie quit (Ping timeout: 245 seconds) 2014-09-11T18:22:58Z shka: guys 2014-09-11T18:23:05Z shka: i have a stupid question 2014-09-11T18:23:28Z shka: i have a list (1 2 3 4 5 6) 2014-09-11T18:23:42Z shka: now i do (cons '+ to that list) 2014-09-11T18:23:45Z shka: and then 2014-09-11T18:23:53Z oGMo: take the sum? reduce 2014-09-11T18:23:57Z shka: (apply (car list) (cdr list)) 2014-09-11T18:24:01Z shka: oGMo: ok, ok 2014-09-11T18:24:05Z shka: i know 2014-09-11T18:24:19Z oGMo: you could (apply #'+ list) too in this case, but reduce is good to know 2014-09-11T18:24:23Z shka: what i dont know, if the code like the above is interpreted? 2014-09-11T18:24:39Z mood: shka: That depends on the implementation you're using 2014-09-11T18:24:41Z oGMo: utterly depends 2014-09-11T18:24:48Z shka: ah, ok 2014-09-11T18:24:51Z mood: SBCL usually compiles everything 2014-09-11T18:25:14Z oGMo: and probably irrelevant, since #'+ and #'apply are compiled, and the list is already read 2014-09-11T18:25:36Z shka: and what if the actual (car list) is not known on the compile time? 2014-09-11T18:25:58Z oGMo: it looks it up 2014-09-11T18:26:08Z shka: ok 2014-09-11T18:26:11Z shka: thanks 2014-09-11T18:26:47Z oGMo: see SYMBOL-FUNCTION, though of course the implementation details vary 2014-09-11T18:28:00Z pjb: it doesn't matter if it's interpreted or compiled. What could matter, is (time (apply (car list) (cdr list))) and whether it's fast enough for you. 2014-09-11T18:28:19Z Grue`: wouldn't it fail if the list is very long? 2014-09-11T18:28:34Z pjb: Grue`: in some cases, but I think in this case it would work. 2014-09-11T18:28:52Z pjb: But this is indeed a reason why you'd rather want to use reduce. 2014-09-11T18:28:53Z Grue`: well if it's literally (1 2 3 4 5 6) 2014-09-11T18:29:26Z shka: pjb: this was example 2014-09-11T18:30:51Z pjb: The thing is that + is probably defined with (defun + (&rest args) …) and then when (apply (function +) list), there is never really more than one argument passed to the function. But it's a special case, it an implementation could be stricter indeed. (It could try to optimize the call by really passing the arguments directly, and then the call-arguments-limit could be hit). 2014-09-11T18:31:45Z matko joined #lisp 2014-09-11T18:32:22Z slyrus quit (Ping timeout: 240 seconds) 2014-09-11T18:33:24Z ndrei joined #lisp 2014-09-11T18:33:41Z Bike: i think shka was probably asking more about how apply is implemented and other conceptual issues, rather than being concerned about optimization per se? 2014-09-11T18:34:14Z shka: Bike: that's correct 2014-09-11T18:34:28Z jasom: when used as a function designator, #'+ will resolve to a function at compile time, '+ will resolve at run-time, right? 2014-09-11T18:34:36Z mishoo quit (Quit: (save-lisp-and-die)) 2014-09-11T18:34:52Z pjb: shka: notice that APPLY is more primitive than FUNCALL (you can implement FUNCALL with APPLY, but you cannot implement APPLY with FUNCALL (without adding a layer on the metalinguistical tower)). 2014-09-11T18:35:04Z josemanuel joined #lisp 2014-09-11T18:35:06Z shka: pjb: i know 2014-09-11T18:35:10Z zlrth quit (Ping timeout: 246 seconds) 2014-09-11T18:35:16Z shka: that's why i ask about apply 2014-09-11T18:35:18Z ehu joined #lisp 2014-09-11T18:35:23Z Bike: jasom: i think so, though the latter could be optimized of course 2014-09-11T18:35:26Z Grue`: jasom: '+ is global environment, #'+ is local environment 2014-09-11T18:35:31Z jegaxd26 joined #lisp 2014-09-11T18:35:32Z jasom: oh I'm wrong... Grue is right 2014-09-11T18:35:58Z jasom: but in the case when the function is global, then it's no different (other than certain requirements about when DEFUNs can be redefined) 2014-09-11T18:36:26Z nipra quit (Read error: Connection reset by peer) 2014-09-11T18:36:37Z shka: Grue`: thanks you just let me understand why 'local-function does not work 2014-09-11T18:36:38Z jasom: but when there is a lexical function definition, then #' can be resolved at compile time 2014-09-11T18:36:45Z shka: it is simple once you know 2014-09-11T18:36:47Z mishoo joined #lisp 2014-09-11T18:36:48Z Mon_Ouie joined #lisp 2014-09-11T18:37:22Z jasom: shka: well when you think about how it has to work, apply is getting passed a symbol, and it (as a function) can't access the lexical environment it was called from 2014-09-11T18:38:13Z hiroakip joined #lisp 2014-09-11T18:38:40Z shka: eeeh 2014-09-11T18:38:50Z shka: i really need to read lisp in small pieces 2014-09-11T18:39:27Z jasom: shka: I don't think that will help you; it has a fairly strong scheme bent to it. 2014-09-11T18:39:54Z shka: hm, ok 2014-09-11T18:40:18Z jasom: shka: (function X) resolves to the function named X in the current environment (#' is a shortcut for function) 2014-09-11T18:40:29Z shka: right 2014-09-11T18:40:31Z ndrei quit (Ping timeout: 278 seconds) 2014-09-11T18:40:44Z jasom: (quote X) resolves to X 2014-09-11T18:41:06Z shka: yeah, but in what context? 2014-09-11T18:41:19Z jasom: shka: it's not evaluated, so it doesn't matter 2014-09-11T18:41:30Z shka: i can eval it 2014-09-11T18:41:31Z innertracks quit (Quit: innertracks) 2014-09-11T18:41:42Z shka: but right 2014-09-11T18:41:46Z Bike: "resolves to" is the evaluator, see. 2014-09-11T18:41:48Z shka: it makes no sense 2014-09-11T18:41:48Z jasom: shka: when you eval it, it's in whatever context you eval it, obviously 2014-09-11T18:41:58Z shka: yeah 2014-09-11T18:42:12Z jasom: (eval '(quote x)) => 2014-09-11T18:42:36Z shka: ok ok 2014-09-11T18:42:38Z shka: i see 2014-09-11T18:42:47Z Bike: function is more complicated than quote, it does something with the argument and looks it up in the environment. 2014-09-11T18:43:02Z shka: i see 2014-09-11T18:43:03Z Bike: (eval '(function foo)) is actually more like (eval 'foo) than anything 2014-09-11T18:43:19Z jasom: so let's say you wanted to write myapply that is exactly like apply, but will always pass a function to apply (never a symbol) 2014-09-11T18:43:21Z shka: it gets funcallable object 2014-09-11T18:43:39Z JokesOnYou77 joined #lisp 2014-09-11T18:44:42Z zlrth joined #lisp 2014-09-11T18:45:26Z jasom: If you are given a symbol, the only sane environment you can use to resolve it to a function is the global environment, since you have no way of getting the local environment from somewhere else 2014-09-11T18:46:02Z shka: jasom: yeah i see where are you going 2014-09-11T18:46:16Z shka: but i can give it funcallable object 2014-09-11T18:46:36Z Bike: a function is a thing in itself, it doesn't depend on the environment it's called in. 2014-09-11T18:46:39Z jasom: shka: right 2014-09-11T18:46:41Z pjb: jasom: Grue`: the point for (quote +) vs. (function +) is that when it's cl:+ it cannot make a difference because you cannot fbind locally cl:+. 2014-09-11T18:46:45Z pjb: cf 11.1.2.1.2 2014-09-11T18:46:47Z Bike: if you write a quick scheme evaluator (this is a good idea) this should be pretty clear. 2014-09-11T18:47:10Z Bike: (ignoring dynamic bindings for the moment) 2014-09-11T18:47:19Z pjb: Therefore the implementation can generate the same code for both. 2014-09-11T18:47:19Z normanrichards joined #lisp 2014-09-11T18:47:23Z jasom: pjb: right, well "...then it's no different (other than certain requirements about when DEFUNs can be redefined)" 2014-09-11T18:48:00Z jasom: pjb: but that's a distinction from 'my-happy-function and #'my-happy-function 2014-09-11T18:48:02Z pjb: A better question would actually be about what kind of opencoding the implementation does. 2014-09-11T18:48:08Z pjb: jasom: yes. 2014-09-11T18:48:30Z pjb: Don't use CL symbols for those examples, since things are different for them. 2014-09-11T18:48:30Z Bike: are the packaging rules really important enough to mention for this 2014-09-11T18:48:30Z jasom: pjb: and the specific question was "what if the compiler doesn't know what the function is ahead of time" 2014-09-11T18:48:42Z jasom: Bike: not at this point 2014-09-11T18:48:50Z pjb: A CL implementation can optimize CL operators more than user operators (if it wishes). 2014-09-11T18:49:39Z pjb: shka: probably the best would be to type M-. at cl:apply with various implementations. 2014-09-11T18:49:41Z jasom: shka: just remember that #'+ is a FUNCTION after evaluation and '+ is a SYMBOL after evaluation. 2014-09-11T18:50:15Z shka: jasom: ofc 2014-09-11T18:50:15Z jasom: shka: for convienience, built-in functions take something called a "function designator" that can either be a function, or the name of a function in the global environment 2014-09-11T18:50:48Z jasom: http://www.lispworks.com/documentation/HyperSpec/Body/26_glo_f.htm#function_designator 2014-09-11T18:51:15Z dkcl` joined #lisp 2014-09-11T18:51:45Z jasom: shka: one subtlety; a function desginator technically must either be a function, or a symbol naming a function in the global environment (It matters later because some function names aren't symbols, but don't worry about that for now) 2014-09-11T18:52:06Z Petit_Dejeuner: "some function names aren't symbols" uh 2014-09-11T18:52:11Z Petit_Dejeuner: literals? 2014-09-11T18:52:18Z jasom: Petit_Dejeuner: (defun (setf foo) ...) 2014-09-11T18:52:26Z Grue`: techically the + above could've been not cl:+, but rather a shadowed + from another package 2014-09-11T18:52:55Z jasom: Petit_Dejeuner: see function name about 4 items down from function designator in the glossary link I posted 2014-09-11T18:53:42Z dkcl quit (Ping timeout: 246 seconds) 2014-09-11T18:55:29Z Petit_Dejeuner: So, that's how setf functions work? They're tied to the entire form? 2014-09-11T18:55:57Z jasom: Petit_Dejeuner: that's only setf functions; there are other ways to do setf expansions. and not the entire form, just a single symbol. 2014-09-11T18:56:11Z jasom: (setf foo bar) is not a legal function name 2014-09-11T18:56:59Z JokesOnYou77: I have a tangentially related question, is temporary function like a lambda (or even a labels function) slower than a defun function? 2014-09-11T18:57:13Z jasom: JokesOnYou77: depends on the implementation 2014-09-11T18:57:20Z Petit_Dejeuner: I thought they wre usually compiled too. 2014-09-11T18:57:41Z innertracks joined #lisp 2014-09-11T18:58:08Z jasom: JokesOnYou77: they are usually compiled. When the compiler cannot determine which function will be called at a function call point, that obviously restricts certain optimizations (inlining is clearly impossible, for example) 2014-09-11T18:58:18Z JokesOnYou77: So a "good" implementation will declaim a lambda, or something similar? 2014-09-11T18:58:24Z jasom: JokesOnYou77: huh? 2014-09-11T18:58:48Z JokesOnYou77: If i remember correctly declaim precompiles a function 2014-09-11T18:59:05Z jasom: JokesOnYou77: No. 2014-09-11T18:59:24Z gumbo joined #lisp 2014-09-11T18:59:29Z jasom: clhs declaim 2014-09-11T18:59:29Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_declai.htm 2014-09-11T19:00:06Z Grue`: cool, i just discovered it's possible to (flet (((setf foo) ... 2014-09-11T19:00:11Z pjb: JokesOnYou77: were did you get the idea that declaim did anything? 2014-09-11T19:00:20Z jasom: Grue`: http://paste.lisp.org/display/143681 2014-09-11T19:00:28Z jasom: Grue`: but don't do that 2014-09-11T19:00:40Z shka: jasom: declaim is whole another story 2014-09-11T19:00:43Z Grue`: well, defun is obvious 2014-09-11T19:00:51Z pjb: THis is wrong. a (setf f) function must take at least one argument: the new value. 2014-09-11T19:00:53Z matko quit (Ping timeout: 240 seconds) 2014-09-11T19:01:03Z jasom: pjb: Not anywhere that I could find 2014-09-11T19:01:04Z Grue`: but flet opens up some terrifying possibilities 2014-09-11T19:01:15Z pjb: (defvar *foo*) (defun (setf foo) (new-value) (setf *foo* new-value)) (defun foo () *foo*) 2014-09-11T19:01:16Z jasom: pjb: it will fail when used in a setf, but the code as I pasted is legal AFAICT 2014-09-11T19:01:18Z pjb: can be useful. 2014-09-11T19:01:37Z JokesOnYou77: Oh crap, i meant inline, sorry. 2014-09-11T19:01:46Z pjb: Grue`: not terrifying, since quite lexically scoped. 2014-09-11T19:01:52Z pjb: flet is the opposite of terrifying. 2014-09-11T19:01:56Z shka: Grue`: oh, terrifying you say? 2014-09-11T19:02:03Z shka: ;-> 2014-09-11T19:02:08Z nyef: Grue`: Combine FLET (SETF FOO) with SYMBOL-MACROLET for even more fun and games. 2014-09-11T19:02:16Z josemanuel quit (Quit: Saliendo) 2014-09-11T19:02:18Z jasom: pjb: except when you screw up your macros and rely on non-standard symbols that aren't internal-only to your package to have certain values 2014-09-11T19:03:28Z Petit_Dejeuner: Grue`, neat 2014-09-11T19:03:41Z jasom: pjb: of courrse the fact that I needed so many qualifiers to that is why common-lisp doesn't really need hygenic macros. 2014-09-11T19:05:33Z prxq joined #lisp 2014-09-11T19:05:49Z drewc: lisp-1 == hygiene please. Lisp-N .... I prefer dirty dirty macros. 2014-09-11T19:06:00Z nyef: Hello drewc. 2014-09-11T19:06:27Z drewc: nyef: hey hey! 2014-09-11T19:06:54Z Jesin quit (Quit: Leaving) 2014-09-11T19:09:17Z husker quit (Quit: husker) 2014-09-11T19:10:36Z jasom: drewc: that's wrong 2014-09-11T19:10:52Z normanrichards quit 2014-09-11T19:11:06Z jasom: drewc: Lisp-N has flet, so the N namespace is only a marginal gain in hygiene 2014-09-11T19:11:15Z nyef: jasom: No, that's about right. I feel the same way as drewc. 2014-09-11T19:11:17Z drewc: jasom: my opinion, to you, is wrong? 2014-09-11T19:11:20Z jasom: drewc: it's the package system that really makes it work 2014-09-11T19:11:58Z drewc: and packages are not a namespace so are not part of the N ? news to me. 2014-09-11T19:12:01Z Grue`: the fact that you need to gensym all your functions in lisp-1 to plug the leaks is a big deal 2014-09-11T19:12:04Z jasom: drewc: fair enough 2014-09-11T19:12:25Z lifenoodles joined #lisp 2014-09-11T19:12:47Z jasom: Grue`: that's kind of meh to me, and I think that alone would not have made the schemers go to the insane levels they went to get hygienic macros to work performantly 2014-09-11T19:14:25Z drewc notes the he purposefully said 'Lisp-N' and not 'Lisp-2' in order to make a point about namespaces and not only variable/function namespaces :) 2014-09-11T19:15:17Z jasom: drewc: but a lisp-2 is a lisp-n (at least when the choices given are lisp-1 and lisp-n) 2014-09-11T19:15:26Z drewc: so is lisp-1 2014-09-11T19:15:42Z drewc: if the choice is and/or 2014-09-11T19:15:50Z nipra joined #lisp 2014-09-11T19:16:15Z drewc: a lisp-0, OTOH, is likely not a lisp-n ... 2014-09-11T19:16:19Z JokesOnYou77 quit (Ping timeout: 272 seconds) 2014-09-11T19:16:30Z AeroNotix: What about lisp-7s though? 2014-09-11T19:16:41Z drewc: wait, is N a namespace or a number? or is it a function! :P 2014-09-11T19:16:58Z jasom: But all a lisp-2 does is make the problem rare enough that you are really confused when it does happen, instead of being glaringly obvious every time you write a macro. 2014-09-11T19:17:22Z innertracks quit (Ping timeout: 245 seconds) 2014-09-11T19:17:53Z backupthrick quit (Remote host closed the connection) 2014-09-11T19:18:15Z drewc has never used a lisp-2 really, so has no idea ... (and does not feel like that debate either, so back to lisping rather than chatting about it :)) 2014-09-11T19:18:50Z Petit_Dejeuner quit (Read error: Connection timed out) 2014-09-11T19:19:44Z innertracks joined #lisp 2014-09-11T19:20:17Z backupthrick joined #lisp 2014-09-11T19:20:25Z drewc: I really hate it when classes are defined so the variable namespace binding of the class name is the class itself! <---- my going against my feelings and debating with myself over it now.... 2014-09-11T19:21:04Z wasamasa: AeroNotix: yay 2014-09-11T19:21:20Z wasamasa: AeroNotix: I'm writing a PKGBUILD for stumpwm since the one in the aur is really ugly 2014-09-11T19:21:32Z wasamasa: AeroNotix: and encountered your stripping issue \o/ 2014-09-11T19:22:42Z AeroNotix: wasamasa: SEE! 2014-09-11T19:22:45Z AeroNotix: wasamasa: I wasn't crazy 2014-09-11T19:23:00Z AeroNotix: wasamasa: https://bugs.archlinux.org/task/41739 2014-09-11T19:23:02Z wasamasa: AeroNotix: now I've just got to figure out how to make the pkgver function actually apply the version 2014-09-11T19:24:55Z gumbo quit (Quit: Saliendo) 2014-09-11T19:29:32Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-11T19:31:04Z malbertife_ quit (Ping timeout: 252 seconds) 2014-09-11T19:31:34Z wasamasa: AeroNotix: yay, managed to do that 2014-09-11T19:32:00Z wasamasa: AeroNotix: so, the only thing I'm missing is to make quicklisp behave more like python's setup.py 2014-09-11T19:32:23Z AeroNotix: wasamasa: what did you do about the symbol strippage? 2014-09-11T19:32:23Z wasamasa: AeroNotix: so that it can be tucked away somewhere in /usr/lib with one place per library 2014-09-11T19:32:31Z wasamasa: AeroNotix: I just used the !strip option 2014-09-11T19:32:50Z wasamasa: AeroNotix: and it seems to work since I no longer get the sbcl prompt 2014-09-11T19:33:00Z wasamasa: AeroNotix: and rather the usual warning when running a wm inside a wm 2014-09-11T19:33:38Z AeroNotix: wasamasa: weird for me and someone else !strip in the PKGBUILD did nothing. 2014-09-11T19:33:49Z wasamasa: AeroNotix: well, it has been supposedly fixed by now 2014-09-11T19:33:55Z AeroNotix: hm ok 2014-09-11T19:35:03Z wasamasa: weren't you the one who told me about it? 2014-09-11T19:35:22Z isoraqathedh quit (Remote host closed the connection) 2014-09-11T19:35:37Z BitPuffin quit (Ping timeout: 245 seconds) 2014-09-11T19:36:07Z AeroNotix: wasamasa: yeah 2014-09-11T19:36:13Z wasamasa: no, about the fix 2014-09-11T19:36:19Z AeroNotix: Yeah, but it wasn't working locally 2014-09-11T19:36:31Z AeroNotix: I needed to put !strip into the /etc/makepkg.conf file 2014-09-11T19:36:42Z rotty_ joined #lisp 2014-09-11T19:36:59Z gensym_ joined #lisp 2014-09-11T19:38:03Z normanrichards joined #lisp 2014-09-11T19:38:04Z impulse- joined #lisp 2014-09-11T19:38:05Z normanrichards quit (Read error: Connection reset by peer) 2014-09-11T19:38:05Z c3w` joined #lisp 2014-09-11T19:38:30Z bobbysmith0071 joined #lisp 2014-09-11T19:38:33Z normanrichards joined #lisp 2014-09-11T19:38:35Z normanrichards quit (Read error: Connection reset by peer) 2014-09-11T19:39:11Z tstc joined #lisp 2014-09-11T19:40:01Z normanrichards joined #lisp 2014-09-11T19:40:03Z nug700 joined #lisp 2014-09-11T19:40:03Z normanrichards quit (Read error: Connection reset by peer) 2014-09-11T19:40:14Z kanru quit (Ping timeout: 252 seconds) 2014-09-11T19:40:14Z gensym quit (Ping timeout: 252 seconds) 2014-09-11T19:40:14Z malglim quit (Ping timeout: 252 seconds) 2014-09-11T19:40:14Z rotty quit (Ping timeout: 252 seconds) 2014-09-11T19:40:14Z impulse quit (Ping timeout: 252 seconds) 2014-09-11T19:40:15Z bobbysmith007 quit (Ping timeout: 252 seconds) 2014-09-11T19:40:15Z Jubb quit (Ping timeout: 252 seconds) 2014-09-11T19:40:15Z Kruppe quit (Ping timeout: 252 seconds) 2014-09-11T19:40:15Z tstc` quit (Ping timeout: 252 seconds) 2014-09-11T19:40:15Z xenophon quit (Ping timeout: 252 seconds) 2014-09-11T19:40:15Z c3w quit (Ping timeout: 252 seconds) 2014-09-11T19:40:15Z H4ns quit (Remote host closed the connection) 2014-09-11T19:40:15Z malglim joined #lisp 2014-09-11T19:40:16Z xenophon joined #lisp 2014-09-11T19:40:16Z gensym_ is now known as gensym 2014-09-11T19:40:35Z normanrichards joined #lisp 2014-09-11T19:40:36Z ndrei joined #lisp 2014-09-11T19:40:38Z normanrichards quit (Read error: Connection reset by peer) 2014-09-11T19:40:42Z Jubb joined #lisp 2014-09-11T19:40:52Z Fare joined #lisp 2014-09-11T19:41:08Z hiroakip quit (Ping timeout: 276 seconds) 2014-09-11T19:43:52Z Kruppe joined #lisp 2014-09-11T19:44:16Z blakbunnie27 quit (Quit: EliteBNC free bnc service - http://elitebnc.org - be a part of the Elite!) 2014-09-11T19:45:18Z blakbunnie27 joined #lisp 2014-09-11T19:45:30Z innertracks quit (Quit: innertracks) 2014-09-11T19:47:45Z H4ns joined #lisp 2014-09-11T19:50:44Z hiroakip joined #lisp 2014-09-11T19:51:32Z przl quit (Ping timeout: 276 seconds) 2014-09-11T19:52:31Z J_Arcane2: I'm I wrong in getting the impression there aren't many CL people in Finland? 2014-09-11T19:53:40Z normanrichards joined #lisp 2014-09-11T19:53:53Z xebd` doesn't know, but now wonders: Which country has the highest density of CL people? /me wants to move there... 2014-09-11T19:54:07Z _death: Boston? 2014-09-11T19:54:11Z J_Arcane2: Other than ZenRobotics and the SB-Studio guy, I'm having trouble finding any. 2014-09-11T19:54:20Z _death: (MA) 2014-09-11T19:54:38Z xebd`: _death: That would be easy enough. No visa required for me. :D 2014-09-11T19:54:41Z Fare: if you move to sealand, you can instantly make it the highest density country on earth! 2014-09-11T19:54:52Z xebd`: Fare: Hahaha! Well played! 2014-09-11T19:54:56Z gendl: J_Arcane2: Marti Halminen 2014-09-11T19:55:30Z Fare: Boston has much higher Lisper density than NYC... but NYC still has a much larger Lisp meeting. 2014-09-11T19:56:16Z logand```: nyef: thanks for reporting the cl-olefs bug; you are right, there is not much documentation; but i dont think anything more than the http://logand.com/sw/cl-olefs.html is really needed, because it's all documented by Microsoft 2014-09-11T19:56:54Z logand```: the big problem is understanding Microsoft documentation 2014-09-11T19:57:02Z jkaye quit (Remote host closed the connection) 2014-09-11T19:57:12Z murftown quit (Quit: murftown) 2014-09-11T19:57:37Z jkaye joined #lisp 2014-09-11T19:58:01Z xebd`: Fare: I'm in the middle of the inland prairie... so either one would be a step in the right direction. I figured that .FR or .DE had the most Lisp representation. (Does ITA sway the statistics that much?) 2014-09-11T19:58:29Z Fare: ITA is dead. 2014-09-11T19:58:40Z Fare: eaten by Google. 2014-09-11T19:58:45Z xebd`: Fare: Hadn't heard much after the 2011(?) borging by the GOOG. 2014-09-11T19:58:52Z Fare: QPX lives on in Google Flights 2014-09-11T19:58:57Z innertracks joined #lisp 2014-09-11T19:59:08Z Fare: QRes is cancelled, with one lisp hacker left for life support 2014-09-11T19:59:16Z xebd`: Ouch. 2014-09-11T19:59:20Z innertracks quit (Client Quit) 2014-09-11T19:59:30Z sdemarre quit (Ping timeout: 246 seconds) 2014-09-11T19:59:52Z J_Arcane2: Seems to be a few names on the cl-user.net index, but they kinda get lumped in with the rest of the Nordics. 2014-09-11T20:00:00Z Fare: unless someone buys it back... it will die for good in a couple years or so 2014-09-11T20:00:21Z nyef: logand```: Updated locally. I'm seeing 11 STYLE-WARNINGs from the build, and undefined types DIFF-CELL and PHRUNS. 2014-09-11T20:01:24Z nyef: ... And it runs on the input file that blew up before. Now I "just" need to see if the output is correct. 2014-09-11T20:01:41Z jkaye quit (Remote host closed the connection) 2014-09-11T20:01:47Z Karl_Dscc quit (Remote host closed the connection) 2014-09-11T20:01:53Z jkaye joined #lisp 2014-09-11T20:02:18Z J_Arcane2: The impression I get from job listings is that mostly nonLisp FP languages seem to be popular (esp. Erlang), with a small and growing Clojure scene in the early stages of infecting the humongous local Java footprint. 2014-09-11T20:02:52Z _death: Fare: I see lots of SBCL work done by dougk.. is it related to ITA/Google acquisition? 2014-09-11T20:03:03Z Fare: yes 2014-09-11T20:03:07Z Fare: dougk works on QPX 2014-09-11T20:03:22Z Fare: QPX is still hiring lisp programmers, btw 2014-09-11T20:04:18Z nug700_ joined #lisp 2014-09-11T20:04:21Z Fare: if you're an independent, you can choose your own tool 2014-09-11T20:04:58Z J_Arcane2: I would honestly rather go independent, but The Nordic Safety Net tends to not apply to the self-employed ... 2014-09-11T20:05:37Z Fare: go independent... on the black market 2014-09-11T20:05:43Z Fare: or based on a different country 2014-09-11T20:06:24Z shka: ... so now lisp is in criminal underground ;-) 2014-09-11T20:06:40Z J_Arcane2: :D 2014-09-11T20:06:51Z J_Arcane2: Well, it's better than being a virus like Clojure ... ;) 2014-09-11T20:06:54Z nug700 quit (Ping timeout: 255 seconds) 2014-09-11T20:07:07Z shka: J_Arcane2: i kinda like what clojure is doing 2014-09-11T20:07:26Z shka: i think it will grow big rather soon 2014-09-11T20:07:43Z _death: I still have lots of freedom to write lisp @ work.. even now that I work in a not-so-small company 2014-09-11T20:07:51Z J_Arcane2: shka: I like the emphasis on immutability and FP. As a Lisp however I found it a pale shadow that made me want to actively claw my eyes out. 2014-09-11T20:08:07Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-11T20:08:21Z erikc quit (Quit: erikc) 2014-09-11T20:08:31Z Ven joined #lisp 2014-09-11T20:08:33Z Ven quit (Client Quit) 2014-09-11T20:09:05Z J_Arcane2: Also, I do like the #() syntax for quickie anonymous functions 2014-09-11T20:10:48Z shka: J_Arcane2: we need something that will bring something lispy back to the mainstream 2014-09-11T20:11:00Z nyef: logand```: So, two problems with the output from this file, both of which clearly call for some digging on my part: First, it's only reporting two columns worth of data for most of the rows. And second, the character encoding seems to be incorrect. 2014-09-11T20:11:02Z shka: it may be clojure 2014-09-11T20:13:00Z J_Arcane2: shka: In theory, maybe. It's definitely playing better to a Java dominated world like here in Finland. It's v. immature still though, and as a Lisp, so many things are just hacked together and don't actually work like Lisp that I hesitate to even call it one. 2014-09-11T20:13:52Z logand```: nyef: DIFF-Cell is typo, I'll fix it 2014-09-11T20:14:09Z logand```: phruns i need to read the spec 2014-09-11T20:14:36Z J_Arcane2: I'm holding out hope that D-Wave will influence future quantum computing uptake of CL. ;) 2014-09-11T20:14:37Z logand```: i also noticed that it doesnt show data following the hidden column 2014-09-11T20:14:52Z logand```: i need to study ms spec, when i find time 2014-09-11T20:15:14Z nyef: Finding time is always the trick, isn't it? 2014-09-11T20:15:17Z J_Arcane2: (but probably, if I want a job in something like a Lisp I don't create myself, I'm gonna have to swallow my rage and do Clojure) 2014-09-11T20:15:25Z logand```: nyef: re char encoding, which row/col? 2014-09-11T20:16:39Z shka: logand```: ms specs are terrible 2014-09-11T20:17:33Z nyef: logand```: Given that I can't share the data file, how is that relevant? 2014-09-11T20:17:39Z logand```: shka: yeah, better than no spec at all though :-) 2014-09-11T20:17:57Z shka: J_Arcane2: i think that at some point people will realize that common lisp is simply better than clojure 2014-09-11T20:18:00Z logand```: nyef: ah, i thought it was the file dim reported 2014-09-11T20:18:10Z shka: and if clojure will get big, lisp won't be so alien 2014-09-11T20:18:31Z shka: logand```: sometimes, i'm under impression that no docs at all is still better than ms docs 2014-09-11T20:18:36Z logand```: nyef: could you create a small spreadsheet which would not be secret? 2014-09-11T20:18:44Z shka: that are there, but do not explain anything 2014-09-11T20:18:47Z shka: ah, yes 2014-09-11T20:18:49Z nyef: I'm not sure, TBH. 2014-09-11T20:19:01Z logand```: ok, no problem 2014-09-11T20:19:04Z nyef: The issue is that the text encoding is Mac OS Roman. 2014-09-11T20:19:18Z shka: and ofc are scattered around few web sites 2014-09-11T20:19:20Z logand```: hmm i dont know what that is 2014-09-11T20:19:38Z nyef: SBCL knows it as :macintosh. 2014-09-11T20:19:45Z shka: and sometimes code presented as any example is simply wrong 2014-09-11T20:19:46Z nyef: (With sufficiently-recent SBCL, that is.) 2014-09-11T20:19:51Z izirku joined #lisp 2014-09-11T20:20:02Z shka works with winapi lately 2014-09-11T20:20:17Z shka: and this is very, very painful 2014-09-11T20:20:20Z J_Arcane2: shka: Heh. There's something to that, I think. My first love was Racket (and I still think it shows strong potential to be a "Python of Lisp"), so I was initially put off by some of the uglier parts of CL. But after forcing myself to immerse in Clojure, I find CL positively refreshing in its sanity by comparison. 2014-09-11T20:20:43Z InfusoElAmbulant joined #lisp 2014-09-11T20:21:46Z shka: J_Arcane2: meh, common lisp is a bit strange in few places when compared to scheme 2014-09-11T20:21:59Z shka: but nothing that should scare programmer away 2014-09-11T20:22:19Z shka: ok, goodnight all 2014-09-11T20:22:35Z J_Arcane2: shka: Yeah, nothing scary, just clashed with personal taste. 2014-09-11T20:22:56Z shka quit (Quit: WeeChat 1.0) 2014-09-11T20:23:20Z logand```: nyef: my understanding of xls spec so far is that it has 1 byte (ascii?) strings, 2 byte strings and something called unicode; not sure how would that fit with misc encodigs; another ms mistery :-) 2014-09-11T20:24:28Z munksgaard joined #lisp 2014-09-11T20:24:38Z logand```: so far i simply call code-char on the (1 or 2 byte) number I read from xls file 2014-09-11T20:26:34Z logand```: how does lisp know what char corresponds to that number? i suppose the encoding info should be written somewhere in xls but if you know it's mac roman, wouldn't binding the external encoding for code-char be enough for your spreadsheet? 2014-09-11T20:28:12Z nyef: The code-char / char-code doesn't necessarily resemble the external encoding at all. 2014-09-11T20:29:34Z nyef: I suspect that the correct approach is to read up the bare octets into a vector and then use something like sb-ext:octets-to-string (or there's a similar one for... babel maybe?) 2014-09-11T20:29:47Z drewc: babel 2014-09-11T20:29:52Z AeroNotix: flexi-streams has it 2014-09-11T20:29:56Z drewc: that is what I use for such things 2014-09-11T20:30:05Z drewc: or flexi-streams yeah 2014-09-11T20:30:24Z nyef: Of course, again, Mac OS Roman is rarely supported. 2014-09-11T20:30:33Z AeroNotix: Apart from "lol its faster" what's the difference between flexi-streams and babel? 2014-09-11T20:30:40Z drewc: it depends on if it is a stream or a string or .. nah it doesn't 2014-09-11T20:30:49Z nyef: I need to go find food, I'll be back in a while. 2014-09-11T20:31:17Z hiroakip joined #lisp 2014-09-11T20:31:39Z logand```: yeah, but that doesnt seem to be good fit for xls 2014-09-11T20:32:12Z logand```: char <-> code must be dependent on selected encoding, no? 2014-09-11T20:32:36Z Fare: J_Arcane2, I like clojure. It doesn't try to do everything, but to do what it does well, and succeeds. Unlike CL that tries to do everything, and fails. 2014-09-11T20:32:40Z drewc: AeroNotix: there is a lot of/almost no difference, so it depends on what your requirements are really. 2014-09-11T20:33:04Z Fare: Racket, does manage to do everything, but with its own academic priorities 2014-09-11T20:33:18Z drewc: Racket ... I tried, I tried. 2014-09-11T20:33:38Z drewc: due to Fare's suggestion actually... 2014-09-11T20:34:00Z Fare: and? 2014-09-11T20:34:08Z logand```: nyef: why do you think that code-char / char-code doesnt resemble ext encoding? 2014-09-11T20:34:19Z J_Arcane2: I love Racket, but well ... I can't pretend to understand the more advanced topics. There's sort of a gap in the documentation, in a sense. 2014-09-11T20:34:33Z gravicappa quit (Remote host closed the connection) 2014-09-11T20:35:02Z drewc: Fare: well, I dropped out of high school, so the priorities do not quite align with my own so to speak. 2014-09-11T20:35:38Z drewc: Dropped out of College twice after that drop out ... so dropped out of Racket as well :P 2014-09-11T20:35:50Z J_Arcane2: Racket is in some senses two languages, a learning language that is pretty easy to pick up, and an advanced level meta-language that is intelligible only to the handful of language researchers who develop it ... 2014-09-11T20:37:23Z J_Arcane2: There is the skeleton of a fairly good middle-tier though, and I think with more development and interest it could become a solid contender, sort of the Python of Lisps (but with far better performance). 2014-09-11T20:37:33Z Px12 joined #lisp 2014-09-11T20:38:18Z Px12 quit (Remote host closed the connection) 2014-09-11T20:38:27Z drewc: actors are functions if we lexically scope them! Then we could easily do first-class continuations.... that is an interesting scheme .... we could be schemers! 2014-09-11T20:40:06Z drewc has to focus on that k because k's are fun, first class k's not so much, and is trying to be "advanced level meta" ... basically to avoid the work he has to do. 2014-09-11T20:41:50Z BitPuffin joined #lisp 2014-09-11T20:43:59Z k-stz quit (Remote host closed the connection) 2014-09-11T20:44:22Z ejbs joined #lisp 2014-09-11T20:44:49Z stacksmith: drewc: 'we could be schemers!' Isn't that a song by Lorde or something? 2014-09-11T20:45:10Z stacksmith: Oh, it's "we' 2014-09-11T20:45:18Z stacksmith: "we'll never be schemers"... 2014-09-11T20:47:01Z inklesspen: 'we could be schemers' is from Elton John 2014-09-11T20:47:48Z prxq quit (Ping timeout: 246 seconds) 2014-09-11T20:48:26Z fragamus joined #lisp 2014-09-11T20:48:37Z J_Arcane2: David Bowie: "We could be schemers ... just for one day ..." ;) 2014-09-11T20:50:15Z _snits_ joined #lisp 2014-09-11T20:50:17Z munksgaard quit (Ping timeout: 245 seconds) 2014-09-11T20:50:42Z gingerale quit (Ping timeout: 272 seconds) 2014-09-11T20:51:02Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-11T20:51:02Z snits quit (Ping timeout: 245 seconds) 2014-09-11T20:55:42Z jasom: I do miss some form of call/cc or green-threads or something of similar power in lisp 2014-09-11T20:56:09Z jasom: cl-cont works well enough for doing a lot of that, but it potentially needs to be updated every time a lisp implementation comes out with a new version... 2014-09-11T20:56:27Z J_Arcane2: It's the syntactic clarity I liked most, if not the amount of typing it required ... XD 2014-09-11T20:57:50Z TDog quit (Ping timeout: 276 seconds) 2014-09-11T20:58:02Z jasom: logand```: the functions char-code code-char are not dependent on anything except the implementation you are using; these days, most implementations use the ucs code point. 2014-09-11T20:58:23Z araujo quit (Ping timeout: 240 seconds) 2014-09-11T20:59:06Z slyrus joined #lisp 2014-09-11T20:59:16Z jasom: logand```: so unless your external encoding is utf-32, then it won't resemble the external encoding at all (unless you are using utf-8 or iso-8859-1 then respectively the first 127 and 256 codes will match) 2014-09-11T21:00:46Z logand```: say i have a byte 234, it clearly must be different char for :macintosh and :latin1 encodings, or am i missing something? 2014-09-11T21:01:06Z jasom: logand```: yes, but char-code and code-char are unrelated to external formats in lisp 2014-09-11T21:01:09Z mishoo quit (Ping timeout: 260 seconds) 2014-09-11T21:01:21Z drewc: stacksmith: I say we could be schemers because me head is not limited to 6 characters .... and not all uppercase .... but SCHEMERS or one person SCHEMER ... like an Actor only not an act! 2014-09-11T21:01:36Z jasom: logand```: it is convienient to assign a number to each character for an internal representation; that's all that code-char and char-code convert to/from 2014-09-11T21:01:50Z drewc: jasom: I use monads for call/cc 2014-09-11T21:01:58Z logand```: jasom: i dont understand, how does it know which char 234 represents when not due to encoding? 2014-09-11T21:02:21Z jasom: logand```: your implementation will pick a number for each character. The standard doesn't define what that number is. 2014-09-11T21:02:38Z drewc: jasom: https://github.com/drewc/ftw/blob/master/dispatcher/monads.lisp#L113 <--- a simple implementation 2014-09-11T21:02:46Z logand```: i see what you mean; so how do i solve my problem? 2014-09-11T21:03:02Z jasom: logand```: 1 sec, let me scroll up to see your problem 2014-09-11T21:03:54Z logand```: my problem is, i have a number, and i need to convert it to char; that number is not the char-code internal stuff 2014-09-11T21:03:55Z drewc: I used to use UCW's Arnesi based CL+call/cc ... but now simply prefer the monadic approach, and of course delimited only 2014-09-11T21:04:09Z jasom: logand```: where did the number come from? 2014-09-11T21:04:16Z logand```: from xlx 2014-09-11T21:04:22Z logand```: sorry xls file 2014-09-11T21:04:33Z drewc: which is in what encoding? 2014-09-11T21:04:37Z jasom: logand```: character encodings are not numbers <-> characters, they are byte-sequences <-> characters (multibyte encodings) 2014-09-11T21:04:50Z jasom: logand```: for Microsoft "Unicode" is UTF-16 2014-09-11T21:05:15Z jasom: xls or xlsx? 2014-09-11T21:05:26Z drewc: 16 stands for bits and bytes! :P 2014-09-11T21:05:31Z mrSpec joined #lisp 2014-09-11T21:06:03Z normanrichards quit 2014-09-11T21:06:24Z logand```: jasom: yes utf-16 for two byte chars 2014-09-11T21:06:48Z logand```: there are also 1 byte chars, which i'm not sure what encoding the are atm 2014-09-11T21:07:06Z logand```: and they also switch freely between the two 2014-09-11T21:07:23Z drewc: jasom: you can see the details of the monad/continutation in my docs here : http://drewc.org/interface/monads.html#sec-7 2014-09-11T21:07:25Z jasom: logand```: utf-16 is not a fixed-length encoding, it could be either 2 or 4 bytes per character 2014-09-11T21:07:29Z logand```: and there is also wide chars, i assume those are utf-16 too 2014-09-11T21:07:51Z jasom: logand```: can you give me the hexdump of a sample string? 2014-09-11T21:08:11Z logand```: jasom: as far as i understand the xls spec it is either 1 or 2 bytes per char 2014-09-11T21:08:24Z jasom: wchar_t in MS land again is strings of 2-byte codes, which represent either 1 or 1/2 characters 2014-09-11T21:09:07Z jasom: MS standardized on UCS back when everything fit in 16 bits and has been paying the price ever since. 2014-09-11T21:09:19Z typhonic quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-11T21:09:48Z jasom: if you have a non-wide character (1 byte) then you need the code-page; for the most part you can get away with assuming page 1252 2014-09-11T21:11:04Z logand```: are you sure 2 byte code can represent 1/2 char? 2014-09-11T21:11:30Z jasom: logand```: yes; it's called a surrogate pair 2014-09-11T21:11:46Z jasom: http://en.wikipedia.org/wiki/UTF-16 2014-09-11T21:11:54Z logand```: but doesnt ms assume everything fits in 2 bytes? 2014-09-11T21:12:00Z jasom: logand```: sort-of 2014-09-11T21:12:31Z drewc: jasom: I recall Oracle being bad as well for such things .. I was tasked with an oracle->C->Lisp project... really fun until Oracle decides it is not. 2014-09-11T21:12:35Z jasom: logand```: before 1996, unicode was only 16 bits, so MS standardized on 2-byte characers. Then they expanded it to 24 bits, and MS had to hack that back into their support 2014-09-11T21:13:05Z Ralt: hi 2014-09-11T21:13:05Z logand```: ok so you seem to suggest that when xls record says it contains string with n chars, i need to detect those 1/2 chars are read more of those half 2 bytes accordingly 2014-09-11T21:13:10Z Ralt: I have an issue with a restas-based application I've built using buildapp 2014-09-11T21:13:29Z Ralt: it compiles fine, runs fine when I run the spa::main function from the repl 2014-09-11T21:13:35Z Ralt: but from the built lisp image, the binary runs, but returns immediately 2014-09-11T21:13:41Z jasom: logand```: the correct thing to do is take that string with N chars, put it in a byte-vector (with 2N bytes) and then use babel to convert it to a string. 2014-09-11T21:13:42Z Ralt: so... no server is up 2014-09-11T21:13:49Z Ralt: restas is based on hunchentoot 2014-09-11T21:14:09Z jasom: logand```: if you convert an entire string at once, then the encoding/decoding library will do all that hard work for you. 2014-09-11T21:14:50Z logand```: jasom: with 2n bytes? you just said that some chars can be more than 2 bytes long 2014-09-11T21:15:18Z jasom: logand```: if MS says it's N wchars, then it is 2N bytes. It may not be N characters once you convert it to a lisp string though. 2014-09-11T21:15:45Z kuzy000_ quit (Ping timeout: 255 seconds) 2014-09-11T21:15:47Z jasom: what MS calls a character isn't really a character, it's a byte, what MS calls a wchar isn't really a character, its 2 bytes 2014-09-11T21:16:04Z logand```: yeah but xls has a brilliant feature called continuation record where they split strings and even can switch between 1 and 2 bytes representation; fun 2014-09-11T21:16:36Z logand```: jasom: ok that sounds plausible :-) 2014-09-11T21:16:41Z jasom: logand```: oh... I would try to convert each continuation record separately (then you can handle the differing representation) 2014-09-11T21:17:08Z jasom: logand```: and you can add a condition to handle the (hopefully rare) case that a a record was split in the middle of a surrogate pair 2014-09-11T21:17:13Z logand```: hmm i was hoping to simply collect the chars and coerce to string 2014-09-11T21:17:35Z jasom: logand```: that's not how character encodings work 2014-09-11T21:17:48Z schaueho_ joined #lisp 2014-09-11T21:18:39Z logand```: i am not sure, do you suggest there are no characters? 2014-09-11T21:18:44Z jasom: logand```: http://www.joelonsoftware.com/articles/Unicode.html <-- that's still a decent introduction to the problem, though there are simplifications and things that are a bit out of date and opinions I disagree with. 2014-09-11T21:19:02Z jasom: logand```: there are no characters in a .xls file, only bytes. Your job is to turn them into characters. Good Luck. 2014-09-11T21:19:22Z schaueho quit (Ping timeout: 268 seconds) 2014-09-11T21:19:39Z logand```: i think i understand the basics but i dont think that it's exactly rellevant to the xls strings 2014-09-11T21:19:41Z logand```: not sure 2014-09-11T21:20:05Z logand```: jasom: thanks for help, now i just need to think more:-) 2014-09-11T21:20:18Z jasom: logand```: does the 1-byte representation include a code-page in xls? 2014-09-11T21:20:33Z malbertife joined #lisp 2014-09-11T21:20:36Z logand```: jasom: that i dont know yet 2014-09-11T21:20:47Z drmeister quit (Remote host closed the connection) 2014-09-11T21:20:50Z logand```: at least i dont know where to find it 2014-09-11T21:21:50Z jasom: logand```: well 1252 is overwhelmingly the most popular, so you can start out by assuming that until you find it 2014-09-11T21:22:04Z jasom: http://en.wikipedia.org/wiki/Windows-1252 2014-09-11T21:22:28Z jasom: also, if you find a 1252 in a .xls file that looks like it's where the codepage should be, that's a strong hint you've found it. 2014-09-11T21:22:29Z logand```: jasom: thank you very much! i need to sleep over it now :-) good night 2014-09-11T21:26:57Z malbertife quit (Ping timeout: 264 seconds) 2014-09-11T21:27:42Z munksgaard joined #lisp 2014-09-11T21:29:58Z malice quit (Ping timeout: 272 seconds) 2014-09-11T21:31:46Z drmeister joined #lisp 2014-09-11T21:34:47Z kami quit (Ping timeout: 245 seconds) 2014-09-11T21:37:59Z DGASAU quit (Remote host closed the connection) 2014-09-11T21:38:56Z jtza8 quit (Remote host closed the connection) 2014-09-11T21:39:22Z DGASAU joined #lisp 2014-09-11T21:40:44Z hiroakip quit (Ping timeout: 272 seconds) 2014-09-11T21:43:01Z malice joined #lisp 2014-09-11T21:46:11Z whmark quit (Remote host closed the connection) 2014-09-11T21:46:35Z drmeister: oGMo: I thought I fixed the fast-io package a few days ago but I go into SLIME with the latest SBCL and when I say (require 'fast-io) I get: ASDF could not load fast-io because Error while trying to load definition for system static-vectors from pathname /Users/meister/.local/share/common-lisp/source/static-vectors/static-vectors.asd: Component :CFFI-GROVEL not found, required by NIL. 2014-09-11T21:46:59Z drmeister: Sorry, you fixed the fast-io package and I pulled the latest version. 2014-09-11T21:47:51Z oGMo: drmeister: err, hrm 2014-09-11T21:48:50Z oGMo: i thought it loaded the other day as well 2014-09-11T21:50:25Z drmeister: My static-vectors.asd lists :cffi-grovel as a dependency of the static-vectors library and static-vectors is a dependency of fast-io and fast-io a dep. of cl-conspack. I had cl-conspack working - I was running tests on it. 2014-09-11T21:50:27Z whmark joined #lisp 2014-09-11T21:50:45Z drmeister: Could you remind me what change you made that got it to work? 2014-09-11T21:50:59Z oGMo: yeah look in fast-io.asd and make sure it has *features* stuff there ;) 2014-09-11T21:51:42Z oGMo: (which i realize should probably be pushnew, and am changing, but that shouldn't change anything) 2014-09-11T21:52:40Z munksgaard quit (Ping timeout: 268 seconds) 2014-09-11T21:53:01Z oGMo: if you have :fast-io-sv in *features*, you probably have something like :sbcl, :ccl, etc in your *features* .. if you don't have :fast-io, you have an old version 2014-09-11T21:53:08Z drmeister: My (up to date, just checked) fast-io.asd does have *features* stuff in it: https://gist.github.com/drmeister/320b8e64c62c155b076e 2014-09-11T21:54:30Z Bike: so you still have :ecl in features? 2014-09-11T21:54:32Z oGMo: err, do you set :ECL? 2014-09-11T21:54:34Z Bike: cos that would be it. 2014-09-11T21:54:35Z oGMo: ha 2014-09-11T21:55:03Z drmeister: Oh, I was doing this from SBCL. 2014-09-11T21:55:03Z sytse quit (Ping timeout: 272 seconds) 2014-09-11T21:55:19Z oGMo: drmeister: oh, well, sbcl supports static-vectors, so 2014-09-11T21:55:27Z oGMo: quickload to victory 2014-09-11T21:56:38Z slyrus_ joined #lisp 2014-09-11T21:56:43Z sytse joined #lisp 2014-09-11T21:56:59Z Gavekort quit (Ping timeout: 268 seconds) 2014-09-11T21:57:15Z Gavekort joined #lisp 2014-09-11T21:58:44Z atgreen joined #lisp 2014-09-11T21:58:56Z slyrus quit (Ping timeout: 276 seconds) 2014-09-11T21:59:09Z slyrus_ is now known as slyrus 2014-09-11T21:59:45Z drmeister: Hrrm. 2014-09-11T21:59:45Z drmeister: BRB 2014-09-11T21:59:52Z drmeister quit (Read error: Connection reset by peer) 2014-09-11T22:00:18Z angavrilov quit (Remote host closed the connection) 2014-09-11T22:00:54Z Vutral joined #lisp 2014-09-11T22:01:22Z murftown joined #lisp 2014-09-11T22:03:43Z InfusoElAmbulant quit (Remote host closed the connection) 2014-09-11T22:03:48Z innertracks joined #lisp 2014-09-11T22:04:08Z InfusoElAmbulant joined #lisp 2014-09-11T22:05:33Z Vutral quit (Ping timeout: 260 seconds) 2014-09-11T22:07:23Z madrik quit (Quit: sleep) 2014-09-11T22:09:13Z Xach joined #lisp 2014-09-11T22:10:02Z drmeister joined #lisp 2014-09-11T22:11:43Z drmeister: What would you do if your asdf/quickload system was screwed up and you kept getting: https://gist.github.com/drmeister/e7443fe522fc523e08ce Package STATIC-VECTORS does not exist when you use (ql:quickload 'cl-conspack) 2014-09-11T22:12:15Z drmeister: Nuke ~/.local/share/common-lisp/source from orbit and start over? 2014-09-11T22:12:32Z oGMo: er 2014-09-11T22:13:04Z oGMo: hrm 2014-09-11T22:13:26Z drmeister: I'm using the latest SLIME with the latest SBCL. 2014-09-11T22:13:28Z oGMo: yeah you might try removing fasls for at least fast-io and try again 2014-09-11T22:14:20Z drmeister: Where do quickload fasls live? Do they always have the extension .fasl? I can find them if they do. 2014-09-11T22:14:33Z drmeister: As I ask I'm looking through the filesystem. 2014-09-11T22:15:04Z drmeister: They don't appear to reside in the static-vectors/src directory. 2014-09-11T22:15:08Z oGMo: start at ~/.cache/common-lisp/sbcl... 2014-09-11T22:15:22Z oGMo: at least that's where they are for me 2014-09-11T22:16:25Z drmeister: Brilliant! Thank you. 2014-09-11T22:16:26Z oGMo: quicklisp picks up dependencies by handling errors, not by reading the files itself right 2014-09-11T22:16:35Z drmeister: I nuked them. 2014-09-11T22:16:43Z oGMo: often handy sadly 2014-09-11T22:19:20Z fragamus quit (Quit: Computer has gone to sleep.) 2014-09-11T22:20:00Z wasamasa: oGMo: wait, what? 2014-09-11T22:21:22Z chaps quit (Ping timeout: 240 seconds) 2014-09-11T22:21:28Z oGMo: wasamasa: what what? 2014-09-11T22:21:48Z wasamasa: oGMo: picking up dependencies by handling errors sounds wrong 2014-09-11T22:21:52Z oGMo: i must run, will be back in awhile 2014-09-11T22:22:03Z oGMo: wasamasa: what? it sounds perfectly right 2014-09-11T22:22:27Z oGMo: (handler-case (asdf:load-system ...) ((system-not-found-error ... 2014-09-11T22:22:30Z oGMo: or whatnot 2014-09-11T22:22:34Z oGMo: anyhow, actually running 2014-09-11T22:23:17Z logand``` quit (Ping timeout: 260 seconds) 2014-09-11T22:23:42Z drmeister: I have deleted everything in the cache and (ql:quickload 'cl-conspack) still reports Component :STATIC-VECTORS not found, required by # 2014-09-11T22:23:52Z Fare: yes, I think quicklisp is wrong to do it that way, but oh well. 2014-09-11T22:24:46Z Fare: drmeister, you got quicklisp working on clasp? nice! 2014-09-11T22:25:07Z wasamasa is trying to figure out how to create a pacman package for quicklisp 2014-09-11T22:25:09Z drmeister: Fare: Sorry to get your hopes up - but no. I'm working in SLIME and SBCL. 2014-09-11T22:25:24Z Fare: :-( 2014-09-11T22:25:34Z Fare: can you compile the latest ASDF? 2014-09-11T22:26:00Z Fare: static vectors works for me on quicklisp on sbcl 2014-09-11T22:26:13Z Bike: wasamasa: i guess a pkgbuild would just download from the site, but installing it with a particular implementation... i dunno. 2014-09-11T22:26:39Z wasamasa: Bike: quicklisp should abstract that away 2014-09-11T22:26:41Z drmeister: Yes, I can compile the latest ASDF and I have something equivalent to ecl c::builder but I haven't actually hooked it into ASDF. I've been playing with ASDF on SBCL to get more familiar with it. 2014-09-11T22:26:43Z Fare: (ql:update-client) and/or (ql:update-all-dists) ? 2014-09-11T22:26:47Z wasamasa: Bike: well, I'm looking at how debian does it 2014-09-11T22:27:04Z drmeister: Fare: How do you get static-vectors to work for you on SBCL? 2014-09-11T22:27:37Z Fare: (ql:quickload 'cl-conspack) just worked. It included compiling a few C files, which just worked (tm). 2014-09-11T22:28:13Z Fare: drmeister: as long as you don't use the bundle functionality, you should be able to survive w/o c::builder 2014-09-11T22:28:14Z innertracks quit (Ping timeout: 240 seconds) 2014-09-11T22:28:17Z drmeister: I keep getting this: Component :STATIC-VECTORS not found, required by #. When I do that. 2014-09-11T22:28:30Z Bike: maybe you're missing a contrib 2014-09-11T22:28:51Z Fare: quicklisp got it for me. Did you (ql:update-all-dists) ? 2014-09-11T22:29:17Z drmeister: Does quickload put systems into .local/share/common-lisp/source? 2014-09-11T22:29:56Z Fare: no 2014-09-11T22:30:03Z drmeister: Where does it put things? 2014-09-11T22:30:05Z Jabberwockey joined #lisp 2014-09-11T22:30:17Z gendl: by “things” do you mean “dists” ? 2014-09-11T22:30:19Z Bike: quicklisp/dists/quicklisp/something something 2014-09-11T22:30:20Z Fare: oh, maybe you have outdated libraries somewhere in your source-registry, that override quicklisp's and interfere with it? 2014-09-11T22:30:31Z Vutral joined #lisp 2014-09-11T22:30:32Z gendl: it puts dists into quicklisp/dists/quicklisp/software/… 2014-09-11T22:30:52Z ehu quit (Ping timeout: 240 seconds) 2014-09-11T22:30:57Z Fare: gendl: hi 2014-09-11T22:30:58Z drmeister: I thought I deleted all of the static-vector directories. I'll do a recursive find and see if I can ferret them out. 2014-09-11T22:31:11Z gendl: Fare: hi. we need to have an ALU meeting. 2014-09-11T22:31:16Z Fare: maybe it's the fast-io thing that's wrong? 2014-09-11T22:31:22Z Fare: gendl: you can call it! 2014-09-11T22:31:28Z gendl: i need to follow up with MF regarding financials 2014-09-11T22:31:29Z gendl: and videos 2014-09-11T22:31:32Z Fare: we need a postmortem 2014-09-11T22:31:33Z gendl: do you know where are the videos? 2014-09-11T22:31:38Z Fare: nope 2014-09-11T22:31:44Z gendl: yes postmortem and autopsy 2014-09-11T22:31:52Z Fare: MF's student has all the videos. I only brought the camera 2014-09-11T22:31:58Z drmeister: Bike: What is the root of the directory where quicklisp puts stuff? 2014-09-11T22:32:02Z DoctorDude joined #lisp 2014-09-11T22:32:03Z slyrus_ joined #lisp 2014-09-11T22:32:09Z Bike: where you installed it 2014-09-11T22:32:14Z Fare: they had their own SD cards 2014-09-11T22:32:14Z Bike: ~ by default 2014-09-11T22:32:33Z Fare: ~/quicklisp/dist/quicklisp/software/ 2014-09-11T22:33:12Z slyrus quit (Ping timeout: 245 seconds) 2014-09-11T22:33:16Z slyrus_ is now known as slyrus 2014-09-11T22:33:34Z chaps joined #lisp 2014-09-11T22:34:02Z drmeister: Oh seriously? It drops a visible directory in my home directory. Not cool, man. 2014-09-11T22:34:26Z thrip joined #lisp 2014-09-11T22:34:45Z thrip left #lisp 2014-09-11T22:34:48Z nyef: drmeister: You can override the default, IIRC. 2014-09-11T22:34:53Z nightfly moves it to my .lisp directory 2014-09-11T22:35:06Z Fare: drmeister, you can load it from ~/.quicklisp/ instead if you prefer 2014-09-11T22:35:20Z thrip joined #lisp 2014-09-11T22:35:24Z Fare: or wherever you like, really. These are just the default locations 2014-09-11T22:35:25Z Vutral quit (Ping timeout: 260 seconds) 2014-09-11T22:35:27Z drmeister: I take back the terrible things I was thinking about quicklisp. 2014-09-11T22:35:35Z Bike: that was quick. 2014-09-11T22:36:30Z Fare: gendl, did you see the new .cl-source-registry.cache feature? 2014-09-11T22:36:45Z Fare: it can speed up the initialize-source-registry quite a bit. 2014-09-11T22:37:12Z Fare: now the startup bottleneck is all in loading fasl's... 2014-09-11T22:37:15Z cmatei_ joined #lisp 2014-09-11T22:37:22Z drmeister: BBL 2014-09-11T22:37:28Z drmeister quit (Remote host closed the connection) 2014-09-11T22:37:36Z gendl: i saw the discussion about it but i’m terribly behind on my “forums” tab in gmail 2014-09-11T22:37:43Z Fare: np 2014-09-11T22:37:52Z gendl: is it released already? 2014-09-11T22:38:25Z Fare: it's in the master branch, but not the release branch yet 2014-09-11T22:38:29Z cmatei quit (Ping timeout: 252 seconds) 2014-09-11T22:38:29Z xenophon quit (Read error: Connection reset by peer) 2014-09-11T22:38:29Z H4ns quit (Read error: Connection reset by peer) 2014-09-11T22:38:39Z Fare: hopefully by late this month / early next month we'll have ASDF 3.1.4 2014-09-11T22:38:42Z eudoxia joined #lisp 2014-09-11T22:39:28Z Fare: I'm hoping for rpgoldman to have time to review what's left to merge in the minimakefile branch this week or next week, and then release 3.1.4 2014-09-11T22:39:36Z gendl: so i might still have time to get the immutable-systems tests done so my immutable-systems patch can make it in 2014-09-11T22:39:49Z Fare: yes, that would be wonderful 2014-09-11T22:40:32Z Fare: I still recommend modifying the test-bundle.script the way I previously suggested. 2014-09-11T22:41:17Z InfusoElAmbulant quit (Remote host closed the connection) 2014-09-11T22:42:31Z vanila: could I ask for comment on my scheme code? it uses shift/reset 2014-09-11T22:42:52Z vanila: it might be off topic for here 2014-09-11T22:42:57Z Jabberwockey: vanila, sure. 2014-09-11T22:43:02Z vanila: thanks 2014-09-11T22:43:06Z vanila: http://paste.lisp.org/display/143686 2014-09-11T22:43:27Z impulse- quit (Read error: No route to host) 2014-09-11T22:43:30Z vanila: we can build lists like this : (reset (collect 'x) (collect 'y)) => (x y) 2014-09-11T22:43:57Z vanila: so i wanted to match s-expressions against a pattern and get the bindings out using this idea 2014-09-11T22:44:36Z pjb: vanila: comments on scheme code shall be obtained from #scheme. 2014-09-11T22:44:40Z Fare: is there a CL with shift/reset ? 2014-09-11T22:44:41Z pjb: #lisp is specific to Common Lisp. 2014-09-11T22:44:56Z pjb: (defun shift …) (defun reset …) there will be! 2014-09-11T22:44:58Z vanila: You probably can't have shift/reset in scheme 2014-09-11T22:44:59Z Fare: if oleg added it to ocaml, it shouldn't be *too* hard to add it to *some* CL 2014-09-11T22:44:59Z vanila: sorry 2014-09-11T22:45:02Z vanila: You probably can't have shift/reset in Common lisp 2014-09-11T22:45:06Z jasom: Fare: not that I know, but cl-cont adds it 2014-09-11T22:45:12Z innertracks joined #lisp 2014-09-11T22:45:19Z vanila: Oleg says that all you need to implement shift/reset is exception throwing an stack overflow recovery 2014-09-11T22:45:33Z vanila: but i dont know.. wouldn't it break things like the condition system? 2014-09-11T22:45:37Z Fare: yes, but cl-cont is basically an entire CL-in-CL thing, that doesn't interoperate well with code already compiled from other libraries. 2014-09-11T22:45:37Z jasom: vanila: you could if you are writing the implementation 2014-09-11T22:46:05Z Fare used arnesi's predecessor to cl-cont to build green threads in an event-driven server, before. 2014-09-11T22:46:06Z jasom: Fare: it works, so long as you don't neet to reset out of a function called from other libraries 2014-09-11T22:46:19Z ggole quit (Ping timeout: 268 seconds) 2014-09-11T22:46:43Z Fare: jasom: which defeats the purpose, if, e.g. you wanted to use those libraries to parse requests in an incremental way 2014-09-11T22:47:02Z nisstyre quit (K-Lined) 2014-09-11T22:47:02Z gko quit (K-Lined) 2014-09-11T22:47:31Z Fare: (as I wanted to do) 2014-09-11T22:47:39Z jasom: yeah 2014-09-11T22:47:44Z namespace|sleep is now known as namespace 2014-09-11T22:47:54Z jasom: excepting cases where the libraries let you pass input to the parser incrementally 2014-09-11T22:48:02Z Fare: (instead, I think I error'ed out if the parser wanted more characters, and retried parsing from scratch, knowing that the parser had no side-effects.) 2014-09-11T22:48:07Z mrSpec quit (Remote host closed the connection) 2014-09-11T22:48:10Z pjb: Otherwise, you can easily implement collect with closures in CL, you don't need the heavy machinery of shift/reset. 2014-09-11T22:48:30Z pjb: cf. iterate or series. 2014-09-11T22:48:42Z Fare: vanila: there's also #racket, btw 2014-09-11T22:48:53Z vanila: cool 2014-09-11T22:48:55Z vanila: thanks 2014-09-11T22:49:24Z vanila: maybe for programming with shift/reset in CL - it would be good enough to just have an interpreter 2014-09-11T22:49:30Z vanila: and localize it to a small part of code 2014-09-11T22:49:35Z Fare: vanila: where's the reset? 2014-09-11T22:49:38Z gko joined #lisp 2014-09-11T22:49:40Z drewc: hence why I went with delimited monadic k's (that is not what I call it but meh) ... and it is not heavy. at all IMO, but similar to shift/reset 2014-09-11T22:49:55Z vanila: Fare, I hvae to (reset (pattern? ...)) 2014-09-11T22:50:11Z Fare: maybe 2014-09-11T22:50:38Z Fare: drewc: do you have to write your code in A-normal form or something? 2014-09-11T22:50:39Z drewc: save for dynamic scope of course, which makes it very interesting for closures let alone continuation passing style. 2014-09-11T22:51:09Z Fare: and/or with plenty of lift operators? 2014-09-11T22:51:14Z nisstyre joined #lisp 2014-09-11T22:51:53Z drewc: Fare: http://drewc.org/interface/monads.html#sec-7 ... no. just use MLET* 2014-09-11T22:51:57Z Fare: vanila: if you can localize your control thing, cl-cont can help you 2014-09-11T22:52:04Z vanila: I see! 2014-09-11T22:52:17Z Fare: drewc: is lil up-to-date wrt your monadic things? 2014-09-11T22:52:29Z drewc: Fare: http://drewc.org/interface/monads.html#sec-7-4-3 to be precise 2014-09-11T22:52:58Z drewc: It should be somewhat ... though I should probably look into and update it. 2014-09-11T22:53:50Z davazp joined #lisp 2014-09-11T22:54:15Z Fare: thanks! :-) 2014-09-11T22:55:08Z drewc: Fare: and https://github.com/drewc/ftw/blob/master/dispatcher/monads.lisp#L113 for the first implementation I created/used ... and how I got in to IPS, and the thing that turned in to what is in LiL 2014-09-11T22:55:17Z Fare: :-) 2014-09-11T22:56:11Z Fare: in clojure, I used the & prefix for all the monadic stuff: &return &bind &let &do &call 2014-09-11T22:56:49Z drewc: strangely enough, clojure monads influenced my version somewhat as well 2014-09-11T22:57:10Z Fare: I admit I've only used the state monad so far, and variants thereof 2014-09-11T22:57:37Z drewc: http://onclojure.com/2009/03/05/a-monad-tutorial-for-clojure-programmers-part-1/ <---- yup, that was the time and place :) 2014-09-11T22:58:23Z drewc: well, the state + list monad is the monad, which is the first I did and use it every day... 2014-09-11T22:58:54Z LiamH quit (Quit: Leaving.) 2014-09-11T23:00:26Z vaporatorius quit (Remote host closed the connection) 2014-09-11T23:00:41Z defaultxr joined #lisp 2014-09-11T23:01:59Z Fare: :-) 2014-09-11T23:02:31Z attila_lendvai joined #lisp 2014-09-11T23:02:44Z Fare: for my lexer / parser monad, I want the equivalent of prolog's cut 2014-09-11T23:03:08Z drewc: https://github.com/drewc/smug/blob/master/doc/tutorial.org <--- still working on that every day! 2014-09-11T23:03:15Z Fare: to commit to no backtracking when I've parsed some tokens. 2014-09-11T23:03:30Z Fare: but it's low on my TODO list 2014-09-11T23:03:45Z Fare: also, to make it trivial to have syntax error location 2014-09-11T23:03:46Z murftown quit (Quit: murftown) 2014-09-11T23:04:17Z Fare: right now, an error causes a big unwind of everything to the first choice => no useful error location 2014-09-11T23:06:20Z drewc: I do the latter by having input be a struct of string and location, then input-first being (aref (input-string input) (input-location) input) and having the error part return a condition with that struct instance in it rather than NIL. 2014-09-11T23:06:24Z dkcl` quit (Ping timeout: 246 seconds) 2014-09-11T23:07:18Z drewc: that way, where the error is caused is even printed via (error 'parse-condition :input input) 2014-09-11T23:07:44Z slyrus: drewc: are there advantages to smug over cl-parser-combinators? 2014-09-11T23:08:21Z nyef: Is it reasonable to pass a closure as the :STREAM initarg for condition END-OF-FILE? 2014-09-11T23:08:49Z drewc: as for the former, there is a section on efficiency in https://github.com/drewc/smug/blob/master/doc/monparsing.org which may help 2014-09-11T23:08:58Z Fare: but how do you do backtracking? 2014-09-11T23:10:05Z Fare: oh yes, using a list monad 2014-09-11T23:10:36Z Fare: so your "cut" would be something that drops the rest of the list, I suppose 2014-09-11T23:11:17Z Fare: and since you use an error-location rather than NIL in case of no solution, that gives you the syntax error information. 2014-09-11T23:11:24Z drewc: exactly 2014-09-11T23:11:36Z drewc: the CUT is known is 'first' ... 2014-09-11T23:11:43Z DoctorDude left #lisp 2014-09-11T23:11:52Z drewc: because it is the first of the list, ignoring the REST 2014-09-11T23:12:36Z Fare: so my issue is that instead of using the list monad, I'm using exceptions to do the backtracking 2014-09-11T23:12:46Z drewc: slyrus : sure, there likely are. 2014-09-11T23:13:48Z drewc: slyrus: looking at the code, yes, there are many. 2014-09-11T23:13:51Z Fare: slyrus, I suppose that once you've paid the price of interface-passing style, you can very easily have your code be generic in terms of which monad is being used. 2014-09-11T23:14:03Z Fare: which is cool 2014-09-11T23:14:48Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-11T23:15:28Z dmiles_afk joined #lisp 2014-09-11T23:15:51Z Shaftoe___ joined #lisp 2014-09-11T23:16:18Z Shaftoe___ quit (Client Quit) 2014-09-11T23:16:22Z drewc: Fare: to be honest I rarely bother these days (for the parser), as the primitives are simply enough, and the code that uses them is a simple LOAD away .. 2014-09-11T23:16:57Z drewc: I like IPS, don't get me wrong ... and my LIL parser can easily be the primitive ... 2014-09-11T23:17:00Z jkaye quit (Remote host closed the connection) 2014-09-11T23:17:05Z izirku quit (Quit: Relax, its only ONES and ZEROS!) 2014-09-11T23:17:32Z jkaye joined #lisp 2014-09-11T23:17:41Z izirku joined #lisp 2014-09-11T23:17:55Z Fare: drewc: yes, in clojure, I also skipped the generic library algo.monads and am instead using a 4-line macro. 2014-09-11T23:18:08Z drewc: but unless I am using LIL elsewhere, exactly. 2014-09-11T23:18:54Z schaueho_ quit (Ping timeout: 272 seconds) 2014-09-11T23:19:23Z Fare: that's where I wish there were a way to tell CL "hey, please give me optimized versions of these partially evaluated macros / functions, thank you" 2014-09-11T23:19:34Z Sgeo joined #lisp 2014-09-11T23:22:04Z jkaye quit (Ping timeout: 252 seconds) 2014-09-11T23:22:27Z manfoo7 joined #lisp 2014-09-11T23:22:36Z drewc: slyrus: http://paste.lisp.org/display/143688 <--- smug 2014-09-11T23:24:38Z innertracks quit (Ping timeout: 252 seconds) 2014-09-11T23:24:51Z codeburg quit (Ping timeout: 264 seconds) 2014-09-11T23:25:21Z codeburg joined #lisp 2014-09-11T23:26:03Z drewc: slyrus: and notice that I do not try to use DO notation in CL, do not use scheme type function names in CL, and base my work off the paper that parsec was based on, not on parsec itself :P 2014-09-11T23:28:17Z drmeister joined #lisp 2014-09-11T23:29:08Z arrdem quit (Quit: leaving) 2014-09-11T23:30:55Z murftown joined #lisp 2014-09-11T23:33:56Z Fare: drewc: what's do notation? m-let? 2014-09-11T23:34:00Z attila_lendvai quit (Quit: Leaving.) 2014-09-11T23:35:25Z drewc: Fare: https://github.com/drewc/smug/blob/master/doc/monparsing.org#monad-comprehension-syntax 2014-09-11T23:36:28Z drewc: basically, a syntax for MLET* (imnsho) 2014-09-11T23:36:39Z drewc: kinda sorta 2014-09-11T23:40:28Z Fare: ok 2014-09-11T23:40:31Z Fare: thanks 2014-09-11T23:40:58Z Bazzie joined #lisp 2014-09-11T23:44:03Z drmeister quit (Read error: Connection reset by peer) 2014-09-11T23:46:50Z slyrus: drewc: thanks. I'll try to look this over tonight. 2014-09-11T23:48:22Z Vutral joined #lisp 2014-09-11T23:49:57Z nyef: Well, I think I have a lead on finding the code page information in an .xls file, but my understanding of the file format is very different from what this code implements... 2014-09-11T23:52:16Z nand1 quit (Remote host closed the connection) 2014-09-11T23:53:21Z Vutral quit (Ping timeout: 260 seconds) 2014-09-11T23:56:02Z resttime quit (Quit: resttime) 2014-09-11T23:57:40Z jasom: anyone here use clx? 2014-09-11T23:57:44Z whmark quit (Remote host closed the connection) 2014-09-11T23:58:00Z jasom: I'm trying to figure out how to handle asynchronous errors in a sane manner. 2014-09-11T23:58:10Z nyef: jasom: Good luck? 2014-09-11T23:58:23Z jasom: nyef: thanks :P 2014-09-11T23:58:58Z nyef: What is your actual use-case, and what do you consider to be a "sane manner"? 2014-09-11T23:59:49Z eudoxia: jasom: StumpWM is probably the largest project that uses CLX, you might want to look there 2014-09-11T23:59:54Z nyef: Or McCLIM. 2014-09-12T00:00:09Z resttime joined #lisp 2014-09-12T00:00:37Z Vivitron quit (Ping timeout: 245 seconds) 2014-09-12T00:01:07Z jasom: nyef: turns out this error will only happen whn I expect a reply so I'm okay for now. 2014-09-12T00:01:29Z wasamasa: huh 2014-09-12T00:01:50Z wasamasa: tried stumpwm after hearing from a debian user it can't do floating properly and crashes when launching gimp 2014-09-12T00:02:02Z wasamasa: gimp just spawns its floating windows as expected 2014-09-12T00:02:06Z wasamasa: I must be doing something wrong 2014-09-12T00:02:10Z wasamasa: like, not using debian 2014-09-12T00:02:20Z lifeng joined #lisp 2014-09-12T00:08:22Z drewc: slyrus: for example : http://paste.lisp.org/display/143688#3 vs https://github.com/Ramarren/cl-parser-combinators/blob/master/doc/example-csv.lisp 2014-09-12T00:13:05Z drewc: most importantly, notice how mine looks like CL, including the names. I did not like having to learn a new syntax in order to parse syntax into sexps. :) 2014-09-12T00:13:12Z zRecursive joined #lisp 2014-09-12T00:19:29Z Vutral joined #lisp 2014-09-12T00:20:50Z Jabberwockey quit (Quit: Leaving) 2014-09-12T00:22:19Z Fare: drewc: nice 2014-09-12T00:22:35Z Fare: puts my fare-csv to shame. 2014-09-12T00:24:09Z Vutral quit (Ping timeout: 260 seconds) 2014-09-12T00:26:31Z urandom__ quit (Quit: Konversation terminated!) 2014-09-12T00:30:38Z zz_karupa is now known as karupa 2014-09-12T00:31:01Z kpreid quit (Quit: Quitting) 2014-09-12T00:31:15Z kpreid joined #lisp 2014-09-12T00:32:57Z impulse joined #lisp 2014-09-12T00:34:07Z davazp quit (Remote host closed the connection) 2014-09-12T00:35:27Z eudoxia quit (Quit: Lost terminal) 2014-09-12T00:38:28Z Fare quit (Quit: Leaving) 2014-09-12T00:41:32Z dorsocentral quit (Ping timeout: 245 seconds) 2014-09-12T00:43:09Z fantazo quit (Ping timeout: 264 seconds) 2014-09-12T00:43:52Z impulse quit (Ping timeout: 240 seconds) 2014-09-12T00:44:35Z impulse joined #lisp 2014-09-12T00:48:54Z drmeister joined #lisp 2014-09-12T00:56:23Z BitPuffin quit (Ping timeout: 276 seconds) 2014-09-12T00:57:28Z jusss joined #lisp 2014-09-12T00:59:00Z yrk quit (Read error: Connection reset by peer) 2014-09-12T01:01:39Z nipra quit (Quit: Leaving.) 2014-09-12T01:06:52Z akkad quit (Quit: Emacs must have died) 2014-09-12T01:08:24Z akkad joined #lisp 2014-09-12T01:14:09Z nell joined #lisp 2014-09-12T01:15:22Z whmark joined #lisp 2014-09-12T01:16:15Z ndrei quit (Ping timeout: 246 seconds) 2014-09-12T01:18:11Z jkaye joined #lisp 2014-09-12T01:22:21Z EvW quit (Quit: EvW) 2014-09-12T01:22:42Z jkaye quit (Ping timeout: 252 seconds) 2014-09-12T01:24:04Z boogie quit (Remote host closed the connection) 2014-09-12T01:26:49Z nell quit (Ping timeout: 272 seconds) 2014-09-12T01:27:13Z varjag_ quit (Quit: Connection closed for inactivity) 2014-09-12T01:30:49Z TDog joined #lisp 2014-09-12T01:31:24Z wasamasa quit (Ping timeout: 250 seconds) 2014-09-12T01:32:03Z Xach left #lisp 2014-09-12T01:34:18Z murftown quit (Quit: murftown) 2014-09-12T01:35:30Z malice quit (Quit: Leaving) 2014-09-12T01:36:29Z nyef: Does it make sense to use gray streams if your "streams" contain structured records rather than raw bytes or characters? 2014-09-12T01:37:15Z nyef: You still get to use the standard stream error classes, and interact well with CLOSE and WITH-OPEN-STREAM... 2014-09-12T01:37:44Z nyef: But none of the read or write protocols really apply properly. 2014-09-12T01:39:32Z stacksmith: nyef: it feels wrong, doesn't it... 2014-09-12T01:39:41Z nyef: It does, and it doesn't. 2014-09-12T01:39:55Z nyef: They're still streams, but they're OBJECT streams. 2014-09-12T01:40:29Z pillton: Heh. STREAM-PEEK-CHAR. 2014-09-12T01:40:35Z stacksmith: I wish there was a separate abstraction for opening an maintaining a stream and another for sending/receiving data... 2014-09-12T01:40:56Z stacksmith: opening and closing that is, along with error handling. 2014-09-12T01:41:09Z p_l: nyef: eh, a bunch of systems had more structure read/write modes ;) 2014-09-12T01:42:23Z normanrichards joined #lisp 2014-09-12T01:42:27Z nyef: I can't even really use CLIM as an example here, because their extended streams define character I/O in terms of their extended "gesture" (for input) or "output-record" (for output) semantics. 2014-09-12T01:43:29Z slyrus quit (Ping timeout: 260 seconds) 2014-09-12T01:49:29Z Bicyclidine joined #lisp 2014-09-12T01:49:31Z Shaftoe___ joined #lisp 2014-09-12T01:52:32Z wasamasa joined #lisp 2014-09-12T01:53:33Z Vivitron joined #lisp 2014-09-12T01:58:01Z izirku quit (Remote host closed the connection) 2014-09-12T02:00:45Z innertracks joined #lisp 2014-09-12T02:01:37Z innertracks quit (Client Quit) 2014-09-12T02:02:09Z Zhivago: What does maintaining a stream mean? 2014-09-12T02:03:50Z stacksmith: Zhivago: oiling regularly and occasionally rebuiling the bearings. 2014-09-12T02:04:11Z kanru joined #lisp 2014-09-12T02:04:56Z nyef: Also, keeping beavers from building dams across it. 2014-09-12T02:08:38Z nell joined #lisp 2014-09-12T02:10:09Z stacksmith: nyef: you win. 2014-09-12T02:18:00Z chew joined #lisp 2014-09-12T02:19:41Z akkad: is there a way to print the name of the current running function? 2014-09-12T02:20:58Z chew: Hey everyone 2014-09-12T02:21:39Z nyef: akkad: Do you mean something like breaking into the debugger and obtaining a short backtrace? 2014-09-12T02:21:54Z chew: I'm trying to decide between a free lisp implementation 2014-09-12T02:22:16Z chew: It seems like SBCL and CCL are the two most popular 2014-09-12T02:22:29Z dmiles_afk quit (Quit: Read error: 110 (Connection timed out)) 2014-09-12T02:22:44Z chew: Which of the two would you suggest? 2014-09-12T02:22:54Z nyef: chew: If you need to talk to Cocoa, you should probably go with CCL, otherwise please consider SBCL. 2014-09-12T02:22:57Z chew: I want something that will run well on Linux and Windows 2014-09-12T02:23:11Z edgar-rft quit (Quit: end of life during parsing) 2014-09-12T02:23:13Z chew: Don't need Cocoa 2014-09-12T02:23:15Z nyef: Hrm. Not sure about windows support for either these days. 2014-09-12T02:23:38Z nyef hasn't used a windows box for programming in years now. 2014-09-12T02:23:41Z chew: nyef: Really? Why is this happening? 2014-09-12T02:24:17Z nyef: What, not using windows if I can help it? 2014-09-12T02:25:03Z nyef: (I'm confessing ignorance over the state of common lisp on windows, not dismay.) 2014-09-12T02:25:17Z chew: Yeah I would love to as well.. but I"m stuck with Windows for the foreseeable future.. 2014-09-12T02:25:29Z chew: nyef: Ok I see 2014-09-12T02:25:59Z nyef: Mmm. I'm stuck with MacOS for the foreseeable future. 2014-09-12T02:26:21Z nyef: (And VirtualBox running Linux VMs, so not all is lost.) 2014-09-12T02:26:32Z chew: nyef: I think I'd rather be stuck with Windows.. :P 2014-09-12T02:26:51Z chew: nyef: but why do you recommend SBCL over CCL? Just curious to your reasons.. 2014-09-12T02:27:26Z nyef: I'm far, far more familiar with SBCL than with CCL, and I'm an SBCL developer. 2014-09-12T02:27:43Z nyef: So, a massive bias there. (-: 2014-09-12T02:28:16Z chew: nyef: fair enough 2014-09-12T02:28:31Z chew: but even in your biased opinion, what reasons do you cite? 2014-09-12T02:29:15Z nyef: It's my understanding that SBCL has the more powerful (though slower) compiler, and better standards compatibility. 2014-09-12T02:29:52Z nyef: On the other hand, I will easily believe that CCL has better debugger support if someone were to say so with any trace of authority or experience. 2014-09-12T02:30:15Z nyef glares half-heartedly in the direction of SYS:SRC;CODE;DEBUG-INT.LISP. 2014-09-12T02:30:44Z kushal joined #lisp 2014-09-12T02:30:52Z chew: eek.. the SBCL homepage says it has experimental support for Windows 2014-09-12T02:31:31Z chew: nyef: right, that's kind of what I've seen googling about 2014-09-12T02:31:43Z nyef: I can assure you that it's been "experimental" for years now. 2014-09-12T02:31:55Z oleo is now known as Guest94911 2014-09-12T02:32:31Z nyef: It's a LOT better than it was in SBCL 1.0. 2014-09-12T02:33:11Z chew: hmm.. ok 2014-09-12T02:33:26Z nyef: One thing that you might do is try both, and see which one you prefer. 2014-09-12T02:33:37Z oleo__ joined #lisp 2014-09-12T02:33:49Z chew: Yep I probably should do that 2014-09-12T02:34:06Z chew: Unrelated question: 2014-09-12T02:34:39Z Guest94911 quit (Ping timeout: 246 seconds) 2014-09-12T02:35:40Z chew: When I distribute my SBCL or CCL program, do I need my users to separately install SBCL or CCL? 2014-09-12T02:37:19Z nyef: Not for SBCL, I have no idea about CCL. 2014-09-12T02:37:38Z chew: Phew ok great 2014-09-12T02:37:59Z nyef: (Is there a CCL advocate here?) 2014-09-12T02:38:16Z izirku joined #lisp 2014-09-12T02:38:34Z chew: So my compiled binary includes the SBCL runtime? 2014-09-12T02:38:46Z chew: How does garbage collection, etc. take place? 2014-09-12T02:39:07Z stacksmith: I used CCL for about a day, and liked it. It seemed that it was easier to get out of restarts... 2014-09-12T02:39:15Z nyef: What sort of "how" are you looking for? 2014-09-12T02:39:30Z nyef: "How does it work?", "how is it triggered?", something else? 2014-09-12T02:39:38Z chew: THe first one 2014-09-12T02:39:47Z chew: the simpler one 2014-09-12T02:41:00Z stacksmith: Hardly simple. How is it triggered is simpler. 2014-09-12T02:41:24Z nyef: Yeah, the basic operational details of a "conservative" multi-generational GC are fairly tricky. 2014-09-12T02:41:33Z drmeister quit (Remote host closed the connection) 2014-09-12T02:41:41Z nipra joined #lisp 2014-09-12T02:41:46Z kristof joined #lisp 2014-09-12T02:41:49Z nyef: Triggering it is usually either after a certain amount of memory has been allocated or an explicit request. 2014-09-12T02:42:10Z stacksmith: Is CCL gc conservative too? 2014-09-12T02:42:54Z vydd quit (Remote host closed the connection) 2014-09-12T02:43:16Z stacksmith: Looks like it's precise. 2014-09-12T02:43:49Z chew: Actually what I mean is how is the runtime called from my custom binary program? 2014-09-12T02:44:22Z chew: You said my users don't need to install SBCL/CCL 2014-09-12T02:44:25Z zRecursive: ??? 2014-09-12T02:44:30Z stacksmith: Well, it's not really a custom binary... It's a lisp image. 2014-09-12T02:44:32Z nyef: SBCL's GC is only conservative for pages containing explicitly-pinned objects and for pages referenced by "valid-looking" pointers in the register set and stack space. 2014-09-12T02:45:03Z chew: A lisp image? ok.. 2014-09-12T02:45:12Z nyef: chew: For SBCL, the :EXECUTABLE T option to SAVE-LISP-AND-DIE creates an output file that contains a copy of the runtime code with an embedded lisp core image. 2014-09-12T02:45:12Z chew: So do my users run it? 2014-09-12T02:45:15Z jusss quit (Read error: Connection reset by peer) 2014-09-12T02:45:27Z chew: nyef: ah perfect 2014-09-12T02:45:52Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-12T02:46:12Z jusss joined #lisp 2014-09-12T02:46:19Z chew: I guess CCL would have something analogous 2014-09-12T02:47:03Z stacksmith: save-application 2014-09-12T02:47:14Z zRecursive: yeah, all with an lisp image 2014-09-12T02:47:24Z stacksmith: Same idea. 2014-09-12T02:47:47Z chew: Ok cool thanks guys 2014-09-12T02:48:00Z vydd joined #lisp 2014-09-12T02:48:10Z zRecursive: Fortunately, disk space is cheap nowadays :) 2014-09-12T02:48:31Z stacksmith: Even more fortunately, so is RAM :) 2014-09-12T02:48:33Z stepnem quit (Ping timeout: 264 seconds) 2014-09-12T02:48:41Z chew: Ohh 2014-09-12T02:48:55Z chew: How much more data does including the lisp image add? 2014-09-12T02:49:10Z chew: Roughly? 2014-09-12T02:50:12Z zRecursive: SBCL indeed needs more space than CCL, IIRC 2014-09-12T02:50:34Z chew: My programs will vary is size, but I guess the 'save-application' or :EXECUTABLE-T options will add a constant amount of data right? 2014-09-12T02:51:01Z jleija joined #lisp 2014-09-12T02:51:15Z zRecursive: maybe not 2014-09-12T02:51:26Z Bicyclidine quit (Ping timeout: 276 seconds) 2014-09-12T02:51:48Z chew: But that variance would much smaller than the required bits right? 2014-09-12T02:51:52Z stacksmith: SBCL 1.2.3 executable is almost 70MB. 2014-09-12T02:52:06Z chew: Oh my! 2014-09-12T02:52:40Z stacksmith: That is, (save-lisp-and-die "crap"), crap is almost 70MB. But really, who cares? 2014-09-12T02:53:01Z nyef: People using cellular internet. 2014-09-12T02:53:14Z nyef: Or the really poor unfortunates on dial-up. 2014-09-12T02:53:39Z stacksmith: Fuck'em. 2014-09-12T02:53:41Z zRecursive: For stumpwm image: CLISP 8.xM, CCL 28.xM, SBCL 40.xM 2014-09-12T02:53:51Z chew: Heh.. yeah I'm just thinking from a user perspective. Whether they would be deterred from the size. 2014-09-12T02:54:16Z chew: The programs I have in mind would only be a couple of MB at the most.. so this really adds a lot 2014-09-12T02:54:18Z nyef: Depends on how awesome your program is. 2014-09-12T02:54:36Z stacksmith: Well, if you have more than one, stick them into the same image. 2014-09-12T02:54:59Z nyef: Also, don't forget compression! 2014-09-12T02:55:26Z stacksmith: Also don't forget, the image contains the wisdom of 50+ years of the smartest people in the world thinking really hard. 2014-09-12T02:55:52Z nyef: A quick look over my collection of build program versions for work shows that I'm getting 17M for a .gz of the SBCL image. 2014-09-12T02:55:59Z zRecursive: That's true ! 2014-09-12T02:56:09Z chew: Yeah.. I'm kind of comparing it to .NET or Java.. which isn't fair because those platforms need to be preinstalled 2014-09-12T02:57:16Z nyef: Right. How large are their runtime installers, again? 2014-09-12T02:58:23Z stacksmith: Realistically, you have to transfer it once; you will probably run it on a device where tens of MBs are not meaningful... You could also distribute your applications as source. 2014-09-12T02:59:17Z chew: The apps I have in mind aren't for developers 2014-09-12T02:59:35Z chew: So source distribution probably wouldn't go over well.. lol 2014-09-12T02:59:55Z stacksmith: If say SBCL is installed, you can make a short script that loads and runs your source, without the user knowing. 2014-09-12T03:00:06Z chew: Right 2014-09-12T03:00:50Z chew: So I could also write an installer that just includes my program (say a 1 MB download), but then fetches and installs SBCL/CCL if it's not already there 2014-09-12T03:01:09Z drmeister joined #lisp 2014-09-12T03:01:25Z chew: Some .NET installers have a built-in mechanism for this (click once) 2014-09-12T03:01:34Z stacksmith: 1MB of lisp source... That's more then I've ever seen. 2014-09-12T03:01:45Z chew: That would include images 2014-09-12T03:01:59Z nyef: Images, the installer itself, possibly FASLs rather than source... 2014-09-12T03:02:30Z stacksmith: That would work. 2014-09-12T03:02:39Z chew: FASL? 2014-09-12T03:02:47Z stacksmith: Compiled lisp files 2014-09-12T03:02:55Z zRecursive: Can the native code compiled by SBCL run without the core image ? 2014-09-12T03:02:57Z nyef: A "FASt Load" file. 2014-09-12T03:03:08Z nyef: zRecursive: Not really. 2014-09-12T03:03:08Z chew: Ok.. as you can see I haven't got far in my lisp reading yet :) 2014-09-12T03:03:42Z zRecursive: nyef: but disassemble shows it is REAL machine code? 2014-09-12T03:03:52Z stacksmith: Some Scheme systems generate 'compiled binaries' that are closer to what you'd expect from C. 2014-09-12T03:04:03Z vydd quit (Remote host closed the connection) 2014-09-12T03:04:14Z chew: But regardless you need the runtime for GC right? 2014-09-12T03:04:54Z nyef: zRecursive: The functions are compiled to machine code, yes. 2014-09-12T03:05:14Z Bike: gc is part of the runtime, yeah. like malloc and free are part of libc. 2014-09-12T03:05:27Z stacksmith: Not just GC, the 'runtime' is really pretty much the whole Lisp implementation... 2014-09-12T03:06:15Z nyef: chew: Typically, yes. It's possible to write a GC in Lisp, but it's more an impressive trick than something maintained as part of a full-strength system. 2014-09-12T03:06:21Z chew: But if you compile something down to native wouldn't you only need the runtime for services like GC (and other services)? 2014-09-12T03:06:31Z zRecursive: then the machine code still needs the lisp runtime 2014-09-12T03:07:03Z nyef: stacksmith: For SBCL, the "runtime" is basically GC, signal handling, core file loading and saving, and a couple of other minor things, and everything else (compiler, almost every Lisp function, et cetera) is in the core. 2014-09-12T03:07:39Z chew: nyef: You'd have to be pretty crazy or hardcore to try and write your own GC.. heh 2014-09-12T03:08:01Z nyef has been both at various times. 2014-09-12T03:08:06Z chaps quit (Quit: Leaving) 2014-09-12T03:08:12Z stacksmith: nyef: can you separate the runtime from the core? 2014-09-12T03:08:35Z nyef: stacksmith: Given that one of the responsibilities of the runtime is to load the core? 2014-09-12T03:09:10Z nyef: Also given that one of my crazy-and-hardcore hacks back in the day was to generate a core file that ran on a bare machine without a runtime? 2014-09-12T03:09:40Z stacksmith: nyef: so (save-lisp-and-die ...) is not the only way to go? 2014-09-12T03:09:43Z chew: nyef: awesome 2014-09-12T03:11:00Z nyef: stacksmith: As ever, "it depends". 2014-09-12T03:11:59Z nyef: stacksmith: I've got some programs that I start off with #!/bin/sh and some hackery to start SBCL, skip to where the shell script bit ends, and load the rest as Lisp source. 2014-09-12T03:12:10Z chew: stacksmith: yes for sane individuals :) 2014-09-12T03:12:18Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-12T03:12:19Z stacksmith: I often dream of a Lisp running on a bare machine without an OS... Ahh... 2014-09-12T03:12:25Z zacharias quit (Read error: Connection reset by peer) 2014-09-12T03:12:28Z nyef: stacksmith: And some that just have a shell wrapper script that does --load on a lisp file. 2014-09-12T03:12:36Z kristof quit (Ping timeout: 272 seconds) 2014-09-12T03:12:43Z nyef: stacksmith: Have a look at Movitz. 2014-09-12T03:12:50Z nyef: (Assuming that it's still around.) 2014-09-12T03:13:19Z zacharias joined #lisp 2014-09-12T03:13:20Z stacksmith: I thought Movitz was a Rabbi. 2014-09-12T03:13:41Z stacksmith: Most recent news:2008. 2014-09-12T03:14:01Z harish quit (Ping timeout: 260 seconds) 2014-09-12T03:14:05Z wizzo: how can i get the specific error type from an sbcl error? like say i get ; Evaluation aborted on #. 2014-09-12T03:14:12Z wizzo: what can i check for with handler-case? 2014-09-12T03:14:19Z Bike: wizzo: that is a type-error. 2014-09-12T03:14:21Z jusss joined #lisp 2014-09-12T03:14:33Z wizzo: is there any way to check for an "index error"? 2014-09-12T03:14:34Z nyef: wizzo: TYPE-ERROR. 2014-09-12T03:14:42Z jyuan quit (Remote host closed the connection) 2014-09-12T03:15:04Z jyuan joined #lisp 2014-09-12T03:15:18Z Bike: wizzo: you can do (handler-case form (t (e) e)) to get the error as a manipulable object, if you want. 2014-09-12T03:15:30Z nyef: ISTR there being a more specific error for index being out of bounds, but in this case what you have is something that isn't a valid index in the first place. 2014-09-12T03:16:02Z wizzo: would it be better to just check myself if it's out of bounds? 2014-09-12T03:16:15Z Bike: (handler-case (aref #(1) -1) (t (e) e)) -> # 2014-09-12T03:16:20Z nyef: As ever, "it depends". 2014-09-12T03:16:34Z Bike: clhs a-i-b-p 2014-09-12T03:16:34Z specbot: array-in-bounds-p: http://www.lispworks.com/reference/HyperSpec/Body/f_ar_in_.htm 2014-09-12T03:16:37Z Bike: wizzo: probably useful 2014-09-12T03:16:55Z wizzo: aha 2014-09-12T03:16:57Z wizzo: that's perfect 2014-09-12T03:16:59Z wizzo: thank you! 2014-09-12T03:17:03Z Bike: though the first time i tried using it i ran into an sbcl bug (months ago). woe is i. 2014-09-12T03:17:09Z wizzo: and the error types make more sense now too 2014-09-12T03:17:12Z wizzo: oh 2014-09-12T03:17:22Z Bike: i mean, it's gone now, don't let me scare you. 2014-09-12T03:17:23Z nyef: Hrm. Defined over integers rather than indexes, so if you still get the type error then you get to report a bug. 2014-09-12T03:18:25Z wizzo: this seems to be working exactly as i wanted 2014-09-12T03:18:28Z wizzo: woohoo 2014-09-12T03:18:48Z jusss quit (Client Quit) 2014-09-12T03:21:19Z nyef: Hrm. Either I'm misunderstanding the MS-CFB spec, or the file I'm looking at (produced by Excel) doesn't conform. 2014-09-12T03:22:21Z nyef: Actually, I *know* it doesn't conform, but the bit I'm looking at is a bit more serious (binary or red/black tree sibling relationships) than a simple blown root object name. 2014-09-12T03:27:27Z whmark quit (Remote host closed the connection) 2014-09-12T03:29:09Z jusss joined #lisp 2014-09-12T03:29:24Z whmark joined #lisp 2014-09-12T03:33:13Z nyef: ... Ah. Binary tree. Right. 2014-09-12T03:34:13Z nyef: And the examples show parent/child only, not siblings. Lovely. 2014-09-12T03:35:43Z chew: Goodnight guys, thanks for your help! 2014-09-12T03:36:08Z chew quit (Quit: Leaving) 2014-09-12T03:36:41Z kvda joined #lisp 2014-09-12T03:38:12Z H4ns joined #lisp 2014-09-12T03:39:32Z impulse quit (Ping timeout: 276 seconds) 2014-09-12T03:40:12Z impulse joined #lisp 2014-09-12T03:40:27Z beach joined #lisp 2014-09-12T03:40:35Z beach: Good morning everyone! 2014-09-12T03:41:10Z vanila: good morning beach :) 2014-09-12T03:41:44Z stacksmith: Top of the morn! 2014-09-12T03:42:43Z beach: stacksmith: Did you ever get that Vietnamese app going? 2014-09-12T03:42:58Z beach: .. or was it some other app? I forget. 2014-09-12T03:43:08Z whmark quit (Remote host closed the connection) 2014-09-12T03:43:25Z stacksmith: beach: I got the app going but couldn' figure out how to load the files... 2014-09-12T03:43:45Z beach: Read Dictionary and Read Text 2014-09-12T03:44:16Z stacksmith: I'll try that when I get a chance. I think it comes with a dictionary and a text... 2014-09-12T03:44:21Z beach: Can be abbreviated rd because this is CLIM. 2014-09-12T03:44:27Z beach: It does. 2014-09-12T03:44:39Z beach: I think I wrote a README file that shows how to use it actually. 2014-09-12T03:45:22Z stacksmith: I'll try again. I think I managed to crash it somehow... 2014-09-12T03:45:40Z whmark joined #lisp 2014-09-12T03:45:45Z beach: It does if you don't type the filename right, including the name of the directory. 2014-09-12T03:46:14Z beach: One improvement I want is to have it read the input not as a string but as a pathname. Then you get automatic completion. 2014-09-12T03:46:24Z stacksmith typed didn't type the filename right, and probably the name of the directory as well. 2014-09-12T03:46:51Z beach: Like I said, it is still mostly a private tool :( 2014-09-12T03:47:02Z beach: But it's a cute demo. 2014-09-12T03:47:24Z beach: The first version of it took me 2 hours to write. On the train from Bayonne to Bordeaux. 2014-09-12T03:47:48Z stacksmith: No complaints - just too dumb and lazy to get it going on the first try. Thanks 2014-09-12T03:48:11Z beach: stacksmith: No worries. Thanks for making me clean it up and put it on GitHub. 2014-09-12T03:48:36Z Karl_Dscc joined #lisp 2014-09-12T03:49:15Z stacksmith: I take it Bayonne is in France, not New Jersey... 2014-09-12T03:49:18Z nyef: Hello beach. 2014-09-12T03:49:43Z beach: stacksmith: Indeed! Otherwise it would take more than 2 hours. Unless there is a Bordeaux in New Jersey too. 2014-09-12T03:50:06Z beach: nyef: Long time no see. What are you working on these days? 2014-09-12T03:50:21Z nyef: Right now, looking at .xls files. 2014-09-12T03:50:33Z beach: Oh! :( 2014-09-12T03:50:45Z nyef: It's a bit of a distraction, but a welcome one. 2014-09-12T03:52:13Z nand1 joined #lisp 2014-09-12T03:53:52Z beach: Question: the Common Lisp HyperSpec says that MACROLET is influenced by declarations, SYMBOL-MACROLET, and MACROLET. What declarations influence it? I can think of OPTIMIZE, but are there declarations that influence the semantics. 2014-09-12T03:54:03Z nand1 quit (Remote host closed the connection) 2014-09-12T03:54:55Z vydd joined #lisp 2014-09-12T03:54:58Z vydd quit (Changing host) 2014-09-12T03:54:58Z vydd joined #lisp 2014-09-12T03:56:14Z nyef: ... IGNORABLE isn't a declaration identifier? 2014-09-12T03:56:54Z beach: It is. 2014-09-12T03:57:18Z beach: But IGNORABLE shouldn't change the semantics either. 2014-09-12T03:57:39Z nyef: It's not listed in the glossary entry for "declaration specifier". 2014-09-12T03:57:53Z beach: It is. 2014-09-12T03:57:59Z beach: clhs 3.3.3 2014-09-12T03:57:59Z specbot: Declaration Identifiers: http://www.lispworks.com/reference/HyperSpec/Body/03_cc.htm 2014-09-12T03:58:13Z beach: Bottom-left in fig 3.9 2014-09-12T03:58:23Z nyef: The glossary, not the main body. 2014-09-12T03:58:26Z beach: Oh. 2014-09-12T03:58:31Z beach: Must be a mistake. 2014-09-12T03:58:34Z nyef: clhs declaration identifier 2014-09-12T03:58:37Z nyef: Hrm. 2014-09-12T03:58:43Z harish joined #lisp 2014-09-12T03:58:50Z nyef: Guess specbot doesn't do that. /-: 2014-09-12T03:58:53Z Karl_Dscc quit (Remote host closed the connection) 2014-09-12T03:59:16Z beach: I was thinking SPECIAL, because when a variable is declared SPECIAL I was thinking it does not count as a "local variable". 2014-09-12T03:59:22Z vydd quit (Ping timeout: 245 seconds) 2014-09-12T03:59:29Z boogie joined #lisp 2014-09-12T03:59:35Z nand1 joined #lisp 2014-09-12T03:59:50Z beach: clhs macrolet 2014-09-12T03:59:50Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_flet_.htm 2014-09-12T04:00:32Z nyef: The declarations affect the /definitions/, meaning the expansion functions? 2014-09-12T04:00:35Z beach: It says "the consequences are undefined if the local macro definitions reference any local variable or function binding". 2014-09-12T04:01:22Z beach: nyef: Yeah, OK. 2014-09-12T04:01:58Z beach: So, next question: would a reasonable implementation of macrolet be to minimally compile it, and then enclose it in the null lexical environment? 2014-09-12T04:02:35Z Harag joined #lisp 2014-09-12T04:03:15Z nug700 joined #lisp 2014-09-12T04:04:49Z Harag quit (Client Quit) 2014-09-12T04:05:10Z Bike: i think special would be the main one. like it usually is. shouldn't be a declaration far as i'm concerned. 2014-09-12T04:05:29Z JokesOnYou77 joined #lisp 2014-09-12T04:05:35Z JokesOnYou77: Hi all 2014-09-12T04:05:35Z beach: Yeah. 2014-09-12T04:05:42Z nug700_ quit (Ping timeout: 245 seconds) 2014-09-12T04:05:43Z beach: Hello JokesOnYou77. 2014-09-12T04:05:51Z Bike: When you say "it" do you mean the macro functions? If so, yeah I think that makes sense. 2014-09-12T04:06:04Z Bike: well, no. you can nest macrolets. 2014-09-12T04:06:19Z beach: Bike: Though I created a test for SBCL, and couldn't get SPECIAL to make any difference. 2014-09-12T04:06:25Z JokesOnYou77: If i have a recursive call thats within the scope of a let, is it still tail recursive? 2014-09-12T04:06:42Z Bike: if the let only does lexical variables, yes. 2014-09-12T04:07:17Z JokesOnYou77: So (let ((some-var (something))) (recursive-call (cons some-var acc))) 2014-09-12T04:07:17Z rme quit (Quit: rme) 2014-09-12T04:07:17Z rme quit (Quit: rme) 2014-09-12T04:07:50Z Bike: yeah, that's a tail call. 2014-09-12T04:08:29Z Bike: Basically it's a tail call if nothing has to happen after the call. Do you know any assembly/basic machine stuff? 2014-09-12T04:08:30Z Harag joined #lisp 2014-09-12T04:08:33Z JokesOnYou77: Bike, cool. Ty! 2014-09-12T04:09:18Z JokesOnYou77: Bike, i mean, i know enough. I wasnt sure if the scope of the let counted as something else. 2014-09-12T04:09:42Z JokesOnYou77: Whats the deeper explanation? 2014-09-12T04:10:32Z beach: JokesOnYou77: What Bike said: if there is nothing to do after the call, other than return, then it's a tail call. 2014-09-12T04:10:34Z Bike: well, usually the way a function call works is, you save the "return address" which is the code right after the call, and then jump to where the function's text is. when the function is done it reads the return address and jumps back to there. 2014-09-12T04:10:56Z Bike: if a function calls another function, though, it has to save its return address somewhere else (usually the stack) so that it can perform the above procedure without runing everything. 2014-09-12T04:11:06Z Harag quit (Client Quit) 2014-09-12T04:11:18Z Bike: in a tail call, you ignore that and don't save a return address at all, so that the called function just returns to where the original call was from. 2014-09-12T04:11:30Z JokesOnYou77: A go to, right? 2014-09-12T04:11:36Z Bike: in C terms, yes. 2014-09-12T04:12:38Z Bike: whereas a normal call is like "return_address = aftercall; goto function_to_call; aftercall:" except that you can't save labels as data in C like t hat. 2014-09-12T04:13:12Z JokesOnYou77: Yeah, that makes sense with what i understood. I was just getting tripped up by the let. Ive been doing a lot of tree traversal so a lot of recursion and i want to make sure im at least relatively optimized. 2014-09-12T04:14:01Z __main__ quit (Read error: Connection reset by peer) 2014-09-12T04:14:06Z beach: JokesOnYou77: Only a very naive implementation would perform some action as a result of the LET going out of scope. 2014-09-12T04:14:35Z Bike: (unless it's a dynamic binding) 2014-09-12T04:14:55Z beach: Right, or if it is wrapped in UNWIND-PROTECT or something. 2014-09-12T04:15:17Z __main__ joined #lisp 2014-09-12T04:15:40Z JokesOnYou77: Nah just in a labels. 2014-09-12T04:16:24Z nyef: Depending on how you use the LABELS functions, it might prevent tail-call. 2014-09-12T04:16:51Z JokesOnYou77: Rlly?? Ive always put my recursive helper in a labels 2014-09-12T04:17:09Z Bike: i'm blanking on how that would happenl 2014-09-12T04:17:12Z Bike: happen. 2014-09-12T04:17:54Z nyef: Bike: Declare the LABELS function to be D-X and pass it as an argument somewhere. 2014-09-12T04:18:27Z Bike: spooky. i don't think i get d-x very much, honestly. 2014-09-12T04:18:51Z spacebat: I'm looking at taking a lisp job with a local company and I'm wondering what I could ask that might indicate they are using it well, or ring alarm bells 2014-09-12T04:19:28Z drmeister: beach: You are working on macrolet - good. I implemented that by augmenting the lexical environment with the macro expansion functions and then generating code for the body. I don't do any minimal compilation. 2014-09-12T04:19:45Z JokesOnYou77 quit (Remote host closed the connection) 2014-09-12T04:21:19Z beach: drmeister: In a cross compiler, you have to decide how to "generate code for the body". One way would be to call COMPILE, but COMPILE can only handle the null lexical environment. My solution was to minimally compile it, so that there is no longer any references to the lexical environment. 2014-09-12T04:21:53Z drmeister: When I was looking at Cleavir and COMPILE-FILE I noticed that it was just a stub. 2014-09-12T04:22:01Z Bike: ohhhhh, that's what you meant. minimally compile it /in the lexical environment/ and then enclose it in null. that makes sense. 2014-09-12T04:22:09Z beach: Bike: Yes. 2014-09-12T04:22:12Z drmeister: I implemented a COMPILE-IN-ENV that compiles in a lexical environment. 2014-09-12T04:22:37Z drmeister: COMPILE calls it with the NIL/top-level environment. 2014-09-12T04:22:45Z knob9876 joined #lisp 2014-09-12T04:22:47Z beach: drmeister: I have been working on the cross compiler first, and MACROLET is tricky then. 2014-09-12T04:23:25Z drmeister: I never worried about cross-compilation so I can't argue. 2014-09-12T04:23:36Z beach: drmeister: In a cross compiler, it would be advantageous to have the macro expander run as a host function. 2014-09-12T04:23:56Z drmeister: What is a host function? 2014-09-12T04:24:36Z beach: If you cross compile, the HOST is the CL system the compiler runs in, and the TARGET is the CL system that you are compiling for. 2014-09-12T04:24:48Z knob quit (Ping timeout: 272 seconds) 2014-09-12T04:24:51Z beach: So a host function is a function in the host system. 2014-09-12T04:25:36Z drmeister: Why is it advantageous to run it as a host function? 2014-09-12T04:26:20Z beach: drmeister: Because you don't have the target environment at your disposal when you cross compile. So either you make the host system run the macro expander, or else you have to have some kind of interpreter for the target running in the host. 2014-09-12T04:26:57Z impulse quit (Ping timeout: 264 seconds) 2014-09-12T04:27:38Z drmeister: Is the problem that side effects will end up in the host system and the lexical environment is for the target system? Or am I confusing things? 2014-09-12T04:28:23Z drmeister: That question may not even make sense. Don't waste brainpower trying to figure it out if it doesn't. 2014-09-12T04:28:24Z impulse joined #lisp 2014-09-12T04:28:25Z beach: drmeister: It is much more primitive than that. MACROLET creates an expander that is called during the compilation process. 2014-09-12T04:28:36Z drmeister: Right, I got that. 2014-09-12T04:28:46Z beach: drmeister: So the expander must be executable. 2014-09-12T04:28:52Z drmeister: Yes. 2014-09-12T04:29:02Z beach: If it is a taget function, you can't run it, because you are not in the target environment. 2014-09-12T04:29:24Z beach: So either it is a host function, or you interpret it. 2014-09-12T04:30:08Z drmeister: So you execute it on the host system because that is all you have. I guess I can't even conceive of how you would use an interpreter to interpret it in a simulated target environment. Is that the idea? 2014-09-12T04:30:34Z beach: Yes. 2014-09-12T04:31:01Z drmeister: I guess when you say "advantageous" I'm thinking "darn near impossible to avoid". 2014-09-12T04:31:04Z beach: Though, you can of course write an interpreter for your target in your host. But it is much harder to do, and you need to know what target you have then. 2014-09-12T04:31:20Z drmeister: "running it in the host environment" that is. 2014-09-12T04:31:29Z beach: Yes. 2014-09-12T04:31:52Z beach: Especially if you want the conversion from forms to ASTs to be independent of the target. 2014-09-12T04:32:22Z drmeister: Ok, so I'm not missing anything - I simply discounted the possibility of running the macro as anything but a host function. 2014-09-12T04:32:25Z nyef: Just wait until you have to deal with calls to GET-SETF-EXPANSION. d-: 2014-09-12T04:33:06Z drmeister: nyef: When does that happen? 2014-09-12T04:33:17Z beach: Luckily, SETF expanders are all global. 2014-09-12T04:33:37Z drmeister: Right - so why is G-S-E a problem? 2014-09-12T04:33:46Z nyef: beach: Umm... SETF interacts with MACROLET, FLET, LABELS, and SYMBOL-MACROLET in fun ways. 2014-09-12T04:34:05Z beach: Yes, there are cases where cross compilation does not work. 2014-09-12T04:34:18Z Bike: so as long as this is happening, i gotta ask - why does find-class take an environment argument? 2014-09-12T04:34:37Z nyef: There are a couple of places in SBCL where weird things happen to support cross-compilation macroexpansion. 2014-09-12T04:34:39Z drmeister wraps ignorance around himself like a shield. 2014-09-12T04:34:41Z Bike: clhs says something but... i don't get it 2014-09-12T04:34:52Z madrik joined #lisp 2014-09-12T04:35:13Z beach: Bike: I am guessing it could the the compilation environment (a global environment) which may be distinct from the global runtime environment. 2014-09-12T04:35:25Z Bike: that's what it says, yeah. 2014-09-12T04:35:41Z Bike: i think, like, sbcl for example ignores that argument, though? and ccl uses it maybe 2014-09-12T04:35:58Z drmeister: beach: Does the CLHS say anything about cross-compilation or are you working on it because you are trying to write something very general? 2014-09-12T04:36:08Z beach: drmeister: the latter. 2014-09-12T04:36:42Z beach: drmeister: Everything becomes an order of magnitude harder when it has to be implementation independent. 2014-09-12T04:37:12Z drmeister: Understood. I was very focused on one back-end (LLVM) and LLVM does cross-compilation for different backends for me. 2014-09-12T04:37:12Z beach: But it has the advantage of being much "cleaner" as well, once you figure it out. 2014-09-12T04:38:11Z drmeister: Wait, isn't cross-compilation for targeting different instruction sets? 2014-09-12T04:38:23Z drmeister: Different CPU's/backends. 2014-09-12T04:38:24Z nand1 quit (Remote host closed the connection) 2014-09-12T04:38:29Z beach: drmeister: In the general case, yes. 2014-09-12T04:39:11Z drmeister: What is the difference between a target environment and a host environment at the Common Lisp language level? 2014-09-12T04:39:12Z Bike: targeting one instruction set from another. 2014-09-12T04:39:19Z Bike: beach is targeting one lisp from another. 2014-09-12T04:39:33Z Bike: drmeister: different representations of environments, for instance 2014-09-12T04:39:40Z beach: drmeister: The problem is that the Common Lisp HyperSpec does not talk about how environments are represented or accessed. 2014-09-12T04:39:56Z beach: drmeister: And since you need environments when you compile, you have differences right there. 2014-09-12T04:40:01Z Bike: but you have to distinguish everything else, too, like host symbols versus target symbols 2014-09-12T04:40:03Z drmeister: Oh good gracious - I thought you were just targeting SICL. 2014-09-12T04:40:07Z mr-foobar quit (Quit: Leaving...) 2014-09-12T04:40:18Z beach: drmeister: No, it's for you! :) 2014-09-12T04:41:14Z drmeister: I know the CLHS doesn't say anything about the representation of environments - they are the most crucial and least talked about aspect of CL. 2014-09-12T04:41:38Z CrazyWoods joined #lisp 2014-09-12T04:41:45Z drmeister: Don't worry about me and Clasp - we take care of ourselves :-) 2014-09-12T04:42:06Z isoraqathedh joined #lisp 2014-09-12T04:42:25Z Bike: the funny thing is environments are actually described pretty closely, like there are full lists of what they contain, it's just all inaccessible :/ 2014-09-12T04:42:39Z beach: drmeister: I know. But I just finished the implementation-customizable phase 1 of the compiler, i.e., turning forms into ASTs. 2014-09-12T04:43:33Z beach: I haven't tested it yet, so it is not ready for prime time yet. But the basic idea appears to work. 2014-09-12T04:43:53Z drmeister: I'm still fuzzy on the "representation of environments" thing. I know how I implement my environments. I figure once the rubber hits the road and I start trying to incorporate Cleavir into Clasp I'll get an quick education. 2014-09-12T04:44:03Z beach: I even have an example of customizing it. 2014-09-12T04:44:06Z nand1` joined #lisp 2014-09-12T04:44:07Z drmeister: What I learned about environments I learned on the streets. 2014-09-12T04:44:10Z beach: The "hostile" environment. :) 2014-09-12T04:44:41Z drmeister: Exactly, the environment of "hard knocks". 2014-09-12T04:44:42Z frkout_ quit (Remote host closed the connection) 2014-09-12T04:45:08Z frkout joined #lisp 2014-09-12T04:46:05Z beach: http://paste.lisp.org/+32VE 2014-09-12T04:46:45Z beach: It is how I detect whether a symbol is a special variable in the global environment. 2014-09-12T04:48:15Z Bike: why bogus? 2014-09-12T04:48:40Z beach: Because the object is not really an environment, just something to dispatch on. 2014-09-12T04:48:56Z kcj joined #lisp 2014-09-12T04:48:59Z Bike: um, wow, this is really nasty. 2014-09-12T04:49:05Z beach: I know. 2014-09-12T04:49:20Z beach: It feels like the GNU automake tools, or whatever they are called. 2014-09-12T04:49:34Z Bike: This basically sucks. I think I might have had the same problem once? Still, wow. 2014-09-12T04:49:50Z Bike: Any chance you can use cltl2 at least conditionally? SBCL and CCL support it. 2014-09-12T04:49:52Z beach: It was fun to write though! :) 2014-09-12T04:50:05Z Bike: and allegro i guess. 2014-09-12T04:50:40Z beach: Bike: Oh, it is not a problem, really. Any serious user would define methods for environments in their own implementation. 2014-09-12T04:50:53Z Bike: ah. 2014-09-12T04:51:08Z beach: It was just amusing to see what could be done in the general case. 2014-09-12T04:51:11Z spacebat: LW support cltl2? 2014-09-12T04:52:29Z drmeister: For instance, my environments are grouped. For lexical environment I have C++ classes ValueEnvironment, FunctionEnvironment, SymbolMacroletEnvironment, MacroletEnvironment, TagbodyEnvironment etc. They can each contain a group of bindings or labels and a parent environment. For your ADD-LEXICAL-VARIABLE I'll have to check the current lexical environment and if it's a ValueEnvironment I'll just add the lexica 2014-09-12T04:52:29Z drmeister: l variable to it. If it isn't a ValueEnvironment I'll have to create one and push it as the current environment and then add the lexical variable to it. 2014-09-12T04:52:35Z drmeister: Bleh - sorry 2014-09-12T04:52:44Z beach: I allow for customization in 3 levels: 1. Customize for lexical compilation environments in the target (always works). 2. Customize only for global target environments (works unless you call macroexpand in (say) a SETF expander). 3. Don't customize (may or may not work). 2014-09-12T04:52:59Z drmeister: beach: I understand what you are doing. It's as complicated as it needs to be. 2014-09-12T04:53:23Z spacebat: the job I'm going for involves LW, which I know little about as an implementation 2014-09-12T04:54:14Z Bazzie quit (Quit: life sucks; drop out) 2014-09-12T04:55:27Z drmeister: Environments can be represented by something as simple as an a-list - right? I think ECL does that. They have entries in the a-list that represent boundaries between different kinds of lexical environments. 2014-09-12T04:55:32Z vydd joined #lisp 2014-09-12T04:55:45Z nand1` quit (Remote host closed the connection) 2014-09-12T04:55:56Z drmeister: That's the little I gleaned from digging through ECL's compiler. 2014-09-12T04:56:01Z Bike: yeah, it's just a mapping. it'll get a bit messy is all. 2014-09-12T04:56:16Z beach: drmeister: The way the compilation environment is represented is probably not terribly important. 2014-09-12T04:57:14Z beach: Bike: It gets very messy in fact. 2014-09-12T04:57:56Z Bike: i remember ecl using alists as environments because somebody did some horrible thing in a macro with &environment and ended up trying to execute one 2014-09-12T04:58:05Z Bike: cos they assumed environments would be self-evaluating objects. 2014-09-12T04:58:19Z harish quit (Ping timeout: 252 seconds) 2014-09-12T04:58:19Z Kruppe quit (Ping timeout: 252 seconds) 2014-09-12T04:58:20Z beach: Heh! Nice! (so to speak) 2014-09-12T04:58:59Z beach: In Cleavir, I use a chain of standard objects, so that I can dispatch on their classes. 2014-09-12T04:59:03Z jusss quit (Ping timeout: 252 seconds) 2014-09-12T04:59:41Z beach: I do that so that an implementation can subclass some environment classes, and things will still work. 2014-09-12T04:59:55Z drmeister: A chain of standard objects - that sounds like what I did. 2014-09-12T05:00:00Z malglim quit (Read error: Connection reset by peer) 2014-09-12T05:00:09Z vydd quit (Ping timeout: 255 seconds) 2014-09-12T05:00:30Z drmeister: Do you have a separate environment class for function bindings and value bindings? 2014-09-12T05:00:38Z drmeister: s/class/classes 2014-09-12T05:00:45Z beach: Yes. 2014-09-12T05:01:16Z vanila quit (Quit: Leaving) 2014-09-12T05:01:39Z CrazyWoods quit (Ping timeout: 252 seconds) 2014-09-12T05:01:39Z nell quit (Ping timeout: 252 seconds) 2014-09-12T05:01:39Z malglim_ joined #lisp 2014-09-12T05:01:40Z drmeister: So if you have (flet ((x () (print "x"))) (let ((y 1)) ...))) It is represented as a value-environment -> function-environment? 2014-09-12T05:01:45Z jlongster quit (Ping timeout: 264 seconds) 2014-09-12T05:01:56Z CrazyWoods joined #lisp 2014-09-12T05:02:02Z drmeister: In the body of the let. 2014-09-12T05:02:06Z beach: Pretty much, yes. 2014-09-12T05:02:25Z beach: Again, doing it in an implementation-independent way makes things an order of magnitude harder. I use generic dispatch in each step so that the implementation can override, extend, etc. 2014-09-12T05:02:39Z harish joined #lisp 2014-09-12T05:03:38Z drmeister: So when I'm compiling the expression above and just before I hit the let the env = function-environment. When I hit the let I would augment the environment using ADD-LEXICAL-VARIABLE. 2014-09-12T05:04:06Z beach: Yeah, sounds right. 2014-09-12T05:04:31Z beach: But then it gets messy if y is globally defined to be special. 2014-09-12T05:04:33Z drmeister: I would then create a new value-environment, point it at the function-environment and each ADD-LEXICAL-VARIABLE would then add a new entry to the value-environment. 2014-09-12T05:04:41Z beach: And then it gets even messier when you have type declarations. 2014-09-12T05:05:03Z beach: drmeister: Yes, that's pretty much what I do too. 2014-09-12T05:05:16Z drmeister: Right, but that's just associating metadata with each variable name. 2014-09-12T05:05:28Z beach: No. 2014-09-12T05:05:35Z drmeister: No - why not? 2014-09-12T05:05:42Z beach: Because if it is globally special, you can't add a lexical variable environment. 2014-09-12T05:05:43Z Kruppe joined #lisp 2014-09-12T05:05:57Z beach: But if it is only locally special in a surrounding environment you should. 2014-09-12T05:05:58Z nand1 joined #lisp 2014-09-12T05:05:59Z nand1 quit (Read error: Connection reset by peer) 2014-09-12T05:06:05Z drmeister: Right globally special is different but if it's just type information or ignore information. 2014-09-12T05:06:13Z munksgaard joined #lisp 2014-09-12T05:06:22Z Bike: you can have lexical type information on a globally special variable. 2014-09-12T05:06:24Z Bike: and such things. 2014-09-12T05:06:33Z zeitue quit (Ping timeout: 246 seconds) 2014-09-12T05:06:36Z drmeister: You have to deal with special declarations, the rest I ignore currently. 2014-09-12T05:06:37Z beach: Yep. It is REALLY MESSY. 2014-09-12T05:07:06Z Bike: i'm pretty sure CL would be way, way cleaner if special variables were more separate. 2014-09-12T05:07:19Z nand1 joined #lisp 2014-09-12T05:07:20Z nand1 quit (Remote host closed the connection) 2014-09-12T05:07:26Z beach: Yeah. 2014-09-12T05:07:29Z Bike: i don't think i even understand the design decisions. like, why is progv a special operator? i don't get it. 2014-09-12T05:07:54Z drmeister: Yes - "you can ignore declare's - except you can't" 2014-09-12T05:07:54Z nyef: beach: Does it make sense to pass a closure as the :STREAM initarg to the END-OF-FILE condition type? 2014-09-12T05:08:04Z nand1 joined #lisp 2014-09-12T05:08:25Z nyef: My initial instinct is a horrified "NO!", but I'm seeing it done, so I want a second opinion. 2014-09-12T05:09:15Z beach: nyef: I tend to agree with you. Did you see it somewhere? 2014-09-12T05:09:23Z nyef: Yeah. 2014-09-12T05:09:27Z nand1 quit (Remote host closed the connection) 2014-09-12T05:09:34Z nyef: I'll keep quiet about where, to protect the guilty. (-: 2014-09-12T05:09:35Z beach: drmeister: You can't ignore SPECIAL and NOTINLINE. 2014-09-12T05:09:50Z Bike: http://clhs.lisp.se/Body/f_stm_er.htm#stream-error-stream so, uh 2014-09-12T05:10:00Z Bike: beach: you can ignore notinline if you also ignore compiler macros, at least. 2014-09-12T05:10:01Z drmeister: If you don't inline anything you can ignore notinline. 2014-09-12T05:10:10Z Bike: oh, right, also regular inlining. 2014-09-12T05:10:23Z beach: Indeed. 2014-09-12T05:10:26Z nand1 joined #lisp 2014-09-12T05:10:36Z drmeister: You can see why I'm so interested in Cleavir. 2014-09-12T05:11:04Z beach: Yep. 2014-09-12T05:11:18Z Bike: you know what was weird, relating to condition stuff, is that functions are format controls. you can do (error formatter arguments...) and make a simple error. 2014-09-12T05:11:20Z drmeister: I'm looking at my current compiler as my "John the Baptist compiler". Wandering in the wilderness announcing the coming of the savior. 2014-09-12T05:12:52Z beach doesn't understand references to religious myths, but can sometimes recognize them as such. 2014-09-12T05:13:03Z innertracks joined #lisp 2014-09-12T05:13:23Z drmeister: But actually I do have inlining - LLVM does inlining. I'm not sure what language level inlining will do for speed. 2014-09-12T05:13:53Z drmeister: beach: 11 years of private catholic boys school beat religion out of me. But I remember the stories. 2014-09-12T05:14:15Z beach: Difficult childhood. 2014-09-12T05:14:25Z anannie quit (Ping timeout: 260 seconds) 2014-09-12T05:14:25Z drmeister: I got better. 2014-09-12T05:15:28Z drmeister: Anyway, I have an early appointment I better get to bed. 2014-09-12T05:15:37Z beach: drmeister: 'night! 2014-09-12T05:15:39Z drmeister: Keep fighting the good fight and keep watching the skies! 2014-09-12T05:15:42Z drmeister trundles off 2014-09-12T05:16:20Z pranavrc joined #lisp 2014-09-12T05:16:20Z pranavrc quit (Changing host) 2014-09-12T05:16:20Z pranavrc joined #lisp 2014-09-12T05:16:27Z nyef: Bed sounds good. 2014-09-12T05:16:30Z nyef quit (Quit: G'night all.) 2014-09-12T05:16:53Z resttime: i have a window created through a CFFI lib 2014-09-12T05:17:06Z beach: resttime: Sorry to hear that. 2014-09-12T05:17:15Z resttime: lol 2014-09-12T05:17:26Z resttime: it's giving me problems regarding retry slime 2014-09-12T05:18:03Z resttime: any ideas why slime creates a new window everything I [RETRY] in debugger when I evaluate something wrong? 2014-09-12T05:18:22Z boogie quit (Remote host closed the connection) 2014-09-12T05:18:26Z resttime: the old window is left around too 2014-09-12T05:18:34Z beach: We really, really need a native GUI library. 2014-09-12T05:18:36Z resttime: and i can't do anything with it nor close them 2014-09-12T05:19:17Z jkaye joined #lisp 2014-09-12T05:19:22Z resttime: "it" referring to the older windows 2014-09-12T05:19:46Z Shaftoe___ joined #lisp 2014-09-12T05:19:49Z Guest34777 joined #lisp 2014-09-12T05:20:51Z innertracks quit (Quit: innertracks) 2014-09-12T05:21:53Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-12T05:22:12Z jusss joined #lisp 2014-09-12T05:23:09Z jleija quit (Quit: leaving) 2014-09-12T05:23:56Z resttime: it's also a problem when I try to abort/go back to slime toplevel 2014-09-12T05:24:05Z resttime: the window just gets abandoned... 2014-09-12T05:24:20Z jkaye quit (Ping timeout: 272 seconds) 2014-09-12T05:24:28Z resttime: abandoned in memory somewhere floating in limbo 2014-09-12T05:24:41Z Guest34777 quit (Ping timeout: 268 seconds) 2014-09-12T05:25:45Z J_Arcane2: Perhaps the FFI library in question simply doesn't expect a runtime that can modify itself midstream like a Lisp can? 2014-09-12T05:26:16Z izirku quit 2014-09-12T05:27:02Z zeitue joined #lisp 2014-09-12T05:27:14Z beach: I wonder how many hours are spent fighting with foreign GUI libraries; hours that could be spent creating a native GUI library. 2014-09-12T05:27:46Z jlongster joined #lisp 2014-09-12T05:28:33Z resttime: J_Arcane2, maybe 2014-09-12T05:28:51Z resttime: funny thing though is that it's fine with me modifying functions while it's runnig 2014-09-12T05:29:15Z resttime: it works up to the point until I screw up something an enter the debugger 2014-09-12T05:29:38Z zRecursive: C-M-X ? 2014-09-12T05:29:55Z jegaxd26 quit (Remote host closed the connection) 2014-09-12T05:30:31Z resttime: zRecursive, yes 2014-09-12T05:30:50Z oleo__ quit (Quit: Verlassend) 2014-09-12T05:31:42Z pillton: beach: If humans are involved, then it isn't optimal. 2014-09-12T05:33:09Z resttime: i can't figure why i can't just fix my error, re-eval definition, and then retry the function with SLIME 2014-09-12T05:33:25Z pillton: resttime: Is the GUI event loop still running? 2014-09-12T05:33:30Z resttime: because just re-eval'ing definition works fine 2014-09-12T05:34:00Z resttime: pillton, nope the window is pretty much dead 2014-09-12T05:34:15Z resttime: can't close it, it doesn't redraw image anymore, and etc. 2014-09-12T05:34:15Z pillton: resttime: Well, that is why it isn't responding. 2014-09-12T05:34:35Z jlongster quit (Ping timeout: 276 seconds) 2014-09-12T05:35:28Z beach: pillton: Yeah, humans never cease to amaze me. 2014-09-12T05:36:17Z resttime: sorry I'm not exactly following, i can't touch it anymore and the new window that slime creates is pretty much what's used from then on 2014-09-12T05:36:25Z |3b|: resttime: GUI libs tend to want something in your code responding to events for the window to keep working properly (including closing) so you need to make sure you either keep that running or close it properly on unexpected exit 2014-09-12T05:36:29Z enupten joined #lisp 2014-09-12T05:36:55Z pillton: resttime: Try invoking something akin to processEvents in your GUI library. http://qt-project.org/doc/qt-4.8/qcoreapplication.html#processEvents 2014-09-12T05:37:02Z enupten quit (Client Quit) 2014-09-12T05:37:06Z |3b|: sometimes you can run the event loop again and old windows will start responsing 2014-09-12T05:37:11Z J_Arcane2: beach: Well, because a native GUI library would still have to interact with foreign GUI libraries in order to be cross-platform. so it's really just a question of who gets to do the fighting, and people are inherently resistant to requests to do painful things for others instead of themselves. ;) 2014-09-12T05:38:16Z pillton: resttime: Developing GUI applications in SLIME is tricky. 2014-09-12T05:38:20Z |3b| doesn't think a 'native' lisp GUI lib will help unless you manage to find some odd platform that lets you just write directly to some in-memory framebuffer 2014-09-12T05:38:34Z resttime: well specifically i'm using a game programming lib bindings i wrote myself, perhaps that has something to do with it? 2014-09-12T05:38:43Z |3b|: though lower-level FFI might give you more opportunities for handling things more nicely 2014-09-12T05:38:54Z resttime: not necessarily GUI work though it does have an event loop and etc. 2014-09-12T05:39:17Z |3b|: resttime: it depends on the lib you are calling, the lisp side bindings, the code calling it, etc 2014-09-12T05:39:29Z lifeng quit (Quit: Ex-Chat) 2014-09-12T05:39:32Z malbertife joined #lisp 2014-09-12T05:39:46Z resttime: https://github.com/resttime/cl-liballegro/blob/master/allegro/interface.lisp 2014-09-12T05:40:04Z |3b| can usually keep a glut or glop window running for a while despite errors and recompiling things, but it takes some effort to get things set up in the beginning, and need to be careful which restarts you use in debugger 2014-09-12T05:41:02Z J_Arcane2: |3b|: In ye olden times the typical approach for a lot of X libraries on Windows was just to make the Window call, but draw absolutely everything in it with their own libraries. Which worked, but also looked ugly as hell on platforms with better UI consistency like Windows or Mac. So there's kinda been a shift away from that kind of thing that I've seen, 2014-09-12T05:41:30Z beach: OK, time for me to get some work done. Keep fighting! 2014-09-12T05:41:33Z |3b|: J_Arcane2: not good enough, if you stop responding to events there is still a dead window sitting around 2014-09-12T05:41:33Z beach left #lisp 2014-09-12T05:41:37Z resttime: the program in question: http://a.pomf.se/ejkkbf.webm 2014-09-12T05:42:08Z resttime: i designed my lisp interface to use methods which you redefine 2014-09-12T05:42:25Z |3b|: J_Arcane2: also, isn't that how lots of things work these days on x and windows? 2014-09-12T05:43:07Z resttime: though it was going to be something fun and simple but now i found something that an break workflow really badly in the future 2014-09-12T05:43:10Z resttime: *thought 2014-09-12T05:43:58Z |3b|: some hints for nicer GUI bindings: unwind-protect on event loops to close windows properly, 'continue' restarts on all boundaries between 'lib' and user code (particularly event handlers and idle/draw functions), so it can ignore an error in user code and keep running 2014-09-12T05:44:06Z J_Arcane2: |3b| : It could very well be that it's less that more are using the native toolkits, than more are just getting better at drawing and themeing things to look native. I confess to not really being a GUI programmer so I may have a mistaken impression. I have just noticed that where once I used to run into software still using Tk Motif style widgets even on Windows, I don't see that much anymore. 2014-09-12T05:44:40Z |3b|: J_Arcane2: not like even programs from the OS vendors use the 'native' widgets :p 2014-09-12T05:44:45Z resttime: |3b|, so you're saying I can fix this with exceptions handling? 2014-09-12T05:44:52Z |3b|: resttime: some of it 2014-09-12T05:44:56Z resttime: hmmmm 2014-09-12T05:45:09Z J_Arcane2: |3b|: True. :D MS Office for instance ... 2014-09-12T05:45:19Z resttime: is there a toplevel exceptions handler that I can insert? 2014-09-12T05:46:57Z |3b|: from looking at your code, i'd add an unwind-protect around the body of system-loop, and continue restart around the call to event-handler in process-event-queue 2014-09-12T05:48:00Z |3b|: the unwind-protect would try to close the window, and accept events but not call user code until there are no more events, which should allow the window to close (might need to respond to some 'close' event or something, dunno about that particular lib) 2014-09-12T05:48:50Z |3b|: also, put DO at the beginning of the clause in LOOP, not at the end of the previous clause :p 2014-09-12T05:49:35Z |3b|: and use WHEN instead of single-branch IF 2014-09-12T05:50:22Z munksgaard quit (Ping timeout: 252 seconds) 2014-09-12T05:50:29Z |3b|: actually, i guess the unwind-protect could be in run-system, since that already tries to clean up 2014-09-12T05:51:23Z |3b|: just move that into the cleanup-form* part of the unwind-protect so it gets called even if you don't exit cleanly 2014-09-12T05:51:48Z |3b|: you should be doing that anyway for the stuff that needs a call to foreign-free anyway 2014-09-12T05:52:05Z mr-foobar joined #lisp 2014-09-12T05:53:31Z MoALTz quit (Quit: Leaving) 2014-09-12T05:56:19Z vydd joined #lisp 2014-09-12T05:58:01Z jlongster joined #lisp 2014-09-12T05:58:14Z murftown joined #lisp 2014-09-12T05:58:31Z jtza8 joined #lisp 2014-09-12T05:58:52Z resttime: wow unwind protect destroys the previous window that's nice 2014-09-12T05:59:41Z resttime: still makes a new window on [RETRY] though 2014-09-12T05:59:56Z resttime: time to add the continue restart on process-event-quee 2014-09-12T06:00:20Z isoraqathedh quit (Quit: No Ping reply in 180 seconds.) 2014-09-12T06:00:43Z isoraqathedh joined #lisp 2014-09-12T06:01:05Z vydd quit (Ping timeout: 260 seconds) 2014-09-12T06:01:18Z nell joined #lisp 2014-09-12T06:01:48Z |3b|: right, you don't want to RETRY the form that created the window 2014-09-12T06:03:35Z |3b|: for continue restart, (with-simple-restart (continue "continue") ...)around the body of the loop might be enough 2014-09-12T06:06:26Z jlongster quit (Ping timeout: 276 seconds) 2014-09-12T06:06:37Z shka joined #lisp 2014-09-12T06:06:40Z shka: ave tux 2014-09-12T06:11:37Z Maurice_TCF joined #lisp 2014-09-12T06:12:10Z jegaxd26 joined #lisp 2014-09-12T06:16:18Z Maurice_TCF quit (Client Quit) 2014-09-12T06:18:17Z jegaxd26 quit (Remote host closed the connection) 2014-09-12T06:19:24Z jegaxd26 joined #lisp 2014-09-12T06:19:50Z BitPuffin joined #lisp 2014-09-12T06:20:21Z resttime: with-simple-restart seems to be the solution because it went on to crash since the rendering tried to access memory that didnt exist 2014-09-12T06:20:29Z logand joined #lisp 2014-09-12T06:20:41Z resttime: sweet 2014-09-12T06:20:57Z resttime: thanks for the help 2014-09-12T06:21:15Z resttime: learned quite a lot 2014-09-12T06:22:58Z munksgaard joined #lisp 2014-09-12T06:26:39Z anannie joined #lisp 2014-09-12T06:31:05Z HoloIRCUser1 joined #lisp 2014-09-12T06:32:03Z HoloIRCUser1 quit (Remote host closed the connection) 2014-09-12T06:33:18Z malbertife quit (Ping timeout: 255 seconds) 2014-09-12T06:37:27Z modula joined #lisp 2014-09-12T06:37:42Z defaultxr quit (Ping timeout: 245 seconds) 2014-09-12T06:37:42Z modula is now known as defaultxr 2014-09-12T06:38:25Z mishoo joined #lisp 2014-09-12T06:43:13Z pt1 joined #lisp 2014-09-12T06:43:51Z isoraqathedh quit (Ping timeout: 246 seconds) 2014-09-12T06:45:42Z ehu joined #lisp 2014-09-12T06:45:56Z isoraqathedh joined #lisp 2014-09-12T06:49:20Z Maurice_TCF joined #lisp 2014-09-12T06:51:10Z thrip quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-12T06:53:25Z gingerale joined #lisp 2014-09-12T06:53:26Z Maurice_TCF quit (Read error: Connection reset by peer) 2014-09-12T06:53:49Z xificurC joined #lisp 2014-09-12T06:57:09Z vydd joined #lisp 2014-09-12T06:59:05Z defaultxr quit (Quit: gnight) 2014-09-12T06:59:40Z Maurice_TCF joined #lisp 2014-09-12T07:02:20Z vydd quit (Ping timeout: 276 seconds) 2014-09-12T07:05:48Z kvda quit (Quit: x___x) 2014-09-12T07:06:12Z Px12 joined #lisp 2014-09-12T07:07:31Z arenz joined #lisp 2014-09-12T07:10:08Z Px12 quit (Remote host closed the connection) 2014-09-12T07:12:40Z zRecursive quit (Remote host closed the connection) 2014-09-12T07:15:05Z murftown quit (Quit: murftown) 2014-09-12T07:16:32Z pt1 quit (Ping timeout: 245 seconds) 2014-09-12T07:18:50Z murftown joined #lisp 2014-09-12T07:19:11Z murftown quit (Client Quit) 2014-09-12T07:19:33Z dorsocentral joined #lisp 2014-09-12T07:20:06Z prxq joined #lisp 2014-09-12T07:20:06Z Beetny joined #lisp 2014-09-12T07:20:24Z jkaye joined #lisp 2014-09-12T07:22:19Z Px12 joined #lisp 2014-09-12T07:23:10Z attila_lendvai joined #lisp 2014-09-12T07:23:39Z DrCode quit (Ping timeout: 264 seconds) 2014-09-12T07:24:24Z CrazyWoods quit (Quit: leaving) 2014-09-12T07:25:17Z jkaye quit (Ping timeout: 272 seconds) 2014-09-12T07:25:51Z DrCode joined #lisp 2014-09-12T07:26:51Z attila_lendvai quit (Client Quit) 2014-09-12T07:27:29Z Px12 quit (Remote host closed the connection) 2014-09-12T07:29:13Z djinni` quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-12T07:30:19Z hitecnologys joined #lisp 2014-09-12T07:32:22Z zacharias quit (Quit: Bye!) 2014-09-12T07:33:29Z djinni` joined #lisp 2014-09-12T07:33:33Z ehu quit (Ping timeout: 264 seconds) 2014-09-12T07:34:11Z mr-foobar quit (Ping timeout: 268 seconds) 2014-09-12T07:37:03Z cy quit (Quit: :q!) 2014-09-12T07:41:37Z Maurice_TCF_ joined #lisp 2014-09-12T07:42:17Z Maurice_TCF quit (Ping timeout: 245 seconds) 2014-09-12T07:48:14Z mr-foobar joined #lisp 2014-09-12T07:49:36Z ehu joined #lisp 2014-09-12T07:52:50Z jegaxd26 quit (Remote host closed the connection) 2014-09-12T07:53:34Z isoraqathedh quit (Ping timeout: 252 seconds) 2014-09-12T07:57:54Z jegaxd26 joined #lisp 2014-09-12T08:01:19Z przl joined #lisp 2014-09-12T08:01:52Z mrSpec joined #lisp 2014-09-12T08:03:51Z angavrilov joined #lisp 2014-09-12T08:11:15Z hitecnologys quit (Quit: hitecnologys) 2014-09-12T08:12:32Z hitecnologys joined #lisp 2014-09-12T08:14:14Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-12T08:15:29Z harish quit (Ping timeout: 260 seconds) 2014-09-12T08:17:54Z isoraqathedh joined #lisp 2014-09-12T08:18:51Z zacharias joined #lisp 2014-09-12T08:20:18Z pranavrc quit (Remote host closed the connection) 2014-09-12T08:23:53Z DGASAU quit (Read error: Connection reset by peer) 2014-09-12T08:24:36Z DGASAU joined #lisp 2014-09-12T08:25:30Z mtxp joined #lisp 2014-09-12T08:27:11Z ndrei joined #lisp 2014-09-12T08:29:52Z Px12 joined #lisp 2014-09-12T08:33:35Z JuanDaugherty joined #lisp 2014-09-12T08:35:20Z Px12 quit (Remote host closed the connection) 2014-09-12T08:46:02Z mtxp quit (Ping timeout: 245 seconds) 2014-09-12T08:53:00Z emma quit (Ping timeout: 246 seconds) 2014-09-12T08:54:25Z emma joined #lisp 2014-09-12T08:55:27Z mtxp joined #lisp 2014-09-12T08:58:47Z jlongster joined #lisp 2014-09-12T08:59:17Z emma quit (Ping timeout: 268 seconds) 2014-09-12T08:59:40Z emma joined #lisp 2014-09-12T08:59:59Z isoraqathedh quit (Ping timeout: 276 seconds) 2014-09-12T09:02:33Z isoraqathedh joined #lisp 2014-09-12T09:03:05Z J_Arcane2: OK, I do not understand why this does not work. https://ideone.com/cA8eAO 2014-09-12T09:03:27Z jlongster quit (Ping timeout: 272 seconds) 2014-09-12T09:04:04Z H4ns: J_Arcane2: make-hash-table defaults :test to 'eql 2014-09-12T09:04:26Z H4ns: J_Arcane2: and two strings with identical contents are not neccessarily 'eql - try :test #'equal 2014-09-12T09:04:46Z J_Arcane2: Ahh. I thought that might be the case. 2014-09-12T09:04:47Z emma quit (Ping timeout: 245 seconds) 2014-09-12T09:05:09Z J_Arcane2: Sometimes the CL koans are a little unclear on which parts they mean for you to modify. 2014-09-12T09:05:44Z J_Arcane2: Yup, that works. Thank you! 2014-09-12T09:05:47Z emma joined #lisp 2014-09-12T09:05:52Z nug700 quit (Quit: bye) 2014-09-12T09:11:24Z gjvc joined #lisp 2014-09-12T09:16:58Z urandom__ joined #lisp 2014-09-12T09:20:46Z fragamus joined #lisp 2014-09-12T09:20:48Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-12T09:22:24Z JuanDaugherty: koans. right. 2014-09-12T09:22:49Z JuanDaugherty: matches, Arcane, magic, & etc. 2014-09-12T09:23:07Z JuanDaugherty: s/s, A/s A/ 2014-09-12T09:25:01Z zvrba left #lisp 2014-09-12T09:25:55Z J_Arcane2: "CL provides the programmer with more than enough rope to hang himself." :D 2014-09-12T09:26:58Z shka: J_Arcane2: we still prefer double edged swords over blunt swords... 2014-09-12T09:27:50Z J_Arcane2: :D 2014-09-12T09:27:56Z dkcl joined #lisp 2014-09-12T09:28:52Z Devon joined #lisp 2014-09-12T09:29:17Z pranavrc joined #lisp 2014-09-12T09:29:17Z pranavrc quit (Changing host) 2014-09-12T09:29:17Z pranavrc joined #lisp 2014-09-12T09:29:53Z quazimodo joined #lisp 2014-09-12T09:31:01Z stepnem joined #lisp 2014-09-12T09:32:25Z Devon: Everybody: what distributed revision control do you use when LISPing? 2014-09-12T09:33:30Z J_Arcane2: Devon: I use Git w/Github for all my projects. 2014-09-12T09:34:36Z schjetne: Git, with my own Gitlab instance 2014-09-12T09:34:50Z mr-foobar quit (Read error: Connection reset by peer) 2014-09-12T09:35:13Z stassats joined #lisp 2014-09-12T09:35:59Z mr-foobar joined #lisp 2014-09-12T09:38:03Z hitecnologys: Who needs Gitlab when we have nice and shiny terminal? 2014-09-12T09:38:28Z hlavaty left #lisp 2014-09-12T09:38:35Z hlavaty joined #lisp 2014-09-12T09:38:53Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-12T09:40:35Z attila_lendvai joined #lisp 2014-09-12T09:44:21Z eli quit (Ping timeout: 264 seconds) 2014-09-12T09:48:48Z ggole joined #lisp 2014-09-12T09:49:09Z karupa is now known as zz_karupa 2014-09-12T09:49:34Z hitecnologys: Alright, I failed this one. Gitlab is not what I thought it is. Apology. 2014-09-12T09:50:08Z stassats: is it shiny as well? 2014-09-12T09:51:10Z wasamasa: gitlab is pretty shiny 2014-09-12T09:51:46Z JuanDaugherty: git is dominant in VCS right now 2014-09-12T09:51:57Z hitecnologys: stassats: I used to think it was some kind of GUI for managing repositories but it's rather collection of tools for collabarative development (wiki, issue tracker and stuff). 2014-09-12T09:52:37Z wasamasa: hitecnologys: if you like the github UI, installing gitlab comes pretty close to it 2014-09-12T09:54:36Z hitecnologys: wasamasa: I should probably set something like that up one day. It does looks quite nice. 2014-09-12T09:57:35Z wasamasa: hitecnologys: there's alternatives out there though, like the very recent gogs for people who are allergic to rails :P 2014-09-12T09:57:52Z wasamasa: hitecnologys: or perhaps you could write your own in CL :P 2014-09-12T09:58:16Z schjetne: hitecnologys: the terminal isn't nearly as nice and shiny as Magit, though 2014-09-12T10:00:05Z phax joined #lisp 2014-09-12T10:02:38Z ndrei quit (Ping timeout: 252 seconds) 2014-09-12T10:03:08Z hitecnologys: schjetne: Magit doesn't seem to support staging of single lines. In my opinion, tig is much better. 2014-09-12T10:03:24Z schjetne: I might look into that 2014-09-12T10:03:40Z stassats: i'm using the default vc in emacs, like a savage 2014-09-12T10:03:44Z H4ns: hitecnologys: magit supports staging of anzthing. 2014-09-12T10:03:58Z hitecnologys: wasamasa: I was actually thinking a lot about this but I don't think I can handle it. I've already good too much on my plate. Maybe in a few years I will, but I bet somebody will do it first. 2014-09-12T10:03:58Z H4ns: hitecnologys: just select what you want to stage, then press s 2014-09-12T10:04:26Z hitecnologys: H4ns: hmm. Which version of Magit do you use? I didn't work for me. At least not out of the box. 2014-09-12T10:04:41Z H4ns: hitecnologys: i install it from some package source. 2014-09-12T10:05:05Z hitecnologys: H4ns: in fact, I couldn't even manage to make Maggit correctly stage the whole file. Probably my bad then. 2014-09-12T10:05:17Z H4ns: hitecnologys: right. magit works very well. 2014-09-12T10:06:29Z hitecnologys: H4ns: anyway, I still prefer having open terminal around so I do almost all commits from there even though I have plugins for editors installed. 2014-09-12T10:06:32Z manfoo7` quit (Remote host closed the connection) 2014-09-12T10:06:42Z H4ns: hitecnologys: interesting 2014-09-12T10:07:27Z lambda joined #lisp 2014-09-12T10:08:22Z hitecnologys: H4ns: sorry, shutting myself up now. 2014-09-12T10:09:02Z BitPuffin quit (Read error: Connection reset by peer) 2014-09-12T10:09:02Z ered quit (Read error: Connection reset by peer) 2014-09-12T10:09:17Z BitPuffin joined #lisp 2014-09-12T10:11:16Z schjetne: It would be interesting to see Git support added to the CLIM environment, but who would use it? 2014-09-12T10:11:22Z ered joined #lisp 2014-09-12T10:12:10Z pt1 joined #lisp 2014-09-12T10:13:09Z quazimodo: do we do finite state machine style things in lisp/ 2014-09-12T10:13:10Z quazimodo: ? 2014-09-12T10:13:38Z stassats: what is exactly your question? 2014-09-12T10:14:03Z wasamasa: quazimodo: there are libraries using those 2014-09-12T10:14:23Z quazimodo: stassats: is it normal to find people using state machines in LISP programs often? It's relatively rare in the ruby world 2014-09-12T10:14:45Z quazimodo: I'd like to find as many uses for it as a tool, since it seems to make things very easy 2014-09-12T10:15:00Z wasamasa: quazimodo: I've seen it used for parsing and regex 2014-09-12T10:15:27Z quazimodo: wasamasa: i'm gonna go do a code review 2014-09-12T10:15:49Z stassats: it makes things which are suited for this easier, but anything beyond that is just obfuscation 2014-09-12T10:15:50Z quazimodo: anyway 2014-09-12T10:16:05Z stassats: similarly to the tail recursion instead of iteration 2014-09-12T10:16:22Z quazimodo: stassats: think so? 2014-09-12T10:16:35Z quazimodo: maybe 2014-09-12T10:16:38Z stassats: no, somebody else hijacked my keyboard 2014-09-12T10:17:04Z wasamasa: quazimodo: though I'm not completely sure of it, the regex library I had in mind is cl-irregsexp 2014-09-12T10:18:01Z JuanDaugherty quit (Remote host closed the connection) 2014-09-12T10:18:39Z wasamasa: quazimodo: you'll probably find more of them when searching for automata 2014-09-12T10:18:44Z quazimodo: it does make sense to use a state machine for parsing arbitrarily nested things 2014-09-12T10:20:02Z quazimodo: I hadn't thought of that. I've used them for very specific business rule problems in software, but never mathematically 2014-09-12T10:20:24Z fragamus quit (Quit: My iMac has gone to sleep. ZZZzzz…) 2014-09-12T10:21:18Z PuercoPop: quazimodo: this is a nice way to write fsm in lisp imho https://github.com/sshirokov/hinge/blob/master/src/http/fsm.lisp 2014-09-12T10:22:07Z quazimodo: fsm's fascinateme 2014-09-12T10:24:04Z stassats: the flying spaghetti monster? 2014-09-12T10:26:31Z quazimodo: PuercoPop: i'm reading through it now 2014-09-12T10:38:20Z gabriel-artigue joined #lisp 2014-09-12T10:38:48Z gabriel-artigue is now known as gggg 2014-09-12T10:41:56Z resttime: hypothetically how would one begin to tackle making native GUI library? 2014-09-12T10:42:13Z stassats: don't, use an existing one, like commonqt 2014-09-12T10:42:46Z brucem: stassats: no love for CLIM? 2014-09-12T10:42:54Z stassats: only hate 2014-09-12T10:42:57Z quazimodo: is clim even maintained? 2014-09-12T10:43:05Z wasamasa: perhaps some themes for clim would make it less hated 2014-09-12T10:43:08Z stassats: clim is just a standard 2014-09-12T10:43:09Z gravicappa joined #lisp 2014-09-12T10:43:13Z wasamasa: *mcclim 2014-09-12T10:43:24Z stassats: wasamasa: just working would be a good start 2014-09-12T10:43:26Z quazimodo: idno 2014-09-12T10:43:31Z |3b|: write a huge pile of FFI, then do a bunch of design work to try to make a 'nice' lisp api, then a bunch of work to implement the lisp api on top of the FFI 2014-09-12T10:43:35Z quazimodo: LISP libraries are old and unmaintained 2014-09-12T10:43:48Z quazimodo: no one uses this software. It's an excellent time to start renaming functions 2014-09-12T10:43:48Z stassats: true, good thing we all use Common Lisp, not LISP 2014-09-12T10:43:50Z |3b|: then repeat step 1 and 3 for the other OS you care about 2014-09-12T10:43:55Z quazimodo: s/software/language 2014-09-12T10:44:22Z quazimodo: you know what i mean 2014-09-12T10:44:23Z stassats: |3b|: ... 10 years later 2014-09-12T10:44:32Z |3b|: stassats: yeah, pretty much 2014-09-12T10:44:38Z stassats: quazimodo: i do not 2014-09-12T10:44:38Z phax quit (Quit: phax) 2014-09-12T10:44:59Z |3b|: but maybe they are retired and want a long-term hobby :p 2014-09-12T10:45:03Z quazimodo: you need surgery to remove the stick up your ass 2014-09-12T10:45:52Z stassats: ... that didn't take long 2014-09-12T10:46:46Z quazimodo: well you push too hard man. some people arent as knowledgeable, smart or divinely opinionated as you 2014-09-12T10:46:57Z jegaxd26 quit (Ping timeout: 245 seconds) 2014-09-12T10:49:25Z gggg: exit 2014-09-12T10:49:28Z gggg quit (Quit: leaving) 2014-09-12T10:49:34Z wasamasa: heh, divinely opinionated 2014-09-12T10:50:12Z wasamasa: I'm inspecting mcclim code right now and am shocked it has multiple backends 2014-09-12T10:50:22Z wasamasa: gtkairo sounds most promising 2014-09-12T10:50:33Z stassats: neither of which work well 2014-09-12T10:50:54Z stassats: the clx one can fool one for a while 2014-09-12T10:51:02Z brucem: few things involving gtk end up working well in the long run :( 2014-09-12T10:55:24Z stassats: seeing ( . 1) is always a bit weird 2014-09-12T10:55:42Z wasamasa: https://github.com/timoore/mcclim/blob/d2f78754425f5f864d55df73114603853c977175/gadgets.lisp#L925-L939 2014-09-12T10:55:42Z quazimodo quit (Ping timeout: 245 seconds) 2014-09-12T10:55:44Z wasamasa: ._. 2014-09-12T10:56:40Z wasamasa: so that's apparently where these 80ies pseudo 3d effects come from 2014-09-12T10:57:21Z stassats: isn't everything on a screen _pseudo_ 3d? 2014-09-12T10:59:56Z wasamasa: well, sure 2014-09-12T11:00:17Z phax joined #lisp 2014-09-12T11:00:46Z wasamasa: but I'm rather refering to these ugly scrollbars: http://vintage-digital.com/hefner/mcclim-tweak.png 2014-09-12T11:03:54Z AndroidShoutapop: wasamasa: Ohai. 2014-09-12T11:04:35Z phax quit (Client Quit) 2014-09-12T11:05:37Z jtza8 quit (Ping timeout: 245 seconds) 2014-09-12T11:05:46Z resttime: oh my gosh allegro5.1 is implementing menu bars 2014-09-12T11:06:32Z resttime: this might end up being the ultimate library for me in lisp 2014-09-12T11:06:35Z |3b|: allegro the graphics lib not the lisp implementations? 2014-09-12T11:06:39Z Elench joined #lisp 2014-09-12T11:06:43Z resttime: oh yeah liballegro 2014-09-12T11:07:20Z edgar-rft joined #lisp 2014-09-12T11:07:35Z schjetne: I'd love to spend some money to work on CLIM, if only I knew how to get it all back (or have it in the first place, but I'm working on that) 2014-09-12T11:07:36Z Nizumzen joined #lisp 2014-09-12T11:07:58Z resttime: maybe i could implement the CLIM spec with liballegro in the future 2014-09-12T11:08:16Z schjetne: It's something Lisp companies should be interested in 2014-09-12T11:08:25Z segv- joined #lisp 2014-09-12T11:08:54Z H4ns: schjetne: what lisp companies are you referring to? 2014-09-12T11:09:33Z schjetne: Anyone who maintains large projects in Common Lisp should be interested in a complete environment tailored to Lisp development 2014-09-12T11:09:57Z H4ns: schjetne: you mean, complete environments like lispworks or allegro cl? 2014-09-12T11:10:08Z schjetne: I haven't tried the proprietary IDEs, though, how they compare to the current Emacs/SLIME stack 2014-09-12T11:10:16Z isoraqathedh quit (Read error: Connection reset by peer) 2014-09-12T11:10:28Z stassats: a desk with a keyboard with pedals for C/M? 2014-09-12T11:10:39Z urandom__ quit (Quit: Konversation terminated!) 2014-09-12T11:10:56Z schjetne: [ and ] keys changed to ( and ) would be a start 2014-09-12T11:11:22Z TomRS joined #lisp 2014-09-12T11:11:25Z stassats: then you can forget typing on borrowed computers 2014-09-12T11:11:39Z isoraqathedh joined #lisp 2014-09-12T11:12:20Z stassats: a keyboard with hardware remapping could work 2014-09-12T11:12:22Z schjetne: stassats: I can type QWERTY in France just fine. I'm sure a few lisp hackers can manage 2014-09-12T11:12:56Z schjetne: But what I'm really talking about is the software 2014-09-12T11:13:00Z SHODAN quit (Remote host closed the connection) 2014-09-12T11:13:01Z mvilleneuve joined #lisp 2014-09-12T11:13:21Z H4ns: schjetne: you might be overestimating the size of the lisp market. 2014-09-12T11:13:35Z schjetne: I love GNU Emacs, but trying to make Email, IRC and all my code coexist in a single thread can be taxing 2014-09-12T11:13:39Z stassats: and i would advise against working on CLIM, unless you want to create a new specification 2014-09-12T11:13:45Z kcj quit (Ping timeout: 264 seconds) 2014-09-12T11:14:09Z TomRS quit (Remote host closed the connection) 2014-09-12T11:14:49Z schjetne: H4ns: I only know a few major companies off-hand, I'll definitely take a look some time 2014-09-12T11:15:03Z schjetne: Right now I'm concentrating on making the Lisp market grow by adding myself to it. 2014-09-12T11:15:20Z JuanDaugherty joined #lisp 2014-09-12T11:15:50Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-12T11:17:40Z TomRS joined #lisp 2014-09-12T11:18:37Z madrik quit (Ping timeout: 245 seconds) 2014-09-12T11:19:17Z resttime: is peformane intensive to translate things from CFFI memory into lisp? 2014-09-12T11:19:34Z |3b|: it can be 2014-09-12T11:20:01Z nyef joined #lisp 2014-09-12T11:20:07Z stassats: if "peformane" is what i think it is, then yes 2014-09-12T11:20:14Z nyef: G'morning all. 2014-09-12T11:20:46Z resttime: hmmm, was thinking if I implement translating memory from liballegro to lisp if it's possible 2014-09-12T11:20:47Z |3b|: in particular you need to be careful to always give CFFI specific types at compile time 2014-09-12T11:20:49Z stassats: it's better to use C memory directly 2014-09-12T11:21:05Z madrik joined #lisp 2014-09-12T11:21:09Z stassats: if at all possible 2014-09-12T11:21:29Z stassats: allegro is a bit out of scope of this channel 2014-09-12T11:21:31Z jkaye joined #lisp 2014-09-12T11:21:32Z |3b|: for some uses, static-vectors can let you use the same memory from both lisp and FFI without translation 2014-09-12T11:22:10Z hlavaty: nyef: morning; i saw you critique of passing closure to end-of-file condition; surprising maybe but illegal? dont know; i just needed to see where things go wrong 2014-09-12T11:22:14Z stassats: |3b|: you can use the same memory already, as longs as it comes from malloc, and not from the lisp allocator 2014-09-12T11:22:33Z |3b|: stassats: i mean access the contents directly 2014-09-12T11:22:48Z attila_lendvai quit (Quit: Leaving.) 2014-09-12T11:22:48Z stassats: sure, you can't* make strings and things out (* you can, but you shouldn't) 2014-09-12T11:22:52Z nyef: hlavaty: CLHS specifically calls out that parameter as being a stream. 2014-09-12T11:23:21Z hlavaty: yeah but does that mean an instance of stream class? maybe 2014-09-12T11:23:29Z nyef: Yes, it does. 2014-09-12T11:23:31Z hlavaty: also what you see in cl-olefs is my evolution of thinking about streams; common lisp streams are not great in many ways 2014-09-12T11:23:33Z stassats: what else can it mean? 2014-09-12T11:23:36Z |3b| is mostly talking about large chunks of single-floats of unsigned-byte 8 2014-09-12T11:24:20Z stassats: |3b|: you can access that, just not with AREF 2014-09-12T11:24:21Z |3b|: access contents without calling FFI functions 2014-09-12T11:24:30Z hlavaty: nyef: then when an implementation complains, i'll change it:-) 2014-09-12T11:24:46Z nyef: Mmm. I managed to track down approximately where the code page is stored in the file. 2014-09-12T11:24:51Z resttime: so if I had a vector of bytes in lisp, could i give it a CFFI function without allocating an array? 2014-09-12T11:24:53Z hlavaty: great! 2014-09-12T11:24:55Z stassats: it wouldn't really be FFI functions, just memory access functions 2014-09-12T11:25:24Z stassats: resttime: you couldn't, since it can get moved or garbage collected 2014-09-12T11:25:24Z |3b|: are there any portable memory access functions outside cffi? 2014-09-12T11:25:44Z hlavaty: nyef: the string conversion is rather basic now, because it has worked good enough for me so far; but would be great to do it properly 2014-09-12T11:25:45Z stassats: why the cffi restriction? 2014-09-12T11:25:47Z nyef: It's in a Property Set Storage of some sort. 2014-09-12T11:25:51Z |3b|: resttime: that is what static-vectors does, though it has some annoying restrictions 2014-09-12T11:26:05Z |3b|: stassats: no restriction, just curious 2014-09-12T11:26:07Z jkaye quit (Ping timeout: 245 seconds) 2014-09-12T11:26:14Z nyef: (One of the streams whose names start with a (code-char 5).) 2014-09-12T11:26:25Z Kamuela joined #lisp 2014-09-12T11:26:26Z nyef: Possibly in both such streams. 2014-09-12T11:26:35Z stassats: |3b|: you would also need some way to allocate such memory 2014-09-12T11:26:42Z Kamuela: is common lisp logic programming? 2014-09-12T11:26:52Z stassats: so, without a foreign function, like malloc, it's not really feasible 2014-09-12T11:26:54Z |3b|: Kamuela: no more (or less) than any other language 2014-09-12T11:26:58Z |3b|: stassats: true 2014-09-12T11:27:24Z |3b|: stassats: (well, unless you also had access to the memory backing a lisp vector) 2014-09-12T11:27:34Z stassats: i pasted some time ago a way to mmap a file into a lisp string without copying 2014-09-12T11:27:50Z nyef: And I've got a bit of an idea for a bit of a different implementation of at least the low-level Compound File Binary parsing that I may try to go with. 2014-09-12T11:27:58Z stassats: sbcl has sb-kernel:%vector-raw-bits, which is sometimes useful 2014-09-12T11:28:04Z |3b|: would be nice to read a blob of binary data into a UB8 vector and access arbitrary data types in it more efficiently than assembling them with ldb and ieee-floats or whatever 2014-09-12T11:28:06Z hlavaty: nyef: i dont remember now but i think there is already code to parse that, maybe for ppt files 2014-09-12T11:28:28Z wasamasa: Kamuela: common lisp is a programming language 2014-09-12T11:28:36Z stassats: mmapped strings: http://paste.lisp.org/display/142849 2014-09-12T11:28:43Z wasamasa: Kamuela: logic programming is a programming paradigma 2014-09-12T11:28:52Z stassats: rather, http://paste.lisp.org/display/142849#7 2014-09-12T11:29:39Z Kamuela: wasamasa, I see. are you able to follow that paradigm with common lisp? 2014-09-12T11:29:46Z wasamasa: Kamuela: sure 2014-09-12T11:29:58Z wasamasa: Kamuela: you can hack it to support pretty much any programming style 2014-09-12T11:30:07Z stassats: it works by first mapping a memory region one page larger than the file, then putting a string widetag at the end of the page, just before the start of the file, then mapping the file at 1+ page 2014-09-12T11:30:15Z stassats: sbcl-specific, of course 2014-09-12T11:30:31Z H4ns: stassats: thanks for that tip, it worked just awesomely for me! 2014-09-12T11:30:48Z stassats: was it faster than whatever you did before? 2014-09-12T11:30:56Z hlavaty: nyef: instead of defining a traversing function to search for an entry; there should be file+directory-like listing functions; i should change that; but you probably mean something different still? 2014-09-12T11:31:08Z resttime: i guess to be more specific for my situation, I have drakma return a vector of bytes for image data 2014-09-12T11:31:10Z H4ns: stassats: i did nothing before, and it is damn friggin fast 2014-09-12T11:31:16Z resttime: i want to shove it in http://alleg.sourceforge.net/a5docs/5.0.10/memfile.html 2014-09-12T11:31:21Z resttime: to keep things in memory 2014-09-12T11:32:05Z wasamasa: Kamuela: https://github.com/nikodemus/screamer/blob/master/doc/examples/sudoku.lisp 2014-09-12T11:32:11Z nyef: hlavaty: Right, I'm thinking to start with gray streams as the implementation substrate. And also the file/directory thing a bit. 2014-09-12T11:32:28Z |3b|: resttime: probably easiest portable way would be just copy it 2014-09-12T11:32:44Z |3b|: possibly with some implementation specifics to optimize the copy 2014-09-12T11:33:16Z nyef: (Since it turns out that streams don't appear to have to be readable... or writable...) 2014-09-12T11:33:32Z hlavaty: nyef: if you look into the git history, you'll see i started with graystreams; i think it is wrong; common lisp streams are completely unsuitable for this kind of things; unless you love unnecessary bloat 2014-09-12T11:33:44Z stassats: drakma may even return a non-simple vector 2014-09-12T11:34:49Z stassats: i think you can just request a stream and pull the data from the stream 2014-09-12T11:35:36Z hlavaty: nyef: i think in the other direction; simplifying the streams even more; e.g. they should not have CLOSE; that's completely wrong concept 2014-09-12T11:36:07Z hlavaty: common lisp streams are not designed for chaining 2014-09-12T11:36:11Z nyef: Actually, CLOSE should be useful for resource management if the underlying file remains open. 2014-09-12T11:36:13Z |3b|: yeah, saving directly from stream might help, though may still need a copy if it doesn't give you a size up front... not sure how common that is 2014-09-12T11:36:16Z knob9876 quit (Quit: Leaving) 2014-09-12T11:36:28Z stassats: if the streams are baked by a file or a socket, CLOSE does make sense 2014-09-12T11:36:31Z knob joined #lisp 2014-09-12T11:36:36Z stassats: or backed 2014-09-12T11:37:18Z hlavaty: nyef: not really; because the streams are stacked & chained and if you call close on a stream it is not clear which one should be closed 2014-09-12T11:38:06Z hlavaty: nyef: resource management should be separate; i think it is wrong the way common lisp streams force people to think this way 2014-09-12T11:38:20Z Kamuela: wasamasa, thank you 2014-09-12T11:38:37Z jtza8 joined #lisp 2014-09-12T11:39:02Z resttime sighs 2014-09-12T11:39:47Z hlavaty: nyef: for resource management we have garbage collector; it is only foreign resources that need explicit release; like os streams and foreign memory 2014-09-12T11:39:55Z resttime: the more i work with common lisp like this and CFFI, just feels like I'm trying to run underwater 2014-09-12T11:40:33Z |3b|: some C libs can be pretty annoying to deal with from CL :/ 2014-09-12T11:40:35Z stassats: (read-line (drakma:http-request "https://google.com" :want-stream t)) => something 2014-09-12T11:40:52Z stassats: that's what you want, get a stream, copy it wherever 2014-09-12T11:41:07Z H4ns: resttime: trying to learn common lisp by implementing an ffi interface to a huge library is not likely to create a lot of joy - or a great learning experience, fwiw 2014-09-12T11:41:30Z |3b|: or a good FFI interface :p 2014-09-12T11:41:57Z Beetny quit (Ping timeout: 264 seconds) 2014-09-12T11:42:22Z ndrei joined #lisp 2014-09-12T11:42:32Z nyef: I think that this entire thing falls under the case of "os streams", and similarly I think that I have a handle on the semantics for CLOSE. Or at least a good angle on it. 2014-09-12T11:42:34Z resttime: yeah, i sunk a lot of time into those bindings 2014-09-12T11:42:36Z lambda quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-12T11:42:53Z resttime: for one thing, i didn't generate any of them at all 2014-09-12T11:42:57Z EvW joined #lisp 2014-09-12T11:43:02Z resttime: straight up classic typing over and over 2014-09-12T11:43:41Z resttime: well at least nothing really missing 2014-09-12T11:43:47Z resttime: aside from a good interface.... 2014-09-12T11:43:49Z theos quit (Remote host closed the connection) 2014-09-12T11:44:28Z hlavaty: nyef: os streams, not really; in cl-olefs there are many streams; none of them deal with os resources 2014-09-12T11:44:34Z jegaxd26` joined #lisp 2014-09-12T11:45:10Z nyef: We may need to agree to disagree here. 2014-09-12T11:45:54Z replcated quit (Ping timeout: 246 seconds) 2014-09-12T11:46:12Z kuzy000_ joined #lisp 2014-09-12T11:46:47Z hlavaty: example: you have a stream1; the open stream1a which reads from stream1; then close stream1a; then open stream1b which reads from stream1; then close stream1b; question which close closes stream1? 2014-09-12T11:47:10Z |3b| would expect neither 2014-09-12T11:47:21Z hlavaty: :-) 2014-09-12T11:47:42Z hlavaty: so the close on stream1a and stream1b can proxy the close call 2014-09-12T11:48:04Z hlavaty: but what is the meaning of close in that case? 2014-09-12T11:48:25Z hlavaty: are stream1a and stream1b os streams? 2014-09-12T11:48:45Z yacks quit (Read error: Connection reset by peer) 2014-09-12T11:48:55Z brucem: hlavaty: other stream APIs handle that (like scalaz-stream and the things that inspired it in the Haskell world). 2014-09-12T11:49:03Z mtxp quit (Ping timeout: 246 seconds) 2014-09-12T11:49:21Z hlavaty: brucem: what do they do? 2014-09-12T11:49:25Z stassats: neither concatenated, nor broadcast streams don't close the underlying streams 2014-09-12T11:49:46Z stassats: and the term is "constructed stream" 2014-09-12T11:50:02Z stassats: "The effect of close on a constructed stream is to close the argument stream only. There is no effect on the constituents of composite streams." 2014-09-12T11:50:05Z hlavaty: good to know 2014-09-12T11:50:12Z nyef: Hrm. 2014-09-12T11:50:49Z nyef: Changes some of what I had planned for resource management, but doesn't really affect the rest. 2014-09-12T11:51:17Z atgreen quit (Remote host closed the connection) 2014-09-12T11:51:33Z madrik quit (Ping timeout: 260 seconds) 2014-09-12T11:51:34Z hlavaty: so gray streams are really ugly interface for this kind of stuff 2014-09-12T11:51:46Z resttime: https://github.com/cffi/cffi/blob/master/doc/shareable-vectors.txt 2014-09-12T11:51:50Z stassats: rainbow streams! 2014-09-12T11:51:58Z resttime: hmmm that might be it 2014-09-12T11:52:25Z stassats: on abcl it is implemented by just copying things 2014-09-12T11:52:27Z wasamasa: gray streams and bordeaux threads, hum 2014-09-12T11:52:28Z nyef: hlavaty: I believe that we have very different ideas about implementation and overall design for reading these kinds of file, and very plausibly different end goals. 2014-09-12T11:52:50Z resttime: i wish the common-lisp.net cffi docs were more updated to included these 2014-09-12T11:52:59Z hlavaty: nyef: maybe; i dont know 2014-09-12T11:53:53Z stassats: i guess if you don't care about abcl, then shareable vectors are fine 2014-09-12T11:53:56Z brucem: hlavaty: It is complicated ... their streams are in a different model than Lisp or C++ ... but when a process comes to a halt (due to normal termination, a Halt, or an Error), then each stage along the way gets to respond and can have its own logic. 2014-09-12T11:54:06Z vydd joined #lisp 2014-09-12T11:54:06Z vydd quit (Changing host) 2014-09-12T11:54:06Z vydd joined #lisp 2014-09-12T11:54:21Z stassats: clisp does copy as well, but who cares about clisp 2014-09-12T11:54:29Z stassats: especially when it comes to ffi 2014-09-12T11:54:53Z hlavaty: i think the main issue is that i should have not called it streams but something different; so that people dont think common lisp streams 2014-09-12T11:54:54Z brucem: hlavaty: one day (maybe this month), I'll get back to writing up a detailed breakdown of how they work as I want to implement them in a Lisp-derivative myself. 2014-09-12T11:55:59Z |3b|: resttime: i think those were never officially decided to be 'supported', since it is hard to support them efficiently/portably/with a nice interface 2014-09-12T11:56:01Z hlavaty: brucem: would be interesting to see 2014-09-12T11:56:35Z resttime: hmmm, i see 2014-09-12T11:56:41Z stassats: |3b|: except for clisp and abcl, it uses the underlying mechanisms 2014-09-12T11:57:01Z |3b|: yeah, i think clisp was considered more important at the time :p 2014-09-12T11:57:46Z |3b|: and probably still has the problem static-vectors does that you can't tell if a given vector is usable with it :/ 2014-09-12T11:58:38Z dkcl: In a COND, the T-clause is *only* evaluated if all the others fail, is that correct? 2014-09-12T11:58:40Z |3b| isn't sure if it tries to support the implementations where that is a problem or not 2014-09-12T11:59:08Z dkcl: Assuming it is the last one, of course 2014-09-12T11:59:10Z |3b| doesn't even remember which implementations that is for that matter, probably the commercial ones 2014-09-12T11:59:40Z resttime: hypothetically what can be done to solve all these problems mucking around with CFFI 2014-09-12T11:59:59Z shka: dkcl: yes 2014-09-12T12:00:00Z madrik joined #lisp 2014-09-12T12:00:12Z |3b|: hypothetically? go back in time and specify CL with knowledge of the things we want it to do now 2014-09-12T12:00:13Z shka: at least stnadard behaves like this 2014-09-12T12:00:22Z stassats: dkcl: the T clause isn't any different from any other clauses 2014-09-12T12:00:44Z stassats: all right-hand clauses are evaluated only if all left-hand ones yielded false 2014-09-12T12:00:48Z |3b|: practically? not much, unless you want to drop support for a bunch of CL implementations and/or fund a bunch of improvements to them 2014-09-12T12:01:15Z stassats: resttime: are you still trying to get images from drakma? 2014-09-12T12:01:25Z dkcl: Hmm, I guess a predicate must be misbehaving, in that case 2014-09-12T12:01:37Z |3b| notes that dropping support for a bunch of CL implementations may be a valid choice for a specific application 2014-09-12T12:01:46Z stassats: if so, shareable vectors is a bad way to do it 2014-09-12T12:01:51Z resttime: stassats, i can already receive images as binary data of bytes 2014-09-12T12:01:56Z resttime: vector of bytes 2014-09-12T12:02:07Z hlavaty: stassats: is there a way to define custom "constructed streams" portably; 2014-09-12T12:02:08Z hlavaty: ? 2014-09-12T12:02:12Z stassats: no 2014-09-12T12:02:25Z hlavaty: hm that is the problem 2014-09-12T12:02:37Z resttime: i can write it to a file and then load it through liballegro fine 2014-09-12T12:02:37Z dkcl figures he is using the wrong equality predicate 2014-09-12T12:02:38Z stassats: resttime: that's what you don't want to do, you would need to modify drakma to get it to use your shareable streams 2014-09-12T12:03:03Z stassats: instead, get a stream from drakma, and then fill whatever location you want with it 2014-09-12T12:03:03Z |3b| would just copy the vector of bytes 2014-09-12T12:03:14Z farhaven quit (Quit: WeeChat 0.4.2) 2014-09-12T12:03:25Z theos joined #lisp 2014-09-12T12:03:25Z theos quit (Excess Flood) 2014-09-12T12:03:38Z stassats: though, the network would probably be the bottle neck anyway 2014-09-12T12:03:46Z resttime: yeah, i was thinking just copy the vector of bytes to an array and load it through liballegro's memfile thing 2014-09-12T12:03:52Z H4ns: resttime: a memory copy is incredibly cheap compared to almost everything that drakma does. is it possible that you're trying to optimize something that will never ever cause a performance problem? 2014-09-12T12:03:54Z stassats: so, it's premature 2014-09-12T12:04:06Z theos joined #lisp 2014-09-12T12:04:06Z Sgeo quit (Read error: Connection reset by peer) 2014-09-12T12:04:54Z yeticry quit (Ping timeout: 268 seconds) 2014-09-12T12:05:07Z resttime: H4ns, maybe, i'm also thinking of liballegro5.1 features which also involves more things like video support 2014-09-12T12:05:12Z farhaven joined #lisp 2014-09-12T12:06:03Z isoraqathedh quit (Quit: No Ping reply in 180 seconds.) 2014-09-12T12:06:12Z hiroakip joined #lisp 2014-09-12T12:06:27Z isoraqathedh joined #lisp 2014-09-12T12:06:37Z resttime: actually what am i saying, the video can't read from the memory at all 2014-09-12T12:06:39Z H4ns: resttime: you should first check whether drakma is able to satisfy your performance needs before spending time on making the interface to it fast. 2014-09-12T12:06:47Z yeticry joined #lisp 2014-09-12T12:06:50Z H4ns: resttime: drakma is not fast at all. 2014-09-12T12:07:43Z stassats: using streams is useful when the thing you're downloading wouldn't fit into memory and you're saving onto a disk 2014-09-12T12:09:21Z H4ns has a deja vu 2014-09-12T12:09:35Z H4ns: is allegro something like opencv? 2014-09-12T12:09:54Z resttime: it's a game programming library 2014-09-12T12:10:14Z resttime: but it's pretty modular so you can load some parts while leaving others out 2014-09-12T12:10:15Z stassats: are you using allegro cl? 2014-09-12T12:10:19Z nyef: ... A game programming library that, IIRC, hails back to the days when "ModeX" was important. 2014-09-12T12:10:37Z stassats: that would be a good way to confuse things 2014-09-12T12:10:52Z resttime: liballegro5 i think is a new implementation of suchthing 2014-09-12T12:11:20Z resttime: v5 was complete overhaul 2014-09-12T12:11:25Z nyef: I remember using the allegro game programming library with djgpp on DOS back in the '90s. 2014-09-12T12:12:48Z JuanDaugherty: by which you MS-DOS (or Windows)? 2014-09-12T12:13:17Z nyef: IBM PC-DOS 5, no windows. 2014-09-12T12:13:28Z JuanDaugherty: windows didn't actually take off till about 92/3 2014-09-12T12:13:31Z stassats: like there's a difference 2014-09-12T12:13:45Z JuanDaugherty: OS/2 was still in the slot in 90 2014-09-12T12:13:50Z nyef: Right, there was basically no difference. 2014-09-12T12:13:56Z resttime: i wish there was some way i could interact with things natively without mucking around in CFFI 2014-09-12T12:14:11Z JuanDaugherty: at which time I was working as a contractor at IBM boca 2014-09-12T12:14:16Z stassats: cffi does things natively 2014-09-12T12:15:16Z JuanDaugherty: there was a huge diff between os/2 and windows, although windows maintained the core compatibility until after the turn of the century 2014-09-12T12:15:35Z JuanDaugherty: the first port of Sybase to SQL Server ran only on MS OS/2 2014-09-12T12:15:39Z JuanDaugherty: and so forth 2014-09-12T12:15:42Z resttime: everything just feel really roundabout with common lisp and libraries 2014-09-12T12:15:54Z stassats: this is off-topic from the beginning 2014-09-12T12:15:55Z JuanDaugherty: *feels 2014-09-12T12:15:57Z huza joined #lisp 2014-09-12T12:16:08Z JuanDaugherty: and it's a neophyte misperception 2014-09-12T12:16:15Z JuanDaugherty: a failure to absorb culture 2014-09-12T12:16:39Z resttime: haha sorry I am terribly sleep deprived so lots of typos abound 2014-09-12T12:16:49Z stassats: resttime: don't mind JuanDaugherty 2014-09-12T12:16:52Z hiroakip quit (Ping timeout: 240 seconds) 2014-09-12T12:16:58Z nyef goes hunting for his GUID FFI hack. 2014-09-12T12:16:59Z JuanDaugherty: yeah don't mind me 2014-09-12T12:18:30Z JuanDaugherty: the main thing the had in common was PM, the GUI 2014-09-12T12:18:35Z JuanDaugherty: *they had 2014-09-12T12:18:55Z stassats: can you, please, stop? 2014-09-12T12:19:11Z Ragnaroek joined #lisp 2014-09-12T12:19:24Z JuanDaugherty: probably not 2014-09-12T12:19:42Z JuanDaugherty: if I knew what you were talking about maybe 2014-09-12T12:20:07Z JuanDaugherty: assuming you were addressing me, stassats 2014-09-12T12:20:50Z stassats: take your nostalgic monologues about OS/2 and Windows somewhere else 2014-09-12T12:21:15Z JuanDaugherty: i was speaking to nyef and the rest of the channel, not you 2014-09-12T12:21:41Z JuanDaugherty: why don't you take your nasty attitude someplace else 2014-09-12T12:21:43Z nyef wasn't paying attention. 2014-09-12T12:21:47Z resttime: i think i'm starting to understand why clojure took off so well 2014-09-12T12:22:01Z JuanDaugherty: why is that? 2014-09-12T12:22:11Z H4ns: m( 2014-09-12T12:22:17Z resttime: access to java libs 2014-09-12T12:22:29Z stassats: JuanDaugherty: "failure to absorb culture", that perfectly describes you, you didn't absorb the culture of #lisp 2014-09-12T12:22:48Z JuanDaugherty: stassats, =; 2014-09-12T12:23:23Z JuanDaugherty: putting you (back?) on ignore 2014-09-12T12:24:53Z stassats: why do people want to come to #lisp and never say anything sensible on the topic? that fascinates me 2014-09-12T12:24:59Z Xach joined #lisp 2014-09-12T12:25:14Z stassats: there are is always one or two, like that pnpuff guy, gavino, etc. 2014-09-12T12:26:20Z H4ns: stassats: hello? this is the internet? did you ever try reading an unmoderated comments section on some newspaper web site? 2014-09-12T12:26:43Z drmeister quit (Remote host closed the connection) 2014-09-12T12:27:18Z JuanDaugherty: clear 2014-09-12T12:27:23Z JuanDaugherty: sorry 2014-09-12T12:27:33Z Shaftoe___ joined #lisp 2014-09-12T12:27:41Z wasamasa: resttime: I'm not sure I'd want them unless legacy code 2014-09-12T12:27:47Z Devon quit (Ping timeout: 245 seconds) 2014-09-12T12:27:53Z wasamasa: resttime: so I suspect it's mostly businesses leaping onti it 2014-09-12T12:27:54Z Xach: |3b|: is 3bgl-shader good to go? 2014-09-12T12:28:10Z stassats: resttime: ABCL can access java libraries 2014-09-12T12:28:33Z stassats: why didn't it take off? no hype 2014-09-12T12:28:58Z Xach: I think it's also because the accesss isn't as good. 2014-09-12T12:29:40Z JuanDaugherty: it was yet another KCL derivative wannit? 2014-09-12T12:29:44Z stassats: somebody could throw a couple of macros on top of it 2014-09-12T12:29:55Z resttime: is there something like abcl except for c++? 2014-09-12T12:30:09Z resttime: i'd love to easily access c++ libraries 2014-09-12T12:30:18Z stassats: drmeister is holding it in secret 2014-09-12T12:30:19Z Xach: resttime: I think clasp might someday be like that 2014-09-12T12:30:20Z Krystof: gaining traction, unless you're very lucky, takes a lot of work: not just technical work, either, but publicity and outreach 2014-09-12T12:30:32Z stassats: was xcl easy to interface with c++? 2014-09-12T12:30:35Z ndrei quit (Ping timeout: 276 seconds) 2014-09-12T12:30:38Z Krystof: not necessarily the same as hype, but probably a certain amount of selling the dream 2014-09-12T12:31:11Z stassats: at least it was written in c++ 2014-09-12T12:31:12Z Krystof: xcl as a bit unfinished, I think 2014-09-12T12:31:19Z stassats: it's a bit abandoned 2014-09-12T12:31:26Z Krystof: I don't think piso got as far as an FFI 2014-09-12T12:31:28Z stassats: can you call sbcl finished? 2014-09-12T12:31:32Z ehu quit (Ping timeout: 245 seconds) 2014-09-12T12:31:34Z ndrei joined #lisp 2014-09-12T12:31:44Z Krystof: stassats: it's unfinished even by its own design criteria 2014-09-12T12:31:53Z Krystof: stassats: also, it no longer builds sbcl :( 2014-09-12T12:32:06Z Kamuela quit (Ping timeout: 246 seconds) 2014-09-12T12:32:39Z |3b|: Xach: i consider it approximately 'alpha' at this point 2014-09-12T12:32:53Z resttime: if one day there's an implementation that can trivially access c/c++ libs i'll be happy 2014-09-12T12:33:09Z stassats: C libs are trivially accessed right now 2014-09-12T12:33:20Z stassats: with just about any implementation 2014-09-12T12:33:22Z Xach: |3b|: ok. cool stuff! let me know when you think it's ready, i'd love to add it to quicklisp 2014-09-12T12:33:23Z |3b|: resttime: ECL can embed C/C++ code, does that count? 2014-09-12T12:33:27Z stassats: that's because C has a sane ABI 2014-09-12T12:33:43Z nyef: For some value of "trivially". It really is fairly easy to talk to C libraries that aren't too preprocessor-heavy in their interface. 2014-09-12T12:33:48Z stassats: or just documented ABI 2014-09-12T12:34:22Z resttime: from what i've been experiencing, not the most plesent experience 2014-09-12T12:34:24Z stassats: or has an ABI at all 2014-09-12T12:34:58Z stassats: well, it's not as easy as #include .h, but there's no comparison with C++ 2014-09-12T12:35:14Z prxq: resttime: in my experience, dealing with C libs via the foreign-function interface is often more pleasant than dealing with them from C 2014-09-12T12:35:15Z |3b|: Xach: not sure it will get much past alpha any time soon, but goal of alpha was to have something more or less usable 2014-09-12T12:35:57Z |3b|: Xach: at this point would probably just say wait a month or 2 so i (and anyone else who wants to try) have a chance to actually use it and see what works/doesn't work 2014-09-12T12:35:59Z stassats: will you call a lib directx library direct3b? 2014-09-12T12:36:53Z ndrei quit (Ping timeout: 240 seconds) 2014-09-12T12:37:14Z |3b|: stassats: 3b goes at the front... its Xach's fault (and whoever runs cl-test-grid)... too many alphabetical lists where i want to easily find my libs without having to think :p 2014-09-12T12:37:24Z |3b| wouldn't make a directx lib anyway :p 2014-09-12T12:37:36Z Petit_Dejeuner_ joined #lisp 2014-09-12T12:37:46Z Petit_Dejeuner_: Is load-time-value used for getting directories relative to the program when it's run? 2014-09-12T12:37:58Z nyef: Hrm. SBCL 1.1.6.6 is a bit on the old side these days, isn't it? 2014-09-12T12:38:10Z ndrei joined #lisp 2014-09-12T12:38:16Z resttime: hmmm maybe it's because i don't have enough experience 2014-09-12T12:38:51Z oleo joined #lisp 2014-09-12T12:38:57Z stassats: Petit_Dejeuner_: not really 2014-09-12T12:39:11Z resttime: then there's the fact i didn't sleep at all and class in about 2 hours 2014-09-12T12:39:32Z resttime: and i'm talking on #lisp instead of working on unfinished hw lol 2014-09-12T12:39:58Z stassats: Petit_Dejeuner_: do you want to know the directory? or you want to figure out how load-time-value works? 2014-09-12T12:41:03Z JuanDaugherty: ikr? 2014-09-12T12:41:12Z Petit_Dejeuner_: stassats, I'm learning hunchentoot. http://paste.lisp.org/display/143694 2014-09-12T12:42:10Z stassats: load-time-value is superfluous there 2014-09-12T12:42:28Z resttime: ugh, i'm going to take a 20 minute nap before tackling day 2014-09-12T12:42:29Z pt1 quit (Remote host closed the connection) 2014-09-12T12:42:33Z resttime: thanks for the help everyone 2014-09-12T12:42:40Z nyef: resttime: Sleep well. 2014-09-12T12:42:46Z Petit_Dejeuner_: stassats, that's weird 2014-09-12T12:42:55Z Kamuela joined #lisp 2014-09-12T12:42:56Z stassats: did you copy it from somewhere? 2014-09-12T12:43:22Z Petit_Dejeuner_: directly from the test-handlers.lisp file in hunchentoot's test/example server 2014-09-12T12:43:50Z nyef: Okay, my GUID code still works for now, gutted as it may be. 2014-09-12T12:44:44Z stassats: Petit_Dejeuner_: well, somebody did it wrong, or rather, unnecessary 2014-09-12T12:44:59Z ndrei quit (Ping timeout: 268 seconds) 2014-09-12T12:45:11Z stassats: the value form in defparameter is evaluated at load-time only anyway 2014-09-12T12:45:26Z resttime quit (Quit: resttime) 2014-09-12T12:45:28Z stassats: when it's at the top-level 2014-09-12T12:45:38Z ndrei joined #lisp 2014-09-12T12:46:05Z stassats: the same goes for defvar, naturally 2014-09-12T12:46:43Z Petit_Dejeuner_: So, it won't try to compile their values? 2014-09-12T12:47:09Z stassats: compilation doesn't compile values, it compiles code which produces values 2014-09-12T12:47:33Z Petit_Dejeuner_: Okay, that makes sense. 2014-09-12T12:48:05Z stassats: (defun foo () (load-time-value *load-truename*)) does make sense 2014-09-12T12:48:28Z stassats: but defvar should be just (defvar *foo* *load-truename*) 2014-09-12T12:48:29Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-12T12:48:29Z Petit_Dejeuner_: Because *load-truename* is just a value? 2014-09-12T12:48:38Z stassats: it's only bound during LOAD 2014-09-12T12:49:04Z stassats: so, to get the file, you need (defvar *foo* #.(or *compile-file-truename* *load-truename*)), works both with COMPILE-FILE and LOAD 2014-09-12T12:49:52Z stassats: #. executes things during read-time, which is does happen before compilation, so that you capture a value, not the variable, which is not anymore bound at run-time 2014-09-12T12:50:10Z Petit_Dejeuner_: ...but I probably wouldn't want to do that. 2014-09-12T12:50:12Z stassats: same goes for load-time-value, but it is for LOAD exclusively 2014-09-12T12:50:23Z Petit_Dejeuner_: just axe the load-time-value? 2014-09-12T12:50:27Z nyef: Hrm. Can I DEFCONSTANT a CLOS instance if it has a suitable make-load-form method? 2014-09-12T12:50:49Z stassats: nyef: still won't be eql 2014-09-12T12:51:10Z nyef: ... And it gets interned in a hash table? 2014-09-12T12:51:44Z stassats: but the semantics of defconstant would be the same as #.(make-instance ...), so, yeah, it needs to be dumpable at least 2014-09-12T12:52:04Z stassats: i don't think similarity rules are defined for clos instances 2014-09-12T12:52:06Z nyef: Looks like it works in SBCL, at least. 2014-09-12T12:52:57Z stassats: actually, they are defined in the presence of make-load-form 2014-09-12T12:53:31Z nyef: Yeah, looks like what I'm doing is reasonable. 2014-09-12T12:55:29Z stassats: save for the EQLness 2014-09-12T12:56:45Z nyef: That's what the hash-table keyed on the data inside the instance is for. 2014-09-12T12:57:14Z stassats: no, i mean defconstant form not being EQL during load and compile-file 2014-09-12T12:57:42Z nyef: So do I: SBCL would have complained already if they weren't EQL. 2014-09-12T12:57:51Z stassats: it does complain 2014-09-12T12:57:58Z nyef: Not with my use-case. 2014-09-12T12:58:19Z stassats: C-c C-c on (defconstant +x+ (make-instance 'x)) => The constant +X+ is being redefined (from # to #) 2014-09-12T12:58:19Z JuanDaugherty quit (Quit: Exit IRC/Hibernate) 2014-09-12T12:58:31Z nyef: Ah, I'm not using MAKE-INSTANCE directly. 2014-09-12T12:58:37Z stassats: doesn't matter? 2014-09-12T12:58:57Z stassats: unless you cache the value 2014-09-12T12:59:10Z nyef: As I said, that's what the hash-table is for. 2014-09-12T13:00:18Z stassats: (defun foo () (load-time-value (make-instance 'x))) (defconstant +x+ (foo)) won't, of course, complain 2014-09-12T13:01:24Z nyef: Umm... Won't as long as your M-L-F method is defined in terms of +X+, surely? 2014-09-12T13:02:09Z nyef: When I wrote the original version of what I'm hacking up now, I wanted eql-comparable, externalizable, typed, 128-bit integers with particular FFI semantics. 2014-09-12T13:02:30Z nyef: I've gutted the FFI bit, but I still want the rest, including the ability to DEFCONSTANT them. 2014-09-12T13:02:43Z kobain joined #lisp 2014-09-12T13:03:26Z nyef: And at this point I'm fairly sure that I have them. 2014-09-12T13:04:07Z stassats: (defconstant +x+ (if (boundp '+x+) +x+ (make-instance 'x))) will work too 2014-09-12T13:04:25Z nyef: Modulo little details like a possibly-bogus print-object method, and a couple points of SBCL-specificity. 2014-09-12T13:04:28Z Kamuela left #lisp 2014-09-12T13:05:38Z stassats: and what do you mean m-l-f in terms of +x+? do you want all instances, even without equal slots, to be coalesced? 2014-09-12T13:05:46Z mr-foobar quit (Quit: Leaving...) 2014-09-12T13:06:12Z stassats: is it a singleton? 2014-09-12T13:06:13Z Maurice_TCF_ quit (Ping timeout: 260 seconds) 2014-09-12T13:07:27Z nyef: I think we've just about reached my comprehension limit for these details today. I'm running on maybe four hours of sleep. It's a GUID class. 2014-09-12T13:09:23Z jkaye joined #lisp 2014-09-12T13:09:59Z stassats: i think equalness is defined as is the form produced by m-l-f the same or not, then it's coalesced 2014-09-12T13:10:21Z zophy joined #lisp 2014-09-12T13:11:30Z Maurice_TCF_ joined #lisp 2014-09-12T13:12:01Z kjeldahl quit (Ping timeout: 252 seconds) 2014-09-12T13:14:09Z eudoxia joined #lisp 2014-09-12T13:15:08Z malglim_ is now known as malglim 2014-09-12T13:18:21Z LiamH joined #lisp 2014-09-12T13:20:02Z AdmiralBumbleBee joined #lisp 2014-09-12T13:22:35Z vaporatorius joined #lisp 2014-09-12T13:22:36Z przl quit (Ping timeout: 268 seconds) 2014-09-12T13:22:49Z pranavrc quit 2014-09-12T13:23:21Z zeitue quit (Quit: Leaving) 2014-09-12T13:23:32Z ndrei quit (Ping timeout: 245 seconds) 2014-09-12T13:24:42Z ehu joined #lisp 2014-09-12T13:26:20Z normanrichards quit 2014-09-12T13:26:36Z quazimodo joined #lisp 2014-09-12T13:26:58Z zophy quit (Quit: leaving) 2014-09-12T13:27:06Z quazimodo: so I'm not banned yet? 2014-09-12T13:27:11Z quazimodo: lol i thought I'd be banned by now 2014-09-12T13:27:44Z harish joined #lisp 2014-09-12T13:27:50Z zophy joined #lisp 2014-09-12T13:27:59Z kjeldahl joined #lisp 2014-09-12T13:28:15Z gendl: who decides who gets banned in here? 2014-09-12T13:28:29Z H4ns: the ops do 2014-09-12T13:28:38Z gendl: who decides who the ops are? 2014-09-12T13:28:42Z H4ns: the ops do 2014-09-12T13:29:04Z stassats: the cabal 2014-09-12T13:30:05Z H4ns: i think the #lisp channel ops are a pretty sensible bunch 2014-09-12T13:30:16Z jusss joined #lisp 2014-09-12T13:30:45Z p_l: quazimodo: meh. The stuff in my backlog make you at most misinformed and unenlightened, neither a bannable offense ;) 2014-09-12T13:31:11Z p_l: that said, I've been too busy with work recently to check 2014-09-12T13:31:18Z rme joined #lisp 2014-09-12T13:32:03Z jsnell_ is now known as jsnell 2014-09-12T13:32:22Z munksgaard quit (Ping timeout: 240 seconds) 2014-09-12T13:32:26Z ndrei joined #lisp 2014-09-12T13:33:19Z karswell quit (Read error: Connection reset by peer) 2014-09-12T13:34:08Z Maurice_TCF_ quit (Read error: Connection reset by peer) 2014-09-12T13:36:46Z karswell joined #lisp 2014-09-12T13:39:41Z rick-monster joined #lisp 2014-09-12T13:39:45Z ahungry_ joined #lisp 2014-09-12T13:39:54Z jtza8 quit (Ping timeout: 255 seconds) 2014-09-12T13:40:47Z Maurice_TCF joined #lisp 2014-09-12T13:41:29Z quazimodo: p_l: hi 2014-09-12T13:42:05Z yacks joined #lisp 2014-09-12T13:42:08Z vydd quit (Remote host closed the connection) 2014-09-12T13:42:16Z quazimodo: i feel stupid saying this, but i feel i need to voice it 2014-09-12T13:42:37Z quazimodo: the function names we use in the lisp corner of the world are weird and cute and that's crappy 2014-09-12T13:42:43Z quazimodo: especially the ones for emacs 2014-09-12T13:42:50Z quazimodo: apropos? seriously?? 2014-09-12T13:43:01Z eudoxia: apropos isn't really bad 2014-09-12T13:43:06Z AeroNotix: quazimodo: apropos is a word 2014-09-12T13:43:08Z eudoxia: i thought you were going to mention rplacd 2014-09-12T13:43:11Z quazimodo: without googling 'emacs help' you'd never in your life imagine typeing apropos 2014-09-12T13:43:32Z H4ns: quazimodo: why do you type "you" when you really mean "i"? 2014-09-12T13:43:34Z stassats: apropos, M-x apropos is not really emacs help 2014-09-12T13:43:43Z p_l: quazimodo: apropos is more well known variant of `man -k` as well, afaik 2014-09-12T13:43:51Z stassats: M-x help is 2014-09-12T13:44:02Z p_l: generally, it's a pretty well known word, though maybe not in english recent slangs? 2014-09-12T13:44:17Z quazimodo: it's not intuitive at all 2014-09-12T13:44:23Z quazimodo: you'd never type that in without knowing ti 2014-09-12T13:44:33Z stassats: define intuitive 2014-09-12T13:44:35Z AeroNotix: quazimodo: would #apropyoloswag be more appropriate 2014-09-12T13:44:41Z quazimodo: haha 2014-09-12T13:44:41Z stassats: was M-x intuitive? 2014-09-12T13:45:11Z quazimodo: ... 2014-09-12T13:45:40Z p_l: quazimodo: nothing is intuitive (even a nipple involves training!) A good book (I love PCL for this) comes a long way 2014-09-12T13:45:43Z quazimodo: instead of rebutting everything I say instantly, can you instead think about it for a while. step out of you own shoes for a moment and into the shoes of someone trying to learn this stuff 2014-09-12T13:45:54Z p_l: imagine learning C without any idea about stdlib 2014-09-12T13:45:59Z p_l: which is what I did, pretty much 2014-09-12T13:46:00Z quazimodo: p_l: that's true too 2014-09-12T13:46:01Z stassats: you are learning, be humble 2014-09-12T13:46:07Z H4ns: quazimodo: why? and what would be the consequences that you imagine if we do as you say? 2014-09-12T13:46:14Z AeroNotix: quazimodo: you're of the opinion that learning should require no user effort or something? 2014-09-12T13:46:21Z p_l: It took me years before I learnt about things like atoi 2014-09-12T13:46:39Z ndrei quit (Ping timeout: 268 seconds) 2014-09-12T13:46:54Z stassats: i'm at atoz 2014-09-12T13:47:08Z p_l: I find Lisp to have at most some weird function names that come from the time when they were constrained to 6 characters, similar to Pascal's 10 character thing... 2014-09-12T13:47:21Z Maurice_TCF quit (Ping timeout: 264 seconds) 2014-09-12T13:47:42Z eudoxia: and then there's multiple-value-bind :) 2014-09-12T13:47:58Z ndrei joined #lisp 2014-09-12T13:48:08Z p_l: right. But that's kind of an advanced topic 2014-09-12T13:48:13Z przl joined #lisp 2014-09-12T13:48:25Z stassats: eudoxia: it's not weird, just long 2014-09-12T13:48:33Z dlowe: The terminology is different in lisp-world, sometimes oddly so. Decades of linguistic drift from separation between the fortran and lisp's descendants 2014-09-12T13:48:52Z p_l: quazimodo: dunno if you read it already, but PCL is a great introduction and kind of a guide to go through for starters 2014-09-12T13:49:12Z p_l: dlowe: eh, it's pretty simple compared to let's say, Haskell 2014-09-12T13:49:15Z dlowe: "cons" instead of "alloc", "bind" instead of "assign" 2014-09-12T13:49:30Z stassats: but bind is different from assign! 2014-09-12T13:49:33Z quazimodo: p_l: i've been dancing around lisp/common lisp/elisp etc for years 2014-09-12T13:49:34Z dlowe: mmhmm 2014-09-12T13:49:35Z p_l: I am not sure if assign and bind are good comparison 2014-09-12T13:49:42Z p_l: assign and set, now... 2014-09-12T13:49:42Z stassats: setf is more like assign 2014-09-12T13:50:03Z quazimodo: and the pain in the arse factor of common lisp names is over 9000, compare it to ruby... 2014-09-12T13:50:03Z p_l: quazimodo: did similar. PCL helped :) 2014-09-12T13:50:25Z stassats: don't compare it to ruby, please 2014-09-12T13:50:30Z stassats: and there are only 978 names 2014-09-12T13:50:37Z quazimodo: lol 2014-09-12T13:50:48Z quazimodo: great way to make users enthusiastic about learning it 2014-09-12T13:50:48Z p_l: eh, Ruby has its own warts in naming. It just doesn't show up so early, so you tend to be lulled into false sense of security 2014-09-12T13:50:55Z stassats: names are nothing, concepts are everything 2014-09-12T13:50:57Z quazimodo: p_l: ruby's pretty good 2014-09-12T13:50:59Z p_l: disclaimer - I've been mostly doing ruby recently 2014-09-12T13:51:03Z AeroNotix: Array.inject is a weird one 2014-09-12T13:51:09Z stassats: brainfuck doesn't have a lot of names 2014-09-12T13:51:27Z p_l: AeroNotix: << is weird, < is weird, etc. 2014-09-12T13:51:38Z |3b|: quazimodo: we realize there are problems, we also realize we aren't going to change CL, and that we've been subjected to this conversation too many times to be patient about it 2014-09-12T13:51:53Z quazimodo: |3b|: that's a fair point 2014-09-12T13:51:57Z quazimodo: what's stopping change? 2014-09-12T13:52:00Z |3b|: quazimodo: if you don't want CL, there are lots of alternatives 2014-09-12T13:52:13Z |3b|: CL has a specification, and decades of old code 2014-09-12T13:52:19Z p_l: quazimodo: in general, the stability offered turns out more beneficial in long run 2014-09-12T13:52:32Z quazimodo: so it's stuck 2014-09-12T13:52:35Z stassats: i don't need change, i'm capable of learning french words 2014-09-12T13:52:40Z |3b|: and nothing stops change, it just has a different name, see scheme, see clojure, etc 2014-09-12T13:52:42Z p_l: quazimodo: stuck like fopen() 2014-09-12T13:52:51Z p_l: or atoi 2014-09-12T13:52:52Z stassats: p_l: you mean creat? 2014-09-12T13:52:56Z p_l: stassats: that too 2014-09-12T13:53:12Z przl quit (Ping timeout: 245 seconds) 2014-09-12T13:53:25Z p_l: though creat is less language and more OS API 2014-09-12T13:53:26Z ndrei quit (Ping timeout: 268 seconds) 2014-09-12T13:54:39Z p_l: kinda like system32 having 64bit binaries on 64bit windows ;) 2014-09-12T13:54:44Z Maurice_TCF joined #lisp 2014-09-12T13:54:45Z |3b|: or you can write things that try to stay CL while not looking like CL (maybe you would like cl21), but then CL people don't like them because all their CL code doesn't work, and other people don't like them because it has no users and no libraries and isn't the popular new fad anyway 2014-09-12T13:56:00Z zophy quit (Quit: Leaving) 2014-09-12T13:56:12Z p_l: that reminds me to check out if I have APL implementation on a certain system... 2014-09-12T13:57:26Z quazimodo: i should just stfu and create some macros to be included with nicer, intuitive names that make the already suicidal task of reading lisp easier 2014-09-12T13:57:33Z wasamasa: suicidal? 2014-09-12T13:57:37Z wasamasa: what the hell are you smoking 2014-09-12T13:57:54Z p_l: quazimodo: it takes time to get accustomed, + a good auto-indenter (like in SLIME) 2014-09-12T13:57:57Z k-stz joined #lisp 2014-09-12T13:58:10Z quazimodo: reading other peoples lisp makes me feel like dying some times, not because they are bad or anything. it's just so much about how they think, i'm not good at wrapping my head around that yet 2014-09-12T13:58:21Z mtxp joined #lisp 2014-09-12T13:58:23Z quazimodo: p_l: yeah I use silme 2014-09-12T13:58:26Z stassats: bad for you 2014-09-12T13:58:35Z p_l: nowadays I find the task of reading ruby/C/shell/etc. sorta annoying, because I'm used to very clear scoping enforced by S-expressions 2014-09-12T13:58:46Z quazimodo: it's not indentation/brackets or trivial stuff like that, more like, people are expressing thnig stheir own way, it gets hard semantically at times 2014-09-12T13:58:49Z ans joined #lisp 2014-09-12T13:58:51Z wasamasa: I mean, we have `let' 2014-09-12T13:58:55Z Krystof: #sbcl 2014-09-12T13:58:56Z Krystof: oops 2014-09-12T13:59:16Z ans: so how can i intern a string like "test" so as it is equal to 'test, or is that like a stupid question 2014-09-12T13:59:31Z ndrei joined #lisp 2014-09-12T13:59:56Z quazimodo: let was hard for me at first, i kinda wish people used square brackets on their let statements just to immediately make it stand out. But i guess i could program my emacs to color let brackets differently. But i agree with you p_l, the scope offered by let is nice 2014-09-12T13:59:58Z dlowe: ans: (intern (string-uppercase "test")) 2014-09-12T14:00:04Z stassats: (intern "TEST" (symbol-package 'test)) 2014-09-12T14:00:17Z dlowe: stassats: nice thought on the package 2014-09-12T14:00:19Z fortitude joined #lisp 2014-09-12T14:00:35Z ans: thanks a bunch 2014-09-12T14:00:42Z stassats: that may alienate modern-mode users and habitual readtable-case changers 2014-09-12T14:00:46Z |3b|: quazimodo: maybe you would like http://cl21.org/ 2014-09-12T14:01:17Z mr-foobar joined #lisp 2014-09-12T14:01:24Z dlowe: quazimodo: it's a lot easier to balance with ))))) than it is to balance with ))]))}}]) 2014-09-12T14:01:28Z eudoxia: clojure's bracketed let is horrible 2014-09-12T14:01:37Z eudoxia: why on earth would anyone think it's a good idea 2014-09-12T14:01:46Z dlowe: racket users :D 2014-09-12T14:01:52Z nyef: Meh. The modern-mode users hardly count, and the readtable-case changers know what they're getting into. 2014-09-12T14:01:58Z |3b|: eudoxia: because they want to market to people who are allergic to () 2014-09-12T14:02:05Z quazimodo: dlowe: yeah that's true. I'll just get emacs to highlight let brackets with a different color 2014-09-12T14:02:43Z przl joined #lisp 2014-09-12T14:02:45Z quazimodo: |3b|: it'll become like javascriptse UBER annoying );});))} things 2014-09-12T14:02:58Z quazimodo switched to coffee script specifically because of that stuff 2014-09-12T14:03:02Z |3b|: yeah, adding ; makes it even worse 2014-09-12T14:03:15Z |3b| uses parenscript, nothing but )))) for me :p 2014-09-12T14:03:24Z dlowe: heh. cl21 looks like snarc 2014-09-12T14:03:27Z quazimodo: parenscript? 2014-09-12T14:03:41Z nyef: minion: parenscript? 2014-09-12T14:03:41Z minion: parenscript: No definition was found in the first 5 lines of http://www.cliki.net/parenscript 2014-09-12T14:03:44Z nyef: Hrm. 2014-09-12T14:03:55Z izirku joined #lisp 2014-09-12T14:03:55Z wasamasa: dlowe: snarc? 2014-09-12T14:03:59Z |3b|: parenscript is a CL-like DSL for generating JS 2014-09-12T14:04:02Z p_l: quazimodo: a simple syntax translator for generating JS 2014-09-12T14:04:05Z Amaan joined #lisp 2014-09-12T14:04:14Z dlowe: wasamasa: a similar reskinning of CL I did a while ago. 2014-09-12T14:04:28Z stassats: i see that nobody is going to fix cliki to provide an article source, so i guess i can stop making minion try 2014-09-12T14:04:57Z wasamasa: dlowe: well, um, I don't really see the point if anyone's going to use those for anything more than personal scripts 2014-09-12T14:05:00Z |3b| wonders if a patch to cliki would be accepted 2014-09-12T14:05:12Z stassats: is there somebody in charge at all? 2014-09-12T14:05:16Z |3b|: no idea 2014-09-12T14:05:45Z wasamasa: dlowe: an actual new standard and implementations using it would be more reasonable 2014-09-12T14:05:54Z quazimodo: never seen cl21 before, interesting 2014-09-12T14:06:01Z dlowe: wasamasa: "reasonable" 2014-09-12T14:06:04Z eudoxia: stassats: of cliki? 2014-09-12T14:06:17Z dlowe: wasamasa: I look forward to seeing your new standard and implementation 2014-09-12T14:06:27Z stassats: eudoxia: that too 2014-09-12T14:06:50Z ndrei quit (Ping timeout: 272 seconds) 2014-09-12T14:07:15Z wasamasa: dlowe: nah, I'm not one of those who think they're able to design a better language than those around 2014-09-12T14:07:30Z wasamasa: dlowe: I just find the idea of having an extra dependency silly just to achieve slightly more readable code 2014-09-12T14:07:46Z dlowe: wasamasa: it was at least partly to make fun of arc 2014-09-12T14:08:00Z dlowe: which was a reskinning of scheme at the time 2014-09-12T14:08:32Z mtxp quit (Ping timeout: 245 seconds) 2014-09-12T14:08:38Z dlowe: It's funny how allergic lispers are to dependencies, though 2014-09-12T14:08:39Z drmeister joined #lisp 2014-09-12T14:09:16Z nell joined #lisp 2014-09-12T14:09:20Z dlowe: We have the programmable programming language. So stop programming my programming language! 2014-09-12T14:09:45Z karswell quit (Read error: Connection reset by peer) 2014-09-12T14:10:19Z vydd joined #lisp 2014-09-12T14:10:23Z stassats: because everyone wants to speak the same language 2014-09-12T14:10:27Z stassats: kthxbye 2014-09-12T14:10:44Z c3w joined #lisp 2014-09-12T14:10:45Z dlowe: The JVM folks seem to get along 2014-09-12T14:10:47Z quazimodo: I agree with the statement from the cl21 guy 2014-09-12T14:10:52Z rick-monster: dlowe: the allergy can flare up on prolonged exposure to CPAN 2014-09-12T14:11:01Z wasamasa: "Want to use my super-awesome library? Too bad, you can't just use parts of it as you wish because I decided to program in something looking like Lisp which is my take on making it a bit better." 2014-09-12T14:11:18Z c3w` quit (Quit: uptime) 2014-09-12T14:11:44Z c3w quit (Client Quit) 2014-09-12T14:12:01Z JuanDaugherty joined #lisp 2014-09-12T14:12:10Z dlowe: how is that different than "I decided to use usockets instead of embedding the system calls and reimplementing it all myself" 2014-09-12T14:12:31Z wasamasa: it doesn't exactly sound like the best practice for a project other people than you work on 2014-09-12T14:12:33Z dlowe: even though your own program isn't interested in using usockets 2014-09-12T14:13:09Z Maurice_TCF quit (Ping timeout: 263 seconds) 2014-09-12T14:13:34Z dlowe: I happen to share the allergy, but I'm still not convinced it's rational 2014-09-12T14:13:38Z karswell joined #lisp 2014-09-12T14:13:54Z wasamasa: like, for example with neovim 2014-09-12T14:14:30Z wasamasa: they initially agreed upon using moonscript for development because it's a neater language than lua, but then dropped it as they realized it raises the barrier for contributors and is far from being stable 2014-09-12T14:15:19Z rick-monster: 'if you can't hack it you don't own it' applies to hundreds of obfuscated dependencies as well as binary gobs 2014-09-12T14:16:01Z drmeister quit (Read error: Connection reset by peer) 2014-09-12T14:16:21Z ans: easiest way to get nested alist value? like to access 'b in '(a . '(b . 5)) in one statement, with handling for the case of missing 'a 2014-09-12T14:16:23Z ans: ? 2014-09-12T14:16:52Z didi joined #lisp 2014-09-12T14:17:08Z didi: Can I rename a symbol upon importing it from another package? 2014-09-12T14:17:42Z tadni quit (Ping timeout: 245 seconds) 2014-09-12T14:17:49Z hlavaty: dlowe: it's completely justified; try getting hu.dwim.* to run; then try to modify/port it; you'll se what dependencies mean :-) 2014-09-12T14:17:51Z quazimodo: coerce is nice 2014-09-12T14:18:30Z xificurC quit (Quit: WeeChat 0.4.3) 2014-09-12T14:18:38Z dlowe: hlavaty: I imagine if you exist solely within their silo, it's quite nice 2014-09-12T14:18:51Z drmeister joined #lisp 2014-09-12T14:18:58Z Maurice_TCF joined #lisp 2014-09-12T14:19:17Z hlavaty: didi: symbols are EQ, you cant rename a symbol; you can create new one 2014-09-12T14:19:30Z H4ns: i think one needs to decide whether one wants to program in common lisp or if one wants to create a new language based on common lisp. the two approaches are rather different, and have their own merits. 2014-09-12T14:19:53Z quazimodo: how's the symbol table in most common lisps treated? is it just a pile of memory that keeps getting bigger as more symbols are defined? 2014-09-12T14:20:18Z nyef: Note that the "new language based on common lisp" crowd includes several people who are famous for not liking common lisp. 2014-09-12T14:20:19Z |3b|: there is no "the symbol table", there are a bunch of package objects 2014-09-12T14:20:53Z |3b|: the package objects contain symbol objects 2014-09-12T14:21:13Z quazimodo: oh 2014-09-12T14:21:14Z quazimodo: nice 2014-09-12T14:21:17Z quazimodo: :) 2014-09-12T14:21:26Z ejbs: nyef: Fukamachi likes CL a lot, considering his contributions 2014-09-12T14:21:27Z quazimodo: ruby has a stupid symbol table that get h00ge 2014-09-12T14:21:43Z wasamasa: dlowe: I think metaprogramming is pretty nice to have, but if overdone can impede collaboration 2014-09-12T14:21:49Z wasamasa: dlowe: to summarize my stance on all of this 2014-09-12T14:21:49Z jlongster joined #lisp 2014-09-12T14:22:26Z |3b|: quazimodo: nothing stops packages from getting large though 2014-09-12T14:22:28Z ndrei joined #lisp 2014-09-12T14:22:34Z quazimodo: wasamasa: i think I mentoned, reading other peoples lisp can become very hard for me esp. when they start to get really uniquely expressive 2014-09-12T14:23:19Z hlavaty: problem with "new language based on common lisp" is mainly that they dont create anything worth of value; only cluttering code with useless syntax, hooks and abstractions 2014-09-12T14:23:42Z quazimodo: hlavaty: anything to help readability, imho 2014-09-12T14:23:48Z H4ns: hlavaty: i agree. it is mostly ignorance. 2014-09-12T14:23:49Z ans: someone tell me how to get around (cdr (assoc 'b (cdr (assoc 'a)))) hell please :p 2014-09-12T14:23:49Z |3b|: quazimodo: that is probably equally true of any 'powerful' language 2014-09-12T14:24:06Z |3b|: ans: use better data structures, or write an abstraction for it 2014-09-12T14:24:31Z Maurice_TCF_ joined #lisp 2014-09-12T14:24:33Z ans: sure ill write it was just curious if something doesnt already exist 2014-09-12T14:24:34Z quazimodo: |3b|: lisp kinda pushes it to the extreme end of the spectrum though 2014-09-12T14:24:36Z ans: couldnt find anything 2014-09-12T14:24:53Z quazimodo: I've never programmed perl, but I hear that's a cunt of a thing to read too 2014-09-12T14:24:56Z wasamasa: hlavaty: yeah, the renaming is... questionable at times: https://github.com/cl21/cl21/issues/40 2014-09-12T14:25:19Z |3b|: quazimodo: right, some people like that (forth is similar in that regard), some people prefer a language like java that tries to keep everyone interchangeable 2014-09-12T14:25:28Z normanrichards joined #lisp 2014-09-12T14:26:07Z Maurice_TCF quit (Ping timeout: 245 seconds) 2014-09-12T14:26:12Z urandom__ joined #lisp 2014-09-12T14:26:16Z quazimodo: |3b|: i'll be honest, I find java to be painful to read too 2014-09-12T14:26:17Z huza quit (Quit: WeeChat 0.3.8) 2014-09-12T14:26:22Z quazimodo: I've been spoilt by ruby honestly 2014-09-12T14:26:36Z |3b|: right, but java is consistently painful :) 2014-09-12T14:26:47Z Petit_Dejeuner_: Factor is pretty cool with its metaprogramming support. I don't know how to use it, but when I see what's implemented in it, I'm impressed. 2014-09-12T14:26:47Z wasamasa: quazimodo: welcome to inconsistent behaviour land 2014-09-12T14:26:48Z attila_lendvai joined #lisp 2014-09-12T14:26:48Z attila_lendvai quit (Changing host) 2014-09-12T14:26:48Z attila_lendvai joined #lisp 2014-09-12T14:26:55Z quazimodo: wasamasa: whatcha mean 2014-09-12T14:26:57Z dlowe: wasamasa: the answer is clearly that filter should return two lists 2014-09-12T14:27:14Z wasamasa: quazimodo: not to mention, parsing ambiguities 2014-09-12T14:27:14Z drmeister quit (Read error: Connection reset by peer) 2014-09-12T14:27:17Z madnificent joined #lisp 2014-09-12T14:27:41Z dlowe: wow, the amount of bikeshedding in that thread is legendary 2014-09-12T14:28:03Z wasamasa: quazimodo: leave out parentheses in method calls and you might end up with very subtle bugs 2014-09-12T14:28:12Z wasamasa: quazimodo: I'm glad I don't have these kind of problems in lisp :P 2014-09-12T14:28:16Z |3b|: dlowe: well, arguably the whole point of cl21 is bikeshedding :) 2014-09-12T14:28:45Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-12T14:28:50Z dlowe: (confession: snarc has "filter" and "select") 2014-09-12T14:28:58Z quazimodo: wasamasa: never had a single problem with that, they got that part right imho 2014-09-12T14:29:15Z |3b|: they want to attract all the hipsters riding bikes to our nice power plant, so they need a bunch of pretty bike sheds 2014-09-12T14:29:22Z Petit_Dejeuner_: Is anyone here even using cl21 2014-09-12T14:29:27Z stassats: my language will have "sieve" 2014-09-12T14:29:29Z quazimodo: i've heard of people having issues with that, javascript guys moan about coffeescript exactly because of that 2014-09-12T14:29:34Z ndrei quit (Ping timeout: 252 seconds) 2014-09-12T14:29:45Z wasamasa: quazimodo: the combination of significant whitespace and rubyisms sucks 2014-09-12T14:29:53Z Petit_Dejeuner_: But JavaScript is terrible. 2014-09-12T14:30:11Z wasamasa: quazimodo: also, the scoping 2014-09-12T14:30:30Z hlavaty: wasamasa: naming issues are trivial; what would be a big step forward is for example ability to create constructed streams portably :-) 2014-09-12T14:30:33Z quazimodo: where did you run into scoping issues? 2014-09-12T14:30:42Z ndrei joined #lisp 2014-09-12T14:30:43Z wasamasa: hlavaty: yeah, the actually hard problems 2014-09-12T14:30:50Z TDog quit (Ping timeout: 276 seconds) 2014-09-12T14:31:13Z wasamasa: quazimodo: http://lucumr.pocoo.org/2011/12/22/implicit-scoping-in-coffeescript/ 2014-09-12T14:32:05Z wasamasa: quazimodo: http://ceaude.twoticketsplease.de/articles/ruby-and-the-principle-of-unwelcome-surprise.html 2014-09-12T14:32:32Z Petit_Dejeuner_: One more reason to be glad let and setf aren't the same. 2014-09-12T14:36:43Z quazimodo: wasamasa: I never experienced that, but I can see your point. I think I like the := option 2014-09-12T14:36:52Z wasamasa: :| 2014-09-12T14:39:39Z quazimodo: ruby solves that problem in it's own way, which also makes sense to me 2014-09-12T14:44:56Z pt1 joined #lisp 2014-09-12T14:45:17Z normanrichards quit 2014-09-12T14:46:14Z yrk joined #lisp 2014-09-12T14:46:38Z yrk quit (Changing host) 2014-09-12T14:46:38Z yrk joined #lisp 2014-09-12T14:48:38Z ndrei quit (Ping timeout: 272 seconds) 2014-09-12T14:53:34Z drmeister joined #lisp 2014-09-12T14:54:29Z jdz_ quit (Ping timeout: 268 seconds) 2014-09-12T14:54:52Z stassats quit (Ping timeout: 245 seconds) 2014-09-12T14:58:25Z shka quit (Read error: Connection reset by peer) 2014-09-12T14:59:26Z malice joined #lisp 2014-09-12T15:04:09Z vlnx quit (Read error: Connection reset by peer) 2014-09-12T15:04:34Z ndrei joined #lisp 2014-09-12T15:04:39Z vaporatorius quit (Quit: Leaving) 2014-09-12T15:06:30Z vlnx joined #lisp 2014-09-12T15:07:52Z ehu quit (Ping timeout: 240 seconds) 2014-09-12T15:12:36Z ndrei quit (Ping timeout: 255 seconds) 2014-09-12T15:14:07Z ndrei joined #lisp 2014-09-12T15:15:31Z Karl_Dscc joined #lisp 2014-09-12T15:16:18Z jusss quit (Read error: Connection reset by peer) 2014-09-12T15:16:27Z stassats joined #lisp 2014-09-12T15:16:39Z malice quit (Ping timeout: 255 seconds) 2014-09-12T15:18:30Z pt1_ joined #lisp 2014-09-12T15:18:33Z pt1 quit (Ping timeout: 264 seconds) 2014-09-12T15:23:32Z TomRS` joined #lisp 2014-09-12T15:24:42Z atgreen joined #lisp 2014-09-12T15:26:23Z TomRS quit (Ping timeout: 240 seconds) 2014-09-12T15:28:37Z oleo is now known as Guest16902 2014-09-12T15:30:21Z oleo__ joined #lisp 2014-09-12T15:32:20Z Guest16902 quit (Ping timeout: 272 seconds) 2014-09-12T15:32:22Z pt1_ quit (Remote host closed the connection) 2014-09-12T15:33:18Z malice joined #lisp 2014-09-12T15:34:17Z gravicappa quit (Remote host closed the connection) 2014-09-12T15:36:16Z innertracks joined #lisp 2014-09-12T15:37:16Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-12T15:37:17Z stassats quit (Ping timeout: 252 seconds) 2014-09-12T15:38:07Z attila_lendvai quit (Quit: Leaving.) 2014-09-12T15:39:22Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-12T15:39:53Z malice quit (Quit: Leaving) 2014-09-12T15:43:52Z hiroakip joined #lisp 2014-09-12T15:44:00Z samebchase quit (Ping timeout: 252 seconds) 2014-09-12T15:44:42Z samebchase joined #lisp 2014-09-12T15:45:15Z Blaguvest joined #lisp 2014-09-12T15:46:06Z innertracks quit (Quit: innertracks) 2014-09-12T15:48:26Z JuanDaugherty Yes but as a known communist, it would be surprising if the slav compared me to Gavino 2014-09-12T15:49:17Z didi left #lisp 2014-09-12T15:51:49Z mrSpec joined #lisp 2014-09-12T15:52:42Z innertracks joined #lisp 2014-09-12T15:55:49Z innertracks quit (Client Quit) 2014-09-12T15:58:14Z paroneayea joined #lisp 2014-09-12T15:58:19Z paroneayea: hello! 2014-09-12T15:58:57Z paroneayea: does anyone know if any other lisp provides something akin to edebug instrumentation / specification of macros? 2014-09-12T15:59:10Z paroneayea: where you can clearly step through lisp code, eben when wrapped in macros? 2014-09-12T15:59:15Z paroneayea: is this unique to emacs lisp? 2014-09-12T16:01:01Z wasamasa: I've heard the better implementations do have source-level debuggers 2014-09-12T16:01:06Z wasamasa: which is what edebug seems to be 2014-09-12T16:01:09Z |3b|: paroneayea: probably more about emacs than emacs lisp (and similarly, to the implementation of some other lisp rather than the language) 2014-09-12T16:01:48Z paroneayea: wasamasa: sure, others do have source level debuggers, but the thing I'm talking about is where in most lisps it seems that once you wrap some code in a macro 2014-09-12T16:01:56Z paroneayea: the lisp doesn't know where you are in that macro anymore 2014-09-12T16:02:08Z paroneayea: so you can't step through things bit by bit 2014-09-12T16:02:16Z alexherbo2 quit (Quit: WeeChat 1.0) 2014-09-12T16:02:22Z paroneayea: but elisp lets you specify how the macro layout works so the debugger can infer that 2014-09-12T16:02:30Z paroneayea: https://www.gnu.org/software/emacs/manual/html_node/elisp/Instrumenting-Macro-Calls.html 2014-09-12T16:03:10Z innertracks joined #lisp 2014-09-12T16:03:51Z wasamasa: paroneayea: this for instance looks good: http://www.clisp.org/impnotes/debugger.html 2014-09-12T16:04:30Z paroneayea: wasamasa: sure, but I'm not talking about tracing 2014-09-12T16:04:35Z paroneayea: those features are nice, but many lisps have those 2014-09-12T16:04:40Z cy joined #lisp 2014-09-12T16:05:05Z beach joined #lisp 2014-09-12T16:05:14Z paroneayea: I'm talking about stepping through things similar to how you might move forward line by line in pdb in python 2014-09-12T16:05:18Z wasamasa: so does the franz stepper: http://franz.com/support/documentation/current/doc/ide-menus-and-dialogs/stepper-dialog.htm 2014-09-12T16:06:10Z paroneayea: looks like it expands macros to let you step through them... is that so? 2014-09-12T16:06:31Z ysz joined #lisp 2014-09-12T16:06:38Z paroneayea: the thing about the edebug feature I'm talking about is it doesn't print out a representation of the expanded macro and let you step through it 2014-09-12T16:06:38Z ysz: hi 2014-09-12T16:06:52Z beach: Hello ysz. 2014-09-12T16:06:54Z paroneayea: it describes how to walk through it as it looks in the source 2014-09-12T16:07:02Z paroneayea: wasamasa: these are useful resources though :) 2014-09-12T16:07:03Z beach: [and good evening everyone] 2014-09-12T16:07:07Z paroneayea: thanks for sharing 2014-09-12T16:07:08Z ysz: i read at some places that EVAL is usually abused. whats the "right" way to turn some data into code occasionally? 2014-09-12T16:07:22Z beach: ysz: EVAL. 2014-09-12T16:07:41Z beach: ysz: Or COMPILE. 2014-09-12T16:08:09Z ysz: yeah, i was thinking about COMPILE but I was wondering if it looks weird to do so 2014-09-12T16:08:11Z |3b|: frequently thinking you need to turn the data into code is the problem, not eval specifically (particularly data from untrusted sources) 2014-09-12T16:08:13Z beach: ysz: If you really need to turn data into code, those are pretty much your only options. 2014-09-12T16:08:21Z Aiwass joined #lisp 2014-09-12T16:08:39Z ysz: |3b|, sorry? 2014-09-12T16:08:56Z beach: ysz: As |3b| says, the problem is that many people think they need to turn code into data whereas in reality they don't. 2014-09-12T16:09:10Z wasamasa: paroneayea: I'm just using a search engine :P 2014-09-12T16:09:12Z ysz: nice way of answering questions =) 2014-09-12T16:09:27Z isoraqathedh quit (Ping timeout: 245 seconds) 2014-09-12T16:09:39Z beach: ysz: But occasionally, one has no other choice. 2014-09-12T16:09:40Z |3b|: ysz: possibly it would have been more clear with a comma after 'frequently' 2014-09-12T16:09:50Z ysz: beach, |3b| in fact I'm just throwing test cases around while i program and i need to run them in some combinations occasionally 2014-09-12T16:09:51Z TDog joined #lisp 2014-09-12T16:10:00Z murftown joined #lisp 2014-09-12T16:10:36Z paroneayea: it seems that the answer to my question is that "no, no other lisp provides that feature" :) 2014-09-12T16:10:46Z murftown: morning #lisp 2014-09-12T16:11:03Z beach: ysz: Anyway, you would have to show us some use cases in order for us to determine whether you overuse EVAL or not. 2014-09-12T16:11:08Z beach: Hello murftown. 2014-09-12T16:11:11Z paroneayea: for all the crap emacs lisp gets, pretty killer feature when debugging! :) 2014-09-12T16:11:17Z boogie joined #lisp 2014-09-12T16:11:35Z zacharias quit (Ping timeout: 276 seconds) 2014-09-12T16:12:00Z isoraqathedh joined #lisp 2014-09-12T16:12:17Z rvchangue quit (Ping timeout: 245 seconds) 2014-09-12T16:12:35Z wasamasa: paroneayea: Fuco wrote a bit about things that wreck edebug easily :P 2014-09-12T16:13:38Z paroneayea: wasamasa: I don't know who Fuco is :) 2014-09-12T16:13:50Z wasamasa: paroneayea: the guy who wrote smartparens 2014-09-12T16:14:43Z beach: paroneayea: Don't confuse language and language implementation. The complaints about Emacs Lisp that I have heard are related to the language. 2014-09-12T16:14:51Z paroneayea: wasamasa: oh, I love smartparens :) 2014-09-12T16:15:02Z wasamasa: paroneayea: so, he's done a fair bit of hacking with elisp 2014-09-12T16:15:05Z paroneayea: beach: true :) 2014-09-12T16:15:15Z paroneayea: wasamasa: got a link? 2014-09-12T16:15:22Z wasamasa: paroneayea: nope, only logs 2014-09-12T16:15:43Z Aiwass quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-12T16:16:40Z MoALTz joined #lisp 2014-09-12T16:16:58Z wasamasa: paroneayea: but he does things like improving dash.el, rewriting known emacs packages for fun and finding out about the less nice bits in emacs 2014-09-12T16:17:11Z paroneayea: :) 2014-09-12T16:17:16Z paroneayea: guilemacs will fix this ;) 2014-09-12T16:17:44Z oGMo: then it will be guile 2014-09-12T16:17:46Z wasamasa: paroneayea: such as that it breaks when reaching the maximum recursion depth 2014-09-12T16:18:01Z rvchangue joined #lisp 2014-09-12T16:18:10Z wasamasa: paroneayea: or that it first inserts a binary tar file, then deletes the buffer contents, then inserts the textual representation 2014-09-12T16:18:41Z paroneayea: that explains a recent interaction I had with emacs :) 2014-09-12T16:19:12Z wasamasa: or that ace-jump is practically not usable as library, hence a quick rewrite using dash.el 2014-09-12T16:19:15Z wasamasa: and so on and so forth 2014-09-12T16:19:22Z ysz: beach, yeah. i found this in lisp-unit code (funcall (coerce `(lambda () ,@code) 'function) 2014-09-12T16:19:34Z ysz: how idiomatic is it? 2014-09-12T16:19:51Z ysz: does what i was looking for actually (can be done with EVAL/COMPILE as well) 2014-09-12T16:19:59Z beach: ysz: Again, hard to say without more context. 2014-09-12T16:20:12Z Bike: on the hopefully rare occasion you'd want to get a function out of source like that, yeah, that works 2014-09-12T16:20:13Z ysz: well, you have forms in CODE.. and you want to run them! 2014-09-12T16:20:21Z beach: ysz: Whether you do EVAL, COMPILE, or COERCE, it's the same issue. 2014-09-12T16:20:30Z przl quit (Quit: leaving) 2014-09-12T16:20:36Z Bike: i mean, that's the same as (eval `(progn ,@code)) though 2014-09-12T16:20:41Z ysz: aha 2014-09-12T16:20:47Z ysz: in more "fancy" way 2014-09-12T16:20:54Z ysz: I'm wondering what's more common 2014-09-12T16:21:10Z Bike: not sure why you'd bother with the function call if you're not passing arguments or anything, i think. 2014-09-12T16:21:15Z ysz: Peter Norvig just EVALs stuff in his PAIP for instance... 2014-09-12T16:21:26Z arenz quit (Ping timeout: 268 seconds) 2014-09-12T16:21:27Z ysz: Bike, oh, good point indeed 2014-09-12T16:21:33Z ndrei quit (Ping timeout: 264 seconds) 2014-09-12T16:21:34Z Bike: or saving the function somewhere. 2014-09-12T16:21:36Z ysz: (im not passing args) 2014-09-12T16:21:40Z ysz: aha... 2014-09-12T16:22:03Z Bike: but if you were saving the function you might want to compile it anyway... 2014-09-12T16:22:04Z ysz: beach, if you have missed that. lisp-unit was the context. 2014-09-12T16:22:11Z ysz: not sure if you are familiar with that piece 2014-09-12T16:22:17Z ysz: (ql-installable though) 2014-09-12T16:22:22Z innertracks quit (Ping timeout: 240 seconds) 2014-09-12T16:22:23Z beach: I know lisp-unit. 2014-09-12T16:22:29Z beach: I use it myself occasionally. 2014-09-12T16:22:50Z ysz: (defun run-code (code) 2014-09-12T16:22:50Z ysz: "Run the code to test the assertions." 2014-09-12T16:22:50Z ysz: (funcall (coerce `(lambda () ,@code) 'function))) 2014-09-12T16:22:55Z stassats joined #lisp 2014-09-12T16:22:58Z ysz: full piece from which i quoted. 2014-09-12T16:23:00Z fragamus joined #lisp 2014-09-12T16:23:14Z beach: I can see how a unit-test framework might have to do that. 2014-09-12T16:23:20Z ysz: so my question was about style more than anything 2014-09-12T16:23:49Z stassats: unit tests have no style 2014-09-12T16:24:07Z ysz: stassats, fix your unit tests then! :-P 2014-09-12T16:24:12Z stassats: don't have any 2014-09-12T16:24:16Z ysz: omg 2014-09-12T16:24:21Z H4ns: *g* 2014-09-12T16:25:00Z beach: ysz: It looks like a reasonable use for EVAL etc. Don't worry about it. 2014-09-12T16:25:21Z ysz: what a relief. thanks guys =) 2014-09-12T16:25:44Z bobbysmith0071: ysz: lisp-unit2 uses compile (instead of eval) with a very similar form to above 2014-09-12T16:25:55Z zlrth quit (Ping timeout: 246 seconds) 2014-09-12T16:26:11Z ysz: bobbysmith0071, interesting. so it saves function indeed? 2014-09-12T16:26:19Z stassats: compile isn't any better than eval 2014-09-12T16:26:26Z ysz: otherwise i agree with Bike that it does not make much sense to COMPILE 2014-09-12T16:26:32Z bobbysmith0071: ysz: https://github.com/AccelerationNet/lisp-unit2/blob/master/lisp-unit.lisp#L192 2014-09-12T16:26:47Z beach: ysz: The result might be faster in some implementations. 2014-09-12T16:26:50Z bobbysmith0071: stassats: its not better, but if I actually just want to compile a function it makes slightly more sense 2014-09-12T16:27:05Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-12T16:27:13Z bobbysmith0071: since we need to recompile the function body before each test run, we pretty much must call compile 2014-09-12T16:27:14Z beach: ysz: It has nothing to do with saving code or not. Semantically, they are the same. 2014-09-12T16:27:21Z ysz: it saves indeed. 2014-09-12T16:27:23Z ysz: thx bobbysmith0071 2014-09-12T16:27:36Z ysz: beach, read on COMPILE =) 2014-09-12T16:27:46Z beach: ysz: ? 2014-09-12T16:27:51Z stassats: bobbysmith0071: some people just say that EVAL is EVIL, better use COMPILE 2014-09-12T16:28:00Z ysz: beach, "If a non-nil name is given, then the resulting compiled function replaces the existing function definition of name" 2014-09-12T16:28:01Z stassats: when it's just switching things around 2014-09-12T16:28:09Z ysz: before throwing "semantically same" ;) 2014-09-12T16:28:22Z Bike: please don't try to tell an implementor about compile, you'll just embarass yourself 2014-09-12T16:28:44Z ysz: i don't care if implementor talks nonsense and confuses ppl 2014-09-12T16:29:07Z bobbysmith0071: stassats: totally agree 2014-09-12T16:29:10Z ysz: not to mention that on Internet you can call yourself whatever you want ;) 2014-09-12T16:29:23Z Bike: we're obviously talking about compile nil 2014-09-12T16:30:19Z stassats: c.f. coerce 'function, which may give something different 2014-09-12T16:30:43Z ans: what would be the easiest way to transform a list like '(1 2 3 4) '((1 2) (3 4)) or to iterate through it in such groupped fashion? 2014-09-12T16:30:57Z ysz: Bike, and still compiled fun is returned... 2014-09-12T16:31:05Z ysz: so nowhere near "semantically identity"... 2014-09-12T16:31:06Z Bike: ans: (loop for (a b) on list by #'cddr ...) 2014-09-12T16:31:22Z eudoxia: ans: (loop for (a b) on list by #'cddr collecting (list a b) 2014-09-12T16:31:45Z ysz quit (Quit: This computer has gone to sleep) 2014-09-12T16:32:05Z ans: nice, thanks 2014-09-12T16:32:48Z stassats: it's no fun to accuse people of talking nonsense when you actually don't know much yourself 2014-09-12T16:34:29Z beach: stassats: What are you referring to? 2014-09-12T16:34:34Z stassats: beach: to ysz 2014-09-12T16:34:43Z beach: Oh. Yeah. 2014-09-12T16:35:24Z stassats: i guess it's just september 2014-09-12T16:35:57Z mhd joined #lisp 2014-09-12T16:36:03Z ndrei joined #lisp 2014-09-12T16:40:21Z hlavaty left #lisp 2014-09-12T16:40:57Z jdz joined #lisp 2014-09-12T16:43:07Z stassats quit (Ping timeout: 245 seconds) 2014-09-12T16:45:49Z hitecnologys quit (Quit: hitecnologys) 2014-09-12T16:46:25Z ehaliewicz joined #lisp 2014-09-12T16:48:20Z Mon_Ouie quit (Ping timeout: 272 seconds) 2014-09-12T16:49:22Z kushal quit (Ping timeout: 245 seconds) 2014-09-12T16:49:23Z jegaxd26` quit (Remote host closed the connection) 2014-09-12T16:50:43Z alexherbo2 joined #lisp 2014-09-12T16:53:30Z ehaliewicz quit (Remote host closed the connection) 2014-09-12T16:55:05Z ehaliewicz joined #lisp 2014-09-12T16:56:07Z kushal joined #lisp 2014-09-12T16:56:14Z Maurice_TCF_ quit (Quit: Leaving) 2014-09-12T16:56:39Z yrk quit (Read error: Connection reset by peer) 2014-09-12T16:57:54Z kdas__ joined #lisp 2014-09-12T16:58:18Z sdemarre joined #lisp 2014-09-12T16:59:24Z kushal quit (Disconnected by services) 2014-09-12T17:00:35Z kushal joined #lisp 2014-09-12T17:02:14Z kdas__ quit (Read error: Connection reset by peer) 2014-09-12T17:02:51Z sdemarre quit (Ping timeout: 255 seconds) 2014-09-12T17:05:51Z TDog_ joined #lisp 2014-09-12T17:05:58Z slyrus joined #lisp 2014-09-12T17:06:08Z Ragnaroek quit (Ping timeout: 252 seconds) 2014-09-12T17:08:15Z TDog quit (Ping timeout: 246 seconds) 2014-09-12T17:08:16Z TDog_ is now known as TDog 2014-09-12T17:08:53Z TomRS` quit (Ping timeout: 260 seconds) 2014-09-12T17:12:37Z nipra quit (Quit: Leaving.) 2014-09-12T17:12:37Z ejbs` joined #lisp 2014-09-12T17:13:30Z schoppenhauer1 joined #lisp 2014-09-12T17:13:33Z mtxp joined #lisp 2014-09-12T17:14:08Z boogie quit (Remote host closed the connection) 2014-09-12T17:15:18Z faheem__1 joined #lisp 2014-09-12T17:15:30Z ahungry__ joined #lisp 2014-09-12T17:15:32Z zacharias joined #lisp 2014-09-12T17:15:47Z milosn_ joined #lisp 2014-09-12T17:17:31Z schaueho_ joined #lisp 2014-09-12T17:17:33Z farhaven quit (Ping timeout: 268 seconds) 2014-09-12T17:18:26Z necronian quit (Excess Flood) 2014-09-12T17:18:39Z milosn quit (Write error: Broken pipe) 2014-09-12T17:18:39Z faheem_ quit (Write error: Broken pipe) 2014-09-12T17:18:53Z necronian joined #lisp 2014-09-12T17:18:55Z kobain quit (Excess Flood) 2014-09-12T17:18:56Z schoppenhauer quit (Disconnected by services) 2014-09-12T17:19:02Z schoppenhauer1 is now known as schoppenhauer 2014-09-12T17:19:08Z ejbs quit (Remote host closed the connection) 2014-09-12T17:19:11Z schoppenhauer quit (Changing host) 2014-09-12T17:19:11Z schoppenhauer joined #lisp 2014-09-12T17:19:13Z kobain joined #lisp 2014-09-12T17:19:15Z ahungry_ quit (Remote host closed the connection) 2014-09-12T17:19:57Z Nizumzen joined #lisp 2014-09-12T17:19:58Z kobain quit (Max SendQ exceeded) 2014-09-12T17:20:16Z kobain joined #lisp 2014-09-12T17:21:06Z Nizumzen quit (Client Quit) 2014-09-12T17:21:16Z sdemarre joined #lisp 2014-09-12T17:25:12Z mtxp: how can i access the "_id" field in cl-mongo? my code up to now look slike this: http://paste.lisp.org/+32VM 2014-09-12T17:25:13Z quazimodo quit (Ping timeout: 260 seconds) 2014-09-12T17:26:57Z normanrichards joined #lisp 2014-09-12T17:27:08Z normanrichards quit (Max SendQ exceeded) 2014-09-12T17:28:05Z shka joined #lisp 2014-09-12T17:28:09Z shka: ave 2014-09-12T17:29:01Z vanila joined #lisp 2014-09-12T17:30:37Z gingerale quit (Read error: Connection reset by peer) 2014-09-12T17:31:47Z boogie joined #lisp 2014-09-12T17:33:11Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-12T17:33:29Z isoraqathedh quit (Ping timeout: 276 seconds) 2014-09-12T17:34:21Z slyrus quit (Ping timeout: 255 seconds) 2014-09-12T17:35:14Z Nizumzen joined #lisp 2014-09-12T17:39:18Z ndrei quit (Ping timeout: 255 seconds) 2014-09-12T17:39:54Z beach left #lisp 2014-09-12T17:42:52Z jegaxd26 joined #lisp 2014-09-12T17:43:30Z Px12 joined #lisp 2014-09-12T17:43:48Z hiroakip quit (Ping timeout: 255 seconds) 2014-09-12T17:44:15Z mtxp quit (Ping timeout: 255 seconds) 2014-09-12T17:44:16Z bambams_ joined #lisp 2014-09-12T17:44:46Z mtxp joined #lisp 2014-09-12T17:45:01Z bambams_: What is the difference between (lambda () nil) and #'(lambda () nil) (where the arguments and body are irrelevant, only the presence or absence of #')? 2014-09-12T17:45:27Z Xach: bambams_: when evaluated normally, no difference. 2014-09-12T17:45:53Z Xach: bambams_: you can put a non-#' lambda form as the first form in a list to be evaluated, though. e.g. ((lambda (x) (print x)) 42) 2014-09-12T17:46:08Z Xach: that is because of a special evaluation rule. 2014-09-12T17:48:15Z nyef: There's one other case where it's significant, IIRC. 2014-09-12T17:48:30Z nyef: I just forget where. Something to do with condition-handling, maybe? 2014-09-12T17:48:49Z |3b|: sounds right 2014-09-12T17:50:48Z |3b|: if you are being silly, it also matters a few places where it would be interpreted as a list of symbols rather than a lambda expression, like (let (#'(lambda ())) function) 2014-09-12T17:52:35Z Xach: bambams_: which to use under normal circumstances is a matter of taste. i used to prefer #' and now I don't. 2014-09-12T17:52:46Z murftown quit (Quit: murftown) 2014-09-12T17:52:55Z zlrth joined #lisp 2014-09-12T17:53:03Z nyef: Somewhere in one of my systems is the wonderful construct `( ... (... #',#'some-function)...) 2014-09-12T17:54:47Z Bike: not #','some-function? 2014-09-12T17:55:18Z nyef: No, the first #' is actually data that says "funcall this when the time comes", the second splices a literal function object. 2014-09-12T17:55:33Z Bike: ow. 2014-09-12T17:57:11Z nyef: The other fun variant is to call a function with some parameters to get a closure. 2014-09-12T18:05:53Z nipra joined #lisp 2014-09-12T18:06:09Z schoppenhauer quit (Quit: Adé) 2014-09-12T18:06:30Z schoppenhauer joined #lisp 2014-09-12T18:06:36Z murftown joined #lisp 2014-09-12T18:06:45Z pchrist quit (Ping timeout: 240 seconds) 2014-09-12T18:08:18Z pchrist joined #lisp 2014-09-12T18:08:20Z lambda joined #lisp 2014-09-12T18:11:27Z shka: guys 2014-09-12T18:11:46Z shka: how do we actually design object oriented application in clos? 2014-09-12T18:12:04Z H4ns: we do it with the brain, and then with emacs. 2014-09-12T18:12:06Z shka: after C++ and java, i'm polluted with static typing :( 2014-09-12T18:12:36Z H4ns: you need to be more specific with your questions. what are you struggling with? 2014-09-12T18:12:39Z Bike: "hm, it would make sense for this program if foo was represented by a class. better do that." 2014-09-12T18:12:43Z didi joined #lisp 2014-09-12T18:12:44Z ndrei joined #lisp 2014-09-12T18:12:48Z shka: ok, but there is no point in abstract classes 2014-09-12T18:13:05Z shka: for instance 2014-09-12T18:13:16Z oGMo: shka: generally you think less in terms of "a bunch of classes representing.." and more "a protocol for doing..." 2014-09-12T18:13:30Z shka: and factory seems to be simply a simple closure 2014-09-12T18:13:42Z pt1 joined #lisp 2014-09-12T18:13:48Z shka: oGMo: oh, now we are talking 2014-09-12T18:14:08Z shka: this is something that sounds correct 2014-09-12T18:14:10Z |3b|: isn't MAKE-INSTANCE the 'factory'? 2014-09-12T18:14:31Z oGMo: |3b|: not necessarily, you often want "give me something that produces what you want me to use" 2014-09-12T18:14:40Z |3b|: ah 2014-09-12T18:15:00Z didi: What is a good synonym for `cons'? I want to use it as a generic function for different data structures. 2014-09-12T18:15:02Z oGMo: where "often" = "on occasion" ;) 2014-09-12T18:15:19Z Xach: didi: allocate? 2014-09-12T18:15:19Z |3b| sometimes just uses a class name for that 2014-09-12T18:15:28Z shka: didi: cons cell or consing? 2014-09-12T18:15:37Z dlowe: didi: make 2014-09-12T18:15:44Z didi: Xach: Ah. Not that meaning of `cons' I had in mind. 2014-09-12T18:15:55Z dorsocentral quit (Remote host closed the connection) 2014-09-12T18:16:14Z didi: Hum. Maybe trying to use `cons' is not such a good idea after all. 2014-09-12T18:16:15Z White_Flame: didi: pair? 2014-09-12T18:16:23Z oGMo: |3b|: yeah, my example yesterday of fast-io using static-vectors would be a rare example of factories being useful, since static-vectors doesn't have a class and uses its own API 2014-09-12T18:16:30Z |3b|: "tuple" or "pair" depending on how generic? 2014-09-12T18:16:34Z White_Flame: cell? 2014-09-12T18:17:25Z White_Flame: car-and-cdr? :-P 2014-09-12T18:17:26Z |3b|: oGMo: yeah, i could see that... will have to remember that next time i think about using static-vectors 2014-09-12T18:17:38Z ndrei quit (Ping timeout: 252 seconds) 2014-09-12T18:17:50Z didi: Thank you all. All great suggestions, but the lesson is that I should try using another name. 2014-09-12T18:18:03Z oGMo: it's not a typical CL thing i don't think (though it works amazingly nicely in CL) 2014-09-12T18:18:40Z innertracks joined #lisp 2014-09-12T18:18:46Z ndrei joined #lisp 2014-09-12T18:19:22Z mtxp quit (Ping timeout: 245 seconds) 2014-09-12T18:19:46Z zygentoma joined #lisp 2014-09-12T18:21:01Z Mon_Ouie joined #lisp 2014-09-12T18:21:56Z innertracks quit (Client Quit) 2014-09-12T18:22:13Z CrazyEddy joined #lisp 2014-09-12T18:22:23Z innertracks joined #lisp 2014-09-12T18:23:56Z innertracks quit (Client Quit) 2014-09-12T18:28:09Z didi: Maybe "insert". 2014-09-12T18:28:20Z didi: "ins". 2014-09-12T18:29:22Z sdemarre quit (Ping timeout: 240 seconds) 2014-09-12T18:29:42Z ndrei quit (Ping timeout: 268 seconds) 2014-09-12T18:31:18Z ndrei joined #lisp 2014-09-12T18:32:12Z eudoxia quit (Quit: Lost terminal) 2014-09-12T18:34:27Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-12T18:37:10Z zlrth quit (Ping timeout: 246 seconds) 2014-09-12T18:38:08Z innertracks joined #lisp 2014-09-12T18:40:32Z Karl_Dscc quit (Remote host closed the connection) 2014-09-12T18:41:43Z Vutral joined #lisp 2014-09-12T18:41:52Z White_Flame: or "chain" 2014-09-12T18:43:36Z kushal quit (Quit: Leaving) 2014-09-12T18:44:06Z ndrei quit (Ping timeout: 255 seconds) 2014-09-12T18:46:25Z Vutral quit (Ping timeout: 260 seconds) 2014-09-12T18:55:43Z vaporatorius joined #lisp 2014-09-12T19:00:36Z stacksmith joined #lisp 2014-09-12T19:01:26Z didi: "chain" is not bad. 2014-09-12T19:01:40Z przl joined #lisp 2014-09-12T19:02:24Z przl quit (Remote host closed the connection) 2014-09-12T19:02:34Z przl joined #lisp 2014-09-12T19:03:52Z didi: I also thought of "kons". Tricky "k". 2014-09-12T19:04:10Z oGMo: snoc 2014-09-12T19:04:27Z Petit_Dejeuner_: qons 2014-09-12T19:04:30Z didi: oGMo: Ah. `snoc' is also there, but to add stuff to the end. 2014-09-12T19:04:53Z oGMo: didi: but, a cons is a specific thing, i'm not sure why you'd use it for something else 2014-09-12T19:05:03Z didi nods 2014-09-12T19:05:10Z shka: how to declare type of the slot? 2014-09-12T19:05:19Z oGMo: a container protocol perhaps is what you're after, and i think there are some of those 2014-09-12T19:05:27Z shka: same as usual? 2014-09-12T19:05:37Z didi: oGMo: Cool. Do you have some pointer? 2014-09-12T19:06:24Z innertracks quit (Ping timeout: 252 seconds) 2014-09-12T19:06:48Z c74d quit (Remote host closed the connection) 2014-09-12T19:07:14Z oGMo: didi: cl-containers? probably more, see cliki.. haven't used any myself 2014-09-12T19:07:51Z didi: oGMo: Thanks. 2014-09-12T19:09:39Z c74d joined #lisp 2014-09-12T19:10:01Z sdemarre joined #lisp 2014-09-12T19:13:26Z Grue`: looks like CXML makes it really hard to access XML entities that it parses from a file 2014-09-12T19:13:52Z arenz joined #lisp 2014-09-12T19:13:55Z Grue`: my best attempt so far is (cxml::dtd-gentities (cxml::dtd (slot-value source 'cxml::context))) which just looks really wrong 2014-09-12T19:15:11Z oGMo: Grue`: use the bit that makes it all just a bunch of lists? 2014-09-12T19:15:56Z Grue`: when serializing it replaces all entities with their string values 2014-09-12T19:16:20Z oGMo: ? 2014-09-12T19:16:48Z dlowe: xml is hard 2014-09-12T19:16:57Z Grue`: for example if there's in the header then &pn; is replaced with "pronoun" 2014-09-12T19:17:25Z Grue`: but I actually need pn to be kept 2014-09-12T19:17:52Z ehaliewicz quit (Ping timeout: 240 seconds) 2014-09-12T19:25:30Z izirku quit (Ping timeout: 255 seconds) 2014-09-12T19:26:04Z puchacz joined #lisp 2014-09-12T19:26:15Z izirku joined #lisp 2014-09-12T19:27:13Z nydel joined #lisp 2014-09-12T19:27:59Z murftown quit (Quit: murftown) 2014-09-12T19:30:22Z murftown joined #lisp 2014-09-12T19:31:11Z slyrus joined #lisp 2014-09-12T19:32:30Z jasom: Grue`: isn't the whole point of entities that they get replaced when parsing? 2014-09-12T19:33:49Z jasom: Grue`: did you try passing a custome :entity-resolver? 2014-09-12T19:34:17Z przl quit (Read error: Connection reset by peer) 2014-09-12T19:34:55Z Grue`: from what i understood entity-resolved doesn't take entity name as a parameter; it's used to fetch external entities by their URI 2014-09-12T19:35:04Z jasom: Grue`: I'm not sure if that works for internal entities 2014-09-12T19:35:31Z Grue`: i'm going to bruteforce this crap! 2014-09-12T19:37:30Z jasom: Grue`: with SAX I think it doesn't parse internal entities, but I could be wrong 2014-09-12T19:37:34Z jasom: just with klacks 2014-09-12T19:39:22Z shka: is there any database that i can run with hunchentoot in sbcl? 2014-09-12T19:39:33Z malice joined #lisp 2014-09-12T19:39:34Z JuanDaugherty: try pg 2014-09-12T19:39:58Z shka quit (Quit: WeeChat 1.0) 2014-09-12T19:40:30Z arenz quit (Ping timeout: 252 seconds) 2014-09-12T19:40:32Z JuanDaugherty: on the XML the norm is to use like xpath expressions oder, i.e. in Xerces, Xalan, usw 2014-09-12T19:40:46Z arenz joined #lisp 2014-09-12T19:45:18Z JokesOnYou77 joined #lisp 2014-09-12T19:45:21Z JokesOnYou77: Hi all 2014-09-12T19:46:05Z JokesOnYou77: Is it possible to read a (very) large file in chunks? Like paginate through a file that is too large to be loaded into memory at once? 2014-09-12T19:46:20Z jasom: Grue`: I was wrong; even when overriding the internal-entity-declaration in SAX it still expands internal entities 2014-09-12T19:46:37Z resttime joined #lisp 2014-09-12T19:47:10Z francogrex joined #lisp 2014-09-12T19:47:15Z aftershave joined #lisp 2014-09-12T19:48:08Z Grue`: ended up using this kludge: http://paste.lisp.org/display/143699 2014-09-12T19:48:48Z Xach: JokesOnYou77: sure. 2014-09-12T19:48:50Z francogrex: I've seen functions l-lists like that: (defun assemble-proglist (proglist &key ((:symtab incoming-symtab) *symtab*)) ... what would be the advantage of using that instead of (symtab *symtab*) ... ? 2014-09-12T19:48:56Z Xach: JokesOnYou77: it depends, though, on what you mean by "read" 2014-09-12T19:49:30Z jasom: Grue`: that'll work 2014-09-12T19:49:33Z Ragnaroek joined #lisp 2014-09-12T19:50:01Z didi: (defmethod foo ((x integer) ...) ...) isn't portable, is it? 2014-09-12T19:50:12Z Xach: francogrex: maybe the variable name in the function is clear within the function, but the name for the external api (the keyword) is clearer to outside consumers. 2014-09-12T19:50:21Z Xach: didi: it is. INTEGER names a system class. 2014-09-12T19:50:25Z Xach: a standard one. 2014-09-12T19:50:27Z francogrex: Xach: ok 2014-09-12T19:50:31Z didi: Xach: Noice. 2014-09-12T19:50:34Z ysz joined #lisp 2014-09-12T19:50:35Z fantazo joined #lisp 2014-09-12T19:50:45Z ysz left #lisp 2014-09-12T19:51:01Z Grue`: the beauty of defmethod is that often you don't even need any classes for them 2014-09-12T19:52:29Z didi was hoping for a NATURAL too 2014-09-12T19:52:52Z didi: Well, I can use `check-type'. 2014-09-12T19:56:57Z murftown quit (Quit: murftown) 2014-09-12T19:58:45Z gendl left #lisp 2014-09-12T19:58:51Z zlrth joined #lisp 2014-09-12T20:02:41Z jkaye quit (Remote host closed the connection) 2014-09-12T20:03:16Z jkaye joined #lisp 2014-09-12T20:04:50Z mtxp joined #lisp 2014-09-12T20:07:22Z jkaye quit (Ping timeout: 245 seconds) 2014-09-12T20:09:12Z mtxp quit (Ping timeout: 246 seconds) 2014-09-12T20:11:03Z lambda quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-12T20:12:18Z slyrus quit (Ping timeout: 255 seconds) 2014-09-12T20:12:46Z francogrex quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-12T20:13:17Z atgreen quit (Remote host closed the connection) 2014-09-12T20:13:27Z madrik quit (Quit: sleep) 2014-09-12T20:14:22Z aftershave quit (Quit: Computer has gone to sleep.) 2014-09-12T20:14:30Z jkaye joined #lisp 2014-09-12T20:17:31Z MoALTz quit (Quit: Leaving) 2014-09-12T20:18:22Z stacksmi` joined #lisp 2014-09-12T20:18:32Z stacksmi` quit (Remote host closed the connection) 2014-09-12T20:19:33Z nell joined #lisp 2014-09-12T20:19:37Z stacksmith quit (Ping timeout: 272 seconds) 2014-09-12T20:22:50Z hiroakip joined #lisp 2014-09-12T20:27:07Z ndrei joined #lisp 2014-09-12T20:32:58Z knob quit (Quit: Leaving) 2014-09-12T20:39:39Z stacksmith joined #lisp 2014-09-12T20:40:09Z stacksmith quit (Remote host closed the connection) 2014-09-12T20:40:42Z arenz quit (Ping timeout: 246 seconds) 2014-09-12T20:42:23Z JokesOnYou77: Xach, I mean have available as a stream or a string. 2014-09-12T20:43:31Z Xach: JokesOnYou77: you can read it in pieces with things like read-sequence. 2014-09-12T20:43:34Z sdemarre quit (Ping timeout: 252 seconds) 2014-09-12T20:43:41Z Xach: JokesOnYou77: or, if it's line-oriented, read-line 2014-09-12T20:49:52Z mishoo quit (Ping timeout: 240 seconds) 2014-09-12T20:51:05Z stacksmith joined #lisp 2014-09-12T20:54:55Z slyrus joined #lisp 2014-09-12T20:59:11Z JokesOnYou77: Xach, what about a line offset into a file? So read the first 10000 lines then, do something, then the next 10000? 2014-09-12T21:03:36Z nyef: I think there's a further nuance to the "constructed stream" thing, such that the restriction on CLOSE should either only apply to STANDARD constructed streams, or should only apply to constructed streams where the "user" is providing the source or sink directly. 2014-09-12T21:05:02Z drmeister quit (Remote host closed the connection) 2014-09-12T21:07:22Z ahungry__ quit (Quit: leaving) 2014-09-12T21:07:56Z nyef: That is, if I have a character stream implementation that performs a ROT13 on data pulled from another stream, and it's constructed by saying "here's the underlying stream, give me a rot13-stream", then I don't want it to close the underlying stream. 2014-09-12T21:08:05Z Xach: JokesOnYou77: you don't necessarily have to track an offset. you could just read and keep count. 2014-09-12T21:08:47Z nyef: But if it's constructed by saying "open the file behind this pathname and give me a rot13 stream of it", then I DO want it to close the underlying stream. 2014-09-12T21:09:01Z pt1 quit (Remote host closed the connection) 2014-09-12T21:09:58Z nyef: And the difference is if I, as the user, allocated the underlying stream myself, or if it happens somewhere outside my purview. 2014-09-12T21:10:28Z didi: If I only want a way to encapsulate data, dispatch methods on types and make new encapsulated data, will structures perform better than objects? Reading SBCL manual, I see there is a cost difference of 1.6 from open coded structure slot accessor from `slot-value' for objects. 2014-09-12T21:10:42Z Ragnaroek quit (Ping timeout: 252 seconds) 2014-09-12T21:12:12Z pt1 joined #lisp 2014-09-12T21:13:11Z l0xas joined #lisp 2014-09-12T21:13:47Z didi: Probably testing it is best. 2014-09-12T21:15:32Z JokesOnYou77: Xach, But if the file is too big to put into memory...I guess I could just reset the place to nil every N lines. 2014-09-12T21:15:41Z nyef: didi: Also have a look for the paper "CLOStrophobia: Its etiology and treatment." 2014-09-12T21:15:55Z didi: nyef: Will do. Thank you. 2014-09-12T21:16:53Z nyef: I *think* it's a Henry Baker paper, but it could be Kent Pitman instead. 2014-09-12T21:17:15Z nyef: (Or someone else, but to my mind Baker is most likely, followed by Pitman.) 2014-09-12T21:17:16Z skbierm joined #lisp 2014-09-12T21:17:35Z didi: Speaking of paper, I found Fare's http://common-lisp.net/~frideau/lil-ilc2012/lil-ilc2012.html . Crazy stuff. 2014-09-12T21:18:23Z pt1 quit (Ping timeout: 276 seconds) 2014-09-12T21:18:41Z skbierm quit (Client Quit) 2014-09-12T21:19:01Z schaueho_ quit (Ping timeout: 260 seconds) 2014-09-12T21:19:26Z skbierm joined #lisp 2014-09-12T21:20:13Z pnpuff joined #lisp 2014-09-12T21:20:15Z nipra quit (Ping timeout: 246 seconds) 2014-09-12T21:21:08Z skbierm1 joined #lisp 2014-09-12T21:22:18Z skbierm1 quit (Client Quit) 2014-09-12T21:23:35Z Mon_Ouie quit (Ping timeout: 276 seconds) 2014-09-12T21:24:28Z Adlai: http://home.pipeline.com/~hbaker1/CLOStrophobia.html 2014-09-12T21:26:07Z drmeister joined #lisp 2014-09-12T21:26:30Z oleo__: lol 2014-09-12T21:26:39Z oleo__ is now known as oleo 2014-09-12T21:31:14Z resttime: for performance, is it best to avoid translating things between CFFI memory and lisp? 2014-09-12T21:31:49Z didi: resttime: There is a cost on the boundary. 2014-09-12T21:33:22Z pnpuff left #lisp 2014-09-12T21:33:22Z Bicyclidine joined #lisp 2014-09-12T21:34:07Z k-stz quit (Remote host closed the connection) 2014-09-12T21:35:00Z oGMo: resttime: but yes, it's still important 2014-09-12T21:35:52Z resttime: i'm just thinking about situations where i have large amounts of data in lisp and need to shove it into a CFFI lib 2014-09-12T21:36:24Z LiamH quit (Quit: Leaving.) 2014-09-12T21:36:26Z oGMo: well as always do what the situation warrants 2014-09-12T21:38:06Z resttime: i'm thinking that I'll start moving into more C libs to do things CFFI wise and then relegate lisp programming to managing this C memory 2014-09-12T21:38:30Z resttime: like instead of using drakma to download something, writ some bindings to a C library 2014-09-12T21:38:47Z resttime: which can do the same thing but in C memory 2014-09-12T21:38:50Z ggole quit 2014-09-12T21:38:52Z akkad: drakma working well for you? 2014-09-12T21:39:11Z kanru quit (Ping timeout: 276 seconds) 2014-09-12T21:39:18Z resttime: drakma seems to do what i need it too 2014-09-12T21:39:22Z normanrichards joined #lisp 2014-09-12T21:39:34Z DGASAU` joined #lisp 2014-09-12T21:40:05Z resttime: now that i think about it, I think i'm starting to approach garbage collecting in C with lisp 2014-09-12T21:40:15Z posterdati300 quit (Ping timeout: 268 seconds) 2014-09-12T21:40:17Z resttime: or at least something somewhat close 2014-09-12T21:40:57Z sellout- joined #lisp 2014-09-12T21:41:09Z resttime: hmmm interesting... i'm fine with writing lots of bindings to libraries 2014-09-12T21:41:14Z srcerer quit (Ping timeout: 268 seconds) 2014-09-12T21:41:22Z keen________ quit (Ping timeout: 240 seconds) 2014-09-12T21:41:38Z srcerer_ joined #lisp 2014-09-12T21:41:59Z nyef_ joined #lisp 2014-09-12T21:42:08Z arrsim quit (Ping timeout: 268 seconds) 2014-09-12T21:42:17Z resttime: does the C stdlibs have a linkable library I can #'load-library with? 2014-09-12T21:42:44Z __main__ quit (Ping timeout: 268 seconds) 2014-09-12T21:42:48Z Bicyclidine: you mean libc? 2014-09-12T21:43:03Z paroneay` joined #lisp 2014-09-12T21:43:10Z sellout quit (Ping timeout: 276 seconds) 2014-09-12T21:43:10Z nyef quit (Ping timeout: 276 seconds) 2014-09-12T21:43:10Z vydd quit (Remote host closed the connection) 2014-09-12T21:43:11Z JokesOnYou77 quit (Ping timeout: 276 seconds) 2014-09-12T21:43:11Z DGASAU quit (Ping timeout: 276 seconds) 2014-09-12T21:43:11Z Kabaka quit (Ping timeout: 276 seconds) 2014-09-12T21:43:11Z kobain quit (Ping timeout: 276 seconds) 2014-09-12T21:43:11Z joneshf-laptop_ quit (Ping timeout: 276 seconds) 2014-09-12T21:43:13Z sellout- is now known as sellout 2014-09-12T21:43:18Z wasamasa: the glibc! 2014-09-12T21:43:20Z d4gg4d____ quit (Ping timeout: 268 seconds) 2014-09-12T21:43:21Z drdo quit (Ping timeout: 268 seconds) 2014-09-12T21:43:31Z JokesOnYou77 joined #lisp 2014-09-12T21:43:36Z Bicyclidine: it's not like you have to use GNU's. 2014-09-12T21:43:43Z sellout is now known as Guest32247 2014-09-12T21:43:53Z Xach_ joined #lisp 2014-09-12T21:43:57Z Fade quit (Ping timeout: 268 seconds) 2014-09-12T21:43:57Z paroneayea quit (Ping timeout: 268 seconds) 2014-09-12T21:43:57Z ^Posterdati^ quit (Ping timeout: 268 seconds) 2014-09-12T21:43:58Z gz__ quit (Ping timeout: 268 seconds) 2014-09-12T21:43:58Z asedeno_ quit (Ping timeout: 268 seconds) 2014-09-12T21:43:58Z oGMo_ joined #lisp 2014-09-12T21:44:03Z d4gg4d____ joined #lisp 2014-09-12T21:44:12Z stacksmith quit (Remote host closed the connection) 2014-09-12T21:44:23Z Fade joined #lisp 2014-09-12T21:44:26Z __main__ joined #lisp 2014-09-12T21:44:30Z wasamasa: well, that one still works the best on linux 2014-09-12T21:44:32Z drdo joined #lisp 2014-09-12T21:44:35Z ggherdov quit (Ping timeout: 268 seconds) 2014-09-12T21:44:45Z vlnx quit (Read error: Connection reset by peer) 2014-09-12T21:44:48Z resttime: well i guess first things first, what's a good C library out there that can fetch things from the web like drakma? 2014-09-12T21:45:11Z bambams quit (Ping timeout: 268 seconds) 2014-09-12T21:45:19Z Xach quit (Ping timeout: 276 seconds) 2014-09-12T21:45:19Z oGMo quit (Ping timeout: 276 seconds) 2014-09-12T21:45:20Z oGMo_ is now known as oGMo 2014-09-12T21:45:28Z bambams joined #lisp 2014-09-12T21:45:28Z bambams quit (Changing host) 2014-09-12T21:45:28Z bambams joined #lisp 2014-09-12T21:45:29Z emma quit (Remote host closed the connection) 2014-09-12T21:45:44Z resttime: i think i'll start writing bindings to those 2014-09-12T21:45:46Z emma joined #lisp 2014-09-12T21:45:48Z johs quit (Ping timeout: 268 seconds) 2014-09-12T21:45:50Z zacts quit (Remote host closed the connection) 2014-09-12T21:45:51Z vanila quit (Ping timeout: 276 seconds) 2014-09-12T21:45:51Z zacts_ joined #lisp 2014-09-12T21:45:57Z asedeno joined #lisp 2014-09-12T21:45:58Z Oddity quit (Ping timeout: 246 seconds) 2014-09-12T21:46:07Z johs joined #lisp 2014-09-12T21:46:15Z phadthai quit (Remote host closed the connection) 2014-09-12T21:46:19Z phadthai_ joined #lisp 2014-09-12T21:46:21Z gz__ joined #lisp 2014-09-12T21:46:25Z dlowe quit (Ping timeout: 268 seconds) 2014-09-12T21:46:31Z DGASAU` is now known as DGASAU 2014-09-12T21:46:34Z Adlai: libcurl? 2014-09-12T21:46:50Z ^Posterdati^ joined #lisp 2014-09-12T21:46:52Z Px12 quit (Ping timeout: 245 seconds) 2014-09-12T21:46:59Z axion quit (Ping timeout: 276 seconds) 2014-09-12T21:47:02Z vlnx joined #lisp 2014-09-12T21:47:45Z kobain joined #lisp 2014-09-12T21:47:46Z Petit_Dejeuner_ quit (Quit: Leaving) 2014-09-12T21:47:52Z hiroakip quit (Ping timeout: 240 seconds) 2014-09-12T21:48:15Z vydd joined #lisp 2014-09-12T21:48:28Z TDog quit (Ping timeout: 252 seconds) 2014-09-12T21:48:30Z joneshf-laptop_ joined #lisp 2014-09-12T21:48:33Z dlowe joined #lisp 2014-09-12T21:49:13Z Kabaka joined #lisp 2014-09-12T21:50:10Z juiko joined #lisp 2014-09-12T21:50:14Z JokesOnYou77 quit (Quit: Leaving) 2014-09-12T21:50:19Z paroneay` is now known as paroneayea 2014-09-12T21:50:32Z paroneayea quit (Changing host) 2014-09-12T21:50:32Z paroneayea joined #lisp 2014-09-12T21:51:25Z EvW quit (Remote host closed the connection) 2014-09-12T21:51:42Z zacts_ quit (Ping timeout: 272 seconds) 2014-09-12T21:51:48Z EvW joined #lisp 2014-09-12T21:52:31Z zacts joined #lisp 2014-09-12T21:53:11Z resttime: Adlai, alright i'll work on that 2014-09-12T21:53:18Z Shinmera joined #lisp 2014-09-12T21:53:22Z thrip joined #lisp 2014-09-12T21:53:24Z resttime: http://common-lisp.net/project/cl-curl/ fairly outdated too 2014-09-12T21:53:45Z resttime: as long as there's no passing structures by value 2014-09-12T21:54:18Z resttime: actually, is there a way to pass structures by value in just C memory? 2014-09-12T21:54:46Z resttime: i keep the memory in C so i don't have to translate with cffi-ffi (which i want to avoid immensely) 2014-09-12T21:54:59Z Bicyclidine: I think you can pass structures by value in C11 or something? 2014-09-12T21:55:42Z resttime: like if a function returns a structure not as a pointer, can i just have lisp manipulate that into the arguements to another function? 2014-09-12T21:55:58Z Bicyclidine: i think that depends on cffi 2014-09-12T21:56:06Z resttime: i don't want to touch the structure in lisp at all other than memref or something 2014-09-12T21:56:11Z vanila joined #lisp 2014-09-12T21:56:15Z resttime: to like check value 2014-09-12T21:56:32Z Bicyclidine: i'm not sure i understand why you want lisp at all if you're doing so much in C. 2014-09-12T21:56:41Z Fare joined #lisp 2014-09-12T21:57:16Z vydd quit (Remote host closed the connection) 2014-09-12T21:57:26Z slyrus_ joined #lisp 2014-09-12T21:57:44Z resttime: i guess :/ 2014-09-12T21:57:47Z Mon_Ouie joined #lisp 2014-09-12T21:58:11Z ggherdov joined #lisp 2014-09-12T21:58:13Z Soft quit (Ping timeout: 260 seconds) 2014-09-12T21:58:23Z resttime: i'm thinking that there's a lot of functionality in C libs that i'd like to bring common lisp 2014-09-12T21:58:25Z Soft joined #lisp 2014-09-12T21:58:41Z zacts quit (Ping timeout: 260 seconds) 2014-09-12T21:58:56Z juiko` joined #lisp 2014-09-12T21:59:06Z resttime: that it might end up being better experience later 2014-09-12T21:59:19Z zacts joined #lisp 2014-09-12T21:59:22Z slyrus quit (Ping timeout: 268 seconds) 2014-09-12T21:59:36Z slyrus_ is now known as slyrus 2014-09-12T21:59:47Z ejbs joined #lisp 2014-09-12T22:00:10Z drmeister quit (Read error: Connection reset by peer) 2014-09-12T22:00:30Z juiko quit (Ping timeout: 246 seconds) 2014-09-12T22:00:43Z resttime: well from what i'm seeing from cffi and experience i've had with it, i don't think it's allowed :/ 2014-09-12T22:01:06Z Bicyclidine quit (Quit: Reconnecting) 2014-09-12T22:01:19Z Bicyclidine joined #lisp 2014-09-12T22:01:20Z drewc: "are you experienced? have you ever been experienced? Well, I have. " -- Jimi 2014-09-12T22:02:15Z Bicyclidine: resttime: what you're describing seems more to me like using c from c than anything to do with lisp. 2014-09-12T22:02:27Z drmeister joined #lisp 2014-09-12T22:03:05Z resttime: hmmmm, you're probably right 2014-09-12T22:03:33Z drmeister quit (Read error: Connection reset by peer) 2014-09-12T22:03:46Z vydd joined #lisp 2014-09-12T22:03:51Z drewc: if the issue is the 64 bits of memory that will be wasted for the pointer allocation.... then there are bigger issues with CL and memory hogging... 2014-09-12T22:03:52Z zacts quit (Ping timeout: 252 seconds) 2014-09-12T22:04:29Z izirku quit (Quit: For Sale: Parachute. Only used once, never opened, small stain.) 2014-09-12T22:05:02Z zacts joined #lisp 2014-09-12T22:05:19Z mrSpec quit (Quit: mrSpec) 2014-09-12T22:05:33Z oleo quit (Quit: Verlassend) 2014-09-12T22:33:06Z ccl-logbot joined #lisp 2014-09-12T22:33:06Z 2014-09-12T22:33:06Z names: ccl-logbot anannie K1rk pjb` jdz drdo tkd impulse vydd boogie 2014-09-12T22:36:59Z juiko` joined #lisp 2014-09-12T22:38:37Z ccl-logbot joined #lisp 2014-09-12T22:38:37Z 2014-09-12T22:38:37Z names: ccl-logbot gko_ Guest68405 ruste shwouchk EvW1 zeitue Jubb gensym froggey_ emma_ honkfest1val cmack` angavrilov_ joga_ dan64 Fade ahungry johs smull setheus _d3f jyuan` _tca paroneayea` nand1`` milosn TDT``` vsync- backupthrick Natch Beetny lagging_` lonjil ejbs`` Adeon_ AntiSpamMeta theos s_e uber nell jackdaniel stepnem kpreid jegaxd26` resttime_ AdmiralBumbleB-1 les_ bambams__ J_Arcane jayne Elench` zacts kobain_ thierrygar hugoduncan kyl_ logand` 2014-09-12T22:38:37Z names: lpaste_ yauz ssake endou___ ircbrowse blakbunn- p_l Tordek_ Sgeo sigjuice_ jasom_ misv peterhil` bit`1 djinni` sivoais capitaomorte tessier_ faheem_ necronian drmeister cyraxjoe edran Bicyclidine ejbs Soft vanila Shinmera Kabaka dlowe joneshf-laptop_ vlnx gz__ asedeno __main__ d4gg4d____ oGMo Xach nyef_ DGASAU l0xas ndrei jkaye malice nydel c74d CrazyEddy zygentoma didi schoppenhauer bambams_ fragamus rvchangue cy Blaguvest madnificent jlongster 2014-09-12T22:38:37Z names: JuanDaugherty mr-foobar fortitude ans yacks rick-monster rme kjeldahl yeticry segv- ered BitPuffin gjvc prxq Kruppe malglim frkout H4ns Vivitron wasamasa akkad manfoo7 cmatei_ sytse _snits_ bobbysmith0071 lifenoodles joast uzo Denommus otwieracz clog eazar001 Guest39815 diginet jlarocco sword Ralt mingvs InvalidCo alchemis7 namespace wooden easye ``Erik sid_cypher mindCrime__ someone Patzy funnel drewc justinmcp_ eigenlicht_ Svetlana teiresias White_Flame 2014-09-12T22:38:37Z names: abbe l3thal benny cpt_nemo Blkt fe[nl]ix renard_ cods kirin` spockokt_ brucem guaqua`` victor_lowther_ pillton djuber joneshf korqio luis theBlackDragon stux lemoinem yano WeirdEnthusiast wizzo work_op Mandus ThomasSolti faheem yukko knightblader stoned Tuxedo killmaster rtoym heddwch zz_karupa cibs j0ni anunnaki PuercoPop xebd` dfox bend3r leoc lupine john-mcaleely Khisanth peccu2 gluegadget kalzz josteink rvirding ThePhoeron vert2 Intensity cwandrews 2014-09-12T22:38:37Z names: Zhivago girrig cross nitro_idiot flip214 scharan Neet _ku phf Nshag stopbyte felideon ferada ozzloy splittist _5kg GGMethos sfa housel viaken GuilOooo zmyrgel xristos gabot AeroNotix redline6561 nightshade427 ineiros_ jsnell micro_ ski sepi farawayexplorer newcup z0d mikaelj_ ecraven foom TristamWrk inklesspen sbryant sshirokov zbigniew superjudge__ |3b| sklr ramus Ober_ mdallastella vhost- quasisane Anarch ChibaPet hyoyoung FracV antoszka yroeht1 mtd 2014-09-12T22:38:37Z names: oconnore byte48 ttm loke enn kbtr Borbus TheMoonMaster whartung Colleen__ specbot ivan\ schjetne j_king rk[imposter] eee-blt dim eagleflo lusory stokachu daimrod copec FunfYears BlastHardcheese bege tokenrove Neptu yeltzooo cmbntr_ acieroid fmu finnrobi aoh pok jtz ft aerique_ minion Subfusc tbarletz sjl- tomaw- tkd_ tomaw ck_ _death felipe galdor mood Okasu eMBee alpha- troydm p_l|backup eak mgv 2014-09-12T22:39:00Z resttime_: from what i understand, data in lisp cannot be used by functions in C 2014-09-12T22:39:09Z juiko` joined #lisp 2014-09-12T22:39:09Z ejbs left #lisp 2014-09-12T22:39:14Z resttime_: like if i holda vector of data in lisp 2014-09-12T22:39:42Z resttime_: i cannot pass this to a C function without "moving into C memory" 2014-09-12T22:39:52Z Bicyclidine: it's not moving, it's translating. 2014-09-12T22:40:15Z wasamasa: to do FFI, one has to do the things FFI requires 2014-09-12T22:40:17Z wasamasa: d'oh 2014-09-12T22:40:21Z Bicyclidine: C programs don't know how to deal with your vectors, so you have to get a new area of memory with the vector contents in a format C programs can deal with. 2014-09-12T22:40:22Z tkd__ joined #lisp 2014-09-12T22:40:26Z vydd_ joined #lisp 2014-09-12T22:40:38Z wasamasa: why complain about doing the things FFI requires if you don't need to do FFI? 2014-09-12T22:40:41Z resttime_: ah that's a better explanation 2014-09-12T22:40:44Z ejbs joined #lisp 2014-09-12T22:40:49Z m4dnificent joined #lisp 2014-09-12T22:40:50Z paroneayea` is now known as paroneayea 2014-09-12T22:40:53Z AntiSpamMeta2 joined #lisp 2014-09-12T22:40:53Z AntiSpamMeta quit (Killed (orwell.freenode.net (Nickname regained by services))) 2014-09-12T22:40:53Z AntiSpamMeta2 is now known as AntiSpamMeta 2014-09-12T22:40:54Z Bike joined #lisp 2014-09-12T22:41:00Z paroneayea quit (Changing host) 2014-09-12T22:41:00Z paroneayea joined #lisp 2014-09-12T22:41:05Z frkout_ joined #lisp 2014-09-12T22:41:23Z resttime_: I'm not sure how else i can get my FFI lib to read from memory 2014-09-12T22:41:33Z edgar-rft joined #lisp 2014-09-12T22:41:36Z wasamasa: wat 2014-09-12T22:41:52Z ejbs`` quit (Read error: Connection reset by peer) 2014-09-12T22:41:53Z kpreid quit (Read error: Connection reset by peer) 2014-09-12T22:41:54Z nell quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z bit`1 quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z fortitude quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z _snits_ quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z vert2 quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z _5kg quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z rk[imposter] quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z asedeno quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z schoppenhauer quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z scharan quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z johs quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z ssake quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z edran quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z brucem quit (Ping timeout: 246 seconds) 2014-09-12T22:41:59Z Mandus quit (Ping timeout: 246 seconds) 2014-09-12T22:42:04Z prxq_ joined #lisp 2014-09-12T22:42:07Z clop2 joined #lisp 2014-09-12T22:42:09Z joga_ quit (Ping timeout: 246 seconds) 2014-09-12T22:42:11Z J_Arcane quit (Ping timeout: 246 seconds) 2014-09-12T22:42:11Z spacebat joined #lisp 2014-09-12T22:42:17Z namespac1 joined #lisp 2014-09-12T22:42:19Z Gavekort joined #lisp 2014-09-12T22:42:20Z anannie joined #lisp 2014-09-12T22:42:20Z anannie quit (Changing host) 2014-09-12T22:42:20Z anannie joined #lisp 2014-09-12T22:42:28Z bjorkintosh joined #lisp 2014-09-12T22:42:30Z uber quit (Ping timeout: 246 seconds) 2014-09-12T22:42:32Z Kabaka quit (Ping timeout: 246 seconds) 2014-09-12T22:42:32Z prxq quit (Ping timeout: 246 seconds) 2014-09-12T22:42:32Z wizzo quit (Ping timeout: 246 seconds) 2014-09-12T22:42:32Z schjetne quit (Ping timeout: 246 seconds) 2014-09-12T22:42:36Z mindCrime joined #lisp 2014-09-12T22:42:38Z DGASAU` joined #lisp 2014-09-12T22:42:42Z resttime_: i don't think i understand your question 2014-09-12T22:42:52Z nyef_ quit (Ping timeout: 246 seconds) 2014-09-12T22:42:52Z eazar001 quit (Ping timeout: 246 seconds) 2014-09-12T22:42:52Z mindCrime__ quit (Ping timeout: 246 seconds) 2014-09-12T22:42:52Z Intensity quit (Ping timeout: 246 seconds) 2014-09-12T22:42:58Z Bicyclidine: well, i have no idea what you mean. 2014-09-12T22:43:07Z wasamasa: that was more of a "What the hell are you even attempting to do" statement 2014-09-12T22:43:07Z axion joined #lisp 2014-09-12T22:43:09Z rk[imposter] joined #lisp 2014-09-12T22:43:10Z resttime_: also sorry if it sound like i'm complaining (halftrue), I'm trying to understand this this best i an 2014-09-12T22:43:13Z frkout quit (Ping timeout: 246 seconds) 2014-09-12T22:43:14Z dfox quit (Ping timeout: 246 seconds) 2014-09-12T22:43:34Z sid_cypher quit (Ping timeout: 246 seconds) 2014-09-12T22:43:35Z teiresias quit (Ping timeout: 246 seconds) 2014-09-12T22:43:36Z Mandus joined #lisp 2014-09-12T22:43:50Z srcerer joined #lisp 2014-09-12T22:43:54Z necronian quit (Ping timeout: 246 seconds) 2014-09-12T22:43:54Z DGASAU quit (Ping timeout: 246 seconds) 2014-09-12T22:43:54Z lifenoodles quit (Ping timeout: 246 seconds) 2014-09-12T22:43:56Z peccu2 quit (Ping timeout: 246 seconds) 2014-09-12T22:43:56Z angavrilov_ quit (Remote host closed the connection) 2014-09-12T22:43:57Z bit` joined #lisp 2014-09-12T22:44:08Z resttime_: maybe this explanation is better: 2014-09-12T22:44:08Z sigjuice joined #lisp 2014-09-12T22:44:09Z boogie joined #lisp 2014-09-12T22:44:12Z lemoinem quit (Killed (morgan.freenode.net (Nickname regained by services))) 2014-09-12T22:44:13Z lemoinem joined #lisp 2014-09-12T22:44:15Z Adeon_ quit (Ping timeout: 246 seconds) 2014-09-12T22:44:17Z segv- quit (Ping timeout: 246 seconds) 2014-09-12T22:44:17Z H4ns quit (Ping timeout: 246 seconds) 2014-09-12T22:44:17Z killmaster quit (Ping timeout: 246 seconds) 2014-09-12T22:44:36Z ruste quit (Ping timeout: 246 seconds) 2014-09-12T22:44:36Z drewc quit (Ping timeout: 246 seconds) 2014-09-12T22:44:37Z kirin` quit (Ping timeout: 246 seconds) 2014-09-12T22:44:37Z stopbyte quit (Ping timeout: 246 seconds) 2014-09-12T22:44:37Z eee-blt quit (Ping timeout: 246 seconds) 2014-09-12T22:44:37Z j_king quit (Ping timeout: 246 seconds) 2014-09-12T22:44:37Z resttime_: i have a vector of bytes grabbed from the web with drakma 2014-09-12T22:44:38Z wasamasa: no, start with the very beginning 2014-09-12T22:44:39Z edran joined #lisp 2014-09-12T22:44:45Z wasamasa: what the hell do you intend to do 2014-09-12T22:44:53Z Amaan joined #lisp 2014-09-12T22:44:56Z wasamasa: and what are you doing to achieve that goal 2014-09-12T22:44:58Z Borbus quit (Ping timeout: 246 seconds) 2014-09-12T22:45:18Z AdmiralBumbleB-1 quit (Ping timeout: 246 seconds) 2014-09-12T22:45:33Z resttime_: i have bindings to the allegro5 library: https://github.com/resttime/cl-liballegro 2014-09-12T22:45:49Z resttime_: they are pretty simple and primitive 2014-09-12T22:46:00Z krid joined #lisp 2014-09-12T22:46:10Z pchrist joined #lisp 2014-09-12T22:46:12Z DGASAU` is now known as DGASAU 2014-09-12T22:46:16Z kirin` joined #lisp 2014-09-12T22:46:25Z j_king joined #lisp 2014-09-12T22:46:28Z resttime_: the library has a function 2014-09-12T22:46:29Z aksatac__ joined #lisp 2014-09-12T22:46:30Z resttime_: http://alleg.sourceforge.net/a5docs/5.0.10/memfile.html 2014-09-12T22:47:25Z resttime_: with this i can store data in memory 2014-09-12T22:47:33Z resttime_: that the other functions in the library can use 2014-09-12T22:47:57Z resttime_: specifically i want it to work with this http://alleg.sourceforge.net/a5docs/5.0.10/graphics.html#al_load_bitmap_f 2014-09-12T22:48:12Z Posterdati joined #lisp 2014-09-12T22:48:27Z Vivitron quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z diginet quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z rick-monster quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z rme quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z dan64 quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z zacts quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z blakbunn- quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z Jubb quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z gensym quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z smull quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z jyuan` quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z backupthrick quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z logand` quit (Ping timeout: 276 seconds) 2014-09-12T22:48:30Z sigjuice_ quit (Ping timeout: 276 seconds) 2014-09-12T22:48:34Z zygentoma quit (Ping timeout: 276 seconds) 2014-09-12T22:48:34Z cy quit (Ping timeout: 276 seconds) 2014-09-12T22:48:34Z madnificent quit (Ping timeout: 276 seconds) 2014-09-12T22:48:34Z cmatei_ quit (Ping timeout: 276 seconds) 2014-09-12T22:48:34Z namespace quit (Ping timeout: 276 seconds) 2014-09-12T22:48:34Z fortitud1 joined #lisp 2014-09-12T22:48:44Z fortitud1 quit (*.net *.split) 2014-09-12T22:49:22Z Bicyclidine quit (Ping timeout: 252 seconds) 2014-09-12T22:49:52Z killmaster joined #lisp 2014-09-12T22:49:59Z resttime_: i fetch the image from the web with drakma into a vector of bytes 2014-09-12T22:50:40Z rotty joined #lisp 2014-09-12T22:50:44Z oleo joined #lisp 2014-09-12T22:51:09Z Adeon joined #lisp 2014-09-12T22:51:14Z resttime_: and i want to stuff this vector of bytes into the library to load 2014-09-12T22:51:20Z resttime_: i think that's the gist of it 2014-09-12T22:51:26Z Tristam joined #lisp 2014-09-12T22:51:40Z wasamasa: thanks, that's a lot easier to understand 2014-09-12T22:51:42Z resttime_: after that i started thinking a whole lot about memory 2014-09-12T22:51:51Z resttime_: and asked a whole lot of questions 2014-09-12T22:51:58Z nightfly joined #lisp 2014-09-12T22:52:19Z didi quit (Quit: you can't /fire me, I /quit) 2014-09-12T22:53:14Z uber joined #lisp 2014-09-12T22:54:06Z impulse joined #lisp 2014-09-12T22:54:06Z gensym joined #lisp 2014-09-12T22:54:06Z lifenoodles joined #lisp 2014-09-12T22:54:06Z snits joined #lisp 2014-09-12T22:54:06Z rick-monster joined #lisp 2014-09-12T22:54:06Z fortitud1 joined #lisp 2014-09-12T22:54:09Z ssake joined #lisp 2014-09-12T22:54:36Z ggherdov_ joined #lisp 2014-09-12T22:54:54Z kobain_ is now known as kobain 2014-09-12T22:54:58Z impulse is now known as Guest81790 2014-09-12T22:55:09Z smull joined #lisp 2014-09-12T22:55:40Z scharan joined #lisp 2014-09-12T22:55:50Z jdz joined #lisp 2014-09-12T22:55:50Z backupthrick joined #lisp 2014-09-12T22:55:53Z dan64 joined #lisp 2014-09-12T22:56:02Z cmatei joined #lisp 2014-09-12T22:56:52Z dfox joined #lisp 2014-09-12T22:57:00Z ruste joined #lisp 2014-09-12T22:57:27Z arbscht_ joined #lisp 2014-09-12T22:57:54Z wasamasa: for some reason I suspect you aren't supposed to directly manipulate memory from the CL side 2014-09-12T22:58:04Z pjb` joined #lisp 2014-09-12T22:58:12Z qbit joined #lisp 2014-09-12T22:58:38Z qbit is now known as Guest53819 2014-09-12T22:59:27Z _5kg joined #lisp 2014-09-12T22:59:36Z namespac1 is now known as namespace 2014-09-12T22:59:58Z mutley89 joined #lisp 2014-09-12T23:00:04Z wasamasa goes to sleep 2014-09-12T23:00:32Z vert2 joined #lisp 2014-09-12T23:01:08Z Guest53819 left #lisp 2014-09-12T23:01:15Z qbit joined #lisp 2014-09-12T23:02:14Z Shinmera quit (Quit: ZzzZzz) 2014-09-12T23:02:24Z joga joined #lisp 2014-09-12T23:02:25Z joga quit (Ping timeout: 260 seconds) 2014-09-12T23:02:28Z 77CAAFYI1 joined #lisp 2014-09-12T23:02:51Z sid_cypher joined #lisp 2014-09-12T23:03:12Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-12T23:03:35Z lambda joined #lisp 2014-09-12T23:03:53Z resttime_: well i guess i'll just keep working on things 2014-09-12T23:04:06Z zygentoma joined #lisp 2014-09-12T23:04:13Z resttime_: might be thinking too much about optimization as a novice programmer 2014-09-12T23:04:16Z uber_ joined #lisp 2014-09-12T23:04:28Z slyrus joined #lisp 2014-09-12T23:04:49Z uber quit (Max SendQ exceeded) 2014-09-12T23:06:46Z nell joined #lisp 2014-09-12T23:07:51Z jleija joined #lisp 2014-09-12T23:08:11Z drdo joined #lisp 2014-09-12T23:08:32Z lambda quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-12T23:08:49Z vanila quit (Ping timeout: 252 seconds) 2014-09-12T23:08:49Z mutley89 quit (Ping timeout: 252 seconds) 2014-09-12T23:08:50Z j_king quit (Ping timeout: 252 seconds) 2014-09-12T23:08:51Z j_king joined #lisp 2014-09-12T23:08:51Z zeitue quit (Ping timeout: 252 seconds) 2014-09-12T23:10:35Z nicdev joined #lisp 2014-09-12T23:10:50Z jlongster quit (Remote host closed the connection) 2014-09-12T23:10:52Z jkaye quit (Ping timeout: 252 seconds) 2014-09-12T23:10:52Z teiresias joined #lisp 2014-09-12T23:10:52Z teiresias quit (Changing host) 2014-09-12T23:10:52Z teiresias joined #lisp 2014-09-12T23:10:52Z effy joined #lisp 2014-09-12T23:11:25Z faheem_ quit (Ping timeout: 252 seconds) 2014-09-12T23:11:35Z bambams_ quit (Ping timeout: 246 seconds) 2014-09-12T23:12:47Z slyrus quit (Ping timeout: 276 seconds) 2014-09-12T23:13:24Z phadthai joined #lisp 2014-09-12T23:13:25Z stepnem quit (Ping timeout: 252 seconds) 2014-09-12T23:13:27Z _d3f quit (Ping timeout: 252 seconds) 2014-09-12T23:14:12Z K1rk joined #lisp 2014-09-12T23:14:12Z necronian joined #lisp 2014-09-12T23:14:13Z zacharias joined #lisp 2014-09-12T23:14:14Z zacharias quit (Changing host) 2014-09-12T23:14:14Z zacharias joined #lisp 2014-09-12T23:14:58Z tstc joined #lisp 2014-09-12T23:15:22Z juiko` quit (Ping timeout: 240 seconds) 2014-09-12T23:15:28Z arbscht_ quit (Ping timeout: 252 seconds) 2014-09-12T23:15:28Z ahungry quit (Ping timeout: 252 seconds) 2014-09-12T23:15:29Z sivoais quit (Ping timeout: 252 seconds) 2014-09-12T23:15:29Z slyrus joined #lisp 2014-09-12T23:16:51Z Posterdati quit (Ping timeout: 252 seconds) 2014-09-12T23:16:52Z yauz quit (Ping timeout: 252 seconds) 2014-09-12T23:16:54Z Kruppe quit (Ping timeout: 252 seconds) 2014-09-12T23:16:54Z juiko`` joined #lisp 2014-09-12T23:16:54Z nell quit (Ping timeout: 252 seconds) 2014-09-12T23:16:54Z srcerer quit (Ping timeout: 252 seconds) 2014-09-12T23:16:54Z anannie quit (Ping timeout: 252 seconds) 2014-09-12T23:17:12Z teiresias quit (Ping timeout: 252 seconds) 2014-09-12T23:17:13Z bit` quit (Ping timeout: 252 seconds) 2014-09-12T23:18:03Z InvalidCo quit (Ping timeout: 252 seconds) 2014-09-12T23:18:04Z clop2 quit (Ping timeout: 252 seconds) 2014-09-12T23:18:04Z jasom_ quit (Ping timeout: 252 seconds) 2014-09-12T23:18:04Z capitaomorte quit (Ping timeout: 252 seconds) 2014-09-12T23:18:04Z alexherbo2 joined #lisp 2014-09-12T23:18:11Z jasom joined #lisp 2014-09-12T23:18:21Z InvalidCo joined #lisp 2014-09-12T23:19:58Z clop joined #lisp 2014-09-12T23:19:59Z zeitue joined #lisp 2014-09-12T23:20:06Z namespace quit (Ping timeout: 252 seconds) 2014-09-12T23:20:07Z oleo quit (Ping timeout: 252 seconds) 2014-09-12T23:20:07Z s_e quit (Ping timeout: 252 seconds) 2014-09-12T23:20:47Z rotty quit (Remote host closed the connection) 2014-09-12T23:20:53Z fortitud1 quit (Quit: leaving) 2014-09-12T23:22:13Z capitaomorte joined #lisp 2014-09-12T23:22:13Z jackdaniel quit (Ping timeout: 252 seconds) 2014-09-12T23:22:13Z slyrus quit (Ping timeout: 252 seconds) 2014-09-12T23:22:14Z Kruppe joined #lisp 2014-09-12T23:22:20Z honkfest1val quit (Ping timeout: 252 seconds) 2014-09-12T23:22:22Z Posterdati joined #lisp 2014-09-12T23:23:01Z yauz joined #lisp 2014-09-12T23:23:12Z _d3f joined #lisp 2014-09-12T23:24:10Z DGASAU quit (Ping timeout: 252 seconds) 2014-09-12T23:24:17Z manfoo7` joined #lisp 2014-09-12T23:25:39Z manfoo7` quit (Remote host closed the connection) 2014-09-12T23:25:45Z didi joined #lisp 2014-09-12T23:26:14Z eschulte joined #lisp 2014-09-12T23:26:14Z diginet joined #lisp 2014-09-12T23:28:14Z samebchase joined #lisp 2014-09-12T23:28:15Z asedeno joined #lisp 2014-09-12T23:28:44Z whmark` joined #lisp 2014-09-12T23:30:57Z Bicyclidine joined #lisp 2014-09-12T23:31:17Z njsg joined #lisp 2014-09-12T23:31:20Z Borbus joined #lisp 2014-09-12T23:35:22Z Elench` quit (Ping timeout: 240 seconds) 2014-09-12T23:36:23Z ThomasSolti quit (Quit: ZNC - http://znc.sourceforge.net) 2014-09-12T23:36:23Z kpreid joined #lisp 2014-09-12T23:37:07Z drewc joined #lisp 2014-09-12T23:38:18Z blakbunnie27 joined #lisp 2014-09-12T23:38:18Z eazar001 joined #lisp 2014-09-12T23:38:18Z slyrus joined #lisp 2014-09-12T23:38:19Z eee-blt joined #lisp 2014-09-12T23:38:20Z zacts joined #lisp 2014-09-12T23:38:20Z slyrus quit (Ping timeout: 268 seconds) 2014-09-12T23:38:21Z zacts quit (Client Quit) 2014-09-12T23:38:21Z cy joined #lisp 2014-09-12T23:38:21Z brucem joined #lisp 2014-09-12T23:38:21Z jlongster joined #lisp 2014-09-12T23:38:21Z slyrus joined #lisp 2014-09-12T23:38:21Z jkaye joined #lisp 2014-09-12T23:38:29Z 6JTAAFVUB joined #lisp 2014-09-12T23:38:29Z slyrus quit (Ping timeout: 268 seconds) 2014-09-12T23:38:29Z jkaye quit (Remote host closed the connection) 2014-09-12T23:38:29Z namespace joined #lisp 2014-09-12T23:38:29Z honkfestival joined #lisp 2014-09-12T23:38:29Z s_e joined #lisp 2014-09-12T23:38:29Z teiresias joined #lisp 2014-09-12T23:38:29Z jackdaniel joined #lisp 2014-09-12T23:38:29Z Kabaka joined #lisp 2014-09-12T23:38:29Z rotty joined #lisp 2014-09-12T23:38:29Z harish joined #lisp 2014-09-12T23:38:29Z teiresias quit (Changing host) 2014-09-12T23:38:29Z teiresias joined #lisp 2014-09-12T23:38:32Z cy is now known as 6JTAAFUYW 2014-09-12T23:38:32Z s_e is now known as 6JTAAFWFF 2014-09-12T23:39:02Z rotty is now known as 6JTAAFWVZ 2014-09-12T23:39:16Z teiresias is now known as 6JTAAFWI7 2014-09-12T23:39:38Z jdz is now known as Guest13222 2014-09-12T23:39:42Z Kabaka quit (Max SendQ exceeded) 2014-09-12T23:40:46Z 6JTAAFWI7 is now known as teiresias 2014-09-12T23:40:53Z froggey_ quit (Ping timeout: 260 seconds) 2014-09-12T23:41:23Z didi quit (Ping timeout: 276 seconds) 2014-09-12T23:42:00Z Bazzie joined #lisp 2014-09-12T23:42:00Z manfoo7` joined #lisp 2014-09-12T23:42:00Z rme_ joined #lisp 2014-09-12T23:42:00Z J_Arcane2 joined #lisp 2014-09-12T23:42:00Z ahungry_ joined #lisp 2014-09-12T23:42:00Z bcoburn joined #lisp 2014-09-12T23:42:00Z mal_ joined #lisp 2014-09-12T23:42:07Z CrazyEddy joined #lisp 2014-09-12T23:42:50Z froggey joined #lisp 2014-09-12T23:43:08Z Kabaka joined #lisp 2014-09-12T23:44:09Z axion quit (Quit: WeeChat 0.4.3) 2014-09-12T23:44:10Z Oddity joined #lisp 2014-09-12T23:44:15Z axion joined #lisp 2014-09-12T23:44:53Z AdmiralBumbleBee joined #lisp 2014-09-12T23:44:57Z AdmiralBumbleBee quit (Ping timeout: 272 seconds) 2014-09-12T23:46:44Z nisstyre joined #lisp 2014-09-12T23:46:56Z peccu2 joined #lisp 2014-09-12T23:47:44Z didi joined #lisp 2014-09-12T23:48:04Z schoppenhauer joined #lisp 2014-09-12T23:49:08Z 6JTAAFUYW quit (Ping timeout: 268 seconds) 2014-09-12T23:50:47Z tvaalen joined #lisp 2014-09-12T23:50:48Z Longlius joined #lisp 2014-09-12T23:52:06Z DGASAU joined #lisp 2014-09-12T23:54:15Z ThomasSolti joined #lisp 2014-09-12T23:54:15Z sivoais joined #lisp 2014-09-12T23:54:15Z oleo joined #lisp 2014-09-12T23:54:15Z fantazo joined #lisp 2014-09-12T23:54:15Z nyef joined #lisp 2014-09-12T23:54:15Z johs joined #lisp 2014-09-12T23:54:15Z Jubb joined #lisp 2014-09-12T23:54:39Z sivoais quit (Max SendQ exceeded) 2014-09-12T23:54:39Z oleo quit (Max SendQ exceeded) 2014-09-12T23:54:53Z __main__ quit (Ping timeout: 260 seconds) 2014-09-12T23:55:25Z sivoais joined #lisp 2014-09-12T23:55:38Z cy joined #lisp 2014-09-12T23:55:43Z DrCode joined #lisp 2014-09-12T23:56:51Z mhd joined #lisp 2014-09-12T23:57:01Z oleo joined #lisp 2014-09-12T23:57:31Z arbscht_ joined #lisp 2014-09-12T23:58:24Z Tordek_ quit (Changing host) 2014-09-12T23:58:24Z Tordek_ joined #lisp 2014-09-12T23:58:26Z endou___ quit (Changing host) 2014-09-12T23:58:26Z endou___ joined #lisp 2014-09-12T23:58:43Z _tca quit (Changing host) 2014-09-12T23:58:43Z _tca joined #lisp 2014-09-12T23:59:17Z kobain is now known as niabok 2014-09-12T23:59:20Z ggherdov_ quit (Changing host) 2014-09-12T23:59:20Z ggherdov_ joined #lisp 2014-09-12T23:59:20Z bit` joined #lisp 2014-09-12T23:59:33Z Amaan quit (Changing host) 2014-09-12T23:59:33Z Amaan joined #lisp 2014-09-12T23:59:36Z kirin` quit (Changing host) 2014-09-12T23:59:37Z kirin` joined #lisp 2014-09-12T23:59:37Z aksatac__ quit (Changing host) 2014-09-12T23:59:37Z aksatac__ joined #lisp 2014-09-13T00:00:04Z vert2 quit (Changing host) 2014-09-13T00:00:05Z vert2 joined #lisp 2014-09-13T00:00:47Z blakbunnie27 quit (Changing host) 2014-09-13T00:00:47Z blakbunnie27 joined #lisp 2014-09-13T00:02:00Z malice quit (Quit: Leaving) 2014-09-13T00:02:38Z theethicalegoist joined #lisp 2014-09-13T00:02:42Z zacharias quit (Ping timeout: 268 seconds) 2014-09-13T00:05:58Z Bicyclidine quit (Ping timeout: 252 seconds) 2014-09-13T00:06:37Z dmiles_afk joined #lisp 2014-09-13T00:09:05Z codeburg joined #lisp 2014-09-13T00:12:52Z Adlai joined #lisp 2014-09-13T00:13:27Z __main__ joined #lisp 2014-09-13T00:13:57Z guaqua``` joined #lisp 2014-09-13T00:14:03Z brucem quit (Changing host) 2014-09-13T00:14:03Z brucem joined #lisp 2014-09-13T00:14:53Z sepi` joined #lisp 2014-09-13T00:15:05Z victor_lowther__ joined #lisp 2014-09-13T00:15:12Z endou____ joined #lisp 2014-09-13T00:15:43Z AndroidShoutapop joined #lisp 2014-09-13T00:15:57Z AndroidShoutapop is now known as Guest18744 2014-09-13T00:16:08Z smithzv joined #lisp 2014-09-13T00:16:31Z smithzv is now known as Guest6216 2014-09-13T00:16:31Z whmark`` joined #lisp 2014-09-13T00:16:59Z sword` joined #lisp 2014-09-13T00:17:08Z the_jeb joined #lisp 2014-09-13T00:17:38Z EvW joined #lisp 2014-09-13T00:18:14Z the_jeb: should I learn Lisp? I am relatively new to programming, I only know python and I want a language that is very different from it 2014-09-13T00:18:18Z nicdev` joined #lisp 2014-09-13T00:19:34Z krid` joined #lisp 2014-09-13T00:20:09Z tkd__ is now known as tkd 2014-09-13T00:21:05Z nyef: the_jeb: No, you should learn FORTH, Intercal, Smalltalk, Haskell, or C. 2014-09-13T00:21:20Z nyef: Preferably all of them, but take it one at a time. d-: 2014-09-13T00:21:26Z victor_lowther_ quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z guaqua`` quit (Read error: Connection reset by peer) 2014-09-13T00:21:31Z endou___ quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z lupine quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z rvirding quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z nicdev quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z pchrist quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z sytse quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z otwieracz quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z Guest39815 quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z Ralt quit (Ping timeout: 272 seconds) 2014-09-13T00:21:31Z gko_ quit (Ping timeout: 272 seconds) 2014-09-13T00:21:32Z ered quit (Ping timeout: 272 seconds) 2014-09-13T00:21:32Z sepi quit (Ping timeout: 272 seconds) 2014-09-13T00:21:32Z EvW1 quit (Ping timeout: 272 seconds) 2014-09-13T00:21:33Z whmark` quit (Ping timeout: 272 seconds) 2014-09-13T00:21:34Z aksatac__ quit (Ping timeout: 272 seconds) 2014-09-13T00:21:34Z sword quit (Ping timeout: 272 seconds) 2014-09-13T00:21:35Z Neet quit (Ping timeout: 272 seconds) 2014-09-13T00:21:35Z gz__ quit (Ping timeout: 272 seconds) 2014-09-13T00:21:39Z endou____ is now known as endou___ 2014-09-13T00:21:39Z gz__ joined #lisp 2014-09-13T00:21:42Z lupine joined #lisp 2014-09-13T00:21:46Z victor_lowther__ is now known as victor_lowther_ 2014-09-13T00:21:50Z Neet joined #lisp 2014-09-13T00:21:57Z aksatac__ joined #lisp 2014-09-13T00:22:00Z ered joined #lisp 2014-09-13T00:22:15Z rvirding_ joined #lisp 2014-09-13T00:22:37Z pchrist joined #lisp 2014-09-13T00:22:44Z Ralt joined #lisp 2014-09-13T00:22:52Z krid quit (Ping timeout: 240 seconds) 2014-09-13T00:22:55Z gko joined #lisp 2014-09-13T00:23:07Z otwieracz joined #lisp 2014-09-13T00:23:36Z nyef: Also at least one assembly language. 2014-09-13T00:24:35Z bgs100 joined #lisp 2014-09-13T00:25:02Z the_jeb quit (Ping timeout: 252 seconds) 2014-09-13T00:25:16Z the_jeb joined #lisp 2014-09-13T00:27:49Z the_jeb: my internet crashed, did anybody say something after I asked nuef a question? 2014-09-13T00:27:57Z zymurgy joined #lisp 2014-09-13T00:28:50Z mhd quit (Input/output error) 2014-09-13T00:28:50Z mhd quit (Remote host closed the connection) 2014-09-13T00:29:17Z Ralt_ joined #lisp 2014-09-13T00:29:44Z mhd joined #lisp 2014-09-13T00:30:30Z rvirding_ is now known as rvirding 2014-09-13T00:33:54Z jaminja joined #lisp 2014-09-13T00:34:29Z vanila joined #lisp 2014-09-13T00:36:44Z lupine_85 joined #lisp 2014-09-13T00:41:06Z resttime_: is there a quick way to grab a symbol for a form? 2014-09-13T00:41:25Z resttime_: let's say i have :list 2014-09-13T00:41:38Z resttime_: is there a quick way to get the symbol list? 2014-09-13T00:42:00Z nell joined #lisp 2014-09-13T00:43:19Z resttime_: ah keymean 2014-09-13T00:43:22Z resttime_: *keyword 2014-09-13T00:43:25Z rme_: Do you want the (keyword) symbol's name as a string? (string :list) or (symbol-name :list) will do that. 2014-09-13T00:43:28Z resttime_: can i get a symbol using a keyword? 2014-09-13T00:44:07Z resttime_: oh thanks i can do (find-symbol (string :hi)) then 2014-09-13T00:45:00Z drmeister: Does anyone use maxima? I'm just running a program on Mathematica and I was thinking about it. I calculate first and second derivatives of some functions of 6, 9, and 12 variables and use Mathematica to reduce them to optimized C code. I wonder if that could be done with Maxima. 2014-09-13T00:45:15Z Ralt quit (*.net *.split) 2014-09-13T00:45:16Z ered quit (*.net *.split) 2014-09-13T00:45:17Z lupine quit (*.net *.split) 2014-09-13T00:45:17Z Ralt_ is now known as Ralt 2014-09-13T00:45:17Z lupine_85 is now known as lupine 2014-09-13T00:45:44Z drmeister: I spent about an hour trying to get the stupid Mathematica license to work. I have to do that every time I try to use Mathematica (about once a year). 2014-09-13T00:47:00Z Px12 joined #lisp 2014-09-13T00:47:00Z defaultxr joined #lisp 2014-09-13T00:47:03Z drmeister: The program takes expressions like this: kb (-r0 + Sqrt[(-x1 + x2)^2 + (-y1 + y2)^2 + (-z1 + z2)^2])^2. 2014-09-13T00:47:27Z drmeister: And reduces them to this: https://gist.github.com/drmeister/b4c016a78930d75df0a3 2014-09-13T00:48:09Z rme_: I think there's a fortran(...) function in Maxima that does that, but I don't think there's an equivalent ccode() function. 2014-09-13T00:48:22Z ejbs quit (Ping timeout: 240 seconds) 2014-09-13T00:49:30Z the_jeb_ joined #lisp 2014-09-13T00:49:38Z the_jeb quit (Ping timeout: 276 seconds) 2014-09-13T00:49:48Z drmeister: Here's a graphical representation of how it takes the degrees of freedom on the left and converts them into the results (energy, 1st deriv, 2nd deriv) on the right: http://i.imgur.com/3IX1HVW.png 2014-09-13T00:49:56Z kcj joined #lisp 2014-09-13T00:49:58Z kcj quit (Changing host) 2014-09-13T00:49:58Z kcj joined #lisp 2014-09-13T00:50:29Z boogie quit (Remote host closed the connection) 2014-09-13T00:51:45Z whmark``` joined #lisp 2014-09-13T00:51:51Z DrCode quit (Ping timeout: 264 seconds) 2014-09-13T00:52:21Z Jubb quit (Ping timeout: 245 seconds) 2014-09-13T00:53:07Z sytse joined #lisp 2014-09-13T00:53:49Z sword`` joined #lisp 2014-09-13T00:54:00Z Adlai quit (Ping timeout: 264 seconds) 2014-09-13T00:54:00Z codeburg quit (Ping timeout: 264 seconds) 2014-09-13T00:54:16Z namespac1 joined #lisp 2014-09-13T00:54:49Z jusss` joined #lisp 2014-09-13T00:55:02Z ThomasSolti quit (Ping timeout: 245 seconds) 2014-09-13T00:55:17Z sepi` quit (Remote host closed the connection) 2014-09-13T00:55:23Z guaqua``` quit (Write error: Broken pipe) 2014-09-13T00:55:23Z manfoo7` quit (Write error: Broken pipe) 2014-09-13T00:55:23Z Bazzie quit (Write error: Broken pipe) 2014-09-13T00:55:23Z ahungry_ quit (Write error: Broken pipe) 2014-09-13T00:55:23Z nicdev` quit (Write error: Broken pipe) 2014-09-13T00:55:23Z sword` quit (Remote host closed the connection) 2014-09-13T00:55:23Z whmark`` quit (Remote host closed the connection) 2014-09-13T00:55:24Z jaminja quit (Remote host closed the connection) 2014-09-13T00:55:26Z manfoo7`` joined #lisp 2014-09-13T00:56:09Z stopbyte joined #lisp 2014-09-13T00:56:14Z aksatac___ joined #lisp 2014-09-13T00:56:21Z cyphase joined #lisp 2014-09-13T00:56:36Z s_e joined #lisp 2014-09-13T00:56:46Z modula joined #lisp 2014-09-13T00:57:37Z samebcha1e joined #lisp 2014-09-13T00:57:51Z otwierac1 joined #lisp 2014-09-13T00:58:10Z asedeno_ joined #lisp 2014-09-13T00:58:47Z defaultxr quit (Ping timeout: 245 seconds) 2014-09-13T00:58:47Z modula is now known as defaultxr 2014-09-13T00:59:24Z kcj quit (Quit: kcj) 2014-09-13T00:59:53Z kcj joined #lisp 2014-09-13T00:59:58Z kcj quit (Changing host) 2014-09-13T00:59:58Z kcj joined #lisp 2014-09-13T01:00:14Z eschulte_ joined #lisp 2014-09-13T01:00:22Z harish_ joined #lisp 2014-09-13T01:01:32Z jusss` is now known as jusss 2014-09-13T01:01:51Z jusss quit (Changing host) 2014-09-13T01:01:51Z jusss joined #lisp 2014-09-13T01:01:56Z endou____ joined #lisp 2014-09-13T01:02:01Z bit`1 joined #lisp 2014-09-13T01:02:23Z axion quit (Quit: WeeChat 0.4.3) 2014-09-13T01:02:59Z faheem_ joined #lisp 2014-09-13T01:03:03Z zygentoma quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-13T01:03:18Z dmiles joined #lisp 2014-09-13T01:03:25Z fantazo_ joined #lisp 2014-09-13T01:03:31Z diginet_ joined #lisp 2014-09-13T01:03:52Z backupthrick_ joined #lisp 2014-09-13T01:03:59Z axion joined #lisp 2014-09-13T01:04:50Z Ralt_ joined #lisp 2014-09-13T01:06:26Z gz___ joined #lisp 2014-09-13T01:06:49Z bgs100 quit (Ping timeout: 245 seconds) 2014-09-13T01:06:49Z 20WABHPF3 joined #lisp 2014-09-13T01:06:49Z Guest18744 quit (Ping timeout: 245 seconds) 2014-09-13T01:06:49Z nyef quit (Ping timeout: 245 seconds) 2014-09-13T01:06:49Z fantazo quit (Ping timeout: 245 seconds) 2014-09-13T01:06:50Z johs quit (Ping timeout: 245 seconds) 2014-09-13T01:06:52Z 20WABHPF3 quit (*.net *.split) 2014-09-13T01:06:57Z aksatac__ quit (Ping timeout: 268 seconds) 2014-09-13T01:06:59Z jlongster quit (Read error: Connection reset by peer) 2014-09-13T01:07:01Z namespace quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z vanila quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z EvW quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z harish quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z 6JTAAFWVZ quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z 6JTAAFWFF quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z drdo quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z samebchase quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z blakbunnie27 quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z asedeno quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z otwieracz quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z Oddity quit (Ping timeout: 268 seconds) 2014-09-13T01:07:01Z honkfestival quit (Ping timeout: 268 seconds) 2014-09-13T01:07:02Z endou___ quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z eazar001 quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z diginet quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z Guest13222 quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z bit` quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z honkfestival joined #lisp 2014-09-13T01:07:06Z sivoais quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z eschulte quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z backupthrick quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z gz__ quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z jackdaniel quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z K1rk quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z androidkitkat joined #lisp 2014-09-13T01:07:06Z eee-blt quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z teiresias quit (Remote host closed the connection) 2014-09-13T01:07:06Z cy quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z 6JTAAFVUB quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z __main__ quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z jdz joined #lisp 2014-09-13T01:07:06Z pchrist quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z brucem quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z necronian quit (Ping timeout: 268 seconds) 2014-09-13T01:07:06Z pchrist joined #lisp 2014-09-13T01:07:06Z otwierac1 is now known as otwieracz 2014-09-13T01:07:07Z pchrist quit (Changing host) 2014-09-13T01:07:07Z pchrist joined #lisp 2014-09-13T01:07:08Z drdo joined #lisp 2014-09-13T01:07:09Z smithzv_ joined #lisp 2014-09-13T01:07:10Z J_Arcane2 quit (Excess Flood) 2014-09-13T01:07:12Z manfoo7`` quit (Write error: Broken pipe) 2014-09-13T01:07:12Z Ralt quit (Write error: Broken pipe) 2014-09-13T01:07:12Z Ralt_ is now known as Ralt 2014-09-13T01:07:13Z Guest6216 quit (Quit: ZNC - http://znc.in) 2014-09-13T01:07:14Z segv- joined #lisp 2014-09-13T01:07:15Z manfoo7`` joined #lisp 2014-09-13T01:07:15Z ahungry_ joined #lisp 2014-09-13T01:07:19Z jaminja joined #lisp 2014-09-13T01:07:29Z Bazzie joined #lisp 2014-09-13T01:07:30Z jackdani1l joined #lisp 2014-09-13T01:07:31Z K1rk joined #lisp 2014-09-13T01:07:37Z johs joined #lisp 2014-09-13T01:07:38Z gz___ is now known as gz__ 2014-09-13T01:07:43Z endou____ is now known as endou___ 2014-09-13T01:07:44Z J_Arcane joined #lisp 2014-09-13T01:08:00Z vanila joined #lisp 2014-09-13T01:08:00Z vanila quit (Changing host) 2014-09-13T01:08:00Z vanila joined #lisp 2014-09-13T01:08:13Z androidkitkat is now known as Guest50418 2014-09-13T01:08:13Z jdz is now known as Guest22814 2014-09-13T01:09:03Z brucem joined #lisp 2014-09-13T01:09:13Z EvW joined #lisp 2014-09-13T01:09:18Z blakbunnie27 joined #lisp 2014-09-13T01:09:22Z __main__ joined #lisp 2014-09-13T01:09:47Z Px12 quit (Ping timeout: 251 seconds) 2014-09-13T01:09:58Z wgl joined #lisp 2014-09-13T01:09:59Z the_jeb_ left #lisp 2014-09-13T01:10:14Z phax joined #lisp 2014-09-13T01:11:44Z l0xas quit (Quit: BitchX: the cootiless client) 2014-09-13T01:12:28Z eee-blt joined #lisp 2014-09-13T01:12:46Z rme joined #lisp 2014-09-13T01:13:17Z Oddity joined #lisp 2014-09-13T01:13:20Z Neet_ joined #lisp 2014-09-13T01:13:36Z vinleod joined #lisp 2014-09-13T01:14:07Z ered joined #lisp 2014-09-13T01:14:32Z juiko`` quit (Ping timeout: 252 seconds) 2014-09-13T01:15:27Z ahungry joined #lisp 2014-09-13T01:15:35Z jackdaniel joined #lisp 2014-09-13T01:15:42Z prxq_ quit (Ping timeout: 245 seconds) 2014-09-13T01:16:16Z teiresias joined #lisp 2014-09-13T01:19:17Z lupine_85 joined #lisp 2014-09-13T01:19:20Z gko_ joined #lisp 2014-09-13T01:19:55Z Karl_Dscc joined #lisp 2014-09-13T01:20:09Z edgar-rft quit (Quit: lifetime closed by computer contermination) 2014-09-13T01:20:34Z J_Arcane quit (*.net *.split) 2014-09-13T01:20:34Z johs quit (*.net *.split) 2014-09-13T01:20:34Z Bazzie quit (*.net *.split) 2014-09-13T01:20:34Z jackdani1l quit (*.net *.split) 2014-09-13T01:20:34Z jaminja quit (*.net *.split) 2014-09-13T01:20:34Z ahungry_ quit (*.net *.split) 2014-09-13T01:20:35Z segv- quit (*.net *.split) 2014-09-13T01:20:35Z manfoo7`` quit (*.net *.split) 2014-09-13T01:20:36Z lupine quit (*.net *.split) 2014-09-13T01:20:36Z zymurgy quit (*.net *.split) 2014-09-13T01:20:36Z gko quit (*.net *.split) 2014-09-13T01:20:36Z rvirding quit (*.net *.split) 2014-09-13T01:20:36Z Neet quit (*.net *.split) 2014-09-13T01:20:37Z victor_lowther_ quit (*.net *.split) 2014-09-13T01:20:38Z dmiles_afk quit (*.net *.split) 2014-09-13T01:20:38Z peccu2 quit (*.net *.split) 2014-09-13T01:20:39Z rme_ quit (*.net *.split) 2014-09-13T01:20:39Z bcoburn quit (*.net *.split) 2014-09-13T01:20:39Z mal_ quit (*.net *.split) 2014-09-13T01:20:39Z Shaftoe___ joined #lisp 2014-09-13T01:20:42Z juiko`` joined #lisp 2014-09-13T01:20:42Z lupine_85 is now known as lupine 2014-09-13T01:20:57Z rvirding_ joined #lisp 2014-09-13T01:20:59Z Neet_ is now known as Neet 2014-09-13T01:21:57Z niabok quit (Ping timeout: 245 seconds) 2014-09-13T01:22:44Z jaminja joined #lisp 2014-09-13T01:22:44Z sivoais joined #lisp 2014-09-13T01:22:58Z kobain joined #lisp 2014-09-13T01:23:03Z Bazzie joined #lisp 2014-09-13T01:23:28Z Vivitron joined #lisp 2014-09-13T01:23:53Z bgs100 joined #lisp 2014-09-13T01:25:04Z eazar001 joined #lisp 2014-09-13T01:25:39Z mhd quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-13T01:26:28Z kpreid_ joined #lisp 2014-09-13T01:26:40Z pjb`` joined #lisp 2014-09-13T01:26:49Z DGASAU` joined #lisp 2014-09-13T01:27:24Z zymurgy joined #lisp 2014-09-13T01:27:48Z dmiles_afk joined #lisp 2014-09-13T01:28:13Z Longlius quit (Ping timeout: 260 seconds) 2014-09-13T01:28:22Z J_Arcane joined #lisp 2014-09-13T01:28:22Z segv- joined #lisp 2014-09-13T01:28:22Z victor_lowther_ joined #lisp 2014-09-13T01:28:22Z peccu2 joined #lisp 2014-09-13T01:28:22Z bcoburn joined #lisp 2014-09-13T01:28:22Z mal_ joined #lisp 2014-09-13T01:28:22Z gz___ joined #lisp 2014-09-13T01:28:35Z wgl` joined #lisp 2014-09-13T01:29:08Z namespace joined #lisp 2014-09-13T01:29:38Z juiko``` joined #lisp 2014-09-13T01:30:23Z joga joined #lisp 2014-09-13T01:30:28Z sid_cyph1r joined #lisp 2014-09-13T01:30:56Z Phreak joined #lisp 2014-09-13T01:31:09Z backupthrick__ joined #lisp 2014-09-13T01:31:15Z arbscht joined #lisp 2014-09-13T01:31:26Z gensym_ joined #lisp 2014-09-13T01:31:35Z axion_ joined #lisp 2014-09-13T01:31:45Z lifenoodles_ joined #lisp 2014-09-13T01:31:52Z bgs101 joined #lisp 2014-09-13T01:31:58Z ^Posterdati^ joined #lisp 2014-09-13T01:32:06Z mhd quit (Read error: Connection reset by peer) 2014-09-13T01:32:06Z dmiles quit (Ping timeout: 276 seconds) 2014-09-13T01:32:08Z gz__ quit (Ping timeout: 276 seconds) 2014-09-13T01:32:08Z s_e quit (Ping timeout: 276 seconds) 2014-09-13T01:32:10Z lifenoodles quit (Ping timeout: 276 seconds) 2014-09-13T01:32:10Z ahungry quit (Ping timeout: 276 seconds) 2014-09-13T01:32:10Z Oddity quit (Ping timeout: 276 seconds) 2014-09-13T01:32:10Z wgl quit (Ping timeout: 276 seconds) 2014-09-13T01:32:10Z axion quit (Ping timeout: 276 seconds) 2014-09-13T01:32:10Z namespac1 quit (Ping timeout: 276 seconds) 2014-09-13T01:32:10Z arbscht_ quit (Ping timeout: 276 seconds) 2014-09-13T01:32:10Z kpreid quit (Ping timeout: 276 seconds) 2014-09-13T01:32:11Z yauz quit (Ping timeout: 276 seconds) 2014-09-13T01:32:11Z InvalidCo quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z scharan quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z smull quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z Guest81790 quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z snits quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z bgs100 quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z Bazzie quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z juiko`` quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z backupthrick_ quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z kcj quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z jusss quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z DGASAU quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z _d3f quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z Posterdati quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z zeitue quit (Ping timeout: 276 seconds) 2014-09-13T01:32:15Z jleija quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z sid_cypher quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z 77CAAFYI1 quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z pjb` quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z ruste quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z dfox quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z gensym quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z rick-monster quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z Kabaka quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z Borbus quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z alexherbo2 quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z _5kg quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z bit`1 quit (Ping timeout: 276 seconds) 2014-09-13T01:32:19Z Bazzie joined #lisp 2014-09-13T01:32:19Z jusss joined #lisp 2014-09-13T01:32:19Z dfox joined #lisp 2014-09-13T01:32:19Z snits joined #lisp 2014-09-13T01:32:19Z kcj joined #lisp 2014-09-13T01:32:19Z kpreid_ is now known as kpreid 2014-09-13T01:32:19Z jusss quit (Changing host) 2014-09-13T01:32:19Z jusss joined #lisp 2014-09-13T01:32:19Z kcj quit (Changing host) 2014-09-13T01:32:20Z kcj joined #lisp 2014-09-13T01:32:21Z gz___ is now known as gz__ 2014-09-13T01:32:21Z krid` is now known as krid 2014-09-13T01:32:21Z axion_ is now known as axion 2014-09-13T01:32:21Z gensym_ is now known as gensym 2014-09-13T01:32:22Z z_ joined #lisp 2014-09-13T01:32:31Z z_ is now known as Guest86219 2014-09-13T01:32:44Z axion is now known as Guest6520 2014-09-13T01:32:53Z rick-monster joined #lisp 2014-09-13T01:32:58Z bit` joined #lisp 2014-09-13T01:33:23Z gz__ is now known as gz 2014-09-13T01:33:40Z jaminja quit (Quit: leaving) 2014-09-13T01:34:20Z Guest6520 left #lisp 2014-09-13T01:34:40Z s_e joined #lisp 2014-09-13T01:34:40Z axion joined #lisp 2014-09-13T01:34:50Z InvalidCo joined #lisp 2014-09-13T01:34:51Z ahungry joined #lisp 2014-09-13T01:35:04Z kushal joined #lisp 2014-09-13T01:35:04Z Oddity joined #lisp 2014-09-13T01:36:44Z brucem quit (Changing host) 2014-09-13T01:36:45Z brucem joined #lisp 2014-09-13T01:38:21Z joga quit (Read error: Connection timed out) 2014-09-13T01:38:29Z joga joined #lisp 2014-09-13T01:39:28Z Borbus joined #lisp 2014-09-13T01:42:21Z alexherbo2 joined #lisp 2014-09-13T01:43:52Z girrig quit (Ping timeout: 240 seconds) 2014-09-13T01:46:21Z girrig joined #lisp 2014-09-13T01:47:00Z nell quit (Quit: WeeChat 1.1-dev) 2014-09-13T01:48:32Z EvW quit (Quit: EvW) 2014-09-13T01:50:55Z axion quit (Quit: WeeChat 0.4.3) 2014-09-13T01:51:07Z Guest68405 is now known as sellout 2014-09-13T01:51:29Z axion joined #lisp 2014-09-13T01:51:51Z Karl_Dscc quit (Ping timeout: 268 seconds) 2014-09-13T01:52:15Z Karl_Dscc joined #lisp 2014-09-13T01:53:30Z axion quit (Client Quit) 2014-09-13T01:54:04Z axion joined #lisp 2014-09-13T01:58:28Z axion quit (Client Quit) 2014-09-13T01:59:02Z axion joined #lisp 2014-09-13T01:59:16Z axion quit (Client Quit) 2014-09-13T01:59:58Z Guest50418 left #lisp 2014-09-13T02:00:44Z theethicalegoist quit (Ping timeout: 252 seconds) 2014-09-13T02:01:04Z axion joined #lisp 2014-09-13T02:02:23Z Karl_Dscc quit (Remote host closed the connection) 2014-09-13T02:02:43Z diginet_ quit (Quit: diginet has quit!) 2014-09-13T02:03:28Z diginet joined #lisp 2014-09-13T02:03:30Z Longlius joined #lisp 2014-09-13T02:04:43Z axion quit (Client Quit) 2014-09-13T02:08:47Z innertracks joined #lisp 2014-09-13T02:12:51Z alchemis7 left #lisp 2014-09-13T02:12:51Z alchemis7 joined #lisp 2014-09-13T02:13:45Z manfoo7` joined #lisp 2014-09-13T02:14:23Z dmiles_afk quit (Read error: Connection reset by peer) 2014-09-13T02:14:41Z dmiles_afk joined #lisp 2014-09-13T02:21:42Z krid` joined #lisp 2014-09-13T02:25:09Z fragamus quit (Ping timeout: 260 seconds) 2014-09-13T02:25:18Z krid quit (Ping timeout: 252 seconds) 2014-09-13T02:25:49Z Bike quit (Quit: restarting) 2014-09-13T02:40:08Z jusss quit (Ping timeout: 276 seconds) 2014-09-13T02:43:18Z Bike joined #lisp 2014-09-13T02:44:29Z Jubb joined #lisp 2014-09-13T02:45:27Z schjetne joined #lisp 2014-09-13T02:45:28Z Intensity joined #lisp 2014-09-13T02:49:10Z rainbyte joined #lisp 2014-09-13T02:51:27Z cy joined #lisp 2014-09-13T02:52:21Z isoraqathedh joined #lisp 2014-09-13T02:52:54Z juiko``` quit (Ping timeout: 268 seconds) 2014-09-13T03:00:53Z nug700 joined #lisp 2014-09-13T03:01:57Z JuanDaugherty quit (Ping timeout: 245 seconds) 2014-09-13T03:02:32Z zacts joined #lisp 2014-09-13T03:02:46Z zacts: does sbcl run well on OpenBSD? 2014-09-13T03:12:54Z murftown joined #lisp 2014-09-13T03:14:13Z nell joined #lisp 2014-09-13T03:17:18Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-13T03:20:23Z wchun joined #lisp 2014-09-13T03:21:01Z dmiles_afk quit (Ping timeout: 272 seconds) 2014-09-13T03:24:00Z TDog joined #lisp 2014-09-13T03:29:03Z dmiles_afk joined #lisp 2014-09-13T03:30:08Z wizzo joined #lisp 2014-09-13T03:30:39Z dmiles joined #lisp 2014-09-13T03:34:13Z dmiles_afk quit (Ping timeout: 268 seconds) 2014-09-13T03:44:59Z beach joined #lisp 2014-09-13T03:45:14Z beach: Good morning everyone! 2014-09-13T03:46:04Z munksgaard joined #lisp 2014-09-13T03:46:25Z bgs101 is now known as bgs100 2014-09-13T03:47:29Z didi left #lisp 2014-09-13T03:51:08Z m4dnificent quit (Remote host closed the connection) 2014-09-13T03:51:18Z _tca: good morning 2014-09-13T03:52:56Z vanila: hi beach 2014-09-13T03:52:56Z Phreak quit (Quit: No Ping reply in 180 seconds.) 2014-09-13T03:53:42Z a20140912 joined #lisp 2014-09-13T03:53:44Z malglim quit (Ping timeout: 252 seconds) 2014-09-13T03:54:00Z murftown quit (Quit: murftown) 2014-09-13T03:54:09Z cy quit (Ping timeout: 252 seconds) 2014-09-13T03:54:24Z ahungry quit (Ping timeout: 252 seconds) 2014-09-13T03:54:37Z _d3f joined #lisp 2014-09-13T03:54:46Z effy quit (Ping timeout: 252 seconds) 2014-09-13T03:55:01Z malglim joined #lisp 2014-09-13T03:55:20Z ahungry joined #lisp 2014-09-13T03:56:55Z murftown joined #lisp 2014-09-13T03:58:52Z theos quit (Ping timeout: 240 seconds) 2014-09-13T04:00:42Z vanila quit (Quit: Leaving) 2014-09-13T04:01:44Z CrazyEddy quit (Ping timeout: 252 seconds) 2014-09-13T04:02:08Z oleo is now known as Guest43245 2014-09-13T04:02:45Z TDog quit (Ping timeout: 246 seconds) 2014-09-13T04:03:55Z oleo__ joined #lisp 2014-09-13T04:05:02Z Guest43245 quit (Ping timeout: 252 seconds) 2014-09-13T04:05:22Z housel quit (Ping timeout: 240 seconds) 2014-09-13T04:07:14Z krid` quit (Ping timeout: 276 seconds) 2014-09-13T04:07:47Z cwandrews quit (Ping timeout: 245 seconds) 2014-09-13T04:10:27Z munksgaard quit (Read error: Connection reset by peer) 2014-09-13T04:10:52Z tokenrove quit (Ping timeout: 240 seconds) 2014-09-13T04:12:01Z kalzz quit (Ping timeout: 260 seconds) 2014-09-13T04:12:56Z vydd_ quit (Read error: Connection reset by peer) 2014-09-13T04:13:46Z vydd joined #lisp 2014-09-13T04:15:49Z phax left #lisp 2014-09-13T04:18:21Z rme quit (Quit: rme) 2014-09-13T04:20:10Z a20140912 quit (Quit: Page closed) 2014-09-13T04:21:16Z cy joined #lisp 2014-09-13T04:23:00Z beach: Despite extensive literature search, I can't find the reasons for the PHI function in SSA form. I mean, without it, there would have to be more than one assignment to some variables, so it wouldn't be static SINGLE assignment, but then, I am not convinced that optimizations rely on that either. 2014-09-13T04:24:05Z beach: I know the advantage of SSA is that several "versions" of a variable are exposed, but this property can be obtained without PHI functions. 2014-09-13T04:24:09Z BitPuffin quit (Ping timeout: 260 seconds) 2014-09-13T04:24:36Z theethicalegoist joined #lisp 2014-09-13T04:24:44Z beach: s/PHI/Φ/ 2014-09-13T04:25:40Z beach: I know, it is not directly Lisp related, but it is related to writing an optimizing compiler for Lisp. 2014-09-13T04:26:27Z beach: In the literature, there is a reference to a tech report from 1970, where presumably SSA was introduced, but that report seems to be unavailable. 2014-09-13T04:26:45Z beach: It would be interesting to see what the inventors had to say about the subject. 2014-09-13T04:29:20Z dmiles quit (Ping timeout: 276 seconds) 2014-09-13T04:29:27Z dmiles_afk joined #lisp 2014-09-13T04:32:00Z White_Flame: beach: from page 43 of http://citi2.rice.edu/WS07/KennethZadeck.pdf 2014-09-13T04:32:19Z White_Flame: "Barry Rosen did not like the identity statements" and "A PHI-function was a more publishable name" 2014-09-13T04:33:28Z beach: White_Flame: Wow, thanks! 2014-09-13T04:33:47Z White_Flame: of course, that was just a wikipedia hit... 2014-09-13T04:35:27Z beach: It doesn't answer my question, but it's a nice additional document to my collection. 2014-09-13T04:37:23Z beach: It turns out that the method for value numbering by Zadeck et al is incomplete because of the way they treat the Φ functions. 2014-09-13T04:37:43Z beach: There is another paper with a partial fix for it, but still incomplete. 2014-09-13T04:37:43Z White_Flame: and there's a talk from Zadeck about the development of SSA here: http://edtech.rice.edu/www/?option=com_iwebcast&action=details&event=1346 2014-09-13T04:38:26Z White_Flame: likely the talk related to those slides 2014-09-13T04:38:40Z ferule joined #lisp 2014-09-13T04:38:53Z beach: Yes, I see. 2014-09-13T04:39:00Z ferule is now known as CrazyEddy 2014-09-13T04:41:00Z bgs100 quit (Quit: bgs100) 2014-09-13T04:41:15Z beach: Hmm, those video files don't seem to work. Probably not important though. 2014-09-13T04:42:05Z manfoo7` quit (Ping timeout: 272 seconds) 2014-09-13T04:42:37Z mr-foobar quit (Quit: Leaving...) 2014-09-13T04:43:41Z beach: I know what I need to do. I need to go through every significant optimization method using SSA and see in what way it uses the fact that the variables have a single assignment to them. 2014-09-13T04:44:01Z beach: That's probably a couple of weeks of work right there. 2014-09-13T04:44:09Z manfoo7` joined #lisp 2014-09-13T04:45:22Z CrazyEddy quit (Ping timeout: 252 seconds) 2014-09-13T04:45:38Z murftown quit (Quit: murftown) 2014-09-13T04:45:45Z beach: I can think of one thing: the Def-Use chains are slightly easier to represent if there is a single defining instruction. But that's a minor advantage. And there are several disadvantages. 2014-09-13T04:46:32Z jegaxd26` quit (Ping timeout: 245 seconds) 2014-09-13T04:48:03Z beach: Anyway, thanks for listening White_Flame, and sorry for the off-topic ramble. 2014-09-13T04:49:23Z madrik joined #lisp 2014-09-13T04:50:39Z Ad1e joined #lisp 2014-09-13T04:52:19Z theethicalegoist quit (Quit: Leaving) 2014-09-13T04:54:05Z madrik quit (Read error: Connection reset by peer) 2014-09-13T04:55:39Z sdemarre joined #lisp 2014-09-13T04:56:34Z madrik joined #lisp 2014-09-13T04:58:32Z tokenrove joined #lisp 2014-09-13T04:58:32Z cwandrews joined #lisp 2014-09-13T04:58:32Z effy joined #lisp 2014-09-13T04:58:32Z axion joined #lisp 2014-09-13T04:58:32Z impulse joined #lisp 2014-09-13T04:58:32Z Kabaka joined #lisp 2014-09-13T04:58:32Z scharan joined #lisp 2014-09-13T04:58:32Z _5kg joined #lisp 2014-09-13T04:58:32Z ruste joined #lisp 2014-09-13T04:58:32Z yauz joined #lisp 2014-09-13T04:58:32Z smull joined #lisp 2014-09-13T04:58:32Z pyx joined #lisp 2014-09-13T04:58:32Z johs joined #lisp 2014-09-13T04:58:32Z mutley89 joined #lisp 2014-09-13T04:58:32Z prxq joined #lisp 2014-09-13T04:58:32Z necronian joined #lisp 2014-09-13T04:58:32Z rotty joined #lisp 2014-09-13T04:59:01Z impulse quit (Max SendQ exceeded) 2014-09-13T04:59:01Z mutley89 quit (Max SendQ exceeded) 2014-09-13T04:59:01Z _5kg quit (Max SendQ exceeded) 2014-09-13T04:59:01Z Kabaka quit (Max SendQ exceeded) 2014-09-13T04:59:11Z impulse joined #lisp 2014-09-13T04:59:19Z DrCode joined #lisp 2014-09-13T04:59:24Z axion is now known as Guest99855 2014-09-13T04:59:49Z _5kg joined #lisp 2014-09-13T04:59:52Z mutley89 joined #lisp 2014-09-13T05:01:27Z CrazyEddy joined #lisp 2014-09-13T05:02:24Z Kabaka joined #lisp 2014-09-13T05:02:50Z kcj quit (Read error: Connection reset by peer) 2014-09-13T05:03:37Z aksatac___ quit (Changing host) 2014-09-13T05:03:38Z aksatac___ joined #lisp 2014-09-13T05:03:44Z endou___ quit (Changing host) 2014-09-13T05:03:44Z endou___ joined #lisp 2014-09-13T05:03:56Z blakbunnie27 quit (Changing host) 2014-09-13T05:03:56Z blakbunnie27 joined #lisp 2014-09-13T05:04:04Z Neet quit (Changing host) 2014-09-13T05:04:05Z Neet joined #lisp 2014-09-13T05:04:11Z rvirding_ quit (Changing host) 2014-09-13T05:04:11Z rvirding_ joined #lisp 2014-09-13T05:04:17Z gz quit (Changing host) 2014-09-13T05:04:17Z gz joined #lisp 2014-09-13T05:05:18Z Ad1e quit (Quit: http://liteirc.net - The future of IRC, freenode and the universe!! Take a look! It just had a new logo made for it! This is not meant to be spam, although it may be considered such. Here is a nice song to listen to! Have a nice night! https://www.youtub) 2014-09-13T05:14:50Z nell quit (Ping timeout: 276 seconds) 2014-09-13T05:16:35Z CrazyEddy quit (Ping timeout: 268 seconds) 2014-09-13T05:19:47Z codeburg joined #lisp 2014-09-13T05:21:57Z superjudge__ quit (Ping timeout: 240 seconds) 2014-09-13T05:22:40Z Adlai joined #lisp 2014-09-13T05:23:09Z TDog joined #lisp 2014-09-13T05:23:52Z wizzo quit (Ping timeout: 252 seconds) 2014-09-13T05:24:18Z superjudge___ joined #lisp 2014-09-13T05:28:18Z wizzo joined #lisp 2014-09-13T05:30:56Z kcj joined #lisp 2014-09-13T05:31:54Z Neet quit (Ping timeout: 272 seconds) 2014-09-13T05:31:56Z gz quit (Ping timeout: 187 seconds) 2014-09-13T05:31:56Z aksatac___ quit (Ping timeout: 252 seconds) 2014-09-13T05:32:07Z superjudge___ quit (Ping timeout: 272 seconds) 2014-09-13T05:32:40Z endou___ quit (Ping timeout: 252 seconds) 2014-09-13T05:32:40Z ggherdov_ quit (Ping timeout: 252 seconds) 2014-09-13T05:32:45Z Amaan quit (Ping timeout: 260 seconds) 2014-09-13T05:32:47Z gluegadget quit (Ping timeout: 260 seconds) 2014-09-13T05:33:09Z splittist quit (Ping timeout: 240 seconds) 2014-09-13T05:33:13Z _tca quit (Ping timeout: 260 seconds) 2014-09-13T05:33:14Z d4gg4d____ quit (Ping timeout: 260 seconds) 2014-09-13T05:33:14Z faheem quit (Ping timeout: 260 seconds) 2014-09-13T05:33:41Z housel joined #lisp 2014-09-13T05:33:48Z gz quit (Ping timeout: 272 seconds) 2014-09-13T05:33:51Z rvirding_ quit (Ping timeout: 268 seconds) 2014-09-13T05:34:02Z victor_lowther_ quit (Ping timeout: 272 seconds) 2014-09-13T05:34:59Z blakbunnie27 quit (Ping timeout: 276 seconds) 2014-09-13T05:35:14Z CrazyEddy joined #lisp 2014-09-13T05:36:39Z cy quit (Quit: :q!) 2014-09-13T05:38:06Z huza joined #lisp 2014-09-13T05:41:50Z Ad1e joined #lisp 2014-09-13T05:42:17Z effy quit (Ping timeout: 245 seconds) 2014-09-13T05:43:03Z Ad1e quit (Quit: A note [SIC] Adie has the nicest hairless ______ in the universe! Have a nice nite! Here is a nice song to listen to! https://www.youtube.com/watch?v=FS6oZjmbGyc) 2014-09-13T05:43:42Z effy joined #lisp 2014-09-13T05:49:28Z TDog quit (Quit: ChatZilla 0.9.90.1 [Firefox 31.0/20140716183446]) 2014-09-13T05:50:11Z TDog joined #lisp 2014-09-13T05:50:15Z TDog quit (Client Quit) 2014-09-13T05:50:30Z aftershave joined #lisp 2014-09-13T05:50:51Z TDog joined #lisp 2014-09-13T05:51:52Z CrazyEddy quit (Ping timeout: 245 seconds) 2014-09-13T05:52:07Z Grue` joined #lisp 2014-09-13T05:56:02Z mr-foobar joined #lisp 2014-09-13T05:59:45Z isoraqathedh quit (Ping timeout: 268 seconds) 2014-09-13T06:01:11Z cmack`` joined #lisp 2014-09-13T06:01:49Z slyrus joined #lisp 2014-09-13T06:02:52Z cmack` quit (Ping timeout: 240 seconds) 2014-09-13T06:04:18Z kalzz joined #lisp 2014-09-13T06:05:21Z madrik quit (Remote host closed the connection) 2014-09-13T06:19:32Z acieroid quit (Ping timeout: 250 seconds) 2014-09-13T06:20:12Z mishoo joined #lisp 2014-09-13T06:23:25Z CrazyEddy joined #lisp 2014-09-13T06:24:44Z mrSpec joined #lisp 2014-09-13T06:32:55Z CrazyEddy quit (Ping timeout: 272 seconds) 2014-09-13T06:34:16Z schjetne quit (Changing host) 2014-09-13T06:34:16Z schjetne joined #lisp 2014-09-13T06:35:58Z H4ns joined #lisp 2014-09-13T06:36:57Z isoraqathedh joined #lisp 2014-09-13T06:41:37Z vinleod quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-13T06:42:11Z Mon_Ouie joined #lisp 2014-09-13T06:42:37Z aftershave quit (Quit: Computer has gone to sleep.) 2014-09-13T06:42:50Z emma_ is now known as emma 2014-09-13T06:45:25Z resttime_ quit (Quit: resttime_) 2014-09-13T06:45:40Z resttime joined #lisp 2014-09-13T06:46:00Z Jaood joined #lisp 2014-09-13T06:49:05Z Jaood quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-13T06:56:02Z gabriel-artigue joined #lisp 2014-09-13T06:57:04Z work_op quit (Ping timeout: 246 seconds) 2014-09-13T07:00:24Z aftershave joined #lisp 2014-09-13T07:01:02Z cwandrews quit (Ping timeout: 245 seconds) 2014-09-13T07:02:10Z scottj joined #lisp 2014-09-13T07:02:22Z no0y joined #lisp 2014-09-13T07:03:19Z Shinmera joined #lisp 2014-09-13T07:03:34Z a7ucard joined #lisp 2014-09-13T07:03:50Z cwandrews joined #lisp 2014-09-13T07:04:08Z Krystof joined #lisp 2014-09-13T07:05:21Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-13T07:08:22Z Wojciech_K joined #lisp 2014-09-13T07:08:43Z Bazzie quit (Remote host closed the connection) 2014-09-13T07:09:33Z Bazzie joined #lisp 2014-09-13T07:12:23Z YDJX joined #lisp 2014-09-13T07:15:03Z Neet_ joined #lisp 2014-09-13T07:15:39Z gabriel-artigue quit (Quit: Lost terminal) 2014-09-13T07:15:43Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-13T07:16:21Z Amaan joined #lisp 2014-09-13T07:16:59Z Vutral joined #lisp 2014-09-13T07:17:09Z pt1 joined #lisp 2014-09-13T07:17:28Z faheem joined #lisp 2014-09-13T07:18:08Z gluegadget joined #lisp 2014-09-13T07:18:12Z gz joined #lisp 2014-09-13T07:18:40Z rvirding_ joined #lisp 2014-09-13T07:18:48Z blakbunnie27 joined #lisp 2014-09-13T07:19:06Z splittist_ joined #lisp 2014-09-13T07:19:11Z superjudge___ joined #lisp 2014-09-13T07:19:22Z aksatac___ joined #lisp 2014-09-13T07:19:58Z _tca joined #lisp 2014-09-13T07:20:56Z ^Posterdati^ quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-13T07:21:03Z Posterdati joined #lisp 2014-09-13T07:21:28Z nydel joined #lisp 2014-09-13T07:22:16Z Px12 joined #lisp 2014-09-13T07:24:21Z d4gg4d____ joined #lisp 2014-09-13T07:25:17Z ndrei quit (Ping timeout: 245 seconds) 2014-09-13T07:25:38Z jegaxd26 joined #lisp 2014-09-13T07:26:14Z ggherdov_ joined #lisp 2014-09-13T07:27:04Z endou____ joined #lisp 2014-09-13T07:27:57Z victor_lowther__ joined #lisp 2014-09-13T07:30:16Z Shinmera quit (Quit: brb) 2014-09-13T07:32:20Z Shinmera joined #lisp 2014-09-13T07:35:23Z MoALTz joined #lisp 2014-09-13T07:38:54Z pt1 quit (Remote host closed the connection) 2014-09-13T07:39:02Z Vutral quit (Ping timeout: 268 seconds) 2014-09-13T07:40:08Z Px12 quit (Read error: Connection reset by peer) 2014-09-13T07:42:05Z leo2007 joined #lisp 2014-09-13T07:42:06Z posterdati300 joined #lisp 2014-09-13T07:42:14Z utopian joined #lisp 2014-09-13T07:43:24Z urandom__ joined #lisp 2014-09-13T07:45:46Z wizzo quit (Ping timeout: 252 seconds) 2014-09-13T07:46:04Z isoraqathedh quit (Remote host closed the connection) 2014-09-13T07:46:13Z froggey quit (Ping timeout: 260 seconds) 2014-09-13T07:47:55Z sword`` is now known as sword 2014-09-13T07:47:57Z froggey joined #lisp 2014-09-13T07:49:25Z pt1 joined #lisp 2014-09-13T07:53:39Z isoraqathedh joined #lisp 2014-09-13T07:54:05Z kushal quit (Ping timeout: 276 seconds) 2014-09-13T07:56:45Z CrazyEddy joined #lisp 2014-09-13T07:57:56Z arenz joined #lisp 2014-09-13T07:58:24Z k-stz joined #lisp 2014-09-13T07:58:50Z wizzo joined #lisp 2014-09-13T08:01:52Z Sgeo quit (Ping timeout: 240 seconds) 2014-09-13T08:02:13Z a7ucard left #lisp 2014-09-13T08:04:07Z Harag joined #lisp 2014-09-13T08:04:44Z Sgeo joined #lisp 2014-09-13T08:04:50Z arenz quit (Ping timeout: 252 seconds) 2014-09-13T08:09:07Z utopian quit (Quit: I was just engaged to http://imgur.com/EWRz0EF http://imgur.com/lIqid4T :: Me http://i.imgur.com/giWmnEo.jpg :: http://liteirc.net - the future!) 2014-09-13T08:09:33Z Px12 joined #lisp 2014-09-13T08:10:17Z arenz joined #lisp 2014-09-13T08:10:29Z huza quit (Ping timeout: 268 seconds) 2014-09-13T08:12:00Z logand joined #lisp 2014-09-13T08:16:17Z ndrei joined #lisp 2014-09-13T08:17:16Z CrazyEddy quit (Ping timeout: 268 seconds) 2014-09-13T08:17:31Z mtxp joined #lisp 2014-09-13T08:21:13Z kpreid_ joined #lisp 2014-09-13T08:22:12Z kpreid quit (Read error: Connection reset by peer) 2014-09-13T08:22:12Z defaultxr quit (Ping timeout: 252 seconds) 2014-09-13T08:22:12Z kpreid_ is now known as kpreid 2014-09-13T08:24:01Z Xach_ joined #lisp 2014-09-13T08:24:10Z mtxp quit (Ping timeout: 252 seconds) 2014-09-13T08:24:10Z zymurgy quit (Ping timeout: 252 seconds) 2014-09-13T08:24:11Z Px12 quit (Ping timeout: 252 seconds) 2014-09-13T08:24:11Z malglim quit (Ping timeout: 252 seconds) 2014-09-13T08:24:12Z Posterdati quit (Ping timeout: 252 seconds) 2014-09-13T08:24:12Z Grue` quit (Ping timeout: 252 seconds) 2014-09-13T08:24:12Z eee-blt quit (Ping timeout: 252 seconds) 2014-09-13T08:24:12Z faheem_ quit (Ping timeout: 252 seconds) 2014-09-13T08:24:12Z Xach quit (Ping timeout: 252 seconds) 2014-09-13T08:24:17Z Posterdati joined #lisp 2014-09-13T08:24:25Z faheem_ joined #lisp 2014-09-13T08:24:47Z phadthai_ joined #lisp 2014-09-13T08:24:48Z backupthrick__ quit (Ping timeout: 252 seconds) 2014-09-13T08:24:49Z phadthai quit (Ping timeout: 252 seconds) 2014-09-13T08:24:49Z vert2 quit (Ping timeout: 252 seconds) 2014-09-13T08:24:49Z qbit quit (Ping timeout: 252 seconds) 2014-09-13T08:25:31Z arenz quit (Ping timeout: 252 seconds) 2014-09-13T08:25:31Z joga quit (Ping timeout: 252 seconds) 2014-09-13T08:25:32Z vert2 joined #lisp 2014-09-13T08:25:32Z vert2 quit (Changing host) 2014-09-13T08:25:32Z vert2 joined #lisp 2014-09-13T08:25:54Z joga joined #lisp 2014-09-13T08:26:10Z Kruppe quit (Ping timeout: 252 seconds) 2014-09-13T08:26:11Z nightfly quit (Ping timeout: 252 seconds) 2014-09-13T08:26:47Z Vivitron` joined #lisp 2014-09-13T08:26:47Z Vivitron quit (Ping timeout: 252 seconds) 2014-09-13T08:26:50Z __main__ quit (Ping timeout: 252 seconds) 2014-09-13T08:26:50Z lemoinem quit (Ping timeout: 252 seconds) 2014-09-13T08:27:42Z shka joined #lisp 2014-09-13T08:27:49Z shka: ave tux 2014-09-13T08:27:50Z qbit joined #lisp 2014-09-13T08:27:53Z Tristam quit (Ping timeout: 252 seconds) 2014-09-13T08:27:54Z shwouchk quit (Ping timeout: 252 seconds) 2014-09-13T08:27:55Z logand quit (Read error: Connection reset by peer) 2014-09-13T08:27:55Z lemoinem joined #lisp 2014-09-13T08:27:57Z drewc quit (Ping timeout: 252 seconds) 2014-09-13T08:28:01Z logand joined #lisp 2014-09-13T08:28:06Z arenz joined #lisp 2014-09-13T08:28:14Z qbit is now known as Guest76673 2014-09-13T08:28:23Z j_king quit (Ping timeout: 257 seconds) 2014-09-13T08:28:23Z malglim joined #lisp 2014-09-13T08:28:29Z drewc joined #lisp 2014-09-13T08:29:02Z eee-blt joined #lisp 2014-09-13T08:29:02Z capitaomorte quit (Ping timeout: 252 seconds) 2014-09-13T08:29:07Z j_king joined #lisp 2014-09-13T08:29:16Z zymurgy joined #lisp 2014-09-13T08:29:18Z backupthrick__ joined #lisp 2014-09-13T08:29:42Z shwouchk joined #lisp 2014-09-13T08:30:26Z __main__ joined #lisp 2014-09-13T08:30:32Z MrWoohoo joined #lisp 2014-09-13T08:31:03Z capitaomorte joined #lisp 2014-09-13T08:31:06Z beach: hello shka. 2014-09-13T08:31:55Z Kruppe joined #lisp 2014-09-13T08:34:05Z Px12 joined #lisp 2014-09-13T08:34:38Z huza joined #lisp 2014-09-13T08:34:52Z emma quit (Ping timeout: 240 seconds) 2014-09-13T08:36:56Z emma joined #lisp 2014-09-13T08:41:01Z Tristam joined #lisp 2014-09-13T08:44:04Z Kruppe quit (Read error: Connection timed out) 2014-09-13T08:46:16Z schaueho joined #lisp 2014-09-13T08:48:26Z Kruppe joined #lisp 2014-09-13T08:52:29Z nightfly joined #lisp 2014-09-13T08:57:38Z shka: so, i was wondering 2014-09-13T08:57:48Z shka: do we have data base written in cl? 2014-09-13T08:58:22Z YDJX left #lisp 2014-09-13T08:59:22Z theos joined #lisp 2014-09-13T09:00:29Z Shinmera: http://cliki.net/Database 2014-09-13T09:00:32Z Shinmera: it's not hard to google 2014-09-13T09:00:48Z shka: Shinmera: key, good point 2014-09-13T09:02:02Z ggherdov_ quit (Write error: Connection reset by peer) 2014-09-13T09:02:02Z Amaan quit (Write error: Connection reset by peer) 2014-09-13T09:03:05Z dkcl joined #lisp 2014-09-13T09:04:21Z Amaan joined #lisp 2014-09-13T09:04:44Z stassats joined #lisp 2014-09-13T09:05:27Z aftershave quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-13T09:05:42Z aftershave joined #lisp 2014-09-13T09:06:31Z angavrilov joined #lisp 2014-09-13T09:08:07Z kami joined #lisp 2014-09-13T09:08:23Z kami: Hello 2014-09-13T09:09:48Z vaporatorius joined #lisp 2014-09-13T09:11:27Z sdemarre quit (Ping timeout: 246 seconds) 2014-09-13T09:12:29Z beach: Hello kami. 2014-09-13T09:12:59Z beach: shka: I recommend Clobber: https://github.com/robert-strandh/Clobber 2014-09-13T09:13:24Z shka: beach: thanks 2014-09-13T09:13:34Z beach: Anytime. 2014-09-13T09:13:58Z dkcl: "SLIME works with GNU Emacs versions 21 and later, and with XEmacs version 21 on Unix, OSX, and Win32." Is the website out of date, or is there support for XEmacs again? 2014-09-13T09:14:33Z ggherdov_ joined #lisp 2014-09-13T09:15:36Z aftershave quit (Ping timeout: 252 seconds) 2014-09-13T09:16:46Z dkcl: Nope, "Slime requires an Emacs version of 23, or above" 2014-09-13T09:17:46Z aftershave joined #lisp 2014-09-13T09:18:32Z Guest86219 quit (Ping timeout: 252 seconds) 2014-09-13T09:18:43Z nug700 quit (Quit: bye) 2014-09-13T09:18:56Z kami: I stumbled upon sly yesterday: https://github.com/capitaomorte/sly. Anyone here who uses it regularly? 2014-09-13T09:18:57Z Wojciech_K quit (Remote host closed the connection) 2014-09-13T09:19:03Z stassats: no 2014-09-13T09:19:26Z Guest86219 joined #lisp 2014-09-13T09:19:32Z stassats: i still don't understand why it exists 2014-09-13T09:20:37Z kami: Is that a slime comitter's opinion or an unbiased one? 2014-09-13T09:20:53Z dkcl: I still don't understand why support for XEmacs was dropped 2014-09-13T09:21:06Z arenz quit (Ping timeout: 250 seconds) 2014-09-13T09:21:20Z stassats: because nobody cares for xemacs 2014-09-13T09:21:25Z Px12 quit (Ping timeout: 260 seconds) 2014-09-13T09:21:27Z dkcl huggles Xach_ for at least trying 2014-09-13T09:21:58Z dkcl: Literally nobody around offered to port it? 2014-09-13T09:22:05Z dkcl: Did they look for someone? 2014-09-13T09:22:15Z Guest86219 quit (Max SendQ exceeded) 2014-09-13T09:22:46Z H4ns: dkcl: why would one want to use xemacs nowadays? 2014-09-13T09:23:17Z dkcl: For SXEmacs, mostly 2014-09-13T09:23:50Z Kruppe quit (Ping timeout: 252 seconds) 2014-09-13T09:23:52Z dkcl: http://www.sxemacs.org/ 2014-09-13T09:24:10Z H4ns: i never heard of that before 2014-09-13T09:24:36Z dkcl: And maybe I have no idea what I'm talking about, but I don't think the differences between GNU Emacs and XEmacs are so big that maintaining a port is unthinkable and/or a pain 2014-09-13T09:24:58Z stassats: it is a pain 2014-09-13T09:25:08Z zeitue joined #lisp 2014-09-13T09:25:27Z harish_ quit (Ping timeout: 252 seconds) 2014-09-13T09:25:34Z samebchase joined #lisp 2014-09-13T09:25:41Z harish_ joined #lisp 2014-09-13T09:25:42Z dkcl: How much of it would need porting? 2014-09-13T09:25:52Z samebcha1e quit (Ping timeout: 252 seconds) 2014-09-13T09:26:16Z slassh joined #lisp 2014-09-13T09:26:23Z cmack``` joined #lisp 2014-09-13T09:26:26Z H4ns: dkcl: i guess that you'll just have to try porting it to find out 2014-09-13T09:26:46Z dkcl: H4ns: Heh, I've been getting that urge lately 2014-09-13T09:26:52Z stassats: the old xemacs compatibility layer may have been thrown out 2014-09-13T09:27:09Z H4ns: dkcl: and then, you'd either have to maintain your patches or convince the core team to take them. the latter is probably rather hard if there is no user base other than you. 2014-09-13T09:27:26Z dkcl: stassats: Might it be remotely documented anywhere? 2014-09-13T09:27:28Z H4ns: dkcl: even with a large user base, it can be rather hard to get changes accepted into slime. 2014-09-13T09:27:44Z ahungry quit (Ping timeout: 252 seconds) 2014-09-13T09:27:46Z stassats: another fork 2014-09-13T09:28:35Z dkcl: stassats: Haha, don't worry about that 2014-09-13T09:30:10Z cmack`` quit (Ping timeout: 252 seconds) 2014-09-13T09:30:11Z ahungry joined #lisp 2014-09-13T09:30:11Z vert2 quit (Ping timeout: 252 seconds) 2014-09-13T09:30:11Z kjeldahl quit (Ping timeout: 252 seconds) 2014-09-13T09:30:41Z J_Arcane: Hmm. I'm not sure I understand how struct copying works. 2014-09-13T09:30:48Z slassh quit (Ping timeout: 252 seconds) 2014-09-13T09:30:54Z stassats: slot-by-slot 2014-09-13T09:31:28Z vert2 joined #lisp 2014-09-13T09:31:33Z kjeldahl joined #lisp 2014-09-13T09:31:58Z eschulte_ quit (Ping timeout: 252 seconds) 2014-09-13T09:32:03Z wgl` quit (Remote host closed the connection) 2014-09-13T09:32:04Z shka: hmmm 2014-09-13T09:32:10Z wgl` joined #lisp 2014-09-13T09:32:17Z shka: to be honest, why we are using databases? 2014-09-13T09:32:28Z fantazo_ quit (Ping timeout: 252 seconds) 2014-09-13T09:32:28Z nisstyre quit (Ping timeout: 252 seconds) 2014-09-13T09:32:29Z shka: my project will need just like 50 megas 2014-09-13T09:32:31Z eschulte joined #lisp 2014-09-13T09:32:40Z shka: why not store it in RAM? 2014-09-13T09:32:40Z J_Arcane: In particular, I don't understand why this happens: http://paste.lisp.org/display/143700 2014-09-13T09:32:49Z shka: faster, simpler, more efficient 2014-09-13T09:32:53Z fantazo_ joined #lisp 2014-09-13T09:33:02Z J_Arcane: A copy of a struct is created, and the original struct mutated, and that mutation follows through to the copy? 2014-09-13T09:33:07Z beach: shka: That's why I recommend Clobber. It logs transactions, but otherwise everything is kept in memory. 2014-09-13T09:33:25Z shka: beach: excelent! 2014-09-13T09:33:33Z shka: oops *excellent! 2014-09-13T09:33:46Z stassats: J_Arcane: because you are not modifying the structure 2014-09-13T09:33:51Z slassh joined #lisp 2014-09-13T09:34:00Z Kruppe joined #lisp 2014-09-13T09:34:01Z stassats: you are modifying a list 2014-09-13T09:34:08Z slassh quit (Read error: Connection reset by peer) 2014-09-13T09:34:51Z slassh joined #lisp 2014-09-13T09:35:28Z slassh quit (Client Quit) 2014-09-13T09:36:06Z J_Arcane: stassats: So the struct is almost just like a pointer to the data, rather than a container? ie. changing the data directly would carry over because the struct is just a way of looking at the data. 2014-09-13T09:36:53Z beach: J_Arcane: Common Lisp uses something called "Uniform reference semantics", meaning every object is accessed through a reference. 2014-09-13T09:37:02Z beach: J_Arcane: It is not particular to structs. 2014-09-13T09:37:04Z oleo__ quit (Quit: Verlassend) 2014-09-13T09:37:14Z stassats: J_Arcane: no, it's not like this 2014-09-13T09:37:30Z beach: J_Arcane: Most modern programming languages work that way. 2014-09-13T09:38:56Z |3b|: J_Arcane: the struct is a container, it contains a list. after the copy, both structs contain the same list, you modify that list, so the change is visible in both structs 2014-09-13T09:39:28Z J_Arcane: |3b|: Ahh. Hmm. 2014-09-13T09:40:20Z slassh joined #lisp 2014-09-13T09:41:36Z J_Arcane: That is something I will have to remember. 2014-09-13T09:42:08Z cmack```` joined #lisp 2014-09-13T09:42:20Z dkcl: So for massive reading, implementing structs on top of arrays would be more efficient? 2014-09-13T09:42:57Z stassats: what? 2014-09-13T09:43:20Z dkcl: "the struct is a container, it contains a list". A list, i.e. conses 2014-09-13T09:43:52Z dkcl: Are arrays not more efficient for reading? 2014-09-13T09:44:06Z pt1 quit (Remote host closed the connection) 2014-09-13T09:44:06Z stassats: you are confused 2014-09-13T09:44:12Z beach: dkcl: "A list" is short for "A reference to the first CONS cell in a sequence of CONS cells." 2014-09-13T09:45:27Z cmack``` quit (Ping timeout: 272 seconds) 2014-09-13T09:45:29Z dkcl: I was under the understanding that arrays were more efficient than cons cells for reading data, since the cells are assured to be adjacent to each other 2014-09-13T09:45:32Z dkcl: Please unconfuse me 2014-09-13T09:45:45Z dkcl: No sarcasm intended 2014-09-13T09:45:50Z Fare joined #lisp 2014-09-13T09:45:57Z stassats: what does that have to do with structures? 2014-09-13T09:45:58Z dkcl: since the array cells * 2014-09-13T09:46:17Z pt1 joined #lisp 2014-09-13T09:46:23Z dkcl: Didn't I just read that structs are kind-of pointers to lists? 2014-09-13T09:46:33Z stassats: no 2014-09-13T09:47:04Z stassats: structures are structures 2014-09-13T09:47:06Z beach: dkcl: In this case, the slot of a structure happens to contain a list. That's all. 2014-09-13T09:47:11Z dkcl: "the struct is a container, it contains a list", i.e. "the struct is a container, it contains a reference to the first CONS cell in a sequence of CONS cells", right? 2014-09-13T09:47:29Z beach: dkcl: For this particular use case that J_Arcane told us about. 2014-09-13T09:47:38Z beach: dkcl: Not in general. 2014-09-13T09:47:40Z dkcl: Oh, my bad 2014-09-13T09:47:52Z dkcl: Sorry, I guess I woke up thick 2014-09-13T09:47:53Z shka: dkcl: not everything is list in lisp 2014-09-13T09:47:54Z stassats: structures, arrays and lists are three different data structures 2014-09-13T09:48:03Z dkcl: stassats: Yeah, I always thought so 2014-09-13T09:48:17Z dkcl: I misunderstood 2014-09-13T09:49:40Z J_Arcane: Hmm. Part of me didn't quite understand why you would want it to work that way, but thinking functionally I guess it makes sense from an efficiency of implementation standpoint? Ie. if a copied struct created a wholly new deep-copied instance it would mean more work for the garbage collector whenever you did a copy rather than just mutating some original. Is this right? 2014-09-13T09:50:11Z stassats: you can copy it however your heart desires 2014-09-13T09:50:31Z stassats: COPY-STRUCTURE is designed to work like this because it makes more sense 2014-09-13T09:50:46Z dkcl: J_Arcane: You can write your own COPY if you like 2014-09-13T09:50:54Z theos quit (Remote host closed the connection) 2014-09-13T09:52:07Z J_Arcane: Naturally. It *is* Lisp. ;) 2014-09-13T09:52:14Z |3b|: both types of copy make sense in different contexts 2014-09-13T09:52:57Z beach: Actually, copying an object rarely makes sense. 2014-09-13T09:56:05Z theos joined #lisp 2014-09-13T09:57:07Z pt1 quit (Remote host closed the connection) 2014-09-13T09:57:08Z sdemarre joined #lisp 2014-09-13T09:57:15Z oleo joined #lisp 2014-09-13T09:58:12Z J_Arcane: handling structs functionally is actually something I'm still a little unclear on, admittedly. 2014-09-13T09:58:37Z |3b|: CL doesn't usually worry about doing things "functionally" 2014-09-13T09:58:46Z J_Arcane: This is true. I do though. ;) 2014-09-13T09:59:14Z stassats: then you chose the wrong language 2014-09-13T09:59:36Z hlavaty joined #lisp 2014-09-13T09:59:41Z JuanDaugherty joined #lisp 2014-09-13T10:00:49Z nisstyre joined #lisp 2014-09-13T10:00:51Z wasamasa: lisp ≠ functional programming 2014-09-13T10:01:39Z shka: wasamasa: if you want to... 2014-09-13T10:01:53Z wasamasa: shka: of course, but it's not there by default 2014-09-13T10:01:59Z kuzy000_ joined #lisp 2014-09-13T10:02:02Z J_Arcane: Oh I know. 2014-09-13T10:02:17Z smull quit (Ping timeout: 245 seconds) 2014-09-13T10:02:31Z wasamasa: if I'd want that, I'd probably choose haskell 2014-09-13T10:02:38Z beach: J_Arcane: I am curious, if you want to treat structs "functionally", why do you need to copy them? 2014-09-13T10:03:07Z johs quit (Ping timeout: 245 seconds) 2014-09-13T10:03:08Z smull joined #lisp 2014-09-13T10:03:50Z beach: One of the (few?) advantages of functional programming is that there are no side effects, so you don't ever have to worry about copying data. 2014-09-13T10:03:55Z johs joined #lisp 2014-09-13T10:04:27Z J_Arcane: beach: Well, to use an example, I wrote a VM in Racket for a simple 8-bit stack machine. To "get it done" I relied heavily on state, ie. a single instance of a struct and a couple vectors that I mutated freely to keep track. Whereas it seems like the saner way to do it functionally would've been to instead make functions take that struct and pass a new struct? 2014-09-13T10:05:08Z stassats: you mean a slower way? 2014-09-13T10:05:15Z dkcl: J_Arcane: What's the point? 2014-09-13T10:05:32Z dkcl: J_Arcane: Is this because of multithreading concerns? 2014-09-13T10:05:34Z beach: J_Arcane: Passing a new struct is different from copying an existing one. 2014-09-13T10:05:55Z dkcl: That too, as I painfully remembered yesterday 2014-09-13T10:06:02Z leo2007 quit (Ping timeout: 245 seconds) 2014-09-13T10:06:13Z kuzy000_ quit (Read error: Connection reset by peer) 2014-09-13T10:06:44Z J_Arcane: dkcl: More about refactoring and maintenance concerns: Relying heavily on side-effects and universal state complicates the code and creates dependencies that are at times hard to work around once a project gets big. (I had the same problem with a Roguelike engine I worked on) 2014-09-13T10:08:14Z dkcl: J_Arcane: You can parse slots and generate new structs, comparing them slot by slot, I guess 2014-09-13T10:08:19Z dkcl: parse structs * 2014-09-13T10:08:43Z dkcl: But CL is generally very stateful 2014-09-13T10:09:35Z pnpuff joined #lisp 2014-09-13T10:10:28Z madrik joined #lisp 2014-09-13T10:12:51Z backupthrick__ is now known as backupthrick 2014-09-13T10:14:20Z pt1 joined #lisp 2014-09-13T10:19:22Z DGASAU` quit (Ping timeout: 268 seconds) 2014-09-13T10:20:03Z DGASAU` joined #lisp 2014-09-13T10:20:37Z jegaxd26 quit (Remote host closed the connection) 2014-09-13T10:20:54Z jegaxd26 joined #lisp 2014-09-13T10:23:33Z pgomes joined #lisp 2014-09-13T10:25:12Z acieroid joined #lisp 2014-09-13T10:26:53Z aftershave quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-13T10:27:17Z joga quit (Ping timeout: 245 seconds) 2014-09-13T10:28:26Z joga joined #lisp 2014-09-13T10:32:24Z phao joined #lisp 2014-09-13T10:33:43Z edgar-rft joined #lisp 2014-09-13T10:36:46Z BitPuffin joined #lisp 2014-09-13T10:38:09Z joga quit (Changing host) 2014-09-13T10:38:09Z joga joined #lisp 2014-09-13T10:41:39Z resttime quit (Quit: resttime) 2014-09-13T10:42:34Z ggole joined #lisp 2014-09-13T10:42:43Z Longlius quit (Quit: Leaving) 2014-09-13T10:45:02Z Guest99855 quit (Quit: WeeChat 0.4.3) 2014-09-13T10:45:39Z axion joined #lisp 2014-09-13T10:47:44Z pyx quit (Quit: WeeChat 0.4.3) 2014-09-13T10:47:54Z hiroakip joined #lisp 2014-09-13T10:50:16Z Nizumzen joined #lisp 2014-09-13T10:51:32Z gz quit (Ping timeout: 183 seconds) 2014-09-13T10:51:48Z dkcl: J_Arcane: Maybe you could do it the erlang way, using LET and tail-recursive functions 2014-09-13T10:52:02Z rvirding_ quit (Ping timeout: 252 seconds) 2014-09-13T10:52:17Z superjudge___ quit (Ping timeout: 245 seconds) 2014-09-13T10:52:36Z _tca quit (Ping timeout: 272 seconds) 2014-09-13T10:52:36Z faheem quit (Ping timeout: 272 seconds) 2014-09-13T10:52:44Z dkcl: J_Arcane: Where each function has a temporary struct, and whatever changes it actually makes it call itself with a different temporary struct 2014-09-13T10:53:18Z dkcl: Call itself or have something call it, that's up to you 2014-09-13T10:54:08Z gz quit (Ping timeout: 276 seconds) 2014-09-13T10:54:30Z faheem joined #lisp 2014-09-13T10:54:39Z SHODAN joined #lisp 2014-09-13T10:55:26Z slassh quit (Ping timeout: 276 seconds) 2014-09-13T10:56:11Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-13T10:57:18Z JuanDaugherty quit (Ping timeout: 250 seconds) 2014-09-13T10:57:30Z zacharias joined #lisp 2014-09-13T10:58:04Z gz joined #lisp 2014-09-13T10:58:31Z rvirding_ joined #lisp 2014-09-13T10:59:08Z superjudge___ joined #lisp 2014-09-13T10:59:40Z ggole quit (Read error: Connection timed out) 2014-09-13T11:00:12Z ggole joined #lisp 2014-09-13T11:00:46Z _tca joined #lisp 2014-09-13T11:01:08Z puchacz joined #lisp 2014-09-13T11:01:33Z jusss joined #lisp 2014-09-13T11:03:02Z slassh joined #lisp 2014-09-13T11:06:32Z jegaxd26` joined #lisp 2014-09-13T11:07:47Z jegaxd26 quit (Ping timeout: 276 seconds) 2014-09-13T11:10:44Z slassh quit (Remote host closed the connection) 2014-09-13T11:13:30Z SHODAN quit (Remote host closed the connection) 2014-09-13T11:15:30Z impulse quit (Ping timeout: 252 seconds) 2014-09-13T11:20:12Z nipra joined #lisp 2014-09-13T11:21:34Z malice joined #lisp 2014-09-13T11:23:18Z kcj quit (Read error: Connection reset by peer) 2014-09-13T11:25:55Z johs_ joined #lisp 2014-09-13T11:26:34Z drewc1 joined #lisp 2014-09-13T11:26:58Z njsg_ joined #lisp 2014-09-13T11:27:34Z eschulte_ joined #lisp 2014-09-13T11:29:35Z johs quit (Ping timeout: 252 seconds) 2014-09-13T11:29:35Z eschulte quit (Ping timeout: 252 seconds) 2014-09-13T11:29:35Z drewc quit (Ping timeout: 252 seconds) 2014-09-13T11:29:38Z njsg quit (Ping timeout: 252 seconds) 2014-09-13T11:29:38Z Kruppe quit (Ping timeout: 252 seconds) 2014-09-13T11:29:38Z backupthrick quit (Ping timeout: 252 seconds) 2014-09-13T11:29:38Z stopbyte quit (Ping timeout: 252 seconds) 2014-09-13T11:29:38Z girrig quit (Ping timeout: 252 seconds) 2014-09-13T11:29:40Z mutley89 quit (Ping timeout: 268 seconds) 2014-09-13T11:29:48Z stopbit joined #lisp 2014-09-13T11:29:55Z backupthrick joined #lisp 2014-09-13T11:30:00Z anannie joined #lisp 2014-09-13T11:30:03Z anannie quit (Changing host) 2014-09-13T11:30:03Z anannie joined #lisp 2014-09-13T11:31:04Z huza quit (Quit: WeeChat 0.3.8) 2014-09-13T11:31:09Z girrig joined #lisp 2014-09-13T11:31:54Z pt1 quit (Remote host closed the connection) 2014-09-13T11:33:15Z Ragnaroek joined #lisp 2014-09-13T11:34:10Z Kruppe joined #lisp 2014-09-13T11:35:12Z zacharias quit (Quit: Bye!) 2014-09-13T11:37:52Z theos quit (Ping timeout: 252 seconds) 2014-09-13T11:45:24Z nipra quit (Read error: Connection reset by peer) 2014-09-13T11:45:53Z Karl_Dscc joined #lisp 2014-09-13T11:47:35Z leo2007 joined #lisp 2014-09-13T11:48:16Z SHODAN joined #lisp 2014-09-13T11:48:56Z kuzy000 joined #lisp 2014-09-13T11:52:56Z jusss quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-13T11:55:22Z Ragnaroek quit (Ping timeout: 250 seconds) 2014-09-13T11:55:53Z Fare quit (Ping timeout: 276 seconds) 2014-09-13T12:00:11Z pnpuff left #lisp 2014-09-13T12:05:09Z azynheira joined #lisp 2014-09-13T12:07:09Z pgomes quit (Ping timeout: 246 seconds) 2014-09-13T12:12:49Z theos joined #lisp 2014-09-13T12:14:00Z jhigdon joined #lisp 2014-09-13T12:14:21Z jhigdon is now known as jonh 2014-09-13T12:14:26Z mr-foobar quit (Quit: Leaving...) 2014-09-13T12:16:02Z hiroakip quit (Ping timeout: 276 seconds) 2014-09-13T12:19:38Z mrSpec quit (Ping timeout: 250 seconds) 2014-09-13T12:21:36Z nipra joined #lisp 2014-09-13T12:22:29Z capitaomorte` joined #lisp 2014-09-13T12:22:31Z anannie quit (Ping timeout: 252 seconds) 2014-09-13T12:22:31Z capitaomorte quit (Ping timeout: 252 seconds) 2014-09-13T12:22:54Z mrSpec joined #lisp 2014-09-13T12:23:52Z anannie joined #lisp 2014-09-13T12:23:52Z anannie quit (Changing host) 2014-09-13T12:23:52Z anannie joined #lisp 2014-09-13T12:24:59Z lambda joined #lisp 2014-09-13T12:25:19Z shka: dear lispers 2014-09-13T12:25:52Z shka: common lisp exception system is awesome 2014-09-13T12:26:37Z beach: Yeah, we know. 2014-09-13T12:26:50Z prxq: it's cool indeed :) 2014-09-13T12:27:22Z Beetny quit (Ping timeout: 240 seconds) 2014-09-13T12:28:06Z fantazo_ quit (Quit: Verlassend) 2014-09-13T12:30:19Z azynheira quit (Quit: Leaving) 2014-09-13T12:30:35Z pt1 joined #lisp 2014-09-13T12:30:38Z pt1 quit (Remote host closed the connection) 2014-09-13T12:35:09Z shka: ok boys, stupid question now 2014-09-13T12:35:30Z shka: how to correctly split source code into few files? 2014-09-13T12:35:40Z wasamasa: just write less code 2014-09-13T12:36:11Z stassats: shka: use ASDF 2014-09-13T12:36:35Z shka: stassats: some kind of good tutorial avaible? 2014-09-13T12:36:45Z stassats: minion: xach-asdf? 2014-09-13T12:36:45Z minion: xach-asdf: Xach's article "Making a small Common Lisp project" can be found at http://xach.livejournal.com/130040.html 2014-09-13T12:37:02Z shka: stassats: thank you very much 2014-09-13T12:39:44Z EvW joined #lisp 2014-09-13T12:42:03Z cadeskao joined #lisp 2014-09-13T12:42:08Z cadeskao quit (Client Quit) 2014-09-13T12:44:00Z stassats quit (Read error: No route to host) 2014-09-13T12:46:42Z Xach_: dkcl: what did I try? 2014-09-13T12:51:04Z Shinmera: shka: I also wrote an article on getting started with ASDF http://blog.tymoon.eu/article/267 2014-09-13T12:51:45Z shka: Shinmera: it is nice that you wrote it 2014-09-13T12:51:48Z shka: i will read it 2014-09-13T12:52:10Z dkcl: Xach_: For SLIME developers not to lightly drop XEmacs support 2014-09-13T12:52:18Z dkcl: Xach_: At least I recall so on the devel mailing list 2014-09-13T12:53:43Z zacharias joined #lisp 2014-09-13T12:54:29Z khisanth_ joined #lisp 2014-09-13T12:57:29Z Khisanth quit (Ping timeout: 260 seconds) 2014-09-13T12:58:02Z Xach_: Oh. I don't remember that, sorry. The only person I knew who cared was rtoym. 2014-09-13T13:00:38Z lambda quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-13T13:01:55Z Xach_ is now known as Xach 2014-09-13T13:01:59Z Xach quit (Changing host) 2014-09-13T13:01:59Z Xach joined #lisp 2014-09-13T13:02:11Z ndrei quit (Ping timeout: 276 seconds) 2014-09-13T13:02:24Z LiamH joined #lisp 2014-09-13T13:06:17Z vanila joined #lisp 2014-09-13T13:09:16Z stassats joined #lisp 2014-09-13T13:13:14Z rme joined #lisp 2014-09-13T13:25:36Z pt1 joined #lisp 2014-09-13T13:27:07Z segv- quit (Ping timeout: 272 seconds) 2014-09-13T13:28:16Z JuanDaugherty joined #lisp 2014-09-13T13:30:03Z Grue` joined #lisp 2014-09-13T13:33:50Z wasamasa: hmm 2014-09-13T13:33:59Z wasamasa: there isn't anything like ido or helm for stumpwm yet, right? 2014-09-13T13:34:17Z wasamasa: as in, a more efficient way for selecting things such as the window to switch to 2014-09-13T13:34:25Z wasamasa: or just viewing data 2014-09-13T13:34:46Z nyef joined #lisp 2014-09-13T13:39:50Z pt1 quit (Remote host closed the connection) 2014-09-13T13:42:02Z nydel: i'm trying to get my system's external IP from my common lisp, any advice on that? please and thank you 2014-09-13T13:42:44Z nyef: nydel: (drakma:http-request "http://whatsmyip.com/") ? 2014-09-13T13:42:59Z nyef: Or did you mean the address of the public network interface? 2014-09-13T13:43:01Z nydel: nyef: awww do i have to 2014-09-13T13:43:03Z optikalmouser joined #lisp 2014-09-13T13:43:13Z nyef: (As opposed to your IP on the wider internet.) 2014-09-13T13:43:27Z wasamasa: nyef: well, uh 2014-09-13T13:43:34Z stassats: ITYM (drakma:http-request "http://ifconfig.me/host") 2014-09-13T13:43:35Z wasamasa: nydel: no, you 2014-09-13T13:43:37Z Grue`: http://stackoverflow.com/questions/3097589/getting-my-public-ip-via-api 2014-09-13T13:43:40Z nydel: wider. it's a chat client that needs to send the server its info 2014-09-13T13:44:00Z Grue`: http://icanhazip.com/ looks easy 2014-09-13T13:44:05Z nydel: i'm trying to avoid loading up drakma 2014-09-13T13:44:14Z zalatovo joined #lisp 2014-09-13T13:44:24Z nydel: Grue`: this is a bit neater but it's the same concept 2014-09-13T13:44:30Z nyef: Okay, trivial-http-client or whatever it's called, then? 2014-09-13T13:44:32Z wasamasa: nydel: only other clients will know what your external ip address is 2014-09-13T13:45:07Z wasamasa: nydel: so, icanhazip.com sends you the one it receives from that request 2014-09-13T13:45:11Z nydel: i already depend on usocket for this one, is it silly to write a http request out that way & avoid loading trivial-http or drakma? 2014-09-13T13:45:50Z Shinmera: What's so bad about loading drakma. 2014-09-13T13:46:07Z wasamasa: what's so bad about using a maximalistic language? 2014-09-13T13:46:34Z dkcl: What's so bad about usocket 2014-09-13T13:46:44Z Grue`: i used to have trouble with drakma because it tries to load libssl and it was a PITA to install a compatible version 2014-09-13T13:46:45Z nydel: nothing's wrong with drakma, it's a wonderful package/system i adore. i just don't want dependencies i can avoid. 2014-09-13T13:47:18Z stassats: if you need to know your IP, you're probably doing something wrong 2014-09-13T13:47:33Z dkcl: stassats: Haha 2014-09-13T13:47:39Z InvalidCo: hmm 2014-09-13T13:48:21Z lifenoodles_ quit (Quit: ZNC - http://znc.in) 2014-09-13T13:48:34Z nydel: stassats: that is probably right actually. i have a server handling this chat database. and the clients i wanted to send their IP addrs to the server so the server knows where to respond 2014-09-13T13:48:47Z nydel: stassats: i feel like there is something inherently flawwed there but i can't pinpoint it 2014-09-13T13:48:51Z lifenoodles joined #lisp 2014-09-13T13:48:59Z stassats: have you tried using TCP/IP? 2014-09-13T13:49:09Z InvalidCo: is the only way to overload arithmetic operations shadowing those symbols? 2014-09-13T13:49:22Z nyef: Mmm. The server knows where to respond: The address of the other end of the socket. 2014-09-13T13:49:29Z stassats: InvalidCo: that's not really overloading, but yes 2014-09-13T13:49:34Z InvalidCo: I think I've seen SBCL referencing some generic-+-function in the past or something along the lines of it 2014-09-13T13:49:35Z wasamasa: nydel: just let them reply to where the request came from? 2014-09-13T13:49:41Z InvalidCo: stassats: you know what I meant 2014-09-13T13:50:10Z nydel: nyef: that's right, if the server can pull that information then i don't need to do it this way 2014-09-13T13:50:16Z stassats: InvalidCo: (loop maximizing y) won't work with that kind of "overloading" 2014-09-13T13:50:53Z InvalidCo: stassats: but is there another way? 2014-09-13T13:50:59Z stassats: not really 2014-09-13T13:51:15Z InvalidCo: I need to implement this type of variables which sometimes have precise values 2014-09-13T13:51:17Z mwargh joined #lisp 2014-09-13T13:51:40Z stassats: that sentence is a bit strange 2014-09-13T13:51:41Z InvalidCo: and sometimes the comp only has knowledge of past mutations on an unknown 2014-09-13T13:51:58Z InvalidCo: for example, a variable has an unknown value 2014-09-13T13:52:12Z InvalidCo: then that unknown is logically anded with #x1F 2014-09-13T13:52:30Z InvalidCo: so the comp can make all sorts of assumptions about it's value later 2014-09-13T13:52:46Z InvalidCo: guess I'll just write a new generic function and try to remember to use it instead of + 2014-09-13T13:54:07Z nyef: InvalidCo: Wait, wait... what on earth are you doing that you have an AUDIT TRAIL of operations, but not the original values? 2014-09-13T13:54:19Z nydel: i have a 'server-socket' listening for connections. so if a client does "open socket-stream to server, push this data through the socket, close the socket & listen on another" .... if i look around in usocket API will i find a way where the server knows who to respond to 2014-09-13T13:54:51Z InvalidCo: nyef: a compiler for some tricky situations 2014-09-13T13:55:07Z stassats: nydel: you don't need to look around 2014-09-13T13:55:15Z nyef: Okay, so this already sounds like a type-derivation problem. 2014-09-13T13:55:23Z djinni` quit (*.net *.split) 2014-09-13T13:55:25Z renard_ quit (*.net *.split) 2014-09-13T13:55:25Z stoned quit (*.net *.split) 2014-09-13T13:55:29Z xristos quit (*.net *.split) 2014-09-13T13:55:29Z gabot quit (*.net *.split) 2014-09-13T13:55:29Z redline6561 quit (*.net *.split) 2014-09-13T13:55:29Z nightshade427 quit (*.net *.split) 2014-09-13T13:55:29Z zmyrgel quit (*.net *.split) 2014-09-13T13:55:29Z micro_ quit (*.net *.split) 2014-09-13T13:55:29Z newcup quit (*.net *.split) 2014-09-13T13:55:29Z foom quit (*.net *.split) 2014-09-13T13:55:29Z sbryant quit (*.net *.split) 2014-09-13T13:55:29Z someone quit (*.net *.split) 2014-09-13T13:55:29Z |3b| quit (*.net *.split) 2014-09-13T13:55:29Z Ober_ quit (*.net *.split) 2014-09-13T13:55:29Z vhost- quit (*.net *.split) 2014-09-13T13:55:29Z ChibaPet quit (*.net *.split) 2014-09-13T13:55:29Z antoszka quit (*.net *.split) 2014-09-13T13:55:29Z PuercoPop quit (*.net *.split) 2014-09-13T13:55:29Z oconnore quit (*.net *.split) 2014-09-13T13:55:29Z whartung quit (*.net *.split) 2014-09-13T13:55:30Z oconnore joined #lisp 2014-09-13T13:55:30Z sbryant joined #lisp 2014-09-13T13:55:31Z Ober joined #lisp 2014-09-13T13:55:33Z PuercoPop joined #lisp 2014-09-13T13:55:33Z Shinmera: nydel: Why are you closing the socket 2014-09-13T13:55:33Z antoszka joined #lisp 2014-09-13T13:55:33Z s0meone joined #lisp 2014-09-13T13:55:33Z nightshade427_ joined #lisp 2014-09-13T13:55:37Z micro joined #lisp 2014-09-13T13:55:37Z zmyrgel joined #lisp 2014-09-13T13:55:40Z ChibaPet joined #lisp 2014-09-13T13:55:41Z redline6561 joined #lisp 2014-09-13T13:55:45Z Shinmera quit (*.net *.split) 2014-09-13T13:55:46Z Krystof quit (*.net *.split) 2014-09-13T13:55:49Z Mon_Ouie quit (*.net *.split) 2014-09-13T13:55:49Z mishoo quit (*.net *.split) 2014-09-13T13:55:49Z effy quit (*.net *.split) 2014-09-13T13:55:49Z _5kg quit (*.net *.split) 2014-09-13T13:55:49Z Jubb quit (*.net *.split) 2014-09-13T13:55:49Z Bike quit (*.net *.split) 2014-09-13T13:55:49Z Oddity quit (*.net *.split) 2014-09-13T13:55:49Z InvalidCo quit (*.net *.split) 2014-09-13T13:55:49Z s_e quit (*.net *.split) 2014-09-13T13:55:49Z arbscht quit (*.net *.split) 2014-09-13T13:55:49Z zacts quit (*.net *.split) 2014-09-13T13:55:49Z pjb`` quit (*.net *.split) 2014-09-13T13:55:49Z H4ns quit (*.net *.split) 2014-09-13T13:55:49Z eazar001 quit (*.net *.split) 2014-09-13T13:55:49Z sivoais quit (*.net *.split) 2014-09-13T13:55:49Z teiresias quit (*.net *.split) 2014-09-13T13:55:49Z jackdaniel quit (*.net *.split) 2014-09-13T13:55:50Z brucem quit (*.net *.split) 2014-09-13T13:55:50Z K1rk quit (*.net *.split) 2014-09-13T13:55:50Z smithzv_ quit (*.net *.split) 2014-09-13T13:55:50Z drdo quit (*.net *.split) 2014-09-13T13:55:50Z pchrist quit (*.net *.split) 2014-09-13T13:55:51Z Guest22814 quit (*.net *.split) 2014-09-13T13:55:51Z honkfestival quit (*.net *.split) 2014-09-13T13:55:53Z whartung joined #lisp 2014-09-13T13:55:53Z foom joined #lisp 2014-09-13T13:55:53Z zalatovo quit (Quit: WeeChat 1.0) 2014-09-13T13:55:53Z teiresias joined #lisp 2014-09-13T13:55:53Z jackdaniel joined #lisp 2014-09-13T13:55:54Z InvalidCo joined #lisp 2014-09-13T13:55:54Z honkfestival joined #lisp 2014-09-13T13:55:57Z Bike joined #lisp 2014-09-13T13:55:57Z sivoais joined #lisp 2014-09-13T13:55:57Z gabot joined #lisp 2014-09-13T13:55:57Z vhost- joined #lisp 2014-09-13T13:55:57Z pjb`` joined #lisp 2014-09-13T13:56:00Z drdo joined #lisp 2014-09-13T13:56:01Z micro is now known as Guest31443 2014-09-13T13:56:05Z smithzv joined #lisp 2014-09-13T13:56:06Z Shinmera joined #lisp 2014-09-13T13:56:07Z arbscht joined #lisp 2014-09-13T13:56:08Z eazar001 joined #lisp 2014-09-13T13:56:08Z jdz joined #lisp 2014-09-13T13:56:08Z mishoo joined #lisp 2014-09-13T13:56:09Z zacts joined #lisp 2014-09-13T13:56:10Z s_e joined #lisp 2014-09-13T13:56:21Z brucem joined #lisp 2014-09-13T13:56:25Z smithzv is now known as Guest12481 2014-09-13T13:56:26Z kjeldahl quit (*.net *.split) 2014-09-13T13:56:27Z pillton quit (*.net *.split) 2014-09-13T13:56:27Z cibs quit (*.net *.split) 2014-09-13T13:56:27Z zz_karupa quit (*.net *.split) 2014-09-13T13:56:28Z Jubb joined #lisp 2014-09-13T13:56:30Z stoned joined #lisp 2014-09-13T13:56:32Z _5kg joined #lisp 2014-09-13T13:56:35Z pchrist joined #lisp 2014-09-13T13:56:43Z Mon_Ouie joined #lisp 2014-09-13T13:56:51Z brucem quit (Changing host) 2014-09-13T13:56:52Z brucem joined #lisp 2014-09-13T13:56:57Z nydel: well i'm a bit confused overall is why probably. i need the clients listening with server-socket-like sockets so the server can push new data real-time 2014-09-13T13:57:03Z |3b|`` joined #lisp 2014-09-13T13:57:07Z effy joined #lisp 2014-09-13T13:57:16Z K1rk joined #lisp 2014-09-13T13:57:45Z blakbunnie27 quit (Ping timeout: 246 seconds) 2014-09-13T13:57:45Z nydel: so i'm having the clients send their requests and i wanted whatever the response is to just be added to the public "send this info to all connected" pile 2014-09-13T13:57:47Z stassats: you need to keep it open 2014-09-13T13:57:53Z nyef: nydel: Leave the connections open in the first place, it'll be faster as you won't have TCP setup costs on each event, and it's a lot easier to keep track of where each client is. 2014-09-13T13:58:06Z kjeldahl joined #lisp 2014-09-13T13:58:12Z stassats: connecting won't just work 2014-09-13T13:58:25Z nyef: As you start running out of file descriptors, *THEN* start getting clever. 2014-09-13T13:58:25Z stassats: NAT, firewalls, etc. 2014-09-13T13:58:52Z nyef: Connecting back from the server to the client is SO '80s. Or even '70s. 2014-09-13T13:58:57Z |3b|`` is now known as |3b| 2014-09-13T13:59:51Z krid` joined #lisp 2014-09-13T14:00:04Z madrik quit (Ping timeout: 272 seconds) 2014-09-13T14:00:05Z victor_lowther__ quit (Ping timeout: 272 seconds) 2014-09-13T14:00:18Z blakbunnie27 joined #lisp 2014-09-13T14:00:23Z nydel: i can tell it's not quite right nyef yeah. i wish i could see an example of a usocket client function connecting to a server-socket and staying open. 2014-09-13T14:00:26Z madrik joined #lisp 2014-09-13T14:00:46Z nydel: i think that's really all the problem is, i'm getting lost in concept & syntax at the same time & just need an example. 2014-09-13T14:00:50Z pt1 joined #lisp 2014-09-13T14:00:52Z stassats: just don't close 2014-09-13T14:02:09Z victor_lowther__ joined #lisp 2014-09-13T14:02:15Z nyef: Of course, you're about to get into the wild world of non-blocking I/O generally. 2014-09-13T14:02:23Z nydel: stassats: i can connect to the server using a telnet client & it works fine. that's the type of connection i need to open from the client but i just don't know what type of socket that is i guess? 2014-09-13T14:02:47Z stassats: tcp? 2014-09-13T14:03:01Z nyef: Definitely TCP. 2014-09-13T14:03:30Z nydel: the usocket api socket-send only takes datagram 2014-09-13T14:04:10Z nyef: It's sounding more and more like you need to read some books by Stevens. Possibly APUE, definitely some of the networking books. 2014-09-13T14:04:14Z nydel: i'm looking at this, http://common-lisp.net/project/usocket/api-docs.shtml if you wouldn't mind pointing me at which function in the API opens the tcp socket i need from the client 2014-09-13T14:04:31Z stassats: nydel: tcp has streams 2014-09-13T14:04:50Z stassats: accept? 2014-09-13T14:04:52Z Shinmera: nydel: You should probably first read about TCP server/client basics. 2014-09-13T14:05:01Z nyef: nydel: Look at DRAKMA, TRIVIAL-HTTP-CLIENT (or whatever it's called), and so on for examples. 2014-09-13T14:05:04Z stassats: isn't there an echo server example? 2014-09-13T14:05:40Z nyef: Seriously, these are fundamental questions, almost any good network programming tutorial should cover them. 2014-09-13T14:05:48Z nydel: i have read everything, the theory, and the API for this particular system. i'm having trouble linking them. i'm just like one tiny step away 2014-09-13T14:06:00Z stassats: find an echo server and play with it 2014-09-13T14:06:12Z nydel: that's a great idea stassats 2014-09-13T14:06:43Z stassats: and an echo client 2014-09-13T14:06:59Z nyef: Hrm. I had some horrible fundamental issue with usocket a while back, something to do with already having a file descriptor that I wanted to use as a socket... 2014-09-13T14:07:57Z nydel: yeah i found a few echo server/clients even a few that use usocket itself, this is what ineed to see. thanks everyone 2014-09-13T14:08:17Z Ven joined #lisp 2014-09-13T14:09:38Z nydel: the echo server is essentially just with a (handle-tcp-request) that just takes the input stream and sends it back, is that about right? 2014-09-13T14:09:39Z madrik quit (Ping timeout: 246 seconds) 2014-09-13T14:09:49Z nydel: so if i can do that i can make a more complex handler 2014-09-13T14:10:12Z madrik joined #lisp 2014-09-13T14:10:45Z madrik quit (Client Quit) 2014-09-13T14:11:23Z madrik joined #lisp 2014-09-13T14:12:04Z eskatrem joined #lisp 2014-09-13T14:13:42Z MouldyOldBones joined #lisp 2014-09-13T14:13:51Z eskatrem: Hey, I am making an app in python that does lots of AI stuff, and I am considering porting the AI part to common lisp. I only dabbed with it, is there something I should know/ be wary of? 2014-09-13T14:13:56Z pt1 quit (Remote host closed the connection) 2014-09-13T14:14:08Z stassats: you should know common lisp 2014-09-13T14:14:43Z nyef: Modern AI is all Java anyway, you should port to that instead. 2014-09-13T14:14:47Z eskatrem: I know it enough to do what my python code is doing 2014-09-13T14:15:00Z vanila: eskatrem, that should work fine - the book PAIP might be useful 2014-09-13T14:15:01Z stassats: why do you need to rewrite it then? 2014-09-13T14:15:44Z eskatrem: I am interested in porting it to CL, because CL, compared to python, has: macros - I may not be using them but it can be potentially useful, more debugging tools, and is faster 2014-09-13T14:16:16Z stassats: fair enough 2014-09-13T14:16:19Z eskatrem: vanila: yeah, I am reading that book now actually, it's really well written 2014-09-13T14:16:38Z madrik quit (Ping timeout: 250 seconds) 2014-09-13T14:17:07Z madrik joined #lisp 2014-09-13T14:17:17Z eskatrem: when I say "AI", it's an app that does maths exercises for high school students, I did all in python, but the more I was using it the more I found python limited and slow 2014-09-13T14:17:28Z madrik quit (Remote host closed the connection) 2014-09-13T14:17:51Z nyef: ... Wouldn't the point be to have the high school students do the math problems, not the app? 2014-09-13T14:18:23Z oleo: heh 2014-09-13T14:18:25Z nyef: ("Dear math, I am not the ELIZA-DOCTOR program. Solve your own problems.") 2014-09-13T14:18:50Z eskatrem: nyef: yeah, the students to the math problems but the app does the personalized correction (which may require some AI, depending what you mean by that) 2014-09-13T14:19:31Z cmack```` quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-13T14:19:40Z shka: eskatrem: this is interesting 2014-09-13T14:19:59Z eskatrem: shka: www.magako.com if you are interested 2014-09-13T14:19:59Z vanila: yeah it will be better in common lisp 2014-09-13T14:20:02Z nyef: Okay, so it's a computer-based-training system, where there's a model of how to solve the problems and of where and how that model breaks down? 2014-09-13T14:21:00Z nyef: So, that's kindof neat, but your implementation options are likely more constrained by the desired deployment environments than anything else. 2014-09-13T14:21:52Z eskatrem: I checked PAIP couple of times ago and knew that there was a bot that can have conversation inside, which I may need, so I planned to write that part in CL, and then I read the debugging capabilities of CL and was like "OMG why doesn't python have trace??" 2014-09-13T14:22:12Z stassats: minion: do you like PAIP? 2014-09-13T14:22:14Z 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 like paip 2014-09-13T14:22:39Z shka: stassats: :D 2014-09-13T14:22:46Z shka: minion: 42? 2014-09-13T14:22:46Z minion: Sorry, I couldn't find anything in the database for ``42''. 2014-09-13T14:22:52Z shka: minion: 42 2014-09-13T14:22:52Z minion: Sorry, I couldn't find anything in the database for ``42''. 2014-09-13T14:23:07Z shka: minion: what's the answer to the ultimate question? 2014-09-13T14:23:07Z minion: maybe you need to ask my master, chandler - he knows a lot 2014-09-13T14:23:11Z pt1 joined #lisp 2014-09-13T14:23:11Z eskatrem: nyef: yeah, I thought about that, for now it's all web so I can use whatever I want, but in the future I may want to do a mobile version of it - in python I could use kivy and it would be easy-ish to port it to mobile, but with CL I don't know 2014-09-13T14:23:13Z nyef: shka: Please stop playing with the bot. 2014-09-13T14:23:22Z shka: sorry ^^ 2014-09-13T14:23:34Z krid` is now known as krid 2014-09-13T14:23:45Z nyef: (Or should I say, "electronically composed conversationalist"?) 2014-09-13T14:24:48Z eskatrem: "electronically composed conversationalist"? 2014-09-13T14:24:59Z J_Arcane: eskatrem: CL debugging and error handling is a marvel for me too. Really don't know of anything else like it. 2014-09-13T14:25:22Z nyef: minion: Are you a bot? 2014-09-13T14:25:22Z minion: i'm not a bot. i prefer the term ``electronically composed''. 2014-09-13T14:25:52Z eskatrem: J_Arcane: yeah, PAIP is from fucking NINETY FIVE and it seems to beat the pants of python of 2014 2014-09-13T14:26:00Z rme quit (*.net *.split) 2014-09-13T14:26:00Z vanila quit (*.net *.split) 2014-09-13T14:26:00Z khisanth_ quit (*.net *.split) 2014-09-13T14:26:01Z eschulte_ quit (*.net *.split) 2014-09-13T14:26:01Z phao quit (*.net *.split) 2014-09-13T14:26:02Z sdemarre quit (*.net *.split) 2014-09-13T14:26:02Z hlavaty quit (*.net *.split) 2014-09-13T14:26:02Z wgl` quit (*.net *.split) 2014-09-13T14:26:02Z samebchase quit (*.net *.split) 2014-09-13T14:26:02Z emma quit (*.net *.split) 2014-09-13T14:26:02Z j_king quit (*.net *.split) 2014-09-13T14:26:02Z lemoinem quit (*.net *.split) 2014-09-13T14:26:02Z Guest76673 quit (*.net *.split) 2014-09-13T14:26:02Z Vivitron` quit (*.net *.split) 2014-09-13T14:26:02Z phadthai_ quit (*.net *.split) 2014-09-13T14:26:02Z faheem_ quit (*.net *.split) 2014-09-13T14:26:03Z wizzo quit (*.net *.split) 2014-09-13T14:26:03Z posterdati300 quit (*.net *.split) 2014-09-13T14:26:03Z gluegadget quit (*.net *.split) 2014-09-13T14:26:03Z slyrus quit (*.net *.split) 2014-09-13T14:26:03Z TDog quit (*.net *.split) 2014-09-13T14:26:03Z dmiles_afk quit (*.net *.split) 2014-09-13T14:26:07Z vydd quit (*.net *.split) 2014-09-13T14:26:07Z beach quit (*.net *.split) 2014-09-13T14:26:07Z Borbus quit (*.net *.split) 2014-09-13T14:26:07Z rick-monster quit (*.net *.split) 2014-09-13T14:26:07Z snits quit (*.net *.split) 2014-09-13T14:26:07Z dfox quit (*.net *.split) 2014-09-13T14:26:07Z Xach: so much that its author writes everything in python today 2014-09-13T14:26:09Z phadthai joined #lisp 2014-09-13T14:26:09Z wgl` joined #lisp 2014-09-13T14:26:10Z Borbus joined #lisp 2014-09-13T14:26:13Z j_king joined #lisp 2014-09-13T14:26:15Z rme joined #lisp 2014-09-13T14:26:18Z emma joined #lisp 2014-09-13T14:26:18Z khisanth_ joined #lisp 2014-09-13T14:26:18Z hlavaty joined #lisp 2014-09-13T14:26:20Z qbit joined #lisp 2014-09-13T14:26:20Z beach joined #lisp 2014-09-13T14:26:20Z snits joined #lisp 2014-09-13T14:26:21Z Vivitron joined #lisp 2014-09-13T14:26:23Z eschulte joined #lisp 2014-09-13T14:26:26Z vanila joined #lisp 2014-09-13T14:26:26Z vanila quit (Changing host) 2014-09-13T14:26:26Z vanila joined #lisp 2014-09-13T14:26:27Z posterdati300 joined #lisp 2014-09-13T14:26:28Z lemoinem joined #lisp 2014-09-13T14:26:33Z TDog joined #lisp 2014-09-13T14:26:33Z eskatrem: Xach: ahah indeed 2014-09-13T14:26:38Z phao joined #lisp 2014-09-13T14:26:44Z qbit is now known as Guest17545 2014-09-13T14:26:48Z vydd joined #lisp 2014-09-13T14:26:49Z dmiles_afk joined #lisp 2014-09-13T14:27:08Z sdemarre joined #lisp 2014-09-13T14:27:22Z J_Arcane: Well, Python is a very good language, it just lacked the performance I wanted for the things I wanted to program. 2014-09-13T14:27:39Z eskatrem: J_Arcane: what did you want to program? 2014-09-13T14:27:52Z gluegadget joined #lisp 2014-09-13T14:28:02Z J_Arcane: Then a crazy Nederlander told me I should try Lisp ... 2014-09-13T14:28:19Z slyrus joined #lisp 2014-09-13T14:28:26Z dfox joined #lisp 2014-09-13T14:28:36Z J_Arcane: eskatrem: Mostly I've been tinkering with gaming, interpreters, some VM concepts. 2014-09-13T14:28:36Z nydel: about my socket thing - nyef: would you mind taking a look here and seeing i've got the right idea if it's no trouble for you? http://lpaste.net/110985 2014-09-13T14:28:56Z eskatrem: my rough feeling about CL vs python (it may be wrong) are: CL is faster, has macros and better interactivity, python has more library and is easier to get started with 2014-09-13T14:29:25Z gabriel-artigue joined #lisp 2014-09-13T14:30:15Z shka: eskatrem: i'm not sure about get started part 2014-09-13T14:30:21Z J_Arcane: eskatrem: Performance was partly why I started looking around. 2014-09-13T14:30:38Z eskatrem: this says that CL is much faster than python: http://benchmarksgame.alioth.debian.org/u32/benchmark.php?test=all&lang=sbcl&lang2=python3&data=u32 2014-09-13T14:30:41Z J_Arcane: shka: The Python codecademy course is pretty tough to beat, personally. 2014-09-13T14:31:07Z nyef: nydel: The basic socket control is probably more-or-less right, as long as it actually works in testing. Using BT:DESTROY-THREAD is inherently unsafe, and spawning a thread per connection will likely bite you as you start spinning up to a surprisingly low number of connections, especially if you're running on SBCL. 2014-09-13T14:31:12Z shka: eskatrem: well, optimized cl is pretty fast 2014-09-13T14:31:18Z eskatrem: Norvig said that python makes solving easy problems very easy, and Lisp makes solving hard problems less hard 2014-09-13T14:31:20Z faheem_ joined #lisp 2014-09-13T14:31:36Z shka: in some cases comes close to C 2014-09-13T14:31:36Z nyef: Most problems are easy problems. 2014-09-13T14:31:40Z mr-foobar joined #lisp 2014-09-13T14:31:44Z eskatrem: shka: well, how hard is it to optimize CL for someone who doesn't know it very deeply? 2014-09-13T14:32:26Z nyef: eskatrem: Possibly depends on the nature of the code, but I got Very Good Results over the course of a week or two with some help from #lisp when I was first starting out. 2014-09-13T14:32:41Z eskatrem: nyef: that's nice 2014-09-13T14:32:46Z nyef: (From 10-hour runs on my project at the time down to seconds.) 2014-09-13T14:32:55Z nyef: Mine was probably a rather extreme case. 2014-09-13T14:33:30Z eskatrem: nyef: what was your project? also, maybe you did something dumb in your first write that you corrected in the rewrite, would that be possible? 2014-09-13T14:34:08Z ndrei joined #lisp 2014-09-13T14:34:19Z nyef: My project was a CPU simulator. The main wins were from inlining, declaring numeric types, and arranging for unboxed storage for certain things. 2014-09-13T14:34:36Z optikalmouser quit (Ping timeout: 252 seconds) 2014-09-13T14:34:38Z nydel: nyef: one thread for the server, use interrupt instead of destroy, and remove the threading in the request-handling. i think i got it? thank you so much 2014-09-13T14:34:41Z bgs100 joined #lisp 2014-09-13T14:34:56Z phao quit (Quit: Leaving) 2014-09-13T14:34:59Z nyef: nydel: Don't interrupt, set a flag that the server thread checks in its main loop. 2014-09-13T14:35:11Z scottj quit (Quit: leaving) 2014-09-13T14:35:26Z nydel: nyef: ohhh ok got it 2014-09-13T14:35:47Z nyef: nyef: destroy-thread is interrupt-thread with a specific function that causes an unwind. This is asynchronous unwind, which is known to not be safe for the general case, and the specific cases simply don't compose. 2014-09-13T14:35:49Z J_Arcane: nyef: Fun. My first nontrivial lisp project was an 8-bit stack machine in Racket. Still a toy little thing, but I have bigger plans for the core. 2014-09-13T14:36:09Z samebchase joined #lisp 2014-09-13T14:36:37Z nyef: J_Arcane: This was my first nontrivial lisp project. It was originally a microcode disassembler, but I find that such things tend to very quickly spawn CPU simulators. 2014-09-13T14:36:42Z eskatrem: so you guys (nyef and J_Arcane) made some kind of very small VMs in lisp? that's pretty cool 2014-09-13T14:37:36Z nyef: eskatrem: http://www.unlambda.com/nevermore/ if you're interested. It's not quite a *small* VM. 2014-09-13T14:37:50Z White_Flame: CL also does real multithreading, which I think Python still doesn't 2014-09-13T14:37:53Z J_Arcane: eskatrem: https://github.com/jarcane/MicroMini 2014-09-13T14:37:59Z White_Flame: regarding VMs and performance and such 2014-09-13T14:38:26Z nyef: Hrm. The main site seems to be down. Oh well. 2014-09-13T14:38:43Z J_Arcane: nyef: Ah! I've seen that. Cool. I keep meaning to play with one of the LispM emulators, I've just not got around to it. 2014-09-13T14:39:44Z TDog quit (Ping timeout: 252 seconds) 2014-09-13T14:40:07Z eskatrem: hang on, what's the Explorer I cpu? 2014-09-13T14:40:34Z nyef: J_Arcane: I realized, about fifteen minutes before I got actual lisp code running in it, and about half an hour before dseagrav got Meroko to run lisp code (he was in the middle of rewriting some part of his system, I forget which), that my original reason for even being interested in LispM emulation had long since been fulfilled. 2014-09-13T14:41:04Z J_Arcane: nyef: and that was? 2014-09-13T14:41:26Z pt1 quit (Remote host closed the connection) 2014-09-13T14:41:37Z nyef: eskatrem: It's a derivative of the CADR, on the LMI/TI branch, before they switched from bit-slice components to custom chips. 2014-09-13T14:41:49Z DrCode quit (Remote host closed the connection) 2014-09-13T14:41:54Z pt1 joined #lisp 2014-09-13T14:42:10Z nyef: J_Arcane: I wanted to know what was so great about the productivity from Lisp programming environments. 2014-09-13T14:42:19Z J_Arcane: Ah. :D 2014-09-13T14:42:20Z eskatrem: nyef: out of interest, how old are you? did you get to use a real lisp M? 2014-09-13T14:42:30Z DrCode joined #lisp 2014-09-13T14:42:45Z eskatrem: nyef: and now you're hanging out on #lisp. so much for the productivity 2014-09-13T14:42:47Z nyef: eskatrem: I'm in my mid-thirties, and no, never used a real LispM as far as I know. 2014-09-13T14:42:56Z eskatrem: nyef: 33 yo for me 2014-09-13T14:43:32Z nyef: It's a Saturday. I'm "networking". I'm also reviewing some GC patches, trying to sort the debugging code from the actual semantic changes from the noise. 2014-09-13T14:43:52Z J_Arcane: MicroMini was more of a learning project, but it kinda stalled out because I ran into barriers with the lack of library support in racket. MM won't even run on anything but Linux because there wasn't a compatible library for anything els.e 2014-09-13T14:45:25Z nyef: Even more impressive was the CLOAK Java VM, by lichtblau IIRC. Runs (old, by now) Java code on SBCL. 2014-09-13T14:45:32Z J_Arcane: This was the full proposal for phase-2: https://github.com/jarcane/Lambda64 2014-09-13T14:46:24Z pt1 quit (Ping timeout: 246 seconds) 2014-09-13T14:47:08Z nyef: J_Arcane: Reminds me of some of dto's game stuff from a couple years ago. I don't know if his current (xelf) stuff is in a similar model or not. 2014-09-13T14:47:31Z J_Arcane: nyef: I have xelf bookmarked, definitely plan to take a look at it. 2014-09-13T14:48:34Z J_Arcane: I also know there's at least some more mature bindings for the usual SDL and OpenGL options with CL too. 2014-09-13T14:49:02Z eskatrem: I've another question: is it easy to write some CL for mobile - non GUI stuff? 2014-09-13T14:49:06Z nyef: J_Arcane: There's also #xelf, but it's fairly low-traffic. 2014-09-13T14:49:35Z stassats: what's the point of non GUI stuff on mobile? 2014-09-13T14:49:39Z _tca quit (Changing host) 2014-09-13T14:49:39Z _tca joined #lisp 2014-09-13T14:49:39Z _tca quit (Changing host) 2014-09-13T14:49:39Z _tca joined #lisp 2014-09-13T14:49:44Z White_Flame: eskatrem: SBCL and CCL have ARM support to some degree, not sure about Android though. 2014-09-13T14:50:30Z White_Flame: there's a commercial lisp supporting android, mocl, but it apparently is only for static compilation, so you don't get as much flexibility from the runtime device environment. Haven't used it personally, though 2014-09-13T14:50:51Z stassats: SBCL runs on android, if you ask it nicely 2014-09-13T14:51:04Z White_Flame: presumably from a terminal? 2014-09-13T14:51:14Z wgl`: zacts: I have it running on OpenBSD. 2014-09-13T14:51:19Z J_Arcane: White_Flame: Seemed like not many people have: steep license, no demo, no anything really. 2014-09-13T14:51:43Z eskatrem: well, I am considering writing the core logic of my maths app in CL, and do the web stuff in python (python would be used to deal with links, render html and so on, and would call lisp). if in the future I want to port my app to mobile, I want to keep the code for the core logic and make a GUI in . 2014-09-13T14:52:14Z White_Flame: if you're doing networked apps, you could have the mobile client be effectively a dumb UI that the lisp server controls 2014-09-13T14:52:51Z White_Flame: though scaling is a concern in that model in general 2014-09-13T14:52:57Z nyef: ... Have you considered writing the core logic in Javascript? (-: 2014-09-13T14:53:17Z Fare joined #lisp 2014-09-13T14:53:19Z eskatrem: White_Flame: well, some of the reasons to make a mobile app would be to save a bit of cpu (it would be run from the client instead of the server), and the app would work offline too 2014-09-13T14:53:30Z hiroakip joined #lisp 2014-09-13T14:54:48Z jegaxd26` quit (Remote host closed the connection) 2014-09-13T14:54:49Z eskatrem: nyef: actually yes, but let's say I am a rat and dont want to open source my stuff prematuraly 2014-09-13T14:55:31Z White_Flame: minification + license is generally fine 2014-09-13T14:56:05Z nyef: eskatrem: node.js 2014-09-13T14:56:24Z eskatrem: nyef: what would be the benefit? js faster than python? 2014-09-13T14:56:55Z White_Flame: js is pretty darn fast nowadays, and is typically native compiled 2014-09-13T14:57:10Z nyef: Possibly, possibly not. But it gives you an easy migration path to running it client-side. 2014-09-13T14:57:51Z eskatrem: nyef: hmm that's a good point 2014-09-13T14:58:51Z njsg_ quit (Quit: "nickserv identify on njsg before njsg_...") 2014-09-13T14:59:04Z eskatrem: in terms of language power, python and js are roughly equivalent, no? 2014-09-13T14:59:04Z njsg joined #lisp 2014-09-13T14:59:36Z Shinmera: what's "language power" 2014-09-13T14:59:42Z Shinmera: Is that how many bits it has 2014-09-13T14:59:45Z Grue`: all turing complete languages are roughly equivalent :) 2014-09-13T15:00:49Z eskatrem: in terms of number of features - like: lisp has macros and better debugging capabilities than python, which makes lisp more powerful than python 2014-09-13T15:02:53Z nyef: Language power is the reciprocal of closeness to common lisp. See: Greenspun's first law. 2014-09-13T15:03:22Z pt1 joined #lisp 2014-09-13T15:03:24Z nyef: Or maybe reciprocal of distance. 2014-09-13T15:03:39Z nyef: Clearly, my coffee hasn't fully kicked in yet. 2014-09-13T15:03:59Z eskatrem: well, there is Haskell 2014-09-13T15:05:21Z Shinmera: I still don't understand what you're trying to gain out of comparing languages by their 'power', if such a quantity can even be introduced at all. 2014-09-13T15:05:40Z Adlai: nyef: would you say there are any languages *more* powerful than common lisp? 2014-09-13T15:05:46Z hitecnologys joined #lisp 2014-09-13T15:05:47Z Adlai: libraries adding this power to CL are of course valid answers :) 2014-09-13T15:07:53Z White_Flame: eskatrem: I've come to really like JavaScript as a language for small to medium sized projects 2014-09-13T15:08:03Z nyef: Honestly? I don't know that language "power" is even a reasonable concept. 2014-09-13T15:08:30Z Shinmera: I am going to make the stance that it is a bogus concept. 2014-09-13T15:08:35Z White_Flame: but I don't have enough experience in Python to compare the two 2014-09-13T15:08:55Z oGMo: didn't graham have an essay on that? 2014-09-13T15:09:07Z White_Flame: one notion of "language power" is the coverage of libraries available for it. node.js is quite good there 2014-09-13T15:09:48Z oGMo: i.e., everything's turing equiv, but some langs are more flexible 2014-09-13T15:10:27Z nyef: As far as PG goes, the perfect thing to read is "Dabblers and Blowhards". 2014-09-13T15:10:34Z White_Flame: there's also the notion of lines of code to accomplish a task (or kloc if you're in Java :-P) 2014-09-13T15:10:37Z oGMo: http://www.paulgraham.com/avg.html 2014-09-13T15:10:46Z axion quit (Quit: WeeChat 0.4.3) 2014-09-13T15:11:06Z nyef: White_Flame: APL wins. 2014-09-13T15:11:20Z axion joined #lisp 2014-09-13T15:11:40Z White_Flame: and of course with density also comes tradeoffs of readability and maintainability 2014-09-13T15:11:42Z Adlai: well, a language's "power" can be measured in different areas 2014-09-13T15:11:46Z Xach: AeroNotix: If you'd like cqlcl to be part of the september quicklisp dist, please update https://github.com/quicklisp/quicklisp-projects/issues/747 2014-09-13T15:11:50Z Adlai: APL loses at clientside web dev 2014-09-13T15:11:52Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-13T15:12:14Z eskatrem: White_Flame: I am familiar with both js and python, and for some reason I can't exactly explain I find python a bit more pleasant to use 2014-09-13T15:12:50Z Adlai: the One Way is closer to the way your mind constructs algorithms? 2014-09-13T15:14:34Z White_Flame: eskatrem: there's probably more structure to Python. JS is really loose 2014-09-13T15:14:56Z axion quit (Client Quit) 2014-09-13T15:15:04Z optikalmouser joined #lisp 2014-09-13T15:15:43Z axion joined #lisp 2014-09-13T15:16:54Z kobain joined #lisp 2014-09-13T15:17:55Z kobain quit (Max SendQ exceeded) 2014-09-13T15:18:13Z kobain joined #lisp 2014-09-13T15:19:47Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-13T15:20:03Z Shaftoe___ joined #lisp 2014-09-13T15:20:08Z H4ns joined #lisp 2014-09-13T15:21:08Z ndrei quit (Ping timeout: 272 seconds) 2014-09-13T15:22:17Z krid quit (Ping timeout: 245 seconds) 2014-09-13T15:22:40Z Shaftoe___: how would I be able to tell where a package got loaded from in SBCL ? 2014-09-13T15:23:01Z nyef: "loaded from" in what sense? 2014-09-13T15:23:19Z Shinmera: do you mean an ASDF system or? 2014-09-13T15:23:21Z Xach: Shaftoe___: you could use the source location recording stuff. i don't know exactly how, but i know slime can jump to defpackage forms. 2014-09-13T15:23:26Z nyef: Do you mean "which source file the DEFPACAKGE / MAKE-PACKAGE" form was in? 2014-09-13T15:23:32Z Xach: Shaftoe___: if i wanted to do that, I'd look at what slime does first. 2014-09-13T15:24:40Z Shaftoe___: Ok, what I mean is that I'm doing asdf:load-op and it's loading the "wrong version" of a package I've put in my site-systems. So I removed the package from site-systems, and asdf can still find that package. So I'm kinda baffled as to *where* it's finding it from 2014-09-13T15:25:04Z Xach: Shaftoe___: oh, when i want to know that, i use the shortcut (ql:where-is-system "name-of-system") 2014-09-13T15:25:19Z Xach: and sometimes after that i use (asdf:clear-system "name-of-system") 2014-09-13T15:25:31Z Xach: asdf caches some info that asdf:clear-system flushes 2014-09-13T15:25:43Z Shaftoe___: Exactly what I was looking for, that did the trick, Xach. Thank you. 2014-09-13T15:26:14Z Shinmera: Shaftoe___: if you only have asdf you could also try (asdf:system-source-directory :system) 2014-09-13T15:26:51Z pt1 quit (Remote host closed the connection) 2014-09-13T15:27:12Z Shaftoe___: yes, indeed. That works too. 2014-09-13T15:27:22Z Shaftoe___: thanks guys 2014-09-13T15:28:24Z hiroakip joined #lisp 2014-09-13T15:28:33Z shka: quicklisp + asdf = happy shka 2014-09-13T15:28:56Z shka: exactly what i need 2014-09-13T15:29:11Z uber_ is now known as uber 2014-09-13T15:31:26Z khisanth_ quit (Quit: Leaving) 2014-09-13T15:31:44Z Khisanth joined #lisp 2014-09-13T15:40:02Z TDog joined #lisp 2014-09-13T15:40:04Z Ven joined #lisp 2014-09-13T15:40:37Z optikalmouser quit (Ping timeout: 245 seconds) 2014-09-13T15:40:48Z paul0 joined #lisp 2014-09-13T15:40:53Z shka: question about clos 2014-09-13T15:41:14Z shka: can i use &key and &rest with methods? 2014-09-13T15:41:29Z shka: especially &rest 2014-09-13T15:41:36Z Shinmera: Why shouldn't you be able to? 2014-09-13T15:41:40Z Shinmera: (and why don't you just try it) 2014-09-13T15:42:11Z Shinmera: But in case you're asking something different than you're saying: You can only specialise on required arguments. 2014-09-13T15:42:31Z Ragnaroek joined #lisp 2014-09-13T15:42:39Z hugoduncan is now known as hugod 2014-09-13T15:42:39Z Xach: shka: You can use &rest and &key with methods (and regular functions) 2014-09-13T15:42:46Z Xach: shka: &rest must precede &key 2014-09-13T15:43:09Z shka: but as Shinmera stated, no specialization? 2014-09-13T15:43:38Z Xach: shka: what happens is that something like ... &rest args &key foo bar ...) means that FOO and BAR are bound to whatever is given as keywords, and ARGS is bound to (:FOO :BAR ) 2014-09-13T15:44:00Z Xach: shka: right. you cannot specialize on arguments that are not required, like &key or &optional or &rest 2014-09-13T15:44:53Z Px12 joined #lisp 2014-09-13T15:44:55Z Xach: I sometimes use (&rest args &key &allow-other-keys) to pass keyword/value pairs. it does pair checking (passing an odd number of args signals an error) but not the content of those args. 2014-09-13T15:45:27Z shka: hm, i want to pass something in rest style 2014-09-13T15:45:55Z shka: but i guess i can always use function 2014-09-13T15:46:14Z shka: but method would be very useful here 2014-09-13T15:46:23Z Shinmera: There's always typecase. 2014-09-13T15:46:28Z Shinmera: I don't know what you mean by 'rest style' 2014-09-13T15:46:40Z Shinmera: What's your specific problem? 2014-09-13T15:48:32Z Ragnaroek quit (Ping timeout: 245 seconds) 2014-09-13T15:48:57Z shka: Shinmera: i want to generate html from bunch of objects 2014-09-13T15:49:08Z shka: it would be nice to pass those as rest argument 2014-09-13T15:49:37Z shka: however, i can also pass list, mapcar and reduce 2014-09-13T15:49:42Z Shinmera: Then make a function that transforms a single argument and one function that bundles them together? 2014-09-13T15:49:56Z shka: as i said, i want to do that 2014-09-13T15:50:11Z shka: but it would be nice to have specialisation 2014-09-13T15:50:39Z Shinmera: (defgeneric transform-object (foo)) (defun transform (&rest foos) (mapcar #'transform-object foos)) 2014-09-13T15:50:40Z slyrus quit (Ping timeout: 250 seconds) 2014-09-13T15:50:53Z Shinmera: I don't see where the problem is 2014-09-13T15:51:53Z matko joined #lisp 2014-09-13T15:52:02Z shka: Shinmera: ... 2014-09-13T15:52:07Z MoALTz quit (Quit: Leaving) 2014-09-13T15:52:27Z ndrei joined #lisp 2014-09-13T15:52:48Z Shinmera: shka: Do you want to require that all rest arguments be of the same type and do a different kind of combination depending on that type? 2014-09-13T15:54:28Z Shinmera: shka: I'm sorry, but I really don't understand what it is that you want to do but apparently can't do 2014-09-13T15:54:42Z malbertife joined #lisp 2014-09-13T15:55:10Z pgomes joined #lisp 2014-09-13T15:55:14Z gabriel-artigue quit (Quit: leaving) 2014-09-13T15:55:30Z Xach: Then maybe you could refrain from comments like "Just do it this way"? 2014-09-13T15:56:29Z Xach: shka: What would you do differently if you could specialize on the rest argument? 2014-09-13T15:56:44Z Shinmera: Xach: I'm sorry if it came across that way, I was trying to give suggestions. 2014-09-13T15:57:44Z bambams__ quit (Changing host) 2014-09-13T15:57:44Z bambams__ joined #lisp 2014-09-13T15:57:49Z bambams__ is now known as bambams 2014-09-13T15:58:03Z MouldyOldBones quit (Quit: MouldyOldBones) 2014-09-13T16:02:47Z Ragnaroek joined #lisp 2014-09-13T16:04:00Z shka: Xach: i actually don't want to specialize arguments individually 2014-09-13T16:04:30Z shka: but ok, i don't want to waste time on discussing that 2014-09-13T16:05:04Z Shinmera: If you want all arguments to be of the same type and dispatch on that you'll have to check them all to be the same first. 2014-09-13T16:06:15Z shka: yeah 2014-09-13T16:06:18Z shka: complicated 2014-09-13T16:06:19Z nipra quit (Read error: Connection reset by peer) 2014-09-13T16:09:13Z vaporatorius quit (Quit: Leaving) 2014-09-13T16:10:07Z nipra joined #lisp 2014-09-13T16:13:39Z cy joined #lisp 2014-09-13T16:18:38Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-13T16:23:08Z slassh joined #lisp 2014-09-13T16:23:57Z hiroakip quit (Ping timeout: 245 seconds) 2014-09-13T16:24:45Z Oddity joined #lisp 2014-09-13T16:26:21Z Fare quit (Ping timeout: 272 seconds) 2014-09-13T16:30:00Z optikalmouser joined #lisp 2014-09-13T16:31:09Z phax joined #lisp 2014-09-13T16:31:56Z Fare joined #lisp 2014-09-13T16:32:31Z arpunk joined #lisp 2014-09-13T16:32:57Z hiroakip joined #lisp 2014-09-13T16:33:17Z Grue`: to write a defmethod on variable number of arguments it's enough to write a defmethod of 2 arguments, and then do reduce-like thing with it 2014-09-13T16:33:58Z ndrei quit (Ping timeout: 272 seconds) 2014-09-13T16:35:07Z drmeister quit (Read error: Connection reset by peer) 2014-09-13T16:35:18Z drmeister joined #lisp 2014-09-13T16:35:20Z ndrei joined #lisp 2014-09-13T16:36:17Z ndrei quit (Read error: No route to host) 2014-09-13T16:36:36Z kami quit (Ping timeout: 250 seconds) 2014-09-13T16:41:00Z iqool joined #lisp 2014-09-13T16:41:10Z matko quit (Remote host closed the connection) 2014-09-13T16:42:02Z wizzo joined #lisp 2014-09-13T16:44:40Z kushal joined #lisp 2014-09-13T16:47:11Z arenz joined #lisp 2014-09-13T16:48:02Z iqool left #lisp 2014-09-13T16:48:31Z mvilleneuve joined #lisp 2014-09-13T16:49:10Z schaueho quit (Ping timeout: 272 seconds) 2014-09-13T16:52:08Z iqool joined #lisp 2014-09-13T16:52:24Z arenz quit (Ping timeout: 246 seconds) 2014-09-13T16:54:36Z kuzy000 quit (Read error: Connection reset by peer) 2014-09-13T16:57:32Z dandersen joined #lisp 2014-09-13T17:00:06Z dkcl quit (Ping timeout: 246 seconds) 2014-09-13T17:00:07Z matko joined #lisp 2014-09-13T17:00:41Z oleo is now known as Guest66776 2014-09-13T17:02:25Z oleo__ joined #lisp 2014-09-13T17:03:53Z Guest66776 quit (Ping timeout: 260 seconds) 2014-09-13T17:08:50Z shka: is there any latex -> cl-who converter floating around? 2014-09-13T17:09:12Z Fare quit (Ping timeout: 246 seconds) 2014-09-13T17:10:01Z stassats: that would be a bit silly 2014-09-13T17:10:15Z shka: why? 2014-09-13T17:10:43Z stassats: if you want to make html out of it, just find some existing converter 2014-09-13T17:10:45Z dandersen quit (Changing host) 2014-09-13T17:10:45Z dandersen joined #lisp 2014-09-13T17:11:49Z dandersen is now known as dkcl 2014-09-13T17:12:35Z hiroakip quit (Ping timeout: 272 seconds) 2014-09-13T17:12:54Z shka: if i use cl-who everywhere else, i may want to use it for that as well 2014-09-13T17:13:30Z dkcl: But you never really use the sexps until you convert them to HTML 2014-09-13T17:13:33Z dkcl: What's the point? 2014-09-13T17:13:47Z dkcl: You want cl-tex or something like that 2014-09-13T17:13:49Z jleija joined #lisp 2014-09-13T17:14:21Z nyef: Do you have an HTML -> cl-who converter? 2014-09-13T17:15:25Z puchacz quit (Quit: Konversation terminated!) 2014-09-13T17:16:11Z J_Arcane: honestly, if I could just write all my HTML in s-expressions I probably would write more HTML. ;) 2014-09-13T17:16:51Z stassats: if you want to use cl-who, why latex in the first place? 2014-09-13T17:18:31Z Grue`: there's javascript that converts latex 2014-09-13T17:18:39Z Grue`: *library 2014-09-13T17:19:26Z Grue`: you just need to output latex here and it'll convert it on the fly 2014-09-13T17:20:11Z nyef: I bet that works real well in rss or atom feeds. 2014-09-13T17:21:27Z zeronight joined #lisp 2014-09-13T17:21:37Z dkcl quit (Remote host closed the connection) 2014-09-13T17:22:05Z dkcl joined #lisp 2014-09-13T17:25:49Z __main__ quit (Ping timeout: 260 seconds) 2014-09-13T17:30:05Z wizzo quit (Ping timeout: 272 seconds) 2014-09-13T17:32:00Z djinni` joined #lisp 2014-09-13T17:35:50Z uber quit (Read error: Connection reset by peer) 2014-09-13T17:38:14Z ndrei joined #lisp 2014-09-13T17:40:01Z pnpuff joined #lisp 2014-09-13T17:40:17Z dandersen joined #lisp 2014-09-13T17:41:05Z innertracks quit (Ping timeout: 272 seconds) 2014-09-13T17:43:01Z dkcl quit (Ping timeout: 246 seconds) 2014-09-13T17:45:15Z ivan\ quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-13T17:46:27Z ivan\ joined #lisp 2014-09-13T17:46:28Z dandersen is now known as dickle 2014-09-13T17:47:22Z mvilleneuve quit (Quit: This computer has gone to sleep) 2014-09-13T17:47:42Z Ragnaroek quit (Ping timeout: 246 seconds) 2014-09-13T17:48:23Z Petit_Dejeuner joined #lisp 2014-09-13T17:50:05Z drewc1 quit (Ping timeout: 260 seconds) 2014-09-13T17:50:22Z kuzy000_ joined #lisp 2014-09-13T17:50:51Z optikalmouser quit (Ping timeout: 246 seconds) 2014-09-13T17:53:52Z Ragnaroek joined #lisp 2014-09-13T17:53:54Z pnpuff quit (Quit: leaving) 2014-09-13T17:54:59Z pnpuff joined #lisp 2014-09-13T17:55:40Z Harag quit (Ping timeout: 272 seconds) 2014-09-13T17:58:23Z beach left #lisp 2014-09-13T17:59:01Z TDog_ joined #lisp 2014-09-13T17:59:47Z Adlai: hmm... does handler-case let me invoke restarts, or does the control transfer unwind them? 2014-09-13T17:59:53Z TDog quit (Ping timeout: 260 seconds) 2014-09-13T18:00:04Z Adlai tries toy examples before blowing up the live system 2014-09-13T18:00:22Z TDog_ is now known as TDog 2014-09-13T18:01:00Z stassats quit (Ping timeout: 246 seconds) 2014-09-13T18:01:32Z resttime joined #lisp 2014-09-13T18:04:28Z matko quit (Ping timeout: 260 seconds) 2014-09-13T18:05:30Z phax left #lisp 2014-09-13T18:05:54Z Adlai: handler-bind + invoke-restart have saved me, after forgetting to update-instance-for-redefined-class 2014-09-13T18:08:01Z dickle is now known as earth 2014-09-13T18:08:13Z earth is now known as dkcl 2014-09-13T18:11:30Z ndrei quit (Ping timeout: 272 seconds) 2014-09-13T18:12:32Z hiroakip joined #lisp 2014-09-13T18:12:59Z ndrei joined #lisp 2014-09-13T18:15:42Z TDog quit (Ping timeout: 252 seconds) 2014-09-13T18:16:53Z iqool quit (Quit: iqool) 2014-09-13T18:17:50Z ndrei quit (Ping timeout: 272 seconds) 2014-09-13T18:18:51Z ndrei joined #lisp 2014-09-13T18:23:42Z MoALTz joined #lisp 2014-09-13T18:24:06Z cy quit (Ping timeout: 246 seconds) 2014-09-13T18:25:39Z cy joined #lisp 2014-09-13T18:27:00Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-13T18:27:58Z ndrei quit (Ping timeout: 272 seconds) 2014-09-13T18:27:59Z mutley89 joined #lisp 2014-09-13T18:31:06Z dkcl quit (Ping timeout: 246 seconds) 2014-09-13T18:31:32Z Amaan quit (Quit: Connection closed for inactivity) 2014-09-13T18:33:28Z J_Arcane quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-13T18:34:04Z phao joined #lisp 2014-09-13T18:35:02Z uber joined #lisp 2014-09-13T18:35:11Z J_Arcane joined #lisp 2014-09-13T18:35:47Z andrew` joined #lisp 2014-09-13T18:36:07Z andrew` quit (Remote host closed the connection) 2014-09-13T18:37:01Z jtza8 joined #lisp 2014-09-13T18:37:18Z Elench joined #lisp 2014-09-13T18:40:00Z defaultxr joined #lisp 2014-09-13T18:41:42Z matko joined #lisp 2014-09-13T18:47:31Z namespace quit (Quit: Lost terminal) 2014-09-13T18:48:20Z kushal quit (Quit: Leaving) 2014-09-13T18:48:44Z Ven joined #lisp 2014-09-13T18:50:16Z normanrichards joined #lisp 2014-09-13T18:53:26Z AeroNotix: Xach: I am working on that now. I can't seem to get the tests to run after I remove the call to ql:quickload and add in what you said. Any other tips? 2014-09-13T18:54:15Z phax joined #lisp 2014-09-13T18:54:15Z phax quit (Changing host) 2014-09-13T18:54:15Z phax joined #lisp 2014-09-13T18:54:30Z Petit_Dejeuner quit (Read error: Connection reset by peer) 2014-09-13T18:54:47Z Petit_Dejeuner joined #lisp 2014-09-13T18:56:57Z Elench` joined #lisp 2014-09-13T18:58:23Z Elench is now known as Guest83699 2014-09-13T18:58:23Z Guest83699 quit (Killed (sendak.freenode.net (Nickname regained by services))) 2014-09-13T18:58:23Z Elench` is now known as Elench 2014-09-13T18:58:38Z zeronight quit (Quit: Ухожу) 2014-09-13T18:59:11Z pnpuff left #lisp 2014-09-13T19:01:20Z AeroNotix: Xach: ah, figured it out. Good to go :) 2014-09-13T19:02:55Z BlueRavenGT joined #lisp 2014-09-13T19:08:52Z TomRS joined #lisp 2014-09-13T19:12:12Z eazar001 quit (Quit: WeeChat 1.0) 2014-09-13T19:12:31Z eazar001 joined #lisp 2014-09-13T19:15:08Z eazar001 quit (Client Quit) 2014-09-13T19:15:23Z eazar001 joined #lisp 2014-09-13T19:16:46Z resttime: how do I load files to a remote swank server? 2014-09-13T19:17:25Z Shinmera: By whatever you use to load files to your remote server. 2014-09-13T19:17:26Z resttime: i can connect to a swank server over ssh, but I can't seem to load files to it with C-c C-l 2014-09-13T19:17:45Z resttime: like emacs is connected via slime-connect 2014-09-13T19:18:01Z resttime: the server is on a box somewhere else 2014-09-13T19:18:08Z Shinmera: C-c C-l just sends the load command with the file name which means it'll send your local path 2014-09-13T19:18:23Z resttime: hmmm okay 2014-09-13T19:18:40Z resttime: is there a solution for this? or do I have to edit remote files as well? 2014-09-13T19:19:02Z resttime: i was thinking of editing files on my computer and then loading them over ssh to the server box 2014-09-13T19:19:08Z Shinmera: You can select the text in the file and use the regular C-c C-c 2014-09-13T19:19:16Z Shinmera: that'll send the actual forms over 2014-09-13T19:19:40Z Shinmera: I'm not aware of there being an actual 'send file' command, but there might be somewhere. 2014-09-13T19:19:51Z Grue`: have you tried to edit files on remote via Emacs tramp mode? 2014-09-13T19:19:59Z shka quit (Quit: WeeChat 1.0) 2014-09-13T19:20:01Z Grue`: it might even work with slime 2014-09-13T19:20:22Z resttime: thanks I'll use C-c C-c for now 2014-09-13T19:20:34Z Grue`: at least there exists a slime-tramp extension 2014-09-13T19:20:36Z Shinmera: Grue`: Hmm, interesting idea. I'll have to try that some time. 2014-09-13T19:20:36Z sharkey joined #lisp 2014-09-13T19:20:45Z resttime: i have tried to edit over remote but it hangs 2014-09-13T19:21:09Z resttime: C-x C-f then /place:file 2014-09-13T19:22:25Z dmiles_afk quit (Remote host closed the connection) 2014-09-13T19:22:47Z resttime: though it might have somethign to do with http://common-lisp.net/project/slime/doc/html/Setting-up-pathname-translations.html#Setting-up-pathname-translations 2014-09-13T19:22:50Z resttime: *thought 2014-09-13T19:23:01Z resttime: but slime-create-filename-translator apparently doesn't exist 2014-09-13T19:23:13Z dmiles_afk joined #lisp 2014-09-13T19:26:20Z jkaye joined #lisp 2014-09-13T19:27:43Z resttime: oh i didn't require 'slime-tramp 2014-09-13T19:27:47Z Karl_Dscc quit (Remote host closed the connection) 2014-09-13T19:27:50Z Fare joined #lisp 2014-09-13T19:30:13Z rme quit (Quit: rme) 2014-09-13T19:30:36Z boogie joined #lisp 2014-09-13T19:30:48Z jkaye quit (Ping timeout: 260 seconds) 2014-09-13T19:32:50Z boogie quit (Remote host closed the connection) 2014-09-13T19:33:18Z boogie joined #lisp 2014-09-13T19:34:09Z ndrei joined #lisp 2014-09-13T19:34:28Z oleo__ is now known as oleo 2014-09-13T19:34:54Z MouldyOldBones joined #lisp 2014-09-13T19:37:37Z TomRS quit (Ping timeout: 272 seconds) 2014-09-13T19:40:39Z tkd quit (Read error: Connection reset by peer) 2014-09-13T19:40:42Z matko quit (Ping timeout: 245 seconds) 2014-09-13T19:40:52Z daimrod quit (Ping timeout: 240 seconds) 2014-09-13T19:41:18Z tkd joined #lisp 2014-09-13T19:43:31Z normanrichards quit 2014-09-13T19:44:22Z jtza8 quit (Ping timeout: 240 seconds) 2014-09-13T19:45:32Z segv- joined #lisp 2014-09-13T19:48:24Z zacharias quit (Ping timeout: 272 seconds) 2014-09-13T19:51:28Z Shinmera quit (Quit: brb) 2014-09-13T19:52:08Z malbertife quit (Ping timeout: 252 seconds) 2014-09-13T19:52:21Z Shinmera joined #lisp 2014-09-13T20:00:41Z zlrth joined #lisp 2014-09-13T20:02:14Z MoALTz quit (Quit: Leaving) 2014-09-13T20:04:38Z drewc joined #lisp 2014-09-13T20:09:22Z hiroakip quit (Ping timeout: 250 seconds) 2014-09-13T20:10:22Z lambda joined #lisp 2014-09-13T20:11:50Z angavrilov quit (Remote host closed the connection) 2014-09-13T20:12:17Z vlnx quit (Quit: leaving) 2014-09-13T20:12:35Z vlnx joined #lisp 2014-09-13T20:14:24Z s0meone is now known as someone 2014-09-13T20:15:12Z normanrichards joined #lisp 2014-09-13T20:15:51Z jtza8 joined #lisp 2014-09-13T20:18:52Z jtza8 quit (Remote host closed the connection) 2014-09-13T20:19:20Z ndrei quit (Ping timeout: 250 seconds) 2014-09-13T20:19:24Z kristof joined #lisp 2014-09-13T20:32:10Z chase_gray joined #lisp 2014-09-13T20:32:22Z chase_gray: hi, is there a way to determine the definition of a function from within the interpreter? 2014-09-13T20:33:24Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-13T20:33:25Z kristof: chase_gray: DESCRIBE is a function you can use 2014-09-13T20:33:39Z Xach: chase_gray: Sometimes FUNCTION-LAMBDA-EXPRESSION will do it, but sometimes it won't. 2014-09-13T20:33:47Z kristof: chase_gray: If you actually want to manipulate the definition, there's function-lambda-expression 2014-09-13T20:34:02Z chase_gray: thank you guys! 2014-09-13T20:34:07Z Xach: chase_gray: the typical thing to do is write the definition into files and use editor/implementation integration to make it easy to jump to it. 2014-09-13T20:34:44Z tvaalen quit (Changing host) 2014-09-13T20:34:44Z tvaalen joined #lisp 2014-09-13T20:35:37Z chase_gray: i was actually trying to use it to find out the definition of the primitive procedures haha 2014-09-13T20:36:05Z theseb joined #lisp 2014-09-13T20:36:12Z Xach: chase_gray: oh. well, M-. will probably jump somewhere, if you use slime 2014-09-13T20:36:37Z Ven joined #lisp 2014-09-13T20:36:40Z theseb: anyone work in programming language theory?...i'm wondering if there are any innovations coming down the pike or if languages will likely stay as they are now for the next 20 years 2014-09-13T20:36:41Z Xach: In common lisp, primitive procedures are often implemented with tricks for speed, so you might see something like (defun car (x) (car x)) 2014-09-13T20:36:57Z Xach: which is less than enlightening. 2014-09-13T20:37:12Z chase_gray: just a followup - is there a way to determine the parameters (specifically the types) using a similar function? 2014-09-13T20:37:27Z Xach: chase_gray: the types of what? 2014-09-13T20:37:35Z Bike: cl:describe will tell you the declared type of a function, sometimes. 2014-09-13T20:37:54Z chase_gray: the necessary types of the parameters - for instance + needs numbers 2014-09-13T20:37:55Z Xach: chase_gray: for standard procedures, you can look in the spec, e.g. http://l1sp.org/cl/cons tells you what CONS expects. 2014-09-13T20:38:07Z Bike: theseb: do you expect someone to say "no, my field is just going to be the same for twenty years"? that's hard for me to imagine 2014-09-13T20:38:14Z Xach: http://l1sp.org/cl/+ has info for + 2014-09-13T20:38:37Z nyef: Bike: Optics is famous for this. 2014-09-13T20:38:45Z wasamasa: "Not found - /cl/ " 2014-09-13T20:38:53Z Grue`: gotta love sbcl error messages "warning: Clobbering the compiler's idea of the layout of #" 2014-09-13T20:39:12Z wasamasa: Xach: I'm afraid url encoding got you 2014-09-13T20:39:28Z Xach: wasamasa: yes, looks like it. oh well, most other symbols (and some non-symbols) work ok 2014-09-13T20:39:38Z Bike: nyef: i know a guy in optics and he doesn't just twiddle his thumbs... i mean, lots of it is pretty solid though, yeah 2014-09-13T20:39:52Z nyef: Grue`: Redefining a structure? You realize that you're probably heading for a crash, right? 2014-09-13T20:39:55Z chase_gray: http://www.lispworks.com/documentation/HyperSpec/Body/f_pl.htm 2014-09-13T20:40:00Z chase_gray: thats the link @Xach 2014-09-13T20:40:24Z chase_gray: anyway, thanks so much! 2014-09-13T20:40:37Z Grue`: I just added a few new fields 2014-09-13T20:40:49Z TomRS joined #lisp 2014-09-13T20:41:30Z nyef: Grue`: Still possibly not safe. If you're planning on redefining your structures, you really are better off using classes. 2014-09-13T20:42:21Z Grue`: meh, i'll just restart if everything breaks 2014-09-13T20:42:57Z Xach: are you working on nuclear plant control system software? 2014-09-13T20:44:02Z nyef: ... seed control system software? 2014-09-13T20:44:47Z Grue`: it's a high frequency trading system with the ability to crash the Wall Street ;) 2014-09-13T20:45:10Z nyef: Wall Street seems like it can crash ITSELF easily enough. 2014-09-13T20:46:40Z Grue`: well crap, sbcl.exe has stopped working 2014-09-13T20:48:21Z zacts: is lisp used in high reliability use cases like power lants / air traffic control / medical? 2014-09-13T20:48:49Z rme joined #lisp 2014-09-13T20:50:26Z sdemarre quit (Ping timeout: 252 seconds) 2014-09-13T20:50:28Z Xach: zacts: I know it's been used for factory control. there were some good anecdotes from the gensym g2 guy at the lisp conference in reno. 2014-09-13T20:50:46Z Xach: lowell hawkinson i think? 2014-09-13T20:51:05Z zacts: oh interesting 2014-09-13T20:51:31Z Xach: zacts: he told an amusing story about nabisco doing development on the production line because it was cheaper than setting up a separate test environment. sometimes things would go haywire and send cookies flying. 2014-09-13T20:51:40Z Xach: cleanup was cheaper than duplication. 2014-09-13T20:52:15Z Xach: it was also used for managing some aspect of nasa satellite launch systems, and biosphere 2. 2014-09-13T20:52:19Z theseb: Bike: no! i'm not interested in wishful thinking....are there unimplemented innovations *NOW* waiting in PLT? 2014-09-13T20:52:58Z Grue`: huh, even after restart it still crashes when i run this function, how annoying 2014-09-13T20:53:18Z acieroid quit (Read error: Connection reset by peer) 2014-09-13T20:53:34Z acieroid joined #lisp 2014-09-13T20:53:50Z nyef: Grue`: Stale FASLs? 2014-09-13T20:54:09Z tkd__ joined #lisp 2014-09-13T20:54:19Z Grue`: i doubt it. probably just kitten of death 2014-09-13T20:54:52Z Xach: the kitten of death ist tot 2014-09-13T20:55:00Z Juzdan joined #lisp 2014-09-13T20:55:02Z nyef: Ah. Two UWPs in the same stack frame? 2014-09-13T20:55:09Z tkd quit (Read error: Connection reset by peer) 2014-09-13T20:55:26Z nand1`` quit (Remote host closed the connection) 2014-09-13T20:57:25Z nyef: (I know that was a problem at one point, I don't know if it's been fixed.) 2014-09-13T20:58:01Z Grue`: idk, does this look crashable: http://paste.lisp.org/display/143707 2014-09-13T20:58:11Z Grue`: seems pretty straighforward to me 2014-09-13T20:59:30Z Juzdan quit (Remote host closed the connection) 2014-09-13T20:59:36Z nyef: Mmm. Stale FASLs? 2014-09-13T20:59:54Z nyef: More the point, invisibly corrupted FASLs? 2014-09-13T20:59:57Z Elench quit (Ping timeout: 272 seconds) 2014-09-13T21:00:05Z Danniel joined #lisp 2014-09-13T21:01:32Z TomRS quit (Ping timeout: 245 seconds) 2014-09-13T21:01:41Z nand1 joined #lisp 2014-09-13T21:02:32Z kristof quit (Ping timeout: 252 seconds) 2014-09-13T21:05:01Z Danniel quit (Ping timeout: 272 seconds) 2014-09-13T21:06:03Z Elench joined #lisp 2014-09-13T21:06:54Z Vivitron: Grue`: one possible cause of crashing is safety 0 code, you might reload from scratch using sbcl's unsure compiler policy 2014-09-13T21:07:24Z _2_jess joined #lisp 2014-09-13T21:07:27Z Grue`: actually i see the problem 2014-09-13T21:07:52Z Grue`: i think it's trying to print a recursive structure, which is segment with path=(list segment) 2014-09-13T21:08:12Z _2_jess quit (Remote host closed the connection) 2014-09-13T21:10:33Z ejbs joined #lisp 2014-09-13T21:12:44Z Grue`: the function worked perfectly, it's the printing that crashed. with *print-circle* t it doesn't crash 2014-09-13T21:12:47Z SHODAN quit (Remote host closed the connection) 2014-09-13T21:12:51Z pjb``: That's the advantage of hardware: explosions are limited in time and space. Even Nagasaki or Hiroshima had very limited impact. 2014-09-13T21:12:57Z vaporatorius joined #lisp 2014-09-13T21:13:52Z pgomes quit (Quit: Leaving) 2014-09-13T21:14:14Z pjb``: Remember, materially, there's no way to do anything on Earth that may have more impact than the Sun. Ever. Only with software and spiritually may we have a greater impact than a puny star on the galaxy. 2014-09-13T21:14:31Z zacts: are threads ultra important? 2014-09-13T21:14:51Z zacts: re: running SBCL on OpenBSD 2014-09-13T21:14:52Z Ragnaroek quit (Ping timeout: 240 seconds) 2014-09-13T21:15:03Z Xach: No. 2014-09-13T21:15:18Z Xach: For some value of "ultra". 2014-09-13T21:15:28Z zacts: what are threads used for? 2014-09-13T21:15:41Z nyef: IIRC, SBCL only has threads for x86, x86-64, and PPC. 2014-09-13T21:15:59Z zacts: I'm going to be using SBCL + OpenBSD on x86-64 2014-09-13T21:16:03Z pjb``: It looks like loading bordeaux-threads on sbcl 1.2.3 on macosx or linux (and calling bt:make-thread) signals that they're not compiled with thread support. I wonder it it's true, or if it's sbcl that broke something in bordeaux-thread. (Since I just install vanilla sbcl, it's possible I don't have threads with them). 2014-09-13T21:16:09Z Bike quit (Read error: Connection reset by peer) 2014-09-13T21:16:24Z pjb``: zacts: since we don't have continuations in CL, you can use threads for coroutines. 2014-09-13T21:16:27Z pjb`` is now known as pjb 2014-09-13T21:16:49Z nyef: pjb: Is :SB-THREAD on *FEATURES* ? 2014-09-13T21:17:22Z Xach: zacts: hunchentoot uses threads to handle multiple connections. 2014-09-13T21:17:57Z pjb: nyef: nope. But the SB-THREAD package is present. 2014-09-13T21:18:13Z pjb: I guess this has confused me. I will have to recompile sbcl. 2014-09-13T21:18:20Z nyef: pjb: SB-THREAD is always present. 2014-09-13T21:18:23Z zacts: would implementing threads be on the OpenBSD side of things, or on the SBCL side of things? 2014-09-13T21:18:46Z pjb: zacts: on sbcl. And it shouldn't be too hard, given than *BSD support threads. 2014-09-13T21:19:21Z zacts: ok, and one final question. does the book PCL utilize threads at all? 2014-09-13T21:19:50Z Xach: No. 2014-09-13T21:20:05Z nyef: zacts: Be careful with the "shouldn't be too hard" statements, though, sometimes it's something peculiar to the OS that makes it impossible. 2014-09-13T21:20:24Z xebd`: (!!!) 2014-09-13T21:20:29Z ndrei joined #lisp 2014-09-13T21:21:36Z kuzy000_ quit (Ping timeout: 252 seconds) 2014-09-13T21:23:59Z kristof joined #lisp 2014-09-13T21:24:35Z nell joined #lisp 2014-09-13T21:25:36Z Bike joined #lisp 2014-09-13T21:29:53Z SvenGek joined #lisp 2014-09-13T21:29:58Z boogie quit (Remote host closed the connection) 2014-09-13T21:30:35Z SvenGek: yo 2014-09-13T21:31:26Z eskatrem: yo 2014-09-13T21:31:40Z Danniel joined #lisp 2014-09-13T21:31:42Z SvenGek: So apparently '(NIL) is different than NIL 2014-09-13T21:31:52Z SvenGek: In the language that I'm using 2014-09-13T21:32:06Z Grue`: why wouldnt it be 2014-09-13T21:32:20Z eskatrem: '(NIL) is a list containing the NIL element 2014-09-13T21:32:30Z eskatrem: just like '(1) is different from 1 2014-09-13T21:32:46Z nyef: No, '(NIL) evaluates to a list containing the NIL element. 2014-09-13T21:32:53Z Grue`: it's just basic Zermelo-Frankel set theory :) 2014-09-13T21:32:55Z SvenGek: (I'm much of a lisp newbie) 2014-09-13T21:33:23Z SvenGek: But I'm constructing it by doing (cons (car NIL) (cdr NIL)) 2014-09-13T21:33:35Z SvenGek: Oh, I think I see 2014-09-13T21:33:37Z eskatrem: I'm a noob as well, but this is more set theory related than lisp related 2014-09-13T21:33:54Z SvenGek: not really 2014-09-13T21:33:58Z Grue`: that's actually a good point, both (nil) and nil have car and cdr = nil 2014-09-13T21:34:00Z nyef: (CAR NIL) => NIL, always. (CDR NIL) likewise. 2014-09-13T21:34:09Z nyef: You may as well (CONS NIL NIL). 2014-09-13T21:34:14Z SvenGek: yeah 2014-09-13T21:34:19Z SvenGek: hang on 2014-09-13T21:34:33Z chase_gray quit (Ping timeout: 272 seconds) 2014-09-13T21:35:00Z Fare quit (Remote host closed the connection) 2014-09-13T21:35:17Z SvenGek: Oh, I think I understand now 2014-09-13T21:35:58Z SvenGek: (I'm experimenting with picolisp, btw... it might differ between lisps) 2014-09-13T21:36:11Z eskatrem: cons is returning a list, always 2014-09-13T21:36:24Z SvenGek: yeah 2014-09-13T21:37:09Z SvenGek: well, should it differ? It shouldn't shouldn't it? 2014-09-13T21:37:37Z nyef: CONS always returns a list, but not necessarily a "proper" list, just to muddy things up further. d-: 2014-09-13T21:37:44Z Danniel quit (Quit: Leaving...) 2014-09-13T21:37:46Z Bike: Are you asking why (NIL) is different from NIL? 2014-09-13T21:37:58Z SvenGek: No, no, well I was, but I understand now 2014-09-13T21:38:01Z Danniel joined #lisp 2014-09-13T21:38:08Z Fare joined #lisp 2014-09-13T21:38:19Z Bike: oh, between lisps? well, different languages can do whatever they please. 2014-09-13T21:38:32Z tkd_ is now known as tkd 2014-09-13T21:38:42Z lemoinem quit (Killed (verne.freenode.net (Nickname regained by services))) 2014-09-13T21:38:44Z lemoinem joined #lisp 2014-09-13T21:39:01Z hlavaty` joined #lisp 2014-09-13T21:39:03Z ananna joined #lisp 2014-09-13T21:39:20Z SvenGek: Do you know how the "quote" function works in 'X' lisp? 2014-09-13T21:39:40Z les joined #lisp 2014-09-13T21:39:41Z les quit (Changing host) 2014-09-13T21:39:41Z les joined #lisp 2014-09-13T21:40:08Z vanila: SvenGek, QUOTE is't a function 2014-09-13T21:40:20Z Petit_Dejeuner_ joined #lisp 2014-09-13T21:40:21Z ahungry_ joined #lisp 2014-09-13T21:40:21Z vlnx_ joined #lisp 2014-09-13T21:40:25Z vanila: SvenGek, it's a "special form" that gives you data instead of code 2014-09-13T21:40:26Z jleija_ joined #lisp 2014-09-13T21:40:32Z asedeno joined #lisp 2014-09-13T21:40:35Z misv_ joined #lisp 2014-09-13T21:40:43Z _snits_ joined #lisp 2014-09-13T21:40:47Z vanila: where X would give the value of the variable X, 'X just gives you the symbol X 2014-09-13T21:40:54Z Danniel quit (Client Quit) 2014-09-13T21:41:08Z juzdan joined #lisp 2014-09-13T21:41:09Z eskatrem: SvenGek: do you use a REPL with lisp? 2014-09-13T21:41:15Z SvenGek: yeah 2014-09-13T21:41:43Z SvenGek: Using the picolisp lisp. 2014-09-13T21:41:43Z eskatrem: (quote x) is equivalent to 'x 2014-09-13T21:41:49Z SvenGek: yeah 2014-09-13T21:41:57Z SvenGek: reader macro 'n such 2014-09-13T21:42:19Z juzdan quit (Remote host closed the connection) 2014-09-13T21:42:47Z Fare quit (Ping timeout: 245 seconds) 2014-09-13T21:42:52Z juzdan joined #lisp 2014-09-13T21:43:26Z SvenGek: I'll admit that picolisp isn't designed *at all* for new users, but I find it's extreme simplicity nice and easy (to understand) 2014-09-13T21:43:36Z pjb: SvenGek: did you write a 20-page rapport in three copies justifying the use of pico-lisp? 2014-09-13T21:43:51Z SvenGek: ummm, no? 2014-09-13T21:43:57Z pjb: Because if you didn't, then you should just use one of the major Common Lisp implementations. 2014-09-13T21:44:11Z eskatrem: I never used pico-lisp, but your questions don't seem implementation specific 2014-09-13T21:44:16Z Petit_Dejeuner quit (Ping timeout: 260 seconds) 2014-09-13T21:44:40Z Bike: picolisp isn't a common lisp implementation, it's another language. 2014-09-13T21:44:44Z SvenGek: I know 2014-09-13T21:45:14Z vlnx quit (*.net *.split) 2014-09-13T21:45:16Z eazar001 quit (*.net *.split) 2014-09-13T21:45:16Z phax quit (*.net *.split) 2014-09-13T21:45:16Z jleija quit (*.net *.split) 2014-09-13T21:45:17Z theseb quit (*.net *.split) 2014-09-13T21:45:17Z faheem_ quit (*.net *.split) 2014-09-13T21:45:17Z snits quit (*.net *.split) 2014-09-13T21:45:17Z hlavaty quit (*.net *.split) 2014-09-13T21:45:17Z blakbunnie27 quit (*.net *.split) 2014-09-13T21:45:17Z stoned quit (*.net *.split) 2014-09-13T21:45:17Z Jubb quit (*.net *.split) 2014-09-13T21:45:18Z oconnore quit (*.net *.split) 2014-09-13T21:45:18Z anannie quit (*.net *.split) 2014-09-13T21:45:20Z Kruppe quit (*.net *.split) 2014-09-13T21:45:20Z ahungry quit (*.net *.split) 2014-09-13T21:45:20Z malglim quit (*.net *.split) 2014-09-13T21:45:20Z asedeno_ quit (*.net *.split) 2014-09-13T21:45:20Z cyphase quit (*.net *.split) 2014-09-13T21:45:21Z bjorkintosh quit (*.net *.split) 2014-09-13T21:45:21Z les_ quit (*.net *.split) 2014-09-13T21:45:21Z jayne quit (*.net *.split) 2014-09-13T21:45:21Z misv quit (*.net *.split) 2014-09-13T21:45:45Z ggole quit 2014-09-13T21:46:11Z faheem_ joined #lisp 2014-09-13T21:46:51Z SvenGek: Pretty different. I initially submerged myself into Scheme, which I didn't like, then Clojure, which is pretty nice and easy for a new lisper, but I found its amount of new concepts annoying 2014-09-13T21:47:22Z juzdan quit (Ping timeout: 240 seconds) 2014-09-13T21:47:51Z SvenGek: I get pretty intimidated when I see common lisp's macro system, just saying 2014-09-13T21:48:58Z Shinmera: What's intimidating 2014-09-13T21:50:39Z MouldyOldBones quit (Ping timeout: 264 seconds) 2014-09-13T21:50:44Z phax joined #lisp 2014-09-13T21:50:44Z phax quit (Changing host) 2014-09-13T21:50:44Z phax joined #lisp 2014-09-13T21:50:47Z logand: SvenGek: picolisp is brilliant but it's very different from common lisp; try #picolisp 2014-09-13T21:51:04Z SvenGek: I think they're reader macros, the things like ~@foo or `(foo ~quux) 2014-09-13T21:51:17Z SvenGek: Oh, this is a common lisp channel, isn't it 2014-09-13T21:51:21Z nyef: You don't need to use DEFMACRO if you don't want to. 2014-09-13T21:51:21Z Bike: yeah. 2014-09-13T21:51:23Z SvenGek: well 2014-09-13T21:51:32Z bjorkintosh joined #lisp 2014-09-13T21:51:36Z eskatrem: good luck SvenGek 2014-09-13T21:51:37Z Shinmera: Neither of those are CL syntax, but what you're referring to has nothing to do with macros in particular either 2014-09-13T21:51:40Z SvenGek: hehe, thanks 2014-09-13T21:52:03Z SvenGek: Isn't the ~@ some type of splicing? 2014-09-13T21:52:07Z eazar001 joined #lisp 2014-09-13T21:52:08Z Shinmera: ,@foo is splicing 2014-09-13T21:52:14Z SvenGek: oh 2014-09-13T21:52:15Z Jubb joined #lisp 2014-09-13T21:52:16Z slassh quit (Quit: Leaving) 2014-09-13T21:52:25Z SvenGek: Oh, it's an espace for ` isn't it? 2014-09-13T21:52:25Z cyphase joined #lisp 2014-09-13T21:52:25Z Shinmera: but that's part of the backquote syntax, which has is not really anything about macros 2014-09-13T21:52:30Z Shinmera: it's just useful for macros. 2014-09-13T21:52:40Z Shinmera: *-has 2014-09-13T21:52:50Z Bike: ` is a reader macro, though. 2014-09-13T21:53:16Z Bike: not that reader macros and macros are very related. 2014-09-13T21:53:17Z drewc: what it reads /to/ is a mystery. 2014-09-13T21:54:18Z blakbunnie27 joined #lisp 2014-09-13T21:54:30Z Fare joined #lisp 2014-09-13T21:54:37Z SvenGek: Question, does CL have a lambda data structure? 2014-09-13T21:54:48Z Bike: What would that be? 2014-09-13T21:54:57Z SvenGek: A function 2014-09-13T21:55:11Z Bike: CL has functions but you mean something else. 2014-09-13T21:55:33Z Shinmera: Do you mean functions as first class objects? 2014-09-13T21:55:46Z Elench` joined #lisp 2014-09-13T21:55:50Z drewc: are you asking if lisp has anonymous functions that can be generated using the LAMBDA operator? 2014-09-13T21:56:24Z csziacobus joined #lisp 2014-09-13T21:56:37Z SvenGek: Like could one do (using java sytax): foo instanceof function 2014-09-13T21:57:22Z Elench quit (Ping timeout: 245 seconds) 2014-09-13T21:57:42Z Mon_Ouie quit (Ping timeout: 250 seconds) 2014-09-13T21:58:25Z Bike: clhs functionp 2014-09-13T21:58:25Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_fnp.htm 2014-09-13T21:58:35Z pjb: The lambda operator is a simple macro that expands to the function operator. The lambda operator in Common Lisp doesn't create functions or closures. It's the function operator that does that! 2014-09-13T21:59:21Z pjb: (compile and eval and coerce may also create functions, using other implementation dependant means). 2014-09-13T21:59:41Z drewc: defclass foo () () (:metaclass sb-mop:funcallable-standard-class)) 2014-09-13T22:00:20Z schoppenhauer quit (Quit: Adé) 2014-09-13T22:00:37Z schoppenhauer joined #lisp 2014-09-13T22:01:13Z theethicalegoist joined #lisp 2014-09-13T22:01:18Z drewc: that that make andinstance of FOO and instance of FUNCTION? (functionp (make-instance 'foo)) => t 2014-09-13T22:01:47Z theethicalegoist quit (Client Quit) 2014-09-13T22:02:07Z drewc: and I have a cat who pretends to type... before I have a change to look at things she hits enter .. so sorry about the sp?s there. 2014-09-13T22:02:14Z drewc: chance 2014-09-13T22:02:21Z drewc: not change 2014-09-13T22:02:39Z drewc: see ... now I am all confused ... :| 2014-09-13T22:03:15Z kristof: What's a good example of using a funcallable object that isn't just a lambda? 2014-09-13T22:03:51Z SvenGek: uhhh, so is there an actual "lambda" data structure? or is it implemented using other data structures? 2014-09-13T22:04:02Z SvenGek: "lambda/function" 2014-09-13T22:04:22Z kristof: SvenGek: What would this data structure contain? 2014-09-13T22:05:03Z Bike: SvenGek: cl functions are mostly opaque. you can call them and get a docstring and that's mostly it. 2014-09-13T22:06:13Z kristof: SvenGek: If you just want it to be a pointer to something you can funcall, then a lambda data structure is just a pointer to a function, or a closure (a function and an environment of bindings). In some implementations you might be able to get definitions (which you can manipulate) and docstrings (perhaps you're writing a documentation system). What else would you like from a "lambda" structure? 2014-09-13T22:06:15Z drewc: (functionp 'car) => NIL 2014-09-13T22:06:26Z drewc: (funcall 'car '(t . nil)) => t 2014-09-13T22:06:33Z SvenGek: kristof: Well, I'm not really too sure, the body and the arguments. 2014-09-13T22:06:38Z Bike: yeah, can't do that. 2014-09-13T22:06:40Z kristof: drewc: (functionp #'car) 2014-09-13T22:06:52Z drewc: kristof: => T 2014-09-13T22:06:52Z SvenGek: In Clojure I think there is an actual function-object/structure 2014-09-13T22:07:08Z kristof: drewc: What was the point of what you just wrote, then? I know you know lisp ._. 2014-09-13T22:07:24Z drewc: kristof: a good example of using a funcallable object that isn't just a lambda? 2014-09-13T22:08:00Z kristof: drewc: But that's essentially a lambda, isn't it? car is a (primitive) function. 2014-09-13T22:08:02Z mishoo_ joined #lisp 2014-09-13T22:08:15Z manfoo7`` joined #lisp 2014-09-13T22:08:21Z Bike: 'car is a symbol. 2014-09-13T22:08:24Z Bike: i guess is the point. 2014-09-13T22:08:26Z no0y` joined #lisp 2014-09-13T22:08:32Z kristof: Okay. 2014-09-13T22:08:45Z kristof: Whether or not that is a "good" example is debateable :P but thank you anyway! 2014-09-13T22:08:50Z dmiles joined #lisp 2014-09-13T22:09:31Z isoraqathedh_d joined #lisp 2014-09-13T22:09:34Z drewc: You probably have a winning point there. Thank you! :P 2014-09-13T22:09:48Z urandom_1 joined #lisp 2014-09-13T22:09:56Z SvenGek: Thanks to y'all. 2014-09-13T22:10:00Z SvenGek: By the way. 2014-09-13T22:10:13Z nyef: A funcallable object that isn't a lambda? Isn't the classic example there a generic-function? 2014-09-13T22:11:11Z eschulte_ joined #lisp 2014-09-13T22:11:35Z kristof: SvenGek: Yes and no. The yes is with respect to there being function structures in Clojure. Because Clojure is written at the bedrock level in Java, and Java doesn't/didn't support lambdas, you have to write a Java object that you can essentially funcall and pass around if you want to have those things. 2014-09-13T22:11:47Z njsg__ joined #lisp 2014-09-13T22:11:58Z zacts_ joined #lisp 2014-09-13T22:12:54Z kristof: SvenGek: Common Lisp doesn't... uh... "need" function structs because it's built into the lanugage at the design and implementation level. The "no" is with respect to the word "actual" in "actual function-object/structure". Funcallable objects in Common Lisp really are objects. 2014-09-13T22:12:56Z drewc: nyef: which is an object with a metaclass of? ... though I guess that we still don't think that MOP is a part of Common Lisp, do we? ... I will go back to using uncommon lisp and show myself the door. 2014-09-13T22:13:37Z nyef: And I'll get back to wading through C code. 2014-09-13T22:13:51Z nyef: (bloody garbage collector.) 2014-09-13T22:13:57Z kristof: nyef: By lambda I mean functions, and I guess I extend that to generic functions as well. defun just sets the function value of a symbol to (lambda (args*) (whatever...)), right? 2014-09-13T22:14:10Z EvW quit (Write error: Broken pipe) 2014-09-13T22:14:11Z isoraqathedh quit (Write error: Broken pipe) 2014-09-13T22:14:11Z eschulte quit (Write error: Broken pipe) 2014-09-13T22:14:12Z no0y quit (Write error: Broken pipe) 2014-09-13T22:14:14Z njsg quit (Write error: Broken pipe) 2014-09-13T22:14:14Z manfoo7` quit (Write error: Broken pipe) 2014-09-13T22:14:14Z urandom__ quit (Remote host closed the connection) 2014-09-13T22:14:14Z sid_cyph1r quit (Remote host closed the connection) 2014-09-13T22:14:14Z emma quit (Remote host closed the connection) 2014-09-13T22:14:15Z zacts quit (Remote host closed the connection) 2014-09-13T22:14:15Z lambda quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-13T22:14:16Z Bike: sorta, mostly, kinda 2014-09-13T22:14:27Z EvW joined #lisp 2014-09-13T22:14:30Z nyef: I wouldn't say "just", but that's the heart of it, more or less. 2014-09-13T22:14:39Z kristof: I guess funcallable objects are a good metaclass if you want to write something like the generic function abstractions, right? 2014-09-13T22:14:59Z kristof: Bike, nyef: yeah, I meant that as an oversimplification 2014-09-13T22:15:34Z kristof: Ok, I can imagine funcallable objects with real slots and methods defined on them being useful for genetic programming 2014-09-13T22:15:50Z attila_lendvai joined #lisp 2014-09-13T22:16:36Z dmiles_afk quit (Ping timeout: 267 seconds) 2014-09-13T22:16:36Z defaultxr quit (Ping timeout: 267 seconds) 2014-09-13T22:16:36Z |3b| quit (Ping timeout: 267 seconds) 2014-09-13T22:16:37Z mishoo quit (Ping timeout: 267 seconds) 2014-09-13T22:16:37Z pjb quit (Ping timeout: 267 seconds) 2014-09-13T22:16:37Z emma joined #lisp 2014-09-13T22:17:05Z Krystof joined #lisp 2014-09-13T22:17:18Z drewc: kristof: I have used them for dynamically scoped FLETs among other things using pcos's contextl. And for call/cc interpreted generics using segv's arnesi. 2014-09-13T22:17:29Z EvW quit (Remote host closed the connection) 2014-09-13T22:17:38Z EvW joined #lisp 2014-09-13T22:17:43Z eskatrem quit (Remote host closed the connection) 2014-09-13T22:17:50Z daimrod joined #lisp 2014-09-13T22:18:11Z murftown joined #lisp 2014-09-13T22:18:16Z drewc: so really extending the generic model to include uncommon lispy things I suppose. 2014-09-13T22:18:30Z sid_cypher joined #lisp 2014-09-13T22:19:03Z rme_ joined #lisp 2014-09-13T22:19:12Z logand` joined #lisp 2014-09-13T22:19:35Z girrig_ joined #lisp 2014-09-13T22:19:48Z csziacobus quit (Quit: csziacobus) 2014-09-13T22:19:57Z edgar-rfx joined #lisp 2014-09-13T22:20:03Z Shinmera- joined #lisp 2014-09-13T22:20:04Z kristof: drewc: That's nifty. I don't quite understand where contextl fits in with CLOS, though, because CL's method combinations are so flexible. 2014-09-13T22:20:13Z anannie joined #lisp 2014-09-13T22:20:45Z prxq_ joined #lisp 2014-09-13T22:21:01Z tokenrov1 joined #lisp 2014-09-13T22:21:22Z pjb joined #lisp 2014-09-13T22:21:35Z drewc: Krystof: it is basically having layered methods, and hiding the fact that the dynamically bound layer is in fact the first arg to the generic function that eventually is called. 2014-09-13T22:21:38Z njsg joined #lisp 2014-09-13T22:21:45Z kristof: Oh! I was thinking of aspect oriented programming, actually. 2014-09-13T22:22:08Z phadthai_ joined #lisp 2014-09-13T22:22:11Z dfox_ joined #lisp 2014-09-13T22:22:14Z honkfest1val joined #lisp 2014-09-13T22:22:21Z pjb: SvenGek: other data structures are actually implemented with lambda. For example (modulo some wrapping and hiding): (defun .cons (a d) (lambda (c) (funcall c a d))) (defun .car (c) (funcall c (lambda (a d) a))) (defun .cdr (c) (funcall c (lambda (a d) d))) (.car (.cdr (.cons 1 (.cons 2 (.cons 3 nil))))) 2014-09-13T22:22:22Z kristof: drewc: I'm going to Costanza's papers on it. I'm sure it's useful. What did you use it in? Your web framework? 2014-09-13T22:22:22Z pjb: --> 2 2014-09-13T22:22:30Z drewc: yeah, contextl is like that, only layers are not aspects per se ... 2014-09-13T22:22:48Z zlrth quit (Ping timeout: 246 seconds) 2014-09-13T22:22:59Z brucem_ joined #lisp 2014-09-13T22:23:13Z InvalidC1 joined #lisp 2014-09-13T22:23:14Z SvenGek: Huh 2014-09-13T22:23:19Z drewc: kristof: yeah, I used it in my web framework with arensi's defmethod/cc and that as well... 2014-09-13T22:23:32Z drewc: I cannot recommend that at all btw... 2014-09-13T22:23:33Z logand quit (Ping timeout: 260 seconds) 2014-09-13T22:24:13Z drewc: dynamic scope + capturing of continuations == one giant headache. 2014-09-13T22:24:17Z oleo__ joined #lisp 2014-09-13T22:25:06Z kristof: SvenGek: A rather convoluted implementation of cons adapted from the second chapter of SICP. It's neat-o, and challenges how people traditionally think of data structures. 2014-09-13T22:25:30Z SvenGek: So, that would actually work as cons would? 2014-09-13T22:25:40Z kristof: SvenGek: Sure would. 2014-09-13T22:26:13Z pjb: SvenGek: you couldn't see the difference. 2014-09-13T22:26:40Z pjb: SvenGek: now, to implement consp, it would have to be a little more sophisticated, but the same principle applies. 2014-09-13T22:26:40Z necronian_ joined #lisp 2014-09-13T22:27:06Z kristof: drewc: Dynamic scope makes a mess out of a lot of things. I ran into that while investigating M:N multithreading. You set a dynamic variable, and the proc gets unscheduled. It gets rescheduled, and: surprise! You're at the whim of whatever thread local storage you just landed on. 2014-09-13T22:27:10Z ndrei quit (Ping timeout: 250 seconds) 2014-09-13T22:27:21Z njsg__ quit (*.net *.split) 2014-09-13T22:27:21Z eazar001 quit (*.net *.split) 2014-09-13T22:27:24Z ananna quit (*.net *.split) 2014-09-13T22:27:24Z rme quit (*.net *.split) 2014-09-13T22:27:24Z Shinmera quit (*.net *.split) 2014-09-13T22:27:24Z oleo quit (*.net *.split) 2014-09-13T22:27:26Z dfox quit (*.net *.split) 2014-09-13T22:27:26Z phadthai quit (*.net *.split) 2014-09-13T22:27:26Z K1rk quit (*.net *.split) 2014-09-13T22:27:26Z brucem quit (*.net *.split) 2014-09-13T22:27:26Z honkfestival quit (*.net *.split) 2014-09-13T22:27:26Z InvalidCo quit (*.net *.split) 2014-09-13T22:27:26Z girrig quit (*.net *.split) 2014-09-13T22:27:26Z edgar-rft quit (*.net *.split) 2014-09-13T22:27:27Z Kabaka quit (*.net *.split) 2014-09-13T22:27:29Z tokenrove quit (*.net *.split) 2014-09-13T22:27:29Z scharan quit (*.net *.split) 2014-09-13T22:27:29Z ruste quit (*.net *.split) 2014-09-13T22:27:29Z yauz quit (*.net *.split) 2014-09-13T22:27:29Z prxq quit (*.net *.split) 2014-09-13T22:27:29Z necronian quit (*.net *.split) 2014-09-13T22:27:29Z rotty quit (*.net *.split) 2014-09-13T22:27:29Z DrCode quit (*.net *.split) 2014-09-13T22:27:29Z Adlai quit (*.net *.split) 2014-09-13T22:27:29Z codeburg quit (*.net *.split) 2014-09-13T22:27:31Z rme_ is now known as rme 2014-09-13T22:27:31Z Shaftoe___ joined #lisp 2014-09-13T22:27:31Z necronian_ is now known as necronian 2014-09-13T22:28:01Z alpha- quit (Quit: leaving) 2014-09-13T22:28:02Z drewc: SvenGek: take his code, break it up into the 4 forms, c/p each one here : http://davazp.net/jscl/jscl.html 2014-09-13T22:28:02Z kristof: drewc: Clojure gets around this by manually packing and unpacking an alist of dynamic bindings on park/unpark, respectively. But that's a bit of overhead for lightweight threading, isn't it? 2014-09-13T22:28:03Z yauz joined #lisp 2014-09-13T22:28:07Z Bike: (defun .cons (a d) (lambda (c) (if (eq c #'consp) t (funcall c a d)))), i suppose that's gross, though 2014-09-13T22:28:45Z scharan joined #lisp 2014-09-13T22:29:00Z drewc: kristof: yeah, that is pretty much what I did as well, though contextl allows you a dlambda ... 2014-09-13T22:29:07Z K1rk joined #lisp 2014-09-13T22:29:21Z drewc: which captures the lexical and dynamic scope 2014-09-13T22:29:43Z innertracks joined #lisp 2014-09-13T22:29:44Z drewc: but it basically comes down to the same thing, an alist. 2014-09-13T22:30:11Z eazar001 joined #lisp 2014-09-13T22:30:17Z drewc: which, when call/cc is involved, becomes a memory filling alist. 2014-09-13T22:30:26Z ruste joined #lisp 2014-09-13T22:30:46Z drewc: call/cc + my stupidity of course... that helped quite a bit. 2014-09-13T22:31:02Z kristof: drewc: Oh, that's cool! But when implementing, say, an actor library, the idea of doing all that book-keeping is terrifying from a performance perspective. 2014-09-13T22:31:09Z ndrei joined #lisp 2014-09-13T22:31:36Z rotty joined #lisp 2014-09-13T22:32:40Z kristof: Whatever the final result, though, I'm sure it'll be tremendously faster than Ruby or Python. I'd really like Common Lisp to take the reigns as *the* go-to dynamic language with simple-to-use concurrency abstractions. 2014-09-13T22:32:48Z cy quit (Ping timeout: 260 seconds) 2014-09-13T22:33:11Z drewc: kristof: IIRC, lexical scope was 'created' by implementing actors using lambdas ..... schemers basically. So indeed, book keeping is also terrible from the book shelf being filled. 2014-09-13T22:33:18Z Kabaka joined #lisp 2014-09-13T22:34:25Z kristof: drewc: I'm sorry, is there a better way to implement actors than as lambdas which loop through a queue? 2014-09-13T22:35:29Z drewc: kristof: nope, not that I know of. Hence lexically scoped SCHEMERS. 2014-09-13T22:35:53Z kristof: :) 2014-09-13T22:35:55Z SvenGek: Heh, it took me a little bit to realize that those examples were of a more "purely" functional design 2014-09-13T22:36:32Z drewc: SvenGek: https://en.wikipedia.org/wiki/Lambda_calculus 2014-09-13T22:36:38Z SvenGek: Yeah 2014-09-13T22:37:04Z kristof: lol 2014-09-13T22:37:07Z SvenGek: At first I thought that .cdr and .car could work with CL lists 2014-09-13T22:37:19Z kristof: SvenGek: They work with .conses :P 2014-09-13T22:37:39Z drewc: SvenGek: https://en.wikipedia.org/wiki/Church_encoding :) 2014-09-13T22:38:51Z SvenGek: Unrelated, but I saw this implementation of Fizzbuzz using nothing but Ruby lambdas 2014-09-13T22:39:31Z SvenGek: (actually, it is related to the discussion at hand) "Coding with Nothing" http://codon.com/programming-with-nothing 2014-09-13T22:39:41Z pjb: SvenGek: (defun .list (&rest elements) (if (null elements) 'nil (.cons (first elements) (apply (function .list) (rest elements))))) (.car (.cdr (.list 1 2 3 ))) --> 2 2014-09-13T22:39:43Z drewc: or what is the difference between 3 and '(nil nil nil)? what if CONSs were LAMBDAs and NUMBERs were LAMBDAs? 2014-09-13T22:40:16Z pjb: drewc: you could represent typed objects as a cons containing the type in the car and the value in the cdr. 2014-09-13T22:40:30Z SvenGek: "Programming with nothing", whoops 2014-09-13T22:40:34Z J_Arcane: For a practice exercise while trying to learn it, I code-golfed FizzBuzz in Clojure, down to I think 90 chars, or 98 for a println version. 2014-09-13T22:40:41Z Beetny joined #lisp 2014-09-13T22:40:41Z pjb: (.cons 'cons (.cons 1 2)) vs. (.cons 'fixnum 3) 2014-09-13T22:41:09Z kristof: The beauty of isomorphisms is not that one thing is "just as good" as another, but rather that a set of things is entirely the same as another set... just merely relabled. 2014-09-13T22:41:36Z kristof: J_Arcane: char counts are stupid. Count tokens (and do not count delimiters). 2014-09-13T22:42:24Z SvenGek: Ahh, yes Church encoding. The "Programming with..." dude talked about that 2014-09-13T22:42:24Z J_Arcane: kristof: Heh. Well, thems was the rules, plus the original goal was just to get it to fit in a tweet, so chars were important factor. 2014-09-13T22:44:40Z nand1 quit (Remote host closed the connection) 2014-09-13T22:44:45Z Sgeo_ joined #lisp 2014-09-13T22:44:48Z nyef: o/~ "One of these things is not isomorphic to the others..." o/~ 2014-09-13T22:44:50Z shwouchk quit (Ping timeout: 246 seconds) 2014-09-13T22:44:52Z wchun quit (Ping timeout: 246 seconds) 2014-09-13T22:44:57Z SvenGek: J_Arcane: 8 char difference for println? 2014-09-13T22:44:58Z shwouchk_ joined #lisp 2014-09-13T22:45:33Z aksatac___ quit (Ping timeout: 246 seconds) 2014-09-13T22:45:37Z J_Arcane: SvenGek: I'd done some further compression, but that was offset by needing to loop the results to print them in turn. 2014-09-13T22:45:39Z nand1 joined #lisp 2014-09-13T22:46:02Z teiresia1 joined #lisp 2014-09-13T22:46:04Z ejbs` joined #lisp 2014-09-13T22:46:27Z teiresias quit (Ping timeout: 246 seconds) 2014-09-13T22:46:29Z effy_ joined #lisp 2014-09-13T22:46:29Z J_Arcane: Also, someone had pointed out to me that Clojure is obfuscation friendly, ie. you can strip a lot of spaces. 2014-09-13T22:46:32Z attila_lendvai quit (Disconnected by services) 2014-09-13T22:46:32Z attila_lendvai1 joined #lisp 2014-09-13T22:46:32Z attila_lendvai1 quit (Changing host) 2014-09-13T22:46:32Z attila_lendvai1 joined #lisp 2014-09-13T22:46:35Z Clarice joined #lisp 2014-09-13T22:48:01Z kristof quit (Disconnected by services) 2014-09-13T22:48:13Z Clarice is now known as kristof 2014-09-13T22:48:14Z antoszka_ joined #lisp 2014-09-13T22:48:16Z Phreak joined #lisp 2014-09-13T22:48:21Z SvenGek: Lisp is probably good for certain code golf problems, but I never see anyone using it 2014-09-13T22:48:22Z harish__ joined #lisp 2014-09-13T22:48:32Z J_Arcane: SvenGek: (doseq[i(range 1 101)](println(#(condp = 0(mod % 15)"FizzBuzz"(mod % 3)"Fizz"(mod % 5)"Buzz" %)i))) 2014-09-13T22:48:39Z ahungry joined #lisp 2014-09-13T22:48:51Z SvenGek: Actually, it wouldn't be would it 2014-09-13T22:48:55Z J_Arcane: SvenGek: Because most are actually terrible at it, because they've been written more for clarity than obfuscation. 2014-09-13T22:48:58Z aksatac___ joined #lisp 2014-09-13T22:49:01Z J_Arcane: Clojure is ... special. 2014-09-13T22:49:01Z drmeiste_ joined #lisp 2014-09-13T22:49:10Z rainbyte16 joined #lisp 2014-09-13T22:49:15Z cy joined #lisp 2014-09-13T22:49:28Z nyef_ joined #lisp 2014-09-13T22:49:34Z micro joined #lisp 2014-09-13T22:49:39Z cy is now known as Guest21767 2014-09-13T22:50:06Z micro is now known as Guest54372 2014-09-13T22:50:13Z H4ns` joined #lisp 2014-09-13T22:50:41Z wasamasa: SvenGek: just write some special reader macros and bam, instant obfuscation 2014-09-13T22:50:42Z joga_ joined #lisp 2014-09-13T22:50:49Z vlnx joined #lisp 2014-09-13T22:52:04Z arpunk quit (Ping timeout: 272 seconds) 2014-09-13T22:52:21Z slyrus joined #lisp 2014-09-13T22:52:25Z Guest21767 quit (Client Quit) 2014-09-13T22:52:42Z GlassOctober joined #lisp 2014-09-13T22:53:00Z GlassOctober quit (Changing host) 2014-09-13T22:53:00Z GlassOctober joined #lisp 2014-09-13T22:53:08Z J_Arcane: Anyway, I should sleep 2014-09-13T22:53:08Z GlassOctober is now known as cy 2014-09-13T22:53:16Z antoszka quit (Ping timeout: 246 seconds) 2014-09-13T22:53:17Z ahungry_ quit (Ping timeout: 246 seconds) 2014-09-13T22:53:17Z effy quit (Ping timeout: 246 seconds) 2014-09-13T22:53:20Z froggey quit (Ping timeout: 246 seconds) 2014-09-13T22:53:20Z _d3f quit (Ping timeout: 246 seconds) 2014-09-13T22:53:20Z samebchase quit (Ping timeout: 246 seconds) 2014-09-13T22:53:20Z Bazzie quit (Ping timeout: 246 seconds) 2014-09-13T22:53:20Z ejbs quit (Ping timeout: 246 seconds) 2014-09-13T22:53:20Z harish_ quit (Ping timeout: 246 seconds) 2014-09-13T22:53:20Z Sgeo quit (Ping timeout: 246 seconds) 2014-09-13T22:53:20Z housel quit (Ping timeout: 246 seconds) 2014-09-13T22:53:21Z Ven quit (Ping timeout: 246 seconds) 2014-09-13T22:53:21Z joga quit (Ping timeout: 246 seconds) 2014-09-13T22:53:22Z rainbyte quit (Ping timeout: 246 seconds) 2014-09-13T22:53:22Z Krystof quit (Ping timeout: 246 seconds) 2014-09-13T22:53:22Z Guest31443 quit (Ping timeout: 246 seconds) 2014-09-13T22:53:22Z nyef quit (Ping timeout: 246 seconds) 2014-09-13T22:53:23Z jackdaniel quit (Ping timeout: 246 seconds) 2014-09-13T22:53:23Z schjetne quit (Ping timeout: 246 seconds) 2014-09-13T22:53:25Z drmeister quit (Ping timeout: 246 seconds) 2014-09-13T22:53:26Z vlnx_ quit (Remote host closed the connection) 2014-09-13T22:53:26Z Intensity quit (Ping timeout: 246 seconds) 2014-09-13T22:53:26Z H4ns quit (Ping timeout: 246 seconds) 2014-09-13T22:53:26Z phao quit (Ping timeout: 246 seconds) 2014-09-13T22:53:26Z SvenGek quit (Ping timeout: 246 seconds) 2014-09-13T22:53:28Z housel joined #lisp 2014-09-13T22:53:35Z schjetne joined #lisp 2014-09-13T22:53:35Z phao_ joined #lisp 2014-09-13T22:53:44Z Bazzie joined #lisp 2014-09-13T22:54:37Z samebchase joined #lisp 2014-09-13T22:55:02Z uber quit (Quit: bye) 2014-09-13T22:55:23Z jackdaniel joined #lisp 2014-09-13T22:55:32Z Intensity joined #lisp 2014-09-13T22:55:46Z Px12 quit (Ping timeout: 250 seconds) 2014-09-13T22:57:54Z uber joined #lisp 2014-09-13T22:59:13Z vlnx quit (Read error: Connection reset by peer) 2014-09-13T23:00:01Z froggey joined #lisp 2014-09-13T23:00:03Z chase_gray joined #lisp 2014-09-13T23:00:05Z froggey quit (Changing host) 2014-09-13T23:00:05Z froggey joined #lisp 2014-09-13T23:00:33Z csziacobus joined #lisp 2014-09-13T23:00:59Z vaporatorius quit (Remote host closed the connection) 2014-09-13T23:01:01Z vlnx joined #lisp 2014-09-13T23:02:30Z chase_gr` joined #lisp 2014-09-13T23:03:31Z chase_gray quit (Remote host closed the connection) 2014-09-13T23:04:27Z innertracks quit (Ping timeout: 245 seconds) 2014-09-13T23:07:16Z segv- quit (Ping timeout: 272 seconds) 2014-09-13T23:08:11Z arpunk joined #lisp 2014-09-13T23:09:26Z phao_ quit (Quit: Leaving) 2014-09-13T23:09:49Z phao joined #lisp 2014-09-13T23:16:04Z Vutral joined #lisp 2014-09-13T23:16:34Z mishoo_ quit (Ping timeout: 250 seconds) 2014-09-13T23:19:41Z xristos joined #lisp 2014-09-13T23:20:52Z Vutral quit (Ping timeout: 260 seconds) 2014-09-13T23:21:22Z slyrus quit (Ping timeout: 240 seconds) 2014-09-13T23:22:22Z zacts_ quit (Quit: leaving) 2014-09-13T23:27:51Z jkaye joined #lisp 2014-09-13T23:28:12Z zacts joined #lisp 2014-09-13T23:30:45Z revereche joined #lisp 2014-09-13T23:30:53Z revereche: Hi! 2014-09-13T23:31:14Z pjb: Lo! 2014-09-13T23:31:24Z LiamH1 joined #lisp 2014-09-13T23:31:53Z revereche: Is anyone online who could help me figure out why a CLISP program from the early 90s isn't working as expected? 2014-09-13T23:32:06Z jkaye quit (Ping timeout: 246 seconds) 2014-09-13T23:32:22Z Petit_Dejeuner_: Maybe, what's broken, 2014-09-13T23:32:40Z Xach: revereche: sure, what's up? 2014-09-13T23:32:47Z pjb: revereche: First, is it a clisp or a Common Lisp program? 2014-09-13T23:32:51Z revereche: The code has comments explaining what should happen, and it doesn't perform that way. Lemme link 2014-09-13T23:33:03Z pjb: And if it's a Common Lisp program is it conforming, or does it use implementation specific extensions? 2014-09-13T23:33:04Z revereche: http://eliterature.org/images/microtalespin.txt 2014-09-13T23:33:28Z LiamH quit (Ping timeout: 250 seconds) 2014-09-13T23:33:35Z revereche: More background on the code: http://eliterature.org/2006/01/meehan-and-sacks-micro-talespin/ 2014-09-13T23:33:52Z revereche: It says it's just plain CLISP 2014-09-13T23:34:24Z pjb: No, it says Common Lisp! Right there, on the fucking fourth line! --> A reconstruction, in Common Lisp, of James Meehan's program in 2014-09-13T23:34:31Z revereche: Well, Common Lisp, but I'm pretty sure it was written in a CLISP environmen 2014-09-13T23:34:41Z revereche: Sorry, I'm still relatively new to the language 2014-09-13T23:34:54Z Xach: revereche: CLISP is not the same thing as Common Lisp. 2014-09-13T23:35:03Z revereche: I know, sorry, I confuse the two 2014-09-13T23:35:15Z Xach: revereche: what happens when you try to load that file? 2014-09-13T23:35:25Z revereche: I had installed CLISP because SLIME wasn't working, so it's still on my mind 2014-09-13T23:35:50Z revereche: They all end with the condition unsatisfied 2014-09-13T23:36:13Z pjb: Do you have an example of use? 2014-09-13T23:36:15Z Xach: revereche: could you use paste.lisp.org and show what you tried to do and what you expected it to do? 2014-09-13T23:36:21Z revereche: Sure, give me a sec 2014-09-13T23:37:29Z revereche: err, *because SCBL wasn't working 2014-09-13T23:37:37Z revereche: sorry, learning lots of terms at once 2014-09-13T23:37:39Z pjb: From a quick look at it, it seems totally conforming. 2014-09-13T23:37:44Z Xach: So many terms 2014-09-13T23:37:50Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-13T23:38:05Z nyef_: So many terms, so few course credits. 2014-09-13T23:38:19Z __main__ joined #lisp 2014-09-13T23:38:30Z pjb: (micro-talespin-demo *story1*) seems to generate a nice story. 2014-09-13T23:39:21Z pjb: What is there to complain about? http://paste.lisp.org/+32VW 2014-09-13T23:39:37Z Xach: Your hectoring non-help, perhaps. 2014-09-13T23:39:41Z revereche: Okay, this is what I get 2014-09-13T23:39:43Z revereche: http://paste.lisp.org/display/143709 2014-09-13T23:40:09Z Xach: revereche: don't forget the other half...what did you expect? 2014-09-13T23:40:12Z pjb: Yes, I get the same result (modulo my setting of *print-case*. It's good. 2014-09-13T23:40:43Z revereche: I'm on Emacs running CLISP on SLIME, I compile it with C-c C-k 2014-09-13T23:40:54Z revereche: What am I doing wrong that Joe doesn't drink in my case? 2014-09-13T23:40:55Z DrCode joined #lisp 2014-09-13T23:40:56Z Xach: revereche: I would try not to compile it. Try load instead. 2014-09-13T23:41:10Z Xach: C-c C-l is the key 2014-09-13T23:41:17Z Xach: you will need to restart, first. 2014-09-13T23:41:20Z revereche: Ok 2014-09-13T23:41:26Z Xach: ,restart-inferior-lisp in the repl will restart 2014-09-13T23:42:21Z revereche: It works now!!! Thanks a lot :D 2014-09-13T23:42:31Z revereche: Why does C-l work and not C-k? 2014-09-13T23:42:46Z Xach: revereche: It is sadly not uncommon for programs to be written in a way that are not friendly to compilation. 2014-09-13T23:42:54Z Xach: Old programs, I should say. 2014-09-13T23:43:10Z Xach: They are written in a way that expects each form to be read and immediately evaluated, as LOAD does. 2014-09-13T23:43:20Z lifenoodles quit (Quit: ZNC - http://znc.in) 2014-09-13T23:43:32Z revereche: Huh, that's useful to know 2014-09-13T23:43:42Z Xach: compiling (as with C-c C-k) does not evaluate everything right away, so the program may be expecting to have a piece of data or other info that is not available when it is needed. 2014-09-13T23:43:45Z revereche: I would have thought back in the days of limited processing power it would be the opposite 2014-09-13T23:43:49Z krid joined #lisp 2014-09-13T23:45:33Z pjb: revereche: I've dumped my special variables, you can do the same and compare with yours: http://paste.lisp.org/+32VW/1 2014-09-13T23:45:45Z revereche: pjb, it's working now, thanks! 2014-09-13T23:46:26Z pjb: You would want to find wheree there's this difference between load and compile to correct it. 2014-09-13T23:46:38Z kristof: Xach: Is that similar to the "ambitious evaluation" strategy that Kent Pitman once wrote about? 2014-09-13T23:46:38Z pjb: (perhaps wrapping some form in eval-when). 2014-09-13T23:47:04Z pjb: revereche: it's probably the set-macro-character. 2014-09-13T23:47:15Z Xach: That seems pretty likely. 2014-09-13T23:47:55Z Elench`` joined #lisp 2014-09-13T23:47:57Z pjb: (eval-when (:compile-toplevel :load-toplevel :execute) …) with … = from (defstruct (pcvar …)) to (set-macro-character … t)) 2014-09-13T23:48:04Z revereche: pjb: That's a good point, but I'm still pretty new to the language and think debugging might be beyond my abilities at the moment . .. really, I'm just using this as reference for future programs of my own 2014-09-13T23:48:24Z chase_gr` quit (Ping timeout: 260 seconds) 2014-09-13T23:48:34Z pjb: revereche: I know debugging is beyond your abilities. That's why *I* did it! 2014-09-13T23:48:43Z Elench`` quit (Changing host) 2014-09-13T23:48:43Z Elench`` joined #lisp 2014-09-13T23:48:46Z Elench`` is now known as Elench 2014-09-13T23:49:32Z pjb: But anyways, it would need a make-load-form method… 2014-09-13T23:49:40Z revereche: See, I don't even know enough yet to see what you're saying there 2014-09-13T23:49:45Z a20141232 joined #lisp 2014-09-13T23:51:21Z Elench` quit (Ping timeout: 272 seconds) 2014-09-13T23:51:34Z whmark``` is now known as whmark 2014-09-13T23:51:43Z revereche: Thanks again for the help, everyone 2014-09-13T23:51:49Z revereche quit (Quit: Page closed) 2014-09-13T23:53:22Z mrSpec quit (Quit: mrSpec) 2014-09-13T23:53:34Z pjb: minion: memo for revereche: that should do it: http://paste.lisp.org/+32VW/2 2014-09-13T23:53:34Z minion: Remembered. I'll tell revereche when he/she/it next speaks. 2014-09-13T23:53:56Z Shaftoe___ joined #lisp 2014-09-13T23:54:22Z pjb: Anyways, that's a good way to know more, leaving… 2014-09-13T23:54:32Z normanrichards quit 2014-09-13T23:54:54Z chase_gr` joined #lisp 2014-09-13T23:58:11Z attila_lendvai1 quit (Quit: Leaving.) 2014-09-14T00:01:11Z Clarice joined #lisp 2014-09-14T00:02:20Z csziacobus quit (Quit: csziacobus) 2014-09-14T00:03:48Z kristof quit (Ping timeout: 250 seconds) 2014-09-14T00:04:08Z zlrth joined #lisp 2014-09-14T00:05:22Z nihilatus joined #lisp 2014-09-14T00:07:36Z Shaftoe___: any opinions on what the best way to use a C++ class as no more than struct in lisp? Meaning, I want to use an object that exists in a library, but I don't need the C++ functionality. All I need is the struct layout... 2014-09-14T00:07:49Z otwieracz quit (Ping timeout: 272 seconds) 2014-09-14T00:08:21Z Shaftoe___: (and for clarity, I'm talking about using a foreign library via CFFI. I just need to pass around/return a struct from said library) 2014-09-14T00:08:42Z pjb: Shaftoe___: The best way would be to define a functional abstraction over the C++ object in C, and CFFI to access those C functions from lisp. 2014-09-14T00:09:31Z pjb: You can try to have fun with defcstruct, if you're into bdsm. 2014-09-14T00:09:37Z Shaftoe___: pjb: I've thought of that, and it is my last resort. However, the particular structure I'm trying to work with is really no more than a struct. It's been made C++'y because people didn't know any better 2014-09-14T00:10:01Z Shaftoe___: so my "class" is essentially a struct with 5 floats in it. 2014-09-14T00:10:28Z nyef_: Shaftoe___: If it's a struct, then you might be able to grovel or otherwise define a suitable alien-struct type, whatever the concept is called in CFFI. 2014-09-14T00:10:39Z Shaftoe___: pjb: It's bdsm no matter what, ;) 2014-09-14T00:11:07Z gmcastil joined #lisp 2014-09-14T00:11:27Z pjb: Then a defcstruct matching correctly the fields should do. 2014-09-14T00:11:31Z Shaftoe___: nyef_: that's the thing. It's not a struct. It's a class (in the library headers). I *could* just copy/paste the class itself, but that's poor taste. 2014-09-14T00:11:44Z blakbunnie27 quit (Ping timeout: 260 seconds) 2014-09-14T00:11:56Z Shinmera- quit (Quit: zzZ) 2014-09-14T00:12:01Z Shaftoe___: ok. so manually is the answer. I was just checking if there was any way around it that I Wasn't aware of 2014-09-14T00:12:05Z nyef_: A C++ class is a C++ struct with different default member visibility, IIRC. 2014-09-14T00:12:17Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-14T00:12:18Z blakbunnie27 joined #lisp 2014-09-14T00:12:38Z nyef_: Admittedly, ISTR learning that before the STL was in the standard. 2014-09-14T00:12:42Z pjb: There's no difference between structs and classes in C++. Only if you have virtual methods, you will have a pointer to the vtable somewhere in it. 2014-09-14T00:12:46Z pjb: (actually before the first field IIRC). 2014-09-14T00:13:46Z Shaftoe___: nyef_ : it is. I'm just not sure groveling works as well in C++ 2014-09-14T00:14:00Z nyef_: So try it? 2014-09-14T00:14:07Z otwieracz joined #lisp 2014-09-14T00:14:09Z murftown quit (Quit: murftown) 2014-09-14T00:14:59Z nyef_: Failing that, drmeiste_ might have some ideas. He's got some C++ integration thing going on. 2014-09-14T00:15:07Z Shaftoe___: I shall. 2014-09-14T00:15:36Z drmeiste_ is now known as drmeister 2014-09-14T00:16:29Z Shaftoe___: nyef_: yes, he's mentioned to me his project using clasp. It is interesting and down the pipe I might actually use it. 2014-09-14T00:17:45Z drmeister: Your frustrations in exposing C++ class/struct(s) to Common Lisp are the same I felt and why I wrote Clasp. 2014-09-14T00:17:53Z joneshf-laptop_ quit (Ping timeout: 260 seconds) 2014-09-14T00:19:09Z Shaftoe___: indeed. 2014-09-14T00:19:59Z Shaftoe___: I've finally resorted to segregating large swaths of functionality behind binary boundaries (dylibs) but even communicating with these libraries requires me to either copy/paste code or figure out how to import C++ headers. 2014-09-14T00:20:13Z Shaftoe___: it's like everything is always solved and not solved by more indirection. 2014-09-14T00:20:18Z drmeister: A day rarely goes by when someone doesn't come into #lisp wondering if there is a better way to expose C++ class/struct/functionality to Common Lisp. 2014-09-14T00:20:37Z vowyer joined #lisp 2014-09-14T00:21:51Z Shaftoe___: I think part of the problem lies with C++ in that respect. But then again, C++ was never made to be binary interoperable. C++ header files just aren't consumable by anyone else but C++ 2014-09-14T00:21:56Z vowyer quit (Client Quit) 2014-09-14T00:22:01Z kcj joined #lisp 2014-09-14T00:22:08Z nyef_: Mmm. And not even by different C++ compilers, at times. 2014-09-14T00:22:34Z vowyer joined #lisp 2014-09-14T00:22:56Z chase_gr` quit (Ping timeout: 260 seconds) 2014-09-14T00:23:01Z Clarice quit (Ping timeout: 272 seconds) 2014-09-14T00:24:19Z drmeister: I completely agree the problem is C++. In order to support all those "higher level abstractions" that ultimately came from Lisp it's had to twist C++ syntax into the awful mess that it is. It's absolutely hostile to interoperation with other languages. 2014-09-14T00:25:39Z Shaftoe___: I blame it on small hominid brain size and recognize that it is our collective job to slowly work through this mess. =) 2014-09-14T00:26:21Z drmeister: That and retain some compatibility with C. The only thing that can read and reason about C++ properly is a C++ compiler front end. Fortunately, Clang/LLVM have exposed the C++ compiler front end as a library and I have exposed that C++ library within Common Lisp. So everything is going to be ok. :-) 2014-09-14T00:26:25Z nyef_: Alternately, treat the entire C++ ecosystem the same way we do nuclear waste: Bury it in a mountain until everyone forgets about it. 2014-09-14T00:27:08Z drmeister: Why is everyone doing underscores today? Is it the new fashion? 2014-09-14T00:27:10Z drmeister is now known as drmeister_ 2014-09-14T00:27:37Z nyef_: I have an underscore because I keep getting disconnected. 2014-09-14T00:27:42Z vowyer quit (Ping timeout: 272 seconds) 2014-09-14T00:28:10Z vowyer joined #lisp 2014-09-14T00:28:12Z nyef_: If my nick is still in use when I reconnect, XChat appends an underscore in an attempt to find an available nick. 2014-09-14T00:28:20Z vowyer is now known as vowyer_ 2014-09-14T00:29:09Z gmcastil quit (Ping timeout: 246 seconds) 2014-09-14T00:29:51Z Petit_Dejeuner_: But the rest of us are doing it for fashion. 2014-09-14T00:30:16Z vowyer_ quit (Client Quit) 2014-09-14T00:30:40Z vowyer_ joined #lisp 2014-09-14T00:31:06Z drmeister_ is now known as drmeister__ 2014-09-14T00:31:16Z Shaftoe___ is now known as Shaftoe 2014-09-14T00:31:32Z Shaftoe: it would seem my nick was registered by someone. 2014-09-14T00:31:47Z Shaftoe: ah well. 2014-09-14T00:33:29Z malice quit (Quit: Leaving) 2014-09-14T00:34:13Z paul0 quit (Ping timeout: 260 seconds) 2014-09-14T00:35:17Z vowyer_ quit (Ping timeout: 272 seconds) 2014-09-14T00:38:36Z malglim joined #lisp 2014-09-14T00:39:11Z Karl_Dscc joined #lisp 2014-09-14T00:39:27Z Nyle joined #lisp 2014-09-14T00:40:34Z resttime: i have an account to a server which serves pages with apache to a folder in my home directory 2014-09-14T00:40:44Z joneshf-laptop joined #lisp 2014-09-14T00:40:52Z resttime: is there a way i can have clack take the requests to serve instead? 2014-09-14T00:41:08Z phao: Hi. I'm sorry this is quite offtopic, but I don't really know where to ask about this. Is there any good document (book, website, ... anything) on effectively dealing with secondary storage? I'm not looking for "the one righteous way", but more of a material which explorer some particular way(s) of doing this. It could be in lisp, or not. I don't really care about that. 2014-09-14T00:41:15Z resttime: that is if i can't change the apache port itself 2014-09-14T00:42:17Z k-stz quit (Remote host closed the connection) 2014-09-14T00:47:49Z mr-foobar quit (Read error: Connection reset by peer) 2014-09-14T00:48:07Z vowyer_ joined #lisp 2014-09-14T00:48:14Z Nyle is now known as stoned 2014-09-14T00:48:28Z Vutral joined #lisp 2014-09-14T00:48:36Z mr-foobar joined #lisp 2014-09-14T00:50:23Z atgreen joined #lisp 2014-09-14T00:50:46Z Clarice joined #lisp 2014-09-14T00:52:26Z murftown joined #lisp 2014-09-14T00:56:32Z Vutral quit (Ping timeout: 260 seconds) 2014-09-14T00:57:17Z Clarice is now known as kristof 2014-09-14T00:58:38Z antoszka_ is now known as antoszka 2014-09-14T01:02:28Z Shaftoe: I wonder if there's ever been a serious security analysis of program tear down bugs. 2014-09-14T01:03:26Z Shaftoe: I have the impression that there must be some serious security gaps, what with all the haphazard memory management that goes on at the end of the life of a binary 2014-09-14T01:08:10Z AntiSpamMeta quit (Quit: rotations) 2014-09-14T01:08:11Z zacharias joined #lisp 2014-09-14T01:08:24Z AntiSpamMeta joined #lisp 2014-09-14T01:10:18Z Bike: phao: like how to write a filesystem or something...? 2014-09-14T01:10:37Z phao: Bike, simpler than that. 2014-09-14T01:11:01Z kristof: Shaftoe: You can't execute arbitrary code during that time, though. You also can't access the memory unless you're root, and if root's compromised... 2014-09-14T01:11:07Z phao: more on how to use it well... and other storage mechanisms too. Like those textbooks on relational DBs used in college. 2014-09-14T01:11:22Z zRecursive joined #lisp 2014-09-14T01:11:33Z Shaftoe: kristof: I was thinking more in terms of all the various destructors that get run 2014-09-14T01:11:41Z Shaftoe: libraries unload etc. 2014-09-14T01:11:56Z Shaftoe: plenty of code runs after a binary has entered tear down mode 2014-09-14T01:12:07Z Shaftoe: unless you just kill with extreme prejudice. 2014-09-14T01:12:31Z Shaftoe: there *must* be exploits there. 2014-09-14T01:12:43Z kristof: Shaftoe: Wouldn't you trust the destructors, though? 2014-09-14T01:13:01Z prxq joined #lisp 2014-09-14T01:13:59Z Shaftoe: kristof: that's what I mean: I wonder if there's been any systematic analysis done on destructors in general. We kind of assume that by the time they're called, everything is safe. But I wonder what would happen to data structures that have been corrupted and where that corruption only becomes apparent at tear down time. 2014-09-14T01:14:19Z Shaftoe: This is all an idle thought, mind you. 2014-09-14T01:14:23Z kristof: yeah 2014-09-14T01:14:28Z a20141232 quit (Quit: Page closed) 2014-09-14T01:16:07Z prxq_ quit (Ping timeout: 245 seconds) 2014-09-14T01:18:04Z Karl_Dscc quit (Remote host closed the connection) 2014-09-14T01:19:49Z vowyer_ quit (Quit: C-x C-c) 2014-09-14T01:22:35Z phao quit (Quit: Leaving) 2014-09-14T01:24:24Z ejbs` quit (Ping timeout: 250 seconds) 2014-09-14T01:25:27Z matko joined #lisp 2014-09-14T01:29:30Z murftown quit (Quit: murftown) 2014-09-14T01:30:38Z zRecursive quit (Remote host closed the connection) 2014-09-14T01:30:50Z zRecursive joined #lisp 2014-09-14T01:36:15Z zlrth quit (Remote host closed the connection) 2014-09-14T01:43:45Z kpreid quit (Ping timeout: 260 seconds) 2014-09-14T01:53:30Z a20141231 joined #lisp 2014-09-14T01:58:12Z JuanDaugherty quit (Ping timeout: 250 seconds) 2014-09-14T02:00:47Z arpunk quit (Ping timeout: 272 seconds) 2014-09-14T02:03:52Z mtd quit (Remote host closed the connection) 2014-09-14T02:03:53Z LiamH1 is now known as LiamH 2014-09-14T02:05:42Z brucem_ quit (Changing host) 2014-09-14T02:05:42Z brucem_ joined #lisp 2014-09-14T02:05:47Z brucem_ is now known as brucem 2014-09-14T02:06:55Z rvirding_ is now known as rvirding 2014-09-14T02:07:54Z nihilatus quit (Quit: Connection closed for inactivity) 2014-09-14T02:09:23Z mtd joined #lisp 2014-09-14T02:10:45Z chase_gr` joined #lisp 2014-09-14T02:16:50Z wasamasa quit (Ping timeout: 250 seconds) 2014-09-14T02:18:52Z no0y` quit (Remote host closed the connection) 2014-09-14T02:20:14Z normanrichards joined #lisp 2014-09-14T02:20:56Z kcj quit (Remote host closed the connection) 2014-09-14T02:23:18Z kpreid joined #lisp 2014-09-14T02:23:32Z zacharias quit (Ping timeout: 245 seconds) 2014-09-14T02:25:53Z chase_gr` quit (Ping timeout: 272 seconds) 2014-09-14T02:31:24Z wasamasa joined #lisp 2014-09-14T02:33:22Z dmiles quit (Ping timeout: 240 seconds) 2014-09-14T02:34:00Z wizzo joined #lisp 2014-09-14T02:34:07Z defaultxr joined #lisp 2014-09-14T02:36:57Z mutley89 quit (Ping timeout: 245 seconds) 2014-09-14T02:37:47Z kcj joined #lisp 2014-09-14T02:39:49Z kpreid_ joined #lisp 2014-09-14T02:40:06Z kpreid quit (Read error: Connection reset by peer) 2014-09-14T02:40:08Z kpreid_ is now known as kpreid 2014-09-14T02:40:17Z defaultxr quit (Ping timeout: 245 seconds) 2014-09-14T02:40:18Z modula joined #lisp 2014-09-14T02:40:20Z modula is now known as defaultxr 2014-09-14T02:46:52Z kristof quit (Ping timeout: 240 seconds) 2014-09-14T02:48:55Z EvW quit (Ping timeout: 272 seconds) 2014-09-14T02:51:58Z cheryllium joined #lisp 2014-09-14T02:52:05Z cheryllium: hello all, it's been a while 2014-09-14T02:52:08Z vanila: hi 2014-09-14T02:52:39Z billstclair joined #lisp 2014-09-14T02:55:37Z DGASAU` quit (Ping timeout: 260 seconds) 2014-09-14T02:55:43Z karswell` joined #lisp 2014-09-14T02:56:10Z rme quit (Quit: rme) 2014-09-14T02:57:50Z Jesin joined #lisp 2014-09-14T02:58:17Z Shaftoe quit (Quit: Shaftoe) 2014-09-14T02:59:22Z huza joined #lisp 2014-09-14T02:59:23Z DGASAU` joined #lisp 2014-09-14T03:05:19Z _5kg quit (Quit: WeeChat 1.0) 2014-09-14T03:09:27Z Bazzie quit (Ping timeout: 245 seconds) 2014-09-14T03:09:49Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-14T03:13:22Z ndrei quit (Ping timeout: 240 seconds) 2014-09-14T03:15:07Z Shaftoe___ joined #lisp 2014-09-14T03:17:12Z a20141231 quit (Quit: Page closed) 2014-09-14T03:18:01Z _5kg joined #lisp 2014-09-14T03:19:50Z MouldyOldBones joined #lisp 2014-09-14T03:22:27Z DrCode quit (Ping timeout: 264 seconds) 2014-09-14T03:23:24Z Adlai joined #lisp 2014-09-14T03:26:29Z codeburg joined #lisp 2014-09-14T03:27:48Z Px12 joined #lisp 2014-09-14T03:27:58Z vanila: is lisp the simplest language to write a compiler for? 2014-09-14T03:28:26Z nightfly: a lisp-like language can be pretty easy to write an interpretor for 2014-09-14T03:28:47Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-14T03:28:54Z DrCode joined #lisp 2014-09-14T03:29:09Z edgar-rfx quit (Quit: lifeform experiment ended because all hope lost) 2014-09-14T03:29:11Z TDog joined #lisp 2014-09-14T03:29:12Z jkaye joined #lisp 2014-09-14T03:32:13Z nyef_: vanila: No, but FORTH might be. 2014-09-14T03:32:23Z Fare: a lisp to lisp compiler is trivial to write: COMPILE 2014-09-14T03:32:34Z vanila: Fare that's cheating! 2014-09-14T03:32:49Z vanila: FORTH i better look into 2014-09-14T03:33:11Z nyef_: It's also easier to write the runtime support and standard library for FORTH. 2014-09-14T03:33:32Z jkaye quit (Ping timeout: 250 seconds) 2014-09-14T03:33:35Z Fare: see the classic book "LiSP in Small Pieces" 2014-09-14T03:33:50Z Fare: FORTH is lower-level 2014-09-14T03:34:00Z Fare: so that's a bit cheating. 2014-09-14T03:34:23Z Fare: but yes, even I could write an eforth kernel in a few lines of 386 assembly 2014-09-14T03:34:28Z nyef_: Hunh. I didn't realize that my copy of LiSP was here, I thought that it was in New Hampshire. 2014-09-14T03:35:44Z Fare: between the two, there's factor 2014-09-14T03:36:16Z vanila: is forth a good target for a lisp compiler? 2014-09-14T03:36:25Z Fare: LOL does just that 2014-09-14T03:36:40Z Fare: it has a FORTH in Lisp and a Lisp in FORTH. 2014-09-14T03:36:46Z arpunk joined #lisp 2014-09-14T03:37:49Z Fare: somehow, poplog also had a stack-based VM on top of which it had implementations of pop-11, common-lisp, prolog, ml 2014-09-14T03:38:20Z nyef_: Is poplog worth looking into these days? 2014-09-14T03:38:26Z Fare: btw, pop-2 had lexical scoping before scheme did. 2014-09-14T03:38:29Z cheryllium quit (Remote host closed the connection) 2014-09-14T03:38:38Z Fare: and gc shortly after Lisp 1 did 2014-09-14T03:39:09Z Fare: nyef: well, the code is free software these days, but does feel old. 2014-09-14T03:41:24Z zRecursive quit (Remote host closed the connection) 2014-09-14T03:41:36Z nyef_: Hrm. 2014-09-14T03:42:23Z yngccc joined #lisp 2014-09-14T03:44:04Z Fare: there's probably stuff to be learned in it 2014-09-14T03:44:08Z Shaftoe___ joined #lisp 2014-09-14T03:45:09Z Shaftoe___ quit (Client Quit) 2014-09-14T03:47:23Z Fare: vanila: what ISN'T cheating? 2014-09-14T03:47:44Z Fare: Ikarus Scheme and the accompanying articles are good, I suppose 2014-09-14T03:52:14Z Fare: vanila: smallest non-cheating solution is possibly maru 2014-09-14T03:54:00Z nyef_: ... the cat? 2014-09-14T03:55:02Z vanila: looks neat! 2014-09-14T03:55:05Z vanila: http://piumarta.com/software/maru/ 2014-09-14T03:55:07Z vanila: will read it omrmow 2014-09-14T03:55:49Z vanila quit (Remote host closed the connection) 2014-09-14T03:57:51Z DGASAU` quit (Remote host closed the connection) 2014-09-14T03:57:53Z nyef_: Ah, right, this. 2014-09-14T03:58:36Z nyef_: ... And it does link to the cat in question. 2014-09-14T03:59:22Z DGASAU` joined #lisp 2014-09-14T03:59:37Z krid quit (Ping timeout: 272 seconds) 2014-09-14T04:00:45Z dmiles_afk joined #lisp 2014-09-14T04:06:50Z Shaftoe___ joined #lisp 2014-09-14T04:08:00Z Shaftoe___ quit (Client Quit) 2014-09-14T04:09:07Z Shaftoe___ joined #lisp 2014-09-14T04:09:19Z Shaftoe___ quit (Client Quit) 2014-09-14T04:10:56Z Petit_Dejeuner_: Lambda Calc is cheating? 2014-09-14T04:12:56Z Fare: you might want to also read about nano pass compilers 2014-09-14T04:14:57Z LiamH quit (Quit: Leaving.) 2014-09-14T04:16:06Z Shaftoe___ joined #lisp 2014-09-14T04:16:07Z DGASAU` quit (Ping timeout: 245 seconds) 2014-09-14T04:18:13Z _tca: Petit_Dejeuner_: to completely not cheat you have to translate all the semantics of the language to the machine's within the language itself.... for whatever you decide the machine is 2014-09-14T04:19:08Z Shaftoe___ quit (Client Quit) 2014-09-14T04:19:09Z Petit_Dejeuner_: So, I'd need some sort of I/O? 2014-09-14T04:20:00Z matko quit (Ping timeout: 260 seconds) 2014-09-14T04:21:38Z yngccc left #lisp 2014-09-14T04:21:52Z huza quit (Ping timeout: 245 seconds) 2014-09-14T04:22:26Z _tca: probably not in the way you are thinking 2014-09-14T04:23:06Z nug700 joined #lisp 2014-09-14T04:25:00Z DGASAU` joined #lisp 2014-09-14T04:32:16Z nyef_ quit (Quit: G'night all.) 2014-09-14T04:33:24Z |3b|`` joined #lisp 2014-09-14T04:33:52Z Shaftoe___ joined #lisp 2014-09-14T04:35:12Z vydd quit (Remote host closed the connection) 2014-09-14T04:35:24Z |3b|`` is now known as |3b| 2014-09-14T04:43:42Z beach joined #lisp 2014-09-14T04:43:52Z beach: Good morning everyone! 2014-09-14T04:44:49Z knightblader quit (Ping timeout: 260 seconds) 2014-09-14T04:46:47Z _tca: hiya 2014-09-14T04:47:23Z zacts: evening 2014-09-14T04:47:50Z Amaan joined #lisp 2014-09-14T04:48:16Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-14T04:48:28Z knightblader joined #lisp 2014-09-14T04:55:09Z Petit_Dejeuner_: _tca, er, then arbitary limitations related to how much memory I have and a way to read and write to memory? 2014-09-14T04:56:51Z nipra quit (Ping timeout: 272 seconds) 2014-09-14T04:56:55Z cyphase quit (Quit: cyphase.com) 2014-09-14T05:01:08Z Px12 quit (Read error: Connection reset by peer) 2014-09-14T05:04:54Z beach: Where would (say) SBCL store X in (let ((x ...)) (count-if (lambda (y) (< y x)) ...)) and what instructions would it have to execute in order to access it inside the anonymous function? 2014-09-14T05:06:12Z beach: I could read some disassembled code, but I thought I would check first whether someone happens to know. 2014-09-14T05:07:52Z nipra joined #lisp 2014-09-14T05:09:03Z leo2007 quit (Quit: rcirc on GNU Emacs 24.4.50.1) 2014-09-14T05:09:27Z leo2007 joined #lisp 2014-09-14T05:12:28Z jsnell: it depends 2014-09-14T05:12:42Z beach: I'm listening. 2014-09-14T05:13:05Z Bazzie joined #lisp 2014-09-14T05:14:06Z __main__ quit (Read error: Connection reset by peer) 2014-09-14T05:14:45Z jsnell: if the lambda closes over any non-constant variables, a closure object will be allocated. the closure object will essentially have a pointer to the function, and an inline vector with one element per closed over variable. when a closure is called, the calling convention is such that the function starts with that closure pointer in a certain register 2014-09-14T05:15:18Z __main__ joined #lisp 2014-09-14T05:15:45Z jsnell: and the function code will simply deference into the appropriate index in that inline vector 2014-09-14T05:15:58Z beach: OK, got it. Thanks. 2014-09-14T05:16:14Z jsnell: it's a bit more complicated if X gets modified anywhere, however 2014-09-14T05:16:25Z beach: Yeah, OK. I can see that. 2014-09-14T05:16:48Z beach: jsnell: Hello by the way. How are things? 2014-09-14T05:16:49Z jsnell: in that case a "value cell" will be allocated on the heap, containing just that value 2014-09-14T05:17:08Z jsnell: and the closure vector will instead contain a pointer to the value cell 2014-09-14T05:17:17Z beach: OK. Makes sense. 2014-09-14T05:17:45Z jsnell: going well, can't complain :-) I've been doing the first bit of lisp hacking in a few years this weekend 2014-09-14T05:18:09Z beach: Congratulations! What's the hacking about? 2014-09-14T05:18:20Z Petit_Dejeuner_ quit (Ping timeout: 260 seconds) 2014-09-14T05:19:09Z jsnell: preparing the new minimally compiling evaluator (a Google summer of code project from last year) for merge into sbcl 2014-09-14T05:19:44Z jsnell: it's surprising how quickly code rots :-) 2014-09-14T05:20:09Z beach: Yeah. How is it different from the previous one? 2014-09-14T05:21:24Z jsnell: the existing interpeter directly interprets the source 2014-09-14T05:21:55Z jsnell: this one has a very simple compiler to closures, so it doesn't need to constantly redo the macro-expansions 2014-09-14T05:22:07Z jsnell: and additionally it's got debugger integration 2014-09-14T05:22:36Z beach: I see. 2014-09-14T05:23:09Z jsnell: so inspecting the local variables and source locations works, unlike with the current eval 2014-09-14T05:23:13Z beach: I thought the reason for having an interpreter at all was so that macro expansion would be redone every time. 2014-09-14T05:23:28Z beach: That's nice! 2014-09-14T05:24:11Z jsnell: so there's at least three separate reasons for why people want an interpreter 2014-09-14T05:24:37Z jsnell: one is exactly to deal with use cases where they want the macroexpansions to get redone 2014-09-14T05:24:48Z jsnell: another is just cases where the compiler is too slow 2014-09-14T05:25:40Z jsnell: and a third one is that theoretically an interpreter should make for a nicer debugging experience than a compiler (though we're not there yet with this, at most at parity) 2014-09-14T05:26:18Z beach: Interesting! 2014-09-14T05:27:11Z jsnell: nice going with sicl, btw 2014-09-14T05:27:12Z beach: I don't see any intrinsic reasons why a compiler could not give as good a debugging experience as an interpreter. It would require some work of course, and it is not so great at the moment. 2014-09-14T05:27:22Z beach: jsnell: Oh, thanks! 2014-09-14T05:29:04Z jsnell: well, a real compiler will tend to destroy some information along the line. for example sbcl will tend to optimize away single use variables, which confuses a lot of people 2014-09-14T05:29:22Z jsnell: and not optimizing them away leads to fairly serious compilation speed problems 2014-09-14T05:29:49Z jkaye joined #lisp 2014-09-14T05:30:06Z beach: Sure. 2014-09-14T05:31:02Z drmeister__: Beach - hello - how are things going with Cleavir? 2014-09-14T05:31:08Z beach: Can you give an example of a "single use variable" that the user might expect to exist? Just to get a typical use case. 2014-09-14T05:31:36Z beach: drmeister__: Very well thanks. I now have a customizable translator from forms to ASTs. 2014-09-14T05:31:56Z beach: drmeister__: It needs testing of course, but I think I managed the design. 2014-09-14T05:31:56Z drmeister__ is now known as drmeister 2014-09-14T05:32:16Z drmeister: And then it's AST->MIR? 2014-09-14T05:32:24Z beach: Yes, and that already exists. 2014-09-14T05:32:39Z beach: drmeister: I should now ditch the SICL-specific translator in favor of the new one in Cleavir. 2014-09-14T05:32:55Z beach: drmeister: Including the SICL-specific local compilation environment. 2014-09-14T05:33:07Z drmeister: Ah, so when would it be ready to take for a spin. I'm not in a hurry. I have a lot of grant proposals to write this fall (sigh). 2014-09-14T05:33:10Z beach: jsnell: I am still interested in that use case. 2014-09-14T05:33:58Z beach: drmeister: Yeah, for some reason, I was exhausted after that design experience. I am taking a break for a few days, thinking of compiler optimization instead. 2014-09-14T05:34:22Z jkaye quit (Ping timeout: 240 seconds) 2014-09-14T05:34:53Z drmeister: No problem. I'm getting my chemistry code up and running again. I'm converting all uses of strings for names to symbols - it's a lot of refactoring. 2014-09-14T05:35:15Z beach: drmeister: I see. 2014-09-14T05:35:19Z drmeister: I'm putting every symbol associated with a chemical entity into the #:CHEM-KEYWORD package. 2014-09-14T05:35:26Z nipra1 joined #lisp 2014-09-14T05:35:30Z nipra quit (Ping timeout: 272 seconds) 2014-09-14T05:35:35Z nipra1 quit (Client Quit) 2014-09-14T05:35:44Z beach: Your C++ chemistry code is not publicly available, right? 2014-09-14T05:36:30Z drmeister: The idea was always to use Clasp as a domain specific language and extend it in different domain specific ways. The chemistry code adds a #:CHEM package with lots of chemistry functions and classes. 2014-09-14T05:36:33Z drmeister: No, it's not. 2014-09-14T05:36:55Z drmeister: It used to run within Python but that was a couple of years ago. It was a bloody mess. 2014-09-14T05:37:10Z sharkey quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-14T05:37:24Z hexacode joined #lisp 2014-09-14T05:37:38Z beach: Yes, I have read what you said in the logs about it. 2014-09-14T05:37:40Z drmeister: I'm "lispifying" everything now. Using GC-aware containers, using symbols for names rather than character strings etc. 2014-09-14T05:37:49Z hexacode: anyone know a SQL db that also speaks lisp? 2014-09-14T05:38:03Z drmeister: Lisp streams rather than C++ iostreams. 2014-09-14T05:39:00Z beach: drmeister: A lot of work. 2014-09-14T05:39:24Z drmeister: It's about 120 source files and I'm down to about 50 left that still have compiler errors. Yeah - lots of work. 2014-09-14T05:39:29Z hexacode: a noob can write the assembler equiv of lisp, thats why your iostreams in lisp = op 2014-09-14T05:40:02Z jsnell: beach: many people like naming their intermediate results rather than nesting expressions too deeply 2014-09-14T05:40:18Z drmeister: It has a lot of classes that will be much easier to implement and extend in Common Lisp. 2014-09-14T05:40:32Z beach: jsnell: Yes, I do, for documentation and to avoid too much indentation. 2014-09-14T05:41:05Z hexacode: is there avr embedded lisp? 2014-09-14T05:41:25Z beach: jsnell: I see your use case now. And they expect those variables to be available for the duration of the function? 2014-09-14T05:41:46Z beach: hexacode: Many question. 2014-09-14T05:41:53Z drmeister: Good night. 2014-09-14T05:42:01Z beach: 'night drmeister 2014-09-14T05:42:04Z jsnell: beach: or at least the duration of the binding form 2014-09-14T05:42:38Z beach: jsnell: It must be in some register then, I would think. 2014-09-14T05:43:26Z beach: hexacode: I am not an RDB person, but yes, there are several SQL options for CL. Check on Cliki. 2014-09-14T05:43:57Z jsnell: not necessarily, since you'd like to be able to reuse the register for other purposes once the value is no longer used 2014-09-14T05:44:16Z jsnell: or not bother about saving + restoring it when calling another function 2014-09-14T05:44:33Z yacks quit (Ping timeout: 260 seconds) 2014-09-14T05:44:54Z beach: jsnell: Oh, I see. By "the duration of the binding form", you meant its scope. Got it now. 2014-09-14T05:46:02Z beach: jsnell: Though I suppose one could save it to the stack when DEBUG is 3 or something like that. 2014-09-14T05:46:19Z nand1 quit (Remote host closed the connection) 2014-09-14T05:46:42Z jsnell: yeah, and sbcl will both save more information at higher levels and increase the lifetimes of variables 2014-09-14T05:46:54Z arpunk quit (Ping timeout: 272 seconds) 2014-09-14T05:47:56Z jsnell: but that has a compilation time cost, and there are still variables that end up optimized away 2014-09-14T05:48:36Z beach: jsnell: I see, yes. 2014-09-14T05:48:39Z jsnell: maybe it's more correct that starting from where we are, there are limits to how far the debugging experience of compiled code can reasonably go :-) 2014-09-14T05:48:42Z hexacode: beach thanks 2014-09-14T05:48:44Z J_Arcane quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-14T05:49:02Z J_Arcane joined #lisp 2014-09-14T05:50:27Z beach: jsnell: Sure. The other day I was thinking of a case where loop variables get replaced as a result of strength reduction and such, and I came to the conclusion that one could fake those variables in the debugger by using the inverse transformation in the debugger, provided it exists of course, but it is typically a linear relation. 2014-09-14T05:50:37Z Denommus quit (Ping timeout: 260 seconds) 2014-09-14T05:50:48Z J_Arcane quit (Client Quit) 2014-09-14T05:50:50Z yacks joined #lisp 2014-09-14T05:50:51Z beach: I bit messy, but could be done. 2014-09-14T05:51:27Z J_Arcane joined #lisp 2014-09-14T05:54:16Z jusss joined #lisp 2014-09-14T05:56:21Z Denommus joined #lisp 2014-09-14T05:56:56Z oleo joined #lisp 2014-09-14T05:56:58Z jusss quit (Client Quit) 2014-09-14T05:57:09Z Fare: beach: of course 2014-09-14T05:57:18Z Fare: I was thinking of an entire compiler this way 2014-09-14T05:57:30Z Fare: with reversible transformations 2014-09-14T05:58:16Z oleo__ quit (Ping timeout: 250 seconds) 2014-09-14T05:58:16Z resttime: this is kind of a funny question, but is there a scheme implementation written in common lisp? 2014-09-14T05:59:55Z |3b|: pseudoscheme? 2014-09-14T06:00:18Z beach: Fare: But as jsnell points out, it has its limitations with respect to optimization. 2014-09-14T06:02:10Z |3b|: beach: seems like worst case you could just keep around the (minimally compiled) source and evaluate it directly in the debugger to reconstruct optimized-away data 2014-09-14T06:02:10Z joga_ is now known as joga 2014-09-14T06:02:19Z joga quit (Changing host) 2014-09-14T06:02:19Z joga joined #lisp 2014-09-14T06:02:58Z |3b|: though then you need to figure out how to deal with side effects (including long runtime) 2014-09-14T06:03:11Z resttime: hmmmm interesting 2014-09-14T06:03:23Z beach: |3b|: Yeah, side effects would be the problem. 2014-09-14T06:03:32Z |3b|: and i guess you might not have enough of the original state to reconstruct it 2014-09-14T06:04:09Z c74d quit (Quit: c74d) 2014-09-14T06:04:12Z beach: |3b|: It does sound complicated, at least to me. I shall have to think about it. 2014-09-14T06:05:17Z |3b|: yeah, i think it isn't as generally possible as i originally though 2014-09-14T06:07:03Z Shaftoe___ joined #lisp 2014-09-14T06:07:08Z c74d joined #lisp 2014-09-14T06:07:09Z Bazzie quit (Quit: life sucks; drop out) 2014-09-14T06:09:18Z sdemarre joined #lisp 2014-09-14T06:11:32Z Shaftoe___ quit (Ping timeout: 245 seconds) 2014-09-14T06:14:36Z Fare: if it's an orthogonal projection, you can pick a "canonical pre-image". 2014-09-14T06:14:49Z Fare: or not orthogonal 2014-09-14T06:17:23Z Shaftoe___ joined #lisp 2014-09-14T06:22:06Z madrik joined #lisp 2014-09-14T06:23:17Z beach: jsnell: The reason for my first question was: The other day I was thinking, on x86-64, if it is known that COUNT-IF (in this case) does not use the XMM registers, then the closure can store X in such a register. 2014-09-14T06:25:21Z juzdan joined #lisp 2014-09-14T06:25:40Z beach: Hmm, nice. Now I get daily pull requests from csziacobus for SICL code. This person has been seen to participate in #lisp, but I don't know anything else. 2014-09-14T06:29:02Z BlueRavenGT quit (Ping timeout: 250 seconds) 2014-09-14T06:29:50Z urandom_1 quit (Quit: Konversation terminated!) 2014-09-14T06:29:59Z urandom_1 joined #lisp 2014-09-14T06:31:17Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-14T06:31:33Z jleija_ quit (Quit: leaving) 2014-09-14T06:32:11Z hexacode quit 2014-09-14T06:32:15Z Fare quit (Ping timeout: 272 seconds) 2014-09-14T06:32:22Z juzdan quit (Remote host closed the connection) 2014-09-14T06:32:54Z juzdan joined #lisp 2014-09-14T06:34:15Z chitofan joined #lisp 2014-09-14T06:36:38Z MouldyOldBones quit (Remote host closed the connection) 2014-09-14T06:37:40Z juzdan quit (Ping timeout: 260 seconds) 2014-09-14T06:38:01Z MouldyOldBones joined #lisp 2014-09-14T06:38:48Z beach: Someone with an interest in research in compiler optimizations should check the complexity of Kildall's algorithm for value numbering on a program in SSA form. 2014-09-14T06:40:54Z beach is guessing he shall have to do it himself. 2014-09-14T06:44:32Z sdemarre quit (Ping timeout: 272 seconds) 2014-09-14T06:46:17Z Mon_Ouie joined #lisp 2014-09-14T06:49:04Z nug700_ joined #lisp 2014-09-14T06:50:13Z huza joined #lisp 2014-09-14T06:50:47Z InvalidC1 is now known as InvalidCo 2014-09-14T06:51:22Z nug700 quit (Ping timeout: 240 seconds) 2014-09-14T06:57:21Z rk[imposter] quit (Ping timeout: 260 seconds) 2014-09-14T06:57:46Z zlrth joined #lisp 2014-09-14T06:58:10Z Shaftoe___ joined #lisp 2014-09-14T07:00:01Z bgs100 quit (Quit: bgs100) 2014-09-14T07:02:02Z angavrilov joined #lisp 2014-09-14T07:02:32Z sdemarre joined #lisp 2014-09-14T07:04:04Z Px12 joined #lisp 2014-09-14T07:04:21Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-14T07:05:22Z rk[imposter] joined #lisp 2014-09-14T07:06:05Z Shaftoe___ joined #lisp 2014-09-14T07:06:42Z cy quit (Quit: :q!) 2014-09-14T07:08:03Z Shaftoe___ quit (Client Quit) 2014-09-14T07:08:32Z Px12 quit (Ping timeout: 245 seconds) 2014-09-14T07:09:26Z Shaftoe___ joined #lisp 2014-09-14T07:12:22Z JuanDaugherty joined #lisp 2014-09-14T07:14:50Z H4ns` is now known as H4ns 2014-09-14T07:15:57Z ndrei joined #lisp 2014-09-14T07:16:56Z Shaftoe___ quit (Quit: Shaftoe___) 2014-09-14T07:22:26Z Px12 joined #lisp 2014-09-14T07:22:32Z ndrei quit (Ping timeout: 272 seconds) 2014-09-14T07:23:33Z nipra joined #lisp 2014-09-14T07:23:53Z leo2007 quit (Quit: rcirc on GNU Emacs 24.4.50.1) 2014-09-14T07:23:56Z Krystof joined #lisp 2014-09-14T07:27:16Z gingerale joined #lisp 2014-09-14T07:33:05Z pt1 joined #lisp 2014-09-14T07:34:14Z mishoo_ joined #lisp 2014-09-14T07:35:02Z juzdan joined #lisp 2014-09-14T07:37:06Z paul0 joined #lisp 2014-09-14T07:37:34Z chitofan quit (Ping timeout: 246 seconds) 2014-09-14T07:38:55Z cyphase joined #lisp 2014-09-14T07:40:02Z momo-reina joined #lisp 2014-09-14T07:45:11Z dkcl joined #lisp 2014-09-14T07:45:40Z resttime: would it be possible to write a lisp scripting engine for a web browser? 2014-09-14T07:46:10Z |3b|: depends on how you define 'lisp scripting engine' 2014-09-14T07:46:16Z H4ns: there exist a few java script based lisps, if that is what you mean. 2014-09-14T07:46:22Z |3b|: you can compile lisp or something like it to JS 2014-09-14T07:46:36Z |3b|: or you can embed a lisp in a browser, or write a browser in lisp 2014-09-14T07:46:49Z |3b|: all 3 have been done, though latter 2 aren't much use 2014-09-14T07:47:18Z dkcl: Might as well use emacs for everything if you're interested in the latter two 2014-09-14T07:47:29Z resttime: can i see an example of embedding lisp in a browser? 2014-09-14T07:48:13Z resttime: like it would work with 2014-09-14T07:48:17Z resttime: or something like that 2014-09-14T07:49:02Z H4ns: resttime: i don't think that something that can be "shown" exists in that area. 2014-09-14T07:49:09Z H4ns: resttime: why are you interested in that? 2014-09-14T07:49:30Z resttime: i'm curious :) 2014-09-14T07:49:55Z H4ns: resttime: well, then the answer is "nothing exists that you can look at" :) 2014-09-14T07:50:28Z H4ns: resttime: you can use a browser based lisp and dom functionality to implement what you're asking for (text/lisp scripts) 2014-09-14T07:51:07Z rk[imposter] quit (Ping timeout: 245 seconds) 2014-09-14T07:51:48Z resttime: "DOM" -> learned a new word 2014-09-14T07:52:04Z resttime: so it really is possible 2014-09-14T07:52:08Z resttime: interesting 2014-09-14T07:52:25Z H4ns: resttime: everything is possible, and especially so if you ask here and whether it is possible with common lisp. 2014-09-14T07:52:46Z H4ns: resttime: if you'd ask feasible, you'd get more differentiated answers. maybe. 2014-09-14T07:53:44Z dkcl: It might be less painful to write a browser in Common Lisp, particularly with the libraries nowadays, but there would be a few hard points 2014-09-14T07:54:28Z dkcl: But client-side lisp scripts are kind of pointless if you're the only one who can run them, so you'd need to get people to use CL scripting 2014-09-14T07:54:34Z |3b| can't find any examples, pretty sure i've seen someone hooking ecl to a browser before, and there seem to have been plugins as well 2014-09-14T07:55:09Z |3b|: not really useful though, since nobody is going to have anything for you to look at in your hacked browser except you :p 2014-09-14T07:55:21Z |3b|: and nobody else is going to be able to look at it either 2014-09-14T07:55:22Z dkcl has seen a few CL implementations in JS that might be useful, since JS already is everywhere 2014-09-14T07:55:57Z |3b|: dkcl: there is already a (probably outdated by now) browser in common lisp 2014-09-14T07:56:02Z juzdan quit (Remote host closed the connection) 2014-09-14T07:56:06Z H4ns: "a few cl implementations in js"? aha? 2014-09-14T07:56:10Z dkcl: But then again what would be the difference between CL-in-JS and Parenscript? 2014-09-14T07:56:28Z |3b|: or you could take the easy route and just use qt's browser widget or something 2014-09-14T07:56:29Z dkcl: Parenscript would very likely be faster 2014-09-14T07:56:33Z H4ns: dkcl: parenscript is not cl 2014-09-14T07:56:34Z juzdan joined #lisp 2014-09-14T07:56:39Z H4ns: dkcl: it is not even close. 2014-09-14T07:56:50Z |3b| has seen 1 CL that compiles to JS, but not written in JS (or CL) 2014-09-14T07:57:12Z dkcl: H4ns: Well, Common Lisp and JavaScript are on opposite ends of the complexity and permission spectrum :P 2014-09-14T07:57:27Z H4ns: dkcl: so? 2014-09-14T07:57:58Z malbertife joined #lisp 2014-09-14T07:58:06Z |3b|: CL adds a bunch of complexity that isn't useful for most web page scripting though, so not sure how useful it would be 2014-09-14T07:58:20Z dkcl: H4ns: Well, I guess we'd better ask what resttime is interested in when he says "lisp" 2014-09-14T07:58:48Z |3b|: another option is to try to run abcl in a java plugin, no idea how well or if that works 2014-09-14T07:58:50Z H4ns: |3b|: undoubtedly. there are quite a few things that would be essential, though. how does jscl fare in that respect? 2014-09-14T07:59:05Z uber quit (Quit: bye) 2014-09-14T07:59:05Z rk[imposter] joined #lisp 2014-09-14T07:59:06Z |3b|: don't know, haven't been following it 2014-09-14T07:59:07Z H4ns: "java plugin", are you from the past? 2014-09-14T07:59:14Z H4ns: :) 2014-09-14T07:59:30Z resttime: when i mean lisp, not compiled to any other language 2014-09-14T07:59:30Z dkcl: resttime: Something that was intended to be plugged everywhere and run lisp scripts is *shudders* GNU Guile 2014-09-14T07:59:34Z |3b|: H4ns: well, it would work for a few more people than a browser with ecl compiled n :) 2014-09-14T07:59:44Z H4ns: resttime: what you're seeing here right now is #lisp insisting that anything can be done with cl. :) 2014-09-14T07:59:46Z |3b|: resttime: so not running on a CPU? 2014-09-14T08:00:07Z resttime: errr as small as possible i mean 2014-09-14T08:00:17Z resttime: so like the browser just runs the lisp code without changing to JS 2014-09-14T08:00:39Z dkcl: You'd probably need a Lisp browser and it would be the only one seeing and running the scripts 2014-09-14T08:01:40Z tomvos joined #lisp 2014-09-14T08:01:47Z juzdan quit (Ping timeout: 272 seconds) 2014-09-14T08:01:52Z Shinmera joined #lisp 2014-09-14T08:01:52Z J_Arcane: Yeah. Otherwise you'd need a plugin, and they're sort of dying out these days. 2014-09-14T08:02:00Z |3b|: sounds like something that wouldn't be very useful due to network effects 2014-09-14T08:02:10Z J_Arcane: Alas, Javascript of all things seems to be conquering the world ... 2014-09-14T08:02:15Z |3b|: you aren't going to get it into any big browsers, or any big sites 2014-09-14T08:02:38Z |3b|: so it is possible, and probably not even all that hard (but probably very tedious), but not particularly useful 2014-09-14T08:02:41Z tomvos left #lisp 2014-09-14T08:02:47Z H4ns: resttime: i know of a tv manufacturer who used to write all their application code on the tv sets in common lisp. they even had a browser and compiled javascript to common lisp for execution. 2014-09-14T08:03:02Z dkcl: H4ns: Nice! 2014-09-14T08:03:05Z resttime: wow 2014-09-14T08:03:13Z H4ns: resttime: i'm not sure if these tv sets still exist. it was a large manufacturer, though. 2014-09-14T08:03:18Z uber joined #lisp 2014-09-14T08:03:27Z Px12 quit (Ping timeout: 272 seconds) 2014-09-14T08:04:02Z joast quit (Ping timeout: 245 seconds) 2014-09-14T08:04:18Z J_Arcane: I wonder if there is some way you could "in-line" something like PicoLisp on the fly maybe? 2014-09-14T08:04:51Z |3b|: allegro apparently had a browser plugin for netscape 4 at one point, that used rather than