--- Log opened Wed Feb 09 00:00:05 2011 00:02 -!- iant [~iant@nat/google/x-ffkcfuuyorkyivgr] has quit [Quit: Leaving.] 00:13 -!- niemeyer [~niemeyer@201-40-174-80.pltce701.dsl.brasiltelecom.net.br] has quit [Ping timeout: 240 seconds] 00:13 -!- paradoq [~matthew@70.94.217.104] has joined #go-nuts 00:17 -!- iant [~iant@nat/google/x-baxzdelrmbsminzc] has joined #go-nuts 00:17 -!- mode/#go-nuts [+v iant] by ChanServ 00:18 -!- Tuller [~tuller@pool-108-28-35-157.washdc.fios.verizon.net] has joined #go-nuts 00:20 -!- Tuller [~tuller@pool-108-28-35-157.washdc.fios.verizon.net] has quit [Client Quit] 00:21 -!- boscop [~boscop@f055116004.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 00:26 -!- artefon [~thiago@189.59.205.194] has quit [Quit: bye] 00:28 -!- iant [~iant@nat/google/x-baxzdelrmbsminzc] has quit [Quit: Leaving.] 00:31 -!- m4dh4tt3r1 [~Adium@75.144.24.109-BusName-walnutcreek.ca.hfc.comcastbusiness.net] has quit [Ping timeout: 255 seconds] 00:33 -!- niemeyer [~niemeyer@189.97.24.65] has joined #go-nuts 00:34 -!- iant [~iant@67.218.104.194] has joined #go-nuts 00:34 -!- mode/#go-nuts [+v iant] by ChanServ 00:35 -!- forgey [brook@seahawk.ript.net] has quit [Remote host closed the connection] 00:37 -!- m4dh4tt3r [~Adium@75.144.24.109-BusName-walnutcreek.ca.hfc.comcastbusiness.net] has joined #go-nuts 00:39 -!- tvw [~tv@e176002010.adsl.alicedsl.de] has quit [Remote host closed the connection] 00:45 -!- shvntr [~shvntr@123.89.107.184] has joined #go-nuts 00:46 -!- pharris [~Adium@rhgw.opentext.com] has quit [Quit: Leaving.] 00:53 -!- dforsyth_ [~dforsyth@egress-w.gni.yelpcorp.com] has quit [Remote host closed the connection] 00:53 -!- dforsyth_ [~dforsyth@bastion.inap.yelpcorp.com] has joined #go-nuts 00:56 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has quit [Read error: Connection reset by peer] 01:00 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined #go-nuts 01:01 < plexdev> http://is.gd/KaOHWY by [Ken Thompson] in go/src/cmd/5g/ -- peep: more optimization 01:02 -!- m4dh4tt3r [~Adium@75.144.24.109-BusName-walnutcreek.ca.hfc.comcastbusiness.net] has quit [Ping timeout: 260 seconds] 01:07 -!- m4dh4tt3r [~Adium@75.144.24.109-BusName-walnutcreek.ca.hfc.comcastbusiness.net] has joined #go-nuts 01:08 -!- dforsyth_ [~dforsyth@bastion.inap.yelpcorp.com] has quit [Remote host closed the connection] 01:08 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] 01:21 -!- dforsyth_ [~dforsyth@bastion.inap.yelpcorp.com] has joined #go-nuts 01:23 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined #go-nuts 01:25 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has left #go-nuts [] 01:28 -!- m4dh4tt3r [~Adium@75.144.24.109-BusName-walnutcreek.ca.hfc.comcastbusiness.net] has quit [Quit: Leaving.] 01:30 -!- vicevirtue [~vice@220-253-155-186.VIC.netspace.net.au] has joined #go-nuts 01:33 < plexdev> http://is.gd/x1qaGq by [Ken Thompson] in go/src/cmd/5g/ -- cgen64: dont use MVN instruction 01:35 -!- shvntr [~shvntr@123.89.107.184] has quit [Quit: leaving] 01:38 -!- Tuller [~tuller@pool-108-28-35-157.washdc.fios.verizon.net] has joined #go-nuts 01:38 -!- m4dh4tt3r [~Adium@119.sub-75-210-144.myvzw.com] has joined #go-nuts 01:41 -!- skelterjohn_ [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined #go-nuts 01:41 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit [Read error: Connection reset by peer] 01:42 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Ping timeout: 245 seconds] 01:47 -!- iant [~iant@67.218.104.194] has quit [Quit: Leaving.] 01:47 -!- dchest [~dchest@95.155.52.241] has quit [Quit: dchest] 01:48 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts 01:49 -!- niemeyer [~niemeyer@189.97.24.65] has quit [Ping timeout: 240 seconds] 01:49 -!- JusticeFries [~JusticeFr@173-8-247-218-Colorado.hfc.comcastbusiness.net] has quit [Quit: JusticeFries] 01:49 < plexdev> http://is.gd/fAlJ3k by [Alex Brainman] in go/ -- .hgignore: ignore src/pkg/runtime/version_*.go 01:49 < plexdev> http://is.gd/oLise1 by [Alex Brainman] in go/src/ -- src/run.bash: get rid of long windows expression 01:55 -!- paradoq [~matthew@70.94.217.104] has quit [Read error: Operation timed out] 01:55 -!- Tuller [~tuller@pool-108-28-35-157.washdc.fios.verizon.net] has quit [Quit: Computer has gone to sleep.] 01:57 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit [Ping timeout: 240 seconds] 01:57 -!- vice_virtue [~vice@220-253-155-186.VIC.netspace.net.au] has quit [Quit: Leaving] 01:58 -!- niemeyer [~niemeyer@187.91.218.112] has joined #go-nuts 02:05 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts 02:05 -!- xyproto [~alexander@77.40.159.131] has quit [Ping timeout: 250 seconds] 02:12 -!- dforsyth_ [~dforsyth@bastion.inap.yelpcorp.com] has quit [Quit: Computer has gone to sleep.] 02:20 -!- napsy [~luka@88.200.96.18] has quit [Ping timeout: 240 seconds] 02:26 -!- m4dh4tt3r [~Adium@119.sub-75-210-144.myvzw.com] has quit [Ping timeout: 245 seconds] 02:26 -!- Viriix [~joseph@c-24-130-195-91.hsd1.ca.comcast.net] has joined #go-nuts 02:33 -!- itrekkie [~itrekkie@ip72-211-129-122.tc.ph.cox.net] has quit [Quit: itrekkie] 02:33 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined #go-nuts 02:37 -!- decaf [~mehmet@85.106.161.148] has quit [Remote host closed the connection] 02:41 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] 02:51 -!- vice_virtue [~vice@220-253-155-186.VIC.netspace.net.au] has joined #go-nuts 02:52 -!- Tuller [~tuller@pool-108-28-35-157.washdc.fios.verizon.net] has joined #go-nuts 02:53 < vice_virtue> If I have a method (say: func (this Data) Write(data []byte) for example) which modifies the receiver, do I use a pointer for the receiver? 02:53 < Eridius> yes 02:53 < Eridius> if you don't use a pointer, then you're operating on a copy of the struct 02:54 < vice_virtue> Thanks, so then it's just like C 02:54 -!- Tuller [~tuller@pool-108-28-35-157.washdc.fios.verizon.net] has quit [Client Quit] 02:54 < Namegduf> Yeah; everything is passed by value. 02:54 < vice_virtue> ... though if "Data" were defined as: type Data []byte, then I could change the values inside of it but not extend it, correct? 02:55 < Namegduf> Yes. 02:55 < Namegduf> Slices are a reference type. 02:55 < vice_virtue> Lovely, thanks 02:55 < vice_virtue> Wait... they're sort-of a reference type... not entirely 02:55 < Namegduf> They're a reference type. 02:56 < vice_virtue> All slices of a given array point to the same array (and hence can mutate it), but the fields such as len and cap are values, aren't they? 02:57 < Namegduf> They're part of the reference type, yes. 02:58 < Namegduf> A slice is a reference to a length of data. 03:02 -!- yihuang [~yihuang@183.17.169.242] has joined #go-nuts 03:03 -!- yihuang [~yihuang@183.17.169.242] has left #go-nuts [] 03:03 < rm445> if we have two slices on an array and append to one of them such that it reallocates, do we then have two slices on two separate underlying arrays? 03:03 -!- niemeyer [~niemeyer@187.91.218.112] has quit [Ping timeout: 240 seconds] 03:06 < Eridius> rm445: I would imagine so 03:06 -!- nutate [~rseymour@cacsag4.usc.edu] has quit [Quit: I'm outta heee-eere] 03:10 < vice_virtue> Namegduf, perhaps you misunderstand me... http://pastie.org/1543469 outputs http://pastie.org/1543473 03:10 < vice_virtue> So slices are pass-by-value, even though that value includes a reference to the underlying array 03:11 < Namegduf> Yes. 03:11 < vice_virtue> A more illustrative example loops from 0 to extendTo 03:12 < Namegduf> That's what reference types are. 03:14 < vice_virtue> I'm not sure you understand me yet... a slice is a structure with (afaik) 3 fields: data, len, and cap. If it were passed by reference then I could mutate either of those three fields. Since it's not, I can only mutate the data which data references 03:14 < Namegduf> You can't manipulate any of the fields, aside by making a new slice. 03:15 < vice_virtue> I see what you mean. 03:16 < vice_virtue> Although doesn't append potentially mutate a slice? From what I recall, the only reason we need to reassign the slice in the case of append is incase the underlying array needs to be reallocated 03:16 * vice_virtue goes to investigate whether slices are in fact immutable 03:16 < Namegduf> Append mutates the array. It can't mutate the slice, it's passed by value. 03:17 < Namegduf> Slices are immutable like integers are. 03:17 < vice_virtue> :) I'll buy that 03:18 < Namegduf> I'd consider the len, certainly, to be as much a part of the referenced data as the data pointer. 03:18 < Namegduf> If you change the len, it's a difference slice pointing to a different set of data. 03:19 < Eridius> for the record, slices also contain a index into the array for the first value. That's just not exposed anywhere 03:19 < Eridius> (unlike len and cap, which are exposed via the relevant methods) 03:20 < Namegduf> Really? I thought the data pointer was just allowed to point into the middle of an array. 03:21 < vice_virtue> From the underlying representation standpoint, I believe that what Namegduf says makes more sense.. unless it's somehow GC related (I'm not sure how the GC works) 03:23 < Eridius> Namegduf: ..you may be right. I should probably shut up ;) 03:23 < Eridius> Namegduf: actually no, that's probably not true 03:23 < Eridius> Namegduf: the array has to be rooted by the slice. Unless the GC can understand pointers into the array and find the start from it 03:24 < Eridius> which I suppose is possible. In either case, it's an implementation detail 03:24 < rm445> Eridius: src/pkg/runtime/runtime.h seems to contradict you - I've only glanced at it but look at the definition of struct Slice 03:25 < Namegduf> Why does the array have to be "rooted"? 03:25 < Namegduf> The GC has to understand pointers into the middle anway 03:25 < Namegduf> *anyway 03:25 < Eridius> rm445: you may be right 03:25 < Namegduf> You can take the address of an item in an array 03:25 < Eridius> alright, back to shutting up 03:26 < Namegduf> 'sokay. 03:26 < Namegduf> I was looking for that struct. 03:30 -!- nomono [~nomono@c-69-136-253-228.hsd1.nj.comcast.net] has joined #go-nuts 03:37 < plexdev> http://is.gd/hHDZMZ by [Yasuhiro Matsumoto] in go/lib/codereview/ -- codereview: use cmd.communicate. 03:37 -!- arexus [~andrew@c-98-207-173-169.hsd1.ca.comcast.net] has quit [Quit: leaving] 03:38 -!- nomono [~nomono@c-69-136-253-228.hsd1.nj.comcast.net] has quit [Quit: Colloquy for iPad - http://colloquy.mobi] 03:40 -!- allister [~amacleod@pool-96-252-93-11.bstnma.fios.verizon.net] has joined #go-nuts 03:54 < plexdev> http://is.gd/bsJdqF by [Russ Cox] in go/src/cmd/ -- fix build clean.bash 03:56 -!- gaetan [~chatzilla@74-210-232-54.ri.cgocable.ca] has joined #go-nuts 03:57 -!- gaetan [~chatzilla@74-210-232-54.ri.cgocable.ca] has quit [Client Quit] 03:58 -!- Viriix [~joseph@c-24-130-195-91.hsd1.ca.comcast.net] has quit [Quit: Leaving] 04:00 -!- keithcascio [~keithcasc@nat/google/x-amkojzkuewntirdg] has quit [Quit: Leaving] 04:10 < plexdev> http://is.gd/W8DPlF by [Alex Brainman] in go/src/pkg/syscall/ -- syscall: implement windows version of Fsync 04:10 < plexdev> http://is.gd/D5KdTh by [Kyle Consalus] in go/src/pkg/container/ring/ -- container/ring: Replace Iter() with Do(). 04:20 -!- Netsplit *.net <-> *.split quits: jumzi, vpit3833, MX80, madari_, wm_eddie, arun, Adys, kkress, pjm0616, viirya, (+76 more, use /NETSPLIT to show all of them) 04:23 -!- allister [~amacleod@pool-96-252-93-11.bstnma.fios.verizon.net] has joined #go-nuts 04:23 -!- vice_virtue [~vice@220-253-155-186.VIC.netspace.net.au] has joined #go-nuts 04:23 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts 04:23 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts 04:23 -!- creack [~charme_g@163.5.84.215] has joined #go-nuts 04:23 -!- jumzi [~none@c-89-233-234-125.cust.bredband2.com] has joined #go-nuts 04:23 -!- jyxent [~jyxent@129.128.191.96] has joined #go-nuts 04:23 -!- j3parker [j3parker@artificial-flavours.csclub.uwaterloo.ca] has joined #go-nuts 04:23 -!- fhs [~fhs@pool-74-101-66-112.nycmny.east.verizon.net] has joined #go-nuts 04:23 -!- kkress [~kkress@kkress2.xen.prgmr.com] has joined #go-nuts 04:23 -!- sussman [~sussman@apache/committer/sussman] has joined #go-nuts 04:23 -!- davisp [~davisp@couchdb/developer/davisp] has joined #go-nuts 04:23 -!- BlaSux [7f000001@69.195.144.4] has joined #go-nuts 04:23 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has joined #go-nuts 04:23 -!- lmoura_ [~lauromour@187.59.125.148] has joined #go-nuts 04:23 -!- exch [~exch@h78233.upc-h.chello.nl] has joined #go-nuts 04:23 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has joined #go-nuts 04:23 -!- Kashia [~Kashia@port-92-200-74-207.dynamic.qsc.de] has joined #go-nuts 04:23 -!- cafesofie [~cafesofie@ool-4a5978f2.dyn.optonline.net] has joined #go-nuts 04:23 -!- Fish [~Fish@exo3753.pck.nerim.net] has joined #go-nuts 04:23 -!- ath [ath@omega.lambda.fi] has joined #go-nuts 04:23 -!- Ina [~Ina@dsl-087-195-206-242.solcon.nl] has joined #go-nuts 04:23 -!- Belg [~kim@gw-gbg.ilait.se] has joined #go-nuts 04:23 -!- neshaug [~oyvind@213.239.108.5] has joined #go-nuts 04:23 -!- Natch| [~natch@c-6dcde155.25-4-64736c10.cust.bredbandsbolaget.se] has joined #go-nuts 04:23 -!- Urmel| [~11087Urme@82-136-196-44.ip.telfort.nl] has joined #go-nuts 04:23 -!- rbraley [~rbraley@ip72-222-134-229.ph.ph.cox.net] has joined #go-nuts 04:23 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts 04:23 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts 04:23 -!- ymasory [~ymasory@c-76-99-55-224.hsd1.pa.comcast.net] has joined #go-nuts 04:23 -!- vegai [vegai@archlinux/developer/vegai] has joined #go-nuts 04:23 -!- pothos [~pothos@111-240-165-153.dynamic.hinet.net] has joined #go-nuts 04:23 -!- fzzbt [~fzzbt@77.79.7.8] has joined #go-nuts 04:23 -!- MX80 [~MX80@cust223.253.117.74.dsl.g3telecom.net] has joined #go-nuts 04:23 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has joined #go-nuts 04:23 -!- rphillips [~rphillips@unaffiliated/rphillips] has joined #go-nuts 04:23 -!- anticw [~anticw@c-67-169-68-180.hsd1.ca.comcast.net] has joined #go-nuts 04:23 -!- TheSeeker [~n@99-153-250-110.lightspeed.irvnca.sbcglobal.net] has joined #go-nuts 04:23 -!- tgall_foo [~tgall@linaro/tgall-foo] has joined #go-nuts 04:23 -!- mdxi [~mdxi@li11-97.members.linode.com] has joined #go-nuts 04:23 -!- frobnitz [~ian@king.bitgnome.net] has joined #go-nuts 04:23 -!- vpit3833 [~user@203.111.33.203] has joined #go-nuts 04:23 -!- Zoopee [alsbergt@zoopee.org] has joined #go-nuts 04:23 -!- AndyP [~andyp@ubuntu/member/andyp] has joined #go-nuts 04:23 -!- jnwhiteh [~jnwhiteh@WoWUIDev/WoWI/Featured/Dongle/cladhaire] has joined #go-nuts 04:23 -!- niekie [quasselcor@CAcert/Assurer/niekie] has joined #go-nuts 04:23 -!- pr [phil@unaffiliated/pr] has joined #go-nuts 04:23 -!- Mr_Dark [~dk@poviko.demon.nl] has joined #go-nuts 04:23 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has joined #go-nuts 04:23 -!- bfrank [~brad@cpe-098-026-048-143.nc.res.rr.com] has joined #go-nuts 04:23 -!- Rennex [rennex@giraf.fi] has joined #go-nuts 04:23 -!- rm445 [rm445@pip.srcf.societies.cam.ac.uk] has joined #go-nuts 04:23 -!- [muttox] [muttox@creep.bur.st] has joined #go-nuts 04:23 -!- wm_eddie [~wm_eddie@kanna.wm-eddie.info] has joined #go-nuts 04:23 -!- drry [~drry@unaffiliated/drry] has joined #go-nuts 04:23 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has joined #go-nuts 04:23 -!- LittleQNCCU [~littleq@dream.cs.nccu.edu.tw] has joined #go-nuts 04:23 -!- kurt [kurt@pdpc/supporter/active/kurt] has joined #go-nuts 04:23 -!- grumpytoad [~niel@t1004.greatnet.de] has joined #go-nuts 04:23 -!- impl [impl@atheme/member/impl] has joined #go-nuts 04:23 -!- Guest1544 [~irc@209.17.191.58] has joined #go-nuts 04:23 -!- ampleyfly [ampleyfly@gateway/shell/blinkenshell.org/x-vwttvdghqwsozmwa] has joined #go-nuts 04:23 -!- tux21b [~christoph@pyhost.srv.tux21b.org] has joined #go-nuts 04:23 -!- davvid [~davvid@208-106-56-2.static.dsltransport.net] has joined #go-nuts 04:23 -!- mikejs [~mike@ec2-174-129-238-128.compute-1.amazonaws.com] has joined #go-nuts 04:23 -!- taruti [taruti@ultra.violetti.org] has joined #go-nuts 04:23 -!- homa_rano [~erice@hmsvelociraptor.csail.mit.edu] has joined #go-nuts 04:23 -!- GilJ [~GilJ@zeus.ugent.be] has joined #go-nuts 04:23 -!- d_m [d6@SDF.ORG] has joined #go-nuts 04:23 -!- rup [~rupert@deathknight.net] has joined #go-nuts 04:23 -!- plexdev [~plexdev@arthur.espians.com] has joined #go-nuts 04:23 -!- madari_ [madari@AM.irc.fi] has joined #go-nuts 04:23 -!- Broady [~b@unaffiliated/broady] has joined #go-nuts 04:23 -!- tylergillies [~quassel@unaffiliated/tylergillies] has joined #go-nuts 04:23 -!- schilly [~schilly@boxen.math.washington.edu] has joined #go-nuts 04:23 -!- jlouis [jlouis@horus.0x90.dk] has joined #go-nuts 04:23 -!- kanru [~kanru@kanru-1-pt.tunnel.tserv15.lax1.ipv6.he.net] has joined #go-nuts 04:23 -!- inv_arp_ [~junya@74.63.255.72] has joined #go-nuts 04:23 -!- jessta [~jessta@64.62.231.205] has joined #go-nuts 04:23 -!- pjm0616 [~user@110.9.28.45] has joined #go-nuts 04:23 -!- arun [~arun@unaffiliated/sindian] has joined #go-nuts 04:23 -!- KirkMcDonald [~Kirk@python/site-packages/KirkMcDonald] has joined #go-nuts 04:24 -!- Netsplit *.net <-> *.split quits: Natch|, thomas_b, arun, |Craig|, Ina, fzzbt, rphillips, jumzi, Zoopee, kanru 04:27 -!- Netsplit over, joins: jumzi, |Craig|, thomas_b, Ina, Natch|, fzzbt, rphillips, Zoopee, kanru, arun 04:32 -!- itrekkie [~itrekkie@ip72-211-129-122.tc.ph.cox.net] has joined #go-nuts 04:36 -!- adu [~ajr@pool-173-79-54-138.washdc.fios.verizon.net] has joined #go-nuts 04:45 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts 04:45 -!- mode/#go-nuts [+v iant] by ChanServ 04:46 -!- vinisterx [~ryan@74-129-210-121.dhcp.insightbb.com] has quit [Ping timeout: 260 seconds] 04:48 -!- jumzi [~none@c-89-233-234-125.cust.bredband2.com] has quit [Remote host closed the connection] 04:51 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 255 seconds] 05:01 -!- vinisterx [~ryan@74-129-210-121.dhcp.insightbb.com] has joined #go-nuts 05:01 -!- felipe [~felipe@unaffiliated/felipe] has joined #go-nuts 05:03 -!- vzx [~ryan@74-129-201-27.dhcp.insightbb.com] has joined #go-nuts 05:04 -!- vinisterx [~ryan@74-129-210-121.dhcp.insightbb.com] has quit [Read error: Operation timed out] 05:20 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has joined #go-nuts 05:29 -!- jumzi [~none@c-89-233-234-125.cust.bredband2.com] has joined #go-nuts 05:52 -!- yamashinatakashi [~yamashina@pw126249244122.9.tss.panda-world.ne.jp] has joined #go-nuts 05:52 -!- yamashinatakashi [~yamashina@pw126249244122.9.tss.panda-world.ne.jp] has quit [Client Quit] 05:54 -!- allister [~amacleod@pool-96-252-93-11.bstnma.fios.verizon.net] has quit [Quit: Bye Bye] 06:02 -!- adu [~ajr@pool-173-79-54-138.washdc.fios.verizon.net] has quit [Quit: adu] 06:03 -!- fabled [~fabled@mail.fi.jw.org] has joined #go-nuts 06:04 -!- Innominate [~sirrobin@cpe-076-182-074-143.nc.res.rr.com] has quit [Ping timeout: 272 seconds] 06:09 -!- vice [~vice@220-253-155-186.VIC.netspace.net.au] has joined #go-nuts 06:12 -!- adu [~ajr@pool-173-79-54-138.washdc.fios.verizon.net] has joined #go-nuts 06:15 -!- tsung [~jon@112.104.53.151] has quit [Ping timeout: 240 seconds] 06:15 -!- tsung [~jon@112.104.53.151] has joined #go-nuts 06:18 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has quit [Quit: Morten. Desu~] 06:32 -!- adu [~ajr@pool-173-79-54-138.washdc.fios.verizon.net] has quit [Quit: adu] 06:38 -!- adu [~ajr@pool-173-79-54-138.washdc.fios.verizon.net] has joined #go-nuts 06:51 -!- xyproto [~alexander@77.40.159.131] has joined #go-nuts 06:53 -!- Lapios [~office@S0106000ffe27aad3.ed.shawcable.net] has joined #go-nuts 06:56 -!- Lapios [~office@S0106000ffe27aad3.ed.shawcable.net] has quit [Client Quit] 06:58 -!- cafesofie [~cafesofie@ool-4a5978f2.dyn.optonline.net] has quit [Read error: Connection reset by peer] 06:58 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 06:58 -!- cafesofie [~cafesofie@ool-4a5978f2.dyn.optonline.net] has joined #go-nuts 07:07 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:788e:5542:8002:9f96] has joined #go-nuts 07:09 -!- hackenbush [~quantumel@203.110.240.205] has joined #go-nuts 07:20 -!- coudX [~coud@fw.profinit.eu] has joined #go-nuts 07:20 -!- hackenbush [~quantumel@203.110.240.205] has left #go-nuts ["Leaving"] 07:21 -!- vice_virtue [~vice@220-253-155-186.VIC.netspace.net.au] has quit [Quit: Leaving] 07:21 -!- vice [~vice@220-253-155-186.VIC.netspace.net.au] has quit [Quit: Leaving] 07:38 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-166-97.clienti.tiscali.it] has joined #go-nuts 07:43 -!- jhh [~jhh@dslb-178-002-196-108.pools.arcor-ip.net] has joined #go-nuts 07:44 -!- Project-2501 [~Marvin@82.84.75.201] has joined #go-nuts 07:45 -!- napsy [~luka@88.200.96.18] has joined #go-nuts 07:46 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-166-97.clienti.tiscali.it] has quit [Ping timeout: 240 seconds] 08:01 -!- creack [~charme_g@163.5.84.215] has quit [Ping timeout: 250 seconds] 08:06 -!- creack [~charme_g@163.5.84.215] has joined #go-nuts 08:11 -!- piranha [~piranha@5ED42E59.cm-7-5a.dynamic.ziggo.nl] has joined #go-nuts 08:11 -!- ExtraSpice [~XtraSpice@78-62-101-194.static.zebra.lt] has joined #go-nuts 08:15 -!- wrtp [~rog@92.17.35.133] has joined #go-nuts 08:19 < wrtp> sussman: you're welcome to open-source the code if you want 08:19 -!- erus_ [50b135f2@gateway/web/freenode/ip.80.177.53.242] has joined #go-nuts 08:24 -!- jhh [~jhh@dslb-178-002-196-108.pools.arcor-ip.net] has quit [Quit: jhh] 08:24 -!- adu [~ajr@pool-173-79-54-138.washdc.fios.verizon.net] has quit [Quit: adu] 08:26 -!- vegai [vegai@archlinux/developer/vegai] has left #go-nuts [] 08:28 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|] 08:34 -!- ShadowIce [~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has joined #go-nuts 08:34 -!- ShadowIce [~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has quit [Changing host] 08:34 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts 08:40 -!- Innominate [~sirrobin@cpe-076-182-074-143.nc.res.rr.com] has joined #go-nuts 08:43 -!- agricola [~agricola@210.9.138.81] has joined #go-nuts 08:43 -!- wrtp [~rog@92.17.35.133] has quit [Quit: wrtp] 08:45 -!- adu [~ajr@pool-173-79-54-138.washdc.fios.verizon.net] has joined #go-nuts 08:51 -!- ildorn [~ildorn@vpnclient-241-251.extern.uni-ulm.de] has joined #go-nuts 08:57 -!- ildorn [~ildorn@vpnclient-241-251.extern.uni-ulm.de] has quit [Ping timeout: 240 seconds] 09:07 -!- zomgbie [~jesus@84.119.84.39] has joined #go-nuts 09:24 -!- arun_ [~arun@unaffiliated/sindian] has joined #go-nuts 09:26 -!- skejoe [~skejoe@188.114.142.162] has joined #go-nuts 09:32 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 09:34 -!- petrux [~petrux@host16-224-static.53-82-b.business.telecomitalia.it] has joined #go-nuts 09:40 -!- ildorn [~ildorn@vpnclient-241-204.extern.uni-ulm.de] has joined #go-nuts 09:41 -!- wrtp [~rog@92.17.35.133] has joined #go-nuts 09:41 -!- ildorn [~ildorn@vpnclient-241-204.extern.uni-ulm.de] has quit [Client Quit] 09:44 -!- tvw [~tv@e176001204.adsl.alicedsl.de] has joined #go-nuts 09:57 -!- decaf [556aa194@gateway/web/freenode/ip.85.106.161.148] has joined #go-nuts 09:59 < nsf> http://nsf.github.com/images/ccode2.png 09:59 < nsf> :P 09:59 * nsf is a master of autocompletion daemons 10:00 < napsy> nsf: what colorscheme is that? 10:00 < nsf> baycomb afair 10:00 < nsf> modified 10:02 < napsy> ok tnx 10:02 < nsf> http://pastie.org/1498670 10:03 < nsf> plus I use in .vim/after/syntax/c.vim 10:03 < nsf> syn matchcOperator"(\|)" 10:03 < nsf> syn matchcOperator"{\|}" 10:03 < napsy> cool, tnx 10:03 < nsf> oops 10:03 < nsf> syn match cOperator "(\|)", etc. 10:03 < nsf> in Go too 10:15 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has quit [Remote host closed the connection] 10:16 -!- viirya [~viirya@140.112.29.179] has joined #go-nuts 10:27 < erus_> slice has an append method now right? 10:27 < nsf> no 10:27 < Namegduf> There's an append function. 10:27 < Namegduf> Not a method. 10:27 < nsf> append is a built-in function 10:27 < Namegduf> Builtins have no methods. 10:27 < nsf> var x []string 10:27 -!- waqas [~waqas@jaim.at] has joined #go-nuts 10:27 < nsf> x = append(x, "1", "2", "3") 10:27 < nsf> x == []string{"1", "2", "3"} 10:28 < Namegduf> How does slice equality work? 10:28 < nsf> it doesn't work like that 10:28 < Namegduf> I didn't think so. 10:28 < nsf> just an example :) 10:28 < Namegduf> But that is what x contains, yeah. 10:28 -!- virtualsue [~chatzilla@nat/cisco/x-twhuuwckwxgkfcmz] has joined #go-nuts 10:28 < nsf> I meant that x is that slice 10:28 -!- agricola [~agricola@210.9.138.81] has left #go-nuts [] 10:29 -!- nettok [~quassel@200.119.162.114] has quit [Ping timeout: 240 seconds] 10:29 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 245 seconds] 10:33 -!- virtualsue [~chatzilla@nat/cisco/x-twhuuwckwxgkfcmz] has quit [Ping timeout: 240 seconds] 10:35 -!- tvw [~tv@e176001204.adsl.alicedsl.de] has quit [Remote host closed the connection] 10:43 -!- napsy [~luka@88.200.96.18] has quit [Ping timeout: 255 seconds] 10:43 -!- virtualsue [~chatzilla@nat/cisco/x-yfdvlyuzlexvubzy] has joined #go-nuts 10:44 -!- artefon [~thiagon@150.164.2.20] has joined #go-nuts 10:51 < erus_> does append increase capacity for me? 10:52 < nsf> yes 10:52 < nsf> it returns a new slice if an old has not enough capacity 10:52 < nsf> an old one* 10:53 < erus_> super 10:54 -!- jdp__ [~jdp@24.238.32.162.res-cmts.segr.ptd.net] has joined #go-nuts 10:54 -!- jdp [~jdp@24.238.32.162.res-cmts.segr.ptd.net] has quit [Read error: Connection reset by peer] 10:55 -!- napsy [~luka@88.200.96.18] has joined #go-nuts 11:04 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has quit [Ping timeout: 276 seconds] 11:04 < erus_> are strings passed by value? 11:05 < Namegduf> Strings are immutable, so you can't tell the difference. 11:05 < erus_> if i have functions that process string as input should i have string ptr as arguement 11:05 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has joined #go-nuts 11:05 < Namegduf> Function parameters are always pass-by-value. 11:06 < Namegduf> There are no exceptions. 11:06 -!- tav [~tav@92.7.79.91] has joined #go-nuts 11:06 < Namegduf> Types can be reference types, in which case referring to the data they contain can modify the original 11:06 < erus_> so it makes sense to pass string ptr into function? 11:06 < nsf> erus_: no 11:06 < Namegduf> No. 11:06 < erus_> ah ok 11:06 < Namegduf> Assigning TO a passed-in value will always just modify the local variable named that. 11:07 < erus_> yeh i get that 11:07 < erus_> i was just thinking speed wise 11:07 < Namegduf> Strings are internally implemented as a pointer and length. 11:07 < Namegduf> Like a slice without a cap. 11:07 < Namegduf> (Since they can't be mutated) 11:07 < Namegduf> So copying a string does not actually copy the string's data. 11:08 < Namegduf> Slicing a string also does not actually copy the string's data. 11:08 < erus_> super 11:09 < Namegduf> You can't tell the difference between them copying the data, since you can't modify a string anyway. 11:09 < Namegduf> Just generate a new string based on the old one. 11:12 < plexdev> http://is.gd/4b37GG by [Brad Fitzpatrick] in go/src/pkg/http/ -- http: handle unchunked, un-lengthed HTTP/1.1 responses 11:12 < plexdev> http://is.gd/e0102M by [Gustavo Niemeyer] in go/src/cmd/cgo/ -- cgo: fix handling of signed enumerations 11:12 < plexdev> http://is.gd/5H33ry by [Gustavo Niemeyer] in go/src/pkg/ -- build: Drop syslog on DISABLE_NET_TESTS=1 11:12 < plexdev> http://is.gd/Ip26ar by [Andrew Gerrand] in go/misc/dashboard/godashboard/ -- misc/dashboard: hide benchmarks link temporarily 11:22 < erus_> I just wrote a mesh loader for my own custom mest format :D 11:22 < erus_> now i have to write a converter or plugin :| 11:23 -!- shvntr [~shvntr@123.89.107.184] has joined #go-nuts 11:27 -!- shvntr [~shvntr@123.89.107.184] has quit [Ping timeout: 240 seconds] 11:28 -!- shvntr [~shvntr@113.84.146.21] has joined #go-nuts 11:33 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 11:38 -!- tvw [~tv@212.79.9.150] has joined #go-nuts 11:43 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection] 11:43 -!- tvw [~tv@212.79.9.150] has joined #go-nuts 11:45 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 265 seconds] 11:49 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has joined #go-nuts 11:57 -!- petrux [~petrux@host16-224-static.53-82-b.business.telecomitalia.it] has quit [Quit: leaving] 12:02 -!- adu [~ajr@pool-173-79-54-138.washdc.fios.verizon.net] has quit [Quit: adu] 12:06 -!- tensorpudding [~user@99.23.127.179] has quit [Remote host closed the connection] 12:12 -!- xyproto [~alexander@77.40.159.131] has quit [Ping timeout: 276 seconds] 12:13 -!- niemeyer [~niemeyer@201-40-138-161.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 12:16 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 12:34 -!- dchest [~dchest@95.155.52.241] has joined #go-nuts 12:36 -!- decaf [556aa194@gateway/web/freenode/ip.85.106.161.148] has quit [Quit: Page closed] 12:42 -!- decaf [~mehmet@85.106.161.148] has joined #go-nuts 12:42 -!- Days` [~david@quanthouse.cust.jaguar-network.net] has joined #go-nuts 12:43 -!- decaf [~mehmet@85.106.161.148] has quit [Client Quit] 12:43 -!- decaf [~mehmet@85.106.161.148] has joined #go-nuts 12:47 < erus_> what are my options for compiling file data in a binary? just bin2h type stuff? 12:48 < Days`> hello there, i got an "non-declaration statement outside function body" in my very simple code here : http://pastie.org/1544658 , do you know why ? 12:49 < Days`> it seems that i can't create an object outside the main function scope, but if i create an object like a map (var params = make(map[int]string) for example) it does work. 12:51 < fzzbt> how to convert string to []byte? 12:51 < mpl> fzzbt: []byte(foo) 12:53 < decaf> Days`: you can only call a function in another function 12:53 < decaf> mysql.New() in this case 12:53 < fzzbt> still get error .. problem somewhere else maybe 12:53 < Days`> oh i see, thanks you decaf 12:54 < mpl> fzzbt: what error? 12:54 < decaf> yw 12:58 < Days`> decaf: interesting thing is that you can assign it outside a function, then call its methods 12:58 < wrtp> decaf: that's not true 12:59 < decaf> oops 12:59 < wrtp> the short assignment outside the function body is the problem 12:59 < decaf> enlighten me please 12:59 < wrtp> Days`: you need var db = .... 12:59 < wrtp> you can't use := outside a function 12:59 < mpl> wrtp: yes, but why? 12:59 < wrtp> because it makes the syntax much simpler 13:00 < Days`> yep i was just pastieng that 13:00 < Days`> http://pastie.org/1544729 this works fine 13:00 < mpl> wrtp: how so? the parser would have to get much more complicated to work with that? 13:00 < decaf> error message should be "too simple syntax" then 13:01 < wrtp> it's because of the ambiguity between func as declaration and func as expression, i think 13:01 < Namegduf> Everything at top level begins with a keyword 13:01 < Namegduf> This is kinda pretty 13:01 -!- erus_ [50b135f2@gateway/web/freenode/ip.80.177.53.242] has quit [Ping timeout: 245 seconds] 13:02 < Namegduf> For short declarations, that would need to not be true anymore. 13:02 < wrtp> i guess they could put in a special case for := at top level 13:02 < fzzbt> mpl: nvm, i was trying to convert a pointer accidentally. it work now 13:02 < Namegduf> That would be a pity. 13:02 -!- foocraft [~dsc@dyn-86-36-43-113.wv.qatar.cmu.edu] has joined #go-nuts 13:03 < wrtp> i dunno. it does seem slightly odd that you can't do it. 13:03 < mpl> it sounds like a good reason, but it still is an odd limitation everytime I encounter it. 13:04 < aiju> Namegduf: or just allow leaving out the type 13:11 < wrtp> you can leave out the type 13:11 -!- virtualsue [~chatzilla@nat/cisco/x-yfdvlyuzlexvubzy] has quit [Ping timeout: 246 seconds] 13:14 < wrtp> yeah, it would be easy to put into the grammar. no conflicts. 13:15 < wrtp> but it would make := more special than it currently is - currently it's grammatically just the same as an assignment statement 13:16 < wrtp> and i don't think we want arbitrary assignment statements at global level 13:16 < KBme> yeah, i think that usually mean the design is wrong at one point 13:21 < wrtp> yeah - the dependency-based global initialisation in go is very strong point. 13:21 < wrtp> you'd lose that if you allowed sequential assignment statements. 13:28 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts 13:29 -!- decaf [~mehmet@85.106.161.148] has quit [Quit: Leaving] 13:33 -!- hcl2 [~akuma@75.41.110.112] has joined #go-nuts 13:43 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 265 seconds] 13:44 < plexdev> http://is.gd/mBmCXu by [Adam Langley] in go/src/pkg/crypto/x509/ -- crypto/x509: add name constraints support. 13:56 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.4] 13:57 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 13:58 -!- nsf [~nsf@jiss.convex.ru] has quit [Client Quit] 14:01 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 14:08 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has quit [Quit: Computer has gone to sleep.] 14:10 -!- skejoe [~skejoe@188.114.142.162] has quit [Quit: Lost terminal] 14:13 -!- zomgbie [~jesus@84.119.84.39] has quit [Ping timeout: 241 seconds] 14:23 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts 14:25 -!- artefon [~thiagon@150.164.2.20] has quit [Quit: Leaving] 14:27 -!- femtoo [~femto@95-89-196-7-dynip.superkabel.de] has joined #go-nuts 14:29 -!- erus_ [50b135f2@gateway/web/freenode/ip.80.177.53.242] has joined #go-nuts 14:29 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Quit: Leaving.] 14:33 -!- zomgbie [~jesus@84.119.84.39] has joined #go-nuts 14:33 < dario_> is there a better way to implement a singleton in go: http://paste.q0a.de/m3630 ? 14:35 < erus_> do we really need singletons in go? 14:36 < erus_> I was doing something like that dario_ and i reallized i didnt need to wrap the functions in a class 14:36 < aiju> singletons seem really stupid 14:36 -!- virtualsue [~chatzilla@nat/cisco/x-uenoumcrknssooee] has joined #go-nuts 14:38 < dario_> ok, the idea i just had depends on them, so i'm just gonna try it, and will realize once i have shot myself into the foot :D 14:38 < wrtp> isn't a singleton just a global variable? 14:39 < rm445> make me boggle too, but a bunch of us boggling doesn't explain anything - we need someone who thinks singletons are great to explain why 14:39 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts 14:39 < wrtp> if you don't want to create it at startup, then you can use sync.Once 14:40 < wrtp> and have a function to return the value 14:40 < Ina> Singletons are global variables for people who claim to loathe global variables. 14:41 -!- iant [~iant@67.218.104.194] has joined #go-nuts 14:41 -!- mode/#go-nuts [+v iant] by ChanServ 14:42 < skelterjohn> morning 14:42 < skelterjohn> nothing wrong with global variables 14:43 -!- nighty__ [~nighty@x122091.ppp.asahi-net.or.jp] has joined #go-nuts 14:43 -!- boscop [~boscop@f055019202.adsl.alicedsl.de] has joined #go-nuts 14:43 < Ina> There's some subtle differences between Singletons and globals, but in 95% of the cases, a Singleton is used where a global would be (slightly) more efficient without sacrificing anything. 14:44 < wrtp> dario_: http://paste.q0a.de/m3632 14:45 < wrtp> Ina: is the subtle difference simply that a global variable is created at initialisation time, not first-call time? 14:46 < Ina> That's the biggest one, IIRC. I don't use Singletons myself, though. 14:46 < dario_> wrtp: yah, probably 14:46 < wrtp> the pattern is common then. i don't see why you'd ever need to use the word "Singleton" though. 14:47 < skelterjohn> because a patterns book from the 90s coined lots of silly words 14:47 < Ina> what skelterjohn says 14:48 < dario_> +2 14:48 < wrtp> i had a look at that book once. it went straight over my head 14:48 < wrtp> i think it only makes sense if you're working in a language with inheritance 14:49 < exch> design patterns by themselves are just silly 14:49 < skelterjohn> that, and all the ideas are really straightforward and easy to come up with on your own 14:49 < skelterjohn> i have a not-so-charitable opinion that the whole 'design pattern' thing is to help good programmers quickly explain simple ideas to morons 14:49 < exch> Most of the time they just describe common sense ways of implementing something. Why on earth you would need to give it a name and write books abuot it is beyond me 14:49 -!- zomgbie [~jesus@84.119.84.39] has quit [Ping timeout: 246 seconds] 14:51 < wrtp> i think it's probably because several mainstream languages are so full of pitfalls that you have to tread very carefully to avoid them 14:52 < exch> possibly 14:52 < skelterjohn> i TA'd a course for two years where we taught these pattens, and tested students on their knowledge of them 14:52 < skelterjohn> i felt silly most of the time 14:53 -!- ildorn [~ildorn@vpnclient-240-028.extern.uni-ulm.de] has joined #go-nuts 14:55 < exch> The last C# job I applied for a few years ago was with a firm which was really into all these hype things. Thorough knowledge of design patterns was apparently the single most important thing to them 14:55 < exch> When that came up, I was very much inclined to just stand up and walk out, but I really needed the work. So had to force myself not to rage 14:56 < wrtp> the funny thing is, i quite often get the feeling that i'm missing something really important, something crucial, something that would really make me "get it". 14:56 < skelterjohn> nono 14:56 < skelterjohn> don't feel that way 14:56 < exch> there is nothing magical about design patterns 14:57 < skelterjohn> treating design patterns as some kind of fundamental building blocks is overly simplistic and unworkable 14:57 < exch> If anything, they can complicate understanding by using obtuse and convoluted terms and analogies 14:57 < skelterjohn> i agree 14:58 < exch> For some people this works I suppose. But not for me :p 14:58 -!- xyproto [~alexander@77.40.159.131] has joined #go-nuts 14:58 < skelterjohn> "well i see you have a global variable, there. wouldn't our program be better if it used the singleton pattern instead?" 14:58 < exch> hehe 14:58 < exch> return that question by asking "Why exactly would that be better?" 14:58 < exch> and see how quickly they shit themselves 14:58 < skelterjohn> because global variables are bad, everyone knows that 14:58 < xyproto> Does the current hg version of go not compile for anyone else as well? 14:59 < skelterjohn> xyproto: i'll check 14:59 < xyproto> skelterjohn: thx 14:59 < skelterjohn> (running all.bash) 14:59 < skelterjohn> and when you say "current version", do you mean "hg pull -u"? 14:59 < skelterjohn> or release 15:01 < exch> chromium is really starting to piss me off 15:01 < exch> apparently it's impossible to forkexec a new chrome window/tab and track the process until it is closed 15:02 -!- zomgbie [~jesus@84.119.84.39] has joined #go-nuts 15:02 < exch> Whichever way I try it. with os.Wait(), or manually polling procfs for process info, as soon as it is launched, the process is marked as dead. Eventhough the window/tab is very much alive 15:03 < skelterjohn> the process you spawned probably spawned another process 15:03 < skelterjohn> check the id of the process you're watching against the id of the window you know is alive 15:03 < exch> Either that, or it is usurped by chromiums sandbox process 15:05 < exch> that's the kicker. the same id is still there 15:05 < exch> ah wait 15:05 < exch> If I spawn chrome from a fresh instance (no other windows/tabs are open), the code works 15:05 < exch> But if an instance is already running, things go wrong 15:07 < exch> This is turning out to be a major dealbreaker as far as my app is concerned. I think I'll consider a different approach 15:07 -!- tobik [~tobik@p549FF4A9.dip.t-dialin.net] has joined #go-nuts 15:08 < exch> A PING message approach may be better. My server launches, spawns chrome and tracks incoming 'PING' http requests. 15:08 < exch> that should get rid of any kind of browser specific malarky 15:08 < skelterjohn> are you making a GUI app by running a server and connecting to it immediately with chrome? 15:08 < exch> yes 15:08 < skelterjohn> cool 15:09 < exch> it works beautifully for any other browser, except chrome 15:09 < skelterjohn> :< 15:09 < exch> So perhaps the PING thing is a viable alternative 15:09 -!- qjcg [~qjcg@208.88.110.46] has joined #go-nuts 15:09 -!- yebyen [~yebyen@martyfunkhouser.csh.rit.edu] has joined #go-nuts 15:09 < yebyen> can someone help me with map[string]interface{}? 15:10 < skelterjohn> what's the problem, yebyen? 15:10 < yebyen> is it possible to declare an anonymous function and assign it to that 15:10 -!- qjcg [~qjcg@208.88.110.46] has left #go-nuts [] 15:10 < skelterjohn> xyproto: it compiled fine for me 15:10 < skelterjohn> yebyen: any type can be held by an interface{} 15:11 < skelterjohn> so if you have x := func(){...}; mymap["x"] = x 15:11 < skelterjohn> that would work fine 15:11 -!- dchest [~dchest@95.155.52.241] has quit [Quit: dchest] 15:11 < skelterjohn> but then to call it, you'd have to do mymap["x"].(func())() i think 15:11 < skelterjohn> i think func() is the right signature for that 15:11 < yebyen> like var container = map[string]interface{} { "key" : func() { return func(text string) { return "<b>" + render(text) + "</b>" } } 15:12 < yebyen> something is not right, because that does not compile 15:12 < skelterjohn> at a glance that looks ok 15:12 < skelterjohn> oh 15:12 < exch> func() has no return value defined 15:12 < yebyen> d'oh 15:12 < yebyen> i just noticed that 15:13 < yebyen> func() func()? 15:13 < yebyen> how does one say what i mean 15:13 < yebyen> this is tricky 15:14 <+iant> the type of a function which has no parameters and no results is "func()" 15:14 < skelterjohn> x := func() func() {return func(){doSomething()}} 15:14 < skelterjohn> y := x() 15:14 < skelterjohn> z := y() 15:14 < skelterjohn> z() -> doSomething() 15:18 -!- dchest [~dchest@95.155.52.241] has joined #go-nuts 15:19 < exch> perhaps give those functions their own type first. At least that makes the code easier to understand by splitting it up into smaller chunks. 15:19 < yebyen> yeah i'm writing it out across a few more lines, and not inside a map 15:19 < yebyen> to make sure i understand what i'm trying to do ... 15:19 < yebyen> but i'm trying to get on mustache.go 15:20 < yebyen> i don't know if it's crazy to want to write my data up in go instead of in javascript 15:23 -!- dchest [~dchest@95.155.52.241] has quit [Client Quit] 15:23 -!- decaf [~mehmet@85.106.161.148] has joined #go-nuts 15:23 < yebyen> the syntax sure will make it clearer what's happening 15:24 < yebyen> rather than absent-type returning 15:24 -!- niemeyer [~niemeyer@201-40-138-161.pltce701.dsl.brasiltelecom.net.br] has quit [Ping timeout: 240 seconds] 15:24 < yebyen> i really wanted func() func(text string)string 15:26 < yebyen> .. maybe 15:26 -!- ildorn [~ildorn@vpnclient-240-028.extern.uni-ulm.de] has quit [Ping timeout: 240 seconds] 15:26 < yebyen> this is odd 15:27 -!- niemeyer [~niemeyer@201-40-138-161.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 15:27 < yebyen> i think i have it though 15:27 -!- niemeyer [~niemeyer@201-40-138-161.pltce701.dsl.brasiltelecom.net.br] has quit [Read error: Connection reset by peer] 15:28 -!- niemeyer [~niemeyer@201-40-138-161.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 15:28 < yebyen> only 22 compile attempts later 15:28 < yebyen> not bad 15:30 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has joined #go-nuts 15:31 < skelterjohn> :) 15:31 < xyproto> skelterjohn: strange that it compiles for you. I get "gamma.go:157: invalid operation: z * x (type float * float64)", amongst others 15:32 < skelterjohn> ah 15:32 < skelterjohn> i should have asked from the beginning 15:32 < skelterjohn> you have old binaries floating around 15:32 < skelterjohn> do a "which 6g" 15:32 < xyproto> skelterjohn: gcc 4.5.2 15:32 < xyproto> skelterjohn: ah 15:32 < skelterjohn> or 8g if you use 6g 15:32 < xyproto> skelterjohn: /usr/bin/6g 15:32 < skelterjohn> delete all go-related binaries from /usr/bin 15:32 < skelterjohn> the float type doesn't actually exist anymore 15:33 < xyproto> skelterjohn: ah, ok, I will try that. Thank you. 15:33 < skelterjohn> so i know when you compile you're using something pretty old 15:34 < yebyen> http://paste.pocoo.org/show/335101/ 15:34 < skelterjohn> yebyen: that is very hard to read 15:34 < yebyen> what's a better pastebin 15:34 < skelterjohn> i think you should define some intermediate types 15:35 < skelterjohn> oh - not what i meant 15:35 < yebyen> skelterjohn: what i need to see is why does line 17 compile and line 14 blows up 15:35 < xyproto> skelterjohn: yes, it got a bit further this time, but now I get a different error 15:35 < skelterjohn> it's hard for me to tell - you should define intermediate types :) 15:35 < xyproto> skelterjohn: --- FAIL: net.TestGoogleSRV 15:35 < xyproto> failed: lookup _xmpp-server._tcp.google.com. on [10.10.10.1]:53: no such host 15:36 < yebyen> then i can try and figure out what line 25 should look like, for actually calling that function ^_^ 15:36 < skelterjohn> xyproto: there is a way to disable net tests 15:36 < skelterjohn> something like "NET_TEST_DISABLE=1" 15:36 < skelterjohn> but probably not exactly that 15:36 < xyproto> skelterjohn: ok. My previous version of go was not that old, btw, just approx 4 months :) 15:36 < xyproto> skelterjohn: I'll find the option. Thanks. 15:36 < skelterjohn> xyproto: that's about when the float type was removed 15:37 < skelterjohn> keep in mind that 4 months is a sold 25% of go's lifetime :) 15:37 < skelterjohn> solid 15:37 < skelterjohn> xyproto: DISABLE_NET_TESTS=1 15:40 < xyproto> skelterjohn: ok, I found it, but when I now do this: DISABLE_NET_TESTS=1 ./all.bash, I get a complaint about quietgcc. It seems like it was removed when I removed the go package. 15:40 < xyproto> ./make.bash: line 28: /usr/bin/quietgcc: Permission denied 15:40 < skelterjohn> permission denied doesn't mean it isn't there 15:40 < xyproto> which is strange in itself, since /usr/bin/quietgcc is not therre 15:40 < skelterjohn> it means it has the wrong permissions 15:40 < skelterjohn> um 15:41 < xyproto> ls: cannot access /usr/bin/quietgcc: No such file or directory 15:41 < skelterjohn> :s 15:42 < skelterjohn> try running quietgcc.bash? 15:42 < skelterjohn> or copy quietgcc.bash to /usr/bin/quietgcc 15:42 < skelterjohn> ? 15:42 < skelterjohn> i'm guessing here, never had to deal with this 15:42 < xyproto> skelterjohn: solved it by making a symlink from /usr/bin/gcc to quietgcc... 15:42 < yebyen> skelterjohn: http://pastie.org/1545253 15:43 < skelterjohn> gonna be a noisy compile, i suppose 15:43 < yebyen> that is what you wanted to see i think... can you tell me about line 18? 15:43 < xyproto> skelterjohn: oh well, better than no compile 15:44 < skelterjohn> xyproto: $GOROOT/src/quietgcc.bash is just a script that invokes gcc, so you can probably make it link there instead (in the future) 15:44 < skelterjohn> yebyen: looking 15:44 < yebyen> it will be great if i just need another comma or something 15:45 -!- ildorn [~ildorn@vpnclient-240-026.extern.uni-ulm.de] has joined #go-nuts 15:45 < xyproto> skelterjohn: seems to compile now, with DISABLE_NET_TESTS and /usr/bin/quietgcc in place... :) 15:45 < skelterjohn> cool, glad it worked out 15:46 < xyproto> skelterjohn: thanks for helping out :) 15:46 -!- zomgbie [~jesus@84.119.84.39] has quit [Ping timeout: 255 seconds] 15:47 < yebyen> i almost remember my prof teaching his go class saying this was one of the disappointing things about go 15:47 < yebyen> that line 21 compiles but line 18 does not... 15:47 < yebyen> maybe if i just assign the variable first 15:47 < skelterjohn> put a coma at the end of line 18 15:47 < skelterjohn> comma 15:48 < skelterjohn> the lexer is inserting a semi-colon 15:48 < yebyen> oh damn :) 15:48 < skelterjohn> so you either need to put a comma, or move the curly brace on the next line up to line 18 15:48 < yebyen> that was it 15:48 < skelterjohn> that whole semi-colon thing still bugs me 15:48 < fzzbt> Is "buf := new(bytes.Buffer)" the same as "buf := &bytes.Buffer{}"? They both seem to work, but I don't understand why you would ever want to use new() when you can just allocate new instances by taking variable address.. ?? 15:49 < skelterjohn> fzzbt: x := new(X) is the same as x := &X{} 15:50 < exch> &X presumably allocateds objects on the heap, the other one does not 15:50 -!- artefon [~thiago@189.59.205.194] has joined #go-nuts 15:50 < exch> or was the other way around? 15:50 < erus_> have you guys read this: http://monoc.mo.funpic.de/go-rant/ 15:50 < skelterjohn> exch: they're both on the heap 15:50 < skelterjohn> if you ever take an address, it's on the heap. something from new is on the heap 15:50 < fzzbt> skelterjohn: seems kinda redundant 15:50 < skelterjohn> *shrug* 15:50 < fzzbt> which one should i prefer 15:51 < skelterjohn> no consensus on that 15:51 < skelterjohn> erus_: that page launched an annoying new window that tried to sell me something with an audio file 15:51 < exch> erus_: note that that was written in 2009. Go was barely out of the womb back then. Arguments like that are worth absolutely 0. 15:52 < exch> Might as well change the title of that into "HAHA Ima rant so I can get some page views, yay!' 15:53 < skelterjohn> i'm not thrilled with his use of the term "new jersey approach" 15:53 < wrtp> fzzbt: if you're initialising some fields, use &T{field: value, ...}; if not, use new(T) 15:53 < erus_> the only thing I kinda agree with is his position on exceptions 15:53 < erus_> but I'm not sure I like them 15:53 < erus_> but go has recover or something now right? 15:53 < wrtp> erus_: he was writing at a time when go had no form of exception 15:53 < aiju> erus_: yeah 15:54 < aiju> "really ugly syntax" 15:54 < skelterjohn> he also mischaracterized the reasons for not having generics and exceptions 15:54 < exch> His approach is similar to writing a sweeping rant about how much a new game sucks and is useless and will never come to anything, just from an early beta preview 15:54 < aiju> fucking bikeshed arguments 15:54 < skelterjohn> as "it's hard, so we'll just make our programmers lives harder" 15:54 < skelterjohn> when in reality it was "it's hard, so we're going to think about it to make sure we do it right" 15:55 < exch> important difference indeed 15:55 < skelterjohn> and he called that first interpretation the "new jersey approach" 15:55 < skelterjohn> to which i take offense 15:56 < skelterjohn> being a new jersian 15:56 < erus_> haha 15:56 < aiju> Aside from it being Yet Another Squiggly Brace Languag [...] 15:56 < exch> not even sure what that means. but then, im not from new jersey ;p 15:56 < aiju> he's a fucking idiot if he can't seperate bikeshed from real arguments 15:56 < skelterjohn> i had never heard it before 15:57 < aiju> Why is an array and a slice of an array a fundamentally different type? Arrays are value types, for example, and slices are reference types. 15:57 < aiju> not everything he says is outdated, he's just clueless 15:57 -!- pharris [~Adium@rhgw.opentext.com] has joined #go-nuts 15:58 < skelterjohn> it's hard to take a review seriously when there are basic factual errors 15:58 < skelterjohn> (reminds me of some academic reviews i've read recently) 15:58 < aiju> 16:57 < exch> not even sure what that means. but then, im not from new jersey ;p 15:58 < aiju> it's a reference to the "worse is better" paper 15:58 < exch> ah 15:58 -!- Stiletto [7f000001@69.195.144.4] has quit [Ping timeout: 276 seconds] 15:59 < skelterjohn> still not sure why that gets "new jersey" 15:59 < aiju> contrasting MIT ("THE RIGHT THING, MEIN FÜHRER") and New Jersey style ("dude, it was easier for us to implement") 15:59 < aiju> skelterjohn: actually it's a positive attribute 16:00 < aiju> skelterjohn: and it's called so because Bell Labs is situated in New Jersey 16:00 < skelterjohn> ah, thanks 16:00 < skelterjohn> that's the connection i was looking for 16:00 < aiju> and UNIX is archetypical new jersey style 16:00 -!- BlaSux [7f000001@69.195.144.4] has joined #go-nuts 16:01 < yebyen> http://pastie.org/1545354 16:01 < yebyen> now that's pretty 16:01 < yebyen> and it compiles 16:01 < skelterjohn> always a plus 16:02 < aiju> yebyen: function returning function pointers? lol 16:03 < aiju> reminds me of three star programming 16:03 < yebyen> the best one is actually... 16:03 < yebyen> container["wrapped"].(func() Passthrough)()(container["name"].(string)) 16:04 < yebyen> i forgot to write it first 16:04 < exch> :P 16:04 < yebyen> what to call func() Passthrough 16:05 < yebyen> is that a functor? 16:05 < yebyen> heh 16:05 < aiju> reminds me of K programming 16:05 < aiju> http://aiju.phicode.de/code/k/tictactoe 16:07 -!- iant [~iant@67.218.104.194] has quit [Quit: Leaving.] 16:08 < yebyen> oops 16:08 < yebyen> you cannot simply declare an anonymous function by uttering the type that you defined for it 16:11 < yebyen> https://gist.github.com/818727 16:11 < yebyen> line 18... heh 16:12 < skelterjohn> i dunno, maybe that should be allowed 16:12 < skelterjohn> it certainly makes sense 16:13 < exch> if Functor was a #DEFINE, then yes 16:13 < yebyen> if there were really parameters in Functor though 16:13 < skelterjohn> ah, true 16:13 < yebyen> instead of just being a function dispenser 16:13 < yebyen> how could you name the parameters 16:14 < yebyen> this is really neat though 16:14 < yebyen> i'm glad i took the day off work to look at this 16:15 < yebyen> now, to make something... 16:15 -!- foocraft [~dsc@dyn-86-36-43-113.wv.qatar.cmu.edu] has quit [Read error: Operation timed out] 16:15 -!- iant [~iant@nat/google/x-tfmtjquxddnlllrx] has joined #go-nuts 16:15 -!- mode/#go-nuts [+v iant] by ChanServ 16:18 -!- nighty__ [~nighty@x122091.ppp.asahi-net.or.jp] has quit [Ping timeout: 250 seconds] 16:21 -!- anticw [~anticw@c-67-169-68-180.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 16:21 -!- anticw [~anticw@c-67-169-68-180.hsd1.ca.comcast.net] has joined #go-nuts 16:27 -!- DerHorst [~Horst@e176100223.adsl.alicedsl.de] has joined #go-nuts 16:29 -!- shvntr [~shvntr@113.84.146.21] has quit [Ping timeout: 240 seconds] 16:33 -!- piranha [~piranha@5ED42E59.cm-7-5a.dynamic.ziggo.nl] has quit [Quit: Computer has gone to sleep.] 16:34 -!- twolfe18 [~twolfe18@CMU-421570.WV.CC.CMU.EDU] has joined #go-nuts 16:39 < erus_> s(a,b)int*a,*b 16:39 < erus_> wtf is that valid c? 16:40 < skelterjohn> no idea 16:40 < twolfe18> doesn't look like it to me 16:40 < twolfe18> s(a,b);int*a,*b would 16:41 < erus_> s(a,b)int*a,*b; { } 16:43 < twolfe18> maybe a closure? 16:43 -!- ildorn [~ildorn@vpnclient-240-026.extern.uni-ulm.de] has quit [Quit: Leaving.] 16:44 < niemeyer> erus_: If s is a macro, it can be anything 16:45 < wrtp> it's old style C 16:46 < wrtp> parameters were traditionally declared outside the function header 16:46 < wrtp> pre-ANSI 16:46 < wrtp> (but still valid, i think) 16:46 -!- femtoo [~femto@95-89-196-7-dynip.superkabel.de] has quit [Read error: Connection reset by peer] 16:46 < erus_> http://aiju.phicode.de/code/sort 16:47 < erus_> http://pastie.org/1545562 16:47 < aiju> yes, that's valid C 16:47 < aiju> you never read UNIX code, did you :P 16:48 < erus_> does it work? 16:48 < aiju> yes 16:49 < erus_> what does it do? how can i test it 16:49 < aiju> sort a list of numbers 16:49 < aiju> pass it a pointer to the first and the last element of an array of numbers 16:49 < aiju> (last element, not the element beyond it) 16:49 < erus_> ok cool 16:50 < aiju> array of ints, that is 16:52 < skelterjohn> why would anyone write code like that? 16:52 < aiju> skelterjohn: for fun 16:52 < skelterjohn> oh 16:52 < aiju> i wrote that after i discovered the comma operator 16:52 < skelterjohn> the comma operator...? 16:52 < aiju> a,b,c evaluates a, b and c and has the value of c 16:53 < aiju> printf("%d\n", (i++,j++,k++)); prints the value of k and increases i, j and k 16:53 < erus_> well it works 16:53 < aiju> it has some actual uses 16:53 < aiju> like while(c = getchar(), c != EOF) 16:53 < twolfe18> o snap, that is useful 16:54 < niemeyer> Familiar too ;) 16:54 < aiju> of course it also makes a great obfuscation tool 16:55 < aiju> like all that u shuffling i do in that source code 16:57 -!- awidegreen [~quassel@c-eacae555.08-2-73746f39.cust.bredbandsbolaget.se] has joined #go-nuts 16:57 -!- erus_ [50b135f2@gateway/web/freenode/ip.80.177.53.242] has quit [Ping timeout: 246 seconds] 16:58 -!- Scorchin [~Scorchin@host86-166-58-101.range86-166.btcentralplus.com] has joined #go-nuts 17:01 < fzzbt> why can't i add methods to exported non-local structs, eg. template.Template? 17:02 < fzzbt> always get "cannot define new methods on non-local type template.Template" 17:03 -!- dchest [~dchest@95.155.52.241] has joined #go-nuts 17:03 < fzzbt> is there a way around 17:05 < exch> you can 'alias' the template and define methods on that. type MyTemplate template.Template; func(m *MyTemplate) F() { ... } 17:06 < exch> not really an alias though. MyTemplate is a different type entirely, but it should do what you need 17:06 < fzzbt> exch: yes, that works, but then i would have to define all of the methods and not just the new one i want to add.. 17:07 < exch> why? 17:07 < fzzbt> i dont know why, it just doesn't compile 17:07 < exch> var m MyTemplate; m.MyOwnMethod(); template.Template(m).SomeExistingMethod() might do the trick 17:15 -!- jessta [~jessta@64.62.231.205] has quit [Ping timeout: 246 seconds] 17:16 < fzzbt> that's not very elegant 17:17 -!- coudX [~coud@fw.profinit.eu] has quit [Read error: Connection reset by peer] 17:17 < exch> you can try embedding the existing template in your own template struct. That won't be any more 'elegant' though. You simply can't define new methods on types in other packages 17:18 -!- maattd [~maattd@lan31-1-82-66-82-84.fbx.proxad.net] has joined #go-nuts 17:19 -!- xyproto [~alexander@77.40.159.131] has quit [Ping timeout: 240 seconds] 17:29 -!- zomgbie [~jesus@84.119.84.39] has joined #go-nuts 17:30 < fzzbt> but im defining my own with "type MyTemplate template.Template". I don't understand why there is such a restriction.. 17:31 -!- virtualsue [~chatzilla@nat/cisco/x-uenoumcrknssooee] has quit [Ping timeout: 245 seconds] 17:32 -!- zomgbie [~jesus@84.119.84.39] has quit [Read error: Operation timed out] 17:33 < fzzbt> why m.SomeExistingMethod() couldn't work off the bat too? in OOP languages you could inherit class and add methods to it too as you please without redefining all the methods of the ancestor classes. 17:34 < aiju> fzzbt: inheritance was explicitly avoided in Go 17:34 < wrtp> fzzbt: you can do type MyType struct {*tempate.Template} if you want the template methods too 17:34 < exch> Go doesnt have type hierarchies like you see in C++/java/etc 17:35 < wrtp> it's not too far away - you just can't pass it to something expecting a plain *template.Template 17:35 < wrtp> but that's a good thing, because how could they know about your methods, which might break invariants of the original 17:36 < wrtp> if two packages both defined a method "Foo" on template.Template, how would the system decide which Foo to use? 17:38 -!- ildorn [~ildorn@dslb-188-099-203-155.pools.arcor-ip.net] has joined #go-nuts 17:40 -!- turbinio [~tobias@91-64-124-174-dynip.superkabel.de] has joined #go-nuts 17:40 -!- turbinio [~tobias@91-64-124-174-dynip.superkabel.de] has left #go-nuts [] 17:41 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection] 17:58 -!- PortatoreSanoDiI [~Marvin@dynamic-adsl-94-36-176-4.clienti.tiscali.it] has joined #go-nuts 18:01 -!- Project-2501 [~Marvin@82.84.75.201] has quit [Ping timeout: 240 seconds] 18:02 < skelterjohn> i'm trying to think of the best way to handle something, maybe someone will have a suggestion 18:02 < skelterjohn> goinstall recently added cgo support 18:03 < skelterjohn> using special comments in the source to indicate what libs should be linked 18:03 < skelterjohn> so, i want to have gb also support this 18:03 < plexdev> http://is.gd/U6HDEo by [Robert Griesemer] in 4 subdirs of go/ -- go/printer: remove notion of "Styler", remove HTML mode 18:03 < skelterjohn> so far, so good - i don't suspect there will be a problem getting gb to correctly build packages that work with goinstall 18:03 < skelterjohn> but what about things like runtime? 18:03 < skelterjohn> the runtime package is kind of crazy 18:03 < skelterjohn> if i just have gb invoke a makefile, that works fine 18:04 < skelterjohn> but how can gb know that it can't possibly do the cgo process with the runtime package? 18:09 -!- erus` [~tommo@host86-173-71-44.range86-173.btcentralplus.com] has joined #go-nuts 18:12 < wrtp> skelterjohn: you could always have runtime as a special case :-) 18:12 < wrtp> it'd be a hack but... 18:12 < skelterjohn> it'd be nice to avoid special cases 18:12 < wrtp> of course 18:12 < aiju> the runtime is really crazy 18:12 < aiju> it uses hacks deep inside the compiler 18:12 < skelterjohn> well, if runtime is the only pkg in $GOROOT/src/pkg that needs this consideration, then maybe it's possible 18:12 < wrtp> that's the whole purpose of the runtime... 18:13 < wrtp> it is definitely some kind of a special case. 18:13 < wrtp> but can gb deal with os too? 18:13 < wrtp> i.e. places where you've got arch-specific code 18:13 < wrtp> and what about places with assembly code? 18:13 < skelterjohn> it looks at _$GOOS in the file names 18:13 < skelterjohn> if there is assembly code it invokes a makefile 18:14 < skelterjohn> but since os is pure go, gb builds it fine 18:15 -!- waqas [~waqas@jaim.at] has left #go-nuts [] 18:17 < skelterjohn> looks like the GOROOT packages not in the runtime directory are all pretty simple 18:17 < skelterjohn> in most cases they just build an extra .s file 18:18 < skelterjohn> so perhaps a runtime exception is a good way to go 18:18 * aiju will place foo_linux.go in all his programs with no real meaning 18:18 < aiju> just to confuse gogb! 18:18 < skelterjohn> then you can type gibberish into your makefile 18:18 < skelterjohn> just to confuse make! 18:18 < skelterjohn> :) 18:19 < aiju> make at least doesn't try to outsmart me 18:20 < skelterjohn> gb works by using your directory structure as its build instructions 18:20 < skelterjohn> it's a design choice 18:20 < skelterjohn> seems like a reasonable one 18:22 < skelterjohn> i just get tired of 1) specifying everything twice (once so i can keep track of things, then once again to tell make how to build it) and 2) not being able to figure out how other people's code works until i read the makefile 18:23 -!- twolfe18 [~twolfe18@CMU-421570.WV.CC.CMU.EDU] has quit [Ping timeout: 260 seconds] 18:24 < aiju> i always thought GCC was slow 18:24 < aiju> now i'm working with Xilinx tools 18:24 < aiju> it takes literally minutes to compile 100 lines of code 18:25 < nsf> omg 18:25 < aiju> ok, Verilog is a bit more complex to compile than C 18:25 < nsf> is it written in python or something? 18:25 < nsf> ah, not a C 18:25 < aiju> but just *parsing* the syntax takes longer than to build all of Go 18:26 < aiju> nsf: Java 18:26 -!- TheMue [~TheMue@p5DDF5DCA.dip.t-dialin.net] has joined #go-nuts 18:27 < nsf> should be pretty fast 18:27 < aiju> while the tool is stil displaying its current version, Go has already compiled a ten times larger program 18:27 < aiju> (all the tools are super verbose) 18:27 -!- keithcascio [~keithcasc@nat/google/x-basxlsdmugrivhxe] has joined #go-nuts 18:27 < aiju> and just as expected, the moon phase is not right for RS-232 to work 18:28 < aiju> okay, i just got the baudrate wrong 18:32 < aiju> i really wish Verilog was more like Go 18:34 -!- nettok [~quassel@200.119.150.46] has joined #go-nuts 18:40 < rm445> A hardware description language isn't quite the same thing as a programming language is it? I vaguely thought hardware language compilers (synthesisers?) had to do a lot of hard work to figure out the hardware. 18:40 < aiju> rm445: they have to 18:40 < aiju> there is quite a lot of work involved in compiling code for FPGAs 18:40 < aiju> they have to worry about LUT placement and what not 18:41 < aiju> still, that's no excuse for astronomical time to read in a 100 line file 18:42 -!- tvw [~tv@e176001204.adsl.alicedsl.de] has joined #go-nuts 18:43 -!- jdp__ [~jdp@24.238.32.162.res-cmts.segr.ptd.net] has quit [Read error: Connection reset by peer] 18:43 -!- jdp [~jdp@24.238.32.162.res-cmts.segr.ptd.net] has joined #go-nuts 18:44 -!- ildorn [~ildorn@dslb-188-099-203-155.pools.arcor-ip.net] has quit [Quit: Leaving.] 18:46 -!- ildorn [~ildorn@dslb-188-099-203-155.pools.arcor-ip.net] has joined #go-nuts 18:47 -!- jdp__ [~jdp@24.238.32.162.res-cmts.segr.ptd.net] has joined #go-nuts 18:47 -!- jdp [~jdp@24.238.32.162.res-cmts.segr.ptd.net] has quit [Read error: Connection reset by peer] 18:53 < erus`> skelterjohn: go-gb isnt building 18:54 < erus`> pkg.go:542: undefined: BuildCgoPackage 18:54 < skelterjohn> fixed 18:54 < skelterjohn> ooh no i didn't update the makefile 18:55 < skelterjohn> now fixed :) 18:55 < erus`> perfick 18:55 < erus`> can it build itself now? 18:56 < erus`> yes 18:56 < erus`> i never tried before... 18:57 < erus`> whats this cgo stuff then eh? eh? 18:59 < InaVegt> cgo is the glue between c and go 18:59 -!- zomgbie [~jesus@84.119.84.39] has joined #go-nuts 18:59 < erus`> i know that but skelterjohn said he wouldnt use it because its not standard yet 19:00 < erus`> if i keep rotating a matrix will the axis get out of sync? 19:00 < aiju> erus`: probably 19:00 < aiju> when working with floating point numbers, always expect the unexpected 19:01 -!- piranha [~piranha@5ED4B890.cm-7-5c.dynamic.ziggo.nl] has joined #go-nuts 19:01 -!- dforsyth_ [~dforsyth@bastion.inap.yelpcorp.com] has joined #go-nuts 19:01 < erus`> hmmm whats a solution? 19:02 < erus`> save total rotation in a quaternion maybe 19:03 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 240 seconds] 19:04 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 19:05 < plexdev> http://is.gd/abB23Y by [Roger Peppe] in go/src/pkg/rpc/ -- rpc: make more tolerant of errors. 19:06 -!- twolfe18 [~twolfe18@CMU-421570.WV.CC.CMU.EDU] has joined #go-nuts 19:06 -!- zomgbie [~jesus@84.119.84.39] has quit [Ping timeout: 240 seconds] 19:08 -!- MX80 [~MX80@cust223.253.117.74.dsl.g3telecom.net] has quit [Ping timeout: 250 seconds] 19:08 -!- zomgbie [~jesus@84.119.84.39] has joined #go-nuts 19:14 -!- huin [~huin@91.84.101.139] has joined #go-nuts 19:15 -!- MX80 [~MX80@cust223.253.117.74.dsl.g3telecom.net] has joined #go-nuts 19:16 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has quit [Ping timeout: 255 seconds] 19:17 < skelterjohn> erus`: take a look at the BuildCGoPackage function in cgo.go :) 19:17 < skelterjohn> it's a placeholder for future work 19:17 < skelterjohn> but goinstall can do cgo stuff now, so i'm going to try to work it in 19:17 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Quit: skelterjohn] 19:17 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has joined #go-nuts 19:26 < erus`> my code looks so nice and clean now but it runs twice as slow :/ 19:26 < temoto> erus`, the usual dilemma. 19:27 -!- gits [~gits@77.94.219.158] has joined #go-nuts 19:27 < erus`> I'll have to wrap it at some point 19:27 < erus`> check if value allready calculated 19:29 -!- m4dh4tt3r [~Adium@c-69-181-223-245.hsd1.ca.comcast.net] has joined #go-nuts 19:34 < dforsyth_> are the build scripts done in bash for a reason? 19:37 -!- Fish- [~Fish@9fans.fr] has joined #go-nuts 19:37 < plexdev> http://is.gd/rCGy1H by [Russ Cox] in go/src/pkg/syscall/ -- syscall: do not use NULL for zero-length read, write 19:40 -!- maattd [~maattd@lan31-1-82-66-82-84.fbx.proxad.net] has quit [Quit: Computer has gone to sleep.] 19:42 -!- gits [~gits@77.94.219.158] has quit [Ping timeout: 255 seconds] 19:51 -!- emjayess [~emjayess@pix1.i29.net] has joined #go-nuts 19:52 -!- awidegreen [~quassel@c-eacae555.08-2-73746f39.cust.bredbandsbolaget.se] has quit [Ping timeout: 255 seconds] 19:53 < plexdev> http://is.gd/CyO0RC by [Russ Cox] in 3 subdirs of go/ -- runtime: new allocation strategy for amd64 19:58 -!- awidegreen [~quassel@c-eacae555.08-2-73746f39.cust.bredbandsbolaget.se] has joined #go-nuts 20:00 < erus`> When your nasty bug turns out to be YOU using YOUR api wrong... 20:01 * erus` is so dumb 20:03 -!- jdp__ [~jdp@24.238.32.162.res-cmts.segr.ptd.net] has quit [Read error: Connection reset by peer] 20:03 -!- jdp [~jdp@24.238.32.162.res-cmts.segr.ptd.net] has joined #go-nuts 20:04 -!- twolfe18 [~twolfe18@CMU-421570.WV.CC.CMU.EDU] has quit [Quit: Leaving] 20:10 < plexdev> http://is.gd/zxiYOz by [Russ Cox] in go/src/pkg/runtime/ -- runtime: fix memory allocation on 386 20:10 < madari_> hmm 20:10 < madari_> I wonder which one is supposed to be the right functionality: 20:11 < aiju> 21:02 < erus`> When your nasty bug turns out to be YOU using YOUR api wrong... 20:11 < madari_> a) json.Marshal documentation states: By default the object's key name is the struct field name converted to lower case. 20:11 < aiju> When your really nasty bug turns out to be a missing "|" in 1000 lines of code after days of debugging 20:11 < madari_> b) implementation does not do this 20:11 < aiju> madari_: philosophical question: which one is right? 20:12 < madari_> that's what I'm asking... 20:12 < aiju> if this were true, i'd file a bug report or something 20:12 < aiju> or post on the mailing list 20:12 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts 20:12 < madari_> are there any googlers lurking around here usually? 20:14 < madari_> aiju: yeah I'm creating an issue right now 20:14 < erus`> Andrew gourand said he lurks in here 20:14 < erus`> probly got the name wrong there 20:14 < madari_> :) ok 20:16 < aiju> Go-urand 20:16 < aiju> what an appropriate name 20:18 < erus`> urand when prounced with a cockney accent sounds like "you 'round?" (which means 'are you around') and hes not. Just a coincidence? you decide... 20:18 < aiju> hahaha 20:18 -!- Natch [~natch@c-6dcde155.25-4-64736c10.cust.bredbandsbolaget.se] has joined #go-nuts 20:19 -!- Natch| [~natch@c-6dcde155.25-4-64736c10.cust.bredbandsbolaget.se] has quit [Read error: Operation timed out] 20:19 < rl> madari_: you looking for someone to file bugs with? :p 20:25 -!- Adys [~Adys@unaffiliated/adys] has quit [Remote host closed the connection] 20:34 < madari_> rl: no, that was not my intention. i was actually hoping for some insight e.g. "json.Marshal should indeed lowercase the fields' names" so that I could fix it myself. But since I'm not sure what is the correct behaviour I did create an issue about conflicting implementation and documentation 20:35 -!- DerHorst [~Horst@e176100223.adsl.alicedsl.de] has quit [Remote host closed the connection] 20:44 < wrtp> madari_: is the problem that json.Marshal isn't correctly lowercasing the fields? 20:45 < madari> wrtp: yup. and I didn't see any "failed efforts" to do in the source either so that made me think that maybe the documentation is outdated or wrong. or maybe the other way around 20:47 < madari> but I created an issue, so we'll see what's the correct behaviour when someone responds to it 20:50 -!- dchest [~dchest@95.155.52.241] has quit [Quit: dchest] 20:50 -!- tobik [~tobik@p549FF4A9.dip.t-dialin.net] has quit [Ping timeout: 276 seconds] 20:51 < wrtp> madari: looks like a bug to me 20:52 < wrtp> madari: but it's easy to work around for the time being 20:52 < madari> yeah, but tagging is ugly 20:52 < madari> :) 20:52 < madari> I'm not really having any major issues with that, just happened to notice it 20:53 < madari> Also, if it indeed is a bug, then the quality of the tests aren't so good :) 20:53 < rl> Maybe the tests are testing the wrong thing 20:53 < rl> it happens 20:53 < rl> :p 20:54 < madari> :) 20:54 -!- virtualsue [~chatzilla@nat/cisco/x-arlyotzxbaqqsyvm] has joined #go-nuts 20:57 < plexdev> http://is.gd/JGunNp by [Rob Pike] in go/doc/codelab/wiki/ -- codelab: update due to recent changes in go/printer 20:57 < plexdev> http://is.gd/GJBe3A by [Rob Pike] in go/src/ -- run.bash: must make codelab before we can test it. 20:58 < rl> but what happens if you have both upper and lowercase members where case is the only differentiator? 20:58 < rl> or does it only export uppercased/public members? 20:58 < madari> unexported fields are not marshaled 20:59 < madari> afaik 20:59 < rl> ok 20:59 < madari> but I suppose if you had fields "Foobar" and "FoObAr" it would lead to something like {"foobar":..., "foobar":...} 20:59 < madari> but again, that's just a guess 21:00 < rl> how would that work? 21:00 < rl> but then again if you have Foobar and FoObAr members you probably have bigger problems :p 21:00 < madari> :) 21:01 < madari> in my opinion, the behaviour described in the documentation sounds good: if the struct field has no tag, then lower case it and use that as the object's key name, otherwise use the tag 21:02 -!- dchest [~dchest@95.155.52.241] has joined #go-nuts 21:03 < madari> the current implementation goes a little bit like this: if f.Tag != "" { e.string(f.Tag) } else { e.string(f.Name) } 21:03 -!- pothos_ [~pothos@111-240-167-224.dynamic.hinet.net] has joined #go-nuts 21:04 -!- huin_ [~huin@82.153.223.36] has joined #go-nuts 21:05 -!- pothos [~pothos@111-240-165-153.dynamic.hinet.net] has quit [Ping timeout: 250 seconds] 21:05 -!- huin [~huin@91.84.101.139] has quit [Ping timeout: 246 seconds] 21:08 < rl> sounds inconvenient if you're camelcasing though 21:09 < madari> yup. but the thing is, neither behavior is "wrong". luckily we don't have to be the judges :) 21:14 < plexdev> http://is.gd/SDVgM8 by [Ken Thompson] in go/src/cmd/5g/ -- peep: bug fix 21:21 -!- franksalim [~frank@99-123-6-19.lightspeed.sntcca.sbcglobal.net] has left #go-nuts ["Ex-Chat"] 21:22 < TheMue> Hmm, something is broken. I send a channel over a channel of channels. That's ok. But inside the select I receive a nil. 21:22 < aiju> are you making all the channels? 21:22 < TheMue> yep 21:23 < TheMue> and it's not that I try to receive from nil 21:23 < jnwhiteh> is the channel getting closed? 21:24 < TheMue> error says I try to send to nil and debugging (with print) shows, that the received channel I want to send data with is received as nil 21:24 < erus`> paste bin 21:24 < rl> madari: could be, but out of curiosity what's the benefit or the reasoning behind lowercasing the values? 21:24 < TheMue> jnwhiteh: Has been an idea too, but no, I removed all closes 21:24 < jnwhiteh> can you range instead of select? 21:24 < rl> i mean the member names, not values 21:25 < TheMue> jnwhiteh: No, I've got two channels here 21:25 < TheMue> jnwhiteh: And it already worked 21:25 < jnwhiteh> I mean you can panic when you get the nil value, and see what the sender was doing 21:25 < jnwhiteh> but that's not terribly useful 21:26 < TheMue> jnwhiteh: Just repeated the tests after the last release 21:26 < jnwhiteh> ah, not sure then 21:26 < TheMue> mom 21:26 -!- nutate [~rseymour@cacsag4.usc.edu] has joined #go-nuts 21:28 -!- nettok [~quassel@200.119.150.46] has quit [Ping timeout: 240 seconds] 21:29 -!- artefon [~thiago@189.59.205.194] has quit [Quit: bye] 21:29 < TheMue> Hmm, somehow pastbin didn't work 21:29 -!- huin_ [~huin@82.153.223.36] has quit [Quit: leaving] 21:30 < TheMue> It's here too: http://code.google.com/p/tideland-cgl/source/browse/cglmon/cglmonetm.go 21:31 < TheMue> Line 110 sends the channel, line 223 receives it. 21:31 < TheMue> *sigh* Should repeat all unit tests after each Go update 21:31 < wrtp> can you distill it into less lines? 21:31 < wrtp> i bet it's a bug in your code :-) 21:31 -!- belkiss [~belkiss@drn13-1-78-235-168-105.fbx.proxad.net] has joined #go-nuts 21:32 < TheMue> wrtp: Maybe you're right ;) 21:32 < TheMue> It already worked, no change since October 21:33 -!- erus` [~tommo@host86-173-71-44.range86-173.btcentralplus.com] has quit [Ping timeout: 240 seconds] 21:34 -!- artefon [~thiago@189.59.205.194] has joined #go-nuts 21:34 < TheMue> Btw, already removed the explicit close() statements, no change 21:35 < wrtp> TheMue: at least make it into an independent main program. then we can test it. 21:35 -!- tvw [~tv@e176001204.adsl.alicedsl.de] has quit [Remote host closed the connection] 21:36 -!- Fish- [~Fish@9fans.fr] has quit [Quit: So Long, and Thanks for All the Fish] 21:38 -!- nettok [~quassel@200.119.172.183] has joined #go-nuts 21:38 -!- adu [~ajr@pool-173-79-54-138.washdc.fios.verizon.net] has joined #go-nuts 21:40 -!- artefon [~thiago@189.59.205.194] has quit [Ping timeout: 240 seconds] 21:44 -!- rlab_ [~Miranda@91.200.158.34] has joined #go-nuts 21:46 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 240 seconds] 21:47 -!- belkiss [~belkiss@drn13-1-78-235-168-105.fbx.proxad.net] has quit [Quit: KVIrc Insomnia 4.0.2, revision: 4740, sources date: 20100627, built on: 2010-10-19 12:51:39 UTC http://www.kvirc.net/] 21:48 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:788e:5542:8002:9f96] has quit [Quit: Leaving.] 21:48 -!- TheMue [~TheMue@p5DDF5DCA.dip.t-dialin.net] has quit [Quit: TheMue] 21:48 < madari> rl: that's not an easy question so I'll pass it :D 21:50 < madari> rl: I'm looking forward to see how the googlers decide to resolve it 21:50 -!- Scorchin [~Scorchin@host86-166-58-101.range86-166.btcentralplus.com] has quit [Ping timeout: 240 seconds] 21:51 -!- Scorchin [~Scorchin@host86-145-223-141.range86-145.btcentralplus.com] has joined #go-nuts 21:51 -!- Scorchin [~Scorchin@host86-145-223-141.range86-145.btcentralplus.com] has quit [Client Quit] 21:53 -!- artefon [~thiago@189.59.130.162.dynamic.adsl.gvt.net.br] has joined #go-nuts 21:59 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has quit [Quit: Morten. Desu~] 22:05 -!- artefon [~thiago@189.59.130.162.dynamic.adsl.gvt.net.br] has quit [Read error: Connection reset by peer] 22:07 -!- skelterjohn [~jasmuth@c-71-230-156-50.hsd1.nj.comcast.net] has joined #go-nuts 22:16 < plexdev> http://is.gd/3qSIlh by [Robert Griesemer] in go/doc/codelab/wiki/ -- srcextract: HTML-escape output if so desired 22:19 -!- skelterjohn [~jasmuth@c-71-230-156-50.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] 22:20 -!- awidegreen [~quassel@c-eacae555.08-2-73746f39.cust.bredbandsbolaget.se] has quit [Remote host closed the connection] 22:21 -!- vbh [aa95640a@gateway/web/freenode/ip.170.149.100.10] has joined #go-nuts 22:21 -!- artefon [~thiago@189.59.130.162.dynamic.adsl.gvt.net.br] has joined #go-nuts 22:22 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts 22:23 -!- hokapoka [~hokapoka@hoka.hokapoka.com] has quit [Ping timeout: 265 seconds] 22:24 -!- hokapoka [~hokapoka@hoka.hokapoka.com] has joined #go-nuts 22:26 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has joined #go-nuts 22:29 < vbh> If I collect the return value of a "func() chan int" in a local variable, and that local variable goes out of scope, does that close the channel ? (the callee can still be pushing data to the channel) 22:30 -!- wrtp [~rog@92.17.35.133] has quit [Quit: wrtp] 22:33 < plexdev> http://is.gd/cFCR2v by [Rob Pike] in 9 subdirs of go/ -- template: reverse order of arguments to Execute 22:34 < KirkMcDonald> vbh: No, it does not close the channel. 22:35 -!- Venom_X [~pjacobs@75.92.43.21] has joined #go-nuts 22:36 < vbh> KirkMcDonald: ok, so the sender will be blocked forever then ? 22:36 < KirkMcDonald> Yes. 22:40 < vbh> KirkMcDonald: I was trying out the "sieve" example from the tutorial and missed the "for{}" loop in the go-routine that chains filters together 22:40 < vbh> KirkMcDonald: That would lead to just one filter being initialized, at which point, the go routine would finish execution 22:40 < vbh> KirkMcDonald: however, I get a : "2throw: all goroutines are asleep - deadlock!" runtime-panic 22:42 < vbh> KirkMcDonald: Was just curious why it panic'd .. my guess was that the output channel was local to that routine and went out of scope 22:44 -!- jumzi [~none@c-89-233-234-125.cust.bredband2.com] has quit [Ping timeout: 245 seconds] 22:49 -!- artefon [~thiago@189.59.130.162.dynamic.adsl.gvt.net.br] has quit [Quit: bye] 22:49 -!- emjayess [~emjayess@pix1.i29.net] has quit [Quit: Leaving] 22:50 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts 22:52 < vbh> KirkMcDonald: never mind .. I think I know the answer .. thanks for your help 22:55 -!- virtualsue [~chatzilla@nat/cisco/x-arlyotzxbaqqsyvm] has quit [Ping timeout: 240 seconds] 23:02 -!- jbooth11 [~jay@209.249.216.2] has quit [Quit: Leaving.] 23:03 -!- jumzi [~none@c-89-233-234-125.cust.bredband2.com] has joined #go-nuts 23:03 -!- jbooth1 [~jay@209.249.216.2] has joined #go-nuts 23:06 -!- jbooth1 [~jay@209.249.216.2] has quit [Client Quit] 23:12 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined #go-nuts 23:13 < fenicks> hello 23:14 -!- Adys [~Adys@unaffiliated/adys] has quit [Remote host closed the connection] 23:15 < rl> madari: tbh it seems almost counter intuitive; you have to know that the name changes when it's marshaled. which you can know from reading the doc of course, but if there's no good reason to lowercase it why not keep it simple. 23:15 < rl> I'm sure the guys who wrote the library had the same thoughts though, and for whatever reason decided there was some benefit to lowercasing it 23:15 < rl> Which I'd be curious to hear 23:17 -!- Adys [~Adys@cpc7-chap8-2-0-cust19.aztw.cable.virginmedia.com] has joined #go-nuts 23:17 -!- Adys [~Adys@cpc7-chap8-2-0-cust19.aztw.cable.virginmedia.com] has quit [Changing host] 23:17 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts 23:18 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.4] 23:20 < plexdev> http://is.gd/OeNQQV by [Robert Griesemer] in go/src/cmd/godoc/ -- godoc: optimizations: don't call Write for 0-length data 23:20 < plexdev> http://is.gd/yW0T36 by [Robert Griesemer] in go/src/pkg/bytes/ -- buffer.go: minor optimization, expanded comment 23:21 -!- piranha [~piranha@5ED4B890.cm-7-5c.dynamic.ziggo.nl] has quit [Quit: Computer has gone to sleep.] 23:26 -!- Scorchin [~Scorchin@host86-145-223-141.range86-145.btcentralplus.com] has joined #go-nuts 23:30 -!- jumzi [~none@c-89-233-234-125.cust.bredband2.com] has quit [Remote host closed the connection] 23:35 -!- belkiss [~belkiss@drn13-1-78-235-168-105.fbx.proxad.net] has joined #go-nuts 23:35 -!- belkiss [~belkiss@drn13-1-78-235-168-105.fbx.proxad.net] has quit [Client Quit] 23:46 -!- vbh [aa95640a@gateway/web/freenode/ip.170.149.100.10] has quit [Quit: Page closed] 23:59 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Ping timeout: 276 seconds] --- Log closed Thu Feb 10 00:00:05 2011