00:00:29 wbooze [~wbooze@xdsl-78-35-141-61.netcologne.de] has joined #scheme 00:02:16 -!- wbooze [~wbooze@xdsl-78-35-141-61.netcologne.de] has quit [Client Quit] 00:03:31 wbooze [~wbooze@xdsl-78-35-141-61.netcologne.de] has joined #scheme 00:05:48 -!- amoe [~amoe@host-92-26-175-177.as13285.net] has quit [Read error: Connection reset by peer] 00:06:29 amoe [~amoe@host-92-26-168-135.as13285.net] has joined #scheme 00:08:59 -!- hiroakip [~hiroaki@p54A6BE41.dip.t-dialin.net] has quit [Quit: Ex-Chat] 00:09:24 -!- sirdancealot7 [~sirdancea@98.82.broadband5.iol.cz] has quit [Remote host closed the connection] 00:22:40 -!- karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has quit [Remote host closed the connection] 00:32:57 karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 00:35:39 -!- Nisstyre-laptop [~yours@oftn/member/Nisstyre] has quit [Read error: Connection reset by peer] 00:36:47 -!- jrapdx [~jra@c-76-115-235-187.hsd1.wa.comcast.net] has quit [Remote host closed the connection] 00:37:18 -!- masm [~archie@bl18-53-235.dsl.telepac.pt] has quit [Remote host closed the connection] 00:44:47 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 00:48:07 -!- `quote` [~quote@c-98-234-17-207.hsd1.ca.comcast.net] has quit [Ping timeout: 265 seconds] 00:52:16 -!- spiderweb [~user@unaffiliated/lcc] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 00:55:50 spiderweb [~user@unaffiliated/lcc] has joined #scheme 00:59:13 -!- karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has quit [Remote host closed the connection] 01:01:10 adu [~ajr@pool-108-28-107-155.washdc.fios.verizon.net] has joined #scheme 01:02:33 -!- adu [~ajr@pool-108-28-107-155.washdc.fios.verizon.net] has quit [Remote host closed the connection] 01:09:29 karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 01:11:13 sirdancealot7 [~sirdancea@98.82.broadband5.iol.cz] has joined #scheme 01:21:57 -!- dsmith [~dsmith@cpe-184-56-129-232.neo.res.rr.com] has quit [Ping timeout: 265 seconds] 01:25:18 Sgeo [~Sgeo@ool-ad034ea6.dyn.optonline.net] has joined #scheme 01:25:52 Are there things that can be done with Scheme macros, and similar things (Racket's syntax-case not sure if that's Scheme, for instance) that cannot be done with CL's defmacro? 01:26:22 Or with Clojure's defmacro, come to think of it? (Clojure's defmacro can receive a hash of lexically bound symbols) 01:36:42 Yes: You can write macros that work reliably with lexical scope. 01:36:54 dsmith [~dsmith@cpe-184-56-129-232.neo.res.rr.com] has joined #scheme 01:40:42 Nisstyre [~yours@oftn/member/Nisstyre] has joined #scheme 01:42:37 -!- ase [~se@ip56583baa.direct-adsl.nl] has quit [Remote host closed the connection] 01:43:45 I think I recall someone actually implementing Racket-style macros in Clojure 01:44:14 Actually, something I can think of that could theoretically be done in Clojure, but is currently... no good tooling exists 01:44:21 A fully recursive and correct macroexpander 01:44:43 There are a lot of horribly broken ones out there 01:44:51 But no really good ones 01:45:17 Riastradh, how so? Is there something unreliable about careful use of gensym? 01:49:00 Sgeo: Yes, that's the Scheme Macro Insight. 01:49:57 Gensyms alone can solve the problem of capturing names bound in the macro's calling environment, but they *cannot* solve thee problem of capturing names bound in the macro's definining environment. 01:50:28 You either have to preprocess everything, which is what most Schemes do, or you mess about with first-class environments. 01:50:39 Yes, Sgeo. Gensym lets the macro make up names that won't shadow the user's names. But it doesn't help the macro to refer to names such as CONS, CAR, and CDR without the user's possibly shadowing them. 01:51:51 Common Lisp mostly works around this problem with packages and package locks. Package locks help only for the COMMON-LISP package or any implementation-specific stuff, and the whole package mess in Common Lisp causes far more problems than it solves. 01:52:47 Clojure solves that problem by, within quasiquote, expanding symbols by themselves to a namespaced form, so car becomes clojure.core/car, and preventing the user from shadowing clojure.core/car 01:53:41 (let [foo/bar baz] ...) is invalid in Clojure... and I recently wrote a blog post suggesting it should be valid. I'm going to need to think about that a bit more. 01:54:02 That could mean `Clojure uses packages like Common Lisp', or it could mean Clojure has half-heartedly stepped in the direction of hygienic macros without realizing (or understanding) it. 01:54:03 jrapdx [~jra@c-76-115-235-187.hsd1.wa.comcast.net] has joined #scheme 01:54:04 -!- amgarchIn9 [~amgarchin@p4FD6058E.dip0.t-ipconnect.de] has quit [Quit: Konversation terminated!] 01:55:10 Sgeo: That works for clojure.core, but does it work in the general case 01:55:15 jcowan, yes 01:56:04 If I define a function foo in my namespace myns, then a macro referring to that function will say myns/foo. If, in the same file, I (let [foo 5] (some-use-of-my-macro)), foo is a different symbol from myns/foo, so there's no shadowing 01:56:07 I guess that's close to the Newlisp solution, where you can in principle write a namespace for every procedure. 01:56:22 Symbols in Clojure are different from CL symbols 01:56:48 I sort of talked/ranted about it http://sgeo.tumblr.com/post/37650151853/common-lisp-symbols-vs-clojure-symbols 01:56:48 http://tinyurl.com/apb44jq 01:56:55 Maybe Clojure has something halfway between Common Lisp packages and a half-hearted step in the direction of hygienic macros. 01:56:59 Oh hey rudybot's here 01:58:15 have you guys look at "Embedding Hygiene-Compatible Macros in an Unhygienic Macro System."? 01:58:32 Anything moving in the direction of Common Lisp symbols is a probably serious engineering mistake. Why Clojure doesn't just do hygienic macros, I dunno. 02:00:17 Riastradh, Clojure symbols are different from CL symbols. In CL, if you're in a package FOO and read the symbol BAR, that symbol is read as being in package FOO. By contrast, in Clojure, if you're in namespace foo, and reading symbol bar, you get an un-namespaced symbol bar 02:02:18 grettke: That's all about identifier syntax. It's really more like "Embedding Hygiene-Compatible Macros Next To An Unhygienic Macro System" 02:02:33 jcowan: oh 02:02:50 Well, I exaggerate, but not that much. 02:03:42 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 276 seconds] 02:04:37 -!- mmc [~michal@178-85-64-28.dynamic.upc.nl] has quit [Ping timeout: 244 seconds] 02:07:17 mmc [~michal@178-85-64-28.dynamic.upc.nl] has joined #scheme 02:07:38 b4283 [~b4283@60-249-196-111.HINET-IP.hinet.net] has joined #scheme 02:12:50 rrandom [~rrandom@124.160.74.174] has joined #scheme 02:13:53 -!- mmc [~michal@178-85-64-28.dynamic.upc.nl] has quit [Ping timeout: 245 seconds] 02:14:27 -!- peterhil [~peterhil@91-157-48-10.elisa-laajakaista.fi] has quit [Ping timeout: 240 seconds] 02:23:48 mmc [~michal@178-85-64-28.dynamic.upc.nl] has joined #scheme 02:30:06 peterhil [~peterhil@91-157-48-10.elisa-laajakaista.fi] has joined #scheme 02:34:37 -!- RageOfThou [~RageOfTho@cable-77-221-21-70.dynamic.telemach.ba] has quit [Ping timeout: 276 seconds] 02:40:15 -!- Oejet [~Oejet@unaffiliated/oejet] has quit [Quit: Leaving.] 02:40:24 youlysses [~user@75-132-17-145.dhcp.stls.mo.charter.com] has joined #scheme 02:55:08 -!- mmc [~michal@178-85-64-28.dynamic.upc.nl] has quit [Ping timeout: 245 seconds] 02:55:21 -!- rrandom [~rrandom@124.160.74.174] has quit [Quit: ] 02:55:35 Giomancer [~Gio@adsl-76-231-35-17.dsl.irvnca.sbcglobal.net] has joined #scheme 02:55:36 -!- eMBee [~eMBee@foresight/developer/pike/programmer] has quit [Quit: Lost terminal] 03:07:53 -!- bananagram [~bot@c-98-198-236-112.hsd1.tx.comcast.net] has quit [Ping timeout: 255 seconds] 03:10:38 -!- FireFly [~firefly@oftn/member/FireFly] has quit [Excess Flood] 03:11:19 FireFly [~firefly@oftn/member/FireFly] has joined #scheme 03:20:33 toekutr [~user@50-0-51-11.dsl.static.sonic.net] has joined #scheme 03:22:34 eMBee [~eMBee@foresight/developer/pike/programmer] has joined #scheme 03:40:18 -!- spiderweb [~user@unaffiliated/lcc] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 03:53:03 bananagram [~bot@c-98-198-236-112.hsd1.tx.comcast.net] has joined #scheme 03:56:37 -!- wbooze [~wbooze@xdsl-78-35-141-61.netcologne.de] has quit [Ping timeout: 265 seconds] 04:03:45 spiderweb [~lcc@unaffiliated/lcc] has joined #scheme 04:07:22 -!- FireFly [~firefly@oftn/member/FireFly] has quit [Excess Flood] 04:08:05 FireFly [~firefly@oftn/member/FireFly] has joined #scheme 04:09:36 -!- spiderweb is now known as dystopik 04:10:14 -!- dystopik is now known as spiderweb 04:27:33 adu [~ajr@pool-108-28-107-155.washdc.fios.verizon.net] has joined #scheme 04:32:45 Onionnion|Eee [~ryan@adsl-68-254-166-23.dsl.milwwi.ameritech.net] has joined #scheme 04:43:44 -!- mr_vile [~carnage@9ch.in] has quit [Read error: Connection reset by peer] 04:44:27 mr_vile [~carnage@9ch.in] has joined #scheme 04:47:50 -!- grettke [~grettke@cpe-65-30-29-70.wi.res.rr.com] has quit [Quit: Leaving] 04:55:11 -!- micro [~micro@ec2-50-16-189-142.compute-1.amazonaws.com] has quit [Ping timeout: 260 seconds] 05:12:02 amoe_ [~amoe@host-92-26-175-150.as13285.net] has joined #scheme 05:14:44 -!- amoe [~amoe@host-92-26-168-135.as13285.net] has quit [Ping timeout: 252 seconds] 05:15:01 dnolen [~user@cpe-74-64-32-223.nyc.res.rr.com] has joined #scheme 05:24:12 -!- spiderweb [~lcc@unaffiliated/lcc] has quit [Quit: leaving] 05:33:28 spiderweb [~lcc@unaffiliated/lcc] has joined #scheme 05:44:09 -!- jrapdx [~jra@c-76-115-235-187.hsd1.wa.comcast.net] has quit [Remote host closed the connection] 05:55:19 -!- spiderweb [~lcc@unaffiliated/lcc] has quit [Quit: leaving] 05:55:26 -!- bananagram [~bot@c-98-198-236-112.hsd1.tx.comcast.net] has quit [Ping timeout: 245 seconds] 06:03:02 spiderweb [~user@unaffiliated/lcc] has joined #scheme 06:08:12 -!- jcowan [~John@mail.digitalkingdom.org] has quit [Quit: Leaving] 06:12:40 kvda [~kvda@ppp121-44-56-186.lns20.syd6.internode.on.net] has joined #scheme 06:33:38 gravicappa [~gravicapp@ppp91-77-169-49.pppoe.mtu-net.ru] has joined #scheme 07:03:37 bniels [~niels@p4FD6B0C0.dip.t-dialin.net] has joined #scheme 07:08:27 -!- dnolen [~user@cpe-74-64-32-223.nyc.res.rr.com] has quit [Ping timeout: 240 seconds] 07:13:12 -!- eMBee [~eMBee@foresight/developer/pike/programmer] has quit [Quit: Lost terminal] 07:14:35 -!- ivan\ [~ivan@unaffiliated/ivan/x-000001] has quit [Ping timeout: 255 seconds] 07:18:34 jrapdx [~jra@c-76-115-235-187.hsd1.wa.comcast.net] has joined #scheme 07:20:13 ivan\ [~ivan@unaffiliated/ivan/x-000001] has joined #scheme 07:21:50 eMBee [~eMBee@foresight/developer/pike/programmer] has joined #scheme 07:30:15 -!- gravicappa [~gravicapp@ppp91-77-169-49.pppoe.mtu-net.ru] has quit [Ping timeout: 265 seconds] 07:32:50 mmc [~michal@178-85-64-28.dynamic.upc.nl] has joined #scheme 07:38:54 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 244 seconds] 07:39:18 robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has joined #scheme 07:40:53 Nisstyre-laptop [~yours@oftn/member/Nisstyre] has joined #scheme 07:41:08 -!- robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has quit [Remote host closed the connection] 07:41:24 robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has joined #scheme 07:41:51 -!- MichaelRaskin [~MichaelRa@195.91.224.225] has quit [Remote host closed the connection] 07:46:49 MichaelRaskin [~MichaelRa@195.91.224.225] has joined #scheme 07:48:37 -!- bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [Ping timeout: 265 seconds] 07:50:32 -!- serhart [~serhart@70.126.151.37] has quit [Quit: Leaving.] 07:56:40 -!- jrapdx [~jra@c-76-115-235-187.hsd1.wa.comcast.net] has quit [Remote host closed the connection] 07:59:34 -!- jonrafkind [~jon@racket/jonrafkind] has quit [Ping timeout: 244 seconds] 07:59:43 -!- mmc [~michal@178-85-64-28.dynamic.upc.nl] has quit [Ping timeout: 245 seconds] 08:04:31 -!- adu [~ajr@pool-108-28-107-155.washdc.fios.verizon.net] has quit [Quit: adu] 08:36:50 jrapdx [~jra@c-76-115-235-187.hsd1.wa.comcast.net] has joined #scheme 08:37:38 -!- Fare [~fare@c-68-81-138-209.hsd1.pa.comcast.net] has quit [Ping timeout: 245 seconds] 08:44:58 mmc [~michal@sams-office-nat.tomtomgroup.com] has joined #scheme 08:49:31 -!- Onionnion|Eee [~ryan@adsl-68-254-166-23.dsl.milwwi.ameritech.net] has quit [Quit: Leaving] 08:55:22 -!- jrapdx [~jra@c-76-115-235-187.hsd1.wa.comcast.net] has quit [Remote host closed the connection] 09:02:24 impaktor [~user@b2.thep.lu.se] has joined #scheme 09:06:13 -!- mmc [~michal@sams-office-nat.tomtomgroup.com] has quit [Ping timeout: 244 seconds] 09:17:33 mmc [~michal@sams-office-nat.tomtomgroup.com] has joined #scheme 09:22:14 Tau [~Euler@189-127-53-143.i-next.psi.br] has joined #scheme 09:23:29 mmc1 [~michal@sams-office-nat.tomtomgroup.com] has joined #scheme 09:33:18 whats a good gui api to use with scheme? 09:33:24 im running mit-scheme. 10:01:17 -!- yacks [~yacks@180.151.36.171] has quit [Ping timeout: 245 seconds] 10:07:18 yacks [~yacks@180.151.36.171] has joined #scheme 10:07:38 o.O reading the objections to R6RS 10:07:47 pre-R5RS Scheme didn't have macros? 10:07:55 Because this person is objecting to macros. 10:08:04 And their presence in R6RS and R5RS 10:08:40 Tau: the FFI of MIT/GNU Scheme should support gtk fine, I believe 10:09:14 R4RS had full defmacro with arbitrary transformations (like Common Lisp), if I remember correctly 10:09:37 Sgeo: the discussion might be about non-hygienic vs. hygienic (only) macros in the standard 10:10:21 " In a R4RS compliant file, it is easy to see 10:10:22 which lists are expressions which might be evaluated; there are no new 10:10:22 syntactic tokens which can be mistaken for identifiers." 10:10:34 I'm doing the first exercises in sicp Ch3. Looking at the solution of ex3.2 he uses "(let ((call-count 0)))" but I used (define call-count 0), both seems to work, but is there a difference, other than the fact that (let) lets you control where the variable becomes undefined? ( http://eli.thegreenplace.net/2007/09/25/sicp-section-311/ ) 10:10:43 "The effect of adding macros to Scheme has been the proliferation of 10:10:43 mutually incomprehensible language dialects." 10:11:09 ecraven do you think there is support for tkinter/tcl graphical toolkit? 10:12:25 Tau, I believe a Tcl interpreter is considered easy to embed in C programs, but I don't know how well an FFI to C would support that 10:12:42 graememcc [~chatzilla@host86-157-250-186.range86-157.btcentralplus.com] has joined #scheme 10:14:00 -!- taylanub [tub@p4FD94360.dip.t-dialin.net] has quit [Disconnected by services] 10:14:34 taylanub [tub@p4FD948F9.dip.t-dialin.net] has joined #scheme 10:15:20 also there is ps/tk, I am searching for the original website. the chicken adoption of it is here: http://wiki.call-cc.org/eggref/4/pstk 10:17:14 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Ping timeout: 252 seconds] 10:17:26 -!- toekutr [~user@50-0-51-11.dsl.static.sonic.net] has left #scheme 10:17:44 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 10:18:28 C-Keen great ! 10:20:07 Tau: (almost) anything that has a C api can be accessed via the FFI 10:21:44 ecraven nice. 10:26:02 -!- Tau [~Euler@189-127-53-143.i-next.psi.br] has quit [Ping timeout: 252 seconds] 10:37:42 micro_ [~micro@ec2-50-16-189-142.compute-1.amazonaws.com] has joined #scheme 10:40:27 -!- b4283 [~b4283@60-249-196-111.HINET-IP.hinet.net] has quit [Remote host closed the connection] 10:51:11 -!- robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:06:10 amgarchIn9 [~amgarchin@p4FD60768.dip0.t-ipconnect.de] has joined #scheme 11:28:02 -!- amgarchIn9 [~amgarchin@p4FD60768.dip0.t-ipconnect.de] has quit [Quit: Konversation terminated!] 11:40:33 spobat [~spobat@p5DC77044.dip.t-dialin.net] has joined #scheme 11:48:05 -!- kvda [~kvda@ppp121-44-56-186.lns20.syd6.internode.on.net] has quit [Quit: -___-] 12:31:00 add^_ [~add^_@m37-2-177-248.cust.tele2.se] has joined #scheme 12:33:28 serhart [~serhart@70.126.151.37] has joined #scheme 12:34:19 -!- serhart [~serhart@70.126.151.37] has quit [Read error: Connection reset by peer] 12:34:41 serhart [~serhart@70.126.151.37] has joined #scheme 12:36:21 -!- serhart [~serhart@70.126.151.37] has quit [Read error: Connection reset by peer] 12:36:40 serhart [~serhart@70.126.151.37] has joined #scheme 12:37:30 -!- serhart [~serhart@70.126.151.37] has quit [Read error: Connection reset by peer] 12:37:50 serhart [~serhart@70.126.151.37] has joined #scheme 12:39:15 -!- serhart [~serhart@70.126.151.37] has quit [Read error: Connection reset by peer] 12:39:34 serhart [~serhart@70.126.151.37] has joined #scheme 12:42:26 -!- serhart [~serhart@70.126.151.37] has quit [Read error: Connection reset by peer] 12:42:46 serhart [~serhart@70.126.151.37] has joined #scheme 12:47:51 b4283 [~b4283@1-172-84-206.dynamic.hinet.net] has joined #scheme 12:49:56 -!- confab [~confab@086.112-30-64.ftth.swbr.surewest.net] has quit [Remote host closed the connection] 12:52:10 confab [~confab@086.112-30-64.ftth.swbr.surewest.net] has joined #scheme 12:58:23 -!- serhart [~serhart@70.126.151.37] has quit [Read error: Connection timed out] 12:59:02 serhart [~serhart@70.126.151.37] has joined #scheme 13:02:28 sambio [~sambio@190.57.227.109] has joined #scheme 13:07:22 snowylike [~sn@91-67-171-156-dynip.superkabel.de] has joined #scheme 13:17:48 RageOfThou [~RageOfTho@cable-77-221-21-70.dynamic.telemach.ba] has joined #scheme 13:18:11 pessoa [~pessoa@188-195-211-39-dynip.superkabel.de] has joined #scheme 13:28:24 -!- pessoa [~pessoa@188-195-211-39-dynip.superkabel.de] has quit [Quit: Started wasting time elsewhere] 13:30:53 -!- serhart [~serhart@70.126.151.37] has quit [Quit: Leaving.] 13:32:35 -!- yacks [~yacks@180.151.36.171] has quit [Ping timeout: 255 seconds] 14:03:21 -!- Sgeo [~Sgeo@ool-ad034ea6.dyn.optonline.net] has quit [Read error: Operation timed out] 14:10:35 serhart [~serhart@pool-173-65-170-29.tampfl.fios.verizon.net] has joined #scheme 14:13:37 -!- snowylike [~sn@91-67-171-156-dynip.superkabel.de] has quit [Read error: Connection reset by peer] 14:13:42 MrFahrenheit [~RageOfTho@cable-77-221-21-70.dynamic.telemach.ba] has joined #scheme 14:14:40 -!- RageOfThou [~RageOfTho@cable-77-221-21-70.dynamic.telemach.ba] has quit [Ping timeout: 276 seconds] 14:20:33 peterhil` [~peterhil@gatekeeper.brainalliance.com] has joined #scheme 14:26:03 nielsb [~niels@p4FD6FBFC.dip.t-dialin.net] has joined #scheme 14:27:23 amgarchIn9 [~amgarchin@p4FD60768.dip0.t-ipconnect.de] has joined #scheme 14:28:26 -!- bniels [~niels@p4FD6B0C0.dip.t-dialin.net] has quit [Ping timeout: 240 seconds] 14:28:27 -!- Nisstyre-laptop [~yours@oftn/member/Nisstyre] has quit [Read error: Connection reset by peer] 14:48:27 hopfrog [~user@pool-96-236-222-96.pitbpa.fios.verizon.net] has joined #scheme 14:57:12 ase [~se@ip56583baa.direct-adsl.nl] has joined #scheme 15:08:07 wbooze [~wbooze@xdsl-78-35-134-140.netcologne.de] has joined #scheme 15:09:23 -!- MrFahrenheit [~RageOfTho@cable-77-221-21-70.dynamic.telemach.ba] has quit [Quit: Leaving] 15:13:27 `fogus [~fogus@freedom.d-a-s.com] has joined #scheme 15:15:53 -!- nielsb [~niels@p4FD6FBFC.dip.t-dialin.net] has quit [Quit: WeeChat 0.3.8] 15:22:47 mark_weaver [~user@c-98-217-64-74.hsd1.ma.comcast.net] has joined #scheme 15:23:41 MrFahrenheit [~RageOfTho@cable-77-221-21-70.dynamic.telemach.ba] has joined #scheme 15:24:00 jao [~user@232.Red-83-32-71.dynamicIP.rima-tde.net] has joined #scheme 15:24:07 -!- jao [~user@232.Red-83-32-71.dynamicIP.rima-tde.net] has quit [Changing host] 15:24:07 jao [~user@pdpc/supporter/professional/jao] has joined #scheme 15:24:16 impaktor: internal 'define's are equivalent to 'letrec' before R6RS, and in R6RS and R7RS they are equivalent to 'letrec*'. 15:25:52 What's the difference between 'letrec' and 'let'? 15:27:06 impaktor: 'letrec' is a recursive form of 'let'. The initializer expressions are allowed to reference the new variables being bound. 15:27:08 For example: 15:27:28 yacks [~yacks@180.151.36.171] has joined #scheme 15:27:31 (define x 1) (define y 2) (let ((x y) (y x)) (list x y)) 15:27:42 that will return (2 1) 15:28:37 swap ? 15:28:39 because the initializer expressions 'y' and 'x' do _not_ see the internal 'x' and 'y' in scope, so they refer to the outer 'y' and 'x'. 15:28:57 you cannot do that with either 'let*' or 'letrec'. 15:29:19 on the other hand, with 'letrec' you can define mutually-recursive internal procedures. 15:29:38 For example: 15:29:58 huseby [~huseby@gateway/tor-sasl/huseby] has joined #scheme 15:30:46 (define (even? x) (letrec ((my-even? (lambda (x) (or (zero? x) (my-odd? (- x 1))))) (my-odd? (lambda (x) (my-even? (- x 1))))) (my-even? x))) 15:31:14 (sorry for the lack of indentation) 15:32:50 oops, that 'my-odd?' should be (lambda (x) (and (positive? x) (my-even (- x 1)))) 15:33:26 you're odd x 1 15:33:53 huh? 15:35:30 erm, joke, with regards to my reading of those forms....... 15:36:07 ah, okay :) 15:36:13 how much of that what you have said does also hold for cl's let ? 15:36:16 :) 15:38:00 OK, thanks. 15:38:03 I haven't said much about 'let', but although I'm rusty at CL, I believe it all does. 15:39:10 impaktor: note, however, that it is an error if any of the initializer expressions actually fetch any of the values of the 'letrec's bindings before they've all been initialized. 15:39:39 -!- stamourv` is now known as stamourv 15:39:45 -!- stamourv [~user@ahuntsic.ccs.neu.edu] has quit [Changing host] 15:39:46 stamourv [~user@racket/stamourv] has joined #scheme 15:40:23 impaktor: which essentially means that you can only refer recursively to the 'letrec' bindings from within 'lambda' or 'delay' expressions (or something that acts similarly) 16:06:21 RageOfThou [~RageOfTho@77.221.28.28] has joined #scheme 16:06:28 -!- MrFahrenheit [~RageOfTho@cable-77-221-21-70.dynamic.telemach.ba] has quit [Ping timeout: 276 seconds] 16:37:56 graememcc_ [~chatzilla@host86-163-183-87.range86-163.btcentralplus.com] has joined #scheme 16:39:52 -!- graememcc [~chatzilla@host86-157-250-186.range86-157.btcentralplus.com] has quit [Ping timeout: 244 seconds] 16:40:07 -!- graememcc_ is now known as graememcc 16:57:57 jaimef [jaimef@dns.mauthesis.com] has joined #scheme 17:08:35 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Ping timeout: 255 seconds] 17:08:58 REPLeffect [~REPLeffec@69.54.115.254] has joined #scheme 17:15:07 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 17:16:19 -!- spiderweb [~user@unaffiliated/lcc] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 17:18:51 pdponze [~pierre@37.0.45.21] has joined #scheme 17:23:53 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Ping timeout: 255 seconds] 17:24:10 REPLeffect [~REPLeffec@69.54.115.254] has joined #scheme 17:29:27 -!- mmc [~michal@sams-office-nat.tomtomgroup.com] has quit [Ping timeout: 244 seconds] 17:32:33 -!- MichaelRaskin [~MichaelRa@195.91.224.225] has quit [Ping timeout: 244 seconds] 17:33:24 MichaelRaskin [~MichaelRa@195.91.224.225] has joined #scheme 17:35:48 jrajav [~jrajav@167.68.114.6] has joined #scheme 17:38:13 bananagram [~bot@c-98-198-236-112.hsd1.tx.comcast.net] has joined #scheme 17:40:32 ffs [~garland@unaffiliated/ffs] has joined #scheme 17:41:40 -!- b4283 [~b4283@1-172-84-206.dynamic.hinet.net] has quit [Remote host closed the connection] 17:43:30 acedia [~rage@unaffiliated/ffs] has joined #scheme 17:43:50 Onionnion|Eee [~ryan@68.254.166.23] has joined #scheme 17:46:29 -!- yacks [~yacks@180.151.36.171] has quit [Remote host closed the connection] 17:47:29 Nisstyre-laptop [~yours@oftn/member/Nisstyre] has joined #scheme 17:57:41 bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 18:00:21 -!- Giomancer [~Gio@adsl-76-231-35-17.dsl.irvnca.sbcglobal.net] has quit [Quit: Not that there is anything wrong with that] 18:19:25 -!- jrajav [~jrajav@167.68.114.6] has quit [Quit: phunq, sandwich store loop, WHAT NO UNIVERSE] 18:21:26 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 240 seconds] 18:28:41 -!- karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has quit [Remote host closed the connection] 18:34:25 -!- Nisstyre-laptop [~yours@oftn/member/Nisstyre] has quit [Quit: Leaving] 18:35:04 Nisstyre-laptop [~yours@oftn/member/Nisstyre] has joined #scheme 18:35:58 -!- Nisstyre-laptop [~yours@oftn/member/Nisstyre] has quit [Read error: Connection reset by peer] 18:38:28 Nisstyre-laptop [~yours@oftn/member/Nisstyre] has joined #scheme 18:38:56 karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 18:39:00 spiderweb [~lcc@unaffiliated/lcc] has joined #scheme 18:41:22 Fare [~fare@c-68-81-138-209.hsd1.pa.comcast.net] has joined #scheme 18:43:40 -!- sambio [~sambio@190.57.227.109] has quit [Ping timeout: 252 seconds] 18:48:49 jrajav [~jrajav@167.68.114.6] has joined #scheme 18:51:43 jonrafkind [~jon@racket/jonrafkind] has joined #scheme 18:57:29 -!- acedia [~rage@unaffiliated/ffs] has quit [Quit: Escape this - all the hell inside.] 19:01:22 -!- huseby [~huseby@gateway/tor-sasl/huseby] has quit [Quit: Leaving] 19:07:29 snowylike [~sn@91-67-171-156-dynip.superkabel.de] has joined #scheme 19:10:12 -!- bananagram [~bot@c-98-198-236-112.hsd1.tx.comcast.net] has quit [Ping timeout: 272 seconds] 19:12:38 huseby [~huseby@gateway/tor-sasl/huseby] has joined #scheme 19:20:26 -!- jaimef [jaimef@dns.mauthesis.com] has quit [Remote host closed the connection] 19:20:27 mmc [~michal@178-85-64-28.dynamic.upc.nl] has joined #scheme 19:21:19 jaimef [jaimef@dns.mauthesis.com] has joined #scheme 19:23:54 -!- jaimef [jaimef@dns.mauthesis.com] has quit [Remote host closed the connection] 19:38:06 jrslepak [~jrslepak@c-24-12-144-42.hsd1.il.comcast.net] has joined #scheme 19:50:56 -!- jonrafkind [~jon@racket/jonrafkind] has quit [Ping timeout: 255 seconds] 19:56:32 toekutr [~user@50-0-51-11.dsl.static.sonic.net] has joined #scheme 19:56:50 chaotic_good [~g@pool-173-60-201-49.lsanca.fios.verizon.net] has joined #scheme 20:10:28 Sgeo [~Sgeo@ool-ad034ea6.dyn.optonline.net] has joined #scheme 20:10:42 Are there any Scheme object systems that resemble Snit for Tcl? 20:13:05 with lisp you dont need oo 20:13:09 oo is a step backward 20:13:19 oo is the roman numerals of coputing 20:13:24 eh 20:14:09 Depends on the OO system, I'd think 20:14:29 Although I'm currently trying to enjoy Racket, its OO system feels too... Java-y I think 20:15:09 You know what I really want to see? Predicate dispatch. I think Factor's the only language I played with that has something along those lines 20:15:33 why need that at all? 20:15:41 fucntional abstraction is as nice 20:15:50 and more powerful 20:16:00 Sgeo: i believe all clos-like systems can add predicate-dispatch rather easily 20:16:07 i did it once for my own flavour of clos :) 20:16:24 http://harmful.cat-v.org/software/OO_programming/ 20:16:24 Hmm 20:16:44 save most of that complexity for a database or prevalence layer 20:17:19 jonrafkind [~jon@racket/jonrafkind] has joined #scheme 20:17:34 "at least in it’s most popular forms" 20:18:54 *Sgeo* again sads that Racket OO seems to be modeled on that. And that things like the GUI framework use that OO 20:22:30 Although at least Racket has a non-OO way of grouping pieces of data together and giving such a grouping a name 20:25:57 acedia [~rage@unaffiliated/ffs] has joined #scheme 20:35:33 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 20:38:49 abstraction! 20:41:49 I wonder if it's good for documentation to be able to define structures with concrete names 20:42:20 In Clojure, you just use a hash-map, and I keep wondering where to document the implicit "type" that these related functions accept 20:44:13 avoid all oracle stuff 20:44:19 -!- spiderweb [~lcc@unaffiliated/lcc] has quit [Ping timeout: 248 seconds] 20:44:20 at all costs 20:46:10 -!- graememcc [~chatzilla@host86-163-183-87.range86-163.btcentralplus.com] has quit [Quit: ChatZilla 0.9.89 [Firefox 17.0.1/20121129165506]] 20:58:03 spiderweb [~lcc@unaffiliated/lcc] has joined #scheme 20:58:20 imo, DrRacket takes damn long to startup 20:59:12 don't you feel alike? 20:59:41 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Remote host closed the connection] 21:00:32 paper on raket webservr 21:00:40 -!- youlysses [~user@75-132-17-145.dhcp.stls.mo.charter.com] has quit [Quit: BBL. Actually going to get some stuff done... :-I] 21:01:35 chaotic_good, what?! 21:08:51 Sgeo: You might want to check out Guile, which includes a CLOS-like OO system called GOOPS and nice bindings for Gtk, GNOME, Clutter, etc, that are nicely integrated with GOOPS. 21:09:22 (make sure to use Guile 2.0 though) 21:09:46 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 21:09:53 The big problem I always have with Scheme is indecision on which implementation to use 21:11:39 *nod* it is perhaps best to think of Scheme as a family of related languages 21:12:14 What's Clutter? 21:13:44 it's a library for making highly-dynamic animated user interfaces. it is used by gnome-shell, for example. 21:18:15 uncle chicken! 21:18:26 lol 21:21:59 Sgeo: just pick one, and see whether you can do everything you want with it :) 21:23:05 With Racket, I can't do everything I want, but I don't think other Schemes would help for that one feature 21:23:13 Although it's really a clinically insane thing to think of 21:24:21 In Racket, you can use let-syntax to lexically redefine function application. But as far as I know, you can't redefine function application in a dynamically-scoped way 21:25:01 -!- spobat [~spobat@p5DC77044.dip.t-dialin.net] has quit [Read error: Connection reset by peer] 21:26:22 Oh hey there's a thing on PLaneT for Clojure-style multimethods 21:27:15 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Remote host closed the connection] 21:29:20 -!- serhart [~serhart@pool-173-65-170-29.tampfl.fios.verizon.net] has quit [Quit: Leaving.] 21:30:36 -!- spiderweb [~lcc@unaffiliated/lcc] has quit [Remote host closed the connection] 21:30:55 hypnocat [~hypnocat@unaffiliated/hypnocat] has joined #scheme 21:31:15 Redefine function application ? Insane. 21:32:47 The lazy and frtime Racket languages use that, I think 21:35:42 there's only one thing i really don't like about clojure 21:35:51 and that's the JVM 21:36:53 Indeed 21:37:25 -!- peterhil` [~peterhil@gatekeeper.brainalliance.com] has quit [Ping timeout: 248 seconds] 21:38:22 sambio [~sambio@190.57.227.109] has joined #scheme 21:39:27 -!- pdponze [~pierre@37.0.45.21] has quit [Quit: pdponze] 21:41:00 robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has joined #scheme 21:43:11 -!- robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has quit [Remote host closed the connection] 21:43:27 robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has joined #scheme 21:46:38 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 21:49:11 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Remote host closed the connection] 21:52:01 dtm` [~dtm@adsl-69-110-9-24.dsl.pltn13.pacbell.net] has joined #scheme 21:59:10 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 22:03:10 -!- jrajav [~jrajav@167.68.114.6] has quit [Quit: phunq, sandwich store loop, WHAT NO UNIVERSE] 22:07:13 -!- wingo [~wingo@cha74-2-88-160-190-192.fbx.proxad.net] has quit [Ping timeout: 245 seconds] 22:13:42 -!- snowylike [~sn@91-67-171-156-dynip.superkabel.de] has quit [Quit: Nettalk6 - www.ntalk.de] 22:30:24 bananagram [~bot@c-98-198-236-112.hsd1.tx.comcast.net] has joined #scheme 22:46:32 never use oracle 22:49:51 -!- bananagram [~bot@c-98-198-236-112.hsd1.tx.comcast.net] has quit [Read error: Connection reset by peer] 22:52:07 bananagram [~bot@c-98-198-236-112.hsd1.tx.comcast.net] has joined #scheme 22:59:41 -wisdom 23:05:48 -!- mmc [~michal@178-85-64-28.dynamic.upc.nl] has quit [Ping timeout: 272 seconds] 23:06:02 -!- karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has quit [Remote host closed the connection] 23:13:54 -!- dtm` [~dtm@adsl-69-110-9-24.dsl.pltn13.pacbell.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 23:15:25 serhart [~serhart@70.126.151.37] has joined #scheme 23:18:24 karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 23:25:08 -!- add^_ [~add^_@m37-2-177-248.cust.tele2.se] has quit [Quit: The Garbage Collector got me...] 23:33:17 -!- serhart [~serhart@70.126.151.37] has left #scheme 23:36:30 spobat [~spobat@p5DC77044.dip.t-dialin.net] has joined #scheme 23:39:34 -!- amgarchIn9 [~amgarchin@p4FD60768.dip0.t-ipconnect.de] has quit [Quit: Konversation terminated!] 23:42:53 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 23:45:33 -!- karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has quit [Remote host closed the connection] 23:49:30 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 272 seconds] 23:50:10 spobat_ [~spobat@p5DC77283.dip.t-dialin.net] has joined #scheme 23:52:08 -!- spobat [~spobat@p5DC77044.dip.t-dialin.net] has quit [Ping timeout: 255 seconds] 23:55:05 -!- huseby [~huseby@gateway/tor-sasl/huseby] has quit [Quit: Leaving] 23:55:49 karswell [~coat@93-97-29-243.zone5.bethere.co.uk] has joined #scheme 23:58:26 -!- Onionnion|Eee [~ryan@68.254.166.23] has quit [Quit: Leaving]