00:07 asumu: ozzloy: here's an article on a similar topic: http://www.flownet.com/gat/papers/lisp-java.pdf 00:07 asumu: ozzloy: see here for more http://home.adelphi.edu/sbloch/class/hs/testimonials/ 00:08 asumu: ISTR seeing some more studies in this vein (some using the HtDP curriculum) but I can't find any immediately. 00:27 (quit) francisl: Quit: francisl 00:33 (join) realitygrill_ 00:35 (quit) realitygrill: Ping timeout: 276 seconds 00:35 (nick) realitygrill_ -> realitygrill 00:49 (join) djcb 01:02 (join) Skola_ 01:19 (quit) nilyaK: Quit: Leaving. 01:29 (quit) ozzloy: Read error: Operation timed out 01:32 (join) ozzloy 01:32 (quit) ozzloy: Changing host 01:32 (join) ozzloy 01:55 (quit) jeapostrophe: Ping timeout: 252 seconds 02:04 (quit) djcb: Remote host closed the connection 02:20 (quit) Skola_: Quit: Lost terminal 02:23 (quit) jonrafkind: Ping timeout: 245 seconds 02:23 (join) vkz 02:27 (quit) vkz: Client Quit 02:29 (quit) Skola: Ping timeout: 245 seconds 02:43 (join) asdfhjkl 02:45 (join) cdidd 02:48 (join) hkBst 02:57 (join) bas_ 02:57 (nick) bas_ -> Skola 02:57 (quit) realitygrill: Remote host closed the connection 03:02 (join) bluezenix 03:10 (join) nilyaK 03:13 (join) djcb 03:43 (join) ahinki 03:45 (join) gciolli 04:01 (nick) LeNsTR|off -> LeNsTR 04:05 (quit) gciolli: Ping timeout: 244 seconds 04:23 (join) mceier 04:53 (quit) mithos28: Quit: mithos28 04:56 (quit) cafesofie: Ping timeout: 248 seconds 04:57 (join) vperic 05:02 (join) gciolli 05:10 (quit) gciolli: Quit: Leaving. 05:35 (quit) Skola: Quit: Lost terminal 05:38 (join) bas_ 05:38 (nick) bas_ -> Skola 05:50 (quit) nilyaK: Quit: Leaving. 05:58 (join) nilyaK 06:22 bremner: samth_away: jamessan: I guess the simplest thing from a Debian point of view would be to have somebody upstream add an LGPL header to that file, since you're in a better position to assess the history. 06:36 (quit) nilyaK: Quit: Leaving. 07:37 (join) samth 08:29 (quit) duomo: Quit: Linkinus - http://linkinus.com 08:45 (join) jrslepak 09:18 (quit) Skola: Ping timeout: 245 seconds 09:36 (quit) jrslepak: Quit: This computer has gone to sleep 09:45 (quit) samth: Ping timeout: 276 seconds 09:52 (join) masm 09:56 (join) jeapostrophe 10:00 (join) carleastlund 10:05 (join) Skola 10:06 (join) gciolli 10:13 (quit) jeapostrophe: Ping timeout: 265 seconds 10:18 (nick) samth_away -> samth 10:18 samth: bremner: by upstream, do you mean racket? 10:19 samth: or aubrey jaffer? 10:19 bremner: racket is fine from my point of view 10:19 samth: bremner: ok, i'll look into it 10:20 bremner: thanks a lot, I realize these things are not _too_ rewarding. 10:20 samth: although from my perspective, i would say that it's currently covered under the COPYING file for the project, just like all the other files 10:20 samth: it just has a different copyright header, for the obvious reason 10:20 bremner: yeah, that is sensible, except look at clark-tests 10:23 samth: well, obviously that's problematic (both for you and for us) 10:23 samth: but it does have it's own license file 10:23 (quit) gciolli: Ping timeout: 272 seconds 10:24 bremner: ok, I guess I can see that point of view. 10:24 samth: but yes, we should fix clark-tests, since we're obviously violating its license 10:28 (part) dme: "ERC Version 5.3 (IRC client for Emacs)" 10:29 (join) kampsun 10:44 (quit) ahinki: Quit: ChatZilla 0.9.88 [Firefox 11.0/20120228210006] 10:47 (quit) hkBst: Quit: Konversation terminated! 10:49 (join) stamourv` 10:51 (quit) stamourv: Remote host closed the connection 10:52 (nick) stamourv` -> stamourv 11:05 (join) gciolli 11:12 (join) Shvillr_ 11:12 (quit) Shviller: Disconnected by services 11:12 (nick) Shvillr_ -> Shviller 11:15 (quit) Shvillr: Ping timeout: 245 seconds 11:15 (join) Shvillr 11:18 (join) realitygrill 11:21 (join) jeapostrophe 11:28 (quit) jeapostrophe: Ping timeout: 245 seconds 12:07 (join) MayDaniel 12:10 (quit) realitygrill: Ping timeout: 276 seconds 12:11 (nick) noelw -> noelw_away 12:15 (join) anRch 12:15 (quit) anRch: Client Quit 12:22 (join) anRch 12:27 (join) jonrafkind 12:37 (quit) MayDaniel: 12:40 (join) mye 12:41 mye: does (write) use (serialize) internally? 12:43 (join) dnolen 12:44 samth: mye: no 12:46 (join) alexshendi 12:46 alexshendi: Good evening! 12:52 (quit) anRch: Quit: anRch 12:57 (join) mithos28 13:04 (join) frewsxcv 13:11 (join) GeneralMaximus 13:12 (join) JoelMcCracken 13:15 (join) dzhus 13:18 bremner: samth: this isn't the question you asked, but I'm not sure Clark's license really allows derived works in any reasonable sense, so Debian might still take a pass on those files. 13:19 samth: bremner: sure, that makes sense 13:19 samth: but we need to fix it for ourselves 13:19 bremner: agreed 13:20 bremner: is there any point in talking to James? maybe if you shipped the checksums of the original files or something. 13:20 bremner: dunno what is less work. 13:26 (quit) gciolli: Quit: Leaving. 13:28 alexshendi: I'm having a question regarding the racket FFI. Can I pass a SRFI-4 homogenous vector by reference to a Fortran subroution, so it has access to the contents of the array? 13:29 samth: alexshendi: i don't know anything about the fortran ABI 13:29 samth: but i doubt it 13:30 samth: srfi/4 vectors are like C data structures, i believe 13:30 (quit) bluezenix: Quit: Leaving. 13:31 alexshendi: That does not matter, as long as I can pass a "double *array" to the contents. 13:32 offby1: alexshendi: probably best to ask on the mailing list; I don't think the FFI whizzes hang out here much 13:32 alexshendi: Ok, thanx will do so. 13:43 samth: alexshendi: if you're passing something that in C would be a 'double*', then you should be able to use srfi/4 f64vectors just fine 13:45 alexshendi: samth: Thanks, will give it a try. 13:46 (quit) asdfhjkl: Quit: Leaving 13:47 (join) realitygrill 13:49 (join) stchang 13:54 (part) alexshendi: "wIRC" 13:55 (join) jeapostrophe 13:56 (join) stamourv` 13:56 (quit) stamourv: Remote host closed the connection 13:57 (nick) stamourv` -> stamourv 13:59 (join) djcb` 14:00 (quit) GeneralMaximus: Quit: Leaving 14:14 (join) bluezenix 14:16 (join) anRch 14:36 (join) yoklov 14:51 (join) vkz 14:54 (quit) yoklov: Quit: computer sleeping 15:09 (join) Kaylin 15:15 (quit) anRch: Quit: anRch 15:21 (join) cafesofie 15:56 (quit) realitygrill: Ping timeout: 276 seconds 16:02 (quit) Skola: Quit: Lost terminal 16:02 (nick) LeNsTR -> LeNsTR|off 16:02 (join) jrslepak 16:09 (join) realitygrill 16:13 (quit) vperic: Ping timeout: 240 seconds 16:19 (quit) stamourv: Remote host closed the connection 16:20 (join) stamourv 16:22 (quit) djcb`: Remote host closed the connection 16:37 (join) EmmanuelOga 16:55 (quit) dnolen: Quit: Page closed 16:55 (quit) cdidd: Ping timeout: 245 seconds 17:14 (quit) bluezenix: Quit: Leaving. 17:18 (quit) vkz: Quit: vkz 17:25 (nick) LeNsTR|off -> LeNsTR 17:30 (nick) LeNsTR -> LeNsTR|off 17:36 (quit) JoelMcCracken: Ping timeout: 244 seconds 17:38 (join) bluezenix 17:39 (quit) realitygrill: Quit: realitygrill 17:41 (join) nilyaK 18:30 (quit) jeapostrophe: Ping timeout: 272 seconds 18:39 (join) lewis1711 18:39 lewis1711: racket has really become more polished these last few releases. since 5.0 18:42 (join) vperic 18:43 samth: lewis1711: glad you think so! 18:44 (quit) bluezenix: Quit: Leaving. 18:47 lewis1711: yeah I really should try and learn more of the macro wizardry instead of just treating it like a scripting language with brackets 18:52 (quit) kampsun: Ping timeout: 252 seconds 19:01 (quit) masm: Ping timeout: 276 seconds 19:02 (quit) mceier: Quit: leaving 19:35 (join) dspt 19:44 (quit) jonrafkind: Ping timeout: 260 seconds 19:50 (quit) ivan\: Ping timeout: 252 seconds 19:51 (quit) lirfs: Ping timeout: 244 seconds 19:53 (join) lirfs 19:56 (join) ivan\ 20:06 (quit) Kaylin: Quit: Leaving. 20:07 jamessan: eli: the ssh key for pushes to githup needs to be re-authenticated so that the mirror starts being updated again (assuming the github mirroring is handled by you) 20:09 (join) realitygrill 20:09 (quit) dzhus: Remote host closed the connection 20:13 (quit) nilyaK: Quit: Leaving. 20:15 lewis1711: so if I have a file "#racket lang (define x 3)", how can I start a repl with that file loaded and get the value of x? I've read the help page for racket and the manual and it never has any clue about what x is 20:17 bremner: what do you mean by "get the value"? print it out? 20:19 lewis1711: have it available to me 20:19 jamessan: 1) it's "#lang racket" 2) you want those on separate lines 3) you're missing a (provide x) so that binding is available external to the module defined by the file 20:20 lewis1711: yeah I just typed it all by memory to get the idea. and I see 20:20 bremner: but is that needed? certainly geiser can "enter the module" 20:20 jamessan: once all of that is done, "racket -i -t foo.rkt" will start the REPL with that file require'd 20:21 lewis1711: so if I want to play round with things in the repl I need to provide everything 20:21 lewis1711: ? 20:21 jamessan: bremner: dunno 20:21 bremner: xrepl is another option 20:22 jamessan: lewis1711: why not use drracket? then you can modify stuff in the definitions window and use the repl in the interactions window 20:22 bremner: http://docs.racket-lang.org/xrepl/index.html?q=xrepl 20:22 (join) jeapostrophe 20:23 lewis1711: xrepl looks good 20:23 lewis1711: jamessan: just some weird colour issues 20:23 lewis1711: dark colour scheme. plus I usually use vim 20:25 lewis1711: alright have it working with xrepl, thanks 20:29 bremner: \o/ 20:53 (quit) vperic: Ping timeout: 260 seconds 20:58 (join) dnolen 21:00 lewis1711: I've just rediscovered how bad vim as at indenting lisp. maybe drracket is a good idea after all 21:01 jamessan: or emacs :) I tend to use it instead of Vim when dealing with functional languages. It usually has better support 21:01 (quit) dnolen: Remote host closed the connection 21:02 lewis1711: my brain isn't large enough to remember two weird text editors 21:02 (nick) LeNsTR|off -> LeNsTR 21:05 jamessan: evil-mode is shaping up to be a pretty good vim layer for emacs. so you could get a setup where you have normal emacs capability in "insert" mode and a decent subset of vim functionality in other modes 21:07 lewis1711: drracket is less effort to learn though. I am going to dig through its options and see if you can configure it to ignore your systems colour scheme 21:07 (nick) LeNsTR -> LeNsTR|off 21:14 asumu: lewis1711: jonrafkind has a vim keybindings plugin for DrRacket on PLaneT. 21:14 asumu: I also have an experimental unreleased one on my github account. 21:15 lewis1711: I don't mind drrackets keybindings :) just a few things are invisible due to black text on black background 21:15 asumu: Also, vim in lisp mode is half-decent, though no Emacs + paredit. 21:15 jamessan: you can change the colors being used in DrRacket's preferences 21:16 lewis1711: I can change the colours of the source code, but not the colours of the actual "window". or can I? the issue I have is that bit below the menu that gives your file name is black on black 21:17 asumu: lewis1711: that sounds like a window manager issue. What OS are you on? 21:18 lewis1711: Ubuntu, using gtk and open box 21:18 lewis1711: it's probably just because I'm using a dark colour scheme 21:19 lewis1711: a handful of apps react badly to it 21:20 asumu: Ah, yeah that makes sense. Though it'd be nice if it followed the theme. 21:20 lewis1711: it does for most of it, just that one area 21:20 lewis1711: I'd be happier if it ignored the gtk theme and was just grey 21:20 asumu: lewis1711: you could try submitting a bug report or at least discussing the issue on the mailing list. 21:21 lewis1711: will do. 5.2 still the latest? 21:21 lewis1711 checks 21:22 lewis1711: well I'll try 5.2.1 just to be sure 21:24 (quit) carleastlund: Ping timeout: 248 seconds 21:29 (join) carleastlund 21:30 (quit) jeapostrophe: Quit: leaving 21:31 (quit) realitygrill: Quit: realitygrill 21:32 (join) jeapostrophe 21:35 (join) dnolen 21:37 lewis1711: is there a shortish way to generate lists filled with the same thing? say a list of 10 0's 21:38 lewis1711: rudybot: (sequence->list (in-range 0 10)) 21:38 rudybot: lewis1711: your sandbox is ready 21:38 rudybot: lewis1711: ; Value: (0 1 2 3 4 5 6 7 8 9) 21:38 chandler: rudybot: eval (make-list 10 0) 21:38 rudybot: chandler: your sandbox is ready 21:38 rudybot: chandler: ; Value: (0 0 0 0 0 0 0 0 0 0) 21:38 lewis1711: ahhh 21:38 lewis1711: excellent, thanks 21:57 (quit) carleastlund: Remote host closed the connection 22:00 (join) yoklov 22:10 (nick) samth -> samth_away 22:12 (join) carleastlund 22:38 (join) jao 22:42 lewis1711: so rationals seem to be implemented with bignums. can one get arbitrary precision floats then? 22:42 (join) jonrafkind 22:43 lewis1711: oh no wait it seems bignums in racket are integer only 22:49 (join) Kaylin 22:54 chandler: rudybot: eval (/ 1 (expt 2 64)) 22:54 rudybot: chandler: ; Value: 1/18446744073709551616 22:54 chandler: rudybot: eval (/ 1 (expt 2 128)) 22:54 rudybot: chandler: ; Value: 1/340282366920938463463374607431768211456 22:54 offby1: WHO is giving such tiny numbers to my bot?! 22:55 offby1: chandler: what do you take him for?! Give him bigger numbers! 22:55 lewis1711: that requires knowing the rational form though 22:55 lewis1711: I was after something like a decimal floating point class 22:55 lewis1711: one day maybe :) 22:56 offby1: rudybot: (expt 2 20) 22:56 rudybot: *offby1: your sandbox is ready 22:56 rudybot: *offby1: ; Value: 1048576 22:56 offby1: that's just a drop in the bucket! 22:56 offby1: rudybot: (expt 2 (expt 2 20)) 22:56 offby1 whistles innocently 22:56 rudybot: *offby1: ; Value: 67411401254990734022690651047042454376201859485326882846944915676742270700738254324012189093273958935189763096092662578499572617038706183124893135193833022989256953210196289468241672863888618038537874881666541392847226977445968742340884809089414305471324099320290445257669398812381147850679486141068777106846241963630108359641749212181836654212482724180596063317308977734704851773936716905551669397095763288202 22:56 offby1: now we're talkin' 22:56 rudybot: Thank you sir; may I have another? 22:56 lewis1711: lol 22:58 lewis1711: rudybot: (sequence-fold 1 * (in-range 0 100)) 22:58 rudybot: lewis1711: your sandbox is ready 22:58 rudybot: lewis1711: error: sequence-fold: expected argument of type ; given 1 22:58 lewis1711: rudybot: (sequence-fold * 1 (in-range 0 100)) 22:58 rudybot: lewis1711: ; Value: 0 22:59 lewis1711: rudybot: (fold * 1 (stream->list (in-range 0 100))) 22:59 rudybot: lewis1711: error: reference to an identifier before its definition: fold in module: 'program 22:59 lewis1711: rudybot: (foldl * 1 (stream->list (in-range 0 100))) 22:59 rudybot: lewis1711: ; Value: 0 23:00 lewis1711: ohh... I have it now 23:00 lewis1711: rudybot: (foldl * 1 (stream->list (in-range 1 100))) 23:00 rudybot: lewis1711: ; Value: 933262154439441526816992388562667004907159682643816214685929638952175999932299156089414639761565182862536979208272237582511852109168640000000000000000000000 23:00 lewis1711: that's better 23:00 offby1: rudybot: (for/fold ([result 1]) ([x (in-range 1 100)]) (* result x)) 23:00 rudybot: *offby1: ; Value: 933262154439441526816992388562667004907159682643816214685929638952175999932299156089414639761565182862536979208272237582511852109168640000000000000000000000 23:01 offby1: more verbose but sorta more general, since there's a whole pile of for* thingies 23:01 (quit) mye: Quit: Page closed 23:01 offby1: rudybot: (for/list ([x (in-range 1 10)][y (in-range x)]) (cons x y)) 23:01 rudybot: *offby1: error: reference to an identifier before its definition: x in module: 'program 23:01 offby1: hmph 23:01 offby1: rudybot: (for*/list ([x (in-range 1 10)][y (in-range x)]) (cons x y)) 23:01 rudybot: *offby1: ; Value: ((1 . 0) (2 . 0) (2 . 1) (3 . 0) (3 . 1) (3 . 2) (4 . 0) (4 . 1) (4 . 2) (4 . 3) (5 . 0) (5 . 1) (5 . 2) (5 . 3) (5 . 4) (6 . 0) (6 . 1) (6 . 2) (6 . 3) (6 . 4) (6 . 5) (7 . 0) (7 . 1) (7 . 2) (7 . 3) (7 . 4) (7 . 5) (7 . 6) (8 . 0) (8 . 1) (8 . 2) (8 . 3) (8 . 4) (8 . 5) (8 . 6) (8 . 7) (9 . 0) (9 . 1) (9 . 2) (9 . 3) (9 . 4) (9 . 5) (9 . 6) (9 . 7) (9 . 8)) 23:01 offby1 leans back 23:04 lewis1711: (foldl + 0 (make-list 10 0.1)) 23:04 lewis1711: rudybot: (foldl + 0 (make-list 10 0.1)) 23:04 rudybot: lewis1711: ; Value: 0.9999999999999999 23:04 lewis1711: :( 23:05 offby1: rudybot: (foldl + 0 (make-list 10 #e0.1)) 23:05 rudybot: *offby1: ; Value: 1 23:05 offby1 pats lewis1711 on the head 23:05 lewis1711: !!! what is #E 23:05 lewis1711: or #e 23:05 offby1: it means "exact, damn it" 23:05 offby1: rudybot: (foldl + 0 (make-list 10 1/10)) 23:05 rudybot: *offby1: ; Value: 1 23:05 lewis1711: where on earth is this documented? 23:06 offby1: the racket manual, of course 23:06 offby1: numeric constants with a decimal point are inexact by default 23:06 lewis1711: I didn't know racket was capable of exact flonums 23:06 lewis1711: I was obviously looking in the wrong place 23:06 offby1: http://docs.racket-lang.org/reference/reader.html?q=%23e#(idx._(gentag._10._(lib._scribblings/reference/reference..scrbl))) 23:06 offby1 nudges rudybot 23:07 offby1: he's supposed to shorten long URLs. 23:07 offby1: slacker 23:10 lewis1711: http://docs.racket-lang.org/reference/numbers.html I figured I'd find it in here somewhere 23:10 (quit) carleastlund: Remote host closed the connection 23:12 (quit) jao: Ping timeout: 260 seconds 23:17 lewis1711: offby1: (for/fold ([result 1]) ([x (in-range 1 100)]) (* result x)) why is it better to do it that way? 23:17 (quit) cafesofie: Ping timeout: 248 seconds 23:19 offby1: *shrug* 23:19 offby1: not necessarily bette.r 23:19 offby1: but the various for/* forms are flexible, as you can see with my two-variable example above 23:21 lewis1711: I guess so. list comprehensions are handy 23:24 (join) cafesofie 23:45 lewis1711: can one supress the printing of results? 23:46 mithos28: yes 23:46 mithos28: use void 23:47 mithos28: (void expression) 23:49 lewis1711: excellent