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

--- Log opened Thu Jan 06 00:00:02 2011
00:00 < aiju> GilJ: is it across a filesystem?
00:01 < GilJ> aiju: No
00:01 < aiju> it works just fine for me
00:01 < aiju> which OS?
00:02 < aiju> and what are you specifying as a second argument?
00:02 -!- blm [~chatzilla@c-98-211-37-219.hsd1.tn.comcast.net] has joined #go-nuts
00:03 -!- DarthShrine [~angus@58-6-93-222.dyn.iinet.net.au] has joined #go-nuts
00:03 -!- DarthShrine [~angus@58-6-93-222.dyn.iinet.net.au] has quit [Changing
host]
00:03 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has joined
#go-nuts
00:04 < GilJ> aiju: I'm running Ubuntu 10.10, and calling it like this:
http://pastie.org/1432618
00:05 < aiju> ugh
00:05 < aiju> no offence, but i've often had weird behaviour with ubuntu
00:05 < aiju> strace that binary
00:05 -!- snearch [~snearch@f053005138.adsl.alicedsl.de] has quit [Quit:
Verlassend]
00:05 < jhawk28> the double slash is most likely your problem
00:06 < aiju> jhawk28: works fine for me with that
00:07 < GilJ> It was for me, thanks jhawk28
00:07 < GilJ> Still can't move to /tmp though :/
00:07 < jhawk28> could be a permissions issue
00:07 < aiju> Original: /home/aiju/tmpa
00:07 < aiju> eehm
00:08 < aiju> oh well i suppose folder should end with a /
00:08 < GilJ> ls
00:08 -!- Scorchin [~Scorchin@host86-173-185-198.range86-173.btcentralplus.com]
has quit [Quit: Scorchin]
00:08 < GilJ> Woops
00:08 < aiju> GilJ: i recommend strace'ing it
00:10 < GilJ> aiju: Ok will do that later, bedtime now.  Thanks
00:12 < KBme> Eko: not here.  used from system = sys + heapsys
00:17 -!- jhawk28 [~jhawk28@user-387c58d.cable.mindspring.com] has quit [Quit:
Bye!]
00:17 -!- jhawk28 [~jhawk28@user-387c58d.cable.mindspring.com] has joined #go-nuts
00:17 -!- jhawk28 [~jhawk28@user-387c58d.cable.mindspring.com] has quit [Client
Quit]
00:18 -!- jhawk28 [~jhawk28@user-387c58d.cable.mindspring.com] has joined #go-nuts
00:18 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has
joined #go-nuts
00:19 -!- jesmon [~user@static-71-244-114-122.albyny.fios.verizon.net] has quit
[Remote host closed the connection]
00:20 -!- Tuller_ [~tuller@c-69-143-52-174.hsd1.va.comcast.net] has joined
#go-nuts
00:22 -!- Tuller [~tuller@c-69-143-52-174.hsd1.va.comcast.net] has quit [Ping
timeout: 240 seconds]
00:25 -!- iant [~iant@nat/google/x-hddzdzxezqebzwkt] has quit [Quit: Leaving.]
00:25 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has quit
[Read error: Connection reset by peer]
00:26 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has
joined #go-nuts
00:29 -!- codelurker [~codelurke@66.71.230.222] has joined #go-nuts
00:34 -!- iant [~iant@67.218.105.75] has joined #go-nuts
00:34 -!- mode/#go-nuts [+v iant] by ChanServ
00:37 -!- outworlder [~stephen@189.90.170.251] has quit [Quit: Leaving.]
00:38 -!- artefon [~thiago@187.58.5.34] has quit [Read error: Connection reset by
peer]
00:41 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
00:41 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
00:43 -!- codelurker [~codelurke@66.71.230.222] has quit [Quit: Leaving]
00:47 -!- Qvist_ [~erik@c-66cde455.05-294-6c6b701.cust.bredbandsbolaget.se] has
quit [Read error: Operation timed out]
00:50 -!- daharon [~daharon@173-11-102-86-SFBA.hfc.comcastbusiness.net] has quit
[Quit: Leaving]
00:51 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 246 seconds]
00:52 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
00:56 -!- aho [~nya@fuld-590c70a2.pool.mediaWays.net] has quit [Quit:
EXEC_over.METHOD_SUBLIMATION]
01:00 -!- go^lang [~newblue@116.26.58.39] has quit [Quit: 暂离]
01:01 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
01:01 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
01:01 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined
#go-nuts
01:08 -!- bmizeran_ [~bmizerany@208.66.27.62] has joined #go-nuts
01:08 -!- bmizerany [~bmizerany@208.66.27.62] has quit [Read error: Connection
reset by peer]
01:11 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 276 seconds]
01:11 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
01:16 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has quit
[Quit: derferman]
01:19 -!- jhawk28 [~jhawk28@user-387c58d.cable.mindspring.com] has quit [Quit:
Leaving...]
01:19 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has quit [Ping
timeout: 260 seconds]
01:21 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 260 seconds]
01:21 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
01:23 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has
joined #go-nuts
01:23 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has quit
[Read error: Connection reset by peer]
01:23 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has
joined #go-nuts
01:24 -!- SoniaKeys [Alliebloom@c-24-91-112-191.hsd1.ma.comcast.net] has quit []
01:25 -!- blm [~chatzilla@c-98-211-37-219.hsd1.tn.comcast.net] has left #go-nuts
[]
01:32 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 246 seconds]
01:32 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
01:34 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
01:35 -!- niemeyer [~niemeyer@201-40-141-234.pltce701.dsl.brasiltelecom.net.br]
has quit [Ping timeout: 276 seconds]
01:35 -!- shvntr [~shvntr@113.84.147.159] has joined #go-nuts
01:35 -!- sauerbraten [~sauerbrat@p508CF541.dip.t-dialin.net] has quit [Remote
host closed the connection]
01:41 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Read error: Operation timed out]
01:41 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
01:46 -!- noktoborus [~noxless@109.126.26.65] has quit [Read error: Connection
reset by peer]
01:47 -!- choatic [support@78.144.18.225] has joined #go-nuts
01:47 -!- niemeyer [~niemeyer@201-40-141-234.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
01:47 < choatic> hi there folks can somone tell me how i make a compiler on
windows ?
01:47 < choatic> i used
http://cdn.bitbucket.org/jpoirier/go_mingw/downloads/readme.pdf but it fails :(
01:49 -!- niemeyer_ [~niemeyer@189.96.251.133] has joined #go-nuts
01:49 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Read error: Operation timed out]
01:49 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
01:52 -!- niemeyer [~niemeyer@201-40-141-234.pltce701.dsl.brasiltelecom.net.br]
has quit [Ping timeout: 264 seconds]
01:53 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined
#go-nuts
01:55 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit
[Client Quit]
01:56 -!- go^lang [~newblue@116.26.58.39] has joined #go-nuts
01:56 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined
#go-nuts
01:57 -!- niemeyer_ [~niemeyer@189.96.251.133] has quit [Ping timeout: 240
seconds]
01:58 -!- cafesofie [~cafesofie@rnwifi-164-107-92-27.resnet.ohio-state.edu] has
joined #go-nuts
02:01 -!- choatic [support@78.144.18.225] has left #go-nuts []
02:10 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
02:10 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
02:12 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
02:14 -!- iant [~iant@67.218.105.75] has quit [Quit: Leaving.]
02:14 -!- cafesofie [~cafesofie@rnwifi-164-107-92-27.resnet.ohio-state.edu] has
quit [Remote host closed the connection]
02:18 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
02:39 < go^lang> how to know a key in map ?
02:40 < go^lang> or how to know map has the key ?
02:41 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 276 seconds]
02:41 < Namegduf> _, ok := mappy[key]
02:41 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
02:44 < Eko> go^lang: you can even do the shorthand conditionals if you
don't want to clutter namespace: if _,ok := mapvar[key]; ok {...}
02:46 < go^lang> When I do this with a empty map,I got runtime error:
invalid memory address or nil pointer dereference
02:49 < cbeck> was the map empty or nil?
02:50 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
02:51 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
02:51 -!- noktoborus [~noxless@109.126.26.65] has joined #go-nuts
03:00 -!- mosva [~mosva@unaffiliated/mosva] has joined #go-nuts
03:01 < go^lang> map empty
03:02 -!- Tuller_ [~tuller@c-69-143-52-174.hsd1.va.comcast.net] has quit [Remote
host closed the connection]
03:02 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 272 seconds]
03:02 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
03:02 -!- rbraley [~rbraley@ip72-222-134-229.ph.ph.cox.net] has quit [Ping
timeout: 264 seconds]
03:03 -!- rbraley [~rbraley@ip72-222-134-229.ph.ph.cox.net] has joined #go-nuts
03:03 < go^lang> how to init a string array?
03:04 < cbeck> array or slice?
03:04 < go^lang> array
03:06 < cbeck> foo := [...]string{"bar", "baz"}
03:07 < cbeck> Also, that's a pain to type on a phone keyboard
03:11 -!- jumzi [~jumzi@c-89-233-234-125.cust.bredband2.com] has joined #go-nuts
03:12 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 272 seconds]
03:12 -!- newblue__ [~newblue@113.84.210.147] has joined #go-nuts
03:12 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
03:14 -!- crazy2be [~justin@d75-152-162-237.abhsia.telus.net] has joined #go-nuts
03:15 -!- go^lang [~newblue@116.26.58.39] has quit [Ping timeout: 260 seconds]
03:21 -!- ryanu [~ryan_@c-98-200-189-134.hsd1.tx.comcast.net] has quit []
03:23 -!- rbraley [~rbraley@ip72-222-134-229.ph.ph.cox.net] has quit [Ping
timeout: 246 seconds]
03:25 -!- rbraley [~rbraley@ip72-222-134-229.ph.ph.cox.net] has joined #go-nuts
03:27 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts
03:29 -!- Trolly [7aac74df@gateway/web/freenode/ip.122.172.116.223] has joined
#go-nuts
03:30 < Trooll> How can I be sure Google won't sue any other company for
using it Go technologies like Oracle sued google for using java?
03:32 < chaos95> /ignore Trooll
03:33 < chaos95> oops!
03:33 < chaos95> there we go
03:33 < chaos95> note to self: pay attention to leading spaces
03:34 < cbeck> 1.  Read Go License.  ???  Profit.
03:37 < Trooll> chaos95: I choose a bad nick
03:37 < Trooll> Don't just ignore me
03:38 -!- nameless| [~root@weowntheinter.net] has joined #go-nuts
03:39 < crazy2be> because google is a nicer corperate citizen than oracle
03:39 < crazy2be> but you can also read the licence as cbeck said
03:39 < jumzi> crazy2be: That on the otherhand is not reasurance
03:39 < crazy2be> or read other people's interpretations of it
03:39 < NotATroll> I read the license
03:39 < jumzi> yeah license altough
03:39 < NotATroll> crazy2be: How can I be sure Google is a nicer corporation
03:40 < NotATroll> They are evil like the others
03:40 < crazy2be> NotATroll: They release things like WebM for free
03:40 < crazy2be> but that's subjective
03:40 < crazy2be> i mean, good and evil are really subjective
03:40 < crazy2be> but generally IP war isn't their thing
03:40 < NotATroll> They charge huge amt for the Urchin because they don't
get data
03:41 < NotATroll> but if you use Google Analytics, they are happy and give
it to you for free
03:41 < NotATroll> crazy2be: Although I agree that when comparing to Oracle,
google is the lesser evil
03:42 < NotATroll> but is there anything that can make us 100% sure that
Google can never sue us for using their Go language for w/e we want
03:43 -!- ios_ [~ios@180.191.128.82] has joined #go-nuts
03:43 < nameless|> google is god
03:43 < nameless|> Like seriously, they know everything about everyone one
way or another
03:44 < nameless|> mainly through gmail and android
03:44 < NotATroll> yeah, I know
03:44 < nameless|> android being contacts, calendar, etc
03:44 < NotATroll> They are the evil god
03:44 < nameless|> no
03:44 < nameless|> they aren't evil
03:44 < NotATroll> yes, they are
03:44 < nameless|> Have they fucked us yet?
03:44 < nameless|> No
03:45 < NotATroll> What if they are building this fake image of good and
collecting your data to fuck you later, when you are tried after being fucked by
all other corporations?
03:45 < jesusaurus> http://www.thechurchofgoogle.org/
03:45 < NotATroll> NO!!  Goolge can't be the god
03:46 < nameless|> What if a slow moving boat off the coast of china full of
dried green tea leaves suddenly sinks?
03:46 < NotATroll> Google: Please ignore what I said like chaos95.  Don't
reveal my emails to FBI
03:46 < nameless|> No one cares
03:47 < NotATroll> nameless|: The owner of the dried green tea leaves cares
03:47 < NotATroll> Like wise, Google is the slow moving boat which contains
all our data, if that sinks.
03:47 < NotATroll> All that dirty stuff you were looking out is going to
float on the water
04:00 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has quit [Quit:
Leaving.]
04:00 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has quit
[Quit: derferman]
04:00 < jumzi> Irrelevant discussion
04:01 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 272 seconds]
04:01 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
04:01 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Ping timeout: 260
seconds]
04:05 < Xenith> NotATroll: First off, this isn't a channel for Google
bashing.
04:05 < Xenith> Second, Go is BSD licensed, so its not much of a worry.
04:10 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
04:10 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
04:11 < nameless|> NotATroll: You missed the point entirely
04:11 < nameless|> which isn't that suprising considering you're "notatroll"
04:16 -!- bmizeran_ [~bmizerany@208.66.27.62] has quit [Remote host closed the
connection]
04:23 -!- araujo [~araujo@gentoo/developer/araujo] has joined #go-nuts
04:23 < crazy2be> i'm pretty sure "notatroll" was more accurately named when
he joined the channel
04:24 < crazy2be> but this is the first troll i've seen here
04:24 < crazy2be> ##windows used to have so so many
04:24 < crazy2be> it was like every second question was a troll
04:26 < nameless|> I remember ##windows
04:26 < nameless|> There's a reason I left
04:26 < nameless|> mainly I was banned for trolling
04:27 * NotATroll cries like a baby
04:27 -!- NotATroll [7aac74df@gateway/web/freenode/ip.122.172.116.223] has quit
[Quit: Page closed]
04:29 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 276 seconds]
04:31 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has
joined #go-nuts
04:32 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
04:32 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
04:34 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
04:37 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
04:39 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
04:48 -!- rbraley [~rbraley@ip72-222-134-229.ph.ph.cox.net] has quit [Read error:
Operation timed out]
04:49 -!- rbraley [~rbraley@ip72-222-134-229.ph.ph.cox.net] has joined #go-nuts
04:50 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 246 seconds]
04:50 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
04:55 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 255
seconds]
04:56 < crazy2be> nameless|: i'm pretty sure i was banned for helping
04:56 < crazy2be> because they couldn't distinguish between the trolls and
the legitimate helpers
04:56 < crazy2be> ah well
04:56 < crazy2be> my windows days are past
04:56 < crazy2be> anyway, night
04:57 -!- crazy2be [~justin@d75-152-162-237.abhsia.telus.net] has quit [Remote
host closed the connection]
05:01 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 264 seconds]
05:01 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
05:03 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Quit: Leaving]
05:20 -!- sjbrown [~sjbrown@c-98-210-195-242.hsd1.ca.comcast.net] has joined
#go-nuts
05:27 -!- sjbrown [~sjbrown@c-98-210-195-242.hsd1.ca.comcast.net] has quit [Ping
timeout: 246 seconds]
05:29 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts
05:29 -!- mode/#go-nuts [+v iant] by ChanServ
05:30 -!- shvntr [~shvntr@113.84.147.159] has quit [Ping timeout: 255 seconds]
05:30 -!- keithcascio [~keithcasc@nat/google/x-erddwxenualjtrgl] has quit [Quit:
Leaving]
05:30 < mosva> Anyone has written a crawler in Go?
05:31 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
05:31 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has quit
[Quit: derferman]
05:33 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
05:40 -!- teralaser [~teralaser@unaffiliated/teralaser] has joined #go-nuts
05:41 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 260 seconds]
05:42 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
05:49 -!- foocraft [~dsc@78.100.229.200] has quit [Ping timeout: 255 seconds]
05:50 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Read error: Operation timed out]
05:50 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
05:56 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has
joined #go-nuts
05:56 < uriel> mosva: a 'crawler' of what?
05:57 -!- cafesofie [~cafesofie@rnwifi-164-107-92-115.resnet.ohio-state.edu] has
joined #go-nuts
05:57 < uriel> there are som 'crawlers' I think, see:
http://go-lang.cat-v.org/go-code
05:58 -!- cafesofi_ [~cafesofie@rnwifi-164-107-92-115.resnet.ohio-state.edu] has
joined #go-nuts
05:59 -!- foocraft [~dsc@89.211.119.46] has joined #go-nuts
06:01 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has quit
[Client Quit]
06:02 -!- cafesofie [~cafesofie@rnwifi-164-107-92-115.resnet.ohio-state.edu] has
quit [Ping timeout: 260 seconds]
06:06 -!- xuwen [~xuwen@c-67-180-33-180.hsd1.ca.comcast.net] has joined #go-nuts
06:07 -!- xuwen [~xuwen@c-67-180-33-180.hsd1.ca.comcast.net] has quit [Remote host
closed the connection]
06:09 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Read error: Operation timed out]
06:09 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
06:21 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
06:21 -!- illya77 [~illya77@72-5-133-95.pool.ukrtel.net] has joined #go-nuts
06:21 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
06:24 -!- SmoothPorcupine [~smooth@207.224.112.146] has joined #go-nuts
06:25 < SmoothPorcupine> The anonymous struct members implementation is
incomplete.
06:28 <@adg> SmoothPorcupine: elaborate
06:30 < SmoothPorcupine> `int(struct{int}{})` fails.
06:30 -!- illya77 [~illya77@72-5-133-95.pool.ukrtel.net] has quit [Read error:
Connection reset by peer]
06:32 <@adg> int(struct{int}{}.int) works
06:32 <@adg> i don't see why the former should work, though
06:33 < SmoothPorcupine> But that defeats the purpose of embedded members.
06:33 <@adg> how so?
06:33 < SmoothPorcupine> Maybe you just don't like anonymous fields.
06:33 <@adg> what is the purpose of anonymous fields?
06:34 < SmoothPorcupine> That's the kind of question that makes me think you
don't think they have a purpose.
06:35 <@adg> you're not being very straightforward
06:35 <@adg> can you please explain what you mean in more detail?
06:36 < SmoothPorcupine> No, because it's subtle, and thus not really an
argument that can be "won."
06:36 <@adg> i'm not looking for an argument
06:36 < SmoothPorcupine> Because anonymous fields aren't particularly
important for turing completeness.
06:36 <@adg> i am one of the go devs, i have an interest in potential
deficiencies in the language
06:37 -!- illya77 [~illya77@194-124-133-95.pool.ukrtel.net] has joined #go-nuts
06:37 <@adg> i'm sorry, i'm a bit lost.  turing completeness?  what's the
relevance of that?
06:38 <@adg> SmoothPorcupine: are you confusing me with 'adu' perhaps?
06:38 < SmoothPorcupine> The purpose of anonymous fields is to allow a
struct to implement interfaces of anonymous fields automaticaly, yes?
06:38 <@adg> i seem to remember him talking about turing completeness some
days ago
06:38 < SmoothPorcupine> No I don't know who anybody is.
06:38 <@adg> oh
06:39 <@adg> it's a form of inheritance
06:39 < SmoothPorcupine> Any given code that uses anonymous fields can be
rewritten much as you said above: Access the struct's field.
06:39 <@adg> but much less magical than typical C++/Java inheritance
06:40 < SmoothPorcupine> The whole point of anonymous fields is just that:
You need not access it.
06:41 < SmoothPorcupine> Though, for ambiguous cases, you can.
06:41 <@adg> i would say that anonymous fields allow you to create types
that inherit the behaviour of other types
06:41 <@adg> what are the ambiguous cases?
06:42 < SmoothPorcupine> Common methods at the same depth.
06:43 < cbeck> Are covered by the spec
06:44 <@adg> SmoothPorcupine: "If there is not exactly one f with shallowest
depth, the selector expression is illegal."
06:44 <@adg> http://golang.org/doc/go_spec.html#Selectors
06:44 < SmoothPorcupine> Exactly.
06:44 <@adg> the ambiguous case is forbidden
06:44 < SmoothPorcupine> So you do var.Anon.Method().
06:44 <@adg> sure
06:45 <@adg> i think we are violently in agreement; i of course understand
the usefulness of anonymous fields
06:45 -!- vpit3833 [~user@203.111.33.203] has quit [Quit: ERC Version 5.3 (IRC
client for Emacs)]
06:45 <@adg> but what do you mean that it is incomplete?  why should a
conversion pull out the anonymous field?
06:45 -!- teralaser [~teralaser@unaffiliated/teralaser] has quit [Quit: Sleep!
The only thing you don't want but do need.]
06:45 < SmoothPorcupine> Also looks like you can't ++ a struct with an
anonymous int.
06:46 <@adg> why should that be possible?
06:46 < SmoothPorcupine> Have to s.int++.
06:46 <@adg> ++ is not a method
06:46 <@adg> if we had operator methods, that might be a different story
06:46 <@adg> but if all you want is type Foo struct{int}, why not just type
Foo int ?
06:46 < SmoothPorcupine> Not exactly an "ambiguous" case, but still a case
where you have to access the struct fild by name.
06:47 <@adg> then you can increment, convert, etc
06:47 < SmoothPorcupine> field*
06:48 < Namegduf> ++ is not an f on the grounds that it isn't a method, so
it's excluded on other grounds.
06:48 < SmoothPorcupine> The case should be possible because it is not
ambiguous.
06:49 < Namegduf> It's not a case, though.
06:49 < SmoothPorcupine> cast*
06:49 <@adg> SmoothPorcupine: a struct is not an int, and won't magically be
treated like one
06:49 < SmoothPorcupine> Yes, it is an int, isn't it?
06:49 <@adg> struct{int; string} should be able to be incremented?
06:50 < SmoothPorcupine> That's what it means to inherit.
06:50 < SmoothPorcupine> Can you increment a string?
06:50 <@adg> no
06:50 < SmoothPorcupine> Then what else would an increment on that struct
do?
06:50 <@adg> i would argue that it is a nonsense
06:50 < SmoothPorcupine> What possible alternative meaning would such an
increment have?
06:50 < Namegduf> Sounds ugly and pointless
06:51 < Namegduf> Perhaps Perl is more your sort of thing
06:51 < Namegduf> :P
06:51 < cbeck> Hey!
06:51 < SmoothPorcupine> Perhaps I address this above.
06:51 < SmoothPorcupine> It is subtle.
06:51 < SmoothPorcupine> Not an argument I can win.
06:51 <@adg> SmoothPorcupine: your contention seems to be that numeric
operations and conversions are the same as method dispatch
06:51 < SmoothPorcupine> That you jump from subtle to perl is not
unexpected.
06:51 < cbeck> You want Go to be something it's not, namely complicated
06:51 <@adg> SmoothPorcupine: and these properties should therefore be
inherited
06:53 <@adg> personally i find it a major positive that these things are
forbidden.  it makes it difficult to craft code that is hard to understand
06:53 < SmoothPorcupine> struct{int,unit}{}++ on the other hand is ambiguous
because there are two fields at the same depth that would be something ++ would
apply to.
06:54 < SmoothPorcupine> But then, if code comprehensibility is your
concern, whence comes anonymous fields?
06:54 < Namegduf> I think it's as simple as "Go's variation on inheritance
does not inherit these properties.  Discussing whether that's true inheritance or
not in your view is aside the point on whether such a feature would be a good
addition."
06:55 <@adg> SmoothPorcupine: in the course of this short discussion we have
entirely defined go's anonymous fields.  that is testament enough to their
simplicity.
06:55 < Namegduf> Just IMHO, of course.
06:55 <@adg> the behaviour is easy to understand, and its interactions with
other language features is clear
06:56 <@adg> Namegduf: i agree
06:56 < Eko> Incidentally, I have yet to find a use for anonymous fields.  I
feel certain this is because I don't understand how I would reference one, though.
(sorry to refer to an old topic)
06:57 <@adg> Eko: it's quite simple, you refer to them by the name of the
type (without the *, if it's a pointer type)
06:57 < cbeck> I've used them several times where I would use inheritance in
other langs, mostly when defining a set of structs that need to satisfy some
interface
06:58 < SmoothPorcupine> Eko, package http;type message struct{line
string;headers;body []byte}
06:58 < Eko> interesting
06:59 < Eko> the discussion in #selectors makes somewhat more sense now.
06:59 < SmoothPorcupine> (That's if you know HTTP well enough to realize
requests and responses are almost identical.)
07:00 < Eko> of course ;-).
07:00 * Eko is a glutton for text-based protocols...  http, irc, etc.
07:01 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 272 seconds]
07:02 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
07:03 < SmoothPorcupine> Apparently it wasn't apparent to whoever wrote
pkg/http.
07:03 < Eko> ouch :P
07:04 < SmoothPorcupine> It's okay, it's HTTP.  I'd be somewhat worried for
someone who got it right.
07:05 * SmoothPorcupine eyes Eko nervously
07:06 < Eko> lol.
07:06 < Eko> I used to do a lot of HTTP.  Now I stick with IRC.  It's way
more fun.
07:07 < Eko> Though I have considered adding a web-based IRC client built
into my IRC server, but that is quire a ways off.
07:11 -!- mosva [~mosva@unaffiliated/mosva] has quit [Read error: Connection reset
by peer]
07:11 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has
joined #go-nuts
07:11 -!- mosva [~mosva@unaffiliated/mosva] has joined #go-nuts
07:11 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has quit
[Read error: Connection reset by peer]
07:12 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has
joined #go-nuts
07:14 -!- illya77 [~illya77@194-124-133-95.pool.ukrtel.net] has quit [Ping
timeout: 276 seconds]
07:15 -!- lmoura_ [~lauromour@187.59.113.96] has joined #go-nuts
07:17 -!- lmoura [~lauromour@186.212.101.188] has quit [Read error: Connection
reset by peer]
07:19 < SmoothPorcupine> Truthfully, what I'd like is to be able to do is
pass a struct{...;othertype;...} variable directly as an othertype argument.
07:20 < SmoothPorcupine> But I guess interface types are superior to struct
types in terms of making convoluted functions.
07:22 -!- shvntr [~shvntr@116.26.128.145] has joined #go-nuts
07:25 < SmoothPorcupine> But if your brain does not possess the neurological
capacity to think of increments or casts as methods, resolving exactly which
struct field gets passed to a function is out of the question.
07:25 -!- Project_2501 [~Marvin@82.84.84.176] has joined #go-nuts
07:26 < Namegduf> They certainly could be methods.  They aren't.
07:26 < Namegduf> Increments aren't even an expression.
07:26 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:2cf2:e0fd:cfb3:2e53] has joined
#go-nuts
07:26 < Eko> That would be C++.
07:29 < Namegduf> "I can conceptually visualise loops in the form of
recursion, ergo they should behave like recursion and run deferred functions at
the end of each loop."
07:30 < Namegduf> Just because you can analogise something to something
doesn't mean it should behave like the second something does.
07:30 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
07:32 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
07:34 < SmoothPorcupine> On the contrary.  Recursion can be visualizes as
loops, thus recursion is disallowed in favor of loops.
07:34 < SmoothPorcupine> visualized*
07:34 < SmoothPorcupine> Okay I have a question.
07:35 < SmoothPorcupine> What about types as first class objects?
07:35 < Eko> oh no *runs away*
07:35 < SmoothPorcupine> var newstruct type = struct{...}
07:35 < cbeck> No thank you
07:35 < SmoothPorcupine> Would that be C++ or Perl?
07:36 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
07:36 < SmoothPorcupine> (Honest question.)
07:38 < SmoothPorcupine> Also, what's the difference between a statement and
an expression, why should I care, and now that you've explained it, is Go as
simple a language as you think it is?
07:39 < SmoothPorcupine> Or claim it is, or whatever.
07:40 < Namegduf> The difference is roughly that a statement is a single
thing to be executed and an expression is a thing that can be used as a value.
Expressions can be used as statements (function calls, for example) but you can't
use a statement as a value.
07:40 < Namegduf> IOW, i++ is equivalent to i += 1
07:40 < Namegduf> And you can't write j = i += 1
07:41 < Namegduf> And yes, it is.
07:41 < SmoothPorcupine> I don't get that.  How can (i += 1) not be used as
a value?
07:42 < Eko> In the same way that you can't add 42 to the statement "The sky
is blue."
07:42 < Namegduf> It simply can't be.
07:42 < SmoothPorcupine> Look, I admire the anti-bloat mindset, I really do.
07:42 < Namegduf> It's not valid syntax.
07:43 < Namegduf> It doesn't meet the grammar of the language.
07:43 < Namegduf> It obviously abstractly COULD have one in an arbitrary
language, it just doesn't in Go.
07:44 < SmoothPorcupine> That's what I'm asking.
07:44 < SmoothPorcupine> Why isn't it?
07:45 < Namegduf> Statements in general being usable as expressions would be
fairly complicated.
07:45 < Namegduf> Expressions include if statement, switch statements,
select statements, for statements, return statements, break statements, continue
statements, etc, etc.
07:45 < Namegduf> Er, statements include.
07:46 < SmoothPorcupine> Oh my.
07:46 < SmoothPorcupine> Sorry, I'm a Ruby programmer.
07:47 < Namegduf> It could be done potentially but it would impact on the
language significantly, and things like return, break, and go would be kind of
weird.
07:48 < Namegduf> You could make a lot more things expressions instead, but
I don't know what that'd require in terms of implementation, and don't know any
real benefit to code that'd come from it.
07:48 < SmoothPorcupine> return, break, continue and goto act as jumps,
disallowing the normal flow of value.
07:48 < SmoothPorcupine> go forks, so it doesn't actually alter the current
executing path.
07:49 < Namegduf> I mean, C's ability to implement complicated functions in
a single line loop using ++ repeatedly is impressive but not essentially something
desirable to emulate.
07:50 < SmoothPorcupine> It could contribute to code cleanli--Oh wait you
would call that ugly and incomprehensible.
07:50 < Namegduf> Yeah, "readabilty" is part of my definition of
cleanliness.
07:50 < SmoothPorcupine> Mine too.
07:51 -!- wrtp [~rog@92.17.67.140] has joined #go-nuts
07:51 < SmoothPorcupine> When I first started coding, in JavaScript, I
didn't use indentation.
07:51 < SmoothPorcupine> Guess which language I was forced to work in that
made me start using indentation?
07:52 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has joined #go-nuts
07:54 < SmoothPorcupine> Or maybe it was the code style guidelines that were
the reason...
07:55 < SmoothPorcupine> (Please do guess.  I promise I'm making a point.)
07:55 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has joined #go-nuts
07:55 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has left #go-nuts []
07:56 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
07:57 < Namegduf> I'm not sure.
07:58 < SmoothPorcupine> Okay I'll give you a hint.  It was an early CS
university prerequisite.
07:58 < Namegduf> Python?
07:59 < Namegduf> Given your comment IRT style guidelines, perhaps Java?
07:59 < SmoothPorcupine> Do many universities have early CS prereqiusites of
Python?  :S
07:59 < SmoothPorcupine> Yes, Java.
07:59 < Namegduf> Certainly some do.
08:01 < Namegduf> Ah, Numeric is a Ruby thing
08:01 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has joined #go-nuts
08:01 < Namegduf> I've seen people mentioning it as their name for a
hypothetical base numeric type.
08:01 < SmoothPorcupine> Anyway, from looking at what other people write,
and from inevitable comments about my coding style in any code I paste, I've
discovered the universal standard of readability.
08:03 < SmoothPorcupine> It is so universal, some formats use it to convey
information.
08:05 < SmoothPorcupine> It transcends human and computer languages alike in
its ubiquity.
08:05 < Namegduf> Except Perl.
08:05 * Eko had no idea #go-nuts was turning into Sylvia Plath or Ayn Rand.
08:05 < SmoothPorcupine> perl programmers don't use indentation?
08:05 < Namegduf> XD
08:06 < Namegduf> I'm not being particularly serious there.  :P
08:08 < SmoothPorcupine> Yeah.  Basically people call my code unredable
because I omit newlines for blocks of single expressions.
08:08 < Namegduf> I used to tend not to.
08:08 < Namegduf> gofmt does, though, so in Go I do.
08:10 * taruti would like for gofmt to not add newlines to ifs like "if err!=nil {
goto Error }"
08:10 < SmoothPorcupine> Also I don't spam whitespace.
08:11 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 260 seconds]
08:11 < SmoothPorcupine> Or maybe I just spam in different flavors...
08:11 < SmoothPorcupine> I would write that: if err != nil {goto Error}
08:12 < SmoothPorcupine> And I NEVER put spaces after commas.
08:12 -!- Eko [~eko@adsl-76-251-235-206.dsl.ipltin.sbcglobal.net] has quit [Ping
timeout: 255 seconds]
08:12 -!- piranha [~piranha@5ED42E59.cm-7-5a.dynamic.ziggo.nl] has joined #go-nuts
08:12 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
08:16 < SmoothPorcupine> Honestly whenever I hear people complaining about
"code readability," I dismiss it as basically another way to patch code without
fully reading and understanding it.
08:17 < Namegduf> taruti: I'd like that if it had a low maximum, maybe 15-20
characters, on the length of the line prior to the block, which isn't the kind of
thing gofmt does, I think.
08:18 < Namegduf> Putting long ifs on the same line as even a short
statement isn't something I like.
08:18 < taruti> Namegduf: true
08:19 < SmoothPorcupine> I'd like to see an editor that "word-wraps" code.
08:19 < taruti> gofmt makes that into if err!=nil {\n\tgoto Error\n}
08:19 -!- napsy [~luka@88.200.96.18] has joined #go-nuts
08:20 < Namegduf> Yeah.
08:22 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 255 seconds]
08:22 < SmoothPorcupine> Obviously if you apply regular word wrap it breaks
the line on any whitespace, and desecrates the holy grail of indentation by
starting the wrapped portion at column 0.
08:22 -!- dahankzter [~henrik@92-244-3-192.customers.ownit.se] has joined #go-nuts
08:22 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
08:22 < Namegduf> Any whitespace?
08:23 < Namegduf> Mine breaks the line without doing wordwrap at all, heh.
08:24 < mosva>
http://shootout.alioth.debian.org/u64/benchmark.php?test=all&lang=go&lang2=java&box=1
08:24 < Namegduf> Hmm, nice.
08:25 < Namegduf> I think they're improving.
08:25 < mosva> Shouldn't go be more faster than java?
08:25 < mosva> Since there is no VM?
08:26 < Namegduf> Not really; Go is still not very optimised and Java has
been optimised for years, and the compiler optimisations make a big difference.
08:26 < Namegduf> Also the slowest test, regex-dna, doesn't really test the
language, instead it tests the regexp library.
08:26 < Namegduf> And Go's regexp library is particularly unoptimised, it's
basically a placeholder until a faster implementation comes along.
08:26 -!- Eko [~eko@adsl-76-252-17-222.dsl.ipltin.sbcglobal.net] has joined
#go-nuts
08:27 -!- cde [~cde@unaffiliated/cde] has quit [Ping timeout: 264 seconds]
08:28 < SmoothPorcupine> See now, regexes are the kind of language
functionality I'd actually recommend against, and would actually equate to perl or
C++.
08:28 < Namegduf> Java is also actually very fast in CPU time if you write
it optimally, it's just that the language idioms (which are ignored for the
shootout in most any language) favour other concerns.
08:28 < Namegduf> Regexes are not part of Go
08:28 < Namegduf> They're part of the standard library
08:28 < SmoothPorcupine> Yes I know.
08:28 -!- cde [~cde@sogeti.pck.nerim.net] has joined #go-nuts
08:28 < Namegduf> I'm not sure what I think of in-language regexp support.
08:29 < Namegduf> Pretty, powerful, concise and clear, but inherently slow,
I think.
08:29 < SmoothPorcupine> I sure like regexes, and I sure like being able to
make them by typing //.
08:29 < Namegduf> And you can get it almost as nice using a stdlib
implementation and get a simpler language out of it.
08:30 < SmoothPorcupine> But the fact remains the file format is text.
08:33 -!- wrtp [~rog@92.17.67.140] has quit [Quit: wrtp]
08:34 -!- Eko [~eko@adsl-76-252-17-222.dsl.ipltin.sbcglobal.net] has quit [Ping
timeout: 260 seconds]
08:37 < Namegduf> Also, it looks like the median Go benchmark uses a third
of the RAM of the Java one.
08:37 < Namegduf> That's nice.
08:37 -!- boscop [~boscop@f055159175.adsl.alicedsl.de] has joined #go-nuts
08:40 -!- Guest71226 [~eko@adsl-76-252-12-180.dsl.ipltin.sbcglobal.net] has joined
#go-nuts
08:40 -!- ExtraSpice [~XtraSpice@88.118.33.48] has joined #go-nuts
08:40 -!- tvw [~tv@212.79.9.150] has joined #go-nuts
08:44 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has quit [Quit:
DarthShrine]
08:45 -!- cafesofi_ [~cafesofie@rnwifi-164-107-92-115.resnet.ohio-state.edu] has
quit [Remote host closed the connection]
08:47 < mosva> Namegduf, yeah
08:47 < mosva> Which is the best IDE for go?
08:48 < jumzi> acme
08:48 -!- cafesofie [~cafesofie@rnwifi-164-107-92-115.resnet.ohio-state.edu] has
joined #go-nuts
08:48 < Namegduf> Vim + gdb
08:48 < Namegduf> :P
08:49 < Namegduf> Seriously, preferences vary a lot.
08:49 < jumzi> Hmm...  you can't have programmed so much so start with
something easy
08:49 < jumzi> Then if you feel you actually need eclipse bloat move to it
08:50 < jumzi> ( or another ide of some sort )
08:50 -!- Scorchin [~Scorchin@host86-161-167-138.range86-161.btcentralplus.com]
has joined #go-nuts
08:54 < SmoothPorcupine> I just use whatever text editor is installed by
default.
08:54 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 255 seconds]
08:55 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
08:55 -!- nettok [~quassel@200.119.155.180] has quit [Ping timeout: 240 seconds]
08:55 < SmoothPorcupine> If that's not good enough, you probably want a
different OS.
08:56 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
09:01 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 260 seconds]
09:02 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
09:05 < Eko> I use a giant termanal with screen, on one pane of which is a
vim instance with (typically) 4-5 sub-windows with various files in them.
09:05 < Eko> the other panes are for running it, editing config files, doing
version control, running my automated test scripts, etc.
09:07 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
09:08 -!- mosva [~mosva@unaffiliated/mosva] has quit [Quit: mosva]
09:11 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 255 seconds]
09:11 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
09:24 -!- mosva [~mosva@unaffiliated/mosva] has joined #go-nuts
09:24 < mosva> Is there a PostgreSQL api for Go
09:27 < bortzmeyer> mosva: https://github.com/lxn/go-pgsql (native Go, there
is also an old and unmaintained binding to the C lib)
09:28 < mosva> Thanks bortzmeyer
09:30 -!- SmoothPorcupine [~smooth@207.224.112.146] has left #go-nuts ["Is a
function a statement or an expression?"]
09:33 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has quit [Ping timeout:
600 seconds]
09:37 -!- DarthShrine [~angus@58-6-93-222.dyn.iinet.net.au] has joined #go-nuts
09:37 -!- DarthShrine [~angus@58-6-93-222.dyn.iinet.net.au] has quit [Changing
host]
09:37 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has joined
#go-nuts
09:43 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 272 seconds]
09:43 <@adg> SmoothPorcupine should question why he/she would bother making
these facile arguments.
09:43 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
09:47 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has quit [Quit:
DarthShrine]
09:50 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 246 seconds]
09:50 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
10:04 -!- photron_ [~photron@port-92-201-35-99.dynamic.qsc.de] has joined #go-nuts
10:06 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has quit
[Quit: derferman]
10:12 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
10:12 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
10:17 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has joined
#go-nuts
10:21 < KBme> taruti?  :P
10:22 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 260 seconds]
10:22 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
10:32 -!- Eko [~eko@adsl-76-252-12-180.dsl.ipltin.sbcglobal.net] has quit [Quit:
Leaving]
10:37 -!- Qvist_ [~erik@c-66cde455.05-294-6c6b701.cust.bredbandsbolaget.se] has
joined #go-nuts
10:40 -!- xash [~xash@p548E4041.dip.t-dialin.net] has joined #go-nuts
10:41 -!- artefon [~thiago@189.59.130.117.dynamic.adsl.gvt.net.br] has joined
#go-nuts
10:49 < fzzbt> mosva: If you use gedit, I've made a plugin for it which is
sort of an small IDE.  It's still somewhat beta though:
https://bitbucket.org/fuzzybyte/go-gedit-plugin/src
10:49 < fzzbt> other "IDE" is eclipse's goclipse plugin, but it was very
buggy at least for me when I tried it.
10:50 < aiju> IDE features are languages smells
10:53 -!- femtoo [~femto@95-89-196-241-dynip.superkabel.de] has joined #go-nuts
10:55 -!- djcapelis [~djc@blender/coder/DJCapelis] has quit [Ping timeout: 240
seconds]
10:56 -!- xash_ [~xash@p548E4041.dip.t-dialin.net] has joined #go-nuts
10:56 -!- xash [~xash@p548E4041.dip.t-dialin.net] has quit [Read error: Connection
reset by peer]
10:56 -!- cw [~anticw@parsec.stupidest.org] has quit [Ping timeout: 276 seconds]
11:02 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 250 seconds]
11:03 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
11:04 -!- cw [~anticw@parsec.stupidest.org] has joined #go-nuts
11:04 -!- djcapelis [~djc@blender/coder/DJCapelis] has joined #go-nuts
11:10 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Read error: Operation timed out]
11:11 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
11:12 < taruti> KBme: yes?
11:14 -!- araujo [~araujo@190.38.51.34] has joined #go-nuts
11:14 -!- araujo [~araujo@190.38.51.34] has quit [Changing host]
11:14 -!- araujo [~araujo@gentoo/developer/araujo] has joined #go-nuts
11:16 -!- ios_ [~ios@180.191.128.82] has quit [Quit: Leaving]
11:20 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Read error: Operation timed out]
11:20 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
11:26 -!- niemeyer_ [~niemeyer@201-40-141-234.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
11:27 -!- virtualsue [~chatzilla@nat/cisco/x-vtfyobfkclpkcjbh] has joined #go-nuts
11:28 -!- gr0gmint [~quassel@87.60.23.38] has joined #go-nuts
11:29 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection]
11:30 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
11:30 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
11:30 -!- zozoR2 [~zozoR@56347ac9.rev.stofanet.dk] has joined #go-nuts
11:33 -!- tvw [~tv@212.79.9.150] has joined #go-nuts
11:35 -!- mosva [~mosva@unaffiliated/mosva] has quit [Quit: mosva]
11:41 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 260 seconds]
11:41 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
11:42 -!- cde [~cde@sogeti.pck.nerim.net] has quit [Changing host]
11:42 -!- cde [~cde@unaffiliated/cde] has joined #go-nuts
11:43 -!- zozoR2 [~zozoR@56347ac9.rev.stofanet.dk] has quit [Quit: Morten.  Desu~]
11:45 -!- outworlder [~stephen@189.90.170.251] has joined #go-nuts
12:02 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 246 seconds]
12:02 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
12:06 -!- daxt [~daxt@112.135.75.141] has joined #go-nuts
12:15 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-175-104.clienti.tiscali.it] has
joined #go-nuts
12:17 -!- ljloverrj [~ljloverrj@112.198.79.30] has joined #go-nuts
12:17 < ljloverrj> hi everyone
12:17 < ljloverrj> may i know the topic here?
12:18 < aiju> the go programming language
12:18 < aiju> or what do you mean?
12:18 -!- ljloverrj [~ljloverrj@112.198.79.30] has left #go-nuts []
12:18 -!- Project_2501 [~Marvin@82.84.84.176] has quit [Ping timeout: 240 seconds]
12:19 -!- tensorpudding [~user@99.23.127.179] has quit [Remote host closed the
connection]
12:22 -!- jartur [~user@109.110.41.179] has joined #go-nuts
12:22 -!- dahankzter [~henrik@92-244-3-192.customers.ownit.se] has quit [Remote
host closed the connection]
12:23 < jartur> Hello, I wonder if it makes things difficult that
implemented interfaces are not specified with the type?
12:24 < jartur> Like I was looking at how to get an io.Reader having
net.Conn only to realize that it is already an io.Reader
12:24 < jartur> And that aes.Cipher actually implements block.Cipher so it
is suitable to use in that place.
12:24 < jartur> I had to read code to understand that.
12:25 < jartur> And also a practical question, if I have 4 bytes in []byte
how can I turn them into a uint32 with a specific endiannes?
12:26 < jartur> And word go is absolutely ungooglable
12:30 -!- cafesofie [~cafesofie@rnwifi-164-107-92-115.resnet.ohio-state.edu] has
quit [Remote host closed the connection]
12:36 -!- xash_ [~xash@p548E4041.dip.t-dialin.net] has quit [Ping timeout: 260
seconds]
12:44 < mpl> jartur: to answer your first question, yes I find myself that
it's a problem.
12:45 < mpl> or rather the other way around.  sometimes I want to know how a
good reader would do this or that, and I find it unconvenient to hunt for the
various readers in the packages at almost random.
12:46 < mpl> jartur: and about your last question, just look for golang
instead of go.
12:48 < jartur> And what about my middle question?  I am really stuck.  I
was looking for answer in json package code but it's too difficult for me.
12:52 < mpl> well I dunno if there's something convenient, but you can
always do something like var uint32 bar = uint32(foo[0]) | uintt32(foo[1])
<< 8 | etc...  or did I misunderstand your question?
12:54 < jartur> I find it very strange, really.
12:54 < mpl> jartur: and the encoding/binary package may be what you need
actually
12:55 < jartur> I need to read binary protocol from network
12:55 < mpl> http://golang.org/pkg/encoding/binary/
12:55 < taruti> encoding/binary is dog-slow :(
12:55 < jartur> taruti: how comes?
12:56 < taruti> look in the ml archives, there are a few threads about that
12:56 < jartur> I mean how can you make translation of 4 bytes to an int
slow?
12:57 < mpl> there are always ways to make slow code ;)
12:57 < jartur> Yes, but not in the basic functionality of a
server-writing-oriented programming language?
12:57 < jartur> Reading and writing binary data should be definitely a
priority in such a project
12:58 < jartur> Or Google is done with binary protocols =)
12:58 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
12:58 < aiju> 13:27 < jartur> And word go is absolutely ungooglable
12:58 < aiju> try golang
12:59 < jartur> aiju: thanks, I do just that.  Though not everyone will use
that word in their blog-posts, etc
12:59 < aiju> i don't like the name either
12:59 < jartur> I don't like to go back to C
12:59 < jartur> That's what I don't like
13:00 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 246 seconds]
13:00 -!- arun [~arun@unaffiliated/sindian] has quit [Ping timeout: 260 seconds]
13:01 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
13:02 < jartur> Well, seeing that encoding/binary has one just couple of
functions makes it understandable how it may actually be slow
13:02 < mpl> jartur: setting aside that go is not C, I doubt your boss is
forcing you to use go, isn't he?
13:02 < jartur> No, of course.  But I see nothing else.
13:02 < mpl> so, no problem then, just don't use it.  :)
13:03 < jartur> Mmm, but I don't want to go back to C.
13:03 < jartur> I want to leave C and find something else
13:03 < mpl> oh.  sorry, I totally misunderstood you.
13:03 < jartur> Ah, I see =)
13:03 < nsf> Go is nice, just throw out few stereotypes from your head
13:03 < nsf> like "everything should be as fast as possible"
13:03 < mpl> I thought you said you didn't like that go gave you the feeling
of going back to C.
13:04 < nsf> (typical C thinking)
13:04 < jartur> mpl: no, no.
13:04 < mpl> jartur: yep, got it now.
13:04 < jartur> nsf: Well, sometimes it would better be
13:04 < aiju> 14:04 < nsf> (typical C thinking)
13:04 < aiju> i consider that an offence :P
13:04 < nsf> :D
13:04 < aiju> also, javascript programmers are much more like that
13:04 < aiju> they tell to use while(n--) instead of for(i=0;i<n;i++)
because it's "faster"
13:04 < nsf> well, I mean if you're writing in C, the reason number 1 for
doing that is performance
13:05 < nsf> that what I meant
13:05 < nsf> that's*
13:05 < aiju> well, i don't
13:05 < jartur> nsf: OTOH if i wouldn;t care about performance I'd use Ruby
or, better, Clojure
13:05 < mpl> nsf: or force of habbit :)
13:05 < nsf> yes, but the problem with ruby is that it's just too slow
13:05 < nsf> for anything :D
13:05 < aiju> paraphrasing al viro, Ruby and Go are culturally incompatible
13:05 < nsf> Go is much nicer than C, and the price here isn't that big
13:06 < jartur> I'm not expecting Go to be as fast as C
13:06 < aiju> Go is almost as fast as C
13:06 < nsf> it is in a lot of cases
13:06 < jartur> But I do expect it to be faster than, say, Java
13:06 < aiju> save for a few libraries which haven't been thoroughly
optimized yet
13:06 < jartur> And Java IS fast
13:06 < nsf> it certainly can be faster than Java
13:07 < aiju> jartur: i really don't think encoding/binary could be the
bottleneck
13:07 < nsf> and in shootout game it is (on x86_64)
13:07 < aiju> after all this is *I/O*
13:07 -!- wrtp [~rog@92.17.67.140] has joined #go-nuts
13:07 < nsf>
http://shootout.alioth.debian.org/u64q/which-programming-languages-are-fastest.php
13:07 < aiju> 14:07 < jartur> And Java IS fast
13:07 < aiju> absolutely not in my experience
13:07 < nsf> damn, 2.03 for java and 2.05 for Go
13:07 < nsf> it was faster than Java :D
13:07 < aiju> i don't trust language benchmarks
13:08 < nsf> no one do, but it's fun
13:08 < nsf> and a good topic for flame war
13:08 < aiju> haha
13:08 < jartur> aiju: well, I also think so.  But when you have 10K
concurrent clients you start to think about every bit of performance.  Just in
case =)
13:08 < aiju> the google closure compiler, written in Java, is _fucking
slow_
13:09 < aiju> Mathematica, written in Java, is _even more fucking slow_
13:09 < jartur> =))
13:09 < aiju> OO.org, also Java, is _even fucking slower_
13:09 < aiju> eh being inconsistent
13:09 < jartur> Mathematica is very slow, but Matlab 2010 is incredibly slow
13:09 < jartur> And it's written in Matlab 2010
13:09 < nsf> everything is slow
13:09 < nsf> what a crappy world
13:09 < jartur> Well, not everything
13:09 < aiju> nsf: kencc and 8g (in C) are blazing fast
13:09 < nsf> :D
13:09 < aiju> so is the limbo compiler
13:10 < aiju> fuck it, even K programs are faster than Mathematica
13:10 < jartur> I'm writing this in ERC in Emacs in Ubuntu in VirtualBox in
Windows 7
13:10 < nsf> we're in good hands then
13:10 < jartur> And it's pretty fast
13:10 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Read error: Operation timed out]
13:10 < aiju> going from 8g to the closure compiler is like going from the
Blue Gene to a PDP-7
13:10 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
13:11 < jartur> What's this closure you are constantly talking about?
13:11 < aiju> jartur: javascript optimizer
13:11 < aiju> i mainly use it for checking my code
13:12 < jartur> Stupid name
13:12 < aiju> http://code.google.com/p/closure-compiler/
13:12 < aiju> yeah
13:12 < jartur> Clojure at least passes as a smarty wordplay
13:14 < aiju> haha
13:14 < aiju> javascript closures are an abomination
13:14 -!- jhawk28 [~jhawk28@user-387c58d.cable.mindspring.com] has joined #go-nuts
13:15 < jartur> No, no, friend.  C++0x's are
13:15 < aiju> haha
13:15 < aiju> C++ is an insult
13:15 < taruti> please don't swear
13:15 -!- tvw [~tv@212.79.9.150] has quit [Ping timeout: 240 seconds]
13:16 < aiju> insult
13:16 < aiju> what's so sweary about that?  :P
13:16 < taruti> :P
13:16 < jartur> Maybe he doesn't like articles?
13:16 < jartur> AN
13:16 < taruti> C++ in itself :)
13:16 < aiju> haha
13:16 < jartur> A-ha!
13:16 < jartur> Swearer!
13:16 < jartur> Watch your mouth
13:17 < aiju> you-know-which-language
13:17 < taruti> :D
13:17 < taruti> anyhow, has anyone tinkered with STM in Go?
13:18 -!- femtoo [~femto@95-89-196-241-dynip.superkabel.de] has quit [Ping
timeout: 260 seconds]
13:18 < jartur> Not me, definitely.  I can't write anything yet.  =)
13:19 < nsf> STM?  sw trans memory?
13:19 -!- arun [~arun@2001:610:110:4e2:280:5aff:fe69:e130] has joined #go-nuts
13:19 -!- arun [~arun@2001:610:110:4e2:280:5aff:fe69:e130] has quit [Changing
host]
13:19 -!- arun [~arun@unaffiliated/sindian] has joined #go-nuts
13:20 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
13:20 < nsf> btw, go uses CAS inside the runtime, imho it (CAS operation)
should be exposed by runtime package as well
13:21 < nsf> or in sync package
13:22 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
13:23 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
13:25 -!- arun [~arun@unaffiliated/sindian] has quit [Ping timeout: 260 seconds]
13:30 -!- arun [~arun@unaffiliated/sindian] has joined #go-nuts
13:34 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 272 seconds]
13:34 -!- daxt_ [~daxt@112.135.75.50] has joined #go-nuts
13:34 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
13:37 -!- daxt [~daxt@112.135.75.141] has quit [Ping timeout: 240 seconds]
13:41 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 255 seconds]
13:41 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
13:42 -!- skejoe [~skejoe@188.114.142.162] has joined #go-nuts
13:48 -!- femtoo [~femto@95-89-196-241-dynip.superkabel.de] has joined #go-nuts
13:49 -!- jhawk28 [~jhawk28@user-387c58d.cable.mindspring.com] has quit [Ping
timeout: 240 seconds]
13:52 -!- artefon [~thiago@189.59.130.117.dynamic.adsl.gvt.net.br] has quit [Quit:
bye]
13:52 -!- piranha [~piranha@5ED42E59.cm-7-5a.dynamic.ziggo.nl] has quit [Remote
host closed the connection]
14:00 < taruti> nsf: yes
14:01 < taruti> trying to write a concurrent tree implementation, and was
thinking of sane alternatives
14:01 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 276 seconds]
14:01 < taruti> of course I could just use a single server go-routine
14:01 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
14:06 -!- _00 [~Unknown@2001:470:1:41::403e:ad66] has joined #go-nuts
14:06 -!- _00 [~Unknown@2001:470:1:41::403e:ad66] has left #go-nuts []
14:11 -!- tvw [~tv@212.79.9.150] has joined #go-nuts
14:15 -!- Qvist_ [~erik@c-66cde455.05-294-6c6b701.cust.bredbandsbolaget.se] has
quit [Quit: leaving]
14:18 -!- Qvist_ [~erik@c-66cde455.05-294-6c6b701.cust.bredbandsbolaget.se] has
joined #go-nuts
14:21 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 255 seconds]
14:21 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
14:23 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
14:29 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Quit:
Leaving.]
14:31 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 272 seconds]
14:32 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
14:35 -!- Venom_X [~pjacobs@75.92.43.21] has joined #go-nuts
14:43 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has quit [Remote
host closed the connection]
14:43 -!- Scorchin [~Scorchin@host86-161-167-138.range86-161.btcentralplus.com]
has quit [Quit: Scorchin]
14:45 -!- iant [~iant@67.218.105.75] has joined #go-nuts
14:45 -!- mode/#go-nuts [+v iant] by ChanServ
14:45 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 240
seconds]
14:49 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has joined
#go-nuts
14:51 < jartur> How to take a string literal and convert it into a sequence
of bytes in some encoding (ascii or utf-8)?
14:51 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
14:51 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
14:52 -!- daxt_ [~daxt@112.135.75.50] has quit [Ping timeout: 246 seconds]
14:53 < jartur> Okay, []byte(s) seems to work
14:54 -!- daxt [~daxt@112.135.76.200] has joined #go-nuts
14:59 -!- jesmon [~user@static-71-244-114-122.albyny.fios.verizon.net] has joined
#go-nuts
14:59 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-158-8.clienti.tiscali.it] has
joined #go-nuts
15:01 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts
15:01 -!- daxt [~daxt@112.135.76.200] has quit [Remote host closed the connection]
15:03 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-175-104.clienti.tiscali.it] has
quit [Ping timeout: 276 seconds]
15:03 -!- irjudson [~Adium@153.90.102.155] has joined #go-nuts
15:11 -!- illya77 [~illya77@194-124-133-95.pool.ukrtel.net] has joined #go-nuts
15:12 < skelterjohn> taruti: by concurrent tree, do you mean a threadsafe
tree?
15:13 < taruti> skelterjohn: yes + disk serialization
15:13 < skelterjohn> what sort of tree?
15:14 -!- ExtraSpice [~XtraSpice@88.118.33.48] has quit [Quit: Leaving]
15:15 < taruti> functional B+-tree
15:16 < skelterjohn> never heard of that, actually
15:16 < taruti> basically B+-tree but with all history preserved
15:17 < skelterjohn> never heard of a B+ tree :)
15:17 < skelterjohn> reading about it now
15:18 < skelterjohn> interesting
15:18 < skelterjohn> i have no suggestions.
15:18 < skelterjohn> :)
15:23 -!- kanru [~kanru@118-160-160-172.dynamic.hinet.net] has joined #go-nuts
15:23 -!- Scorchin [~Scorchin@host86-161-167-138.range86-161.btcentralplus.com]
has joined #go-nuts
15:25 -!- cane9 [~john@unaffiliated/johnnybuoy] has joined #go-nuts
15:25 < cane9> hai
15:26 < cane9> anyone know why runtime.MemStats.NextGC is 0?
15:27 <+iant> it always starts as 0 if that is what you mean
15:28 <+iant> it will normally become non-zero after the first time the
garbage collector runs
15:30 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
15:31 < cane9> *err that's strange
15:31 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
15:31 < cane9> my app has been up for hours and it's still 0
15:31 < zozoR> the gc sucks :D
15:32 -!- Kashia [~Kashia@port-92-200-5-186.dynamic.qsc.de] has quit [Quit: This
computer has gone to sleep]
15:32 <+iant> to see the GC in action set MemStats.DebugGC
15:33 < cane9> iant, ah, if that's not set NextGC will not display anything
useful?
15:33 <+iant> no
15:33 < cane9> ok
15:33 <+iant> NextGC should still be set
15:33 < cane9> thanks
15:33 < cane9> er, it is not
15:33 <+iant> I'm just suggesting that as a way to find out what is
happening
15:34 <+iant> NextGC will also be zero if your program doesn't do any heap
allocation
15:34 <+iant> though that is unlikely for a Go program
15:34 < cane9> do /msg go-irc-ch memusage
15:35 < cane9> it just displays 0
15:35 < cane9> ah well, it diesplays it a bit rounded up..
15:35 < cane9> displays*
15:36 <+iant> what is the value of the HeapAlloc field
15:36 <+iant> ?
15:37 < cane9> what do you mean?  this is the code:
https://github.com/soul9/go-irc-chans/raw/master/examples/test.go
15:37 < cane9> Currently allocated (heap): 2.06Mb
15:38 < cane9> that is heapalloc/1024/1024
15:38 <+iant> you seem to be treating NextGC as though it were a time
15:38 <+iant> it is not
15:39 < cane9> oh, it isn't in ns?
15:39 <+iant> when you say it is zero, you mean that NextGC/1000/1000/1000
is zero
15:39 <+iant> no, it's not a time at all
15:39 < cane9> yes, yes, way rounded up
15:39 < cane9> ok
15:39 < cane9> so how should it be interpreted?
15:39 < cane9> it's an int64 iirc
15:39 <+iant> when you ask questions, please try to say exactly what you
mean, e.g., not "why is NextGC zero" but "why is NextGC/1000/1000/1000 zero"
15:39 <+iant> that will make it easier for us to understand what you are
asking
15:40 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Read error: Operation timed out]
15:40 -!- irjudson [~Adium@153.90.102.155] has quit [Quit: Leaving.]
15:40 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
15:40 <+iant> anyhow, the NextGC field is used to trigger a GC run when the
HeapAlloc field gets larger than it
15:40 <+iant> that is, NextGC is a measure of the level of heap allocation
which should be permitted before running the garbage collector
15:41 < cane9> thanks
15:41 < cane9> and sorry for the confusion, you're right
15:42 -!- WonTu [~WonTu@p57B5425B.dip.t-dialin.net] has joined #go-nuts
15:42 -!- WonTu [~WonTu@p57B5425B.dip.t-dialin.net] has left #go-nuts []
15:46 < skelterjohn> writing X/1000/1000/1000 is very confusing to me
15:46 < skelterjohn> i mean, i understand that it is perfectly clear to the
compiler
15:47 < cane9> for me it's simpler than 1000000000
15:47 < cane9> i get lost with lots of 0s
15:47 < skelterjohn> X/(1000*1000*1000)
15:47 < cane9> ah well yes
15:47 < skelterjohn> your code does what you want, don't get me wrong
15:47 < cane9> that's actually what I usually do, this was just going fast
:)
15:48 < cane9> skelterjohn, actually, as you see from the previous
conversation, it doesn't at all :)
15:48 < skelterjohn> though actually - i bet writing X/(1000*1000*1000) will
cause the compiler to multiply the 1000s together before making the bytecode
15:48 < skelterjohn> while writing X/1000/1000/1000 will cause teh compiler
to have code that will divide by 1000 three times
15:48 < skelterjohn> since it is ((X/1000)/1000)/1000
15:48 < cbeck> Why not just X/10e9?
15:49 < skelterjohn> 1e9?
15:49 < cane9> yeah
15:49 < cbeck> Err, yeah
15:49 < cane9> that's what i would use, if i had known of it
15:49 * cbeck can't brain this early
15:49 < cane9> i'll probably change it in my code at some point
15:49 < taruti> is there an idiom for a channel containing tuples?
15:50 <+iant> you pretty much have to use a struct
15:50 < skelterjohn> a chan of structs?
15:50 < skelterjohn> chan struct { x, y, z int }
15:50 < skelterjohn> theChan <- struct{x, y, z int}{1,2,3}
15:50 < cane9> you can do that?!
15:51 < skelterjohn> i don't know
15:51 < cane9> use struct like that
15:51 < skelterjohn> i think so?
15:51 <+iant> should work
15:51 < cane9> wow, i was wondering..
15:51 <+iant> easier to give the struct a name, though
15:51 < skelterjohn> yeah
15:55 < mpl> be careful not to clog the chans by stuffing too big a struct
in them.
15:59 < taruti> yes
15:59 < skelterjohn> yeah - convention is to pass a pointer
16:00 -!- sauerbraten [~sauerbrat@p508CE31E.dip.t-dialin.net] has joined #go-nuts
16:00 < cane9> but then be careful to make a copy when you want to modify
it..
16:02 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
16:02 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
16:02 -!- iant [~iant@67.218.105.75] has quit [Quit: Leaving.]
16:08 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has quit [Read error:
Operation timed out]
16:18 -!- daxt [~daxt@112.135.76.200] has joined #go-nuts
16:19 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has joined #go-nuts
16:23 -!- shvntr [~shvntr@116.26.128.145] has quit [Read error: Operation timed
out]
16:29 < exch> 'theChan <- struct{x, y, z int}{1,2,3}' Not sure if this is
the most efficient way of doing it.  This does a new allocation for every channel
push you do.
16:30 < exch> If it is at all possible to reuse the same struct instance, I
would definitely try that first
16:33 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 250 seconds]
16:33 -!- ExtraSpice [~XtraSpice@88.118.33.48] has joined #go-nuts
16:33 < wrtp> exch: no it doesn't (do an allocation each time)
16:34 < exch> why wouldn't it?
16:34 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection]
16:34 < wrtp> because creating a value type doesn't do an allocation
16:34 < exch> It magically appears somewhere?
16:35 < wrtp> just like ints or floats, yeah
16:35 < exch> hmm
16:35 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
16:35 < aiju> exch: it's in the rodata segment i suppose
16:35 < wrtp> nope
16:35 < aiju> or even text?
16:35 < wrtp> it's created on the fly in registers or on the stack as
appropriate
16:35 < aiju> oic
16:36 < wrtp> i suppose that the initialisation code might read from r/o
memory
16:36 -!- gr0gmint [~quassel@87.60.23.38] has quit [Remote host closed the
connection]
16:36 < wrtp> but that's just an implementation detail
16:36 < wrtp> a value type like the above is just like a slice value
16:37 < wrtp> except that a slice has a member that points elsewhere
16:37 < wrtp> but the same thing applies - it's a value type that is fully
copied each time it's assigned
16:48 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 246 seconds]
16:55 -!- teejae [~teejae@softbank219185095092.bbtec.net] has joined #go-nuts
16:56 < teejae> hey, anyone here?
16:57 < cbeck> Nope.
16:58 < teejae> writing my first larger non-hello world go program, and
trying to figure out method pointers
16:58 < teejae> anyone here have any experience w/ them?
16:59 < wrtp> what do you mean by method pointers?
17:00 -!- enherit [~enherit@75.92.111.122] has joined #go-nuts
17:00 < teejae> attempting to keep a list of fns in a map[string]func
17:01 < teejae> so i can call them based on some string
17:01 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
17:01 < teejae> but they funcs are actually methods on an object
17:02 < teejae> func (f *Foo) someFunc1, someFunc2, ...
17:02 < teejae> map["someFunc1"] = someFunc1
17:02 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
17:03 < teejae> so later, i can call map["someFunc1"]()
17:03 < teejae> is that a bad idiom in go?
17:04 < teejae> do i need to make closures of functions that convert methods
into functions?
17:04 < cane9> you'll need the variable of that type afaik to call that func
17:04 < cane9> maybe you can do map["someFunc1"] = f.someFunc1
17:04 < cane9> i dunno
17:04 < teejae> i tried that
17:05 < teejae> compiler complains that it's "not an expression, must be
called"
17:06 < teejae> so i guess i could do
17:06 < teejae> map["someFunc1"] = func(args) { f.someFunc1 (args)}
17:06 < teejae> seems somewhat roundabout
17:08 < cane9> well, are you sure you have your types right?
17:09 < cane9> looks like your types are kind of roundabout :P
17:09 < teejae> i'm writing a dispatcher
17:10 < teejae> for rpc's for the Thrift protocol
17:10 < cane9> yes
17:10 < cane9> why do you need the function to be a method?
17:11 < teejae> you mean as opposed to calling the methods directly?
17:12 < cane9> or maybe you could just do map[string] Type, and call
map["foo"].Func1 ?
17:12 < cane9> no, as opposed to making the function a non-method function
17:12 < cane9> func foo(bar) instead of func (bar) foo(fubar)
17:13 < teejae> the dispatcher is an object which is calling various other
methods on this dispatcher
17:14 < teejae> since this will be code gen'd, i guess i could have a giant
switch
17:15 < teejae> ex: dispatcher.do("someFunc1") -> dispatcher.someFunc1
17:15 < teejae> so want a map["someFunc1"] = someFunc1
17:16 < teejae> it at least smelled more elegant to me
17:17 -!- kanru [~kanru@118-160-160-172.dynamic.hinet.net] has quit [Read error:
Operation timed out]
17:17 < cane9> i'm pretty sure there is a way to do this sort of think, but
i'm not sure how.
17:18 < cane9> instead of making the func1 be Type1.Func1, can you do
func1(Type1)?
17:19 < teejae> i could, but i would like it to be part of Type1's struct,
since it really does have internal state
17:19 -!- iant [~iant@nat/google/x-rpukwkaqnmagtirr] has joined #go-nuts
17:19 -!- mode/#go-nuts [+v iant] by ChanServ
17:22 -!- skejoe [~skejoe@188.114.142.162] has quit [Quit: Lost terminal]
17:23 < wrtp> teejae: you need to make a closure
17:23 < teejae> then again, i'm new to Go, so maybe i just haven't learned
it's idioms well
17:23 < teejae> wrtp: ok, closures are the only way then?  got it
17:23 < wrtp> e.g.  map["someFunc1"] = func() {f.someFunc1()}
17:24 < wrtp> yeah.  there are method expressions, but those get the static
method, not bound to the receiver value.
17:24 -!- binarypie [~binarypie@adsl-99-37-224-209.dsl.pltn13.sbcglobal.net] has
joined #go-nuts
17:25 < teejae> wrtp: yea, that was going to be my last resort
17:25 < teejae> since it is a dispatcher, and calling dispatcher methods
17:26 < wrtp> there's never any particular need to use a method expression -
you can always use a closure.
17:26 < teejae> is it probably faster to do a switch (string), or
map[string]?
17:26 < wrtp> but it may be more efficient.
17:26 < wrtp> switch
17:26 < wrtp> almost certainly
17:26 < wrtp> it probably does a binary chop under the hood, but i haven't
checked
17:27 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
17:28 < teejae> wrtp: no idea what a binary chop is, so call me a novice :)
17:28 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has quit [Quit:
Leaving.]
17:30 < teejae> wrtp: oh, binary chop = binary search?
17:31 < wrtp> yeah
17:31 < wrtp> same difference
17:31 < teejae> wrtp: but switch is an ordered if/else
17:31 < teejae> so it can't do binary right?
17:32 <+iant> it can if the cases are constants
17:33 < teejae> it will be known strings at compile time
17:33 < wrtp> and in fact the compiler will complain if you give it two of
the same constant
17:34 < wrtp> which is arguably against spec
17:34 < teejae> wrtp: sure, but it may be...
17:34 < teejae> "zfunc", "bfunc", "nfunc"
17:34 <+iant> interesting point, it should probably just drop the second
occurrence
17:34 < wrtp> it doesn't complain if the constants are boolean though :-)
17:35 < wrtp> it's actually very useful that it gives the error
17:35 < wrtp> because it's a common mistake to duplicate cases erroneously.
17:35 < teejae> so it would build an internal string map -> ints
17:35 < wrtp> i think it should be added to the spec
17:35 < wrtp> teejae: yes.  there are quite a few ways to code it.
17:36 < teejae> wrtp: ok, haven't made that sophisticated of a compiler
before, so definitely haven't thought it through
17:36 < teejae> and since there's no fall-thru in go, guess that
helps...since there's no order
17:36 < aiju> teejae: there is
17:36 < aiju> fallthrough
17:36 < aiju> ehm fallthru
17:37 < anticw> iant: wrt to gccgo ...  should i expect that s:= "foobar" ;
s2 := s[3:] would be done optimally at compile time?
17:37 < teejae> aiju: so you mean case 1: doStuff1, case2: doStuff2 ->
switch(1) is doStuff1, doStuff2?
17:37 < aiju> teejae: no
17:38 < aiju> case 1: doStuff1; fallthru
17:38 < mpl> no breaks needed in go by default is both a blessing and a
curse.  a curse because when you come back to other languages you fill your code
with forgotten breaks bugs which are not that easy to track.
17:38 < teejae> aiju: oh, didn't realize there was a fallthrough keyword
17:38 < aiju> better look up the spelling, i'm too tired :P
17:38 < wrtp> anticw: if by optimally you mean that it's just a pointer
assignment, then yes (almost)
17:38 < teejae> aiju: yea, just looked up
17:38 <+iant> anticw: that would be nice, but I suspect it is not optimal
today
17:39 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
17:39 < wrtp> oh i see
17:39 < anticw> iant: generically is guess s2 = "bar" would also detect it's
a substring of something else immutable and merge, though it's not clear how much
ovreall that would gain vs the effotr to make it work
17:40 < wrtp> anticw: depends whether s is used elsewhere...
17:41 < teejae> anticw: i presume that string tests would just be memcmp's?
17:41 < anticw> teejae: you mean inside the compiler?
17:41 < teejae> anticw: right
17:41 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
17:41 < anticw> (or linker if merging is done there)
17:42 < teejae> at least for switch statement testing of strings
17:42 < anticw> teejae: something like that, it's more an implementation
detail ...
17:42 < anticw> i also wonder if we can't do some of this to get the
reflection size down, it's extremely compressible
17:47 < teejae> anticw: is reflection really expensive in generated code at
the moment?
17:47 < anticw> no
17:47 < anticw> but i deploy static binaries in production to make
deployments easier
17:47 < anticw> and those get large
17:48 < aiju> anticw: wow, finally someone who noticed this
17:48 < aiju> most people just ship all the libraries :<
17:48 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Read error: Operation timed out]
17:49 < teejae> so you guys are using go in production?
17:49 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
17:49 < anticw> yes
17:49 < aiju> google does
17:49 < teejae> yea, that i know.  i'm there
17:49 < anticw> quite a few people are at this stage
17:49 * aiju has written a gameboy emulator :P
17:50 < teejae> just curious what other places are using it for prod
17:50 < aiju> http://phicode.de/git/?p=gb.git;a=summary
17:50 < cane9> aiju, go is *one* language :P
17:51 -!- xash [~xash@d142039.adsl.hansenet.de] has joined #go-nuts
17:51 < cde> anticw: for which purpose are you using Go?
17:52 < teejae> aiju: how'd you make graphics?
17:52 < aiju> SDL
17:52 < aiju> http://phicode.de/git/?p=gb.git;a=blob_plain;f=sdl.go;hb=HEAD
17:53 < teejae> btw, another stupid question
17:53 < teejae> do i always need a return at the end of a function?
17:53 < aiju> no
17:53 < aiju> only if your function returns something …
17:53 < teejae> func a b { if() {return stuff} else {return stuff} }
17:53 < teejae> keeps complaining
17:54 < aiju> the else is superfluous
17:54 < teejae> about not having a return
17:54 < anticw> cde: lots of things, from object replicators to the other
day an nvram bios setting tool (hack really)
17:54 < cane9> but for select there is the same thing
17:54 < aiju> teejae: if it really is unavoidable, i just do a panic +
return stupid v alue
17:55 < aiju> teejae:
http://phicode.de/git/?p=gb.git;a=blob_plain;f=disasm.go;hb=HEAD see Disasm there
:P
17:55 < cane9> select {case <-foo: return foo; case <-bar return
bar;};
17:55 < cane9> you need to add a return to a func like this too
17:55 < anticw> cde: there are some xfs aware tools i did as a better 'fsr'
as well, and some diag tools to guage various io bahaviours
17:55 < teejae> cane9: oh, good to know
17:55 < anticw> (we have client deloyments with over 2000 drives in them)
17:55 < aiju> you use xfs in production?
17:55 < anticw> yes
17:56 < teejae> xfs = sgi's fs?
17:56 < anticw> for about 8+ years in many different companies
17:56 < anticw> yes, that xfs
17:56 < aiju> i think i lost two filesystems with xfs
17:56 < aiju> completely unrestorable
17:56 < anticw> i think you did it wrong
17:56 < aiju> never happened with any other FS
17:56 < cde> anticw: cool
17:56 < anticw> xfs has been extremely robust with me, much more than
anything else
17:56 < teejae> xfs is designed for robustness from the ground up
17:56 < aiju> besides it's terribly slow if you have many small files
17:57 < anticw> not entirely true
17:57 < anticw> and very much not true now
17:57 < anticw> it was a lot slower than say ext3 in the past without some
effotr, now it's pretty close maybe better
17:57 < aiju> i'm much more happy now with ext4
17:57 -!- piranha [~piranha@5ED4B890.cm-7-5c.dynamic.ziggo.nl] has joined #go-nuts
17:57 < aiju> xfs is also architecture dependant
17:57 < teejae> anticw: do you do embedded systems?
17:57 < aiju> *e
17:58 < anticw> teejae: not these days
17:58 < anticw> aiju: no it's not
17:59 < anticw> aiju: the closest to that is/was log endianness issues
17:59 < anticw> and arm bugs, which there were/are lots of because the arm
embedded guys screwed the data structures
18:01 < anticw> anyhow, this isn't an xfs channel, there is #xfs for that
where people can debunk these claims appropriately
18:02 -!- daxt [~daxt@112.135.76.200] has quit [Remote host closed the connection]
18:03 < teejae> anticw: so anyway, you have written go progs to deal w/ the
xfs deployments?
18:03 -!- iant [~iant@nat/google/x-rpukwkaqnmagtirr] has quit [Quit: Leaving.]
18:03 < anticw> teejae: yes
18:03 -!- iant [~iant@nat/google/x-lheozzhgkpmlwdtf] has joined #go-nuts
18:03 -!- mode/#go-nuts [+v iant] by ChanServ
18:04 < teejae> anticw: cool :)
18:05 < cde> teejae: do you?
18:05 < teejae> cde: do i use go in production?
18:05 < cde> no, do you do embedded systems?
18:05 < teejae> cde: ah, no.  i have no experience with it.  i'm purely a
webapps person
18:06 < cde> ok
18:06 < cde> I was wondering wheter the switch from jffs2 to ubifs or logfs
was worth it
18:06 < anticw> teejae: fwiw, i used to do embedded work and have some mips
and arm systems ...  i started trying to get gccgo to cross compile to mips (BE)
18:06 < anticw> but various (non-go issues) made me push that off for a bit
18:07 < teejae> cde: you're in embedded, and curious about the diff fs's?
18:07 < teejae> i have little experience (:
18:07 < teejae> :(
18:07 < cde> teejae, no pb
18:08 < cde> I was thinking of writing an OS in Go for embedded systems
18:08 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
18:08 < cde> since the runtime brings security, there would be no need for
pagination
18:08 < cde> but the problem is, Go is not self-hosting atm
18:09 < teejae> meaning there isn't a go compiler in go yet?
18:09 < cde> yes
18:09 < cde> well, there is ergo.  but it's closed source
18:10 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
18:11 < teejae> i see
18:11 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has quit
[Quit: Ex-Chat]
18:11 < teejae> been a while since i've impl'd any compiler
18:12 < skelterjohn> cde: why would you need a go compiler in go to create
an embedded os written in go?
18:12 < skelterjohn> it's not like you're going to use the device to compile
18:12 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
18:12 < cde> well I don't, but it feels neater
18:12 < skelterjohn> =p
18:13 < cde> also, the current runtime is highly dependant on the underlying
OS
18:13 < skelterjohn> that is certainly true
18:13 < taruti> there is tinygo
18:13 < skelterjohn> writing an OS is hard.
18:14 < cde> I didn't know about tinygo.  thanks
18:15 < teejae> also, another question
18:15 < teejae> can i have structs filled w/ other structs?
18:15 < teejae> type A struct { field1}
18:15 < anticw> aiju: "rm -rf linux-2.6.36" on xfs -> 0.610s on an old
80GB data disk i use for $HOME
18:15 < teejae> type B struct {A , field2}
18:16 < teejae> and access A.field1 in B?
18:16 < teejae> or rather, just access B.field1?
18:17 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
18:18 < skelterjohn> B.field1 should work, and if A defines field1 as well,
I think you can write B.A.field1
18:18 < wrtp> teejae: yes
18:18 < wrtp> (with a semicolon instead of a comma)
18:19 < wrtp> also, what skelterjohn says
18:19 < teejae> hmm
18:19 < teejae> i must have done it wrong, because for the life of me,
couldn't get it to work right
18:19 < aiju> anticw: interesting, some new version or something?
18:19 < xash> teejae: http://pastebin.com/ Show us your code :-)
18:20 < teejae> xash: sure, will do so in a sec, after i test/commit
something
18:23 -!- Eko [~eko@adsl-76-252-12-180.dsl.ipltin.sbcglobal.net] has joined
#go-nuts
18:25 -!- tvw [~tv@e176002101.adsl.alicedsl.de] has joined #go-nuts
18:27 -!- devrim [~Adium@160.79.7.234] has joined #go-nuts
18:29 -!- devrim [~Adium@160.79.7.234] has quit [Client Quit]
18:31 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 260 seconds]
18:32 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
18:32 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has
joined #go-nuts
18:32 -!- derferman [~derferman@24-176-188-13.static.reno.nv.charter.com] has quit
[Read error: Connection reset by peer]
18:33 -!- devrim [~Adium@160.79.7.234] has joined #go-nuts
18:35 < teejae> xash: alright, posting the current implementation i have
18:35 < teejae> http://pastebin.com/MZwf9ufY
18:35 < teejae> its a hierarchy of exceptions
18:36 < aiju> teejae: have you programmed Borland stuff before?  :D
18:36 < teejae> i had attempted to make some base Exception struct, and
trying to make a separate subclass exceptions
18:36 < teejae> aiju: no i haven't.  why do you ask?
18:36 -!- outworlder [~stephen@189.90.170.251] has quit [Remote host closed the
connection]
18:36 < aiju> teejae: dat T
18:36 < teejae> aiju: like borland c++?
18:36 < aiju> yeah
18:37 < teejae> aiju: it's the thrift protocol
18:37 < aiju> common practice with Borland C++ or Delphi
18:37 -!- outworlder [~stephen@189.90.170.251] has joined #go-nuts
18:37 < teejae> aiju: the whitepaper specifies the class names and such
18:37 < teejae>
http://incubator.apache.org/thrift/static/thrift-20070401.pdf
18:37 < aiju> stands for "type" there (totally silly practice)
18:37 < teejae> aiju: and every language implementation uses it
18:37 < teejae> here T = Thrift
18:38 < teejae> aiju: so stupid hungarian notation?
18:38 < aiju> yeah
18:38 < aiju> like C in MFC
18:38 < xash> teejae: Could you also give the Error?
18:38 < teejae> xash: that version compiles
18:39 < teejae> i'll now paste a pseudo version, since i already removed all
the uncompilable code
18:40 < teejae> xash: http://pastebin.com/aJuFpZMD
18:41 < teejae> in this new version, the only diff is to make TAppException
use the same fields as TException
18:41 < teejae> compiler complains that field "Type" does not exist
18:41 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 260 seconds]
18:42 < aiju> teejae: anonymous fields are not inheritance
18:42 < aiju> .TException.Type
18:43 < aiju> the field has just the same name as the type
18:43 < teejae> i see
18:43 -!- keithcascio [~keithcasc@nat/google/x-ystxjejwhojlyubf] has joined
#go-nuts
18:43 < teejae> didn't know about that
18:43 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
18:43 < aiju> (unlike in Plan 9 C, which does what you expected)
18:44 < teejae> ok, so solution is just to do .TException.Type huh?
18:44 < aiju> yo
18:44 < teejae> also, will this TAppEx have access to Tex's methods?
18:45 < aiju> well .TException.method i suppose
18:45 < teejae> right
18:45 < teejae> so...
18:45 < teejae> func (t TEx) method1
18:45 < teejae> TAppEx.method1
18:45 < teejae> will fail?
18:45 < aiju> i suppose so
18:46 < teejae> doh
18:46 < aiju> in idiomatic Go you'd use an Exception interface
18:46 < aiju> like os.Error
18:47 < teejae> well, TEx does contain os.Error
18:47 < teejae> but more importantly, TEx is an protocol-level exception
18:47 < teejae> it's not really a Go thing
18:47 -!- piranha [~piranha@5ED4B890.cm-7-5c.dynamic.ziggo.nl] has quit [Quit:
Updating Textual - http://www.codeux.com/textual/ — :-)]
18:48 < teejae> its just data, from the Go language perspective
18:48 < aiju> if you press non-Go stuff into Go, don't expect a pretty
outcome ;)
18:48 < anticw> aiju: recentish, delaylog option
18:48 -!- piranha [~piranha@5ED4B890.cm-7-5c.dynamic.ziggo.nl] has joined #go-nuts
18:48 -!- tav [~tav@92.7.83.241] has joined #go-nuts
18:49 < aiju> anticw: well then
18:50 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
18:51 < aiju> teejae: also, why does TException have an os.Error field?
18:52 < teejae> aiju: it doesn't need it, but i figured it was holding
errors
18:52 -!- Venom_X [~pjacobs@75.92.43.21] has quit [Quit: Venom_X]
18:52 < aiju> teejae: os.Error is an interface with a string method
18:52 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
18:52 < teejae> aiju: yea, i know.  so we can't put interfaces in?  or its
pointless?
18:53 < aiju> the latter i suppose
18:53 < teejae> ok
18:53 < aiju> depends what you want to do with it
18:53 < teejae> aiju: all clearly signs of beginner code ;)
18:53 -!- devrim [~Adium@160.79.7.234] has quit [Read error: No route to host]
18:53 -!- devrim1 [~Adium@160.79.7.234] has joined #go-nuts
18:53 < aiju> you can use that type switch thing to analyze the error
furhter; or just be happy with the string
18:53 < aiju> (that's how i understand os.Error)
18:55 < cane9> hay wat?!
18:55 < cane9> <teejae> aiju: so stupid hungarian notation?
18:55 < aiju> cane9: hungarian notation is totally pointless
18:56 < teejae> cane9: i think proper hungarian notation is good
18:56 < aiju> iNumber wtf?
18:56 < cane9> anything hungarian can't be pointless
18:56 < teejae> aiju: the iNumber thing is a stupid use
18:56 < plexdev> http://is.gd/kfhFe by [Roger Peppe] in go/src/pkg/strings/
-- strings: fix description of FieldsFunc
18:56 < plexdev> http://is.gd/kfhFs by [Nigel Tao] in go/doc/ -- doc: update
contribution guidelines to prefix the change description
18:56 < aiju> what'd be proper use?
18:56 < plexdev> http://is.gd/kfhGl by [Ian Lance Taylor] in
go/src/pkg/syscall/ -- syscall: Make Access second argument consistently uint32.
18:56 < teejae> aiju: but pixelNumber might be good one
18:56 < plexdev> http://is.gd/kfhGr by [Rob Pike] in go/src/pkg/gob/ -- gob:
generate a better error message in one confusing place
18:56 < plexdev> http://is.gd/kfhHK by [Robert Griesemer] in
go/src/pkg/go/ast/ -- go/ast: correct Pos/End ranges for field lists
18:57 < plexdev> http://is.gd/kfhIP by [Brad Fitzpatrick] in
go/src/pkg/http/ -- http: permit empty Reason-Phrase in response Status-Line
18:57 < aiju> teejae: well, if you call THAT hungarian notation
18:57 < plexdev> http://is.gd/kfhKw by [Rob Pike] in go/src/pkg/fmt/ -- fmt:
normalize processing of format string
18:57 < plexdev> http://is.gd/kfhKz by [Anthony Martin] in 2 subdirs of go/
-- gc: return constant floats for parts of complex constants
18:57 < plexdev> http://is.gd/kfhLS by [Russ Cox] in go/ -- A+C: Kyle Lemons
(individual CLA)
18:57 < cane9> aiju, but i see what it is, and I admint, it is pointless
18:57 < plexdev> http://is.gd/kfhOk by [Kyle Lemons] in
go/src/cmd/goinstall/ -- goinstall: add -clean flag
18:57 < plexdev> http://is.gd/kfhOD by [Russ Cox] in go/src/pkg/syscall/ --
syscall: correct Linux Splice definition
18:57 < cane9> admit*
18:57 < plexdev> http://is.gd/kfhPd by [Russ Cox] in go/src/pkg/io/ -- io:
fix Copyn EOF handling
18:57 < plexdev> http://is.gd/kfhQK by [Rob Pike] in go/doc/ -- effective
go: explain the effect of repanicking better.
18:57 < aiju> i'd write npixels
18:57 < teejae> aiju: that's my understanding of the original intention of
hungarian notation
18:57 < plexdev> http://is.gd/kfhRj by [Kyle Consalus] in go/src/pkg/fmt/ --
Made format string handling more efficient.
18:57 < plexdev> http://is.gd/kfhSI by [Russ Cox] in
go/src/pkg/crypto/cipher/ -- crypto/cipher: make NewCBCEncrypter return BlockMode
18:57 < aiju> but i wouldn't call that hungarian notation
18:57 < plexdev> http://is.gd/kfhT6 by [Russ Cox] in 2 subdirs of go/ -- gc:
fix &^=
18:57 < plexdev> http://is.gd/kfhTM by [Anthony Martin] in
go/src/pkg/runtime/cgo/ -- runtime/cgo: fix stackguard on FreeBSD/amd64
18:57 < aiju> because i'm not consistently using it for everything
18:58 < teejae> aiju: it's abstract type, not the language implementation
detail type
18:58 < aiju> teejae: even that isn't really necessary imho
18:58 < teejae> aiju: see joel spolsky's post on this
18:58 < teejae> aiju: i think it makes for good reading code
18:59 < teejae> and easier to spot errors
18:59 < cane9> why would you use this with static typing?
18:59 < teejae> http://www.joelonsoftware.com/articles/Wrong.html
19:00 -!- devrim1 [~Adium@160.79.7.234] has quit [Ping timeout: 240 seconds]
19:00 < teejae> cane9: why would you use hungarian notation w/ static
typing?  static typing doesn't cover all cases
19:00 < teejae> for ex....
19:00 < aiju> i think it's stupid to use it all over the place
19:01 < aiju> and its stupid to just label the few cases where you use it
with some fancy name
19:01 < teejae> distance + liters_of_water
19:01 < teejae> vs d + l
19:02 < cane9> er, what now?
19:02 < cane9> ok
19:02 < aiju> cane9: nobody really knows
19:02 < aiju> it's some fishy fancy term
19:02 < teejae> distance + liters_of_water isn't something you do
19:02 < aiju> you write papers about
19:02 < cane9> oh goodie
19:03 < cane9> i love that stuff: academic fads
19:03 < teejae> train_distance + walking_distance
19:04 < cane9> teejae, yeah, i get the idea
19:04 < cane9> the idea is that you have an ide that does autocompletion for
you
19:04 < aiju> ugh
19:04 < cane9> :)
19:05 < teejae> cane9: agreed, but just because it autocompletes, doesn't
mean it completes the right thing
19:05 < cane9> no, i mean having_long_variables_like_this =
assumes_that_you_have_an_ide_that_autocompletes
19:06 < aiju> cane9: i don't think that's the point
19:06 < aiju> cane9: you can also do hungarian notation with one letter
19:07 < aiju> but i think it's the usual thing "just pick something obvious
and call it a fancy name"
19:07 < aiju> like i have variables va and pa in my code, for virtual and
physical address
19:08 < skelterjohn> vaddr, paddr!
19:08 < aiju> well, local context
19:08 < aiju> read16(va) should be clear
19:08 < skelterjohn> read to 16 year olds in virginia?
19:09 < aiju> skelterjohn: i assume the reader has a functioning brain
19:09 < skelterjohn> zing
19:09 < cane9> you assume wrong!
19:09 < aiju> calling it VirtualAddress would just make the code ugly :P
19:10 < aiju> i tend to be mathematical about my variable names
19:10 < aiju> (local variables, that is)
19:10 < teejae> btw, off topic q
19:10 < skelterjohn> what's mathematical about va?
19:10 < teejae> what's the diff between new(MyType) and &MyType{} ?
19:10 < teejae> assuming type MyType struct{}
19:11 < skelterjohn> nothing
19:11 < teejae> is one preferred over another?
19:11 < aiju> the former
19:11 < skelterjohn> by some
19:11 < skelterjohn> i prefer the latter
19:11 < teejae> i have only done the latter
19:11 < aiju> the former is idiomatic
19:11 < teejae> oh
19:11 < teejae> but the latter does initializations as well
19:11 < teejae> seems like a superset
19:11 < aiju> well, duh
19:12 < skelterjohn> there was some discussion of changing new(T) to
make(*T)
19:12 < skelterjohn> but i guess that never went anywhere
19:13 <+iant> we couldn't quite get consensus that it was a clear
improvement
19:13 <+iant> it didn't seem to address all the confusion people felt
19:13 < aiju> how can you be confused about new
19:13 < wrtp> i think it would have been better.
19:13 <+iant> new vs.  make vs.  &T{}
19:13 < skelterjohn> when i first was picking up go it was not clear to me
when "new" should be used vs "make"
19:13 <+iant> exactly
19:13 < wrtp> no real reason for new.  only one thing to learn.
19:14 < teejae> sounds like new should be dropped, if it's not an orthogonal
thing
19:14 < skelterjohn> it would require lots of code fixing
19:14 < skelterjohn> which is something to consider
19:15 < teejae> skelterjohn: true.  i'd say deprecate
19:15 < wrtp> teejae: yeah, that was the proposal.  but there was
disagreement, so proposal was dropped
19:15 < teejae> deprecate and warn
19:15 < wrtp> skelterjohn: fixing code is easy with gofmt...
19:15 < skelterjohn> teejae: no such thing as a warning for go
19:15 < teejae> skelterjohn: i mean on mailing lists
19:15 < skelterjohn> teejae: then i don't follow
19:15 < aiju> regular expressions should fix it :D
19:15 < teejae> right
19:15 < teejae> assuming "new" keyword
19:15 < cane9> gofmt can fix it
19:15 < teejae> new(X)
19:16 < skelterjohn> i don't see what that has to do with deprecation
19:16 < skelterjohn> deprecation is typically a warning from the compiler
that something you're doing is out of fashion and should be stopped, right?
19:16 < teejae> skelterjohn: deprecation + mailing list post (use gofmt to
fix your stuff)
19:17 < aiju> deprecated (a.): it's there, but it will go; you shouldn't use
it
19:17 < teejae> i meant a deprecation in the human sense
19:17 < cane9> no need if gofmt can fix the code
19:17 < cane9> well, ok, an error saying one should gofmt his code
19:17 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Quit: skelterjohn]
19:18 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts
19:18 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Client Quit]
19:18 -!- Venom_X [~pjacobs@75.92.43.21] has joined #go-nuts
19:19 -!- wrtp [~rog@92.17.67.140] has quit [Ping timeout: 246 seconds]
19:19 < teejae> iant: so getting rid of the use of "new" is definitely off
the table?
19:19 <+iant> teejae: no
19:20 <+iant> teejae: we would just need a new proposal
19:20 <+iant> the current situation seems acceptable for most people
19:20 <+iant> but if there is a clear improvement, that would be good
19:20 <+iant> see the mailing list thread for more info
19:20 <+iant> whenever it was
19:21 < teejae> iant: coming from the javascript/actionscript side, while
it's possible to use new Object(), the literal notation is def preferred
19:21 * aiju would love to see easily grepable functions
19:22 <+iant> teejae: In Go the literal notation currently only exists for
structs, maps, arrays, and slices
19:22 < aiju> teejae: hey does that means i can annoy you with my javascript
noob questions?  :P
19:22 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 264 seconds]
19:22 <+iant> there is no literal notation to get a new int, for example
19:22 < teejae> aiju: couldn't answer everything, but could try
19:22 < aiju> teejae: http://aiju.phicode.de/pdp11/ currently working on
optimizing this …
19:23 < teejae> iant: is new used for something outside of structs?  i've
only been playing w/ Go for about 3 weeks
19:23 <+iant> teejae: new can be used with any type
19:23 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
19:23 <+iant> p := new(int)
19:23 < aiju> new is justas in C++
19:23 < aiju> well, besides the lack of constructors
19:23 <+iant> (except that it is a function rather than an operator)
19:24 < aiju> or malloc(sizeof(type)) in C
19:24 < teejae> aiju: what did you want to optimize in this specifically?
19:24 < aiju> teejae: speed
19:25 < teejae> aiju: if you know what the slowest part is...
19:25 < teejae> ;)
19:25 -!- wrtp [~rog@92.17.67.140] has joined #go-nuts
19:25 < aiju> teejae: most javascript profiler data is too coarse
19:27 < teejae> aiju: well
19:27 < teejae> aiju: i'm not sure what this is doing
19:27 < aiju> it's an emulator
19:27 < teejae> i see
19:28 < teejae> aiju: looking at disasm
19:29 < aiju> teejae: that one is not a bottleneck, since it's hardly used
in normal operation
19:29 < teejae> aiju: i figure most slow things are about loops
19:29 < teejae> aiju: so what's the bottleneck?
19:29 < aiju> step() is the main loop in pdp11.js
19:29 < aiju> that's where most of the time is spent
19:29 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
19:30 < teejae> aiju: loops are the general problem
19:30 < teejae> aiju: really quick, i just searched for "for loops"
19:30 < teejae> aiju: the memory.length is gonna kill you
19:30 < teejae> cache it
19:30 < teejae> it's constant
19:30 < aiju> reset() is only executed once
19:31 -!- devrim [~Adium@160.79.7.234] has joined #go-nuts
19:32 < teejae> aiju: btw, what's makes you think this thing is slow?
19:33 < teejae> aiju: what's the measure of it?
19:33 < aiju> IPS count
19:37 < teejae> aiju: sorry, will have to look later.  it's really late here
:(
19:41 -!- devrim [~Adium@160.79.7.234] has quit [Ping timeout: 240 seconds]
19:45 < Venom_X> aiju: looks like you may be able to help me.  I'm working
on porting crypto/cast5 from go to javascript.  I've managed to get over a few
humps, but the bitwise operations are throwing me for a loop.  Any advice for
javascript bitwise operations?
19:45 -!- Eko [~eko@adsl-76-252-12-180.dsl.ipltin.sbcglobal.net] has quit [Quit:
Leaving]
19:46 < aiju> they are very funny
19:46 < aiju> they all truncate the operands to 32-bit
19:46 < aiju> and make it signed
19:46 < Venom_X> except for >>> which is unsigned
19:47 < aiju> 0xFFFFFFFF != -1, but 0xFFFFFFFF^0 == -1
19:47 -!- devrim [~Adium@160.79.7.234] has joined #go-nuts
19:48 < aiju> i'm working mainly on 16-bit values now, but i can imagine
that to be a major problem
19:48 < aiju> but i already noticed in many other contexts that javascript
is often inferior to assembly
19:49 < Venom_X> hehe, no doubt
19:49 < aiju> javascript error handling rocks
19:49 < aiju> just make it undefined!
19:51 < aiju> and no assembly programmer ever would dare to use XML :D
19:51 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Read error: Operation timed out]
19:51 < teejae> out of curiosity, what cities are you guys all from?
19:51 < aiju> Darmstadt
19:51 < Venom_X> Austin, TX
19:51 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
19:51 < teejae> i'm in tokyo
19:52 < aiju> teejae: so i can also annoy you with questions about japanese.
sweet.
19:52 < teejae> aiju: i'm no native speaker
19:54 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Read error: Connection reset by peer]
19:54 < teejae> alright, just got a working template file that acts as a
server
19:55 < teejae> next step is code generator
19:56 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
20:00 -!- napsy [~luka@88.200.96.18] has quit [Ping timeout: 255 seconds]
20:01 -!- femtooo [~femto@95-89-196-241-dynip.superkabel.de] has joined #go-nuts
20:03 < teejae> aiju: in case you were interested in what i was working
on/playing w/
20:03 < teejae> https://github.com/teejae/thrift/tree/go_thrift
20:03 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
20:03 -!- Eko [~eko@76.252.12.180] has joined #go-nuts
20:04 -!- femtoo [~femto@95-89-196-241-dynip.superkabel.de] has quit [Ping
timeout: 240 seconds]
20:05 -!- illya77 [~illya77@194-124-133-95.pool.ukrtel.net] has quit [Quit:
illya77]
20:10 -!- cafesofie [~cafesofie@rnwifi-164-107-92-180.resnet.ohio-state.edu] has
joined #go-nuts
20:12 -!- Fish- [~Fish@9fans.fr] has joined #go-nuts
20:14 -!- cafesofie [~cafesofie@rnwifi-164-107-92-180.resnet.ohio-state.edu] has
quit [Read error: Connection reset by peer]
20:17 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Quit: leaving]
20:18 -!- Project-2501 [~Marvin@82.84.92.241] has joined #go-nuts
20:21 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-158-8.clienti.tiscali.it] has
quit [Ping timeout: 240 seconds]
20:22 -!- aho [~nya@fuld-590c76b4.pool.mediaWays.net] has joined #go-nuts
20:26 < fenicks> hello
20:27 -!- devrim [~Adium@160.79.7.234] has quit [Quit: Leaving.]
20:28 < plexdev> http://is.gd/kfCiO by [Russ Cox] in go/src/ -- Make.pkg:
use installed runtime.h for cgo
20:28 < plexdev> http://is.gd/kfCj0 by [Russ Cox] in go/src/cmd/cgo/ -- cgo:
disallow use of C.errno
20:30 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 250 seconds]
20:32 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
20:33 -!- teejae [~teejae@softbank219185095092.bbtec.net] has quit [Quit: teejae]
20:38 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
20:41 -!- virtualsue [~chatzilla@nat/cisco/x-vtfyobfkclpkcjbh] has quit [Ping
timeout: 276 seconds]
20:42 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 255 seconds]
20:42 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
20:48 < Eko> Has anyone named a go project "gonads" yet?
20:48 < Eko> If not, someone really needs to.
20:49 < aiju> Eko: look at gofy
20:49 < aiju> uriel: gonads should definitely be added
20:49 < aiju> oh it's already there, sorry
20:50 -!- tdnrad [~darndt@terminal.research.cs.dal.ca] has quit [Ping timeout: 255
seconds]
20:51 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 264 seconds]
20:51 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
20:57 -!- skejoe [~skejoe@188.114.142.162] has joined #go-nuts
20:58 -!- piranha [~piranha@5ED4B890.cm-7-5c.dynamic.ziggo.nl] has quit [Quit:
Computer has gone to sleep.]
20:58 -!- cane9 [~john@unaffiliated/johnnybuoy] has quit [Quit: Ex-Chat]
21:00 -!- outworlder [~stephen@189.90.170.251] has left #go-nuts []
21:01 -!- femtoo [~femto@95-89-196-241-dynip.superkabel.de] has joined #go-nuts
21:04 -!- femtooo [~femto@95-89-196-241-dynip.superkabel.de] has quit [Ping
timeout: 240 seconds]
21:09 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has quit [Quit: Morten.  Desu~]
21:12 -!- Eko_ [~eko@76.252.12.180] has joined #go-nuts
21:12 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
21:12 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
21:12 -!- Eko_ [~eko@76.252.12.180] has left #go-nuts []
21:13 -!- vinisterx [~ryan@74-129-202-71.dhcp.insightbb.com] has quit [Quit:
content error]
21:14 -!- vinisterx [~ryan@74-129-202-71.dhcp.insightbb.com] has joined #go-nuts
21:15 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 240 seconds]
21:20 -!- devrim [~Adium@static-71-190-247-62.nycmny.fios.verizon.net] has joined
#go-nuts
21:20 -!- skejoe [~skejoe@188.114.142.162] has quit [Quit: Lost terminal]
21:21 -!- fabled [~fabled@mail.fi.jw.org] has quit [Quit: Ex-Chat]
21:25 -!- devrim1 [~Adium@static-71-190-247-62.nycmny.fios.verizon.net] has joined
#go-nuts
21:28 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:2cf2:e0fd:cfb3:2e53] has quit
[Quit: Leaving.]
21:29 -!- devrim [~Adium@static-71-190-247-62.nycmny.fios.verizon.net] has quit
[Ping timeout: 240 seconds]
21:39 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
21:42 -!- binarypie [~binarypie@adsl-99-37-224-209.dsl.pltn13.sbcglobal.net] has
quit [Remote host closed the connection]
21:45 -!- wrtp [~rog@92.17.67.140] has quit [Ping timeout: 240 seconds]
21:45 -!- binarypie [~binarypie@adsl-99-37-224-209.dsl.pltn13.sbcglobal.net] has
joined #go-nuts
21:46 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 260 seconds]
21:50 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 264 seconds]
21:51 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
21:51 -!- wrtp [~rog@89.240.108.121] has joined #go-nuts
21:54 -!- Xenith [~xenith@2001:470:1:9:8002::1] has quit [Quit: leaving]
22:01 -!- Xenith [~xenith@xenith.org] has joined #go-nuts
22:01 -!- femtooo [~femto@95-89-196-241-dynip.superkabel.de] has joined #go-nuts
22:05 -!- femtoo [~femto@95-89-196-241-dynip.superkabel.de] has quit [Ping
timeout: 255 seconds]
22:06 -!- bmizerany [~bmizerany@208.66.27.62] has joined #go-nuts
22:07 -!- Fish- [~Fish@9fans.fr] has quit [Quit: So Long, and Thanks for All the
Fish]
22:11 -!- Kashia [~Kashia@port-92-200-5-186.dynamic.qsc.de] has joined #go-nuts
22:13 -!- vpit3833 [~user@203.111.33.203] has joined #go-nuts
22:15 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
22:15 -!- nettok [~quassel@200.119.154.65] has joined #go-nuts
22:16 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has left
#go-nuts []
22:20 -!- Zoopee [alsbergt@zoopee.org] has quit [Ping timeout: 255 seconds]
22:30 -!- devrim1 [~Adium@static-71-190-247-62.nycmny.fios.verizon.net] has quit
[Quit: Leaving.]
22:30 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Read error: Operation timed out]
22:30 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
22:33 -!- wrtp [~rog@89.240.108.121] has quit [Quit: wrtp]
22:38 -!- wrtp [~rog@89.240.108.121] has joined #go-nuts
22:44 -!- wrtp [~rog@89.240.108.121] has quit [Quit: wrtp]
22:45 -!- artefon [~thiago@20158072033.user.veloxzone.com.br] has joined #go-nuts
22:46 < plexdev> http://is.gd/kg42A by [Andrew Gerrand] in go/doc/ -- doc:
add golanguage.ru to foreign-language doc list
22:50 -!- drry [~drry@unaffiliated/drry] has quit [Ping timeout: 240 seconds]
22:51 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has quit
[Ping timeout: 240 seconds]
22:51 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
22:51 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts
23:02 -!- drry [~drry@unaffiliated/drry] has joined #go-nuts
23:05 -!- femtooo [~femto@95-89-196-241-dynip.superkabel.de] has quit [Ping
timeout: 240 seconds]
23:06 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined
#go-nuts
23:07 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
23:12 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
23:13 -!- ako [~nya@fuld-590c6127.pool.mediaWays.net] has joined #go-nuts
23:16 -!- aho [~nya@fuld-590c76b4.pool.mediaWays.net] has quit [Ping timeout: 240
seconds]
23:17 -!- xash [~xash@d142039.adsl.hansenet.de] has quit [Ping timeout: 255
seconds]
23:19 -!- sauerbraten [~sauerbrat@p508CE31E.dip.t-dialin.net] has quit [Remote
host closed the connection]
23:22 -!- photron_ [~photron@port-92-201-35-99.dynamic.qsc.de] has quit [Ping
timeout: 240 seconds]
23:27 -!- boscop [~boscop@f055159175.adsl.alicedsl.de] has quit [Ping timeout: 240
seconds]
23:27 -!- drry [~drry@unaffiliated/drry] has quit [Ping timeout: 260 seconds]
23:28 -!- xash [~xash@d142039.adsl.hansenet.de] has joined #go-nuts
23:29 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has joined #go-nuts
23:29 -!- Tuller [~tuller@c-69-143-52-174.hsd1.va.comcast.net] has joined #go-nuts
23:36 -!- drry [~drry@unaffiliated/drry] has joined #go-nuts
23:41 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 260 seconds]
23:41 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has joined
#go-nuts
23:42 -!- drry [~drry@unaffiliated/drry] has quit [Ping timeout: 255 seconds]
23:44 -!- tav [~tav@92.7.83.241] has quit [Quit: tav]
23:45 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has quit [Quit:
Leaving.]
23:49 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has joined #go-nuts
23:50 -!- tvw [~tv@e176002101.adsl.alicedsl.de] has quit [Remote host closed the
connection]
23:51 -!- Davidian1024 [~Davidian1@cpe-173-88-163-203.neo.res.rr.com] has quit
[Ping timeout: 255 seconds]
23:51 -!- Davidian1024 [~Davidian1@cpe-173-88-174-84.neo.res.rr.com] has joined
#go-nuts
23:54 -!- drry [~drry@unaffiliated/drry] has joined #go-nuts
23:54 -!- drry [~drry@unaffiliated/drry] has quit [Excess Flood]
--- Log closed Fri Jan 07 00:00:01 2011