00:00:11 -!- saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit ["This computer has gone to sleep"] 00:00:58 masm [n=masm@bl10-255-131.dsl.telepac.pt] has joined #scheme 00:02:18 reprore [n=reprore@210.166.12.100] has joined #scheme 00:04:09 -!- reprore [n=reprore@210.166.12.100] has quit [Remote closed the connection] 00:10:20 Khisanth [n=Khisanth@pool-68-237-101-85.ny325.east.verizon.net] has joined #scheme 00:10:48 -!- Khisanth [n=Khisanth@pool-68-237-101-85.ny325.east.verizon.net] has quit [SendQ exceeded] 00:11:02 Khisanth [n=Khisanth@pool-68-237-101-85.ny325.east.verizon.net] has joined #scheme 00:11:20 -!- Khisanth [n=Khisanth@pool-68-237-101-85.ny325.east.verizon.net] has quit [Client Quit] 00:13:06 jao [n=jao@145.Red-83-54-168.dynamicIP.rima-tde.net] has joined #scheme 00:16:12 -!- weinholt [i=weinholt@debian/emeritus/weinholt] has quit [Read error: 110 (Connection timed out)] 00:19:58 -!- MononcQc [n=Ferd@modemcable062.225-20-96.mc.videotron.ca] has quit ["Leaving"] 00:22:36 -!- jao [n=jao@145.Red-83-54-168.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 00:32:32 -!- masm [n=masm@bl10-255-131.dsl.telepac.pt] has quit [Read error: 60 (Operation timed out)] 00:34:38 masm [n=masm@bl10-255-131.dsl.telepac.pt] has joined #scheme 00:47:22 weinholt [i=weinholt@debian/emeritus/weinholt] has joined #scheme 00:52:26 saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 00:53:16 rouslan [n=Rouslan@unaffiliated/rouslan] has joined #scheme 00:53:35 -!- guenthr [n=unknown@sahnehaschee.unix-ag.uni-kl.de] has quit [Read error: 104 (Connection reset by peer)] 00:53:42 guenthr [n=unknown@sahnehaschee.unix-ag.uni-kl.de] has joined #scheme 00:54:50 -!- saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Client Quit] 00:55:41 -!- jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has quit [] 01:06:56 ankou_ [n=quassel@p57A6C8CF.dip.t-dialin.net] has joined #scheme 01:15:04 -!- arcfide [n=arcfide@99.14.210.197] has left #scheme 01:15:21 -!- boscop [n=boscop@e181241025.adsl.alicedsl.de] has quit ["Gxis revido!"] 01:17:14 arcfide [n=arcfide@adsl-99-14-210-197.dsl.bltnin.sbcglobal.net] has joined #scheme 01:21:15 -!- g0ju [n=moo@141.32.40.71] has quit [SendQ exceeded] 01:22:25 dmoerner [n=dmr@adsl-71-149-161-195.dsl.snantx.sbcglobal.net] has joined #scheme 01:23:05 -!- ankou [n=quassel@p57A6C8DA.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 01:47:55 Riastradh: Are you around for more parshceme questions? 01:48:39 saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 01:50:38 Vaguely, yes. 01:52:36 -!- masm [n=masm@bl10-255-131.dsl.telepac.pt] has quit ["Leaving."] 01:53:36 Riastradh: I'm trying to translate [CFWS] [name-val-pair *(CFWS name-val-pair)] into parscheme and have the following: 01:53:40 arcfide pasted "Weirdness" at http://paste.lisp.org/display/85075 01:54:45 sepult` [n=user@xdsl-87-78-120-45.netcologne.de] has joined #scheme 01:54:47 I am testing it on "a b c d" which should parse into (("a" . "b") ("c" . "d")). 01:55:03 However, it reads only the first item. 01:55:29 Does tracing help? 01:56:05 arcfide annotated #85075 "Stream" at http://paste.lisp.org/display/85075#1 01:56:08 Or, what if you try parsing item-name cwfs item-value cwfs item-name cwfs item-value? 01:56:10 I'm a bit at a loss as to why it would read only the first element. I got the stream back from where it stops, and it appears as above. 01:56:34 Well, something ate the cwfs. 01:56:46 Riastradh: Yes, I tried that as well. 01:56:46 Did angle-addr, addr-spec, msg-id, domain, or atom eat it? 01:56:57 Oh! 01:56:58 Okay. 01:57:13 I see, so, it fails to read the next piece because the next piece demands CFWS before the pair. 01:57:17 Reading whitespace at the parser layer is really the wrong way to go about it, anyway. 01:57:29 And since the previous elements will consume all the leading whitespace, it won't work? 01:57:35 Right. 01:57:44 Hm... 01:57:45 Rather than writing character-by-character parsers, I think you would be better off turning a character stream into an RFC 2822 token stream. 01:58:06 underspecified [n=eric@155.69.195.94] has joined #scheme 01:58:39 In edwin/rfc822.scm, you can find a simple-minded RFC 822 tokenizer named RFC822:STRING-TOKENIZER. Adapting it to RFC 2822 and to streams would probably not be very hard. 01:58:44 Riastradh: Yes, I agree. However, the RFC is defined in terms of a character parser, sort of. They have a series of token productions that are used everywhere else. 01:58:44 ...in MIT Scheme, sorry. 01:59:26 Riastradh: It's GPL'd. :-/ 01:59:36 OK, so rewrite it. 02:02:29 -!- Phaze [n=PhazeDK@0x5da32b16.cpe.ge-0-1-0-1104.soebnqu1.customer.tele.dk] has quit ["Leaving"] 02:03:11 I guess I'll have to do that, since going straight from the grammar isn't working out. 02:03:45 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 02:03:51 -!- ankou_ [n=quassel@p57A6C8CF.dip.t-dialin.net] has quit [Read error: 104 (Connection reset by peer)] 02:06:51 arcfide: What license is your project being tagged with? 02:07:20 -!- dmoerner [n=dmr@adsl-71-149-161-195.dsl.snantx.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 02:08:39 dmoerner [n=dmr@adsl-75-8-80-175.dsl.snantx.sbcglobal.net] has joined #scheme 02:09:19 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 02:09:23 -!- sepult [n=user@xdsl-87-78-101-171.netcologne.de] has quit [Success] 02:17:20 TimMc: I usually ISC/BSD license most of my code. 02:17:43 Ah, ok. 02:23:04 TimMc: On the other hand, i also do commercial work and write code that can't be GPL compatible. When I write libraries that I need to use, I prefer to be able to use them in these contexts. 02:24:20 arcfide: Since it's your work, you can always "license" it to the client as well. 02:24:42 TimMc: Yes, but if I rely on code written from GPL projects, that kind of makes things difficult. :-) 02:24:57 Ah, yes, 02:25:06 TimMc: Fortunately, many Scheme libraries are public or BSD. 02:25:25 If you licensed to GPL, it would be tempting to include GPL'd depends. 02:26:07 It is very very easy to write a tokenizer for RFC 2822 though, so I'll probably do that and rework some stuff. 02:27:23 I had hoped to go straight from the grammar though. Unfortunately, there are some ways in which the grammar is written that won't work for me. 02:27:30 As I just found out. 02:31:55 -!- rouslan [n=Rouslan@unaffiliated/rouslan] has quit [Remote closed the connection] 02:41:55 -!- Thren [n=Thren@c-75-67-111-180.hsd1.nh.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 02:46:23 -!- Nshag [i=user@Mix-Orleans-106-1-134.w193-248.abo.wanadoo.fr] has quit ["Quitte"] 02:53:29 tjafk2 [n=timj@e176193084.adsl.alicedsl.de] has joined #scheme 02:56:32 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 03:07:58 heya arcfide. 03:08:26 -!- tjafk1 [n=timj@e176222245.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:10:42 elf: Yes? 03:11:24 elf: Oh, you just meant, 'ello. :-) Hi. 03:11:42 no, i said allo, but thats close enough :) 03:11:44 hows you? 03:12:41 Oh, I'm not doing too badly. 03:12:59 Lots of projects, and job hunting at the moment. 03:15:18 -!- peter_12 [n=peter_12@S01060024016bb36c.gv.shawcable.net] has quit [] 03:20:01 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 03:20:23 jonrafkind [n=jon@98.202.86.149] has joined #scheme 03:21:11 Deformati [n=joe@c-68-84-166-52.hsd1.mi.comcast.net] has joined #scheme 03:21:34 -!- Deformative [n=joe@c-68-84-166-52.hsd1.mi.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 03:31:33 -!- ofthelesser [i=oftheles@cpe-174-100-207-183.neo.res.rr.com] has quit [Read error: 60 (Operation timed out)] 03:35:13 ofthelesser [i=steve@cpe-174-100-207-183.neo.res.rr.com] has joined #scheme 03:41:34 bytecolor [n=user@32.159.197.190] has joined #scheme 03:42:38 is there a way to create an environment within a given scheme implementation that has only those symbols described in R5RS? 03:43:00 basically scrub the namespace 03:46:07 (scheme-report-environment 5) 03:46:11 as defined in r5rs 03:46:47 # 03:47:21 it's there, but how do I get rid of the other symbols guile loads up (there are tons of them) 03:47:42 phax [n=phax@unaffiliated/phax] has joined #scheme 03:47:45 which version of guile? 03:48:29 and why do you want to work in an r5-only env? 03:48:41 1.8.5 03:48:46 elf: just for learning 03:48:48 if you want to evaluate in it, you can just do (eval (scheme-report-environment 5)) 03:48:55 which is probably better than trying to scrub the env. 03:49:03 hrm 03:50:12 i forget exactly, but iirc theres some way in guile to set the current-environment to an arbitrary env. 03:50:21 but if you do, you cant go back and get all the other bindings. 03:50:25 which is generally not a good idea. 03:50:36 I'm reading about (set-current-module) now 03:52:10 yeah, i last worked in guile at 1.4.1 03:52:18 heh ;) 03:52:19 so my knowledge may be a wee bit out of date atm. :) 03:52:40 the only reason I chose guile is becuase TeXmacs uses it 03:55:29 good lawd 1866 symbols in the guile namespace 03:55:36 that's what I'm trying to get away from ;) 03:58:33 nimbler [n=d@99-156-81-22.lightspeed.austtx.sbcglobal.net] has joined #scheme 03:59:20 hrm, I changed the current-module, it now shows # 03:59:28 it was `guile' 04:09:55 -!- luz [n=davids@189.122.90.116] has quit [Remote closed the connection] 04:13:43 -!- nimbler [n=d@99-156-81-22.lightspeed.austtx.sbcglobal.net] has left #scheme 04:17:06 copumpkin [n=pumpkin@c-98-204-160-42.hsd1.va.comcast.net] has joined #scheme 04:18:27 eno__ [n=eno@adsl-70-137-152-74.dsl.snfc21.sbcglobal.net] has joined #scheme 04:22:13 MononcQc [n=Ferd@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 04:25:09 bytecolor: Lot's of symbols isn't necessarily a bad thing. 04:25:23 cornucopic [n=r00t@202.3.77.134] has joined #scheme 04:28:55 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 110 (Connection timed out)] 04:37:50 -!- dmoerner [n=dmr@adsl-75-8-80-175.dsl.snantx.sbcglobal.net] has quit [Remote closed the connection] 04:38:11 dmoerner [n=dmr@75.8.80.175] has joined #scheme 04:39:08 true, once you grok the basic stuff ;) 04:40:28 heh, its been a long time since i heard the word 'grok'. good. 04:43:55 -!- sleepydog [n=user@64-252-65-74.adsl.snet.net] has quit [Read error: 104 (Connection reset by peer)] 04:44:25 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 04:45:58 oooo, I just got ERROR: Unbound variable: define, that's progress! ;) 04:47:13 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 04:47:55 sleepydog [n=user@64-252-65-74.adsl.snet.net] has joined #scheme 04:49:38 cool, down to 233 symbols 04:50:15 guile has a #:pure option to the (define-module) procedure, scrubs it quite well 04:51:13 Guile isn't what you want for a clean module system. Try Scheme48. 04:51:56 foof: nod, I'm sure there are other minimal systems, but I think I got it close to where I want it, only symbols from R5RS 04:52:30 I'll need to compair my list I scraped out of the spec with what guile is showing 04:52:31 Guile isn't exactly minimal. 04:52:40 heh, true! 04:53:03 but... it close now. I just want a minimal namespace 04:53:48 But size is orthogonal to a clean module system that lets you control imports precisely. 04:56:19 hrm, there are 181 symbols in the Standard Procedures section of R5RS, and I'm only showing 233 at the moment, that's not including lambda, cond, etc. from Chapter 4. 04:57:53 another 17 or so there, and I loaded the (ice-9 ls) module to list the symbols in the current module (ice-9 r5rs), so, close ;) 05:01:43 foof: I follow what you mean, that's sort of where I'd like to be; To know exactly what is loaded, and then pick and choose what I want to add. 05:02:16 -!- cornucopic [n=r00t@202.3.77.134] has quit [Read error: 60 (Operation timed out)] 05:03:40 HG` [n=wells@xdslfa076.osnanet.de] has joined #scheme 05:07:08 hey, is scheme48 a branch from the "scheme interpreter in haskell in 48 hours"? 05:07:55 No, Scheme48 is a real implementation. 05:08:13 cool, I just installed it 05:10:21 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit [Remote closed the connection] 05:13:23 cornucopic [n=r00t@202.3.77.134] has joined #scheme 05:20:38 hrm, it has `scheme-r5rs' that runs the given script in that environment, nice. That's what I basically just did. 05:22:13 hrm, so I'd have to add a repl to my script 05:22:41 I mean if I wanted to play with it interactively with the scrubbed namespace 05:36:05 wow, this is just too cool ;) 05:38:39 http://pastebin.org/7587 05:41:47 -!- kniu [n=kniu@pool-71-106-16-199.lsanca.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)] 05:42:01 -!- sleepydog [n=user@64-252-65-74.adsl.snet.net] has quit [Read error: 110 (Connection timed out)] 05:46:59 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 05:49:20 kniu [n=kniu@pool-71-106-16-199.lsanca.dsl-w.verizon.net] has joined #scheme 05:54:50 Edico [n=Edico@unaffiliated/edico] has joined #scheme 06:03:29 lowlycoder [n=x@unaffiliated/lowlycoder] has joined #scheme 06:18:53 -!- cornucopic [n=r00t@202.3.77.134] has quit [Read error: 110 (Connection timed out)] 06:25:11 what does HOF stand for, in the context of functional programming languages 06:27:07 -!- MononcQc [n=Ferd@modemcable062.225-20-96.mc.videotron.ca] has quit [Remote closed the connection] 06:33:03 eno [n=eno@nslu2-linux/eno] has joined #scheme 06:33:26 lowlycoder: Higher Order Function - a function that takes a function as an argument. 06:33:54 e.g. map 06:34:02 thanks 06:34:13 stupid people, using terms like HOF, confusing me 06:40:02 -!- arcfide [n=arcfide@adsl-99-14-210-197.dsl.bltnin.sbcglobal.net] has left #scheme 06:43:10 -!- eno__ [n=eno@adsl-70-137-152-74.dsl.snfc21.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 06:46:49 mmc [n=mima@esprx02x.nokia.com] has joined #scheme 07:02:12 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 07:02:48 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 07:09:18 -!- lowlycoder [n=x@unaffiliated/lowlycoder] has quit ["leaving"] 07:11:24 -!- bytecolor [n=user@32.159.197.190] has left #scheme 07:42:21 -!- mmc [n=mima@esprx02x.nokia.com] has quit ["Leaving."] 07:45:37 hotblack23 [n=jh@p5B055AF3.dip.t-dialin.net] has joined #scheme 08:01:18 -!- saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit ["This computer has gone to sleep"] 08:02:12 mmc [n=mima@esprx02x.nokia.com] has joined #scheme 08:13:49 dzhus [n=sphinx@93-81-177-254.broadband.corbina.ru] has joined #scheme 08:31:31 -!- thesnowdog [i=thesnowd@114.73.30.35] has quit [Read error: 110 (Connection timed out)] 08:52:35 g0ju [n=moo@spalila.hrz.fh-zwickau.de] has joined #scheme 09:03:54 thesnowdog [i=thesnowd@122.110.24.29] has joined #scheme 09:27:37 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 09:27:43 -!- underspecified [n=eric@155.69.195.94] has quit [] 09:30:30 -!- tltstc [n=tltstc@cpe-76-90-92-154.socal.res.rr.com] has quit [] 09:34:14 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 09:35:34 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 09:36:06 MrFahrenheit [n=RageOfTh@users-42-213.vinet.ba] has joined #scheme 09:38:26 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 09:43:18 -!- kniu [n=kniu@pool-71-106-16-199.lsanca.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)] 09:43:48 tltstc [n=tltstc@cpe-76-90-92-154.socal.res.rr.com] has joined #scheme 09:50:28 -!- alaricsp [n=alaricsp@88-202-202-179.rdns.as8401.net] has quit ["Leaving."] 10:15:21 Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has joined #scheme 10:42:26 attila_lendvai_ [n=ati@adsl-89-132-2-49.monradsl.monornet.hu] has joined #scheme 11:38:33 -!- Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has quit [Read error: 110 (Connection timed out)] 11:58:32 -!- MrFahrenheit [n=RageOfTh@users-42-213.vinet.ba] has quit [Read error: 110 (Connection timed out)] 12:02:56 gwern [n=gwern@wikipedia/Gwern] has joined #scheme 12:03:23 does anyone know of any discussions of scheme equality operators? I've been wondering why, say, eq? and = are so different 12:13:48 gwern: maybe http://www.nhplace.com/kent/PS/EQUAL.html will help you 12:14:19 -!- attila_lendvai_ [n=ati@adsl-89-132-2-49.monradsl.monornet.hu] has quit ["..."] 12:14:26 hm. it's common lisp, but looks pretty germane 12:19:36 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 12:25:57 Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has joined #scheme 12:43:50 underspecified [n=eric@155.69.195.151] has joined #scheme 12:47:24 dsmith_ [n=dsmith@66.178.229.162] has joined #scheme 12:48:29 -!- mmc [n=mima@esprx02x.nokia.com] has quit [Remote closed the connection] 12:49:37 -!- dsmith [n=dsmith@cpe-173-88-196-177.neo.res.rr.com] has quit [Read error: 110 (Connection timed out)] 12:50:19 Edico [n=Edico@unaffiliated/edico] has joined #scheme 13:10:03 jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 13:20:58 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 13:21:20 -!- subversus [i=elliot@loveturtle.net] has quit ["Lost terminal"] 13:22:35 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 13:25:13 -!- dsmith_ is now known as dsmith 13:33:49 -!- dmoerner [n=dmr@75.8.80.175] has quit [Read error: 104 (Connection reset by peer)] 13:34:00 dmoerner [n=dmr@adsl-75-8-80-175.dsl.snantx.sbcglobal.net] has joined #scheme 13:38:30 -!- jimt [n=jim@202.27.212.33] has quit [Remote closed the connection] 13:38:41 jimt_ [n=jim@202.27.212.33] has joined #scheme 13:40:01 -!- dzhus [n=sphinx@93-81-177-254.broadband.corbina.ru] has quit [Remote closed the connection] 13:41:33 MrFahrenheit [n=RageOfTh@users-42-213.vinet.ba] has joined #scheme 13:48:24 delopart [n=sfv@212.174.74.11] has joined #scheme 13:48:51 hey 13:49:13 dzhus [n=sphinx@93-81-177-254.broadband.corbina.ru] has joined #scheme 13:56:56 i read chapter 10 13:57:04 page 98 13:57:47 cyl,callt-bind andinterp book said it is enough dummy number.Because we just create cylic environment ? 13:59:36 sepult`` [n=user@xdsl-87-78-28-14.netcologne.de] has joined #scheme 14:04:31 delopart: you're always a bit out of contect, but I really can't make any chocolate out of what you just said. 14:07:44 Before we can create a cyclic environment, we must first extend it with a binding for the new identifier. 14:07:44 At this point we know the identifier’s name but not necessarily the value bound to it, so we’ll place a dummy 14:07:44 value in the environment: 14:07:44 plai chapter 10 page 98 14:07:49 -!- dmoerner [n=dmr@adsl-75-8-80-175.dsl.snantx.sbcglobal.net] has quit [Read error: 113 (No route to host)] 14:09:54 MononcQc [n=Ferd@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 14:12:10 nicoca [n=nicoca@mon76-1-88-168-192-93.fbx.proxad.net] has joined #scheme 14:13:10 -!- nicoca [n=nicoca@mon76-1-88-168-192-93.fbx.proxad.net] has left #scheme 14:14:07 nicoca [n=nicoca@mon76-1-88-168-192-93.fbx.proxad.net] has joined #scheme 14:14:30 -!- MononcQc [n=Ferd@modemcable062.225-20-96.mc.videotron.ca] has quit [Client Quit] 14:14:36 delopart: and your question is? 14:14:57 -!- dsmith [n=dsmith@66.178.229.162] has quit [Read error: 110 (Connection timed out)] 14:15:30 -!- HG` [n=wells@xdslfa076.osnanet.de] has quit [Client Quit] 14:15:44 MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 14:17:05 -!- nicoca [n=nicoca@mon76-1-88-168-192-93.fbx.proxad.net] has left #scheme 14:17:22 -!- sepult` [n=user@xdsl-87-78-120-45.netcologne.de] has quit [No route to host] 14:17:32 dsmith [n=dsmith@cpe-173-88-196-177.neo.res.rr.com] has joined #scheme 14:18:31 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 14:18:33 -!- underspecified [n=eric@155.69.195.151] has quit [] 14:21:30 -!- gwern [n=gwern@wikipedia/Gwern] has left #scheme 14:36:16 -!- copumpkin [n=pumpkin@c-98-204-160-42.hsd1.va.comcast.net] has quit [Read error: 60 (Operation timed out)] 14:36:37 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 104 (Connection reset by peer)] 14:37:03 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 14:39:31 -!- Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has quit [Remote closed the connection] 14:40:39 what does mutable environemnt mean ? 14:43:40 underspecified_ [n=eric@155.69.193.117] has joined #scheme 14:51:35 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [Nick collision from services.] 14:51:44 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 14:53:02 Nshag [i=user@Mix-Orleans-106-1-199.w193-248.abo.wanadoo.fr] has joined #scheme 15:00:16 dmoerner [n=dmr@66-140-241-100.ded.swbell.net] has joined #scheme 15:05:50 -!- underspecified_ [n=eric@155.69.193.117] has quit [Read error: 104 (Connection reset by peer)] 15:06:22 underspecified [n=eric@155.69.193.117] has joined #scheme 15:10:10 -!- phax [n=phax@unaffiliated/phax] has quit [Remote closed the connection] 15:11:07 eno__ [n=eno@adsl-70-137-138-62.dsl.snfc21.sbcglobal.net] has joined #scheme 15:15:00 delopart: mutable means that you can change it (with set! for example) 15:17:47 sleepydog [n=user@64-252-65-74.adsl.snet.net] has joined #scheme 15:21:18 Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has joined #scheme 15:21:46 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 110 (Connection timed out)] 15:23:36 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 15:34:24 -!- eno__ [n=eno@adsl-70-137-138-62.dsl.snfc21.sbcglobal.net] has quit [Read error: 60 (Operation timed out)] 15:35:24 eno [n=eno@nslu2-linux/eno] has joined #scheme 15:36:13 -!- MrFahrenheit [n=RageOfTh@users-42-213.vinet.ba] has quit [Read error: 104 (Connection reset by peer)] 15:36:27 MrFahrenheit [n=RageOfTh@users-42-213.vinet.ba] has joined #scheme 15:38:19 skhairy [n=chatzill@c-24-61-95-150.hsd1.nh.comcast.net] has joined #scheme 15:43:20 -!- skhairy [n=chatzill@c-24-61-95-150.hsd1.nh.comcast.net] has left #scheme 15:44:50 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 15:50:48 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 15:52:16 -!- gnomon [n=gnomon@CPE001d60dffa5c-CM000f9f776f96.cpe.net.cable.rogers.com] has quit [Read error: 110 (Connection timed out)] 15:52:33 kilimanjaro [n=kilimanj@70.116.95.163] has joined #scheme 15:53:43 -!- dmoerner [n=dmr@66-140-241-100.ded.swbell.net] has quit [Read error: 110 (Connection timed out)] 15:57:22 incubot: Mutable means never having to say "I'm sorry." 15:57:26 now, do you really think a curmudgeon like myself would even *dream* of handing off a pile of billions of blue bilious bits in the closed, proprietary, secret, mutable, unreliable, virus-ridden, broken, insecure file format from Microsoft? 15:57:50 -!- sepult`` [n=user@xdsl-87-78-28-14.netcologne.de] has quit [Client Quit] 16:01:44 sepult [n=user@xdsl-87-78-28-14.netcologne.de] has joined #scheme 16:24:55 incubot: you are starting to sound like synx 16:24:58 when you spend more time in the details of scheme implementations, it will become more obvious why LOADing files isn't always what you want. 16:28:08 -!- dzhus is now known as dzhus[afk] 16:28:42 -!- dzhus[afk] is now known as dzhus 16:36:51 nicoca1 [n=nicoca@mon76-1-88-168-192-93.fbx.proxad.net] has joined #scheme 16:37:35 -!- nicoca1 is now known as nicoca 16:56:04 -!- joast [n=rick@76.178.178.72] has quit ["Leaving."] 17:08:03 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 17:13:01 Khisanth [n=Khisanth@pool-68-237-101-85.ny325.east.verizon.net] has joined #scheme 17:16:18 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 17:18:28 incubot: (* (+ 1 2) 3) 17:18:29 9 17:26:02 joast [n=rick@76.178.178.72] has joined #scheme 17:27:24 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 17:27:39 ct2rips [n=ct2rips@p54868A1F.dip0.t-ipconnect.de] has joined #scheme 17:39:21 -!- dsmith [n=dsmith@cpe-173-88-196-177.neo.res.rr.com] has quit ["Leaving"] 17:44:12 arcfide [n=arcfide@99.14.210.197] has joined #scheme 17:45:48 -!- arcfide [n=arcfide@99.14.210.197] has quit [Remote closed the connection] 17:46:33 peter_12 [n=peter_12@S01060024016bb36c.gv.shawcable.net] has joined #scheme 17:50:06 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 17:50:41 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 17:53:38 -!- nicoca [n=nicoca@mon76-1-88-168-192-93.fbx.proxad.net] has quit [Nick collision from services.] 17:53:48 nicoca1 [n=nicoca@mon76-1-88-168-192-93.fbx.proxad.net] has joined #scheme 17:55:12 -!- nicoca1 is now known as nicoca 17:58:31 Swords2 [n=kohii@pool-71-112-25-59.sttlwa.dsl-w.verizon.net] has joined #scheme 18:26:27 -!- Swordsman [n=kohii@pool-71-112-25-59.sttlwa.dsl-w.verizon.net] has quit [Connection timed out] 18:33:32 -!- dzhus is now known as dzhus[afk] 18:36:34 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 104 (Connection reset by peer)] 18:36:35 saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 18:36:54 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 18:46:29 -!- peter_12 [n=peter_12@S01060024016bb36c.gv.shawcable.net] has quit [] 18:47:44 kniu [n=kniu@pool-71-106-16-199.lsanca.dsl-w.verizon.net] has joined #scheme 18:51:08 -!- dzhus[afk] is now known as dzhus 18:54:37 jao [n=jao@127.Red-213-98-196.dynamicIP.rima-tde.net] has joined #scheme 19:11:10 -!- jimt_ is now known as jimt 19:12:02 -!- underspecified [n=eric@155.69.193.117] has quit [] 19:22:35 -!- delopart [n=sfv@212.174.74.11] has quit [Remote closed the connection] 19:30:00 -!- jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has quit [] 19:46:10 jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 19:56:22 -!- jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has quit [] 19:57:56 lowlycoder [n=x@unaffiliated/lowlycoder] has joined #scheme 20:03:10 -!- nicoca [n=nicoca@mon76-1-88-168-192-93.fbx.proxad.net] has quit ["Leaving."] 20:05:08 -!- lowlycoder [n=x@unaffiliated/lowlycoder] has quit ["leaving"] 20:14:50 -!- MrFahrenheit [n=RageOfTh@users-42-213.vinet.ba] has quit [Read error: 104 (Connection reset by peer)] 20:19:41 Currently trying to wrap my head around call/cc. o.0 20:21:06 http://paste.lisp.org/display/85095 <-- how does second call to k never get executed? 20:23:08 when you say call/cc, the "rest of the program" is wrapped up into a function (the continuation) which is passed into the given lambda 20:23:27 Got that part. 20:23:34 so in this case, your continuation looks something like "(display VALUE-GOES-HERE)" and the continuation accepts a value, jams it into VALUE-GOES-HERE, and then display returns 20:23:50 the return is part of the "rest of the program", so it gets executed just like everything else 20:24:08 So, does calling the continuation whomp the current continuation and replace it with the saved one? 20:25:42 Like, "Cancel that, this here is a *better* continuation, ignore the rest of what I was about to do."? 20:25:59 no 20:26:05 there is no global continuation 20:26:16 let's use a simpler example: 20:26:51 (+ 2 (call/cc (lambda (k) (k 3)))) 20:26:55 this returns 5 20:27:21 so what happens is this: 20:27:40 the 'continuation' really looks like: (lambda (k) (+ 2 k)) 20:27:50 because there is a spot for a value in there that must be filled in, and then it returns that 20:28:18 so you end up with: 20:28:30 ((lambda (k) (k 3)) (lambda (k) (+ 2 k))) 20:29:20 (digesting) 20:29:34 the important part is that notion of the hole where the rest of the program goes 20:29:47 which is the continuation 20:29:56 in particular, your program probably either returns to the REPL or exits at the end, right? 20:30:11 and if it does that, the continuation never returns 20:30:17 so control flow can never get back to (k "Second") 20:30:42 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 20:30:58 Ah, interesting. 20:31:49 So the (k "First") I had *could* return and allow (k "Second") to run if it were in a different block of code, but in this case the (k) call includes the end of the "program". 20:32:08 well, really a return up to the top level 20:32:19 which is either the REPL or the "end the program" part of the interpreter 20:32:20 but yes 20:32:32 the reason that it doesn't call (k "second") is that k includes the rest of the program, and k does not return 20:32:45 Hmm, OK. 20:33:12 So doing anything after calling a continuation never makes sense? 20:33:42 I don't know about 'never' 20:33:49 but at least the way you seem to be using it, yes 20:34:07 you can think of the continuation as 'return to this point' 20:40:32 Elly: Can you think of an example of the form (k args) (something else) that would actually do something? 20:40:57 (By "do something" I mean "call `something`" :-P) 20:43:15 -!- ct2rips [n=ct2rips@p54868A1F.dip0.t-ipconnect.de] has quit ["Noch da, noch da ... Uuuuund weg."] 20:44:18 hm? 20:45:22 here is an example 20:45:36 let's say that you want to multiply together a very long list of numbers 20:45:56 one of the neat things about multiplying is that if a zero appears anywhere, you know the result is zero 20:46:02 sure 20:46:04 so how can we use that knowledge to do an optimization? 20:46:16 well, the easy first one is that if we ever reach a zero, we can return immediately 20:46:27 but that still requires us to return back up all N call frames 20:46:27 -!- sepult [n=user@xdsl-87-78-28-14.netcologne.de] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 20:46:33 we can do better than that using call/cc 20:46:42 instead, as we search, we pass along the continuation that wants the result 20:46:47 Aha! 20:46:51 and if we ever see 0, we immediately invoke the continuation with 0 :) 20:47:09 And if not, you call the continuation with your final result? 20:47:10 this causes an immediate return "all the way back to the first caller" 20:47:12 right 20:48:08 So, it seems to me that the code that immediately follows a continuation call sequentially is unreachable, like code after a return; in Java. 20:48:20 that depends what the continuation does! 20:48:31 if you got the continuation with call/cc, probably yes 20:48:33 but there are other ways 20:48:40 I mean, a regular lambda could be passed in instead 20:49:07 here's that list-search example: 20:49:08 > (define (lmul k x v) (if (null? x) (k v) (if (= (car x) 0) (k 0) (lmul k (cdr x) (* v (car x)))))) 20:49:11 > (call/cc (lambda (k) (lmul k '(1 2 3 4 0) 1))) 20:49:26 (this is not a great example, since I used an accumulator, which makes it tail-recursive anyway :P) 20:49:43 but you can see what the continuation is doing 20:49:56 copumpkin [n=pumpkin@pool-70-108-219-164.washdc.east.verizon.net] has joined #scheme 20:50:24 another good example is N-ary tree search, although in that case you don't need to use call/cc 20:50:40 basically, whenever you search down branch n, you pass that search a continuation that will search down branch n + 1 20:51:37 I don't know any other ways to get my hands on continuations yet. :-P 20:51:51 you can just create one :P 20:52:17 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 20:52:30 I mean, I can also do this: 20:52:31 > (lmul (lambda (v) (display v)) '(1 2 3 4 0) 1) 20:52:48 in which case the continuation *does* return, which causes lmul to return back up its call stack as normal 20:52:59 pumpkin [n=pumpkin@c-98-204-160-42.hsd1.va.comcast.net] has joined #scheme 20:53:08 we have a pumpkin and a copumpkin at the same time 20:53:11 this sounds dangerous 20:53:26 jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 20:54:41 there is also, iirc, call/ec 20:54:45 lol 20:59:09 Elly: That's freaky. If calling the continuation is always in a tail position, it seems that there's no way to tell the difference between being passed a lambda and being passed a true continuation. 20:59:18 (Besides tests, I mean.) 20:59:27 I don't see why that would be a desirable thing to be able to tell :P 20:59:43 True. 21:00:15 fwiw, there is continuation? 21:00:59 I've been doing some stuff in JS where I use continuations, of a sort. 21:01:07 that's kind of worrisome 21:01:50 usually in the context of event-driven code, where I have to "pause" the computation and continue it in a callback. 21:01:58 oh 21:02:02 yeah, you can do that :P 21:02:19 What's interesting about that scenario is that I sometimes execute more code after the "continuation" is called. 21:02:38 it sounds like it is a callback rather than a continuation then 21:02:46 continuations don't usually return, I think 21:03:27 Yeah, so now I'm having to rewrite the way I think about "continuations". 21:07:54 Elly: The thing about callbacks is that any consumer of a callback requires the provider's call stack to be OK with just ending and putting everything in the callback. 21:08:13 It looks like continuations can integrate just fine with code that expects a return. 21:08:28 -!- jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has quit [] 21:08:48 A calls B, B initiates an asynchronous call C and provides a callback -> A's remaining code never gets to run. 21:09:42 But if B uses call/cc to initiate the asynchronous call C, then B can return to A. Nifty. 21:12:33 -!- copumpkin [n=pumpkin@pool-70-108-219-164.washdc.east.verizon.net] has quit [Read error: 110 (Connection timed out)] 21:15:27 Elly: Certain browser events require a synchronous return, such as window.onBeforeUnload, which expects to receive a String or Undefined from whatever event handlers have subscribed to it. 21:15:39 mhm? 21:16:02 The event handlers can't do asynchronous actions using callbacks, because as soon as they return, the browser window closes. 21:16:40 (That event indicates the user is trying to close the window. You can return a string to request that the hit Cancel.) 21:17:22 If JS had continuations, maybe the asynchronous stuff could finish and allow the close. 21:29:22 masm [n=masm@bl10-209-43.dsl.telepac.pt] has joined #scheme 21:32:37 -!- hotblack23 [n=jh@p5B055AF3.dip.t-dialin.net] has quit ["Leaving."] 21:55:55 exexex [n=chatzill@85.101.217.60] has joined #scheme 21:59:10 -!- pumpkin [n=pumpkin@c-98-204-160-42.hsd1.va.comcast.net] has quit [Read error: 110 (Connection timed out)] 21:59:39 -!- easy4 [n=easy4@c-68-45-192-148.hsd1.pa.comcast.net] has quit [Read error: 110 (Connection timed out)] 22:07:57 arcfide [n=arcfide@adsl-99-14-210-197.dsl.bltnin.sbcglobal.net] has joined #scheme 22:11:34 -!- exexex [n=chatzill@85.101.217.60] has quit ["ChatZilla 0.9.85 [Firefox 3.5.2/20090729211433]"] 22:17:58 -!- Adrinael [n=adrinael@barrel.rolli.org] has quit [simmons.freenode.net irc.freenode.net] 22:18:25 Adrinael [n=adrinael@barrel.rolli.org] has joined #scheme 22:24:30 -!- MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 22:30:28 MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 22:40:23 peter_12 [n=peter_12@S01060024016bb36c.gv.shawcable.net] has joined #scheme 22:43:59 jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 22:45:55 -!- dzhus [n=sphinx@93-81-177-254.broadband.corbina.ru] has quit [Remote closed the connection] 22:49:50 -!- pantsd__ [n=hkarau@nat/uwaterloo/x-451113afec86aca2] has quit [Read error: 110 (Connection timed out)] 22:57:46 I know that this is going to sound crazy, but does anyone have a readable, usable Lisp indentation and style guide for proportional width fonts? 23:06:11 r2q2 [n=user@c-24-7-212-60.hsd1.il.comcast.net] has joined #scheme 23:08:17 That sounds crazy, arcfide! 23:11:37 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 23:15:00 if you have 1cm tab stops or something, it shouldn't be too bad 23:15:40 ray: Hrm.... 23:17:18 rouslan [n=Rouslan@unaffiliated/rouslan] has joined #scheme 23:31:41 It looks like for a few extra lines, I can make it work. :-) 23:31:43 -!- ofthelesser [i=steve@cpe-174-100-207-183.neo.res.rr.com] has quit [Success] 23:31:48 Who cares about LoC anyway? 23:32:49 *arcfide* is surprised that he doesn't loose any readability. 23:33:19 -!- Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has left #scheme 23:34:36 -!- arcfide [n=arcfide@adsl-99-14-210-197.dsl.bltnin.sbcglobal.net] has left #scheme 23:43:33 dmoerner [n=dmr@ppp-71-139-30-13.dsl.snfc21.pacbell.net] has joined #scheme 23:45:03 Yes, he certainly wouldn't want to loose any readability upon the world. 23:52:54 copumpkin [n=pumpkin@c-98-204-160-42.hsd1.va.comcast.net] has joined #scheme