00:05:50 -!- mongooseWA [n=mongoose@c-24-18-243-100.hsd1.wa.comcast.net] has quit [] 00:07:50 mooooo [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 00:08:16 -!- MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has quit [Nick collision from services.] 00:08:23 -!- mooooo is now known as MononcQc 00:09:43 kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has joined #scheme 00:10:36 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 00:13:46 dysinger_ [n=tim@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 00:39:24 -!- dysinger [n=tim@71-20-35-99.war.clearwire-wmx.net] has quit [Connection timed out] 00:39:28 -!- dysinger_ is now known as dysinger 00:45:28 zachb [n=zachb@c-76-22-197-170.hsd1.ky.comcast.net] has joined #scheme 00:54:37 I need to display a background image on a PLT Scheme frame. 00:54:41 Any ideas? 00:55:02 rudybot: eval (define x 0) 00:55:40 rudybot: eval (define non-strict (lambda () (begin (set! x (+ x 1)) x))) 00:56:11 rudybot: eval (define ez-mode (delay (begin (set! x (+ x 1)) x))) 00:56:29 rudybot: eval (non-strict) (non-strict) 00:56:30 synx: ; Value: 2 00:56:42 rudybot: eval (list (ez-mode) (ez-mode)) 00:56:43 synx: error: procedure application: expected procedure, given: # (no arguments) 00:56:58 rudybot: eval (list (force ez-mode) (force ez-mode)) 00:56:58 synx: ; Value: (3 3) 00:57:05 rudybot: eval (list (non-strict) (non-strict)) 00:57:05 synx: ; Value: (4 5) 00:57:10 rudybot: eval (list (force ez-mode) (force ez-mode)) 00:57:10 synx: ; Value: (3 3) 00:57:37 Is that for the background image? 00:57:47 If so, is there an easier way? 01:01:20 -!- nAgoHaK [n=nagohack@unaffiliated/nagohak] has quit ["WeeChat 0.2.6.3"] 01:08:30 Anyone using typed scheme in PLT? 01:08:55 I was wondering if there's a natural analogue for a Tuple in typed scheme that i'm not thinking of 01:11:11 -!- Nshag [i=user@Mix-Orleans-106-2-199.w193-248.abo.wanadoo.fr] has quit ["Quitte"] 01:14:11 I think that's what List is for 01:15:01 Yes, in scheme. But in typed scheme its Listof String - uniform element type lists 01:16:17 -!- Axioplase_ is now known as Axioplase 01:17:36 http://doc.plt-scheme.org/ts-reference/index.html#(form._((lib._typed-scheme/main..ss)._.List)) 01:26:05 QinGW [n=wangqing@203.86.89.226] has joined #scheme 01:27:12 Yay! I think that's it - Thanks! 01:27:33 (Weird to use List though, IMHO, given it's Scheme ....) 01:27:56 exxxd34 [n=aseas65x@p4241-ipbfp1101fukuokachu.fukuoka.ocn.ne.jp] has joined #scheme 01:31:29 -!- mrsolo [n=mrsolo@nat/yahoo/x-idybrdlokezovmil] has quit ["Leaving"] 01:36:07 jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has joined #scheme 01:41:56 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 01:42:06 -!- zachb [n=zachb@c-76-22-197-170.hsd1.ky.comcast.net] has quit ["http://irc2go.com/"] 01:48:45 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 01:49:50 -!- MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has quit ["DOWNLOADING NEXT VERSION OF INTERNET"] 01:52:04 -!- jonrafkind [n=jon@155.98.68.48] has quit [Read error: 148 (No route to host)] 01:54:27 perdiy [n=perdix@sxemacs/devel/perdix] has joined #scheme 02:00:09 mongooseWA [n=mongoose@c-24-18-243-100.hsd1.wa.comcast.net] has joined #scheme 02:05:28 -!- sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 02:06:43 -!- mongooseWA [n=mongoose@c-24-18-243-100.hsd1.wa.comcast.net] has quit [] 02:08:47 jonrafkind [n=jon@98.202.86.149] has joined #scheme 02:09:32 -!- perdix [n=perdix@sxemacs/devel/perdix] has quit [Read error: 110 (Connection timed out)] 02:09:33 -!- perdiy is now known as perdix 02:13:34 *jcowan* unvanishes all the more cautiously 02:18:22 -!- copumpkin [n=pumpkin@129.170.241.32] has quit [Read error: 110 (Connection timed out)] 02:22:02 sphex_ [n=nobody@74.56.185.239] has joined #scheme 02:23:52 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 02:25:04 -!- dysinger [n=tim@71-20-35-99.war.clearwire-wmx.net] has quit [Connection timed out] 02:29:14 Lemonator [n=kniu@128.2.16.211] has joined #scheme 02:30:03 -!- kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has quit [anthony.freenode.net irc.freenode.net] 02:30:03 -!- Fade [i=fade@outrider.deepsky.com] has quit [anthony.freenode.net irc.freenode.net] 02:30:03 -!- peddie [n=peddie@c-67-170-201-38.hsd1.ca.comcast.net] has quit [anthony.freenode.net irc.freenode.net] 02:30:03 -!- specbot [n=specbot@common-lisp.net] has quit [anthony.freenode.net irc.freenode.net] 02:30:03 -!- hosh [n=hosh@c-71-199-176-82.hsd1.ga.comcast.net] has quit [anthony.freenode.net irc.freenode.net] 02:30:03 -!- poucet [n=poucet@li23-146.members.linode.com] has quit [anthony.freenode.net irc.freenode.net] 02:30:03 -!- kazzmir [n=kazzmir@98.202.86.149] has quit [anthony.freenode.net irc.freenode.net] 02:31:03 copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has joined #scheme 02:32:31 -!- sphex_ [n=nobody@74.56.185.239] has quit [Read error: 145 (Connection timed out)] 02:36:02 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 02:36:02 Fade [i=fade@outrider.deepsky.com] has joined #scheme 02:36:02 peddie [n=peddie@c-67-170-201-38.hsd1.ca.comcast.net] has joined #scheme 02:36:02 specbot [n=specbot@common-lisp.net] has joined #scheme 02:36:02 hosh [n=hosh@c-71-199-176-82.hsd1.ga.comcast.net] has joined #scheme 02:36:02 poucet [n=poucet@li23-146.members.linode.com] has joined #scheme 02:36:02 kazzmir [n=kazzmir@98.202.86.149] has joined #scheme 02:37:41 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 02:45:44 -!- rapacity [n=prwg@unaffiliated/rapacity] has quit [""] 02:47:02 sphex_ [n=nobody@74.56.185.239] has joined #scheme 02:48:39 merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has joined #scheme 02:48:43 gnomon: I'd have said "metonomy" too. Honest 02:49:10 *jcowan* has always suspected it. 02:50:24 hdevalence [n=hdevalen@bas4-kitchener06-1128762359.dsl.bell.ca] has joined #scheme 02:51:37 I'm compiling PLT scheme on 64-bit linux, and I get a ton of warnings about "cast from pointer to integer of different size" in jit.c. Will this cause problems? 02:51:59 If a Scheme provides exit, should that just exit, or should it invoke any pending after-thunks from dynamic-wind? 02:52:36 hdevalence, make check 02:52:47 Or make test, whichever they call it 02:52:59 tjafk1 [n=timj@e176209202.adsl.alicedsl.de] has joined #scheme 02:53:12 OK 02:53:28 Nothing to do with scheme really 02:54:10 The latter, jcowan. 02:54:15 that's true 02:54:29 MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 02:54:32 I have just been playing with it so far, but it's pretty neat 02:54:47 Riastradh: Tell me why 02:55:49 Nah, it's been a hard day's night. 02:55:57 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 02:56:53 ...or: Exiting the process is merely transferring control out of the process. 02:57:34 -!- exxxd34 [n=aseas65x@p4241-ipbfp1101fukuokachu.fukuoka.ocn.ne.jp] has quit ["Leaving..."] 02:59:45 -!- bweaver [n=user@c-68-60-0-190.hsd1.tn.comcast.net] has quit [Remote closed the connection] 03:00:09 It may be worth one's while to have an analogue of C's _Exit. 03:00:30 The naming scheme for these operations is not very consistent between Schemes, though. 03:00:45 Cause hdevalence's scheme to dump core by making it do a round-trip pointer conversion 03:00:48 This exact issue came up in the context of CL on imp-hackers a little while ago. I proposed having a keyword argument to control this behavior; for instance, if I'm trying to exit from an interactive debugger and surrounding UNWIND-PROTECT forms are throwing errors, I'd like an option to exit immediately. 03:01:03 And wrap it in a procedure 03:01:36 No consensus was ultimately reached on the interface, though I think the need for an immediate-exit option was agreed upon. 03:01:47 I think that sensible names are EXIT and %EXIT. 03:02:08 import posix, send sigkill to self 03:02:30 (Some nice interpreters might catch that. I dunno. Try sigterm.) 03:02:46 (SIGKILL cannot be caught.) 03:03:05 In that case, should %exit call _exit() whereas exit() would run thunks and call exit()? 03:03:08 I think that (EXIT :IMMEDIATE T) is sensible. :-) 03:03:45 I mean, if you are running thunks, C thunks should get their shot too. 03:03:52 Yes, jcowan. 03:03:54 Jafet: You are babbling. Please stop. 03:04:01 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 03:05:13 I'm also wondering what the rationale is for separating loading (or let us say requiring, to exclude issues of redundant multiple loads) vs. importing. 03:05:24 Should not importing imply requiring? 03:05:30 Effects vs bindings. 03:05:43 Granted, but when does it make sense to import what has not been loaded? 03:05:47 Never. 03:06:00 Unless, of course, one admits mutually referential modules. 03:06:04 Then to have import call require seems plausible to me. 03:06:09 Does one, generally? 03:06:15 That was my plan. 03:06:30 In MIT Scheme? Yes. In T? Yes. In any other Scheme system? Not to my knowledge. 03:08:12 Chicken doesnot 03:08:16 doesn't, even 03:08:58 -!- tjafk2 [n=timj@e176211172.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:09:34 I know that Chris Hanson wants mutually referential modules, but I think that he is (in) a small minority. 03:10:47 I think that's a mistake. 03:11:06 That Chris Hanson wants them, or that he is (in) a small minority? 03:11:44 -!- luz [n=davids@189.122.90.116] has quit ["Client exiting"] 03:12:11 How are issues of ordering handled when loading mutually referential modules? 03:12:20 Carefully. 03:12:29 Hmm... 03:12:44 That's a very good reply, but I'm not sure it's an answer. 03:12:53 You're asking the wrong person, I'm afraid. 03:13:17 -!- dmoerner [n=dmr@89-151.res.pomona.edu] has quit ["Leaving"] 03:13:33 Is there a resource discussing this? 03:13:57 I think mutually recursive modules are a mistake. 03:14:33 Not so much in allowing them, but wanting them for a particular use usually indicates poor factoring. 03:14:46 The best answer I can give is that any set of modules must be grouped into strongly connected components by the programmer so that he can write the nodes in each component in the desired order of effects. 03:14:56 I kind of like how PLT handles mutually dependent modules. It uses what they call units. 03:15:38 ...and then the compiler can compile each strongly connected component as a unit. 03:16:02 I used units once to solve a problem of mutually recursive codecs. 03:16:50 (This is what one does with PLT's units, only the situation is simplified because units don't involve macros.) 03:16:54 synx: so, why not stick the whole SCC of modules into one? 03:17:06 SCC? 03:17:10 michaelw, because you may want namespace boundaries between the nodes of the component. 03:17:17 strongly connected component 03:17:42 Implement modules, using units? o.O 03:17:58 synx, I think michaelw is using the term `module' loosely, not in the precise sense of PLT. 03:19:06 I find the difference in syntax between modules and units is kind of frustrating at times. 03:19:08 sorry for my ignorance, what is the PLT (Scheme or acronym, BTW?) sense? 03:19:16 (Chicken also uses the term `unit' to mean something very different.) 03:19:34 michaelw, in PLT Scheme, `module' and `unit' are both technical terms, both related to the organization of programs, but at different levels. 03:19:48 With a module, you list which symbols you provide in the file, but with units you have to make a special second file with a special suffix that contains which symbols you provide. 03:20:18 But then again with units, more than one unit can provide the same signature, so having it in a separate file allows for that. 03:20:43 Modules do not have separate interfaces and implementations; units and signatures do, signatures being interfaces and units being implementations. The signature contains sufficient information for any code needing an implementation of that signature. 03:21:01 Sorry, I meant: A signature contains sufficient implementation to compile any code needing an implementation of that signature. 03:21:29 so, units are what's called "functors" in SML? 03:21:35 Not quite, michaelw. 03:21:38 modules don't have completely coupled interface and implementation. Otherwise you'd be going (provide (all-defined-out)) explicitly! 03:21:54 They sometimes serve a similar purpose, but there is no straightforward mapping between SML's module system and PLT's `module' systems. 03:22:11 synx, you cannot find a module's interface without compiling the module. 03:22:13 ...implicitly I mean 03:22:36 That's true Riastradh. Sometimes I wish I could. 03:22:42 michaelw, perhaps a better analogy is that signatures correspond with C header files, and units correspond with C objects. 03:23:03 yeah C is the only language I know that implements anything like PLT's units. 03:23:04 michaelw, the main difference is that units enforce namespace separation, whereas C does not. 03:23:08 Oh, and java, but... 03:23:12 I see 03:23:16 Chicken's analogue of interfaces is import libraries. 03:23:51 bah, a twisty little maze of terminology, all alike but not quite... 03:24:07 those are interfaces on the compiled side, but you still can't get the interface to a module in chicken without compiling its implementation. 03:24:16 There's no escaping being a terminological buccaneer, michaelw. 03:24:55 synx: in the sense that you must run it through the compiler, yes; in the sense that you must generate object code, no. 03:25:13 plugh 03:25:13 In principle there could be a separate program for the purpose. 03:25:39 But the main point is that Chicken doesn't allow interface injection. 03:26:06 Interface injection? 03:26:06 Well with PLT units, if you compile the "signature" file you can only get an import library, and nothing else needs to even be lexed. 03:27:22 but what does it boil down to? All I'd like is to declare signatures (interfaces?), and "provides" and "depends" relations for implementations. And namespace support. 03:28:28 michaelw, what is your notion of a `signature' or `interface'? 03:28:39 It is all the information necessary to compile a client of the signature? 03:28:51 This includes, mind you, the complete definitions of any macros in the signature. 03:28:54 jcowan: "Import libraries?" 03:29:32 -!- rcy` [n=rcy@d154-20-140-113.bchsia.telus.net] has quit [Read error: 60 (Operation timed out)] 03:29:34 I just use modules michaelw, and they solve most of my problems. In the rare case that I need things modules can't provide (ha) I used units. 03:30:20 yeah you can't define a syntax transformer in a unit, and expect something that only has the signature to be able to use that transformer. 03:30:30 foof: a compiled representation of the syntax parts of a module, used for separate compilation. 03:31:08 Essentially a header file, except you don't have to (get to) write them yourself. 03:31:31 I mean... syntax transformers can be exported by a unit, but (define-syntax) doesn't produce 1st class values. 03:32:13 If by syntax transformers you mean syntactic bindings created by DEFINE-SYNTAX, then that's not right -- units cannot export syntactic bindings. They must be written in the signature. 03:32:16 Riastradh: yes (without having thought through the consequences) 03:32:55 No I mean syntax transformers as in the procedures returned from (syntax-rules) 03:32:55 michaelw, OK. That means that you can't put macro definitions with the procedures that their expansions use, for example; you must move all macro definitions to signatures. 03:32:56 dmoerner [n=dmr@88-182.res.pomona.edu] has joined #scheme 03:32:59 synx, OK. 03:33:09 I dunno what define-syntax does with 'em. It's magic smoke. 03:33:52 Riastradh: or into separate "macro modules"; they extend the language, so that makes a certain amount of sense to me 03:34:23 wait, I used "modules" there, let's see whether I can rephrase that without 03:34:29 _Pb [n=Pb@75.131.194.186] has joined #scheme 03:34:43 Let's prefix every technical term by the authority that defines it. 03:34:53 That is, every module-system-related technical term. 03:35:15 Otherwise, let's let the words have their general meanings, free of particular technical associations. 03:35:28 That Riastradh:plan gets old jcowan:fast. 03:36:50 Not really. A PLT module is a particular realization of the general concept of modules; a PLT unit is another one. PLT modules do not have separate interfaces; PLT units do, called PLT signatures. These are different from SML signatures in that SML signatures are not used with run-time values in SML, but rather with SML structures, which are second-class entities, unlike PLT units, which are first-class. 03:37:20 And SML signatures are pretty close to Scheme48 interfaces. 03:37:39 You can construct a PLT unit at run time (other than by running the compiler)? 03:37:43 Yes. 03:37:47 PLT units are run-time values. 03:38:38 sort of... 03:39:01 Not `sort of'. 03:39:06 PLT units are first-class values at run-time. 03:39:32 I still have yet to figure out how to link run-time units. They have non-first-class static information when you use #lang unit or define-unit, that I don't fully understand. 03:39:55 We call some things first-class that are really second-class, like characters and (). 03:45:22 DEFINE-UNIT syntactically associates signatures with the unit's name, synx, so that other macros to which you supply the unit's name need not also require you to specify the signature. 03:45:58 That is merely a bit of notational convenience for macros that need to know signatures; units are still first-class values at run-time. 03:46:37 I've never only specified a unit's name... 03:46:51 I've always specified an identifier with a value. 03:46:56 ? 03:47:29 When using define-unit, you have to require the signature files, and (import) and (export) the signatures associated with that unit. 03:47:52 So the signatures associated with a unit should be contained within the value that is that unit. But they're not... 03:48:16 Yes. But when using COMPOUND-UNIT/INFER with units that were created with DEFINE-UNIT, you can omit naming the signatures. 03:48:28 So you have to require the unit file, then require the signature file, then specify you're linking that unit according to that signature, even though the unit wouldn't link with any other signatures. 03:48:39 ...to use units as first class values. 03:50:17 Unless maybe units don't import or export anything, and that's something specific to the define-unit syntax? 03:50:42 no that's not it. Hm... 03:50:42 As I said, this is merely a bit of notational convenience for units that you refer to by names defined with DEFINE-UNIT, such as when you have a module that requires a number of unit-defining modules and links them. 03:51:20 If, on the other hand, you write a procedure that has some parameters for units, there is no static information about the variables for those parameters. 03:51:50 That is, there is no static information associated with the variables for those parameters about the signatures of the units supplied for those parameters. 03:52:14 In that case, if you want to link those units, you must tell COMPOUND-UNIT what signatures they have. 03:53:51 Well I sure can't figure out how to link any units that don't have that "convenience". It knows enough to tell me it can't find the something^ signature, but it doesn't know enough to find that I specified a unit that exports the something^ signature right there goddamn it 03:55:21 If a unit exports something^ I don't see why I'd have to specify "Oh by the way something@ exports something^" if I'm already using something@. I just don't understand... 03:55:21 Can you be more specific? For example, by showing some code that you think should link some units, but fails to do so? 03:56:25 Well, sure I could throw something up. Maybe you could tell me what's unworkable about it. 03:57:29 You'll need a basin, or it will be unworkable indeed. 03:59:03 -!- dmoerner [n=dmr@88-182.res.pomona.edu] has quit [Read error: 110 (Connection timed out)] 04:00:24 *offby1* thinks of Sweeney Todd 04:01:18 -!- _Pb [n=Pb@75.131.194.186] has quit ["Leaving"] 04:03:51 dysinger [n=tim@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 04:04:08 https://synx.us.to/code/scheme/unit-fail4/test.ss 04:04:11 *jcowan* thinks of holding up his daughter's friend's head the other day after an ... unfortunate decision on his part. 04:06:48 *offby1* backs away slowly 04:07:44 synx, you realize that that doesn't match the syntax of COMPOUND-UNIT, right? 04:09:16 synx, you can use COMPOUND-UNIT/INFER, but you'll have to change the link declaration of BAZ-PROVIDER, because although COMPOUND-UNIT/INFER knows about the signatures of FOOBAR@ and BAZ-EATER@ due to their having been defined with DEFINE-UNIT, it doesn't know the signature of BAZ-PROVIDER (which I am guessing should be BAZ^). 04:09:53 Note, by the way, that it matters that you refer to FOOBAR@ and BAZ-EATER@ by those names -- otherwise, the fact that they were created with DEFINE-UNIT is irrelevant. 04:10:13 offby1: Don't worry. Unless you have been doing stupid stunts with whole bottles of gin, I doubt I'll be called upon to provide you with a similar service. 04:10:22 All that anyone (but you) knows about the name BAZ-PROVIDER in MAKE-FOO-THING is that it names a variable. 04:13:53 Riastradh: Well baz@ contains an export clause that specifies baz^ so once compound unit examines the value contained in baz-provider, it should find baz^ I say. 04:14:16 And no I can't figure out the syntax of compound-unit 04:15:15 "The right-hand side of a link declaration specifies the imports to be supplied to the unit produced by the corresponding unit-expr." just somehow didn't make crystal clear sense to me. 04:16:14 Or why you have to assign signatures arbitrary names like A and B in the examples, to somehow apply them to units that already import them. 04:16:18 I believe COMPOUND-UNIT needs signature information at compile-time, not at run-time. 04:17:12 I may have brought this up before, but I rather wonder if it wouldn't be better to export things from modules with special-purpose definers rather than with export clauses. 04:17:31 oh, well... that would explain why it can't examine the run-time value of units. 04:17:31 No, it wouldn't, jcowan, because those change the source code of the module. 04:17:43 value of bindings, which happen to be units 04:17:59 synx, concerning the sentence you quoted: 04:18:44 jcowan: There are some define/provide syntaxes out there. Such as in schematics/schemeunit on planet I think. You could check those if you're interested... 04:19:10 define-(syntax-)for-export, perhaps 04:19:20 synx, recall that units have parameters called their imports. When you want to use a unit, you must supply arguments for those parameters -- that is, you must supply the units that it will import. The right-hand side of a LINK declaration is where you specify this. 04:21:10 Riastradh: A parameter is a procedure that takes a single first class value, sort of like a dynamic variable. I don't see how a non-first-class variable like a signature could be supplied to any sort of parameter. 04:21:42 ...no, I mean `parameter' in the usual sense, as in the parameter of a function, not in the sense of PLT parameters. 04:22:05 (The word `parameter' for `first-class identifier of a dynamically scoped resource' was an unfortunate choice.) 04:23:21 Oh, I usually call those both arguments. Anyway, so I understand if I import baz^ to use that unit I need to find another unit that exports baz^ to link with it. I suppose that's what they mean by "supply" an "import", is to export it? 04:23:55 To supply a unit A to another unit B, A should export a signature that B imports. 04:32:07 Yes... 04:32:58 but since compound-unit can't examine run-time values, you need to redundantly specify that yes, unit A exports signature A^ and unit B imports signatures A^, anywhere you link them together. 04:33:35 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 04:33:36 You could tell that implicitly at runtime, or at syntax expansion if you use define-unit, but if the unit's passed as a parameter, you explicitly specify everything. 04:36:14 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 04:36:18 -!- Summermute [n=scott@68.55.207.173] has quit [] 04:36:36 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 04:41:18 It's not that COMPOUND-UNIT can't examine run-time values (it can); it's rather that it computes most of the linkage information at compile-time. 04:42:43 (Actually, now that I think about it, I'm not sure whether signature information is available at all at run-time.) 04:49:21 boringwall [n=boringwa@c-68-54-140-150.hsd1.pa.comcast.net] has joined #scheme 04:52:04 -!- ski_ [n=md9slj@remote1.student.chalmers.se] has quit ["Lost terminal"] 04:52:46 If signature information wasn't available at all outside of a define-unit clause, then (import) and (export) should be part of that define-unit syntax, and not unit in general. 04:54:19 -!- hdevalence [n=hdevalen@bas4-kitchener06-1128762359.dsl.bell.ca] has left #scheme 04:54:22 (unit ... (import baz^) ...) doesn't make sense if you have to specify that it imports baz^ any time you use it. 04:54:47 ski_ [n=md9slj@remote1.student.chalmers.se] has joined #scheme 04:54:52 Not exactly. The layout, and perhaps identity, of a signature may be available at run-time, but not necessarily the map from its names to positions in its layout, for example. 04:55:11 layout? identity? what are those things? 04:55:53 rcy [n=rcy@d154-20-140-113.bchsia.telus.net] has joined #scheme 04:56:16 you mean like it could say "I import signature 1426934," but not tell you what names are in that signature? 04:56:50 An instantiation of a unit might be represented as a collection of vectors of values, each vector corresponding to a signature and ordered according to the order of names in the signature. 04:57:51 To find the value in an instantiated unit associated with a particular name from one of its exported signatures, you must have the signature, then, not just the instantiated unit. And the map from the name to its position might exist only at compile-time. 04:58:55 For checking sanity, units may additionally have associated with them some identifiers unique to the signatures that they import and export. 04:59:04 These identifiers need have no structural information about the signatures, however. 05:00:11 -!- arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has left #scheme 05:00:30 So say unit foo@ might export bar^ which includes the identifier "foobar". Say foo@ defines "foobar" to be some procedure. 05:00:33 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 05:01:37 With your suggested valid implementation, if you examined foo@ you would find that element 0 of signature 1 is some procedure, but you couldn't tell that that procedure was supposed to be foobar of signature bar^, without the signature itself. 05:02:06 arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has joined #scheme 05:02:23 So if another module imports bar^, a compound unit linking them together wouldn't be able to infer that foo@ exports bar^, since all it can see is foo exports the signature as a vector whose 0th element is some procedure. 05:02:25 No, element 0 of the vector corresponding to BAR^ of some instantiation of FOO@ is some procedure. 05:03:36 If you have the unique identifier of BAR^, you could also tell whether FOO@ exported BAR^. But you couldn't, at run-time, go from the symbol FOOBAR and the unit FOO@ to that procedure. 05:03:58 (What I have been talking about for a little while, by the way, is purely hypothetical -- a guess about the way that this could be implemented.) 05:04:01 -!- jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has quit ["Leaving"] 05:04:19 -!- arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has left #scheme 05:04:29 well sure... just that there are ways to implement units that don't fit with my unreasonable expectations. 05:05:51 Anyway I've had about enough of thinking about it. 05:10:18 (Argh, this machine just turned off when it ran out of battery power, rather than going to sleep.) 05:11:07 Anyway, I was about to add to my previous message: The actual implementation is rather too unpleasant for me to care to find out how it actually works. 05:11:32 -!- foof [n=user@dn157-046.naist.jp] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 05:21:30 Mr_Awesome_ [n=eric@c-98-212-143-245.hsd1.il.comcast.net] has joined #scheme 05:23:04 -!- MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has quit ["DOWNLOADING LATEST VERSION OF THE INTERNET"] 05:24:09 zbigniew, so, how's the innernet been binging you since you saw that video? 05:36:24 incubot: "once and awhile" contains two solecisms, apparently; which doesn't, however, prevent it from attaining 1.1 million hits 05:36:28 So, is it reasonable to use LET in syntax-rules as I did above, to prevent the record procedures from spilling out into the containing environment (which requires Riastradh's patch)? Or is that a terrible kludge and I should just accept it's impossible under syntactic-closures? 05:36:57 Man, it has been binging me like non-stop. I am exhausted. 05:37:13 -!- Mr_Awesome [n=eric@c-98-212-143-245.hsd1.il.comcast.net] has quit [Read error: 110 (Connection timed out)] 05:37:16 incubot: stupid 'tubes 05:37:19 PltScheme runs in OSX, as does its editor/environment DrScheme. If you prefer to kick it old school so that people looking over your shoulder wonder if your computer runs on vacuum tubes, you can use Emacs as an editor with some ease. 05:37:21 Has klutometis yet enjoyed being binged by the innernet? 05:37:30 Excuse me: ...being bung by the innernet? 05:37:44 Can't... do... it... to... him..... 05:39:59 Riastradh: sounds painful 05:40:32 Oh, it is, and you really do not want to experience it. 05:41:29 is it some evil microsoft genius that hath wrought a simultaneously unforgettable yet irriting jingle? 05:41:49 I think `genius' is dignifying it a trifle much. 05:41:53 under no... circumstances... should you go... to http://www.youtube.com/watch?v=h9DBynJUCS4 05:42:44 needs of many... outweigh needs of the few... or the one... 05:43:10 *zbigniew* collapses amidst the hard radiation 05:43:13 (bing!) 05:43:41 Context: It's a `music' video (at least, that, I think, was the intent, whether or not you agree with calling it `music') by a repeat offender of viral YouTube video attempts, as a submission to a contest by Microsoft to create a viral YouTube video about Bing. 05:43:56 zbigniew: damn it, man; you had to let the feline out of the bag 05:44:14 jesus, i watched it again 05:44:15 before i become a bing zombie, though, i'd like to impart that bing is a synonym for subcutaneous injection 05:44:53 is that why i feel a little sick 05:45:13 -!- jonrafkind [n=jon@98.202.86.149] has quit [Read error: 110 (Connection timed out)] 05:46:51 looks like jonathan is doing the constipation dance 05:46:56 ... maybe that's the viral part of the video 05:47:07 no wonder, then, that he took the quantity over quality approach to songwriting 05:47:23 -!- merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has quit [Read error: 110 (Connection timed out)] 05:47:35 `Bing' is also now a synonym for `obnoxious or catastrophic failure', and a euphemism for various vulgar bodily parts and functions (or a vulgar euphemism for various bodily parts and functions). 05:49:30 Riastradh: i thought that zune (with its brown exterior and squirt analogy) had already achieved the latter 05:49:45 i guess microsoft is going for a many-to-one vulgarity mapping 05:50:00 someone at microsoft has a 4L.com fetish, btw 05:50:16 Since when are vulgar euphemisms a scarce resource? 05:51:35 true, true; though english is relatively poor compared to some of the slavic languages, i've heard 05:54:46 English now has bing, though. Slavic languages tend not even to have a word-final eng sound. 05:57:14 -!- dysinger [n=tim@71-20-35-99.war.clearwire-wmx.net] has quit [] 05:58:18 Riastradh: actually, you're right; not even the russians attempt a cyrillic transliteration: . 06:02:05 merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has joined #scheme 06:12:58 ASau [n=user@77.246.230.144] has joined #scheme 06:20:10 -!- merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has quit [Read error: 110 (Connection timed out)] 06:20:37 *copumpkin* chuckles at an inflammatory comment he posted on reddit 06:29:44 HG` [n=HG@85.8.89.202] has joined #scheme 06:33:18 -!- ejs [n=eugen@163-47-178-94.pool.ukrtel.net] has quit [Read error: 110 (Connection timed out)] 06:41:38 copumpkin: link or it didn't happen 06:42:33 http://www.reddit.com/r/programming/comments/9fs6o/hey_reddit_lets_make_a_guide_on_what_programming/c0cn7sl 06:42:36 -rudybot:#scheme- http://tinyurl.com/l9pt7w 06:43:34 -!- boringwall [n=boringwa@c-68-54-140-150.hsd1.pa.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 06:43:53 mmc [n=mima@esprx01x.nokia.com] has joined #scheme 06:48:09 MrFahrenheit [n=RageOfTh@80.65.72.29] has joined #scheme 06:52:46 hotblack23 [n=jh@p5B057E33.dip.t-dialin.net] has joined #scheme 06:53:19 -!- hotblack23 [n=jh@p5B057E33.dip.t-dialin.net] has quit [Client Quit] 06:59:05 mongooseWA [n=mongoose@c-24-18-243-100.hsd1.wa.comcast.net] has joined #scheme 07:00:39 -!- mongooseWA [n=mongoose@c-24-18-243-100.hsd1.wa.comcast.net] has quit [Client Quit] 07:05:06 -!- peddie [n=peddie@c-67-170-201-38.hsd1.ca.comcast.net] has quit [Read error: 110 (Connection timed out)] 07:17:14 i don't understand what the difference between (cond) and (if) 07:17:21 besides syntax 07:17:54 they're pretty much the same to me except that (cond) evaluates each clause until true 07:21:36 masm [n=masm@bl8-57-26.dsl.telepac.pt] has joined #scheme 07:31:05 copumpkin: you mean the famous CLL troll? came across this classic instance: 07:31:07 -rudybot:#scheme- http://tinyurl.com/nzb8eh 07:31:17 hm? 07:31:26 oh, that's not directed to me 07:32:20 klutometis: yeah, he's pretty amazing :) he's managed to piss off just about all the FP communities minus the ocaml one (although he's half-trolling them too now) and the F# one 07:37:43 Piratero: IF is a special case of COND, in some sense 07:40:17 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit [Remote closed the connection] 07:40:43 it's a special form, correct? 07:44:18 well 07:44:30 oh, i think i get it 07:44:35 i have this: 07:45:03 (define (new-if predicate then-clause else-clause) (cond (predicate then-clause) (else else-clause))) 07:45:12 when used, it goes into an infinite loop 07:45:20 could this be because new-if is just an ordinary function? 07:45:50 also, since if cond is a special form (unrestricted), would this mean that it is evaluated differently by the interpreter? 07:47:06 would this have anything to do with applicative/normal order? 07:48:48 Summermute [n=scott@c-68-55-207-173.hsd1.dc.comcast.net] has joined #scheme 07:48:56 Piratero: yes, (cond) and (if) do pretty much the same thing 07:49:01 okay 07:49:14 except, if has a limited case analysis 07:49:29 am i right (what i wrote above)? 07:49:37 Piratero: and yes, both are "special" forms in that they don't evaluate all their arguments immediately. 07:50:03 I wish lisps/schemes would drop if/else in favor of a cond construct 07:50:36 Summermute: I'd say if can be more readable some times 07:51:19 sphex_: would that mean that it's normal order whereas an ordinary function would be evaluated by applicative order? 07:51:22 Also for complicated macrology - uniform test -> expr pairs. Easier to process than if else if else if ..... 07:53:16 Piratero: yeah I guess you could say so 07:53:20 ok 07:55:34 cond also has the same "shape" as case and match 07:56:19 damn, my terminology sucks 07:56:29 is "thus, throwing the procedure in an infinite loop" sound okay? 07:57:01 foof [n=user@dn157-046.naist.jp] has joined #scheme 07:57:23 -!- Bagarn [n=mikl@90.225.86.179] has quit [Read error: 145 (Connection timed out)] 07:58:13 sounds fine 07:58:19 Summermute: wouldn't cond be a bit verbose sometimes? 07:58:21 okie 07:58:24 thanks guys 07:58:38 sure, a little 07:59:05 but then prefix notation is a bit verbose sometimes be we happily live with it 08:01:46 we can make up for any added verbosity by using the eager comprehensions SRFI everywhere possible - cut length of many/most programs in half 08:03:34 Am I the only one for whom gmail is broken? 08:03:46 dunno 08:04:33 or.. OR.. we could make up for the added verbosity by making a special macro for the special case of a cond with only 2 case, one of them an else. hrm.. what to name it...? :p 08:04:49 :-) 08:06:05 Ciao 08:06:09 -!- Summermute [n=scott@c-68-55-207-173.hsd1.dc.comcast.net] has left #scheme 08:06:11 damn, this homework is tough 08:07:36 Piratero: Wrong approach. 08:07:47 i'm wrong? :`( 08:07:56 You need to say "Scheme sucks, it can't even do X" where X is your homework problem. 08:08:11 Then you'll get flamed, along with a half-dozen solutions. 08:08:36 oh 08:08:52 hahah, i'll keep that in mind! 08:09:27 Well, for other languages anyway... we're pretty savy to that here, and your TA may even be lurking. 08:09:29 leppie|work [i=52d2e3c8@gateway/web/freenode/x-ujkcpzkheybpxfwi] has joined #scheme 08:10:11 yeah, most likely 08:10:16 they're watching my every move 08:10:23 Man, gmail sucks, it can't even do mail! 08:10:31 *foof* looks around hopefully 08:15:54 -!- ASau [n=user@77.246.230.144] has quit [Remote closed the connection] 08:16:05 ASau [n=user@77.246.230.144] has joined #scheme 08:16:58 -!- perdix [n=perdix@sxemacs/devel/perdix] has quit ["A cow. A trampoline. Together they fight crime!"] 08:23:06 -!- Khisanth [n=Khisanth@pool-68-237-101-85.ny325.east.verizon.net] has quit ["Leaving"] 08:30:57 Khisanth [n=Khisanth@pool-141-157-244-45.ny325.east.verizon.net] has joined #scheme 08:33:38 foof, it really cannot 08:38:34 Narrenschiff [n=ritchie@mo-rsmitha21.op.umist.ac.uk] has joined #scheme 08:52:46 Nshag [i=user@Mix-Orleans-106-2-201.w193-248.abo.wanadoo.fr] has joined #scheme 09:05:42 -!- Axioplase is now known as Axioplase_ 09:11:14 -!- tjafk1 [n=timj@e176209202.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 09:11:22 tjafk1 [n=timj@e176214196.adsl.alicedsl.de] has joined #scheme 09:14:37 -!- ASau [n=user@77.246.230.144] has quit [Remote closed the connection] 09:14:49 ASau [n=user@77.246.230.144] has joined #scheme 09:17:15 rdd [n=user@c83-250-159-12.bredband.comhem.se] has joined #scheme 09:23:12 ejs [n=eugen@77.222.151.102] has joined #scheme 09:37:23 ejs1 [n=eugen@nat.ironport.com] has joined #scheme 09:38:52 Wow... gmail's support center _doesn't_ _allow_ you to provide any information. 09:40:06 It just asks you for 10 different email addresses, wants to know when you last logged in and what your password is, and gives you a selection of "1) reset password, 2) someone stole my account and 3) other." 09:44:51 -!- ejs [n=eugen@77.222.151.102] has quit [Read error: 110 (Connection timed out)] 09:45:39 finalprefix [n=finalpre@122.182.0.38] has joined #scheme 09:50:38 attila_lendvai [n=ati@adsl-89-134-2-74.monradsl.monornet.hu] has joined #scheme 10:00:21 -!- tessier [n=treed@mail.copilotco.com] has quit [Read error: 110 (Connection timed out)] 10:05:01 QinGW1 [n=wangqing@203.86.89.226] has joined #scheme 10:09:04 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 104 (Connection reset by peer)] 10:09:51 QinGW1 [n=wangqing@203.86.89.226] has joined #scheme 10:10:27 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 145 (Connection timed out)] 10:13:23 "Sorry, we can't restore your account. Click here to re-enter the same information you just entered, or click here to create a new account." 10:13:49 Like I'll ever be using gmail again once I get this sorted out :( 10:22:21 QinGW [n=wangqing@203.86.89.226] has joined #scheme 10:24:22 foof: What happened to your account? 10:24:37 I have NO clue. 10:25:05 My password is valid, I can use other services, but when I log in to gmail it says the account is unavailable. 10:25:53 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 60 (Operation timed out)] 10:26:29 foof: Are you on Windows? Maybe you need a restart? :) 10:26:46 It's a mac, and I restarted this morning :/ 10:28:37 Temporary Error (500) 10:30:08 ouch 10:30:25 Ctrl + F5 10:30:32 and hammer it! 10:30:53 does macs have Ctrl keys even? :p 10:31:50 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit ["Leaving."] 10:32:03 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 10:34:50 OK, there was a different support page where they let me write a description of the problem (or perhaps it's just because I switched to English). 10:35:38 Ah, actually, that makes sense, they may not have the resources to handle problem descriptions written in Japanese. 10:38:38 leppie|work: it's been 3 hours now, and a spare gmail account I have for emergencies works fine, it's clearly specifically a problem with the one account 10:40:15 I need to move synthcode to a more stable server and switch all my mail to that... 10:40:44 But it will be a real pain to switch my mail over if I don't have access to the original gmail account for confirmations :/ 10:42:11 foof: It could be a single server down. 10:42:19 Rather than your account. 10:43:07 See the section "Support Yahoos" here: http://thedailywtf.com/Articles/Microsoft-Vissa,-Hey-Thats-Ours,--More-Support-Stories.aspx , possibly relevant. 10:43:11 -rudybot:#scheme- http://tinyurl.com/l6lp2x 10:47:53 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 104 (Connection reset by peer)] 10:48:46 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 10:49:37 perdix [n=perdix@sxemacs/devel/perdix] has joined #scheme 10:50:23 QinGW [n=wangqing@203.86.89.226] has joined #scheme 10:57:36 mapreduce: It wouldn't be the front-end mail server, but the file server. Since that's distributed, it shouldn't be a problem. 11:05:49 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 11:06:14 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 11:12:40 Edico [n=Edico@unaffiliated/edico] has joined #scheme 11:27:32 -!- Narrenschiff [n=ritchie@mo-rsmitha21.op.umist.ac.uk] has quit [Read error: 110 (Connection timed out)] 11:30:32 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Remote closed the connection] 11:30:45 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 11:34:37 dysinger [n=tim@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 11:43:03 mario-goulart [n=user@201.40.162.47] has joined #scheme 11:47:54 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 12:04:31 thesnowdog_ [i=thesnowd@114.73.166.64] has joined #scheme 12:04:40 -!- thesnowdog [i=thesnowd@122.110.4.231] has quit [Read error: 110 (Connection timed out)] 12:05:29 -!- thesnowdog_ is now known as thesnowdog 12:07:49 -!- annodomini [n=lambda@wikipedia/lambda] has quit [Client Quit] 12:15:03 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 12:31:51 pfo [n=pfo@chello084114049188.14.vie.surfer.at] has joined #scheme 12:32:08 -!- ejs1 [n=eugen@nat.ironport.com] has quit [Read error: 60 (Operation timed out)] 12:34:32 ejs1 [n=eugen@nat.ironport.com] has joined #scheme 12:37:10 alaricsp [n=alaricsp@79.135.115.242] has joined #scheme 12:38:42 annodomini [n=lambda@64.30.3.122] has joined #scheme 12:40:11 -!- leppie|work [i=52d2e3c8@gateway/web/freenode/x-ujkcpzkheybpxfwi] has quit [Ping timeout: 180 seconds] 12:41:06 -!- annodomini [n=lambda@wikipedia/lambda] has quit [Client Quit] 12:41:20 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 131 (Connection reset by peer)] 12:42:47 -!- mreggen [n=mreggen@cm-84.215.28.167.getinternet.no] has quit ["leaving"] 12:43:22 mreggen [n=mreggen@cm-84.215.28.167.getinternet.no] has joined #scheme 12:52:47 -!- rdd [n=user@c83-250-159-12.bredband.comhem.se] has quit [Remote closed the connection] 12:54:26 leppie|work [i=52d2e3c8@gateway/web/freenode/x-zmcxzdhmbiqphnii] has joined #scheme 12:58:52 dysinger_ [n=tim@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 13:05:46 -!- ASau [n=user@77.246.230.144] has quit [Remote closed the connection] 13:05:57 ASau [n=user@77.246.230.144] has joined #scheme 13:07:31 -!- dysinger [n=tim@71-20-35-99.war.clearwire-wmx.net] has quit [Read error: 60 (Operation timed out)] 13:07:31 -!- dysinger_ is now known as dysinger 13:12:23 -!- ASau [n=user@77.246.230.144] has quit [Remote closed the connection] 13:12:34 ASau [n=user@77.246.230.144] has joined #scheme 13:22:14 annodomini [n=lambda@130.189.179.215] has joined #scheme 13:23:18 reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 13:28:21 dysinger_ [n=tim@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 13:29:15 -!- MrFahrenheit [n=RageOfTh@80.65.72.29] has quit [Read error: 60 (Operation timed out)] 13:29:50 edwardk [n=edwardk@32.139.216.7] has joined #scheme 13:30:21 -!- dysinger_ [n=tim@71-20-35-99.war.clearwire-wmx.net] has quit [Client Quit] 13:41:17 bombshelter13_ [n=bombshel@206.80.252.37] has joined #scheme 13:43:17 -!- alaricsp [n=alaricsp@79.135.115.242] has quit [Network is unreachable] 13:44:45 -!- dysinger [n=tim@71-20-35-99.war.clearwire-wmx.net] has quit [Connection timed out] 13:46:44 alaricsp [n=alaricsp@79.135.115.242] has joined #scheme 13:47:00 -!- alaricsp [n=alaricsp@79.135.115.242] has quit [Remote closed the connection] 13:49:33 Yay! My gmail is back! 13:56:58 npe [n=npe@195.207.5.2] has joined #scheme 14:02:01 greboides [n=greboide@189-54-242-137-nd.cpe.vivax.com.br] has joined #scheme 14:03:07 hello i want to create a function that can alias methods but cant figure it out on my own, for instance i want to alias define as definir for example 14:03:07 14:03:44 (define definir define) 14:04:08 Jafet it doesnt work 14:04:32 badger badger mushroom 14:04:40 Why not? 14:04:42 define isnt allowed in a expression context 14:05:07 So, bind definir in a different context? 14:05:10 What is the context? 14:05:39 its like a safe measure i think 14:05:57 the top level one i think 14:05:58 zahcb [n=zahcb@c-76-22-197-170.hsd1.ky.comcast.net] has joined #scheme 14:06:09 Good morning everyone 14:06:15 -!- zahcb is now known as zachb 14:06:43 Jafet: Please stop giving out incorrect answers. 14:06:48 Hmm, so I was wrong then. 14:06:57 define is a special form, I see. 14:07:06 Am I interupting anything? 14:07:13 Jafet: If you can't help, don't add confusion. 14:07:38 greboides: `define' is syntax, so you'll have to define `definir' as syntax as well. 14:07:54 http://lists.r6rs.org/pipermail/r6rs-discuss/2009-September/004625.html 14:08:03 chandler: sure, but i cant figure it out 14:08:07 chandler, I'm sorry, it was allowed in the scheme implementation I use. 14:08:18 Someone needs to attack Joe Marshall for using sorting which is a locale-sensitive operation in Unicode! 14:08:31 foof: I'm sure it will come to that next. 14:08:44 -!- ejs1 [n=eugen@nat.ironport.com] has quit [Read error: 60 (Operation timed out)] 14:08:45 greboides: Do you know how to use `syntax-rules'? 14:08:53 I need to display a backgroung image on a PLT Scheme frame. I looked for documentation, but couldn't find any. Anyone know? 14:09:24 chandler: i cant say that i know 14:09:50 zachb: Did you ask the mailing list? 14:10:56 no, where is that? 14:11:02 ejs1 [n=eugen@nat.ironport.com] has joined #scheme 14:11:22 zachb: It's linked from the PLT web site. 14:11:43 OK< thanks 14:12:45 chandler: my naive attempt was something like http://pastebin.com/d7172bb1d 14:12:49 lisppaste: url? 14:12:49 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 14:13:13 greboides: I don't know what `define-syntax-rule' is. 14:13:55 chandler: i got it on plt docs 14:14:26 Ignore that; you don't want to use that. 14:14:32 The simplest way to create a macro is to use define-syntax-rul 14:14:55 Look at the documentation for `define-syntax' and `syntax-rules'. 14:15:16 You might also want to read this chapter from TSPL: http://www.scheme.com/tspl3/further.html#./further:h1 14:16:00 define-syntax-rule is the same but it only captures one pattern 14:16:46 Yes. It's specific to PLT Scheme; `syntax-rules' is the standard, portable Scheme way of defining syntax. 14:18:30 you could do the same with with-syntax 14:18:43 nice, thank you chandler am gonna read that chapter 14:18:48 (define-syntax-rule (a b c) (d b c)) -> (define-syntax a (syntax-rules () ((_ b c) (d b c)))) 14:19:06 leppie|work: Ack. There's no need to involve a low-level macro system here. 14:19:38 @seen timmc 14:19:48 chandler: not sure how to use the mailing list. Know of a tutorial or something to accomplish what I need done? 14:19:53 edwardk: That's not recognized by any of the bots here. 14:19:55 er wait, wrong channel, wrong bots =) 14:20:07 chandler: yeah, reflex from #haskell ;) 14:20:15 zachb: You need to join the mailing list, and send the list address an email. 14:20:29 Someone will reply if they know the answer to your question! 14:20:38 OH, so I ownt get a response right away? 14:21:10 No. It just sends your mail to the other subscribers to the list. 14:21:38 OK 14:21:52 :( 14:21:54 If you had done this yesterday when I suggested it, you'd probably have an answer now. 14:22:13 I didn't realize you suggested it yesterday. 14:22:25 I didn't know I even got a response yesterday! 14:22:43 Thanks you the suggestion now, though. 14:22:47 :) 14:22:50 Sveklo [n=sveklo@gw0.stadinetti.fi] has joined #scheme 14:24:24 zachb: Using IRC to get answers is fast but unreliable. You might not find someone who knows the answer, or someone might give you the wrong answer because they don't know any better. Using the mailing list is a little slower, but if you include enough information in your question, it is very reliable. 14:24:58 That is good enough for me! I just subscribed. Thanks. 14:26:08 -!- leppie|work [i=52d2e3c8@gateway/web/freenode/x-zmcxzdhmbiqphnii] has quit [Ping timeout: 180 seconds] 14:26:22 -!- eno__ is now known as eno 14:26:36 jonrafkind [n=jon@98.202.86.149] has joined #scheme 14:27:11 nevermind, gmail is dead again :/ 14:27:37 -!- zachb [n=zahcb@c-76-22-197-170.hsd1.ky.comcast.net] has quit ["http://irc2go.com/"] 14:29:44 -!- pfo [n=pfo@chello084114049188.14.vie.surfer.at] has quit [Read error: 104 (Connection reset by peer)] 14:30:10 -!- edwardk [n=edwardk@32.139.216.7] has quit [Read error: 54 (Connection reset by peer)] 14:32:21 jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 14:33:19 pfo [n=pfo@chello084114049188.14.vie.surfer.at] has joined #scheme 14:34:27 ejs2 [n=eugen@77.222.151.102] has joined #scheme 14:35:02 sepult [n=user@87.78.169.126] has joined #scheme 14:38:25 -!- ASau [n=user@77.246.230.144] has quit ["off"] 14:40:17 decker [n=chatzill@user-0c9h6li.cable.mindspring.com] has joined #scheme 14:42:03 hi. sicp mentions nil, but when I try and use that it's telling me it's an unbound variable. mit scheme by the way...am I wrong to assume that nil is a built in? 14:42:05 -!- ski_ [n=md9slj@remote1.student.chalmers.se] has quit ["Lost terminal"] 14:42:18 (define nil '()) 14:44:04 -!- ejs1 [n=eugen@nat.ironport.com] has quit [Read error: 110 (Connection timed out)] 14:45:18 k. so...I'm a bit confused now. something like (cons a b) seems to differ from (list ab), yet (cons a (cons b (cons c nil))) doesn't differ from (list a b c) 14:45:31 oops, (list a b) I mean 14:46:13 Have you learned about linked lists in other programming languages? 14:46:20 sure 14:46:35 What's a link? 14:47:05 depends, but perhaps a pointer to something if we're talking C 14:47:22 Just one thing? 14:47:36 langmartin [n=user@exeuntcha.tva.gov] has joined #scheme 14:47:57 far as I know. I mean, I guess you could point to both the previous and next items 14:48:45 decker, how about if you have a list of large items? Like, say, a list of strings, or a list of arrays? 14:48:49 Well, you need two pointers generally - some sort of data, and a pointer to the next node in the chain. 14:48:59 decker: cons makes a pair of two things. If you have a pair of two things, and the second is a pair of two things, of which the second is a pair of two things.. you have a linked list. A linked list node is a pair where the first is the current element and the second is the next pair in the list. 14:49:44 ok, ok. I think I see where this is going. thanks 14:50:06 pfo_ [n=pfo@84.114.49.188] has joined #scheme 14:50:16 leppie|work [i=52d2e3c8@gateway/web/freenode/x-xilulkdoyobshdam] has joined #scheme 14:50:38 But in Scheme all objects are dynamically typed, and a cons cell can contain any type in both the data field and the next field. 14:50:50 edwardk [n=edwardk@32.139.216.7] has joined #scheme 14:50:53 -!- pfo [n=pfo@chello084114049188.14.vie.surfer.at] has quit [Connection reset by peer] 14:51:24 -!- attila_lendvai [n=ati@adsl-89-134-2-74.monradsl.monornet.hu] has quit ["..."] 14:51:26 So (cons a b) just creates a new pair (linked list node) where `a' is the data and `b' is the next pair (which may not actually be a pair). 14:52:19 yep. gotcha. thanks 14:52:52 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [Read error: 104 (Connection reset by peer)] 14:52:52 And when you make a "proper" list, you terminate it by using '() as the final next field (like a NULL pointer, which is why it's called nil). 14:53:07 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 14:54:15 Thus (cons 'a 'b) just makes a pair which is not a proper list since the next pointer is neither a pair nor nil. 14:54:56 (list 'a 'b) does make a proper list by consing up all the arguments and terminating it with nil 14:55:12 i.e. (list 'a 'b) => (cons 'a (cons 'b (cons '()))) 14:55:47 seriously...I already groked it 10 mins ago 14:56:32 not that I don't appreciate your time...but ha, still 14:57:29 laynor [n=laynor@93.107.74.222] has joined #scheme 14:57:36 Just talking to myself to see what explanation sounds best really. It's rather a very FAQ. 15:02:33 heh 15:02:57 foof: I'm not sure that Scheme is dynamically typed is important in understanding this. 15:03:25 cons exists in static languages too, e.g., in Scala, List(3,4,5) is the same as 3 :: 4 :: 5 :: Nil 15:05:10 -!- a-s [n=user@nat-240.ro.66.com] has quit [Remote closed the connection] 15:05:28 Phaze [n=PhazeDK@0x5da32b16.cpe.ge-0-1-0-1104.soebnqu1.customer.tele.dk] has joined #scheme 15:06:44 But Scala doesn't allow 3 :: 4 does it? 15:06:45 Scheme is dynamically typed, so it is always a good idea to refer that Scheme is dynamically typed when you are explaining something. 15:14:54 rdd [n=user@c83-250-159-12.bredband.comhem.se] has joined #scheme 15:15:08 -!- jonrafkind [n=jon@98.202.86.149] has quit [Read error: 60 (Operation timed out)] 15:28:55 what does it mean to be dynamically typed ? 15:29:03 is the type system meant ? 15:29:35 sepult: its about bindings 15:29:39 Haskell has the concept of cons lists. 15:30:01 -!- sstrickl [n=sstrickl@pool-151-199-60-39.bos.east.verizon.net] has quit ["rcirc on GNU Emacs 23.0.60.1"] 15:31:44 Jafet: Yeah, and neither Haskell nor Scala allow 3 :: 4 (well, in Haskell, 3 : 4). 15:32:05 sepult, it basically means that, unlike C or Java, you don't specify which type a given variable has (does it hold a string or an int? etc.). The type is read from the value instead. 15:32:20 sepult: In Scheme a variable does not have a type. 15:32:43 Phaze: There are static languages where you don't specify the type, it is inferred. 15:33:22 foof, gee, what is going on over at r6rs-discuss? 15:33:53 dzhus [n=sphinx@93-80-220-174.broadband.corbina.ru] has joined #scheme 15:34:03 `Any implementation supporting SLIB supports these SRFIs through SLIB: ...' Gosh, maybe if SLIB were useful that would be a meaningful statement. 15:42:04 -!- edwardk [n=edwardk@32.139.216.7] has quit [Read error: 104 (Connection reset by peer)] 15:42:57 jonrafkind [n=jon@crystalis.cs.utah.edu] has joined #scheme 15:43:56 Riastradh: Madness, as usual. 15:55:13 *leppie* looks at some code foof wrote back in 2002 15:57:36 2002? Gauche? 15:57:40 yip 15:57:42 :) 15:58:05 mrsolo [n=mrsolo@nat/yahoo/x-uadsudpoeuiekhqy] has joined #scheme 15:58:06 https://gauche.svn.sourceforge.net/svnroot/gauche/Gauche/trunk/lib/util/lcs.scm 15:58:13 -rudybot:#scheme- http://tinyurl.com/pouzk6 15:58:27 but i suspect you did not write the 'ugly' bits 16:00:17 merus [n=merus@pal-175-116.itap.purdue.edu] has joined #scheme 16:01:16 anyways, let's see how long it will take to make it run on R6RS 16:03:28 Adman65_ [n=Adman65@66-240-27-20.isp.comcastbusiness.net] has joined #scheme 16:03:39 kilimanjaro [n=kilimanj@70.116.95.163] has joined #scheme 16:04:13 Hey, I have a simple programming assignment to mimic ruby's inject function in scheme. My teacher requires that we also turn in some tests with our program. Are there some scheme unit testing things I cna try ? 16:07:03 chandler pasted "definir define :)" at http://paste.lisp.org/display/86367 16:07:16 I did? 16:07:19 oh 16:07:31 heh :-) 16:07:35 it was me, the first time using the function 16:07:49 You don't need the first rule there. Do you see why? 16:08:24 hmm , the second one will catch all cases? 16:08:38 Yes. `args' will match a list as well as an identifier. 16:09:04 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit ["Leaving."] 16:09:49 right 16:09:58 hmm chandler, will that work? 16:10:00 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 16:10:13 errr, doh! 16:10:15 nm 16:10:26 leppie: You need to spend more time with `syntax-rules' and less with `with-syntax'. 16:10:30 :-) 16:10:31 *leppie* wonders where his brain went 16:10:43 Off into `syntax-case' land, no doubt. 16:10:58 nah 16:11:13 but your example is flawed in 1 small regard 16:11:32 Hm? 16:12:08 leppie annotated #86367 "untitled" at http://paste.lisp.org/display/86367#1 16:12:15 that will work 16:12:23 You still don't need the first clause. 16:12:57 chandler: (definir (foo . a) a) would fail 16:13:10 lol Riastradh, thats true as well :) 16:13:26 leppie: you may have been confused; I didn't write that example. I just edited the paste to fix the username. 16:13:49 sure it was mine 16:13:50 oh ok 16:14:03 So, who's going to finish this translation of Scheme into Spanish? 16:14:33 -!- Sveklo [n=sveklo@gw0.stadinetti.fi] has quit [] 16:14:50 Riastradh: its portuguese, i am willing to teach it for kids so i want to make some sintatic sugars 16:15:24 -!- reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 16:16:04 and its hard enough to not coerce them into learning english at the same time 16:16:06 llama-con-actual-continuacion, si, hacer-vector, dynamico-ovillar, &c. 16:16:59 (Should one use the infinitive or the imperative forms of the verbs, or even the third-person present indicative? If the imperative, should it be in the second-person singular, plural, or formal plural; or should it perhaps instead even be in the first-person?) 16:17:44 Riastradh: too complex question to me :) 16:17:49 Vosotros 16:17:59 greboides, silly romance languages -- from your solitary word `definir', I couldn't tell which one it was! Since you left no accent on it, I guessed that it wouldn't be French. 16:18:16 kilimanjaro, excellent! We'll do that just to trip up Latin America. 16:18:33 Yay! We can program with llamas! 16:18:39 thomebody needs to keep thspain in mind! 16:19:03 ...although in this case, for the imperative, it's awfully simple. Maybe we can change every verb to the negative, so that one has to use the subjunctive second-person plural form? 16:19:37 That way there are at least some irregular verbs. 16:21:48 greboides, well, now that I have had my fun being silly about this, I'm actually (`really', that is, not `currently', although I suppose `currently' is correct also) curious to know how you're doing this. 16:22:02 If DEFINIR for DEFINE is any indication, I suppose you're just using infinitives? 16:22:43 infinitive is the correct form i assume 16:23:34 Riastradh: why not? 16:23:48 -!- npe [n=npe@195.207.5.2] has quit [] 16:24:25 I don't know; I've never thought about how to translate programming languages into other natural languages. 16:24:51 It doesn't happen very often, to my knowledge. I know there was a French Pascal once, but that was a while ago. 16:26:30 hehehe 16:27:54 luz [n=davids@189.122.90.116] has joined #scheme 16:28:21 foof: it runs and works on R6RS 16:29:11 In fact, this has been the subject of some serious, but very hypothetical, discussion about module systems in Scheme. If a module system allows renaming imported bindings, such as mapping IF to SI, what does one do about names that arise without bindings, such as ELSE in COND and CASE? Obviously one would probably like to write (COND ... (SI-NO ...)) in Spanish or (COND ... (SINON ...)) in French (the root `cond' is shared betw 16:29:12 well after some hacking and chopping 16:29:23 cool 16:29:29 is shared betw <--- cut off Riastradh 16:29:55 ...(the root `cond' is shared between the languages, of course, so that needn't change), but that substitution can be done with the module system only if ELSE is actually bound. 16:30:28 there is the 'LEAN and MEAN' competion at CodeProject, and I am planning to make the meanest one :) 16:30:37 but not very lean 16:33:12 -!- mmc [n=mima@esprx01x.nokia.com] has quit [Remote closed the connection] 16:33:22 -!- copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has quit ["Leaving..."] 16:37:57 Riastradh: i parse "actually" as "in truth" 16:38:06 hmmm 16:38:22 it just seems easy to me 16:38:35 can't I do (for/list ([i ls])) in drscheme? 16:39:09 -!- ejs2 [n=eugen@77.222.151.102] has quit ["This computer has gone to sleep"] 16:39:44 greboides, yes, I was just poking fun at that curious cognate failure between English and romance languages. 16:40:36 -!- ray [i=ray@drong.notacat.org] has quit ["Changing server"] 16:40:40 ray [i=ray@drong.notacat.org] has joined #scheme 16:42:15 -!- Lemonator [n=kniu@128.2.16.211] has quit [Read error: 145 (Connection timed out)] 16:48:24 robertttt [n=roberto@75.Red-88-18-14.staticIP.rima-tde.net] has joined #scheme 16:53:51 Lemonator [n=kniu@CMU-284828.WV.CC.CMU.EDU] has joined #scheme 16:56:34 dysinger [n=tim@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 17:01:24 -!- jonrafkind [n=jon@crystalis.cs.utah.edu] has quit [No route to host] 17:03:58 -!- robertttt [n=roberto@75.Red-88-18-14.staticIP.rima-tde.net] has left #scheme 17:10:02 -!- Adman65_ [n=Adman65@66-240-27-20.isp.comcastbusiness.net] has quit [] 17:10:08 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 17:10:14 edwardk [n=edwardk@32.139.216.7] has joined #scheme 17:10:54 dysinger_ [n=tim@71.20.35.99] has joined #scheme 17:15:16 -!- zeroish [n=zeroish@135.207.174.50] has quit [Remote closed the connection] 17:15:19 -!- dysinger_ [n=tim@71.20.35.99] has quit [Client Quit] 17:15:48 dysinger_ [n=tim@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 17:16:51 -!- zeroish` [n=zeroish@135.207.174.50] has quit [Remote closed the connection] 17:18:27 -!- finalprefix [n=finalpre@122.182.0.38] has quit ["Leaving"] 17:18:50 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 17:20:28 -!- merus [n=merus@pal-175-116.itap.purdue.edu] has quit ["Leaving"] 17:21:30 -!- dysinger_ [n=tim@71-20-35-99.war.clearwire-wmx.net] has quit [] 17:21:45 dysinger` [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 17:26:44 tessier [n=treed@mail.copilotco.com] has joined #scheme 17:28:45 -!- dysinger [n=tim@71-20-35-99.war.clearwire-wmx.net] has quit [Read error: 110 (Connection timed out)] 17:29:11 -!- tessier [n=treed@kernel-panic/sex-machines] has quit [Client Quit] 17:29:17 rstandy` [n=rastandy@95.74.13.27] has joined #scheme 17:29:51 tessier [n=treed@mail.copilotco.com] has joined #scheme 17:30:45 Adman65_ [n=Adman65@66-240-25-23.isp.comcastbusiness.net] has joined #scheme 17:34:12 zeroish [n=zeroish@135.207.174.50] has joined #scheme 17:35:28 rstandy`` [n=rastandy@95.74.37.82] has joined #scheme 17:44:02 sstrickl [n=sstrickl@nomad.ccs.neu.edu] has joined #scheme 17:45:35 -!- rstandy` [n=rastandy@95.74.13.27] has quit [Read error: 104 (Connection reset by peer)] 17:45:43 -!- rstandy [n=rastandy@net-93-144-217-186.t2.dsl.vodafone.it] has quit [Read error: 110 (Connection timed out)] 17:46:19 I remember reading about a strang lisp/scheme derivative language that added prolog support It was called "lambda-][" or something like that, but I can't fnd it anywhere anymore ... 17:48:28 found it .. Qi II 17:52:27 just in case, you do know about schelog? 18:00:33 Hm. I'm not fond of the idea of running on CL, but Qi does look very interesting. 18:01:45 -!- laynor [n=laynor@93.107.74.222] has quit [Read error: 60 (Operation timed out)] 18:04:31 Cheery [n=cheery@a88-113-49-248.elisa-laajakaista.fi] has joined #scheme 18:05:05 laynor [n=laynor@93.107.4.37] has joined #scheme 18:05:12 I have a question about graph coloring algorithms, particularly for register allocation. 18:05:41 -!- decker [n=chatzill@user-0c9h6li.cable.mindspring.com] has quit ["ChatZilla 0.9.85 [Firefox 3.5.2/20090729225027]"] 18:07:36 looking for a fast algorithm on that, which'd be able to solve the graph coloring problem if there exist a solution. 18:08:09 I'd also like to know: how good simplify/select is on register allocation? 18:10:00 yes, seen schelog 18:10:59 ? 18:11:08 Its all a hassle, cause I really want scheme+fuzzy-logic-prolog (+good distributed processing e.g. erlang-ish) 18:11:31 and types ... 18:11:35 :) 18:11:55 copumpkin [n=pumpkin@129.170.241.32] has joined #scheme 18:12:52 the codebase I hack on is a messy fuzzy-logic-ish thingy (in C++ "for performance") with a scheme wrapper on top. 18:13:19 I feel like I'm constantly reiventing some (non-existant) programming language 18:14:04 IMACHARGINMAHLAZ [n=pumpkin@129.170.241.160] has joined #scheme 18:15:00 -!- IMACHARGINMAHLAZ [n=pumpkin@129.170.241.160] has quit [Client Quit] 18:20:09 -!- copumpkin [n=pumpkin@129.170.241.32] has quit [Read error: 145 (Connection timed out)] 18:20:53 copumpkin [n=pumpkin@129.170.241.32] has joined #scheme 18:26:23 -!- Adman65_ [n=Adman65@66-240-25-23.isp.comcastbusiness.net] has quit [] 18:26:52 rstandy [n=rastandy@net-93-144-63-54.t2.dsl.vodafone.it] has joined #scheme 18:28:07 emma [n=em@unaffiliated/emma] has joined #scheme 18:30:13 jonrafkind [n=jon@204.99.164.233] has joined #scheme 18:30:31 -!- edwardk is now known as copigpen 18:31:06 -!- copigpen is now known as edwardk 18:34:30 -!- rstandy`` [n=rastandy@95.74.37.82] has quit [Connection timed out] 18:35:39 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 18:38:15 tagac [n=user@134.36.221.87.dynamic.jazztel.es] has joined #scheme 18:53:43 hotblack23 [n=jh@p5B057E33.dip.t-dialin.net] has joined #scheme 18:53:48 ASau [n=user@83.69.240.52] has joined #scheme 18:57:53 IMACHARGINMAHLAZ [n=pumpkin@129.170.241.160] has joined #scheme 18:58:06 -!- copumpkin [n=pumpkin@129.170.241.32] has quit [Read error: 104 (Connection reset by peer)] 19:02:23 -!- leppie|work [i=52d2e3c8@gateway/web/freenode/x-xilulkdoyobshdam] has quit [Ping timeout: 180 seconds] 19:04:57 bweaver [n=user@c-68-60-0-190.hsd1.tn.comcast.net] has joined #scheme 19:05:39 laynor_ [n=laynor@93.107.26.166] has joined #scheme 19:06:03 copumpkin [n=pumpkin@129.170.241.160] has joined #scheme 19:06:58 -!- IMACHARGINMAHLAZ [n=pumpkin@129.170.241.160] has quit [Read error: 104 (Connection reset by peer)] 19:10:54 -!- sepult [n=user@87.78.169.126] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 19:16:25 -!- laynor [n=laynor@93.107.4.37] has quit [Read error: 110 (Connection timed out)] 19:20:30 IMACHARGINMAHLAZ [n=pumpkin@64.30.3.122] has joined #scheme 19:22:41 badtruffle [n=pumpkin@129.170.241.32] has joined #scheme 19:23:22 -!- bweaver [n=user@c-68-60-0-190.hsd1.tn.comcast.net] has quit [Remote closed the connection] 19:23:40 bweaver [n=user@c-68-60-0-190.hsd1.tn.comcast.net] has joined #scheme 19:25:30 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Connection timed out] 19:26:25 -!- copumpkin [n=pumpkin@129.170.241.160] has quit [Nick collision from services.] 19:26:30 -!- badtruffle is now known as copumpkin 19:30:15 Slom [n=a@cpat002.wlan.net.ed.ac.uk] has joined #scheme 19:34:01 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 19:35:57 -!- weinholt [n=weinholt@debian/emeritus/weinholt] has quit [] 19:38:16 MrFahrenheit [n=RageOfTh@users-55-26.vinet.ba] has joined #scheme 19:39:20 -!- IMACHARGINMAHLAZ [n=pumpkin@64.30.3.122] has quit [Connection timed out] 19:39:30 -!- MrFahrenheit [n=RageOfTh@users-55-26.vinet.ba] has quit [Read error: 113 (No route to host)] 19:39:34 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 19:39:39 MrFahrenheit [n=RageOfTh@users-55-26.vinet.ba] has joined #scheme 19:39:40 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Read error: 60 (Operation timed out)] 19:39:41 -!- Slom [n=a@cpat002.wlan.net.ed.ac.uk] has quit [Read error: 104 (Connection reset by peer)] 19:40:13 Adman65__ [n=Adman65@adsl-71-141-115-152.dsl.snfc21.pacbell.net] has joined #scheme 19:40:58 -!- dysinger` [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has quit [Read error: 110 (Connection timed out)] 19:42:27 Slom [n=a@cpat002.wlan.net.ed.ac.uk] has joined #scheme 19:45:11 -!- Slom [n=a@cpat002.wlan.net.ed.ac.uk] has quit [] 19:46:50 jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has joined #scheme 19:47:23 -!- Lemonator [n=kniu@CMU-284828.WV.CC.CMU.EDU] has quit [Read error: 110 (Connection timed out)] 19:48:20 -!- Adman65__ [n=Adman65@adsl-71-141-115-152.dsl.snfc21.pacbell.net] has quit [Read error: 104 (Connection reset by peer)] 19:48:29 Lemonator [n=kniu@ELMUNDO.RES.CMU.EDU] has joined #scheme 19:48:45 Adman65_ [n=Adman65@adsl-71-141-115-152.dsl.snfc21.pacbell.net] has joined #scheme 19:48:48 -!- Adman65_ [n=Adman65@adsl-71-141-115-152.dsl.snfc21.pacbell.net] has quit [Remote closed the connection] 19:52:39 Offhand question: is $HOME set to a sensible value on Mac OS X? 19:52:46 -!- jonrafkind [n=jon@204.99.164.233] has quit [Connection timed out] 19:52:50 sebell [n=sctb@mail.arcurve.com] has joined #scheme 19:53:02 yep 19:54:14 -!- Cheery [n=cheery@a88-113-49-248.elisa-laajakaista.fi] has left #scheme 19:54:33 Thanks. 20:01:47 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 20:03:21 jcowan: some days ago you mentioned you're planning an API for system programming. Do you have any pointer to something published? 20:04:04 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 20:04:31 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 20:04:48 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [Client Quit] 20:07:52 nvteighen [n=nvteighe@127.Red-88-8-254.dynamicIP.rima-tde.net] has joined #scheme 20:07:55 -!- nvteighen [n=nvteighe@127.Red-88-8-254.dynamicIP.rima-tde.net] has left #scheme 20:09:52 Is there anything more to fuzzy logic other than (closer-to-0 n) and (closer-to-1 n)? 20:11:12 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 20:15:34 -!- MrFahrenheit [n=RageOfTh@users-55-26.vinet.ba] has quit [Read error: 104 (Connection reset by peer)] 20:16:18 MrFahrenheit [n=RageOfTh@users-55-26.vinet.ba] has joined #scheme 20:17:46 XTL: What's wrong with running on CL? Using a reasonably modern CL implementation will give you a very good native compiler, an excellent garbage collector, native threads (if you need them), and several other tricky things for "free". 20:18:23 It will also impose Common Lisp upon you. 20:18:27 (Where "reasonably modern" includes SBCL, CCL, Allegro, and LispWorks.) 20:18:34 That's the catch. 20:19:08 Riastradh: This was in the context of a language implemented on top of Common Lisp. 20:21:03 rstandy` [n=rastandy@net-93-144-40-187.t2.dsl.vodafone.it] has joined #scheme 20:28:39 Apropos of nothing, I'd still like to hear feedback about the patches in ... 20:29:35 chandler: Oh, it's impressive. I just don't like it :) 20:29:49 -!- edwardk [n=edwardk@32.139.216.7] has left #scheme 20:30:50 (I did actually download the image and even started on the book) 20:31:32 -!- tizoc is now known as tizoc_ 20:31:41 -!- tizoc_ is now known as tizoc 20:32:17 -!- 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"] 20:33:56 Riastradh: Perhaps my blissful ignorance of Emacs is showing, but I don't understand your comment about making the space predicate buffer-local on http://mumble.net/~campbell/tmp/paredit/paredit-delimiter-space.el . 20:35:32 -!- bombshelter13_ [n=bombshel@206.80.252.37] has quit [Remote closed the connection] 20:36:45 eh? apple has added closures to C? 20:37:08 -!- rstandy [n=rastandy@net-93-144-63-54.t2.dsl.vodafone.it] has quit [Success] 20:37:09 as of 10.6 20:37:21 well, "blocks" 20:37:53 -!- hotblack23 [n=jh@p5B057E33.dip.t-dialin.net] has quit ["Leaving."] 20:38:05 Yes! Now you too can experience closures that are reference-counted and for which you need to specify a special storage class for closed-over variables which are to be mutated... 20:38:20 well, it is C. 20:38:56 chandler, hmm. I'm not sure I understand it either. 20:39:16 ... and objective c is garbage collected now 20:39:17 Right. So this is a horrible idea which is bound to cause all sorts of interesting bugs, especially since using these closures with a dispatch queue is their approach to parallel programming. 20:39:27 zbigniew: I *believe* that blocks are reference-counted in all cases. 20:39:41 very possible. let me know when you encounter such a bug. 20:42:42 Gee, I haven't the foggiest idea what that comment means, chandler. 20:42:47 I'm totally baffled. 20:43:25 Can anyone help to explain the comment about chandler's (Brian Mastenbrook's) suggestion at ? 20:44:50 decker [n=chatzill@user-0c9h6li.cable.mindspring.com] has joined #scheme 20:45:01 paredit-space-for-delimiter-predicate -> paredit-space-for-delimiter-predicates ? 20:45:18 sebell: That's the essence of the change I requested. 20:45:23 Yes, sebell, I understood chandler's suggestion. 20:45:27 What I don't understand is my comment about his suggestion. 20:45:46 `This would probably require making the variable permanently buffer-local, which makes it inconvenient to update using ``add-to-list''.' 20:45:53 Ah 20:46:15 What necessitates making the variable permanently buffer-local? Why are permanently buffer-local variables inconvenient to update using `add-to-list'? 20:46:25 hey, right quick, edwin, how do I kill an infinite loop? 20:47:06 decker, in the REPL? C-c C-b will give you a breakpoint; C-c C-c will abort the evaluation and return to the top level; C-c C-u will abort the evaluation and return to the nearest level. 20:47:20 Riastradh: Perhaps ADD-TO-LIST is a red herring, and the inconvenience is simply having to set the variable in a hook 20:47:43 Why would you have to set it in a hook? 20:47:44 No clue about why it would need to be permanently buffer-local, though. 20:47:47 Riastradh: thanks 20:47:55 -!- rstandy` [n=rastandy@net-93-144-40-187.t2.dsl.vodafone.it] has quit [Connection timed out] 20:48:13 decker, also, C-c C-o will omit output from the last evaluation, in case you got something generating gigantic spewage of output that you don't care to see. 20:48:22 Riastradh: If you were doing this is .emacs, for example 20:48:30 sebell, I still don't see. 20:49:53 My (extremely limited) understanding about buffer-local variables is that you must set them in the context of that particular buffer, or use something like SETQ-DEFAULT, if appropriate. 20:50:32 -!- HG` [n=HG@85.8.89.202] has quit [Client Quit] 20:50:59 I guess there's no analogue of `add-to-list' that uses `set-default' rather than `set'. 20:51:14 But why would this variable need to be permanently buffer-local...? 20:51:20 Whatever; I'll just make the change. 20:51:22 saccade_ [n=saccade@c-66-31-201-117.hsd1.ma.comcast.net] has joined #scheme 20:51:39 the variable would be buffer local so you could inhibit spaces in a javascript buffer and not inhibit them in a scheme buffer 20:51:56 Yes, and if you want to do that, you can always make it (non-permanently) buffer-local. 20:51:57 langmartin: Why *permanently* buffer local, though? 20:54:01 -!- sstrickl [n=sstrickl@nomad.ccs.neu.edu] has quit [Read error: 113 (No route to host)] 20:56:51 scheme have a mod of some sort? 20:57:05 I'm still not happy about breaking paredit's hitherto consistent inconfigurability, but oh well.. 20:57:30 the remainder thing, not what that might sound like... 20:57:44 decker, if by `a mod of some sort' you mean an operation reducing integers to their least residues modulo some modulus, then there are two related operations: MODULO and REMAINDER. 20:58:04 thanks 20:58:18 These behave differently for negative arguments. 20:58:24 Riastradh: What other types of configuration are needed, other than this hook? 20:58:33 It's pretty much the only behavior I've ever wished to customize. 20:58:44 chandler, none! That's why paredit has been totally [iu]nconfigurable in the past. 20:59:18 Well, if it's not a principled inconfigurability, I don't see why there should be any reason to be unhappy about breaking it. 20:59:54 Oh, it's very thoroughly principled. The principle is this: Paredit's behaviour cannot be configured! 21:01:01 -!- sebell [n=sctb@mail.arcurve.com] has quit ["rcirc on GNU Emacs 23.1.1"] 21:02:16 If you allow a file formatter to be configured to each user's custom aesthetics, then two users will be less able to understand what each of them writes. 21:02:28 It's harder to share code that way. 21:03:10 That's not an issue, synx. Everyone always strictly follows the style at . 21:03:36 synx: I don't see how that's relevant to the problem at hand. Not all languages for which paredit is useful share the same syntax, so the behavior of paredit should be configurable to the language. 21:03:42 But if everyone uses the same format, you can learn it, then never have to learn anyone else's personal style better. 21:03:54 The justification for my anticonfigurability principle is that it makes paredit *behave* identically for everyone in every situation. 21:03:56 Oh chandler I see what you mean. Never mind then. 21:04:08 And, since some of these languages have extensible reader syntax, that should be a user-configurable option, not something baked into paredit. 21:04:35 Unfortunately, sensibly dealing with multiple notations is terribly difficult. 21:04:53 You mean like the idea of using square brackets instead of round ones to delineate name value pairs in a let statement? 21:05:22 No, I mean more like (foo "bar") versus . 21:05:33 I also mean much more extensive language syntax customizations, such as embedded XML elements in Lisp code. 21:07:44 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 21:08:58 Really, unless paredit is completely redone from the ground up, it will never be a general structure editor, even a general faux structure editor. 21:09:40 I don't think I need it to be redone from the ground up; I just want it to stop inserting spaces when I try to insert ( ...) 21:10:09 Well, you could just write ( ...)... 21:10:58 Actually, I end up writing ( ...) . 21:13:38 npe [n=npe@94-224-251-223.access.telenet.be] has joined #scheme 21:14:34 -!- mreggen [n=mreggen@cm-84.215.28.167.getinternet.no] has quit [Read error: 104 (Connection reset by peer)] 21:15:06 -!- mario-goulart [n=user@201.40.162.47] has quit [Remote closed the connection] 21:15:06 mreggen [n=mreggen@cm-84.215.28.167.getinternet.no] has joined #scheme 21:20:21 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Connection reset by peer] 21:22:23 Riastradh: For what it's worth, I seem to be going through a "I should write a structure editor" phase again, but I doubt that I'll really actually do anything about it in the near future. 21:22:41 I generate my html from procedure calls personally. Mixing two languages in one file is not nice. 21:22:59 synx: In my syntactic extension to CL, that *is* a procedure call. 21:23:32 You have a procedure named o.O 21:24:30 Yes, it's a function. is a CXML-STP:ELEMENT. 21:24:51 -!- langmartin [n=user@exeuntcha.tva.gov] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 21:24:54 (or rather, evaluating it returns that) 21:25:08 I've found what works best is to have named procedures for each element name, and they take keyword arguments for the attributes, and non-keyword arguments for their contents. 21:25:11 Evaluating ( ) returns an element too. 21:26:59 So it'd be (a "foo" #:href "http://foo.com/") => foo, which works great in paredit mode. 21:27:35 suppose I could use ( #:href ...) instead of (a #:href ...) but no need really... 21:27:44 The syntactic extension I created works for arbitrary XML, not just a pre-selected schema. 21:27:58 (a ...) <-> ... 21:28:20 What about (mumble ...)? 21:28:37 You can't really write XML without a schema... 21:30:08 I did originally make it so (mumble "foo") would generate foo but it was too difficult to try to get the syntax right since it needs to recursively mutate the expression to get it into generic HTML generating procedures. 21:30:30 (mumble "foo") -> (generate-tag 'mumble "foo") -> foo 21:31:04 -!- Phaze [n=PhazeDK@0x5da32b16.cpe.ge-0-1-0-1104.soebnqu1.customer.tele.dk] has quit ["Leaving"] 21:31:52 I'm better at syntax now... might give it a shot sometime. But really it's no big deal to just say (define-named-elements a p html head body etc etc) to describe the schema, plus then I could deal with special cases in that module. 21:32:54 such as making sure 'a' has an href or a name attribute, or it's an error. 21:33:52 had some thoughts on having certain tags that can't contain certain other tags, "inline" tags as they call it, but haven't implemented that yet. 21:36:48 -!- npe [n=npe@94-224-251-223.access.telenet.be] has quit [] 21:38:03 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit [Remote closed the connection] 21:38:06 antoszka [n=antoszka@unaffiliated/antoszka] has joined #scheme 21:39:36 -!- dzhus [n=sphinx@93-80-220-174.broadband.corbina.ru] has quit [Remote closed the connection] 21:43:53 Slom [i=Slom@cnat096.wlan.net.ed.ac.uk] has joined #scheme 21:47:44 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 21:49:22 minion: send mario-goulart No, not yet. 21:49:23 why not? 21:49:52 Heh. 21:50:06 minion: Who's a good Eliza? You? You? 21:50:06 bill clinton 21:50:12 minion: memo for mario-goulet: No, not yet 21:50:13 Remembered. I'll tell mario-goulet when he/she/it next speaks. 21:50:24 minion: thanks 21:50:24 no problem 21:51:09 -!- saccade_ [n=saccade@c-66-31-201-117.hsd1.ma.comcast.net] has quit ["This computer has gone to sleep"] 21:54:23 Does anyone think SRFI-45 (the one about lazy/delay/force) makes sense? My mind won't wrap around it. 21:55:46 Or is it irrelevant, because force and delay are useless anyhow? 22:00:33 merus [n=merus@pal-175-116.itap.purdue.edu] has joined #scheme 22:06:05 jcowan, SRFI 45 certainly makes sense. 22:06:44 Synopsis: (DELAY (FORCE ...)) should yield a promise that has the same computation as another promise, without eagerly finding what that other promise is. 22:07:26 But (DELAY (FORCE ...)) is not tail-recursive: forcing (DELAY (FORCE (DELAY (FORCE ...)))) accumulates twice as much stack space as forcing (DELAY (FORCE ...)). 22:07:28 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:07:37 dmoerner [n=dmr@89-151.res.pomona.edu] has joined #scheme 22:07:48 disgrntld [n=disgrntl@70.114.138.35] has joined #scheme 22:07:50 And the amount of stack space used by forcing iterated (DELAY (FORCE ...)) is bounded only by the number of iterations. 22:08:06 Instead, the amount of stack space that forcing such a promise needs ought to be constant. 22:08:17 Writing (LAZY ...) instead of (DELAY (FORCE ...)) enables it to be constant. 22:08:34 -!- copumpkin [n=pumpkin@129.170.241.32] has quit [] 22:09:22 IYO, would it be worth incorporating directly into a future Scheme standard? 22:09:23 Hi, I'm having trouble installing "plai.plt" from PlaneT, I'm using v4.0.1 and trying to install via: (require (planet plai/plai:1:3)) 22:09:34 Absolutely, jcowan, if DELAY and FORCE are included. 22:09:59 *jcowan* checks that off on his little list. 22:10:19 "I have a list of SRFIs that might well be underground / They never would be missed ..." 22:11:03 I get a bunch of errors: unbound variable, expected procedures of arity 1, etc.. Anyone have any ideas? 22:11:59 *DrScheme v4.0.1 22:12:11 *jcowan* makes a cake of himself by sending VSCM patches to the maintainer ... and cc-ing r6rs-discuss. 22:13:25 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 22:21:19 rstandy [n=rastandy@net-93-144-6-143.t2.dsl.vodafone.it] has joined #scheme 22:22:25 arthurmaciel [n=user@201.80.20.127] has joined #scheme 22:22:31 hi 22:22:38 why the evaluation order is not guaranteed as in CL? 22:24:05 sstrickl [n=sstrickl@pool-151-199-60-39.bos.east.verizon.net] has joined #scheme 22:24:55 It allows compilers to optimize suitably. 22:25:19 So the question is, "Why would it be best practice to depend on a specific order?" 22:25:30 *jcowan* notes that C and C++, among other languages, do not guarantee order either. 22:25:56 Also that both Scheme and CL map functions do not guarantee what order they process the mapees in. 22:26:02 (mappees?) 22:26:34 -!- clog [n=nef@bespin.org] has quit [Read error: 110 (Connection timed out)] 22:28:55 saccade [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 22:29:45 jcowan: what it the critearia for evaluation? what makes the compiler choose to evaluate one or another param first? 22:29:55 (really donīt understand about compilers) 22:30:05 -!- sphex_ [n=nobody@74.56.185.239] has quit [Read error: 110 (Connection timed out)] 22:30:57 Specific order is very important in many expressions. 22:31:05 arthurmaciel: which compiler? 22:31:26 Imagine if (begin) didn't execute the forms in order 22:31:41 The point is that different compilers are free to have different strategies, including things like L2R, R2L, complex-stuff-last. 22:31:43 if you want specific order: let* and begin are your friends 22:32:01 reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 22:32:03 -!- reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 22:32:47 Without side effects the order shouldn't ever matter of course. 22:33:22 synx: scheme without side-effects would not be scheme 22:33:30 No, it would be TermiteScheme. 22:33:49 I don't agree... there is plenty of code in scheme that doesn't have side effects. 22:33:52 does Temite support continuations? 22:33:57 rudybot: eval (define counter (let ((n 0)) (lambda () (set! n (+ n 1)) n))) 22:34:07 rudybot: eval (list (counter) (counter) (counter)) 22:34:08 synx: ; Value: (1 2 3) 22:34:51 Slom: You mean call/cc? Yes. 22:34:54 synx: assignment is not the only side-effect 22:35:06 jcowan: yes 22:35:35 No it's not, but for instance + has no side effects. 22:35:35 ... reified continuation ... whatever ... 22:35:45 set! can be reduced to data structure mutation by assignment conversion, and some compilers do so. 22:35:48 rudybot: eval (- (+ 1 2) (+ 2 3) (+ 4 5)) 22:35:49 synx: ; Value: -11 22:36:03 doesn't matter what order the arguments to - are applied. 22:36:21 Yes, synx, but that's not what arthurmaciel is talking about. 22:36:35 What order the arguments are evaluated in is one thing. What order they are applied in is another. 22:36:51 + is unspecific about both, but - is quite specific about the order of application. 22:37:04 well evaluated, fine. 22:37:18 rudybot: (eval - 1 2 3) 22:37:18 jcowan: eh? Try "rudybot: help". 22:37:26 rudybot: eval (- 1 2 3) 22:37:27 jcowan: your sandbox is ready 22:37:27 jcowan: ; Value: -4 22:38:05 jcowan: i thoght call/cc + letrec == set! ... or something like that ... 22:38:13 But a priori (- 1 (- 2 3)) would be just as plausible, and some early Lisps implemented it. 22:38:33 Slom: Technically, that particular hack is not required by R5RS to work. 22:38:35 or is the letrec in Termite specified different from the one in scheme 22:38:48 R5RS is carefully unspecific here 22:39:38 -!- jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Remote closed the connection] 22:41:12 OT: I've just gotten a friend request from Alex Pasqueretta. If any of you are he, please let me know at cowan@ccil.org. 22:44:03 rstandy` [n=rastandy@net-93-144-96-233.t2.dsl.vodafone.it] has joined #scheme 22:45:50 -!- rstandy [n=rastandy@net-93-144-6-143.t2.dsl.vodafone.it] has quit [Read error: 60 (Operation timed out)] 22:46:39 jcowan: "The s are bound to fresh locations holding 22:46:39 undefined values, the s are evaluated in the resulting 22:46:39 environment (in some unspecified order), each is assigned to 22:46:39 the result of the corresponding , 22:47:08 all i find is emails by oleg claiming that you need to use set! to be r5rs complient 22:47:30 or compliant 22:47:56 -!- tagac [n=user@134.36.221.87.dynamic.jazztel.es] has quit ["/* */"] 22:50:09 anyway we are far away from the original question *sorry 22:50:24 -!- masm [n=masm@bl8-57-26.dsl.telepac.pt] has quit ["Leaving."] 23:00:25 -!- mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 23:00:30 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Remote closed the connection] 23:08:03 -!- disgrntld [n=disgrntl@70.114.138.35] has left #scheme 23:08:04 sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 23:09:37 -!- Slom [i=Slom@cnat096.wlan.net.ed.ac.uk] has quit [] 23:11:39 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 23:11:53 -!- annodomini [n=lambda@wikipedia/lambda] has quit [Client Quit] 23:15:28 jcowan: srfi-45's `lazy' is more useful than `delay'. 23:16:03 then you agree that it should be incorporated/ 23:16:04 ? 23:17:10 Absolutely. 23:18:01 eli: "more useful" by what scale? 23:18:18 "being able to do more stuff." 23:18:30 As a stake in the ground, I think that any SRFI that doesn't redefine existing identifiers and is well implemented in portable R5RS + "error" should *not* be integrated. 23:18:41 into Thing One/small Scheme. 23:19:23 Yeah, dump it from *that*. Totally. 23:19:34 Throw out IO too. 23:19:52 And another bunch of stuff. 23:20:29 A 20 page standard is much better than the r5rs bloat. 23:21:18 ATM, we are stuck with IEEE Scheme as a baseline unless we can show specific parts are busted. 23:21:41 That's a very specific definition of "we". 23:22:10 "we" = WG1 23:22:21 Not that I am part of WG1 or anything. 23:22:34 That specific "we" doesn't exist, yet. 23:23:19 True. 23:23:32 no I am Spartacus 23:23:43 (And when it does, being stuff with "foo" for any value of "foo" is going to be the "we"s own choice.) 23:23:51 I am sporticus! 23:23:57 s/stuff/stuck/ 23:24:36 Well, no. 23:24:46 WG1 may lobby the SC for changes to the charter, but SC may refuse them. 23:25:08 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 23:25:55 My grandfather belonged to the Spartakusbund. 23:26:20 *eli* yeah yeahs 23:28:11 thatha [n=thatha@unaffiliated/thatha] has joined #scheme 23:28:47 If you really want to be pedantic to the point of silliness, then "the small language should be backwards compatible with the IEEE, R5RS, and R6RS standards". 23:29:03 SHOULD being the significant word. 23:29:13 *eli* yeah yeahs again 23:29:14 whereas the reference to IEEE is a MUST. 23:29:24 hey-- i'm forgetting the name of a function. what's the std function that does this: (define lola-right (lambda (proc . args) (lambda (x) (apply proc (cons x args))))) ? 23:30:10 sphex__ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 23:30:27 jcowan: The bottom line is that absolutely nothing is defined well enough to talk about; which is exactly what they said in the SW. 23:31:15 *jcowan* figures you never lose anything by assuming that existing restrictions will be tightened, not loosened. 23:32:04 With all this talk about IEEE Scheme, I realized that I don't actually have a copy of the standard. Is it available in an open format (perhaps a final draft) somewhere, or is it locked inside the IEEE's meticulously tended garden? 23:32:11 Apparently the latter. 23:32:17 I was just going to ask if anyone has it. 23:32:54 -!- zeroish [n=zeroish@135.207.174.50] has quit [Remote closed the connection] 23:33:19 -!- Riastradh [n=rias@pool-141-154-207-110.bos.east.verizon.net] has quit [Remote closed the connection] 23:33:30 Riastradh [n=rias@pool-141-154-207-110.bos.east.verizon.net] has joined #scheme 23:33:43 The remarks in R5RS suggest that it's close to R4RS, but with () false, no R5RS-optional procedures, and redefinition of standard procedures explicitly allowed. 23:35:34 -!- MrFahrenheit [n=RageOfTh@users-55-26.vinet.ba] has quit [Read error: 113 (No route to host)] 23:35:44 "IEEE has `set-car!' and we removed it, so the resulting language is therefore more restricted." 23:35:54 "IEEE enforces mutators like `set-car!' we further restrict implementations to provide `set-caar!'." 23:36:57 I've heard that in the wilder parts of the internet, documents from behind the IEEE and ACM pay-walls are passed around in hushed tones, leaked by sympathizers and rebels with access to the content via university networks. 23:37:22 *jcowan* is here to testify to it as a fact. 23:41:42 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 23:42:12 -!- sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 23:44:19 so I'm doing something like so: (modulo (car list) 2) 23:44:56 and? 23:45:16 *jcowan* investigates, finds that IEEE has more than one paywall and he can only get past the wrong one. 23:45:28 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 23:45:41 throws me into the debugger though, with the first line being: (integer-remainder (quote (1 2 3 4)) 2) 23:46:10 jcowan: Is this via your employer? 23:46:13 the integer remainder thing makes sense I guess, but quote? anyone know what that's about? 23:46:28 list is a scheme identifier 23:46:39 try (define lst (list 1 2 3 4)) 23:46:43 (modulo (car lst) 2) 23:47:16 chandler: Indeed. 23:47:22 *jcowan* notes that the price to the public is $118. 23:47:33 That's more than I care about this. 23:47:39 thatha: well, my list is coming from a procedure defined along these lines: (define (foo . list)... 23:47:40 *jcowan* agrees. 23:48:17 I wonder if the quality of the copy is actually any good; I seem to recall that someone once ordered the ANSI CL standard and received a scanned PDF. 23:48:17 (Huh, the gmail outage everyone reports doesn't seem to coincide with my symptoms.) 23:48:42 Which, as large as ANCI CL is, was a *very* large file. 23:49:21 I'd expect this is a scan too. 23:49:25 thatha: and if I do something like: (define (testitout . list) (car list)), it seems to work great. I don't get it still 23:49:27 Ugh. 23:49:35 But perhaps not. 23:49:46 decker: what implementation are you on? 23:49:57 thatha: mit scheme 23:50:37 maybe it would help if I paste my junk? 23:50:41 pastebin ;) 23:50:42 I'm somewhat surprised that the committee didn't release a final draft; that seems to be the de-facto method of free publication. ISO C, ANS FORTH (ugh), and ANSI CL are all available in that form. 23:50:47 lisppaste: url? 23:50:47 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 23:50:56 decker: ^^ 23:51:08 ha, anyone know how to copy from edwin into windows? 23:51:29 -!- mreggen [n=mreggen@cm-84.215.28.167.getinternet.no] has quit ["Lost terminal"] 23:51:49 decker: check out the emacs manual 23:51:59 decker: Putting something on the kill ring *ought* to put it on the clipboard. 23:52:12 Is that not working for you? 23:52:19 ha, why couldn't mit guys be vim people... 23:52:20 decker: although i'm unfamiliar with mitscheme, list is an identifier in scheme, try renaming the arg. it seems it gets misinterpreted or something 23:52:32 thatha: I think we need to see the code. 23:52:57 mreggen [n=mreggen@cm-84.215.28.167.getinternet.no] has joined #scheme 23:52:59 chandler: i'm glad it caught your interest :) 23:53:01 give me a minute anyhow...I might have it figured out 23:53:03 Rebinding `list' should not be an issue, if the use within that lexical scope is consistent with the binding. 23:53:30 jonrafkind [n=jon@98.202.86.149] has joined #scheme 23:54:59 Actually, I could've sworn that there was a lisppaste command for edwin floating around somewhere. 23:57:28 ... Oh. If you have a recent enough version, it should be already there.