00:01:23 -!- hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has quit [Quit: Leaving...] 00:26:29 tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has joined #sbcl 00:35:39 cmm [~cmm@109.66.206.178] has joined #sbcl 00:38:44 -!- cmm- [~cmm@bzq-79-177-204-134.red.bezeqint.net] has quit [Ping timeout: 250 seconds] 01:06:29 -!- tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has quit [Quit: Leaving.] 01:18:44 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 240 seconds] 02:02:10 -!- attila_lendvai [~attila_le@adsl-89-132-5-64.monradsl.monornet.hu] has quit [Quit: Leaving.] 02:34:57 cps and ssa are only isomorphic if you use actual arguments for the continuation; if the continuation only represents control, while you stick to regular variables and lexical scoping for dataflow (i.e. IR1), you haven't won much. 02:37:28 Fair enough. 02:38:50 stassats [~stassats@wikipedia/stassats] has joined #sbcl 03:37:27 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 240 seconds] 04:50:24 -!- nyef [~nyef@pool-70-20-57-204.man.east.myfairpoint.net] has quit [Quit: G'night all.] 05:06:27 homie` [~levgue@xdsl-78-35-170-201.netcologne.de] has joined #sbcl 05:09:18 -!- homie [~levgue@xdsl-78-35-173-41.netcologne.de] has quit [Ping timeout: 272 seconds] 06:59:16 tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has joined #sbcl 07:06:39 slyrus [~chatzilla@adsl-75-36-217-249.dsl.pltn13.sbcglobal.net] has joined #sbcl 08:12:51 -!- homie` [~levgue@xdsl-78-35-170-201.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 08:16:28 homie [~levgue@xdsl-78-35-170-201.netcologne.de] has joined #sbcl 10:22:28 pdponze [~pdponze@144.85.121.191] has joined #sbcl 11:04:20 -!- homie [~levgue@xdsl-78-35-170-201.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:07:25 homie [~levgue@xdsl-78-35-170-201.netcologne.de] has joined #sbcl 11:10:59 rmarynch [~roman@88.135.194.233] has joined #sbcl 11:14:53 stassats [~stassats@wikipedia/stassats] has joined #sbcl 11:23:23 -!- homie [~levgue@xdsl-78-35-170-201.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:29:24 attila_lendvai [~attila_le@adsl-89-132-5-64.monradsl.monornet.hu] has joined #sbcl 11:43:04 -!- attila_lendvai [~attila_le@adsl-89-132-5-64.monradsl.monornet.hu] has left #sbcl 11:45:22 -!- tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has quit [Quit: Leaving.] 12:08:03 hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has joined #sbcl 12:23:29 -!- pdponze [~pdponze@144.85.121.191] has left #sbcl 12:33:15 -!- rmarynch [~roman@88.135.194.233] has quit [Quit: Leaving] 12:37:05 -!- hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has quit [Quit: Leaving...] 12:43:07 hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has joined #sbcl 12:52:15 -!- hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has quit [Ping timeout: 240 seconds] 13:18:46 homie [~levgue@xdsl-78-35-170-201.netcologne.de] has joined #sbcl 13:36:36 hargettp [~hargettp@pool-71-174-130-201.bstnma.east.verizon.net] has joined #sbcl 13:44:22 nyef [~nyef@pool-70-20-57-204.man.east.myfairpoint.net] has joined #sbcl 13:45:25 G'morning all. 13:56:46 attila_lendvai [~attila_le@catv-80-98-24-21.catv.broadband.hu] has joined #sbcl 13:58:35 morning 14:09:44 -!- hargettp [~hargettp@pool-71-174-130-201.bstnma.east.verizon.net] has quit [Quit: Leaving...] 14:15:06 hargettp [~hargettp@pool-71-174-130-201.bstnma.east.verizon.net] has joined #sbcl 14:33:52 phil [~hargettp@96.237.127.136] has joined #sbcl 14:34:39 -!- hargettp [~hargettp@pool-71-174-130-201.bstnma.east.verizon.net] has quit [Ping timeout: 240 seconds] 14:45:31 -!- stassats [~stassats@wikipedia/stassats] has quit [Remote host closed the connection] 14:55:55 -!- phil [~hargettp@96.237.127.136] has quit [Quit: Linkinus - http://linkinus.com] 14:56:05 hargettp [~hargettp@96.237.127.136] has joined #sbcl 16:08:34 flip214 [~marek@h081217084238.dyn.cm.kabsi.at] has joined #sbcl 16:08:36 -!- flip214 [~marek@h081217084238.dyn.cm.kabsi.at] has quit [Changing host] 16:08:36 flip214 [~marek@unaffiliated/flip214] has joined #sbcl 16:26:08 -!- flip214 [~marek@unaffiliated/flip214] has quit [Quit: Leaving] 16:36:14 stassats [~stassats@wikipedia/stassats] has joined #sbcl 16:56:09 rmarynch [~roman@88.135.194.233] has joined #sbcl 17:07:27 -!- hargettp [~hargettp@96.237.127.136] has quit [Ping timeout: 240 seconds] 17:27:32 hargettp [~hargettp@96.237.127.144] has joined #sbcl 17:38:25 Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has joined #sbcl 17:40:31 So, I'd be interested in doing some SBCL development in the near future. Any tips on getting started with that? 17:41:05 Find a bug, try to fix it. 17:41:43 Read all the documentation you can get your paws on. 17:41:56 tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has joined #sbcl 17:42:26 (Including CMUCL documentation, which makes the EncyCMUCLopedia relevant, though a bit outdated.) 17:42:29 Stuff like that. 17:42:43 Ask for help and feedback when necessary. 17:42:55 Oh. I had never considered looking for CMUCL documentation. 17:42:56 homie` [~levgue@xdsl-78-35-147-195.netcologne.de] has joined #sbcl 17:46:18 -!- homie [~levgue@xdsl-78-35-170-201.netcologne.de] has quit [Ping timeout: 276 seconds] 17:47:30 It's been eleven years since SBCL was forked, but the documentation is even older. 17:48:29 Ok, so I guess I'll skip CMUCL documentation for now. o_o 17:49:02 -!- homie` [~levgue@xdsl-78-35-147-195.netcologne.de] has quit [Remote host closed the connection] 17:50:48 homie [~levgue@xdsl-78-35-147-195.netcologne.de] has joined #sbcl 17:50:51 It's still workable, especially the memory-model and compiler-guts bits. 17:51:25 There's also the SBCL internals wiki, the SBCL internals manual, and the SBCL internals-notes. 17:51:37 (Two thirds of which are in the SBCL source tree.) 17:54:10 Shit. I can't seem to find a link to the SBCL internals wiki from sbcl.org, I finally found it via google: http://sbcl-internals.cliki.net/index 17:56:05 Hexstream: http://www.sbcl.org/links.html 17:57:41 Oh. I had seen that page but not actually read it. I've been conditioned over years to ignore "Links" pages because they're usually worthless. 18:00:05 Hum, there's http://www.sbcl.org/sbcl-internals/ linked from sbcl.org and http://sbcl.sourceforge.net/sbcl-internals/ linked from the SBCL internals wiki... 18:00:44 better build your own internals, this doesn't seem to be up to date 18:01:32 "This" referring to the first link, the second, or both? 18:01:49 Yeah, I typically either read the source for the internals manual or build my own pdf. 18:02:07 Hexstream: it's the same link 18:02:28 nyef: or write it 18:02:46 stassats: It may or may not be the same content, but it's not the same link. 18:02:50 Yes, yes. I build the pdf quite often when writing new sections for the manual. 18:03:13 Hexstream: It's also the same file on the same server. 18:04:25 nyef: Ohh, damn, that's confusing. Seems to me sbcl.sourceforge.net should 301 redirect to sbcl.org 18:04:51 It's also unnecessary link juice spillage. 18:05:13 only if you have OCD 18:05:21 OCD? 18:05:39 minion: what does OCD stand for? 18:05:40 Obituarist Coenocytic Diazonium 18:06:09 minion: What does Obituarist Coenocytic Diazonium stand for? 18:06:09 42 18:06:14 Of course. 18:08:47 Oh. Well, my fears are logical so it's not OCD, you insensitive clod! 18:13:32 Fucking shit. Reading the wikipedia page it does seem I have OCD. Thanks for the diagnostic :/ 18:13:55 Either that, or you're a hypochondriac. :-P 18:14:52 nyef: I'm not hypochondriact so... it's that. 18:16:11 -!- rmarynch [~roman@88.135.194.233] has quit [Quit: Leaving] 18:19:05 -!- hargettp [~hargettp@96.237.127.144] has quit [Quit: Linkinus - http://linkinus.com] 18:42:55 -!- Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has left #sbcl 19:09:53 hargettp [~hargettp@96.237.127.144] has joined #sbcl 19:43:34 -!- hargettp [~hargettp@96.237.127.144] has quit [Quit: Leaving...] 19:47:17 It just occurred to me how to make an "inline-assembler" function for SBCL. 19:47:30 The rough outline of it, at least. 20:18:10 nyef: does it include a :constant argument and eval? 20:18:32 I was thinking a :info argument and eval, but yeah. 20:18:46 And an LTN-ANNOTATE method to set up the TNs in the first place. 20:19:00 ah, neat. 20:19:07 I would have tried to get it right in ir2-convert. 20:19:29 Can't. You need to set the TNs up in the LTN-ANNOTATE and /then/ have an IR2-CONVERT as well. 20:19:52 really? 20:20:01 Wouldn't a :CONSTANT argument get packed into the constant vector anyway? 20:20:15 Okay, you might be able to abuse the template mechanism, but... ugh. 20:21:16 mm.. maybe 20:22:15 Does leave the question of if it's worth doing, though. 20:24:05 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 264 seconds] 20:37:45 hargettp [~hargettp@96.237.127.144] has joined #sbcl 20:44:15 -!- tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has quit [Read error: Connection reset by peer] 20:44:22 tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has joined #sbcl 23:11:55 So, SSA-conversion needs to be done, repeatedly, in DO-IR1-PHASES. Largely because closed-over variables cannot be SSA-converted until and unless their capturing closure is deemed to always be called via local calls from allocating lambda to closure lambda. 23:17:33 nyef: modulo memory barriers, I don't see why. 23:18:05 phi functions can treat closed over bindings specially. 23:46:54 Got a link on that? 23:47:17 no, just an idea of how I'd implement it. 23:47:59 The papers I've been finding don't seem to mention much about using phi-functions for anything that can be aliased, and closed-over bindings are certainly aliased. 23:48:29 aliased, sure, but not locally. 23:48:50 (in each basic block) 23:48:56 So, interprocedural SSA? 23:49:24 so, we can treat bindings like unaliased structs 23:49:42 just make sure to flush to memory before calls. 23:49:54 or, more conservatively, between bblocks 23:50:00 Okay, this is definitely beyond what I've managed to find documentation for. 23:50:21 Or at least beyond what I've managed to read documentation for. 23:50:30 (Or read and understand documentation for...) 23:52:33 there's nothing special per se about SSA in terms of semantics and analysis strength 23:52:43 it's the efficient normalisation that's really cool. 23:53:55 but in the meantime, it might be good enough to go with a simpler representation 23:56:10 Simpler in what sense? 23:57:25 start out by copying lexically enclosing bindingsto local variables and at the head and tail of bblocks. 23:57:37 -and 23:58:43 and then extend that to (nice) loop bodies.