00:00:44 accel [~accel@unaffiliated/accel] has joined #scheme 00:00:45 rien: huh? {} is used in ruby for blocks 00:01:28 you can use { } instead of do .. end 00:01:32 -!- josephholsten [~josephhol@216.16.128.242] has quit [Quit: josephholsten] 00:02:07 yeah, but they're not quite the same thing 00:02:13 yeah, sorry. only and end that matchs a do 00:02:16 and that's not a full replacement, 00:02:51 so much for this... 00:03:12 -!- steampunkey [~steampunk@78.134.131.131] has left #scheme 00:06:46 ali384040 [~ali384@adsl-75-24-110-166.dsl.pltn13.sbcglobal.net] has joined #scheme 00:06:47 hey guys 00:07:02 any good tutorial of scheme online? 00:09:50 -!- pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has quit [Ping timeout: 240 seconds] 00:10:22 -!- pdelgallego [~pdelgalle@1385159852.dhcp.dbnet.dk] has quit [Ping timeout: 255 seconds] 00:12:04 -!- accel [~accel@unaffiliated/accel] has quit [Quit: leaving] 00:12:39 -!- fradgers- [~fradgers-@5e0b815c.bb.sky.com] has quit [Remote host closed the connection] 00:13:50 ali384040: I'll recommend htdp or sicp, although they're not exactly tutorials. 00:16:33 -!- gravicappa [~gravicapp@ppp85-140-65-44.pppoe.mtu-net.ru] has quit [Ping timeout: 240 seconds] 00:16:38 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Ping timeout: 240 seconds] 00:17:17 kilimanja [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 00:18:27 scheme has many good resources online for free 00:18:41 like the scheme programming language 00:27:13 those are books.... 00:27:15 anything online? 00:29:11 those are books available free (legally) online 00:29:40 oh ok 00:30:42 -!- kilimanja [~kilimanja@unaffiliated/kilimanjaro] has quit [Quit: Leaving] 00:32:11 Mandar [~armand@pha75-21-78-228-186-233.fbx.proxad.net] has joined #scheme 00:32:46 -!- masm [~masm@bl16-170-191.dsl.telepac.pt] has quit [Quit: Leaving.] 00:33:05 SICP even has a video lecture series to go with it 00:34:03 -!- Mandar [~armand@pha75-21-78-228-186-233.fbx.proxad.net] has quit [Client Quit] 00:35:41 ali384040: fwiw, I learned scheme mostly from sicp and tspl3. 00:41:34 DrDuck [~duck@adsl-81-55-129.hsv.bellsouth.net] has joined #scheme 00:41:49 k 00:41:58 -!- bombshelter13b [~bombshelt@76-10-149-209.dsl.teksavvy.com] has quit [Remote host closed the connection] 00:49:22 -!- dualbus [~dualbus@201.171.107.254] has quit [Ping timeout: 260 seconds] 00:56:14 gravicappa [~gravicapp@ppp85-140-67-117.pppoe.mtu-net.ru] has joined #scheme 01:00:34 -!- gravicappa [~gravicapp@ppp85-140-67-117.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 01:03:57 -!- rgrau [~user@62.Red-88-2-20.staticIP.rima-tde.net] has quit [Read error: Connection reset by peer] 01:20:34 -!- mwolfe [~mwolfe@corona.cornerturn.com] has quit [Remote host closed the connection] 01:21:29 -!- copumpkin [~pumpkin@unaffiliated/pumpkingod] has quit [Quit: Computer has gone to sleep.] 01:33:05 -!- jonrafkind [~jon@jonr5.dsl.xmission.com] has quit [Ping timeout: 264 seconds] 01:33:13 -!- mmc [~michal@cs27120227.pp.htv.fi] has quit [Ping timeout: 240 seconds] 01:37:42 accel [~accel@unaffiliated/accel] has joined #scheme 01:40:33 -!- Azuvix [~Azuvix@71-215-25-216.bois.qwest.net] has quit [Quit: Leaving] 01:41:46 Jafet [~Jafet@unaffiliated/jafet] has joined #scheme 01:41:56 smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has joined #scheme 01:43:57 -!- ali384040 [~ali384@adsl-75-24-110-166.dsl.pltn13.sbcglobal.net] has quit [Quit: http://irc2go.com/] 01:49:13 -!- carleastlund [~cce@gotham.ccs.neu.edu] has quit [Quit: carleastlund] 01:50:26 qhe [~qhe2@192.55.54.40] has joined #scheme 01:50:58 zevarito [~zevarito@r186-48-134-225.dialup.adsl.anteldata.net.uy] has joined #scheme 01:51:07 copumpkin [~pumpkin@209-6-232-56.c3-0.sbo-ubr1.sbo.ma.cable.rcn.com] has joined #scheme 01:51:07 -!- copumpkin [~pumpkin@209-6-232-56.c3-0.sbo-ubr1.sbo.ma.cable.rcn.com] has quit [Changing host] 01:51:07 copumpkin [~pumpkin@unaffiliated/pumpkingod] has joined #scheme 01:55:03 -!- smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has quit [Quit: smtlaissezfaire] 02:04:20 smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has joined #scheme 02:08:19 Madars [~null@unaffiliated/madars] has joined #scheme 02:09:54 -!- smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has quit [Quit: smtlaissezfaire] 02:14:32 -!- zevarito [~zevarito@r186-48-134-225.dialup.adsl.anteldata.net.uy] has quit [Remote host closed the connection] 02:16:17 kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #scheme 02:17:16 Azuvix [~Azuvix@71-215-25-216.bois.qwest.net] has joined #scheme 02:30:34 smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has joined #scheme 02:32:19 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Quit: WeeChat 0.3.3] 02:33:07 kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #scheme 02:34:07 -!- myu2 [~myu2@v077103.dynamic.ppp.asahi-net.or.jp] has quit [Remote host closed the connection] 02:36:59 -!- smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has quit [Quit: smtlaissezfaire] 02:37:34 -!- bgs100 [~ian@unaffiliated/bgs100] has quit [Quit: night.] 02:43:46 jcowan [~John@cpe-74-68-112-189.nyc.res.rr.com] has joined #scheme 02:44:01 bitweiler [~bitweiler@99.58.93.196] has joined #scheme 02:52:20 smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has joined #scheme 02:53:37 -!- smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has quit [Client Quit] 02:53:46 -!- cky is now known as Zba2Y7Pr3 03:02:52 -!- jlongster [~user@nat/mozilla/x-nxoiqpfsjvbkcbpe] has quit [Ping timeout: 240 seconds] 03:10:31 -!- leppie [~lolcow@196-215-126-77.dynamic.isadsl.co.za] has quit [Read error: Connection reset by peer] 03:11:06 leppie [~lolcow@196-215-126-77.dynamic.isadsl.co.za] has joined #scheme 03:23:37 -!- Azuvix [~Azuvix@71-215-25-216.bois.qwest.net] has quit [Quit: Leaving] 03:35:27 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 03:40:14 -!- corruptmemory [~jim@ool-18bbd5b2.static.optonline.net] has quit [Ping timeout: 240 seconds] 03:42:12 smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has joined #scheme 03:46:23 -!- smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has quit [Client Quit] 03:48:16 smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has joined #scheme 03:52:34 timj__ [~timj@e176194247.adsl.alicedsl.de] has joined #scheme 03:56:14 -!- timj_ [~timj@e176199221.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 03:59:50 -!- RageOfThou [~RageOfTho@users-146-124.vinet.ba] has quit [Ping timeout: 240 seconds] 03:59:52 -!- MrFahrenheit [~RageOfTho@users-146-124.vinet.ba] has quit [Ping timeout: 255 seconds] 04:01:28 -!- DrDuck [~duck@adsl-81-55-129.hsv.bellsouth.net] has quit [Ping timeout: 240 seconds] 04:03:48 -!- accel [~accel@unaffiliated/accel] has quit [Quit: leaving] 04:06:35 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Ping timeout: 265 seconds] 04:07:29 REPLeffect [~REPLeffec@69.54.115.254] has joined #scheme 04:12:17 Hey, given that (eq? a b) is true, if I modify the contents of the object a is bound to, then I modify the contents of the object b is bound to, right? 04:12:46 Of course---they're the same object. 04:13:25 Zba2Y7Pr3, for some time now, I've been trying to find uses for eq? 04:13:30 besides comparing symbols and bools 04:30:09 DrDuck [~duck@adsl-81-55-129.hsv.bellsouth.net] has joined #scheme 04:32:10 vu3rdd [~vu3rdd@nat/cisco/x-snnhxazuntoqfivo] has joined #scheme 04:32:10 -!- vu3rdd [~vu3rdd@nat/cisco/x-snnhxazuntoqfivo] has quit [Changing host] 04:32:10 vu3rdd [~vu3rdd@fsf/member/vu3rdd] has joined #scheme 04:33:10 Historically, those *are* what it's for. 04:33:42 -!- smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has quit [Quit: smtlaissezfaire] 04:34:17 curi [~curi@c-67-188-58-92.hsd1.ca.comcast.net] has joined #scheme 04:35:05 -!- curi [~curi@c-67-188-58-92.hsd1.ca.comcast.net] has quit [Client Quit] 04:41:33 -!- bitweiler [~bitweiler@99.58.93.196] has quit [Ping timeout: 240 seconds] 04:48:46 accel [~accel@unaffiliated/accel] has joined #scheme 04:48:58 -!- gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has quit [Ping timeout: 276 seconds] 04:49:16 gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has joined #scheme 04:52:16 -!- wbooze [~levgue@xdsl-78-35-137-96.netcologne.de] has quit [Read error: Operation timed out] 04:52:29 homie` [~levgue@xdsl-78-35-140-172.netcologne.de] has joined #scheme 04:52:34 wbooze` [~levgue@xdsl-78-35-140-172.netcologne.de] has joined #scheme 04:54:38 -!- homie [~levgue@xdsl-78-35-137-96.netcologne.de] has quit [Ping timeout: 240 seconds] 04:54:50 -!- Zba2Y7Pr3 is now known as cky 04:57:21 jcowan, yeah 04:57:23 makes sense now 04:57:44 when I got my confusion on eq? I completely forgotten that scheme had set! and side effects 04:58:20 This is why Scheme is not Haskell, for example. (Notwithstanding all the above discussions on lazy, etc. :-P) 04:58:24 SET! is confusing. It's too bad we got stuck with it a long time ago. 04:59:10 why is set! confusing? 04:59:42 afaik, it changes to which object something is bound to 04:59:55 It reveals that there are mutable locations not straightforwardly associated with objects one can pass to and return from procedures or store in data structures and so on. 05:00:13 Its weakness is its strength: the implicit locations can't escape their context. 05:01:03 One can make non-escaping mutable locations without SET!. (let ((x (cons 0 '())) ... (set-car! x 1) ... (f (car x)) ...) 05:03:00 mwolfe [~michael@cpe-67-49-72-40.socal.res.rr.com] has joined #scheme 05:05:27 Provided there is no call/cc in there. 05:05:48 myu2 [~myu2@58x5x224x106.ap58.ftth.ucom.ne.jp] has joined #scheme 05:06:27 What does CWCC have to do with it, that is any different for (let ((x 0)) ... (set! x 1) ... (f x) ...)? 05:07:46 Concedo. 05:18:37 aSean [~aSean@134-208-39-197.ndhu.edu.tw] has joined #scheme 05:20:29 aSean_ [~aSean@134-208-39-197.ndhu.edu.tw] has joined #scheme 05:21:28 -!- aSean__ [~aSean@134-208-39-197.ndhu.edu.tw] has quit [Ping timeout: 276 seconds] 05:23:58 -!- DrDuck [~duck@adsl-81-55-129.hsv.bellsouth.net] has quit [Ping timeout: 246 seconds] 05:24:04 -!- aSean [~aSean@134-208-39-197.ndhu.edu.tw] has quit [Ping timeout: 276 seconds] 05:24:21 -!- xwl_ [~wixu@nat/nokia/x-plysykansstrxrdn] has quit [Remote host closed the connection] 05:40:38 _danb_ [~user@124-149-166-62.dyn.iinet.net.au] has joined #scheme 05:43:50 -!- parcs [~patrick@ool-45741d7d.dyn.optonline.net] has quit [Ping timeout: 240 seconds] 05:45:14 xwl_ [~wixu@nat/nokia/x-wdwridxkacmrndkb] has joined #scheme 05:45:25 parcs [~patrick@ool-45741d7d.dyn.optonline.net] has joined #scheme 05:56:42 -!- phao [~phao@189.107.190.102] has quit [Quit: Leaving] 05:56:55 phao [~phao@189.107.190.102] has joined #scheme 06:01:25 dualbus [~dualbus@201.170.71.87.dsl.dyn.telnor.net] has joined #scheme 06:05:04 -!- jcowan [~John@cpe-74-68-112-189.nyc.res.rr.com] has left #scheme 06:05:52 -!- myu2 [~myu2@58x5x224x106.ap58.ftth.ucom.ne.jp] has quit [Remote host closed the connection] 06:11:19 -!- ecraven [~user@140.78.42.213] has quit [Ping timeout: 260 seconds] 06:21:15 is there anyway to break out of a procedure in scheme? 06:25:10 lewis1711: call/cc? 06:25:38 or just do a blatant error, and use the exception handler of your great implementation. 06:25:48 call/cc eh 06:25:52 I've heard about this 06:25:53 a lot 06:25:57 guess now's my chance to use it 06:26:18 and nah, I am just trying to do something similar to a while loop 06:26:29 but y'know, all recursiony and such 06:26:47 Or write your function in CPS, and call the outer continuation earlier. 06:27:03 myu2 [~myu2@58x5x224x106.ap58.ftth.ucom.ne.jp] has joined #scheme 06:27:34 -!- mwolfe [~michael@cpe-67-49-72-40.socal.res.rr.com] has quit [Remote host closed the connection] 06:30:02 CPS? 06:30:16 continuation passing style. 06:31:04 -!- tupi [~david@186.205.37.15] has quit [Quit: Leaving] 06:33:21 Argh. lisppaste isn't here 06:36:27 lewis1711: http://paste.ideaslabs.com/show/rNveFHWQIX 06:38:53 or simpler: (define (foo) (call/cc (lambda (exit) (display "1\n") (display "2\n") (exit 42) (display "3\n") (display "4\n")))) 06:39:29 try (define (foo) (call/cc (lambda (exit) (display "1\n") (display "2\n") (exit 42) (display "3\n") (display "4\n"))) (display "the end\n")) too 06:40:50 -!- phao [~phao@189.107.190.102] has quit [Quit: Leaving] 06:41:02 jonrafkind [~jon@jonr5.dsl.xmission.com] has joined #scheme 06:41:15 smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has joined #scheme 06:41:39 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 260 seconds] 06:42:30 Gmind [~Nevermind@113.190.186.90] has joined #scheme 06:45:08 *Gmind* have been wondering about choosing Scheme and Assembly 06:45:34 Write a Scheme in asm. 06:45:49 There's already a famous one. "Dream", if I remember correctly. 06:45:57 *between Scheme and Asm 06:46:23 did u mean "Dream" is an implementation of Scheme on Asm ? 06:46:47 Axioplase_: I will try the simpler ones:) still very much a scheme noob 06:46:52 if it exist, i must be the smallest and fastest scheme impl ever made 06:46:54 :P 06:47:11 what would the fastest scheme be? gambit? 06:47:20 Gmind: yes, I did say that. 06:47:41 who's gambit ? 06:47:42 also, really? choosing between scheme and assembly language? err...pretty different 06:47:43 =.= 06:47:50 lewis1711 ? 06:47:59 ya 06:48:03 help me get through 06:48:05 lewis1711: gambit is fast, yes. 06:48:10 snappy [~naveen@unaffiliated/snappy] has joined #scheme 06:48:16 I like Scheme , but really curious about asm 06:48:19 none of them are *that* slow, are they? 06:48:32 gambit is schem impl on C ? 06:48:39 Gmind: yeah I keep telling myself I'm going to learn LLVM language (not quite assembler but getting there) 06:48:40 On many benchmarks too. But also it has a lot more. If you need a "minimal" and very fast scheme, go for stalin. 06:48:54 nah I don't need one 06:49:08 I just like it how in gambit you can embed C code right in there. really, really nice 06:49:17 Gmind: gambit is written mostly in gambit. It compiles to C. 06:49:22 though I am still to profile in it 06:49:31 *yet to profile 06:49:43 I don't really mean that I need another impl of SCheme , because IronScheme and Racket are great enough 4 me :P 06:50:12 Use what suits your needs. 06:50:50 though right now gambit is giving me a run time error without a line...probably because I embedded so much C in it 06:50:57 just because I'm drawn to both of them, so trying to figure out which one to go 1st 06:51:25 lewis1711: u can put "Flag" in those C code :P =) 06:51:35 -!- wisey [~Steven@host86-150-108-29.range86-150.btcentralplus.com] has quit [Quit: Leaving] 06:51:48 flag? 06:52:00 it's simple printf =)) 06:52:23 just for error locating in blind C errors 06:53:16 ahh 06:53:23 *** ERROR IN | lol| -- Operator is not a PROCEDURE 06:53:23 (#!void '# #!unbound2) 06:53:35 it needs to be more vague >_< 06:53:47 :)) 06:53:48 you called "#!void" 06:53:54 operator overload ? 06:53:58 Which is a value, but not a procedure. 06:54:12 =.=! 06:54:13 oh ok 06:54:16 So, you have code which returns #!void instead of returning a procedure. 06:54:44 is it related to C macros ? 06:54:51 humm 06:54:59 *lewis1711* hates runtime errors 06:55:06 rawrtaco5000 [~wolfbytes@c-24-125-60-18.hsd1.va.comcast.net] has joined #scheme 06:55:24 right I can see where it is. i just wish it gave me a line number and all to narrow it down 06:55:46 -!- rawrtaco5000 [~wolfbytes@c-24-125-60-18.hsd1.va.comcast.net] has quit [Client Quit] 06:55:51 LoL , it's really hard to trace out in C 06:55:55 *lewis1711* tries to avoid desire to change implementation 06:56:01 compare to some other languages 07:01:47 Gmind: There's a request out for an llvm backend for gambit, in case that interests you... 07:03:14 llvm ? 07:03:35 *Gmind* already forgot what is llvm 07:03:49 http://llvm.org 07:04:19 lewis1711, Gambit's debugger is supposed to help you to narrow it down... 07:04:28 Gmind: It's a "portable assembler" of sorts via ssa. 07:04:50 :-? 07:05:17 a virtual machine. 07:05:37 you compile to it instead of compiling to C or generating native code. 07:06:19 oh 07:06:23 interesting 07:06:39 it can make asm code from C 07:06:50 Riastradh: hmm, will look into. you can't use code with c-declare in the gambit interpreter though 07:06:56 Yes, except llvm can also generate native code, and is more suited to optimization than C. 07:07:17 I wonder if we'll see a big scheme on the LLVM one day 07:07:31 so u can optimize your C code here and translate back ? 07:09:12 (hey, indeed, my question from the beginning just is choosing between Scheme and Asm to learn 1st , you guys almost expanded it into impl of scheme in asm =) ) 07:09:20 lewis1711: That seems very likely, especially given how easy scheme is to implement with it. 07:10:13 ^_^ 07:10:40 hmm, taking a class with some assembler next semester, maybe I should try cracking into llvm after that 07:11:33 the problem here is I really want to see what I can do w/ Asm :P but it's hard to ask anyone at #asm, since they said "everything" =) It's true, but , how long ? 07:11:37 Gmind: No, you wouldn't do that: you would have your compiler generate llvm code instead. If you translate C into llvm, you're still stuck with C's optimization issues (although llvm/clang also does a decent job with C). 07:12:14 Obfuscate: so I must run my app on LLVM since then ? 07:12:24 lewis1711: llvm doesn't really function like assembly language: it's a virtual machine mapping directly to ssa form. 07:12:58 I am more of the mind if...if I want stuff fast, I don't mind writing in C. So for me it's more about whether a language integrates well with it. 07:13:29 Obfuscate: sure, but it's lower level than C, which is as low as I've gone, plus y'know, it'd be a bit easier if I understand more about how a computer actually *works* 07:13:53 Gmind: You can have llvm run the bitcode directly, or you can have it generate native code (just as gcc would with your C code). 07:14:05 cool 07:14:20 so it was very near asm 07:14:21 :P 07:14:48 lewis1711: Sure, as with all programming. ;) 07:14:56 ha 07:15:31 there's a dude trying to port scala to llvm, that'd be cool 07:15:50 lol why must he do that ? 07:15:53 -!- rien_home [~unkanon@rrcs-69-193-217-130.nyc.biz.rr.com] has quit [Ping timeout: 240 seconds] 07:16:08 -!- Crito [~none@unaffiliated/crito] has quit [Ping timeout: 255 seconds] 07:16:13 I'm tempted to write an llvm backend for chicken, but I don't code enough scheme for it to be worthwhile. 07:17:00 rien_home [~unkanon@rrcs-69-193-217-130.nyc.biz.rr.com] has joined #scheme 07:17:05 I like scheme for rapid prototyping, but I don't find it practical to use for large projects (although I'm sure many here don't share my sentiments). 07:17:22 Obfuscate: why's that? 07:18:48 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Remote host closed the connection] 07:19:05 am trying to use it in a hobby project, which is of course just me coding it so I can abuse macros horribly 07:19:35 The most major issues are a lack of static typing and immutability. 07:19:49 (is it really complicated to interact w/ file and I/o in Scheme or just because I'm not used to Scheme method ?) 07:19:50 -!- jewel [~jewel@196-210-187-2.dynamic.isadsl.co.za] has quit [Ping timeout: 240 seconds] 07:19:52 yes, lack of immutability bothers me 07:19:59 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 07:20:33 scheme isn't as dynamic as *some* dynamically typed languages. I don't find it too bad. 07:20:38 Gmind: It's not any more complicated than other languages I've used. 07:21:09 depends compared to what languages 07:21:20 The dynamic nature of scheme is sometimes useful, especially when writing quick scripts. 07:21:21 ruby for example has loads of build in stuff for string processing 07:22:26 compare to C 07:22:31 hmm 07:23:17 Gmind: It's pretty much the same as C, unless you're used to mmapped files. 07:23:23 I tried to make both File IO in Scheme and C 07:23:36 which func should I used in Scheme ? 07:23:53 ( the last time I tried, I was using "port" ) 07:25:50 Gmind: Yes, you want ports. ie., call-with-input-file and friends. 07:26:02 in C, I must try to open a file before write or read from it, in SCheme, could it be different ? 07:26:28 Is a scheme to C/scheme from scratch considered a trivial task as far as compilers go? 07:27:24 snappy: No, due to C lacking tail recursion and garbage collection. scheme to llvm is relatively simple though. 07:27:33 Gmind: Are you familiar with C++? 07:27:52 if there was an llvm scheme, could it easily call other code that gets compiled to llvm? 07:28:12 lewis1711: Yes, and it could easily call C, and vice versa. 07:28:17 ohh 07:28:29 Obfuscate: Interesting. I'm looking at undertaking a project, one that I will propose, doable, and also rewarding. 07:28:39 I was actually tihnking scheme to C or llvm 07:28:46 ecraven [~user@140.78.42.213] has joined #scheme 07:29:25 snappy: my vote is go for llvm ^_^ since scheme -> C has been done a lot before. though as a stranger on the internet, I am not sure how much sway I have;) 07:29:45 snappy: Do the latter, although it would be even better if you ported gambit or chicken to llvm. 07:30:17 I'm uncertain of gambit's internals, but they have several backends already, so it's probably not too terrible. 07:30:54 As for chicken... their model should be pretty trivial to generate llvm for. I was looking into it a few months back. 07:30:55 there is a 90 minutes video of Marc Feeley (Gambit's guru) teaching how to compile Scheme to C. 07:31:10 Yep, saw that video. 07:31:25 But, that's where I feel like I'd be somewhat cheating, so I was looking for other ideas. I might look into chicken to llvm 07:31:40 -!- accel [~accel@unaffiliated/accel] has quit [Quit: leaving] 07:31:51 snappy: And no, it's not "trivial". 07:32:14 snappy: afaik, llvm's garbage collector still needs some work (I haven't used it myself), but everything else you'ld want for implementing scheme is very well supported by llvm (and fast). 07:32:18 call/cc and tail calls are enough to make things not trivial I'd say. 07:32:48 Axioplase_: Both are trivial (as much as compilers can be trivial) in llvm... just not C. 07:33:06 Though making an very unefficient compiler to C must be quite easy. Still, not trivial I think. 07:33:15 s/an/a 07:33:42 Efficient closures are tricky, but not too bad if you're using garbage collection. 07:33:44 I'd still love to make scheml... that'd be a great project for LLVM 07:33:45 inefficient, as in no tail call optimisation as per the spec? 07:34:45 snappy: Yes. Take a look at existing scheme to C compilers: they all use very hacky techniques to attempt to solve the problem. 07:35:27 Obfuscate :not too familiar :P but enough to know how to write/read a file 07:35:30 huh? gambit and chicken have TCO don't they? 07:36:50 lewis1711: Yes, but through very different techniques (gambit periodically unwinds, and chicken, well... theirs is a little more interesting). 07:36:56 Thanks, definitely will do. Going to spend the weekend researching and coming up with a proposal that works with school schedule. 07:37:38 snappy: llvm does have tail calls, btw. 07:38:06 Ah, excellent. 07:42:05 lewis1711: gambit uses trampolines 07:43:50 -!- Nisstyre65 [~nisstyre@infocalypse-net.info] has quit [Ping timeout: 240 seconds] 07:46:46 -!- Gmind [~Nevermind@113.190.186.90] has quit [Quit: Leaving.] 07:46:54 -!- scottj [~scott@206.212.250.58] has quit [Quit: leaving] 07:46:59 -!- jonrafkind [~jon@jonr5.dsl.xmission.com] has quit [Ping timeout: 260 seconds] 07:52:05 HG` [~HG@85.8.90.240] has joined #scheme 07:52:49 Trampolines are a solution for closures, not tail calls. 07:54:44 what? 07:55:01 hkBst [~quassel@79.170.210.174] has joined #scheme 07:55:01 -!- hkBst [~quassel@79.170.210.174] has quit [Changing host] 07:55:01 hkBst [~quassel@gentoo/developer/hkbst] has joined #scheme 07:55:34 I beg to differ. 07:55:49 *Riastradh* blinks. 07:56:17 Axioplase_: Have a link with details? 07:56:38 Obfuscate: what about http://en.wikipedia.org/wiki/Tail_call#Through_trampolining ? 07:56:38 trampoline pops the tailcalling frame from sack by returning to the one below it before making the next call 07:57:18 pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 07:57:20 pdelgallego [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 07:57:21 which is the portable way of getting rid of it for example in C 07:58:04 Axioplase_: Ah, okay. I wasn't even thinking of that as trampolining, for some odd reason. 07:58:31 slom [~sloma@port-87-234-239-162.static.qsc.de] has joined #scheme 08:00:33 if you use cps, you don't even need a call instruction and a stack, just a jump to code of a closure 08:01:11 Riastradh: I had a dream. I was eating pie and taking a math test with several other people, who were also eating pie. You were there, in the form of a jumbled mess of ascii characters, but were plotting out various diagrams regarding type systems on a chalkboard, rather than eating pie. 08:01:19 in that case the contunuations in the heap will represent the stack 08:02:15 occasionally cleaning up the stack corresponds to that but with the stack as first gc generation, and popping/overwriting the calling frame corresponds to refcounted closures which are immediately reused after refcount drops to 0 08:02:49 Yeah, cps is the usual method, but I find chicken's take on it rather interesting. 08:03:20 chicken uses the stack-allocation solution? 08:03:49 ASau [~user@95-27-211-180.broadband.corbina.ru] has joined #scheme 08:05:03 Yes, but via its own allocated stacks, then never returns from any functions, instead just garbage collecting periodically. 08:05:39 yup, that is the solution of using the stack in effect as a first gc generation 08:05:50 -!- smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has quit [Quit: smtlaissezfaire] 08:05:50 Obfuscate, here's what I have to say to that: . 08:08:17 Riastradh: Your discombobulated form didn't seem interested in the pie at all... 08:08:23 -!- ASau [~user@95-27-211-180.broadband.corbina.ru] has quit [Client Quit] 08:10:47 ASau [~user@95-27-211-180.broadband.corbina.ru] has joined #scheme 08:16:57 mmc [~michal@cs27120227.pp.htv.fi] has joined #scheme 08:21:45 What was the subject of the math test? 08:25:28 Graph theory, but I only vaguely remember it. 08:26:10 The most important part of the dream was surely the blueberry pie. 08:26:15 oh man 08:26:17 blueberry pie. 08:26:36 -!- dualbus [~dualbus@201.170.71.87.dsl.dyn.telnor.net] has left #scheme 08:33:23 accel [~accel@unaffiliated/accel] has joined #scheme 08:36:42 -!- accel [~accel@unaffiliated/accel] has quit [Client Quit] 08:37:02 accel [~accel@unaffiliated/accel] has joined #scheme 08:37:22 -!- accel [~accel@unaffiliated/accel] has quit [Client Quit] 08:38:19 accel [~accel@unaffiliated/accel] has joined #scheme 08:40:42 -!- accel [~accel@unaffiliated/accel] has quit [Client Quit] 08:50:12 -!- myu2 [~myu2@58x5x224x106.ap58.ftth.ucom.ne.jp] has quit [Remote host closed the connection] 08:50:18 -!- xwl_ [~wixu@nat/nokia/x-wdwridxkacmrndkb] has quit [Remote host closed the connection] 08:58:25 -!- wbooze` [~levgue@xdsl-78-35-140-172.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 08:58:33 -!- homie` [~levgue@xdsl-78-35-140-172.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 09:05:07 homie [~levgue@xdsl-78-35-140-172.netcologne.de] has joined #scheme 09:15:49 drdo [~user@91.205.108.93.rev.vodafone.pt] has joined #scheme 09:16:27 -!- qhe [~qhe2@192.55.54.40] has quit [Quit: Leaving.] 09:17:00 wbooze [~levgue@xdsl-78-35-140-172.netcologne.de] has joined #scheme 09:18:33 -!- mmc [~michal@cs27120227.pp.htv.fi] has quit [Ping timeout: 240 seconds] 09:29:32 femtoo [~femto@95-89-248-140-dynip.superkabel.de] has joined #scheme 09:30:07 -!- aSean_ [~aSean@134-208-39-197.ndhu.edu.tw] has quit [Quit: ] 09:32:15 twem2` [~tristan@puma-mxisp.mxtelecom.com] has joined #scheme 09:39:50 -!- pygospa [~pygospa@kiel-d9bfc140.pool.mediaWays.net] has quit [Quit: leaving] 09:40:26 gravicappa [~gravicapp@ppp85-140-67-117.pppoe.mtu-net.ru] has joined #scheme 09:52:43 -!- _danb_ is now known as _dnb_ 09:53:51 accel [~accel@unaffiliated/accel] has joined #scheme 09:54:23 schmir [~schmir@mail.brainbot.com] has joined #scheme 09:56:48 masm [~masm@bl19-144-49.dsl.telepac.pt] has joined #scheme 10:04:53 -!- femtoo [~femto@95-89-248-140-dynip.superkabel.de] has quit [Ping timeout: 240 seconds] 10:13:28 femtoo [~femto@95-89-248-140-dynip.superkabel.de] has joined #scheme 10:14:53 -!- githogori [~githogori@adsl-66-123-22-146.dsl.snfc21.pacbell.net] has quit [Ping timeout: 265 seconds] 10:18:15 -!- leppie [~lolcow@196-215-126-77.dynamic.isadsl.co.za] has quit [Read error: Connection reset by peer] 10:18:42 leppie [~lolcow@196-215-126-77.dynamic.isadsl.co.za] has joined #scheme 10:25:58 -!- accel [~accel@unaffiliated/accel] has quit [Quit: leaving] 10:30:17 -!- vu3rdd [~vu3rdd@fsf/member/vu3rdd] has quit [Remote host closed the connection] 10:32:07 ok feeling really stupid here, but... how do i call a procedure that takes no arguments? I am just doing... (myproc), and getting a weird void error 10:32:39 accel [~accel@unaffiliated/accel] has joined #scheme 10:39:36 lewis1711: (myproc) is ok. Is the 'myproc' variable bound to anything? 10:40:05 doesn't seem to be :/ 10:40:15 the code is here, if it helps; http://paste.lisp.org/display/118393 error at the last line 10:40:53 lewis1711: you are missing a pair of parens around game-loop on its declaration 10:40:59 should be (define (game-loop) ...) 10:41:14 or alternatively (define game-loop (lambda () ...)) 10:41:25 The error may be meaningless to you, but that doesn't mean it would be meaningless to us... 10:41:27 ohhh 10:42:04 I figured you omit the parens if there was no argument. well, now I Know ty:) 10:42:13 also, game-loop doesn't look like a loop 10:42:34 lewis1711: if you don't add parens, you are defining game-loop to be the result of whatever you are calling next 10:42:56 lewis1711: the procedures you are calling later probably return void 10:43:05 tizoc: yeah it's not a loop yet 10:43:15 It literally is a loop (in the C language) 10:43:42 I need to learn, what was it someone said here... *scrolls up* 10:44:50 call/cc 10:47:29 Oh, call/cc is really simple. Like go. 10:49:46 -!- accel [~accel@unaffiliated/accel] has quit [Quit: leaving] 10:49:53 hmm, reading TSPL on it now 11:10:55 MrFahrenheit [~RageOfTho@users-146-124.vinet.ba] has joined #scheme 11:11:45 Gmind [~Nevermind@113.190.201.22] has joined #scheme 11:12:33 RageOfThou [~RageOfTho@users-146-124.vinet.ba] has joined #scheme 11:12:41 -!- schmir [~schmir@mail.brainbot.com] has quit [Remote host closed the connection] 11:15:36 fradgers- [~fradgers-@5e0b815c.bb.sky.com] has joined #scheme 11:23:02 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 265 seconds] 11:40:40 -!- Intensity [VOKDVyUpGI@unaffiliated/intensity] has quit [Ping timeout: 255 seconds] 11:40:53 -!- Gmind [~Nevermind@113.190.201.22] has quit [Quit: Leaving.] 11:42:32 myu2 [~myu2@v077103.dynamic.ppp.asahi-net.or.jp] has joined #scheme 11:42:58 schmir [~schmir@mail.brainbot.com] has joined #scheme 11:49:53 aisa [~aisa@c-68-35-167-179.hsd1.nm.comcast.net] has joined #scheme 12:00:41 -!- gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has quit [Read error: Operation timed out] 12:00:59 gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has joined #scheme 12:01:48 greenm0nk [~chatzilla@117.192.193.12] has joined #scheme 12:01:51 hi all 12:02:26 I just started SICP and using ubuntu 10.10. Which dialect of lisp is suitable to do the exercises in the book? 12:04:04 cor135 [~rixin@76.5.19.181] has joined #scheme 12:07:45 As you seem to know already, that dialect is called Scheme... 12:08:43 -!- greenm0nk [~chatzilla@117.192.193.12] has left #scheme 12:08:48 Most of SICP uses common features of Scheme 12:09:00 Bah, wrong dial on the time machine. 12:26:25 Nisstyre65 [~nisstyre@infocalypse-net.info] has joined #scheme 12:27:12 <_dnb_> newby question: how can I get scribble working in racket? 12:27:43 mmc [~michal@cs27120227.pp.htv.fi] has joined #scheme 12:28:25 <_dnb_> just wanted to have a quick play with all those @-thingummies... 12:30:26 doesn't it work in DrRacket? 12:30:43 (never tried mind you) 12:32:06 <_dnb_> bremner: hm, maybe; I was wanting to run it in emacs and within racket itself -- I'm reading about how it might get used with the webserver 12:32:56 <_dnb_> poking round in the dark a bit; trying to jump in too quickly 12:33:58 -!- lewis1711 [~lewis@125-239-255-244.jetstream.xtra.co.nz] has quit [Quit: Leaving.] 12:36:20 oh, well. Actually, perhaps more doc reading: http://docs.racket-lang.org/scribble/getting-started.html#%28part._first-example%29 12:36:21 http://tinyurl.com/3a8jfhn 12:40:46 femtooo [~femto@95-89-248-140-dynip.superkabel.de] has joined #scheme 12:42:38 -!- femtoo [~femto@95-89-248-140-dynip.superkabel.de] has quit [Ping timeout: 240 seconds] 12:42:44 nilg` [~user@77.70.2.229] has joined #scheme 12:43:37 <_dnb_> bremner: I think I get it; for the web-server stuff you compile templates from racket using include-template 12:43:55 <_dnb_> it employs the funky reader @ syntax 12:47:43 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Read error: Operation timed out] 12:53:03 -!- schmir [~schmir@mail.brainbot.com] has quit [Remote host closed the connection] 12:54:13 -!- pdelgallego [~pdelgalle@1385159852.dhcp.dbnet.dk] has quit [Ping timeout: 240 seconds] 12:54:28 -!- pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has quit [Ping timeout: 255 seconds] 12:56:06 -!- didi [~user@unaffiliated/didi/x-1022147] has quit [Remote host closed the connection] 13:02:30 antoszka [~antoszka@unaffiliated/antoszka] has joined #scheme 13:05:30 -!- martinhex [~mjc@93-97-29-243.zone5.bethere.co.uk] has quit [Read error: Connection reset by peer] 13:06:25 martinhex [~mjc@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 13:16:34 -!- martinhex [~mjc@93-97-29-243.zone5.bethere.co.uk] has quit [Ping timeout: 260 seconds] 13:17:09 zevarito [~zevarito@r186-48-219-186.dialup.adsl.anteldata.net.uy] has joined #scheme 13:19:55 martinhex [~mjc@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 13:22:17 -!- gravicappa [~gravicapp@ppp85-140-67-117.pppoe.mtu-net.ru] has quit [Ping timeout: 264 seconds] 13:22:52 WonTu [~WonTu@p57B52BE2.dip.t-dialin.net] has joined #scheme 13:23:06 -!- WonTu [~WonTu@p57B52BE2.dip.t-dialin.net] has left #scheme 13:26:53 -!- martinhex [~mjc@93-97-29-243.zone5.bethere.co.uk] has quit [Ping timeout: 240 seconds] 13:29:50 -!- Modius [~Modius@cpe-70-123-158-125.austin.res.rr.com] has quit [Quit: "Object-oriented design" is an oxymoron] 13:31:22 martinhex [~mjc@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 13:36:03 -!- martinhex [~mjc@93-97-29-243.zone5.bethere.co.uk] has quit [Remote host closed the connection] 13:37:43 -!- _dnb_ [~user@124-149-166-62.dyn.iinet.net.au] has quit [Ping timeout: 272 seconds] 13:39:34 martinhex [~mjc@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 13:43:15 -!- slom [~sloma@port-87-234-239-162.static.qsc.de] has quit [Remote host closed the connection] 13:43:46 vu3rdd [~vu3rdd@122.167.118.92] has joined #scheme 13:43:46 -!- vu3rdd [~vu3rdd@122.167.118.92] has quit [Changing host] 13:43:46 vu3rdd [~vu3rdd@fsf/member/vu3rdd] has joined #scheme 13:58:37 -!- rien_home is now known as rien_ 13:59:04 pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 14:09:04 -!- zevarito [~zevarito@r186-48-219-186.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 260 seconds] 14:13:17 -!- Jafet [~Jafet@unaffiliated/jafet] has quit [Ping timeout: 264 seconds] 14:15:57 pdelgallego [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 14:16:38 Jafet [~Jafet@unaffiliated/jafet] has joined #scheme 14:21:57 gravicappa [~gravicapp@ppp85-140-67-117.pppoe.mtu-net.ru] has joined #scheme 14:23:21 -!- mmc [~michal@cs27120227.pp.htv.fi] has quit [Remote host closed the connection] 14:24:57 mmc [~michal@cs27120227.pp.htv.fi] has joined #scheme 14:28:50 zevarito [~zevarito@r186-48-200-241.dialup.adsl.anteldata.net.uy] has joined #scheme 14:30:07 rexim [~rexim@91.204.184.177] has joined #scheme 14:37:04 schmir [~schmir@p54A90AF2.dip0.t-ipconnect.de] has joined #scheme 14:37:13 -!- mmc [~michal@cs27120227.pp.htv.fi] has quit [Ping timeout: 240 seconds] 14:44:32 -!- pantsd_home [~pantsd_ho@174-21-246-76.tukw.qwest.net] has quit [Ping timeout: 240 seconds] 14:48:37 bweaver [~user@host-68-169-175-225.WISOLT2.epbfi.com] has joined #scheme 14:54:12 -!- zevarito [~zevarito@r186-48-200-241.dialup.adsl.anteldata.net.uy] has quit [Read error: Connection timed out] 14:57:37 zevarito [~zevarito@r186-48-200-241.dialup.adsl.anteldata.net.uy] has joined #scheme 15:01:04 -!- Nisstyre65 [~nisstyre@infocalypse-net.info] has quit [Remote host closed the connection] 15:02:48 tupi [~david@186.205.37.15] has joined #scheme 15:04:56 -!- hkBst [~quassel@gentoo/developer/hkbst] has quit [Remote host closed the connection] 15:13:16 pdelgallego__ [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 15:13:38 -!- lotia [~lotia@l.monkey.org] has quit [Remote host closed the connection] 15:16:45 bitweiler [~bitweiler@adsl-99-58-93-196.dsl.stl2mo.sbcglobal.net] has joined #scheme 15:20:51 -!- copumpkin [~pumpkin@unaffiliated/pumpkingod] has quit [Quit: Computer has gone to sleep.] 15:22:11 corruptmemory [~jim@96.246.167.18] has joined #scheme 15:27:56 Gmind [~Gmind@113.190.201.22] has joined #scheme 15:28:06 hey gúy 15:29:28 mwolfe [~michael@cpe-67-49-72-40.socal.res.rr.com] has joined #scheme 15:29:37 I see that Scheme shown me the great way to think recursively 15:29:50 :-D 15:29:51 yes yes 15:30:13 but is that thinking style alike to "Let's think what will happen next ?" 15:30:33 *Gmind* feel like that 15:30:48 *Gmind* wonder if everyone can share their own perspectives 15:35:47 -!- zevarito [~zevarito@r186-48-200-241.dialup.adsl.anteldata.net.uy] has quit [Read error: Connection reset by peer] 15:36:07 zevarito [~zevarito@r186-48-200-241.dialup.adsl.anteldata.net.uy] has joined #scheme 15:36:16 -!- zevarito [~zevarito@r186-48-200-241.dialup.adsl.anteldata.net.uy] has quit [Read error: Connection reset by peer] 15:36:42 zevarito [~zevarito@r186-48-219-186.dialup.adsl.anteldata.net.uy] has joined #scheme 15:36:43 :-?? 15:36:47 cky ? 15:36:52 C-Keen ? 15:36:53 -!- zevarito [~zevarito@r186-48-219-186.dialup.adsl.anteldata.net.uy] has quit [Read error: Connection reset by peer] 15:37:16 zevarito [~zevarito@r186-48-219-186.dialup.adsl.anteldata.net.uy] has joined #scheme 15:38:46 -!- schmir [~schmir@p54A90AF2.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 15:42:14 -!- masm [~masm@bl19-144-49.dsl.telepac.pt] has quit [Ping timeout: 240 seconds] 15:42:14 -!- samth_away is now known as samth 15:42:28 Gmind: Named lets rule the world! That's my perspective. :-P 15:43:11 I was talking to a jQuery programmer, who was talking about how (function($) {...})(jQuery); is a common idiom to bind $ to the jQuery object. 15:43:23 I was like, if only JS had Lisp-style let forms! 15:44:17 (That has nothing to do with named lets; however, I consider named lets to be a step up from standard lets, so I thought I'd share this story anyway.) 15:45:44 You can even devise a JS-style syntax for it. e.g., let ($ = jQuery) {...} (or for multiple-variable lets, let (foo = bar; baz = qux) {...}). 15:46:18 Well, javascript was supposed to be scheme. 15:46:33 Yeah, but JS seems to lack many of the syntactic niceties of Scheme. 15:46:50 (Imagine if it had been! Then they would have named it JavaScheme.) 15:47:01 =.= woow 15:47:18 Hehehehehe. 15:47:49 masm [~masm@bl19-144-49.dsl.telepac.pt] has joined #scheme 15:47:55 heck, I always think of future or what will I do next in Scheme 15:47:59 =.= 15:48:12 w/ me it's what scheme all about , is that true ? 15:48:33 =)) so strange if only me feel like that 15:49:36 copumpkin [~pumpkin@unaffiliated/pumpkingod] has joined #scheme 15:50:57 If you record your thoughts and play them back in the future, you will hear blub, blub sounds 15:55:37 LoL 15:55:43 ok , see u guys later 15:55:46 =.= 15:56:28 (it's just my feeling when change from some languages like Java or C to Scheme) 15:58:52 Hehehehehe. 15:59:44 -!- Gmind [~Gmind@113.190.201.22] has left #scheme 16:03:33 Gmind [~Nevermind@113.190.201.22] has joined #scheme 16:26:24 ventonegro [~alex@200.150.183.81] has joined #scheme 16:37:47 choas [~lars@p5792C7DA.dip.t-dialin.net] has joined #scheme 16:40:03 -!- saccade [~saccade@209-6-54-113.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Quit: This computer has gone to sleep] 16:59:20 -!- gravicappa [~gravicapp@ppp85-140-67-117.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 16:59:52 mmc [~michal@cs27120227.pp.htv.fi] has joined #scheme 17:02:46 -!- mwolfe [~michael@cpe-67-49-72-40.socal.res.rr.com] has quit [Remote host closed the connection] 17:04:56 -!- wbooze [~levgue@xdsl-78-35-140-172.netcologne.de] has quit [Read error: Connection reset by peer] 17:05:04 -!- homie [~levgue@xdsl-78-35-140-172.netcologne.de] has quit [Read error: Connection reset by peer] 17:05:39 -!- vu3rdd [~vu3rdd@fsf/member/vu3rdd] has quit [Remote host closed the connection] 17:06:05 homie [~levgue@xdsl-78-35-175-234.netcologne.de] has joined #scheme 17:07:01 wbooze [~levgue@xdsl-78-35-175-234.netcologne.de] has joined #scheme 17:08:44 phao [~phao@189.107.205.187] has joined #scheme 17:28:50 hrm.. 17:30:41 jewel [~jewel@196-210-187-2.dynamic.isadsl.co.za] has joined #scheme 17:31:35 larceny's system function (system "cmd") returns the exit value 0 on success, how could I disregard the exit value so I can save output of cmd to a variable? 17:32:18 Probably by ripping out SYSTEM and rebuilding that part of Larceny from scratch. 17:33:17 If it just calls the C `system' library routine, this is not merely probable but certain. 17:33:22 bitweiler: a guess would be to look for system-output-port (or maybe it is redirected to the current-output-port) 17:34:34 perhaps it takes additional parameters? 17:35:38 leppie: nah, no extra parameters 17:36:25 isnt there some standardize process creation interface? 17:36:38 My guess is that it was written by someone who doesn't know anything about Unix and just wanted to replicate the C `system' library routine and all its misdesign. Use the source to be sure. 17:36:44 i looking now 17:37:17 No, leppie. Subprocesses are complicated, and most people don't seem to want to realize that. 17:37:43 Riastradh: via .NET on Windows is pretty simple, but not trivial 17:38:30 Windows subprocesses probably do much less than Unix subprocesses. 17:38:39 eish, searching for larceny on google is almost as as searching for scheme! 17:38:54 % wc -l ntproc.c uxproc.c 655 ntproc.c 843 uxproc.c 17:39:00 655 ntproc.c 17:39:00 843 uxproc.c 17:39:00 s/as as/as bad as/ 17:39:18 (from MIT Scheme) 17:39:24 Hmm, that copy & paste didn't work very well. Bad X11. 17:40:17 Unfortunately for me, uxproc.c doesn't implement anything more than what works on Windows. E.g., the only file descriptors one can set up in the subprocess are 0, 1, and 2. 17:40:21 bitweiler: http://www.mail-archive.com/larceny-users@lists.ccs.neu.edu/msg00206.html <-- enough hints there 17:41:33 i dont recall an SRFI of that nature, or is there one? 17:42:01 Ugh. Any Scheme system that leaks zombies if you forget to call waitpid is irresponsibly built. 17:45:23 Riastradh: care to explain (in laymens terms) ? 17:46:46 If your Scheme system has infinite memory, it's probably OK to accrue zombies. 17:48:04 brainz! 17:48:31 Otherwise, your Scheme system has a garbage collector, which is perfectly good at taking responsibility for Scheme-managed resources. The Scheme system should immediately transfer responsibility for the status information of subprocesses from the kernel to Scheme by calling waitpid on SIGCHLD and storing it in Scheme objects or something. 17:49:12 (Embedded Scheme libraries can provide a hook that the application should call in a SIGCHLD handler for subprocesses for which the application has not taken responsibility.) 17:53:22 StephenFalken [email@2001:470:1f14:135b::2] has joined #scheme 17:54:32 coming from windows, I dont really, but what I gather is that after the process exits, it wont close completely or it's resources wont be freed 17:55:01 maybe I have been spoilt using .NET 17:55:20 s/really/really understand/ 17:55:23 grrr 17:56:13 i really needed to learn how to touch type properly (meaning not using all my brain power focusing on the keystrokes) 17:58:01 does s/foo/bar/ actually fix up text in some IRC clinets or is it just common courtesy if the meaning is lost? 17:58:09 Here's how it works in Unix: When a process terminates, the kernel remembers how it terminated (exit vs signal, and exit value or signal number). It remembers this until its parent calls one of the wait family of functions. During that time, the process is a zombie, and occupies a pid and memory in the kernel. 17:58:14 im not fixing that one :) 17:58:35 courtesy 17:58:51 I bet there exist IRC clients in which it does (which would lend itself to some potentially amusing exploits, especially if the client actually sends the command to sed), but for the most part, it is just for humans to interpret. 17:58:52 thx Riastradh: I guess in .NET there must be some polling function 17:59:16 leppie: It's a Unix thing from the 'ex' (and probably also 'ed') editors 17:59:20 Riastradh: like seen alt-255 :) 17:59:57 .NET has a garbage collector, so it can reasonably take responsibility for the termination information. 18:00:54 ah that makes sense 18:01:44 -!- felipe [~felipe@unaffiliated/felipe] has quit [Ping timeout: 276 seconds] 18:02:52 jonrafkind [~jon@jonr5.dsl.xmission.com] has joined #scheme 18:03:05 -!- nilg` [~user@77.70.2.229] has quit [Remote host closed the connection] 18:04:39 carleastlund [~cce@gotham.ccs.neu.edu] has joined #scheme 18:05:25 -!- cor135 [~rixin@76.5.19.181] has quit [Quit: Ex-Chat] 18:08:18 langmartin [~user@exeuntcha2.tva.gov] has joined #scheme 18:09:42 =.= 18:09:59 force GC 18:10:00 :P 18:20:14 -!- myu2 [~myu2@v077103.dynamic.ppp.asahi-net.or.jp] has quit [Remote host closed the connection] 18:28:00 jlongster [~user@nat/mozilla/x-hxojnoajvqvljmru] has joined #scheme 18:29:07 -!- femtooo [~femto@95-89-248-140-dynip.superkabel.de] has quit [Read error: Connection reset by peer] 18:29:08 drdo` [~user@91.205.108.93.rev.vodafone.pt] has joined #scheme 18:30:37 -!- drdo [~user@91.205.108.93.rev.vodafone.pt] has quit [Ping timeout: 255 seconds] 18:33:52 leppie: that was enough hinting for me, his way was a r6rs solution 18:34:14 bitweiler: r6rs good or bad? :) 18:34:34 i don't know, just learning scheme 18:35:06 I figure a way to do what I need in the r5rs for my simple purposes ;) 18:35:21 jeff_ [~jdlouhy@zerowing.ccs.neu.edu] has joined #scheme 18:35:23 s/figure/figured/ 18:35:49 leppie: what your thoughts on r6rs? 18:35:54 -!- jeff_ is now known as dlouhy 18:36:52 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 18:37:24 I'm not one to ask :) I pretty much just know R6RS 18:38:56 bitweiler: a bunch of newcomers that tried to get their 5 minutes of fame by approving a new R*RS without respect the spirit of the language set by the founding fathers. :-) 18:39:37 respecting* 18:40:37 wasn't me :) 18:40:40 StephenFalken: I not trying to get any fame, I figure it be better if I learn r5rs since it's the default mode of my implementation until I understand scheme more :) 18:41:40 bitweiler: I learned R5RS and when R6RS came along it seemed quite a natural extension, but that is probably since I am a primarily C#/.NET developer 18:42:17 the 'spirit of scheme' did not mean much to me, but I can see how other would find it 'offensive' 18:42:52 -!- carleastlund [~cce@gotham.ccs.neu.edu] has left #scheme 18:44:08 -!- pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has quit [Read error: Operation timed out] 18:45:59 pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 18:49:57 rgrau [~user@62.Red-88-2-20.staticIP.rima-tde.net] has joined #scheme 18:51:15 -!- Gmind [~Nevermind@113.190.201.22] has quit [Read error: Connection reset by peer] 18:58:35 Blkt [~user@93-33-114-53.ip44.fastwebnet.it] has joined #scheme 18:59:22 leppie: if you wait a bit and ask your question again, there might be some people then who are able to explain why some are dissatisfied with r6rs 19:00:11 rien_: I know why, do you bitweiler maybe? :) 19:00:28 s/you/you mea/ 19:00:31 mean ffs 19:01:28 oh, whoever, you said you only know r6rs 19:01:39 I've only been learning r5rs :) 19:03:21 githogori [~githogori@adsl-66-123-22-146.dsl.snfc21.pacbell.net] has joined #scheme 19:06:54 -!- leppie [~lolcow@196-215-126-77.dynamic.isadsl.co.za] has quit [Read error: Connection reset by peer] 19:07:29 leppie [~lolcow@196-215-126-77.dynamic.isadsl.co.za] has joined #scheme 19:12:49 StephenFalken, let's just say that's a tendentious and mostly false history of R6RS 19:24:10 Intensity [GcB66NA67Z@unaffiliated/intensity] has joined #scheme 19:28:52 Nisstyre65 [~nisstyre@infocalypse-net.info] has joined #scheme 19:28:54 -!- Nisstyre65 [~nisstyre@infocalypse-net.info] has quit [Max SendQ exceeded] 19:29:10 Nisstyre65 [~nisstyre@infocalypse-net.info] has joined #scheme 19:31:39 good evening everyone 19:34:06 -!- Madars [~null@unaffiliated/madars] has left #scheme 19:38:59 -!- langmartin [~user@exeuntcha2.tva.gov] has quit [Remote host closed the connection] 19:44:10 -!- kilimanjaro is now known as kiliganja 19:45:16 -!- kiliganja is now known as kilimanjaro 19:55:32 mwolfe [~michael@cpe-67-49-72-40.socal.res.rr.com] has joined #scheme 20:07:25 zevarito_ [~zevarito@r186-48-200-241.dialup.adsl.anteldata.net.uy] has joined #scheme 20:09:13 -!- zevarito [~zevarito@r186-48-219-186.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 255 seconds] 20:09:23 Unthahorsten [~Unthahors@del63-3-88-177-167-25.fbx.proxad.net] has joined #scheme 20:14:37 leppie: Here is an interesting document about R6RS by the voters themselves: http://www.r6rs.org/ratification/results.html 20:15:02 -!- jewel [~jewel@196-210-187-2.dynamic.isadsl.co.za] has quit [Ping timeout: 240 seconds] 20:15:06 Unthahorsten: I have seen and read it 20:16:42 leppie: Captivating, isn't it ? 20:16:53 -!- jonrafkind [~jon@jonr5.dsl.xmission.com] has quit [Ping timeout: 264 seconds] 20:17:19 like I said, I do understand why people have such a reaction 20:20:03 lol, google cant even get rnrs right :) http://groups.yahoo.com/group/rnrs/ 20:22:46 -!- Blkt [~user@93-33-114-53.ip44.fastwebnet.it] has quit [Ping timeout: 246 seconds] 20:42:12 What is the problem with this case? http://pastebin.com/c3SPrcfz 20:43:12 for msg being 'mt?, it's going to the else clause 20:44:24 CASE doesn't evaluate the keys -- it quotes them implicitly. 20:44:33 What you want is (case msg ((empty empty? mt?) ...) ...). 20:44:37 ahh 20:44:37 ok 20:45:55 felipe [~felipe@unaffiliated/felipe] has joined #scheme 20:47:36 -!- metasyntax` [~taylor@12.132.219.7] has quit [Quit: Be seeing you.] 20:52:10 -!- ventonegro [~alex@200.150.183.81] has quit [Quit: ventonegro] 20:52:22 -!- pdelgallego [~pdelgalle@1385159852.dhcp.dbnet.dk] has quit [Ping timeout: 255 seconds] 20:52:24 -!- pdelgallego__ [~pdelgalle@1385159852.dhcp.dbnet.dk] has quit [Ping timeout: 250 seconds] 20:52:44 -!- pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has quit [Ping timeout: 260 seconds] 20:56:49 _danb_ [~user@124-149-166-62.dyn.iinet.net.au] has joined #scheme 20:57:11 pdelgallego__ [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 20:57:13 pdelgallego [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 20:57:15 pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 21:01:04 -!- Nisstyre65 [~nisstyre@infocalypse-net.info] has quit [Remote host closed the connection] 21:02:18 -!- pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has quit [Max SendQ exceeded] 21:02:45 pothos_ [~pothos@111-240-168-252.dynamic.hinet.net] has joined #scheme 21:02:58 Nisstyre65 [~nisstyre@infocalypse-net.info] has joined #scheme 21:03:03 pdelgallego_ [~pdelgalle@1385159852.dhcp.dbnet.dk] has joined #scheme 21:04:18 zevarito [~zevarito@r186-48-219-186.dialup.adsl.anteldata.net.uy] has joined #scheme 21:04:32 -!- pothos [~pothos@111-240-169-170.dynamic.hinet.net] has quit [Ping timeout: 250 seconds] 21:04:46 -!- pothos_ is now known as pothos 21:05:50 -!- zevarito_ [~zevarito@r186-48-200-241.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 250 seconds] 21:19:33 -!- jlongster [~user@nat/mozilla/x-hxojnoajvqvljmru] has quit [Remote host closed the connection] 21:22:01 bgs100 [~ian@unaffiliated/bgs100] has joined #scheme 21:33:11 Does someone has good references comparing syntactic vs procedural layers for records ? Some people claim that procedural are doomed to be slow compared to syntactic one, is it really true ? 21:33:55 -!- rexim [~rexim@91.204.184.177] has quit [Remote host closed the connection] 21:35:02 It is easier to implement fast record operations with macros than with procedures given a dumb compiler (which they all are). 21:36:00 Compare (lambda (x) (record-ref x 3)) versus (let ((i (find-index rtd 'foo))) (lambda (x) (record-ref x i))). A macro can generate the first easily; it takes a clever compiler to turn the second into the first. 21:39:23 Thanks for your quick reply, I already know about that, I am seeking a general comparison about benefits / drawbacks of both. Is it really impossible to have a fast procedural layer ? 21:40:09 It's not impossible. It just takes a clever compiler, which nobody has written yet for practical Scheme. 21:40:44 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 265 seconds] 21:41:56 Ok :) 21:43:13 -!- phao [~phao@189.107.205.187] has quit [Ping timeout: 255 seconds] 21:45:51 phao [~phao@189.107.237.68] has joined #scheme 21:53:49 -!- Unthahorsten [~Unthahors@del63-3-88-177-167-25.fbx.proxad.net] has quit [Quit: goodbye] 21:54:22 -!- eno [~eno@nslu2-linux/eno] has quit [Ping timeout: 250 seconds] 21:56:04 eno [~eno@nslu2-linux/eno] has joined #scheme 22:05:42 -!- drdo` is now known as drdo 22:09:42 Azuvix [~Azuvix@71-215-25-216.bois.qwest.net] has joined #scheme 22:11:04 Couick [~quassel@AClermont-Ferrand-158-1-88-67.w92-150.abo.wanadoo.fr] has joined #scheme 22:11:23 -!- Couick is now known as Comglz 22:11:29 -!- Comglz is now known as Couick 22:14:43 -!- Azuvix [~Azuvix@71-215-25-216.bois.qwest.net] has quit [Ping timeout: 255 seconds] 22:15:52 Azuvix [~Azuvix@71-215-25-216.bois.qwest.net] has joined #scheme 22:25:02 -!- Nisstyre65 [~nisstyre@infocalypse-net.info] has quit [Ping timeout: 240 seconds] 22:28:35 -!- zevarito [~zevarito@r186-48-219-186.dialup.adsl.anteldata.net.uy] has quit [Remote host closed the connection] 22:42:19 -!- HG` [~HG@85.8.90.240] has quit [Quit: Leaving.] 22:44:52 lewis1711 [~lewis@125-239-255-244.jetstream.xtra.co.nz] has joined #scheme 22:50:07 Nisstyre65 [~nisstyre@infocalypse-net.info] has joined #scheme 22:50:32 -!- Azuvix [~Azuvix@71-215-25-216.bois.qwest.net] has quit [Read error: Connection timed out] 22:51:04 Azuvix [~Azuvix@71-215-25-216.bois.qwest.net] has joined #scheme 23:00:07 HG` [~HG@85.8.90.240] has joined #scheme 23:03:09 gravicappa [~gravicapp@ppp85-140-67-117.pppoe.mtu-net.ru] has joined #scheme 23:10:28 DrDuck [~duck@adsl-81-55-129.hsv.bellsouth.net] has joined #scheme 23:14:49 hmm. so I am starting to make my own oop system (sort of rubyish) in scheme. but I wonder if I really need one. this is for a little game thing, I want to make the player an object, as that just seems like the thing to do. but what would you people that know scheme do? 23:22:21 -!- Couick [~quassel@AClermont-Ferrand-158-1-88-67.w92-150.abo.wanadoo.fr] has quit [Remote host closed the connection] 23:23:29 pygospa [~pygospa@kiel-5f7683d4.pool.mediaWays.net] has joined #scheme 23:23:47 lewis1711, have you ever read SICP? 23:23:52 or THE SCHEME PROGRAMMING LANGUAGE 23:24:12 they give an idea of how you can have objects. 23:24:31 you can define a function that returns a function, which accepts messages and behave accordingly on the messages 23:24:35 hmm 23:24:49 TSPL eh? I have read a bit of it, I quite like 23:24:59 will search for stuff about objects 23:25:04 in TSPL, you find a code like that in chapter 2 23:25:16 look at the make-stack definition 23:25:19 and the dispach on the message 23:25:27 -!- corruptmemory [~jim@96.246.167.18] has quit [Quit: Leaving] 23:26:09 -!- pygospa [~pygospa@kiel-5f7683d4.pool.mediaWays.net] has quit [Remote host closed the connection] 23:26:13 oh yeah here we go:) 23:26:23 ? 23:27:14 I found the bit you were talking about 23:28:01 right.. good luck with that. It's pretty cool 23:29:09 I'm not sure about your background, but I believe you should make sure you could do whatever is that you wanna with with state-less stuff before messing around with objects and state. 23:29:49 people who come from structured programming, or oop (whatever that means) tend to think assignment before anything. 23:31:43 -!- fradgers- [~fradgers-@5e0b815c.bb.sky.com] has left #scheme 23:34:29 -!- aisa [~aisa@c-68-35-167-179.hsd1.nm.comcast.net] has quit [Quit: aisa] 23:45:41 aisa [~aisa@c-68-35-167-179.hsd1.nm.comcast.net] has joined #scheme 23:47:34 Riastradh, Typed Racket's optimizer performs a very similar translation to the one you're describing 23:47:56 on the other hand, it's relying on syntactic information to do that transformation 23:50:51 adu [~ajr@c-76-23-82-40.hsd1.in.comcast.net] has joined #scheme 23:51:00 -!- gravicappa [~gravicapp@ppp85-140-67-117.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 23:52:23 -!- HG` [~HG@85.8.90.240] has quit [Quit: Leaving.] 23:54:38 -!- bweaver [~user@host-68-169-175-225.WISOLT2.epbfi.com] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]