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

--- Log opened Mon Mar 08 00:00:21 2010
00:00 -!- deso [~deso@x0561a.wh30.tu-dresden.de] has quit [Read error: Connection
reset by peer]
00:02 -!- awidegreen_ [~quassel@p5B060B39.dip.t-dialin.net] has quit [Remote host
closed the connection]
00:07 -!- wuehlmaus [~wuehlmaus@p4FCC3FC6.dip.t-dialin.net] has quit [Ping
timeout: 276 seconds]
00:08 -!- wuehlmaus [~wuehlmaus@p4FCC7464.dip.t-dialin.net] has joined #go-nuts
00:08 -!- no_mind [~orion@122.161.39.233] has joined #go-nuts
00:09 -!- mejja [~user@c-68b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has
quit [Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.0.14/2009090900]]
00:15 -!- powerje [~powerje@2002:4cc0:8dca:0:213:e8ff:feaa:ae2b] has quit [Quit:
exit]
00:16 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has quit [Ping timeout: 276
seconds]
00:22 -!- nettok [~netto@200.119.155.12] has quit [Quit: Ex-Chat]
00:22 -!- nettok [~netto@200.119.155.12] has joined #go-nuts
00:28 -!- nettok_ [~netto@200.119.155.12] has joined #go-nuts
00:28 -!- triplez [~triplez@cm230.kappa1.maxonline.com.sg] has quit [Quit:
triplez]
00:32 -!- nettok [~netto@200.119.155.12] has quit [Ping timeout: 240 seconds]
00:34 -!- nettok__ [~netto@200.119.155.12] has joined #go-nuts
00:36 -!- gnuvince [~vince@72.0.219.106] has quit [Quit: What the fruit is goin'
on here!?]
00:36 -!- hevalbaranov [~hevalbara@88.247.204.111] has joined #go-nuts
00:37 -!- nettok_ [~netto@200.119.155.12] has quit [Ping timeout: 248 seconds]
00:39 -!- nettok_ [~netto@200.119.155.12] has joined #go-nuts
00:39 < d_m> have any of you used the ncurses bindings for go?
http://github.com/jabb/gocurse
00:40 < d_m> i can't get it to compile (and i'm too much of a go newbie to
understand why)
00:43 -!- nettok__ [~netto@200.119.155.12] has quit [Ping timeout: 240 seconds]
00:45 -!- sudi [~chatzilla@dslb-084-056-015-010.pools.arcor-ip.net] has quit
[Remote host closed the connection]
00:47 -!- kota1111 [~kota1111@gw2.kbmj.jp] has joined #go-nuts
00:48 -!- nettok_ [~netto@200.119.155.12] has quit [Ping timeout: 246 seconds]
00:53 < exch> it's quite possible it last updated a while ago.  The go API
and compiler is constantly being developed/changed.  You'll have to manually
update the source of the package to reflect the current compiler/api state
00:55 -!- nighty__ [~nighty@210.188.173.245] has joined #go-nuts
00:57 < d_m> exch: ok.  i will probably be asking some more specific
questions about it then.  thanks!
01:04 -!- nettok_ [~netto@200.119.155.12] has joined #go-nuts
01:07 -!- NinoScript [~Adium@pc-16-61-86-200.cm.vtr.net] has joined #go-nuts
01:13 < uriel> d_m: or you might want to contact the author of the lib and
ask them to update it to work with the latest Go toolchain
01:14 -!- NinoScript [~Adium@pc-16-61-86-200.cm.vtr.net] has quit [Read error:
Connection reset by peer]
01:15 -!- NinoScript [~Adium@pc-16-61-86-200.cm.vtr.net] has joined #go-nuts
01:17 -!- nettok_ [~netto@200.119.155.12] has quit [Quit: Ex-Chat]
01:18 -!- nettok [~netto@200.119.155.12] has joined #go-nuts
01:19 -!- NinoScript [~Adium@pc-16-61-86-200.cm.vtr.net] has quit [Ping timeout:
268 seconds]
01:25 -!- NinoScript [~Adium@pc-16-61-86-200.cm.vtr.net] has joined #go-nuts
01:26 -!- NinoScript [~Adium@pc-16-61-86-200.cm.vtr.net] has quit [Client Quit]
01:30 -!- triplez [~triplez@bb116-14-66-213.singnet.com.sg] has joined #go-nuts
01:31 -!- Netsplit *.net <-> *.split quits: sw4, jimki, anticw, araujo,
merlin83, Tigge_, GabydeWilde_, caw
01:32 -!- nettok_ [~netto@200.119.155.12] has joined #go-nuts
01:32 -!- Netsplit over, joins: GabydeWilde_, jimki, anticw, Tigge_, araujo,
merlin83, sw4
01:33 -!- stalled [~411@unaffiliated/stalled] has quit [Excess Flood]
01:34 -!- stalled [~411@unaffiliated/stalled] has joined #go-nuts
01:35 -!- verma [~verma@173-21-32-42.client.mchsi.com] has joined #go-nuts
01:36 -!- nettok [~netto@200.119.155.12] has quit [Ping timeout: 264 seconds]
01:36 -!- nettok_ [~netto@200.119.155.12] has quit [Client Quit]
01:36 -!- nettok [~netto@200.119.155.12] has joined #go-nuts
01:38 -!- caw [skyyy@phonzdesktop.rh.rit.edu] has joined #go-nuts
01:42 -!- nettok_ [~netto@200.119.155.12] has joined #go-nuts
01:44 -!- gnuvince [~vince@206.71-ppp.3menatwork.com] has joined #go-nuts
01:46 -!- nettok [~netto@200.119.155.12] has quit [Ping timeout: 252 seconds]
01:49 -!- kizzo [~kizzo@67.188.70.105] has joined #go-nuts
01:49 -!- aho [~nya@g226202175.adsl.alicedsl.de] has joined #go-nuts
01:50 < kizzo> Does Go implement design by contract, or is there a library
for it?
01:51 < kizzo> I'd give Go another +1 if it does, b/c that would be awesome.
01:52 < kizzo> And I'm pretty much referring to the wikipedia definition:
preconditions, postconditions, and invarients.
02:01 < exch> not by itself.  Not sure if there's a library for it
02:11 -!- nettok_ [~netto@200.119.155.12] has quit [Quit: Ex-Chat]
02:12 -!- nettok [~netto@200.119.155.12] has joined #go-nuts
02:13 < ak2> question regarding goroutines
02:13 < ak2> how do i get the routine to return a value which i can access
in the main thread?
02:13 < ak2> i tried passing a pointer to the goroutine but never got
anything back in it
02:15 < ak2> anticw: there?
02:17 < uriel> 01:51 < kizzo> I'd give Go another +1 if it does, b/c
that would be awesome.
02:17 < uriel> that is not a very convincing argument
02:18 < uriel> ak2: channels?
02:19 < ak2> uriel: trying them right now..  didnt get the value back..  i
think i didnt implement the channel properly..
02:19 < ak2> basically, i think my usage of the lock was wrong..  trying now
02:20 -!- andrewh [~andrewh@94-194-56-42.zone8.bethere.co.uk] has quit [Ping
timeout: 260 seconds]
02:23 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
02:28 < hstimer> can a map be a field of a struct or must it be a *map?
02:28 -!- tav [~tav@78.146.253.172] has quit [Ping timeout: 258 seconds]
02:39 -!- tav [~tav@92.29.33.105] has joined #go-nuts
02:39 < hstimer> hmmm...  looks like it can be just a map...you still have
to call make on it
02:42 -!- powerje [~powerje@2002:4cc0:8dca:0:213:e8ff:feaa:ae2b] has joined
#go-nuts
02:43 -!- powerje [~powerje@2002:4cc0:8dca:0:213:e8ff:feaa:ae2b] has quit [Client
Quit]
02:55 -!- nettok [~netto@200.119.155.12] has quit [Ping timeout: 260 seconds]
02:59 -!- hevalbaranov [~hevalbara@88.247.204.111] has quit [Ping timeout: 252
seconds]
02:59 < ak2> got it
02:59 < ak2> uriel: another question
03:00 < ak2> how can i define a global array of integers but specify its
size in some function?
03:03 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 265
seconds]
03:03 -!- adu [~ajr@pool-74-96-89-29.washdc.fios.verizon.net] has joined #go-nuts
03:03 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
03:16 < uriel> ak2: pointer?
03:20 < ak2> make([][]int, n, n)?
03:20 < ak2> i've done more java in the recent past..  so, think in terms of
objects...
03:21 -!- gisikw [~gisikw@137.28.246.34] has joined #go-nuts
03:22 -!- gisikw [~gisikw@137.28.246.34] has quit [Remote host closed the
connection]
03:37 -!- hstimer [~hstimer@2002:62ea:197d:0:226:bbff:fe05:dd9b] has quit [Quit:
hstimer]
03:45 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 245
seconds]
03:47 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has quit [Quit:
This computer has gone to sleep]
03:51 -!- yatoo [~marcus@host86-158-49-120.range86-158.btcentralplus.com] has quit
[Ping timeout: 276 seconds]
03:56 -!- hstimer [~hstimer@2002:62ea:197d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
04:00 -!- monty_hall [~sprague_r@adsl-99-40-250-203.dsl.sfldmi.sbcglobal.net] has
quit [Read error: Connection reset by peer]
04:03 -!- TR2N [email@89.180.182.42] has left #go-nuts []
04:07 -!- TMKCodes [~toni@bbwirelessgw2-fee1dc00-62.dhcp.inet.fi] has quit [Ping
timeout: 264 seconds]
04:07 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
04:16 -!- kssreeram [~kssreeram@122.174.70.202] has quit [Quit: kssreeram]
04:19 -!- TMKCodes [~toni@bbwirelessgw2-fee1dc00-62.dhcp.inet.fi] has joined
#go-nuts
04:23 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
04:24 -!- monty_hall [~sprague_r@adsl-99-40-250-203.dsl.sfldmi.sbcglobal.net] has
joined #go-nuts
04:24 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 260
seconds]
04:26 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
04:44 -!- stalled [~411@unaffiliated/stalled] has quit [Excess Flood]
04:45 -!- stalled [~411@unaffiliated/stalled] has joined #go-nuts
04:55 -!- TMKCodes [~toni@bbwirelessgw2-fee1dc00-62.dhcp.inet.fi] has quit [Ping
timeout: 260 seconds]
04:55 -!- Gracenotes [~person@wikipedia/Gracenotes] has joined #go-nuts
05:06 -!- samfuqua [~sam@cpe-098-026-078-040.nc.res.rr.com] has quit [Quit: Lost
terminal]
05:07 -!- TMKCodes [~toni@bbwirelessgw2-fee1dc00-62.dhcp.inet.fi] has joined
#go-nuts
05:43 -!- TMKCodes [~toni@bbwirelessgw2-fee1dc00-62.dhcp.inet.fi] has quit [Ping
timeout: 276 seconds]
05:52 -!- kssreeram [~kssreeram@122.165.6.245] has joined #go-nuts
05:53 -!- b00m_chef [~watr@d64-180-45-230.bchsia.telus.net] has quit [Ping
timeout: 248 seconds]
05:55 -!- TMKCodes [~toni@bbwirelessgw2-fee1dc00-62.dhcp.inet.fi] has joined
#go-nuts
05:56 < anticw> ak2: am now
06:07 < ak2> anticw: got through the initial hicups
06:08 < ak2> now working on implementing an algorithm using those pieces
06:08 < ak2> and concurrency..
06:12 < hstimer> what is wrong with this:
06:12 < hstimer> v1, ok := v.(*vector.StringVector)
06:12 < hstimer> get this error: invalid type assertion:
v.(*vector.StringVector) (non-interface type *vector.StringVector on left)
06:13 < anticw> what is v?
06:13 < hstimer> *vector.StringVector
06:13 -!- tux21b [~christoph@90.146.60.30] has quit [Quit: Ex-Chat]
06:14 < anticw> you're casting a *vector.StringVector to a
*vector.StringVector ?
06:14 < hstimer> v came out of a map
06:15 < hstimer> v, exist := r.Query[key]
06:15 < anticw> a map of ?
06:15 < hstimer> make(map[string]*vector.StringVector)
06:15 -!- General13372 [~support@71-84-247-187.dhcp.gldl.ca.charter.com] has
joined #go-nuts
06:16 < anticw> so why the type assertion?
06:16 < hstimer> uhmmm....  good question......
06:19 -!- General1337 [~support@71-84-247-187.dhcp.gldl.ca.charter.com] has quit
[Ping timeout: 245 seconds]
06:19 < anticw> StringVector is string[] ...  not an interface type
06:19 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-152-125.netcologne.de] has joined
#go-nuts
06:20 < anticw> http://l:8000/doc/go_spec.html#Type_assertions
06:20 < anticw> "For an expression x of __interface type__ and a type T, the
primary expression"
06:25 < hstimer> thanks -- that helps
06:30 -!- aho [~nya@g226202175.adsl.alicedsl.de] has quit [Quit:
EXEC_over.METHOD_SUBLIMATION]
07:13 -!- kaib [~kaib@vallila-gw.hupnet.helsinki.fi] has joined #go-nuts
07:14 -!- mode/#go-nuts [+v kaib] by ChanServ
07:17 -!- Sindikat [~username@95.56.1.254] has quit [Read error: Connection reset
by peer]
07:18 -!- TMKCodes [~toni@bbwirelessgw2-fee1dc00-62.dhcp.inet.fi] has quit [Ping
timeout: 240 seconds]
07:32 -!- TMKCodes [~toni@bbwirelessgw2-fee1dc00-62.dhcp.inet.fi] has joined
#go-nuts
07:33 -!- ikaros [~ikaros@g227039211.adsl.alicedsl.de] has joined #go-nuts
07:34 -!- Sindikat [~username@95.56.36.210] has joined #go-nuts
07:40 -!- trickie [~trickie@94.100.112.225] has joined #go-nuts
07:41 -!- Garen [~garen.p@75.87.255.36] has joined #go-nuts
07:42 -!- asmo_ [~asmo@c-f6c5e055.1155-1-64736c11.cust.bredbandsbolaget.se] has
quit [Remote host closed the connection]
07:46 < ak2> anticw: there?
07:47 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-152-125.netcologne.de] has quit [Quit:
m1ndwarp]
07:47 < anticw> ak2: sorta
07:47 < ak2> ok, i coded up this function but i'm getting two errors which i
dont know how to figure out
07:47 < ak2> 1.  function doesnt return anything
07:48 < ak2> 2.  two variables declared but never used
07:48 < ak2> now..  they are being used..  and the function is returning
07:49 < anticw> w/o seeing the code / results it's hard to comment
07:50 < ak2> i'll put it up on pastebin
07:51 < ak2> http://pastebin.com/RpP71DVR
07:54 < ak2> ok got it to work
07:54 < ak2> :)
07:54 < anticw> you know :=
07:54 < anticw> in scopy makes a new var right
07:54 < anticw> ?
07:55 < anticw> s/scopy/scope/
07:55 < ak2> yes
07:55 < ak2> i missed that
07:56 < ak2> just removed that..  it worked
07:56 < ak2> but the return thing is funny..
07:56 < anticw> why?
07:56 < anticw> you have no return
07:56 < ak2> there's an if condition..  and a return at the end of that
block
07:56 < anticw> right
07:56 < ak2> and a return in the following else
07:56 < anticw> well, that's a know TODO
07:56 < anticw> known
07:56 < anticw> gah,
07:56 < ak2> is it?
07:57 < anticw> there is a bug open for the if { return } else { return }
case
07:57 < ak2> oh ok
07:57 < ak2> i wasnt aware
07:57 < ak2> i just changed the code a bit and got the return out of the if
and else blocks
07:57 < ak2> works now
07:58 < anticw> http://code.google.com/p/go/issues/detail?id=65
07:59 < ak2> hmm
08:01 < Beorann> ak2: in a way, it makes sense, because it's sueless to have
an else clause if your if clase returns
08:01 < Beorann> useless
08:01 < anticw> it's still a compiler bug though
08:01 < anticw> there are other cases where you can hit it
08:01 < ak2> Beorann: agreed
08:01 < Beorann> anticw agreed there too
08:01 < anticw> gcc used to have the same issue
08:02 < anticw> for the most part people would do " return 0 // avoid blah "
08:02 < anticw> or something
08:02 < Beorann> anticw: oh?  in version 1.0 ?
08:02 < anticw> i think 2.7.3 had it
08:02 < anticw> iant probably could tell you
08:02 < Beorann> ah...  I skipped that one I guess :p
08:02 < Beorann> anyone here who knows cgo?
08:03 < Beorann> is it still impossible to call C function callbacks?
08:03 < anticw> i think so
08:03 < Beorann> (with that I mean C function pointers)
08:03 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
08:03 < anticw> well, if the callback is into C you can fake it
08:04 < Beorann> how would I do that?
08:04 < Beorann> I'm currently wrapping the whole of SDL for my CGO library
08:04 < Beorann> one hiccup is the SDL_rwops
08:04 < Beorann> it has pointers to read() seek() close()
08:04 < anticw> i wonder if you can't put a layer in-between (done in C)
that would have the callbacks for you
08:04 < Beorann> in a structs
08:05 -!- analogue [~analogue@toulouse.jfg-networks.net] has joined #go-nuts
08:05 < anticw> then it would take the results and allow access to them via
some means
08:05 < anticw> it would be ugly but it should be possible
08:05 -!- asmo [~asmo@c83-248-32-75.bredband.comhem.se] has joined #go-nuts
08:05 < Beorann> that's another problem (bug ?) I've been having with CGO
08:06 < Beorann> normally, if you put C code in the comments above the
import "c" it's supposed to incorporate it in the cgo output.  However, I'm
getting C compile errors.
08:06 < Beorann> I do spit up my C package I'm wrapping over many cgo files.
Should that be a problem?
08:08 < anticw> the only time i tried cgo i found it a bit fragile and iffy,
so i wrote a shim to expose the APIs in a more limited manner
08:11 < Beorann> how do you write such a shim and have it compiled?
08:12 -!- recover [recover@ip21278.lbinternet.se] has joined #go-nuts
08:13 < Beorann> anticw: how do you write such a shim and have it compiled?
08:17 -!- Macpunk [~macpunk@2002:48b1:1add:0:eee:e6ff:fec7:7eaa] has joined
#go-nuts
08:20 -!- andrewh [~andrewh@94-194-56-42.zone8.bethere.co.uk] has joined #go-nuts
08:20 -!- kaigan|work
[~kaigan@c-8290e255.1411-10-64736c14.cust.bredbandsbolaget.se] has joined #go-nuts
08:23 < anticw> Beorann: i made it a .so
08:23 < Beorann> hmmmm...
08:23 -!- path[l] [UPP@120.138.102.34] has quit [Quit: path[l]]
08:23 < Beorann> maybe it would be easier to use the go compiler's api
directly?
08:24 < Beorann> I mean, it's runtime package
08:24 < Beorann> it's not portable to gccgo, nut neither is cgo, at least
for now
08:24 < anticw> you mean have an SDL wrapper call into the runtime directly?
08:25 -!- ikaros [~ikaros@g227039211.adsl.alicedsl.de] has quit [Quit: Leave the
magic to Houdini]
08:25 < Beorann> no, I mean, just like how the go runtime calls C functions
08:25 < Beorann> for that i'd have to use go's internals, though
08:26 < anticw> that's fairly specific though and can't call external code
generically
08:26 < Beorann> hmm
08:27 < Beorann> gccgo has more potential here, I guess, but it still
doesn't support garbage collection...  I wonder why dthey didn't simply link it
with boehm's gc and be done with it likey they did for Java.
08:28 -!- wrtp [~rog@89.241.130.254] has joined #go-nuts
08:29 < anticw> concurrency issues
08:30 < Beorann> oh yeah, boehm needs to be specially compiled for
multithreading, right?
08:31 < Beorann> I think gccgo will be an important project for mainstream
adoption of Go...  too bad I'm not so experienced with such low level programming.
08:32 < anticw> gccgo is almost if not entirely the work of one person,
things take time
08:36 < Beorann> agreed there, maybe that person needs help, though
08:37 < anticw> yeah, but i'm not a medical doctor
08:38 < Beorann> I mean help with programming :)
08:39 < Beorann> although it's true that visionaries often seem a bit odd to
others
08:41 < anticw> he doesn't seem odd
08:42 < Beorann> then I misunderstood you completely, I though you were
joking :p
08:43 < Beorann> anyway, anywone knows how to use CGO to wrap a C pointer to
an array to a cgo array or slice?
08:45 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-152-125.netcologne.de] has joined
#go-nuts
08:47 -!- Macpunk [~macpunk@2002:48b1:1add:0:eee:e6ff:fec7:7eaa] has quit [Ping
timeout: 248 seconds]
08:48 < anticw> if you have a C pointer use the unsafe package
08:53 -!- awidegreen [~quassel@p5B060B39.dip.t-dialin.net] has joined #go-nuts
08:55 -!- SirLancer [jhame@melkki.cs.helsinki.fi] has joined #go-nuts
08:56 < Beorann> anticw: yes, that'w whay I'm tring, but I'm not sure how..
how can I make an unsafe.Pointer into an array?
08:58 -!- niekie [~niek@CAcert/Assurer/niekie] has quit [Ping timeout: 268
seconds]
09:01 < anticw> Beorann: v := (*desiredType)unsafe.Pointer(&somethingElse)
09:02 < Beorann> oh?
09:02 < Beorann> so I first make it a *uint8 for example?
09:02 < Beorann> and then I can make a slice out of it?
09:04 < anticw> first make a large array type, [1024]byte for example
09:04 < anticw> then make a slice from that
09:04 < anticw> s/large//
09:05 -!- andrewh [~andrewh@94-194-56-42.zone8.bethere.co.uk] has quit [Read
error: Operation timed out]
09:05 -!- adu [~ajr@pool-74-96-89-29.washdc.fios.verizon.net] has quit [Quit: adu]
09:06 < Beorann> ks := C.SDL_GetKeyState(nil) ; ptr :=
(*uint8)(unsafe.Pointer(ks)) ; res := ([K_LAST]uint8)(unsafe.NewArray(ptr,
K_LAST))
09:06 -!- niekie [~niek@CAcert/Assurer/niekie] has joined #go-nuts
09:06 < Beorann> the last part doesn't work, though
09:07 < anticw> what is ptr in this case?
09:07 < anticw> bytes from SDL?
09:08 < Beorann> yes, it's a pointer to an unsigned char array that is
exactly K_LAT long (a static array)
09:08 < Beorann> K_LAST
09:08 < anticw> K_LAST is a constant?
09:08 < Beorann> yes.  so the pointer points to that static array
09:08 < Beorann> in SDL
09:09 < Beorann> SDL_GetKeyState() returns that pointer
09:13 < anticw> sec
09:14 < anticw> what is the desired type?
09:14 < anticw> slice of bytes?
09:15 -!- erus` [~chatzilla@mailgate.ips-international.com] has joined #go-nuts
09:15 < anticw> ba := (*[K_LAST]byte)(unsafe.Pointer(args))
09:16 < anticw> bs := ba[0:K_LAST]
09:16 < anticw> s/args/ptr/ sorry
09:19 -!- ogh [~ogh@denksoft.iasi.rdsnet.ro] has quit [Quit: Ex-Chat]
09:19 < Beorann> anticw: sliecof bytes or array of bytes would be nice, yes.
09:19 < Beorann> anticw: OIC, let me try :)
09:23 -!- Sindikat [~username@95.56.36.210] has quit [Read error: Connection reset
by peer]
09:26 < Beorann> anticw: Nice, it seems to work (at least no segmentation
violations)
09:27 < Beorann> the cgo preprocessor is having troubles, though, it's
failing to compile intermittently I get malloc/free deadlocks, segmentation
violations, etc.
09:30 -!- ak2 [~ak2@c-24-6-88-154.hsd1.ca.comcast.net] has quit [Quit: ak2]
09:31 -!- ak2 [~ak2@c-24-6-88-154.hsd1.ca.comcast.net] has joined #go-nuts
09:31 -!- g0bl1n [~anonymous@a213-22-200-76.cpe.netcabo.pt] has joined #go-nuts
09:38 -!- Sindikat [~username@95.56.19.138] has joined #go-nuts
09:39 < anticw> Beorann: if that ptr returned is supposed to be free'd
you'll leak doing that
09:40 -!- ct529 [~quassel@77-44-78-159.xdsl.murphx.net] has joined #go-nuts
09:43 -!- Sindikat [~username@95.56.19.138] has quit [Ping timeout: 265 seconds]
09:48 -!- ak2 [~ak2@c-24-6-88-154.hsd1.ca.comcast.net] has quit [Quit: ak2]
09:51 -!- path[l] [~path@59.162.86.164] has joined #go-nuts
09:56 -!- daed [daed@countercultured.net] has quit [Remote host closed the
connection]
09:58 -!- Sindikat [~username@95.56.17.197] has joined #go-nuts
09:59 -!- SRabbelier [~SRabbelie@ip138-114-211-87.adsl2.static.versatel.nl] has
quit [Read error: Connection reset by peer]
09:59 -!- kaib [~kaib@vallila-gw.hupnet.helsinki.fi] has quit [Ping timeout: 246
seconds]
10:03 < Beorann> anticw: non, that is a pointer to a static buffer that need
not and should not be freed.  So I'll be OK.
10:07 -!- triplez [~triplez@bb116-14-66-213.singnet.com.sg] has quit [Quit:
triplez]
10:22 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Quit: WeeChat
0.3.1.1]
10:22 -!- DizzyDoo [~chatzilla@80-46-100-222.static.dsl.as9105.com] has joined
#go-nuts
10:22 -!- crashR [~crasher@codextreme.pck.nerim.net] has quit [Remote host closed
the connection]
10:25 -!- crashR [~crasher@codextreme.pck.nerim.net] has joined #go-nuts
10:27 -!- Kashia [~Kashia@port-92-200-137-22.dynamic.qsc.de] has quit [Quit: This
computer has gone to sleep]
10:27 -!- triplez [~triplez@cm230.kappa1.maxonline.com.sg] has joined #go-nuts
10:38 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-152-125.netcologne.de] has quit [Quit:
m1ndwarp]
10:39 -!- Chryson [~joel@pool-71-162-43-17.altnpa.east.verizon.net] has joined
#go-nuts
10:42 -!- path[l] [~path@59.162.86.164] has quit [Ping timeout: 276 seconds]
10:48 -!- kaib [~kaib@vallila-gw.hupnet.helsinki.fi] has joined #go-nuts
10:48 -!- mode/#go-nuts [+v kaib] by ChanServ
11:04 -!- c0nfl|ct [tiago@95.69.99.67] has joined #go-nuts
11:09 -!- erus` [~chatzilla@mailgate.ips-international.com] has quit [Ping
timeout: 265 seconds]
11:10 -!- trepan_ [~trepan@blk-30-139-102.eastlink.ca] has joined #go-nuts
11:11 -!- rup [Rupert@deathcoil.net] has quit [Ping timeout: 256 seconds]
11:12 -!- trepan [~trepan@unaffiliated/trepan] has quit [Ping timeout: 245
seconds]
11:18 -!- rup [Rupert@deathcoil.net] has joined #go-nuts
11:20 -!- Sindikat [~username@95.56.17.197] has quit [Read error: Connection reset
by peer]
11:22 -!- ikke [~ikkibr@unaffiliated/ikkebr] has joined #go-nuts
11:24 -!- c0nfl|ct [tiago@95.69.99.67] has quit [Quit: Saindo]
11:28 -!- kaib [~kaib@vallila-gw.hupnet.helsinki.fi] has quit [Quit: kaib]
11:35 -!- Sindikat [~username@89.218.5.182] has joined #go-nuts
11:52 -!- afurlan [~afurlan@scorpion.mps.com.br] has joined #go-nuts
11:53 -!- vdrab [~vdrab@61.206.229.226] has joined #go-nuts
11:56 -!- yatoo [~marcus@host86-158-49-120.range86-158.btcentralplus.com] has
joined #go-nuts
12:00 -!- erus` [~chatzilla@mailgate.ips-international.com] has joined #go-nuts
12:03 -!- jhnx [~bd730cde@gateway/web/freenode/x-mymoktoibzabnoay] has joined
#go-nuts
12:04 -!- vdrab [~vdrab@61.206.229.226] has quit [Ping timeout: 265 seconds]
12:04 -!- Sindikat [~username@89.218.5.182] has quit [Ping timeout: 265 seconds]
12:05 -!- DizzyDoo [~chatzilla@80-46-100-222.static.dsl.as9105.com] has quit
[Quit: ChatZilla 0.9.86 [Firefox 3.5.8/20100202165920]]
12:10 -!- kssreeram [~kssreeram@122.165.6.245] has quit [Quit: kssreeram]
12:12 -!- Chryson [~joel@pool-71-162-43-17.altnpa.east.verizon.net] has left
#go-nuts []
12:18 -!- Sindikat [~username@95.56.45.219] has joined #go-nuts
12:21 -!- alkavan [~alkavan@77.126.122.161] has joined #go-nuts
12:22 -!- kota1111 [~kota1111@gw2.kbmj.jp] has quit [Quit: Leaving...]
12:24 -!- tty [~tty@telcom-143-233-227-121.iit.demokritos.gr] has joined #go-nuts
12:25 -!- tty [~tty@telcom-143-233-227-121.iit.demokritos.gr] has quit [Client
Quit]
12:26 -!- nighty__ [~nighty@210.188.173.245] has quit [Ping timeout: 252 seconds]
12:38 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has joined #go-nuts
12:41 -!- nanoo [~nano@95-89-189-46-dynip.superkabel.de] has joined #go-nuts
12:43 -!- bmm [~bram@office.ytec.nl] has joined #go-nuts
12:55 -!- awidegreen_ [~quassel@p5B06158C.dip.t-dialin.net] has joined #go-nuts
12:56 -!- awidegreen [~quassel@p5B060B39.dip.t-dialin.net] has quit [Ping timeout:
265 seconds]
12:56 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has quit [Read error: Operation
timed out]
13:05 -!- alkavan_ [~alkavan@87.68.76.88.cable.012.net.il] has joined #go-nuts
13:05 -!- alkavan [~alkavan@77.126.122.161] has quit [Ping timeout: 256 seconds]
13:07 -!- vdrab [~vdrab@61.206.229.226] has joined #go-nuts
13:10 -!- asmo [~asmo@c83-248-32-75.bredband.comhem.se] has quit [Remote host
closed the connection]
13:10 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-152-125.netcologne.de] has joined
#go-nuts
13:11 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has joined #go-nuts
13:12 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-152-125.netcologne.de] has quit [Client
Quit]
13:22 -!- erus`_ [~chatzilla@mailgate.ips-international.com] has joined #go-nuts
13:23 -!- erus` [~chatzilla@mailgate.ips-international.com] has quit [Ping
timeout: 246 seconds]
13:25 -!- Project_2501 [~Marvin@82.84.69.99] has joined #go-nuts
13:26 -!- crashR [~crasher@codextreme.pck.nerim.net] has quit [Quit: Leaving.]
13:27 -!- erus` [~chatzilla@mailgate.ips-international.com] has joined #go-nuts
13:28 -!- crashR [~crasher@codextreme.pck.nerim.net] has joined #go-nuts
13:28 -!- erus`_ [~chatzilla@mailgate.ips-international.com] has quit [Ping
timeout: 258 seconds]
13:31 -!- crashR [~crasher@codextreme.pck.nerim.net] has quit [Remote host closed
the connection]
13:32 -!- crashR [~crasher@codextreme.pck.nerim.net] has joined #go-nuts
13:32 -!- crashR [~crasher@codextreme.pck.nerim.net] has quit [Client Quit]
13:33 -!- awidegreen_ [~quassel@p5B06158C.dip.t-dialin.net] has quit [Remote host
closed the connection]
13:34 -!- crashR [~crasher@codextreme.pck.nerim.net] has joined #go-nuts
13:35 -!- awidegreen [~quassel@p5B06158C.dip.t-dialin.net] has joined #go-nuts
13:37 < Sindikat> did anyone try to create a roguelike on Go?
13:38 -!- vdrab [~vdrab@61.206.229.226] has quit [Read error: Connection reset by
peer]
13:39 -!- vdrab [~vdrab@61.206.229.226] has joined #go-nuts
13:43 -!- vdrab [~vdrab@61.206.229.226] has quit [Ping timeout: 265 seconds]
13:47 -!- kaigan|work
[~kaigan@c-8290e255.1411-10-64736c14.cust.bredbandsbolaget.se] has quit [Remote
host closed the connection]
13:48 -!- kaigan|work
[~kaigan@c-8290e255.1411-10-64736c14.cust.bredbandsbolaget.se] has joined #go-nuts
13:51 -!- garbeam [~arg@212.13.194.175.rev.bitfolk.com] has quit [Ping timeout:
264 seconds]
13:51 -!- garbeam [~arg@212.13.194.175.rev.bitfolk.com] has joined #go-nuts
13:51 -!- kaigan|work
[~kaigan@c-8290e255.1411-10-64736c14.cust.bredbandsbolaget.se] has quit [Client
Quit]
13:52 -!- kaigan|work
[~kaigan@c-8290e255.1411-10-64736c14.cust.bredbandsbolaget.se] has joined #go-nuts
13:56 -!- TR2N [email@89-180-235-168.net.novis.pt] has joined #go-nuts
13:58 < uriel> Sindikat: I think so, see http://go-lang.cat-v.org/go-code
for some links to some games
13:59 -!- illya77 [~illya77@74-60-95-178.pool.ukrtel.net] has joined #go-nuts
14:00 -!- pshahmumbai [~prashant@58.146.97.184] has joined #go-nuts
14:10 < no_mind> I want to check if a given string has unclosed quotes or
brackets.  What do i use, regexp or strings ?
14:11 -!- noam [~k4jd095b@87.70.183.61] has quit [Read error: Connection reset by
peer]
14:11 -!- noam [~k4jd095b@87.70.183.61] has joined #go-nuts
14:16 < wrtp> no_mind: what style of quotes?
14:17 < no_mind> double quotes
14:17 < no_mind> right now using strings.Count
14:17 -!- pshahmumbai [~prashant@58.146.97.184] has quit [Ping timeout: 246
seconds]
14:18 < wrtp> you have to cope with \"
14:19 < ahihi> a pushdown automaton maybe?
14:21 < wrtp> i'd just code it - it'll only be about 5 lines of code
14:22 -!- kmeyer [~konrad@fedora/kmeyer] has quit [Ping timeout: 248 seconds]
14:23 -!- analogue [~analogue@toulouse.jfg-networks.net] has quit [Ping timeout:
248 seconds]
14:23 < no_mind> ahihi, that is my question, how do I code the push down
automata in GO
14:25 -!- Demp [~Demp@bzq-79-179-21-193.red.bezeqint.net] has quit [Read error:
Connection reset by peer]
14:25 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-152-125.netcologne.de] has joined
#go-nuts
14:25 < Sindikat> uriel: awesome, thank you very much!  i've found:
http://github.com/rsaarelm/teratogen
14:25 -!- mennis_ [~mennis@adsl-065-012-170-146.sip.asm.bellsouth.net] has joined
#go-nuts
14:26 -!- Demp [~Demp@bzq-109-66-49-66.red.bezeqint.net] has joined #go-nuts
14:27 < plexdev> http://is.gd/9XxVO by [Adam Langley] in
go/src/pkg/crypto/rsa/ -- crypto/rsa: don't use safe primes.
14:28 -!- analogue [~analogue@toulouse.jfg-networks.net] has joined #go-nuts
14:30 -!- Demp [~Demp@bzq-109-66-49-66.red.bezeqint.net] has quit [Ping timeout:
252 seconds]
14:39 < wrtp> no_mind: something like this should work ok.
http://paste.lisp.org/display/96100
14:40 < wrtp> there are other ways of doing it
14:40 -!- GabydeWilde_ [~gabydewil@84-104-135-141.cable.quicknet.nl] has left
#go-nuts ["http://blog.go-here.nl"]
14:44 < wrtp> no_mind: was that the kind of thing you were trying to do?
14:47 < no_mind> wrtp, looking at code
14:48 -!- kmeyer [~konrad@homer23.u.washington.edu] has joined #go-nuts
14:48 -!- kmeyer [~konrad@homer23.u.washington.edu] has quit [Changing host]
14:48 -!- kmeyer [~konrad@fedora/kmeyer] has joined #go-nuts
14:48 < wrtp> no_mind: here'
14:49 < wrtp> s another version: http://paste.lisp.org/+225G/1
14:49 < no_mind> wrtp, thanxs, got it working
14:50 -!- asmo [~asmo@c-f6c5e055.1155-1-64736c11.cust.bredbandsbolaget.se] has
joined #go-nuts
14:50 < wrtp> (NB.  the second version only works because strings are utf-8
encoded)
14:52 -!- gnuvince_ [~vince@64.235.204.246] has joined #go-nuts
14:55 -!- gnuvince [~vince@206.71-ppp.3menatwork.com] has quit [Ping timeout: 276
seconds]
15:08 -!- mennis_ [~mennis@adsl-065-012-170-146.sip.asm.bellsouth.net] has left
#go-nuts []
15:08 -!- ericvh [~ericvh@32.97.110.63] has joined #go-nuts
15:09 -!- fusion44 [~quassel@p5B2832DB.dip.t-dialin.net] has joined #go-nuts
15:11 -!- cbeck [~cbeck@c-67-170-181-181.hsd1.or.comcast.net] has quit [Ping
timeout: 276 seconds]
15:15 -!- bmm [~bram@office.ytec.nl] has quit [Ping timeout: 258 seconds]
15:17 -!- mssm [~mssm@ip-95-221-117-29.bb.netbynet.ru] has joined #go-nuts
15:17 -!- asmo [~asmo@c-f6c5e055.1155-1-64736c11.cust.bredbandsbolaget.se] has
quit [Read error: Connection reset by peer]
15:17 -!- asmo [~asmo@c-f6c5e055.1155-1-64736c11.cust.bredbandsbolaget.se] has
joined #go-nuts
15:22 -!- pshahmumbai [~prashant@58.146.97.236] has joined #go-nuts
15:27 -!- kaigan|work
[~kaigan@c-8290e255.1411-10-64736c14.cust.bredbandsbolaget.se] has quit [Quit:
kaigan|work]
15:33 -!- kaib [~kaib@cs78210195.pp.htv.fi] has joined #go-nuts
15:34 -!- mode/#go-nuts [+v kaib] by ChanServ
15:39 -!- kssreeram [~kssreeram@122.174.70.202] has joined #go-nuts
15:40 -!- path[l] [~path@59.162.86.164] has joined #go-nuts
15:41 -!- hstimer [~hstimer@2002:62ea:197d:0:226:bbff:fe05:dd9b] has quit [Quit:
hstimer]
15:46 -!- The_Cog [~chatzilla@i-195-137-123-15.freedom2surf.net] has joined
#go-nuts
16:00 -!- DerHorst [~Horst@e176096008.adsl.alicedsl.de] has joined #go-nuts
16:01 -!- kaib [~kaib@cs78210195.pp.htv.fi] has quit [Quit: kaib]
16:05 -!- sea-gull [2059@friedman.ivoltaire.org] has joined #go-nuts
16:07 -!- DerHorst [~Horst@e176096008.adsl.alicedsl.de] has quit [Remote host
closed the connection]
16:07 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]]
16:08 -!- path[l] [~path@59.162.86.164] has joined #go-nuts
16:10 -!- sea-gull [2059@friedman.ivoltaire.org] has left #go-nuts []
16:13 -!- rhelmer [~rhelmer@adsl-69-107-82-254.dsl.pltn13.pacbell.net] has joined
#go-nuts
16:14 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
16:16 -!- DerHorst [~Horst@e176096008.adsl.alicedsl.de] has joined #go-nuts
16:19 -!- kaib [~kaib@cs78210195.pp.htv.fi] has joined #go-nuts
16:19 -!- mode/#go-nuts [+v kaib] by ChanServ
16:21 -!- crashR [~crasher@codextreme.pck.nerim.net] has quit [Ping timeout: 260
seconds]
16:26 -!- trickie [~trickie@94.100.112.225] has quit [Read error: Operation timed
out]
16:31 -!- erus` [~chatzilla@mailgate.ips-international.com] has quit [Remote host
closed the connection]
16:31 -!- CodeBlock [~CodeBlock@about/windows/regular/CodeBlock] has quit [Ping
timeout: 264 seconds]
16:32 -!- cbeck [~cbeck@c-67-170-181-181.hsd1.or.comcast.net] has joined #go-nuts
16:36 -!- CodeBlock [~CodeBlock@about/windows/regular/CodeBlock] has joined
#go-nuts
16:41 -!- hstimer [~hstimer@2002:465a:aa25:0:226:bbff:fe05:dd9b] has joined
#go-nuts
16:43 -!- rhelmer [~rhelmer@adsl-69-107-82-254.dsl.pltn13.pacbell.net] has quit
[Quit: rhelmer]
16:47 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has quit [Quit: Leaving.]
16:53 -!- Venom_X [~pjacobs@adsl-99-3-159-249.dsl.hstntx.sbcglobal.net] has joined
#go-nuts
16:55 -!- nanoo [~nano@95-89-189-46-dynip.superkabel.de] has quit [Quit: Leaving]
16:59 -!- rup [Rupert@deathcoil.net] has quit [Ping timeout: 276 seconds]
17:00 -!- path[l] [~path@59.162.86.164] has quit [Quit: path[l]]
17:00 -!- rup [Rupert@deathcoil.net] has joined #go-nuts
17:03 -!- erus` [~chatzilla@cpc2-gill2-0-0-cust265.basl.cable.virginmedia.com] has
joined #go-nuts
17:06 -!- ampleyfly
[~ampleyfly@c-4d8fe555.09-36-6c6b7013.cust.bredbandsbolaget.se] has joined
#go-nuts
17:06 < ampleyfly> so I'm wondering if there's a way to get the size of an
int
17:11 -!- erus` [~chatzilla@cpc2-gill2-0-0-cust265.basl.cable.virginmedia.com] has
quit [Read error: Connection reset by peer]
17:14 <+kaib> ampleyfly: why would you be interested in the size?
17:14 < wrtp> x := int(-1)
17:14 < wrtp> fmt.Printf("%x\n", (uint(x) >> 1))
17:14 -!- pshahmumbai [~prashant@58.146.97.236] has quit [Quit: Ex-Chat]
17:14 < wrtp> or did you mean the size in bytes?
17:15 < wrtp> oh actually, fmt.Printf("%d\n", ~0) will do
17:15 < wrtp> i mean ^0 of course
17:16 < wrtp> hmm, no it doesn't
17:16 < ampleyfly> kaib: I want to use int/uint instead of explicitly
specifying the sizes, but I still need to know when I do some bit manipulation
17:17 -!- Chryson [~Chryson@pool-71-162-43-17.altnpa.east.verizon.net] has joined
#go-nuts
17:17 <+iant> you can use unsafe.Sizeof
17:17 <+iant> but I would recommend using the explicit int sizes
17:18 -!- rup [Rupert@deathcoil.net] has quit [Ping timeout: 256 seconds]
17:19 -!- erus` [~chatzilla@cpc2-gill2-0-0-cust265.basl.cable.virginmedia.com] has
joined #go-nuts
17:19 < ampleyfly> hrm, oh well
17:20 < ampleyfly> why is sizeof considered to "step around the type
safety"?
17:20 -!- Sindikat [~username@95.56.45.219] has quit [Read error: Connection reset
by peer]
17:21 < wrtp> ampleyfly: why not just use int32?
17:21 < ampleyfly> I figured it would be nice to use 64 bits if it was
available
17:21 < wrtp> it's always available...
17:21 <+iant> abstractly, types just represent sets of values, and the size
is irrelevant
17:21 < JBeshir> Both are always available.
17:22 -!- Venom_X [~pjacobs@adsl-99-3-159-249.dsl.hstntx.sbcglobal.net] has quit
[Quit: Venom_X]
17:22 < ampleyfly> well, int and uint have implementation-specific sizes,
probably picked for some reason
17:22 -!- crakrjak [~merc@rrcs-70-62-156-154.central.biz.rr.com] has joined
#go-nuts
17:23 < ampleyfly> but maybe it doesn't make much of a difference
17:23 < wrtp> iant: but i can see ampleyfly's point, to an extent - some bit
manipulation operations require knowing the size of a type; i can't really see why
there's not a constant defining the size of a given implementations int and float
types.
17:24 <+iant> for cases where you need to know the size of type, use the
types with explicit sizes
17:24 <+iant> for those very odd cases where you can't, there is
unsafe.Sizeof
17:24 <+iant> don't avoid the explicitly sized types for efficiency reasons,
it's extremely unlikely to make any actual difference
17:24 < ct529> hi!  I am a go newbie ....  I would like to move some
statistical software I have written in R to the go language ....  can I ask some
questions?
17:24 < wrtp> iant: but presumably the sizes of int and uint are chosen for
efficiency on the given implementation, so it would make sense to use them
17:25 <+iant> it makes sense to use them when the size doesn't matter
17:25 <+iant> because it saves you having to think about the size
17:25 <+iant> ct529: you can just ask, you don't need to ask whether you can
ask
17:27 < ct529> iant: I have really three questions: (1) is there a very very
simple example of a "parallell" program in go, that uses several cpus to make a
vector / matrix calculation, for example using for cycle?
17:27 < wrtp> sometimes the interface is defined using ints (e.g.
sort.IntArray), but internally the size might matter for some algorithm
17:27 < ampleyfly> so I would prefer using int and uint for the most part,
but in this specific bit manipulation part of the program I really need to know
the size, do i use uint32 for the parameters and cast the actual arguments, or do
i use uint for the parameters and do the casting inside the function?
17:27 < ct529> iant: I have read the available documentation, but hardly
understood anything ....  :(
17:27 < ampleyfly> I mean conversion, of course.
17:28 < wrtp> ampleyfly: i think you're better to use uint32 for the
parameters
17:28 <+iant> ct529: I don't know; there is
http://code.google.com/p/gomatrix/ but I don't know how parallel it is
17:28 <+iant> there are many packages listed at http://go-lang.cat-v.org/
17:29 < wrtp> ampleyfly: ...  but given you're guaranteed 32 bits, you might
just use int/uint and cast it inside
17:29 < ct529> iant: I thought go lang was ideal for using more than one
core / cpu, but I am finding it hard to understand exactly how?
17:29 < ampleyfly> it would save the ugly conversions in every call
17:29 <+iant> ct529: Go makes it very easy to start a new function running
on a separate CPU, using the go statement
17:30 < wrtp> ampleyfly: yes, particularly if you're using e.g.  []int
17:30 < ct529> iant: but I have read the documentation available on the
website and did not understand really ....
17:30 < ct529> iant: how does that help to split the computational load ....
17:31 -!- Venom_X [~pjacobs@adsl-99-3-159-249.dsl.hstntx.sbcglobal.net] has joined
#go-nuts
17:32 <+iant> ct529: I'm not sure how to answer that; there are many
variables, but in general if you can do work in parallel, your program will run
faster if you do the parallel work on separate CPUS
17:32 <+iant> because then the parallel work can be done in, well, parallel
17:32 <+iant> what sort of answer are you looking for?
17:32 < ct529> iant: yes, I know that!  :D ....  I mean how to implent it in
go ....
17:32 <+iant> using the go statement
17:33 <+iant> did you read the "Effective Go" document on the golang.org web
site?
17:33 < ct529> iant: for a simple example: if you have a for cycle that
simply sums two number and runs 10000 times ....  you can just split it is two and
then puts things together at the end
17:33 < ct529> iant: yes
17:33 <+iant> ct529: yes
17:33 < wrtp> ct529: func count(n big) {for j := 0; j < n; j++){}} func
main(){go count(0xffffffffffff); go count(0xffffffffffff)}
17:33 < ct529> iant: did not understand a thing ....  I think it has been
written with different people in mind
17:34 <+iant> ct529: it's definitely aimed at experienced programmers; wrtp
just gave you an example of the go statement
17:34 < ct529> iant: exactly ....  can I say I did not understand a thing
again?
17:34 -!- kaib_ [~kaib@cs78242103.pp.htv.fi] has joined #go-nuts
17:34 -!- mode/#go-nuts [+v kaib_] by ChanServ
17:34 -!- kaib [~kaib@cs78210195.pp.htv.fi] has quit [Quit: kaib]
17:35 < ct529> iant: I would say I am quite experienced ....  R, java, php
....  but I am finding the language very difficult
17:35 < wrtp> ct529: that example starts two independent functions, each
counting up to a large number.  on two processors, it'll run twice as fast.
17:35 -!- nanoo [~nano@95-89-189-46-dynip.superkabel.de] has joined #go-nuts
17:35 < wrtp> ct529: where do you get to in the Effective Go document before
you stop understanding it?
17:36 < ct529> wrtp: wait
17:36 < ampleyfly> while I'm in here, why do files created by go have no
permissions set and how do I change this?
17:36 -!- Venom_X [~pjacobs@adsl-99-3-159-249.dsl.hstntx.sbcglobal.net] has quit
[Ping timeout: 265 seconds]
17:36 < ct529> wrtp: I had serious problems with slices (and maps)
17:36 < wrtp> ampleyfly: by the tool set (e.g.  8g) or by your go program?
17:36 <+iant> ampleyfly: the mode of the file is the third argument to
os.Open when using os.O_CREATE
17:37 < ampleyfly> wrtp: by my program
17:37 < ct529> wrtp: and then Concurrency is really impossible for me
17:37 < ct529> wrtp: (the chapter Concurrency)
17:37 <+iant> ct529: can you ask specific questions?  it's hard to answer in
general
17:37 < wrtp> ct529: slices are just arrays
17:38 < wrtp> ct529: they're distinguished in Go from arrays because they
carry their length around with them
17:38 < wrtp> ct529: and they're passed by reference, not value.  i.e.  if i
do: x := []int{3,5,6}; y := x; y[0] = 99;
17:39 < wrtp> ct529 then x[0] is also 99
17:39 < ct529> iant: it is very specific ....  you have a for cycle, that
sums 10000 times (x1+x2+x3+x4 .....+ x10000).  You want to split the load equally
on two cpus and then put the entire things together.
17:39 < wrtp> ct529: whereas if i do x := [3]int{3,5,6}; y := x; y[0] = 99
17:39 < wrtp> ct529: then x[0] is unchanged
17:40 < wrtp> ct529: then write a function that can do half the work
17:40 < ampleyfly> iant: oh right, thanks
17:40 < wrtp> ct529: start it going twice
17:40 < ampleyfly> wrtp: and thank you too
17:40 < ct529> wrtp: so slices are like linked arrays?
17:40 < wrtp> ct529: get the results
17:40 <+iant> ct529: func sum(a []int, start, end int) int { sum := 0; for i
:= start; i < end; i++ { sum += a[i] } return sum }
17:40 < wrtp> ct529: and add 'em up
17:41 < m1ndwarp> ct529: you can imagine slices like things, that point to
parts of arrays and being useable like arrays for practical reasons
17:41 -!- remote [~remote@unaffiliated/remote] has joined #go-nuts
17:41 < ct529> wrtp: iant: it was only an example I wanted to use for
studying the go command and aprallel execution ....  that is what I want to
understand
17:41 <+iant> actually I need a channel to really make it work
17:41 < ct529> m1ndwarp: so they are like "slices of arrays"?
17:41 <+iant> and I don't really need begin and end
17:42 <+iant> so how about
17:42 < m1ndwarp> yes :D
17:42 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts
17:42 <+iant> func sum(a []int, c chan int) { sum := 0; for _, v := range a
{ sum += v }; c <- sum }
17:42 < ct529> m1ndwarp: and why can they be linked together, whilst arrays
cannot?
17:42 <+iant> then you can write
17:43 < m1ndwarp> ct529: as far as I know, they can't
17:43 < m1ndwarp> you can let a slice be a slice of another slice
17:43 <+iant> var c1, c2 chan int; go sum(a[0:5000], c1); go sum(a[5001:],
c2); return <-c1 + <-c2
17:43 < m1ndwarp> which is slice of an array
17:43 < m1ndwarp> if you mean that
17:43 < ct529> m1ndwarp: oh ....  a slice of the same size?
17:43 < m1ndwarp> same or bigger
17:44 < wrtp> c := make(chan int); go sum(a[0:5000], c); go sum(a[5001:],
c); return <-c + <-c
17:44 < m1ndwarp> that's very useful if you divide a problem to goroutines
17:44 < m1ndwarp> in a tree structure
17:44 < ct529> iant: oh ....  I begin to understand ....  so how does the
function know the two gos have finished?
17:44 < wrtp> no need to use to channels, and they need to be made first
17:44 < wrtp> s/to/two/
17:44 <+iant> wrtp: yes, thanks
17:44 < m1ndwarp> ct529: I would synchronize through a simple channel
17:44 <+iant> ct529: the sum function sends the sum on a channel when it is
done
17:45 <+iant> the caller receives the values when they are ready
17:45 < ct529> m1ndwarp: I have seriously difficulty in udnestanding the
concept of channel ....
17:45 < m1ndwarp> ct529: it's like a fifo buffer
17:45 < wrtp> ct529: slices are exactly "slices of arrays"
17:45 < m1ndwarp> you put a value in, and receive it on the other side
17:45 < ct529> m1ndwarp: so channels are like "separate enclosed threads"
that run on sperate cpus?
17:45 < ampleyfly> can I do static variables in functions, or is global
variables the only way?
17:46 <+iant> no, a channel is not a thread
17:46 < m1ndwarp> if buffer size is 0, then the sender and receiver wait,
until there is sent or received something
17:46 <+iant> a channel is a buffer
17:46 < m1ndwarp> no, they're a data structure
17:46 < wrtp> ct529: channels are like a postage system - you post a value
in and you can receive the value the other end
17:46 <+iant> ampleyfly: there is no equivalent to C-like function-static
variables, although you can closures to get an approximation of them
17:46 <+iant> channels are like a Unix pipe
17:46 < wrtp> ct529: except that you use the same channel for both receiving
and sending
17:47 < m1ndwarp> they don't run...  only when one thread writes to a
channel whose buffer is full, will yield and return when another thread received
on that channel
17:47 < ct529> but if a channel is just a buffer, what is the use in
parallel processing?
17:47 <+iant> they give you a way to transmit a value from one thread to
another
17:47 < m1ndwarp> ct529: message passing
17:47 <+iant> the very question you just asked a moment ago
17:47 < m1ndwarp> very basic parallel processing concept :)
17:47 < wrtp> ct529: channels are the glue that binds the parallel threads
together
17:47 < m1ndwarp> for synchronisation
17:47 < ct529> from the doc I udnerstood they were like the "place" where
the parallel functions were executed ....
17:47 < m1ndwarp> you have shared memory and message passing, go can do both
and for message passing it uses channels
17:47 <+iant> no
17:48 < wrtp> ct529: they're an incredibly useful primitive operation, and
one on which it's easy to build lots of things
17:48 < wrtp> ct529: channels are just a way to pass values around in a
thread-safe manner
17:49 < ampleyfly> why am I allowed to have unused functions, but not unused
variables?
17:49 < ct529> wrtp: so going back to the example of the sum ....  I create
a channel for each go call to function (each one executed on a different CPU) and
then I collect the output at the end and sum them together?
17:49 < wrtp> ct529: the code ian posted earlier does it
17:49 < ct529> wrtp: yes, exactly ....  that is what I am trying to
understand
17:49 <+iant> ct529: you don't actually need to create a different channel
for each call, you can reuse the same channel
17:50 <+iant> but, otherwise, yes
17:50 < wrtp> ct529: and you can use the same channel because you don't care
what order your addition is performed
17:50 < ct529> wrtp: so I do not need to create a different channel ....
17:50 <+iant> ampleyfly: unused variables can indicate a program error in
use of :=, unused functions are harmless (and are discarded by the linker)
17:50 < ct529> wrtp: when do I need to create a channel?
17:50 < wrtp> ct529: for non-commutative operation, you'd need a channel for
each process
17:50 < m1ndwarp> ct529: that's a question of design
17:50 -!- gidler [jmaatta@lakka.kapsi.fi] has left #go-nuts []
17:50 < wrtp> ct529: you need to "make" a channel before you can use it
17:51 < ampleyfly> iant: is there a way to get around the first short of
commenting the variables out/using _?
17:51 <+iant> no, those are the only ways
17:51 < ct529> wrtp: so where does the code that iant send create the
channel?
17:51 < wrtp> ct529: but if you're asking when to use a channel, it's like
asking when to use an array, or a linked-list...
17:52 < m1ndwarp> ct529: just remember that there is no implicit possibility
for the receiver to find out where the message in the channel came from
17:52 < wrtp> ct529: did you see my code below ian's?
17:52 <+iant> ct529: I forgot to do that, see the note by wrtp
17:52 < wrtp> ct529; ian's code didn't create the channel - mine did
17:52 < m1ndwarp> either there is only one sender or it has to be sent be
sent explicitly through a struct which the channel is typed of
17:52 < ct529> wrtp: oh I see ....  the non cmmutative bit I mean ....  so
if the operation is non commutative I have to open the n channels and then wait at
the end that all the operation finish and then put it together ....
17:52 < wrtp> c := make(chan int); go sum(a[0:5000], c); go sum(a[5001:],
c); return <-c + <-c
17:53 < m1ndwarp> or the order has to be made clear by control flow (like
consumer producer processes)
17:53 < wrtp> ct529: there are other approaches too.  it's called fold in
some languages (reduce in others)
17:53 < ct529> wrtp: thanks
17:53 -!- Macpunk [~macpunk@2002:48b1:1add:0:eee:e6ff:fec7:7eaa] has joined
#go-nuts
17:54 < wrtp> oh, and actually it should be: c := make(chan int); go
sum(a[0:5000], c); go sum(a[5000:], c); return <-c + <-c
17:54 < ct529> wrtp: is it compulsory the creation of the channel, for
commutative functions?  or is it created automatically?
17:54 -!- Xera^ [~brit@87-194-208-246.bethere.co.uk] has joined #go-nuts
17:54 < wrtp> note that a[0:5000] does not include the 5000th element
17:54 < ct529> wrtp: does not?
17:54 < wrtp> ct529: indeed.  a[0:0] is a zero length slice
17:55 < wrtp> ct529: a[0:len(a)] is the whole array
17:55 <+iant> ct529: if you want a channel, you have to call make to get it
17:55 < wrtp> a[len(a)] is a bounds error
17:56 < ct529> wrtp: oh ....  can I run the code on two (or more) CPUs
without creating a channel?
17:56 < wrtp> ct529: your best bet is to play around with a very simple go
program, and see what's going on
17:56 <+iant> ct529: yes, you can use the go statement without creating a
channel
17:56 < wrtp> ct529: you can - but you'll have difficulty coordinating the
different parts of the code
17:56 <+iant> ct529: but then you can't safely aggregate the results
17:56 < ct529> wrtp: yes, that is exactly what I wanted to do ....  but I
got stuck ....
17:57 < wrtp> ct529: why don't you take ian's code and run it?
17:57 < ct529> wrtp: thanks a lot for the code you passed me ....  those are
very good very simple example ....  why don't you add them to the documentation?
17:57 < ct529> thanks also to iant
17:57 < wrtp> ct529: note that if you really want it to run on >1
processor, you need to set GOMAXPROCS
17:58 <+iant> I think if you go back to the docs now you will find them much
clearer
17:58 < ct529> iant: not really ....  :) ....  I finally understood them
here ....  I could not really make sense of the documentation sorry!
17:59 < ct529> wrtp: GOMAXPROCS ....  thanks ....
17:59 -!- wrtp [~rog@89.241.130.254] has quit [Quit: wrtp]
17:59 < ct529> wrtp: by the way, would that work only on cores on the same
machine or also on CPUs spread on more machines?  and what about GPU cores?
18:00 < ct529> iant: but it could also be all the explanations you,
m1ndwarp, wrtp put together ....  but I finally made sense of it!
18:00 < ct529> thanks a lot
18:01 -!- verma [~verma@173-21-32-42.client.mchsi.com] has quit [Ping timeout: 264
seconds]
18:02 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Ping
timeout: 240 seconds]
18:05 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts
18:05 -!- mode/#go-nuts [+v iant] by ChanServ
18:05 -!- Chryson [~Chryson@pool-71-162-43-17.altnpa.east.verizon.net] has quit
[Quit: Leaving]
18:06 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
18:08 -!- bmm [~bram@195-240-186-6.ip.telfort.nl] has joined #go-nuts
18:10 -!- path[l]_ [UPP@120.138.102.34] has joined #go-nuts
18:12 -!- path[l] [UPP@120.138.102.34] has quit [Ping timeout: 245 seconds]
18:14 -!- rhelmer [~rhelmer@38.112.6.110] has joined #go-nuts
18:14 -!- nanoo [~nano@95-89-189-46-dynip.superkabel.de] has quit [Quit: Leaving]
18:15 -!- ak2 [~ak2@c-24-6-88-154.hsd1.ca.comcast.net] has joined #go-nuts
18:15 -!- General1337 [~support@71-84-247-187.dhcp.gldl.ca.charter.com] has joined
#go-nuts
18:16 < anticw> iant: has there been and discussion on idiomatic behavior
for code that returns a result and an error/EOF ?
18:19 -!- General13372 [~support@71-84-247-187.dhcp.gldl.ca.charter.com] has quit
[Ping timeout: 246 seconds]
18:20 <+iant> anticw: as you know many functions return a real value and
also an os.Error value; I think that is fairly idiomatic at this point
18:23 < anticw> iant: yes, and looking at callers *most* seem to accept you
can get say, useful data + EOF
18:24 -!- b00m_chef [~watr@d64-180-45-230.bchsia.telus.net] has joined #go-nuts
18:24 < anticw> iant: basically, doing n, err := foo.Read() if err != nil {
break }
18:24 < anticw> is a bug
18:24 < anticw> i would argue
18:25 < anticw> (well, depending on the surrounding code, but to discard the
result on error/EOF is a bug)
18:30 -!- path[l]_ [UPP@120.138.102.34] has quit [Ping timeout: 245 seconds]
18:31 -!- AlbertDS [~AlbertDS@80.229.91.29] has joined #go-nuts
18:32 -!- bmm [~bram@195-240-186-6.ip.telfort.nl] has quit [Ping timeout: 245
seconds]
18:39 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
18:40 -!- rhelmer [~rhelmer@38.112.6.110] has quit [Quit: rhelmer]
18:43 -!- idr0 [~idr0@e179146080.adsl.alicedsl.de] has joined #go-nuts
18:44 -!- rup [Rupert@deathcoil.net] has joined #go-nuts
18:47 -!- illya77 [~illya77@74-60-95-178.pool.ukrtel.net] has quit [Ping timeout:
240 seconds]
18:47 < ct529> iant
18:49 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-152-125.netcologne.de] has quit [Ping
timeout: 246 seconds]
18:51 -!- erus` [~chatzilla@cpc2-gill2-0-0-cust265.basl.cable.virginmedia.com] has
quit [Remote host closed the connection]
18:51 -!- c0nfl|ct [tiago@89.214.152.160] has joined #go-nuts
18:53 < ct529> iant: what am I doing wrong?  http://paste.ubuntu.com/391219/
18:54 -!- franksalim [~frank@adsl-75-61-84-181.dsl.pltn13.sbcglobal.net] has quit
[Quit: Ex-Chat]
18:55 -!- rup [Rupert@deathcoil.net] has quit [Ping timeout: 246 seconds]
18:55 -!- rhelmer [~rhelmer@adsl-71-139-219-78.dsl.snfc21.pacbell.net] has joined
#go-nuts
18:56 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-132-26.netcologne.de] has joined #go-nuts
18:56 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
18:58 < ct529> m1ndwarp: can I disturb you again?  I wrote that
http://paste.ubuntu.com/391219/, but it does not seem to work
18:58 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
19:00 < ct529> m1ndwarp: so it returns results but the results are some
strange numbers which looks very much like addresses ....  and the order of
execution of the sum is completely random ....
19:04 -!- path[l] [UPP@120.138.102.34] has quit [Ping timeout: 240 seconds]
19:04 -!- carllerche [~carllerch@enginey-9.border1.sfo002.pnap.net] has joined
#go-nuts
19:06 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
19:06 -!- Macpunk [~macpunk@2002:48b1:1add:0:eee:e6ff:fec7:7eaa] has quit [Quit:
Leaving]
19:06 < ct529> m1ndwarp: if I remove parallization it works
19:08 < cbeck> FYI, http://paste.pocoo.org/ has go syntax hilighting, first
pastebin I've found
19:10 < ct529> I do not understand ...  it throws a panic ....  and it says
all the go routines are asleep ...
19:11 <+iant> ct529: you never read the values from the channels
19:11 <+iant> you need to write fmt.Print(<-c1, <-c2, "\n")
19:11 < ct529> iant: yes, I nderstood it and already changed it ....
19:11 <+iant> ok
19:11 < ct529> iant: http://paste.ubuntu.com/391228/
19:12 < ct529> iant: it throws a panic ....
19:12 -!- ak2 [~ak2@c-24-6-88-154.hsd1.ca.comcast.net] has quit [Ping timeout: 260
seconds]
19:12 < ct529> iant: throw: all goroutines are asleep - deadlock!
19:12 < ct529> panic PC=0x7f040b1d3030 ....
19:14 <+iant> in that program you are reading from the channels twice
19:14 <+iant> the first time reads the values
19:14 <+iant> the second time waits for more values to be written to the
channels
19:15 <+iant> change line 39 to fmt.Print(result, "\n")
19:15 <+iant> (you could write that as fmt.Println(result), by the way)
19:17 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
19:18 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Client Quit]
19:18 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
19:18 -!- ak2 [~ak2@nat/cisco/x-qhnsxburuvlpooao] has joined #go-nuts
19:19 < ct529> iant: thanks a lot ....
19:21 < ct529> iant: so what was happening here is that when I wrote the
second<-c I was calling the channel again ....
19:21 -!- bmm [~bram@82-169-1-45.ip.telfort.nl] has joined #go-nuts
19:21 <+iant> you were trying to read another value from the channel
19:21 < ct529> iant: I see ..., so once I have read it, I have actually
remove dit from the channel ....  is that right?
19:22 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Remote
host closed the connection]
19:22 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts
19:22 -!- mode/#go-nuts [+v iant] by ChanServ
19:22 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:d1e6:4c27:1e2d:7f97] has joined
#go-nuts
19:22 -!- Cyprien__ [Cyprien@140-106.107-92.cust.bluewin.ch] has joined #go-nuts
19:22 <+iant> sorry, something is really wrong with the latest Debian pidgin
update
19:22 -!- idr0 [~idr0@e179146080.adsl.alicedsl.de] has left #go-nuts []
19:22 <+iant> a channel is a pipe: you write data in, and you read data out
19:23 < ct529> iant: so once I have read it, I have actually emptied it
19:24 <+iant> yes, once you read a value it is no longer there
19:24 <+iant> just like a pipe
19:25 < ct529> thanks a lot ....  do I actually have to open at least a
channel for each CPU?
19:25 -!- anticw [~anticw@c-67-169-41-113.hsd1.ca.comcast.net] has quit [Quit:
leaving]
19:25 -!- anticw [~anticw@c-67-169-41-113.hsd1.ca.comcast.net] has joined #go-nuts
19:25 <+iant> ct529: no, you only need a single channel
19:25 < ct529> iant: oh ....  so my code is actually crap
19:26 < ct529> iant: I am not really executing on separate CPUs
19:26 -!- Cyprien_ [Cyprien@74-12.79-83.cust.bluewin.ch] has quit [Ping timeout:
256 seconds]
19:26 <+iant> you are, assuming your system has multiple CPUs
19:26 < ct529> iant: yes it has two cores.  So I added the line
runtime.GOMAXPROCS(NCPU) where NCPU=2
19:27 < ct529> iant: but where does it says that I am actually using two
cpus?
19:27 <+iant> that is all you need to do to schedule your goroutines onto
two CPUs
19:28 < ct529> iant: oh ....  so if I move onto a larger system with like 8
cpus, I do not have to change anything and the routine uses them all?
19:28 <+iant> the routine as written isn't going to use more than 2
19:28 <+iant> you only start two goroutines
19:28 <+iant> Go does not automatically parallelize loops, it gives you
tools to parallelize them yourself
19:28 <+iant> Automatic parallelization would be cool, but there is no
support for it at present
19:29 < ct529> iant: sorry ....  you are right ....  could I have sent both
go routines on the same channel?
19:29 <+iant> you could have passed the same channel as an argument to both
goroutines
19:29 < ct529> iant: oh ....  so am I gaining anything by having two
channels?
19:30 <+iant> no
19:30 <+iant> not in this program, anyhow
19:31 < ct529> iant: is it possible to detect the number of CPUs available
from with go?
19:31 < ct529> s/with/within/ sorry
19:31 <+iant> There might be a way but I don't know it offhand
19:32 < ct529> iant: thanks a lot for all your help ....  I have finally
understood the very basics ....
19:32 <+iant> you're welcome
19:34 < ct529> iant: see you later ....  I will spend more time on it
tomorrow
19:34 < ct529> iant: time for some dinner!
19:34 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
19:35 < ct529> bye
19:35 -!- ct529 [~quassel@77-44-78-159.xdsl.murphx.net] has quit [Remote host
closed the connection]
19:36 -!- m1ndwarp [~m1ndwarp@xdsl-78-35-132-26.netcologne.de] has quit [Quit:
m1ndwarp]
19:37 < exch> is there some reason why the go compiler (6g) would fail on an
import statement with this: "syntax error: unexpected name, expecting literal"?
I'm absolutely sure the syntax is correct.  The only thing I can think of is that
it can't find the package, eventhough I explicitely made sure it exists in the Go
pkg dir
19:37 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
19:37 < exch> a file permission issue for the package file perhaps?
19:38 -!- verma [~verma@173-21-32-42.client.mchsi.com] has joined #go-nuts
19:39 < exch> it's also only 2 specific packages it fails on
19:39 * exch puzzeled
19:47 -!- AlbertDS [~AlbertDS@80.229.91.29] has quit [Quit: AlbertDS]
19:50 -!- c0nfl|ct [tiago@89.214.152.160] has quit [Read error: Connection reset
by peer]
19:55 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
19:59 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
19:59 -!- jhnx [~bd730cde@gateway/web/freenode/x-mymoktoibzabnoay] has quit [Ping
timeout: 252 seconds]
20:02 -!- g0bl1n [~anonymous@a213-22-200-76.cpe.netcabo.pt] has quit [Quit:
g0bl1n]
20:08 -!- V1psta [seal45@RGREENHAGEN-XFX.suites.osuit.edu] has joined #go-nuts
20:08 -!- nanoo [~nano@95-89-189-46-dynip.superkabel.de] has joined #go-nuts
20:08 -!- V1psta [seal45@RGREENHAGEN-XFX.suites.osuit.edu] has quit [Client Quit]
20:10 -!- V1psta [seal45@RGREENHAGEN-XFX.suites.osuit.edu] has joined #go-nuts
20:10 -!- V1psta [seal45@RGREENHAGEN-XFX.suites.osuit.edu] has quit [Client Quit]
20:12 -!- fwiffo [~fwiffo@unaffiliated/fwiffo] has joined #go-nuts
20:16 -!- fusion44 [~quassel@p5B2832DB.dip.t-dialin.net] has quit [Read error:
Connection reset by peer]
20:17 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
20:17 -!- DerHorst [~Horst@e176096008.adsl.alicedsl.de] has quit [Quit:
Verlassend]
20:19 -!- Xera^ [~brit@87-194-208-246.bethere.co.uk] has quit [Ping timeout: 276
seconds]
20:21 -!- AlbertDS [~AlbertDS@80.229.91.29] has joined #go-nuts
20:23 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
20:25 -!- rup [Rupert@deathcoil.net] has joined #go-nuts
20:29 -!- alkavan_ [~alkavan@87.68.76.88.cable.012.net.il] has quit [Read error:
Connection reset by peer]
20:30 -!- tcoppi
[~nuclear@57c3ed63-1294-45bd-a8e8-cdcc07cfa16f.static.grokthis.net] has quit [Ping
timeout: 258 seconds]
20:30 -!- alkavan_ [~alkavan@87.68.253.130.adsl.012.net.il] has joined #go-nuts
20:33 -!- Xera^ [~brit@87-194-208-246.bethere.co.uk] has joined #go-nuts
20:36 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Operation timed out]
20:38 -!- tcoppi
[~nuclear@57c3ed63-1294-45bd-a8e8-cdcc07cfa16f.static.grokthis.net] has joined
#go-nuts
20:39 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
20:49 -!- kaib [~kaib@cs78242103.pp.htv.fi] has quit [Quit: kaib]
20:49 -!- mejja [~user@c-68b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has
joined #go-nuts
20:50 -!- g0bl1n [~anonymous@a213-22-200-76.cpe.netcabo.pt] has joined #go-nuts
20:57 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
20:58 -!- Kashia [~Kashia@port-92-200-137-22.dynamic.qsc.de] has joined #go-nuts
20:58 -!- tyr42
[~tyr_god_o@CPE0022b0b261a1-CM0012254318f6.cpe.net.cable.rogers.com] has joined
#go-nuts
20:59 -!- nanoo [~nano@95-89-189-46-dynip.superkabel.de] has quit [Ping timeout:
264 seconds]
21:01 -!- mrd` [~matthew@shinobi.dempsky.org] has joined #go-nuts
21:03 -!- tyr42
[~tyr_god_o@CPE0022b0b261a1-CM0012254318f6.cpe.net.cable.rogers.com] has left
#go-nuts []
21:06 -!- mssm [~mssm@ip-95-221-117-29.bb.netbynet.ru] has quit [Ping timeout: 276
seconds]
21:06 -!- franksalim [~frank@adsl-75-61-84-181.dsl.pltn13.sbcglobal.net] has
joined #go-nuts
21:07 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
21:09 -!- rup [Rupert@deathcoil.net] has quit [Read error: Connection reset by
peer]
21:13 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Operation timed out]
21:15 -!- bmm [~bram@82-169-1-45.ip.telfort.nl] has quit [Ping timeout: 256
seconds]
21:15 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:d1e6:4c27:1e2d:7f97] has quit
[Quit: Leaving.]
21:18 -!- mssm [~mssm@ip-95-221-117-86.bb.netbynet.ru] has joined #go-nuts
21:19 -!- ak2 [~ak2@nat/cisco/x-qhnsxburuvlpooao] has quit [Quit: ak2]
21:21 -!- SRabbelier [~SRabbelie@ip138-114-211-87.adsl2.static.versatel.nl] has
joined #go-nuts
21:24 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
21:26 -!- Juhazi [juhazi@0x69.org] has joined #go-nuts
21:27 -!- afurlan [~afurlan@scorpion.mps.com.br] has quit [Quit: Leaving]
21:30 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Operation timed out]
21:33 < cbeck> Before I write it, is there an existing library to treat
stdin/out as chan string's?
21:34 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
21:42 -!- GilJ [~gilles@78-22-167-175.access.telenet.be] has joined #go-nuts
21:45 -!- ikke [~ikkibr@unaffiliated/ikkebr] has quit []
21:46 < plexdev> http://is.gd/9ZdW3 by [Ian Lance Taylor] in go/doc/ --
Clarify that conversions to complex are OK.
21:47 -!- ak2 [~ak2@soenat3.cse.ucsc.edu] has joined #go-nuts
21:48 < mrd`> Is there any sample code on how to use crypto/tls.Client?
21:48 < uriel> mrd`: I think there is, grep probably can easily answer where
;)
21:49 < uriel> (the test suite is qiute complete and also can be a source of
very simple examples)
21:49 < uriel> (speaking in general about Go, not looked into the tls code)
21:50 < mrd`> uriel: The only .go files in the go distribution that contain
both the strings "tls" and "Client" are within src/pkg/crypto/tls.
21:50 -!- alkavan_ [~alkavan@87.68.253.130.adsl.012.net.il] has quit [Read error:
Connection reset by peer]
21:51 -!- alkavan_ [~alkavan@77.124.79.177] has joined #go-nuts
21:52 < mrd`> Though I did at least find how to create a test tls Config
object, so maybe that will help me advance a little further.
21:52 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
21:55 -!- gisikw [~gisikw@137.28.186.120] has joined #go-nuts
21:57 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
22:02 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Operation timed out]
22:03 < plexdev> http://is.gd/9Zhqc by [Ian Lance Taylor] in go/doc/ --
Complex values may only be compared for equality or inequality.
22:10 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
22:17 -!- scm [justme@c178159.adsl.hansenet.de] has quit [Read error: Connection
reset by peer]
22:18 -!- The_Cog [~chatzilla@i-195-137-123-15.freedom2surf.net] has quit [Quit:
ChatZilla 0.9.86 [Firefox 3.6/20100115133306]]
22:19 < plexdev> http://is.gd/9Zl3Z by [Russ Cox] in go/src/pkg/runtime/ --
runtime: clock garbage collection on bytes allocated, not pages in use
22:19 < plexdev> http://is.gd/9Zl4z by [Russ Cox] in 5 subdirs of go/ --
5g/6g/8g: fix double function call in slice
22:21 -!- scm [justme@c222063.adsl.hansenet.de] has joined #go-nuts
22:26 -!- Project_2501 [~Marvin@82.84.69.99] has quit [Quit: E se abbasso questa
leva che succ...]
22:26 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
22:32 -!- recover [recover@ip21278.lbinternet.se] has quit [Quit: Leaving]
22:35 -!- alkavan_ [~alkavan@77.124.79.177] has quit [Read error: Connection reset
by peer]
22:37 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has joined
#go-nuts
22:39 -!- alkavan_ [~alkavan@87.68.249.79.adsl.012.net.il] has joined #go-nuts
22:39 -!- g0bl1n [~anonymous@a213-22-200-76.cpe.netcabo.pt] has quit [Quit:
g0bl1n]
22:39 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
22:45 -!- awidegreen [~quassel@p5B06158C.dip.t-dialin.net] has quit [Remote host
closed the connection]
22:46 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
22:53 -!- ericvh [~ericvh@32.97.110.63] has left #go-nuts []
22:54 -!- wrtp [~rog@89.241.130.254] has joined #go-nuts
22:55 -!- wrtp [~rog@89.241.130.254] has quit [Client Quit]
23:02 -!- GilJ [~gilles@78-22-167-175.access.telenet.be] has quit [Read error:
Connection reset by peer]
23:02 -!- GilJ [~gilles@78-22-167-175.access.telenet.be] has joined #go-nuts
23:08 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
23:11 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
23:13 -!- alkavan_ [~alkavan@87.68.249.79.adsl.012.net.il] has quit [Read error:
Connection reset by peer]
23:13 -!- alkavan_ [~alkavan@87.68.146.2] has joined #go-nuts
23:15 -!- kumiduck [pulu@2001:14b8:10a:2::ff] has joined #go-nuts
23:19 -!- fwiffo [~fwiffo@unaffiliated/fwiffo] has quit [Ping timeout: 246
seconds]
23:20 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has quit [Quit:
This computer has gone to sleep]
23:21 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Quit: Venom_X]
23:24 -!- ak2 [~ak2@soenat3.cse.ucsc.edu] has quit [Quit: ak2]
23:25 -!- mssm [~mssm@ip-95-221-117-86.bb.netbynet.ru] has quit [Ping timeout: 248
seconds]
23:25 -!- alkavan_ [~alkavan@87.68.146.2] has quit [Read error: Connection reset
by peer]
23:25 -!- Xera^ [~brit@87-194-208-246.bethere.co.uk] has quit [Quit: (
www.nnscript.com :: NoNameScript 4.21 :: www.esnation.com )]
23:26 -!- alkavan_ [~alkavan@77.124.114.236] has joined #go-nuts
23:26 -!- TR2N [email@89-180-235-168.net.novis.pt] has quit [Ping timeout: 240
seconds]
23:29 -!- TR2N [email@89-180-207-215.net.novis.pt] has joined #go-nuts
23:29 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
23:31 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
23:34 -!- JSharpe2 [~jamie@5ad1d7f0.bb.sky.com] has quit [Read error: Connection
reset by peer]
23:37 -!- GilJ [~gilles@78-22-167-175.access.telenet.be] has quit [Remote host
closed the connection]
23:39 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit:
hcatlin]
23:43 -!- trepan_ [~trepan@blk-30-139-102.eastlink.ca] has left #go-nuts []
23:47 -!- kssreeram [~kssreeram@122.174.70.202] has quit [Quit: kssreeram]
23:47 -!- kssreeram [~kssreeram@122.174.70.202] has joined #go-nuts
23:51 -!- path[l] [UPP@120.138.102.34] has quit [Read error: Connection timed out]
23:51 < plexdev> http://is.gd/9ZEbU by [Russ Cox] in go/src/cmd/gc/ -- gc:
simplify complex typecheck
23:51 -!- gisikw [~gisikw@137.28.186.120] has quit [Quit: gisikw]
23:53 -!- ericvh [~ericvh@cpe-70-123-128-44.austin.res.rr.com] has joined #go-nuts
23:55 -!- path[l] [UPP@120.138.102.34] has joined #go-nuts
--- Log closed Tue Mar 09 00:00:22 2010