00:00:29 sstrickl [~sstrickl@racket/sstrickl] has joined #scheme 00:26:10 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 00:26:28 tabemann [~travisb@adsl-69-210-135-127.dsl.milwwi.ameritech.net] has joined #scheme 00:27:50 b4283 [~b4283@118.150.145.197] has joined #scheme 00:34:07 -!- mmc1 [~michal@j212142.upc-j.chello.nl] has quit [Ping timeout: 264 seconds] 00:47:00 goutam [~textual@199.59.106.72] has joined #scheme 00:51:09 ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has joined #scheme 00:55:29 -!- goutam [~textual@199.59.106.72] has quit [Quit: My MacBook has gone to sleep. ZZZzzz] 01:06:44 -!- tenq is now known as tenq|away 01:11:42 -!- davexunit [~user@c-71-232-35-199.hsd1.ma.comcast.net] has quit [Remote host closed the connection] 01:15:09 -!- tabemann [~travisb@adsl-69-210-135-127.dsl.milwwi.ameritech.net] has quit [Ping timeout: 264 seconds] 01:26:55 tabemann [~travisb@adsl-69-217-172-166.dsl.milwwi.ameritech.net] has joined #scheme 01:29:15 -!- godfrey383 [~godfrey38@61-56-137-230-adsl-tai.STATIC.so-net.net.tw] has quit [] 01:49:07 -!- b4283 [~b4283@118.150.145.197] has quit [Remote host closed the connection] 01:57:10 brianmwaters [18278235@gateway/web/freenode/ip.24.39.130.53] has joined #scheme 01:59:49 Cromulent|2 [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has joined #scheme 02:01:38 jaaso [~user@109.175.27.246] has joined #scheme 02:02:49 -!- tenq|away is now known as tenq 02:03:22 -!- Cromulent|2 is now known as Cromulent 02:04:47 -!- jaaso [~user@109.175.27.246] has quit [Client Quit] 02:06:04 -!- brianmwaters [18278235@gateway/web/freenode/ip.24.39.130.53] has quit [Quit: Page closed] 02:06:50 jaaso [~user@109.175.27.246] has joined #scheme 02:14:16 -!- tolk` [~user@host245.190-226-90.telecom.net.ar] has quit [Ping timeout: 276 seconds] 02:56:52 I'm not sure I'd call the latest development version of scsh bit-rotten. 02:57:29 Has someone picked it up? 02:59:45 Riastradh: Yeah, the github link I posted above is being maintained by github.com/roderyc and there's been activity on the mailing list lately. 02:59:56 Oh, OK. 03:00:56 I can't personally vouch for it's stability, but roderyc seems somewhat committed to keeping scsh working. 03:03:45 -!- certainty [~david@www1.d-coded.de] has quit [Ping timeout: 245 seconds] 03:05:00 certainty [~david@www1.d-coded.de] has joined #scheme 03:25:07 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Ping timeout: 264 seconds] 03:31:18 waxysubs` [hope7@world.peace.net] has joined #scheme 03:31:57 -!- cosmez [~cosmez@200.92.100.68] has quit [Ping timeout: 264 seconds] 03:34:13 GlenK_ [~GlenK@vpn.lax-noc.com] has joined #scheme 03:36:14 joneshf-laptop_ [~joneshf@086.112-30-64.ftth.swbr.surewest.net] has joined #scheme 03:36:27 m4burns_ [m4burns@129.97.134.34] has joined #scheme 03:36:32 fadein_ [~Erik@c-67-161-246-186.hsd1.ut.comcast.net] has joined #scheme 03:37:02 pchrist_ [~spirit@gentoo/developer/pchrist] has joined #scheme 03:37:29 -!- waxysubs [hope5@world.peace.net] has quit [Remote host closed the connection] 03:37:30 -!- GlenK [~GlenK@vpn.lax-noc.com] has quit [Ping timeout: 240 seconds] 03:37:30 -!- joneshf-laptop [~joneshf@086.112-30-64.ftth.swbr.surewest.net] has quit [Ping timeout: 240 seconds] 03:37:30 -!- fadein [~Erik@c-67-161-246-186.hsd1.ut.comcast.net] has quit [Ping timeout: 240 seconds] 03:37:30 -!- m4burns [m4burns@taurine.csclub.uwaterloo.ca] has quit [Ping timeout: 240 seconds] 03:37:30 -!- pchrist [~spirit@gentoo/developer/pchrist] has quit [Ping timeout: 240 seconds] 03:38:50 -!- amgarching [~amgarchin@p4FD62EB1.dip0.t-ipconnect.de] has quit [Read error: Operation timed out] 03:46:00 preflex_ [~preflex@unaffiliated/mauke/bot/preflex] has joined #scheme 03:46:38 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping timeout: 256 seconds] 03:46:44 -!- preflex_ is now known as preflex 03:50:04 fridim__ [~fridim@bas2-montreal07-2925317871.dsl.bell.ca] has joined #scheme 03:50:28 -!- sttau [~sttau@unaffiliated/sttau] has quit [Ping timeout: 246 seconds] 03:57:09 sttau [~sttau@unaffiliated/sttau] has joined #scheme 04:15:18 Modius [~quassel@cpe-70-112-159-86.austin.res.rr.com] has joined #scheme 04:18:58 waxysubs [hope3@world.peace.net] has joined #scheme 04:20:19 -!- waxysubs [hope3@world.peace.net] has quit [Client Quit] 04:21:13 -!- GlenK_ [~GlenK@vpn.lax-noc.com] has left #scheme 04:21:38 -!- waxysubs` [hope7@world.peace.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 04:22:02 waxysubs [hope3@world.peace.net] has joined #scheme 04:23:51 rishi_ [~textual@199.59.106.72] has joined #scheme 04:29:21 githogori [~githogori@c-50-156-57-127.hsd1.ca.comcast.net] has joined #scheme 04:33:24 -!- joneshf-work [~joneshf@mail.concordusapps.com] has quit [Remote host closed the connection] 04:49:31 -!- Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 04:57:59 -!- yacks [~py@103.6.158.102] has quit [Quit: Leaving] 05:33:53 -!- fridim__ [~fridim@bas2-montreal07-2925317871.dsl.bell.ca] has quit [Ping timeout: 245 seconds] 05:34:28 -!- fridim_ [~fridim@bas2-montreal07-2925317871.dsl.bell.ca] has quit [Ping timeout: 276 seconds] 05:54:11 -!- arubin [~arubin@99-114-192-172.lightspeed.cicril.sbcglobal.net] has quit [Quit: Computer has gone to sleep.] 06:12:47 gravicappa [~gravicapp@ppp91-77-171-190.pppoe.mtu-net.ru] has joined #scheme 06:16:15 jvc [~jvc@124.202.191.62] has joined #scheme 06:18:18 question 06:18:54 in R7RS-small, when putting integers in bytevectors, what's the standard semantics for handling out-of-range values, i.e. ones not between 0 and 255? 06:23:29 jaaso` [~user@109.175.27.246] has joined #scheme 06:24:29 -!- jaaso [~user@109.175.27.246] has quit [Read error: Connection reset by peer] 06:54:35 Semantics? Sounds like a bug to me. 07:03:54 -!- jaaso` [~user@109.175.27.246] has quit [Remote host closed the connection] 07:05:55 przl [~przlrkt@p5B298CD1.dip0.t-ipconnect.de] has joined #scheme 07:14:52 -!- ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has quit [Ping timeout: 264 seconds] 07:20:12 ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has joined #scheme 07:26:30 -!- jvc [~jvc@124.202.191.62] has quit [Remote host closed the connection] 07:42:46 hiroakip [~hiroaki@ip-178-202-216-178.unitymediagroup.de] has joined #scheme 07:53:55 -!- ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has left #scheme 07:54:33 ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has joined #scheme 08:03:34 add^_ [~user@m5-241-24-126.cust.tele2.se] has joined #scheme 08:04:11 jewel [~jewel@105-237-24-51.access.mtnbusiness.co.za] has joined #scheme 08:04:26 -!- pygospa [~Pygosceli@kiel-d9bfd77a.pool.mediaWays.net] has quit [Read error: Operation timed out] 08:07:43 pygospa [~Pygosceli@kiel-d9bfd35a.pool.mediaWays.net] has joined #scheme 08:13:23 rszeno [~rszeno@79.114.93.229] has joined #scheme 08:16:07 -!- ltsampros [~user@178.128.69.130.dsl.dyn.forthnet.gr] has quit [Ping timeout: 264 seconds] 09:01:02 -!- przl [~przlrkt@p5B298CD1.dip0.t-ipconnect.de] has quit [Ping timeout: 240 seconds] 09:03:51 ltsampros [~user@178.128.69.130.dsl.dyn.forthnet.gr] has joined #scheme 09:27:49 yacks [~py@103.6.159.2] has joined #scheme 09:37:32 -!- yacks [~py@103.6.159.2] has quit [Quit: Leaving] 09:44:09 -!- gravicappa [~gravicapp@ppp91-77-171-190.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 09:44:28 gravicappa [~gravicapp@ppp91-77-171-190.pppoe.mtu-net.ru] has joined #scheme 09:48:10 yacks [~py@103.6.159.2] has joined #scheme 09:57:02 tabemann: Type error, but just "an error" kind of error, not "signals an error" kind of error. :P 09:57:07 I think .. let's check. 09:59:53 In 1.3.3 "Entry format": "It is an error for a procedure to be presented with an argument that it is not specified to handle. For succinctness, we follow the convention that if an argument name is also the name of a type listed in section 3.2, then it is an error if that argument is not of the named type. [...] The following naming conventions also imply type restrictions: [...] byte: exact integer 0 <= byte < 256 [...]" 10:00:06 And the bytevector section uses "byte". 10:00:42 We should give rudybot the ability to cite sections from the RnRS. :P 10:05:44 -!- DerGuteM1ritz is now known as DerGuteMoritz 10:26:37 fantazo [~fantazo@213.129.230.10] has joined #scheme 10:29:27 b4283 [~b4283@118.150.145.197] has joined #scheme 10:32:05 Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has joined #scheme 10:35:45 oleo [~oleo@xdsl-87-79-192-120.netcologne.de] has joined #scheme 10:36:14 Okasu [~1@unaffiliated/okasu] has joined #scheme 10:50:42 -!- yacks [~py@103.6.159.2] has quit [Quit: Leaving] 10:51:05 yacks [~py@103.6.159.2] has joined #scheme 10:51:59 amgarching [~amgarchin@p4FD61FD7.dip0.t-ipconnect.de] has joined #scheme 10:54:49 mmc1 [~michal@j212142.upc-j.chello.nl] has joined #scheme 11:19:48 -!- tenq is now known as tenq|away 11:24:00 -!- duncanm [~duncan@a-chinaman.com] has quit [Ping timeout: 260 seconds] 11:24:25 duncanm [~duncan@a-chinaman.com] has joined #scheme 11:24:26 la la la 11:24:49 -!- rishi_ [~textual@199.59.106.72] has quit [Quit: My MacBook has gone to sleep. ZZZzzz] 11:26:35 -!- amgarching [~amgarchin@p4FD61FD7.dip0.t-ipconnect.de] has quit [Ping timeout: 264 seconds] 11:28:54 -!- zbigniew [~zb@3e8.org] has quit [Ping timeout: 264 seconds] 11:29:47 zbigniew [~zb@3e8.org] has joined #scheme 11:30:14 -!- cdidd [~cdidd@128-68-26-107.broadband.corbina.ru] has quit [Read error: Operation timed out] 11:31:07 -!- jewel [~jewel@105-237-24-51.access.mtnbusiness.co.za] has quit [Ping timeout: 264 seconds] 11:35:27 jewel [~jewel@105-237-24-51.access.mtnbusiness.co.za] has joined #scheme 11:43:50 -!- add^_ [~user@m5-241-24-126.cust.tele2.se] has quit [Ping timeout: 240 seconds] 11:43:55 jerryzhou [~jerryzhou@58.245.253.218] has joined #scheme 11:45:50 -!- Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 11:47:42 cdidd [~cdidd@128-68-115-207.broadband.corbina.ru] has joined #scheme 11:48:02 -!- jerryzhou [~jerryzhou@58.245.253.218] has quit [Client Quit] 11:51:09 defanor [~d@ppp91-77-121-44.pppoe.mtu-net.ru] has joined #scheme 11:53:52 -!- defanor_ [~d@ppp91-77-134-217.pppoe.mtu-net.ru] has quit [Ping timeout: 264 seconds] 11:54:54 -!- yacks [~py@103.6.159.2] has quit [Quit: Leaving] 11:56:29 yacks [~py@103.6.159.2] has joined #scheme 12:02:43 -!- ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has quit [Remote host closed the connection] 12:26:20 userzxcvasdf [~neutral_a@c656847C1.dhcp.as2116.net] has joined #scheme 12:43:02 -!- pjb` is now known as pjb 12:45:28 Shoozza [shoozza@unaffiliated/shoozza] has joined #scheme 12:46:53 Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has joined #scheme 12:51:18 jvc [~jvc@124.202.191.62] has joined #scheme 12:51:42 -!- jvc [~jvc@124.202.191.62] has quit [Remote host closed the connection] 12:53:31 jvc [~jvc@124.202.191.62] has joined #scheme 12:55:32 -!- yacks [~py@103.6.159.2] has quit [Quit: Leaving] 13:03:46 -!- Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 13:11:54 -!- userzxcvasdf [~neutral_a@c656847C1.dhcp.as2116.net] has quit [Remote host closed the connection] 13:40:56 _5kg [~zifeitong@60.191.2.238] has joined #scheme 13:48:13 dessos_ [~dessos@c-174-60-176-249.hsd1.pa.comcast.net] has joined #scheme 13:48:55 -!- fds [~fds@tickle.compsoc.man.ac.uk] has quit [Read error: Operation timed out] 13:50:31 -!- dessos [~dessos@c-174-60-176-249.hsd1.pa.comcast.net] has quit [Read error: Connection reset by peer] 13:51:57 fds [~fds@tickle.compsoc.man.ac.uk] has joined #scheme 13:55:36 -!- cdidd [~cdidd@128-68-115-207.broadband.corbina.ru] has quit [Ping timeout: 240 seconds] 13:55:36 -!- asumu [~at@2001:470:b:b7:1e6f:65ff:fe23:c3d4] has quit [Ping timeout: 240 seconds] 13:55:37 asumu [~at@2001:470:b:b7:1e6f:65ff:fe23:c3d4] has joined #scheme 13:55:56 -!- jvc [~jvc@124.202.191.62] has quit [Remote host closed the connection] 13:56:43 cdidd [~cdidd@128-68-115-207.broadband.corbina.ru] has joined #scheme 14:13:11 fridim__ [~fridim@bas2-montreal07-2925317871.dsl.bell.ca] has joined #scheme 14:21:09 -!- mmc1 [~michal@j212142.upc-j.chello.nl] has quit [Ping timeout: 264 seconds] 14:30:04 jvc [~jvc@124.202.191.62] has joined #scheme 14:30:32 -!- jvc [~jvc@124.202.191.62] has quit [Remote host closed the connection] 14:31:26 amgarching [~amgarchin@p4FD61FD7.dip0.t-ipconnect.de] has joined #scheme 14:35:50 -!- gravicappa [~gravicapp@ppp91-77-171-190.pppoe.mtu-net.ru] has quit [Ping timeout: 245 seconds] 14:38:34 masm [~masm@a89-153-155-94.cpe.netcabo.pt] has joined #scheme 14:39:10 eric-atl [~eric-atl@c-76-122-117-137.hsd1.ga.comcast.net] has joined #scheme 14:39:10 kobain [~kobian@unaffiliated/kobain] has joined #scheme 14:40:45 -!- eric-atl [~eric-atl@c-76-122-117-137.hsd1.ga.comcast.net] has quit [Quit: eric-atl] 14:53:00 gravicappa [~gravicapp@ppp91-77-180-225.pppoe.mtu-net.ru] has joined #scheme 15:05:45 -!- dessos_ [~dessos@c-174-60-176-249.hsd1.pa.comcast.net] has left #scheme 15:06:20 -!- masm [~masm@a89-153-155-94.cpe.netcabo.pt] has quit [Quit: Leaving.] 15:11:36 nugnuts [~nugnuts@pool-173-63-24-234.nwrknj.fios.verizon.net] has joined #scheme 15:12:23 -!- nugnuts [~nugnuts@pool-173-63-24-234.nwrknj.fios.verizon.net] has quit [Client Quit] 15:33:26 Nisstyre [~yours@oftn/member/Nisstyre] has joined #scheme 15:52:25 userzxcvasdf [~neutral_a@c656847C1.dhcp.as2116.net] has joined #scheme 15:58:41 -!- amgarching [~amgarchin@p4FD61FD7.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 15:58:48 alexei [~amgarchin@p4FD61FD7.dip0.t-ipconnect.de] has joined #scheme 16:00:31 karswell [~user@87.115.76.165] has joined #scheme 16:07:21 -!- alexei [~amgarchin@p4FD61FD7.dip0.t-ipconnect.de] has quit [Ping timeout: 264 seconds] 16:10:49 rudybot: seen duncanm 16:10:49 *offby1: duncanm was seen quitting in a-chinaman.com four hours ago, saying "Ping timeout: 260 seconds", and then duncanm was seen joining in #scheme four hours ago 16:18:54 rishi_ [~textual@199.59.106.72] has joined #scheme 16:29:45 theseb [~cs@74.194.237.26] has joined #scheme 16:30:15 why is begin considered a SPECIAL form? all list elements get evaluated just like a "normal" operator 16:31:03 Maybe because it fixes evaluation order? 16:32:27 reading SICP slowly it appears there the "specialness" is subtle.....begin is guaranteed to eval all the elements in order from left to right! 16:32:40 fds: so yes i think you were right if that was what you were getting at 16:33:24 theseb: it also has splicing behavior when used at the top-level. 16:33:58 asumu: what is "splicing behavior"? 16:34:15 theseb: http://www.r6rs.org/final/html/r6rs/r6rs-Z-H-14.html#node_idx_418 (see bullet 1) 16:34:53 nugnuts [~nugnuts@pool-173-63-24-234.nwrknj.fios.verizon.net] has joined #scheme 16:35:45 arubin [~arubin@99.114.192.172] has joined #scheme 16:36:55 asumu: "This expression type is used to sequence side effects"....yup....begin has a guaranteed order unlike rest of scheme...nice 16:38:12 asumu: "the forms inside the are spliced into the surrounding body, as if the begin wrapper were not actually present." 16:38:36 asumu: the 2nd quote seems to be saying...."splicing basically means that the 'begin' isn't doing anything so you can ignore it" 16:39:10 That is not the case. It is especially useful for macros that introduce forms into its surrounding context. 16:39:29 For example, if your macro expands into a series of definitions that should end up in the module's body. 16:39:55 asumu: ah macros....ok..thanks 16:40:34 asumu: but what is the "begin" doing for you?...those defs will be there even if you forgot the begin wrapper 16:40:56 asumu: " as if the begin wrapper were not actually present " 16:40:59 -!- nugnuts [~nugnuts@pool-173-63-24-234.nwrknj.fios.verizon.net] has quit [Quit: Leaving] 16:42:22 It's not possible to write a macro that expands into (define x ...) (define y ...) without a `begin` form. Macros output a single syntactic form, not multiple. 16:43:04 So you have to output something like (begin (define x ...) (define y ...)) from the macro. 16:43:54 ok...thanks...that makes sense 16:44:06 Note that you can't use something like `let` there instead of `begin` because then the scoping is wrong. 16:44:07 i'm impressed you know macros....that's on my TODO list 16:44:57 asumu: naysayers ridicule lisp is always "dying" but there are folks like you happily doing real work with it and writing DSLs...:) 16:45:03 s/is/as 16:46:07 Lisp is, if anything, doing pretty well now. New lisps like Clojure and Julia are in the spotlight and generating more interest in it again. 16:47:17 *taylanub* has faint hopes for Guile to really become the "ubiquitous" extension language for GNU and other hackers. 16:47:17 asumu: i'm curious....how did you avoid the bandwagon that says Java and C++ must be used for all "real work"? 16:47:40 asumu: maybe you aren't afraid of peer pressure :) 16:48:12 taylanub: the idea is cool but "emacsifying" random apps by staple gunning guile to it doesn't seem like it will work imho 16:48:19 Well, to be fair, I work in academia and my job is to work on Racket and do research. It's harder in industry, I'm sure. 16:48:37 asumu: i've heard of Racket and ProgrammingByDesign...great stuff 16:48:46 karswell` [~user@146.90.31.156] has joined #scheme 16:49:02 asumu: Scheme's place in education is pretty solid 16:50:03 taylanub: correct me if i'm wrong 16:50:14 taylanub: i know gimp uses guile...not really sure how that works 16:50:34 Guile itself doesn't necessarily emacsify, that's what the Emacsy project is for. :) Guile is just a nice platform to embed in a C-family-language code-base and/or offer one's own code as an extension in Guile. 16:50:40 wvc [~wvc@62.183.86.228] has joined #scheme 16:50:43 taylanub: does that means we'll see people create insane .gimp files just like people make sophisticaed .emacs files? 16:50:49 taylanub: to tweak it all they want? 16:51:11 -!- karswell [~user@87.115.76.165] has quit [Ping timeout: 264 seconds] 16:51:25 taylanub: ok 16:52:13 rudybot_ [~luser@c-174-62-235-168.hsd1.ma.comcast.net] has joined #scheme 16:52:18 taylanub: see? suppose you bolt guile onto a C app...now what? you still have massive work to emacsify it....(I'm defining emacsification as the extreme end result of guile integration) 16:53:05 -!- rudybot_ [~luser@c-174-62-235-168.hsd1.ma.comcast.net] has quit [Remote host closed the connection] 16:53:36 add^_ [~user@m5-241-132-120.cust.tele2.se] has joined #scheme 16:53:53 aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has joined #scheme 16:59:22 -!- rszeno [~rszeno@79.114.93.229] has quit [Quit: Leaving.] 16:59:35 -!- b4283 [~b4283@118.150.145.197] has quit [Remote host closed the connection] 17:04:04 Well that's the wrong way to look at it; obviously it doesn't magically turn an application into an Emacs-for-whatever, and neither should it; however when you expose the main capabilities of your application as a Guile extension (contrast to embedding), you make it possible for any other Guile-using application to natively interact with it. 17:05:16 theseb: (begin e1 .. en) == ((lambda (ignored) ((lambda (ignored)  ((lambda (ignored) en) en-1) ) e2)) e1) ; therefore the specialness of begin is not because it can't be implemented as a macro. 17:06:04 -!- wvc [~wvc@62.183.86.228] has left #scheme 17:06:38 pjb: whoa 17:07:18 pjb: why do you even need a macro..it seems you just got the equivalent of a begin form with nested lambdas!? 17:07:38 pjb: thanks btw 17:08:16 sepisoad [~sepisoad@175.137.255.134] has joined #scheme 17:08:19 theseb: Would you honestly want to write code that looks like that ? :P 17:08:55 -!- kryptiskt_ [kryptiskt@213.101.209.229] has quit [Ping timeout: 264 seconds] 17:08:57 theseb: the difference in in r5rs 5.1: At the top level of a program (begin ...) is equivalent to the sequence of expressions, definitions, and syntax definitions that form the body of the begin. 17:09:09 arcfide [~arcfide@c-98-223-198-177.hsd1.in.comcast.net] has joined #scheme 17:09:57 ((lambda (ignored) a) (define a 42)) is not the same as (begin (define a 42) a). 17:10:20 when that begin form is a toplevel form. 17:10:36 how to accept arbitrary amount of argument by a function, like printf() function in c 17:10:38 That's the "other" begin, actually, which just happens to have the same name. 17:11:00 sepisoad: (lambda (first second . rest) ...), or (lambda whole-arg-list ...) 17:11:45 Don't get confused and think that this means you can apply a procedure to an argument-list like (proc . arg-list), it doesn't. 17:12:30 taylanub, i'm kind of newbie 17:12:59 maybe you can refer me to an online source with more description 17:13:04 -!- karswell` [~user@146.90.31.156] has quit [Ping timeout: 264 seconds] 17:21:25 If you want a whole book you can go with SICP or HtdP. 17:21:31 HtDP* 17:21:55 Other than that, I don't know. 17:22:32 tolk` [~user@host245.190-226-90.telecom.net.ar] has joined #scheme 17:23:15 karswell [~user@87.115.62.189] has joined #scheme 17:24:36 taylanub: I like PLAI but it isn't an intro book at all 17:24:47 The Little Schemer is probably better but not free 17:27:09 or just the standard: http://www.schemers.org/Documents/Standards/R5RS/HTML/ 17:27:20 which has the advantage of having only 50 pages index included. 17:27:50 Well if you're a Scheme newbie but not a programming newbie, that would work. 17:28:42 taylanub: s/programming/functional programming/ 17:32:24 pjb: what is a "toplevel" form? 17:32:37 pjb: does that mean it is not inside a lambda? 17:33:32 It's not inside any parenthesis. 17:33:41 Either at the REPL or in a file. 17:34:20 Well, it could be inside parentheses of an operator that preserves the toplevelness of the subforms. (begin (begin (define a 42)) (begin a)) --> 42 ; I'd expect. 17:35:07 pjb: is ((lambda (ignored) a) (define a 42)) is not the same as (begin (define a 42) a). <--- why not? looks same to me 17:36:49 because lambda introduces lexical scopes. The (define a 42) doesn't define a in a scope englobing the (lambda (ignored) a), therefore the free variable a in the later is not the same as the variable defined by define. 17:37:31 Furthermore, in ((lambda (ignored) a) (define a 42)) the define is evaluated in the null environment (at least in mit scheme) so it cannot even define a variable. 17:41:13 pjb: are you saying (define a 42) inside a lambda won't make the var a visible outside the lambda? 17:41:35 Notice it's different for ((lambda () (define a 42) a)); there define is used in the lexical environment of lambda. That's why taylanub talked of the "other" begin. One could consider that it's not even the same operator, that here, it's lambda that inteprets begin forms in its body in a special way. Hence also the name of special operator. 17:41:54 In ((lambda (ignored) a) (define a 42)), the define is not inside the lambda it's outside. 17:42:11 oh yes i see 17:42:49 Eh, that's invalid syntax by the way. 17:43:32 A procedure argument must strictly be an "expression". A `define' usage is a "definition". 17:43:41 (I might be slightly off here.) 17:44:11 taylanub: a definition is a valid expression...not sure you said that right 17:44:17 Scheme is too complicated compared to Common Lisp. In CL, all the forms are expressions. 17:46:23 theseb: In Scheme, a definition is not an expression. 17:47:53 taylanub: ug...that's not good...i agree with pjb...that's getting a little too funky for me 17:48:10 taylanub: i like the elegance of "everything in lisp is an expression" 17:48:37 Well you can do without define basically. 17:49:20 CADD [~CADD@12.227.104.109] has joined #scheme 17:49:46 It's just a tad inconvenient. 17:49:59 We're so used to state. 17:50:50 If you call forced uniformity elegance, go ahead. ;) 17:50:53 pjb: define and set! are the 2 special forms that get into state 17:51:24 pjb: i always imagined those as being equivalent to a lambda wrapper 17:51:26 `define' is meant to be seen as something declarative, the way I see it. 17:53:46 Hm? 17:58:22 fridim_ [~fridim@bas2-montreal07-2925317871.dsl.bell.ca] has joined #scheme 18:00:36 -!- githogori [~githogori@c-50-156-57-127.hsd1.ca.comcast.net] has quit [Remote host closed the connection] 18:01:44 I would call `define' declarative by nature.. 18:08:48 -!- taylanub [~taylanub@85.100.64.6] has quit [Disconnected by services] 18:08:51 -!- theseb [~cs@74.194.237.26] has quit [Quit: Leaving] 18:09:21 taylanub [~taylanub@78.179.197.51] has joined #scheme 18:11:06 ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has joined #scheme 18:18:00 -!- Nisstyre [~yours@oftn/member/Nisstyre] has quit [Quit: Leaving] 18:18:06 -!- sepisoad [~sepisoad@175.137.255.134] has quit [Read error: Connection reset by peer] 18:18:30 sepisoad [~sepisoad@175.137.255.134] has joined #scheme 18:18:42 Nisstyre-laptop [~yours@oftn/member/Nisstyre] has joined #scheme 18:20:48 -!- oleo [~oleo@xdsl-87-79-192-120.netcologne.de] has quit [Ping timeout: 256 seconds] 18:21:06 oleo [~oleo@xdsl-78-35-180-235.netcologne.de] has joined #scheme 18:28:48 -!- Nisstyre-laptop [~yours@oftn/member/Nisstyre] has quit [Quit: Leaving] 18:32:45 jvc [~jvc@124.202.191.62] has joined #scheme 18:39:14 gabnet [~gabnet@ACaen-652-1-255-172.w90-17.abo.wanadoo.fr] has joined #scheme 18:40:00 -!- jvc [~jvc@124.202.191.62] has quit [Ping timeout: 245 seconds] 18:44:27 -!- fantazo [~fantazo@213.129.230.10] has quit [Remote host closed the connection] 18:44:42 Nisstyre-laptop [~yours@oftn/member/Nisstyre] has joined #scheme 18:51:54 -!- bjz [~brendanza@125.253.99.68] has quit [Quit: Leaving...] 18:59:39 -!- gabnet [~gabnet@ACaen-652-1-255-172.w90-17.abo.wanadoo.fr] has quit [Quit: Quitte] 19:09:12 kryptiskt [kryptiskt@213.101.209.229] has joined #scheme 19:16:22 is it possible to implement internal define as a macro? 19:19:43 -!- taylanub [~taylanub@78.179.197.51] has quit [Disconnected by services] 19:20:13 taylanub [~taylanub@85.100.224.3] has joined #scheme 19:23:33 bubo_ [~bubo@91.224.149.58] has joined #scheme 19:25:27 -!- bubo_ [~bubo@91.224.149.58] has quit [Client Quit] 19:26:15 tolk`` [~user@host182.190-30-206.telecom.net.ar] has joined #scheme 19:28:11 -!- tolk` [~user@host245.190-226-90.telecom.net.ar] has quit [Read error: Operation timed out] 19:28:13 round-robin [~round-rob@91.224.149.58] has joined #scheme 19:28:35 -!- round-robin [~round-rob@91.224.149.58] has quit [Client Quit] 19:29:09 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 240 seconds] 19:30:31 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 19:31:00 -!- m4burns_ is now known as m4burns 19:32:01 tsuyoshi: you can write a macro named lambda that expands to a lambda with let instead of define. 19:32:09 But not define itself. 19:34:19 karswell` [~user@87.112.162.56] has joined #scheme 19:36:36 -!- karswell [~user@87.115.62.189] has quit [Ping timeout: 268 seconds] 19:41:32 -!- karswell` [~user@87.112.162.56] has quit [Ping timeout: 268 seconds] 19:42:05 alexei [~amgarchin@p4FD61FD7.dip0.t-ipconnect.de] has joined #scheme 19:48:18 bubo_ [~bubo@weide.mur.at] has joined #scheme 19:49:11 -!- bubo_ is now known as atom-heart 19:49:30 -!- atom-heart [~bubo@weide.mur.at] has left #scheme 19:50:21 jao [~jao@55.Red-79-148-157.dynamicIP.rima-tde.net] has joined #scheme 19:50:24 -!- jao [~jao@55.Red-79-148-157.dynamicIP.rima-tde.net] has quit [Changing host] 19:50:25 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 19:57:32 bubo_ [~bubo@gateway/tor-sasl/atom-heart] has joined #scheme 19:58:09 -!- bubo_ is now known as atom-heart 19:59:15 -!- atom-heart [~bubo@gateway/tor-sasl/atom-heart] has quit [Client Quit] 20:01:36 ffio [~fire@unaffiliated/security] has joined #scheme 20:03:42 yacks [~py@103.6.159.2] has joined #scheme 20:09:02 -!- jewel [~jewel@105-237-24-51.access.mtnbusiness.co.za] has quit [Ping timeout: 256 seconds] 20:12:15 pjb: so a lambda macro, which has a define literal? 20:12:30 I guess that makes sense 20:14:31 round-robin [~bubo@91.224.149.58] has joined #scheme 20:15:16 -!- round-robin [~bubo@91.224.149.58] has quit [Client Quit] 20:21:59 -!- tolk`` is now known as tolk 20:22:48 bubo_ [~bubo@91.224.149.58] has joined #scheme 20:22:49 -!- bubo_ [~bubo@91.224.149.58] has quit [Client Quit] 20:27:59 -!- userzxcvasdf [~neutral_a@c656847C1.dhcp.as2116.net] has quit [Remote host closed the connection] 20:54:19 mmc1 [~michal@j212142.upc-j.chello.nl] has joined #scheme 20:55:00 theseb [~cs@74.194.237.26] has joined #scheme 20:56:10 bjz [~brendanza@125.253.99.68] has joined #scheme 20:57:09 zett_zelett [~zett_zele@i59F56BE4.versanet.de] has joined #scheme 20:57:11 is the return value of a lambda defined function like (lambda (a) b) standardized or can it vary between compliant implementations? 20:57:18 i know it "should" be a procedure but how a procedure is *represented* doesn't seem that important or relevant 20:57:23 reason i'm asking is it seems cleanest to me to just have a return value = to original lambda defined function itself 21:01:06 the return value is something you can apply to values, however that is defined in your implementation 21:01:44 this could be a pointer to machine code, a structure containing some sort of bytecode for an interpreter, or even just the s-expressions, for a source interpreter 21:04:02 Is there somewhere a pdf of HtDP? 21:04:17 Couldnt find one with a simple ddg search. 21:05:19 you can create one from the html. there probably is no legal pdf version, i'd guess 21:06:20 bubo_ [~bubo@91.224.149.58] has joined #scheme 21:06:40 -!- bubo_ [~bubo@91.224.149.58] has quit [Client Quit] 21:07:24 Hm, sounds complicated. Thanks though. 21:08:58 zett_zelett: what implementation are you using? 21:10:51 bubo_ [~bubo@91.224.149.58] has joined #scheme 21:11:16 -!- bubo_ [~bubo@91.224.149.58] has quit [Client Quit] 21:11:47 zett_zelett: i see what you mean...that bites....yes a PDF is sorely needed 21:13:47 ecraven: oh good.....yes..i guess what i prefer is what you call a source interpreter 21:14:09 ecraven: i was essentially seeing if that was "allowed"....i like idea of treating everything as s-expressions and returning s expressions 21:14:30 ecraven: instead of weird voodoo like #procedure 21:14:51 or worse....#0x234aafab 21:15:20 -!- alexei [~amgarchin@p4FD61FD7.dip0.t-ipconnect.de] has quit [Ping timeout: 256 seconds] 21:15:22 theseb: I wouldn't call that "weird voodoo" :) 21:15:45 theseb: well, whatever you return, it needs to be something that your interpreter or compiler can apply to values.. 21:15:54 -!- joneshf-laptop_ [~joneshf@086.112-30-64.ftth.swbr.surewest.net] has quit [Ping timeout: 256 seconds] 21:16:11 -!- dsmith [~dsmith@cpe-184-56-129-232.neo.res.rr.com] has quit [Ping timeout: 260 seconds] 21:16:35 and this includes closure information (the construction environment), which is not part of the s-expression directly 21:17:14 karswell [~user@233.127.112.87.dyn.plus.net] has joined #scheme 21:18:09 -!- gravicappa [~gravicapp@ppp91-77-180-225.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 21:19:00 alexei [~amgarchin@p4FD61FD7.dip0.t-ipconnect.de] has joined #scheme 21:21:39 Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has joined #scheme 21:22:38 joneshf-laptop [~joneshf@086.112-30-64.ftth.swbr.surewest.net] has joined #scheme 21:23:31 -!- zett_zelett [~zett_zele@i59F56BE4.versanet.de] has quit [Read error: Connection timed out] 21:23:50 zett_zelett [~zett_zele@i59F56BE4.versanet.de] has joined #scheme 21:25:00 lelzrawr [~coderarit@ip98-166-82-125.hr.hr.cox.net] has joined #scheme 21:26:23 -!- Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has quit [Client Quit] 21:28:34 -!- lelzrawr [~coderarit@ip98-166-82-125.hr.hr.cox.net] has left #scheme 21:30:22 procedures are a disjoint type, though 21:31:06 dsmith [~dsmith@cpe-184-56-129-232.neo.res.rr.com] has joined #scheme 21:31:35 e.g. (pair? (lambda (a) b)) must return #f 21:34:05 -!- theseb [~cs@74.194.237.26] has quit [Quit: Leaving] 21:37:05 SrPx [b19e2376@gateway/web/freenode/ip.177.158.35.118] has joined #scheme 21:38:43 Hey guys. Just wondering, is there any reasoning for so many built-in functions in the specification, as most of them could be implemented with Lambda Calculus? (I mean, why not make the specification slimmer and implement more complicated functions as compiler optimizations instead of part of the specs)? 21:40:26 SrPx: which specification are you talking about? 21:41:08 tsuyoshi: r6sr? sorry if I misunderstood something (: 21:41:14 It feels a lot like a troll question. 21:41:16 r6rs* 21:41:28 SrPx: what would be examples of such functions? 21:41:32 or a flamebait 21:41:37 add^_: tune your troll sensor better then 21:42:07 SrPx: ok, so in that case, the reasoning is, they want it to be useful for programmers that don't want to waste time reinventing the wheel 21:42:20 i'm here for longer than you most likely, people know something i ask weird questions but that is part of learning a lot of things and not being afraid of asking okay? add^_ 21:42:27 (I don't happen to like r6rs, myself) 21:42:29 sometimes* 21:42:56 tsuyoshi: I see, but wouldn't detached standard libs work for that purpose? 21:42:59 I'd more lean to "portability" as an answer 21:43:06 SrPx: have you looked at r7rs? 21:43:14 SrPx: do I find it convenient not having to implement (cos x) every time I need it 21:43:17 no, let me see. is it thinner? ecraven 21:43:34 there's a core language and extension libraries 21:43:41 srpx: well, maybe 21:43:45 the core is much closer to r5rs 21:43:47 alexei: I mean moving it to a standard lib instead of the spec, not removing it entirely 21:43:53 SrPx: Just make your own implementation 21:43:55 Then 21:43:56 ecraven: I'll take a look brb 21:45:23 SrPx: like.. I'm implementing scheme right now 21:45:54 I took a look at r6rs and just decided I didn't want to do that, so I'm doing r5rs instead 21:46:08 Oh, interesting ! They made a step back ecraven 21:46:12 add^_: performance 21:46:47 So you answered your own question? Good 21:47:43 which is not to say that r6rs is illegitimate... I think it's sort of like they forked the language 21:48:42 -!- Okasu [~1@unaffiliated/okasu] has quit [Quit: leaving] 21:49:09 SrPx: Scheme tries to strike a balance between being elegantly small and actually useful. Just because you *can* implement everything in terms of lambda or SK combinators doesn't mean it's practically useful to do so. 21:49:36 levi: that makes a lot of sense 21:50:00 it's becoming clear as I read it too 21:50:28 And in a sense, most of what's in SxRS *is* describing standard library features rather than core language features. The point is to define a useful language, and that means both a core and ways to do some common subset of things with it. 21:51:42 Okay, just wondering, then, is there a special reason Scheme is not curried? 21:52:07 I think it used to have currying... in r2rs or something 21:52:49 You can write curried functions as easily as non-curried ones. It just doesn't do it implicitly. 21:53:31 levi: without the implicity it's not as easy 21:53:40 -!- Shoozza [shoozza@unaffiliated/shoozza] has quit [Excess Flood] 21:54:49 The syntax of Scheme makes curried functions a bit more awkward to use than ML or Haskell curried functions. 21:55:04 SrPx: I don't know why it's not in scheme, but I think currying makes code harder to read 21:55:18 And Scheme tends to favor being explicit about things. 21:55:30 my main language is sml and I avoid creating curried functions in it 21:55:34 Shoozza [shoozza@unaffiliated/shoozza] has joined #scheme 21:56:22 You could easily write a curried-define form via a macro. 21:56:55 Hmm okay 21:56:59 Because multi-parameter functions in Scheme are very convenient to have, it's a better default choice. 21:57:55 Try writing out a familiar Scheme program with the assumption that all functions take a single parameter. I think you'll find it very awkward. 21:58:54 -!- zett_zelett [~zett_zele@i59F56BE4.versanet.de] has quit [Read error: Connection timed out] 21:59:54 zett_zelett [~zett_zele@i59F56BE4.versanet.de] has joined #scheme 22:00:07 It feels much more natural in ML or Haskell because application is expressed by juxtaposition rather than explicit syntax, so you just have to put parameters next to one another and they'll be applied one at a time. In Scheme, you'd have to wrap each application in parentheses. 22:01:24 So instead of (cons elt lst), you have ((cons elt) lst), which gets awkward quickly as the number of parameters grows. 22:03:14 You may as well ask, "Why do functions return implicitly to where they were called instead of requiring you to pass an explicit continuation?" The two forms of program are isomorphic when you have access to call/cc, but one of them is far more pleasant to use than the other! 22:03:46 tsuyoshi: have you looked at r7rs? 22:04:39 ecraven: yes 22:05:16 -!- CADD [~CADD@12.227.104.109] has quit [Ping timeout: 264 seconds] 22:05:20 doesn't that look like a reasonable successor to r5rs? 22:05:30 I don't really think it's an improvement over r5rs... but maybe I'll switch to it later 22:08:48 I'm coming from the point of view that I want to use scheme as an extension language, and write mostly in sml 22:09:43 and r6rs is definitely coming from the point of view of people that want to write everything in scheme 22:11:42 r7rs seems to be the result of people getting angry about r6rs 22:12:41 and I'm not invested enough in scheme to be angry about anything 22:15:31 I guess... what bothers me about r7rs is, r5rs could definitely use more standard procedures, but I think otherwise it's fine 22:15:57 but r7rs changes the syntax and introduces new types 22:17:11 -!- rishi_ [~textual@199.59.106.72] has quit [Quit: My MacBook has gone to sleep. ZZZzzz] 22:18:28 -!- Nisstyre-laptop is now known as Nisstyre 22:21:40 -!- sepisoad [~sepisoad@175.137.255.134] has quit [Ping timeout: 245 seconds] 22:54:49 Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has joined #scheme 22:56:31 -!- Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has quit [Client Quit] 22:58:32 Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com] has joined #scheme 23:14:28 jerryzhou [~jerryzhou@58.245.253.218] has joined #scheme 23:20:52 -!- pygospa [~Pygosceli@kiel-d9bfd35a.pool.mediaWays.net] has quit [Disconnected by services] 23:21:00 TheRealPygo [~Pygosceli@kiel-5f768cae.pool.mediaWays.net] has joined #scheme 23:21:28 karswell` [~user@134.161.125.91.dyn.plus.net] has joined #scheme 23:24:22 -!- karswell [~user@233.127.112.87.dyn.plus.net] has quit [Ping timeout: 276 seconds] 23:28:23 -!- karswell` [~user@134.161.125.91.dyn.plus.net] has quit [Ping timeout: 240 seconds] 23:33:47 What changes in r7rs are you opposed to? 23:35:15 karswell [~user@46.208.103.188] has joined #scheme 23:47:32 -!- SrPx [b19e2376@gateway/web/freenode/ip.177.158.35.118] has quit [Disconnected by services] 23:56:31 vector constants question 23:57:28 unquoted vector constants, are they equivalent to say (vector x y ...), i.e. x and y are evaluated, or are they equivalent to '#(x y), i.e. x and y are not evaluated?