00:17 (quit) realitygrill: Ping timeout: 252 seconds 00:19 (join) realitygrill 00:41 (quit) jonrafkind: Ping timeout: 264 seconds 00:42 (join) jonrafkind 01:23 (quit) samth_away: Ping timeout: 240 seconds 01:23 (join) samth_away 01:24 (quit) jeapostrophe: Quit: jeapostrophe 01:35 (quit) srolls: Remote host closed the connection 01:59 (quit) tewk: Ping timeout: 240 seconds 02:01 (join) tewk 02:01 (quit) flaggy_: Ping timeout: 260 seconds 02:19 (quit) jonrafkind: Read error: Operation timed out 02:45 (join) neilv 03:31 (quit) realitygrill: Quit: realitygrill 03:46 (join) mceier 03:51 (quit) rgrinberg: Remote host closed the connection 03:54 (join) rgrinberg 05:28 (join) masm 05:33 (quit) neilv: Ping timeout: 245 seconds 06:03 (join) MayDaniel 06:14 (quit) MayDaniel: Read error: Connection reset by peer 06:33 (join) JuanDaugherty 06:40 (join) neilv 06:40 (quit) neilv: Changing host 06:40 (join) neilv 06:51 (quit) JuanDaugherty: Quit: JuanDaugherty 07:02 (join) RacketCommitBot 07:02 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/xzzxLw 07:02 RacketCommitBot: [racket/master] Use a `typed-racket' package to include new release notes. - Eli Barzilay 07:02 (part) RacketCommitBot 07:10 (join) RacketCommitBot 07:10 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/6JnAPA 07:10 RacketCommitBot: [racket/master] Synch German string constants with latest. - Mike Sperber 07:10 (part) RacketCommitBot 08:50 (quit) neilv: Ping timeout: 245 seconds 08:52 (join) dwaynecrooks 08:53 (quit) dwaynecrooks: Client Quit 08:54 (join) dwaynecrooks 08:56 (join) neilv 08:56 (quit) neilv: Changing host 08:56 (join) neilv 09:09 (join) jeapostrophe 09:11 (quit) dwaynecrooks: Quit: Leaving 09:12 (join) dwaynecrooks 09:39 (join) MayDaniel 09:49 (join) RacketCommitBot 09:49 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/McQ-Pg 09:49 RacketCommitBot: [racket/master] fix `build-struct-generation' to work with `racket/base' - Matthew Flatt 09:49 (part) RacketCommitBot 10:07 (quit) neilv: Ping timeout: 245 seconds 10:21 (join) neilv 10:21 (quit) neilv: Changing host 10:21 (join) neilv 10:23 (join) RacketCommitBot 10:23 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/K8F2lA 10:23 RacketCommitBot: [racket/master] In German string constants, move a & menu accelerator marker - Mike Sperber 10:23 (part) RacketCommitBot 10:26 (join) jao 10:52 (quit) MayDaniel: Read error: Connection reset by peer 11:26 (join) realitygrill 11:49 (quit) masm: Quit: Leaving. 11:56 (quit) kennyd: Ping timeout: 245 seconds 12:05 ohwow: what's the proper way to generate an infinite list in Racket? 12:06 ohwow: #lang lazy? 12:08 (join) serban 12:12 (join) JuanDaugherty 12:23 (quit) realitygrill: Read error: Connection reset by peer 12:24 (join) realitygrill 12:30 mithos28: ohwow: shared or make-reader-graph will let you generate cyclic lists 12:36 (join) RacketCommitBot 12:36 RacketCommitBot: [racket] plt pushed 2 new commits to master: http://git.io/bbG-pg 12:36 RacketCommitBot: [racket/master] cocoa: fix menu when two layers of dialogs are dismissed - Matthew Flatt 12:36 RacketCommitBot: [racket/master] cocoa: fix application about handler - Matthew Flatt 12:36 (part) RacketCommitBot 13:02 (quit) jeapostrophe: Quit: jeapostrophe 13:18 (join) jeapostrophe 13:29 (quit) jeapostrophe: Quit: jeapostrophe 13:35 neilv: http://www.hubbell-raco.com/history.aspx 13:39 neilv: i wonder whether it makes sense to add a "raco" command for mcfly 13:40 neilv: one of my concerns with mcfly is that you'll have multiple versions of it installed at once, since multiple packages can have dependencies on incompatible versions of mcfly 13:41 neilv: which seems to complicate having individual versions of mcfly provide os commands or raco commands 13:41 neilv: i guess the command part could be in a separate package 13:48 (join) jeapostrophe 13:49 (quit) jeapostrophe: Client Quit 14:13 neilv: ryan culpepper sure did put a lot of work into syntax-parse 14:24 (quit) JuanDaugherty: Quit: reboot this desktop 14:38 neilv: in syntax-parse, if i am trying to match a form that has a repeating subform to it, and that subform is kinda complicated, and i want to do translation on each subform using racket code (not just ellipses)... what's a good way to avoid matching the structure of each subform twice? 14:39 neilv: maybe something with "~do", and binding the output of that to a new pattern variable inside the ellipsis? 14:43 neilv: or (require syntax/parse/experimental/splicing) 15:20 (join) jeapostrophe 15:27 (nick) samth_away -> samth 15:28 samth: neilv: use the experimental bit, give ryan feedback 15:30 samth: jeapostrophe: question from scrollback you might be able to answer 15:30 samth: Is there a data structure in core that represents an http response? (racket being the client, so web-server/http/response-structs doesn't work) 15:32 (quit) rgrinberg: Remote host closed the connection 15:33 jeapostrophe: nope 15:33 mithos28: the problem was that web-server/http/response-structs assume that I want to write the data out 15:33 mithos28: ok 15:33 jeapostrophe: pure and impure port just give a port that has or doesn't have headers 15:33 samth: mithos28: so, you've now volunteered to write one :) 15:33 mithos28: samth: ok 15:35 (join) RacketCommitBot 15:35 RacketCommitBot: [racket] plt pushed 6 new commits to master: http://git.io/cJrnrw 15:35 RacketCommitBot: [racket/master] gtk: make list-box% min size non-zero for content - Matthew Flatt 15:35 RacketCommitBot: [racket/master] fix `regexp-match' docs - Matthew Flatt 15:35 RacketCommitBot: [racket/master] clarify `define-struct/derived' in docs - Matthew Flatt 15:35 (part) RacketCommitBot 15:54 (join) jonrafkind 15:59 neilv: i wonder how many people grep the collects tree for example uses of procedures and syntax 16:00 (quit) jeapostrophe: Read error: Connection reset by peer 16:01 neilv: i have a suspicion that j's irc client does something annoying with idle chatter 16:04 (join) jeapostrophe 16:05 neilv: looks like "~do" is not actually used in racket 5.1.2, and "~bind" is used briefly in TR, and not in an elipsis context 16:05 asumu: I've done this to see how classes are used. 16:06 neilv: it's a good practice 16:06 (quit) jeapostrophe: Read error: Connection reset by peer 16:07 neilv: drracket doesn't make exploring the racket source as easy as emacs does 16:07 neilv: except for the ability to jump to a definition if you have check syntax info active 16:08 (join) jeapostrophe 16:09 samth: neilv: if you use a recent drracket, you always have it active 16:09 neilv: recent being a nightly build, or is it in 5.1.3? 16:10 neilv: i thought it was nightly only 16:10 (join) JuanDaugherty 16:13 (quit) jeapostrophe: Read error: Connection reset by peer 16:16 samth: it's not in 5.1.3, no 16:23 (join) jeapostrophe 16:30 neilv: this error "syntax-parse: pattern keyword not allowed here in: ~once" could just mean you forgot the "..." after the form 16:39 neilv: the easy way, without getting into fancier features of syntax-parse, is to make the first pass parse dumb and match invalid syntax in the sub-forms. http://paste.org/pastebin/view/37945 16:39 samth: neilv: yes 16:39 (quit) jeapostrophe: Read error: Connection reset by peer 16:42 (join) yoklov 16:43 (join) jeapostrophe 16:45 yoklov: so, let me get this straight, in the racket OO system, augmenting a method is similar to (the same as?) overriding a method and calling the superclass' method of the same name immediately? 16:50 samth: yoklov: no 16:50 samth: augmentable methods work differently from overrideable methods 16:50 yoklov: hm 16:50 samth: ie, instead of the most-specific method being called, and potentially delegating to superclass methods with `super' 16:51 samth: the least-specific method is called, and it potentially delegates to *sub*class methods with `inner' 16:51 yoklov: oh huh. 16:54 (join) realitygrill_ 16:55 (quit) hyko: Ping timeout: 276 seconds 16:55 neilv: there aren't secret abbreviations for quasisyntax/loc and syntax/loc, are there? 16:55 samth: neilv: nope 16:56 samth: i would support them, if i could think of a good one 16:56 (quit) realitygrill: Ping timeout: 245 seconds 16:56 (nick) realitygrill_ -> realitygrill 16:57 yoklov: so, aside from the racket reference, (which, actually, seems to have gotten somewhat better since the last time i tried to understand racket's OO) is there anything i can/should read to better understand the concepts behind this? 16:57 neilv: qstx/l looks cryptic 16:58 samth: yoklov: the guide section on OO is also good, as well as the Flatt et al 2006 paper title "Scheme with Classes Mixins and Traits" 16:58 (quit) neilv: Quit: Leaving 16:58 yoklov: alright, thanks 16:59 samth: yoklov: http://www.ccs.neu.edu/scheme/pubs/asplas06-fff.pdf 16:59 (join) hyko 16:59 yoklov: right, i've seen this before. 17:03 yoklov: just out of curiosity (not a criticism), since it seems to me that essentially the only time that racket/class et al are used is for the gui and graphics, why was a system based on Beta's OO (that is what it's based on, right?) used, as opposed to one that is more traditional, such as a prototype or `normal' class based (by which i mean one more similar to java/ruby/python etc) system? 17:03 jonrafkind: I think some of beta's features are used in drracket 17:04 jonrafkind: but racket's class system is a superset of java/ruby/python, afaik, so you can just use the features present in a java class system if you want 17:04 jonrafkind: of course just having things like `augment' makes life somewhat confusing, but if you just ignore it you can be happy 17:05 samth: yoklov: the system combines java-style and beta-style 17:05 jonrafkind: a long time ago I produced a simple macro that only supported some common java class features: http://planet.racket-lang.org/display.ss?package=java-class.plt&owner=kazzmir 17:05 rudybot: http://tinyurl.com/3rug223 17:05 yoklov: yeah, and most of the stuff I've done is just normal OO style stuff if I must be writing object oriented code 17:05 samth: the paper "super & inner, together at last" describes the rationale 17:06 samth: http://www.cs.utah.edu/plt/publications/oopsla04-gff.pdf 17:07 yoklov: but still, I mean I write a good amount of racket and I'd like to be familiar with its extensions, it's just odd that the OO system seems to be one of the most complicated parts of the language, though that could just be due to unfamiliarity 17:08 jonrafkind shrugs 17:08 yoklov: OH 17:08 yoklov: i get it now 17:08 yoklov: huh. 17:08 jonrafkind: what, augment? 17:09 yoklov: yeah, a super class uses inner in a method at some point, and if the subclass wants to augment that method, its augmentation is used where the inner is uh… called in the superclass? 17:09 samth: yes 17:09 yoklov: yeah. that's actually pretty cool. 17:09 jonrafkind: the exact opposite of super 17:10 yoklov: it is. 17:10 jonrafkind: i find i want it every once in a while when i program in c++/java 17:12 (join) anRch 17:14 yoklov: so a function like that you intend to have augmented by subclasses should be defined with pubment? 17:14 yoklov: *function that 17:16 (join) RacketCommitBot 17:16 RacketCommitBot: [racket] plt pushed 3 new commits to master: http://git.io/OK33fQ 17:16 RacketCommitBot: [racket/master] add `schemecommentfont' - Matthew Flatt 17:16 RacketCommitBot: [racket/master] add examples to regexp docs - Matthew Flatt 17:16 RacketCommitBot: [racket/master] fix HtDP `local' to work better with macros that expand to `begin' - Matthew Flatt 17:16 (part) RacketCommitBot 17:21 (quit) jeapostrophe: Quit: jeapostrophe 17:22 yoklov: yeah. 17:23 yoklov: anyway, thanks a ton, that helped so much. 17:31 (quit) mceier: Quit: leaving 17:32 (quit) Emry: Quit: Leaving 17:33 (join) SinDoc 17:38 asumu: yoklov: Yep, and then there is overment for when you override a method and then open it up for augmentation. ;) 17:51 yoklov: (for 2d), are the opengl drawing methods significantly/any faster than the normal ones? 17:51 yoklov: i mean, does anybody know 17:58 (join) bfulgham_ 17:58 (quit) bfulgham: Read error: Connection reset by peer 17:58 (nick) bfulgham_ -> bfulgham 18:02 samth: stamourv: do you have a tree w/ the `make-tainted-identifier' work? 18:10 (quit) jao: Remote host closed the connection 18:11 (join) neilv 18:14 (join) pitiburi 18:16 (quit) yoklov: Quit: Leaving. 18:16 (join) yoklov1 18:16 (join) jao 18:28 (join) ChibaPet 18:35 (quit) anRch: Quit: anRch 18:38 (quit) wolong: Ping timeout: 240 seconds 18:42 (join) wolong 18:51 (quit) yoklov1: Quit: Leaving. 18:54 (quit) ChibaPet: Quit: Leaving. 18:54 (join) ChibaPet1 18:54 (part) ChibaPet1 19:00 (quit) mithos28: Quit: mithos28 19:01 (join) mithos28 19:07 (quit) pitiburi: Ping timeout: 252 seconds 19:25 neilv: when i search for "fold" in the manuals, the first page doesn't show "foldl" or "foldr". but it does show rnrs and srfi ones 19:38 samth: neilv: yeah, probably prioritizing the search to feature results from `racket' and `racket/base' would be a good idea 19:38 samth: also to prioritize results that *start* with the search string 19:39 neilv: yeah, and maybe including terminology keywords if it doesn't already 19:39 samth: submitting bug report 19:39 samth: (it does do that) 19:39 neilv: ranking functions are hard 19:39 samth: neilv: actually, can you submit the bug report? my drracket is in middle of major surgery 19:40 neilv: damn. was hoping tohave irc do my work for me 19:40 neilv: ok 19:40 samth: neilv: probably this is a pretty easy change to make 20:05 (join) yoklov 20:12 (quit) JuanDaugherty: Remote host closed the connection 20:18 serban: q: how can i check if a list element is a function 20:20 serban: i have something like '(2 x map a b c d filter 3 etc) 20:20 neilv: the "procedure?" procedure will be helpful for figuring out whether a datum is a procedure/function/closure 20:22 serban: thanks 20:22 neilv: but in that list, "map" is a symbol, and going from a symbol to a variable binding of that symbol is not something you normally want to do in racket 20:22 serban: ah 20:22 neilv: if you put the actual procedure object in the list, then you could use "procedure?" on it 20:23 neilv: (list 2 'x map 'a 'b 'c 'd filter 3) 20:40 (quit) yoklov: Quit: Leaving. 20:41 (quit) neilv: Quit: Leaving 20:45 (join) jeapostrophe 20:51 (join) RacketCommitBot 20:51 RacketCommitBot: [racket] plt pushed 7 new commits to master: http://git.io/sumvTg 20:51 RacketCommitBot: [racket/master] Add tests for non-linearity in `match-let'. - Sam Tobin-Hochstadt 20:51 RacketCommitBot: [racket/master] Fix language info when running 'racket -I typed/racket'. - Sam Tobin-Hochstadt 20:51 RacketCommitBot: [racket/master] Split syntax-classes out into separate file to reduce requires. - Sam Tobin-Hochstadt 20:51 (part) RacketCommitBot 20:51 (nick) samth -> samth_away 20:52 (join) RacketCommitBot 20:52 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/DT66bw 20:52 RacketCommitBot: [racket/master] Revert "Re-enable timing" - Sam Tobin-Hochstadt 20:52 (part) RacketCommitBot 21:09 (quit) SinDoc: Ping timeout: 252 seconds 21:19 (quit) jeapostrophe: Quit: jeapostrophe 21:25 (join) flaggy_ 21:31 (join) jeapostrophe 21:31 (quit) jeapostrophe: Client Quit 21:34 (quit) wtetzner: Remote host closed the connection 21:39 (join) realitygrill_ 21:42 (quit) realitygrill: Ping timeout: 245 seconds 21:42 (nick) realitygrill_ -> realitygrill 21:43 (quit) jao: Ping timeout: 240 seconds 21:55 mithos28: has the packages idea brought up at Racketcon been made into an implementation yet or is it still being worked on? 22:11 serban: (count (lambda (K) (if (equal? 'a-b-1 K) #t)) '(f car L a-b-1 f acum cdr L)) = 8 22:11 serban: why the hell? 22:17 (join) realitygrill_ 22:17 rapacity: there is no else expression on that if 22:18 rapacity: rudybot: (count (lambda (K) (if (equal? 'a-b-1 K) #t #f)) '(f car L a-b-1 f acum cdr L)) 22:18 rudybot: rapacity: your sandbox is ready 22:18 rudybot: rapacity: ; Value: 1 22:19 (quit) realitygrill: Read error: Connection reset by peer 22:19 (nick) realitygrill_ -> realitygrill 22:23 (join) realitygrill_ 22:24 (quit) realitygrill: Read error: Connection reset by peer 22:24 (nick) realitygrill_ -> realitygrill 22:26 serban: btw is there a list-equal? predefined function similar to the one i pasted above? ( (lambda (K) (if (equal? 'a-b-1 K) #t #f)) ) 22:30 mithos28: serban: I'm not sure where you pasted it. What do you want list-equal? to do? 22:30 serban: [05:07:06] (count (lambda (K) (if (equal? 'a-b-1 K) #t)) '(f car L a-b-1 f acum cdr L)) = 8 22:30 serban: [05:07:10] why the hell? 22:30 jonrafkind: serban, do you mean member? 22:31 jonrafkind: you want to count the number of equal items in a list to some value? 22:31 serban: member, right:) 22:31 jonrafkind: well member will return the #t or #f depending on if the value is in the list 22:31 jonrafkind: it wont return the number of times it was in there 22:33 serban: i just want to count how many times element 'X appears in the list 22:33 serban: (count (lambda (K) (equal? N K) L) 22:33 jonrafkind: you could do.. (length (filter (lambda (x) (equal? x some-value)) some-list)) 22:34 jonrafkind: or is count a real function? 22:34 mithos28: count is defined in racket/list 22:34 jonrafkind: oh 22:34 jonrafkind: luzl 22:34 jonrafkind: seems to work for me 22:34 jonrafkind: serban, so whats the issue? 22:35 mithos28: if you are asking if you can drop the lambda and have just (count-equal N L), I don't think it is there 22:35 serban: yea, something like that, got it now, thanks 22:41 (quit) realitygrill: Read error: Connection reset by peer 22:41 (join) realitygrill_ 22:50 (join) RacketCommitBot 22:50 RacketCommitBot: [racket] plt pushed 2 new commits to master: http://git.io/kaYWUQ 22:50 RacketCommitBot: [racket/master] Update props for typed-scheme -> typed-racket conversion. - Sam Tobin-Hochstadt 22:50 RacketCommitBot: [racket/master] Fix require analysis heuristics for TS -> TR. - Sam Tobin-Hochstadt 22:50 (part) RacketCommitBot 23:10 (join) wtetzner 23:25 (quit) mithos28: Ping timeout: 252 seconds 23:44 (quit) wolong: Read error: Operation timed out 23:46 (join) jeapostrophe