00:00:38 FairySpell [hjtaje@69.41.182.133] has joined #scheme 00:00:39 asumu, thanks. i have the paper opened now 00:00:43 ijp, thank you too 00:00:54 -!- FairySpell [hjtaje@69.41.182.133] has quit [Client Quit] 00:01:03 but i presume syntax-case isn't the only expander there? 00:01:07 That depends on the binding forms you implement in the base language. Presumably `define` also introduces renaming. 00:01:19 (re: which forms need renaming) 00:01:21 -!- dtm` [~dtm@adsl-67-121-157-253.dsl.pltn13.pacbell.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 00:01:21 define as a non-toplevel form? 00:01:26 hm 00:02:08 i'm gonna have to read the exact semantics of multiple define-forms 00:02:12 -!- b4283` [~user@114-47-10-250.dynamic.hinet.net] has quit [Remote host closed the connection] 00:02:12 The syntax-case paper shows one possible algorithm to implement hygiene. 00:02:29 There are several other papers that describe this, such as the paper by Clinger and Rees and the original hygiene paper. 00:02:45 -!- zbigniew [zb@2600:3c02::f03c:91ff:fe96:960c] has quit [Quit: leaving] 00:03:18 -!- realitygrill [~realitygr@ool-18ba55c0.dyn.optonline.net] has quit [Quit: Computer has gone to sleep] 00:03:41 too bad the compiler 'intersects' so much, i'm gonna have to implement lexical scoping first, and basic identifiers' semantics... 00:03:44 in order to test all that 00:03:55 i have a silly idea 00:04:21 how about assigning a numeric context number, increasing with each nested macroexpansion? 00:04:34 so that unmacroed ((lambda [formals] ...) ...) are 0, and so on 00:04:51 i also have to think up a good IR 00:05:02 and a pattern-language for a peephole optimizer 00:12:53 -!- tuubow [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has quit [Ping timeout: 246 seconds] 00:20:52 i presume syntax-case is more advanced than syntax-rules... 00:21:03 next thing to implement, as a library extension 00:23:46 ski [~ski@c80-216-142-165.bredband.comhem.se] has joined #scheme 00:36:42 acarrico [~acarrico@pppoe-68-142-63-124.gmavt.net] has joined #scheme 00:38:37 -!- Sorella [~quildreen@oftn/member/Sorella] has quit [Quit: (quit :reason 'sleep)] 00:45:05 -!- jonrafkind [~jon@racket/jonrafkind] has quit [Ping timeout: 246 seconds] 00:55:04 Axioplase [~Axioplase@218.201.120.153.tokyo.global.crust-r.net] has joined #scheme 00:55:51 -!- githogori [~githogori@216.207.36.222] has quit [Read error: Connection reset by peer] 00:57:13 -!- masm [~masm@bl18-51-45.dsl.telepac.pt] has quit [Quit: Leaving.] 01:00:35 is it permissive for an ellipsis expander to accept somewhat bad syntax in a garbage in garbage out way? 01:00:47 like no-ellipsis -> ellipsis-in-expansion 01:01:26 or multiple ellipses 01:01:32 in one list 01:08:11 -!- Axioplase [~Axioplase@218.201.120.153.tokyo.global.crust-r.net] has quit [Quit: brb] 01:09:01 Axioplase [~Axioplase@218.201.120.153.tokyo.global.crust-r.net] has joined #scheme 01:10:53 b4283 [~user@122-117-157-82.HINET-IP.hinet.net] has joined #scheme 01:10:58 crossfader1 [~guru@dslb-088-073-091-062.pools.arcor-ip.net] has joined #scheme 01:11:42 -!- bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [Remote host closed the connection] 01:12:21 -!- crossfader [~guru@dslb-088-073-107-053.pools.arcor-ip.net] has quit [Ping timeout: 248 seconds] 01:12:42 bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 01:19:58 tuubow [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has joined #scheme 01:24:06 -!- imphasing is now known as imp 01:32:37 -!- crossfader1 [~guru@dslb-088-073-091-062.pools.arcor-ip.net] has quit [Ping timeout: 248 seconds] 01:41:59 DGASAU` [~user@91.218.144.129] has joined #scheme 01:42:42 homie` [~levgue@xdsl-78-35-168-154.netcologne.de] has joined #scheme 01:43:59 Natch_z [~Natch@178.73.212.236] has joined #scheme 01:44:58 roderic_ [~roderic@zerowing.ccs.neu.edu] has joined #scheme 01:45:04 tessier_ [~treed@216.105.40.125] has joined #scheme 01:45:05 -!- tessier_ [~treed@216.105.40.125] has quit [Changing host] 01:45:05 tessier_ [~treed@kernel-panic/copilotco] has joined #scheme 01:45:11 -!- pygospa [~Pygosceli@kiel-5f77bd0a.pool.mediaWays.net] has quit [Disconnected by services] 01:45:16 Axioplas1 [~Axioplase@218.201.120.153.tokyo.global.crust-r.net] has joined #scheme 01:45:18 TheRealPygo [~Pygosceli@kiel-5f77bd0a.pool.mediaWays.net] has joined #scheme 01:45:22 Inode_ [~inode@time.uk.chromedpork.net] has joined #scheme 01:45:22 kandinsk1 [~kandinski@hiperactivo.com] has joined #scheme 01:45:28 crypto [~z0d@q.notresp.com] has joined #scheme 01:45:42 -!- Natch [~Natch@178.73.212.236] has quit [Ping timeout: 264 seconds] 01:45:42 -!- roderic [~roderic@zerowing.ccs.neu.edu] has quit [Ping timeout: 264 seconds] 01:45:42 -!- tessier [~treed@kernel-panic/copilotco] has quit [Ping timeout: 264 seconds] 01:45:42 -!- Axioplase [~Axioplase@218.201.120.153.tokyo.global.crust-r.net] has quit [Ping timeout: 264 seconds] 01:45:42 -!- Inode [~inode@time.uk.chromedpork.net] has quit [Ping timeout: 264 seconds] 01:45:42 -!- homie [~levgue@xdsl-78-35-168-154.netcologne.de] has quit [Ping timeout: 264 seconds] 01:45:42 -!- DGASAU [~user@91.218.144.129] has quit [Ping timeout: 264 seconds] 01:45:42 -!- anonus [anonymous@2a01:7e00::f03c:91ff:fedf:2cc7] has quit [Ping timeout: 264 seconds] 01:45:43 -!- z0d [~z0d@unaffiliated/z0d] has quit [Ping timeout: 264 seconds] 01:45:43 -!- kandinski [~kandinski@hiperactivo.com] has quit [Ping timeout: 264 seconds] 01:45:45 -!- Natch_z is now known as Natch 01:45:52 -!- crypto is now known as Guest41325 01:47:09 anonus [anonymous@2a01:7e00::f03c:91ff:fedf:2cc7] has joined #scheme 01:50:09 -!- bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [Quit: Leaving] 01:50:40 jcowan [~John@mail.digitalkingdom.org] has joined #scheme 01:58:26 bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 02:01:22 realitygrill [~realitygr@ool-18ba55c0.dyn.optonline.net] has joined #scheme 02:14:28 -!- leppie [~lolcow@196-210-248-97.dynamic.isadsl.co.za] has quit [Ping timeout: 244 seconds] 02:15:31 ok, so i'm fixing my impl, ensuring what's forbidden is really forbidden 02:16:39 rudybot: eval (define-syntax foo (syntax-rules () ((foo a b ...) '((a b) ...)))) 02:16:40 ski: your scheme sandbox is ready 02:16:40 ski: Done. 02:16:51 rudybot: (foo 0 1 2 3 4 5 6 7 8 9) 02:16:51 ski: ; Value: ((0 1) (0 2) (0 3) (0 4) (0 5) (0 6) (0 7) (0 8) (0 9)) 02:17:12 note how `a' is used inside more ellipsis-levels than it was bound at 02:18:15 because `b' occurs inside the ellipsis in the template, it can "steer" how many times to replicate 02:19:27 so "no-ellipsis -> ellipsis-in-expansion" is really a special case of not having any such "steering" identifier bound at the same number of ellipsis levels as was nested in the template 02:19:40 leppie [~lolcow@196-210-234-252.dynamic.isadsl.co.za] has joined #scheme 02:21:11 another thing; allowing something like `(a b c ... d e)' could be allowed (and useful), because there can't be any ambiguity here -- however the basic `syntax-rules' in R5RS doesn't support this 02:34:48 -!- bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [Read error: No route to host] 02:35:59 Humm. Is there a classification for "regular expressions" that nest like that? 02:36:18 arbn [~arbn@pool-74-98-200-128.pitbpa.fios.verizon.net] has joined #scheme 02:36:19 (a b (c d ... e) ... f) 02:46:24 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Ping timeout: 245 seconds] 02:47:08 -!- realitygrill [~realitygr@ool-18ba55c0.dyn.optonline.net] has quit [Quit: Computer has gone to sleep] 02:48:12 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 02:56:33 realitygrill [~realitygr@ool-18ba55c0.dyn.optonline.net] has joined #scheme 03:01:39 jonrafkind [~jon@racket/jonrafkind] has joined #scheme 03:03:29 -!- langmartin [~user@host-68-169-154-130.WISOLT2.epbfi.com] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 03:03:43 -!- arcfide [~arcfide@c-69-136-24-18.hsd1.fl.comcast.net] has quit [Quit: EPIC5-1.1.2[1638] - amnesiac : crack the liars smile] 03:13:54 youlysses [~user@75-132-17-145.dhcp.stls.mo.charter.com] has joined #scheme 03:23:01 -!- tuubow [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has quit [Quit: Ex-Chat] 03:23:13 tuubow [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has joined #scheme 03:36:41 chu [~chu@CPE-58-169-13-80.lns2.civ.bigpond.net.au] has joined #scheme 03:36:41 -!- chu [~chu@CPE-58-169-13-80.lns2.civ.bigpond.net.au] has quit [Changing host] 03:36:41 chu [~chu@unaffiliated/chu] has joined #scheme 03:45:54 -!- MichaelRaskin [~MichaelRa@195.91.224.225] has left #scheme 03:46:24 -!- turbofail [~user@38.99.37.210] has quit [Ping timeout: 245 seconds] 04:11:17 teurastaja [~chatzilla@modemcable168.103-58-74.mc.videotron.ca] has joined #scheme 04:13:56 -!- teurastaja [~chatzilla@modemcable168.103-58-74.mc.videotron.ca] has quit [Client Quit] 04:14:41 FRSHPRNCFBLR [~noone@CPE00222d560998-CM00222d560995.cpe.net.cable.rogers.com] has joined #scheme 04:15:07 -!- chu [~chu@unaffiliated/chu] has quit [Ping timeout: 265 seconds] 04:16:52 chu [~chu@CPE-58-169-13-80.lns2.civ.bigpond.net.au] has joined #scheme 04:17:15 -!- chu is now known as Guest51762 04:17:58 ski, mine does 04:18:02 ski, thank you 04:18:35 ssbr, i thought regular expressions are never recursive 04:18:44 and scheme's syntax-rules is 04:18:48 (is it?) 04:22:38 syntax rules are "recursive" in the sense that you can make use of a case defined prior within the same set of rules 04:22:46 -!- sawjig [~sawjig@gateway/tor-sasl/sawjig] has quit [Ping timeout: 276 seconds] 04:23:19 that sounded very unnecessary, I'll show myself the door 04:24:05 weirdo: they don't allow arbitrary recursion, no 04:24:18 anyway, I think it's actually just regular expressions 04:24:32 ssbr, but macroexpansion is recursive 04:24:49 weirdo: sure, but that's a separate thing from the actual pattern matching step 04:25:30 here we have a defined set of regular expression rules, and we apply them repeatedly (recursively) until no more changes are made 04:25:32 I guess. 04:25:53 it's sad that they don't allow for composition of arbitrary expressions 04:26:03 ("they" being ?) 04:26:09 syntax-rules 04:26:20 how do you mean ? 04:26:32 hm 04:26:32 wait 04:27:53 I'm a little sad that you can't, AFAIK, do alternation (can you?) 04:28:34 you mean they have to appear in the same order with ellipsis? 04:28:46 ssbr: if you have two rules, sure 04:29:00 with regexps and some pattern-matching tools you can do "match either A or B" anywhere within a pattern 04:29:32 with syntax-rules I don't really know. You can do alternation at the top-level 04:31:58 what's a good environment for Scheme? 04:32:08 emacs? drracket? 04:33:27 i was hoping for something to do static analysis of code w/o evaluating it 04:33:35 but with macros, i s'pose it's not even possible 04:33:55 bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 04:34:10 -!- phao [phao@177.26.96.125] has quit [Quit: Not Here] 04:35:41 ThePawnBreak [Cristi@94.177.108.25] has joined #scheme 04:38:08 -!- anothervenue [~anotherve@76.91.162.213] has quit [Ping timeout: 240 seconds] 04:39:55 -!- bfig [~b_fin_g@r190-135-55-224.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 255 seconds] 04:40:30 anothervenue [~anotherve@76.91.162.213] has joined #scheme 04:41:20 -!- RageOfThou [~RageOfTho@cable-77-221-28-174.dynamic.vinet.ba] has quit [Ping timeout: 246 seconds] 04:44:58 attila_lendvai [~attila_le@87.247.60.27] has joined #scheme 04:45:06 -!- attila_lendvai [~attila_le@87.247.60.27] has quit [Changing host] 04:45:06 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #scheme 04:46:02 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Client Quit] 04:47:13 i just found a bug in racket 04:47:17 -!- ThePawnBreak [Cristi@94.177.108.25] has quit [Ping timeout: 246 seconds] 04:47:28 racket@seaking2/ellipsis-patmatch> (pair? (vector-ref #(foo (1 2 3)) 1)) 04:47:28 #f 04:47:28 racket@seaking2/ellipsis-patmatch> (pair? '(1 2 3)) 04:47:28 #t 04:47:43 looks like it's constructing pairs, not mpairs, in r5rs mode 04:47:56 -!- Inode_ is now known as Inode 04:48:39 attila_lendvai [~attila_le@87.247.60.27] has joined #scheme 04:48:39 -!- attila_lendvai [~attila_le@87.247.60.27] has quit [Changing host] 04:48:39 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #scheme 04:50:58 The question is what "pair?" means in R5RS mode. It probably reports #t on either pairs or mpairs. 04:51:57 it's 'mpair?' 04:52:03 but the #() reader is broken 04:53:29 bfig [~b_fin_g@r186-52-141-112.dialup.adsl.anteldata.net.uy] has joined #scheme 04:54:07 ThePawnBreak [Cristi@94.177.108.25] has joined #scheme 04:58:30 -!- arbn [~arbn@pool-74-98-200-128.pitbpa.fios.verizon.net] has quit [Quit: leaving] 04:58:33 weirdo : "you mean they have to appear in the same order with ellipsis?" -- "they" being ? 04:58:56 ssbr : no alternation inside patterns 04:59:04 ski, matched forms 05:00:25 if you mean whether the sequences bound by variables matched inside an ellipsis will have to appear in the same order in the output of the template, then yes 05:01:20 -!- kandinsk1 is now known as kandinski 05:01:23 (but of course you can bind `a' and `b' (inside ellipsis) in the pattern, and then output `(b a) ...' or `(b ...) (a ...)' if you wish) 05:02:13 -!- homie` [~levgue@xdsl-78-35-168-154.netcologne.de] has quit [Ping timeout: 248 seconds] 05:03:01 phao [phao@177.26.96.125] has joined #scheme 05:03:26 -!- ThePawnBreak [Cristi@94.177.108.25] has quit [Ping timeout: 250 seconds] 05:04:36 lcc [~user@unaffiliated/lcc] has joined #scheme 05:07:54 githogori [~githogori@c-50-131-15-16.hsd1.ca.comcast.net] has joined #scheme 05:08:07 -!- joast [~rick@98.145.85.206] has quit [Quit: Leaving.] 05:13:20 -!- Okasu [~okasu@s094127069016.m.truevds.ru] has quit [Remote host closed the connection] 05:18:56 joast [~rick@98.145.85.206] has joined #scheme 05:23:03 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Ping timeout: 246 seconds] 05:23:40 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 05:34:37 -!- gf3 [~gf3@oftn/member/gf3] has quit [Ping timeout: 252 seconds] 05:36:11 rbarraud [~rbarraud@125-237-76-181.jetstream.xtra.co.nz] has joined #scheme 05:37:47 gf3 [~gf3@oftn/member/gf3] has joined #scheme 05:38:23 -!- mmc1 [~michal@178-85-66-32.dynamic.upc.nl] has quit [Ping timeout: 246 seconds] 05:39:59 gravicappa [~gravicapp@ppp91-77-180-110.pppoe.mtu-net.ru] has joined #scheme 05:46:58 ThePawnBreak [Cristi@94.177.108.25] has joined #scheme 05:49:16 -!- realitygrill [~realitygr@ool-18ba55c0.dyn.optonline.net] has quit [Quit: Get MacIrssi - http://www.sysctl.co.uk/projects/macirssi/] 05:50:49 -!- ThePawnBreak [Cristi@94.177.108.25] has quit [Read error: Connection reset by peer] 05:52:50 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 05:54:25 -!- nischayn22 is now known as nischayn22|Away 05:55:34 -!- X-Scale [name@2001:470:1f14:135b::2] has quit [Remote host closed the connection] 05:57:18 -!- jcowan [~John@mail.digitalkingdom.org] has quit [Quit: Leaving] 06:07:19 ThePawnBreak [~Cristi@94.177.108.25] has joined #scheme 06:14:14 hkBst [~marijn@79.170.210.172] has joined #scheme 06:14:15 -!- hkBst [~marijn@79.170.210.172] has quit [Changing host] 06:14:15 hkBst [~marijn@gentoo/developer/hkbst] has joined #scheme 06:17:59 -!- lcc [~user@unaffiliated/lcc] has quit [Remote host closed the connection] 06:18:50 lcc [~user@unaffiliated/lcc] has joined #scheme 06:21:16 -!- leppie [~lolcow@196-210-234-252.dynamic.isadsl.co.za] has quit [Ping timeout: 265 seconds] 06:26:55 leppie [~lolcow@196-210-179-112.dynamic.isadsl.co.za] has joined #scheme 06:31:55 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #scheme 06:34:01 dropster [~Kim@port284.ds1-oebr.adsl.cybercity.dk] has joined #scheme 06:35:59 morning 06:36:06 -!- fantazo [~fantazo@91.119.222.191] has quit [Remote host closed the connection] 06:36:22 hi 06:39:52 arbn [~arbn@pool-74-98-200-128.pitbpa.fios.verizon.net] has joined #scheme 06:42:11 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #scheme 06:42:12 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Remote host closed the connection] 06:45:24 -!- rbarraud [~rbarraud@125-237-76-181.jetstream.xtra.co.nz] has quit [Remote host closed the connection] 07:04:28 ThePawnBreak121 [Cristi@94.177.108.25] has joined #scheme 07:05:11 -!- FRSHPRNCFBLR [~noone@CPE00222d560998-CM00222d560995.cpe.net.cable.rogers.com] has quit [Quit: Leaving] 07:07:19 -!- ThePawnBreak [~Cristi@94.177.108.25] has quit [Ping timeout: 264 seconds] 07:14:41 -!- Guest51762 is now known as chu 07:15:12 -!- chu is now known as Guest39107 07:16:43 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Ping timeout: 244 seconds] 07:19:47 -!- phao [phao@177.26.96.125] has quit [Quit: Not Here] 07:27:47 rbarraud [~rbarraud@125-237-76-181.jetstream.xtra.co.nz] has joined #scheme 07:30:40 -!- Guest39107 is now known as chu 07:30:47 -!- chu [~chu@CPE-58-169-13-80.lns2.civ.bigpond.net.au] has quit [Changing host] 07:30:47 chu [~chu@unaffiliated/chu] has joined #scheme 07:31:06 -!- unglue [~tristan@lvps176-28-16-172.dedicated.hosteurope.de] has quit [Remote host closed the connection] 07:46:31 -!- mvuets [~mvuets@95.154.250.228] has left #scheme 07:47:35 -!- jonrafkind [~jon@racket/jonrafkind] has quit [Ping timeout: 246 seconds] 07:52:33 corani [~yaaic@147.243.236.28] has joined #scheme 08:17:24 mucker [~mucker@183.83.240.198] has joined #scheme 08:22:56 -!- impaktor [~user@b2.thep.lu.se] has quit [Ping timeout: 246 seconds] 08:26:54 -!- lcc [~user@unaffiliated/lcc] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 08:27:31 poisonarms [~poisonarm@cpe-70-116-22-88.austin.res.rr.com] has joined #scheme 08:32:46 impaktor [~user@b2.thep.lu.se] has joined #scheme 08:33:11 -!- mucker [~mucker@183.83.240.198] has quit [Ping timeout: 244 seconds] 08:50:54 keenbug [~daniel@p4FDB79F2.dip.t-dialin.net] has joined #scheme 08:57:51 -!- leppie [~lolcow@196-210-179-112.dynamic.isadsl.co.za] has quit [Ping timeout: 255 seconds] 08:59:52 Cristi__ [Cristi@94.177.108.25] has joined #scheme 09:01:57 lcc [~user@unaffiliated/lcc] has joined #scheme 09:02:14 which bot is written in scheme? 09:02:28 rudybot? 09:02:59 yeah, I found the github page. 09:03:08 -!- ThePawnBreak121 [Cristi@94.177.108.25] has quit [Ping timeout: 246 seconds] 09:05:19 -!- Cristi__ [Cristi@94.177.108.25] has quit [Quit: Leaving] 09:10:25 -!- corani [~yaaic@147.243.236.28] has quit [Read error: Connection reset by peer] 09:13:13 -!- lcc [~user@unaffiliated/lcc] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 09:16:50 -!- b4283 [~user@122-117-157-82.HINET-IP.hinet.net] has quit [Remote host closed the connection] 09:22:07 leppie [~lolcow@196-210-156-94.dynamic.isadsl.co.za] has joined #scheme 09:29:40 homie [~levgue@xdsl-78-35-133-186.netcologne.de] has joined #scheme 09:48:12 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #scheme 09:49:42 peterhil` [~peterhil@gatekeeper.brainalliance.com] has joined #scheme 09:54:19 -!- ivan\ [~ivan@unaffiliated/ivan/x-000001] has quit [Ping timeout: 245 seconds] 09:56:59 ivan\ [~ivan@unaffiliated/ivan/x-000001] has joined #scheme 10:03:07 -!- ivan\ [~ivan@unaffiliated/ivan/x-000001] has quit [Ping timeout: 265 seconds] 10:05:03 -!- rbarraud [~rbarraud@125-237-76-181.jetstream.xtra.co.nz] has quit [Ping timeout: 265 seconds] 10:06:55 antithesis [~antithesi@s51476e07.adsl.wanadoo.nl] has joined #scheme 10:08:17 ivan\ [~ivan@unaffiliated/ivan/x-000001] has joined #scheme 10:15:44 -!- DGASAU` [~user@91.218.144.129] has quit [Remote host closed the connection] 10:26:26 masm [~masm@bl18-51-45.dsl.telepac.pt] has joined #scheme 10:29:56 kunsel [~kvirc@pc16139.vpn-i.uni-kiel.de] has joined #scheme 10:37:43 -!- kunsel [~kvirc@pc16139.vpn-i.uni-kiel.de] has quit [Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/] 10:38:18 kunsel [~kunsel@pc16139.vpn-i.uni-kiel.de] has joined #scheme 10:39:46 DGASAU [~user@91.218.144.129] has joined #scheme 10:41:33 lcc [~user@unaffiliated/lcc] has joined #scheme 10:45:05 -!- TheRealPygo [~Pygosceli@kiel-5f77bd0a.pool.mediaWays.net] has quit [Quit: leaving] 10:45:30 pygospa [~Pygosceli@kiel-5f77bd0a.pool.mediaWays.net] has joined #scheme 10:51:16 -!- kunsel [~kunsel@pc16139.vpn-i.uni-kiel.de] has quit [Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/] 11:04:28 attila_lendvai [~attila_le@87.247.61.30] has joined #scheme 11:04:28 -!- attila_lendvai [~attila_le@87.247.61.30] has quit [Changing host] 11:04:28 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #scheme 11:05:17 hm. 11:05:33 how do you optimize a CPS'ed scheme so it won't cons closures left and right? 11:12:33 -!- dropster [~Kim@port284.ds1-oebr.adsl.cybercity.dk] has quit [Read error: Connection reset by peer] 11:13:49 MrFahrenheit [~RageOfTho@cable-77-221-28-174.dynamic.vinet.ba] has joined #scheme 11:13:52 -!- youlysses [~user@75-132-17-145.dhcp.stls.mo.charter.com] has quit [Ping timeout: 244 seconds] 11:18:15 b4283 [~user@114-47-10-250.dynamic.hinet.net] has joined #scheme 11:18:27 emacs: M-x run-scheme. how can I do something like (clear-prompt)? 11:26:34 um. nvmnd. 11:32:07 -!- lcc [~user@unaffiliated/lcc] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:38:32 -!- gravicappa [~gravicapp@ppp91-77-180-110.pppoe.mtu-net.ru] has quit [Ping timeout: 246 seconds] 11:45:35 -!- drdo [~drdo@roach0.drdo.eu] has quit [Ping timeout: 265 seconds] 11:49:24 drdo [~drdo@roach0.drdo.eu] has joined #scheme 11:52:11 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Ping timeout: 246 seconds] 11:54:39 lcc [~user@unaffiliated/lcc] has joined #scheme 11:54:58 dropster [~Kim@port284.ds1-oebr.adsl.cybercity.dk] has joined #scheme 11:57:37 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #scheme 12:02:08 shmore [~shmore@S01060026f31b5d58.hm.shawcable.net] has joined #scheme 12:18:27 -!- keenbug [~daniel@p4FDB79F2.dip.t-dialin.net] has quit [Ping timeout: 265 seconds] 12:20:27 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 12:35:40 gravicappa [~gravicapp@ppp91-77-183-195.pppoe.mtu-net.ru] has joined #scheme 12:37:30 gcartier [~gcartier@modemcable044.80-58-74.mc.videotron.ca] has joined #scheme 12:37:50 -!- gcartier [~gcartier@modemcable044.80-58-74.mc.videotron.ca] has quit [Remote host closed the connection] 12:41:11 -!- pygospa [~Pygosceli@kiel-5f77bd0a.pool.mediaWays.net] has quit [Disconnected by services] 12:41:18 TheRealPygo [~Pygosceli@kiel-4d067bf3.pool.mediaWays.net] has joined #scheme 12:42:08 -!- leppie [~lolcow@196-210-156-94.dynamic.isadsl.co.za] has quit [Ping timeout: 240 seconds] 12:46:29 r_r_r [~chatzilla@77.127.36.119] has joined #scheme 12:46:41 -!- r_r_r [~chatzilla@77.127.36.119] has quit [Client Quit] 12:47:21 fantazo [~fantazo@91.119.203.251] has joined #scheme 12:47:25 -!- TheRealPygo is now known as pygospa 12:48:50 I'm looking for a function that divides an integer and returns a list of integers where the sum is equal to the original integer and all the elements are as close to equal size as possible. I realize it's not a difficult function to write but I realize I have no idea what I should call it and I like to reuse code :) 12:50:15 langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has joined #scheme 12:51:03 -!- arbn [~arbn@pool-74-98-200-128.pitbpa.fios.verizon.net] has quit [Quit: leaving] 12:51:24 leppie [~lolcow@196-210-156-94.dynamic.isadsl.co.za] has joined #scheme 12:52:33 -!- langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has quit [Client Quit] 12:52:53 langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has joined #scheme 12:55:34 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Ping timeout: 245 seconds] 13:05:49 -!- peterhil` [~peterhil@gatekeeper.brainalliance.com] has quit [Ping timeout: 265 seconds] 13:06:45 Zuchtor should it be the smallest possible integer or is there any other limits ? 13:09:06 dropster: the resulting list should be as equal as possible. Example: ( (10 3) ...) => (3 3 4) 13:10:15 preferably ( (11 3) ...) should return (3 4 4) rather than (3 3 5) but that is a minor issue 13:11:38 -!- hkBst [~marijn@gentoo/developer/hkbst] has quit [Quit: Konversation terminated!] 13:12:08 -!- b4283 [~user@114-47-10-250.dynamic.hinet.net] has quit [Remote host closed the connection] 13:18:02 -!- dropster [~Kim@port284.ds1-oebr.adsl.cybercity.dk] has left #scheme 13:20:31 -!- leppie [~lolcow@196-210-156-94.dynamic.isadsl.co.za] has quit [Read error: Connection reset by peer] 13:21:20 leppie [~lolcow@196-210-156-94.dynamic.isadsl.co.za] has joined #scheme 13:22:41 -!- masm [~masm@bl18-51-45.dsl.telepac.pt] has quit [Quit: Leaving.] 13:27:01 kuribas [~user@94-227-36-245.access.telenet.be] has joined #scheme 13:36:36 -!- lcc [~user@unaffiliated/lcc] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 13:48:42 -!- weinholt [weinholt@debian/emeritus/weinholt] has quit [Ping timeout: 272 seconds] 13:55:27 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Quit: Computer has gone to sleep.] 13:55:42 dnolen [~user@cpe-98-14-92-234.nyc.res.rr.com] has joined #scheme 13:57:14 -!- kuribas [~user@94-227-36-245.access.telenet.be] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 14:10:09 -!- Pepe_ [~ppjet@anderith.bouah.net] has quit [Ping timeout: 252 seconds] 14:13:15 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 14:14:17 kk` [~kk@unaffiliated/kk/x-5380134] has joined #scheme 14:14:29 weinholt [weinholt@debian/emeritus/weinholt] has joined #scheme 14:15:21 Pepe_ [~ppjet@anderith.bouah.net] has joined #scheme 14:19:12 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 14:19:50 Zuchto: (lambda (n d) (cons (remainder n d) (make-list d (quotient n d)))) 14:20:42 I guess you could call it divide. 14:23:24 MichaelRaskin [~MichaelRa@195.178.216.22] has joined #scheme 14:24:52 pjb: Hmm, i think you missunderstod me. As per the examples I gave earlier the resulting lists size should be equal to the denominator. ( 11 3) => (4 4 3) as an example 14:25:07 the function you suggest would return (2 3 3 3) 14:25:11 Zuchto: (lambda (n d) (let ((d (- d 1))) (cons (remainder n d) (make-list d (quotient n d))))) 14:25:31 still call it divide-1 14:26:15 Zuchto: the point is that (remainder n d) and (quotient n d) give you what you need. Then you can use them as you want. Using make-list is probably silly. 14:28:48 pjb: ok, I realize I was unclear about the elements of the list. my version of the function is https://gist.github.com/3018270 14:31:17 the use i have for this function is to divide dedicated space into approximately equal sizes to draw windows in them. 14:31:46 b4283 [~user@114-47-10-250.dynamic.hinet.net] has joined #scheme 14:31:53 Right. But as I said, you can compute the two sizes without duplicating them. 14:39:40 -!- jrslepak [~jrslepak@c-71-233-148-123.hsd1.ma.comcast.net] has quit [Quit: This computer has gone to sleep] 14:41:38 https://gist.github.com/3018270 <- aha! new and improved version. Thanks for the help pjb 14:45:06 -!- b4283 [~user@114-47-10-250.dynamic.hinet.net] has quit [Remote host closed the connection] 14:45:15 Zuchto: yes, it's much better than the previous version :-) 14:45:32 b4283 [~user@114-47-10-250.dynamic.hinet.net] has joined #scheme 14:46:25 wub1 [~wub3@199.193.222.34] has joined #scheme 14:46:50 yeah, agreed 14:50:25 Zuchto: couldn't you just return: (list q (1+ r) (- d q) r) and the caller could iterate itself? 14:53:09 pjb: I don't think so, I always want to be able to get the complete list returned 14:56:33 -!- MichaelRaskin [~MichaelRa@195.178.216.22] has quit [Ping timeout: 244 seconds] 14:56:35 ok. 14:57:04 You can also abstract it away. 14:57:50 ie. you can wrap (list q (1+ r) (- d q) r) in a function that will return one value each time it's called, just like pop would do on the list. 14:58:04 But if you need a list, you need it. 14:58:24 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #scheme 15:02:34 -!- dnolen [~user@cpe-98-14-92-234.nyc.res.rr.com] has quit [Ping timeout: 246 seconds] 15:08:28 jrslepak [~jrslepak@nomad.ccs.neu.edu] has joined #scheme 15:21:08 leo2007 [~leo@222.130.140.81] has joined #scheme 15:29:32 -!- tuubow [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has quit [Ping timeout: 246 seconds] 15:37:30 ssbr__ [~ssbr@python/site-packages/ssbr] has joined #scheme 15:52:17 -!- eni is now known as albacker 15:52:25 -!- albacker [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Changing host] 15:52:25 albacker [~eni@unaffiliated/enyx] has joined #scheme 15:52:38 -!- albacker is now known as eni 15:57:14 offby1: Maybe something like: "rudybot: planet neil/sicp" and rudybot replies with a link to the package page. 16:00:09 -!- bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [Ping timeout: 245 seconds] 16:15:07 -!- leppie [~lolcow@196-210-156-94.dynamic.isadsl.co.za] has quit [Read error: Connection reset by peer] 16:15:25 b4283` [~user@114-47-10-250.dynamic.hinet.net] has joined #scheme 16:15:52 leppie [~lolcow@196-210-156-94.dynamic.isadsl.co.za] has joined #scheme 16:23:17 Riastradh: yes, it was the .com files it complained about. 16:23:22 Riastradh: Ha! Solved it! 16:24:10 What was the issue? 16:24:33 Riastradh: I had a problem with my $PATH not being correct, or being set at all in my .xinitrc. I just added that, and now it works, so I don't know how that affected it, but that's the only change I've made since it started working. 16:25:18 bipt [~bpt@cpe-173-095-170-102.nc.res.rr.com] has joined #scheme 16:25:40 Er...OK. Weird. 16:27:01 Or, $PATH was set in .zshrc, but .xinitrc was oblivious to it so emacs could not find programs I had in ~/usr/bin, but I don't understand it either. 16:28:08 Thanks for the help. Now I can start doing the SICP exercises. 16:33:22 -!- wub1 [~wub3@199.193.222.34] has left #scheme 16:37:37 -!- githogori [~githogori@c-50-131-15-16.hsd1.ca.comcast.net] has quit [Remote host closed the connection] 16:37:49 -!- anothervenue [~anotherve@76.91.162.213] has quit [Ping timeout: 244 seconds] 16:40:11 anothervenue [~anotherve@76.91.162.213] has joined #scheme 16:41:38 -!- bfig [~b_fin_g@r186-52-141-112.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 246 seconds] 16:44:47 -!- ijp [~user@host86-174-103-236.range86-174.btcentralplus.com] has quit [Ping timeout: 246 seconds] 16:45:01 MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has joined #scheme 16:51:06 -!- anothervenue [~anotherve@76.91.162.213] has quit [Quit: WeeChat 0.3.7] 16:55:04 bfig [~b_fin_g@r190-135-80-143.dialup.adsl.anteldata.net.uy] has joined #scheme 17:11:45 ijp [~user@host109-151-49-60.range109-151.btcentralplus.com] has joined #scheme 17:12:57 realitygrill [realitygri@nat/hackerschool.com/x-ipxcoalltkzsxcxc] has joined #scheme 17:19:39 what's up with 'wraps' and 'environments' in the dybvig's paper? 17:19:47 what is a 'wrap'? 17:19:51 what is a syntax object? 17:20:58 -!- fantazo [~fantazo@91.119.203.251] has quit [Remote host closed the connection] 17:21:38 i need to verify some things basing on the docs... maybe i'm getting the general idea 17:21:39 weirdo: welcome to psyntax ;p 17:21:48 leppie, wasn't psyntax buggy? 17:23:23 weirdo: not as far as I know, I know of 1 minor let-syntax scoping bug, but as far as R6RS is concerned, it is pretty much spot on 17:24:50 so the only way for the user to construct a syntax object is by using syntax-rules or syntax-case... 17:25:26 right? 17:25:53 crossfader [~guru@dslb-088-073-091-062.pools.arcor-ip.net] has joined #scheme 17:26:00 -!- chu [~chu@unaffiliated/chu] has quit [Quit: leaving] 17:27:52 jonrafkind [~jon@racket/jonrafkind] has joined #scheme 17:31:24 lcc [~user@unaffiliated/lcc] has joined #scheme 17:32:28 leppie, explain, pretty please with sugar on top 17:32:44 if some identifier is bound by a pattern, it retains its value, but if it's free, it gets renamed? 17:33:01 hi 17:34:37 mark_weaver [~user@209-6-91-212.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 17:34:48 homie` [~levgue@xdsl-78-35-190-201.netcologne.de] has joined #scheme 17:36:24 weirdo: to understand psyntax, you need to read the paper "Syntactic Abstraction in Scheme" by Dybvig, Hieg, and Bruggeman, http://www.cs.indiana.edu/~dyb/pubs/LaSC-5-4-pp295-326-abstract.html 17:36:38 -!- homie [~levgue@xdsl-78-35-133-186.netcologne.de] has quit [Ping timeout: 240 seconds] 17:38:02 weirdo: and yes, psyntax does arguably have some bugs in its hygiene algorithm, as described in the "Improved hygiene" section of SRFI 72 17:39:00 arcfide [~arcfide@c-69-136-24-18.hsd1.fl.comcast.net] has joined #scheme 17:40:04 weirdo: syntax objects can also be created using 'datum->syntax', and depending on the implementation, they might be represented in a way that allows them to be "forged". As I recall, the portable implementation represents them using simple schem vectors, as does Guile. 17:40:25 mmc1 [~michal@178-85-66-32.dynamic.upc.nl] has joined #scheme 17:40:48 mark_weaver, but datum->syntax requires a reference to an existing environment 17:41:07 hmm, there's also `syntax' 17:43:30 weirdo: have you actually tried using syntax-case macros? 17:43:45 not yet, no 17:43:48 I'd hold off implementing them until you have some experience 17:43:50 but i'm reading papers and books 17:44:08 I tried to use the lazy-ffi with chicken, but I ran into other problems realizing that my scheme code written in guile is so far not portable, due to incomplience of my code to SchemeReport standard :( . Finally I found a solution updating my guile-scheme which has native ffi support, begining with version 2.0. So for future projects I try to write R6RS complient as far as possible, and i ll have a focus on chicken-scheme as well, 17:44:09 even just something like "Writing Hygienic Macros in Scheme with Syntax-Case" or http://blog.racket-lang.org/2011/04/writing-syntax-case-macros.html 17:44:21 i know CL macros by heart 17:45:18 yes, but that's because there is nothing to know 17:45:34 you can manipulate a list, you can write a CL macro 17:46:07 mucker [~mucker@183.83.240.198] has joined #scheme 17:47:45 that said, in practice, syntax-case macros usually aren't more complicated to write 17:48:06 understanding CL macros is a very basic foundation upon which to build, but now you need to learn at least two more things: (1) how to maintain hygiene, and (2) how to do syntax-rules-style pattern-matching and substitution via templates. 17:49:04 mark_weaver: hola. 17:49:17 hi FurnaceBoy 17:49:37 *FurnaceBoy* is qu1j0t3 17:49:44 weirdo, I never understood psyntax; the algorithm is much too hairy and the code is much too incoherent and badly written. I understand riaxpander much better, and I like to think that it's not just because I wrote it. 17:49:53 weirdo: to begin to understand hygiene, you should probably read the paper that Riastradh recommended: http://mumble.net/~jar/pubs/scheme-of-things/easy-macros.ps 17:50:13 Riastradh, yes, we talked about riaxpander a while ago, thanks 17:50:17 it's more like.. years ago 17:50:48 There are three main parts to what a Scheme macro expander needs to do: hygiene (jar's paper), definition scanning (nobody has published a paper on the subject, as far as I know, but MIT Scheme and riaxpander are the only expanders I know that do it sensibly), and the pattern language (for which you can just steal Scheme48's implementation, like I did). 17:51:18 i already wrote half of a pattern language 17:51:26 what is definition scanning? 17:54:22 ijp: I saw you ask on #guile about using internal definitions within cond bodies, and how 'letrec*' was sufficient but not as nice. If you want to use internal defines where they are not automatically allowed, you can always insert (let () ...) 17:54:51 mark_weaver: that is what I did 17:56:14 Riastradh: is there any easy way to add support for the CL #. reader-macro to MIT/GNU Scheme? 17:56:33 *ijp* starts sprinkling ecraven with holy water 17:56:35 :P 17:56:51 would it be ok to modify (vector-set! (parser-table/special runtime-parser-table) (char->integer #\.) handler:something)? 17:57:03 ijp: the reason being that swank/SLIME use it in the wire protocol :( 17:57:21 and as the MIT/GNU-Scheme backend just READs the expressions, it chokes on #.(....) 17:57:26 mark_weaver: the real problem was, I had quite a large cond expression, that I had spend a while writing, only to test it and have to modify most of the bodies 17:58:35 ijp: I confess that I sometimes wish that internal definitions were allowed in more places. 18:01:04 Internal definitions are better than letrec* in at least one respect: they allow mixing of many different types of recursive definitions, including 'define-syntax', 'define-values', and any other define constructs (such as record type definitions) that have been added later. letrec-style constructs can't do that. 18:01:52 icrazyhack [horieyui@202.120.202.55] has joined #scheme 18:03:24 carleastlund [~cce@gotham.ccs.neu.edu] has joined #scheme 18:04:55 ijp: you should have just defined an AWESOME-COND syntax ;p 18:05:32 I should have, but it was nearly midnight, and I was not really in the mood. 18:06:18 though in retrospect, it's a pretty simple macro 18:07:01 well simple to copy and paste and modify ;p 18:09:49 dtm` [~dtm@adsl-67-121-157-253.dsl.pltn13.pacbell.net] has joined #scheme 18:11:52 -!- lcc [~user@unaffiliated/lcc] has quit [Quit: fuzzy logic] 18:12:42 lcc [~user@unaffiliated/lcc] has joined #scheme 18:15:33 githogori [~githogori@216.207.36.222] has joined #scheme 18:16:54 phao [phao@177.160.86.120] has joined #scheme 18:17:26 -!- icrazyhack [horieyui@202.120.202.55] has quit [Quit: http://www.cnblogs.com/crazyhack] 18:25:46 weirdo, you're trying to parse (let () (f) (g) (h)). You need to separate the definitions from the expressions in the body. 18:26:26 In the process, you need to learn about new variables, and use the appropriate environment to analyze everything involved. 18:26:30 Riastradh, but what about my-let what expands to lambda? 18:27:05 Same thing; it applies to any bodies. (lambda () (f) (g) (h)) has the same problem. 18:34:26 -!- homie` [~levgue@xdsl-78-35-190-201.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 18:34:30 gcartier [~gcartier@modemcable044.80-58-74.mc.videotron.ca] has joined #scheme 18:37:45 homie [~levgue@xdsl-78-35-190-201.netcologne.de] has joined #scheme 18:44:45 X-Scale [name@2001:470:1f14:135b::2] has joined #scheme 18:48:45 wbooze [~wbooze@xdsl-78-35-190-201.netcologne.de] has joined #scheme 19:00:58 -!- antithesis [~antithesi@s51476e07.adsl.wanadoo.nl] has quit [Remote host closed the connection] 19:09:03 turbofail [~user@38.99.37.210] has joined #scheme 19:09:19 antithesis [~antithesi@s51476e07.adsl.wanadoo.nl] has joined #scheme 19:12:30 levi, just started that book you recommended me 19:12:34 the CTM one 19:12:43 -!- antithesis [~antithesi@s51476e07.adsl.wanadoo.nl] has quit [Remote host closed the connection] 19:13:40 tuubow [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has joined #scheme 19:15:48 Suthe [~Suthe@20.Red-83-33-86.dynamicIP.rima-tde.net] has joined #scheme 19:15:54 -!- mark_weaver [~user@209-6-91-212.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has left #scheme 19:16:10 anothervenue [~anotherve@76.91.162.213] has joined #scheme 19:19:25 -!- crossfader [~guru@dslb-088-073-091-062.pools.arcor-ip.net] has quit [Quit: Leaving.] 19:35:46 soegaard [~soegaard@188.183.250.62] has joined #scheme 19:40:53 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Remote host closed the connection] 19:41:32 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 19:44:02 cdshines [5f871aec@gateway/web/freenode/ip.95.135.26.236] has joined #scheme 19:44:32 -!- wbooze [~wbooze@xdsl-78-35-190-201.netcologne.de] has quit [Read error: Connection reset by peer] 19:46:02 hello to all. i'm not quite sure whether i'm on right channel or not, but may i ask a question about oneparticular SICP solution? 19:46:25 You may. 19:51:34 parensoverbraces [45eca6b4@gateway/web/freenode/ip.69.236.166.180] has joined #scheme 19:52:08 It's more about realization than about algorithm, so: I found a realization of 1.38 on billthelizard's site: http://www.billthelizard.com/2010/07/sicp-137-138-and-139-continued.html. There are procedures (e) and (d i) - (d) is a helper-function that's used to calculate one of formal parameters of (e). But (d) is passed to (e) without any argument, while still using values that are inner for (e). So, how can be argument passed to (d) 19:52:16 call to (d)? 19:52:31 could somebody help me debug a recursive? http://pastebin.com/tsUG9xXW 19:54:18 adu [~ajr@pool-173-66-16-10.washdc.fios.verizon.net] has joined #scheme 19:55:54 there has been a lot of activity on scheme-reports lately 19:56:02 cdshines: cont-frac applies the argument to d. 19:56:20 cdshines: it is passed as a procedure value. then applied with (d X) 19:56:52 cdshines: twice, in fact. once applied to i and once applied to k 19:59:05 looks quite complicated to me. http://community.schemewiki.org/?sicp-ex-1.38 - this variant is much easier to understand thanks to it's clarity 19:59:44 -!- ChibaPet [~ChibaPet@fsf/member/chibapet] has left #scheme 19:59:52 cdshines: but do you understand what i explained? 20:00:11 i'm not sure:( 20:00:21 to be the honest - totally no( 20:01:30 cdshines: 20:01:32 #;1> (define (foo x) (+ x 1)) 20:01:34 #;2> (define (bar f y) (f y)) 20:01:36 #;3> (bar foo 10) 20:01:38 11 20:03:30 youlysses [~user@75-132-17-145.dhcp.stls.mo.charter.com] has joined #scheme 20:04:28 Or even better: 20:04:36 rudybot: (define (foo x) (+ x 1)) 20:04:38 stamourv: your sandbox is ready 20:04:38 stamourv: Done. 20:04:45 rudybot: (define (bar f y) (f y)) 20:04:45 stamourv: Done. 20:04:51 rudybot: (bar foo 10) 20:04:51 stamourv: ; Value: 11 20:04:56 cdshines: ^ 20:04:57 stamourv: meh, i'm old fashioned! these modern toys befuddle me! 20:05:14 rudybot: befuddle 20:05:15 stamourv: error: reference to an identifier before its definition: befuddle in module: 'program 20:05:19 rudybot: befuddle, please 20:05:20 stamourv: Indeed. And now you can use expressions such as "I got a clip round the ear for my cheek" and utterly befuddle non-native English speakers. 20:05:43 well, foo and bar are parameters of bar, than (bar foo 10) is replaced with (foo 10) which leads to (+ 10 1) => 11, amiright? 20:06:40 cdshines: yes. 20:06:53 cdshines: the procedure value is being passed in and bound here. then applied. 20:07:00 cdshines: this is all that's occurring in the exercise, too. 20:07:30 cdshines: you can do whatever you like with the procedure _value_ as long as you apply it to the one expected parameter. see? 20:07:48 hmm, so, in fact, (d)'s body IS substituted into (e)? 'cause I see no other way to pass i's value to it 20:07:53 no. 20:08:46 oh i see what you're asking. 20:08:48 just a sec 20:09:07 in this case, d is the procedure value 20:09:25 it's not being applied, as it would if it were used as in: (d X) 20:09:35 so the procedure value is being passed into cont-frac (as a parameter) 20:09:38 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Remote host closed the connection] 20:09:41 then cont-frac applies it twice. 20:09:54 make sense? 20:10:00 cdshines: just like my example above. 20:10:14 ahhh 20:10:17 silly me 20:10:18 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 20:10:20 I see 20:10:29 cdshines: :) 20:10:51 I forgot that cont-frac is a procedure that takes functions, not numbers 20:11:11 Thank's a lot, that stuff ate all my evening)) 20:11:34 to to repeatedly beg for help, but could anybody shed some light on http://pastebin.com/tsUG9xXW 20:11:47 its a recursive function to return the prime factorization of a number 20:11:51 cdshines: yw. glad i could help. my solutions are http://telegraphics.com.au/svn/puzzles/trunk/sicp/1-37.scm + http://telegraphics.com.au/svn/puzzles/trunk/sicp/1-38.scm 20:12:32 and It appears the recursion now continues indefinitely when I put in a cond that should end it 20:13:37 FurnaceBoy: they are so well commented - I'm going to look at them first instead of that unexplained magic 20:17:11 cdshines: thankyou :) i don't even remember commenting them, haha. 20:17:35 -!- tuubow [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has quit [Ping timeout: 246 seconds] 20:17:35 -!- githogori [~githogori@216.207.36.222] has quit [Ping timeout: 246 seconds] 20:17:51 cdshines: you are too kind, those comments are only quoting the text problem 20:18:00 cdshines: however, happy to help you understand them 20:18:04 -!- youlysses [~user@75-132-17-145.dhcp.stls.mo.charter.com] has quit [Remote host closed the connection] 20:18:14 BTW, for 1.37 wouldn't a recursive function be the most natural solution? 20:19:21 parensoverbraces: cont-frac is internally recursive? 20:19:45 parensoverbraces: in fact it is required by the exercise 20:19:47 huh, looks like I undertand book's instructions only if i see the right above the correct code) 20:19:50 that is true. 20:20:08 parensoverbraces: Why does `get-primes' call `getfactors'? 20:20:12 cdshines: yes, sometimes you have to parse the exercise very carefully 20:20:57 FurnaceBoy: but i mean it would seam clearest to call the function for each nested fraction and use i and k as parameters 20:21:17 stamourv: isn't it the other way around? 20:21:42 parensoverbraces: In your paste, `get-primes' calls `getfactors'. Is that intentional? 20:22:03 oh wow, you are right! 20:22:04 youlysses [~user@75-132-17-145.dhcp.stls.mo.charter.com] has joined #scheme 20:22:07 that's weird 20:22:14 I was working in DrRacket in R5RS mode 20:22:21 Also style comments: `(define x (lambda (y) ...))' is considered archaic. 20:22:25 parensoverbraces: well, everyone gets to solve it in their own way... i don't claim optimality in any sense :) 20:22:37 -!- cdshines [5f871aec@gateway/web/freenode/ip.95.135.26.236] has quit [Quit: Page closed] 20:22:45 Names in Scheme/Racket are usually written `like-this', so `getfactors' would be `get-factors'. 20:22:55 and used the "macro-stepper" to what i though was just removing comments and things (I made this to teach a friend used to C about scheme and I used C style indentatinos to make the jump easier) 20:23:00 spree [spree@109.58.33.182.bredband.tre.se] has joined #scheme 20:23:07 let me make a new paste 20:23:14 why do you prefer scheme over common lisp? smaller and cleaner? 20:23:19 wbooze [~wbooze@xdsl-78-35-190-201.netcologne.de] has joined #scheme 20:23:32 -!- gcartier [~gcartier@modemcable044.80-58-74.mc.videotron.ca] has quit [Ping timeout: 246 seconds] 20:24:12 rbarraud [~rbarraud@ip-58-28-153-132.static-xdsl.xnet.co.nz] has joined #scheme 20:24:30 ok, 20:25:02 turns out the whole reference to get-factors in get-primes was due to an erronous copy-past i made 20:25:10 for some reason that happens a lot to me in DrRacket 20:25:23 Copy pasting is usually a bad idea. 20:26:09 -!- eni [~eni@unaffiliated/enyx] has quit [Ping timeout: 265 seconds] 20:26:20 -!- langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 20:26:59 parensoverbraces: if you have a recent enough version you might want to try check syntax. 20:27:11 http://pastebin.com/JQf7TsRB 20:27:17 If you click in the lower right corner (there is a circle) and turn it on, it will show you where identifiers are defined and such. 20:27:18 that should fix everything 20:27:25 Might make it more obvious when you make such syntactic mistakes. 20:28:17 stamourv: i used define with lambda to make first-class functions clearer for the C guy 20:28:19 -!- Suthe [~Suthe@20.Red-83-33-86.dynamicIP.rima-tde.net] has quit [Ping timeout: 264 seconds] 20:28:36 yeah, I'm probably not qualified at all to teach anybody scheme but Ireally like it so this is my attempt 20:29:53 oh wait 20:29:55 it works now 20:30:02 i guess that copy paste error was it 20:30:27 githogori [~githogori@216.207.36.222] has joined #scheme 20:31:50 thanks so much everbody 20:32:09 -!- rbarraud [~rbarraud@ip-58-28-153-132.static-xdsl.xnet.co.nz] has quit [Read error: Connection reset by peer] 20:35:17 -!- spree [spree@109.58.33.182.bredband.tre.se] has left #scheme 20:37:57 -!- b4283 [~user@114-47-10-250.dynamic.hinet.net] has quit [Read error: Operation timed out] 20:38:23 -!- b4283` [~user@114-47-10-250.dynamic.hinet.net] has quit [Read error: Connection reset by peer] 20:38:39 I have an object whose value is either true, false or unknown; is there a nice scheme-builtin that I can use for unknown: maybe the result of calling (if #f #f)? 20:38:50 Problem is, I can't test for that explicitly; probably need to roll my own. 20:38:56 -!- jrslepak [~jrslepak@nomad.ccs.neu.edu] has quit [Quit: This computer has gone to sleep] 20:39:11 I forget, sometimes, that Scheme isn't R; and doesn't have first-class support for ``no data''. 20:39:28 -!- youlysses [~user@75-132-17-145.dhcp.stls.mo.charter.com] has quit [Remote host closed the connection] 20:40:07 klutometis: You mean your booleans don't work like this? http://thedailywtf.com/Articles/What_Is_Truth_0x3f_.aspx 20:41:16 stamourv: Heh; I'm freely dealing with a trinary system here. No binary pretext. 20:41:27 pretense* 20:42:00 -!- bipt [~bpt@cpe-173-095-170-102.nc.res.rr.com] has quit [Read error: Operation timed out] 20:42:24 Ternary? 20:42:43 Riastradh: Thanks. 20:42:51 (define-record-type :file-not-found (make-file-not-found) file-not-found?) Now you have #t, #f, and (make-file-not-found). 20:43:02 antithesis [~antithesi@s51476e07.adsl.wanadoo.nl] has joined #scheme 20:43:07 If you want EQV?ness, (define file-not-found (let ((fnf (make-file-not-found))) (lambda () fnf))). 20:43:37 Like Schrödinger's cat, I'm dealing with quantum superstates. 20:44:02 data Fuzzy = True | False | Maybe 20:44:17 Riastradh: That does the trick; someone also told me once upon a time that (cons #f #f) is guaranteed to be unique. 20:44:21 stamourv, ha. I didn't even notice your link to that at first. 20:44:36 klutometis, yes, but that'll print funny, whereas mine will usually print clearly. 20:45:25 Riastradh: You're right; works beautifully. 20:51:45 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #scheme 20:53:43 -!- antithesis [~antithesi@s51476e07.adsl.wanadoo.nl] has quit [Remote host closed the connection] 20:53:58 -!- parensoverbraces [45eca6b4@gateway/web/freenode/ip.69.236.166.180] has quit [Quit: Page closed] 21:03:15 Zeedox [DanDan@h-208-182.a176.priv.bahnhof.se] has joined #scheme 21:05:31 youlysses [~user@75-132-17-145.dhcp.stls.mo.charter.com] has joined #scheme 21:08:09 Fare [fare@nat/google/x-bgcqyyeqyjypnbox] has joined #scheme 21:10:09 rbarraud [~rbarraud@ip-58-28-153-132.static-xdsl.xnet.co.nz] has joined #scheme 21:11:06 -!- githogori [~githogori@216.207.36.222] has quit [Remote host closed the connection] 21:14:05 -!- rbarraud [~rbarraud@ip-58-28-153-132.static-xdsl.xnet.co.nz] has quit [Read error: Connection reset by peer] 21:19:08 -!- cdidd [~cdidd@37-144-189-144.broadband.corbina.ru] has quit [Ping timeout: 240 seconds] 21:20:35 bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 21:21:38 -!- bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [Client Quit] 21:21:54 bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 21:22:41 -!- stamourv [~user@racket/stamourv] has quit [Remote host closed the connection] 21:26:07 stamourv [~user@racket/stamourv] has joined #scheme 21:32:58 tuubow [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has joined #scheme 21:35:18 cdidd [~cdidd@95-24-144-119.broadband.corbina.ru] has joined #scheme 21:36:41 gregr [~gregr@ool-43503171.dyn.optonline.net] has joined #scheme 21:41:09 -!- soegaard [~soegaard@188.183.250.62] has quit [Quit: soegaard] 21:43:08 rbarraud [~rbarraud@ip-58-28-153-132.static-xdsl.xnet.co.nz] has joined #scheme 21:50:02 -!- rbarraud [~rbarraud@ip-58-28-153-132.static-xdsl.xnet.co.nz] has quit [Read error: Connection reset by peer] 21:50:15 rbarraud [~rbarraud@ip-58-28-154-210.static-xdsl.xnet.co.nz] has joined #scheme 21:54:38 zbigniew [~zb@2600:3c02:e000:3::8] has joined #scheme 22:12:38 -!- gravicappa [~gravicapp@ppp91-77-183-195.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 22:14:29 -!- mmc1 [~michal@178-85-66-32.dynamic.upc.nl] has quit [Ping timeout: 246 seconds] 22:20:28 -!- rbarraud [~rbarraud@ip-58-28-154-210.static-xdsl.xnet.co.nz] has quit [Read error: Connection reset by peer] 22:22:46 rbarraud [~rbarraud@ip-58-28-154-210.static-xdsl.xnet.co.nz] has joined #scheme 22:28:49 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Quit: Computer has gone to sleep.] 22:36:21 arbn [~arbn@pool-74-98-200-128.pitbpa.fios.verizon.net] has joined #scheme 22:36:44 Sorella [~quildreen@187-127-252-15.user.veloxzone.com.br] has joined #scheme 22:36:44 -!- Sorella [~quildreen@187-127-252-15.user.veloxzone.com.br] has quit [Changing host] 22:36:44 Sorella [~quildreen@oftn/member/Sorella] has joined #scheme 22:36:49 -!- poisonarms [~poisonarm@cpe-70-116-22-88.austin.res.rr.com] has quit [Quit: Computer has gone to sleep] 22:40:37 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 276 seconds] 22:41:29 githogori [~githogori@c-50-131-15-16.hsd1.ca.comcast.net] has joined #scheme 22:49:40 -!- Zeedox [DanDan@h-208-182.a176.priv.bahnhof.se] has quit [Quit: Leaving] 22:51:28 -!- Euthydemus [~euthydemu@unaffiliated/euthydemus] has quit [Ping timeout: 272 seconds] 22:51:56 -!- adu [~ajr@pool-173-66-16-10.washdc.fios.verizon.net] has quit [Quit: adu] 22:52:05 -!- mucker [~mucker@183.83.240.198] has quit [Ping timeout: 248 seconds] 22:58:38 -!- realitygrill [realitygri@nat/hackerschool.com/x-ipxcoalltkzsxcxc] has quit [Quit: Computer has gone to sleep] 23:04:21 -!- rbarraud [~rbarraud@ip-58-28-154-210.static-xdsl.xnet.co.nz] has quit [Read error: Connection reset by peer] 23:05:46 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Quit: Leaving] 23:12:04 jrslepak [~jrslepak@c-71-233-148-123.hsd1.ma.comcast.net] has joined #scheme 23:14:54 -!- peterhil [~peterhil@91-157-48-51.elisa-laajakaista.fi] has quit [Ping timeout: 272 seconds] 23:24:46 realitygrill [realitygri@nat/hackerschool.com/x-havomlfttgxbkshr] has joined #scheme 23:29:44 -!- realitygrill [realitygri@nat/hackerschool.com/x-havomlfttgxbkshr] has quit [Ping timeout: 246 seconds] 23:30:15 Euthydemus [~euthydemu@unaffiliated/euthydemus] has joined #scheme 23:31:42 fantazo [~fantazo@91.119.203.251] has joined #scheme 23:43:58 ijp` [~user@host86-167-251-157.range86-167.btcentralplus.com] has joined #scheme 23:45:29 -!- ijp [~user@host109-151-49-60.range109-151.btcentralplus.com] has quit [Ping timeout: 246 seconds] 23:47:33 -!- jonrafkind [~jon@racket/jonrafkind] has quit [Ping timeout: 248 seconds] 23:48:12 -!- phao [phao@177.160.86.120] has quit [Read error: Connection reset by peer] 23:52:35 dnolen [~user@cpe-98-14-92-234.nyc.res.rr.com] has joined #scheme 23:57:59 -!- carleastlund [~cce@gotham.ccs.neu.edu] has quit [Quit: carleastlund] 23:58:01 -!- dtm` [~dtm@adsl-67-121-157-253.dsl.pltn13.pacbell.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]