2015-02-27T02:07:34Z ccl-logbot joined #lisp 2015-02-27T02:07:34Z 2015-02-27T02:07:34Z names: ccl-logbot kraison1 ajtulloch kcj ruste rpg defaultxr loke_ sheilong impulse luis dkcl Vutral jleija mikaelj Numerius diphtherial linux_dream frkout hitecnologys_ resttime dagnachewa aretecode arrsim djinni` K1rk kbtr |3b| nicdev` Alfr minion attila_lendvai Ethan- nell huza hiyosi grantix fragamus moei ndrei_ lifenoodles ndrei Longlius Beetny adlai jocuman_ Patzy trig-ger replcated jl_2 cpc26 joshe paroneayea stardiviner zadock mega1 psy_ segmond 2015-02-27T02:07:34Z names: dmiles_afk capitaomorte TristamWrk lemoinem badkins oleo ASau Mon_Ouie cluck kobain shifty778 urandom__ edgar-rft mulk scymtym teiresias echo-area eMBee keen__________74 therik d4ryus anunnaki hvxgr seg clintm wemeetagain decent jackc_ rick-monster sbryant heurist funnel Oddity otwieracz PaulCapestany rebelshrug stratomula alchemis7 codebrainz nowhere_man_ Khisanth Natch apathor srcerer jrm ahungry peterhil CrazyEddy ivan4th Jubb ssake Xach eazar001 2015-02-27T02:07:34Z names: nisstyre bjorkintosh MightyJoe axion nopf ktt9 easye zymurgy milosn thomas eak Takumo tkd_ girrig kapil___ oGMo billstclair karswell AntiSpamMeta dan64 Plazma gabc dim tomaw z0d katco copec oconnore adeht zickzackv The_third_man newcup rvirding bytecrawler mathrick kjeldahl sshirokov brucem butyoudonot ft josteink john-mcaleely scharan j0ni Mandus sjl backupthrick gabot setheus guaqua sharkz wenincode qbit gensym yeltzooo stokachu schjetne edran_ Neet 2015-02-27T02:07:34Z names: peccu2 kalzz Rudolph-Miller bthom joga mingvs ircbrowse misv stux|RC-only AeroNotix clop vsync GuilOooo cibs smull aap troydm lea jsnell ck_ bobbysmith007 renopt emma zyoung justinmcp_ clop2 jackdaniel sword soggybread jtz drmeister yorick Tristam nightshade427 quasisane bcoburn_ cods s_e cmatei dfox kepler gko ovidnis ``Erik qlkzy Ober metaf5 jayne mischief Fade bege alex6407 Borbus enn phadthai clog Tuxedo eagleflo acieroid aerique zbigniew antoszka 2015-02-27T02:07:34Z names: xristos sivoais BlastHardcheese arrdem tessier brent80_plow jasom tsumetai les Subfusc jpanest alakra isoraqathedh honkfestival someone mietek chishiki SHODAN ski killmaster ryankarason Grue` johs Tordek __main__ Sgeo pok agam trn Soft pillton ramus Ralt ered alexherbo2 joshmcmillan_ Amaan NhanH cojy_ victor_lowther splittist gluegadget gz Vivitron` joast tristero vlnx Oladon farhaven akkad notty daimrod Cheery sytse sid_cypher larme trigen Blkt drdo 2015-02-27T02:07:34Z names: fe[nl]ix cmbntr necronian lpaste Colleen devon cpt_nemo Intensity mearnsh ferada klltkr sepi charlie gregburd_ d4gg4d endou________ PuercoPop faheem_ GGMethos az leo2007 foom swflint_away chameco pchrist wilfredh ggherdov blahzik yrdz specbot wglb rtoym Jesin shwouchk dlowe xenophon kanru c74d enfors Xof kraehe dxtr gniourf jdz salva MoALTz Posterdati sz0` nightfly wooden nydel mburke_ gigetoo froggey sfa spacebat mtd snafuchs abbe stopbyte whartung 2015-02-27T02:07:34Z names: sellout flip214 finnrobi housel vhost- emlow mood rotty aksatac samebchase cross joneshf-laptop reb Odin- tokenrove j_king yauz_2 theBlackDragon fikusz Bike diginet rvchangue_ H4ns dilated_dinosaur ineiros p_l ivan\ lieven loke ozzloy hratsimihah moomin-aba_ nitrix galdor hyoyoung kyl` tstc phf brandonz_ viaken xorpse micro nitro_idiot p_l|backup renard_ Neptu 2015-02-27T02:07:34Z sinisalo.freenode.net:#lisp- [freenode-info] please register your nickname...don't forget to auto-identify! http://freenode.net/faq.shtml#nicksetup 2015-02-27T02:08:28Z jumblerg joined #lisp 2015-02-27T02:10:24Z ruste quit (Read error: Connection reset by peer) 2015-02-27T02:11:04Z ruste joined #lisp 2015-02-27T02:12:22Z rpg quit (Quit: rpg) 2015-02-27T02:12:37Z jumblerg quit (Ping timeout: 244 seconds) 2015-02-27T02:18:14Z Longlius quit (Ping timeout: 256 seconds) 2015-02-27T02:20:58Z grantix quit (Ping timeout: 255 seconds) 2015-02-27T02:24:01Z quazimodo joined #lisp 2015-02-27T02:25:32Z drdo quit (Ping timeout: 252 seconds) 2015-02-27T02:26:42Z mtd quit (Ping timeout: 276 seconds) 2015-02-27T02:26:48Z drdo joined #lisp 2015-02-27T02:27:12Z mtd joined #lisp 2015-02-27T02:32:50Z Longlius joined #lisp 2015-02-27T02:39:12Z ajtulloch quit (Remote host closed the connection) 2015-02-27T02:39:47Z ajtulloch joined #lisp 2015-02-27T02:40:04Z Alfr quit (Quit: Leaving) 2015-02-27T02:40:52Z cpc26_ joined #lisp 2015-02-27T02:41:20Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-02-27T02:41:31Z frkout_ joined #lisp 2015-02-27T02:43:10Z cpc26 quit (Ping timeout: 256 seconds) 2015-02-27T02:45:16Z frkout quit (Ping timeout: 255 seconds) 2015-02-27T02:50:57Z loke: Xach: It's that time of the month when I cplain that QL:SYSTEM-APROPOS doesn't allow me to search by ASDF "description" fields. 2015-02-27T02:51:02Z loke: "complain" 2015-02-27T02:51:54Z Xach: working on something along those lines 2015-02-27T02:52:10Z badkins_ joined #lisp 2015-02-27T02:55:04Z badkins quit (Ping timeout: 256 seconds) 2015-02-27T02:55:08Z nikki93_ joined #lisp 2015-02-27T02:55:29Z loke: Yay! 2015-02-27T02:55:50Z loke wonders if it's time to suggest QL inclusion of my cl-markup package 2015-02-27T02:56:12Z Numerius quit (Ping timeout: 256 seconds) 2015-02-27T02:56:13Z clintm: +1 yay 2015-02-27T02:56:24Z nikki93_ quit (Remote host closed the connection) 2015-02-27T02:57:52Z kushal joined #lisp 2015-02-27T03:01:02Z innertracks joined #lisp 2015-02-27T03:04:18Z innertracks quit (Client Quit) 2015-02-27T03:05:16Z frkout_ quit (Remote host closed the connection) 2015-02-27T03:05:43Z frkout joined #lisp 2015-02-27T03:06:47Z loke: clintm: indeed 2015-02-27T03:15:48Z Xach: loke: are you booked for london yet? 2015-02-27T03:16:25Z theos joined #lisp 2015-02-27T03:17:19Z kraison1 quit (Ping timeout: 256 seconds) 2015-02-27T03:18:22Z ryankarason quit (Ping timeout: 240 seconds) 2015-02-27T03:19:41Z JuanDaugherty joined #lisp 2015-02-27T03:20:44Z yaewa joined #lisp 2015-02-27T03:20:45Z scymtym quit (Ping timeout: 252 seconds) 2015-02-27T03:21:54Z moei quit (Ping timeout: 245 seconds) 2015-02-27T03:22:17Z stardiviner quit (Quit: Weird in coding now, or make love, only two things push me away from IRC.) 2015-02-27T03:27:00Z loke: Xach: I really want to go 2015-02-27T03:27:15Z brian_o joined #lisp 2015-02-27T03:27:34Z Xach: the only thing you have to lose is your money! 2015-02-27T03:27:36Z loke: However, next year I might have material for a talk. Right now I'm not willing to go public with with I'm doing yet though 2015-02-27T03:29:54Z linux_dream quit (Quit: Leaving) 2015-02-27T03:32:02Z nikki93_ joined #lisp 2015-02-27T03:32:32Z grantix joined #lisp 2015-02-27T03:33:22Z a2015 joined #lisp 2015-02-27T03:34:34Z ryankarason joined #lisp 2015-02-27T03:39:32Z Longlius quit (Ping timeout: 264 seconds) 2015-02-27T03:45:01Z pgijwvm joined #lisp 2015-02-27T03:45:05Z huza quit (Ping timeout: 250 seconds) 2015-02-27T03:52:53Z wemeetagain quit (Remote host closed the connection) 2015-02-27T03:52:54Z Numerius joined #lisp 2015-02-27T03:53:42Z Longlius joined #lisp 2015-02-27T03:54:35Z oleo is now known as Guest81314 2015-02-27T03:54:37Z bgs100 joined #lisp 2015-02-27T03:54:54Z pgijwvm quit (Quit: Leaving) 2015-02-27T03:56:23Z oleo__ joined #lisp 2015-02-27T03:56:47Z beach joined #lisp 2015-02-27T03:56:53Z beach: Good morning everyone! 2015-02-27T03:57:22Z Numerius quit (Ping timeout: 240 seconds) 2015-02-27T03:57:34Z Guest81314 quit (Ping timeout: 252 seconds) 2015-02-27T03:58:57Z pillton: Good morning beach. 2015-02-27T03:59:45Z ajtulloc_ joined #lisp 2015-02-27T04:00:30Z ajtulloc_ quit (Read error: Connection reset by peer) 2015-02-27T04:00:58Z ajtulloc_ joined #lisp 2015-02-27T04:03:17Z ajtulloch quit (Ping timeout: 252 seconds) 2015-02-27T04:06:04Z paroneay` joined #lisp 2015-02-27T04:10:19Z paroneayea quit (Ping timeout: 255 seconds) 2015-02-27T04:12:44Z paroneay` is now known as paroneayea 2015-02-27T04:12:52Z wemeetagain joined #lisp 2015-02-27T04:14:35Z drmeister: Hi beach 2015-02-27T04:15:25Z brian_o quit (Ping timeout: 264 seconds) 2015-02-27T04:15:40Z chokoit joined #lisp 2015-02-27T04:15:44Z chokoit: hi 2015-02-27T04:16:06Z beach: Hello chokoit. 2015-02-27T04:16:21Z chokoit: beach you fucktard 2015-02-27T04:16:27Z chokoit: you better let me suck the turds out of your ass 2015-02-27T04:16:29Z chokoit: if you don't 2015-02-27T04:16:33Z chokoit: I will fucking hunt you down 2015-02-27T04:16:34Z chokoit: drug you 2015-02-27T04:16:38Z chokoit: and then tie you to my bed 2015-02-27T04:16:45Z chokoit: before pounding the living fuck out of your pert asshole 2015-02-27T04:16:51Z chokoit: til it is bleeding and dialated 2015-02-27T04:16:52Z drmeister: Charming 2015-02-27T04:17:02Z chokoit: then I will finger and lick up the blood oozing out of your rectum 2015-02-27T04:17:04Z chokoit: and start sucking 2015-02-27T04:17:10Z chokoit: til turds come sliding out of your asshole 2015-02-27T04:17:12Z chokoit: into my mouth 2015-02-27T04:17:22Z chokoit: I am going to suck that filthy colon clean 2015-02-27T04:17:27Z chokoit: beach you have two choices 2015-02-27T04:17:34Z chokoit: suffer this brutal rape or simply just shit in my mouth 2015-02-27T04:17:38Z chokoit: what do you say? 2015-02-27T04:17:48Z ajtulloc_ quit (Remote host closed the connection) 2015-02-27T04:18:50Z clintm looks at beach... 2015-02-27T04:18:53Z selat joined #lisp 2015-02-27T04:18:56Z clintm shrugs. 2015-02-27T04:19:02Z ajtulloch joined #lisp 2015-02-27T04:19:14Z chokoit: clintm I am not fucking joking 2015-02-27T04:19:20Z chokoit: you better not be fucking with me 2015-02-27T04:19:23Z chokoit: I am serious 2015-02-27T04:19:34Z clintm: Super.... duper.... serial? 2015-02-27T04:21:08Z Bike: /ignore 2015-02-27T04:22:36Z selat quit (Read error: Connection reset by peer) 2015-02-27T04:23:54Z selat joined #lisp 2015-02-27T04:25:32Z clintm` joined #lisp 2015-02-27T04:25:42Z edgar-rft quit (Remote host closed the connection) 2015-02-27T04:25:57Z selat quit (Read error: Connection reset by peer) 2015-02-27T04:26:05Z edgar-rft joined #lisp 2015-02-27T04:28:00Z clintm quit (Ping timeout: 256 seconds) 2015-02-27T04:28:20Z clintm` is now known as clintm 2015-02-27T04:31:31Z drmeister: beach: Hi - I got pretty much everything to work. 2015-02-27T04:31:41Z beach: Excellent! 2015-02-27T04:31:47Z selat joined #lisp 2015-02-27T04:31:52Z drmeister: unwind-instruction works with return-from - thank you for that fix. 2015-02-27T04:32:04Z beach: Sure. 2015-02-27T04:32:18Z drmeister: Special variables were pretty easy. I'm just working on CLEAVIR-COMPILE-FILE now. 2015-02-27T04:33:11Z beach: drmeister: So COMPILE basically works? 2015-02-27T04:33:38Z selat quit (Read error: Connection reset by peer) 2015-02-27T04:34:17Z drmeister: I think so - I've had some crashes when I put special variables in the lambda list. Eg (cleavir-compile 'foo '(lambda (*a*) (print *a*))) - I think that will crash it if *a* is a special variable - I'm not sure where the problem is at this point. 2015-02-27T04:34:25Z drmeister: I'm just compiling everything again to try it again. 2015-02-27T04:34:27Z cluck quit (Remote host closed the connection) 2015-02-27T04:34:36Z CrazyEddy quit (Remote host closed the connection) 2015-02-27T04:34:48Z beach: Even so, that very good progress. 2015-02-27T04:35:03Z CrazyEddy joined #lisp 2015-02-27T04:35:30Z chokoit quit (Quit: Saliendo) 2015-02-27T04:36:05Z beach: drmeister: The other day you said you had a question about writing papers for ELS. Is that still the case? 2015-02-27T04:36:39Z kushal quit (Ping timeout: 256 seconds) 2015-02-27T04:36:46Z drmeister: Yeah - but I don't have time to write anything for the next week. I have a DOD proposal deadline looming. 2015-02-27T04:36:51Z clintm: beach / drmeister: what is this? sicl? Hope I'm not being too nosy - it sounds interesting. 2015-02-27T04:37:05Z beach: minion: please tell clintm about SICL. 2015-02-27T04:37:05Z minion: clintm: 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 2015-02-27T04:37:07Z drmeister: clintm: Cleavir and Clasp together finally. 2015-02-27T04:37:13Z clintm: oh 2015-02-27T04:37:29Z clintm: nice! I should see if I can get clasp to build again. 2015-02-27T04:38:35Z beach: drmeister: Do you have an estimate for the amount of code needed to make Cleavir work for Clasp? 2015-02-27T04:38:35Z drmeister: Oh - you tried it? The build process is somewhat more streamlined. But I've been putting most of my effort into incorporating Cleavir. 2015-02-27T04:38:52Z drmeister: It's not in the master branch yet - so you might want to wait a while. 2015-02-27T04:39:01Z clintm: Yea, I got it to build finally on debian jessie. 2015-02-27T04:39:22Z clintm: Ok, fair enough. 2015-02-27T04:39:54Z selat joined #lisp 2015-02-27T04:40:10Z beach: clintm: Sorry, I misunderstood your question. 2015-02-27T04:40:23Z beach: clintm: listen to drmeister. 2015-02-27T04:40:43Z clintm: It's ok, I'm potentially interested in everything. :) Looking through the SICL repo now. 2015-02-27T04:41:28Z beach: clintm: It is not very well organized at the moment. There is code in there that I don't know whether I will need or not. 2015-02-27T04:43:20Z selat quit (Client Quit) 2015-02-27T04:43:42Z sheilong quit (Quit: Konversation terminated!) 2015-02-27T04:47:41Z ggole joined #lisp 2015-02-27T04:48:56Z bgs100 quit (Quit: bgs100) 2015-02-27T04:49:44Z attila_lendvai quit (Ping timeout: 272 seconds) 2015-02-27T04:49:53Z bb010g joined #lisp 2015-02-27T04:53:54Z Numerius joined #lisp 2015-02-27T04:54:24Z drmeister: beach: I remembered that I still have one hurdle to ford - I have to finish the argument processing. Currently functions can only have required arguments. 2015-02-27T04:54:25Z moei joined #lisp 2015-02-27T04:54:25Z yaewa quit (Ping timeout: 255 seconds) 2015-02-27T04:54:53Z beach: drmeister: Hmm, yes, that's a bit of work. 2015-02-27T04:55:21Z beach: drmeister: Did you see my question? Do you have an estimate of the amount of code needed to incorporate Cleavir? 2015-02-27T04:55:59Z drmeister: I didn't see it until just now. 2015-02-27T04:56:05Z drmeister: I have everything in one directory. 2015-02-27T04:56:29Z drmeister: That directory contains some false starts and unused code - but once I clean it up I'll have a good estimate. 2015-02-27T04:57:04Z beach: Order of magnitude is good enough. 2015-02-27T04:57:25Z drmeister: Currently it's 2650 lines of code. 2015-02-27T04:57:34Z beach: Not much. 2015-02-27T04:57:52Z drmeister: I'd say it's at least half of that. 2015-02-27T04:58:20Z frkout_ joined #lisp 2015-02-27T04:58:37Z Numerius quit (Ping timeout: 264 seconds) 2015-02-27T04:58:43Z beach: That's amazingly little. 2015-02-27T05:00:05Z drmeister: Now that I can look back - it's pretty much what I expected. The details were completely obscure at the start but in broad strokes it worked out exactly like I hoped. 2015-02-27T05:00:31Z drmeister: Although I'm not completely out of the woods yet. 2015-02-27T05:00:50Z beach: drmeister: It deserves a paper at ELS 2016. 2015-02-27T05:01:11Z drmeister: What do you think it would be on? 2015-02-27T05:01:50Z beach: I don't know in more detail at this time, but something about what we have been doing. 2015-02-27T05:01:58Z frkout quit (Ping timeout: 245 seconds) 2015-02-27T05:02:06Z beach: drmeister: Do you have "lightning talks" at Chemistry conferences? 2015-02-27T05:02:23Z drmeister: Short talks - 15 minute. 2015-02-27T05:02:31Z beach: I think we do 5 minutes. 2015-02-27T05:02:57Z beach: We might consider a lightning talk in London. 2015-02-27T05:03:04Z drmeister: Chemistry requires more setup, more data, more analysis. 2015-02-27T05:03:17Z beach: There are people there who don't hang out here. 2015-02-27T05:03:47Z drmeister: Squares? 2015-02-27T05:04:14Z drmeister: 'Cause this is where the cool people hang out. 2015-02-27T05:04:24Z clintm: totally 2015-02-27T05:04:32Z beach remains silent on the issue. 2015-02-27T05:05:32Z beach: drmeister: Furthermore, since lightning talks can be announced on site, we will have made more progress by then. 2015-02-27T05:06:12Z badkins_ quit (Ping timeout: 272 seconds) 2015-02-27T05:06:18Z drmeister: I did submit an abstract on Clasp. 2015-02-27T05:06:41Z drmeister: I don't know if it will be accepted yet. 2015-02-27T05:06:42Z beach: I know, I am on the program committee. 2015-02-27T05:08:07Z drmeister: Well, maybe you could put in a good word for me. I do look good in a suit. 2015-02-27T05:08:28Z drmeister: Crap - I still need to get a flight and a hotel. 2015-02-27T05:08:42Z beach: That would not be a criterion for ELS. 2015-02-27T05:09:15Z beach: You would likely look very strange wearing a suit at ELS. 2015-02-27T05:09:19Z dagnachewa quit (Quit: WeeChat 1.1.1) 2015-02-27T05:10:17Z ajtulloc_ joined #lisp 2015-02-27T05:10:21Z therik quit (Ping timeout: 244 seconds) 2015-02-27T05:10:23Z ajtulloch quit (Ping timeout: 252 seconds) 2015-02-27T05:10:36Z drmeister: No suit - got it. 2015-02-27T05:10:56Z drmeister looks good in cut-off jeans and flip-flops as well. 2015-02-27T05:11:34Z beach: Looking good would not be a criterion either. :) 2015-02-27T05:11:49Z drmeister: Sorry - I'm a bit punchy - I've fallen back on my habit of not sleeping when I get hold of a problem. 2015-02-27T05:12:34Z beach: I have been working too hard as well. I might take it easy today. 2015-02-27T05:13:01Z isis_ joined #lisp 2015-02-27T05:13:08Z drmeister: cleavir-ir:constant-input - those are load time values that are treated as constants? 2015-02-27T05:13:30Z drmeister: Guaranteed not to change - do you preload them? 2015-02-27T05:13:32Z beach: I don't think those are used anymore, are they? 2015-02-27T05:13:48Z drmeister: Yeah - they are coming up. It was a bit of a head scratcher. 2015-02-27T05:14:35Z beach: I don't think they are supposed to be in there anymore. 2015-02-27T05:14:50Z drmeister: Hang on. 2015-02-27T05:15:07Z beach: Normally, constants turn into either LOAD-TIME-VALUEs or to IMMEDIATE-INPUTs. 2015-02-27T05:15:35Z drmeister: I'm doing this: (clasp-cleavir::cleavir-compile-file "sys:..;tests;lisp;tiny1.lsp") 2015-02-27T05:15:41Z beach sees his plan of taking it easy vanishing. 2015-02-27T05:16:10Z drmeister: https://www.irccloud.com/pastebin/qtOepbzM 2015-02-27T05:16:15Z drmeister: That's tiny1.lsp 2015-02-27T05:16:25Z drmeister: MIR incoming... 2015-02-27T05:16:48Z drmeister: It's pretty 2015-02-27T05:16:59Z drmeister: Wait for it... 2015-02-27T05:17:07Z drmeister: http://imgur.com/zmVxs36 2015-02-27T05:17:17Z harish_ joined #lisp 2015-02-27T05:17:39Z drmeister: Green ellipses? 2015-02-27T05:17:44Z beach: Oh, you probably need to build your own compile-file. 2015-02-27T05:17:55Z drmeister: I did build my own COMPILE-FILE. 2015-02-27T05:18:02Z beach: Oh, OK. 2015-02-27T05:18:26Z drmeister: Actually, I'm using my old COMPILE-FILE and redirecting top-level forms to the Cleavir-Clasp code. 2015-02-27T05:18:30Z beach: Then it must not be invoking hoist-.... 2015-02-27T05:18:52Z drmeister: Which hoist...? 2015-02-27T05:19:19Z beach: Really? You are going to make me go look? OK, hold on... 2015-02-27T05:19:32Z drmeister: Here's the form compiler: 2015-02-27T05:19:35Z drmeister: https://www.irccloud.com/pastebin/iXWDKfBX 2015-02-27T05:19:59Z beach sees plan vanishing faster. 2015-02-27T05:20:12Z drmeister: beach funny 2015-02-27T05:20:29Z drmeister: Why? What's the problem? 2015-02-27T05:21:01Z beach: cleavir-ast-transformations:hoist-load-time-value was what I was referring to. 2015-02-27T05:21:10Z drmeister: I thought so. 2015-02-27T05:22:48Z drmeister: I took your hoist code and modified it: 2015-02-27T05:23:04Z drmeister: https://gist.github.com/anonymous/d800782fd5cad495f31b 2015-02-27T05:23:17Z beach: For your information, the way I plan to do compile-file is to build a single AST from the individual ones in the file. 2015-02-27T05:23:31Z drmeister: For inlining? 2015-02-27T05:23:52Z beach: So that loading the file would be a question of invoking a single top-level function. 2015-02-27T05:25:27Z beach: drmeister: If hoist-load-time-value is working when you compile a single form but not when you compile a form in a file, I am not sure what to think. 2015-02-27T05:26:24Z beach: Oh wait... 2015-02-27T05:26:38Z beach: hoist-.. is not the problem. 2015-02-27T05:26:58Z beach: The problem is that when the AST is constructed, constants are not processed correctly. 2015-02-27T05:27:11Z beach: Already in the AST there should be no constants. 2015-02-27T05:28:08Z beach: ... other than inside a load-time-value that is. 2015-02-27T05:28:55Z zadock quit (Quit: Leaving) 2015-02-27T05:29:00Z pjb joined #lisp 2015-02-27T05:30:34Z drmeister: That sounds about right. 2015-02-27T05:30:40Z beach: drmeister: I am having a problem with web pages from IRCCloud. I don't seem to be able to select the text in it. 2015-02-27T05:30:54Z beach: Is that just a problem here, or is it with IRCCloud? 2015-02-27T05:31:06Z drmeister: Does it go nuts on you and scroll super fast? 2015-02-27T05:31:17Z beach: No. 2015-02-27T05:31:19Z drmeister: Or you cannot select anything? 2015-02-27T05:31:32Z beach: I select things, but when I leave the window, it is no longer selected. 2015-02-27T05:31:33Z drmeister: No, I don't have the cannot select anything problem. 2015-02-27T05:31:46Z beach: Hmm. 2015-02-27T05:32:00Z drmeister: Are you selecting code in a past or text that someone wrote? 2015-02-27T05:32:09Z beach: I am selecting your code. 2015-02-27T05:32:28Z beach: Yesterday, I had to retype your example because I couldn't grab it an put it in Emacs. 2015-02-27T05:33:00Z drmeister: There is a little button/word "raw" if you click on that you will get the raw text in a new browser page. 2015-02-27T05:33:53Z beach: That works. Thanks. 2015-02-27T05:34:00Z drmeister: I've pasted code two different ways. irc cloud pastes have the "raw" button. gist.github.com pastes have it as well but at the bottom right corner "view raw" 2015-02-27T05:34:29Z beach: paste.lisp.org might be better in the long run. 2015-02-27T05:35:42Z Numerius joined #lisp 2015-02-27T05:36:26Z Jubb quit (Ping timeout: 246 seconds) 2015-02-27T05:37:04Z beach: You need to figure out whether the AST contains constants that are not wrapped in LOAD-TIME-VALUEs. 2015-02-27T05:37:22Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2015-02-27T05:37:34Z beach: If it does, there is a problem with the AST generation. 2015-02-27T05:40:32Z drmeister: How would you recommend I do that? Would the graphviz graph of the AST show that? 2015-02-27T05:40:37Z beach: Yes. 2015-02-27T05:41:45Z jleija quit (Quit: leaving) 2015-02-27T05:42:02Z beach: drmeister: CONVERT-CONSTANT should either return an immediate or a load-time-value. If the AST contains constants that are not wrapped, then this means that CONVERT-CONSTANT is never called. 2015-02-27T05:43:32Z drmeister: I'll have to look at it tomorrow - I'm fading fast. 2015-02-27T05:43:54Z rszeno joined #lisp 2015-02-27T05:44:03Z beach: Good! :) 2015-02-27T05:46:04Z frkout_ quit (Remote host closed the connection) 2015-02-27T05:46:30Z frkout joined #lisp 2015-02-27T05:47:29Z huza joined #lisp 2015-02-27T05:48:14Z beach goes to empty the dishwasher. 2015-02-27T05:49:45Z Jubb joined #lisp 2015-02-27T05:50:45Z huza quit (Client Quit) 2015-02-27T05:50:53Z wz1000 joined #lisp 2015-02-27T05:53:37Z kraison joined #lisp 2015-02-27T05:59:38Z nikki93_ quit (Remote host closed the connection) 2015-02-27T05:59:58Z sz0` is now known as sz0 2015-02-27T06:00:29Z sz0 is now known as sz0` 2015-02-27T06:01:43Z ajtulloc_ quit (Ping timeout: 252 seconds) 2015-02-27T06:04:25Z devll joined #lisp 2015-02-27T06:06:37Z Longlius quit (Remote host closed the connection) 2015-02-27T06:08:54Z pranavrc joined #lisp 2015-02-27T06:09:48Z Longlius joined #lisp 2015-02-27T06:13:21Z pierre1_ joined #lisp 2015-02-27T06:18:37Z Harag joined #lisp 2015-02-27T06:19:02Z nopf quit (Remote host closed the connection) 2015-02-27T06:19:49Z ajtulloch joined #lisp 2015-02-27T06:21:05Z rotty quit (Read error: Connection reset by peer) 2015-02-27T06:25:35Z a2015 quit (Quit: Page closed) 2015-02-27T06:27:15Z gaspard0 joined #lisp 2015-02-27T06:27:44Z gaspard0 quit (Read error: Connection reset by peer) 2015-02-27T06:28:29Z urandom__ quit (Quit: Konversation terminated!) 2015-02-27T06:36:16Z devll quit (Remote host closed the connection) 2015-02-27T06:38:32Z easye quit (Read error: Connection reset by peer) 2015-02-27T06:43:59Z hvxgr quit (Ping timeout: 245 seconds) 2015-02-27T06:44:33Z drmeister: beach: Are you still online? 2015-02-27T06:44:36Z drmeister: I'm still up. 2015-02-27T06:44:48Z drmeister: I have more data 2015-02-27T06:46:42Z beach: I am still here. 2015-02-27T06:47:26Z drmeister: I'm compiling a file containing this expression: (defun a (x y) (dotimes (i 1000) (+ x y) )) 2015-02-27T06:47:26Z arenz joined #lisp 2015-02-27T06:47:43Z drmeister: Here's the AST - it's the (THE ...) special operators. 2015-02-27T06:48:23Z beach: I see. 2015-02-27T06:48:25Z drmeister: http://imgur.com/0pjTO7U 2015-02-27T06:48:27Z beach: I can believe that. 2015-02-27T06:49:11Z beach: Can you work around it? 2015-02-27T06:49:17Z hiroakip joined #lisp 2015-02-27T06:49:25Z drmeister: HIR: http://imgur.com/jMMfGmp 2015-02-27T06:49:32Z beach: Or do you need for me to address this problem ASAP? 2015-02-27T06:49:51Z drmeister: Yeah, I generate code for them as load-time values and I wrote a function to pull them back out. 2015-02-27T06:49:59Z drmeister: No I don't need anything ASAP. 2015-02-27T06:50:26Z beach: OK. 2015-02-27T06:51:04Z drmeister: Well, actually - the LLVM Module is not checking out for some reason - it may be unrelated. That I'll take a look at later. 2015-02-27T06:51:07Z drmeister: I'm done. 2015-02-27T06:51:12Z drmeister: Done for the night that is. 2015-02-27T06:51:15Z drmeister: Good night. 2015-02-27T06:51:21Z beach: Sleep well. 2015-02-27T06:51:28Z drmeister: Thanks for your help. 2015-02-27T06:51:32Z beach: Sure. 2015-02-27T06:56:28Z pierre1_ quit (Quit: Leaving) 2015-02-27T06:56:49Z fep joined #lisp 2015-02-27T06:56:55Z fep quit (Read error: Connection reset by peer) 2015-02-27T06:57:13Z fep joined #lisp 2015-02-27T06:58:21Z pierre1__ joined #lisp 2015-02-27T06:58:53Z fepipep joined #lisp 2015-02-27T06:59:39Z fepipep quit (Remote host closed the connection) 2015-02-27T06:59:51Z fepipep joined #lisp 2015-02-27T06:59:52Z hiroakip quit (Ping timeout: 256 seconds) 2015-02-27T07:02:42Z fep quit (Ping timeout: 256 seconds) 2015-02-27T07:03:00Z pierre1__ quit (Ping timeout: 244 seconds) 2015-02-27T07:03:01Z fepipep left #lisp 2015-02-27T07:07:06Z f03lipe joined #lisp 2015-02-27T07:08:20Z fepipep joined #lisp 2015-02-27T07:08:26Z grantix quit (Remote host closed the connection) 2015-02-27T07:08:28Z fepipep quit (Read error: Connection reset by peer) 2015-02-27T07:08:29Z quazimodo quit (Ping timeout: 250 seconds) 2015-02-27T07:08:35Z fepipep_ joined #lisp 2015-02-27T07:09:20Z fepipep joined #lisp 2015-02-27T07:09:26Z fepipep quit (Read error: Connection reset by peer) 2015-02-27T07:09:39Z fepipep joined #lisp 2015-02-27T07:10:12Z fepipep left #lisp 2015-02-27T07:11:24Z grantix joined #lisp 2015-02-27T07:12:02Z f03lipe quit (Ping timeout: 246 seconds) 2015-02-27T07:13:22Z fepipep_ quit (Ping timeout: 240 seconds) 2015-02-27T07:14:09Z ecraven joined #lisp 2015-02-27T07:14:48Z hvxgr joined #lisp 2015-02-27T07:23:02Z f03lipe joined #lisp 2015-02-27T07:23:22Z stepnem joined #lisp 2015-02-27T07:24:47Z pacon joined #lisp 2015-02-27T07:26:05Z Harag quit (Ping timeout: 256 seconds) 2015-02-27T07:30:41Z mishoo joined #lisp 2015-02-27T07:32:21Z pacon quit (Read error: Connection reset by peer) 2015-02-27T07:32:23Z beach: HAH! I think inlining will be easy. 2015-02-27T07:32:40Z beach: I need to clone the AST associated with the function to be inlined. 2015-02-27T07:32:55Z a2015 joined #lisp 2015-02-27T07:32:56Z beach: But I already have the information needed because I defined I/O on ASTs. 2015-02-27T07:32:57Z moei quit (Read error: Connection reset by peer) 2015-02-27T07:33:23Z beach: So no extra code should be needed for each AST node, and I don't need the MOP either. 2015-02-27T07:33:33Z moei joined #lisp 2015-02-27T07:35:58Z sol__ joined #lisp 2015-02-27T07:36:00Z beach: How does SBCL do inlining? 2015-02-27T07:37:50Z dmiles_afk quit (Remote host closed the connection) 2015-02-27T07:38:32Z dmiles_afk joined #lisp 2015-02-27T07:38:41Z dmiles_afk quit (Remote host closed the connection) 2015-02-27T07:39:28Z dmiles_afk joined #lisp 2015-02-27T07:39:29Z dmiles_afk quit (Remote host closed the connection) 2015-02-27T07:41:05Z nostoi joined #lisp 2015-02-27T07:42:40Z ajtulloch quit (Remote host closed the connection) 2015-02-27T07:44:06Z ehu joined #lisp 2015-02-27T07:50:27Z pt1 joined #lisp 2015-02-27T07:50:37Z juiko joined #lisp 2015-02-27T07:52:40Z gingerale joined #lisp 2015-02-27T07:58:17Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T07:58:31Z AntiSpamMeta joined #lisp 2015-02-27T07:59:30Z loke: beach: Very well 2015-02-27T08:00:32Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T08:00:45Z AntiSpamMeta joined #lisp 2015-02-27T08:01:02Z psy_ quit (Ping timeout: 246 seconds) 2015-02-27T08:02:04Z Harag joined #lisp 2015-02-27T08:02:25Z d4ryus___ joined #lisp 2015-02-27T08:02:37Z loke: beach: I think it's done in ir1opt.lisp, in the function recognize-known-call 2015-02-27T08:04:01Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T08:04:14Z AntiSpamMeta joined #lisp 2015-02-27T08:04:55Z Shinmera joined #lisp 2015-02-27T08:05:17Z d4ryus quit (Ping timeout: 245 seconds) 2015-02-27T08:05:21Z faheem_: hi beach 2015-02-27T08:05:31Z faheem_: how's cleavir going? 2015-02-27T08:07:48Z pt1 quit (Remote host closed the connection) 2015-02-27T08:08:07Z sol__ quit (Ping timeout: 250 seconds) 2015-02-27T08:08:19Z Karl_Dscc joined #lisp 2015-02-27T08:08:19Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T08:08:32Z AntiSpamMeta joined #lisp 2015-02-27T08:09:23Z nicdev`` joined #lisp 2015-02-27T08:09:38Z nicdev` quit (Remote host closed the connection) 2015-02-27T08:13:23Z sol__ joined #lisp 2015-02-27T08:15:26Z wemeetagain quit (Remote host closed the connection) 2015-02-27T08:16:40Z angavrilov joined #lisp 2015-02-27T08:16:59Z huza joined #lisp 2015-02-27T08:18:17Z beach: faheem_: Very well thank you. 2015-02-27T08:18:41Z beach: loke: Thanks, I'll have a look. 2015-02-27T08:19:08Z beach: I guess I need to know what IR1 looks like. 2015-02-27T08:19:56Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T08:20:10Z AntiSpamMeta joined #lisp 2015-02-27T08:20:28Z alokbeniwal joined #lisp 2015-02-27T08:22:41Z beach: OK, cloning the AST was very easy. Only 25 lines of code. 2015-02-27T08:22:42Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T08:22:55Z AntiSpamMeta joined #lisp 2015-02-27T08:23:04Z beach: ... despite the AST not being a tree, so it can't be done bottom-up. 2015-02-27T08:23:55Z cadadar joined #lisp 2015-02-27T08:25:04Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T08:25:16Z AntiSpamMeta joined #lisp 2015-02-27T08:26:09Z beach: General method: 1. Traverse the graph from the root and create a dictionary mapping existing nodes to newly created ones. The new ones have the same values in its slots as the existing ones. 2. For each new node in the dictionary, reinitialize it by replacing every slot value that is an AST with the mapping in the dictionary. 2015-02-27T08:26:35Z beach: 3. Return the mapping of the old root. 2015-02-27T08:26:44Z Karl_Dscc quit (Remote host closed the connection) 2015-02-27T08:26:54Z shizhz joined #lisp 2015-02-27T08:34:35Z Cymew joined #lisp 2015-02-27T08:35:21Z segmond quit (Ping timeout: 252 seconds) 2015-02-27T08:36:08Z MrWoohoo joined #lisp 2015-02-27T08:38:29Z huza quit (Quit: WeeChat 0.3.8) 2015-02-27T08:40:38Z juiko quit (Ping timeout: 244 seconds) 2015-02-27T08:48:59Z segmond joined #lisp 2015-02-27T08:50:52Z sol__ quit (Ping timeout: 240 seconds) 2015-02-27T08:53:55Z rjmacready joined #lisp 2015-02-27T08:55:28Z prxq joined #lisp 2015-02-27T08:58:50Z edgar-rft quit (Quit: edgar-rft) 2015-02-27T09:00:16Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-02-27T09:00:25Z theos quit (Disconnected by services) 2015-02-27T09:00:47Z theos joined #lisp 2015-02-27T09:01:39Z zacharias joined #lisp 2015-02-27T09:04:36Z Shinmera joined #lisp 2015-02-27T09:05:48Z monod joined #lisp 2015-02-27T09:06:20Z Karl_Dscc joined #lisp 2015-02-27T09:16:51Z yCrazyEdd joined #lisp 2015-02-27T09:17:40Z CrazyEddy quit (Ping timeout: 252 seconds) 2015-02-27T09:17:44Z yCrazyEdd is now known as CrazyEddy 2015-02-27T09:22:30Z alokbeniwal quit (Quit: alokbeniwal) 2015-02-27T09:23:35Z hekmek joined #lisp 2015-02-27T09:25:01Z rszeno quit (Ping timeout: 264 seconds) 2015-02-27T09:28:02Z defaultxr quit (Quit: gnight) 2015-02-27T09:29:12Z fragamus quit (Ping timeout: 244 seconds) 2015-02-27T09:32:02Z nostoi quit (Quit: Verlassend) 2015-02-27T09:33:09Z dmiles_afk joined #lisp 2015-02-27T09:33:48Z pgomes joined #lisp 2015-02-27T09:37:58Z rszeno joined #lisp 2015-02-27T09:46:26Z minion quit (Remote host closed the connection) 2015-02-27T09:46:30Z Numerius quit (Ping timeout: 265 seconds) 2015-02-27T09:46:32Z minion joined #lisp 2015-02-27T09:52:51Z Ven joined #lisp 2015-02-27T09:53:55Z shizhz quit (Ping timeout: 246 seconds) 2015-02-27T09:58:56Z d4ryus___ is now known as d4ryus 2015-02-27T10:06:34Z dmiles_afk quit 2015-02-27T10:07:22Z ktt9 quit (Ping timeout: 240 seconds) 2015-02-27T10:07:57Z dmiles_afk joined #lisp 2015-02-27T10:08:34Z quazimodo joined #lisp 2015-02-27T10:09:22Z harish_ quit (Ping timeout: 252 seconds) 2015-02-27T10:14:59Z Xaving joined #lisp 2015-02-27T10:15:37Z Xaving quit (Client Quit) 2015-02-27T10:16:06Z larion joined #lisp 2015-02-27T10:24:02Z Vutral quit (Ping timeout: 245 seconds) 2015-02-27T10:24:27Z selat joined #lisp 2015-02-27T10:24:43Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-02-27T10:24:47Z zadock joined #lisp 2015-02-27T10:25:10Z Posterdati quit (Ping timeout: 255 seconds) 2015-02-27T10:26:54Z przl joined #lisp 2015-02-27T10:27:22Z ndrei quit (Ping timeout: 245 seconds) 2015-02-27T10:27:48Z Posterdati joined #lisp 2015-02-27T10:27:59Z ndrei joined #lisp 2015-02-27T10:28:21Z Numerius joined #lisp 2015-02-27T10:29:26Z gingerale quit (Ping timeout: 246 seconds) 2015-02-27T10:30:39Z Vutral joined #lisp 2015-02-27T10:32:21Z radioninja joined #lisp 2015-02-27T10:34:54Z segmond quit (Ping timeout: 272 seconds) 2015-02-27T10:35:09Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T10:35:22Z AntiSpamMeta joined #lisp 2015-02-27T10:38:26Z Vutral quit (Excess Flood) 2015-02-27T10:39:37Z gingerale joined #lisp 2015-02-27T10:40:23Z Vutral joined #lisp 2015-02-27T10:44:16Z redeemed joined #lisp 2015-02-27T10:45:09Z munksgaard joined #lisp 2015-02-27T10:45:25Z intinig joined #lisp 2015-02-27T10:46:02Z Vutral quit (Excess Flood) 2015-02-27T10:46:15Z segmond joined #lisp 2015-02-27T10:50:56Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-02-27T10:54:15Z wglb quit (Ping timeout: 250 seconds) 2015-02-27T10:58:21Z Vutral joined #lisp 2015-02-27T10:59:06Z scymtym joined #lisp 2015-02-27T10:59:43Z sz0` is now known as sz0 2015-02-27T11:00:22Z monod quit (Ping timeout: 240 seconds) 2015-02-27T11:01:55Z Ven joined #lisp 2015-02-27T11:06:36Z sol__ joined #lisp 2015-02-27T11:07:05Z arenz quit (Ping timeout: 250 seconds) 2015-02-27T11:09:50Z xan_ joined #lisp 2015-02-27T11:15:18Z paradoja joined #lisp 2015-02-27T11:16:51Z hardenedapple joined #lisp 2015-02-27T11:18:27Z sz0 is now known as sz0` 2015-02-27T11:19:50Z munksgaard quit (Ping timeout: 246 seconds) 2015-02-27T11:23:38Z sz0` is now known as sz0 2015-02-27T11:23:55Z nefigcas joined #lisp 2015-02-27T11:26:23Z kons joined #lisp 2015-02-27T11:28:37Z segmond quit (Ping timeout: 245 seconds) 2015-02-27T11:29:38Z hungnv95 joined #lisp 2015-02-27T11:33:34Z sol__ quit (Ping timeout: 245 seconds) 2015-02-27T11:35:56Z hungnv95: hello 2015-02-27T11:36:56Z hungnv95 quit (Quit: Page closed) 2015-02-27T11:40:11Z intinig quit (Remote host closed the connection) 2015-02-27T11:40:50Z intinig joined #lisp 2015-02-27T11:45:36Z mishoo quit (Ping timeout: 244 seconds) 2015-02-27T11:49:44Z intinig quit (Ping timeout: 264 seconds) 2015-02-27T11:50:37Z axion: hello all 2015-02-27T11:51:26Z sol__ joined #lisp 2015-02-27T11:51:55Z beach: Hello axion. 2015-02-27T11:52:02Z axion: i'd like to learn how to use closures better, as a friend of mine recommended it for a way to solve my problem 2015-02-27T11:52:25Z fantazo joined #lisp 2015-02-27T11:52:53Z beach: What is the problem? 2015-02-27T11:52:57Z axion: i am quite new to the topic, but my problem is I have a function in my game project, that i'd like to abstract away into a generic library, but it relies on an important class instance of my game 2015-02-27T11:53:25Z axion: he suggests somehow abstracting away the method that accesses this instance with a closure 2015-02-27T11:54:11Z cadadar left #lisp 2015-02-27T11:55:24Z beach: Is your friend an experienced Common Lisp programmer? 2015-02-27T11:56:06Z axion: yes, he is, but doesn't have a lot of free time so I don't see him much 2015-02-27T11:56:21Z segmond joined #lisp 2015-02-27T11:57:28Z axion: and i am far from experienced, despite programming with it exclusively for the last 6 years. hence this game project, to teach me more about algorithms, data structures, and lisp techniques in general 2015-02-27T11:57:30Z beach: Your description is too general for any advice to be given. Perhaps if you make it *slightly* more concrete. 2015-02-27T11:59:42Z axion: ok i'll run the gist of it by you. i have a path-finding algorithm (A*) that searches a graph for the best path from point A to point B. this graph, is a slot of my map class, with a hashtable of all cells, and a cell is a class containing slots for all of its adjacent neighbors, as well as other data for pathfinding, such as whether or not it is passable by non-flying entities 2015-02-27T12:00:39Z axion: i would like to put this pathfinding function into a generic library, and not have to pass in a very specific map instance to it 2015-02-27T12:01:07Z cadadar joined #lisp 2015-02-27T12:01:19Z beach: And you don't want to pass the graph either? 2015-02-27T12:01:20Z segmond quit (Ping timeout: 256 seconds) 2015-02-27T12:02:04Z axion: i am not really sure on what the best solution would be 2015-02-27T12:02:05Z taylanub joined #lisp 2015-02-27T12:02:19Z beach: Do you just want to pass the points A and B? 2015-02-27T12:03:05Z axion: i need to pass a graph of course - this should be usable by other game projects. i need to pass a graph, point A, point B, and a boolean whether flying or not 2015-02-27T12:03:39Z taylanub: anyone experienced with CCL? how old versions of CCL can one generally use to compile the newest version? the reason I ask: http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00814.html 2015-02-27T12:03:51Z Numerius quit (Ping timeout: 250 seconds) 2015-02-27T12:03:56Z beach: axion: If you are willing to pass the graph, I don't see what the problem is. 2015-02-27T12:04:38Z beach: axion: (find-path (graph map) a b t) 2015-02-27T12:06:06Z axion: the problem is moreso making it intuitive for the user, as currently my graph is a complex instance of a class containing other irrelevant map data. 2015-02-27T12:07:18Z nefigcas quit (Ping timeout: 244 seconds) 2015-02-27T12:09:11Z beach: axion: So the function you want to abstract away is not the path-finding function? 2015-02-27T12:09:48Z axion: i was just told closures may be able to help me solve this, but i'm not sure how 2015-02-27T12:10:07Z axion: it is the pathfinding function, but it shouldnt access my game's map object as a whole 2015-02-27T12:10:22Z beach: Why not? 2015-02-27T12:11:46Z beach: Oh, sorry, right. 2015-02-27T12:11:58Z axion: i need to make the graph generic somehow. i don't think anyone would use it if they needed a clos instance containing a slot for a hashtable of cells keyed by coordinates, with each of those instances containing slots for neighbors, passablep, etc 2015-02-27T12:12:55Z khisanth_ joined #lisp 2015-02-27T12:13:44Z beach: What do you mean by "making the graph generic"? 2015-02-27T12:14:10Z beach: axion: I can assure you I am not being dense on purpose, but I still have strictly not idea whatsoever what the problem is. 2015-02-27T12:14:35Z beach: s/not/no/ 2015-02-27T12:14:42Z segmond joined #lisp 2015-02-27T12:14:50Z axion: the main problem is the complex api for such a trivial generic library function 2015-02-27T12:14:52Z Khisanth quit (Ping timeout: 240 seconds) 2015-02-27T12:15:10Z beach: (find-path graph point-1 point-2)? 2015-02-27T12:15:15Z beach: I don't see that as a complex API. 2015-02-27T12:16:21Z beach: Er, (find-path graph point-1 point-2 flying-p) 2015-02-27T12:17:23Z axion: maybe i'm overthinking this and expecting the impossible, but i envisioned a more generic graph as well, which is heavily tied into my program :/ 2015-02-27T12:17:45Z beach: axion: You never told me what you meant by "generic graph". 2015-02-27T12:17:56Z H4ns: axion: if you define your graph related functions as generic functions, you can spezialize these functions for whatever classes you like. then, these generic functions do not know anything about your game object instances 2015-02-27T12:19:44Z beach is guessing that, as usual, other people understand the problem better than he does. 2015-02-27T12:19:45Z H4ns: axion: i.e. let's say you have an EDGES generic function, which needs to return a number of objects that once can call FROM, TO and DISTANCE for, you could implement the searching without knowing anything about the concrete objects themself. 2015-02-27T12:19:46Z pjb: axion: have a look at https://gitorious.org/com-informatimago/com-informatimago/source/common-lisp/cesarum/a-star.lisp 2015-02-27T12:20:10Z H4ns: s/once/one/ 2015-02-27T12:20:18Z intinig joined #lisp 2015-02-27T12:20:22Z H4ns: beach: i'm not sure if i understand the problem correctly either :) 2015-02-27T12:20:37Z beach: Whew! :) 2015-02-27T12:20:48Z H4ns: also, i'm not sure if i'm expressing myself well enough to make any sense. 2015-02-27T12:21:41Z axion: ok...yes you guys make sense. 2015-02-27T12:21:44Z pjb: Apart from the fact that graphs can be represented in various way, there's also the problem that often there's a graph present in the problem that is not reified in a specific data structure, but for which you can still identify nodes and an adjacency-list function or some other abstraction. 2015-02-27T12:21:52Z RenRenJuan joined #lisp 2015-02-27T12:22:15Z pjb: Hence you can give to an algorithm function such as a*-search, a set of closures that will represent the graph for this function. 2015-02-27T12:22:16Z selat quit (Read error: Connection reset by peer) 2015-02-27T12:22:32Z beach: This stuff is very well explained in PAIP. 2015-02-27T12:22:35Z axion: perhaps this is what he was referring to 2015-02-27T12:22:52Z pjb: axion: and a typical example is my implementation of a* linked above. 2015-02-27T12:23:02Z beach: axion: There is a chapter in PAIP about search. Do you have a copy? 2015-02-27T12:23:10Z axion: i admit, i am new to closures, this week and haven't fully weighed how they can help in all situations 2015-02-27T12:23:29Z H4ns: axion: no closures are needed for what i've tried to describe 2015-02-27T12:23:38Z axion: yes, it was recommended to me for some reading by the friend i speak of 2015-02-27T12:23:48Z axion: perhaps i should just stop talking and read more :) 2015-02-27T12:26:37Z axion: pjb: that looks like a nice example. i'll give mine more thought 2015-02-27T12:26:51Z Shinmera joined #lisp 2015-02-27T12:28:30Z selat joined #lisp 2015-02-27T12:29:37Z pacon joined #lisp 2015-02-27T12:30:09Z ynniv joined #lisp 2015-02-27T12:34:36Z tkhoa2711 joined #lisp 2015-02-27T12:34:45Z rszeno quit (Quit: Leaving.) 2015-02-27T12:35:10Z k-dawg joined #lisp 2015-02-27T12:36:57Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-02-27T12:39:54Z francogrex joined #lisp 2015-02-27T12:40:37Z mishoo joined #lisp 2015-02-27T12:41:09Z francogrex: hi all, I have this about utf-8 chars it's an error message I wonder if anyone has an idea how to get it 'fixed': http://paste.lisp.org/display/145992 2015-02-27T12:41:46Z pjb: francogrex: your database doesn't seem to be encoded in utf-8. 2015-02-27T12:42:05Z pjb: So, I'd try to tell sqlite what encoding it is in. 2015-02-27T12:42:23Z francogrex: pjb: if I use odbc on the same database I get the string of 'inverted question marks returned 2015-02-27T12:42:47Z francogrex: but with clsql and cl-sqlite not 2015-02-27T12:43:12Z francogrex: unless the odbc is handling something by itself... ? 2015-02-27T12:43:22Z segmond quit (Ping timeout: 240 seconds) 2015-02-27T12:43:47Z francogrex: but you tell me that #\INVERTED_QUESTION_MARK is actually utf-8? 2015-02-27T12:43:55Z pjb: Yes. 2015-02-27T12:44:00Z pjb: And no. 2015-02-27T12:44:01Z francogrex: weird 2015-02-27T12:44:09Z pjb: utf-8 is not a character set, it's an encoding. 2015-02-27T12:44:19Z pjb: ¿ belong to some character sets, and not to others. 2015-02-27T12:44:46Z pjb: utf-8 is often used to encode the unicode character set, but it's half irrelevant. 2015-02-27T12:45:30Z pjb: First you have to know what character set is used in your database. Then what character encodings can be used by your database to transmit those characters. Then you have to use this encoding in lisp to decode the bytes from the database into characters. 2015-02-27T12:45:56Z pjb: Assuming the character set used by your lisp is a superset of the character set used by the database. 2015-02-27T12:46:04Z francogrex: (execute-to-list *db* "PRAGMA encoding") => (("UTF-8")) 2015-02-27T12:46:07Z clintm: Good thing it's not complicated or anything :P 2015-02-27T12:46:19Z Ven joined #lisp 2015-02-27T12:46:27Z pjb: francogrex: sounds good. 2015-02-27T12:46:56Z francogrex: yes that's why it's comlicated to find the root cause of the error utf-8 and utf-8 oin both sides 2015-02-27T12:47:13Z pjb: But a sequence of #xbf is not a utf-8 encoded sequence. 2015-02-27T12:47:22Z francogrex: aha! 2015-02-27T12:47:31Z francogrex: pjb: please tell me more 2015-02-27T12:47:49Z pjb: http://en.wikipedia.org/wiki/UTF-8 2015-02-27T12:48:18Z francogrex: reading for the bedtime 2015-02-27T12:48:19Z ynniv: Is there a list of #\Characters somewhere? I didn’t know #\INVERTED_QUESTION_MARK was valid, and Google / clhs don’t have it either. 2015-02-27T12:48:34Z francogrex: 191 2015-02-27T12:48:43Z Xach: ynniv: there is a list of standard characters. implementations may add to the list. 2015-02-27T12:48:45Z francogrex: (code-char 191) 2015-02-27T12:48:52Z Xach: ynniv: sbcl uses unicode character names for #\ names. 2015-02-27T12:48:55Z pjb: ynniv: a lot of implementation use the unicode character name. 2015-02-27T12:49:19Z Xach: some allow #\U+<...> too 2015-02-27T12:50:20Z Mon_Ouie quit (Ping timeout: 264 seconds) 2015-02-27T12:50:31Z ynniv: Hah, #\Right-pointing_double_angle_quotation_mark. Ok, that’s nice to know. 2015-02-27T12:55:18Z segmond joined #lisp 2015-02-27T12:55:29Z pranavrc quit 2015-02-27T12:57:28Z francogrex: pjb: just please reassure me that someone of intermediate intelligence and skills by reading about utf-8 will be able to solve the issue... :) 2015-02-27T12:57:44Z francogrex: like that I have something to look forwxard to tonight 2015-02-27T12:58:13Z dkcl hasn't had any trouble with UTF-8 using CL after a little research 2015-02-27T13:00:23Z Xach: francogrex: what does the backtrace look like? 2015-02-27T13:05:31Z eudoxia joined #lisp 2015-02-27T13:05:32Z francogrex: Xach: please find attached here the output: http://paste.lisp.org/display/145992#1 2015-02-27T13:07:06Z rszeno joined #lisp 2015-02-27T13:07:37Z Karl_Dscc quit (Remote host closed the connection) 2015-02-27T13:12:05Z Karl_Dscc joined #lisp 2015-02-27T13:18:50Z munksgaard joined #lisp 2015-02-27T13:19:12Z kraehe: francogrex, the inverted question mark is likely coded Latin1 in your database, and UTF-8 is designed to break when feeding 8bit clean strings into it 2015-02-27T13:28:06Z kraehe is now known as kephra 2015-02-27T13:28:16Z tkhoa2711 quit (Quit: tkhoa2711) 2015-02-27T13:30:07Z intinig quit (Remote host closed the connection) 2015-02-27T13:30:41Z intinig joined #lisp 2015-02-27T13:31:59Z intinig quit (Remote host closed the connection) 2015-02-27T13:32:06Z drmeister: Hello 2015-02-27T13:32:19Z intinig joined #lisp 2015-02-27T13:32:32Z drmeister: beach: Why do the arguments to THE not get load-time-value-ized? 2015-02-27T13:34:06Z drmeister: I'm trying to figure out why the Module I generate from the code is failing. LLVM spits out the very informative "Module NIL" error message. 2015-02-27T13:34:48Z hekmek quit (Quit: Verlassend) 2015-02-27T13:35:11Z drmeister: The THE thing may be coincident or causative - I have no idea at this point. I'm digging... 2015-02-27T13:36:10Z munksgaard quit (Ping timeout: 244 seconds) 2015-02-27T13:42:27Z francogrex: kephra: ok thanks, I will try to get my head around that but yeah I sort of get what you mean I'll investigate more 2015-02-27T13:45:56Z intinig quit 2015-02-27T13:48:39Z Beetny quit (Ping timeout: 265 seconds) 2015-02-27T13:49:09Z taylanub quit (Ping timeout: 250 seconds) 2015-02-27T13:49:09Z beach: drmeister: I haven't updated the code for turning the THE-AST into HIR. It was written at a time when it was OK to introduce all kinds of things during that compilation process. In particular, the method on COMPILE-AST specialized to THE-AST introduces constants. Then it is to late for the LOAD-TIME-VALUE-ization. 2015-02-27T13:49:38Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-02-27T13:50:08Z Harag quit (Ping timeout: 256 seconds) 2015-02-27T13:50:19Z beach: drmeister: I guess I can just turn it into a THE-INSTRUCTION and nothing else. 2015-02-27T13:51:35Z sol__ quit (Quit: Leaving) 2015-02-27T13:52:25Z sz0 is now known as sz0` 2015-02-27T13:53:27Z beach: drmeister: So I take it you *do* need for me to address this problem ASAP after all? 2015-02-27T13:54:12Z jtza8 joined #lisp 2015-02-27T13:54:26Z Karl_Dscc quit (Remote host closed the connection) 2015-02-27T13:54:58Z sall joined #lisp 2015-02-27T13:55:15Z sall: hey geys 2015-02-27T13:55:31Z sall: i want to insert element in list 2015-02-27T13:55:48Z sall: without giving me a list in list 2015-02-27T13:56:17Z taylanub joined #lisp 2015-02-27T13:56:18Z sall: ? 2015-02-27T13:56:40Z beach: sall: Where do you want to insert the element? 2015-02-27T13:56:55Z beach: First, last, anywhere, ordered, by position, something else? 2015-02-27T13:56:59Z sall: any position second or thrid 2015-02-27T13:57:08Z beach: You don't care which position? 2015-02-27T13:57:20Z sall: say the second 2015-02-27T13:57:29Z beach: Is this homework? 2015-02-27T13:57:43Z sall: hhhhhhhhhh in deed yes 2015-02-27T13:57:55Z beach: So what have you been thinking so far? 2015-02-27T13:58:35Z sall: i did it with the cons 2015-02-27T13:58:48Z sall: but it gave me alist of list 2015-02-27T13:59:08Z sall: and with push 2015-02-27T13:59:13Z sall: the same result 2015-02-27T13:59:24Z sall: i tryed the append 2015-02-27T13:59:37Z sall: but it should take lists so i ignored it ] 2015-02-27T14:00:05Z sall: now im thinking of coping elements to a new list 2015-02-27T14:00:20Z sall: but im not sure how to do this 2015-02-27T14:00:34Z sall: i think it not gonna work 2015-02-27T14:00:44Z sall: what do u think 2015-02-27T14:01:09Z beach: sall: "I did it with the cons" is not enough information. Please give the full code. If it is more than one line, use paste.lisp.org. 2015-02-27T14:01:52Z francogrex quit (Quit: ERC Version 5.1.2 $Revision: 1.796.2.4 $ (IRC client for Emacs)) 2015-02-27T14:02:21Z sall: ((cons (car x ) element ) (cdr x)) 2015-02-27T14:02:35Z sall: inseting element in second postion in list x 2015-02-27T14:04:49Z sall: and this is by push (push element (nth 1 x ) ) 2015-02-27T14:04:52Z vaporatorius joined #lisp 2015-02-27T14:04:57Z sz0` is now known as sz0 2015-02-27T14:05:07Z sall: ? 2015-02-27T14:05:27Z beach: sall: That is not even valid Common Lisp code. 2015-02-27T14:05:49Z beach: sall: The ((cons (car x ...))) 2015-02-27T14:06:06Z sall: wait a scond 2015-02-27T14:07:01Z taylanub quit (Ping timeout: 265 seconds) 2015-02-27T14:08:06Z taylanub joined #lisp 2015-02-27T14:09:01Z Xaving joined #lisp 2015-02-27T14:10:17Z Xaving quit (Client Quit) 2015-02-27T14:11:08Z linux_dream joined #lisp 2015-02-27T14:13:04Z sall: how i cann use paste lisp? 2015-02-27T14:13:13Z Ven joined #lisp 2015-02-27T14:13:39Z beach: minion: Please tell sall about lisppaste. 2015-02-27T14:13:41Z minion: sall: please look at lisppaste: lisppaste is an IRC bot that runs under the nickname "lisppaste" and can be used (only for the #lisp IRC channel!) at http://paste.lisp.org/new/lisp - or http://paste.lisp.org/ for other destinations 2015-02-27T14:13:59Z cmatei quit (Ping timeout: 245 seconds) 2015-02-27T14:14:23Z sall: thanks it working now the link a bove wasnt work 2015-02-27T14:14:28Z beach: sall: Actually, you need to explicitly give us the URL after you entered the paste. The bot no longer does it for you. 2015-02-27T14:14:28Z beach: 2015-02-27T14:14:41Z cmatei joined #lisp 2015-02-27T14:15:44Z sz0 is now known as sz0` 2015-02-27T14:16:43Z sall: http://paste.lisp.org/display/145996 the url 2015-02-27T14:16:53Z beach: drmeister: Are you around? 2015-02-27T14:18:03Z harish_ joined #lisp 2015-02-27T14:18:19Z beach: sall: This code has so many problems that it will take us a long time to get to the point where we can discuss inserting elements in a list. 2015-02-27T14:18:41Z beach: sall: 1. You must define global variables before assigning to them. 2015-02-27T14:18:51Z beach: sall: 2. Your indentation is completely wrong. 2015-02-27T14:19:00Z beach: sall: 3. Your spacing is completely wrong as well. 2015-02-27T14:19:19Z beach: sall: 4: You modify constant data. This is specifically not allowed by the Common Lisp HyperSpec. 2015-02-27T14:20:25Z beach: sall: 5. You have arbitrary, useless, blank lines in the code. 2015-02-27T14:20:41Z sall: mmmm 2015-02-27T14:20:56Z sall: regardless of the space 2015-02-27T14:21:23Z sall: define global variable what global variables ? 2015-02-27T14:21:36Z sall: i defined the function inserting 2015-02-27T14:21:39Z beach: sall: When you submit code for people to read, it must be properly indented. Otherwise you force people to count parentheses. 2015-02-27T14:21:45Z sall: u mean the list 2015-02-27T14:21:52Z LiamH joined #lisp 2015-02-27T14:22:02Z beach: x1 and x2 are not local. 2015-02-27T14:22:14Z sall: i sorry my fault 2015-02-27T14:22:21Z beach: If you want them to be local, you can't use SETQ before defining them. 2015-02-27T14:22:35Z beach: sall: How long have you been learning Common Lisp? 2015-02-27T14:22:37Z sall: aha 2015-02-27T14:22:46Z sall: a week 2015-02-27T14:22:54Z sall: :D 2015-02-27T14:23:11Z sall: i still didnt get itt all 2015-02-27T14:23:18Z beach: I can tell. 2015-02-27T14:23:34Z sall: :D 2015-02-27T14:23:53Z sall: ill edit it ok 2015-02-27T14:24:55Z beach: sall: 6. The convention for global variables (like your X holding the list) is to use names with "earmuffs", i.e., *x*. 2015-02-27T14:25:24Z sall: aha 2015-02-27T14:25:37Z beach: sall: By "insert" do you mean destructively modifying the list? 2015-02-27T14:25:56Z beach: sall: Or is your course about functional programming, so that you don't modify the original list? 2015-02-27T14:27:00Z beach: sall: For defining global (they are actually called "special") variables, see DEFPARAMETER and DEFVAR. 2015-02-27T14:27:05Z beach: clhs defparameter 2015-02-27T14:27:06Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_defpar.htm 2015-02-27T14:27:20Z beach: sall: For defining local variables, see LET and LET*. 2015-02-27T14:27:23Z beach: clhs let 2015-02-27T14:27:24Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_let_l.htm 2015-02-27T14:27:49Z sall: the original or a new one it dosent matter they want the result to be a one list so when i try inserting again in the same list i dont get list of list 2015-02-27T14:28:16Z Numerius joined #lisp 2015-02-27T14:28:33Z beach: OK. 2015-02-27T14:30:01Z beach: sall: In your form (cons x1 a), the list is the first argument and the element to insert is the second argument. Have you looked at how CONS works? 2015-02-27T14:30:13Z drmeister: beach: I'm back 2015-02-27T14:30:27Z beach: drmeister: Did you see what I said about THE? 2015-02-27T14:30:29Z sall: yes 2015-02-27T14:30:34Z drmeister: Reading... 2015-02-27T14:31:00Z sall: it takes the first argumet and make it point to the second 2015-02-27T14:31:01Z sall: ? 2015-02-27T14:32:18Z Mon_Ouie joined #lisp 2015-02-27T14:32:29Z drmeister: beach: I understand. When I look at the HIR - there is all sorts of weird stuff going on with typep being called _within_ the loop with (AND (AND (INTEGER 0 1000)) T) being passed as an argument. 2015-02-27T14:32:34Z Karl_Dscc joined #lisp 2015-02-27T14:32:34Z beach: sall: If we consider lists, it creates a new list from the element that is the first argument and the list that is the second argument. 2015-02-27T14:32:37Z drmeister: Or - I think I understand. 2015-02-27T14:32:44Z kobain joined #lisp 2015-02-27T14:33:08Z beach: drmeister: The THE compiler should not introduce code at all the way it currently does. 2015-02-27T14:33:11Z drmeister: beach: I have a grant proposal that I need to get cracking on so I can't work as heavily on this as I'd like to. 2015-02-27T14:33:19Z beach: drmeister: That used to be OK, but it no longer isn't. 2015-02-27T14:33:37Z beach: drmeister: That's fine with me. It gives me more time to work on it. 2015-02-27T14:33:43Z kobain quit (Max SendQ exceeded) 2015-02-27T14:34:00Z kobain joined #lisp 2015-02-27T14:34:09Z drmeister: I wanted to get to a point where I had something working - and I'm there now so I can slow down a bit and give you time to work on it. 2015-02-27T14:34:09Z Grue`: sall: read http://www.cs.cmu.edu/~dst/LispBook/ until you understand how conses and lists work! 2015-02-27T14:34:14Z beach: sall: So, typically, for lists, the element is the first argument and the list is the second argument. 2015-02-27T14:34:45Z kobain quit (Max SendQ exceeded) 2015-02-27T14:34:49Z beach: drmeister: Perfect. It is not a big fix, but I would like to make progress on other things as well. Today I have been working on cloning ASTs for the purpose of inlining. 2015-02-27T14:34:54Z sall: ok 2015-02-27T14:35:15Z cluck joined #lisp 2015-02-27T14:35:53Z beach: sall: Otherwise, your (cons (cons .. ..) x2) is close to a non-destructive version. I suggest you play with that until you get it right. 2015-02-27T14:36:06Z drmeister: beach: Ok. In the meantime I will work on argument/lambda-list processing. Maybe we can meet up in several days and touch base again. 2015-02-27T14:36:15Z beach: drmeister: Sounds good. 2015-02-27T14:37:14Z beach: drmeister: The good news is that inlining is going to be fairly simple. 2015-02-27T14:37:30Z drmeister: Awesome. 2015-02-27T14:37:38Z beach: drmeister: I am thinking of not bothering with functions with keyword arguments. 2015-02-27T14:37:55Z rszeno quit (Quit: Leaving.) 2015-02-27T14:38:07Z beach: drmeister: Keyword argument processing is going to be messy anyway, so it will take time, and the inlining won't help much. 2015-02-27T14:38:37Z thail joined #lisp 2015-02-27T14:38:50Z drmeister: I don't know what the consequence of that is. My guess is that if you are using keyword arguments - then you are hot working with hot code. 2015-02-27T14:39:00Z drmeister: "not working with..." 2015-02-27T14:39:04Z beach: Exactly. 2015-02-27T14:39:31Z beach: And if you are, you probably want to make a compiler macro to turn common cases into calls to functions with only required parameters. 2015-02-27T14:39:46Z beach: So the problem will take care of itself. 2015-02-27T14:39:53Z drmeister: Hmm, interesting - a use case for compiler macros. 2015-02-27T14:40:00Z beach: Oh, definitely. 2015-02-27T14:40:13Z beach: That's one of the major uses for compiler macros. 2015-02-27T14:40:37Z thail: what is the meaning of "hot code"? 2015-02-27T14:40:50Z beach: ... take a call with known keyword arguments and turn it into a call for a specialized function. 2015-02-27T14:40:52Z jdz: blond code in red dress 2015-02-27T14:41:01Z drmeister: thail: The 10% of code that takes 90% of the time 2015-02-27T14:41:20Z thail: drmeister: thank you 2015-02-27T14:41:54Z drmeister: It's easier to define than it is to find. 2015-02-27T14:42:10Z drmeister: thail: You are welcome. 2015-02-27T14:43:40Z beach: drmeister: In fact, I am thinking that initially I will only inline functions that have only required parameters. I will leave optionals until later. 2015-02-27T14:43:54Z sol__ joined #lisp 2015-02-27T14:44:44Z badkins joined #lisp 2015-02-27T14:44:49Z linux_dream quit (Ping timeout: 264 seconds) 2015-02-27T14:45:23Z Longlius quit (Remote host closed the connection) 2015-02-27T14:45:37Z drmeister: That sounds like a good start. 2015-02-27T14:46:02Z drmeister: WDSD (What does SBCL do)? 2015-02-27T14:46:30Z kcj quit (Read error: Connection reset by peer) 2015-02-27T14:46:50Z beach: I don't know the details. 2015-02-27T14:46:51Z drmeister: nyef is not online sadly 2015-02-27T14:47:04Z drmeister: Nor stassats 2015-02-27T14:47:38Z beach: drmeister: Currently, the global-function-info class contains an accessor named HIR. This will change, and it will have an accessor named AST, because now the plan is to do the inlining at the AST level. 2015-02-27T14:48:04Z beach: drmeister: So in order for Cleavir to inline, your instances of that class must contain the AST for the function. 2015-02-27T14:48:16Z beach: drmeister: I'll let you know the details later. 2015-02-27T14:48:40Z drmeister: No problem. 2015-02-27T14:49:06Z drmeister: The AST is not a tree - what happens to the loops? 2015-02-27T14:49:10Z drmeister: cycles - whatever? 2015-02-27T14:49:24Z beach: They are preserved in the clone. 2015-02-27T14:49:26Z Longlius joined #lisp 2015-02-27T14:49:36Z drmeister: And inlining doesn't generate new ones? 2015-02-27T14:49:44Z pjb quit (Ping timeout: 264 seconds) 2015-02-27T14:49:51Z beach: Inlining will clone the AST. 2015-02-27T14:49:57Z beach: Preserving the structure. 2015-02-27T14:50:03Z beach: Including cycles. 2015-02-27T14:50:27Z drmeister: But are new cycles created between the inlined AST and the existing AST? 2015-02-27T14:50:39Z beach: Not at the AST level, no. 2015-02-27T14:50:44Z drmeister is learning 2015-02-27T14:51:09Z beach: Basically, the CALL-AST will be replaced by a copy of the AST of the called function. 2015-02-27T14:51:09Z Ralt: drmeister: you're generating LLVM IR code right? 2015-02-27T14:51:13Z drmeister: That sounds nice. 2015-02-27T14:51:28Z drmeister: That sounds really nice. 2015-02-27T14:51:32Z beach: drmeister: Plus some glue SETQ-ASTs to assign arguments to parameters. 2015-02-27T14:51:45Z drmeister: Ralt: Yes - I've been generating LLVM-IR from the beginning - maybe two years. 2015-02-27T14:51:48Z beach: drmeister: For now, just remember that you need to be careful about specifying SAVE-INFO for your own AST classes. 2015-02-27T14:51:56Z kobain joined #lisp 2015-02-27T14:52:04Z beach: drmeister: Because cloning relies on SAVE-INFO working. 2015-02-27T14:52:05Z brucem: It'll be interesting to see if drmeister is able to handle debug info correctly with that inlining scheme. 2015-02-27T14:52:22Z hiyosi joined #lisp 2015-02-27T14:52:25Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2015-02-27T14:52:29Z kobain quit (Max SendQ exceeded) 2015-02-27T14:52:38Z beach: brucem: Normally, debug information will be cloned as well. 2015-02-27T14:52:46Z kobain joined #lisp 2015-02-27T14:52:54Z drmeister: beach: Noted. I haven't used SAVE-INFO yet and don't know what it is. 2015-02-27T14:53:03Z beach: brucem: Not cloned, but present in the clone. 2015-02-27T14:53:03Z lispyone joined #lisp 2015-02-27T14:53:19Z kobain quit (Max SendQ exceeded) 2015-02-27T14:53:29Z beach: drmeister: As long as you don't have your own AST classes, no problem. 2015-02-27T14:53:36Z kobain joined #lisp 2015-02-27T14:53:40Z drmeister: I do have my own AST classes. 2015-02-27T14:53:48Z drmeister: The precalc-values stuff. 2015-02-27T14:53:56Z beach: They are ASTs? OK. 2015-02-27T14:54:25Z drmeister: Yeah - after hoisting. 2015-02-27T14:54:31Z ggole: You'd need code copying anyway, for other optimisations 2015-02-27T14:54:39Z kobain quit (Max SendQ exceeded) 2015-02-27T14:54:40Z brucem: beach: yes ... but I'm guessing it'll get complicated at some point. It does for us. 2015-02-27T14:54:43Z pjb joined #lisp 2015-02-27T14:54:45Z ggole: Duplication code to specialise it is pretty common 2015-02-27T14:54:46Z Xach: nightfly: Are you still maintaining cl-arrows? 2015-02-27T14:54:51Z ggole: *Duplicating 2015-02-27T14:54:56Z kobain joined #lisp 2015-02-27T14:54:59Z beach: SAVE-INFO is a sequence of pairs for any slot that needs to be preserved when the AST is written to a file and then read back again. 2015-02-27T14:55:12Z drmeister: Oh, that - yes I use that. 2015-02-27T14:55:38Z drmeister: I mean I copied your style. 2015-02-27T14:55:43Z beach: drmeister: Turns out, the exact same information is needed for cloning. 2015-02-27T14:55:48Z beach: drmeister: That's fine. 2015-02-27T14:55:49Z sol_ joined #lisp 2015-02-27T14:55:51Z brucem: ggole: yep ... and that complicates debug info some. :) (especially if you, for example, want the debugger to correctly set a breakpoint on calls to inlined functions) 2015-02-27T14:55:58Z beach: drmeister: So cloning an AST is only 25 lines of code. :) 2015-02-27T14:56:13Z sol_ is now known as Guest83428 2015-02-27T14:56:14Z drmeister: brucem raises a good point - we should get source info in there and clone it when you clone ASTs 2015-02-27T14:56:32Z beach: One thing at a time. 2015-02-27T14:56:41Z beach: I am already overworked as it is. 2015-02-27T14:57:05Z drmeister: https://www.irccloud.com/pastebin/W64G8BbI 2015-02-27T14:57:16Z lispyone quit (Remote host closed the connection) 2015-02-27T14:57:35Z drmeister: beach: Well, keep it in mind so that it will be easier to add back later. 2015-02-27T14:57:43Z ggole: brucem: Yeah. It's not for nothing that debugging optimized code has the reputation it does. 2015-02-27T14:58:00Z beach: drmeister: The save-info needs to match the slot definition. :) 2015-02-27T14:58:08Z sol__ quit (Ping timeout: 264 seconds) 2015-02-27T14:58:30Z drmeister: Duh! Bitrot 2015-02-27T14:58:33Z beach: drmeister: :precalc-asts vs :precalc-value-asts. 2015-02-27T14:58:47Z pgomes joined #lisp 2015-02-27T14:59:58Z drmeister: Fixing. What are the two elements supposed to be? The initarg and the accessor? 2015-02-27T15:00:05Z beach: Yes. 2015-02-27T15:00:11Z drmeister: initarg writer 2015-02-27T15:00:15Z drmeister: Got it 2015-02-27T15:00:23Z beach: Initarg and reader, actually. 2015-02-27T15:00:52Z beach: The initarg is used to create a copy, and the reader is used to get the corresponding value from an existing instance. 2015-02-27T15:00:57Z ynniv quit (Quit: ynniv) 2015-02-27T15:01:04Z lispyone joined #lisp 2015-02-27T15:01:34Z drmeister: I use crazy-long accessor names - I should shorten them. 2015-02-27T15:01:40Z drmeister: https://www.irccloud.com/pastebin/WG9LgJps 2015-02-27T15:02:19Z beach: drmeister: I personally don't like prefixing accessors with the name of the class. 2015-02-27T15:02:20Z ruste quit (Ping timeout: 264 seconds) 2015-02-27T15:02:27Z beach: It looks so silly when applied to a subclass. 2015-02-27T15:02:41Z drmeister: Good point. 2015-02-27T15:02:54Z beach: (sheet-parent gadget) in CLIM for instance. 2015-02-27T15:03:22Z beach: I use the package system to disambiguate stuff like that. 2015-02-27T15:03:56Z beach: Old Common Lisp code seems to use the package system infrequently. 2015-02-27T15:04:48Z drmeister: Yeah - I saw that - makes for cleaner code. 2015-02-27T15:05:02Z beach: That's what I am hoping. 2015-02-27T15:05:12Z Grue`: but is (clim/sheets:parent gadget) any better than (sheet-parent gadget) in case there are several "parent" generic functions around? 2015-02-27T15:05:34Z drmeister: Although you end up with package identifiers all over the place. The upside is that it's easier to copy/paste code. 2015-02-27T15:05:45Z Guest83428 left #lisp 2015-02-27T15:05:55Z jdz: yes, because those are "parent" methods from different protocols 2015-02-27T15:05:58Z sol__ joined #lisp 2015-02-27T15:06:05Z beach: Grue`: Not much better in that particular case. 2015-02-27T15:06:34Z sol__: dunno if the question was actually posted last time: i'm looking for a tool that organizes my imports automatically 2015-02-27T15:06:44Z Ethan- quit (Ping timeout: 252 seconds) 2015-02-27T15:07:27Z drmeister: beach: I have my marching orders - I'll retire now to work on other things and steal away time to work on Clasp. 2015-02-27T15:07:50Z beach: drmeister: Sure. 2015-02-27T15:08:07Z drmeister: Later gaters 2015-02-27T15:08:47Z beach: sol__: What "imports" are we talking about here, and how do you want them "organized"? 2015-02-27T15:09:13Z beach: sol__: It is very rare to see any uses of IMPORT in Common Lisp code. 2015-02-27T15:09:19Z xan_ quit (Quit: leaving) 2015-02-27T15:09:30Z beach: clhs import 2015-02-27T15:09:30Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_import.htm 2015-02-27T15:09:39Z sol__: beach, i'm writing two packages, one utility the other one the actual project i'm working on 2015-02-27T15:09:53Z sol__: it would be nice to be able to press a button and have all imports sorted out 2015-02-27T15:10:01Z Cymew quit (Ping timeout: 255 seconds) 2015-02-27T15:10:05Z sol__: same goes for symbols from other packages i'm using (usocket, etc.) 2015-02-27T15:10:28Z beach: Why do you have IMPORTs in your code? 2015-02-27T15:10:49Z sol__: i have them in my defpackage ... ":import-from ...") 2015-02-27T15:10:55Z Grue`: sol__: SLIME can add symbols to export list by pressing C-c x or something, maybe it has something to :import-from too 2015-02-27T15:11:38Z beach: sol__: And how do you want some program to automatically determine which imports you want? 2015-02-27T15:11:40Z sol__: Grue`, nice - this saves me half the trouble :) now to figure out how to import automatically 2015-02-27T15:11:41Z Grue`: theoretically its undecidable which package you want to import a symbol from, so it cannot be done automatically 2015-02-27T15:12:11Z sol__: Well eclipse+java offers me to choose the package in case there are conflicts 2015-02-27T15:12:18Z sol__: i thought there might be something similar here 2015-02-27T15:12:46Z sall quit (Ping timeout: 246 seconds) 2015-02-27T15:12:51Z beach: sol__: My question is more basic: What are the symbols you want imported, and how can those be determined automatically? 2015-02-27T15:12:52Z Xach: sol__: if you want to use all external symbols without prefixes, use :use, not :import-from. if you want to use only selected symbols, you have to choose, and that involves thinking about it and writing it out. 2015-02-27T15:13:09Z Xach: you can manage :use conflicts with :shadow and :shadowing-import-from. 2015-02-27T15:13:17Z Grue`: I prefer either using a package or prefixing it with package-name:... 2015-02-27T15:13:29Z sol__: :use actually doesn't work for me 2015-02-27T15:14:02Z beach: Why is that? 2015-02-27T15:14:05Z Grue`: there are some packages that are annoying to :use because they whack too many symbols 2015-02-27T15:14:08Z adeht: if you control both packages, :use may be acceptable.. otherwise I use :import-from 2015-02-27T15:14:33Z Xach: :shadow and :shadowing-import-from can help. 2015-02-27T15:14:51Z sol__: (:use #:cl #:myutils) is correct syntax right? 2015-02-27T15:15:03Z Xach: sol__: if "MYUTILS" names a package, yes. 2015-02-27T15:15:18Z Xach: sol__: MYUTILS must also export things for it to be meaningful 2015-02-27T15:16:16Z Vutral quit (Ping timeout: 256 seconds) 2015-02-27T15:16:18Z sol__: okay it works for my own package, it didn't a couple of days ago for usocket... i'll try again 2015-02-27T15:17:01Z rick-monster: hmm anyone know an existing zip library that can create a 'decompressing' stream from a binary stream in .zip format? ( I'm using chipz:make-decompressing-stream to do this for .gz ) 2015-02-27T15:17:27Z Xach: sol__: it is possible to encounter conflicts. those conflicts can be resolved, though. 2015-02-27T15:18:10Z beach: sol__: It is usually not such a great idea to attempt to import all external symbols from a package that someone else maintains. 2015-02-27T15:18:14Z H4ns: rick-monster: gzip-stream works well for me. 2015-02-27T15:18:17Z sol__: okay :use works now, that kinda solves my gripe with having to import-from everything 2015-02-27T15:18:38Z H4ns: rick-monster: you'll have to skip the zip header, though. 2015-02-27T15:18:57Z sol__: yea but it's a headache during development to constantly change the package 2015-02-27T15:19:05Z sol__: lots of symbols = bad? 2015-02-27T15:19:08Z beach: sol__: The reason is that additional external symbols might be added in the future, and that will break your code because of conflicts. 2015-02-27T15:19:10Z sol__: is it a performance issue? 2015-02-27T15:19:22Z beach: No, no performance problem. 2015-02-27T15:19:24Z H4ns: rick-monster: http://paste.lisp.org/display/145997 2015-02-27T15:19:27Z sol__: ok beach, makes sense 2015-02-27T15:19:43Z beach: sol__: More and more, I use explicit package prefixes. 2015-02-27T15:20:15Z beach: sol__: It also makes it immediately clear to the reader (the person reading the code) where the symbol came from. 2015-02-27T15:20:38Z rick-monster: thanks h4ns that's awesome I'll try it out 2015-02-27T15:22:45Z fantazo quit (Ping timeout: 250 seconds) 2015-02-27T15:22:54Z H4ns: rick-monster: http://paste.lisp.org/display/145997#1 is how we open zip files as streams - we've been using this for a few years with files from various sources and it never caused any issues. 2015-02-27T15:25:32Z dilated_dinosaur quit (Ping timeout: 246 seconds) 2015-02-27T15:25:55Z innertracks joined #lisp 2015-02-27T15:26:43Z pacon quit (Read error: Connection reset by peer) 2015-02-27T15:26:51Z nyef joined #lisp 2015-02-27T15:27:02Z nyef: G'morning all. 2015-02-27T15:29:47Z ynniv joined #lisp 2015-02-27T15:30:30Z rick-monster: hmm not quite going to plan - 2015-02-27T15:30:51Z beach: Hello nyef. 2015-02-27T15:31:30Z drmeister: beach: I had to try something. 2015-02-27T15:31:39Z drmeister: beach: I have the first timing data. 2015-02-27T15:31:50Z beach: Uh oh! 2015-02-27T15:32:14Z drmeister: Right now - running a simple counting loop... 2015-02-27T15:32:21Z drmeister: Cleavir/clasp is 10x faster than Clasp. 2015-02-27T15:32:32Z beach: Wow. Nice! 2015-02-27T15:32:43Z drmeister: This is my stupid example. 2015-02-27T15:32:53Z drmeister: https://www.irccloud.com/pastebin/rFqZLAE2 2015-02-27T15:32:55Z beach: Now you can't possibly work on that grant proposal. :) 2015-02-27T15:33:16Z k-stz joined #lisp 2015-02-27T15:33:28Z drmeister: (time (a 1 1000000)) --> 3.9 seconds 2015-02-27T15:33:46Z drmeister: I compile the same code with Clasp's compiler and call the function "b" 2015-02-27T15:34:04Z drmeister: (time (b 1 1000000)) --> 39.8 seconds. 2015-02-27T15:34:19Z beach: Is the answer the same in both cases? :) 2015-02-27T15:34:24Z fantazo joined #lisp 2015-02-27T15:34:34Z drmeister: Yes - hang on - I want to be certain. 2015-02-27T15:36:05Z duggiefresh joined #lisp 2015-02-27T15:37:28Z a2015 quit (Quit: Page closed) 2015-02-27T15:37:35Z Numerius quit (Ping timeout: 244 seconds) 2015-02-27T15:38:10Z k-dawg quit (Quit: This computer has gone to sleep) 2015-02-27T15:38:13Z rick-monster: ok h4ns thanks again for the code snippet - works with a regular file but my ceph bindings seem to be missing some methods... 2015-02-27T15:38:16Z beach: drmeister: And? 2015-02-27T15:38:28Z drmeister: Here's what I'm running: 2015-02-27T15:38:32Z Fade: topic is out of date by two sbcl releases. :) 2015-02-27T15:38:32Z drmeister: https://www.irccloud.com/pastebin/cZAewin1 2015-02-27T15:38:46Z drmeister: Here's the output. 2015-02-27T15:39:02Z drmeister: https://www.irccloud.com/pastebin/fjzumY7k 2015-02-27T15:39:37Z drmeister: The contents of tiny1.lsp 2015-02-27T15:39:39Z drmeister: https://www.irccloud.com/pastebin/vqQb6x35 2015-02-27T15:39:48Z drmeister: We done good. 2015-02-27T15:39:58Z beach: Yeah. 2015-02-27T15:40:02Z beach: drmeister: That is VERY encouraging in my opinion. Especially since Cleavir is not doing ANY optimizations at the moment. 2015-02-27T15:40:14Z dlowe: what's responsible for the speedup? 2015-02-27T15:40:20Z Vutral joined #lisp 2015-02-27T15:40:35Z drmeister: Moving bindings from the heap onto the stack and registers. 2015-02-27T15:40:42Z dlowe: ah, yeah. that would do it 2015-02-27T15:40:56Z dlowe: I thought LLVM would have done all that for you 2015-02-27T15:41:22Z drmeister: No. LLVM is a C/C++ compiler writing library - if you want to do stuff on the heap - that's your problem. 2015-02-27T15:41:30Z beach: dlowe: I don't think drmeister's compiler did any escape analysis, so it was forced to put everything on the heap. 2015-02-27T15:41:38Z drmeister: Exactly. 2015-02-27T15:42:04Z drmeister: My compiler doesn't do any escape analysis - I do put all bindings on the heap. 2015-02-27T15:42:44Z mishoo quit (Ping timeout: 245 seconds) 2015-02-27T15:42:49Z mulk quit (Quit: mulk) 2015-02-27T15:42:54Z drmeister: This is a huge improvement - and the infrastructure supports a lot of optimizations that we aren't making yet, both on the Cleavir and the LLVM side. 2015-02-27T15:43:13Z beach: Yep. The future looks bright. 2015-02-27T15:44:16Z drmeister gotta wear shades. 2015-02-27T15:45:07Z flash- joined #lisp 2015-02-27T15:45:13Z drmeister: Ok, when the grant writing starts to grind me down I'll pull this memory out and it will keep me warm. 2015-02-27T15:45:25Z kons quit (Remote host closed the connection) 2015-02-27T15:45:28Z beach: Heh, yeah. Good luck. 2015-02-27T15:47:07Z edgar-rft joined #lisp 2015-02-27T15:50:14Z innertracks1 joined #lisp 2015-02-27T15:50:20Z jtza8 quit (Ping timeout: 246 seconds) 2015-02-27T15:50:21Z innertracks quit (Ping timeout: 264 seconds) 2015-02-27T15:52:29Z diphtherial left #lisp 2015-02-27T15:53:56Z wz1000 quit (Ping timeout: 264 seconds) 2015-02-27T15:54:33Z dilated_dinosaur joined #lisp 2015-02-27T15:55:01Z j0nii joined #lisp 2015-02-27T15:58:53Z oleo joined #lisp 2015-02-27T15:59:07Z oleo quit (Read error: Connection reset by peer) 2015-02-27T15:59:47Z oleo__ quit (Ping timeout: 246 seconds) 2015-02-27T16:00:06Z pt1 joined #lisp 2015-02-27T16:00:48Z sall joined #lisp 2015-02-27T16:00:52Z oleo joined #lisp 2015-02-27T16:01:15Z mishoo joined #lisp 2015-02-27T16:01:19Z sall: http://paste.lisp.org/display/145998 beach can u check this whats wrong with it ? 2015-02-27T16:02:51Z sall: are u here beach ? 2015-02-27T16:03:00Z taylanub: sall: IRC is often slow 2015-02-27T16:03:33Z beach: sall: You don't use x inside the function. 2015-02-27T16:03:34Z taylanub: I mean as in people's response times. I leave my machine running over-night. 2015-02-27T16:04:02Z beach: sall: Also, it is not a good idea to address me personally. If I am not here, you might not get any help from any others. 2015-02-27T16:04:26Z beach: sall: You REALLY need to indent your code if you are going to submit it for others to read. 2015-02-27T16:05:53Z axion: nice place for defparameter 2015-02-27T16:06:01Z sall: ok i ll learn to indent code 2015-02-27T16:06:14Z sall: but im using x inside function 2015-02-27T16:06:18Z beach: sall: You let your tools do it for you. 2015-02-27T16:06:24Z beach: sall: Use Emacs. 2015-02-27T16:06:40Z wz1000 joined #lisp 2015-02-27T16:06:41Z sall: im using lisp ide 2015-02-27T16:06:51Z axion: well get an ide that actually does lisp 2015-02-27T16:06:54Z beach: Then let your Lisp IDE indent for you. 2015-02-27T16:07:26Z sall: ok 2015-02-27T16:07:48Z sall: but my question is why append dosnt work with these values 2015-02-27T16:08:22Z sall: its work for any couple of lists 2015-02-27T16:08:39Z dim: how portable using unicode encoded symbols is? 2015-02-27T16:08:40Z dim: (defrule ¦¦ (and ignore-whitespace "||" ignore-whitespace) (:constant '¦¦)) 2015-02-27T16:08:49Z pjb: sall: it's not a good idea to call defparameter inside a function. 2015-02-27T16:08:55Z dim: I quite like that one (avoiding the || empty symbol) 2015-02-27T16:09:04Z innertracks1 quit (Ping timeout: 252 seconds) 2015-02-27T16:09:07Z pjb: sall: in general, any operator starting with def or define- should be left at the toplevel. 2015-02-27T16:09:09Z dim: maybe I could just use the empty symbol, doesn't feel safe tho 2015-02-27T16:09:16Z dlowe: haha. it's hideous in another way. 2015-02-27T16:09:26Z dlowe: but I like it 2015-02-27T16:09:26Z pjb: On the other hand, it's a bad idea to use setf/setq on the toplevel. 2015-02-27T16:09:44Z beach: sall: You don't understand. In order for someone to understand this code, they would have to count parentheses because your code is not indented correctly. I am trying to be polite by telling you that YOU are NOT being polite. Most other people would just tell you to go away until you learn to indent your code. 2015-02-27T16:09:54Z sall: ok ill concider this pjb 2015-02-27T16:09:54Z echo-area quit (Remote host closed the connection) 2015-02-27T16:09:55Z pjb: sall: append is a pure function. It doesn't modify its parameters. 2015-02-27T16:10:01Z pt1 quit (Ping timeout: 252 seconds) 2015-02-27T16:10:26Z pjb: sall: use LET to introduce local variables. 2015-02-27T16:10:28Z echo-area joined #lisp 2015-02-27T16:11:07Z sall: geys u r not understanding me right 2015-02-27T16:11:33Z sall: this code work when i make the line on append comment 2015-02-27T16:11:46Z sall: its not a paranthese problem 2015-02-27T16:12:10Z sall: why append doesnt work for these two lists ? 2015-02-27T16:12:30Z sall: i printed the two lists and it worked 2015-02-27T16:12:50Z sall: why it dosnt work with append ? 2015-02-27T16:12:50Z dlowe: sall: please join #clnoobs for this question 2015-02-27T16:13:06Z axion: because append takes lists as arguments 2015-02-27T16:13:13Z axion: not a cons 2015-02-27T16:14:08Z sall: axion *y* and tail of x are two lists 2015-02-27T16:14:17Z diphtherial joined #lisp 2015-02-27T16:14:25Z sall: or im getting it wron ? 2015-02-27T16:14:43Z pjb: Your code is all wrong. 2015-02-27T16:14:48Z diphtherial: hello; i was trying to puzzle out how lisp deals with 'if' statements at a conceptual level the other day, and i'm not sure if this reasoning flies 2015-02-27T16:15:16Z diphtherial: does it make sense to think that, in terms of the lambda calculus, both branches of an if-else statement would always be evaluated and one would just eventually be discarded? 2015-02-27T16:15:32Z pjb: diphtherial: more or less, yes. 2015-02-27T16:15:44Z pjb: diphtherial: in LC, there's this notion of minimal reduction. 2015-02-27T16:16:16Z pjb: Furthermore, LC, being maths, is not afraid of infinite recursions or expansions… 2015-02-27T16:16:17Z attila_lendvai joined #lisp 2015-02-27T16:16:17Z attila_lendvai quit (Changing host) 2015-02-27T16:16:17Z attila_lendvai joined #lisp 2015-02-27T16:16:27Z diphtherial: right 2015-02-27T16:16:29Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2015-02-27T16:16:52Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T16:17:05Z AntiSpamMeta joined #lisp 2015-02-27T16:17:09Z diphtherial: so i was thinking that, practically, lazy evaluation still allows you to resolve a program with an infinite loop in the body of an if statement if its conditional would discard the body 2015-02-27T16:17:18Z diphtherial: something like that 2015-02-27T16:17:46Z Bike: yeah, in haskell something like (if (> 5 4) t (loop)) is fine. 2015-02-27T16:18:07Z Xach: lisp, too 2015-02-27T16:18:14Z Bike: oh. yes. duh. 2015-02-27T16:19:01Z Xach: an example like in sicp stumped me for quite a while. "why doesn't my-if work as a function??" 2015-02-27T16:19:03Z Bike: non-strictness lets it work without other evaluation semantics, like ((lambda (x y) x) 4 (loop)) => 4 2015-02-27T16:19:06Z AntiSpamMeta quit (Read error: Connection reset by peer) 2015-02-27T16:19:19Z AntiSpamMeta joined #lisp 2015-02-27T16:20:57Z innertracks joined #lisp 2015-02-27T16:24:10Z csziacobus joined #lisp 2015-02-27T16:27:25Z a2015 joined #lisp 2015-02-27T16:29:00Z ggole: Haskell's if is just a function, though 2015-02-27T16:29:06Z ggole: Which is a neat trick 2015-02-27T16:29:41Z gravicappa joined #lisp 2015-02-27T16:30:09Z Numerius joined #lisp 2015-02-27T16:31:07Z BRPocock joined #lisp 2015-02-27T16:31:36Z beach: I worked on a rewrite system for my dissertation. It had if[true; x; y] = x and if[false; x; y] = y. 2015-02-27T16:32:06Z beach: No special form necessary. 2015-02-27T16:33:07Z taylanub: diphtherial: (defun true (x y) (funcall x)) (defun false (x y) (funcall y)) (defun if (test then else) (funcall (test) then else)) ;think of it like this is done automatically :P 2015-02-27T16:33:40Z cadadar quit (Quit: Leaving.) 2015-02-27T16:36:24Z joneshf-laptop quit (Remote host closed the connection) 2015-02-27T16:39:03Z zadock quit (Quit: Leaving) 2015-02-27T16:39:16Z rjmacready quit (Remote host closed the connection) 2015-02-27T16:39:36Z antgreen joined #lisp 2015-02-27T16:40:01Z theos quit (Ping timeout: 264 seconds) 2015-02-27T16:40:31Z theos joined #lisp 2015-02-27T16:40:58Z Ukari joined #lisp 2015-02-27T16:41:59Z yrk joined #lisp 2015-02-27T16:42:33Z yrk quit (Changing host) 2015-02-27T16:42:33Z yrk joined #lisp 2015-02-27T16:42:36Z Ukari: any one may recommand a graphics library to me? 2015-02-27T16:42:43Z pjb: vecto 2015-02-27T16:42:57Z Ukari: thanks 2015-02-27T16:43:23Z Xach: Ukari: what kind of graphics? 2015-02-27T16:43:38Z Ukari: 2D 2015-02-27T16:44:03Z Ukari: like swing in java 2015-02-27T16:46:16Z Fade: swing is a gui toolkit. vecto is a vector graphics library. 2015-02-27T16:46:16Z jasom: Ukari: so like you want menus and buttons? 2015-02-27T16:46:25Z Fade: commonqt would be more appropriate. 2015-02-27T16:46:27Z Ukari: yes,jasom 2015-02-27T16:46:28Z theos quit (Disconnected by services) 2015-02-27T16:46:34Z jasom: The commonqt is what you want 2015-02-27T16:46:37Z jasom: *Then 2015-02-27T16:46:45Z Ukari: xach,i think i enter you website 2015-02-27T16:46:52Z theos joined #lisp 2015-02-27T16:47:30Z redeemed quit (Ping timeout: 256 seconds) 2015-02-27T16:47:53Z Ukari: Fade,thanks 2015-02-27T16:48:10Z axion: beach, H4ns, pjb: thank you for the tips. i pretty much finished it already 2015-02-27T16:48:11Z Xach: ok 2015-02-27T16:49:05Z jasom: Is there a CL library that can do indentation of (potentially incomplete) lisp code? Or should I just port the emacs version if I want that. 2015-02-27T16:50:09Z pjb: (pprint code) 2015-02-27T16:50:17Z pjb: You can have placeholders in there. 2015-02-27T16:51:12Z jasom: pjb: so just close all parentheses? 2015-02-27T16:51:20Z pjb: Yes. 2015-02-27T16:51:54Z jasom: Does pprint indent special forms differently? 2015-02-27T16:52:21Z Xach: Shinmera: colleen didn't build for me today 2015-02-27T16:52:41Z jasom checks what hemlock and climacs do 2015-02-27T16:52:46Z csziacobus: jasom: yes, the pretty printers do the right thing 2015-02-27T16:52:50Z Xach: hmm, i take that back 2015-02-27T16:53:17Z csziacobus: jasom: sbcl has a better pretty printer thn most lisp systems when it comes to backquotes, too 2015-02-27T16:53:20Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-02-27T16:53:26Z Xach: something is wrong but i don't know what 2015-02-27T16:53:28Z jasom: hmm but they obviously won't preseve line-breaks 2015-02-27T16:53:44Z csziacobus: what do you mean? 2015-02-27T16:53:46Z otwieracz quit (Ping timeout: 265 seconds) 2015-02-27T16:54:20Z jasom: csziacobus: the sexpression form doesn't know where line-breaks were in the string form, so linebreaks obviously can't be preserved; I wan't to preserve where linebreaks were 2015-02-27T16:54:42Z pjb: Then you need something more sophisticated. 2015-02-27T16:54:45Z jasom: right 2015-02-27T16:54:46Z csziacobus: line breaks? they indent according to standard lisp convention 2015-02-27T16:54:55Z csziacobus: and standard lisp convention uses no linebreaks 2015-02-27T16:55:02Z csziacobus: you can write your own pretty printer thoiugh 2015-02-27T16:55:11Z csziacobus: look at the clhs sections and pprint methods 2015-02-27T16:55:14Z pjb: You can still work on a sexp, if you have a specific reader (you may use com.informatimago.common-lisp.lisp-reader.reader) or work on the text like emacs does. 2015-02-27T16:55:17Z jasom: csziacobus: I don't want a pretty printer, I want a code-indenter for an editor 2015-02-27T16:55:36Z innertracks1 joined #lisp 2015-02-27T16:55:36Z pjb: http://www.informatimago.com/develop/lisp/com/informatimago/small-cl-pgms/sedit/index.html 2015-02-27T16:55:50Z pjb: Of course, an editor should be structured editor :-) 2015-02-27T16:56:19Z csziacobus: jasom: take a look at slime-indent or the emacs indent code 2015-02-27T16:56:38Z csziacobus: slime-indent handles cl specific things too 2015-02-27T16:56:47Z innertracks quit (Ping timeout: 250 seconds) 2015-02-27T16:56:48Z csziacobus: like loop forms and lambda list keywords 2015-02-27T16:57:00Z lispyone quit (Remote host closed the connection) 2015-02-27T16:57:08Z jasom: csziacobus: I know, it also indents user-defined macros based upon the lambda expression 2015-02-27T16:59:27Z csziacobus: right, but emacs without slime can do that too 2015-02-27T17:01:53Z fantazo quit (Quit: Verlassend) 2015-02-27T17:01:53Z jasom: csziacobus: not for CL code, right? Or how would it manage that?\ 2015-02-27T17:02:14Z csziacobus: elisp has &body parameters too 2015-02-27T17:02:21Z csziacobus: so it can just do the same thing for cl 2015-02-27T17:02:50Z rpg joined #lisp 2015-02-27T17:03:11Z csziacobus: emacs can handle indenting anything that isn't cl specific 2015-02-27T17:03:31Z csziacobus: like LOOP and keyword parameters 2015-02-27T17:05:55Z ggole: elisp doesn't have &body 2015-02-27T17:06:27Z ggole: (Without specific CL compatibility stuff like defmacro*) 2015-02-27T17:07:34Z urandom__ joined #lisp 2015-02-27T17:08:50Z innertracks1 quit (Ping timeout: 272 seconds) 2015-02-27T17:13:04Z sol__: how can i iterate over list of items, getting a pair at a time? (1 2 3 4) => (1 2) and then (3 4) 2015-02-27T17:13:12Z lispyone joined #lisp 2015-02-27T17:13:55Z adlai: clhs 6.1.2.1.3 2015-02-27T17:13:55Z specbot: The for-as-on-list subclause: http://www.lispworks.com/reference/HyperSpec/Body/06_abac.htm 2015-02-27T17:14:19Z RenRenJuan quit (Quit: Hibernate, etc.) 2015-02-27T17:14:21Z innertracks joined #lisp 2015-02-27T17:14:52Z Xach: sol__: (loop for (a b) on list by #'cddr do ) 2015-02-27T17:15:58Z sol__: thanks Xach 2015-02-27T17:16:22Z ehu quit (Quit: Leaving.) 2015-02-27T17:16:58Z Shinmera: Slime can also indent however you want it to, using swank:*application-hints-tables* 2015-02-27T17:17:30Z Shinmera: Xach: I can still build cleanly, so I don't know what's wrong either. Sorry! 2015-02-27T17:18:55Z sheilong joined #lisp 2015-02-27T17:20:21Z Xach: Shinmera: i just started dumping out some metadata during building. for some reason it won't print the depends-on list readably for colleen's system. my end. 2015-02-27T17:20:41Z Xach: I don't understand it, but I think I can work around it. 2015-02-27T17:21:01Z Xach: seems like something is a simple-string 2015-02-27T17:21:09Z Shinmera: I'm not even doing anything fancy there. 2015-02-27T17:22:24Z radioninja quit (Ping timeout: 252 seconds) 2015-02-27T17:25:38Z Xach: Not that I can see. It looks extremely conventional. Nothing else seems affected. Hmm. 2015-02-27T17:28:44Z innertracks quit (Ping timeout: 264 seconds) 2015-02-27T17:31:54Z ajtulloch joined #lisp 2015-02-27T17:33:51Z innertracks joined #lisp 2015-02-27T17:39:37Z scymtym: Shinmera, Xach: the SYMBOL-NAME of :verbose is a SIMPLE-BASE-STRING which, apparently, cannot be printed readably 2015-02-27T17:39:50Z MoALTz quit (Quit: Leaving) 2015-02-27T17:40:53Z beach: nyef: Did you see drmeister's benchmark? 2015-02-27T17:41:17Z nyef: beach: A tenth of the runtime? Yeah. 2015-02-27T17:41:37Z beach: nyef: Not enough of course, but an encouraging sign. 2015-02-27T17:41:40Z nyef: An appreciable speedup, at least. 2015-02-27T17:41:45Z beach: yeah. 2015-02-27T17:42:12Z Shinmera: scymtym: I have no idea how that's happening 2015-02-27T17:43:37Z Xach: scymtym: thanks. 2015-02-27T17:43:45Z Xach: I was using WITH-STANDARD-IO-SYNTAX, too 2015-02-27T17:44:04Z scymtym: Shinmera: i can image that :verbose probably occurs somewhere in SBCL's build process (e.g. &key parameter to COMPILE-FILE) and is stored as a SIMPLE-BASE-STRING for space reasons, maybe 2015-02-27T17:44:19Z Xach: Nope. 2015-02-27T17:44:35Z scymtym: *imagine 2015-02-27T17:44:38Z Xach: It's simpler than that in this case. 2015-02-27T17:45:09Z Xach: Oh, sorry. I misunderstood. Possibly! 2015-02-27T17:46:08Z easye joined #lisp 2015-02-27T17:46:28Z Xach: That is pretty interesting. 2015-02-27T17:47:45Z MoALTz joined #lisp 2015-02-27T17:48:49Z ndrei quit (Ping timeout: 244 seconds) 2015-02-27T17:48:49Z ndrei_ quit (Ping timeout: 244 seconds) 2015-02-27T17:49:24Z Xach: one workaround is to use some other string designator in the system file. 2015-02-27T17:49:40Z Xach: i think that is too obnoxious to suggest seriously though. 2015-02-27T17:50:15Z lispyone quit (Remote host closed the connection) 2015-02-27T17:50:43Z ajtulloch quit (Remote host closed the connection) 2015-02-27T17:52:05Z attila_lendvai quit (Quit: Leaving.) 2015-02-27T17:54:09Z jasom: beach: what did he need, 100x? 2015-02-27T17:54:26Z beach: jasom: Yes, I think so. 2015-02-27T17:54:35Z tharugrim joined #lisp 2015-02-27T17:55:07Z beach: jasom: But I need to implement all the standard optimizations for that to happen. 2015-02-27T17:55:16Z rhllor joined #lisp 2015-02-27T17:55:25Z Shinmera: I think last I tested it it was ~200 times slower than SBCL for parsing some HTML using Plump. 2015-02-27T17:55:25Z EvW joined #lisp 2015-02-27T17:55:57Z sz0` is now known as sz0 2015-02-27T17:56:00Z beach: Pretty slow. 2015-02-27T17:56:25Z Xach: with-standard-optimizations 2015-02-27T17:57:28Z beach: If it existed, that would be one of the more difficult special operators to implement. 2015-02-27T17:57:38Z taylanub: out of interest, what is it that you're comparing to SBCL? 2015-02-27T17:57:47Z Shinmera: Clasp 2015-02-27T17:57:59Z drmeister: Hello - eating lunch 2015-02-27T17:58:16Z taylanub: oh, not a CL implementation? 2015-02-27T17:58:33Z drmeister: taylanub: Yes a CL implementation. 2015-02-27T17:58:35Z Shinmera: Colleen: tell taylanub about clasp 2015-02-27T17:58:35Z Colleen: taylanub, look at "clasp": Clasp is a Common Lisp implementation that interoperates with C++ and uses LLVM for just-in-time (JIT) compilation to native code. https://github.com/drmeister/clasp 2015-02-27T17:58:50Z taylanub: ah, google gave me the wrong clasp then 2015-02-27T18:00:08Z innertracks1 joined #lisp 2015-02-27T18:00:54Z innertracks quit (Ping timeout: 252 seconds) 2015-02-27T18:01:28Z dkcl quit (Ping timeout: 246 seconds) 2015-02-27T18:05:13Z rpg quit (Ping timeout: 264 seconds) 2015-02-27T18:05:21Z hitecnologys_ quit (Ping timeout: 244 seconds) 2015-02-27T18:05:44Z jasom: Getting within a factor of 2 of SBCL is more than good enough performance; particularly since so much of the open-source real-world code has been tuned specifically for cmucl/sbcl 2015-02-27T18:06:22Z Bicyclidine joined #lisp 2015-02-27T18:06:54Z jasom: When I was tuning a serialization library, I found that I needed a lot of conditionals to get good performance on both sbcl and ccl, as what was fast on one was slow on the other, and vice-versa 2015-02-27T18:07:39Z jasom: Someone submitted a PR that "sped up benchmark by 10%" and, while that was true for sbcl, it slowed CCL down by a factor of almost 10 2015-02-27T18:07:54Z nyef: Hrm... That sounds like a possible angle for finding further optimizations in SBCL... or in CCL. 2015-02-27T18:08:17Z innertracks1 quit (Quit: innertracks1) 2015-02-27T18:08:48Z jasom: nyef: One that I remember was for filling in a vector of known-length; map-into was by far the fastest on one, and one of the slowest on the othr 2015-02-27T18:08:49Z ajtulloch joined #lisp 2015-02-27T18:09:12Z jasom: and by vector, I mean simple-array of rank 1 2015-02-27T18:09:30Z jasom: curse you simple-vector and your lack of type specialization! 2015-02-27T18:09:39Z paradoja quit (Ping timeout: 265 seconds) 2015-02-27T18:09:47Z drmeister: beach: Looking at the loop in the generated code I see that every function call involves a fetch, read-cell, precalc-symbol, fdefinition, call sequence. The fetch, read-cell and precalc-symbol could be moved out of the loop. 2015-02-27T18:11:03Z badkins quit 2015-02-27T18:11:11Z drmeister: I'm just musing about how that would be achieved with Cleavir. 2015-02-27T18:11:21Z jasom: loop-invarient hoisting 2015-02-27T18:11:49Z jasom: drmeister: It would need to know that the calls are side-effect free to do that 2015-02-27T18:11:52Z dagnachewa joined #lisp 2015-02-27T18:11:57Z drmeister: Ah, I understand all of those words and when you put them together I see what you mean. 2015-02-27T18:12:15Z jasom: drmeister: if it can inline those functions, then it can do it more easily 2015-02-27T18:12:28Z drmeister: beach is working on that. 2015-02-27T18:12:45Z drmeister: Is there a way to indicate that functions are side-effect free? 2015-02-27T18:12:50Z ale4L3 joined #lisp 2015-02-27T18:12:53Z devll joined #lisp 2015-02-27T18:13:23Z josemanuel joined #lisp 2015-02-27T18:13:26Z jasom: drmeister: not in the specification; cleavir could certainly add something like that; in practice most compilers can only hoist inlined function calls 2015-02-27T18:13:52Z drmeister: It's not just side-effect free is it? "fdefinition" looks side-effect free but if the fdefinition were to change in the loop then it couldn't be hoisted out. 2015-02-27T18:14:00Z jasom: sbcl gets such a huge boost from inlining functions not because function calls are expensive, but because it lets optimizations cross function-call boundaries 2015-02-27T18:14:06Z Patzy quit (Ping timeout: 252 seconds) 2015-02-27T18:14:07Z jasom: drmeister: yeah pure actually 2015-02-27T18:14:07Z hitecnologys_ joined #lisp 2015-02-27T18:14:22Z drmeister: What is the difference between "pure" and "side-effect free"? 2015-02-27T18:14:23Z Patzy joined #lisp 2015-02-27T18:14:36Z jasom: drmeister: it's output is fully determined by its arguments 2015-02-27T18:14:42Z drmeister: Ah 2015-02-27T18:14:46Z sall quit (Ping timeout: 246 seconds) 2015-02-27T18:14:56Z jasom: which is rare in common lisp, since, as you mentioned, fdefinitions can change 2015-02-27T18:15:17Z jasom: however, if it's not declared NOTINLINE then you can at least assume it won't change within a single source file 2015-02-27T18:15:22Z drmeister: Even fetch and readCell and precalcSymbol aren't that in their present form. I would have to indicate that their arguments are constants or something. 2015-02-27T18:15:41Z drmeister: What do you mean by "lets optimizations cross function-call boundaries"? 2015-02-27T18:15:45Z jasom hates states where it's impossible to explicity set the default 2015-02-27T18:16:22Z Bicyclidine: drmeister: if you have a function foo that calls a function bar, optimizations in foo can't rely on a particular form of bar unless bar is guaranteed to not be redefined. 2015-02-27T18:16:23Z jasom: drmeister: (defun foo (a b) (+ a b)) (defun bar (foo 1 2) 2015-02-27T18:16:29Z jasom: If you inline foo, then bar can be optimized away to a constant value 3 with no work 2015-02-27T18:17:13Z selat quit (Read error: Connection reset by peer) 2015-02-27T18:17:22Z hitecnologys_ quit (Client Quit) 2015-02-27T18:17:23Z jasom: If you don't inline foo, then even figuring out that the call to foo could be hoisted out of a loop is hard. 2015-02-27T18:17:24Z drmeister: That's not done in every Common Lisp? 2015-02-27T18:17:36Z jasom: drmeister: there are rules for when you are allowed to inline 2015-02-27T18:17:38Z hitecnologys joined #lisp 2015-02-27T18:17:59Z drmeister: Ok, I see. 2015-02-27T18:18:02Z jasom: drmeister: this is an example that is simple for didactic purposes 2015-02-27T18:18:05Z ajtulloch quit (Remote host closed the connection) 2015-02-27T18:18:34Z jasom: In theory, any compiler could make optimizations that assumes a function won't change without inlining any time that it would be permissible to inine 2015-02-27T18:18:38Z jasom: in practice nobody seems to do that 2015-02-27T18:18:40Z ajtulloch joined #lisp 2015-02-27T18:18:52Z drmeister: Well, I only wrote fetch, readCell and precalcSymbol as functions to help me debug the compiler early on. I'll replace them with LLVM-IR. 2015-02-27T18:19:20Z jasom: Of course, you can also assume a function A won't change in function B, and add a hook to recompile B if A ever gets redefined. Nobody seems to do that, though it could be a big win performance wise 2015-02-27T18:19:31Z drmeister: Got it. This is great - I can see lots of ways to improve this. 2015-02-27T18:19:54Z dkcl joined #lisp 2015-02-27T18:20:09Z jasom: Particularly with generic-function dispatch; my theory is that if you could inline the function discriminator that would remove a lot of the overhead. 2015-02-27T18:20:54Z drmeister: beach wrote a nice paper on generic-dispatch - I think it could definitely be inlined. 2015-02-27T18:21:05Z jasom: I bet there are a lot of nits to make sure that you don't violate the spec in doing so though; you'd have to save a minimally compiled version, and be careful about not reevaluating compile-time side-effects 2015-02-27T18:21:31Z jasom: drmeister: it can only be done if you can recompile functions when dependent functions change 2015-02-27T18:21:32Z drmeister: Yeah - no problem. The AST and HIR are both that. 2015-02-27T18:21:53Z drmeister: That would take a little bit of work. 2015-02-27T18:21:57Z jasom: oh, cool. Good to know someone is doing it. It's an obvious idea, so I figured it's hard to do or else someone would have done it already. 2015-02-27T18:22:05Z EvW quit (Quit: EvW) 2015-02-27T18:23:16Z ale4L3 quit (Quit: ale4L3) 2015-02-27T18:23:21Z jasom: It's probably particularly hard to retrofit to an existing compiler, so cleavir has an advantage there 2015-02-27T18:23:24Z apathor quit (Quit: :|) 2015-02-27T18:23:32Z drmeister: My only problem is I currently don't garbage collect code - so lots of automatic recompilations will grow the code. It may not be such a big problem in practice. Also, I've got a scheme now on how to GC LLVM JITted code. 2015-02-27T18:24:03Z apathor joined #lisp 2015-02-27T18:24:10Z drmeister: That's why I'm so excited about it. It's a clean, streamlined implementation. 2015-02-27T18:24:40Z drmeister: Ok, thanks for the primer - things are making a lot more sense now. 2015-02-27T18:24:44Z devll quit (Remote host closed the connection) 2015-02-27T18:27:13Z sz0 is now known as sz0` 2015-02-27T18:31:52Z josemanuel quit (Quit: Saliendo) 2015-02-27T18:33:52Z badkins joined #lisp 2015-02-27T18:35:49Z ale4L3 joined #lisp 2015-02-27T18:36:23Z pjb: drmeister: the falacy of pure or side-effect free: cons. 2015-02-27T18:36:43Z innertracks joined #lisp 2015-02-27T18:36:46Z pjb: drmeister: even (+ a b) conses it result! 2015-02-27T18:36:49Z pjb: its 2015-02-27T18:37:23Z Shinmera: Can someone tell me what's going on here? https://filebox.tymoon.eu/file/TkRBeQ== This happens if I start SBCL, quickload dissect, and then evaluate what's in the repl. As soon as I simply call C-c C-c on the method it has a problem with and try again, the condition vanishes. I have no idea where it might come from. 2015-02-27T18:38:01Z Shinmera: Oh, wait, I think I just had an idea. 2015-02-27T18:38:29Z Shinmera: Since I predefine the function to return NIL and later redefine it in an implementation specific file it probably inlines the call. 2015-02-27T18:38:40Z Shinmera: Or at least thinks it can. 2015-02-27T18:40:15Z Shinmera: Adding an FTYPE declaration that it always returns a list seems to fix it. 2015-02-27T18:41:26Z Bicyclidine: Which function are you redefining? 2015-02-27T18:41:53Z zadock joined #lisp 2015-02-27T18:42:11Z Shinmera: RESTARTS and STACK 2015-02-27T18:43:02Z Bicyclidine: and restarts at least is defined in the same file, looks like. that allows SBCL to assume it won't be redefined. you might want to throw in a notinline. 2015-02-27T18:43:44Z Shinmera: Yeah, I suppose I'll add that in addition to the FTYPE. 2015-02-27T18:49:37Z Numerius quit (Ping timeout: 264 seconds) 2015-02-27T18:50:16Z yrk quit (Quit: ERC (IRC client for Emacs 25.0.50.1)) 2015-02-27T18:50:49Z innertracks quit (Quit: innertracks) 2015-02-27T18:53:53Z ajtulloch quit (Remote host closed the connection) 2015-02-27T18:54:05Z urandom__ quit (Quit: Konversation terminated!) 2015-02-27T18:54:23Z ajtulloch joined #lisp 2015-02-27T18:54:27Z urandom__ joined #lisp 2015-02-27T18:54:42Z drmeister: pjb: I don't think (+ a b) has to cons its result. beach has unboxed-arithmetic operations built into Cleavir that will unbox numbers, work with the raw values and then box the results back up again. So something like (sqrt (+ (* x x) (* y y) (* z z))) Could unbox x, y, z do the arithmetic and then box the result up again. 2015-02-27T18:55:45Z drmeister: What am I thinking: in Clasp, results aren't CONSed, they are returned in registers and a values return array. 2015-02-27T18:55:51Z alejandrozf joined #lisp 2015-02-27T18:56:30Z pnpuff joined #lisp 2015-02-27T18:56:49Z pjb: drmeister: try: (+ (1+ most-positive-fixnum) (1+ most-positive-fixnum)). 2015-02-27T18:56:55Z drmeister: I'm not being precise: Fixnums will not be CONSed 2015-02-27T18:56:55Z ggole: Even cons doesn't have to cons in the right context 2015-02-27T18:57:31Z pjb: The point is that you cannot do anything in a computer without mutating its state. 2015-02-27T18:57:35Z drmeister: Right - that will CONS - I'm not arguing. 2015-02-27T18:58:18Z drmeister: The challenge is to make common stuff fast. 2015-02-27T18:58:45Z ajtulloch quit (Read error: Connection reset by peer) 2015-02-27T18:59:09Z ndrei joined #lisp 2015-02-27T18:59:13Z ndrei_ joined #lisp 2015-02-27T18:59:17Z ajtulloch joined #lisp 2015-02-27T18:59:21Z pnpuff: and uncommon stuff easier 2015-02-27T18:59:23Z isis_ quit (Read error: Connection reset by peer) 2015-02-27T18:59:29Z nyef: Sometimes the challenge is to make uncommon stuff not unconscionably slow. 2015-02-27T18:59:59Z fantazo joined #lisp 2015-02-27T19:00:12Z isis_ joined #lisp 2015-02-27T19:00:26Z lispyone joined #lisp 2015-02-27T19:01:20Z alejandrozf: Hi lispers, do you know if cl-facebook library still active, want to use, but github tells me the last commit is about 4 years ago... 2015-02-27T19:03:09Z pnpuff left #lisp 2015-02-27T19:03:27Z Bicyclidine quit (Ping timeout: 252 seconds) 2015-02-27T19:04:59Z lispyone quit (Ping timeout: 246 seconds) 2015-02-27T19:05:44Z pjb: alejandrozf: the language hasn't changed since 1994. 2015-02-27T19:05:57Z pjb: alejandrozf: did the facebook API change in the last 4 years? 2015-02-27T19:06:12Z pjb: If it did, you're probable the one best placed to update the library. 2015-02-27T19:07:18Z BRPocock: https://developers.facebook.com/docs/apps/changelog … v1.0 API (2010-4-21) available until 2015-4-30, so there's a fighting chance. 2015-02-27T19:07:41Z sz0` is now known as sz0 2015-02-27T19:07:57Z alejandrozf: pjb, BRPocock wich means the library is usefull now 2015-02-27T19:08:04Z alejandrozf: rigth? 2015-02-27T19:08:23Z Patzy quit (Ping timeout: 244 seconds) 2015-02-27T19:08:23Z BRPocock: There's at least a good chance that it still works, but I haven't tried it. 2015-02-27T19:08:43Z BRPocock: But if it's using their 1.0 API, you've got … 2015-02-27T19:09:19Z BRPocock: … 53 days until EOL. 2015-02-27T19:09:22Z Patzy joined #lisp 2015-02-27T19:09:41Z Numerius joined #lisp 2015-02-27T19:10:22Z alejandrozf: pjb,BRPocock: thanks 2015-02-27T19:10:25Z alejandrozf left #lisp 2015-02-27T19:11:27Z larion quit (Quit: leaving) 2015-02-27T19:11:54Z BRPocock: alejandrozf: that appears to be the case, at a glance :-( — i.e. there's no "/v2.x/" in the URI's it uses, so it would appear to be nearing the end of its life. 2015-02-27T19:12:27Z ggole quit 2015-02-27T19:13:04Z francogrex joined #lisp 2015-02-27T19:13:11Z axion: if i have a list of values, and a plist, how can i remove all values (and their keys) from the plist that match? 2015-02-27T19:13:53Z francogrex: I am continuing my investigations of the sqlite and utf-8 error: I have this in the backtrace and beyond. Something is odd: http://paste.lisp.org/display/145992#2 2015-02-27T19:14:07Z psy_ joined #lisp 2015-02-27T19:14:16Z nyef: axion: REMOVE-IF-NOT with a suitable test, probably involving a call to MEMBER ? 2015-02-27T19:14:38Z nyef: Oh, wait, plist not alist. Umm... 2015-02-27T19:14:58Z nyef: There's probably something for it in alexandria? 2015-02-27T19:15:37Z rpg joined #lisp 2015-02-27T19:15:38Z axion: nyef: there is only remove-from-plist, but it doesnt take a predicate. i'm compared vectors, so i need equalp, and that uses eq 2015-02-27T19:16:01Z francogrex: axion: show code example? 2015-02-27T19:16:04Z billstclair: (loop for (key value) on plist by #'cddr unless (member value values) nconc (list key value)) 2015-02-27T19:16:11Z ehu joined #lisp 2015-02-27T19:16:27Z BRPocock: you can cast a plist-alist (Alexandria) or just use (loop for (key value) on plist by #cddr … unless … collect … ) ? 2015-02-27T19:16:33Z scottj joined #lisp 2015-02-27T19:16:36Z nikki93_ joined #lisp 2015-02-27T19:17:03Z axion: ok i'll play with that, thanks 2015-02-27T19:19:13Z ale4L3 quit (Quit: ale4L3) 2015-02-27T19:19:13Z beach: drmeister: I see that the nice #lisp participants have explained all you need to know about future compiler optimizations. I need to go spend time with my (admittedly small) family, so if you have more question, we shall have to discuss them after I have slept. 2015-02-27T19:19:22Z beach left #lisp 2015-02-27T19:21:17Z francogrex: so how come p /c 0xbf => -65 '¿' instead of 191 ؟ 2015-02-27T19:21:49Z pjb: you're using a C debugger, where char is signed. 2015-02-27T19:21:53Z jtza8 joined #lisp 2015-02-27T19:22:15Z pjb: try using a lisp debugger instead. 2015-02-27T19:22:31Z pjb: (don't use FFI, rewrite the thing in lisp!) 2015-02-27T19:22:34Z BRPocock: 0xbf = Unicode ؟ but "bf bf bf" is not UTF-8 … ? 2015-02-27T19:22:55Z pjb: Yes. 2015-02-27T19:23:28Z pjb: It's ¿, not ؟. 2015-02-27T19:24:02Z francogrex: pjb: at some point I have to inspect a system-area-pointer (ex: #.(SB-SYS:INT-SAP #X0147F4D0)) I only can/know to do it with a C debugger gdb 2015-02-27T19:24:22Z jackdaniel: ¡ 2015-02-27T19:24:23Z pjb: This is because you're using FFI. 2015-02-27T19:24:29Z Bicyclidine joined #lisp 2015-02-27T19:24:39Z pjb: francogrex: instead of using a C library thru FFI, rewrite it in lisp! 2015-02-27T19:24:45Z nyef: francogrex: Have an APROPOS for SAP-REF- in :sb-sys. 2015-02-27T19:24:47Z francogrex: obliged by the lib I am using 2015-02-27T19:24:48Z BRPocock: sorry, typo, but yeah; that'd be #(#xc2 #xbf) in UTF-8, seems that the CFFI :encoding is set wrong? 2015-02-27T19:24:49Z francogrex: ok 2015-02-27T19:25:34Z sz0 is now known as sz0` 2015-02-27T19:25:41Z francogrex: nyef ok 2015-02-27T19:25:49Z BRPocock: if that's meant to be "¿¿¿¿" = #( bf bf bf bf ) then it's probably ISO-8859-(1, 15, …) ? 2015-02-27T19:26:39Z pjb: Unless there's some layer replacing codes it cannot decode by this character (in iso-8859-1). Some libraries do that. 2015-02-27T19:26:44Z pjb: Some _C_ libraries. 2015-02-27T19:26:49Z radioninja joined #lisp 2015-02-27T19:26:54Z pjb: In lisp you'd signal a condition! 2015-02-27T19:27:00Z pjb: Just rewrite it in lisp! 2015-02-27T19:27:24Z nyef: ... Oh, is THAT what happened with that one .csv file after the third or fourth person tried to hack it up in emacs, destroying all of the non-ascii characters? 2015-02-27T19:27:36Z nyef: Err... Not in emacs, in excel. 2015-02-27T19:27:39Z Quadrescence joined #lisp 2015-02-27T19:27:46Z isis_ is now known as therik 2015-02-27T19:28:06Z nyef: Or whatever they're calling star-office these days, or the OSX spreadsheet, or... Too many people, too many tools, all the tools being junk. 2015-02-27T19:28:12Z innertracks joined #lisp 2015-02-27T19:28:32Z francogrex: nyef no it's sqlite - lisp connection 2015-02-27T19:28:41Z therik: Hey, is there some way to make class :type field work properly? 2015-02-27T19:28:45Z ale4L3 joined #lisp 2015-02-27T19:29:00Z therik: and be it enforced? 2015-02-27T19:29:02Z butyoudonot quit (Ping timeout: 245 seconds) 2015-02-27T19:29:09Z therik: some 3rd party lib or something 2015-02-27T19:29:15Z nyef: therik: Not really, no. 2015-02-27T19:29:32Z Bicyclidine: there's too much redefinition allowed for it to do much, iirc 2015-02-27T19:29:33Z nyef: For a number of reasons having to do with redefinitions, subclass overrides, and so on. 2015-02-27T19:30:05Z therik: I get that I won't get much optimization from it cause it has to be dynamic 2015-02-27T19:30:15Z therik: but it would be nice to be able to lean against the type system 2015-02-27T19:30:36Z BRPocock: At a guess, francogrex, some part(s) of your call stack there are expecting 8-bit (probably ISO-8859-1 or similar) coding, but your CFFI is trying UTF-8 and blowing up … maybe you can request UTF-8 encoding when you initialize the C library? 2015-02-27T19:34:10Z on4k joined #lisp 2015-02-27T19:36:16Z francogrex: BRPocock: maybe. (CFFI:FOREIGN-STRING-TO-LISP #.(SB-SYS:INT-SAP #X0147F4D0) :OFFSET 0 :COUNT NIL :MAX-CHARS 10 :ENCODING :ISO-8859-1) => "PُG؟؟؟؟؟؟" getting closer 2015-02-27T19:36:27Z Quadrescence quit (Quit: This computer has gone to sleep) 2015-02-27T19:36:46Z blahzik quit (Read error: Connection reset by peer) 2015-02-27T19:36:48Z kraison quit (Quit: Leaving.) 2015-02-27T19:36:52Z ruste joined #lisp 2015-02-27T19:36:59Z selat joined #lisp 2015-02-27T19:37:01Z xenophon quit (Remote host closed the connection) 2015-02-27T19:41:57Z zacharias quit (Ping timeout: 264 seconds) 2015-02-27T19:42:19Z on4k quit (Quit: Leaving) 2015-02-27T19:43:14Z fierydiarreha joined #lisp 2015-02-27T19:44:12Z jleija joined #lisp 2015-02-27T19:47:31Z kraison joined #lisp 2015-02-27T19:48:13Z ruste quit (Read error: Connection reset by peer) 2015-02-27T19:48:21Z ruste joined #lisp 2015-02-27T19:48:36Z joneshf-laptop joined #lisp 2015-02-27T19:49:45Z gravicappa quit (Remote host closed the connection) 2015-02-27T19:52:14Z eudoxia quit (Quit: Leaving) 2015-02-27T19:57:27Z ktt9 joined #lisp 2015-02-27T19:59:27Z ndrei quit (Ping timeout: 245 seconds) 2015-02-27T19:59:42Z nikki93_ quit (Remote host closed the connection) 2015-02-27T19:59:51Z ndrei_ quit (Ping timeout: 265 seconds) 2015-02-27T20:01:19Z ndrei joined #lisp 2015-02-27T20:01:29Z ndrei_ joined #lisp 2015-02-27T20:03:41Z ruste quit (Read error: Connection reset by peer) 2015-02-27T20:03:41Z ruste_ joined #lisp 2015-02-27T20:05:42Z PuercoPop: therik: you could tryout quid-pro-quo: https://github.com/sellout/quid-pro-quo. Beware the readme states: "Types are also checked as invariants. Most implementations check slot types little enough that it's possible for a bad value to end up there in some cases." 2015-02-27T20:07:21Z sellout: PuercoPop: That means that it’s possible _without_ QPQ. With QPQ, those cases should be covered. 2015-02-27T20:07:27Z Bicyclidine quit (Ping timeout: 250 seconds) 2015-02-27T20:07:35Z ndrei_ quit (Ping timeout: 246 seconds) 2015-02-27T20:07:41Z ndrei quit (Ping timeout: 256 seconds) 2015-02-27T20:09:53Z sellout: PuercoPop: Oh, nvm – that only happens if LOOM is also used … and no one should use LOOM :D 2015-02-27T20:11:08Z sellout: So yeah, it’s possible for a bad value to end up in a slot with (setf slot-value), but it should be caught on the next method invocation. 2015-02-27T20:11:14Z innertracks quit (Ping timeout: 272 seconds) 2015-02-27T20:11:21Z Numerius quit (Ping timeout: 250 seconds) 2015-02-27T20:14:21Z Bicyclidine joined #lisp 2015-02-27T20:15:21Z idem-pyon-tent joined #lisp 2015-02-27T20:17:50Z jasom: so if you avoid using slot-value in favor of accessors, it should work 2015-02-27T20:19:25Z PuercoPop: sellout: couldn't you use c2mop:slot-value-using-class to handle that case too? 2015-02-27T20:20:51Z sellout: PuercoPop: It’s possible it already does, but if not, yeah, I think so. 2015-02-27T20:24:39Z monod joined #lisp 2015-02-27T20:26:07Z fantazo quit (Quit: Verlassend) 2015-02-27T20:26:34Z dafunktion joined #lisp 2015-02-27T20:26:39Z dagnachewa quit (Quit: WeeChat 1.1.1) 2015-02-27T20:26:54Z lispyone joined #lisp 2015-02-27T20:26:58Z dagnachewa joined #lisp 2015-02-27T20:30:39Z zacharias joined #lisp 2015-02-27T20:31:43Z therik: PuercoPop, that's awesome 2015-02-27T20:32:03Z therik: it's extreme overkill for what I want, but it's awesome 2015-02-27T20:32:07Z therik: and I guess it will do the job 2015-02-27T20:32:10Z monod: hello g'd guys! 2015-02-27T20:32:23Z therik: hey monod 2015-02-27T20:32:41Z monod: hi therik 2015-02-27T20:33:29Z francogrex quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2015-02-27T20:36:04Z Bicyclidine quit (Ping timeout: 245 seconds) 2015-02-27T20:36:31Z dkcl quit (Ping timeout: 246 seconds) 2015-02-27T20:36:53Z gabriel_laddel joined #lisp 2015-02-27T20:37:24Z cadadar joined #lisp 2015-02-27T20:37:53Z Bicyclidine joined #lisp 2015-02-27T20:43:07Z rotty joined #lisp 2015-02-27T20:44:53Z dagnachewa quit (Quit: WeeChat 1.1.1) 2015-02-27T20:45:18Z dagnachewa joined #lisp 2015-02-27T20:46:53Z hardenedapple quit (Quit: WeeChat 1.1.1) 2015-02-27T20:47:27Z ndrei joined #lisp 2015-02-27T20:49:22Z ndrei_ joined #lisp 2015-02-27T20:50:42Z dagnachewa quit (Quit: WeeChat 1.1.1) 2015-02-27T20:53:42Z Karl_Dscc quit (Remote host closed the connection) 2015-02-27T20:57:24Z dkcl joined #lisp 2015-02-27T21:02:11Z dafunktion quit (Remote host closed the connection) 2015-02-27T21:03:31Z rpg quit (Quit: rpg) 2015-02-27T21:03:56Z mburke_ is now known as mburke 2015-02-27T21:07:10Z zadock quit (Quit: Leaving) 2015-02-27T21:07:33Z dagnachewa joined #lisp 2015-02-27T21:09:01Z dafunktion joined #lisp 2015-02-27T21:12:31Z dagnachewa quit (Quit: WeeChat 1.1.1) 2015-02-27T21:13:47Z White_Flame joined #lisp 2015-02-27T21:14:56Z dagnachewa joined #lisp 2015-02-27T21:15:32Z Bicyclidine quit (Ping timeout: 246 seconds) 2015-02-27T21:15:35Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-02-27T21:15:53Z ajtulloc_ joined #lisp 2015-02-27T21:17:39Z ajtulloch quit (Ping timeout: 252 seconds) 2015-02-27T21:19:59Z pjb quit (Ping timeout: 250 seconds) 2015-02-27T21:23:43Z ynniv quit (Quit: ynniv) 2015-02-27T21:25:10Z jrm quit (Read error: Connection reset by peer) 2015-02-27T21:25:36Z jrm joined #lisp 2015-02-27T21:26:23Z clintm quit (Remote host closed the connection) 2015-02-27T21:28:57Z ynniv joined #lisp 2015-02-27T21:32:34Z Shinmera finally had the time and will to add support for more implementations. https://github.com/Shinmera/dissect 2015-02-27T21:32:55Z Shinmera was disappointed to find that swank, too, uses a lot of unexported symbols to get the information necessary from stack frames and so on. 2015-02-27T21:33:06Z ale4L3 quit (Quit: ale4L3) 2015-02-27T21:34:50Z pgomes joined #lisp 2015-02-27T21:35:20Z paroneay` joined #lisp 2015-02-27T21:35:26Z fourier joined #lisp 2015-02-27T21:36:04Z francogrex joined #lisp 2015-02-27T21:37:42Z dafunktion quit (Remote host closed the connection) 2015-02-27T21:38:56Z paroneayea quit (Ping timeout: 246 seconds) 2015-02-27T21:39:29Z Shinmera: Anyway, you can now get slime debugger-like condition printing on the cheap. https://filebox.tymoon.eu/file/TkRBeg== 2015-02-27T21:42:10Z Vutral quit (Ping timeout: 256 seconds) 2015-02-27T21:42:44Z Bicyclidine joined #lisp 2015-02-27T21:43:11Z holycow joined #lisp 2015-02-27T21:43:26Z holycow is now known as Guest41698 2015-02-27T21:46:41Z cluck quit (Ping timeout: 246 seconds) 2015-02-27T21:47:30Z paroneay` is now known as paroneayea 2015-02-27T21:48:00Z rhllor quit (Quit: rhllor) 2015-02-27T21:52:30Z francogrex left #lisp 2015-02-27T21:54:29Z sz0` quit (Ping timeout: 250 seconds) 2015-02-27T21:55:16Z linux_dream joined #lisp 2015-02-27T21:56:27Z jtza8 quit (Remote host closed the connection) 2015-02-27T21:58:00Z Xach: Shinmera: q+.asd doesn't work. it has (in-package cl-user) but then uses (defsystem ...) without qualification. 2015-02-27T21:58:49Z badkins quit 2015-02-27T22:00:30Z dafunktion joined #lisp 2015-02-27T22:03:02Z cluck joined #lisp 2015-02-27T22:04:11Z Shinmera: Xach: Agh, I knew I had forgotten about something. 2015-02-27T22:05:16Z Xach: i didn't get a build failure notice because i don't catch things at the find-system level. i should see about hooking into that. 2015-02-27T22:06:41Z dkcl quit (Ping timeout: 256 seconds) 2015-02-27T22:09:42Z lispyone quit (Remote host closed the connection) 2015-02-27T22:09:55Z Shinmera: Xach: I hope you like long build times. https://filebox.tymoon.eu/file/TkRBMA== 2015-02-27T22:09:58Z Vutral joined #lisp 2015-02-27T22:10:00Z dkcl joined #lisp 2015-02-27T22:10:48Z Xach: love 'em 2015-02-27T22:12:56Z przl quit (Ping timeout: 246 seconds) 2015-02-27T22:12:57Z sheilong quit (Quit: Konversation terminated!) 2015-02-27T22:14:26Z ajtulloc_ quit (Remote host closed the connection) 2015-02-27T22:15:02Z ajtulloch joined #lisp 2015-02-27T22:17:43Z Xach: Shinmera: no build. Duplicate definition for Q+::QGLOBALSPACE.LICENSED-NETWORK found in one file. 2015-02-27T22:17:49Z duggiefresh quit (Remote host closed the connection) 2015-02-27T22:17:54Z Vutral quit (Excess Flood) 2015-02-27T22:18:11Z Shinmera: That's really strange. 2015-02-27T22:18:54Z Xach is missing several smoke libs 2015-02-27T22:19:13Z Shinmera: That's no biggie, by default it should only load qtcore and qtgui. 2015-02-27T22:19:31Z Xach: if they don't build, they don't go into quicklisp, so i'll try to install the missing. 2015-02-27T22:19:35Z nyef: I'm suddenly reminded of why I don't like trying to use Qt from Lisp. 2015-02-27T22:19:50Z Shinmera: nyef: Which is? 2015-02-27T22:20:05Z Ralt: nyef: my experience was much smoother. Install qt, install qtools, start hacking. 2015-02-27T22:20:07Z nyef: It breaks too easily from upstream changes. 2015-02-27T22:20:29Z nyef: Admittedly, I haven't tried in quite a while. 2015-02-27T22:20:35Z Shinmera: I haven't had that happen to me so far. 2015-02-27T22:20:48Z Ralt: nyef: "breaks too easily from upstream changes"... reminds me of the system introduced by quicklisp though :P 2015-02-27T22:21:04Z AJavaIdiot joined #lisp 2015-02-27T22:21:56Z Shinmera: Xach: there's no duplicate definition in the file it generated for me, and I don't even know how it could ever get a duplicate definition. 2015-02-27T22:21:57Z farhaven quit (Ping timeout: 245 seconds) 2015-02-27T22:22:00Z Xach: apparently debian 7 knows nothing of libsmokesci.so and libsmokeqtmultimedia.so 2015-02-27T22:22:44Z flash- quit (Ping timeout: 246 seconds) 2015-02-27T22:23:20Z Shinmera: I could add a test for file existence to those systems and have them fail softly 2015-02-27T22:23:29Z Shinmera: But that's not really great either. 2015-02-27T22:23:38Z Xach: Shinmera: www.xach.com/tmp/qplus.lisp has my version of q+.lisp 2015-02-27T22:24:07Z Shinmera: ... huh. That emits every constant twice. 2015-02-27T22:24:11Z Xach: yeah 2015-02-27T22:25:56Z pgomes quit (Quit: Leaving) 2015-02-27T22:28:06Z scottj quit (Quit: leaving) 2015-02-27T22:28:52Z Patzy quit (Ping timeout: 240 seconds) 2015-02-27T22:29:44Z Patzy joined #lisp 2015-02-27T22:34:55Z Vutral joined #lisp 2015-02-27T22:35:05Z Shinmera: Xach: I have a potential fix in. You'll have to remove the q+modules.lisp-expr it generated in the qtools folder though, otherwise it won't regenerate. 2015-02-27T22:36:13Z innertracks joined #lisp 2015-02-27T22:36:26Z angavrilov quit (Remote host closed the connection) 2015-02-27T22:37:43Z Xach gives it a shot 2015-02-27T22:38:36Z Shinmera: I think what was going on is that MAP-METHODS mapped some methods twice, or somehow recognised some methods that are the same as different, leading to two constant definitions in the output. 2015-02-27T22:39:05Z przl joined #lisp 2015-02-27T22:40:19Z Xach: q+ built now 2015-02-27T22:40:24Z Shinmera: Hooray! 2015-02-27T22:40:31Z Shinmera: Can I do anything about the smoke module systems? 2015-02-27T22:41:06Z Ralt: Shinmera: I don't know Qt enough, do you know which widget I'd need to get a similar UI as this one? (the left part) http://upload.wikimedia.org/wikipedia/en/7/79/Fiddler_after_loading_Wikipedia.png 2015-02-27T22:41:15Z gingerale quit (Ping timeout: 244 seconds) 2015-02-27T22:41:34Z Shinmera: Ralt: Looks like a table, so QTableWidget 2015-02-27T22:41:47Z Ralt: ok, thanks 2015-02-27T22:41:59Z Shinmera: There might be a better suited one, though. Probably. 2015-02-27T22:43:06Z Shinmera: QTableView might be more appropriate. 2015-02-27T22:43:36Z lispyone joined #lisp 2015-02-27T22:43:53Z rebelshrug quit (Quit: Textual IRC Client: www.textualapp.com) 2015-02-27T22:44:03Z przl quit (Ping timeout: 250 seconds) 2015-02-27T22:44:17Z Ralt: I'll check it out 2015-02-27T22:44:26Z diphtherial left #lisp 2015-02-27T22:45:39Z a2015 quit (Quit: Page closed) 2015-02-27T22:47:31Z LiamH quit (Quit: Leaving.) 2015-02-27T22:49:55Z innertracks quit (Quit: innertracks) 2015-02-27T22:50:07Z ovenpasta joined #lisp 2015-02-27T22:52:33Z grantix quit (Remote host closed the connection) 2015-02-27T22:52:36Z linux_dream quit (Quit: Leaving) 2015-02-27T22:53:10Z lispyone quit (Remote host closed the connection) 2015-02-27T22:53:57Z lispyone joined #lisp 2015-02-27T22:56:58Z Beetny joined #lisp 2015-02-27T23:03:32Z ehu quit (Quit: Leaving.) 2015-02-27T23:04:37Z jumblerg joined #lisp 2015-02-27T23:05:08Z Davidbrcz joined #lisp 2015-02-27T23:05:30Z duggiefresh joined #lisp 2015-02-27T23:05:30Z duggiefresh quit (Client Quit) 2015-02-27T23:05:48Z linux_dream joined #lisp 2015-02-27T23:11:54Z lispyone quit (Remote host closed the connection) 2015-02-27T23:11:59Z grantix joined #lisp 2015-02-27T23:16:24Z jlongster joined #lisp 2015-02-27T23:18:05Z prxq quit (Remote host closed the connection) 2015-02-27T23:21:50Z pacon joined #lisp 2015-02-27T23:22:12Z attila_lendvai joined #lisp 2015-02-27T23:22:12Z attila_lendvai quit (Changing host) 2015-02-27T23:22:12Z attila_lendvai joined #lisp 2015-02-27T23:25:33Z linux_dream quit (Quit: Leaving) 2015-02-27T23:26:17Z rebelshrug joined #lisp 2015-02-27T23:26:58Z Shinmera has been staring at the swank stack analysis for clisp in disbelief for half an hour now. 2015-02-27T23:27:12Z Shinmera: It uses regexes to tear down a string representation of a stack frame. 2015-02-27T23:27:20Z Shinmera: unbelievable. 2015-02-27T23:27:29Z mishoo quit (Ping timeout: 246 seconds) 2015-02-27T23:29:02Z csziacobus: shinmera: clisp has a builtin regex parser? 2015-02-27T23:29:31Z Shinmera: Is that a question or a statement in inquiry form? 2015-02-27T23:31:29Z fourier quit (Ping timeout: 252 seconds) 2015-02-27T23:33:57Z Ethan- joined #lisp 2015-02-27T23:38:19Z ovenpasta quit (Ping timeout: 265 seconds) 2015-02-27T23:39:48Z przl joined #lisp 2015-02-27T23:41:50Z antonv joined #lisp 2015-02-27T23:41:57Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-02-27T23:42:18Z juiko joined #lisp 2015-02-27T23:43:37Z echo-area quit (Ping timeout: 245 seconds) 2015-02-27T23:43:54Z JuanitoJons joined #lisp 2015-02-27T23:44:52Z przl quit (Ping timeout: 240 seconds) 2015-02-27T23:50:35Z monod quit (Quit: Sto andando via) 2015-02-27T23:52:10Z radioninja quit (Ping timeout: 252 seconds) 2015-02-27T23:53:49Z stepnem quit (Ping timeout: 255 seconds)