00:53 (quit) Demosthenes: Quit: leaving 01:10 (quit) lisppaste: Ping timeout: 260 seconds 01:42 (quit) jao: Ping timeout: 240 seconds 01:50 (quit) mithos28: Quit: mithos28 01:51 (join) mithos28 01:53 (join) veer 02:12 (quit) jonrafkind: Ping timeout: 260 seconds 02:22 (quit) veer: Quit: Leaving 02:59 (quit) realitygrill: Quit: realitygrill 03:01 (join) realitygrill 03:40 (quit) realitygrill: Read error: Connection reset by peer 03:41 (join) realitygrill_ 05:09 (join) daniel_ 05:10 daniel_: what's the equivalent of % in clojure? (vector-map (* 5 %) vector) <-- so i can do something like this 05:13 rapacity: rudybot: (vector-map (curry * 5) (vector 1 2 3 4 5)) 05:13 rudybot: rapacity: your sandbox is ready 05:13 rudybot: rapacity: ; Value: #(5 10 15 20 25) 05:13 daniel_: thanks rapacity 05:14 rapacity: you may want to check this out https://github.com/samth/fancy-app 05:14 rapacity: it'll allow you to write the above as 05:14 rapacity: (vector-map (* 5 _) (vector 1 2 3 4 5)) 05:14 daniel_: currying is fine i think 05:15 daniel_: does racket have any tools for vector/matrix multiplication? 05:15 daniel_: rudybot: (* [1 2 3 4] [1 2 3 4]) 05:16 rudybot: daniel_: your sandbox is ready 05:16 rudybot: daniel_: error: procedure application: expected procedure, given: 1; arguments were: 2 3 4 05:16 daniel_: rudybot: (* '[1 2 3 4] '[1 2 3 4]) 05:16 rudybot: daniel_: error: *: expects type as 1st argument, given: '(1 2 3 4); other arguments were: '(1 2 3 4) 05:16 daniel_: rudybot: (* (vector 1 2 3 4) (vector 1 2 3 4)) 05:16 rudybot: daniel_: error: *: expects type as 1st argument, given: '#(1 2 3 4); other arguments were: '#(1 2 3 4) 05:22 daniel_: hmm nice http://rosettacode.org/wiki/Matrix_multiplication#Racket 05:22 daniel_: racket seems even shorter than scheme and clojure 05:28 (join) avarus 06:14 daniel_: if i have '(1 0) '(0 1) how can i join them to create '((1 0) (0 1) ... ? 06:14 (join) keenbug 06:15 daniel_: (list '(1 0) '(0 1)) complains 06:20 _p4bl0: daniel_: it should work 06:21 _p4bl0: daniel_: I just tried and in works in the racket repl 06:22 daniel_: rudybot: (list (split-at (list 1 +i +i 1) 2)) 06:22 rudybot: daniel_: error: context expected 1 value, received 2 values: '(1 0+1i) '(0+1i 1) 06:22 daniel_: this is my problem 06:22 rapacity: split-at returns 2 values 06:23 rapacity: (let-values([(l r) (split-at (list 1 +i +i 1) 2)]) (list l r)) 06:23 (join) veer 06:23 rapacity: rudybot: (let-values([(l r) (split-at (list 1 +i +i 1) 2)]) (list l r)) 06:23 rudybot: rapacity: ; Value: ((1 0+1i) (0+1i 1)) 06:23 daniel_: i see, interesting 06:23 daniel_: thanks 06:24 rapacity: can also be written as 06:24 rapacity: rudybot: (call-with-values (thunk (split-at (list 1 +i +i 1) 2)) list) 06:24 rudybot: rapacity: ; Value: ((1 0+1i) (0+1i 1)) 06:26 keenbug: rapacity: i think you should say that (thunk sth) is the same as (lambda () sth) 06:28 keenbug: rapacity: sorry, didn't mean to criticise you if it seemed so 06:28 Shviller: Speaking of multiple values, I take it if a function returns more than one value, I'll have to kno how many an catch them all, to use it? IIRC in CL I could treat a function returning multiple values as a regular one, and it'd silently drop the extra values. 06:29 (join) MayDaniel 06:29 (join) masm 06:48 daniel_: I have a vector of lists within lists #(((0) (0)) ((0) (0))), trying to foldl through summing the squares of each value 06:48 daniel_: is that the best way? 06:51 daniel_: i need some way of first creating a list like (0 0 0 0) to use foldl 06:51 daniel_: expanding everything out 06:56 daniel_: im using vector->list and then flatten, this is slow right? 07:16 (quit) noam__: Ping timeout: 258 seconds 07:17 (join) noam__ 07:21 daniel_: how would i turn (1 2 3 4 5 6 7 8) into ((1 2) (3 4) (5 6) (7 8))? 07:25 bremner: write a recursive function is one way 07:27 daniel_: bremner, can you give me an example? 07:28 bremner: well, http://www.ccs.neu.edu/home/matthias/HtDP2e/htdp2e-part2.html has quite a few examples 07:29 daniel_: thanks 07:36 daniel_: is there an equivalent of vector-set for lists? i.e. replace a value at a certain index 07:51 daniel_: https://gist.github.com/1362080 <- i need to replace the % with each entry from the first vector-map...in this case currying doesn't work 07:52 daniel_: maybe i need apply? let me test 07:55 daniel_: think i need to get the order of the currying right 07:56 daniel_: got it, just needed (curry foldl) in brackets 07:58 daniel_: https://gist.github.com/1362080 08:07 daniel_: can anyone help me plot this on a graph? '#(0 0 0.9999999999999998 0 0) 08:07 daniel_: each vector pos is a pos on the x axis and the value is the y axis 08:09 daniel_: http://docs.racket-lang.org/plot/intro.html 08:24 (quit) keenbug: *.net *.split 08:24 (quit) eMBee: *.net *.split 08:24 (quit) SHODAN: *.net *.split 08:24 (quit) abbe: *.net *.split 08:24 (quit) ohwow: *.net *.split 08:24 (quit) tonyg: *.net *.split 08:24 (quit) rudybot: *.net *.split 08:24 (quit) SidH_: *.net *.split 08:24 (quit) stamourv: *.net *.split 08:24 (quit) cky: *.net *.split 08:24 (quit) ChanServ: *.net *.split 08:24 (quit) veer: *.net *.split 08:24 (quit) realitygrill_: *.net *.split 08:24 (quit) mithos28: *.net *.split 08:24 (quit) tewk: *.net *.split 08:24 (quit) stchang: *.net *.split 08:24 (quit) jrslepak: *.net *.split 08:24 (quit) mario-goulart: *.net *.split 08:24 (quit) eli: *.net *.split 08:24 (quit) cipher: *.net *.split 08:24 (quit) rapacity: *.net *.split 08:24 (quit) Shvillr: *.net *.split 08:24 (quit) Shviller: *.net *.split 08:24 (quit) shadgregory: *.net *.split 08:24 (quit) ozzloy: *.net *.split 08:24 (quit) ernestas: *.net *.split 08:24 (quit) jamessan: *.net *.split 08:24 (quit) asumu: *.net *.split 08:24 (quit) bfulgham: *.net *.split 08:24 (quit) acarrico: *.net *.split 08:24 (quit) evhan: *.net *.split 08:24 (quit) _p4bl0: *.net *.split 08:24 (quit) aidy: *.net *.split 08:24 (quit) tauntaun: *.net *.split 08:24 (quit) wtetzner: *.net *.split 08:24 (quit) gmcabrita: *.net *.split 08:24 (quit) GeneralMaximus: *.net *.split 08:24 (quit) snorble: *.net *.split 08:24 (quit) sepisultrum: *.net *.split 08:24 (quit) mattmight: *.net *.split 08:24 (quit) brainproxy: *.net *.split 08:24 (quit) chezduck: *.net *.split 08:24 (quit) offby1: *.net *.split 08:24 (quit) noam__: *.net *.split 08:24 (quit) avarus: *.net *.split 08:24 (quit) shachaf: *.net *.split 08:24 (quit) bremner: *.net *.split 08:24 (quit) sethalves: *.net *.split 08:28 (join) tauntaun 08:28 (join) _p4bl0 08:28 (join) asumu 08:28 (join) acarrico 08:28 (join) bfulgham 08:28 (join) aidy 08:28 (join) jamessan 08:28 (join) evhan 08:28 (join) veer 08:28 (join) realitygrill_ 08:28 (join) mithos28 08:28 (join) tewk 08:28 (join) stchang 08:28 (join) jrslepak 08:28 (join) mario-goulart 08:28 (join) eli 08:28 (join) cipher 08:28 (join) rapacity 08:28 (join) wtetzner 08:28 (join) gmcabrita 08:28 (join) GeneralMaximus 08:28 (join) sepisultrum 08:28 (join) snorble 08:28 (join) mattmight 08:28 (join) brainproxy 08:28 (join) noam__ 08:28 (join) avarus 08:28 (join) shachaf 08:28 (join) bremner 08:28 (join) sethalves 08:28 (join) ernestas 08:28 (join) ozzloy 08:28 (join) shadgregory 08:28 (join) Shviller 08:28 (join) Shvillr 08:28 (join) rudybot 08:28 (join) SidH_ 08:28 (join) stamourv 08:28 (join) cky 08:28 (join) ChanServ 08:28 (join) chezduck 08:28 (join) offby1 08:30 (join) keenbug 08:30 (join) eMBee 08:30 (join) SHODAN 08:30 (join) abbe 08:30 (join) tonyg 08:30 (join) ohwow 08:44 (quit) keenbug: *.net *.split 08:44 (quit) eMBee: *.net *.split 08:44 (quit) SHODAN: *.net *.split 08:44 (quit) abbe: *.net *.split 08:44 (quit) ohwow: *.net *.split 08:44 (quit) tonyg: *.net *.split 08:44 (quit) noam__: *.net *.split 08:44 (quit) avarus: *.net *.split 08:44 (quit) shachaf: *.net *.split 08:44 (quit) bremner: *.net *.split 08:44 (quit) sethalves: *.net *.split 08:44 (quit) snorble: *.net *.split 08:44 (quit) sepisultrum: *.net *.split 08:44 (quit) mattmight: *.net *.split 08:44 (quit) brainproxy: *.net *.split 08:44 (quit) veer: *.net *.split 08:44 (quit) realitygrill_: *.net *.split 08:44 (quit) mithos28: *.net *.split 08:44 (quit) tewk: *.net *.split 08:44 (quit) stchang: *.net *.split 08:44 (quit) jrslepak: *.net *.split 08:44 (quit) mario-goulart: *.net *.split 08:44 (quit) eli: *.net *.split 08:44 (quit) cipher: *.net *.split 08:44 (quit) rapacity: *.net *.split 08:44 (quit) wtetzner: *.net *.split 08:44 (quit) gmcabrita: *.net *.split 08:44 (quit) GeneralMaximus: *.net *.split 08:44 (quit) jamessan: *.net *.split 08:44 (quit) asumu: *.net *.split 08:44 (quit) bfulgham: *.net *.split 08:44 (quit) acarrico: *.net *.split 08:44 (quit) evhan: *.net *.split 08:44 (quit) _p4bl0: *.net *.split 08:44 (quit) aidy: *.net *.split 08:44 (quit) tauntaun: *.net *.split 08:44 (quit) Shvillr: *.net *.split 08:44 (quit) Shviller: *.net *.split 08:44 (quit) shadgregory: *.net *.split 08:44 (quit) ozzloy: *.net *.split 08:44 (quit) ernestas: *.net *.split 08:45 (join) cky_ 08:45 (quit) stamourv: *.net *.split 08:45 (quit) cky: *.net *.split 08:45 (join) sepisultrum 08:45 (join) Shvillr 08:45 (join) Shviller 08:45 (join) shadgregory 08:45 (join) ozzloy 08:45 (join) ernestas 08:47 (join) brainproxy 08:47 (join) mattmight 08:47 (join) ohwow 08:47 (join) tonyg 08:47 (join) abbe 08:47 (join) SHODAN 08:47 (join) eMBee 08:47 (join) keenbug 08:47 (join) sethalves 08:47 (join) bremner 08:47 (join) shachaf 08:47 (join) avarus 08:47 (join) noam__ 08:47 (join) GeneralMaximus 08:47 (join) gmcabrita 08:47 (join) wtetzner 08:47 (join) rapacity 08:47 (join) cipher 08:47 (join) eli 08:47 (join) mario-goulart 08:47 (join) jrslepak 08:47 (join) stchang 08:47 (join) tewk 08:47 (join) mithos28 08:47 (join) realitygrill_ 08:47 (join) veer 08:47 (join) evhan 08:47 (join) jamessan 08:47 (join) aidy 08:47 (join) bfulgham 08:47 (join) acarrico 08:47 (join) asumu 08:47 (join) _p4bl0 08:47 (join) tauntaun 08:48 (nick) brainproxy -> Guest95953 08:56 (quit) noam__: Remote host closed the connection 09:06 (quit) daniel_: Quit: Lost terminal 09:15 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/WTu-gQ 09:15 RacketCommitBot: [racket/master] add some debugging printfs in an effort to try to understand what's going wrong when this test runs in drdr - Robby Findler 09:34 (quit) mithos28: Quit: mithos28 10:00 (join) halkl 10:02 (part) halkl 10:14 (part) evhan 10:30 (join) Shviller_ 10:30 (quit) Shviller: Disconnected by services 10:30 (nick) Shviller_ -> Shviller 10:32 (join) bsod1 10:33 bsod1: hi, does Racket have a command to measure running time of a function? 10:43 bsod1: anyone? 10:53 _p4bl0: bsod1: yes, time 10:54 _p4bl0: rudybot: doc time 10:54 rudybot: _p4bl0: your sandbox is ready 10:54 rudybot: _p4bl0: http://docs.racket-lang.org/reference/time.html#(form._((lib._racket%2Fprivate%2Fmore-scheme..rkt)._time)) 10:58 bsod1: _p4bl0: thanks! 10:58 (part) bsod1: "Konversation terminated!" 11:11 (join) anRch 11:32 (quit) veer: Quit: Leaving 11:45 (quit) gmcabrita: Read error: Connection reset by peer 11:45 (join) gmcabrita 12:12 (quit) anRch: Quit: anRch 12:50 (quit) keenbug: Ping timeout: 240 seconds 13:04 (join) jonrafkind 13:43 offby1: rudybot: (time (cons 1 2)) 13:43 rudybot: *offby1: your sandbox is ready 13:43 rudybot: *offby1: ; Value: (1 . 2) 13:43 rudybot: *offby1: ; stdout: "cpu time: 0 real time: 0 gc time: 0\n" 13:43 offby1: rudybot: (time (begin (make-vector 1000000) 'wow) 13:43 rudybot: *offby1: > (define a (make-vector 3 0)) 13:43 offby1: rudybot: (time (begin (make-vector 1000000) 'wow)) 13:43 rudybot: *offby1: ; Value: wow 13:43 rudybot: *offby1: ; stdout: "cpu time: 4 real time: 4 gc time: 0\n" 13:43 offby1: rudybot: (time (begin (make-vector 10000000) (void))) 13:43 rudybot: *offby1: error: out of memory 13:43 offby1: :-( 14:03 (join) mithos28 14:18 (join) keenbug 14:19 (join) jl_ 14:19 (part) jl_ 14:41 (quit) keenbug: Ping timeout: 248 seconds 14:45 (join) dnolen 15:02 (quit) MayDaniel: Read error: Connection reset by peer 15:17 (join) keenbug 15:21 offby1: rudybot: (require db) 15:21 rudybot: *offby1: Done. 15:22 offby1: rudybot: (define connection (sqlite3-connect #:database "/tmp/frotz.db" #:mode 'create)) 15:22 rudybot: *offby1: error: current-directory: `exists' access denied for /usr/local/src/rudybot/ 15:22 offby1: oh well 15:48 (nick) samth_away -> samth 15:56 (quit) jonrafkind: Ping timeout: 258 seconds 15:59 (quit) samth: Quit: Ex-Chat 16:02 (join) samth 16:03 (join) tbelaire 16:04 tbelaire: Hey, I saw the code improvements post on reddit, and I'm going to start finding the uses of alists and replacing them with hashtables 16:05 tbelaire: as suggested by the page 16:07 samth: tbelaire: awesome! 16:09 tbelaire: There's only a handful of places assq is used 16:10 tbelaire: any other functions that indicate it's use? 16:18 (join) MayDaniel 16:21 Em: is the normal way to make programs to have a file that gets read in when the program starts and re-written before it closes again? 16:22 Em: otherwise you can't have a program that lasts longer than when drscheme is open 16:23 Em: it seems like in order for racket to make changes to a file it has to re-write the whole thing. 16:26 tbelaire: So, in get-libs.rkt, it uses nested alists 16:27 tbelaire: would it be appropriate to replace them with hash-tables? 16:27 tbelaire: It's a constant in the file, so it will only be read 16:30 _p4bl0: hello, could someone change the line 181 of /collects/web-server/http/request.rkt from 16:30 _p4bl0: " [(bytes-ci=? #"POST" meth)" 16:30 _p4bl0: to 16:30 _p4bl0: 16:30 _p4bl0: argh sorry 16:30 _p4bl0: to " [(or (bytes-ci=? #"POST" meth) (bytes-ci=? #"PUT" meth)) 16:30 _p4bl0: I can make a patch but it is only one line 16:31 (quit) tbelaire: Quit: Leaving. 16:36 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/6m3nog 16:36 RacketCommitBot: [racket/master] Make autocompletion fuzzier, similar to the doc search. - Sam Tobin-Hochstadt 16:40 samth: _p4bl0: probably a patch and email is better, b/c jay isn't around at the moment 16:40 _p4bl0: samth: ok thanks :-) 16:41 _p4bl0: samth: should I email him directly or send that to the dev mailing list? 16:45 offby1: Em: there are tons of ways to persist data. 16:45 offby1: Em: what you've described is one of them, but surely not the only way ... what sort of data are you dealing with? 16:47 samth: _p4bl0: either way should work 16:51 _p4bl0: samth: ok, thx 17:08 (quit) masm: Quit: Leaving. 17:14 (quit) keenbug: Ping timeout: 248 seconds 17:17 _p4bl0: email sent :-) 17:19 _p4bl0: meanwhile, I'll just parse the raw post-data to build a bindings assq list when receiving a PUT request 17:21 RacketCommitBot: [racket] plt pushed 2 new commits to master: http://git.io/FfHGIQ 17:21 RacketCommitBot: [racket/master] db: fixed space leak in statement finalizer thread - Ryan Culpepper 17:21 RacketCommitBot: [racket/master] db: fix transaction contract bugs, added transaction tests - Ryan Culpepper 17:32 offby1: \o/ 17:34 (nick) samth -> samth_away 17:36 (quit) MayDaniel: Read error: Connection reset by peer 17:46 (join) lisppaste 17:47 Em: offby1: I want to make an application that lets me enter data for lots of different customers, by letting me go like (customer id value) and then it has all these customer data structures with all their information in it, and it will get updated in a big flat file of lists I guess, and then that can be used to generate reports or turned into csv for escel 17:47 Em: excel 17:49 (join) tbelaire 17:50 offby1: You might use a database for that 17:50 offby1: Or you might indeed just rewrite the whole file every time -- if there isn't a ton of data, it will probably be fast enough 17:51 offby1: if this is important data, you must of course make sure you don't accidentally clobber good data with garbage 17:51 offby1: Another idea is to use your computer's file system as a crude database -- make directories for each customer; within each directory, name the file after the ID, and store the value in the file. 17:52 offby1: This assumes that either a) your customer names and the IDs are acceptable as file names; or b) it's easy to translate from them, to file names, and bak 17:52 offby1: back 17:53 offby1: I'd recommend the database thing except that as it happens, I'm struggling with racket's database support at this very minute :) 17:53 (quit) tbelaire: Client Quit 17:55 (join) jao 18:05 (quit) cipher: Read error: Connection reset by peer 18:06 (join) cipher 18:06 (join) mario-go` 18:06 (nick) cipher -> Guest12546 18:08 (quit) jrslepak: Ping timeout: 256 seconds 18:08 (quit) eli: Ping timeout: 256 seconds 18:08 (quit) mario-goulart: Remote host closed the connection 18:09 (join) jrslepak 18:19 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/9I-p9Q 18:19 RacketCommitBot: [racket/master] move predicate/c from unstable/contract to racket/contract. In process, - Robby Findler 18:21 offby1: does racket have an auto-builder? I was unable to build a recent commit 18:21 offby1: if it has an auto-builder then I can a) see if the problem was my fault; and b) snag a binary if so 18:22 mithos28: offby1: drdr.racket-lang.org 18:22 offby1: as in "drdr give me the news"? 18:23 offby1: interesting ... hard to interpret, though 18:48 (quit) tewk: Ping timeout: 256 seconds 18:49 (join) tewk 18:49 (quit) Guest95953: Ping timeout: 256 seconds 18:49 (quit) stchang: Ping timeout: 256 seconds 18:50 (join) stchang 18:53 (quit) realitygrill_: Read error: Connection reset by peer 18:53 (join) realitygrill 19:01 offby1: ... so if I find that the build fails for me on master, but works on release -- d'ya suppose it's worthwhile for me to "git bisect" in order to find out which commit "broke" it? 19:12 (join) jonrafkind 20:05 (quit) avarus: Remote host closed the connection 20:21 (join) eli 20:30 (quit) realitygrill: Read error: Connection reset by peer 20:30 (join) realitygrill 21:41 (quit) realitygrill: Quit: realitygrill 21:54 (join) realitygrill 22:07 (quit) Lajla: Read error: Connection reset by peer 22:08 (join) Lajla 22:16 (quit) cky_: Changing host 22:16 (join) cky_ 22:16 (nick) cky_ -> cky 22:27 (quit) jao: Ping timeout: 240 seconds 23:52 jonrafkind: whats the environment variable to see minor collections? 23:54 jonrafkind: ah PLTSTDERR=debug