00:40 (quit) offby1: Ping timeout: 265 seconds 00:53 (join) realitygrill 01:27 (quit) em: Ping timeout: 260 seconds 01:44 (join) em 01:51 (quit) realitygrill: Quit: realitygrill 02:28 (quit) masm: Ping timeout: 265 seconds 02:28 (quit) jonrafkind: Ping timeout: 272 seconds 02:41 (join) mg4001 03:08 (quit) mg4001: Ping timeout: 240 seconds 03:21 (join) lucian 03:22 (quit) lucian: Remote host closed the connection 04:45 cpach: http://blog.racket-lang.org/2011/02/racket-v51.html yay! 05:18 (quit) jao: Ping timeout: 240 seconds 05:30 (join) SinDoc 05:33 SinDoc: Is there a way to access the matched syntax object in syntax-case via a direct reference? 06:06 eli: SinDoc: If you start with "(syntax-case stx", then just use "stx"... 06:07 SinDoc: eli: the goal is to match a sub-form of stx 06:08 eli: Example? 06:09 SinDoc: eli: coming up... 06:13 SinDoc: eli: http://paste.org/pastebin/view/28911 06:14 eli: SinDoc: That's not enough... 06:14 eli: Which syntax do you want to access? 06:15 SinDoc: In the first definition, I try to match: ((public static var-name var-value)) 06:15 SinDoc: Then I'd like to store that very same syntax object in a dictionary 06:16 eli: You mean just keep the stuff that is inside the first pair of double parens? 06:16 SinDoc: Yes 06:17 SinDoc: I can construct a new object by gluing the deconstructed sub-forms 06:17 eli: You can use #'(public static var-name var-value) 06:17 SinDoc: but that won't be the same syntax object 06:17 eli: "For all you should care about", it's the same object. 06:18 (join) jao 06:18 (quit) jao: Changing host 06:18 (join) jao 06:18 eli: Put differently -- what do you think the difference will be? 06:19 SinDoc: I thought I might gain some context preservation while expansion 06:19 SinDoc: Does it really matter at all? 06:19 eli: That's the whole point -- it doesn't. 06:20 SinDoc: What a relief 06:21 SinDoc: A more general question: what exactly is the advantage of using hygienic macros? 06:24 eli: Here's an example: http://tmp.barzilay.org/x 06:24 eli: Note that the first is doing what you thought you wanted -- deconstruct the first layer, then the second. 06:24 eli: Both have the same source location for the `x' in the input. 06:25 eli: As for your hygiene question -- do you not know the usual spiel? 06:27 SinDoc: eli: Thanks for the example; 06:28 SinDoc: So, it says their on the same line 06:28 SinDoc: i.e. position 06:28 eli: `source-position' is the character number -- they're in exactly the same place (not just the line). 06:29 eli: Note BTW that if you'd print the source location of #'stuff and #'(x y) you'd get a different position -- but my guess is that you'd never need that. (And there's a simple solution if you do.) 06:34 SinDoc: The bottom line is: I shouldn't care for keeping track of syntax objects 06:34 eli: Are you talking about hygiene? 06:35 SinDoc: Yes, that's what I'm using 06:36 eli: Then the bottom line is a little different: you shouldn't care about keeping track of names. 06:36 eli: No gensyms, etc. 06:36 eli: (at least that's the easy side.) 06:37 SinDoc: I don't think I'll be needing gensym 06:37 eli: Your example does need it. 06:37 eli: (Had you been using `defmacro'.) 06:38 eli: You have (define meta '()) in your resulting pattern, if it wasn't hygienic, you'd need to gensym it. 06:40 SinDoc: I read that introducing arbitrary bindings prevents a macro from being hygienic 06:40 Lajla: SinDoc, hygiene basically ensures that whatever identifiers you use in your macros refer to what they refererred to in the environment you defined the macro in, not the environment the expansion takes place in. Like say you write cond as a macro and you use if in its implementation, without hygiene, then (let ((if +)) (cond ...)) would break your code. 06:41 SinDoc: Because of lexical-scope 06:41 Lajla: Yah 06:41 eli: SinDoc: If you want to introduce an arbitrary binding that is visible to the user, you can do so. 06:41 Lajla: Scheme's scoping model allows a computer to establish this. 06:42 Lajla: SinDoc, yeah, you can break hygiene artificially via a process that is ridiculously convoluted but it wors and is quite elegant. 06:42 eli: In your case, say that you'd want `meta' to be a name that users can use -- 06:42 Lajla: You can also easily define defmacro in syntax-case 06:42 eli: You'd write (unsyntax (datum->syntax stx 'meta)) instead of just `meta'. 06:43 SinDoc: Yes, I've already learned that technique from the Advanced Macrology paper 06:43 eli: BTW, instead of (quasisyntax (X (unsyntax Y) Z)) you can write #`(X #,Y Z). 06:43 Lajla: macrology, funny name. 06:44 SinDoc: Lajla: Yeah, right (?) 06:44 Lajla: Sounds like microbiology. 06:44 eli: And it's sometimes more convenient to use `with-syntax', as in: (with -syntax ([Y1 Y]) #'(X Y1 Z)) 06:44 SinDoc: eli: Thanks, I use those sugars too 06:45 eli: (In fact, `quasisyntax' and `unsyntax' are translated to these things.) 06:45 eli: BTW, "macrology" has become a pretty common term. 06:45 SinDoc: eli: with-syntax is basically 'let' for syntax patterns 06:45 Lajla: First ime I saw it. 06:46 eli: SinDoc: Yes, kind of. 06:46 SinDoc: Lajla: www.ccs.neu.edu/racket/pubs/scheme2007-ctf.pdf 06:47 eli: It's a little tricky though, since it evaluates its expressions at syntax time, and bind them to pattern variables. 06:48 SinDoc: eli: tell me about it; I'm new to the whole compile-time/runtime duality 06:48 SinDoc: eli: and i've had my moments of frustration 06:48 SinDoc: but it's very much worth it 06:53 (join) tauntaun 06:55 eli: SinDoc: Does your `process-members' keep information somewhere? 06:55 eli: (ie, that `members-map-add+' thing?) 06:56 SinDoc: Yes 06:56 SinDoc: That's basically a hashtable 06:56 SinDoc: In one pass, I classify all of my fields 06:57 SinDoc: This is, BTW, an object system, I'm trying to write 06:59 SinDoc: I put all the fields in a hashtable so that I can generate the code representing classes and objects in a specific order 07:01 SinDoc: My plan is to use the lexical environment that comes with closures to bind class variables as well as instance variables 07:01 SinDoc: basically, playing with scoping rules to get expressions evaluated in the right environment 07:03 SinDoc: Since I've chosen that the class fields and methods can be defined in any order, I must create an ordering at some point 07:03 eli: SinDoc: So a good summary of this is that racket's phase separation means that your hash table can have only syntactic information -- it can keep the forms that the user wrote, but not the values. 07:06 SinDoc: eli: By values, do you mean, expression I get after evaluation? 07:09 eli: SinDoc: Yes. Your macros are basically confined to the syntax world, they're completely gone at runtime. (Only the code that they produce is left, of course.\) 07:09 eli has to go now 07:10 tauntaun: SinDoc: I joined just a few minutes ago. Are you implementing an object-oriented extension to Racket? 07:10 SinDoc: eli: I won't depend on any compile-time state 07:13 SinDoc: tauntaun: Racket already has an object system, but sure; mine will be Free Software anyway 07:14 SinDoc: eli: Thank you very much for your help; you're a grace ;) 07:16 tauntaun: SinDoc: yes I'm well aware of Racket's object system...just wanted to know what you're up to. :) I'm curious: are you modelling your object system on that of any particular language? 07:19 SinDoc: tauntaun: It's very soon to say, really. Things I need for the moment are reflection and polymorphic inheritance 07:23 SinDoc: Is there any interest for an alternative object system in Racket? 07:32 tauntaun: SinDoc: Racket's object system is sophisticated---too sophisticated for some of my "customers." Hence my question to you. 07:32 tauntaun: Racket also has an older system (part of mzlib now, I think) which may have been simpler. 07:34 (join) Dranik 07:34 Dranik: hi all! 07:34 Dranik: does racket have a compiler? 07:37 SinDoc: tauntaun: I'm designing mine as part of a bigger project for school. Should you find it useful once it will have been published, feel free to use it. 07:37 tauntaun: Dranik: you might find answers at http://docs.racket-lang.org/guide/compile.html?q=compilation 07:38 (join) MayDaniel 07:38 Dranik: thanks 07:38 tauntaun: SinDoc: when and how I use it all depends on your timing; but please do announce the result when it's ready. 07:39 Dranik: tauntaun, is it possible to make a standalone executable somehow? Even using bytecode? 07:40 tauntaun: Dranik: the last time I compiled was a long time ago, so I am far from being an expert on the topic. But I suspect you'll find many answers in the doc page I pointed you to. 07:40 Dranik: ok, thanks then 07:41 SinDoc: tauntaun: I'll be sure to do so 07:41 tauntaun: cheers. 07:43 Dranik: does anyone use racket on production? 07:49 tauntaun: Dranik: the pros who hang out here should be able to answer that; they're probably still asleep... 07:49 Dranik: :-) 07:50 Dranik: ok, I just wanna no yes/no 07:50 Dranik: *know 07:50 tauntaun: I'm sorry but I myself don't know. 07:54 Dranik: ok, thanks 08:02 (join) masm 08:05 (quit) tauntaun: Ping timeout: 240 seconds 08:11 Dranik: how is it going with Gtk3 and racket gui? 08:34 (join) dnolen 08:37 (join) tauntaun 08:40 (quit) MayDaniel: 09:00 (join) lucian 09:11 (quit) Demosthenes: Ping timeout: 255 seconds 09:51 (join) mye 09:51 mye: rudybot: (print 'a 'b 'c) 09:52 rudybot: mye: your sandbox is ready 09:52 rudybot: mye: error: print: expects type as 2nd argument, given: b; other arguments were: a c 09:52 mye: is there a vararg print? 09:54 rapacity: printf ? 09:54 rapacity: (printf "~a~a~a" 'a 'b 'c) 09:54 rapacity: rudybot: (printf "~a~a~a" 'a 'b 'c) 09:54 rudybot: rapacity: your sandbox is ready 09:54 rudybot: rapacity: ; stdout: "abc" 09:55 mye: rapacity: hm, yeah I wanted something not coupled to a format string 09:55 mye: but if it doesn't exist, I'll just use format 09:57 mye: I'm writing a macro and want the matched arguments printed, so a variable argument print would come in handy. 09:58 rapacity: well you can just do 09:59 rapacity: rudybot: (define (printv . args) (for-each print args)) 09:59 rudybot: rapacity: Done. 09:59 rapacity: rudybot: (printv 'a 'b 'c) 09:59 rudybot: rapacity: ; stdout: "abc" 09:59 rapacity: won't that work ? 10:02 (join) firas 10:02 firas: hi 10:02 (join) evhan 10:02 rapacity: ello 10:02 firas: i need help pleas 10:02 rapacity: I don't know if I can help you d: 10:03 rapacity: perhaps start by describing what it is you need help with 10:03 rapacity: if someone can help you, they'll probably reply 10:03 firas: i need to know how can i do this grammar 10:04 firas: Using Scheme, build a parser for the following Grammar: 10:04 firas: expression -> number expression_tail 10:04 firas: expression_tail -> + expression expression_tail 10:05 firas: expression_tail -> Ø 10:06 rapacity: are you using the builtin parser-tools module? 10:06 firas: any body please can help me 10:08 firas: i just need how can i translate this grammar into Scheme 10:08 mye: rapacity: thanks I added a " " to separate the args, now it looks like this is what I wanted. 10:12 (quit) firas: Ping timeout: 245 seconds 10:13 (quit) dnolen: Quit: dnolen 10:16 (join) firas 10:17 firas: hello 10:17 firas: please can any body help me?? 10:21 (quit) firas: Ping timeout: 245 seconds 10:28 (join) sadeen 10:28 sadeen: hi 10:28 sadeen: any body here 10:29 (quit) sadeen: Client Quit 10:50 (part) SinDoc 11:06 (join) firas 11:06 firas: hi 11:06 firas: any bodt there 11:07 (quit) tauntaun: Ping timeout: 240 seconds 11:07 (quit) masm: Ping timeout: 276 seconds 11:07 (join) tauntaun 11:08 firas: hi, please i need help 11:08 firas: can any body help me?/ 11:10 cpach: firas: take it easy. it appears to be no-one who is able or willing to answer. 11:15 (quit) firas: Ping timeout: 245 seconds 11:18 (join) firas 11:21 (join) PLT_Notify 11:21 PLT_Notify: racket: master Eli Barzilay * 6dccc8f (1 files in 1 dirs): 5.1 improvement to sierpinski code from robby, can go live now - http://bit.ly/h2vD4q 11:21 (part) PLT_Notify 11:22 (join) tfb 11:36 cpach: firas: maybe try posting your question on http://stackoverflow.com/ ? 11:37 cpach: firas: or maybe the racket mailing list if the question really is related to racket. 11:38 cpach: firas: is this a homework question, by the way? 11:39 (join) carleastlund 11:39 (join) SinDoc 11:39 (quit) firas: Ping timeout: 245 seconds 11:41 (join) shofetim 11:41 (join) PLT_Notify 11:41 PLT_Notify: racket: master Eli Barzilay * 3358b40 (1 files in 1 dirs): Forgot the meat of the change... - http://bit.ly/dES7XO 11:41 (part) PLT_Notify 11:42 shofetim: Hey anyone know what to patch in DrRacket 5.1 to keep yesterday's heart shaped icon? 11:45 eli: shofetim: That's easy! You'll need to patch collects/framework/private/bday.rkt 11:45 (join) masm 11:45 shofetim: : ) Thanks! 11:47 (join) jonrafkind 11:50 jonrafkind: is there a way to convert a regexp to a string? like I want the ascii representation of the regexp 11:50 jonrafkind: rudybot: (format "~a" (regexp "foobar")) 11:50 rudybot: jonrafkind: error: with-limit: out of time 11:50 jonrafkind: anyway it would produce this 11:51 jonrafkind: -> (format "~a" (regexp "foobar")) 11:51 jonrafkind: "#rx\"foobar\"" 11:51 jonrafkind: but splicing off the #rx seems like a hack 11:55 (nick) samth_away -> samth 11:55 carleastlund: rudybot: (object-name #rx"regexp?") 11:55 samth: Dranik, people certainly use racket in production 11:56 rudybot: carleastlund: error: with-limit: out of time 11:56 carleastlund: Okay, weird. 11:56 carleastlund: Anyway, object-name should do it, jonrafkind. 11:56 Dranik: samth, do you have any examples? I just wanna have a look 11:56 samth: Dranik, also, work to port to Gtk3 has not yet begun 11:56 jonrafkind: ok 11:56 samth: examples of what? 11:56 jonrafkind: whats wrong with rudybot. 11:56 jonrafkind: oh offby1 isnt here 11:56 Dranik: samth, of production-ready apps on racket 11:57 carleastlund: rudybot: 1 11:57 samth: do you want the source, or the url, or what? 11:57 rudybot: carleastlund: error: with-limit: out of time 11:57 jonrafkind: rofl 11:57 carleastlund: Yeah, that's a problem. 11:57 Dranik: samth, anything what I can look at 11:57 samth: Dranik, here's an example: ll4.csail.mit.edu/slides/telescope.pdf 11:58 Dranik: thanks! 11:58 (quit) lucian: Read error: Connection reset by peer 11:58 samth: Dranik, this app is written in Racket: http://www.getkahu.com/index_b.php 11:59 Dranik: samth, and how about web apps? are there any? 11:59 samth: Dranik, Kahu is a web app 11:59 Dranik: ah, I see 11:59 Dranik: thanks! that was helpful! 11:59 samth: hacker news runs on an old version of Racket 12:02 samth: here's another paper about it: untyped.com/files/icfp068-welsh.pdf 12:02 Dranik: thanks 12:05 (join) lucian 12:08 (quit) jao: Ping timeout: 240 seconds 12:16 (join) corruptmemory 12:18 (quit) lucian: Read error: Connection reset by peer 12:22 (join) lucian 12:33 (join) lucian_ 12:35 (quit) lucian: Ping timeout: 240 seconds 12:39 (join) MayDaniel 12:40 (join) jesusito 12:41 (quit) Dranik: Quit: Ухожу я от вас (xchat 2.4.5 или старше) 12:54 (quit) hyko: *.net *.split 12:54 (quit) noddy: *.net *.split 12:54 (quit) Lajla: *.net *.split 12:54 (quit) askhader: *.net *.split 12:54 (quit) cpach: *.net *.split 12:54 (quit) fmu: *.net *.split 12:54 (quit) mattmight: *.net *.split 12:54 (quit) clklein: *.net *.split 12:54 (quit) Gwyth: *.net *.split 12:54 (quit) em: *.net *.split 12:54 (quit) shofetim: *.net *.split 12:54 (quit) tfb: *.net *.split 12:54 (quit) martinhex: *.net *.split 12:54 (quit) samth: *.net *.split 12:54 (quit) MayDaniel: *.net *.split 12:54 (quit) lucian_: *.net *.split 12:54 (quit) corruptmemory: *.net *.split 12:54 (quit) SinDoc: *.net *.split 12:54 (quit) tauntaun: *.net *.split 12:54 (quit) alexsuraci`: *.net *.split 12:54 (quit) danking: *.net *.split 12:54 (quit) _p4bl0: *.net *.split 12:54 (quit) Tasser: *.net *.split 12:54 (quit) jonrafkind: *.net *.split 12:54 (quit) carleastlund: *.net *.split 12:54 (quit) saint_cypher: *.net *.split 12:54 (quit) drhodes: *.net *.split 12:54 (quit) jasond`: *.net *.split 12:54 (quit) rapacity: Ping timeout: 265 seconds 12:55 (quit) abbe: *.net *.split 12:55 (quit) cky: *.net *.split 12:55 (quit) shachaf: *.net *.split 12:55 (quit) bremner: *.net *.split 12:55 (quit) mario-goulart: *.net *.split 12:55 (join) dnolen_ 12:55 (join) bremner_ 12:56 (join) shachaf_ 12:58 (quit) masm: *.net *.split 12:58 (quit) jesusito: *.net *.split 12:58 (quit) lisppaste: *.net *.split 12:58 (quit) zakwilson: *.net *.split 12:58 (quit) rudybot: *.net *.split 13:00 (quit) Fill: *.net *.split 13:00 (quit) eli: *.net *.split 13:01 (quit) evhan: Ping timeout: 255 seconds 13:02 (quit) shachaf_: Ping timeout: 265 seconds 13:05 (quit) mye: Read error: Connection reset by peer 13:06 (join) cky 13:08 (join) shachaf 13:09 (quit) cky: *.net *.split 13:09 (quit) bremner_: *.net *.split 13:09 (quit) jeapostrophe: *.net *.split 13:10 (quit) shachaf: Read error: Connection reset by peer 13:23 (join) masm 13:23 (join) shachaf 13:23 (join) jeapostrophe 13:23 (join) bremner_ 13:23 (join) cky 13:23 (join) eli 13:23 (join) Fill 13:23 (join) lisppaste 13:23 (join) jesusito 13:23 (join) rapacity_ 13:23 (join) mattmight 13:23 (join) Tasser 13:23 (join) fmu 13:23 (join) Gwyth 13:23 (join) clklein 13:23 (join) _p4bl0 13:23 (join) danking 13:23 (join) drhodes 13:23 (join) alexsuraci` 13:23 (join) samth 13:23 (join) askhader 13:23 (join) hyko 13:23 (join) cpach 13:23 (join) jasond` 13:23 (join) Lajla 13:23 (join) saint_cypher 13:23 (join) martinhex 13:23 (join) noddy 13:23 (join) em 13:23 (join) tauntaun 13:23 (join) carleastlund 13:23 (join) SinDoc 13:23 (join) shofetim 13:23 (join) jonrafkind 13:23 (join) corruptmemory 13:23 (join) lucian_ 13:23 (join) evhan 13:23 (join) mye 13:23 (join) zakwilson 13:23 (join) rudybot 13:28 (join) anRch 13:31 (nick) lucian_ -> lucian 13:31 (quit) anRch: Quit: anRch 13:39 (quit) rapacity_: Changing host 13:39 (join) rapacity_ 13:39 (nick) rapacity_ -> rapacity 13:53 (join) joe_shmo 13:53 joe_shmo: hey guys 13:54 joe_shmo: does anyone know about this error in C? 13:54 joe_shmo: "Conditional jump or move depends on uninitialised value(s)" 13:55 (topic) -: Racket -- http://racket-lang.org/ (logs at http://racket-lang.org/irc-logs/ ) 13:55 (names) -: gabot tewk joe_shmo @ChanServ dnolen_ masm shachaf rudybot zakwilson mye evhan lucian corruptmemory jonrafkind shofetim SinDoc carleastlund tauntaun em noddy martinhex saint_cypher Lajla jasond` cpach hyko askhader samth alexsuraci` drhodes danking _p4bl0 clklein Gwyth fmu Tasser mattmight rapacity jesusito lisppaste Fill eli cky bremner_ jeapostrophe 14:01 (quit) dnolen_: Ping timeout: 245 seconds 14:01 (join) MayDaniel 14:01 (join) anRch 14:03 jonrafkind: joe_shmo, int x; is uninitialized 14:03 jonrafkind: int x = 2; is initialized 14:03 jonrafkind: if x is used when its uninitialized then you get that warning 14:18 jonrafkind: bremner_, is there a good reason to use libpango1.0-dev over libpango1.0-0 ? 14:20 bremner_: jonrafkind: the former has the include files, and pulls in the latter automatically 14:20 jonrafkind: right, but so what 14:20 jonrafkind: racket doesnt need the include files 14:22 bremner_: jonrafkind: it doesn't need them to compile? 14:22 jonrafkind: well im testing it right now, but im pretty sure all it needs is the .so file 14:23 jonrafkind: because it uses the ffi to load it 14:23 jonrafkind: there is no c++ code that depends on pango 14:23 bremner_: oh. well. welcome to bizzaro-world ;) 14:23 jonrafkind: im making a 5.1 package now 14:23 jonrafkind: for the ppa 14:31 (join) abbe 14:32 Lajla: jonrafkind, 14:32 Lajla: how do you explain this:'(a b c e) 14:32 Lajla: A list of symols eh? 14:32 Lajla: Admit it, the argument is undeniable. 14:32 Lajla: I win, you lose. 14:33 jonrafkind: yea yea, and now you want '('a 'b 'c 'e) 14:33 Lajla: Yea 14:33 (quit) abbe: Changing host 14:33 (join) abbe 14:33 Lajla: Admit it. 14:33 Lajla: You lost. 14:33 Lajla: Your futile attempts to sustain that 'x is a symbol have been thwarted by my higher logic. 14:38 (quit) MayDaniel: 14:46 (join) haxorrr 14:46 haxorrr: (define (I am awesome) 14:48 (quit) haxorrr: Client Quit 14:54 (join) shofetim` 14:57 (quit) shofetim: Ping timeout: 276 seconds 14:57 (join) firas 14:58 bremner_: ) 14:58 samth: thanks, bremner_ 15:00 (quit) mye: Ping timeout: 272 seconds 15:03 (quit) firas: Ping timeout: 245 seconds 15:11 (join) firas 15:11 (quit) joe_shmo: Quit: Page closed 15:11 (join) cow-orker 15:13 firas: hello every body 15:13 firas: Using Scheme, build a parser for the following Grammar: 15:14 firas: expression -> number expression_tail 15:14 firas: expression_tail -> Ø 15:14 firas: expression_tail -> + expression expression_tail 15:15 (quit) anRch: Quit: anRch 15:15 bremner_: umm. But we have our own homework to do. 15:18 (join) PLT_Notify 15:18 PLT_Notify: racket: master Matthew Flatt * 21c6a9f (1 files in 1 dirs): Slideshow/Scribble: fix size of PDF generated for pict in a doc - http://bit.ly/ghz7cj 15:18 (part) PLT_Notify 15:18 (quit) firas: Ping timeout: 245 seconds 15:19 (join) mg4001 15:24 (join) masm1 15:26 (join) abbe_ 15:27 (quit) shofetim`: *.net *.split 15:27 (quit) abbe: *.net *.split 15:27 (quit) masm: *.net *.split 15:27 (quit) noddy: *.net *.split 15:28 (join) noddy 15:28 (join) coyo 15:28 (quit) coyo: Changing host 15:28 (join) coyo 15:34 (join) sreque 15:44 (join) firas 15:48 (quit) firas: Ping timeout: 245 seconds 15:51 (join) mario-goulart 15:55 (join) PLT_Notify 15:55 PLT_Notify: racket: master Kevin Tew * 156153f (2 files in 2 dirs): calling sync on a place-channel now returns the channel message just like standard racket channels - http://bit.ly/eddxsB 15:55 (part) PLT_Notify 16:11 (part) SinDoc 16:16 (join) jesusito` 16:17 Lajla: jonrafkind, 16:18 Lajla: a real man does not walk away from defeat 16:18 Lajla: He admits it honourably. 16:18 Lajla: Say it. 16:18 jonrafkind: pancakes 16:18 Lajla: jonrafkind, admit it, you lost. 16:18 jonrafkind: lost what 16:18 Lajla: I'm not sure anymore. 16:19 jonrafkind: well then i won! 16:19 Lajla: Anyway, I believe I have demonstrated just how silly it is to say that 'x is a symbol rather then a list. 16:19 clklein: Are you on that again? 16:19 Lajla: Hey, that's an argument from ignorance and a false dilemma fallacy at one. 16:19 Lajla: clklein, mais naturellement 16:19 (quit) jesusito`: Client Quit 16:19 jonrafkind: (quote x) is an s-expression but evaluating it is a symbol 16:20 Lajla: Thank you. 16:20 Lajla: I won. 16:20 Lajla: Muahahah. 16:20 jonrafkind: the customer is always right 16:20 carleastlund: 'x is so a symbol. You write it (quote |'x|). 16:20 (nick) abbe_ -> abbe 16:21 (quit) abbe: Changing host 16:21 (join) abbe 16:22 samth: carleastlund wins the internet 16:25 (quit) rapacity: *.net *.split 16:25 (quit) jesusito: *.net *.split 16:25 (quit) lisppaste: *.net *.split 16:25 (join) rapacity 16:27 (join) MayDaniel 16:32 Lajla: carleastlund, why not ((quote quote) (quote x)) 16:34 carleastlund: Sorry, I meant |'x|. You construct it at runtime with what I wrote. 16:35 (quit) abbe: Quit: abbe 16:35 jonrafkind deducts half the internet worth of points from carleastlund 16:36 Lajla: Not fair 16:36 Lajla: I want some too. 16:36 carleastlund: Given the state of the internet and what is found on most of it, I think I'm better off without any of those points... 16:37 Lajla: Then give them to me. 16:37 carleastlund: That would require touching them. 16:38 (join) abbe 16:38 (quit) abbe: Changing host 16:38 (join) abbe 16:43 (quit) abbe: Client Quit 16:44 (join) abbe 16:44 (quit) abbe: Changing host 16:44 (join) abbe 16:45 (quit) tauntaun: Ping timeout: 240 seconds 16:56 (join) mceier 17:05 (quit) drhodes: Ping timeout: 240 seconds 17:09 (quit) corruptmemory: Remote host closed the connection 17:11 (join) PLT_Notify 17:11 PLT_Notify: racket: master John Clements * c1f76d4 (1 files in 1 dirs): bug fixed 17:11 PLT_Notify: racket: master John Clements * 1b843ea (3 files in 2 dirs): added checking on planet unlink 17:11 PLT_Notify: racket: master commits 156153f...1b843ea - http://bit.ly/gb25Xr 17:11 (part) PLT_Notify 17:12 (quit) sreque: Ping timeout: 245 seconds 17:13 (join) drhodes 17:16 (join) corruptmemory 17:36 (join) tauntaun 17:37 jonrafkind: bremner_, ping 17:38 tauntaun: I am tauntaun. Hear me roar. 17:39 (quit) lucian: Remote host closed the connection 17:40 (join) lucian 17:47 (nick) bremner_ -> bremner 17:48 bremner: jonrafkind: what's up? 17:49 jonrafkind: -Xdoc/release-notes doesn't seem to be working 17:49 (quit) MayDaniel: Read error: Connection reset by peer 17:49 jonrafkind: both packages (racket-common and racket-doc) contain those files 17:49 jonrafkind: DEB_DH_INSTALL_ARGS_racket-doc := -Xdoc/release-notes 17:49 jonrafkind: i checked dh_install and it says its supposde to honor -X 17:50 Lajla: jonrafkind, ever since you have admitted your wrongness 17:50 Lajla: I can't point it out any more 17:50 Lajla: it feels empty 17:50 Lajla: a hollow victory 17:50 bremner: jonrafkind: give 15 minutes, I'll check what happens here. 17:50 bremner: Lajla: hush now, the grownups are talking 17:50 jonrafkind: im rerunning the build but it takes *forever* 17:51 Lajla: bremner, I'm already 17 I will have you know. 17:51 Lajla: Like, in one year, I can legally cause a car crash. 17:54 bremner: jonrafkind: what is in racket-doc.install and racket-common.install? 17:54 jonrafkind: racket-doc.install has "usr/share/racket/doc" 17:54 jonrafkind: $ cat racket-common.install 17:55 jonrafkind: usr/include 17:55 jonrafkind: usr/share/racket/collects 17:55 jonrafkind: usr/share/man 17:55 jonrafkind: usr/share/racket/doc/release-notes 17:55 bremner: huh, same as here. But I think I would have noticed the file duplication 17:56 jonrafkind: i wonder if for now i can just get rid of usr/share/racket/doc/release-notes for racket-common 17:57 bremner: that seems like it should work, in a sortof hacky-itsonly-a-ppa way ;) 17:58 (join) PLT_Notify 17:58 PLT_Notify: racket: master John Clements * 9de3f25 (3 files in 2 dirs): added docs, changed to optional param - http://bit.ly/hX62b9 17:58 (part) PLT_Notify 17:59 jonrafkind: looks like -X jsut becomes an argument to find.. ! \( blah \) 18:00 bremner: in dh_install? 18:00 jonrafkind: yea 18:01 bremner: what version of debhelper do you have installed (or in the chroot?) 18:01 jonrafkind: wow this is the most amazing error message ive ever seen 18:01 jonrafkind: $ find . -name -o ! \( -name 'doc/release-notes' \) 18:01 jonrafkind: find: warning: Unix filenames usually don't contain slashes (though pathnames do). That means that '-name `doc/release-notes'' will probably evaluate to false all the time on this system. You might find the '-wholename' test more useful, or perhaps '-samefile'. Alternatively, if you are using GNU grep, you could use 'find ... -print0 | grep -FzZ `doc/release-notes''. 18:01 jonrafkind: what package is dh from 18:02 jonrafkind: debhelper 18:02 jonrafkind: Version: 7.4.15ubuntu1 18:03 bremner: hrm. I've got 8.0.0 here. I wouldn't think that would matter, but I don't know for sure. 18:14 (quit) mceier: Quit: leaving 18:16 bremner: jonrafkind: ok, rebuild and confirmed that release-notes only went into racket-common 18:16 jonrafkind: so its just my old dh thats causing it I guess 18:16 jonrafkind: are you on 10.10? 18:16 bremner: I'm in debian squeeze 18:16 jonrafkind: my build machine is 10.04 18:16 jonrafkind: oh ok 18:17 (join) lnostdal 18:18 lnostdal: hey guys, just a quick question; is it possible to find the references to some object using racket? .. i mean something similar to what visualvm does for java or jvm base languages (some)? 18:19 lnostdal: i guess this is known as memory profiling (e.g. i have a weak hash-table, and i want to know why the objects in the hash table aren't GCed) 18:21 jonrafkind: i dont think there is a good way 18:58 carleastlund: lnostdal, for most purposes the eq-hash-code of a value may serve your purpose if you want to track unique identities. 18:59 carleastlund: If you generate more than 2^MAXHASHCODE separate values, you may run into trouble. 18:59 (quit) corruptmemory: Quit: Leaving 19:00 lnostdal: hm, that's not what i mean, carleastlund .. but jonrafkind answered i guess 19:01 carleastlund: Oh, yes, I did not read carefully enough. Sorry. I agree with that answer -- I don't know of a way. 19:02 carleastlund: What kinds of values are not being GC'd? 19:02 lnostdal: well, i'm coming from SBCL (Common Lisp) and just checking what other languages/implementations/run-times can do etc. 19:03 lnostdal: but in this particular case, unrelated to racket , it's just instances of a class stored in a weak hash table 19:07 jonrafkind: i need to match a value with a specific symbol created with gensym, whats the easiest way? (match x [(? (lambda (z) (eq? z my-symbol))) ...]) is sort of painful 19:08 carleastlund: (require unstable/match) (match x [(== my-symbol) ...]) 19:08 carleastlund: Alternately, (define (unique? x) (eq? x my-symbol)) (match x [(? unique? x) ...]) 19:08 carleastlund: Further alternately, use cond. ;) 19:09 jonrafkind: well im matching a whole bunch of stuff (match (list a b c d) ...) and some of them might be my symbol, some aren't 19:09 jonrafkind: but unstable/match looks cool 19:10 (join) PLT_Notify 19:10 PLT_Notify: racket: master Robby Findler * d5c753b (1 files in 1 dirs): adjusted printfs to make them a little narrower 19:10 PLT_Notify: racket: master Robby Findler * 62c9614 (1 files in 1 dirs): adjust the framework test suite so that queue-sexp-to-mred catches and propogates exceptions 19:10 PLT_Notify: racket: master Robby Findler * 8e94ce4 (3 files in 3 dirs): lift the restriction that the text:ports mixin ... 19:10 PLT_Notify: racket: master Robby Findler * e3c26a2 (3 files in 2 dirs): improved the setup for the front-end method so that ... 19:10 PLT_Notify: racket: master commits 9de3f25...e3c26a2 - http://bit.ly/hFY7tK 19:10 (part) PLT_Notify 19:50 (join) samth_ 19:50 samth_: jonrafkind, where's the build script for your ppa? 19:52 jonrafkind: sec 19:52 jonrafkind: git://git.debian.org/collab-maint/racket.git 19:52 jonrafkind: theres a bunch of branches in there, i think use the 'debian' branch 19:53 jonrafkind: and then there are some small changes you have to make to the racket tree to get it to build 19:53 jonrafkind: first is edit src/configure and change ${libdir} to ${datadir} for the collectspath 19:53 jonrafkind: er, collectsdir 19:54 jonrafkind: and then because my build system is old (the dh program) I had to erase the line about usr/share/doc from debian/racket-common.install 19:54 jonrafkind: i can put this stuff in our meta tree or whatever, but most of the instructions are specific to my setup 19:56 jonrafkind: i gotta run, send me an email if you want more info 19:56 bremner: samth_: or ping me, since I am one of maintainers of that repo 19:57 samth_: jonrafkind, bremner, you should put this in racket/collects/meta 19:58 (quit) carleastlund: Quit: carleastlund 20:00 bremner: don't you guys already build your own ubuntu packages? 20:00 (join) joe_shmo 20:00 joe_shmo: argh is there somewhere i can download some sort of IDE for C with a bundled compilier 20:00 bremner: joe_shmo: err, why ask here? 20:01 (quit) jonrafkind: Ping timeout: 240 seconds 20:01 joe_shmo: cuse I don't know anywhere else to ask 20:01 joe_shmo: I like netbeans 20:01 joe_shmo: but 20:01 joe_shmo: when I download their C ide thingy 20:01 lucian: joe_shmo: try #c ? 20:01 joe_shmo: I need to get a compilier seperately 20:01 joe_shmo: hmm 20:01 lucian: joe_shmo: with any IDE you'll need a separate compiler 20:01 joe_shmo: ARGH 20:02 joe_shmo: but there's a java bundle 20:02 joe_shmo: with a java sdk 20:02 joe_shmo: no such thing for C? 20:02 lucian: joe_shmo: just get a compiler. what's so hard about that? 20:02 joe_shmo: it takes like a million and 1 steps to install 20:02 lucian: just like you choose a java sdk, you can choose a c compiler. but really, try #c. this is about racket 20:03 samth_: bremner, no 20:03 joe_shmo: what is #c? 20:03 samth_: we build packages on ubuntu, but their just the shell script/tar archive 20:03 lucian: joe_shmo: the channel, #c on freenore here. try /join #c 20:03 samth_: joe_shmo, the irc channel name c 20:04 joe_shmo: ahhhh, gotcha 20:04 bremner: it's actually ##C 20:04 lucian: bremner: freenode redirects :) 20:04 lucian hates double # 20:06 (join) PLT_Notify 20:06 PLT_Notify: racket: master Robby Findler * 7af41fd (1 files in 1 dirs): We no longer need to avoid IO or worry about exceptions, so drop the with-handlers. ... - http://bit.ly/fMGJ3E 20:06 (part) PLT_Notify 20:09 bremner: samth_: my priority (in this context) right now is getting up to date packages into debian; after that I don't mind thinking about the racket package building. 20:10 samth_: bremner, certainly 20:11 samth_: i was mostly thinking of jon, since his packages are just something he's doing as part of racket, rather than as part of debian 20:11 bremner: samth_: sure. 20:18 (join) SinDoc 20:24 (part) joe_shmo 20:25 (join) joe_shmo 20:25 joe_shmo: hey guys, so I tried joining #c and it's like "Cannot join channel, you must be invited" 20:27 lucian: joe_shmo: you probably need to be registered http://freenode.net/faq.shtml#registering 20:32 (join) shofetim 20:38 joe_shmo: ;_; 20:39 SinDoc: Any idea how I should best match https://github.com/sindoc/objective-racket/blob/master/src/objective-racket/main.rkt#L20 ? 20:39 rudybot: http://tinyurl.com/65mtsak 20:44 samth_: SinDoc, i don't understand what you mean 20:44 SinDoc: The issue is that 20:44 SinDoc: (match '(public static name 'val) 20:44 SinDoc: ((list public static name val) #t)) 20:44 SinDoc: and 20:44 SinDoc: (match '(private a-method (x) (+ x 1)) 20:44 SinDoc: ((list public static name val) #t)) 20:44 SinDoc: both match and say #t 20:45 samth_: ok 20:45 SinDoc: syntax-case form (static) 20:46 SinDoc: would solve it but in this case, I'm using (match) 20:46 samth_: i don't know what you want 20:46 (quit) joe_shmo: Ping timeout: 245 seconds 20:47 (join) joe_shmo 20:47 joe_shmo: someone said you have to register to join #c? 20:47 joe_shmo: how would one do that? 20:47 bremner: joe_shmo: /query nickserv 20:48 lucian: joe_shmo: joe_shmo: you probably need to be registered http://freenode.net/faq.shtml#registering 20:48 SinDoc: samth_: ,(begin 20:48 SinDoc: (display 20:48 SinDoc: (match '(public static name 'val) 20:48 SinDoc: ((list public static name val) #t))) 20:48 SinDoc: (newline) 20:48 SinDoc: (display 20:48 SinDoc: (match '(private a-method (x) (+ x 1)) 20:48 SinDoc: ((list public static name val) #t))) 20:48 SinDoc: (newline)) 20:48 samth_: yes, i understand that both of those produce #t 20:48 samth_: but what are you trying to do? 20:49 SinDoc: I was hoping to distinguish those two patterns from one another 20:50 SinDoc: In other words, public, static, etc., these are keywords and fixed 20:50 SinDoc: I don't want them bound 20:51 SinDoc: While using (syntax-case form (public static)) 20:52 SinDoc: I was able to express the fact that those keywords are fixed 20:53 SinDoc: and was wondering if the same thing exists for (match ...) 20:53 (join) winxordie 20:54 SinDoc: regexp would do, but that would imply transforming list with arbitrary values to a string (right?) 21:03 (join) masm 21:05 (quit) masm1: Ping timeout: 250 seconds 21:07 (quit) samth_: Ping timeout: 276 seconds 21:08 (quit) tauntaun: Ping timeout: 240 seconds 21:21 (quit) joe_shmo: Ping timeout: 245 seconds 21:30 (part) mg4001: "Leaving" 21:39 (join) joe_shmo 21:39 (join) realitygrill 21:40 joe_shmo: how would one write a function to change a number to a certain base? 21:40 joe_shmo: so 21:40 joe_shmo: (base 22 9) should produce 22 in base 9 21:49 (quit) lucian: Remote host closed the connection 21:57 (quit) joe_shmo: Ping timeout: 245 seconds 22:04 (join) samth_ 22:24 (join) Demosthenes 23:01 (join) snaffu 23:23 (quit) SinDoc: Quit: I must accidentally have left my workstation! 23:28 (join) SinDoc 23:33 (quit) snaffu: Quit: leaving 23:38 (quit) samth_: Ping timeout: 240 seconds