00:04:34 -!- hiyuh [n=hiyuh@KD125054017176.ppp-bb.dion.ne.jp] has quit ["|_ e /\ \/ i |/| G"] 00:10:26 Adamant_ [n=Adamant@c-71-226-66-93.hsd1.ga.comcast.net] has joined #scheme 00:10:59 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Read error: 113 (No route to host)] 00:12:05 rtra [n=rtra@unaffiliated/rtra] has joined #scheme 00:13:51 kniu [n=kniu@DA-YU.RES.CMU.EDU] has joined #scheme 00:28:30 dmoerner_ [n=dmr@ppp-71-139-11-138.dsl.snfc21.pacbell.net] has joined #scheme 00:28:51 drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 00:29:35 -!- dmoerner [n=dmr@ppp-71-139-2-39.dsl.snfc21.pacbell.net] has quit [Read error: 60 (Operation timed out)] 00:32:31 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 00:36:51 -!- Gorgoroth [i=Gorgorot@195-132-141-240.rev.numericable.fr] has quit [Client Quit] 00:42:08 -!- langmartin [n=user@adsl-074-167-038-128.sip.cha.bellsouth.net] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 00:48:18 -!- CaptainMorgan [n=CaptainM@c-24-62-183-102.hsd1.ma.comcast.net] has quit [Remote closed the connection] 00:53:19 -!- dmoerner_ is now known as dmoerner 00:54:50 exexex [n=chatzill@85.96.132.60] has joined #scheme 00:56:56 Gorgoroth [i=Gorgorot@195-132-141-240.rev.numericable.fr] has joined #scheme 00:58:03 -!- drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Remote closed the connection] 01:02:52 saccade_ [n=saccade@65.78.24.47] has joined #scheme 01:03:04 -!- kniu [n=kniu@DA-YU.RES.CMU.EDU] has quit ["Leaving"] 01:03:30 kniu [n=kniu@DA-YU.RES.CMU.EDU] has joined #scheme 01:05:01 -!- underspecified [n=eric@softbank220043052007.bbtec.net] has quit [Read error: 104 (Connection reset by peer)] 01:06:01 underspecified [n=eric@softbank220043052007.bbtec.net] has joined #scheme 01:06:40 -!- saccade_ [n=saccade@65.78.24.47] has quit [Client Quit] 01:13:06 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 01:16:56 -!- cads_ [n=max@c-71-56-62-166.hsd1.ga.comcast.net] has quit [Client Quit] 01:22:18 -!- orgy` [n=ratm_@pD9FFF35A.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 01:22:27 -!- underspecified [n=eric@softbank220043052007.bbtec.net] has quit [] 01:28:44 -!- Fare [n=Fare@ita4fw1.itasoftware.com] has quit ["Leaving"] 01:29:04 -!- exexex [n=chatzill@85.96.132.60] has quit [Read error: 110 (Connection timed out)] 01:30:21 maodun [n=stopgo@c-67-180-49-1.hsd1.ca.comcast.net] has joined #scheme 01:30:39 underspecified [n=eric@softbank220043052007.bbtec.net] has joined #scheme 01:32:44 saccade_ [n=saccade@65.78.24.47] has joined #scheme 01:35:51 -!- saccade_ [n=saccade@65.78.24.47] has quit [Client Quit] 01:38:51 -!- ptolomy2 [n=chatzill@nat/google/x-7b3b75eb76e1b056] has quit ["ChatZilla 0.9.84 [Firefox 3.0.5/2008120121]"] 01:42:12 -!- underspecified [n=eric@softbank220043052007.bbtec.net] has quit [] 01:44:54 -!- isomer [n=isomer@CPE001310e6cb31-CM0011aec5e684.cpe.net.cable.rogers.com] has quit [Read error: 145 (Connection timed out)] 01:46:40 isomer [n=isomer@CPE001310e6cb31-CM0011aec5e684.cpe.net.cable.rogers.com] has joined #scheme 01:51:54 -!- Adamant_ [n=Adamant@c-71-226-66-93.hsd1.ga.comcast.net] has quit [] 01:52:00 Adamant [n=Adamant@c-71-226-66-93.hsd1.ga.comcast.net] has joined #scheme 01:57:18 grettke [n=grettke@CPE-65-31-142-107.wi.res.rr.com] has joined #scheme 01:59:22 -!- jonrafkind [n=jon@wireless58.wireless.utah.edu] has quit [Read error: 110 (Connection timed out)] 02:08:33 -!- grettke [n=grettke@CPE-65-31-142-107.wi.res.rr.com] has quit [] 02:09:09 eno__ [n=eno@adsl-70-137-150-38.dsl.snfc21.sbcglobal.net] has joined #scheme 02:11:59 saccade_ [n=saccade@209.6.23.56] has joined #scheme 02:19:25 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 110 (Connection timed out)] 02:23:32 -!- hemulen [n=hemulen@cpe-069-134-114-252.nc.res.rr.com] has quit ["He rode off into the sunset. . ."] 02:27:59 -!- xwl_ [n=user@147.243.236.60] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 02:29:58 -!- Gorgoroth [i=Gorgorot@195-132-141-240.rev.numericable.fr] has quit [Client Quit] 02:45:11 nowhea [n=nowhere@c83-249-224-126.bredband.comhem.se] has joined #scheme 02:47:22 -!- nowhea [n=nowhere@c83-249-224-126.bredband.comhem.se] has left #scheme 02:48:06 -!- benny [n=benny@i577A0F9D.versanet.de] has quit [Read error: 110 (Connection timed out)] 02:51:34 eno [n=eno@nslu2-linux/eno] has joined #scheme 02:58:45 synthase [n=synthase@c-69-243-234-165.hsd1.al.comcast.net] has joined #scheme 03:00:35 -!- reprore [n=reprore@ntkngw604176.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 03:02:09 _Pb [n=Pb@75.139.140.101] has joined #scheme 03:03:34 -!- eno__ [n=eno@adsl-70-137-150-38.dsl.snfc21.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 03:04:54 -!- arcfide [n=arcfide@adsl-99-137-202-18.dsl.bltnin.sbcglobal.net] has quit ["Leaving"] 03:08:03 -!- Paraselene__ [n=None@79-67-130-219.dynamic.dsl.as9105.com] has quit [] 03:15:49 hml [n=x@unaffiliated/hml] has joined #scheme 03:16:51 -!- Nshag [i=user@Mix-Orleans-105-3-144.w193-250.abo.wanadoo.fr] has quit ["Quitte"] 03:18:10 any good scheme implementations targeting the llvm? 03:18:55 ell ell vee emm 03:18:55 ? 03:19:09 <_Pb> http://llvm.org/ 03:19:28 http://tinyurl.com/9h6a5p 03:19:42 <_Pb> haha 03:20:11 sorry; only saying this cause i know offby1 is cooler than me (answered old emacs / elisp / scheme questions I had, iirc) 03:20:21 <_Pb> ah 03:20:39 so i'm thinking of using sisc, 03:20:47 <_Pb> speaking of this, are there any decent schemes written in a forth? 03:20:52 If I were cool, I'd know what llvm was. Sounds dimly familiar, though. 03:21:02 just because the vm is so cool; but if there's one targeting llvm, i'd like to use that instead 03:22:19 -!- offby1 [n=user@q-static-138-125.avvanta.com] has quit [Remote closed the connection] 03:23:35 offby1 [n=user@q-static-138-125.avvanta.com] has joined #scheme 03:23:42 -!- Riastradh [n=rias@pool-141-154-214-45.bos.east.verizon.net] has quit [Read error: 110 (Connection timed out)] 03:23:56 from sisc documentation: Lightweight Scheme engine, implementing all R5RS functionality in approximately 10,000 lines of native code plus approximately 5,000 lines of Scheme code. ... ick, why some much java :-( 03:36:21 ramkrsna [n=ramkrsna@unaffiliated/ramkrsna] has joined #scheme 03:36:43 Riastradh [n=rias@pool-151-203-235-220.bos.east.verizon.net] has joined #scheme 03:45:06 echo-area [n=user@nat/yahoo/x-1948c69c5a1ceadd] has joined #scheme 03:46:19 Fare [n=Fare@c-71-232-6-92.hsd1.ma.comcast.net] has joined #scheme 03:50:16 rotty, there is an example of TEST-CASE with SETUP and TEARDOWN clauses; this and the expansion of DEFINE-TEST-CASE in terms of TEST-CASE ought to suffice to demonstrate DEFINE-TEST-CASE with SETUP and TEARDOWN clauses. 03:52:13 drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 03:54:13 rotty, excuse me: such an example is in the README at . 03:59:16 i'm reading the source code of a scheme esxception handling library; and it uses dynamic-wind 03:59:32 i'm curious why this is necessary; i.e. why (dynamic-wind before thunk after) 03:59:41 rather than just (before) (thunk) (after) 03:59:41 Be more specific. 03:59:46 What is it using DYNAMIC-WIND to do? 04:00:35 http://paste.lisp.org/display/73614 04:00:44 i thikn it's implemengint the srfi-12 exception handling 04:00:57 I reserve the right to be wrong and stupid though. 04:01:41 -!- phao [n=phao@189.13.221.91] has quit ["Leaving"] 04:01:42 `Exception handlers', presumably, are meant to span only a certain dynamic extent; that is, HANDLER should be in effect only during the execution of THUNK. 04:02:04 how does this relate to why it's using dynamic wind? 04:02:23 Suppose you exit the dynamic extent of THUNK, before it returns normally. 04:02:35 how would I do that? 04:02:40 The handler should cease to be in effect; instead, the handler that was in place in the dynamic extent you thereby re-enter should be reinstated. 04:02:46 as in via a continuation? 04:02:47 hiyuh [n=hiyuh@KD059133115102.ppp.dion.ne.jp] has joined #scheme 04:02:49 Using an escape procedure. 04:03:18 is there anyway to implement an escape procedure besides using a continuation? 04:03:52 It's rather hard to do anything interesting at all in any sequential language without continuations. 04:04:04 i'm not trying to be pendantic, just understanding the difference 04:04:10 For example, evaluating (+ (* 2 3) 4) sequentially doesn't make sense without continuations. 04:04:28 i can write a scheme implementation that can evaluate that but does not support call/cc 04:04:44 maybei should ask: "are escape procedures possible w/o call/cc" ? 04:04:46 Whether or not you can reify continuations is a question independent of whether the notion of continuations exists. 04:04:55 CWCC reifies continuations in the form of escape procedures. 04:05:06 what's CWCC ? 04:05:10 wait, i can use gogole 04:05:14 call-with-current-continuation 04:05:58 btw, i ahve the vocabulary of an 8th grader, so abstract is easier to understand that reifies for me 04:06:10 can you reify continuations that don't exist? 04:06:33 Other countenances to the reification of continuations are possible. Consider, for example, a new disjoint `reified continuation' data type; we might define (REIFY-CONTINUATION ) similarly to (CWCC ), only the receiver will be passed a reified continuation object rather than an escape procedure. Then we need another operation such as APPLY-CONTINUATION, which takes a continuation and the values to return to 04:07:03 Then rather than (CWCC (LAMBDA (K) ... (K 5) ...)), we'd write (R-C (LAMBDA (K) ... (A-C K 5) ...)). 04:07:16 that is getting a bit abstract to me 04:07:27 on a level mere mortals can understsand, why does this end in a loop? 04:07:29 (with-exception-handler (lambda (x) (format #t "Hit exception handler: ~A~%" x)) (+ 1 2)) 04:07:41 Riastradh, in cl's arnesi you use let/cc and kall 04:07:50 CaptainMorgan [n=CaptainM@c-24-62-183-102.hsd1.ma.comcast.net] has joined #scheme 04:07:52 which are actually more like shift/reset, which is cool 04:07:54 a loop printing --> Hit exception handler: # 04:08:09 3 is not a procedure, hml. And your handler doesn't actually take any action to handle the condition. 04:08:21 I don't remember how they work wrt exception handlers 04:08:37 ah, let me try (lambda () (+ 1 2)) 04:08:51 presumably exception handlers, like special variables, are attached to the dynamic environment captured by the continuation 04:08:58 Because SRFI 12 is designed unsafely, it is easy to inadvertently write a condition handler that loops. 04:09:02 I should hope so, Fare. 04:09:09 okay; so in C, if my exception handler doesn't do anything, it "just goes on"; in scheme, my exception handler needs to explicitly say: "hey dude, i've handled the exception" ? 04:09:23 `In C'? `Exception handler'? 04:09:28 sorry, C++ 04:09:57 here is my incorrect mental model 04:10:08 in C++: try { ... think ...} catch { ... handler ... } 04:10:13 apparently this is not how with-exception-handler works 04:10:14 I believe in C++, signalling a condition (or `raising an exception', or whatever is the fashionable phrase among C++ programmers) has the effect of unwinding the stack, so that the condition handler is called with a continuation of the `try/catch' block. 04:10:41 In other words, if the handler returns in `try { ... } catch { ... }; foobar;', the next part of the program to be executed will be foobar. 04:10:49 that is my understsanding too 04:11:01 -!- _Pb [n=Pb@75.139.140.101] has quit ["Leaving"] 04:11:03 In SRFI 12, signalling a condition has only the effect of calling the current condition handler. 04:11:12 at the point of the error? 04:11:43 for the sake of a concrete example, suppose we have (with-exception-handler blah (lambda () (+ 1 (3) 2)) 04:12:03 Almost. There are two procedures used to signal conditions, one called ABORT and one called SIGNAL. ABORT calls the condition handler with a continuation that will abort again. SIGNAL tail-calls the condition handler; in other words, the condition handler will be given the same continuation as SIGNAL. 04:13:36 WITH-EXCEPTION-HANDLER, therefore, is dangerous, because (1) the condition handler is called in a dynamic environment in which it remains the condition handler when it is called, so that if it signals a condition itself, it may go into a loop; and (2) returning from a condition handler invoked by ABORT will also lead to a loop. 04:13:59 (thinking, please wait) 04:14:23 HANDLE-EXCEPTIONS, however, establishes a condition handler that evaluates the handling expression with the continuation of the HANDLE-EXCEPTIONS expression. It is similar to C++'s handling semantics. 04:14:26 I understand (1); I don't get (2). 04:15:06 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 04:15:12 See the definition of ABORT in SRFI 12. 04:15:58 (define (abort obj) ((current-exception-handler) obj) (abort ...)) 04:16:07 If the handler returns, what happens? 04:16:16 it calls abort again 04:16:22 wait 04:16:26 Now if the handler returns again, what happens? 04:16:49 so the current-exception-handler doesn't "even have to do anything" to cause the loop; all it needs to do is return; in fact, to NOT cause a loop, the handler has to escape (say via a continuation) ? 04:16:58 Precisely. 04:17:09 thanks this is very helpful 04:18:00 Riastradh, will you come to ILC'09? 04:18:09 I might. 04:18:45 hml, you may rightly conclude from this discussion that SRFI 12 is poorly conceived. 04:19:25 i haven't come to that conclusion yet; is there something more elegant / better to use? 04:19:45 Common Lisp's condition system is better. 04:19:53 questions I have in mind are things like: "can the handler know if it's coming fromm a signal or an abort" ? 04:20:08 Yes: you can examine the condition that you were asked to handle. 04:20:15 Riastradh, would you care to talk at the Boston Lisp Meeting? 04:20:26 given (with-exceptions-handler handler (lambda () (+ 1 (3) 2))) ... is there a way when handling (3) to return 10, so the answer becomes 13? 04:20:48 Not portably, hml. Whether Chicken allows it, I don't know. 04:21:07 now, if the handler is called w/o unwinding the stack, why can't i do this? 04:21:11 hml: probably no portable way... for that you would need 1st class frames 04:21:26 hml: because you need to programmably unwind the stack 04:21:36 from singaling / abort, don't i get some type of continuation after handling the exception? 04:21:43 jonrafkind [n=jon@c-98-202-86-149.hsd1.ut.comcast.net] has joined #scheme 04:21:51 which also supposes guarantees as to the amount of translation (not) done by the compiler 04:22:17 The nature of the continuation with which the handler is called by the implementation in that case is highly variable. 04:22:18 i.e. you must know the frame structure of "(3)" 04:22:49 so if I can't "continue" after the exception, how, if at all, is this better than C++ exceptions? 04:23:15 The continuation is still available for debuggers to inspect. 04:23:36 hml: you *can* continue. But in this case, to replace how (3) behaves you must access the internals of funcall 04:23:36 (thinking) 04:23:39 Hypothetical debuggers, that is. 04:23:49 hml: as opposed to continuing from (my-function 3) 04:24:03 where you know the internals of my-function because you wrote it 04:24:09 can I continue from (lambda () (+ 1 (cdr '()) 2))) ? 04:24:16 Not in general. 04:24:43 hml: same answer... if debugging builtin functions, you can do only what the system already lets you do 04:24:49 suppose I have (define (my-func) (3)) .... (lambda () (+ 1 (my-func) 2))) <-- can I continue fromm this? or can I 'only' continue from cases wher I throw the exception myself via abort/signal ? 04:24:55 got it 04:25:51 Fare, Riastradh : thank you very much, this has been a very insightful discussion; I almost can't believe this is IRC. 04:26:09 What you can do is supply a useful continuation in the condition itself. 04:27:23 For example, suppose you are writing a network client which must connect to a host given some name, for which there are multiple addresses. And suppose (for some reason) that you aren't sure, when building the network client, whether you want just to connect to the first address that works. 04:28:02 So you have a list of socket addresses, and you attempt to connect to the first of them. If the attempt to connect fails, then you might signal a condition, asking for a handler to decide how to proceed in the program. 04:28:24 Furthermore, you might tell the handler, in some way, that if it wants to try the next address, it should return to some specified continuation. 04:29:16 got it 04:29:27 In Common Lisp, this information (`if you want to try the next address, return to this continuation') is called a `restart'. 04:29:48 Riastradh, do you live far from Boston? 04:30:41 I currently live about a hundred miles from Boston. 04:31:09 dumb question, why does with-exception-handler require a 'thunk' as it's second argument, instead of making it a macro that puts the lambda () aroudn the second arg? 04:31:18 It's simpler to provide a procedure. 04:31:24 -!- gweiqi [n=greg@69.120.126.163] has quit ["Leaving."] 04:31:35 so it's just a matter of taste/style 04:32:15 Riastradh, could you come talk in April? May? June? July? topic of your choice. 04:32:24 Fare: where are you from? company / academia? 04:32:38 Riastradh, for March, I'm looking for someone who's non-local and would come to ILC from far away 04:32:45 hadronzoo [n=hadronzo@ppp-70-247-166-177.dsl.rcsntx.swbell.net] has joined #scheme 04:32:52 what's ILC? 04:32:58 hml: I work at itasoftware.com, I dream on tunes.org 04:32:59 google hits for the top few does not ssem to involve scheme 04:33:03 hml: ilc09.org 04:33:19 itasoftware: the giant lisp code base for handling airplane routing? 04:33:22 Perhaps when I have a topic to present. 04:33:48 not routing -- pricing (and soon, reservation) 04:34:07 Riastradh, I'm sure you have plenty 04:34:20 hml, the ILC is the International Lisp Conference, and this year's is the big one, on the fiftieth anniversary of Lisp. 04:34:34 pjb3 [n=pjb3@c-76-100-98-185.hsd1.md.comcast.net] has joined #scheme 04:34:40 -!- drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Connection timed out] 04:34:45 Riastradh: what are you so famous for that Fare is begging you to present? don't people normally have to fight to present? 04:35:08 I don't know; maybe you should ask Fare. 04:35:48 Fare: why is Riastradh so cool? 04:35:51 Let me be more precise, though: I may present when I am ready to blow some serious socks off. 04:37:02 lol, a lisp conference? people still doing research on lisp? 04:37:07 hasn't funding dried up for this? 04:37:16 nope 04:37:30 can you point me to some government grants for lisp projects? 04:37:32 Riastradh, the invitation is open... whenever you're ready 04:37:39 don't forget the power of corporate sponsors who use Lisp 04:37:51 Fare: what's your relation to ILC 09? 04:37:54 OK, Fare. I'll let you know when I'm ready, but don't hold your breath. 04:38:01 hml: governments are not the one sources of everything good on earth 04:38:07 hml: there are no programming language-specific grants 04:38:37 optikalmouse: no, but i mean see people write grants to study this problem or that problem, to design algorithms for this or that; but I can't imaigne how lisp grants would look .... 04:38:39 you'd probably have to get funding for a different type of project that involves the development of software and then you develop it with a Lisp 04:38:48 okay, so it's research using lisp 04:38:50 not research on lisp 04:38:56 hml: I'll attend (actually, demo some software, too), many colleagues at same company organize, the company sponsors. 04:38:57 s/on/about 04:39:00 hml: really? I think you're thinking of universities 04:39:05 i am 04:39:13 this conference is mainly for non-academia? 04:39:20 I haven't heard of government grants for computer science research, just for arts stuff 04:39:28 hml: academia welcome, too 04:39:47 err, most CS proejcts i've seen are funded by governmeent grants ... nsf / darpa / nih ... 04:39:49 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 04:40:22 hml: most CS code I've seen was written by collections of individual humans 04:40:27 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 04:40:37 ah but are they funded for CS or are they funded for some other reason that just happens to involve CS? 04:40:41 hml: I've seen plenty of humans, I've never seen a government 04:41:00 Fare: I think you're trying to say something witty, but I'm not catching it. 04:41:18 calm down children, no flaming here :p 04:41:28 no, no flames intended 04:41:34 that's the pre-emptitive warning, just in case. 04:41:35 there's an analogy, i'm not getting it 04:41:35 heh 04:41:51 parsing srfi 12 is taking most of my brain power right now, lol 04:42:14 hml: also, you were thinking of the AI winter which dried up funding for AI projects that just happened to involve the use of Lisp? 04:42:18 since i see the following: (define (MAKE-PROPERTY-CONDITION kind-key . prop-vals) (cons CONDITION? (list (cons kind-key prop-vals)) 04:42:24 i should be able to cdr an exception right? 04:42:34 except doing so in an exception handler causes another exception to be thrown 04:42:36 No, I don't think so, hml. 04:42:38 hmm, maybe I should use cons 04:42:41 Riastradh: why not? 04:42:48 hml: government is a granfalloon 04:42:56 *offby1* spews foma 04:42:59 To discover the substance of a granfalloon, just prick a hole in a toy balloon. 04:43:00 That is a not-quite-correct reference implementation, hml. 04:43:10 Fare: off-topic... 04:43:18 Conditions are meant to be disjoint from all other types of objects in Scheme. 04:43:22 Riastradh: okay, I missed )) at the end 04:43:32 Here's how it should read: 04:43:42 okay, (pair? x) <-- #f, where x is the excpetion 04:43:57 anyway, plenty of work uses lisp or evolves lisp, some of it funded through taxes, some of it funded voluntarily 04:44:06 (define-record-type (make-condition properties) condition? (properties condition.properties)), and then appropriate definitions of the relevant operations on conditions in terms of MAKE-CONDITION and CONDITION.PROPERTIES. 04:44:09 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 60 (Operation timed out)] 04:44:20 all of it done by people who voluntarily choose lisp (I haven't heard of lisp-writing slaves) 04:44:21 eno [n=eno@nslu2-linux/eno] has joined #scheme 04:44:25 However, for whatever reason, the reference implementation of SRFI 12 was written without SRFI 9's DEFINE-RECORD-TYPE. 04:44:33 Riastradh: is this coming from your brain (which I don't have read access to), or is there a better doc thatn srfi 12? 04:44:54 `Better' for what purpose? 04:45:02 for reading / understanding conditions 04:45:09 as implemented in srfi12 04:45:13 Everything you see in the `Implementation' section is an informative hint, not a normative specification. 04:45:26 ah; so if a condition is a list of property & values 04:45:30 hml: read the CLHS about conditions 04:45:34 What you see in the `Specification' section consists mostly of normative specifications. 04:45:38 is there a way i can print out this list w/o knowing the names of all the property/tags ? 04:45:43 No. 04:45:51 Not in general. 04:45:57 Fare: what's the CLHS? google says California League of HighSchools 04:46:04 minion: what is the CLHS? 04:46:05 maybe you need to ask my master, chandler - he knows a lot 04:46:08 Humph. 04:46:15 hml, anyway, the CLHS is the Common Lisp HyperSpec. 04:46:19 ah 04:46:27 specbot: clhs condition 04:46:27 http://www.lispworks.com/reference/HyperSpec/Body/e_cnd.htm 04:46:35 okay; i'm starting to feel conditions kinda suck 04:46:41 Chicken may extend SRFI 12 with a way to do examine conditions more generally than SRFI 12 provides, but I don't know. 04:46:48 Be specific with words such as those, hml. 04:46:58 Have you come to the conclusion now that SRFI 12 is poorly conceived? 04:47:07 hml: are you trying to write something chicken-specific, or srfi-12-specific? 04:47:08 (That's different from the general proposition that `conditions kinda suck'.) 04:47:26 or understnad the concepts in general? 04:47:27 I'm not convinced i can do better; but it seems significantly less elegant than other parts of scheme 04:47:31 (You may observe, by the way, that SRFI 12 was withdrawn.) 04:47:39 Condition systems are rather ugly. But one can do better. 04:47:51 is there a better one that's an srfi? 04:48:05 No. 04:48:11 pjb3_ [n=pjb3@c-76-100-98-185.hsd1.md.comcast.net] has joined #scheme 04:48:14 does scheme48 have a better one? 04:48:24 Not especially. 04:48:26 -!- forcer [n=forcer@e179197007.adsl.alicedsl.de] has quit [Connection timed out] 04:48:31 which scheme has the one you like most? 04:48:33 Common Lisp has a better one. 04:49:01 does CL + arnesi's call/cc feel schemey enough? 04:49:16 What does `feel Schemey enough' mean? 04:49:30 depends on whom you ask, I'm sure 04:49:40 May I ask you? 04:49:59 Fare: the response is "only if you agree to talk at ILC09" 04:50:54 I suppose it has all the suckiness of a bad bare slow R5RS implementation 04:51:25 except for the missing syntax-rules 04:51:30 hml, there's a difference, by the way, of some magnitude, between the ILC and Fare's Boston Lisp talks. 04:51:43 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 60 (Operation timed out)] 04:52:27 Riastradh, btw, if you learn of interesting schemers coming around boston, please send them my way 04:52:27 base 2 or base 10 magnitude? 04:52:43 in the number of attendants, I hope base 10 04:52:51 or at least 5 04:52:53 melito [n=melito@c-71-197-146-242.hsd1.wa.comcast.net] has joined #scheme 04:54:03 ilc 2007 had 128 attendants. That's a round number! 04:54:48 a power of 2 as well! 04:55:24 also an integer! 04:55:28 eno [n=eno@adsl-70-137-168-116.dsl.snfc21.sbcglobal.net] has joined #scheme 04:56:32 underspecified [n=eric@naist-wavenet126-171.naist.jp] has joined #scheme 04:56:51 -!- kniu [n=kniu@DA-YU.RES.CMU.EDU] has quit [Read error: 104 (Connection reset by peer)] 04:57:03 -!- MichaelRaskin_ [n=raskin@gwh-1-177-mytn23k1.ln.rinet.ru] has quit [Read error: 113 (No route to host)] 04:58:07 hml: that's not true; some of them might be pregnant 04:59:20 :P 04:59:43 which scheme has the best debugger support? 05:00:19 hml: how about mit, scheme48? 05:02:21 -!- pjb3_ [n=pjb3@c-76-100-98-185.hsd1.md.comcast.net] has quit [] 05:02:29 drscheme 05:04:10 I guess not being able to continue is acceptable. If I cause a system error on something like (3) or (cdr '()); it's kind of hard to expect the program, which caused this error, to magically know how to continue after fixing said error. 05:04:11 -!- pjb3 [n=pjb3@c-76-100-98-185.hsd1.md.comcast.net] has quit [Read error: 110 (Connection timed out)] 05:06:10 kniu [n=kniu@DA-YU.RES.CMU.EDU] has joined #scheme 05:07:27 does r5rs provide a way to hijack eval? 05:07:36 i want to log/trace a message every time eval happens 05:07:44 hml: I don't think so. 05:07:51 (not the eval that the interpreter can call, but the eval in apply/eval that is used to implement the intrepreter) 05:08:03 and you'll probably want to look into hacking an implementation 05:08:11 or possibly into common lisp? 05:08:17 incubot: any advice on magically continuing after calling cdr on the empty list? 05:08:18 why common lisp? 05:08:18 -!- optikalmouse [n=user@bas1-toronto10-1279398036.dsl.bell.ca] has left #scheme 05:08:19 We have discussed this through & through repeatedly before; I have no interest in continuing useless flame wars. The fact that Scheme's latent type system is enough is _quite_ sufficient for the purposes of the discussion of a Lisp-based OS, and, indeed, stating that fact is fairly useless, because it was already implied in the discussion by all those involved. 05:08:48 sykopomp [n=sykopomp@unaffiliated/sykopomp] has joined #scheme 05:08:53 well, excuuse me. 05:08:54 err? lol; i do not understand 05:09:01 incubot, hml does not understand. 05:09:03 (But no, forcer, I am pretty sure that Schlie does not joke about these matters.) 05:09:06 are my questions questions that commonly result in a flamewar? 05:09:19 incubot, do hml's questions often lead to flame wars? 05:09:21 Playing MPEG stream from Julia_Ecklar__Bob_Kanefsky_-_The_Eternal_Flame__God_Wrote_In_Lisp.mp3 ... 05:09:40 Clear now, hml? 05:09:43 no 05:09:50 please enlighten me 05:10:00 minion: advice for hml 05:10:01 hml: #11948: Perhaps your veeblefitzer is clogged. 05:10:09 incubot, please enlighten hml. 05:10:11 "make cscbench", please. 05:10:22 incubot: have you gone completely bonkers?! 05:10:23 incubot, hml does not have a makefile; can you enlighten him in some other way? 05:10:25 or "he's gone bonkers" 05:10:25 hmm, i think this is irc speak for "time to get back to coding" 05:10:25 Enlighten us 05:10:36 incubot, come, come; be more specific about enlightenment. 05:10:38 esd is the Enlightenment Sound Daemon, a narsty little utility that let multiple applications mix sound; unfortunately as Alan Cox noted it wasn't any good for much more than sound effects for UI geegaws 05:10:39 He's using chicken, though... 05:11:05 klutometis: you and chrisdone should get together ... he made the funniest bot I'd ever seen ... until incubot 05:11:21 offby1: does he #scheme? 05:11:31 used to. Haven't seen him here in ages though 05:11:33 rudybot: seen chrisdone 05:11:33 offby1: chrisdone was seen in/on #emacs seventeen hours, fifty-nine minutes ago, saying "productivity increase!", and then chrisdone was seen leaving the channel in/on #emacs seventeen hours, twenty-nine minutes ago, saying ""ERC Version 5.3 (IRC client for Emacs)"" 05:11:37 eliza vs. incubot 05:11:50 incubot, who would win in a match between you and Eliza? 05:11:52 I think he dabbled, and that was that. 05:11:52 Isn't Eliza an example of a HMM application? 05:11:59 As opposed to I, who hasn't stopped dabbling. 05:12:13 incubot, what about between you and a psychoanalytical pinhead? 05:12:17 Of the Scheme language itself, I think that HtDP may not discuss anything about continuations, their reification, and dynamic context, but I could be wrong about this, since it has been a very long time since I looked at HtDP. 05:12:21 -!- Fare [n=Fare@c-71-232-6-92.hsd1.ma.comcast.net] has left #scheme 05:13:13 -!- bombshelter13 [n=bombshel@209-161-232-155.dsl.look.ca] has quit [] 05:13:51 foof [n=user@202.33.78.92] has joined #scheme 05:25:02 i've heard that gambit's debugger is the shit; anyone here tried it before? 05:25:10 *foof* 05:25:11 (before I move over to #gambit and bug those productive people) 05:25:20 foof: tell me about yourr experience w/ gambit 05:25:36 I laughed, I cried... it was better than cats. 05:25:37 other than a not-as-cool-as-chicken's-ffi, i'm almost tempted to switch 05:25:47 wtf does that mean? 05:26:00 mem`ries~\o 05:26:07 It means that foof is putting you on for asking such a loaded question. 05:26:33 Where's the king of spain when you need him? 05:26:36 loaded as in "you're lazy and should try it out yourself?" 05:26:51 The debugger is indeed very nice, but I don't need it, I'm happy 99% of the time inserting print statements. 05:26:55 Well, the word `shit' implies some prejudice on your part. 05:27:20 i think the modifier 'the' changes the meaning drastically 05:27:30 Good trace info _is_ very important though. Chicken is spotty in this regard. 05:27:31 Oops. 05:27:34 I misread. 05:27:40 -!- tjafk2 [n=timj@e176217142.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 05:27:49 tjafk2 [n=timj@e176205183.adsl.alicedsl.de] has joined #scheme 05:28:06 Let me take this opportunity, then, to suggest that the phrase `the shit' is, in fact, shit. 05:28:25 n g 05:28:26 *offby1* nods gravely 05:28:40 Abbrevo? 05:28:46 (like a typo) 05:29:19 hml, anyway, if you'd like a thoughtless and perhaps outdated invective, try the 2007-07-16 entry of . 05:30:31 Gambit is clumsy to work with - more steps to compile and load code, no module system, no libraries. That's really the only reason I don't use it. 05:30:47 Oh, and UCS-4 is a crappy string representation. 05:31:18 maybe i'm totally wrong 05:31:23 (more steps plus very, very slow compile time) 05:31:26 but i'm stargingt to think the best repl isn't command line based 05:31:32 but has to integrated right into something like vim/emacs 05:31:41 where i can see a visual expressions of the code as it's executed 05:31:45 and instead of printing objects, it gives me ()'s 05:31:51 hml: are you just CL-trolling? 05:31:53 and i can manually put my cursor over the car/cdr and expand them ... 05:32:06 No, sykopomp. 05:32:07 no, i'm being serious; does CL provide this? (i haven't looked at it as i like lisp-1 more than lisp-2) 05:32:45 incubot: I want to be able to write code with the Power Glove 05:32:47 installing wlan on linux is a bit like masturbation with a boxing glove 05:32:50 CL has SLIME (I think there's something like it for scheme too) 05:33:05 yeah, I think there's something called slime48, Riastradh might know somemthing aobut it 05:33:40 Riastradh: hmm, from your blog, Dr scheme might be what I want 05:34:31 or factor. its repl/environment looks rather sexy 05:34:37 Huh? 05:34:43 What suggests that to you, hml? 05:35:15 the flurry of arrows all over the source code; it's _NOT_ what I described above, but it's alot better thatn what i have in chicken, and would make me very happy 05:35:32 the other day, i was using auto lisp for the first time in my life, and it's debugger was cool in that it showedc my source code 05:35:40 and when it executed a macro, it would _highlight_ the sexp as it's executing it 05:36:16 (of course, the code was short + was a simple autocad macro + this wouldn't work for large scale systems .... but it was amazing in that it helped me understand the control flow of this non-documented code at an unbelievable rate) 05:36:30 Perhaps the subsequent sarcastic questions weren't clear enough, but what I was describing was a system that had no way to show the values of local variables, for example. 05:37:23 this reminds me; i wantto go try jazz scheme 05:37:28 maybe it has a cool debugger 05:37:44 ... 05:37:55 hml: do you have any code you need to debug? 05:37:57 (I don't know what DrScheme is like now. But I find it curious that you found my brief synopsis appealing, when the intent was otherwise.) 05:38:19 zbigniew: not at the moment, but when iwas writing an interpreter, debugging on chicken was just b*tchy 05:38:47 I haven't used drscheme for a long time, but its debugger struck me as kind of dadaist 05:39:17 *zbigniew* has never used a debugger for scheme 05:39:24 yes, there are all these arrows all over my code .. which are making it hard to read without providing me any useful information 05:39:42 zbigniew: are you serious? 05:39:43 but they're COLORFUL ARROWS 05:39:45 very pretty though 05:40:00 and you can see what they're trying to say 05:40:25 "look, I'm a useful colourful arrow!" 05:40:27 hml: yeah, unless you're in a specialized situation, why do you need a debugger? 05:40:41 "DRINK ME!" 05:40:48 because in c code, i don't mind sprinking fprintf's 05:40:59 in scheme code, I find (format #t's often break flow of my code 05:41:05 as in lots of reformating 05:41:16 You're doing it wrong. 05:41:20 what editor do you use? 05:41:23 emacsc 05:41:28 *emacs* 05:41:44 suppose i have somethign like: 05:41:52 wow. what zbigniew said 05:42:00 (let ((some-var (some-expr (some-sub-func) (somme-other-expr2)))) ... 05:42:13 *aspect* uses vim but has emacs-envy when it comes to lisp 05:42:15 inserting format #t's to see what the intermediate values are .... breaks stuff up 05:42:44 well first of all, write a macro 05:42:59 (define (debug message object) (format #t message object) object) 05:43:08 hml: Invoke the expressions by hand in the REPL and see what their values are. 05:43:18 hml: Factor your code. 05:43:33 AtnNn [n=welcome@modemcable230.56-56-74.mc.videotron.ca] has joined #scheme 05:43:41 hml: stop using format, it's semi-retarded. 05:43:48 I also find (tracing func . args) useful 05:44:07 but my editor is parenthesis-impoverished 05:44:20 aspect: scheme is why I went from vim to emacs 05:44:26 aspect: viper mode makes emacs tolerable 05:44:32 Riastradh: thanks 05:44:33 zbi 05:44:50 zbigniew: is there a good writeup/manual somewhere on 'debugging tips for scheme' or do i have to put in another 10k hours to learn how to debug scheme? 05:45:28 minion: chant 05:45:28 MORE THAN 05:45:32 debugging's not a very popular topic for scheme 05:45:34 A debugger is useful, but dude, plenty of people have written metric shedloads of code without one or with an impoverished one since, to my knowledge, there ARE no good Scheme debuggers. 05:45:35 Write your program in small pieces that can be understood separately. 05:45:42 as Riastradh's rant suggests 05:46:13 the ability to properly factor your program seems to make the need go away much of the time 05:46:18 My rant does not imply that debuggers are useless, even those Scheme debuggers that are out there. 05:46:21 A debugger's pretty handy when you're stepping into a big wad of somebody else's code. 05:46:24 I use Scheme48's and MIT Scheme's all the time. 05:47:18 when I want a debugger I use tcl or python 05:47:24 they're very good -- I usually find lots of bugs 05:47:42 As I said, the invective was thoughtless, and by now probably outdated. It could have been immensely more constructive than it was. 05:48:28 my point is that the search for the One True Debugger may be just a symptom of the Unending Search For a Better Tool Which Takes the Place of Getting Actual Work Done(tm) 05:48:35 Don't understand it to mean that a Scheme debugger is not worthwhile, or even a touchy subject. 05:49:35 -!- hml [n=x@unaffiliated/hml] has quit ["leaving"] 05:52:01 incubot: and which wears a yellow silken mask over its face and dwells all alone in a prehistoric stone monastery in the cold desert plateau of Leng 05:52:04 Sarahbot dwells in silent agreement. 05:53:14 It is said that in Ulthar, which lies beyond the river Skai, no man may kill a cat. 05:55:52 -!- foof [n=user@202.33.78.92] has quit [Read error: 60 (Operation timed out)] 05:56:07 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit [Remote closed the connection] 05:56:21 -!- sykopomp [n=sykopomp@unaffiliated/sykopomp] has left #scheme 05:57:21 kilimanjaro [n=kilimanj@70.116.95.163] has joined #scheme 05:58:08 -!- underspecified [n=eric@naist-wavenet126-171.naist.jp] has quit [] 06:00:36 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Read error: 104 (Connection reset by peer)] 06:00:37 yay 06:00:42 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit [Remote closed the connection] 06:01:06 `yay' is `heh' upside-down and backwards. 06:01:45  of ps noY 06:01:50 Adamant [n=Adamant@c-71-226-66-93.hsd1.ga.comcast.net] has joined #scheme 06:02:03 No fair using Unicode. 06:02:13 *offby1* pouts 06:07:00 underspecified [n=eric@isa7-dhcp-116-155.naist.jp] has joined #scheme 06:08:34 -!- hadronzoo [n=hadronzo@ppp-70-247-166-177.dsl.rcsntx.swbell.net] has quit [] 06:09:46 hml [n=x@unaffiliated/hml] has joined #scheme 06:15:18 am I blind, or is there nothing to check if ((condition-property-accessor 'exn 'argments) x) will fail before hand, where x is a condition object 06:16:38 Use CONDITION-PREDICATE. 06:17:32 so I can use that for (condition-predicate 'exn) 06:17:37 If a condition property accessor will signal a condition when the condition has the requested `kind key' but no such `property key', then you will lose. This is another question on which SRFI 12 is silent. 06:17:38 to check of 'x' is of the right condition-type 06:17:42 Yes. 06:18:05 okay, so I have to setup a condition hanlder to handle the case that my condition-property-accessor fails 06:18:08 fun 06:18:18 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 06:18:36 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 06:19:01 -!- synthase [n=synthase@c-69-243-234-165.hsd1.al.comcast.net] has quit [Read error: 110 (Connection timed out)] 06:19:41 I don't remember much about Chicken's condition system; it may be an improvement over SRFI 12. However, perhaps you would like to write up the issues you have encountered today with SRFI 12 and submit them to the Chicken developers. 06:20:03 nah; i'm happy to just work around them; i'm a n00b 06:20:18 It is easy for experts to forget the blocks over which novices stumble. 06:20:51 lol, do experts's code magically not crash at these points? 06:20:52 foof [n=user@202.33.78.92] has joined #scheme 06:21:44 I don't know what Chicken experts do; I don't use Chicken much myself. Maybe they write buggy code, and are not aware of it. Maybe they have facilities built atop SRFI 12 that reduce its predilection toward mistakes. 06:22:06 does mit scheme have open gl bindings and a decent c ffi? 06:22:25 No. 06:23:11 *foof* relies on extensive test suites 06:23:45 it's okay, i'm rolling an exception system on top of chicken's with-exception-handler 06:23:50 screw srfi 12 :-P 06:24:52 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 06:25:13 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 06:31:05 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit [Read error: 110 (Connection timed out)] 06:35:13 kilimanjaro [n=kilimanj@70.116.95.163] has joined #scheme 06:38:19 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 06:40:02 What's wrong with SRFI-12? 06:40:39 i'm too stupid to grok it 06:46:43 -!- incubot [n=incubot@24-205-65-135.dhcp.psdn.ca.charter.com] has quit [Read error: 145 (Connection timed out)] 06:47:11 HG` [n=wells@118.82.169.165] has joined #scheme 06:48:16 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 06:48:37 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 06:50:52 Riastradh: can you look at this and tell me if there's anyway to infinite loop my 'my-safe-handle-exception' 06:50:56 http://paste.lisp.org/display/73618 06:51:09 (comments from everyone else welcome too; just mainly Riastradh was helping me understand srfi 12 earlier today) 06:58:27 Yes, there is absolutely a way to loop infinitely. 06:58:34 drats 06:58:36 how? 06:58:47 Sorry, I read too hastily. 07:05:05 -!- foof [n=user@202.33.78.92] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 07:07:48 athos [n=philipp@p54B850D9.dip.t-dialin.net] has joined #scheme 07:08:13 If the current output port is broken, that can loop. 07:08:38 damn it, I knew i forgot something 07:08:48 however, I'm not going to worry about this (or the GC freezing up) 07:09:26 watch me someday try to debug this over tcp, run into 4k buffer sizes, bang my head, and then realize "oh crap, it's the output port" :-D 07:10:41 Anyway, it would be much more sensible for the enclosing condition handler to be established for the dynamic extent of the inner condition handler. 07:11:00 wonderful; i was hoping you'd suggest rewrites. what do you mean in this case? 07:12:53 It would be hard to implement that atop SRFI 12. 07:13:14 I think your comment implies something deeper. 07:13:19 (I don't care much for srfi 12) 07:13:26 Yes; read up on Common Lisp's condition system. 07:14:05 http://www.nhplace.com/kent/Papers/Condition-Handling-2001.html <-- is this a good reference? 07:14:40 (Why didn't you point lisppaste at #scheme for the paste?) 07:14:43 07:15:14 Yes, if I recall correctly that's a decent article on the subject, but on much more than just the details of the signalling and handling control flow. 07:15:32 re lisppaste: my stupidity 07:18:24 I'm off to bed now. 07:18:41 thanks again for help; later 07:25:15 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Read error: 104 (Connection reset by peer)] 07:25:41 Adamant [n=Adamant@c-71-226-66-93.hsd1.ga.comcast.net] has joined #scheme 07:25:54 eno__ [n=eno@adsl-70-137-157-58.dsl.snfc21.sbcglobal.net] has joined #scheme 07:26:00 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 60 (Operation timed out)] 07:29:04 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Read error: 104 (Connection reset by peer)] 07:29:05 -!- HG` [n=wells@118.82.169.165] has quit [Client Quit] 07:29:05 Adamant_ [n=Adamant@c-71-226-66-93.hsd1.ga.comcast.net] has joined #scheme 07:30:21 pierpa [n=user@host202-182-static.80-94-b.business.telecomitalia.it] has joined #scheme 07:31:16 -!- Adamant_ [n=Adamant@unaffiliated/adamant] has quit [Client Quit] 07:31:28 Adamant [n=Adamant@c-71-226-66-93.hsd1.ga.comcast.net] has joined #scheme 07:45:19 vixey [n=vicky@amcant.demon.co.uk] has joined #scheme 07:46:15 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #scheme 07:57:58 -!- underspecified [n=eric@isa7-dhcp-116-155.naist.jp] has quit [] 07:58:01 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 07:58:46 is there a good pattern matching macro libbrary for scheme? 07:58:52 something like erlang or haskell's pattern matching? 07:59:06 -!- bweaver [n=bweaver@c-67-161-236-94.hsd1.tn.comcast.net] has quit [] 07:59:56 Riastradh has the best one in the world apparently :P 08:00:10 where is it? 08:00:18 he must have open sourced it, i persume 08:00:28 tihonov [n=kef@kefeer2.convex.ru] has joined #scheme 08:00:35 or did he just provide everyone with a zero knowledge proof of knowledge that his is the best in the world? 08:02:11 vixey: I am not finding this on google search for "scheme pattern matching" can you provide me a link? 08:03:26 hml, search Scheme Pattern Matching with syntax-rules for what I use, but apparently it's worse tested and I don't know a bunch of other tsuff worse than the one Riastradh has 08:04:03 wait, you know that I want this for pattern matching as in erlang/haksell, not as in macros (though of course, the pattern matching code will have to be impelmented as macros) right? 08:04:25 err, you use things like: (define-syntax ?member? (syntax-rules () ((_ e () sk fk) fk) ((_ e (x . xs) sk fk) ? 08:04:48 hml, are you /that/ confused 08:04:55 ecraven [n=nex@140.78.42.103] has joined #scheme 08:04:59 i am 08:05:09 hml, How do you think you are going to add pattern matching _a binding construct_ to scheme, without using a macro 08:05:45 hml, I suppose you don't understand continuation passing style 08:06:01 sk means success continuation, fk means failure continuation 08:06:03 "use pattern matching" not "pattern matching for the sake of writing macros, as the hygeinic macros rewrite system tends to use" 08:06:53 imagine something like 08:07:03 http://muaddibspace.blogspot.com/2008/04/scheme-pattern-matching-with-syntax.html <-- is this what you use? 08:07:04 -rudybot:#scheme- http://tinyurl.com/58yz9y 08:07:11 (if c (print x) (reverse y)) 08:07:49 (print x) is the success continuation, reverse y is the failure continuation 08:08:00 this much i understand 08:08:11 actually 08:08:15 (if c x (reverse y)) 08:08:16 would be better 08:08:43 geckosenator [n=sean@adsl-68-23-87-156.dsl.dytnoh.ameritech.net] has joined #scheme 08:08:44 in (print (if c x (reverse y))), the success continuation is (print x), the failure continuation is (print (reverse y)) 08:09:00 if that makes sense hopefully it will shed some light on how ?member? works 08:09:13 that makes sense 08:10:00 i need to go read up on syntax-rules; i tend to write my amcros using define-macro 08:10:22 define-macro sounds like some CL knock-off of defmacro. I bet it sucks 08:10:59 it's awesome 08:22:02 vixey: be my girl. 08:23:37 benny [n=benny@i577A098A.versanet.de] has joined #scheme 08:23:43 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit ["Konversation terminated!"] 08:24:28 -!- banisterfiend [n=john@203-97-217-154.cable.telstraclear.net] has quit [Connection timed out] 08:29:52 banisterfiend: You could never keep up.. 08:33:02 fschwidom [n=fschwido@dslb-088-068-091-216.pools.arcor-ip.net] has joined #scheme 08:40:25 -!- athos [n=philipp@p54B850D9.dip.t-dialin.net] has quit [Read error: 60 (Operation timed out)] 08:41:09 hotblack23 [n=jh@p5B055ABD.dip.t-dialin.net] has joined #scheme 08:44:57 MichaelRaskin_ [n=raskin@chld.ru] has joined #scheme 08:59:45 -!- synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has quit [wolfe.freenode.net irc.freenode.net] 08:59:59 -!- jdev [i=jdev@panix5.panix.com] has quit [wolfe.freenode.net irc.freenode.net] 08:59:59 -!- levi [n=user@levi.dsl.xmission.com] has quit [wolfe.freenode.net irc.freenode.net] 08:59:59 -!- tarbo [n=me@unaffiliated/tarbo] has quit [wolfe.freenode.net irc.freenode.net] 08:59:59 -!- rotty [n=rotty@chello084114192192.1.15.vie.surfer.at] has quit [wolfe.freenode.net irc.freenode.net] 09:00:10 jdev [i=jdev@panix5.panix.com] has joined #scheme 09:00:12 levi [n=user@levi.dsl.xmission.com] has joined #scheme 09:00:19 rotty [n=rotty@chello084114192192.1.15.vie.surfer.at] has joined #scheme 09:00:48 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:01:31 synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has joined #scheme 09:01:44 barney [n=bernhard@p549A0319.dip0.t-ipconnect.de] has joined #scheme 09:04:03 drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 09:06:27 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 09:06:40 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:09:43 ejs [n=eugen@92.49.235.113] has joined #scheme 09:10:28 -!- hml [n=x@unaffiliated/hml] has quit ["leaving"] 09:11:58 -!- saccade_ [n=saccade@209.6.23.56] has quit ["This computer has gone to sleep"] 09:12:23 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 09:12:37 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:13:39 exexex [n=chatzill@85.96.117.247] has joined #scheme 09:13:45 -!- vixey [n=vicky@amcant.demon.co.uk] has quit [Remote closed the connection] 09:17:42 -!- hotblack23 [n=jh@p5B055ABD.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 09:18:49 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 09:19:03 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:20:30 athos [n=philipp@p54B850D9.dip.t-dialin.net] has joined #scheme 09:25:10 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 54 (Connection reset by peer)] 09:25:23 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:31:37 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 131 (Connection reset by peer)] 09:31:51 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:33:55 -!- MichaelRaskin_ [n=raskin@chld.ru] has quit [Read error: 110 (Connection timed out)] 09:34:43 MichaelRaskin_ [n=raskin@chld.ru] has joined #scheme 09:37:16 banisterfiend [n=john@203-97-217-154.cable.telstraclear.net] has joined #scheme 09:37:19 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 09:37:31 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:43:37 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 09:43:51 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:49:05 attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has joined #scheme 09:49:58 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Connection reset by peer] 09:50:11 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:56:18 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Connection reset by peer] 09:56:31 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 09:57:18 borism [n=boris@195-50-206-243-dsl.krw.estpak.ee] has joined #scheme 09:58:26 -!- leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has quit [Read error: 60 (Operation timed out)] 09:59:20 Gorgoroth [i=Gorgorot@195-132-141-240.rev.numericable.fr] has joined #scheme 09:59:20 leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has joined #scheme 10:00:52 athos_ [n=philipp@p54B85081.dip.t-dialin.net] has joined #scheme 10:01:37 -!- jao [n=user@81.Red-83-33-179.dynamicIP.rima-tde.net] has quit [Read error: 110 (Connection timed out)] 10:02:04 orgy` [n=ratm_@pD9FFF4D3.dip.t-dialin.net] has joined #scheme 10:02:04 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Connection reset by peer] 10:02:17 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 10:03:10 -!- echo-area [n=user@nat/yahoo/x-1948c69c5a1ceadd] has quit [Remote closed the connection] 10:03:49 -!- borism_ [n=boris@195-50-205-79-dsl.krw.estpak.ee] has quit [Read error: 145 (Connection timed out)] 10:06:16 -!- leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has quit [Read error: 54 (Connection reset by peer)] 10:06:49 leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has joined #scheme 10:08:33 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 10:08:47 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 10:15:08 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 10:15:20 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 10:15:50 a-s [n=user@85.9.55.98] has joined #scheme 10:17:03 alaricsp [n=alaricsp@217.205.201.45] has joined #scheme 10:21:38 -!- athos [n=philipp@p54B850D9.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 10:21:43 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 10:22:00 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 10:28:13 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 10:28:25 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 10:34:25 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 10:34:37 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 10:36:13 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Client Quit] 10:41:05 Mr-Cat [n=Mr-Cat@hermes.lanit.ru] has joined #scheme 10:42:19 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 10:48:12 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 10:48:25 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 10:51:49 drdo` [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 10:54:10 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Read error: 104 (Connection reset by peer)] 10:54:11 -!- leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has quit [Read error: 54 (Connection reset by peer)] 10:54:23 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 10:54:45 -!- tarbo [n=me@unaffiliated/tarbo] has quit [Client Quit] 10:54:47 leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has joined #scheme 11:05:18 stmax [i=551f030b@gateway/web/ajax/mibbit.com/x-2e14fc29357b1a73] has joined #scheme 11:05:32 drdo`` [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 11:06:58 -!- drdo [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Connection timed out] 11:20:45 -!- drdo` [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Connection timed out] 11:25:15 drdo``` [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 11:28:45 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 11:31:07 xwl [n=user@125.33.194.176] has joined #scheme 11:35:27 -!- xwl [n=user@125.33.194.176] has quit [Remote closed the connection] 11:35:28 drdo```` [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 11:38:23 drdo````` [n=psykon@167.111.54.77.rev.vodafone.pt] has joined #scheme 11:38:39 -!- drdo````` [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Remote closed the connection] 11:39:55 -!- drdo`` [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Connection timed out] 11:41:40 yhara [n=yhara@7.193.12.221.megaegg.ne.jp] has joined #scheme 11:45:15 drwhen [n=d@73-114-74-65.gci.net] has joined #scheme 11:46:43 -!- attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has quit [Read error: 145 (Connection timed out)] 11:50:28 -!- drdo``` [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Connection timed out] 11:55:14 -!- drdo```` [n=psykon@167.111.54.77.rev.vodafone.pt] has quit [Read error: 110 (Connection timed out)] 12:06:15 -!- rdd [n=user@c83-250-142-219.bredband.comhem.se] has quit [Read error: 104 (Connection reset by peer)] 12:06:34 rdd [n=rdd@c83-250-142-219.bredband.comhem.se] has joined #scheme 12:06:34 foof [n=user@dn157-046.naist.jp] has joined #scheme 12:09:09 tarbo [n=me@unaffiliated/tarbo] has joined #scheme 12:09:11 xwl [n=user@125.33.194.176] has joined #scheme 12:10:44 chturne [n=charlie@host86-139-71-1.range86-139.btcentralplus.com] has joined #scheme 12:18:19 chturne pasted "multiply without + or *" at http://paste.lisp.org/display/73630 12:18:34 im having a problem defining a function to multiply two numbers togheter without using * or +. I've defined a function to add numbers without using +, but it doesn't seem to be compatible with multiplication. 12:21:44 -!- drwhen [n=d@73-114-74-65.gci.net] has quit ["\(^^) LET THE GOOD TIMES ROLL! "\(^^)""] 12:26:46 drwhen [n=d@73-114-74-65.gci.net] has joined #scheme 12:28:10 -!- xwl [n=user@125.33.194.176] has quit [Remote closed the connection] 12:42:26 -!- drwhen [n=d@73-114-74-65.gci.net] has quit [Read error: 104 (Connection reset by peer)] 12:47:10 -!- pchrist [n=spirit@gentoo/developer/pchrist] has quit [Read error: 104 (Connection reset by peer)] 12:55:02 pchrist [n=spirit@gentoo/developer/pchrist] has joined #scheme 12:57:41 Tankado [n=Woodruff@bzq-84-110-162-68.red.bezeqint.net] has joined #scheme 13:04:04 -!- levi [n=user@levi.dsl.xmission.com] has quit [Read error: 104 (Connection reset by peer)] 13:08:00 -!- dfeuer [n=dfeuer@wikimedia/Dfeuer] has quit [Read error: 54 (Connection reset by peer)] 13:15:26 -!- leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has quit [Read error: 60 (Operation timed out)] 13:19:00 leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has joined #scheme 13:19:59 -!- jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 13:20:10 -!- leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has quit [Read error: 54 (Connection reset by peer)] 13:20:45 leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has joined #scheme 13:22:21 -!- leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has quit [Read error: 54 (Connection reset by peer)] 13:22:36 -!- tihonov [n=kef@kefeer2.convex.ru] has quit ["Leaving"] 13:28:48 -!- MichaelRaskin_ [n=raskin@chld.ru] has quit [Read error: 110 (Connection timed out)] 13:29:31 ramkrsna_ [n=ramkrsna@59.160.127.177] has joined #scheme 13:31:56 leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has joined #scheme 13:32:59 -!- leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has quit [Read error: 60 (Operation timed out)] 13:35:20 -!- Tankado [n=Woodruff@bzq-84-110-162-68.red.bezeqint.net] has quit [] 13:36:41 jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has joined #scheme 13:36:46 isomer`` [n=isomer@CPE001310e6cb31-CM0011aec5e684.cpe.net.cable.rogers.com] has joined #scheme 13:39:55 -!- rtra [n=rtra@unaffiliated/rtra] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 13:42:08 leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has joined #scheme 13:43:46 -!- isomer [n=isomer@CPE001310e6cb31-CM0011aec5e684.cpe.net.cable.rogers.com] has quit [Read error: 110 (Connection timed out)] 13:45:07 -!- ramkrsna [n=ramkrsna@unaffiliated/ramkrsna] has quit [Read error: 110 (Connection timed out)] 13:46:46 saccade_ [n=saccade@MCNAIR-THREE-SEVENTY.MIT.EDU] has joined #scheme 13:51:14 hemulen [n=hemulen@cpe-069-134-114-252.nc.res.rr.com] has joined #scheme 14:02:21 In one word: is Clojure worth checking out? 14:02:59 It seems to lack hygienic macros. 14:03:08 -!- leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has quit [Read error: 54 (Connection reset by peer)] 14:03:41 leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has joined #scheme 14:07:49 -!- ejs [n=eugen@92.49.235.113] has quit [Read error: 110 (Connection timed out)] 14:08:10 bweaver [n=bweaver@c-67-161-236-94.hsd1.tn.comcast.net] has joined #scheme 14:12:42 -!- bweaver [n=bweaver@c-67-161-236-94.hsd1.tn.comcast.net] has quit [Client Quit] 14:13:49 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["The funniest things in my life are truth and absurdity."] 14:15:15 attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has joined #scheme 14:17:35 edw, yes. 14:19:37 "Note that recur is the only non-stack-consuming looping struct in Clojure." Ouch. 14:20:25 Err, looping CONstruct. 14:21:20 edw: Is 'recur' somwthing different from functin call? 14:21:21 BTW, it took me about twenty minutes to figure out the pun with "Use cons to collect trash on the side of the road." I'm in deep. 14:21:45 s/functin/function 14:21:51 "Evaluates the exprs in order, then, in parallel, rebinds the bindings of the recursion point to the values of the exprs." 14:21:59 From 14:22:07 -!- saccade_ [n=saccade@MCNAIR-THREE-SEVENTY.MIT.EDU] has quit ["This computer has gone to sleep"] 14:23:12 Reading that and looking at the examples make my head hurt. 14:24:39 xwl [n=user@125.33.194.176] has joined #scheme 14:25:20 edw: Seems like some weird joke, but not lisp dialect ))) 14:25:37 So fn and loop define recursion points. 14:27:02 edw: I believe they did that to get rid of letrec-like bindings 14:28:23 jao [n=user@74.Red-80-24-4.staticIP.rima-tde.net] has joined #scheme 14:30:23 I think they did it to provide *a* TCO construct. I think this because that's what the documentation strongly suggests. 14:31:19 Remember that they're working within the limits of the JVM, and it's not particularly well suited to implementing those constructs that traditional lisps expect to have. 14:31:46 gnomon: Why not suited? 14:33:09 Mr-Cat, try the second link at http://letmegooglethatforyou.com/?q=java+JVM+tail+call+optimization 14:33:31 Or the first, for that matter, or the third. Or pretty much any link on that page. 14:35:20 The real disappointing thing to me is that fn doesn't support pattern matching. So I could e.g. (fn fib ([0] 1) ([1] 1) ([n] (+ (fib (dec n) (- n 2))))). 14:35:57 Or a version of that procedure that would actually work... 14:38:17 gnomon: JVM does not optimize tail calls by itself - is that the suggested answer? Then what prevents the compiler (not jit) from performing tco? 14:39:07 Mr-Cat, do you want me to give you a short, coffee-deprived and flippant answer, or would you prefer an erudite and complete answer written by someone more informed and less disagreeable than me? 14:39:52 gnomon: the second one 14:40:19 I refer you once again to the aforementioned search, and the second link in particular. 14:40:20 "Recur" seems to just be a synonym for (apply-tco-ly ) 14:41:30 And there's no way to recur outside the most recent "recursion point". It seems. 14:42:07 And no hygienic macros. Did I mention that? 14:43:15 gnomon: edw: Yes, you did 14:45:39 gnomon: I appreciate your belief in google power, but how it happened, that kawa does tco? And what can prevent one from compiling scheme with chicken scheme approach? 14:47:15 Also, AFAIK, scala does tco too 14:49:36 Mr-Cat, perhaps you should look at slide 11 of http://sources.redhat.com/kawa/papers/KawaLisp98-slides.ps.gz 14:49:55 Which, in passing, is the very first result for google query 'kawa tail call optimization'. 14:50:31 -!- hiyuh [n=hiyuh@KD059133115102.ppp.dion.ne.jp] has quit ["|_ e /\ \/ i |/| G"] 14:50:44 gnomon: Ok not TCO, but tail recursion only 14:51:02 Which, if you'll consider for a second, is also what Clojure offers, and for the same reason. 14:51:04 just what 'recur' in clojure does 14:51:08 Precisely. 14:51:38 my understanding is that if you want tco on the jvm you need to implement your own call stack. that's what SISC scheme does, afaik. and probably what clojure's recur keyword does in a limit scope 14:51:52 Because of a limitation in the design of the JVM - one of many that makes implementing a full, fast lisp or Scheme on that VM more difficult than on other architectures. 14:52:32 hemulen, precisely. If I recally correctly, there's a good paper on SISC's workaround. It takes a performance hit in order to implement proper semantics. 14:52:33 gnomon: more difficult - yes, but not impossible 14:54:26 gnomon: SISC is an interpreter, Clojure a compiler. Yes? No? 14:55:11 edw: strictly speaking, yes. but i think the jvm's jit blurs that line a bit in sisc's case 14:55:30 gnomon: Sorry, I just got done reading some of Infinite Jest where a French Canadian is speaking English. It has affected my speech. 14:57:23 edw, pas du tout; j'aime bien ce language! 14:58:40 Mr-Cat, I didn't say it was impossible; I said that the JVM does not support the primitives necessary, so implementing a *full*, *fast* lisp on the JVM is hard, if not impossible. It certainly hasn't been done yet: SISC is not as fast as the underlying system should let it be; Clojure, Kawa et al are not as complete as they should be. 14:58:43 Thank you. 14:59:38 gnomon: I've heard rumors of the JVM receiving opcodes in a future version that woud make writing such compilers less impossible. 14:59:42 gnomon: Yes, unfortunately either *complete* or *fast* 14:59:47 -!- vincenz [n=vincenz@li23-146.members.linode.com] has quit ["Lost terminal"] 14:59:54 edw: Da Vinci project, I believe 15:00:21 i go for fast 9 out of 10 times 15:00:47 Fast to develop or fast to execute? 15:00:54 edw, the first result for the google query I posted above: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4726340 15:01:09 fast to execute 15:01:45 i wouldn't hold my breath on that one 15:01:46 vincenz [n=vincenz@li23-146.members.linode.com] has joined #scheme 15:02:09 invokedynamic has taken years so i'm not optimistic it will happen quickly 15:02:34 the reporter seems to be confused between tail calls, tail call optimization and tail call elimination 15:02:54 im not even sure what tail call optimization means 15:02:57 anyone? 15:03:19 huh? 15:03:57 tco means that a recursive call in tail position (the very last thing a function does) is guaranteed not to allocate an additional call frame 15:04:02 The definition of TCO is implementation-dependent. 15:04:02 The bug writer is very astute: the first paragraph plays up the GC efficiency aspects. "It might help us Scheme weenies write a wicked-fast compiler on the JVM? That's interesting; hadn't thought of that!" 15:04:02 can anyone tell me what it means, tail call optimization, that is 15:04:15 hemulen, that's tail recursion, not tail calling. 15:04:47 Read the URL bug description in the URL above, leppie. 15:04:52 i'd argue it's both 15:04:56 but that's just me :) 15:05:04 tce as I understand it, it rewriting tail calls into loops/while 15:05:26 hemulen, every instance of tail recursion is a tail call; not every instance of a tail call is tail recursion. They are not the same thing. 15:05:27 keyword being elimination 15:05:35 A tail call is a JSR where a JMP would do. As a 6502 programmer... 15:06:19 gnomon: true. i've only ever encountered tco in the context of tail recursion, though 15:06:28 tco could be what gcc does, and althought the coder does not specify it, the compiler might optimize a recursive call into a tail recursive one, does that sound about right? 15:07:11 GCC does (or can) TCO some C functions. 15:07:53 hemulen, read "Swine Before Perl". 15:08:12 You sometimes don't realize that you're doing tail recursion because procedure A calls procedure B which calls C ... which calls A. 15:08:25 leppie, not every recursive call is (or can be) tail recursive. 15:08:48 gnomon: duly noted. thanks for the reference 15:08:58 So there's special case "A is calling A" TCO and more general "A isn't doing anything after calling a procedure" TCO. 15:09:34 gnomon: yes, if the compiler can determine it to be in a tail position, and recursive 15:11:47 As someone mentioned: this bug's been around a while: 5 1/2 years. 15:12:51 leppie: Not necessarily recursive 15:13:32 leppie: A calls B in tail position, B calls C in tail position ... and all these calls in constant stack size 15:14:02 -!- yhara [n=yhara@7.193.12.221.megaegg.ne.jp] has quit ["Leaving..."] 15:14:16 no, there is no point in doing that for GCC unless it can inline all calls in between to create a while loop 15:14:52 leppie: I don't know about whether gcc performs such optimization 15:15:15 probably not :p 15:15:20 Mr-Cat: GCC will do simple A calls A TCO in C. It's easy enough to check. 15:15:24 but maybe it does 15:15:50 if C calls A again and both B and C is inlinable, there should be no issue 15:17:21 There is some unfortunate confusion over the terminology surrounding tail calls. 15:17:39 levi` [n=user@levi.dsl.xmission.com] has joined #scheme 15:17:53 Mr-Cat: if it only calls A -> B -> C like you described, there is no need to preserve stack space, as the operation is using a constant size, it only makes sense to apply in a recursive situation 15:17:59 The technical term used and precisely defined in Scheme literature for the guarantee provided by Scheme is `proper tail recursion'. 15:18:41 leppie: GCC tco was discussed here: http://community.schemewiki.org/?gcc-does-no-flow-analysis 15:18:50 ok 15:19:40 Implementations of Scheme are required to be properly tail recursive, in that they must support an unbounded number of active tail calls. 15:19:55 bombshelter13 [n=bombshel@net1.senecac.on.ca] has joined #scheme 15:20:40 Despite the word `recursion' in this term, this applies beyond syntactic self-recursion or syntactic mutual recursion. 15:21:24 This is a guarantee about the pragmatics of a program, and it allows programs to be written in a certain style that would likely crash without the guarantee. 15:21:31 has anyone written a little test script for say R5RS tail call conformance? 15:21:58 Sure: (define (loop-test) (loop-test)) (loop-test) 15:22:12 If that runs forever, you've got clean tail recursion. 15:22:14 no i mean on testing all the cases :p 15:22:32 Then you'll have to relax your 'little' constraint. 15:22:35 What GCC implements fis an optimization (not a guarantee) that reduces the stack space usage in some cases, sometimes by violating the ABI. (Hence it applies only to static functions.) 15:22:45 `Fis'? `Is', I mean. 15:23:16 Riastradh: thanks 15:23:53 leppie: you mean: a calls b, then b calls c... ? 15:24:20 yes 15:24:35 Mr-Cat, I believe, for the interpreter and chicken-like compilers, cps transformation can guarantee that 15:26:47 For example, if the ABI (obnoxiously) requires that the callee leave its arguments on the stack, no implementation of C conforming to this ABI can be properly tail recursive. 15:26:53 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 15:27:11 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 15:31:51 edw pasted "Interesting GCC TCO results" at http://paste.lisp.org/display/73639 15:32:18 annodomini [n=lambda@130.189.179.215] has joined #scheme 15:32:21 Look at the generated assembly code. 15:32:47 *edw* looks 15:33:16 Also, write `return (boom (i + 1L))', not `boom (i + 1L)'. 15:34:05 Works for me. 15:34:55 -!- attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has quit [Read error: 113 (No route to host)] 15:37:27 -foptimizesiblingcalls and -O0 generate identical assembly. Is it the magic parentheses? 15:37:43 Your code is broken as written. 15:37:50 I'm surprised GCC didn't warn you about it. 15:37:51 Right. D'oh. 15:38:16 Haven't written C in a while. 15:38:36 Or any language that doesn't implicitly return the last expression. 15:38:38 (The flag is also -foptimize-sibling-calls, not -foptimizesiblingcalls.) 15:39:06 edw: Yeah, that's annoying as hell 15:40:21 Even correctly written, it still segfaults on my machine unless I -O3 it. 15:40:47 On this Arch64 Linux box. Let me check my Mac... 15:41:30 hiyuh [n=hiyuh@KD125054017176.ppp-bb.dion.ne.jp] has joined #scheme 15:42:08 Oh, dear. Number six has become unmutual from this plane of existence. 15:42:39 Whiskey tango foxtrot? 15:42:50 Same thing: O0 and >>>-foptimize-sibling-calls<<< segfault, O3 doesn't. 15:43:00 gnomon: Patrick MacGoohan died 15:43:30 No man is an island. 15:43:55 edw: For whom does the bell toll? 15:43:59 Oh wait, I wasn't supposed to ask that 15:44:01 offby1, ah, I didn't know that McGoohan was in The Prisoner. 15:44:06 !? 15:44:10 *Riastradh* blinks. 15:44:19 I've never watched an episode, you see. 15:44:19 For us all, offby1? 15:44:20 gnomon: I didn't know that Mark Hamill was in "Star Wars" 15:44:20 He's only the main character. 15:44:33 *offby1* high-fives gnomon 15:44:39 I only know about the show itself, not anything in it. 15:44:46 *offby1* dances with glee 15:44:51 I think I've gleaned more from the Simpsons episode that aped it than from the show itself. 15:45:00 offby1, why's that? 15:45:02 Or "Mad Magazine", if you're of a certain age 15:45:16 I never was a fan of that publication. 15:45:16 I had the Apple II video game "The Prisoner". 15:45:22 gnomon: I pride myself on disliking sci-fi in general, and hence not being a _complete_ nerd cliché; perhaps you're similar 15:45:24 Your cultural education is sorely lacking, gnomon. 15:45:33 I think this calls for a weekend _Danger Man_ extravaganza. 15:46:13 The worst of it is that I had the entire series on loan from a friend for more than a year. I never got around to even reading the episode descriptions. 15:46:14 offby1: Yes! I never did D&D or LotR or Monty Python: I already had too many defecits. 15:46:16 *mbishop* can't understand british television...it's like they're speaking another language! 15:47:02 offby1, I actually like some sci-fi, but I'm a snob about plausibility and good writing, which means that I dislike most sci-fi by default. 15:47:11 -!- levi` is now known as levi 15:47:37 -!- eno__ [n=eno@adsl-70-137-157-58.dsl.snfc21.sbcglobal.net] has quit ["leaving"] 15:50:29 Alas I did D&D. But at least I can gloat that I was one of the first: I played it around << deep breath >> 1979 15:50:50 *offby1* high-fives the good-writing snob 15:51:00 Not that there isn't well-written sci-fi, I'm sure 15:51:19 but I bet the quality/crap ratio is no higher in that genre than any other 15:52:01 -!- leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has quit [Read error: 54 (Connection reset by peer)] 15:52:33 leppie [n=lolcow@dsl-243-30-250.telkomadsl.co.za] has joined #scheme 15:52:33 The trick is to find other good-writing sci-fi snobs who learn slowly, and then correlate their reading lists with their splenitive rants to find the stuff worth thinking about reading. 15:52:47 gnomon, on a more serious note, I do recommend that you seek an opportunity to see _The Prisoner_ and _Danger Man_. They are excellently written and performed. (They're not science fiction, anyway, barring some curious devices in _The Prisoner_.) 15:54:02 offby1, remember Sturgeon's law. 15:54:35 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 15:55:16 yep 15:55:21 I _live_ Sturgeon's Law 15:56:32 schmalbe [n=bernhard@p549A0319.dip0.t-ipconnect.de] has joined #scheme 15:57:51 -!- barney [n=bernhard@p549A0319.dip0.t-ipconnect.de] has quit [Read error: 104 (Connection reset by peer)] 15:58:05 hadronzoo [n=hadronzo@ppp-70-247-166-177.dsl.rcsntx.swbell.net] has joined #scheme 15:59:07 Riastradh, I'll follow that advice. Thanks. 15:59:08 -!- AtnNn [n=welcome@modemcable230.56-56-74.mc.videotron.ca] has quit [Remote closed the connection] 15:59:19 AtnNn [n=welcome@modemcable230.56-56-74.mc.videotron.ca] has joined #scheme 15:59:29 (Also, some of the technology in _The Prisoner_ is now, perhaps ominously, *not* fictitious.) 16:00:30 -!- jonrafkind [n=jon@c-98-202-86-149.hsd1.ut.comcast.net] has quit [Connection timed out] 16:01:57 Argh! 16:01:59 Stupid !@&#^% SMTP. 16:04:34 AtnNn_ [n=welcome@modemcable230.56-56-74.mc.videotron.ca] has joined #scheme 16:04:35 bweaver [n=bweaver@68.60.199.117] has joined #scheme 16:04:42 cads [n=max@c-71-56-62-166.hsd1.ga.comcast.net] has joined #scheme 16:06:02 attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has joined #scheme 16:07:37 -!- AtnNn [n=welcome@modemcable230.56-56-74.mc.videotron.ca] has quit [Read error: 54 (Connection reset by peer)] 16:09:34 Nshag [i=user@Mix-Orleans-106-2-219.w193-248.abo.wanadoo.fr] has joined #scheme 16:10:19 moghar [n=user@unaffiliated/moghar] has joined #scheme 16:12:39 vixey [n=vicky@amcant.demon.co.uk] has joined #scheme 16:13:11 jonrafkind [n=jon@wireless180.wireless.utah.edu] has joined #scheme 16:23:01 reprore_ [n=reprore@ntkngw604176.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 16:24:12 -!- xwl [n=user@125.33.194.176] has quit [Read error: 145 (Connection timed out)] 16:24:49 -!- schmalbe [n=bernhard@p549A0319.dip0.t-ipconnect.de] has quit [Remote closed the connection] 16:25:13 -!- a-s [n=user@85.9.55.98] has quit [Remote closed the connection] 16:27:45 borism_ [n=boris@195-50-212-217-dsl.krw.estpak.ee] has joined #scheme 16:32:41 -!- borism [n=boris@195-50-206-243-dsl.krw.estpak.ee] has quit [Read error: 145 (Connection timed out)] 16:34:39 -!- ttmrichter [n=ttmricht@59.172.142.205] has quit [Read error: 110 (Connection timed out)] 16:37:35 noddy [n=noddy@93-139-70-20.adsl.net.t-com.hr] has joined #scheme 16:42:07 -!- athos_ [n=philipp@p54B85081.dip.t-dialin.net] has quit [Remote closed the connection] 16:50:10 -!- bombshelter13 [n=bombshel@net1.senecac.on.ca] has quit [Read error: 113 (No route to host)] 16:51:40 samth [n=samth@punge.ccs.neu.edu] has joined #scheme 16:52:08 eli: are you around? 16:52:11 rudybot: seen eli 16:52:12 samth: eli was seen in/on #scheme nineteen hours, fourteen minutes ago, saying "optikalmouse: Yes -- I mean to say that they dumped the guile idea long ago.", and then eli was seen in/on #scheme nineteen hours, fourteen minutes ago, saying "proq: what you *should* say is that perl/python are not small things either." 16:52:38 perl/python are not small things either. 16:52:41 there, I said it 16:52:53 i'm so happy 16:52:59 you said that 16:58:41 langmartin [n=user@75.148.111.133] has joined #scheme 17:02:55 masm [n=user@a83-132-153-17.cpe.netcabo.pt] has joined #scheme 17:04:55 -!- Mr-Cat [n=Mr-Cat@hermes.lanit.ru] has left #scheme 17:05:21 -!- ecraven [n=nex@140.78.42.103] has quit ["bbl"] 17:07:44 -!- bpt [n=bpt@cpe-071-070-209-067.nc.res.rr.com] has quit ["Leaving"] 17:08:33 eno [n=eno@nslu2-linux/eno] has joined #scheme 17:12:49 -!- attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has quit ["..."] 17:14:59 -!- qebab [n=finnrobi@eros.orakel.ntnu.no] has quit [Read error: 110 (Connection timed out)] 17:20:27 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 17:24:17 Adamant [n=Adamant@c-71-226-66-93.hsd1.ga.comcast.net] has joined #scheme 17:26:51 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Operation timed out] 17:29:21 -!- REPLeffect [n=REPLeffe@69.54.115.254] has quit ["bye"] 17:31:38 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 104 (Connection reset by peer)] 17:32:02 opt9 [n=opt9@59.7.205.138] has joined #scheme 17:32:16 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 17:32:39 jlongster [n=user@75.148.111.133] has joined #scheme 17:33:46 -!- kniu [n=kniu@DA-YU.RES.CMU.EDU] has quit [Connection timed out] 17:33:53 jah [n=jah@73.56.76-86.rev.gaoland.net] has joined #scheme 17:33:58 jso [n=user@151.159.200.8] has joined #scheme 17:35:07 -!- jah [n=jah@73.56.76-86.rev.gaoland.net] has quit [Client Quit] 17:37:14 brweber2 [n=brweber2@65.170.117.42] has joined #scheme 17:42:00 error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 17:46:41 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 145 (Connection timed out)] 17:54:26 -!- error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 104 (Connection reset by peer)] 17:54:46 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 18:03:29 -!- stmax [i=551f030b@gateway/web/ajax/mibbit.com/x-2e14fc29357b1a73] has quit ["http://www.mibbit.com ajax IRC Client"] 18:09:03 -!- isomer`` is now known as isomer 18:11:56 -!- melito [n=melito@c-71-197-146-242.hsd1.wa.comcast.net] has quit ["Leaving..."] 19:03:46 ccl-logbot [n=ccl-logb@master.clozure.com] has joined #scheme 19:03:46 19:03:46 -!- names: ccl-logbot MichaelRaskin_1 kh jonrafkind Fare athos mejja waterh kniu pjb3 ecraven tripwyre errordeveloper brweber2 jso jlongster opt9 eno masm langmartin samth noddy borism_ vixey moghar Nshag cads bweaver AtnNn_ hkBst leppie hiyuh annodomini levi vincenz hemulen isomer jeremiah ramkrsna_ pchrist chturne tarbo foof rdd alaricsp orgy` Gorgoroth banisterfiend exexex synx rotty jdev fschwidom benny geckosenator kilimanjaro tjafk2 CaptainMorgan 19:03:46 -!- names: Riastradh offby1 maodun dmoerner Axioplase X-Scale Daemmerung spooneybarger sladegen hyperboreean decoder_ring araujo elmex tabe clog ski__ Leonidas dlouhy sjamaan zbigniew ineiros mr_uggla klutometis elf_ z0d DuClare wasabi__ Elly gaja aspect nasloc__ sad0ur mbishop inhortte saccade maxote michaelw regulate certainty|work z` yosafbridge gnomon Khisanth Cale r0bby kazzmir huangjs danking emma mqt Adrinael proq set1 mmc eli offby1-quassel kryptiskt 19:03:46 -!- names: elias` bsmntbombdood aquanaut` heat Def Mr_Awesome pbusser2 Poeir Kusanagi XTL rudybot ricky nothingHappens_ lumi_ felipe ski_ G-Brain rmrfchik wastrel pjdelport hark duncanm Qaexl gribozavr Debolaz mornfall raikov edw djjack lisppaste minion specbot mns_ subversus rcy mfredrickson 19:04:10 If this is your macro language, I can't imagine any Scheme failing for being unreasonably slow. 19:04:26 if you write it mostly in scheme, then gambit, chicken, plt are all good choices 19:04:38 note that mitscheme has an editor. 19:04:46 as does PLT. 19:04:50 plt and gambit have graphical interfaces with editors 19:04:50 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 19:04:59 does the plt editor work in text mode? 19:05:11 You mean, over a TTY? No. 19:05:55 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 19:05:56 just take a page from jcowan and use `ex` 19:06:13 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 19:06:24 It has been said that jcowan is missing a few pages. Now I know why. 19:06:31 *Daemmerung* gives an accusing stare 19:07:23 deus ex jcowan 19:13:14 hotblack23 [n=jh@p5B056047.dip.t-dialin.net] has joined #scheme 19:13:48 amoe [n=amoe@cpc1-brig3-0-0-cust512.brig.cable.ntl.com] has joined #scheme 19:16:17 -!- tripwyre [n=sathya@117.193.163.255] has quit [] 19:27:04 -!- z0d [n=z0d@unaffiliated/z0d] has quit [Read error: 60 (Operation timed out)] 19:29:45 z0d [n=z0d@unaffiliated/z0d] has joined #scheme 19:32:05 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #scheme 19:38:03 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit ["Konversation terminated!"] 19:51:31 melito [n=melito@70.99.250.82] has joined #scheme 19:54:23 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 104 (Connection reset by peer)] 19:54:40 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 19:55:05 -!- fschwidom [n=fschwido@dslb-088-068-091-216.pools.arcor-ip.net] has quit [Remote closed the connection] 19:56:24 jewel [n=jewel@dsl-242-149-174.telkomadsl.co.za] has joined #scheme 19:57:06 fschwidom [n=fschwido@dslb-088-068-091-216.pools.arcor-ip.net] has joined #scheme 20:00:24 -!- kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has quit [Read error: 110 (Connection timed out)] 20:03:31 -!- jlongster [n=user@75.148.111.133] has quit [Read error: 113 (No route to host)] 20:04:32 ejs [n=eugen@77-109-26-99.dynamic.peoplenet.ua] has joined #scheme 20:04:58 jao [n=user@81.Red-83-33-179.dynamicIP.rima-tde.net] has joined #scheme 20:05:03 wabash [n=user1@pool-71-98-0-126.mdsnwi.dsl-w.verizon.net] has joined #scheme 20:05:44 Hey, I'm working on SICP. It's been a while since I've touched it, so I can't remember: How do I get the code in my code buffer to be evaluated in my *scheme* buffer? 20:05:58 It's c-z or c-o or something like that. 20:06:10 -!- geckosenator [n=sean@adsl-68-23-87-156.dsl.dytnoh.ameritech.net] has quit ["leaving"] 20:06:28 ventonegro [n=alex@187-26-36-210.3g.claro.net.br] has joined #scheme 20:08:05 M-o 20:09:54 -!- exexex [n=chatzill@85.96.117.247] has quit [Remote closed the connection] 20:11:51 kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has joined #scheme 20:12:44 arcfide [n=arcfide@adsl-99-137-202-18.dsl.bltnin.sbcglobal.net] has joined #scheme 20:12:58 Hey everyone. 20:13:09 How is it going? 20:13:40 like stodgy bread 20:13:47 as usual 20:13:49 Hehe. 20:16:48 mejja: Thank you. 20:16:54 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 20:17:10 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 20:17:14 -!- noddy [n=noddy@93-139-70-20.adsl.net.t-com.hr] has quit [Read error: 110 (Connection timed out)] 20:19:36 Has anyone here implemented searching of disks or other potentially large datasets before? I am storing a database of entries as a filesystem hierarchy, and one of the procedures I need to implement is searching over these entries. 20:20:13 -!- fschwidom [n=fschwido@dslb-088-068-091-216.pools.arcor-ip.net] has quit [Connection timed out] 20:20:17 However, I think walking the directory every time would be slow, since it is slow when using find(1). 20:20:36 The locate database is much faster, and I think it uses ust a single file for managing its database index, right? 20:21:21 -!- ventonegro [n=alex@187-26-36-210.3g.claro.net.br] has quit [] 20:22:10 Is there any kind of standard technique that is used in these situations? 20:23:23 fschwidom [n=fschwido@dslb-088-068-086-103.pools.arcor-ip.net] has joined #scheme 20:26:13 Hrm, does SRFI-1 have a SUBLIST? procedure? 20:26:24 Is there an efficient implementatoin of SUBLIST? 20:33:21 -!- ecraven [n=nex@140.78.42.103] has quit ["bbl"] 20:33:35 -!- kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has quit [Remote closed the connection] 20:33:51 kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has joined #scheme 20:36:22 M-o? 20:37:10 -!- kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has quit [Remote closed the connection] 20:37:19 ejs1 [n=eugen@92-49-224-117.dynamic.peoplenet.ua] has joined #scheme 20:37:26 kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has joined #scheme 20:39:39 -!- arcfide [n=arcfide@adsl-99-137-202-18.dsl.bltnin.sbcglobal.net] has quit ["Leaving"] 20:41:14 tripwyre [n=sathya@117.193.163.255] has joined #scheme 20:42:50 -!- brweber2 [n=brweber2@65.170.117.42] has quit [] 20:43:53 arcfide, wasn't Shivers working on a trx zombage wuffle that does something like what you want? 20:47:19 -!- ejs [n=eugen@77-109-26-99.dynamic.peoplenet.ua] has quit [Read error: 110 (Connection timed out)] 20:50:18 jlongster [n=user@c-68-59-240-67.hsd1.tn.comcast.net] has joined #scheme 20:52:09 -!- ejs1 [n=eugen@92-49-224-117.dynamic.peoplenet.ua] has quit [Read error: 60 (Operation timed out)] 20:52:43 -!- tripwyre [n=sathya@117.193.163.255] has quit [] 20:53:06 -!- cads [n=max@c-71-56-62-166.hsd1.ga.comcast.net] has quit [Remote closed the connection] 20:57:04 johnnowak [n=johnnowa@207-38-171-48.c3-0.wsd-ubr1.qens-wsd.ny.cable.rcn.com] has joined #scheme 21:01:55 error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 21:03:21 -!- jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 21:03:36 How do we raise an error condition in Scheme? 21:03:50 In which Scheme system? 21:03:56 mit 21:04:17 21:04:18 -rudybot:#scheme- http://tinyurl.com/a2ukaw 21:05:38 -!- moghar [n=user@unaffiliated/moghar] has quit [Remote closed the connection] 21:05:45 ok, thanks. 21:06:18 That, sir, is a rather impressively specific linkslap. 21:07:50 error_de1eloper_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 21:07:51 Encore le zombage! 21:08:40 wingo-tp [n=wingo@6.Red-83-44-191.dynamicIP.rima-tde.net] has joined #scheme 21:09:33 -!- wingo-tp [n=wingo@6.Red-83-44-191.dynamicIP.rima-tde.net] has quit [Client Quit] 21:09:38 wingo-tp [n=wingo@6.Red-83-44-191.dynamicIP.rima-tde.net] has joined #scheme 21:10:14 -!- wingo-tp [n=wingo@6.Red-83-44-191.dynamicIP.rima-tde.net] has left #scheme 21:10:28 -!- error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Connection timed out] 21:11:39 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Connection timed out] 21:14:11 -!- waterh [n=waterh@114.143.32.31] has quit ["The Bersirc are coming! The Bersirc are coming! [ http://www.bersirc.org/ - Open Source IRC ]"] 21:15:36 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 21:16:52 eli: are you there? 21:19:47 samth: yes. 21:19:59 eli: please reply to my email 21:20:07 I'll get to it. 21:20:07 or tell me how to fix that error 21:20:42 it makes it impossible for me to use roulette 21:21:06 jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has joined #scheme 21:21:17 ecowarrior [n=Family@79-64-117-176.dynamic.dsl.as9105.com] has joined #scheme 21:21:37 -!- error_de1eloper_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 145 (Connection timed out)] 21:23:22 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit [Remote closed the connection] 21:23:23 in soviet russia, roulette uses you 21:24:26 -!- Cale [n=Cale@CPE001c10c70239-CM000e5cdd834a.cpe.net.cable.rogers.com] has quit ["Leaving"] 21:24:55 Cale [n=Cale@CPE001c10c70239-CM000e5cdd834a.cpe.net.cable.rogers.com] has joined #scheme 21:25:05 kilimanjaro [n=kilimanj@70.116.95.163] has joined #scheme 21:25:49 synthase [n=synthase@c-69-243-234-165.hsd1.al.comcast.net] has joined #scheme 21:27:37 samth: I comitted a fix, in case you get a minute before class -- I'll send you the patch. 21:35:40 -!- langmartin [n=user@75.148.111.133] has quit [Read error: 113 (No route to host)] 21:36:19 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 21:36:41 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 21:37:48 -!- hotblack23 [n=jh@p5B056047.dip.t-dialin.net] has quit [Remote closed the connection] 21:38:22 -!- elias` [n=me@unaffiliated/elias/x-342423] has quit [Client Quit] 21:38:34 cads [n=max@c-71-56-62-166.hsd1.ga.comcast.net] has joined #scheme 21:44:42 -!- jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 21:49:09 -!- ecowarrior [n=Family@79-64-117-176.dynamic.dsl.as9105.com] has left #scheme 21:50:43 g0ju [n=moo@w7641.pub.fh-zwickau.de] has joined #scheme 21:51:29 Riastradh: DEFINE-TEST-CASE expands into an expression, so it can't be followed by an DEFINE-TEST-SUITE in e.g. a LET body or an R6RS library :-/ 21:51:43 Sorry. R6RS libraries are stupid. 21:51:54 There's nothing I can do about that. 21:52:07 (Well, I can rail against them.) 21:52:41 Riastradh lets write R7RS 21:52:59 Was it you who nominated me for the steering committee, vixey? 21:53:13 no. I don't even know what a steering committee is 21:53:20 21:53:33 Some knave nominated me, and I want to find out who it was! 21:53:35 is anyone looking for a job, by the way? 21:53:39 should I? 21:53:42 they've allowed me to hire one schemer 21:53:58 Didn't they just the other day forbid you from ever even thinking about Scheme, klutometis? 21:54:07 klutometis, that would be great but I'm totally incompetent and trustworthy 21:54:13 untrustworthy** 21:54:18 vixey, I won't settle for less than R666RS 21:54:24 hehe 21:55:16 rotty, if you want to work around it, you can change DEFINE-TEST-CASE so that it expands to (DEFINE DUMMY (BEGIN #F)), where is its former expansion. 21:55:18 Riastradh: now that they see how quickly I can develop therein, there flirting with promoting me 21:55:20 Note that klutometis doesn't claim that his Schemer will be allowed to write Scheme.... 21:55:24 they're 21:55:46 klutometis, were you permitted one `I told you so'? 21:55:58 indeed 21:56:21 it turns out there's a 50% scheme literacy rate amongst developers here, which isn't bad; just need one more for a majority 21:57:02 rotty, or if the R6RS has DEFINE-VALUES (I don't remember), you can make it expand to (DEFINE-VALUES () (BEGIN (VALUES))). 21:58:53 anyway, peter at ck12 dot org for the interested 22:01:54 jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has joined #scheme 22:05:46 -!- bweaver [n=bweaver@68.60.199.117] has quit [] 22:14:18 Riastradh: r6rs doesn't provide DEFINE-VALUES, and the implementation of D-V I use ATM chokes on that expression (I guess that's obvious if it isn't built into core syntax) 22:14:33 Huh? 22:14:37 Why is that obvious? 22:15:28 well it could expand to (DEFINE DUMMY ...) 22:18:22 but other than that, I see no way of doing it while maintaining "definitionness" 22:23:04 but I guess I will teach my D-V impl to expand (DEFINE-VALUES () ...) to (DEFINE DUMMY (BEGIN ... 'NOT-USED) or something along the lines, and use that 22:23:47 aneqrs [n=andreas@c83-253-104-206.bredband.comhem.se] has joined #scheme 22:24:31 -!- aneqrs [n=andreas@c83-253-104-206.bredband.comhem.se] has quit [Connection reset by peer] 22:24:48 -!- Fare [n=Fare@c-71-232-6-92.hsd1.ma.comcast.net] has left #scheme 22:25:31 Why is the zero-value case treated any differently from any other case? 22:26:15 -!- ramkrsna_ [n=ramkrsna@59.160.127.177] has quit ["Leaving"] 22:32:52 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Remote closed the connection] 22:33:10 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 22:41:00 klutometis: does that mean 2 developers total, including you? ;) 22:41:16 -!- kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has quit [Read error: 145 (Connection timed out)] 22:42:27 klutometis: I would take you up on your offer, but you're not in my area. Oh, well. 22:43:41 incubot: where hast thou gone 22:44:03 -!- johnnowak [n=johnnowa@207-38-171-48.c3-0.wsd-ubr1.qens-wsd.ny.cable.rcn.com] has quit [] 22:46:09 -!- jlongster [n=user@c-68-59-240-67.hsd1.tn.comcast.net] has quit [Read error: 110 (Connection timed out)] 22:47:53 jlongster [n=user@75.148.111.133] has joined #scheme 22:50:04 noddy2000 [n=noddy@93-139-70-20.adsl.net.t-com.hr] has joined #scheme 22:51:19 -!- decoder_ring [n=adam@c-68-40-195-220.hsd1.mi.comcast.net] has quit ["Leaving"] 22:56:21 charmless [n=charmles@64-110-209-189.sktn.hsdb.sasknet.sk.ca] has joined #scheme 22:58:16 kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has joined #scheme 22:58:19 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 22:59:22 -!- noddy2000 [n=noddy@93-139-70-20.adsl.net.t-com.hr] has quit ["< rent my tagline space! real_quit_messages@hotmail.co.uk >"] 23:00:31 decoder_ring [n=adam@c-68-40-195-220.hsd1.mi.comcast.net] has joined #scheme 23:03:21 -!- charmless [n=charmles@64-110-209-189.sktn.hsdb.sasknet.sk.ca] has quit [] 23:03:39 charmless [n=charmles@64-110-209-189.sktn.hsdb.sasknet.sk.ca] has joined #scheme 23:03:48 -!- charmless [n=charmles@64-110-209-189.sktn.hsdb.sasknet.sk.ca] has quit [Client Quit] 23:05:33 -!- jewel [n=jewel@dsl-242-149-174.telkomadsl.co.za] has quit [No route to host] 23:05:54 zbigniew: heh; no there's about 10 23:06:11 zbigniew: it's in palo alto, but half of the team is remote (including me) 23:06:48 hmm 23:07:28 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 54 (Connection reset by peer)] 23:08:03 it would be pretty cash, though, to have two partners-in-scheme on the scene 23:08:14 ja 23:09:25 Riastradh: it isn't, but the expansion of above expression contained a empty lambda body; the was trivial (and in fact, it does introduce dummy variables anyway, so it just needed that little tweak) 23:09:29 not sure i've ever met anyone IRL who has even heard of scheme 23:10:23 interestingly, about four of these cats have hacked in scheme in uni or whatever 23:10:27 but have since moved on to mainstream 23:10:53 there may be time to bring them back to the force 23:11:01 ... wait. There was that one interview where I mentioned Scheme and the interviewer snottily asked me if I had "learned Scheme in college" 23:11:33 i mentioned scheme here, and they actually asked me to scheme on the whiteboard 23:11:37 yeah, asshole, like I often mention things in interviews that I touched for one semester over 10 years ago 23:12:06 i am also a java expert based on my class in JDK 1.0 23:12:16 lol 23:12:21 nice 23:12:28 -!- wabash [n=user1@pool-71-98-0-126.mdsnwi.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)] 23:21:44 bombshelter13 [n=bombshel@209-161-232-155.dsl.look.ca] has joined #scheme 23:21:54 -!- samth [n=samth@punge.ccs.neu.edu] has quit ["Ex-Chat"] 23:24:41 *klutometis* waves hand: "these are not the rims you're looking for" 23:24:46 -!- bsmntbombdood [n=gavin@97-118-124-131.hlrn.qwest.net] has quit [Read error: 110 (Connection timed out)] 23:25:22 -!- mejja [n=user@c-4bb5e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 23:25:41 bsmntbombdood [n=gavin@97-118-124-131.hlrn.qwest.net] has joined #scheme 23:25:42 whoops; ww 23:27:55 wabash [n=user1@pool-71-98-0-126.mdsnwi.dsl-w.verizon.net] has joined #scheme 23:29:36 -!- fschwidom [n=fschwido@dslb-088-068-086-103.pools.arcor-ip.net] has quit [Remote closed the connection] 23:30:13 elias` [n=me@unaffiliated/elias/x-342423] has joined #scheme 23:31:16 -!- hiyuh [n=hiyuh@KD125054017176.ppp-bb.dion.ne.jp] has quit ["|_ e /\ \/ i |/| G"] 23:32:11 rtra [n=rtra@unaffiliated/rtra] has joined #scheme 23:34:50 -!- wabash [n=user1@pool-71-98-0-126.mdsnwi.dsl-w.verizon.net] has left #scheme 23:35:50 -!- rtra [n=rtra@unaffiliated/rtra] has quit [Remote closed the connection] 23:36:26 Mr-Cat [n=Mr-Cat@bahirkin1507.dialup.corbina.ru] has joined #scheme 23:37:36 anyone knows an xml-rpc client implementation for 4.1.x plt? The planet package does not load - complains about webit package 23:38:00 error_developer_ [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 23:38:22 webit is installed as dependency, but fails to compile 23:38:30 -!- vixey [n=vicky@amcant.demon.co.uk] has quit ["There exists an infinite set!"] 23:41:55 I would be amazed if xmlrpc actually depended on webit. Webit is ancient. 23:42:08 Get rid of webit. Scrub it from your installation. Then try again. 23:42:32 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Read error: 104 (Connection reset by peer)] 23:42:34 jdelgado [n=jdelgado@68.Red-79-148-188.staticIP.rima-tde.net] has joined #scheme 23:42:42 rtra [n=rtra@unaffiliated/rtra] has joined #scheme 23:43:06 Daemmerung: 'planet install schematics xmlrpc.plt 4 0' installs webit 1 4 as well 23:43:15 At least - tries to install 23:43:50 -!- jdelgado [n=jdelgado@68.Red-79-148-188.staticIP.rima-tde.net] has left #scheme 23:47:00 -!- Mr-Cat [n=Mr-Cat@bahirkin1507.dialup.corbina.ru] has left #scheme 23:47:01 So I see! That's broken. 23:47:09 Mr-Cat [n=Mr-Cat@bahirkin1507.dialup.corbina.ru] has joined #scheme 23:48:27 cc248_ [n=mts82@129.10.231.76] has joined #scheme 23:51:53 -!- raikov [n=igr@203.181.243.11] has quit [Remote closed the connection] 23:54:02 -!- Gorgoroth [i=Gorgorot@195-132-141-240.rev.numericable.fr] has quit [Client Quit] 23:58:50 -!- orgy` [n=ratm_@pD9FFF4D3.dip.t-dialin.net] has quit ["Gone."] 23:59:08 bweaver [n=bweaver@c-68-59-241-190.hsd1.tn.comcast.net] has joined #scheme