00:03:15 -!- RageOfThou [~RageOfTho@users-55-238.vinet.ba] has quit [Read error: No route to host] 00:03:35 RageOfThou [~RageOfTho@users-55-238.vinet.ba] has joined #scheme 00:18:11 adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has joined #scheme 00:31:04 ski_ [~slj@c-2911e055.1149-1-64736c10.cust.bredbandsbolaget.se] has joined #scheme 00:33:00 -!- Jafet [~Jafet@unaffiliated/jafet] has quit [Ping timeout: 245 seconds] 00:34:14 -!- ski [~slj@c-2911e055.1149-1-64736c10.cust.bredbandsbolaget.se] has quit [Ping timeout: 264 seconds] 00:38:56 somnium [~user@184.42.17.189] has joined #scheme 00:47:11 Jafet [~Jafet@unaffiliated/jafet] has joined #scheme 01:00:58 -!- Caleb-- [~caleb@bzq-109-64-47-55.red.bezeqint.net] has quit [Ping timeout: 265 seconds] 01:01:07 -!- gravicappa [~gravicapp@91.78.228.28] has quit [Ping timeout: 240 seconds] 01:05:17 Caleb-- [thedude@bzq-109-67-25-237.red.bezeqint.net] has joined #scheme 01:12:42 hypercube32 [~hypercube@158.102.207.68.cfl.res.rr.com] has joined #scheme 01:15:13 -!- pavelludiq [~quassel@91.139.196.22] has quit [Read error: Connection reset by peer] 01:18:56 -!- xwl_ [~user@nat/nokia/x-phejpmcgutoptfyn] has quit [Remote host closed the connection] 01:19:13 xwl_ [~user@nat/nokia/x-slifofhxmmcxyxod] has joined #scheme 01:30:57 acarrico [~acarrico@pppoe-68-142-40-104.gmavt.net] has joined #scheme 01:42:10 jonrafkind [~jon@jonr5.dsl.xmission.com] has joined #scheme 01:44:43 -!- Kerrick [~Kerrick@kerrick.student.iastate.edu] has quit [Ping timeout: 240 seconds] 01:44:50 Hi 01:45:02 How do I identify how much space does a function use? 01:45:49 I have multiple functions and would like to compare the space usage by each of the function. 01:45:50 Well, first fill up a huge bucket with water, and mark the level. Then dunk the function into the water, and mark the new level; from the difference you can compute the volume it displaced... 01:47:10 Crito [~none@unaffiliated/crito] has joined #scheme 01:49:20 I am wondering if there is something similar to time(). To find the space usage. 01:50:32 It's usually not really straightforward to measure that. In some Lisp systems (not sure whether any of them are Scheme systems), every allocation is counted, but even then, usually stack allocations are not counted, and other threads might be allocating behind your back. 01:52:22 If the routines don't allocate very much space, it may suffice (1) to run a GC, (2) to ask for the number of bytes currently allocated, (3) to run the routine, and then (4) to ask for the number of bytes currently allocated again, and for whether a GC has occurred in the mean time. If no GC has occurred in the meantime, and nobody else allocated anything behind your back, then this may tell you what you want. 01:54:47 Ah ha. Cool. 01:54:54 What Scheme system are you using? 01:54:58 DrRacket 01:55:15 there is time 01:55:34 Also, you may be better served by analyzing the space complexity of your programs than by measuring exactly how many bytes they allocate. 01:55:37 at least it will tell you how long a function took and how much time was spent in gc 01:56:23 Riastradh - Of course. I am just wondering if there is a handy function. That is all. 02:00:30 Kerrick [~Kerrick@e40-1.nat.iastate.edu] has joined #scheme 02:01:51 -!- Kerrick [~Kerrick@e40-1.nat.iastate.edu] has quit [Max SendQ exceeded] 02:03:02 Kerrick [~Kerrick@e40-1.nat.iastate.edu] has joined #scheme 02:05:07 -!- Kerrick [~Kerrick@e40-1.nat.iastate.edu] has quit [Excess Flood] 02:05:33 Kerrick [~Kerrick@e40-1.nat.iastate.edu] has joined #scheme 02:18:32 -!- Adamant [~Adamant@unaffiliated/adamant] has quit [Quit: Adamant] 02:26:46 -!- vu3rdd [~vu3rdd@122.166.89.2] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 02:27:13 cataska [~cataska@210.64.6.233] has joined #scheme 02:36:18 zac314159 [~user@c-68-84-149-234.hsd1.nm.comcast.net] has joined #scheme 02:36:49 mrfoobar [~ravi@118-93-189-209.dsl.dyn.ihug.co.nz] has joined #scheme 02:53:22 -!- bgs100 [~ian@unaffiliated/bgs100] has quit [Quit: nighty night] 02:55:50 -!- emma [~em@unaffiliated/emma] has quit [Ping timeout: 264 seconds] 02:56:45 -!- ski_ is now known as ski 03:01:17 -!- hypercube32 [~hypercube@158.102.207.68.cfl.res.rr.com] has quit [Remote host closed the connection] 03:24:43 -!- kniu [~kniu@HOHOHO.RES.CMU.EDU] has quit [Ping timeout: 240 seconds] 03:25:30 -!- Kerrick [~Kerrick@e40-1.nat.iastate.edu] has quit [Ping timeout: 260 seconds] 03:33:26 -!- drdo [~user@2.208.54.77.rev.vodafone.pt] has quit [Remote host closed the connection] 03:39:23 -!- RageOfThou [~RageOfTho@users-55-238.vinet.ba] has quit [Ping timeout: 255 seconds] 03:41:29 Kerrick [~Kerrick@kerrick.student.iastate.edu] has joined #scheme 03:53:08 timj__ [~timj@e176192068.adsl.alicedsl.de] has joined #scheme 03:55:58 -!- timj_ [~timj@e176193127.adsl.alicedsl.de] has quit [Ping timeout: 245 seconds] 04:03:09 mmc [~michal@cs27120227.pp.htv.fi] has joined #scheme 04:03:11 -!- SirNick [~nick@c-67-160-151-16.hsd1.wa.comcast.net] has quit [Ping timeout: 265 seconds] 04:10:02 -!- smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has quit [Quit: smtlaissezfaire] 04:12:58 smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has joined #scheme 04:27:26 -!- tupi [~david@186.205.37.15] has quit [Quit: Leaving] 04:32:54 vu3rdd [~vu3rdd@nat/cisco/x-zwvvbxwodbnomfsf] has joined #scheme 04:34:39 Fare [~Fare@64.119.159.126] has joined #scheme 04:36:17 -!- Kerrick [~Kerrick@kerrick.student.iastate.edu] has quit [Ping timeout: 240 seconds] 04:54:45 -!- MichaelRaskin [~MichaelRa@195.91.224.225] has quit [Ping timeout: 260 seconds] 05:02:41 -!- smtlaissezfaire [~smtlaisse@user-387hbid.cable.mindspring.com] has quit [Quit: smtlaissezfaire] 05:35:11 -!- somnium [~user@184.42.17.189] has quit [Remote host closed the connection] 05:36:48 -!- borism [~boris@ec2-79-125-58-77.eu-west-1.compute.amazonaws.com] has quit [Read error: Operation timed out] 05:45:39 MichaelRaskin [~MichaelRa@195.178.216.22] has joined #scheme 05:47:50 borism [~boris@ec2-79-125-58-77.eu-west-1.compute.amazonaws.com] has joined #scheme 05:48:59 chupish [182e16d7@gateway/web/freenode/ip.24.46.22.215] has joined #scheme 05:55:15 -!- chupish [182e16d7@gateway/web/freenode/ip.24.46.22.215] has quit [Quit: Page closed] 06:01:48 -!- zac314159 [~user@c-68-84-149-234.hsd1.nm.comcast.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 06:42:00 -!- annodomini [~lambda@wikipedia/lambda] has quit [Quit: annodomini] 06:47:57 -!- jonrafkind [~jon@jonr5.dsl.xmission.com] has quit [Ping timeout: 240 seconds] 06:52:17 Mohamdu [~Mohamdu@CPE00222d6b3798-CM00222d6b3795.cpe.net.cable.rogers.com] has joined #scheme 06:52:17 -!- Mohamdu [~Mohamdu@CPE00222d6b3798-CM00222d6b3795.cpe.net.cable.rogers.com] has quit [Changing host] 06:52:17 Mohamdu [~Mohamdu@unaffiliated/mohamdu] has joined #scheme 06:52:36 kar8nga [~kar8nga@j-91.vc-graz.ac.at] has joined #scheme 06:58:46 -!- mrfoobar is now known as chemuduguntar 07:00:13 zac314159 [~user@c-68-84-149-234.hsd1.nm.comcast.net] has joined #scheme 07:08:45 -!- Fare [~Fare@64.119.159.126] has quit [Quit: Leaving] 07:12:04 *cky* is attempting to build a Racket 5.0.2 .deb on Ubuntu 9.10. Fun times.... 07:12:34 (Using the packaging at git://git.debian.org/git/collab-maint/racket) 07:12:41 -!- minion [~minion@common-lisp.net] has quit [Ping timeout: 255 seconds] 07:12:57 -!- adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has quit [Quit: adu] 07:17:42 kniu [~kniu@HOHOHO.RES.CMU.EDU] has joined #scheme 07:19:15 -!- gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has quit [Ping timeout: 245 seconds] 07:21:04 emma [~em@unaffiliated/emma] has joined #scheme 07:39:16 githogori [~githogori@host-82-135-20-190.customer.m-online.net] has joined #scheme 07:45:17 -!- kar8nga [~kar8nga@j-91.vc-graz.ac.at] has quit [Remote host closed the connection] 08:00:23 slom [~sloma@port-87-234-239-162.static.qsc.de] has joined #scheme 08:03:45 *Caleb--* sips cognac to: I Feel Pretty [3:25] · Leonard Bernstein Conducts (1985) · West Side Story (1985) 08:04:01 caaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar 08:06:16 pavelludiq [~quassel@91.139.196.22] has joined #scheme 08:18:58 MrFahrenheit [~RageOfTho@users-55-77.vinet.ba] has joined #scheme 08:23:47 -!- MrFahrenheit [~RageOfTho@users-55-77.vinet.ba] has quit [Ping timeout: 255 seconds] 08:24:26 -!- slom [~sloma@port-87-234-239-162.static.qsc.de] has quit [Remote host closed the connection] 08:28:36 gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has joined #scheme 08:30:00 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 260 seconds] 08:31:51 -!- zac314159 [~user@c-68-84-149-234.hsd1.nm.comcast.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 08:52:35 -!- Jafet [~Jafet@unaffiliated/jafet] has quit [Ping timeout: 245 seconds] 09:08:38 Jafet [~Jafet@unaffiliated/jafet] has joined #scheme 09:35:05 gravicappa [~gravicapp@91.78.228.28] has joined #scheme 09:37:41 fradgers- [~fradgers-@5e064cc1.bb.sky.com] has joined #scheme 09:49:50 -!- stamourv [~user@kauai.ccs.neu.edu] has quit [Remote host closed the connection] 10:15:00 alaricsp [~alaric@relief.warhead.org.uk] has joined #scheme 10:16:47 -!- jao [~jao@83.32.170.229] has quit [Ping timeout: 276 seconds] 10:26:01 -!- pavelludiq [~quassel@91.139.196.22] has quit [Read error: Connection reset by peer] 10:39:54 -!- EbiDK [~ebi@3e6b7ac3.rev.stofanet.dk] has quit [Read error: Connection reset by peer] 10:42:47 _danb_ [~user@124-149-32-186.dyn.iinet.net.au] has joined #scheme 11:03:40 jao [~jao@74.Red-80-24-4.staticIP.rima-tde.net] has joined #scheme 11:06:38 Mr_Cat_ [c31aa706@gateway/web/freenode/ip.195.26.167.6] has joined #scheme 11:06:42 -!- Mr_Cat_ [c31aa706@gateway/web/freenode/ip.195.26.167.6] has left #scheme 11:07:10 Mr-Cat [c31aa706@gateway/web/freenode/ip.195.26.167.6] has joined #scheme 11:07:37 Good ${timeoftheday}. 11:08:28 Good . you too 11:13:12 -!- Mr-Cat [c31aa706@gateway/web/freenode/ip.195.26.167.6] has quit [Quit: Page closed] 11:13:15 wbooze` [~user@xdsl-78-34-109-36.netcologne.de] has joined #scheme 11:13:19 homie` [~user@xdsl-78-34-109-36.netcologne.de] has joined #scheme 11:15:56 -!- homie [~user@xdsl-87-79-63-160.netcologne.de] has quit [Ping timeout: 276 seconds] 11:16:35 -!- wbooze [~user@xdsl-87-79-63-160.netcologne.de] has quit [Ping timeout: 276 seconds] 11:33:52 schmir [~schmir@mail.brainbot.com] has joined #scheme 11:34:53 '(Good you too) 11:41:21 EbiDK [~ebi@3e6b7ac3.rev.stofanet.dk] has joined #scheme 11:47:17 -!- pchrist [~spirit@gentoo/developer/pchrist] has quit [Ping timeout: 240 seconds] 11:48:28 -!- wbooze` [~user@xdsl-78-34-109-36.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:48:32 -!- homie` [~user@xdsl-78-34-109-36.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:49:54 pchrist [~spirit@gentoo/developer/pchrist] has joined #scheme 11:52:36 homie [~user@xdsl-78-34-109-36.netcologne.de] has joined #scheme 11:52:54 wbooze [~user@xdsl-78-34-109-36.netcologne.de] has joined #scheme 11:56:20 -!- Jafet [~Jafet@unaffiliated/jafet] has quit [Quit: Leaving.] 11:56:29 Jafet [~Jafet@unaffiliated/jafet] has joined #scheme 12:06:34 drdo [~user@2.208.54.77.rev.vodafone.pt] has joined #scheme 12:30:53 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 12:34:19 -!- Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has quit [Ping timeout: 240 seconds] 12:34:33 Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has joined #scheme 12:34:50 -!- vu3rdd [~vu3rdd@nat/cisco/x-zwvvbxwodbnomfsf] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 12:45:41 -!- Axsuul [~someone@97-93-99-133.static.mtpk.ca.charter.com] has quit [Ping timeout: 250 seconds] 12:54:43 drdo` [~user@2.208.54.77.rev.vodafone.pt] has joined #scheme 12:55:57 -!- drdo [~user@2.208.54.77.rev.vodafone.pt] has quit [Ping timeout: 240 seconds] 12:56:37 -!- _danb_ [~user@124-149-32-186.dyn.iinet.net.au] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 12:58:28 annodomini [~lambda@c-65-96-220-241.hsd1.ma.comcast.net] has joined #scheme 12:58:28 -!- annodomini [~lambda@c-65-96-220-241.hsd1.ma.comcast.net] has quit [Changing host] 12:58:28 annodomini [~lambda@wikipedia/lambda] has joined #scheme 13:04:57 -!- MichaelRaskin [~MichaelRa@195.178.216.22] has quit [Ping timeout: 240 seconds] 13:06:44 -!- clklein [~clklein@spaghetti.cs.northwestern.edu] has left #scheme 13:08:32 pavelludiq [~quassel@91.139.196.22] has joined #scheme 13:11:26 -!- Caleb-- [thedude@bzq-109-67-25-237.red.bezeqint.net] has quit [Ping timeout: 240 seconds] 13:13:40 HG` [~HG@xdsl-188-118-131-112.dip.osnanet.de] has joined #scheme 13:16:40 Caleb-- [~caleb@bzq-79-183-43-234.red.bezeqint.net] has joined #scheme 13:42:17 -!- annodomini [~lambda@wikipedia/lambda] has quit [Quit: annodomini] 13:45:33 -!- leppie [~lolcow@196-215-20-67.dynamic.isadsl.co.za] has quit [Ping timeout: 245 seconds] 13:56:47 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Quit: +++ killed by SIGSEGV +++] 14:04:11 abstractj [~shadow_wa@187.56.174.29] has joined #scheme 14:04:53 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 255 seconds] 14:08:22 annodomini [~lambda@c-65-96-220-241.hsd1.ma.comcast.net] has joined #scheme 14:08:22 -!- annodomini [~lambda@c-65-96-220-241.hsd1.ma.comcast.net] has quit [Changing host] 14:08:22 annodomini [~lambda@wikipedia/lambda] has joined #scheme 14:09:30 femtoo [~femto@95-89-197-196-dynip.superkabel.de] has joined #scheme 14:09:48 tupi_ [~david@186.205.37.15] has joined #scheme 14:10:16 pnkfelix [~Adium@c-71-225-45-140.hsd1.nj.comcast.net] has joined #scheme 14:10:20 -!- pnkfelix [~Adium@c-71-225-45-140.hsd1.nj.comcast.net] has quit [Client Quit] 14:29:15 -!- annodomini [~lambda@wikipedia/lambda] has quit [Quit: annodomini] 14:32:47 dfkjjkfd [~paulh@247-15-ftth.onsnetstudenten.nl] has joined #scheme 14:36:27 xissburg [~chatzilla@187.3.136.224] has joined #scheme 14:37:24 how to eval a string like "(+ 2 3)"? 14:39:40 rudybot: eval, (+ 2 3) 14:39:41 C-Keen: expect within `() , will eval 14:40:22 rudybot: (eval (string->list "(+ 2 3)")) 14:40:22 xissburg: your sandbox is ready 14:40:22 xissburg: error: procedure application: expected procedure, given: #\(; arguments were: #\+ #\space #\2 #\space #\3 #\) 14:40:26 On some implementations (gambit) this works: (eval (with-input-from-string "(+ 2 3)" read)) 14:43:20 hypercube32 [~hypercube@158.102.207.68.cfl.res.rr.com] has joined #scheme 14:45:58 -!- copumpkin [~pumpkin@173-9-125-129-NewEngland.hfc.comcastbusiness.net] has quit [Quit: Computer has gone to sleep.] 14:47:48 gavv\w [~gavv@178.236.241.138] has joined #scheme 14:49:06 rudybot: (eval (with-input-from-string "(+ 2 3)" read)) 14:49:06 cky: your sandbox is ready 14:49:06 cky: ; Value: 5 14:49:20 Obviously, gravicappa's answer must be pretty close to home. :-) 14:49:24 xissburg: ^^--- 14:49:34 hum yea 14:49:56 it works in chicken :) 14:50:02 \o/ 14:50:13 thanks gravicappa cky 14:50:24 :-) 14:53:08 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 14:53:26 -!- pavelludiq [~quassel@91.139.196.22] has quit [Remote host closed the connection] 15:02:59 rudybot: (let ((x 4)) (eval '(+ 2 x))) 15:02:59 xissburg: error: reference to undefined identifier: x 15:03:15 rudybot: (let ((x 4)) (eval '(+ 2 x) (interaction-environment))) 15:03:16 xissburg: error: reference to undefined identifier: interaction-environment 15:03:34 how to make x visible inside the eval?? 15:04:45 At the time when the eval happens, there is no `x'. 15:04:54 Whatever you're doing, it's a bad idea. 15:05:40 I want to read functions from a file and evaluate them 15:05:44 basically 15:06:05 s/functions/expressions 15:09:09 (load "file") isn't sufficient? 15:09:25 I need to eval the expressions 15:10:32 aisa [~aisa@173-10-243-253-Albuquerque.hfc.comcastbusiness.net] has joined #scheme 15:15:31 vu3rdd [~vu3rdd@122.167.69.174] has joined #scheme 15:20:04 rudybot: (let ((x 4)) (eval '(+ 2 x) (interaction-environment 5))) 15:20:05 xissburg: error: reference to undefined identifier: interaction-environment 15:21:01 rudybot: init r5rs 15:21:02 cky: your r5rs sandbox is ready 15:21:18 rudybot: eval (let ((x 4)) (eval '(+ 2 x) (interaction-environment 5))) ; <-- probably won't work either but worth a try 15:21:18 cky: error: procedure interaction-environment: expects no arguments, given 1: 5 15:21:33 rudybot: eval (let ((x 4)) (eval '(+ 2 x) (interaction-environment))) ; <-- probably still won't work either but still worth a try 15:21:33 cky: error: reference to an identifier before its definition: x in module: 'program 15:21:42 xissburg: ^^--- what chandler said. 15:22:30 the what can I do?? 15:22:43 how to evaluate expression in a file? 15:25:53 xissburg: Why does your file require special bindings? Can't it be standalone? 15:28:01 -!- abstractj [~shadow_wa@187.56.174.29] has quit [Remote host closed the connection] 15:28:39 hm for example...I want to load functions from a file (actually expressions) and compute stuff with them, it'll only read the input from the file and process it 15:29:04 Its just a stupid implementation of optimization methods 15:29:23 I have a function and a set of constraints, each is an expression 15:29:26 xissburg: Surely you can use define instead. 15:29:42 rudybot: (define env (null-environment)) 15:29:42 cky: error: procedure null-environment: expects 1 argument, given 0 15:29:45 rudybot: (define env (null-environment 5)) 15:29:46 cky: Done. 15:30:13 rudybot: (eval '(define (hw) (display "Hello, world!")) env) 15:30:13 cky: that's not my view at all. I said that you should start improving X if you don't like it's current form. I also said that the fact that windows behaves better on the same HW is caused by the HW drivers not beeing available for the Linux platform. So blame your hardware, not X! 15:30:19 rudybot: eval (eval '(define (hw) (display "Hello, world!")) env) 15:30:19 cky: Done. 15:30:35 rudybot: eval (eval '(hw) env) 15:30:36 cky: error: reference to undefined identifier: display 15:30:41 Oh, oops. 15:30:55 rudybot: eval (eval '(define (hw) "Hello, world!") env) 15:30:55 cky: Done. 15:30:56 antoszka [~antoszka@unaffiliated/antoszka] has joined #scheme 15:30:59 rudybot: eval (eval '(hw) env) 15:30:59 cky: ; Value: "Hello, world!" 15:31:06 xissburg: Okay, so, see above.- 15:31:17 xissburg: I just started by creating a null environment, and populating it with stuff. 15:32:01 hm i see 15:32:10 xissburg: Obviously if you want to provide standard functions like display, you can't use the null environment as the basis, but something like the scheme-report-environment (IIRC). 15:32:21 So, let's try that again. 15:32:35 rudybot: eval (define env (scheme-report-environment 5)) 15:32:36 cky: Done. 15:32:54 rudybot: eval (eval '(define (hw) (display "Hello, world!") (newline)) env) 15:32:54 cky: Done. 15:33:02 rudybot: eval (eval '(hw) env) 15:33:02 cky: ; stdout: "Hello, world!\n" 15:33:16 xissburg: See, that should be pretty straightforward. 15:35:33 Nice, thanks I'll try :) 15:35:56 -!- Dark-Star [~michael@HSI-KBW-095-208-117-017.hsi5.kabel-badenwuerttemberg.de] has quit [Ping timeout: 276 seconds] 15:36:02 :-) 15:37:56 -!- Jafet [~Jafet@unaffiliated/jafet] has quit [Ping timeout: 265 seconds] 15:40:23 I try (eval '(define x1 0) env) and it returns Error: assignment of undefined identifier: x1 15:40:34 hah that maks no sense 15:40:38 *makes 15:42:40 rudybot: eval (define env (scheme-report-environment 5)) 15:42:41 xissburg: error: reference to undefined identifier: scheme-report-environment 15:44:02 moa__ [~moa@40-226.2-85.cust.bluewin.ch] has joined #scheme 15:44:02 xissburg: Say "rudybot: init r5rs" first. 15:44:05 Dark-Star [~michael@HSI-KBW-095-208-117-017.hsi5.kabel-badenwuerttemberg.de] has joined #scheme 15:44:31 rudybot: init r5rs 15:44:31 xissburg: your r5rs sandbox is ready 15:44:41 -!- moa__ [~moa@40-226.2-85.cust.bluewin.ch] has left #scheme 15:44:43 rudybot: (define env (scheme-report-environment 5)) 15:44:43 xissburg: Done. 15:44:56 (eval '(define x1 0) env) 15:45:23 -!- dfkjjkfd [~paulh@247-15-ftth.onsnetstudenten.nl] has quit [Quit: Lost terminal] 15:45:49 -!- drdo` is now known as drdo 15:47:46 rudybot: (eval '(define x1 0) env) 15:47:46 xissburg: Done. 15:47:58 hm it doesn't wok in chicken :) 15:48:03 *work 15:48:40 Hmmmm. No incubot at the mo. So sad. 15:48:50 Wonder where there's a Chicken system I can test with. 15:50:24 xissburg: you need to pass an optional #t to scheme-report-environment to make it mutable 15:51:27 C-Keen: where? 15:51:40 oh 15:51:48 (scheme-report-environment 5 #t) 15:52:54 Oh it works now :D 15:53:14 with or without the change? 15:53:28 with the #t, it was not working previously 15:53:38 right 15:53:49 tricky 15:53:49 -!- gravicappa [~gravicapp@91.78.228.28] has quit [Read error: Connection reset by peer] 15:53:59 Thanks 15:54:16 welcome 16:03:49 gravicappa [~gravicapp@ppp85-140-116-56.pppoe.mtu-net.ru] has joined #scheme 16:10:12 stamourv [~user@kauai.ccs.neu.edu] has joined #scheme 16:10:45 rpg [~rpg@216.243.156.16.real-time.com] has joined #scheme 16:17:13 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Ping timeout: 245 seconds] 16:20:27 -!- pygospa [~pygospa@217.191.218.156] has quit [Disconnected by services] 16:20:36 TheRealPygo [~pygospa@217.191.219.144] has joined #scheme 16:22:01 bweaver [~user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 16:25:33 firecrow8 [~fcrow@69.38.169.34] has joined #scheme 16:32:40 leppie [~lolcow@196-215-20-67.dynamic.isadsl.co.za] has joined #scheme 16:54:27 -!- chemuduguntar [~ravi@118-93-189-209.dsl.dyn.ihug.co.nz] has quit [Remote host closed the connection] 17:01:33 -!- schmir [~schmir@mail.brainbot.com] has quit [Remote host closed the connection] 17:12:39 jonrafkind [~jon@crystalis.cs.utah.edu] has joined #scheme 17:17:36 -!- githogori [~githogori@host-82-135-20-190.customer.m-online.net] has quit [Remote host closed the connection] 17:20:37 daedra [~simon@unaffiliated/daedra] has joined #scheme 17:21:07 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 17:23:10 -!- jao [~jao@74.Red-80-24-4.staticIP.rima-tde.net] has quit [Ping timeout: 260 seconds] 17:23:32 hi there - this is more of a programming question than a scheme specific question. I want a function to take the input (a b c) and output ((a) (a b) (a b c)). I have thought about perhaps reversing the input list to (c b a), then recursively cdr it to get (a), and then cons on the reverse of the previous lists.. but I can't see the "scheme way" of coding this 17:24:55 I've read quite a lot of "The little Schemer" so have an idea of the general method of determining the base case 17:25:24 so in this it would be ((null? list) ()) 17:28:22 no it's ((null? (car list)) (cons (quote ()) list)) since I want ((a)) 17:29:18 femtooo [~femto@95-89-197-196-dynip.superkabel.de] has joined #scheme 17:29:30 sorry (cons list (quote ())) 17:30:30 so I have the most basic case. The inductive step I can't see :( 17:31:58 -!- daedra [~simon@unaffiliated/daedra] has quit [Remote host closed the connection] 17:32:20 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Ping timeout: 255 seconds] 17:32:43 daedra [~simon@unaffiliated/daedra] has joined #scheme 17:40:14 danking: Are you familiar with higher order list functions? map, foldl, foldr, filter to name a few. 17:40:21 daedra: ^ 17:41:09 oh no 17:41:22 I've not come across these in The little schemer yet 17:41:41 so my functions are very primitive 17:43:49 -!- hypercube32 [~hypercube@158.102.207.68.cfl.res.rr.com] has quit [Quit: Leaving] 17:47:04 rudybot: (require srfi/1) 17:47:05 cky: error: reference to an identifier before its definition: require in module: 'program 17:47:12 rudybot: init racket 17:47:14 cky: your racket sandbox is ready 17:47:15 rudybot: (require srfi/1) 17:47:16 cky: Done. 17:47:45 rudybot: (define (daedra l) (pair-fold (lambda (a d) (cons (reverse a) d)) '() (reverse l))) 17:47:45 cky: Done. 17:47:52 rudybot: (daedra '(a b c)) 17:47:53 cky: ; Value: ((a) (a b) (a b c)) 17:48:29 daedra: ^^--- 17:48:51 jewel [~jewel@196-215-88-116.dynamic.isadsl.co.za] has joined #scheme 17:50:56 wow :) 17:59:27 :-) Now you just need to port it to the constructs you've encountered in the book. 18:10:24 yep 18:10:29 I'm doing that now 18:10:38 I've done foldr 18:10:51 which pair-fold will use (I think) 18:11:46 and have made reverse previously using snoc (backwards cons) 18:11:59 pair-fold is easier to implement than fold. 18:12:13 You just pass x instead of (car x) to the function. 18:12:36 SRFI 1 has an xcons that is "backward cons". 18:12:42 You should consider using SRFI 1 when you can. 18:12:59 ok 18:21:11 Axsuul [~someone@97-93-99-133.static.mtpk.ca.charter.com] has joined #scheme 18:31:42 Are there any major implementations that don't support SRF1? 18:31:58 s/SRF1/SRFI 1/ 18:32:44 franki^: IIRC, Chez doesn't seem to have any SRFIs built in, but, I hear that people just download and use the reference implementation on Chez. *shrug* 18:32:53 arcfide is a big Chez user. You can ask him. :-P 18:33:40 I see 18:33:53 Oh, bwahahahaha. 18:34:04 Hm? 18:34:09 If you Google "srfi site:scheme.com", it links to arcfide's SRFI libraries for Chez. 18:34:22 Heh 18:34:22 In the "Links to Scheme resources" page. 18:42:13 MrFahrenheit [~RageOfTho@users-33-193.vinet.ba] has joined #scheme 18:43:37 dfkjjkfd [~paulh@247-15-ftth.onsnetstudenten.nl] has joined #scheme 18:45:41 MichaelRaskin [~MichaelRa@195.91.224.225] has joined #scheme 18:55:42 laurus [~laurus@c-68-40-207-109.hsd1.mi.comcast.net] has joined #scheme 19:02:29 choas [~lars@p5792C1AE.dip.t-dialin.net] has joined #scheme 19:07:23 femtoo [~femto@95-89-197-196-dynip.superkabel.de] has joined #scheme 19:08:02 -!- femtooo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Ping timeout: 255 seconds] 19:11:52 kar8nga [~kar8nga@78.104.81.105] has joined #scheme 19:11:52 -!- kar8nga [~kar8nga@78.104.81.105] has quit [Read error: Connection reset by peer] 19:22:42 -!- laurus [~laurus@c-68-40-207-109.hsd1.mi.comcast.net] has left #scheme 19:22:53 pdelgallego [~pdelgalle@1503031474.dhcp.dbnet.dk] has joined #scheme 19:35:33 abstractj [~shadow_wa@187.56.174.29] has joined #scheme 19:41:09 stis [~stis@1-1-1-39a.veo.vs.bostream.se] has joined #scheme 19:46:43 -!- vu3rdd [~vu3rdd@122.167.69.174] has quit [Remote host closed the connection] 19:49:02 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Quit: Leaving] 20:09:32 Unthahorsten [~Unthahors@del63-3-88-177-167-25.fbx.proxad.net] has joined #scheme 20:16:29 adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has joined #scheme 20:19:14 electrificat [~sam@217.175.9.140] has joined #scheme 20:20:00 -!- HG` [~HG@xdsl-188-118-131-112.dip.osnanet.de] has quit [Quit: Leaving.] 20:22:00 i have a plan so cunning, you could put a tail on it and call it a weasel 20:22:11 ;) 20:26:19 -!- EbiDK [~ebi@3e6b7ac3.rev.stofanet.dk] has quit [Ping timeout: 240 seconds] 20:28:38 schmir [~schmir@p54A913D1.dip0.t-ipconnect.de] has joined #scheme 20:29:02 jcowan [c6b912cf@gateway/web/freenode/ip.198.185.18.207] has joined #scheme 20:29:07 -!- jewel [~jewel@196-215-88-116.dynamic.isadsl.co.za] has quit [Ping timeout: 240 seconds] 20:29:20 *jcowan* unvanishes and all. 20:31:59 EbiDK [~ebi@3e6b7ac3.rev.stofanet.dk] has joined #scheme 20:43:32 jcowan, will R7RS have something like #!r7rs ? 20:43:40 bgs100 [~ian@unaffiliated/bgs100] has joined #scheme 20:45:04 samth: currently, there's no #!anything in the standard, though that may change 20:46:04 #!r7rs has not been proposed though 20:46:14 i hope that there's something to distinguish r7rs programs 20:47:06 You could very easily do that without having to put #! crap in source files by following Scheme48's example... 20:47:30 (`do that' = `distinguish R7RS (or whatever it's called) programs', that is) 20:48:06 scheme48 doesn't do that at all - they explicitly avoid specifying it in-band 20:48:32 they interpret a program as a particular kind of program 20:48:46 rather than letting the program specify its own semantics 20:48:56 Exactly -- it is not specified in-band, so the module crap doesn't interfere with portability. 20:49:16 but the purpose of such things would be exactly *for* portability 20:50:10 otherwise you end up with a parenthisized source file with no way to determine what it means 20:54:15 -!- samth [~samth@punge.ccs.neu.edu] has quit [Remote host closed the connection] 20:55:15 samth [~samth@punge.ccs.neu.edu] has joined #scheme 21:08:00 I've proposed #! markers for case-(in)sensitivity, but they haven't been voted on yet. 21:08:32 Riastradh: However, the module crap will now be *portable* module crap. 21:08:51 Since we are going with separable modules rather than integrated ones. 21:09:17 samth: No in-band way, you mean. Putting it in a separate file has distinct advantages precisely because it's not specified in-band. 21:09:58 -!- mmc [~michal@cs27120227.pp.htv.fi] has quit [Ping timeout: 240 seconds] 21:11:10 One question that has yet to be answered is whether an R7RS module should be facially distinguishable from an R6RS module. 21:12:57 chandler, having it out of band means that the file can't be understood on its own (b/c it has *no* meaning on its own) 21:13:16 That's true. Is that actually a problem? 21:13:23 In the end, nothing has meaning when *entirely* on its own. Consider the Phaistos Disc. 21:13:42 jcowan, fortunately we don't have to be *that* future-proof 21:13:59 (Me, I think it's a board game, not writing of any sort.) 21:13:59 chandler, yes - consider a multi-language scheme system (such as larceny or racket) 21:14:23 if the info is in-band, you can straightforwardly combine programs 21:14:42 if the info is out-of-band, you have to use ugly things like command-line arguments and dynamic parameters 21:15:11 *jcowan* used to write linkage files in the old days to specify the out-of-band information about combined programs. Wasn't so bad. 21:15:34 jcowan, i used to write python programs ... 21:15:35 -!- schmir [~schmir@p54A913D1.dip0.t-ipconnect.de] has quit [Ping timeout: 265 seconds] 21:15:41 I don't see why such ugly things are required if the file containing the module definition is appropriately marked as to what it is. 21:16:04 chandler, which is the file containing the module definition? 21:16:19 and why should i need to write multiple files? 21:16:44 I don't see how the answer to the first question differs depending on which approach you use. You still have to point your implementation at *something*. 21:16:48 why shouldn't i instead just write a program, pass it to the compiler, and have it work 21:17:42 You do write a program. It's just that the program is represented in two parts: a module language, and the program language which is determined by the module language. 21:18:36 In practice, it's trivial to implement the out-of-band style with the in-band style if you have something like `include', so this is more of a style question to me than a language question. 21:19:14 but then you have a bunch of files which mean nothing, and can only be interpreted in conjunction w/ some other file 21:19:44 this is exactly why `include' is generally bad style 21:21:11 You're expecting me to read that as a bad thing, but I don't. :-) 21:22:25 what should your ide do when you open one of these files? 21:22:26 -!- pothos [~pothos@111-240-215-136.dynamic.hinet.net] has quit [Read error: Connection reset by peer] 21:22:35 how should it look up the documentation for your procedures? 21:22:52 Each of the files is a program in some language. The question is "what language?". Most programming languages that I've seen don't put the declaration of what language the file is written in in the file itself. 21:23:12 pothos [~pothos@111-240-220-37.dynamic.hinet.net] has joined #scheme 21:23:22 it's usually in the extension of the filename, or something vastly more broken like that 21:23:34 that's how things like gcc work 21:23:45 samth: What does Emacs do for me today, or what *should* it do? It ought to look at the module definition. 21:23:58 but what module definition? 21:24:04 The one I tell it to look at. 21:24:28 If you start with the premise that a file should stand alone, of course this is going to look broken. I can't argue against your premise. 21:24:34 samth, file extensions are broken? rkt/rktl/rktd.. 21:24:36 so then you have to maintain an association between these files, and the separate files are giving you nothing 21:24:45 scrbl/ss/scm 21:24:59 jonrafkind, file extensions are useful, but they shouldn't change the semantics of your program 21:25:37 No, the separate files *do* provide something. With an out-of-band module definition, my program files are written in whatever language I choose to write them in. With the Racket approach, every file I write is written in the Racket meta-language. 21:25:38 you'll note that racket and DrRacket don't look at the extension to determine the meaning of a program 21:26:05 yea.. you can't use .rktl files in drracket at all 21:26:13 jonrafkind, that isn't correct 21:26:27 use pretty big, and they'll work "fine" 21:26:27 It might seem like a trivial difference, but it has a real benefit in a world where not everybody has standardized on the same module system. 21:27:01 chandler, only if you plan to program in the intersection of every system 21:27:43 Not of every system, just of at least two systems with different module systems. If you're just writing Racket programs, by all means just write your program in Racket. 21:27:43 Are programs written in C, C++, Fortran, Ada, or Java written in the "gcc metalanguage"? 21:28:20 jcowan: No, but if gcc required every source file to begin with a flag identifying what kind of program it is? 21:28:49 gcc already requires that, it just puts the info in the file extension 21:29:22 That can be overridden on the command line. 21:29:59 which is necessary b/c of the problems with file extensions 21:30:17 But going back to the point about `include' - have you never #included a file multiple times in environments with different macro definitions? 21:30:36 never in Scheme/Lisp/Racket 21:30:47 In C, I mean. 21:30:48 once I used #include in OCaml and felt very dirty about it 21:31:12 in C there's no way to abstract! 21:31:24 ive only seen it done once in C, to abstract over char/short/int in some graphics routines 21:31:25 Okay, another example: are all Python, Perl, and Ruby programs written in "sh metalanguage"? 21:31:26 that's why we use languages with real macro systems and lambda etc etc etc 21:31:43 jcowan, excellent example 21:32:37 The good bit is that Python, Perl, and Ruby (and many other languges) treat the marker as a comment. 21:32:49 jcowan: The shebang line is just a comment to each of those languages. It's not really the same thing as #lang or #!r6rs. 21:33:23 samth: I think the only thing that's saved me from doing multiple inclusions in some very hairy situations in Common Lisp is some dirty, unhygienic magic. 21:34:02 chandler, i think the situations are the same - it's just that sh happens to pass the whole file to the interpreter, rather than the file without the first line 21:34:16 chandler: Well, yes and no. It's at least a reasonable analysis to see #lang as the same kind of dispatcher, and the dispatchees must then treat it as a comment. 21:35:08 -!- electrificat [~sam@217.175.9.140] has quit [Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.12/20101027155446]] 21:35:22 chandler, note that #!r6rs is explicitly a comment 21:35:55 (not in Racket, but in the R6RS spec) 21:36:59 samth: I can start my program with #!/usr/bin/perl -nw, but that doesn't imply that the program *must* be run that way. "#lang racket" means something that can't be ignored. 21:37:05 So: should R7RS modules be facially distinct from R6RS ones, given that (absent a marker) it's possible to write modules that are both? 21:37:27 chandler: But isn't that just because Racket doesn't have an "--as racket" switch? 21:37:54 chandler, why would ignoring that be a good idea? 21:38:04 schmir [~schmir@p54A913D1.dip0.t-ipconnect.de] has joined #scheme 21:38:17 if you start your program with #!/usr/bin/perl, i shouldn't run it in the ruby interpreter 21:38:46 It wouldn't if it's there. Sigh. This is wandering by analogy away from the discussion of in-band or out-of-band module languages. 21:39:18 -!- doc_who [~doc_who@138-78-106-107.resnet.smcm.edu] has quit [Ping timeout: 240 seconds] 21:39:21 jcowan, they should either be legal R6RS programs (modulo library availibility) or they should have a different tag 21:40:01 chandler, it seems like you want to separate the declaration so that you can reinterpret the code, and I don't see why that's a good idea 21:41:01 Then there's this way of starting Perl programs: 21:41:03 eval '(exit $?0)' && eval 'exec perl -wS $0 ${1+"$@"}' & eval 'exec /usr/bin/perl -wS $0 $argv:q' if $running_under_some_shell; 21:41:10 oops, should have been three lines 21:43:10 minion [~minion@common-lisp.net] has joined #scheme 21:43:50 samth: It's a good idea because the in-band module system is the only thing that prevents some valid R5RS programs from also being valid R6RS programs and valid Racket programs. As I said before, this can be solved in the case of the latter two with `include', but if we take it as a given that this is not a good idea, then there's no good way of doing so at all. 21:43:55 I don't think this is a good idea. 21:44:06 Er, I don't think it's a good situation. 21:44:40 Well, R7RS will have "include" and "body" too (which may get renamed to "begin", if I have my way) 21:45:28 (By the way, I've also written Scheme programs which are also Common Lisp programs...) 21:45:47 -!- xissburg [~chatzilla@187.3.136.224] has quit [Quit: ChatZilla 0.9.86 [Firefox 3.6.12/20101026210630]] 21:47:18 Indeed, have a look at http://paste.lisp.org/display/84252 21:47:47 Heh. 21:48:13 The program that I was referring to was essentially a DSL. 21:48:43 The biggest problem I have with the R6RS module system is that there's no library metalanguage. Has that been addressed with the R7RS? 21:49:45 What is a library metalanguage? 21:50:00 -!- moell [~user@150.181.35.213.dyn.estpak.ee] has quit [Quit: "If you put a million monkeys at a million keyboards, one of them will eventually write a Java program. The rest of them will write Perl programs."] 21:50:05 Or, if you prefer, what can it do? 21:50:46 It's not possible in the R6RS to write something which expands into a `library' form. 21:51:33 That will also be true in R7RS small Scheme, which has only syntax-rules macros. 21:52:10 copumpkin [~pumpkin@17.101.89.205] has joined #scheme 21:52:19 I'm afraid I don't understand what relevance the macro system has to this. 21:52:26 "has to do with this". Gr. 21:53:41 The module language is a little language, not Scheme, therefore Scheme's metalanguage is irrelevant to it. And no one has proposed a metalanguage specific to module language. 21:54:09 Why not `syntax-rules'? 21:54:55 I wouldn't object myself, but there may well be portability issues. Unlike R6RS, R7RS is being designed to make it as easy as possible to retrofit onto R5RS systems. 21:57:37 For instance, I am pressing to have an exception-handling system but no condition system, because it's hard to make existing condition systems fit together with a concrete system like R6RS's. 22:02:46 chandler, if you have an out-of-band system (such as r5rs, where the out-of-band information is in the programmers head) then you can't effectively use it as part of a multi-language system 22:03:25 I remember seeing a "program" that was syntactically valid Fortran, JCL, and 360 assembler (IIRC) 22:03:39 i've heard of such things 22:04:11 and i think the ability to write them is much less valuable than the ability to combine programs written in r6 and r7 together 22:04:12 That's absurd, samth! 22:04:14 Well, obviously people *do* effectively use such things as part of a multi-language systems. The notion that either IB or OOB information is useless turns out not to be the case. 22:04:30 samth: I can't see how that statement could be true. As I mentioned before, it's trivial to use both the R6RS and Racket in an out-of-band fashion via `include'. 22:04:46 I've got one here that is C, Fortran, sh and csh. Interested? 22:05:03 pjb: Yes! 22:05:07 I've got one here that's quite a lot of languages all at once: 22:05:08 22:05:13 Impressive, no? 22:05:15 (define-structure foo ... (open r5rs) (files "foo.scm")) (define-structure bar ... (open r7rs) (files "foo.scm")) 22:05:24 "Ah, if only everyone wrote code just as I do, how simple life would be!" 22:05:28 Or in a more angry mood: 22:05:47 "No, it's not enough that I can write code the way I want! I also want THEM NOT to be able to write code the way THEY want!" 22:06:25 pjb pasted "happy" at http://paste.lisp.org/display/116681 22:06:34 jcowan: ^ 22:06:45 Riastradh, I want to open "foo.scm" in my editor and get tab completion, or run it through the compiler, and get the right answer 22:06:55 Well, jcowan if everyone could at least explain why is that "best way" "better", it would already mark a huge advance 22:07:11 Very nice, pjb. 22:07:14 -!- pdelgallego [~pdelgalle@1503031474.dhcp.dbnet.dk] has quit [Ping timeout: 264 seconds] 22:07:41 MichaelRaskin: Yes, except that they can't. It's obvious that neither in-bound nor out-of-bound methods are useless. 22:07:43 Well, 4-language is not the most insane known case 22:07:48 samth: As I read it, your argument boils down to "I want the information to be in the file because I want the information to be in the file." 22:08:00 jcowan: note the quotes 22:08:02 I'm afraid I can't argue with that. 22:09:20 So between those who scorn INCLUDE as a misfeature, and those who scorn BODY as a misfeature, I find myself like Buridan's ass in reverse. 22:10:05 -!- Modius [~Modius@cpe-70-123-158-125.austin.res.rr.com] has quit [Ping timeout: 245 seconds] 22:12:24 -!- samth [~samth@punge.ccs.neu.edu] has quit [Remote host closed the connection] 22:12:40 samth [~samth@punge.ccs.neu.edu] has joined #scheme 22:13:14 -!- schmir [~schmir@p54A913D1.dip0.t-ipconnect.de] has quit [Ping timeout: 276 seconds] 22:13:27 jao [~jao@83.32.170.229] has joined #scheme 22:13:33 chandler, my argument is that (a) it's very useful to have code specify its meaning stably, rather than depending on context (just as in hygiene) 22:13:55 and (b) the Racket experience has demonstrated that in-band language specification works quite well 22:14:38 Contrariwise, it's useful to have the module crap elsewhere, so that the code can be shared between Scheme systems that are at odds. Is there more to this discussion than these two positions? 22:14:45 (I haven't been paying attention; lunch was more interesting.) 22:15:31 I think sharing code between systems that "are at odds" is ultimately futile 22:15:39 that's why standards are useful 22:15:53 Riastradh: Only my lament that systems providing both features are likely to be despised by both parties. 22:16:03 -!- daedra [~simon@unaffiliated/daedra] has left #scheme 22:16:17 I think history has shown that Scheme *standards* are futile. 22:16:23 samth: (a) this statement only makes sense if you presuppose that the file is a unit of code that must stand alone, and (b) the Racket experience shows that the in-band specification works well when combining programs all meant to be used in one multi-language implementation, but it doesn't generalize to the multi-implementation case. 22:16:34 I can't argue against your premise, as I said before. 22:17:48 chandler, (a) that presupposition is built into almost every modern piece of software and (b) is falsified by #!r6rs and by #!/foo in shells, I believe 22:19:17 Gee, I guess that's why I see #!/usr/bin/g++ all the time... 22:19:33 R6RS doesn't falsify this; it reinforces it. There are many programs which are both valid R5RS and valid R6RS, but the only way to write such a program is to (write and) use something like `include' in order to separate the library definition from the program body. 22:20:38 chandler, i think that's precisely evidence for my point - if r5rs had in-band specs, you could write programs that would work on almost all systems 22:21:22 Well, depending on how well they complied. 22:21:41 i think the major divide is that i think "solutions" that allow programs to be written in the intersection of two languages are mostly useless, and the correct solution is to have implementation that accept both languages 22:21:43 On all multi-language systems, you mean. 22:21:53 How many R6RS implementations do you suppose will implement R7RS? 22:22:12 At least two, I hope. 22:22:13 Such solutions are useless except for the utility of programs that have been written using those solutions. 22:22:37 chandler, (a) the answer to that is mostly related to the politics of the scheme community, rather than anything about language design 22:22:43 Actually, it wouldn't astony me if all R6RS implementations did R7RS. 22:22:58 and (b) it would be easy to implement r7 in racket if it used #!r7rs 22:23:01 (Except those that no one is working on any more.) 22:23:07 And if none of them did, how would one write a program that could be used in both a R6RS and a R7RS implementation? 22:24:17 i think that problem is only interesting if you care about the pathologies of the scheme community, rather than good language design 22:24:25 -!- Unthahorsten [~Unthahors@del63-3-88-177-167-25.fbx.proxad.net] has quit [Quit: goodbye] 22:27:32 Isn't the premise of the standardization process that so 22:27:42 ...mebody cares about the pathologies of the Scheme community? 22:28:03 i would say its that said pathologies can be overcome 22:28:17 it='the premise' 22:33:36 -!- choas [~lars@p5792C1AE.dip.t-dialin.net] has quit [Ping timeout: 265 seconds] 22:34:29 choas [~lars@p5792C1AE.dip.t-dialin.net] has joined #scheme 22:35:17 I think a more relevant question is, "is it useful to make it easy for suitably restrictet R6RS code runs on R7RS, given the right libraries" 22:35:22 s/runs/to run 22:39:03 -!- abstractj [~shadow_wa@187.56.174.29] has quit [Remote host closed the connection] 22:40:23 jcowan, wouldn't the inclusion be more likely the other way? 22:41:10 wlen [~len@77.127.106.91] has joined #scheme 22:41:13 Not to start with, simply because there are some R6RS libraries and there are currently no R7RS ones. 22:41:46 but that would mean that all working r7 programs should run on r6 impls 22:42:49 -!- Mohamdu [~Mohamdu@unaffiliated/mohamdu] has quit [Quit: Leaving] 22:43:32 -!- fradgers- [~fradgers-@5e064cc1.bb.sky.com] has left #scheme 22:45:09 -!- choas [~lars@p5792C1AE.dip.t-dialin.net] has quit [Quit: leaving] 22:53:57 -!- bweaver [~user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Read error: Connection reset by peer] 22:54:39 bweaver [~user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 22:54:46 -!- bweaver [~user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Remote host closed the connection] 22:56:07 Well, there are things in the R7 core that aren't in the R6 core, but (always modulo library availability) I'd say so. 23:03:18 -!- aisa [~aisa@173-10-243-253-Albuquerque.hfc.comcastbusiness.net] has quit [Ping timeout: 240 seconds] 23:08:07 singintime [~singintim@151.81.39.98] has joined #scheme 23:11:12 -!- adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has quit [Quit: adu] 23:12:18 hello world :) 23:18:24 -!- stis [~stis@1-1-1-39a.veo.vs.bostream.se] has quit [Remote host closed the connection] 23:19:45 laurus [~laurus@c-68-40-207-109.hsd1.mi.comcast.net] has joined #scheme 23:23:18 I'm trying to use my newbie Scheme knowledge to implement this: http://www.gigamonkeys.com/book/practical-a-simple-database.html in Guile. My first two functions are at http://paste.lisp.org/display/116684 . Is this the proper "Scheme-y" way to do this? 23:25:06 Is there a "scheme" way of doing this? Going through a data structure such as .. (a b) 1 ((a b) 2) and finding shared objects.. in this case, (a b) is shared 23:25:40 Hmm okay 23:26:23 Axsuul: You want a function that returns a list of obects that are repeated in the input list? 23:27:37 pdelgallego [~pdelgalle@1503031474.dhcp.dbnet.dk] has joined #scheme 23:28:46 franki^: yep 23:29:47 -!- gravicappa [~gravicapp@ppp85-140-116-56.pppoe.mtu-net.ru] has quit [Ping timeout: 276 seconds] 23:29:58 RageOfThou [~RageOfTho@users-55-161.vinet.ba] has joined #scheme 23:30:39 Axsuul: I don't know of such a thing, I'm not sure if it's really primitive enough to get a standard function. You could write on quitee easily though. I'd start by writing a function that takes a list and an object and checks if the object is repeated in the list. 23:30:57 Someone more knowledgeable than me might pop up and tell me I'm an idiot though *shrug* 23:31:00 :) 23:33:04 bombshelter13b [~bombshelt@76-10-149-209.dsl.teksavvy.com] has joined #scheme 23:33:04 -!- bombshelter13b [~bombshelt@76-10-149-209.dsl.teksavvy.com] has quit [Client Quit] 23:33:30 -!- laurus [~laurus@c-68-40-207-109.hsd1.mi.comcast.net] has left #scheme 23:33:54 Kerrick [~Kerrick@b01-1.nat.iastate.edu] has joined #scheme 23:34:00 Ya so double recrusive (O)N^2 i suppose? 23:34:08 -!- MrFahrenheit [~RageOfTho@users-33-193.vinet.ba] has quit [Ping timeout: 255 seconds] 23:36:39 Axsuul: That would be my (naive) approach, yes 23:39:18 -!- jcowan [c6b912cf@gateway/web/freenode/ip.198.185.18.207] has quit [Ping timeout: 265 seconds] 23:40:45 -!- homie [~user@xdsl-78-34-109-36.netcologne.de] has quit [Read error: Connection reset by peer] 23:41:16 Axsuul: tried my best on #racket, I'm just a beginner tough 23:41:25 goodnight people :) 23:41:35 -!- singintime [~singintim@151.81.39.98] has left #scheme 23:42:21 homie [~user@xdsl-78-34-109-36.netcologne.de] has joined #scheme 23:46:50 pavelludiq [~quassel@83.222.190.105] has joined #scheme 23:48:36 imran_sr [~imran@75-18-254-4.lightspeed.uncyca.sbcglobal.net] has joined #scheme 23:53:25 -!- copumpkin [~pumpkin@17.101.89.205] has quit [Ping timeout: 260 seconds] 23:59:04 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 240 seconds]