00:00:03 does it have the same drawings? 00:00:17 with the elephants..? 00:00:37 writing your own cons, car, cdr, set-cdr!, and set-car! in a lower level langue is a good exercise 00:00:39 Sadly, it does not. 00:01:08 And it calls The Law of Cons "Principle No. 3." Isn't that catchy?? 00:01:20 I haven't counted Duane's elephants yet... 00:01:55 It does have the same fixation on foodstuffs. 00:02:32 Daemmerung: Yes, it's pretty expected to have a similar approach. HtDP takes that much further and together with the language level concept makes sure that you learn what lists are before you're aware of pairs in general. 00:02:59 IOW, the whole thing is carefully designed to avoid the kind of confusion that morphir demonstrates. 00:08:21 I am a pretty huge fan of /The Little Schemer/. But it is not a programming text, and it is absolutely not a guide to learning Scheme. "The goal of this book is to teach the reader to think recursively." 00:09:27 IOW, I have not studied HtDP, but when I briefly glimpsed in it, it appeared as a boring book 00:10:45 it may be ignorance on my side tho 00:11:46 morphir: but you ARE here displaying a pretty profound low-level confusion. HtDP is designed to spare you that confusion. 00:12:02 (Whether it actually would do so, I don't know. A little late for that in my case!) 00:12:55 I was more confued with the naming rahter than the concept of cons 00:13:10 Im still confused actually. 00:13:10 I never had a problem w/ pair vs list, but the whole quote-denotation thing threw me for a terrible loop, oh those many years ago. 00:14:13 I'm still learning quasiquote nesting rules 00:15:22 for a list to be a valid list, it has to constitute of a series of two (or more) linked pairs 00:15:33 No, morphir. 00:15:36 The empty list is still a list. 00:15:52 hehe.. true 00:15:53 morphir: stop it with the C/Pascal talk. Just think pairs and the contents of pairs for a while. 00:15:59 A list is a list is a list. 00:16:49 very well then 00:17:04 (x . y) is a pair; if that y happens to be (), then it is a list as well. 00:17:09 A list of one element, namely a pair whose cdr is nil, is also a list. 00:17:13 (x . (y . ())) is a list. 00:17:17 () is a list. 00:17:18 Only one pair is involved in a list with one element, though. 00:17:59 ahah, I read "A list of one element" as "A list of one elephant" 00:18:13 bytecolor: you gots Duane on the brain 00:18:30 nod ;) 00:18:32 *Daemmerung* wishes he had a list of one elephant 00:21:45 abelson said, 'when you have a pair, you have everything' 00:21:52 somthing like that.. 00:22:34 ok then, so a pair is pair, and a list is list 00:22:46 I did not manage to change the world today either 00:24:11 so, what is lambda then? 00:24:37 why did they not call it 'cpu'? :) 00:25:54 lambda the ultimate! hrm... or something like that... checks the book 00:26:02 I think you'd be better served by working sequentially through first one of your books, then the other. Pairs you will get to in SICP 2.2. 00:26:16 automejja [n=edwin@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 00:26:52 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 00:28:26 Daemmerung: good point 00:32:54 -!- mario-goulart [n=user@67.205.85.241] has quit [Remote closed the connection] 00:35:24 In the la-plus-ça-change department, I offer the following quote. 00:36:09 JoelMcCracken [n=joelmccr@pool-96-236-180-142.pitbpa.east.verizon.net] has joined #scheme 00:36:41 my blue cow, gotta get her back here somehow? 00:36:57 "...it is important not to lose sight of the fact that there is a difference between training and education. If computer science is a fundamental discipline, then university education in this field should empahsize enduring fundamental principles rather than transient current technology." 00:37:15 Dated 1970. /sighs 00:37:36 actually, cons does not creates lists, it mutates lists 00:37:52 morphir: No. 00:38:06 Daemmerung: computer science should do both. too often it does neither very well. 00:38:14 (cons 1 '()) 00:38:39 -!- choas [n=lars@p5B0DBA40.dip.t-dialin.net] has quit ["leaving"] 00:38:55 will just create a new list based on the empty list entity 00:39:10 So where is the mutation? 00:39:15 hence it mutates 00:39:19 No. 00:39:29 -!- JoelMcCracken [n=joelmccr@pool-96-236-180-142.pitbpa.east.verizon.net] has quit [Client Quit] 00:40:30 -!- Riastradh [n=riastrad@tissot.csail.mit.edu] has quit ["leaving"] 00:41:04 morphir: mutating something requires that it had a previous assignment 00:41:10 and you change the assignment 00:41:32 *Daemmerung* is outta here 00:41:37 later 00:41:41 hehe.. 00:41:44 late man! :) 00:41:50 later* 00:42:40 so its a new entity all alone. 00:42:44 JoelMcCracken [n=joelmccr@pool-96-236-180-142.pitbpa.east.verizon.net] has joined #scheme 00:42:51 morphir: you can take something that had a previous assignment and use it to build something else 00:43:04 that's not mutation, unless you change the assignment in the process 00:43:32 its a reference then 00:51:26 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 00:51:41 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 00:54:11 morphir: yeah, sort of 00:57:09 Adamant: what word would you use? 00:58:04 morphir: reference is a really overloaded term 00:58:28 don't think of it as, say, Perl references or whatever 00:58:52 so 00:58:58 (cons 1 '()) 00:59:18 you're adding 1 to the empty list and creating a list with the element 1 in it 01:03:55 -!- masm [n=masm@bl10-6-252.dsl.telepac.pt] has left #scheme 01:07:20 abelson uses (cons 1 (cons 2 (cons 3 (cons 4 nil)))) 01:07:31 > (car '(5 . 2)) 01:07:32 5 01:07:32 > (cdr '(5 . 2)) 01:07:32 2 01:07:34 > err 01:07:37 sorry 01:08:15 what would I use instead of nil? 01:08:33 as nil is uknown in r5rs 01:08:37 '() 01:08:42 or null 01:09:14 null does not work 01:09:40 how about '() 01:10:18 it works, but I was looking for the word 01:10:23 :) 01:11:09 (define nil '()) 01:11:22 I suppose (list) works 01:11:29 jonrafkind: yup :) 01:11:59 not that it matters much but (list) might unnecessarily allocate whereas '() probably wont 01:12:40 allocate what? 01:12:46 memory 01:12:53 oh 01:15:28 Unlikely. 01:16:12 pjb [n=t@228.Red-79-149-145.staticIP.rima-tde.net] has joined #scheme 01:16:23 jonrafkind: (eq? '() (list)) => #t 01:16:36 oh ok 01:26:30 lvh [n=lvh@83.101.50.67] has joined #scheme 01:27:50 -!- lvh_ [n=lvh@83.101.56.42] has quit [Read error: 60 (Operation timed out)] 01:35:06 -!- kniu [n=kniu@CMU-311358.WV.CC.CMU.EDU] has quit [Read error: 110 (Connection timed out)] 01:37:26 -!- mathk [n=mathk@lns-bzn-24-82-64-166-91.adsl.proxad.net] has quit [Read error: 110 (Connection timed out)] 01:37:55 kniu [n=kniu@HOHOHO.RES.CMU.EDU] has joined #scheme 01:38:20 RageOfThou [n=RageOfTh@users-55-144.vinet.ba] has joined #scheme 01:38:21 -!- MrFahrenheit [n=RageOfTh@users-55-144.vinet.ba] has quit [Read error: 113 (No route to host)] 01:41:24 lvh_ [n=lvh@83.101.50.168] has joined #scheme 01:45:18 -!- automejja [n=edwin@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Read error: 104 (Connection reset by peer)] 01:46:12 automejja [n=edwin@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 01:54:52 -!- lvh [n=lvh@83.101.50.67] has quit [Read error: 110 (Connection timed out)] 02:02:52 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 02:03:07 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 02:13:27 davazp [n=user@56.Red-79-152-90.dynamicIP.rima-tde.net] has joined #scheme 02:14:20 -!- chandler` [n=n@opendarwin/developer/chandler] has left #scheme 02:21:14 -!- tjaway [n=timj@e176199229.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 02:21:30 tjaway [n=timj@e176213140.adsl.alicedsl.de] has joined #scheme 02:21:52 hrm, is / in a symbol generally assumed to mean `with' parse/form = parse-with-form 02:22:37 Yes, that's a fairly well-known convention. 02:23:00 ok 02:24:26 less typing, I like it ;) 02:24:32 -!- foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has quit [Remote closed the connection] 02:24:35 foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has joined #scheme 02:24:59 I try not to consider the amount of typing when choosing a symbol name, but rather readability. 02:25:12 -!- pavelludiq [n=quassel@91.139.197.90] has quit [Read error: 104 (Connection reset by peer)] 02:25:56 If the use of / as a separator meaning "with" reduces an unwieldy long identifier to a managable length, I'm all for it. 02:25:59 nod, if you know the conventions, it does help ;) 02:32:02 -!- rdd [n=user@c83-250-52-182.bredband.comhem.se] has quit [Remote closed the connection] 02:33:16 lolcow [n=lolcow@dsl-243-1-100.telkomadsl.co.za] has joined #scheme 02:34:33 -!- leppie [n=lolcow@dsl-243-1-100.telkomadsl.co.za] has quit [Read error: 104 (Connection reset by peer)] 02:35:39 -!- jonrafkind [n=jon@c-98-202-82-46.hsd1.ut.comcast.net] has quit [Read error: 110 (Connection timed out)] 02:36:12 jonrafkind [n=jon@c-98-202-82-46.hsd1.ut.comcast.net] has joined #scheme 02:51:57 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 02:59:32 offby1` [n=user@q-static-138-125.avvanta.com] has joined #scheme 03:00:50 -!- morphir [n=morphir@84-52-234.12.3p.ntebredband.no] has quit [Read error: 113 (No route to host)] 03:01:12 -!- blackened` [n=blackene@ip-89-102-22-70.karneval.cz] has quit [Client Quit] 03:04:28 lvh [n=lvh@83.101.76.49] has joined #scheme 03:06:43 -!- automejja [n=edwin@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 03:06:51 -!- mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit ["ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.0.14/2009090900]"] 03:07:35 -!- swathanthran [n=user@unaffiliated/shyam-k/x-8459115] has quit [Remote closed the connection] 03:11:30 karlw [i=17389@tsunami.OCF.Berkeley.EDU] has joined #scheme 03:13:30 -!- offby1 [n=user@pdpc/supporter/monthlybyte/offby1] has quit [Read error: 113 (No route to host)] 03:18:57 bokr [n=eduska@95.154.102.124] has joined #scheme 03:20:21 -!- lvh_ [n=lvh@83.101.50.168] has quit [Read error: 110 (Connection timed out)] 03:20:52 rudybot_ [n=luser@offby1.xen.prgmr.com] has joined #scheme 03:21:56 nowhereman [n=pierre@lec67-4-82-235-57-28.fbx.proxad.net] has joined #scheme 03:22:10 -!- JoelMcCracken [n=joelmccr@pool-96-236-180-142.pitbpa.east.verizon.net] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- cky [n=cky@cpe-065-190-148-048.nc.res.rr.com] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- nowhere_man [n=pierre@lec67-4-82-235-57-28.fbx.proxad.net] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- sstrickl [n=sstrickl@pool-151-203-30-77.bos.east.verizon.net] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- REPLeffect [n=REPLeffe@69.54.115.254] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- specbot [n=specbot@common-lisp.net] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- mornfall [n=mornfall@kde/developer/mornfall] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- rudybot [n=luser@offby1.xen.prgmr.com] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- Armageddon00 [n=danking@zerowing.ccs.neu.edu] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- ironChicken [n=nrichard@mx.lurk.org] has quit [verne.freenode.net irc.freenode.net] 03:22:10 -!- ecraven [n=nex@octonex.swe.uni-linz.ac.at] has quit [verne.freenode.net irc.freenode.net] 03:23:45 Armageddon00 [n=danking@zerowing.ccs.neu.edu] has joined #scheme 03:24:25 cky [n=cky@cpe-065-190-148-048.nc.res.rr.com] has joined #scheme 03:24:27 mornfall [n=mornfall@anna.fi.muni.cz] has joined #scheme 03:37:11 -!- davazp [n=user@56.Red-79-152-90.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 03:42:55 REPLeffect [n=REPLeffe@69.54.115.254] has joined #scheme 03:42:55 JoelMcCracken [n=joelmccr@pool-96-236-180-142.pitbpa.east.verizon.net] has joined #scheme 03:42:55 quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has joined #scheme 03:42:55 sstrickl [n=sstrickl@pool-151-203-30-77.bos.east.verizon.net] has joined #scheme 03:42:55 specbot [n=specbot@common-lisp.net] has joined #scheme 03:42:55 ironChicken [n=nrichard@mx.lurk.org] has joined #scheme 03:46:53 lvh_ [n=lvh@83.101.56.206] has joined #scheme 03:48:13 -!- lvh [n=lvh@83.101.76.49] has quit [Read error: 60 (Operation timed out)] 03:48:29 schoppenhauer [n=christop@unaffiliated/schoppenhauer] has joined #scheme 03:52:34 tjafk [n=timj@e176222249.adsl.alicedsl.de] has joined #scheme 03:53:26 -!- bytecolor [n=user@32.154.173.234] has quit [Read error: 110 (Connection timed out)] 03:55:38 -!- foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has quit [Remote closed the connection] 03:55:43 foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has joined #scheme 04:03:18 -!- schoppenhauer [n=christop@unaffiliated/schoppenhauer] has quit [] 04:03:44 araujo [n=araujo@gentoo/developer/araujo] has joined #scheme 04:04:27 -!- karlw [i=17389@tsunami.OCF.Berkeley.EDU] has quit ["Lost terminal"] 04:08:47 -!- tjaway [n=timj@e176213140.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 04:10:07 -!- RageOfThou [n=RageOfTh@users-55-144.vinet.ba] has quit [Read error: 113 (No route to host)] 04:17:55 Modius [n=Modius@cpe-70-123-130-159.austin.res.rr.com] has joined #scheme 04:40:27 schoppenhauer [n=christop@unaffiliated/schoppenhauer] has joined #scheme 04:44:43 -!- foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has quit [Remote closed the connection] 04:44:50 foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has joined #scheme 04:45:30 lvh [n=lvh@83.101.56.38] has joined #scheme 04:48:34 karlw [i=17389@tsunami.OCF.Berkeley.EDU] has joined #scheme 04:57:53 -!- lvh_ [n=lvh@83.101.56.206] has quit [Read error: 110 (Connection timed out)] 05:02:14 -!- karlw [i=17389@tsunami.OCF.Berkeley.EDU] has left #scheme 05:04:19 -!- foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has quit [Remote closed the connection] 05:08:34 karlw [i=17389@tsunami.OCF.Berkeley.EDU] has joined #scheme 05:11:49 -!- karlw [i=17389@tsunami.OCF.Berkeley.EDU] has left #scheme 05:13:35 -!- schoppenhauer [n=christop@unaffiliated/schoppenhauer] has quit [] 05:19:32 foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has joined #scheme 05:34:05 -!- foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has quit [Remote closed the connection] 05:37:22 foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has joined #scheme 05:49:38 -!- Poeir [n=Poeir@c-98-228-48-133.hsd1.il.comcast.net] has quit ["Leaving"] 05:50:21 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 06:02:55 -!- foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has quit [Remote closed the connection] 06:11:05 nutmegmagi [n=swalters@pool-71-101-160-3.tampfl.dsl-w.verizon.net] has joined #scheme 06:30:15 drwhat [n=drwho@c-98-225-208-183.hsd1.pa.comcast.net] has joined #scheme 06:33:27 -!- drwho [n=drwho@c-98-225-208-183.hsd1.pa.comcast.net] has quit [Nick collision from services.] 06:33:39 -!- drwhat [n=drwho@c-98-225-208-183.hsd1.pa.comcast.net] has quit [Client Quit] 06:34:12 drwho [n=drwho@c-98-225-208-183.hsd1.pa.comcast.net] has joined #scheme 06:43:48 -!- JoelMcCracken [n=joelmccr@pool-96-236-180-142.pitbpa.east.verizon.net] has quit ["Leaving"] 07:16:33 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 07:16:44 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 07:44:53 -!- jonrafkind [n=jon@c-98-202-82-46.hsd1.ut.comcast.net] has quit [Read error: 110 (Connection timed out)] 07:55:56 -!- kilimanjaro [n=kilimanj@unaffiliated/kilimanjaro] has quit ["Leaving"] 08:03:10 -!- NNshag [n=shag@lns-bzn-60-82-254-220-198.adsl.proxad.net] has quit [Read error: 110 (Connection timed out)] 08:05:10 NNshag [n=shag@lns-bzn-44-82-249-234-12.adsl.proxad.net] has joined #scheme 08:11:51 bytecolor [n=user@32.156.189.134] has joined #scheme 08:14:06 -!- nutmegmagi [n=swalters@pool-71-101-160-3.tampfl.dsl-w.verizon.net] has left #scheme 08:16:40 mmc [n=mima@cs27122078.pp.htv.fi] has joined #scheme 08:25:07 bytecolo` [n=user@32.152.81.222] has joined #scheme 08:25:33 -!- bytecolor [n=user@32.156.189.134] has quit [Nick collision from services.] 08:28:42 -!- bytecolo` [n=user@32.152.81.222] has quit [Remote closed the connection] 08:28:53 bytecolo` [n=user@32.152.81.222] has joined #scheme 08:29:41 -!- bytecolo` [n=user@32.152.81.222] has left #scheme 08:30:07 bytecolor [n=user@32.152.81.222] has joined #scheme 08:44:11 reprore [n=reprore@ntkngw356150.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 08:55:58 dmoerner [n=dmr@90-84.res.pomona.edu] has joined #scheme 08:56:15 mmc1 [n=mima@cs27122078.pp.htv.fi] has joined #scheme 09:06:44 hiacre [n=hiacre@88-97-27-187.dsl.zen.co.uk] has joined #scheme 09:07:01 -!- hiacre [n=hiacre@88-97-27-187.dsl.zen.co.uk] has left #scheme 09:12:21 -!- bytecolor [n=user@32.152.81.222] has quit [Read error: 110 (Connection timed out)] 09:16:26 -!- quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has quit [] 09:19:07 quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has joined #scheme 09:21:23 pavelludiq [n=quassel@91.139.197.90] has joined #scheme 09:54:34 choas [n=lars@p5B0DDCF5.dip.t-dialin.net] has joined #scheme 10:10:02 -!- jmcphers_ [n=jmcphers@218.185.108.156] has quit [Remote closed the connection] 10:16:00 -!- drwho is now known as linear 10:16:05 -!- linear is now known as drwho 10:17:12 sphex_ [n=nobody@modemcable072.42-37-24.mc.videotron.ca] has joined #scheme 10:20:25 -!- sphex [n=nobody@modemcable072.42-37-24.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 10:22:21 mario-goulart [n=user@67.205.85.241] has joined #scheme 10:29:37 -!- mmc1 [n=mima@cs27122078.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 10:32:17 -!- drwho [n=drwho@c-98-225-208-183.hsd1.pa.comcast.net] has left #scheme 10:36:50 -!- reprore [n=reprore@ntkngw356150.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 10:38:32 mmc1 [n=mima@cs27122078.pp.htv.fi] has joined #scheme 10:43:40 -!- quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has quit [] 10:49:39 -!- lvh [n=lvh@83.101.56.38] has quit ["leaving"] 11:00:45 mathk [n=mathk@lns-bzn-45-82-65-174-48.adsl.proxad.net] has joined #scheme 11:00:48 visof [n=visof@41.238.232.12] has joined #scheme 11:06:02 -!- mmc1 [n=mima@cs27122078.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 11:13:13 -!- lolcow [n=lolcow@dsl-243-1-100.telkomadsl.co.za] has quit [] 11:14:41 -!- visof [n=visof@41.238.232.12] has quit [Remote closed the connection] 11:20:50 leppie [n=lolcow@dsl-243-1-100.telkomadsl.co.za] has joined #scheme 11:23:41 dline [n=d@c-98-225-208-183.hsd1.pa.comcast.net] has joined #scheme 11:28:36 Edico [n=Edico@unaffiliated/edico] has joined #scheme 11:35:30 -!- dline is now known as drwho 11:38:23 spoke [n=msw@75-101-102-192.dsl.static.sonic.net] has joined #scheme 11:42:42 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit ["Leaving."] 11:42:53 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 11:45:02 morphir [n=morphir@84-52-234.12.3p.ntebredband.no] has joined #scheme 11:56:15 incubot: it never occurred to me that riastradh is like batman; but here is incontrovertible evidence: http://adamwest.tripod.com/b-lectur.htm 11:56:19 http://1946875.tripod.com/Cloud-break30.m4a 12:12:45 MrFahrenheit [n=RageOfTh@users-33-228.vinet.ba] has joined #scheme 12:22:32 -!- Sergio` [n=Sergio`@a89-152-184-50.cpe.netcabo.pt] has quit ["leaving"] 12:29:20 is dynamic-wind, by the way, the conventional way to implement with-* procedures? 12:30:07 -!- bgs100 [n=ian@unaffiliated/bgs100] has quit [Read error: 110 (Connection timed out)] 12:42:16 foof [n=user@FL1-125-199-31-117.osk.mesh.ad.jp] has joined #scheme 12:42:37 nullpo_ [n=nullpo@221x252x46x83.ap221.ftth.ucom.ne.jp] has joined #scheme 12:44:02 pbusser [n=pbusser@ip138-238-174-82.adsl2.static.versatel.nl] has joined #scheme 12:49:24 -!- screw_chanmode_r [i=sloyd@station457.vo3.net] has left #scheme 12:49:45 chanmode_r_sucks [i=sloyd@station457.vo3.net] has joined #scheme 12:53:33 masm [n=masm@bl10-6-252.dsl.telepac.pt] has joined #scheme 12:59:41 -!- nullpo [n=nullpo@221x252x46x83.ap221.ftth.ucom.ne.jp] has quit [Read error: 110 (Connection timed out)] 13:05:50 -!- morphir [n=morphir@84-52-234.12.3p.ntebredband.no] has quit [Read error: 113 (No route to host)] 13:09:47 blackened` [n=blackene@ip-89-102-22-70.karneval.cz] has joined #scheme 13:23:23 -!- ASau [n=user@83.69.227.32] has quit [Read error: 60 (Operation timed out)] 13:23:46 visof [n=visof@41.238.233.189] has joined #scheme 13:24:41 larry65 [n=larry65@d122-105-195-111.meb12.vic.optusnet.com.au] has joined #scheme 13:26:09 -!- visof [n=visof@41.238.233.189] has quit [Remote closed the connection] 13:29:16 borism [n=boris@213-35-235-233-dsl.end.estpak.ee] has joined #scheme 13:30:30 hotblack23 [n=jh@p4FC5AA51.dip.t-dialin.net] has joined #scheme 13:31:06 bgs100 [n=ian@unaffiliated/bgs100] has joined #scheme 13:31:26 -!- borism_ [n=boris@213-35-233-194-dsl.end.estpak.ee] has quit [Read error: 60 (Operation timed out)] 13:37:22 -!- larry65 [n=larry65@d122-105-195-111.meb12.vic.optusnet.com.au] has left #scheme 13:41:06 Jafet1 [n=Jafet@unaffiliated/jafet] has joined #scheme 13:41:42 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Nick collision from services.] 13:41:54 -!- Jafet1 is now known as Jafet 13:47:21 -!- masm [n=masm@bl10-6-252.dsl.telepac.pt] has quit [Read error: 110 (Connection timed out)] 13:47:51 foof: I confirm that all issues are gone now. Thanks. 13:48:22 masm [n=masm@bl10-245-183.dsl.telepac.pt] has joined #scheme 13:59:05 luz [n=davids@189.122.90.116] has joined #scheme 14:11:27 great 14:11:41 -!- bgs100 [n=ian@unaffiliated/bgs100] has quit [Read error: 110 (Connection timed out)] 14:24:10 and now that I've moved the workaround closer to the core, I can get rid of hacks like the definition of eof in io.scm :) 14:24:22 (stupid glibc) 14:29:53 That fmemopen issue was breaking other things, you mean? You mentioned that the problem was already known. 14:34:06 Oh, ok, I see what you mean. 14:37:52 Yes, (open-input-string "") would always produce a port that would segfault on reading because of the fmemopen bug. 14:38:33 ... although chibi should've been checking the result and just throwing an exception instead of segfaulting. 14:39:26 Yes, a NULL return from fmemopen should always be a failure, if I read it correctly 14:40:43 and errno should tell you what it didn't like 14:42:32 (well in my case it was "Invalid argument", so one still needs to guess...) 14:45:33 If the glibc maintainers are reluctant to fix it I'll do it for them. 14:46:21 But chibi will have to use the workaround for a _long_ time, to accomodate old systems. 14:47:34 -!- snorble [n=snorble@s83-179-14-105.cust.tele2.se] has quit [Remote closed the connection] 14:49:55 mickn [n=mickn@69-196-178-78.dsl.teksavvy.com] has joined #scheme 14:50:00 snorble [n=none@s83-179-14-105.cust.tele2.se] has joined #scheme 14:51:04 I don't know, it seems like it is a well conscious choice the one to reject size==0, I mean, it's not an overlook, there's specific code to do it... Maybe it's mandated by posix or some other standard? 14:51:19 The man page is not clear about it, though 14:51:22 xwl [n=user@125.34.171.81] has joined #scheme 14:52:49 No, reject empty strings is like rejecting empty files. How would it be if fopen returned NULL whenever the file was empty? 14:53:07 Plues it's really easy to support. 14:53:48 -!- xwl [n=user@125.34.171.81] has quit [Client Quit] 14:54:05 xwl [n=user@125.34.171.81] has joined #scheme 14:55:06 Oh, well, I agree that that behavious seems saner, but it would not be the first time that something not so sane has been standardized... we'll see, anyway :) 14:55:22 Oh wait, POSIX says the size should be non-zero :( 14:55:54 Here it is... exactly what I meant ... 14:57:02 -!- emma [n=em@unaffiliated/emma] has quit [Client Quit] 14:59:57 morphir [n=morphir@84-52-234.12.3p.ntebredband.no] has joined #scheme 15:05:16 foof: I've beed reading your TODO for chibi, what are the next items you'll be implementing? 15:07:47 ASau [n=user@83.69.227.32] has joined #scheme 15:08:25 probably an x86(_64) backend 15:11:36 Does that mean the ability of creating stand-alone binaries? 15:12:15 Not necessarily. 15:12:51 is it more line jit compilation, then? 15:13:00 *like 15:13:21 Yes, basically JIT but I would skip the VM bytecode step, and go directly from AST to native code. 15:14:13 It seems it could also mean stand-alone binaries, then, or is it a precise choice not to have them? 15:15:09 The current chibi allows stand-alone binaries. 15:15:53 Oh, I didn't know... is it related to the recent static-related things you committed? 15:16:13 Right. Well, it also depends on what you mean by stand-alone. 15:16:50 You still need to load scheme source (init.scm, config.scm and your own code) at runtime. 15:17:02 I'll need to give it a look. 15:17:24 Though you could compile all the needed files as strings to load from your own custom main. 15:17:48 What I mean by stand-alone is exactly not needing any source. Maybe the various .scm files could be compiled. 15:17:54 The new changes allow you to compile any FFI code statically into the executable, instead of using dlopen. 15:18:31 schoppenhauer [n=christop@unaffiliated/schoppenhauer] has joined #scheme 15:18:45 Oh, ok. so it only removes the .so files. 15:18:49 right 15:19:49 stand-alone executables are what you can get with gambit-c, for instance, but there it's different, as you go through C, I guess... 15:20:13 borism_ [n=boris@213-35-234-36-dsl.end.estpak.ee] has joined #scheme 15:21:08 I could add a flag and a few switches to compile all modules under lib/ as a C string and load from there. 15:22:26 Allright, I see. So it could be possible. I think there are use cases for being able to deploy an application as a single binary file. 15:23:48 But there would be more motivation for this with an x86 backend, or even a fasl format, since it would speedup loading. 15:24:23 -!- borism [n=boris@213-35-235-233-dsl.end.estpak.ee] has quit [Read error: 60 (Operation timed out)] 15:24:32 I understand. I just thought that the backend was a pre-requisite. 15:30:00 bare-metal support also intrigues me... does thet mean it would run without an OS, maybe acting as the OS? 15:30:09 yep 15:30:19 -!- mreggen [n=mreggen@cm-84.215.18.49.getinternet.no] has quit ["leaving"] 15:30:39 Is there already anything like that from other schemes? 15:31:43 There's a little Scheme written in assembly called Dream. 15:31:59 Not sure if there's anything else actively supported. 15:32:26 Interesting. I'll give it a look. Thanks 15:32:42 I'll leave you to your work now :) Thanks! 15:32:46 How is that different from compiling another small "scheme" to an executable, foof? 15:32:49 np 15:33:04 Jafet: How is what different? 15:33:15 Writing a scheme in assembly 15:33:24 rdd [n=rdd@c83-250-52-182.bredband.comhem.se] has joined #scheme 15:33:31 Oh... it's less maintainable ;) 15:33:53 Perfect for enterprise solutions 15:33:54 But the point of Dream is that it's a combination Scheme+OS - it doesn't depend on anything else. 15:35:33 Hmm, interesting but probably just a curiosity 15:36:53 (For even less maintainability, write scheme in forth) 15:40:57 -!- xwl [n=user@125.34.171.81] has quit [Remote closed the connection] 15:43:24 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Remote closed the connection] 15:43:40 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 15:47:56 karme [n=user@HSI-KBW-095-208-171-082.hsi5.kabel-badenwuerttemberg.de] has joined #scheme 15:54:33 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit ["+++ killed by SIGSEGV +++"] 16:11:31 -!- Belaf [n=campedel@net-93-144-10-196.t2.dsl.vodafone.it] has quit ["Leaving."] 16:12:46 Belaf [n=campedel@net-93-144-10-196.t2.dsl.vodafone.it] has joined #scheme 16:18:00 antoszka [n=antoszka@unaffiliated/antoszka] has joined #scheme 16:19:05 -!- blackened` [n=blackene@ip-89-102-22-70.karneval.cz] has quit [Client Quit] 16:19:21 blackened` [n=blackene@ip-89-102-22-70.karneval.cz] has joined #scheme 16:23:57 parolang [n=user@8e4a01246100775874c4f448e9887093.oregonrd-wifi-1261.amplex.net] has joined #scheme 16:33:16 hiacre [n=hiacre@88-97-27-187.dsl.zen.co.uk] has joined #scheme 16:38:34 -!- kloeri_ [i=kloeri@freenode/staff/exherbo.kloeri] has quit [Read error: 54 (Connection reset by peer)] 16:39:32 Lajla [n=Lajla@213-84-222-243.adsl.xs4all.nl] has joined #scheme 17:03:38 Sergio` [n=Sergio`@a89-152-184-50.cpe.netcabo.pt] has joined #scheme 17:04:32 -!- kniu [n=kniu@HOHOHO.RES.CMU.EDU] has quit [Read error: 60 (Operation timed out)] 17:05:32 kloeri__ [n=kloeri@freenode/staff/exherbo.kloeri] has joined #scheme 17:06:20 bgs100 [n=ian@unaffiliated/bgs100] has joined #scheme 17:07:46 -!- bokr [n=eduska@95.154.102.124] has quit ["Ex-Chat"] 17:10:40 -!- hiacre [n=hiacre@88-97-27-187.dsl.zen.co.uk] has quit [Remote closed the connection] 17:12:28 Hezy_ [n=Hezy@62.56.254.229] has joined #scheme 17:22:04 kniu [n=kniu@CMU-311358.WV.CC.CMU.EDU] has joined #scheme 17:31:36 jonrafkind [n=jon@c-98-202-82-46.hsd1.ut.comcast.net] has joined #scheme 17:32:08 melba [n=blee@unaffiliated/lazz0] has joined #scheme 17:40:41 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 104 (Connection reset by peer)] 17:46:25 eno [n=eno@nslu2-linux/eno] has joined #scheme 17:49:19 -!- Hezy_ [n=Hezy@62.56.254.229] has quit [Client Quit] 17:49:47 Hezy_ [n=Hezy@62.56.254.229] has joined #scheme 17:53:34 -!- Hezy_ [n=Hezy@62.56.254.229] has quit [Client Quit] 17:56:27 -!- copumpkin [n=copumpki@c-24-63-67-154.hsd1.nh.comcast.net] has quit [] 17:56:51 Hezy [n=Hezy@62.56.254.229] has joined #scheme 17:59:46 -!- parolang [n=user@8e4a01246100775874c4f448e9887093.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 18:00:35 -!- Sergio` [n=Sergio`@a89-152-184-50.cpe.netcabo.pt] has quit [Client Quit] 18:00:37 parolang [n=user@8e4a01246100775874c4f448e9887093.oregonrd-wifi-1261.amplex.net] has joined #scheme 18:00:41 Sergio` [n=Sergio`@a89-152-184-50.cpe.netcabo.pt] has joined #scheme 18:06:44 eno_ [n=eno@adsl-70-137-164-161.dsl.snfc21.sbcglobal.net] has joined #scheme 18:08:23 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 104 (Connection reset by peer)] 18:10:28 -!- karme [n=user@HSI-KBW-095-208-171-082.hsi5.kabel-badenwuerttemberg.de] has left #scheme 18:12:36 foof: any opinions you could share on the various computational-linguistics toolkits and the use of same from Scheme would be extremely welcome. 18:12:58 (Addressing you because I thought I remembered you as a NLPer.) 18:13:10 RageOfThou [n=RageOfTh@users-55-84.vinet.ba] has joined #scheme 18:14:16 Mind you, I know nothing about NLP beyond whatever I've read in AIMA some time ago. Dated. 18:14:36 quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has joined #scheme 18:15:19 Mr-Cat [n=Mr-Cat@bahirkin1507.static.corbina.ru] has joined #scheme 18:18:33 mmc1 [n=mima@cs27122078.pp.htv.fi] has joined #scheme 18:21:06 copumpkin [n=copumpki@dhcp-212-196.cs.dartmouth.edu] has joined #scheme 18:22:58 My last survey of the field suggested that I'd need to become a Java monster to use many of the most popular toolkits. I suppose I could use SISC, or Armed Bear (not Scheme). 18:27:22 Daemmerung: Perl was more popular for a while, and IIRC there are some Python libraries; but in any case for someone who's used to sniff around PL circles (as all Schemers are) the state of things in the NLP world is still pretty bad IMO. 18:27:59 Daemmerung: (Also, AMIA is not really the best place to keep track of NLP stuff.) 18:29:27 Just my 2 cents, but with the cross platform nasm assembler (or gas) and x86 Linux/Win/Mac, writing a nice, fairly portable Scheme in assembly isn't such a crazy prospect. 18:30:25 -!- MrFahrenheit [n=RageOfTh@users-33-228.vinet.ba] has quit [Read error: 110 (Connection timed out)] 18:32:54 Roughly comparable in craziness to http://asm.sourceforge.net/resources.html#projects 18:33:55 -!- mickn [n=mickn@69-196-178-78.dsl.teksavvy.com] has quit ["Leaving"] 18:34:25 Daemmerung: the word I was looking for last night, was a 'improper list' 18:34:33 > (cons 1 (cons 2 (cons 3 list))) 18:34:47 (1 2 3 . #) 18:38:48 eli: I agree. AIMA isn't the best way to keep track of anything, being an undergrad-level survey from a decade ago. 18:38:50 morphir: this is just because here list is not a list. 18:39:22 Let's just say then that my n00bness therein is extreme. 18:39:30 morphir: (let ((list '(4 5 6))) (cons 1 (cons 2 (cons 3 list)))) --> (1 2 3 4 5 6) 18:39:44 Daemmerung: What are you trying to do? 18:39:44 hiacre [n=hiacre@88-97-27-187.dsl.zen.co.uk] has joined #scheme 18:40:11 eli: Analyse the structure of legal writing. Almost no ontology needed. 18:40:45 What do you mean by "analyse"? 18:40:49 Daemmerung: would that mean that legal writing is vacuous? 18:41:08 eli: Take a written corpus and suggest alternative phrasings that adhere to a style guide. 18:42:21 It is-- supposedly-- a very syntax, sentence-structure driven decomposition. 18:42:39 Daemmerung: That sounds like a cute application. If you're interested, I can ask my wife for a few pointers. (She did some noticeable work on paraphrasing.) 18:43:24 eli: I would very much appreciate you asking her that. 18:43:25 But nothing like an ontology gets into the picture these days, unless you use it with a meaning that is close to "some probabilistic model". 18:44:21 Delightfully, it is supposed to be nearly meaningless. I am trying to recall the acronym of the case-study structure under discussion, here... damn it, it's escaping me now. 18:45:08 *Daemmerung* leaves to feed the family 18:48:00 Daemmerung: I'll email. 18:54:51 -!- parolang [n=user@8e4a01246100775874c4f448e9887093.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 19:01:36 -!- Mr-Cat [n=Mr-Cat@bahirkin1507.static.corbina.ru] has quit [Read error: 60 (Operation timed out)] 19:07:32 ecraven [n=nex@octonex.swe.uni-linz.ac.at] has joined #scheme 19:18:08 -!- Summermute [n=Summermu@c-68-55-123-182.hsd1.dc.comcast.net] has quit ["ChatZilla 0.9.86 [Firefox 3.6/20100115144158]"] 19:19:13 snearch_ [n=olaf@g224251114.adsl.alicedsl.de] has joined #scheme 19:19:33 -!- Hezy [n=Hezy@62.56.254.229] has quit [Read error: 60 (Operation timed out)] 19:23:48 -!- mmc1 [n=mima@cs27122078.pp.htv.fi] has quit [Client Quit] 19:42:16 -!- mario-goulart [n=user@67.205.85.241] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 19:43:10 sepult [n=levgue@xdsl-87-78-102-131.netcologne.de] has joined #scheme 19:43:23 -!- spoke [n=msw@75-101-102-192.dsl.static.sonic.net] has quit [Read error: 110 (Connection timed out)] 19:50:20 -!- bgs100 [n=ian@unaffiliated/bgs100] has quit ["Leaving"] 20:04:36 -!- pbusser [n=pbusser@ip138-238-174-82.adsl2.static.versatel.nl] has quit [Client Quit] 20:16:52 -!- quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has quit [] 20:17:23 quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has joined #scheme 20:29:00 -!- eno_ [n=eno@adsl-70-137-164-161.dsl.snfc21.sbcglobal.net] has quit [Client Quit] 20:29:13 eno [n=eno@nslu2-linux/eno] has joined #scheme 20:40:36 bgs100 [n=ian@unaffiliated/bgs100] has joined #scheme 20:40:59 -!- uman [n=uman@unaffiliated/uman] has quit ["leaving"] 20:42:23 -!- hiacre [n=hiacre@88-97-27-187.dsl.zen.co.uk] has quit [Remote closed the connection] 20:51:30 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit ["Leaving."] 20:55:57 -!- melba [n=blee@unaffiliated/lazz0] has quit ["She's about as sexually appealing as an Excel spreadsheet."] 21:00:25 jmcphers [n=jmcphers@218.185.108.156] has joined #scheme 21:10:54 Summermute [n=Summermu@c-68-55-123-182.hsd1.dc.comcast.net] has joined #scheme 21:11:29 -!- pavelludiq [n=quassel@91.139.197.90] has quit [Read error: 104 (Connection reset by peer)] 21:22:09 -!- kloeri__ [n=kloeri@freenode/staff/exherbo.kloeri] has quit [Read error: 104 (Connection reset by peer)] 21:24:59 karme [n=user@HSI-KBW-095-208-171-082.hsi5.kabel-badenwuerttemberg.de] has joined #scheme 21:30:22 -!- tomaw__ [i=tom@freenode/staff/tomaw] has quit [K-lined] 21:31:18 -!- karme [n=user@HSI-KBW-095-208-171-082.hsi5.kabel-badenwuerttemberg.de] has quit [Remote closed the connection] 21:31:56 tomaw_- [i=tom@freenode/staff/tomaw] has joined #scheme 21:33:07 -!- tomaw_- is now known as tomaw__ 21:34:13 -!- quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has left #scheme 21:34:23 Mr-Cat [n=Mr-Cat@bahirkin1507.static.corbina.ru] has joined #scheme 21:35:09 kloeri__ [n=kloeri@freenode/staff/exherbo.kloeri] has joined #scheme 21:35:45 Read about flat environment model for interpreters in Joe Marshall's blog. Is this technique described in any other papers, so that I can ensure that I got it correctly? 21:36:33 Mr-Cat: i can has url? 21:37:24 http://funcall.blogspot.com/2009/10/oh-yeah-those-flat-environments.html 21:37:28 and one more... 21:37:46 (Generically, I'd recommend EOPL, or "The Art of the Interpreter" papers.) 21:38:26 http://funcall.blogspot.com/2009/10/to-make-short-story-bit-longer.html 21:39:08 -!- choas [n=lars@p5B0DDCF5.dip.t-dialin.net] has quit ["leaving"] 21:39:44 Looks like he's using de Bruijn indices for his variable references. 21:40:13 Daemmerung: Thanks. 21:44:03 Daemmerung: Don't remember what's "de Bruijn indices", but eventually (as far as I got it) he is searching for all the bindings, needed by a closure before the execution and placing them in a single vector. 21:46:06 Oh, my eyes. Seems that evince has its own ideas on how thr fonts in "The Art of the Interpreter" should look. Stupid reader.... 21:46:48 s/thr/the/ 21:49:11 devslashnull [n=nope@dyn-151.greentreefrog.net.au] has joined #scheme 21:50:18 I'm trying to recall another reference for closure flattening.... 21:51:54 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 21:52:17 Daemmerung: Dybvig's thesis "Three Implementation Models for Scheme" covers this. 21:52:59 -!- chandler has set mode -R 21:52:59 Good ol' 3imp. Haven't read that one in a while. 21:53:23 -!- chandler has set mode -o chandler 21:53:27 -!- morphir [n=morphir@84-52-234.12.3p.ntebredband.no] has quit [Read error: 113 (No route to host)] 21:56:50 chandler: Thanks 22:09:00 visof [n=visof@41.238.232.19] has joined #scheme 22:15:41 -!- sepult [n=levgue@xdsl-87-78-102-131.netcologne.de] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 22:26:15 Mr-Cat: the term of art, apparently, is "display closures," after the notion of "display" as a register bank. 22:26:55 Daemmerung: Sorry, term of what? 22:27:21 Also thanks 22:28:39 "term of art" = a English-language phrase with a specific meaning for a certain subject area. It's English-language legal doubletalk, sorry. 22:29:24 http://www.randomhouse.com/wotd/index.pperl?date=20011026 22:30:55 Aha... Thanks 22:40:23 -!- schoppenhauer [n=christop@unaffiliated/schoppenhauer] has quit [Read error: 104 (Connection reset by peer)] 22:40:44 mmc1 [n=mima@cs27122078.pp.htv.fi] has joined #scheme 22:44:07 -!- mathk [n=mathk@lns-bzn-45-82-65-174-48.adsl.proxad.net] has quit [Read error: 110 (Connection timed out)] 22:52:44 mreggen [n=mreggen@cm-84.215.18.49.getinternet.no] has joined #scheme 22:57:08 bytecolor [n=user@32.159.246.20] has joined #scheme 22:57:15 -!- visof [n=visof@41.238.232.19] has quit [Remote closed the connection] 23:05:41 -!- snearch_ [n=olaf@g224251114.adsl.alicedsl.de] has quit ["Ex-Chat"] 23:07:49 I wonder if the motive behind the [] syntax was to actually improve the aesthetics of s-expressions, or to just stop the wining about too many parenthesis. 23:09:22 bipt [i=bpt@cpe-075-182-095-009.nc.res.rr.com] has joined #scheme 23:09:43 bytecolor: not that those ends are mutually exclusive; but i think it has more to do with freud's medusa-theorem 23:10:15 heh, definitely have to google that one ;) 23:10:55 -!- mmc [n=mima@cs27122078.pp.htv.fi] has quit [Remote closed the connection] 23:12:09 bytecolor: multiplication of the phallus, as in medusa's snakes or manifold parentheses, symbolizes castration; thus the PLTer, or other plyers of [], take upon themselves the square brackets like perseus' shield 23:12:33 it is an apotropaic device; q.v. http://en.wikipedia.org/wiki/Medusa's_Head 23:12:38 I am not afraid of you. I defy you. I have a penis! <--- W.T.F. 23:13:13 *Daemmerung* plans to use that as his new Litany Against Fear 23:14:10 Daemmerung: which is to say, "hic habitat felicitas": http://davehoward.net/images/Italy_2004/Hic%20Habitat%20Felicitas%20or%20Happiness%20Resides%20Here.jpg 23:14:12 -rudybot_:#scheme- http://tinyurl.com/yztok8t 23:15:09 All hail Priapus, he who puts the sex in sexps 23:15:14 heh 23:15:53 Daemmerung: Freud was a trip, eh 23:16:14 bytecolor: Freud's "On Jokes" is the trippiest. 23:16:46 *Daemmerung* probably got the name wrong 23:16:53 associating `turning to stone' with an erection, just... wow 23:17:21 Where trippiest = painful, stultifying, exemplifying every stereotype of a certain gens' sense of humor or lack of same 23:17:40 Your denial of Freud's obvious intellectual superiority is simply a manifestation of castration anxiety. ;) 23:17:52 ahaha 23:17:53 Obfuscate: I am not afraid of you.... 23:18:18 ... yet. 23:18:32 *Daemmerung* checks the contents of his trousers with some alarm 23:18:36 whew 23:19:13 *Daemmerung* continues to defy Obfuscate 23:20:43 imho, the brackets are distracting as hell 23:21:56 They're more useful for closing than opening. That eye-watering ))))) sequence. Or was it ))))))? 23:22:31 doesn't paredit render most of that paren-counting stuff obsolete? 23:22:38 I didn't understand the point of the [] brackets in plt. It would have made sense if it introduced a different datatype (say, set vs list) but it just seemed to be different notation for tuples used in certain places. 23:22:41 i don't even see the damn things anymore 23:23:06 Guys, now I'm afraid of you all 23:23:21 ahaha 23:23:41 Mr-Cat: nonsense, man; we're just playing out clash of the titans on a programming scale 23:23:42 Mr-Cat: Defy us. Do not deify us. 23:24:19 *Daemmerung* is making certain assumptions given the "Mr." prefix 23:24:28 Mr-Cat: When you've taken as many psychology courses as I have, the only one you'll ever fear is that crazy lady down the street with 83 cats and a case of nitro glycerin. 23:26:01 Obfuscate: "tuples" is irrelevant here -- it's syntax. 23:30:14 -!- Checkie [i=5894@unaffiliated/checkie] has quit [" HydraIRC -> http://www.hydrairc.com <- Now with extra fish!"] 23:30:54 eli: My choice of words could have been better: what I mean is that the [] syntax doesn't seem to map to any specific concept, or rather that it doesn't provide any convenience syntax for something that could already have been accomplished with the same brevity in plain scheme. 23:31:23 I'm still a scheme novice though, so it's entirely possible that I've missed the point. 23:32:11 Obfuscate: Such areguments are dangerously subjective, and can lead to such bogus corners like the X combinator etc. But I'll risk some explanation. 23:32:32 X combinator? 23:32:41 Obfuscate: I consider my self a novice as well, and still don't see the benefit of [] 23:33:26 I would think [] would be an aid specifically for novices 23:33:46 elly: The X combinator is something that can implement S, K, and I -- so it is sufficient for building a calculus on -- and given that the only thing in that calculus is X, you can just get rid of it and make the source files hold *only* the parentheses. 23:34:04 elly: It's as ridiculous an example as TM arguments. 23:34:20 hahaha 23:34:36 Obfuscate (and bytecolor): The thing is that in some Scheme forms -- like `cond' -- there is an extra level of parens that is part of the surrounding syntax, which is different from most other forms. 23:35:09 For example, the square brackes in (cond [(< x 1) (- x)] [else x]) should be considered part of the `cond' form. 23:36:02 eli, nod, for each clause 23:36:03 *cky* never uses square brackets in Scheme...perhaps because Arc got to me first. (In Arc, square brackets are used as shorthand to define a unary lambda. [foo _ bar] == (lambda (x) (foo x bar)) 23:36:07 .) 23:36:33 (Of course, I'm just joking; I've played with Scheme long before Arc was around. But it gives me a good excuse to opt out of using square brackets. :-P) 23:36:46 This is something that trips *many* newbies -- it takes a while to internalize the "parens are always function applications", and then "sometime they're something else, which you can see by looking at the first identifier after a (", -- but then comes `cond' and `let' and they slap the newbies faces with something that doesn't follow the internal image they built so carefully. 23:37:12 Hm... In closure all kinds of brackets are used in syntax: () {} [] but they mean different things 23:37:23 Yeah, I understand that. It just seems to be a "featureless addition", in that the syntax (cond ((< x 1) (- x)) (else x)) would have already sufficed (yes, this is entirely subjective: which is the point). 23:37:29 (cky: the same mechanism that makes []s be functions in arc (which I implemented) is something that was considered a few times to force in the PLT student languages.) 23:37:34 eli: Fair enough. First time I've heard square brackets defended that way, and I must say it actually sounds sensible enough to me. 23:37:44 s/closure/clojure 23:38:08 eli: *nods* (re Arc-style []). 23:38:54 Obfuscate: most surface syntax is "featureless" by that definition. Back to the X combinator. 23:39:01 eli: That does make sense though and is good enough reasoning to include it, I suppose. 23:39:20 Anyway, as it turns out (and I'm saying this as a convert who used to be religious about not using []s, and only started to use them to conform to other people's style when editing such sources) the brackets are very convenient in general. 23:39:21 Daemmerung: No, that argument doesn't apply: brevity is the difference. 23:40:02 This is of course very subjective -- but I view their utility in the same way that I view colored syntax highlighting in Emacs. (Which some people will sware is the devil's work too.) 23:40:07 nod, if [] and {} change the semantics, cool 23:40:35 For example, I find that I can now write things like: (let ([x (foo)] [y (bar)]) code) 23:40:36 eli: Hehehehe. (Re syntax colouring as devil's work.) 23:41:02 ...when the bindings and their expressions are short enough to be on one line. 23:41:12 *nods* 23:41:24 This is something that looks very messy when you use only round parentheses. 23:41:29 Agree. 23:41:33 I usually do one per line even if short. 23:41:42 So yes, it does allow the code to be more compact and still readable. 23:42:04 (It == using square brackets to delimit a let binding.) 23:42:06 I hate collapsing code into one-line rudybot-friendly form. 23:42:26 eli: If following the earlier given rules, shouldn't that be (let [[x (foo)] [y (bar)]] code) instead? 23:42:41 cky: Yes, I never even thought about using that before I started using brackets. I find it very convenient in named lets, since the bindings are also the function's arguments. 23:43:05 Right, and you can tell at a glance what all the parameters are. *nods* 23:43:33 Obfuscate: Well, yes, that would be making it into a very uniform rule -- but we're using that as conventions, strictly to help reading -- and alternating round and square parens is very useful for that. 23:44:00 Obfuscate: There's a small lie there, BTW -- they're also used by the reader, which will complain if parens are not properly balanced. 23:45:13 eli: ok, so from the compiler's viewpoint, []() are interchangeable, as long as like brackets are paired? 23:45:14 cky: Exactly. That's why using (let [[x (foo 1)] [y (bar 2)]] ...) is bad again -- just as messy. It's also why (let ([x (foo 1)] [y (bar 2)]) ...) is preferred over (let [(x (foo 1)) (y (bar 2))]) 23:45:21 Obfuscate: Yes. 23:45:37 And with this, I'll be running off to the sunset again... 23:45:43 *eli* tends to $FAMILY 23:45:47 Hmmmm... that loses some appeal to me, but I can understand the motivation. 23:46:15 -!- copumpkin is now known as CoqLove 23:46:28 -!- CoqLove is now known as copumpkin 23:49:32 It was interesting to watch Abelson write scheme on the blackbard. At the end of the sexp, he would look back, ), look back, ), look back, ) ... very methodically ;) 23:49:59 saint_cypher_ [n=saint_cy@h-67-101-146-6.snfccasy.dynamic.covad.net] has joined #scheme 23:50:41 Daemmerung: I'll reply soon, btw. 23:51:36 eli: Much obliged for your assistance; I remain your obedient servant, etc., etc. 23:53:41 -!- saint_cypher [n=saint_cy@c-24-130-33-243.hsd1.ca.comcast.net] has quit [Read error: 110 (Connection timed out)] 23:56:13 -!- Mr-Cat [n=Mr-Cat@bahirkin1507.static.corbina.ru] has quit ["Ex-Chat"]