00:03 (quit) shofetim: Remote host closed the connection 00:09 (quit) SeanDeNigris: Quit: SeanDeNigris 00:20 (quit) cb`: Read error: Connection reset by peer 00:21 (join) cb` 00:27 (quit) cb`: Ping timeout: 260 seconds 00:34 offby1: I think you begin it with #!/usr/bin/env gracket 01:12 (quit) dnolen: Quit: dnolen 01:21 (join) cb` 01:38 (join) kPb_in_ 02:03 (quit) cb`: Ping timeout: 264 seconds 02:20 (join) realitygrill 02:37 (join) lewis1711 02:46 (quit) hussaibi: Ping timeout: 240 seconds 02:49 (join) bluezenix 02:50 (quit) jonrafkind: Ping timeout: 258 seconds 03:41 (join) noelw 04:02 (join) tfb 04:02 (join) masm 04:12 (quit) realitygrill: Quit: realitygrill 04:27 lewis1711: https://gist.github.com/1156331 very weird error for a very trivial program. Clues? 04:28 lewis1711: (also, if anyone knows a paste site with better racket syntax than that, that'd be great :D)) 04:32 (join) egnarts-ms 04:34 (part) egnarts-ms 04:34 (quit) kPb_in_: Quit: kPb_in_ 04:51 (join) Marius 04:51 (nick) Marius -> Guest81844 04:55 asumu: em: you can compile it to an executable with raco 04:56 asumu: Oh my, I'm not used to being on the West Coast. Replying 5 hours late. 04:58 (quit) Guest81844: Quit: Page closed 04:59 asumu: lewis1711: I think the problem is you're using a typed region inside of Typed Racket. 04:59 asumu: If you change it to #lang racket and (require typed/racket) instead it works. 05:00 asumu: Though that is an unhelpful error message either way. 05:28 (join) kPb_in 05:32 lewis1711: asumu: that was what I tried at first (#lang racket), but that got me " expand: unbound identifier in module in: with-type" 05:32 lewis1711: what version are you using? I'm on 5.1.3 05:32 lewis1711: oh, the require bit 05:35 (quit) janne: Ping timeout: 240 seconds 05:35 lewis1711: hmmm, I'd like typed racket a lot better if it was built into regular racket, and it'd default to dynamic typing like SBCL. 05:36 asumu: lewis1711: That's not really the purpose of Typed Racket though. 05:36 asumu: The idea of TR is that you can convert an untyped program module-by-module. 05:37 (join) janne 05:38 asumu: You could have finer granularity, but at the cost of far more contract checks because TR protects typed code. 05:38 lewis1711: yeah. I guess once it supports more of racket I'll use it more. the big thing missing for me right now is the FFI. 05:39 asumu: lewis1711: You can just leave the FFI binding part untyped and import it appropriately into TR. 05:39 asumu: (with require/typed) 05:41 lewis1711: I don't think that would work - since you'd need the FFI types themselves, which you can't access from typed/racket 05:41 lewis1711: also in general, random functions popup that TR doesn't have. 05:41 lewis1711: I'll try out some stuff with require/typed though 05:42 asumu: Well, I mean you can build a "racketized" library over bindings imported from the FFI. With the appropriate marshalling. 05:42 asumu: Then import that into the typed world. 05:43 asumu: This kind of thing would be a nice thing to have examples of. 05:43 asumu: (as dyoo mentioned on the mailing list) 05:44 asumu: lewis1711: Also, with-type is basically letting you use TR in arbitrary untyped code. 05:44 asumu: Though yes, you still need to require typed racket. 05:45 asumu: Okay I'm off to sleep. Late even on the West Coast now. 05:46 lewis1711: yeah but then I can't pass untyped stuff into that type code, so it becomes a big mess 05:46 lewis1711: talk later then 05:57 (quit) Geisteskrankh: Ping timeout: 240 seconds 06:01 (quit) bluezenix: Quit: Leaving. 06:50 (join) chturne 07:19 (join) milos_ 07:20 (nick) milos_ -> milos3452 07:21 milos3452: hi. i'm interested in making a windows executables from small lisp programs. 07:21 milos3452: I tried this and the file was 6 megabytes in size. the program had 3 lines. 07:23 milos3452: Can this be smaller? 07:24 lewis1711: milos3452: I think it bundles in the racket vm. so probably not. but a 3000 line program would probably be about the same size. 07:25 milos3452: yeah, I heard that. 07:26 lewis1711: if it's really a deal breaker you could try something like gambit scheme that compiles down to C 07:26 lewis1711: though maybe there's a racket solution, not sure 07:28 lewis1711: is 6mb really a deal breaker? that's only like 4 floppy disks ;) 07:29 milos3452: gambit, I'll look it up, thanks. I'm just into making small beginners programs, but would like to share them with windows users. 07:34 noelw: lewis1711: if you don't use parametric polymorphism you can call typed code from untyped code 07:41 lewis1711: noelw: yeah I thought about doing that, dynamic racket seems to treat typed racket code as just having contracts 07:42 noelw: yes 07:42 noelw: that's how it's implemented -- contracts at module boundaries enforce the types 07:42 noelw: typed code called typed code doesn't go through the contract 07:43 noelw: but untyped code has to 07:43 lewis1711: it'd be cool if the contract system in mainline scheme did some type stuff. 07:43 lewis1711: that's probably not feasible for whatever reason, by i always wondered if that could be don 07:43 lewis1711: e 07:43 noelw: there is work on "gradual typing" 07:44 lewis1711: in racket? that's good to hear 07:44 noelw: that might be what you want. not something i know much about. 07:44 noelw: I don't think in Racket. 07:44 lewis1711: oh 07:44 noelw: I think the Javascript guys were looking at it (Dave Herman did his PhD at NEU) 07:44 lewis1711: I guess I'll just wait for typed racket to cover more things then. it seems like it's an area they're focusing on 07:45 lewis1711: looking it up now 07:45 noelw: Well if you have specific things you want convered -- like some primitives are not available -- that can be done very easily 07:45 lewis1711: can it? is there a guide? 07:45 (join) MayDaniel 07:46 lewis1711: I just run into random stuff - the last one I think was "sequence->list" can't be used in TR 07:46 noelw: No guide I know of, but the source is fairly easy to read 07:46 noelw: sequence is hard to type in Typed Racket at the moment 'cause it relies on "ad-hoc polymorphism" which TR doesn't handle 07:47 noelw: By the source I mean the file where all the primitives are given types 07:47 lewis1711: ah 07:47 (quit) milos3452: Quit: Page closed 07:47 noelw: It's a few files and quite simple 07:47 noelw: Or just ask on the mailing list 07:48 lewis1711: I signed up to it again today, since i figured out how to filter newsgroup mail sanely :D 07:50 lewis1711: reading about gradual typing 08:07 (join) SeanDeNigris 08:07 lewis1711: noelw: that's an interesting system - cool that it's an active area of research 08:21 (part) lewis1711: "Leaving." 08:26 (join) bluezenix 08:27 (quit) bluezenix: Client Quit 08:27 (join) dnolen 08:28 (quit) DGASAU: Ping timeout: 240 seconds 08:31 (join) DGASAU 08:37 (join) RacketCommitBot 08:37 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://bit.ly/ojaUJC 08:37 RacketCommitBot: [racket/master] fix compiler handling of top-/module-level constants - Matthew Flatt 08:37 (part) RacketCommitBot 09:06 (join) dbushenko 09:10 (quit) kPb_in: Quit: kPb_in 09:13 (join) kPb_in 09:36 (join) RacketCommitBot 09:36 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://bit.ly/nf5Awr 09:36 RacketCommitBot: [racket/master] fix optimizer bug - Matthew Flatt 09:36 (part) RacketCommitBot 09:40 (quit) MayDaniel: Read error: Connection reset by peer 09:43 (join) kPb_in_ 09:43 (quit) kPb_in: Read error: Connection reset by peer 09:43 (nick) kPb_in_ -> kPb_in 09:45 (join) anRch 09:48 (quit) kPb_in: Read error: Connection reset by peer 09:48 (join) kPb_in_ 09:51 (quit) kPb_in_: Read error: Connection reset by peer 09:51 (join) kPb_in 09:54 (join) kPb_in_ 09:54 (quit) kPb_in: Read error: Connection reset by peer 09:54 (nick) kPb_in_ -> kPb_in 09:56 (join) kPb_in_ 09:58 (join) shofetim 10:00 (quit) dbushenko: Quit: Ex-Chat 10:00 (quit) kPb_in: Ping timeout: 258 seconds 10:00 (nick) kPb_in_ -> kPb_in 10:06 (quit) kPb_in: Quit: kPb_in 10:19 (quit) dnolen: Quit: dnolen 10:22 (join) cb` 10:58 (join) bugQ 11:01 (quit) Fulax: Read error: Connection reset by peer 11:02 (join) Fulax 11:02 (join) RacketCommitBot 11:02 RacketCommitBot: [racket] plt pushed 2 new commits to master: http://bit.ly/ovMCR3 11:02 RacketCommitBot: [racket/master] fix bugs in the file locking protocol for planet packages - Robby Findler 11:02 RacketCommitBot: [racket/master] Rackety (indentation, let->define, mzscheme->racket/base, module -> #lang) - Robby Findler 11:02 (part) RacketCommitBot 11:03 (join) Geisteskrankh 11:07 cturner: part 11:07 (part) cturner 11:09 (join) kPb_in 11:14 (nick) samth_away -> samth 11:14 samth: noelw: gradual typing is basically the same thing as typed racket 11:15 noelw: oh, ok 11:15 samth: and i think lewis1711 was pretty confused about what he wants 11:18 (join) realitygrill 11:23 (quit) cb`: Ping timeout: 250 seconds 11:26 (join) cb` 11:27 (quit) kPb_in: Quit: kPb_in 11:27 (quit) anRch: Quit: anRch 11:29 (quit) realitygrill: Quit: realitygrill 11:37 (join) RacketCommitBot 11:37 RacketCommitBot: [racket] plt pushed 5 new commits to master: http://bit.ly/p8jjk1 11:37 RacketCommitBot: [racket/master] Adding clarifying comments to rep-utils.rkt - James Ian Johnson 11:37 RacketCommitBot: [racket/master] Fixed a comment inconsistency about double quotation. - James Ian Johnson 11:37 RacketCommitBot: [racket/master] Removed e from fold-pat attributes. - James Ian Johnson 11:37 (part) RacketCommitBot 11:39 (join) anRch 11:42 (join) mceier 11:45 (join) dnolen 11:57 (quit) noelw: Quit: noelw 11:59 (quit) anRch: Read error: Connection reset by peer 12:00 (quit) cb`: Quit: ERC Version 5.3 (IRC client for Emacs) 12:02 (join) anRch 12:08 (join) kPb_in 12:10 tauntaun: problems with racket-lang.org? 12:14 samth: tauntaun: http://www.downforeveryoneorjustme.com/racket-lang.org 12:17 (quit) anRch: Quit: anRch 12:33 (join) jonrafkind 12:35 (quit) tfb: Quit: sleeping 12:50 (join) MayDaniel 12:58 asumu: That's weird, because I'm having trouble accessing docs.racket-lang.org too. 12:58 asumu: But that website says it's just me. 12:59 jonrafkind: is up for me 12:59 samth: asumu: i'm having transient failures with some things (editing github gists for example, and firefox syncing) 13:23 (quit) MayDaniel: Read error: Connection reset by peer 13:31 (join) RacketCommitBot 13:31 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://bit.ly/mRJXNf 13:31 RacketCommitBot: [racket/master] I believe this fixes PR12117. The teaching languages rely on syntax/struct. (I have run the teaching language tests, but do not other uses of syntax/struct.) It appears that syntax/struct has been incorrectly creating this information for some time. The problem is that it would end the static info with a #f if the selectors or setters were omitted, but reading the documentation implies that there should be a final #f in eit 13:31 (part) RacketCommitBot 13:41 (join) anRch 13:59 (quit) masm: Ping timeout: 250 seconds 14:07 (join) tfb 14:20 (join) masm 14:21 (join) soegaard 14:26 (join) RacketCommitBot 14:26 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://bit.ly/mVrNBp 14:26 RacketCommitBot: [racket/master] Mark place-chan-rand as random for DrDr. - Sam Tobin-Hochstadt 14:26 (part) RacketCommitBot 14:29 (join) sstrickl_ 14:30 (join) shachaf_ 14:32 (join) tfb_ 14:32 (quit) tfb: Disconnected by services 14:32 (join) martin_hex 14:32 (quit) martinhex: Disconnected by services 14:32 (nick) martin_hex -> martinhex 14:32 (nick) tfb_ -> tfb 14:37 (join) fmu` 14:38 (quit) sstrickl: *.net *.split 14:38 (quit) fmu: *.net *.split 14:38 (quit) shachaf: *.net *.split 14:38 (nick) sstrickl_ -> sstrickl 14:40 (quit) bugQ: Remote host closed the connection 14:45 (join) RacketCommitBot 14:45 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://bit.ly/nNc562 14:45 RacketCommitBot: [racket/master] adjust timeout - Robby Findler 14:45 (part) RacketCommitBot 15:00 (quit) anRch: Quit: anRch 15:10 (quit) chturne: Ping timeout: 246 seconds 15:11 (quit) kPb_in: Quit: kPb_in 15:21 jonrafkind: opinions on this syntax? function(x){ x + 1 } map 1 :: 2 :: 3 :: null; 15:22 jonrafkind: maybe there should be a different operator for binary map 15:22 (join) RacketCommitBot 15:22 RacketCommitBot: [racket] plt pushed 7 new commits to master: http://bit.ly/qUCPf7 15:22 RacketCommitBot: [racket/master] fix optimizer test - Matthew Flatt 15:22 RacketCommitBot: [racket/master] change bad code to an assertion that's never needed - Matthew Flatt 15:22 RacketCommitBot: [racket/master] fix `place-break' on a terminated place - Matthew Flatt 15:22 (part) RacketCommitBot 15:36 (quit) tfb: Quit: gone 15:42 jonrafkind: I wonder if the quit bot stuck around for a few minutes in case a new push happened, or its logic was just slow 15:46 asumu: jonrafkind: map is meant to be a binary operator there? 15:46 jonrafkind: yea 15:46 asumu: How does the precedence work here? 15:46 jonrafkind: map has lower precedence than :: 15:47 samth: jonrafkind: i'm not a fan -- list comprehensions are better 15:47 asumu: I see. So it has special treatment, or can I use any identifier? 15:47 jonrafkind: binary operators are special 15:47 asumu: I think that could be confusing. I like how Haskell requires `` to make it obvious it's being used infix. 15:48 jonrafkind: thats becuase you can use functions either as prefix or infix, but here you have no choice 15:48 jonrafkind: although I guess I could support the `` thing 15:48 jonrafkind: i dont really like that syntax.. 15:49 samth: better to have something general than something specific to just map 15:49 jonrafkind: what about + 15:49 asumu: I'm not sure I would ever use map infix though, as opposed to map(add1, 1 :: 2 :: 3 :: null). 15:50 jonrafkind: im expanding your horizons! 15:50 samth: like i said, the better custom notation for list transformation is list comprehension 15:50 jonrafkind: in ruby its nice to do [1, 2, 3].map({|x| x + 1), here the function and list are just reversed 15:50 jonrafkind: samth, i have for 15:50 jonrafkind: but thats orthogonal to the question at hand 15:51 samth: no, it's not orthogonal at all 15:51 jonrafkind: it is if you want to use map 15:51 samth: [x+1 | x <- 1 :: 2 :: 3 :: null] 15:51 samth: or even better: [x+1 | x <- [1,2,3]] 15:51 (join) kbs 15:51 samth: which will work in JS soon 15:52 jonrafkind: i could support that if I remove | as an operator, I dont like |> though 15:53 jonrafkind: > looks ok, but i may need to use <> as enclosers 15:53 asumu: jonrafkind: The . makes the separation clear for me, whereas juxtaposition does not. 15:54 jonrafkind: pure juxtaposition would leave out the map 15:54 asumu: (and yea, comprehensions are nice) 15:54 samth: then do some other syntax for comprehensions 15:54 samth: all i'm saying is that comprehensions are the correct custom map syntax -- not an infix map operator 15:54 jonrafkind: psh.. correct.. 15:54 samth: ok, best that we know of 15:55 jonrafkind: s/we/I 15:55 samth: do you know of any other better ones? 15:55 asumu: It's also the syntax covered in high school/college math. 15:55 samth: and found in other programming languages 15:55 (join) chturne 15:56 jonrafkind: you are suggesting no one should use map ever, thats all im arguing against 15:57 samth: no, i'm saying that map is great as a function -- if you want syntactic support for doing map-like things, then use a comprehension 15:58 (join) RacketCommitBot 15:58 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://bit.ly/nZ0agL 15:58 RacketCommitBot: [racket/master] fix for subprocess management (when places are enabled) - Matthew Flatt 15:58 (part) RacketCommitBot 15:58 samth: also, jonrafkind, i don't understand the design philosophy at work here 15:58 samth: are you trying to come up with something similar to existing languages, or trying to innovate in terms of syntax? 15:58 jonrafkind: make the common case easy 15:59 jonrafkind: sometimes i just throw syntaxes at a wall and see what sticks 15:59 jonrafkind: this is one of those times 15:59 samth: right, but as a general philosophy, matthew seemed to suggest at racketcon that we're trying to build a syntax like what people know 16:00 samth: but infix map is not like that at all 16:00 jonrafkind: i am the oath breaker! 16:00 samth: but if you aren't trying to be similar to existing syntaxes, i have lots of other suggestions 16:00 jonrafkind: ok, suggest away 16:00 samth: starting with losing the {} and ; 16:01 jonrafkind: actually i can get rid of ; in most places 16:01 jonrafkind: so you dont like {} for blocks of code? 16:02 jonrafkind: i could possibly convert tabs/indentation into blocks of code I guess 16:04 samth: yes, i would like that -- thought not tabs (spaces!) 16:04 jonrafkind: yar 16:14 (join) kennyd_ 16:20 (join) shaggy- 16:38 (quit) mceier: Quit: leaving 16:40 (quit) chturne: Read error: No route to host 16:41 (join) chturne 16:55 (join) Guest43988 16:56 Guest43988: hi all..i have been attempting ot use ryanc/db:1:3 for mysql and other database stuff..i have sqlite3 connections/ quesriues working fine but could not connect to mysql through its socks file 16:56 Guest43988: sorry i meant "sock" file 16:57 (quit) soegaard: Ping timeout: 252 seconds 17:00 (nick) Guest43988 -> rekahsoft 17:00 rekahsoft: oops..srry nick wrong :S 17:22 jonrafkind: samth, [x + 2, x <- [1, 2, 3]] 17:22 jonrafkind: since i already use , as a delimeter it was easy 17:23 samth: jonrafkind: ugh 17:23 jonrafkind: what its just , vs | 17:23 samth: what about: [x + y, x <- [1, 2, 3], y <- [4, 5, 6]] ? 17:23 samth: hard to find the delimiter 17:24 samth: i'd prefer || or :: or : or basically anything other than , 17:24 jonrafkind: ok i can use : 17:24 samth: unless you're using : for contracts/types 17:25 jonrafkind: nah, ill have to figure something else out for those 17:25 ohwow_: Why can't you just use '|' 17:25 ohwow_: sorry for interrupting 17:26 (quit) chturne: Quit: Leaving 17:26 jonrafkind: i already used | as an operator 17:26 jonrafkind: i could get rid of it, but i sort of like it 17:27 jonrafkind: [x + y: x <- [1, 2, 3], y <- [5, 6, 7]] produced '(6 8 10). yay 17:40 samth: yay 17:47 (nick) shachaf_ -> shachaf 17:49 (quit) kbs: Quit: leaving 18:04 (join) RacketCommitBot 18:04 RacketCommitBot: [racket] plt pushed 2 new commits to master: http://bit.ly/pBbsuq 18:04 RacketCommitBot: [racket/master] fix `make-lock-file-name'; add `path-element?' - Matthew Flatt 18:04 RacketCommitBot: [racket/master] fix `call-with-file-lock/timeout' example - Matthew Flatt 18:04 (part) RacketCommitBot 18:29 (nick) elliottcable -> able 18:39 (quit) SeanDeNigris: Quit: SeanDeNigris 18:43 (join) cb` 18:51 (quit) dnolen: Ping timeout: 252 seconds 18:56 (join) RacketCommitBot 18:56 RacketCommitBot: [racket] plt pushed 1 new commit to master: https://github.com/plt/racket/commit/dc1a97cec7af0a5ddaee2020456e445d572f030a 18:56 RacketCommitBot: [racket/master] another subprocess fix like d7a996ee0bf393b985 - Matthew Flatt 18:56 (part) RacketCommitBot 18:59 (nick) able -> elliottcable 19:03 shaggy-: how can I convert a C pointer to a Racket string? 19:03 samth: the `_string' type in the FFI 19:03 samth: provided that it's a `char *', that is 19:03 shaggy-: I already have a pointer though 19:04 samth: i don't understand 19:04 shaggy-: C functions accepts a pointer and then fills it with characters 19:04 samth: what's the type of the c function? 19:04 shaggy-: so I have a pointer pointing to C string and I have to convert it to racket string 19:04 samth: where do you have this pointer? 19:05 shaggy-: I am doing this (perhaps there's a better way). (let* ([size 100] [buf (malloc size)]) (c-function buf size) 19:05 samth: you want an out parameter -- it'll do some of this for you 19:06 samth: see http://docs.racket-lang.org/foreign/String_Types.html and http://docs.racket-lang.org/foreign/foreign_procedures.html#%28form._%28%28lib._ffi/unsafe..rkt%29.__ptr%29%29 19:06 rudybot: http://tinyurl.com/3ga8y9e 19:06 shaggy-: ah thanks, let me try 19:07 (nick) samth -> samth_away 19:07 samth_away: gotta run, ask on the users mailing list or stack overflow if you don't find someone here 19:15 shaggy-: I see no way to specify size of the char array in (_ptr o ..) 19:17 jonrafkind: it should be null terminated 19:17 jonrafkind: such is the definition of a string in C 19:19 (join) dnolen 19:19 (join) RacketCommitBot 19:19 RacketCommitBot: [racket] plt pushed 6 new commits to master: http://bit.ly/oAaZdz 19:19 RacketCommitBot: [racket/master] [honu] don't stop parsing the current expression after invoking a macro. - Jon Rafkind 19:19 RacketCommitBot: [racket/master] add 'exit-code as an available symbol to the status procedure returned by process - Jon Rafkind 19:19 RacketCommitBot: [racket/master] [honu] move test file. minor cleanups to the parsing code - Jon Rafkind 19:19 (part) RacketCommitBot 19:20 shaggy-: function doesn't accept a C string, it produces a string 19:21 shaggy-: it doesn't read from the buffer but writes to it 19:22 (join) RacketCommitBot 19:22 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://bit.ly/qEVRmb 19:22 RacketCommitBot: [racket/master] [honu] accidentally added these files, so removing them - Jon Rafkind 19:22 (part) RacketCommitBot 19:23 jonrafkind: shaggy-, so (_ptr o _char) no/ 19:23 jonrafkind: ? 19:23 shaggy-: won't that allocate a single byte? 19:24 jonrafkind: wait so does the c function accept a char* as an argument and writes to it? 19:24 shaggy-: yes, char * and size 19:25 jonrafkind: i dont know of a better solution than to call (malloc ...) 19:25 shaggy-: that's fine I don't mind calling malloc, but I don't know how to get racket string out of a pointer 19:29 (quit) jonrafkind: Ping timeout: 240 seconds 19:30 (join) jao 20:03 (quit) shaggy-: Quit: CGI:IRC (Ping timeout) 20:17 (join) gknauth 20:23 (quit) gknauth: Quit: Colloquy for iPhone - http://colloquy.mobi 20:28 (join) m_ 20:43 (quit) elliottcable: Remote host closed the connection 20:44 (join) elliottcable 21:14 (quit) kennyd_: Ping timeout: 268 seconds 21:15 (quit) masm: Quit: Leaving. 21:22 (join) WarWeasle 21:23 WarWeasle: Hello, any windows users available for assistance? 21:27 WarWeasle: I just want to compile a GUI app without the debug console popping up. Can anyone do this? 21:27 (join) kennyd 21:29 (quit) m_: Ping timeout: 252 seconds 21:38 eli: WarWeasle: Same as before, use the --gui thing. 21:39 (quit) dnolen: Quit: dnolen 21:41 WarWeasle: eli: I tried it. Still get the popups. :( 21:42 eli: Um, popup? I thought you got the dos box. Which popup? 21:43 WarWeasle: eli: I meant a dox window which pops up then spewes some data about my widgets and I have to use ctrl-c to make it go away. 21:45 WarWeasle: I did the : raco --gui gui.rkt 21:46 eli: WarWeasle: Do you mean that you're printing stuff out? 21:46 WarWeasle: eli: Yes. 21:47 eli: So, where do you expect that text to go to? 21:48 WarWeasle: I'm not using any print commands. Is there a flag I set to make racket/gui not print anything? 21:49 eli: It's not clear to me what gets printed. The `racket/gui' library does not print anything by itself. 21:49 eli: Can you paste an example of stuff that is getting printed? 21:52 WarWeasle: I'll have to wait until Monday. It's my work machine and I use Linux at home. 21:52 WarWeasle: I'm sure it's something stupid because all the examples run fine. 21:53 WarWeasle: Thanks again for you help, eli. 21:55 (join) RacketCommitBot 21:55 RacketCommitBot: [racket] plt pushed 1 new commit to master: http://git.io/rqK4-A 21:55 RacketCommitBot: [racket/master] fix `path-element?' collision - Matthew Flatt 21:55 (part) RacketCommitBot 21:57 eli: WarWeasle: You can run the same code on linux too. 21:58 eli: Any output that you'll see on the console where you start the application would cause a dos box popup -- so you should write the application so that no such output is produced. 22:00 WarWeasle: eli: I don't get the same result. Every app in Unix creates an output stream. X hides it. Windows will pop up a dos window if not in a winmain. 22:01 eli: WarWeasle: X doesn't really hide it. 22:01 eli: The thing is that every application on X is getting *some* stdin/out. 22:01 eli: If you start something from the gnome panel, for example, its output will go to some log file where gnome-session started. 22:01 WarWeasle: eli: Right, it just doesn't pop open a window to annoy me. 22:01 eli: But on Windows, there is really no stdin/out for gui applications. 22:02 eli: Thefore gracket must create them when needed, and that's what you see. 22:02 eli: (Probably.) 22:02 eli: So what I'm suggesting now is that you run the *same* code, from a linux terminal, 22:02 eli: then see if there's any output that appears. 22:02 eli: If there is any -- then that output would lead to the dos box appearing when running on windows. 22:03 eli: But in that case, you'll be able to paste that output somewhere so I can figure out where it's coming from. 22:03 eli: (Given that your code isn't showing anything explicitly.) 22:04 WarWeasle: I'll have to do that tomorrow as I am on my wife's machine. I'm just using the code from the gui examples, here: http://docs.racket-lang.org/gui/windowing-overview.html 22:05 WarWeasle: Even the first example does it. 22:07 WarWeasle: Maybe raco won't delete the exe automaticlly? 22:07 eli: WarWeasle: Do you mean the *first* example that just shows a frame, or the second one? 22:08 eli: If it's the second, then I think that I have a guess about what went wrong for you. 22:08 WarWeasle: That's what I've been using, yes. What could it be? 22:09 eli: WarWeasle: So it's the second one, right? 22:09 eli: And the output that you see looks like this: (object:button% ...) 22:09 eli: right? 22:09 WarWeasle: YES 22:09 WarWeasle: :) 22:10 eli: WarWeasle: OK, then. 22:10 eli: Here's the problem: 22:10 eli: In the usual Racket languages, there is an implicit `print' around any toplevel expression that returns a value other than `void'. 22:11 eli: This makes it possible to treat something like (+ 1 2) as a program (which prints just "3" in this case). 22:11 eli: And in a gui application you get the same behavior. 22:11 WarWeasle: Ahhh. That makes sense. How do you remove it? 22:11 eli: Now the problem is in that (new button% [parent frame] ...stufff...) 22:11 eli: The thing is that this is one of these weird functions -- 22:12 eli: a function that is called both to perform a side-effect (create a gui widget on the window) and to return a value (the button object). 22:12 eli: But in this case there is obviously no use for the returned value. 22:13 eli: Still one way to get rid of it, is to `define' something to it, even if the value is unused. 22:13 eli: For example, just changing it to (define btn (new button% ...blah...)) should work. 22:13 eli: Alternatively, you can send the resulting value to `void' -- which is a function that can consume any argument(s), and always returns a single # value. 22:14 eli: To do that, you'd use (void (new button% ...blah...)) 22:14 eli: And, of course, you should do that for any such global value. 22:14 eli: Sorry, any such toplevel expression. 22:14 WarWeasle: Thank you! This is great, I can use this at work to make my life MUCH simpler. 22:14 eli: (Meanwhile, this is of course a problem in the docs.) 22:17 WarWeasle: Thank you for taking the time to look at this. I low it's a pain when I don't have all the data, but this was a nice to have, not a must have. I just work on it at home, so I forget it during the day. 22:18 eli: No, it's definitely an issue that should be addressed... 22:18 eli: The thing is that not many people on the core team use Windows, and I can see how it can be confusing. 22:22 WarWeasle: I am glad I wasn't doing anything too stupid. Wife wants her laptop back. I'm sure I'll be back with more questions. I wish I could repay you for your time. But you made my night, if that is anything. 22:22 (quit) WarWeasle: Quit: Leaving 22:32 em: asumu: I get you can compile it to an executable but how will a person interact with it? 22:46 em: How do you interact with a racket program when it isn't 'running in drracket' ? 23:29 (join) jonrafkind 23:36 (join) kPb_in 23:39 (join) hussaibi 23:39 (quit) cb`: Ping timeout: 264 seconds 23:41 (quit) kPb_in: Quit: kPb_in 23:54 (quit) jao: Ping timeout: 240 seconds 23:55 offby1: em: you could have it read from stdin, or maybe the "console", or listen on a socket