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

--- Log opened Tue Jan 25 00:00:05 2011
00:00 -!- devrim [~Adium@64.202.138.67] has joined #go-nuts
00:02 <@adg> uriel: no
00:03 < mpl> why is so?  not enough time to mentor a student?
00:03 <@adg> mpl: exactly
00:04 < mpl> I see.
00:04 < mpl> too bad for that potential student then :/
00:06 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Quit: Venom_X]
00:09 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 250 seconds]
00:12 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
00:15 -!- ronnyyy [~quassel@p4FF1C247.dip0.t-ipconnect.de] has joined #go-nuts
00:18 -!- ronnyy [~quassel@p4FF1C75F.dip0.t-ipconnect.de] has quit [Ping timeout:
240 seconds]
00:25 -!- tensorpudding [~user@99.23.127.179] has joined #go-nuts
00:25 -!- Scorchin [~Scorchin@host109-154-145-135.range109-154.btcentralplus.com]
has quit [Quit: Scorchin]
00:35 <@adg> yeah, it's unfortunate but mentoring is a significant time
investment and we are a small team
00:39 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 240 seconds]
00:42 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
00:45 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
00:51 -!- ronnyyy [~quassel@p4FF1C247.dip0.t-ipconnect.de] has quit [Remote host
closed the connection]
00:51 -!- Tuller [~tuller@c-69-143-52-174.hsd1.va.comcast.net] has joined #go-nuts
00:55 -!- vinisterx [~ryan@74-129-194-67.dhcp.insightbb.com] has quit [Read error:
Connection reset by peer]
00:56 -!- vinisterx [~ryan@74-129-194-67.dhcp.insightbb.com] has joined #go-nuts
01:05 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has quit [Quit:
leaving]
01:06 < uriel> adg: that is a real shame, wouldnt it be worth at least
asking if some people outside google might want to mentor?  rog for example has
mentored for Plan 9 in the past, and i'm sure there are a few others that would be
happy to mentor...
01:07 < uriel> GSoC is also a great way to both spread the word and get more
people involved in the project/language
01:09 -!- saturnfive [~saturnfiv@210.74.155.131] has joined #go-nuts
01:11 -!- allengeorge [~allengeor@70.26.100.141] has joined #go-nuts
01:11 -!- allengeorge [~allengeor@70.26.100.141] has quit [Client Quit]
01:12 -!- dccmx [~chatzilla@61.172.241.100] has joined #go-nuts
01:12 -!- devrim [~Adium@64.202.138.67] has quit [Quit: Leaving.]
01:14 -!- dccmx [~chatzilla@61.172.241.100] has quit [Client Quit]
01:22 -!- vzx [~ryan@74-129-194-67.dhcp.insightbb.com] has joined #go-nuts
01:24 -!- vinisterx [~ryan@74-129-194-67.dhcp.insightbb.com] has quit [Ping
timeout: 240 seconds]
01:40 -!- jumzi [~jumzi@c-89-233-234-125.cust.bredband2.com] has quit [Read error:
Operation timed out]
01:44 -!- binarypie [~binarypie@adsl-99-185-244-154.dsl.pltn13.sbcglobal.net] has
quit [Ping timeout: 255 seconds]
01:46 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 240 seconds]
01:49 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
01:59 -!- Skola [~ik@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has joined #go-nuts
02:11 -!- napsy [~luka@88.200.96.18] has quit [Quit: leaving]
02:24 -!- Skola [~ik@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has quit [Quit: Skola]
02:35 -!- niemeyer [~niemeyer@189.74.207.121] has quit [Ping timeout: 240 seconds]
02:39 -!- Skola [~ik@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has joined #go-nuts
02:41 -!- fabled [~fabled@mail.fi.jw.org] has quit [Ping timeout: 240 seconds]
02:41 -!- fabled [~fabled@mail.fi.jw.org] has joined #go-nuts
02:43 -!- Skola [~ik@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has quit [Read error:
Operation timed out]
02:43 -!- Skola [~ik@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has joined #go-nuts
02:45 -!- mosva [~mosva@unaffiliated/mosva] has joined #go-nuts
02:45 -!- cafesofie [~cafesofie@rnwifi-164-107-93-13.resnet.ohio-state.edu] has
joined #go-nuts
02:50 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has joined #go-nuts
02:53 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
02:54 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined
#go-nuts
03:06 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Ping timeout: 272 seconds]
03:08 -!- Tuller [~tuller@c-69-143-52-174.hsd1.va.comcast.net] has quit [Remote
host closed the connection]
03:10 -!- ymasory [~ymasory@c-76-99-55-224.hsd1.pa.comcast.net] has joined
#go-nuts
03:58 -!- keithcascio [~keithcasc@nat/google/x-takcsroemhzllyto] has quit [Quit:
Leaving]
04:01 < mosva>
http://www.integralwebsolutions.co.za/Blog/EntryId/440/Why-I-think-Googles-new-Programming-Language-Go-will-fail.aspx
04:01 < mosva> ^stupiest article every written
04:02 < mosva> "Google has not been in the programming language sector for
any length of time to gain credibility" wdf
04:02 < mosva> say that to Ken Thompson
04:02 < mosva> and others
04:18 < plexdev> http://is.gd/04WZRf by [Rob Pike] in
go/src/pkg/encoding/line/ -- encoding/line: fix up a few typos and infelicities in
the doc comments
04:18 < plexdev> http://is.gd/UwQftn by [Russ Cox] in go/src/pkg/net/ --
net: return cname in LookupHost
04:18 < plexdev> http://is.gd/MPtke2 by [Roger Peppe] in
go/src/pkg/template/ -- template: treat map keys as zero, not non-existent.
04:18 < plexdev> http://is.gd/4iPajS by [Russ Cox] in 2 subdirs of go/ --
codereview: handle file patterns better
04:18 < plexdev> http://is.gd/D4WRm8 by [Hector Chu] in go/lib/codereview/
-- codereview: fix windows
04:18 < plexdev> http://is.gd/tH4TBs by [Luuk van Dijk] in go/src/cmd/ld/ --
[68]l: more robust decoding of reflection type info in generating dwarf.
04:18 < plexdev> http://is.gd/wDoXWB by [Eric Eisner] in
go/src/pkg/index/suffixarray/ -- suffixarray: use binary search for both ends of
Lookup
04:19 < plexdev> http://is.gd/zir6l0 by [Robert Griesemer] in
go/src/pkg/scanner/ -- scanner: error handler must be provided to Init
04:19 < plexdev> http://is.gd/ltdvaf by [Gustavo Niemeyer] in 2 subdirs of
go/misc/vim/ -- misc: Import/Drop commands for Vim
04:20 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has quit [Ping
timeout: 260 seconds]
04:21 -!- pingveno [~pingveno@c-98-246-133-8.hsd1.or.comcast.net] has joined
#go-nuts
04:25 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 276 seconds]
04:33 -!- JusticeFries [~JusticeFr@c-24-9-171-36.hsd1.co.comcast.net] has joined
#go-nuts
04:33 -!- mikespook [~mikespook@116.21.154.227] has joined #go-nuts
04:38 -!- vinisterx [~ryan@74-129-194-67.dhcp.insightbb.com] has joined #go-nuts
04:41 -!- vzx [~ryan@74-129-194-67.dhcp.insightbb.com] has quit [Ping timeout: 240
seconds]
04:41 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has joined #go-nuts
04:44 -!- bmizerany [~bmizerany@204.14.152.118] has quit [Remote host closed the
connection]
04:46 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 265
seconds]
05:00 -!- dforsyth_ [~dforsyth@bastion.inap.yelpcorp.com] has quit [Quit: Computer
has gone to sleep.]
05:07 -!- rbraley [~rbraley@ip72-222-134-229.ph.ph.cox.net] has quit [Read error:
Operation timed out]
05:10 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has quit [Ping
timeout: 246 seconds]
05:12 -!- rbraley [~rbraley@ip72-222-134-229.ph.ph.cox.net] has joined #go-nuts
05:16 -!- itrekkie [~itrekkie@ip72-211-129-122.tc.ph.cox.net] has quit [Quit:
itrekkie]
05:21 -!- adu [~ajr@pool-72-83-254-159.washdc.fios.verizon.net] has joined
#go-nuts
05:29 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has joined
#go-nuts
05:32 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has quit [Read error:
Operation timed out]
05:35 -!- roo [~w7@freenode/staff/wikimedia.werdan7] has quit [Ping timeout: 624
seconds]
05:42 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has joined #go-nuts
05:45 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-156-164.clienti.tiscali.it] has
joined #go-nuts
05:55 <@adg> mosva: "Guido van Rossum has not been in the programming
language sector for any length of time to gain credibility"
05:55 <@adg> mosva: "Linus Torvalds has not been in the operating system
sector for any length of time to gain credibility"
05:56 < adu> WUT
05:56 -!- ExtraSpice [~XtraSpice@88.118.33.48] has joined #go-nuts
05:57 <@adg> mosva: bare in mind, the article is more than a year old and
written by a halfwit
05:59 < Namegduf> "coding in notepad"
06:00 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has joined
#go-nuts
06:03 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 240 seconds]
06:05 < homa_rano> I've determined that my gotest segfaulting on 386 is
caused by the float/complex removal
06:06 < homa_rano> since I don't see an issue on this, I don't really know
what I could be doing differently
06:06 < homa_rano> I've reproduced with a clean clone
06:06 -!- tensorpudding [~user@99.23.127.179] has quit [Remote host closed the
connection]
06:08 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
06:08 -!- JusticeFries [~JusticeFr@c-24-9-171-36.hsd1.co.comcast.net] has quit
[Quit: JusticeFries]
06:10 -!- illya77 [~illya77@115-9-112-92.pool.ukrtel.net] has joined #go-nuts
06:12 -!- illya77 [~illya77@115-9-112-92.pool.ukrtel.net] has quit [Client Quit]
06:12 -!- illya77 [~illya77@115-9-112-92.pool.ukrtel.net] has joined #go-nuts
06:13 <@adg> homa_rano: can you please file an issue with steps to reproduce
06:14 -!- dccmx [~chatzilla@61.172.241.100] has joined #go-nuts
06:16 < homa_rano> adg: can do
06:20 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 276 seconds]
06:22 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
06:23 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has quit [Ping
timeout: 265 seconds]
06:28 -!- ExtraSpice [~XtraSpice@88.118.33.48] has quit [Remote host closed the
connection]
06:31 -!- dju [dju@fsf/member/dju] has quit [Quit: Quitte]
06:32 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
06:34 -!- millergarym [~chatzilla@203-219-89-242.static.tpgi.com.au] has joined
#go-nuts
06:38 -!- dccmx [~chatzilla@61.172.241.100] has quit [Quit: ChatZilla 0.9.86
[Firefox 3.6.13/20101203075014]]
06:44 -!- dju [dju@at.dmz.me] has joined #go-nuts
06:44 -!- dju [dju@at.dmz.me] has quit [Changing host]
06:44 -!- dju [dju@fsf/member/dju] has joined #go-nuts
06:48 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has quit [Ping
timeout: 240 seconds]
06:50 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has joined
#go-nuts
06:59 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-169-34.clienti.tiscali.it] has
joined #go-nuts
07:02 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-156-164.clienti.tiscali.it] has
quit [Ping timeout: 250 seconds]
07:04 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:887a:9a19:92e8:b454] has joined
#go-nuts
07:06 < plexdev> http://is.gd/3u7QSQ by [Hector Chu] in 5 subdirs of
go/src/pkg/ -- runtime: make Walk webbrowser example work
07:09 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has quit [Ping
timeout: 240 seconds]
07:11 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has joined
#go-nuts
07:13 -!- cenuij [~cenuij@78.122.228.32] has joined #go-nuts
07:13 -!- cenuij [~cenuij@78.122.228.32] has quit [Changing host]
07:13 -!- cenuij [~cenuij@base/student/cenuij] has joined #go-nuts
07:14 -!- osct [~oscitate@CPE-124-187-120-137.lns1.woo.bigpond.net.au] has quit
[Quit: Leaving]
07:14 < mosva> adg: Have you written any articles explaining the working of
Go compiler?
07:20 -!- quantumelixir [~chillu@203.110.240.41] has joined #go-nuts
07:20 < quantumelixir> How do I compile the standard library (packages) for
a different architecutre/os combination?
07:22 < quantumelixir> oh, got it -- running ./all.bash with GOOS and GOARCH
set
07:28 < saturnfive> everytime i update go code, the compiled library will
lost
07:28 -!- wrtp [~rog@92.17.43.14] has joined #go-nuts
07:28 -!- chressie [~chressie@dreggn.in-ulm.de] has joined #go-nuts
07:30 -!- ymasory [~ymasory@c-76-99-55-224.hsd1.pa.comcast.net] has quit [Quit:
Leaving]
07:30 < saturnfive> have any idea?
07:36 <@adg> saturnfive: rebuild your libraries
07:38 < saturnfive> this is only way
07:38 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
07:39 -!- tensorpudding [~user@99.23.127.179] has joined #go-nuts
07:39 -!- tensorpudding [~user@99.23.127.179] has quit [Remote host closed the
connection]
07:39 -!- tensorpudding [~user@99.23.127.179] has joined #go-nuts
07:53 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has joined #go-nuts
07:59 -!- piranha [~piranha@5ED42E59.cm-7-5a.dynamic.ziggo.nl] has joined #go-nuts
07:59 <@adg> yes
08:02 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 265 seconds]
08:05 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
08:12 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 246 seconds]
08:19 < aiju> mosva: ends with .aspx, must be utter shit
08:19 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
08:20 -!- acetoline [~acetoline@122.58.180.208] has quit [Quit: Leaving]
08:20 < aiju> HAHAHA
08:21 < aiju> "No IDE"
08:21 < aiju> yes, and we're PROUD OF IT
08:21 -!- Kashia [~Kashia@port-92-200-30-31.dynamic.qsc.de] has quit [Quit: This
computer has gone to sleep]
08:21 < aiju> mosva: this article made my day
08:22 -!- cafesofie [~cafesofie@rnwifi-164-107-93-13.resnet.ohio-state.edu] has
quit [Remote host closed the connection]
08:24 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 255 seconds]
08:25 < wrtp> aiju: which article?
08:25 < aiju>
http://www.integralwebsolutions.co.za/Blog/EntryId/440/Why-I-think-Googles-new-Programming-Language-Go-will-fail.aspx
08:26 < aiju> tbqh i don't give a shit whether Go will be successful
08:26 < mosva> aiju, I thought Go is already successful
08:27 < aiju> mosva: successful as in ubiquitious and everybody uses it and
whatever
08:27 -!- ampleyfly [ampleyfly@gateway/shell/blinkenshell.org/x-slhxrfttdslunskg]
has quit [Ping timeout: 250 seconds]
08:28 -!- ampleyfly [ampleyfly@gateway/shell/blinkenshell.org/x-cngvhzwwpphejosk]
has joined #go-nuts
08:30 < wrtp> ah, old article.  i think i probably read it at the time.
thanks.
08:30 -!- davvid [~davvid@208-106-56-2.static.dsltransport.net] has joined
#go-nuts
08:31 < aiju> i didn't knew people were serious about RAD
08:31 < aiju> rapid abomination development
08:32 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
08:37 -!- boscop [~boscop@f055200066.adsl.alicedsl.de] has joined #go-nuts
08:42 -!- PortatoreSanoDiI [~Marvin@82.84.65.124] has joined #go-nuts
08:44 -!- skejoe [~skejoe@188.114.142.162] has joined #go-nuts
08:45 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-169-34.clienti.tiscali.it] has
quit [Ping timeout: 246 seconds]
08:49 -!- wrtp [~rog@92.17.43.14] has quit [Ping timeout: 264 seconds]
08:53 -!- mikespook [~mikespook@116.21.154.227] has quit [Quit: Leaving.]
08:53 -!- wrtp [~rog@92.17.43.14] has joined #go-nuts
08:56 < mosva> goclipse seems like a pretty good plugin
08:57 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has quit [Quit:
DarthShrine]
09:20 -!- nettok_ [~quassel@200.119.152.47] has quit [Remote host closed the
connection]
09:21 -!- niemeyer [~niemeyer@189.74.207.121] has joined #go-nuts
09:24 -!- gid [~gid@220.253-197-230.VIC.netspace.net.au] has joined #go-nuts
09:32 -!- virtualsue [~chatzilla@nat/cisco/x-vtulspmtzamnangn] has joined #go-nuts
09:50 -!- tux21b [~christoph@pyhost.srv.tux21b.org] has quit [Excess Flood]
09:50 -!- tux21b [~christoph@pyhost.srv.tux21b.org] has joined #go-nuts
09:57 -!- Natch| [~natch@c-2bcfe155.25-4-64736c10.cust.bredbandsbolaget.se] has
quit [Read error: Operation timed out]
10:10 -!- adu [~ajr@pool-72-83-254-159.washdc.fios.verizon.net] has quit [Quit:
adu]
10:14 -!- saturnfive [~saturnfiv@210.74.155.131] has quit [Read error: Connection
reset by peer]
10:17 < quantumelixir> aiju: Haha..  that article is so superficial in its
"evaluation" of Go..  his arguments are hopelessly inadequate
10:18 < quantumelixir> according to him, the only languages that will be
successful are the ones that already are..  LOL
10:19 < quantumelixir> "This new programming language is still too young."
10:19 < quantumelixir> "There are so much more mature languages available
for us to use.  With the likes of PHP, Perl, Python, Ruby on Rail, C#, VB, C++,
need I go on, why would we need another one..  These languages are established."
10:22 < fzzbt> this was funny: "No OOP [...] There is no inheritance, no sub
classing,.  Google can't even make up their own mind.  They say it is OOP and they
say it isn't.  Are we going backwards here?"
10:23 < quantumelixir> haha
10:23 < rm445> Yeah, that article is hilarious.
10:24 < rm445> The author's response to criticism in the comments is quite
interesting.  He comes across as a bit less of a dick, but it makes it apparent
that the article could really have been 'I think Go will fail...  because C# does
everything I could possibly want!'
10:24 < rm445> (not a quote, my impression)
10:25 < Namegduf> The author thinks not using an IDE developed by Google for
Go means he needs to develop in notepad.
10:25 < quantumelixir> rotfl!!
10:26 < Namegduf> They also seem unaware that non-graphical software exists.
10:26 < quantumelixir> He'd much rather use the notepad that comes along
with C# -- hey!  it allows for RAD!
10:27 -!- pancake [~pancake@229.113.21.95.dynamic.jazztel.es] has joined #go-nuts
10:27 < pancake> yo
10:27 < pancake> is there any pkg to call objc stuff from go?
10:28 -!- ExtraSpice [~XtraSpice@88.118.33.48] has joined #go-nuts
10:33 < skelterjohn> pancake: you will have to go through regular old C
first
10:33 < pancake> can I run objc from C?
10:34 < skelterjohn> presumably, though I can't give you an exact recipe
10:35 < pancake> ok, will look for it
10:35 < skelterjohn> you will probably have to use gccgo rather than 6g
10:35 < skelterjohn> and use gcc rather than 6c for the C compiler
10:36 < skelterjohn> because i doubt very much that 6c can compile objc
10:36 < pancake> btw, is somebody working on porting go to darwin-arm?
(iOS) else is any porting guide?
10:36 < pancake> and what about llvm-go?
10:37 < quantumelixir> yeah I was thinking about llvm too..  is there anyone
working on that?
10:37 < pancake> dunno
10:37 < wrtp> skelterjohn: i imagine you can use cgo
10:38 < skelterjohn> I think nsf was looking at llvm
10:38 < skelterjohn> but not sure
10:38 < wrtp> because that's designed to link with gcc-compiler stuff
10:38 < wrtp> s/compiler/compiled
10:38 -!- artefon [~thiago@189.59.130.103.dynamic.adsl.gvt.net.br] has joined
#go-nuts
10:38 < skelterjohn> is there a gcc objc compiler?
10:38 < skelterjohn> i figure probably yes, since gcc can compile pretty
much anything
10:39 < skelterjohn> but i don't believe apple uses it
10:40 < quantumelixir> how do I pull only the gccgo branch from the svn
repo?
10:40 < pancake> skelterjohn: yes, gcc-objc, but depends on gnustep
10:40 < pancake> for the core framework
10:41 < skelterjohn> then i think this can work
10:41 < quantumelixir> nevermind..  got it
10:48 < pancake> what about the darwin-arm porting?
10:51 -!- jackzh [~jackzh@58.47.159.223] has quit [Ping timeout: 255 seconds]
10:51 < temoto> Can we call Go from C yet?
10:51 -!- jackzh [~jackzh@58.47.159.223] has joined #go-nuts
11:01 < wrtp> the apple objc compiler is gcc AFAIK
11:01 < wrtp> yup: % cc --help
11:01 < wrtp> Usage: i686-apple-darwin9-gcc-4.0.1 [options] file...
11:02 -!- dju [dju@fsf/member/dju] has quit [Read error: Connection reset by peer]
11:02 < wrtp> temoto: yes.  but only if you get Go to call C first.
11:02 -!- dju [dju@fsf/member/dju] has joined #go-nuts
11:12 < uriel> hmmm...  how did I miss this:
http://code.google.com/p/go/source/browse/src/pkg/exp/wingui/
11:12 < uriel> temoto: yes
11:13 -!- decaf [~mehmet@85.110.244.230] has joined #go-nuts
11:14 < temoto> uriel, at first glance, that falls into category defined by
wrtp.
11:14 < temoto> What i want is to be able to compile some heavy CPU
computation in Go and call that from Python (possibly, through C extension).
11:15 < temoto> Which means there is no package main.
11:16 < temoto> Ultimately, i believe that Go should be the language to
write Python extensions in.
11:16 < wrtp> can you call python from C?
11:16 < temoto> Yes.
11:16 < temoto> cpython interpreter executable does it.
11:18 < wrtp> so, you can call C from Go; you can call python from C; you
can call C from python; and you can call Go from C (assuming you started in Go).
11:18 < wrtp> so it's just a matter of putting the jigsaw together :-)
11:18 < wrtp> good luck
11:19 < wrtp> of course, it's maybe a bit of a problem that you have to
start off in Go. but you could always fork cpython and call it gopython...
11:21 < temoto> Yes, it's a bit of problem.  :)
11:27 -!- artefon [~thiago@189.59.130.103.dynamic.adsl.gvt.net.br] has quit [Quit:
bye]
11:32 -!- napsy [~luka@88.200.96.18] has joined #go-nuts
11:33 -!- illya77 [~illya77@115-9-112-92.pool.ukrtel.net] has quit [Read error:
Connection reset by peer]
11:43 -!- shvntr [~shvntr@113.84.146.22] has joined #go-nuts
11:47 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
11:54 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 240 seconds]
11:55 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
12:00 -!- millergarym [~chatzilla@203-219-89-242.static.tpgi.com.au] has quit
[Read error: Connection reset by peer]
12:01 -!- millergarym [~chatzilla@203-219-89-242.static.tpgi.com.au] has joined
#go-nuts
12:04 < quantumelixir> wrtp: have you tried compiling gccgo?
12:04 -!- xash [~xash@d073042.adsl.hansenet.de] has joined #go-nuts
12:10 -!- idr [~idr@g225067069.adsl.alicedsl.de] has joined #go-nuts
12:11 < wrtp> quantumelixir: once, ages ago
12:11 < wrtp> i gave up
12:11 < quantumelixir> Is there a way to get only the gccgo branch?
12:11 < quantumelixir> s/get/checkout/
12:12 -!- skejoe [~skejoe@188.114.142.162] has quit [Quit: Lost terminal]
12:12 < temoto> quantumelixir, just usual checkout will do what you want.
12:12 < quantumelixir> when I issue the svn co svn://repo/../ command it
seems to download the whole gcc distribution
12:12 < temoto> quantumelixir, i mean svn co repo-url/branches/gccgo
12:12 < quantumelixir> although I did specify the branchname as gccgo
12:12 < quantumelixir> temoto: yeah that
12:13 -!- idr [~idr@g225067069.adsl.alicedsl.de] has quit [Remote host closed the
connection]
12:13 < quantumelixir> it's huge!
12:13 < temoto> It means that there is whole gcc distribution in that branch
and you require it.
12:13 < quantumelixir> oh ok then
12:13 < quantumelixir> temoto: how long did it take to build?
12:13 < quantumelixir> and was it painful (configuration etc..)
12:14 < temoto> quantumelixir, last time i built gcc was 3 years ago in
gentoo.  Everything builds nicely in gentoo.  if it builds at all
12:14 < quantumelixir> hehe
12:17 -!- pancake [~pancake@229.113.21.95.dynamic.jazztel.es] has quit [Quit: Lost
terminal]
12:17 -!- saturnfive [~saturnfiv@117.36.3.26] has joined #go-nuts
12:18 < temoto> quantumelixir, what's your distro?
12:22 -!- illya77 [~illya77@236-236-133-95.pool.ukrtel.net] has joined #go-nuts
12:34 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 272 seconds]
12:35 < uriel> temoto: I think somebody was working on a project to allow
writting python extensions in Go
12:35 < uriel> temoto: see https://bitbucket.org/binet/go-python/
12:36 < temoto> uriel, thanks.
12:37 < temoto> I forgot that one may write such go-python executable which
would mimic behaviour of default interpreter and use that instead.
12:37 < temoto> This removes that last bit of problem.  :)
12:41 < uriel> it is a bit of a hack, but should work, and I expect that
eventually the whole thing will be solved to not need such hacks
12:43 < temoto> Sure, like Python has Py_Initialize which you must call from
C to spin-up things and then just use CPython API.
12:44 < uriel> it might already be possible if you use gccgo, but I really
have no idea...
12:46 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
12:57 -!- artefon [~thiago@189.59.130.103.dynamic.adsl.gvt.net.br] has joined
#go-nuts
13:12 -!- vinisterx [~ryan@74-129-194-67.dhcp.insightbb.com] has quit [Read error:
Connection reset by peer]
13:13 -!- vinisterx [~ryan@74-129-194-67.dhcp.insightbb.com] has joined #go-nuts
13:14 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
13:19 < quantumelixir> temoto: Sorry, I just came back.  I'm on a mac (10.6)
13:19 -!- illya77 [~illya77@236-236-133-95.pool.ukrtel.net] has quit [Read error:
Connection reset by peer]
13:21 < quantumelixir> temoto: Just checked out the latest revision, and
about to build.  Anything I should do specifically for an x86_64 architecture?
13:24 < temoto> quantumelixir, i think there should be a building guide or
something.
13:26 < quantumelixir> temoto: of course, I'm following the instructions,
but I just thought I'd ask for anything that might not be specified there since
I'm going to start the build now...
13:33 < temoto> quantumelixir, well have yourself a business for next hours.
:) Or do they specify it now?
13:35 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 246 seconds]
13:41 -!- DerHorst [~Horst@e176114215.adsl.alicedsl.de] has joined #go-nuts
13:46 < quantumelixir> temoto: I'm actually building it on a debian system;
not on mine :D
13:46 < quantumelixir> just found out that the host does not have either of
GMP or MPFR..  looks like I will be occupied for a while then :D
13:47 -!- plainhao [~plainhao@208.75.85.237] has joined #go-nuts
13:50 -!- saturnfive [~saturnfiv@117.36.3.26] has left #go-nuts []
13:52 < uriel> interesting: http://codereview.appspot.com/3975046/
14:02 -!- Boney [~paul@124.168.123.191] has quit [Ping timeout: 276 seconds]
14:06 -!- jumzi [~jumzi@c-89-233-234-125.cust.bredband2.com] has joined #go-nuts
14:07 -!- MX80 [~MX80@cust141.253.117.74.dsl.g3telecom.net] has quit [Ping
timeout: 255 seconds]
14:10 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
14:20 -!- decaf [~mehmet@85.110.244.230] has quit [Quit: Leaving.]
14:20 -!- MX80 [~MX80@cust141.253.117.74.dsl.g3telecom.net] has joined #go-nuts
14:23 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has quit
[Ping timeout: 240 seconds]
14:23 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has joined
#go-nuts
14:23 -!- cbeck [cbeck@gateway/shell/pdx.edu/x-obwxomttxriyocua] has quit [Read
error: Connection reset by peer]
14:23 -!- cbeck [cbeck@gateway/shell/pdx.edu/x-aexcusyaybtvbxbv] has joined
#go-nuts
14:26 -!- nsf [~nsf@jiss.convex.ru] has quit [Ping timeout: 240 seconds]
14:28 -!- henning_ [~henning@225.81-167-98.customer.lyse.net] has quit [Quit:
henning_]
14:29 -!- cafesofie [~cafesofie@dhcp-140-254-202-22.osuwireless.ohio-state.edu]
has joined #go-nuts
14:30 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
14:31 -!- iant [~iant@216.239.45.130] has quit [Ping timeout: 260 seconds]
14:36 < wrtp> someone yesterday was wondering about character set conversion
in Go.
14:36 < wrtp> i just did a quick port of inferno's convcs module to Go.
14:36 < wrtp> http://code.google.com/p/go-charset/
14:36 < aiju> we need a Go FAQ for that kind of thing
14:36 < wrtp> in case anyone finds it useful
14:41 < KBme> aiju: golang.cat-v.org is fine
14:43 -!- iant [~iant@67.218.105.75] has joined #go-nuts
14:43 -!- mode/#go-nuts [+v iant] by ChanServ
14:43 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
14:45 -!- DerHorst [~Horst@e176114215.adsl.alicedsl.de] has quit [Read error:
Connection reset by peer]
14:46 -!- DerHorst [~Horst@e176124052.adsl.alicedsl.de] has joined #go-nuts
14:46 -!- tav [~tav@92.7.116.65] has quit [Quit: tav]
14:47 -!- napsy_ [~luka@88.200.96.18] has joined #go-nuts
14:47 -!- nsf [~nsf@jiss.convex.ru] has quit [Ping timeout: 250 seconds]
14:49 -!- napsy [~luka@88.200.96.18] has quit [Quit: Lost terminal]
14:49 -!- napsy_ [~luka@88.200.96.18] has quit [Read error: Connection reset by
peer]
14:50 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
14:51 -!- MX80 [~MX80@cust141.253.117.74.dsl.g3telecom.net] has quit [Ping
timeout: 240 seconds]
14:51 -!- virtualsue [~chatzilla@nat/cisco/x-vtulspmtzamnangn] has quit [Ping
timeout: 246 seconds]
14:54 -!- MX80 [~MX80@cust141.253.117.74.dsl.g3telecom.net] has joined #go-nuts
14:55 -!- virtualsue [~chatzilla@nat/cisco/x-dkqjxpmcfcvhylug] has joined #go-nuts
14:55 -!- jyxent [~jyxent@129.128.191.96] has quit [Ping timeout: 260 seconds]
14:56 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
14:56 -!- nsf [~nsf@jiss.convex.ru] has quit [Ping timeout: 255 seconds]
15:10 -!- XenoPhoenix [~Xeno@cpc5-aztw24-2-0-cust39.aztw.cable.virginmedia.com]
has quit [Ping timeout: 272 seconds]
15:23 < exch> wrtp: by 'port' I assume it's pure Go code then?  I'm using an
iconv wrapper in my xmlx package atm.  It would be nice to get rid of that
libiconv dependency
15:25 < wrtp> exch: 'port'?  anyway, yes, it's pure go code.
15:25 <@adg> not go related, but this is amazing
http://www.secretgeometry.com/apps/cathode/
15:25 < Namegduf> Aw.
15:25 < aiju> adg: haha
15:25 < Namegduf> OS X only.  I was hoping I could try it.
15:25 <@adg> a shame
15:25 <@adg> but it is _very_ well done
15:25 <@adg> i feel like kid again
15:26 < Namegduf> It looks nice.
15:26 < aiju> perfect for running http://aiju.phicode.de/pdp11/
15:26 < aiju> ◔ ◡ ◔
15:27 -!- emjayess [~emjayess@pix1.i29.net] has joined #go-nuts
15:28 < wrtp> adg: damn it requires snow leopard
15:29 <@adg> wrtp: :(
15:29 < xash> aiju: That's amazing
15:30 < quantumelixir> I'm trying to build gccgo (from the svn co) and
during the build I keep getting this error:
/home/chillu/gcc/host-x86_64-unknown-linux-gnu/gcc/../.././gcc/gengtype.c:843:
undefined reference to `lexer_line'
15:30 < wrtp> i should probably bite the bullet and actually pay for some
s/w for the 3rd time in my life :-)
15:30 < aiju> xash: heh thanks
15:30 <@adg> fhttp://wh3rd.net/dump/term.png
15:30 < quantumelixir> Which library supplies lexer_line?
15:30 < aiju> fhttp?  sounds like something for gofy
15:30 < aiju> "fuck http"
15:31 < quantumelixir> adg: Wow!  it's seriously pretty!  :)
15:31 < quantumelixir> the startup animation is fairly realistic
15:31 < aiju> i should try to get a mechanical tty or similar on ebay
15:34 <@adg> :)
15:35 -!- femtoo [~femto@95-89-198-16-dynip.superkabel.de] has joined #go-nuts
15:35 <@adg> i used to ahve a really nice physical vt100 terminal
15:35 <@adg> green on black
15:35 -!- napsy [~luka@88.200.96.18] has joined #go-nuts
15:35 <@adg> i wish i hadn't sold it
15:36 <@adg> they're hard to find now
15:36 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts
15:37 < quantumelixir> any ideas on the error?
15:38 < skelterjohn> what's the error?
15:38 -!- mattn_jp [~mattn@112-68-50-105f1.hyg1.eonet.ne.jp] has joined #go-nuts
15:38 <@adg> quantumelixir: do you have yacc installed?
15:38 <@adg> i have to go to bed (2.40am here), goo dluck
15:38 < quantumelixir> adg: not the latest no..
15:38 < quantumelixir> ok, I installed bison and flex
15:38 < quantumelixir> skelterjohn: I'm trying to build gccgo (from the svn
co) and during the build I keep getting this error:
15:38 < quantumelixir>
/home/chillu/gcc/host-x86_64-unknown-linux-gnu/gcc/../.././gcc/gengtype.c:843:
undefined reference to `lexer_line'
15:39 < skelterjohn> oh - ok out of my depth, sorry
15:39 < quantumelixir> adg: I'll try installing yacc and add the lib/ to LD
PATH
15:42 -!- Venom_X [~pjacobs@75.92.43.21] has joined #go-nuts
15:43 < quantumelixir> http://pastebin.mozilla.org/982480 (tail of the error
log)
15:59 -!- quantumelixir [~chillu@203.110.240.41] has quit [Quit: leaving]
16:05 -!- temoto [~temoto@81.19.91.9] has quit [Remote host closed the connection]
16:09 -!- iant [~iant@67.218.105.75] has quit [Quit: Leaving.]
16:09 -!- im2ee [im2ee@gateway/shell/bshellz.net/x-uilxxopgogoyiaka] has joined
#go-nuts
16:13 < xash> How could I cast a Go []String into a C *char?  (for argv)
16:13 < skelterjohn> is this for interfacing with C code?
16:13 < xash> Yes
16:13 < skelterjohn> there is a utility function that will convert between C
strings and go strings
16:13 < skelterjohn> i don't know what it's called, though
16:14 < skelterjohn> but i don't htink it can be cast directly
16:14 < skelterjohn> go strings aren't null terminated
16:14 < skelterjohn> so you'll need to make a new char**
16:14 < Namegduf> You can't cast directly
16:15 < xash> Urgh, yes, ofc I can't "cast" ..  a function is what I need,
sorry :-)
16:15 < Namegduf> A []string and a *char have different layout
16:15 < mattn_jp> (
16:15 < mattn_jp> ([]byte)(str)
16:15 < skelterjohn> that []byte still isn't null terminated
16:15 -!- tvw [~tv@212.79.9.150] has joined #go-nuts
16:16 -!- clip9 [clip9@er.en.svarteper.com] has quit [Ping timeout: 260 seconds]
16:16 -!- rm445 [rm445@pip.srcf.societies.cam.ac.uk] has quit [Ping timeout: 240
seconds]
16:17 -!- clip9 [clip9@er.en.svarteper.com] has joined #go-nuts
16:18 < mattn_jp> if you want to call C.xxx function, you'be better to use
C.CString(str) via cgo
16:18 -!- iant [~iant@nat/google/x-ajitsszndqsorhdp] has joined #go-nuts
16:18 -!- mode/#go-nuts [+v iant] by ChanServ
16:18 -!- m4dh4tt3r [~Adium@c-69-181-223-245.hsd1.ca.comcast.net] has quit [Quit:
Leaving.]
16:19 < skelterjohn> that's the one
16:20 < skelterjohn> is there any documentation for the C.xxx utility
functions?
16:20 < skelterjohn> would be nice if golang.org/pkg/C existed
16:20 -!- shvntr [~shvntr@113.84.146.22] has quit [Ping timeout: 240 seconds]
16:20 < xash> Thanks ..  a doc would be useful, yes :-)
16:20 -!- iant [~iant@nat/google/x-ajitsszndqsorhdp] has quit [Client Quit]
16:20 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-164-231.clienti.tiscali.it] has
joined #go-nuts
16:21 -!- iant [~iant@nat/google/x-icvjdigmyvkwrlqu] has joined #go-nuts
16:21 -!- mode/#go-nuts [+v iant] by ChanServ
16:21 < mattn_jp> or if you know the length of string,
16:22 < mattn_jp> there is another way that use unsafe.Pointer
16:22 < Namegduf> Why would you want to, though?
16:22 < Namegduf> Actually, you can't, without editing the string, which is
bad.
16:23 < skelterjohn> you'd have to write a 0 into the end of the string
16:23 < skelterjohn> which is memory reserved for something else
16:23 -!- PortatoreSanoDiI [~Marvin@82.84.65.124] has quit [Ping timeout: 240
seconds]
16:24 < xash> Want to call a C function(char* argv[])
16:24 < mattn_jp> cgo?  or syscall?
16:24 < xash> cgo
16:24 < mattn_jp> then, use C.CString(xxx)
16:25 < mattn_jp> but you should know that it must free the memory
16:27 -!- clip9 [clip9@er.en.svarteper.com] has quit [Remote host closed the
connection]
16:28 -!- iant [~iant@nat/google/x-icvjdigmyvkwrlqu] has quit [Ping timeout: 260
seconds]
16:28 -!- clip9 [~clip9@er.en.svarteper.com] has joined #go-nuts
16:29 -!- iant [~iant@nat/google/x-fezapaoyuokbzmlk] has joined #go-nuts
16:29 -!- mode/#go-nuts [+v iant] by ChanServ
16:34 -!- niemeyer [~niemeyer@189.74.207.121] has quit [Ping timeout: 240 seconds]
16:51 -!- cafesofie [~cafesofie@dhcp-140-254-202-22.osuwireless.ohio-state.edu]
has quit [Remote host closed the connection]
16:52 -!- piranha [~piranha@5ED42E59.cm-7-5a.dynamic.ziggo.nl] has quit [Quit:
Computer has gone to sleep.]
16:54 -!- niemeyer [~niemeyer@189.74.207.121] has joined #go-nuts
16:54 -!- wrtp [~rog@92.17.43.14] has quit [Quit: wrtp]
17:02 -!- jodaro [~josh@nuevo.divinia.com] has quit [Quit: leaving]
17:12 -!- piranha [~piranha@5ED4B890.cm-7-5c.dynamic.ziggo.nl] has joined #go-nuts
17:13 -!- ymasory [~ymasory@c-76-99-55-224.hsd1.pa.comcast.net] has joined
#go-nuts
17:16 -!- XenoPhoenix [~Xeno@cpc13-aztw24-2-0-cust23.aztw.cable.virginmedia.com]
has joined #go-nuts
17:17 -!- m4dh4tt3r [~Adium@80.sub-75-210-255.myvzw.com] has joined #go-nuts
17:26 -!- ShadowIce
[~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has joined
#go-nuts
17:26 -!- ShadowIce
[~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has quit
[Changing host]
17:26 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
17:29 -!- mosva [~mosva@unaffiliated/mosva] has quit [Quit: mosva]
17:30 -!- Project-2501 [~Marvin@82.84.71.58] has joined #go-nuts
17:33 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-164-231.clienti.tiscali.it] has
quit [Ping timeout: 276 seconds]
17:36 -!- rm445 [rm445@pip.srcf.societies.cam.ac.uk] has joined #go-nuts
17:38 -!- foocraft [~dsc@78.100.221.189] has quit [Ping timeout: 240 seconds]
17:39 -!- m4dh4tt3r [~Adium@80.sub-75-210-255.myvzw.com] has quit [Ping timeout:
240 seconds]
17:41 -!- soapy_illusions [~soapy_ill@modemcable005.105-177-173.mc.videotron.ca]
has joined #go-nuts
17:43 -!- l00t [~i-i3id3r_@189.105.21.59] has joined #go-nuts
17:45 -!- virtualsue [~chatzilla@nat/cisco/x-dkqjxpmcfcvhylug] has quit [Ping
timeout: 276 seconds]
17:53 -!- m4dh4tt3r
[~Adium@75.144.24.109-BusName-walnutcreek.ca.hfc.comcastbusiness.net] has joined
#go-nuts
17:57 -!- binarypie [~binarypie@adsl-99-185-244-154.dsl.pltn13.sbcglobal.net] has
joined #go-nuts
17:58 -!- keithcascio [~keithcasc@nat/google/x-ubtcyzbctpogablm] has joined
#go-nuts
18:08 -!- decaf [~mehmet@85.110.237.34] has joined #go-nuts
18:10 < cco3-hampster> Is there a .Contains or .IndexOf or something for
slices or vectors?
18:12 < Namegduf> Use a for loop
18:13 < cco3-hampster> I was afraid of that
18:13 < Namegduf> For byte slices there might be a function in bytes
18:13 < Namegduf> Strings, similar.
18:14 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has joined
#go-nuts
18:14 < skelterjohn> if you don't care about order or multiplicity, use
map[YourType]bool
18:15 < skelterjohn> and you can check inclusion with theMap[myItem] == true
18:15 < aiju> cco3-hampster: it's just like four lines, man
18:15 < Namegduf> I wouldn't suggest taking a map as an alternative to
slices in general
18:16 < skelterjohn> certainly depends on what you want to do
18:16 -!- Venom_X_ [~pjacobs@75.92.43.21] has joined #go-nuts
18:16 < Namegduf> But if you're writing an algorithm which wants a set
rather than a slice, really, a map is a better tool and will give you O(1) checks.
18:17 < cco3-hampster> aiju: I know how to write a forloop, but I don't want
to write one every time I do this
18:17 < skelterjohn> cco3-hampster: so write a function :)
18:17 < cco3-hampster> skelterjohn: and save in my own special library that
I use for every single project?
18:17 < aiju> Java syndrome (n.): refusing to write simple function because
"it should be in the library"
18:18 < skelterjohn> writing a 3 line function for every project isn't so
bad
18:18 < skelterjohn> you already have to write "package" in every file
18:18 < Namegduf> If it's a []byte, it already exists.
18:18 < Namegduf> I believe.
18:18 < aiju> code reuse should get the fuck off my lawn
18:18 < Namegduf> Otherwise you need to rewrite it per slice type anyway.
18:19 < Namegduf> Doing it per project is the *least* of your worries.
18:19 -!- Venom_X [~pjacobs@75.92.43.21] has quit [Ping timeout: 276 seconds]
18:19 < cco3-hampster> true
18:19 < Namegduf> I suggest only functionising it when you actually have
enough instances of the loop that it's worth it for that specific type.
18:20 < Namegduf> Look on the bright side: It makes the fact that it's an
O(n) operation more obvious.  :P
18:20 < aiju> Namegduf: O(..) is mostly irrelevant
18:20 < aiju> N is small
18:20 < Namegduf> Not always.
18:20 < jumzi> meh, i refuse to write 3 lines functions all the time!
18:20 < jumzi> It's bloody annoying
18:21 < Namegduf> I suggest just writing the three lines
18:21 * aiju feeds jumzi an orange
18:21 < jumzi> I want to klick a button
18:21 < Namegduf> May I suggest Visual Basic?
18:21 * jumzi feels calmer with a orange in his hand
18:21 < aiju> visual basic is obsolote
18:21 < aiju> these days you write visual cobol
18:21 < Ina> Nononono, I know the perfect programming language: visual
c-like
18:22 < Ina> It's entirely drag and drop!
18:22 < aiju> oh lol
18:22 * jumzi cheers!
18:22 < jumzi> I saw a language like that
18:22 * aiju goes back to writing assembly :P
18:22 < aiju> there is labview
18:22 < jumzi> i dunno, it was designed for children at mit i think...?
18:23 < aiju> writing labview is like writing brainfuck
18:23 < Namegduf> aiju: There's a few places in non-trivial programs where N
can and will be big, often
18:23 < Ina> If you /whois me, I think you'd notice my opinion of assembly.
18:23 < rm445> Say next week Microsoft release Visual G#, Go for the .NET
runtime, with special Microsoft extensions.  You guys happy?  :-)
18:23 < Namegduf> aiju: There, noticing the complexity of your algorithms is
useful.
18:23 < aiju> Namegduf: i didn't deny that
18:24 < aiju> i'm just annoyed of people thinking / saying "it's just an
O(1), it won't harm"
18:24 < Namegduf> Oh, I agree.
18:24 < skelterjohn> the drag and drop language is called "Scratch"
18:24 < aiju> or "OH MY GOD O(n²) it will kill your family^Wperformance"
18:24 < Namegduf> It takes more analysis than that.
18:24 < Namegduf> O(n^2) is fine if n is low but it makes me take a second
look to make sure I'm happy with that.
18:24 < Ina> rm445, there's already a version of Go for .net in the works,
IIRC.
18:24 < aiju> not to mention the reliability issues with complex algorithms
18:24 < Namegduf> Slow O(1) can suck
18:24 < skelterjohn> i don't know why people call a hashmap lookup O(1)
18:24 < Namegduf> And simplicity wins out.
18:24 < aiju> skelterjohn: stupid analysis
18:25 < jumzi> And tbh, that's neat that the language is taken that serious
even by microsoft
18:25 < Namegduf> It's O(1) in the number of items
18:25 < Namegduf> O(n) in the length of the key.
18:25 < skelterjohn> but it's not
18:25 < skelterjohn> the hashing part is
18:25 < skelterjohn> but hashes collide
18:25 < aiju> hashmaps get worse than linked lists in the worst case
18:25 < skelterjohn> certainly the average case is great for well
implemented hashmaps
18:25 < Namegduf> That's true.
18:26 < Namegduf> A perfect hash algorithm is O(1).
18:26 < skelterjohn> hashmaps are linked lists, in the worst case
18:26 < Namegduf> Yeah.
18:26 < aiju> + hashing
18:26 < aiju> which ain't free :P
18:26 < Ina> jumzi, not by microsoft, there's third party devs around, you
know?
18:26 < aiju> if you port Go to .NET, i'll be happy to skin you
18:26 < skelterjohn> also, my hashmaps use search trees rather than linked
lists
18:26 < Namegduf> The bigger cost for my case is the base size of a map
18:26 < skelterjohn> which helps with the collision issue
18:27 < Namegduf> Which is at least 100 bytes
18:27 < aiju> all my hashmaps have a builtin flux capacitor
18:27 < skelterjohn> is that right, Namegduf?  didn't know that
18:27 < mpl> aiju: meaning they can go at over 88 mph ?
18:27 < Ina> aiju, I'd prefer a 99% code compatible go for .net than the
current state of the go windows project.
18:27 < Namegduf> skelterjohn: I took a look at the implementation; they're
not small.
18:27 < Namegduf> This makes sense, of course.
18:27 < aiju> .NET should fucking die
18:27 < Namegduf> They grow dynamically but there's limits to that.
18:28 < Ina> Because in the end, I'm a game developer.  I think go has
potential, it just needs a workable presence on the windows platform.
18:28 < skelterjohn> i'd like to see go for the ps3 cell platform
18:28 < jumzi> .NET should die, but if i had to touch it...  i'll probably
be happier to touch it via Go then <Insert random things>
18:28 < Ina> I hope erGo will release soon, if the project isn't dead.
18:28 < aiju> i don't think Go could hide the ugliness of .NET
18:29 < jumzi> I dunno, never worked with it :P
18:29 * jumzi happy
18:29 < skelterjohn> i worked with it briefly last year, for a game dev
class project
18:29 < skelterjohn> C#
18:30 < skelterjohn> it was ok.  kind of like a streamlined java
18:30 < skelterjohn> with a crappy garbage collector
18:30 < aiju> the last time i had to write windows crap i could choose C and
i did
18:30 < Ina> TBH, I prefer the JVM to the .net VM, but .net has the
advantage of being pre-installed in all modern versions of windows.
18:31 < jumzi> ih, you prefer jvm?  :S
18:31 < aiju> my code was a fraction the size compared to the other guy's
OOP crap which did a similar thing
18:31 < jumzi> OOPs
18:31 < aiju> haha
18:31 < aiju> yes
18:31 < Ina> OOP isn't always the answer.  That's the first thing to
remember.
18:31 < skelterjohn> it's nice to not worry about designing OOP hierarchies
18:31 < Ina> When OOP is the answer, C++ never is.
18:31 < aiju> (classical) OOP is never the answer
18:32 < aiju> C++ is just wrong.
18:32 < jumzi> aiju: No!
18:32 < Ina> aiju, actually, classical OOP is.  Popular OOP isn't.
18:32 < aiju> but i'd prefer writing C++ over writing Java
18:32 < jumzi> If you choose your own really small subset of C++ it can be
ok
18:32 < aiju> Ina: "classical" as in "what everyone thinks of it", not
"ancient"
18:32 < jumzi> Which is retarded
18:32 < Ina> Java at least has the advantage of easy cross platform coding.
18:32 < Namegduf> You can say you're writing C++ and then just write in the
C subset
18:32 < Namegduf> :P
18:32 -!- cafesofie [~cafesofie@rnwifi-164-107-92-64.resnet.ohio-state.edu] has
joined #go-nuts
18:32 < aiju> Namegduf: that's what i do
18:32 < jumzi> :D
18:33 < Ina> Nobody uses the full C++ spec.
18:33 < aiju> Ina: OOP is a meaningless term if you leave the Java region
18:33 < Ina> Nobody uses the exact same C++ subset either.
18:33 < Namegduf> Java OTOH you have to deal with a language where complex
overengineered type hierarchies and every file being abstracted from every other
is idiomatic
18:34 < Ina> If you try to use
18:34 * jumzi once again got an anxiety attack, and goes back to read some v6
source instead
18:34 < skelterjohn> then again, #java has one more than twice as many
people than #go-nuts
18:34 < skelterjohn> therefore it is better
18:34 < aiju> haha
18:34 < aiju> no, it's worse
18:34 < aiju> it's called the "flies and shit" principle
18:34 < Ina> If you try to use C++'s features, then you're dealing with all
of C's disadvantages, but giving up most of its strength's
18:34 * skelterjohn bites back a mildly offensive comment
18:34 < Ina> It just means it's more popular.
18:34 < Ina> No more, no less.
18:34 < skelterjohn> does it, now
18:34 < Namegduf> There's only one C++ principle I like, really
18:35 < Namegduf> And that's "pay for what you use"
18:35 < aiju> that's why assignments can result in O(n!) operations
18:35 < mpl> heh.
18:35 < skelterjohn> what are you talking about?
18:35 < aiju> operator overloading
18:35 < skelterjohn> oh
18:35 < aiju> if i ever write C++, i'll use it all over the place
18:35 < skelterjohn> well then why not just say infinite loops
18:35 < aiju> to make my code easier to read
18:36 < Ina> Anyway, I love go, but until I can write windows software in
it, I won't be using it for my projects.
18:36 < Namegduf> But there's some decisions which can't be made like that,
like GC and such.
18:36 < aiju> so i can write C++ with all the disadvantages of APL
18:36 < Namegduf> Ina: Go at present is mostly suitable for server stuff
anyway, since it lacks a strong graphical library.
18:36 < Namegduf> (Or CLI stuff, but CLI stuff is irrelevant on Windows
anyway)
18:36 < aiju> s/server stuff/non idiot stuff/
18:37 < skelterjohn> aiju: you have very strong and weird opinions
18:37 < aiju> i write software not supposed to be used by lobotomized
flatworms
18:37 < Namegduf> So for what Go's good at so far, Windows is less of a
priority.
18:37 < Namegduf> I think.
18:37 < Ina> Namegduf, I can write a wrapper around a C lib myself.
18:37 < jumzi> Ina: So eh...  WHAT!?
18:37 < aiju> doesn't Go already run on Windows?  *scratcheshead*
18:38 < Namegduf> It's got a Windows port.
18:38 < Namegduf> No idea on status.
18:38 < Ina> aiju, not...  very well.  The windows port is ...  lacking
18:38 < jumzi> All your projects *has* to be in windows?
18:38 < aiju> roll your own
18:38 < aiju> :P
18:38 < Ina> jumzi, I'm an independent game developer.  My money lies in
windows.
18:38 < KBme> also
18:39 < aiju> idk what's so much work about a windows port
18:39 < Ina> aiju, I am not up to date on compiler programming.
18:39 < Namegduf> It'll be good when it is less lacking.
18:39 < KBme> there is a non-free self-hosting go for windows
18:39 < aiju> oh yeah PE/COFF
18:39 < Ina> KBme, which one?  erGo?
18:39 < aiju> forgot about that :<
18:39 < Ina> Because erGo isn't released yet.
18:39 < KBme> i don't remember, saw it fly by on the ml several times
18:39 < aiju> just add PE/COFF support to the linker and the windows OS code
to the runtime/os/whatever
18:39 < Namegduf> Go as a games dev thing seems like a really nice idea.
18:40 < Namegduf> Fast, but high level, plus simple.
18:40 < Ina> Namegduf, I agree.
18:40 < Ina> Not to mention easy concurrent programming.
18:40 < Namegduf> That too, yeah.
18:41 < Ina> aiju, like I said, I am not up to date on compiler/linker
programming.
18:41 < aiju> you don't even have to touch the compiler
18:41 < KBme> yeah, it is ergo
http://www.newquistsolutions.com/index.php/ergo
18:41 < Ina> I would have to touch the linker.
18:41 < aiju> yeah
18:41 < aiju> the output stage
18:41 < Namegduf> There are people working on it
18:42 < Ina> KBme, yeah, I'm hoping that project isn't dead, because it
seems really nice.
18:42 < Namegduf> Can't blame 'em if they wait for it to be finished.
18:42 < Namegduf> The stdlib is mostly written in Go itself
18:42 < aiju> theirs or ours?  :P
18:42 < Namegduf> Go's.
18:42 < aiju> the runtime is actually mostly C
18:42 < Namegduf> Er, the official one.
18:43 < Namegduf> Yes, but I said the stdlib
18:43 < Namegduf> Once Go is off the ground in general, there shouldn't be
much trouble with libraries outside os, really?
18:43 < Namegduf> I hope.
18:43 < aiju> pure go libraries, that is
18:44 < Ina> erGo also seems to have really easy library integration.
18:44 < aiju> what's up with the windows port?
18:44 < Ina> Yeah, it's not cross-platform, but imo, it's something google
go should copy.
18:45 < KBme> Ina: doesn't look like they're stale.
18:45 < Namegduf> It isn't possible,
18:45 -!- imsplitbit [~imsplitbi@64.39.4.132] has joined #go-nuts
18:45 < Namegduf> The reason Go and C on *nix are not linker-compatible
18:45 < Namegduf> Is due to segmented stack support
18:45 < aiju> not only that
18:45 < Namegduf> Which is needed to make goroutines cheap
18:45 < Namegduf> Otherwise each would need a full regular thread's stack
18:46 < aiju> the object format used for Go is fundamentally different from
any "classical" one
18:46 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has quit [Quit: ZNC -
http://znc.sourceforge.net]
18:46 < aiju> it's not possible without major rewrites to adapt software to
it
18:47 < Namegduf> The segmented stacks causing a different calling
convention are why they just can't work, though- or one good reason.
18:47 * Ina looks at the status, "Huh, seems like there's only a few minor
libraries not supported by the official port yet."
18:48 < Ina> Namegduf, the erGo project allows you to define an alternate
calling convention for function calls (or external functions)
18:48 < aiju> Go and Windows both don't allow forking, a perfect match!
18:49 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
18:49 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has joined #go-nuts
18:49 < Namegduf> Ina: That sounds like a solution, yeah.
18:50 < Ina> That's the solution erGo uses, which seems like a good one to
me.
18:50 < aiju> doesn't change the fact that you can't link it
18:50 < Ina> Here's an article on it:
http://newquistsolutions.com/blog/general/calling-conventions/
18:51 < aiju> btw who the fuck uses __stdcall/__fastcall?
18:51 < Ina> pascal uses __stdcall IIRC
18:52 -!- iant [~iant@nat/google/x-fezapaoyuokbzmlk] has quit [Ping timeout: 260
seconds]
18:52 < aiju> pascal hasn't died yet?
18:52 < Ina> No clue about __fastcall
18:52 < Ina> aiju, it's still popular amongst hobbyists
18:52 < Ina> freepascal is actually a surprisingly fast and effective
compiler.
18:52 < Namegduf> Ina: That's roughly what cgo does, when calling into C, I
think- convert between calling conventions.
18:53 -!- femtoo [~femto@95-89-198-16-dynip.superkabel.de] has quit [Read error:
Connection reset by peer]
18:53 < Namegduf> I don't believe it's cheap, though.
18:53 < Namegduf> I wonder if they support segmented stacks at all in erGo.
18:53 < Namegduf> They don't mention it.
18:53 < aiju> how do segmented stacks work after all?
18:54 < Namegduf> It's an implementation detail, but it's kinda good to have
goroutines not cost a full normal thread's stack to spawn
18:58 < KBme> well, if it did one couldn't just go all over the place
18:59 < aiju> :< i still don't go all over the place
19:00 -!- ildorn [~ildorn@dhcp11.clubraum.in-ulm.de] has joined #go-nuts
19:00 -!- ildorn [~ildorn@dhcp11.clubraum.in-ulm.de] has quit [Client Quit]
19:05 -!- iant [~iant@nat/google/x-ueizqnqnbxgiyaws] has joined #go-nuts
19:05 -!- mode/#go-nuts [+v iant] by ChanServ
19:05 < KBme> *sadface*
19:09 -!- soapy_illusions [~soapy_ill@modemcable005.105-177-173.mc.videotron.ca]
has quit [Ping timeout: 240 seconds]
19:13 -!- cenuij [~cenuij@base/student/cenuij] has quit [Remote host closed the
connection]
19:15 -!- DerHorst [~Horst@e176124052.adsl.alicedsl.de] has quit [Remote host
closed the connection]
19:19 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Quit: skelterjohn]
19:20 -!- artefon [~thiago@189.59.130.103.dynamic.adsl.gvt.net.br] has quit [Quit:
bye]
19:21 -!- napsy [~luka@88.200.96.18] has quit [Quit: leaving]
19:24 -!- photron [~photron@port-92-201-39-53.dynamic.qsc.de] has joined #go-nuts
19:30 -!- decaf [~mehmet@85.110.237.34] has quit [Quit: Leaving.]
19:36 -!- cafesofie [~cafesofie@rnwifi-164-107-92-64.resnet.ohio-state.edu] has
quit [Remote host closed the connection]
19:42 -!- dforsyth_ [~dforsyth@bastion.inap.yelpcorp.com] has joined #go-nuts
19:44 -!- Fish- [~Fish@9fans.fr] has joined #go-nuts
19:54 < aiju> the Go compiler as it is can produce windows executables with
-H 10
19:57 < homa_rano> how does the [568]g calling convention return multiple
values?
19:57 -!- im2ee [im2ee@gateway/shell/bshellz.net/x-uilxxopgogoyiaka] has left
#go-nuts []
19:58 < aiju> homa_rano: pass by reference parameters
19:58 < aiju> i.e.  on the stack
19:59 < homa_rano> so if f = func(x,y int) (a,b int) {return y,x}
19:59 < homa_rano> x and y are pushed to the stack with the pc
19:59 < homa_rano> then f is called
19:59 < aiju> no
19:59 < homa_rano> please clarify
20:00 < aiju> x, y, 0, 0 are pushed
20:00 < aiju> the function modifies the stac
20:00 < aiju> +k
20:00 < homa_rano> I see
20:01 < aiju> and actually nothing is pushed, but rather some kind of local
variables are used
20:01 < aiju> it's tricky
20:01 < homa_rano> sounds tricky
20:01 < aiju> just use 6c -S and look at the output
20:02 < aiju> eh 6g
20:03 < aiju> functions never modify the stack pointer, except at enter and
at exit
20:06 < homa_rano> this exercise also showed that the builtin print(ln)
command compiles to individually handling arguments
20:06 < aiju> yeah
20:06 -!- Fish-- [~Fish@9fans.fr] has joined #go-nuts
20:07 < aiju> and that it sometimes produces really stupid code which is
only cleaned up by the linker :P
20:07 -!- Fish- [~Fish@9fans.fr] has quit [Ping timeout: 255 seconds]
20:07 < homa_rano> does the linker do much optimization?
20:07 < aiju> relatively much
20:07 < homa_rano> good, because this is some pretty stupid code
20:08 -!- l00t [~i-i3id3r_@189.105.21.59] has quit [Ping timeout: 240 seconds]
20:08 -!- Natch| [~natch@c-6dcde155.25-4-64736c10.cust.bredbandsbolaget.se] has
joined #go-nuts
20:10 -!- PortatoreSanoDiI [~Marvin@dynamic-adsl-94-36-152-178.clienti.tiscali.it]
has joined #go-nuts
20:13 -!- Project-2501 [~Marvin@82.84.71.58] has quit [Ping timeout: 240 seconds]
20:16 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Quit: Leaving.]
20:18 -!- BlaSux [7f000001@69.195.144.4] has quit [Ping timeout: 260 seconds]
20:19 -!- BlaSux [7f000001@69.195.144.4] has joined #go-nuts
20:25 -!- tobier_ [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has
joined #go-nuts
20:28 -!- tobier [~tobier@c-1e9de055.712-1-64736c11.cust.bredbandsbolaget.se] has
quit [Ping timeout: 260 seconds]
20:34 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
20:42 -!- plainhao [~plainhao@208.75.85.237] has quit [Quit: plainhao]
20:44 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection]
20:45 -!- bmizerany [~bmizerany@204.14.152.118] has joined #go-nuts
20:45 -!- skejoe [~skejoe@188.114.142.162] has joined #go-nuts
20:46 -!- rinzai [~rinzai@host86-132-154-175.range86-132.btcentralplus.com] has
joined #go-nuts
20:46 -!- ExtraSpice [~XtraSpice@88.118.33.48] has quit [Read error: Connection
reset by peer]
20:50 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
20:57 -!- rlab_ [~Miranda@91.200.158.34] has joined #go-nuts
21:00 -!- skejoe [~skejoe@188.114.142.162] has quit [Quit: Lost terminal]
21:00 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 272 seconds]
21:01 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has quit [Ping
timeout: 255 seconds]
21:03 -!- rinzai [~rinzai@host86-132-154-175.range86-132.btcentralplus.com] has
quit [Quit: Leaving]
21:17 -!- pothos [~pothos@111-240-164-32.dynamic.hinet.net] has quit [Read error:
Connection reset by peer]
21:18 -!- tav [~tav@92.7.116.65] has joined #go-nuts
21:19 -!- pothos [~pothos@111-240-170-249.dynamic.hinet.net] has joined #go-nuts
21:24 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has quit [Quit: Morten.  Desu~]
21:25 -!- l00t [~i-i3id3r_@189.105.21.59] has joined #go-nuts
21:27 -!- gits [~gits@77.94.219.158] has joined #go-nuts
21:27 -!- gits [~gits@77.94.219.158] has quit [Client Quit]
21:28 < plexdev> http://is.gd/eelnow by [Russ Cox] in go/src/ -- make.bash:
stricter selinux test
21:28 < plexdev> http://is.gd/HxZVWE by [Russ Cox] in go/ -- CONTRIBUTORS:
add David Anderson (Google CLA)
21:28 < plexdev> http://is.gd/r37mgR by [David Anderson] in
go/src/pkg/crypto/rsa/ -- crypto/rsa: correct docstring for SignPKCS1v15.
21:29 < plexdev> http://is.gd/rBCPqh by [Adam Langley] in 2 subdirs of
go/src/pkg/ -- crypto/dsa: add support for DSA
21:29 < plexdev> http://is.gd/cCnfpk by [Luuk van Dijk] in go/src/cmd/cc/ --
cc: mode to generate go-code for types and variables.
21:29 < plexdev> http://is.gd/VmjiKf by [Luuk van Dijk] in go/src/cmd/cc/ --
cc: fix -q and build break.
21:29 < plexdev> http://is.gd/1MYeid by [Roger Peppe] in go/src/pkg/time/ --
time: allow cancelling of After events.
21:32 -!- mattn_jp [~mattn@112-68-50-105f1.hyg1.eonet.ne.jp] has quit [Quit:
Ex-Chat]
21:33 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts
21:33 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has quit [Excess Flood]
21:36 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts
21:41 -!- jyxent [~jyxent@129.128.191.96] has joined #go-nuts
21:45 -!- qjcg [~qjcg@208.88.110.46] has joined #go-nuts
21:45 < plexdev> http://is.gd/xPXTBC by [Robert Griesemer] in
go/src/pkg/scanner/ -- scanner: fix Position returned by Scan, Pos
21:45 < plexdev> http://is.gd/GbPUWT by [Russ Cox] in 2 subdirs of
go/src/pkg/runtime/ -- runtime: prefer fixed stack allocator over general memory
allocator
21:53 -!- iant [~iant@nat/google/x-ueizqnqnbxgiyaws] has quit [Ping timeout: 240
seconds]
21:57 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:887a:9a19:92e8:b454] has quit
[Quit: Leaving.]
22:00 -!- iant [~iant@nat/google/x-qkniehjudjdimsar] has joined #go-nuts
22:00 -!- mode/#go-nuts [+v iant] by ChanServ
22:00 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has joined
#go-nuts
22:02 -!- artefon [~thiago@189.59.130.103.dynamic.adsl.gvt.net.br] has joined
#go-nuts
22:15 -!- Venom_X [~pjacobs@75.92.43.21] has quit [Quit: Venom_X]
22:22 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
22:25 -!- photron [~photron@port-92-201-39-53.dynamic.qsc.de] has quit [Ping
timeout: 260 seconds]
22:27 -!- artefon [~thiago@189.59.130.103.dynamic.adsl.gvt.net.br] has quit [Quit:
bye]
22:28 -!- erus` [~tommo@host86-135-165-182.range86-135.btcentralplus.com] has
joined #go-nuts
22:32 -!- piranha [~piranha@5ED4B890.cm-7-5c.dynamic.ziggo.nl] has quit [Quit:
Computer has gone to sleep.]
22:33 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
22:34 -!- Fish-- [~Fish@9fans.fr] has quit [Quit: So Long, and Thanks for All the
Fish]
22:34 -!- rlab_ [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller,
Faster, Easier.  http://miranda-im.org]
22:35 < xash> Is it possible to use "type Interface interface { New()
*Interface }"?
22:35 < aiju> try it
22:35 < aiju> i think it should
22:36 -!- Tuller [~tuller@c-69-143-52-174.hsd1.va.comcast.net] has joined #go-nuts
22:37 < xash> type Junk struct { }; func (j Junk) New() (*Junk) { return
Junk{} } ..  doesn't work, so I can't imagine another reasonable solution
22:37 < aiju> huh
22:37 < aiju> wtf
22:38 < aiju> works just fine here
22:38 < aiju> eh
22:38 < aiju> should be return &Junk{}, you know
22:39 -!- snearch [~snearch@f053009236.adsl.alicedsl.de] has joined #go-nuts
22:39 -!- nutate [~rseymour@cacsag4.usc.edu] has quit [Quit: I'm outta heee-eere]
22:39 < xash> Oh, ofc ..  but no, says; "Junk does not implement Interface
(wrong type for New method) - have New() *Junk - want New() *Interface"
22:40 < aiju> New() Interface
22:40 < aiju> in the interface defintiion
22:41 -!- qjcg [~qjcg@208.88.110.46] has quit [Quit: qjcg]
22:41 < aiju> oh that doesn't work either
22:41 < aiju> simply declare the New method with return type Interface
22:41 < aiju> and not *Junk
22:43 -!- snearch [~snearch@f053009236.adsl.alicedsl.de] has quit [Client Quit]
22:43 -!- PortatoreSanoDiI [~Marvin@dynamic-adsl-94-36-152-178.clienti.tiscali.it]
has quit [Quit: E se abbasso questa leva che succ...]
22:44 < xash> But then I can't create a Junk to return it ..  hm
22:44 < aiju> sure you can
22:45 < aiju> http://p.remotehost.co/pastes/2011-01-25T17:45:10.raw
22:45 < xash> Wait, I'll write an example, so you can show me the right way
to do that :)
22:45 < xash> Oh, too fast
22:46 < xash> Ah! The pointers were the problems ..  thank you!  :-)
22:55 -!- imsplitbit [~imsplitbi@64.39.4.132] has quit [Quit: Bye!]
22:55 < homa_rano> does anybody else like the idea of changing the regexp
signatures from `FindAllIndex(b []byte, n int) [][]int` to `FindAllIndex(b []byte,
n int) [][2]int`?
22:55 < homa_rano> it seems more clear and more memory-efficient
23:03 -!- exch [~exch@h78233.upc-h.chello.nl] has quit [Quit: leaving]
23:06 -!- exch [~exch@h78233.upc-h.chello.nl] has joined #go-nuts
23:11 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has quit [Ping
timeout: 246 seconds]
23:14 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has joined
#go-nuts
23:19 -!- tvw [~tv@e176003154.adsl.alicedsl.de] has joined #go-nuts
23:19 -!- Boney [~paul@124-168-100-192.dyn.iinet.net.au] has joined #go-nuts
23:24 < jnwhiteh> I am writing a very simple Go stub for a C library to
learn how everything works.  The stub compiles just fine and gets installed.  When
I then try to run a test program against it, I get the following for the two C
functions I've called:
23:24 < erus`>
http://stackoverflow.com/questions/4799905/casting-back-to-more-specialised-template
23:24 < jnwhiteh>
/Users/jnwhiteh/scm/golang.hg/pkg/darwin_amd64/golua.a(golua.cgo2.o)(__TEXT/__text):
luaL_newstate: not defined
23:24 < jnwhiteh>
/Users/jnwhiteh/scm/golang.hg/pkg/darwin_amd64/golua.a(golua.cgo2.o)(__TEXT/__text):
lua_createtable: not defined
23:24 < jnwhiteh> err, sorry for the paste, only meant to do one line.
23:24 < jnwhiteh> Anyone have any hints on why this might be happening?
23:25 < jnwhiteh> http://paste.pocoo.org/show/326914/ is the stub and
http://paste.pocoo.org/show/326915/ is the test program
23:28 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has quit [Quit:
leaving]
23:28 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has joined
#go-nuts
23:28 -!- erus` [~tommo@host86-135-165-182.range86-135.btcentralplus.com] has quit
[Remote host closed the connection]
23:29 < rm445> jnwhiteh: can you compile and link the equivalent stub C
program?
23:29 < jnwhiteh> Let me test that, but yes I should be able to.
23:30 -!- emjayess [~emjayess@pix1.i29.net] has quit [Quit: Leaving]
23:30 < uriel> http://www.google.com/events/io/2011/sessions.html
23:30 < rm445> (I'm asking in case you're missing a file or forgetting
something about the compiler invocation, -Llua or whatever)
23:30 < uriel> adg: where are the Go sessions?
23:30 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has quit [Ping
timeout: 272 seconds]
23:30 < jnwhiteh> rm445: I've linked directly to the .a in this case, as
well as specified -llua and -L to the path
23:30 < jnwhiteh> I know the symbols are in there, in short =)
23:30 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has joined
#go-nuts
23:31 < rm445> :-( okay sorry that's about as much as I can help, was hoping
it was an easy one :-/
23:31 < jnwhiteh> I'll give the equivalent C program a try real quick
23:31 < aiju> is writing Go bindings for random things some kind of fad?
23:32 < jnwhiteh> no I have a need for this, not doing it to be fashionable
23:32 < jnwhiteh> why do you ask?
23:32 < aiju> many people ask for things like that …
23:32 < jnwhiteh> its natural to want to bind to a well used C library
23:32 < jnwhiteh> Lua being the perfect case
23:32 < jnwhiteh> I'm embedding a scripting language in a Go program
23:34 < uriel> jnwhiteh: have you tried any of the existing lua bindings?
23:34 < jnwhiteh> rm445: yep, the equivalent C program works fine
23:34 < jnwhiteh> uriel: I've seen one, and it has the same issue that I'm
trying to solve
23:35 < jnwhiteh> I decided to go down to a very base case to determine what
the issue is
23:35 < jnwhiteh> and ended up hitting the exact same problem.
23:35 < uriel> have you looked into gelo: http://code.google.com/p/gelo/
23:35 < aiju> have you tried turning it off and on again?
23:35 < jnwhiteh> This C program compiles cleanly:
http://paste.pocoo.org/show/326923/
23:36 < jnwhiteh> uriel: for my purposes, Lua is really the right target
language, I've seen gelo and would definitely use it elsewhere, just can't in this
case =)
23:36 < jnwhiteh> The program needs to integrate with a large body of
existing Lua code
23:36 < aiju> "a large body of existing Lua code" sounds like the beginning
of a horror story
23:36 < jnwhiteh> why?
23:37 < uriel> actually, lua is not *that* bad
23:37 < jnwhiteh> Not that I'm terribly interested in your particular
personal bias against a given language =)
23:37 < uriel> as 'modern' languages go anyway
23:37 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has quit [Ping
timeout: 264 seconds]
23:37 < jnwhiteh> I happen to agree, but the language I'm binding to has no
relevance here =)
23:38 < jnwhiteh> The C code is ANSI 89 and clean, so the trivial
stub/program should be easy
23:38 < jnwhiteh> so I'm sure I'm missing something :P
23:38 < aiju> i'd say you're not linking against the right file
23:38 < jnwhiteh> there's one file, called liblua.a
23:38 < aiju> ooooor those functions are actually macros
23:39 < aiju> something crazy
23:39 < jnwhiteh> if they were macros, the stub wouldn't compile, at least
that's my experience
23:40 < uriel> jnwhiteh: have you tried this bindings:
https://github.com/aarzilli/golua ?
23:40 < aiju> what's your cgo code?
23:40 < jnwhiteh> uriel: that is what I'm working off of
23:40 < jnwhiteh> aiju: the generated code or the stub?
23:40 < aiju> eh both
23:40 < jnwhiteh> uriel: and it doesn't work, same issue
23:41 < jnwhiteh> aiju: http://paste.pocoo.org/show/326914/ is the stub and
http://paste.pocoo.org/show/326915/ is the test program
23:42 < jnwhiteh> aiju: I'm pulling up the cgo code
23:42 < uriel> might be due to recent cgo changes...  :/
23:43 < jnwhiteh> aiju: http://paste.pocoo.org/show/326929/ that's gotypes
and cgo1
23:45 < jnwhiteh> uriel: the only thing I see in the past two months is "*
cgo: handle references to symbols in shared libraries." from 22-Dec.  I suppose I
can look into that but I'm not sure how far that will take me.
23:46 < uriel> ? there have been many big changes to cgo in the last two
months
23:46 < jnwhiteh> I was just looking at the release notes
23:46 < jnwhiteh> I've only been following the http package on gonuts-dev
23:46 < uriel> are you sure you are using the latest Go?
23:46 < uriel> (ok, stupid question)
23:46 < jnwhiteh> hg pull && hg update release && cd src&& ./all.bash =)
23:47 < jnwhiteh> no, reasonable question
23:47 < jnwhiteh> given some of the help we provide in here :P
23:47 < uriel> still, I think russ even posted to gonuts about "new cgo"
23:48 < jnwhiteh> i'll take a look
23:48 < jnwhiteh> I'm happy to provide what I'm working with if anyone wants
to take a stab, its pretty straightforward
23:49 < KBme> cgo works with 8/6g?
23:49 -!- Skola [~ik@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has quit [Quit: Skola]
23:49 < jnwhiteh> KBme: everything I've read says it ONLY works with 8/6g
23:49 < jnwhiteh> perhaps I've read wrong?
23:49 < KBme> no, no, i don't know much about it
23:50 < KBme> seemed logical that it would only work with gccgo but ah well,
my logic is probably flawed
23:51 < niemeyer> jnwhiteh: cgo has been significantly changed mid-December,
and several small changes have been done since then
23:52 < jnwhiteh> *nod* I'm checking the mailing list now to see if I can
dig up a thread..  The list is still too high traffic for me that I end up on
digest which is =(
23:52 < jnwhiteh> perhaps I should just filter now instead
23:52 < niemeyer> jnwhiteh: Check out the release of the 15th
23:54 -!- Kashia [~Kashia@port-92-200-30-31.dynamic.qsc.de] has joined #go-nuts
23:55 < jnwhiteh> aiju: https://github.com/jnwhiteh/cgo-lua-test if you want
to see what I'm doing..  gomake basic will build liblua, the go bindings and the
test program basic.go, which is what fails.
23:56 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has joined
#go-nuts
23:56 < jnwhiteh> I'll check this on another platform to ensure its not
platform specific before moving much further
23:57 < jnwhiteh> nope, same issue
23:58 < jnwhiteh> niemeyer: thanks for the heads up, makes me happy I'm
using the standard Makefiles once again :P
23:59 < niemeyer> jnwhiteh: Lua is awesome, btw
23:59 < niemeyer> jnwhiteh: So, what is the issue you're finding?
23:59 < jnwhiteh> I happen to agree for many things
23:59 < jnwhiteh> niemeyer: quite simply, the cgo package builds 100% fine,
but when I try to build a program that uses it, I get a list of undefined symbols
from 6/8l
23:59 < niemeyer> jnwhiteh: Well, of course, it's not by mistake we're
meeting in the Go channel ;-)
--- Log closed Wed Jan 26 00:00:05 2011