00:06 (join) maahes 00:10 (quit) duomo: Quit: Linkinus - http://linkinus.com 00:12 neilv: for this program that needs a bunch of "case" forms scattered throughout, because behavior is conditioned on a symbol, and i need to implement the behavior for each symbol in each "case"... 00:12 neilv: i made a macro that enforces that i have each symbol in a clause or have an "else" clause... and it's kinda neat having online check syntax enforce that as you type 00:40 (quit) Kaylin: Quit: Leaving. 00:43 (quit) VincentK: Ping timeout: 245 seconds 00:47 (join) nilyaK 00:49 (quit) jeapostrophe: Ping timeout: 248 seconds 01:04 (join) rbarraud_ 01:05 (quit) rbarraud: Ping timeout: 272 seconds 01:29 (join) veer 01:49 (quit) hash_table: Ping timeout: 245 seconds 01:49 (quit) getpwnam: Ping timeout: 245 seconds 02:02 (quit) stchang: Read error: Operation timed out 02:05 (join) stchang 02:10 (quit) nilyaK: Quit: Leaving. 02:13 (join) jesyspa 02:28 (join) jonrafkind 02:29 (quit) dented42: Quit: Computer has gone to sleep. 03:12 (join) mceier 03:13 (quit) jonrafkind: Ping timeout: 245 seconds 03:14 (join) doomrobo 03:20 (quit) neilv: Quit: Leaving 03:33 (quit) doomrobo: Quit: Bye 03:33 (quit) veer: Read error: Connection reset by peer 03:35 (quit) mithos28: Quit: mithos28 04:23 (quit) noam: Read error: Connection reset by peer 04:23 (join) noam 04:24 (quit) noam: Read error: Connection reset by peer 04:24 (join) noam 04:28 (quit) noam: Read error: Connection reset by peer 04:29 (join) noam 04:30 (quit) noam: Read error: Connection reset by peer 04:30 (join) noam_ 04:30 (quit) noam_: Read error: Connection reset by peer 04:31 (join) noam_ 04:33 (quit) noam_: Read error: Connection reset by peer 04:33 (join) noam_ 04:38 (join) antithesis 04:40 (quit) noam_: Read error: Connection reset by peer 04:40 (join) noam_ 04:42 (quit) noam_: Read error: Connection reset by peer 04:43 (join) noam_ 04:43 (quit) noam_: Read error: Connection reset by peer 04:44 (join) noam_ 04:44 (join) RacketCommitBot 04:44 RacketCommitBot: [racket] plt pushed 2 new commits to master: http://git.io/OzX64g 04:44 RacketCommitBot: [racket/master] Extend `add-between'. - Eli Barzilay 04:44 RacketCommitBot: [racket/master] Extend `string-join' in a similar way to `add-between'. - Eli Barzilay 04:44 (part) RacketCommitBot 04:49 (quit) noam_: Read error: Connection reset by peer 04:50 (join) noam_ 05:00 (quit) noam_: Read error: Connection reset by peer 05:00 (join) noam_ 05:07 (quit) noam_: Read error: Connection reset by peer 05:07 (join) noam_ 05:10 (quit) noam_: Read error: Connection reset by peer 05:10 (join) noam_ 05:25 (quit) noam_: Read error: Connection reset by peer 05:26 (join) noam 05:38 (join) SrPx 05:39 SrPx: I'm kind of lost on Racket's docs. 05:39 SrPx: What is a good introduction to it? 05:39 SrPx: an explanation on the #lang stuff and a list of functions would to it. really, nothing more 05:42 (join) RacketCommitBot 05:42 RacketCommitBot: [racket] plt pushed 8 new commits to master: http://git.io/aoh5iA 05:42 RacketCommitBot: [racket/master] teaching languages: fix copying of `test~object' binding to REPL - Matthew Flatt 05:42 RacketCommitBot: [racket/master] fix `impersonate-struct' docs - Matthew Flatt 05:42 RacketCommitBot: [racket/master] avoid a hard-coded limit - Matthew Flatt 05:42 (part) RacketCommitBot 06:11 (quit) noam: Read error: Connection reset by peer 06:11 (join) noam 06:12 (quit) noam: Read error: Connection reset by peer 06:12 (join) noam 06:13 (quit) noam: Read error: Connection reset by peer 06:13 (join) noam 06:16 (join) bitonic 06:19 (join) snearch 06:26 bremner: SrPx: did you look at the Guide? 06:31 (join) RacketCommitBot 06:31 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/X-JzAw 06:31 RacketCommitBot: [racket/master] racket/gui, win32: fix problem with mimize for fixed-size window - Matthew Flatt 06:31 (part) RacketCommitBot 06:37 (join) sid0 06:37 sid0: hm, I can't figure out how to write a contract for a function that accepts no non-keyword arguments but arbitrary keyword arguments 06:39 (quit) mceier: Quit: leaving 06:41 (join) mceier 06:42 (join) Shvillr_ 06:42 (quit) Shviller: Disconnected by services 06:42 (nick) Shvillr_ -> Shviller 06:51 (quit) noam: Read error: Connection reset by peer 06:51 (join) noam 06:56 (join) veer 07:02 (quit) veer: Read error: Connection reset by peer 07:08 (join) noam_ 07:08 (quit) noam: Read error: Connection reset by peer 07:21 (quit) noam_: Read error: Connection reset by peer 07:22 (join) noam_ 07:24 (quit) noam_: Read error: Connection reset by peer 07:25 (join) noam_ 07:49 (quit) noam_: Ping timeout: 246 seconds 07:53 (join) noam 07:55 (quit) jrslepak: Quit: This computer has gone to sleep 07:57 (join) jeapostrophe 07:57 (quit) jeapostrophe: Changing host 07:57 (join) jeapostrophe 08:00 (quit) noam: Read error: Connection reset by peer 08:00 (join) noam 08:16 (quit) noam: Ping timeout: 255 seconds 08:22 (join) RacketCommitBot 08:22 RacketCommitBot: [racket] plt pushed 4 new commits to master: http://git.io/EH7zDg 08:22 RacketCommitBot: [racket/master] error-message repair - Matthew Flatt 08:22 RacketCommitBot: [racket/master] fix some error-message tests - Matthew Flatt 08:22 RacketCommitBot: [racket/master] fix too-strict bytecode check - Matthew Flatt 08:22 (part) RacketCommitBot 08:32 (join) noam 08:34 (join) anRch 08:35 (quit) noam: Read error: Connection reset by peer 08:51 (join) noam 09:13 (quit) noam: Ping timeout: 245 seconds 09:24 (join) noam 09:42 (quit) noam: Ping timeout: 264 seconds 09:51 (quit) snearch: Quit: Verlassend 09:54 (join) jeremyheiler 10:04 (quit) anRch: Quit: anRch 10:11 (join) noam 10:21 (quit) jeremyheiler: Quit: Computer has gone to sleep. 10:36 (join) getpwnam 10:37 (join) hash_table 10:42 (join) wahjava 10:55 (join) jacius 11:28 (join) Kaylin 11:34 (quit) ssbr_: Ping timeout: 255 seconds 11:35 (join) ssbr_ 11:46 (join) gciolli 12:04 (join) doomrobo 12:07 (nick) doomrobo -> Guest65549 12:19 (join) doomrobo 12:19 (quit) gciolli: Quit: Leaving. 12:20 doomrobo: Hi, there. I had this question yesterday but nobody was able to help. How would you define the type of a function that takes a single argument that is a homogeneous list of any type and returns an Integer? 12:20 bremner: in typed racket 12:20 bremner: ? 12:20 doomrobo: yes 12:20 bremner: something like (: (All (A) (Listof A) -> Integer)) ? 12:21 doomrobo: bremner that works for (list 1 2 "hi") 12:21 bremner: that's surprising 12:22 doomrobo: bremner that is the type of list-length 12:23 doomrobo: for good reason 12:23 doomrobo: but I haven't found anything that only accepts a list of a single type 12:23 bremner: maybe union types make (Union Integer "hi") a type 12:24 doomrobo: what? 12:24 bremner: type your list into the TR repl 12:25 bremner: (Listof (U Positive-Byte String)) 12:25 doomrobo: exactly 12:25 bremner: so, that's a single type ;) 12:26 doomrobo: I mean without the union 12:26 doomrobo: as in it should fail for that but succeed for (list 1 2 3) and (list "h" "e "l") 12:27 bremner: yeah, I don't know how to express that, sorry. 12:27 doomrobo: that's fine 12:28 asumu: doomrobo: the type that bremner describes is what you're asking for. 12:28 asumu: You can't write a type that means "not a union type" in TR. 12:29 asumu: (that is, you can't write a type parameter that means "anything but not a union type") 12:30 bremner: maybe (U (Listof Integer) (Listof String)) -> Integer is good enough? 12:30 doomrobo: wait, so was it or was it not what I asked for. It does not fail on (list 1 2 "he"). so it's absolutely impossible? 12:30 jamessan: why doesn't (Listof A) express that? shouldn't (list 1 2 "foo") not match (Listof A)? 12:31 doomrobo: the point is that it should work for all homogeneous lists 12:31 (join) dented42 12:31 bremner: jamessan: because union types 12:31 jamessan: ah 12:33 asumu: doomrobo: bremner answered what you asked, but not what you meant. What you meant was "a homogeneous list of non-union type". 12:33 asumu: Which I'm pretty sure it not possible to express. 12:34 asumu: After all, "Number" is a union type. 12:34 doomrobo: oh, ok 12:34 weirdo: asumu, remember the geiser bug? could you please tell me how to reduce the test-case in nightly? 12:34 weirdo: geiser debugger doesn't give me values in stack trace, hence the question 12:35 asumu: weirdo: something about R5RS? 12:36 weirdo: yes 12:36 weirdo: anyway, what is proc-id.1, some internal hairy thingie? 12:36 asumu: I don't remember the details. The simplest solution seems to be to not use the R5RS language. 12:36 asumu: proc-id.1 is probably some renamed identifier. 12:36 asumu: (renamed by the macro system) 12:37 weirdo: r5rs is obsolete? 12:37 bremner: depends who you ask 12:37 weirdo: :) 12:40 asumu: It's obsolete in the sense that Racket programmers rarely use it. 12:40 (quit) jeapostrophe: Ping timeout: 244 seconds 12:40 asumu: And so its support is not very good. 12:40 asumu: Anyway, what was the actual bug? 12:42 asumu: (it's also obsolete in the sense that it's hard to write much of anything with just R5RS) 12:42 weirdo: asumu, says identifier/constant proc-id.1 is getting redefined 12:43 asumu: Can you give an example code snippet where that happens? 12:43 weirdo: asumu, #lang r5rsNEWLINE(define (foo x) x) 12:43 weirdo: asumu, but it's only with geiser 12:44 (join) mithos28 12:45 bremner: weirdo: I don't see that message. What are you doing with geiser when you get it? 12:45 weirdo: bremner, ,enter 12:46 weirdo: specifically, ,enter module/filename where is #lang r5rs 12:46 bremner: yup, that's what I did. The repl was already running, let me restart it. 12:47 bremner: nope still no message. This is racket 5.2.1 12:47 weirdo: bremner, 5.2.1 works, it's nightly 12:47 weirdo: using 5.2.1 ATM 12:47 bremner: oh, sorry. 12:55 asumu: I am going to guess it's a bug in geiser because enter! and load work fine in the latest Racket. 12:56 asumu: But I'm not sure. I rarely use geiser. 12:56 asumu: Is there any reason for you to use the nightly build anyway? 12:57 asumu: If you're using the R5RS language, there will be no difference really. 12:57 asumu: (and jao may not want to change geiser until there's a new release of Racket at least) 12:58 weirdo: asumu, not really, no reason 13:01 (join) dnolen 13:04 (quit) doomrobo: Quit: bye 13:04 jamessan: bremner: yay, fixed easter-egg racket migrated to Wheezy 13:06 bremner: yay. Still grimace every time I look at the version number. I guess it's my own fault, mostly 13:08 (join) jonrafkind 13:08 (quit) jonrafkind: Changing host 13:08 (join) jonrafkind 13:31 (quit) dnolen: Remote host closed the connection 13:37 (quit) SrPx: Quit: Page closed 13:38 (join) dnolen 14:12 (quit) cdidd: Remote host closed the connection 14:16 (quit) Kaylin: Quit: Leaving. 14:16 (join) dzhus 14:27 (join) MayDaniel 14:57 (quit) hash_table: Ping timeout: 264 seconds 14:57 (quit) getpwnam: Ping timeout: 264 seconds 15:02 (quit) MayDaniel: Read error: Connection reset by peer 15:05 (quit) dnolen: Ping timeout: 245 seconds 15:15 Shambles_: Is there a Racket equivalent of Clojure's thrush operator? http://clojuredocs.org/clojure_core/1.2.0/clojure.core/-%3E I know what "->" means in Racket is different. I don't care about what it's called, just what it does. 15:22 (join) Kaylin 15:24 jamessan: I think there was a discussion about this on the dev list recently 15:26 jamessan: http://thread.gmane.org/gmane.comp.lang.racket.devel/6080 15:29 jonrafkind: yea but you won't find anything helpful in there.. 15:36 Shambles_: So I take it "we don't like it" was the response? I mostly rather like the ease of the 'piping'/point-free/pointless notation. 15:38 jonrafkind: eli's arrow notation was wierd to me, but i have a macro called 'flow' that just passes the first argument through to the rest of the procedure arguments 15:39 jonrafkind: (flow "ab" string-uppercase string-lowercase) 15:45 Shambles_: Clojure has several different forms. That's the one for -> I think. ->> Uses the last argument, rather than the first, I believe. There's at least 2 more, but I forget what they do. 15:57 asumu: You can do point-free notation by just currying functions and using function composition. 15:57 (quit) Shambles_: Ping timeout: 276 seconds 16:07 (quit) jonrafkind: Ping timeout: 265 seconds 16:10 (join) Shambles_ 16:16 eli: Shambles_: jonrafkind's macro isn't so useful, and it doesn't have to be a macro: (define (flow x . fs) ((apply compose fs) x)) 16:17 eli: It's certainly not as useful as the clojure thing, and I was shooting for something that goes beyond that (which is the reason for two arrows). 16:18 Shambles_: eli: I might have missed some of the discussion since it appears the lines went down where I was. 16:19 eli: It should be easy to find in the archives... 16:20 eli: Actually, its the link that jamessan dropped. 16:32 Shambles_: eli: I'm trying to puzzle out what you wrote. As far as I can tell the intended way to run your function is to pass the data you want sent through the functions as the first argument, then a chain of functions as the second. If I do it that way though the functions end up called in the opposite order from what would be intended in a pipeline. 16:37 Shambles_: eli: Using reverse on the list of functions seems to have gotten the behavior I'd expect. 16:48 (join) MayDaniel 17:19 (quit) jesyspa: Quit: leaving 17:40 (quit) MayDaniel: Read error: Connection reset by peer 17:44 (join) jeapostrophe 17:45 (quit) antithesis: Quit: antithesis 18:16 (quit) dented42: Quit: Computer has gone to sleep. 18:17 (join) dented42 18:29 (quit) jeapostrophe: Read error: Operation timed out 18:41 (join) getpwnam 18:42 (join) hash_table 18:59 (quit) peeeep: Quit: Konversation terminated! 18:59 (quit) sizz: Read error: Connection reset by peer 19:02 (join) sizz 19:19 (quit) bitonic: Ping timeout: 244 seconds 19:22 (join) yoklov 19:23 yoklov: any way to get an integer out of a base 2 string easily? 19:24 yoklov: nevermind, number->string 19:39 (join) Kaylin1 19:40 (quit) Kaylin: Ping timeout: 260 seconds 19:45 (quit) mceier: Quit: leaving 19:48 (quit) dzhus: Read error: Operation timed out 19:49 (quit) Kaylin1: Ping timeout: 245 seconds 19:51 (join) Kaylin 19:59 yoklov: err, string->number 20:15 (quit) stchang: Read error: Operation timed out 20:18 (join) stchang 20:24 (join) cdidd 20:29 offby1: rudybot: (string->number "1010110001111000" 2) 20:29 rudybot: *offby1: ; Value: 44152 20:30 offby1: rudybot: #b1010110001111000 20:30 rudybot: *offby1: ; Value: 44152 20:30 offby1 rubs chin 20:31 (quit) dented42: Ping timeout: 245 seconds 20:40 (join) neilv 20:44 (quit) stchang: Read error: Operation timed out 20:44 yoklov: i don't have it as a literal 20:47 (join) stchang 21:01 (join) adu 21:18 (quit) yoklov: Quit: bye! 21:19 (join) jeapostrophe 21:35 (join) nilyaK 21:37 (quit) jeapostrophe: Ping timeout: 252 seconds 21:48 mithos28: I have procedures like dict-iterate-first and dict-iterate-next and a object they work over. Is there a built in combinator that will construct a sequence from these? 21:53 offby1: pretty sure there is 21:53 offby1 rubs chin again 21:54 offby1: now hold on a second. 21:54 offby1: dicts are _already_ sequences 21:54 offby1: or are you saying that you don't have an actual dict, but rather something roughly analogous to one? 21:54 mithos28: I don't have a dict yet, I'm making one 21:55 offby1: oh, then you get to write something like ten procedures that make it a proper enumerable; it's not hard 21:55 mithos28: Doing the contracts correctly is 21:55 mithos28: and efficently 21:56 offby1: well, skip the contracts at first 21:56 offby1: http://docs.racket-lang.org/reference/dicts.html?q=sequence#(def._((lib._racket/dict..rkt)._prop~3adict)) 21:56 mithos28: I'm taking an existing dictionary and adding the contracts 21:57 mithos28: and prop:dict/contract is so very broken 21:58 (join) dented42 21:58 mithos28: I think the solution is to have the map and for-each procedures be the generic ones 21:59 mithos28: and then I get all the right behavior, since those are already use the iterate functions 22:29 (quit) hash_table: Ping timeout: 250 seconds 22:31 (quit) dented42: Quit: Computer has gone to sleep. 22:32 (quit) getpwnam: Ping timeout: 250 seconds 22:36 (join) hash_table 22:38 (quit) adu: Quit: adu 22:39 (join) jonathansizz 22:39 (join) getpwnam 22:48 (quit) nilyaK: Quit: Leaving. 23:15 (join) jeapostrophe 23:15 (quit) jeapostrophe: Changing host 23:15 (join) jeapostrophe 23:27 (quit) jeapostrophe: Ping timeout: 260 seconds 23:59 (quit) Kaylin: Read error: Connection reset by peer