Go Language Resources Go, golang, go... NOTE: This page ceased updating in October, 2012

--- Log opened Sun May 22 00:00:50 2011
00:12 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has quit
[Ping timeout: 260 seconds]
00:22 -!- telexicon [~telexicon@unaffiliated/chowmeined] has joined #go-nuts
00:31 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has joined
#go-nuts
00:40 -!- cafesofie [~cafesofie@ool-18b97779.dyn.optonline.net] has quit [Ping
timeout: 246 seconds]
00:41 -!- cafesofie [~cafesofie@ool-18b97779.dyn.optonline.net] has joined
#go-nuts
00:42 -!- wallerdev [~wallerdev@72.44.102.30] has quit [Quit: wallerdev]
00:50 -!- ExsysTech [~ExsysTech@50-46-213-60.evrt.wa.frontiernet.net] has quit
[Read error: Connection reset by peer]
00:51 -!- ExsysTech [~ExsysTech@50-46-213-60.evrt.wa.frontiernet.net] has joined
#go-nuts
01:07 -!- tobym [~tobym@cpe-72-229-2-6.nyc.res.rr.com] has quit [Ping timeout: 246
seconds]
01:20 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has quit
[Ping timeout: 240 seconds]
01:23 < dooder> Namegduf, kevlar : Thanks!!  http://pastebin.com/b1FALjBd
01:36 -!- moraes_ [~moraes@189.103.179.31] has quit [Ping timeout: 240 seconds]
01:39 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Ping timeout: 240 seconds]
01:40 -!- gtaylor [~gtaylor@nsc69.38.75-221.newsouth.net] has joined #go-nuts
01:47 -!- niemeyer [~niemeyer@200-102-196-125.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
02:00 -!- aho [~nya@fuld-590c7acd.pool.mediaWays.net] has quit [Ping timeout: 246
seconds]
02:13 -!- aho [~nya@fuld-590c6928.pool.mediaWays.net] has joined #go-nuts
02:25 -!- hallas [~hallas@x1-6-30-46-9a-b2-c5-1f.k891.webspeed.dk] has quit [Ping
timeout: 260 seconds]
02:39 -!- Viriix [~joseph@c-67-169-172-251.hsd1.ca.comcast.net] has quit [Quit:
This computer has gone to sleep]
02:46 -!- tav [~tav@92.7.93.41] has quit [Ping timeout: 244 seconds]
02:50 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
02:52 -!- tav [~tav@92.7.121.199] has joined #go-nuts
02:53 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has quit [Read error:
Connection reset by peer]
02:55 -!- nteon [~nteon@c-98-210-195-105.hsd1.ca.comcast.net] has joined #go-nuts
02:57 -!- marcdurden [~chatzilla@c-67-170-197-160.hsd1.ca.comcast.net] has joined
#go-nuts
02:58 -!- marcdurden [~chatzilla@c-67-170-197-160.hsd1.ca.comcast.net] has quit
[Client Quit]
03:15 -!- Viriix [~joseph@c-67-169-172-251.hsd1.ca.comcast.net] has joined
#go-nuts
03:17 -!- wallerdev [~wallerdev@72.44.102.30] has joined #go-nuts
03:18 -!- niemeyer [~niemeyer@200-102-196-125.pltce701.dsl.brasiltelecom.net.br]
has quit [Ping timeout: 240 seconds]
03:32 -!- gtaylor [~gtaylor@nsc69.38.75-221.newsouth.net] has quit [Quit: gtaylor]
03:32 -!- eestolano [~Adium@76.14.50.93] has joined #go-nuts
03:36 -!- angasule [~angasule@190.2.33.49] has quit [Ping timeout: 258 seconds]
03:39 -!- eestolano [~Adium@76.14.50.93] has left #go-nuts []
03:45 -!- Viriix [~joseph@c-67-169-172-251.hsd1.ca.comcast.net] has quit [Quit:
This computer has gone to sleep]
03:48 -!- foocraft [~ewanas@78.101.237.121] has quit [Ping timeout: 246 seconds]
03:59 -!- foocraft [~ewanas@78.100.185.201] has joined #go-nuts
04:08 -!- eimantas [~eimantas@ip-212-52-52-163.kava.lt] has joined #go-nuts
04:09 < eimantas> good morning!
04:10 -!- foocraft [~ewanas@78.100.185.201] has quit [Quit: if you're going....to
san.  fran.  cisco!!!]
04:13 -!- rejb [~rejb@unaffiliated/rejb] has quit [Disconnected by services]
04:14 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
04:18 < nteon> eimantas: good evening
04:18 < eimantas> hmm
04:18 < eimantas> what's the time at your zone?
04:18 < kevlar> So, anyone else get raptured?  I'm still here.  >:-)
04:18 < eimantas> nope
04:19 < eimantas> I'm looking forward to some local news articles about this
04:19 < kevlar> haha.
04:19 < kevlar> Everyone who passes away today will be used as someone's
positive proof of the Rapture.
04:19 < kevlar> Especially if it's at 6pm local time.
04:20 < kevlar> Even if it's only one person in the entire world, someone
will use it.
04:20 < eimantas> true dat
04:21 < eimantas> I guess the dude will be very disappointed by the amount
of "chosen ones"
04:22 < eimantas> alright!  my first panic in go
04:23 < kevlar> eimantas: haha, nice
04:33 -!- gtaylor [~gtaylor@97-95-231-85.dhcp.sffl.va.charter.com] has joined
#go-nuts
04:34 < nteon> eimantas: 21:39
04:34 < nteon> sorry for the delay :)
04:35 < nteon> kevlar: nah, if you're raptured your body disappears
04:35 < nteon> kevlar: if anyone was abducted by aliens today tho, that
would be harder to explain
04:36 -!- gtaylor [~gtaylor@97-95-231-85.dhcp.sffl.va.charter.com] has quit
[Client Quit]
04:40 < kevlar> lol
04:40 < kevlar> That's slightly more believable
04:45 -!- jarsen [~jarsen@76.8.206.21] has joined #go-nuts
04:50 -!- sunfmin [~sunfmin@115.206.253.191] has left #go-nuts []
04:55 -!- photron [~photron@port-92-201-116-174.dynamic.qsc.de] has joined
#go-nuts
04:56 -!- jarsen [~jarsen@76.8.206.21] has quit [Remote host closed the
connection]
05:16 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has joined
#go-nuts
05:16 -!- Viriix [~joseph@c-67-169-172-251.hsd1.ca.comcast.net] has joined
#go-nuts
05:17 < eimantas> has anyone looked at gozmq?
05:18 < nteon> not i
05:18 < eimantas> hmm
05:18 < eimantas> so there's this package gozmq
05:18 < eimantas> which i import
05:18 < eimantas> into my package
05:19 < eimantas> the gozmq package has type zmqSocket struct defined
05:19 < eimantas> yet when I'm trying to define myZmq *zmqSocket into my
type - it says that zmqSocket is undefined
05:21 -!- sacho [~sacho@87-126-42-180.btc-net.bg] has joined #go-nuts
05:27 < eimantas> ehlo
05:32 < nteon> eimantas: you need to prefix it with the namespace, so myZmq
*gozmq.zmqSocket
05:32 < eimantas> ah, that must be it
05:32 < eimantas> friggin namespace
05:32 < nteon> :)
05:33 < eimantas> hmm
05:33 < eimantas> M2Connection.go:8: cannot refer to unexported name
gozmq.zmqSocket
05:33 < eimantas> i have this import statement: import zmq
"github.com/alecthomas/gozmq"
05:35 < nteon> eimantas: let me look at gozmq.  Only functions and types
that start with A Capital Letter are exported (available for your use)
05:35 < eimantas> https://github.com/alecthomas/gozmq/blob/master/zmq.go
05:35 < eimantas> ah
05:35 < eimantas> so zmqSocket is unavailable
05:35 < eimantas> but there's type Socket interface {}
05:36 < nteon> eimantas: yea, tahts what you want
05:36 < nteon> eimantas: so you don't get direct access to structure fields,
you can only change its state through its methods
05:36 < eimantas> but I can't use it as argument since it's a pointer to
interface
05:37 < nteon> eimantas: what do you mean?
05:37 < eimantas> I'd have to show you the code if you want to see .)
05:37 < eimantas> so I have this gozmq with sockets
05:37 < nteon> eimantas: sure, can you patebin it somewhere?
05:37 < eimantas> 'k
05:37 < eimantas> moment
05:38 < eimantas> http://pastie.org/1954845
05:38 < eimantas> here
05:40 < eimantas> afk for more coffee.  anyone wants some?
05:42 -!- Viriix [~joseph@c-67-169-172-251.hsd1.ca.comcast.net] has quit [Quit:
Leaving]
05:43 < nteon> eimantas: well, zmqPublisher needs to be changed from
zmqSocket to zmq.Socket
05:44 < nteon> eimantas: you can also simplify NewM2Socket a bit using :=
instead of var: http://pastie.org/1954851
05:45 < eimantas> nteon - the Init method breaks the compilation
05:45 < nteon> I also grouped the params so you only need to type 'string'
once
05:45 < eimantas> 'k.  moment plz.  Will try it now
05:46 < nteon> eimantas: if you remove the '*' from before the zmq.Socket
everywhere it compiles for me.
05:47 < nteon> I still don't really get the difference between structs and
pointers in this language yet...
05:47 < eimantas> 'k
05:47 < nteon> its easy in c
05:49 < eimantas> nteon - it compiles alright
05:49 < eimantas> I just can't use zmq.Socket's methods now
05:49 < eimantas> god...
05:49 < eimantas> it just never ends...
05:50 < nteon> eimantas: whats the error now?
05:50 < eimantas> M2Connection.go:38: c.zmqReceiver.Recv undefined (type
*gozmq.Socket has no field or method Recv)
05:51 < eimantas> http://pastie.org/1954845 -- updated pastie with the
culprit
05:57 < nteon> eimantas: http://pastie.org/1954894 the following compiles
for me
05:57 < nteon> idk what happens at runtime, but...  :)
05:58 < eimantas> hmm
05:58 < eimantas> no pointers, you say
06:00 < nteon> eimantas: well, because they're passed around between
functions they're allocated on the heap, I think
06:00 < nteon> but, as I said, I still dont' understand...
06:00 < nteon> thats the only part of Go thats been unclear for me
06:01 < eimantas> the runtime doesn't seem to work nao
06:03 < nteon> heh
06:03 < nteon> does it hang, or tell you anything interesting?
06:05 < eimantas> nope
06:05 < eimantas> it doesnt Recv anything
06:09 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has quit
[Ping timeout: 240 seconds]
06:10 < nteon> eimantas: sorry, I'm only cursorarily familiar with zmq
06:10 < nteon> in that I know it exists, and I know its suppose to be a good
protocol
06:10 < eimantas> no sweat.  Thanks a heap for your support .)
06:14 < eimantas> refactored back to simpler form
06:16 < eimantas> and it works!
06:22 < nteon> eimantas: nice!
06:35 < eimantas> hmm
06:35 < eimantas> any time similar to void *?
06:36 < eimantas> wait
06:36 < eimantas> go is strictly types
06:36 < eimantas> yes?
06:39 < eimantas> ah, the interface{}
06:42 < nteon> eimantas: yea, interface{}
06:47 -!- rcrowley [~rcrowley@c-71-202-44-233.hsd1.ca.comcast.net] has joined
#go-nuts
06:53 -!- rcrowley [~rcrowley@c-71-202-44-233.hsd1.ca.comcast.net] has quit [Quit:
Computer has gone to sleep.]
06:54 -!- ExtraSpice [XtraSpice@78-57-204-104.static.zebra.lt] has joined #go-nuts
07:06 < eimantas> bye bye!  thanks everyone for help
07:06 < eimantas> ttyl
07:06 -!- eimantas [~eimantas@ip-212-52-52-163.kava.lt] has quit [Quit: eimantas]
07:07 -!- d_m [~d_m@64.186.128.169] has quit [Ping timeout: 240 seconds]
07:07 -!- d_m [~d_m@64.186.128.169] has joined #go-nuts
07:07 -!- GeertJohan [~Squarc@195-240-16-74.ip.telfort.nl] has joined #go-nuts
07:15 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:581f:e486:b34d:a545] has joined
#go-nuts
07:16 -!- GeertJohan [~Squarc@195-240-16-74.ip.telfort.nl] has quit [Ping timeout:
260 seconds]
07:23 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
07:29 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has quit [Ping
timeout: 260 seconds]
07:30 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-148-107.clienti.tiscali.it] has
joined #go-nuts
07:30 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
07:34 -!- foocraft [~ewanas@86.36.49.200] has joined #go-nuts
07:43 -!- ShadowIce
[~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has joined
#go-nuts
07:43 -!- ShadowIce
[~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has quit
[Changing host]
07:43 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
07:43 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has joined #go-nuts
07:45 -!- boscop [~boscop@f050149066.adsl.alicedsl.de] has quit [Ping timeout: 246
seconds]
07:46 -!- boscop [~boscop@unaffiliated/boscop] has joined #go-nuts
07:46 -!- huin [~huin@91.85.171.238] has joined #go-nuts
07:55 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has joined #go-nuts
07:58 -!- Bigbear1 [~Cody@d173-181-43-12.abhsia.telus.net] has quit [Read error:
Connection reset by peer]
07:59 -!- Bigbear1 [~Cody@d173-181-43-12.abhsia.telus.net] has joined #go-nuts
08:00 -!- vinisterx [~ryan@74-129-201-27.dhcp.insightbb.com] has quit [Quit:
WeeChat 0.3.4]
08:18 -!- cafesofie [~cafesofie@ool-18b97779.dyn.optonline.net] has quit [Remote
host closed the connection]
08:27 -!- hotsyk [~vhotsyk@95.158.8.213] has joined #go-nuts
08:33 -!- edsrzf [~edsrzf@122-61-221-144.jetstream.xtra.co.nz] has quit [Remote
host closed the connection]
08:38 -!- wallerdev [~wallerdev@72.44.102.30] has quit [Quit: wallerdev]
08:42 -!- sebastianskejoe [~sebastian@188.114.142.217] has joined #go-nuts
09:04 -!- m4dh4tt3r1 [~Adium@c-98-210-145-213.hsd1.ca.comcast.net] has quit [Quit:
Leaving.]
09:08 -!- sacho [~sacho@87-126-42-180.btc-net.bg] has quit [Read error: Operation
timed out]
09:21 -!- Bigbear1 [~Cody@d173-181-43-12.abhsia.telus.net] has quit [Read error:
Connection reset by peer]
09:27 -!- noam [noam@87.69.42.61.cable.012.net.il] has quit [Ping timeout: 276
seconds]
09:28 -!- sacho [~sacho@90-154-145-96.btc-net.bg] has joined #go-nuts
09:31 -!- noam [noam@87.69.42.61.cable.012.net.il] has joined #go-nuts
09:56 -!- boscop [~boscop@unaffiliated/boscop] has quit [Ping timeout: 246
seconds]
10:00 -!- saracen [~saracen@81-5-140-201.dsl.eclipse.net.uk] has quit [Ping
timeout: 276 seconds]
10:08 -!- boscop [~boscop@unaffiliated/boscop] has joined #go-nuts
10:08 -!- saschpe [~quassel@opensuse/member/saschpe] has joined #go-nuts
10:14 -!- eimantas [~eimantas@88.118.222.57] has joined #go-nuts
10:22 -!- tvw [~tv@e176002055.adsl.alicedsl.de] has joined #go-nuts
10:25 -!- jstemmer [~cheetah@mrpwn.stemmertech.com] has joined #go-nuts
10:26 -!- KirkMcDonald [~Kirk@python/site-packages/KirkMcDonald] has quit [Ping
timeout: 252 seconds]
10:42 -!- eimantas [~eimantas@88.118.222.57] has quit [Quit: eimantas]
10:42 -!- KirkMcDonald [~Kirk@python/site-packages/KirkMcDonald] has joined
#go-nuts
10:58 -!- eimantas [~eimantas@88.118.222.15] has joined #go-nuts
10:58 -!- sebastianskejoe [~sebastian@188.114.142.217] has quit [Quit: Lost
terminal]
11:01 -!- piranha [~piranha@5ED43A0B.cm-7-5a.dynamic.ziggo.nl] has joined #go-nuts
11:09 -!- telexicon [~telexicon@unaffiliated/chowmeined] has quit [Ping timeout:
252 seconds]
11:23 -!- eimantas [~eimantas@88.118.222.15] has quit [Quit: eimantas]
11:25 -!- tvw [~tv@e176002055.adsl.alicedsl.de] has quit [Ping timeout: 246
seconds]
11:30 -!- hargettp [~hargettp@pool-71-174-139-181.bstnma.east.verizon.net] has
joined #go-nuts
11:31 -!- noam [noam@87.69.42.61.cable.012.net.il] has quit [Ping timeout: 248
seconds]
11:35 -!- angasule [~angasule@190.2.33.49] has joined #go-nuts
11:37 -!- noam [noam@87.69.42.61.cable.012.net.il] has joined #go-nuts
12:07 -!- COBOL2121 [~Null@usr018.bb160-01.udk.im.wakwak.ne.jp] has joined
#go-nuts
12:11 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-148-107.clienti.tiscali.it] has
quit [Quit: E se abbasso questa leva che succ...]
12:13 -!- a2800276 [~a2800276@xdsl-78-35-234-174.netcologne.de] has quit [Ping
timeout: 240 seconds]
12:14 -!- a2800276 [~a2800276@xdsl-87-78-237-176.netcologne.de] has joined
#go-nuts
12:17 -!- snearch [~snearch@f053002004.adsl.alicedsl.de] has joined #go-nuts
12:40 -!- sacho [~sacho@90-154-145-96.btc-net.bg] has quit [Ping timeout: 246
seconds]
12:42 -!- alexMocanu [~alexandru@customers.elgar.uob.ask4.co.uk] has joined
#go-nuts
12:42 < alexMocanu> hello everyone :)
12:43 -!- sacho [~sacho@95-42-104-115.btc-net.bg] has joined #go-nuts
12:43 < alexMocanu> any good resources for starting Go for Java programmers?
12:44 < aiju> forget everything you believe to know about programming
12:44 < aiju> read the Go tutorial
12:45 < manveru> i was just about to say the same :)
12:46 -!- oal [~oal@5.79-160-122.customer.lyse.net] has joined #go-nuts
12:46 < alexMocanu> haha OK, interesting approach :P
12:56 -!- boscop [~boscop@unaffiliated/boscop] has quit [Ping timeout: 246
seconds]
13:06 -!- nictuku [~yvesj@84-72-7-79.dclient.hispeed.ch] has joined #go-nuts
13:06 -!- nictuku [~yvesj@84-72-7-79.dclient.hispeed.ch] has quit [Changing host]
13:06 -!- nictuku [~yvesj@unaffiliated/nictuku] has joined #go-nuts
13:09 -!- hargettp [~hargettp@pool-71-174-139-181.bstnma.east.verizon.net] has
quit [Quit: Leaving...]
13:10 -!- COBOL2121 [~Null@usr018.bb160-01.udk.im.wakwak.ne.jp] has quit [Remote
host closed the connection]
13:13 -!- phoeton [~phoeton@p579BD919.dip.t-dialin.net] has joined #go-nuts
13:13 -!- saschpe [~quassel@opensuse/member/saschpe] has quit [Remote host closed
the connection]
13:21 -!- XenoPhoenix [~Xeno@cpc13-aztw24-2-0-cust23.aztw.cable.virginmedia.com]
has quit [Ping timeout: 276 seconds]
13:28 -!- boscop [~boscop@unaffiliated/boscop] has joined #go-nuts
13:30 -!- alexMocanu [~alexandru@customers.elgar.uob.ask4.co.uk] has quit [Quit:
Leaving]
13:36 -!- hargettp [~hargettp@pool-71-174-139-181.bstnma.east.verizon.net] has
joined #go-nuts
13:41 < manveru> ok...  i think i finally have my job queue
13:42 < manveru> not really happy with it though
13:49 < phoeton> why?
13:49 < phoeton> What's missing?
13:49 < manveru> nothing is missing, i think
13:50 < manveru> i just wish it would've been easier to implement
13:50 < phoeton> So why aren't you happy with it?
13:50 < manveru> feels like a giant hack
13:50 < phoeton> hmm...
13:54 < manveru> well, it's not too bad either, at least i got rid of any
polling
13:55 -!- sebastianskejoe [~sebastian@188.114.142.217] has joined #go-nuts
13:55 < manveru> but the limits of arrays are still mysterious to me
13:56 < phoeton> You mean in Go in general?
13:56 < manveru> yeah
13:56 < phoeton> What are you using arrays for anyway?  Is it something you
can't do with slices?
13:56 < aiju> Go has this pathetic array and slice length limit of 2 billion
elements
13:56 < manveru> slices are based on arrays
13:56 < phoeton> Yep, I know.
13:57 < manveru> also, not sure what the limit of channel buffer size is
13:57 < manveru> i basically need a channel buffer with the same size as an
array
13:58 < manveru> lots of waste, but that avoids having the same number of
goroutines running :P
13:58 -!- XenoPhoenix [~Xeno@cpc13-aztw24-2-0-cust23.aztw.cable.virginmedia.com]
has joined #go-nuts
14:00 < manveru> hm
14:00 < manveru> oh, seems it allocates all of the buffer
14:00 < manveru> damnit
14:01 < manveru> this all would be so much more straight-forward if i could
just select on a dynamic set of channels
14:02 < manveru> guess i better explain my specific problem right now, maybe
you guys have ideas :)
14:03 < phoeton> Please go ahead :D
14:03 < manveru> i have a job queue ordered by priority
14:03 < manveru> that's implemented using container/heap, modified for my
types
14:04 < manveru> i have an arbitrary number of those queues, associated with
a name for each
14:04 < manveru> that part works fine so far
14:04 < manveru> the issue is integration with workers
14:04 < phoeton> Are all these queues to be executed in parallel with the
same priority?
14:05 < manveru> yeah
14:05 < phoeton> Or does priority rating have cross-queue effects?
14:05 < manveru> a worker can listen for work on a set of queues
14:06 < manveru> so, here's my hack
14:06 < manveru> first, i have a channel called "ready", and i put a
function in there that pops one element from the queue
14:07 < manveru> that makes sure that at the time it's called, it gets the
element of highest priority
14:07 < manveru> now, every time a new job is pushed into the queue, i start
a goroutine that pushes the function into the channel
14:08 < manveru> that means, for N jobs, i have N goroutines
14:08 < phoeton> I'm sorry: I need a bit of clarification.
14:08 < manveru> sure
14:09 < phoeton> Why exactly do you use a channel of functions?  Wouldn't it
be more prudent to push the information needed to find the job in question (maybe
the queue) and leave the popping to the worker?
14:10 < manveru> well, given that the queue is mutable, i use a mutex for
push/pop
14:10 < phoeton> So?
14:11 < manveru> hm
14:11 < manveru> nvm, yeah, i can simplify that
14:11 < manveru> i can just push the queue into the channel, since the
function is well-known
14:11 < phoeton> Define pushing and pooping as a method on the queue.
14:12 < phoeton> store the mutex in the queue struct as a data field.
14:12 < phoeton> profit!
14:12 < manveru> that reduces memory-usage of the ready channel a bit
14:12 < phoeton> Okay, what is the problem?
14:12 < phoeton> BTW: Depending on your number of queues, you could have an
int channel communicating queue IDs
14:13 < manveru> well, passing a pointer is equivalent to passing an int
14:14 < manveru> saves the lookup overhead
14:14 < phoeton> Yes, absolutely.
14:14 < manveru> i just changed it to just pass *Queue, works fine
14:15 < phoeton> Nevermind, I was thinking about a project I'm working on, I
don't know anything about your storage and persistance model.  Sorry.
14:15 < phoeton> Please go on.
14:15 < manveru> heh
14:15 < manveru> well, next issue is that a worker wants to get jobs from a
number of queues he selects
14:16 < manveru> so i start a goroutine for every queue the worker listens
to and try to get a job promise from the ready channel of the queue
14:17 < manveru> i better show you the code for that one
14:18 < phoeton> Yeah, the way you describe it it just sounds like massive
overhead.
14:18 < phoeton> Just paste the code somewhere.
14:18 < manveru> it is
14:18 < manveru> http://pastie.org/1956356
14:18 < phoeton> thx
14:18 < manveru> line 120
14:19 < phoeton> func "run"?
14:19 < manveru> yes
14:20 < manveru> so i make two channels with buffers of the number of queues
being watched by this client
14:20 < phoeton> Why is watching a map?  Do you need tube name indexing for
performance reasons?
14:20 < phoeton> client.watching I mean
14:20 < manveru> yes
14:20 < phoeton> mhm.
14:22 < phoeton> Alright I think I get what the client does.
14:22 < manveru> it's all very inelegant...  been trying to getting it to
work for a week now
14:22 < manveru> by now i've given up on elegant solutions :P
14:23 < phoeton> Hmm… I think with the basic design decisions you seem to
have made this might be one of the best available working versions.
14:23 < manveru> the defer/recover is for the case when two goroutines get
jobs at roughly the same time, since pushing into a closed channel panics
14:24 < phoeton> Yeah the recover is fine.
14:24 < manveru> this is actually a bug i haven't covered yet...  i need to
push the job back into the queue
14:24 < phoeton> I think if you want to make this more elegant or even more
performant you would need to fundamentally restructure your design.
14:25 < manveru> well, i'm all ears :)
14:25 < phoeton> You would do that?  Alright ;)
14:25 < manveru> this is all just for learning
14:25 < phoeton> Oh cool.
14:25 < manveru> i'm trying to implement beanstalkd in go
14:26 -!- sebastianskejoe [~sebastian@188.114.142.217] has quit [Quit: Lost
terminal]
14:29 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:581f:e486:b34d:a545] has quit
[Quit: Leaving.]
14:34 -!- hallas [~hallas@x1-6-30-46-9a-b2-c5-1f.k891.webspeed.dk] has joined
#go-nuts
14:37 -!- a2800276 [~a2800276@xdsl-87-78-237-176.netcologne.de] has quit [Ping
timeout: 240 seconds]
14:37 -!- a2800276 [~a2800276@xdsl-87-78-237-176.netcologne.de] has joined
#go-nuts
14:40 -!- tvw [~tv@e176002055.adsl.alicedsl.de] has joined #go-nuts
14:40 -!- foocraft [~ewanas@86.36.49.200] has quit [Ping timeout: 240 seconds]
14:55 -!- tobym [~tobym@cpe-72-229-2-6.nyc.res.rr.com] has joined #go-nuts
14:57 -!- tncardoso [~thiago@189.59.132.92] has joined #go-nuts
14:58 -!- sebastianskejoe [~sebastian@188.114.142.217] has joined #go-nuts
15:01 < skelterjohn> manveru: if you have two goroutines writing to a
channel that could close, secure it with a mutex and a bool that indicates closed
status.
15:02 -!- skelterjohn [~jasmuth@c-24-0-2-70.hsd1.nj.comcast.net] has quit [Quit:
skelterjohn]
15:04 -!- skelterjohn [~jasmuth@c-24-0-2-70.hsd1.nj.comcast.net] has joined
#go-nuts
15:05 -!- tncardoso [~thiago@189.59.132.92] has quit [Ping timeout: 246 seconds]
15:11 < uriel> if you are using close(), it is usually a sign that you are
doing something wrong
15:12 -!- htoothrot [~mux@66-169-185-121.dhcp.ftwo.tx.charter.com] has quit [Ping
timeout: 240 seconds]
15:17 < aiju> uriel: bullshit
15:17 < aiju> uriel: close has a use, that's why it's in the language
15:17 < aiju> calling close wrong is like calling EOF on pipes wrong
15:18 -!- tncardoso [~thiago@189.59.196.250] has joined #go-nuts
15:18 -!- TheMue [~TheMue@p5DDF68AF.dip.t-dialin.net] has joined #go-nuts
15:24 < manveru> aiju: he said "usually" :)
15:25 < aiju> that somehow implies that most people using Go are idiots
15:27 < skelterjohn> i thought "closed" was the one to watch out for
15:27 < aiju> yeah, closed() is horrible and evil
15:27 < skelterjohn> close()ing a channel seem slike a pretty sensible thing
to do
15:27 < uriel> aiju: see the meaning of the word "usually"
15:27 < uriel> skelterjohn: you should very rarely want to close channels
15:27 < aiju> a sender can close() a channel to notify the reader that there
is no more data
15:28 < uriel> ie., for range
15:28 < aiju> something which is rather common in my code
15:28 < uriel> but little more
15:29 < manveru> yeah, in my case, close was actually wrong
15:29 < manveru> but i have no idea how to make it better :|
15:29 < uriel> if you have one channel with two writters and one reader,
close() is *very* unlikely to be what you want
15:30 < uriel> manveru: what are you trying to do?
15:30 < manveru> what you said
15:30 < uriel> manveru: what did I say?  I said what you don't want
15:31 < manveru> i have 1+ writers and 1 reader, and i want only the first
value put into the channel, then iterate over any leftovers and put them back
where they came from
15:31 -!- rcrowley [~rcrowley@c-71-202-44-233.hsd1.ca.comcast.net] has joined
#go-nuts
15:31 < uriel> ?
15:32 < uriel> "you want only the first value put into the channel"?
15:32 < uriel> but you want to iterate over the rest
15:32 < uriel> sorry, but I don't get what you are trying to do
15:32 < manveru> each writer is in a separate goroutine
15:32 < uriel> obviously
15:32 < uriel> still don't get it
15:33 < manveru> so they may get results at the same time, and both push
into the same channel
15:33 < uriel> so?
15:33 * uriel still doesn't understand the problem
15:33 < manveru> well, i can only consume one at a time
15:33 < manveru> i have to put the other results back so other workers can
consume them
15:34 < uriel> ?
15:34 < uriel> put them "back"?
15:34 < uriel> back into what?
15:35 < manveru> back into where the reader got it from
15:35 < manveru> err, writer, in this case
15:35 < manveru> damn
15:35 < uriel> sorry, you have to explain what the fuck you are trying to do
15:35 < manveru> nm, i'll show you code in a bit
15:35 < uriel> not *how* you are trying to do it, as it obviously makes no
sense
15:37 -!- Pathin_ [~root@gladsheim.nullbytestudios.net] has quit [Remote host
closed the connection]
15:39 < str1ngs> remind not to help people any more ok
15:39 < aiju> i can haz punctuation?
15:39 < str1ngs> apparently forked calls to tar are better then using my
generic goarchive package
15:40 -!- Pathin [~root@gladsheim.nullbytestudios.net] has joined #go-nuts
15:44 -!- tvw [~tv@e176002055.adsl.alicedsl.de] has quit [Ping timeout: 246
seconds]
15:53 -!- Fish- [~Fish@9fans.fr] has joined #go-nuts
15:53 -!- Pathin [~root@gladsheim.nullbytestudios.net] has quit [Remote host
closed the connection]
15:59 -!- sacho [~sacho@95-42-104-115.btc-net.bg] has quit [Ping timeout: 246
seconds]
16:01 -!- htoothrot [~mux@66-169-185-121.dhcp.ftwo.tx.charter.com] has joined
#go-nuts
16:03 -!- krikulis [~krikulis@office.true-vision.net] has joined #go-nuts
16:03 < krikulis> hi all
16:04 < krikulis> how can one read HttpResponse.Body ?
16:04 < krikulis> This approach : https://gist.github.com/985634 does not
work
16:06 -!- htoothrot [~mux@66-169-185-121.dhcp.ftwo.tx.charter.com] has quit [Ping
timeout: 255 seconds]
16:06 -!- ako [~nya@fuld-590c744e.pool.mediaWays.net] has joined #go-nuts
16:08 < phoeton> The Body is an io.ReadCloser
16:08 -!- aho [~nya@fuld-590c6928.pool.mediaWays.net] has quit [Ping timeout: 246
seconds]
16:09 < phoeton> Meaning it has a Read method, as it is a Reader.
16:10 < exch> io.ReadFull(r.Body, b) reads no more than len(b) bytes.  Since
your b has length/capacity 0, it wont read anything
16:10 < phoeton> Does using the Read method with an allocated []byte buffer
work?
16:12 < exch> try using b := ioutil.ReadAll(r.Body)
16:13 < exch> or rather: b, err := ioutil.ReadAll(r.Body)
16:15 -!- htoothrot [~mux@66-169-185-121.dhcp.ftwo.tx.charter.com] has joined
#go-nuts
16:21 -!- niemeyer [~niemeyer@200-102-196-125.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
16:26 -!- eimantas [~eimantas@ip-212-52-52-163.kava.lt] has joined #go-nuts
16:27 < eimantas> ehlo!
16:27 < krikulis> wtf ./client.go:15: b declared and not used
16:29 < krikulis> exch: that was after replacing line 15 b, err :=
ioutil.ReadAll(r.Body)
16:32 < phoeton> Yeah you have to do something with it after declaring it.
16:33 -!- phoeton [~phoeton@p579BD919.dip.t-dialin.net] has quit [Quit: phoeton]
16:33 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has quit [Ping
timeout: 248 seconds]
16:35 -!- GilJ [~GilJ@zeus.ugent.be] has quit [Ping timeout: 260 seconds]
16:37 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has joined #go-nuts
16:42 -!- tvw [~tv@e176002055.adsl.alicedsl.de] has joined #go-nuts
16:56 -!- oal [~oal@5.79-160-122.customer.lyse.net] has quit [Read error:
Connection reset by peer]
16:59 < krikulis> what is best MySQL library for GoLang, as I have found
several
17:00 -!- ayo [~nya@fuld-590c7e3c.pool.mediaWays.net] has joined #go-nuts
17:01 -!- wallerdev [~wallerdev@72.44.102.30] has joined #go-nuts
17:02 -!- robteix [~robteix@host40.201-253-152.telecom.net.ar] has joined #go-nuts
17:03 -!- ako [~nya@fuld-590c744e.pool.mediaWays.net] has quit [Ping timeout: 246
seconds]
17:08 < skelterjohn> check how recent the activity is
17:24 -!- foocraft [~ewanas@78.100.222.162] has joined #go-nuts
17:31 -!- oal [~oal@5.79-160-122.customer.lyse.net] has joined #go-nuts
17:36 -!- christophercodri [~christoph@c-76-18-5-93.hsd1.fl.comcast.net] has
joined #go-nuts
17:38 -!- angasule [~angasule@190.2.33.49] has quit [Ping timeout: 240 seconds]
17:38 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has quit [Ping
timeout: 258 seconds]
17:40 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has joined
#go-nuts
17:42 -!- rcrowley [~rcrowley@c-71-202-44-233.hsd1.ca.comcast.net] has quit [Quit:
Computer has gone to sleep.]
17:44 < mpl> so, I don't understand what {.section field} is for in the
template package.  what is it I can achieve with that, that I couldn't simply with
{field} ?
17:48 < exch> krikulis: this is the most complete one I think
https://github.com/Philio/GoMySQL
17:49 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has quit [Read error:
Connection reset by peer]
17:51 < eimantas> xbox360 vs.  ps3
17:51 < eimantas> discuss .)
17:51 < fzzbt> both suck
17:51 < fzzbt> and so do you
17:51 < eimantas> ouch
17:54 < fzzbt> mpl: you can do if-else section with that.  {.section field}
...  {.or} ..  {.end}
17:54 -!- fhs [~fhs@2001:0:4137:9e76:183c:56fd:93f1:43e8] has joined #go-nuts
17:54 < fzzbt> if field is nil, the or section will be executed
17:55 < mpl> fzzbt: fair enough.  but that's pretty much all it adds
compared to just invoking the field, isn't it?
17:57 -!- The_Cog [~chatzilla@239.24.187.81.in-addr.arpa] has joined #go-nuts
17:57 -!- tvw [~tv@e176002055.adsl.alicedsl.de] has quit [Ping timeout: 246
seconds]
17:57 < mpl> second question, if my field is an array, is there a way I can
access a particular element of that array instead of having to go through it all
with .repeated ?
17:58 < fzzbt> field[i] doesn't work?
17:58 < mpl> doesn't seem to
17:59 < mpl> I guess I should use a map for that kind of behaviour.
17:59 < fzzbt> hmm, no idea then
17:59 < mpl> ok, thx.
17:59 < fzzbt> maps work strangely with templates
17:59 < fzzbt> see https://code.google.com/p/go/issues/detail?id=669
18:00 < fzzbt> you can loop them, but can't access their keys
18:00 -!- ako [~nya@fuld-590c621b.pool.mediaWays.net] has joined #go-nuts
18:00 < mpl> aw
18:03 -!- Guest36331 [~nya@fuld-590c7e3c.pool.mediaWays.net] has quit [Ping
timeout: 248 seconds]
18:03 < skelterjohn> the keys would be hard coded
18:03 < skelterjohn> in the template
18:03 < skelterjohn> well, w/e
18:03 < skelterjohn> :)
18:04 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has joined #go-nuts
18:04 < christophercodri> hm in the template package I was using
template.MustParseFile for the index.html, but it does not reach out for the
linked .css, how do I fix this plumbing problem :P
18:06 < fzzbt> you're trying to generate output from multiple templates?
18:06 < christophercodri> yes
18:06 -!- robteix [~robteix@host40.201-253-152.telecom.net.ar] has quit [Quit:
Computer has gone to sleep.]
18:08 < fzzbt> christophercodri: you can't do that easily with just the
template package.  see this for more information
http://go.hokapoka.com/go/embedding-or-nesting-go-templates/ - i have made a
helper package called neste that does just that https://github.com/fzzbt/neste
18:08 < mpl> hmm, just to be sure, there's no way to execute go code within
the template, is there?  in the doc XXX, YYY, etc always represent html code,
don't they?
18:08 -!- jodaro [~user@poquito.divinia.com] has joined #go-nuts
18:09 < fzzbt> it's a bit WIP, but works okay.  there aren't many *useful*
formatters yet even tough it says so in the README.
18:09 < christophercodri> awesome I will take a look
18:10 < fzzbt> i can help you if you have questions about neste
18:11 < christophercodri> cool thx
18:12 < fzzbt> mpl: nope
18:13 -!- hallas [~hallas@x1-6-30-46-9a-b2-c5-1f.k891.webspeed.dk] has quit [Ping
timeout: 244 seconds]
18:14 < mpl> fzzbt: right, thx.
18:15 -!- cafesofie [~cafesofie@ool-18b97779.dyn.optonline.net] has joined
#go-nuts
18:15 -!- Ekspluati [5b9b5537@gateway/web/freenode/ip.91.155.85.55] has joined
#go-nuts
18:20 < The_Cog> HTTP module not multithreaded?  See
http://pastie.org/1957281
18:20 < The_Cog> I added a 10S delay to the example server, but it
serialises requests
18:21 < The_Cog> ie 2 concurrent GETs tke 20S to fulfill
18:21 < The_Cog> Any ideas what's wrong?
18:21 < aiju> The_Cog: looks like it isn't multithreaded ;P
18:21 < aiju> maybe try go func() { time.Sleep(...) ; ...  } ()
18:24 < TheMue> The_Cog:
http://golang.org/src/pkg/http/server.go?s=23286:23330#L774
18:24 -!- awidegreen [~quassel@85.24.170.226] has quit [Quit: No Ping reply in 180
seconds.]
18:24 < TheMue> The_Cog: Each connection gets an own goroutine.
18:24 -!- awidegreen [~quassel@h-170-226.A212.priv.bahnhof.se] has joined #go-nuts
18:25 < The_Cog> But http/server.go line 820 it seems to multithread the
actual request serving.  I don't understand.
18:25 < TheMue> The_Cog: How much cores configured?
18:26 < The_Cog> Default - one code I guess
18:26 -!- awidegreen [~quassel@h-170-226.A212.priv.bahnhof.se] has quit [Read
error: Connection reset by peer]
18:26 < The_Cog> I thought the other goroutine should be able to carry on
18:28 < TheMue> The_Cog: That's what I said: one goroutine (not thread).
How much cores/hyperthreads do you have?  Otherwise it only can be handled
sequentially (or with context switches, but not faster).
18:28 -!- awidegreen [~quassel@h-170-226.A212.priv.bahnhof.se] has joined #go-nuts
18:30 -!- GilJ [~GilJ@zeus.ugent.be] has joined #go-nuts
18:30 < The_Cog> It's a dual-core laptop I'm on.  But I haven't told the go
environment to use more than one core.  But if one goroutine is sleeping, does
that still block others?
18:31 < TheMue> The_Cog: You only have one handler registered, always
sleeping.  Register a second one with immediate print.  And the call your current
first and the other second.
18:32 -!- hargettp [~hargettp@pool-71-174-139-181.bstnma.east.verizon.net] has
quit [Quit: Leaving...]
18:35 -!- Ekspluati [5b9b5537@gateway/web/freenode/ip.91.155.85.55] has quit [Ping
timeout: 252 seconds]
18:36 < The_Cog> Are we misunderstanding?  My problem is that if 2 browsers
request /hello at the same time, it takes 20 seconds for the second browser to get
the reply, not 10 secs
18:37 < The_Cog> You mean register a second handler for /hello?  Register 3
copies to be able to serve 3 concurrent users?
18:42 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
18:43 < kevlar> I believe the problem is that time.Sleep() doesn't actually
yield control
18:43 -!- Bigbear1 [~Cody@d173-181-43-12.abhsia.telus.net] has joined #go-nuts
18:43 -!- sebastianskejoe [~sebastian@188.114.142.217] has quit [Quit: Lost
terminal]
18:43 -!- Bigbear1 [~Cody@d173-181-43-12.abhsia.telus.net] has quit [Client Quit]
18:43 < kevlar> try select { case <-time.After(10e9): }
18:43 < kevlar> the other option would be to set runtime.GOMAXPROCS to be
> 1
18:45 < kevlar> TheMue: go read up on goroutines or the code in http; it is
indeed one-goroutine-per-client, and goroutines can be multiplexed onto a single
OS thread perfectly well
18:46 -!- eimantas [~eimantas@ip-212-52-52-163.kava.lt] has quit [Quit: eimantas]
18:47 < The_Cog> Aha!  That would explain it, if time.sleep() doesn't yield.
I'll try other ways to delay response.  Your select for instance.
18:47 < kevlar> The_Cog: actually, <-time.After(10e9) would work too.
18:47 * kevlar isn't sure why he thought he needed the select.
18:47 -!- christophercodri [~christoph@c-76-18-5-93.hsd1.fl.comcast.net] has left
#go-nuts []
18:47 < The_Cog> That'll take time and it's dinner time now, so no answer
from me for a while.  Thanks for the pointer.  I'll have to be careful where I use
time.sleep() in go then.
18:47 < kevlar> I usually use it in a select for things like timeouts, so
that might be why.
18:48 < kevlar> The_Cog: I've never used it, really.
18:48 < kevlar> it's almost never necessary.
18:48 < kevlar> you just use the blocking mechanisms (goroutines, locks, io)
and it all works out nicely.
18:49 < The_Cog> Yah, I'm trying to teach myself go - still think in python
18:50 < str1ngs> kevlar: I'm pretty sure you would need select like you
first thought
18:59 -!- niemeyer [~niemeyer@200-102-196-125.pltce701.dsl.brasiltelecom.net.br]
has quit [Ping timeout: 240 seconds]
19:03 < kevlar> str1ngs: really?  You're trying to block on the channel
receive and don't care about its result, so shouldn't you just be able to recieve
from it?
19:06 -!- Ekspluati [5b9b5537@gateway/web/freenode/ip.91.155.85.55] has joined
#go-nuts
19:06 < str1ngs> kevlar: ah if you want to block yes.  I thought the idea
was to avoid blocking
19:09 < TheMue> kevlar: I know, I only wanted to give a hint for a better
scenario to demonstrate concurrent work.  time.Sleep() is not a very good way to
simulate time consuming tasks.
19:13 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-169-106.clienti.tiscali.it] has
joined #go-nuts
19:16 -!- krikulis [~krikulis@office.true-vision.net] has quit [Ping timeout: 250
seconds]
19:20 < kevlar> TheMue: actually, I think it DOES simulate time-consuming
tasks, because things don't inherently runtime.GoSched() on their own
19:20 < kevlar> because the scheduler isn't pre-emptive
19:21 < kevlar> if you have math or something that's going to take forever,
you should toss in a gosched at the end of loop iterations to give other things a
chance to run
19:21 < kevlar> it just doesn't simulate time consuming blocking tasks, like
I/O.
19:31 -!- dirthead [~chatzilla@68-116-31-34.static.yakm.wa.charter.com] has quit
[Quit: ChatZilla 0.9.85 [SeaMonkey 2.0.14/20110503083225]]
19:34 < creack> hello
19:35 < creack> I have a little question
19:35 < creack> is it possible to read clear data and tls with the same
net.Conn?
19:35 < creack> on the same port
19:35 < creack> ?
19:39 < creack> while I was asking, I found the awnser
19:39 < creack> thank you :D
19:45 -!- rcrowley [~rcrowley@c-71-202-44-233.hsd1.ca.comcast.net] has joined
#go-nuts
19:54 -!- snearch [~snearch@f053002004.adsl.alicedsl.de] has quit [Quit:
Verlassend]
19:55 -!- skelterjohn [~jasmuth@c-24-0-2-70.hsd1.nj.comcast.net] has quit [Quit:
skelterjohn]
19:56 -!- skelterjohn [~jasmuth@c-24-0-2-70.hsd1.nj.comcast.net] has joined
#go-nuts
20:05 -!- hallas [~hallas@x1-6-30-46-9a-b2-c5-1f.k891.webspeed.dk] has joined
#go-nuts
20:08 < The_Cog> kevlar: I just tried <-time.After(10e9) and two queries
still take 20S.  Same with the select.  So they don't yeild either?  See updated
http://pastie.org/1957281
20:11 -!- piranha [~piranha@5ED43A0B.cm-7-5a.dynamic.ziggo.nl] has quit [Quit:
Computer has gone to sleep.]
20:29 -!- huin [~huin@91.85.171.238] has quit [Quit: leaving]
20:33 -!- photron [~photron@port-92-201-116-174.dynamic.qsc.de] has quit [Ping
timeout: 258 seconds]
20:35 -!- angasule [~angasule@190.2.33.49] has joined #go-nuts
20:42 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has quit [Read error:
Operation timed out]
20:43 < Ekspluati> What does the error "Client.go:30: packet.Receive(c.Conn)
used as value" mean?
20:43 < Ekspluati> I can create a small example if needed
20:43 -!- jstemmer [~cheetah@mrpwn.stemmertech.com] has quit [Quit: leaving]
20:45 < kevlar> Ekspluati: show us the line of code or some context
20:45 < kevlar> The_Cog: it should definitely multiplex them, I don't know
what's going on.  http://golang.org/src/pkg/http/server.go?s=23760:23809#L795
20:46 < kevlar> is it possible that your browser is serializing the requests
20:46 < kevlar> (e.g.  try two different browsers or use `time curl` on the
command-line)
20:47 < Ekspluati> Is this enough?  http://pastie.org/1957908
20:50 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller,
Faster, Easier.  http://miranda-im.org]
20:50 < kevlar> not totally, but it looks suspiciously like Receive()
doesn't return anything.
20:52 < Ekspluati> kevlar: That fixed it.  I can't believe I didn't notice
that.  :D
20:54 -!- hargettp [~hargettp@pool-71-174-139-181.bstnma.east.verizon.net] has
joined #go-nuts
20:56 -!- oal [~oal@5.79-160-122.customer.lyse.net] has quit [Remote host closed
the connection]
20:57 -!- ExtraSpice [XtraSpice@78-57-204-104.static.zebra.lt] has quit [Remote
host closed the connection]
21:01 -!- Fish- [~Fish@9fans.fr] has quit [Quit: So Long, and Thanks for All the
Fish]
21:03 -!- ayo [~nya@fuld-590c6edc.pool.mediaWays.net] has joined #go-nuts
21:03 -!- TheMue [~TheMue@p5DDF68AF.dip.t-dialin.net] has quit [Quit: TheMue]
21:05 -!- nictuku_ [~nict@84-72-7-79.dclient.hispeed.ch] has joined #go-nuts
21:06 -!- ako [~nya@fuld-590c621b.pool.mediaWays.net] has quit [Ping timeout: 246
seconds]
21:07 -!- l00t [~i-i3id3r_@189.105.5.229] has quit [Remote host closed the
connection]
21:12 -!- arun_ [~arun@unaffiliated/sindian] has joined #go-nuts
21:12 -!- napsy [~luka@88.200.96.18] has quit [Ping timeout: 276 seconds]
21:16 -!- hotsyk [~vhotsyk@95.158.8.213] has quit [Quit: Leaving]
21:20 -!- awidegreen [~quassel@h-170-226.A212.priv.bahnhof.se] has quit [Remote
host closed the connection]
21:20 < The_Cog> kevlar: Respect.  You're right - browser serialising
requests.  Separate shells running GET work concurrently.  I am amazed and will
trace with wireshark to understand more.  Thanks for your time and patience.
21:23 -!- skelterjohn [~jasmuth@c-24-0-2-70.hsd1.nj.comcast.net] has quit [Quit:
skelterjohn]
21:24 < The_Cog> I wonder if it's the fact that it uses a persistent http
connection and tries to share it between the two tabs that makes it serialise -
time for wireshark...
21:26 -!- pamera1 [~Pam@c-76-102-255-99.hsd1.ca.comcast.net] has left #go-nuts []
21:32 -!- hargettp [~hargettp@pool-71-174-139-181.bstnma.east.verizon.net] has
quit [Quit: Leaving...]
21:33 -!- fhs [~fhs@2001:0:4137:9e76:183c:56fd:93f1:43e8] has quit [Quit: leaving]
21:33 -!- Adys [~Adys@unaffiliated/adys] has quit [Ping timeout: 246 seconds]
21:36 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
21:37 < The_Cog> It's as clear as day in wireshark.  One TCP connection,
serialised requests.  Pooh!
21:40 -!- epenn [c7f8b916@gateway/web/freenode/ip.199.248.185.22] has joined
#go-nuts
21:54 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
22:01 < kevlar> The_Cog: is that with chrome?
22:04 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has quit [Ping
timeout: 248 seconds]
22:08 -!- skelterjohn [~jasmuth@c-24-0-2-70.hsd1.nj.comcast.net] has joined
#go-nuts
22:09 -!- niemeyer [~niemeyer@200-102-196-125.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
22:11 -!- zcram [~zcram@78-28-97-134.cdma.dyn.kou.ee] has joined #go-nuts
22:12 < The_Cog> kevlar: No, firefox 4.0.1 but now I understand, I think it
might be common across all browsers that use HTTP persistent connections (HTTP
1.1?  can't remember offhand - never mind)
22:13 -!- nictuku [~yvesj@unaffiliated/nictuku] has quit [Quit: Leaving]
22:19 -!- jarsen [~jarsen@76.8.206.34] has joined #go-nuts
22:20 -!- jarsen [~jarsen@76.8.206.34] has quit [Remote host closed the
connection]
22:25 < kevlar> The_Cog: try it with chrome.  I am almost certain chrome
tries multiple connections.  You can also see in the chrome developer tools what
connections it's making.
22:30 -!- hargettp [~hargettp@pool-71-174-139-181.bstnma.east.verizon.net] has
joined #go-nuts
22:30 -!- niemeyer [~niemeyer@200-102-196-125.pltce701.dsl.brasiltelecom.net.br]
has quit [Ping timeout: 240 seconds]
22:36 < The_Cog> tried chromuim (on Ubuntu here) and that serialises its
requests as well.  However, if I set one tab for 127.0.0.1 and one for localhost,
then it runs them in parallel.  Wireshark shows 2 TCP connections
22:38 < The_Cog> I'm off to bed.  Thanks for your time, I've learned a lot
tonight.
22:38 -!- The_Cog [~chatzilla@239.24.187.81.in-addr.arpa] has quit [Quit:
ChatZilla 0.9.86.1 [Firefox 4.0.1/20110413222027]]
22:46 -!- hargettp [~hargettp@pool-71-174-139-181.bstnma.east.verizon.net] has
quit [Quit: Leaving...]
22:49 -!- eikenberry [~jae@74.85.239.23] has joined #go-nuts
22:49 -!- nictuku_ [~nict@84-72-7-79.dclient.hispeed.ch] has quit [Remote host
closed the connection]
22:51 < kevlar> woo, my new ircd now has the minimum set of functionality to
be called an IRCd :D.  you can sign on, join channels, and send messages.  lol.
22:58 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-169-106.clienti.tiscali.it] has
quit [Quit: E se abbasso questa leva che succ...]
23:06 -!- Sep102__ [~Sep102@c-71-231-176-153.hsd1.wa.comcast.net] has joined
#go-nuts
23:10 -!- jodaro [~user@poquito.divinia.com] has quit [Remote host closed the
connection]
23:11 -!- Sep102_ [~Sep102@c-71-231-176-153.hsd1.wa.comcast.net] has quit [Ping
timeout: 276 seconds]
23:11 -!- dfc [~dfc@eth59-167-133-99.static.internode.on.net] has joined #go-nuts
23:15 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has joined #go-nuts
23:22 -!- niemeyer [~niemeyer@200-102-196-125.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
23:28 -!- foocraft [~ewanas@78.100.222.162] has quit [Ping timeout: 246 seconds]
23:29 -!- tncardoso [~thiago@189.59.196.250] has quit [Quit: bye]
23:31 -!- Sep102_ [~Sep102@c-71-231-176-153.hsd1.wa.comcast.net] has joined
#go-nuts
23:32 -!- foocraft [~ewanas@89.211.217.66] has joined #go-nuts
23:34 -!- Sep102__ [~Sep102@c-71-231-176-153.hsd1.wa.comcast.net] has quit [Ping
timeout: 246 seconds]
23:41 -!- Ekspluati [5b9b5537@gateway/web/freenode/ip.91.155.85.55] has quit [Ping
timeout: 252 seconds]
23:47 -!- ExsysTech [~ExsysTech@50-46-213-60.evrt.wa.frontiernet.net] has quit
[Read error: Connection reset by peer]
23:49 -!- fumon [~fumon@206.248.173.89] has joined #go-nuts
23:50 -!- ExsysTech [~ExsysTech@50-46-213-60.evrt.wa.frontiernet.net] has joined
#go-nuts
23:50 -!- foocraft_ [~ewanas@78.101.131.133] has joined #go-nuts
23:51 -!- ExsysTech [~ExsysTech@50-46-213-60.evrt.wa.frontiernet.net] has quit
[Read error: Connection reset by peer]
23:52 -!- ExsysTech [~ExsysTech@50-46-213-60.evrt.wa.frontiernet.net] has joined
#go-nuts
23:54 -!- foocraft [~ewanas@89.211.217.66] has quit [Ping timeout: 264 seconds]
23:55 < fumon> Hey guys & gals, Question: I've gob encoded a bunch of data
(3000+ entries) where the data type has an underlying slice type.  Can I decode it
to the underlying type?  Is it similar enough?  I ask because I'd like to range
over it but that hasn't worked in my experience without casting it in place which
in this case would be non-ideal in terms of performance.
23:56 -!- m4dh4tt3r [~Adium@c-98-210-145-213.hsd1.ca.comcast.net] has joined
#go-nuts
23:59 < dfc> fumon: can you post some exampe code ?
--- Log closed Mon May 23 00:00:48 2011