00:05:47 dfeuer [n=dfeuer@wikimedia/Dfeuer] has joined #scheme 00:07:25 -!- sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has quit [] 00:09:20 -!- lelf [n=lelf@217.118.90.147] has quit ["used jmIrc"] 00:12:05 incubot: Dylan > Lennon 00:12:07 like John Lennon on the cover of "Two Virgins". 00:12:56 -!- hotblack23 [n=jh@p5B057080.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 00:17:27 is there an opposite of "list-tail" -- i.e., I give it a list L, and it gives me a new list that contains the first N items of L? 00:17:38 hml [n=x@unaffiliated/hml] has joined #scheme 00:17:43 rudybot: eval (list-tail (list 1 2 3 4 5 6) 3) 00:17:44 offby1: ; Value: (4 5 6) 00:17:53 rudybot: eval (reverse (list-tail (reverse (list 1 2 3 4 5 6)) 3)) 00:17:53 offby1: ; Value: (1 2 3) 00:18:01 ... but without all the reversing :-| 00:18:06 offby1: take? 00:18:11 sounds right. Thanks 00:18:32 Kumool [n=Beef@63.245.38.81] has joined #scheme 00:18:38 I can never remember that; I wish the "take" docs pointed to the "list-tail" docs, and vice-versa. 00:18:50 rudybot: eval (list-head (list 1 2 3 4 5 6) 3) 00:18:50 mejja: error: reference to undefined identifier: list-head 00:19:04 -!- Kumool [n=Beef@63.245.38.81] has left #scheme 00:19:32 ttmrichter [n=ttmricht@221.234.215.87] has joined #scheme 00:19:48 rudybot: (take (iota 10) 3) 00:20:32 rudybot: eval (take (iota 10) 3) 00:20:32 ASau: error: reference to undefined identifier: iota 00:20:37 Ha. 00:20:50 Scheme sucks. 00:23:54 when I use display and format #f "~A" , (list 'hello 'world) and (list "hello" "world") look the same ... how can I make them look different? 00:24:49 hml: You're using the wrong procedure 00:24:52 rudybot: eval (take (build-list 10 values) 3) 00:24:52 offby1: ; Value: (0 1 2) 00:25:01 sjamaan: what should i use instead? 00:25:08 hml: use ~S instead of ~A 00:25:10 Try using write, or format/printf in Chicken with ~S instead of~A 00:25:16 rudybot: eval (format "~a" (list 'hello 'world)) 00:25:16 offby1: ; Value: "(hello world)" 00:25:22 rudybot: eval (format "~a" (list 'hello 'world "hello" "world")) 00:25:23 offby1: ; Value: "(hello world hello world)" 00:25:25 rudybot: eval (format "~s" (list 'hello 'world "hello" "world")) 00:25:26 offby1: ; Value: "(hello world \"hello\" \"world\")" 00:25:28 see? 00:26:36 -!- Dawgmatix [n=dawgmati@207-237-30-94.c3-0.avec-ubr11.nyr-avec.ny.cable.rcn.com] has quit [] 00:27:45 #;8> (read (open-input-string (format #f "~S~%" (list "hello" "world")))) 00:27:45 ("hello" "world") 00:27:45 #;9> (read (open-input-string (format #f "~S~%" (list 'hello 'world)))) 00:27:45 (hello world) 00:27:48 okay, I am now happy 00:27:49 off 00:27:57 offby1 , sjamaan : thanks 00:37:15 i have (read-line input); where input comes from a tcp port pair 00:37:25 after a while, i get: ----> Error: read operation timed out: 5 00:37:31 -!- aneqrs [n=andreas@c83-253-104-206.bredband.comhem.se] has quit [] 00:38:17 yet, in the chicken.pdf documentation, ffor read-line, I don't see anything about timeouts 00:39:11 hmm, this is probably due to tcp-read-timeout 00:59:20 -!- bpt [n=bpt@cpe-071-070-209-067.nc.res.rr.com] has quit [Read error: 104 (Connection reset by peer)] 01:01:39 Cowmoo [n=Cowmoo@c-98-218-212-106.hsd1.va.comcast.net] has joined #scheme 01:06:45 -!- Cowmoo [n=Cowmoo@c-98-218-212-106.hsd1.va.comcast.net] has quit [Remote closed the connection] 01:14:32 sam_ [n=Sami__@e212-246-70-123.elisa-laajakaista.fi] has joined #scheme 01:17:33 -!- kniu [n=kniu@pool-71-107-51-222.lsanca.dsl-w.verizon.net] has quit [Read error: 60 (Operation timed out)] 01:20:54 CaptainMorgan [n=CaptainM@c-75-68-42-94.hsd1.nh.comcast.net] has joined #scheme 01:25:03 -!- name [n=name@sburn/devel/name] has quit ["Lost terminal"] 01:28:02 kniu [n=kniu@pool-71-107-51-222.lsanca.dsl-w.verizon.net] has joined #scheme 01:42:08 -!- pfo [n=pfo@chello084114049188.14.vie.surfer.at] has quit [Remote closed the connection] 01:58:06 seth [n=seth@76-191-139-155.dsl.static.sonic.net] has joined #scheme 02:03:59 incubot: i'm trying to determine whether to get drunk at christmas party number two tonight 02:04:01 I can only pay you in curled-toe shoes and Christmas-tree shaped gingerbread cookies 02:04:30 incubot: in that case, i may need something harder in order to combat a bad case of the unheimlich 02:04:32 One of the charms of Scheme for me is how many different programming paradigms I can express in it. There's at time too much focus on what is "unSchemely" (unschemelich? like unheimlich) or not. 02:05:06 -!- KirinDave [n=kirindav@c-98-210-137-22.hsd1.ca.comcast.net] has quit [] 02:05:10 incubot: but even freud could ambiguate a dichotomy 02:05:12 There once was a man named Oedipus Rex; you may have heard about his odd complex: he appears in Freud's index, 'cause he loved his mother... 02:06:40 incubot: i have a feeling the author of said limerick used an ellipsis to mask his poor sense of rhythm 02:06:42 I could recite my limerick again; I don't think I told anyone but you that one. 02:06:46 incubot: limerick 02:06:48 Every time someone talks about ants, tell a limerick. 02:06:58 incubot: I love ants! 02:07:00 Ants/Food in logo -> Discrete Optimization Problem. Gotta be a TSP. "Shortest route from nest to various food waystations, back to nest." 02:08:35 -!- set1 [n=seth@76-191-139-155.dsl.static.sonic.net] has quit [Read error: 110 (Connection timed out)] 02:08:40 incubot: A gifted young fellow from Sparta 02:08:42 Was widely renowned as a farta'. 02:08:43 (levenshtein-distance/generic-sequence "scheme" "sparta") ; => 5 02:08:43 He could fart anything 02:08:45 From "Of Thee I Sing," 02:08:47 To Beethoven's "Moonlight Sonata." 02:08:54 KirinDave [n=kirindav@c-98-210-137-22.hsd1.ca.comcast.net] has joined #scheme 02:08:55 mejja: not bad, not bad 02:09:19 -!- KirinDave [n=kirindav@c-98-210-137-22.hsd1.ca.comcast.net] has quit [Client Quit] 02:20:04 incubot: incubot 02:20:19 is that like a self-destruct code? 02:22:31 A language called Scheme of renown 02:22:36 Has been known to output with a # 02:22:42 But to type a # in is a cardinal sin 02:22:45 tax error when < follows # 02:27:45 -!- athos [n=philipp@92.250.204.223] has quit ["leaving"] 02:28:48 -!- jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 02:46:22 jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has joined #scheme 03:25:12 johnnowak [n=johnnowa@207-38-171-48.c3-0.wsd-ubr1.qens-wsd.ny.cable.rcn.com] has joined #scheme 03:26:40 -!- emma [n=emma@unaffiliated/emma] has quit [Read error: 104 (Connection reset by peer)] 03:27:49 emma [n=emma@unaffiliated/emma] has joined #scheme 03:29:31 KirinDave [n=kirindav@c-98-210-137-22.hsd1.ca.comcast.net] has joined #scheme 03:39:35 -!- attila_lendvai [n=ati@business-89-132-61-222.business.broadband.hu] has quit [Read error: 113 (No route to host)] 03:50:51 -!- sam_ [n=Sami__@e212-246-70-123.elisa-laajakaista.fi] has quit [] 03:52:35 -!- johnnowak [n=johnnowa@207-38-171-48.c3-0.wsd-ubr1.qens-wsd.ny.cable.rcn.com] has quit [] 04:01:52 -!- geckosenator [n=sean@71.237.94.78] has quit [Read error: 110 (Connection timed out)] 04:01:59 elmex_ [n=elmex@e180069156.adsl.alicedsl.de] has joined #scheme 04:12:26 -!- edw [n=user@poseur.com] has quit [Remote closed the connection] 04:12:28 edw [n=user@poseur.com] has joined #scheme 04:13:39 set1 [n=seth@76-191-139-155.dsl.static.sonic.net] has joined #scheme 04:14:08 sam___ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has joined #scheme 04:17:53 -!- elmex [n=elmex@e180068100.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 04:17:56 -!- elmex_ is now known as elmex 04:22:50 -!- seth [n=seth@76-191-139-155.dsl.static.sonic.net] has quit [Read error: 145 (Connection timed out)] 04:39:40 mors [n=mors@cpe-76-176-204-175.san.res.rr.com] has joined #scheme 04:42:14 Hi.. is SICP the recommended book for learning Scheme? or are there other books/online resources that I can look at? 04:44:11 ok.. so I'm looking at htpd.org and scheme.com/tspl3/ . are these the recommended books? 04:44:21 -!- mejja [n=user@c-4db6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit ["*bork bork*"] 04:44:41 I suspect those are all good 04:44:51 read the first few pages of each; decide your yourself 04:46:23 ok. i have read some parts of sicp and that came across as more of a programming book than a scheme book. i guess i'll try the latter two. 04:48:51 -!- sam___ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has quit [] 04:52:57 actually you're exactly right about SICP 04:54:36 mors, theres also www.htdp.org 04:54:43 oh sorry you mentioned that 05:08:07 thanks guys :) 05:57:23 -!- hml [n=x@unaffiliated/hml] has quit [Remote closed the connection] 06:02:13 xwl [n=user@221.221.157.194] has joined #scheme 06:15:49 -!- cads [n=max@c-71-56-62-166.hsd1.ga.comcast.net] has quit [Read error: 110 (Connection timed out)] 06:17:28 -!- mors [n=mors@cpe-76-176-204-175.san.res.rr.com] has quit [Remote closed the connection] 06:17:32 yuuki [n=yuuki@ip98-162-215-49.ok.ok.cox.net] has joined #scheme 06:17:46 Is there a good scheme for Mac OS X that is compatible with SICP? 06:29:10 -!- yuuki [n=yuuki@ip98-162-215-49.ok.ok.cox.net] has left #scheme 06:30:41 annodomini [n=lambda@pool-151-203-245-231.bos.east.verizon.net] has joined #scheme 06:32:24 -!- p1dzkl [i=p1dzkl@2001:470:d0be:0:0:0:0:13] has quit [orwell.freenode.net irc.freenode.net] 06:32:24 -!- Debolaz [n=debolaz@nat.andersberle.com] has quit [orwell.freenode.net irc.freenode.net] 06:32:24 -!- foof [n=user@dn157-046.naist.jp] has quit [orwell.freenode.net irc.freenode.net] 06:32:24 -!- benny [n=benny@i577A1874.versanet.de] has quit [orwell.freenode.net irc.freenode.net] 06:32:24 -!- jonrafkind [n=jon@c-98-202-86-149.hsd1.ut.comcast.net] has quit [orwell.freenode.net irc.freenode.net] 06:32:24 -!- z0d [n=z0d@unaffiliated/z0d] has quit [orwell.freenode.net irc.freenode.net] 06:32:24 -!- lisppaste [n=lisppast@common-lisp.net] has quit [orwell.freenode.net irc.freenode.net] 06:32:24 -!- pjdelport [n=pjd@ampere.divmod.com] has quit [orwell.freenode.net irc.freenode.net] 06:32:41 p1dzkl [i=p1dzkl@2001:470:d0be:0:0:0:0:13] has joined #scheme 06:32:41 Debolaz [n=debolaz@nat.andersberle.com] has joined #scheme 06:32:41 foof [n=user@dn157-046.naist.jp] has joined #scheme 06:32:41 benny [n=benny@i577A1874.versanet.de] has joined #scheme 06:32:41 jonrafkind [n=jon@c-98-202-86-149.hsd1.ut.comcast.net] has joined #scheme 06:32:41 z0d [n=z0d@unaffiliated/z0d] has joined #scheme 06:32:41 lisppaste [n=lisppast@common-lisp.net] has joined #scheme 06:32:41 pjdelport [n=pjd@ampere.divmod.com] has joined #scheme 06:52:09 johnnowak [n=johnnowa@207-38-171-48.c3-0.wsd-ubr1.qens-wsd.ny.cable.rcn.com] has joined #scheme 06:58:34 underspecified_ [n=eric@c-98-218-113-52.hsd1.md.comcast.net] has joined #scheme 07:14:38 -!- underspecified [n=eric@c-68-50-36-52.hsd1.md.comcast.net] has quit [Read error: 110 (Connection timed out)] 07:16:51 tizoc [n=user@r190-135-1-200.dialup.adsl.anteldata.net.uy] has joined #scheme 07:19:36 ejs [n=eugen@77-109-24-180.dynamic.peoplenet.ua] has joined #scheme 07:28:26 -!- underspecified_ [n=eric@c-98-218-113-52.hsd1.md.comcast.net] has quit [] 07:28:40 -!- tizoc_ [n=user@r190-135-44-40.dialup.adsl.anteldata.net.uy] has quit [Read error: 110 (Connection timed out)] 07:36:27 -!- xwl [n=user@221.221.157.194] has quit [Remote closed the connection] 07:39:25 -!- Khisanth [n=Khisanth@pool-68-237-107-171.ny325.east.verizon.net] has quit ["Leaving"] 07:41:52 Khisanth [n=Khisanth@141.157.234.96] has joined #scheme 07:43:18 ejs1 [n=eugen@77-109-24-180.dynamic.peoplenet.ua] has joined #scheme 07:43:22 -!- ejs [n=eugen@77-109-24-180.dynamic.peoplenet.ua] has quit [Read error: 131 (Connection reset by peer)] 07:44:57 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 07:59:38 -!- ejs1 [n=eugen@77-109-24-180.dynamic.peoplenet.ua] has quit ["Leaving"] 08:07:03 -!- KirinDave [n=kirindav@c-98-210-137-22.hsd1.ca.comcast.net] has quit [] 08:25:33 -!- Khisanth [n=Khisanth@141.157.234.96] has quit [Read error: 60 (Operation timed out)] 08:40:23 -!- johnnowak [n=johnnowa@207-38-171-48.c3-0.wsd-ubr1.qens-wsd.ny.cable.rcn.com] has quit [] 08:42:39 Khisanth [n=Khisanth@pool-141-157-234-96.ny325.east.verizon.net] has joined #scheme 08:48:15 -!- ecraven [n=nex@140.78.42.103] has quit [Read error: 54 (Connection reset by peer)] 09:14:40 -!- a1len [n=James@unaffiliated/a1len] has quit ["Lost terminal"] 09:16:26 -!- elmex [n=elmex@e180069156.adsl.alicedsl.de] has quit [Remote closed the connection] 09:19:19 Nshag [i=user@Mix-Orleans-105-1-175.w193-250.abo.wanadoo.fr] has joined #scheme 09:30:30 schmalbe [n=bernhard@p549A3288.dip0.t-ipconnect.de] has joined #scheme 09:40:44 Adamant [n=Adamant@c-69-254-76-231.hsd1.ga.comcast.net] has joined #scheme 10:20:18 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 10:26:59 choas [n=lars@p5B0DD9B8.dip.t-dialin.net] has joined #scheme 10:42:25 -!- tizoc [n=user@r190-135-1-200.dialup.adsl.anteldata.net.uy] has quit [Read error: 104 (Connection reset by peer)] 10:44:41 hotblack23 [n=jh@p5B055C14.dip.t-dialin.net] has joined #scheme 10:49:15 tizoc [n=user@r190-135-31-99.dialup.adsl.anteldata.net.uy] has joined #scheme 10:50:04 edico [n=Edico@unaffiliated/edico] has joined #scheme 10:51:14 -!- benny [n=benny@i577A1874.versanet.de] has quit [Read error: 110 (Connection timed out)] 11:13:40 underspecified [n=eric@c-98-218-113-52.hsd1.md.comcast.net] has joined #scheme 11:20:14 exexex [n=chatzill@85.102.134.150] has joined #scheme 11:20:32 orgy` [n=ratm_@pD9FFCA4C.dip.t-dialin.net] has joined #scheme 11:42:36 tizoc_ [n=user@r190-135-2-63.dialup.adsl.anteldata.net.uy] has joined #scheme 11:43:13 -!- underspecified [n=eric@c-98-218-113-52.hsd1.md.comcast.net] has quit [] 11:48:23 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #scheme 11:53:34 -!- tizoc [n=user@r190-135-31-99.dialup.adsl.anteldata.net.uy] has quit [Read error: 110 (Connection timed out)] 11:54:48 underspecified [n=eric@c-98-218-113-52.hsd1.md.comcast.net] has joined #scheme 12:00:05 -!- underspecified [n=eric@c-98-218-113-52.hsd1.md.comcast.net] has quit [] 12:12:18 r2q2 [n=user@c-24-7-212-60.hsd1.il.comcast.net] has joined #scheme 12:13:18 kuribas [i=kristof@d54C4300E.access.telenet.be] has joined #scheme 12:13:35 Flying fnord. 12:40:23 -!- exexex [n=chatzill@85.102.134.150] has quit [Remote closed the connection] 13:09:02 attila_lendvai [n=ati@business-89-132-61-222.business.broadband.hu] has joined #scheme 13:12:58 exexex [n=chatzill@85.102.134.150] has joined #scheme 13:13:14 -!- ttmrichter [n=ttmricht@221.234.215.87] has quit [Read error: 60 (Operation timed out)] 13:19:54 ttmrichter [n=ttmricht@221.235.57.37] has joined #scheme 13:30:06 wingo-tp [n=wingo@11.Red-79-151-217.staticIP.rima-tde.net] has joined #scheme 13:35:11 sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has joined #scheme 13:41:13 -!- kuribas [i=kristof@d54C4300E.access.telenet.be] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 13:41:41 ghostDancer [n=peter_gr@236.Red-83-42-254.dynamicIP.rima-tde.net] has joined #scheme 13:43:59 -!- attila_lendvai [n=ati@business-89-132-61-222.business.broadband.hu] has quit [Read error: 113 (No route to host)] 13:52:49 benny [n=benny@i577A1A01.versanet.de] has joined #scheme 13:56:34 -!- MichaelRaskin_ [n=raskin@gwh-1-177-mytn23k1.ln.rinet.ru] has quit [Read error: 113 (No route to host)] 14:00:10 MichaelRaskin_ [n=raskin@gwh-1-177-mytn23k1.ln.rinet.ru] has joined #scheme 14:03:52 -!- maodun [n=stopgo@c-67-180-49-1.hsd1.ca.comcast.net] has quit ["Leaving."] 14:04:31 vixey [n=vicky@amcant.demon.co.uk] has joined #scheme 14:10:35 name [n=name@sburn/devel/name] has joined #scheme 14:20:35 amoe [n=amoe@cpc3-brig3-0-0-cust346.brig.cable.ntl.com] has joined #scheme 14:22:56 drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 14:26:09 -!- amoe [n=amoe@cpc3-brig3-0-0-cust346.brig.cable.ntl.com] has quit ["leaving"] 14:26:21 amoe [n=amoe@cpc3-brig3-0-0-cust346.brig.cable.ntl.com] has joined #scheme 14:26:50 -!- orgy` [n=ratm_@pD9FFCA4C.dip.t-dialin.net] has quit [Remote closed the connection] 14:27:54 -!- drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Read error: 60 (Operation timed out)] 14:53:28 drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 15:02:13 replor [n=replor@EM114-48-154-182.pool.e-mobile.ne.jp] has joined #scheme 15:12:05 elmex [n=elmex@e180069156.adsl.alicedsl.de] has joined #scheme 15:17:49 annodomini [n=lambda@pool-151-203-245-231.bos.east.verizon.net] has joined #scheme 15:26:23 Found a weird problem in Scheme 48 1.8... 15:38:07 -!- dsmith [i=pt9x6ddi@cpe-71-74-230-225.neo.res.rr.com] has quit ["Leaving"] 15:41:36 a1len [n=James@unaffiliated/a1len] has joined #scheme 15:48:26 mejja [n=user@c-4db6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 15:48:44 eataix [n=eataix@116.24.62.165] has joined #scheme 15:49:08 jgracin [n=jgracin@82.193.208.195] has joined #scheme 15:51:51 KirinDave [n=kirindav@c-98-210-137-22.hsd1.ca.comcast.net] has joined #scheme 15:55:05 ejs [n=eugen@92-49-230-67.dynamic.peoplenet.ua] has joined #scheme 15:59:37 bpt [n=bpt@cpe-071-070-209-067.nc.res.rr.com] has joined #scheme 16:00:39 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 16:03:34 -!- sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has quit [Read error: 104 (Connection reset by peer)] 16:04:21 sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has joined #scheme 16:07:46 -!- KirinDave [n=kirindav@c-98-210-137-22.hsd1.ca.comcast.net] has quit [] 16:14:34 -!- ejs [n=eugen@92-49-230-67.dynamic.peoplenet.ua] has quit [Remote closed the connection] 16:14:43 ejs [n=eugen@92-49-230-67.dynamic.peoplenet.ua] has joined #scheme 16:15:04 -!- eataix [n=eataix@116.24.62.165] has quit [Read error: 104 (Connection reset by peer)] 16:17:42 -!- choas [n=lars@p5B0DD9B8.dip.t-dialin.net] has quit ["leaving"] 16:22:04 Dawgmatix [n=deep@207-237-30-94.c3-0.avec-ubr11.nyr-avec.ny.cable.rcn.com] has joined #scheme 16:22:41 Tankado [n=Woodruff@bzq-84-110-161-207.red.bezeqint.net] has joined #scheme 16:26:14 ok so you guys helped me yesterday and i made a working substitute function 16:26:24 and a working member function for tree's 16:27:40 now i want to implement a common subexpression elimination function that takes an expression and recursively finds element that appearing few times and building a gensym for them 16:27:55 and then creating a list of the gensym as let* with the substitued expression 16:28:01 that sounds fun 16:28:18 How will you do it? 16:28:36 so if i have '(* (+ 1 2) (+ 1 2)) i will get something like (let* (g234 (+ 1 2))(* g234 g234)) 16:29:11 Well i dont know yet i will use my substitute function 16:29:31 but i guess i wont get any directions from you vixey ;) just a feeling... 16:30:08 oh right, it's something you didn't want to figure out yourself 16:30:55 write a function (subexpressions '(* (+ 1 2) (+ 1 2))) ~~> ((* (+ 1 2) (+ 1 2)) (+ 1 2) + 1 2 (+ 1 2) + 1 2) 16:31:35 (maybe give it some options like minimum expression size) 16:31:47 -!- patmaddox [n=pergesu@ip68-4-201-9.oc.oc.cox.net] has quit [Read error: 104 (Connection reset by peer)] 16:33:09 write a function (lift '(+ 1 2) 'g234 '(* (+ 1 2) (+ 1 2))) ~~> (g234 . (+ 1 2)) (* g234 g234) ;; returns two VALUES 16:33:18 or a pair if you don't like values 16:33:39 GoNoGo [n=GoNoGo@cro34-3-82-236-93-215.fbx.proxad.net] has joined #scheme 16:33:46 the subexpression-elimination is just elimination of all subexpressions :) 16:34:00 Tankado, is that straightforward? 16:34:07 yes i have the lift function 16:34:50 vixey : i still dont see how to do it, it has to be in some order 16:35:00 no it doesn't 16:35:17 -!- edico [n=Edico@unaffiliated/edico] has quit ["Leaving"] 16:35:17 just write the subexpressions now 16:35:21 lets say you have (+ (* (+ 1 2) (+ 1 2)) (* (+ 1 2) (+ 1 2))) 16:36:11 you want to have one g234 for (+1 2) and one g235 for (* g234 g234) 16:36:26 so eliminate the smallest subexpressions first 16:36:33 sounds pretty sophisticated. 16:36:38 edico [n=Fenrir@unaffiliated/edico] has joined #scheme 16:36:43 it's trivial offby1, I just explained how to do it 16:36:49 grettke [n=grettke@CPE-65-31-132-59.wi.res.rr.com] has joined #scheme 16:36:58 still reading 16:37:03 it's also obviously homework 16:37:07 sure 16:37:14 I help with homework sometimes 16:37:31 same 16:37:33 i never said its not homework or knew it wasnt allowed in here 16:37:52 what was the question? 16:37:52 Tankado, I didn't say homework isn't allowed I don't run this place 16:38:24 well, I'll pay some attention for a while, since it's sure not clear to _me_ how to do it 16:38:47 vixey : now that i get subexpressions list i still need to check for a subexpression that shows more then 1 time 16:38:54 same subexpression that is 16:39:16 KirinDave [n=kirindav@c-98-210-137-22.hsd1.ca.comcast.net] has joined #scheme 16:39:17 that's what ELIMINATE does, you said you'd written it already 16:39:22 if not, then.. you know what to do 16:39:42 saccade_ [n=saccade@65.78.24.47] has joined #scheme 16:39:54 ok thanks 16:40:32 underspecified [n=eric@74.191.76.105] has joined #scheme 16:40:38 its not that trivial 16:40:44 for me anyway 16:40:49 I suspect if I tried to do this in my usual stupidest-possible-way-first, I'd wind up generating gensyms for _everything_, including "+", "1", and "2" 16:41:15 "Every word she says is a lie, including 'and' and 'the'" -- Mary McCarthy, on Lillian Hellman 16:41:26 patmaddox [n=pergesu@ip68-4-201-9.oc.oc.cox.net] has joined #scheme 16:41:40 -!- grettke [n=grettke@CPE-65-31-132-59.wi.res.rr.com] has quit [Client Quit] 16:42:14 -!- Dawgmatix [n=deep@207-237-30-94.c3-0.avec-ubr11.nyr-avec.ny.cable.rcn.com] has quit ["Ex-Chat"] 16:42:29 -!- underspecified [n=eric@74.191.76.105] has quit [Client Quit] 16:42:40 -!- patmaddox [n=pergesu@ip68-4-201-9.oc.oc.cox.net] has quit [Client Quit] 16:43:50 Tankado, have you written SUBEXPRESSIONS and ELIMINATE? 16:44:03 no 16:44:10 do you not know how to? 16:44:45 i think i do but i dont want to start doing work before i see how i am going to go from there 16:45:07 and right now i still dont understand how to pick from the subexpressions 16:45:09 ok so imagine you had already written both of them 16:45:47 you next want to define (ELIMINATE-SUBEXPRESSIONS ENVIRONMENT EXPRESSION SUBEXPRESSIONS) 16:45:49 by eliminate you mean replacing it with the gensym right? 16:46:12 ENVIRONMENT is a list like ((g324 . (+ 1 3)) (g24 . 4)) which will eventually become a LET 16:46:19 EXPRESSION is the input 16:46:54 SUBEXPRESSIONS is (at first) that list calculated by the function with the same name, each time you ELIMINATE something out of it, you use recursion until you hit the empty list 16:47:13 do you know what to do for the "base case" (ELIMINATE-SUBEXPRESSIONS ENV EXP '())? 16:47:28 yes 16:47:46 i understand your solution, thanks 16:48:46 this would work really nicely with some mutation 16:49:06 underspecified [n=eric@74.191.76.105] has joined #scheme 16:49:40 if SUBEXPRESSIONS returned the *actual* subexpressions, st. mutation on the real expression caused update on the list of subexpressions -- you don't have to recalulate them 16:50:14 -!- underspecified [n=eric@74.191.76.105] has quit [Client Quit] 16:50:19 but you'd need to tree-copy them before putting them into the env 16:52:56 Is using register machines to prototype a computer a good idea? 16:53:02 dsmith [i=mmzmub1x@cpe-71-74-230-225.neo.res.rr.com] has joined #scheme 16:53:15 All these capital letters ain't helpin' my headache none. 16:54:14 -!- dsmith [i=mmzmub1x@cpe-71-74-230-225.neo.res.rr.com] has quit [Client Quit] 16:56:17 underspecified [n=eric@74.191.76.105] has joined #scheme 16:56:39 close the lid, son, and go back to sleep 16:56:40 Can register machines be used to prototype computational models? 16:56:52 Can register machines be used to make alphabet soup? 16:57:03 offby1: Well yea. You need a busy beaver. 16:58:38 -!- underspecified [n=eric@74.191.76.105] has quit [Client Quit] 17:02:36 r2q2, please make sense. 17:03:35 be reasonable. 17:03:38 It's Sunday. 17:09:15 -!- kniu [n=kniu@pool-71-107-51-222.lsanca.dsl-w.verizon.net] has quit [Read error: 145 (Connection timed out)] 17:10:17 -!- saccade_ [n=saccade@65.78.24.47] has quit ["This computer has gone to sleep"] 17:10:27 I think that subexpression elimination stuff gets really complex when you have a language with effects though 17:10:36 Riastradh: nevermind I asked it on #lisp. 17:11:00 Riastradh: What is a good way to implement a computational model? Could register machines be used? 17:11:08 ... 17:11:27 Riastradh: wooble whomback wibbly boom whicket? 17:11:33 saccade_ [n=saccade@65.78.24.47] has joined #scheme 17:12:32 -!- jgracin [n=jgracin@82.193.208.195] has quit ["Leaving"] 17:12:55 ? 17:13:09 vixey, Malkovich Malkovich Malkovich; Malkovich, Malkovich Malkovich. 17:15:25 sam___ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has joined #scheme 17:15:26 -!- GoNoGo [n=GoNoGo@cro34-3-82-236-93-215.fbx.proxad.net] has left #scheme 17:15:48 Who is Malkovich? 17:16:39 John Malkovich, of course. 17:18:50 hark [n=strider@hark.slew.org] has joined #scheme 17:19:10 For twelve years you've been asking, "Who is Malkovich?" That is Malkovich speaking. 17:21:52 -!- sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has quit [Connection timed out] 17:21:53 Buffalo buffalo etc. 17:22:13 It's MY HEAD!! <> 17:22:22 "Adaptation" has been on TV recently. 17:24:50 -!- KirinDave [n=kirindav@c-98-210-137-22.hsd1.ca.comcast.net] has quit [] 17:25:39 -!- saccade_ [n=saccade@65.78.24.47] has quit ["This computer has gone to sleep"] 17:26:16 god why did you made me dumb i cant even make the subexpressions thing 17:26:45 you must have some compensating qualities! Maybe you're rich. 17:26:55 Tankado, start easy, what about (a b c d) ? 17:27:09 *offby1* just wrote "treemap" and it took him like four tries 17:27:32 geckosenator [n=sean@71.237.94.78] has joined #scheme 17:28:04 vixey : yes i can do something for that 17:28:33 Tankado, the same bit should work also (you might have to change it) for: (a (+ x y) (+ u v) d) 17:28:57 (which should give ((a (+ x y) (+ u v) d) a (+ x y) + x y (+ u v) + u v d)) 17:29:22 yeah i think i know where my problem was 17:30:43 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [Nick collision from services.] 17:30:54 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 17:33:26 Daedalus__ [n=shared@chello084112128006.34.11.vie.surfer.at] has joined #scheme 17:43:02 -!- r2q2 [n=user@c-24-7-212-60.hsd1.il.comcast.net] has quit [Read error: 110 (Connection timed out)] 17:44:13 -!- Nshag [i=user@Mix-Orleans-105-1-175.w193-250.abo.wanadoo.fr] has quit ["Quitte"] 17:47:27 -!- a1len [n=James@unaffiliated/a1len] has quit [Read error: 110 (Connection timed out)] 17:47:32 dmoerner [n=user@ppp-71-139-23-60.dsl.snfc21.pacbell.net] has joined #scheme 17:54:28 -!- tizoc_ is now known as tizoc 17:57:41 :( 18:05:31 vixey : is there any chance for more help? :( 18:06:51 with? 18:07:17 i am still stuck with the sub expressions part 18:08:18 (define (concat xs) (apply append xs)) 18:08:22 (define (concat-map f x) (concat (map f x))) 18:10:00 damn, she just gives the answers away 18:12:33 A headline from today's NEW YORK TIMES: "A Scheme With No Off Button." Imagine my disappointment. 18:14:27 sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has joined #scheme 18:14:49 I'd be glad. The kinds of programs I write, I need an "Off" button. 18:15:44 http://www.nytimes.com/2008/12/21/weekinreview/21rampell.html for those following along at home 18:17:54 -!- schmalbe [n=bernhard@p549A3288.dip0.t-ipconnect.de] has quit [Remote closed the connection] 18:18:19 OK, quick quiz: who still reads an actual, printed-on-paper newspaper? 18:18:25 anyone? 18:18:29 Bueller? Anyone? 18:18:31 *offby1* watches the tumbleweeds skitter down Main St 18:18:58 -!- ghostDancer [n=peter_gr@236.Red-83-42-254.dynamicIP.rima-tde.net] has left #scheme 18:20:09 -!- dmoerner [n=user@ppp-71-139-23-60.dsl.snfc21.pacbell.net] has quit [Remote closed the connection] 18:21:21 Lazy paperboy didn't deliver this morning. Wah wah snow too deep waaah. 18:21:53 y'all more used to snow than us city slickers? 18:22:27 -!- sam___ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has quit [Read error: 110 (Connection timed out)] 18:22:42 Oh, I'm stuck in Seattle (A City Held Hostage!!) today. But yeah. Used to quite a bit more than this. 18:22:51 ha, where exactly? 18:23:04 dmoerner [n=user@ppp-71-139-23-60.dsl.snfc21.pacbell.net] has joined #scheme 18:23:04 I got a party this afternoon just a few blocks away ... dunno if I'll go 18:23:23 it's downhill, you see, and I fear I might not be able to get back. 18:23:28 On top of sublimely icy Capitol Hill. 18:23:52 yeah, careful you don't slip and fall onto the freeway. Did you see the picture of the bus hanging over I-5? 18:24:05 We attended a party in Laurelhurst last night (hence my pounding hangover). I was wondering if I could get back up here, but the new snow provided quite good traction. 18:24:23 montlake bridge ... 23rd ... 18:24:42 Of all the channels on all the IRC servers into the world -- he walks into #scheme 18:24:59 hehe 18:25:19 That bus accident took place shortly after I told somebody that I wouldn't pick them up from a couple of blocks from there. I left my ice tires in Mazama. Will mount them this week. 18:26:39 orgy` [n=ratm_@pD9FFCA4C.dip.t-dialin.net] has joined #scheme 18:27:20 Friend of mine is a jail guard for King County. He was watching an inmate in Harborview when the kids from the bus accident came in. This can be a small city at times. 18:27:42 sounds like it. 18:27:52 and, uh, why were those kids in the jail? 18:27:56 No other place to take them? 18:28:03 Harborview the hospital. 18:28:10 oooohhh 18:28:17 A jailbird had OD'd. 18:28:21 nobody was hurt, I take it 18:28:24 just scared ***less 18:28:32 Right. 18:28:42 http://seattlepi.nwsource.com/local/392969_bus20.html for those following along at home 18:33:10 "Students screamed as bus crashed through I-5 barrier" 18:33:25 incubot: girls 18:33:27 do go for little boys or little girls? 18:33:41 incubot: scream 18:33:42 (good in that it's both efficient, and doesn't require to take your code to a dark ally and butcher it, hoping that nobody around you will hear it scream.) 18:36:13 In kernel space, nobody can hear you scream. 18:37:05 -!- Daedalus__ [n=shared@chello084112128006.34.11.vie.surfer.at] has quit ["Verlassend"] 18:40:56 *offby1* slaps Daemmerung upside the haid 18:42:17 -!- mejja [n=user@c-4db6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 18:52:25 vixey : sorry went away for some time thanks for the help 18:54:42 -!- bpt [n=bpt@cpe-071-070-209-067.nc.res.rr.com] has quit [Read error: 110 (Connection timed out)] 18:55:22 -!- drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Connection timed out] 18:55:41 bpt [n=bpt@cpe-071-070-209-067.nc.res.rr.com] has joined #scheme 18:57:20 ecraven [n=nex@140.78.42.103] has joined #scheme 18:58:11 -!- dfeuer [n=dfeuer@wikimedia/Dfeuer] has quit [Remote closed the connection] 19:03:32 dfeuer [n=dfeuer@wikimedia/Dfeuer] has joined #scheme 19:05:16 chaoslyn1 [n=cpehle@p57A75A58.dip.t-dialin.net] has joined #scheme 19:05:34 -!- exexex [n=chatzill@85.102.134.150] has quit [Remote closed the connection] 19:08:33 attila_lendvai [n=ati@business-89-132-61-222.business.broadband.hu] has joined #scheme 19:09:03 annodomini [n=lambda@c-75-68-40-26.hsd1.nh.comcast.net] has joined #scheme 19:09:52 seth [n=seth@76-191-139-155.dsl.static.sonic.net] has joined #scheme 19:10:23 a1len [n=James@unaffiliated/a1len] has joined #scheme 19:10:54 patmaddox [n=pergesu@ip68-4-201-9.oc.oc.cox.net] has joined #scheme 19:15:31 -!- name [n=name@sburn/devel/name] has quit [Connection timed out] 19:15:32 sam___ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has joined #scheme 19:15:39 -!- set1 [n=seth@76-191-139-155.dsl.static.sonic.net] has quit [Read error: 60 (Operation timed out)] 19:16:09 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 19:23:35 -!- sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has quit [Connection timed out] 19:34:11 -!- amoe [n=amoe@cpc3-brig3-0-0-cust346.brig.cable.ntl.com] has quit ["leaving"] 19:51:17 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 19:51:49 elmex_ [n=elmex@e180078222.adsl.alicedsl.de] has joined #scheme 19:56:05 civodul [n=user@reverse-83.fdn.fr] has joined #scheme 19:59:17 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Remote closed the connection] 19:59:42 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #scheme 20:02:23 -!- error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 20:06:06 kniu [n=kniu@pool-71-107-51-222.lsanca.dsl-w.verizon.net] has joined #scheme 20:08:40 -!- elmex [n=elmex@e180069156.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 20:08:41 -!- elmex_ is now known as elmex 20:11:21 klutometis: so ... how long did it take you to create incubot's database? 20:11:27 rudybot: seen klutometis 20:11:28 offby1: klutometis was seen in/on #scheme eighteen hours, four minutes ago, saying "incubot: i have a feeling the author of said limerick used an ellipsis to mask his poor sense of rhythm", and then klutometis was seen in/on #scheme eighteen hours, two minutes ago, saying "mejja: not bad, not bad" 20:12:38 incubot: how long did it take to generate your database? 20:12:40 For two + two is for generate and test should be fast enough, since you have only 900 possibilities. 20:14:33 there's my answer. 20:16:32 sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has joined #scheme 20:19:48 chaoslyn2 [n=cpehle@p57A75A58.dip.t-dialin.net] has joined #scheme 20:23:01 -!- sam___ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has quit [Connection timed out] 20:26:30 lisppaste: url 20:26:31 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 20:27:20 leppie pasted "Detecting usage of break/continue" at http://paste.lisp.org/display/72488 20:28:17 Does anyone have an idea (or an easy idea rather) how to detect if the break or continue injuected keywords are begin used/ 20:30:39 s/injuected/injected 20:30:49 s/begin/being 20:37:30 -!- chaoslyn2 [n=cpehle@p57A75A58.dip.t-dialin.net] has quit [Client Quit] 20:37:48 -!- chaoslyn1 [n=cpehle@p57A75A58.dip.t-dialin.net] has quit [Client Quit] 20:41:42 if i have (define x '(list '(a b) '(c d))) how can i check that (cadr x)='(a b) is a quote 20:43:55 ' is syntax for (QUOTE ) 20:44:29 leppie, that macro is just so confusing 20:44:47 I think you can do better 20:45:25 vixey : yes but how do i recognize it when i am getting my sub expressions i dont want to eliminate something like '(a b) because its just a constant 20:45:50 Tankado, what I should should be something you can use to program that 20:46:00 Tankado, what I said should*.. 20:46:55 I am not that advanced with scheme as you saw i dont know how to do pattern matching 20:47:40 it's not pattern matching 20:48:00 your x there is literally ((quote (a b)) (quote (c d))) 20:48:34 vixey: whats confusing? actually dont worry what it does ;P 20:49:10 leppie, I'm just saying, if you are interested in simplicity then you can do better than this 20:49:17 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 20:49:29 leppie, by the way foof-loop has got a lot of SYNTAX-RULES tricks you can learn from it if you like 20:51:14 -!- attila_lendvai [n=ati@business-89-132-61-222.business.broadband.hu] has quit ["..."] 21:00:39 vixey: i still dont understand what you see as complex in this macro 21:01:34 replor_ [n=replor@EM114-48-15-25.pool.e-mobile.ne.jp] has joined #scheme 21:01:57 What is complex is that you want the expansion of your macro to depend on the expansion of its subforms. But its subforms cannot be expanded until the expander knows in what environment they are to be expanded, which depends on how your macro generates output. 21:02:00 you really don't appreciate simplicity? 21:03:09 ok vixey solved that! 21:03:20 good, well done :) 21:05:46 so no easy way then Riastradh? 21:05:52 That's right, leppie. 21:06:03 This is a job for a compiler, not for a macro. 21:06:08 i'll leave that exercise for another day :) 21:06:24 that's true 21:06:55 leppie, and why not use foof-loop anyway? 21:08:11 vixey: it is actually for my own list comprehension system 21:09:48 -!- sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has quit [Read error: 60 (Operation timed out)] 21:10:26 gweiqi [n=greg@69.120.126.163] has joined #scheme 21:11:57 -!- synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has quit [Remote closed the connection] 21:13:48 synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has joined #scheme 21:16:08 -!- replor [n=replor@EM114-48-154-182.pool.e-mobile.ne.jp] has quit [Connection timed out] 21:17:34 sam_ [n=Sami__@e81-197-69-201.elisa-laajakaista.fi] has joined #scheme 21:19:52 saccade_ [n=saccade@65.78.24.47] has joined #scheme 21:26:56 underspecified [n=eric@c-66-177-249-13.hsd1.fl.comcast.net] has joined #scheme 21:31:14 hml [n=x@unaffiliated/hml] has joined #scheme 21:33:34 Adamant [n=Adamant@c-69-254-76-231.hsd1.ga.comcast.net] has joined #scheme 21:48:55 -!- wingo-tp [n=wingo@11.Red-79-151-217.staticIP.rima-tde.net] has quit [Read error: 113 (No route to host)] 21:48:59 attila_lendvai [n=ati@business-89-132-61-222.business.broadband.hu] has joined #scheme 21:52:03 pfo [n=pfo@chello084114049188.14.vie.surfer.at] has joined #scheme 21:52:47 -!- jonrafkind [n=jon@c-98-202-86-149.hsd1.ut.comcast.net] has quit [Connection timed out] 22:04:30 Dawgmatix [n=deep@207-237-30-94.c3-0.avec-ubr11.nyr-avec.ny.cable.rcn.com] has joined #scheme 22:09:55 -!- patmaddox [n=pergesu@ip68-4-201-9.oc.oc.cox.net] has quit [Read error: 104 (Connection reset by peer)] 22:10:07 -!- attila_lendvai [n=ati@business-89-132-61-222.business.broadband.hu] has quit ["..."] 22:11:36 List incomprehension would be a topic well suited to this channel. Though hopefully all the students are away by now on break, dreaming of sugarplums instead of syntax-rules. 22:11:59 syntax-rulels? 22:12:05 ick, why can't everyone just use lisp style macros? 22:12:14 it may have it's gotchas, but atleast it's consistent / easy to understand 22:12:26 No, hml. 22:12:27 real men use syntax-case :) 22:12:34 [not meant to troll, i use chicken scheme; but lisp style macros look so elegant] 22:12:46 hml: wrong channel, you want #lisp next door. 22:12:54 nah, i like the simplicity of scheme 22:12:59 scheme seems simpler to lisp in every way 22:13:00 A lovely place to visit, but I wouldn't want to live there. 22:13:10 The use of DEFMACRO without hygiene leads to problems that are nigh impossible to debug and that don't turn up until long after you have forgotten about the macros you wrote. 22:13:18 hml: ?? chicken scheme has got no other macro systems than syntax-rules 22:13:25 except for macros, syntax-rules ... why create a separate language? 22:13:32 vixey: it has define-amcro 22:13:39 ok so what are you talking about ?? 22:13:41 oh I see 22:13:48 you object to syntax-rules 22:13:57 Have you seen the examples of it in R5RS? 22:14:07 r5rs have macro examples? 22:14:10 *hml* downloads r5rs 22:14:19 yes once you look at them you will change your mind about syntax-rules :) 22:14:33 Why create a separate language? It's convenient for most macros, and it avoids any issues of phase separation. 22:14:46 It seemed more like a mild grumble than an official objection 22:15:35 hml, the use of DEFMACRO is a bug -- that's why not everyone prefers to use it. 22:15:37 djwonk [n=djwonk@216-188-225-241.dyn.grandenetworks.net] has joined #scheme 22:15:45 But... but I had just lit my torch and sharpened my pitchfork.... 22:16:05 my code was frozen and melted at the same time the other day. If only I had used syntax-rules... 22:16:43 vixey: section 4.3.2 ? 22:17:15 OTOH, CL macros are more powerful. %] 22:17:16 r5rs 4.3.2 22:17:16 Sorry, I couldn't find anything for 4.3.2. 22:17:17 There are several more examples toward the end of the document, hml. 22:17:30 ASau, more powerful in what respect(s)? 22:17:39 hmm, what are things that CL macros can write that syntax rules can not write? 22:17:47 More powerful than a locomotive! 22:17:50 with CL macros you can do unhygienic name capture 22:17:58 You can do more than AST transformation. 22:18:14 -!- Tankado [n=Woodruff@bzq-84-110-161-207.red.bezeqint.net] has quit [] 22:18:15 eno__ [n=eno@adsl-70-137-132-196.dsl.snfc21.sbcglobal.net] has joined #scheme 22:18:22 what's an example of an unhygienic name capture used in practice? 22:18:24 hml, with DEFMACRO, one can concatenate names and introduce names that did not occur in the user's input. One can also perform arbitrary actions available to Lisp. 22:18:39 In practice? It is seldom ever used. 22:18:41 hml, can't think of any 22:18:44 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 104 (Connection reset by peer)] 22:18:44 Seldom??? 22:18:47 it's really something you avoid 22:18:48 (even in Common Lisp) 22:19:05 what about for OO ? like if I want to make a class rect with x and y; and I want it to synthesize names rect-x rect-y on the fly? 22:19:09 can I do this in hygeinic scheme? 22:19:17 Not with SYNTAX-RULES, hml. 22:19:29 Riastradh: how would I do it in shcme? 22:19:30 Riastradh: I worked on commercial project, where such things were 1 time per 10 lines of code. 22:19:38 "Anaphoric IF" is the canonical capture example. 22:19:46 patmaddox [n=pergesu@ip68-4-201-9.oc.oc.cox.net] has joined #scheme 22:20:12 (which I cannot attribute right now. Maybe I botched the name. Anabolic if? Not sure.) 22:20:24 hml, in which Scheme? It cannot be done with what the R5RS provides. 22:20:42 Daemmerung, good one 22:20:53 Riastradh: interesting; I use chicken 22:21:16 Daemmerung, it's a horrendous thing nobody uses in reality but it's a really nice example for capture as well as implementing a macro system (in terms of defmacro) 22:21:29 "Anaphoric" is right. Paul Graham has written about it in "On Lisp" 22:22:59 how does syntax case and syntax rules relate to each other? 22:23:25 hml, I don't know the state of macros in Chicken currently. If Felix has finished his new hygienic macro and module system, I'm sure it will provide a way to do what you want. If not, one can still use, for example, riaxpander to provide a hygienic macro system with which one can concatenate names. 22:23:28 they're on bad terms ever since syntax case got drunk at New Year's 22:24:00 hml, are you capable of typing ? 22:26:30 moghar [n=moghar@156.185.jawnet.pl] has joined #scheme 22:34:37 -!- eno__ [n=eno@adsl-70-137-132-196.dsl.snfc21.sbcglobal.net] has quit ["leaving"] 22:36:38 set1 [n=seth@76-191-139-155.dsl.static.sonic.net] has joined #scheme 22:36:38 -!- seth [n=seth@76-191-139-155.dsl.static.sonic.net] has quit [Read error: 104 (Connection reset by peer)] 22:39:45 -!- ejs [n=eugen@92-49-230-67.dynamic.peoplenet.ua] has quit [Read error: 110 (Connection timed out)] 22:50:29 arcfide [n=arcfide@h-68-164-228-241.chcgilgm.dynamic.covad.net] has joined #scheme 22:51:21 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Read error: 104 (Connection reset by peer)] 22:52:56 Howdy, y'all. 22:53:01 http://hpaste.org/13246#a0 <-- is anything wrong with this, besides the fact that if I use 'forever-helped' in body, sommething unexpected happens? 22:53:36 ... 22:53:58 hml: What Scheme system are you using? And, um...do you need to use DEFINE-MACRO? 22:54:07 i'm using chicken scheme 22:54:10 but i like lisp style macros more 22:54:25 `I like them more' is hardly a reason to write intrinsically buggy software. 22:54:39 Thank you Riastradh. 22:54:55 hml: Also, you may find lisppaste more convenient. 22:54:59 lisppaste: url 22:54:59 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 22:56:43 hml pasted "untitled" at http://paste.lisp.org/display/72498 22:57:56 gutworth [n=bpeterso@64-131-8-201.usfamily.net] has joined #scheme 22:58:02 http://paste.lisp.org/display/72500 <-- how can i make this less buggy? 22:58:11 -!- kniu [n=kniu@pool-71-107-51-222.lsanca.dsl-w.verizon.net] has quit [Read error: 60 (Operation timed out)] 22:58:36 -!- gutworth [n=bpeterso@64-131-8-201.usfamily.net] has left #scheme 22:59:12 *Daemmerung* awards hml a Special Smart-Ass award 22:59:25 Don't use DEFMACRO. Use SYNTAX-RULES. 23:00:10 (define (forever f) (f) (forever f)) 23:00:26 Riastradh pasted "FOREVER with SYNTAX-RULES" at http://paste.lisp.org/display/72501 23:00:58 Aaah, good, that's what I had. 23:02:15 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Remote closed the connection] 23:05:02 -!- araujo [n=araujo@gentoo/developer/araujo] has quit [Read error: 110 (Connection timed out)] 23:05:43 Alternative cover for the Wizard book - http://www.globalnerdy.com/2007/09/14/reimagining-programming-book-covers/ - I like it. 23:10:24 http://paste.lisp.org/display/72502 <-- can anything still go wrong with this macro? 23:12:23 kniu [n=kniu@pool-71-107-51-222.lsanca.dsl-w.verizon.net] has joined #scheme 23:13:08 hml, why are you using define-macro? 23:13:24 (don't bother answering that) 23:13:55 i guess this is what it's like to be that girl in the scarlet A 23:14:22 hml: the fact that you have to ask whether your example works is why you shouldn't be using define-macro. 23:18:29 araujo [n=araujo@gentoo/developer/araujo] has joined #scheme 23:20:57 -!- edico [n=Fenrir@unaffiliated/edico] has quit ["Leaving"] 23:23:23 annodomini [n=lambda@pool-151-203-245-231.bos.east.verizon.net] has joined #scheme 23:30:30 Obviously hml knows his example works. He's asking you to clarify how it is broken. 23:32:28 I think the use of ` and , is a bit ugly, and gensym just raises the hairs on my neck, and since syntax-rules is easier cleaner and more intuitive looking then no need for macros like that... but I don't know if define-macro is inherently broken. 23:33:27 mejja [n=user@c-4db6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 23:35:20 define-macro isn't broken, it's useful in _Common Lisp_, but not Scheme where things are different 23:37:01 Huh? 23:37:23 -!- hotblack23 [n=jh@p5B055C14.dip.t-dialin.net] has quit [Remote closed the connection] 23:39:51 -!- orgy` [n=ratm_@pD9FFCA4C.dip.t-dialin.net] has quit ["Gone."] 23:42:04 define-macro is useful, and capable of brain-boggling acts of macrology, and (most importantly!) bog-simple to implement. But it is difficult to reason about programs that use it. hml's requests for help reasoning about such a simple application of define-macro ("Can anything still go wrong?") confirm my point. 23:44:18 tizoc_ [n=user@r190-135-7-234.dialup.adsl.anteldata.net.uy] has joined #scheme 23:44:52 -!- tizoc [n=user@r190-135-2-63.dialup.adsl.anteldata.net.uy] has quit [Nick collision from services.] 23:44:54 -!- tizoc_ is now known as tizoc 23:45:06 Choosing between define-macro and syntax-rules is like choosing between a running chainsaw and a butter knife. Fortunately, there exist other options. 23:45:07 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 23:45:43 (For the record, I like both chainsaws and define-macro.) 23:46:55 jonrafkind [n=jon@c-98-202-86-149.hsd1.ut.comcast.net] has joined #scheme 23:48:53 -!- moghar [n=moghar@156.185.jawnet.pl] has quit ["leaving"] 23:49:35 So what you're saying Daemmerung is that it's impossible to answer the question "can anything go wrong" with a macro, because it's impossible to form a reasoned argument for their validity? 23:50:54 No, that is not what I am saying. 23:52:42 lelf [n=lelf@217.118.90.231] has joined #scheme 23:52:50 I don't think it's unreasonable to ask "can anything go wrong?" even with reasonable things. If something is able to be reasoned about, then you will be able to say "yes" or "no." If not, then it's unreasonable. 23:54:25 r2q2 [n=user@c-24-7-212-60.hsd1.il.comcast.net] has joined #scheme 23:55:55 -!- vixey [n=vicky@amcant.demon.co.uk] has quit [Client Quit] 23:57:37 Sounds reasonable to me. 23:57:38 *offby1* whistles innocently