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

--- Log opened Fri Dec 17 00:00:01 2010
00:04 -!- adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has quit [Quit:
00:07 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-180-154.clienti.tiscali.it] has
quit [Quit: E se abbasso questa leva che succ...]
00:07 -!- kashia_ [~Kashia@port-92-200-77-108.dynamic.qsc.de] has quit [Read
error: Operation timed out]
00:08 -!- kashia_ [~Kashia@port-92-200-77-108.dynamic.qsc.de] has joined #go-nuts
00:28 -!- DerHorst [~Horst@e176101254.adsl.alicedsl.de] has quit [Ping timeout:
240 seconds]
00:32 -!- napsy [~luka@] has quit [Quit: Lost terminal]
00:34 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has quit [Quit:
00:39 -!- Nitro [~Nitro@unaffiliated/nitro] has quit [Quit: This computer has gone
to sleep]
00:42 -!- DerHorst [~Horst@e176101253.adsl.alicedsl.de] has joined #go-nuts
00:45 -!- l00t [~i-i3id3r_@] has quit [Ping timeout: 240 seconds]
00:46 -!- l00t [~i-i3id3r_@] has joined #go-nuts
00:58 < plexdev> http://is.gd/iS7yo by [Rob Pike] in go/src/pkg/regexp/ --
regexp: add HasMeta and regexp.Expr().
01:00 -!- DerHorst [~Horst@e176101253.adsl.alicedsl.de] has quit [Remote host
closed the connection]
01:17 -!- exch [~exch@h78233.upc-h.chello.nl] has quit [Read error: Connection
reset by peer]
01:18 -!- exch [~exch@h78233.upc-h.chello.nl] has joined #go-nuts
01:25 -!- l00t [~i-i3id3r_@] has quit [Read error: Connection reset
by peer]
01:33 -!- amacleod [~amacleod@pool-96-252-93-11.bstnma.fios.verizon.net] has
joined #go-nuts
01:33 -!- Venom_X [~pjacobs@99-8-218-190.lightspeed.hstntx.sbcglobal.net] has quit
[Quit: Venom_X]
01:36 -!- LeNsTR [~lenstr@unaffiliated/lenstr] has quit [Quit: LeNsTR]
01:40 -!- foocraft [~dsc@] has quit [Ping timeout: 240 seconds]
01:44 -!- kanru [~kanru@] has joined #go-nuts
01:45 -!- shvntr [~shvntr@] has joined #go-nuts
01:47 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has joined #go-nuts
01:59 -!- foocraft [~dsc@] has joined #go-nuts
02:07 -!- ios_ [~ios@] has joined #go-nuts
02:11 -!- linnk [~linnk@ip-56-115.bnaa.dk] has quit [Remote host closed the
02:32 -!- jartur [~jartur@81-045-adsl.vntc.ru] has joined #go-nuts
02:40 -!- tdnrad [~darndt@terminal.research.cs.dal.ca] has joined #go-nuts
02:58 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined
02:58 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Read error: Operation
timed out]
02:58 -!- hagna [~hagna@74-92-245-181-Utah.hfc.comcastbusiness.net] has quit [Ping
timeout: 260 seconds]
02:58 -!- boscop_ [~boscop@g225209139.adsl.alicedsl.de] has joined #go-nuts
03:01 -!- boscop [~boscop@g227142020.adsl.alicedsl.de] has quit [Ping timeout: 240
03:07 -!- niemeyer [~niemeyer@201-2-134-72.pltce701.dsl.brasiltelecom.net.br] has
quit [Ping timeout: 240 seconds]
03:10 -!- falconindy [~noclaf@unaffiliated/falconindy] has quit [Quit: leaving]
03:11 -!- falconindy [~noclaf@unaffiliated/falconindy] has joined #go-nuts
03:28 -!- Nitro [~Nitro@unaffiliated/nitro] has joined #go-nuts
03:31 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
03:40 -!- Nitro [~Nitro@unaffiliated/nitro] has quit [Ping timeout: 276 seconds]
03:48 -!- kanru [~kanru@] has quit [Remote host closed the
03:49 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
03:58 -!- amacleod [~amacleod@pool-96-252-93-11.bstnma.fios.verizon.net] has quit
[Quit: Bye Bye]
04:00 -!- ymasory_ [~ymasory@c-76-99-55-224.hsd1.pa.comcast.net] has joined
04:18 -!- morphbot [~morphbot@p57B579B1.dip.t-dialin.net] has joined #go-nuts
04:18 -!- morphbot [~morphbot@p57B579B1.dip.t-dialin.net] has left #go-nuts []
04:23 -!- adg [~nf@124-171-20-223.dyn.iinet.net.au] has quit [Ping timeout: 265
04:32 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 276 seconds]
04:48 -!- nettok [~quassel@] has joined #go-nuts
04:51 -!- adg [~nf@124-168-173-235.dyn.iinet.net.au] has joined #go-nuts
04:51 -!- mode/#go-nuts [+o adg] by ChanServ
05:03 -!- lmoura [~lauromour@] has quit [Read error: Operation timed
05:04 -!- lmoura [~lauromour@] has joined #go-nuts
05:04 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
05:05 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
05:19 -!- keithcascio [~keithcasc@nat/google/x-ecfgzwlhndynynzg] has quit [Quit:
05:31 -!- Tv [~tv@] has quit [Remote host closed the connection]
05:58 < anticw> iant: gccgo always makes prolog/epilog code for discontig
05:59 <+iant> it always make a prologue for it, yes
05:59 <+iant> (the epilogue doesn't change)
05:59 < anticw> and if not using gold as ld?
06:00 <+iant> it still splits the stack, but if you don't use gold you can
get stack overruns in some cases
06:00 < anticw> *blink*
06:00 < anticw> really?
06:00 <+iant> also when not using gold it uses much larger stacks for each
06:00 <+iant> really
06:01 < anticw> ouch
06:01 <+iant> what gold does is look for code compiled with -fsplit-stack
which calls code which was not compiled with -fsplit-stack
06:01 < anticw> some cases ...  you mean on part with c + pthreads?
06:01 <+iant> when gold sees such a case, it automatically adjusts the
prologue to request a much larger stack, so that the non-split-stack code will
have a large stack
06:01 -!- dju [dju@at.dmz.me] has joined #go-nuts
06:01 -!- dju [dju@at.dmz.me] has quit [Changing host]
06:01 -!- dju [dju@fsf/member/dju] has joined #go-nuts
06:01 <+iant> the stack overruns when not using gold will only happen when
Go code calls C code
06:02 <+iant> which does happen via libgo
06:02 <+iant> it's not common, though
06:02 <+iant> all the libgo testsuite passes when not using gold
06:02 < anticw> yeah, not need it here
06:03 < anticw> can i suppress the prologue generation?
06:03 <+iant> no
06:03 <+iant> wait, maybe
06:04 <+iant> yes, you can compile with -fno-split-stack
06:04 <+iant> that should disable the split-stack prologue
06:04 -!- Tv [~tv@cpe-76-168-227-45.socal.res.rr.com] has joined #go-nuts
06:04 < anticw> yeah ...  that works
06:04 < anticw> my function is down to one insn with that
06:04 < anticw> .cfi_startproc
06:04 < anticw> what does that tell gas to do?
06:04 <+iant> that's not even an insn
06:04 < anticw> no, that's before it
06:05 <+iant> oh
06:05 < anticw> the function is: jmp _wrapper
06:05 <+iant> that tells gas where a function starts, so that it generates
the correct stack unwind information
06:06 < anticw> how long has it done that?
06:06 <+iant> couple years
06:06 < anticw> for c as well?
06:06 <+iant> it's only used if you enable exceptions
06:06 <+iant> which is not the default for C
06:06 < anticw> ah ok
06:06 <+iant> though you can use -fexceptions
06:06 < anticw> how does that work in c?
06:07 <+iant> you can give a variable a cleanup attribute
06:08 <+iant> it names a function which is run when the variable goes out of
06:08 < anticw> __attribute__((...)) style?
06:08 <+iant> this is a gcc extensin, of course
06:08 <+iant> yes
06:12 -!- ymasory_ [~ymasory@c-76-99-55-224.hsd1.pa.comcast.net] has quit [Ping
timeout: 240 seconds]
06:19 < anticw> iant: can/will gcc[go] tell me a list of options for -march
and -mtune?
06:19 <+iant> I don't think so; I think the list is only in the docs
06:20 < nsf> anticw:
06:20 <+iant> although those are the docs for 4.4
06:20 <+iant> and gccgo is based on the upcoming 4.6
06:20 < nsf> yes
06:21 < anticw> yeah, recent stuff has AVX support
06:21 < anticw> just saw that now ...  kinda cute i guess
06:21 <+iant> also atom
06:23 < anticw> not clear what you do for atom differently to core2 though
06:23 < anticw> other than time things with a calendar
06:23 < anticw> (i have a few atoms machines, they are really painfully
06:24 <+iant> doing correct scheduling for atom makes a big difference for
06:24 < nsf> atom has no out-of-order execution
06:24 <+iant> that is much less true for core-2
06:24 <+iant> and other recent x86 chips
06:24 < anticw> i know atom is in-order ...  just wasn't aware gcc did a lot
to accommodate for that
06:25 < anticw> i guess it might help with older via and embedded x86 stuff
too which is mostly in-order
06:25 <+iant> yeah, but (getting kind of technical here) in 32-bit mode
there isn't much scheduling freedom because you are pretty much register
constrained; in 64-bit mode there is more freedom to move instructions around by
renaming registers
06:27 < anticw> iant: yeah, there was a push from some people to create
x86-32 ...  32-bit mode with more registers
06:27 < anticw> very glad that never happenned
06:27 < nsf> another layer of incompatibility, bad idea
06:28 < anticw> well, it's not clear it would ever be worth the effort ...
and the insn encoding would have been potentially a bit icky
06:28 < anticw> and you get another abi ...
06:29 < anticw> mips did some of this ...  there are 4 abi's people use and
a couple less well known, nasty stuff
06:47 -!- sofire [~sofire@] has joined #go-nuts
07:04 -!- enherit [~enherit@71-83-188-75.dhcp.lnbh.ca.charter.com] has joined
07:06 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has joined #go-nuts
07:10 -!- enherit [~enherit@71-83-188-75.dhcp.lnbh.ca.charter.com] has quit [Quit:
07:12 -!- lmoura [~lauromour@] has quit [Read error: Connection reset
by peer]
07:13 -!- lmoura [~lauromour@] has joined #go-nuts
07:14 -!- krutcha1 [~krutcha@S010600045a27676a.vs.shawcable.net] has joined
07:22 -!- Tv [~tv@cpe-76-168-227-45.socal.res.rr.com] has quit [Quit: Leaving.]
07:30 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has joined #go-nuts
07:40 -!- niemeyer [~niemeyer@201-2-134-72.pltce701.dsl.brasiltelecom.net.br] has
joined #go-nuts
07:59 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
08:02 -!- sofire [~sofire@] has left #go-nuts ["Leaving"]
08:19 -!- jartur [~jartur@81-045-adsl.vntc.ru] has quit [Ping timeout: 240
08:20 -!- jartur [~jartur@109-109-213-155-xdsl.vntc.ru] has joined #go-nuts
08:27 -!- ExtraSpice [~XtraSpice@] has joined #go-nuts
08:31 -!- nettok [~quassel@] has quit [Ping timeout: 255 seconds]
08:35 -!- jartur [~jartur@109-109-213-155-xdsl.vntc.ru] has quit [Ping timeout:
250 seconds]
08:42 -!- wrtp [~rog@] has joined #go-nuts
08:46 -!- photron_ [~photron@port-92-201-241-126.dynamic.qsc.de] has joined
08:51 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-162-137.clienti.tiscali.it] has
joined #go-nuts
08:56 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has joined #go-nuts
09:01 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has joined
09:08 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
09:20 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has quit [Ping timeout: 240
09:22 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has joined #go-nuts
09:28 -!- rlab [~Miranda@] has joined #go-nuts
10:00 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has quit [Ping timeout: 240
10:02 -!- sacho [~sacho@87-126-6-67.btc-net.bg] has joined #go-nuts
10:04 -!- tensorpudding [~user@] has quit [Remote host closed the
10:04 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has joined #go-nuts
10:07 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has quit [Read error:
Connection reset by peer]
10:07 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has joined #go-nuts
10:10 -!- napsy [~luka@] has joined #go-nuts
10:14 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has quit [Ping timeout: 240
10:15 -!- DerHorst [~Horst@e176101253.adsl.alicedsl.de] has joined #go-nuts
10:16 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has joined #go-nuts
10:27 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has quit [Ping timeout: 240
10:29 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has joined #go-nuts
10:36 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has left #go-nuts []
10:37 -!- artefon [~thiago@] has joined #go-nuts
10:38 -!- zozoR [~zozoR@56347ac9.rev.stofanet.dk] has quit [Ping timeout: 240
10:43 -!- thiago__ [~thiago@] has joined #go-nuts
10:43 < wrtp> there's one thing about goroutines - the program hangs up and
suddenly you've got 33 separate stack traces to deal with...
10:44 < TheSeeker> Wouldn't that be true of any multithreaded app?
10:45 -!- artefon [~thiago@] has quit [Ping timeout: 240 seconds]
10:49 -!- XenoPhoenix [~Xeno@cpc5-aztw24-2-0-cust39.aztw.cable.virginmedia.com]
has quit [Ping timeout: 250 seconds]
10:51 -!- tvw [~tv@] has joined #go-nuts
10:53 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has joined #go-nuts
11:10 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 240
11:15 -!- plediii [~plediii@nat-168-7-234-250.rice.edu] has joined #go-nuts
11:16 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 265
11:17 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has quit [Ping timeout: 260
11:21 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has joined #go-nuts
11:28 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts
11:32 -!- thiago__ [~thiago@] has quit [Quit: bye]
11:42 -!- XenoPhoenix [~Xeno@cpc5-aztw24-2-0-cust39.aztw.cable.virginmedia.com]
has joined #go-nuts
11:48 < wrtp> TheSeeker: yeah, but maybe there's a tendency to use more
goroutines in Go...
11:49 < TheSeeker> Try running freenet.  less than 300 threads there is very
light load.  :)
11:55 < Namegduf> wrtp: I think that'd be a lot less annoying, maybe not
annoying at all, if the bad goroutine was the *last*, not the *first* one printed
11:55 < Namegduf> Then you'd never need to scroll up and look at the others.
11:55 < wrtp> Namegduf: if you've got a hangup, there's no way of knowing
which one is bad...
11:56 < Namegduf> Ah.
11:56 < Namegduf> You mean a deadlock?
11:56 * Namegduf didn't know that meaning of hangup, sorry.
11:57 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 265
12:01 < wrtp> yeah, i mean deadlock sorry
12:01 < wrtp> in my current testing, the stack trace (not dealing with
multiple clients) runs to 858 lines...
12:02 -!- artefon [~thiago@] has joined #go-nuts
12:09 < bawr> This is a good time to thank the Great Old Ones for grep.  ;)
12:11 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts
12:11 < wrtp> actually structural regexps are more useful - you can delete
whole stack traces that way, trivially
12:12 < wrtp> X/(.+)+/g/NetFD/d
12:13 < wrtp> oops x/(.+\n)+/g/NetFD/d of course :-)
12:26 < TheSeeker> hmm, Go-SDL uses 'pkg-config' ...  *hunts for windows
version of pkg-config*
12:36 < bawr> s/grep/sed/, then.  :)
12:43 -!- boscop_ [~boscop@g225209139.adsl.alicedsl.de] has quit [Read error:
Connection reset by peer]
13:00 -!- virtualsue [~chatzilla@nat/cisco/x-amhadzwogopurjic] has joined #go-nuts
13:01 -!- niemeyer [~niemeyer@201-2-134-72.pltce701.dsl.brasiltelecom.net.br] has
quit [Ping timeout: 240 seconds]
13:02 -!- alouca [~alouca@5ad92ce8.bb.sky.com] has joined #go-nuts
13:12 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
13:15 < alouca> is there any scripting language support for Go? (Like the
embedded javascript engine in Java)
13:16 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has quit [Ping timeout: 240
13:16 < exch> alouca: there have been a few attempts, but I'm not sure any
of them are really production worthy
13:17 < exch> check out the 'Virtual Machines and Languages' section here
13:17 -!- boscop [~boscop@g225209139.adsl.alicedsl.de] has joined #go-nuts
13:17 < exch> and the scripting section here
13:17 < alouca> Thanks!
13:19 < exch> It seems most have not been updated in quite a while.  Since
Go is changing rapidly, there's a good chance they won't even compile
13:19 < nsf> a very big chance
13:19 < nsf> or you don't say that way
13:19 < nsf> anyway, it's very likely that they won't compile :(
13:21 -!- dreisner [~noclaf@ool-18bba97a.dyn.optonline.net] has joined #go-nuts
13:21 -!- dreisner [~noclaf@ool-18bba97a.dyn.optonline.net] has left #go-nuts []
13:23 < exch> my GVM thins is working, but is neither efficient, nor very
practical :p Still, if you enjoy a bit of massochostic self-torture, you can give
it a try.
13:23 < alouca> well, we're evaluating to replace some java code
13:23 < exch> For an idea of just how crazy it is:
13:24 < alouca> internally we're really excited about go, but i think its
too early
13:24 < exch> alouca: you need a scripting language for that?
13:24 < alouca> exch: well, it supports some "tunable" behavior, and we do
that via Javascript ATM
13:24 < exch> ah
13:25 < alouca> we also need some dynamic code loading, which i guess it
isn't available as well
13:25 < exch> Perhaps someone could port V8 to Go at some point.  That would
certainly open up a few avenues
13:25 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has joined #go-nuts
13:25 < alouca> indeed
13:25 < exch> Go doesn't do dynamic linking (except for cgo when binding c
13:25 < KBme> you mean bindings to v8 right?
13:26 < KBme> i don't think anyone will port v8 to go
13:26 < alouca> bindings to V8 would be more sensible yes
13:26 < exch> bindings are a possibility, but a straight up port would be
nice to.  Although the speed is probably not doable in Go
13:26 < cde> doesn't Go have type inference ?
13:27 < KBme> not like haskell
13:27 < cde> by the way, haskell.org #lol
13:27 < exch> lol
13:27 < exch> domain expired?
13:27 < cde> yep
13:28 < KBme> huh?
13:28 < Namegduf> It has ascended to a purely functional state of being and
no longer has side effects detectable by our world.
13:28 < KBme> http://downforeveryoneorjustme.com/haskell.org
13:28 < KBme> hahah
13:28 < KBme> it's just you guys..
13:28 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined
13:28 < cde> Namegduf :)
13:28 < Namegduf> No, you're just using the tool wrong.
13:29 < Namegduf> That tool detects whether there is a server responding at
whatever the DNS resolves to
13:29 < Namegduf> Not whether it is the right server
13:29 < Namegduf> In this case, it's a holding page.
13:29 < KBme> i just checked haskell.org looks fine
13:29 < bawr> Well, haskell.org resolves *and* points to an atual haskell
page here.
13:29 < KBme> here too
13:29 < Namegduf> Not here, then.
13:29 < bawr> Then again, caching, DNS, yadda yadda.
13:29 < Namegduf> Maybe they fixed it and it hasn't propagated yet.
13:29 < KBme> ya
13:29 < TheSeeker> momentary snafu while updating DNS records?
13:30 < cde> probably
13:30 < Namegduf> Either that or it's just recently broken
13:30 < Namegduf> And *you're* the ones seeing the cached version
13:30 < KBme> or it was recently broken
13:30 < KBme> yep
13:30 < Namegduf> We'll see soon,.
13:30 < KBme> ☺
13:30 < Namegduf> Or not.
13:30 < KBme> 24 hours
13:30 < Namegduf> Yeah.
13:30 < KBme> and the moment of truth will be here
13:31 < bawr> Or we could just query the authoritative DNS server for
haskell.org, but I'm too lazy to figure out how to do that.  ;)
13:31 < nsf> who cares about haskell anyway?
13:32 < bawr> Hm, but in theory, would it be hard to add some type inference
to Go?
13:32 < Namegduf> I don't think it's desired, not sure if it's hard or not.
13:32 < nsf> Go has type inference
13:32 < KBme> kind of
13:32 < Namegduf> Go right now can infer the type of a variable being
declared from its initialisation, but anything else starts to get complicated to
follow and reason with
13:32 < nsf> in a sense that in certain cases it can infer types
13:32 < Namegduf> Which is the enemy of simplicity and thus Go
13:33 < bawr> Just wondering here, I don't think it would really fit.
13:33 < Namegduf> To sum up in a very poor way a lot of mailing list stuff
13:33 < nsf> other kinds of type inference mostly mean: the type of your
variable depends on what happens somewhere else in the code
13:33 < nsf> and I think it's just stupid kind of indirection
13:34 < KBme> anyone ever compiled ghc?
13:35 < bawr> Also, I care about Haskell.  In the same way that I would care
for a drooling half-uncle, I guess.  He's family, but I don't want that spittle on
me.  ;)
13:37 -!- tav [~tav@] has quit [Quit: tav]
13:37 -!- wrtp [~rog@] has quit [Ping timeout: 276 seconds]
13:41 * nsf can't wait to see few more patches for ldelf.c in the repo
13:42 < nsf> hopefully it will be possible to do what I'm trying to do
13:42 < bawr> Pray tell, what would that be?
13:42 < nsf> .bss sections support in the elf linker
13:43 -!- skejoe [~skejoe@] has joined #go-nuts
13:43 < nsf> I'm not sure, but something tells me that this is the problem
in my case
13:43 < nsf> I'm trying to link statically my tiny C lib to Go
13:43 -!- wrtp [~rog@] has joined #go-nuts
13:43 < nsf> because creating a 20kb .so makes me feel stupid
13:45 < bawr> What, you have some massive amounts of initially-seroed data?
13:45 < TheSeeker> Hmm, is there any way to make gomake more verbose?
13:45 < nsf> bawr: maybe
13:46 < Namegduf> Hmm, maybe this will improve my issues
13:46 < Namegduf> I have a project using go-sqlite, which uses cgo, and the
go-sqlite part *has* to make install
13:46 < Namegduf> The rest doesn't.
13:48 -!- alouca [~alouca@5ad92ce8.bb.sky.com] has quit [Quit: alouca]
13:49 < nsf> bawr: at least nm mylib.a shows some 'b' symbols..  and man nm
says it's BSS
13:49 < nsf> I don't know..  I know nothing about linking :(
13:51 -!- alkavan [~alkavan@IGLD-84-228-116-21.inter.net.il] has joined #go-nuts
13:53 < bawr> nsf: I only know just enough to blunder, but you did use nm to
show sizes of those symbols, right?
13:53 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 265
13:57 < nsf> bawr: I guess, yes
13:58 < nsf> or no
13:59 < nsf> with --print-size it definitely shows the size :)
14:00 < nsf> and I can't say I have really huge zeroed values
14:00 < nsf> but few zeroed vars, yeah
14:01 < nsf> https://github.com/nsf/termbox/blob/master/termbox.c
14:01 < nsf> mostly few static vars at the top of this file
14:01 < TheSeeker> Can anyone verify that banthar's Go-SDL still compiles
properly on linux with 2010-12-15.1 and I'm not just completely wasting my time?
14:01 < bawr> Well, I did a quickie test, and:
14:02 < nsf> TheSeeker: I've tried it
14:02 < nsf> it works
14:02 < nsf> but probably my Go-SDL is out-of-sync with banthar's repo
14:03 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
14:03 < nsf> but I've compiled few opengl demos after the new cgo appearance
14:03 < nsf> and they use Go-SDL as well
14:04 < TheSeeker> Sure, but if you already had Go-SDL built and installed,
it wouldn't need to be rebuilt, right?
14:04 < nsf> all.bash removes all 3rd party libs
14:05 < nsf> so..  no
14:05 < TheSeeker> oh :|
14:07 -!- fabled [~fabled@mail.fi.jw.org] has quit [Quit: Ex-Chat]
14:07 * TheSeeker tries ./all.bash with his new&improved msys setup ...
14:07 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts
14:07 < nsf> and well, I'm on linux
14:07 < nsf> and you're on windows apparently
14:08 < nsf> maybe that's the problem, it is possible
14:08 < TheSeeker> right, I was just wanting to make sure that it is
definately something on my end, and not soem universally broken issue.
14:08 -!- artefon [~thiago@] has quit [Quit: bye]
14:12 < TheSeeker> hrm, dies building lib9
14:15 < TheSeeker> http://dark-code.bulix.org/li4thx-79011
14:15 -!- unofficialmvp1 [~dev@94-62-164-227.b.ipv4ilink.net] has joined #go-nuts
14:15 -!- unofficialmvp1 [~dev@94-62-164-227.b.ipv4ilink.net] has left #go-nuts []
14:16 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Ping
timeout: 260 seconds]
14:16 -!- plediii [~plediii@nat-168-7-234-250.rice.edu] has quit [Ping timeout:
240 seconds]
14:17 -!- cw [~cw@parsec.stupidest.org] has quit [Ping timeout: 250 seconds]
14:22 -!- plediii [~plediii@nat-168-7-234-250.rice.edu] has joined #go-nuts
14:26 -!- cw [~cw@parsec.stupidest.org] has joined #go-nuts
14:28 -!- xveta [~name@] has joined #go-nuts
14:28 -!- niemeyer [~niemeyer@201-2-134-72.pltce701.dsl.brasiltelecom.net.br] has
joined #go-nuts
14:29 -!- xveta [~name@] has left #go-nuts []
14:37 -!- arun_ [~arun@unaffiliated/sindian] has quit [Ping timeout: 245 seconds]
14:37 -!- niemeyer [~niemeyer@201-2-134-72.pltce701.dsl.brasiltelecom.net.br] has
quit [Ping timeout: 240 seconds]
14:37 -!- wrtp [~rog@] has quit [Quit: wrtp]
14:42 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
14:43 -!- iant [~iant@] has joined #go-nuts
14:43 -!- mode/#go-nuts [+v iant] by ChanServ
14:50 -!- arun_ [~arun@unaffiliated/sindian] has joined #go-nuts
14:52 -!- plediii [~plediii@nat-168-7-234-250.rice.edu] has quit [Quit: plediii]
14:56 -!- shvntr [~shvntr@] has quit [Read error: Connection reset
by peer]
15:00 -!- shvntr [~shvntr@] has joined #go-nuts
15:00 -!- Fubag [~siehalt@p579F9CA8.dip.t-dialin.net] has joined #go-nuts
15:01 -!- Fubag [~siehalt@p579F9CA8.dip.t-dialin.net] has left #go-nuts []
15:04 -!- Fubag [~siehalt@p579F9CA8.dip.t-dialin.net] has joined #go-nuts
15:04 -!- Fubag [~siehalt@p579F9CA8.dip.t-dialin.net] has left #go-nuts []
15:04 -!- sauerbraten [~sauerbrat@p508CF913.dip.t-dialin.net] has joined #go-nuts
15:07 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts
15:08 -!- artefon [~thiago@dhcp16.usuarios.dcc.ufmg.br] has joined #go-nuts
15:21 -!- kanru [~kanru@61-228-154-25.dynamic.hinet.net] has joined #go-nuts
15:22 -!- emjayess [~emjayess@pix1.i29.net] has joined #go-nuts
15:22 -!- femtoo [~femto@95-89-196-48-dynip.superkabel.de] has joined #go-nuts
15:38 -!- alkavan [~alkavan@IGLD-84-228-116-21.inter.net.il] has quit [Ping
timeout: 240 seconds]
15:39 -!- alkavan [~alkavan@] has joined #go-nuts
15:45 -!- DerHorst [~Horst@e176101253.adsl.alicedsl.de] has quit [Remote host
closed the connection]
15:47 -!- niemeyer [~niemeyer@201-2-134-72.pltce701.dsl.brasiltelecom.net.br] has
joined #go-nuts
16:00 -!- prip [~foo@host122-132-dynamic.35-79-r.retail.telecomitalia.it] has quit
[Read error: Operation timed out]
16:02 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-162-137.clienti.tiscali.it] has
quit [Read error: Connection reset by peer]
16:03 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-162-137.clienti.tiscali.it] has
joined #go-nuts
16:07 -!- iant [~iant@] has quit [Quit: Leaving.]
16:16 -!- prip [~foo@host118-121-dynamic.47-79-r.retail.telecomitalia.it] has
joined #go-nuts
16:20 -!- iant [~iant@nat/google/x-wtimtkycttmzdhcj] has joined #go-nuts
16:20 -!- mode/#go-nuts [+v iant] by ChanServ
16:24 -!- Project-2501 [~Marvin@] has joined #go-nuts
16:25 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has quit [Quit: Leaving.]
16:28 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-162-137.clienti.tiscali.it] has
quit [Ping timeout: 265 seconds]
16:33 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has joined #go-nuts
16:33 -!- unofficialmvp [~dev@94-62-164-227.b.ipv4ilink.net] has left #go-nuts []
16:39 -!- napsy [~luka@] has quit [Quit: Lost terminal]
16:39 -!- Netsplit *.net <-> *.split quits: drd, siyb, tdnrad, Maxdamantus,
jesusaurus, apexo, taruti, kimelto, GilJ_, aconran, (+7 more, use /NETSPLIT to
show all of them)
16:41 -!- Netsplit over, joins: tvw, sacho, falconindy, tdnrad, creack, apexo,
taruti, GilJ_, Maxdamantus, aconran (+7 more)
16:44 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
16:51 -!- krutcha1 [~krutcha@S010600045a27676a.vs.shawcable.net] has quit [Quit:
17:04 -!- kanru [~kanru@61-228-154-25.dynamic.hinet.net] has quit [Read error:
Operation timed out]
17:11 < taruti> iant: is it possible to disable split stacks with gccgo?
17:13 -!- LeNsTR [~lenstr@unaffiliated/lenstr] has joined #go-nuts
17:15 -!- femtoo [~femto@95-89-196-48-dynip.superkabel.de] has quit [Read error:
Connection reset by peer]
17:25 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has joined
17:25 -!- shvntr [~shvntr@] has quit [Quit: leaving]
17:28 -!- Fish- [~Fish@9fans.fr] has joined #go-nuts
17:44 -!- gnuvince [~vince@] has quit [Quit: laterz]
18:05 -!- keithcascio [~keithcasc@nat/google/x-phicvebpxoxsqyaq] has joined
18:05 -!- tsykoduk [~tsykoduk@2002:ae1f:c305:0:20d:93ff:fe77:1dc4] has quit [Ping
timeout: 272 seconds]
18:09 -!- Urtie [~kim@90-227-159-22-no57.tbcn.telia.com] has joined #go-nuts
18:11 < Urtie> How do I go about converting a struct to a byte-slice?  Or
more specifically, how do I write the contents of a struct over a TCPConn in it's
binary form?  I can't use the gob-package, because it has to be in raw form on the
receiving side.
18:13 -!- foocraft [~dsc@] has quit [Ping timeout: 276 seconds]
18:16 -!- tsykoduk [~tsykoduk@2002:ae18:d9f9:0:20d:93ff:fe77:1dc4] has joined
18:16 -!- ios_ [~ios@] has quit [Read error: Connection reset by
18:19 < yiyus> Urtie: pkg/encoding/binary
18:19 -!- tsykoduk [~tsykoduk@2002:ae18:d9f9:0:20d:93ff:fe77:1dc4] has quit [Read
error: Operation timed out]
18:19 < exch> Urtie: if you really need an exact byte copy of the data, you
can use the unsafe package do do some trickery.  Although I'm not sure if that is
a safe way to go about things.  Endian problems for one.  And there is a
possibility that the data representation in the runtime on the receiving end is
different from the sending end
18:20 < Namegduf> Figure out exactly what the format it is expecting is
18:20 < Namegduf> Including endianness
18:21 < Namegduf> Make a byte slice of the right size
18:21 < Namegduf> And put values in the right place in it.
18:25 < Urtie> yiyus / Namegduf: The struct already has the correct types,
so if it's converted to something that can be stuck inside a C-struct it's all
good.  Does the encoding/binary package handle that, or do I need to write a
method for the struct that creates, populates and returns a byte slice?
18:26 -!- niemeyer [~niemeyer@201-2-134-72.pltce701.dsl.brasiltelecom.net.br] has
quit [Ping timeout: 240 seconds]
18:26 < Namegduf> Urtie: You assume that you have the same endianness and
the same padding.
18:26 < Namegduf> You can't rely on that.
18:27 -!- emjayess [~emjayess@pix1.i29.net] has quit [Read error: Connection reset
by peer]
18:27 -!- emjayess_ [~emjayess@pix1.i29.net] has joined #go-nuts
18:28 < Urtie> Namegduf: So TCPConn.Write doesn't convert the byte slice to
network order before sending it out on the wire?
18:29 < Namegduf> Bytes don't have a "network order".
18:29 < Namegduf> Larger structures do.
18:29 < Namegduf> So no.
18:29 < Namegduf> Endianness is not applicable to sequences of bytes.
18:30 < Urtie> So I guess it's a combination then, use encoding/binary to
convert to correct endianess, and a method on the struct to create a byte slice?
18:30 < Namegduf> Byte slices do not have endianness.
18:31 < Urtie> Is there some convention here that I am missing, where I
should write a method on the struct for this that will satisfy some interface that
TCPConn.Write will accept?  I am very green on this :/
18:31 < Namegduf> They are a sequence of bytes.
18:31 < Namegduf> What you're trying to do is a lot more complicated than
you think.
18:31 < Urtie> Yes, I understand that, so I need to convert to correct
endianess before building the byte slice, I think I understand that part
18:31 < Namegduf> A structure in memory's binary representation isn't
consistent between platforms.
18:31 < Namegduf> Types have different sizes, and potentially arbitrary
padding, and different endianness.
18:32 < Namegduf> One way to make it work is to have your method that
generates a byte slice handle all of these.  A fixed number of bytes for each
field in fixed positions.
18:32 < skelterjohn> you need to define (or use) an additional protocol
other than just getting a []byte from a struct and getting a struct from a []byte
18:32 < Namegduf> You will need to find out what format the thing you're
sending to expects it in.
18:32 -!- tsykoduk [~tsykoduk@2002:ae1f:cf51:0:20d:93ff:fe77:1dc4] has joined
18:33 < skelterjohn> for instance, read/write all the fields in order,
18:33 < Urtie> I know the format, or the protocol rather.  I have an old
daemon I write in C a long time ago, I am just playing with Go to speak to it.
18:34 < skelterjohn> does your C daemon just unpack the stream directly into
a struct?  because that will only work in some cases
18:34 < skelterjohn> granted, probably most "relevant" cases, but it's not
18:35 < skelterjohn> i say most "relevant" cases because i'm betting you're
using the same C compiler on the same machine to create both the sender and
18:35 -!- plediii [~plediii@nat-168-7-234-250.rice.edu] has joined #go-nuts
18:35 < skelterjohn> but i'm making a lot of assumptions without waiting for
18:35 < Urtie> Yes, it does.  It's a very simple/silly protocol with a
32-byte session_id, a 32-bit signed int for an opcode, a 64-bit unsigned int for a
length and then a stream of binary data.
18:36 < Urtie> Well, I like the idea of not making those assumptions, for
the sake of learning
18:36 < skelterjohn> right - but you cannot specify what kind of packing the
compiler decided to use
18:36 < Urtie> Right
18:37 < skelterjohn> so your best bet is probably to read/write each of the
fields by themselves, in order, with an endianness that you decide upon
18:38 -!- tsykoduk [~tsykoduk@2002:ae1f:cf51:0:20d:93ff:fe77:1dc4] has quit [Ping
timeout: 260 seconds]
18:38 < Urtie> Ok, so for the sake of just handling this one step at a time,
so my brain won't explode, if I am trying to satisfy a protocol-spec and can
assume it's handled correctly at the other end, what is the best/most correct way
to turn my struct into something TCPConn.Write will accept?  A method on the
struct that converts the data into a byte slice where I took care of the endianess
on each field?
18:38 < Namegduf> Yes.
18:38 -!- artefon [~thiago@dhcp16.usuarios.dcc.ufmg.br] has quit [Quit: bye]
18:38 < Namegduf> Although that requires copying the data
18:39 < Namegduf> It's probably simpler to have a method that takes an
18:39 < skelterjohn> typical thing to do would be...  right, what Namegduf
just said
18:39 < Namegduf> And just has the struct write the "byte slice" as it
generates it
18:39 < Namegduf> i.e.  for each field, use encoding/binary to write
18:40 < Urtie> Great, now it's starting to make sense to me conceptionally
:).  Is there an example of using io.Writer that's somewhat applicable that what I
am doing?  The syntax of all this is very new to me.
18:41 < Namegduf> func (m *MyStruct) WriteSelf(w io.Writer) {
w.Write("Blah!") }
18:41 < Namegduf> That won't actually work, as "Blah!" is a string and it
wants a []byte
18:41 < Namegduf> But put in whatever writes you need.
18:42 < Namegduf> Using encoding/binary, it'd be binary.Write(w, bigEndian,
18:42 < skelterjohn> you can use
18:42 < Namegduf> As binary.Write wants a Writer, yeah.
18:43 < Urtie> Awesome.  Big thanks, guys :)
18:43 < skelterjohn> binary.Write(w, binary.BigEndian,
18:43 < Namegduf> Ah, yah.
18:43 < Namegduf> *yeah.
18:43 < skelterjohn> i should really read what people write before i hit
18:43 < skelterjohn> to avoid duplication
18:43 < Namegduf> It'd need to be binary.BigEndian or binary.LittleEndian,
whichever you use.
18:44 -!- Project-2501 [~Marvin@] has quit [Quit: E se abbasso questa
leva che succ...]
18:54 -!- anticw [~anticw@c-67-169-68-180.hsd1.ca.comcast.net] has quit [Read
error: Connection reset by peer]
18:54 -!- anticw [~anticw@c-67-169-68-180.hsd1.ca.comcast.net] has joined #go-nuts
18:55 -!- virtualsue [~chatzilla@nat/cisco/x-amhadzwogopurjic] has quit [Ping
timeout: 240 seconds]
18:58 < Urtie> So now it's getting interesting :).  Getting "*StructX does
not implement io.Writer (missing Write method)".  So I do need a Write-method on
the struct?  What does that need to contain?
18:58 < skelterjohn> look at io.Writer
18:58 < Namegduf> No.
18:58 < skelterjohn> in the doc
18:58 < Namegduf> Your struct shouldn't be a Writer
18:58 < Namegduf> And you shouldn't be passing it to something expecting one
18:59 < Namegduf> A Writer is something you write *to*
19:03 -!- Tv [~tv@cpe-76-168-227-45.socal.res.rr.com] has joined #go-nuts
19:03 -!- Tv [~tv@cpe-76-168-227-45.socal.res.rr.com] has quit [Remote host closed
the connection]
19:04 -!- tsykoduk [~tsykoduk@174-24-213-58.tukw.qwest.net] has joined #go-nuts
19:06 -!- tvw [~tv@] has quit [Remote host closed the connection]
19:06 -!- alkavan [~alkavan@] has quit [Read error: Connection reset
by peer]
19:06 -!- alkavan [~alkavan@] has joined #go-nuts
19:10 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Quit: skelterjohn]
19:10 -!- tsykoduk [~tsykoduk@174-24-213-58.tukw.qwest.net] has quit [Ping
timeout: 265 seconds]
19:16 -!- Venom_X [~pjacobs@] has joined #go-nuts
19:20 -!- artefon [~thiago@] has joined #go-nuts
19:22 -!- ildorn [~ildorn@p5B2FDFF9.dip.t-dialin.net] has joined #go-nuts
19:26 -!- ildorn [~ildorn@p5B2FDFF9.dip.t-dialin.net] has quit [Client Quit]
19:33 -!- tsykoduk [~tsykoduk@2002:ae1f:c36f:0:20d:93ff:fe77:1dc4] has joined
19:34 -!- eikenberry [~jae@ivanova.zhar.net] has joined #go-nuts
19:47 -!- Tv [~tv@cpe-76-168-227-45.socal.res.rr.com] has joined #go-nuts
19:47 -!- virtualsue [~chatzilla@93-97-62-8.zone5.bethere.co.uk] has joined
19:59 -!- tsykoduk [~tsykoduk@2002:ae1f:c36f:0:20d:93ff:fe77:1dc4] has quit [Quit:
This is Free Trader Beowulf, calling anyone...  Mayday, Mayday...]
20:10 -!- foocraft [~dsc@] has joined #go-nuts
20:11 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
20:16 -!- tsykoduk [~tsykoduk@2002:ae15:fe63:0:20d:93ff:fe77:1dc4] has joined
20:20 -!- skejoe [~skejoe@] has quit [Quit: Lost terminal]
20:21 -!- tsykoduk [~tsykoduk@2002:ae15:fe63:0:20d:93ff:fe77:1dc4] has quit [Ping
timeout: 260 seconds]
20:29 -!- napsy [~luka@] has joined #go-nuts
20:42 -!- niemeyer [~niemeyer@201-2-134-72.pltce701.dsl.brasiltelecom.net.br] has
joined #go-nuts
20:44 -!- artefon [~thiago@] has quit [Read error: Connection reset
by peer]
20:46 -!- artefon [~thiago@] has joined #go-nuts
20:47 -!- Venom_X [~pjacobs@] has quit [Quit: Venom_X]
20:50 -!- tsykoduk [~tsykoduk@2002:ae15:fbb6:0:20d:93ff:fe77:1dc4] has joined
20:55 < cdsgf> easy way to do case-insensitive string comparison?  don't see
any methods in pkg strings or utf8
20:57 < nsf> http://nsf.github.com/go/strings.html?f:ToLower!
20:58 < nsf> string.ToLower both strings and then compare as usual
20:58 < nsf> works perfectly for short strings
20:58 < uriel> and long ones
20:59 < nsf> for long ones there is a space issue in theory, so you may want
to lower each letter individually and compare
20:59 < nsf> 2N space requirement for an algorithm isn't always a good idea
21:00 -!- artefon [~thiago@] has quit [Quit: bye]
21:00 < nsf> damn, latest tip build is broken :(
21:00 < nsf> http://godashboard.appspot.com/
21:01 * nsf is super impatient
21:05 -!- tsykoduk [~tsykoduk@2002:ae15:fbb6:0:20d:93ff:fe77:1dc4] has quit [Quit:
This is Free Trader Beowulf, calling anyone...  Mayday, Mayday...]
21:12 -!- tsykoduk [~tsykoduk@2002:ae18:c6e0:0:20d:93ff:fe77:1dc4] has joined
21:15 -!- tensorpudding [~user@] has joined #go-nuts
21:18 -!- tsykoduk [~tsykoduk@2002:ae18:c6e0:0:20d:93ff:fe77:1dc4] has quit [Ping
timeout: 272 seconds]
21:19 < uriel> I wonder what would it take to have a full-rebuild+test-run
for every commit
21:19 < uriel> that way any change that breaks the build could be
21:20 -!- tsykoduk [~tsykoduk@2002:ae1f:dcb7:0:20d:93ff:fe77:1dc4] has joined
21:20 < nsf> it takes a lot of time
21:20 < KBme> mercurial does hooks, all you need to do is add an post-commit
hook i would guess
21:22 < nsf> and well, sometimes commits break builds intentionally
21:22 < uriel> KBme: I think that is how the current build dashboard works
21:22 < KBme> well, you can do it by push also, i think
21:22 < nsf> simply because some changes should be presented as nice
separate commits of different stuff
21:22 < nsf> yay!  they've fixed the build
21:23 < uriel> anyone remembers where is the main gccgo repo?
21:23 < uriel> and is there a changelog somewhere?
21:23 < nsf> you mean the frontend?
21:23 < nsf> because the official place for gccgo is gcc's svn now afaik
21:23 < KBme> you could do it by push
21:24 < KBme> a push usually would group those commits together
21:24 < taruti> uriel: svn://gcc.gnu.org/svn/gcc/branches/gccgo
21:24 < nsf> uriel: anyway, you should ask iant
21:25 <+iant> the main gccgo repository is gcc trunk at the moment
21:25 <+iant> there isn't a ChangeLog, just the revision history
21:25 < taruti> ah, so no using the gccgo branch anymore?
21:25 <+iant> not right at the moment
21:25 <+iant> I'll update the branch soon, I think
21:26 < taruti> are there any issues with using -fno-split-stack with gccgo?
(hunting some bugs that are probably unrelated)
21:27 -!- tsykoduk [~tsykoduk@2002:ae1f:dcb7:0:20d:93ff:fe77:1dc4] has quit
[Remote host closed the connection]
21:27 <+iant> now that I think about it, it might break the garbage
21:27 <+iant> which needs to find the stacks
21:27 <+iant> and currently uses the split stack support to do that
21:27 <+iant> it might work anyhow, I'm not sure
21:27 <+iant> of course you can get stack overflow
21:28 < taruti> ok
21:28 -!- rlab [~Miranda@] has quit [Quit: Miranda IM! Smaller,
Faster, Easier.  http://miranda-im.org]
21:28 < uriel> is this a good approximation of the gccgo changelog:
http://repo.or.cz/w/official-gcc.git/search?s=ian;st=author :0
21:28 < uriel> ;0
21:29 < uriel> er ;)
21:29 -!- rlab [~Miranda@] has joined #go-nuts
21:29 <+iant> I suppose so; there will be the occasional non-Go-related
patch there
21:31 -!- tsykoduk [~tsykoduk@2002:ae1f:d583:0:20d:93ff:fe77:1dc4] has joined
21:33 < uriel> :)
21:37 -!- leonod [leonod@c83-249-205-63.bredband.comhem.se] has joined #go-nuts
21:39 -!- tsykoduk [~tsykoduk@2002:ae1f:d583:0:20d:93ff:fe77:1dc4] has quit [Quit:
This is Free Trader Beowulf, calling anyone...  Mayday, Mayday...]
21:46 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
21:47 -!- alkavan [~alkavan@] has quit [Ping timeout: 255 seconds]
21:47 -!- tsykoduk [~tsykoduk@2002:ae15:e8f4:0:20d:93ff:fe77:1dc4] has joined
21:49 -!- alkavan [~alkavan@] has joined #go-nuts
21:51 < nsf> yay!
21:51 < nsf> I've linked termbox elf library directly to Go app
21:51 < nsf> I should thank Russ for bss support
21:52 -!- virtualsue [~chatzilla@93-97-62-8.zone5.bethere.co.uk] has quit [Ping
timeout: 276 seconds]
21:52 < nsf> although it works only with -fPIC only
21:54 < nsf> s/only//
22:02 -!- tvw [~tv@e176005010.adsl.alicedsl.de] has joined #go-nuts
22:08 -!- sauerbraten [~sauerbrat@p508CF913.dip.t-dialin.net] has quit [Remote
host closed the connection]
22:10 -!- plediii [~plediii@nat-168-7-234-250.rice.edu] has quit [Quit: plediii]
22:11 < nsf> new cgo rocks and elf support in linker rocks
22:13 < kimelto> how so?
22:14 < nsf> well, you can write simple gcc-based libs now in C
22:15 < nsf> and link them statically to Go apps
22:15 < nsf> yes, there is a cgo layer, but it works..
22:18 < nsf> mainly it makes life easier for apps distribution
22:18 < nsf> a lot easier
22:19 -!- virtualsue [~chatzilla@93-97-62-8.zone5.bethere.co.uk] has joined
22:20 < kimelto> do you have an example?
22:20 < nsf> of what?
22:20 < nsf> a library: https://github.com/nsf/termbox
22:21 < nsf> but it requires go compiler version older than the current
22:31 -!- tsykoduk [~tsykoduk@2002:ae15:e8f4:0:20d:93ff:fe77:1dc4] has quit [Ping
timeout: 272 seconds]
22:31 -!- LeNsTR [~lenstr@unaffiliated/lenstr] has quit [Quit: LeNsTR]
22:32 -!- Fish- [~Fish@9fans.fr] has quit [Quit: So Long, and Thanks for All the
22:33 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
22:34 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has quit [Quit: Morten.  Desu~]
22:36 -!- tsykoduk [~tsykoduk@2002:ae18:d035:0:20d:93ff:fe77:1dc4] has joined
22:59 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has quit [Read
error: Connection reset by peer]
22:59 -!- DarthShrine_ [~angus@pdpc/supporter/student/DarthShrine] has joined
23:07 -!- Archwyrm [~archwyrm@archwyrm.net] has quit [Ping timeout: 255 seconds]
23:19 < Namegduf> Hmm, the results of a public field with an unexported type
are interesting.
23:20 < Namegduf> Is there (significant) overhead in using a struct
containing a pointer over using a pointer?
23:20 -!- gnuvince [~vince@] has quit [Quit: reboot]
23:20 < Namegduf> (The reason for this setup is to provide methods operating
on a pointer to the struct, in effect a pointer to the pointer, permitting them to
change the pointer)
23:21 <+iant> Namegduf: there shouldn't be significant overhead, no
23:21 < Namegduf> Okay, neat.
23:21 -!- emjayess_ [~emjayess@pix1.i29.net] has quit [Quit: Leaving]
23:23 -!- nettok [~quassel@] has joined #go-nuts
23:30 -!- nettok [~quassel@] has quit [Ping timeout: 265 seconds]
23:34 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has quit [Ping
timeout: 255 seconds]
23:35 -!- rlab [~Miranda@] has quit [Quit: Miranda IM! Smaller,
Faster, Easier.  http://miranda-im.org]
23:36 -!- unhygienix [~unhygieni@host86-185-14-97.range86-185.btcentralplus.com]
has joined #go-nuts
23:40 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has quit [Ping
timeout: 260 seconds]
23:40 < TheSeeker> bah, failure making 8l: d:\godev/lib/libbio.a: could not
read symbols: Archive has no index; run ranlib to add one ...  I can do that, but
of course, ./all.bash will delete libbio.a :/ I guess I need to figure out where
to insert a call to ranlib in the build script, or figure out why it's not
creating with an index.
23:44 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
23:53 -!- nettok [~quassel@] has joined #go-nuts
23:53 <+iant> what OS?
23:53 <+iant> ranlib is normally not required
23:55 < nsf> uriel: I don't know how it works, but can I ask you to switch
sorting order of the irc logs links on the left bar on go-lang.cat-v.org?  because
each time I need latest logs I have to scroll to the bottom of the page
23:56 < nsf> it should be the other way around imho
23:57 < uriel> nsf: ah, good point
23:58 < uriel> nsf: try now
23:59 < uriel> nsf: btw, glad that you are happy with the new cgo, after you
were bitching about it the other day ;P
23:59 < nsf> well, you've changed it on the page, I meant the left bar :)
23:59 < nsf> uriel: yeah, me too
23:59 < nsf> but the page is good too
23:59 < nsf> :)
--- Log closed Sat Dec 18 00:00:01 2010