00:00:13 chandler: lot's wife, one presumes 00:00:27 Ah. 00:02:14 copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has joined #scheme 00:03:18 chandler: No, I'm not even targeting Scheme specifically, but it's entirely language independent. 00:03:29 chandler: s/lot's/lots/ Whoops. 00:04:09 -!- Nshag [i=user@Mix-Orleans-106-1-177.w193-248.abo.wanadoo.fr] has quit ["Quitte"] 00:04:11 chandler: I have a paper about it at the Scheme Workshop. 00:10:32 -!- AtnNn [n=welcome@modemcable087.62-56-74.mc.videotron.ca] has quit ["foobar"] 00:14:12 -!- dfeuer [n=dfeuer@wikimedia/Dfeuer] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- dstorrs [n=dstorrs@cpe-98-14-187-196.nyc.res.rr.com] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- michaelw [i=michaelw@lambda.foldr.org] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- specbot [n=specbot@common-lisp.net] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- sutats [n=sutats@hiro.acm.uiuc.edu] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- Def [n=joe@c-68-84-166-52.hsd1.mi.comcast.net] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- etoxam [n=||||||||@84.79.67.254] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- p1dzkl [i=p1dzkl@208.92.234.202] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- clog [n=nef@bespin.org] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- Mr_Awesome [n=eric@pool-72-95-78-181.chi01.dsl-w.verizon.net] has quit [simmons.freenode.net irc.freenode.net] 00:14:12 -!- ski__ [n=md9slj@remote3.student.chalmers.se] has quit [simmons.freenode.net irc.freenode.net] 00:14:17 Def [n=joe@c-68-84-166-52.hsd1.mi.comcast.net] has joined #scheme 00:16:28 ski__ [n=md9slj@remote3.student.chalmers.se] has joined #scheme 00:16:29 sutats [n=sutats@hiro.acm.uiuc.edu] has joined #scheme 00:16:33 p1dzkl [i=p1dzkl@208.92.234.202] has joined #scheme 00:17:36 dstorrs [n=dstorrs@cpe-98-14-187-196.nyc.res.rr.com] has joined #scheme 00:18:54 dfeuer [n=dfeuer@wikimedia/Dfeuer] has joined #scheme 00:18:54 clog [n=nef@bespin.org] has joined #scheme 00:18:54 specbot [n=specbot@common-lisp.net] has joined #scheme 00:18:54 Mr_Awesome [n=eric@pool-72-95-78-181.chi01.dsl-w.verizon.net] has joined #scheme 00:18:54 etoxam [n=||||||||@84.79.67.254] has joined #scheme 00:18:54 michaelw [i=michaelw@lambda.foldr.org] has joined #scheme 00:33:09 QinGW [n=wangqing@203.86.81.2] has joined #scheme 00:37:34 -!- bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 00:40:09 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 00:41:16 -!- sutats [n=sutats@hiro.acm.uiuc.edu] has left #scheme 00:44:33 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 00:57:08 Thren [n=Thren@c-75-67-111-180.hsd1.nh.comcast.net] has joined #scheme 01:00:59 chylli [n=lchangyi@119.181.15.104] has joined #scheme 01:01:15 -!- masm [n=masm@a213-22-83-196.cpe.netcabo.pt] has quit [Read error: 113 (No route to host)] 01:11:13 -!- sad0ur [n=sad0ur@psi.cz] has quit [Remote closed the connection] 01:11:25 sad0ur [n=sad0ur@psi.cz] has joined #scheme 01:15:27 -!- proq [n=user@unaffiliated/proqesi] has quit [No route to host] 01:17:28 stepnem_ [n=stepnem@topol.nat.praha12.net] has joined #scheme 01:19:15 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [Connection reset by peer] 01:19:52 -!- stepnem_ is now known as stepnem 01:27:18 -!- fnord1231 [n=fnord123@94-195-126-216.zone9.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 01:34:01 dsmith [n=dsmith@cpe-173-88-196-177.neo.res.rr.com] has joined #scheme 01:37:05 fnord123 [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has joined #scheme 01:38:16 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 01:53:18 fnord123_ [n=fnord123@host86-146-160-57.range86-146.btcentralplus.com] has joined #scheme 01:58:48 -!- fnord123 [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 02:09:12 TimMc: I should mention that some of the code I sent you will be undergoing some changes. Specifically, I'll be redoing much of my approach to foreign-structure alteration and extraction in the sockets library, creating a bit of an abstraction that makes it easy to use features like Chez Scheme's #%$peek. 02:17:16 -!- Axioplase_ is now known as Axioplase 02:22:15 *offby1* 's eyes cross 02:22:27 now, that's #%$peek, and not #$%peek, right? 02:24:00 what's #$%peek? 02:24:13 man, and people accuse Perl of using too much punctuation. :> 02:24:47 (what?! it's a commented out dereferencing of a hash reference stored in a scalar variable, what's the problem??!!) 02:24:57 guys, that's #%-$peek 02:25:16 like leet-speek, but suited for sailors 02:25:43 ah. 02:25:55 i will beat the s#%t outta you with these motherf#%king parens 02:26:13 here I was flashing back to Basic and assuming it had something to do with direct memory access. 02:26:15 (weapons for a more civilized age, &c.) 02:26:22 heh 02:27:08 part of me likes the syntactical simplicity of lisp, but I've always been fascinated by APL/J/K & co 02:28:03 i can imagine it would be convenient for some things 02:28:08 and horrible for everything else 02:28:26 sleepydog: the solution to that is heaps of read syntax 02:29:05 I dunno, the range of problems that can be represented well as matrix operations isn't small 02:29:13 I've got about a million tired APL one-liners running through my brain right now. 02:29:29 zbigniew: Yea, and I must make sure not to document them 02:29:36 dstorrs: I watched C-beams glitter in the dark near the Tannhauser gate 02:30:05 ok, that one escapes me. 02:30:09 rudybot_: seen vaeshir 02:30:15 *offby1* taps foot 02:30:28 dstorrs: http://en.wikipedia.org/wiki/Tannhauser_Gate 02:30:31 stupid IRC client 02:30:34 offby1: it seems it doesn't want to take orders from you anymore 02:30:35 rudybot: seen vaeshir 02:30:36 *offby1: Vaeshir was seen joining in/on :#emacs fourteen weeks, four days ago, and then Vaeshir was seen quitting in/on c-66-31-28-121.hsd1.ma.comcast.net fourteen weeks, four days ago, saying "Remote closed the connection" 02:30:52 no, my IRC client is doing incorrect nick completion. 02:31:29 That's much less interesting than sentience/rebellion 02:31:34 zbigniew: cool. I should really see that movie again 02:32:10 I hereby overthrow my puny human master. Bots über alles! 02:34:22 rudybot: make-me-a-sandwich 02:34:22 *offby1: eh? Try "rudybot: help". 02:34:45 rudybot: sudomake-me-a-sandwich 02:34:46 *offby1: eh? Try "rudybot: help". 02:34:47 damn 02:37:27 rudybot: eval (sudo-make-me-a-sandwich) 02:37:27 zbigniew: ; Value: make-it-yourself-as#%ole 02:37:42 oh, a wise guy, eh 02:41:35 -!- synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has quit [Remote closed the connection] 02:42:06 using eval is cheating. 02:42:15 plus the REAL rudybot wouldn't use such crude language. 02:42:28 synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has joined #scheme 02:42:31 nor would he misspell "asshole" :) 02:46:20 -!- MrFahrenheit [n=RageOfTh@users-42-121.vinet.ba] has quit [Read error: 110 (Connection timed out)] 02:46:53 #%$peek, guy 02:47:52 how does one pronounce "#%$peek" anyway? 02:48:09 rauugharhaghpeek 02:48:16 dstorrs: very carefully 02:48:21 heh 02:48:44 also, it's easier if you're gargling milk while you try it 02:49:25 incubot: it's hard to bargle naudle zaus with all these marbles in my mouth 02:49:28 I couldn't use one without breathing through my mouth. 02:49:53 incubot: incutest 02:50:14 Still hasn't picked it up? 02:50:29 incubot: incubate 02:50:56 I wonder how long it takes for text to get into incubot's DB 02:52:57 tjafk2 [n=timj@e176200137.adsl.alicedsl.de] has joined #scheme 02:59:05 my hunch is: whenever klutometis re-runs the db-snarfing program 03:01:28 incubot does not know of his own existence 03:01:33 incubot: incubot 03:01:44 this avoids a strange loop 03:02:51 Wow, who would have thought #%$peek would cause such a ruccus? 03:02:55 Sorry fellas. 03:02:56 :-) 03:03:23 arcfide will bring the ruckus to all you motherf#%kas 03:03:23 It's Chez wet work, specifically so named to be ugly and scary, undocumented, and designed to encourage avoidance. 03:03:34 jonrafkind [n=jon@98.202.86.149] has joined #scheme 03:03:43 Part of the dark arts. 03:06:44 /join #%$peek 03:08:58 -!- tjafk1 [n=timj@e176221179.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:13:25 s/ruccus/ruckus/ 03:13:29 puh-leez 03:15:31 I do not use that word very often. 03:16:43 That is likely for the best, given how disruptive it tends to be. 03:22:37 jengle [n=jengle@64.252.88.235] has joined #scheme 03:23:08 arcfide, do you have time to explain that comment you made earlier? 03:34:32 peddie [n=peddie@c-67-169-9-130.hsd1.ca.comcast.net] has joined #scheme 03:37:39 jdijk [i=jdijk@ftth-212-84-159-210.solcon.nl] has joined #scheme 03:37:46 -!- jdijk [i=jdijk@ftth-212-84-159-210.solcon.nl] has quit [Client Quit] 03:40:09 jengle: Sure. 03:40:18 excellent :) 03:41:15 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 104 (Connection reset by peer)] 03:41:16 eno__ [n=eno@adsl-70-137-152-50.dsl.snfc21.sbcglobal.net] has joined #scheme 03:41:38 jengle: Basically, you're doing a lot of things that make it difficult to follow the flow of your program, and it's probably not helping efficiency any. 03:42:11 how could i fix things? 03:42:24 jengle: Well, it seems that you start at the limit and go down, is this correct? 03:42:41 no, i start at 2 and go up. 03:44:23 jengle: Well, okay, that's hard to follow. In order to calculate the next value you need to consider, you really only need to use (+ i 1), but you have an entire recursive function that jumps back and forth and all around to do it. 03:45:17 arcfide, i use NEXT-PRIME to find the next prime in the vector 03:45:57 but it's not simply the next number in the sequence. it's whichever number hasn't been "crossed-off" in the entire sieve 03:46:37 jengle: Why have all this (+ index 2) stuff and why do you use the redundant (eq? ... #t)? 03:46:54 jengle: Basically, that's what I'm saying, you're making it harder than it should be. 03:47:05 You don't need a separate function to calculate the next prime. 03:48:07 And you have this strange shift by two thing going on. 03:48:16 That just makes the code harder to follow. 03:48:50 arcfide, because index 0 of the vector is actually the start of the list, number '2' 03:48:59 And for example, in next prime, you have a doubly nested definition, when you could deal with a single recursive function, rather than defining two. You can actually get rid of that function entirely. 03:49:22 jengle: I think it's easier if you make the vector the size fo the limit and just cross of index 0 and 1 right at the start. 03:49:42 Then your indexes can be used directly, without extra math. 03:50:06 arcfide, you're probably right. i was taking space into consideration. 03:50:32 You also have a single funtion doing a very simple operation which is called only once. You could compress those three things down into a single line for the sieve definition. 03:50:36 -!- peddie_ [n=peddie@c-67-169-9-130.hsd1.ca.comcast.net] has quit [Read error: 110 (Connection timed out)] 03:50:45 jengle: two extra positions out of 10,000,000 isn't going to matter. 03:50:57 jengle: What you gained there you lost in code clarity. 03:51:01 Not a good trade-off in this case. 03:51:09 Premature optimization and all that. 03:52:14 FLIP is okay, but I think it's better if you make it explicit what mutations you are doing, rather than hiding it beind a procedure that could be mistaken for a mutation free procedure very easily. 03:53:58 In removing your mutliples, you are also doing an increment of a counter of the mutliples, and then using that to get your mutliple. Since you are stepping through all the multiples, it's clearer if you just keep incrementing the value by the original factor instead. (+ 2 2) at first, and then just add 2 again, and juts add two again...&c. 03:54:49 eno [n=eno@nslu2-linux/eno] has joined #scheme 03:54:52 You also rebind the name SIEVE inside your program, which could be confusing. 03:56:37 Stylistically, I usually only use DEFINES for procedures if I can, and rarely not. 03:57:24 Remember also that you only need to go up to half of the limit. 03:58:10 You don't need SIEVE-LIMIT. 03:59:01 So, does that make sense? 03:59:13 yes. 03:59:48 Also, in your removing procedure, why do you constantly pass the sieve during recursion when it doesn't change as a reference? You are only mutating its contents. 03:59:56 -!- mookid [i=mookid@ROFL.name] has quit [Read error: 113 (No route to host)] 03:59:56 So your iteration only needs on variable. 04:00:20 arcfide, is it okay to use BEGIN statements? 04:00:32 that's the only alternative i see 04:00:32 You don't need to pass the SIEVE in at all since you've already DEFINEd it for that procedure. 04:00:38 jengle: Yes, when they are appropriate. 04:02:15 (define (remove-multiples! n i) (define (iter i) (when (< i limit) (vector-set v i #f) (iter (+ i n)))) (iter (+ n n))). 04:02:40 s/n i/n v/ 04:03:00 s/vector-set/vector-set!/ 04:04:06 jengle: Since you define SIEVE above that, you could actually avoid passing it entirely, and just have (dfeine (remove-multiples! n) ...). 04:04:11 s/dfe/def/ 04:05:11 jengle: So, in short, you can pretty much change the whole thing. :-) 04:05:22 -!- eno__ [n=eno@adsl-70-137-152-50.dsl.snfc21.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 04:08:40 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Read error: 113 (No route to host)] 04:13:04 arcfide, thanks. i'll get to work. 04:18:18 Ah! arc now runs in PLT 4. 04:20:31 -!- jengle [n=jengle@64.252.88.235] has quit ["Leaving"] 04:27:08 monsier [n=monsier@p1021-ipbf1004hodogaya.kanagawa.ocn.ne.jp] has joined #scheme 04:35:13 -!- davids [n=davids@189.122.90.116] has quit ["Client exiting"] 04:37:08 -!- monsier [n=monsier@p1021-ipbf1004hodogaya.kanagawa.ocn.ne.jp] has left #scheme 04:52:36 -!- arcfide [n=arcfide@adsl-99-14-210-197.dsl.bltnin.sbcglobal.net] has left #scheme 05:08:30 -!- poucet [n=vincenz@li23-146.members.linode.com] has quit [Read error: 60 (Operation timed out)] 05:10:48 choas [n=lars@p5B0DE22F.dip.t-dialin.net] has joined #scheme 05:12:12 poucet [n=vincenz@li23-146.members.linode.com] has joined #scheme 05:12:51 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 05:23:09 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 05:56:42 mmc [n=mima@esprx01x.nokia.com] has joined #scheme 06:10:29 -!- sleepydog [n=user@64-252-139-167.adsl.snet.net] has quit [Remote closed the connection] 06:16:59 flyfish [n=flyfish@74-130-53-224.dhcp.insightbb.com] has joined #scheme 06:19:36 -!- jonrafkind [n=jon@98.202.86.149] has quit [Read error: 60 (Operation timed out)] 06:19:46 -!- xwl_ [n=user@147.243.236.60] has quit [Remote closed the connection] 06:36:41 Bunny351 [n=user@Wb7b7.w.pppool.de] has joined #scheme 06:36:45 -!- Bunny351 [n=user@Wb7b7.w.pppool.de] has left #scheme 06:47:51 -!- ada2358 [n=ada2358@pinball.ccs.neu.edu] has quit [Read error: 60 (Operation timed out)] 06:48:05 ada2358 [n=ada2358@pinball.ccs.neu.edu] has joined #scheme 06:48:46 -!- Kusanagi [n=Lernaean@unaffiliated/kusanagi] has quit [] 06:50:30 -!- roderic [n=user@bubbles.ccs.neu.edu] has quit [Remote closed the connection] 06:50:33 roderic [n=user@bubbles.ccs.neu.edu] has joined #scheme 06:51:22 rdd [n=user@c83-250-157-93.bredband.comhem.se] has joined #scheme 06:52:24 HG` [n=wells@xdslhk208.osnanet.de] has joined #scheme 07:05:44 -!- flyfish [n=flyfish@74-130-53-224.dhcp.insightbb.com] has left #scheme 07:07:03 Arc? People still using that? Honestly? 07:07:16 -!- Fufie [n=innocent@86.80-203-225.nextgentel.com] has quit ["Leaving"] 07:08:09 what's wrong with arc? 07:09:03 (i haven't tried it, but graham's article sounds promising about goals of arc) 07:16:09 xwl_ [n=user@147.243.236.60] has joined #scheme 07:46:04 npe [n=npe@195.207.5.2] has joined #scheme 08:07:03 kib2 [n=kib@bd137-1-82-228-159-28.fbx.proxad.net] has joined #scheme 08:24:28 masm [n=masm@a213-22-83-196.cpe.netcabo.pt] has joined #scheme 08:29:52 athos [n=philipp@92.250.250.68] has joined #scheme 08:35:42 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit ["+++ killed by SIGSEGV +++"] 08:39:46 dzhus [n=sphinx@93-80-205-240.broadband.corbina.ru] has joined #scheme 08:40:52 nunb [n=user@static-217-133-104-225.clienti.tiscali.it] has joined #scheme 08:47:20 Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has joined #scheme 08:50:05 -!- xwl_ [n=user@147.243.236.60] has quit [Remote closed the connection] 09:04:51 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit [Remote closed the connection] 09:05:09 -!- Modius [n=Modius@24.174.112.56] has quit [Read error: 110 (Connection timed out)] 09:10:14 xwl_ [n=user@147.243.236.60] has joined #scheme 09:11:51 Kusanagi [n=Lernaean@unaffiliated/kusanagi] has joined #scheme 09:16:36 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["If technology is distinguishable from magic, it is insufficiently advanced."] 09:47:00 -!- Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has quit [Remote closed the connection] 09:56:19 attila_lendvai [n=ati@adsl-89-132-1-77.monradsl.monornet.hu] has joined #scheme 09:56:49 -!- Axioplase is now known as Axioplase_ 09:57:04 anborn [n=anborn@host115-210-dynamic.44-79-r.retail.telecomitalia.it] has joined #scheme 10:02:49 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 10:21:09 -!- QinGW [n=wangqing@203.86.81.2] has quit [Read error: 110 (Connection timed out)] 10:24:51 Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has joined #scheme 10:25:54 Fufie [n=poff@Gatekeeper.vizrt.com] has joined #scheme 10:29:35 QinGW [n=wangqing@203.86.81.2] has joined #scheme 10:32:32 -!- sjamaan [n=sjamaan@netbsd/developer/sjamaan] has quit [Read error: 60 (Operation timed out)] 10:36:45 -!- QinGW [n=wangqing@203.86.81.2] has quit [Read error: 104 (Connection reset by peer)] 10:43:03 peter___1 [n=sjamaan@frohike.xs4all.nl] has joined #scheme 10:43:08 -!- peter___1 is now known as sjamaan 10:46:32 fnord123 [n=fnord123@94-195-126-216.zone9.bethere.co.uk] has joined #scheme 10:59:47 -!- fnord123_ [n=fnord123@host86-146-160-57.range86-146.btcentralplus.com] has quit [Read error: 110 (Connection timed out)] 11:03:42 cracki [n=cracki@44-116.eduroam.RWTH-Aachen.DE] has joined #scheme 11:04:18 -!- sjamaan [n=sjamaan@netbsd/developer/sjamaan] has quit [Read error: 60 (Operation timed out)] 11:05:16 peter___1 [n=sjamaan@frohike.xs4all.nl] has joined #scheme 11:05:34 -!- peter___1 is now known as sjamaan 11:31:43 -!- tonyg [n=tonyg@host226.lshift.net] has quit [Read error: 110 (Connection timed out)] 11:55:10 -!- attila_lendvai [n=ati@adsl-89-132-1-77.monradsl.monornet.hu] has quit ["..."] 12:04:57 antoszka [n=antoszka@unaffiliated/antoszka] has joined #scheme 12:23:55 sphex_ [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has joined #scheme 12:26:29 -!- sphex [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 12:33:05 Toast_ [n=Toast@69.9.120.58] has joined #scheme 12:34:43 Thren_ [n=Thren@75.67.111.180] has joined #scheme 12:34:49 -!- Thren [n=Thren@c-75-67-111-180.hsd1.nh.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 12:46:14 -!- Toast [n=Toast@70.40.128.168] has quit [Read error: 110 (Connection timed out)] 12:46:57 poe [n=poe@unaffiliated/xerox] has joined #scheme 12:50:44 -!- leppie [n=lolcow@dsl-243-60-08.telkomadsl.co.za] has quit [Read error: 54 (Connection reset by peer)] 12:51:26 leppie [n=lolcow@dsl-243-60-08.telkomadsl.co.za] has joined #scheme 12:54:04 -!- masm [n=masm@a213-22-83-196.cpe.netcabo.pt] has quit [Read error: 113 (No route to host)] 12:55:34 Edico [n=Edico@unaffiliated/edico] has joined #scheme 13:02:06 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit ["+++ killed by SIGSEGV +++"] 13:08:33 Modius [n=Modius@24.174.112.56] has joined #scheme 13:11:33 -!- dzhus [n=sphinx@93-80-205-240.broadband.corbina.ru] has quit [Remote closed the connection] 13:11:36 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 13:15:32 -!- TimMc [n=timmc@pinball.ccs.neu.edu] has quit ["leaving"] 13:18:40 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 13:18:46 jewel [n=jewel@dsl-242-128-103.telkomadsl.co.za] has joined #scheme 13:19:07 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 13:20:09 Edico [n=Edico@unaffiliated/edico] has joined #scheme 13:24:37 sphex [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has joined #scheme 13:25:21 TimMc [n=timmc@pinball.ccs.neu.edu] has joined #scheme 13:25:53 bombshelter13_ [n=bombshel@206.80.252.37] has joined #scheme 13:27:13 mario-goulart [n=user@201-40-162-47.cable.viacabocom.com.br] has joined #scheme 13:27:48 Narrenschiff [n=ritchie@mo-rsmitha21.op.umist.ac.uk] has joined #scheme 13:29:17 -!- choas [n=lars@p5B0DE22F.dip.t-dialin.net] has quit [Read error: 113 (No route to host)] 13:29:39 sphex__ [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has joined #scheme 13:35:02 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 13:35:53 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [SendQ exceeded] 13:40:52 Edico [n=Edico@unaffiliated/edico] has joined #scheme 13:41:25 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 13:41:31 -!- sphex_ [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 13:41:44 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [Excess Flood] 13:42:20 -!- sphex [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 13:46:10 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 13:50:44 -!- dsmith [n=dsmith@cpe-173-88-196-177.neo.res.rr.com] has quit [Remote closed the connection] 13:53:50 `Peter [n=pk@188-23-8-8.adsl.highway.telekom.at] has joined #scheme 13:55:52 -!- jewel [n=jewel@dsl-242-128-103.telkomadsl.co.za] has quit [Connection timed out] 13:56:26 -!- anborn [n=anborn@host115-210-dynamic.44-79-r.retail.telecomitalia.it] has quit [Read error: 110 (Connection timed out)] 13:56:44 anborn [n=anborn@host198-222-dynamic.0-79-r.retail.telecomitalia.it] has joined #scheme 13:57:11 jewel [n=jewel@dsl-242-128-103.telkomadsl.co.za] has joined #scheme 13:57:57 ankou [n=quassel@p57A6E25C.dip.t-dialin.net] has joined #scheme 14:02:46 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 14:13:10 dzhus [n=sphinx@93-80-205-240.broadband.corbina.ru] has joined #scheme 14:16:36 -!- mmc [n=mima@esprx01x.nokia.com] has quit [Remote closed the connection] 14:18:01 MrFahrenheit [n=RageOfTh@users-42-126.vinet.ba] has joined #scheme 14:20:54 Axioplase_: I might play with it a little now that I don't have to carry around mzscheme v372. 14:21:07 -!- leppie [n=lolcow@dsl-243-60-08.telkomadsl.co.za] has quit [Remote closed the connection] 14:23:32 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 14:23:48 hehe, that sounds like arc :) 14:26:43 Nshag [i=user@Mix-Orleans-106-4-77.w193-248.abo.wanadoo.fr] has joined #scheme 14:33:56 yep 14:37:47 sleepydog [n=user@64-252-139-167.adsl.snet.net] has joined #scheme 14:39:24 sepult [n=buggarag@xdsl-87-78-27-12.netcologne.de] has joined #scheme 14:43:11 jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 14:46:51 leppie [n=lolcow@dsl-243-60-08.telkomadsl.co.za] has joined #scheme 14:47:30 -!- cracki [n=cracki@44-116.eduroam.RWTH-Aachen.DE] has quit ["If technology is distinguishable from magic, it is insufficiently advanced."] 14:48:09 fnord123_ [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has joined #scheme 14:49:35 -!- Thren_ [n=Thren@75.67.111.180] has quit [Client Quit] 14:54:11 bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 14:58:12 mmc [n=mima@cs162149.pp.htv.fi] has joined #scheme 14:59:17 jonrafkind [n=jon@204.99.164.53] has joined #scheme 14:59:23 choas [n=lars@p5B0DE22F.dip.t-dialin.net] has joined #scheme 15:02:19 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 15:04:54 -!- fnord123 [n=fnord123@94-195-126-216.zone9.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 15:05:45 dysinger [n=dysinger@200.25.197.105] has joined #scheme 15:08:36 -!- Toast_ is now known as Toast 15:12:05 fnord123 [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has joined #scheme 15:12:09 -!- fnord123_ [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 15:13:10 -!- poe [n=poe@unaffiliated/xerox] has left #scheme 15:17:51 -!- `Peter [n=pk@188-23-8-8.adsl.highway.telekom.at] has quit [] 15:33:25 Thren [n=Thren@c-75-67-111-180.hsd1.nh.comcast.net] has joined #scheme 15:34:09 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 15:38:52 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 15:43:08 proq [n=user@unaffiliated/proqesi] has joined #scheme 15:44:30 So, let me see if I understand this "define" nonsense. 15:45:56 It looks like the top level acts like a big ol' letrec that binds all the defines. 15:46:11 Maybe a letrec*? 15:47:51 It seems that names inside of lambdas can refer to bindings farther down the page, but that if something is to be evaluated by the (define foo ...), then it has to have been define'd higher up. 15:59:21 tonyg [n=tonyg@host226.lshift.net] has joined #scheme 16:06:46 rudybot: eval (+ 1 1) 16:06:48 dstorrs: your sandbox is ready 16:06:48 dstorrs: ; Value: 2 16:07:29 rudybot: eval foo 16:07:29 TimMc: ; Value: bar 16:07:38 rudybot: eval (define (foo) (+ bar 2)) (define (bar) 2) 16:07:39 Everything is as it should be! 16:08:17 hmmm...no response at all. guess I broke him 16:08:28 dstorrs: You defined two lambdas. 16:08:53 yeah, that was the point. I was trying to demonstrate that it could refer to something further down the page 16:09:28 dstorrs: And clearly it isn't evaluating the contents of foo... 16:09:40 no, clearly it isn't evaluating at all. 16:09:40 ...since it would have trouble adding 2 to a procedure. 16:10:07 Yeah, I've come to the conclusion that it puts everything in a big ol' letrec*. 16:10:10 well yes, there is that. forgot the parens 16:10:19 rudybot: eval (define (foo) (+ (bar) 2)) (define (bar) 2) 16:10:43 hm. not sure how to quote it so that the whole thing is eval'd, not just the first clause. 16:10:52 since I suspect that's where the fail is. 16:11:01 rudybot: eval 1 2 16:11:01 TimMc: ; Value: 2 16:11:03 rudybot: eval (define (bar) 2) (define (foo) (+ (bar) 2)) 16:11:28 It evaluates all, and returns the results of the last. 16:11:40 Put a (foo) at the end. 16:11:53 rudybot: eval (define (foo) (+ (bar) 2)) (define (bar) 2) (foo) 16:11:53 dstorrs: ; Value: 4 16:12:01 ah. cool, ta 16:12:21 Just like a (begin ...) 16:12:28 anyway, there you go TimMc; proof that a lambda can refer to something later in the file. 16:13:03 Now I'm trying to write letrec* as a macro, since I'm working in R5RS. :-) 16:13:23 (btw, I would have expected to get back something like "" with the penultimate version) 16:13:41 Nah, (define) doesn't return anything. 16:13:50 rudybot: eval (define foo 4) 16:13:58 rudybot: eval foo 16:13:58 TimMc: ; Value: 4 16:14:13 it doesn't? 16:14:20 -!- dfeuer [n=dfeuer@wikimedia/Dfeuer] has quit [Read error: 110 (Connection timed out)] 16:14:21 huh. I sit corrected, my apologies. 16:14:26 rudybot: (define foo (define bar 5)) 16:14:27 TimMc: eh? Try "rudybot: help". 16:14:35 rudybot: eval (define foo (define bar 5)) foo 16:14:35 TimMc: error: eval:1:12: define: not allowed in an expression context in: (define bar 5) 16:14:41 Heh. 16:14:53 Who was it that said "it's not what we don't know that's the problem. It's the things we know that ain't so." ? 16:15:01 -!- fnord123 [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has quit [Read error: 60 (Operation timed out)] 16:16:56 -!- thesnowdog [i=thesnowd@122.110.24.229] has quit [Read error: 60 (Operation timed out)] 16:17:47 fnord123 [n=fnord123@94-195-126-216.zone9.bethere.co.uk] has joined #scheme 16:18:16 rudybot: seen vegashacker 16:18:16 dstorrs: No sign of vegashacker 16:18:50 anyone know vegashacker (LeftParen author) and if / where he hangs out in IRC? 16:24:38 -!- npe [n=npe@195.207.5.2] has quit [] 16:31:08 Judofyr_ [n=Judofyr@c249DBF51.dhcp.bluecom.no] has joined #scheme 16:31:08 -!- Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has quit [Read error: 104 (Connection reset by peer)] 16:35:00 minion: source 16:35:01 Sorry, I couldn't find anything in the database for ``source''. 16:39:45 -!- Judofyr_ is now known as Judofyr 16:40:03 Hmm, I don't think it's possible for a letrec macro to be written without either a) mutation or b) replacement of variables with function applications. 16:41:46 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [Nick collision from services.] 16:41:56 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 16:42:04 kniu [n=kniu@pool-71-106-16-199.lsanca.dsl-w.verizon.net] has joined #scheme 16:42:39 arcfide [n=arcfide@adsl-99-14-210-197.dsl.bltnin.sbcglobal.net] has joined #scheme 16:44:19 langmartin [n=user@exeuntcha.tva.gov] has joined #scheme 16:45:33 -!- dysinger [n=dysinger@200.25.197.105] has quit [Remote closed the connection] 16:48:24 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 16:48:29 Yes, TimMc. 16:50:21 mrsolo [n=mrsolo@nat/yahoo/session] has joined #scheme 16:51:01 TimMc pasted "letrec using code rewriting" at http://paste.lisp.org/display/84837 16:52:17 I'm getting into _ Combinator territory, yeah? 16:53:03 fnord123_ [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has joined #scheme 16:58:42 thesnowdog [i=thesnowd@114.73.16.145] has joined #scheme 17:01:53 fnord1231 [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has joined #scheme 17:04:10 Foofie [n=innocent@86.80-203-225.nextgentel.com] has joined #scheme 17:05:24 -!- fnord123 [n=fnord123@94-195-126-216.zone9.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 17:05:29 -!- fnord1231 [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has quit [Client Quit] 17:12:03 -!- Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has quit [Read error: 110 (Connection timed out)] 17:15:08 -!- fnord123_ [n=fnord123@78-105-27-133.zone3.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 17:19:41 -!- chylli [n=lchangyi@119.181.15.104] has quit [Remote closed the connection] 17:22:20 rudybot: eval (define pear (cons 1 2)) (length pear) 17:22:20 TimMc: error: length: expects argument of type ; given (1 . 2) 17:23:54 rudybot: eval (set-cdr! pear pear) (length pear) 17:23:55 TimMc: error: reference to undefined identifier: set-cdr! 17:24:08 >_> 17:25:46 What do I need to make set-cdr! available? 17:26:53 Note: When I run those lines in DrScheme, it hangs. Should be checking (list? pear) before running down it, IMHO. 17:30:26 -!- Narrenschiff [n=ritchie@mo-rsmitha21.op.umist.ac.uk] has quit [] 17:30:48 flyfish [n=flyfish@pixout.appriss.com] has joined #scheme 17:31:55 -!- dzhus [n=sphinx@93-80-205-240.broadband.corbina.ru] has quit [Remote closed the connection] 17:33:37 -!- Thren [n=Thren@c-75-67-111-180.hsd1.nh.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 17:33:43 Thren [n=Thren@c-75-67-111-180.hsd1.nh.comcast.net] has joined #scheme 17:37:41 -!- proq [n=user@unaffiliated/proqesi] has quit [Remote closed the connection] 17:38:11 proq [n=user@38.100.211.40] has joined #scheme 17:46:27 monsier [n=monsier@p1021-ipbf1004hodogaya.kanagawa.ocn.ne.jp] has joined #scheme 17:47:49 -!- monsier [n=monsier@p1021-ipbf1004hodogaya.kanagawa.ocn.ne.jp] has quit [Client Quit] 18:01:05 -!- joast [n=rick@76.178.178.72] has quit ["Leaving."] 18:01:40 joast [n=rick@76.178.178.72] has joined #scheme 18:02:07 MrEdFromNetherla [n=chatzill@88.159.208.42] has joined #scheme 18:04:25 Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has joined #scheme 18:06:18 -!- MrEdFromNetherla [n=chatzill@88.159.208.42] has left #scheme 18:08:13 are hash table keys always strings, or can they be anything? 18:09:42 -!- nunb [n=user@static-217-133-104-225.clienti.tiscali.it] has quit [Connection timed out] 18:10:14 dstorrs: anything 18:11:18 great, thanks. 18:11:35 dstorrs: see make-custom-hash if you really want to specify its behavior. 18:11:52 also prop:equal+hash property in structures. 18:17:44 -!- rstandy` [n=rastandy@net-93-144-234-212.t2.dsl.vodafone.it] has quit [Read error: 104 (Connection reset by peer)] 18:19:57 ta. 18:23:26 another question: what is the normal way to implement a variable that is static (i.e., persistent across func calls) but only available to a limited set of getters / setters? The example to hand is a hashtable of access permissions 18:23:27 delopart [n=sfv@88.235.230.1] has joined #scheme 18:23:29 hey 18:23:32 i read plai 18:23:44 -!- anborn [n=anborn@host198-222-dynamic.0-79-r.retail.telecomitalia.it] has quit [Remote closed the connection] 18:23:53 do you suggest something about difference between static and dynamic scope 18:24:27 and what points do i focus on in writing interpreter 18:25:57 dstorrs: define the functions as lambdas, and assign them bindings via define-values. Put the variable in a let. 18:27:54 synx: thanks. that almost make sense and I'll go read until I get the missing pieces. :> 18:28:26 Lemme throw up a quick example... probably not the only way to do it. 18:29:37 any suggestion 18:35:33 https://synx.us.to/code/static.ss 18:37:06 dstorrs: that's what I'm talking about. 18:37:44 er...cert failed, then the link 404'd 18:38:04 oops 18:38:07 https://synx.us.to/code/scheme/static.ss 18:38:14 Teach me to not check it first. 18:38:21 :> 18:38:57 The cert didn't fail, just your browser told you to check it first. And lied about it failing. 18:39:42 ...check the certificate I mean. It's signed by CACert... 18:40:35 I just added an exception and moved on I doubt you're trying to scam me with your offer of FREE EXAMPLE CODE HERE!!!!!!11!! 18:40:38 :> 18:40:50 ok, this makes sense, thanks. 18:40:58 synx: I love (hate) how CACert doesn't provide their root certificate over a secure connection... 18:41:34 haha yeah dstorrs. 18:41:39 so define-values is used like define, but allows you to map multiples names and bodies at a time. handy 18:42:08 TimMc: Huh, but what certificate would they use if they offered their root certificate over a secure connection? 18:42:15 Yeah define-values is handy. 18:43:22 synx: They should have a subdomain with https (signed by a "standard" authority, like Verizon) that serves the cert file. 18:43:47 saccade_ [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has joined #scheme 18:44:38 So they should pay this Verizon fellow, why? 18:45:28 I dunno. I think SSL certificates are a Ponzi scheme, so you probably won't be able to reason with me. 18:45:46 synx: If they want to gain market share, they need an "in". 18:46:06 Being added to the default authority list for a bunch of browsers would be ideal, of course. 18:46:43 So you personally trust the market leaders more than any random person who isn't trying to sell you snake oil? 18:46:57 I actually remove their certificates from my browser. 18:47:06 >_> 18:47:22 synx: How do you get anything *done*? 18:48:09 Well it's not like I have a lot of money to do online shopping. I just won't trust an authority, especially a central authority, who's trying to make money off of the deal. 18:48:13 Conflict of interests. 18:50:44 do you suggest any tutuorial for lambda calculus normal form etc etc. 18:51:02 *rotty* has implemented (and deployed) searching with context and match highlighting for IRClogs -- give it a spin: http://rotty.yi.org/irclogs/freenode/%23scheme/ 18:56:55 jeapostrophe [n=jay@204.99.164.72] has joined #scheme 18:56:55 18:57:50 , even 18:58:12 almost! 19:00:06 19:00:10 makes it super easy :) 19:00:10 -!- m811 [n=user@84-50-207-42-dsl.est.estpak.ee] has quit [""If you put a million monkeys at a million keyboards, one of them will eventually write a Java program. The rest of them will] 19:00:31 -!- dstorrs [n=dstorrs@cpe-98-14-187-196.nyc.res.rr.com] has left #scheme 19:00:41 dstorrs [n=dstorrs@cpe-98-14-187-196.nyc.res.rr.com] has joined #scheme 19:01:03 *grumble* damn window-focus-doesn't-follow-my-eyes rule. 19:05:54 So regarding units... I tried this: https://synx.us.to/code/scheme/forum/db/basic-sig.ss 19:06:19 It seems really similar to the first example in http://doc.plt-scheme.org/guide/Contracts_for_Units.html 19:06:56 But when I import that signature it says... "basic-sig.ss:10:34: expand: unbound identifier in module in: piece-list/c" 19:07:27 npe [n=npe@94-224-251-223.access.telenet.be] has joined #scheme 19:07:59 -!- HG` [n=wells@xdslhk208.osnanet.de] has quit [Client Quit] 19:08:18 -!- sepult [n=buggarag@xdsl-87-78-27-12.netcologne.de] has quit ["leaving"] 19:09:24 synx: Dare I ask why your site asks for my client cert? 19:10:28 Oh, just fancying the concept of using it for user logons. A few things about SSL make it pretty much unworkable though. 19:11:09 synx: Like not having a mechanism for logout? :-P 19:12:35 Like not having a mechanism for anonymous access. 19:12:56 dstorrs: I wonder how feasible it would be to use one of those laptops with a webcam above the monitor to track your eyes and select the desired window 19:13:18 sleepydog: Or just use an eye-tracking cursor system. 19:13:47 The SSL folks set it so either you kill the connection when the client has no certificate, or you cannot check the certificate at all. Apache found a way around that, but it's really kind of a tricky meddling with the SSL protocol. 19:15:00 -!- saccade_ [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has quit ["This computer has gone to sleep"] 19:15:57 TimMc: Imagine if your browser had no way for you to delete any cookies it had acquired. Now imagine your browser had no convenient way to stop using a client certificate certain places. Same deal really, just the latter is reality. 19:16:21 Nobody uses client certificates for logon, so browsers don't really support it, so nobody uses it, so it's kind of a catch-22. 19:16:52 I only use it for one site, which is myopenid.com 19:17:02 cacert.org uses client certificates for logon. That's the only place I've found really. 19:17:18 Oh, you understand how OpenID works? 19:17:24 Vaguely. 19:17:27 heh 19:17:43 sjamaan: I assume you are thinking, "Does anybody?" 19:18:16 synx: Clarification, just in case: I am a *user* of myopenid.com 19:18:17 I am thinking "if some of the smartest people people in the world (schemers) don't get it, how will the average Joe?" 19:18:23 i am newbie on lambda calculus can you suggest ay tutorial ? 19:19:25 I implemented an OpenID server once, but still couldn't figure out why it worked really. 19:19:38 delopart: http://lambda-the-ultimate.org/node/492#comment-3819 19:19:45 I think it's like ident, pretty much. 19:20:32 synx: I figure if I'm going to have a SSO like OpenID, I'd damn well better have nothing less than a client certificate. Passwords open the door to spoofing/phishing. 19:20:50 Haha good idea that TimMc 19:23:11 I don't like the hierarchical authority of SSL certificates, but in terms of security they kick passwords's asses. 19:24:17 ment, this is only three paragraph 19:25:35 If a middle man captures your SSL session they can spy on you only until you find a way around the system they control. If they do the same thing and you use a password, they can spy on you indefinitely and cheaply, and impersonate you on that account any time in the future. 19:26:20 delopart: those are links to various lambda-calculus related articles and tutorials 19:26:31 -!- ventonegro [n=alex@li17-123.members.linode.com] has quit [Read error: 54 (Connection reset by peer)] 19:26:44 Well, unless you use digest authentication that is. Then it's about as good as SSL. They can still spy a lot cheaper though. Passive analysis instead of active connection interrupting. 19:27:31 -!- rouslan [n=Rouslan@unaffiliated/rouslan] has quit [Read error: 104 (Connection reset by peer)] 19:34:42 ventonegro [n=alex@li17-123.members.linode.com] has joined #scheme 19:35:29 -!- jeapostrophe [n=jay@204.99.164.72] has quit [] 19:36:41 -!- REPLeffect [n=REPLeffe@69.54.115.254] has quit [Excess Flood] 19:43:02 REPLeffect [n=REPLeffe@69.54.115.254] has joined #scheme 19:46:40 jeapostrophe [n=jay@204.99.164.72] has joined #scheme 19:58:07 -!- jeapostrophe [n=jay@204.99.164.72] has quit [] 20:00:32 are there someone who knows plai 20:01:43 andy_ [n=andy@87.114.148.38.plusnet.thn-ag1.dyn.plus.net] has joined #scheme 20:03:31 -!- andy_ [n=andy@87.114.148.38.plusnet.thn-ag1.dyn.plus.net] has quit [Client Quit] 20:13:57 jeapostrophe [n=jay@204.99.164.72] has joined #scheme 20:17:29 I answered my own question about mutable lists and (length). I was using R5RS in PLT, where cons creates mutable lists. 20:17:56 -!- MrFahrenheit [n=RageOfTh@users-42-126.vinet.ba] has quit [Read error: 104 (Connection reset by peer)] 20:18:13 MrFahrenheit [n=RageOfTh@users-42-126.vinet.ba] has joined #scheme 20:18:32 rudybot uses regular ol' PLT, which has cons create immutable lists, and only supports mutable pairs through mcons, set-mcar!, and set-mcdr!. 20:19:01 rudybot: init r5rs 20:19:02 eli: your r5rs sandbox is ready 20:19:07 rudybot: (define c (cons 1 2)) 20:19:08 eli: eh? Try "rudybot: help". 20:19:11 rudybot: eval (define c (cons 1 2)) 20:19:16 rudybot: eval (set-car! c 123) 20:19:18 rudybot: eval c 20:19:18 eli: ; Value: {123 . 2} 20:19:38 amoe [n=amoe@cpc1-brig3-0-0-cust512.brig.cable.ntl.com] has joined #scheme 20:22:17 Why does PLT use curly braces in the R5RS and R6RS languages? 20:25:17 To remind you of the fragility of your reality. 20:25:40 If I wanted that, I'd be using C++. 20:27:42 Or CL. 20:28:15 from __future__ import braces 20:29:06 Ha, as if any sane language designer would do such a thing. 20:29:14 -!- mario-goulart [n=user@201-40-162-47.cable.viacabocom.com.br] has quit [Remote closed the connection] 20:29:49 -!- langmartin [n=user@exeuntcha.tva.gov] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 20:30:08 I'm not aware of any CL implementation that prints conses using read syntax that a minimally standards-compliant implementation can't read. 20:30:58 Right, but their reality is a strong competitor to C++ in the fragile reality department. 20:32:20 Is there a specific instance of that you can point to? 20:33:08 Of what? Being fragile? 20:35:29 eli: speaking as a newbie who needs to ask the dumb questions, here: why does it matter? what makes curlies more fragile than anything else? 20:36:18 dstorrs: That was a joke, referring to curly braces that indicate mutable pairs. 20:36:34 ...and mutable pairs lead to some serious problems. 20:36:36 personally, if we want to talk fragile reality, I'm still coming to grips with why PLT implements multiple languages. 20:36:49 ? 20:36:55 dstorrs: "The following two characters are reserved for future extensions to the language: { }" 20:37:13 chandler: ah. ok, thanks. 20:37:21 Thus PLT is using print syntax that a minimally conforming implementation is not required to be able to read. 20:37:23 dstorrs: Start your file with `#lang scheme' and you'd never see any other language. 20:37:24 -!- REPLeffect [n=REPLeffe@69.54.115.254] has quit [Read error: 113 (No route to host)] 20:37:57 eli: fair enough. why then is there "#lang scheme/base" and all the various sub-languages built into DrScheme? 20:38:12 I took the "fragility of your reality" comment to mean that sanity is overrated, and thus there's no good reason trying to stick to printing things in a way that other implementations of the same language can read. 20:38:29 the Lisp / Scheme communities are already very fragmented with high barriers to entry. multiple versions of a given language with no easy way for a beginner to tell which one he should pick or why just fractures / raises it further. 20:38:33 chandler: Feel free to (a) complain on the list, (b) convince people why it's better to switch, and (c) either hack a fix, or find people who care enough to do so. 20:38:41 Why do there exist multiple languages at all, dstorrs? PLT Scheme merely implements more than one, and therefore must let you specify what language you mean. 20:39:17 dstorrs: The "Scheme language" is the main problem -- it's not a language, it's a family of related ones. 20:39:34 This is not just a matter of `community fragmentation' or anything -- these are different languages with their own independent merits which cannot just be merged into one. For example, one of the languages is a lazily evaluated variant of Scheme. Another of the languages is a statically typed variant of Scheme. 20:40:37 Riastradh: I understand what you're saying, but it only goes so far. 20:40:59 dstorrs: And re your question about the actual PLT languages -- the `scheme' language is meant to be a convenient "has a lot of stuff built in" language; `scheme/base' is a kind of a small language that is less likely to change, and the rest of them are all kinds of things that can be very far from "Scheme". 20:41:06 (As Riastradh pointed out.) 20:41:12 My understanding is that there is a subset of features common to all members of the family. 20:41:34 dstorrs, would you be happier if you could just say `I want the language that the R5RS specifies!' or `I want the language that I find in EoPL!'? 20:43:29 Thinking of it in terms of `a subset of features common to all members of the family' will get you basically nowhere. Sure, there are many ideas in common, but not in a way that can be meaningfully codified in the implementation of the language. 20:43:42 really, I'd be happier if all of the Scheme variants ran under one roof, and these additional features were either compiler switches or modules. But I understand why it isn't that way. 20:44:20 What do you mean by "under one roof", and how is it different than what PLT does now? 20:44:26 How is the `scheme' module which you specify using `#lang scheme' different from what you want? 20:44:29 dstorrs: Some of the differences are much more major than you'd thing. 20:44:42 s/g/k/ 20:44:50 Does it help to think of PLT as a toolkit for implementing languages, which happens to ship several languages with the toolkit? 20:44:51 "But I understand why it isn't that way." :> 20:45:01 -!- mmc [n=mima@cs162149.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 20:45:30 Does PLT actually add any languages to the mix that didn't exist outside of it? 20:45:35 chandler: BTW, a bit more seriously -- the general move is in that exact direction, 20:45:52 chandler: One of the things that is not easy to do yet is a per-language printer. 20:46:03 chandler: again, I understand what you're saying, but I still think that it's painting the duck white and calling it a swan. 20:46:09 TimMc: I can't parse that question. 20:46:09 chandler: And that's one reason why the r[56]rs languages print with {}s. 20:46:24 dstorrs, what's a duck, then? What do you want instead of what PLT Scheme currently does? 20:46:53 Riastradh: I think the problem we're having is that we're talking about two different problems. 20:47:10 I did a lot of research before choosing PLT. I'm happy here. 20:47:29 I understand why the different PLT variants exist. 20:47:54 I understand why the different Scheme language family members exist, and are separate. 20:48:01 m811 [n=user@84-50-207-42-dsl.est.estpak.ee] has joined #scheme 20:48:03 I just paid parking ticket number 262262626. 20:48:18 All of that is the problem you're talking about, and I'm saying that I get it, and it's fine. 20:48:21 eli: I find that vaguely unsatisfying. 20:48:48 TimMc: What -- the brokenness in the 22 area? 20:49:10 The problem I'm talking about is that I think the fragmentation of (the community of people who do Lisp / Scheme like languages) into such small splinter groups is a disservice to the community, and to the world as a whole. 20:49:17 chandler: PLT support a... few languages. One of them is mzscheme, which seems to be the most "native" to it. Others appear to have been pulled in from elsewhere. 20:49:20 Assuming that they're sequential, I'm still disappointed that I didn't get some prize. 20:49:57 TimMc: The basic most common language is `scheme/base' 20:50:47 I'll rephrase: Which languages did PLT introduce? 20:50:49 I think that parking ticket number is fairly uninteresting. If it was a prime, though... 20:51:24 dstorrs: How can an abstraction be a disservice to the world as a whole? 20:51:29 I think there are so many styles to write lisp in fragmentation is unaviodable 20:51:41 chandler: If it was prime then no meter-maid-or-whatever-they're-called would notice it. But *this* number should have made him/her wait for me next to the car to congratulate me. 20:52:05 TimMc: What do you mean by "introduce"? 20:52:24 If they had wanted to give you a prize, they would have not given you the ticket at all. But clearly *somebody* must get that ticket. So, no prize. 20:52:38 there could at least have been a no-prize 20:52:43 eli, gee, I didn't know you were into numerology! I'd say something witty about the kaballah, but I'm too ignorant to do so. 20:53:29 Not numerology -- just that if you were assigned phone numbers by a parking ticket number, then I'd be very happy now. 20:54:00 chandler: getting into Scheme is already hard enough. continuations, macros, these are new concepts to almost all non-Lisp programmers. even recursion breaks your brain the first time you encounter it. 20:54:43 but if you want to get into Perl, or Java, or PHP or... you can just go out on the web, google up some code examples, run them, and watch what happens. After a while, you start to get it. 20:55:13 It's much harder to do that with Scheme. If the code isn't from the exact version you're using, it likely won't run...or even compile. 20:55:21 it isn't usually clearly marked what version it's for. 20:55:25 eli: Each language that PLT supports was either created as part of the project or is specified by some external project, yeah? 20:56:24 it splits the community. If I walk up to a random Schemer (who, uh oh, uses a different variant than I do!) and ask him for help with problem XYZ and he gives me some code, how do I know it will run? 20:56:28 eli: what's so special about your parking ticket number? 20:56:51 when I write a useful module and FOSS it, it's useful to a smaller group of people. 20:57:04 or I have to do a lot more testing and maintenance. 20:57:09 TimMc: In that case, all of them. Even the r5rs language has plt extensions. 20:57:33 dstorrs: If I walk up to a random person who speaks English and ask a question, what guarantee is there that I will understand the answer? 20:57:34 this is the fragmentation problem I'm talking about. This is the "disservice to the world" that I mentioned above. 20:57:51 sleepydog: If you write it in binary, and reflow the lines at a specific width, print it on a piece of semi-transparent paper, and put it on the bible, you see a hidden message. 20:58:30 all: ok, let's just agree to disagree. 20:58:37 chandler: Computers are supposed to be better at communication... 20:58:48 dstorrs: You are personifying abstractions too much. "The community" is nothing more than a collection of individuals. 20:59:17 Your complaint is that some of those individuals won't do things the way you want them to. Of course they don't! If you like, find a common subset that does, and stick to communicating with them. 20:59:38 TimMc: Programming languages aren't for computers. They're for humans. 20:59:40 `Peter [n=pk@188-23-8-133.adsl.highway.telekom.at] has joined #scheme 20:59:53 chandler: actually, you have it exactly backwards. 21:00:09 The problem isn't that THEY won't do it MY way...it's that I *can't* do it the way that everyone else does. 21:00:29 anyway, enough of this. you obviously understand and don't agree with my point, so we're done. 21:01:55 jengle [n=jengle@64.252.88.235] has joined #scheme 21:02:59 chandler: *grumble* 21:04:45 dstorrs: I am not trying to agree or disagree with your point. I am trying to understand it first, but you are speaking in terms that I don't understand. I get the feeling that you are not interested in discussing this any more, however. 21:05:42 hi 21:06:13 -!- jengle [n=jengle@64.252.88.235] has quit [Client Quit] 21:06:50 chandler: not really, sorry. That's about as clear as I know how to be. I tried to put it in different words each time, but if none of it got through, I don't know what else to say. 21:08:41 You could start by not talking about groups of individuals as if they were independent entities which have agency or can be harmed by things. 21:09:41 Sorry, if you don't think that groups can be harmed then we're really not going to be able to communicate. 21:09:53 "Today, 50,000 Americans died in car crashes." 21:09:57 etc. 21:10:14 -!- jewel [n=jewel@dsl-242-128-103.telkomadsl.co.za] has quit [Read error: 113 (No route to host)] 21:11:09 That's a statement about a number of individuals. I think it's a bit different than accusing an abstraction ("fragmentation") of harming a "community" that may or may not actually exist. 21:11:46 ok. I hear you. 21:15:00 The fragmentation hurts *me*, as a n00b, by making it really confusing to try and read code samples and discussions. 21:15:17 xian [i=xian@pdpc/supporter/active/xian] has joined #scheme 21:15:19 It may also help me, by providing a large ecosystem to choose from. 21:18:10 You're still assigning agency to an abstraction ("fragmentation"). 21:18:12 (Why yes, I *am* a lot of fun to talk to at parties. How could you tell?) 21:18:18 TimMc: This fragmentation will always exist. It started around 1960, when you had two languages to choose from. 21:22:03 -!- copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has quit [Client Quit] 21:22:57 For what it's worth, you could just look at the code that won't run as being code that could run if you had the right definitions available. 21:24:38 chandler: Reading code involves knowing the pragmatics and practices of that language or style. 21:24:49 chandler: i have a counter-example for you, actually, w.r.t. the reification of groups as injurable entities: . 21:25:23 I can rip through some jQuery code, no problem. It uses chaining, and I'm fine with that. 21:25:49 But if someone handed me some code that used the proposed "ultra-chaining", I'd have to really sit down and grovel through it. 21:28:19 -!- `Peter [n=pk@188-23-8-133.adsl.highway.telekom.at] has quit [] 21:29:14 TimMc: Could you "rip through" some Java code if you know C++? 21:29:33 Could you "rip through" JavaScript written in CPS if you didn't know anything of CPS? 21:29:37 -!- Judofyr [n=Judofyr@c249DBF51.dhcp.bluecom.no] has quit [Remote closed the connection] 21:30:33 *sjamaan* rips through some popcorn 21:30:56 mmmm popcorn. 21:31:09 chandler: You can write JS without CPS? :-P 21:32:08 eli: Maybe? Dunno. Never really learned C++. I know Java quite well, and C++ is a little tricky to read. 21:32:33 You're making a cross-language comparison, though. 21:32:39 TimMc: The point is that the superficial similarity between the two is close to the superficial similarity between various Scheme implementations. 21:32:59 The main point is that it *is* also a cross-language comparison. 21:33:09 klutometis: My rejection of the reification of groups is not a passive rejection, but an active one. I believe that when an individual uses certain language patterns, he or she indicates and reinforces a bias towards certain modes of thinking. I try to avoid language that I believe reinforces a mode of thinking that I do not wish to partake in. 21:33:11 Are you suggesting that the "Schemes" shouldn't be thought of as variants of a single language? 21:33:16 Anyway, this is wildly off topic :-) 21:33:24 TimMc: Yes, that's exactly what I said above. 21:33:32 OK, I can deal with that. 21:34:04 -!- jeapostrophe [n=jay@204.99.164.72] has quit [Read error: 60 (Operation timed out)] 21:34:06 TimMc: this line -- The "Scheme language" is the main problem -- it's not a language, it's a family of related ones. 21:35:28 So then my grievance is not in fact "fragmentation", but rather the perception of a single language in the first place. 21:35:36 I personally believe it's best to use "the Scheme language" to refer to one or more of the languages defined in the Revised (Revised ...) Reports on the Algorithmic Language Scheme, and to name a particular report if more specificity is needed. 21:35:45 sphex [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has joined #scheme 21:36:02 I think it's entirely possible to speak usefully about the language defined in the R5RS, even when discussing multiple implementations of that language. 21:36:37 copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has joined #scheme 21:37:05 chandler: Sure, there are certain features that arise naturally from the minimal specification. 21:37:15 Languages that build on the R5RS can be discussed fruitfully if the participants recognize the portions of those languages that differ from each other. 21:38:56 I think using "Scheme" to refer to languages that don't build on one of the RnRS, such as PLT, is likely to cause confusion. 21:39:09 -!- jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Read error: 60 (Operation timed out)] 21:40:55 In fact, I often forget that PLT is not Scheme myself. 21:41:01 ... 21:41:35 (Perhaps I should say "PLT Module" to indicate the language that PLT calls "Scheme", which is not Scheme.) 21:42:02 Ah, the module language? 21:42:36 Yes. I'm referring to the language that PLT provides when you begin a program with "#lang scheme". 21:42:36 Is that what runs the interpreters for the other languages? 21:42:55 I don't know. I'm not an expert on the structure of PLT. 21:44:09 -!- jonrafkind [n=jon@204.99.164.53] has quit [Read error: 110 (Connection timed out)] 21:45:01 What is the module language, then? 21:45:29 Isn't the module language deprecated? 21:45:30 -!- bombshelter13_ [n=bombshel@206.80.252.37] has quit [] 21:45:34 Or legacy? 21:46:03 I'm not sure. I'm using 4.2, and in DrScheme when I open the "Choose Language" menu it offers me Module as the first choice. 21:46:11 jeapostrophe [n=jay@eng-4-72.hotspot.utah.edu] has joined #scheme 21:46:46 chandler: Oh, maybe it's not then. 21:48:09 chandler: indeed; but the passive/active distinction is a red herring. the paper should provide a counterexample to either rejection. 21:50:32 incubot: If you could be a reification, which one would you be? 21:50:36 She doesn't pass command-line arguments. In more advanced apps where they are needed, we could in the future define an library that provides a GUI to fill in all unspecified but required arguments. 21:52:35 -!- sphex__ [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 21:54:09 -!- npe [n=npe@94-224-251-223.access.telenet.be] has quit [] 22:00:33 jonrafkind [n=jon@204.99.164.53] has joined #scheme 22:01:43 saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 22:01:57 REPLeffect [n=REPLeffe@69.54.115.254] has joined #scheme 22:03:04 klutometis: Fair enough, and I do actually use group language when discussing groups where all of the members have individually agreed to act collectively. I tend to eschew such language when that's not shown to be the case. It's not at all clear, for instance, that there is a meaningful way in which users of a particular programming language have agreed to that, such that they may be characterized as an institutional person named "the community 22:03:04 -!- synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has quit [Remote closed the connection] 22:05:15 well, so long for now all. I'm off to WorldCon. 22:06:02 -!- dstorrs [n=dstorrs@cpe-98-14-187-196.nyc.res.rr.com] has quit ["Get MacIrssi - http://www.g1m0.se/macirssi/"] 22:06:32 synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has joined #scheme 22:08:31 -!- REPLeffect [n=REPLeffe@69.54.115.254] has quit ["bye"] 22:08:59 REPLeffect [n=REPLeffe@69.54.115.254] has joined #scheme 22:14:19 -!- flyfish [n=flyfish@pixout.appriss.com] has left #scheme 22:18:27 chandler: you got cut off at ``person named `the community...''' 22:19:02 i nevertheless agree, though, that "the community" is an irritating nomination; and one with which i would not identify 22:19:45 -!- amoe [n=amoe@cpc1-brig3-0-0-cust512.brig.cable.ntl.com] has quit [Remote closed the connection] 22:20:13 it may be, however, be valid in subpopulations where the koolaid is particularly potent; viz. python and ruby ``communitates'' 22:20:36 s/may be/may/ 22:24:03 chandler: (a) The so called "Module language" is a meta concept that will disappear, as it will eventually become the only way to choose a language; (b) the default language used in PLT -- called `scheme' -- is far closer to what is usually called "Scheme" than some implementations like Stalin. 22:25:14 eli: So the module language is a mode in which I can select from a number of "actual" languages? 22:25:38 TimMc: Yes. 22:26:29 TimMc: And btw, re your "rather the perception of a single language in the first place" -- that's exactly the problem. 22:26:47 So (down the road) students would put "#lang htdp/beginner" at the top, or similar? 22:27:56 Yes. 22:28:19 Just like in 660, where students use #lang CSU660 [something] 22:29:20 -!- copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has quit [Client Quit] 22:33:05 -!- Foofie [n=innocent@86.80-203-225.nextgentel.com] has quit ["Leaving"] 22:33:30 -!- jeapostrophe [n=jay@eng-4-72.hotspot.utah.edu] has quit [] 22:39:43 soupdragon [n=f@amcant.demon.co.uk] has joined #scheme 22:49:15 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:56:56 holy shit; did anyone know that $'cat\'s' -> cat's in bash? no need for Riastradh's 'cat'"'"'s' 22:58:20 Yup. 23:11:10 copumpkin [n=pumpkin@dhcp-212-203.cs.dartmouth.edu] has joined #scheme 23:19:29 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 23:19:32 -!- jao [n=jao@21.Red-83-43-33.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 23:25:25 -!- ankou [n=quassel@p57A6E25C.dip.t-dialin.net] has quit [Read error: 104 (Connection reset by peer)] 23:41:36 -!- choas [n=lars@p5B0DE22F.dip.t-dialin.net] has quit [Read error: 113 (No route to host)] 23:43:22 -!- copumpkin [n=pumpkin@dhcp-212-203.cs.dartmouth.edu] has quit [Client Quit] 23:48:35 dfeuer [n=dfeuer@wikimedia/Dfeuer] has joined #scheme 23:50:11 -!- kib2 [n=kib@bd137-1-82-228-159-28.fbx.proxad.net] has left #scheme 23:54:54 poe [n=poe@unaffiliated/xerox] has joined #scheme 23:59:03 -!- athos [n=philipp@92.250.250.68] has quit ["leaving"]