00:00:58 sepult [n=buggarag@xdsl-87-78-101-105.netcologne.de] has joined #scheme 00:08:55 -!- mariorz [n=ffffg@li10-58.members.linode.com] has quit [Read error: 110 (Connection timed out)] 00:19:38 gfb [i=80640586@gateway/web/freenode/x-1957c6bce4c5ea16] has joined #scheme 00:20:43 phearle [n=phearle@c-24-63-120-211.hsd1.ma.comcast.net] has joined #scheme 00:22:10 -!- joast [n=rick@76.178.184.231] has quit [Read error: 110 (Connection timed out)] 00:24:03 joast [n=rick@76.178.184.231] has joined #scheme 00:24:09 kraehe [n=kraehe@91-66-12-150-dynip.superkabel.de] has joined #scheme 00:24:40 *kraehe* wonders if, there is a scheme that integrates into .net/mono as nice as jscheme does for java? 00:27:40 ironscheme 00:27:48 kraehe: ask leppie 00:27:55 rudybot: seen leppie 00:27:55 *offby1: leppie was seen in/on #scheme eleven hours, thirty-five minutes ago, saying "could you not use 2 macro's? where the first generates such a pattern as above?", and then leppie was seen in/on #scheme three hours, fifty-three minutes ago, saying "ouch" 00:28:04 hi 00:28:15 moin leppie ;-) 00:28:32 offby1, your company has just filed patent applications for automated insertion of advertisements into rare and out-of-print books. 00:29:11 So that they can derive exorbitant revenue from putting the text of Dante's Inferno from Project Gutenberg with advertisements into Kindles. 00:29:49 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 00:29:50 http://jscheme.sourceforge.net/jscheme/doc/javadot.html <- precisely, is there any scheme implementing something like the java dot notation for mono/.net? 00:29:56 Riastradh: what company would that be? 00:30:06 Oh, you don't work for Amazon any longer? 00:30:09 heck no 00:30:12 Oops. 00:30:13 not for two years, hooray 00:30:21 I was just a contractor anyway 00:30:40 Well, whether you work for them or not, I am...speechless. 00:30:47 kraehe: not in ironscheme sorry :( 00:31:11 how is .net/mono integration done in ironscheme? 00:31:18 maybe at a later stage something similar 00:32:00 *kraehe* has an ugly large mono lib called libsl, and I would prefer to script the application in scheme, over writing it in c# 00:32:28 or writing accessor functions for every bit of this lib 00:32:51 unfortunately you would have to map all the methods and such still, no auto importing facility yet 00:33:04 no reflection yet? 00:33:22 you could try whip something yourself :) 00:34:07 I use a syntactic interface, so no calls are ever done via reflection 00:35:42 it has not been my primary focus :) 00:36:04 *kraehe* would prefer not to write c# ... the bloat way would be: abcl is ported to mono and able to do reflections on mono libs 00:36:44 but running a common lisp, and an emacs like editor on top would be overkill for my 192mb server 00:37:46 isn't using C#/mono an overkill for it already? 00:37:54 do you translate scheme directly into CIL, or do you handwaved your own bytecode interpreter 00:38:19 C#/mono was not my choice ... its a library called libsl, I want to use 00:38:20 directly into CLR bytecode 00:39:07 Mono is broken wrt tail-calls, so your mileage will vary using IronScheme on it 00:39:22 *oh* 00:40:27 there was a recent discussion about python, where the design team deceided, that tail recursion wont go into python, because it makes debugging more difficult 00:40:52 but ... better also dont talk about python garbage collector ;-( 00:41:10 you should design your program before you debug it, then you wont need to debug it :) 00:42:49 -!- dudleyf [n=dudleyf@65.243.31.107] has quit [] 00:46:16 duaneb [i=45cd3b57@gateway/web/freenode/x-adae1b3282edc47c] has joined #scheme 00:46:32 -!- phearle [n=phearle@c-24-63-120-211.hsd1.ma.comcast.net] has quit [] 00:46:42 ok 00:46:42 guys 00:46:45 I have a question 00:46:54 how can you make a doubly-linked list in scheme? 00:47:27 using LAMBDA and SET! or CONS and SET-CAR! and SET-CDR! 00:48:36 rocketman: that's not really a useful answer.... 00:48:43 anyway 00:48:45 okay take it or leave it 00:48:47 you need to store three nodes 00:48:57 the previous node pointer 00:49:00 the next node pointer 00:49:08 and a pointer to the actual data 00:49:12 (three words, not nodes) 00:49:18 how can I do this in scheme? 00:49:19 (define-record-type (make-dll-node previous datum next) dll-node? ...) 00:49:43 ahh 00:49:44 ok 00:49:52 is that r5rs? 00:50:01 I know records are in r6rs, but 00:50:09 No, DEFINE-RECORD-TYPE is specified by SRFI 9 , which is supported everywhere that matters. 00:50:24 ahh, ok 01:00:42 so ah 01:00:51 what scheme should I use? 01:01:00 I *am* using PLT scheme 01:01:00 but 01:01:04 it's confusing 01:01:11 and pure r5rs, for example, is too pure for me 01:01:18 duaneb: That depends on your needs. 01:01:30 arcfide: well 01:01:36 -!- athos [n=philipp@92.250.250.68] has quit [Remote closed the connection] 01:01:44 I apparently want r5rs + srfi-9 01:02:00 I mean 01:02:14 duaneb: Okay, so you need more than the language and functions defined in R5RS, but you said it is too pure for you? Does that mean you need something that does the same as R5RS but with less, cleanliness? 01:02:15 Ideally, I think, I would just use r6rs 01:02:26 but I can't figure out how to use r6rs in PLT 01:02:31 I'm not even sure it's supported 01:02:45 duaneb: You may use R6RS but I question whether such a thing would be ideal. 01:03:04 duaneb: Are you using mzscheme, DrScheme, or something elese? 01:03:08 s/elese/else/ 01:03:11 arcfide: Well, I mean that I want something that has what I want (i.e., srfi-9), but I don't want it to be huge (i.e., the large implementations in DrScheme 01:03:19 DrScheme 01:03:50 You can simply change the languageand get R6RS. Normally, when editing a file, one puts the language at the top in PLT like #!r6rs. 01:03:51 dudleyf [n=dudleyf@ip70-178-212-238.ks.ks.cox.net] has joined #scheme 01:04:30 duaneb: Have you considered that what I said might not be useless.. and that you could implement doubly linked lists using exactly what I said (which are all R5RS primitives)? 01:04:42 arcfide: ahh 01:04:57 rocketman: I am uncomfortable with that solution 01:05:07 duaneb: Also, as rocketman pointed out, R5RS is sufficient to design a perfectly useful implementation of doubly linked lists. 01:05:13 rocketman: it seems rather hackish 01:05:14 duaneb: For invalid reasons 01:05:18 I really don't understand how, then 01:05:19 duaneb: What makes you uncomfortable? 01:05:23 is there a three-word type? 01:05:27 or a way to define a new type? 01:05:33 Now you're just trolling. :-) 01:05:43 arcfide; the sad thing is he's not.. :) 01:05:57 duaneb: Do you know what 'define-record-type' does? 01:05:58 ok, could you show me an actual code example? 01:06:04 arcfide: I do indeed 01:06:09 and that was a half-troll :p 01:06:26 duaneb: I'm not going to give you prepackaged solution to this because any beginner text (like SICP) covers this in greater detail 01:06:35 duaneb: You can then understand exactly what you would need to do to replicate the interfaces it creates using only CONS cells, no? 01:06:37 rocketman: well, ok 01:06:46 arcfide: yes 01:06:57 duaneb: And you need us to tell you how to do it, why? 01:07:02 rocketman: I understand the basics, I just don't understand how you would use a cons to store three words 01:07:08 duaneb: You could use another structure, if you wanted, such as vectors, if you like that more. 01:07:13 arcfide: I might be understanding you more 01:07:26 arcfide: using a vector to define a doubly linked list is just wrong 01:07:33 duaneb: (cons (cons )) => voila. 01:07:40 duaneb: Why? 01:07:40 :| 01:07:42 that's a hack 01:07:48 What makes it a hack? 01:07:48 because you don't NEED to use cons! 01:07:57 duaneb: You don't NEED to use Records. 01:07:59 there's not technical limitation at all to just defining a new type 01:08:03 phearle [n=phearle@c-24-63-120-211.hsd1.ma.comcast.net] has joined #scheme 01:08:11 Technical Limitation? 01:08:13 arcfide: well, sure, I could also define everything using hash tables 01:08:14 duaneb: (I did mention that it's possible without using CONS..) 01:08:16 doesn't mean that I SHOULD 01:08:25 There's not technical limitation to a bunch of stuff, why not just use a Lambda? That's the most elegant solution. 01:08:30 duaneb: (I really think you should slow down a bit and give proper consideration to what I suggested) 01:08:44 rocketman: I've been thinking about this for hours 01:08:56 and, yes, I already thought about both solutions 01:08:57 or just ignore me.. sure 01:08:58 duaneb: You should read SICP or a similar book. 01:09:01 and, yes, it works, but it's not very elegant 01:09:05 arcfide: I have read it 01:09:07 I'll uh stop trying to help you now 01:09:07 What is elegant? 01:09:25 rocketman: I'm having a hard time believing this isn't a troll. :-) 01:09:26 elegant would be declaring a new type 01:09:30 Why? 01:09:32 because it IS a new type 01:09:37 lol 01:09:39 or is used much differently 01:09:43 just a difficult kid 01:09:49 who already knows everything you tell him 01:09:52 look, elegance  simplicity, always 01:09:53 anyway~ 01:10:03 Who said that CONS was simple? 01:10:08 or rather, elegance does not always equal simplicity 01:10:33 arcfide: I never said it was, I merely meant defining all new types in terms of two or three base types purely is not necessarily elegant 01:10:46 now, defining a TREE in terms of cons would be perfect 01:10:55 duaneb: So, how does one implement records? 01:10:57 just so long as you didn't care about storing data anywhere except leaves 01:11:06 arcfide: primitively, I hope? 01:11:39 duaneb: but CONS cells are not Trees, therefore that solution is not elegant. 01:11:44 Going by your definitions. 01:11:51 arcfide: well, no, but trees can be cons cells 01:12:01 in the same way that linked lists can be cons cells 01:12:13 duaneb: No they can't, afterall, if linked lists can't be CONS cells, then certainly trees can't! 01:12:26 arcfide: no, linked lists can be 01:12:27 You just said a doubly-linked list can't be a CONS cell. 01:12:30 DOUBLY linked lists can 01:12:33 That's a LINked list. 01:12:37 It is a subtype of linked lists. 01:12:48 look, having a linked list to define another data type is not elegant 01:12:49 minion chant 01:12:55 hrrrrr 01:12:57 In fact, why aren't you respecting type hierarchy and defining a new subtype of linked lists? 01:12:58 minion: chant 01:12:59 MORE THAN 01:13:07 (a . (b . c)) is less elegant than (a . b . c) 01:13:12 or whatever the syntax might be 01:13:22 you shouldn't use pointers in the middle of a damn primitive 01:13:29 (a . b . c) => #(a b c) 01:13:40 Oh? 01:13:43 Why not? 01:13:45 arcfide: no, thats (length . a . b . c) 01:13:49 not necessarily better 01:13:52 Eh? 01:13:59 *arcfide* doesn't see a LENGTH anywhere. 01:14:00 or however vectors are implemented 01:14:08 Say you're writing your own Scheme system. 01:14:11 how else do you know how long the vector is? 01:14:13 You want to write a Scheme compiler. 01:14:21 How do you intend to implement Records using Scheme? 01:14:27 Afterall, you want to write your compiler using Scheme, no? 01:14:55 arcfide: same way I would implement a cons...? 01:14:57 duaneb: Do you know what a Record Value is in a scheme system? 01:15:04 duaneb: How would you implement CONS? 01:15:13 arcfide: two adjacent words in memory 01:15:37 I would assume that, from the record declaration, I could extrapolate how much memory would be needed to define something 01:15:44 duaneb: Okay, what about the space that tells us that it is a CONS cell? 01:15:50 destination: nowhere, velocity: warp speed FAST 01:16:14 arcfide: A) that space isn't a cons cell unless it's treated as such 01:16:31 duaneb: Oh, okay, so you've just destroyed the strongly typed nature of Scheme. 01:16:33 anyway, either an object header or a tagged pointer 01:16:34 I would assume 01:16:45 So a length two vector is the same as a CONS cell, according to you. 01:17:08 arcfide: ignore my previous statement, I was arguing semantics 01:17:30 in a good scheme system, a cons cell could never be accessed except through typed accessors 01:17:42 duaneb: Your entire chat log since I intervened has been ... similarly misdirected. 01:18:10 arcfide: anyway, a vector would have a different object header or tagged pointer 01:18:18 duaneb: So every CONS cell of two words must also be associated by some other entry in some other structure identifying that location as a CONS cell. 01:18:44 So what's the difference between a CONS cell, a length two vector, and a two element record? 01:18:57 arcfide: different object header/tag? 01:19:06 arcfide: I don't quite understand what you're saying 01:20:01 I'm pointing out that your fear of CONS cells isn't well-founded. 01:20:23 arcfide: it is 01:20:26 ok 01:20:29 put it this way 01:20:34 for the cons doubly-linked list 01:20:40 I have three ways of handling this 01:20:59 antoszka [n=antoszka@unaffiliated/antoszka] has joined #scheme 01:21:00 A), I could have two cons cells at separate (but likely adjacent) parts of memory 01:21:08 this would involve two tagged pointers and four words of memory used 01:21:19 B), I could use a vector 01:21:28 One tagged pointer and four words used 01:21:32 OR, I could define my own type 01:22:10 which would have four words used and a "look at the header" tag 01:22:13 I'm pointing out that your fear of CONS cells isn't well-founded. 01:22:13 arcfide: it is 01:22:14 lol 01:22:43 and, in my mind, it's easier to restrict the access to the type 01:22:54 so, I'd rather define my own type 01:23:09 You're making two arguments here. 01:23:15 arcfide: I am. 01:23:21 arcfide: is there a problem with that? 01:23:30 -!- reprore [n=reprore@ntkngw261071.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 01:23:36 One appears to be that CONS or VECTOR based doubly linked lists are inherently inferior on the basis of memory layout elegance. 01:23:50 The other appears to be that you want to restrict "access" (whatever that means) to the type. 01:23:51 well, more so with the cons 01:24:08 Let's first take the memory layout issue. 01:24:11 with the vector, I would rather just define the type and set it a part 01:24:12 but 01:24:15 yes 01:24:19 you are correct 01:24:34 using a vector would be perfectly peachy if there were no ways to define types 01:24:40 but there are and I don't see what the fuss is about 01:25:23 but, from an irrational point of view, my main objection is that in my mind, a doubly-linked node is not a vector, it's an entirely different entity 01:25:33 whereas a singly-linked node IS a cons 01:26:08 what forces the cdr to be a cons/null ? 01:26:53 The cons solution would us five 'cells' where each cell contains the location to an object. The vector solution would use four cells, but possibly five in practice. The Record would use four cells, at least. This disregards of course, the issue of all the procedures defined around these. That's a difference of one stinkin' pointer. 01:26:56 gfb: nothing 01:28:08 arcfide: anyway, good implementations will inline the operations 01:28:28 I hope 01:29:02 or, really, all that scheme has over c is a few built-in data structures, anonymous functions, and awesome continuation support 01:29:31 hygienic macros 01:29:36 oh, that too :)P 01:29:46 anonymous functions are closures 01:29:53 *rocketman* calls it LAMBDA 01:29:57 same difference 01:29:57 duaneb: Now let's get to your second argument, about the types. you're trying to say that lists are the same as cons cells in Scheme, but they're *not*. They are two different types of things, but they are different because of their abstract differences, not necessarily the implementation. A doubly-linked list is different from a linked list in much the same way. They are both *lists*. 01:30:14 duaneb: Scheme has nice Abstraction. 01:30:56 arcfide: ok, well 01:31:09 singly-linked nodes are naturally cons cells 01:31:16 duaneb: Importantly, assume a module system: an implementation of doubly linked lists wrapped in a module system will be such that an user of this system will not know the difference (in practice) of implementation between vector, cons, or record with the module system provided that care be taken, and we don't let them introspect two deeply. 01:31:18 not so with doubly-linked nodes and cons cells/vectors 01:31:39 arcfide: well, that 01:31:42 duaneb: But a three length vector could be said to be the natural way of thinking about the implementation of a linked list. 01:31:45 is not really a good argument :P 01:31:52 arcfide: then why not use a vector for cons cells? 01:31:53 Hah! You speak of good arguments. 01:31:59 why not use a vector for ALL things? 01:32:10 arcfide: at least I clearly label mine as irrational :P 01:32:19 You could, but then you loose the power of type based abstraction. 01:32:50 ....UPON THE WORLD! 01:33:07 arcfide: exactly! so what's wrong with creating new types? 01:33:46 You were arguing against conses and vectors for reasons other than type abstraction and isolation, but the only real reason (and it's a big one) to use records for doubly linked lists is because you can create objects which are uniquely different than all the rest, and thus, you achieve a level of "safety" and reliability because other functions will not operate on them. 01:33:49 GreyLensman [n=ray@c-76-109-2-157.hsd1.fl.comcast.net] has joined #scheme 01:33:56 duaneb: Nothing, it's in fact the right way to do it, and its very nice. 01:34:07 so what are we arguing about? 01:34:15 duaneb: but there's nothing inherently "wrong" about the cons or vector implementation. 01:34:32 duaneb: You're claim that the others are bogus and inconsequential. 01:34:34 I never said there were, I just said that they were inelegant 01:34:43 Which you failed to define. 01:34:44 :-) 01:35:08 And, I can troll too. :-) 01:35:34 rocketman: I hope you enjoyed that. 01:35:47 duaneb: I was trying to get you to state a defensible position. You didn't. 01:35:54 ahh 01:35:54 well 01:36:00 I'm not very good with arguments :P 01:36:10 duaneb: That's because you did not argue. 01:36:18 Hence the reason you sound like a troll. 01:37:11 Another argument you could have used was, "Riastradh gave me that version, and I'm deferring to the ancient institution of Programmer Authority." 01:37:11 The most irritating thing is that you ask a question and when someone tells you an answer you say "I already know this" 01:37:34 rocketman: That too. 01:38:03 duaneb: Anyways, I just wanted to pull your chain. 01:38:09 And I felt like typing a lot. 01:40:11 Oleg has some of the strangest things in his prelude. 01:40:15 symbol?? 01:40:18 ? 01:41:57 -!- gfb [i=80640586@gateway/web/freenode/x-1957c6bce4c5ea16] has quit ["Page closed"] 01:42:28 gfb [i=80640586@gateway/web/freenode/x-5ee27593066b7160] has joined #scheme 01:43:00 -!- gfb [i=80640586@gateway/web/freenode/x-5ee27593066b7160] has left #scheme 01:43:22 rudybot: eval (let ((cons (lambda (car cdr) (lambda (goo) (if (= 0 goo) car cdr)))) (car (lambda (cons) (cons 0))) (cdr (lambda (cons) (cons 1)))) (cdr (cons 'right 'wrong)) 01:43:22 sladegen: error: eval:1:0: read: expected a `)' to close `(' 01:43:28 boo! 01:44:49 (lambda (cons) (lambda (car cdr) (cons (lambda () car) (lambda () cdr) (lambda (new-car) (set! car new-car)) (lambda (new-cdr) (set! cdr new-cdr))))) 01:45:11 rudybot: eval (let ((cons (lambda (car cdr) (lambda (goo) (if (= 0 goo) car cdr)))) (car (lambda (cons) (cons 0))) (cdr (lambda (cons) (cons 1)))) (cdr (cons 'right 'wrong))) 01:45:12 sladegen: ; Value: wrong 01:46:14 *sladegen* dances around duaneb maniacally screaming C, SEE, C, in high pitched voice. 01:46:33 look what you've done to him... 01:48:30 -!- tobetchi [n=tobetchi@p923e6b.sagant01.ap.so-net.ne.jp] has quit [Remote closed the connection] 01:51:19 socialite [n=piespy@dynamic-78-8-12-119.ssp.dialog.net.pl] has joined #scheme 01:54:38 rudybot: eval (let ((kons (lambda (kar kdr) (lambda (goo) (if (= 0 goo) kar kdr)))) (kar (lambda (kons) (kons 0))) (kdr (lambda (kons) (kons 1)))) (kdr (kons 'that 'sbetter))) 01:54:38 sladegen: ; Value: sbetter 01:55:10 incubot: more minion! 01:55:13 SLIME? 01:55:29 -!- sepult [n=buggarag@xdsl-87-78-101-105.netcologne.de] has quit [Read error: 54 (Connection reset by peer)] 01:55:48 sepult [n=buggarag@xdsl-87-78-103-94.netcologne.de] has joined #scheme 01:56:49 incubot: yours shall be the power of the oracle on earth and bitstream our daily, amen. 01:56:53 tell that to Oracle 01:57:23 You hear convulsive ravings. 01:58:46 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 02:48:17 ccl-logbot [n=ccl-logb@master.clozure.com] has joined #scheme 02:48:17 02:48:17 -!- names: ccl-logbot Sveklo1 sepult socialite GreyLensman antoszka phearle dudleyf davazp kraehe joast MichaelRaskin jao Lemonator stepnem sphex alanp rdd etoxam kilimanjaro dmoerner fishey mgodshal1 ray eno proq sladegen arcfide TR2N annodomini hosh Fufie npe offby1 Adamant langmart` thesnowdog Sveklo elmex foof cracki etpace_ rstandy Quadrescence tjafk2 dsmith Deformative CaptainMorgan pfo pantsd tc-rucho gnomon a-s underspecified__ m3lawren roderic 02:48:17 -!- names: erg tessier nasloc__ ecraven Pepe_ ada2358 pantsd_ glogic michaelw specbot easy4_ yosafbridge Elly synx araujo lde m811 synthase CSdread_ XTL heat sad0ur incubot lisppaste rudybot Archeron tonyg leppie borism_ dfeuer underspecified weinholt rmrfchik qebab mbishop REPLeffect Arelius Khisanth Kusanagi ineiros_ Mr_Awesome dlouhy sjamaan Modius dedebkbrn ioizzgd pbusser2 chandler IceD^^ mornfall minion Poeir_ z0d felipe sciendan r0bby Leonidas 02:48:17 -!- names: tarbo zbigniew ski Fade hiyuh bohanlon nemik duncanm guenthr rotty tizoc kazzmir bunz certainty ineiros ski__ poucet klutometis danking Adrinael eli Riastradh elf saccade Axioplase_ tabe ski_ wastrel clog 02:50:31 oh! nevermind. 02:51:27 you're blowing the stack 02:53:03 tjafk1 [n=timj@e176203120.adsl.alicedsl.de] has joined #scheme 02:53:22 I didn't even pay attention to your implementations of fact and iota, which should make any Schemer gag :) 02:57:58 -!- sepult [n=buggarag@xdsl-87-78-103-94.netcologne.de] has quit ["leaving"] 02:58:24 That's a bug in the config file - stack checks should be enabled by default. 02:58:43 ... although all it does is terminate with an error in that case instead of segfaulting. 02:59:00 The default stack size of 1024 is pretty tiny. 03:01:04 ghagh that stack. 03:02:40 ... and there also seems to be a tail-call issue w/ named-let :/ 03:03:31 Defining fact and iota w/ separate helper procedures works, but with named-let still blows the stack. That will be easy to fix though. 03:08:05 -!- GreyLensman [n=ray@c-76-109-2-157.hsd1.fl.comcast.net] has left #scheme 03:08:55 -!- tjafk2 [n=timj@e176214133.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:09:45 yup... tail-recursive fact works but iota fails. 03:11:12 (define (iota/aux n r) (if (< n 0) r (iota/aux (- n 1) (cons n r)))) 03:11:13 (define (iota n) (iota/aux n '())) 03:11:13 03:11:14 works 03:12:22 roger. 03:23:38 pemleco [n=sveklo@cs181131.pp.htv.fi] has joined #scheme 03:27:58 -!- Sveklo1 [n=sveklo@cs181131.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 03:48:07 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 03:48:17 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 03:58:25 -!- joast [n=rick@76.178.184.231] has quit [Read error: 110 (Connection timed out)] 03:58:52 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 04:00:52 joast [n=rick@76.178.184.231] has joined #scheme 04:05:10 -!- Lemonator [n=kniu@pool-71-107-56-85.lsanca.dsl-w.verizon.net] has quit [Read error: 104 (Connection reset by peer)] 04:06:12 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 04:10:00 mngbd [n=user@081-003-214-196.yesss.at] has joined #scheme 04:20:03 kniu [n=kniu@pool-71-107-56-85.lsanca.dsl-w.verizon.net] has joined #scheme 04:33:53 -!- sphex [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 04:37:52 sphex [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has joined #scheme 04:41:52 karlw [n=karl@adsl-99-157-202-134.dsl.pltn13.sbcglobal.net] has joined #scheme 04:55:58 -!- karlw [n=karl@adsl-99-157-202-134.dsl.pltn13.sbcglobal.net] has left #scheme 04:57:42 CuriousTrain [n=user@d199-126-165-137.abhsia.telus.net] has joined #scheme 04:57:53 jonrafkind [n=jon@98.202.86.149] has joined #scheme 05:00:25 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 05:07:13 -!- kniu [n=kniu@pool-71-107-56-85.lsanca.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)] 05:08:37 kniu [n=kniu@pool-71-107-56-85.lsanca.dsl-w.verizon.net] has joined #scheme 05:18:56 -!- kniu [n=kniu@pool-71-107-56-85.lsanca.dsl-w.verizon.net] has quit [Read error: 60 (Operation timed out)] 05:30:18 kniu [n=kniu@pool-71-107-56-85.lsanca.dsl-w.verizon.net] has joined #scheme 05:35:33 Pegazus [n=awefawe@host122.190-31-41.telecom.net.ar] has joined #scheme 05:41:02 oSand [n=heartles@118-93-20-48.dsl.dyn.ihug.co.nz] has joined #scheme 05:41:08 -!- oSand [n=heartles@118-93-20-48.dsl.dyn.ihug.co.nz] has left #scheme 05:46:35 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 06:02:25 -!- dudleyf [n=dudleyf@ip70-178-212-238.ks.ks.cox.net] has quit [] 06:03:16 -!- arcfide [n=arcfide@ppp-70-246-145-27.dsl.stlsmo.swbell.net] has left #scheme 06:14:45 la la la 06:15:44 ejs [n=eugen@64-250-124-91.pool.ukrtel.net] has joined #scheme 06:18:41 reprore [n=reprore@ntkngw261071.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 06:23:31 -!- joast [n=rick@76.178.184.231] has quit [Read error: 110 (Connection timed out)] 06:25:12 ejs1 [n=eugen@nat.ironport.com] has joined #scheme 06:25:56 joast [n=rick@76.178.184.231] has joined #scheme 06:27:45 -!- ejs [n=eugen@64-250-124-91.pool.ukrtel.net] has quit [Read error: 104 (Connection reset by peer)] 06:33:09 -!- mngbd [n=user@081-003-214-196.yesss.at] has quit [Read error: 110 (Connection timed out)] 06:36:12 ejs2 [n=eugen@64-250-124-91.pool.ukrtel.net] has joined #scheme 06:47:09 -!- ejs1 [n=eugen@nat.ironport.com] has quit [Read error: 110 (Connection timed out)] 06:48:57 -!- reprore [n=reprore@ntkngw261071.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Read error: 54 (Connection reset by peer)] 06:49:28 reprore__ [n=reprore@ntkngw261071.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 06:54:30 copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has joined #scheme 06:56:11 -!- ejs2 [n=eugen@64-250-124-91.pool.ukrtel.net] has quit ["This computer has gone to sleep"] 06:57:27 -!- lde [n=user@184-dzi-2.acn.waw.pl] has quit [Read error: 110 (Connection timed out)] 06:59:35 -!- dmoerner [n=dmr@ppp-71-139-30-13.dsl.snfc21.pacbell.net] has quit [Remote closed the connection] 07:01:28 -!- reprore__ [n=reprore@ntkngw261071.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Read error: 54 (Connection reset by peer)] 07:01:45 reprore [n=reprore@ntkngw261071.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 07:05:26 -!- roderic [n=user@129.10.116.245] has quit [Remote closed the connection] 07:19:09 -!- reprore [n=reprore@ntkngw261071.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 07:20:57 duncanm: is the submediant an apotropaic device against the endless void? 07:31:39 wingo [n=wingo@36.Red-79-151-127.dynamicIP.rima-tde.net] has joined #scheme 07:32:34 -!- TR2N [i=email@89.180.191.222] has left #scheme 07:37:57 -!- copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has quit [Client Quit] 07:44:04 EnglishGent [n=EnglishG@ai-core.demon.co.uk] has joined #scheme 08:07:51 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 08:11:40 -!- wingo [n=wingo@36.Red-79-151-127.dynamicIP.rima-tde.net] has quit [Read error: 113 (No route to host)] 08:32:09 _Jordan_ [n=jcooper@173-45-228-22.slicehost.net] has joined #scheme 08:33:54 User516 [n=User@cable-static-121-166.intergga.ch] has joined #scheme 08:38:11 ejs0 [n=eugen@64-250-124-91.pool.ukrtel.net] has joined #scheme 08:47:43 athos [n=philipp@92.250.250.68] has joined #scheme 08:51:53 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit [Remote closed the connection] 08:54:53 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 09:18:38 -!- User516 [n=User@cable-static-121-166.intergga.ch] has quit [Remote closed the connection] 09:30:12 -!- ejs0 [n=eugen@64-250-124-91.pool.ukrtel.net] has quit [Read error: 110 (Connection timed out)] 09:48:15 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit ["+++ killed by SIGSEGV +++"] 10:01:52 xwl [n=user@222.130.143.218] has joined #scheme 10:08:01 -!- pemleco [n=sveklo@cs181131.pp.htv.fi] has quit [Remote closed the connection] 10:17:48 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has left #scheme 10:18:23 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 10:18:28 Edico [n=Edico@unaffiliated/edico] has joined #scheme 10:20:32 -!- tjafk1 [n=timj@e176203120.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 10:23:48 fschwidom [n=fschwido@p5B2687EA.dip0.t-ipconnect.de] has joined #scheme 10:28:39 copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has joined #scheme 10:38:05 aleix [n=aleix@46.Red-83-61-3.dynamicIP.rima-tde.net] has joined #scheme 10:46:54 *leppie* wonders how much spam is allowed on reddit before they actually ban the spammer... 10:50:57 -!- aleix [n=aleix@46.Red-83-61-3.dynamicIP.rima-tde.net] has quit [] 11:05:04 jewel_ [n=jewel@dsl-247-203-169.telkomadsl.co.za] has joined #scheme 11:32:20 Fabse [n=mightyfi@wikipedia/Track-n-Field] has joined #scheme 11:44:12 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 12:09:14 -!- Fabse [n=mightyfi@wikipedia/Track-n-Field] has quit [] 12:10:05 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #scheme 12:20:12 -!- rdd [n=user@c83-250-157-93.bredband.comhem.se] has quit [Read error: 104 (Connection reset by peer)] 12:20:26 rdd [n=rdd@c83-250-157-93.bredband.comhem.se] has joined #scheme 12:21:24 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 12:22:59 -!- rdd [n=rdd@c83-250-157-93.bredband.comhem.se] has quit [Remote closed the connection] 12:30:17 -!- eli [n=eli@winooski.ccs.neu.edu] has quit [Read error: 110 (Connection timed out)] 12:32:14 Mr-Cat [n=Mr-Cat@78-106-98-38.broadband.corbina.ru] has joined #scheme 12:36:14 fnord123 [n=fnord123@host86-148-61-223.range86-148.btcentralplus.com] has joined #scheme 12:37:49 xwl` [n=user@222.130.143.218] has joined #scheme 12:39:42 Nshag [i=user@Mix-Orleans-106-4-148.w193-248.abo.wanadoo.fr] has joined #scheme 12:43:07 sepult [n=buggarag@xdsl-87-78-103-94.netcologne.de] has joined #scheme 12:43:46 blandest [n=blandest@79.112.96.82] has joined #scheme 12:48:24 fnord123_ [n=fnord123@host81-159-237-125.range81-159.btcentralplus.com] has joined #scheme 12:51:16 MrFahrenheit [n=RageOfTh@SE400.PPPoE-3908.sa.bih.net.ba] has joined #scheme 12:53:37 fnord1231 [n=fnord123@host81-159-237-125.range81-159.btcentralplus.com] has joined #scheme 12:55:24 -!- xwl [n=user@222.130.143.218] has quit [Read error: 110 (Connection timed out)] 13:01:19 -!- xwl` [n=user@222.130.143.218] has quit [Remote closed the connection] 13:02:39 -!- fnord123 [n=fnord123@host86-148-61-223.range86-148.btcentralplus.com] has quit [Read error: 110 (Connection timed out)] 13:06:21 wingo [n=wingo@36.Red-79-151-127.dynamicIP.rima-tde.net] has joined #scheme 13:11:01 -!- fnord123_ [n=fnord123@host81-159-237-125.range81-159.btcentralplus.com] has quit [Read error: 110 (Connection timed out)] 13:15:35 -!- ada2358 [n=ada2358@pinball.ccs.neu.edu] has quit [Read error: 60 (Operation timed out)] 13:22:15 -!- sepult [n=buggarag@xdsl-87-78-103-94.netcologne.de] has quit ["leaving"] 13:30:24 tobetchi [n=tobetchi@59.146.62.107] has joined #scheme 13:31:29 -!- danking [n=danking@pinball.ccs.neu.edu] has quit [Read error: 110 (Connection timed out)] 13:32:06 -!- dlouhy [n=jdlouhy@pinball.ccs.neu.edu] has quit [Read error: 110 (Connection timed out)] 13:41:25 rdd [n=user@c83-250-157-93.bredband.comhem.se] has joined #scheme 13:46:23 Fabse [n=mightyfi@wikipedia/Track-n-Field] has joined #scheme 13:50:59 -!- blandest [n=blandest@79.112.96.82] has quit ["Leaving."] 13:54:35 -!- Fabse [n=mightyfi@wikipedia/Track-n-Field] has quit [] 13:55:23 ventonegro [n=alex@c93497e3.virtua.com.br] has joined #scheme 14:13:46 Paraselene_ [n=Not@79-67-214-225.dynamic.dsl.as9105.com] has joined #scheme 14:19:22 alaricsp [n=alaricsp@217.205.201.45] has joined #scheme 14:27:56 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 14:39:08 -!- jewel_ [n=jewel@dsl-247-203-169.telkomadsl.co.za] has quit [Read error: 60 (Operation timed out)] 14:45:06 -!- rdd [n=user@c83-250-157-93.bredband.comhem.se] has quit [Remote closed the connection] 15:12:58 -!- alaricsp [n=alaricsp@217.205.201.45] has quit ["Leaving."] 15:18:07 -!- npe [n=npe@94-224-251-223.access.telenet.be] has quit [Read error: 60 (Operation timed out)] 15:28:14 rdd [n=user@c83-250-157-93.bredband.comhem.se] has joined #scheme 15:32:26 Adamant [n=Adamant@c-76-29-188-60.hsd1.ga.comcast.net] has joined #scheme 15:33:39 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Client Quit] 15:38:23 rocketman [n=f@amcant.demon.co.uk] has joined #scheme 15:41:13 blandest [n=blandest@79.112.96.82] has joined #scheme 15:50:41 -!- ventonegro [n=alex@c93497e3.virtua.com.br] has quit [] 15:53:04 leppie: sounds like an experiment waiting to be run. 15:53:11 incubot: is the submediant an apotropaic device against the endless void? 15:53:16 is there any reason why the submediant is particularly pregnant? 15:53:32 it's better now 15:53:46 i see 19 posts on programming 15:54:04 earlier i hit #51 15:54:31 got tired of pressing 'hide', report doessnt work anyways... 15:56:00 *offby1* hasn't read reddit in ... ages 15:57:09 mmc [n=mima@cs162149.pp.htv.fi] has joined #scheme 16:02:12 Quadre` [n=quad@24.118.241.200] has joined #scheme 16:06:13 -!- Quadre` [n=quad@24.118.241.200] has quit [Read error: 104 (Connection reset by peer)] 16:06:28 Quadre` [n=quad@24.118.241.200] has joined #scheme 16:07:07 -!- Quadrescence [n=quad@unaffiliated/quadrescence] has quit [Read error: 113 (No route to host)] 16:17:50 -!- EnglishGent [n=EnglishG@ai-core.demon.co.uk] has quit [Read error: 110 (Connection timed out)] 16:29:03 -!- wingo [n=wingo@36.Red-79-151-127.dynamicIP.rima-tde.net] has quit [Read error: 60 (Operation timed out)] 16:38:22 RageOfThou [n=RageOfTh@89.146.174.169] has joined #scheme 16:39:51 Fabse [n=mightyfi@wikipedia/Track-n-Field] has joined #scheme 16:41:47 ada2358, danking and jdlouhy were all logged in from the same machine @ neu. Same person cloning? Or that cs dept just loves scheme irc? 16:44:30 BW^- [i=Miranda@151.81.142.88] has joined #scheme 16:44:32 probably a firewall 16:44:55 -!- MrFahrenheit [n=RageOfTh@SE400.PPPoE-3908.sa.bih.net.ba] has quit [Read error: 110 (Connection timed out)] 16:48:02 what threading model Bigloo Scheme has really? green, pthreads? 16:49:01 *offby1* stares blankly 16:49:01 sepult [n=buggarag@xdsl-87-78-25-168.netcologne.de] has joined #scheme 16:49:28 peta-threads :p 16:51:30 BW^: Both iirc 16:53:20 -!- joast [n=rick@76.178.184.231] has quit [Read error: 110 (Connection timed out)] 16:55:26 joast [n=rick@76.178.184.231] has joined #scheme 16:56:30 As they talk about the specific scheduler they support and how they're cooperative, one can only imagine that they're green threads: http://pauillac.inria.fr/cdrom/www/bigloo/manual/bigloo-8.html 16:58:10 i see that most talk on http://www-sop.inria.fr/mimosa/fp/Bigloo/doc/bigloo-18.html#Threads is about "fair threads" requiring thread switching be done by the app 16:58:26 but then, down on that page, it says it has "SRFI 18 (multithreading support)" support 16:59:16 in "17.3 Posix Threads", it does not really say it uses OS threads, that could be green as well 16:59:24 anyone has experience of use of this regard of Bigloo? 17:00:30 *offby1* stares blankly some more 17:01:44 i suppose that at least from this page, i can conclude that if i just write a thread switcher myself, then a bigloo app i write will have green threading support 17:02:32 I use bigloo as my main scheme 17:02:48 srfi 18 doesn't say it has to use posix threads 17:04:24 fnord1231: what is Bigloo's threading support? 17:04:31 can you please describe it to me? 17:05:19 does it have green? OS/posix? both? how do i ensure i don't trash variable contents, by mutexes? how do i decide what green threads should be part of what OS thread? 17:05:27 jcowan [n=jcowan@cpe-67-247-15-85.nyc.res.rr.com] has joined #scheme 17:06:03 *jcowan* unvanishes. 17:07:53 where do i find a super-simple example app for how to do a green and an os thread, respectively? 17:08:33 BW^-: I don't use threads in Scheme. But reading the documentation, it appears to use green threads. If you want to use pthreads you will need to access the api using the FFI and any green threads started in a particular thread will be part of that pthread. That said, using pthreads in a gc'd language with some plain vanilla FFI is usually troublesome unless the platform has been designed to handle it. 17:08:52 "Troublesome" is an understatement. 17:09:09 Pthreads are an invention of the Devil anyhow. 17:09:16 amen 17:09:25 use processes 17:09:30 right. 17:09:42 and yes, troublesome is an understatement, generally the GC would sigsegv or so. 17:09:44 Unless you are on Windows, in which case the Devil already pwns your soul. 17:09:56 so now i get it, by "posix threads", the bigloo documentation does NOT mean OS threads. 17:09:57 so, bigloo has a basic green threading support built-in . 17:10:00 does it have a scheduler? 17:15:28 oh.. sorry 17:15:40 i meant, does it have a timer mechanism that can automatically, i.e. preemptively, invoke the scheduler? 17:16:04 ..so that thread switching is done automatically 17:16:59 -!- Fabse [n=mightyfi@wikipedia/Track-n-Field] has quit [] 17:19:10 Well according to the link you gave it has two libraries. one for green and one for posix (os) threads. I didn't see that in my link. so I guess I'm just wrong. That learns me to open my mouth. 17:19:52 lol, it seems everyone is nagging about the spam on reddit now 17:20:02 reprore [n=reprore@p1026-ipbf3002hodogaya.kanagawa.ocn.ne.jp] has joined #scheme 17:20:21 fnord1231: where SRFI 18 = green, and "Posix Threads" = posix/os ?? 17:20:27 how do i plug in the respective one? 17:27:56 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has left #scheme 17:28:32 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 17:35:10 -!- joast [n=rick@76.178.184.231] has quit [Read error: 110 (Connection timed out)] 17:36:32 joast [n=rick@76.178.184.231] has joined #scheme 17:42:31 ? 17:45:27 TimMc [n=timmc@c-71-232-116-6.hsd1.ma.comcast.net] has joined #scheme 17:46:31 incubot: Where have all the flowers gone? 17:46:34 black and white flowers 17:46:43 incubot: Yes, the very ones! 17:46:47 ML can be very fast in the right circumstances 17:46:49 -!- Quadre` is now known as Quadrescence 17:50:46 roderic [n=user@ool-182cb043.dyn.optonline.net] has joined #scheme 17:55:18 -!- kraehe [n=kraehe@91-66-12-150-dynip.superkabel.de] has left #scheme 17:57:48 proqesi [n=user@unaffiliated/proqesi] has joined #scheme 18:03:12 -!- BW^- [i=Miranda@151.81.142.88] has quit [Read error: 104 (Connection reset by peer)] 18:03:29 Hagaer [n=user@27.62.broadband3.iol.cz] has joined #scheme 18:08:06 npe [n=npe@94-224-251-223.access.telenet.be] has joined #scheme 18:19:48 foof: what "platform" does the HTTP server serving your blog run on? 18:20:57 rotty: it's written in chicken 18:22:54 ah. and the blogging software -- what is the original format you write in? 18:23:20 a markup similar to wikipedia 18:23:49 incubot: which blogging software do you use? 18:23:52 Riastradh got a blogging software of his own? 18:24:01 incubot: many man smoke, but Fu Manchu. 18:24:02 bet you have a scheme parser for that, and also code for the syntax coloring? 18:24:04 My fu manchu plans were foiled again. Had to grab the razor since apparently I have to stop this hermit business for a while again. 18:24:20 *offby1* marvels once again at incubot's brilliant simplicity 18:24:27 *rotty* is thinking writing a parser for a subset of org-mode's markup 18:24:36 s/thinking/thinking about/ 18:25:14 rotty: i love org mode; just the mention of it triggers a dopamine response 18:26:08 or maybe i mean seratonin 18:26:25 Riastradh's blogging software is a plain text file he edits sometimes 18:26:35 *klutometis* -*- mode: org; -*- 18:26:47 jcowan: called, appropriately, his ``blag'', i believe 18:28:34 klutometis: would you have use for a scheme parser for the org-mode format as well? 18:29:13 rotty: Yes, anything indented automatically gets syntax-highlighted for whatever language it looks like (currently c, scheme or asm). 18:29:46 what magic are you using to determine what it looks like? 18:30:00 ha, I use org-mode constantly 18:30:16 chandler: Very stupid magic. I'll make it smarter later :) 18:30:48 Heh. I've considered adding some magic to lisppaste many times, but I always have decided that I don't like magic very much when I know how it works (and how it fails). 18:31:55 I like org-mode too, but I assue 18:32:05 I like org-mode too, but I assume that if I study it syntax too closely, I shall go mad 18:34:01 chandler: Right now it just looks for patterns like (define or (lambda, etc. A statistical approach would work better but really the best approach is probably to use a parser, at which point you're only susceptible to polyglots. 18:34:26 I've seen "blag" before, but I've never understood what's appropriate about it, unless it just means that he doesn't update it too often. 18:34:37 -!- kniu [n=kniu@pool-71-107-56-85.lsanca.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)] 18:34:52 foof: ... Or to poor, syntax-error-ridden code. 18:34:58 Susceptible to Polyglots sounds like a good band name 18:35:31 Also, my problem is a little bit worse, as there's plenty of code that would parse as both Common Lisp and Scheme, or as both C and Java. 18:35:35 kniu [n=kniu@pool-71-107-56-85.lsanca.dsl-w.verizon.net] has joined #scheme 18:36:36 chandler: I'm the only user, I have only myself to blame if I write a syntax error :) 18:36:42 Yes, indeed. 18:40:23 vgeddes [n=vgeddes@dsl-245-150-125.telkomadsl.co.za] has joined #scheme 18:46:04 -!- reprore [n=reprore@p1026-ipbf3002hodogaya.kanagawa.ocn.ne.jp] has quit [Remote closed the connection] 19:04:42 -!- Mr-Cat [n=Mr-Cat@78-106-98-38.broadband.corbina.ru] has quit [Read error: 113 (No route to host)] 19:05:41 -!- TimMc [n=timmc@c-71-232-116-6.hsd1.ma.comcast.net] has left #scheme 19:13:49 rotty: sure; maybe i could make an org-mode webservice that molests me with SMS when my projects fall into desuetude 19:16:13 curtisw [n=cw@c-71-194-80-68.hsd1.il.comcast.net] has joined #scheme 19:16:31 hello 19:16:37 reprore [n=reprore@p1026-ipbf3002hodogaya.kanagawa.ocn.ne.jp] has joined #scheme 19:17:22 yeah yeah 19:17:31 jcowan: the edit-distance from "blah" is one; thus, i though it was a subtle commentary on blogorrhea 19:17:37 -!- reprore [n=reprore@p1026-ipbf3002hodogaya.kanagawa.ocn.ne.jp] has quit [Remote closed the connection] 19:17:41 "desuetude". Wow. There's a word you don't hear on IRC much. 19:17:58 jcowan: but also Riastradh's desire to be "in but not of blogging" 19:17:58 hmm 19:18:26 is there any way to immutably update a byte string in PLT scheme? 19:18:36 i.e., a bytes-set! without the ! 19:19:01 I'd rather not have to copy it first 19:20:11 offby1: i borrowed that little ditty from proust; he also gave me crepuscule 19:20:31 offby1: azure mallarme 19:20:58 I only know "crepuscule" from Thelonius Monk 19:21:11 although I often like to proclaim that my cat is crepuscular. (It's true, too) 19:21:23 *claim 19:21:40 offby1: nice; that's a new usage for me 19:21:59 reprore [n=reprore@p1026-ipbf3002hodogaya.kanagawa.ocn.ne.jp] has joined #scheme 19:22:09 curtisw: isn't immutably update an oxymoron? 19:22:14 curtisw: I think I indeed meant "proclaim", as in: "blurt it out apropos of nothing" 19:22:18 -!- Quadrescence [n=quad@unaffiliated/quadrescence] has quit [Read error: 104 (Connection reset by peer)] 19:22:25 -!- reprore [n=reprore@p1026-ipbf3002hodogaya.kanagawa.ocn.ne.jp] has quit [Remote closed the connection] 19:22:33 I think curtisw wants an efficient copy-on-write kinda thing 19:22:49 hmm 19:22:53 offby1: i've always taken 'proclaim' to mean something more...extravagant 19:22:58 where only the new bytes get allocated, and the new "string" shares storage with the old for the common parts 19:23:09 curtisw: well, I often stand up on a box while saying it. 19:23:13 and speak really loudly 19:23:22 ah, nevermind, then 19:23:24 my mistake 19:23:25 sometimes I hire a marching band 19:23:35 no, i don't expect any data sharing 19:23:44 i just don't like having to manually copy data around 19:24:38 it's literally 3 lines of code, i just don't like rewriting library functions if they exist 19:24:42 well, there are lots of "functional update" for other data structures (like hash tables); I'd be a little surprised if there weren't one for strings too 19:25:28 meh, doesn't matter 19:25:33 the code's already been written 19:26:15 curtisw: now you've got me interested. If Eli doesn't magically appear as a result of my invoking his name just then, ask on the mailing list. 19:26:25 *offby1* drums his fingers 19:26:35 incubot: i'm looking for a suitable diversion from michael jackson hysteria 19:26:38 ... and sometimes they fall victim to mass hysteria, committees, or hallucinogenic substances 19:27:01 lol 19:27:02 cute 19:27:21 incubot: have you considered running for public office? I'd vote for you. 19:27:25 It clearly isn't a transparent, democractic process. Having a vote just obscures things. 19:27:53 incubot: I appreciate that you don't ignore other bots. 19:27:56 you could say 'i do really appreciate what you did for me today, im giving you 200 bucks, ' :) 19:28:12 incubot: why? 19:28:14 Now hold on just a minute. 19:28:20 reprore [n=reprore@p1026-ipbf3002hodogaya.kanagawa.ocn.ne.jp] has joined #scheme 19:39:25 Ppjet6 [n=ppjet@78.115.255.187] has joined #scheme 19:45:44 klutometis: I figured that blag is to web-lag as blog is to web-log. 19:49:21 -!- reprore [n=reprore@p1026-ipbf3002hodogaya.kanagawa.ocn.ne.jp] has quit [Remote closed the connection] 19:53:00 -!- kniu [n=kniu@pool-71-107-56-85.lsanca.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)] 19:53:38 -!- tobetchi [n=tobetchi@59.146.62.107] has quit [Remote closed the connection] 20:14:15 -!- roderic [n=user@ool-182cb043.dyn.optonline.net] has quit [Read error: 110 (Connection timed out)] 20:14:28 KingOfKarlsruhe [n=nice@HSI-KBW-091-089-027-168.hsi2.kabelbw.de] has joined #scheme 20:16:28 -!- sepult [n=buggarag@xdsl-87-78-25-168.netcologne.de] has quit ["leaving"] 20:16:51 Does anyone know of a good object oriented database? 20:17:12 synx: In Scheme? 20:17:21 I'm tired of making everything in my database an intermediary table relational mapping. 20:17:38 sjamaan: I dunno, if it has a C library or something I could use it. 20:17:41 Zope is the only one I know of 20:17:52 But that's pretty python-specific 20:17:54 bleah, Zope... 20:18:04 bleah, OO ;) 20:18:12 Yeah, it's quite python specific. 20:18:42 Call it OO or call it many-to-many relationship chains, I think it's worthwhile. 20:19:10 Adamant [n=Adamant@c-76-29-188-60.hsd1.ga.comcast.net] has joined #scheme 20:19:51 -!- blandest [n=blandest@79.112.96.82] has quit ["Leaving."] 20:20:30 synx: I think what you want is called an "orm"; look at "snooze" 20:20:38 Well I'll just hack it in SQL as usual. 20:21:09 synx: You could also use an XML DB, I think sedna can be accessed from Chicken 20:21:16 *shudder* 20:21:23 XML is only one-to-many, I suppose.. 20:21:31 we just talked, seriously, about both XML and objects, within a single minute. 20:21:33 *offby1* resigns 20:21:37 haha 20:21:38 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Client Quit] 20:22:16 ehe 20:23:00 I'd like to learn semantics better. I have tag lookups, but the SQL for boolean tag queries is nightmarish, and when implications go to 2 or 3 levels further... 20:23:44 Plus it's very off-model in SQL to make a situation where "anything relates to anything" 20:23:56 dzhus [n=sphinx@95-24-109-220.broadband.corbina.ru] has joined #scheme 20:24:45 are you sure you even need SQL? The cool kids seem to be migrating to distributed hash tables 20:25:07 and for that matter, do you need to be distributed? Are you seriously planning on supporting dozens of concurrent users? 20:25:32 I'd like to specify a "plants" tag which relates to the "flowers" tag which relates to the "roses" tag, which relates to images, songs, and poets related to roses. 20:25:33 Getting a list of the first 10 queries for "plants" I just can't figure out how to model /or/ query. 20:27:05 -!- mmc [n=mima@cs162149.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 20:27:43 oh and "-rock" would exclude Guns 'n Roses. 20:29:07 Quadrescence [n=quad@unaffiliated/quadrescence] has joined #scheme 20:29:48 -!- rdd [n=user@c83-250-157-93.bredband.comhem.se] has quit [Read error: 104 (Connection reset by peer)] 20:30:14 perhaps you should be uncool, like me, and just keep everything in memory; then figure out what you need to persist and how as a separate matter 20:31:27 chandler: I'm not talking about persistence. I'm talking about data models. 20:32:05 keep everything in memory is great, as long as you have ACID. 20:43:13 incubot: drop elesdee table and you're off flying. 20:43:17 are you seeing paranthesis flying in the air? 20:43:32 all the time. 20:45:11 too much ACID will do that 20:56:32 -!- CSdread_ [n=danielf@209-188-116-183.taosnet.com] has quit [] 20:57:34 CSdread_ [n=danielf@209-188-116-183.taosnet.com] has joined #scheme 21:02:58 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 21:04:44 -!- yosafbridge [n=yosafbri@ludios.net] has quit ["Coyote finally caught me"] 21:04:54 yosafbridge [n=yosafbri@ludios.net] has joined #scheme 21:11:20 exexex [n=chatzill@85.102.130.92] has joined #scheme 21:12:35 josephholsten [n=josephho@ip68-0-70-106.tu.ok.cox.net] has joined #scheme 21:16:30 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has left #scheme 21:18:23 mngbd [n=user@081-003-214-196.yesss.at] has joined #scheme 21:19:39 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 21:24:31 elderK [n=elderK@222-152-95-210.jetstream.xtra.co.nz] has joined #scheme 21:26:29 Adamant [n=Adamant@c-76-29-188-60.hsd1.ga.comcast.net] has joined #scheme 21:28:08 -!- dzhus [n=sphinx@95-24-109-220.broadband.corbina.ru] has quit ["Yow! Legally-imposed CULTURE-reduction is CABBAGE-BRAINED!"] 21:43:10 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #scheme 21:46:06 -!- mngbd [n=user@081-003-214-196.yesss.at] has quit [Remote closed the connection] 21:57:44 -!- josephholsten [n=josephho@ip68-0-70-106.tu.ok.cox.net] has left #scheme 22:07:18 -!- copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has quit [Client Quit] 22:07:46 -!- vgeddes [n=vgeddes@dsl-245-150-125.telkomadsl.co.za] has left #scheme 22:07:55 Say I have a list (A B C) and I have a list (A C). I need to get the latter to be (A #f C). 22:08:52 you need it persistent? 22:08:58 ...no 22:09:04 moment 22:09:22 The problem is the logic for deciding element #3 is dependent on the logic for #2. 22:10:03 either push falses... or, wait a second :P 22:10:23 (list (car l) (if (eq? 'B (cadr l)) (cadr l) #f) (if (eq? 'B (cadr l)) (caddr l) (cadr l))) 22:10:33 See how there's duplicated code there? 22:10:42 yes... 22:10:58 trying to do it more elegantly, not much luck though... 22:11:15 :P why are you using like, 22:11:18 vector-semantics on a list? 22:11:24 if oyu used a vector, you wouldn't have to piss around so much. 22:11:29 vector semantics...? 22:11:33 well, 22:11:41 synx: what about (A B B A) (B A)? 22:11:41 are you always using lists of three elements? 22:11:45 ie, (a b c), (a #f c) 22:11:57 -!- Hagaer [n=user@27.62.broadband3.iol.cz] has quit [Read error: 60 (Operation timed out)] 22:12:21 afaik, scheme has utility functions ot substitue things in a list. 22:12:23 likewise, 22:12:40 you could construct the list, and when you construct it, push #f instead of whatever. 22:12:44 I'm extracting a name, tripcode, and id number, but the tripcode is arbitrarily omitted in the HTML source. 22:12:54 if you want elegant, then you dont want to post-process at all. 22:13:23 So I end up getting the equivalent of (A C) and (A B C) unpredictably, and want to normalize it into 3 variables, set to false if their element isn't present. 22:13:44 use a vector. 22:13:58 Don't see how a vector would help... 22:14:14 you are getting the name, tripcode and id. 22:14:19 tripcode is sometimes messed up. 22:14:23 you need to be able to handle that. 22:14:23 right? 22:14:33 Heh, actually sometimes it's ((NAME EMAIL) TRIPCODE ID) 22:14:48 Or just ((NAME EMAIL) ID) xp 22:14:53 what is your input like? 22:15:11 like, 22:15:14 is it sexp like? 22:15:25 :) is it csv? are you tearing it out of HTML? 22:15:36 I've been describing my input just now. 22:15:39 HTML 22:15:44 show a line of it. 22:15:45 please. 22:15:46 :) 22:15:46 synx: (A C) and (A B C) or ...? 22:15:49 what other inputs 22:16:09 rocketman: ((A D) B C) or ((A D) C) 22:16:18 synx: it's always those two but they can come in any order? 22:16:20 That's all the possibilities I think. 22:16:55 The order seems not to change. B always follows A/A+D 22:17:08 just use the first one then... ignore the second 22:17:25 -!- Modius [n=Modius@24.174.112.56] has quit [Read error: 110 (Connection timed out)] 22:17:43 elderK: Name~0CLBXfiWHY Sat Jul 4 13:05:17 2009 ID:2c51e488 22:18:11 oops, the isn't really part of the record. 22:19:08 rocketman: I need to get 4 variables, A, B, C and D. I'd like the ones omitted from the HTML to be #f in my code, but still declared. 22:19:52 ?????????????????????????????? 22:20:17 simple, synx. 22:20:30 name, email, id, trip. 4 element vector 22:20:33 when you are reading input, 22:20:37 if what you want is not present 22:20:44 set the vector element to #f 22:21:15 and you dont have to worry about all the dynamic ordering of crap missing and whatnot... 22:21:26 since the vector conceptually becomes a record. 22:21:38 What about when I encounter the second name, after filling the information for the first? 22:21:44 -!- exexex [n=chatzill@85.102.130.92] has quit [Remote closed the connection] 22:21:57 And you mean for me to set the vector element.......with mutation? =) 22:22:14 :) if you dont need it persistent. 22:22:22 exexex [n=chatzill@85.102.130.92] has joined #scheme 22:22:24 but, since you will be creating hte vector for the purpose of storing this data, 22:22:33 I wouldnt think setting the elements tobe doom. 22:22:40 "second name" ? 22:22:57 you mean the next input? 22:23:02 rdd [n=user@c83-250-157-93.bredband.comhem.se] has joined #scheme 22:23:03 or do you mean the potential email of the user? 22:23:04 Yes. 22:23:05 er, poster? 22:23:17 simple, have a list of vectors. 22:23:18 Second... thing. It's all smushed together into one big HTML document. 22:23:24 (poster-1-struct poster-2-struct) 22:23:30 each poster-struct is a vector 22:23:43 #(name email tripcode whatever) 22:23:46 when you get a new name, 22:23:48 And do I have to also mutate that list, when I find a new poster? 22:23:48 just push it on the list. 22:23:55 no, not really 22:23:58 you can use it like a stac 22:24:00 share the tail. 22:24:03 Yes, push it. That implies mutation. 22:24:08 not really. 22:24:17 you can do it via recursion 22:24:23 and simple use a list as an accumulator. 22:24:26 I've always had trouble with that... 22:24:29 that way, you do not directly modify the list. 22:24:46 Once I recurse I've just gone out of scope of the parser entirely, and... 22:25:00 why not use named let? 22:25:05 I'd really like to know how to do stuff like that. 22:25:18 np :) 22:25:22 take a litlte mindbending to get used to. 22:25:24 also, 22:25:33 the code that pushes elements on the list/initializes the vector, 22:25:39 shouldnt be 'chunked in' witht he parser. 22:25:42 Either way, if I enter a named let, and then I start parsing the HTML, if I invoke the named let, my parser gets reset too. 22:25:44 they shoudl be auxillery functions 22:26:18 However if I start parsing and then enter a named let, with every iteration of the parser, the variables of the named let are lost. So a list between posters would get reset to null. 22:26:35 ... no they arent 22:26:53 you pass them. 22:26:55 and again, 22:27:03 abstract the creation of the list and vectors 22:27:06 that way, you acn be like this: 22:27:15 "Okay, I've got the stuff that looks like poster, bla bla bla" 22:27:20 "Okay, parser, just, get me whats there." 22:27:36 -!- fschwidom [n=fschwido@p5B2687EA.dip0.t-ipconnect.de] has quit [Remote closed the connection] 22:27:37 < parser, ooh, I found commentername, oh, posttripcode > 22:27:40 (filter (lambda (item) (let loop ((posters null)) (if (poster? item) ...))) items) 22:27:59 "I've found these, I think!" 22:28:10 See the problem with that, is the named let gets reset every time. 22:28:13 (add-poster current-list ) 22:28:28 what does (add-poster) return? 22:28:46 the new or updated list. 22:29:41 So how to I get the current-list to be bound to the return value of add-poster. 22:29:51 o_O 22:30:01 have it as the last calculated value :P 22:30:38 (let loop ((posters null)) (filter (lambda (item) (if (poster? item) ... (loop (cons poster posters) ...)) items)) fails too 22:30:38 Because every time I invoke 'loop' it has to start filtering all over again. 22:31:19 well yeah, null isnt valid :P 22:31:31 likewise, "..." 22:31:37 hope you have a begin in there. 22:31:38 I just end up in a lot of situations where I'm trying to do two serial operations, and they can't be nested in two named lets because the one is independent from the other. 22:31:41 there are different ways you can do it 22:31:49 Seriously, you need to step back 22:31:51 ... 22:31:52 and rethink the problem. 22:32:02 I mean it. 22:32:09 And you know it. 22:32:10 I don't expect ... to evaluate to real code, elderK. It's just a description of code. 22:32:14 I know. 22:32:17 but still. 22:32:26 You still need to step back, and think :) 22:32:30 not about what Lisp code you will have. 22:32:38 but, how you can best use lisp paradigm here. 22:32:47 I don't want to type my whole if statement. I don't even know how to do it in a way that works. 22:32:48 During parsing, you encounter the shit you want. 22:32:53 And you want to store htat, 22:32:57 and store multiple occurances. 22:33:04 but, since fields of the hsit you want 22:33:05 maybe missing 22:33:07 or invalid, 22:33:11 you need to handle that. 22:33:27 exactly 22:33:29 which is why you need to step back man 22:33:30 :) 22:33:34 trust me, I'm not saying this to be a cocky asshole. 22:33:34 :) 22:33:50 I'm just thinking of various ways I would do something like this :) 22:33:54 Stop grinning so much, ya cocky asshole 22:34:21 I'm trying to help you. 22:34:32 Well, nice try. 22:34:33 -!- KingOfKarlsruhe [n=nice@HSI-KBW-091-089-027-168.hsi2.kabelbw.de] has quit [Remote closed the connection] 22:34:55 Maybe I can exploit the fact that the name always comes first, so it can serve as a sort of delimiter the document doesn't provide. 22:35:22 use it like a state machine. "found this" "found htat" "found another thing" 22:35:24 collect them. 22:35:25 pass them 22:35:35 or maybe a parent element hm... 22:35:39 Dont have a mother parser... 22:44:31 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Leaving"] 22:55:36 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Remote closed the connection] 23:08:17 TR2N [i=email@89.180.220.78] has joined #scheme 23:09:17 rdd` [n=rdd@c83-250-157-93.bredband.comhem.se] has joined #scheme 23:15:19 -!- Fufie [n=innocent@86.80-203-225.nextgentel.com] has quit [Read error: 104 (Connection reset by peer)] 23:25:33 segoe [i=3e164621@gateway/web/freenode/x-fc8fc62ccc2f9b7f] has joined #scheme 23:27:59 -!- exexex [n=chatzill@85.102.130.92] has quit [Remote closed the connection] 23:29:48 Quadre` [n=quad@24.118.241.200] has joined #scheme 23:30:09 -!- Quadrescence [n=quad@unaffiliated/quadrescence] has quit [Nick collision from services.] 23:30:54 -!- Quadre` is now known as Quadrescence 23:36:23 eli [n=eli@winooski.ccs.neu.edu] has joined #scheme 23:38:46 incubot: We have written even more about the topic of control and when we wrote, we wrote in peer-reviewed flag-ship conferences on PL/SE not blogs. 23:38:49 I've reviewed the first four chapters and about half of the fifth, thanks to a reprieve from O'Reilly. 23:40:49 -!- rdd [n=user@c83-250-157-93.bredband.comhem.se] has quit [Connection timed out]