00:02:41 -!- foof` [~user@li126-140.members.linode.com] has quit [Ping timeout: 260 seconds] 00:03:36 foof` [~user@li126-140.members.linode.com] has joined #scheme 00:18:48 -!- soveran [~soveran@186.19.214.247] has quit [Remote host closed the connection] 00:21:30 -!- Nisstyre [~yours@c-208-90-102-250.netflash.net] has quit [Quit: Leaving] 00:25:25 -!- cdidd [~cdidd@95-26-190-29.broadband.corbina.ru] has quit [Remote host closed the connection] 00:27:16 Nisstyre [~yours@c-208-90-102-250.netflash.net] has joined #scheme 00:32:55 Arafangion [~Arafangio@220-244-108-23.static.tpgi.com.au] has joined #scheme 00:39:15 -!- groovy2shoes [~cory@unaffiliated/groovebot] has quit [Read error: Connection reset by peer] 00:42:48 -!- peterhil [~peterhil@xdsl-77-86-196-131.nebulazone.fi] has quit [Ping timeout: 252 seconds] 00:48:16 -!- githogori [~githogori@118-169-179-19.dynamic.hinet.net] has quit [Ping timeout: 276 seconds] 00:52:22 -!- miql [~miql@ip98-165-228-225.ph.ph.cox.net] has quit [Quit: Lost terminal] 01:02:06 turbofail [~user@99-121-57-65.lightspeed.sntcca.sbcglobal.net] has joined #scheme 01:02:15 -!- qu1j0t3 is now known as FurnaceBoy 01:03:15 -!- foof` [~user@li126-140.members.linode.com] has quit [Ping timeout: 240 seconds] 01:04:09 foof` [~user@li126-140.members.linode.com] has joined #scheme 01:10:52 groovy2shoes [~cory@unaffiliated/groovebot] has joined #scheme 01:13:49 h4lfl1ng [636e90fb@gateway/web/freenode/ip.99.110.144.251] has joined #scheme 01:13:58 Hell all 01:14:02 Hello* 01:17:33 This is my problem: with the following "factorial" procedure I get correct output, but it's apended with #{Unspecified} http://pastie.org/3417529 01:18:02 The only thing I could think of was if I only had one condition to the IF statement, but I have two. 01:18:56 dnolen [~user@p72-0-226-118-static.acedsl.com] has joined #scheme 01:19:23 homie [~levgue@xdsl-78-35-178-2.netcologne.de] has joined #scheme 01:20:13 Maybe it's because I'm using (display result)? I don't know any other way to return the result. 01:20:14 the last thing your factorial does in the non-trivial case is call display, which has an unspecified return value 01:20:38 -!- copumpkin [~copumpkin@unaffiliated/pumpkingod] has quit [Quit: Computer has gone to sleep.] 01:21:27 in scheme, the return value of the last expression is the return value for the whole procedure 01:22:08 and for the love of $deity, please read http://mumble.net/~campbell/scheme/style.txt 01:23:47 ijp: how do i specify a return type? 01:23:56 you don't 01:24:27 ijp: so what can i do? 01:24:39 the value of the last expression, is the one returned 01:25:32 ijp: but if i remove the display i get #t as output 01:26:58 h4lfl1ng: where are you learning scheme from? 01:28:26 ijp: Just the web, were ever I can find tutorials 01:28:35 it's a bad tutorial 01:28:54 +1 01:29:23 +2 01:29:34 ijp: I havent been following any specific tutorial, i'm just trying to do my Programming Languages homework, and the book doesn't give any help so I'm googling 01:30:00 h4lfl1ng: try "Programming in Scheme," Abelson and Eisenberg 01:30:32 h4lfl1ng: or, http://www.scheme.com/tspl3/ 01:30:50 FurnaceBoy: Thanks for the recommendation, book will have to wait, but I can use the link 01:31:26 h4lfl1ng: or http://www.cs.berkeley.edu/~bh/ss-toc2.html 01:32:05 http://people.csail.mit.edu/jaffer/r5rs_6.html#SEC36 01:32:27 If evaluates to a true value, then the s are evaluated from left to right and the value(s) of the last is(are) returned. If no s are present, then the value of the `do' expression is unspecified. 01:33:31 -!- RomyRomy [~stickycak@cpe-69-203-115-155.nyc.res.rr.com] has quit [Quit: RomyRomy] 01:33:35 the last sentence is the important one here 01:35:07 ((> i n)) <- no expressions after the test, therefore your return value is up to the implementation 01:35:41 *aspect* notes that it seems pretty unlikely that homework would call for an iterative version of factorial using set! 01:36:20 aspect: particularly in a Programming Languages class 01:36:35 aspect: actually I'm making a Binomail Coefficient procedure, but I must use a loop to the the factorial part first 01:37:19 ijp: is set! my last expression? If so, what can I use instead of it? 01:37:29 no, that's in the body 01:37:46 (define (factorial x) (if (zero? x) 1 (* x (factorial (- x 1))))) 01:38:33 ijp: I know how to do that, but i first must use a non-recursive looping method to do it 01:38:48 h4lfl1ng: it will be recursive, but linear recursive. 01:38:51 better not look under the hood at the definition of do then 01:39:05 -!- dan64 [~dan64@c-71-206-193-42.hsd1.pa.comcast.net] has quit [Read error: Connection reset by peer] 01:39:11 h4lfl1ng: in scheme _all_ looping is recursive 01:39:18 h4lfl1ng: or rather, iterative through recursion. 01:39:23 just some recursive calls are cheaper than others 01:39:29 *FurnaceBoy* corrects self, not ijp 01:40:29 ijp: ah, i'm not a fan of this book.. 01:40:54 dan64 [~dan64@c-71-206-193-42.hsd1.pa.comcast.net] has joined #scheme 01:41:56 well it's a reference, not a tutorial 01:44:28 anyway, if you want to return a value from a do expression, it needs to come after the test 01:44:45 ((> i n) result) 01:47:37 I've read several things on if from mit and none said anything about that :/ Thanks ijp! 01:47:40 but really, this is far from idiomatic scheme 01:48:11 for one, there is really no need to use mutation 01:49:03 just update it in the do form like you did with i 01:49:11 ijp: where am i using mutation? 01:49:15 set! 01:49:21 (do ((i 1 (+ i 1)) (result 1 (* result i))) ((> i n) result)) 01:50:19 ijp: why is result taking 1 and the other value? 01:51:07 it isn't, it binds result to 1 initially, and updates it by multiplying by i each time round the loop 01:52:09 ijp: what's that called, formally? 01:52:31 er, looping? 01:52:47 copumpkin [~copumpkin@unaffiliated/pumpkingod] has joined #scheme 01:53:02 compare with for (result=1;;result *= i) 01:53:04 ijp: so that syntax would only work in a loop, right? 01:54:13 right, 'do' is a special form 01:54:34 generally (foo bar baz) means apply foo to arguments bar and baz 01:54:58 also, your special case for zero? is unnecessary 01:55:18 ijp: how so? 01:55:28 it's covered by the test in the loop 01:56:21 if n is less than one (> i n) will be true, and the loop will terminate 01:56:54 since i is always >= 1 01:57:22 ijp: so would it return i in that case? 01:57:53 h4lfl1ng_ [636e90fb@gateway/web/freenode/ip.99.110.144.251] has joined #scheme 01:57:54 it would not, no 01:58:16 in (do ((i 1 (+ i 1)) (result 1 (* result i))) ((> i n) result)) then the return value is result, which is 1 initially 01:58:46 oh, ok 02:00:58 so why define result in let binding and then also in the do loop? 02:01:17 i mean assign a value 02:01:39 you can get rid of the let 02:01:41 -!- h4lfl1ng [636e90fb@gateway/web/freenode/ip.99.110.144.251] has quit [Ping timeout: 245 seconds] 02:02:46 -!- foof` [~user@li126-140.members.linode.com] has quit [Ping timeout: 255 seconds] 02:03:02 so (result 1 (..)) binds the var and assigns it? 02:03:22 yes 02:04:52 foof` [~user@li126-140.members.linode.com] has joined #scheme 02:05:40 -!- homie [~levgue@xdsl-78-35-178-2.netcologne.de] has quit [Remote host closed the connection] 02:06:50 -!- kk` [~kk@unaffiliated/kk/x-5380134] has quit [Quit: Leaving] 02:06:52 that's very convenient..spent like 45 minutes looking how to bind an additional variable and then set it..this is much easier.. instead of let/set! 02:10:00 -!- mmc1 [~michal@178-85-131-65.dynamic.upc.nl] has quit [Remote host closed the connection] 02:13:06 homie [~levgue@xdsl-78-35-178-2.netcologne.de] has joined #scheme 02:14:46 i'm having trouble understanding the apply function. what is the difference between (apply f . lst) and (f . lst) ? 02:15:16 dzlk [~dzlk@vc138.vc.panix.com] has joined #scheme 02:15:39 (apply f lst) == (f . lst) 02:16:06 The former is legal, the later is not. 02:16:07 except that the latter isn't syntactically valid scheme :P 02:16:16 pjb: the former isn't either 02:16:36 rudybot: (let ((f +) (lst '(1 2 3))) (apply f lst)) 02:16:36 pjb: your r5rs sandbox is ready 02:16:36 pjb: ; Value: 6 02:16:45 wait, suppose i have +. (apply + (3 5)) == (+ 3 5) 02:16:47 rudybot: (let ((f +) (lst '(1 2 3))) (f . lst)) 02:16:48 pjb: error: #:1:28: application: bad syntax in: (f . lst) 02:17:02 pjb: note his first one had a dot too 02:17:07 it would be then (apply + (3 5)) = (append + (3 5)) 02:17:24 er, no 02:17:30 actually it would be the computation of that 02:17:33 (apply + (3 5)) = (+ 3 5) 02:17:51 bigfg: append doesn't take a procedures as its first argument 02:18:01 append (+) (3 5) 02:18:12 02:18:31 (apply + (3 5)) is not legal. (3 is not a procedure). 02:18:49 (apply (+) '(3 5)) 02:19:10 (apply (+) '(3 5)) is not legal, (+) doesn't return a procedure. 02:19:18 apply is a macro right? you get a procedure that takes a list of arguments, then cons all that and compute it 02:19:28 bigfg: no, apply is a procedure 02:19:37 rudybot: eval apply 02:19:37 ijp: ; Value: # 02:20:11 god this is awful. i'm reading r5rs and i'm up to the point of apply and i don't see the reason. i don't even understand what it does to be honest :| 02:20:31 http://pastie.org/3417529 Do my answers look correct? Because I think I'm miss understanding the instructions.. 02:20:41 it's really quite simple, it takes a procedure, and a list of arguments, and it applies said procedure to the arguments 02:20:42 bigfg: try to implement map! 02:20:53 rudybot: eval (define l '(1 2 3 4)) 02:20:53 ijp: Done. 02:21:00 rudybot: eval (apply + l) 02:21:00 ijp: ; Value: 10 02:21:47 rudybot: eval ((lambda (x) (x + '(1 2 3))) apply) 02:21:47 ijp: ; Value: 6 02:22:20 if apply were a macro, I agree, there'd be little point in it 02:26:32 h4lfl1ng_: looks alright to me, though, as I said earlier, the check for zero in the iterative factorial is unnecessary 02:27:39 though, I think you may be misunderstanding the second one 02:28:14 RomyRomy [~stickycak@cpe-69-203-115-155.nyc.res.rr.com] has joined #scheme 02:28:14 my question i guess then would be, how to do it other way? is this correct: (define (apply f g) (unquote (cons (quote f) g)))) ? 02:29:09 not really 02:29:35 for a start, using an unquote there is an error 02:30:35 ijp: I'm adding conditionals for B(n,0) and B(n,n) for the second..i think that's all that's missing 02:30:52 h4lfl1ng_: the second one is supposed to be a recursive function 02:31:32 soveran [~soveran@186.19.214.247] has joined #scheme 02:31:56 it isn't supposed to use the B implemented in (a) 02:34:46 sorry, eval not unquote 02:35:17 bigfg: it's still somewhat problematic, but closer 02:35:45 this should be doable but i can't see what else to do 02:35:54 ijp: Yeah, that's what I thought too, then i noticed that the function was being done in the recurrence :) fixed now. Only like 5 more problems to go.. 02:35:59 to eval, you need a list with (oper . args) right? 02:36:20 bigfg: is your question, how do you implement apply in scheme? 02:36:27 yes 02:37:37 -!- copumpkin [~copumpkin@unaffiliated/pumpkingod] has quit [Changing host] 02:37:38 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 02:38:55 short answer, you can't 02:39:11 :| 02:39:13 for me, noticing that the list data type and the form of a procedure with arguments supplied was an original "aha" moment. the consequent "aha" was that what apply does is function composition. 02:39:30 maybe that's too abstract to be useful here :) 02:39:51 er, that list and procedure were formally interchangeable. 02:40:17 the list data type interchangeable with the procedure? 02:40:29 you mean f (list ...) = (list f ... ) ? 02:44:00 not with the procedure but with the whole form "procedure with arguments". in other words that there's really no important difference between (list 1 2 3), (+ 1 2 3) and (1 2 3) except that 1 isn't a procedure and so (1 2 3) won't do anything but throw an error. 02:44:39 wait... (+ 1 2 3) is interchangeable with (1 2 3) ? what are you talking about 02:45:09 all of them are just forms that can be evaluated. 02:45:41 so is (car (cons 'a 'b)) and (define pancakes 4) 02:46:43 i don't get your point with the comment, please try to explain 02:47:45 bigfg: i think he means that they are all parsed in the same way, and applying the head is a last step. so the variation occurs on ly at the last fence. 02:48:17 bigfg: (list really is the same as (+ 02:48:21 bigfg: for example 02:48:35 i don't see why or how 02:48:36 I'm with bigfg, this analogy seems suspect 02:48:41 (list 1 2 3) == (+ 1 2 3) ? 02:48:45 bigfg: no. 02:48:49 bigfg: the same kind of thing. 02:49:20 of course... x++ is a statement just as for(int i=1;i eh, nm :) 02:49:36 *FurnaceBoy* leaves dzlk to deal with it 02:49:39 sorry but it is confusing 02:49:53 *FurnaceBoy* reads back a bit further 02:50:40 bigfg: well i guess he's pointing out the structural similarity, which doesn't exist in most other languages. for example, a list literal in SML has no structural equivalence to function application there. 02:51:06 bigfg: application is an afterthought to the list form 02:51:20 bigfg: just an extra evaluation step 02:51:35 (define-syntax apply (syntax-rules () ((_ op oper) (op oper)))) <= ?? 02:52:15 -!- foof` [~user@li126-140.members.linode.com] has quit [Ping timeout: 240 seconds] 02:52:20 not what i meant, no. 02:52:36 application as part of evaluation 02:52:47 point being that thinking of a list as just a function (with a particular result) makes it easier to see that apply is basically a function composition operator, which maybe helps clarify why it's there in the language and why it's as primitive as it is. 02:53:32 and as I said maybe that's just an unhelpful theoretical tangent :) 02:53:53 foof` [~user@li126-140.members.linode.com] has joined #scheme 02:54:01 so is there no way at all to make it work, procedure or macro? 02:54:03 dzlk: again, I'm still not seeing it 02:54:23 (btw the macro i just wrote is not working because it gets this: (+ (3 4)) instead of (+ 3 4) 02:54:38 bigfg: 1. If it's a macro, it's not apply 02:54:46 i guess i could do it by making a recursive sort of macro 02:54:50 lemme try... 02:54:53 bigfg: 2. AS a macro, it is fundamentally less useful 02:55:06 actually, as a macro, it is useless 02:55:10 what's the problem with macros? 02:55:29 i'm just learning as i said, i'm barely on the syntactic questions 02:55:30 because the arguments can no longer be arbitrary evaluable forms 02:55:57 what do you mean? is there any way a macro wouldn't work? apply has a procedure and a list as arguments 02:56:11 consider (apply + (iota 10)) 02:56:23 in my interpration, we sum the result of iota 10 02:56:36 in your interpretation, we have an error 02:56:51 in a rewrite that is not a list, it is a value... or is it a list? 02:56:55 since you are trying to add a function to a number 02:57:13 two, as a macro, it is a completely redundant form 02:57:14 wouldn't the problem be if you had (apply + '(iota 10)) ? 02:57:35 -!- tuubow_ [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has quit [Ping timeout: 240 seconds] 02:58:30 well do the rewrite, (apply + (iota 10)) => (+ iota 10) 02:58:39 well do the rewrite, (apply + '(iota 10)) => (+ quote (iota 10)) 02:58:49 ah the perils of M-p 02:59:24 in the first case, you get an error instead of a result 02:59:27 but you have to eval those first, or can you capture 'live' operators? 02:59:32 in the second, you just get a different error 02:59:58 bigfg: now you are mixing levels 03:00:00 damn you're right 03:00:21 *bigfg* thinks harder... probably need to program real things instead of worrying to trick the interpreter 03:00:53 ijp: where do you think the analogy falls down? (not that I'm eager to defend it, just asking because I'm willing to be educated if proven confused.) 03:06:32 tuubow_ [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has joined #scheme 03:07:49 ok, I think I see what you are getting at, but let me check 03:07:52 bigfg: :) 03:08:08 take a list '(a b c), you are saying to represent it as (lambda (_) '(a b c)) 03:08:38 then (apply f '(a b c)) becomes (compose f (lambda (_) '(a b c))) 03:09:13 -!- GoKhlaYeh [~GoKhlaYeh@135.51.68.86.rev.sfr.net] has quit [Ping timeout: 252 seconds] 03:09:34 which is equivalent to (lambda (_) (f (lambda (_) ('(a b c) _)))) and therefore (lambda (_) (f '(a b c))) 03:10:13 do I understand you correctly? 03:10:51 then the analogy breaks down because you are only applying f to one argument 03:11:16 -!- RomyRomy [~stickycak@cpe-69-203-115-155.nyc.res.rr.com] has quit [Quit: RomyRomy] 03:11:33 oops, I made a mistake in my substitution 03:14:18 (compose f (lambda (_) '(a b c))) is equivalent to (lambda (x) (f ((lambda (_) '(a b c)) x)) f), though that still reduces to (lambda (x) (f '(a b c))) 03:16:56 that's in the right neighborhood but the quotations are distracting me a little, I'm not sure how they fit in. the way I'd put it is, we can understand (a b c) as the evaluation of (list a b c), so for ((g (x y z) ...) a b c) where g == #, (apply f (g a b c)) is the composition of f and g. 03:17:39 -!- MrFahrenheit [~RageOfTho@users-38-111.vinet.ba] has quit [Ping timeout: 245 seconds] 03:23:42 -!- groovy2shoes [~cory@unaffiliated/groovebot] has quit [Quit: It is now safe to turn off your groovebot.] 03:24:12 -!- X-Scale [email@sgi-ultra64.broker.freenet6.net] has quit [Ping timeout: 272 seconds] 03:24:53 let me get this straight, are you suggesting (apply f (g args ...)) = ((compose f g) args ...) 03:30:11 oh, no, just that conceptually they're in roughly the same class of operation. 03:32:32 well, composition doesn't "splice", and any analogy I try and see with between it and apply is blocked by this 03:35:00 that seems fair, although I'm not sure exactly what you mean by "splice" -- meaning that f is stuck into the head position of the list given by g? 03:36:53 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Read error: Operation timed out] 03:37:40 preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #scheme 03:38:18 -!- h4lfl1ng_ [636e90fb@gateway/web/freenode/ip.99.110.144.251] has quit [Quit: Page closed] 03:38:44 sort of, but I was thinking the other way around 03:40:46 pulling out from a list, rather than pushing into one 03:41:21 though it's two sides of the same coin really 03:43:02 hm, as in, we could say we're pushing f onto the result of g or we could say we're pulling g out of a list by evaluating it? that makes sense. 03:44:25 -!- masm [~masm@bl17-195-24.dsl.telepac.pt] has quit [Quit: Leaving.] 03:45:38 -!- turbofail [~user@99-121-57-65.lightspeed.sntcca.sbcglobal.net] has quit [Ping timeout: 240 seconds] 03:48:20 I guess I'd say that makes apply a composition of functions of a specific type (and with specific behaviors) where compose is more general, rather than calling it a strict disanalogy, but I see your point. 03:50:22 -!- foof` [~user@li126-140.members.linode.com] has quit [Ping timeout: 255 seconds] 03:52:13 -!- ijp [~user@host86-151-72-142.range86-151.btcentralplus.com] has quit [Ping timeout: 276 seconds] 03:53:20 foof` [~user@li126-140.members.linode.com] has joined #scheme 03:55:18 -!- ada2358 [~ada2358@login.ccs.neu.edu] has quit [Read error: Operation timed out] 03:58:40 ada2358 [~ada2358@login.ccs.neu.edu] has joined #scheme 04:00:46 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Quit: Leaving] 04:07:35 -!- woonie [~woonie@nusnet-214-18.dynip.nus.edu.sg] has quit [Ping timeout: 240 seconds] 04:09:35 ijp [~user@host86-151-72-142.range86-151.btcentralplus.com] has joined #scheme 04:11:25 -!- jonrafkind [~jon@jonr5.dsl.xmission.com] has quit [Ping timeout: 265 seconds] 04:16:21 -!- CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has quit [Quit: leaving] 04:19:06 completely mindblowing video of a programming editor with real-time feedback: http://vimeo.com/36579366 04:19:19 -!- dzlk [~dzlk@vc138.vc.panix.com] has left #scheme 04:26:43 ThePawnBreak [~quassel@94.177.108.25] has joined #scheme 04:34:34 attila_lendvai [~attila_le@87.247.13.219] has joined #scheme 04:34:34 -!- attila_lendvai [~attila_le@87.247.13.219] has quit [Changing host] 04:34:34 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #scheme 04:37:08 -!- Nisstyre [~yours@c-208-90-102-250.netflash.net] has quit [Ping timeout: 240 seconds] 04:37:55 -!- foof` [~user@li126-140.members.linode.com] has quit [Ping timeout: 240 seconds] 04:39:23 Nisstyre [~yours@c-208-90-102-250.netflash.net] has joined #scheme 04:39:52 foof` [~user@li126-140.members.linode.com] has joined #scheme 04:51:22 -!- ThePawnBreak [~quassel@94.177.108.25] has quit [Ping timeout: 276 seconds] 04:56:18 -!- soveran [~soveran@186.19.214.247] has quit [Remote host closed the connection] 05:04:07 leo2007 [~leo@119.255.41.67] has joined #scheme 05:21:08 -!- stchang [~stchang@syrah.ccs.neu.edu] has quit [Read error: Operation timed out] 05:23:59 stchang [~stchang@syrah.ccs.neu.edu] has joined #scheme 05:24:30 soveran [~soveran@186.19.214.247] has joined #scheme 05:30:00 -!- xwl_ [user@nat/nokia/x-gxpdjoedarnwlozr] has quit [Ping timeout: 244 seconds] 05:32:54 adu [~ajr@pool-72-83-26-98.washdc.fios.verizon.net] has joined #scheme 05:32:54 -!- Enoria [~Enoria@jte.kidradd.org] has quit [Ping timeout: 245 seconds] 05:58:37 -!- foof` [~user@li126-140.members.linode.com] has quit [Read error: Connection reset by peer] 05:58:47 foof` [~user@li126-140.members.linode.com] has joined #scheme 06:00:56 araujo [~araujo@190.73.44.29] has joined #scheme 06:00:56 -!- araujo [~araujo@190.73.44.29] has quit [Changing host] 06:00:56 araujo [~araujo@gentoo/developer/araujo] has joined #scheme 06:03:07 phao [phao@187.91.116.4] has joined #scheme 06:05:02 -!- Nisstyre [~yours@c-208-90-102-250.netflash.net] has quit [Quit: Leaving] 06:08:59 -!- soveran [~soveran@186.19.214.247] has quit [Remote host closed the connection] 06:12:22 -!- EmmanuelOga [~emmanuel@190.244.3.40] has quit [Ping timeout: 244 seconds] 06:17:00 tom_i [~thomasing@ingserv.demon.co.uk] has joined #scheme 06:18:32 -!- dnolen [~user@p72-0-226-118-static.acedsl.com] has quit [Ping timeout: 265 seconds] 06:21:30 -!- sharkbird [~sharkbird@67-220-6-139.usiwireless.com] has quit [Ping timeout: 260 seconds] 06:22:07 cswords_ [~cswords@c-98-223-234-80.hsd1.in.comcast.net] has joined #scheme 06:22:21 jewel [~jewel@196-209-248-121.dynamic.isadsl.co.za] has joined #scheme 06:25:18 -!- cswords [~cswords@c-98-223-234-80.hsd1.in.comcast.net] has quit [Ping timeout: 265 seconds] 06:31:24 gravicappa [~gravicapp@ppp91-77-186-146.pppoe.mtu-net.ru] has joined #scheme 06:33:10 MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has joined #scheme 06:33:56 turbofail [~user@99-121-57-65.lightspeed.sntcca.sbcglobal.net] has joined #scheme 06:36:42 -!- homie [~levgue@xdsl-78-35-178-2.netcologne.de] has quit [Remote host closed the connection] 06:38:10 homie [~levgue@xdsl-78-35-178-2.netcologne.de] has joined #scheme 06:39:07 re: implementing apply in scheme, you could do something vaguely like that if you were willing to implement all functions as curried single-argument functions 06:48:49 toekutr [~user@50-0-51-2.dsl.static.sonic.net] has joined #scheme 07:04:51 soveran [~soveran@186.19.214.247] has joined #scheme 07:10:15 jeapostrophe [~jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 07:12:50 -!- gravicappa [~gravicapp@ppp91-77-186-146.pppoe.mtu-net.ru] has quit [Read error: Connection reset by peer] 07:14:18 -!- soveran [~soveran@186.19.214.247] has quit [Remote host closed the connection] 07:14:35 -!- jewel [~jewel@196-209-248-121.dynamic.isadsl.co.za] has quit [Ping timeout: 240 seconds] 07:18:55 -!- foof` [~user@li126-140.members.linode.com] has quit [Ping timeout: 240 seconds] 07:20:16 -!- jeapostrophe [~jay@69.169.141.110.provo.static.broadweavenetworks.net] has quit [Ping timeout: 252 seconds] 07:20:48 foof` [~user@li126-140.members.linode.com] has joined #scheme 07:37:05 hi 07:38:21 hkBst [~marijn@79.170.210.172] has joined #scheme 07:38:21 -!- hkBst [~marijn@79.170.210.172] has quit [Changing host] 07:38:21 hkBst [~marijn@gentoo/developer/hkbst] has joined #scheme 07:38:40 cdidd [~cdidd@93-80-238-239.broadband.corbina.ru] has joined #scheme 07:39:50 I have a correction for R7RS 07:42:31 -!- homie [~levgue@xdsl-78-35-178-2.netcologne.de] has quit [Remote host closed the connection] 07:44:00 homie [~levgue@xdsl-78-35-178-2.netcologne.de] has joined #scheme 07:44:35 gravicappa [~gravicapp@ppp91-77-174-195.pppoe.mtu-net.ru] has joined #scheme 07:45:52 which mit sicp lectures correspond to which sections of the text? 07:46:26 -!- homie [~levgue@xdsl-78-35-178-2.netcologne.de] has quit [Remote host closed the connection] 07:47:20 ahinki [~chatzilla@212.99.10.150] has joined #scheme 07:47:55 homie [~levgue@xdsl-78-35-178-2.netcologne.de] has joined #scheme 07:57:58 djcb [djcb@nat/nokia/x-ivqhmywmblwuyoan] has joined #scheme 08:00:56 xwl_ [user@nat/nokia/x-tjunmjszxrphweyx] has joined #scheme 08:07:11 -!- realitygrill [~realitygr@76.226.98.39] has quit [Quit: realitygrill] 08:09:07 -!- toekutr [~user@50-0-51-2.dsl.static.sonic.net] has quit [Remote host closed the connection] 08:16:16 -!- virl [~virl__@85-127-92-121.dynamic.xdsl-line.inode.at] has quit [Remote host closed the connection] 08:22:39 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Remote host closed the connection] 08:23:03 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 08:32:13 chromaticwt, that's said in the beginning of the videos 08:33:33 woonie [~woonie@137.132.27.53] has joined #scheme 08:38:32 kpal [~kpal@janus-nat-128-240-225-120.ncl.ac.uk] has joined #scheme 08:41:23 -!- MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has left #scheme 08:42:28 -!- foof` [~user@li126-140.members.linode.com] has quit [Ping timeout: 240 seconds] 08:45:08 foof` [~user@li126-140.members.linode.com] has joined #scheme 08:46:08 -!- _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has quit [Ping timeout: 240 seconds] 08:55:31 ok 09:00:50 tomodo [~tomodo@gateway/tor-sasl/tomodo] has joined #scheme 09:02:55 -!- dme [~dme@hotblack-desiato.hh.sledj.net] has quit [Ping timeout: 240 seconds] 09:08:01 wingo [~wingo@90.163.25.173] has joined #scheme 09:43:35 dzhus [~sphinx@95-25-98-203.broadband.corbina.ru] has joined #scheme 09:46:57 -!- djcb [djcb@nat/nokia/x-ivqhmywmblwuyoan] has quit [Remote host closed the connection] 09:47:46 -!- tom_i [~thomasing@ingserv.demon.co.uk] has quit [Ping timeout: 276 seconds] 09:47:47 djcb [djcb@nat/nokia/x-mlhjxsrhpxnbtnoi] has joined #scheme 09:48:11 DGASAU [~user@91.218.144.129] has joined #scheme 10:03:21 kuribas [~user@d54C43316.access.telenet.be] has joined #scheme 10:04:22 Razz_ [~tim@kompiler.org] has joined #scheme 10:04:25 -!- pothos [~pothos@114-36-239-110.dynamic.hinet.net] has quit [*.net *.split] 10:04:25 -!- amoe [~amoe@host-92-24-170-243.ppp.as43234.net] has quit [*.net *.split] 10:04:25 -!- zedstar_ [~john@zedstar.com] has quit [*.net *.split] 10:04:25 -!- bleakgadfly [~bleakgadf@168.81-166-171.customer.lyse.net] has quit [*.net *.split] 10:04:25 -!- eli [~eli@winooski.ccs.neu.edu] has quit [*.net *.split] 10:04:25 -!- micro___ [~micro@www.bway.net] has quit [*.net *.split] 10:04:25 -!- Razz [~tim@kompiler.org] has quit [*.net *.split] 10:04:25 -!- gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has quit [*.net *.split] 10:04:33 amoe_ [~amoe@host-92-24-170-243.ppp.as43234.net] has joined #scheme 10:05:40 micro__ [~micro@www.bway.net] has joined #scheme 10:05:51 bleakgadfly [~bleakgadf@168.81-166-171.customer.lyse.net] has joined #scheme 10:06:04 pothos [~pothos@114-36-239-110.dynamic.hinet.net] has joined #scheme 10:06:07 -!- micro__ is now known as Guest59198 10:08:05 -!- webben [~benjamin@173-203-84-17.static.cloud-ips.com] has quit [Quit: WeeChat 0.3.6-dev] 10:09:19 gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has joined #scheme 10:09:20 zedstar [~john@zedstar.com] has joined #scheme 10:09:21 -!- zedstar [~john@zedstar.com] has quit [Changing host] 10:09:21 zedstar [~john@fsf/member/zedstar] has joined #scheme 10:09:52 -!- sawjig [~sawjig@gateway/tor-sasl/sawjig] has quit [Ping timeout: 276 seconds] 10:10:18 -!- woonie [~woonie@137.132.27.53] has quit [Ping timeout: 255 seconds] 10:11:45 sawjig [~sawjig@gateway/tor-sasl/sawjig] has joined #scheme 10:12:01 woonie [~woonie@137.132.27.53] has joined #scheme 10:12:02 bfgun [~b_fin_g@r190-135-1-120.dialup.adsl.anteldata.net.uy] has joined #scheme 10:12:31 -!- phao [phao@187.91.116.4] has quit [Quit: Not Here] 10:13:05 phao [phao@187.91.116.4] has joined #scheme 10:13:52 eli [~eli@winooski.ccs.neu.edu] has joined #scheme 10:15:28 -!- bigfg [~b_fin_g@r186-52-184-81.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 240 seconds] 10:19:14 -!- woonie [~woonie@137.132.27.53] has quit [Ping timeout: 265 seconds] 10:20:10 -!- kpal [~kpal@janus-nat-128-240-225-120.ncl.ac.uk] has quit [Quit: Lost terminal] 10:20:29 -!- foof` [~user@li126-140.members.linode.com] has quit [Ping timeout: 260 seconds] 10:23:16 foof` [~user@li126-140.members.linode.com] has joined #scheme 10:25:01 -!- adu [~ajr@pool-72-83-26-98.washdc.fios.verizon.net] has quit [Quit: adu] 10:30:48 -!- phao [phao@187.91.116.4] has quit [Quit: Not Here] 10:32:43 masm [~masm@bl17-195-24.dsl.telepac.pt] has joined #scheme 10:33:49 -!- YokYok [~david@vmailbox.org] has quit [Quit: leaving] 10:38:23 can scheme be compiled? does it need an interpreter? could scheme be used to write an operating system kernel? 10:38:36 I've read about chicken a bit. 10:38:37 yes, yes and yes 10:39:20 neat 10:39:22 well yes, no and yes 10:39:43 Define "compiler" and "interpreter" at this point 10:39:50 It's all a bit vague and hazy 10:41:30 rostayob [~rostayob@host217-42-34-155.range217-42.btcentralplus.com] has joined #scheme 10:42:31 does scheme need a scheme process running to interpret the scheme code, or can it be compiled into code that just runs on its own? if that makes sense. 10:43:02 If you simply compile/linked an interpreter alongside the source code, would that count? 10:44:08 chicken compiles scheme to C right? 10:44:13 some do 10:44:29 this is all implementation specific 10:44:39 chicken does compile to C yes 10:44:48 how does chicken work, basically? does it comple code that works on its own, or code that needs some sort of interpreter? 10:44:58 chicken also has an interpreter 10:45:20 If you want to support (eval ...) you need some sort of basic interpreter in the final binary 10:45:29 ok 10:45:36 Any compiled Scheme binary will be some blend of interpreter + compiled code 10:47:03 bit-c seems interesting, it was originally a low-level lispyish language. 10:47:07 chromaticwt: well you need to link a runtime lib to it that provides primitives and a library in C 10:47:31 chromaticwt: but as LeoNerd said, eval is in principle an interpreter 10:48:31 chromaticwt: but a compiler opens up other issues such as the separation of compilation and runtime, which is more evident in a comiler 10:49:20 It's much harder to define for Scheme as compared, say, C. With a C program there is a definite compile time, during which no runtime code is used, followed by a runtime, during which the compiler is not used. 10:49:46 Whereas, consider with Scheme you have macros that can execute runtime code within the "compiler", and you have read + eval, which can invoke the "compiler" during runtime. 10:50:46 ijp` [~user@host86-168-33-92.range86-168.btcentralplus.com] has joined #scheme 10:52:15 -!- ijp [~user@host86-151-72-142.range86-151.btcentralplus.com] has quit [Ping timeout: 240 seconds] 10:54:40 -!- gravicappa [~gravicapp@ppp91-77-174-195.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 10:54:55 tom_i [~thomasing@ingserv.demon.co.uk] has joined #scheme 10:58:19 -!- homie [~levgue@xdsl-78-35-178-2.netcologne.de] has quit [Remote host closed the connection] 10:59:41 homie [~levgue@xdsl-78-35-178-2.netcologne.de] has joined #scheme 11:02:26 ijp`` [~user@host86-177-156-199.range86-177.btcentralplus.com] has joined #scheme 11:03:55 -!- ijp` [~user@host86-168-33-92.range86-168.btcentralplus.com] has quit [Ping timeout: 240 seconds] 11:05:38 -!- shardz_ [~samuel@ilo.staticfree.info] has quit [Ping timeout: 265 seconds] 11:06:35 -!- tuubow_ [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has quit [Ping timeout: 240 seconds] 11:11:08 -!- homie [~levgue@xdsl-78-35-178-2.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:13:21 -!- karswell_ [~coat@93-97-29-243.zone5.bethere.co.uk] has quit [Remote host closed the connection] 11:13:51 karswell_ [~coat@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 11:15:34 homie [~levgue@xdsl-78-35-178-2.netcologne.de] has joined #scheme 11:15:34 -!- leo2007 [~leo@119.255.41.67] has quit [Ping timeout: 245 seconds] 11:15:58 -!- dzhus [~sphinx@95-25-98-203.broadband.corbina.ru] has quit [Remote host closed the connection] 11:18:21 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Ping timeout: 252 seconds] 11:18:47 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 11:23:45 -!- homie [~levgue@xdsl-78-35-178-2.netcologne.de] has quit [Ping timeout: 245 seconds] 11:33:14 homie [~levgue@xdsl-78-35-177-95.netcologne.de] has joined #scheme 11:34:42 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 11:48:23 there are some C interpreters 11:49:07 Yes.. and? 11:49:33 The two parts of the process still occur in logically separate and independent operations 11:49:46 what process? 11:49:48 They might be interleaved in time, but neither one can directly affect the other. 11:49:56 can an interpreter be a kernel for an os? 11:50:00 if that even makes any sense. 11:50:11 chromaticwt: yes, see forth systems 11:50:16 ok 11:50:17 The part of analysing the C syntax to infer its runtime semantic operations, and then the application of those semantic operations against some running state. 11:50:44 The running state cannot influence the compiler (except perhaps by relying on bugs or other things) 11:51:10 well, in a C interpreter there is no compilation step 11:51:16 gravicappa [~gravicapp@80.90.116.82] has joined #scheme 11:51:33 I didn't say compile 11:51:42 I said "analysing the C syntax to infer its runtime semantic operations" 11:51:54 you're talking about influencing the compiler, which doesn't really make sense for a C interpreter 11:52:31 anyway, i think we're pretty much in agreement here 11:52:46 -!- rostayob [~rostayob@host217-42-34-155.range217-42.btcentralplus.com] has quit [Quit: WeeChat 0.3.5] 11:52:48 i just wanted to point out that C was not limited to being compiled 11:53:26 -!- turbofail [~user@99-121-57-65.lightspeed.sntcca.sbcglobal.net] has quit [Ping timeout: 252 seconds] 11:57:46 -!- foof` [~user@li126-140.members.linode.com] has quit [Read error: Connection reset by peer] 12:05:39 woonie [~woonie@nusnet-141-164.dynip.nus.edu.sg] has joined #scheme 12:09:01 tcc runs C immediately. 12:10:24 dme [~dme@host213-120-144-161.in-addr.btopenworld.com] has joined #scheme 12:21:36 leo2007 [~leo@222.130.143.123] has joined #scheme 12:23:29 -!- kvda [~kvda@124-171-36-73.dyn.iinet.net.au] has quit [Quit: x___x] 12:44:43 -!- Razz_ [~tim@kompiler.org] has quit [Read error: Connection reset by peer] 12:49:23 -!- elliottcable is now known as ec 12:52:27 rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has joined #scheme 13:03:09 sharkbird [~sharkbird@67-220-6-139.usiwireless.com] has joined #scheme 13:03:29 -!- riverswain [~avery@67-41-229-111.slkc.qwest.net] has left #scheme 13:09:17 -!- homie [~levgue@xdsl-78-35-177-95.netcologne.de] has quit [Remote host closed the connection] 13:10:46 homie [~levgue@xdsl-78-35-177-95.netcologne.de] has joined #scheme 13:15:09 -!- homie [~levgue@xdsl-78-35-177-95.netcologne.de] has quit [Remote host closed the connection] 13:16:11 attila_lendvai [~attila_le@176.222.150.30] has joined #scheme 13:16:11 -!- attila_lendvai [~attila_le@176.222.150.30] has quit [Changing host] 13:16:11 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #scheme 13:16:34 homie [~levgue@xdsl-78-35-177-95.netcologne.de] has joined #scheme 13:19:49 -!- tom_i [~thomasing@ingserv.demon.co.uk] has quit [Ping timeout: 248 seconds] 13:22:49 -!- ijp`` is now known as ijp 13:28:02 ThePawnBreak [~quassel@94.177.108.25] has joined #scheme 13:29:08 -!- sharkbird [~sharkbird@67-220-6-139.usiwireless.com] has quit [Remote host closed the connection] 13:29:30 sharkbird [~sharkbird@67-220-6-139.usiwireless.com] has joined #scheme 13:31:28 tom_i [~thomasing@ingserv.demon.co.uk] has joined #scheme 13:38:34 githogori [~githogori@60-251-45-163.HINET-IP.hinet.net] has joined #scheme 13:40:05 bzzbzz [~franco@modemcable023.13-56-74.mc.videotron.ca] has joined #scheme 13:42:27 -!- woonie [~woonie@nusnet-141-164.dynip.nus.edu.sg] has quit [Ping timeout: 252 seconds] 13:48:36 airolson [~airolson@CPE00222d55a738-CM00222d55a735.cpe.net.cable.rogers.com] has joined #scheme 13:54:46 -!- homie [~levgue@xdsl-78-35-177-95.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 13:56:04 -!- rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has quit [Read error: Operation timed out] 13:58:45 rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has joined #scheme 14:08:25 -!- rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has quit [Ping timeout: 276 seconds] 14:17:51 MrFahrenheit [~RageOfTho@users-38-111.vinet.ba] has joined #scheme 14:18:13 soveran [~soveran@186.19.214.247] has joined #scheme 14:30:43 pchrist_ [~spirit@gentoo/developer/pchrist] has joined #scheme 14:31:01 jeapostrophe [~jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 14:31:54 rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has joined #scheme 14:33:39 -!- pchrist [~spirit@gentoo/developer/pchrist] has quit [Ping timeout: 260 seconds] 14:47:45 -!- dme [~dme@host213-120-144-161.in-addr.btopenworld.com] has quit [Ping timeout: 252 seconds] 14:52:53 -!- fgudin [~fgudin@odin.sdf-eu.org] has quit [Ping timeout: 252 seconds] 15:02:00 -!- chromaticwt [~user@71-222-151-95.albq.qwest.net] has quit [Remote host closed the connection] 15:03:03 chromaticwt [~user@71-222-151-95.albq.qwest.net] has joined #scheme 15:04:16 Nisstyre [~yours@c-208-90-102-250.netflash.net] has joined #scheme 15:05:11 -!- FurnaceBoy is now known as qu1j0t3 15:15:15 -!- hkBst [~marijn@gentoo/developer/hkbst] has quit [Ping timeout: 240 seconds] 15:21:19 -!- gravicappa [~gravicapp@80.90.116.82] has quit [Remote host closed the connection] 15:26:31 dme [~dme@hotblack-desiato.hh.sledj.net] has joined #scheme 15:28:45 virl [~virl__@85-127-83-75.dynamic.xdsl-line.inode.at] has joined #scheme 15:28:53 somnium [~user@adsl-98-65-182-147.dab.bellsouth.net] has joined #scheme 15:29:25 GoKhlaYeh [~GoKhlaYeh@135.51.68.86.rev.sfr.net] has joined #scheme 15:32:29 -!- somnium [~user@adsl-98-65-182-147.dab.bellsouth.net] has left #scheme 15:37:03 MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has joined #scheme 15:43:17 -!- rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has quit [Ping timeout: 244 seconds] 15:47:10 rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has joined #scheme 15:50:47 jao [~user@pdpc/supporter/professional/jao] has joined #scheme 15:51:01 -!- ahinki [~chatzilla@212.99.10.150] has quit [Quit: ChatZilla 0.9.88 [Firefox 11.0/20120208012847]] 15:58:44 -!- ijp is now known as jjj` 15:58:52 -!- jjj` is now known as ijp 16:00:11 dnolen [~user@cpe-98-14-92-234.nyc.res.rr.com] has joined #scheme 16:01:42 gravicappa [~gravicapp@ppp91-77-174-195.pppoe.mtu-net.ru] has joined #scheme 16:02:06 -!- MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has quit [Ping timeout: 245 seconds] 16:02:07 arcfide [1000@c-71-201-30-15.hsd1.in.comcast.net] has joined #scheme 16:02:41 Hey guys, what's up! 16:02:45 Long time no chat. 16:02:50 jonrafkind [~jon@jonr5.dsl.xmission.com] has joined #scheme 16:03:01 It's been quite a while since I was on here. 16:03:10 I was hoping to catch foof, but I guess he's not around. 16:09:35 -!- jao [~user@pdpc/supporter/professional/jao] has quit [Ping timeout: 240 seconds] 16:11:37 stis [~stis@1-1-1-39a.veo.vs.bostream.se] has joined #scheme 16:12:26 kk` [~kk@77.107.164.131] has joined #scheme 16:12:31 -!- kk` [~kk@77.107.164.131] has quit [Changing host] 16:12:31 kk` [~kk@unaffiliated/kk/x-5380134] has joined #scheme 16:13:38 _schulte_ [~eschulte@adaptive.cs.unm.edu] has joined #scheme 16:15:35 -!- dme [~dme@hotblack-desiato.hh.sledj.net] has quit [Ping timeout: 240 seconds] 16:17:29 realitygrill [~realitygr@adsl-76-226-98-39.dsl.sfldmi.sbcglobal.net] has joined #scheme 16:18:46 -!- brendyn [brendyn@2a01:7e00::f03c:91ff:fedf:65b4] has quit [Ping timeout: 245 seconds] 16:18:57 dzhus [~sphinx@95-25-98-203.broadband.corbina.ru] has joined #scheme 16:23:22 brendyn [brendyn@2a01:7e00::f03c:91ff:fedf:65b4] has joined #scheme 16:32:24 ree2k [~martin@p549D14A4.dip0.t-ipconnect.de] has joined #scheme 16:33:37 condor [~condor@HSI-KBW-46-223-48-7.hsi.kabel-badenwuerttemberg.de] has joined #scheme 16:34:07 -!- ree2k [~martin@p549D14A4.dip0.t-ipconnect.de] has left #scheme 16:35:19 /disconnect 16:35:22 -!- condor [~condor@HSI-KBW-46-223-48-7.hsi.kabel-badenwuerttemberg.de] has quit [Client Quit] 16:35:35 -!- realitygrill [~realitygr@adsl-76-226-98-39.dsl.sfldmi.sbcglobal.net] has quit [Ping timeout: 240 seconds] 16:36:09 realitygrill [~realitygr@adsl-76-226-137-229.dsl.sfldmi.sbcglobal.net] has joined #scheme 16:36:40 -!- karswell_ [~coat@93-97-29-243.zone5.bethere.co.uk] has quit [] 16:38:08 -!- soveran [~soveran@186.19.214.247] has quit [Remote host closed the connection] 16:39:11 -!- ThePawnBreak [~quassel@94.177.108.25] has quit [Read error: Connection reset by peer] 16:41:26 jewel [~jewel@196-209-248-121.dynamic.isadsl.co.za] has joined #scheme 16:42:11 -!- djcb [djcb@nat/nokia/x-mlhjxsrhpxnbtnoi] has quit [Remote host closed the connection] 16:46:20 -!- tokiya [~tokiya@210.24.42.190] has quit [Read error: Connection reset by peer] 16:48:01 tokiya [~tokiya@210.24.42.190] has joined #scheme 16:50:01 ThePawnBreak [~quassel@94.177.108.25] has joined #scheme 16:50:10 -!- ThePawnBreak [~quassel@94.177.108.25] has quit [Remote host closed the connection] 16:51:05 mmc1 [~michal@178-85-131-65.dynamic.upc.nl] has joined #scheme 16:56:26 -!- bfgun [~b_fin_g@r190-135-1-120.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 240 seconds] 17:00:20 karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 17:12:51 tim__ [~tim@kompiler.org] has joined #scheme 17:12:54 -!- tim__ is now known as Razz 17:16:15 -!- kk` [~kk@unaffiliated/kk/x-5380134] has quit [Ping timeout: 240 seconds] 17:16:22 kk`` [~kk@77.107.164.131] has joined #scheme 17:33:37 djcb [~user@a88-114-95-13.elisa-laajakaista.fi] has joined #scheme 17:37:20 shardz [~samuel@ilo.staticfree.info] has joined #scheme 17:41:55 -!- arcfide [1000@c-71-201-30-15.hsd1.in.comcast.net] has quit [Quit: Leaving] 17:42:53 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 17:44:40 snizzo [~quassel@host120-110-dynamic.180-80-r.retail.telecomitalia.it] has joined #scheme 17:45:35 ayberk [~ayberk@88.236.177.185] has joined #scheme 17:49:58 CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has joined #scheme 17:51:32 -!- drwho [~drwho@216-122-174-206.gci.net] has quit [Quit: bbl] 17:53:31 snizzo_ [~quassel@host137-235-dynamic.54-79-r.retail.telecomitalia.it] has joined #scheme 17:53:55 -!- snizzo [~quassel@host120-110-dynamic.180-80-r.retail.telecomitalia.it] has quit [Ping timeout: 240 seconds] 18:00:12 phao [phao@187.91.235.251] has joined #scheme 18:16:51 tuubow_ [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has joined #scheme 18:25:30 bfgun [~b_fin_g@r186-48-240-32.dialup.adsl.anteldata.net.uy] has joined #scheme 18:33:37 -!- stchang [~stchang@syrah.ccs.neu.edu] has quit [Read error: Operation timed out] 18:35:41 -!- eli [~eli@winooski.ccs.neu.edu] has quit [Read error: Operation timed out] 18:35:55 -!- ada2358 [~ada2358@login.ccs.neu.edu] has quit [Ping timeout: 240 seconds] 18:36:08 -!- jrslepak_ [~jrslepak@punchout.ccs.neu.edu] has quit [Ping timeout: 240 seconds] 18:36:13 -!- danking [~danking@zerowing.ccs.neu.edu] has quit [Ping timeout: 276 seconds] 18:36:22 -!- samth [~samth@samth2.ccs.neu.edu] has quit [Ping timeout: 244 seconds] 18:36:22 -!- stamourv [~user@ahuntsic.ccs.neu.edu] has quit [Ping timeout: 244 seconds] 18:36:52 -!- gabot [~eli@winooski.ccs.neu.edu] has quit [Ping timeout: 276 seconds] 18:39:30 -!- bfgun [~b_fin_g@r186-48-240-32.dialup.adsl.anteldata.net.uy] has quit [Remote host closed the connection] 18:42:08 bfig [~b_fin_g@r186-48-240-32.dialup.adsl.anteldata.net.uy] has joined #scheme 18:45:04 -!- wingo [~wingo@90.163.25.173] has quit [Ping timeout: 272 seconds] 18:52:22 -!- gravicappa [~gravicapp@ppp91-77-174-195.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 19:01:04 -!- tonyg [~tonyg@173-203-78-111.static.cloud-ips.com] has quit [Quit: Changing server] 19:01:43 tonyg [~tonyg@173-203-78-111.static.cloud-ips.com] has joined #scheme 19:01:48 snizzo [~quassel@host112-31-dynamic.21-79-r.retail.telecomitalia.it] has joined #scheme 19:02:15 -!- snizzo_ [~quassel@host137-235-dynamic.54-79-r.retail.telecomitalia.it] has quit [Ping timeout: 240 seconds] 19:11:06 snizzo_ [~quassel@host243-237-dynamic.50-79-r.retail.telecomitalia.it] has joined #scheme 19:13:01 -!- snizzo [~quassel@host112-31-dynamic.21-79-r.retail.telecomitalia.it] has quit [Ping timeout: 260 seconds] 19:19:37 -!- jonrafkind [~jon@jonr5.dsl.xmission.com] has quit [Ping timeout: 265 seconds] 19:22:30 -!- kk`` is now known as kk` 19:22:39 -!- kk` [~kk@77.107.164.131] has quit [Changing host] 19:22:39 kk` [~kk@unaffiliated/kk/x-5380134] has joined #scheme 19:23:00 -!- kuribas [~user@d54C43316.access.telenet.be] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 19:30:30 is there a library for computational geometry available? i'm using chicken 19:33:20 there is gts egg "An interface to the GNU Triangulated Surface Library" 19:34:34 cool, i'll check it out. thanks 19:38:32 EmmanuelOga [~emmanuel@190.244.3.40] has joined #scheme 19:40:34 jonrafkind [~jon@crystalis.cs.utah.edu] has joined #scheme 19:41:38 homie [~levgue@xdsl-78-35-177-95.netcologne.de] has joined #scheme 19:42:00 -!- confab [~win7@c-71-193-9-153.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 19:45:37 -!- phao [phao@187.91.235.251] has left #scheme 19:46:33 -!- rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has quit [Quit: WeeChat 0.3.5] 19:46:55 rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has joined #scheme 19:49:33 -!- rostayob [~rostayob@dyn1212-140.wlan.ic.ac.uk] has quit [Client Quit] 19:50:21 -!- djcb [~user@a88-114-95-13.elisa-laajakaista.fi] has quit [Ping timeout: 260 seconds] 19:56:05 -!- tom_i [~thomasing@ingserv.demon.co.uk] has quit [Ping timeout: 252 seconds] 19:56:24 jrslepak_ [~jrslepak@punchout.ccs.neu.edu] has joined #scheme 19:56:45 confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has joined #scheme 19:56:52 samth [~samth@129.10.115.151] has joined #scheme 19:57:49 stchang [~stchang@syrah.ccs.neu.edu] has joined #scheme 19:59:30 ada2358 [~ada2358@login.ccs.neu.edu] has joined #scheme 20:01:20 stamourv [~user@ahuntsic.ccs.neu.edu] has joined #scheme 20:01:35 -!- jewel [~jewel@196-209-248-121.dynamic.isadsl.co.za] has quit [Ping timeout: 240 seconds] 20:10:40 -!- leo2007 [~leo@222.130.143.123] has quit [Quit: rcirc on GNU Emacs 23.4.1] 20:15:58 add^_ [~add^_^@m90-141-41-187.cust.tele2.se] has joined #scheme 20:27:02 -!- CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has quit [Read error: Connection reset by peer] 20:27:02 CampinSa1 [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has joined #scheme 20:27:35 -!- CampinSa1 [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has quit [Client Quit] 20:29:17 -!- snizzo_ [~quassel@host243-237-dynamic.50-79-r.retail.telecomitalia.it] has quit [Read error: Connection reset by peer] 20:32:15 -!- realitygrill [~realitygr@adsl-76-226-137-229.dsl.sfldmi.sbcglobal.net] has quit [Ping timeout: 240 seconds] 20:42:58 -!- tomodo [~tomodo@gateway/tor-sasl/tomodo] has quit [Ping timeout: 276 seconds] 20:49:21 -!- add^_ [~add^_^@m90-141-41-187.cust.tele2.se] has quit [Quit: add^_] 20:59:22 -!- sousousou [~bcarmer@host-72-174-54-175.msl-mt.client.bresnan.net] has quit [Quit: WeeChat 0.3.6] 21:11:45 -!- jeapostrophe [~jay@69.169.141.110.provo.static.broadweavenetworks.net] has quit [Ping timeout: 265 seconds] 21:13:59 rostayob [~rostayob@02d99acf.bb.sky.com] has joined #scheme 21:18:35 -!- dnolen [~user@cpe-98-14-92-234.nyc.res.rr.com] has quit [Ping timeout: 240 seconds] 21:28:24 what's wrong with this redefinition of map? http://hpaste.org/64060 21:31:23 wingo [~wingo@90.164.198.39] has joined #scheme 21:32:24 -!- stis [~stis@1-1-1-39a.veo.vs.bostream.se] has left #scheme 21:34:37 -!- airolson [~airolson@CPE00222d55a738-CM00222d55a735.cpe.net.cable.rogers.com] has quit [] 21:37:12 -!- pchrist_ [~spirit@gentoo/developer/pchrist] has quit [Quit: leaving] 21:37:44 pchrist [~spirit@gentoo/developer/pchrist] has joined #scheme 21:40:20 -!- confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has quit [Quit: Lost terminal] 21:40:43 confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has joined #scheme 21:41:35 -!- tuubow_ [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has quit [Ping timeout: 240 seconds] 21:45:14 confab_ [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has joined #scheme 21:45:20 -!- confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has quit [Client Quit] 21:46:26 MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has joined #scheme 21:47:19 -!- confab_ is now known as confab 21:49:03 bfig : the change in the annotation doesn't help -- `lists' is already checked for emptiness in `shave' and `applist' 21:49:38 bfig : the basic problem is that you don't check that `(car list)' is non-empty in `shave' and `applist' 21:49:59 I'd say shave and applist are both fine 21:50:50 (however, your annotation tried to add a base case to `rew-map' itself, and that's in the right direction -- only you wrote the wrong base case) 21:51:05 though I'd write them as (lambda (x) (map cdr x)) and (lambda (x) (map car x)) respectively 21:51:07 ijp : well, i suppose it depends on how you want to factor it up 21:51:24 yeah -- but as the point is to implement `map' .. :) 21:51:37 (but you could first do a `simple-map', yes) 21:51:59 anyway, the recursive call to rew-map has a different contract than the first call 21:52:22 in particular you are giving it a list of lists in the recursive call (which then gets turned into a list of list of lists) 21:52:24 *ski* would probably merge `shave' and `applist' into a single operation, possibly checking for the base case there as well 21:52:45 ski: indeed, it's really (almost) unzip 21:53:04 the thing is then null? (car lists) i see 21:53:27 it's at worst a list of empty lists otherwise. that is for the first big error 21:53:29 checking if any are null gives the traditional semantics 21:54:01 bfig: I'd either have a helper inner procedure that takes a list of list of lists, or I'd use apply in the recursive call 21:55:16 chromaticwt13 [~user@71-222-151-95.albq.qwest.net] has joined #scheme 21:55:18 er, that takes a list of lists 21:56:25 both take lists of lists, the first creates the argument list, the second removes the first element of all sublists 21:56:37 -!- confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has quit [Quit: Lost terminal] 21:56:38 *ski* can't see any list of lists of lists 21:56:46 cky: the rest args in rew-map 21:57:04 confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has joined #scheme 21:57:08 when you see (op . lists) that means all those lists get put in a list 21:57:13 *ski* presumes s/cky/ski/ 21:57:40 so when you (rew-call op (shave lists)) 21:57:49 and (shave lists) returns a list of lists 21:58:04 then in the recursive call lists is bound to (list (shave lists)) 21:58:40 oh .. 21:58:45 *ski* totally mised that one 21:59:35 the remedy I would recommend is to use a helper that doesn't take rest args 21:59:36 -!- confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has quit [Client Quit] 21:59:40 ijp, what's the problem with that? 21:59:44 or you can use 'apply' to make the recursive call 21:59:47 bfig : so, yeah, as ijp is implying, you probably want to use `apply' in the recursive call for `rew-map' (or use a helper) 21:59:53 bfig: you create a new list wrapper every time you recurse 22:00:07 but i'm using apply 22:00:08 confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has joined #scheme 22:00:15 bfig: not in the recursive call you aren't 22:00:22 yeah, but : 22:00:42 in which recursive call? 22:00:47 (rew-map op '((0 1 2) (3 4 5) (6 7 8))) 22:01:01 (cons ... (rew-map op '(((1 2) (4 5) (7 8))))) 22:01:19 why is that happening? 22:01:29 because you are using the rest args mechanism 22:01:50 what does that mean? 22:02:09 because you are called as `(rew-map op . lists)' (which would be `(apply rew-map op lists)' in an actual call), but are calling recursively as `(rew-map op (shave lists))' instead of as `(apply rew-map op (shave lists))' 22:03:01 you want me to add apply to the recursive call then, now i get what you mean. i still don't understand why it would work. 22:03:03 *bfig* corrects 22:03:11 you get `n' list arguments, but are always calling recursively with just one 22:03:32 bfig : well, you still need to fix the base case, as well 22:03:39 awesome :) 22:03:41 it works :) 22:03:54 i added a new annotation that fixed the base case, when i used apply it worked 22:04:18 *ski* supposes he had one level too much of lists above in the supposed example 22:05:47 http://hpaste.org/64060 <- now the final annotation works more or less as intended 22:06:15 -!- ijp [~user@host86-177-156-199.range86-177.btcentralplus.com] has quit [Ping timeout: 240 seconds] 22:07:56 i'd have to add some list length controls to make sure they are the same size but the main problem's done :) 22:08:10 *ski* yikes at `eval' 22:09:56 ijp [~user@host86-177-156-199.range86-177.btcentralplus.com] has joined #scheme 22:10:06 sorry, I had some computer unpleasantness 22:10:18 are you still having a problem understanding it? 22:10:42 bfig : ooi, what prompted the idea to use `eval' there ? 22:11:29 ohh lol i copied the apply macro 22:11:54 yesterday i was trying to make that work, well, that works as intended :) 22:12:04 (generally, you should only use `eval' if you know why you shouldn't use it) 22:12:17 ski, i am not sure i know why i shouldn't use it 22:12:27 i'm just reading r5rs and finding a way to do things 22:14:01 bfig: I don't actually recommend you use the apply solution, since it is likely to be less efficient in practice 22:14:28 respect to what? 22:14:37 using a helper with fixed arity 22:14:47 kvda [~kvda@124-171-36-73.dyn.iinet.net.au] has joined #scheme 22:15:01 so rather than say (define (foo . args) (apply foo args)) 22:15:02 you could call the helper `apply-rew-map', if you wanted to 22:15:22 (define (foo . args) (define (foo-helper args) (foo-helper args)) (foo-helper args)) 22:15:43 so `(apply-rew-map op lists)' is supposed to be equivalent to `(apply rew-map op lists)', but more efficient 22:15:43 of course, this procedure is a horrible example, but hopefully you get the gist 22:15:52 -!- MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has quit [Ping timeout: 245 seconds] 22:18:48 in this case, I don't think it will make much difference, but it is something to bear in mind for the future 22:19:14 i don't understand how the helper with fixed arity will help 22:19:23 i don't understand what you mean at all 22:21:44 it depends on the implementation, but using rest arguments generally occurs more overhead than a fixed arity procedure 22:23:56 jeapostrophe [~jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 22:29:34 rudybot: quote 22:29:35 ijp: Let's have a nerd-gasm. 22:29:55 -!- chromaticwt13 [~user@71-222-151-95.albq.qwest.net] has quit [Ping timeout: 240 seconds] 22:35:52 noam__ [~noam@46.120.51.147] has joined #scheme 22:38:21 -!- _schulte_ [~eschulte@adaptive.cs.unm.edu] has quit [Ping timeout: 260 seconds] 22:40:25 -!- ayberk [~ayberk@88.236.177.185] has quit [] 22:43:01 tuubow_ [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has joined #scheme 22:47:58 airolson [~airolson@CPE00222d55a738-CM00222d55a735.cpe.net.cable.rogers.com] has joined #scheme 22:48:08 -!- confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has quit [Quit: leaving] 22:48:24 confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has joined #scheme 22:51:26 -!- wingo [~wingo@90.164.198.39] has quit [Ping timeout: 272 seconds] 23:14:01 jao [~user@pdpc/supporter/professional/jao] has joined #scheme 23:15:43 -!- sawjig [~sawjig@gateway/tor-sasl/sawjig] has quit [Ping timeout: 276 seconds] 23:19:54 sawjig [~sawjig@gateway/tor-sasl/sawjig] has joined #scheme 23:19:57 -!- jao [~user@pdpc/supporter/professional/jao] has quit [Ping timeout: 252 seconds] 23:21:26 -!- homie [~levgue@xdsl-78-35-177-95.netcologne.de] has quit [Read error: Connection reset by peer] 23:22:39 acuozzo [ad45b096@gateway/web/freenode/ip.173.69.176.150] has joined #scheme 23:22:47 homie [~levgue@xdsl-78-35-177-95.netcologne.de] has joined #scheme 23:26:05 -!- homie [~levgue@xdsl-78-35-177-95.netcologne.de] has quit [Client Quit] 23:33:05 -!- acuozzo [ad45b096@gateway/web/freenode/ip.173.69.176.150] has left #scheme 23:42:43 -!- virl [~virl__@85-127-83-75.dynamic.xdsl-line.inode.at] has quit [Remote host closed the connection] 23:53:09 homie [~levgue@xdsl-78-35-177-95.netcologne.de] has joined #scheme 23:58:45 -!- homie [~levgue@xdsl-78-35-177-95.netcologne.de] has quit [Ping timeout: 248 seconds]