00:06 (quit) pmatey: Quit: leaving 00:26 neilv: the logo on the drracket splash in pre looks like it had a plastic molding problem 00:34 (quit) jamessan: Ping timeout: 260 seconds 00:36 (join) jamessan 00:37 (quit) karswell: Remote host closed the connection 00:41 (join) jhemann 00:47 (join) karswell 00:57 (quit) jonrafkind: Ping timeout: 244 seconds 01:03 (quit) neilv: Quit: Leaving 01:10 (join) RacketCommitBot 01:10 RacketCommitBot: [racket] plt pushed 3 new commits to master: http://git.io/L9MLkg 01:10 RacketCommitBot: [racket/master] added begin-on-demand (combo of module* and lazy-require) - Ryan Culpepper 01:10 RacketCommitBot: [racket/master] syntax/parse: increase timeout for stress-template - Ryan Culpepper 01:10 RacketCommitBot: [racket/master] db: fix mysql large blobs, other changes - Ryan Culpepper 01:10 (part) RacketCommitBot 01:20 (join) jeapostrophe 01:32 (quit) jeapostrophe: Ping timeout: 276 seconds 02:49 (join) bluezenix 02:51 (quit) jrslepak: Ping timeout: 248 seconds 02:54 (join) jrslepak 02:57 (quit) jhemann: Ping timeout: 265 seconds 03:02 (quit) bluezenix: Quit: Leaving. 03:13 (join) cdidd 03:36 (join) mceier 03:41 (join) antithesis 04:04 (quit) karswell: Remote host closed the connection 04:04 (quit) Shviller: Ping timeout: 276 seconds 04:04 (join) Shviller 04:08 (join) bitonic 04:14 (join) karswell 04:30 (quit) karswell: Remote host closed the connection 04:34 (join) bluezenix 04:40 (join) karswell 04:43 (join) dzhus 04:44 (quit) bluezenix: Ping timeout: 244 seconds 05:07 (quit) karswell: Remote host closed the connection 05:13 (join) bluezenix 05:17 (join) karswell 05:32 (join) bluezenix1 05:32 (quit) bluezenix: Read error: Connection reset by peer 05:32 (quit) karswell: Remote host closed the connection 05:34 (join) djcb` 05:36 (quit) djcb: Ping timeout: 264 seconds 05:42 (join) karswell 05:45 (quit) dzhus: Remote host closed the connection 05:54 (quit) bluezenix1: Quit: Leaving. 06:01 (join) bluezenix 06:01 (quit) antithesis: Quit: yes leaving 06:01 (join) masm 06:05 (quit) bluezenix: Client Quit 06:23 (quit) karswell: Remote host closed the connection 06:29 (join) bluezenix 06:33 (join) karswell 06:38 (quit) bluezenix: Quit: Leaving. 06:46 (join) antithesis 07:23 (quit) Shambles_: Read error: Connection reset by peer 07:29 (quit) antithesis: Quit: yes leaving 07:49 (join) RacketCommitBot 07:49 RacketCommitBot: [racket] plt pushed 7 new commits to master: http://git.io/1ek8gg 07:49 RacketCommitBot: [racket/master] docs: will executors are synchronizable events - Matthew Flatt 07:49 RacketCommitBot: [racket/master] fix most-negative number and _int64 on a 64-bit platform - Matthew Flatt 07:49 RacketCommitBot: [racket/master] fix contract in docs - Matthew Flatt 07:49 (part) RacketCommitBot 08:05 (join) Shambles_ 08:06 (join) bluezenix 08:34 (quit) masm: Ping timeout: 260 seconds 08:36 (join) masm 08:36 (quit) bluezenix: Quit: Leaving. 08:58 (join) jeapostrophe 09:01 (join) mceier_ 09:04 (join) bluezenix 09:05 (quit) mceier: Disconnected by services 09:05 (nick) mceier_ -> mceier 09:08 (quit) eli: *.net *.split 09:11 (quit) bluezenix: Ping timeout: 244 seconds 09:11 (join) Kreol[UKR] 09:37 (join) bluezenix 09:38 (quit) noam: Read error: Connection reset by peer 09:38 (join) noam 09:44 (quit) noam: Read error: Connection reset by peer 09:44 (join) noam 09:48 (join) Skola 09:48 (quit) Skola: Client Quit 09:58 (join) jao` 09:59 (quit) bluezenix: Quit: Leaving. 09:59 (quit) jao`: Changing host 09:59 (join) jao` 10:00 (nick) jao` -> jao 10:24 (join) RacketCommitBot 10:24 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/v32qiA 10:24 RacketCommitBot: [racket/master] fix a problem with continuation allocation - Matthew Flatt 10:24 (part) RacketCommitBot 10:40 (quit) Kreol[UKR]: Ping timeout: 260 seconds 10:42 (join) jhemann 10:46 (quit) karswell: Remote host closed the connection 10:46 (quit) cdidd: Ping timeout: 245 seconds 10:52 (join) bluezenix 10:54 (join) pilz 10:55 (quit) _AlbireoX: Ping timeout: 246 seconds 10:55 pilz: Hi. Is there any difference between #lang htdp/bsl and choosing it from the language menu? 10:56 (join) karswell 10:56 (join) _AlbireoX 10:56 asumu: pilz: you should choose from the menu. IIRC the #lang htdp/bsl is still incomplete. 11:04 (join) untrusted 11:06 (quit) karswell: Remote host closed the connection 11:06 (join) cdidd 11:12 (quit) _AlbireoX: Ping timeout: 240 seconds 11:13 (quit) bluezenix: Quit: Leaving. 11:13 (join) jonrafkind 11:17 (join) karswell 11:24 (join) _AlbireoX 11:30 (join) bluezenix 11:30 (quit) bluezenix: Client Quit 11:34 (quit) karswell: Remote host closed the connection 11:38 (join) bluezenix 11:44 (join) karswell 11:46 (join) eli 11:46 (join) jao 11:47 (quit) jao: Changing host 11:47 (join) jao 11:47 (join) antithesis 11:55 (quit) untrusted: Remote host closed the connection 12:01 (quit) karswell: Remote host closed the connection 12:02 (quit) bitonic: Ping timeout: 260 seconds 12:04 (join) yoklov 12:11 (join) karswell 12:15 (join) bitonic 12:38 pilz: Thanks 12:38 (quit) pilz: Quit: Quit 12:44 (quit) jeapostrophe: Ping timeout: 272 seconds 12:49 (quit) Haffe: Quit: leaving 12:53 (quit) bluezenix: Quit: Leaving. 12:58 (nick) Nisstyre -> TheSussman 13:07 (quit) karswell: Remote host closed the connection 13:12 (join) dnolen 13:12 flying_rhino: hello again 13:12 flying_rhino: anyone here? 13:15 (quit) Shviller: Quit: bye 13:16 (join) Shviller 13:16 jonrafkind: no, the internet is down today 13:16 jonrafkind: try again in a week 13:17 (join) karswell 13:19 flying_rhino: so, in typed racket, what is a difference between making typed structures and making new types using define-type 13:19 flying_rhino: ? 13:21 jonrafkind: well define-type can create new types using the type constructors like `All' 13:21 jonrafkind: and `U' 13:21 jonrafkind: so (define-type string-or-integer (U string integer)) for example makes a new type that can be either a string or an integer 13:21 jonrafkind: this is not the same as (struct blah (string integer)), thats a new structure that contains a string and an integer 13:22 jonrafkind: so (is-type? blah 5) would fail while (is-type? string-or-integer 5) would succeed 13:22 jonrafkind: (I made up is-type?, i dont know what the real predicate is in typed/racket) 13:22 (join) chrissbx 13:28 flying_rhino: okay 13:29 flying_rhino: I mixed something up 13:32 (quit) chrissbx: Ping timeout: 276 seconds 13:33 flying_rhino: I think you ought to know that working with structures is tedious in racket. To acess structure fields you have to type (structure-data instance). If you have structure inside structure (like structA that has field that can hold structB) then it looks like (structureB-data (structureA-fieldB instance)) . What is wrong with some kind of (GET instance structureA fieldB). 13:34 flying_rhino: ? 13:35 (quit) jonrafkind: Ping timeout: 240 seconds 13:35 flying_rhino: I am thionking of writing a macro for it, but I am not sure how to retrieve structure type from instance and am still a lisp noob. 13:35 flying_rhino: in fact figuring out the type when you only have instance seems to be kind of a problem here 13:37 (join) ydev 13:37 flying_rhino: actually my example should be (GET instance fieldB data) 13:38 flying_rhino: all in all way more convoluted than it should be! 13:41 (quit) antithesis: Quit: yes leaving 13:44 asumu: Just finished re-writing the intro of Racket's Wikipedia page. 13:44 asumu: Should read much better now (hopefully). 13:45 (join) antithesis 13:46 (quit) karswell: Remote host closed the connection 13:46 asumu: flying_rhino: It's because of scoping and identifiers. 13:47 asumu: (GET instance structureA fieldB) works okay as a macro maybe, but now you don't have a function you can use to get a certain field. 13:47 asumu: You have to wrap the macro in a lambda instead. 13:48 asumu: So if you wanted to map over a list of structures, you can't just use the GET thing. 13:48 (quit) jrslepak: Quit: This computer has gone to sleep 13:53 (join) gciolli 13:56 flying_rhino: asumu: be that as it may, but I don't know of another language where you have to repeat structure name over and over again. Usually it is instance->field or instance.field . Ony in racket it is (struct-name-field instance) 13:56 (join) karswell 13:57 flying_rhino: poor design, in my opinion 14:00 asumu: flying_rhino: in those languages, you cannot use an accessor as a first-class function. 14:00 asumu: e.g. in Java, obj.field is not a function but an expression. 14:01 asumu: And there's no way to make it one. You could with lambdas of course. 14:02 (quit) gciolli: Quit: Leaving. 14:02 flying_rhino: asumu: what is the advantage of accessors as first-class functions? And it still doesnt explain why there isnt some sort of get form so you can write (GET instance field). Instance should always carry structure signature in it, or something is wrong with language. 14:02 (join) gciolli 14:03 flying_rhino: it generates half bajilion acessor functions which are tedious to work with 14:03 asumu: rudybot: (define-struct thing (a)) 14:03 rudybot: asumu: Done. 14:03 asumu: rudybot: (map thing-a (list (thing 5) (thing 2) (thing 18))) 14:03 rudybot: asumu: ; Value: (5 2 18) 14:03 (quit) gciolli: Client Quit 14:03 asumu: In other languages, that requires an eta expansion. 14:05 asumu: In addition, structures don't, AFAIK, carry around the structure information. Otherwise, you couldn't define opaque structs. 14:05 asumu: Other languages either omit opaqueness (i.e., ignoring data encapsulation) or rely on another ad-hoc mechanism to provide it (public, private visibility modifiers) 14:07 asumu: If you want to write (get instance field) maybe you want to use classes or hashtables. 14:07 flying_rhino: this thing got classes? 14:07 flying_rhino: no one told me 14:07 asumu: rudybot: (define thing% (class object% (super-new) (field [a 0]))) 14:07 rudybot: asumu: Done. 14:07 asumu: rudybot: (get-field a (new thing%)) 14:07 rudybot: asumu: ; Value: 0 14:08 flying_rhino: thanks for helping me. What is the difference between struct and class? Something is tellig me that it is different than C :-) 14:09 flying_rhino: and how should I know which to use? 14:09 asumu: Racket classes are kinda like Java classes but with a few more features. 14:10 asumu: (they're implemented as a macro using structs and other stuff) 14:10 asumu: Structs are useful when you don't need OO features like methods and dynamic dispatch. 14:11 flying_rhino: are classes supported in typed racket, asumu? 14:11 (quit) karswell: Remote host closed the connection 14:11 (quit) antithesis: Quit: yes leaving 14:11 asumu: No, not yet. I'm working on that. 14:12 flying_rhino: :( 14:15 flying_rhino: The reason I am asking all this is because I am basically attempting to use racket to develop a game, so I need performance. Not C++ kind of performance, but some. The project is about 0.1% complete and seems more trouble than it is worth (in part because I lack free time to do it). I thought that I wanted lisp, but what I really want is Java or C# that doesn't have syntax and does have macros. 14:15 flying_rhino: So far racket doesn't seem to work all that great :( 14:15 flying_rhino: thanks for helping me, anyway. 14:17 flying_rhino: okay what I want would be Java that doesn't have syntax and does have macros, first class functions and less bloat :) 14:18 jamessan: jumping into a brand new language that is quite different than languages you're used to, when your time is already constrainted, seems like a good solution for failure :) 14:18 asumu: flying_rhino: well, so there are lots of ways to make dealing with structs easier though. One would be using pattern matching. 14:18 asumu: rudybot: (define-struct thing (a)) 14:18 rudybot: asumu: Done. 14:18 asumu: rudybot: (define-struct nested (thing)) 14:18 rudybot: asumu: Done. 14:19 asumu: rudybot: (define (f n) (match n [(struct nested ((struct thing (a))) a])) 14:19 rudybot: asumu: You could do it in any imperative language with nested callbacks, right? 14:19 (quit) acarrico: Quit: Leaving. 14:20 asumu: rudybot: (define (f n) (match n [(struct nested ((struct thing (a))) a]))) 14:20 rudybot: asumu: ah, that problem isn't because the define is nested; rather, it's because it comes after a non-definition 14:21 asumu: rudybot: (define (f n) (match n [(struct nested ((struct thing (a)))) a]) 14:21 rudybot: asumu: yeah, they're a bit difficult to get used to because of how they work. but once you understand them moving in and out of nested brackets becomes *so* easy. 14:21 asumu: rudybot: (define (f n) (match n [(struct nested ((struct thing (a)))) a])) 14:21 rudybot: asumu: Done. 14:21 asumu: There we go 14:21 asumu: rudybot: (f (nested (thing 5))) 14:21 rudybot: asumu: ; Value: 5 14:21 asumu: flying_rhino: ^ 14:22 (join) karswell 14:22 asumu: But of course, if you really need methods to organize your program, structs won't give you that. 14:25 flying_rhino: I don't really need methods 14:26 flying_rhino: I am fine with directly acessing structure fields, for performance. If I was creating my game in java I wouldn't have used getters and setters for performance reasons. I am not obessed with OOP, but I AM used to imperative aproach to things and to not repeating myself. 14:27 flying_rhino: but thanks 14:37 flying_rhino: pattern matching is pretty cool, though 14:37 flying_rhino: :-) 14:39 (quit) ydev: Ping timeout: 245 seconds 14:42 (join) antithesis 14:58 (quit) karswell: Remote host closed the connection 15:08 (join) karswell 15:20 (quit) karswell: Read error: Connection reset by peer 15:26 (join) jonrafkind 15:28 (quit) ssbr_: Ping timeout: 276 seconds 15:30 (join) karswell 15:33 (quit) karswell: Client Quit 15:50 (join) ssbr_ 16:00 (join) anRch 16:05 (join) jrslepak 16:21 (join) jeapostrophe 16:32 (quit) anRch: Quit: anRch 16:34 (quit) antithesis: Quit: yes leaving 16:36 (join) ydev 16:37 ydev: I'm trying to open a window on click of a button. But now I want the frame to open only if its closed. Any idea how one do it ? 16:47 (quit) noam: Read error: Connection reset by peer 16:48 (join) noam 16:49 (join) Kaylin 17:00 (join) Fare 17:05 asumu: ydev: you can probably use the show and is-shown? methods. 17:16 Fare: how did the racket team solve, avoid, or fall into the character encoding mess? 17:16 Fare: do you enforce use of utf-8 for all .rkt source files? 17:17 ydev: asumu, there is no is-shown? method for frames i think 17:17 ydev: and show method can only be used to make the frame #t or #f 17:24 (quit) dnolen: Ping timeout: 252 seconds 17:26 (quit) jeapostrophe: Ping timeout: 260 seconds 17:42 asumu: ydev: There is. It's inherited from window<%>. 17:44 asumu: Fare: http://pre.racket-lang.org/docs/html/release-notes/racket/MzScheme_300.txt mentions the unicode transition. 17:49 ydev: asumu: I used this but it is still creating multiple windows, (cond [(eq? (send frame1 is-shown?) #f) (send frame1 show #t)]) 17:55 (quit) Kaylin: Quit: Leaving. 17:58 ydev: asumu: I guess the frame object by default, show is false... 18:17 (join) dnolen 18:19 (join) asd_ 18:20 (nick) asd_ -> Guest36244 18:21 (join) chrissbx 18:25 Guest36244: hello,I have a question. I am using tcp client server.and the client writes to its output port using "print" and the server is able to read it using "read" . But this works only in Dr.Racket.If I create an exe then the messages are not sent. 18:26 (quit) bitonic: Quit: WeeChat 0.3.5 18:27 (join) kalluri 18:38 (quit) kalluri: Ping timeout: 245 seconds 18:41 (quit) chrissbx: Ping timeout: 276 seconds 18:43 (join) jeapostrophe 19:21 (quit) dnolen: Remote host closed the connection 19:24 (quit) jeapostrophe: Ping timeout: 265 seconds 19:32 (join) chrissbx 19:34 (quit) ydev: Ping timeout: 245 seconds 19:38 (join) ASau 19:39 ASau: Hello! 19:39 ASau: I have seen the announcement of release process. 19:40 ASau: Could you tell if you have a separate branch for 5.3 or do you do release engineering on the trunk? 20:02 offby1: pretty sure there's a separate branch 20:02 offby1: ASau: see https://github.com/plt/racket/branches 20:11 ASau: It is not clear from that. 20:11 ASau: Which branch should I test for cheking future 5.3 release? 20:18 offby1: I would assume the one named "release". 20:21 (quit) cdidd: Remote host closed the connection 20:24 (join) jeapostrophe 20:28 (join) dented42 20:30 (quit) jeapostrophe: Ping timeout: 245 seconds 20:43 (join) Kaylin 20:49 (join) bluezenix 21:10 (quit) bluezenix: Quit: Leaving. 21:28 (join) kvda 21:41 (quit) kvda: Ping timeout: 260 seconds 21:59 (quit) masm: Quit: Leaving. 22:11 (quit) jao: Remote host closed the connection 22:27 (quit) yoklov: Ping timeout: 245 seconds 22:33 (join) yoklov 22:42 (join) kvda 23:46 (join) jeapostrophe