00:10 (join) dnolen 00:19 (join) mizu_no_oto 00:26 (quit) dnolen: Remote host closed the connection 00:26 (join) dnolen 00:27 (quit) jeapostrophe: Read error: Operation timed out 00:32 (quit) jao: Ping timeout: 260 seconds 00:34 (quit) neilv: Ping timeout: 260 seconds 00:38 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 00:53 (join) Fare 00:54 (join) offby1 01:01 (join) neilv 01:01 (quit) neilv: Client Quit 01:15 (join) gciolli 01:16 (quit) mceier: Quit: leaving 01:51 (quit) dnolen: Quit: ERC Version 5.3 (IRC client for Emacs) 02:17 (quit) hash_table: Ping timeout: 255 seconds 02:23 (join) Demosthenex 02:23 (join) mceier 02:40 (quit) jyc_: Read error: Connection reset by peer 02:50 (join) hkBst 02:50 (quit) hkBst: Changing host 02:50 (join) hkBst 02:51 (join) tfb 03:01 (quit) jonrafkind: Ping timeout: 240 seconds 03:07 (quit) eli: Ping timeout: 248 seconds 03:10 (quit) sizz: Ping timeout: 248 seconds 03:13 (quit) mithos28: Quit: mithos28 03:14 (join) mithos28 03:17 (quit) ozzloy: Ping timeout: 240 seconds 03:18 (join) ozzloy 03:19 (join) wtbKnowledge 03:19 wtbKnowledge: hello 03:20 wtbKnowledge: anyone here? :s 03:20 wtbKnowledge: quick question 'bout racket 03:23 (quit) gciolli: Quit: Leaving. 03:24 (join) chandler 03:25 (nick) chandler -> Guest28370 03:26 (join) sizz 03:42 (quit) sizz: Quit: No Ping reply in 180 seconds. 03:42 (join) sizz 03:42 (quit) Fare: Ping timeout: 246 seconds 03:43 (join) soegaard 03:52 (quit) soegaard: Quit: soegaard 03:58 (quit) Demosthenex: Ping timeout: 268 seconds 03:58 (quit) mithos28: Quit: mithos28 04:00 (join) Demosthenex 04:04 (join) bitonic 04:31 (join) jyc_ 04:52 (quit) tfb: Quit: sleeping 05:11 (join) rahul__ 05:15 (quit) jyc_: Read error: Connection reset by peer 05:16 (quit) bjz: Quit: Leaving... 06:16 (join) bjz 06:34 (join) gciolli 06:35 (quit) gciolli: Client Quit 06:49 bremner: wtbKnowledge: the best strategy is to ask your question, then stay in the channel for a while 06:53 wtbKnowledge: :) thank you 06:53 wtbKnowledge: found the answer through trial and error though 07:25 Cryovat: Bet way to find it :) 07:25 wtbKnowledge: ye :)) indeed 07:25 wtbKnowledge: trial and error never fails 07:29 (quit) noam: Read error: Connection reset by peer 07:30 (join) noam 07:34 (quit) rahul__: Ping timeout: 244 seconds 07:43 (quit) wtetzner: Remote host closed the connection 07:48 (join) dzhus 07:52 (quit) bitonic: Ping timeout: 264 seconds 07:55 (quit) juanfra__: Ping timeout: 245 seconds 07:57 (join) masm 08:08 (join) mizu_no_oto 08:17 (join) jeapostrophe 08:17 (quit) jeapostrophe: Changing host 08:17 (join) jeapostrophe 08:42 (join) rahul__ 08:52 (join) bitonic 08:54 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 09:00 (join) hash_table 09:09 (join) jao 09:09 (quit) jao: Changing host 09:09 (join) jao 09:13 (quit) bitonic: Remote host closed the connection 09:22 (join) carleastlund 09:26 (join) mizu_no_oto 09:27 wtbKnowledge: can i have a "(letrec ...)" clause inside an "if" condition ? 09:28 bremner: sure, why not? 09:28 wtbKnowledge: :) dunno ... im a scheme newbie 09:29 wtbKnowledge: got a pretty long function to write :) had to be sure 09:29 bremner: mostly, everything is an expression. 09:29 bremner: rudybot: init racket 09:29 rudybot: bremner: your sandbox is ready 09:29 carleastlund: wtbKnowledge, (good) macros don't inspect the form of their subexpressions. You can put whatever expression you want for the condition and for both results. 09:30 (join) yoklov 09:30 wtbKnowledge: thank you :) 09:30 bremner: rudybot: eval (if (letrec [(t #f)] t) 'black-is-white 'white-is-black) 09:30 rudybot: bremner: ; Value: white-is-black 09:31 Cryovat: Also 09:31 Cryovat: The DrRacket macro stepper is great 09:31 Cryovat: Even if it can be terrifying when you tell it to show you *everything* 09:32 (quit) hash_table: Ping timeout: 246 seconds 09:32 wtbKnowledge: :)) 09:32 Cryovat: I always find it a bit aweinspiring 09:33 Cryovat: That so much language can be implemented in the language itself 09:43 (quit) karswell_: 10:05 (quit) jeapostrophe: Ping timeout: 256 seconds 10:17 (join) anRch 10:23 (join) karswell 10:23 (join) Fare 10:23 (join) didi 10:24 (join) bitonic 10:35 (join) Guest28370 10:41 (quit) mceier: Quit: Lost terminal 10:42 (join) agayev 10:44 (quit) yoklov: Quit: computer sleeping 10:46 (nick) Guest28370 -> chandler 10:46 (join) hash_table 10:50 (quit) agayev: Quit: . 11:03 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 11:05 (join) mizu_no_oto 11:06 (join) yoklov 11:07 (join) dnolen 11:12 (quit) Fare: Ping timeout: 260 seconds 11:15 (quit) rahul__: Quit: Leaving 11:18 (quit) didi: Ping timeout: 244 seconds 11:19 (quit) bjz: Quit: Bye! 11:20 (join) bjz 11:22 (join) jeapostrophe 11:22 (quit) jeapostrophe: Changing host 11:22 (join) jeapostrophe 11:22 (quit) anRch: Quit: anRch 11:30 (quit) hkBst: Quit: Konversation terminated! 11:32 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 11:36 (quit) jrslepak: Ping timeout: 276 seconds 11:42 (quit) jschuster: Quit: Coyote finally caught me 11:42 (join) Kaylin 11:51 (quit) dnolen: Remote host closed the connection 11:53 (join) mithos28 11:54 (join) anRch 11:57 (join) mizu_no_oto 11:59 (quit) wtbKnowledge: Quit: Fortune Cookie: "HTTP: 404 Page not found." 12:08 (join) MayDaniel 12:08 (join) mceier 12:17 (quit) yoklov: Quit: bye! 12:26 (quit) Shviller: Ping timeout: 276 seconds 12:27 (join) Shviller 12:28 (quit) anRch: Quit: anRch 12:32 (join) jrslepak 12:32 (quit) jeapostrophe: Ping timeout: 252 seconds 12:43 (quit) mithos28: Quit: mithos28 12:49 (join) jeapostrophe 12:49 (join) optikalmouse 12:49 optikalmouse: what kind of facilities does Racket provide for macro debugging? 12:49 optikalmouse: erm I mean development* 12:53 (join) jonrafkind 12:55 (join) jschuster 13:01 (join) mithos28 13:09 friscosam: optikalmouse: there is the macro debugger http://docs.racket-lang.org/macro-debugger/index.html 13:09 (quit) bitonic: Ping timeout: 246 seconds 13:13 (quit) mizu_no_oto: Ping timeout: 260 seconds 13:15 (quit) mithos28: Quit: mithos28 13:16 (join) mizu_no_oto 13:17 optikalmouse: friscosam: thanks. have you used them? do they help a lot? 13:18 friscosam: I've used it in DrRacket where it is built-in all the time. 13:19 friscosam: oops I missed that you said macro development. Macro debugger is good for debugging. I always think of Racket/DrRacket as a facility for macro development :) 13:21 friscosam: For development you may want to read the guide. 13:21 friscosam: somewhat specifically: http://docs.racket-lang.org/guide/macros.html 13:28 (join) RacketCommitBot 13:28 RacketCommitBot: [racket] plt pushed 2 new commits to master: http://git.io/_r8t2A 13:28 RacketCommitBot: [racket/master] Test localhost tcp before running echo server test - Jay McCarthy 13:28 RacketCommitBot: [racket/master] Change thread test to use fake tcp with same structure - Jay McCarthy 13:28 (part) RacketCommitBot 13:33 (quit) mizu_no_oto: Ping timeout: 268 seconds 13:34 (quit) bremner: Ping timeout: 246 seconds 13:35 asumu: optikalmouse: depends on what you mean by that. There is, for example, a powerful declarative way to define macros: syntax-parse. 13:36 asumu: Or did you mean tools? 13:38 (join) bremner 13:38 (quit) bremner: Changing host 13:38 (join) bremner 13:40 optikalmouse: asumu: well I was looking for tools kinda. 13:40 optikalmouse: basically I'm looking for whatever can be ported to other languages that support macros 13:41 optikalmouse: I was looking at sweet.js which adds hygienic macros to javascript but it has a precompile step and the first complaint was that it's dangerous and it makes your javascript hard to debug 13:41 (join) anRch 13:43 (join) didi 13:44 (quit) bremner: Ping timeout: 260 seconds 13:44 asumu: optikalmouse: dangerous in what sense? As in the expansion is hard to understand? 13:44 asumu: That's what the macro stepper is for in Racket. 13:45 asumu: (shows you the expansion steps) 13:48 (join) bremner 13:48 (quit) bremner: Changing host 13:48 (join) bremner 13:48 optikalmouse: I think the dangerous part is an empty complaint 13:48 optikalmouse: asumu: I think they're more concerned that you need an extra step, a compilation step for your javascript code to use the macros, the macros aren't eval'd at runtime 13:49 asumu: optikalmouse: you really don't want macros to eval at runtime, if you eventually want more complicated macros. 13:50 asumu: There's a paper "You want it when: composable and compilable macros" about this. 13:50 optikalmouse: is it because it's easy to confuse when computations happen? 13:51 asumu: Yes, it's better to have a clear separation of compile-time and run-time computatoin. 13:51 asumu: Especially if you also have things like state. 13:51 optikalmouse: agreed but you know how frontend programmers are 13:51 (join) mizu_no_oto 13:51 optikalmouse: "omg I cant just run my javascript!!! compile?! WTF" 13:53 asumu: Besides, that introduces a run-time cost for macros, which is really bad. 13:53 asumu: Especially if you have lots of macros or towers of macros. 13:54 asumu: Maybe you can convince them based on performance concerns 13:54 optikalmouse: they're using jquery and there's no treeshaking happening. 13:54 (quit) mizu_no_oto: Client Quit 14:00 optikalmouse: I should try and convert the examples in that paper to sweet.js. Might be a good exercise. thanks for the pointers :D 14:00 asumu: optikalmouse: no problem. :) 14:01 jonrafkind: optikalmouse, what paper? 14:01 optikalmouse: http://www.cs.utah.edu/plt/publications/macromod.pdf 14:01 jonrafkind: oh 14:02 friscosam: if I'm guessing correctly (haven't looked at the code) sweet.js is the product of a Racketeer 14:03 friscosam: at least partially 14:03 jonrafkind: the guy who works on sweet.js is not an active racket member 14:04 friscosam: I was thinking of Dave Herman 14:04 jonrafkind: hes the manager, Tim Disney works on it 14:05 asumu: friscosam: he's Cormac Flanagan's student IIRC, so he's a distant relative ,so to speak. 14:05 asumu: But certainly he knows about Racket. 14:06 friscosam: it's in the dna :) 14:11 optikalmouse: heh awesome 14:12 didi: The link from seems to be a dead link. 14:24 (join) nathanpc 14:41 (quit) anRch: Quit: anRch 14:44 (join) mizu_no_oto 14:44 (join) RacketCommitBot 14:44 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/vaiWvA 14:44 RacketCommitBot: [racket/master] fix a JIT problem with inline stuct allocation - Matthew Flatt 14:44 (part) RacketCommitBot 14:53 (quit) typeless: Quit: Konversation terminated! 14:53 (quit) extra_curricular: Quit: Konversation terminated! 14:53 (quit) server_failure: Quit: Konversation terminated! 14:53 (quit) winklet: Quit: Konversation terminated! 14:53 (quit) trink: Quit: Konversation terminated! 14:53 (quit) triffiddd: Quit: Konversation terminated! 14:53 (quit) broject_manager: Quit: Konversation terminated! 14:53 (join) CoverSlide 14:55 (join) typeless 14:57 (part) typeless 15:02 (join) tfb 15:17 (quit) Kaylin: Read error: Connection reset by peer 15:20 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 15:21 (join) Kaylin 15:23 (join) mizu_no_oto 15:31 (quit) tfb: Quit: sleeping 15:38 (join) bitonic 15:47 (join) tfb 15:48 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 15:57 (quit) jrslepak: Quit: What happened to Systems A through E? 16:00 (join) bitonic` 16:01 (quit) bitonic: Ping timeout: 264 seconds 16:02 (quit) hash_table: Ping timeout: 240 seconds 16:03 (nick) bitonic` -> bitonic 16:17 (join) mizu_no_oto 16:22 (quit) tfb: Quit: sleeping 16:23 (join) bitonic` 16:27 (join) Fare 16:31 (quit) bremner: Ping timeout: 244 seconds 16:35 (join) bremner 16:35 (quit) bremner: Changing host 16:35 (join) bremner 16:54 (join) hash_table 16:54 (join) jrslepak 17:09 (quit) Kaylin: Quit: Leaving. 17:14 (quit) MayDaniel: Read error: Connection reset by peer 17:49 asumu: I just saw this: http://mebdev.blogspot.com/2012/10/talk-in-dublin-adventures-in-functional.html 17:49 rudybot: http://tinyurl.com/8tklh6g 17:54 didi: It's interesting how "Machine Learning" is (had?) becoming a buzzword. 17:58 didi: Maybe it's the new version of 80's Expert Systems. 17:59 (quit) dzhus: Read error: Connection reset by peer 18:00 didi: Yay for Racket! 18:00 didi: Nice. 18:01 didi: Although the talk about Racket being a functional language is a little misleading. Racket is better. ;^) 18:01 friscosam: I'm a slow reader I'm still in the Data Wizard part 18:03 didi: friscosam: I confess that I skimmed thorough the article. 18:03 didi: through* 18:03 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 18:03 friscosam: I do big data at my job now, and I am figuring out how to get racket in here :) 18:04 didi: friscosam: Nice. The author is doing just that. 18:05 asumu: I think the guy posted job advertisements to Hacker News too. 18:05 asumu: Yeah, here we go: http://news.ycombinator.com/item?id=4596784 18:06 bremner: better than being a dis-functional language 18:07 didi: rudybot: rimshot 18:07 rudybot: didi: [rimshot] 18:07 (join) neilv 18:20 (quit) jeapostrophe: Read error: Operation timed out 18:21 (quit) bjz: Ping timeout: 248 seconds 18:25 (join) mizu_no_oto 18:39 (quit) jonrafkind: Ping timeout: 248 seconds 18:41 (join) dyoo 18:54 (quit) mizu_no_oto: Ping timeout: 246 seconds 18:57 (join) mizu_no_oto 19:02 (nick) bitonic` -> bitonic 19:22 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 19:24 (quit) jao: Remote host closed the connection 19:25 (join) mizu_no_oto 19:26 (join) jao 19:26 (quit) jao: Changing host 19:26 (join) jao 19:30 (quit) Fare: Quit: Leaving 19:32 (join) RacketCommitBot 19:32 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/LIg8Hg 19:32 RacketCommitBot: [racket/master] attempted to clean up the derivation support - Robby Findler 19:32 (part) RacketCommitBot 19:33 (join) gciolli 19:38 (quit) gciolli: Quit: Leaving. 19:49 (quit) carleastlund: Quit: carleastlund 19:54 (join) bitonic 19:54 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 19:58 (quit) bitonic: Remote host closed the connection 19:58 (join) dnolen 19:59 dyoo: gah… so many things breaking in 5.3.1 for whalesong… :( I have no idea why it's complaining about chaperones now... 20:06 ozzloy: is there a way to get bits from a byte without first converting to an integer? 20:07 ozzloy: currently i convert integer-bytes->integer, then use bitwise-bit-field integer a a+1 20:08 (join) bitonic 20:09 (quit) bitonic: Remote host closed the connection 20:09 (join) bitonic 20:15 (quit) masm: Quit: Leaving. 20:17 dyoo: isn't a byte already a number between 0 and 256? 20:18 ozzloy: ... so i could use bitwise-bit-field directly on a byte? 20:18 ozzloy checks 20:19 ozzloy: http://pastie.org/5106323 nope, repl didn't like it 20:23 dyoo: Hmmm… give me a sec 20:23 dyoo: (bitwise-bit-field (bytes-ref #"\1" 0) 0 1) maybe? 20:24 dyoo: Since #"\1" is a bytes, we want to get one byte out of it. bytes-ref should do it, I think 20:26 (join) jeapostrophe 20:26 (quit) jeapostrophe: Changing host 20:26 (join) jeapostrophe 20:26 dyoo: > (for/list ([byte (in-bytes #"hello world")]) byte) 20:26 dyoo: '(104 101 108 108 111 32 119 111 114 108 100) 20:27 ozzloy: dyoo, oh, awesome! thanks! 20:28 dyoo: no problem; best of wishes! 20:28 (join) Fare 20:28 ozzloy: is there a byte literal syntax? as opposed to a byte list 20:28 ozzloy: oh eait 20:28 ozzloy: wait 20:28 ozzloy: just an integer 20:28 ozzloy: right? 20:28 dyoo: Since a byte is a number between 0 and 256, just use the literal. :) 20:29 dyoo: yeah 20:29 ozzloy: lolz, ok thanks 20:29 dyoo: so, for example: 20:29 ozzloy: hey, i've read some of your work 20:29 dyoo: (bytes 104 101 108 108 111 …) will make the byte string #"hello" 20:29 ozzloy: fudging up a racket 20:29 ozzloy: i read some of that 20:29 dyoo: Did you like it? 20:30 ozzloy: and it's motivating to learn more about macros 20:30 ozzloy: yes, i liked what i understood so far 20:30 ozzloy: thanks for the help! 20:30 dyoo: Cool. I just wrote up something new at http://hashcollision.org/three-n-plus-one; let me know if it also helps 20:31 ozzloy: i shall! 20:31 (join) mizu_no_oto 20:32 (quit) dyoo: Quit: dyoo 20:48 (join) masm 20:53 (quit) masm: Quit: Leaving. 21:00 (quit) dnolen: Quit: ERC Version 5.3 (IRC client for Emacs) 21:00 neilv: i think the "command-line" form is one of the hardest to remember how to use 21:04 (join) scott_ 21:07 (quit) jeapostrophe: Ping timeout: 255 seconds 21:18 (quit) nathanpc: Remote host closed the connection 21:21 (join) bjz 21:24 (quit) mizu_no_oto: Quit: Computer has gone to sleep. 21:31 (quit) bitonic: Remote host closed the connection 22:10 (join) Kaylin 22:32 (quit) didi: Remote host closed the connection 22:34 (join) didi 22:51 neilv: hm. now that 5.3 has submodules, "raco-commands" not use the "main" submodule? 23:01 (join) jeapostrophe 23:01 (quit) jeapostrophe: Changing host 23:01 (join) jeapostrophe 23:10 (nick) Fare -> Godzilla 23:11 (quit) bjz: Quit: Leaving... 23:21 (join) jonrafkind 23:27 (join) mithos28 23:41 (quit) sizz: Quit: No Ping reply in 180 seconds. 23:41 (join) sizz 23:49 (quit) CoverSlide: Ping timeout: 245 seconds 23:56 (join) Fare