00:03:58 reprore_ [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 00:04:14 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [SendQ exceeded] 00:05:34 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 00:14:09 -!- arthurmaciel [n=user@201.80.20.127] has quit [Remote closed the connection] 00:14:51 -!- flaschenwein [n=olaf_rog@p50808050.dip0.t-ipconnect.de] has left #scheme 00:19:03 dg_ [n=chatzill@host81-131-180-50.range81-131.btcentralplus.com] has joined #scheme 00:21:03 -!- edwardk [i=4bec2004@gateway/web/freenode/x-mqrvcxiymbiajzzo] has quit [Ping timeout: 180 seconds] 00:24:32 jcowan: I was messing around with (module) and didnt' realize it was mutually exclusive with (uses) 00:27:35 -!- Ringo48 [n=Ringo48@97-122-180-214.hlrn.qwest.net] has left #scheme 00:33:02 hosh [n=hosh@c-71-199-176-82.hsd1.ga.comcast.net] has joined #scheme 00:40:35 drybowser6 [n=drybowse@ppp-70-226-195-157.dsl.spfdil.ameritech.net] has joined #scheme 00:41:09 -!- Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 00:41:34 Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has joined #scheme 00:50:35 QinGW [n=wangqing@203.86.89.226] has joined #scheme 00:52:09 chylli [n=lchangyi@119.181.3.122] has joined #scheme 00:53:45 Anyone use/used kanren? 00:53:51 -!- exexex [n=chatzill@85.97.161.116] has quit ["ChatZilla 0.9.85 [Firefox 3.5.2/20090729211433]"] 00:57:14 -!- a-s [n=user@89.122.144.197] has quit [Connection reset by peer] 00:57:15 I have kanren for lunch every now and then 00:57:29 a-s [n=user@89.122.144.197] has joined #scheme 00:57:37 Good? 01:00:40 nom nom nom 01:01:31 what elf said 01:01:44 (actually I think it's "kanro" but what the heck) 01:02:51 -!- dg_ [n=chatzill@host81-131-180-50.range81-131.btcentralplus.com] has quit [Read error: 113 (No route to host)] 01:03:36 ventonegro [n=alex@189.62.124.149] has joined #scheme 01:04:19 -!- ventonegro [n=alex@189.62.124.149] has quit [Client Quit] 01:05:35 -!- rdd [n=rdd@c83-250-159-12.bredband.comhem.se] has quit [Read error: 104 (Connection reset by peer)] 01:07:08 -!- zeroish` [n=zeroish@c-76-98-192-104.hsd1.nj.comcast.net] has quit [Read error: 110 (Connection timed out)] 01:07:36 Mr_Awesome [n=eric@c-98-212-143-245.hsd1.il.comcast.net] has joined #scheme 01:09:02 lowlycoder [n=x@unaffiliated/lowlycoder] has joined #scheme 01:09:12 why is something like sisc not more actuvely used? 01:09:23 or any java based scheme for that matter? 01:10:14 I personally detest the JVM. 01:10:17 there are plenty of java schemes. 01:10:27 many schemers have a thing against java. 01:10:41 mostly cause java is the root of all evil in the programming world today, but thatst just my 2c. 01:10:43 and that carries over to the jvm? 01:10:55 it has the world's most amazing library system 01:11:07 what was that quote i ran into the other day... 01:11:10 IMO the worst thing about Java has always been the JVM. 01:11:24 if the jvm had true garbage collection, it would destroy most programs written for it. 01:11:29 It's second worst thing is the object system 01:11:33 something like that. 01:11:34 why so? the jvm has jit, .... 01:11:42 many schemes have jit. 01:11:45 without java. 01:12:01 it's got jit, a fast generational gc, what is there to dislike about the jvm? 01:12:39 its bloated, its evil, the gc doesnt work particularly well nor can they decide how to do it, it has stack errors out the wazoo, its jit is a mess, and the language it implements is worse than crap. 01:13:00 ah. 01:13:03 and other jits are better? 01:13:05 I second everything elf just said. 01:13:08 the biggest arguement against java : 01:13:13 and the jvm. 01:13:22 lowlycoder: most other jits are better 01:13:33 a few examples please 01:13:36 ahem: 01:13:47 `if the jvm had true garbage collection'? 01:14:06 `the gc doesn[']t work particularly well nor can they decide how to do it'? 01:14:17 Programming languages should be designed not by piling feature on top of feature, but by removing the weaknesses and restrictions that make additional features appear necessary. 01:14:31 riastradh: the first was a quote. 01:14:53 how can you tolerate x86 and hate the jvm? 01:14:54 the second is because java6 has a different gc than java5 which has a different gc than java3 etc. 01:15:31 elf, a quote from what? Is there background? 01:15:31 lowlycoder: I figure we tolorate x86 as there isn't much choice 01:15:40 it was a snarky quote, read the whole thing. 01:15:52 if the jvm had true garbage collection, it would destroy most programs written for it. 01:16:07 just a quote saying that java code is trash. sheesh :) 01:16:21 I'm curious to hear how the JVM lacks `true garbage collection'. 01:16:25 sigh. 01:16:33 Riastradh: it was a pun I think. 01:16:34 it has garbage collection, clearly. 01:16:42 ...oh. 01:16:44 I see. 01:16:46 it was a joke. i ran into it on some software quotes site a few days ago. 01:16:53 java programs are mostly garbage was the point. 01:17:27 elf: a very poorly-worded joke 01:17:30 (`Collect' might have been a clearer verb than `destroy'.) 01:17:36 uh huh 01:17:45 i didnt make the quote. 01:17:50 i was just trying to remember it. 01:17:51 (I understood `destroy' to mean `cause to fail'.) 01:17:54 *offby1* blames elf anyway 01:18:01 glogic [n=glogic@97.76.48.98] has joined #scheme 01:18:35 I think the quote would better with "trash" instead of "destroy" 01:18:39 jonrafkind [n=jon@pool-70-22-235-25.bos.east.verizon.net] has joined #scheme 01:18:57 well, make a new quote and submit it, i was only trying to remember what i read :) 01:19:21 its amazing how the point of something can be ignored in favour of a debate on the wording used. 01:19:56 There are many techniques for garbage collection because they exhibit different performance characteristics, and there is no obviously generally best technique for garbage collection. I'm sure you can find papers and studies and experiments and comparisons behind each of the JVM's different garbage collectors justifying them. I'm sure that Sun, and many others, would be thrilled to know of a single obviously best technique with 01:20:43 no shite. 01:20:55 the jvm used to have only one gc. 01:21:01 then it had some. 01:21:04 then it had a different set. 01:21:11 thats all my second comment meant. 01:21:23 i was only responding to 'it has a fast generational gc' 01:21:34 so you're unhappy that the java gc is changing in order to improve? 01:21:43 elf, perhaps we were inclined to discuss the words you have been using because they have constituted mostly rhetoric with very little content. 01:22:06 lowlycoder: It's more dissapointing that the performance charateristics change through versions. 01:22:28 It's unperdictable where I am going to have GC performance problems next version 01:22:50 fine, bowing out of this discussion to riastradh. go ahead and explain why java schemes arent popular. 01:22:58 it _is_ spelled "Kanro" -- http://www.urbanspoon.com/w/s/7d/RGyeheMdnvCr3q.jpg?1250802204 01:23:19 The same will be true of any programming system with a garbage collector, Arelius. 01:23:37 offby1: I was refering to kanren: http://kanren.sourceforge.net/ 01:24:16 Riastradh: the point is a consistant garbage collector will exhibit consistant performance problems 01:24:22 that you can profile and hide 01:24:23 The main reason, I think, that few implementors of programming systems change their garbage collectors often is that designing, measuring, and comparing garbage collectors is non-trivial. 01:24:28 once the collector changes 01:24:34 so do the performance problems. 01:24:44 incubot: gc is hard, let's go shopping 01:24:47 On the other hand, Stalin does a lot of work in any case, but as it analyzes the code it can at times be hard to figure out why it's being slow 01:25:04 incubot: gc is hard, lying on my back is easy. 01:25:07 "X: it was hard to write, it should be hard to use" (or something like that) 01:26:05 Arelius, Sun could have written a simple-minded stop & copy GC and stuck with that. Its performance characteristics wouldn't have changed over the years, except, of course, when you ran it on a machine with different cache behaviour, different alignment requirements, different word size, different compiler options, different version of the compiler, and so on. 01:26:31 riastradh: exactly what does this have to do with 'why arent more java-based scheme used' ? 01:27:19 which was the original point of the discussion? 01:27:31 elf, it has to do with the answer you gave, which, as far as I can tell, is not a particularly valid line of reasoning. On the other hand, perhaps it is more a demonstration of a knee-jerk reaction against Java that has caused Java-based Schemes to be less popular. 01:27:51 which i clearly admitted to in my second or third line of response, yes. 01:28:29 yes, there are many gcs. 01:28:35 plus, I think clojure is used resonablly often 01:28:55 the jvm CAN have a fast generational gc. no question. 01:28:57 it doesnt have to. 01:28:59 and it didnt used to. 01:29:03 To be honest, I want to hear about the performance problems that you have observed systematically in the JVM, the errors in their justification for their garbage collection techniques, the ways that they can do things better. 01:29:35 The JVM is still bloated.. on windows it still runs regardless of weather or not a java app is running. and the installer still tries to install things not related to java. 01:29:36 i dont care enough tbh, cause i dont use java enough to run into them. im on a p3-400 with 128M of ram, java 1.6 wont even start on this machine. 01:29:58 i'm pretty sure hello, world won't start on that machine 01:29:58 hence the 'bloated' comment. 01:30:09 Garbage collection is an interesting topic. I was hoping that by asking for elaboration on your claims, you would reply with some interesting analyses of problems you have observed. 01:30:10 zbigniew: chicken works fine, thank you very much :) 01:30:26 nope, cant give elaboration cause java wont even work on here. 01:30:34 whereas almost all non-java based schemes work fine. 01:30:51 elf: wow, an iphone is more powerful than that :) 01:30:54 at least almost all the ones ive tried. 01:31:07 copumpkin: a modern calculator watch is more powerful than it. :) 01:31:46 elf: That might be a streach 01:31:59 a calculator watch doesn't have a hard drive 01:32:03 or scheme! 01:32:08 but im still running SCWM against guile 1.4.1 as my WM, several chicken sessions, and gauche fairly regularly. 01:32:34 ive played in several others as well on this box and none have had a problem. 01:32:42 ohh! you use scwm? 01:32:45 Arelius: your watch doesn't have onboard storage? 01:32:48 yeah. heavily modified. 01:33:02 zbigniew: I actually don't have a watch 01:33:08 but it probally wouldn't 01:33:19 for things like proper paging, toolbar, dynamic virtual desktops, etc 01:33:28 exciting 01:33:32 i can send you the code if youre that interested. 01:33:34 and that runs on guile? 01:33:55 guile-1.4.1 with guile-gtk 0.something and elfmods-0.2 01:34:09 Mayhaps, I've been trying to get my wm environment working 01:34:11 0.22 i think 01:34:19 I've been using stumpwm recentlly 01:35:03 have you heard of scrotwm? 01:35:07 (worst name ever) 01:35:13 so thats why i cant give you a java performance breakdown, riastradh, and why i dont use java-based schemes, lowly. 01:35:52 elf: Riastradh has a point, you provided a litany of complaints against java: "its bloated, its evil, the gc doesnt work particularly well nor can they decide how to do it, it has stack errors out the wazoo, its jit is a mess, and the language it implements is worse than crap" 01:36:02 elf, scwm! 01:36:13 copumpkin: nope 01:36:34 ... but you've never run into the problems, don't actually run java, and furthermore don't even care 01:36:50 incubot: who's your daddy? 01:36:54 and report back your success! 01:36:58 zbigniew: fair nuff. 01:37:07 dsmith: yes, youre the prime maintainer nowadays, yes? 01:37:52 Um. Yes. I sent in some patches and it sort of happened. 01:38:01 copumpkin: scrotwm is no worse than macports leaving .turd files all over my filesystem 01:38:13 zbigniew: lol 01:39:19 scrotwm sounds ... hairy 01:39:21 *offby1* ducks 01:39:53 it's bascially xmonad in c, claiming that xmonad is crippled by the fact it's not written in c o.O 01:40:30 what is xmonad written in? 01:40:34 haskell 01:40:51 dsmith: do you want a screen dump of what i have right now? 01:41:02 Sure 01:41:16 http://www.scrotwm.org/ is the site if you're interested, but I'm not convinced by their motivation 01:42:51 Riastradh: I don't think that a reaction against Java-based Schemes is necessarily knee-jerk. I know you're aware of the issues involved that make it nearly impossible to implement efficiently - the lack of a tail-call instruction, early unwind exception semantics, significant overhead for small objects (pairs), the lack of an unboxed small integer type that can be used as a generic Object, etc. 01:45:00 copumpkin: scrotwm is actually derived from an earlier primitive wm called "the human comedy" 01:47:26 Riastradh: Slow implementations of Scheme tend to make up for their lack of runtime efficiency with fast startup and low memory overhead, but a Java-based Scheme can't offer either of those. 01:48:38 scrotum.org? 01:49:41 The number of available Java libraries is sometimes offered as an excuse for using an interpreter running on the JVM, but I have to wonder if something like lichteblau's Cloak (a JVM for SBCL) isn't the better approach to interoperability. 01:49:52 foof: damn domain squatters 01:51:02 Is xmonad slow? 01:51:18 not as far as I know, why? 01:52:45 -!- drybowser6 [n=drybowse@ppp-70-226-195-157.dsl.spfdil.ameritech.net] has quit ["Leaving"] 01:53:33 wait, isn't xmonad just (originally) dwm rewritten in haskell? 01:53:42 it's the circle of life, man 01:54:05 chandler, sure -- but you ought to address that to lowlycoder, not to me! (When I brought up knee-jerk reactions, I meant that perhaps elf was trying to suggest knee-jerk anti-Java reactions as a reason not to use Java-based Schemes, by demonstrating one. I haven't actually opined one way or another on whether there are reasons to use or not to use Java-based Schemes.) 01:55:21 Riastradh: I hadn't read the entire scrollback, but you seemed to attribute low adoption of Java-based Schemes to knee-jerk anti-Java reactions, when there are plenty of valid reasons to have an anti-Java reaction as well. 01:55:50 -!- a-s [n=user@89.122.144.197] has quit [Read error: 54 (Connection reset by peer)] 01:55:54 If you haven't read the scrollback, don't bother; there was very little content conveyed about Java and Scheme. 01:56:05 a-s [n=user@89.122.144.197] has joined #scheme 01:57:06 i'm so confused 01:57:20 there was some conflation of java and the jvm as well going on there 01:57:32 i find the jvm quite useful 01:57:35 java not so much 01:57:47 glogic: interesting. 01:58:18 "Useful" seems to be about the best thing anyone can say about it. 01:58:23 glogic: to ameliorate your confusion, simply switch to my new WM, xgonad 01:58:29 Arelius: well i find java the langauge painful but for portability purposes the jvm has reasonable adoption at the moment so planting another langauge on top of it that "sucks less" isn't a bad idea 01:58:39 zbigniew: haha 01:59:10 Java implementations can't use tagging though. Is there any way around heap allocating every object? 01:59:28 glogic: I figure building multiple binaries will give you much better portability then the jvm 01:59:30 glogic: What is your response to the set of reasons I gave why the JVM is a particularly poor implementation platform for Scheme? 01:59:32 glogic: unfortunately the design of the bytecode prevents efficient implementation of significantly different languages on top of it 01:59:50 glogic: i didn't see your reasons 01:59:54 chandler: * 01:59:57 that was wierd 02:00:14 That advice about reading the scrollback was about *earlier* scrollback, glogic! 02:00:28 Riastradh: aah i probably came in too late for that 02:01:02 I guve ip. This conversation is braiking my brean. 02:01:12 glogic: start at the mention of Balzac and work your way forward 02:01:15 Riastradh: me too 02:01:16 :) 02:01:20 -!- dudleyf [n=dudleyf@ip70-178-212-238.ks.ks.cox.net] has quit [] 02:01:21 foof: There's not much of an alternative. I'm sure you can imagine several ways to try to free integers from their boxes under constrained circumstances. 02:01:37 revolution: number 9 02:01:46 free integers! 02:01:58 yellow number 5. 02:02:09 I am not a Church numeral; I am a free module over Z! 02:02:56 *zbigniew* makes the Churchill Z-sign 02:03:17 Z for Zilch, I guess 02:07:12 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 02:08:22 chandler: I can see using Scheme-on-JVM in an environment wherein the JVM (or Java) is mandated--any implementation inefficiency is cancelled out by the time you don't spend in hospital recuperating from slit wrists 02:09:58 although any place that mandates java probably won't allow scheme; still, a cunning linguist can be snaky 02:10:23 I can see gnawing my hands off at the wrists to escape that environment. If you are stuck on the JVM, then you will spend a significant amount of time spelunking through Java code, and the option of a snorkel won't help much. 02:10:45 nothingHappens [n=nothingh@173-25-176-111.client.mchsi.com] has joined #scheme 02:11:15 *offby1* raises an eyebrow at zbigniew 02:11:36 *zbigniew* sees your eyebrow and raises a Balzac 02:11:56 Then again, it's probably better than using C for something other than implementing an operating system or language runtime. 02:11:57 chandler: i've not been in that position myself, but sometimes we do what we must 02:12:38 So, I guess I would spend quite a lot of time gnawing at my wrists if I didn't have control over the tools I used. 02:12:56 *elf* sees your balzac and raises a fallen caryatid 02:13:48 chandler: many would envy your freedom 02:13:51 -!- lowlycoder [n=x@unaffiliated/lowlycoder] has quit ["Lost terminal"] 02:13:53 minion: chant 02:13:53 MORE LIKE ALLEGRO 02:14:23 minion: Let's not and say we did, eh? 02:14:24 ok, you not and say we did eh first 02:15:01 minion, hee hee 02:15:01 you speak nonsense 02:15:45 Are there Scheme systems in which RATIONAL? and REAL? do not behave identically? 02:16:03 guile at one point. 02:16:10 How did they behave differently? 02:16:25 i think mit scheme at one point too. 02:16:33 -!- Axioplase_ is now known as Axioplase 02:16:41 if you put in 1.3 that was considered real but not rational 02:16:54 if you do 13/10 thats considered rational (and of course real) 02:17:11 that was guile 1.4 though. 02:17:17 what was the justification for that? or was it a bug? 02:17:43 i think all decimal inputs were inexact? 02:17:45 something like that. 02:17:49 i honestly dont remember. 02:18:09 its been a long bloody time. 02:18:12 Decimal syntax, if not prefixed by #e, is read as inexact. 02:18:27 incubot: (cons (rational? +inf) (real? +inf)) 02:18:27 (#t . #t) 02:18:41 incubot: (cons (rational? +nan) (real? +nan)) 02:18:41 (#t . #t) 02:18:47 thats fucked. 02:18:49 hmm 02:18:58 I see no indication that RATIONAL? and REAL? have behaved differently in MIT Scheme in the past twenty years. 02:19:09 incubot: (expt 2 67) 02:19:09 1.47573952589676e+20 02:19:19 rudybot: eval (cons (rational? +inf) (real? +inf)) 02:19:21 *offby1: your "http://paste.lisp.org/display/85443/raw" sandbox is ready 02:19:21 *offby1: error: reference to an identifier before its definition: +inf in module: 'page 02:19:29 riastradh: i may be wrong about mit scheme, its been over a decade since i used it. 02:19:29 .oO("'page"?) 02:19:41 Heh. 02:19:49 rudybot: eval +inf.0 02:19:51 zbigniew: your sandbox is ready 02:19:51 zbigniew: ; Value: +inf.0 02:20:36 Part of the definition of RATIONAL? changed about six years ago from (OR (FLONUM? X) (RAT:RATIONAL? X)) to (IF (FLONUM? X) #T (RAT:RATIONAL? X)). Not sure why. 02:21:24 well, on chicken 4 i get something different 02:21:26 $ csi -p '(list (rational? +inf.0) (real? +inf.0) (chicken-version))' 02:21:26 (#f #t 4.1.1) 02:21:48 incubot: (list (chicken-version) 'dude) 02:21:49 (3.4.0 dude) 02:22:16 seem to recall some discussion about this on the list recently 02:22:18 Why shouldn't a floating-point infinity be considered rational? 02:23:50 this appears to be due to a change on august 5 02:24:27 aug 4 jcowan> Arguably that's a bug: +inf, -inf, and +nan are not rational numbers, 02:24:31 rudybot: eval (cons (rational? +inf.0) (real? +inf.0)) 02:24:31 *offby1: ; Value: (#f . #t) 02:24:33 and Chicken should not report them as such. 02:24:49 aug 5 felix> Will be fixed in trunk in a few hours. 02:25:08 jcowan, please argue! 02:28:28 elf, I think that was before guile used gmp. 02:29:41 Anyway, floating-point exceptions (in the literal sense, not in the technical sense) aside, are there any Scheme systems in which RATIONAL? and REAL? behave significantly differently? 02:41:59 npe [n=npe@94-224-251-223.access.telenet.be] has joined #scheme 02:43:21 $ csi -p "(cons (real? 'zbigniew) (rational? 'zbigniew))" 02:43:22 (#f . #t) 02:43:42 -!- npe [n=npe@94-224-251-223.access.telenet.be] has quit [Client Quit] 02:45:52 it's good to know though 02:46:02 that you are rational? 02:46:03 i feel so immaterial, yet so sane 02:46:29 -!- reprore_ [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 02:46:57 reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 02:53:02 incubot: like a gossamer mensch 02:53:05 they're more like cute hacks than massive constructs :) 02:53:15 indeed 02:53:22 tjafk2 [n=timj@e176219200.adsl.alicedsl.de] has joined #scheme 02:54:26 -!- glogic [n=glogic@97.76.48.98] has left #scheme 02:55:13 (if (rational? n) (if (real? n) "whew" "Call Descartes!") #f) 02:55:45 Modius [n=Modius@24.174.112.56] has joined #scheme 02:55:58 synx: i'd leave the #f off so the result is unspecified 02:57:41 -!- a-s [n=user@89.122.144.197] has quit [Read error: 131 (Connection reset by peer)] 02:57:54 a-s [n=user@89.122.144.197] has joined #scheme 02:58:58 That is invalid syntax in PLT. 03:00:12 synx: so PLT is not R5RS compliant? 03:02:38 In r5rs mode it is. 03:02:44 PLT has different languages... 03:02:57 -!- reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 03:03:19 -!- copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has quit [] 03:09:36 -!- tjafk1 [n=timj@e176200155.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:10:10 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 03:13:30 Well, then "That is invalid syntax in PLT" might not have been the best sentence choice (for I don't use PLT and don't know) 03:19:13 r2q2 [n=user@acad246244.wireless.uic.edu] has joined #scheme 03:19:18 underspecified [n=eric@softbank220043052007.bbtec.net] has joined #scheme 03:25:05 underspecified_ [n=eric@softbank220043052007.bbtec.net] has joined #scheme 03:25:05 -!- underspecified [n=eric@softbank220043052007.bbtec.net] has quit [Read error: 54 (Connection reset by peer)] 03:25:10 -!- g0ju [n=moo@spalila.hrz.fh-zwickau.de] has quit [Read error: 104 (Connection reset by peer)] 03:25:24 -!- underspecified_ [n=eric@softbank220043052007.bbtec.net] has quit [Read error: 104 (Connection reset by peer)] 03:25:29 underspecified [n=eric@softbank220043052007.bbtec.net] has joined #scheme 03:26:26 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 03:28:42 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 03:35:41 subversus [i=elliot@loveturtle.net] has joined #scheme 03:44:51 port->ssl-ports: connect failed (error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol) 03:45:21 I dunno, looks like a fine handshake to me. I can't parse it in my head of course... 03:52:05 karlw [n=user@adsl-99-157-202-134.dsl.pltn13.sbcglobal.net] has joined #scheme 03:55:18 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 04:00:22 Where may I find the full source for this: http://okmij.org/ftp/Scheme/sxml-math.txt 04:01:26 ``The 04:01:26 second part is the formatter, from SXML to LaTeX (from which PDF was 04:01:26 eventually built). 04:01:26 '' 04:01:39 D'oh! 04:03:47 karlw: http://okmij.org/ftp/Scheme/impromptu-shift-tr.scm ? 04:04:10 karlw: Wait you already found that. 04:04:39 Yeah, that's why I said ``D'oh!'' 04:06:15 I could customize it for doing my homework assignments. 04:06:24 -!- phax [n=phax@unaffiliated/phax] has quit ["Leaving"] 04:07:36 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 04:07:57 -!- r2q2 [n=user@acad246244.wireless.uic.edu] has quit [Remote closed the connection] 04:09:40 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 04:09:48 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 04:18:09 -!- luz [n=davids@189.122.90.116] has quit [Remote closed the connection] 04:18:38 designs703 [n=designs7@c-69-143-121-199.hsd1.va.comcast.net] has joined #scheme 04:19:10 I have an sicp question...curious how I did with this one problem 04:19:47 designs703: What's your question? 04:20:33 -!- underspecified [n=eric@softbank220043052007.bbtec.net] has quit [] 04:20:41 is this a decent solution to the problem in the comment? http://pastebin.com/m5eb262ed 04:20:57 I'm just doing this for fun, wanted to improve my grasp of fp 04:22:17 I think the sum-of-squares is unnecessary, it's in there from an earlier excercise 04:24:04 designs703: If you want to get better at fp, you should focus on the exercises in section 1.3. 04:24:45 OK, I'm getting to that part in a bit. I'm just wondering what's the best way to sort a, b, and c 04:25:10 this sounds familiar 04:25:19 haha 04:25:33 designs703: Riastradh had a really clever solution for that one 04:25:59 is there a built-in like the sort functions in python? 04:26:12 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 04:26:12 First of all, use cond rather than nested if 04:26:44 is cond with else that much clearer? 04:26:53 it would be a nested cond 04:27:17 Don't use language constructs that the text hasn't discussed yet. 04:27:34 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 04:27:41 ok, both of these are decribed at this point 04:27:51 well, or is not 04:28:39 I think the main purpose of this exercise is to torture you. 04:29:08 actually, or is described before this, I had skipped it 04:29:30 so this is fine as far as concepts go. guess I won't prematurely optimize 04:30:04 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 04:31:07 Don't try to write optimized code until you get used to how functional programming works. 04:31:22 I have a good bit of experience with it via javascript 04:31:52 but that tends to be higher-level than what I'm doing here 04:32:44 Try to come up with a test to tell whether `or' is a procedure. 04:34:14 as opposed to? 04:35:13 The sum-of-squares exercise. 04:35:22 (define (or x y) (if x x y)) 04:35:53 Also, do 1.5 and 1.6 04:36:07 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 04:36:40 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 04:37:22 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 04:37:33 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 04:37:55 Then, do the exercises in section 1.3 and chapter 2 that seem the most confusing to you. 04:38:38 k, thanks 04:39:14 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 04:39:17 -!- designs703 [n=designs7@c-69-143-121-199.hsd1.va.comcast.net] has quit [] 04:39:56 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 04:42:31 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 04:42:57 -!- foof [n=user@dn157-046.naist.jp] has quit [Read error: 104 (Connection reset by peer)] 04:43:09 -!- karlw [n=user@adsl-99-157-202-134.dsl.pltn13.sbcglobal.net] has left #scheme 04:44:04 foof [n=user@dn157-046.naist.jp] has joined #scheme 04:46:42 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 04:55:23 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 05:01:17 -!- a-s [n=user@89.122.144.197] has quit [Read error: 54 (Connection reset by peer)] 05:01:28 a-s [n=user@89.122.144.197] has joined #scheme 05:02:35 g0ju [n=moo@spalila.hrz.fh-zwickau.de] has joined #scheme 05:03:46 copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has joined #scheme 05:11:38 -!- chylli [n=lchangyi@119.181.3.122] has quit [Remote closed the connection] 05:13:09 -!- a-s [n=user@89.122.144.197] has quit [Read error: 104 (Connection reset by peer)] 05:13:21 a-s [n=user@89.122.144.197] has joined #scheme 05:17:22 chylli [n=lchangyi@119.181.3.122] has joined #scheme 05:18:12 -!- ASau [n=user@83.69.240.52] has quit ["off"] 05:21:08 underspecified [n=eric@walnut.naist.jp] has joined #scheme 05:21:31 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 05:21:53 -!- chylli [n=lchangyi@119.181.3.122] has quit [Remote closed the connection] 05:35:16 chylli [n=lchangyi@119.181.3.122] has joined #scheme 06:02:20 Riastradh: While it is true that inf (+ or -) may be seen as a rational number of unbounded size, there is no plausible way to represent it as a ratio, and so allowing RATIONAL? to return false on it seems to me appropriate. NaN is sometimes "any number" and sometimes "no number", and perhaps NUMBER? should return #f on it altogether, but again it is more convenient to treat it as real, allowing NaN+xi and x+NaNi for any x to be complex. 06:07:24 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 60 (Operation timed out)] 06:17:08 MrFahrenheit [n=RageOfTh@80.65.72.29] has joined #scheme 06:21:05 -!- jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has left #scheme 06:23:02 ASau [n=user@host38-231-msk.microtest.ru] has joined #scheme 06:43:26 -!- foof [n=user@dn157-046.naist.jp] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 06:46:17 mmc [n=mima@esprx01x.nokia.com] has joined #scheme 06:52:47 klutometis: map it 06:53:04 argh 06:53:23 bad completion, the intended recipient has left. 07:06:46 kib2 [n=kib@bd137-1-82-228-159-28.fbx.proxad.net] has joined #scheme 07:14:34 -!- QinGW [n=wangqing@203.86.89.226] has quit [Success] 07:17:12 -!- Fuufie [n=innocent@86.80-203-225.nextgentel.com] has quit ["Leaving"] 07:24:44 HG` [n=HG@xdsler076.osnanet.de] has joined #scheme 07:32:14 -!- leppie [n=lolcow@196.210.200.241] has quit [Read error: 60 (Operation timed out)] 07:32:17 leppie [n=lolcow@196.210.200.241] has joined #scheme 07:34:38 npe [n=npe@195.207.5.2] has joined #scheme 07:41:33 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 07:47:14 QinGW [n=wangqing@203.86.89.226] has joined #scheme 07:56:18 Fufie [n=poff@Gatekeeper.vizrt.com] has joined #scheme 08:08:22 Axioplase: karlw? 08:08:31 -!- tjafk2 is now known as timj 08:09:04 -!- timj [n=timj@e176219200.adsl.alicedsl.de] has quit ["Client exiting"] 08:09:22 tjafk [n=timj@e176219200.adsl.alicedsl.de] has joined #scheme 08:13:51 -!- kib2 [n=kib@bd137-1-82-228-159-28.fbx.proxad.net] has quit ["Leaving."] 08:14:23 -!- tjafk is now known as timj 08:37:06 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Read error: 113 (No route to host)] 08:41:22 schmir [n=schmir@mail.brainbot.com] has joined #scheme 08:48:42 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 09:04:06 foof [n=user@walnut.naist.jp] has joined #scheme 09:31:26 rstandy [n=rastandy@95.74.31.88] has joined #scheme 09:38:11 leppie|work [i=52d2e3c8@gateway/web/freenode/x-xgucuwbdwxhmfwph] has joined #scheme 09:43:58 klutometis: yes. 09:45:31 When "or" is a macro, it can't be MAP'd and therefor can tell that map is *not* a procedure. But it looks like he wasn't even asking 09:45:50 -!- Axioplase is now known as Axioplase_ 09:52:37 ejs [n=eugen@139-199-124-91.pool.ukrtel.net] has joined #scheme 09:58:21 foof` [n=user@dn157-046.naist.jp] has joined #scheme 10:09:09 -!- foof [n=user@walnut.naist.jp] has quit [Read error: 110 (Connection timed out)] 10:12:17 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["If technology is distinguishable from magic, it is insufficiently advanced."] 10:16:07 Nshag [i=user@Mix-Orleans-106-1-152.w193-248.abo.wanadoo.fr] has joined #scheme 10:19:13 huangjs [n=user@watchdog.msi.co.jp] has joined #scheme 10:22:52 -!- rstandy [n=rastandy@95.74.31.88] has quit [Read error: 60 (Operation timed out)] 10:27:13 -!- QinGW [n=wangqing@203.86.89.226] has quit [Connection timed out] 10:27:45 dg_ [n=chatzill@host81-131-180-50.range81-131.btcentralplus.com] has joined #scheme 10:30:45 rdd [n=user@c83-250-159-12.bredband.comhem.se] has joined #scheme 10:49:03 -!- a-s [n=user@89.122.144.197] has left #scheme 10:49:10 -!- foof` is now known as foof 11:01:45 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 11:07:01 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 11:10:05 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 11:13:17 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 11:14:40 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 11:31:10 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [Nick collision from services.] 11:31:18 Edico [n=Edico@unaffiliated/edico] has joined #scheme 11:31:19 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 11:37:41 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Read error: 60 (Operation timed out)] 11:43:53 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Operation timed out] 11:45:03 karme [n=user@static.179.75.40.188.clients.your-server.de] has joined #scheme 11:45:25 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 11:45:47 danfowler [n=Dfowler@ip-66-9-231-226.autorev.intellispace.net] has joined #scheme 11:47:54 -!- karme [n=user@static.179.75.40.188.clients.your-server.de] has quit [Remote closed the connection] 11:48:53 -!- bombshelter13_ [n=bombshel@76-10-149-209.dsl.teksavvy.com] has quit [Client Quit] 11:52:26 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 11:59:08 mario-goulart [n=user@201-40-162-47.cable.viacabocom.com.br] has joined #scheme 12:00:03 -!- danfowler [n=Dfowler@ip-66-9-231-226.autorev.intellispace.net] has quit [Read error: 104 (Connection reset by peer)] 12:00:28 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Operation timed out] 12:01:31 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 12:02:57 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 12:09:07 sepult [n=user@xdsl-87-78-101-241.netcologne.de] has joined #scheme 12:09:22 danfowler [n=Dfowler@ip-66-9-231-226.autorev.intellispace.net] has joined #scheme 12:11:39 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 12:22:57 a-s [n=user@89.122.144.197] has joined #scheme 12:25:37 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 12:29:50 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 12:31:39 cracki [n=cracki@43-180.eduroam.RWTH-Aachen.DE] has joined #scheme 12:32:35 -!- ejs [n=eugen@139-199-124-91.pool.ukrtel.net] has quit [Connection timed out] 12:34:36 and` [n=hufs4@ti0035a340-0817.bb.online.no] has joined #scheme 12:37:32 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 12:47:00 aack [n=user@a83-161-214-179.adsl.xs4all.nl] has joined #scheme 12:54:50 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [No route to host] 12:58:53 easy4 [n=easy4@c-68-45-192-148.hsd1.pa.comcast.net] has joined #scheme 13:01:02 karme [n=user@static.179.75.40.188.clients.your-server.de] has joined #scheme 13:01:09 annodomini [n=lambda@64.30.3.122] has joined #scheme 13:02:39 -!- dsmith [n=dsmith@cpe-173-88-196-177.neo.res.rr.com] has quit ["Leaving"] 13:03:44 -!- MrFahrenheit [n=RageOfTh@80.65.72.29] has quit [Read error: 104 (Connection reset by peer)] 13:04:13 MrFahrenheit [n=RageOfTh@80.65.72.29] has joined #scheme 13:09:53 -!- annodomini [n=lambda@wikipedia/lambda] has quit [Read error: 104 (Connection reset by peer)] 13:10:05 langmartin [n=user@exeuntcha.tva.gov] has joined #scheme 13:12:28 annodomini [n=lambda@wikipedia/lambda] has joined #scheme 13:24:31 bombshelter13_ [n=bombshel@206.80.252.37] has joined #scheme 13:34:27 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 13:36:46 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 13:37:26 annodomini_ [n=lambda@130.189.179.215] has joined #scheme 13:37:35 Repentinus [n=Repentin@209.163.191.90.dyn.estpak.ee] has joined #scheme 13:37:37 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 13:37:41 -!- leppie|work [i=52d2e3c8@gateway/web/freenode/x-xgucuwbdwxhmfwph] has quit ["Page closed"] 13:39:44 Fabse [n=mightyfi@wikipedia/Track-n-Field] has joined #scheme 13:41:12 -!- annodomini [n=lambda@wikipedia/lambda] has quit [Read error: 110 (Connection timed out)] 13:41:12 -!- annodomini_ is now known as annodomini 13:44:28 bzzbzz [n=franco@207.236.146.245] has joined #scheme 13:45:22 -!- dg_ [n=chatzill@host81-131-180-50.range81-131.btcentralplus.com] has quit [Remote closed the connection] 13:45:51 -!- MrFahrenheit [n=RageOfTh@80.65.72.29] has quit [Read error: 110 (Connection timed out)] 13:46:27 -!- jonrafkind [n=jon@pool-70-22-235-25.bos.east.verizon.net] has quit [Connection timed out] 13:46:45 Makoryu [n=vt920@pool-74-104-123-150.bstnma.fios.verizon.net] has joined #scheme 13:50:12 When defining a nested function, are there any (non-stylistic) differences between using (define) and (let) inside the top-level function's body? 13:50:59 ponzao___ [n=vesam@xdsl-83-150-86-25.nebulazone.fi] has joined #scheme 13:51:33 Or, well, since I know (let) begins a new scope... Is there any drawback to defining new symbols in the main function's scope, as opposed to creating an inner scope? 13:52:57 inner defines are roughly equivalent to letrec, and can only be used at the start of a block 13:53:13 thehcdreamer [n=thehcdre@94.198.78.26] has joined #scheme 13:55:25 And if I'm only defining one inner function...? 13:56:35 -!- thehcdreamer [n=thehcdre@94.198.78.26] has quit [Client Quit] 13:56:53 thehcdreamer [n=thehcdre@94.198.78.26] has joined #scheme 13:58:42 -!- npe [n=npe@195.207.5.2] has quit [] 14:02:12 leppie|work [i=52d2e3c8@gateway/web/freenode/x-wgaywzahsixiihfo] has joined #scheme 14:06:26 Makoryu: letrec (which is what internal define is defined in terms of) doesn't always produce code that is easy for a compiler to optimize 14:07:20 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 14:08:29 luz [n=davids@189.122.90.116] has joined #scheme 14:09:00 Pray elaborate, langmartin. 14:12:58 letrec can require the production of symbols which are then set! to their values later, eliminating the opportunity for a complier to substitute away expressions. r5 letrec maybe always requires this, since the right-hand side can do call/cc? 14:13:04 -!- underspecified [n=eric@walnut.naist.jp] has quit [] 14:14:47 er, right-hand side of each binding, that is 14:14:58 And this is a problem only when the right-hand expression is a...? 14:16:48 hm. I suppose it would only come up if you actually executed something -- they were calling that "complex" in the fixing letrec paper. So, values should be ok. 14:17:00 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 14:17:36 (What I was expecting in the blank I left for you to fill was `procedure call'.) 14:18:17 langmartin: Hmm, the whole reason I was using an inner function in the first place was for TCO 14:18:50 OK. Just checking -- whenever someone says `foo is harder than bar for a compiler to optimize', especially when the difference between foo and bar is subtle, I get nervous. 14:19:53 Another way of looking at this is that LETREC can behave counterintuitively if any right-hand side is an unknown procedure call that could use CWCC: that can turn what looks like an innocent little functional construct, recursive binding, into a mutable cell! 14:20:07 -!- Fufie [n=poff@Gatekeeper.vizrt.com] has quit ["Leaving"] 14:22:12 So it's not merely that compilers have a hard time reasoning about it -- reasoning about it can be tricky for anyone, human or machine. 14:22:51 which I suppose is always the case whenever a problem is hard for a compiler to reason about. 14:23:58 MrFahrenheit [i=RageOfTh@92.36.213.80] has joined #scheme 14:29:46 Makoryu: sorry if made things unecessarily complicated; using procedure definitions inside other procedures is a good thing, and tail calls are a often a good reason to do so. I just meant that let is a little more straightforward than internal defines (which are the same as a letrec), and not entirely for stylistic reasons. 14:30:51 -!- jao [n=jao@31.Red-83-33-230.dynamicIP.rima-tde.net] has quit [Read error: 54 (Connection reset by peer)] 14:34:06 -!- ofthelesser [n=oftheles@cpe-174-100-207-183.neo.res.rr.com] has quit [Read error: 60 (Operation timed out)] 14:34:48 langmartin: Actually you told me pretty much exactly what I was wondering :p Thanks 14:37:38 npe [n=npe@94-224-251-223.access.telenet.be] has joined #scheme 14:42:36 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Connection timed out] 14:47:03 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 14:49:52 As a language *user*, I would tend to ignore this point if the right-hand side is a literal lambda expression (or syntax that expands into same); it's the compiler author's job to determine that I'm not doing anything funny (especially involving call/cc). 14:51:34 What is this point, if the right-hand expression is a lambda? 14:52:08 If I were the type of person that used inner `define's, that is. 14:58:32 -!- ASau [n=user@host38-231-msk.microtest.ru] has quit ["off"] 14:59:44 -!- chylli [n=lchangyi@119.181.3.122] has quit [Remote closed the connection] 15:01:29 -!- Repentinus [n=Repentin@209.163.191.90.dyn.estpak.ee] has quit [Read error: 104 (Connection reset by peer)] 15:06:22 epsilonhalbe [n=martin_h@chello080109123005.9.15.vie.surfer.at] has joined #scheme 15:07:01 Hello epsilonhalbe. 15:07:23 hi 15:08:56 epsilonhalbe is looking for a language to use to learn how to program. He asked in #dylan if Dylan is a good language to start with, and regrettably I had to answer "no". 15:09:17 -!- mmc [n=mima@esprx01x.nokia.com] has quit [Remote closed the connection] 15:10:25 -!- epsilonhalbe [n=martin_h@chello080109123005.9.15.vie.surfer.at] has left #scheme 15:10:43 underspecified [n=eric@softbank220043052007.bbtec.net] has joined #scheme 15:10:44 epsilonhalbe [n=martin_h@chello080109123005.9.15.vie.surfer.at] has joined #scheme 15:10:52 -!- underspecified [n=eric@softbank220043052007.bbtec.net] has quit [Read error: 104 (Connection reset by peer)] 15:10:56 underspecified [n=eric@softbank220043052007.bbtec.net] has joined #scheme 15:11:42 -!- a-s [n=user@89.122.144.197] has left #scheme 15:12:21 -!- epsilonhalbe [n=martin_h@chello080109123005.9.15.vie.surfer.at] has left #scheme 15:13:29 Cowmoo [n=Cowmoo@static-70-108-241-27.res.east.verizon.net] has joined #scheme 15:14:05 -!- thehcdreamer [n=thehcdre@94.198.78.26] has quit [] 15:16:19 epsilonhalbe [n=martin_h@chello080109123005.9.15.vie.surfer.at] has joined #scheme 15:16:33 -!- epsilonhalbe [n=martin_h@chello080109123005.9.15.vie.surfer.at] has left #scheme 15:20:14 dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 15:27:05 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 15:31:35 Fufie [n=innocent@86.80-203-225.nextgentel.com] has joined #scheme 15:32:26 -!- schmir [n=schmir@mail.brainbot.com] has quit [Remote closed the connection] 15:32:27 -!- ecraven [n=nex@140.78.42.103] has quit [Read error: 145 (Connection timed out)] 15:36:19 patmaddox [n=patmaddo@c-98-193-75-2.hsd1.il.comcast.net] has joined #scheme 15:47:36 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 104 (Connection reset by peer)] 15:48:25 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 15:50:50 dysinger` [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 15:55:55 ASau [n=user@83.69.240.52] has joined #scheme 16:03:36 -!- dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has quit [Connection timed out] 16:05:48 -!- and` [n=hufs4@ti0035a340-0817.bb.online.no] has quit ["Leaving"] 16:14:04 flaschenwein [n=olaf_rog@p50809DD4.dip0.t-ipconnect.de] has joined #scheme 16:14:13 haha 16:14:14 http://www.google.com/search?q=999999999999999+-+999999999999998 16:14:40 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 16:15:39 *gnomon* eyes foof suspicously 16:15:48 It worked before you broke it, foof. 16:16:20 Oh, it had bignums? 16:17:53 -!- Fabse [n=mightyfi@wikipedia/Track-n-Field] has quit [] 16:26:00 argg, i hate thinking of names for macros 16:27:00 o yes, thats what I wanted to ask you foof 16:27:36 does your match do any optimizations for matches with common prefixes ? 16:29:17 -!- karme [n=user@static.179.75.40.188.clients.your-server.de] has left #scheme 16:29:22 nope 16:29:37 i guess that would be hard just using syntax-rules 16:29:38 I believe Wright's original code is the only matcher in common use that does so. 16:30:02 It would be writable with syntax-rules, but I suspect unmaintainable. 16:30:42 that's why I like syntax-case :) 16:30:57 Some day I'd like to make a general pattern-matching framework that works both for generating code statically and for dynamically building pattern tables. 16:31:04 why does google return 0 for 999...8 and 999...7 but works fine for 999...6 and down? 16:31:14 leppie: That's why I ike syntactic-closures. 16:31:16 But I suspect that the only good way to do that is to use a general partial evaluator. 16:31:17 like 16:31:41 -!- mbishop_ is now known as mbishop 16:31:51 On the other hand, a good compiler should be able to optimize common prefixes of primitive predicates by itself. 16:32:10 When will you release that compiler, foof? 16:32:40 I have just wrote one in syntax-case in 70 lines, but I have quite specific constraints like fixed-length 'keys' 16:32:56 Riastradh: When I port the chibi runtime to my real compiler. 16:33:15 foof: I have a runtime, I just need a better compiler! :) 16:33:46 mbishop: Borderline of long double precision? 16:34:18 nope, I think they are using fixed point math there :p 16:34:45 double precision can handle that subtraction 16:36:07 dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 16:37:41 -!- cracki [n=cracki@43-180.eduroam.RWTH-Aachen.DE] has quit ["If technology is distinguishable from magic, it is insufficiently advanced."] 16:39:42 -!- dysinger` [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has quit [Read error: 60 (Operation timed out)] 16:42:13 something peculiar about : 666666666666669 - 666666666666667 16:42:34 from that point the mistake happens 16:42:57 drop both last digits by 1 and the answer is correct, go up, stays wrong 16:43:44 Because the google calculator is recursively implementing subtraction? 16:43:46 How about 3 + 4? Does that at least give 9? 16:43:46 -!- sepult [n=user@xdsl-87-78-101-241.netcologne.de] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 16:44:10 (define (sub a b) (if (zero? b) a (sub (- a 1) (- b 1)))) 16:45:06 666666666666669 - 666666666666667 = 0 16:45:08 Gee, I just discovered a wonderful, um, easter egg in OpenSSL's s_client. 16:45:10 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 16:45:12 666666666666668 - 666666666666666 = 2 16:45:41 Riastradh, oho? Do tell! I use that functionality pretty regularly. 16:45:44 The sort of easter egg that is rotten and indicative of brain damage, and that causes hours of debugging to be wasted. 16:45:49 Thus 2 = 0, something has been created out of nothing, and God must exist. QED 16:46:28 i'm rich!!! 16:46:53 actually the 2 turned into 0, so we gain nothing :( 16:46:55 sepult [n=user@xdsl-87-78-101-241.netcologne.de] has joined #scheme 16:47:00 gnomon, here, try `openssl s_client -connect host:port' -- doesn't matter what host or port, or what other options you pass, although you're more likely to stumble across this if you're trying to talk the SMTP -- and then type a single line starting with an `r' (e.g., `rcpt to:...'; you can even start an SMTP transaction if you want, `mail from:', `rcpt to:', &c.). 16:47:20 This is just to get you ready for the brain damage that is about to follow. 16:47:32 Does everything behave as you would expect when you do this, gnomon? 16:47:34 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 104 (Connection reset by peer)] 16:48:07 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Read error: 60 (Operation timed out)] 16:48:41 Riastradh, so far so good, yes. 16:49:01 -!- patmaddox [n=patmaddo@c-98-193-75-2.hsd1.il.comcast.net] has quit ["Leaving..."] 16:49:18 Now try an SMTP transaction as it's written in the RFC, with the commands in uppercase. Or just start a line with an uppercase R. 16:51:58 Since I didn't try it with a lowercase r to begin with, my next step was to report a bug, and to spend several hours, and to cause the person to whom the bug was assigned to spend some time too, trying to figure out what was wrong with the TLS client or server that prevented me from conducting SMTP transactions. 16:52:25 But I'm giving you this little exercise in order to save you from all that trouble. 16:53:47 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 16:55:01 Is there a list somewhere of lexer/parser builders in Scheme? I've been using PLT's "parser tools" but have considered switching to Larceny. They wouldn't have to be lex/yacc style. Antlr style or parser combinator style or whatever is of interest as well. Of course portability, popularity (ring out those bugs via users using it) and reasonable documentation a big plus. 16:56:28 I believe Larceny does have some good tools in that regard 16:56:38 Oh-ho-ho, this rotten easter egg is even documented in the man page! 16:56:47 Really? That's cool. I'll have to take a closer look. 16:57:18 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 16:57:38 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit [Client Quit] 16:57:46 ; LexGen and ParseGen are available at; http://www.ccs.neu.edu/home/will/Research/SW2006/*.tar.gz 16:59:37 gnomon, so, what do you think of that snazzy little feeping creature that cost me this morning? 17:00:01 Great! 17:00:20 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 17:01:47 dzhus [n=sphinx@95-24-95-208.broadband.corbina.ru] has joined #scheme 17:04:37 Riastradh: What is the cause of the brain-damage here, and does stunnel behave correctly in this instance? 17:04:46 reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 17:04:46 leppie - that's a good find, but is there a list of libraries that comes with Larceny anywhere? 17:04:58 chandler, the cause of the brain damage is that the s_client application helpfully renegotiates the session, and ignores the line, if you enter a line that begins with `R'. 17:05:12 Oh, dear. 17:05:21 Which is GREAT if you're trying to debug TLS connections to SMTP servers. 17:05:26 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 17:05:35 RCPT TO:<...> 17:05:38 dysinger` [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 17:05:45 ; Hello? Hello server? Will you please read my RCPT line? 17:06:08 I've discovered that the concept of out-of-band signalling is lost on many people. 17:06:50 And the general concept of quotation and escaping, for that matter. 17:06:54 That's... that's... 17:07:21 -!- dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has quit [Read error: 110 (Connection timed out)] 17:07:22 For instance, Postfix *still*, to this day, will corrupt your mail if you ask it to deliver to a Unix mbox file. 17:07:53 The reason? Apparently the concept of *quoting* From_ lines, rather than *corrupting* From_ lines, is lost on them. 17:08:03 Using the mbox format is asking for trouble in any event. 17:08:19 Using mail is asking for trouble. 17:09:10 Using the mbox format is asking for trouble because so many lunatics have so spectacularly failed to understand quotation. 17:09:23 In fact, the mbox format is one of the simplest data formats I have ever encountered. 17:09:37 But amazingly, people manage to screw it up in more than one way! 17:10:23 sometimes i have this in my mail signature: From the mbox format, save us. 17:10:37 usually when the mail arrives it says >From instead 17:10:38 It is too simple for its intended purpose. And using formats that rely on quotation to distinguish structure from data is asking for trouble in general, yes. 17:12:43 (Another other way by which people screw it up is by clobbering its data with Content-Length header fields and then relying on them as part of the metadata.) 17:13:04 -!- dzhus [n=sphinx@95-24-95-208.broadband.corbina.ru] has quit ["8"] 17:13:54 dzhus [n=sphinx@95-24-95-208.broadband.corbina.ru] has joined #scheme 17:15:39 -!- Summermute [n=scott@c-68-55-207-173.hsd1.dc.comcast.net] has quit [Read error: 60 (Operation timed out)] 17:21:55 weinholt: just got your latest zip stuff, awesome, zip runs out of the box :) unzip bombs out, will inspect 17:22:14 cool 17:24:24 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [Read error: 110 (Connection timed out)] 17:25:05 Narrenschiff [n=ritchie@mo-rsmitha21.op.umist.ac.uk] has joined #scheme 17:33:06 a-s [n=user@89.122.144.197] has joined #scheme 17:34:37 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [SendQ exceeded] 17:35:08 -!- a-s [n=user@89.122.144.197] has left #scheme 17:35:52 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 17:36:02 -!- sepult [n=user@xdsl-87-78-101-241.netcologne.de] has quit [Read error: 104 (Connection reset by peer)] 17:36:25 sepult [n=user@xdsl-87-78-122-236.netcologne.de] has joined #scheme 17:37:40 -!- HG` [n=HG@xdsler076.osnanet.de] has quit [Client Quit] 17:37:41 -!- sepult [n=user@xdsl-87-78-122-236.netcologne.de] has quit [Remote closed the connection] 17:38:49 Guest51784 [n=user@xdsl-87-78-122-236.netcologne.de] has joined #scheme 17:40:08 a-s [n=user@89.122.144.197] has joined #scheme 17:40:11 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [Excess Flood] 17:40:36 -!- Guest51784 is now known as sepult 17:40:41 dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 17:40:47 -!- sepult [n=user@xdsl-87-78-122-236.netcologne.de] has quit [Remote closed the connection] 17:40:58 sepult [n=user@xdsl-87-78-122-236.netcologne.de] has joined #scheme 17:41:02 bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 17:41:25 -!- sepult is now known as Guest34310 17:41:30 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 17:42:03 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 17:42:06 -!- Guest34310 [n=user@xdsl-87-78-122-236.netcologne.de] has quit [Remote closed the connection] 17:42:06 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 17:43:09 sepult [n=user@xdsl-87-78-122-236.netcologne.de] has joined #scheme 17:48:58 -!- nothingHappens [n=nothingh@173-25-176-111.client.mchsi.com] has quit ["Ex-Chat"] 17:49:28 masm [n=masm@bl7-196-186.dsl.telepac.pt] has joined #scheme 17:51:31 -!- dysinger` [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has quit [Success] 17:52:13 antoszka [n=antoszka@unaffiliated/antoszka] has joined #scheme 17:55:36 Cheery [n=cheery@a88-112-137-25.elisa-laajakaista.fi] has joined #scheme 17:56:23 Riastradh, egads - that's terrible! 17:56:27 In-band signalling -sucks-. 17:56:30 hmm, I don't recall postfix ever corrupting an mbox, but then again I mainly deliver to maildir now 17:56:57 (sorry for the latency, there - I got pulled away by some very insistent interlopers) 17:59:02 zbigniew, you've never found `>From' in messages sent to you? 18:01:08 Riastradh: How else is it supposed to disambiguate message boundaries? 18:01:26 foof, it can quote From_ lines, rather than corrupting them. 18:02:27 What's the quoting mechanism? 18:02:29 The correct transformation is expressible even as a regular expression substitution: s/^\(>*\)From />\1From / 18:02:54 (`Correct' here means `sensible', unfortunately, not `conforming to a particular specification'.) 18:03:06 Instead, the transformation is: s/^From />From / 18:03:19 That is, the transformation that Postfix actually applies. 18:03:33 Oh, sure. But both result in `>From' in messages. 18:03:55 Yep. But you can't tell whether the original message had `>From ' or `From '. 18:04:58 -!- ASau [n=user@83.69.240.52] has quit [Read error: 104 (Connection reset by peer)] 18:05:00 I think my application of shadow stack in my language implementation just dried up. 18:05:10 Blah, we are in a dark age of computing :( 18:05:34 (To be fair to Postfix, it is merely being bug-for-bug compatible with the original sendmail mistake.) 18:06:08 (But, come on -- it's being BUG-FOR-BUG COMPATIBLE with a stupid mistake of the seventies!) 18:07:24 mrsolo [n=mrsolo@nat/yahoo/x-vjdyipmewitjmovz] has joined #scheme 18:08:04 do you have some real scheme on handling garbage collection? 18:08:13 *Riastradh* blinks. 18:08:28 No, but I have some real peanut butter here. 18:08:32 well, any scheme would do I think. 18:08:41 -!- zeroish [n=zeroish@135.207.174.50] has quit [Remote closed the connection] 18:08:52 I also have some almond butter, which satisfies the `real' part but not the `peanut' part. 18:09:06 gah. 18:09:15 I'm sorry, can you clarify your question? 18:09:40 I do that, just a second. 18:10:12 The problem is probably a classic. 18:10:21 I should find pointers from a stack. 18:10:51 dho [n=devon@onager.omniti.com] has joined #scheme 18:10:58 -!- Edico [n=Edico@unaffiliated/edico] has quit [Read error: 110 (Connection timed out)] 18:11:00 the stack itself contains both C and my language implementation's code. 18:11:17 That sounds... exciting. 18:11:22 Sorry to bring something this off-topic; was foof recently active in here? I need to talk to him re: his GSoC project somewhat urgently 18:11:27 and with special conditions I'd like to let C-stack portions also contain pointers that get updated. 18:11:35 dho, yes, fairly recently. 18:11:49 dho, gee, is he being sent to the headmaster's office? 18:12:16 His mentor is caught up with things and I need to talk to him about his project status so we can complete the final eval for his mentor. 18:12:50 Cheery, so either you must introduce what is alternately called a `conservative garbage collector' or a `bug' into your program, which scans the whole C stack looking for anything that vaguely resembles a live object; or you must explicitly identify the locations of all live objects on the stack. 18:13:45 Edico [n=Edico@unaffiliated/edico] has joined #scheme 18:14:45 I'd like to make it accurate if I can do it such at all. 18:15:32 ASau [n=user@83.69.240.52] has joined #scheme 18:16:10 patmaddox [n=patmaddo@230.sub-70-194-13.myvzw.com] has joined #scheme 18:16:32 -!- dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has quit [Connection timed out] 18:17:55 Riastradh: well I think I could impose special conditions over those portions of C-code that have live objects in them. 18:18:06 Cheery, so, in any code where garbage collection has the remotest chance of occurring (e.g., everywhere outside the garbage collector), you can pass around not representations of objects but locations for the representations of objects, and make sure that before any potentially pointerful objects are stored in any such locations, you register them with the garbage collector. 18:18:29 rudybot: seen foof 18:18:29 TimMc: foof was seen in/on #scheme fourteen minutes, fifty-five seconds ago, saying "Oh, sure. But both result in `>From' in messages.", and then foof was seen in/on #scheme thirteen minutes, eighteen seconds ago, saying "Blah, we are in a dark age of computing :(" 18:18:48 dho: You just missed 'im. 18:18:51 Such locations are often arranged as a list of arrays, forming a stack that matches the C control stack. 18:20:03 Code to allocate new temporary locations might look like this: 18:20:24 struct { void *next; object_t objects [3]; } frame; 18:20:29 gc_protect_frame (&frame); 18:20:38 ...oops: 18:20:41 gc_protect_frame (&frame, 3); 18:20:45 zeroish [n=zeroish@135.207.174.50] has joined #scheme 18:21:13 thanks 18:21:14 -!- dho [n=devon@onager.omniti.com] has left #scheme 18:21:23 /* Now you can pass &frame.objects[i] around, and be sure that no garbage collection will mess you up. But don't dereference that explicitly, except inside routines guaranteed to be safe, because that would put an object in a location the GC doesn't know about! */ 18:21:34 gc_unprotect_frame (&frame); 18:23:18 what you describe looks a lot like shadow stack. 18:23:43 gc_protect_frame and gc_unprotect_frame manage a stack of frames (gc_unprotect_frame doesn't need &frame as an argument, but it enables sanity checks), and with this, the garbage collector can treat the stack of frames as roots. 18:23:57 -!- reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 18:24:35 Riastradh: ok, though now comes the problem that frustrates me. 18:24:39 I'm not familiar with the term `shadow stack', sorry. 18:24:40 karme [n=user@static.179.75.40.188.clients.your-server.de] has joined #scheme 18:25:20 say you have a function like this: object_t do_something() 18:25:24 Don't do that. 18:25:30 void do_something(object_t *); 18:25:52 ... 18:25:55 ooooh 18:26:07 Never pass object_ts around. Pass object_t *s, only. 18:26:20 The only locations where object_ts should arise is the arrays in those frames. 18:26:46 now you made it clear. :) oh damn it was simple. 18:27:13 (needs lot of modifications into my code though! 18:27:58 can you help me yet with another thing? 18:28:11 Perhaps? 18:29:08 thing is, I could as well use this frame protection for my language as well. 18:30:10 *foof* successfully evades the headmaster 18:30:47 I've done a script in python that produces netwide assembler code, which I link into my runtime when I run it. 18:31:38 Summermute [n=scott@c-68-55-207-173.hsd1.dc.comcast.net] has joined #scheme 18:31:52 http://bitbucket.org/cheery/collection/src/tip/script/ 18:32:00 http://bitbucket.org/cheery/collection/src/tip/script/nasm.py 18:32:15 that file is quite much heart of my little toy. 18:32:20 *chandler* idly wonders what response an insult to the quality of the R6RS delivered on r6rs-discuss will garner. 18:33:54 Riastradh: do you know what steps should I take to turn that into a compiler that'd be able to produce code proper for that frame-protection stuff? 18:34:44 You shouldn't use this GC frame protection mechanism for anything but foreign C code. For your own code, you should design your stack so that it can be traced; the only reason for using the mechanism I suggested in C is that you can't design the C stack. 18:35:55 what kind of design I should apply into my stack? 18:37:24 You could arrange for your stack to be a contiguous array of live objects; that makes tracing it easy (for (sp = stack_base; sp < stack_limit; sp += 1) trace_location (sp)). 18:38:12 You could arrange for continuations to be structured as a linked list of frames, each with its size and a pointer to its parent. Then if you know the top continuation, you know all the locations of live objects on the stack. 18:39:26 You can also arrange for the stack to be a self-describing data structure, so that unboxed integers and floats can be stored on the stack without inducing conservatism. 18:42:12 chandler: I don't think it would be very productive, better to say what's wrong, best to propose a way to fix it. 18:42:16 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["If technology is distinguishable from magic, it is insufficiently advanced."] 18:43:17 chandler: isn't it somewhat same as what Riastradh said last, or is there difference? 18:43:58 The difference, Cheery, is the continuation frames I described tell you how many objects they contain, whereas the continuation frames that chandler described tell you how many bytes of pointerless data *and* how many objects they contain. 18:44:43 foof: If this is re R6RS, my comment was specific to the language relating to hygiene and phase for lexically bound variables, paricularly with respect to literal references in the expansion phase. 18:45:02 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 18:45:16 dang stupid in-place list editing 18:46:08 I remove every piece from this list, and add each piece into these lists, never failing to add the piece back. So now 295/300 pieces were never added back. 18:46:15 rudybot: seen dho 18:46:16 TimMc: dho was seen in/on #scheme twenty-five minutes, three seconds ago, saying "thanks", and then dho was seen leaving the channel in/on #scheme twenty-five minutes, two seconds ago 18:46:31 Heh. 18:46:34 They were always added back and never added back WHAT 18:46:52 foof: Someone by the username of "dho" was looking for you urgently. 18:47:05 TimMc: Yeah, I got in touch with him. 18:47:10 Riastradh: hmm.. in both techniques my language implementation's stack could also contain pointerless data? 18:47:34 Cheery, what chandler and I were discussing was only the format of the object-language's continuations, not the meta-language's continuations. 18:47:34 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 54 (Connection reset by peer)] 18:48:01 If live objects can be stored in locations found on the meta-language's stack, you'll have to identify those too. 18:48:15 Otherwise, the format of the meta-language's stack is immaterial. 18:48:22 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 18:48:48 ok. I think I try go forwards with this thing now. 18:50:36 thank you ppl. 18:52:38 -!- patmaddox [n=patmaddo@230.sub-70-194-13.myvzw.com] has quit [Read error: 104 (Connection reset by peer)] 18:58:16 -!- 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"] 19:01:56 -!- leppie|work [i=52d2e3c8@gateway/web/freenode/x-wgaywzahsixiihfo] has quit [Ping timeout: 180 seconds] 19:05:32 -!- jay-mccarthy [n=jay@128.187.81.189] has quit [Read error: 104 (Connection reset by peer)] 19:05:38 jonrafkind [n=jon@nomad.ccs.neu.edu] has joined #scheme 19:06:03 patmaddox [n=patmaddo@230.sub-70-194-13.myvzw.com] has joined #scheme 19:08:40 -!- Narrenschiff [n=ritchie@mo-rsmitha21.op.umist.ac.uk] has quit [Read error: 110 (Connection timed out)] 19:13:30 -!- mbishop [n=martin@unaffiliated/mbishop] has quit [Read error: 110 (Connection timed out)] 19:13:38 oh well... (equal? a b) is different from (not (equal? a b)) isn't it. 19:13:47 I'm so smart. 19:13:56 There, works perfectly. :p 19:19:26 patmaddo_ [n=patmaddo@250.sub-70-194-58.myvzw.com] has joined #scheme 19:22:44 -!- jonrafkind [n=jon@nomad.ccs.neu.edu] has quit [No route to host] 19:25:03 dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 19:39:48 mbishop [n=martin@unaffiliated/mbishop] has joined #scheme 19:40:27 -!- patmaddox [n=patmaddo@230.sub-70-194-13.myvzw.com] has quit [Connection timed out] 19:46:57 -!- patmaddo_ [n=patmaddo@250.sub-70-194-58.myvzw.com] has quit [Read error: 110 (Connection timed out)] 19:47:12 borism_ [n=boris@195-50-197-130-dsl.krw.estpak.ee] has joined #scheme 19:52:21 borism__ [n=boris@195-50-197-130-dsl.krw.estpak.ee] has joined #scheme 19:52:50 -!- borism [n=boris@195-50-197-250-dsl.krw.estpak.ee] has quit [Read error: 145 (Connection timed out)] 19:56:44 -!- dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has quit [Success] 19:58:15 -!- borism_ [n=boris@195-50-197-130-dsl.krw.estpak.ee] has quit [Read error: 145 (Connection timed out)] 20:02:33 -!- npe [n=npe@94-224-251-223.access.telenet.be] has quit [anthony.freenode.net irc.freenode.net] 20:02:33 -!- kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has quit [anthony.freenode.net irc.freenode.net] 20:02:33 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [anthony.freenode.net irc.freenode.net] 20:02:33 -!- dfeuer [n=dfeuer@wikimedia/Dfeuer] has quit [anthony.freenode.net irc.freenode.net] 20:02:33 -!- Riastradh [n=rias@pool-141-154-207-110.bos.east.verizon.net] has quit [anthony.freenode.net irc.freenode.net] 20:03:30 Hezy [n=hezy@62.56.254.212] has joined #scheme 20:03:47 Riastradh [n=rias@pool-141-154-207-110.bos.east.verizon.net] has joined #scheme 20:04:34 npe [n=npe@94-224-251-223.access.telenet.be] has joined #scheme 20:04:34 kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has joined #scheme 20:04:34 Adamant [n=Adamant@unaffiliated/adamant] has joined #scheme 20:04:34 dfeuer [n=dfeuer@wikimedia/Dfeuer] has joined #scheme 20:06:12 -!- mbishop [n=martin@unaffiliated/mbishop] has quit [Connection timed out] 20:06:51 Foofie [n=innocent@86.80-203-225.nextgentel.com] has joined #scheme 20:08:19 mbishop [n=martin@unaffiliated/mbishop] has joined #scheme 20:09:04 -!- incubot [i=incubot@klutometis.wikitex.org] has quit [Broken pipe] 20:09:04 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Broken pipe] 20:09:05 -!- elmex [i=elmex@89.144.17.55] has quit [Remote closed the connection] 20:09:13 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 20:10:26 elmex [i=elmex@ist.m8geil.de] has joined #scheme 20:10:44 incubot [i=incubot@klutometis.wikitex.org] has joined #scheme 20:12:57 -!- masm [n=masm@bl7-196-186.dsl.telepac.pt] has quit ["Leaving."] 20:31:29 -!- Fufie [n=innocent@86.80-203-225.nextgentel.com] has quit [Read error: 110 (Connection timed out)] 20:36:04 -!- dzhus [n=sphinx@95-24-95-208.broadband.corbina.ru] has quit [Remote closed the connection] 20:41:37 jcowan [n=jcowan@72.14.228.129] has joined #scheme 20:42:39 Is it true that scsh requires a 32-bit (ILP32) system? 20:43:49 -!- bzzbzz [n=franco@207.236.146.245] has quit ["leaving"] 20:44:12 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 20:50:17 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 20:51:26 -!- flaschenwein [n=olaf_rog@p50809DD4.dip0.t-ipconnect.de] has left #scheme 20:55:46 -!- npe [n=npe@94-224-251-223.access.telenet.be] has quit [] 20:55:52 Yes, jcowan. 21:00:59 dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has joined #scheme 21:03:31 Don't I remember someone porting parts of scsh to a newer scheme48? 21:04:30 I'd rather somebody port it to Chicken myself. 21:05:28 I'm still avoiding Chicken until it gets numbers right. 21:06:28 -!- sepult [n=user@xdsl-87-78-122-236.netcologne.de] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 21:12:12 chandler: are you concerned about the bugs around numerator/denominator/rationalize, or the fact that you need an extra gesture to get a full tower? 21:13:30 alias csi='rlwrap csi -R numbers" (and alias csc='csc -R numbers') are my friends in the latter respect. 21:13:50 nothingHappens [n=nothingh@173-25-176-111.client.mchsi.com] has joined #scheme 21:13:50 yes, if there is a problem with numbers activated, please speak up 21:15:18 jcowan: Is that with an unreleased version of Chicken? csi -R numbers does not work for me with 4.1.0. 21:15:18 Is there a `nice' (cough) utility in the class of sort, uniq, tr, &c., which, given two (sorted) input streams of lines, spits out each line in common? 21:15:20 other than being unable to force existing eggs to use unlimited precision, that is 21:15:42 zbigniew: That's a big issue too. 21:15:43 chandler: you'll need to obtain the numbers egg via chicken-install 21:16:42 I still don't understand this. If chibi-scheme has bignums, why can't a big feathery implementation like Chicken? 21:16:50 has bignums without extra futzing around, that is 21:17:35 Riastradh: comm -12 is what you want 21:17:42 woah, chicken is chicken because it doesn't get numbers right. 21:17:51 the main problem in my book is not lack of unlimited precision but the 53-bit floating point cutoff, which can cause strange issues esp. on 64-bit systems 21:17:59 chandler: "sudo chicken-install numbers" 21:19:18 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Read error: 113 (No route to host)] 21:19:37 jcowan: (a) I don't want to have to hold a seance and wave a dead bird around just to get proper behavior, and (b) while that works at the REPL, any eggs I use which don't use numbers themselves won't work properly, will they? 21:20:27 *jcowan* interjects that Chicken's fixnum-flonum tower is perfectly licit according to R5RS, it just doesn't do everything chandler wants it to. 21:21:44 Your point (b) is well-taken, however. Non-numbers-using modules will not know what ratnums, rectnums, or bignums are. (I don't think Chicken does compnums, but I could be wrong.) 21:22:04 chandler: (a) if one command is a problem, stick to GUIs (b) it's the rare egg that needs numbers, and rarer the one that doesn't already use numbers--but it does happen on occasion 21:22:49 If the use of the numbers module is so common, why not just put bignums and ratnums in the base numeric tower? 21:23:06 it's not common, I just said it was rare 21:23:48 it is the design philosophy of chicken, take it or leave it; one can also argue that utf8 support should be standard, but one would be tilting at windmills 21:23:50 Oh. I couldn't parse what you meant by "rarer the one that doesn't already use numbers". 21:24:00 i see 21:24:20 -!- nothingHappens [n=nothingh@173-25-176-111.client.mchsi.com] has quit ["Ex-Chat"] 21:24:33 (b) it's the rare egg that needs numbers, and rarer the one that doesn't already use numbers when it needs it 21:24:42 Ah. 21:24:53 *jcowan* pictures Felix waving his arms round and round, fending off would-be towerists, Unicadets, and R6RS-ites. 21:25:39 the chicken design philosophy is mostly 'move everything out of core', sometimes even if this has a negative effect on integration 21:26:02 -t should be happy with it. 21:27:14 jcowan: I'll admit to being accurately described by the first two labels. 21:27:54 *jcowan* too. 21:32:09 nothingHappens [n=nothingh@173-25-176-111.client.mchsi.com] has joined #scheme 21:34:32 -!- Nshag [i=user@Mix-Orleans-106-1-152.w193-248.abo.wanadoo.fr] has quit ["Quitte"] 21:34:36 nothingHappens_ [n=nothingh@173-25-176-111.client.mchsi.com] has joined #scheme 21:34:59 So who's interested in joining the Thing One and Thing Two working groups? 21:37:19 zeroish` [n=zeroish@c-76-98-192-104.hsd1.nj.comcast.net] has joined #scheme 21:39:24 I'd be interested in either or both. Has the process for choosing the working group membership been commented on publicly yet? 21:41:02 -!- bombshelter13_ [n=bombshel@206.80.252.37] has quit [] 21:43:42 -!- mario-goulart [n=user@201-40-162-47.cable.viacabocom.com.br] has quit [Remote closed the connection] 21:45:00 Neither publicly nor privately, at least in my hearing. 21:45:22 MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 21:46:49 -t has a lot of optimism about what people can be convinced of. I especially enjoyed the suggestion to standardize a low-level macro system capable of supporting hygiene in the Thing One language. 21:48:12 Do you have a good link to your case for removing characters from the language? If not, is it possible to summarize briefly? 21:49:46 -!- nothingHappens_ [n=nothingh@173-25-176-111.client.mchsi.com] has quit ["Ex-Chat"] 21:50:35 A character is usually understood to be a member of a finite universe of fundamental objects from which text is built. In the ASCII world, that made sense. In the Unicode world, there are several counterparts to "character", some finite, some not, suitable for different purposes. Furthermore, the assumption that functions over strings are lifts, or lexicographicals, of functions over characters works badly in Unicode. 21:51:11 It suffices to have strings, and string<->integer functions whose domain/range is limited to (loosely speaking) strings of length 1. 21:51:55 That's brief: is it sufficient? 21:52:19 haesbaert [n=haesbaer@201.54.129.16] has joined #scheme 21:52:47 -!- Hezy [n=hezy@62.56.254.212] has left #scheme 21:53:42 In the Unicode context, I tend to read the "character" concept as being a tagged code point, and a string as being a vector of code points. Is there a reason why a tagged code point type should not be provided, or is there some other problem in my thinking? 21:54:07 There is no particular reason to privilege the segmentation into code points over any other segmentation. 21:54:18 (into DGCs, or code units, or ...) 21:55:15 Java, for example, provides a variety of (external) iterators over strings, hiding the fact that Java strings are 16-bit code units. 21:55:20 s/are/"are" 21:55:34 s/16-bit/sequences of 16-bit 21:55:46 I'm looking for a popular scheme implementation, I had a look on scheme48 and SCM, is that ok ? 21:55:58 I'm starting SICP, so I'll mostly be testing very simple code. 21:56:00 haesbaert: SCM is not popular. Steer clear of that one. 21:56:14 Scheme48 is a good implementation. You might also like PLT and MIT Scheme. 21:56:32 chandler: you'd say these three are the most common ? 21:56:45 No; I've honestly no idea which three are the most common. 21:57:07 But they are reasonably common, and reasonably good choices if you're going to be working through SICP. 21:57:22 chandler: which one would you recommend then ? at this time I lack the knowledge to form any opinion. 21:58:47 -!- copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has quit [Read error: 110 (Connection timed out)] 21:58:56 Would you prefer something that comes with a development environment including an editor? 21:59:22 chandler: I'm an emacs junkie :P 21:59:32 copumpkin [n=pumpkin@dhcp-212-238.cs.dartmouth.edu] has joined #scheme 21:59:59 Oh! Well, then you've got a number of options. 22:00:10 -!- nothingHappens [n=nothingh@173-25-176-111.client.mchsi.com] has quit ["Ex-Chat"] 22:00:27 Scheme48 is a very good choice in that case. 22:01:01 that would be then :P 22:01:13 You might have some fun with MIT Scheme - it comes with its own Emacs-like editor called Edwin, which is written in Scheme. 22:02:10 chandler: I'll give it a try on scheme48 first 22:07:15 saccade [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has joined #scheme 22:08:33 jcowan: Working at anything less than a code point level is fragile; I can't encode an arbitrary portion of a vector of 16-bit code units because I can't encode half of a surrogate pair. While ideally this should not be an issue, in practice I've seen it create problems. 22:09:25 True. But working at a code-point level is fragile too: I truncate an 11-codepoint string to 10 codepoints, causing the last letter to lose its diacritic. 22:09:32 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 22:09:38 chandler, working at less than the default grapheme cluster level is fragile, too: I can't select a region of text and paste it somewhere sensibly. 22:09:51 This is what I mean by saying that strings aren't really sequences. 22:09:58 Each level has its uses. 22:10:22 -!- Cheery [n=cheery@a88-112-137-25.elisa-laajakaista.fi] has quit ["Lost terminal"] 22:10:38 Instead, I'd treat strings as atomic, and have map-* functions that internally iterate over them in various ways. 22:11:24 jcowan, Riastradh: Yes, I'll fully admit that there are plenty of issues with working at a level below grapheme clusters, but there are issues at this level. I might lose information when working with text containing characters not defined in my version of the Unicode standard, for instance. 22:11:28 I think is the latest revision of a document that we all discussed a couple of years ago. 22:11:42 -!- uman is now known as uman_boring 22:11:50 Oops, . 22:12:11 *jcowan* prints it and runs. More later. 22:12:14 -!- jcowan [n=jcowan@72.14.228.129] has quit ["Leaving"] 22:12:56 Apparently some of the opinions expressed in that document are slightly outdated now: `John Cowan wants to use the data type that Scheme calls ``characters'' as simply a wrapper for code points.' 22:13:32 I personally believe that encoding fragility is sufficient reason to avoid any representation at a lower level than code points, but I do believe that the representation at the code point level ought to be exposed, if only to write new encoders and decoders. 22:14:56 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["If technology is distinguishable from magic, it is insufficiently advanced."] 22:15:04 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 22:15:46 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:17:47 -!- karme [n=user@static.179.75.40.188.clients.your-server.de] has left #scheme 22:18:44 -!- Foofie [n=innocent@86.80-203-225.nextgentel.com] has quit ["Leaving"] 22:19:35 chandler, I think you have seen before. I still stand by it as generally the right idea for a text abstraction, although there remain many issues with it and, I'm sure, many details to fix. 22:19:47 I am reading over it again. 22:21:23 Notably absent are any routines for encoding text into and decoding text out of octet vectors. 22:21:47 Oh, I guess that's already mentioned as the first issue. 22:22:50 Right. I don't have an issue with the facilities provided in this draft, though I'd agree with the desire for guarantees on running times of indexing operations that's mentioned in the Issues section. 22:23:43 I am very strongly opposed to providing any guarantees for those operations better than linear running time. 22:25:35 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 22:25:57 -!- langmartin [n=user@exeuntcha.tva.gov] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 22:26:24 I'm strongly opposed to not providing a better guarantee for those operations. I think it's possible to use a more time-efficient internal representation than UTF-8 for strings containing mostly code points <=127 without sacrificing much in the way of speed efficiency. 22:27:27 I'm not willing to say one way or another whether representations with fixed-width code points are better than those with variable-width code points. 22:29:19 I'm not commenting on the width of the code points. I think it's possible to achieve O(lg n) where n is the maximum length of the string while still using a variable-width representation. 22:29:26 chandler: should I be using scheme48 mode or cmuscheme48 ? 22:29:47 That sounds like a good question for Riastradh. 22:29:57 This proposal tries to identify some important operations independently of particular techniques for implementing them, so that we can try multiple implementations; perhaps later we can decide that certain representations are better than others, and standardize on their requirements. 22:30:46 haesbaert, use scheme48.el; it is a superset of cmuscheme48.el, I believe. 22:31:53 Riastradh: Cool it's working, I was expecting the output on the mini buffer. 22:32:28 chandler, perhaps you're aware of better algorithms than I am; would you care to elaborate on how to implement TEXT-POSITION->INDEX and INDEX->TEXT-POSITION in time logarithmically proportional to the number of code points in the text? 22:32:50 ...assuming a variable-width representation such as UTF-8 or UTF-16. 22:34:56 why use strings at all? i'm partial to emacs buffers :) 22:35:06 -!- REPLeffect [n=REPLeffe@69.54.115.254] has quit ["bye"] 22:35:10 weinholt: I think that's irrelevant to the discussion at hand. 22:35:14 Sorry, let me be more concrete. Let's suppose texts are represented as triples of octet or sexagetet vector, start index, and end index. 22:35:37 ok 22:35:42 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 22:35:43 And by sexagetet, of course I mean sexdectet. 22:36:17 Riastradh: The idea which had popped to mind was to overlay an index data structure on the variable-width encoding which associates an index with an offset which should be added to the index to find the corresponding code point in the vector. 22:36:22 (Clearly John Cleese needs to give me a midnight Latin lesson by the palace graffiti.) 22:37:01 thanks for all that will do, see you all 22:37:02 -!- haesbaert [n=haesbaer@201.54.129.16] has quit ["leaving"] 22:38:12 Riastradh: This would, of course, add additional space to the string. If the string contains very long runs of characters with a single-byte (or two-byte in UTF-16) encoding, then it works out well. If not, it doesn't. 22:38:55 The motivation for the use of a 16-bit code unit in Java was, as I understand it, that characters outside the BMP are very rare, and efficiency when working with strings containing many of these characters is not important. 22:40:08 This would provide sub-linear indexed access to code points with that representation, with a space overhead proportional to the number of code points outside the BMP in the string. 22:40:36 Sorry, I don't quite follow the structure. Can you be a little more explicit about the `index data structure'? 22:41:20 -!- dysinger [n=dysinger@71-20-35-99.war.clearwire-wmx.net] has quit [Connection timed out] 22:41:40 Riastradh, I believe that chandler is talking about a compact list of byte offsets and lengths which, when taken into account, would allow one to translate a character offset into a byte offset with a few additions. 22:41:46 That is, something like a skip list. 22:42:44 There are a few data structures which I could imagine using, and probably more that I don't use often that would work well. A skip list is one option; I've also used a trie-like data structure for mapping entire ranges of integers to values in the past, with good run-time performance. 22:43:02 gnomon's got the idea, even though my description was quite poor. 22:43:25 chandler, the idea has been proposed and debated before, and I believe that it has received consideration in the document that Riastradh linked to earlier. 22:44:49 I didn't see any discussion in the draft that Riastradh linked to; I'd not be surprised that it's been proposed before. 22:44:58 I haven't spent a great amount of time thinking about this, and next to none researching it. 22:45:37 jcowan, Riastradh and others have spent rather a long time on both; but of course they can speak for themselves. 22:46:04 OK. Yes, you can obviously implement the index<->text position mapping using fancier data structures -- but I want basic, simple data structures to be plausible implementations as well, until it has been empirically ruled out that they don't perform very well for a large class of problems. 22:48:12 This is probably not a matter of specification in any event; it usually sufficies to encourage implementors to use the best available representations. 22:48:15 borism [n=boris@195-50-197-130-dsl.krw.estpak.ee] has joined #scheme 22:48:36 nothingHappens [n=nothingh@173-25-176-111.client.mchsi.com] has joined #scheme 22:49:15 It does affect the specification, though: I am not aware of any way to implement the mapping between indices and text positions on triples of {octet, sexdectet} vector, start index, and end index, in sublinear time in the worst case. 22:51:15 What I meant is that I'm reversing my position on whether a guarantee of sub-linear indexed access time should be provided by the specification. 22:51:20 OK. 22:51:24 Riastradh, I belive the traditional ripostes to your point are (1) build the magical indexing data structure at read time, and (2) aim for the quickest possible common case rather than the least bad worst case. 22:52:44 gnomon, sure, quick common cases always useful, but for operations such as these, it is the specification's job to tell the programmers what kind of bounds to expect on running time of the operations when reasoning about the programmer's own algorithms. 22:52:56 -!- borism__ [n=boris@195-50-197-130-dsl.krw.estpak.ee] has quit [Read error: 145 (Connection timed out)] 22:55:21 Riastradh, right. I'm just trying to dredge out the threads of that argument from my recollections of the past few times it has played out. 22:55:48 rtra [n=rtra@unaffiliated/rtra] has joined #scheme 22:56:08 Really, someone with a sufficiently round tuit should trawl the IRC logs and generate conversation trees for these common arguments, and perhaps offer them in choose-your-own-adventure / z-machine interactive formats. 22:59:50 We could perhaps even create several trees for common such arguments: Modern Strings: Constant What? (or, Unicode is Hard, Let's Go Shopping); Threaded Garbage Collection (or: Mommy, Why Does my Brain Smell Like Burning); Macro Systems (or, How Little Bobby Learned About Hygiene); R5RS vs. R6RS (or, Yo' Momma So Ugly); and so on. 23:06:13 -!- mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit ["ChatZilla 0.9.85 [Firefox 3.5.2/20090729225027]"] 23:07:32 -!- saccade [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has quit ["This computer has gone to sleep"] 23:09:41 annodomini [n=lambda@wikipedia/lambda] has joined #scheme 23:10:10 gnomon: I've often contemplated creating such a thing for the evolution/creationism "debate". 23:11:11 blackened`_ [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 23:11:40 TimMc, I don't mean to be rude, but I really don't want to touch that conversation topic. 23:12:48 haha, OK 23:13:28 I don't either, just using it as an example of something that people argue over and over with the *exact same arguments*. 23:13:49 incubot is almost sufficient for recapping common arguments 23:13:54 incubot: dingbat 23:13:58 incubot: recap me a common argument! 23:13:58 I could be wrong, but Unicode is DINGBAT CIRCLED SANS-SERIF DIGIT FIVE. 23:14:01 is there a standard function for just returning an argument, like instead of (lambda (x) x) in higher level functions? 23:14:26 Well, is there? 23:14:30 incubot: identity 23:14:33 I'd give OR the expansion (or) => #f, (or x ...) => (cond (x => identity) ...) 23:14:34 saccade [n=saccade_@COMBINATOR.MIT.EDU] has joined #scheme 23:14:40 -!- MrFahrenheit [i=RageOfTh@92.36.213.80] has quit [Read error: 110 (Connection timed out)] 23:14:58 incubot: boole? 23:15:01 what is boole? 23:15:09 incubot: limpid 23:15:10 Yeah, I know PLT has `identity`. 23:15:11 Someone once said BOOLE is the crowning jewel perched precariously upon the perfect peak of programmer prowess, casting its limitless limpid light over the lands of those who scuff and wallow in the dreary dust of digital depravity and unbounded wilful ignorance of the testament of Our Lord God as channeled through the X3J13 committee. 23:15:20 Thanks, that's what I was looking for. 23:15:36 flaschenwein [n=olaf_rog@p50809DD4.dip0.t-ipconnect.de] has joined #scheme 23:16:26 I met Sussman yesterday. That was cool. 23:16:34 He regaled us with tales of telescopes. 23:17:12 i like sussman 23:17:15 incubot: brain damage? 23:17:15 incubot: sussman? 23:17:17 so one could say sicp is a good source for learning how to write actual scheme code (as opposed to translating in your brain from C)? 23:17:20 http://blog.red-bean.com/sussman/?cat=7 23:17:58 REPLeffect [n=REPLeffe@69.54.115.254] has joined #scheme 23:19:42 *TimMc* wonders if that Sussman is related to Jerry Sussman 23:20:00 Comment of the day, right there: http://blog.red-bean.com/sussman/?p=26#comment-115 23:20:32 tmilford [n=tmilford@76.89.231.7] has joined #scheme 23:20:51 hee hee; I also enjoyed how the American Tuna representative commented on another entry 23:21:17 arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has joined #scheme 23:23:05 *arcfide* sighs. 23:23:10 Good to be back and hacking. 23:23:10 arcfide, memo from rudybot_: TimMc told me to tell you: Nice talk! 23:23:23 Well, after balancing my checkbooks....that took much longer than it should have. 23:23:33 TimMc: Hey, thanks. 23:23:42 If you have any suggestions, comments, thoughts, or the like, let me know. 23:24:02 minion: Why are you so slow! I already talked to him. 23:24:02 him: why do you want to know? 23:24:16 Someone asked me how much I have talked with users about Descot, and I figured that I had actually talked with a lot of people about it, or at least tried to do so. 23:24:44 TimMc: Well, you can't blame the poor bot! :-) After all, I haven't been around for a while. Hehe. 23:25:11 minion: chant 23:25:11 MORE THAT 23:28:11 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [Read error: 110 (Connection timed out)] 23:34:48 -!- Makoryu [n=vt920@pool-74-104-123-150.bstnma.fios.verizon.net] has left #scheme 23:35:30 syntropy_ [n=who@unaffiliated/syntropy] has joined #scheme 23:36:33 -!- aack [n=user@a83-161-214-179.adsl.xs4all.nl] has quit [Read error: 110 (Connection timed out)] 23:52:00 incubot: Dammit, I got from Some Other Sussman's site to jwz's site, and now I have 50 tabs open! 23:52:03 No, it's not; there are tabs there. I'm guessing you have `indent-tabs-mode' set to t and `tab-width' set to 4. 23:53:46 karlw [n=user@adsl-99-157-202-134.dsl.pltn13.sbcglobal.net] has joined #scheme 23:55:53 -!- bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 23:58:00 -!- karlw [n=user@adsl-99-157-202-134.dsl.pltn13.sbcglobal.net] has left #scheme