--- Log opened Fri Aug 20 00:00:05 2010 00:02 -!- Project_2501 [~Marvin@82.84.92.43] has quit [Quit: E se abbasso questa leva che succ...] 00:04 -!- linac [~lin@122.90.93.161] has joined #go-nuts 00:34 -!- ExtraSpice [~XtraSpice@88.118.32.225] has quit [Ping timeout: 240 seconds] 00:35 -!- tensorpudding [~user@99.160.223.189] has quit [Ping timeout: 246 seconds] 00:35 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 240 seconds] 00:43 -!- mikespook [~mikespook@219.137.234.62] has joined #go-nuts 00:43 -!- napsy [~luka@212.235.174.112] has joined #go-nuts 00:45 -!- willdye [~willdye@fern.dsndata.com] has left #go-nuts [] 00:50 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts 00:52 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has joined #go-nuts 00:55 -!- tensorpudding [~user@99.148.199.248] has joined #go-nuts 01:14 -!- g0bl1n [~anonymous@a213-22-18-58.cpe.netcabo.pt] has quit [Quit: g0bl1n] 01:28 -!- inittab [~dlbeer@ip-118-90-22-160.xdsl.xnet.co.nz] has quit [Ping timeout: 246 seconds] 01:31 -!- tylercurtis [~tylercurt@97-95-156-133.dhcp.jcsn.tn.charter.com] has joined #go-nuts 01:32 < plexdev> http://is.gd/epF5l by [Ken Thompson] in go/src/cmd/6g/ -- attempt to gete better registeration 01:38 -!- jA_cOp [~yakobu@unaffiliated/ja-cop/x-9478493] has joined #go-nuts 01:43 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 240 seconds] 01:48 -!- Xera^ [~brit@87-194-208-246.bethere.co.uk] has quit [Quit: ( www.nnscript.com :: NoNameScript 4.21 :: www.esnation.com )] 01:51 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has left #go-nuts [] 01:51 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has joined #go-nuts 01:55 < cbeck> I thinke Ken's e keye is stickey 01:58 -!- slackstation_ [~eman@adsl-69-231-151-35.dsl.irvnca.pacbell.net] has joined #go-nuts 02:01 -!- slackstation [~eman@adsl-69-231-151-35.dsl.irvnca.pacbell.net] has quit [Ping timeout: 240 seconds] 02:05 -!- Xenith [~xenith@kiwi.he.net] has quit [Read error: Operation timed out] 02:07 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 240 seconds] 02:08 < rbraley> nbjoerg, for a Go to C compiler I might consider using 0MQ for channels. http://www.zeromq.org 02:09 < nbjoerg> rbraley: the primary intention for a Go to C compiler would be a clean bootstrap stack 02:10 -!- inittab [~dlbeer@ip-118-90-99-123.xdsl.xnet.co.nz] has joined #go-nuts 02:14 -!- RobotGrrl [~RobotGrrl@bas2-montreal50-1176030476.dsl.bell.ca] has quit [Quit: RobotGrrl] 02:15 < rbraley> right, perhaps llvm would be a good approach then. 02:16 < cw> nbjoerg: why not use gccgo? 02:17 < rbraley> I am very interested in how to make goroutines and function literals in C anyway 02:17 < nbjoerg> cw: I wouldn't exactly call gccgo (or LLVM for that matter) light weight 02:18 < cw> in what way? 02:18 < rbraley> I imagine getjmp and setjmp are involved 02:18 < cw> compile speed? 02:18 < cw> or something else? 02:18 -!- aho [~nya@fuld-4d00d36c.pool.mediaWays.net] has joined #go-nuts 02:18 < rbraley> gccgo uses pthreads for goroutines 02:18 < nbjoerg> not compile speed 02:18 < rbraley> no good 02:18 < cw> pthreads isn't that slow, and at some point that will change 02:18 < nbjoerg> gcc itself is a nightmare for hacking 02:19 < cw> gc isn't exactly wonderful either 02:19 < nbjoerg> just because it has been ported to almost everything doesn't make it a good start for a future portable go toolchain 02:19 < nbjoerg> frankly, gc is f**king nightmare too 02:20 < cw> i'm waiting for the ast stuff to flesh out more 02:20 < cw> and use that as the basis of a go compiler in go 02:20 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Quit: WeeChat 0.3.2] 02:20 < rbraley> pthreads may not be slow but they are terrible at scaling. Besides ideally you want to decouple your concurrency model from your threading model so you can have one thread per core and multiplex thousands of goroutines to each thread. 02:20 < nbjoerg> rbraley: it is good enough for bootstrapping at least 02:20 < cw> rbraley: i fight threads harder than just about anyone i know ... i really dislike them 02:20 < cw> but scaling & threads isn't nearly as bad as people claim 02:20 < rbraley> yeah threads can go die in a fire. 02:20 < nbjoerg> a good pthread implementation scales quite well 02:21 < cw> threads are useful when used carefully 02:21 < cw> right 02:21 < nbjoerg> (a) not all of them are well written. 02:21 < cw> pthreads on linux works very well ... you can have 100K threads on a medium sized machine sometimes 02:21 < nbjoerg> (b) it is extremely easy to mess up 02:21 < cw> NPTL is decent 02:21 < nbjoerg> cw: NPTL, yues 02:21 < nbjoerg> cw: the old crap -- don't get me started 02:21 < cw> the old stuff was horrible sure, but that was a LONG time ago 02:22 < cw> and go won't run there anyhow 02:23 < cw> i work with people who love threads and frameworks, i like to rip on them something savage over the 100s of threads their crappy code ends up invoking ... but i can't really claim it's a scaling issue these days 02:24 < rbraley> but you really don't need all that stack to do a quick go on a function literal though. Threads are waaay overkill, especially if you don't do any system calls. 02:24 < nbjoerg> rbraley: for function literals, you don't need stacks at all 02:24 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts 02:24 < cw> 'all that stack' ... is how much? 02:25 < cw> it's demand pages ... so typically only 2-3 pages in userspace + 2 pages for the kernel 02:25 < cw> not exactly pretty, but hardly much work on modern hardware 02:25 < nbjoerg> I think function literals in C is most easily solved by making the stack frame actually allocated dynamically 02:25 < cw> 6c can do that 02:26 < nbjoerg> cw: I mean for a go->C compiler 02:26 < rbraley> nbjoerg, you're kidding. You allocate on the heap or what? 02:26 < cw> what problem is this solving though? 02:27 < nbjoerg> cw: that the function literal has access to the outer scope 02:28 < cw> why go->c though? 02:28 < cw> when you can compile already to native code 02:28 < nbjoerg> cw: the joy of bootstrapping 02:28 < nbjoerg> cw: what makes you believe you can easily do that? 02:28 < rbraley> so you make a closure struct that has all the registers and stack pointers of the outer scope and pass it as a parameter to the inner scope? 02:28 < nbjoerg> it doesn't have to contain registers 02:29 < nbjoerg> just the variables in the scope 02:29 < rbraley> i suppose it doesn't have to 02:31 < rbraley> there are the pusha and popa instructions in intel assembly that will store and retrieve the entire integer register state to and from the stack 02:31 < rbraley> not that you'd need to bootstrap if you were on intel :/ 02:31 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Remote host closed the connection] 02:31 < nbjoerg> like I said, you don't have to care about the register set 02:32 < nbjoerg> it's irrelevant 02:33 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts 02:34 < rbraley> but there would have to be some static analysis of the Go code to determine if goroutines syscall. If they do that might be a different animal because you have to context switch and also copy all the other goroutines to another thread if the goroutine blocks on the syscall. 02:35 < nbjoerg> I don't think you have to care for bootstrapping purposes 02:39 < rbraley> Well, I kinda want to learn how Go works anyway so I can do something similar in C. I want to build a message-passing flow based programming language that can talk to any other language with ZeroMQ sockets. 02:39 < jessta> rbraley: looked at libthread? 02:39 < rbraley> a graphical actor language if you will that optimally uses the hardware it's on. 02:40 < rbraley> yes I think I have, but I don't remember why I dismissed it 02:40 < jessta> graphical? 02:40 < rbraley> oh maybe I haven't is that a plan9 thing? 02:41 < rbraley> yeah I want to make an HTML5 gui so anybody anytime can program with it and then it will output a binary for you 02:41 < jessta> yeah, it's pretty much a C implementation of all the advantages alef had 02:42 < jessta> rbraley: those kind of things never seem to work out well 02:42 < rbraley> well, that would be one target is all 02:43 < rbraley> I could do it in Qt for example 02:43 < jessta> graphical programming tends to be still too complicated for average users and impossible to manage for anything large 02:44 < rbraley> http://ptolemy.eecs.berkeley.edu/presentations/06/FutureOfEmbeddedSoftware_Lee_Graz.ppt 02:45 < rbraley> I think that graphical programming works for my game architecture 02:46 < rbraley> jessta, http://dungeonhack.sourceforge.net/forums/viewtopic.php?f=2&t=744 http://dungeonhack.sourceforge.net/forums/viewtopic.php?f=2&t=794 02:47 < rbraley> where all entities are just compositions of components 02:48 < rbraley> I've never seen anyone do things like I am planning to do them, so I don't think typical experience with graphical programming will apply. 02:48 < exch> Lego Mindstorms has a code editor like that. You can build programs for the lego NeXT brick by dragging configurable components into a flowchart like system. Each component corresponds to actions and hardware 02:48 < rbraley> Do you know of any games that are built in the Actor Model? 02:49 < cw> nbjoerg: go already builds native on all major arches and OSes 02:49 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Read error: Connection reset by peer] 02:51 < rbraley> exch, yeah something similar to that, but from a concurrency oriented paradigm rather than a procedural paradigm. 02:51 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts 02:53 < rbraley> I was also considering doing a dataflow entity editor with blender 2.5's new UI system 02:57 < rbraley> It would also be neat if I could make a way for the GPU to run the same function literals as the CPU 02:58 < rbraley> jessta, I wonder if this libthread is available on windows and mac as well hmm. 02:59 -!- bikcmp [jason@unaffiliated/not] has joined #go-nuts 03:03 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 276 seconds] 03:08 -!- GoBIR [~gobir@DHCP-159-138.caltech.edu] has quit [Ping timeout: 276 seconds] 03:13 < bikcmp> Hi everyone, when I'm trying to compile a application, I get hi.go:3: can't find import: fmt 03:13 -!- jdp [~gu@24.238.32.162.res-cmts.segr.ptd.net] has quit [] 03:13 < bikcmp> my path's are correct too. 03:18 < tylercurtis> Is there a portable equivalent to syscall.LoadLibrary/GetProcAddress? 03:23 < tylercurtis> Alternately, is there a way to dynamically load a Go package and execute a function from it? 03:24 -!- alloy-d [~adam@pool-71-125-145-179.cmdnnj.east.verizon.net] has joined #go-nuts 03:32 < rbraley> jessta, wow this libthread has some really elegant features 03:34 -!- jackman_mobile [~jackman@c-76-115-243-246.hsd1.wa.comcast.net] has quit [Ping timeout: 240 seconds] 03:34 -!- alloy-d [~adam@pool-71-125-145-179.cmdnnj.east.verizon.net] has quit [Quit: WeeChat 0.3.3] 03:49 -!- jackman_mobile [~jackman@c-67-189-24-232.hsd1.or.comcast.net] has joined #go-nuts 03:51 -!- alloy-d [~adam@pool-71-125-145-179.cmdnnj.east.verizon.net] has joined #go-nuts 03:52 -!- gid [~gid@220-253-147-205.VIC.netspace.net.au] has joined #go-nuts 04:01 -!- alloy-d [~adam@pool-71-125-145-179.cmdnnj.east.verizon.net] has quit [Ping timeout: 265 seconds] 04:03 -!- jdp [gu@24.238.32.162.res-cmts.segr.ptd.net] has joined #go-nuts 04:04 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has quit [Quit: This computer has gone to sleep] 04:05 -!- smw [~stephen@pool-71-183-88-124.nycmny.fios.verizon.net] has quit [Ping timeout: 252 seconds] 04:05 -!- bikcmp [jason@unaffiliated/not] has left #go-nuts [] 04:09 -!- tedster [~tedster@cpe-067-023-152-243.dhcp.wadsnet.com] has joined #go-nuts 04:10 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has joined #go-nuts 04:10 -!- tedster [~tedster@cpe-067-023-152-243.dhcp.wadsnet.com] has left #go-nuts [] 04:18 -!- armor [~armor@pool-71-183-88-124.nycmny.fios.verizon.net] has joined #go-nuts 04:21 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has joined #go-nuts 04:24 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Quit: WeeChat 0.3.2] 04:34 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts 04:55 -!- mikespook1 [~mikespook@219.137.74.223] has joined #go-nuts 04:56 -!- mikespook [~mikespook@219.137.234.62] has quit [Ping timeout: 276 seconds] 04:56 -!- carllerche [~carllerch@208.87.61.203] has quit [Quit: carllerche] 05:03 -!- scm [justme@d136028.adsl.hansenet.de] has quit [Ping timeout: 276 seconds] 05:04 -!- scm [justme@d071037.adsl.hansenet.de] has joined #go-nuts 05:04 < rbraley> Alan Kay: I once asked Ivan Sutherland "How could you possibly have done the first interactive graphics program, the first non-procedural language, the first object-oriented software system all in one year?" 05:05 < rbraley> Ivan: "Well I didn't know it was hard." 05:05 < rbraley> http://www.archive.org/details/AlanKeyD1987 05:07 -!- Maxdaman1us [~m@203-97-238-106.cable.telstraclear.net] has quit [Ping timeout: 264 seconds] 05:08 -!- Adys [~Adys@unaffiliated/adys] has quit [Remote host closed the connection] 05:12 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts 05:13 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has quit [Remote host closed the connection] 05:15 -!- boredomist [~boredomis@24.115.43.39.res-cmts.sesp.ptd.net] has quit [Quit: Leaving] 05:18 -!- Maxdamantus [~m@203-97-238-106.cable.telstraclear.net] has joined #go-nuts 05:27 -!- Adys [~Adys@unaffiliated/adys] has quit [Remote host closed the connection] 05:30 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts 05:31 -!- armor [~armor@pool-71-183-88-124.nycmny.fios.verizon.net] has quit [Quit: Leaving] 05:44 -!- jdp [gu@24.238.32.162.res-cmts.segr.ptd.net] has quit [Disconnected by services] 05:48 -!- Robbo_ [~robbo@CPE-58-166-83-229.lnse5.cht.bigpond.net.au] has joined #go-nuts 05:50 -!- iant [~iant@216.239.45.130] has quit [Ping timeout: 272 seconds] 05:50 -!- ako [~nya@fuld-4d00d36c.pool.mediaWays.net] has joined #go-nuts 05:52 -!- aho [~nya@fuld-4d00d36c.pool.mediaWays.net] has quit [Read error: Connection reset by peer] 06:09 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts 06:09 -!- mode/#go-nuts [+v iant] by ChanServ 06:10 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit [Ping timeout: 240 seconds] 06:11 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit: slashus2] 06:12 -!- itrekkie [~itrekkie@ip72-200-109-106.tc.ph.cox.net] has joined #go-nuts 06:18 -!- MizardX [~MizardX@unaffiliated/mizardx] has joined #go-nuts 06:18 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined #go-nuts 06:30 -!- unhygienix [~unhygieni@host86-179-207-143.range86-179.btcentralplus.com] has quit [Quit: unhygienix] 06:34 -!- linac [~lin@122.90.93.161] has quit [Quit: Leaving] 06:38 -!- alloy-d [~adam@pool-71-125-145-179.cmdnnj.east.verizon.net] has joined #go-nuts 06:40 -!- ExtraSpice [~XtraSpice@88.118.32.225] has joined #go-nuts 06:41 -!- sacho [~sacho@87-126-65-201.btc-net.bg] has joined #go-nuts 06:57 -!- ako [~nya@fuld-4d00d36c.pool.mediaWays.net] has quit [Quit: EXEC_over.METHOD_SUBLIMATION] 07:13 -!- sacho [~sacho@87-126-65-201.btc-net.bg] has quit [Ping timeout: 276 seconds] 07:13 -!- path[l] [~path@122.182.0.38] has joined #go-nuts 07:13 -!- path[l] [~path@122.182.0.38] has quit [Client Quit] 07:15 -!- path[l] [~path@59.162.86.164] has joined #go-nuts 07:20 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 07:22 -!- wrtp [~rog@92.17.16.23] has joined #go-nuts 07:22 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts 07:23 -!- nighty__ [~nighty@210.188.173.245] has joined #go-nuts 07:25 -!- sacho [~sacho@87-126-65-201.btc-net.bg] has joined #go-nuts 07:26 -!- tylercurtis [~tylercurt@97-95-156-133.dhcp.jcsn.tn.charter.com] has quit [Quit: tylercurtis] 07:32 -!- yashi [~yashi@210.191.215.173] has quit [Remote host closed the connection] 07:44 -!- tvw [~tv@e176002105.adsl.alicedsl.de] has joined #go-nuts 07:47 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has joined #go-nuts 07:53 -!- Fish-Work [~Fish@86.65.182.207] has quit [Ping timeout: 265 seconds] 07:56 -!- b0red [~m@unaffiliated/b0r3d] has joined #go-nuts 07:56 -!- Fish-Work [~Fish@86.65.182.207] has joined #go-nuts 08:03 -!- kanru1 [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts 08:03 -!- b0red [~m@unaffiliated/b0r3d] has left #go-nuts [] 08:04 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 260 seconds] 08:11 -!- jmettraux [~jmettraux@211.19.55.177] has joined #go-nuts 08:30 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Remote host closed the connection] 08:35 -!- tvw [~tv@e176002105.adsl.alicedsl.de] has quit [Ping timeout: 252 seconds] 08:36 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has quit [Ping timeout: 258 seconds] 08:38 -!- tvw [~tv@e176002105.adsl.alicedsl.de] has joined #go-nuts 08:42 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]] 08:43 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts 08:48 -!- photron [~photron@port-92-201-20-57.dynamic.qsc.de] has joined #go-nuts 08:49 -!- path[l] [~path@59.162.86.164] has joined #go-nuts 08:50 -!- path[l] [~path@59.162.86.164] has quit [Client Quit] 08:52 -!- saschpe [~quassel@mgdb-4d0cf166.pool.mediaWays.net] has joined #go-nuts 08:52 -!- alloy-d [~adam@pool-71-125-145-179.cmdnnj.east.verizon.net] has quit [Quit: WeeChat 0.3.3] 08:56 -!- jmettraux [~jmettraux@211.19.55.177] has quit [Remote host closed the connection] 09:01 -!- peterdn [~peterdn@host81-159-105-107.range81-159.btcentralplus.com] has quit [Ping timeout: 245 seconds] 09:03 -!- Shyde [~shyde@HSI-KBW-078-043-070-132.hsi4.kabel-badenwuerttemberg.de] has joined #go-nuts 09:08 -!- peterdn [~peterdn@host109-153-221-147.range109-153.btcentralplus.com] has joined #go-nuts 09:16 -!- jmettraux [~jmettraux@PPPbm5391.kanagawa-ip.dti.ne.jp] has joined #go-nuts 09:18 -!- virtualsue [~chatzilla@nat/cisco/x-nbubvtbfttrlhbgv] has joined #go-nuts 09:21 -!- tvw [~tv@e176002105.adsl.alicedsl.de] has quit [Ping timeout: 252 seconds] 09:22 -!- ikaros [~ikaros@dslb-084-059-076-150.pools.arcor-ip.net] has joined #go-nuts 09:34 -!- visof [~visof@unaffiliated/visof] has quit [Ping timeout: 240 seconds] 09:42 -!- ExtraSpice [~XtraSpice@88.118.32.225] has quit [Remote host closed the connection] 10:00 -!- Fish-Work [~Fish@86.65.182.207] has quit [Ping timeout: 272 seconds] 10:04 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has quit [Remote host closed the connection] 10:05 -!- peterdn [~peterdn@host109-153-221-147.range109-153.btcentralplus.com] has quit [Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2/20100222071121]] 10:10 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has joined #go-nuts 10:12 -!- Fish-Work [~Fish@86.65.182.207] has joined #go-nuts 10:13 -!- peterdn [~peterdn@host109-153-221-147.range109-153.btcentralplus.com] has joined #go-nuts 10:13 -!- path[l] [~path@59.162.86.164] has joined #go-nuts 10:13 -!- nighty__ [~nighty@210.188.173.245] has quit [Remote host closed the connection] 10:21 -!- garden [~ludovico@cl-237.trn-01.it.sixxs.net] has joined #go-nuts 10:21 -!- Fish-Work [~Fish@86.65.182.207] has quit [Read error: Connection reset by peer] 10:22 -!- Fish-Work [~Fish@86.65.182.207] has joined #go-nuts 10:25 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Quit: Leaving] 10:32 -!- araujo [~araujo@61.170.230.27] has joined #go-nuts 10:32 -!- araujo [~araujo@61.170.230.27] has quit [Changing host] 10:32 -!- araujo [~araujo@gentoo/developer/araujo] has joined #go-nuts 10:33 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined #go-nuts 10:34 -!- IRWolfie1 [irwolfie@ircnoob.com] has joined #go-nuts 10:36 -!- General13372 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has quit [Ping timeout: 246 seconds] 10:36 -!- Archwyrm [~archwyrm@archwyrm.net] has quit [Ping timeout: 265 seconds] 10:36 -!- Archwyrm [~archwyrm@archwyrm.net] has joined #go-nuts 10:37 -!- IRWolfie- [irwolfie@ircnoob.com] has quit [Ping timeout: 265 seconds] 10:37 -!- DJCapelis [~djc@blender/coder/DJCapelis] has quit [Ping timeout: 258 seconds] 10:38 -!- DJCapelis [~djc@capelis.dj] has joined #go-nuts 10:38 -!- DJCapelis [~djc@capelis.dj] has quit [Changing host] 10:38 -!- DJCapelis [~djc@blender/coder/DJCapelis] has joined #go-nuts 10:44 -!- KillerX [~anant@145-116-234-40.uilenstede.casema.nl] has joined #go-nuts 10:45 -!- KillerX [~anant@145-116-234-40.uilenstede.casema.nl] has left #go-nuts [] 10:50 -!- b0r3d [~m@unaffiliated/b0r3d] has joined #go-nuts 11:08 -!- virtualsue [~chatzilla@nat/cisco/x-nbubvtbfttrlhbgv] has quit [Ping timeout: 240 seconds] 11:21 -!- ExtraSpice [~XtraSpice@88.118.32.225] has joined #go-nuts 11:26 -!- mimustafa [~steve@92.62.125.249] has joined #go-nuts 11:28 -!- mimustafa [~steve@92.62.125.249] has left #go-nuts [] 11:29 -!- savechina [~savechina@123.113.186.129] has joined #go-nuts 11:44 -!- artefon [~thiago@189.107.155.106] has joined #go-nuts 11:58 -!- Fish-Work [~Fish@86.65.182.207] has quit [Remote host closed the connection] 11:58 -!- Fish-Work [~Fish@86.65.182.207] has joined #go-nuts 12:01 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 265 seconds] 12:08 -!- Xera^ [~brit@87-194-208-246.bethere.co.uk] has joined #go-nuts 12:09 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts 12:19 -!- tvw [~tv@212.79.9.150] has joined #go-nuts 12:23 -!- artefon [~thiago@189.107.155.106] has quit [Quit: bye] 12:24 -!- atsampso1 [~ats@212.183.140.52] has quit [Ping timeout: 252 seconds] 12:26 -!- atsampson [~ats@212.183.140.0] has joined #go-nuts 12:31 -!- bohunm [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts 12:32 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has quit [Ping timeout: 272 seconds] 12:32 -!- bohunm [~mbohun@ppp115-156.static.internode.on.net] has quit [Client Quit] 12:32 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts 12:47 -!- rejb [~rejb@p54B65E79.dip.t-dialin.net] has joined #go-nuts 12:47 -!- rejb [~rejb@p54B65E79.dip.t-dialin.net] has quit [Changing host] 12:47 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts 12:54 -!- Project_2501 [~Marvin@82.84.92.43] has joined #go-nuts 12:59 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has joined #go-nuts 13:10 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]] 13:12 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 255 seconds] 13:14 -!- photron [~photron@port-92-201-20-57.dynamic.qsc.de] has quit [Ping timeout: 264 seconds] 13:15 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Quit: Leaving.] 13:16 -!- photron [~photron@port-92-201-20-57.dynamic.qsc.de] has joined #go-nuts 13:18 -!- tensorpudding [~user@99.148.199.248] has quit [Ping timeout: 276 seconds] 13:19 -!- saschpe [~quassel@mgdb-4d0cf166.pool.mediaWays.net] has quit [Remote host closed the connection] 13:19 -!- mattn_jp [~mattn_jp@112-68-92-234.eonet.ne.jp] has joined #go-nuts 13:22 -!- navigator [~navigator@p5489555C.dip.t-dialin.net] has joined #go-nuts 13:24 -!- moondowner [~quassel@92.53.38.28] has joined #go-nuts 13:25 < plexdev> http://is.gd/ertt1 by [Ivan Krasin] in 2 subdirs of go/src/pkg/ -- syscall: regenerate syscall/z* files for linux/386, linux/amd64 13:26 -!- path[l] [~path@59.162.86.164] has joined #go-nuts 13:40 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has quit [Quit: This computer has gone to sleep] 13:44 -!- iant [~iant@66.109.103.22] has joined #go-nuts 13:44 -!- mode/#go-nuts [+v iant] by ChanServ 13:50 -!- boscop [~boscop@g227131000.adsl.alicedsl.de] has joined #go-nuts 13:56 -!- artefon [~thiago@dhcp13.usuarios.dcc.ufmg.br] has joined #go-nuts 14:00 -!- wrtp [~rog@92.17.16.23] has quit [Read error: Connection reset by peer] 14:00 -!- wrtp [~rog@92.17.16.23] has joined #go-nuts 14:01 -!- femtoo [~femto@95-89-197-4-dynip.superkabel.de] has joined #go-nuts 14:05 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 14:17 -!- b0r3d [~m@unaffiliated/b0r3d] has quit [] 14:20 -!- IRWolfie1 [irwolfie@ircnoob.com] has left #go-nuts [] 14:21 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]] 14:22 -!- DerHorst [~Horst@e176098235.adsl.alicedsl.de] has joined #go-nuts 14:22 -!- napsy [~luka@212.235.174.112] has joined #go-nuts 14:24 -!- Venom_X [~pjacobs@71.21.124.111] has joined #go-nuts 14:27 -!- sacho_ [~sacho@213.91.244.15] has joined #go-nuts 14:27 -!- path[l] [~path@59.162.86.164] has joined #go-nuts 14:27 -!- sacho [~sacho@87-126-65-201.btc-net.bg] has quit [Ping timeout: 265 seconds] 14:32 -!- g0bl1n [~anonymous@a213-22-18-58.cpe.netcabo.pt] has joined #go-nuts 14:38 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts 14:43 -!- RobotGrrl [~RobotGrrl@bas2-montreal50-1176030476.dsl.bell.ca] has joined #go-nuts 14:54 -!- iant [~iant@66.109.103.22] has quit [Quit: Leaving.] 14:57 -!- babusri [~Babu@122.167.73.22] has joined #go-nuts 15:02 -!- stalled [~stalled@unaffiliated/stalled] has quit [Read error: Connection reset by peer] 15:03 -!- iant [~iant@nat/google/x-gzsuiikgddmtwath] has joined #go-nuts 15:03 -!- mode/#go-nuts [+v iant] by ChanServ 15:04 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts 15:07 -!- babusri [~Babu@122.167.73.22] has quit [Ping timeout: 272 seconds] 15:11 -!- tensorpudding [~user@99.56.171.201] has joined #go-nuts 15:11 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts 15:15 -!- RobotGrrl [~RobotGrrl@bas2-montreal50-1176030476.dsl.bell.ca] has quit [Read error: Connection reset by peer] 15:16 -!- babusri` [~Babu@122.167.73.22] has joined #go-nuts 15:22 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has quit [Quit: Leaving] 15:22 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts 15:23 -!- moondowner [~quassel@92.53.38.28] has quit [Ping timeout: 264 seconds] 15:23 -!- napsy [~luka@212.235.174.112] has quit [Quit: Lost terminal] 15:24 -!- napsy [~luka@212.235.174.112] has joined #go-nuts 15:27 -!- g0bl1n [~anonymous@a213-22-18-58.cpe.netcabo.pt] has quit [Quit: g0bl1n] 15:27 -!- awidegreen [~quassel@62.176.237.78] has joined #go-nuts 15:29 -!- Fish-Work [~Fish@86.65.182.207] has quit [Remote host closed the connection] 15:29 -!- Fish-Work [~Fish@86.65.182.207] has joined #go-nuts 15:32 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection] 15:39 -!- Xera^ [~brit@87-194-208-246.bethere.co.uk] has left #go-nuts [] 15:43 < falconindy> where can i find a list of all the type conversions available for the C package? 15:44 < falconindy> I'm drawing a blank on how to convert a parameter to an unsigned char* 15:45 -!- femtoo [~femto@95-89-197-4-dynip.superkabel.de] has quit [Quit: Leaving] 15:46 -!- rejb [~rejb@unaffiliated/rejb] has quit [Quit: .] 15:48 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts 15:50 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]] 15:50 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Read error: Connection reset by peer] 15:50 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts 15:51 < exch> falconindy: I dont think there is any documentation for that. The general rule is: int -> C.int or int -> C.int_t. eg: a := 32; ca := C.int(32) 15:51 -!- artefon [~thiago@dhcp13.usuarios.dcc.ufmg.br] has quit [Ping timeout: 246 seconds] 15:51 < exch> If you managed to compile your code once, you should see a new _gotypes.go file which lists all the proper conversions 16:00 < falconindy> exch: aha. i'll check that out. thanks 16:01 -!- savechina [~savechina@123.113.186.129] has quit [Quit: Leaving] 16:02 < exch> falconindy: I find it helpls to first bind struct types you may need and then run a compile. the gotypes file will then list all the struct fields being used with proper type names. like you have a c struct 'mystruct_t', bind it in go as 'type MyStruct C.mystruct_t' 16:02 < falconindy> yeah, the problem is that im dealing with a typedef for an unsigned char[16] 16:02 < falconindy> ive got it defined as: type Uuid [16]uint8 16:03 < falconindy> but cgo whines when i try to pass Uuid 16:03 < exch> mm, that can either be 'C.uchar' or 'C.unsigned', or 'C.unsigned_char'.. I haven't really found any logic in that 16:03 < falconindy> well, the types file you pointed me to shows _Ctype_unsignedchar 16:03 < falconindy> so i guess C.unsignedchar is where its at 16:03 < exch> aye 16:05 -!- jcao219 [~jcao219@pool-173-71-1-120.dllstx.fios.verizon.net] has quit [Read error: Connection reset by peer] 16:05 < falconindy> arrg, or maybe not. what the hell >.> 16:05 -!- jcao219 [~jcao219@pool-173-71-1-120.dllstx.fios.verizon.net] has joined #go-nuts 16:06 -!- jcao219_ [~jcao219@pool-173-71-1-120.dllstx.fios.verizon.net] has joined #go-nuts 16:07 < falconindy> maybe i would be better served just wrapping this thing in a struct... 16:07 -!- jcao219 [~jcao219@pool-173-71-1-120.dllstx.fios.verizon.net] has quit [Read error: Connection reset by peer] 16:07 -!- jcao219_ [~jcao219@pool-173-71-1-120.dllstx.fios.verizon.net] has quit [Read error: Connection reset by peer] 16:08 < Robbo_> I want to make a sticky notes app in go 16:08 -!- jcao219 [~jcao219@pool-173-71-1-120.dllstx.fios.verizon.net] has joined #go-nuts 16:08 < Robbo_> You think it would be very hard? 16:08 < Robbo_> Fairly simple concept 16:09 < Robbo_> I just want to make something in go and this is something I need 16:10 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts 16:10 -!- tylercurtis [~tylercurt@97-95-156-133.dhcp.jcsn.tn.charter.com] has joined #go-nuts 16:11 < MaybeSo> you might find the Graphics section under http://go-lang.cat-v.org/pure-go-libs useful 16:12 < Robbo_> yeah I will be using that site a lot 16:12 < Robbo_> shouldn't too hard, right? 16:12 < MaybeSo> I wouldn't know, I don't write graphics programs. :) 16:13 * exch doesn't do graphics either 16:13 < nickaugust> im anti graphics :P 16:13 < exch> Butm if you get the SDL bindings working, it should be fairly straight forward 16:13 < Robbo_> Yeah that was the thing I was thinking would be the biggest problem :p 16:13 < Robbo_> Well I have used SDL before, might be the go 16:13 < exch> hook up a lightweight database binding and you're all set 16:14 < MaybeSo> if the sqlite3 bindings still work, that's a pretty nice database 16:14 < Robbo_> Just making sure it wasn't something that would be too complicated, haven't even done simple stuff in go heh 16:14 -!- temoto [~temoto@81.19.90.235] has joined #go-nuts 16:14 < Robbo_> I'll be sure to annoy you if I run into any problems when I find time to make the app 16:14 < temoto> How to declare (for interface) a function that takes a slice of interface{} ? 16:15 < exch> temoto: func foo(list []interface{}) { ... } 16:15 < temoto> exch, so 'list' is mandatory? 16:15 < exch> nope. it's just the parameter name 16:15 < exch> you can call it pie if you are so inclined :p 16:16 < temoto> exch, i mean, when declaring interface, do i have to name arguments? 16:16 < exch> ah, nope you don't have to 16:16 < exch> type T interface { foo func([]interface{}) } 16:16 < exch> err scratch the 'foo' 16:17 < exch> no names required 16:17 < exch> duh 16:17 < exch> yyes it is 16:17 < exch> I need coffee >< 16:18 < exch> http://pastebin.com/3FNyu2H5 there. and that's my final answer :) 16:18 < MaybeSo> temoto: personally I'd recommend naming the arguments in interfaces as a helpful hint to users 16:19 < temoto> exch, thanks, i must be made error somewhere else, my first option interface Scanner { Scan([]interface{}) []Token } works now 16:20 -!- Fish [~Fish@9fans.fr] has joined #go-nuts 16:20 -!- artefon [~thiago@189.107.155.106] has joined #go-nuts 16:27 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 265 seconds] 16:31 -!- sladegen [~nemo@unaffiliated/sladegen] has quit [Disconnected by services] 16:31 -!- sladegen [~nemo@unaffiliated/sladegen] has joined #go-nuts 16:32 -!- jmettraux [~jmettraux@PPPbm5391.kanagawa-ip.dti.ne.jp] has quit [Remote host closed the connection] 16:36 < falconindy> hrmm, is there an easy way of converting a []uint8 to a string? 16:38 < jessta> falconindy: string() 16:38 < falconindy> was the first thing i tried =P 16:39 -!- nelson [~nelson@rrcs-24-103-219-125.nys.biz.rr.com] has quit [Ping timeout: 246 seconds] 16:39 < falconindy> im wrapping a C type so when I pass it to string() i get "cannot convert u (type Uuid) to type string" 16:39 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has joined #go-nuts 16:40 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has joined #go-nuts 16:40 -!- crashR [~crasher@codextreme.pck.nerim.net] has quit [Quit: (◣_◢) BigBrowser is watching ⓎⓄⓊ] 16:40 -!- napsy [~luka@212.235.174.112] has joined #go-nuts 16:40 < jessta> so it's not a []uint8? 16:40 -!- nelson [~nelson@rrcs-24-103-219-125.nys.biz.rr.com] has joined #go-nuts 16:41 < falconindy> the definition is: type Uuid [16]C.uchar 16:41 -!- carllerche [~carllerch@enginey-9.border1.sfo002.pnap.net] has joined #go-nuts 16:41 < falconindy> the _cgo_gotypes.go output from cgo says that its converting it to a []uint8 16:42 < jessta> that's more like a [16]uint8 16:42 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has quit [Remote host closed the connection] 16:42 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has joined #go-nuts 16:43 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has quit [Remote host closed the connection] 16:45 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has joined #go-nuts 16:45 -!- jackman_mobile [~jackman@c-67-189-24-232.hsd1.or.comcast.net] has quit [Ping timeout: 276 seconds] 16:45 -!- jackman_mobile [~jackman@m4a0e36d0.tmodns.net] has joined #go-nuts 16:46 < exch> string(..) only works with a slice. Not an array. You can try string(uuid[0:16]) 16:47 -!- peterdn [~peterdn@host109-153-221-147.range109-153.btcentralplus.com] has quit [Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2/20100222071121]] 16:47 < falconindy> hrmm.... cannot convert (node SLICEARR) (type []_Ctype_unsignedchar) to type strin 16:47 < exch> ah. it's not []uint8 then 16:49 < exch> You'll have to convert it to []byte or []uint8 manually. Either by a manualy loop, or something like: data := (*(*[16]uint8)(unsafe.Pointer(&uuid)))[0:n] 16:51 < falconindy> ouch, okay 16:53 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Remote host closed the connection] 16:53 -!- exch [~exch@h144170.upc-h.chello.nl] has quit [Remote host closed the connection] 16:54 -!- exch [~exch@h144170.upc-h.chello.nl] has joined #go-nuts 16:54 < exch> falconindy: did that last message arrive? I seem to be having some connectivity issues 16:55 < falconindy> about converting in a loop? yes 16:55 < exch> ok 16:55 < falconindy> but of course, type assertion fails me 16:56 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has quit [Ping timeout: 276 seconds] 16:57 -!- awidegreen [~quassel@62.176.237.78] has quit [Remote host closed the connection] 16:57 -!- sacho_ [~sacho@213.91.244.15] has quit [Remote host closed the connection] 16:58 -!- awidegreen [~quassel@62.176.237.78] has joined #go-nuts 16:58 -!- peterdn [~peterdn@host109-153-221-147.range109-153.btcentralplus.com] has joined #go-nuts 16:58 < falconindy> derp, because i shouldn't be using type assertion. it works! woohoo 16:58 -!- jackman_mobile [~jackman@m4a0e36d0.tmodns.net] has quit [Ping timeout: 276 seconds] 16:59 -!- jackman_mobile [~jackman@c-76-115-243-246.hsd1.wa.comcast.net] has joined #go-nuts 17:03 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has joined #go-nuts 17:06 -!- jA_cOp [~yakobu@unaffiliated/ja-cop/x-9478493] has quit [Quit: Leaving] 17:07 -!- deso [~deso@x0561a.wh30.tu-dresden.de] has joined #go-nuts 17:08 < temoto> Can i somehow declare that interface Foo must also implement interface File w/o duplicating methods of File? 17:11 < exch> temoto: you can embed the File interface: type T interface { io.Writer } <- that automatically applies all of io.Writer methods to T 17:11 < temoto> exch, thanks. 17:13 < temoto> What does this type ( int ; float ) mean? 17:13 < temoto> note parens 17:13 < exch> dunno.. where did you see that? 17:14 < temoto> http://golang.org/doc/go_spec.html search 'polar point' 17:15 < exch> oh right. I believe it's similar to import ( ... ) 17:15 < exch> it just groups multiply type definitions 17:15 -!- jdp [gu@24.238.32.162.res-cmts.segr.ptd.net] has joined #go-nuts 17:16 < exch> type ( A int; B float ) would be the same as: type A int; type B float; 17:17 -!- ExtraSpice [~XtraSpice@88.118.32.225] has quit [Quit: Leaving] 17:17 < temoto> Ah thanks. 17:17 < temoto> I don't see a char type. 17:18 < temoto> So how do i instead declare a method which accepts slice of something? 17:18 < temoto> and then define two implementations: one for []byte and one for string? 17:21 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3] 17:21 < exch> go does not have implicit type conversions. So your best bet in that case is to define a method that takes []interface{}. You will have to do a manualy conversion inside each function though. You can't cast []interface{} to []string. Either that or have it accept a single interface{} value as parameter.. then do a type assertion to []string or whatever inside the implementations 17:21 < exch> Or just keep them seperated.. 2 implementations. Each for their own type of slice 17:21 -!- DerHorst [~Horst@e176098235.adsl.alicedsl.de] has quit [Remote host closed the connection] 17:22 < exch> Go isn't very suited for the generic approach 17:25 -!- wrtp [~rog@92.17.16.23] has quit [Ping timeout: 240 seconds] 17:26 -!- moondowner [~quassel@92.53.38.28] has joined #go-nuts 17:29 < temoto> exch, but interfaces are all about generic approach. 17:30 < temoto> I don't want implicit type conversions. 17:30 < exch> yes, but not in the sense that you propose. If you really want a single function that can handle multiple slice types, then create an interface type for it with 2 distinct implementations. One for []string and one for whatever else you need. Then use that interface as the method parameter 17:30 -!- wrtp [~rog@92.17.16.23] has joined #go-nuts 17:30 < temoto> But isn't []string closer to [][]byte? I mean []string is like a matrix of chars, not list? 17:31 < exch> string is close to []byte, but []string is something else entirely 17:32 < temoto> another interface to abstract []byte and string? 17:33 < temoto> Can't imagine methods of it.. 17:35 < MizardX> string and []byte does not have any methods, so creating an interface for them would cover evey type. 17:35 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Ping timeout: 258 seconds] 17:35 < exch> http://pastebin.com/Y9rLycu3 17:35 < exch> note that the Slice methods take interface{} arguments.. you have to do a type assertion to string or int, depending on the implementation 17:36 < exch> StringSlice and IntSlice could even be simplified to: type StringSlice []string; and type IntSlice []int; 17:37 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 276 seconds] 17:37 < exch> This sort of abstraction can be handy, but it poses problems. the handleSlice() function doesn't know what type of arguments it should be adding or removing 17:38 < exch> For this particular situation, I would personally just skip the abstraction and work directly with separate implementations of handleSlice() for []string, []int, etc 17:39 < temoto> Yeah i think i'll just limit scanner to []byte. 17:40 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts 17:41 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 252 seconds] 17:43 -!- sacho [~sacho@87-126-51-220.btc-net.bg] has joined #go-nuts 17:54 -!- plainhao [~plainhao@mail.xbiotica.com] has joined #go-nuts 18:00 -!- wrtp [~rog@92.17.16.23] has quit [Quit: wrtp] 18:08 -!- wrtp [~rog@92.17.16.23] has joined #go-nuts 18:09 -!- path[l] [UPP@120.138.102.50] has joined #go-nuts 18:11 -!- Xenith [~xenith@kiwi.he.net] has joined #go-nuts 18:12 -!- boredomist [~boredomis@24.115.43.39.res-cmts.sesp.ptd.net] has joined #go-nuts 18:28 -!- suiside_ [~suiside@a88-114-93-253.elisa-laajakaista.fi] has left #go-nuts [] 18:29 -!- suiside [~suiside@unaffiliated/suiside] has joined #go-nuts 18:30 -!- g0bl1n [~anonymous@a213-22-18-58.cpe.netcabo.pt] has joined #go-nuts 18:30 < plexdev> http://is.gd/esbe0 by [Robert Griesemer] in go/src/pkg/syscall/ -- fix build 18:35 < temoto> Can i define a type alias to function? 18:37 < exch> like this?: type MyFunc func(a, b int) int 18:37 < exch> defines MyFunc as a function with 2 int args and int return type 18:38 < temoto> Yeah thanks, i typed name in wrong place. 18:41 -!- sacho [~sacho@87-126-51-220.btc-net.bg] has quit [Ping timeout: 265 seconds] 18:41 -!- path[l] [UPP@120.138.102.50] has quit [Read error: Connection reset by peer] 18:42 -!- path[l] [UPP@120.138.102.50] has joined #go-nuts 18:42 -!- femtoo [~femto@95-89-197-4-dynip.superkabel.de] has joined #go-nuts 18:42 -!- napsy [~luka@212.235.174.112] has joined #go-nuts 18:48 -!- Shyde [~shyde@HSI-KBW-078-043-070-132.hsi4.kabel-badenwuerttemberg.de] has quit [Remote host closed the connection] 18:49 -!- kw- [~user@d91-128-74-45.cust.tele2.at] has joined #go-nuts 18:53 -!- Venom_X [~pjacobs@71.21.124.111] has quit [Quit: Venom_X] 18:53 -!- sacho [~sacho@95-42-67-216.btc-net.bg] has joined #go-nuts 19:04 -!- babusri` [~Babu@122.167.73.22] has quit [Ping timeout: 259 seconds] 19:04 -!- nkiesel1 [~nkiesel1@adsl-75-34-104-230.dsl.pltn13.sbcglobal.net] has joined #go-nuts 19:14 -!- artefon [~thiago@189.107.155.106] has quit [Quit: bye] 19:15 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 19:18 -!- tylercurtis [~tylercurt@97-95-156-133.dhcp.jcsn.tn.charter.com] has quit [Quit: tylercurtis] 19:27 -!- plainhao [~plainhao@mail.xbiotica.com] has quit [Quit: plainhao] 19:31 -!- g0bl1n [~anonymous@a213-22-18-58.cpe.netcabo.pt] has quit [Quit: g0bl1n] 19:35 -!- redbrain [~redbrain@94.229.66.234] has joined #go-nuts 19:36 < redbrain> hey just playing with go but wondering what do we do for a a build system i just wrote a basic makefile 19:36 < redbrain> is there any more standard thing to do? 19:36 < Namegduf> Nope. 19:36 < exch> makefiles are pretty much the 'standard' atm 19:37 < redbrain> exch: ah cools i don't mind i just suck a writing make ;) 19:37 < exch> So did I when I started with Go. But the go makefiles are fairly straight forward 19:37 < exch> this demo repo may help http://github.com/jteeuwen/go-example-multipkg 19:39 < redbrain> exch thanks i didnt realise we could "include $(GOROOT)/src/Make.pkg" 19:39 < exch> yup. makes life a bit easier 19:39 < redbrain> exch: whoop that works lol win thanks again 19:40 -!- wrtp [~rog@92.17.16.23] has quit [Ping timeout: 265 seconds] 19:45 -!- tvw [~tv@e176018053.adsl.alicedsl.de] has joined #go-nuts 19:45 -!- wrtp [~rog@92.17.16.23] has joined #go-nuts 19:47 -!- wrtp [~rog@92.17.16.23] has quit [Client Quit] 19:48 -!- nsf [~nsf@jiss.convex.ru] has quit [Read error: Connection reset by peer] 19:51 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts 19:51 -!- deso [~deso@x0561a.wh30.tu-dresden.de] has quit [Remote host closed the connection] 19:51 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts 19:52 -!- Xenith_ [~xenith@cyclone.xenith.org] has joined #go-nuts 19:52 -!- temoto [~temoto@81.19.90.235] has quit [Read error: Operation timed out] 19:57 -!- Xenith_ [~xenith@cyclone.xenith.org] has quit [Client Quit] 19:58 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 20:00 -!- femtooo [~femto@95-89-197-4-dynip.superkabel.de] has joined #go-nuts 20:00 -!- Xenith [~xenith@kiwi.he.net] has quit [Quit: leaving] 20:01 -!- Xenith [~xenith@cyclone.xenith.org] has joined #go-nuts 20:03 -!- femtoo [~femto@95-89-197-4-dynip.superkabel.de] has quit [Ping timeout: 240 seconds] 20:12 -!- ronnyy [~quassel@p4FF1DD2F.dip.t-dialin.net] has quit [Remote host closed the connection] 20:12 -!- turbinio [~tobias@p5DD6B6AE.dip.t-dialin.net] has joined #go-nuts 20:12 -!- turbinio [~tobias@p5DD6B6AE.dip.t-dialin.net] has left #go-nuts [] 20:13 -!- gid [~gid@220-253-147-205.VIC.netspace.net.au] has quit [Remote host closed the connection] 20:25 -!- itrekkie [~itrekkie@ip72-200-109-106.tc.ph.cox.net] has quit [Quit: itrekkie] 20:26 -!- dolo [~dolo@210-84-26-83.dyn.iinet.net.au] has joined #go-nuts 20:38 -!- AndChat| [~jackman@m0b0e36d0.tmodns.net] has joined #go-nuts 20:39 -!- jackman_mobile [~jackman@c-76-115-243-246.hsd1.wa.comcast.net] has quit [Ping timeout: 265 seconds] 20:41 -!- boredomist [~boredomis@24.115.43.39.res-cmts.sesp.ptd.net] has quit [Ping timeout: 240 seconds] 20:42 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 276 seconds] 20:43 -!- jackman_mobile [~jackman@c-76-115-243-246.hsd1.wa.comcast.net] has joined #go-nuts 20:43 -!- jackman_mobile [~jackman@c-76-115-243-246.hsd1.wa.comcast.net] has quit [Remote host closed the connection] 20:44 -!- AndChat| [~jackman@m0b0e36d0.tmodns.net] has quit [Ping timeout: 260 seconds] 20:47 -!- femtooo [~femto@95-89-197-4-dynip.superkabel.de] has quit [Quit: Leaving] 20:50 -!- boredomist [~boredomis@24.115.43.39.res-cmts.sesp.ptd.net] has joined #go-nuts 20:51 -!- navigator [~navigator@p5489555C.dip.t-dialin.net] has quit [Quit: WeeChat 0.3.3] 20:54 < exch> hmm. todays go update increased the binary size of one of my projects from 1.4mb to 2mb 20:54 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit: slashus2] 20:55 < exch> weird. the packages are smaller 20:55 -!- napsy [~luka@212.235.174.112] has joined #go-nuts 20:57 < nsf> exch: maybe it's because of debug info? 20:57 < nsf> dwarf generation was added to 6l 20:57 < exch> it's possible 20:58 < exch> can I yank it out? :p 20:58 < nsf> I don't know 21:06 < exch> mm another project from 2.1 to 3.2 mb :s 21:07 -!- emmanueloga [~emmanuelo@190.244.214.122] has quit [Quit: WeeChat 0.3.3-dev] 21:08 < nsf> I hope they will add a cmd line switch for that 21:08 < nsf> in case if the cause is the dwarf section 21:08 < exch> I hope so 21:12 -!- boredomist [~boredomis@24.115.43.39.res-cmts.sesp.ptd.net] has quit [Quit: Leaving] 21:15 -!- boredomist [~boredomis@24.115.43.39.res-cmts.sesp.ptd.net] has joined #go-nuts 21:17 -!- tylercurtis [~tylercurt@97-95-156-133.dhcp.jcsn.tn.charter.com] has joined #go-nuts 21:26 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts 21:31 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts 21:46 -!- mattn_jp [~mattn_jp@112-68-92-234.eonet.ne.jp] has left #go-nuts [] 21:49 -!- nkiesel1 [~nkiesel1@adsl-75-34-104-230.dsl.pltn13.sbcglobal.net] has left #go-nuts [] 21:54 -!- ikaros [~ikaros@dslb-084-059-076-150.pools.arcor-ip.net] has quit [Read error: Connection reset by peer] 21:55 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 272 seconds] 21:57 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has quit [Ping timeout: 624 seconds] 22:03 < nictuku> I hate slices. 22:03 < yiyus> why? 22:04 < nictuku> writing a rant now, hang on 22:06 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts 22:06 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Remote host closed the connection] 22:09 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit: Verlassend] 22:14 -!- General13372 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined #go-nuts 22:16 -!- tav [~tav@2001:0:53aa:64c:0:3ffe:a3f8:9d51] has quit [Ping timeout: 260 seconds] 22:17 < nictuku> posted into Andrew's blog, but it's pending moderator approval. In summary, I'm coming from Python. So I like the ability to set a cap for the slices. But I don't like that I still have to manage the array within the slice. 22:17 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has quit [Ping timeout: 272 seconds] 22:18 < MizardX> Why? Just create the slice, and forget about the underlying array. 22:18 < nictuku> for example, the need to "re-slice" when you want to add an item to the slice - which takes two ugly lines. 22:18 < MizardX> Use a vector 22:18 < nsf> vector suck, gimme generic vector 22:18 < nsf> sucks* 22:18 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 240 seconds] 22:19 < Namegduf> nictuku: Go is fast because it doesn't use data types which use inherently slower representations to support operations that the type itself doesn't really support, and doesn't provide really slow operations as basic ones in the language. 22:19 < nictuku> vectors are very ugly. they are not idiomatic, it takes a lot of typing to work with them. Specially with you want a vector of *T, when T is not int or string 22:19 < Namegduf> In general, if that's what you want, you should go use Python, I think. 22:19 < nictuku> Namegduf: those are orthogonal issues. I'm complaining about syntax. 22:20 < Namegduf> nictuku: No, they aren't, unless your proposal just includes automatic reslicing when the underlying array is already large enough. 22:20 -!- moondowner [~quassel@92.53.38.28] has quit [Remote host closed the connection] 22:20 < Namegduf> If that is all your proposal is, then it doesn't liberate you from managing the underlying array at all. 22:21 < yiyus> i agree growing slices can be tedious (see http://codereview.appspot.com/1953044/diff/5001/6002) 22:21 < nsf> yiyus: hehe, copy & paste rocks 22:22 * Namegduf thinks that making the semantics of assigning to indexes of a slice have additional complexity and potentially cause len() to change in an assignment, for the sake of turning two lines to one here and there, is undesirable 22:23 < nsf> I think that Go should have dynamic arrays as built-ins 22:23 < nsf> like in D 22:23 < yiyus> all this discussion about generics... i wonder if making vector a builtin (generic) type would stop the discussion 22:23 < Namegduf> "no" 22:24 < exch> probably not :p 22:24 < Namegduf> Maps are not the be-all and end-all of associative data structures, either 22:24 < yiyus> surely not completely ;) 22:24 < Namegduf> There's a whole bunch of those which can be needed or appropriate. 22:24 < nictuku> but they are two very ugly lines. real example for re-slicing: DhtStats.engines = DhtStats.engines[0:len(DhtStats.engines)+1] ; 22:24 -!- forgey_ [brook@seahawk.ript.net] has quit [Read error: Operation timed out] 22:24 < exch> people complain for the sake of complaining ;) If one thing is 'fixed', the next thing comes up. I like that the Go authors make a firm stand in this regard. There is a very clear idea of what Go should and should not be 22:25 < nictuku> exch: that's not true. 22:25 < nsf> also I'm curious if Go authors will add generics 22:25 < jcao219> me too 22:25 < nsf> what will happen with map type 22:25 < jcao219> i hope there will be more tools for Go on Windows 22:26 < MaybeSo> so I've got a 3rd party library which can apprently return an os.Error or an http.ProtocolError (http://golang.org/pkg/http/#ProtocolError) 22:26 < MaybeSo> what's the Proper Way to check for various error types? 22:26 < nsf> type switch 22:26 < exch> nictuku: it doesn't mean that changes are out of the question, but they will go thruogh very rigorous review and discussion. They won't just change the language because it seems convenient 22:26 * Namegduf needed, for example, a structure which was tiny when empty and small for only a few items, and which you could range over a bunch of neighbouring keys, but not others. A hashtable was not appropriate. 22:26 < Namegduf> (Maps are hashtables) 22:27 -!- forgey [brook@seahawk.ript.net] has joined #go-nuts 22:27 < nictuku> exch: they will if we complain enough and say that something is annoying us, yet the change wouldn't compromise the design of the language. The death of 'new' is a great example. 22:28 < nsf> it's not dead yet 22:28 < Namegduf> I would suggest that it was because people put forward a better proposal. 22:28 < nsf> it was just a proposal 22:28 -!- tav [~tav@2001:0:53aa:64c:0:3ffe:a3f8:9cec] has joined #go-nuts 22:28 < Namegduf> Or, rather, because the sole reason new was there in the first place was to avoid annoying people 22:28 < Namegduf> But it apparantly wasn't needed. 22:28 < Namegduf> If I recall the background there right. 22:28 < exch> Getting rid of new() doesn't clash with Go's idea of simplicity. Infact, it only works towards it (one less builtin to worry about) 22:28 < Namegduf> Not because people complained "enough". 22:29 < Namegduf> There's plenty of people who are just trying to turn Go into Ruby, so far as I can tell, on the idea that they'll get Ruby's features and Go's performance. 22:29 < Namegduf> Or at least turn it into Python. :P 22:29 -!- kw- [~user@d91-128-74-45.cust.tele2.at] has quit [Ping timeout: 240 seconds] 22:29 < jcao219> lol Python sure is convenient to use 22:30 < yiyus> i find go code much easier to read, even bad code, that is a good benefit from the lack of features 22:30 < exch> After all is said and done, there is nothing stopping one from forking the whole Go project and just adding whatever one likes. Just don't expect it to be merged into the mainline again :) 22:31 < yiyus> bad code in python or ruby, instead... 22:31 < jcao219> that's true 22:31 < nictuku> Namegduf: your argument seems to be that adding cool features makes the language suck, necessarily? Even if the features are cool? 22:31 < Namegduf> The coolness of the feature is rather irrelevant to the costs of implementation. 22:32 < nictuku> why is having a syntax for re-slice-and-append costly? 22:32 < Namegduf> Because it either: 22:33 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined #go-nuts 22:33 < Namegduf> 1) Introduces a new operator, which everyone using Go must remember and memorise and know to handle Go code. 22:33 < nictuku> well, why can't this work? slice + item ? 22:33 < Namegduf> 2) Adds additional semantics to the assignment operation, making what it does less directly readable, with the direct effect of quietly altering len(). 22:34 < yiyus> nictuku: slice + item is just sugar 22:35 < Namegduf> That could be reasonably cheap in terms of complexity added to assignment for the effect. 22:35 < yiyus> there are dozens of similar good ideas that you can add, but if you add them all, you will finish with a mess 22:36 < Namegduf> My point is that such sugar has a significant cost to evaluate in terms of language complexity, which has a significant cost in that it adds to what a programmer must know to work with the language. 22:36 < Namegduf> If stuff is worth it or not is really for the devs to figure. 22:36 -!- General13372 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has quit [Ping timeout: 276 seconds] 22:37 < jcao219> well, about the slices thing, how it is right now, programmers have to memorize the general code for reslicing 22:37 < jcao219> whenever they need to append 22:37 < Namegduf> That's not hard. 22:37 < jcao219> i know, but it's more than let's say if you add a special operator 22:37 < jcao219> or something to the language 22:37 < Namegduf> It's like memorising the "general code for adding". 22:38 < Namegduf> No, it isn't. 22:38 < jcao219> heh 22:38 < nsf> hehe, I remember Rob Pile said that patterns is a signal of the language weaknesses 22:38 < jcao219> yes 22:38 < nsf> we have patterns for slice growing 22:38 < nsf> great 22:38 < Namegduf> jcao219: As it is right now, a programmer needs to remember how slicing works, and how adding works. 22:38 < nsf> oops 22:38 < jcao219> yea, so they don't treat slices like python lists 22:38 < nsf> Pike* 22:38 < Namegduf> jcao219: With tha idea, they'd need to remember those two, and that adding can sometimes imply the former. 22:40 < Namegduf> A change which makes it easier to treat slices like lists just means more newbies screw up horribly and fail to learn the difference right, because it'll never be safe to treat them the same. 22:40 < Namegduf> "It'll look more like something it isn't" is a - to helpfulness to newbies, not a + 22:40 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has joined #go-nuts 22:41 -!- Soultaker [~maks@hell.student.utwente.nl] has joined #go-nuts 22:41 < jcao219> yep, go slices are unique 22:41 < KirkMcDonald> Go slices are very similar to D's dynamic arrays. 22:41 < jcao219> huh, really? 22:42 < KirkMcDonald> However, Go's slices make their relationship to the underlying array more explicit, which is a good thing. 22:42 < yiyus> imho slices growing could indeed be improved, but until there is a final decission about generics is stupid to complicate the language with it 22:43 < nsf> D has its own quirks around dynamic arrays 22:43 < KirkMcDonald> A dynamic array in D supports several operations which implicitly imply a reallocation and copy. 22:43 < jcao219> yes, but in Go it's explicit 22:43 < KirkMcDonald> (Also I just realized that "implicitly imply" is redundant.) 22:44 < KirkMcDonald> Yes. Which I think is good. 22:44 < yiyus> (why? cannot you say "explicitly imply"?) 22:44 < jcao219> but it creates "patterns" as nsf said 22:44 < nictuku> my proposal. it's probably silly, though: http://gist.github.com/541352 22:44 < KirkMcDonald> yiyus: "Imply" on its own would have worked just as well. 22:44 < nsf> I need to write an app that searches through the Go source code and counts "slice grow" code snippets 22:44 < Namegduf> I don't like such operations in the language, because then people are foolish and actually use those operations to implement things, and then there's nothing you can do to make code in the language run fast but somehow discern the point of the unnecessarily slow algorithm and replace it with a fast one. 22:44 < yiyus> KirkMcDonald: just joking 22:44 < nsf> I'm sure current go codebase has zillions of them 22:45 < Namegduf> Which I don't think is practical in compilers just yet. 22:45 < jcao219> lol 22:45 < KirkMcDonald> Namegduf: What's worse, consider the following line of D code: array ~= x; 22:45 < Namegduf> KirkMcDonald: What does that do? 22:45 < KirkMcDonald> ~= is the append/extend operator. 22:45 < jcao219> catenacate 22:45 < Namegduf> Ah. 22:46 < KirkMcDonald> That is, D uses binary ~ to mean concatenation (rather than overloading +). 22:46 < jcao219> ~ is also used for catenatate strings 22:46 < KirkMcDonald> And ~= is "in-place concatenate," that is, appending or extending. 22:46 < jcao219> gah i can never spell that word 22:46 < jcao219> concatenate 22:46 < Namegduf> Ah. 22:47 < Namegduf> Does it do the "amortized average time O(1)" thing that the STL does in places? 22:47 < KirkMcDonald> So, after "array ~= x;" does 'array' still refer to the same piece of memory? 22:47 < KirkMcDonald> Namegduf: It does, exactly. 22:48 < KirkMcDonald> It is a trick question, of course. 22:48 < Namegduf> Yeah. 22:48 < Namegduf> Sometimes it does, sometimes it doesn't. 22:48 < KirkMcDonald> Whether it refers to the same piece of memory depends on whether it did a reallocate-and-copy. 22:48 < Namegduf> And it can, of course, always invaliate iterators. 22:48 < Namegduf> Or not. 22:48 < Namegduf> Right? 22:49 -!- Project_2501 [~Marvin@82.84.92.43] has quit [Quit: E se abbasso questa leva che succ...] 22:49 < KirkMcDonald> D doesn't have "iterators," at least not in the C++ sense. 22:49 < nsf> iterators? 22:49 < KirkMcDonald> There are pointers, certainly. 22:49 < Namegduf> Hmm. 22:49 < KirkMcDonald> D2 has "ranges", which are something slightly different. 22:50 < Namegduf> I guess it wouldn't essentially. 22:50 < nsf> when I hear 'iterators' I have a picture in mind with C++ template compilation error messages 22:50 < nsf> :D 22:50 < KirkMcDonald> (Basically a D2 range is a struct containing both a start and an end iterator.) 22:50 < Namegduf> Ah. 22:50 < KirkMcDonald> (But the iterators themselves are not exposed.) 22:50 < Namegduf> I guess it wouldn't invalidate pointers into it. 22:50 < Namegduf> Due to being a GCed language. 22:50 < KirkMcDonald> Namegduf: Yes, exactly. 22:51 < Soultaker> how does that work then? 22:51 * Namegduf exploits this in Go, actually 22:51 < yiyus> nsf: not zillions, really: 22:51 < yiyus> grep 'if .* == cap.*' */*.go | wc -l 22:51 < yiyus> 19 22:51 < yiyus> 9 are in the regexp.go file i linked 22:51 < KirkMcDonald> On the other hand, simply iterating over a dynamic array in D looks like: foreach (idx, element; array) {} 22:52 < Namegduf> On a totally unrelated note, I wonder when someone is going to solve versioning for goinstall 22:52 < KirkMcDonald> Which basically just compiles to the equivalent for loop. 22:52 < Namegduf> Ah. 22:53 < KirkMcDonald> Ugh. 22:53 < Namegduf> Similar to "for i, item := range slice { }"? 22:53 < KirkMcDonald> Why does each language invent its own package manager? It's maddening. 22:53 < KirkMcDonald> Namegduf: Yes. 22:54 < nsf> yiyus: you should also count those: grep 'if .* > cap.*' */*.go | wc -l 22:54 < nsf> +3 22:54 < nsf> :P 22:54 < nsf> KirkMcDonald: are you talking about goinstall? 22:55 < yiyus> i was doing just that :p 'if .* (==|>) cap.*' 22:55 < KirkMcDonald> nsf: Yes. As soon as you start talking about implementing versioning in your ad hoc package manager, god kills a kitten. 22:55 < nsf> I don't use goinstall 22:55 < nsf> because I think it sucks 22:55 < nsf> :) 22:55 < KirkMcDonald> Wonderful! 22:56 < Namegduf> I'm thinking I won't use it either, and will just maintain and update a local, embedded copy of goconf. 22:56 < Namegduf> Less random breakage when upstream doesn't update for about two weeks. 22:56 < Namegduf> >_> <_< 22:56 < nsf> Namegduf: I'm doing exactly that 22:56 -!- napsy [~luka@212.235.174.112] has joined #go-nuts 22:56 < nsf> http://github.com/nsf/gocode/tree/master/goconfig/ 22:56 < nsf> that's my goconf 22:56 < nsf> :) 22:57 < KirkMcDonald> What I really want to be able to do is have a standard way of pointing Go at a package tree living under /usr/local somewhere. 22:57 < Namegduf> nsf: I'm not going to give it a separate repo. 22:57 < KirkMcDonald> Because then I can have epkg take care of stuff. 22:57 < Namegduf> It's like 800 lines or less. 22:57 < Namegduf> Not worth it. 22:57 < nsf> Namegduf: if you haven't noticed it's in the gocode repo 22:57 < Namegduf> Ah, right. 22:58 < KirkMcDonald> (Like I do for Python modules which I install outside the package manager.) 22:58 < Namegduf> Silly me. 22:58 -!- tarski [~ms@246-moc-3.acn.waw.pl] has joined #go-nuts 22:58 < nsf> actually I even have a patch that fixes goconf for an upcoming regexp change 22:58 < Namegduf> I actually really wish something like goconf would get mainlined. 22:58 < Namegduf> A lot of programs need some form of configuration. 22:59 < yiyus> KirkMcDonald: i think i'm not following you... doesn't the -I flag for gc do just that? 22:59 < KirkMcDonald> Once upon a time, I hacked something together which integrated Python's optparse with its ConfigParser. 22:59 < nsf> Namegduf: and there are usually 100 ways of doing that 22:59 < MaybeSo> Namingduf: like heroin? 22:59 < nsf> and all are more or less equal 22:59 < Namegduf> nsf: Yeah, but one will do as a default solution. 23:00 < nsf> which one? 23:00 < Namegduf> Doesn't matter, just can pick one. 23:00 < nsf> :D 23:00 -!- tsykoduk [~tsykoduk@184.78.195.79] has quit [Ping timeout: 252 seconds] 23:00 < Namegduf> I'd suggest goconf on the basis that it already exists 23:00 < KirkMcDonald> yiyus: Consider compiling a third-party package where I have crammed one of its dependencies under /usr/local somewhere. 23:00 < Namegduf> Although I dislike ini syntax, it's plenty good enough 23:00 < Namegduf> Probably more programs need something goconf-like than need compress/zlib 23:00 < KirkMcDonald> yiyus: I need to somehow inform that package's Makefile about this additional -I directory. 23:00 < nsf> I don't like goconf because it has weird macros inside 23:01 < Namegduf> Ah. 23:01 < KirkMcDonald> ini files are simple and reasonable. 23:01 < yiyus> KirkMcDonald: i see 23:02 < nsf> Namegduf: we should create a special Go repo, for useful libraries :D 23:02 < nsf> like a collection of additions to the std lib 23:02 -!- tsykoduk [~tsykoduk@184.78.195.79] has joined #go-nuts 23:02 < KirkMcDonald> The functionality of goconf appears to be lifted directly from Python's ConfigParser. 23:02 < Namegduf> Yeah. 23:02 * Namegduf has used ConfigParser. 23:03 < KirkMcDonald> Right down to having GetString/GetInt/GetBool methods. 23:03 < KirkMcDonald> Ah, but it has a "default" section. 23:03 < KirkMcDonald> Which Python's lacks for some reason. 23:04 -!- jdp [gu@24.238.32.162.res-cmts.segr.ptd.net] has quit [] 23:05 < Namegduf> nsf: I think the cat-v links page kinda does that, it just doesn't provide any kind of maintenance. 23:05 < nsf> that's the problem 23:06 < Namegduf> Might be cool to have a little project to solve that. 23:06 < nsf> yeah, but I don't feel like I really want to do this 23:06 < nsf> :D 23:06 < Namegduf> Heh. Time's a pain. 23:07 < nsf> I have my gocode burden already 23:07 < nsf> and it still lacks the refactoring part 23:07 < nsf> which I really want to implement one day 23:08 < nictuku> isn't it easier to add versioning to goinstall? 23:08 * KirkMcDonald twitches. 23:09 < nsf> nictuku: I don't think so 23:09 < nsf> goinstall still can't handle cgo libs anyway 23:09 < Namegduf> I understand that versioning is some kind of sticky problem. 23:09 < Namegduf> Somehow. 23:09 < Namegduf> I don't know why. 23:09 < nsf> well, yes 23:10 < KirkMcDonald> Versioning coupled with dependencies leads to madness. 23:10 < nsf> versioning is why Go doesn't have .so support :D 23:11 < nsf> at least part of the reason 23:11 < KirkMcDonald> Also there is a cautionary tale to be had in DSSS. 23:13 -!- slackstation [~eman@adsl-69-231-151-35.dsl.irvnca.pacbell.net] has quit [Quit: slackstation] 23:13 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3] 23:18 -!- heyhey [4f9abeb8@gateway/web/freenode/ip.79.154.190.184] has joined #go-nuts 23:20 -!- dju [dju@fsf/member/dju] has quit [Read error: Connection reset by peer] 23:20 -!- dju [dju@fsf/member/dju] has joined #go-nuts 23:22 -!- Fish [~Fish@9fans.fr] has quit [Remote host closed the connection] 23:24 -!- awidegreen [~quassel@62.176.237.78] has quit [Remote host closed the connection] 23:28 -!- iant [~iant@nat/google/x-gzsuiikgddmtwath] has quit [Ping timeout: 276 seconds] 23:29 -!- tarski [~ms@246-moc-3.acn.waw.pl] has quit [Quit: Ex-Chat] 23:35 -!- iant [~iant@66.109.103.22] has joined #go-nuts 23:35 -!- mode/#go-nuts [+v iant] by ChanServ 23:40 -!- iant [~iant@66.109.103.22] has quit [Ping timeout: 265 seconds] 23:41 -!- photron [~photron@port-92-201-20-57.dynamic.qsc.de] has quit [Ping timeout: 258 seconds] 23:46 -!- artefon [~thiago@189.107.155.106] has joined #go-nuts 23:53 -!- iant [~iant@216.239.45.130] has joined #go-nuts 23:53 -!- mode/#go-nuts [+v iant] by ChanServ 23:58 -!- tylercurtis [~tylercurt@97-95-156-133.dhcp.jcsn.tn.charter.com] has quit [Quit: tylercurtis] 23:59 -!- tvw [~tv@e176018053.adsl.alicedsl.de] has quit [Remote host closed the connection] --- Log closed Sat Aug 21 00:00:05 2010