--- Log opened Tue May 25 00:00:21 2010 --- Day changed Tue May 25 2010 00:00 -!- Adys [~Adys@unaffiliated/adys] has quit [Quit: I ♥ Unicode] 00:03 -!- scm [justme@80.171.57.77] has quit [Remote host closed the connection] 00:05 -!- scm [justme@80.171.57.77] has joined #go-nuts 00:09 < plexdev> http://is.gd/cnODm by [Christopher Wedgwood] in go/src/pkg/net/ -- net: udp, implement BindToDevice 00:09 < plexdev> http://is.gd/cnODt by [Russ Cox] in 4 subdirs of go/ -- gc: bug281 - bad overlap in stack copy 00:09 < plexdev> http://is.gd/cnODH by [Russ Cox] in 3 subdirs of go/ -- gc: fix shift/reduce conflict in go.y export syntax 00:09 < plexdev> http://is.gd/cnODZ by [Russ Cox] in go/src/pkg/syscall/ -- fix build - nacl stubs 00:09 < plexdev> http://is.gd/cnOEc by [Russ Cox] in 2 subdirs of go/ -- gc: more accurate error description 00:10 -!- Piglet [~Piglet@93-136-58-123.adsl.net.t-com.hr] has quit [Quit: Leaving] 00:11 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts 00:13 -!- photron [~photron@port-92-201-4-198.dynamic.qsc.de] has quit [Ping timeout: 264 seconds] 00:22 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts 00:25 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has joined #go-nuts 00:25 < plexdev> http://is.gd/cnPzn by [Russ Cox] in 2 subdirs of go/ -- 8g: out of register bug 00:29 -!- narsil [~Narsil@rke75-4-82-234-110-106.fbx.proxad.net] has quit [Ping timeout: 245 seconds] 00:34 -!- General13372 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined #go-nuts 00:37 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has quit [Ping timeout: 240 seconds] 00:46 -!- ikke [~ikke@unaffiliated/ikkebr] has quit [] 00:52 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has joined #go-nuts 00:52 -!- ikke [~ikke@unaffiliated/ikkebr] has joined #go-nuts 00:56 -!- ikke [~ikke@unaffiliated/ikkebr] has quit [Client Quit] 01:08 -!- micrypt [~micrypt@94-195-127-212.zone9.bethere.co.uk] has joined #go-nuts 01:09 < micrypt> Looking for a Go equivalent of Python's standard library urllib.urlencode() 01:10 < exch> the http package has Url (en/de)code functions 01:11 < micrypt> exch: Thanks. 01:16 -!- kota1111 [~kota1111@gw2.kbmj.jp] has joined #go-nuts 01:17 -!- fernan [~ca7a95c3@gateway/web/freenode/x-dlnzwhkcfnijdneq] has joined #go-nuts 01:24 -!- gnuvince_ [~vince@70.35.162.12] has joined #go-nuts 01:27 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts 01:28 -!- zyichi [~zyichi@124.205.180.154] has joined #go-nuts 01:34 -!- MizardX [~MizardX@unaffiliated/mizardx] has quit [Ping timeout: 276 seconds] 01:43 -!- b00m_chef [~watr@d64-180-45-230.bchsia.telus.net] has joined #go-nuts 01:44 -!- alexbobp [~alex@adsl-75-34-101-206.dsl.austtx.sbcglobal.net] has joined #go-nuts 01:55 -!- meatmanek [~meatmanek@c-76-21-205-249.hsd1.va.comcast.net] has quit [Ping timeout: 265 seconds] 02:02 -!- meatmanek [~meatmanek@c-76-21-205-249.hsd1.va.comcast.net] has joined #go-nuts 02:19 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit: slashus2] 02:20 -!- ender2070 [~ender2070@bas5-hamilton14-1279279469.dsl.bell.ca] has joined #go-nuts 02:30 -!- diabolix [~jordan@c-98-236-142-92.hsd1.pa.comcast.net] has joined #go-nuts 02:31 -!- diabolix [~jordan@c-98-236-142-92.hsd1.pa.comcast.net] has left #go-nuts ["Leaving"] 02:36 -!- BrowserUk [~irc1_20_B@92.15.74.184] has left #go-nuts [] 02:42 < plexdev> http://is.gd/cnZqU by [Nigel Tao] in go/src/pkg/exp/draw/x11/ -- Optimize exp/draw/x11 flusher inner loop. 02:44 -!- b00m_chef [~watr@d64-180-45-230.bchsia.telus.net] has quit [Ping timeout: 276 seconds] 02:48 -!- Nola [Nola@76.91.62.8] has joined #go-nuts 02:49 < Nola> why is Go (6g 8g) slower tha Luajit, and Lua is a damn dynamic language? 02:49 < Nola> ... 02:50 -!- froyo [~chatzilla@74.86.0.138] has quit [Ping timeout: 272 seconds] 02:52 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 240 seconds] 02:53 < ender2070> because Lua sucks 02:53 < Nola> That's not an answer to my question 02:54 < Nola> I asked why Go is slower (and Go is a statically compiled language) 02:54 < Namegduf> Nola: Slower in what benchmarks? 02:54 < Nola> all of them 02:54 < kimelto> Lua rocks 02:54 < ender2070> Go does a hell of a lot more than Lua 02:54 < Nola> ~3 times slower 02:54 < Namegduf> WHICH specific benchmarks? 02:54 < ender2070> Lua is for bullshit WOW addons 02:55 < exch> lua is actually quite a nice language 02:56 < kimelto> it's nice to embed a scripting langage in your C program. 02:56 < ender2070> python > lua 02:57 -!- kota1111 [~kota1111@gw2.kbmj.jp] has quit [Quit: Leaving...] 02:58 < Nola> "Go does a hell of a lot more than Lua" 02:58 < Nola> example? 02:58 < Namegduf> Do you mean the Shootout benchmarks? 02:58 < Nola> Namegduf: That's one set of benchmarks showing Go is slower than dynamic languages, Yes 02:58 < Namegduf> Nola: What does dynamic vs static have to do with speed? 02:58 < Nola> In my own benchmarks for my target application and domain (music and DSP audio) -- go was 3 to 10 times slower than Lua 02:58 -!- skelterjohn [~jasmuth@c-76-124-23-140.hsd1.nj.comcast.net] has joined #go-nuts 02:59 -!- kota1111 [~kota1111@gw2.kbmj.jp] has joined #go-nuts 02:59 < Nola> Namegduf: It has to do with the fact that I expect a static language to *at least* be much faster 02:59 < exch> would be interesting to see the code you used for those tests 02:59 < Namegduf> Nola: Then your assumption is flawed 03:00 < Nola> its reasonable assumption 03:00 < Namegduf> Not really 03:00 < Nola> Then why would I use a static language? 03:00 < Namegduf> Type safety is a feature 03:00 < Namegduf> Not a drawback. 03:00 < Nola> umm 03:00 < Nola> type safety doesnt require execution time 03:00 < Nola> Its not like lua would be slower if it had "type safety" 03:00 < Namegduf> No, I didn't say it did. 03:01 < Nola> THen what are you saying 03:01 < ender2070> Nola - i'm sure there are tests where Go would be 3 to 10 times faster than Lua 03:01 < Namegduf> I said the feature that statically typed languages offer which dynamically typed languages do not 03:01 < ender2070> right tool for the right job 03:01 < Nola> Its ok that Go is slow .. because it has type safety ? Lol? 03:01 < Namegduf> No? 03:01 < Namegduf> No, I don't think I said that at all 03:01 < Namegduf> At any rate, the answer is obvious 03:02 < ender2070> Nola, does Lua support concurrency and garbage collection? 03:02 < Namegduf> LuaJIT successfully JITs Lua to achieve C-like speed 03:02 < Namegduf> Go's compilers have yet to be nearly that optimised 03:02 < Namegduf> Go is a young language and the compilers are not very heavily optimised at all 03:03 < ender2070> not only that 03:03 < ender2070> hes comparing apples and oranges 03:03 < Namegduf> Additionally, specifiic things like the regex library are unoptimised 03:04 < Namegduf> It's most likely a compiler optimisation difference. 03:06 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Quit: WeeChat 0.3.2] 03:08 < Nola> It's pretty simple 03:08 < d_m> according to http://tinyurl.com/37s8sbj go is mostly faster than lua in execution time (faster on pidigits, slower on almost everything else). that said, implementation != language, and lua is nice, so use it if you want. 03:08 < Nola> http://shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=go&lang2=gpp 03:08 < Nola> 3 to 34 times slower than C++ 03:08 < Nola> so its useless 03:08 < exch> nobody is forcing you to use it :p 03:09 < exch> Lua and c/c++ have had years to mature. Go is barely out of the womb 03:10 < Nola> ok 03:10 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts 03:12 < ender2070> he already sounded like a troll 03:13 < Nola> That's not what they're billing the language as 03:14 < Nola> From the front page of golang.org, it says "Go compilers produce fast code fast. Typical builds take a fraction of a second yet the resulting programs run nearly as quickly as comparable C or C++ code." 03:14 < Nola> So I looked into it, and it's not true 03:14 < Namegduf> Go's principle feature *at present* is not speed. It is the ease of producing *safe* and elegant code in a relatively simple to reason with language. 03:15 < Namegduf> However, it is much closer to C/C++ than many newer, interpreted often, languages are, at least normally. 03:15 < ender2070> Nola - I heard the creator of Go boast mostly about garbage collection and concurrency 03:15 < ender2070> Lua doesn't even have garbage collection 03:15 < Namegduf> Python, PHP, Perl, Ruby, are all a nice set of common ones which make 3x slower look like nothing 03:15 < Namegduf> Java is as fast as C (almost) but uses much, much more memory and has horrible startup times, compared to Go 03:16 < KirkMcDonald> No one seems to remember D in these comparisons. 03:16 < Namegduf> C++ could get faster, perhaps, but it'll never be close to as fast to write fast and good reliable code in. 03:17 < Namegduf> KirkMcDonald: I always thought it was implicitly "C++ but actually worse" 03:17 < KirkMcDonald> heh 03:17 < KirkMcDonald> It may be shit, but it is reasonably performant shit, modulo the GC. 03:17 < Nola> D is "C++ but you cant implement realtime stuff" 03:18 < KirkMcDonald> Sure you can do realtime stuff, you just need to know how to convince the GC to do what you want. 03:18 < Nola> That doesn't work Kirk 03:18 < Nola> There's no way to control stopping the GC on a per-thread basis 03:18 < Nola> And collection is stop-the-world 03:18 < Namegduf> Nola: Anyways, the "nearly as fast" is at present a "to be implemented" thing. 03:18 < KirkMcDonald> By "convince the GC" I mean "preallocate and disable the GC." 03:18 < Nola> Doesn't work, kirk 03:18 < Namegduf> Abysmal cases like 34x slower aren't a language problem, they're a library problem 03:19 < Nola> If you disable the GC because your audio thread needs realtime performance, now you've got a non-working GC for your GUI 03:19 -!- skelterjohn [~jasmuth@c-76-124-23-140.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] 03:19 < KirkMcDonald> Nola: It worked for the Deadlock team. 03:20 < Nola> anything they did would be a hack/workaround/evil deed 03:20 < KirkMcDonald> Yes, I think that goes without saying. :-) 03:20 < Nola> surreptitiously "hiding" a thread from the GC 03:20 < Nola> without language support 03:21 < exch> if it does what you need it to do, then does it really matter if it's 'evil'? :p It's just a tool for a job 03:21 < Nola> and since when do you say D is shit? 03:21 < Nola> you've been a D evangelist 03:21 < KirkMcDonald> Nola: I like D-the-language reasonably well. 03:22 < KirkMcDonald> Nola: D-the-actual-reality-of-the-toolchain has some severe issues. 03:22 -!- ender2070 [~ender2070@bas5-hamilton14-1279279469.dsl.bell.ca] has quit [Ping timeout: 245 seconds] 03:23 < Nola> heh, LuaJit is almost as fast as DMD 03:23 < KirkMcDonald> Though admittedly the last time I seriously wrote something in D was about three years ago, however, I do not believe the situation has fundamentally changed in that time. 03:24 < manveru> i wish 'type' wasn't a keyword... 03:24 < KirkMcDonald> manveru: Call it "kind" instead. 03:25 < manveru> yeah... 03:25 < manveru> just requires some silly mindbending 03:25 -!- babusri [~E50138@122.174.108.85] has joined #go-nuts 03:27 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts 03:29 -!- rhelmer [~rhelmer@adsl-69-107-89-5.dsl.pltn13.pacbell.net] has quit [Ping timeout: 272 seconds] 03:33 < fernan> so why is go slower than lua?? :P 03:35 < Nola> probably cuz of 6g 8g 03:35 < KirkMcDonald> A vast communist conspiracy to sap and impurify our precious processor cycles. 03:36 < Nola> idunno what kinda apps you make Kirk, but I'm constantly out of cycles. 03:37 < Nola> my job for today: drink some heavy coffee and try to make something fast enough to be usable 03:37 < Nola> that's an average day 03:46 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit: slashus2] 03:56 -!- ampleyfly [~ampleyfly@h-149-63.A163.priv.bahnhof.se] has quit [Ping timeout: 265 seconds] 03:58 < exch> Would be nice if goinstall uses the makefiles that come with a remote code repository. Or at the very least traverse subdirectories of a repo for any go files that should be included in the build 03:59 -!- b00m_chef [~watr@d64-180-45-230.bchsia.telus.net] has joined #go-nuts 04:02 < exch> I suppose the ability to put shell scripts in a makefile makes it insecure, but then the actual go source being built can contain all sorts of creepyness 04:07 -!- ampleyfly [~ampleyfly@h-149-63.A163.priv.bahnhof.se] has joined #go-nuts 04:24 < fernan> thats like having a package manager and a code builder 04:26 < fernan> that is creepy 04:26 < exch> well it generates it's own Makefile, so it already is both 04:26 < exch> just not correctly 04:29 < plexdev> http://is.gd/co5w5 by [Robert Griesemer] in go/doc/ -- go spec: minor fix, to match conversion rules 4 and 5 04:32 -!- i3d [~i3d@unaffiliated/i3dmaster] has joined #go-nuts 04:32 < yebyen> hmmm 04:43 -!- noam_ [~noam@77.127.205.252] has joined #go-nuts 04:46 -!- noam [~noam@77.127.205.252] has quit [Ping timeout: 245 seconds] 04:58 -!- i3d [~i3d@unaffiliated/i3dmaster] has quit [Quit: i3d] 05:01 -!- scm [justme@80.171.57.77] has quit [Ping timeout: 276 seconds] 05:01 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 240 seconds] 05:02 -!- scm [justme@d135209.adsl.hansenet.de] has joined #go-nuts 05:03 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts 05:09 -!- Kashia [~Kashia@port-92-200-204-24.dynamic.qsc.de] has quit [Ping timeout: 260 seconds] 05:09 -!- Nola [Nola@76.91.62.8] has left #go-nuts [] 05:13 -!- kingfishr [~kingfishr@71-222-226-71.albq.qwest.net] has joined #go-nuts 05:14 -!- Kashia [~Kashia@port-92-200-76-15.dynamic.qsc.de] has joined #go-nuts 05:14 -!- kingfishr [~kingfishr@71-222-226-71.albq.qwest.net] has quit [Remote host closed the connection] 05:18 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has quit [Quit: This computer has gone to sleep] 05:18 -!- eikenberry [~jae@mail.zhar.net] has quit [Ping timeout: 276 seconds] 05:30 -!- yashi [~yashi@dns1.atmark-techno.com] has quit [Remote host closed the connection] 05:34 -!- kingfishr [~kingfishr@71-222-226-71.albq.qwest.net] has joined #go-nuts 05:36 -!- pmyshkin [~a@unaffiliated/pmyshkin] has quit [Quit: pmyshkin] 05:37 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 264 seconds] 05:43 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts 05:54 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 05:57 -!- yashi [~yashi@dns1.atmark-techno.com] has joined #go-nuts 05:57 -!- bmizerany [~bmizerany@c-24-6-37-113.hsd1.ca.comcast.net] has joined #go-nuts 05:58 -!- yashi [~yashi@dns1.atmark-techno.com] has quit [Remote host closed the connection] 05:59 -!- path[l] [UPP@120.138.102.34] has quit [Quit: path[l]] 06:01 -!- Boney [~paul@124-168-65-117.dyn.iinet.net.au] has quit [Ping timeout: 240 seconds] 06:05 -!- Ginto8 [~Ginto8@pool-72-82-235-34.cmdnnj.fios.verizon.net] has quit [Ping timeout: 265 seconds] 06:07 -!- Boney [~paul@210-84-19-202.dyn.iinet.net.au] has joined #go-nuts 06:10 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 06:13 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 258 seconds] 06:16 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 06:18 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has quit [Ping timeout: 264 seconds] 06:20 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has joined #go-nuts 06:26 -!- kel__ [~kel@cpc2-leat2-0-0-cust98.hers.cable.ntl.com] has joined #go-nuts 06:26 -!- Boney [~paul@210-84-19-202.dyn.iinet.net.au] has quit [Ping timeout: 252 seconds] 06:27 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has quit [Ping timeout: 240 seconds] 06:28 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has joined #go-nuts 06:32 -!- Boney [~paul@124-168-85-82.dyn.iinet.net.au] has joined #go-nuts 06:34 -!- 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]] 06:34 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts 06:38 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has joined #go-nuts 06:38 -!- yashi [~yashi@dns1.atmark-techno.com] has joined #go-nuts 06:47 -!- MizardX [~MizardX@unaffiliated/mizardx] has joined #go-nuts 06:50 -!- ktg1 [~idr@g225064225.adsl.alicedsl.de] has joined #go-nuts 06:55 -!- diegoviola [~diego@adsl-143-18.click.com.py] has left #go-nuts [] 06:59 -!- TR2N [email@89-180-188-173.net.novis.pt] has left #go-nuts [] 06:59 -!- b00m_chef [~watr@d64-180-45-230.bchsia.telus.net] has quit [Ping timeout: 264 seconds] 06:59 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org] 07:02 -!- ssb [~ssb@213.167.39.150] has quit [Ping timeout: 258 seconds] 07:03 -!- froyo [~chatzilla@222.73.189.45] has joined #go-nuts 07:08 -!- Boney [~paul@124-168-85-82.dyn.iinet.net.au] has quit [Ping timeout: 240 seconds] 07:14 -!- froyo [~chatzilla@222.73.189.45] has quit [Ping timeout: 248 seconds] 07:21 -!- zozoR [~zozoR@0x5da69cf2.cpe.ge-0-1-0-1105.hsnqu1.customer.tele.dk] has joined #go-nuts 07:22 -!- andrewh_ [~andrewh@89.193.66.60] has joined #go-nuts 07:23 -!- tibshoot [~tibshoot@gw-puteaux.linagora.com] has joined #go-nuts 07:25 -!- bmizerany [~bmizerany@c-24-6-37-113.hsd1.ca.comcast.net] has quit [Remote host closed the connection] 07:28 -!- andrewh_ [~andrewh@89.193.66.60] has quit [Quit: Leaving] 07:30 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts 07:33 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Ping timeout: 245 seconds] 07:33 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 07:35 -!- bmizerany [~bmizerany@c-24-6-37-113.hsd1.ca.comcast.net] has joined #go-nuts 07:48 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit: slashus2] 07:52 -!- senneth [senneth@irssi/staff/senneth] has quit [Read error: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number] 07:57 -!- senneth_ [senneth@irssi/staff/senneth] has joined #go-nuts 07:57 -!- path[l] [UPP@120.138.102.34] has quit [Quit: path[l]] 07:58 -!- senneth_ [senneth@irssi/staff/senneth] has quit [Client Quit] 08:02 -!- ssb [~ssb@213.167.39.150] has joined #go-nuts 08:10 -!- Kashia [~Kashia@port-92-200-76-15.dynamic.qsc.de] has quit [Quit: This computer has gone to sleep] 08:13 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 08:13 -!- Xera^ [~brit@87-194-208-246.bethere.co.uk] has joined #go-nuts 08:14 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 08:19 -!- ShadowIce [shadowice@unaffiliated/shadowice-x841044] has joined #go-nuts 08:31 -!- nighty^ [~nighty@210.188.173.245] has joined #go-nuts 08:31 -!- ShadowIce [shadowice@unaffiliated/shadowice-x841044] has quit [Ping timeout: 245 seconds] 08:35 -!- tux21b [~tux21b@90.146.60.30] has joined #go-nuts 08:38 -!- narsil [~Narsil@rke75-4-82-234-110-106.fbx.proxad.net] has joined #go-nuts 08:38 -!- ShadowIce [pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts 08:50 -!- ikaros [~ikaros@f052059020.adsl.alicedsl.de] has joined #go-nuts 08:53 -!- photron [~photron@port-92-201-4-198.dynamic.qsc.de] has joined #go-nuts 08:59 -!- GoBIR [~gobir@76.252.29.235] has joined #go-nuts 09:00 -!- Boney [~paul@124-168-84-11.dyn.iinet.net.au] has joined #go-nuts 09:08 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 09:12 -!- path[l] [~path@122.182.0.38] has joined #go-nuts 09:15 -!- Boney_ [~paul@124-168-70-104.dyn.iinet.net.au] has joined #go-nuts 09:16 -!- Boney [~paul@124-168-84-11.dyn.iinet.net.au] has quit [Read error: Operation timed out] 09:19 -!- babusri [~E50138@122.174.108.85] has quit [Ping timeout: 272 seconds] 09:19 -!- fernan [~ca7a95c3@gateway/web/freenode/x-dlnzwhkcfnijdneq] has quit [Quit: Page closed] 09:26 -!- plh [plh@gateway/shell/rootnode.net/x-sftodhwwstbxnyfl] has quit [Quit: emacs] 09:27 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 09:32 -!- Boney_ [~paul@124-168-70-104.dyn.iinet.net.au] has quit [Ping timeout: 265 seconds] 09:32 -!- Agon-laptop [~marcel@HSI-KBW-095-208-003-128.hsi5.kabel-badenwuerttemberg.de] has joined #go-nuts 09:34 -!- Boney [~paul@210-84-17-210.dyn.iinet.net.au] has joined #go-nuts 09:54 -!- tibshoot [~tibshoot@gw-puteaux.linagora.com] has quit [Read error: Connection reset by peer] 09:56 -!- tibshoot [~tibshoot@gw-puteaux.linagora.com] has joined #go-nuts 09:56 -!- aho [~nya@e179176127.adsl.alicedsl.de] has quit [Quit: EXEC_over.METHOD_SUBLIMATION] 10:00 < micrypt> How does setting defaults in type structs work? 10:02 < wrtp> micrypt: the default is zero. 10:03 < bortzmeyer> micrypt: "Otherwise, each variable is initialized to its zero value. " http://golang.org/doc/go_spec.html 10:04 < micrypt> wrtp: Thanks. Would something like this work? http://pastebin.com/gfv8ZyFT 10:04 < micrypt> bortzmeyer: Thanks. 10:07 < wrtp> micrypt: no, that's a syntax error 10:08 < wrtp> zero values are quite a fundamental part of go. it's worth working with them, rather than struggling against them... 10:08 < micrypt> wrtp: Okay, so I ought to pass them in at creation. 10:09 < wrtp> micrypt: not necessarily. you could just set them in the NewClient function 10:10 < micrypt> wrtp: Yeah, that's what I meant. Thanks a lot. 10:10 < wrtp> and then let the user of the API change them if it needs to 10:10 < wrtp> micrypt: to avoid setting all the fields individually, you can have a global var that holds all the fields and their default values 10:11 < wrtp> so below your type Client, you'd have var defaults = Client{URL = SANDBOX_PATH, Client = DEFAULT_CLIENT, ... } 10:16 < micrypt> wrtp: Thanks, I'll look into that. 10:21 < wrtp> micrypt: oops, s/=/:/g in my line above 10:21 < wrtp> as in, the '=' characters should be ':' characters 10:21 < wrtp> apart from the first one, obviously :-) 10:22 < micrypt> wrtp: I noticed. :P 10:30 -!- Agon-laptop [~marcel@HSI-KBW-095-208-003-128.hsi5.kabel-badenwuerttemberg.de] has quit [Ping timeout: 258 seconds] 10:35 -!- Agon-laptop [~marcel@HSI-KBW-095-208-003-128.hsi5.kabel-badenwuerttemberg.de] has joined #go-nuts 10:37 -!- wayneeseguin [~wayneeseg@rrcs-72-45-208-165.nys.biz.rr.com] has quit [Ping timeout: 252 seconds] 10:38 -!- wayneeseguin [~wayneeseg@rrcs-72-45-208-165.nys.biz.rr.com] has joined #go-nuts 10:54 -!- Boney [~paul@210-84-17-210.dyn.iinet.net.au] has quit [Ping timeout: 260 seconds] 10:55 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 10:55 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has joined #go-nuts 10:56 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 10:56 -!- noam_ [~noam@77.127.205.252] has quit [Read error: Connection reset by peer] 10:57 -!- noam_ [~noam@77.127.205.252] has joined #go-nuts 10:59 < micrypt> What might be wrong with this? I keep getting the errors "resp declared and not used" "err declared and not used" http://pastebin.com/Z2bCk0j6 11:00 < micrypt> Nevermind, fixed. 11:02 -!- i__ [~none@unaffiliated/i--/x-3618442] has joined #go-nuts 11:06 -!- Boney [~paul@210-84-3-228.dyn.iinet.net.au] has joined #go-nuts 11:26 -!- noam_ [~noam@77.127.205.252] has quit [Read error: Connection reset by peer] 11:26 -!- noam_ [~noam@77.127.205.252] has joined #go-nuts 11:27 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Quit: WeeChat 0.3.2] 11:30 -!- froyo [~chatzilla@222.73.189.45] has joined #go-nuts 11:43 -!- crashR [~crasher@codextreme.pck.nerim.net] has joined #go-nuts 11:44 -!- alehorst [~alehorst@187.59.16.173] has quit [Ping timeout: 248 seconds] 12:01 -!- tvw [~tv@212.79.9.150] has joined #go-nuts 12:01 -!- alehorst [~alehorst@189.114.191.106] has joined #go-nuts 12:06 < wrtp> another little gem i hadn't appreciated, from the go manual: In general, a conversion succeeds if the value of x is assignment compatible with type T, or if the value would be assignment compatible with type T *if the value's type, or T, or any of their component types were unnamed*. (emphasis mine) 12:09 -!- alehorst [~alehorst@189.114.191.106] has quit [Ping timeout: 248 seconds] 12:10 < wrtp> that means i can put my own methods on some other package's types, if i want... 12:10 -!- zyichi [~zyichi@124.205.180.154] has left #go-nuts [] 12:13 -!- BrowserUk [~irc1_20_B@92.15.74.184] has joined #go-nuts 12:19 -!- vdrab [~vdrab@cap012-251.kcn.ne.jp] has joined #go-nuts 12:19 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 12:19 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 12:25 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Ping timeout: 260 seconds] 12:25 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has joined #go-nuts 12:26 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 12:26 -!- alehorst [~alehorst@201.22.41.93.dynamic.adsl.gvt.net.br] has joined #go-nuts 12:27 -!- narsil [~Narsil@rke75-4-82-234-110-106.fbx.proxad.net] has quit [Ping timeout: 258 seconds] 12:32 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Ping timeout: 240 seconds] 12:33 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 12:34 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined #go-nuts 12:38 -!- General13372 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has quit [Ping timeout: 276 seconds] 12:40 -!- nighty^ [~nighty@210.188.173.245] has quit [Quit: Disappears in a puff of smoke] 12:41 < wrtp> darn, it doesn't work on interface types. i reckon that's a compiler bug. 12:42 -!- skelterjohn [~jasmuth@c-76-124-23-140.hsd1.nj.comcast.net] has joined #go-nuts 12:43 < BrowserUk> I got junk.go:13: must call x.Test?ÀTest I know how to fix it (add ()), but what are the hieroglyphics? 12:45 < BrowserUk> The line of code was x.Test; And shoudl be x.Test(); 12:59 -!- BrowserUk [~irc1_20_B@92.15.74.184] has left #go-nuts [] 13:01 -!- Boney [~paul@210-84-3-228.dyn.iinet.net.au] has quit [Ping timeout: 240 seconds] 13:03 -!- Boney [~paul@124-168-55-132.dyn.iinet.net.au] has joined #go-nuts 13:05 -!- deso [~deso@x0561a.wh30.tu-dresden.de] has joined #go-nuts 13:08 -!- skelterjohn [~jasmuth@c-76-124-23-140.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] 13:08 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 13:09 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 13:10 -!- skelterjohn [~jasmuth@c-76-124-23-140.hsd1.nj.comcast.net] has joined #go-nuts 13:12 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has quit [Quit: This computer has gone to sleep] 13:15 -!- ponce [~ponce@paradisia.net] has joined #go-nuts 13:28 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 13:29 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Read error: Operation timed out] 13:29 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 13:30 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 13:30 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 13:40 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 13:41 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 13:41 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 13:44 -!- saerith [~saerith@dhcp193-136.wireless.buffalo.edu] has joined #go-nuts 13:45 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 13:45 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 13:52 -!- photron [~photron@port-92-201-4-198.dynamic.qsc.de] has quit [Ping timeout: 260 seconds] 13:53 -!- cmarcelo [~cmarcelo@200.184.118.130] has joined #go-nuts 13:53 -!- cmarcelo [~cmarcelo@200.184.118.130] has quit [Changing host] 13:53 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has joined #go-nuts 13:54 -!- saerith [~saerith@dhcp193-136.wireless.buffalo.edu] has quit [Ping timeout: 248 seconds] 13:59 -!- iant [~iant@67.218.105.3] has joined #go-nuts 13:59 -!- mode/#go-nuts [+v iant] by ChanServ 14:01 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 14:01 -!- zyichi [~zyichi@117.79.83.167] has joined #go-nuts 14:01 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 14:04 -!- photron [~photron@port-92-201-9-141.dynamic.qsc.de] has joined #go-nuts 14:04 -!- g0bl1n [~anonymous@a213-22-77-195.cpe.netcabo.pt] has joined #go-nuts 14:04 -!- iant [~iant@67.218.105.3] has quit [Ping timeout: 258 seconds] 14:08 -!- iant [~iant@67.218.105.3] has joined #go-nuts 14:08 -!- mode/#go-nuts [+v iant] by ChanServ 14:14 -!- skelterjohn [~jasmuth@c-76-124-23-140.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] 14:19 -!- rimmmer [~5908a584@gateway/web/freenode/x-kvijmgphnukknkey] has joined #go-nuts 14:22 -!- mbarkhau [~koloss@dslb-084-059-167-248.pools.arcor-ip.net] has joined #go-nuts 14:37 -!- eikenberry [~jae@mail.zhar.net] has joined #go-nuts 14:46 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts 14:47 -!- awidegreen [~quassel@62.176.237.78] has joined #go-nuts 14:48 -!- skelterjohn [~jasmuth@lawn-net168-in.rutgers.edu] has joined #go-nuts 14:55 -!- nighty^ [~nighty@x122091.ppp.asahi-net.or.jp] has joined #go-nuts 14:55 -!- leimy [~user@h-67-102-171-242.sttnwaho.static.covad.net] has joined #go-nuts 14:55 -!- kota1111 [~kota1111@gw2.kbmj.jp] has quit [Quit: Leaving...] 15:01 -!- iant [~iant@67.218.105.3] has quit [Ping timeout: 276 seconds] 15:05 -!- ikaros [~ikaros@f052059020.adsl.alicedsl.de] has quit [Quit: Leave the magic to Houdini] 15:09 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 15:10 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 15:11 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 15:12 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 15:15 -!- Project_2501 [~Marvin@82.84.74.54] has joined #go-nuts 15:17 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has quit [Quit: Leaving.] 15:17 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined #go-nuts 15:21 < manveru> i don't get it... why do imports have to be in $GOROOT? 15:22 -!- rimmmer [~5908a584@gateway/web/freenode/x-kvijmgphnukknkey] has quit [Quit: runs with his ass covered] 15:22 < manveru> i have a lib in another directory, but 6l complains it cannot find /usr/lib/go/pkg/linux_amd64/myimport.a even after it built fine with 6l -I /where/myimport/is 15:22 < manveru> err 15:22 < manveru> 6g built, not 6l :) 15:23 < manveru> 6l obviously doesn't take -I... 15:23 < exch> import "../mylibdir/mylib" 15:23 -!- g0bl1n [~anonymous@a213-22-77-195.cpe.netcabo.pt] has quit [Quit: g0bl1n] 15:23 < manveru> i have to hardcode that? 15:23 -!- BrowserUk [~irc1_20_B@92.15.74.184] has joined #go-nuts 15:23 < exch> ya 15:24 < manveru> that's gross :( 15:24 < exch> or get the lib in the GOROOT package dir 15:24 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 15:24 < manveru> yeah, but i don't want libs to mess with my go install 15:24 < exch> then you're stuck with the path 15:25 < manveru> ok 15:25 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 15:25 < manveru> when is this gonna be fixed? 15:26 < manveru> i still don't get why goinstall doesn't just install somewhere in $HOME if it doesn't have root rights 15:26 < leimy> If it's determined to be a real problem for enough people I guess it will be fixed. 15:26 < leimy> I have my go installation in my home directory 15:27 < exch> I personally have no problem with hardcoding the path. It has to be in a fixed location anyways for the build output of those packages 15:27 < manveru> yeah... that seems the only sane way 15:27 < leimy> global installation of go doesn't seem like it's that advantageous as the go installation is only good for developers not runtime 15:27 < leimy> in fact, go binaries have no runtime deps, so why do a global install? 15:27 * exch has Go in his home dir to 15:27 < manveru> go binaries have runtime deps... no? 15:27 < leimy> nope :-) 15:27 < exch> nope 15:27 < leimy> the kernel 15:27 < manveru> if i like against sdl or opengl? 15:28 < leimy> but that's it :-) 15:28 < manveru> *link 15:28 < exch> if you link against c libs, then obviously you need those libs 15:28 < leimy> and only if you don't link against them statically :-) 15:28 < manveru> i wouldn't even know how to tell go to link static 15:28 < leimy> gcc -static 15:28 < manveru> all those 6g/6l flags are cryptic 15:28 < leimy> if tat's your linker :-) 15:29 < manveru> no, i heard gccgo isn't quite here yet 15:29 < manveru> anyway, this really makes distributing my stuff hard 15:29 < leimy> fair enough 15:30 < leimy> Why?! 15:30 < leimy> how could it be easier with no dependencies? 15:30 < leimy> you'll never have to support an end user having a wrong .so lib 15:30 < leimy> EVER 15:30 < leimy> :-) 15:31 < leimy> I mean this might give a system administrator heartburn 15:31 < leimy> as the don't know what's got what linked to what. 15:31 < manveru> http://paste.pocoo.org/show/218104/ 15:31 < leimy> yep I've got a go binary running right now that when I do "ldd" on it it just says "statically linked" 15:32 < manveru> so if i distribute that, i have to tell people to goinstall Go-SDL and Go-OpenGL, then go in their directories and run a manual `make` as root because goinstall messes up... 15:32 < leimy> Once you start walking the path of C interoperability, you pull in the evil world of shared libs :-) 15:32 < manveru> and all that without knowing that those libs don't mess up the go install itself 15:32 < leimy> nope... you need them to have exactly those libraries you got from ldd 15:32 < manveru> well, there are no alternatives to C 15:33 < leimy> and the go install is not needed on the machine you want to run go programs on. 15:33 < leimy> just the files listed there. 15:33 < manveru> but how do they build it then? 15:33 < leimy> You said "distribute" not "distribute source" 15:33 < manveru> well, that's the same 15:34 < manveru> at least if you think of gentoo or archlinux 15:34 < leimy> See this: http://5ttt.org/ 15:34 < leimy> That's a go social networking application for 3 different programs, distribtued as 64bit binaries, and you don't need Go to run it as far as I can tell. 15:34 < leimy> This guy is "distributing a go program" :-) 15:35 < manveru> yeah, the freenet alternative? 15:35 < leimy> he chose not to release any source at all. 15:35 < leimy> I have no idea, I've never run it :-) 15:35 < manveru> so what about 32bit guys? 15:35 < leimy> he'd have to make you a build 15:35 < manveru> exactly 15:36 < leimy> Well his life is simplified in that he only supports the builds he's done :-) 15:36 < manveru> i can't stand closed source anymore... waiting for adobe and skype to get their act together for 6 years already is enough 15:36 -!- Mopman [~sam@208.43.68.131] has quit [Changing host] 15:36 -!- Mopman [~sam@unaffiliated/mopman] has joined #go-nuts 15:36 < Mopman> thinly veiled FOSS argument presented as a technical one... is thinly veiled :P 15:36 < leimy> well you're talking about a different problem 15:36 < leimy> I was talking about distribution 15:37 < leimy> If you want to distribute the source, go for it, that's a nice thing to do and bless you for doing so. 15:37 < leimy> but if you don't, oh well. Some people might still find that binary useful :-) 15:37 < manveru> i have never released anything without source 15:37 < leimy> Yeah, tonika has no runtime deps other than the kernel 15:38 < manveru> oh well 15:38 < leimy> I have but I've worked for commercial software companies that weren't hot on giving source away 15:38 -!- Venom_X [~pjacobs@71.20.102.220] has joined #go-nuts 15:39 < manveru> i just try to make it easy for other people to build it, either to just run it or to contribute 15:39 < leimy> yeah, and sharing source is the way to go there. :-) 15:39 < leimy> I'm not saying it's bad to share source, in many cases it's the only way to go. 15:39 < manveru> obviously someone can provide binary versions from that easily 15:39 < leimy> exactly 15:39 < leimy> but you have less to support if you don't :-) 15:40 < leimy> or you can give the source and say "I only support my builds" 15:40 < manveru> oh well 15:41 < manveru> i just miss some easy alternative to ruby's $RUBYLIB that allows you to influence the load path 15:41 < leimy> LD_LIBRARY_PATH ? 15:41 < leimy> that's what ELF platforms use right? 15:41 < manveru> i guess, i don't know c that much 15:41 < leimy> Yeah, that's the runtime linker's library path 15:41 < leimy> you can override system defaults with it. 15:42 < manveru> is there something like that for go? 15:43 < manveru> i could adjust the import path and bundle the libraries i use 15:44 < manveru> that's how many larger apps do it anyway 15:45 < manveru> and if i wrap the calls to that library i can localize the import to a single file 15:46 < manveru> i'm still puzzled over why go requires you to import libraries per file and not per package 15:47 < yebyen> ? 15:47 < yebyen> you don't 15:48 < yebyen> you compile a package into a standalone .a 15:48 < yebyen> and then you link that in 15:48 < yebyen> but, you can only link it in to a go program 15:48 < manveru> if you use the math package in a.go and b.go, both belonging to package x, you have to import "math" in both files 15:49 < yebyen> manveru: of course, that's what you mean 15:49 < yebyen> doesn't that make sense? 15:49 < yebyen> if the symbol "math" is in this file, there should be an explanation in this file of what it means 15:49 < yebyen> import "math" 15:49 < manveru> it might make sense as an option, but i think it's cumbersome 15:49 -!- narsil [~Narsil@rke75-4-82-234-110-106.fbx.proxad.net] has joined #go-nuts 15:50 < manveru> if my compiled app has the math lib anyway, i might as well refer to it from elsewhere 15:50 < yebyen> or var math 15:50 < yebyen> hmm 15:50 < yebyen> i see what you're saying 15:50 < yebyen> if i'm declaring a global variable 15:50 < yebyen> i only need to do it in one file for the whole package 15:50 < yebyen> but, if it's a package... 15:50 < manveru> right now i have to toggle stuff like import . "fmt" over various files if i use debugging output 15:51 -!- zyichi [~zyichi@117.79.83.167] has left #go-nuts [] 15:51 < yebyen> you can easily invent a better way to do debugging output 15:51 < manveru> even if i use it all the time in other parts of the package 15:51 < exch> you are saying that if a and b import math.. and then a and b get linked into c, c will contain all math code twice? 15:51 -!- barismetin [~barismeti@kde/developer/baris] has joined #go-nuts 15:51 < exch> there's bound to be some issues there with duplicate symbol definitions 15:51 < yebyen> exch: no, we're saying that it's kind of arbitrary to have global variables that you can define once anywhere in the package 15:51 < manveru> exch: i don't think so 15:51 < exch> right, fair enough 15:51 < yebyen> and then turn around and say, the package import statement must be specified in every file in the package 15:52 < exch> I suppose that's a bit odd 15:52 < yebyen> global variables are a bad policy anyway 15:52 < manveru> but i also cannot say something like: import(mymath "math"); math = mymath 15:52 -!- emiel_ [~emiel@c-3d4071d5.610-2-64736c10.cust.bredbandsbolaget.se] has quit [Read error: Operation timed out] 15:52 < manveru> and use math that way 15:52 < yebyen> if you're holding them up as your example of "why to do something this way" 15:52 -!- emiel_ [~emiel@c-3d4071d5.610-2-64736c10.cust.bredbandsbolaget.se] has joined #go-nuts 15:52 < yebyen> yeah, they're not proper symbols like in lisp either 15:52 < yebyen> just name spaces 15:53 < yebyen> are there operations you can perform on a package name? 15:53 < manveru> not that i know of 15:53 < yebyen> for reflection, list the methods it owns, something like that 15:53 -!- Kashia [~Kashia@port-92-200-76-15.dynamic.qsc.de] has joined #go-nuts 15:54 < yebyen> if the package is not an object, i guess it would have no reflection of any kind 15:54 < manveru> so right now go drives me towards wrapping all calls to other libraries into in-package functions just so i don't have to import all over my files the same libs 15:54 < yebyen> import neutrino 15:54 < manveru> Kashia: oi 15:55 < manveru> i don't see how this has anything to do with global variables though 15:55 < Eko> manveru: contrariwise, go gives you the ability to only import the necessary packages to compile each individual file 15:56 < manveru> uhm 15:56 < yebyen> manveru: if you're debugging one file, you only need to add the import statement for your debugging/logging package in that one file 15:56 < manveru> if they belong to the same package, it usually means you have to compile _all_ files anyway since they depend on each other 15:56 < yebyen> manveru: if you're debugging multiple files in one package, try making your debug statement a closure 15:57 < manveru> of course i could put all code into a single file, that would solve it.... :P 15:57 < yebyen> manveru: and assign it to the global variable somewhere in your package 15:57 < yebyen> then, your other package files in the package won't need to import anything, just call the closure variable 15:57 < yebyen> it's kind of a bastardized use of closures 15:58 < yebyen> but it exploits the fact that global variables are declared semantically different from package imports 15:58 < yebyen> manveru: do you know what i mean? 15:58 < manveru> yeah 15:58 < manveru> and i don't think i like that much better 15:58 < yebyen> well 15:59 < manveru> sorry to be all ranty today :) 15:59 < Eko> if you're talking about debugging, I have an elog package that I wrote which allows me to send all of my logging to a Logger object and it filters the output based on the level I associate with it; so when I'm done with debugging, I can set the filter level up and only get warning and error messages. 15:59 < yebyen> Eko: great, you can pass that logging object around, or put it somewhere in scope of the closure that we're talking about, and pass that closure around 15:59 < yebyen> that's really more what you should be doing 16:00 < Eko> I've been conditioned to not use globals, so I pass it around or store it in objects, lol 16:00 < manveru> i usually just use Println statements to narrow down weird behaviour, when i'm done with that i remove them, and of course have to remove the import as well 16:00 < yebyen> manveru: right... so, have this in some file 16:01 < yebyen> import "fmt"; var dbg=func(d string) { fmt.Println(d) } 16:01 < yebyen> then, anywhere in your package, you can call dbg("the message") 16:01 < Eko> I've learned to write debug statements (using level FINEST) that are meaningful enough that I don't feel the need to remove them, but I don't feel bad leaving them in the code when I can't ever see its output when I set the filter up. 16:01 < yebyen> with no adornments 16:01 < manveru> Eko: but that affects the performance 16:02 < manveru> yebyen: that only works for strings 16:02 < manveru> Println is nice because it uses the ...interface{} thingy 16:02 < yebyen> import "fmt"; var dbg=func(d interface{}) {...} 16:02 < manveru> which is kinda hard to wrap 16:02 < Eko> then make a func(f string, a ...interface{}) { fmt.Printf(fmt, a) } 16:03 < Eko> er 16:03 < Eko> f,a 16:03 < yebyen> ...interface{} is really the syntax for that? 16:03 < yebyen> does it come back in an array of interface{} 16:03 < Eko> yep. and it can be passed straight back into the fmt.*print* functions 16:03 < yebyen> i know my professor had a pack of slides that explained how to use ... 16:04 < yebyen> you need to know about reflection if you plan to do anything with the contents of that array? 16:04 < yebyen> or just type assertion 16:04 < Eko> I'm not actually sure how to use the value that you get out of ...interface{}, I just know I can pass it to the fmt commands lol 16:04 < manveru> it's type []interface{} 16:04 < yebyen> and switch .(type) 16:04 < manveru> so you can range and use reflect 16:04 < manveru> which is what fmt does 16:04 < Eko> I figured as much; it's just never come up. 16:05 < yebyen> yeah you probably don't try to write code like that 16:05 < manveru> heh 16:05 < yebyen> generally 16:05 < Eko> I've been coding Go for 48 hours now and am really, really enjoying it. 16:05 < yebyen> types are good 16:05 < Eko> it's got all of my favorite aspects of C, Java, and Ruby. 16:05 < yebyen> i would like to chat with a ruby person about ruby 16:06 < yebyen> i've been coding go for 11 weeks 16:06 < manveru> i have code like this: http://paste.pocoo.org/show/218115/ 16:06 < Eko> and as for the performance hit of having a dedicated logger, manveru, with a language whose inner loop time is 10% off of C, I don't really worry about the performance hit of having debuggable code. 16:06 < yebyen> and it seems like it doesn't have half as many fancy tricks as ruby 16:07 < Eko> it doesn't have as many fancy tricks, but it has closures and another neat data structure (channels) that let you do a lot of really neat things 16:07 -!- vdrab [~vdrab@cap012-251.kcn.ne.jp] has quit [Quit: vdrab] 16:07 < manveru> yeah 16:08 < Eko> once more packages start implementing things like strings.Map, it'll start to have more ruby-like trickiness 16:08 < manveru> go certainly isn't bad, just from time to time it rubs me the wrong way because it's still pretty raw 16:09 < Eko> I've always liked it a little rough ;) 16:09 < Eko> I think it's definitely a step in the right direction as far as languages go. 16:10 < manveru> hehe 16:10 < manveru> my co-worker still mocks me for learning go... he loves his sbcl 16:10 < Eko> rofl 16:10 < taruti> :D 16:10 < taruti> give him some extra parens to make amends? 16:10 < Eko> common lisp is neat, but... functional programming has its place, and it's not as a general purpose programming language 16:11 < ThunderChicken> Heh. 16:11 < ThunderChicken> FP is best as a sublanguage used to solve very specific subproblems. 16:11 < Eko> hehe. 16:11 < manveru> :) 16:11 < manveru> i don't mind lisp, just not something i wanna do all day 16:12 < Eko> GoBIR: bye 16:12 -!- GoBIR [~gobir@76.252.29.235] has quit [Quit: SIGINT: interrupt] 16:12 < manveru> you end up trying to wrap everything into neat lists 16:12 < Eko> yeah 16:12 < taruti> btw CL is not functional but multiparagdim 16:12 < Eko> and then when you get really hard-pressed, you make it into a record and have lists of records 16:12 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Ping timeout: 260 seconds] 16:13 < taruti> well there is a rich object system too 16:13 < Eko> meh; I find that life is a lot better when you don't use the imperative things in CL 16:14 < manveru> taruti: but you can't deny that lisp is viral, kinda like haskell 16:14 < Eko> as in, it gets into your head and does a lot of damage before you even know what's going on? lol 16:14 < taruti> manveru: I like my Haskell without lisp, thank you very much :) 16:14 < manveru> you try to interface with something, see it doesn't exactly map as nicely with your language as it should, and try to rewrite it 16:15 < manveru> or maybe that's just me 16:15 < taruti> Is there a good writeup on the "correct" way to handle closing channels / stopping go-routines in Go? 16:15 < manveru> i prefer pragmatic over pure 16:16 < manveru> hmm 16:16 < manveru> effective go? 16:16 < taruti> I think of Haskell is very intuitive, but it might have eaten my brain already many years ago 16:16 < manveru> yeah, haskell these days is better 16:16 < taruti> manveru: nope 16:17 < manveru> mostly because it now has a vast amount of libraries 16:17 -!- barismetin [~barismeti@kde/developer/baris] has quit [Quit: Leaving...] 16:17 < manveru> hmm 16:18 < manveru> then there is not much about it, i'm afraid... maybe some snippets on the ML 16:18 -!- emiel__ [~emiel@c-3d4071d5.610-2-64736c10.cust.bredbandsbolaget.se] has joined #go-nuts 16:18 < manveru> http://groups.google.com/group/golang-nuts/browse_thread/thread/2389c05ba1d510e3 16:19 < manveru> now, where was i... 16:19 < manveru> right, making improvments to go-sdl 16:19 < manveru> bbl 16:19 < taruti> just that it is a tricky subject (I am teaching someone Go and she has issues with channels and I am thinking of what to give her for reading). 16:19 -!- narsil [~Narsil@rke75-4-82-234-110-106.fbx.proxad.net] has quit [Read error: No route to host] 16:20 -!- emiel_ [~emiel@c-3d4071d5.610-2-64736c10.cust.bredbandsbolaget.se] has quit [Ping timeout: 240 seconds] 16:21 < manveru> so 16:21 < manveru> i see make creates a file in ttf/_obj/sdl/ttf.a for example 16:22 < manveru> i wonder what the _obj is about 16:24 < kmeyer> just a build directory that tries to not conflict with any dirname you would use 16:28 < BrowserUk> How do you do the equivalent of C<for( i = 0, j=0; i < n; ++i, ++j )>? 16:29 < manveru> for i := 0; i < n; i++, j++ {} ? 16:29 < manveru> err 16:29 < manveru> for i, j := 0, 0; i < n; i++, j++ {} ? 16:31 < wrtp> manveru: just glanced at your code (http://paste.pocoo.org/show/218115/) -- why not just use interfaces? they'll be much more efficient, i'd guess. 16:31 < manveru> wrtp: because then i'd have to implement those functions in lots of different places 16:32 < manveru> all i care about are these fields 16:32 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 16:32 < manveru> and interfaces cannot cover fields 16:32 -!- iant [~iant@nat/google/x-ktrrbwjgyuyymyfl] has joined #go-nuts 16:32 -!- mode/#go-nuts [+v iant] by ChanServ 16:33 < manveru> so yeah, it's not performant, but it's fast enough and a whole lot more comfortable 16:33 < wrtp> manveru: you don't have to implement those functions in lots of different places - just include a single struct that implements the functions required 16:34 -!- deso [~deso@x0561a.wh30.tu-dresden.de] has quit [Read error: Connection reset by peer] 16:34 < manveru> BrowserUk: i just checked the spec, it seems like there is no equivalent in go 16:34 < kmeyer> manveru: not quite 16:34 < kmeyer> i and j will only exist for that scope in Go ; in C they are defined outside the loop and therefore exist after the loop ends 16:34 < kmeyer> :) 16:35 < wrtp> e.g. type DrawablesId struct {d Drawable}; func (d DrawabelsId) GetDrawable() Drawable; type DrawableInterface interface {GetDrawable() Drawable} 16:35 < BrowserUk> manveru: Indeed, Best I came up with was go<for i,j := 0,0; i < 10; i++ { println( i, j ); j++; }> 16:35 < manveru> the postcondition can only be a simple statement 16:35 < kmeyer> ah 16:35 < kmeyer> well 16:35 < kmeyer> ok 16:36 < kmeyer> i, j = i+1, j+1 ? 16:36 < manveru> the other point is valid too, but i don't think that's what he cared about 16:36 < wrtp> then in any struct, just include it: e.g. type SomeStruct {DrawblesID; anotherField int} 16:36 < manveru> kmeyer: let's try :) 16:36 -!- froyo [~chatzilla@222.73.189.45] has quit [Ping timeout: 240 seconds] 16:36 < kmeyer> :P 16:37 < manveru> for i, j := 0, 0; i < n; i, j = i+1, j+1 { 16:37 < wrtp> kmeyer: yes 16:37 < manveru> this compiles 16:37 < BrowserUk> kmeyer: that works. 16:37 < kmeyer> neat 16:37 < kmeyer> kind of gross, but neat 16:37 < manveru> hmm 16:37 * BrowserUk nods... 16:37 < wrtp> but in general it's better to have one controlling variable, and increment the other outside the loop header 16:37 < manveru> i, j += 1, 1 would be neat :) 16:38 < wrtp> i still really want to be able to have a two-statement for claus 16:38 < wrtp> e 16:38 -!- Venom_X_ [~pjacobs@66.54.185.131] has joined #go-nuts 16:38 < wrtp> how about... it gets called "while" ?! 16:39 < wrtp> while n, err := fd.Read(buf); n > 0 { 16:39 < wrtp> } 16:39 < manveru> and ignore err? :) 16:39 < manveru> sorry, red herring 16:40 < manveru> doesn't need a new keyword anyway, since binary for-statement still has no spec 16:41 -!- tibshoot [~tibshoot@gw-puteaux.linagora.com] has quit [Quit: Quitte] 16:41 < wrtp> manveru: i agree. but it's confusing to use for, because the meaning of the first statement changes 16:41 -!- Venom_X [~pjacobs@71.20.102.220] has quit [Ping timeout: 240 seconds] 16:42 < manveru> i don't see why that would be an argument 16:42 < manveru> unary for statemnt differs from the first clause in ternary too 16:43 -!- Venom_X_ [~pjacobs@66.54.185.131] has quit [Ping timeout: 258 seconds] 16:43 <+iant> the unary for statement looks clearly different; I would be concerned that a two clause for statement would look a lot like a three clause statement but behave significantly differently 16:43 < manveru> for n > 0 {} has only the middle statement in common with for n := 0; n < 10; n++ {} 16:43 < wrtp> that is true. but one more rule may be one too many 16:44 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts 16:44 < wrtp> iant: yes. that's why i though one could just call it "while" 16:44 < wrtp> s/though/thought/ 16:44 < manveru> i'd rather see stuff like 1.upto(10, func(n int){}) :) 16:45 -!- piglet_ [~piglet@93-136-61-105.adsl.net.t-com.hr] has joined #go-nuts 16:45 < manveru> fd.ReadWith(buf, func(...){}) 16:46 < manveru> less pollution outside libraries... 16:56 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 16:56 -!- carllerche [~carllerch@208.87.61.203] has joined #go-nuts 16:57 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 16:57 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:318f:e5c7:6583:bc1b] has joined #go-nuts 17:02 -!- path[l] [~path@122.182.0.38] has quit [Quit: path[l]] 17:09 -!- Xurix [~Luixsia@AToulouse-254-1-27-90.w81-250.abo.wanadoo.fr] has joined #go-nuts 17:10 -!- path[l] [~path@59.162.86.164] has joined #go-nuts 17:17 -!- i__ [~none@unaffiliated/i--/x-3618442] has quit [Quit: Lost terminal] 17:18 -!- micrypt [~micrypt@94-195-127-212.zone9.bethere.co.uk] has quit [Quit: Leaving.] 17:21 < manveru> given i have a uint8 where every bit stands for a boolean 17:21 -!- nighty^ [~nighty@x122091.ppp.asahi-net.or.jp] has quit [Quit: Disappears in a puff of smoke] 17:22 < manveru> the way to test for them is flags & 0x2 (checking for 3rd bit on), right? 17:22 < manveru> doesn't even need the 0x part... 17:23 -!- ikaros [~ikaros@f052059020.adsl.alicedsl.de] has joined #go-nuts 17:23 < photron> flags & 4 tests for the 3rd bit 17:24 < wrtp> flags & (1 << n) is probably the nicest way to write it 17:25 < wrtp> actually flags&(1<<n) != 0 17:25 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]] 17:26 < manveru> n is? 17:26 < photron> the bit position starting from 0 17:26 < wrtp> yup 17:26 < manveru> ok... 17:27 < manveru> that works nicely, thanks :) 17:27 < manveru> proof of concept: >> (0..7).map{|n| 0b10101101 & (1<<n) != 0 } 17:27 < manveru> => [true, false, true, true, false, true, false, true] 17:27 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 17:27 < manveru> thanks 17:28 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 17:31 < kmeyer> I think you might want #ruby-lang ;) 17:32 < manveru> lol 17:32 -!- aho [~nya@f051154225.adsl.alicedsl.de] has joined #go-nuts 17:32 < manveru> nah, it's just that i'm still waiting for igo 17:33 < manveru> go isn't exactly a language for oneliners either... 17:38 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection] 17:38 < MizardX> well... linbreaks aren't required :P 17:39 * wrtp thinks it would be nice if go supported binary constants 17:41 < BrowserUk> manveru: When you're just testing syntax and have a few variables declared but as unused, you can shut the compiler up with func use( ... ) {} ... use( unusedVarOfAnyType, unused2 ); 17:44 < KirkMcDonald> wrtp: As in 0b0101010? 17:45 -!- Venom_X_ [~pjacobs@71.20.102.220] has joined #go-nuts 17:48 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Ping timeout: 252 seconds] 17:49 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has quit [Remote host closed the connection] 17:50 -!- Kashia [~Kashia@port-92-200-76-15.dynamic.qsc.de] has quit [Quit: Leaving] 17:51 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit: slashus2] 17:53 < wrtp> KirkMcDonald: yes 17:59 -!- name [~name@sburn/devel/name] has joined #go-nuts 18:12 -!- Xurix [~Luixsia@AToulouse-254-1-27-90.w81-250.abo.wanadoo.fr] has quit [Ping timeout: 240 seconds] 18:18 -!- i__ [~none@unaffiliated/i--/x-3618442] has joined #go-nuts 18:20 -!- slashus2 [~slashus2@65.197.8.82] has joined #go-nuts 18:20 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts 18:26 -!- Gianna_Parry [~gabrielb@c-68-80-9-150.hsd1.nj.comcast.net] has joined #go-nuts 18:26 -!- Gianna_Parry [~gabrielb@c-68-80-9-150.hsd1.nj.comcast.net] has left #go-nuts [] 18:32 -!- slashus2 [~slashus2@65.197.8.82] has quit [Quit: slashus2] 18:41 -!- cmarcelo [~cmarcelo@200.184.118.130] has joined #go-nuts 18:41 -!- cmarcelo [~cmarcelo@200.184.118.130] has quit [Changing host] 18:41 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has joined #go-nuts 18:42 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts 18:44 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 18:45 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 18:52 -!- plainhao [~plainhao@mail.xbiotica.com] has joined #go-nuts 18:56 -!- deso [~deso@x0561a.wh30.tu-dresden.de] has joined #go-nuts 18:58 -!- peterdn_ [~peterdn@cpc1-oxfd18-2-0-cust512.4-3.cable.virginmedia.com] has joined #go-nuts 18:58 -!- peterdn_ [~peterdn@cpc1-oxfd18-2-0-cust512.4-3.cable.virginmedia.com] has quit [Client Quit] 19:00 -!- peterdn [~peterdn@cpc1-oxfd18-2-0-cust914.4-3.cable.virginmedia.com] has quit [Ping timeout: 245 seconds] 19:00 -!- zcram [~zcram@133.193.159.217.dyn.estpak.ee] has joined #go-nuts 19:03 -!- tvw [~tv@e176008001.adsl.alicedsl.de] has joined #go-nuts 19:12 -!- slashus2 [~slashus2@74-141-108-109.dhcp.insightbb.com] has joined #go-nuts 19:13 -!- michael| [~maikeru@unaffiliated/maikeru/x-7708887] has quit [Ping timeout: 248 seconds] 19:18 -!- slashus2 [~slashus2@74-141-108-109.dhcp.insightbb.com] has quit [Ping timeout: 260 seconds] 19:21 -!- zcram [~zcram@133.193.159.217.dyn.estpak.ee] has quit [Quit: Leaving] 19:24 -!- BrowserUk [~irc1_20_B@92.15.74.184] has quit [Quit: BrowserUk] 19:26 -!- plainhao [~plainhao@mail.xbiotica.com] has quit [Quit: plainhao] 19:26 -!- zcram [~zcram@133.193.159.217.dyn.estpak.ee] has joined #go-nuts 19:33 -!- michael| [~maikeru@unaffiliated/maikeru/x-7708887] has joined #go-nuts 19:35 -!- michael|_ [~maikeru@24-107-56-173.dhcp.stls.mo.charter.com] has joined #go-nuts 19:37 -!- michael|_ [~maikeru@24-107-56-173.dhcp.stls.mo.charter.com] has quit [Client Quit] 19:39 -!- tvw [~tv@e176008001.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 19:43 < Eko> what happens if a channel has multiple listeners and you <- something into it? 19:48 < exch> first come, first serve I suppose 19:49 < Eko> that wouldn't happen to be specific to, for instance, NOT signal.Incoming? >_< 19:50 < Eko> I'm trying to figure out exactly how signal dispatching works, as I am trapping a signal in my read loop and my main loop appears to be dying before it notices that the read loop is telling it it's over (different packages, different goroutines) 19:51 < exch> it's a channel :p So if something reads from it, it no longer yields said signal to any subsequent readers 19:51 < exch> which one may get that signal is prolly unpredictable 19:53 -!- Venom_X_ [~pjacobs@71.20.102.220] has joined #go-nuts 19:53 < Eko> so, I get to make my own signal dispatcher? yay 19:56 -!- Venom_X [~pjacobs@71.20.102.220] has quit [Ping timeout: 276 seconds] 19:58 -!- leimy [~user@h-67-102-171-242.sttnwaho.static.covad.net] has quit [Ping timeout: 260 seconds] 19:58 -!- i__ [~none@unaffiliated/i--/x-3618442] has quit [Quit: Lost terminal] 19:59 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 19:59 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 20:00 -!- fhs [~fhs@pool-71-167-84-226.nycmny.east.verizon.net] has joined #go-nuts 20:05 -!- bizzone_marc [~marc@38.109.164.242] has joined #go-nuts 20:11 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 20:12 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 20:16 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Ping timeout: 258 seconds] 20:17 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 20:17 -!- slashus2 [~slashus2@74-141-108-109.dhcp.insightbb.com] has joined #go-nuts 20:18 < Eko> looks like my problem was fixed by switching what routine was in main.main and what routine was run in a goroutine =D 20:18 < Eko> hmm, nope. 20:19 < Eko> I thought when main() exited, the whole program went byebye 20:20 < Eko> oh, it does... it would help if I close()d the chan, lol. 20:26 -!- zcram [~zcram@133.193.159.217.dyn.estpak.ee] has quit [Quit: Leaving] 20:27 -!- scherkus [~scherkus@74.125.59.73] has joined #go-nuts 20:29 -!- mhi_ [~mhi@home.zedat.fu-berlin.de] has joined #go-nuts 20:32 -!- yebyen [~yebyen@harrydavis.csh.rit.edu] has quit [Remote host closed the connection] 20:32 -!- ktg1 [~idr@g225064225.adsl.alicedsl.de] has quit [Remote host closed the connection] 20:34 -!- tux21b [~tux21b@90.146.60.30] has quit [Read error: Connection reset by peer] 20:36 -!- ShadowIce [pyoro@unaffiliated/shadowice-x841044] has quit [Ping timeout: 276 seconds] 20:37 -!- mbarkhau [~koloss@dslb-084-059-167-248.pools.arcor-ip.net] has quit [Quit: Leaving.] 20:37 -!- zozoR [~zozoR@0x5da69cf2.cpe.ge-0-1-0-1105.hsnqu1.customer.tele.dk] has quit [Quit: Morten. Desu~] 20:38 -!- kingfishr [~kingfishr@71-222-226-71.albq.qwest.net] has quit [Quit: Leaving] 20:40 -!- kingfishr [~kingfishr@71-222-226-71.albq.qwest.net] has joined #go-nuts 20:40 -!- kingfishr [~kingfishr@71-222-226-71.albq.qwest.net] has quit [Remote host closed the connection] 20:41 -!- kingfishr [~kingfishr@71-222-226-71.albq.qwest.net] has joined #go-nuts 20:42 -!- samferry [sam@atheme/member/samferry] has quit [Read error: Operation timed out] 20:42 -!- samferry [sam@atheme/member/samferry] has joined #go-nuts 20:42 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 20:42 -!- skelterjohn [~jasmuth@lawn-net168-in.rutgers.edu] has quit [Quit: skelterjohn] 20:43 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 20:56 -!- Ginto8 [~Ginto8@pool-72-82-235-34.cmdnnj.fios.verizon.net] has joined #go-nuts 20:57 -!- ikaros [~ikaros@f052059020.adsl.alicedsl.de] has quit [Quit: Leave the magic to Houdini] 21:11 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 21:16 -!- MizardX- [~MizardX@unaffiliated/mizardx] has joined #go-nuts 21:16 -!- noam_ [~noam@77.127.205.252] has quit [Read error: Connection reset by peer] 21:17 -!- noam_ [~noam@77.127.205.252] has joined #go-nuts 21:17 -!- MizardX [~MizardX@unaffiliated/mizardx] has quit [Read error: No route to host] 21:17 -!- deso [~deso@x0561a.wh30.tu-dresden.de] has quit [Remote host closed the connection] 21:22 < plexdev> http://is.gd/cp2PV by [Andrew Gerrand] in go/misc/dashboard/godashboard/ -- godashboard: change behaviour of top button 21:24 -!- skelterjohn [~jasmuth@c-76-124-23-140.hsd1.nj.comcast.net] has joined #go-nuts 21:24 -!- tabo [~tabot@camelot.tabo.pe] has joined #go-nuts 21:25 -!- napsy [~luka@88.200.96.14] has joined #go-nuts 21:30 -!- Project_Moon [~Marvin@82.84.74.54] has quit [Quit: E se abbasso questa leva che succ...] 21:32 -!- Xurix [~Luixsia@AToulouse-254-1-12-237.w83-203.abo.wanadoo.fr] has joined #go-nuts 21:34 -!- slashus2 [~slashus2@74-141-108-109.dhcp.insightbb.com] has quit [Quit: slashus2] 21:37 -!- awidegreen [~quassel@62.176.237.78] has quit [Remote host closed the connection] 21:38 -!- tvw [~tv@e176008001.adsl.alicedsl.de] has joined #go-nuts 21:41 -!- bizzone_marc [~marc@38.109.164.242] has left #go-nuts ["Leaving"] 21:42 -!- kel__ [~kel@cpc2-leat2-0-0-cust98.hers.cable.ntl.com] has quit [Ping timeout: 245 seconds] 21:45 < KirkMcDonald> Let's say I have two goroutines which both have a reference to the same slice. 21:46 < KirkMcDonald> The slice is a slice of pointers. 21:46 < KirkMcDonald> One of the goroutines iterates over the slice repeatedly, doing stuff with each element. 21:47 < KirkMcDonald> The other periodically reassigns specific elements of the slice. 21:47 < KirkMcDonald> Is that assignment atomic? Do I require an explicit mutex? 21:48 < jessta> KirkMcDonald: have you read, http://golang.org/doc/go_mem.html 21:48 <+iant> the assignment is not atomic, and you do need an explicit mutex 21:48 < KirkMcDonald> Thank you. 21:49 < Ginto8> pointer copying isn't atomic? interesting 21:49 < Ginto8> I thought pointers were word-size 21:49 <+iant> they are, and if you want to rely on processor behaviour you can 21:49 < Ginto8> oh 21:49 <+iant> but Go does not do any explicit memory lock operations 21:50 < Ginto8> it just can't be guaranteed that it's atomic? 21:50 <+iant> we may have a "very safe" mode at some point which makes those operation atomic 21:50 < Ginto8> one of those "it might be on some systems, might not be on others" sort of thing? 21:50 <+iant> right 21:51 < KirkMcDonald> So it will be atomic on (say) x86, but correct code will use an explicit mutex. 21:51 < Ginto8> yes 21:51 <+iant> yes, for some definition of atomic; on an SMP system different processors can see inconsistent data 21:51 <+iant> that is, inconsistent ordering of changes to the data 21:51 < Ginto8> yep 21:51 <+iant> which may not matter for your use case 21:52 < KirkMcDonald> It doesn't, in this case. 21:52 < Ginto8> channels may or may not work better than a slice in your case 21:52 < KirkMcDonald> Ginto8: They won't. 21:52 < Ginto8> ok then 21:52 < KirkMcDonald> I require random access. 21:52 < Ginto8> well take a look at RWMutex 21:52 < Ginto8> more flexible than normal Mutex 21:54 < KirkMcDonald> I don't think I require that flexibility. 21:54 < KirkMcDonald> There is precisely one reader, and precisely one writer. 21:54 < Ginto8> ok cool then 21:56 -!- ikke [~ikke@unaffiliated/ikkebr] has joined #go-nuts 22:01 -!- wrtp [~rog@89.242.170.31] has quit [Quit: wrtp] 22:01 -!- rhelmer [~rhelmer@adsl-69-107-89-5.dsl.pltn13.pacbell.net] has joined #go-nuts 22:05 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit: hcatlin] 22:10 -!- b00m_chef [~watr@d64-180-45-230.bchsia.telus.net] has joined #go-nuts 22:10 -!- Boney_ [~paul@124.168.124.27] has joined #go-nuts 22:10 -!- napsy [~luka@88.200.96.14] has quit [Ping timeout: 276 seconds] 22:12 -!- Boney [~paul@124-168-55-132.dyn.iinet.net.au] has quit [Ping timeout: 264 seconds] 22:14 -!- b00m_chef [~watr@d64-180-45-230.bchsia.telus.net] has quit [Ping timeout: 258 seconds] 22:15 -!- skelterjohn [~jasmuth@c-76-124-23-140.hsd1.nj.comcast.net] has quit [Quit: skelterjohn] 22:15 -!- kingfishr [~kingfishr@71-222-226-71.albq.qwest.net] has quit [Quit: Leaving] 22:18 -!- aho [~nya@f051154225.adsl.alicedsl.de] has quit [Quit: EXEC_over.METHOD_SUBLIMATION] 22:22 -!- piglet_ [~piglet@93-136-61-105.adsl.net.t-com.hr] has quit [Quit: Leaving] 22:23 -!- carllerche [~carllerch@208.87.61.203] has quit [Quit: carllerche] 22:27 -!- vdrab [~vdrab@cap002-140.kcn.ne.jp] has joined #go-nuts 22:29 -!- Piglet [~Piglet@93-136-61-105.adsl.net.t-com.hr] has joined #go-nuts 22:29 -!- MizardX [~MizardX@unaffiliated/mizardx] has quit [Ping timeout: 276 seconds] 22:31 -!- Piglet [~Piglet@93-136-61-105.adsl.net.t-com.hr] has quit [Client Quit] 22:31 -!- Piglet [~Piglet@93-136-61-105.adsl.net.t-com.hr] has joined #go-nuts 22:38 -!- smw [~smw@pool-96-232-88-231.nycmny.fios.verizon.net] has joined #go-nuts 22:40 -!- kingfishr [~kingfishr@71-222-226-71.albq.qwest.net] has joined #go-nuts 22:43 -!- rhelmer [~rhelmer@adsl-69-107-89-5.dsl.pltn13.pacbell.net] has quit [Quit: rhelmer] 22:45 -!- rhelmer [~rhelmer@adsl-69-107-89-5.dsl.pltn13.pacbell.net] has joined #go-nuts 22:52 -!- rhelmer_ [~rhelmer@adsl-69-107-89-5.dsl.pltn13.pacbell.net] has joined #go-nuts 22:52 -!- jingzuo [~brandon@h159.123.255.206.cable.thlq.cablelynx.com] has joined #go-nuts 22:54 -!- rhelmer [~rhelmer@adsl-69-107-89-5.dsl.pltn13.pacbell.net] has quit [Ping timeout: 276 seconds] 22:56 -!- name [~name@sburn/devel/name] has quit [Read error: Connection reset by peer] 22:57 -!- Boney_ [~paul@124.168.124.27] has quit [Ping timeout: 258 seconds] 22:57 -!- yashi [~yashi@dns1.atmark-techno.com] has quit [Ping timeout: 260 seconds] 22:57 -!- jingzuo [~brandon@h159.123.255.206.cable.thlq.cablelynx.com] has left #go-nuts [] 23:07 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org] 23:07 -!- unhygienix [~unhygieni@host86-181-15-94.range86-181.btcentralplus.com] has joined #go-nuts 23:08 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 23:10 -!- rlab [~Miranda@91.200.158.34] has quit [Client Quit] 23:11 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 23:14 -!- Boney [~paul@210-84-51-236.dyn.iinet.net.au] has joined #go-nuts 23:17 -!- Venom_X [~pjacobs@71.20.102.220] has quit [Quit: Venom_X] 23:18 -!- Venom_X [~pjacobs@71.20.102.220] has joined #go-nuts 23:21 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 23:22 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 23:24 -!- Venom_X [~pjacobs@71.20.102.220] has quit [Quit: Venom_X] 23:28 -!- tvw [~tv@e176008001.adsl.alicedsl.de] has quit [Ping timeout: 260 seconds] 23:28 -!- iant [~iant@nat/google/x-ktrrbwjgyuyymyfl] has quit [Ping timeout: 272 seconds] 23:32 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 23:33 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has joined #go-nuts 23:35 -!- cmarcelo [~cmarcelo@enlightenment/developer/cmarcelo] has quit [Remote host closed the connection] 23:37 -!- rhelmer_ [~rhelmer@adsl-69-107-89-5.dsl.pltn13.pacbell.net] has quit [Quit: rhelmer_] 23:47 -!- vsayer [~vivek@c-76-103-244-154.hsd1.ca.comcast.net] has quit [Ping timeout: 240 seconds] 23:50 -!- vdrab [~vdrab@cap002-140.kcn.ne.jp] has quit [Quit: vdrab] 23:54 -!- iant [~iant@67.218.102.208] has joined #go-nuts 23:54 -!- mode/#go-nuts [+v iant] by ChanServ 23:55 -!- Ideal [~Ideal@ideal-1-pt.tunnel.tserv6.fra1.ipv6.he.net] has quit [Quit: Ideal] 23:58 -!- Xera^ [~brit@87-194-208-246.bethere.co.uk] has quit [Read error: Connection reset by peer] --- Log closed Wed May 26 00:00:47 2010