--- Log opened Thu Jun 09 00:00:53 2011 00:01 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has quit [Ping timeout: 255 seconds] 00:04 < _nil> hey andrew 00:05 -!- tvw [~tv@e176006185.adsl.alicedsl.de] has quit [Remote host closed the connection] 00:08 < _nil> adg: working on finishing up go for jslinux stuffs 00:08 < _nil> it's a mess. 00:10 < skelterjohn> why does jslinux exist? 00:12 < _nil> ? 00:12 < _nil> seriously? 00:13 < _nil> i'm way to sick to answer that atm 00:13 < _nil> haha 00:13 -!- niemeyer [~niemeyer@201-40-174-53.pltce701.dsl.brasiltelecom.net.br] has quit [Ping timeout: 240 seconds] 00:13 -!- niemeyer [~niemeyer@201-11-242-14.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 00:14 -!- bmizerany [~bmizerany@204.14.152.118] has quit [Remote host closed the connection] 00:15 -!- mehalelal [~mehalelal@76.103.175.11] has joined #go-nuts 00:24 -!- foocraft_ [~ewanas@89.211.214.224] has quit [Quit: Leaving] 00:27 -!- dfc [~dfc@eth59-167-133-99.static.internode.on.net] has joined #go-nuts 00:29 -!- shvntr [~shvntr@119.121.31.56] has quit [Quit: leaving] 00:32 -!- xash [~xash@d025196.adsl.hansenet.de] has quit [Quit: Lost terminal] 00:33 -!- robteix [~robteix@host16.190-230-219.telecom.net.ar] has quit [Quit: Leaving...] 00:34 -!- robteix [~robteix@host16.190-230-219.telecom.net.ar] has joined #go-nuts 00:35 -!- SirPsychoS [~sp@64.80.128.39] has joined #go-nuts 00:37 < SirPsychoS> Is the lack of dynamic linking in the Go compiler/tools a conscious decision based on the sorts of things described here: http://harmful.cat-v.org/software/dynamic-linking/ ? 00:39 < SirPsychoS> (especially since Rob Pike, author of the first anti-dynamic-linking post on that page, is one of the main people behind Go) 00:46 < str1ngs> SirPsychoS: I think you are taking that out of context 00:46 < str1ngs> SirPsychoS: please see http://golang.org/doc/go_faq.html#Why_is_my_trivial_program_such_a_large_binary 00:47 -!- aat [~aat@cpe-72-225-174-173.nyc.res.rr.com] has quit [Quit: Computer has gone to sleep.] 00:47 -!- franciscosouza [~francisco@187.105.21.125] has quit [Read error: Connection reset by peer] 00:47 < str1ngs> SirPsychoS: which is under Implementation. if you would like some limited dynamic linking support you can use gccgo 00:47 < str1ngs> which is another implementation if you will 00:47 -!- chomp [~chomp@c-67-186-35-69.hsd1.pa.comcast.net] has joined #go-nuts 00:48 < SirPsychoS> str1ngs: I'm not asking for dynamic linking - in fact after reading around I'm becoming monotonically more convinced that it's not a good thing 00:48 -!- franciscosouza [~francisco@187.105.21.125] has joined #go-nuts 00:48 < str1ngs> understand 00:48 < str1ngs> I* 00:48 < SirPsychoS> (previously I was perfectly unopinionated on it, other than the default "oh, it's everywhere, so it must be fine") 00:49 -!- aat [~aat@cpe-72-225-174-173.nyc.res.rr.com] has joined #go-nuts 00:51 < skelterjohn> imagine everything in /usr/bin built with static linking 00:51 < str1ngs> I'm not really for or against either. but It's quite possible that as the language matures static binaries my not scale that well 00:51 < skelterjohn> how big would that directory be? 00:52 < chomp> but i want 5000 copies of libc 00:52 < SirPsychoS> skelterjohn: there _would_ be a lot of duplication - but apparently Plan9's cat (statically linked) weighs in at 22K compared to GNU dymically linked cat at 20K 00:53 < skelterjohn> cat is not an awesome example 00:53 < SirPsychoS> chomp: only the code you actually use gets copied into the binary in static linking 00:53 < skelterjohn> it doesn't really need much in the way of libs 00:53 < SirPsychoS> skelterjohn: very true 00:53 < chomp> SirPsychoS, aye, was just kidding. i like static linking 00:53 < SirPsychoS> k 00:53 < skelterjohn> i think static linking is a good thing, and i don't mind even having it as the default 00:54 < chomp> releasing a dynamically linked windows app can be a nightmare 00:54 < SirPsychoS> skelterjohn: also, GNU cat has way more {feature bloat, useful things} than plan9 cat 00:54 < skelterjohn> but (i believe) either go will always be experimental, or it will get dynamic linking one day 00:54 -!- Tv [~Tv@ip-66-33-206-8.dreamhost.com] has quit [Ping timeout: 255 seconds] 00:55 < SirPsychoS> I feel like dynamic linking could be made non-evil, if a few geniuses threw themselves behind a good implementation 00:55 < SirPsychoS> but I'm getting the impression that everything we have right now is voodoo magic 00:57 < skelterjohn> doesn't seem very voodooey to me 00:57 < skelterjohn> not doing things like dynamic linking keeps it very simple 00:58 -!- iant [~iant@67.218.107.72] has quit [Quit: Leaving.] 00:59 < SirPsychoS> I meant the current implementation of dynamic linking 01:00 < skelterjohn> oh gotcha 01:00 < SirPsychoS> yeah there's no voodoo in Go whatsoever 01:00 < SirPsychoS> that's why I love it 01:04 -!- rcrowley [~rcrowley@208.106.28.36] has quit [Quit: Computer has gone to sleep.] 01:10 -!- Tv [~Tv@cpe-76-168-227-45.socal.res.rr.com] has joined #go-nuts 01:11 -!- chomp [~chomp@c-67-186-35-69.hsd1.pa.comcast.net] has quit [Quit: Leaving] 01:21 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit: hcatlin] 01:23 -!- dj2 [~dj2@CPE001f5b35feb4-CM0014048e0344.cpe.net.cable.rogers.com] has joined #go-nuts 01:30 -!- mehalelal [~mehalelal@76.103.175.11] has quit [Remote host closed the connection] 01:41 -!- Bigbear1 [~Cody@d173-181-43-12.abhsia.telus.net] has joined #go-nuts 01:43 -!- aat [~aat@cpe-72-225-174-173.nyc.res.rr.com] has quit [Quit: Computer has gone to sleep.] 01:48 -!- Zoopee [alsbergt@zoopee.org] has quit [Ping timeout: 252 seconds] 01:51 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has joined #go-nuts 02:02 < tav> jnwhiteh: sorry, hadn't noticed it wasn't being synced. usually, some people email me and i tend to fix it. thanks for the heads up! it's running again now 02:04 -!- niemeyer [~niemeyer@201-11-242-14.pltce701.dsl.brasiltelecom.net.br] has quit [Ping timeout: 240 seconds] 02:08 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has quit [Read error: Operation timed out] 02:12 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has joined #go-nuts 02:20 -!- Tv [~Tv@cpe-76-168-227-45.socal.res.rr.com] has quit [Ping timeout: 255 seconds] 02:25 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has joined #go-nuts 02:30 -!- skelterjohn [~jasmuth@c-24-0-2-70.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] 02:55 -!- robteix [~robteix@host16.190-230-219.telecom.net.ar] has quit [Quit: Leaving...] 02:57 -!- Bigbear1 [~Cody@d173-181-43-12.abhsia.telus.net] has left #go-nuts [] 03:11 -!- abrookins [~abrookins@c-76-105-144-173.hsd1.or.comcast.net] has joined #go-nuts 03:15 -!- chaos95 [chaos95@mafianode.com] has quit [Remote host closed the connection] 03:16 -!- ptrb [~peter@archimedes.bourgon.org] has quit [Ping timeout: 244 seconds] 03:16 < manveru> anybody around who can help me with bit fiddling? 03:16 -!- chaos95 [~chaos95@mafianode.com] has joined #go-nuts 03:16 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping timeout: 255 seconds] 03:17 < manveru> i've got a []int8 slice and need to extract data from that 03:19 < manveru> http://tools.ietf.org/html/rfc1035#section-4.1.1 03:19 < manveru> that's the layout 03:20 < manveru> so to get the id, i use `var id int32; err = binary.Read(reader, binary.LittleEndian, &id)` 03:20 < manveru> uh, that should be int16... 03:21 < manveru> maybe uint16 even 03:21 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts 03:22 -!- whitespacechar [~whitespac@24-247-159-7.dhcp.klmz.mi.charter.com] has joined #go-nuts 03:22 < manveru> but for the next data, i think i need something like bitmasks 03:22 < manveru> or is there a more straight-forward way to read a single bit as an int? 03:23 < kevlar> hey. give me a sec to read up. 03:23 < manveru> sure :) 03:23 < kevlar> okay, so for one, don't use int* for bit twiddling 03:23 < kevlar> sign bits are nasty 03:24 < manveru> i switched to uint16 03:24 < kevlar> works 03:24 < manveru> can't be negative anyway 03:24 < kevlar> well, it's doing shifts and masks with sign extension that gets nasty 03:25 < kevlar> you can assign to a signed int later if the value itself is supposed to be signed and do the sign conversion yourself if it's a bigger int than the value. 03:25 -!- ptrb [~peter@archimedes.bourgon.org] has joined #go-nuts 03:25 < manveru> right 03:25 < manveru> is using encoding/binary the right way to read this in the first place? 03:25 < kevlar> so, actually, I would personally read in a [6*2]uint8 03:26 < kevlar> ID isn't an integer, so you don't really want/need encoding/binary 03:27 < manveru> ok 03:28 -!- keithcascio [~keithcasc@nat/google/x-odmhkbsnufsnzddl] has quit [Quit: Leaving] 03:29 < manveru> but to get QR? 03:30 -!- Transformer [~Transform@ool-4a59e397.dyn.optonline.net] has joined #go-nuts 03:30 < manveru> i assume i have to get that with encoding/binary and shr 7? 03:30 < manveru> in an uint8 03:32 < manveru> but i was thinking i need masks since i don't know how to get opcode using shifts 03:33 -!- Transformer [~Transform@ool-4a59e397.dyn.optonline.net] has left #go-nuts [] 03:33 < kevlar> I'd go with something like this: 03:33 < kevlar> https://gist.github.com/1016001 03:34 < manveru> uhm 03:34 < manveru> they're bits, not bytes 03:34 < manveru> one line in the diagram is 16 bit 03:35 -!- Cork[home] [Cork@firefox/community/cork] has quit [Disconnected by services] 03:35 -!- unCork[home] [Cork@h83n1c1o1042.bredband.skanova.com] has joined #go-nuts 03:35 < manveru> unless i missed the way your code works 03:36 < kevlar> refresh 03:36 < kevlar> we're not making a bitmapped struct like in C, you just want to make the most efficient use of your memory 03:37 < kevlar> the things that aren't byte-aligned just get extracted. 03:37 -!- abrookins [~abrookins@c-76-105-144-173.hsd1.or.comcast.net] has quit [Quit: Textual IRC Client: http://www.textualapp.com/] 03:37 < manveru> oh, k 03:38 < kevlar> oh, I added in the last flag. I thought there were more, lol. 03:38 < manveru> and another thing 03:38 < kevlar> what's this decoding, anyway? 03:38 < kevlar> doesn't Go already have DNS? 03:39 < manveru> it's for a tiny dnsd i need 03:39 < manveru> hm, no idea 03:40 < |Craig|> http://golang.org/src/pkg/net/dnsmsg.go 03:41 < manveru> wow 03:41 < |Craig|> see the net package for docs and some other stuff: http://golang.org/pkg/net/ 03:42 < manveru> would be neat to have that in a separate package 03:43 < manveru> it doesn't show up in the net docs at all 03:44 < manveru> it's all private 03:45 < manveru> wtf 03:45 < kevlar> manveru: those are used for the Lookup* functions 03:45 < manveru> yeah 03:45 < manveru> but they even say in the docs that this should be its own package 03:46 < kevlar> write up a CL :D 03:46 < manveru> common lisp? 03:46 < kevlar> change list. 03:47 < manveru> what's that? 03:47 < kevlar> you make a change to the Go source and then the changes get gathered up and sent to the developers for review, and if they like it they include it. (there's some back-and-forth in between that's been elided for brevity) 03:47 < manveru> oh, a patch? 03:48 < kevlar> more or less 03:48 < kevlar> (more, actually.) 03:48 < kevlar> it includes the files, descriptions of the change, reviewers, and then comments go back and forth from the code review server and you can make changes to your changes. 03:48 < manveru> meh, can't they just use github :P 03:49 < kevlar> googlecode, actually. 03:49 < kevlar> and reitveld for code reviews. 03:49 < kevlar> getting pull requests from all of the developers on github would be impossible. 03:50 < manveru> yeah, i'll just file an issue and let them do it 03:50 < dforsyth> last night i asked if something like func fn(p structT) *structT { return &p } is safe and someone told me they thought it was 03:50 < kevlar> that probably means it won't get done, lol 03:50 < manveru> http://golang.org/doc/contribute.html looks just crazy 03:50 < kevlar> dforsyth: it depends what you mean by safe 03:51 < kevlar> the struct you're addressing won't get garbage collected, if that's what you're asking 03:51 < dforsyth> kevlar: as in, can i rely on the returned pointer forever. i assume no 03:51 < kevlar> but you can't use the returned pointer in more than one goroutine without locking it. 03:51 < manveru> dforsyth: as long as you have the pointer, the object you point to won't be GC'd 03:52 < dforsyth> so that copy is not on the stack, its allocated and left to be cleaned up by the gc? 03:52 < kevlar> technically it's neither 03:52 < manveru> :) 03:52 -!- ExtraSpice [XtraSpice@78-57-204-104.static.zebra.lt] has joined #go-nuts 03:53 < kevlar> the reference is collected in the closure, which points to the struct, so it won't be garbage collected until all instances of the closure are collected 03:53 < kevlar> as well as all of the references you got by calling the closure 03:53 < kevlar> basically, everything you allocate is left on the heap 03:53 < kevlar> the only time it isn't is when it's allocated and its address is never taken 03:54 < dforsyth> so if i was to call this like: p := fn(s), i would get a copy of s that would be reliable? 03:54 < kevlar> of course. 03:54 < kevlar> Unless you're using cgo or unsafe, never worry about the GC deleting something you're using. 03:55 -!- message144 [~message14@pool-98-112-179-26.lsanca.fios.verizon.net] has quit [Quit: gone] 03:55 < kevlar> just trust. 03:55 < dforsyth> well i was more worried about losing it to teh stack after returning from the function 03:56 < kevlar> like I said 03:56 < kevlar> don't worry about it. 03:56 < dforsyth> :) 03:56 < kevlar> If you're using it, no matter how you get it, it will work. 03:56 < kevlar> It's not like C. 03:56 < dforsyth> which is where im getting my reference from 03:56 < dforsyth> cool 03:56 < dforsyth> i am happy \o/ 03:56 -!- aat [~aat@cpe-72-225-174-173.nyc.res.rr.com] has joined #go-nuts 03:58 < dforsyth> thanks kevlar 03:58 < kevlar> no problem :) 03:59 < |Craig|> dforsyth: as long as you don't use the unsafe package, or have concurrent reads and writes things containing pointers, you will have memory safety 04:00 < kevlar> |Craig|: also, cgo. 04:02 < |Craig|> and hardware failure... 04:03 < dforsyth> im just sort of weirded out because im not explicitly allocating this 04:03 < dforsyth> how does go know not to put this on the stack? 04:03 < |Craig|> dforsyth: its clever :) 04:03 < |Craig|> anything you take the address of gets heap allocated I think 04:03 < dforsyth> fancy 04:04 < |Craig|> not performance optimal in all cases, but it will never cause memory safty issue 04:04 < dforsyth> i dig it 04:08 -!- bytbox [~s@96.26.105.154] has quit [Read error: Connection reset by peer] 04:08 -!- bytbox [~s@96.26.105.154] has joined #go-nuts 04:10 -!- rejb [~rejb@unaffiliated/rejb] has quit [Disconnected by services] 04:10 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts 04:13 -!- SirPsychoS [~sp@64.80.128.39] has quit [Ping timeout: 260 seconds] 04:19 -!- abrookins [~abrookins@c-76-105-144-173.hsd1.or.comcast.net] has joined #go-nuts 04:26 -!- whitespacechar [~whitespac@24-247-159-7.dhcp.klmz.mi.charter.com] has quit [Quit: whitespacechar] 04:31 -!- elimisteve [~elimistev@ec2-50-16-219-29.compute-1.amazonaws.com] has quit [Remote host closed the connection] 04:33 -!- elimisteve [~elimistev@ec2-50-16-219-29.compute-1.amazonaws.com] has joined #go-nuts 04:37 -!- boscop [~boscop@f055129094.adsl.alicedsl.de] has quit [Ping timeout: 255 seconds] 04:38 -!- boscop [~boscop@unaffiliated/boscop] has joined #go-nuts 04:47 -!- abrookins [~abrookins@c-76-105-144-173.hsd1.or.comcast.net] has quit [Quit: Computer has gone to sleep.] 04:47 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has quit [Ping timeout: 240 seconds] 04:47 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts 04:47 -!- mode/#go-nuts [+v iant] by ChanServ 04:48 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping timeout: 252 seconds] 04:53 < jessta_> dforsyth: you'll notice that Go doesn't actually have the concepts of a stack and heap 04:54 < vsmatck> Go people should just forget about heap vs stack. It's going to depend on how smart the compiler is and if you care about that level of performance you should use C++. 04:54 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts 04:54 * vsmatck goes to sleep. 04:55 -!- alc [~arx@222.128.151.100] has joined #go-nuts 04:56 < jessta_> there is a call stack, but in terms of data there is no mention of heap and stack in the spec 04:56 -!- edsrzf [~edsrzf@122-61-221-144.jetstream.xtra.co.nz] has joined #go-nuts 04:56 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has joined #go-nuts 04:59 -!- alc [~arx@222.128.151.100] has quit [Remote host closed the connection] 05:00 -!- rputikar [~240182H@134.7.204.73] has joined #go-nuts 05:00 -!- rputikar [~240182H@134.7.204.73] has quit [Client Quit] 05:02 -!- alc [~arx@222.128.151.100] has joined #go-nuts 05:02 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Ping timeout: 258 seconds] 05:03 -!- iant [~iant@216.239.45.130] has joined #go-nuts 05:03 -!- mode/#go-nuts [+v iant] by ChanServ 05:03 -!- alc [~arx@222.128.151.100] has quit [Client Quit] 05:05 -!- alc [~arx@222.128.151.100] has joined #go-nuts 05:05 -!- alc [~arx@222.128.151.100] has quit [Client Quit] 05:05 -!- moraes [~moraes@189.103.188.201] has quit [Ping timeout: 250 seconds] 05:06 -!- moraes [~moraes@189.103.188.201] has joined #go-nuts 05:06 -!- alc [~arx@222.128.151.100] has joined #go-nuts 05:07 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has joined #go-nuts 05:21 -!- danilo04 [~danilo04@66.44.228.140] has joined #go-nuts 05:21 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has quit [Read error: Connection reset by peer] 05:22 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has joined #go-nuts 05:26 -!- danilo04 [~danilo04@66.44.228.140] has quit [Ping timeout: 240 seconds] 05:29 < meatmanek> dforsyth: donut-force? 05:54 < dforsyth> meatmanek: i am 05:55 < meatmanek> funny running into you here 05:55 < dforsyth> not really 05:55 < dforsyth> who are you. 05:55 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 05:55 < meatmanek> Evan Krall 05:56 < dforsyth> jessta_: from "go for cpp programmers": "Go has a builtin function new which takes a type and allocates space on the heap" 05:56 < dforsyth> stop following me evan 05:56 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has quit [Remote host closed the connection] 05:57 -!- crashR [~crasher@codextreme.pck.nerim.net] has joined #go-nuts 06:10 < jessta_> dforsyth: but that's not in the spec, new() isn't required to do that 06:11 < jessta_> new() could allocate space anywhere 06:11 < meatmanek> it couldn't realistically allocate space on the stack 06:12 < jessta_> it could if the allocation doesn't escape 06:15 < dforsyth> jessta_: yeah, i get what you're saying. i was just sort of making assumptions from previous knowledge. i dont have a problem with the way any of this works, i just wanted to make sure the stuff i had played around with was actually working and i wasnt just getting lucky 06:17 -!- aat [~aat@cpe-72-225-174-173.nyc.res.rr.com] has quit [Quit: Computer has gone to sleep.] 06:18 < jessta_> just pointing out that the reason it works is that the spec gives no reason why it shouldn't work 06:18 -!- vpit3833 [~user@203.111.33.203] has quit [Remote host closed the connection] 06:19 -!- Loonacy [~zephyros@Loonacy.broker.freenet6.net] has quit [Ping timeout: 260 seconds] 06:28 -!- Loonacy [~zephyros@Loonacy.broker.freenet6.net] has joined #go-nuts 06:36 -!- noodles775 [~michael@e178252125.adsl.alicedsl.de] has joined #go-nuts 06:36 -!- noodles775 [~michael@e178252125.adsl.alicedsl.de] has quit [Changing host] 06:36 -!- noodles775 [~michael@canonical/launchpad/noodles775] has joined #go-nuts 06:40 -!- rputikar [~240182H@203-206-21-179.dyn.iinet.net.au] has joined #go-nuts 06:41 -!- bytbox [~s@96.26.105.154] has quit [Remote host closed the connection] 06:44 -!- photron [~photron@port-92-201-79-87.dynamic.qsc.de] has joined #go-nuts 06:49 -!- alehorst [~alehorst@187.58.246.160] has quit [Quit: Leaving.] 06:58 -!- piranha [~piranha@D57D1AB3.static.ziggozakelijk.nl] has joined #go-nuts 07:05 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.5] 07:07 -!- tvw [~tv@212.79.9.150] has joined #go-nuts 07:08 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|] 07:09 -!- rputikar [~240182H@203-206-21-179.dyn.iinet.net.au] has quit [Quit: rputikar] 07:12 -!- ronnyy [~quassel@p4FF1C419.dip0.t-ipconnect.de] has joined #go-nuts 07:14 -!- ronnyy [~quassel@p4FF1C419.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 07:16 -!- segy [~segfault@pdpc/supporter/active/segy] has quit [Ping timeout: 276 seconds] 07:17 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-168-114.clienti.tiscali.it] has joined #go-nuts 07:34 -!- harblcat [harblcat@c-76-23-80-99.hsd1.in.comcast.net] has joined #go-nuts 07:35 -!- Nisstyre [~nisstyre@109.74.204.224] has quit [Remote host closed the connection] 07:41 -!- fvbommel [~fvbommel_@86.86.15.250] has quit [Ping timeout: 276 seconds] 07:47 -!- prip [~foo@host92-220-dynamic.45-79-r.retail.telecomitalia.it] has quit [Ping timeout: 260 seconds] 07:49 -!- squeese [~squeese@cm-84.209.17.156.getinternet.no] has joined #go-nuts 07:57 -!- harblcat [harblcat@c-76-23-80-99.hsd1.in.comcast.net] has left #go-nuts [] 08:07 -!- noodles775 [~michael@canonical/launchpad/noodles775] has quit [Ping timeout: 260 seconds] 08:09 -!- noodles775 [~michael@canonical/launchpad/noodles775] has joined #go-nuts 08:16 -!- marko__ [~marko@marko.isti.cnr.it] has joined #go-nuts 08:16 -!- noodles775 [~michael@canonical/launchpad/noodles775] has quit [Ping timeout: 250 seconds] 08:18 -!- mikespook1 [~mikespook@219.137.255.110] has quit [Quit: Leaving.] 08:18 -!- noodles775 [~michael@g225132174.adsl.alicedsl.de] has joined #go-nuts 08:18 -!- noodles775 [~michael@g225132174.adsl.alicedsl.de] has quit [Changing host] 08:18 -!- noodles775 [~michael@canonical/launchpad/noodles775] has joined #go-nuts 08:21 -!- dfc [~dfc@eth59-167-133-99.static.internode.on.net] has quit [Ping timeout: 255 seconds] 08:29 -!- edwin [~edwin@79.114.67.91] has joined #go-nuts 08:31 < edwin> hi, is it a known bug that gccgo doesn't compile the last example in effective go? 08:31 < edwin> http://paste.debian.net/119282/ 08:31 < edwin> is it a bug in the example, or a bug in gccgo? 08:32 < str1ngs> edwin: what version of gccgo? 08:32 < str1ngs> 4.6? 08:33 < edwin> 4.6.1 08:33 < edwin> gcc version 4.6.1 20110604 (prerelease) (Debian 4.6.0-11) 08:34 < edwin> I think thats the latest, isn't it? 08:35 < str1ngs> yes but it probably lags behind the 4.7 snapshot. which seems to have more upto date stdlib 08:38 < edwin> ah its using a different stdlib than golang? 08:39 < edwin> so should I use 6g/6l while learning Go, and wait for gccgo 4.7 to start using gccgo? 08:39 < str1ngs> no same just lags behind some. there are some tweaks but not many 08:39 < str1ngs> gc otherwise know as 6g is always more upto date 08:41 < edwin> ok, will use that and come back to gccgo later 08:41 -!- wrtp [~rog@92.23.127.186] has joined #go-nuts 08:41 < str1ngs> I have a package for gcc 4.7 but wont help you much its for archlinux 08:42 < edwin> does it compile that code correctly? 08:42 < str1ngs> not sure I need to rebuild that package. but my guess is it would 08:43 < uriel> edwin: you might want to check with iant, he is usually around here 08:44 < str1ngs> edwin: if you get the source for 4.6.1 and check the libgo/MERGE . it will give you an idea 08:45 -!- araujo [~araujo@gentoo/developer/araujo] has joined #go-nuts 08:45 < str1ngs> edwin: the MERGE contains the sha1 from the go hg repo its synced from 08:46 < edwin> 559f12e8fcd5 08:46 < str1ngs> so around January 08:47 < str1ngs> which in go terms is along time ago :P 08:47 < vegai> why not use 6g/6l and not gcc at all? :P 08:47 < edwin> thats what I'll do for now, but I was also curious about how fast/slow Go is 08:48 < edwin> where I'd expect gcc to be better 08:48 < vegai> what are coding, if I may ask? 08:50 < edwin> I just started reading the tutorial 08:50 -!- virtualsue [~chatzilla@nat/cisco/x-wojgnparaeaoobag] has joined #go-nuts 08:50 < edwin> so really just trying out what Go can do, and what its good for 08:50 < squeese> tutorial now, singularity next!! 08:51 < edwin> btw the various docs/tutorials could use some syntax highlighting for the Go code, or at least making the keywords/braces etc. bold to make it easier to "visually parse" 08:52 < edwin> does godoc support that? 08:52 < str1ngs> edwin: 4.7 is sync to around May 09 08:52 < str1ngs> so its quite abit closer to gc 08:53 < str1ngs> edwin: syntax highlighting no 08:54 < str1ngs> you could possibly make your own filter though. I just got use to using at is 08:55 -!- micrypt [~micrypt@02ddac93.bb.sky.com] has quit [Ping timeout: 240 seconds] 08:58 -!- Paradox924X [~Paradox92@vaserv/irc/founder] has quit [Ping timeout: 244 seconds] 09:03 -!- fvbommel [~fvbommel_@131.155.71.82] has joined #go-nuts 09:04 < edwin> yikes, Go's http server just crashed on the wiki tutorial 09:04 < edwin> http://paste.debian.net/119286/ 09:05 < edwin> thats with 2011.06.02 version 09:05 < edwin> http://paste.debian.net/119287/ 09:05 < edwin> and with golang 57.1 09:09 < str1ngs> ie http://localhost:8080/doc/codelab/wiki ? 09:09 < str1ngs> that the right link? 09:13 < edwin> http://golang.org/doc/codelab/wiki/ 09:13 < edwin> "Using http to serve wiki pages" 09:13 < edwin> http://golang.org/doc/codelab/wiki/part2.go 09:14 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 09:14 < str1ngs> I'm useing tip doesnt crash here 09:15 < str1ngs> well panic I should say :P 09:15 < edwin> panics when I go to http://localhost:8080/view/test 09:15 < edwin> echo "Hello world" > test.txt 09:15 < edwin> and did that too 09:15 < edwin> with 6g btw, not 8g 09:15 < str1ngs> this is your own code? 09:16 < str1ngs> main.viewHandler /home/edwin/gotut/wiki/wiki.go:34 09:17 < edwin> wiki.go is part2.go 09:17 < edwin> let me try using exactly part2.go 09:17 < str1ngs> p, _ := loadPage(title) 09:18 < str1ngs> change that to p, err := loadPage(title) 09:18 < edwin> ok, remove test.txt from the directory 09:18 < edwin> and then it panics 09:18 < edwin> if test.txt is there it doesn't 09:18 -!- mnemoc [~amery@shell.opensde.net] has joined #go-nuts 09:18 < str1ngs> read what I said 09:18 < str1ngs> then check err 09:19 < str1ngs> p, err := loadPage(title); if err != nil { fmt.Fprintf(w,err.String()); return } 09:19 < edwin> os.PathError open test.txt: no such file or directory 09:19 < str1ngs> something like that 09:20 < edwin> ok so it was lack of error checking in this part of tutorial (guess it adds eror checking later) 09:20 < str1ngs> possibly or its left out for simplicty 09:21 < str1ngs> rule of thumb for you though. is alwasy handle err :P 09:21 < edwin> yep :) 09:21 < edwin> so that runtime panic is just like a NullPointerException in Java 09:21 < edwin> its not a bug in Go 09:22 < edwin> its a bug in the program 09:22 < str1ngs> its not a bug no 09:22 < str1ngs> you can handle panics. but generally the come from things like this were something is nil. where a err is not being handled 09:23 < str1ngs> you will get use to it. 09:25 < edwin> yeah will probably have to handle it for a real webapp 09:25 < edwin> so a panicing page doesn't take down entire server 09:25 < str1ngs> right see recover for that 09:26 < str1ngs> recover* 09:26 < str1ngs> but like I said if you handle err properly its rare you will get them. 09:29 < mpl> edwin: adg addressed that issue (on how to handle those errors) in there: http://golang.org/doc/talks/io2011/Writing_Web_Apps_in_Go.pdf 09:30 < edwin> thanks 09:30 < mpl> basically he panics everywhere there's an error and then send that to a wrapping func that checks if it can be recovered or not. 09:32 < mpl> edwin: it's exactly what I did for my app with those changes: http://code.google.com/p/gogallery/source/detail?r=c0357e0e2edad395080d534d3edd3794da03cee2 09:36 < str1ngs> mpl: http://code.google.com/p/gogallery/source/browse/main.go#375 you declare err further up. and I guess db somewhere else? 09:38 < str1ngs> http://code.google.com/p/gogallery/source/browse/sql.go#15 09:38 < str1ngs> mpl: ya so there both declared already. why you cant use :+ 09:38 < str1ngs> := 09:39 < str1ngs> you might have figured that out. just stumbled on the comment 09:39 < mpl> hmm 09:39 < mpl> that seems obvious but at the time I wrote it I think something else was bothering me 09:40 < mpl> ah yes now I remember 09:40 < str1ngs> http://code.google.com/p/gogallery/source/browse/main.go#367 err is declared there 09:40 < mpl> str1ngs: I declared err above _because_ I got an error when trying to use :=, not the other way around. 09:40 < str1ngs> right 09:41 < str1ngs> sometimes you have to declare like that it is rare though 09:41 < mpl> so my question still stands 09:43 -!- kevlar [~kevlar@unaffiliated/eko] has quit [Quit: This computer has gone to sleep] 09:43 < mpl> if I comment out the err declaration and try to use := below, I'll get an error, that's what I don't get. 09:43 < str1ngs> because db is already declared 09:44 < mpl> so what, I thought as long as at least one of them was not, one could use :=, no? 09:46 < str1ngs> tends to be the case but not always. 09:46 < str1ngs> scope can be a factor also 09:47 < str1ngs> I cant seem to replicate it in a simple test ;( 09:48 < mpl> yeah nm. I try not to use := with multiple vars anymore anyway, shadowing is too dangerous imho. 09:49 < str1ngs> ya might be for the best. but there are case where you cant use := anyways just cant thing of a better situation 09:50 < str1ngs> I'll be falling asleep and something will come to mind watch :P 09:57 -!- shvntr [~shvntr@119.121.31.56] has joined #go-nuts 10:04 -!- sacho [~sacho@90.154.206.145] has joined #go-nuts 10:14 -!- franciscosouza [~francisco@187.105.21.125] has quit [Read error: Connection reset by peer] 10:15 -!- dfc [~dfc@124-149-49-45.dyn.iinet.net.au] has joined #go-nuts 10:18 -!- edsrzf [~edsrzf@122-61-221-144.jetstream.xtra.co.nz] has quit [Remote host closed the connection] 10:20 -!- prip [~foo@host80-120-dynamic.42-79-r.retail.telecomitalia.it] has joined #go-nuts 10:21 -!- napsy [~luka@88.200.96.18] has quit [Ping timeout: 244 seconds] 10:24 -!- franciscosouza [~francisco@187.105.21.125] has joined #go-nuts 10:35 -!- napsy [~luka@193.2.66.6] has joined #go-nuts 10:41 -!- Sisten [~Sisten@s213-103-208-147.cust.tele2.se] has joined #go-nuts 10:51 -!- whitespacechar [~whitespac@24-247-159-7.dhcp.klmz.mi.charter.com] has joined #go-nuts 10:53 -!- alehorst [~alehorst@187.58.246.160] has joined #go-nuts 11:10 -!- jemeshsu [~jemeshsu@bb220-255-88-127.singnet.com.sg] has quit [Quit: jemeshsu] 11:19 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has quit [Remote host closed the connection] 11:34 -!- sacho [~sacho@90.154.206.145] has quit [Read error: Connection reset by peer] 11:36 -!- tncardoso [~thiago@189.59.160.5] has joined #go-nuts 11:39 -!- squeese [~squeese@cm-84.209.17.156.getinternet.no] has quit [Remote host closed the connection] 11:44 -!- creack [~charme_g@163.5.84.203] has quit [Ping timeout: 246 seconds] 11:49 -!- segy [~segfault@mail.hasno.info] has joined #go-nuts 11:49 -!- segy [~segfault@mail.hasno.info] has quit [Changing host] 11:49 -!- segy [~segfault@pdpc/supporter/active/segy] has joined #go-nuts 11:58 -!- creack [~charme_g@163.5.84.203] has joined #go-nuts 12:03 < xyproto> wrtp: thanks a lot for the tip about the CIE colorspace and the updated color-mix code. I'll take a look at both :) 12:06 < wrtp> xyproto: having read a bit more about it, i'm no longer sure about the CIE colorspace... 12:07 < wrtp> xyproto: as the reply to your stackoverflow question says, there's not really a good way of doing what you're after 12:07 < wrtp> blue + yellow does not mix to green... 12:08 < wrtp> (even with paint) 12:08 < wrtp> what are you trying to do anyway? 12:12 -!- XenoPhoenix [~Xeno@cpc13-aztw24-2-0-cust23.aztw.cable.virginmedia.com] has quit [Quit: "Wait... what?!"] 12:17 -!- franciscosouza [~francisco@187.105.21.125] has quit [Read error: Connection reset by peer] 12:17 -!- skelterjohn [~jasmuth@c-24-0-2-70.hsd1.nj.comcast.net] has joined #go-nuts 12:18 -!- rputikar [~240182H@203-206-21-179.dyn.iinet.net.au] has joined #go-nuts 12:19 -!- franciscosouza [~francisco@187.105.21.125] has joined #go-nuts 12:26 < xyproto> wrtp: blue + yellow does mix to green with paint, I can give you a link to a (cheesy) youtube-video 12:29 < xyproto> wrtp: I didn't find the one I had in mind, but here's another, demonstrating the mixing of blue and yellow: http://www.youtube.com/watch?v=NYwvCbaGzKc 12:31 < xyproto> wrtp: I'm trying to make a program in Go, for my little sister, who has just completed a master in visual arts. 12:33 -!- replore [~replore@ntkngw256114.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #go-nuts 12:34 < wrtp> xyproto: it's not pure green though - it's a bit muddy, as the guy on stackoverflow said 12:35 < xyproto> wrtp: yes, that is true 12:35 < xyproto> wrtp: (still some sort of green, though) 12:36 < wrtp> maybe that's a bit pedantic, but if you're trying to simulate paint mixing, it's important 12:36 < wrtp> i don't know "somewhere between average and max" would end up at though :-) 12:36 < xyproto> wrtp: I guess so. I saw there was a mention of an algorithm that took into account how tiny particles in paint were reflected. It seemed hard to implement, though. 12:37 < wrtp> it would be :-) 12:37 -!- noodles775 [~michael@canonical/launchpad/noodles775] has quit [Ping timeout: 258 seconds] 12:38 -!- noodles775 [~michael@g225134025.adsl.alicedsl.de] has joined #go-nuts 12:38 -!- noodles775 [~michael@g225134025.adsl.alicedsl.de] has quit [Changing host] 12:38 -!- noodles775 [~michael@canonical/launchpad/noodles775] has joined #go-nuts 12:39 < ww> sanity check please: 12:39 < xyproto> wrtp: It's called the "Kubelka-Munk equations", and was implemented in Krita in 2007 12:40 < ww> given, type EnglishString string; type FrenchString string. 12:40 < ww> 1. is "chat" a string? 12:40 < xyproto> http://commit-digest.org/issues/2007-08-12/ 12:40 < ww> 2. is EnglishString("chat") a string? 12:40 < ww> 3. is FrenchString("chat") a string? 12:40 < ww> 4. is EnglishString("chat") == FrenchString("chat") 12:41 -!- franciscosouza [~francisco@187.105.21.125] has quit [Quit: franciscosouza] 12:41 < xyproto> ww: I would say yes to all of those :) (without having tested those specific lines of code) 12:42 < wrtp> 1. yes. 2. yes (but not of type string). 3. ditto. 4. they're of different types so you can't compare them 12:42 < ww> wrtp: that's what i think too 12:43 < wrtp> ww: for 2 and 3 you could say that the underlying type is string (similar to: type SomeInt int) 12:44 -!- photron [~photron@port-92-201-79-87.dynamic.qsc.de] has quit [Quit: Leaving] 12:44 < ww> sure, i 'm not really concerned about the go-specific details, more the intuition of programmers about the behaviour of these types of things 12:44 -!- squeese [~squeese@cm-84.209.17.156.getinternet.no] has joined #go-nuts 12:45 < ww> i'm discussing right now 2,3 and i've someone (a widely respected logician) trying to convince me that by adding some extra information (e.g. knowledge about the language, however encoded) that somehow FrenchString("chat") is a completely different and unrelated thing to "chat" 12:45 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.5] 12:46 < ww> which seems bogus to me. obviously they're different but not completely unrelated as long as french uses characters that can be put in a certain sequence... i.e. strings 12:48 < wrtp> well, you can index it, range on it, add string constants to it etc 12:49 < wrtp> i can have both french and english in the same sentence 12:50 -!- hcatlin [~hcatlin@c-24-127-228-41.hsd1.fl.comcast.net] has joined #go-nuts 12:50 -!- hcatlin [~hcatlin@c-24-127-228-41.hsd1.fl.comcast.net] has quit [Changing host] 12:50 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined #go-nuts 12:52 < wrtp> xyproto: that link looks exactly like what you're looking for... 12:53 < wrtp> xyproto: it'd be great if you could port that colour space code to go and make it available as a package. 12:54 -!- abrookins [~abrookins@c-76-105-144-173.hsd1.or.comcast.net] has joined #go-nuts 12:54 < xyproto> wrtp: yes, I want to make a colorspace package :) 12:56 -!- dfc [~dfc@124-149-49-45.dyn.iinet.net.au] has quit [Quit: Silly man, I am a Baron!] 12:56 < wrtp> xyproto: if you follow the way that i modified your code, it would fit nicely into the existing structure and be useable with all the other image stuff 13:01 < xyproto> wrtp: are you thinking for other systems than hsl as well? 13:05 -!- dfc [~dfc@124-149-49-45.dyn.iinet.net.au] has joined #go-nuts 13:08 -!- robteix [~robteix@nat/intel/x-mfuyczgrvnvskiot] has joined #go-nuts 13:08 -!- edwin [~edwin@79.114.67.91] has quit [Remote host closed the connection] 13:09 < wrtp> xyproto: i was thinking if you did that kubelka-monk colour space, it would a great. hsl is really just good for colour wheels. 13:09 < wrtp> s/a great/great/ 13:11 < mpl> s/a great/be great/ ? 13:12 < wrtp> yeah 13:14 -!- noodles775 [~michael@canonical/launchpad/noodles775] has quit [Ping timeout: 240 seconds] 13:14 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 13:17 -!- noodles775 [~michael@canonical/launchpad/noodles775] has joined #go-nuts 13:17 -!- niemeyer [~niemeyer@201-11-242-14.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 13:19 -!- franciscosouza [~francisco@201.7.186.67] has joined #go-nuts 13:21 -!- aat [~aat@rrcs-184-75-54-130.nyc.biz.rr.com] has joined #go-nuts 13:22 -!- iant [~iant@216.239.45.130] has quit [Ping timeout: 258 seconds] 13:24 -!- abrookins [~abrookins@c-76-105-144-173.hsd1.or.comcast.net] has quit [Quit: Textual IRC Client: http://www.textualapp.com/] 13:29 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has joined #go-nuts 13:30 < skelterjohn|work> morning 13:31 < ww> 'morning skelterjohn|work 13:33 -!- aat [~aat@rrcs-184-75-54-130.nyc.biz.rr.com] has quit [Ping timeout: 255 seconds] 13:33 -!- jbooth1 [~jay@209.249.216.2] has joined #go-nuts 13:34 -!- Stiletto [7f000001@69.195.144.4] has quit [Ping timeout: 252 seconds] 13:36 -!- alehorst [~alehorst@187.58.246.160] has quit [Quit: Leaving.] 13:36 -!- angasule_ [~angasule@190.2.33.49] has quit [Remote host closed the connection] 13:37 -!- alehorst [~alehorst@187.58.246.160] has joined #go-nuts 13:37 -!- napsy [~luka@193.2.66.6] has quit [Ping timeout: 260 seconds] 13:38 -!- Stiletto [7f000001@69.195.144.4] has joined #go-nuts 13:38 -!- iant [~iant@67.218.109.241] has joined #go-nuts 13:38 -!- mode/#go-nuts [+v iant] by ChanServ 13:40 -!- aat [~aat@rrcs-184-75-54-130.nyc.biz.rr.com] has joined #go-nuts 13:41 -!- irr [~irocha@200-221-128-52.corp.uolinc.com] has joined #go-nuts 13:42 -!- abrookin_ [~abrookins@c-76-105-144-173.hsd1.or.comcast.net] has joined #go-nuts 13:43 -!- abrookin_ [~abrookins@c-76-105-144-173.hsd1.or.comcast.net] has quit [Client Quit] 13:47 -!- angasule [~angasule@190.2.33.49] has joined #go-nuts 13:51 -!- napsy [~luka@88.200.96.18] has joined #go-nuts 13:54 -!- irr [~irocha@200-221-128-52.corp.uolinc.com] has quit [Remote host closed the connection] 13:55 -!- Venom_X [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has joined #go-nuts 14:05 < skelterjohn|work> huh - i actually have a good reason to use a linked list 14:05 < skelterjohn|work> first time that has happened in a while 14:19 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Read error: Operation timed out] 14:20 -!- Loonacy [~zephyros@Loonacy.broker.freenet6.net] has quit [Ping timeout: 260 seconds] 14:23 -!- kevlar [~kevlar@unaffiliated/eko] has joined #go-nuts 14:24 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts 14:29 -!- exch [~blbl@ip34-181-209-87.adsl2.static.versatel.nl] has quit [Ping timeout: 260 seconds] 14:31 -!- rcrowley [~rcrowley@c-71-202-44-233.hsd1.ca.comcast.net] has joined #go-nuts 14:34 -!- PortatoreSanoDiI [~Marvin@82.84.65.39] has joined #go-nuts 14:35 -!- fvbommel [~fvbommel_@131.155.71.82] has quit [Ping timeout: 276 seconds] 14:37 -!- dfc [~dfc@124-149-49-45.dyn.iinet.net.au] has quit [Quit: Silly man, I am a Baron!] 14:38 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has joined #go-nuts 14:38 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-168-114.clienti.tiscali.it] has quit [Ping timeout: 260 seconds] 14:43 -!- photron [~photron@92.201.79.87] has joined #go-nuts 14:44 < manveru> anybody used http.Client.Post ? 14:44 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit: hcatlin] 14:45 < manveru> according to tcpdump it doesn't send my body 14:46 -!- exch [~blbl@ip34-181-209-87.adsl2.static.versatel.nl] has joined #go-nuts 14:46 < ww> manveru: i've used the lower level http.Client.Do and constructed a post myself 14:47 -!- fvbommel [~fvbommel_@ip212-238-79-63.hotspotsvankpn.com] has joined #go-nuts 14:47 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts 14:48 < ww> here, for example, https://bitbucket.org/ww/gold/src/521430a6b45a/garlik/4store.go#cl-96 14:49 <+iant> another program named gold 14:49 < ww> iant: :) it's some sort of a contraction of geographical linked data 14:50 < manveru> hm 14:50 < ww> not my choice exactly, but not a bad choice :) 14:50 < manveru> what's the difference between []byte(foo) and []byte{foo} ? 14:51 < ww> the vormer is a type coercion, the second is an initialisation 14:51 < ww> s/initialisation/instantiation/ 14:52 < icey> is there a generally recommended postgresql library? (i've seen go-pgsql, pgsql.go and go-pg, but they seem to have around the same level of activity) 14:53 < manveru> ooh 14:53 < manveru> ok, got it :) 14:56 -!- pjacobs [~pjacobs@66.54.185.130] has joined #go-nuts 14:56 -!- i__ [~none@unaffiliated/i--/x-3618442] has quit [Quit: leaving] 14:57 -!- iant [~iant@67.218.109.241] has quit [Quit: Leaving.] 14:57 -!- robteix [~robteix@nat/intel/x-mfuyczgrvnvskiot] has quit [Quit: Leaving] 14:57 -!- i__ [~none@unaffiliated/i--/x-3618442] has joined #go-nuts 14:59 -!- Venom_X [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has quit [Ping timeout: 252 seconds] 15:02 -!- fvbommel [~fvbommel_@ip212-238-79-63.hotspotsvankpn.com] has quit [Ping timeout: 276 seconds] 15:02 < manveru> for some reason the request seems to have lots of garbage in the packages... 15:02 < manveru> not sure what to make of it 15:03 -!- pharris [~Adium@rhgw.opentext.com] has joined #go-nuts 15:05 < manveru> maybe it just uses really tiny packages? 15:11 < manveru> let's see if i can make it not use chunked encoding... 15:12 < ww> manveru: i think setting the content-lenght has the side-effect of preventing chunked 15:13 < bartbes> ww: yeah, afaik they are mutually exclusive in the protocol 15:16 -!- Loonacy [~zephyros@Loonacy.broker.freenet6.net] has joined #go-nuts 15:26 -!- robteix [~robteix@nat/intel/x-klmexecugvbmmbnu] has joined #go-nuts 15:30 -!- piranha [~piranha@D57D1AB3.static.ziggozakelijk.nl] has quit [Quit: Computer has gone to sleep.] 15:34 < manveru> omfg 15:34 < manveru> ok, solved it :) 15:42 -!- tncardoso [~thiago@189.59.160.5] has quit [Ping timeout: 255 seconds] 15:43 -!- Project-2501 [~Marvin@82.84.85.49] has joined #go-nuts 15:47 -!- PortatoreSanoDiI [~Marvin@82.84.65.39] has quit [Ping timeout: 268 seconds] 15:50 -!- cenuij [~cenuij@base/student/cenuij] has quit [Remote host closed the connection] 15:50 -!- fvbommel [~fvbommel_@86.86.15.250] has joined #go-nuts 15:51 -!- squeese [~squeese@cm-84.209.17.156.getinternet.no] has quit [Remote host closed the connection] 15:53 -!- PortatoreSanoDiI [~Marvin@dynamic-adsl-94-36-157-117.clienti.tiscali.it] has joined #go-nuts 15:55 -!- noodles775 [~michael@canonical/launchpad/noodles775] has quit [Quit: leaving] 15:55 -!- dlowe [~dlowe@ita4fw1.itasoftware.com] has joined #go-nuts 15:56 -!- Project-2501 [~Marvin@82.84.85.49] has quit [Ping timeout: 244 seconds] 15:56 -!- Project-2501 [~Marvin@82.84.98.178] has joined #go-nuts 15:58 -!- PortatoreSanoDiI [~Marvin@dynamic-adsl-94-36-157-117.clienti.tiscali.it] has quit [Ping timeout: 240 seconds] 15:59 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has quit [Remote host closed the connection] 16:05 -!- squeese [~squeese@cm-84.209.17.156.getinternet.no] has joined #go-nuts 16:06 -!- alehorst [~alehorst@187.58.246.160] has quit [Ping timeout: 255 seconds] 16:06 -!- PortatoreSanoDiI [~Marvin@82.84.74.221] has joined #go-nuts 16:09 -!- Project-2501 [~Marvin@82.84.98.178] has quit [Ping timeout: 240 seconds] 16:10 -!- aat [~aat@rrcs-184-75-54-130.nyc.biz.rr.com] has quit [Ping timeout: 244 seconds] 16:11 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has quit [Ping timeout: 246 seconds] 16:11 -!- r_linux [~r_linux@smtp.mandique.com.br] has joined #go-nuts 16:12 -!- Project-2501 [~Marvin@82.84.98.100] has joined #go-nuts 16:14 -!- piranha [~piranha@5ED43A0B.cm-7-5a.dynamic.ziggo.nl] has joined #go-nuts 16:14 -!- PortatoreSanoDiI [~Marvin@82.84.74.221] has quit [Ping timeout: 240 seconds] 16:16 -!- awidegreen [~quassel@h-170-226.A212.priv.bahnhof.se] has joined #go-nuts 16:17 -!- r_linux [~r_linux@smtp.mandique.com.br] has quit [Ping timeout: 260 seconds] 16:17 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has joined #go-nuts 16:17 -!- aat [~aat@rrcs-184-75-54-130.nyc.biz.rr.com] has joined #go-nuts 16:18 -!- PortatoreSanoDiI [~Marvin@82.84.84.187] has joined #go-nuts 16:19 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has joined #go-nuts 16:21 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection] 16:22 -!- Project-2501 [~Marvin@82.84.98.100] has quit [Ping timeout: 252 seconds] 16:25 -!- Project-2501 [~Marvin@82.84.70.97] has joined #go-nuts 16:26 -!- alehorst [~alehorst@189.114.187.67] has joined #go-nuts 16:27 -!- Tv [~Tv@ip-66-33-206-8.dreamhost.com] has joined #go-nuts 16:28 -!- PortatoreSanoDiI [~Marvin@82.84.84.187] has quit [Ping timeout: 260 seconds] 16:30 -!- tncardoso [~thiagon@150.164.2.20] has joined #go-nuts 16:30 -!- iant [~iant@nat/google/x-bxmowmbnbevxvhky] has joined #go-nuts 16:30 -!- mode/#go-nuts [+v iant] by ChanServ 16:31 -!- PortatoreSanoDiI [~Marvin@dynamic-adsl-94-36-149-240.clienti.tiscali.it] has joined #go-nuts 16:34 -!- Project-2501 [~Marvin@82.84.70.97] has quit [Ping timeout: 244 seconds] 16:34 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has quit [Quit: Ex-Chat] 16:36 -!- ExtraSpice [XtraSpice@78-57-204-104.static.zebra.lt] has quit [Ping timeout: 276 seconds] 16:37 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-158-199.clienti.tiscali.it] has joined #go-nuts 16:41 -!- PortatoreSanoDiI [~Marvin@dynamic-adsl-94-36-149-240.clienti.tiscali.it] has quit [Ping timeout: 240 seconds] 16:47 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has joined #go-nuts 16:47 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has left #go-nuts [] 16:48 -!- robteix [~robteix@nat/intel/x-klmexecugvbmmbnu] has quit [Quit: Leaving] 16:51 -!- ExtraSpice [XtraSpice@78-57-204-104.static.zebra.lt] has joined #go-nuts 16:51 -!- enquora [~davidr@S010600131035e588.cg.shawcable.net] has joined #go-nuts 16:52 < enquora> Is there a postgresql driver for the language? 16:52 < jlaffaye> yes 16:53 < enquora> is there a url for it? 17:00 -!- shvntr [~shvntr@119.121.31.56] has quit [Ping timeout: 244 seconds] 17:01 < skelterjohn|work> you can find a lot of 3rd party projects at godashboard.appspot.com/projects 17:01 -!- shvntr [~shvntr@119.121.31.56] has joined #go-nuts 17:06 -!- electro [electro@c-bef570d5.033-10-67626721.cust.bredbandsbolaget.se] has quit [Ping timeout: 260 seconds] 17:07 < elimisteve> I've tried installing two different sqlite drivers for Go, and I get the same error trying to goinstall either: http://pastebin.com/mczn39ZF 17:08 < elimisteve> any ideas? 17:09 < skelterjohn|work> do a clean build of go 17:09 < elimisteve> enquora: I haven't used it but it looks up to date: https://github.com/jbarham/pgsql.go 17:10 < enquora> great. thks 17:10 < elimisteve> skelterjohn|work: k thanks 17:15 < TheCritic> so, inotify, any chance of getting a os x and windows version? 17:15 <+iant> do they have inotify? 17:15 < TheCritic> nope, but they have similar functionality in their respective os api 17:16 < TheCritic> go should sport a generic that works on the major systems 17:16 < TheCritic> *should* :) 17:17 <+iant> sure, go for it 17:18 < skelterjohn|work> what's inotify? 17:18 < TheCritic> it lets you put a watch on a file or directory 17:18 < TheCritic> when something changes, your code is called 17:18 <+iant> so you know when the file changes 17:19 < mpl> usefull to implement loggers for example 17:20 < TheCritic> my project is a file sync tool... just something to learn the language... and inotify would rock... but I am a mac user :( 17:22 -!- rutkowski [~adrian@078088212023.walbrzych.vectranet.pl] has joined #go-nuts 17:22 -!- marko__ [~marko@marko.isti.cnr.it] has quit [Ping timeout: 255 seconds] 17:24 -!- TheMue [~TheMue@p5DDF7DDE.dip.t-dialin.net] has joined #go-nuts 17:25 -!- wallerdev [~wallerdev@c-68-60-43-43.hsd1.mi.comcast.net] has joined #go-nuts 17:27 -!- cenuij [~cenuij@103.184.122.78.rev.sfr.net] has joined #go-nuts 17:27 -!- cenuij [~cenuij@103.184.122.78.rev.sfr.net] has quit [Changing host] 17:27 -!- cenuij [~cenuij@base/student/cenuij] has joined #go-nuts 17:27 -!- franciscosouza [~francisco@201.7.186.67] has quit [Quit: franciscosouza] 17:30 -!- robteix [~robteix@192.55.54.36] has joined #go-nuts 17:31 -!- Fish- [~Fish@9fans.fr] has joined #go-nuts 17:39 -!- napsy [~luka@88.200.96.18] has quit [Quit: Lost terminal] 17:39 -!- Nisstyre [~nisstyre@109.74.204.224] has joined #go-nuts 17:39 -!- jstemmer [~cheetah@mrpwn.stemmertech.com] has joined #go-nuts 17:44 < zanget> 13:25 < TheCritic> my project is a file sync tool... just something to learn the language... and inotify would rock... but I am a mac user :( <= I haven't used it but I'm pretty sure go has kqueue which is for freebsd and osx 17:45 < TheCritic> nice! Ill read up on it, thanks zanget 17:46 < zanget> no problem and it's in syscall 17:48 < KirkMcDonald> Spawn rsync as a subprocess? :-) 17:49 -!- Tori274 [~Tori@ip-33.net-81-220-152.grenoble.rev.numericable.fr] has joined #go-nuts 17:51 -!- Tori274 [~Tori@ip-33.net-81-220-152.grenoble.rev.numericable.fr] has left #go-nuts [] 17:56 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has quit [Ping timeout: 276 seconds] 17:57 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|] 17:58 -!- r_linux [~r_linux@189.38.220.35] has joined #go-nuts 18:00 -!- tncardoso [~thiagon@150.164.2.20] has quit [Quit: Leaving] 18:03 -!- robteix [~robteix@192.55.54.36] has quit [Quit: Leaving] 18:12 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-158-199.clienti.tiscali.it] has quit [Read error: Connection reset by peer] 18:14 -!- Tv [~Tv@ip-66-33-206-8.dreamhost.com] has quit [Remote host closed the connection] 18:14 -!- wallerdev [~wallerdev@c-68-60-43-43.hsd1.mi.comcast.net] has quit [Quit: wallerdev] 18:14 -!- Tv [~Tv@ip-66-33-206-8.dreamhost.com] has joined #go-nuts 18:16 -!- wallerdev [~wallerdev@c-68-60-43-43.hsd1.mi.comcast.net] has joined #go-nuts 18:17 -!- wallerdev [~wallerdev@c-68-60-43-43.hsd1.mi.comcast.net] has quit [Client Quit] 18:22 -!- firwen [~firwen@2a01:e34:eea3:7e10:4a5b:39ff:fe51:e8ae] has joined #go-nuts 18:28 -!- franciscosouza [~francisco@201.7.186.67] has joined #go-nuts 18:28 -!- CoverSlide [~richard@pool-108-38-148-191.lsanca.fios.verizon.net] has joined #go-nuts 18:29 -!- dlowe [~dlowe@ita4fw1.itasoftware.com] has quit [Remote host closed the connection] 18:33 -!- dlowe [~dlowe@63.107.91.99] has joined #go-nuts 18:50 -!- fhs [~fhs@2001:0:4137:9e76:3458:6fb3:93f1:4624] has joined #go-nuts 18:57 -!- wallerdev [~wallerdev@c-68-60-43-43.hsd1.mi.comcast.net] has joined #go-nuts 19:03 -!- mnoel [~mnoel@c-75-65-250-60.hsd1.la.comcast.net] has joined #go-nuts 19:06 -!- wallerdev [~wallerdev@c-68-60-43-43.hsd1.mi.comcast.net] has quit [Quit: wallerdev] 19:14 -!- Knirch [fatal@debian.as] has quit [Read error: Operation timed out] 19:14 -!- neshaug [~oyvind@213.239.108.5] has quit [Read error: Operation timed out] 19:15 -!- TheCritic [~TheCritic@c-24-30-34-40.hsd1.ga.comcast.net] has quit [Ping timeout: 252 seconds] 19:15 -!- Knirch [fatal@debian.as] has joined #go-nuts 19:15 -!- TheCritic [~TheCritic@c-24-30-34-40.hsd1.ga.comcast.net] has joined #go-nuts 19:15 -!- neshaug [~oyvind@213.239.108.5] has joined #go-nuts 19:17 -!- moraes [~moraes@189.103.188.201] has quit [Ping timeout: 252 seconds] 19:25 -!- alc [~arx@222.128.151.100] has quit [Quit: Bye!] 19:29 -!- moraes [~moraes@189.103.188.201] has joined #go-nuts 19:35 -!- virtualsue [~chatzilla@nat/cisco/x-wojgnparaeaoobag] has quit [Ping timeout: 250 seconds] 19:38 -!- Ekspluati [~Ekspluati@a91-154-13-178.elisa-laajakaista.fi] has joined #go-nuts 19:47 -!- saml [~sam@adfb12c6.cst.lightpath.net] has joined #go-nuts 19:47 < saml> hey is go web scale? 19:47 < aiju> define web scale 19:47 < aiju> you can certainly use it for web development 19:51 -!- keithcascio [~keithcasc@nat/google/x-gifrxjltqaqnuyge] has joined #go-nuts 19:51 < Tv> go has very few rabid rails programmers vouching for it, so i would guess no ;) 19:52 < saml> can you do fancy type stuff like haskell? 19:52 < aiju> no, but you can write code 19:52 -!- franciscosouza [~francisco@201.7.186.67] has quit [Quit: franciscosouza] 19:53 < saml> cool. so i'll learn go 19:55 < skelterjohn|work> is "web scale" an an adjective? 19:56 < saml> no, an adverb. you can say web scaleley large 19:56 < saml> anyone works in google? how is today's doodle encoded? the ?tune= parameter 19:57 < crunge> I'm not sure go is very buzzword compliant 19:57 < saml> http://www.google.com/webhp?tune=IAYwCJhkEoSck4FyQFgFuWYoZIjDjgFEbMgBQxiEkOOCE-xEDzCjCITQU4JzoHg* 19:57 < saml> that's base64 of midi? 19:57 < wrtp> saml: anything can be web scale if you have enough computers and network bandwidth :-) 19:57 < saml> how would you decode that in go and print hex or binary? 19:58 < saml> in python, it's [hex(ord(x)) for x in base64.decodestring(s if not s.endswith('*') else s + '==')] 19:58 < elimisteve> Tv: you can use Go for web dev. There's web.go and now Go for App Engine if you get an invite 19:59 < saml> can you develop 3d games in go and android app? 19:59 < saml> and any ide autocompletion? or ctags work? 19:59 < CoverSlide> you can download go for appengine now 19:59 < Tv> elimisteve: that's not what "web scale" means 20:00 < saml> web scale means it has mongodb driver 20:00 < aiju> web scale means "hyped" 20:00 -!- rutkowski [~adrian@078088212023.walbrzych.vectranet.pl] has quit [Quit: WeeChat 0.3.3-dev] 20:00 < Tv> web scale also means it keeps persistent data in ram ;) 20:00 * wrtp can't get the tunes to play in his web browser. :-( (it works otherwise though) 20:01 < Tv> wrtp: yeah mine's silent too 20:01 < Tv> ahh blocked flash plugin 20:01 < saml> no.. data is always in the wire. things are constantly replicated, transmitted over bittorrent 20:02 -!- pharris [~Adium@rhgw.opentext.com] has quit [Quit: Leaving.] 20:02 < wrtp> Tv: mine's not silent - just "prerecorded" tunes don't seem to work 20:02 < wrtp> unless there's a button i haven't found yet to play it 20:02 < aiju> google doodles have grown way out of hand 20:03 < wrtp> aiju: :-) 20:03 < aiju> they'll soon take over the world 20:03 < aiju> also, there was no doodle on hitler's birthday 20:03 < aiju> google disappointed me 20:03 -!- hallas [~hallas@x1-6-30-46-9a-b2-c5-1f.k891.webspeed.dk] has joined #go-nuts 20:04 -!- pharris [~Adium@rhgw.opentext.com] has joined #go-nuts 20:06 < Tv> google 20:06 < Tv> " 20:06 < Tv> i guess the leading spaces got trimmed 20:06 < Tv> you get the idea 20:06 -!- pharris [~Adium@rhgw.opentext.com] has quit [Client Quit] 20:07 < skelterjohn|work> i don't 20:09 -!- Nitro [~Nitro@unaffiliated/nitro] has joined #go-nuts 20:09 < Tv> " as moustache 20:10 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org] 20:14 -!- robteix [~robteix@nat/intel/x-stixqxuovjwiemrc] has joined #go-nuts 20:14 < skelterjohn|work> oh 20:14 < skelterjohn|work> don't encourage aiju 20:15 -!- pharris [~Adium@rhgw.opentext.com] has joined #go-nuts 20:15 * aiju is now known as aiju|fuckwhydopeoplehavetoputallkindofcrapintotheirnicks 20:18 -!- alehorst [~alehorst@189.114.187.67] has quit [Quit: Leaving.] 20:20 -!- alehorst [~alehorst@189.114.187.67] has joined #go-nuts 20:21 -!- tvw [~tv@e176003139.adsl.alicedsl.de] has joined #go-nuts 20:36 -!- TheMue [~TheMue@p5DDF7DDE.dip.t-dialin.net] has quit [Quit: TheMue] 20:37 -!- bmizerany [~bmizerany@204.14.152.118] has joined #go-nuts 20:37 -!- XenoPhoenix [~Xeno@cpc13-aztw24-2-0-cust23.aztw.cable.virginmedia.com] has joined #go-nuts 20:38 -!- robteix [~robteix@nat/intel/x-stixqxuovjwiemrc] has quit [Quit: Leaving] 20:39 -!- Spacenick [~niklas@stgt-4d02dd1e.pool.mediaWays.net] has joined #go-nuts 20:39 < Spacenick> Hi all, I'm seeing a huge performance difference between gccgo and 6g/l 20:39 <+iant> that certainly happens for some kinds of code 20:40 -!- huin [~huin@82.153.193.223] has joined #go-nuts 20:40 < Spacenick> it's a program loading a textfile of about 1 GB describing a graph as one node/edge per line first nodes then edges, I read using bufio.ReadLine() 20:41 < Spacenick> ah it's you iant, I remember you^^ 20:41 < ww> was somebody else here the other day talking about doing what sounds exactly the same 20:42 < Spacenick> yeah it was me just a different nick 20:42 < Spacenick> forgot I got a registered one over here 20:42 < ww> oh! 20:42 -!- Loonacy [~zephyros@Loonacy.broker.freenet6.net] has quit [Ping timeout: 260 seconds] 20:43 < Spacenick> So I added gomake Makefiles and tried compiling with 6g, now for the 48 million edges, 24 million nodes graph reading it in takes about 3 times as long, though it uses a little bit less RAM but still >1450 MB 20:44 < Spacenick> however the DFS became MUCH slower while with gccgo it explores 23 million vertices in 9 seconds, the gc version takes >250 seconds! 20:45 <+iant> that is a larger difference than I would expect; that's hard to understand 20:46 < Spacenick> Yes that's why I'm here again, I'd have expected something like 60 to 200% slower but this is crazy 20:47 < Spacenick> If anyone were interested I could provide the Code on github or something but I'm not entirely sure it's a goog testcase 20:48 < vegai> is it a large program? 20:48 < Tv> Spacenick: if you could isolate like one operation that works without a huge dataset that shows the difference.. 20:48 <+iant> Spacenick: for 6g you can do runtime profiling using http://golang.org/pkg/runtime/pprof/ 20:49 < Spacenick> iant: it works quite ok with smaller graphs.. but I will see what I can do 20:49 < ww> personally i'd be more interested in the dataset (perhaps make entry on ckan.net for the data) 20:50 < ww> s/more// 20:52 < Spacenick> I'm not sure what permissions I have there it's based on OSM so it will be free in the future but it's generated by some colleague as a university project, what kind of instituion are you working for, I could give you the mail address of the supervising professor 20:53 < Spacenick> He's quite a nice and Open Source minded guy and definetly knows what the rules are 20:53 -!- Loonacy [~zephyros@Loonacy.broker.freenet6.net] has joined #go-nuts 20:53 -!- Bigbear1 [~Cody@d173-181-44-106.abhsia.telus.net] has joined #go-nuts 20:54 < Spacenick> they have some Contraction Hiearchies for OSM data lying around as well which they eventually plan on releasing as far as I know 20:54 -!- replore [~replore@ntkngw256114.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote host closed the connection] 20:54 < ww> Spacenick: not really for work as such, just sounds like a good dataset to add to the corpus of graph data sets to experiment with 20:55 -!- ronnyy [~quassel@p4FF1C419.dip0.t-ipconnect.de] has joined #go-nuts 20:55 < ww> for me that's spare time stuff at the moment... 20:55 < Spacenick> Ok, I will ask around what the plans are especially for the software used to generate this graph data from OSM 20:57 -!- franciscosouza [~francisco@201.7.186.67] has joined #go-nuts 20:57 < ww> (to answer your question though, i'm working with edina.ac.uk and inf.ed.ac.uk at the moment) 20:57 < Spacenick> I know however that our project which will use that data will be licenced by the Apache license 20:58 -!- huin [~huin@82.153.193.223] has quit [Quit: bedtime] 20:59 < Spacenick> Sounds interesting, which line of research are you into? 21:00 -!- marko__ [~marko@host124-196-dynamic.43-79-r.retail.telecomitalia.it] has joined #go-nuts 21:00 -!- Bigbear1 [~Cody@d173-181-44-106.abhsia.telus.net] has quit [Read error: Connection reset by peer] 21:01 < ww> churning out linked data... trying to mind things like provenance... 21:02 -!- dlowe [~dlowe@63.107.91.99] has quit [Quit: Leaving.] 21:02 -!- Bigbear1 [~Cody@d173-181-44-106.abhsia.telus.net] has joined #go-nuts 21:03 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has quit [Ping timeout: 612 seconds] 21:03 -!- firwen [~firwen@2a01:e34:eea3:7e10:4a5b:39ff:fe51:e8ae] has quit [Remote host closed the connection] 21:03 < ww> interested in reasoning about the data, actually, but we're generally still collecting basic ground facts in a uniform way... (this is why i was interested in aiju's experiments with prolog-like constructs in go) 21:06 < ww> so i'm also interested in good ways to store and query graphical data 21:06 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has quit [Ping timeout: 246 seconds] 21:06 < Spacenick> What's you favorite graph representation then? 21:07 < Spacenick> I'd guess this reasoning stuff is mnostly about triples right? 21:07 < ww> G=(V,E) :P 21:07 < ww> but i'm intrigued by these column storage techniques, actually 21:08 -!- Cork[home] [Cork@h83n1c1o1042.bredband.skanova.com] has quit [Changing host] 21:08 -!- Cork[home] [Cork@firefox/community/cork] has joined #go-nuts 21:08 < Spacenick> c: E -> R and all will be good right 21:09 < ww> yes, mostly triples... i guess traditional areas like path traversal algorighms only have an obvious interpretation in specific cases... 21:10 -!- ronnyy [~quassel@p4FF1C419.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 21:10 < ww> but there are some very strong ties to things like type inference 21:11 < Spacenick> yeah, hmm I really wonder what makes the gc compiled version this slow, maybe because my simple DFS is recursive 21:11 < Spacenick> I could try my Dijkstra that's not recursive 21:13 -!- jstemmer [~cheetah@mrpwn.stemmertech.com] has quit [Quit: leaving] 21:15 < ww> i wonder if it would blow up if you did the recursion in a goroutine, e.g. go DFS(...) 21:16 < ww> would need some mutex sort of things on the visited array... 21:16 < Baughn> What type inference algorithm is there anyway, simple hindley-milner? 21:16 < Spacenick> the array should be fine it's static 21:16 < Baughn> Though I haven't spotted any parametric typing.. 21:16 < ww> but the goroutines should each be pretty short lived so shouldn't pile up... 21:17 < Spacenick> ah you mean in the DFS directly 21:17 < Spacenick> yeah inetresting but better to first know what makes it so slow now 21:19 -!- wrtp [~rog@92.23.127.186] has quit [Quit: wrtp] 21:20 -!- Nitro [~Nitro@unaffiliated/nitro] has quit [Ping timeout: 244 seconds] 21:20 < ww> Baughn: actually we're trying something related, in the "given a bunch of data, try to infer an ontology (loosely, class hierarchy)" vein 21:21 < Spacenick> Like in DBPedia? Have you tried this query language they use? 21:22 < ww> Spacenick: you mean sparql? yes, have worked with it a lot 21:22 -!- mkb218 [~mkb@pool-71-174-16-245.bstnma.east.verizon.net] has quit [Read error: Connection reset by peer] 21:22 < Baughn> ww: Hm~ 21:22 < Baughn> ww: Well, the type system isn't really where my problem with Go lies anyway. I'll stick to haskell. :P 21:22 < Spacenick> yeah Sparql, didn't look enough into it just typed some queries into dbpedia, it's a bit weired at first 21:23 < Baughn> 'twas a nice experiment, though. 21:23 -!- mkb218 [~mkb@pool-71-174-31-217.bstnma.east.verizon.net] has joined #go-nuts 21:24 < ww> Baughn: we're talking at cross purposes i think, i'm not talking about types in go, but about types in rdf, though using go to do some analysis 21:24 < Baughn> ..right. 21:24 < ww> Spacenick: sparql's like sql only different :) 21:24 < Baughn> I was thinking about go, though. Am I correct in thinking that it has only concrete types? 21:25 < Baughn> I.e. no parametric typing? 21:25 < Spacenick> Yeah and one needs to know what kind of data is there 21:25 < Baughn> I may have missed something subtle.. 21:25 < KirkMcDonald> Baughn: Correct, no generics, no templates. 21:25 < KirkMcDonald> Baughn: It does have interfaces. 21:25 < Spacenick> it has Interfaces which are used for generic programming 21:25 < Baughn> KirkMcDonald: Type-classes are orthogonal 21:26 < KirkMcDonald> Okay. 21:26 < ww> Spacenick: right, so that's a common problem - how can one introspect the data to find what types are there? 21:26 < Baughn> As far as I can tell interfaces are just single-parameter type-classes 21:26 < ww> particularly when not all types will be explicitly stated 21:26 < KirkMcDonald> Baughn: I have no idea what you mean by that. 21:26 -!- jrabbit [~babyseal@unaffiliated/jrabbit] has quit [Ping timeout: 260 seconds] 21:27 < Baughn> KirkMcDonald: I guess it doesn't make that much sense outside my own mind. I tend to compare type systems to haskell's, since /usually/ they turn out to be a subset of that. 21:27 < Baughn> KirkMcDonald: It has something called type-classes, which.. hum, from your POV I guess they'd be interfaces on steroids. :P 21:27 < KirkMcDonald> Baughn: I would argue that is not a useful model when attempting to evaluate a language on its own merits. 21:28 < Baughn> KirkMcDonald: Oh, I'm not evaluating the /language/. Just the type algebra. 21:28 < KirkMcDonald> Baughn: Yes. That is precisely the thing that I mean. :-) 21:30 -!- mnoel_ [~mnoel@c-75-65-250-60.hsd1.la.comcast.net] has joined #go-nuts 21:30 < ww> i guess with go the position is that parametric types are not out of the question, just that you can get a lot of mileage without them and we want to do them right if/when they are added to the language 21:30 -!- r_linux [~r_linux@189.38.220.35] has quit [Ping timeout: 252 seconds] 21:31 < ww> haskell is brilliant, but understanding the type system is a steep learning curve - i don't think go wants steep learning curves 21:31 <+iant> I don't think Go's interfaces are quite the same thing as Haskell's type classes 21:31 <+iant> though they clearly have some similarities 21:31 < Baughn> ww: So don't include type-classes, then, or the extensions. Simple parametric typing seems.. well, simple enough. 21:31 -!- mnoel [~mnoel@c-75-65-250-60.hsd1.la.comcast.net] has quit [Ping timeout: 255 seconds] 21:31 -!- Fish- [~Fish@9fans.fr] has quit [Quit: So Long, and Thanks for All the Fish] 21:32 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has joined #go-nuts 21:35 < TheCritic> ok, http://golang.org/src/pkg/net/fd_freebsd.go "Waiting for FDs via kqueue/kevent." What is a FD? 21:35 <+iant> a file descriptor 21:36 <+iant> it's the sysfd field of a netFD 21:36 < ww> Baughn: well, do write up a proposal for how you think it could/should be done, it'll likely be vigorously debated on the list, and we'll see where it goes 21:38 < Baughn> ww: As someone who used go only a few hours as an experiment for an internal monitoring system that I'm now rewriting in python, I don't think there's any point. Anyway, the type system /isn't/ why the switch.. 21:40 -!- squeese [~squeese@cm-84.209.17.156.getinternet.no] has quit [Remote host closed the connection] 21:40 -!- pharris [~Adium@rhgw.opentext.com] has quit [Ping timeout: 252 seconds] 21:40 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has quit [Ping timeout: 268 seconds] 21:40 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has joined #go-nuts 21:44 -!- dfc [~dfc@124-149-49-45.dyn.iinet.net.au] has joined #go-nuts 21:45 -!- piranha [~piranha@5ED43A0B.cm-7-5a.dynamic.ziggo.nl] has quit [Quit: Computer has gone to sleep.] 21:45 -!- jrabbit [~babyseal@unaffiliated/jrabbit] has joined #go-nuts 21:46 < ww> I'm curious - why the switch then (I've mostly gone in the opposite direction, writing things in Go that I'd normally write in python) 21:46 < Baughn> Hm 21:46 < Baughn> Two reasons. 21:47 < Baughn> First off, although Go /is/ officially supported, nobody else on my team - or in my department - use it, so getting code reviews is hard. 21:47 -!- wchicken [~chicken@c-24-7-112-207.hsd1.ca.comcast.net] has quit [Ping timeout: 252 seconds] 21:48 < Baughn> Second, I found the pointer/value distinction mildly confusing and incoherent 21:48 < Baughn> Admittedly I don't seem to have that problem with C++, but there you go. Presumably experience would help, but as it is it isn't identical. 21:48 <+iant> in what way is it not identical? 21:49 < Baughn> It mixes with point three, mainly.. 21:49 < Baughn> It's possible to construct a map that's invalid, etc. 21:49 < Baughn> C++ constructors /work/, I didn't find a similar system in go 21:49 <+iant> it is possible to construct a map that is nil, if that is what you mean 21:49 <+iant> but that is not a pointer/value issue 21:49 < Baughn> No, it's possible to construct a map that /contains/ nil 21:50 < ww> I can sympathise with the first point. For the moment I've worked around that by making my deliverables data rather than code 21:50 < KirkMcDonald> What, it's not possible to break C++ ctors? :-) 21:50 < Baughn> Inside a struct somewhere 21:50 < Baughn> KirkMcDonald: It's not the default outcome. :P 21:50 < KirkMcDonald> Baughn: And it's wrong to contain nil? 21:50 <+iant> a map that contains nil is not invalid 21:50 < Baughn> KirkMcDonald: Yes. If I want nil, I'll use a nil instead of a map. 21:50 < KirkMcDonald> Baughn: I'm not sure what you mean. 21:50 < Baughn> Fourth, I guess, the type inference is insufficient. I had to write out the type of the map in order to call make. 21:51 < Baughn> Fifth, I can't define an implementation of make for my own types.. that special-casing thing. Maybe I just didn't figure out how? 21:51 < Baughn> Sixth, the obligatory braces makes my code look ugly. ;) 21:51 < ww> fourth doesn, make sense to me, type Foo map[string]string; make(Foo) works for me 21:51 <+iant> you can't call make with your own types, no, though of course you can write your own function which does the same thing for your type 21:51 <+iant> I still don't see what you mean by pointer/value, though 21:51 <+iant> or by a map containing nil 21:52 < Baughn> ww: I wanted to say something like "x := make()" 21:52 < KirkMcDonald> Baughn: And what would the type of x be? 21:52 < Baughn> ww: The language should already /know/ what type x is, from inference or me specifying it elsewhere 21:52 <+iant> KirkMcDonald: he wants fancy type inferencing as in Haskell 21:52 <+iant> Go doesn't work that way 21:52 < KirkMcDonald> Yeah, I figured. 21:53 < Baughn> Or just simple inference, as in initializing a structure 21:53 < Baughn> At which point I'm back to constructors.. 21:53 < Baughn> Yeah, I could make my own functions to do that, and obviously I did. 21:53 < Baughn> It's just, having a special-case make construct for just a few built-in types doesn't sit well with me, especially as map looks like it belongs in a library 21:53 <+iant> but I think the original question was not why Haskell instead of Go, but why Python instead of Go 21:54 < exch> x := make() makes no sense 21:54 < Baughn> iant: Code got more concise. 21:54 < Baughn> exch: Bad example, though it /could 21:54 < Baughn> exch: More like "Foo { x = make() }", for some struct Foo 21:55 < KirkMcDonald> That... still makes no sense. 21:55 < KirkMcDonald> Oh, I see. 21:55 < exch> if field x is defined to be map[T]T, then it does make sense 21:55 < KirkMcDonald> It infers from the type of x. 21:55 < Baughn> Right. 21:55 < ww> var x Foo; x = make() 21:55 <+iant> yeah, it's a case where Go does require an unnecessary type to be written down 21:56 < Baughn> With just x := make() it'd need to infer from how I use x /later in the code/, which would be harder and would definitely slow down the compiler. I can understand why it wouldn't do /that/. 21:56 <+iant> it's like the ones in composite initializers that we got rid of a while back 21:56 <+iant> I don't even think supporting x := make() would be a good idea 21:56 < KirkMcDonald> Baughn: So, you call NewFoo() instead. 21:56 <+iant> even if it could work efficiently in the compiler 21:57 < Baughn> KirkMcDonald: Right. My beef with that is that I have to call NewFoo for my own types, and make() for built-in ones, and I dislike the distinction. 21:57 < Baughn> It's just a wart. 21:57 < KirkMcDonald> It's not the only such distinction. 21:57 < ww> on constructors, sometimes i've missed them. but then i found that very very often i wanted a "constructor" like func NewFoo() (Foo, os.Error) 21:58 -!- aat [~aat@rrcs-184-75-54-130.nyc.biz.rr.com] has quit [Ping timeout: 255 seconds] 21:58 < ww> which isn't quite a constructor... 21:58 < jnwhiteh> make(T) is explicit, I like it 21:58 < exch> there was some talk of merging new() and make() together, ut unfortunately that got shelved 21:58 <+iant> I think we all got too confused 21:58 < KirkMcDonald> Baughn: For my part I've seen what resulted in C++ when they attempted to remove the distinction. 21:58 < KirkMcDonald> And I don't like it. :-) 21:58 -!- b33p [~mgray@li226-224.members.linode.com] has quit [Ping timeout: 252 seconds] 21:58 < Baughn> KirkMcDonald: Well, I'm not saying C++ does it terribly well either. :P 21:59 -!- b33p [~mgray@li226-224.members.linode.com] has joined #go-nuts 21:59 < Baughn> Really, I'd be fine with removing make() entirely. 21:59 < KirkMcDonald> And relying only on literals? 21:59 < Baughn> Make it an interface instead 21:59 < Baughn> ..oh, wait. No return-value polymorphism. Never mind. :/ 22:00 < Baughn> That's right, didn't the documentation state make was implemented specifically /because/ of that? 22:00 <+iant> no.... 22:00 <+iant> I don't think so.... 22:00 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has quit [Quit: Lost terminal] 22:00 < Baughn> Well, there was some kind of reason for why it wasn't just a function.. 22:01 < KirkMcDonald> It takes a type as an argument. 22:01 < Baughn> I don't see the issue 22:01 < ww> where a constructor just allocates memory that's one thing. if it does anything else it needs a way to signal a proper error 22:01 <+iant> you can't pass a type to an ordinary functoin 22:01 < Baughn> You can pass a nil of that type, effectively doing the same thing 22:01 < Baughn> For picking instances, at least 22:01 <+iant> that seems more awkward rather than less 22:02 <+iant> and there is no overloading anyhow 22:02 < Baughn> It'd be hard for me to decide. You'd /really/ want return-value polymorphism. 22:02 < KirkMcDonald> Then we have copy(), append()... 22:02 < Baughn> ..what are interfaces if not overloading? 22:02 < Baughn> KirkMcDonald: *sigh*. Don't remind me. 22:02 <+iant> interfaces aren't overloading at all 22:02 < Baughn> I just wanted to mutate a splice.. 22:02 < KirkMcDonald> s/splice/slice/ ? 22:03 < Baughn> ..yeah 22:04 < Baughn> I guess what I'm really saying is that Go seems like a low-level language, which is not what I wanted. I wanted a high-level language with powerful types. 22:04 < Baughn> I'm sure it still has its uses, just.. not for what I was trying to do. 22:04 <+iant> but that's not really Python either 22:04 < Baughn> Yeah. :/ 22:04 < Baughn> Python or C++. Which would /you/ pick? 22:04 <+iant> Nobody is going to question why you would use Haskell instead of Go 22:05 <+iant> but I think it's reasonable to discuss why you would use Python instead of Go 22:05 < Baughn> Haskell isn't a supported language. I do all my /own/ programming in it, sure. 22:05 < Baughn> Otherwise it's C++, Python or, conceivably, Go. 22:05 < KirkMcDonald> What, no Java? 22:05 < KirkMcDonald> (I kid, I kid.) 22:05 < cenuij> wash your mouth out 22:05 < Baughn> ..Java is also officially supported. 22:05 < cenuij> ;) 22:06 < Baughn> But I don't think /anyone/ I've met uses it. ^_^ 22:06 -!- Spacenick [~niklas@stgt-4d02dd1e.pool.mediaWays.net] has quit [Read error: Operation timed out] 22:06 < Baughn> The android folks, presumably. 22:06 < jnwhiteh> Java is still used quite heavily 22:06 < jnwhiteh> but then again, so is C++ 22:06 -!- Spacenick [~niklas@stgt-5f7011df.pool.mediaWays.net] has joined #go-nuts 22:06 < cenuij> offtopic, I see Google Inc. was the only dissenting vote on java SE 7 22:06 < Baughn> All our high-performance servers are written in C++. Which is somewhat reasonable. 22:07 < KirkMcDonald> Baughn: I hear the YouTube uses a bit of Python. 22:07 < Baughn> KirkMcDonald: That may be true 22:08 < jnwhiteh> quite a bit of Google uses python =) 22:09 < Baughn> Most sysadmin tools are written in it. I might as well follow the tradition. >_> 22:10 < Baughn> As I said.. C++, Python or Go. I'd have a hard time convincing people Go is a good idea. Otherwise I'm 60/40 in favor of Python.. for a system that's really very much not suited to go's target. 22:10 < Baughn> Really, that's praise. :P 22:10 < ww> my beefs with python are bloated test suites to check what a half-decent compiler could do 22:10 < Baughn> So. Very. Agreed. 22:10 < KirkMcDonald> Bah, push it live. There's your test. 22:10 < ww> and terrible, terrible unicode support (which bites me because i see a lot of natural language text) 22:10 < jnwhiteh> meh, testing is for losers =) 22:11 < elimisteve> ww: Python has terrible Unicode support? 22:11 < KirkMcDonald> ww: Terrible? 22:11 < KirkMcDonald> Python's unicode support is extensive. 22:11 < KirkMcDonald> Moreso than dang near anything. 22:11 < crunge> I think he means that the fact that it supports unicode is terrible 22:11 < KirkMcDonald> That is a valid argument, actually. 22:11 < elimisteve> Is it? 22:11 < ww> in my experience it always ends up blowing up in random unexpected places 22:12 * Baughn prefers /explicit/ unicode when possible 22:12 * Baughn also doesn't do a lot of text munging 22:12 < KirkMcDonald> elimisteve: There are two ways of doing Unicode, really. One is to speak UTF-8 and nothing else. This is what Go does, among others. 22:12 <+iant> and the other way is not as good as the first way 22:12 < KirkMcDonald> And the other... well, Python. 22:12 < elimisteve> I see 22:13 < crunge> The other is to say, "I support Unicode provided the characters you're using fit neatly into 7 bits" 22:13 < KirkMcDonald> heh 22:14 < elimisteve> Re Python: u"string" != "string" can be frustrating, but it gave me a very explicit warning when that happened, which was nice 22:14 < KirkMcDonald> Python 3 is somewhat better. 22:14 < Baughn> Then there's "I support utf-7, utf-16, ucs-4 and even ucs-2. Waddayawant?" 22:14 < KirkMcDonald> It is far, far more explicit about converting between unicode strings and bytestrings, and unicode strings are the default. 22:14 < KirkMcDonald> On the other hand, no one uses Python 3. 22:15 -!- saml [~sam@adfb12c6.cst.lightpath.net] has quit [Quit: Leaving] 22:15 -!- enquora [~davidr@S010600131035e588.cg.shawcable.net] has quit [Quit: enquora] 22:15 < KirkMcDonald> (Also it supports unicode identifiers, for whatever that's worth.) 22:16 -!- mkb218 [~mkb@pool-71-174-31-217.bstnma.east.verizon.net] has quit [Ping timeout: 244 seconds] 22:17 < KirkMcDonald> The downside to Python's approach is that you need to know quite a bit. #python is constantly getting people complaining about UnicodeDecodeErrors or what-have-you. 22:17 < ww> actually i guess it's brittleness when you don't reliably know the encoding of random source data 22:17 < KirkMcDonald> And that is definitely a problem. 22:17 < ww> and then something somewhere will try to do something that usually involves a unicode conversion, and it breaks 22:17 < KirkMcDonald> Yes, though if you do it properly, you can at least handle such malformed input more or less sensibly. 22:17 -!- Nitro [~Nitro@unaffiliated/nitro] has joined #go-nuts 22:18 < KirkMcDonald> It's the fact that you need to "do it properly" which is concerning. 22:18 -!- AmourDeZombi [~jphillips@c-76-112-223-150.hsd1.mi.comcast.net] has joined #go-nuts 22:18 < ww> sensibly usually involves just treating it as a sequence of bytes and not care 22:18 < KirkMcDonald> On the other hand, with Go, if you attempt to throw your malformed bytes into a string, and then assume it's UTF-8... 22:18 < KirkMcDonald> Same problem, really. 22:19 < KirkMcDonald> Yeah, bytes-is-bytes can be the thing to do. 22:19 < elimisteve> Baughn: I'm loving Go because it's brilliantly simple, yet very powerful. I love Python too but Go is just so much faster... plus its concurrency primitives are so simple. 22:19 < KirkMcDonald> But it does depend on the problem at hand. 22:19 < elimisteve> Never thought I could tolerate a statically-typed language, that's for sure. I hate Java with a passion; it's literally painful for me to code in Java. 22:20 < crunge> elimisteve: that's where I'm at. I used to do a ton of perl. People come into the channel saying, "I have this problem with threads." The response would be, "There's your problem" 22:20 < Baughn> elimisteve: If you like the typing and concurrency, you should try haskell sometime. :P 22:20 < ww> yes. for me the problem at hand usually doesn't involve caring about the content of the string, but does involve not producing spurious backtraces :) 22:20 < crunge> I never bothered trying to do concurrency in python 22:21 < KirkMcDonald> crunge: Technically threads in Python are just threads. 22:21 < KirkMcDonald> crunge: They just suck, because of the lock. 22:21 < KirkMcDonald> The GIL. 22:21 < crunge> KirkMcDonald: Right... helpful for blocking stuff 22:21 < KirkMcDonald> Yeah. 22:21 < CoverSlide> haskell is awesome 22:21 < elimisteve> At Maker Faire, the main people I talked to who used Python for robotics said they had to rewrite some of it in C++ because it's too slow 22:22 -!- photron [~photron@92.201.79.87] has quit [Ping timeout: 258 seconds] 22:22 < CoverSlide> just need some mindfucking if you're coming from imperative languages 22:22 < icey> are there many people doing robotics with go? 22:22 < ww> for that sort of thing, cython/pyrex is very nice 22:22 < elimisteve> icey: can't use Go on an 8-bit microcontroller so I think not 22:23 -!- franciscosouza [~francisco@201.7.186.67] has quit [Quit: franciscosouza] 22:23 < KirkMcDonald> Pyrex isn't even really a thing any more, is it? 22:23 < KirkMcDonald> It's call Cython now. 22:23 < KirkMcDonald> all* 22:23 < elimisteve> I recently looked at notes I found outlining how I'd go about starting this distributed computing project. I wanted to use Python but that'd be way too slow. Didn't have a non-painful alternative... until Go, of course 22:23 < ww> KirkMcDonald: yeah, but pyrex was a better name 22:23 < KirkMcDonald> heh 22:23 < Baughn> CoverSlide: To be fair, haskell is a great imperative language too. Post-mindfuck. :P 22:25 < crunge> Interesting thing about perl is that a lot of its warts go away when you use functional style where possible 22:25 -!- Bigbear1 [~Cody@d173-181-44-106.abhsia.telus.net] has left #go-nuts [] 22:25 < crunge> "Higher Order Perl" by Conway being a good guide 22:25 < elimisteve> Functional programming is cool. I was experimenting more with Clojure than with Go for a while 22:26 < elimisteve> excellent concurrency support... and like 4 types of concurrency primitives (agents, refs...). Pretty confusing 22:26 < icey> elimisteve: What made you decide to spend more time with Go? (I'm doing the big language tour right now) 22:26 < icey> hah, answered my question before i could even ask it, well done 22:26 < elimisteve> enormous language by my standards 22:27 < elimisteve> :-) yes, overly complicated was part of it 22:27 < elimisteve> I'm becoming a bit skeptical of the cult of Lisp too 22:28 -!- wchicken [~chicken@66-117-135-135.rdsl.lmi.net] has joined #go-nuts 22:28 < elimisteve> I know there's a lot of brilliance to Lisp and Haskell, but you'd think they'd be used all over the freaking place if they really gave you the advantages adherents claim they do. I don't know... 22:29 -!- angasule [~angasule@190.2.33.49] has quit [Ping timeout: 268 seconds] 22:29 < elimisteve> Composing 5 functions to do something complex in a totally stateless manner is super fun. 22:30 -!- vpit3833 [~user@203.111.33.203] has joined #go-nuts 22:31 -!- TheCritic [~TheCritic@c-24-30-34-40.hsd1.ga.comcast.net] has quit [Ping timeout: 240 seconds] 22:31 < elimisteve> icey: I can simply get stuff done in Go. If I wanted to create something ridiculous, like self-improving AI, I'd start with Clojure... and probably never finish the alpha. 22:32 < icey> *chuckle* 22:32 < elimisteve> Rich Hickey packed a lot of great ideas into Clojure, but Google's backing of Go also gives me confidence that it'll survive. I'm not sure Lisp will ever take off. 22:33 < CoverSlide> elimisteve: looked at racket? 22:33 < Tv> elimisteve: you had me at "no jvm" 22:33 < elimisteve> take off as a top 10 language I should say 22:33 < elimisteve> Tv: using all of Java's libraries is a huge advantage that Clojure has over Go 22:33 < CoverSlide> also a disadvantage 22:35 < elimisteve> To have that kind of library support for free, and without giving into Java's verbosity, is pretty sweet 22:35 < icey> i dunno, having access to tons and tons of libraries is pretty nice 22:35 < crunge> InputStream is = new BufferedinputStream(new InputStreamReader(new FileInputStream("putaguninmymouth.txt"))); 22:36 < elimisteve> haha I know 22:36 < crunge> or whatever. I know it's better now 22:36 < crunge> Java 6 helped with some of the that suck 22:36 < elimisteve> icey: this too was damning -- http://shootout.alioth.debian.org/u64q/benchmark.php?test=all&lang=clojure&lang2=go 22:36 < Tv> my favorite so far: contrib/piggybank/java/src/main/java/org/apache/pig/piggybank/evaluation/util/apachelogparser/SearchEngineExtractor.java 22:36 < Tv> and that's not even talking about the code itself, just the culture 22:37 < elimisteve> Compared to Clojure, Go is twice as fast, uses 1/10th the memory, and is more succinct. Ouch. 22:38 < elimisteve> ...or 1/100 the memory, depending on the benchmark 22:38 -!- mnoel [~mnoel@c-75-65-250-60.hsd1.la.comcast.net] has quit [Ping timeout: 255 seconds] 22:39 < elimisteve> If Clojure was as fast as Haskell, or Haskell had 5% the library support of Clojure/Java, that would make for an interesting combination 22:40 < CoverSlide> why's the b-tree program slower on go? 22:40 < elimisteve> no idea, but yeah Clojure is a bit faster on 3 of the 10 benchmarks 22:41 < icey> i'm not a big clojure guy, but evidently performance is significantly improved in their next version (1.3) 22:41 < crunge> Is Clojure billed as a performant language? 22:42 <+iant> regex-dna is just going to be a regexp issue, but I do wonder about binary-tree 22:42 < icey> crunge: i don't think it is 22:42 < icey> crunge: but the idea is that they are improving type hinting support in order to make it more performant 22:42 < elimisteve> crunge: Rich Hickey brags about log_32(n) data structures, saying that's basically constant time 22:43 < CoverSlide> scala seems to outperform clojure 22:43 < elimisteve> he tries to make a case for it being almost as fast as Java 22:43 < elimisteve> it definitely does 22:43 < elimisteve> as does Java 22:43 < CoverSlide> i hear lots of buzz around scala, never looked into it tho 22:44 < crunge> I do think the most important criteria for language selection is team efficiency 22:44 < elimisteve> It's a step in the right direction for Java programmers, but god 22:44 < elimisteve> "Java done right" still isn't very good in my opinion 22:44 < icey> there is a lot of "cleverness" to be found in scala code 22:44 < elimisteve> crunge: any good studies/data on that? 22:45 < elimisteve> on which languages maximize team efficiency? 22:45 -!- hcatlin [~hcatlin@c-24-127-228-41.hsd1.fl.comcast.net] has joined #go-nuts 22:45 -!- hcatlin [~hcatlin@c-24-127-228-41.hsd1.fl.comcast.net] has quit [Changing host] 22:45 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined #go-nuts 22:45 < elimisteve> and at which team sizes 22:45 < crunge> elimisteve: ESR talks it up a lot in "The Art of Unix Programming" 22:46 < crunge> elimisteve: Dunno. I think that's why makes Java excel for huge projects. Java code is so terribly terribly consistent that, while it's slow to program in, it makes your programmers an interchangeable commodity 22:47 < crunge> ESR's argument is that compute resources are always cheaper than developers. Although he may be thinking of talented developers 22:47 < elimisteve> And you're saying having interchangeable programmers significantly impacts team efficiency? Hmm 22:47 < crunge> elimisteve: Well, perceived efficiency, of which cost is a component 22:47 < Tv> crunge: ESR also talks about picking up women.. 22:47 < ww> java's success is down to it being used as a teaching language, i think. hordes of people learned it in school 22:48 < crunge> ww: Pascal's also a teaching language 22:48 < elimisteve> I'm easily picturing 5 devs all with unique knowledge of the codebase and still being crazy fast/efficient as a team. That can happen right? 22:49 < elimisteve> I do think learning Java first is a fine idea 22:49 < crunge> elimisteve: In my Java scenario, I'm thinking about hundreds of University of Phoenix programmers all working on some DoD contract project 22:49 < elimisteve> I know a guy who started with Python and is having trouble with the strictness of Java 22:49 < crunge> Everyone should learn Logo first 22:50 -!- dfc [~dfc@124-149-49-45.dyn.iinet.net.au] has quit [Quit: dfc] 22:50 < Tv> elimisteve: he might find a way through __slots__ and thinking of properties & setters for every attribute 22:56 -!- Venom_X [~pjacobs@66.54.185.130] has quit [Quit: Leaving] 23:03 -!- awidegreen [~quassel@h-170-226.A212.priv.bahnhof.se] has quit [Remote host closed the connection] 23:06 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts 23:07 -!- ExtraSpice [XtraSpice@78-57-204-104.static.zebra.lt] has quit [Read error: Connection reset by peer] 23:10 -!- Nisstyre [~nisstyre@109.74.204.224] has quit [Ping timeout: 255 seconds] 23:10 -!- franciscosouza [~francisco@187.105.21.125] has joined #go-nuts 23:10 -!- niemeyer [~niemeyer@201-11-242-14.pltce701.dsl.brasiltelecom.net.br] has quit [Ping timeout: 240 seconds] 23:11 -!- angasule [~angasule@190.2.33.49] has joined #go-nuts 23:11 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 23:12 -!- Spacenick [~niklas@stgt-5f7011df.pool.mediaWays.net] has quit [Quit: leaving] 23:14 -!- shvntr [~shvntr@119.121.31.56] has quit [Ping timeout: 255 seconds] 23:18 -!- AmourDeZombi [~jphillips@c-76-112-223-150.hsd1.mi.comcast.net] has left #go-nuts [] 23:19 -!- jbooth1 [~jay@209.249.216.2] has quit [Quit: Leaving.] 23:21 -!- marko__ [~marko@host124-196-dynamic.43-79-r.retail.telecomitalia.it] has quit [Ping timeout: 255 seconds] 23:21 -!- shvntr [~shvntr@119.121.31.56] has joined #go-nuts 23:21 -!- replore_ [~replore@ntkngw256114.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #go-nuts 23:23 < str1ngs> crunge: I started with logo :P 23:23 -!- purplegrape [~baalsoffi@cm133.gamma204.maxonline.com.sg] has quit [Ping timeout: 276 seconds] 23:24 < skelterjohn> me too! that and hypertalk 23:24 -!- replore_ [~replore@ntkngw256114.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote host closed the connection] 23:24 < skelterjohn> learn java first? *shudder* 23:24 -!- iant [~iant@nat/google/x-bxmowmbnbevxvhky] has quit [Ping timeout: 260 seconds] 23:24 < crunge> It's seriously the best first language. It's all programming concepts and syntax. No API, not design concepts, etc 23:25 < skelterjohn> and you never think about memory for the rest of your life 23:26 -!- shvntr [~shvntr@119.121.31.56] has quit [Ping timeout: 240 seconds] 23:28 < KirkMcDonald> I started with BASIC back in the day, and then QBASIC. 23:29 < elimisteve> fumbled around with Perl in HS before learning Java and C in college 23:29 < elimisteve> then Python toward the end of college (on my own) and since 23:31 -!- iant [~iant@nat/google/x-xrmftinkrebpdvob] has joined #go-nuts 23:31 -!- mode/#go-nuts [+v iant] by ChanServ 23:31 -!- Bigbear1 [~Cody@d173-181-44-106.abhsia.telus.net] has joined #go-nuts 23:32 -!- iant1 [~iant@67.218.107.72] has joined #go-nuts 23:33 < |Craig|> ah, hypertalk. Learning to program on something that disappeared completely within 5 years. Its good to learn language independence early. 23:35 -!- iant [~iant@nat/google/x-xrmftinkrebpdvob] has quit [Ping timeout: 240 seconds] 23:35 -!- vinisterx [~ryan@74-129-201-27.dhcp.insightbb.com] has joined #go-nuts 23:36 < skelterjohn> hehe 23:36 -!- shvntr [~shvntr@119.121.31.56] has joined #go-nuts 23:36 < skelterjohn> i actually was too young to really get the actual language 23:36 < skelterjohn> but i'd make flashcard games 23:37 -!- tvw [~tv@e176003139.adsl.alicedsl.de] has quit [Ping timeout: 255 seconds] 23:37 -!- boscop_ [~boscop@f055253043.adsl.alicedsl.de] has joined #go-nuts 23:38 < |Craig|> I made some buttons move around in different patterns, and something that generated sentences (just swapped a few nouns I think) 23:38 -!- boscop [~boscop@unaffiliated/boscop] has quit [Read error: Connection reset by peer] 23:41 -!- shvntr [~shvntr@119.121.31.56] has quit [Ping timeout: 276 seconds] 23:42 -!- alkavan [~alkavan@IGLD-84-228-126-217.inter.net.il] has quit [Ping timeout: 252 seconds] 23:42 -!- Nitro [~Nitro@unaffiliated/nitro] has quit [Ping timeout: 276 seconds] 23:42 -!- Nitro [~Nitro@unaffiliated/nitro] has joined #go-nuts 23:43 -!- boscop [~boscop@f055253043.adsl.alicedsl.de] has quit [Read error: Connection reset by peer] 23:43 -!- alkavan [~alkavan@IGLD-84-229-168-152.inter.net.il] has joined #go-nuts 23:44 -!- boscop [~boscop@unaffiliated/boscop] has joined #go-nuts 23:46 -!- wchicken [~chicken@66-117-135-135.rdsl.lmi.net] has quit [Ping timeout: 252 seconds] 23:46 -!- replore_ [~replore@ntkngw256114.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #go-nuts 23:47 -!- replore_ [~replore@ntkngw256114.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote host closed the connection] 23:47 -!- dfc [~dfc@eth59-167-133-99.static.internode.on.net] has joined #go-nuts 23:54 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit: hcatlin] 23:55 -!- Bigbear1 [~Cody@d173-181-44-106.abhsia.telus.net] has quit [Read error: Connection reset by peer] 23:56 -!- Bigbear1 [~Cody@d173-181-44-106.abhsia.telus.net] has joined #go-nuts 23:57 < dforsyth> meatmanek: lets think of a way to get go into our tree 23:57 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined #go-nuts 23:59 -!- skelterjohn [~jasmuth@c-24-0-2-70.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] --- Log closed Fri Jun 10 00:00:53 2011