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

--- Log opened Tue Jul 27 00:00:05 2010
00:04 -!- sioraiocht [~tomh@unaffiliated/sioraiocht] has quit [Remote host closed
the connection]
00:05 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has quit
[Ping timeout: 264 seconds]
00:06 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has joined
#go-nuts
00:06 -!- emmanueloga [~emmanuelo@190.247.41.202] has joined #go-nuts
00:06 < plexdev> http://is.gd/dKZ0B by [Russ Cox] in go/src/cmd/gc/ -- gc:
graceful exit on seg fault
00:16 -!- skelterjohn [~jasmuth@wsip-70-167-73-39.sd.sd.cox.net] has quit [Quit:
skelterjohn]
00:18 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 245 seconds]
00:19 -!- Wiz126 [~Wiz126@24.229.245.72.res-cmts.sm.ptd.net] has joined #go-nuts
00:23 -!- gnuvince [~vince@64.235.204.69] has quit [Ping timeout: 276 seconds]
00:24 -!- gnuvince [~vince@70.35.164.184] has joined #go-nuts
00:29 -!- skelterjohn [~jasmuth@wsip-70-167-73-39.sd.sd.cox.net] has joined
#go-nuts
00:36 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Read error: Connection
reset by peer]
00:36 -!- joyer`` [~user@65.182.161.95] has quit [Quit: ERC Version 5.3 (IRC
client for Emacs)]
00:37 -!- photron [~photron@port-92-201-228-93.dynamic.qsc.de] has quit [Ping
timeout: 265 seconds]
00:37 -!- allengeorge [~allengeor@74.12.150.7] has joined #go-nuts
00:38 < plexdev> http://is.gd/dL29m by [Russ Cox] in go/lib/codereview/ --
codereview: avoid crash if no config
00:38 < plexdev> http://is.gd/dL29z by [Russ Cox] in 2 subdirs of
go/src/cmd/ -- 6l: more invalid input files
00:38 < plexdev> http://is.gd/dL29R by [Russ Cox] in 2 subdirs of go/ -- gc:
more crash avoidance
00:38 < plexdev> http://is.gd/dL2ai by [Robert Griesemer] in
go/src/cmd/godoc/ -- godoc: accept '.', '!', and '?' as end of first sentence of
package documentation
00:39 -!- gnuvince [~vince@70.35.164.184] has quit [Ping timeout: 260 seconds]
00:40 -!- gnuvince [~vince@70.35.171.35] has joined #go-nuts
00:45 -!- ClarkG [~clark@dsl-173-248-210-214.acanac.net] has joined #go-nuts
00:46 -!- ClarkG [~clark@dsl-173-248-210-214.acanac.net] has left #go-nuts []
00:47 -!- mikespook [~mikespook@219.137.75.31] has joined #go-nuts
00:49 -!- boscop [~boscop@f055155122.adsl.alicedsl.de] has joined #go-nuts
00:53 -!- bjarneh [~bjarneh@135.80-203-19.nextgentel.com] has quit [Read error:
Connection reset by peer]
00:54 -!- bjarneh [~bjarneh@135.80-203-19.nextgentel.com] has joined #go-nuts
01:02 -!- GeoBSD [~geobsd@lns-bzn-38-82-253-117-120.adsl.proxad.net] has quit
[Quit: Lost terminal]
01:05 -!- skelterjohn [~jasmuth@wsip-70-167-73-39.sd.sd.cox.net] has quit [Ping
timeout: 265 seconds]
01:11 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
01:13 -!- jhawk28 [~jhawk28@72.40.31.201] has joined #go-nuts
01:14 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
01:22 -!- tensorpudd [~user@99.23.123.179] has joined #go-nuts
01:22 -!- ats [~adam@c-24-91-117-198.hsd1.ma.comcast.net] has joined #go-nuts
01:22 -!- tensorpudding [~user@99.32.59.169] has quit [Disconnected by services]
01:23 -!- tensorpudd [~user@99.23.123.179] has left #go-nuts []
01:23 -!- tensorpudding [~user@99.23.123.179] has joined #go-nuts
01:25 -!- tensorpudd [~user@99.148.203.13] has joined #go-nuts
01:26 -!- tensorpudding [~user@99.23.123.179] has quit [Disconnected by services]
01:26 -!- tensorpudd [~user@99.148.203.13] has left #go-nuts []
01:28 -!- tensorpudding [~user@99.148.203.13] has joined #go-nuts
01:28 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has joined #go-nuts
01:28 -!- Bombe [~droden@weltgehirnmaschine.de] has quit [Excess Flood]
01:28 -!- ats [~adam@c-24-91-117-198.hsd1.ma.comcast.net] has quit [Quit: Leaving]
01:29 -!- Bombe [~droden@weltgehirnmaschine.de] has joined #go-nuts
01:34 -!- atsheehan [~chatzilla@c-24-91-117-198.hsd1.ma.comcast.net] has joined
#go-nuts
01:38 -!- uberkermit [~kermit___@bas1-kitchener09-1176182396.dsl.bell.ca] has
joined #go-nuts
01:38 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
01:40 -!- atsheehan [~chatzilla@c-24-91-117-198.hsd1.ma.comcast.net] has quit
[Quit: ChatZilla 0.9.85 [SeaMonkey 2.0.6/20100722172445]]
01:45 < uberkermit> I just started the tutorial (The echo utility -
http://golang.org/doc/go_tutorial.html#tmp_54), and it compiled just fine with 6g,
but with gccgo, I get some errors, and it will not compile.  gccgo does work for
the basic hello, world program.
01:45 < uberkermit> Here is my code, and the errors gccgo emitted:
01:45 < uberkermit> http://pastebin.com/pcF1XQhq
01:46 < uberkermit> Any thoughts on what the deal is with the errors?
01:49 < TheSeeker> just curious, why are the binaries for the windows port
8* rather than 6* ?
01:51 < exch> uberkermit: not sure where that comes from.  I never use gccgo
myself.
01:51 < exch> TheSeeker: different platforms have different compiler names.
It's a habit that comes from the plan 9 toolchain
01:55 < plexdev> http://is.gd/dLaH5 by [Russ Cox] in go/src/cmd/gc/ -- gc:
include signal.h (fix build)
01:56 -!- tensorpudding [~user@99.148.203.13] has quit [Ping timeout: 240 seconds]
01:56 < uberkermit> exch: I may just have to use 6g for now.  I was hoping
for gccgo as I hate having to type separate commands to compile and link.  Plus
gccgo seems to produce very small executables compared to 6g.
01:58 < exch> There are some differences in the code gccgo generates from
the go's own compilers.  As far as I'm aware gccgo does not implement the garbage
collector and there are some difference in the way goroutines work.  Not sure if
that's still applicable though.  Prolly best if someone comments on that who
actually uses it.
01:59 < Namegduf> gccgo has a basic GC now
01:59 < Namegduf> Or such was announced on the mailing list
02:00 -!- Adys [~Adys@unaffiliated/adys] has quit [Ping timeout: 265 seconds]
02:00 < exch> Cool.I should prolly keep up with that sort of stuff
02:01 -!- tensorpudding [~user@99.148.193.154] has joined #go-nuts
02:01 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
02:06 -!- derferman [~derferman@dsl092-048-218.sfo4.dsl.speakeasy.net] has quit
[Quit: derferman]
02:16 -!- thiago__ [~thiago@189.107.178.3] has quit [Quit: bye]
02:16 -!- Adys [~Adys@unaffiliated/adys] has quit [Quit: I ♥ Unicode]
02:16 -!- Arrow [~Arrow@bas9-quebec14-1168093616.dsl.bell.ca] has joined #go-nuts
02:20 -!- gnuvince_ [~vince@64.235.207.135] has joined #go-nuts
02:25 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
02:32 < uberkermit> thanks
02:32 -!- uberkermit [~kermit___@bas1-kitchener09-1176182396.dsl.bell.ca] has quit
[Quit: Leaving]
02:38 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has joined
#go-nuts
02:43 -!- thiago__ [~thiago@189.107.178.3] has joined #go-nuts
02:55 -!- thiago__ [~thiago@189.107.178.3] has quit [Quit: bye]
02:59 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit:
slashus2]
03:00 -!- Arrow [~Arrow@bas9-quebec14-1168093616.dsl.bell.ca] has quit [Quit:
Leaving]
03:03 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 276 seconds]
03:07 -!- allengeorge [~allengeor@74.12.150.7] has quit [Quit: allengeorge]
03:14 -!- gordolinux [bd730043@gateway/web/freenode/ip.189.115.0.67] has joined
#go-nuts
03:14 < gordolinux> what's the idiomatic way to iterate over a vector now
that Iter() was removed?
03:17 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 240 seconds]
03:18 < KirkMcDonald> gordolinux: Perhaps the Do method.
03:18 < KirkMcDonald> gordolinux: Or a three-clause for loop and the Len and
At methods.
03:20 < gordolinux> yeah, i was trying to avoid the three-clause loop but i
guess there is no better way
03:20 < gordolinux> thanks kirk
03:21 < araujo> yesh, Do is the way to go
03:25 -!- xuwen [~xuwen@c-67-160-239-0.hsd1.ca.comcast.net] has joined #go-nuts
03:26 < gordolinux> actually, using Do looks cleaner, thanks guys
03:35 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has quit [Remote
host closed the connection]
03:45 -!- derferman [~derferman@c-98-207-60-44.hsd1.ca.comcast.net] has joined
#go-nuts
03:49 -!- jA_cOp [~yakobu@unaffiliated/ja-cop/x-9478493] has joined #go-nuts
03:51 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has quit [Quit:
This computer has gone to sleep]
04:00 -!- tsung_ [~jon@112.104.53.151] has joined #go-nuts
04:00 -!- Wasabeh_ [~wasabi@213.131.131.142] has joined #go-nuts
04:01 -!- Netsplit *.net <-> *.split quits: crashR, Boney, Paradox924X, gid,
jer, maht, forgey, samferry
04:02 -!- Wasabeh [~wasabi@213.131.131.142] has quit [Ping timeout: 260 seconds]
04:02 -!- tsung [~jon@112.104.53.151] has quit [Ping timeout: 265 seconds]
04:02 -!- drhodes [~none@209-20-72-61.slicehost.net] has quit [Ping timeout: 265
seconds]
04:02 -!- vrtical [rm445@pip.srcf.societies.cam.ac.uk] has quit [Ping timeout: 265
seconds]
04:02 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 260
seconds]
04:02 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has quit
[Ping timeout: 265 seconds]
04:02 -!- Netsplit over, joins: maht, crashR, samferry, gid, forgey, Paradox924X,
Boney, jer
04:03 -!- jhawk28 [~jhawk28@72.40.31.201] has quit [Remote host closed the
connection]
04:03 -!- vrtical_ [rm445@pip.srcf.societies.cam.ac.uk] has joined #go-nuts
04:03 -!- derferman [~derferman@c-98-207-60-44.hsd1.ca.comcast.net] has left
#go-nuts []
04:03 -!- xuwen [~xuwen@c-67-160-239-0.hsd1.ca.comcast.net] has quit [Remote host
closed the connection]
04:05 -!- Netsplit *.net <-> *.split quits: SecretAgent, nsz, segy, jA_cOp,
mjf-, mat_, Rennex_, kingfishr, peterdn, madari_, (+77 more, use /NETSPLIT to show
all of them)
04:05 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
04:05 -!- cw_ [~cw@parsec.stupidest.org] has joined #go-nuts
04:07 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has joined
#go-nuts
04:07 -!- vrtical_ [rm445@pip.srcf.societies.cam.ac.uk] has joined #go-nuts
04:07 -!- jA_cOp [~yakobu@unaffiliated/ja-cop/x-9478493] has joined #go-nuts
04:07 -!- gordolinux [bd730043@gateway/web/freenode/ip.189.115.0.67] has joined
#go-nuts
04:07 -!- gnuvince_ [~vince@64.235.207.135] has joined #go-nuts
04:07 -!- tensorpudding [~user@99.148.193.154] has joined #go-nuts
04:07 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
04:07 -!- Bombe [~droden@weltgehirnmaschine.de] has joined #go-nuts
04:07 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has joined #go-nuts
04:07 -!- boscop [~boscop@f055155122.adsl.alicedsl.de] has joined #go-nuts
04:07 -!- mikespook [~mikespook@219.137.75.31] has joined #go-nuts
04:07 -!- Wiz126 [~Wiz126@24.229.245.72.res-cmts.sm.ptd.net] has joined #go-nuts
04:07 -!- emmanueloga [~emmanuelo@190.247.41.202] has joined #go-nuts
04:07 -!- welterde [~welterde@not.welterde.de] has joined #go-nuts
04:07 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
04:07 -!- Sacho [~sacho@79-100-169-151.btc-net.bg] has joined #go-nuts
04:07 -!- Damn3d [damn3d@unaffiliated/morpheus/x-0931003] has joined #go-nuts
04:07 -!- __20h___ [~some_one@r-36.net] has joined #go-nuts
04:07 -!- evilhackerdude [~stephan@evilhackerdu.de] has joined #go-nuts
04:07 -!- path[l] [UPP@120.138.102.50] has joined #go-nuts
04:07 -!- artefon [~thiagon@150.164.2.20] has joined #go-nuts
04:07 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
04:07 -!- ShadowIce [pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
04:07 -!- XenoPhoenix [~Xeno@94.171.244.40] has joined #go-nuts
04:07 -!- MizardX [~MizardX@unaffiliated/mizardx] has joined #go-nuts
04:07 -!- mat_ [~mat@mx3.absolight.net] has joined #go-nuts
04:07 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has
joined #go-nuts
04:07 -!- TheSeeker [~n@99-153-250-110.lightspeed.irvnca.sbcglobal.net] has joined
#go-nuts
04:07 -!- Xenith [~xenith@xenith-2-pt.tunnel.tserv3.fmt2.ipv6.he.net] has joined
#go-nuts
04:07 -!- GoBIR [~gobir@DHCP-159-138.caltech.edu] has joined #go-nuts
04:07 -!- htoothrot [~mux@71-8-117-228.dhcp.ftwo.tx.charter.com] has joined
#go-nuts
04:07 -!- sladegen [~nemo@unaffiliated/sladegen] has joined #go-nuts
04:07 -!- kingfishr [~kingfishr@c-24-130-147-77.hsd1.ca.comcast.net] has joined
#go-nuts
04:07 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
04:07 -!- ville- [~ville@a107.ath.cx] has joined #go-nuts
04:07 -!- buffi [~buffi@94-247-169-107-static.serverhotell.net] has joined
#go-nuts
04:07 -!- SRabbelier [~SRabbelie@ip138-114-211-87.adsl2.static.versatel.nl] has
joined #go-nuts
04:07 -!- jesusaur [jesusaur@firefly.cat.pdx.edu] has joined #go-nuts
04:07 -!- phirox [~phirox@g225253.upc-g.chello.nl] has joined #go-nuts
04:07 -!- drry [~drry@unaffiliated/drry] has joined #go-nuts
04:07 -!- Zoopee [alsbergt@zoopee.org] has joined #go-nuts
04:07 -!- Belg [~kim@81-235-198-218-no57.tbcn.telia.com] has joined #go-nuts
04:07 -!- yashi [~yashi@210.191.215.173] has joined #go-nuts
04:07 -!- tamentis [~tamentis@ffgd.org] has joined #go-nuts
04:07 -!- Maxdamantus [~m@203-97-238-106.cable.telstraclear.net] has joined
#go-nuts
04:07 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts
04:07 -!- ssb [~ssb@213.167.39.150] has joined #go-nuts
04:07 -!- chressie [~chressie@dreggn.in-ulm.de] has joined #go-nuts
04:07 -!- bartbes [~bartbes@uapps.org] has joined #go-nuts
04:07 -!- Altercation [~Altercati@pdpc/supporter/active/altercation] has joined
#go-nuts
04:07 -!- suiside [~suiside@unaffiliated/suiside] has joined #go-nuts
04:07 -!- segy [~segfault@pdpc/supporter/active/segy] has joined #go-nuts
04:07 -!- anticw [~anticw@c-67-169-41-113.hsd1.ca.comcast.net] has joined #go-nuts
04:07 -!- jvogel [~jonathan@friedpancakes.com] has joined #go-nuts
04:07 -!- grncdr [~stephen@sdo.csc.UVic.CA] has joined #go-nuts
04:07 -!- mduft [~mduft@gentoo/developer/mduft] has joined #go-nuts
04:07 -!- Meidor [~quassel@piggy.cs.ru.nl] has joined #go-nuts
04:07 -!- tabo [~tabot@camelot.tabo.pe] has joined #go-nuts
04:07 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has joined #go-nuts
04:07 -!- gduffy [~greg@67.207.134.177] has joined #go-nuts
04:07 -!- Guest13365 [~irc@209.17.191.58] has joined #go-nuts
04:07 -!- nf [~nf@203-158-40-182.dyn.iinet.net.au] has joined #go-nuts
04:07 -!- araujo [~araujo@gentoo/developer/araujo] has joined #go-nuts
04:07 -!- mjf- [~mjf@tech.cas.ip-anywhere.net] has joined #go-nuts
04:07 -!- cco3-hampster [~conleyo@nat/google/x-whyjulnehrrdxoyz] has joined
#go-nuts
04:07 -!- kkress [~kkress@c-65-49-35-49.tilenetworks.com] has joined #go-nuts
04:07 -!- madari_ [madari@AM.irc.fi] has joined #go-nuts
04:07 -!- mfoemmel [~mfoemmel@chml01.drwholdings.com] has joined #go-nuts
04:07 -!- fluffle [~camelid@s.pl0rt.org] has joined #go-nuts
04:07 -!- kmeyer [~konrad@fedora/kmeyer] has joined #go-nuts
04:07 -!- dju [dju@fsf/member/dju] has joined #go-nuts
04:07 -!- NfNitLoop [~bip@2001:470:b9cc:beef::1] has joined #go-nuts
04:07 -!- tgall_foo [~tgall@gentoo/developer/dr-who] has joined #go-nuts
04:07 -!- impl [impl@atheme/member/impl] has joined #go-nuts
04:07 -!- SecretAgent [sa@quake.nitemare.name] has joined #go-nuts
04:07 -!- djm [~djm@paludis/slacker/djm] has joined #go-nuts
04:07 -!- homa_rano [~erice@hmsvelociraptor.csail.mit.edu] has joined #go-nuts
04:07 -!- taruti [taruti@aoi.yi.org] has joined #go-nuts
04:07 -!- nictuku [~nictuku@unaffiliated/nictuku] has joined #go-nuts
04:07 -!- Rennex_ [rennex@giraf.fi] has joined #go-nuts
04:07 -!- jlouis [jlouis@horus.0x90.dk] has joined #go-nuts
04:07 -!- MaybeSo [~jimr@lions.Stanford.EDU] has joined #go-nuts
04:07 -!- ath [~ath@193.167.161.3] has joined #go-nuts
04:07 -!- Tonnerre [tonnerre@netbsd/developer/tonnerre] has joined #go-nuts
04:07 -!- nsz [nsz@morecp.net] has joined #go-nuts
04:07 -!- clip9 [tj@12.81-166-62.customer.lyse.net] has joined #go-nuts
04:07 -!- felipe [~felipe@my.nada.kth.se] has joined #go-nuts
04:07 -!- jb55 [~jb55@64.231.42.71] has joined #go-nuts
04:09 -!- Netsplit *.net <-> *.split quits: __20h___, sladegen, madari_,
suiside, kingfishr, gnuvince_, MizardX, NfNitLoop, htoothrot, kkress, (+78 more,
use /NETSPLIT to show all of them)
04:09 -!- scm [justme@d019242.adsl.hansenet.de] has quit [Ping timeout: 300
seconds]
04:10 -!- uriel [~uriel@li43-28.members.linode.com] has joined #go-nuts
04:10 -!- Wasabeh [~wasabi@213.131.131.142] has joined #go-nuts
04:10 -!- exch [~exch@h144170.upc-h.chello.nl] has joined #go-nuts
04:14 -!- Wi11_ [~william@dhcp-0-14-bf-38-80-9c.cpe.powergate.ca] has joined
#go-nuts
04:14 -!- apexo [~apexo@daedalus.isaco.de] has joined #go-nuts
04:14 -!- plexdev [~plexdev@arthur.espians.com] has joined #go-nuts
04:14 -!- atsampson [~ats@ishman.kent.ac.uk] has joined #go-nuts
04:14 -!- scoeri [~jdekoste@soft.vub.ac.be] has joined #go-nuts
04:14 -!- Namegduf [~namegduf@eu.beshir.org] has joined #go-nuts
04:14 -!- Soultaker [~maks@hell.student.utwente.nl] has joined #go-nuts
04:14 -!- ender2070 [~ender2070@bas22-toronto12-2925103372.dsl.bell.ca] has joined
#go-nuts
04:14 -!- Fish-Work [~Fish@86.65.182.207] has joined #go-nuts
04:14 -!- willdye [~willdye@fern.dsndata.com] has joined #go-nuts
04:14 -!- jsharkey [jsharkey@208.43.219.52] has joined #go-nuts
04:14 -!- kingdon_ [~kingdon@helomoto.rit.edu] has joined #go-nuts
04:14 -!- tsung [~jon@112.104.53.151] has joined #go-nuts
04:14 -!- cw_ [~cw@parsec.stupidest.org] has joined #go-nuts
04:14 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
04:14 -!- jer [~jtregunna@unaffiliated/jer] has joined #go-nuts
04:14 -!- Boney [~paul@210-84-63-248.dyn.iinet.net.au] has joined #go-nuts
04:14 -!- maht [~maht__@85-189-31-174.proweb.managedbroadband.co.uk] has joined
#go-nuts
04:14 -!- Paradox924X [~Paradox92@vaserv/irc/founder] has joined #go-nuts
04:14 -!- forgey [brook@seahawk.ript.net] has joined #go-nuts
04:14 -!- gid [~gid@220-253-151-50.VIC.netspace.net.au] has joined #go-nuts
04:14 -!- samferry [sam@atheme/member/samferry] has joined #go-nuts
04:14 -!- crashR [~crasher@codextreme.pck.nerim.net] has joined #go-nuts
04:14 -!- Wasabeh_ [~wasabi@213.131.131.142] has joined #go-nuts
04:14 -!- tsung_ [~jon@112.104.53.151] has joined #go-nuts
04:14 -!- bjarneh [~bjarneh@135.80-203-19.nextgentel.com] has joined #go-nuts
04:14 -!- gnuvince [~vince@70.35.171.35] has joined #go-nuts
04:14 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has joined #go-nuts
04:14 -!- mjrentz [~mjrentz@adsl-99-183-242-115.dsl.pltn13.sbcglobal.net] has
joined #go-nuts
04:14 -!- mafs [~maikeru@unaffiliated/maikeru/x-7708887] has joined #go-nuts
04:14 -!- lmoura [~lauromour@200.184.118.130] has joined #go-nuts
04:14 -!- rsaarelm [~rsaarelm@cs181128175.pp.htv.fi] has joined #go-nuts
04:14 -!- xb95 [~weechat@dreamwidth/staff/mark] has joined #go-nuts
04:14 -!- jdp [~gu@24.238.32.162.res-cmts.segr.ptd.net] has joined #go-nuts
04:14 -!- ukai [~ukai@220.109.219.244] has joined #go-nuts
04:14 -!- 84XAAPBDO [~exch@h144170.upc-h.chello.nl] has joined #go-nuts
04:14 -!- korfuri [~korfuri@eth0.korfuri.fr] has joined #go-nuts
04:14 -!- smw [~smw@pool-71-183-88-124.nycmny.fios.verizon.net] has joined
#go-nuts
04:14 -!- prip [~foo@host97-130-dynamic.36-79-r.retail.telecomitalia.it] has
joined #go-nuts
04:14 -!- raylu [raylu@c-98-234-85-38.hsd1.ca.comcast.net] has joined #go-nuts
04:14 -!- mpl [~mpl@smgl.fr.eu.org] has joined #go-nuts
04:14 -!- jefferai [~quassel@kde/amarok/mitchell] has joined #go-nuts
04:14 -!- pjm0616 [~user@110.9.28.120] has joined #go-nuts
04:14 -!- 84XAAOQS9 [~uriel@li43-28.members.linode.com] has joined #go-nuts
04:14 -!- kingdon [~kingdon@helomoto.rit.edu] has joined #go-nuts
04:14 -!- smcq__ [~smcq@smcq.net] has joined #go-nuts
04:14 -!- slpsys [~marc@209-20-75-46.slicehost.net] has joined #go-nuts
04:14 -!- 45PAAVR9K [~tokuhirom@s230.GtokyoFL21.vectant.ne.jp] has joined #go-nuts
04:14 -!- chaos95 [chaos95@mafianode.com] has joined #go-nuts
04:14 -!- i__ [~none@unaffiliated/i--/x-3618442] has joined #go-nuts
04:14 -!- Method [~Method@unaffiliated/method] has joined #go-nuts
04:14 -!- roto [~roto@64.79.202.154] has joined #go-nuts
04:14 -!- jnwhiteh [~jnwhiteh@WoWUIDev/WoWI/Featured/Dongle/cladhaire] has joined
#go-nuts
04:14 -!- Wi11 [~william@dhcp-0-14-bf-38-80-9c.cpe.powergate.ca] has joined
#go-nuts
04:14 -!- ampleyfly [~ampleyfly@h-148-139.A163.priv.bahnhof.se] has joined
#go-nuts
04:14 -!- Yappo__ [~yappo@221x243x122x124.ap221.ftth.ucom.ne.jp] has joined
#go-nuts
04:14 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts
04:14 -!- d_m [~d_m@207.245.124.125] has joined #go-nuts
04:14 -!- ivan` [~ivan@li14-39.members.linode.com] has joined #go-nuts
04:14 -!- DJCapelis [~djc@blender/coder/DJCapelis] has joined #go-nuts
04:14 -!- KirkMcDonald [~Kirk@pysoy/developer/KirkMcDonald] has joined #go-nuts
04:14 -!- soul9 [~none@unaffiliated/johnnybuoy] has joined #go-nuts
04:14 -!- shawn_ [~shawn@208-78-98-92.slicehost.net] has joined #go-nuts
04:14 -!- kevinwatt [kevin@59-125-147-75.HINET-IP.hinet.net] has joined #go-nuts
04:14 -!- Innominate [~sirrobin@cpe-076-182-074-143.nc.res.rr.com] has joined
#go-nuts
04:14 -!- Archwyrm [~archwyrm@archwyrm.net] has joined #go-nuts
04:14 -!- zeroXten [~zeroXten@0x10.co.uk] has joined #go-nuts
04:14 -!- jessta [~jessta@li7-205.members.linode.com] has joined #go-nuts
04:14 -!- fuzzybyte [~fuzzybyte@a47.org] has joined #go-nuts
04:14 -!- dho [~devon@onager.omniti.com] has joined #go-nuts
04:15 -!- Netsplit *.net <-> *.split quits: scoeri, 84XAAOQS9, bjarneh,
ukai, mjrentz, madari_, suiside, Boney, gnuvince_, DJCapelis, (+81 more, use
/NETSPLIT to show all of them)
04:17 -!- tsykoduk_ [~tsykoduk@c-71-231-146-235.hsd1.wa.comcast.net] has quit
[Quit: This is Free Trader Beowulf, calling anyone...  Mayday, Mayday...]
04:18 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
04:18 -!- danderson [~dave@atlas.natulte.net] has joined #go-nuts
04:18 -!- Netsplit over, joins: soul9, i__, jdp, ivan`, stalled, mpl, shawn_, dho,
prip, fuzzybyte (+34 more)
04:18 -!- ServerMode/#go-nuts [+v danderson] by leguin.freenode.net
04:18 -!- Netsplit over, joins: maht, Fish-Work, tsung, mjf-, Zoopee, forgey,
Paradox924X, Boney, jer, kanru (+31 more)
04:19 -!- tsykoduk [~tsykoduk@c-71-231-146-235.hsd1.wa.comcast.net] has joined
#go-nuts
04:19 -!- path[l]_ [UPP@120.138.102.50] has joined #go-nuts
04:19 -!- path[l] [UPP@120.138.102.50] has quit [Quit: path[l]]
04:19 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 276
seconds]
04:19 -!- ender2070 [~ender2070@bas22-toronto12-2925103372.dsl.bell.ca] has quit
[Ping timeout: 260 seconds]
04:19 -!- cmarcelo [~cmarcelo@187.58.108.206] has joined #go-nuts
04:19 -!- cmarcelo [~cmarcelo@187.58.108.206] has quit [Changing host]
04:19 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has joined
#go-nuts
04:42 -!- skelterjohn [~jasmuth@wsip-70-167-73-39.sd.sd.cox.net] has joined
#go-nuts
04:45 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has quit [Read
error: Connection reset by peer]
04:45 -!- TheSeeker [~n@99-153-250-110.lightspeed.irvnca.sbcglobal.net] has left
#go-nuts []
04:50 -!- bjarneh [~bjarneh@135.80-203-19.nextgentel.com] has left #go-nuts []
04:54 -!- saulhoward [~saulhowar@ppp-58-8-128-128.revip2.asianet.co.th] has joined
#go-nuts
05:02 -!- scm [justme@d070035.adsl.hansenet.de] has joined #go-nuts
05:03 -!- skelterjohn [~jasmuth@wsip-70-167-73-39.sd.sd.cox.net] has quit [Ping
timeout: 264 seconds]
05:09 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping
timeout: 240 seconds]
05:10 -!- sladegen [~nemo@unaffiliated/sladegen] has quit [Ping timeout: 276
seconds]
05:12 -!- sladegen [~nemo@unaffiliated/sladegen] has joined #go-nuts
05:13 < plexdev> http://is.gd/dLtKp by [Andrew Gerrand] in
go/misc/dashboard/godashboard/ -- dashboard: more aggressive caching for
project/package pages
05:13 < plexdev> http://is.gd/dLtKt by [Andrew Gerrand] in go/doc/ -- spec:
add recover to predeclared identifiers list
05:13 < plexdev> http://is.gd/dLtKS by [Andrew Gerrand] in 2 subdirs of
go/src/pkg/ -- bytes, strings: mention the n < 0 case in Split/SplitAfter doc
comment
05:13 -!- tamentis [~tamentis@ffgd.org] has quit [Ping timeout: 248 seconds]
05:16 < boscop> is go's grammar LL(1)?
05:23 -!- saulhoward [~saulhowar@ppp-58-8-128-128.revip2.asianet.co.th] has quit
[Quit: Be well, do good work, and keep in touch.]
05:30 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has quit [Ping
timeout: 246 seconds]
05:30 -!- xuwen [~xuwen@adsl-75-61-119-20.dsl.pltn13.sbcglobal.net] has joined
#go-nuts
05:35 -!- kingfishr [~kingfishr@c-24-130-147-77.hsd1.ca.comcast.net] has quit
[Remote host closed the connection]
05:41 -!- iant [~iant@81-233-149-58-no82.tbcn.telia.com] has joined #go-nuts
05:42 -!- mode/#go-nuts [+v iant] by ChanServ
05:44 -!- ShadowIce [pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
05:45 -!- Innominate [~sirrobin@cpe-076-182-074-143.nc.res.rr.com] has quit [Ping
timeout: 264 seconds]
05:47 -!- roop [~roop@122.167.238.207] has joined #go-nuts
05:51 -!- iant [~iant@81-233-149-58-no82.tbcn.telia.com] has quit [Read error:
Connection reset by peer]
05:51 -!- iant [~iant@81-233-149-58-no82.tbcn.telia.com] has joined #go-nuts
05:51 -!- mode/#go-nuts [+v iant] by ChanServ
05:55 -!- Innominate [~sirrobin@cpe-076-182-074-143.nc.res.rr.com] has joined
#go-nuts
06:01 -!- mikespook [~mikespook@219.137.75.31] has quit [Read error: Connection
reset by peer]
06:01 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.2]
06:02 -!- mikespook [~mikespook@219.137.75.31] has joined #go-nuts
06:03 -!- Sacho [~sacho@79-100-169-151.btc-net.bg] has quit [Remote host closed
the connection]
06:05 -!- iant [~iant@81-233-149-58-no82.tbcn.telia.com] has quit [Quit: Leaving.]
06:10 -!- gid [~gid@220-253-151-50.VIC.netspace.net.au] has quit [Quit: Leaving.]
06:10 -!- Sharalynn [~sharalynn@adsl-80-28-215.bgk.bellsouth.net] has joined
#go-nuts
06:10 -!- Sharalynn [~sharalynn@adsl-80-28-215.bgk.bellsouth.net] has left
#go-nuts []
06:11 -!- gid [~gid@220-253-151-50.VIC.netspace.net.au] has joined #go-nuts
06:13 -!- ampleyfly [~ampleyfly@h-148-139.A163.priv.bahnhof.se] has quit [Read
error: Connection reset by peer]
06:17 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 240 seconds]
06:18 -!- ampleyfly [~ampleyfly@h-148-139.A163.priv.bahnhof.se] has joined
#go-nuts
06:20 -!- ampleyfly [~ampleyfly@h-148-139.A163.priv.bahnhof.se] has quit [Read
error: Connection reset by peer]
06:22 -!- mjrentz [~mjrentz@adsl-99-183-242-115.dsl.pltn13.sbcglobal.net] has quit
[Quit: mjrentz]
06:24 -!- ikaros [~ikaros@drms-4d01547e.pool.mediaWays.net] has joined #go-nuts
06:26 -!- ampleyfly [~ampleyfly@h-148-139.A163.priv.bahnhof.se] has joined
#go-nuts
06:27 -!- zozoR [~zozoR@x1-6-00-0e-2e-a3-e0-23.k377.webspeed.dk] has joined
#go-nuts
06:38 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts
06:45 -!- ikaros [~ikaros@drms-4d01547e.pool.mediaWays.net] has quit [Quit: Leave
the magic to Houdini]
06:47 -!- iant [~iant@62.20.124.50] has joined #go-nuts
06:47 -!- mode/#go-nuts [+v iant] by ChanServ
06:47 -!- tsykoduk [~tsykoduk@c-71-231-146-235.hsd1.wa.comcast.net] has left
#go-nuts []
06:51 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined
#go-nuts
06:57 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
07:10 -!- Sacho [~sacho@213.91.244.15] has joined #go-nuts
07:14 -!- tvw [~tv@e176004232.adsl.alicedsl.de] has joined #go-nuts
07:14 -!- thor [~thor@81.95.228.239] has joined #go-nuts
07:18 -!- tvw [~tv@e176004232.adsl.alicedsl.de] has quit [Remote host closed the
connection]
07:18 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
07:18 -!- ikaros [~ikaros@drms-4d01547e.pool.mediaWays.net] has joined #go-nuts
07:23 -!- Guest32497 [~thor@81.95.228.239] has left #go-nuts []
07:28 -!- ithor [~thor@81.95.228.239] has joined #go-nuts
07:30 < plexdev> http://is.gd/dLH90 by [Andrew Gerrand] in go/src/pkg/net/
-- net: add nil checks to several String methods to avoid panics
07:30 < plexdev> http://is.gd/dLH9b by [Andrew Gerrand] in go/src/pkg/bufio/
-- bufio: fix optimisation test
07:30 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
07:32 -!- roop [~roop@122.167.238.207] has quit [Ping timeout: 265 seconds]
07:32 -!- ikaros [~ikaros@drms-4d01547e.pool.mediaWays.net] has quit [Quit: Leave
the magic to Houdini]
07:32 -!- ithor [~thor@81.95.228.239] has quit [Quit: Ухожу я от вас (xchat 2.4.5
или старше)]
07:33 -!- ithor [~thor@81.95.228.239] has joined #go-nuts
07:33 < ithor> hi
07:34 < ithor> does anyone know how can I read a file line by line in Go?
07:37 -!- sioraiocht [~tomh@unaffiliated/sioraiocht] has joined #go-nuts
07:38 < nsf> bufio has method ReadString
07:38 < nsf> which reads until certain delimiter
07:38 < nsf> you can use '\n' as delimiter
07:38 < MaybeSo> buf := bufio.NewReader(...); for { s, err :=
buf.ReadString(sep); ...  }
07:38 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller,
Faster, Easier.  http://miranda-im.org]
07:38 < rsaarelm> I guess that would run into trouble with the different eol
conventions on Windows and *nix?
07:39 < nsf> probably
07:40 < ithor> thanks :) i'll try it..
07:40 < bartbes> well
07:40 < bartbes> but you'd only have a trailing
07:40 < bartbes> \r
07:41 < rsaarelm> Yes, easy to strip when you know it's going to be there.
07:42 -!- adu [~ajr@softbank220043138128.bbtec.net] has joined #go-nuts
07:42 < rsaarelm> Several days of debugging when "say, the ad hoc
split-to-lines code in our codebase might not handle CRLF instead of LF correctly"
hasn't occurred to you yet and all you have is a mystery bug on Windows.
07:42 < rsaarelm> </bitterExperience>
07:43 < bartbes> hehe
07:43 < adu> and people wonder why homogeneity is dearly needed
07:46 < adu> but i think it will be another millennium before we get it
right...
07:46 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
07:47 -!- Zoopee [alsbergt@zoopee.org] has left #go-nuts []
07:47 < bartbes> no, no, no
07:47 -!- path[l] [UPP@120.138.102.50] has quit [Quit: path[l]]
07:47 < bartbes> because then we'll get \r\n\r
07:47 < bartbes> in microsoft Windows Are Broken 2
07:52 < adu> in 1000 we probably won't be using bits anymore, we'll probably
be using amino acids, at which point all this "legacy data" with wierd line ends
might as well be re-encoded when transcribed to DNA storage
07:52 < Rennex_> doesn't mac use just \r ?
07:52 < bartbes> think so
07:52 < adu> Rennex_: no
07:52 < bartbes> it used to
07:52 < adu> Rennex_: Mac used only \r like 100 years ago
07:52 < adu> Rennex_: now Mac uses \n
07:52 < bartbes> well, aren't they still 100 years ago?
07:52 * bartbes runs
07:52 < adu> like all UNIXes do
07:52 < Rennex_> stupid mac
07:53 < adu> Rennex_: macs are the most user-friendly UNIX out there
07:53 < bartbes> that's why linux isn't UNIX :P
07:53 < adu> bartbes: and no, macs are not "still 100 years ago"
07:54 < bartbes> (officially it isn't as I've been reminded my mac fans)
07:54 < bartbes> adu: I know, was joking
07:54 < bartbes> *by
07:55 < Rennex_> isn't the whole term "unix" a bit like "ibm ps/2 compatible
PC" :P
07:55 < adu> no, its rigidly defined by the OpenGroup and IEEE
07:55 < Rennex_> and ibm ps/2 isn't?
07:55 < bartbes> just say POSIX, done
07:56 < bartbes> you explicitly state "compatible"
07:56 < adu> Rennex_: also, IBM-compatible refers to hard-ware, and UNIX
refers to soft-ware
07:57 < Rennex_> i'm just saying, because of old trademark stuff that has
nothing to do with the 21st century, people mostly use different terms now to
avoid uttering false details :)
07:57 < adu> in addition, most software marketed for "IBM-compatible" PC
07:58 < adu> 's won't actually work on the models originally to use that
term, i.e.  trying to run high-res games on a 286 might explode
07:59 < adu> best case cenario, you'll get 0.0001 FPS
07:59 < bartbes> if you're still running a 286 you have enough time anyway
07:59 < adu> lol
07:59 < bartbes> but I guess it'd run out of memory
07:59 < adu> probably
08:00 < adu> Rennex_: well, i take the high road and make sure what i was is
not false
08:00 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 265 seconds]
08:00 < adu> was -> say
08:01 < uriel> iant: hey!  you still in town?  (and did you get my msg about
Herman's?  :))
08:01 < uriel> iant: hey!  you still in town?  (and did you get my msg about
Herman's?  :))
08:01 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
08:02 <+iant> uriel: yes, still here, and we did got to Herman's, thanks!
08:02 <+iant> sorry I haven't responded about meeting up, I've been busy
between work and family
08:02 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has quit
[Quit: Ex-Chat]
08:03 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has joined
#go-nuts
08:03 <+iant> maybe some afternoon downtown?
08:03 <+iant> I'm at the Google office right now, near T-Centralen
08:04 -!- test [5e3ea4e3@gateway/web/freenode/ip.94.62.164.227] has joined
#go-nuts
08:06 < adu> anyways, I think UNIX is a terrible standard, its only saving
grace is that it is the most widely implemented OS in the history of the world
08:08 -!- sioraiocht [~tomh@unaffiliated/sioraiocht] has quit [Remote host closed
the connection]
08:09 < cw> iant: gccgo w/ gc on is working well ...  i do see gc using
about 20% of CPU (more than i would guess but no unexpected)
08:10 <+iant> glad it's working; I'm continuing to work on improvements
08:10 < cw> iant: 2nd in the list though is string comparison
08:10 <+iant> a key improvement when in yesterday
08:10 <+iant> s/when/went/
08:10 < cw> iant: wrt to speed, gccgo is about 50% faster than 6g now
08:10 < cw> previously 20% slower
08:10 <+iant> cool
08:10 <+iant> wow, nice
08:10 < cw> my guess is we trash the caches less with gc
08:11 -!- path[l] [~path@59.162.86.164] has joined #go-nuts
08:11 < cw> but i should measure l2/l3 hits/misses before i claim that
08:11 <+iant> I wonder if the string comparisons are coming from interface
conversions or directly from the program
08:11 <+iant> not much I can do if the program is comparing a lot of strings
08:11 <+iant> but gccgo interface conversion does string comparison today,
and that should probably be sped up
08:11 <+iant> use a hash code or something
08:12 < cw> iant: westmere has sse4.2 string compare insns ...  we could
condiser those for the runtime if there was a clean way to switch what ops get
used
08:12 < cw> iant: from the program i'm sure
08:12 < cw> it's 100s of MBs of gzipped stuff being smashed into millions of
strings
08:12 <+iant> you can use -march= to control this to some degree, but then
your program only runs on the specified arch
08:12 < cw> about 3GB of small strings
08:12 <+iant> k
08:13 -!- buffi [~buffi@94-247-169-107-static.serverhotell.net] has quit [Ping
timeout: 248 seconds]
08:13 -!- buffi [~buffi@94-247-169-107-static.serverhotell.net] has joined
#go-nuts
08:13 < cw> iant: go strings aren't c strings ...  it's not clear that gcc
will use the explicit string op instrinsics
08:13 < cw> it could ...  but my guess is only c was done if anyhting
08:13 <+iant> oh yeah, you would need to use the -march option when
compiling libgo itself
08:14 <+iant> I could fix that by inlining string comparison, though
08:14 < cw> i was going to ask about __asm__
08:14 <+iant> not supported yet
08:14 <+iant> except to rename a function
08:14 < cw> ok ...  asm blocks are gross but well, i dont mind them in a
sense since it's a known thing
08:19 < cw> iant: key improv -> global memory reg ?
08:19 < uriel> iant: heh, no worries, I know how busy one is when one is
both working and traveling ;)
08:20 < uriel> iant: meeting this afternoon should be fine, just let me know
what time
08:25 < cw> iant: i think gccgo is maybe 1% or so slower on this test now
08:26 < cw> i'll look in more depth tomorrow
08:26 <+iant> cw: thanks!
08:27 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts
08:28 -!- ExtraSpice [~XtraSpice@88.118.32.225] has joined #go-nuts
08:32 -!- tvw [~tv@212.79.9.150] has joined #go-nuts
08:40 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 245 seconds]
08:45 -!- photron [~photron@port-92-201-232-104.dynamic.qsc.de] has joined
#go-nuts
08:46 -!- mertimor [~mertimor@p5DC1CA21.dip0.t-ipconnect.de] has joined #go-nuts
08:46 -!- mertimor [~mertimor@p5DC1CA21.dip0.t-ipconnect.de] has left #go-nuts []
08:48 -!- Shyde [~shyde@HSI-KBW-078-043-070-132.hsi4.kabel-badenwuerttemberg.de]
has joined #go-nuts
08:54 -!- kronoz [~user@91.104.106.52] has joined #go-nuts
08:54 < kronoz> hey
08:55 < kronoz> I noticed that in a go routine, when I fmt.Printf something
this doesn't appear until I read from a channel it writes to.  Are the execution
of go routines delayed until they have communicated via a channel?
08:55 < kronoz> so, for example, go func() { fmt.Printf("hi") }() will
simply do nothing, even if you time.Sleep(1e9) in the main thread, but if you add
code to write to a chan then it will output.
08:56 < MaybeSo> I *think* that goroutines are delayed until a GOMAXPROCS
thread is available, which occurs when an executing goroutine blocks on a system
call
08:57 < MaybeSo> so if you just spawn go func() { fmt.Println("hi!") } you
might not see that appear until it has a chance to run
08:57 < kronoz> ahhh
08:57 < MaybeSo> s/}/}()/
08:57 < kronoz> let me experiment...
08:58 < kronoz> you're right
08:58 < kronoz> if I simply add a fmt.Println("block\n") after the go
routine it executes
08:58 < kronoz> cool, was a bit confused there
08:58 < kronoz> thanks!
08:58 -!- kronoz [~user@91.104.106.52] has quit [Quit: ERC Version 5.3 (IRC client
for Emacs)]
09:02 < Namegduf> Hmm.  How efficient are maps, in terms of storage, if you
have lots of them?
09:03 < Namegduf> I'm thinking of storing metadata on things, and the
obvious way to do this is to have a metadata map per thing.
09:03 < Namegduf> But a hashtable implies a size/speed tradeoff that might
not be favourable.
09:03 < MaybeSo> If I recall correctly one thing to keep in mind that if a
map has to be resized, the Go guys like to double the size of the current capacity
09:04 < MaybeSo> how many items per metdata map and how many maps are you
anticipating?
09:04 < Namegduf> Tens, possibly up to about a thouand.
09:04 < Namegduf> Respectively.
09:05 < Namegduf> It might be more efficient just to implement a list, or
some form of self-balancing btree if maps have a significant memory cost.
09:06 < MaybeSo> though if you know a good est final size of the map you can
set that capacity when you make it
09:07 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit:
slashus2]
09:08 < MaybeSo> random small test I ran, a 2.5 Ghz linux box was able to
stuff about 14K lines per second read from a file into a map which did not have an
initial capacity set
09:18 -!- ExtraSpice [~XtraSpice@88.118.32.225] has quit [Quit: Leaving]
09:19 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts
09:29 -!- ExtraSpice [~XtraSpice@88.118.32.225] has joined #go-nuts
09:34 -!- mikespook [~mikespook@219.137.75.31] has quit [Quit: Leaving.]
09:35 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has joined
#go-nuts
09:50 -!- gid [~gid@220-253-151-50.VIC.netspace.net.au] has quit [Ping timeout:
260 seconds]
09:50 -!- Guest38125 [5e3ea4e3@gateway/web/freenode/ip.94.62.164.227] has quit
[Quit: Page closed]
09:59 -!- roop_ [~roop@122.167.238.207] has joined #go-nuts
10:02 -!- MizardX [~MizardX@unaffiliated/mizardx] has joined #go-nuts
10:05 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Ping timeout: 248 seconds]
10:05 -!- gid [~gid@220-253-150-39.VIC.netspace.net.au] has joined #go-nuts
10:06 -!- gmurphy [~gmurphy@124-171-199-194.dyn.iinet.net.au] has joined #go-nuts
10:07 -!- gid [~gid@220-253-150-39.VIC.netspace.net.au] has quit [Client Quit]
10:08 -!- gid [~gid@220-253-150-39.VIC.netspace.net.au] has joined #go-nuts
10:09 -!- MizardX- [~MizardX@unaffiliated/mizardx] has joined #go-nuts
10:10 -!- MizardX [~MizardX@unaffiliated/mizardx] has quit [Read error: Connection
reset by peer]
10:13 -!- gmurphy [~gmurphy@124-171-199-194.dyn.iinet.net.au] has quit [Quit:
zzzzzz...]
10:13 -!- njsarten [~njsarten@125-239-208-148.jetstream.xtra.co.nz] has joined
#go-nuts
10:14 -!- njsarten [~njsarten@125-239-208-148.jetstream.xtra.co.nz] has left
#go-nuts []
10:14 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
10:14 -!- gmurphy [~gmurphy@124-171-199-194.dyn.iinet.net.au] has joined #go-nuts
10:16 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has
quit [Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2/20100222071121]]
10:20 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has quit [Quit:
This computer has gone to sleep]
10:20 -!- gmurphy [~gmurphy@124-171-199-194.dyn.iinet.net.au] has left #go-nuts []
10:23 -!- roop_ [~roop@122.167.238.207] has quit [Ping timeout: 260 seconds]
10:29 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]]
10:33 < ithor> i'm trying to build a go program to analyse squid logs.  I
want my program to report how much traffic each host (ip address) has consumed.
Program works, but it is 3 times slower than python.
10:33 < ithor> here's the code: http://pastebin.com/2fUWebCM
10:34 < ithor> I supposed Go to be faster or at least comparable to python.
May be I am doing there something very inefficiently..  Any hints?
10:35 -!- gordolinux [bd730043@gateway/web/freenode/ip.189.115.0.67] has quit
[Quit: Page closed]
10:36 -!- ronnyy [~quassel@p4FF1D772.dip.t-dialin.net] has joined #go-nuts
10:36 < ithor> basically, it reads a line from stdin, splits it into fields,
and sums a bytes count (field 4) for each ip-address (field 2)
10:36 -!- njsarten [~njsarten@125-239-208-148.jetstream.xtra.co.nz] has joined
#go-nuts
10:42 < MaybeSo> two rather random thoughts:
10:43 < MaybeSo> (1) perhaps adjust the buffer size by calling
bufio.NewReaderSize
10:43 < MaybeSo> and aligning the size of the buffer to the underlying block
size your OS uses
10:44 < MaybeSo> (2) perhaps use srings.Split() instead if strings.Field()
and give it a count so it stops processing fields after the 5 column
10:45 < MaybeSo> finally, you might want to stick a few timer.Nanoseconds()
calls in there and compute how much time is spent in the initial for loop and how
much time is spend in the 2nd for loop
10:45 -!- roop__ [~roop@122.167.238.207] has joined #go-nuts
10:45 < MaybeSo> oh, and if you have a bunch of cpu cores you could spin off
multiple sums[] counters, and then merge them all at the end
10:46 < MaybeSo> (e.g., send the fields[2] and field[3] data down a channel
to goroutines which are waiting for work)
10:50 -!- gmurphy [~gmurphy@124-171-199-194.dyn.iinet.net.au] has joined #go-nuts
10:50 < ithor> second for loop runs instantly :) it just prints the results
10:51 < MaybeSo> always good to double check.  :D
10:51 < ithor> thanks for suggestions, I'll try to adjust buffer size and
try to use strings.Split()
10:51 < MaybeSo> I'm curious if it will make a difference
10:52 < ithor> ok, I'll report back
10:52 < MaybeSo> thanks
10:56 -!- allengeorge [~allengeor@74.12.150.7] has joined #go-nuts
10:56 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
11:01 -!- roop [~roop@122.167.238.207] has joined #go-nuts
11:01 -!- roop__ [~roop@122.167.238.207] has quit [Ping timeout: 240 seconds]
11:01 -!- kronoz [~user@91.104.106.52] has joined #go-nuts
11:02 -!- kronoz [~user@91.104.106.52] has left #go-nuts []
11:02 -!- kronoz [~user@91.104.106.52] has joined #go-nuts
11:02 -!- kronoz [~user@91.104.106.52] has quit [Client Quit]
11:04 -!- kronoz [~user@213.86.152.1] has joined #go-nuts
11:04 < kronoz> hi again :)
11:04 < kronoz> I'm probably being really stupid, but how do you convert,
say, an int slice to a vector.Vector?
11:05 < kronoz> I know you can say ns := &vector.Vector{1, 2, 3}
11:05 < kronoz> (and I know there's an IntVector, I need a vector.Vector and
am just using ints for the example :-)
11:06 < kronoz> but if you already have a slice, say slc, ns :=
*vector.Vector(slc) doesn't seem to work.
11:06 -!- jA_cOp [~yakobu@unaffiliated/ja-cop/x-9478493] has quit [Ping timeout:
260 seconds]
11:07 -!- allengeorge [~allengeor@74.12.150.7] has quit [Quit: allengeorge]
11:08 < kronoz> ok sorry, ns := (vector.Vector)(slc), we don't want to deref
a pointer...
11:13 < jessta> kronoz: vector.Vector is a slice of interface{}
11:14 < MaybeSo> w00t, it's 0415.  I've now been up for 24 hours w/o food or
a break.
11:15 < jessta> kronoz: so you'll have to create a vector of the same size
and then use a loop with Append()
11:15 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has
joined #go-nuts
11:16 < jessta> umm...I mean, Push()
11:17 < jessta> MaybeSo: working in some kind of sweat shop?
11:18 < MaybeSo> :D
11:18 < MaybeSo> (dealing with a broken fileserver)
11:20 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Quit: WeeChat
0.3.2]
11:22 < kronoz> jessta: ah ok, wondered whether there was some way to treat
them as the same thing, given vector.Vector is a []interface{}...
11:23 < kronoz> jessta: is it possible to do something like this for an
IntVector or a StringVector?
11:24 < kronoz> am I thinking mad thoughts?  :-)
11:25 < kronoz> I am yearning for generics, you see, I have a struct with a
var of type []Foo, however I want this var to be resizable.  Then again I guess
you'd have to be casting all over the place even if somehow you could simply have
this as a vector underlying...
11:26 < kronoz> Perhaps writing a method which returns the vector as a []Foo
is the best compromise?
11:27 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
11:27 < jessta> kronoz: the issue is that interface{} is a different size to
int
11:28 < jessta> if you want a dynamic []Foo, then you could write a
FooVector
11:28 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
11:29 -!- Fish [~Fish@9fans.fr] has joined #go-nuts
11:29 < jessta> if you don't mind a []*Foo then vector.Vector will do
11:30 < ithor> is there a way to extend an array ?
11:32 -!- njsarten [~njsarten@125-239-208-148.jetstream.xtra.co.nz] has left
#go-nuts []
11:32 < jessta> ithor: no, you have to make a new one
11:33 -!- path[l] [~path@59.162.86.164] has joined #go-nuts
11:33 < jessta> I wish there was a way, it seems silly to copy things if you
don't have to
11:33 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
11:33 < ithor> jessta: what is correct idiom for that?  I want to
incrementally build a list of values, starting from empty list (array/ slice) and
then adding elements one by one.
11:35 < rsaarelm> Use vector?
11:36 < rsaarelm> You can cast back and forth between an array and a vector,
and the vector methods do the resizing for you.
11:36 -!- Bombe [~droden@weltgehirnmaschine.de] has quit [Changing host]
11:36 -!- Bombe [~droden@freenet/developer/Bombe] has joined #go-nuts
11:37 < rsaarelm> But you will need to use interface{} as the element type
for the array then.  Or int or string if you use IntVector or StringVector.
11:42 -!- skelterjohn [~jasmuth@wsip-70-167-73-39.sd.sd.cox.net] has joined
#go-nuts
11:43 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
11:45 < nsf> great, it looks like my autocompletion announce was sucked by
google's spam filter
11:46 < nsf> oh, nope
11:46 < nsf> here it is
11:46 < nsf> good :)
11:47 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]]
11:49 -!- path[l] [~path@59.162.86.164] has joined #go-nuts
11:51 -!- ronnyy [~quassel@p4FF1D772.dip.t-dialin.net] has quit [Remote host
closed the connection]
11:51 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
11:52 -!- Guest48162 [~exch@h144170.upc-h.chello.nl] has quit [Quit: hmmm]
11:52 -!- exch [~exch@h144170.upc-h.chello.nl] has joined #go-nuts
11:56 < exch> grats on finishing the autocompletion, nsf
11:56 < nsf> it's not finished, it just has reached "working" state
11:56 < nsf> I hope..
11:57 < nsf> :P
11:57 < exch> fair enough :)
11:58 < MaybeSo> nsf: have you plugged it into acme yet?
11:58 < nsf> I don't have plans like that
11:58 < MaybeSo> aw!  :)
11:59 < nsf> I personally support only vim plugin, and I don't mind if there
will be others
11:59 < nsf> ugh..
12:00 * nsf hates saying so many Is
12:00 < MaybeSo> you could use the royal We
12:00 < nsf> :D
12:00 < exch> heh that works Us
12:00 < exch> *for
12:00 < nsf> We support only vim plugin, because We think it's the only sane
choice
12:01 < nsf> like that?  :)
12:02 < MaybeSo> perfect
12:02 < exch> poop.  Why is it that go-sdl never compiles when I actually
need it?  :p
12:02 < nsf> apparently because it's not well supported :)
12:03 < MaybeSo> nsf: btw, your autocompletion daemon announcement showed up
in my mailbox w/o being tagged as spam
12:03 < nsf> MaybeSo: yep, I know that
12:03 < nsf> it just took a lot of time, which I thought is kinda strange
12:03 < nsf> I mean how much time is it required to get from one google
server to another :) (I use gmail)
12:03 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
12:04 < nsf> 5-7 minutes is too much
12:04 < nsf> :D
12:04 < MaybeSo> haha
12:04 -!- adu [~ajr@softbank220043138128.bbtec.net] has quit [Quit: adu]
12:07 -!- Shyde [~shyde@HSI-KBW-078-043-070-132.hsi4.kabel-badenwuerttemberg.de]
has quit [Remote host closed the connection]
12:09 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has joined
#go-nuts
12:15 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has quit [Remote
host closed the connection]
12:19 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
12:21 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
12:22 -!- gmurphy [~gmurphy@124-171-199-194.dyn.iinet.net.au] has left #go-nuts []
12:23 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
12:23 -!- ronnyy [~quassel@p4FF1D772.dip.t-dialin.net] has joined #go-nuts
12:25 -!- adu [~ajr@softbank220043138128.bbtec.net] has joined #go-nuts
12:28 -!- hokapoka [~hokapoka@hoka.hokapoka.com] has joined #go-nuts
12:30 -!- jmp [jmp@kapsi.fi] has joined #go-nuts
12:30 < hokapoka> If I had type foo struct{ b []bar } where type bar struct{
s string }, how od I use Composite Literal notation to create an instance of foo
that has n instances of bar in b?
12:32 < nsf> v := foo{ []bar{ bar{"1"}, bar{"2"} } }
12:32 < nsf> just a guess
12:32 < kronoz> hokapoka: &foo{b: &bar{"abc"}, &bar{"def"}, ...}
12:32 < kronoz> hokapoka: at a guess too :)
12:32 < hokapoka> As : f := &foo{ b : &[1]bar{ {s:"foobar"} } } fails when
compiled with : syntax error: unexpected {, expecting }
12:32 < hokapoka> Arh.
12:33 < nsf> &foo{} is a pointer to instance of foo
12:33 < nsf> the same is about bar
12:33 < nsf> b []bar
12:33 < rsaarelm> You want bar{"foobar"} instead of the {s:"foobat"}.  It
doesn't know what the inner {} is supposed to be.
12:33 < kronoz> nsf: ah yes.
12:33 < nsf> is slice of bars, not pointers to bars
12:33 < hokapoka> Of course, I assumed that the type would be "known"
12:34 < rsaarelm> Yeah, it's not that smart.
12:34 < kronoz> yeah I was wondering why there was an inner pair of {}'s
12:35 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
12:36 -!- skelterjohn [~jasmuth@wsip-70-167-73-39.sd.sd.cox.net] has quit [Quit:
skelterjohn]
12:37 < hokapoka> The bar is just an example, my actual struct has 2/3
properties, say r, s, & t.  in that case I would use bar{r:"r_val", s:"s_val",
t:"t_val} right?
12:37 < kronoz> yup
12:38 < kronoz> I just tried val := &foo{b: []bar{bar{"abc"}, bar{"def"}}}
and that seemed to work
12:38 < kronoz> although of course you can omit the b:...
12:39 -!- vrtical_ [rm445@pip.srcf.societies.cam.ac.uk] has left #go-nuts []
12:40 < hokapoka> yeah, sweet thank you so much guys.
12:40 -!- vrtical [rm445@pip.srcf.societies.cam.ac.uk] has joined #go-nuts
12:40 < kronoz> no probs
12:41 < kronoz> if I was any help, that is!!
12:41 < kronoz> I am a beginner myself.
12:41 < vrtical> Guys, I expect this has been gone over before, but Go's
slice/array initialisation looks a bit crazy.  (Those inner 'bar{}'s)
12:41 < vrtical> C manages to initialise structs without them, is there a
particular reason Go can't?
12:42 < exch> var b bar; <- initialize without braces, but also no
explicit value assignment
12:42 < vrtical> No, I mean initialising a slice of structs.
12:42 < nsf> vrtical: there was something about somewhere
12:43 < nsf> let me try to find it for you
12:43 < hokapoka> vrtical: Are you talking about the complier knowing the
type?
12:44 < hokapoka> As I expected it to know that the values were of type bar
as b was a slice of bar.
12:44 < nsf>
http://golang.org/doc/go_programming_faq.html#nested_array_verbose
12:44 < nsf> last question here I guess
12:45 < vrtical> Fair enough, thanks.  Was just curious whether it was a
design decision or necessitated by some subtle aspect of Go I hadn't considered.
12:45 < hokapoka> TBH, it's not a hardship, the rest of the gains from using
Go far outweigh having todo such athing with literals.
12:46 < kronoz> I find go to be a pretty tasteful language.  The decisions
they make take to be fairly sensible, though of course it's good to question why.
12:46 < hokapoka> yeah
12:47 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
12:48 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
12:49 -!- kronoz [~user@213.86.152.1] has quit [Quit: ERC Version 5.3 (IRC client
for Emacs)]
12:54 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
12:56 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
13:00 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
13:00 -!- visof [~visof@unaffiliated/visof] has quit [Quit: Leaving]
13:01 -!- adu [~ajr@softbank220043138128.bbtec.net] has quit [Quit: adu]
13:01 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
13:03 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.2]
13:04 -!- nighty^ [~nighty@x122091.ppp.asahi-net.or.jp] has joined #go-nuts
13:04 -!- kanru [~kanru@118-160-160-73.dynamic.hinet.net] has joined #go-nuts
13:06 -!- angasule [c80571ea@gateway/web/freenode/ip.200.5.113.234] has joined
#go-nuts
13:07 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
13:09 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts
13:20 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has joined
#go-nuts
13:21 -!- b0r3d [~m@194.146.155.142] has joined #go-nuts
13:21 -!- b0r3d [~m@194.146.155.142] has quit [Changing host]
13:21 -!- b0r3d [~m@unaffiliated/b0r3d] has joined #go-nuts
13:26 -!- gnuvince [~vince@70.35.171.35] has quit [Ping timeout: 265 seconds]
13:27 -!- gnuvince [~vince@70.35.171.116] has joined #go-nuts
13:28 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit:
hcatlin]
13:28 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
13:29 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]]
13:31 -!- path[l] [~path@122.182.0.38] has joined #go-nuts
13:32 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
13:34 -!- b0r3d [~m@unaffiliated/b0r3d] has quit [Ping timeout: 258 seconds]
13:34 -!- path[l] [~path@122.182.0.38] has quit [Client Quit]
13:36 -!- path[l] [~path@59.162.86.164] has joined #go-nuts
13:38 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 265 seconds]
13:39 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
13:40 -!- Guest13365 [~irc@209.17.191.58] has quit [Quit: leaving]
13:40 -!- irc [~irc@209.17.191.58] has joined #go-nuts
13:42 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
13:46 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
13:47 -!- roop [~roop@122.167.238.207] has quit [Remote host closed the
connection]
13:49 -!- ithor [~thor@81.95.228.239] has quit [Quit: bye]
13:56 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Remote host closed the connection]
14:05 -!- psusi [hidden-use@iriserv.iradimed.com] has joined #go-nuts
14:09 < psusi> I'm a little unclear about recover()...  the documentation
says it stops the panic but not where control is transferred to.  Since it is
called from a deferred function, how is the body of the normal function supposed
to regain control?
14:10 < exch> A deferred function is called when the 'normal' function
reaches the return instruction
14:10 < MaybeSo> Oh, I had thought the first step was admitting you have no
control
14:10 < psusi> or during panic...
14:10 < exch> So the deferred calls are executed, and then the return is
actually performed
14:11 < exch> Consider it the same as a catch{} block (recover) in an
exception handling clause combined with finally{} (defer)
14:11 < psusi> hrm...  so there is no avoiding the normal function returning
on panic, the best you can do is have a deferred function recover, set the return
value, any other deferred functions are called to finish unwinding the stack, and
the caller regains control?
14:12 < exch> seems about right.  That's kind of the point of recover().
Without it, your program would just crash immediatly upon a panic
14:12 < psusi> that doesn't seem very useful...  usually if you are going to
handle the error, you take corrective action and try again, not just convert the
exception into a normal error return...
14:14 < exch> The calling function can check for any errors that may have
occurred and call the faulty function again
14:14 < exch> No different than you would expect retries to work, it just
moves up the callchain by 1 level
14:14 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
14:15 < angasule> exch: bah, you're just opposed to 3000 line functions :-)
14:15 < psusi> then what is the point of using panic instead of return when
the error happens?
14:16 < psusi> in C++ if you bother catching an out of memory exception
thrown by new, it isn't because you want to return an error code to the caller..
if the caller cared about any such error code, they would have caught the
exception
14:16 < psusi> you catch the exception so you can free up some memory and
try again
14:17 < MaybeSo> psusi: did you see the use of recover() in the regexp
package?
14:17 < psusi> no
14:17 < MaybeSo> http://golang.org/src/pkg/regexp/regexp.go
14:17 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has joined #go-nuts
14:18 < MaybeSo> "// doParse will panic..."
14:19 < MaybeSo> kind of reminds me if an easier to read version of perl's
eval { ...  }
14:19 < exch> a panic() will simply crash the program.  in a server thats
probably not a very desirable outcome.  Youd want to have some way of at least
trying to regain control
14:20 < exch> Or at the very least be able to clean up the process elegantly
14:20 < exch> (saving data, etc)
14:20 < psusi> exch: that's my point...  it seems you can't really regain
control
14:20 < exch> why not?
14:20 < MaybeSo> but you can
14:20 < psusi> because the function that was executing when the panic
started can not resume execution
14:20 < MaybeSo> that example I pointed at is doing something simple, but
there's no reason it could do something more complicated if necessary
14:21 < MaybeSo> I think I must be misunderstanding what you're after,
sorry.  :(
14:21 < psusi> what is the purpose of using panic instead of just having
doParse() return a bool, and Compile() test that?
14:22 -!- ronnyy [~quassel@p4FF1D772.dip.t-dialin.net] has quit [Remote host
closed the connection]
14:22 < psusi> what I'm getting at is that it seems that handling a panic in
go is limited to cleanup and altering the return value, rather than actually being
able to correct the error
14:23 -!- mjrentz [~mjrentz@adsl-99-183-242-115.dsl.pltn13.sbcglobal.net] has
joined #go-nuts
14:23 < exch> right.  I see what you are getting at.  Why use panic upon an
error condition, if not to indicate absolute failure.
14:24 < exch> I suppose there's a good point there.  I dont why they did use
panic in those cases.  perhaps something iant can answer
14:24 < psusi> no...  why use a panic on error condition if it just results
in a return anyhow
14:24 < exch> *I don't know
14:25 < psusi> in C++ you throw an exception because it results in a return
IF UNHANDLED....  if you catch it, then you do something to fix it, and resume
execution in the function that decided to catch the exception, rather than return
to the caller
14:26 < psusi> it seems in go that returning to the caller is a foregone
conclusion and you just have a chance to cleanup and alter return values
14:26 < exch> what's stopping you from calling the offending function again
from the caller?
14:26 < exch> provided you intercepted the panic
14:26 < psusi> that's up to the caller...  which let's assume I don't
control
14:27 < MaybeSo> so let's say for example you've got a channel which has
incoming operations, and one of those operations fails.  Couldn't you perform your
clean-up and resubmit a cleaned up operation on that same channel?
14:27 < psusi> I'm only writing THIS function and if I want to handle the
error rather than pass it up to the caller, it seems I can't
14:27 < psusi> how?  once the panic happens, your function returns
14:28 < MaybeSo> and the reason he uses panic() is that doParse() turns
around and does a boatload of other things, calling other functions, etc.
14:28 < MaybeSo> kind of like a nicer version of GOTO statements
14:28 < psusi> hrm...  I suppose that is so
14:30 < psusi> so what you have is 3 levels of functions where the lower
level can panic on error, the mid level doesn't have to care, and the top level
just returns the correct error value...  that seems a much more limited use case
than C++ exceptions...
14:31 < psusi> the only thing it really seems to buy you then, is the
simplification of the mid level functions since they don't have to test return
values
14:32 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has joined
#go-nuts
14:34 * MaybeSo hasn't touched C++ since college and doesn't remember anything
about them
14:34 -!- xuwen [~xuwen@adsl-75-61-119-20.dsl.pltn13.sbcglobal.net] has quit
[Remote host closed the connection]
14:35 < MaybeSo> ah, yes so exactly what you said:
http://golang.org/doc/go_lang_faq.html#exceptions
14:36 < MaybeSo> So looks like Java stole C++ Exceptions
14:36 < MaybeSo> I hadn't known that.  :)
14:36 < angasule> MaybeSo: I envy you, I'm working on a large C++ crapbase,
and the flow of the program is semimagical
14:37 < MaybeSo> I was a junior level employee at my current job when the
lead designer said to the boss "Either you let me rewrite this C++ crap in Java or
I won't put in any more new features."
14:37 < MaybeSo> and so we moved to Java my first year here
14:37 < angasule> java?  eew?
14:37 < MaybeSo> *shrug* back then it was better than C++
14:38 < jmp> http://pastebin.com/eKsWXHKq
14:38 < jmp> does anyone know why fmt.Sprintf clamps the hex bytes of the
string to the 0..127 range?  e.g.  in the above example.
14:38 < jmp> it changes \xff (decimal 255) and any other characters >=128
to \xfd (=253) for some reason i don't get.
14:38 < angasule> MaybeSo: I disagree in general principle, but I don't know
what your project is, so it might have been so for the project
14:38 < jmp> as you see fmt.Sprint handles the same string as expected (it
doesn't change them), so could this be a bug in fmt.Sprintf or am i missing
something?
14:39 -!- napsy_ [~luka@212.235.174.112] has joined #go-nuts
14:40 -!- napsy_ [~luka@212.235.174.112] has quit [Client Quit]
14:40 < psusi> oh yea, java uses finally doesn't it?
14:41 < angasule> jmp: is that valid utf-8?
14:41 < MaybeSo> I'd think that the t := fmt.Sprintf() call is missing the
"format" argument
14:41 < MaybeSo> don't you have to provide *something* for format and then
pass in "original" ?
14:42 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has quit [Remote
host closed the connection]
14:42 < psusi> MS's SEH extensions to C used __try/__except and __finally
iirc...  hrm....
14:42 < jmp> format is the first argument, isn't it?
14:42 -!- cmarcelo [~cmarcelo@187.58.108.206] has joined #go-nuts
14:42 -!- cmarcelo [~cmarcelo@187.58.108.206] has quit [Changing host]
14:42 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has joined
#go-nuts
14:42 < MaybeSo> yes
14:42 < jmp> i've given the format, i just didn't give the rest of the
arguments, because they are irrelevant
14:42 < MaybeSo> and so I'm confused why this would work:
14:42 < MaybeSo> t := fmt.Sprintf(original)
14:43 < MaybeSo> I would think it is treating (original) as the format w/o
any arguments
14:43 < exch> it treats original as the format without any arguments
14:43 < jmp> it doesn't change the result even if i add parameters
14:44 < MaybeSo> I see, so you're saying you'd expect Sprintf(original) to
equal Sprintf("%#v", original)
14:44 < MaybeSo> (sorry for being dense)
14:46 < jmp> i'd expect it to work analogously to the C function sprintf
14:47 < jmp> which means if i call it with just the format, it prints only
the format to the string (no parameters)
14:47 < jmp> the parameters are irrelevant, which is why i left them out
14:47 < psusi> UTF-8 issue I think, yea...
14:47 < MaybeSo> for some reason I'm thinking it might have to do with the
string type and whether or not it is expected to perform conversion magic on it,
they have `` vs "" don't they?
14:48 < jmp> psusi: but then why does fmt.Sprint work?
14:48 < psusi> what do you mean?
14:48 < jmp> what utf-8 issue do you mean?
14:49 < psusi> I don't know utf-8 that well, but I would imagine the values
you are using are control codes in UTF-8 and are being interpreted as such
14:49 < jmp> that would mean Sprint interprets them differently from Sprintf
14:50 < jmp> since if you looked at the example, with Sprint it works as
expected
14:50 < MaybeSo> yeah, so if you change it to
14:50 < MaybeSo> original := `\xff\xfe\xfdABC\x01\x02test\x7f\x80\x81`
14:50 < MaybeSo> I think it does what you're saying you expect it to do
14:53 < jmp> it does.  sorry, i'm dumb
14:53 < jmp> i didn't realize you use back quotes for raw string literals
14:53 < jmp> thanks.
14:54 -!- visof [~visof@unaffiliated/visof] has quit [Quit: Leaving]
14:55 < psusi> yea, the sign bit being set means that one or more additional
characters are part of the encoding
14:56 < psusi> 0xff doesn't appear to be valid utf-8
14:56 -!- skelterjohn [~jasmuth@wsip-70-167-73-39.sd.sd.cox.net] has joined
#go-nuts
14:57 < nictuku> nsf, awesome stuff!!  props to you (re: gocode)
14:59 < MaybeSo> I fully expect him to make v2.0 off suggestions on more
idiomatic ways to program something.  After that, fetching beer...  :)
14:59 < MaybeSo> s/off/offer/
15:06 < vrtical> Yeah, I'm expecting to type package main and get the rest
of my program filled in automatically :-)
15:19 -!- g0bl1n [~pr0kter@89.214.7.172] has joined #go-nuts
15:24 -!- g0bl1n [~pr0kter@89.214.7.172] has quit [Quit: I haz a dreamz...]
15:25 -!- skelterjohn [~jasmuth@wsip-70-167-73-39.sd.sd.cox.net] has quit [Quit:
skelterjohn]
15:29 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
15:33 -!- awidegreen [~quassel@62.176.237.78] has joined #go-nuts
15:39 -!- Sacho [~sacho@213.91.244.15] has quit [Ping timeout: 258 seconds]
15:42 -!- py3k [~Py3k@203.86.138.91] has joined #go-nuts
15:43 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has quit [Remote
host closed the connection]
15:45 -!- py3k [~Py3k@203.86.138.91] has quit [Quit: leaving]
15:46 -!- macroron [~ron@c-98-242-168-49.hsd1.fl.comcast.net] has joined #go-nuts
15:46 -!- py3k [~Py3k@203.86.138.91] has joined #go-nuts
15:52 -!- py3k [~Py3k@203.86.138.91] has quit [Quit: leaving]
15:52 -!- py3k [~Py3k@219.134.63.121] has joined #go-nuts
15:53 -!- Sacho [~sacho@90-154-149-17.btc-net.bg] has joined #go-nuts
15:53 -!- py3k [~Py3k@219.134.63.121] has quit [Client Quit]
15:54 -!- py3k [~Py3k@203.86.138.91] has joined #go-nuts
15:55 -!- py3k [~Py3k@203.86.138.91] has quit [Client Quit]
15:55 -!- kanru [~kanru@118-160-160-73.dynamic.hinet.net] has quit [Ping timeout:
276 seconds]
15:57 < angasule> indeed, it looks great
15:58 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has quit [Quit: Leaving.]
16:01 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]]
16:03 -!- path[l] [~path@59.162.86.164] has joined #go-nuts
16:03 < nsf> nictuku: ;)
16:04 < nictuku> nsf: showing the top-level comment for the functions would
be a nice future for 3.0 :-)
16:05 < nsf> well I thought about docs, currently the problem is: I parse .a
(archive) files for imported modules, and they don't have any comments compiled in
16:05 < nsf> so..  I should extract them separately somehow
16:05 < nsf> maybe using godoc
16:05 < nictuku> godoc does that somehow
16:05 < nictuku> yeah
16:05 < nsf> I've never looked at it
16:06 < nictuku> but it's very useful as-is already.  great job!
16:06 < nsf> I know that it extracts docs directly from sources
16:06 -!- sladegen [~nemo@unaffiliated/sladegen] has quit [Disconnected by
services]
16:06 -!- sladegen [~nemo@unaffiliated/sladegen] has joined #go-nuts
16:08 < nsf> but first of all I'd like to work a bit on caching issues
16:08 < nsf> currently as I've said modules are cached forever and never get
reloaded
16:12 < nictuku> I'm impressed that it already works for local packages, not
just the main distribution.
16:13 < nsf> yes, yes, it's not that hard, but once you've changed the
package you need to drop daemon's cache or simply close it (forcing its restart)
16:13 < nsf> because it won't reload the package
16:14 < nsf> and importing package to a current namespace doesn't
implemented
16:15 < nsf> and there are few dark places when autocompletion drops request
with panic :D
16:15 < nsf> something like that: v := make(map[string]#
16:16 < nsf> and where # is, start autocompletion
16:16 -!- iant [~iant@62.20.124.50] has quit [Ping timeout: 264 seconds]
16:17 < nsf> it will print "PANIC" and if you have daemon started in a
separate terminal window, the daemon will print a stack trace
16:17 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]]
16:18 < nsf> and I don't want panics, that's what I'm planning to hunt down
in the first place :D
16:19 < nsf> before 2.0 and 3.0 ;)
16:22 -!- sioraiocht [~tomh@unaffiliated/sioraiocht] has joined #go-nuts
16:22 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts
16:23 -!- derferman [~derferman@dsl092-048-218.sfo4.dsl.speakeasy.net] has joined
#go-nuts
16:28 < nsf> also I don't like how Go's garbage collector works, it
collect..  mm..  garbage, but apparently it's caches by themselves eat a lot of
memory
16:28 < nsf> and it's fairly easy that gocode daemon will eat up 100 megs or
more of RAM
16:29 -!- Venom_X [~pjacobs@adsl-99-3-159-249.dsl.hstntx.sbcglobal.net] has joined
#go-nuts
16:32 * MaybeSo looks at his 30 Gb java process
16:32 * MaybeSo looks at gocode
16:32 < nsf> :D
16:32 < MaybeSo> hrm...
16:32 < MaybeSo> :D
16:32 < MaybeSo> just compare your app to Eclipse...
16:33 < nsf> I see..  then I should get used to it, I guess..
16:33 < nsf> :(
16:33 < MaybeSo> aw!
16:40 -!- ShadowIce [pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
16:42 -!- Fish [~Fish@9fans.fr] has quit [Ping timeout: 240 seconds]
16:43 -!- Fish [~Fish@9fans.fr] has joined #go-nuts
16:43 -!- Fish [~Fish@9fans.fr] has quit [Remote host closed the connection]
16:43 -!- Fish [~Fish@9fans.fr] has joined #go-nuts
16:48 < angasule> nsf: I'm pretty sure the GC will be greatly improved :-)
but yeah, 100MB is a bit excessive
16:49 < nsf> yes, that's the thing, that's why I recommend to restart gocode
daemon instead of dropping cache
16:49 < nsf> because cache drop actually doesn't really free all the memory
16:49 < nsf> :)
16:49 < nsf> and I'm pretty sure about improvement too, but the question is
when
16:50 < nsf> 20 years?  :) no thanks
16:55 < angasule> haha probably much sooner
16:55 < angasule> I'm a bit out of the loop on compilers, but isn't the gcc
version much more likely to be useful in the long term?  due to compatibility with
libraries, etc, I mean
16:56 < nsf> well, I just believe in Ken Thompson :
16:56 < nsf> :)
16:57 < nsf> I think there will be a third compiler written in Go
16:57 < nsf> eventually
16:57 -!- 15SAALQI8 [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has
joined #go-nuts
16:58 < nsf> anyway, we'll see
16:58 < nsf> GCC is a big blob really
16:58 < nsf> things like clang/clang++ show that precisely
16:58 -!- boscop_ [~boscop@g225234142.adsl.alicedsl.de] has joined #go-nuts
16:59 < nsf> they are younger, they compile faster and compiled code runs
faster
16:59 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
17:00 -!- boscop [~boscop@f055155122.adsl.alicedsl.de] has quit [Ping timeout: 265
seconds]
17:00 -!- Adys [~Adys@unaffiliated/adys] has quit [Read error: Connection reset by
peer]
17:00 -!- boscop_ [~boscop@g225234142.adsl.alicedsl.de] has left #go-nuts []
17:01 -!- boscop [~boscop@g225234142.adsl.alicedsl.de] has joined #go-nuts
17:02 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
17:04 < vrtical> sux to be google huh.  Need a compiler, oh, just get Ken
Thompson to write one :-)
17:04 < nsf> :)
17:05 < vrtical> But yeah, people probably give it too much importance, but
being self-hosting is seen as one of the milestones for a language.
17:05 -!- kingdon_ [~kingdon@helomoto.rit.edu] has quit [Read error: Operation
timed out]
17:06 -!- macroron [~ron@c-98-242-168-49.hsd1.fl.comcast.net] has quit [Quit:
Leaving]
17:13 -!- 15SAALQI8 [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has quit
[Remote host closed the connection]
17:14 -!- Adys [~Adys@unaffiliated/adys] has quit [Ping timeout: 276 seconds]
17:16 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
17:35 -!- DavidJones [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has
joined #go-nuts
17:37 -!- iubdwe [~iubdwe@atz190.neoplus.adsl.tpnet.pl] has joined #go-nuts
17:56 -!- plainhao [~plainhao@mail.xbiotica.com] has joined #go-nuts
17:58 -!- Adys [~Adys@unaffiliated/adys] has quit [Quit: I ♥ Unicode]
18:13 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
18:16 -!- Fish [~Fish@9fans.fr] has quit [Ping timeout: 260 seconds]
18:33 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has quit
[Ping timeout: 265 seconds]
18:38 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined
#go-nuts
18:43 -!- Sacho [~sacho@90-154-149-17.btc-net.bg] has quit [Ping timeout: 260
seconds]
18:43 -!- slash [~slash@94.166.185.243] has joined #go-nuts
18:47 -!- General13372 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined
#go-nuts
18:50 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has quit
[Ping timeout: 240 seconds]
18:53 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection]
18:54 -!- Adys [~Adys@unaffiliated/adys] has quit [Remote host closed the
connection]
19:02 -!- babusri [~Babu@122.166.91.24] has joined #go-nuts
19:03 -!- slash [~slash@94.166.185.243] has quit [Quit: slash]
19:06 -!- marsu [~marsu@93.14.60.163] has joined #go-nuts
19:07 -!- MaybeSo [~jimr@lions.Stanford.EDU] has quit [Ping timeout: 240 seconds]
19:16 < nictuku> so you can't use _test.go for files with "package main"?
19:18 < exch> they need to have the same package name as the package they
are tests for
19:18 < nictuku> yes, but they can't be main apparently
19:19 < exch> main is a special case name
19:19 < exch> it doesn't really make much sense to call a package 'main'
anyway.  Very nondescript :p
19:19 -!- Fish [~Fish@9fans.fr] has joined #go-nuts
19:20 < nictuku> this is not a library
19:20 < exch> If it's a regular program, you generally won't use the gotest
facilities.  So no *_test.go file required.
19:20 < exch> the program itself should be all the tests you need
19:22 < nictuku> I disagree.  normal programs require tests as much as a
library.
19:22 < exch> Yes, but why not simply put them in the program itself?
19:22 < exch> The point of gotest is to ease the testing of non-executable
packages.  it saves you from manually having to create a new program and do all
the linking and setting up of testing facilities.  it's really just a convenience
feature for package development.
19:23 < nictuku> I don't want to add unit test code to my binary, of course
19:24 < nictuku> I thought the point of gotest was to be a testing tool.
period.
19:24 < nictuku> I mean, I see your point, but I don't agree :-).
19:24 < exch> fair enough :p
19:24 < angasule> do you call that an argument?  pff
19:24 < nictuku> I'll probably librarify the program, and move everything to
a real package except main()
19:25 < exch> gotest doesn't have a whole lot in the way of unit testing
facilities anyways.  I think you'll be better of having a decent unit test lib for
that purpose
19:25 < nictuku> but then I'll have to fight for an hour to cook a proper
Makefile :-(
19:28 < nictuku> is there a more modern way to do this?
http://stackoverflow.com/questions/1766720/multi-package-makefile-example-for-go
19:31 < exch> ugh, that is ugly.  ideally you'd have a tool that resolves
dependency order for you.  There's a few around, but other than that you're stuck
with the manual makefile way.  Mine aren't as nasty looking as that one though..
I do use multiple makefiles
19:32 < nictuku> is your Makefile public so I can steal it ;-)?
19:32 < nictuku> I realize gobuild is out there, and I use it for another
project.  But this is another person's
19:33 < exch> Lemme see if I can find an example.  it's hardly 'established
protocol' though, so I expect some resistance from makefile purists :p
19:35 < nictuku> I dont mind having multiple Makefiles, but I dont want to
have to install a sub-package to build the other package.  but I think I know how
to do it, using DIRS=
19:36 < exch> In that sort of situation, I just override the install rule to
copy the packages to a project-local 'lib' dir
19:36 < nictuku> hmm I see
19:37 < exch> you can then import it into your code with something like:
import "../lib/foo"
19:43 -!- plainhao [~plainhao@mail.xbiotica.com] has quit [Quit: plainhao]
19:43 < jessta> http://code.google.com/p/godag/ looks pretty good
19:44 < nictuku> seems similar to gobuild and others
19:47 < nictuku> we definitely need a standard Makefile replacement
19:52 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
19:55 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 276 seconds]
19:57 < angasule> no dynamic libs is intentional?  :?
19:58 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
19:58 < DavidJones> you mean no shared libraries?
19:58 < DavidJones> no dynamic linking?
19:59 < DavidJones> this is intentional
20:00 -!- sladegen [~nemo@unaffiliated/sladegen] has quit [Ping timeout: 245
seconds]
20:00 < angasule> I disagree with the links I have been reading so far about
that subject
20:00 < DavidJones> define "the links"
20:00 < angasule> oh, I'm reading the thread on go-nuts email list
20:00 -!- awidegreen [~quassel@62.176.237.78] has quit [Remote host closed the
connection]
20:00 -!- sladegen [~nemo@unaffiliated/sladegen] has joined #go-nuts
20:01 < DavidJones> there are at least two ; )
20:01 -!- artefon [~thiagon@150.164.2.20] has quit [Quit: Leaving]
20:01 < exch> I'm all for dynamic loading of code.  So far I haven't needed
dynamic linking for that though
20:02 < DavidJones> I see the advantages of both dynamic and static linking
20:02 < exch> nictuku: this is how I do the multipackage thing:
http://github.com/jteeuwen/go-example-multipkg
20:02 < exch> (queue rampant flames for silly makefile use) :D
20:02 < angasule> well, on something like Debian, dynamic linking is useful
20:02 < DavidJones> as well as the disadvantages.
20:03 < angasule> I guess preserving binary compatibility is more important
for Solaris and other commercial systems.  I don't care.
20:03 < DavidJones> I think both should be allowed.
20:03 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 245 seconds]
20:03 < DavidJones> Well, especially if I share my binary, I rather want it
statically linked.
20:04 < jessta> so many nasty hacks to get around the dependancy hell that
is introduced by dynamic linking of shared libraries
20:04 < nictuku> exch: that's a lot man :-)
20:04 < nictuku> s/that/thanks/
20:04 < jessta> look at what openoffice and firefox do
20:04 < exch> np.
20:04 < DavidJones> jessta, that's what I'm thinking about...
20:04 < jessta> and what microsoft did to fix DLL hell
20:04 -!- ville- [~ville@a107.ath.cx] has quit [Ping timeout: 276 seconds]
20:05 < DavidJones> on the other hand, dynamically linking can be very
useful when you know everything about the environment you're using the application
in
20:05 < jessta> dynamic loading is fine
20:05 < jessta> like how the linux kernel does it
20:06 -!- hokapoka [~hokapoka@hoka.hokapoka.com] has quit [Ping timeout: 260
seconds]
20:06 < angasule> jessta: I'd contend that Firefox and OO.org are nasty to
begin with
20:07 < jessta> angasule: yes, but all similarly large commerical programs
do the same thing
20:07 < jessta> because shared libraries is a support nightmare
20:08 < angasule> jessta: those systems tend to be nasty to begin with!
20:08 < angasule> I am working on a nasty piece of code, so you'll hear that
a lot from me :P
20:10 < jessta> just wait until you have two pieces of code that require two
different versions of the same library and you want to use thing together
20:10 < jessta> *use them together
20:10 < jessta> modern package management hides a lot of the problems
20:11 -!- ville- [~ville@a107.ath.cx] has joined #go-nuts
20:11 -!- iubdwe [~iubdwe@atz190.neoplus.adsl.tpnet.pl] has quit [Ping timeout:
240 seconds]
20:11 < angasule> jessta: like, Qt4 and Qt3?  works like a charm.
20:12 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Read error: Connection
reset by peer]
20:12 -!- hokapoka [~hokapoka@hoka.hokapoka.com] has joined #go-nuts
20:12 -!- tensorpudding [~user@99.148.193.154] has quit [Ping timeout: 246
seconds]
20:12 < angasule> I really wouldn't want all my Qt4 programs to each load
Qt4-core
20:12 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 248 seconds]
20:13 < jessta> they'd only load the parts they actually used
20:13 -!- iubdwe [~iubdwe@atx14.neoplus.adsl.tpnet.pl] has joined #go-nuts
20:13 < DavidJones> and they'll probably both load about the same parts.
20:14 < jessta> if they do pretty much the same thing then they might
20:14 -!- mat_ [~mat@mx3.absolight.net] has quit [Ping timeout: 248 seconds]
20:14 < angasule> jessta: they have a GUI :-P
20:15 < angasule> so, let's say a bug is found in Qt4-core, now every single
Qt4 app has to be recompiled.  yay!
20:16 < DavidJones> with Qt? sure.
20:16 -!- tensorpudding [~user@99.148.200.123] has joined #go-nuts
20:16 < jessta> but Qt is crazy anyway
20:17 -!- mat_ [~mat@mx3.absolight.net] has joined #go-nuts
20:17 < angasule> same with GTK
20:17 < grncdr> anybody have suggestions on how to compare the "sameness" of
two ordered lists?
20:17 < angasule> unless you're arguing we shouldn't use GUI apps?
20:17 < grncdr> I'm stuck doing it in java, but I figure this a better
channel for what is essentially an algo question
20:17 < DavidJones> back to ncurses!
20:17 < DavidJones> no wait...  that's a library, too!
20:18 < jessta> angasule: they don't use the same widgets
20:18 < grncdr> the idea is that I need to compare 2 lists of numbers, and
derive some metric for how similar their orderings are
20:19 < angasule> jessta: I know.  But those two toolkits cover the vast
majority of linux apps
20:19 < jessta> and you'd only need to recompile the ones that uses the code
that had the bug
20:19 < jessta> angasule: you don't understand static linking ey?
20:19 < DavidJones> grncdr what is the sameness of their ordering?  I mean,
when are two lists more similar and why?
20:19 -!- path[l] [UPP@120.138.102.50] has joined #go-nuts
20:19 < DavidJones> jessta the issue is you have to recompile any.  And now
let's say it is in a very frequently used part of the program
20:20 < angasule> jessta: I do, but it's a PITA, and linking is a rather
awful thing (ok, in Go it's exponentially better, but still).
20:22 < grncdr> DavidJones: that's kind of my question ;) but I *think* it
should be a measure of the number of items that are ordered the same in each list
vs.  the number of times I have to skip or seek through items in the lists to get
them back on the same item
20:22 < grncdr> a sort of hits vs.  misses approach is what I was going for
20:23 -!- Netsplit *.net <-> *.split quits: derferman, iubdwe, scoeri, ukai,
RobertLJ, suiside, Boney, gnuvince_, Davidian1024, DJCapelis, (+77 more, use
/NETSPLIT to show all of them)
20:23 -!- Netsplit *.net <-> *.split quits: madari_, kkress, fluffle,
mfoemmel, cco3-hampster, jesusaur
20:26 -!- 16SAAL6AU [~vince@64.235.207.135] has joined #go-nuts
20:26 -!- mat_ [~mat@mx3.absolight.net] has joined #go-nuts
20:26 -!- path[l] [UPP@120.138.102.50] has joined #go-nuts
20:26 -!- tensorpudding [~user@99.148.200.123] has joined #go-nuts
20:26 -!- iubdwe [~iubdwe@atx14.neoplus.adsl.tpnet.pl] has joined #go-nuts
20:26 -!- hokapoka [~hokapoka@hoka.hokapoka.com] has joined #go-nuts
20:26 -!- Fish [~Fish@9fans.fr] has joined #go-nuts
20:26 -!- marsu [~marsu@93.14.60.163] has joined #go-nuts
20:26 -!- General13372 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined
#go-nuts
20:26 -!- DavidJones [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has
joined #go-nuts
20:26 -!- boscop [~boscop@g225234142.adsl.alicedsl.de] has joined #go-nuts
20:26 -!- ShadowIce [pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
20:26 -!- sioraiocht [~tomh@unaffiliated/sioraiocht] has joined #go-nuts
20:26 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
20:26 -!- psusi [hidden-use@iriserv.iradimed.com] has joined #go-nuts
20:26 -!- Guest83453 [~irc@209.17.191.58] has joined #go-nuts
20:26 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has joined
#go-nuts
20:26 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
20:26 -!- gid [~gid@220-253-150-39.VIC.netspace.net.au] has joined #go-nuts
20:26 -!- photron [~photron@port-92-201-232-104.dynamic.qsc.de] has joined
#go-nuts
20:26 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts
20:26 -!- ampleyfly [~ampleyfly@h-148-139.A163.priv.bahnhof.se] has joined
#go-nuts
20:26 -!- Innominate [~sirrobin@cpe-076-182-074-143.nc.res.rr.com] has joined
#go-nuts
20:26 -!- danderson [~dave@atlas.natulte.net] has joined #go-nuts
20:26 -!- mjf- [~mjf@tech.cas.ip-anywhere.net] has joined #go-nuts
20:26 -!- cco3-hampster [~conleyo@nat/google/x-whyjulnehrrdxoyz] has joined
#go-nuts
20:26 -!- kkress [~kkress@c-65-49-35-49.tilenetworks.com] has joined #go-nuts
20:26 -!- madari_ [madari@AM.irc.fi] has joined #go-nuts
20:26 -!- mfoemmel [~mfoemmel@chml01.drwholdings.com] has joined #go-nuts
20:26 -!- fluffle [~camelid@s.pl0rt.org] has joined #go-nuts
20:26 -!- kmeyer [~konrad@fedora/kmeyer] has joined #go-nuts
20:26 -!- nf [~nf@203-158-40-182.dyn.iinet.net.au] has joined #go-nuts
20:26 -!- segy [~segfault@pdpc/supporter/active/segy] has joined #go-nuts
20:26 -!- suiside [~suiside@unaffiliated/suiside] has joined #go-nuts
20:26 -!- Altercation [~Altercati@pdpc/supporter/active/altercation] has joined
#go-nuts
20:26 -!- phirox [~phirox@g225253.upc-g.chello.nl] has joined #go-nuts
20:26 -!- jesusaur [jesusaur@firefly.cat.pdx.edu] has joined #go-nuts
20:26 -!- drhodes [~none@209-20-72-61.slicehost.net] has joined #go-nuts
20:26 -!- apexo [~apexo@daedalus.isaco.de] has joined #go-nuts
20:26 -!- plexdev [~plexdev@arthur.espians.com] has joined #go-nuts
20:26 -!- atsampson [~ats@ishman.kent.ac.uk] has joined #go-nuts
20:26 -!- scoeri [~jdekoste@soft.vub.ac.be] has joined #go-nuts
20:26 -!- Namegduf [~namegduf@eu.beshir.org] has joined #go-nuts
20:26 -!- Soultaker [~maks@hell.student.utwente.nl] has joined #go-nuts
20:26 -!- Fish-Work [~Fish@86.65.182.207] has joined #go-nuts
20:26 -!- willdye [~willdye@fern.dsndata.com] has joined #go-nuts
20:26 -!- ServerMode/#go-nuts [+v danderson] by leguin.freenode.net
20:26 -!- jsharkey [jsharkey@208.43.219.52] has joined #go-nuts
20:26 -!- tsung [~jon@112.104.53.151] has joined #go-nuts
20:26 -!- cw [~cw@parsec.stupidest.org] has joined #go-nuts
20:26 -!- jer [~jtregunna@unaffiliated/jer] has joined #go-nuts
20:26 -!- Boney [~paul@210-84-63-248.dyn.iinet.net.au] has joined #go-nuts
20:26 -!- maht [~maht__@85-189-31-174.proweb.managedbroadband.co.uk] has joined
#go-nuts
20:26 -!- Paradox924X [~Paradox92@vaserv/irc/founder] has joined #go-nuts
20:26 -!- forgey [brook@seahawk.ript.net] has joined #go-nuts
20:26 -!- samferry [sam@atheme/member/samferry] has joined #go-nuts
20:26 -!- crashR [~crasher@codextreme.pck.nerim.net] has joined #go-nuts
20:26 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has joined #go-nuts
20:26 -!- mafs [~maikeru@unaffiliated/maikeru/x-7708887] has joined #go-nuts
20:26 -!- lmoura [~lauromour@200.184.118.130] has joined #go-nuts
20:26 -!- rsaarelm [~rsaarelm@cs181128175.pp.htv.fi] has joined #go-nuts
20:26 -!- xb95 [~weechat@dreamwidth/staff/mark] has joined #go-nuts
20:26 -!- jdp [~gu@24.238.32.162.res-cmts.segr.ptd.net] has joined #go-nuts
20:26 -!- ukai [~ukai@220.109.219.244] has joined #go-nuts
20:26 -!- korfuri [~korfuri@eth0.korfuri.fr] has joined #go-nuts
20:26 -!- smw [~smw@pool-71-183-88-124.nycmny.fios.verizon.net] has joined
#go-nuts
20:26 -!- prip [~foo@host97-130-dynamic.36-79-r.retail.telecomitalia.it] has
joined #go-nuts
20:26 -!- raylu [raylu@c-98-234-85-38.hsd1.ca.comcast.net] has joined #go-nuts
20:26 -!- mpl [~mpl@smgl.fr.eu.org] has joined #go-nuts
20:26 -!- jefferai [~quassel@kde/amarok/mitchell] has joined #go-nuts
20:26 -!- pjm0616 [~user@110.9.28.120] has joined #go-nuts
20:26 -!- smcq__ [~smcq@smcq.net] has joined #go-nuts
20:26 -!- slpsys [~marc@209-20-75-46.slicehost.net] has joined #go-nuts
20:26 -!- 45PAAVR9K [~tokuhirom@s230.GtokyoFL21.vectant.ne.jp] has joined #go-nuts
20:26 -!- chaos95 [chaos95@mafianode.com] has joined #go-nuts
20:26 -!- i__ [~none@unaffiliated/i--/x-3618442] has joined #go-nuts
20:26 -!- Method [~Method@unaffiliated/method] has joined #go-nuts
20:26 -!- roto [~roto@64.79.202.154] has joined #go-nuts
20:26 -!- jnwhiteh [~jnwhiteh@WoWUIDev/WoWI/Featured/Dongle/cladhaire] has joined
#go-nuts
20:26 -!- Yappo__ [~yappo@221x243x122x124.ap221.ftth.ucom.ne.jp] has joined
#go-nuts
20:26 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts
20:26 -!- d_m [~d_m@207.245.124.125] has joined #go-nuts
20:26 -!- ivan` [~ivan@li14-39.members.linode.com] has joined #go-nuts
20:26 -!- DJCapelis [~djc@blender/coder/DJCapelis] has joined #go-nuts
20:26 -!- KirkMcDonald [~Kirk@pysoy/developer/KirkMcDonald] has joined #go-nuts
20:26 -!- soul9 [~none@unaffiliated/johnnybuoy] has joined #go-nuts
20:26 -!- shawn_ [~shawn@208-78-98-92.slicehost.net] has joined #go-nuts
20:26 -!- kevinwatt [kevin@59-125-147-75.HINET-IP.hinet.net] has joined #go-nuts
20:26 -!- Archwyrm [~archwyrm@archwyrm.net] has joined #go-nuts
20:26 -!- zeroXten [~zeroXten@0x10.co.uk] has joined #go-nuts
20:26 -!- jessta [~jessta@li7-205.members.linode.com] has joined #go-nuts
20:26 -!- fuzzybyte [~fuzzybyte@a47.org] has joined #go-nuts
20:26 -!- dho [~devon@onager.omniti.com] has joined #go-nuts
20:26 -!- Venom_X_ [~pjacobs@adsl-99-3-159-249.dsl.hstntx.sbcglobal.net] has
joined #go-nuts
20:26 < grncdr> I'm trying to compare an incorrect sort against a correct
one, and figure out how incorrect it is
20:27 -!- Netsplit *.net <-> *.split quits: segy, drhodes, smcq__,
45PAAVR9K, DJCapelis, 16SAAL6AU, Boney, gid, mjf-, jnwhiteh, (+82 more, use
/NETSPLIT to show all of them)
20:28 -!- Adys_ [~Adys@unaffiliated/adys] has joined #go-nuts
20:28 -!- Netsplit over, joins: soul9, Fish, i__, jdp, maht, Fish-Work, ivan`,
stalled, mpl, shawn_ (+82 more)
20:29 -!- Venom_X [~pjacobs@adsl-99-3-159-249.dsl.hstntx.sbcglobal.net] has quit
[Ping timeout: 241 seconds]
20:29 -!- Netsplit *.net <-> *.split quits: babusri, SecretAgent, segy,
rejb, drhodes, 45PAAVR9K, smcq__, DJCapelis, 16SAAL6AU, Boney, (+100 more, use
/NETSPLIT to show all of them)
20:29 < angasule> uh, hi again heh
20:30 -!- Netsplit over, joins: Fish, Fish-Work, maht, jdp, i__, soul9, mpl,
stalled, ivan`, jb55 (+98 more)
20:31 -!- mat__ [~mat@mx3.absolight.net] has joined #go-nuts
20:31 -!- mat_ [~mat@mx3.absolight.net] has quit [Ping timeout: 248 seconds]
20:33 -!- psusi [hidden-use@iriserv.iradimed.com] has quit [Quit: ChatZilla 0.9.86
[Firefox 3.6.2/20100316074819]]
20:36 -!- mat__ [~mat@mx3.absolight.net] has joined #go-nuts
20:36 -!- mat_ [~mat@mx3.absolight.net] has quit [Read error: Connection reset by
peer]
20:41 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
20:41 < angasule> anyway, is this working right now?
20:43 < taruti> yes
20:43 -!- gnuvince_ [~vince@64.235.207.135] has joined #go-nuts
20:43 -!- mat__ [~mat@mx3.absolight.net] has joined #go-nuts
20:44 -!- mat_ [~mat@mx3.absolight.net] has quit [Read error: Connection reset by
peer]
20:45 -!- tvw [~tv@e176004232.adsl.alicedsl.de] has joined #go-nuts
20:45 < angasule> I think using only static linking is good for systems that
lack package managers, I think systems that lack package managers are awful.
20:49 -!- babusri [~Babu@122.166.91.24] has quit [Ping timeout: 276 seconds]
20:49 -!- napsy [~luka@212.235.174.112] has quit [Read error: Operation timed out]
20:50 < jessta> angasule: also, for Go at this stage, having everything
statically linked means that you can give a small Go binary to someone and it will
actually work on their machine without them having to install the specific version
of Go you wrote it for.
20:52 -!- bmizerany [~bmizerany@dsl081-064-072.sfo1.dsl.speakeasy.net] has joined
#go-nuts
20:52 -!- Kashia [~Kashia@port-92-200-179-75.dynamic.qsc.de] has joined #go-nuts
20:53 < angasule> jessta: I'm not discussing the 'at this stage' issue, just
the general sentiment that shared linking is evil
20:55 < plexdev> http://is.gd/dMZ2R by [Russ Cox] in 4 subdirs of
go/src/cmd/ -- 5g: fix build
20:56 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
20:56 -!- Adys [~Adys@unaffiliated/adys] has quit [Ping timeout: 248 seconds]
21:00 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
21:02 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Quit: bbiab, installing
software update]
21:10 -!- clintonc [~clintonc@ool-18bdec73.dyn.optonline.net] has joined #go-nuts
21:11 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
21:15 -!- lmoura [~lauromour@200.184.118.130] has quit [Ping timeout: 258 seconds]
21:15 -!- DavidJones [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has quit
[Remote host closed the connection]
21:17 -!- SerraAvenger [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has
joined #go-nuts
21:17 -!- SerraAvenger [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has
left #go-nuts []
21:17 -!- SerraAvenger [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has
joined #go-nuts
21:18 -!- ckennelly [~ckennelly@beryllium.caltech.edu] has joined #go-nuts
21:18 -!- SerraAvenger [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has
quit [Read error: Connection reset by peer]
21:22 -!- angasule [c80571ea@gateway/web/freenode/ip.200.5.113.234] has quit
[Quit: Page closed]
21:24 -!- SerraAvenger [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has
joined #go-nuts
21:25 -!- SerraAvenger [~DavidJone@dslb-084-057-122-171.pools.arcor-ip.net] has
quit [Remote host closed the connection]
21:26 -!- iubdwe [~iubdwe@atx14.neoplus.adsl.tpnet.pl] has quit [Ping timeout: 258
seconds]
21:29 -!- path[l] [UPP@120.138.102.50] has quit [Quit: path[l]]
21:30 -!- ShadowIce [pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
21:30 -!- angasule [c80571ea@gateway/web/freenode/ip.200.5.113.234] has joined
#go-nuts
21:31 < angasule> 23" at 1080p resolution, nice :D
21:31 -!- lmoura [~lauromour@200.184.118.136] has joined #go-nuts
21:33 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
21:34 -!- zozoR [~zozoR@x1-6-00-0e-2e-a3-e0-23.k377.webspeed.dk] has quit [Quit:
Morten.  Desu~]
21:35 < ckennelly> Hi. I'm trying to learn Go (coming from a C/C++ focused
background).  Are there any small projects anyone could suggest that would force
me to learn the language's features?
21:36 -!- tvw [~tv@e176004232.adsl.alicedsl.de] has quit [Remote host closed the
connection]
21:38 < exch> write a simple web server, or echo server perhaps?
21:39 < exch> http://golang.org/doc/codelab/wiki/ this may help
21:39 < Namegduf> Write a decent forum.
21:39 < Namegduf> :P
21:40 < smw> ckennelly, write a dyndns client.  We need another one of those
;-)
21:40 < ckennelly> smw: lol
21:40 < jessta> rewrite some of your C/C++ projects
21:41 < ckennelly> jessta: my C/C++ projects tend to be massive, or C/C++
specific.  (I doubt Go needs a malloc implementation)
21:42 < jessta> a simpler cut down version
21:43 < vrtical> what about a go compiler?  :-)
21:44 < smw> yes, we need a go compiler written in go!
21:44 < napsy> we need a go compiler for llvm
21:44 < smw> actually a go interpreter would be awesome :-D
21:45 -!- imrahjl [~josh@DHCP-135-196.caltech.edu] has joined #go-nuts
21:45 < angasule> ckennelly: a go garbage collector?  :)
21:47 < jessta> smw: exp/eval
21:47 < jessta> smw: works on everything except importing packages
21:47 -!- ExtraSpice [~XtraSpice@88.118.32.225] has quit [Quit: Leaving]
21:47 < jessta> smw: someone also made a go compiler in go
21:48 -!- lmoura [~lauromour@200.184.118.136] has quit [Ping timeout: 260 seconds]
21:49 * araujo writing a small shell
21:51 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has quit [Remote
host closed the connection]
21:54 -!- Fish [~Fish@9fans.fr] has quit [Remote host closed the connection]
21:55 < angasule> araujo: ECMA-48 is a PITA, though!
22:01 -!- lmoura [~lauromour@200.184.118.130] has joined #go-nuts
22:44 -!- artefon [~thiago@189.107.178.3] has joined #go-nuts
22:45 -!- ilovefairuz [~ilovefair@unaffiliated/violinappren] has joined #go-nuts
22:47 < ilovefairuz> how do I convert types?  ie a string to an int
22:47 < ilovefairuz> go rocks by the way, even though the declaration syntax
is a little weird
22:49 < exch> ilovefairuz: check out the strconv package
22:49 < ilovefairuz> and, hopefully, in its efforts at being terse, it
doesn't end up being a write-only language
22:50 < exch> It's very readable :)
22:53 < ilovefairuz> thanks, exch
22:57 < ilovefairuz> interestingly, the slice-like shortcut for defining an
array without explicitly specifying its size ( []int{1,2,3} ) doesn't pass
compiler checks when prefixed with a & and passed to a function
22:57 < ilovefairuz> "cannot use &slice literal (type *[]int) as type []int
in function argument"
22:57 < ilovefairuz> but [...] works
22:59 < ilovefairuz> the function expects an single "x []int" argument
22:59 < exch> it expects a slice.  by using &, you are passing it a pointer
to a slice
22:59 < exch> they are fundamentally different types
23:00 < exch> you can omit the & when passing it to the function.  When you
use a slice, you don't risk copying the data since a slice is nothing more than a
thin 'window' into an underlying fixed array.  So slices are basically always 'by
reference'.
23:00 < exch> same goes for maps
23:01 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has
quit [Ping timeout: 265 seconds]
23:01 < ilovefairuz> exch: well the intention was not to create a slice but
an array using the tersest syntax possible (which looks like a slice) but i guess
that's ambiguous (as to whether it's an array or a slice)
23:02 < exch> yea..  Something created without explicitely passing it a
size, is a slice.  Not an array
23:05 < ilovefairuz> exch: but a declaration of the form 's :=
sum([]int{1,2,3})' creates an array, doesn't it?
23:06 < exch> Nope, a slice with 3 elements (1, 2 and 3)
23:06 < ilovefairuz> or...  creates an anonymous an array and slices it?
23:06 < ilovefairuz> ah
23:06 < exch> sum([3]int{1,2,3}) <- that makes an array
23:07 < exch> takes a bit of getting used to :) Arrays are rarely used
directly.  Most of the go code will ideally use slices
23:08 < ilovefairuz> it raises interesting questions about the manner we
used to code in "classical" languages, i guess go is not afraid of being a systems
language but hopefully that won't limit its mainstream acceptance
23:10 < ilovefairuz> raised an eye brow when I saw _
23:10 < ilovefairuz> bad taste from Perl, haha
23:10 < exch> One of the reasons I like Go is because it's afraid to
challenge the status quo
23:10 < exch> Ah yes, the black hole.  I love it :)
23:11 < exch> *It's not afraid
23:13 -!- asyncster [~user@206.169.213.106] has joined #go-nuts
23:16 -!- asyncster [~user@206.169.213.106] has left #go-nuts []
23:16 -!- hoisie [~user@206.169.213.106] has joined #go-nuts
23:17 < hoisie> are there docs about calling Go code from C? I'm looking
into making a wrapper for libyaml
23:19 < hoisie> or something that can manipulate Go data structures in C
23:19 < KirkMcDonald> hoisie: Callbacks aren't really a thing yet.
23:20 < exch> There's some hacky stuff available for Cgo, but i'm not sure
how efficient/useful it is yet
23:22 < exch> there was a ML post about it a while ago, but the search seems
to be broken atm
23:22 -!- marsu [~marsu@93.14.60.163] has quit [Quit: Leaving]
23:25 -!- tensorpudding [~user@99.148.200.123] has quit [Ping timeout: 240
seconds]
23:26 < exch> hmm.  for some reason os.Getenv("HOSTNAME") returns an empty
string.  The var exists and using other vars with os.Getenv() works fine
23:26 < ilovefairuz> are primitives OO-like objects in go?  ala Ruby
23:28 < ilovefairuz> exch: works for me
23:29 < exch> mm weird.  It keeps telling me the "HOSTNAME" var doesn't
exist
23:29 -!- tensorpudding [~user@99.56.175.166] has joined #go-nuts
23:29 < ilovefairuz> why the second E is not capitalized!
23:30 < exch> That's the case with most pf the standard api as far as I know
23:30 < exch> Just a naming convention choice I suppose
23:32 < ilovefairuz> seems the names in the whole 'os' package are
inconsistently capitalized
23:33 < ilovefairuz> NewFile, TempDir, ForkExec, ..
23:33 < exch> yea, there's some camcelcase names in there
23:34 < ilovefairuz> a little counterproductive
23:34 < angasule> I was thinking of doing Go bindings for OpenAL
23:35 < vrtical> well os.Getenv is pretty clearly getenv(3).  Looks like
they chose not to add extra capitalisation to already-existing names.
23:36 < vrtical> UNIX programmers would be a bit ticked off by ChMod, ChOwn
etc, though I dare say they'd get used to it.
23:36 < ilovefairuz> vrtical: except for the..  first letter?  it's not a
good enough execute not to be consistent
23:36 < exch> the first letter has to be capitalzed
23:37 < ilovefairuz> s/execute/execuse
23:37 < exch> the capital indicates an exported name
23:37 < exch> anything starting with a lowercase char is private to the
package
23:38 < ilovefairuz> having consistent capitalization makes a standard
library a lot more intuitive
23:39 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 260 seconds]
23:39 -!- artefon [~thiago@189.107.178.3] has quit [Quit: bye]
23:40 < vrtical> You do have a point.  Quick gang, tell me without checking
whether it's os.SymLink or os.Symlink!  But the decision has been made and I don't
think it's going to stop anyone using Go :-)
23:41 < ilovefairuz> oh well there's always deprecation!
23:42 < ilovefairuz> but hey it's not as bad as PHP
23:43 < KirkMcDonald> The extra caps would be maddening.
23:46 < ilovefairuz> KirkMcDonald: the point is being consistent, with or
without the caps
23:46 < exch> Pretty much everything else in the go lib is camelcased
23:46 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has joined
#go-nuts
23:47 < ilovefairuz> 'io' looks all camelcased with one exception
23:48 < KirkMcDonald> I would argue that these ancient Unix terms are
properly thought of as a single word.
23:49 < KirkMcDonald> It takes more mental effort to decompose them into
their component words than to remember the familiar terms.
23:50 -!- Adys [~Adys@unaffiliated/adys] has quit [Quit: I ♥ Unicode]
23:50 < ilovefairuz> Go's target audience isn't just Unix daemon writers, is
it?
23:51 < exch> within google it's use is mainly server related tools.  At
least thta's what has been mentioned in various talks
23:51 < angasule> what is the regexp for "any unicode letter"?  :?
23:52 < KirkMcDonald> If you want to give os.Chown a "nicer" name, you might
as well call it os.ChangeOwner.
23:52 < KirkMcDonald> os.ChOwn is just all kinds of awkward.
23:53 < exch> '$ HOSTNAME=$HOSTNAME ./app' For some reason that's the only
way I can make os.Getenv() find the HOSTNAME var :<
23:53 < KirkMcDonald> exch: Is HOSTNAME an environment variable?
23:53 < exch> it is
23:53 < exch> all other env vars work fine
23:53 < KirkMcDonald> exch: man bash suggests it is a shell variable.
23:53 < exch> hmm
23:54 < ilovefairuz> exch: what OS/distro?
23:54 < exch> 64 bit arch linux
23:54 < KirkMcDonald> Just because echo $FOO gives you a value does not mean
that $FOO is an environment variable.
23:55 < ilovefairuz> 'export' makes it one
23:55 < KirkMcDonald> Yes.
23:55 < KirkMcDonald> Likewise assigning it before the command.
23:55 < exch> My understanding of an environment variable must be off then.
It's listed with 'set'
23:56 < KirkMcDonald> set lists shell variables, too.
23:56 < exch> ah well.  if it's not, i'll have to find another way to get at
the system's hostname
23:56 < ilovefairuz> exch: bash has a 'lesser scope' (if you will) type of
variables that are normally inaccessible to binaries running within it
23:57 < KirkMcDonald> /etc/hostname ?
23:57 < exch> ilovefairuz: that's probably why fork() requires explicitely
passing any require environment variables then
23:58 -!- LeNsTR [~lenstr@unaffiliated/lenstr] has joined #go-nuts
23:58 < exch> KirkMcDonald: arch linux has no /etc/hostname file
23:58 < ilovefairuz> exch: that's what bash does to run a binary
23:59 -!- angasule [c80571ea@gateway/web/freenode/ip.200.5.113.234] has quit
[Quit: Page closed]
23:59 < exch> I suppose I could just parse the output of ifconfig
23:59 < KirkMcDonald> exch: There is also the gethostname syscall, though
curiously the syscall module doesn't have an interface to it.
23:59 < KirkMcDonald> So you'd have to call it the hard way...
23:59 < ilovefairuz> exch: /etc/host, perhaps ?
23:59 < exch> ilovefairuz: nope, not that one either :)
23:59 < ilovefairuz> oh wait, it's arch?
--- Log closed Wed Jul 28 00:00:01 2010