00:12 (quit) dyoo: Ping timeout: 252 seconds 00:32 (join) neilv 00:32 (quit) neilv: Changing host 00:32 (join) neilv 00:35 neilv: in drracket, why does Run of "#lang racket" code print the value of each non-void expression, but this does not necessarily happen for "#lang r5rs"? 00:36 (quit) Smooth_: Ping timeout: 252 seconds 00:36 neilv: (i have a request to add that to the sicp language, which is derived from r5rs) 00:40 yoklov: neilv, what do you mean? 00:41 yoklov: i think the difference might be that the racket and r5rs reader are different? 00:44 neilv: this would be something that happens after the code has been evaluated 00:46 DT``: `racket''s #%module-begin wraps everything in a (print ...), `r5rs' does not (because of standard compatibility, I guess). 00:46 (join) leo2007 00:46 neilv: excellent. thanks 00:53 (join) jonrafkind 01:02 (join) ice_man 01:02 EM03: DT``: I still feel like an idiot with racket I'm just slowly becoming less of one 01:04 EM03: PostgreSQL and MySQL support is implemented in pure Racket. The optional SQLite and ODBC support requires the appropriate native client libraries. 01:05 EM03: wouldn't native be a bit faster? I'm all for implementing everything in the most straight forward language / way to do it but not sure if that is a good way to do everything 01:06 (part) ice_man: "ERC Version 5.3 (IRC client for Emacs)" 01:06 EM03: there is also a mysql.plt ....Not sure which one is really the recommended one? 01:06 DT``: EM03, you don't have to feel like one, everyone was a newbie in the beginning. 01:06 DT``: dunno about SQL and performance. 01:07 EM03: It sucks in the beginning it sucks real bad 01:10 neilv: EM03: for database libraries, sometimes the native libraries simply spit out a socket protocol. in that case, simply doing that protocol from racket cuts out the native code middleman 01:11 EM03: Yea I guess your right but it does make me nervous a bit hehe 01:15 EM03: another issue is that scheme itself is pretty light ....but racket adds a shit ton 01:16 jonrafkind: dont worry about doing things "the right way", that will take months/years to figure out 01:20 neilv: if you want you can start by doing pretty much r5rs scheme, starting your programs with "#lang racket/base", and then looking up in the manual every time you want to do something that's not in r5rs 01:20 neilv: which will be often 01:20 EM03: i mean i already have maybe 200 lines of scheme written 01:20 EM03: doesn't seem like much but still 01:21 EM03: looks like db.plt is the best all around solution ....there s a mysql one and a sqlite one but their development future looks to be in dismay 01:22 EM03: the sqlite binding does something interesting though 01:22 EM03: (define (insert-entry title url score) 01:22 EM03: (insert db (sql (INSERT INTO entries (title url score) 01:22 EM03: VALUES (,title ,url ,score))))) 01:23 EM03: every other sql implementation the sql itself is a string that passed and that is similar to how its done in most other languages I have used 01:23 EM03: Here its like functions and arguments or something? I don't understand how that is working 01:23 neilv: there have been a few different racket/scheme libraries over the years that have used a sexp sql syntax 01:24 EM03: I'm guessing thats what that is? 01:24 neilv: yes 01:24 EM03: jeesh I'm not used to libraries and authors creating new syntax 01:24 neilv: the sexp syntax is actually better, because you can do things like automatic quoting to prevent sql injection leaks 01:25 EM03: I'm not sure if db.plt allows that ....their examples are standard strings 01:25 neilv: ability to define new syntax is 34% of the reason for using racket 01:25 EM03: it sounds super cool for sure .....but when I'm siting here like now how in the hell is that working ...its hard 01:27 neilv: it is actually straightforward once you start using it 01:28 EM03: like the big seller for the web stuff is continuations but I don't really understand how scheme is using them ....and although I guess they are very useful for web dev ....from a seo point of view routing url's to functions is much more concise 01:29 neilv: first-class continuations are pretty much the only hard thing in scheme 01:30 EM03: the docs says the web server is continuation based 01:30 EM03: but at the same time it does allow for url based dispatch 01:30 neilv: i suggest working through tutorials for the racket servlets, playing with it, and getting an intuition that way 01:31 EM03: i guess my question is that I don't have to use continuations if I don't want right? I know that sounds stupid but yea 01:31 yoklov: neil: macro stuff can be hard too. 01:32 neilv: correct, you don't have to use their fancy continuations to use the racket web server 01:32 EM03: but I'm to deep into this now to just go back and do my project in Python 01:32 neilv: you also don't have to use the racket web server. you can do cgi or scgi 01:32 EM03: yea but using the racket webserver would be better would it not? 01:33 neilv: yoklov: yes, i started to qualify that, but backspaced before hitting return 01:33 EM03: I get the template stuff .....url based dispatch ...not sure how the scgi bindings are doing it but it looked pretty bare to me 01:33 neilv: EM03: probably you want to use the racket web server. but it's nice to have scgi there as a backup option, if a political or technical issue comes up 01:33 yoklov: and continuations are only hard because nobody explains them well. that's my theory, at least :p 01:34 DT``: yoklov, true, but there's no way to explain them well. 01:34 EM03: also i can just use nginx as a reverse proxy with the racket web server ....and serve all static files like that 01:34 DT``: not that I know, at least. 01:34 EM03: just use racket's as a true application server 01:35 neilv: you can explain continuations to someone and then they think they get it, but then they go to do a servlet and they decide nothing makes sense. that's why i suggest starting with the servlets and trying to get an intuition there, THEN going back for the explanation 01:36 EM03: continuations over web rely on a session with the state of the user ....which means from an seo perspective ...just like smalltalk continuation stuff its just not a good idea 01:37 EM03: a web application that is not indexed is different though 01:37 yoklov: I had a professor who did a pretty good, albeit incomplete, job explaining them 01:38 yoklov: built up from continuation passing style, talked about passing the current continuation around and doing backtracking with it 01:39 yoklov: it can be done, but the professor i'm talking about was /remarkably good/ at teaching, so yeah, you're right its a really weird concept 01:39 yoklov: hard to teach 01:39 DT``: CPS is probably the most straightforward method to explain continuations too. 01:40 DT``: since you actually *see* what the continuation is. 01:40 yoklov: yeah 01:40 DT``: (and why call/cc behaves strange) 01:40 neilv: from a quick glance, the ryanc/db planet package's mysql support code looks credible 01:41 EM03: you guys are scaring me ..... 01:41 yoklov: you dont need to know continuations 01:41 yoklov: don't worry :p 01:41 neilv: EM03: just work through servlet tutorial and then experiment. it's actually neat, not scary 01:42 yoklov: anyway i'm out 01:42 yoklov: night 01:42 (quit) yoklov: Quit: Leaving. 01:42 neilv: your main problem is that CS types will try to `clarify' things for you, and just confuse things before you're ready for more information 01:42 EM03: yea I've been working my way through the racket guides and that tutorial meanwhile actually writing useful code ....i have 5 out of the 15 pages done ....user sign up and some listing pages 01:43 EM03: tons of new forced concepts for sure 01:43 DT``: oh, that's me. 02:03 (quit) realitygrill: Read error: Connection reset by peer 02:03 (join) realitygrill 02:07 (quit) jonrafkind: Ping timeout: 250 seconds 02:09 (quit) realitygrill: Quit: realitygrill 02:11 (quit) neilv: Ping timeout: 240 seconds 02:16 (join) mithos28 02:16 (quit) mithos28: Client Quit 02:37 EM03: I keep getting I need a start function for the web server to load my app, but http://pastebin.mozilla.org/1225082 I dont see how that will really work, does it not check my url dispatch stuff hmm renaming the define values function to start obviously does not work 02:56 (join) cpach 03:59 (join) superjudge 04:09 (join) neilv 04:09 (quit) neilv: Changing host 04:09 (join) neilv 04:24 (quit) DT``: Ping timeout: 248 seconds 04:34 (quit) neilv: Quit: Leaving 04:37 (join) DT`` 05:28 (join) MayDaniel 05:29 (quit) devogon: Remote host closed the connection 05:40 (quit) MayDaniel: Read error: Connection reset by peer 05:41 (nick) elliottcable -> ec|detached 05:41 (nick) ec|detached -> elliottcable 05:42 (join) masm 05:45 (quit) ckrailo: Quit: Computer has gone to sleep. 06:25 (quit) wwwd: Ping timeout: 252 seconds 06:49 (quit) masm: Ping timeout: 246 seconds 06:58 elliottcable: Hey all. Trying to expirment with writing an R6RS file. 06:59 elliottcable: How, exactly, do I use `#%module-begin` with R6RS libraries and R6RS top-level programs? 06:59 elliottcable: I tried the following as a simple R6RS file with both an R6RS “library” and an R6RS “top-level program” in it; I think I’m mis-applying the necessary Racket bits… 07:00 elliottcable: https://gist.github.com/972114 07:10 (quit) superjudge: Quit: superjudge 07:11 (quit) Eren: Ping timeout: 260 seconds 07:16 (join) Eren 07:33 (join) kenjin2201 07:39 (join) tauntaun 07:47 elliottcable: Hm. Is there some way to use R6RS in the interactive interpreter / REPL? 07:51 bremner_: elliottcable: one of -f, -t, -l should do the trick. The details escape me at the moment. 07:53 elliottcable: Heh. `plt-r6rs` doesn’t take any of those 07:54 elliottcable: and if I start it with `racket`, then it’s not in the R6RS “language” 07:54 elliottcable: obviously, #!r6rs doesn’t make a lot of sense in the interactive interpreter, as that’s EOF terminated … 07:54 elliottcable: so I’m thrown for a loop as to how to decide which “language” to use in the REPL 07:56 bremner_: racket -l r6rs or something like that. 07:56 elliottcable: that’s for (lib … ) 07:56 elliottcable: I mean, maybe that’s what I want? I’m not familar with what the “language” portion of a module declaration actually *does*, as of yet 07:56 elliottcable pokes around 07:59 bremner_: racket -l r6rs -i at least doesn't return an error message. 08:02 elliottcable nods 08:02 elliottcable: but it didn’t give me what I was really expecting, which I then realized was sorta stupid: a way to interactively type R6RS “top-level programs” 08:02 elliottcable: the problem is that (import) isn’t an expression, so I can’t R6RS-import R6RS-libraries 08:03 elliottcable: so I’m writing a simple file which does the importing and then boots the racket read-eval-print-loop procedure 08:04 (quit) leo2007: Remote host closed the connection 08:06 elliottcable: Ugh, how can I get access to the `(read-eval-print-loop)` procedure? I don’t see the name of the library I need to import in the documentation 08:06 elliottcable: then again, I don’t know where to look 08:13 (quit) EM03: Quit: EM03 09:02 (join) rpr` 09:12 (join) lucian 10:04 (join) superjudge 10:07 (join) PLT_Notify 10:07 PLT_Notify: racket: master Matthew Flatt * 94e8419 (1 files in 1 dirs): fix "#lang r6rs" docs to point back to how-to-use-R6RS sections - http://bit.ly/lxJC0d 10:07 (part) PLT_Notify 10:33 (join) yoklov 10:41 rpr`: Seems typed/racket and spqslq have been very cleverly designed to circumvent any work around no matter how clever to get them to work together. Diabolical. 10:55 rpr`: Well almost every... (Any * -> Any) for all spgsql map and prepare-map will at get it to run. 11:01 (join) MayDaniel 11:24 (join) realitygrill 11:30 rpr`: set/c 11:34 (quit) MayDaniel: Read error: Connection reset by peer 11:35 (join) mithos28 11:38 (quit) realitygrill: Quit: realitygrill 11:46 rpr`: does anyone know type/racket type for a contract ... gotta be there I'd think. 11:47 (join) realitygrill 11:49 (join) nixfreak 11:51 nixfreak: been learning lisp for awhile now but trying to find docs for lisp is a pain 11:52 nixfreak: what are the benchmarks between say scheme python ruby 11:53 bremner_: sensible benchmarks are hard to find. You can google for "computer language shootout" for some micro-benchmarks 11:53 bremner_: note that there is huge variations between different scheme implementations. 11:54 nixfreak: can you use racket with emacs+slime ? 11:54 (quit) yoklov: Quit: Leaving. 11:54 bremner_: you can use emacs+geiser, which is similar in concept 11:55 (quit) mithos28: Quit: mithos28 11:55 bremner_: I haven't used slime, only geiser, so I can't give a detailed comparison 11:55 nixfreak: does scheme have "libs included" say like newlisp does 11:55 bremner_: scheme no, racket yest 11:55 bremner_: s/st/s/ 11:55 nixfreak: ok cool 11:55 nixfreak: thanks 11:55 bremner_: welcome 12:01 rpr`: ok I've given up on finding an efficient way to do (Setof Any) -> (Setof String). I'm ust unable to get my head around the typed/racket machinery. 12:07 (join) lucian_ 12:11 (quit) lucian: Ping timeout: 260 seconds 12:13 (quit) lucian_: Read error: Connection reset by peer 12:14 (join) lucian 12:18 (join) lucian_ 12:18 (quit) lucian: Ping timeout: 250 seconds 12:23 (quit) realitygrill: Read error: Connection reset by peer 12:23 (join) realitygrill_ 12:27 (quit) Checkie: Ping timeout: 260 seconds 12:33 (join) heeki 12:34 heeki: hey i'm trying to download the plai package, but i'm having problems. 12:35 heeki: i interrupted the download partway through the first time (C-c C-z), and now it returns a bunch of file paths followed by unstable/syntax. 12:35 heeki: i.e:.plt-scheme/planet/300/4.2.1/cache/plai/plai.plt/1/20/datatype.ss:55:21: unstable/syntax 12:56 (join) mithos28 13:01 (quit) mithos28: Quit: mithos28 13:12 (join) yoklov 13:14 (quit) rpr`: Remote host closed the connection 13:15 (join) mithos28 13:32 (quit) mithos28: Quit: mithos28 13:37 (join) mithos28 13:43 (join) leo2007 13:45 (join) traisen 13:47 traisen: Is universe.ss current? / most current? 13:49 (quit) mithos28: Quit: mithos28 13:52 (quit) traisen: Ping timeout: 252 seconds 13:58 (join) PLT_Notify 13:58 PLT_Notify: racket: master Matthias Felleisen * 490c38e (6 files in 3 dirs): documentation for old teachpacks, stubs for error module, redirect for Kathy's testing module; fixes for redirects 13:58 PLT_Notify: racket: master Matthias Felleisen * 7c546d3 (0 files in 0 dirs): basic docs for htdp collection 13:58 PLT_Notify: racket: master commits 94e8419...7c546d3 - http://bit.ly/mt1vs0 13:58 (part) PLT_Notify 14:02 (join) mithos28 14:03 (quit) mithos28: Client Quit 14:14 (quit) ohwow: Quit: leaving 14:14 (join) mithos28 14:16 (quit) shofetim: Read error: Connection reset by peer 14:18 (join) Checkie 14:19 (join) masm 14:21 (quit) yoklov: Quit: Leaving. 14:26 (quit) mithos28: Quit: mithos28 14:28 (join) tomku 14:35 (join) mithos28 14:40 (quit) realitygrill_: Read error: Connection reset by peer 14:41 (join) realitygrill 14:43 (join) realitygrill_ 14:44 (quit) realitygrill: Read error: Connection reset by peer 14:44 (nick) realitygrill_ -> realitygrill 14:47 (join) ohwow 14:52 (quit) realitygrill: Read error: Connection reset by peer 14:52 (join) realitygrill 15:01 (quit) leo2007: Remote host closed the connection 15:07 (quit) martinhex: Remote host closed the connection 15:12 (quit) mithos28: Quit: mithos28 15:25 (join) anRch 15:28 (join) martinhex 15:30 (quit) realitygrill: Read error: Connection reset by peer 15:30 (join) realitygrill 15:41 (nick) lucian_ -> lucian 15:42 (nick) elliottcable -> purr 15:43 (quit) purr: Quit: leaving 15:44 (join) elliottcable 15:47 (quit) realitygrill: Read error: Connection reset by peer 15:48 (join) realitygrill 15:51 (quit) realitygrill: Read error: Connection reset by peer 15:51 (join) realitygrill_ 15:52 (join) rpr 15:52 rpr: samth_away: ping 15:53 bremner_: and the futility of away nicks is demonstrated ;) 15:53 rpr: hope springs eternal 15:54 (quit) realitygrill_: Read error: Connection reset by peer 15:55 (join) realitygrill 15:58 rpr: Need to put that man on a retainer. 15:59 (join) mithos28 16:09 (quit) mithos28: Quit: mithos28 16:16 (join) yoklov 16:28 rpr: A continously git fetch'd repository, is never pushed. 16:32 (join) MayDaniel 16:38 (quit) anRch: Quit: anRch 16:49 (join) mithos28 16:50 (quit) yoklov: Quit: Leaving. 16:50 (quit) MayDaniel: Read error: Connection reset by peer 17:21 elliottcable: I don’t know if Neil or any of the others so-far involved in the discussion are in here 17:21 elliottcable: but some of you might find this an interesting read: http://lists.racket-lang.org/users/archive/2011-May/045480.html 17:22 elliottcable: if you’ve got any replies, or want more feedback from me, post them to the mailing list thread instead of here, so everyone can see them, please 17:23 elliottcable: on another note: is there an official Twitter hashtag for Racket? #RacketLang has no results, #Racket is full of other non-programming-related crap, and #RacketLang or #Racket-Lang have no results 17:38 (quit) superjudge: Quit: superjudge 17:49 (quit) mithos28: Quit: mithos28 17:52 (join) mithos28 18:12 (join) dnolen 18:17 (quit) dnolen: Client Quit 18:20 (quit) mithos28: Quit: mithos28 18:29 (join) jonrafkind 18:30 (join) Demosthenes 19:00 (join) mithos28 19:03 (quit) realitygrill: Quit: realitygrill 19:12 (quit) Checkie: Ping timeout: 260 seconds 19:18 (join) dnolen 19:26 (quit) kenjin2201: Remote host closed the connection 19:44 (join) realitygrill 19:52 (quit) mithos28: Quit: mithos28 20:01 (join) hussaibi 20:06 (quit) heeki: Ping timeout: 260 seconds 20:16 (quit) lucian: Remote host closed the connection 20:16 (quit) realitygrill: Quit: realitygrill 20:21 (join) realitygrill 20:22 (join) nigel 20:23 nigel: hi all. I am having a problem with moby 20:23 nigel: contract violation when accessing the choose url 20:36 (join) mithos28 20:37 (quit) realitygrill: Read error: Connection reset by peer 20:41 (join) realitygrill 20:45 (quit) nigel: Ping timeout: 252 seconds 20:46 (join) realitygrill_ 20:47 (quit) realitygrill: Ping timeout: 246 seconds 20:47 (nick) realitygrill_ -> realitygrill 20:55 (quit) realitygrill: Read error: Connection reset by peer 20:56 (join) realitygrill 21:03 (quit) mithos28: Quit: mithos28 21:13 (join) mithos28 21:48 (join) PLT_Notify 21:48 PLT_Notify: racket: master Robby Findler * a82ae17 (2 files in 2 dirs): adjust the htdp teachpack docs to use the #:use-sources keyword to demonstrate how it works - http://bit.ly/lfKWXr 21:48 (part) PLT_Notify 22:03 (quit) tauntaun: Quit: Ex-Chat 22:18 (quit) masm: Ping timeout: 246 seconds 22:28 (nick) elliottcable -> ec|detached 22:33 (quit) DT``: Ping timeout: 276 seconds 23:41 (quit) realitygrill: Ping timeout: 252 seconds 23:41 (join) realitygrill 23:46 (quit) realitygrill: Ping timeout: 246 seconds 23:46 (join) realitygrill