00:10 (quit) jeapostrophe: Ping timeout: 245 seconds 00:13 (quit) dsantiago: Quit: Leaving... 00:13 (quit) realitygrill: Ping timeout: 244 seconds 00:16 (join) dsantiago 00:18 (join) realitygrill 00:28 (quit) EmmanuelOga: Ping timeout: 244 seconds 00:33 (join) RacketCommitBot 00:33 RacketCommitBot: [racket] plt pushed 2 new commits to master: http://git.io/hbUIGw 00:33 RacketCommitBot: [racket/master] Big newline at EOF scan. - Eli Barzilay 00:33 RacketCommitBot: [racket/master] Mailmap mapping for dvanhorn. - Eli Barzilay 00:33 (part) RacketCommitBot 00:44 (nick) LeNsTR|off -> LeNsTR 00:56 (quit) yin: Quit: Leaving 01:01 (nick) LeNsTR -> LeNsTR|off 01:07 (join) eli 01:18 (quit) jonrafkind: Ping timeout: 252 seconds 01:29 (nick) LeNsTR|off -> LeNsTR 01:52 (join) yin 01:59 (quit) djcb: Remote host closed the connection 02:00 (join) noam 02:22 (nick) LeNsTR -> LeNsTR|off 02:26 (quit) yin: Quit: Leaving 02:39 (join) djcb 02:53 (join) hkBst 02:54 (join) dzhus 03:00 (nick) LeNsTR|off -> LeNsTR 03:01 (nick) LeNsTR -> LeNsTR|off 03:06 (join) bas_ 03:06 (nick) bas_ -> Skola_ 03:39 (quit) noam: Read error: Connection reset by peer 03:39 (join) noam 03:40 (join) bluezenix 03:49 (quit) mithos28: Quit: mithos28 04:10 (quit) dme: Ping timeout: 272 seconds 04:17 (quit) djcb: Ping timeout: 246 seconds 04:23 (quit) Kaylin: Ping timeout: 252 seconds 04:27 (join) mceier 05:03 (join) Kaylin 05:06 (join) Kaylin1 05:07 (quit) noam: Read error: Connection reset by peer 05:07 (join) noam 05:09 (join) dme 05:09 Kaylin1: hmm, am I allowed to do this or will they be cruel and murder my connection 05:09 (join) mithos28 05:13 Kaylin hopes so./ 05:23 (nick) LeNsTR|off -> LeNsTR 05:29 (quit) noam: Ping timeout: 240 seconds 05:31 (join) noam 05:37 (quit) mithos28: Quit: mithos28 05:40 (quit) Kaylin: Read error: Connection reset by peer 05:40 (nick) Kaylin1 -> Kaylin 05:43 (quit) noam: Ping timeout: 265 seconds 05:44 (quit) realitygrill: Quit: realitygrill 05:47 (join) noam 05:49 (quit) hkBst: Ping timeout: 276 seconds 05:50 (join) hkBst 06:01 (nick) LeNsTR -> LeNsTR|off 06:10 (quit) dzhus: Remote host closed the connection 06:19 (quit) Kaylin: Quit: Leaving. 06:25 (quit) noam: Read error: Connection reset by peer 06:25 (join) Blkt 06:26 (join) noam 06:43 (quit) bluezenix: Quit: Leaving. 06:54 (join) masm 07:01 (quit) hkBst: Read error: Connection reset by peer 07:06 (join) hkBst 07:18 (quit) hkBst: Read error: Connection reset by peer 07:21 (join) vkz 07:23 (join) bluezenix 07:23 (quit) bluezenix: Read error: Connection reset by peer 07:26 (join) bluezenix 07:28 (join) hkBst_ 07:32 (quit) hkBst_: Ping timeout: 245 seconds 07:40 (quit) vkz: Ping timeout: 244 seconds 07:42 (quit) noam: Read error: Connection reset by peer 07:42 (join) noam 07:43 (join) hkBst_ 07:47 (quit) hkBst_: Read error: Connection reset by peer 07:58 (join) jeapostrophe 08:03 (join) hkBst 08:03 (quit) hkBst: Changing host 08:03 (join) hkBst 08:05 (join) EmmanuelOga 08:14 (join) RacketCommitBot 08:14 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/0UCKMA 08:14 RacketCommitBot: [racket/master] move the redex scrbl files into a scribblings subcollection and adjust timeouts - Robby Findler 08:14 (part) RacketCommitBot 08:25 (nick) LeNsTR|off -> LeNsTR 08:33 (nick) LeNsTR -> LeNsTR|off 08:59 (quit) noelw: Quit: noelw 09:14 (quit) Skola_: Quit: Lost terminal 09:20 (join) djcb 09:36 (quit) dme: Ping timeout: 246 seconds 09:57 (quit) Skola: Quit: Lost terminal 10:05 (quit) djcb: Remote host closed the connection 10:15 (join) asdfhjkl 10:15 (quit) LeNsTR|off: Quit: ZNC - http://znc.sourceforge.net 10:25 (join) dme 10:28 (quit) noam: Ping timeout: 240 seconds 10:28 (quit) mceier: Quit: leaving 10:29 (join) fapDaddy 10:30 (part) fapDaddy 10:30 (nick) samth_away -> samth 10:32 (join) failNub 10:35 (quit) cdidd: Ping timeout: 260 seconds 10:44 (join) dzhus 10:48 (join) stamourv 10:57 (quit) failNub: Quit: WeeChat 0.3.7 10:59 (quit) jeapostrophe: Read error: Operation timed out 11:00 (join) djcb 11:03 (quit) jrslepak: Quit: This computer has gone to sleep 11:08 (quit) Shviller: Ping timeout: 252 seconds 11:09 (join) Shviller 11:20 (quit) hkBst: Quit: Konversation terminated! 11:25 (join) noam 11:37 (quit) bluezenix: Quit: Leaving. 11:37 (join) realitygrill 11:47 (join) anRch 12:02 (join) RacketCommitBot 12:02 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/u0RcMA 12:02 RacketCommitBot: [racket/master] Sort paths before fuzzing, to make drdr runs reproducible. - Sam Tobin-Hochstadt 12:02 (part) RacketCommitBot 12:02 samth: randomness is hard 12:04 (join) jeapostrophe 12:04 (quit) anRch: Quit: anRch 12:06 (join) MayDaniel 12:09 (join) Skola 12:14 (join) jonrafkind 12:19 (join) anRch 12:20 (join) bmp 12:26 (join) Sicp 12:26 (quit) Sicp: Changing host 12:26 (join) Sicp 12:31 (join) mithos28 12:33 (join) dnolen 12:47 (quit) Sicp: Remote host closed the connection 12:47 (quit) Blkt: Read error: Connection reset by peer 12:48 (quit) anRch: Quit: anRch 12:49 (join) Sicp 12:49 (quit) Sicp: Changing host 12:49 (join) Sicp 12:55 (join) chromaticwt 12:58 (part) Sicp: "Leaving" 12:59 (quit) EmmanuelOga: Read error: Connection reset by peer 13:05 chromaticwt: xb 13:05 (join) vkz 13:12 (quit) vkz: Quit: vkz 13:27 (join) yin 13:27 yin: weird question... how do I convert char to string? There is no function called char->string 13:30 samth: yin: with `string' 13:30 samth: rudybot: (string #\a) 13:30 rudybot: samth: ; Value: "a" 13:30 samth: yin: like that 13:30 yin: It works. thank you Sam! 13:38 (join) GeneralMaximus 13:38 (quit) Skola: Quit: Lost terminal 13:45 (quit) dzhus: Remote host closed the connection 13:47 (join) dzhus 13:48 (join) wlsn 14:03 (quit) yin: Quit: Leaving 14:23 PfhorSlayer: I have a list that when I do (printf "~a" the-list) it prints "(('other 2) ('test 0))". I also have a function: (define (get-val name) (assoc name the-list)). Why is it that when I call (get-val 'other) it returns #f? 14:24 chandler: PfhorSlayer: Remember that 'other is shorthand for (quote other). 14:24 chandler: rudybot: eval (printf "~a" '((other 2) (test 0))) 14:24 rudybot: chandler: your sandbox is ready 14:24 rudybot: chandler: ; stdout: "((other 2) (test 0))" 14:24 chandler: rudybot: eval (printf "~a" '(((quote other) 2) ((quote test) 0))) 14:24 rudybot: chandler: ; stdout: "(((quote other) 2) ((quote test) 0))" 14:25 PfhorSlayer: Oh, so that means that the car of those elements in that list is actually (quote test) etc? 14:25 chandler: Yes. 14:25 PfhorSlayer: rudybot: eval (eq? (quote test) (quote test)) 14:25 rudybot: PfhorSlayer: your sandbox is ready 14:25 rudybot: PfhorSlayer: ; Value: #t 14:25 chandler: Not quite sure why rudybot isn't printing it that way. 14:25 PfhorSlayer: but I'm still comparing the same thing though, right? 14:26 PfhorSlayer: rudybot: eval (assoc (quote test) (list (list (quote test) 0))) 14:26 rudybot: PfhorSlayer: ; Value: (test 0) 14:26 PfhorSlayer: rudybot: eval (assoc 'test (list (list (quote test) 0))) 14:26 rudybot: PfhorSlayer: ; Value: (test 0) 14:27 PfhorSlayer: rudybot: eval (assoc 'test (list (list 'test 0))) 14:27 rudybot: PfhorSlayer: ; Value: (test 0) 14:27 PfhorSlayer: I don't understand why it's not working then? 14:28 asumu: PfhorSlayer: It's probably getting quoted twice 14:28 asumu: rudybot: (quote 'other) 14:28 rudybot: asumu: your sandbox is ready 14:28 rudybot: asumu: ; Value: (quote other) 14:28 chandler: rudybot: eval (equal? (list (list 'test 0)) (list (list ''test 0))) 14:28 rudybot: chandler: ; Value: #f 14:29 asumu: Hmm. 14:29 PfhorSlayer: But when I print the list it's not showing it being quoted twice? 14:29 chandler: PfhorSlayer: (list 'test) builds a list of one element, which is the symbol test. (list ''test) builds a list of one element, which is a list of the symbols quote and test. The latter is the kind of thing you have. 14:29 chandler: When you see 'foo, always read that as (quote foo). 14:31 PfhorSlayer: right, but what it's printing out is that the list is ( (list (quote other) 2) (list (quote test) 0) ) 14:31 chandler: No, not at all. 14:32 PfhorSlayer: What am I missing then? 14:32 chandler: The list that it printed it is one that's equal? to the one returned by (list (list (quote (quote other)) 2) (list (quote (quote test)) 0)) . 14:33 chandler: What version of Racket are you using? 14:33 PfhorSlayer: 5.2.1 14:34 (quit) MayDaniel: Read error: Connection reset by peer 14:34 chandler: Oh, this prints differently in DrRacket than at the regular Racket REPL. 14:35 chandler: rudybot: eval (print-reader-abbreviations #t) 14:35 rudybot: chandler: Done. 14:35 chandler: rudybot: eval (printf "~a" (list (list (quote (quote other)) 2) (list (quote (quote test)) 0))) 14:35 rudybot: chandler: ; stdout: "(((quote other) 2) ((quote test) 0))" 14:35 chandler: Grr. 14:38 chandler: PfhorSlayer: Try evaluating the expression I just asked rudybot to evaluate in your DrRacket REPL. 14:38 (part) snorble_ 14:39 PfhorSlayer: I just rewrote the function as a macro expansion 14:40 PfhorSlayer: and it worked when I wrote the value I was testing as 'test-val 14:40 PfhorSlayer: chandler: (('other 2) ('test 0)) 14:40 chandler: Right. See how the ' there indicates that I wrote (quote (quote other)) and not (quote other) ? 14:41 PfhorSlayer: So is it safe to always assume that if I see " 'something " that should be read as (quote (quote something)) ? 14:42 PfhorSlayer: and if I just see "something" it is (quote something)? 14:42 chandler: Hm, not quote. It should be read as (quote something), which is the result of evaluating (quote (quote something)). 14:42 chandler: Heh. I meant "not quite" there. 14:42 PfhorSlayer: OH! 14:42 (join) snorble_ 14:43 PfhorSlayer: I think I see, since you're passing the quote expression a symbol that you don't want evaluated 14:44 (quit) GeneralMaximus: Quit: Leaving 14:45 (join) vkz 14:59 (quit) wlsn: Read error: Connection reset by peer 14:59 (quit) vkz: Ping timeout: 252 seconds 14:59 (join) vkz 15:00 (join) Kaylin 15:00 (join) wlsn 15:05 (quit) Kaylin: Quit: Leaving. 15:08 PfhorSlayer: is there a way to do something like map over multiple lists (that are the same length) at once? 15:09 samth: PfhorSlayer: like this 15:09 PfhorSlayer: and then run the lambda for the corresponding elements of all the lists at each index 15:09 samth: rudybot: (map + (list 1 2 3) (list 4 5 6)) 15:09 rudybot: samth: your sandbox is ready 15:09 rudybot: samth: ; Value: (5 7 9) 15:09 samth: PfhorSlayer: whee 15:09 (join) Skola 15:10 PfhorSlayer: oh, duh! I missed the "..." in the documentation for map 15:10 PfhorSlayer: awesome, thanks 15:10 PfhorSlayer: and the example, apparently. 15:21 (quit) dme: Ping timeout: 260 seconds 15:23 (join) bluezenix 15:43 (quit) bluezenix: Quit: Leaving. 15:47 (join) MayDaniel 15:48 (quit) karswell: Ping timeout: 246 seconds 15:48 (join) anRch 15:51 (join) karswell 15:52 (quit) karswell: Client Quit 15:52 (join) karswell 16:02 (part) snorble_ 16:05 (join) snorble_ 16:06 (join) yin 16:20 (quit) Enoria: Read error: Connection timed out 16:21 (join) Enoria 16:45 (quit) dnolen: Quit: Page closed 16:46 (quit) vkz: Ping timeout: 276 seconds 16:46 (join) vkz 16:57 (join) yoklov 16:58 (join) cdidd 16:58 (quit) anRch: Quit: anRch 17:04 (join) dnolen 17:05 (quit) Skola: Quit: Lost terminal 17:18 (quit) jonrafkind: Ping timeout: 240 seconds 17:24 (quit) Demosthenes: Quit: leaving 17:25 (join) Demosthenes 17:30 (quit) asdfhjkl: Quit: Leaving 17:32 (join) spdegabrielle 17:40 (join) bluezenix 17:41 (quit) spdegabrielle: Quit: Colloquy for iPhone - http://colloquy.mobi 17:45 (quit) yoklov: Quit: computer sleeping 17:46 (quit) chromaticwt: Quit: ERC Version 5.3 (IRC client for Emacs) 17:50 (join) yoklov 17:51 (quit) MayDaniel: Read error: Connection reset by peer 17:58 (quit) yin: Quit: Leaving 18:03 (part) bmp 18:05 (join) jonrafkind 18:07 (join) chromaticwt 18:07 chromaticwt: how do I undefine? 18:08 asumu: chromaticwt: I don't think Racket lets you. Why do you want to do that? 18:08 chromaticwt: It's just nice. 18:08 chromaticwt: guile let's me. 18:08 asumu: I don't see what you mean by "it's just nice". 18:09 asumu: If you re-define a variable (in the REPL) it overwrites it, so I don't really see the need to undefine something. 18:09 asumu: (and in modules I don't see the need at all) 18:11 chromaticwt: yes 18:13 chromaticwt: let's say I have helper procedures defined and I decide to do nest the helper procedures within their parent. it's nice to delete the hanging helper procedures. I'm weird too. 18:13 chromaticwt: I'm just tinkering around. 18:15 (quit) jeapostrophe: Ping timeout: 260 seconds 18:21 PfhorSlayer: are there any good intro documents for the new syntax patterns stuff? 18:22 jonrafkind: not really.. just the syntax/parse docs 18:22 samth: PfhorSlayer: check out: http://docs.racket-lang.org/syntax/stxparse-intro.html 18:22 samth: it has a nice introduction 18:24 PfhorSlayer: Cool, thanks. 18:24 PfhorSlayer: I'm most interested in the features that would make it easy to write syntaxes that let you specify named parameters in any order 18:25 PfhorSlayer: since we do a lot of that stuff and the combinatorial explosion when the number of parameters gets larger than like two gets pretty ridiculous 18:25 samth: PfhorSlayer: see http://docs.racket-lang.org/syntax/Optional_Keyword_Arguments.html and http://docs.racket-lang.org/syntax/More_Keyword_Arguments.html 18:27 (quit) vkz: Ping timeout: 260 seconds 18:27 PfhorSlayer: Thank you! 18:29 asumu: chromaticwt: I'm not sure I understand. Do you mean you want to undefine a name so you can re-use it in a nested scope? 18:30 (quit) wlsn: Quit: Leaving 18:36 (join) wlsn 18:41 (quit) dnolen: Quit: Page closed 18:46 (join) Kaylin 18:47 chromaticwt: asumu: sort of, yeah 18:47 chromaticwt: not that it's really necessary. 18:48 chromaticwt: but it's nice to not have dangling useless functions floating around, I guess. 18:48 chromaticwt: it's ok, I can live without undefine. I was just wondering if I could do it. 18:49 chromaticwt: I don't want to flood the channel anymore with this odd question. :) 18:49 (join) noam__ 18:52 (quit) noam: Ping timeout: 272 seconds 18:58 (quit) bluezenix: Quit: Leaving. 19:09 (quit) dzhus: Remote host closed the connection 19:13 PfhorSlayer: In a (define-syntax (foo stx) (syntax-case stx () ( (_ init0 ...) stuff-goes-here ) )) expression, how can I raise a syntax error that refers to the location of the expression itself? I want to raise an error if (foo) is called in certain contexts, but I'm not sure how to get the error reporting to show the location where the user tried to call "(foo)" 19:15 samth: (raise-syntax-error #f "message here" stx) 19:15 samth: PfhorSlayer: ^ 19:20 (join) jao 19:24 PfhorSlayer: I tried that, it said that stx is being used out of context 19:24 PfhorSlayer: Wait, I didn't try it with #f as the function name param 19:24 (quit) jao: Remote host closed the connection 19:25 PfhorSlayer: Nope, same issue 19:25 PfhorSlayer: "identifier used out of context in: stx" 19:25 samth: oh, you're putting that in the code you expand to 19:25 samth: you want to just run the `raise--syntax-error' function 19:26 PfhorSlayer: Oh, or I'd have to put it outside of the #'(expanded-stuff-here) expression? 19:26 samth: yes 19:28 PfhorSlayer: hrmph, but in that context the top-level variable I'm reading to see if the function should be allowed doesn't exist 19:29 PfhorSlayer: oh, wait 19:29 PfhorSlayer: I should put it in the fender, right? 19:30 samth: PfhorSlayer: no, the fender is for determining if this clause should even match 19:30 samth: otherwise, it will go to the next clause 19:31 PfhorSlayer: Oh, gotcha 19:31 PfhorSlayer: How can I get to a context where the top-level stuff from the rest of the file exists, then? 19:31 samth: what sort of top-level stuff? 19:32 PfhorSlayer: Above this whole define-syntax, I've got a (define foo -1) 19:32 (quit) chromaticwt: Quit: ERC Version 5.3 (IRC client for Emacs) 19:32 samth: you probably need to make that define-for-syntax 19:32 PfhorSlayer: If foo is less than 0, the define-syntax should not be allowed 19:33 PfhorSlayer: ah, define-for-syntax binds at phase level 1 19:33 PfhorSlayer: which is the same phase that the macro expansion is happening at, right? 19:33 samth: yes 19:41 (join) EmmanuelOga 19:42 (quit) _p4bl0: Read error: Operation timed out 19:43 (join) _p4bl0 19:43 PfhorSlayer: Okay, that almost works 19:47 PfhorSlayer: The problem now is that I have multiple macros. I'm doing a (define-for-syntax context-valid #f) at the top level, the in the outermost macro I do a (begin (set! context-valid #t) (let ((the-syntax #'(macro stuffs))) (set! context-valid #f) the-syntax)), and in #'(macro stuffs) is where the macro that checks the context-valid variable is located. It appears that the variable is always #f there. 19:47 PfhorSlayer: If I take out the resetting of context-valid to #f, it runs just fine 19:47 PfhorSlayer: ... because it's not actually evaluating the expanded macro until after it's fully expanded 19:47 PfhorSlayer: No, that should still be fine 19:47 (quit) Enoria: Ping timeout: 245 seconds 19:48 (join) _p4bl0` 19:48 samth: mutation at syntax time is a tricky issue 19:49 (quit) _p4bl0: Remote host closed the connection 19:49 PfhorSlayer: Wait, I think I see why it's doing it... In the let's body, I set context-valid to #f before the last expression which is the-syntax 19:50 PfhorSlayer: So maybe it's not actually evaluating it until the point where I use "the-syntax"? 19:51 samth: is it inside the macro/ 19:51 samth: ? 19:52 PfhorSlayer: is what inside the macro? 19:52 samth: what you are asking about? 19:52 samth: the body of the macro is not evaluated until you use the macro 19:53 PfhorSlayer: Right. So in the macro I'm doing a let that binds a syntax (the expansion of which checks the "context-valid" condition) to "the-syntax" 19:54 PfhorSlayer: before the let, I set context-valid to #t, and in the let's body I set context-valid to #f before returning "the-syntax" 19:54 PfhorSlayer: I'm expecting that during the evaluation of the fully expanded macro, context-valid is #t 19:55 PfhorSlayer: but it appears that it's evaluting the (set! context-valid #f) line before it evaluates "the-syntax" 19:55 samth: if 'the-syntax' is what you are producing, then that's probably right 19:55 samth: but this is hard for me to follow from your description 19:56 PfhorSlayer: I'm sorry, I can write up a little example case if that'd help 19:56 samth: it's not your fault -- this stuff is complicated 19:56 samth: an example would help 19:56 PfhorSlayer: the end result is that I want to have a macro that can only be used inside of another macro 19:57 PfhorSlayer: it is a syntax error to use it in any other context 19:59 (join) mimcpher 20:01 PfhorSlayer: Heh, I just wrote the example case and it works 20:02 PfhorSlayer: I must have messed something up in my real case :) 20:02 PfhorSlayer: https://gist.github.com/1946356 20:03 (join) jao 20:12 (quit) yoklov: Quit: computer sleeping 20:14 (join) chromaticwt 20:15 (join) yoklov 20:18 (quit) yoklov: Client Quit 20:21 (join) chromaticwt0 20:29 chromaticwt: xb 20:29 (join) yoklov 20:31 (join) realitygrill_ 20:31 (quit) jonrafkind: Ping timeout: 245 seconds 20:34 (quit) realitygrill: Ping timeout: 276 seconds 20:34 (nick) realitygrill_ -> realitygrill 20:41 (quit) wlsn: Quit: Leaving 20:41 (nick) samth -> samth_away 20:42 (quit) jao: Read error: Connection reset by peer 20:55 (join) Lajla 20:55 (quit) Lajla: Read error: Connection reset by peer 20:57 (join) Lajla 20:58 (join) jao 21:00 (quit) Lajla: Client Quit 21:05 (quit) acarrico: Ping timeout: 252 seconds 21:07 (join) iisjmii 21:08 iisjmii: Can anybody spot a problem with this line? (define stop (get-ffi-obj "stop" driver (_fun -> _void))) 21:08 iisjmii: 21:08 iisjmii: I'm loosing sleep over it :) it gives me the error: access disallowed by code inspector to protected variable from module 21:10 offby1 looses an arrow 21:13 chandler: iisjmii: does it say what identifier it is? 21:13 chandler: I think that's a sandbox error 21:22 (quit) jao: Ping timeout: 245 seconds 21:25 (join) jrslepak 21:25 (join) acarrico 21:31 (quit) masm: Quit: Leaving. 21:32 (join) jao 21:41 (join) vkz 22:27 (join) Enoria 22:28 (join) RacketCommitBot 22:28 RacketCommitBot: [racket] plt pushed 2 new commits to master: http://git.io/gmSgJg 22:28 RacketCommitBot: [racket/master] fix error message - Matthew Flatt 22:28 RacketCommitBot: [racket/master] fix problems with place termination - Matthew Flatt 22:28 (part) RacketCommitBot 22:33 (join) jeapostrophe 22:40 (quit) vkz: Quit: vkz 22:53 (join) neilv 22:56 (join) jonrafkind 23:05 (quit) yoklov: Quit: computer sleeping 23:10 (quit) noam__: Ping timeout: 244 seconds 23:15 (quit) jeapostrophe: Read error: Operation timed out 23:17 (quit) acarrico: Ping timeout: 265 seconds 23:18 (join) acarrico 23:39 (join) vkz 23:44 (join) yoklov 23:56 (quit) yoklov: Quit: bye!