00:05:04 -!- bweaver [n=user@75.148.111.133] has quit [Read error: 113 (No route to host)] 00:05:09 is there an equivilance test for identical procedures? 00:05:15 like (eq? list (lambda x x)) 00:05:24 or maybe equivilant? 00:05:41 geckosenator: Those are not equivalent procedures. 00:05:48 how are they different? 00:05:52 they do the same thing 00:05:53 How would you define equivalence? 00:06:03 same behavior 00:06:11 geckosenator: What is "same?" 00:06:28 if you put them in variables, x, and y 00:06:31 you couldn't tell them apart 00:06:37 You haven't even given a definition of LIST here, it could be anything. 00:06:52 I'm saying what (list) normally does 00:07:01 And it's very possible that I could tell them apart if I used a Scheme's means of introspecting the memory regions of procedures. 00:07:05 is't the same as ((lambda x x)) 00:07:10 hmm ok 00:07:24 offby1` [n=user@q-static-138-125.avvanta.com] has joined #scheme 00:07:27 well they have the same results with given inputs 00:07:39 I wanted to test if it's true 00:07:46 Is it? Maybe it has special cased certain cases, maybe it actually passes its input to some other procedure for handling after doing some sort of analysis. Maybe it also checks a parameter for handling some special implementation specific thing. 00:08:08 -!- offby1 [n=user@q-static-138-125.avvanta.com] has quit [Nick collision from services.] 00:08:10 -!- offby1` is now known as offby1 00:08:16 well if it does any of that it would return false :-P 00:08:18 geckosenator: You mean you want to test whether two functions will have the same output given the same input? 00:08:23 yes 00:08:41 give them both the same input ... see if their outputs are the same :) 00:08:52 offby1: for all possible inputs 00:09:16 rudybot_ [n=luser@q-static-138-125.avvanta.com] has joined #scheme 00:09:17 geckosenator: Alright, are these two procedures going to produce the same outoput? (LIST (X 'A) (Y 'B)) and ((LAMBDA X X) (X 'A) (Y 'B))? 00:09:36 geckosenator: Think for a second about what you are asking. 00:09:47 heh 00:09:52 I like my answer 00:10:08 Let's say I guarantee that X and Y will return their argument, are they still the same? 00:10:34 -!- rudybot [n=luser@q-static-138-125.avvanta.com] has quit [Read error: 60 (Operation timed out)] 00:10:41 They may return the same values, but that doesn't mean much. If that's all you want, even then, how are you going to test all possible inputs? 00:11:20 the underlying scheme would do that part 00:11:21 using logic 00:11:38 it wouldn't have to test any inputs, just prove they are equivilant 00:11:43 *arcfide* LOLs. 00:11:47 heh 00:11:57 it would be cool 00:12:04 Tell ya what, you demonstrate a proof of concept, and I'll get you your Ph.D. 00:12:12 working on it 00:12:20 but it does it for assembly not scheme 00:12:30 The simple answer is that NO, you can't do this easily. 00:12:35 it's a super optimizer 00:12:45 It is possible to demonstrate that some programs are observationally equivalent, in a VERY tiny world. 00:13:38 it gets really hard as the programs get bigger 00:13:54 But let's say that during the execution of the functions above I hit a break point somewhere in the code, and changed LIST or the sudo LIST code while it was running, which is perfectly fine to do...what then? 00:14:00 geckosenator: use contracts. That's about the best you can do. 00:14:07 synx: contracts? 00:14:13 s/sudo/pseudo/ 00:14:23 geckosenator: yes, they test the stuff when you call and return from a function. 00:14:31 and error out horribly when it's not as expected. 00:15:37 cool 00:15:41 using continuations 00:15:51 geckosenator: Imagine a hypothetical procedure that could figure out what another procedure was going to return. 00:15:58 it cant 00:16:20 I guess I can imagine it though 00:16:56 well you can solve the halting problem with infinite time and memory 00:17:13 This procedure takes one procedure as an argument, and if that other procedure returns false, the one returns true, and if that procedure returns true the one returns false. 00:17:13 (define (test p) (if (returns-false? p) #t #f))) 00:17:13 Now, what is the return value of (test test)? 00:18:13 let me rewrite test 00:18:32 (define (test p) (not (p))) 00:18:56 wait, p takes an argument too? 00:19:21 I don't think you can. Turing machines are already assumed to have infinite time and memory. 00:19:36 then you can 00:20:04 you would have to be able to characterise it 00:21:08 anyway, the (test test) thing is an infinite loop 00:22:06 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 00:22:23 rudybot_: eval (let ((test (lambda (p) (not (p p))))) (test test)) 00:22:26 geckosenator: error: evaluator: terminated (out-of-memory) 00:22:31 wow, out of memory not time 00:22:38 that's pretty crappy 00:22:56 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 00:24:07 The Halting Problem is not just infeasible, but provably uncomputable. 00:24:29 uncomputable with your computers :-P 00:25:16 it's like saying flying is impossible for humans 00:25:39 *Prael* tries to flap his wings 00:25:48 geckosenator: Unless you construct something more powerful than the Lambda Calculus, it isn't going to happen. 00:26:01 well ok 00:26:27 maybe I can invent lambda2 which would eventually replace lambda entirely 00:28:05 Feel free. 00:31:18 incubot: Tell geckosenator about srfi-92 00:31:21 SET! is in R5RS, so if it doesn't include SET!, I wouldn't really call it "Scheme". But you don't need SET! in a programming language, no. Read SICP. 00:32:25 *mejja* hides 00:33:33 I can convert code that has set! in it to code without 00:33:45 so I don't care which way I write it 00:34:03 geckosenator: Can your compiler? 00:34:11 arcfide: not sure, not concerned 00:34:16 it would be nice 00:34:30 So...speed is of absolutely no concern to you? 00:34:37 Or just that you don't care that much? 00:34:39 not until I know what's slow 00:34:58 *arcfide* smirks. 00:35:08 heh, you thinkn my whole program is slow? 00:35:20 *arcfide* shrugs. 00:35:28 probably right it's not fast 00:35:48 if I decide it's worth rewriting then I'll make it faster that time 00:38:23 maybe you can write the tricky compiler to help me? 00:39:47 I'm not interested in writing a comopiler to optimize code that I wouldn't like to write or see generated. 00:40:30 so you would remove set! entirely 00:40:35 and disallow it 00:40:45 I don't think it really makes things slower 00:41:09 No, I'm all for it being around, but I don't think it is generally worth it to spend exhorbitant amounts of time optimizing it when most code will/should have very few occurances of it. 00:41:44 ok 00:42:38 well it isn't much of a slowdown currently 00:42:40 -!- McManiaC [n=nils@stud247045.studentenheim.uni-tuebingen.de] has quit ["leaving"] 00:42:56 maybe there are smarter scheme compilers that optimize code without set! really well 00:45:03 geckosenator, SET! makes life difficult for most intelligent garbage collectors, too. 00:46:02 -!- Cale [n=Cale@CPE001c10c70239-CM000e5cdd834a.cpe.net.cable.rogers.com] has quit [Read error: 110 (Connection timed out)] 00:47:01 hmm 00:50:26 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 00:56:30 egosh [n=Miranda@212.106.61.218] has joined #scheme 01:01:58 stebnem [n=fussy@topol.nat.praha12.net] has joined #scheme 01:02:33 -!- MrFahrenheit [n=RageOfTh@92.36.176.66] has quit [Read error: 110 (Connection timed out)] 01:06:31 -!- stebnem is now known as tttsssttt 01:07:34 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 01:08:11 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 01:10:46 GreyLensman [n=ray@c-76-108-236-161.hsd1.fl.comcast.net] has joined #scheme 01:15:26 -!- jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has quit [Read error: 110 (Connection timed out)] 01:19:50 Cale [n=Cale@CPE001c10c70239-CM000e5cdd834a.cpe.net.cable.rogers.com] has joined #scheme 01:20:32 jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has joined #scheme 01:20:55 rtra [n=rtra@unaffiliated/rtra] has joined #scheme 01:30:13 -!- saccade_ [n=saccade@BRAIN-AND-COG-THREE-TWELVE.MIT.EDU] has quit ["This computer has gone to sleep"] 01:30:13 SET! makes life difficult for garbage collectors? 01:33:55 -!- melgray [n=melgray@70.99.250.82] has quit [] 01:34:40 Is there a way to define a symbol that reduces to itself and when at the head of a list prevents reduction of that list? So far I have: (define x 'x) to make "x" always reduce to itself, but this doesn't make (x y z) reduce to (x y z), is there a solution? 01:35:00 Not without extending the meaning of procedure application. 01:36:07 Riastradh: How easy would that be to do? 01:36:23 The answer to that question varies from Scheme system to Scheme system. 01:36:57 Riastradh: Know of an easy one that is available on Ubuntu? 01:37:14 Why do you want to do this? 01:38:17 Riastradh: I am looking at using scheme (or lisp) to implement a calculus where constructors are stable under reduction. 01:38:36 Why don't you build your own evaluator, then? 01:39:13 Riastradh: I was writing an evaluator in scheme, but it looks like I may have to do just that. ;) 01:40:00 sanguinev: (lambda x x) 01:42:42 rudybot_: eval (define-syntax x (syntax-rules () ((x rest ...) (quote (x rest ...))))) 01:42:49 geckosenator: That works if I am happy to lose the identity function after evaluation. Looking for something like (a x y) that reduces to (a x y) any number of times. Yet at any time I can replace the "a"... 01:43:29 rudybot_: eval (x y z q florple) 01:43:29 zbigniew: ; Value: (x y z q florple) 01:44:15 "unbound variable: syntax-rules" ... Which version(s) of scheme are you using? 01:44:31 One that implements at least the R5RS, sanguinev. 01:44:35 Which one are you using? 01:44:36 an R5RS compatible one 01:44:37 -!- mejja [n=user@c-f6b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 01:44:46 incubot: beaten 01:44:49 I'd say that PHP already has Perl beaten. 01:44:50 I was using the scm interpreter on Ubuntu. 01:45:02 I can't recommend SCM. 01:45:16 Personally I use MIT Scheme and Scheme48 primarily. 01:45:20 Any comments on bigloo? 01:45:40 Bigloo, the C++ variant that cosmetically resembles Scheme? 01:45:47 do people still use bigloo? 01:46:03 Hmmm... time to see what else I can download. ;) 01:46:49 Riastradh, SET! implies a write barrier if you're having an incremental GC 01:47:26 Any writing implies that, Fare. I wonder why gnomon chose to name SET! in particular. 01:47:52 Thanks for the help, now to go work with a better scheme and some new knowledge. ;) 01:48:04 sanguinev: that was just a demo; you'll actually want to write an evaluator 01:48:15 (probably as the prototypical writing primitive) 01:48:48 zbigniew: True, but it is a start and now I know what I am looking for. 01:48:55 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 60 (Operation timed out)] 01:49:06 error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 01:49:17 Riastradh, bigloo has GC, macros, proper tail calls 01:49:41 Proper tail recursion? This is news to me. Does it have CWCC these days too? 01:49:56 there is a compilation flag for cwcc 01:50:19 Well, maybe with the right compiler flags Bigloo does implement Scheme. 01:51:54 there are restrictions indeed for proper tail calls w/o a special flag 01:53:23 (it's properly tail recursive on .NET) 01:53:42 jcowan_ [n=jcowan@cpe-74-68-154-18.nyc.res.rr.com] has joined #scheme 01:53:49 Indeed? That's curious. I wonder why there and not elsewhere (by default?). 01:58:20 (oh, even on .NET, you need some flag magic, because of the performance impact) 01:58:48 (googling info on it all) 02:00:38 spooneybarger [n=spooneyb@cpe-74-73-111-254.nyc.res.rr.com] has joined #scheme 02:01:21 -!- jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has quit [Excess Flood] 02:01:40 jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has joined #scheme 02:01:42 neilv [n=user@dsl092-071-029.bos1.dsl.speakeasy.net] has joined #scheme 02:02:49 -!- Fare [n=Fare@c-98-216-111-110.hsd1.ma.comcast.net] has quit ["Leaving"] 02:03:52 -!- tttsssttt [n=fussy@topol.nat.praha12.net] has left #scheme 02:05:38 -!- spooneybarger [n=spooneyb@cpe-74-73-111-254.nyc.res.rr.com] has quit [] 02:07:10 melgray [n=melgray@dsl231-038-147.sea1.dsl.speakeasy.net] has joined #scheme 02:10:05 -!- Nshag [i=user@Mix-Orleans-106-4-127.w193-248.abo.wanadoo.fr] has quit ["Quitte"] 02:14:38 Performance impact? 02:14:40 Hah. 02:20:28 -!- rtra [n=rtra@unaffiliated/rtra] has quit [Remote closed the connection] 02:27:42 rtra [n=rtra@unaffiliated/rtra] has joined #scheme 02:33:59 saccade_ [n=saccade@65-78-24-47.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 02:52:32 -!- error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 02:53:19 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 02:58:56 Axioplase [n=Pied@fortigate.kb.ecei.tohoku.ac.jp] has joined #scheme 03:03:40 .NET is a performance impact. 03:09:30 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 03:13:29 LOL 03:13:33 amen to that 03:18:27 jao` [n=jao@cpe-75-84-114-170.socal.res.rr.com] has joined #scheme 03:19:15 Vaeshir [n=zane@209-6-23-160.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 03:21:07 lowlycoder [n=x@unaffiliated/lowlycoder] has joined #scheme 03:23:38 -!- jao [n=jao@obfw.oblong.net] has quit [Nick collision from services.] 03:23:48 -!- jao` is now known as jao 03:25:31 -!- cracki_ [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit [Read error: 110 (Connection timed out)] 03:26:49 -!- jcowan_ [n=jcowan@cpe-74-68-154-18.nyc.res.rr.com] has left #scheme 03:26:53 -!- Prael [n=Enso@72.159.61.74] has quit ["Leaving"] 03:36:38 mooto [n=chatzill@202.114.113.2] has joined #scheme 03:40:25 -!- hark [n=strider@hark.slew.org] has quit ["leaving"] 03:48:34 -!- gweiqi [n=greg@69.120.126.163] has quit ["Leaving."] 03:57:42 -!- neilv [n=user@dsl092-071-029.bos1.dsl.speakeasy.net] has quit ["Leaving"] 04:01:26 tripwyre [n=sathya@117.193.163.233] has joined #scheme 04:02:35 -!- lowlycoder [n=x@unaffiliated/lowlycoder] has quit ["Lost terminal"] 04:06:04 -!- kniu [n=kniu@128.237.231.101] has quit [Read error: 60 (Operation timed out)] 04:10:06 tjafk2 [n=timj@e176213045.adsl.alicedsl.de] has joined #scheme 04:13:22 -!- jao [n=jao@cpe-75-84-114-170.socal.res.rr.com] has quit [Remote closed the connection] 04:15:24 -!- ttmrichter [n=ttmricht@59.172.141.201] has quit [Connection timed out] 04:16:11 ttmrichter [n=ttmricht@59.172.141.201] has joined #scheme 04:16:43 -!- Vaeshir [n=zane@209-6-23-160.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [] 04:19:09 -!- breily [n=breily@173.15.192.254] has quit [Read error: 104 (Connection reset by peer)] 04:20:04 Time for bed. 04:20:07 See everyone later. 04:21:01 jao [n=jao@cpe-75-84-114-170.socal.res.rr.com] has joined #scheme 04:21:30 i just woke :( 04:22:03 -!- davidad [n=me@NORTHWEST-THIRTYFIVE-FOUR-TWENTY-TWO.MIT.EDU] has quit [Read error: 110 (Connection timed out)] 04:22:07 -!- forcer [n=forcer@e179199108.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 04:24:18 -!- GreyLensman [n=ray@c-76-108-236-161.hsd1.fl.comcast.net] has left #scheme 04:24:31 kniu [n=kniu@DA-YU.RES.CMU.EDU] has joined #scheme 04:27:11 -!- tjafk1 [n=timj@e176222207.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 04:28:56 -!- arcfide [n=arcfide@99.137.200.228] has quit ["Sleep"] 04:36:24 la la la 04:37:47 -!- melgray [n=melgray@dsl231-038-147.sea1.dsl.speakeasy.net] has quit [] 04:39:33 MichaelRaskin_ [n=raskin@213.171.48.239] has joined #scheme 04:40:14 ASau [n=user@host115-230-msk.microtest.ru] has joined #scheme 04:41:17 ASau` [n=user@host117-230-msk.microtest.ru] has joined #scheme 04:45:56 moo 04:46:06 (reset (some-format (some-filter (some-scrambler (hash-ref table name (lambda () (shift 42))))))) 04:46:15 davidad [n=me@RANDOM-THREE-SEVENTY-FIVE.MIT.EDU] has joined #scheme 04:46:28 that'll return 42 and not call all the intermediary procedures, if table doesn't have the key name right? 04:47:16 meh, I'll just use call/cc 04:47:34 why write horrible code like that? 04:47:48 sphex_ [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has joined #scheme 04:49:40 Or let, how about that? 04:49:42 what a concept 04:49:58 or just 42 04:50:21 leppie: Because sometimes I want to parse a hash key in some fashion, like string->number, but if it doesn't exist in the table I don't want to return "0" and parse that to 0. I just want to jump out with a 0, no parsing needed. 04:50:27 oh i see what you are trying :p 04:50:43 synx: is there an article that talks about reset and shift and all the variations of call/cc? 04:51:09 I just use (let ((unparsed (hash-ref ...))) (if unparsed (do-stuf-to unparsed) 0)) or something 04:51:45 duncanm: There's a single paragraph in the plt documentation about reset and shift. It's really confusing. 04:52:09 is it in the seasoned schemer? 04:52:14 It assumes you're well familiar with the history of the development of continuation theory. 04:52:29 no clue never seen that one. 04:52:43 But the article plt points to is "Olivier Danvy and Andre Filinski, Abstracting Control, LISP and Functional Programming, 1990." 04:52:55 i found a paper about it the other day, haven't read it yet 04:52:58 That should tell you what reset and shift are, if you can find it. 04:54:02 They're kind of weird... but I think it's like being able to return multiple times, without returning to the scope the reset is actually in... 04:55:09 -!- ASau` [n=user@host117-230-msk.microtest.ru] has quit [Remote closed the connection] 04:55:20 ASau` [n=user@host117-230-msk.microtest.ru] has joined #scheme 04:55:23 synx: http://lambda-the-ultimate.org/classic/message9981.html 04:55:42 The definition just looks like it switches things around...kind of confusing though. 04:56:08 -!- sphex [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 04:57:16 ugh, how I loathe citeseer... 04:57:40 it's here now, http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.29.4790 05:09:06 sphex [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has joined #scheme 05:11:50 athos [n=philipp@92.250.250.68] has joined #scheme 05:11:59 -!- hadronzoo [n=hadronzo@ppp-70-251-147-16.dsl.rcsntx.swbell.net] has quit [] 05:20:03 -!- jao [n=jao@cpe-75-84-114-170.socal.res.rr.com] has quit [Remote closed the connection] 05:21:42 huh, why so it is. 05:23:17 That's the first paper I've ever successfully gotten from citeseer. 05:23:21 Usually it's only open to the intelligensia. 05:23:25 -!- sphex_ [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 05:25:30 -!- bughunter2 [n=j@ip4da4427e.direct-adsl.nl] has left #scheme 05:26:46 -!- athos [n=philipp@92.250.250.68] has quit ["leaving"] 05:27:52 The Danvy/Filinski paper is available on readscheme. synx, you need to give `shift' an identifier naming its context, even if you're not using that: so (shift dummy 42) 05:28:35 jao [n=jao@cpe-75-84-114-170.socal.res.rr.com] has joined #scheme 05:34:57 hey jao! 05:35:49 hi duncanm 05:36:07 jao: it was fun meeting you during the ILC, i wish i got to see you more! 05:36:37 duncanm: same here :) 05:36:52 jao: are you still in LA? 05:37:01 duncanm: yup 05:37:17 the weather is much better there than Boston, I bet ;-) 05:37:48 on an unrelated note I think I finally figured out how to handle relative links. :) 05:44:04 -!- meanburrito920_ [n=John@76-217-6-100.lightspeed.irvnca.sbcglobal.net] has quit [Remote closed the connection] 05:55:06 Ragnaroek [i=54a65806@gateway/web/ajax/mibbit.com/x-6ffe88561ed400b3] has joined #scheme 05:55:12 -!- Axioplase [n=Pied@fortigate.kb.ecei.tohoku.ac.jp] has quit ["Lost terminal"] 05:55:43 eno__ [n=eno@adsl-70-137-158-6.dsl.snfc21.sbcglobal.net] has joined #scheme 06:05:07 -!- jao [n=jao@cpe-75-84-114-170.socal.res.rr.com] has quit [Remote closed the connection] 06:05:28 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 06:05:59 jao [n=jao@cpe-75-84-114-170.socal.res.rr.com] has joined #scheme 06:07:10 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 110 (Connection timed out)] 06:10:58 ecraven [n=nex@140.78.42.103] has joined #scheme 06:13:18 hotblack23 [n=jh@p5B0570A6.dip.t-dialin.net] has joined #scheme 06:15:22 -!- SharkBrain [n=user@210.48.104.34] has quit [Remote closed the connection] 06:19:03 -!- ecraven [n=nex@140.78.42.103] has quit ["bbl"] 06:23:36 -!- nasloc__ [i=tim@kalug.ks.edu.tw] has quit [Read error: 104 (Connection reset by peer)] 06:24:41 vy [n=user@213.139.194.186] has joined #scheme 06:27:37 -!- metasyntax [n=taylor@pool-71-127-85-87.aubnin.fios.verizon.net] has quit [Read error: 110 (Connection timed out)] 06:30:40 timchen119 [i=tim@kalug.ks.edu.tw] has joined #scheme 06:31:09 SharkBrain [n=user@210.48.104.34] has joined #scheme 06:33:50 -!- SharkBrain [n=user@210.48.104.34] has quit [Read error: 104 (Connection reset by peer)] 06:37:03 SharkBrain [n=user@210.48.104.34] has joined #scheme 06:39:48 -!- SharkBrain [n=user@210.48.104.34] has quit [Read error: 104 (Connection reset by peer)] 06:45:32 SharkBrain [n=user@210.48.104.34] has joined #scheme 06:47:01 -!- mooto [n=chatzill@202.114.113.2] has quit ["ChatZilla 0.9.84 [Firefox 3.0.8/2009032609]"] 06:48:12 -!- SharkBrain [n=user@210.48.104.34] has quit [Remote closed the connection] 06:48:21 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["The funniest things in my life are truth and absurdity."] 06:52:59 I need a function that can split a vector in half 06:54:20 SharkBrain [n=user@210.48.104.34] has joined #scheme 06:55:26 (ninjasword) 06:56:35 subvector isn't standard 06:57:00 -!- SharkBrain [n=user@210.48.104.34] has quit [Read error: 104 (Connection reset by peer)] 06:57:15 (lambda (v) (vector-map (lambda (n) (quotient n 2)) v)) 06:59:24 that is wrong 06:59:43 and it's slow, I could just convert to a list, split it, then back to a vector 07:00:48 Use Fortran then. 07:00:53 Like all real programmers do. 07:01:17 ok 07:01:26 SharkBrain [n=user@210.48.104.34] has joined #scheme 07:03:25 (list->vector (drop-right (vector->list v) num) 07:04:28 mmc [n=mima@esprx02x.nokia.com] has joined #scheme 07:06:51 -!- SharkBrain [n=user@210.48.104.34] has quit [Read error: 54 (Connection reset by peer)] 07:09:12 bughunter2 [n=j@ip4da4427e.direct-adsl.nl] has joined #scheme 07:09:35 -!- kniu [n=kniu@DA-YU.RES.CMU.EDU] has quit [Read error: 110 (Connection timed out)] 07:09:48 SharkBrain [n=user@210.48.104.34] has joined #scheme 07:18:12 -!- egosh [n=Miranda@212.106.61.218] has quit [] 07:19:13 egosh262 [n=Miranda@212.106.61.218] has joined #scheme 07:23:20 -!- timchen119 [i=tim@kalug.ks.edu.tw] has quit [Read error: 131 (Connection reset by peer)] 07:23:26 timchen119 [i=tim@kalug.ks.edu.tw] has joined #scheme 07:27:28 kniu [n=kniu@CMU-328674.WV.CC.CMU.EDU] has joined #scheme 07:29:33 geckosenator: what are you doing: implementing merge sort with vectors? 07:29:39 v__ [n=v@220.202.62.46] has joined #scheme 07:30:32 -!- mmc [n=mima@esprx02x.nokia.com] has quit ["Leaving."] 07:31:01 -!- SharkBrain [n=user@210.48.104.34] has quit [Read error: 113 (No route to host)] 07:34:57 no 07:35:16 i'm implementing something in not the most efficient way 07:35:25 but it is working 07:45:04 -!- jao [n=jao@cpe-75-84-114-170.socal.res.rr.com] has quit [Remote closed the connection] 07:46:18 -!- saccade_ [n=saccade@65-78-24-47.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Read error: 54 (Connection reset by peer)] 07:46:42 mmc [n=mima@esprx02x.nokia.com] has joined #scheme 07:50:09 saccade_ [n=saccade@65-78-24-47.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 07:53:11 -!- jso [n=user@151.159.200.8] has quit [Remote closed the connection] 07:53:40 what I did was make two vectors each of the half length, then vector-copy! the old vector into each of them. 07:54:43 jdijk [i=jdijk@ftth-212-84-159-210.solcon.nl] has joined #scheme 07:54:43 -!- jdijk [i=jdijk@ftth-212-84-159-210.solcon.nl] has quit [Client Quit] 07:55:25 jao [n=jao@cpe-75-84-114-170.socal.res.rr.com] has joined #scheme 07:57:47 Mr-Cat [n=Miranda@hermes.lanit.ru] has joined #scheme 08:02:44 -!- timchen119 [i=tim@kalug.ks.edu.tw] has quit [Read error: 145 (Connection timed out)] 08:03:18 -!- araujo [n=araujo@gentoo/developer/araujo] has quit ["Leaving"] 08:03:37 timchen119 [i=tim@163.16.211.21] has joined #scheme 08:10:18 McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has joined #scheme 08:21:54 alaricsp [n=alaricsp@88-202-205-114.rdns.as8401.net] has joined #scheme 08:25:07 -!- alaricsp [n=alaricsp@88-202-205-114.rdns.as8401.net] has quit [Client Quit] 08:28:32 rtra_ [n=rtra@89-180-231-110.net.novis.pt] has joined #scheme 08:34:08 -!- saccade_ [n=saccade@65-78-24-47.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit ["This computer has gone to sleep"] 08:35:38 npe [i=npe@naist-wavenet126-102.naist.jp] has joined #scheme 08:42:00 -!- rtra [n=rtra@unaffiliated/rtra] has quit [Read error: 110 (Connection timed out)] 08:52:17 hkBst [n=hkBst@128pc222.sshunet.nl] has joined #scheme 08:53:27 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Client Quit] 08:53:33 -!- eli [n=eli@winooski.ccs.neu.edu] has quit [Read error: 104 (Connection reset by peer)] 08:53:33 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 08:53:47 eli [n=eli@winooski.ccs.neu.edu] has joined #scheme 08:54:03 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Client Quit] 08:54:59 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 08:56:51 -!- csmrFX_ is now known as csmrFX0r 09:10:16 mejja [n=user@c-f6b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 09:26:19 wrldpc [n=worldpea@pool-173-48-214-204.bstnma.fios.verizon.net] has joined #scheme 09:27:05 ejs [n=eugen@nat.ironport.com] has joined #scheme 09:27:37 -!- proq [n=user@38.100.211.40] has quit [Remote closed the connection] 09:27:54 proq [n=user@38.100.211.40] has joined #scheme 09:29:33 -!- CaptainMorgan [n=CaptainM@c-75-68-42-94.hsd1.nh.comcast.net] has quit [Remote closed the connection] 09:33:32 alaricsp [n=alaricsp@88-202-205-114.rdns.as8401.net] has joined #scheme 09:41:50 geckosenator: what is that something? maybe there's a more efficient way 09:41:52 -!- geckosenator [n=sean@71.237.94.78] has quit [Read error: 110 (Connection timed out)] 09:41:53 lisppaste: url 09:41:53 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 09:45:43 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit ["Leaving"] 09:49:57 -!- v__ [n=v@220.202.62.46] has quit ["Leaving"] 09:57:18 -!- eli [n=eli@winooski.ccs.neu.edu] has quit [Success] 09:57:32 eli [n=eli@winooski.ccs.neu.edu] has joined #scheme 10:10:21 -!- McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has quit [Read error: 60 (Operation timed out)] 10:12:28 McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has joined #scheme 10:15:27 -!- McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has quit [Client Quit] 10:15:39 McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has joined #scheme 10:18:02 -!- MichaelRaskin_ [n=raskin@213.171.48.239] has quit [Remote closed the connection] 10:21:51 jewel [n=jewel@dsl-242-143-156.telkomadsl.co.za] has joined #scheme 10:23:48 MichaelRaskin_ [n=raskin@213.171.48.239] has joined #scheme 10:24:09 seamus-android [n=user@cpc3-brig3-0-0-cust124.brig.cable.ntl.com] has joined #scheme 10:30:15 -!- Ragnaroek [i=54a65806@gateway/web/ajax/mibbit.com/x-6ffe88561ed400b3] has quit ["http://www.mibbit.com ajax IRC Client"] 10:31:05 Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-df2eff8ebe7a5e29] has joined #scheme 10:35:34 sea-gull [n=manzur@95-28-194-207.broadband.corbina.ru] has joined #scheme 10:36:13 orgy` [n=ratm_@pD9FFE83B.dip.t-dialin.net] has joined #scheme 10:39:04 -!- jao [n=jao@cpe-75-84-114-170.socal.res.rr.com] has quit [Remote closed the connection] 10:44:20 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 104 (Connection reset by peer)] 10:44:57 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 10:46:35 -!- sea-gull [n=manzur@95-28-194-207.broadband.corbina.ru] has left #scheme 10:47:32 GreyLensman [n=ray@c-76-108-236-161.hsd1.fl.comcast.net] has joined #scheme 10:47:53 -!- GreyLensman [n=ray@c-76-108-236-161.hsd1.fl.comcast.net] has quit [Client Quit] 10:53:48 -!- amoe [n=amoe@cpc1-brig3-0-0-cust512.brig.cable.ntl.com] has quit [Read error: 110 (Connection timed out)] 10:57:33 -!- McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has quit ["Lost terminal"] 11:05:20 ecraven [n=nex@140.78.42.103] has joined #scheme 11:08:03 -!- Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-df2eff8ebe7a5e29] has quit [bartol.freenode.net irc.freenode.net] 11:08:03 -!- davidad [n=me@RANDOM-THREE-SEVENTY-FIVE.MIT.EDU] has quit [bartol.freenode.net irc.freenode.net] 11:08:03 -!- kspaans [i=kspaans@artificial-flavours.csclub.uwaterloo.ca] has quit [bartol.freenode.net irc.freenode.net] 11:08:03 -!- saccade [n=saccade_@COMBINATOR.MIT.EDU] has quit [bartol.freenode.net irc.freenode.net] 11:08:03 -!- zbigniew [n=zb@3e8.org] has quit [bartol.freenode.net irc.freenode.net] 11:08:13 Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-df2eff8ebe7a5e29] has joined #scheme 11:08:13 davidad [n=me@RANDOM-THREE-SEVENTY-FIVE.MIT.EDU] has joined #scheme 11:08:13 kspaans [i=kspaans@artificial-flavours.csclub.uwaterloo.ca] has joined #scheme 11:08:13 saccade [n=saccade_@COMBINATOR.MIT.EDU] has joined #scheme 11:08:13 zbigniew [n=zb@3e8.org] has joined #scheme 11:10:17 -!- Arelius_ [n=Indy@netblock-68-183-230-134.dslextreme.com] has quit [] 11:11:50 McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has joined #scheme 11:17:25 -!- McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has quit [Read error: 104 (Connection reset by peer)] 11:26:26 Edico [n=Edico@unaffiliated/edico] has joined #scheme 11:29:37 tttsssttt [n=pussycat@topol.nat.praha12.net] has joined #scheme 11:34:35 tverwaes [i=tverwaes@igwe.vub.ac.be] has joined #scheme 11:35:17 anybody who knows what I can import in #!r6rs libraries in PLT scheme to get gensym and error-display-handler ? 11:35:33 -!- Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-df2eff8ebe7a5e29] has quit ["http://www.mibbit.com ajax IRC Client"] 11:37:18 I already found define-struct in old-ds.ss... although I guess I should stop using it, seeing the name of the file :) 11:37:24 Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-d438b3d37ad1d366] has joined #scheme 11:37:36 -!- jewel [n=jewel@dsl-242-143-156.telkomadsl.co.za] has quit [Read error: 148 (No route to host)] 11:39:26 tverwaes: you shouldn't use gensym either 11:40:04 hkBst: then how can you make unique markers? 11:40:15 I'm not using it for macros btw. 11:41:36 -!- dysinger [n=tim@cpe-75-80-200-182.hawaii.res.rr.com] has quit [] 11:42:23 tverwaes: what ARE you using it for? 11:43:40 2 things currently; one is to make sure that I can place unique continuation markers to have a nice way of debugging my own OO system 11:44:04 and secondly, because instance variables are stored by using their gensymed key; which only their getter/setter can see 11:44:16 to make sure that all accesses on objects go over message sends 11:44:30 (http://smallwiki.unibe.ch/schemetalk) 11:46:52 why do you not use closures for the getter/setter of instance variables? 11:47:57 they are closures; but they close over the key which is an index in the dictionary 11:48:23 the point is that classes define what layout instances have 11:48:40 and when you instantiate a class; it makes a new closure which closes over it's instance variables dictionary 11:48:55 smalltalk-like 11:49:47 since the methods are stored in the class, not in the objects themselves; they can not close over the scope of the object 11:54:15 tverwaes: IIUC you're saying that each object has a unique identifying symbol generated by gensym and this symbol is passed to the getter/setter to use as index into a dictionary to get at the actual instance variables? 11:54:38 sorry, my Smalltalk is very weak :( 11:55:23 each class defines the set of instance variables that it wants to see in the instance (+ all superclasses their instance variables). this layout is defined by a list of gensyms. 11:55:38 when you make an instance; you basically make a dictionary containing all these symbols; and a link to the class-object 11:56:17 when you sent a message (symbol; like in dispatch-objects), it will always first lookup in the instance variables dictionary; and then start a method lookup in the class hierarchy 11:56:41 when the user sends a message, this always goes to the class hierarchy, since it can't see the instance variables as they are gensym'd 11:57:23 -!- hornbeck_afk [n=hornbeck@70.245.102.16] has quit [Remote closed the connection] 11:57:36 but when the class definition gets created, next to the list containing the information of the layout, schemetalk automatically adds getters and setters to the dictionary for each of the instance variables. 11:58:10 a getter for example would just looke like: (let ((thekey (gensym))) (method () (self thekey))) 11:58:46 (self in method is always a pointer to the actual instance; obviously; like this in java ... 12:01:21 eli: maybe you can help tverwaes? 12:01:38 Maybe uuid then, not gensym? 12:02:19 Mr-Cat: what is uuid? 12:02:44 I mean... what is the difference between gensym and uuid? :) 12:07:23 deat [n=deat@fac34-8-88-172-174-215.fbx.proxad.net] has joined #scheme 12:09:48 Why not simply replace (gensym) with (list 'key) ? 12:10:04 tverwaes: Is there a chance that the identifier you use will exist outside the execution time of a single process? 12:10:40 I.e. it will be serialized 12:11:09 Mr-Cat: currently not. (although it might be nice at some point :)) 12:11:53 mejja: mmh... maybe not a bad idea :) 12:12:12 tverwaes: Then using uuids (under proper conditions of course) you may ensure, that all identifiers are globally unique, while gensym cannot ensure that. 12:15:04 with globally you mean also after serialization? 12:15:49 tverwaes: Yes 12:17:24 I'm going to try out the (list 'key) approach. I think for now I will assume that classes are always initialized properly, not just by rebuilding from a file-out 12:18:18 hkBst/tverwaes: What's the problem (briefly, if possible, I'm too tired for spending real cycles). 12:18:23 s/./?/ 12:20:05 eli: first problem probably solved by mejja (using (list 'key) instead of (gensym 'key) to ensure "uniqueness"). from there on, how can I get to "error-display-handler", "define-struct" and "make-rename-transformer" from within a r6rs lib? 12:20:12 (plt) 12:21:37 tverwaes: I'm not sure about the r6rs library syntax, but I know that it reflects the usual collections. So something like `import' of `error-display-handler' from (scheme base) or something like that. 12:22:47 the problem with plt is mostly that half of the stuff which gets imported when I work in a "#lang scheme". if I import (scheme base) in library format, it doesn't allow it since rnrs already imports it; but there I don't see all that stuff 12:23:07 but well, maybe you are not the good person to ask this. hkBst was referring to the gensym problem I had 12:23:29 *right person :) 12:24:37 tverwaes: That's expected, of course -- you want to require *only* `error-display-handler' (otherwise I'd wouldn't bother mentioning it). 12:25:00 aha .... 12:25:01 Same goes for `gensym'. 12:25:51 I didn't know there was a syntax to require only certain identifiers :) 12:27:05 Well, I said that "I'm not sure about the r6rs library syntax" -- specifically, I don't remember how to require just a few specified identifiers. (But there should be a way for doing that.) 12:28:05 but if you require everything; shouldn't it import -all- specific things? 12:28:48 http://www.r6rs.org/final/html/r6rs/r6rs-Z-H-10.html#node_chap_7, way down, (import (only (stack) make push! pop!)) looks good 12:30:31 tverwaes: Yes, but it barfs if there are name collisions between two imports. In any case, it looks like ecraven point you to the right place. 12:30:55 i'm not using plt at all, so i'd have no idea, but that's what r6rs says 12:31:04 eli, encraven: ok. great, that works! 12:31:42 ecraven: I know, but his question was about using the r6rs language in plt. 12:32:32 eli: you're a plter right? 12:32:40 Yes. 12:33:07 are there documents about the VM of plt, describing the architecture? 12:33:46 I don't think that there's anything beyond the manual(s) and stuff in the code. 12:35:58 the manuals were pretty good, but now that so much is changing it gets a bit confusing sometimes :) 12:38:44 has the VM been changing too? 12:38:59 ah no idea. sorry about the confusion :) 12:40:52 how do I import srfi's with the library import syntax? (srfi 6) doesn't seem to do the job 12:41:03 jewel [n=jewel@dsl-247-197-229.telkomadsl.co.za] has joined #scheme 12:43:14 ok, getting it from scheme seems to do the trick... although I guess that's not all that standard :) 12:48:10 elderK [n=zk@122-57-250-128.jetstream.xtra.co.nz] has joined #scheme 12:48:15 Hey guys :) 12:48:51 hey elderK 12:50:33 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 12:52:34 :) ecraven, any chance you have any advice on how to manage record-like things in Scheme, without using someone elses define-record or something? 12:53:09 vectors? 12:53:20 I figure, it only seems 'hard'. It's not. Vectors can store bindings to anything else - it's just a challenge of growing your mind to think 'hey, it's universal - the challenge isn't in code, it's in what I can imagine!' 12:54:47 :) Also, hey, could you give any suggestions on how I could improve some code? 12:55:01 :P I decided to work around the limitations in u**vectors myself :P 12:55:27 :) it can be found here: http://paste.lisp.org/display/77718#10 12:55:34 mmh. why is map implemented as a function using mcar instead of car? 12:57:37 "regular scheme cons is immutable" ? 12:57:48 what's mcar? 12:57:59 which is why I ask; why does it assume that map takes a mutable pair? 12:58:06 there is no reason to it 12:58:26 ecraven: plt's way of having a mutable pair next to the immutable one :) 12:58:46 why do you need separate accessors for that? 12:59:28 ecraven: I guess they are different structs.. set-car! doesn't exist anymore; only set-mcar! does 13:00:02 hm.. so if i create a list out of pairs and mpairs, most existing functions will break? 13:00:21 I guess. 13:00:30 map seems to be broken to start with :) 13:00:33 mcar etc, seems to be specific to plt? 13:00:45 elderK: I guess so. 13:00:52 *elderK* shrugs 13:00:53 o_O 13:01:09 I thought in-place/destructive map was map! ? 13:01:37 member: not a proper list:... 13:01:40 member also breaks 13:02:47 ah member expects it to be normal cons, not mcons 13:03:01 so I'll always have to convert here or there 13:04:14 -!- tripwyre [n=sathya@117.193.163.233] has quit ["bye all"] 13:06:22 (execute . {18}) 13:06:32 aargl, that kind of things is horrible. 13:09:28 whoa, what is {18}?? 13:09:40 it's the diff between mlist and list I guess 13:15:49 -!- ecraven [n=nex@140.78.42.103] has quit ["bbl"] 13:22:02 mike [n=m@dslb-088-066-255-059.pools.arcor-ip.net] has joined #scheme 13:22:30 -!- mike is now known as Guest49821 13:34:07 -!- seamus-android [n=user@cpc3-brig3-0-0-cust124.brig.cable.ntl.com] has quit [Remote closed the connection] 13:36:22 :) This is so enlightening. 13:36:28 Reading through srfis 13:36:38 Reading, understanding, the code. 13:36:42 Let's me understand their thought process. 13:36:53 :) Which means I can start to see more through Schemer eyes. 13:36:53 :) 13:37:06 :D Which means I can start to apply what I am learning :) 13:37:09 ^_^ 13:37:12 *elderK* dances 13:37:13 *elderK* jives 13:37:17 *elderK* finds more coffee 13:38:44 Although, I find this a little hard to digest : (define :something (make-vector 3)) (vector-set! :something 0 :something) 13:38:50 it's like, say what? o_O 13:39:10 using :something, without indexing, would never end evaluation 13:40:22 You put the "pointer" to the vector in the first slot of itself 13:40:40 There's no dereferencing at that level 13:41:23 sjamaan: I'm going to pm you, :) 13:41:29 Something like void **foo; foo[0] = foo; 13:43:13 elderK: hey.. 13:44:59 hey bughunter2! 13:45:06 check your msn pm :) 13:45:15 Khisanth [n=Khisanth@pool-151-204-128-198.ny325.east.verizon.net] has joined #scheme 13:51:06 -!- pchrist [n=spirit@gentoo/developer/pchrist] has quit ["leaving"] 13:52:40 -!- jewel [n=jewel@dsl-247-197-229.telkomadsl.co.za] has quit [No route to host] 13:55:08 Fare [n=Fare@ita4fw1.itasoftware.com] has joined #scheme 13:58:41 tverwaes: `map' in the r6rs language is implemented with mutable pairs; it is different than the one in `scheme'. (It's not broken.) 14:06:27 eli: yeah I found out that using pretty big and r6rs intermixed gives strange results 14:06:46 (or #lang scheme and #!r6rs) 14:07:21 -!- ejs [n=eugen@nat.ironport.com] has quit [Read error: 110 (Connection timed out)] 14:07:43 annodomini [n=lambda@130.189.179.215] has joined #scheme 14:10:38 hark [n=strider@hark.slew.org] has joined #scheme 14:10:58 tverwaes: If you want to do that, you will need to convert values back and forth. 14:22:40 araujo [n=araujo@gentoo/developer/araujo] has joined #scheme 14:23:23 ...expected argument of type ; given {left center} 14:23:33 gui's don't just use lists anymore? 14:25:19 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 14:26:26 -!- Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-d438b3d37ad1d366] has quit ["http://www.mibbit.com ajax IRC Client"] 14:29:12 Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-beb17fe34c668902] has joined #scheme 14:35:04 tverwaes: It's not a list in the sense of the language the gui is implemented with. 14:35:13 rudybot_: eval (list? (mcons 1 null)) 14:35:15 eli: your scheme sandbox is ready 14:35:15 eli: ; Value: #f 14:36:15 eli: I'm sending it through eval. so the problem is that it's {..} intead of (..)? 14:36:55 If it's the `scheme' eval, then that expects lists in the `scheme' sense too. 14:37:06 it's r6rs eval 14:38:39 but I guess that gui is not r6rs ... 14:46:05 McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has joined #scheme 14:46:16 myeah; wrapping mlist->list around half of those things makes it work half. but then it keeps on breaking since listboxes are "scheme" with lists and it's interfacing with r6rs code with mlists 14:47:28 luz [n=davids@139.82.89.70] has joined #scheme 14:57:33 Judofyr [n=Judofyr@c349BBF51.dhcp.bluecom.no] has joined #scheme 15:00:29 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [SendQ exceeded] 15:06:57 -!- ASau` [n=user@host117-230-msk.microtest.ru] has quit ["Off!"] 15:10:35 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 15:10:38 Nichibutsu [n=myfabse@wikipedia/Track-n-Field] has joined #scheme 15:10:57 -!- davidad [n=me@RANDOM-THREE-SEVENTY-FIVE.MIT.EDU] has quit [Read error: 110 (Connection timed out)] 15:11:11 -!- ASau [n=user@host115-230-msk.microtest.ru] has quit ["off!"] 15:11:45 davidad [n=me@dhcp-17-116.media.mit.edu] has joined #scheme 15:16:27 Nshag [i=user@Mix-Orleans-106-4-200.w193-248.abo.wanadoo.fr] has joined #scheme 15:19:47 dlt_ [n=dlt@201.57.58.146] has joined #scheme 15:20:42 -!- Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-beb17fe34c668902] has quit ["http://www.mibbit.com ajax IRC Client"] 15:21:01 error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 15:21:02 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Broken pipe] 15:21:31 Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-47a5d6233fbc13fa] has joined #scheme 15:23:13 -!- eno__ is now known as eno 15:24:48 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 15:26:53 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 15:28:50 athos [n=philipp@92.250.250.68] has joined #scheme 15:31:13 pchrist [n=spirit@gentoo/developer/pchrist] has joined #scheme 15:38:11 -!- error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 15:38:58 tonyg [n=tonyg@wireless-am8.ucsd.edu] has joined #scheme 15:39:37 -!- tonyg [n=tonyg@wireless-am8.ucsd.edu] has left #scheme 15:43:33 -!- Guest49821 [n=m@dslb-088-066-255-059.pools.arcor-ip.net] has quit ["This computer has gone to sleep"] 15:44:27 -!- Mr-Cat [n=Miranda@hermes.lanit.ru] has quit [Read error: 104 (Connection reset by peer)] 15:44:57 -!- MichaelRaskin_ [n=raskin@213.171.48.239] has quit [Read error: 110 (Connection timed out)] 15:47:35 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 15:48:32 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 15:50:56 cracki_ [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 15:53:38 -!- athos [n=philipp@92.250.250.68] has quit ["leaving"] 15:59:08 -!- wrldpc [n=worldpea@pool-173-48-214-204.bstnma.fios.verizon.net] has quit [] 16:01:02 -!- alaricsp [n=alaricsp@88-202-205-114.rdns.as8401.net] has quit [] 16:02:27 -!- luz [n=davids@139.82.89.70] has quit ["Client exiting"] 16:02:41 athos [n=philipp@92.250.250.68] has joined #scheme 16:07:22 rcassidy [n=rcassidy@129.10.229.251] has joined #scheme 16:07:29 -!- deat [n=deat@fac34-8-88-172-174-215.fbx.proxad.net] has quit [Success] 16:07:33 deat [n=deat@fac34-8-88-172-174-215.fbx.proxad.net] has joined #scheme 16:07:55 -!- McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has quit [Read error: 104 (Connection reset by peer)] 16:08:31 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit [Read error: 110 (Connection timed out)] 16:12:53 -!- rcassidy [n=rcassidy@129.10.229.251] has quit [] 16:13:39 borism [n=boris@195.50.199.161] has joined #scheme 16:24:06 McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has joined #scheme 16:29:05 barney [n=bernhard@p549A0190.dip0.t-ipconnect.de] has joined #scheme 16:35:32 Hey guys, 16:35:43 i was wondering how many of you, if any, use objective-type things in Scheme? 16:35:54 Like, write a minimal OO system that you use personally/ 16:35:58 I'd be curious to hear :) 16:37:00 what more do you want if you have records? 16:44:57 elderK: I did it with schemetalk. as said before 16:45:22 sorry tverwaes - I didn't hear you say taht :) 16:45:39 and leppie, I don't :) I'm just curious about how people use Scheme, you know? 16:45:40 elderK: http://smallwiki.unibe.ch/schemetalk 16:45:40 :) 16:45:50 thank you tverwaes :) 16:46:34 to use objects, if you don't need something complex, you can just use dispatch objects 16:49:02 ccl-logbot [n=ccl-logb@master.clozure.com] has joined #scheme 16:49:02 16:49:02 -!- names: ccl-logbot barney McManiaC borism deat athos cracki_ errordeveloper pchrist Ragnaroek dlt_ Nshag davidad Nichibutsu Judofyr araujo hark Fare Khisanth elderK tverwaes tttsssttt Edico zbigniew saccade kspaans orgy` eli proq mejja hkBst npe rtra_ timchen119 mmc kniu egosh262 bughunter2 vy hotblack23 eno sphex ttmrichter tjafk2 jeremiah Cale rudybot_ offby1 raikov AtnNn sladegen synx benny Mr_Awesome brandelune Daemmerung Kusanagi nome incubot 16:49:02 -!- names: jjong REPLeffect XTL Quadrescence mmmulani morphir stepnem peddie subversus csmrFX0r klutometis C-Keen poucet emma ffx` gnomon rotty p1dzkl laz0r mmt tabe mreggen rdd aquanaut elias` elmex Riastradh yosafbridge bsmntbombdood certainty Adrinael z0d lde jld arphid cipher guenther__ a-s specbot minion lisppaste dfeuer leppie kazzmir underspecified_ underspecified pantsd pfo mookid weinholt qebab mbishop_ r0bby tarbo aardvarc sjamaan mornfall 16:49:02 -!- names: inhortte dlouhy dima_z elf inimino Deformative ski tizoc pitui ineiros danking ada2358 ray bkudria Elly levi foof tltstc felipe fean sanguinev clog rodge Debolaz Poeir amazon10x Qaexl halfcore duncanm ski_ ski__ Fade pbusser2 Caesium wastrel Leonidas 16:49:11 I mean, I wouldn't use such an OO system - but thinking about how I woudl build one ,is fun anyway. 16:49:12 you know? :) 16:49:19 My mind likes to tinker with things :) 16:49:25 sure. why do you think I built schemetalk? :) 16:49:26 It's like a child with building blocks. ^_^ 16:49:32 :) 16:49:39 elderK: just combine closures and records 16:49:53 actually there is still a lot of playing ground in schemetalk 16:50:05 since I added first-class slots and methods 16:50:28 and I used it to implement some sort of "python decorators" 16:50:33 all pretty fun :) 16:53:32 Aye. 16:53:43 like, not to be offensive, but, to me, scheme seems more of a fun language than c :) 16:53:44 like, 16:53:51 I can prototype ideas in scheme, in a few days 16:53:55 error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 16:53:57 when prototyping tha tsame idea in C would take weeks. 16:54:05 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 54 (Connection reset by peer)] 16:54:10 so, teh cost of being wrong about some design element is far less painful. 16:54:19 becuase redesigning, reprototyping, isn't as painful :) 16:54:52 -!- rdd [n=user@c83-250-154-52.bredband.comhem.se] has quit [Remote closed the connection] 16:54:54 :P It's like atm, I am writing a linker in Scheme. In all honesty, it isn't really practical I guess, in terms of speed. But, it's fun and, it feels cool. It has the novelty that, it's done in Scheme. 16:55:14 Like, my 'work arounds' for the limitations for binary IO 16:55:18 Yeah, I could have used an srfi. 16:55:22 but I did it myself because it was fun. 16:55:41 All of that is inefficient compared to straight C - but damn it, it's fun - and it FEELS fun. And really, that's what hacking is all about. :) 16:56:05 Where as C no longer has that fun factor really. 16:56:12 :) Does any of that make any sense? 16:59:01 ecraven [n=nex@140.78.42.103] has joined #scheme 17:03:48 rdd [n=user@c83-250-154-52.bredband.comhem.se] has joined #scheme 17:04:04 Also, I was wondering if someone could help me digest a part of the r5rs standard - regarding macros. 17:04:11 specifically, this: 17:04:27 "Identifiers that appear in the template but are not pattern variables or the identifier `...' are inserted into the output as literal identifiers. If a literal identifier is inserted as a free identifier then it refers to the binding of that identifier within whose scope the instance of `syntax-rules' appears. If a literal identifier is inserted as a bound identifier then it is in effect renamed to prevent inadvertent captures of free ide 17:04:43 -!- vy [n=user@213.139.194.186] has quit [Remote closed the connection] 17:07:49 C is the new assembly. hordes of people enjoy programming in ruby despite it being dog slow compared to most other languages. why? because hardware is fast enough nowadays to be able to get away with it 17:08:10 annodomini [n=lambda@130.189.179.215] has joined #scheme 17:08:19 and a fast scheme compiler is much faster than ruby, so.. 17:09:15 proq: any chance you can help me decipher the sentence above, from the standards? 17:09:20 lowlycoder [n=x@unaffiliated/lowlycoder] has joined #scheme 17:09:58 what database / bindings do you guys use in scheme? 17:12:14 elderK: not sure which sentence that is, but I'm sure someone here can 17:12:38 :) thanks anyway proq man :) If it helps I can point you to the page on which it appears? 17:13:01 -!- rtra_ [n=rtra@89-180-231-110.net.novis.pt] has quit ["Leaving"] 17:13:17 which page? 17:14:09 http://people.csail.mit.edu/jaffer/r5rs_6.html#SEC40 17:14:10 :) 17:14:38 It can be found in the passage explaining the pattern language for syntax-rules 17:14:53 After the part that explains how an input form matches a given pattern. 17:16:12 *elderK* thinks he just clicked to it's meaning 17:16:14 bingo. 17:16:19 *elderK* fetches coffee in triumph 17:17:43 ... reddit just forgot how to speak japanese :/ 17:24:16 -!- Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-47a5d6233fbc13fa] has quit ["http://www.mibbit.com ajax IRC Client"] 17:24:30 Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-79dd57ba97d74733] has joined #scheme 17:36:58 -!- Fare [n=Fare@ita4fw1.itasoftware.com] has quit ["Leaving"] 17:46:18 hornbeck [n=hornbeck@174.148.2.218] has joined #scheme 17:47:12 elderK: it has to do with variable capture 17:47:46 elderK: do you still need help with that; or do you already know what it means? :) 17:50:59 lowlycoder: schemeql is the last thing I used. 5 years ago :) 17:51:17 -!- Ragnaroek [i=54a64658@gateway/web/ajax/mibbit.com/x-79dd57ba97d74733] has quit ["http://www.mibbit.com ajax IRC Client"] 17:51:40 it seems to be spgsql now 18:02:25 rcassidy [n=rcassidy@nomad.ccs.neu.edu] has joined #scheme 18:09:14 I know what variable capture means :) 18:09:20 But, I have trouble seeing how it applies here. 18:09:21 Like, 18:09:31 A literal identifier inserted into the output, 18:09:35 if it is "free" 18:09:52 free means it is bounded not locally 18:09:58 it gets bound to the identifier of that name, in the enclosing scope where the macro is used? or in the scope where the macro itself is defined? 18:10:16 (let ((a 3)) (x a)); inside x, a is free 18:10:23 yup 18:10:31 which means a gets satisfied higher up. 18:10:38 that isnt what confuses me. 18:10:52 what confuses me is that it says that the literal gets renamed? 18:11:08 " If a literal identifier is inserted as a free identifier then it refers to the binding of that identifier within whose scope the instance of `syntax-rules' appears. If a literal identifier is inserted as a bound identifier then it is in effect renamed to prevent inadvertent captures of free identifiers. " 18:11:08 ok. what if x looks like: 18:11:23 that's just alpha renaming 18:11:30 (define-macro (x var) `(let ((a 10)) ,var)) 18:11:30 ? 18:11:43 you don't want ,var (the a) to be captured by the a->10 18:11:57 so you have to rename the a in the macro 18:12:04 yes what tverwaes says :) 18:12:20 syntax-rules does that automatically 18:12:26 I'm not familiar with that syntax there? 18:13:05 Oh, I see? 18:13:06 a macro gets expanded into the code 18:13:14 instead of being actually called 18:13:24 aaco [n=aaco@unaffiliated/aaco] has joined #scheme 18:13:28 so the original (x a) gets replaced to (let ((a 10)) a) 18:13:30 before evaluated 18:13:31 (x a) ----> (define-macro (x var) `(let ((a 10)) ,var) ---> (let ((a 10)) a) 18:13:37 exactly 18:13:56 and if you use define-syntax instead of define-macro; you don't have to worry about it 18:14:11 because it is hygenic, right? 18:14:16 with define-macro you manually have to make sure that you don't have variable-capture by using gensyms :) 18:14:17 yes 18:14:19 yeah, exactly 18:14:20 where as, if I used define-macro - I would have to do that let thing, myself, by hand, right? 18:14:23 because in this macro you showed, 18:14:26 the let protects it - renames it? 18:14:35 oh, no, it doesnt 18:14:39 no it doesn't 18:14:42 the a inside the template replaces the a they handin 18:14:58 the a in th etemplated let captures the a they pass, right? :) 18:15:00 (define-macro (x var) (let ((name (gensym))) `(let ((,name 10)) ,var)) 18:15:06 would be the "safe" variant 18:15:22 (the lisp way to do it) 18:15:27 aye. 18:15:37 -!- Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has quit ["This computer has gone to sleep"] 18:15:37 I found that about the lisp stuff to, on macros. They used a lot of gensym. 18:15:48 jups 18:16:07 such macros are actually quite convenient .. but also has some overhead. but then again you can write macros to insert the gensyms for you 18:16:08 name --> gensym (some random iden), `(let ((,name 10) ,var) ---> (let ((the_random_ident 10)) whatever_var_is), right? 18:16:09 :) 18:16:17 jups 18:16:22 melgray [n=melgray@70.99.250.82] has joined #scheme 18:16:34 so, which macros are convenient - what overhead? 18:16:35 :) 18:16:38 and since you know ,name inside the macro; you can use it to do intermediate calculation in the macro 18:16:41 you mean the gensym ones? 18:16:53 :) 18:17:00 i like syntax-case 18:17:01 gensym macros are convenient because you -can- capture if you want. which you can't really with hygienic macros 18:17:17 so that's what it means - syntax-rules handles that gensym crap for us - if it detects that a literal used inside the macro - or a pattern variable - shadows the input. 18:17:18 but you always have to bind ,name-like variables like that; which is some overhead 18:17:27 the scheme way is to use syntax-rules 18:17:32 indeed 18:17:49 thank you for clearing that up man :) 18:17:53 (define-syntax-rule (x var) (let ((a 10)) var)) 18:17:56 is the scheme-way :) 18:17:59 the problem is with syntax-rules, is that you cant break hygiene, it's always 'on' 18:18:00 Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has joined #scheme 18:18:10 so, in this case, 18:18:11 leppie: indeed; that's what I meant 18:18:14 syntactic closures are nice too 18:18:23 (x a) ---> (let (( 10)) a) 18:18:27 syntax-case allows you to do more, albeit a bit more verbal 18:18:27 so for example; in an OO system you probably -want- to capture the variables self and super 18:18:38 and then you are screwed with hygienic macros :) 18:19:02 -!- kniu [n=kniu@CMU-328674.WV.CC.CMU.EDU] has quit [Read error: 110 (Connection timed out)] 18:19:17 then you have to start with syntax-parameters :) 18:19:19 :) 18:20:55 is my understanding correct? When the macro is expanded, it sees that the input (var) is the same name as the pattern variable the macro itself uses - so the macro creates a safe name - a gensymed name for the macro's a - so that i nthe expansion, "var" wont be captured by the macro's literal identifier? 18:21:37 kniu [n=kniu@DA-YU.RES.CMU.EDU] has joined #scheme 18:21:40 It's almost like it /is/ all gensymed by default - it's just syntax-rules lets us give those gensyms nice friendly names for human convenience - but in reality, they are gensymed. Just like variables in C are really just symbols for some abstract location in memory... 18:21:46 but it binds a name to it for our convenience. 18:21:47 :) 18:21:48 right? 18:22:03 it binds to a location 18:22:15 like C 18:22:52 :) Sweet. 18:22:54 then I understand :) 18:23:13 btw, with macros / syntaxes there is one more thing that you have to watch out with 18:23:19 dysinger [n=tim@cpe-75-80-200-182.hawaii.res.rr.com] has joined #scheme 18:23:29 I mean, our friendly naems in the macro - the ones that collide - are really gensymed in the implementation. But, those gensyms in reality - are really just locations. 18:23:32 Oh 18:23:33 ? 18:23:37 (define-syntax-rule (x var) (begin var var)) will execute whatever var is twice 18:23:45 (and hey, what is syntax-case, where can I learna bout it? It is r5rs?) 18:23:59 no, syntax-case is an srfi 18:24:02 syntax-rules is r5rs 18:24:06 elderK: not r5rs, but r6rs, but many r5rs scheme's has it 18:24:13 (x (fib 100)) will execute (fib 100) twice. which is stupid in this case but can be tricky in other cases 18:24:20 hey tverwaes - that doesnt look correct? 18:24:37 elderK: thats the same as C macros 18:24:47 (define-syntax x 18:24:47 (syntax-rule () 18:24:47 ((x var) 18:24:47 (begin x x)))) 18:24:48 ? 18:24:53 the executing twice behavior 18:25:02 elderK: (begin var var) 18:25:05 er, yup 18:25:07 :) 18:25:11 elderK: (let ((x var)) (begin x x)) 18:25:16 that's to be expected though 18:25:20 :) 18:25:28 I mean that var is executed twice. 18:25:31 sometimes it's probably even wanted 18:25:31 since it is a pattern varaible, 18:25:37 elderK: sure. that was my point :) 18:25:37 it represents whatever is mapped to var... 18:25:42 yes you get it :) 18:25:46 :D 18:25:48 like when you write a looping macro, you *want* the condition to be evaluated each time through 18:25:51 *elderK* GESTALT! 18:25:52 :) 18:26:51 This should be put in the topic: http://img10.imageshack.us/img10/6139/lithp.png 18:27:05 rudybot_: eval (define-syntax x (syntax-rule () (let ((x var)) (begin x x)))) 18:27:07 proq: your sandbox is ready 18:27:09 proq: error: eval:1:30: #%app: missing procedure expression; probably originally (), which is an illegal empty application in: (#%app) 18:27:11 a loop is like a kid on road trip, it keeps nagging: are we there yet? 18:27:24 ssss 18:27:25 heheh 18:27:35 'lo Quadrescence! 18:27:42 Hello elderK. :( 18:27:44 :) * 18:27:49 :D 18:27:50 :P 18:28:19 elderK: http://www.cs.indiana.edu/~dyb/pubs/bc-syntax-case.pdf 18:28:23 o_O wtf, look at how they are indenting there scheme here :O http://www.cs.grinnell.edu/~walker/courses/153.sp06/readings/reading-cond-if.shtml 18:28:26 thank you leppie! :) 18:28:28 -rudybot_:#scheme- http://tinyurl.com/dh2eor 18:28:50 leppie, tverwaes: is this pretty much as far as syntax-rules is concerned? 18:28:57 *leppie* screeams!!! 18:28:58 I experimented with ... as well. 18:28:59 That was fun 18:29:22 no there is a lot you can do 18:29:26 whoa, that hurts 18:29:43 *proq* is suddenly glad he didn't go to grinnell 18:29:43 never going there ever 18:29:51 ie : ((something1 something2) ...) --> ((va 1) (vb 2) (vc 3)) something1 = (va vb vc) something2= (1 2 3) 18:30:19 o_O why would they do that! 18:30:22 Scheme isnt C :P 18:30:23 created February 2, 1997 <--- and no one cared since? or maybe it was reformatted by some newbie webmaster 18:30:24 Scheme isnt Pascal. 18:30:26 Scheme is Scheme! 18:30:48 heh, email him 18:30:58 "Good sir, ye scheme dost offend thee!" 18:31:07 that's "beginner's scheme", but the wrong kind 18:31:19 -!- lowlycoder [n=x@unaffiliated/lowlycoder] has quit [Read error: 110 (Connection timed out)] 18:31:42 beginner's scheme :D 18:32:00 :P I want a System's Scheme. 18:32:01 :p 18:32:21 elderK, investigate RScheme. 18:32:41 will do gnomon 18:32:41 :) 18:32:50 And possible schemix, and maybe movix. 18:33:00 btw, what is the difference between define-syntax and let-syntax? 18:33:28 One vowel and four consonants. 18:33:30 I imagine the same as the difference between define and let? :) 18:33:33 does let-syntax make the macro it defines active only within it's scope? 18:33:41 :) I'll have to play with it and see 18:33:42 :) 18:34:16 elderK: You don't want system's scheme (if you're referring to a scheme more like C) 18:34:52 isn't there a scheme kernel module? and a scheme-bash? :) 18:35:02 No, Iwant Scheme - but I wish I could interface with lower level things more conveniently, without having to resort to an FFI or doing things in a far slower way entirely in Scheme. 18:35:07 :D scsh! 18:35:25 elderK: Like what lower level things? 18:35:44 :P freestanding scheme anyone? 18:35:44 :P 18:35:45 lol 18:36:32 I dont know :) 18:36:40 Imagine a scheme where, you could use the default GC type system, when available. 18:36:45 jao [n=jao@obfw.oblong.net] has joined #scheme 18:36:45 but still use scheme with a manual allocator. 18:37:01 but, not actualyl have any difference in how you use scheme, other than you may have to allocate/release yourself, until the GC is active. 18:37:06 say, in the case of a system coming up. 18:37:15 before the MMs are alive and well. 18:37:21 then again 18:37:26 you can use the stack, like chicken does. 18:37:30 as the memory space, which is fine too 18:37:37 *elderK* ponders 18:37:39 elderK: I've actually been playing around with that idea, of having manual GC. 18:37:52 :):D 18:38:56 I don't know, I just like Scheme. I just wish I could do everything in Scheme, without it being painful and at the moment, doing any kind of real binary IO or the like, is painful. So, I wrote workarounds so I could do it all in Scheme. But, it's just... I don't know. I should just stop bitching and either deal with it, or build my own replacement. 18:38:59 :p 18:38:59 lol 18:39:15 elderK: I know how that is. :< 18:39:27 which reminds me, I need to find out how to build scheme objects, under C - that are managed by scheme's GC. 18:39:33 That way, I can define my own port type things. 18:39:35 and the like. 18:39:46 with read-sequence, that doesnt operate at a byte-by-byte basis. 18:39:47 :P 18:39:56 and seek and suchlike. 18:39:57 :) 18:40:04 -!- rcassidy [n=rcassidy@nomad.ccs.neu.edu] has quit [] 18:40:08 the only problem with doing that is ... 18:40:16 that your scheme pointers will be invalid after gc :) 18:40:39 with plt you can force the gc not to move objects though 18:41:06 and you can release them when necessary 18:41:18 say, this. (k-open-file-port "filename" args) --> is a C function taht returns a Scheme object. when scheme object is murdered savagely, either it closes the file descriptor, or you (k-close-port port) 18:41:27 I once wrote spico; a pico (language built at the vub, belgium) plugin for drscheme 18:41:40 that was confusing, mixing C, scheme and pico to get it to work :) 18:41:47 aye :) 18:41:48 I bet 18:42:00 especially since pico managed it own threads .. :) 18:42:05 it's 18:42:07 its 18:42:09 aargl 18:43:19 the idea is, I'd like to use true scheme objects. But, I'd like them to be created in C - so that they can benefit from C's IO functions. 18:44:01 then again, (open-input-port) etc, expect you to release them manually, from what Ive seen 18:44:01 Is it just me, or is Scheme becoming very...diluted with (a) implementation dependent things, and (b) un-lispy syntax? 18:44:14 elderK: that's how a good deal of emacs works 18:44:14 unless of course, they are not reachable - but then, Im not sure if they close the fd they are bound to or not. 18:44:36 elderK: of course, with emacs it's elisp and not scheme 18:44:40 melgray_ [n=melgray@70.99.250.82] has joined #scheme 18:44:47 I dont use emacs. 18:44:49 nor elisp :P 18:44:56 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 18:45:03 elderK: you don't need to. it's an example 18:45:03 elderK: would be strange to use one without the other anyway 18:45:20 aye, I mean, it would seem like a bug, even if it wasnt. 18:45:42 although it would be cool to automatically close fds when the port was no longer able to be referenced. 18:45:49 I really need to see how chicken does these things. 18:46:00 I still want to create my own little schemterpreter too, but I've much to learn before I start. :) 18:46:19 -!- Nichibutsu [n=myfabse@wikipedia/Track-n-Field] has quit [] 18:46:50 Also, just because I may use C structures within Scheme - doesn't mean I cant code most of my stuff in Scheme - and create those structures within Scheme - and call C functions which act on them. 18:47:03 mike [n=m@dslb-088-065-174-234.pools.arcor-ip.net] has joined #scheme 18:47:06 Right? :) 18:47:15 why not call Scheme functions to act on them? 18:47:32 -!- mike is now known as Guest59239 18:47:35 I would 98%. 18:47:43 elderK: I think you should forget about C entirely for a while. ;) 18:47:56 :P Thats what Im trying to do :P But there are some things that wont go away. 18:48:04 like what? 18:48:07 :P Like reading binary files and suchlike byte by byte :P 18:48:18 without using implementation specific things. 18:48:45 isn't C also an impementation specific thing? 18:48:46 :) 18:48:51 what about running scheme on java :) 18:49:18 or for example, accessing uint(8|16|32|64)_t's at arbitrary locations within a bytevector, rather than only locations that are aligned, since, most binary formats aren't aligned and happy :P 18:49:31 arcfide [n=arcfide@adsl-99-137-200-228.dsl.bltnin.sbcglobal.net] has joined #scheme 18:49:41 thats easy to solve, witha few procedures, granted :) 18:50:16 bigloo, tverwaes? 18:51:24 Arelius_ [n=Indy@netblock-68-183-230-134.dslextreme.com] has joined #scheme 18:51:41 Anyone here know of a decent tty tutorial? 18:51:42 -!- mmc [n=mima@esprx02x.nokia.com] has quit [Remote closed the connection] 18:52:01 Specifically, on programs that write and read from ttys? 18:53:19 -!- dysinger [n=tim@cpe-75-80-200-182.hawaii.res.rr.com] has quit [Read error: 110 (Connection timed out)] 18:54:07 arcfide: in Scheme or generally? 18:54:38 ecraven: Well, in Scheme would be great, but generally is more likely. 18:55:00 ecraven: Basically, I want to convert my subprocess code to something that doesn't rely on an external utility for reading and writing to the TTY. 18:55:16 It's a virtual TTY representing a connection to a Bluetooth device, but that shouldn't matter. 18:55:18 i seem to remember scheme48 or scsh had some tty-related code, but not sure 18:59:03 -!- cracki_ [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit [Read error: 110 (Connection timed out)] 19:01:04 hm.. how do c# and java VMs interface with C code? 19:01:18 -!- melgray [n=melgray@70.99.250.82] has quit [Read error: 110 (Connection timed out)] 19:03:56 -!- barney [n=bernhard@p549A0190.dip0.t-ipconnect.de] has quit [Remote closed the connection] 19:10:06 -!- dima_z [i=dima@66.160.171.42] has quit [Read error: 104 (Connection reset by peer)] 19:10:13 Oh man, how embarrassing! 19:10:21 I basically reimplemented a subset of SRFI 74 19:10:42 MichaelRaskin_ [n=raskin@gwh-1-177-mytn23k1.ln.rinet.ru] has joined #scheme 19:11:51 RageOfThou [n=RageOfTh@92.36.223.129] has joined #scheme 19:15:09 -!- Guest59239 [n=m@dslb-088-065-174-234.pools.arcor-ip.net] has quit ["This computer has gone to sleep"] 19:16:33 elderK: Good practice, but not very practical. :-) I believe now would be the time to say, "We told you so." ;-) 19:17:39 aaco_ [n=aaco@unaffiliated/aaco] has joined #scheme 19:18:54 this schemetalk is very interesting: (define foo ((NSString alloc) initWithString:(car x))) 19:19:19 *arcfide* raises an eyebrow. 19:19:36 mixing typed and untyped is a bit schizophrenic though 19:19:49 What does it do? 19:19:58 dysinger [n=tim@cpe-75-80-200-182.hawaii.res.rr.com] has joined #scheme 19:19:58 Besides freak Schemers out? 19:20:18 elderK: http://smallwiki.unibe.ch/schemetalk 19:21:05 -!- hornbeck [n=hornbeck@174.148.2.218] has quit [Read error: 145 (Connection timed out)] 19:24:30 it sounds freakishly slow 19:24:39 Slom [n=a@pD9EB7BE1.dip.t-dialin.net] has joined #scheme 19:25:01 arcfide: I've actually noticed that several of the SRFIs duplicate each other. 19:25:22 but, aye. 19:25:31 some of them are incompatible 19:25:34 elderK: Not only that, but some supersede others, some are purposefully less complete, and others are subsumed entirely by "nicer" libraries outside of the SRFI process. 19:25:49 aye 19:26:34 Welcome to the world of Scheme, where we have it all, except for a way to get it all. 19:26:43 ecraven: not -that- slow ;P 19:26:50 proq: glad you like it :) 19:29:19 proq: if you do something interesting with it, let me know. 19:35:16 -!- aaco [n=aaco@unaffiliated/aaco] has quit [Read error: 110 (Connection timed out)] 19:38:18 Some also preemptively supersede worse designs. For example, compare SRFIs 32 and 33 with SRFIs 60 and whatever the other sorting SRFI is. 19:40:17 aye, Riastradh. 19:44:05 wrldpc [n=worldpea@pool-173-48-214-204.bstnma.fios.verizon.net] has joined #scheme 19:45:13 Riastradh: "preemptively supersede"? 19:45:18 Yep. 19:45:21 I may be a little too tired to decipher that 19:46:06 You mean that the earlier designs are better? 19:46:09 SRFI 33 was carefully conceived and reasonably well designed. It identified the real problem and solved that problem. 19:46:23 SRFI 60 rehashed bad designs and ignored the real problem. 19:46:39 It's unfortunate that both 32 and 33 were withdrawn 19:50:21 hey. isn't implementing syntax-case with "syntactic closures" way, waaayyyyy easier than the mark-antimark/substitution wrapping described in R6RS? 19:50:44 That's a good hypothesis to test, sphex. 19:51:04 I encourage you to test it. 19:52:45 Small note: only one implementation of syntactic closures, of which I am aware, provides what is necessary to implement DATUM->SYNTAX correctly so that non-hygienic macros can be used composably in the expansion of other macros. 19:56:23 Sir, are you bragging? 19:57:16 No, I'm merely stating technical fact. Were I bragging, I'd say that my macro expander is immensely clearer and more understandable than Bawden's. 19:57:26 Riastradh: ok.. well, so.. it can work? I'm not going to find out at the end that I need something like the mark-antimark stuff to make it work right? 19:58:08 I don't know. I have never implemented SYNTAX-CASE. 19:58:15 That's why I encourage you to test the hypothesis. 19:58:31 especially wrt the whole library "phases" thing which confuses the hell out of me 19:58:34 The macro expander to which I referred, by the way, is publicly available on the web at . 19:58:37 That's a red herring. 19:58:38 Riastradh: oh ok 19:58:38 sphex: Read some of the papers that the authors wrote when first dealing with this. 19:59:03 -!- McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has quit ["Changing server"] 19:59:05 Phases are completely unrelated, despite the insistence of the Indiana camp to screw them up and to confuse everything else with them. 19:59:16 Hehehe. 19:59:18 Riastradh: ok, great. gonna check it out. 20:00:01 Riastradh: What confusion are you referencing? 20:01:35 Riastradh: oh ok. so for now I could just leave the whole "library stuff" out of my expander and just pass it a "current top-level-environment" and a "macro-definition-hook" (which could evaluate the transformer in whatever environment it wants)? 20:03:31 arcfide, the Indiana camp want each name in a library to have a single meaning, independent of phase. This is bogus; names should be able to have different meanings at different phases. The Indiana camp believe that programs and programmers should be confused by mixing up the meanings of names at different phases, rather than making it clear at which phase each name is used and what its meaning is at that phase. 20:03:44 sphex, approximately, yes. 20:05:17 ok, great. so I can put off this whole library phases madness until much, much later. yay. 20:06:52 benny` [n=benny@i577A090C.versanet.de] has joined #scheme 20:08:25 -!- synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has quit [Remote closed the connection] 20:08:33 synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has joined #scheme 20:08:58 Riastradh: I agree that most people here want to have a single meaning for a given name in any phase into which that name is imported, but I don't think they would go so far as to say that this is confusing the meaning of a name that exists in more than one phase. Possibly confusing in which phase that name was intended to be used. 20:09:47 -!- kniu [n=kniu@DA-YU.RES.CMU.EDU] has quit [Connection timed out] 20:10:08 I wouldn't say there is a confusing of which names mean what, but there could be confusion as to what names are bound. 20:10:27 No, what they want to *do* is to confuse the meanings of names at different phases, and assume that the programmer wrote names only at the phases where they really intended, and then guess what libraries need to be imported when. For example, if I write a macro whose purpose is to expand to code that calls LAUNCH-THE-MISSILES, but I miss a quote somewhere, in PLT Scheme and in Scheme48 I get an undefined variable error, but what 20:10:31 kniu [n=kniu@CMU-328674.WV.CC.CMU.EDU] has joined #scheme 20:11:01 Cut off at "but what." 20:11:13 ...but what the Indiana camp want is to obliterate the planet. 20:11:56 Couldn't as much confusion arize if you imported two different libraries that exported the same name into two different phases, and then confused which was which? 20:12:04 s/arize/arise/ 20:12:37 I may *want* to do that. For example, I may want to use lazy streams when I write my macro and use Scheme's built-in FORCE during macro expansion, but I might be expanding to a different language -- a lazy Scheme -- in which FORCE means something different. 20:12:54 wow.. I didn't know there was so much at stake about scheme libraries. there's some cabal that wants to blow up the planet? and they're related to r6rs?! zomg. 20:13:54 The Indiana camp have deluded themselves into believing that it is difficult to identify the phases at which names are intended to be used. This is true if the system masks errors, as the Indiana camp want, but not true in PLT Scheme and Scheme48. 20:13:56 Riastradh: Yes, that may be a legitimate concern, but that's putting as much burden on the programmer to know what they are doing as would be implicitly phasing a library's importation. 20:14:02 It is not a burden on the programmer. 20:15:05 Mr-Cat [n=Mr-Cat@bahirkin1507.static.corbina.ru] has joined #scheme 20:15:47 hey btw.. does anyone have a page with a simpler description of r6rs library semantics.. or that describes some simpler implementation that complies with it.. or something? 20:15:54 Personally, I kind of think that it is a moot point, since both systems can operate together in one Scheme implementation without stepping on each other's toes. 20:16:37 Having the system guess at the intended phases makes it much less obvious when code may be executed. This makes it harder to understand systems. The difference between whether a gigantic library is loaded into the compiler or not, in the Indiana camp's proposed scheme, may boil down to whether you write a single quote before a name or not. That's a big difference precipitated by a tiny and non-obvious change. 20:18:40 Riastradh: And yet, if I were reading code that had two different meanings for the same names depending on which phase they were used inside one library, that would also be confusing, and make it harder to understand the system. It may be what the programmer intended, but that doesn't mean it lends itself to ready interpretation by human readers. Both have drawbacks. 20:19:36 The information that you describe as possibly confusing is localized. If the name appears in quotation, then it's for a different phase. Easy. 20:20:05 Riastradh: in a perfect world, I would agree with you, but I have never come across that issue myself, I suspect it happens rarely 20:20:35 How much code have you personally written that involves multiple phases? 20:20:49 i have no idea, as I dont have to care :) 20:20:54 -!- benny [n=benny@i577A188E.versanet.de] has quit [Read error: 113 (No route to host)] 20:20:55 (Qualitatively -- `none', `a single contrived example just to test', `a little', `a lot'.) 20:21:09 As easy as quotation is for the problem you describe. I agree that a Scheme implementation should allow you to catch errors easily, and the enforcement of phasing bounds should be possible in a Scheme implementation, but I also think that its nice and plenty useful to have implicit phasing as well. R6RS Libraries currently allow for both in the Same implementation, and so I maintain that both should be allowed. 20:21:20 i know i have written some that I had to 'fix' for plt 20:21:28 The R6RS is no basis for the justification of technical decisions! 20:21:36 no, of course not. 20:22:05 That talk is circular; please refrain from circularity. The R6RS permits both approaches because it is a compromise between the two camps. 20:22:07 I'm not saying that, I'm just saying that it is possible for both phasing methodologies to exist together. 20:22:45 What I find annoying is that you are stuck with one or the other in a system, Like PLT and Ikarus. I don't yet know what Chez will do. 20:22:58 you people are confusing 20:23:04 anyway, thanks for the help Riastradh 20:23:24 By the way, implicit phasing also makes it harder to understand the process of macro expansion. 20:23:32 Ikarus doesn't allow you to explicitly limit the phase, and PLT doesn't allow you to make the implementation infer the phases. Both are annoying to me. I think that's the real problem. 20:23:55 I am sure sphex is glad to know that my macro expander need not be concerned with phases. 20:24:30 riastradh: Why does macro expansion have to be understood in terms of implicit or explicit phasing? I didn't hear of either when I first learned about macro expansion. 20:24:57 sphex: Don't worry, it's just a bunch of us nitpicking over style. ;-) 20:25:04 PLT doesn't allow the implementation to infer the phases because there is no value to that. Implicit phasing only masks errors and reduces the obvious information content of a library description. For example, if I want to find out what libraries I need to load in order to compile one, how do I do that? 20:25:12 sphex: Just enjoy macro expansion and ignore all this library stuff. 20:25:49 good point Riastradh 20:25:59 Riastradh: Obviously, there are issues, such as requiring expansion of the library body. I agree with that. 20:26:27 I have seen no advantages to implicit phasing, and I have identified many disadvantages. I must vanish now. 20:26:34 sphex, if you have questions about riaxpander, please email me. 20:30:10 arcfide: hehe :p well, the thing is I'm working on a toy scheme implementation and hope it can be r6rs-compliant eventually. but right now I can't make much sense of the r6rs verbiage. 20:30:56 sphex: Things will make more sense as you go along. It can be a little hard to understand what they say in R6RS. 20:32:58 to know what you are talking about ... are you talking about using (for ... expand run) vs without for? 20:33:04 Riastradh: ok, great. so IIUC, r6rs is just.. very broad in what would be a compliant system, and your implementation is an example of a possibly simpler design? 20:34:05 tverwaes: Not exactly, but R6RS deals with phasing of library imports using such constructs. 20:34:20 sphex: Riastradh's expander is just a macro expander, it has nothing to do with R6RS per se. 20:34:30 well sure; for is just an example. but you mean those 3 (or whatever) phases in which you can load stuff right? 20:34:45 tverwaes: There are infinite number of phases. 20:34:49 ok 20:35:12 is each single expansion counted as a phase? 20:35:33 Fare [n=Fare@ita4fw1.itasoftware.com] has joined #scheme 20:35:39 no 20:35:58 every dependent expansion 20:36:16 well thats i understand it 20:36:32 is that different from what I said? :) 20:36:40 oh right.. he says his macro expander need not bother with phases.. well, good. I guess mine won't bother either, cause I don't get them, hehh. :p 20:36:44 tverwaes: Since macros could execute arbitrary code in it, the expansion at one phase may require expansion of a higher phase before it can expand the current phase, this results in a new phase. 20:37:19 exactly what I meant. maybe with the wrong words :) 20:37:21 the problem is that you get a ton of libraries loaded :\ 20:37:42 otherwise it would make no sense to me to have an infinite amount of phases :) 20:38:02 Alright, food time. 20:38:02 so expand refers to all phases except for the actual run phase I guess? 20:38:03 :-) 20:38:16 thats phase 0 i think 20:38:45 -!- aaco_ is now known as aaco 20:39:29 now the one group says its ok to load a library once for all phases, and the other load it for each phase 20:40:18 ah right; phase 0 is used for expansion-time syntaxes 20:41:33 mmh. what is the point of loading it over and over again; except for the fact that it reinitializes? 20:41:39 -!- npe [i=npe@naist-wavenet126-102.naist.jp] has quit [] 20:41:40 or just that you can decide not to load it 20:41:51 -!- dlt_ [n=dlt@201.57.58.146] has quit ["Leaving"] 20:42:06 well thats the big debate 20:42:12 so it seems 20:42:13 initialization side effects 20:42:17 :( 20:42:26 isn't scheme supposed to be functional? ;P 20:43:22 sepult [n=buggarag@xdsl-87-78-103-226.netcologne.de] has joined #scheme 20:43:37 i think the r6rs describes it well, if you have a little background info 20:44:08 I started reading r6rs yesterday; but it isn't really written all that pleasantly :) 20:44:31 boring storyline, no action! 20:44:44 exactly :D 20:44:50 r5rs was more juicy 20:46:12 -!- davidad [n=me@dhcp-17-116.media.mit.edu] has quit [Connection timed out] 20:46:35 I'm actually glad to see that there are such interesting discussions going on at this channel. I think I'll stick around :) 20:47:11 i guess on the other hand LAUNCH-THE-MISSILES may never because the system was still loading libraries :) 20:47:29 may never be called 20:48:03 incubot: LAUNCH THE MISSILES 20:48:08 have fun building missiles tomorrow! 21:05:17 later guys 21:05:47 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #scheme 21:10:17 -!- AtnNn [n=welcome@modemcable087.62-56-74.mc.videotron.ca] has quit ["!"] 21:11:41 aaco_ [n=aaco@unaffiliated/aaco] has joined #scheme 21:11:48 SharkBra` [n=user@210.48.104.34] has joined #scheme 21:13:35 leppie: `-the-' infix is not schemish enough I think. Better will be `with-missiles-launched'. 21:14:04 or just `launch-missiles' 21:14:07 :) 21:14:38 with-fusillade 21:15:02 -!- SharkBra` is now known as JonnyCrossbonesA 21:15:25 -!- JonnyCrossbonesA is now known as SharkBrain` 21:16:31 (milliles 'launch) -> schemetalk :) 21:16:41 *missiles 21:16:43 doh! 21:18:03 wrldpc_ [n=worldpea@pool-173-48-214-204.bstnma.fios.verizon.net] has joined #scheme 21:18:24 Oh, we need a missilebot here :) 21:18:49 to do this: 21:18:55 missilebot: launch 21:19:33 leppie: There are actually a lot of debates here, and you are mentioning a different one. 21:19:42 One debate is over explicit and implicit phasing. 21:20:29 A second debates whether or not each phase should have a unique copy of a library state. 21:21:13 Another debate is when initialization of libraries should occur. 21:23:31 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["The funniest things in my life are truth and absurdity."] 21:24:46 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 21:26:04 many debates. 21:27:12 saccade_ [n=saccade@65-78-24-47.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 21:28:25 -!- wrldpc [n=worldpea@pool-173-48-214-204.bstnma.fios.verizon.net] has quit [Read error: 110 (Connection timed out)] 21:28:39 aack [n=user@s559195f7.adsl.wanadoo.nl] has joined #scheme 21:29:11 geckosenator [n=sean@71.237.94.78] has joined #scheme 21:29:19 -!- aaco [n=aaco@unaffiliated/aaco] has quit [Read error: 110 (Connection timed out)] 21:30:38 McManiaC [n=nils@vpn1216.extern.uni-tuebingen.de] has joined #scheme 21:33:20 -!- melgray_ [n=melgray@70.99.250.82] has quit [] 21:36:13 another one is between coke, pepsi, and (recently in #chicken) that perennial also-ran, RC cola 21:36:44 *zbigniew* is partial to Ale 8, of course 21:37:35 RC Cola! That stuff was remarkable for holding its carbonation for way, way longer than anything else once it was opened. 21:37:55 mmmmmmm... chemicals 21:37:57 It doesn't hold a candle to a good ginger beer, tohugh. 21:38:28 RC cola? never heard of that :) 21:39:26 and ginger beer... the first link on that is from "the lesbian guide"?? 21:40:02 wha? never had ginger beer? 21:40:19 well lesbians have good taste then :P 21:40:59 -!- ecraven [n=nex@140.78.42.103] has quit ["bbl"] 21:41:52 -!- kniu [n=kniu@CMU-328674.WV.CC.CMU.EDU] has quit [Read error: 110 (Connection timed out)] 21:42:36 *proq* wonders what odd search engine tverwaes is using 21:42:45 *zbigniew* speculates wildly as to which search engine ... damn, beaten 21:43:34 ginger beer is carbonated ginger soda 21:43:42 maybe it's google's safesearch with the 'filter all non-adult content out' option selected 21:44:27 kniu [n=kniu@DA-YU.RES.CMU.EDU] has joined #scheme 21:44:33 and next I suppose you're going to tell me you don't know what Jolt is? 21:44:37 *mejja* prefers Dr. Pepper 21:45:04 Dr. Pepper owns RC, literally, so you're in luck 21:49:10 proq: I'm belgian. I have belgian beer 21:50:11 zbigniew: yeah. google.li, they don't spy on me :) 21:50:56 ginger beer is non-alcoholic, so imo they aren't mutually exclusive 21:53:02 why the name beer then? 21:53:26 oh well. more like that, but generally they taste like lager 21:55:08 traditional ginger beer is actually brewed btw 21:56:21 not summoned into existence by technomagic like I assume most soft drinks are 21:56:38 which explain the "beer" in it's name 21:57:00 -!- wrldpc_ [n=worldpea@pool-173-48-214-204.bstnma.fios.verizon.net] has quit [] 21:57:01 My searches of the term came up with some homemade recipe for brewing/making the stuff. 21:57:17 also IIRC you can brew it is such a way that it has a non-negligible alchohol content 21:57:33 what about white lightning? 21:59:53 SharkBrain`: right, it's a non-alcoholic brewing process 22:01:08 davidad [n=me@NORTHWEST-THIRTYFIVE-TWO-SEVENTEEN.MIT.EDU] has joined #scheme 22:05:36 -!- bughunter2 [n=j@ip4da4427e.direct-adsl.nl] has left #scheme 22:05:48 -!- tjafk2 [n=timj@e176213045.adsl.alicedsl.de] has quit [Remote closed the connection] 22:08:14 -!- aaco_ [n=aaco@unaffiliated/aaco] has quit ["Leaving"] 22:08:18 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Remote closed the connection] 22:10:16 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 22:11:00 -!- hotblack23 [n=jh@p5B0570A6.dip.t-dialin.net] has quit [Read error: 60 (Operation timed out)] 22:12:00 luz [n=davids@189.122.117.82] has joined #scheme 22:13:09 tjafk [n=timj@e176213045.adsl.alicedsl.de] has joined #scheme 22:14:01 -!- elderK [n=zk@122-57-250-128.jetstream.xtra.co.nz] has quit ["much thinking to do"] 22:14:51 alaricsp [n=alaricsp@88-202-205-114.rdns.as8401.net] has joined #scheme 22:17:05 Judofyr_ [n=Judofyr@c349BBF51.dhcp.bluecom.no] has joined #scheme 22:18:37 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 22:21:27 -!- error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Connection timed out] 22:23:56 tonyg [n=tonyg@wireless-am8.ucsd.edu] has joined #scheme 22:24:15 -!- tonyg [n=tonyg@wireless-am8.ucsd.edu] has left #scheme 22:33:56 -!- Judofyr_ [n=Judofyr@c349BBF51.dhcp.bluecom.no] has quit [Remote closed the connection] 22:34:44 -!- RageOfThou [n=RageOfTh@92.36.223.129] has quit [Read error: 104 (Connection reset by peer)] 22:35:01 RageOfThou [n=RageOfTh@92.36.223.129] has joined #scheme 22:35:25 -!- Judofyr [n=Judofyr@c349BBF51.dhcp.bluecom.no] has quit [Read error: 110 (Connection timed out)] 22:36:00 -!- alaricsp [n=alaricsp@88-202-205-114.rdns.as8401.net] has quit [] 22:40:43 -!- Slom [n=a@pD9EB7BE1.dip.t-dialin.net] has quit [] 22:45:55 error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 22:47:01 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 22:48:30 -!- aack [n=user@s559195f7.adsl.wanadoo.nl] has left #scheme 22:48:47 meanburrito920_ [n=John@76-217-6-100.lightspeed.irvnca.sbcglobal.net] has joined #scheme 22:56:00 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 22:57:22 -!- Fare [n=Fare@ita4fw1.itasoftware.com] has quit ["Leaving"] 23:05:13 breily [n=breily@173.15.192.254] has joined #scheme 23:07:15 CaptainMorgan [n=CaptainM@c-75-68-42-94.hsd1.nh.comcast.net] has joined #scheme 23:09:56 -!- athos [n=philipp@92.250.250.68] has quit ["leaving"] 23:14:26 -!- davidad [n=me@NORTHWEST-THIRTYFIVE-TWO-SEVENTEEN.MIT.EDU] has quit [Success] 23:14:45 gweiqi [n=greg@69.120.126.163] has joined #scheme 23:16:40 davidad [n=me@dhcp-18-111-16-64.dyn.mit.edu] has joined #scheme 23:16:45 -!- Mr-Cat [n=Mr-Cat@bahirkin1507.static.corbina.ru] has quit ["    (xchat 2.4.5  )"] 23:26:01 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 23:29:26 -!- CaptainMorgan [n=CaptainM@c-75-68-42-94.hsd1.nh.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 23:34:45 MrFahrenheit [n=RageOfTh@92.36.223.129] has joined #scheme 23:35:13 -!- RageOfThou [n=RageOfTh@92.36.223.129] has quit [Read error: 104 (Connection reset by peer)] 23:36:15 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Leaving"] 23:39:14 -!- underspecified [n=eric@softbank220043052007.bbtec.net] has quit [] 23:41:05 geckosen1tor [n=sean@71.237.94.78] has joined #scheme 23:51:28 melgray [n=melgray@70.99.250.82] has joined #scheme 23:52:30 -!- geckosenator [n=sean@71.237.94.78] has quit [Read error: 110 (Connection timed out)] 23:57:26 -!- deat [n=deat@fac34-8-88-172-174-215.fbx.proxad.net] has quit []