--- Log opened Mon Mar 14 00:00:55 2011 00:01 -!- Wiz126 [Wiz@h187.120.232.68.ip.windstream.net] has joined #go-nuts 00:04 -!- tensai_cirno [~cirno@77.232.15.216] has quit [Remote host closed the connection] 00:27 < fzzbt> steven: that would be putting programming stuff into templates which goes against some people's idea how templates should be designed. When would it be too much hassle to call your non-0-arg methods in your actual code? 00:29 -!- cenuij [~cenuij@78.112.41.178] has joined #go-nuts 00:29 -!- cenuij [~cenuij@78.112.41.178] has quit [Changing host] 00:29 -!- cenuij [~cenuij@base/student/cenuij] has joined #go-nuts 00:30 -!- iant1 [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Ping timeout: 255 seconds] 00:31 -!- iant [~iant@216.239.45.130] has joined #go-nuts 00:31 -!- mode/#go-nuts [+v iant] by ChanServ 00:35 < steven> fzzbt: im just thinking in terms of creating a rails-like clone in Go 00:36 < fzzbt> doesn't rails make it possible to insert program logic into templates? 00:36 < crazy2be> steven: You could probably just execute go code in certain tags through some trickery 00:39 < steven> btw, whats the best way of creating a temporary io.Writer for reading the data written to it as a string? 00:39 < crazy2be> bytes.Bugger 00:40 < crazy2be> *Buffer 00:40 < steven> ahh thats smarter than io.Pipe which i was planning on using 00:40 < steven> thanks bromium 00:42 -!- gid [~gid@220-253-33-95.VIC.netspace.net.au] has quit [Quit: Leaving.] 00:48 -!- ronnyy [~quassel@p4FF1C736.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 00:50 -!- SirPsychoS [~sp@c-24-13-132-130.hsd1.il.comcast.net] has quit [Ping timeout: 252 seconds] 00:50 < steven> fzzbt: yes, it does. 00:50 -!- ronnyy [~quassel@p4FF1C736.dip0.t-ipconnect.de] has joined #go-nuts 00:57 -!- napsy [~luka@88.200.96.18] has quit [Quit: Lost terminal] 00:57 -!- fzzbt [~fzzbt@a88-112-18-177.elisa-laajakaista.fi] has quit [Read error: Connection reset by peer] 00:59 -!- fzzbt [~fzzbt@a88-112-18-177.elisa-laajakaista.fi] has joined #go-nuts 00:59 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.4] 01:06 -!- shvntr [~shvntr@113.84.148.208] has joined #go-nuts 01:12 < steven> wow. i saw "apos" and instead of thinking "oh this stands for apostrophe" my mind went to "apostolic" instead. neat :) 01:15 < captn> go seems to be toxic https://groups.google.com/d/msg/golang-dev/WKdy68ScC58/hO0fnwTw4hgJ ;-) 01:16 -!- saturnfive [~saturnfiv@210.74.155.131] has joined #go-nuts 01:19 < dfc> captn: maddening 01:19 < dfc> all I wanted to do was just get 6cov running again 01:19 < dfc> i really dont' want to go digging in libmach 01:19 < dfc> no good will come from that 01:20 -!- nettok [~quassel@200.119.166.246] has joined #go-nuts 01:22 < steven> i forgot why i wanted __FILE__ 01:22 < steven> absolutely forgot what i wanted to do with it in the first place 01:22 < steven> i found something.Caller() and it only returns the name of the file.. and i have no idea if thats good or bad for my purposes because i dont know what my purposes are! frustrating. heh 01:42 < exch> :P 01:47 < str1ngs> can someone check this is right? https://gist.github.com/868652 01:48 < str1ngs> the libgit2 docs state that the c-string must be deallocated. so is that the right way? 01:48 < exch> looks ok 01:48 < exch> ya 01:49 < str1ngs> ok thank you 01:54 < captn> str1ngs: what I don't get, goog employs Hamano and is even so incapable to implement git support in googlecode ... 01:54 < str1ngs> captn: I'm sure its not they cant its just that mercurial does the samething 01:55 < str1ngs> there are differences of course but the principles are the same. 01:56 < str1ngs> captn: if you need to use google code. just use use git-hg its pretty seemless 01:56 < captn> I heard that it's broken by design (linus) 01:57 < str1ngs> for some people starting I suggest hg, its really not bad. 01:57 < str1ngs> it could be worst.. bzr... 01:58 < captn> indeed :-) 01:58 < str1ngs> but to fair I have not used bzr or hg enough to even comment :P 02:03 -!- Cromulent [~Cromulent@cpc8-reig4-2-0-cust24.6-3.cable.virginmedia.com] has quit [Quit: Cromulent] 02:08 -!- mikespook [~mikespook@183.47.231.18] has joined #go-nuts 02:09 -!- fzzbt [~fzzbt@a88-112-18-177.elisa-laajakaista.fi] has quit [Quit: Lost terminal] 02:10 -!- wtfness [~dsc@78.100.173.66] has joined #go-nuts 02:11 -!- foocraft [~dsc@78.101.80.142] has quit [Ping timeout: 255 seconds] 02:39 -!- pilgrum [~pilgrum@cpe-67-49-71-222.socal.res.rr.com] has joined #go-nuts 02:45 < steven> is there a way to get the name of the currently executing function? 02:49 -!- nettok [~quassel@200.119.166.246] has quit [Ping timeout: 276 seconds] 02:55 -!- toyoshim [~toyoshim@y241242.dynamic.ppp.asahi-net.or.jp] has quit [Ping timeout: 276 seconds] 02:57 < skelterjohn> steven: runtime.Caller 02:58 < skelterjohn> http://code.google.com/p/gonicetrace/source/browse/nicetrace/nicetrace.go 03:05 < steven> skelterjohn: that doesnt show the function/method name :P 03:05 < skelterjohn> oh you're right 03:05 < steven> nm though 03:05 < steven> its a silly idea 03:06 < skelterjohn> if you have access to the source, you can combine line info with go/ast 03:08 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has quit [Ping timeout: 615 seconds] 03:10 < steven> ah right. 03:11 < steven> whatcha think? https://github.com/sdegutis/go-sinatra/blob/master/the-plan-so-far.txt 03:14 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts 03:22 -!- JusticeFries [~JusticeFr@c-24-9-171-36.hsd1.co.comcast.net] has joined #go-nuts 03:29 < steven> kinda like a mature version of web.go 03:30 < dfc> steven: ^ nice! 03:30 < dfc> extra marks for using func()'s 03:32 < steven> oh wait. 03:32 < steven> its not different enough from web.go 03:33 * dfc goes back to printf debugging 6cov 03:35 <@adg> steven: it's not even very different from http 03:35 < steven> actually its very much the same as web.go in all except 3 small details: (1) the first argument to each handler is a request object; (2) it can return a string or a redirect object; (3) it instantiates a web object instead of using a global one.. although i like the idea of having a default global one instead.. ie, w := web.W instead of w := web.Web{} 03:35 <@adg> how does web.Render work? 03:35 < steven> adg: it adds enough convenience on top of http to be worth the hassle 03:35 <@adg> the return value? 03:36 < steven> adg: web.Render would work by looking up the template file, creating a convenience-object to pass into template.Exec, and returning the resulting string 03:37 < steven> oh i forgot helpers. 03:38 < steven> ok, added helpers.. https://github.com/sdegutis/go-sinatra/blob/master/the-plan-so-far.txt 03:39 -!- shvntr_ [~shvntr@113.84.148.208] has joined #go-nuts 03:39 -!- shvntr_ [~shvntr@113.84.148.208] has quit [Client Quit] 03:41 < steven> DAMNIT 03:41 < steven> go-fastweb took the idea i had today, ALMOST TO THE FRICKEN T 03:45 -!- chomp [~ken@c-71-206-216-232.hsd1.pa.comcast.net] has joined #go-nuts 03:47 < chomp> I can't seem to get http.Request to give me a non-empty Host string in its URL 03:47 -!- JusticeFries [~JusticeFr@c-24-9-171-36.hsd1.co.comcast.net] has left #go-nuts [] 03:48 < chomp> The raw URL seems to contain only the path and everything after it 03:49 < steven> are you running it with the local address of ":8080" or something? 03:49 < chomp> I am 03:50 < chomp> but the incoming request is not from localhost - i would have expected Host to contain the Host string from the actual incoming request 03:53 < chomp> It looks like I can parse what I need out of http.Request.Referrer but that seems dubious 03:54 < chomp> and in fact in the raw request header, the Host field is what i want 03:54 < chomp> yet that is not what is stored in Request.Host as per the documentation 03:55 < steven> weird 03:56 < chomp> ah looking at the http source, it seems that the Host field, among others, is explicitly filtered from the raw header when parsing 03:56 < chomp> and replaced with something else 03:56 < chomp> hrm. 03:57 -!- gogogrrl [~max@p5DE8E6CF.dip.t-dialin.net] has joined #go-nuts 03:59 -!- gogogrrl_ [~max@p5DE8E6B7.dip.t-dialin.net] has quit [Read error: Operation timed out] 04:08 -!- pilgrum [~pilgrum@cpe-67-49-71-222.socal.res.rr.com] has quit [Ping timeout: 248 seconds] 04:09 -!- pilgrum [~pilgrum@cpe-67-49-71-222.socal.res.rr.com] has joined #go-nuts 04:14 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 246 seconds] 04:16 -!- slashus2 [~slashus2@74-141-110-130.dhcp.insightbb.com] has quit [Quit: slashus2] 04:25 -!- ronny [~quassel@p4FF1C663.dip0.t-ipconnect.de] has joined #go-nuts 04:25 -!- ronnyy [~quassel@p4FF1C736.dip0.t-ipconnect.de] has quit [Ping timeout: 240 seconds] 04:34 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 252 seconds] 04:38 -!- shvntr [~shvntr@113.84.148.208] has quit [Ping timeout: 240 seconds] 04:48 -!- schmrkc [~marcus@sxemacs/devel/schme] has quit [Ping timeout: 250 seconds] 04:48 -!- schmrkc [~marcus@c83-254-196-92.bredband.comhem.se] has joined #go-nuts 04:48 -!- schmrkc [~marcus@c83-254-196-92.bredband.comhem.se] has quit [Changing host] 04:48 -!- schmrkc [~marcus@sxemacs/devel/schme] has joined #go-nuts 04:49 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts 05:05 -!- shvntr [~shvntr@113.84.148.208] has joined #go-nuts 05:05 -!- captn [~root@pD9FE28F3.dip.t-dialin.net] has quit [Quit: Leaving.] 05:09 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 252 seconds] 05:11 -!- enherit [~enherit@24-176-217-66.dhcp.lnbh.ca.charter.com] has joined #go-nuts 05:14 -!- mikespook [~mikespook@183.47.231.18] has quit [Ping timeout: 240 seconds] 05:14 -!- mikespook1 [~mikespook@116.21.153.120] has joined #go-nuts 05:15 -!- enherit [~enherit@24-176-217-66.dhcp.lnbh.ca.charter.com] has quit [Client Quit] 05:17 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts 05:18 -!- cenuij [~cenuij@base/student/cenuij] has quit [Remote host closed the connection] 05:19 -!- zozoR [~Morten@56346ed3.rev.stofanet.dk] has joined #go-nuts 05:29 -!- pilgrum [~pilgrum@cpe-67-49-71-222.socal.res.rr.com] has quit [Ping timeout: 264 seconds] 05:30 -!- shvntr [~shvntr@113.84.148.208] has quit [Read error: Connection reset by peer] 05:36 -!- Netsplit *.net <-> *.split quits: mikespook1, chomp, tensorpudding, skelterjohn, kingfishr, zozoR, Guest81572, foocraft, lmoura 05:36 -!- Netsplit *.net <-> *.split quits: yebyen, Paradox924X, [dmp], jkleier, czr_, rl, vpit3833, xulfer, kurt, tav 05:36 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 252 seconds] 05:39 -!- shvntr [~shvntr@113.84.148.208] has joined #go-nuts 05:40 -!- pilgrum [~pilgrum@cpe-67-49-71-222.socal.res.rr.com] has joined #go-nuts 05:44 -!- fabled [~fabled@mail.fi.jw.org] has joined #go-nuts 05:45 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts 05:51 -!- Netsplit over, joins: foocraft, zozoR, mikespook1, tensorpudding, Guest81572, kingfishr, skelterjohn, lmoura, jkleier, [dmp] (+8 more) 06:15 -!- crazy2be [~crazy2be@d209-89-248-73.abhsia.telus.net] has quit [Ping timeout: 250 seconds] 06:16 -!- ExtraSpice [XtraSpice@78-62-101-194.static.zebra.lt] has joined #go-nuts 06:20 -!- zozoR [~Morten@56346ed3.rev.stofanet.dk] has quit [Remote host closed the connection] 06:22 -!- vinisterx [~ryan@74-129-201-27.dhcp.insightbb.com] has joined #go-nuts 06:24 -!- dfc [~dfc@sydfibre2.atlassian.com] has quit [Ping timeout: 246 seconds] 06:40 -!- ildorn [~ildorn@dslb-188-099-196-154.pools.arcor-ip.net] has joined #go-nuts 06:52 -!- Natch [~natch@c-6dcde155.25-4-64736c10.cust.bredbandsbolaget.se] has joined #go-nuts 06:55 -!- Natch| [~natch@c-6dcde155.25-4-64736c10.cust.bredbandsbolaget.se] has quit [Ping timeout: 248 seconds] 07:12 -!- nixness [~dsc@dyn-86-36-42-96.wv.qatar.cmu.edu] has joined #go-nuts 07:12 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|] 07:33 -!- wrtp [~rog@92.17.3.222] has joined #go-nuts 07:33 -!- it_diver [~it_diver@dslb-088-068-253-221.pools.arcor-ip.net] has joined #go-nuts 08:16 -!- petrux [~petrux@host16-224-static.53-82-b.business.telecomitalia.it] has joined #go-nuts 08:18 -!- saturnfive [~saturnfiv@210.74.155.131] has quit [Read error: Connection reset by peer] 08:18 -!- saturnfive [~saturnfiv@210.74.155.131] has joined #go-nuts 08:27 -!- skejoe [~skejoe@188.114.142.162] has joined #go-nuts 08:27 -!- tvw [~tv@212.79.9.150] has joined #go-nuts 08:45 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 08:50 -!- visof [~visof@41.233.121.162] has joined #go-nuts 08:50 -!- visof [~visof@41.233.121.162] has quit [Changing host] 08:50 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts 08:53 -!- Urmel|Work [~UrmelWork@cache1.uk.logica.com] has joined #go-nuts 09:01 -!- Fish- [~Fish@coss6.exosec.net] has quit [Quit: So Long, and Thanks for All the Fish] 09:03 -!- cenuij [~cenuij@78.112.41.178] has joined #go-nuts 09:03 -!- cenuij [~cenuij@78.112.41.178] has quit [Changing host] 09:03 -!- cenuij [~cenuij@base/student/cenuij] has joined #go-nuts 09:06 -!- Fish [~Fish@exo3753.pck.nerim.net] has joined #go-nuts 09:07 -!- dfc [~dfc@124-168-57-115.dyn.iinet.net.au] has joined #go-nuts 09:08 -!- Fish [~Fish@exo3753.pck.nerim.net] has quit [Client Quit] 09:08 -!- Fish [~Fish@exo3753.pck.nerim.net] has joined #go-nuts 09:19 -!- rtharper [~tomh@unaffiliated/sioraiocht] has quit [Remote host closed the connection] 09:20 -!- napsy [~luka@193.2.66.6] has joined #go-nuts 09:28 -!- it_diver [~it_diver@dslb-088-068-253-221.pools.arcor-ip.net] has left #go-nuts [] 09:30 -!- Cromulent [~Cromulent@cpc8-reig4-2-0-cust24.6-3.cable.virginmedia.com] has joined #go-nuts 09:39 -!- dfc [~dfc@124-168-57-115.dyn.iinet.net.au] has quit [Quit: dfc] 09:41 -!- dfc [~dfc@124-168-57-115.dyn.iinet.net.au] has joined #go-nuts 09:50 <@adg> steven: damnit? isn't that a good thing? someone's already done the work, you can contribute 09:51 <@adg> chaos95_: request.URL.Host ? 09:58 < wrtp> adg: i just replied to the concurrent method call issue 09:58 < wrtp> i don't know what your feelings are about it 10:13 -!- dfc [~dfc@124-168-57-115.dyn.iinet.net.au] has quit [Quit: dfc] 10:18 -!- xyproto [~alexander@77.40.159.131] has joined #go-nuts 10:18 -!- saturnfive [~saturnfiv@210.74.155.131] has quit [Read error: Connection reset by peer] 10:22 -!- aho [~nya@fuld-4d00d681.pool.mediaWays.net] has joined #go-nuts 10:27 -!- napsy [~luka@193.2.66.6] has quit [Read error: Connection reset by peer] 10:29 -!- napsy [~luka@193.2.66.6] has joined #go-nuts 10:33 -!- sacho [~sacho@46.10.16.35] has joined #go-nuts 10:38 <@adg> wrtp: yeah, it's an interesting one 10:38 <@adg> wrtp: most of the time it seems obvious 10:38 <@adg> wrtp: but then there are cases where you wonder 10:39 < wrtp> adg: yeah, but the "you can Close while other goroutines are doing Read" case is definitely not obvious 10:39 < wrtp> and it catches people out 10:40 < wrtp> given that Go is a language that makes no attempt to build concurrency-safety into much of the language, i think it's important that we document the places where it is and isn't OK to do things concurrently 10:42 < wrtp> often the obviousness only comes from knowing how things are implemented underneath. and that may change - and many people won't have any idea what's going on underneath 10:42 <@adg> i agree 10:42 <@adg> i'm interested to hear russ and rob's takes on it 10:43 <@adg> it's either a matter of simply improving docs, or setting up some sort of framework to define what is and isn't safe 10:43 <@adg> which i guess is just a more elaborate way of "improving docs" 10:47 -!- rtharper [~tomh@unaffiliated/sioraiocht] has joined #go-nuts 10:49 -!- napsy [~luka@193.2.66.6] has quit [Read error: Connection reset by peer] 10:50 -!- Urmel|Work [~UrmelWork@cache1.uk.logica.com] has quit [Ping timeout: 255 seconds] 10:53 -!- napsy [~luka@193.2.66.6] has joined #go-nuts 10:53 < wrtp> yes. i started a thread in golang-dev trying to talk about this, but nobody seemed particularly interested. i do think it's important though. 10:54 < wrtp> i first started thinking about the issue properly when i was building something to fake a net.Conn. i realised that i didn't know what the rules actually were, because they weren't written down anywhere. 10:57 -!- shvntr [~shvntr@113.84.148.208] has quit [Ping timeout: 240 seconds] 10:59 -!- shvntr [~shvntr@113.84.148.208] has joined #go-nuts 11:00 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org] 11:18 -!- Guest86754 [~quassel@p4FF1C663.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 11:22 -!- tensorpudding [~user@99.56.160.152] has quit [Remote host closed the connection] 11:25 -!- dfc [~dfc@124-168-57-115.dyn.iinet.net.au] has joined #go-nuts 11:26 -!- dfc [~dfc@124-168-57-115.dyn.iinet.net.au] has quit [Client Quit] 11:32 -!- rtharper [~tomh@unaffiliated/sioraiocht] has quit [Read error: Connection reset by peer] 11:33 -!- rtharper [~tomh@unaffiliated/sioraiocht] has joined #go-nuts 11:36 -!- niekie [~niek@2001:470:9326::3] has joined #go-nuts 11:36 -!- niekie [~niek@2001:470:9326::3] has quit [Changing host] 11:36 -!- niekie [~niek@CAcert/Assurer/niekie] has joined #go-nuts 11:46 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 11:46 < kamaji> What would be the best way to represent an n-tuple in Go? 11:46 -!- ildorn [~ildorn@dslb-188-099-196-154.pools.arcor-ip.net] has quit [Read error: Connection reset by peer] 11:47 -!- ildorn [~ildorn@dslb-188-099-196-154.pools.arcor-ip.net] has joined #go-nuts 11:50 -!- shvntr [~shvntr@113.84.148.208] has quit [Quit: leaving] 11:54 -!- artefon [~thiago@dhcp16.usuarios.dcc.ufmg.br] has joined #go-nuts 11:56 < wrtp> kamaji: with different member types, or all the same member types? 11:59 < ww> likely a slice 11:59 < ww> if there are different types, declare an interface that expresses their common parts, and make a slice of that interface 12:00 < Namegduf> If the n is constant, an array would work. 12:00 < Namegduf> If not, slice is needed. 12:00 < kamaji> wrtp: different types 12:01 < ww> or even tup := []interface} 12:01 < kamaji> and different sizes 12:01 < ww> if they really have nothing in common 12:01 < kamaji> actually I guess the types are "numeric" 12:01 < kamaji> so ints, floats, etc. 12:02 < Namegduf> You'd need to use interface{} and use a type switch when extracting things. 12:02 < kamaji> is that with reflecT?/ 12:02 < kamaji> and Typeof? 12:02 < Namegduf> No. 12:02 < kamaji> what's a type switch... :D 12:03 < kamaji> oh cool 12:03 < Namegduf> http://golang.org/doc/go_spec.html#Switch_statements <- Scroll down to type switch 12:04 -!- zimsim [~simon@87.72.77.195] has joined #go-nuts 12:07 < wrtp> kamaji: use a struct 12:07 < wrtp> it's the nearest thing go has to an n-tuple 12:07 < wrtp> no need to use dynamic types if you know the types statically 12:08 < ww> myint, ok := elem.(int) 12:08 < ww> ok is false if elem is nto an int 12:09 < kamaji> ww: well I don't know how big the tuple is at compile-time 12:09 -!- jgonzalez [~jgonzalez@173-14-137-134-NewEngland.hfc.comcastbusiness.net] has joined #go-nuts 12:09 < wrtp> kamaji: does the size of the tuple vary at run time? 12:09 < wrtp> kamaji: because that's not something that would usually be called an n-tuple 12:09 < kamaji> wrtp: well I was going to have transforms to get new tuples 12:09 < kamaji> wrtp: and have immutable tuples 12:10 < ww> this is getting perilously close to generics... 12:10 < wrtp> kamaji: when you say n-tuple, i think of ML or haskell's tuples. i.e. a type safe conjunction of several types, e.g. (int, string, float, float) 12:10 < ww> operation on tuples that are well defined letting n vary... 12:11 < wrtp> kamaji: what are you actually trying to do? 12:11 < kamaji> i'm trying to write a fairly generic machine learning library 12:11 < kamaji> and create word vectors 12:12 < wrtp> what's a "word" in this context? 12:12 < kamaji> a feature 12:12 < kamaji> so you have instances, which are sets of features 12:12 < kamaji> and a set of instances of the same type, i.e. with the same features 12:13 < wrtp> the features being dynamically determined? 12:13 < kamaji> it depends, I can either examine the entire dataset and then create features, or I can do it while i'm going through the dataset 12:13 < kamaji> in which case it has to be dynamic, I guess 12:13 < wrtp> yup 12:14 < kamaji> but either way I need to create an unknown n-tuple 12:14 < wrtp> what can you do with a feature? 12:14 < kamaji> a feature is basically just a value 12:14 < wrtp> so you can... compare it for equality? hash it? combine it with other features of the same type? 12:14 < kamaji> but it also has a type 12:15 < kamaji> it really depends, this is the problem 12:15 < kamaji> if you want to allow "text" as a feature, you can't really do a divide on that 12:15 < kamaji> but if you only allow numerics, it's ok 12:15 < kamaji> but then if you want arbitrary precision, it's not ok, because you can't assume the +*-/ operators work 12:16 < wrtp> why would your machine learning algorithm want to divide two arbitrary features? 12:16 < kamaji> classifiers will have to do arithmetic on numeric featurs 12:16 < kamaji> oh but I see what you mean 12:17 < wrtp> kamaji: go provides an easy way to collect a load of stuff of arbitrary types together ([]interface{}) but that doesn't necessarily help you... 12:17 < kamaji> I'm just going to assume features are numeric 12:17 < kamaji> and I can use +-/* 12:17 < wrtp> why don't you just use float64 12:17 < kamaji> wrtp: sometimes you need ints 12:18 < kamaji> e.g. naive bayes with word frequencies 12:18 < wrtp> kamaji: why? a float64 is a superset of an int32 12:18 < kamaji> it's inexact though, I suppose it probably wouldn't have much of an effect on probabilities 12:19 < wrtp> kamaji: it's not exact for -(1<<31) <= x < 1<<31 12:19 < wrtp> s/exact/inexact 12:19 -!- napsy [~luka@193.2.66.6] has quit [Ping timeout: 252 seconds] 12:19 < wrtp> it's a strict superset of int32 12:19 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has quit [Ping timeout: 255 seconds] 12:20 < kamaji> I thought it couldn't represent some integers exactly? 12:20 < Namegduf> Only ones outside that range. 12:20 < wrtp> kamaji: only integers outside that range 12:20 < kamaji> oh 12:20 < kamaji> ok 12:20 < kamaji> sorted. 12:20 < kamaji> Thanks! 12:20 < kamaji> that makes life about 100x easier 12:20 < wrtp> brillian 12:20 < wrtp> t 12:20 < wrtp> it'll probably make things about 100x faster too 12:21 < kamaji> yeah, which is always nice for 200M+ instance datasets~ 12:22 < wrtp> :-) 12:23 < kamaji> wahaha, one of my lectures is going to be wearing a banana suit for charity 12:23 < kamaji> what a good day. 12:29 -!- gid [~gid@220-253-33-95.VIC.netspace.net.au] has joined #go-nuts 12:31 -!- aho [~nya@fuld-4d00d681.pool.mediaWays.net] has quit [Quit: EXEC_over.METHOD_SUBLIMATION] 12:32 < ww> :) 12:34 -!- rtharper [~tomh@unaffiliated/sioraiocht] has quit [Ping timeout: 260 seconds] 12:36 -!- rtharper [~tomh@unaffiliated/sioraiocht] has joined #go-nuts 12:36 -!- rtharper [~tomh@unaffiliated/sioraiocht] has quit [Read error: Connection reset by peer] 12:37 -!- rtharper [~tomh@unaffiliated/sioraiocht] has joined #go-nuts 12:46 -!- nixness [~dsc@dyn-86-36-42-96.wv.qatar.cmu.edu] has quit [Remote host closed the connection] 12:49 -!- jkleier [~zombified@li42-87.members.linode.com] has quit [Quit: Lost terminal] 12:50 -!- rtharper_ [~tomh@host-84-9-143-150.dslgb.com] has joined #go-nuts 12:50 -!- virtualsue [~chatzilla@nat/cisco/x-uylncviiolgfuxhq] has joined #go-nuts 12:51 -!- rtharper [~tomh@unaffiliated/sioraiocht] has quit [Ping timeout: 264 seconds] 12:58 -!- shvntr [~shvntr@123.64.95.51] has joined #go-nuts 13:04 < steven> adg: yeah its a good thing on one hand 13:04 < steven> but on the other hand, i have a bad case of NIH 13:10 -!- niemeyer [~niemeyer@201-40-152-213.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 13:15 -!- Cromulent [~Cromulent@cpc8-reig4-2-0-cust24.6-3.cable.virginmedia.com] has quit [Quit: Cromulent] 13:23 -!- rtharper_ [~tomh@host-84-9-143-150.dslgb.com] has quit [Remote host closed the connection] 13:23 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has quit [Read error: Operation timed out] 13:23 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Quit: leaving] 13:23 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:24 -!- rtharper [~tomh@unaffiliated/sioraiocht] has joined #go-nuts 13:26 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Client Quit] 13:27 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:27 -!- napsy [~luka@88.200.96.18] has joined #go-nuts 13:27 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Client Quit] 13:28 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:28 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Client Quit] 13:28 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:29 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Client Quit] 13:29 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has joined #go-nuts 13:29 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has left #go-nuts [] 13:30 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:32 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Client Quit] 13:32 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:32 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Client Quit] 13:33 -!- niemeyer [~niemeyer@201-40-152-213.pltce701.dsl.brasiltelecom.net.br] has quit [Remote host closed the connection] 13:34 -!- niemeyer [~niemeyer@201-40-152-213.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 13:40 -!- niemeyer [~niemeyer@201-40-152-213.pltce701.dsl.brasiltelecom.net.br] has quit [Remote host closed the connection] 13:41 -!- niemeyer [~niemeyer@201-40-152-213.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 13:42 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:43 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Client Quit] 13:44 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:44 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Client Quit] 13:47 -!- zozoR [~Morten@56346ed3.rev.stofanet.dk] has joined #go-nuts 13:47 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:47 -!- gogogrrl [~max@p5DE8E6CF.dip.t-dialin.net] has quit [Ping timeout: 276 seconds] 13:47 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has quit [Client Quit] 13:48 -!- fzzbt [~fzzbt@a88-112-18-177.elisa-laajakaista.fi] has joined #go-nuts 13:48 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 13:50 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has joined #go-nuts 13:51 -!- qjcg [~qjcg@208.88.110.46] has joined #go-nuts 13:51 -!- emjayess [~emjayess@pix1.i29.net] has joined #go-nuts 13:51 -!- qjcg [~qjcg@208.88.110.46] has left #go-nuts [] 13:52 -!- pharris [~Adium@rhgw.opentext.com] has joined #go-nuts 13:59 -!- gogogrrl [~max@p5DE8E2E6.dip.t-dialin.net] has joined #go-nuts 14:09 -!- plainhao [~plainhao@208.75.85.237] has joined #go-nuts 14:13 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 14:18 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] 14:24 -!- skejoe [~skejoe@188.114.142.162] has quit [Quit: Lost terminal] 14:26 -!- visof [~visof@unaffiliated/visof] has quit [Remote host closed the connection] 14:27 -!- femtoo [~femto@95-89-198-8-dynip.superkabel.de] has joined #go-nuts 14:28 -!- fzzbt [~fzzbt@a88-112-18-177.elisa-laajakaista.fi] has quit [Quit: Lost terminal] 14:34 -!- crazy2be [~crazy2be@199.185.88.147] has joined #go-nuts 14:37 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts 14:38 -!- plainhao [~plainhao@208.75.85.237] has quit [Quit: plainhao] 14:38 -!- plainhao [~plainhao@208.75.85.237] has joined #go-nuts 14:41 -!- niemeyer_ [~niemeyer@201-11-241-43.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 14:44 -!- niemeyer [~niemeyer@201-40-152-213.pltce701.dsl.brasiltelecom.net.br] has quit [Ping timeout: 255 seconds] 14:50 -!- DerHorst [~Horst@e176099127.adsl.alicedsl.de] has joined #go-nuts 14:55 -!- artefon [~thiago@dhcp16.usuarios.dcc.ufmg.br] has quit [Quit: bye] 14:58 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts 14:59 < skelterjohn> morning 15:02 < niemeyer> skelterjohn: Morning! 15:03 < skelterjohn> hows things in go land? 15:05 * ww is digging into swap 15:05 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts 15:06 -!- crazy2be [~crazy2be@199.185.88.147] has quit [Ping timeout: 250 seconds] 15:13 < kimelto> is it possible to remove an item from an array/slice? 15:14 < skelterjohn> exch: i discovered an interesting command line yesterday... chromium-browser -app="http://some.url.com" 15:14 < skelterjohn> kimelto: easy way is to swap it with the last element in the slice, and then reslice to be one shorter 15:14 < exch> skelterjohn: yes I use that for my webapps 15:15 < skelterjohn> is there a way to make it not collide with the file locking of chrome that's already open? 15:15 < kimelto> skelterjohn: thanks 15:15 -!- boscop_ [~boscop@f055157219.adsl.alicedsl.de] has joined #go-nuts 15:15 < exch> skelterjohn: what do you mean by that? 15:15 < skelterjohn> [54385:267:2470480779017750:ERROR:process_singleton_mac.cc(102)] Unable to obtain profile lock. 15:15 < skelterjohn> that's what i get if chrome is already up 15:16 < exch> ah no clue. never seen that message 15:17 < skelterjohn> probably just a mac thing, then 15:17 < ww> skelterjohn: i get the same :( 15:17 -!- boscop [~boscop@f055112181.adsl.alicedsl.de] has quit [Ping timeout: 248 seconds] 15:17 < skelterjohn> you on a mac too, ww? 15:18 < ww> yes 15:20 < skelterjohn> ah - add --user-data-dir="tmp" 15:20 < skelterjohn> or some other directory 15:20 < skelterjohn> and it launches ok, though it gripes about not being able to read pref files 15:22 -!- Venom_X [~pjacobs@74.61.90.217] has joined #go-nuts 15:25 -!- crazy2be [~crazy2be@199.185.88.147] has joined #go-nuts 15:25 < skelterjohn> exch: when you do this on your computer, and you close the window, does the process you started shut down? 15:25 -!- htoothrot [~mux@66-169-185-121.dhcp.ftwo.tx.charter.com] has quit [Read error: Connection reset by peer] 15:27 < exch> that depends on whether or not chromium is already open. If you start a new instance, it merges with the existing chrome process 15:28 -!- htoothrot [~mux@66-169-185-121.dhcp.ftwo.tx.charter.com] has joined #go-nuts 15:28 < exch> it tells me 'Opened new window in existing chromium session' 15:28 -!- emjayess [~emjayess@pix1.i29.net] has quit [Remote host closed the connection] 15:29 < exch> the process for the app itsel does get killed when you close it, but I found that it may have a different PID as the one you started it with 15:29 < exch> s/itsel/itself/ 15:30 < exch> This is mainly the reason why I stopped tracking the PID status in my Go webapp thingy in order to determine if the app was still running or not. it's very unreliable 15:32 -!- emjayess [~emjayess@pix1.i29.net] has joined #go-nuts 15:32 < skelterjohn> i guess for mac, it was more difficult to merge it in with the existing process, or something 15:33 < skelterjohn> i get two chrome balls in my task switcher when i do this 15:33 < exch> I do to 15:33 < skelterjohn> for you, do they map to windows? 15:33 < skelterjohn> if i start chrome normally, and just make new windows i still only get one chrome ball 15:34 < skelterjohn> just because of how tasks are organized for os x 15:34 < exch> technically, the app (and each tab in the normal chrome window) are independant processes. They are all children of the chromium sandbox process 15:34 < exch> openbox treats them as separate windows 15:35 < skelterjohn> what's openbox? 15:35 < exch> My window manager 15:35 < nsf> you can detach/attach chrome tabs (processes) easily from a window 15:36 < skelterjohn> right right, this isn't the point i was trying to make 15:36 < nsf> just drag the tab in or out 15:36 < skelterjohn> my point was that os x groups things differently for when you do the os x equiv of alt-tab 15:36 -!- shvntr [~shvntr@123.64.95.51] has quit [Ping timeout: 260 seconds] 15:36 < skelterjohn> and it has a different view of what it means to be "the same application" than some other OSs 15:37 < exch> In openbox you just alt-tab through windows. Whether they belong to the same app or not 15:37 < skelterjohn> if i make new windows, os x assumes its the same application, if a different process 15:37 < nsf> I see 15:37 < skelterjohn> but when i do --user-data-dir=w/e it thinks it's a new application 15:37 < nsf> delete mac; install linux; ???; PROFIT 15:37 < nsf> :) 15:37 < skelterjohn> how is what i described a problem?:) 15:38 < nsf> uhm.. 15:38 < skelterjohn> "different" is not a sufficient condition for "problem" 15:38 < exch> I think it's nice to have. Specially for something as retarded as GIMP. it has a billion separate windows which just clog up the taskbar 15:38 < nsf> btw, it's practically impossible to manage processes in Go in any way 15:38 < ww> i think chrome should check if it has a supervisor process running and then tell it to spawn the app rather than complaining about locking profiles.. 15:39 < ww> unless for some reason --app means "completely sandboxed" 15:39 < nsf> skelterjohn: report a bug! :) 15:39 < skelterjohn> ww: what i want, and i don't care how this is accomplished, is for the command line i used to start the app to exit once the app is closed 15:39 < skelterjohn> what bug?!? 15:39 < nsf> chromium has a big team 15:39 < nsf> I don't know 15:39 < nsf> you're complaining about something :) 15:39 < nsf> nevermind 15:40 < skelterjohn> no, i was trying to understand why things were different on two OSs 15:40 < nsf> maybe it's a bug 15:40 < nsf> :) 15:40 < skelterjohn> if it is, it isn't accidental 15:40 < exch> when I launch in app mode through a shell, it returns immediately while the window keeps running 15:40 < skelterjohn> i found the --user-data-dir trick by googling into the chromium issue tracker 15:41 * ww would call --user-data-dir a bug rather than a feature... 15:41 < ww> but at least you have a workaround for what you need 15:41 < nsf> exch: single window mode in gimp 2.7 is nice 15:41 < nsf> and it also has really cool tabs feature 15:41 < nsf> and finally layer groups 15:41 < exch> nsf: yes,. i've been waiting for that for a long time 15:41 < nsf> but it's buggy :( 15:42 < nsf> and they're still moving to GEGL 15:42 < nsf> ... 15:42 < nsf> looks like they have problems with human resources 15:43 < skelterjohn> what is GEGL 15:44 -!- Project-2501 [~Marvin@82.84.82.247] has joined #go-nuts 15:44 -!- Venom_X [~pjacobs@74.61.90.217] has quit [Ping timeout: 250 seconds] 15:47 < nsf> it's something that will allow more than 8/16 bits per channel in gimp formats 15:47 < nsf> kind of a separate library for non-destructive image editing 15:48 -!- fzzbt [~fzzbt@a88-114-150-70.elisa-laajakaista.fi] has joined #go-nuts 15:48 < nsf> http://www.gegl.org/ 15:51 -!- rtharper [~tomh@unaffiliated/sioraiocht] has quit [Remote host closed the connection] 15:51 -!- adu [~ajr@softbank220043139062.bbtec.net] has joined #go-nuts 15:53 -!- Urtie [~urtie@2a01:2b0:301d:100:e2cb:4eff:fecd:72d2] has joined #go-nuts 15:53 -!- davisp|away [~davisp@couchdb/developer/davisp] has joined #go-nuts 15:54 < Urtie> I'm playing around with cgo, but I can't figure out how to convert a []_Ctype_char into a Go string? Like to opposite of C.CString(), if that exists. 15:54 < ww> C.GoString() 15:55 < Urtie> haha, thanks :). Where is the documentation for those methods? I couldn't find it. 15:55 < skelterjohn> good question 15:56 < skelterjohn> (not saying it doesn't exist - only that i don't know either, and i would like to) 15:56 < nsf> I think it doesn't exist 15:56 -!- crazy2be [~crazy2be@199.185.88.147] has quit [Read error: Operation timed out] 15:56 < Urtie> hmm, that got me a "...[32]_Ctype_char) as type *_Ctype_char...". That is, I have a [32]_Ctype_char, and C.GoString() didn't like that. 15:56 < ww> i think i found out about it by using the sqlite sources as documentation 15:56 < adu> I think i learned about that by reading cgo.c or something 15:57 < ww> C.GoString((*C.char)(unsafe.Pointer(ptr))) 15:57 < nsf> but note that C.GoString takes zero-terminated C string 15:57 < nsf> if your array is not, then you have problems 15:57 < Urtie> Yes, it's \0-terminated. Thanks again :) 15:58 < steven> it seems my concurrent version of the quicksort is not that much faster than the synchronous version. 15:58 < nsf> then just cast it to pointer, yeah 15:58 < nsf> or take an address of its zero element 15:58 < steven> is it because Go's concurrency support is not as mature as i thought? 15:59 < ww> is that cast going to compile down to the moral equivalent of a cast? or will there be faffing? 15:59 < exch> steven: are you running it with GOMAXPROCS == 1 ? 15:59 < steven> no 15:59 < steven> =4 15:59 < steven> it only uses 1 processor though. 15:59 -!- jyxent [~jyxent@129.128.191.96] has joined #go-nuts 16:00 < Urtie> The multiplexing seems a bit slow right now. It's supposed to improve over time. 16:00 < steven> oh wait, i have 1 processor with 2 cores? wtf? 16:00 < steven> but i have an intel Core i7 16:01 < ww> i found the other day that using channels and chaining goroutines introduced a pretty big slowdown if the job of each goroutine was very simple.. 16:01 < steven> yeah 16:01 < ww> i think it's best to make sure the goroutines have some meat to chew on to compensate for the overhead... 16:01 < nsf> goroutines and channels are not magic 16:01 -!- rtharper [~tomh@unaffiliated/sioraiocht] has joined #go-nuts 16:01 < ww> nsf: so i learned 16:02 < steven> this is what i have https://github.com/sdegutis/go-quicksort/blob/master/quicksort-concurrent.go 16:02 < nsf> in fact my personal opinion is that it's a very bad abstraction 16:02 < nsf> at least performance-wise 16:02 < steven> i assumed that at a very high number of elements to sort, it should be significantly faster than the sync version 16:02 < steven> which is https://github.com/sdegutis/go-quicksort/blob/master/quicksort.go 16:02 -!- adu [~ajr@softbank220043139062.bbtec.net] has quit [Quit: adu] 16:02 < ww> right. the code i wrote looked quite pretty though 16:03 < Urtie> ww: No dice :( : cannot convert X (type [32]_Ctype_char) to type unsafe.Pointer 16:03 < nsf> Urtie: ugh.. 16:03 < ww> Urtie: oh, right, more dancing.. *(*C.char)(unsafe.Pointer(&ptr)) 16:03 < nsf> (*C.char)(unsafe.Pointer(&X[0])) 16:03 < ww> but maybe easiest to take &ptr[0] 16:03 < Urtie> progress! :) 16:04 < ww> the cast starts getting very ugly 16:04 < nsf> actually maybe there is no need to do the cast 16:04 < nsf> simply: 16:04 < nsf> C.GoString(&X[0]) 16:04 < ww> right. like nsf said 16:04 < steven> win. 16:04 < nsf> because [32]_Ctype_char is [32]C.char 16:05 < Urtie> It's working like a charm now. 16:05 < nsf> steven: your sort looks more like a bubble sort to me 16:06 < nsf> ah no 16:06 < nsf> it's a quick sort indeed 16:06 < nsf> hm.. 16:07 < ww> haha. a sorting fork bomb! :) 16:07 < nsf> but it spawns (log n) goroutines 16:07 < nsf> hm.. 16:08 < nsf> I don't know 16:08 < nsf> maybe it's slow because go runtime is slow 16:08 < nsf> maybe something else is wrong 16:08 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts 16:08 < nsf> but truth is that Go won't do any magic 16:09 < nsf> it just provides an illusion that concurrency is now as easy as binary expression 16:10 < nsf> when in fact it's far from that.. high performance concurrency requires a different kind of thinking starting from the design of your data structures and because of that algorithms as well 16:10 < ww> eventually, when we have seriously many cores on chip... like a 512 core laptop or a 32768 core commodity server... 16:10 < nsf> simply because there are few factors added 16:10 < nsf> like ordering, time, etc. 16:11 < nsf> ww: current memory with very high latency times won't be able to handle that 16:11 < nsf> I'm sure there will be a time when each core will have "core local memory" 16:11 < nsf> :\ 16:11 < nsf> it's inevitable 16:12 < nsf> well, they do have it now 16:12 < nsf> called cache 16:12 < nsf> but it will get bigger 16:13 < nsf> so.. what I'm saying 16:13 < nsf> trying to do micro concurrency management in Go is a bad idea 16:13 < nsf> each goroutine should do a big amount of job 16:14 < nsf> then there will be a potential performance bonus 16:14 < nsf> that's my personal guess, can't prove I'm right 16:15 -!- foocraft [~dsc@78.100.173.66] has quit [Ping timeout: 255 seconds] 16:15 -!- wtfness [~dsc@78.100.168.186] has joined #go-nuts 16:17 -!- jbooth1 [~jay@209.249.216.2] has joined #go-nuts 16:23 -!- petrux [~petrux@host16-224-static.53-82-b.business.telecomitalia.it] has quit [Quit: leaving] 16:24 -!- pilgrum [~pilgrum@cpe-67-49-71-222.socal.res.rr.com] has quit [Quit: Leaving] 16:31 < nsf> http://en.wikipedia.org/wiki/Alef_(programming_language) 16:31 < nsf> hehe, that's where multiple return values come from 16:31 < nsf> interesting 16:33 < nsf> it's interesting that alef had templates (sort of) 16:33 < nsf> parameterized abstract data types 16:34 -!- ShadowIce [~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has joined #go-nuts 16:34 -!- ShadowIce [~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has quit [Changing host] 16:34 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts 16:34 < wrtp> nsf: limbo also had tuples 16:35 < nsf> I see 16:35 < wrtp> but in fact, go's multiple return values don't really come from either, as they're not first-class values 16:35 < wrtp> they have more in common with lisp's MULTIPLE-VALUE-RETURN 16:36 < wrtp> or matlab's multiple value functions 16:36 < aiju> matlab? 16:36 < wrtp> (matlab allows you to do different stuff depending on how many results are being used, similar to go's x, ok := m[f] idiom 16:36 * aiju hides 16:37 < wrtp> i had to use it at times in my last job 16:37 < schmrkc> I am happy that my impression that it was like CL return values was corret 16:37 < wrtp> schmrkc: the difference is that you have to use all the values 16:37 < schmrkc> wrtp: Right yeah. 16:38 < wrtp> (except for the two or so language-defined exceptions) 16:38 < nsf> http://pastie.org/1670821 16:38 < nsf> Go with '->' and semicolons, lol 16:39 < aiju> what's this? 16:39 < nsf> I've semifinished a parser for my language :) 16:39 < nsf> I'm writing a C killer :D 16:39 -!- saschpe [~quassel@opensuse/member/saschpe] has joined #go-nuts 16:39 < aiju> those semicolons irritate me 16:40 < nsf> at some point optional automatic semicolon insertion will be added 16:40 < nsf> the problem at the moment that you can't really have both without altering pieces of .y grammar 16:40 < nsf> at least I think so 16:41 * aiju hopes that his OS boots 16:41 < schmrkc> anything is possible. 16:41 < nsf> yeah, I guess 16:41 < nsf> but my main consern at the moment is code generation 16:42 < aiju> hahaha totally awesome 16:42 < nsf> I can't really work with grammar without being able to write code that works 16:42 < schmrkc> nsf: sounds like fun. 16:42 < schmrkc> aiju: it a boot? 16:42 -!- sauerbraten [~sauerbrat@p508CB301.dip.t-dialin.net] has joined #go-nuts 16:42 < aiju> running nicely 16:43 * schmrkc celebrates with coffee 16:43 -!- femtoo [~femto@95-89-198-8-dynip.superkabel.de] has quit [Quit: Leaving] 16:45 < aiju> i can do "cat>/dev/tty" on the serial console and the input appears on the screen, et vice versa 16:45 < aiju> (the command is "cat>/dev/com" then, though) 16:46 < schmrkc> oh nice 16:46 < aiju> all in 3820 lines of assembly 16:46 < schmrkc> hey nice work. 16:46 -!- artefon [~thiago@189.59.201.99] has joined #go-nuts 16:47 < aiju> the shell has some rather funny pecularities 16:47 < aiju> *every* space seperates an argument 16:49 < schmrkc> hoh 16:49 < schmrkc> so would have #\Space as argument, eh? 16:49 < aiju> "cat " calls cat with an empty argument 16:49 < aiju> you can't write "cat >/dev/tty" thus 16:50 < schmrkc> oh hum 16:50 < schmrkc> so "cat foo>/dev/tty" ? and not "cat foo >/dev/tty" ? 16:50 < aiju> yeah 16:50 < aiju> ofc, i intend to fix it 16:51 < schmrkc> TOP PRIORITY! 16:52 -!- PortatoreSanoDiI [~Marvin@82.84.76.22] has joined #go-nuts 16:52 < bartbes> aiju: link? 16:52 < aiju> http://phicode.de/git/?p=mdos.git;a=summary 16:52 < aiju> highly unfinished yet 16:53 < aiju> may eat all your dataz 16:54 -!- Project-2501 [~Marvin@82.84.82.247] has quit [Ping timeout: 248 seconds] 16:55 < bartbes> cool 16:55 < bartbes> eating my data, that is 16:55 < aiju> haha 16:56 -!- rtharper [~tomh@unaffiliated/sioraiocht] has quit [Remote host closed the connection] 17:01 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection] 17:05 -!- awidegreen [~quassel@c-eacae555.08-2-73746f39.cust.bredbandsbolaget.se] has joined #go-nuts 17:11 -!- cenuij [~cenuij@base/student/cenuij] has quit [Remote host closed the connection] 17:12 < skelterjohn> nsf: I think you should just have {\n}+ as a token 17:12 < aiju> having \n as a token is a real pain 17:12 < nsf> skelterjohn: for what? 17:12 < nsf> ah 17:12 < skelterjohn> instead of inserting semicolons 17:12 < nsf> no.. 17:12 < nsf> it's a bad idea 17:13 < skelterjohn> you're a bad idea 17:13 -!- napsy [~luka@88.200.96.18] has quit [Quit: Lost terminal] 17:14 -!- napsy [~luka@88.200.96.18] has joined #go-nuts 17:19 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Ping timeout: 255 seconds] 17:19 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts 17:30 -!- crazy2be [~crazy2be@199.185.88.147] has joined #go-nuts 17:33 -!- lmoura [~lauromour@187.113.66.148] has quit [Remote host closed the connection] 17:40 -!- ronnyy [~quassel@p4FF1C663.dip0.t-ipconnect.de] has joined #go-nuts 17:43 -!- lmoura [~lauromour@187.113.66.148] has joined #go-nuts 17:58 -!- fabled [~fabled@mail.fi.jw.org] has quit [Quit: Ex-Chat] 18:01 -!- tvw [~tv@e176006137.adsl.alicedsl.de] has joined #go-nuts 18:02 -!- wrtp [~rog@92.17.3.222] has quit [Quit: wrtp] 18:04 -!- femtoo [~femto@95-89-198-8-dynip.superkabel.de] has joined #go-nuts 18:08 -!- DerHorst [~Horst@e176099127.adsl.alicedsl.de] has quit [Ping timeout: 255 seconds] 18:15 -!- fabled [~fabled@83.145.235.194] has joined #go-nuts 18:17 -!- eaburns [~eaburns@c-24-62-248-129.hsd1.nh.comcast.net] has joined #go-nuts 18:17 -!- eaburns [~eaburns@c-24-62-248-129.hsd1.nh.comcast.net] has left #go-nuts [] 18:18 -!- PortatoreSanoDiI [~Marvin@82.84.76.22] has quit [Quit: E se abbasso questa leva che succ...] 18:21 -!- zimsim [~simon@87.72.77.195] has quit [Ping timeout: 250 seconds] 18:32 -!- crazy2be [~crazy2be@199.185.88.147] has quit [Ping timeout: 240 seconds] 18:32 -!- crazy2be [~crazy2be@199.185.88.147] has joined #go-nuts 18:34 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has quit [Read error: Operation timed out] 18:36 -!- zimsim [~simon@87.72.77.195] has joined #go-nuts 18:37 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has joined #go-nuts 18:38 -!- Fish- [~Fish@9fans.fr] has joined #go-nuts 18:45 -!- cbeck [cbeck@gateway/shell/pdx.edu/x-umagwnuiemwpvvep] has quit [Read error: Connection reset by peer] 18:45 -!- niekie [~niek@CAcert/Assurer/niekie] has quit [Read error: Operation timed out] 18:45 -!- cbeck [cbeck@gateway/shell/pdx.edu/x-pllcmjdcistvcdyt] has joined #go-nuts 18:46 -!- sav- [~lsd@peirce.xored.org] has joined #go-nuts 18:47 -!- niekie [~niek@CAcert/Assurer/niekie] has joined #go-nuts 18:48 -!- Urmel| [~11087Urme@82-136-196-44.ip.telfort.nl] has quit [Ping timeout: 240 seconds] 18:48 -!- sav [~lsd@peirce.xored.org] has quit [Remote host closed the connection] 18:48 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Remote host closed the connection] 18:48 -!- Urmel| [~11087Urme@82-136-196-44.ip.telfort.nl] has joined #go-nuts 18:48 -!- jgonzalez [~jgonzalez@173-14-137-134-NewEngland.hfc.comcastbusiness.net] has quit [Ping timeout: 255 seconds] 18:49 -!- niekie [~niek@CAcert/Assurer/niekie] has quit [Read error: Operation timed out] 18:50 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has joined #go-nuts 18:50 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 255 seconds] 18:51 -!- niekie [~niek@CAcert/Assurer/niekie] has joined #go-nuts 18:52 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has joined #go-nuts 18:52 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has left #go-nuts [] 18:53 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Read error: Operation timed out] 18:54 -!- piranha [~piranha@5ED43A0B.cm-7-5a.dynamic.ziggo.nl] has joined #go-nuts 18:55 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has joined #go-nuts 18:55 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 18:57 < steven> guys 18:57 < steven> turns out GoRM is stupid 18:57 < steven> because it defines the structure of each table/row IN CODE. 18:57 < steven> which makes it extremley fragile for migrations 18:58 < Namegduf> You mean the tables which are specifically made for GoRM? 18:58 -!- jumzi [~none@c-89-233-234-125.cust.bredband2.com] has joined #go-nuts 18:58 < steven> yes. 18:58 < steven> so when you want to change the schema later, you need to change the code as well. 18:59 < steven> so you basically write the same thing twice: 18:59 < steven> you change the schema in your code (ie the struct), and you write a migration that describes that change, so you can change the local (and production) databases as well 19:00 < Namegduf> Doesn't sound "more fragile". 19:00 < Namegduf> Sounds like migrations are significantly more annoying, but unless you're migrating a lot... 19:00 < steven> you dont write webapps do you? 19:00 < Namegduf> No. 19:00 < steven> migrations are written probably once a week here. 19:01 < steven> would be a PITA if the migration didnt change the schema in code for me as well. 19:01 < steven> so heres what im thinking. instead of the *cool* way of how gorm works right now, 19:01 < steven> ie https://github.com/sdegutis/gorm 19:01 -!- imsplitbit [~imsplitbi@64.39.4.132] has joined #go-nuts 19:01 < Namegduf> You can't use a *slightly* more futureproof schema? 19:01 < nsf> just write a DSL 19:01 < steven> it will just return a map. 19:01 < nsf> :) 19:02 < nsf> which provides database schema description and then there will be a generator which generates go structures 19:02 -!- crazy2be [~crazy2be@199.185.88.147] has quit [Read error: Operation timed out] 19:02 < nsf> in dynamic languages it's all done at runtime 19:02 < nsf> in Go you can't define new structures at runtime 19:02 -!- crazy2be [~crazy2be@199.185.88.147] has joined #go-nuts 19:03 < skelterjohn> i think gdbc needs to happen before gorm 19:03 < nsf> I know that writing a DSL is not a simple task 19:03 < nsf> but imho it's worth it 19:03 < nsf> something like google's protobuf 19:03 < skelterjohn> DSL = domain specific language? 19:03 < nsf> yes 19:04 < Namegduf> Or have GoRM be able to generate a schema for a type of thing 19:04 < nsf> there is another pro for separate DSL 19:04 < Namegduf> The map thing sounds too trivial- I wouldn't be surprised if Scan already did it. 19:04 < nsf> what if you'll want to use this database from another language 19:05 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Quit: KBme kthxbye] 19:06 -!- Fish-- [~Fish@exo3753.pck.nerim.net] has joined #go-nuts 19:07 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has joined #go-nuts 19:07 < steven> Namegduf: its not about future-proof. requirements just change over time. 19:07 -!- jgonzalez [~jgonzalez@173-14-137-134-NewEngland.hfc.comcastbusiness.net] has joined #go-nuts 19:07 < Namegduf> steven: Yes, but if your requirements are changing so much in a week you need to redo the database schema there's probably a problem. 19:07 < steven> in Ruby, it can create a class at runtime. but theres nothing wrong with creating a map, i think. 19:08 < steven> Namegduf: no. sometimes you need to add another field or another table, thats just how life works. 19:08 < steven> new features often require this. 19:08 < steven> for someone who doesnt do any web dev i think you don really have a leg to stand on with your advice 19:10 -!- Fish [~Fish@exo3753.pck.nerim.net] has quit [Ping timeout: 260 seconds] 19:11 -!- czr_ [czr@nexus.iohazard.net] has quit [Remote host closed the connection] 19:12 -!- chressie [~chressie@dreggn.in-ulm.de] has quit [Read error: Operation timed out] 19:12 < skelterjohn> steven: you can choose to ignore advice without offending the one giving it. 19:12 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Read error: Operation timed out] 19:14 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has joined #go-nuts 19:14 < Namegduf> It's okay, it just seemed weird to have an SQL DB, which has a "static" schema, have that schema changed really often. 19:16 -!- chressie [~chressie@dreggn.in-ulm.de] has joined #go-nuts 19:16 -!- it_diver [~it_diver@dslb-088-068-253-221.pools.arcor-ip.net] has joined #go-nuts 19:16 < Namegduf> You're right, I don't know much about that scenario. 19:17 -!- niekie_ [~niek@CAcert/Assurer/niekie] has joined #go-nuts 19:17 -!- niekie [~niek@CAcert/Assurer/niekie] has quit [Ping timeout: 264 seconds] 19:18 -!- femtoo [~femto@95-89-198-8-dynip.superkabel.de] has quit [Read error: Connection reset by peer] 19:18 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Excess Flood] 19:19 -!- deso [~deso@x0561a.wh30.tu-dresden.de] has joined #go-nuts 19:19 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has joined #go-nuts 19:20 -!- czr_ [czr@nexus.iohazard.net] has joined #go-nuts 19:20 -!- Fish-- [~Fish@exo3753.pck.nerim.net] has quit [Ping timeout: 250 seconds] 19:23 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Quit: Venom_X] 19:24 -!- czr_ [czr@nexus.iohazard.net] has quit [Remote host closed the connection] 19:29 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Quit: KBme kthxbye] 19:29 -!- niekie_ [~niek@CAcert/Assurer/niekie] has quit [Quit: No Ping reply in 180 seconds.] 19:29 -!- niekie [~niek@CAcert/Assurer/niekie] has joined #go-nuts 19:29 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has joined #go-nuts 19:30 -!- czr_ [czr@nexus.iohazard.net] has joined #go-nuts 19:34 -!- crazy2be [~crazy2be@199.185.88.147] has quit [Read error: Connection reset by peer] 19:34 -!- Fish-- [~Fish@exo3753.pck.nerim.net] has joined #go-nuts 19:34 -!- AndyP [~andyp@ubuntu/member/andyp] has quit [Ping timeout: 240 seconds] 19:35 -!- crazy2be [~crazy2be@199.185.88.147] has joined #go-nuts 19:36 -!- it_diver [~it_diver@dslb-088-068-253-221.pools.arcor-ip.net] has left #go-nuts [] 19:37 -!- fabled [~fabled@83.145.235.194] has quit [Quit: Ex-Chat] 19:41 -!- AndyP [~andyp@ubuntu/member/andyp] has joined #go-nuts 19:45 -!- photron [~photron@port-92-201-66-101.dynamic.qsc.de] has joined #go-nuts 19:46 -!- crazy2be [~crazy2be@199.185.88.147] has quit [Read error: Operation timed out] 19:49 -!- rtharper [~tomh@unaffiliated/sioraiocht] has joined #go-nuts 19:56 -!- TheMue [~TheMue@p5DDF6D56.dip.t-dialin.net] has joined #go-nuts 19:59 -!- tgall_foo [~tgall@206.9.88.154] has quit [Read error: Operation timed out] 20:07 -!- tgall_foo [~tgall@206.9.88.154] has joined #go-nuts 20:15 -!- tensorpudding [~user@99.148.205.193] has joined #go-nuts 20:30 -!- femtoo [~femto@95-89-198-8-dynip.superkabel.de] has joined #go-nuts 20:33 -!- dfc [~dfc@124-168-57-115.dyn.iinet.net.au] has joined #go-nuts 20:33 < steven> skelterjohn: im trying not to offend. 20:34 -!- pothos_ [~pothos@111-240-171-211.dynamic.hinet.net] has joined #go-nuts 20:34 < steven> *not trying 20:35 < steven> but its just a fact, the schema is going to change quite often, and thats not because we arent doing a good job future-proofing or whatever he was trying to say 20:35 -!- pothos [~pothos@111-240-171-61.dynamic.hinet.net] has quit [Read error: Operation timed out] 20:35 -!- femtoo [~femto@95-89-198-8-dynip.superkabel.de] has quit [Read error: Connection reset by peer] 20:35 < steven> oooh. i see. the problem with creating a map is that it leaves the table name unknown once again, forcing us to pass it in as a map. 20:36 < steven> wait, is it really that big of a problem for us to have to change the schema in the code? its one extra step, but after all, we might be very well having to change stuff that uses the schema anyway 20:36 < steven> i dunno. 20:37 < steven> i guess it is annoying to have to type it twice, once in code and once in the migration 20:37 < steven> its a 1:1 ratio too.. 20:38 -!- saschpe [~quassel@opensuse/member/saschpe] has quit [Remote host closed the connection] 20:46 -!- willdye [~willdye@fern.dsndata.com] has left #go-nuts [] 20:50 -!- pharris [~Adium@rhgw.opentext.com] has quit [Quit: Leaving.] 20:50 < steven> actually its more than that 20:51 < steven> the way GoRM works, it can tell what type to convert a retreived value to, automatically. 20:51 < steven> if i made it return just a map, you have to use strconv manually, all the time. 20:51 < steven> unless you specify somehow what types they each are. 20:52 -!- Fish [~Fish@coss6.exosec.net] has joined #go-nuts 20:53 < skelterjohn> you should use fmt.Sscanf 20:53 < skelterjohn> and let fmt take care of the conversions 20:53 -!- ExtraSpice [XtraSpice@78-62-101-194.static.zebra.lt] has quit [Read error: Connection reset by peer] 20:53 < skelterjohn> and when i say "should" i really mean that i haven't thought this through more than 5 seconds, but maybe it's an idea 20:54 -!- Fish-- [~Fish@exo3753.pck.nerim.net] has quit [Ping timeout: 255 seconds] 20:58 -!- willdye [~willdye@fern.dsndata.com] has joined #go-nuts 21:00 -!- virtualsue [~chatzilla@nat/cisco/x-uylncviiolgfuxhq] has quit [Ping timeout: 255 seconds] 21:00 -!- boscop [~boscop@f055157219.adsl.alicedsl.de] has quit [Ping timeout: 255 seconds] 21:01 -!- boscop [~boscop@f055157219.adsl.alicedsl.de] has joined #go-nuts 21:05 -!- ildorn [~ildorn@dslb-188-099-196-154.pools.arcor-ip.net] has quit [Read error: Operation timed out] 21:08 -!- ildorn [~ildorn@dslb-188-105-112-158.pools.arcor-ip.net] has joined #go-nuts 21:08 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts 21:09 -!- aho [~nya@fuld-4d00d681.pool.mediaWays.net] has joined #go-nuts 21:14 < nsf> lol, I want to define a function pointer type in C, and it should be a pointer of a function which returns a pointer to a function of the same type 21:15 < nsf> is it possible? :) 21:15 < aiju> typedef? 21:15 -!- wrtp [~rog@92.17.3.222] has joined #go-nuts 21:15 <+iant> it is not possible, you need a type cast somewhere in there 21:15 < nsf> hehe 21:15 < nsf> funny :) 21:15 <+iant> typedef doesn't work because a typedef can't refer to the type being defined 21:15 <+iant> I've run into these problems in detail in gccgo 21:15 < nsf> hehe, AST walker? :) 21:16 <+iant> yes, because these kinds of recursive types are impossible in C, the gcc middle-end does not support them 21:16 < nsf> I see 21:16 <+iant> so I have to change recursive Go types to bottom on in a void*, and insert type casts when they are used 21:17 < nsf> thanks for the tip, I guess I'll run into the same problems at some point 21:17 < nsf> (my compiler is supposed to generate C) 21:17 < aiju> heh 21:17 <+iant> yeah, you'll run into those problems at some point 21:18 -!- artefon [~thiago@189.59.201.99] has quit [Quit: bye] 21:19 -!- dfc [~dfc@124-168-57-115.dyn.iinet.net.au] has quit [Quit: dfc] 21:19 < scoeri> isnt that possible with union in C? 21:19 -!- sauerbraten [~sauerbrat@p508CB301.dip.t-dialin.net] has quit [Read error: Connection reset by peer] 21:19 <+iant> scoeri: how? 21:19 <+iant> a union is not a function pointer 21:20 <+iant> oh, you mean a union can have a member which points to the union? 21:20 < nsf> although, it's possible to do this: struct X { struct X (*ptr)(); }; 21:20 <+iant> yes, that is possible 21:20 <+iant> the gcc middle-end handles that specific case 21:20 <+iant> it does not handle the general recursive type case 21:21 < aiju> union X { union X (*f)(void); }; 21:21 < aiju> works indeed 21:21 <+iant> fair enough, that works, but it's not the same as the Go type 21:21 < aiju> but union are just casts in (ugly) disguise 21:21 <+iant> it's just a different workaround 21:21 < nsf> but it's not a typedef 21:21 < aiju> nsf: typedef union X X; 21:21 < nsf> aiju: well in C typedef is an alias 21:22 < nsf> anyways, looks weird 21:22 < aiju> oh yeah, ofc 21:22 < aiju> you have to type .f 21:22 < aiju> just a cast in green 21:23 < ww> hmmm... weird thread-related problems again 21:24 < steven> skelterjohn: wouldnt work 21:24 < skelterjohn> wat 21:24 < skelterjohn> oh 21:24 < steven> some of the values are "hello" (without the quotes, but a string) and some are "42" (same) 21:24 < skelterjohn> why not 21:24 < skelterjohn> so? 21:24 < skelterjohn> you know the type 21:24 < steven> what i was saying is i *wouldnt* know the type 21:24 < skelterjohn> you pass fmt.Sscanf a pointer to an instance of that type 21:25 < skelterjohn> of course you do - you have a struct you're populating 21:25 < skelterjohn> its fields have types 21:25 < steven> what im getting at is that it might not be a struct anymore, it might be a map[string]interface{} 21:27 < skelterjohn> that seems like a difficult type to fill automatically 21:27 -!- imsplitbit [~imsplitbi@64.39.4.132] has quit [Quit: Bye!] 21:27 < ww> ohoh. looks like close() is gone 21:28 < ww> err... closed() 21:28 < skelterjohn> ah 21:28 < skelterjohn> i was about to say 21:28 < skelterjohn> so i guess that means that x, ok <- ch has been updated? 21:29 < ww> skelterjohn: yup 21:30 < skelterjohn> cool 21:30 < skelterjohn> i like to think that that syntax was my idea, but it's kind of an obvious choice 21:30 < ww> i suspect there's going to be a release soon -- first time in a few days i've had all tests pass in tip 21:31 < ww> skelterjohn: it is very clean looking. i'll blame you for it if you like 21:31 < skelterjohn> i certainly didn't look for prior art 21:32 < skelterjohn> so i would believe it if someone told me they had mentioned it before my complaints about threadsafety w/ multiple readers on the same chan 21:37 < steven> ww: as of when? 21:38 < ww> 7742:604d3ae2f22e: o code: replace closed(c) with x, ok := <-c 21:38 < ww> friday 21:38 < aiju> ohhh neat 21:39 -!- TheMue [~TheMue@p5DDF6D56.dip.t-dialin.net] has quit [Quit: TheMue] 21:39 < steven> yay! 21:39 < steven> finally. 21:39 < steven> took him a while. 21:40 < steven> do you guys use the dev branch? 21:40 < steven> or release? 21:40 < skelterjohn> the wait was to make sure no one had x, ok := <- c in their code, expecting it to be a block-free read 21:40 < skelterjohn> it's been a compile error for a while 21:40 < skelterjohn> i use whatever "hg pull -u" gets me 21:40 < ww> i usually use release, but i just updated to tip because i suspect a scheduler or alighment issue causing my heisenbug 21:41 < ww> (heisenbug still there... or not...) 21:46 -!- virtualsue [~chatzilla@nat/cisco/x-zhcjgipptvtefnyh] has joined #go-nuts 21:47 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Ping timeout: 255 seconds] 21:49 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts 21:50 -!- plainhao [~plainhao@208.75.85.237] has quit [Quit: plainhao] 21:51 -!- zozoR [~Morten@56346ed3.rev.stofanet.dk] has quit [Remote host closed the connection] 21:54 -!- piranha [~piranha@5ED43A0B.cm-7-5a.dynamic.ziggo.nl] has quit [Quit: Computer has gone to sleep.] 21:54 -!- wrtp [~rog@92.17.3.222] has quit [Quit: wrtp] 21:56 -!- erus_ [56b874e9@gateway/web/freenode/ip.86.184.116.233] has joined #go-nuts 22:00 -!- Wiz126 [Wiz@h187.120.232.68.ip.windstream.net] has quit [Read error: Connection reset by peer] 22:01 -!- Wiz126 [Wiz@h187.120.232.68.ip.windstream.net] has joined #go-nuts 22:11 -!- photron [~photron@port-92-201-66-101.dynamic.qsc.de] has quit [Ping timeout: 250 seconds] 22:12 -!- awidegreen [~quassel@c-eacae555.08-2-73746f39.cust.bredbandsbolaget.se] has quit [Read error: Connection reset by peer] 22:14 < erus_> if i define a string with these ` ` 22:14 < erus_> and it spans multipl lines 22:14 < erus_> does it put newline operator in there? 22:15 < skelterjohn> yes 22:16 < erus_> lines := strings.Split(src, "\n", -1) 22:16 < erus_> returns a slice of 1 string 22:16 < erus_> and src is a multiline string 22:18 < skelterjohn> http://pastebin.com/jgunnkgz 22:18 < skelterjohn> something must be going wrong elsewhere 22:23 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Ping timeout: 250 seconds] 22:28 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts 22:35 -!- virtualsue [~chatzilla@nat/cisco/x-zhcjgipptvtefnyh] has quit [Read error: Operation timed out] 22:37 -!- eaburns [~eaburns@c-24-62-248-129.hsd1.nh.comcast.net] has joined #go-nuts 22:38 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit: Verlassend] 22:39 < erus_> of man 22:39 < erus_> i forgot regexp has no \w 22:39 -!- eaburns [~eaburns@c-24-62-248-129.hsd1.nh.comcast.net] has left #go-nuts [] 22:42 -!- fzzbt [~fzzbt@a88-114-150-70.elisa-laajakaista.fi] has quit [Quit: Lost terminal] 22:43 -!- jumzi [~none@c-89-233-234-125.cust.bredband2.com] has quit [Remote host closed the connection] 22:49 -!- it_diver [~it_diver@dslb-088-068-253-221.pools.arcor-ip.net] has joined #go-nuts 22:52 < erus_> my old tokenizer was a good 300 lines 22:52 < erus_> with a bit of regex its less than 100 22:52 -!- l00t [~i-i3id3r_@189.105.53.156] has quit [Read error: Connection reset by peer] 22:54 -!- dfc [~dfc@sydfibre2.atlassian.com] has joined #go-nuts 22:55 -!- jbooth1 [~jay@209.249.216.2] has quit [Quit: Leaving.] 22:56 -!- Fish- [~Fish@9fans.fr] has quit [Quit: So Long, and Thanks for All the Fish] 22:58 -!- deso [~deso@x0561a.wh30.tu-dresden.de] has quit [Read error: Operation timed out] 23:02 -!- it_diver [~it_diver@dslb-088-068-253-221.pools.arcor-ip.net] has quit [Ping timeout: 250 seconds] 23:10 -!- Archwyrm [~archwyrm@archwyrm.net] has quit [Quit: leaving] 23:12 -!- Archwyrm [~archwyrm@archwyrm.net] has joined #go-nuts 23:19 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Quit: Venom_X] 23:26 -!- erus_ [56b874e9@gateway/web/freenode/ip.86.184.116.233] has quit [Ping timeout: 252 seconds] 23:27 -!- l00t [~i-i3id3r_@189.105.53.156] has joined #go-nuts 23:42 -!- ronnyy [~quassel@p4FF1C663.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 23:45 -!- rtharper [~tomh@unaffiliated/sioraiocht] has quit [Remote host closed the connection] 23:49 -!- rm445 [rm445@pip.srcf.societies.cam.ac.uk] has quit [Ping timeout: 241 seconds] 23:49 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org] 23:56 -!- jgonzalez [~jgonzalez@173-14-137-134-NewEngland.hfc.comcastbusiness.net] has quit [Ping timeout: 240 seconds] --- Log closed Tue Mar 15 00:00:55 2011