00:01:00 Riastradh: Is there another top-level syntax-transformer binding form besides DEFINE-SYNTAX that provides the underlying macro system the full syntactic information of the macro call? 00:01:14 You could call it DEFINE-MONGOLOID if you want. 00:04:05 Maybe you should clarify some more. 00:06:38 antoszka [n=antoszka@unaffiliated/antoszka] has joined #scheme 00:07:33 Riastradh: I'm not sure what you're getting at here. 00:07:45 Neither am I, arcfide, sure what you're getting at here. 00:07:49 Riastradh: Other than DEFINE-SYNTAX and DEFMACRO, what other basic macro binding forms exist? 00:07:52 arcfide: what are -you- getting at? 00:07:56 edit: beaten 00:08:20 *mbishop* beats zbigniew 00:08:27 I'm just trying to say that there is a big different between my choice of the use of syntax-case versus say, syntactic closures, compared to the choice to rely on defmacro versus, say, syntax-case. 00:08:29 owowowowow 00:08:45 What does the name of the form used to introduce macros have to do with it, arcfide? 00:08:54 *zbigniew* chucks offby1's dentures at mbishop 00:09:20 I think what you mean is that `unhygienic macros are necessarily broken; hygienic macros, not necessarily so', but I don't understand the route by which you're getting to that. 00:09:25 Riastradh: I confusedly used that form to address all hygienic-capable macro systems, all of which, that I am aware of, utilize define-syntax. 00:09:52 I think we can all agree that define-macro be put out to pasture 00:09:52 Or, *are utilized by using* define-syntax. 00:10:00 ... pasteurized? 00:10:15 No, pasteurized means submitting it to Louis Pasteur for analysis. 00:10:17 zbigniew: yeah, try telling that to some of the people on the discuss list right now, at least, they appear to very much support define-macro. 00:10:36 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 00:10:51 To paraphrase the old testament, "Roast it, and cook it real good, then eat it all, let none of it be left by the morning, because you're moving on." 00:15:10 saccade__ [n=saccade@VPN-ONE-TWENTY-ONE.MIT.EDU] has joined #scheme 00:15:17 Let us all agree, then, that define-macro should be heated for 1 to 2 seconds at a temperature greater than about 135 C. 00:15:44 Don't you have something more interesting to work on, arcfide, than this silly Scheme report discussion? 00:16:29 (Why is this process still nominally about Scheme reports, anyway? It appears to have nothing whatsoever to do with reporting any state of affairs.) 00:17:16 annodomini_ [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 00:18:26 chylli [n=lchangyi@60.211.214.32] has joined #scheme 00:19:55 -!- dmoerner [n=dmr@89-151.res.pomona.edu] has quit ["Leaving"] 00:22:26 untouchable: In Scheme, functions do not have names. This is in contrast to Java, where functions have names and return types. 00:22:43 -!- saccade_ [n=saccade@18.188.74.28] has quit [Read error: 145 (Connection timed out)] 00:23:06 untouchable: In both languages, functions are typed (at least in part) by how many arguments they can accept. 00:26:09 Riastradh: yes, I do. 00:32:36 So when am I going to see a Darcs patch in the mail that adds support for Chez to Scheme-CML? 00:34:09 Riastradh: As soon as I write it! 00:34:11 Soon. ;-) 00:34:15 I'm working on that right now. 00:35:10 Here are a couple of stress-tests to run to look for race conditions: 00:35:57 sepult [n=levgue@xdsl-87-78-103-239.netcologne.de] has joined #scheme 00:39:25 Riastradh: Right now I have the following extra files for Chez: time, locked records, a threading with critical and suspend procedures, and then a miscellaneous library that has sleep, nullary and spawn. 00:39:34 Riastradh: Can I dump any of these or is it just a change in the suspend/threading library? 00:39:55 arcfide: Hello! 00:39:59 Just the primitives for suspending processes have changed. 00:40:08 Riastradh: Okay, but everything else can remain the same? 00:40:18 Yes. 00:40:26 chandler: Hey, I sent you emails about BEGIN. Interesting that we actually agree on it. ;-) 00:40:30 Or appear to agree. 00:40:37 Unless I misunderstood you. 00:41:16 I think we agree: after spending more time with it, I like the two-pass semantics, and I'd like consistency between top-level `begin' and internal `begin'. 00:41:32 Can we also prohibit BEGIN in expression contexts? 00:41:52 That way, it is always special, not just sometimes. 00:42:42 Riastradh: Are all the procedures you sent me exported? 00:42:57 I'm not sure why you would want that. I'd actually like the R6RS top-level program behavior everywhere. Expressions are just defines of generated names. 00:43:06 Most of them, arcfide. You can look at s48-interfaces.scm or mit-rendezvous.pkg. 00:43:17 chandler, I mean something like (+ (begin (set! foo 5) foo) 2). 00:43:21 eno__ [n=eno@adsl-70-137-146-77.dsl.snfc21.sbcglobal.net] has joined #scheme 00:43:45 chandler, or, worse: (+ (begin (define foo 5) foo) 2) 00:44:54 Riastradh: ARe they called suspender/resume or maybe-resume? 00:45:02 The former, arcfide. 00:45:10 suspender/* then... 00:45:18 Ah. I'm not sure I quite have an opinion on that. 00:45:33 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 145 (Connection timed out)] 00:45:33 elderK [n=zk@122-57-241-160.jetstream.xtra.co.nz] has joined #scheme 00:45:43 Is it really much different than (lambda () (begin (define foo 5) foo)) ? 00:45:47 Remember that you can always just write `let()' in the place of `begin' where such things currently work. 00:45:48 Riastradh: Your packages have the old names. 00:45:53 No, they don't, arcfide. 00:46:00 Did you pull? 00:46:59 I suppose the answer is "yes": I'm working on an explanation of the behavior of `begin' in terms of multiple syntactic return values (you can feel free to say "Yeeugh" if this concept offends your sensibilities), and in this system `lambda' explicitly receives multiple syntactic return values, where something like `+' would not. 00:47:02 Whoops...; 00:47:06 I didn't pull the new stuff. 00:47:15 (And writing `let()' doesn't even make you adjust your indentation!) 00:47:26 chandler, sorry, to what question is `yes' your answer? I lost track. 00:47:49 That (+ (begin (define foo 5) foo) 2) is much different than (lambda () (begin (define foo 5) foo)) . 00:47:49 (Also, yeeugh. Riaxpander has a more sensible treatment of the subject.) 00:48:55 I should probably go through the Riaxpander source at some point. 00:51:25 -!- sepult [n=levgue@xdsl-87-78-103-239.netcologne.de] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 00:51:51 By the way, I just remembered that you had tested riaxpander with some horrible example, and it gave a horrible error, and I said `What horrible person would write something to fail so horribly!', but I didn't address the issue at hand. The cause of the error is that riaxpander follows MIT Scheme's semantics for syntactic binding forms: it classfies their right-hand forms at the same phase, and relies on syntactic keywords such a 00:52:03 "syntactic keywords such a" 00:52:21 ...and relies on syntactic keywords such as ER-MACRO-TRANSFORMER and SC-MACRO-TRANSFORMER to evaluate anything at a higher phase. 00:52:35 There are two reasons for this. 00:53:09 (You can feel free to lisppaste long messages if you'd like. We can have an entire conversation via indirection.) 00:53:31 One is that it enables a number of convenient idioms, such as (define-syntax my-alias-for-let let), or (define-syntax foo (let-syntax ((internal-utility ...)) (syntax-rules ... use INTERNAL-UTILITY in the output of the macro ...))) 00:54:00 You can even write ((syntax-rules ...) ...), and riaxpander will do the right thing! 00:54:38 The other is that riaxpander is actually totally agnostic to the whole concept of phases except through a single hook, the meta-evaluator, supplied as a parameter to the whole process, which ER-MACRO-TRANSFORMER &c. call. 00:55:54 Incidentally, I didn't even anticipate those idioms when I first wrote riaxpander. They just fell out as natural consequences of the pretty straightforward expansion process that riaxpander uses. 00:56:09 QinGW [n=wangqing@203.86.89.226] has joined #scheme 00:56:26 You can also write, say, ((letrec-syntax ((foo ...) (bar ...)) foo) x y z), and riaxpander will again do the right thing. 00:56:50 ... Yikes. 00:56:53 Also, I *think* that if you write ((let-syntax () (begin (define-syntax foo ...)) foo) x y z), riaxpander will still do the right thing. 00:57:08 But I'm not sure about that last one. 00:57:45 I wasn't sure what you meant when you wrote ((syntax-rules ...) ...); I've done that or the equivalent of it in PLT plenty of times, with a syntax object as argument to the call. 00:57:58 No, (SYNTAX-RULES ...) here denotes a macro operator. 00:58:24 I think your concept of the "right" thing here is a bit different than mine. :-) 00:59:05 The summary is that (SYNTAX-RULES ...) always denotes a transformer keyword, whether on the right-hand side of a DEFINE-SYNTAX or in the operator position of a combination. 01:01:35 There's a bug in this code. No, wait, there's bug *on* this code. 01:01:42 Excuse me while I smash this. 01:02:06 -!- ski_ [n=md9slj@remote1.student.chalmers.se] has quit ["Lost terminal"] 01:02:32 Fare [n=Fare@173-9-63-74-NewEngland.hfc.comcastbusiness.net] has joined #scheme 01:03:45 OK, riaxpander won't do the right thing with a sequence inside a LET-SYNTAX -- but that's actually an artefact of riaxpander's non-commitment to a particular strategy for handling bodies, and a little contortion it goes through to let clients make the decision about how to do that. 01:04:56 -!- yitz_ [n=yitz@unaffiliated/yitz-/x-6738568] has left #scheme 01:05:58 hum. Are PLT ports "bivalent"? Or do I have to only send bytes to byte ports and characters to character ports? 01:07:22 rudybot_: eval (with-output-to-string (lambda () (display "foo") (display #"bar"))) 01:07:23 eli: ; Value: "foobar" 01:07:29 `/Ports/ produce and consume bytes. When a port is provided to a character-based operation, the port's bytes are decided...' 01:07:37 ...`decoded'... 01:08:52 -!- elderK [n=zk@122-57-241-160.jetstream.xtra.co.nz] has quit [] 01:09:44 emma [n=em@cpe-98-14-154-71.nyc.res.rr.com] has joined #scheme 01:11:31 copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has joined #scheme 01:11:47 eli: does that work with (make-custom-*-output-port ...) ? 01:12:07 QinGW1 [n=wangqing@203.86.89.226] has joined #scheme 01:14:27 Fare: Yes, at the custom level you're always dealing with byte strings. (At least IIRC.) 01:14:49 -!- eno__ is now known as eno 01:14:52 ski_ [n=md9slj@remote1.student.chalmers.se] has joined #scheme 01:15:29 -!- saccade__ [n=saccade@VPN-ONE-TWENTY-ONE.MIT.EDU] has quit ["This computer has gone to sleep"] 01:16:15 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 60 (Operation timed out)] 01:16:28 the docs for make-custom-textual-output-port seems incomplete 01:16:44 it doesn't specify the signature of get-position, etc. 01:17:13 sstrickl [n=sstrickl@pool-151-199-30-68.bos.east.verizon.net] has joined #scheme 01:18:05 do webserver output-response buffers get flushed automatically when they are over the packet size? 01:18:21 (and where do I go look for answers to obvious questions like that?) 01:21:12 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 60 (Operation timed out)] 01:21:13 Riastradh: How does 'sort-list' behave? 01:21:35 Fare: There are no docs for `make-custom-textual-output-port' -- it's the standard r6rs text. 01:21:55 The obvious way, arcfide. 01:21:58 oh 01:22:01 Fare: As for the web server, I don't know what you mean by that question. (And you can always ask question on the mailing list, of course.) 01:22:11 *Fare* admits unfamiliarity with r6rs 01:22:31 nah, it's just using a "normal" network port, I suppose 01:22:41 Fare: Behold! http://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-9.html#node_chap_8 01:22:47 which may itself be a "normal" filedescriptor output port 01:22:50 Fare: Yes, it is. 01:23:02 eno [n=eno@nslu2-linux/eno] has joined #scheme 01:23:05 so the question is, do I have to go out of my way to flush these things? I suppose not. 01:23:26 I don't think so. But I don't have much experience with the web server. 01:23:35 You can try to catch jay-mccarthy here. 01:23:53 Riastradh: How long should it take to run the tests? 01:24:29 The first one takes Scheme48 a little under half a second, and MIT Scheme (with the CML library compiled but the tests interpreted) just over half a minute. 01:24:49 The second one takes Scheme48 about eighty seconds, and... 01:25:40 Um, the first one takes Scheme48 a little under half a *minute*. 01:27:05 ...the second one takes MIT Scheme about eighty-five seconds. 01:27:54 bohanlon [n=bohanlon@pool-71-184-223-212.bstnma.fios.verizon.net] has joined #scheme 01:28:57 Okay, so my results aren't crazy. it was taking longer than I expected. 01:29:23 Bear in mind that threads in both Scheme48 and MIT Scheme are almost certainly lighter-weight than threads in Chez. 01:29:32 (threads and thread-switching) 01:34:18 jay comes to IRC? 01:35:10 Here's idling in the channel right now. Whether he's paying attention, I don't know. 01:35:44 Riastradh: yeah, it takes about 57 seconds real time to run both tests in Chez. 01:37:52 -!- Nshag [i=user@Mix-Orleans-106-1-47.w193-248.abo.wanadoo.fr] has quit ["Quitte"] 01:40:39 eno__ [n=eno@adsl-70-137-138-45.dsl.snfc21.sbcglobal.net] has joined #scheme 01:42:19 Alright Riastradh, it's passing all the tests I have for it. 01:42:28 The package imports and exports need some cleaning up though. 01:42:40 Other than that, I'd say it's going pretty well. 01:44:49 -!- mrsolo [n=mrsolo@nat/yahoo/x-eqguxdknkslplbpk] has quit ["Leaving"] 01:48:07 Riastradh: Anyways, now that I have succeeded, I think, I'm going home. 01:48:21 Riastradh: I will work on understanding what I have done later. 01:48:29 Thanks. 01:48:36 -!- arcfide [i=1000@140-182-147-167.dhcp-bl.indiana.edu] has left #scheme 01:49:49 -!- dysinger [n=dysinger@c-24-18-234-48.hsd1.wa.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 01:50:01 Toekutr [n=toekutr@adsl-69-107-134-120.dsl.pltn13.pacbell.net] has joined #scheme 01:51:41 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 110 (Connection timed out)] 01:52:18 Kirill [n=user@74.12.133.226] has joined #scheme 01:52:39 hi! I'm using r6rs with mzscheme, and it's complaining it can't find the function "first" (or "second", "third", etc.) -- where can I get those? 01:53:42 I don't think those are in any predefined R6RS library. 01:54:19 chandler: in other words, "first" etc. are not in R6RS? That's ridiculous.. 01:54:50 Any more ridiculous than them not being in R5RS? 01:54:57 Well there's srfi/1 01:55:06 But for some reason it won't let me import it 01:55:35 I've never tried to use SRFI-1 with R6RS. Versions of all of the utilities I use are in (rnrs lists (6)) already. 01:55:38 I don't tend to use `first', etc. 01:58:10 chandler, you're not jcowan, but jcowan's not here, so you can stand in for him as I propose, while everyone's piling features on, or at least piling on, that the R7RS include the rendezvous abstraction of , excluding the primitive and `base' parts. Thanks! Let me know if you have any questions. 01:58:34 chandler: is there any "shortcut" I can use instead of importing every little thing I need? for example, it's silly that conditional macros aren't available out of the box 01:59:12 Riastradh: Neat. I shall play with it. 01:59:14 Also, the whole I/O system should revolve around CML. 01:59:21 what's CML? 01:59:30 Kirill: No. 01:59:44 Concurrent ML. See the URI I just pointed to, or , or John Reppy's book. 01:59:49 Kirill: Well, if you want *everything*, you can get it. 01:59:55 Just import (rnrs (6)). 02:00:13 thanks 02:00:26 I'm not trying to be a dick, but it's certainly harder to get even basic things done with this new "r6rs" 02:00:51 It's harder to get things done with a module system, at first. 02:01:14 Indeed. 02:01:40 There's also the strange thing that when I run my program with "mzscheme -r [program]" it doesn't output anything (or do anything, for that matter) 02:01:48 Ah, -r was a bad idea. 02:02:47 You probably want `plt-r6rs' as well. 02:02:52 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 02:08:55 EleminoP [n=EleminoP@iub-vpn-195-38.noc.indiana.edu] has joined #scheme 02:09:28 can someone help me with writing this repeat-up procedure? 02:09:33 using this 02:09:33 (define repeat-down 02:09:33 (lambda (n p) 02:09:33 (when (>= n 0) 02:09:33 (p n) 02:09:33 (repeat-down (- n 1) p)))) 02:09:51 i need to write a procedure that repeats up from 0 to n 02:09:56 starting with 02:10:03 (define repeat-up 02:10:03 (lambda (n p) 02:10:03 (repeat-down n (lambda (i) 02:10:06 lisppaste: url? 02:10:06 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 02:10:19 EleminoP: Please, use the URL just given by lisppaste. 02:10:58 chandler: so type my question in there? 02:11:24 The code, at least. 02:12:31 EleminoP pasted "repeat-up" at http://paste.lisp.org/display/87145 02:12:46 oh, i see 02:13:00 Adman65_ [n=Adman65@c-76-103-90-45.hsd1.ca.comcast.net] has joined #scheme 02:13:27 ventonegro [n=alex@189.100.201.55] has joined #scheme 02:15:05 -!- Kirill [n=user@74.12.133.226] has left #scheme 02:15:48 -!- Fare [n=Fare@173-9-63-74-NewEngland.hfc.comcastbusiness.net] has left #scheme 02:16:55 EleminoP annotated #87145 "untitled" at http://paste.lisp.org/display/87145#1 02:18:18 -!- eno__ is now known as eno 02:22:49 saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 02:23:04 -!- REPLeffect [n=REPLeffe@69.54.115.254] has quit [Read error: 110 (Connection timed out)] 02:25:04 -!- ray [i=ray@drong.notacat.org] has quit [Read error: 60 (Operation timed out)] 02:25:08 ray [i=ray@drong.notacat.org] has joined #scheme 02:25:31 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 104 (Connection reset by peer)] 02:25:31 QinGW [n=wangqing@203.86.89.226] has joined #scheme 02:26:44 chandler: will my question be answered now? 02:26:53 i don't understand what that pasting did 02:29:59 -!- Adman65 [n=Adman65@c-76-103-90-45.hsd1.ca.comcast.net] has quit [Read error: 110 (Connection timed out)] 02:30:15 EleminoP: shouldn't your nick be Elem_e_noP ? 02:30:27 LMNOP 02:30:34 *nod 02:30:41 ct2rips__ [n=ct2rips@92.73.172.156] has joined #scheme 02:32:31 -!- xwl_ [n=user@147.243.236.60] has quit [Remote closed the connection] 02:34:14 xwl_ [n=user@147.243.236.60] has joined #scheme 02:42:41 -!- steiger [n=steiger@189.105.104.187] has quit [Connection timed out] 02:45:07 QinGW1 [n=wangqing@203.86.89.226] has joined #scheme 02:48:13 -!- ct2rips_ [n=ct2rips@dslb-092-073-182-078.pools.arcor-ip.net] has quit [Read error: 110 (Connection timed out)] 02:50:11 -!- Mr_Awesome [n=eric@c-98-212-143-245.hsd1.il.comcast.net] has quit ["aunt jemima is the devil!"] 02:52:54 tjafk2 [n=timj@e176206005.adsl.alicedsl.de] has joined #scheme 02:59:41 kilimanjaro [n=kilimanj@70.116.95.163] has joined #scheme 03:00:18 Mr_Awesome [n=eric@c-98-212-143-245.hsd1.il.comcast.net] has joined #scheme 03:00:45 kilimanj4 [i=46745fa3@gateway/web/freenode/x-wrizxqpvbvpeiwhj] has joined #scheme 03:00:51 -!- kilimanj4 [i=46745fa3@gateway/web/freenode/x-wrizxqpvbvpeiwhj] has quit [Client Quit] 03:01:22 -!- QinGW [n=wangqing@203.86.89.226] has quit [Connection timed out] 03:04:36 -!- MononcQc [n=mononcqc@modemcable062.225-20-96.mc.videotron.ca] has quit ["DOWNLOADING NEXT VERSION OF INTERNET"] 03:04:56 dmoerner [n=dmr@89-151.res.pomona.edu] has joined #scheme 03:06:48 holy shit i understand scheme i think 03:06:52 at least a bit 03:07:41 -!- tltstc [n=tltstc@cpe-76-90-95-21.socal.res.rr.com] has quit [] 03:08:03 MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 03:08:23 oh no 03:08:42 untouchable: apply one of those "Men In Black" memory-eradicating things to your cranium immediately 03:08:44 no time to lose 03:09:31 -!- tjafk1 [n=timj@e176208112.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:09:37 -!- EleminoP [n=EleminoP@iub-vpn-195-38.noc.indiana.edu] has left #scheme 03:11:35 incubot: bit is not enough, you have to byte! 03:11:39 (However, what I am about to explain still makes sense for machines with other byte widths.) 03:12:10 incubot: share it 03:12:13 SISC inherits whatever its host JVM uses; MIT Scheme and Scheme48 share an independent bignum library; a few Schemes use GMP; SCM and Gambit also each have their own independent bignum libraries. 03:13:54 incubot: yo mama is so wide date encoded in her with probability of one will not be reached. 03:13:57 (Actually, it *does* exist, but I'm trying to deter people from going off into their own little corners, because doing so only reduces the probability of stumbling into an interesting conversation, and increases the amount of wasted idle time, in #scheme.) 03:15:25 -!- ventonegro [n=alex@189.100.201.55] has quit [] 03:17:22 sladegen: you're sounding a little ... stochastic, there, sone 03:17:23 son 03:18:13 -!- bohanlon [n=bohanlon@pool-71-184-223-212.bstnma.fios.verizon.net] has quit ["grrr... hald is annoying"] 03:20:59 *sladegen* is constantly stochastic. 03:21:54 sladegen: Dissociated Press much? 03:24:35 M-x psychoanalyze-incubot RET 03:25:42 TimMc: you be glad me stops I from pressing too much enters... 03:39:22 -!- dmoerner [n=dmr@89-151.res.pomona.edu] has quit ["Leaving"] 03:40:52 dmoerner [n=dmr@89-151.res.pomona.edu] has joined #scheme 03:45:27 Kirill [n=user@74.12.133.226] has joined #scheme 03:45:48 hi! I want to be able to insert tab characters (using the tab key) into a text field. how is that done? 03:46:47 -!- Kirill [n=user@74.12.133.226] has left #scheme 03:46:55 -!- MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has quit [Remote closed the connection] 03:50:41 jonrafkind [n=jon@98.202.86.149] has joined #scheme 03:53:29 -!- annodomini_ [n=lambda@wikipedia/lambda] has quit [] 03:56:36 edwardk [n=edwardkm@209-6-103-127.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 03:57:22 hrmm, what decently performing r6rs implementations are there out there that work on a 64 bit linux box natively? 03:58:45 ikarus, though it only uses x86+SSE2, not x86_64 03:58:58 ikarus is 32 bit only, plt scheme seems to work, but thats all i've got so far 03:58:58 yeah 03:59:33 I <3 Dr Scheme 03:59:36 i don't have the 32 bit compatibility stuff on the box at all 03:59:48 edwardk :< 04:00:01 i'll admit dr. scheme has been growing on me =) 04:00:35 I use it to edit any/all lisp code 04:00:42 but I don't really use common lisp 04:01:07 but... I basically just use r5rs scheme and code test in Dr Scheme and compile with gambit 04:02:10 i'm still in the process of trying to 'hit my stride' developing scheme code. i'm much more comfortable environment wise working with haskell or c/c++, etc. the tools still feel alien, mostly because i haven't figured out an ideal subset of the possible environments that suits my reflexes. 04:02:42 weird, I understand haskell, but I still have a hard time developing in it 04:02:46 Shiba [n=Michael@64.142.31.232] has joined #scheme 04:03:23 I used to use mostly C / Java / Python, but scheme's really grown on me 04:03:26 for any type (such as list, function) can I also query an object for the type? 04:03:50 for example, (list? m) (function? m) 04:03:55 list? yes 04:04:07 i moved to haskell after almost 25 years of working in imperative languages, it hit me like a religious conversion. i've since been working with a toy untyped language that has dragged me closer in mindset to scheme, so it feels pretty comfortable these days. 04:04:12 for function too? 04:04:23 Shiba: looking 04:04:29 you mean procedure? 04:04:49 ah ha, that's it :) 04:04:57 well, I'm new as you can probably tell 04:04:57 so I'm not sure 04:05:10 no worries, its procedure? =) 04:05:17 (define myfunc (lambda (val) .... 04:05:20 ahh okay 04:05:22 thanks 04:05:24 http://schemers.org/Documents/Standards/R5RS/HTML/r5rs-Z-H-15.html#%_index_start 04:05:26 -rudybot_:#scheme- http://tinyurl.com/3apvqx 04:05:34 there's an index of everything in r5rs scheme :) 04:06:24 nice 04:06:25 thanks 04:06:28 -!- luz [n=davids@189.122.90.116] has quit ["Client exiting"] 04:06:56 edwardk: so what're you trying to do with scheme? 04:08:19 rudybot_: ghost rudybot_ 04:08:21 rudybot_: ghost rudybot 04:08:23 rudybot_: nick rudybot 04:08:23 -!- rudybot_ is now known as rudybot 04:08:26 damned kids 04:09:04 gmh33: at the moment? i have a compiler for an intermediate language i'm interested in getting operational. currently i've got the machinery implemented in Haskell. 04:09:26 i'm moving some of it over, mainly because the intermediate language is very scheme-like 04:11:01 neat 04:11:09 gmh33: beyond that? i have a nice sugary hygienic polymorphic monad library i hacked together in plt scheme i'm playing around with, which i'm looking for an effective way to implement in r6rs for comparison purposes 04:12:10 -!- jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has quit [] 04:12:15 *Riastradh* blinks. 04:12:24 Would you care to elaborate on how the modifiers `hygienic' and `polymorphic' combine? 04:12:43 Riastradh: via buzzwordology 04:12:45 Riastradh: sure. polymorphic in the sense, that you aren't limited to one particular monad for the do sugar, etc. 04:13:28 Riastradh: hygienic in the sense that do is implemented via syntax-rules, and basically plumbs through the dictionary of methods for the monad to the appropriate branches of the code. 04:14:42 so you can say something like (define (modify f) (do (x <- get) (put (f x)))) ;; and it will work in any monad which provides state. 04:15:51 all of the scheme monad examples i've seen have been boring 'single-monad' examples that don't demonstrate any of the power of the formalism. 04:18:32 so yes, a level of buzzwordology may be involved, but there was definitely a motivation behind my use of the term ;) 04:18:54 ;) 04:20:34 the polymorphism in question being the late-bound ad-hoc polymorphism of the dictionary of methods for the monad if you want to be pedantic ;) 04:22:22 so is there another implementation of r6rs other than plt scheme that can run natively on x86-64? 04:22:38 going back to my earlier question =) 04:27:55 -!- jonrafkind [n=jon@98.202.86.149] has quit ["Leaving"] 04:28:35 jonrafkind [n=jon@98.202.86.149] has joined #scheme 04:30:32 jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has joined #scheme 04:30:51 i'll take that as a 'probably no'. 04:32:31 ikarus 04:32:49 ikarus has the problem of being x86-32 only 04:33:15 QinGW [n=wangqing@203.86.89.226] has joined #scheme 04:33:25 configure: error: Ikarus can only run in 32-bit mode. 04:33:32 What's the reputation of Gauche in the Scheme community outside Japan (or inside, for that matter)? I rarely hear it mentioned here except when implemnetations are being compared. 04:34:48 Its macros are broken. 04:35:13 *jcowan* nods. 04:35:28 And otherwise? Fast, slow, reasonable, well-understood, obscure? 04:35:39 It's popular inside Japan because it has full documentation in Japanese. It's often used as a companion to SICP. 04:35:56 It's rather high in my SRFI list, the order of which was taken from a list put together by I-forget-who. 04:36:13 That is, the order is semi-arbitrary, *not* by number of SRFIs implemented or the like. 04:36:55 It's fast as interpreters go, has a lot of modules (probably third after Chicken and PLT), and lots of ugly syntactic extensions. 04:37:16 I'm pretty sure it was the first implementation with 64-bit support. 04:38:26 And it is known to sometimes have issues with heavy memory usage owing to using the Boehm GC. 04:38:29 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 145 (Connection timed out)] 04:40:00 Oh, and it has a very extensive object system, including support for class redefinition. 04:41:43 I take it you think these are Good Things, other than the GC. 04:41:59 now don't be snippy. 04:42:02 Boehm is a great thing (and it makes C programming so much easier!), but it does run like a pig. 04:42:08 offby1: Ya got me all wrong again. 04:42:09 *offby1* endeavors to be mistaken for a bot 04:42:13 ... and the broken syntax, and the ugly syntactic extensions. 04:42:26 Except the #/.../ regexp syntax is nice. 04:42:30 ... or Marge Gunderson 04:42:31 Presumably you don't have to use the ugly s.e. 04:42:44 PCRE regex syntax in strings is just too ugly to use. 04:42:51 *gmh33* likes gambit 04:43:33 Well, that's independent of having special regexp syntax. You can just have general-purpose raw string syntax. 04:44:16 No, in a string you have to escape all the backslashes, which are very common in PCRE regex notation. 04:45:42 Compare #/\\\w[\w\d]+/ vs. "\\\\\\w[\\w\\d]" for a matching \foo LaTeX command. 04:47:34 Exactly. In Python, r"\\\w[\w\d]+" is still a string, not a regex, but it has the same benefits. 04:48:06 You can convert it, or any other string, to a regex using the appropriate constructor. 04:48:37 How do you include a literal " in that string? 04:48:43 *jcowan* looks. 04:49:22 r'blahblah"blah' maybe 04:49:31 In Python, a string that begins with """ or ''' is only terminated by another """ or ''' respectively (and it can run across multiple lines, unlike normal strings) 04:49:35 scsh and emacs have a nice sexp syntax for regexps. 04:49:40 Yes, that works too. 04:49:47 ... how do you include """ in those strings? 04:50:16 There's always *some* case that requires general-purpose escaping. It's convenient, however, to have a few less general mechanisms. 04:50:16 *foof* thinks these Python syntactic extensions are full of holes 04:50:25 Naturally. 04:50:50 Right, but the #/.../ can be used for any regexp, because it actually has an escaping mechanism! 04:50:57 :P 04:50:57 Otherwise you could write #string(65 66 67 32 65 66 67); it requires no escaping, but is maximally inconvenient. 04:51:18 It also has the advantage of pre-constructing the regexp at compile time. 04:51:33 True. 04:51:38 maximally? 04:51:45 I'm sure I could think of something even less convenient 04:51:47 *offby1* gets to work 04:51:49 Doubtless. 04:51:53 It's your specialty. 04:52:01 first I gotta write up a grant proposal; I'll be right back 04:53:04 I'm sorry, this channel is EBCDIC-only 04:53:07 foof: so your penultimate excuse for non-R5RS compatibility in Chibi is gone. 04:53:35 You'll never make me add transcript-on! 04:53:39 But raw strings have applications other than regexes, I suppose. Certainly triple-quoted (multi-line) strings do. 04:53:45 That's optional. 04:54:45 is there an equivalent to JavaScript's typeof()? I need to validate input parameters, and my thinking leads me towards type checking. 04:54:55 not really 04:55:12 scheme values don't have any one type; they can be a bunch of different types. 04:55:18 rudybot: eval (integer? 3) 04:55:18 *offby1: your scheme sandbox is ready 04:55:18 *offby1: ; Value: #t 04:55:21 rudybot: eval (number? 3) 04:55:21 *offby1: ; Value: #t 04:55:26 rudybot: eval (real? 3) 04:55:26 *offby1: ; Value: #t 04:55:27 etc. 04:55:49 rudybot: eval (3? 3) 04:55:50 how can I tell then if param1 is "compatible" with param2? 04:55:50 zbigniew: your sandbox is ready 04:55:50 zbigniew: error: reference to undefined identifier: 3? 04:55:50 (well, _some_ values might have exactly one type; but in general a value can have lots of types) 04:55:59 Shiba: depends what you mean by "compatible". 04:56:06 of hte same type 04:56:09 e.g. integers 04:56:10 You probably mean: you can call some function on it, and the function won't barf. 04:56:16 yeah 04:56:21 so use "integer?" 04:56:45 another option: just call the function, and let it barf. In some ways that's cleaner than doing your own checking. 04:56:47 well it might not be an integer 04:56:53 rudybot: eval (3? 3) ; well? 04:56:53 zbigniew: ; Value: #t 04:56:55 another option -- if you're using PLT scheme, anyway: use contracts 04:57:08 zbigniew: you're up to no good, I'm sure of that. 04:57:10 for example, the function may take strings 04:57:26 or integers 04:57:31 or lists or vectors 04:57:38 Shiba: you probably have a short list of types that are acceptible; do something like (or (string? x) (integer? x) ...) 04:57:40 that's some function 04:58:11 no, it really can take any type of data 04:58:25 I'm trying to implement collect from Ruby 04:58:42 you pass collect a callback to work with the data 04:58:43 if it can take any type of data, then I wouldn't think you'd need to check the types. 04:59:03 well I need to know that the type in arg1 is equivalent to the type in arg2 04:59:11 what does "equivalent" mean? 04:59:15 since there are some limitations on the callback 04:59:50 the callback needs to understand the data that collect passes it 04:59:57 maybe it would help if you explained what collect does 05:00:07 Shiba: I suspect scheme already has an equivalent 05:00:47 collect takes an anonymous block and an array and applies the anonymous block to each member of hte array then returns a list 05:00:50 looks like "map" 05:00:55 rudybot: doc map 05:00:55 *offby1: http://docs.plt-scheme.org/reference/pairs.html#(def._((lib._scheme%2Fprivate%2Fmap..ss)._map)) 05:01:03 Shiba: read that and see if it's the same thing 05:01:09 rudybot: eval (map add1 (list 1 2 3)) 05:01:10 *offby1: ; Value: (2 3 4) 05:02:07 rudybot: eval (map (lambda (x) (add1 (* 10 x))) (list 1 2 3)) 05:02:07 *offby1: ; Value: (11 21 31) 05:02:44 *offby1* suspects that most of ruby's general-purpose built-in stuff has equivalents in scheme 05:03:17 rudybot: eval (map (lambda (x) (string->symbol (string (+ 96 (integer->char x))))) (list 1 2 3)) 05:03:17 zbigniew: error: +: expects type as 2nd argument, given: #\u0001; other arguments were: 96 05:03:39 rudybot: eval (map (lambda (x) (string->symbol (string (integer->char (+ 96 x))))) (list 1 2 3)) 05:03:39 zbigniew: ; Value: (a b c) 05:03:47 rudybot: sorry 05:03:47 zbigniew: eh? Try "rudybot: help". 05:05:26 -!- dfeuer [n=dfeuer@wikimedia/Dfeuer] has quit [Read error: 104 (Connection reset by peer)] 05:05:30 dfeuer [n=dfeuer@wikimedia/Dfeuer] has joined #scheme 05:05:43 rudybot: eval (map (lambda (x) (string->symbol (string (integer->char (+ #x265a x))))) (list 1 2 3)) 05:05:43 zbigniew: ; Value: (  ) 05:06:18 phax [n=psc@unaffiliated/phax] has joined #scheme 05:06:24 rudybot: eval (map (lambda (x) (string->symbol (string (integer->char (+ #x2672 x))))) (list 1 2 3)) 05:06:24 rudybot: eval (char->integer #a) 05:06:24 zbigniew: ; Value: (  ) 05:06:25 gmh33: your sandbox is ready 05:06:25 gmh33: error: eval:1:15: read: bad syntax `#a' 05:06:29 better 05:06:49 rudybot: eval (char->integer #\a) 05:06:49 *offby1: ; Value: 97 05:07:32 whoops, #\a 05:07:41 the force is weak with me 05:07:43 :( 05:08:27 just did my first real majorish project with scheme... it's good :) 05:08:56 incubot: please remember to recycle 05:08:59 is the little recycle thing showing in the bottom? 05:09:14 yes, that's how you know 05:09:24 yay GC 05:10:43 George Clooney? 05:11:14 garbage collection.. 05:11:48 kind of assuming they were talking about the recycle sign at the bottom of dr scheme, which I always assumed meant it was reclaiming memory 05:12:35 also, it's strange that I can compile a program written/tested in Dr and run it fine with gambit, but Dr's "generate executable" renders something that doesn't work 05:12:50 I'm exactly the opposite 05:13:22 offby1: you wrote something and tested using gambit and plt run it fine but you can't compile it with gsc? 05:14:57 General Castor. 05:15:19 General Custer. 05:15:48 General Custard. 05:15:52 that was a major custerfuck 05:16:42 minor pollux. 05:17:46 All polluxed up. 05:18:17 Among the sons of Jupiter were the Heavenly Twins, Pollux and Bollux. 05:19:07 but jupiter is edgy, now. or was that saturn... 05:19:33 No, Saturn was on edge. 05:19:40 That is, until he was in stomach. 05:21:06 *sladegen* meant http://antwrp.gsfc.nasa.gov/apod/ap090904.html 05:21:45 Quite so. "Has Saturn swallowed his children?" 05:21:59 well, uranus is on its side 05:22:35 *sladegen* is no greek. 05:22:38 Maybe *yours*. Not mine. 05:22:50 Galileo Galilei (1564-1642) was the first to view the rings in 1610 although what he saw through his crude telescope left him completely baffled, as Saturn appeared to him not to have rings but rather two smaller bodies flanking it on either side. 05:22:50 He couldn't make them out clearly and thought that Saturn was a triple body, with two small orbs on either side of a large one. Later, when the rings turned edgewise to Earth and the two companions disappeared, Galileo invoked an ancient myth when he wrote, "Has Saturn swallowed his children?" Galileo lamented that his mind was too weak to comprehend this strange phenomenon. 05:22:50 Actually, it was his telescope that was too weak; a better telescope would have revealed Saturn's companions as rings. 05:22:55 It was not until a young Dutch mathematician, Christiaan Huygens (1629-1695), utilized a much better telescope, and on March 25, 1655, saw the rings for what they really were. 05:24:25 incubot: take the clouds from your eyes and see me as I really am! 05:24:28 a demo "engine" in which i code the demo while running... most performance critical stuff will be in C but I would like to be able to generate geometry (point clouds cube grids etc from scheme 05:24:41 incubot: lame 05:24:44 (even if they're lame applications of them) 05:25:10 *sladegen* applies zbigniew. 05:25:23 *zbigniew* adumbrates sladegen 05:26:15 *jcowan* evals Riastradh. 05:26:29 In a fresh environment frame -- first-class, of course. 05:27:53 parsing, leafing | \ - / | \ - / | \ leafing, parsing, parsing, leafing... 05:29:03 non-printing. 05:32:29 -!- gmh33 [n=gmh33@pool-71-166-14-120.bltmmd.east.verizon.net] has quit ["Leaving"] 05:33:24 -!- ASau [n=user@83.69.240.52] has quit ["off"] 05:37:24 is there a function to compare lists or do I have to write it myself? 05:41:33 Shiba: Is there a machine to compare deoderants or do people have to test them themselves? 05:41:41 :D 05:41:53 I'm not being sarcastic 05:41:53 seriously 05:42:21 I was just introduced to map, where I'd spent 30 minutes implementing a recursive function that does the same thing in like 12 lines of code 05:42:28 and map does it in one 05:42:38 a good learning experience, eh? ;) 05:42:56 uh-huh. so thats why I'm asking if there is a function that compares lists :) 05:43:52 gahh, multiple return values are awful 05:43:57 Shiba: It's likely that equal? will do what you want. 05:44:14 I used to think they were so cool...but I hate them now... 05:44:24 The place to look is section 6.1 in r5rs 05:44:29 r5rs equal? 05:44:29 http://www.schemers.org/Documents/Standards/R5RS/HTML/r5rs-Z-H-9.html#%_idx_218 05:44:32 -rudybot:#scheme- http://tinyurl.com/5jsusu 05:44:38 which describes all the equivalence predicates 05:45:05 syntropy: the feeling is mutual, I'm told. 05:45:15 ....? 05:45:26 multiple return values hate me? 05:45:31 Oh yes. 05:45:45 *Loathe*, I am to understand. 05:45:46 zbigniew: yes it does. thank you :) 05:46:04 zbigniew: In soviet russi-^H^H^H^H^H^H 05:46:24 Shiba: what are you working on, anyway? It may be a good idea to go through a Scheme tutorial 05:46:44 zbigniew: I've read through parts of the wizard book 05:47:05 just trying to learn scheme 05:48:55 just be cause! 05:50:26 bohanlon [n=bohanlon@pool-71-184-223-212.bstnma.fios.verizon.net] has joined #scheme 05:50:30 I'm slowly learning to hate it 05:50:32 :) 05:51:24 breathe, clear your mind 05:51:35 listen to the echo of the bell 05:52:10 now write a function which compares two lists, non-recursively, using eqv? on the elements 05:52:25 now breathe again 05:52:31 exhale 05:52:53 zbigniew: .... non. ... recursively ? 05:53:00 zbigniew: CONS MAN CONS! 05:53:38 syntropy: non-recursively, as in only on flat lists 05:53:55 yeah, i get it. 05:54:10 no, no, it was ambiguous 05:54:20 like my gender 05:54:37 non-deepily... 05:54:54 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 05:54:57 shallowously 05:55:40 is there a test I can use to check for #t or #f? something like (boolean? ...) 05:55:48 Try it and see. 05:55:53 don't let chandler hear you 05:56:54 "diaphragm flutters" 05:58:39 incubot: my hovercraft is full of hiccoughs 05:58:42 dammit i have hiccoughs. 05:58:58 it's contagious like yawns 05:59:12 *zbigniew* yyyyyyaaawwwns 05:59:35 yylex() 05:59:40 oh. 05:59:41 wait. 06:09:18 -!- Shiba [n=Michael@64.142.31.232] has quit ["Leaving"] 06:15:01 -!- jonrafkind [n=jon@98.202.86.149] has quit [Read error: 110 (Connection timed out)] 06:20:32 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit [Remote closed the connection] 06:23:38 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 06:39:38 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 06:44:29 -!- Toekutr [n=toekutr@adsl-69-107-134-120.dsl.pltn13.pacbell.net] has quit [Read error: 104 (Connection reset by peer)] 06:44:49 Toekutr [n=toekutr@adsl-69-107-134-120.dsl.pltn13.pacbell.net] has joined #scheme 06:46:31 ASau [n=user@host224-230-msk.microtest.ru] has joined #scheme 06:48:58 -!- jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has quit ["Leaving"] 06:58:32 -!- phax [n=psc@unaffiliated/phax] has quit [Read error: 145 (Connection timed out)] 07:01:47 ponzao__1 [n=vesam@xdsl-83-150-86-25.nebulazone.fi] has joined #scheme 07:07:31 mmc [n=mima@esprx01x.nokia.com] has joined #scheme 07:07:35 leppie|work [i=52d2e3c8@gateway/web/freenode/x-yoctuosmtyarimcr] has joined #scheme 07:09:37 -!- dmoerner [n=dmr@89-151.res.pomona.edu] has quit ["Leaving"] 07:09:54 -!- Fufie [n=innocent@86.80-203-225.nextgentel.com] has quit ["Leaving"] 07:12:41 finally I know how IO looks like! 07:13:39 http://www.astr.ua.edu/ay102/Lab5/Jupiter/io.jpg 07:13:51 -!- leppie|work [i=52d2e3c8@gateway/web/freenode/x-yoctuosmtyarimcr] has quit [Ping timeout: 180 seconds] 07:14:24 -!- ponzao___ [n=vesam@xdsl-83-150-86-25.nebulazone.fi] has quit [Read error: 113 (No route to host)] 07:14:37 and here I was about to talk about binding it 07:25:07 Sveklo1 [n=sveklo1@a88-115-8-123.elisa-laajakaista.fi] has joined #scheme 07:27:41 leppie|work [i=52d2e3c8@gateway/web/freenode/x-xraewaismludgafb] has joined #scheme 07:29:36 -!- foof [n=user@dn157-046.naist.jp] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 07:30:56 -!- Toekutr [n=toekutr@adsl-69-107-134-120.dsl.pltn13.pacbell.net] has quit ["Leaving"] 07:44:10 schemer999 [n=tmilford@76.89.231.7] has joined #scheme 07:44:30 -!- schemer999 [n=tmilford@76.89.231.7] has left #scheme 07:50:29 QinGW1 [n=wangqing@203.86.89.226] has joined #scheme 07:56:42 foof [n=user@dn157-046.naist.jp] has joined #scheme 07:57:28 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 104 (Connection reset by peer)] 07:58:27 QinGW1 [n=wangqing@203.86.89.226] has joined #scheme 08:04:43 Fufie [n=poff@Gatekeeper.vizrt.com] has joined #scheme 08:07:12 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 110 (Connection timed out)] 08:24:11 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Remote closed the connection] 08:29:23 attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has joined #scheme 08:42:41 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 08:44:28 hotblack23 [n=jh@p5B05471F.dip.t-dialin.net] has joined #scheme 08:53:11 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Read error: 60 (Operation timed out)] 08:55:41 tnou [n=tnou@78.250.171.191] has joined #scheme 09:06:51 rdd` [n=user@c83-250-145-223.bredband.comhem.se] has joined #scheme 09:08:29 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 09:09:20 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Read error: 54 (Connection reset by peer)] 09:13:45 steiger [n=steiger@189.105.37.156] has joined #scheme 09:16:46 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 09:19:45 dsmith [n=dsmith@cpe-173-88-196-177.neo.res.rr.com] has joined #scheme 09:19:58 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Read error: 60 (Operation timed out)] 09:20:18 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Read error: 104 (Connection reset by peer)] 09:20:44 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 09:24:50 mkter [n=user@081-003-214-196.yesss.at] has joined #scheme 09:25:22 -!- mkter [n=user@081-003-214-196.yesss.at] has quit [Remote closed the connection] 09:25:30 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 09:27:03 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Read error: 54 (Connection reset by peer)] 09:29:59 amoeba [i=82c09bc2@gateway/web/freenode/x-uuumratmcejrtpen] has joined #scheme 09:30:19 mngbd [n=user@081-003-214-196.yesss.at] has joined #scheme 09:31:58 -!- mngbd [n=user@081-003-214-196.yesss.at] has quit [Remote closed the connection] 09:34:44 -!- Vapour [n=vapour@213.239.193.124] has left #scheme 09:42:14 -!- amoeba [i=82c09bc2@gateway/web/freenode/x-uuumratmcejrtpen] has quit [Ping timeout: 180 seconds] 09:48:20 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 09:55:08 -!- tnou [n=tnou@78.250.171.191] has quit ["Quitte"] 10:04:09 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 104 (Connection reset by peer)] 10:17:31 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Remote closed the connection] 10:19:38 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 10:24:14 sepult [n=levgue@xdsl-87-78-103-114.netcologne.de] has joined #scheme 10:25:18 masm [n=masm@85.241.57.4] has joined #scheme 10:35:10 tltstc [n=tltstc@76.90.95.39] has joined #scheme 10:36:04 jeapostrophe [n=jay@69.169.141.110] has joined #scheme 10:46:10 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Read error: 60 (Operation timed out)] 10:57:33 leppie [n=lolcow@41.244.199.242] has joined #scheme 11:02:04 -!- ski_ [n=md9slj@remote1.student.chalmers.se] has quit ["Lost terminal"] 11:06:33 -!- leppie [n=lolcow@41.244.199.242] has quit [Read error: 145 (Connection timed out)] 11:09:22 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 11:18:55 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Remote closed the connection] 11:22:04 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 11:25:50 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 11:28:11 -!- annodomini [n=lambda@wikipedia/lambda] has quit [Client Quit] 11:34:10 -!- Fufie [n=poff@Gatekeeper.vizrt.com] has quit ["Leaving"] 11:36:54 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 11:38:44 -!- emma [n=em@unaffiliated/emma] has quit [Read error: 60 (Operation timed out)] 11:49:04 Fufie [n=poff@Gatekeeper.vizrt.com] has joined #scheme 11:53:49 danfowler [n=Dfowler@ip-66-9-231-226.autorev.intellispace.net] has joined #scheme 11:54:35 -!- sepult [n=levgue@xdsl-87-78-103-114.netcologne.de] has quit [Read error: 104 (Connection reset by peer)] 11:55:33 emma [n=em@unaffiliated/emma] has joined #scheme 12:02:25 annodomini [n=lambda@129.170.241.160] has joined #scheme 12:11:23 mario-goulart [n=user@67.205.85.241] has joined #scheme 12:19:56 git, darcs or mercurial? 12:20:20 Oh no, not again! 12:21:01 -!- annodomini [n=lambda@wikipedia/lambda] has quit [Read error: 60 (Operation timed out)] 12:21:36 sepult [n=levgue@xdsl-87-78-103-114.netcologne.de] has joined #scheme 12:21:52 -!- sepult [n=levgue@xdsl-87-78-103-114.netcologne.de] has quit [Remote closed the connection] 12:22:13 ;) just thought it's so silent, and that's what i'm pondering now 12:22:49 -!- emma [n=em@unaffiliated/emma] has quit [Read error: 110 (Connection timed out)] 12:23:19 sepult [n=levgue@xdsl-87-78-103-114.netcologne.de] has joined #scheme 12:28:34 -!- danfowler [n=Dfowler@ip-66-9-231-226.autorev.intellispace.net] has quit ["Leaving."] 12:30:02 ecraven: These days, odds are you'll have to learn them all. 12:31:14 i want to find one for personal use 12:32:08 -!- dsmith [n=dsmith@cpe-173-88-196-177.neo.res.rr.com] has quit ["Leaving"] 12:33:48 Darcs has the friendliest interface, but had performance issues - I understand it's faster now. 12:34:29 Personally, I use mercurial for my own projects now. Simple, faster than darcs, and more widely supported. 12:37:03 i've read some posts that claim git is superior to mercurial. they seemed to argue this well, but i don't know enough about DVCS :( 12:40:43 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Remote closed the connection] 12:40:59 git is more fine-grained by default 12:41:02 The git folks think their tool is superior to all 12:41:14 It is indeed more fine-grained 12:41:18 ie, more busywork 12:41:28 Yes, by default it's harder to use. 12:41:45 And mercurial has optional extensions for those things git can do that it doesn't do by default. 12:41:48 More features != better tool 12:42:11 Git also lets you break things, modify history, etc. 12:42:56 -!- sepult [n=levgue@xdsl-87-78-103-114.netcologne.de] has quit [Read error: 104 (Connection reset by peer)] 12:44:24 sepult [n=levgue@xdsl-87-78-103-114.netcologne.de] has joined #scheme 12:45:25 I use git; it is clearly superior. 12:45:40 See? 12:45:42 :) 12:53:24 -!- Riastradh [n=rias@pool-141-154-58-196.bos.east.verizon.net] has quit [Read error: 110 (Connection timed out)] 12:54:48 -!- jeapostrophe [n=jay@69.169.141.110] has quit [] 12:57:59 G G G I T I T I T G G G I T! 12:58:32 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 12:59:04 Edico [n=Edico@unaffiliated/edico] has joined #scheme 12:59:10 incubot: why aren't you cheerleading git? 12:59:13 Hey! No slacking off cheerleading while rolling on the floor, Felix! 13:00:15 -!- sstrickl [n=sstrickl@pool-151-199-30-68.bos.east.verizon.net] has quit [] 13:02:37 langmartin [n=user@152.85.133.62] has joined #scheme 13:03:58 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 13:04:07 -!- Sveklo1 [n=sveklo1@a88-115-8-123.elisa-laajakaista.fi] has quit ["Leaving..."] 13:04:14 does anyone use word (as opposed to line) diff tools with version control? 13:12:35 ecraven: Git isn't so great on Windows 13:15:03 Nshag [i=user@Mix-Orleans-106-1-166.w193-248.abo.wanadoo.fr] has joined #scheme 13:15:04 ... only applicable if you use windows 13:15:11 kenjin_ [n=kenjin@58.232.36.34] has joined #scheme 13:15:38 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Remote closed the connection] 13:16:03 FufieToo [n=poff@Gatekeeper.vizrt.com] has joined #scheme 13:17:07 When scheme loads a file on a certain data structure like hash table, it consumes ram. Is it possible to make it use hard disk instead of ram? 13:17:14 offby1: heard about that :( my colleagues would work on windows 13:18:52 kenjin_: you could remove some of your RAM and use your swap more 8-/ 13:20:06 hkBst: When it consumed all of my ram and started using swap...my laptop literally stopped. 13:20:38 Your hash table loading library sucks, then 13:21:02 I use mzscheme 13:22:09 I don't think it supports on-disk hash tables 13:22:17 By the way...I need to handle very large data like 1gb. Is it a good idea to use hash table? Or vector is better? 13:23:03 You might want to use an on-disk data structures library 13:23:15 Like one of those database softwareses 13:23:26 Oh..is it possible? 13:26:38 reprore_ [n=reprore@116.82.73.92] has joined #scheme 13:30:16 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 13:30:56 -!- Fufie [n=poff@Gatekeeper.vizrt.com] has quit [Read error: 110 (Connection timed out)] 13:32:58 annodomini [n=lambda@130.189.179.215] has joined #scheme 13:38:06 EleminoP [n=EleminoP@iub-vpn-195-35.noc.indiana.edu] has joined #scheme 13:39:03 apgwoz [n=apgwoz@216.156.136.2.ptr.us.xo.net] has joined #scheme 13:39:51 luz [n=davids@139.82.89.70] has joined #scheme 13:40:58 phax [n=psc@207-229-157-200.mart-bsr1.chi-mart.il.cable.rcn.com] has joined #scheme 13:41:20 -!- kenjin_ [n=kenjin@58.232.36.34] has quit [Remote closed the connection] 13:43:05 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Read error: 104 (Connection reset by peer)] 13:44:19 -!- bill-hager [n=hager@c-98-231-14-62.hsd1.fl.comcast.net] has quit [Remote closed the connection] 13:56:40 sstrickl [n=sstrickl@dublin.ccs.neu.edu] has joined #scheme 13:59:32 bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 14:06:09 higepon725 [n=taro@FL1-125-197-205-128.tky.mesh.ad.jp] has joined #scheme 14:09:08 jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 14:13:40 Fare [n=Fare@c-98-216-110-136.hsd1.ma.comcast.net] has joined #scheme 14:17:55 -!- langmartin [n=user@152.85.133.62] has quit [Remote closed the connection] 14:25:26 HG` [n=HG@xdsleg215.osnanet.de] has joined #scheme 14:29:53 -!- saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit ["This computer has gone to sleep"] 14:30:22 rjack [n=rjack@adsl-ull-156-55.51-151.net24.it] has joined #scheme 14:35:04 -!- ASau [n=user@host224-230-msk.microtest.ru] has quit ["off"] 14:40:44 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 14:48:51 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 14:49:04 -!- HG` [n=HG@xdsleg215.osnanet.de] has quit [Client Quit] 14:57:12 -!- mario-goulart [n=user@67.205.85.241] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 15:06:17 thesnowdog_ [i=thesnowd@114.73.23.227] has joined #scheme 15:07:31 -!- rjack [n=rjack@adsl-ull-156-55.51-151.net24.it] has quit ["leaving"] 15:08:35 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Remote closed the connection] 15:09:35 caoliver [n=oliver@75-134-208-20.dhcp.trcy.mi.charter.com] has joined #scheme 15:10:42 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 15:11:39 -!- leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has quit [Read error: 104 (Connection reset by peer)] 15:13:13 -!- caoliver [n=oliver@75-134-208-20.dhcp.trcy.mi.charter.com] has left #scheme 15:13:51 kenjin: if you're still here, take a look at the DBM interface for a simple hash modeled persistence scheme. DBM is lightweight and tried and true. 15:14:19 sylecn [n=sylecn@wireless-128-62-120-168.public.utexas.edu] has joined #scheme 15:16:26 Is anyone using quack in emacs? I want to know how to install plt-scheme docs and make keyword doc search working. 15:17:36 I use quack sometimes 15:18:47 I quack sometimes 15:19:03 -!- thesnowdog [i=thesnowd@114.73.23.227] has quit [Nick collision from services.] 15:19:09 -!- thesnowdog_ is now known as thesnowdog 15:19:17 langmartin [n=user@exeuntcha.tva.gov] has joined #scheme 15:21:25 I can't get keyword docs to work either. Not a huge deal, but it would be nice 15:22:20 what other IDEs do you use? 15:22:53 leppie [n=lolcow@dsl-244-199-242.telkomadsl.co.za] has joined #scheme 15:25:24 -!- higepon725 [n=taro@FL1-125-197-205-128.tky.mesh.ad.jp] has quit [Read error: 113 (No route to host)] 15:25:57 Good old Dr. Scheme. UI is a little slow to respond, but otherwise not too bad. I use Quack when either I want a "real" REPL, I'm fooling around and learning something new, or both. 15:31:52 -!- sylecn [n=sylecn@wireless-128-62-120-168.public.utexas.edu] has quit ["Leaving"] 15:41:36 -!- langmartin [n=user@exeuntcha.tva.gov] has quit [Remote closed the connection] 15:55:31 jonrafkind [n=jon@crystalis.cs.utah.edu] has joined #scheme 15:59:05 ASau [n=user@83.69.240.52] has joined #scheme 16:01:03 -!- bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Remote closed the connection] 16:01:09 -!- jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Remote closed the connection] 16:01:13 bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 16:03:55 ejs [n=eugen@91.90.9.206] has joined #scheme 16:05:07 -!- qebab [i=finnrobi@gaupe.stud.ntnu.no] has quit [Remote closed the connection] 16:09:37 -!- ASau [n=user@83.69.240.52] has quit [Remote closed the connection] 16:10:05 ASau [n=user@83.69.240.52] has joined #scheme 16:10:18 albacker [n=eni@unaffiliated/enyx] has joined #scheme 16:16:28 -!- attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has quit [Read error: 113 (No route to host)] 16:17:45 brweber2 [n=brweber2@192.18.37.228] has joined #scheme 16:19:18 jrtayloriv [n=jrt4@cpe-69-205-162-163.stny.res.rr.com] has joined #scheme 16:20:07 -!- brweber2 [n=brweber2@192.18.37.228] has quit [Client Quit] 16:20:21 Daemmerung [n=goetter@1133sae.mazama.net] has joined #scheme 16:20:41 -!- Kusanagi [n=Lernaean@unaffiliated/kusanagi] has quit [] 16:21:04 -!- sepult [n=levgue@xdsl-87-78-103-114.netcologne.de] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 16:21:16 *Daemmerung* is here to vent 16:22:48 Curse and damn the gaseous blather that chokes the "r6rs-discuss" list. 16:24:03 Like I give a fuck about what "bear" wants in a fucking /user interface/. 16:24:26 *Daemmerung* leaves to amend his killfile 16:28:16 and I thought I had rage issues :p 16:31:55 i have stackoverflow rage! 16:42:23 Kusanagi [n=Lernaean@unaffiliated/kusanagi] has joined #scheme 16:45:08 jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 16:46:35 Language wars - sometimes a benevolent dictator with a moderate vision and *advised* by others is a better model. 16:48:39 For the planet DBM interface, does anyone know what the "right" DBM version is for Windows? There are quite a few different ones floating around. 16:50:47 langmartin [n=user@exeuntcha.tva.gov] has joined #scheme 16:51:34 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 16:55:54 mario-goulart [n=user@67.205.85.241] has joined #scheme 16:58:28 mreggen_ [n=mreggen@cm-84.215.28.167.getinternet.no] has joined #scheme 16:59:34 -!- reprore_ [n=reprore@116.82.73.92] has quit [Remote closed the connection] 17:01:31 reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 17:06:22 -!- mmc [n=mima@esprx01x.nokia.com] has quit [Remote closed the connection] 17:13:46 -!- ASau [n=user@83.69.240.52] has quit [Remote closed the connection] 17:14:27 -!- mreggen [n=mreggen@cm-84.215.28.167.getinternet.no] has quit [Read error: 110 (Connection timed out)] 17:14:52 ASau [n=user@83.69.240.52] has joined #scheme 17:16:13 -!- Fare [n=Fare@c-98-216-110-136.hsd1.ma.comcast.net] has quit ["Leaving"] 17:16:40 -!- ASau [n=user@83.69.240.52] has quit [Remote closed the connection] 17:16:50 rstandy [n=rastandy@net-93-144-71-2.t2.dsl.vodafone.it] has joined #scheme 17:20:32 -!- apgwoz [n=apgwoz@216.156.136.2.ptr.us.xo.net] has quit [Read error: 110 (Connection timed out)] 17:21:43 -!- reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 17:27:57 reprore_ [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 17:29:09 -!- chylli [n=lchangyi@60.211.214.32] has quit [Remote closed the connection] 17:30:33 apgwoz [n=apgwoz@216.156.136.2.ptr.us.xo.net] has joined #scheme 17:32:28 MrFahrenheit [n=RageOfTh@users-38-89.vinet.ba] has joined #scheme 17:39:10 Does anyone here use git? If so, can you spell out for me what the pieces of a refspec are? (Sorry, I know this is the wrong channel, but the users in #git are so offensive and unhelpful I don't go in there anymore) 17:39:24 you could try #github 17:39:33 ah! thank you, I will. 17:39:40 :) 17:39:47 again, sorry for the off-channel topic 17:40:59 -!- reprore_ [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 17:45:19 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Connection timed out] 17:49:47 mrsolo [n=mrsolo@nat/yahoo/x-hffrnjpphgzkqofp] has joined #scheme 17:53:00 -!- untouchable [i=un@dhcp-129-64-166-32.dorm.brandeis.edu] has quit [Read error: 110 (Connection timed out)] 18:04:40 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 18:08:27 -!- ejs [n=eugen@91.90.9.206] has quit [Read error: 148 (No route to host)] 18:08:29 Dark-Star [i=Darkstar@p57B55D1D.dip.t-dialin.net] has joined #scheme 18:21:22 peddie_ [n=peddie@c-67-170-201-38.hsd1.ca.comcast.net] has joined #scheme 18:21:55 -!- peddie [n=peddie@67.170.201.38] has quit [Read error: 145 (Connection timed out)] 18:24:26 kssreeram [n=kssreera@122.174.66.200] has joined #scheme 18:48:06 Riastradh [n=riastrad@tissot.csail.mit.edu] has joined #scheme 19:01:11 elderK [n=zk@122-57-241-160.jetstream.xtra.co.nz] has joined #scheme 19:02:00 -!- leppie|work [i=52d2e3c8@gateway/web/freenode/x-xraewaismludgafb] has quit [Ping timeout: 180 seconds] 19:04:02 Kirill [n=user@74.12.133.226] has joined #scheme 19:04:04 -!- Kirill [n=user@74.12.133.226] has left #scheme 19:15:09 eni_ [n=eni@APuteaux-552-1-22-111.w92-132.abo.wanadoo.fr] has joined #scheme 19:15:23 -!- tessier [n=treed@kernel-panic/sex-machines] has left #scheme 19:17:40 -!- albacker [n=eni@unaffiliated/enyx] has quit [Read error: 110 (Connection timed out)] 19:21:21 rapacity [n=prwg@unaffiliated/rapacity] has joined #scheme 19:21:30 samth [n=samth@nomad.ccs.neu.edu] has joined #scheme 19:21:38 Fare [n=Fare@ita4fw1.itasoftware.com] has joined #scheme 19:22:49 choas [n=lars@p5B0DE376.dip.t-dialin.net] has joined #scheme 19:26:30 -!- jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Remote closed the connection] 19:27:02 -!- mreggen_ [n=mreggen@cm-84.215.28.167.getinternet.no] has quit ["leaving"] 19:28:34 how would i write a procedure that takes an item and a list and the zero-based index of the first occurance of that item 19:30:26 EleminoP: you mean _return_ the zero-based index? 19:30:30 I assume you mean that it returns the zero-based index? 19:30:38 ah, yeah 19:30:54 What would the procedure return if passed the empty list? 19:31:05 #f 19:31:18 What would it do if you gave it a list of one item? 19:31:50 if that item were the item asked for, then 0 19:31:54 otherwise #f 19:32:07 so (index-of 'g '(g)) ;=> 0 19:32:17 (index-of 'g '(a)) ;=> #F 19:32:20 #f* 19:32:35 Suppose you had a list of four items, and a procedure that returned a 0-based index for a list of three items. 19:32:59 yeah. 19:33:04 How would you write the procedure for the list of four items, using the one for the list of three items? 19:34:05 i'm not sure 19:34:15 add 1 to something 19:35:00 What is the "something" there? 19:35:23 the number of items in the list 19:35:42 That doesn't seem like the right answer. 19:35:51 which list, the list of four items, or the one of three? 19:36:21 the one of three? 19:36:25 i'm not on the right track 19:38:18 OK. So, given a list of four items, if the item you're searching for is the first item, what will your procedure return? 19:38:36 man chandler I was just about to say :) 19:39:10 0 19:39:46 OK. Suppose the first item is *not* what you're searching for. 19:40:07 You have a procedure that takes a list of three items and returns a zero-based index, if it's found. 19:40:15 How could you use that to solve this problem? 19:40:55 i was thinking have some procedure that does cdr to the list until the first item is the wanted item 19:41:09 then somehow have a way to count how many times it had to return the cdr of the list 19:41:21 i hope that makes sense 19:41:47 Can you write a procedure that computes the length of a list? 19:42:01 don't worry about that procedure does. All you have is a magic procedure that returns the offset in a 3 item list. You have a 4 item list, and the one you want is not the first item. 19:42:19 EleminoP: You're thinking too hard; the answer is very simple. 19:43:02 Let's say you're looking for the item Y in the list (X _ _ _). Now, I won't tell you what's in those blanks, but if you ask me for the index of Y in the last three elements of the list, I'll tell you. 19:43:07 Go ahead, ask me. 19:44:03 what is the index of Y? 19:44:12 It's 2. 19:44:27 So, what's the index of Y in the four-element list? 19:44:34 3 19:44:38 How did you know? 19:45:13 you told me it was 2, then X added one more item 19:45:19 Right. 19:45:26 (+ 1 2) 19:45:38 very good synx 19:45:47 So, let's try again. You're looking for Y in the list (Z _ _ _). Ask me what the index of Y is in the last three elements of the list. 19:46:02 what is the index of Y? 19:46:20 Sorry, there's no Y there! My answer is #f. 19:46:26 shucks 19:46:33 What's the index of Y in the four element list? 19:46:59 it has no index in the list 19:47:03 So, what do you return? 19:47:17 #f 19:47:38 the same as what chandler returned... 19:47:51 synx: You don't need to follow along with this problem, I assume. 19:48:02 EleminoP: So, how did you know to do that? 19:48:19 you told me there's no Y there 19:48:36 chandler: no, but I wanna be the next level :) 19:48:47 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 19:48:47 Right. But last time you just added 1 to what I returned. 19:48:49 synx: Hm? 19:49:17 If you ask me where Y is in a 2 element list, I will tell you the offset. 19:49:29 EleminoP: So, you're saying that you computed your answer based on what I returned: if I gave you a number, you added 1; if I gave you #f, you returned #f. 19:49:33 or #f if it's not there 19:49:35 synx: I don't think we need that, thanks. 19:49:45 right 19:49:47 synx: Usually, one person at a time works best. 19:50:11 so how are you going to explain how you got the position in a 3 element list? 19:50:19 synx: Watch and see. 19:50:57 EleminoP: So, last example. You're looking for the index of Y in (Y _ _ _). I'll tell you the index of Y in the last 3 elements, if you need it. 19:51:08 0 19:51:16 You didn't need to ask me? 19:51:24 correct 19:51:48 well my offer still stands, but okay 19:52:06 Ah! OK. So, suppose the procedure that returns the index in the last 3 elements is called `find-in-last-3'. Can you write the procedure `find-in-last-4', based on what we just did? 19:52:18 synx: I don't need it. It doesn't help. 19:52:27 yeah, i suppose. 19:52:30 maybe 19:52:41 I think we covered all the cases here. 19:52:44 just assume that find-in-last-3 is already written 19:52:58 sepult [n=levgue@xdsl-87-78-173-246.netcologne.de] has joined #scheme 19:53:04 so put cdr list into find-in-last-3 19:53:09 synx: @echo off 19:53:21 :-) 19:53:33 @echo: command not found 19:53:38 EleminoP: Right. Given a four element list, `cdr' will return a list containing the last three elements. 19:54:02 oh, i misread 19:54:17 i think 19:54:24 EleminoP: Hm? 19:54:38 `car' will return the first element, which may or may not be Y 19:54:42 needless to say 19:55:11 nevermind 19:55:18 synx: You are cramping my style. Shoo. 19:55:30 synx: yes, needless to say 19:55:42 meh! *shoes* 19:56:39 (define index-of 19:56:39 (lambda (x ls n) 19:56:39 (if (equal? x (car ls)) 19:56:39 n 19:56:39 (index-of (x (cdr ls) (+ n 1)))))) 19:56:43 i'm not sure why that doesn't work 19:57:01 shit 19:57:08 You're calling `x' as a procedure, for starters. 19:57:10 parenthesis 19:57:37 But secondly, it looks like you're doing a premature conversion to a tail-recursive version using an accumulator. 19:57:43 You should write the non-tail-recursive version first. 19:58:09 oh, the problem i saw was having to put 0 in for n 20:00:17 EleminoP: chandler is right, and furthermore, consider what happens when you pass an empty list to index-of. 20:00:38 any list for that matter... 20:01:00 No, not any list. If the desired element is found, it returns a value. 20:01:01 car cdrs to the null 20:01:22 (Assuming he fixed the stray paren.) 20:02:00 oh right heh 20:02:09 jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 20:02:36 (define index-of 20:02:36 (lambda (x ls n) 20:02:36 (if (null? ls) 20:02:36 #f 20:02:36 (if (equal? x (car ls)) 20:02:37 n 20:02:39 (index-of x (cdr ls) (+ n 1)))))) 20:02:40 Yikes. 20:02:45 lisppaste: url? 20:02:45 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 20:02:52 sorry, i don't know the rules 20:02:54 EleminoP: The next time you need to paste more than about 3 lines of code, do it at that link. 20:02:57 ah, ok 20:03:02 That's OK. First time for everything. 20:03:13 alright 20:03:17 If you paste too much, the IRC server will kick you off automatically. 20:03:20 ah 20:03:30 (It's called "flooding".) 20:03:54 sladegen: I heard about an R7RS proposal to rename CAR and CDR to RZA and GZA. 20:04:15 thanks for the info chandler 20:04:37 I think that might work EleminoP 20:04:43 zbigniew: It composes as RGGRRGRRZA, I assume. 20:04:49 synx: "Think"? 20:04:54 heh 20:04:56 synx: Didn't I ask you to shoo once already? 20:04:57 it works 20:05:05 I haven't run it through the interpreter yet :p 20:05:06 but it's bad code i suppose 20:05:13 synx: And you can't read it? 20:05:28 because i'm doing a premature conversion to a tail-recursive version using an accumulator 20:05:46 right? 20:05:48 I myself have a few memory leaks I haven't been able to track down yet, chandler 20:05:50 Well, I said "premature" since you have to be able to write the "obvious" recursive version first. 20:06:00 Is the problem at hand to write a tail-recursive version? 20:06:04 Or are you just doing it that way for fun? 20:06:19 i'm just doing that way because it was the first way i figured out how to do it 20:06:30 Oh. You're ahead of yourself, then. 20:06:33 The tail-recursive version seems more obvious to me, but it's harder to put into words... 20:06:37 Let's write the non-tail-recursive version. 20:06:43 synx: Didn't I ask you to shoo already twice? 20:07:07 and the procedure i need to write is only supposed to take the item and list 20:07:10 zbigniew: if the list deconstructors were renamed to HEEHAH and HOHAH, they would compose as diabolical cackling. E.g. HEEEHEEHOHEEHEEHAH 20:07:21 Daemmerung: I like it! 20:07:46 EleminoP: Right. So, let's write the non-tail-recursive version. 20:07:54 We need a language for evil geniuses. Or even evil not-quite-geniuses, ahem. 20:07:58 url? 20:08:01 chandler: It's a public channel. :P I'm trying my best! 20:08:08 listpaste: url? 20:08:11 Daemmerung: should it be case sensitive? 20:08:12 lisppaste: url? 20:08:13 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 20:08:18 lol 20:08:49 synx: No, it's a don't-bother-me channel. 20:08:50 mario-goulart: I dunno. It lacks a fiendish something when written in lowercase. 20:09:01 mario-goulart: That depends on your Scheme, I suppose. 20:09:01 synx: Too many cooks, etc. 20:09:02 synx, public it may be; that doesn't change whether you are being a pest and blithely ignoring requests that you stop. 20:09:18 I'm not ignoring them. I stopped. 20:09:21 (define real-index-of (lambda (x ls) (index-of x ls 0))) 20:09:26 so that worked for what i need 20:09:34 Yes, it did, but I think you're still overthinking it. 20:09:42 well that's good to know 20:09:45 i suppose 20:09:48 Do you know how to write the accumulator-free version? 20:09:57 no 20:10:09 i think i'm forgetting something simple that i should know 20:10:21 OK. I think we already covered the base case: when given an empty list, what does the procedure return? 20:10:30 #f 20:10:49 I think HEEEHEEHOHEEHEEHAH would not be efficient enough in lowercase. 20:10:51 -!- luz [n=davids@139.82.89.70] has quit ["Client exiting"] 20:11:04 And the inductive case, for which I gave the example of a list of four elements written in terms of a procedure that does what you want for a list of three elements. 20:12:01 EleminoP: So, what is the first thing your procedure will do? (Hint: it's the same thing as the first thing your accumulator version does.) 20:12:15 check if the list is empty 20:12:19 Right. 20:12:25 and if it's not... 20:12:29 Assuming it's not empty, what's the second thing it will do? 20:12:37 check the first item 20:12:45 and see if it's the desired item 20:12:52 And if the first item is the desired item, it returns...? 20:12:56 0 20:13:09 Right. And if it's not? 20:13:26 it runs the cdr of the list back through 20:13:30 No. 20:13:38 Well, maybe. What do you mean by that? 20:13:48 (I'm not sure what "back through" means.) 20:13:52 oh 20:14:29 like (index-of x (cdr ls) (+ n 1)) 20:14:42 Right, but you're not passing that last parameter anymore. 20:14:57 ah, right 20:15:09 the accumulator does that 20:15:39 Daemmerung: that's the Devil's Scheme 20:15:54 are we talking about what my procedure does, or what the one you're teaching me does? 20:16:37 ASau [n=user@83.69.240.52] has joined #scheme 20:17:27 -!- rstandy [n=rastandy@net-93-144-71-2.t2.dsl.vodafone.it] has quit [Connection timed out] 20:17:36 EleminoP: The one I'm trying to get you to write. 20:17:44 Sorry, I had to step away from the computer for a minute. 20:17:45 ok 20:17:48 it's fine 20:18:10 So, you do a recursive call, but there's no accumulator parameter: just an item and a list. 20:18:13 -!- synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has quit [Remote closed the connection] 20:18:28 right 20:19:39 So, the return value will either be #f, or an index in the list you passed it. 20:19:52 If the return value is #f, what should be returned? 20:20:09 cdr list 20:20:12 oh, hmm 20:21:09 nvm, i thought i had an epiphany of sorts 20:21:21 but i started writing the same code as before 20:21:32 OK. So, here's a hint for you: You're going to need to use `let'. 20:21:49 zbigniew: shouldn't Devil's Scheme use MOO and AAH instead? 20:22:08 AAHMOOAAHMOO? 20:22:10 MOOMOOMOOAAH? 20:22:30 maybe not. 20:22:31 I think that's Cowsheep Scheme. 20:22:36 chandler, i have not learned `let' yet 20:22:45 EleminoP: Oh! Well, that would explain it. 20:22:53 yeah, hah 20:22:56 i suppose so 20:23:15 i've just started to learn this stuff 20:23:30 Are you following a curriculum here? In which case, what text are you using? 20:24:00 no text, just lectures 20:24:43 sorry that i wasted your time 20:24:50 No, don't be sorry at all. 20:25:07 oh, ok 20:25:12 Cowsheep Scheme wouldn't be bad, anyway. After all, we have Chicken Scheme already. 20:25:13 Would you like to learn how to write the accumulator-less version without using `let'? 20:25:20 sure 20:25:24 OK. 20:25:29 well, will it take long? 20:25:33 No, not at all. 20:25:38 i'm cutting things close this week 20:25:39 ok. 20:25:46 So, we did a recursive call to the function: (index-of x (cdr list)) 20:25:52 yeah 20:26:01 So, we've got a conditional ahead of ourselves: 20:26:10 If the result is #f, we have to return #f. 20:26:17 If the result is a number, we have to add one to that number. 20:26:31 Does that sound right? 20:27:10 synx [i=synx@gateway/gpg-tor/key-0xA71B0C6A] has joined #scheme 20:27:14 if the result if #f, don't you need to do another recursive call? 20:27:43 you can't work during your returns, it'll eat all your profits... 20:27:46 Why would we? We already tested the first element in the list, and `index-of' would have found it if it was in the rest of the list. 20:27:58 ohh, ok 20:28:44 This is the inductive step I worked through with you earlier, where I was pretending to be the recursive call. 20:28:58 So, does the conditional I wrote above sound right to you? 20:28:58 scheme cosplay 20:29:03 lol 20:29:15 this seems like a trick question 20:29:19 It's not. 20:29:28 oh, then yes 20:29:30 it seems right 20:29:33 I'm a Socratic teacher. Even when I make a true statement, I'll ask you a question about it. 20:29:36 Good! 20:30:17 So, could you write a procedure that when given #f returns #f, and when given a number returns that number plus one? 20:31:05 i could try 20:31:14 Give it a shot. 20:31:56 This solution is a bit confusing, IMO. 20:32:03 Top drawer, you two. It's been a while since we've had a good dialog in here. 20:32:29 ...in the Stephensonian sense, that. 20:32:38 "that is", even. Jeepers. 20:33:05 Are you fit to live with pigs? [OK] [Cancel] 20:33:07 zbigniew: No less confusing than using an accumulator. 20:33:46 attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has joined #scheme 20:33:52 I mean, vs. using LET. 20:34:28 Riastrad1 [n=rias@pool-141-154-199-40.bos.east.verizon.net] has joined #scheme 20:34:35 should i post it? 20:34:41 Sure. 20:35:17 Oh, hi, there I am. 20:36:10 EleminoP pasted "thing" at http://paste.lisp.org/display/87191 20:36:20 What are we calling this procedure, anyway? maybe-add1 ? 20:36:26 probably 20:36:35 OK, that works. 20:36:36 aha, that's built in 20:36:39 cornucopic [n=r00t@202.3.77.180] has joined #scheme 20:36:40 It is? 20:36:42 add1 20:36:52 Ah. 20:36:52 That could go on for quite a while... 20:36:58 Not `maybe-add1' :-) 20:36:58 "procedure", i think, is a good name for what should be anonymous 20:37:07 zbigniew: One thing at a time... 20:37:20 it does go on for a while 20:37:37 until (+) returns something that is not a number. 20:37:51 Oh. Right. I missed that in the code. 20:37:56 This doesn't need to be recursive! 20:38:01 oh 20:38:13 Get out, Riastradh! Shoo! 20:38:14 ok 20:38:21 It just needs to return #f when given #f, and return n + 1 when given n. 20:38:21 -!- Riastradh [n=riastrad@tissot.csail.mit.edu] has quit ["OK, OK, I'm going!"] 20:38:22 then add1 will work 20:38:30 maybe 20:38:35 -!- Riastrad1 is now known as Riastradh 20:38:39 What does (add1 #f) do? 20:38:52 nvm, it only accepts numbers 20:38:55 if-not-#f-add-1-ver-0.0.1 20:39:05 Right. So, you'll need to use `if' here. 20:39:09 yeah 20:39:19 You got the test right. I don't think you really need to worry about calling `number?'. 20:39:35 If it's given #f, return #f. If it's given anything else, just call `add1' on it. 20:40:11 ok, got it 20:40:59 would you like to see? 20:41:00 (Suvinian Dialog, that's the name...) 20:41:31 Yes, I would. 20:41:33 from suvin, meaning "swine" 20:41:56 "School", in New Orth. 20:41:57 saccade_ [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has joined #scheme 20:41:57 EleminoP pasted "untitled" at http://paste.lisp.org/display/87192 20:42:10 Ah! That's definitely it. 20:42:18 So, let's call this procedure `maybe-add1'. I think it's a good name. 20:42:34 ok 20:42:37 I would just use false? or (not) 20:42:44 synx: It doesn't matter. 20:42:51 -!- Nshag [i=user@Mix-Orleans-106-1-166.w193-248.abo.wanadoo.fr] has quit [Remote closed the connection] 20:43:16 EleminoP: We were doing a recursive call: (index-of x (cdr list)). 20:43:20 does matter if x is a struct with a weird property for measuring equality 20:43:34 ...in which case add1 would fail anyway, so never mind 20:43:56 synx: It will never be called with anything other than #f or a number. Also, didn't you say you had already shooed? 20:44:21 I'm not going to leave on your command. I just stopped helping you. 20:44:22 EleminoP: We decided that we needed to do a conditional, and so we wrote a procedure that did it for us. 20:44:39 synx: You would indeed leave on my command. You could ask me for a demonstration of that, if you like. 20:45:04 EleminoP: What would happen if we passed the result from the `index-of' call to this `maybe-add1' procedure? 20:45:35 you did stuff at IU, chandler? that's where i am now. 20:45:47 I don't see why you would ban me. I'd miss this place if you did, but I know when I'm not welcome. 20:46:28 synx: I wouldn't. I would, however, temporarily mute you. 20:46:36 chandler: I suppose this is not more confusing than using LET, just less usual/idiomatic, and so requires a little more effort to come up with. 20:46:50 it would add1 to whatever the index of the found item was, or #f 20:46:51 Good practice, though. 20:46:52 EleminoP: Yes, I was there as a grad student, until I figured out that I didn't want to be a grad student when I grew up. 20:47:03 aha 20:47:39 EleminoP: Right. So, can you put it all together now? 20:47:40 chandler: well, one thing I don't want to be muted for is arguing about being muted, so I'm done here. I'll just stick with talking about scheme. 20:48:56 synx, good man! What do you think about Kernel? 20:49:21 synx, the description of the language is over at ftp://ftp.cs.wpi.edu/pub/techreports/pdf/05-07.pdf 20:50:24 i'm not sure now, chandler 20:50:29 it seems like what i did before 20:50:54 It's an interesting idea to have syntax transformers be first class values, but I'm not sure that won't lead to inscrutable programs. 20:50:57 It's close, but there's no accumulator to carry around. 20:51:07 yeah 20:51:28 can you just write it out for me? i need to move on soon. 20:51:34 generally scheme doesn't go back into the earlier phases, except when you make an evaluator. I'm not sure, but I wonder if that separation isn't worthwhile. 20:52:13 synx: You're missing the fun of all the people on the r6rs-discuss list who are having fexpr flashbacks. Bear is arguing that expansion should be deferred until runtime. 20:52:14 what value does an undeclared symbol have? It recognizes anything you type even if it's not defined? 20:52:43 yeah I avoid the r6rs discuss list... way over my head 20:52:49 Bear is a little too hairy for my taste 20:53:08 you're supposed to take the hair off before you cook it zbigniew 20:53:13 EleminoP: I don't generally believe in just handing out answers. I'll give you part of the answer, though: (maybe-add1 (index-of x (cdr list))) . 20:54:47 is that my index-of? 20:55:10 It's the version that doesn't take an accumulator. 20:55:14 ok 20:55:34 so i need to define index-of 20:56:34 Right. We already decided what the first two things it does are: It checks to see if the list is empty (and returns #f if it's not), and it checks to see if the first element is the desired value (and returns 0 if it is). 20:58:38 synx: I wish I had the sense to avoid the list. 20:58:53 *Daemmerung* facedesks 21:00:45 i'm not getting it 21:01:05 -!- jonrafkind [n=jon@crystalis.cs.utah.edu] has quit [Read error: 60 (Operation timed out)] 21:01:22 i'm quite distracted right now 21:01:29 i think i need to work on some other stuff 21:01:33 OK. Well, then just go with your accumulator version, and return to this later. 21:01:41 ok, thanks much 21:01:45 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 21:02:12 jonrafkind [n=jon@crystalis.cs.utah.edu] has joined #scheme 21:02:16 -!- jonrafkind [n=jon@crystalis.cs.utah.edu] has quit [Read error: 104 (Connection reset by peer)] 21:02:45 jonrafkind [n=jon@crystalis.cs.utah.edu] has joined #scheme 21:02:55 jedc [n=jed@dyna6-216.cs.uoregon.edu] has joined #scheme 21:03:09 -!- EleminoP [n=EleminoP@iub-vpn-195-35.noc.indiana.edu] has left #scheme 21:06:39 kenpp [n=kenpp@84.92.70.37] has joined #scheme 21:10:32 -!- langmartin [n=user@exeuntcha.tva.gov] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 21:10:45 -!- saccade_ [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has quit ["This computer has gone to sleep"] 21:11:48 saccade_ [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has joined #scheme 21:12:50 emma [n=620e9a47@gateway/web/flash/eris.tuxhacker.org/x-rjhnyxtipvburgxo] has joined #scheme 21:13:28 -!- choas [n=lars@p5B0DE376.dip.t-dialin.net] has quit [Read error: 113 (No route to host)] 21:14:31 -!- mario-goulart [n=user@67.205.85.241] has quit [Remote closed the connection] 21:18:29 mreggen [n=mreggen@cm-84.215.28.167.getinternet.no] has joined #scheme 21:19:54 -!- cornucopic [n=r00t@202.3.77.180] has quit ["so long.."] 21:23:48 kilimanjaro [n=kilimanj@70.116.95.163] has joined #scheme 21:24:22 -!- sepult [n=levgue@xdsl-87-78-173-246.netcologne.de] has quit [Remote closed the connection] 21:32:29 -!- eni_ [n=eni@APuteaux-552-1-22-111.w92-132.abo.wanadoo.fr] has quit [Remote closed the connection] 21:33:59 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 21:38:52 haesbaert [n=haesbaer@201.54.129.16] has joined #scheme 21:41:46 sepult [n=levgue@xdsl-87-78-173-246.netcologne.de] has joined #scheme 21:43:49 -!- sstrickl [n=sstrickl@dublin.ccs.neu.edu] has quit [] 21:49:41 karme [n=user@kallisto.karme.de] has joined #scheme 21:53:03 Whoops. It does not help to begin a message with [off-list] and then forget to remove the list from the CC. 21:53:43 arcfide [n=arcfide@99.50.231.131] has joined #scheme 21:58:19 -!- jedc [n=jed@dyna6-216.cs.uoregon.edu] has quit ["Leaving"] 21:59:20 chandler: (a) blame square brackets of course; (b) count the number of seconds until BH shouts that this will be bad for him. 21:59:33 -!- haesbaert [n=haesbaer@201.54.129.16] has quit [Remote closed the connection] 21:59:40 -!- attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has quit [Read error: 113 (No route to host)] 22:00:10 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:00:45 -!- saccade_ [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has quit ["This computer has gone to sleep"] 22:01:15 saccade_ [n=saccade@18.188.74.28] has joined #scheme 22:01:23 eli: can I get a room at NEU on Wed 30th for the Boston Lisp Meeting? 22:01:35 who shall I contact for that? 22:01:56 Fare: Anyone at NEU can do that. 22:02:30 I can do it too, but finding someone who is more interactive than I am might work better. 22:02:42 I need a point of contact - can you be it or denounce a grad student who'd be it? 22:03:05 -!- saccade_ [n=saccade@18.188.74.28] has quit [Client Quit] 22:03:07 brb 22:03:47 DarthArachides [n=DarthAra@unaffiliated/dartharachides] has joined #scheme 22:04:14 scheme n00b here. What should I do so that I can use the list library? 22:05:19 lisppaste: url 22:05:20 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 22:07:51 DarthArachides: Which implementation? 22:08:45 DarthArachides: I think PLAI 22:09:08 chandler: #lang planet plai/plai:1:3 is what I have on the top of my file 22:09:11 PLAI is a textbook. 22:09:14 Oh, PLT. 22:09:26 I don't know how the PLAI language for PLT works. 22:09:34 -!- jonrafkind [n=jon@crystalis.cs.utah.edu] has quit [Remote closed the connection] 22:09:51 You might try (#%require srfi/1). 22:10:34 chandler: cool, seems to give the functions that I need! 22:14:56 DarthArachides: The PLAI language is designed to work with the PLAI book, if you need some other functions, you can use the usual language instead. 22:15:44 eli: I see. Thing is PLAI is what the instructor expects in a course I am taking; not even sure whether I can use srfi/1. 22:16:11 DarthArachides: In that case your instructor will not appreciate using the `#%require' backdoor. 22:16:27 Which function do you need? 22:16:36 zip, every, any 22:16:54 Why? 22:17:31 for a problem on lists. Right now, I am still in haskell mode of thinking, so just translating what would have been an haskell code :) 22:17:39 s/an/a 22:18:15 I can guess that you're probably going to get annoyed at the PLAI sandbox very quickly. 22:18:15 DarthArachides: In that case using these is likely not what your course requires. You're probably better off asking about it. 22:18:47 chandler: You're confusing the PLAI language with the HtDP ones. 22:18:54 Oh, right. 22:19:16 Yeah I guess. But I think the instructor is cool enough to let me use only these functions (which are trivial to write myself anyway) 22:19:28 is there a smaller set than srfi/1 that I could use? 22:19:34 I just need the list library. 22:19:47 srfi/1 is the list library, essentially. 22:19:54 Fare: What time? 22:20:00 -!- elderK [n=zk@122-57-241-160.jetstream.xtra.co.nz] has quit [] 22:20:04 oh ok 22:20:25 masm1 [n=masm@bl7-206-194.dsl.telepac.pt] has joined #scheme 22:20:40 eli: 6pm would be great 22:20:56 DarthArachides: PLT has its own list library, which contains most of srfi-1 -- but if your homework is something that requires implementing `zip', then getting a library in that uses that will not be a good idea. 22:20:56 eli: starting a bit earlier so we can set things up 22:21:07 speaker would be Christine Flood on Fortress 22:21:14 DarthArachides: Besides, these things are all one-liners anyway. 22:21:38 Fare: 6pm is the earlier time, or you want it to be earlier than that? 22:21:47 6pm is fine 22:21:50 it' 22:21:51 eli: no, no. it is more non-trivial than implementing these functions. I don't think the professor even expects us to use zip, etc. everything can be done without them. 22:22:01 s just that it's better if the room is avail slightly earlier 22:22:08 eli: can you tell how do I use the list library of plt? 22:22:09 I expect 40-50 people 22:22:24 DarthArachides: BTW, did you try `every?' and `any?' ? 22:22:41 Fare: Please hold. 22:22:45 drscheme says (reference to an identifier before its definition) 22:22:55 *Fare* plays some musak 22:22:57 Fare: Your call is important to us, please hold on the line. 22:23:20 DarthArachides: How about `ormap' and `andmap'? 22:23:26 there's been only one BLM at NEU in the past 22:23:34 I'd like to have it there more often. 22:23:55 eli: that seems to have been accepted by drscheme! 22:24:09 Fare: In general it shouldn't be too difficult, but I don't know if it can get to a point where you can ask for a time yourself. 22:25:17 davazp [n=user@79.153.148.56] has joined #scheme 22:25:35 Fare: Until 9pm should be fine, right? 22:26:02 jjjj2 [n=jon@155.98.68.48] has joined #scheme 22:26:12 -!- rdd` [n=user@c83-250-145-223.bredband.comhem.se] has quit [Read error: 104 (Connection reset by peer)] 22:26:23 -!- masm [n=masm@85.241.57.4] has quit [Read error: 145 (Connection timed out)] 22:26:46 -!- bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Read error: 113 (No route to host)] 22:26:51 -!- jjjj2 [n=jon@155.98.68.48] has quit [Read error: 131 (Connection reset by peer)] 22:26:55 DarthArachides: IIRC, those two should as `every' and `any', and for `zip' you can manage with just `map' and probably `apply'. 22:27:02 eli: probably. as always, 10pm is safer. 22:27:10 DarthArachides: if they are one liners, why not write them? 22:27:25 Fare: OK, I just needed something for the email. 22:27:28 is there a standard ethanol-providing joint to meet after such meetings? 22:27:31 jonrafkind [n=jon@155.98.68.48] has joined #scheme 22:27:40 in the vicinity of NEU? 22:27:47 eli: thanks, I will look into them. 22:27:56 dstorrs: no fun writing these small things :) 22:28:04 DarthArachides: :> 22:28:58 Fare: For that you'd need to ask students that are more ethanol-enthusiastic than I am... 22:29:01 nightmode [n=Carbon@194.146.155.70] has joined #scheme 22:30:18 Fare: There is a pub right across from the CS building, but it tends to be noisy, and not as pleasant looking as something like CBC. 22:32:05 I'll ask when the time comes 22:32:22 personally I'd take a grapefruit juice 22:32:52 Fare: There are probably some better options across the park. 22:33:26 eli: can you email me the details of the room when available? 22:33:28 -!- edwardk [n=edwardkm@209-6-103-127.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has left #scheme 22:33:33 Fare: http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=&q=pub&sll=42.343844,-71.094654&sspn=0.010103,0.021393&ie=UTF8&radius=0.55&rq=1&ev=p&ll=42.343749,-71.098452&spn=0.010103,0.021393&z=16 22:33:35 -rudybot:#scheme- http://tinyurl.com/qas9x6 22:34:42 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 22:38:29 -!- DarthArachides [n=DarthAra@unaffiliated/dartharachides] has quit [Read error: 145 (Connection timed out)] 22:41:28 question about module paths; I'd like to have an application specific lib directory. I see how to get the current collection paths, but not how to modify it. Can someone point me to the right man page? 22:42:02 dstorrs: `current-collection-paths' is a parameter 22:42:19 you can change it like any other parameter, with `parameterize' 22:42:30 aha. Ok, thanks. 22:42:38 also, the PLTCOLLECTS environment variable may be useful 22:42:49 samth: can you me my permanent NEU contact for the BLM? 22:43:19 Fare: since i'm graduating imminetly, i'm probably a bad choice 22:43:23 Like OMG commitment 22:43:32 samth: I'd prefer not to muck with env vars if I don't have to...too much action at a distance. Thanks for the parameter tip. 22:43:37 samth, who's a good choice? 22:43:48 and/or what mailing-list to beg on? 22:44:00 prl@lists.ccs.neu.edu 22:44:08 and/or eli 22:44:36 eli will do for now. I'll see who shows up at the next talk. 22:44:54 eli: when can you confirm room availability? 22:45:45 -!- hotblack23 [n=jh@p5B05471F.dip.t-dialin.net] has quit ["Leaving."] 22:46:27 -!- jrtayloriv [n=jrt4@cpe-69-205-162-163.stny.res.rr.com] has quit [Read error: 110 (Connection timed out)] 22:46:54 jrtayloriv [n=jrt4@66.24.239.105] has joined #scheme 22:50:00 Weird, paredit is adding stuff like "[PD]" when I hit down on a differen't computer... 22:50:04 Sound familiar at all? 22:51:19 Nope. 22:51:31 Are you sure it's paredit's doing? 22:52:14 -!- Adman65_ is now known as Adman65 22:52:32 -!- Fare [n=Fare@ita4fw1.itasoftware.com] has quit ["Leaving"] 22:52:36 I know it's related 22:52:44 Why? 22:52:45 it starts happening when I turn on paredit-mode 22:52:49 and stops when I turn it off 22:52:55 OK. 22:52:59 What does `C-h c ' say? 22:57:38 It just puts an OB into the buffer 22:57:51 btw it was an [OB] not a [PD] before 22:58:03 c-h k down gives me this though 22:58:17 ESC runs the command (lambda (prefix) (interactive "P") 22:58:21 (paredit-open-square)), which is an interactive Lisp function. 22:58:24 It is bound to ESC. 22:59:47 -!- jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Read error: 113 (No route to host)] 23:00:21 What have you done with paredit-mode-map? 23:01:29 Arelius, Riastradh: sounds like there is a binding for `ESC [', and `function-key-map' is not set right. 23:02:24 minion: memo for Fare: it'll probably take a day or two to get a reply. 23:02:25 Remembered. I'll tell Fare when he/she/it next speaks. 23:02:32 Arelius pasted "paredit-mode-map" at http://paste.lisp.org/display/87200 23:02:38 jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 23:03:08 What you have done with paredit-mode-map, Arelius, is to rebind ESC, which is the same as C-[. 23:03:32 (Also, all your commands ignore the prefix argument.) 23:04:15 Hrm, I see 23:08:23 -!- samth [n=samth@nomad.ccs.neu.edu] has quit [Remote closed the connection] 23:09:11 samth [n=samth@129.10.110.45] has joined #scheme 23:09:36 -!- samth [n=samth@129.10.110.45] has quit [Client Quit] 23:16:05 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 23:16:53 -!- foof [n=user@dn157-046.naist.jp] has quit [Read error: 110 (Connection timed out)] 23:24:09 does anyone know a good resource to explain just what's wrong with fexprs? 23:25:17 nothere [n=nothere4@98.14.187.196] has joined #scheme 23:28:41 -!- mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit ["spotify:album:3rAG3kbF5oQSeOzWqbTTal"] 23:28:55 I mean... far as I know this isn't all too outrageous: https://synx.us.to/code/scheme/fexpr.ss 23:29:04 so I must be understanding something wrong about it. 23:29:22 Adamant [n=Adamant@unaffiliated/adamant] has joined #scheme 23:31:15 hm. ok, that appears to be the wrong approach. 23:32:08 I'm still looking at the "application specific modules directory" issue...from the google results I"m getting, this is a FAQ, but I still can't find what I consider a clean solution. 23:32:23 hellos. Question: suppose I have a set of scheme files that require each other in a chain, so foo.ss has (require "bar.ss") and bar.ss has (require "end.ss"). As I understand it, if bar.ss then has (provide (all-from-out "end.ss")) the foo.ss can refer directly to things defined in end.ss. This all works fine for me, until end.ss provides the SQLite library from Planet... bar.ss can use it as expected, but foo.ss cannot. Help please? 23:32:28 -!- MrFahrenheit [n=RageOfTh@users-38-89.vinet.ba] has quit [Read error: 104 (Connection reset by peer)] 23:32:41 MrFahrenheit [n=RageOfTh@users-38-89.vinet.ba] has joined #scheme 23:33:31 The solutions I see are to put it under my personal collections directory (not acceptable; I want it in the same tree as the code so that it's in the same git repos. 23:34:13 ) or, alternatively, to wrap all relevant calls in a "(parametize ...)" statement. 23:34:33 also not practical once you have a non-trivial amount of code. 23:34:57 or, finally, to put the code on planet--not going to fly for closed-source business code. 23:35:35 any thoughts? 23:36:12 oh, or to use relative paths, but then it becomes impossible to move files around. 23:38:40 sstrickl [n=sstrickl@pool-151-199-30-68.bos.east.verizon.net] has joined #scheme 23:40:22 segoe [n=segoe@62.32.133.51] has joined #scheme 23:45:07 synx: what are you expecting that to do that it isn't, or vice versa? 23:45:48 schemer999 [n=tmilford@76.89.231.7] has joined #scheme 23:46:09 for me, it just prints 1 2 3, as I would have expected. 23:48:19 Yes dstorrs but I was hearing people had "fexpr flashbacks" on the r6rs list, and I inferred that there was something extra tricky about fexprs. All I can find about them is that they're procedures whose arguments are passed unevaluated. 23:50:47 *shrug* dunno. What you've got certainly seems straightforward. Maybe they are thinking to times that they have done particularly convoluted stuff, 23:50:58 then lost track of what was eval'd and what wasn't? 23:51:23 I can imagine that sometimes being a tricky bug to track down 23:52:11 synx: any thoughts on how to deal with the application-specific collections dir question I was posing? 23:54:22 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme