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

--- Log opened Tue Apr 05 00:00:50 2011
00:05 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has quit [Ping
timeout: 248 seconds]
00:05 < plexdev> http://is.gd/MRWdpv by [Brad Fitzpatrick] in
go/src/pkg/http/ -- http: fix hanging bug with HEAD responses
00:07 -!- randfur [~AndChat@58.145.148.26] has joined #go-nuts
00:09 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has joined #go-nuts
00:09 -!- kvey [~xantosfla@75-164-97-85.tcso.qwest.net] has quit [Quit: cya]
00:10 -!- prip_ [~foo@host29-194-dynamic.17-79-r.retail.telecomitalia.it] has quit
[Ping timeout: 276 seconds]
00:11 -!- Venom_X [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has quit
[Quit: Venom_X]
00:14 -!- prip_ [~foo@host29-194-dynamic.17-79-r.retail.telecomitalia.it] has
joined #go-nuts
00:22 -!- randfur [~AndChat@58.145.148.26] has quit [Ping timeout: 250 seconds]
00:22 -!- randfur [~AndChat@58.145.148.26] has joined #go-nuts
00:25 -!- pphalen [~pphalen@66.92.11.149] has left #go-nuts []
00:29 -!- d_m [~d_m@64.186.128.169] has quit [Ping timeout: 240 seconds]
00:31 -!- d_m [~d_m@64.186.128.169] has joined #go-nuts
00:37 -!- Tuller [~tuller@c-68-33-63-208.hsd1.va.comcast.net] has quit [Ping
timeout: 246 seconds]
00:38 -!- Tuller [~tuller@c-68-33-63-208.hsd1.va.comcast.net] has joined #go-nuts
00:39 -!- hokapoka [~hokapoka@hoka.hokapoka.com] has quit [Read error: Operation
timed out]
00:39 -!- hokapoka [~hokapoka@hoka.hokapoka.com] has joined #go-nuts
00:43 -!- randfur [~AndChat@58.145.148.26] has quit [Quit: Bye]
00:45 -!- Tuller [~tuller@c-68-33-63-208.hsd1.va.comcast.net] has quit [Remote
host closed the connection]
00:46 -!- prip_ [~foo@host29-194-dynamic.17-79-r.retail.telecomitalia.it] has quit
[Ping timeout: 276 seconds]
00:48 -!- prip_ [~foo@host29-194-dynamic.17-79-r.retail.telecomitalia.it] has
joined #go-nuts
00:50 -!- bugQ [~bug@c-67-171-127-76.hsd1.ut.comcast.net] has joined #go-nuts
00:55 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has quit
[Ping timeout: 246 seconds]
01:01 -!- randfur [~AndChat@58.145.148.26] has joined #go-nuts
01:04 -!- bugQ [~bug@c-67-171-127-76.hsd1.ut.comcast.net] has quit [Read error:
Operation timed out]
01:07 -!- littlebobby [~bob@unaffiliated/littlebobby] has joined #go-nuts
01:09 -!- tav [~tav@92.7.141.101] has joined #go-nuts
01:09 -!- vsmatck [~smack@64-142-40-6.dsl.static.sonic.net] has left #go-nuts []
01:10 -!- nettok [~quassel@200.119.160.221] has joined #go-nuts
01:11 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
01:12 -!- bugQ [~bug@c-67-171-127-76.hsd1.ut.comcast.net] has joined #go-nuts
01:21 -!- bugQ [~bug@c-67-171-127-76.hsd1.ut.comcast.net] has quit [Remote host
closed the connection]
01:27 -!- nettok [~quassel@200.119.160.221] has quit [Quit: No Ping reply in 180
seconds.]
01:27 -!- nettok [~quassel@200.119.160.221] has joined #go-nuts
01:33 -!- niemeyer [~niemeyer@189.27.153.77.dynamic.adsl.gvt.net.br] has quit
[Ping timeout: 240 seconds]
01:39 -!- niemeyer [~niemeyer@189.27.153.77.dynamic.adsl.gvt.net.br] has joined
#go-nuts
01:40 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has joined
#go-nuts
01:41 < plexdev> http://is.gd/Hl6iyH by [Gustavo Niemeyer] in
go/src/pkg/path/filepath/ -- filepath: new Abs function
01:41 < plexdev> http://is.gd/FAy7cz by [Mikio Hara] in go/src/pkg/net/ --
net: fix typo
01:46 -!- niemeyer [~niemeyer@189.27.153.77.dynamic.adsl.gvt.net.br] has quit
[Ping timeout: 240 seconds]
01:47 -!- littlebobby [~bob@unaffiliated/littlebobby] has left #go-nuts
["Ex-Chat"]
01:56 -!- prip_ [~foo@host29-194-dynamic.17-79-r.retail.telecomitalia.it] has quit
[Ping timeout: 258 seconds]
02:02 -!- sramsay [~sramsay@lenz.unl.edu] has joined #go-nuts
02:09 -!- prip [~foo@host158-195-dynamic.17-79-r.retail.telecomitalia.it] has
joined #go-nuts
02:19 -!- prip [~foo@host158-195-dynamic.17-79-r.retail.telecomitalia.it] has quit
[Ping timeout: 252 seconds]
02:20 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
02:22 -!- Guest67481 [~foo@host158-195-dynamic.17-79-r.retail.telecomitalia.it]
has joined #go-nuts
02:22 -!- randfur [~AndChat@58.145.148.26] has quit [Quit: Bye]
02:24 -!- niemeyer [~niemeyer@201-11-229-180.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
02:25 < plexdev> http://is.gd/7Oq4J2 by [Brad Fitzpatrick] in
go/src/pkg/http/ -- http: fix Transport connection re-use race
02:45 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
02:49 -!- Guest67481 [~foo@host158-195-dynamic.17-79-r.retail.telecomitalia.it]
has quit [Ping timeout: 252 seconds]
02:55 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has joined
#go-nuts
02:57 < plexdev> http://is.gd/Se96mo by [Brad Fitzpatrick] in
go/src/pkg/http/ -- http: ignore Transfer-Encoding on HEAD responses
02:57 < plexdev> http://is.gd/LHIAgw by [Andrew Gerrand] in 2 subdirs of go/
-- weekly.2011-04-04
02:57 < plexdev> http://is.gd/Rc2mw3 by [Andrew Gerrand] in go/ -- tag
weekly.2011-04-04
02:57 < plexdev> http://is.gd/4afbXt by [Andrew Gerrand] in go/ -- tag
release.2011-03-28
02:57 < plexdev> http://is.gd/F7QvTq by [Russ Cox] in 3 subdirs of
go/src/pkg/ -- net: drop laddr from Dial, cname from LookupHost; new functions
02:57 < plexdev> http://is.gd/KuooZR by [Russ Cox] in 8 subdirs of
go/src/pkg/ -- update tree for package net changes
02:57 < plexdev> http://is.gd/ZmWNTv by [Russ Cox] in go/src/cmd/gofix/ --
gofix: netdial
02:57 < plexdev> http://is.gd/zw4uYh by [Russ Cox] in go/src/pkg/net/ -- fix
build
02:57 < plexdev> http://is.gd/pFwEph by [Alexey Borzenkov] in
go/src/pkg/net/ -- net: implement non-blocking connect
02:57 < plexdev> http://is.gd/LCCqiJ by [Evan Shaw] in go/misc/kate/ --
kate: reorganize, remove closed()
02:57 < plexdev> http://is.gd/9dZJHr by [Evan Shaw] in 2 subdirs of
go/src/pkg/ -- bytes, strings: simplify Join
02:57 < plexdev> http://is.gd/OwkDkU by [Ian Lance Taylor] in
go/test/syntax/ -- test: match gccgo error messages for syntax/chan.go.
02:57 < plexdev> http://is.gd/d4abQY by [Ian Lance Taylor] in
go/test/syntax/ -- test: avoid undefined error in syntax/if.go.
02:57 < plexdev> http://is.gd/PPJAdN by [Ian Lance Taylor] in 2 subdirs of
go/test/ -- test: adjust bugs/bug322 to match current spec.
02:57 < plexdev> http://is.gd/exqaOa by [Adam Langley] in go/src/pkg/asn1/
-- asn1: extensions needed for parsing Kerberos
02:58 < plexdev> http://is.gd/K4zJDA by [Mikkel Krautz] in
go/src/pkg/crypto/x509/ -- crypto/x509: Parse Extended Key Usage extension
02:58 < plexdev> http://is.gd/YdtUcz by [Robert Griesemer] in 2 subdirs of
go/src/ -- CL 4291070: incorporating rsc's feedback
02:58 < plexdev> http://is.gd/iHC6oa by [Rob Pike] in go/src/cmd/gotest/ --
ngotest: a new gotest command, written in Go.
02:58 < plexdev> http://is.gd/tgklcO by [Rob Pike] in
go/src/pkg/debug/gosym/ -- debug/gosym: remove need for gotest to run preparatory
commands.
02:58 < plexdev> http://is.gd/nZf4xL by [Russ Cox] in go/ -- A+C: David
Forsythe (individual CLA)
02:58 < plexdev> http://is.gd/pWMYPq by [David Forsythe] in go/src/pkg/os/
-- os: fix FileInfo.Name returned by Stat
02:58 < plexdev> http://is.gd/aJWjEJ by [Alexey Borzenkov] in
go/src/pkg/net/ -- net: move bind back to sock.go
02:58 < dfc> whoa, thanks for the spam
02:58 < plexdev> http://is.gd/R3azTf by [Albert Strasheim] in
go/src/pkg/syscall/ -- syscall: StartProcess Chroot and Credential.
02:58 < plexdev> http://is.gd/0Q13zo by [Adam Langley] in
go/src/pkg/crypto/cipher/ -- crypto/cipher: bad CTR IV length now triggers panic
02:58 < plexdev> http://is.gd/P6Ae6H by [Rob Pike] in go/src/cmd/gotest/ --
ngotest: correctly handle packages with tests outside the package.
02:58 < steven> whoaa
02:58 < plexdev> http://is.gd/1kYP2O by [Rob Pike] in 3 subdirs of
go/src/cmd/ -- gotry: move into its own directory, separate from gotest.
02:58 < plexdev> http://is.gd/omnkeZ by [Rob Pike] in go/src/cmd/govet/ --
govet: fix bug introduced at 4313054
02:58 < dfc> @adg_
02:58 < plexdev> http://is.gd/kIflZn by [Rob Pike] in 3 subdirs of go/src/
-- gotest: replace the shell script with the compiled program written in go.
02:58 < plexdev> http://is.gd/qd4gqZ by [Rob Pike] in 2 subdirs of go/src/
-- prints: fix a couple of formatting errors caught by govet
02:59 < dfc> you're +o, can you mute this ?
02:59 < plexdev> http://is.gd/eEFgoX by [Adam Langley] in
go/src/pkg/crypto/tls/ -- crypto/tls: extend NPN support to the client.
02:59 < plexdev> http://is.gd/dLJrOj by [Ian Lance Taylor] in 3 subdirs of
go/test/ -- test: adjust bug324 to expect run-time failure, not compile-time.
02:59 < plexdev> http://is.gd/shxBgP by [Ian Lance Taylor] in
go/test/interface/ -- test: add test for interfaces with unexported methods.
02:59 < plexdev> http://is.gd/cpoD3b by [Andrew Gerrand] in go/src/pkg/time/
-- time: make TestAfterQueuing retry 3 times before declaring failure.
02:59 < plexdev> http://is.gd/aPdJ4W by [Robert Griesemer] in 4 subdirs of
go/src/ -- go/printer/gofmt: remove special case for multi-line raw strings
02:59 < plexdev> http://is.gd/cwXdZx by [Andrew Gerrand] in
go/src/cmd/godoc/ -- godoc: remove errant space in HTML tag
02:59 < plexdev> http://is.gd/kPU45p by [Roger Peppe] in
go/src/pkg/go/parser/ -- go/parser: fix scoping for local type declarations
02:59 < plexdev> http://is.gd/GqpDWp by [Robert Griesemer] in
go/src/cmd/gotest/ -- gotest: exclude . files when parsing directories (per r's
suggestion)
02:59 < plexdev> http://is.gd/b9W5O5 by [Ian Lance Taylor] in go/test/ --
test: don't require specific GOARCH values.
02:59 < plexdev> http://is.gd/g5mSYd by [Robert Griesemer] in
go/src/pkg/scanner/ -- scanner: treat line comments like in Go
02:59 < plexdev> http://is.gd/YjdPhL by [Robert Griesemer] in 3 subdirs of
go/src/ -- gotype: support for more tests, added one new test
02:59 < plexdev> http://is.gd/yibCdf by [Russ Cox] in go/src/pkg/fmt/ --
fmt: remove uintptrGetter type checks
02:59 < plexdev> http://is.gd/w5Hagt by [Russ Cox] in go/src/cmd/gopack/ --
gopack: add P flag to remove prefix from filename information
02:59 < plexdev> http://is.gd/x901h3 by [Russ Cox] in go/src/cmd/gopack/ --
gopack: comment out debugging print
03:00 < plexdev> http://is.gd/Mdobtn by [Rob Pike] in go/src/cmd/gotest/ --
gotest: another try at flags.
03:00 < plexdev> http://is.gd/KIDKaV by [Alexey Borzenkov] in 2 subdirs of
go/src/pkg/ -- net, syscall: fix windows build
03:00 < plexdev> http://is.gd/Zga0fv by [Brad Fitzpatrick] in
go/src/pkg/http/ -- http: add Transport.MaxIdleConnsPerHost
03:00 < plexdev> http://is.gd/uHw8OY by [Rob Pike] in 2 subdirs of go/doc/
-- roadmap: remove description of implementation of garbage collector.
03:00 < plexdev> http://is.gd/9A4IZy by [Rob Pike] in go/src/pkg/fmt/ --
fmt: implement precs for %q.
03:00 < plexdev> http://is.gd/E6eCoc by [Ian Lance Taylor] in 3 subdirs of
go/src/ -- testing: add -test.timeout option.
03:00 < plexdev> http://is.gd/SP92I2 by [Alex Brainman] in
go/src/cmd/gotest/ -- gotest: execute gomake properly on Windows
03:00 < plexdev> http://is.gd/WFXCKy by [Alex Brainman] in
go/src/cmd/gotest/ -- gotest: another attempt to make it run on Windows
03:00 < plexdev> http://is.gd/1qMkU2 by [Anthony Starks] in
go/misc/notepadplus/ -- misc/notepadplus: add syntax and completion support for
notepad++
03:00 < plexdev> http://is.gd/AM2n43 by [Rob Pike] in
go/src/pkg/path/filepath/ -- path/filepath.Glob: don't drop known matches on
error.
03:00 < plexdev> http://is.gd/shoypw by [Evan Shaw] in go/src/pkg/syscall/
-- syscall: make Syscall6 pass 6th arg on linux/386
03:00 < plexdev> http://is.gd/TOk33t by [Russ Cox] in 2 subdirs of go/ --
gc: avoid saying same error 3 times
03:00 < plexdev> http://is.gd/h9YtjO by [Evan Shaw] in go/src/pkg/syscall/
-- syscall: make Rawsyscall6 pass 6th arg on linux/386
03:00 < plexdev> http://is.gd/KMH7fv by [Robert Griesemer] in
go/src/pkg/go/parser/ -- go/parser: package name must not be the blank identifier
03:01 < plexdev> http://is.gd/dspt4H by [Yuval Pavel Zholkover] in
go/src/pkg/syscall/ -- R=rsc, brainman, ality, r2, r
03:01 < plexdev> http://is.gd/Cs5yEs by [Yuval Pavel Zholkover] in
go/src/pkg/os/ -- os: Plan 9 support.
03:01 < plexdev> http://is.gd/Kepk60 by [Ian Lance Taylor] in go/src/ --
Make.pkg: increase test timeout to 120 seconds.
03:01 < plexdev> http://is.gd/Ws6cbO by [Andrey Mirtchovski] in
go/src/pkg/os/ -- os: add a few missing plan9 errors
03:01 < plexdev> http://is.gd/zkJn6G by [Andrey Mirtchovski] in
go/src/pkg/path/filepath/ -- path/filepath: add support for plan9
03:01 < plexdev> http://is.gd/t0mVHP by [Andrew Gerrand] in go/src/ --
version.bash: strip changeset hash from 'hg tags' output
03:01 < plexdev> http://is.gd/7VVV9B by [Brad Fitzpatrick] in
go/src/pkg/http/ -- http: make triv.go example compile again
03:01 < plexdev> http://is.gd/l7Pqkf by [Brad Fitzpatrick] in 3 subdirs of
go/src/pkg/ -- httptest: add NewTLSServer
03:01 < plexdev> http://is.gd/cpLuKe by [Mikio Hara] in go/src/pkg/syscall/
-- syscall: add BPF support for freebsd/386, freebsd/amd64
03:01 < plexdev> http://is.gd/8ChE9B by [Albert Strasheim] in go/src/pkg/os/
-- os: Fix MkdirAll("/thisdoesnotexist").
03:01 < plexdev> http://is.gd/HhPuVq by [Russ Cox] in go/lib/codereview/ --
codereview: only retry on HTTP 500 error
03:01 < plexdev> http://is.gd/waNrZF by [Russ Cox] in go/ -- CONTRIBUTORS:
add Matt Jones (Google CLA)
03:01 -!- Guest67481 [~foo@host229-123-dynamic.32-79-r.retail.telecomitalia.it]
has joined #go-nuts
03:01 < plexdev> http://is.gd/s37vEW by [Matt Jones] in go/src/pkg/http/ --
http: use upper case hex in URL escaping
03:02 < plexdev> http://is.gd/mFRYjK by [Evan Shaw] in go/src/pkg/bufio/ --
bufio: Write and WriteString cleanup
03:02 < plexdev> http://is.gd/J4QbgV by [Rob Pike] in 2 subdirs of go/src/
-- path/filepath.Glob: add an error return.
03:02 < plexdev> http://is.gd/OVw7nn by [Russ Cox] in go/src/cmd/gotest/ --
gotest: fix build
03:02 < plexdev> http://is.gd/8HPqdP by [Brad Fitzpatrick] in 6 subdirs of
go/src/pkg/ -- os: add Seek whence constants
03:02 < plexdev> http://is.gd/MRWdpv by [Brad Fitzpatrick] in
go/src/pkg/http/ -- http: fix hanging bug with HEAD responses
03:02 < plexdev> http://is.gd/Hl6iyH by [Gustavo Niemeyer] in
go/src/pkg/path/filepath/ -- filepath: new Abs function
03:02 < plexdev> http://is.gd/FAy7cz by [Mikio Hara] in go/src/pkg/net/ --
net: fix typo
03:02 < plexdev> http://is.gd/7Oq4J2 by [Brad Fitzpatrick] in
go/src/pkg/http/ -- http: fix Transport connection re-use race
03:02 < plexdev> http://is.gd/Se96mo by [Brad Fitzpatrick] in
go/src/pkg/http/ -- http: ignore Transfer-Encoding on HEAD responses
03:02 < plexdev> http://is.gd/LHIAgw by [Andrew Gerrand] in 2 subdirs of go/
-- weekly.2011-04-04
03:05 < nickbp> ( ゚∀゚)アハハ八八ノヽノヽノヽノ \ / \/ \
03:05 -!- sramsay [~sramsay@lenz.unl.edu] has left #go-nuts []
03:09 -!- m4dh4tt3r [~Adium@c-69-181-223-245.hsd1.ca.comcast.net] has quit [Quit:
Leaving.]
03:12 -!- niemeyer [~niemeyer@201-11-229-180.pltce701.dsl.brasiltelecom.net.br]
has quit [Ping timeout: 240 seconds]
03:15 -!- Guest67481 [~foo@host229-123-dynamic.32-79-r.retail.telecomitalia.it]
has quit [Ping timeout: 260 seconds]
03:16 -!- prip [~foo@host229-123-dynamic.32-79-r.retail.telecomitalia.it] has
joined #go-nuts
03:17 -!- karpar [~user@112.96.225.29] has joined #go-nuts
03:17 -!- kanru [~kanru@kanru-1-pt.tunnel.tserv15.lax1.ipv6.he.net] has quit [Ping
timeout: 248 seconds]
03:20 -!- kanru [~kanru@kanru-1-pt.tunnel.tserv15.lax1.ipv6.he.net] has joined
#go-nuts
03:27 -!- m4dh4tt3r [~Adium@adsl-76-205-250-144.dsl.pltn13.sbcglobal.net] has
joined #go-nuts
03:29 -!- prip [~foo@host229-123-dynamic.32-79-r.retail.telecomitalia.it] has quit
[Ping timeout: 252 seconds]
03:30 -!- m4dh4tt3r1 [~Adium@64.sub-69-99-180.myvzw.com] has joined #go-nuts
03:31 -!- prip [~foo@host229-123-dynamic.32-79-r.retail.telecomitalia.it] has
joined #go-nuts
03:33 -!- m4dh4tt3r [~Adium@adsl-76-205-250-144.dsl.pltn13.sbcglobal.net] has quit
[Ping timeout: 240 seconds]
03:34 < Archwyrm> wtf
03:37 < Archwyrm> Seems like a lot of commits all at once.  I wonder if the
github repo was behind.
03:37 < Archwyrm> No, I saw this one (http://is.gd/uHw8OY) the other day in
here.
03:38 < dfc> adg just branched a new weekly tag
03:38 < dfc> so it's responding to diff between the last weekly and the new
one
03:38 < Archwyrm> Ah
03:46 < Archwyrm> Anyone know of any plans to infer floating point division
from a line like `var inc float64 = 1 / 60`, inc is 0 unless the divisor is a
floating point constant (e.g.: 60.0)?  I did a quick search on the tracker but
didn't see anything.
03:49 < Archwyrm> Spec doesn't seem to say much about division either but
the specific case is probably covered elsewhere.
03:49 < |Craig|> Archwyrm: to me that seems like adding an additional rule
that complicates a currently simple and well defined part of the language, while
gaining no clarity of code or functionality.  it just saves 2 characters in a few
spots
03:50 < Archwyrm> Maybe.  I believe that the only other language where I
have experienced this problem is with Python and it can be a source of bugs if you
aren't careful.
03:51 < |Craig|> Python is a rather huge language rule wise, I like that go
is not that way
03:52 < |Craig|> That said, I like all the crazy things I can do in python
:)
03:52 < nickbp> agreeing with craig, having '1 / 60' automatically become a
float isnt immediately obvious
03:52 < Archwyrm> Indeed.  :)
03:52 < nickbp> better off just being explicit
03:52 < Archwyrm> Even if the left hand side *is* explicit?
03:52 < |Craig|> can you just say '1.  / 60' of do you need 1.0?
03:53 < jessta_> Archwyrm: that is also a source of bugs
03:53 < nickbp> well, who knows if you really wanted it to be 0, converted
to a float
03:53 < Archwyrm> I originally had `inc := 1 / 60` but the compiler
complained later on when I tried to pass that to a function expecting float64 and
I kind of misread the error.
03:53 < nickbp> if you do an explicit cast then there isnt that ambiguity
03:54 < |Craig|> being able to express anything is the source of bugs :)
03:54 < Archwyrm> |Craig|: 1.  / 60 works
03:54 < Archwyrm> jessta_, nickbp: True and true.
03:55 < nickbp> also dont know the context of your code but you might be
better off holding the / 60 until after the increment is done
03:55 < nickbp> no idea if itd make much difference but couldnt hurt
03:55 < nickbp> (both avoiding floating point math and avoiding floating
point drift)
03:55 < Archwyrm> I think I prefer to explicitly truncate or round and would
like my math to do as it would on paper (as idealistic as that may be especially
where floating point is concerned).
03:56 < |Craig|> I honestly thing the way to solve the issue in the language
if its a problem would be to make you not be able to assign floats from ints
without explicit conversions
03:56 < |Craig|> but I don't see it as a problem
03:57 < Archwyrm> nickbp: Yeah, there will be an error here.  That goes
directly into a 3D vector which gets repeatedly added to another vector, but the
inaccuracy is fine.
03:57 < nickbp> oic
03:58 < Archwyrm> |Craig|: Yeah, that would have been immediately obvious.
Instead it was zero and I was wondering why the other vector wasn't changing.  :)
04:00 -!- prip [~foo@host229-123-dynamic.32-79-r.retail.telecomitalia.it] has quit
[Ping timeout: 252 seconds]
04:01 < |Craig|> I know, we can make everyone happy with this: We can make a
version of go that requires explicit type conversions with assignments, and have a
script to add/remove them from existing code as part of gofmt!  Then every one can
have what they want, and extra chaos too!
04:01 < nickbp> aaaaaa
04:02 < Archwyrm> hehe
04:02 < |Craig|> This language fork brought to you by incompatible code corp
04:03 < Archwyrm> I do like the explicit casts in most cases though.  This
was just the corner case for me, I guess.  ;)
04:06 -!- karpar [~user@112.96.225.29] has quit [Quit: Yow!  Legally-imposed
CULTURE-reduction is CABBAGE-BRAINED!]
04:08 -!- nettok [~quassel@200.119.160.221] has quit [Ping timeout: 250 seconds]
04:12 < jessta_> Archwyrm: http://golang.org/doc/go_spec.html#Constants
04:14 < jessta_> 1/60 is 0 because they are integers
04:15 < Archwyrm> jessta_: Yes, I see that in there.  Thanks.  :)
04:17 -!- Guest80646 [~foo@host151-123-dynamic.35-79-r.retail.telecomitalia.it]
has joined #go-nuts
04:24 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 246 seconds]
04:29 -!- zozoR [~Morten@56344e3e.rev.stofanet.dk] has joined #go-nuts
04:34 -!- keithcascio [~keithcasc@nat/google/x-asbyxwyrtasnzfqs] has quit [Quit:
Leaving]
04:35 -!- shvntr [~shvntr@113.84.149.28] has joined #go-nuts
04:37 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has quit
[Ping timeout: 240 seconds]
04:40 -!- eikenberry [~jae@ivanova.zhar.net] has quit [Quit: End of line.]
04:54 -!- m4dh4tt3r1 [~Adium@64.sub-69-99-180.myvzw.com] has quit [Ping timeout:
240 seconds]
05:00 -!- Guest80646 [~foo@host151-123-dynamic.35-79-r.retail.telecomitalia.it]
has quit [Ping timeout: 260 seconds]
05:12 -!- edsrzf [~chickench@122-61-221-144.jetstream.xtra.co.nz] has joined
#go-nuts
05:12 -!- Boney_ [~paul@203-158-33-103.dyn.iinet.net.au] has quit [Ping timeout:
252 seconds]
05:12 -!- Boney [~paul@203-158-33-103.dyn.iinet.net.au] has joined #go-nuts
05:13 -!- Guest80646 [~foo@host101-9-dynamic.7-79-r.retail.telecomitalia.it] has
joined #go-nuts
05:17 -!- tensai_cirno [~cirno@194.186.220.185] has joined #go-nuts
05:19 -!- zozoR [~Morten@56344e3e.rev.stofanet.dk] has quit [Remote host closed
the connection]
05:19 -!- espeed [~espeed@63.246.231.57] has quit [Ping timeout: 246 seconds]
05:21 -!- espeed [~espeed@63.246.231.57] has joined #go-nuts
05:27 -!- skejoe [~skejoe@188.114.142.217] has joined #go-nuts
05:33 -!- skejoe [~skejoe@188.114.142.217] has quit [Quit: Lost terminal]
05:38 -!- sacho [~sacho@87-126-50-194.btc-net.bg] has quit [Read error: Connection
reset by peer]
05:44 -!- dforsyth_ [~dforsyth@ec2-50-18-22-230.us-west-1.compute.amazonaws.com]
has joined #go-nuts
05:46 -!- JBeshir [~namegduf@eu.beshir.org] has joined #go-nuts
05:46 -!- ttblrs_ [U2FsdGVkX1@order.stressinduktion.org] has joined #go-nuts
05:49 -!- tsung_ [~jon@112.104.53.151] has joined #go-nuts
05:49 -!- dforsyth [~dforsyth@ec2-50-18-22-230.us-west-1.compute.amazonaws.com]
has quit [Read error: Connection reset by peer]
05:49 -!- Namegduf [~namegduf@eu.beshir.org] has quit [Ping timeout: 246 seconds]
05:49 -!- ttblrs [U2FsdGVkX1@order.stressinduktion.org] has quit [Ping timeout:
246 seconds]
05:49 -!- Urmel| [~11087Urme@82-136-196-44.ip.telfort.nl] has quit [Ping timeout:
246 seconds]
05:49 -!- tsung [~jon@112.104.53.151] has quit [Ping timeout: 246 seconds]
05:49 -!- MX80 [~MX80@cust151.253.117.74.dsl.g3telecom.net] has quit [Ping
timeout: 246 seconds]
05:49 -!- d_m [~d_m@64.186.128.169] has quit [Ping timeout: 246 seconds]
05:49 -!- Adys [~Adys@unaffiliated/adys] has quit [Ping timeout: 246 seconds]
05:49 -!- homa_ran1 [~erice@hmsvelociraptor.csail.mit.edu] has quit [Ping timeout:
246 seconds]
05:49 -!- rl [~rbl@84-74-142-37.dclient.hispeed.ch] has quit [Ping timeout: 246
seconds]
05:49 -!- _nil_ [~nil@users.vu.union.edu] has quit [Ping timeout: 246 seconds]
05:49 -!- vinisterx [~ryan@74-129-201-27.dhcp.insightbb.com] has quit [Ping
timeout: 246 seconds]
05:49 -!- homa_rano [~erice@hmsvelociraptor.csail.mit.edu] has joined #go-nuts
05:49 -!- d_m [~d_m@64.186.128.169] has joined #go-nuts
05:50 -!- _nil [~nil@users.vu.union.edu] has joined #go-nuts
05:51 -!- vsmatck [~smack@64-142-40-6.dsl.static.sonic.net] has joined #go-nuts
05:52 -!- Urmel| [~11087Urme@82-136-196-44.ip.telfort.nl] has joined #go-nuts
05:53 -!- chimes [~chimes@24.104.130.118] has quit [Read error: Connection reset
by peer]
05:53 -!- chimes [~chimes@24.104.130.118] has joined #go-nuts
05:54 -!- vinisterx [~ryan@74-129-201-27.dhcp.insightbb.com] has joined #go-nuts
05:56 -!- rl [~rbl@84-74-142-37.dclient.hispeed.ch] has joined #go-nuts
05:58 -!- tensorpudding [~user@99.148.205.193] has quit [Read error: Connection
reset by peer]
05:59 -!- MX80 [~MX80@cust151.253.117.74.dsl.g3telecom.net] has joined #go-nuts
06:04 -!- d_m [~d_m@64.186.128.169] has quit [Ping timeout: 276 seconds]
06:15 -!- d_m [~d_m@64.186.128.169] has joined #go-nuts
06:16 -!- itrekkie [~itrekkie@ip72-211-131-205.tc.ph.cox.net] has quit [Quit:
itrekkie]
06:16 -!- randfur [~AndChat@58.145.148.89] has joined #go-nuts
06:21 -!- tensai_cirno [~cirno@194.186.220.185] has quit [Read error: Connection
reset by peer]
06:21 -!- tensai_cirno [~cirno@194.186.220.185] has joined #go-nuts
06:26 < taruti> which things can cause creation of a new os thread?  and is
there any way to limit the number of os threads used by the go runtime?
06:26 < dfc> anything that calls syscall.Syscall6
06:26 < dfc> or to put it another way
06:27 < dfc> anything that does not call syscall.Rawsyscal6
06:27 -!- tensai_cirno [~cirno@194.186.220.185] has quit [Ping timeout: 246
seconds]
06:27 < taruti> not all syscalls result in the creation of a new proc
06:28 < dfc>
http://code.google.com/p/go/source/browse/src/pkg/syscall/asm_darwin_386.s#13
06:28 < dfc> as i understand it
06:28 -!- itrekkie [~itrekkie@ip72-211-131-205.tc.ph.cox.net] has joined #go-nuts
06:28 < dfc> the call to runtime.entersyscall gives the runtime the chance
to decide if if should spawn a new thread
06:29 < dfc> as you're about to call a syscall which could block
06:29 < dfc> it's up to the runtime to decide to spin up a new os thread
06:30 -!- tensai_cirno [~cirno@194.186.220.185] has joined #go-nuts
06:32 < taruti> dfc: ok, got it :)
06:32 < taruti> hacked runtime.enter/leavesyscall and now things do work :)
06:34 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-179-18.clienti.tiscali.it] has
joined #go-nuts
06:35 -!- dfc [~dfc@eth59-167-133-99.static.internode.on.net] has quit [Read
error: Operation timed out]
06:37 -!- shvntr [~shvntr@113.84.149.28] has quit [Quit: leaving]
06:38 < uriel> taruti: anything that blocks will cause a new os thread, as
for limiting OS threads, that has been discussed in the mailing list recently
06:39 < taruti> uriel: I just made mcpu not decrease while calling a
syscall, that fixed it
06:45 < plexdev> http://is.gd/Kxk9SZ by [Rob Pike] in 37 subdirs of go/ --
os: New Open API.
06:46 -!- cafesofie [~cafesofie@ool-4a5a6ee5.dyn.optonline.net] has quit [Remote
host closed the connection]
06:46 < taruti> the new open api so breaks all existing code :(
06:47 < rm445> yow, did they go ahead with that?
06:48 < rm445> Seems a bit extreme, to break the similarity to the
traditional UNIX open() rather than add a new function
06:48 < nickbp> did they go ahead with that?
06:48 < rm445> I'm sure this has all been hashed out on the lists, but I
still find it a bit surprising
06:48 < taruti> yes :(
06:52 -!- jokoon [~jorinovsk@LMontsouris-156-26-32-176.w80-14.abo.wanadoo.fr] has
joined #go-nuts
06:52 < jnwhiteh> doesn't seem like it was discussed at all on the CL
06:52 < jnwhiteh> wonder what the motivation behind it was
06:53 < taruti> jnwhiteh: there was a thread on golang-dev
06:53 < jnwhiteh> ah, gotcha
06:53 < jnwhiteh> I'll look that up
06:53 < jnwhiteh> These days I just watch for those packages I have to worry
about, i.e.  http and misc/vim =)
06:54 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
06:54 < dforsyth_> woah, this happened already?
06:54 < jnwhiteh> was submitted an hour and 20 minutes ago =)
06:55 < dforsyth_> did r bring this up on golang-dev like just this morning?
06:55 < dforsyth_> that was quick
06:55 -!- ExtraSpice [XtraSpice@88.118.35.153] has joined #go-nuts
06:55 < dforsyth_> didn't*
06:56 < jnwhiteh> http://codereview.appspot.com/4357052
06:57 < dforsyth_> i dont mind it, im just surprised at how fast it went in
06:57 < jnwhiteh> aye
06:57 < dforsyth_> i figured people would debate it :P
06:57 -!- jgonzalez [~jgonzalez@173-14-137-134-NewEngland.hfc.comcastbusiness.net]
has joined #go-nuts
06:57 < dforsyth_> guess not
06:59 < jnwhiteh> Updating won't be difficult, due to gofix and the API does
seem a bit more Go-ish =)
06:59 < jnwhiteh> *shrug*
07:01 < plexdev> http://is.gd/gy6fLM by [Rob Pike] in go/src/pkg/os/ -- os:
fix windows build
07:03 -!- marten [~marten@62.21.178.171] has joined #go-nuts
07:03 -!- wrtp [~rog@2.97.144.60] has joined #go-nuts
07:03 -!- Guest80646 [~foo@host101-9-dynamic.7-79-r.retail.telecomitalia.it] has
quit [Quit: Leaving]
07:04 -!- ccount [~ccount@aleph0.de] has left #go-nuts ["WeeChat 0.3.4"]
07:07 -!- jgonzalez [~jgonzalez@173-14-137-134-NewEngland.hfc.comcastbusiness.net]
has quit [Ping timeout: 240 seconds]
07:09 -!- piranha [~piranha@D57D1AB3.static.ziggozakelijk.nl] has joined #go-nuts
07:13 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
07:18 -!- prip [~foo@host194-122-dynamic.35-79-r.retail.telecomitalia.it] has
joined #go-nuts
07:21 < jessta_> I like it.  Open() has always bugged me in C
07:24 < dforsyth_> i think the new function should have been name openfile
or ropen or something instead of breaking the normal open format
07:24 < dforsyth_> but meh
07:24 < dforsyth_> ive already updated my code
07:30 < uriel> 06:46 < taruti> the new open api so breaks all existing
code :(
07:30 < uriel> taruti: that is what gofix is for
07:36 -!- tensai_cirno [~cirno@194.186.220.185] has quit [Read error: Connection
reset by peer]
07:36 -!- tensai_cirno [~cirno@194.186.220.185] has joined #go-nuts
07:46 -!- dosade [~afhawe@210.9.143.155] has joined #go-nuts
07:50 -!- erutinruf [~afhawe@61.69.3.34] has quit [Ping timeout: 258 seconds]
08:04 -!- napsy [~luka@193.2.66.6] has joined #go-nuts
08:10 -!- itrekkie [~itrekkie@ip72-211-131-205.tc.ph.cox.net] has quit [Quit:
itrekkie]
08:12 -!- tvw [~tv@212.79.9.150] has joined #go-nuts
08:13 -!- arvindht_ [c2ed8e11@gateway/web/freenode/ip.194.237.142.17] has joined
#go-nuts
08:17 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
08:24 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
08:27 -!- karpar [~user@112.96.255.3] has joined #go-nuts
08:28 -!- karpar [~user@112.96.255.3] has quit [Remote host closed the connection]
08:34 -!- Netsplit *.net <-> *.split quits: drhodes, Natch|, homa_rano,
yebyen, rlab, cbeck, dfr|work, KBme, arun, statik_, (+14 more, use /NETSPLIT to
show all of them)
08:38 < nsf> wow, new weekly doesn't break gocode, yay!
08:38 < nsf> gettin' stable
08:39 -!- shvntr [~shvntr@113.84.149.28] has joined #go-nuts
08:41 -!- Netsplit over, joins: KBme, arun, niekie, tvw, piranha, rlab, homa_rano,
ttblrs_, kanru, pothos (+14 more)
08:54 -!- Netsplit *.net <-> *.split quits: ahihi2, edsrzf, apexo, leczb__
08:57 -!- edsrzf [~chickench@122-61-221-144.jetstream.xtra.co.nz] has joined
#go-nuts
08:57 -!- apexo [~apexo@2a01:238:436b:8301:5054:ff:fe87:82fb] has joined #go-nuts
08:57 -!- leczb__ [~leczb@nat/google/x-lebjyuxoxxofdqce] has joined #go-nuts
08:57 -!- ahihi2 [~transient@cs27123003.pp.htv.fi] has joined #go-nuts
09:07 -!- Fish [~Fish@9fans.fr] has joined #go-nuts
09:07 -!- Count_Niedar [~bleh@ip68-99-166-222.hr.hr.cox.net] has joined #go-nuts
09:11 -!- Niedar [~bleh@ip68-99-166-222.hr.hr.cox.net] has quit [Ping timeout: 258
seconds]
09:14 -!- tensai_cirno [~cirno@194.186.220.185] has quit [Read error: Connection
reset by peer]
09:14 -!- cirno_ [~cirno@194.186.220.185] has joined #go-nuts
09:16 < taruti> Is it possible to write unversioned go libraries?  i.e.
make 8l output just the architecture into the object file instead of [go object
$(GOOS) (GOARCH) <version>] ?
09:17 < taruti> s/8l/8g probably
09:27 < edsrzf> taruti: just browsing the source, it doesn't look like
there's a way
09:42 -!- cirno_ [~cirno@194.186.220.185] has quit [Quit: Leaving]
09:43 -!- Project-2501 [~Marvin@82.84.83.60] has joined #go-nuts
09:43 -!- karpar [~user@112.96.255.8] has joined #go-nuts
09:47 -!- anth_ [~a@72-160-85-120.dyn.centurytel.net] has joined #go-nuts
09:47 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-179-18.clienti.tiscali.it] has
quit [Ping timeout: 276 seconds]
09:49 -!- anth [~a@72-160-98-179.dyn.centurytel.net] has quit [Ping timeout: 276
seconds]
09:51 -!- edsrzf [~chickench@122-61-221-144.jetstream.xtra.co.nz] has quit [Remote
host closed the connection]
09:52 -!- leczb__ [~leczb@nat/google/x-lebjyuxoxxofdqce] has left #go-nuts
["Konversation terminated!"]
09:57 -!- randfur [~AndChat@58.145.148.89] has quit [Quit: Bye]
09:57 -!- karpar [~user@112.96.255.8] has quit [Ping timeout: 250 seconds]
10:00 -!- niemeyer [~niemeyer@201-11-229-180.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
10:06 -!- elimisteve [~elimistev@pool-71-102-138-52.snloca.dsl-w.verizon.net] has
joined #go-nuts
10:11 -!- hargettp [~hargettp@pool-71-174-135-190.bstnma.east.verizon.net] has
joined #go-nuts
10:21 -!- karpar [~user@112.96.225.26] has joined #go-nuts
10:27 -!- virtualsue [~chatzilla@nat/cisco/x-oqzplmrtfeegebde] has joined #go-nuts
10:36 -!- Scorchin [~Scorchin@host86-147-226-14.range86-147.btcentralplus.com] has
joined #go-nuts
10:38 -!- karpar [~user@112.96.225.26] has quit [Quit: Yow!  Legally-imposed
CULTURE-reduction is CABBAGE-BRAINED!]
10:40 -!- karpar [~user@112.96.225.26] has joined #go-nuts
11:16 -!- rlab [~Miranda@91.200.158.34] has quit [Read error: Connection reset by
peer]
11:17 -!- cbeck1 [cbeck@gateway/shell/pdx.edu/x-xktjdbwjinwukzzo] has joined
#go-nuts
11:17 -!- niekie [~niek@CAcert/Assurer/niekie] has quit [Read error: Operation
timed out]
11:17 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Read
error: Operation timed out]
11:17 -!- arun [~arun@unaffiliated/sindian] has quit [Read error: Operation timed
out]
11:17 -!- Xenith [~xenith@xenith.org] has quit [Read error: Operation timed out]
11:17 -!- dfr|work [~dfr|work@nat/google/x-jejyxdvtskkfptns] has quit [Read error:
Operation timed out]
11:17 -!- dfr|work [~dfr|work@nat/google/x-tmwhezksoorawfaq] has joined #go-nuts
11:17 -!- rphillips [~rphillips@unaffiliated/rphillips] has quit [Read error:
Operation timed out]
11:18 -!- kanru [~kanru@kanru-1-pt.tunnel.tserv15.lax1.ipv6.he.net] has quit [Read
error: Operation timed out]
11:18 -!- arun [~arun@unaffiliated/sindian] has joined #go-nuts
11:18 -!- Urtie [~urtie@2a01:2b0:301d:100:e2cb:4eff:fecd:72d2] has quit [Read
error: Operation timed out]
11:18 -!- cbeck [cbeck@gateway/shell/pdx.edu/x-injwiikyeianenxm] has quit [Read
error: Operation timed out]
11:18 -!- Urtie [~urtie@2a01:2b0:301d:100:e2cb:4eff:fecd:72d2] has joined #go-nuts
11:18 -!- rphillips [~rphillips@unaffiliated/rphillips] has joined #go-nuts
11:18 -!- niekie [~niek@CAcert/Assurer/niekie] has joined #go-nuts
11:19 -!- kanru [~kanru@kanru-1-pt.tunnel.tserv15.lax1.ipv6.he.net] has joined
#go-nuts
11:21 -!- karpar [~user@112.96.225.26] has quit [Quit: Yow!  Legally-imposed
CULTURE-reduction is CABBAGE-BRAINED!]
11:22 -!- Xenith [~xenith@xenith.org] has joined #go-nuts
11:26 -!- zozoR [~Morten@56344e3e.rev.stofanet.dk] has joined #go-nuts
11:45 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
11:48 -!- artefon [~thiago@bananal.lbd.dcc.ufmg.br] has joined #go-nuts
11:57 -!- zeroXten [~zeroXten@0x10.co.uk] has joined #go-nuts
11:58 -!- shvntr [~shvntr@113.84.149.28] has quit [Ping timeout: 250 seconds]
12:04 < nsf> new Open API :(
12:04 < taruti> yes :(
12:04 < nsf> two common cases and OpenFile as syscall Open
12:04 < nsf> hm..
12:05 < nsf> I like C's version more
12:05 < nsf> "w" "rw" "r" "a" etc
12:07 -!- jgonzalez [~jgonzalez@173-14-137-134-NewEngland.hfc.comcastbusiness.net]
has joined #go-nuts
12:08 -!- hargettp [~hargettp@pool-71-174-135-190.bstnma.east.verizon.net] has
quit [Quit: Leaving...]
12:12 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has joined
#go-nuts
12:13 -!- zerosanity [~josh@8.20.178.82] has joined #go-nuts
12:15 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has joined
#go-nuts
12:18 < wrtp> nsf: you'd have difficulty extending the stdio string to cover
all the os.O_ constants and still have it so memorable...
12:18 < nsf> I won't do that
12:18 < nsf> I will have syscall-like Open
12:18 < nsf> and FOpen
12:18 < nsf> and no weird "Create"
12:18 < nsf> FOpen with C's fopen semantics
12:19 < wrtp> i think it makes sense to have Create be a separate call
12:19 < wrtp> and if you look at the changes to the source tree, almost all
calls to create a file were of the same form, so it makes sense.
12:19 < nsf> I don't think so
12:21 < wrtp> i think it would be weird (as it is in C) to have two
different ways to express the same flags
12:26 < aiju> O_CREATE considered harmful
12:27 < wrtp> i have to say that with the latest changes, gofix found a few
bugs in my code, where i hadn't passed O_TRUNC to Open but should have
12:29 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.4]
12:30 < aiju> using O_CREATE without O_TRUNC is really weird
12:30 -!- tensai_cirno [~cirno@80.250.216.102] has joined #go-nuts
12:31 < exch> O_CREATE by itself should probably imply both creation and
truncation, depending on the situation
12:31 < wrtp> aiju: it can be useful, particularly in conjunction with
O_EXCL
12:32 < wrtp> e.g.  to open a shared data file
12:32 < wrtp> no, sorry, i'm talking bollocks
12:32 < wrtp> but it can be useful for opening shared data files
12:33 < aiju> wrtp: i'm sure it might be useful ...
12:34 < wrtp> doing it that way guards against the race that two processes
might try to open the file, fail and both create the same file, one truncating
what the other writes.
12:47 < kamaji> in a switch, can I do case foo: case bar: case qux: /* do
stuff */
12:48 < kamaji> I really should've used Buffer for this :D
12:58 -!- niemeyer [~niemeyer@201-11-229-180.pltce701.dsl.brasiltelecom.net.br]
has quit [Remote host closed the connection]
12:58 -!- niemeyer [~niemeyer@201-11-229-180.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
13:00 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has quit
[Ping timeout: 246 seconds]
13:04 < wrtp> kamaji: you can, but it might not do what you want
13:04 < wrtp> kamaji: you can also do case foo, bar, qux: /* do stuff */
13:05 < wrtp> is that what you're after?
13:05 < kamaji> wrtp: looks like
13:05 < kamaji> same outcome for many conditions basically
13:05 < kamaji> i'm assuming case foo: case bar: etc.  will only execute the
last one?
13:06 < wrtp> kamaji: it'll execute the appropriate case
13:06 < wrtp> kamaji: same as (in C) case foo: break; case bar: break; etc
13:08 < kamaji> right ok
13:08 < kamaji> luckily I originally had it like that and my unit test
didn't fail, so I found a bug in my test :D
13:09 < wrtp> no automatic fallthrough in go
13:09 < kamaji> no break either, right?
13:09 < kamaji> in case anyway
13:09 < kamaji> oh that makes case loops easier :o
13:11 < kamaji> thanks :D
13:14 < wrtp> you can do break, yes
13:14 < wrtp> so it doesn't make case loops easier :-)
13:14 < wrtp> (although you can label a loop and break label)
13:16 < kamaji> Why does it need break if there's no fall through?
13:16 < kamaji> also, "fallthrough" directly translated to German means
Diarrhoea
13:16 < kamaji> fun fact.
13:16 < aiju> kamaji: hahahahaha
13:16 < aiju> i never noticed that
13:16 < kamaji> :D
13:16 < kamaji> I'm pretty sure that's my favourite german word
13:17 < kamaji> but then there's so many other great ones like Rindfleisch
13:18 < aiju>
Rindfleischverpackungsettiketierungsüberwachungsaufgabenübertragungsgesetz
13:19 < exch> :p
13:19 < aiju> name of an actual law
13:19 < exch> great scrabble word
13:20 < kamaji> I was just looking for that word :D
13:20 < wrtp> kamaji: you don't need it, but can be useful
13:21 < kamaji> wrtp: but if there's no Durchfall then what does it do?
13:23 < wrtp> breaks anyway
13:24 < kamaji> hnnnnng :p
13:31 < marten> Is there a quick way to get the actual memory usage of a
data structure and the data it contains?
13:31 < wrtp> marten: no
13:31 < zerosanity> yay for godag
13:31 < wrtp> marten: although it's easy enough if you know when the
structure is being allocated
13:32 < wrtp> marten: the difficulty is that the data it contains may have
loops and may be shared with other data structures
13:33 < wrtp> zerosanity: goinstall is getting there...
13:34 < marten> wrtp: makes sense :) I would like to know how much memory my
custom cache uses.  Unfortunately I can't use something like ps or top because
memory is not returned to the system and while processing my program uses a lot of
memory.
13:34 < marten> I've glanced over runtime.MemProfile but am not sure whether
that's what I need
13:35 < wrtp> marten: runtime.MemStats is often useful
13:36 < marten> wrtp: ah, thanks!  Will try it
13:43 < electro_> lets see if i can word this question in a way that makes
sense:
13:43 < electro_> I have an fixedsize array of struct called 'extent'
13:43 < electro_> its made, but its empty
13:44 < electro_> i want to fill it with data via a function, so i want to
send it piece by piece as a pointer
13:44 < electro_> im using '&[SomeIndexInt]extent' as an arg to a func
13:44 < electro_> and getting syntax error
13:44 < electro_> what am i doing wrong here?
13:46 < exch> indexing an array/slice is done like: arr[idx]
13:48 < electro_> so just '&extent[index]' instead?
13:48 < exch> yes
13:48 < wrtp> electro_: you can turn a fixed size array into a slice by
slicing it, if you need to, e.g.  extend[:]
13:48 < wrtp> s/extend/extent
13:50 < kamaji> do I have to declare a slice of struct like this: foo :=
[]mystruct{mystruct{x,y,z}, mystruct{x,y,z}} or is there a shorthand?
13:50 < skelterjohn> morning
13:50 < kamaji> afternoon
13:51 < wrtp> kamaji: foo := []mystruct{{x, y, z}, {x, y, z}}
13:51 < kamaji> wrtp: thanks!
13:51 < electro_> thank you, it seemed to work
13:51 < kamaji> I was hoping I could do that
13:51 < electro_> not sure since suddenly a whole host of new errors
appeared
13:52 < wrtp> electro_: BTW fixed size arrays are relatively rare - it's
much more common to just use a slice
13:52 -!- Venom_X [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has
joined #go-nuts
13:52 -!- foocraft [~dsc@78.101.82.30] has quit [Ping timeout: 240 seconds]
13:53 < skelterjohn> oh, just got your email, wrtp
13:53 < skelterjohn> i'll check it out
13:54 < electro_> wrtp: i know the size of it beforehand and i need to fill
it irregularly, meaning i most likely will not start from 0
13:54 < electro_> will slices still work?
13:54 < wrtp> yes
13:54 < electro_> oh, right then
13:54 < electro_> thank you
13:54 < kamaji> using awk to generate code :D
13:54 < aiju> awk is always a good idea
13:54 < aiju> no matter what for
13:55 < kamaji> Definitely
13:55 < skelterjohn> awk is always a terrible idea
13:55 < wrtp> skelterjohn: BTW i've removed parser.Declarations
13:55 < aiju> skelterjohn: hwo so?
13:55 < skelterjohn> ok
13:55 < aiju> you prefer Perl or C++?  ;P
13:55 < wrtp> i tend to agree with skelterjohn
13:55 < aiju> or something else horribly fucked up
13:55 < skelterjohn> aiju: I've never once used awk, and I have lived
alright so far
13:55 < skelterjohn> therefore awk is bad
13:55 < wrtp> although perl is worse
13:55 < aiju> hahaha
13:56 < wrtp> skelterjohn: what do you use for one-liner shell scripts?
13:56 < kamaji> perl 6 supports user defined unicode operators
13:56 < kamaji> what could possibly go wrong
13:56 < skelterjohn> i don't write a lot of one-liner shell scripts, i guess
13:56 < kamaji> holy crap you could overload ZWS
13:56 < skelterjohn> but if anything, python
13:56 < aiju> perl probably has a nuclear fission operator
13:56 < wrtp> the thing i use awk for mostly is just: awk '{print $5}'
13:57 < aiju> i use awk from all kind of shit
13:57 < wrtp> and simple arithmetic
13:57 < skelterjohn> what's special about $5?
13:57 < kamaji> awk '{print "{\"" $2 "\", \"" $4 "\", 0},"}' RULES >
STEP2
13:57 < kamaji> for w maybe?
13:57 < kamaji> nope :\
13:57 < wrtp> skelterjohn: it's the size field in ls -l :-)
13:57 < skelterjohn> ah
13:58 < wrtp> awk '$1 > x {x = $1} END {print x}'
13:58 < wrtp> it's still a fairly crap language
13:58 < aiju> define fairly crap
13:58 < wrtp> the syntax is a bodge, and the handling of type conversions is
dreadful
13:59 < aiju> it is a very special purpose language
13:59 < aiju> and it does its job really well
13:59 < aiju> i wouldn't use it for production code
13:59 < kamaji> I just use it as a command line toool
13:59 < wrtp> aiju: "If you think awk is the perfect programming language
for the problem, you don't understand the problem yet.  -Rob Pike"
13:59 < skelterjohn> woo, os.Open/Create
14:00 < aiju> wrtp: what has happened to Pike
14:00 < skelterjohn> aiju: that's the whole "arguing from authority" thing I
was talking about yesterday :)
14:00 < wrtp> lol
14:01 < wrtp> the reason it's bad is that it's very easy to get wrong
14:01 < aiju> you mean like regex?
14:01 -!- tensai_cirno [~cirno@80.250.216.102] has quit [Ping timeout: 246
seconds]
14:01 < wrtp> no, i mean the semantics of the language
14:02 < aiju> huh?
14:02 < wrtp> no local variable declarations...
14:02 < wrtp> strings turn into numbers without warning
14:02 < skelterjohn> that's also one of regexp's disadvantages
14:03 < skelterjohn> regexp also has a bunch of pros, mostly related to
conciseness
14:03 < skelterjohn> man, eclipse has got to be the slowest text editor ever
written
14:03 < aiju> i use neither awk nor regexp in super serious code
14:03 < aiju> for these reasons
14:03 < kamaji> skelterjohn: regexps for speed too
14:04 < aiju> but i love them for generic data processing etc
14:04 < kamaji> cause they're strictly RLs aren't they?
14:07 < aiju> and if you need local variables in awk code, you're horribly
misusing awk
14:08 < skelterjohn> wrtp: updates to types look great
14:09 < skelterjohn> kamaji: the speed is an effect of the fact that they
can be turned into DFA
14:09 < skelterjohn> you could make something else to do that too
14:09 < kamaji> I know, but it's still an advantage :p
14:09 < skelterjohn> that would be a bit more verbose, but perhaps easier to
read/check
14:10 < kamaji> well a pro, even
14:10 < skelterjohn> kamaji: it's a feature of the class of problem it
solves.
14:10 < wrtp> skelterjohn: cool
14:11 < kamaji> oh I see what you mean
14:14 -!- PortatoreSanoDiI [~Marvin@82.84.96.22] has joined #go-nuts
14:15 -!- plainhao [~plainhao@208.75.85.237] has joined #go-nuts
14:16 -!- tvw [~tv@212.79.9.150] has quit [Read error: Connection reset by peer]
14:18 -!- Project-2501 [~Marvin@82.84.83.60] has quit [Ping timeout: 276 seconds]
14:20 < skelterjohn> wrtp: actually i'm still having an issue
14:21 < wrtp> skelterjohn: go on (but be quick, 'cos i've got to go 15
minutes ago :-])
14:21 < skelterjohn> when the package name doesn't match anything found in
the import path, it has trouble connecting references to that package to the
import spec
14:22 -!- skelterjohn_ [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has joined
#go-nuts
14:23 < skelterjohn_> stupid router
14:23 < skelterjohn_> wrtp: actually i'm still having an issue
14:23 < skelterjohn_> when the package name doesn't match anything found in
the import path, it has trouble connecting references to that package to the
import spec
14:23 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has quit [Read
error: Connection reset by peer]
14:24 < steven> whats the longest compile+link-time you guys have ever seen
for something written in Go?
14:24 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
14:24 < wrtp> skelterjohn: the package name should match the end of the
import path
14:24 < wrtp> that's a design decision i took, prompted by russ
14:24 < skelterjohn> i understand that for your lib to work, that needs to
be the case
14:24 < skelterjohn> but it's not part of the spec
14:25 < wrtp> agreed
14:25 < wrtp> but it means that you can choose the identifier for a package
without importing it, which makes things considerably quicker
14:26 < wrtp> i suggested that it be made part of the standard, but the
response was "just assume that anyway - there's no problem with that"
14:27 < skelterjohn> i wonder - is the only way for an ident to have a nil
object, with compilable code, to have it represent an unnnamed package?
14:28 < skelterjohn> it's the only way a name can be in scope without being
the source, i think
14:28 < wrtp> i think so
14:28 < wrtp> oh yes, the other thing i don't support either is import dot.
14:28 < skelterjohn> so maybe i can hack your types.exprType to check out
imported packages when it sees that
14:29 < skelterjohn> heh, gorf doesn't like imported . either
14:29 < wrtp> nobody should use it :-)
14:29 < skelterjohn> i agree
14:29 -!- femtoo [~femto@95-89-249-242-dynip.superkabel.de] has joined #go-nuts
14:29 < wrtp> skelterjohn: when do you ever have package identifiers that
don't work that way?
14:29 < wrtp> i mean paths
14:30 < skelterjohn> well, when i use gorf to move a package, for one :)
14:30 < wrtp> the package path should always end in the package identifier
14:30 < skelterjohn> easiest to make changes one bit at a time
14:31 < skelterjohn> also for gorf splitting off Decls from a package, it
would complicated that procedure significantly if i had to pick a special name for
the new package, too
14:32 < wrtp> skelterjohn: you don't have to pick a special name for the
package, just a new directory
14:33 < wrtp> e.g.  somepkgdir/apkg -> somepkgdir/decls/apkg
14:33 < skelterjohn> btw i wish you used github instead of googlecode, so i
could fork your types lib without having to choose a new global googlecode project
id
14:33 < wrtp> skelterjohn: why do you want to fork it?
14:34 < skelterjohn> and without all your experiments being in a single
thing
14:34 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Ping
timeout: 260 seconds]
14:35 < wrtp> yeah, i should create some new projects for some of the
different things probably
14:35 < skelterjohn> oh actually - i can just look at a nil Ident.Obj on my
end, duh
14:36 < wrtp> thing is, i don't want to move it from experimental stage
until gri finishes his parser stuff so i can get rid of my parser fork
14:37 < wrtp> skelterjohn: that should work
14:37 < steven> go's interesting factor is goroutines and channels
14:38 -!- emjayess [~emjayess@pix1.i29.net] has joined #go-nuts
14:38 < wrtp> skelterjohn: it's not too different from how go/parser works
now - except that you'll have to scan the whole source instead of having a
convenient list of unresolved symbols
14:38 < aiju> steven: and interfaces
14:38 < steven> other than that, it seems like an equal trade-off with
something like ruby or scala
14:38 < wrtp> steven: and interfaces
14:38 < aiju> and minimalism
14:38 < wrtp> jinx
14:38 < steven> maybe.
14:38 < steven> interface{} is just as unsafe as ruby's duck-typing though
14:39 < aiju> don't do that then
14:39 < wrtp> steven: interface{} isn't that much used
14:39 < steven> runtime panics caused by bad assertions
14:39 < skelterjohn> still it'd be nice to fork your stuff easily :)
14:39 < steven> true enough
14:39 < steven> also, Go doesnt allow FP very easily
14:39 < steven> when do we get generics already?
14:40 < wrtp> steven: the particularly nice thing about interfaces vs duck
typing is that a type assertion can check many levels of type instantly, whereas
duck typing just checks one member at a time (or one class)
14:40 < steven> wrtp: true its faster
14:40 < steven> go has speed going for it
14:41 < wrtp> it's not just the speed, it's the safety and consistency
14:41 < steven> but it lacks good FP abilities because of lack of generics
14:41 < aiju> steven: what the fuck are you even talking about
14:41 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has quit [Read
error: Connection reset by peer]
14:41 < steven> im still stuck on that.
14:41 -!- foocraft [~dsc@78.101.82.30] has joined #go-nuts
14:41 < aiju> FP = floating point?
14:41 < wrtp> functional programming
14:41 < aiju> oh lol
14:41 < aiju> every time you overload an acronym, god kills a kitten
14:42 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has joined
#go-nuts
14:42 < skelterjohn> once again i feel like a dumbass, talking to no one as
my connection drops
14:43 < aiju> skelterjohn: get a fucking bouncer
14:43 < wrtp> skelterjohn: last i saw from you was "still it'd be nice to
fork ..."
14:43 < skelterjohn> oh, that's the last thing i said
14:43 < skelterjohn> aiju: I don't know what a bouncer is
14:43 < kamaji> everything went better than expected
14:43 < steven> without generic functions like Map and Filter and Reject, Go
still feels very raw
14:43 < steven> (not in the good way)
14:43 < skelterjohn> or why it needs to be fucking
14:44 < aiju> steven: wtf?
14:44 < steven> skelterjohn: do you have a server running all the time
somewhere other than your computer?
14:44 < aiju> skelterjohn: http://en.wikipedia.org/wiki/IRC_bouncer
14:44 < skelterjohn> steven: like i said, let the ends justify the means -
don't let the means justify themselves.
14:44 < steven> aiju: when i have to use for-loops to map one slice into
another slice, thats pretty lame.
14:45 < wrtp> steven: depends how much work you're doing in the for loop
14:45 < aiju> no, it's actually fast ;P
14:45 < aiju> using map/filter usually makes me iterate over the same array
four times and more
14:45 < wrtp> steven: i usually find that the amount of code that i'd write
is about the same
14:45 < steven> its not about code amount
14:45 < aiju> and for-loops are much more easily understandable imho
14:45 < aiju> it is about gayness amount
14:45 < steven> you seem to miss the point
14:45 < aiju> which non-hip programming lacks
14:45 < steven> nevermind.  god bless you aiju
14:46 < skelterjohn> steven: generics is *all* about the code amount
14:46 < wrtp> for i, v := range a {b[i] = f(v) } vs b = map(a, func(v)
{return v})
14:46 < wrtp> they're not too different really
14:46 < skelterjohn> the only reason at all to have generics is to not
rewrite code
14:46 < skelterjohn> otherwise it's just "cool to be cool"
14:47 < wrtp> skelterjohn: that's true
14:47 < skelterjohn> and it's important to realize that generics are a tool
to get things done - not something that needs to get done itself
14:47 < steven> skelterjohn: no, its not.
14:48 -!- jokoon [~jorinovsk@LMontsouris-156-26-32-176.w80-14.abo.wanadoo.fr] has
quit [Ping timeout: 258 seconds]
14:48 < steven> to me its first about safety, and secondly clarity
14:48 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has joined
#go-nuts
14:48 < skelterjohn> generics is about having safety and clarity without
rewriting code
14:48 < skelterjohn> (notice the last part of the statement)
14:48 < skelterjohn> you can still have safety and clarity if you rewrite
the code
14:49 < steven> nevermind
14:49 < steven> lets just agree to disagree
14:49 < aiju> generics are about safety?
14:49 < ww> generics --> dry
14:49 < aiju> how that?
14:49 < aiju> the only reason Go would need generics is spee
14:49 < aiju> it has interfaces
14:49 < aiju> *speed
14:49 < ww> aiju: because if you have to copy-paste code 1000 times without
generics, there's more of a chance for error
14:50 < ww> isn't spee laundry detergent?
14:50 < skelterjohn> ww: 1000 times is a lot of times
14:50 * ww might be exaggerating a little
14:50 < ww> but still, cut-and-paste a bunch of times...  oops find an
error...  have to fix them all...  forget to fix one...
14:50 < skelterjohn> i say that because i feel it's important to talk about
code that is actually written, rather than code that could, hypothetically, be
written
14:51 < skelterjohn> ww: in that case, use interface{} and then if you want
compile-time type checking, write a wrapper for that type
14:52 < skelterjohn> don't get me wrong, i think generics-done-right would
be a good addition to the language
14:52 < ww> skelterjohn: yes, that's better than nothing
14:52 < skelterjohn> but generics-for-their-own-sake is a bad idea, and is
likely to get done poorly
14:54 -!- karpar [~user@112.96.255.6] has joined #go-nuts
14:54 < aiju> generics and interfaces are pretty fucking similar
14:55 < uriel> yawn
14:55 < ww> hilbert curves?
14:57 < aiju> now uriel, what do you think about generic in go?  ;P
14:58 < uriel> i think nobody should give a fuck what I think, and that
people so obsessed with the topic should find something better to do with their
boring lives
14:58 < uriel> something like writing code
15:00 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has quit [Read
error: Connection reset by peer]
15:01 -!- karpar [~user@112.96.255.6] has quit [Quit: Yow!  Legally-imposed
CULTURE-reduction is CABBAGE-BRAINED!]
15:02 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has joined
#go-nuts
15:04 < aiju> hahaha
15:05 < steven> aiju: try writing Map with interfaces
15:06 < wrtp> aiju: interfaces and generics are duals of each other
15:06 < plexdev> http://is.gd/ILVCjr by [Yasuhiro Matsumoto] in
go/src/pkg/crypto/des/ -- crypto/des: new package providing implementations of DES
and TDEA
15:06 < ww> isn't DES obsolete yet?
15:07 -!- xyproto [~alexander@77.40.159.131] has quit [Read error: Operation timed
out]
15:08 -!- tensai_cirno [~cirno@77.232.15.216] has joined #go-nuts
15:08 < steven> not if anyone uses it ;)
15:08 < steven> wrtp: how would you write Map with interfaces then?
15:10 -!- napsy [~luka@193.2.66.6] has quit [Quit: Lost terminal]
15:10 < wrtp> steven: you'd just operate on []interface{}
15:11 < wrtp> and func(x interface{}) interface{}
15:11 < skelterjohn> that's an unsatisfying answer, considering all the
legwork you'd need to do to change your []T to a []interface{}
15:12 < skelterjohn> and vice versa
15:12 < steven> wrtp: so i can pass in []string and get back []int?
15:12 < skelterjohn> steven: he didn't even come close to saying that :\
15:12 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
15:12 < wrtp> thing is, for map it's a non-issue because map is so trivial
15:13 < wrtp> when the code gets bigger, the relative overhead of converting
to/from interface{} becomes smaller
15:14 < wrtp> higher order functions are not a necessity - they are a
convenience
15:14 -!- marten [~marten@62.21.178.171] has quit [Quit: marten]
15:14 < steven> so is Go
15:14 < steven> go write in C dude.
15:14 < wrtp> (that's not to say that i wouldn't like to see generics)
15:14 < steven> apparently thats what youre looking for
15:15 < steven> go use C ptr callbacks with void* contexts
15:15 < wrtp> i'm not saying that generics wouldn't be useful, but noone has
come up with a decent design yet
15:15 < wrtp> and lots of people have been thinking hard about it
15:15 < steven> ok then, thats a different story
15:15 < steven> they already started working on it
15:15 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
15:15 < wrtp> no, they started thinking about it
15:16 < steven> they already started adding it to the specs, remember?
15:16 < wrtp> it's hard, because go already has one kind of polymorphism,
and generics have to fit with that
15:16 < wrtp> steven: i didn't see that
15:16 < wrtp> steven: got a link?
15:16 < steven> it had dicussion of specialized functions and other stuff
15:16 < wrtp> i never saw it
15:16 < steven> the link was only available for a few hours, after which
they made it private
15:17 < wrtp> i'd love to see a copy
15:17 < steven> i believe |craig| saw it too
15:17 < steven> i wonder if its in my chrome cache
15:17 < steven> i know others in here saw it too
15:18 -!- exch [~exch@31-151-123-254.dynamic.upc.nl] has quit [Read error:
Connection reset by peer]
15:18 -!- exch [~exch@31-151-123-254.dynamic.upc.nl] has joined #go-nuts
15:19 -!- xyproto [~alexander@77.40.159.131] has joined #go-nuts
15:21 -!- napsy [~luka@88.200.96.18] has joined #go-nuts
15:22 < plexdev> http://is.gd/Sp5eig by [Russ Cox] in 4 subdirs of go/ --
gofix: don't rewrite O_APPEND opens
15:25 -!- katakuna [~pie@kjal.demon.co.uk] has joined #go-nuts
15:26 -!- exch [~exch@31-151-123-254.dynamic.upc.nl] has quit [Read error:
Connection reset by peer]
15:27 -!- exch [~exch@31.151.123.254] has joined #go-nuts
15:28 -!- piranha [~piranha@D57D1AB3.static.ziggozakelijk.nl] has quit [Quit:
Computer has gone to sleep.]
15:30 -!- hopso [~hopso@a91-152-183-181.elisa-laajakaista.fi] has joined #go-nuts
15:30 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 260 seconds]
15:33 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
15:53 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts
15:55 -!- wrtp [~rog@2.97.144.60] has quit [Quit: wrtp]
15:55 -!- Eko [~eko@70-90-168-189-SFBACalifornia.hfc.comcastbusiness.net] has quit
[Quit: This computer has gone to sleep]
16:01 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Read
error: Operation timed out]
16:03 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has quit [Excess Flood]
16:07 -!- djcapeli1 [~djc@capelis.dj] has joined #go-nuts
16:07 -!- djcapeli1 [~djc@capelis.dj] has quit [Changing host]
16:07 -!- djcapeli1 [~djc@blender/coder/DJCapelis] has joined #go-nuts
16:07 -!- kamaji_ [~kamaji@cpc2-aztw22-2-0-cust775.aztw.cable.virginmedia.com] has
joined #go-nuts
16:07 -!- Paradox924X [~Paradox92@vaserv/irc/founder] has quit [Ping timeout: 250
seconds]
16:07 -!- kamaji [~kamaji@cpc2-aztw22-2-0-cust775.aztw.cable.virginmedia.com] has
quit [Ping timeout: 250 seconds]
16:07 -!- djcapelis [~djc@blender/coder/DJCapelis] has quit [Ping timeout: 250
seconds]
16:09 -!- frobnitz_ [~ian@king.bitgnome.net] has joined #go-nuts
16:10 -!- Archwyrm [~archwyrm@archwyrm.net] has quit [Ping timeout: 250 seconds]
16:10 -!- frobnitz [~ian@king.bitgnome.net] has quit [Ping timeout: 250 seconds]
16:10 -!- dropdrive [~dropdrive@cpe-72-227-159-70.nyc.res.rr.com] has quit [Ping
timeout: 250 seconds]
16:10 -!- aconran__ [~aconran-o@38.104.129.126] has joined #go-nuts
16:11 -!- werdan7 [~w7@freenode/staff/wikimedia.werdan7] has joined #go-nuts
16:11 -!- iant [~iant@216.239.45.130] has quit [Ping timeout: 250 seconds]
16:11 -!- jyxent [~jyxent@129.128.191.96] has quit [Ping timeout: 250 seconds]
16:11 -!- jyxent [~jyxent@129.128.191.96] has joined #go-nuts
16:12 -!- iant [~iant@216.239.45.130] has joined #go-nuts
16:12 -!- mode/#go-nuts [+v iant] by ChanServ
16:12 -!- evildho [~dho@onager.omniti.com] has quit [Ping timeout: 250 seconds]
16:12 -!- aconran_ [~aconran-o@38.104.129.126] has quit [Read error: Connection
reset by peer]
16:13 -!- Paradox924X [~Paradox92@c-68-35-229-34.hsd1.fl.comcast.net] has joined
#go-nuts
16:13 -!- evildho [~dho@onager.omniti.com] has joined #go-nuts
16:13 -!- aiju [~aiju@unaffiliated/aiju] has quit [Ping timeout: 250 seconds]
16:13 -!- aiju [~aiju@unaffiliated/aiju] has joined #go-nuts
16:14 -!- Archwyrm [~archwyrm@archwyrm.net] has joined #go-nuts
16:14 -!- dropdrive [~dropdrive@cpe-72-227-159-70.nyc.res.rr.com] has joined
#go-nuts
16:18 -!- leczb [~leczb@nat/google/x-xcldrrghbaapoiim] has joined #go-nuts
16:20 < steven> hey iant were you one of the guys who saw the generics spec
change that one night before it was made private?
16:21 <+iant> we're continuing to discuss various different ideas about
generics
16:21 <+iant> I don't think anything has really changed on that front
16:21 <+iant> I think it's more likely than not that we'll have a proposal
to send to golang-dev at some point
16:22 <+iant> but I don't know when, and it's not for sure
16:23 < steven> so, you do know about the thing im refering to?
16:23 <+iant> I do
16:23 < steven> snap!
16:24 <+iant> but I don't really want to discuss it in detail, since
probably all of the details will change
16:24 < steven> k
16:24 < steven> can you say who is involved?
16:24 <+iant> so I would just be unintentionally misleading
16:24 <+iant> the whole Google Go team has been discussing it, slowly, for
months
16:24 < steven> shawwwwwwww
16:24 < steven> ok thanks for the info.
16:24 < steven> i will sadly walk away and go back to ruby :(
16:25 <+iant> sure, I know it's an issue that matters to people
16:25 <+iant> but like everything else we want to make sure that if we do it
it is pretty much right
16:25 -!- cafesofie [~cafesofie@ool-4a5a6ee5.dyn.optonline.net] has joined
#go-nuts
16:27 -!- fzzbt_ [~jahman@melkinpaasi.cs.helsinki.fi] has joined #go-nuts
16:29 -!- fzzbt [~jahman@melkinpaasi.cs.helsinki.fi] has quit [Ping timeout: 250
seconds]
16:29 -!- jnwhiteh [~jnwhiteh@WoWUIDev/WoWI/Featured/Dongle/cladhaire] has quit
[Ping timeout: 250 seconds]
16:29 -!- enferex [~enferex@users.757.org] has quit [Ping timeout: 250 seconds]
16:29 -!- elimisteve [~elimistev@pool-71-102-138-52.snloca.dsl-w.verizon.net] has
quit [Ping timeout: 250 seconds]
16:29 -!- enferex_ [~enferex@users.757.org] has joined #go-nuts
16:30 -!- jnwhiteh_ [~jnwhiteh@li37-84.members.linode.com] has joined #go-nuts
16:30 -!- bartbes [~bartbes@love/developer/bartbes] has quit [Ping timeout: 250
seconds]
16:30 -!- bartbes [~bartbes@love/developer/bartbes] has joined #go-nuts
16:30 -!- archevan [~archevan@67.69.227.99] has quit [Ping timeout: 250 seconds]
16:31 -!- l00t [~i-i3id3r_@189.105.7.59] has quit [Ping timeout: 250 seconds]
16:32 -!- nickbp [~eqoaq@216.93.241.7.askonline.net] has quit [Ping timeout: 250
seconds]
16:32 -!- nickbp [~eqoaq@216.93.241.7.askonline.net] has joined #go-nuts
16:34 -!- chaos95_ [chaos95@mafianode.com] has joined #go-nuts
16:34 -!- serbaut [~joakims@88.80.182.68] has quit [Ping timeout: 250 seconds]
16:34 -!- serbaut1 [~joakims@88.80.182.68] has joined #go-nuts
16:34 -!- str1ngs [~strings@unaffiliated/str1ngs] has quit [Ping timeout: 250
seconds]
16:34 -!- chaos95 [chaos95@mafianode.com] has quit [Ping timeout: 250 seconds]
16:34 -!- andman_ [~andman@antiflash.org] has quit [Ping timeout: 250 seconds]
16:34 -!- andman [~andman@antiflash.org] has joined #go-nuts
16:35 < uriel> 16:25 <+iant> sure, I know it's an issue that matters
to people
16:35 < uriel> mostly to people that don't bother to learn to program in Go
16:35 <+iant> that is an argument, yes
16:36 -!- KBme [~KBme@2001:470:1f13:94::3] has joined #go-nuts
16:36 -!- krutcha [~krutcha@remote.icron.com] has joined #go-nuts
16:36 -!- krutcha [~krutcha@remote.icron.com] has quit [Remote host closed the
connection]
16:37 -!- krutcha [~krutcha@remote.icron.com] has joined #go-nuts
16:40 -!- jlouis_ [jlouis@horus.0x90.dk] has joined #go-nuts
16:40 -!- piranha [~piranha@5ED43A0B.cm-7-5a.dynamic.ziggo.nl] has joined #go-nuts
16:42 -!- KBme [~KBme@2001:470:1f13:94::3] has quit [Read error: Operation timed
out]
16:42 -!- l00t [~i-i3id3r_@189.105.7.59] has joined #go-nuts
16:46 < skelterjohn> it's sort of a tricky balancing act - the goal of
"successful" is not entirely clear.  it's somewhere between "effective" and
"popular"
16:46 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has joined
#go-nuts
16:46 -!- aimxhais1e [~mxs@buffout.org] has joined #go-nuts
16:46 -!- ville-_ [ville@xollo.net] has joined #go-nuts
16:46 < skelterjohn> adding generics right away might give a popularity
boost, but might be at an effectiveness cost
16:46 -!- kimelto_ [~kimelto@sd-13453.dedibox.fr] has joined #go-nuts
16:46 -!- btipling [~btipling@unaffiliated/sk/x-5968384] has joined #go-nuts
16:47 -!- Netsplit *.net <-> *.split quits: zimsim, aimxhaisse, kimelto,
btipling_, jlouis, Fish-, ville-
16:47 < skelterjohn> but popularity -> bigger community -> more
effective
16:47 -!- Netsplit over, joins: Fish-
16:47 < aiju> bigger community -> more people to develop crap -> ???
16:47 < skelterjohn> diamonds in the rough, etc
16:47 < skelterjohn> for instance, all the stuff i've created is solid gold
16:48 -!- zimsim [~simon@87.72.77.195] has joined #go-nuts
16:49 < exch> :p
16:49 < skelterjohn> :)
16:49 < kamaji_> Don't worry, I'm offsetting it by creating utter crap
16:50 -!- KBme [~KBme@9angled-2-pt.tunnel.tserv5.lon1.ipv6.he.net] has quit [Ping
timeout: 260 seconds]
16:51 -!- dahankzter [~henrik@92-244-3-192.customers.ownit.se] has joined #go-nuts
16:53 < kamaji_> woohoooooooo
16:53 < kamaji_> finished :D
16:54 < skelterjohn> what's finished?
16:54 < ww> kamaji is finished?
16:54 < ww> is finished or has finished?
16:54 < kamaji> porter stemmer
16:55 < skelterjohn> into NLP?
16:55 < kamaji> kiiiiind of ish
16:55 < kamaji> more text mining
16:55 < skelterjohn> is your porter stemmer public?
16:55 < kamaji> nope
16:55 < ww> oh interesting...  nlp is a hobby of mine...  wasn't aware
anyone was using go for it
16:55 < skelterjohn> i want to compare it to one i wrote years ago
16:55 < kamaji> I was going to put the library on github
16:55 < kamaji> but it's not really in a releaseable state
16:56 < skelterjohn> good idea
16:56 < skelterjohn> doesn't matter
16:56 < krutcha> bigger community is important, I'd never get buy-in to use
go at work as-is.  There'd need to be be more tools/compiler support, bindings and
library ports so I could talk to our systems without re-inventing every scaffold
from first principles, etc.  The difference of a large community is that you could
create solid gold OR utter crap, but be far less limited in scope I guess.
16:56 < skelterjohn> kamaji: the first thing i do with a new project is
create a github repo for it
16:56 < skelterjohn> i just don't tell people about it until it's
presentable
16:56 < kamaji> hehe
16:57 < skelterjohn> but i hate working without version control
16:57 < kamaji> I've got a local repo
16:57 < skelterjohn> krutcha: exactly
16:57 < kamaji> it's nice
16:57 < skelterjohn> i hate working without a remote version control :\
dropbox takes care of that to an extent
16:58 < kamaji> this box is always on so I don't mind
16:58 < kamaji> I can send you porter.go for now if you want
16:58 < skelterjohn> that's ok
16:58 < kamaji> it can stand up by itself
16:58 -!- KBme [~KBme@2001:470:1f13:94::3] has joined #go-nuts
16:58 < skelterjohn> just letme know when you put it in github
16:58 < kamaji> sure
16:58 < kamaji> should be in a few days
16:58 < exch> I work from different locations often, so I use github to
store my stuff.  Mostly it's in a pitiful state.  Unfortunately a fair bunch of
people watch all my activity and seemingly jump on anything I put up there like
rabid dogs :P That can't be good for me 'reputation', considering the shady state
of much of the work
16:58 < ww> actually you should let uriel know that way we can find it on
the cat-v pages
16:59 < kamaji> exch: It's like "real men don't use backups", but instead
"real men don't fix bugs, they just put it on a public git repo and let other
people do it"
16:59 < exch> hehe
16:59 < exch> well I usually put copious amounts of warnings in the README,
so yea
16:59 < kamaji> hehe
16:59 < kamaji> right i'm off to buy snacks
16:59 < krutcha> is using defer just as fast as an explicit call from the
tail end of a function in compiled go code?  is it compiled as such?
16:59 < kamaji> because I need SUGAR
17:00 < exch> "Use at your own risk." "This is NOT finished." etc
17:00 < nsf> krutcha: no
17:00 < ww> krutcha: no it is slower
17:00 -!- Eko [~eko@70-90-168-189-SFBACalifornia.hfc.comcastbusiness.net] has
joined #go-nuts
17:00 < ww> but often more convenient and less error-prone
17:01 < ww> it means an extra function call as the scheduler unravels a
linked-list of deferreds when the function returns
17:07 -!- KBme [~KBme@2001:470:1f13:94::3] has quit [Read error: Operation timed
out]
17:07 -!- emjayess [~emjayess@pix1.i29.net] has quit [Quit: Leaving]
17:08 < Namegduf> No, but use it anyway, it isn't *horribly* slow
17:08 < Namegduf> Just not as fast as a regular function call, which is
fast.
17:08 < steven> mmm, "fn() unless name.trim.blank?"
17:08 < steven> pretty sweet code
17:09 < skelterjohn> are you kidding?
17:09 < steven> nope
17:09 < skelterjohn> is that a reversed if statement?
17:09 < Namegduf> Yes.
17:09 < skelterjohn> and that is sweet?
17:09 < steven> yes
17:09 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
17:09 < skelterjohn> well, it's good to know where you're coming from, i
guess
17:10 < ww> i usually use defer if there is a return statement between the
resource being allocated/locked and the end of the function
17:10 < kamaji> to be fair it is sometimes more intuitive to define
conditionals like that
17:10 < Namegduf> Just looking at that makes my head hurt
17:10 < Namegduf> No, it isn't
17:10 < ww> otherwise i put the unlock/free bit at the end of the function
17:10 < Namegduf> It has a line with backwards flow of control
17:10 < steven> not all the time, but sometimes, yes
17:10 < kamaji> I mean in terms of the actual logic
17:10 < kamaji> I still disapprove :P
17:10 < Namegduf> No, not sometimes, there is never a case where it is
easier to read code which has random lines which are executed backwards
17:11 < skelterjohn> "x() unless a" should just be written "if !a { x() }
17:11 < skelterjohn> "
17:11 < steven> "take_some_action(list) unless my_list.empty?"
17:11 < skelterjohn> much more straightforward
17:11 < steven> skelterjohn: much less straightforward
17:11 < Namegduf> Because like most English speakers, I read forwards, and
that requires me to double back and correct my initial reading
17:11 < steven> <3
17:11 < Namegduf> No, much more straightforward.  Literally.
17:11 < steven> i love you all
17:11 < skelterjohn> right, i was about to say something similar
17:11 -!- KBme [~KBme@2001:470:1f13:94::3] has joined #go-nuts
17:11 < skelterjohn> to Namegduf
17:12 < skelterjohn> it reads forward
17:12 < skelterjohn> the meaning of somethign isn't changed by what comes
after it
17:12 < Namegduf> It also compiles the way it's written
17:12 < mpl> maybe steven is some sort of timelord?  :)
17:12 < krutcha> couldn't the compiler easily optimize defer's so that both
cases (defer, and a call at the end) perform in same-time without run-time
scheduler delays?  Or does this have something to do with the 'arguments evaluated
at execution time' bit?
17:12 < bartbes> Namegduf: poorly?
17:12 < Namegduf> x unless y requires the check on y to actually come before
x is executed in the compiled code.
17:13 * ww wonders if arabic and hebrew speaking programmers with poor english
find all this disorienting
17:13 < skelterjohn> how are semitic languages structured?
17:13 < Namegduf> krutcha: It could IFF the function had no early returns.
17:15 < ww> i think it's the writing convention here.  left before right or
right before left?
17:15 < skelterjohn> i see
17:15 < skelterjohn> computer programming is left to right, top to bottom
17:15 < ww> but plenty of languages have modifiers after the subject, even
archaic english and german
17:16 < skelterjohn> certainly
17:16 < skelterjohn> but in an imperative language, where statements are
(usually) executed in order, it can be confusing
17:17 < skelterjohn> programming is not poetry
17:17 < skelterjohn> people shouldn't get caught up in "neat" syntax - just
make it clear and concise
17:17 < exch> 100 [1,b] [ dup [ 3 mod 0 = "Fizz" "" ? ] [ 5 mod 0 = "Buzz"
"" ? ] bi append [ number>string ] [ nip ] if-empty print ] each
17:17 < exch> ^ poetry
17:17 < krutcha> Nameduf: I'd take that gladly, even as a compiler flag.
That way I could write locks consistently and safely while not sacrificing
performance, if I managed my returns properly.  If there was a risk of overhead on
an unlock, the first thing a lot of programmers would do is GUT the defer's, lose
the safety, and create mix'n'match coding style any time they were looking for an
increase in throughput.
17:18 < skelterjohn> krutcha: you can unroll defers by hand if you want to
optimize a particular function
17:18 < skelterjohn> in the mean time, defer is a useful shortcut, even if
you aren't catching panics
17:18 < ww> well...  poetry...  different question...  good poetry, like
good code, is distilled to the clear essence with no cruft...
17:18 < Namegduf> I would recommend doing it by hand if you care about it,
but don't care about it until a benchmark tells you to.
17:18 < skelterjohn> ww: matter of opinion, clearly
17:18 < ww> clearly
17:20 < skelterjohn> ww: I'd argue that "good communication" is "distilled
to the essence with no cruft"
17:23 < ww> skelterjohn: i'd counter that good communication needs a certain
amount of redundancy and hence cruft to be reliably understood
17:24 -!- tteras [~fabled@83.145.235.194] has quit [Quit: Ex-Chat]
17:24 < krutcha> fair enough.  The last project I did that would have been
interesting to tackle in GO was a DHCP server done in C++.  We started with scoped
lock objects (unlock on destruct, etc), then when asked if we could get anymore
throughput the natural reaction was 'tune everything', so they went out the
window..  the churn of changing everything everywhere led to a power struggle over
whether to use macros to enforce locking behavior in scopes so future change
17:24 < krutcha> s didn't require so much code churn..  etc etc, ad nauseum
17:24 < skelterjohn> then, by extension, you argue that poetry does not
communicate?
17:25 < skelterjohn> or rather, that *good* poetry does not communicate :)
17:25 -!- dahankzter [~henrik@92-244-3-192.customers.ownit.se] has quit [Ping
timeout: 246 seconds]
17:25 < ww> skelterjohn: no, only that the communication is compressed and
requires contemplation to understand
17:26 < skelterjohn> so good poetry is not good communication
17:26 < skelterjohn> or vice versa
17:26 -!- niemeyer [~niemeyer@201-11-229-180.pltce701.dsl.brasiltelecom.net.br]
has quit [Quit: Leaving]
17:26 < ww> in the same way that maxwell's equations contain no redundancy
and require some contemplation to understand, or explanation that adds a lot of
redundancy
17:26 -!- niemeyer [~niemeyer@201-11-229-180.pltce701.dsl.brasiltelecom.net.br]
has joined #go-nuts
17:27 < ww> that redundancy is desireable in communication, but not in code,
poetry or mathematics
17:27 < skelterjohn> the redundancy in code is introduced through comments
17:27 < krutcha> so, in go, given that history of project churn, the same
group would vote unanimously to never use defer from the start..  and hamstring
themselves from the benefits of a very nice language feature (unless the compiler
let them win/win) :P
17:28 < ww> sure, just as a edition of poetry might also have commentary
17:28 < ww> or a physics textbook has explanations
17:28 -!- fabled [~fabled@83.145.235.194] has joined #go-nuts
17:29 < aiju> poetry?  see K
17:29 < aiju> http://aiju.de/code/k/tictactoe *this* is poetry
17:31 -!- marten_ [~marten@g133120.upc-g.chello.nl] has joined #go-nuts
17:35 -!- tktiddle [~tim@149.5.64.141] has joined #go-nuts
17:35 < tktiddle> Anything intresting being written in go?
17:36 < exch> define 'interesting'
17:36 < nsf> tktiddle: https://github.com/languages/Go
17:39 < tktiddle> OK
17:39 -!- tktiddle [~tim@149.5.64.141] has quit [Remote host closed the
connection]
17:39 < ww> aiju: pretty
17:41 -!- dahankzter [~henrik@92-244-3-192.customers.ownit.se] has joined #go-nuts
17:41 -!- niemeyer_ [~niemeyer@189.73.142.55] has joined #go-nuts
17:42 < skelterjohn> oh neat - i have the most recently updated go github
repository
17:42 -!- niemeyer [~niemeyer@201-11-229-180.pltce701.dsl.brasiltelecom.net.br]
has quit [Ping timeout: 240 seconds]
17:42 < skelterjohn> i suppose that's not too difficult to achieve
17:47 < krutcha> is go-gtk still the primary foray into GUI/visual tools for
go?
17:48 < exch> krutcha: seems like it.  I haven't really seen any other UI
lib ports so far
17:50 < skelterjohn> we need a solid/available-on-all-platforms basic
drawing library
17:50 < skelterjohn> then someone could try to build a set of widgets on top
of that
17:50 < hopso> I was planning to implement some neat way to use HTML5/js
combination as the GUI
17:50 < aiju> skelterjohn: yeah, fuck desktop integration
17:50 < skelterjohn> i experimented that for a while, but i got frustrated
17:51 < skelterjohn> aiju: um.  i'm not sure what you're saying.
17:51 < aiju> your proposal is to just use something like SDL and build
widgets on top of that, amiright?
17:51 < hopso> It sure is frustrating.  Simple applications like remote
music player and stuff get done easily but any bigger
17:51 < hopso> becomes a mess.
17:51 < exch> https://github.com/jteeuwen/mpwc this is about as far as I got
with the html/js frontend thing.  Certainly not undoable, but it's a pain in the
ass
17:51 < skelterjohn> aiju: similar to java's approach
17:52 < aiju> i hate Java UIs
17:52 < skelterjohn> they're easy to make, that's for sure
17:52 < skelterjohn> and, to be fair, you hate almost everything, so that
statement doesn't have a lot of impact
17:52 < aiju> hahahahahaha
17:53 < napsy> is there a quick way in go to print out the current function
lik C's __func__ ?
17:53 < krutcha> oh cool exch, I recognize your name from there, I used the
crap out of your XMLX package to make XML easier :P
17:53 < skelterjohn> napsy: runtime.Caller and friends
17:53 < napsy> oh ok
17:53 < krutcha> several months ago when I was screwing around with
go-jabber
17:54 < exch> krutcha: goodie.  At least someone has a use for it then :)
17:54 < skelterjohn> napsy: runtime.Caller gives you a pc, and
runtime.FuncForPC gives you more information
17:54 < krutcha> skelterjohn: I'd be content using an existing gui flow with
bindings, glade->GTK->some sort of port to go-bindings?
17:54 < aiju> __func__ is useless without macros, isn't it?
17:55 < krutcha> exch: I would have had to do a lot of the same work to
parse an open ended XML stream anyways..  I still want to do it for fun, but your
package worked so..  *yoink*
17:57 < exch> nobody likes to reinvent the wheel :)
17:57 < exch> unless you come up with a better wheel that is
17:57 < skelterjohn> i do
17:57 < skelterjohn> i reinvent wheels all the time
17:57 < krutcha> I love reinventing the wheel if I never build such a wheel
before, I can just rarely justify it :P
17:57 < exch> me to.  mostly just cos i'm bored really.  Not because I enjoy
it.  It can also be a learning experience, doing it in a new language
17:58 < hopso> Reinventing the wheel can be entertaining often.  Especially
if you find the wheel's inner workings interesting.
17:58 < skelterjohn> sometimes you reinvent the wheel before the first wheel
was invented, but since you're not the official wheel maker, etc....
18:00 < aiju> reinventing the wheel is a good idea
18:00 < aiju> you can learn A LOT in the process
18:00 < hopso> I should start a hobby project.  Maybe a package for swf
files?
18:02 < hopso> I'm afraid of the bit structures inside them though.
18:02 < aiju> swf files?
18:02 < aiju> be afraid
18:02 < aiju> be very afraid
18:03 < hopso> I will for sure.
18:04 -!- niemeyer_ [~niemeyer@189.73.142.55] has quit [Ping timeout: 240 seconds]
18:10 < plexdev> http://is.gd/5IImv7 by [Rob Pike] in go/doc/ -- spec: add
parens missing from "protect" example.
18:12 -!- marten_ [~marten@g133120.upc-g.chello.nl] has quit [Quit: marten_]
18:12 -!- niemeyer [~niemeyer@189.27.153.77.dynamic.adsl.gvt.net.br] has joined
#go-nuts
18:12 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
18:14 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has joined
#go-nuts
18:16 < exch> Any idea why gotest doesn't pick up the _test.go files
anymore?
18:17 < exch> the documentation it links to isn't very helpful in this
matter
18:17 <+iant> it picks up xxx_test.go files, but not files named exactly
"_test.go"
18:17 <+iant> this is a change
18:17 -!- Venom_X_ [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has
joined #go-nuts
18:17 < exch> it doesnt seem to see 'glfw_test.go'
18:19 -!- Venom_X_ [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has
quit [Client Quit]
18:21 -!- Venom_X [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has quit
[Ping timeout: 264 seconds]
18:21 -!- huin [~huin@91.85.185.181] has joined #go-nuts
18:22 -!- iant [~iant@216.239.45.130] has quit [Ping timeout: 276 seconds]
18:23 -!- TheMue [~TheMue@p5DDF55BB.dip.t-dialin.net] has joined #go-nuts
18:24 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.4]
18:25 -!- itrekkie [~itrekkie@ip72-211-131-205.tc.ph.cox.net] has joined #go-nuts
18:28 -!- virtualsue [~chatzilla@nat/cisco/x-oqzplmrtfeegebde] has quit [Ping
timeout: 246 seconds]
18:30 -!- crazy2be [~crazy2be@S01060012171a573b.cg.shawcable.net] has joined
#go-nuts
18:31 -!- str1ngs [~strings@unaffiliated/str1ngs] has joined #go-nuts
18:40 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-153-6.clienti.tiscali.it] has
joined #go-nuts
18:40 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts
18:40 -!- mode/#go-nuts [+v iant] by ChanServ
18:41 -!- prip [~foo@host194-122-dynamic.35-79-r.retail.telecomitalia.it] has quit
[Ping timeout: 246 seconds]
18:42 -!- archevan [~archevan@67.69.227.99] has joined #go-nuts
18:43 -!- PortatoreSanoDiI [~Marvin@82.84.96.22] has quit [Ping timeout: 240
seconds]
18:44 -!- m4dh4tt3r [~Adium@250.sub-75-210-247.myvzw.com] has joined #go-nuts
18:44 -!- aho [~nya@fuld-590c7a49.pool.mediaWays.net] has joined #go-nuts
18:45 -!- PortatoreSanoDiI [~Marvin@82.84.66.166] has joined #go-nuts
18:48 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-153-6.clienti.tiscali.it] has
quit [Ping timeout: 246 seconds]
18:50 -!- elimisteve [~elimistev@pool-71-102-138-52.snloca.dsl-w.verizon.net] has
joined #go-nuts
18:53 -!- prip [~foo@host194-122-dynamic.35-79-r.retail.telecomitalia.it] has
joined #go-nuts
18:57 < plexdev> http://is.gd/wPC7dF by [Peter Mundy] in go/src/cmd/gotest/
-- gotest: fixes for [^.]_test file pattern
18:59 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has joined #go-nuts
19:00 -!- hopso [~hopso@a91-152-183-181.elisa-laajakaista.fi] has left #go-nuts []
19:01 -!- foocraft [~dsc@78.101.82.30] has quit [Ping timeout: 260 seconds]
19:03 -!- elimisteve [~elimistev@pool-71-102-138-52.snloca.dsl-w.verizon.net] has
quit [Quit: Later]
19:07 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has quit [Ping timeout: 260 seconds]
19:09 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has joined #go-nuts
19:10 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Read error:
Connection reset by peer]
19:10 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts
19:12 -!- Project-2501 [~Marvin@82.84.93.67] has joined #go-nuts
19:14 -!- tensorpudding [~user@99.148.205.193] has joined #go-nuts
19:15 -!- PortatoreSanoDiI [~Marvin@82.84.66.166] has quit [Ping timeout: 276
seconds]
19:15 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has quit [Read error: Operation timed out]
19:16 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has joined #go-nuts
19:18 -!- niemeyer [~niemeyer@189.27.153.77.dynamic.adsl.gvt.net.br] has quit
[Ping timeout: 240 seconds]
19:19 -!- rlab_ [~Miranda@91.200.158.34] has joined #go-nuts
19:21 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 264 seconds]
19:24 -!- artefon [~thiago@bananal.lbd.dcc.ufmg.br] has quit [Quit: bye]
19:25 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has quit [Remote host closed the connection]
19:26 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has joined #go-nuts
19:28 -!- m4dh4tt3r [~Adium@250.sub-75-210-247.myvzw.com] has quit [Ping timeout:
260 seconds]
19:28 -!- m4dh4tt3r
[~Adium@75.144.24.109-BusName-walnutcreek.ca.hfc.comcastbusiness.net] has joined
#go-nuts
19:29 < plexdev> http://is.gd/sCBxnG by [Adam Langley] in 2 subdirs of
go/src/pkg/ -- crypto/block: remove deprecated package.
19:30 -!- virtualsue [~chatzilla@nat/cisco/x-molblbzacxnqczim] has joined #go-nuts
19:31 -!- PortatoreSanoDiI [~Marvin@82.84.89.219] has joined #go-nuts
19:32 -!- niemeyer [~niemeyer@189.27.150.214.dynamic.adsl.gvt.net.br] has joined
#go-nuts
19:34 -!- ExtraSpice [XtraSpice@88.118.35.153] has quit [Remote host closed the
connection]
19:34 -!- Project-2501 [~Marvin@82.84.93.67] has quit [Ping timeout: 276 seconds]
19:37 -!- rlab_ [~Miranda@91.200.158.34] has quit [Ping timeout: 246 seconds]
19:38 -!- femtoo [~femto@95-89-249-242-dynip.superkabel.de] has quit [Read error:
Connection reset by peer]
19:39 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
19:41 -!- Project-2501 [~Marvin@82.84.81.19] has joined #go-nuts
19:44 -!- PortatoreSanoDiI [~Marvin@82.84.89.219] has quit [Ping timeout: 240
seconds]
19:46 < plexdev> http://is.gd/bo7UYf by [Adam Langley] in 2 subdirs of
go/src/pkg/ -- crypto/des: cleanups
19:47 < str1ngs> 8
19:49 -!- fabled [~fabled@83.145.235.194] has quit [Quit: Ex-Chat]
19:51 -!- awidegreen_ [~quassel@178.63.120.5] has joined #go-nuts
19:52 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has quit [Ping timeout: 258 seconds]
19:53 < ww> 7
19:56 < str1ngs> o.O
19:56 < skelterjohn> 8.
19:57 < str1ngs> what have a started :(
19:57 < skelterjohn> a slightly-less-interesting-than-usual argument about
the merits of 7 vs 8
19:58 < str1ngs> atleast it wasnt a :wq!  :P
20:00 < nickbp> cxc
20:00 < ww> there's a nice barenaked ladies song that my son likes about why
six is afraid of seven...
20:01 -!- tensorpudding [~user@99.148.205.193] has quit [Remote host closed the
connection]
20:01 -!- Venom_X [~pjacobs@adsl-99-20-147-171.dsl.aus2tx.sbcglobal.net] has
joined #go-nuts
20:01 < str1ngs> crazy canadian bands
20:03 < plexdev> http://is.gd/cM6QtA by [Rob Pike] in go/src/cmd/gotest/ --
gotest: fix a bug in error handling.
20:04 -!- dreadlorde [~dreadlord@c-24-11-39-160.hsd1.mi.comcast.net] has quit
[Ping timeout: 260 seconds]
20:04 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 252 seconds]
20:05 -!- Venom_X [~pjacobs@adsl-99-20-147-171.dsl.aus2tx.sbcglobal.net] has quit
[Ping timeout: 246 seconds]
20:05 -!- hopso [~hopso@a91-152-183-181.elisa-laajakaista.fi] has joined #go-nuts
20:07 -!- zozoR [~Morten@56344e3e.rev.stofanet.dk] has quit [Remote host closed
the connection]
20:07 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
20:09 -!- hargettp [~hargettp@pool-71-174-135-190.bstnma.east.verizon.net] has
joined #go-nuts
20:11 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts
20:12 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
20:23 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Ping timeout: 240 seconds]
20:27 -!- Venom_X [~pjacobs@adsl-99-20-147-171.dsl.aus2tx.sbcglobal.net] has
joined #go-nuts
20:28 -!- PortatoreSanoDiI [~Marvin@82.84.92.39] has joined #go-nuts
20:29 -!- hopso [~hopso@a91-152-183-181.elisa-laajakaista.fi] has left #go-nuts []
20:30 -!- PortatoreSanoDiI [~Marvin@82.84.92.39] has quit [Read error: Connection
reset by peer]
20:30 -!- vsayer [~vivek@c-67-170-236-166.hsd1.ca.comcast.net] has quit [Ping
timeout: 276 seconds]
20:30 -!- PortatoreSanoDiI [~Marvin@82.84.92.39] has joined #go-nuts
20:31 -!- Project-2501 [~Marvin@82.84.81.19] has quit [Ping timeout: 252 seconds]
20:32 -!- hargettp [~hargettp@pool-71-174-135-190.bstnma.east.verizon.net] has
quit [Quit: Leaving...]
20:32 < str1ngs> os.Expand needs
os.Expand(string,func(string,interfacs{})string) I think
20:35 < plexdev> http://is.gd/kd7wLc by [Rob Pike] in go/doc/devel/ --
roadmap: add sections on tools, packages.
20:38 < skelterjohn> what would that do
20:38 < skelterjohn> what would the interface{} be for?
20:38 < str1ngs> allow you to map $1 to say a struct field
20:39 < steven> iant: what use is ^_test.go$ anyway?
20:39 < str1ngs> steven: foo_test.go
20:39 < skelterjohn> files named "_test.go" used to get picked up by gotest
20:40 < skelterjohn> now they do no longer, and the doc needs to be updated
20:40 < skelterjohn> str1ngs: i think that would be best accomplished by a
closure...
20:40 < skelterjohn> unless I misunderstand
20:41 < str1ngs> no because the closer till would only take a string
20:42 < str1ngs> so you either have to hardcode the mappings or use global
vars
20:42 < skelterjohn> what, exactly, would be in the interface{} argument,
and how would the Expand function get at this data?
20:42 < skelterjohn> give me a use-case
20:42 < str1ngs> you can then switch $name to say struct.Name
20:43 < skelterjohn> give me a call to os.Expand, as you would have it, and
tell me what it should return
20:43 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller,
Faster, Easier.  http://miranda-im.org]
20:44 < str1ngs> "hello my name is $name" os.Expand(s,struct,callback) =
hello my name is struct.Name
20:45 < skelterjohn> what is struct,what is callback
20:45 < skelterjohn> i have a feeling i can do this really easily with a
closure
20:46 < str1ngs> you cant because the closer does not take anything but
string
20:46 < skelterjohn> closer is not a thing.
20:46 < str1ngs> see src/pkg/os/env_test.go
20:46 < crazy2be> closer != closure
20:47 < skelterjohn> func MakeAClosure(s TheStruct) func(string)string {
return func(string)string { return something from s based on the string } }
20:47 < skelterjohn> that is a closure/curried function
20:48 < str1ngs> which you cannot pass to os.Expand so that doesnt help.  as
far as I can see
20:48 < skelterjohn> os.Expand(astring, MakeAClosure(astruct)) -> what
you want
20:48 < skelterjohn> tada
20:48 < ww> yummy curry
20:49 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has joined #go-nuts
20:49 < skelterjohn> this is why everyone needs to have a class on lisp or
scheme at some point in their undergrad years, if they want a CS degree
20:49 < crazy2be> skelterjohn: To understand closures?
20:49 < skelterjohn> yes - or at least to get some practice with them
20:49 < ww> well you've the same thing in python with nested functions
20:49 < ww> and lambda
20:49 < crazy2be> hmm i use them quite a bit in javascript/jquery
20:50 -!- Venom_X [~pjacobs@adsl-99-20-147-171.dsl.aus2tx.sbcglobal.net] has quit
[Ping timeout: 276 seconds]
20:50 < skelterjohn> ww: certainly there are other contexts to learn about
closures
20:50 -!- awidegreen_ [~quassel@178.63.120.5] has quit [Ping timeout: 258 seconds]
20:50 < skelterjohn> but i think that lisp/scheme are very simple and force
you to do things this way
20:50 < aiju> lisp forces to something?
20:50 < ww> you can make some real veritable spaghetti with them if you're
not careful too
20:50 < skelterjohn> sure
20:50 < skelterjohn> i don't suggest it for production systems
20:51 < aiju> you can write ANY code in LISP
20:51 -!- zerosanity [~josh@8.20.178.82] has quit [Remote host closed the
connection]
20:51 < plexdev> http://is.gd/RSNlUe by [Rob Pike] in go/src/cmd/gotest/ --
gotest: fix windows build.
20:52 < str1ngs> skelterjohn: assuming everyone is CS major or wants to be
is just as ignorant as me not using closures before :P
20:53 < skelterjohn> that's why i said "if they want a CS degree"
20:53 < skelterjohn> if i assumed everyone wanted a CS degree, i wouldn't
have left that last bit on there
20:53 < ww> google: free kool aid for cs grads
20:53 < skelterjohn> since it would be implicit
20:53 -!- piranha [~piranha@5ED43A0B.cm-7-5a.dynamic.ziggo.nl] has quit [Quit:
Computer has gone to sleep.]
20:55 < str1ngs> skelterjohn: not to take away from your help with my
question, since I'm starting to see that this might work.  which I'm grateful for.
20:55 < skelterjohn> i didn't mean to imply that everyone should already
know about closures
20:55 < skelterjohn> i'm just saying that they're an important concept, and
they don't get enough exposure in general
20:55 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts
20:55 -!- viirya_ [~viirya@cml506-25.csie.ntu.edu.tw] has quit [Read error:
Connection reset by peer]
20:55 < str1ngs> fair enough
20:55 -!- viirya [~viirya@cml506-25.csie.ntu.edu.tw] has joined #go-nuts
20:57 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-161-184.clienti.tiscali.it] has
joined #go-nuts
20:57 -!- TheMue [~TheMue@p5DDF55BB.dip.t-dialin.net] has quit [Quit: TheMue]
20:59 < nsf> what's so cool about closures?
20:59 < nsf> and is there something what you can't model without using it?
21:00 < aiju> closures allow some true functional programming
21:00 < nsf> even C++0x has closures, ugly closures I must say
21:00 -!- PortatoreSanoDiI [~Marvin@82.84.92.39] has quit [Ping timeout: 248
seconds]
21:00 < str1ngs> nsf: in relation to os.Expand() I guess not
21:00 < nsf> aiju: is it useful in real world?
21:00 < aiju> you can replace data structures by closures
21:00 < aiju> nsf: no
21:00 < nsf> :D
21:00 < aiju> and it's not a good idea, outside of LISP
21:01 < ww> now...  list comprehensions are something i miss in go
21:01 < ww> comprehensions with channels would be lekker
21:01 < nsf> I like blocks in Ruby
21:01 < nsf> a lot
21:01 < aiju> i don't know what blocks are good for
21:01 < nsf> but I think they can be modeled without closures
21:01 < aiju> they just seem like a funny way to write loops
21:02 < nsf> aiju: resource control as well
21:02 < nsf> like:
21:02 < aiju> they invade Iraq?
21:02 < nsf> File.open("123.txt") do |f|
21:02 < nsf> x = f.read
21:02 < nsf> end
21:02 < aiju> sorry, i don't see anything but useless complexity
21:02 < ww> yeah, python has those too with "with"
21:03 < ww> but defer is a good/better replacement
21:03 < nsf> but 'with' is a special thing
21:03 < nsf> blocks are just a generic way of doing it
21:03 < aiju> postscript has something like procs lol
21:03 < nsf> sure it can be done with scope/defer
21:03 < nsf> ('scope' as in D I mean)
21:03 < nsf> { f := OpenFile(); scope f.Close(); x = f.Read(); }
21:04 < str1ngs> skelterjohn: ok so really the benefit of using this is I
still gain access to the struct inside the function?
21:04 -!- tensai_cirno [~cirno@77.232.15.216] has quit [Ping timeout: 276 seconds]
21:04 < skelterjohn> yes
21:04 < nsf> but
21:04 < nsf> I think blocks are prettier
21:04 < str1ngs> skelterjohn: great thanks
21:04 < skelterjohn> it's like passing around a little anonymous data
structure
21:05 < nsf> and if I'll have inline templates, I can do blocks as well :)
21:05 < nsf> I think it's an interesting idea to try in the static compiled
languages world
21:06 < aiju> http://aiju.de/chem/tmp/6be3e049f382d027a325e79931a550fd.png
<-- i really can't believe i make such figures using only 254 lines of Go
21:06 < nsf> for example with templated vector
21:06 < nsf> v.ForEach() { |i| v[i] = i; }
21:06 < nsf> would be nice
21:06 < crazy2be> aiju: 254 to draw that, or 254 to interpret some kind of
text format and make that?
21:07 < aiju> crazy2be: 254 to interpret some text
21:07 < crazy2be> cool
21:07 -!- Optimuss [~optimuss@5add106b.bb.sky.com] has joined #go-nuts
21:07 < aiju> i'll set up a home page with reference and explanatin tomorrow
21:08 -!- Optimuss [~optimuss@5add106b.bb.sky.com] has left #go-nuts []
21:08 < aiju> and examples!
21:08 < plexdev> http://is.gd/HiyUR6 by [Russ Cox] in go/ -- A+C: Dmitry
Chestnykh (individual CLA)
21:10 < ww> [ x * 2 | x := <-ch ]
21:10 < ww> or better,
21:10 * nsf doesn't like list comprehensions
21:10 < crazy2be> :D C++0x and go use the same syntax for initalization of
structs
21:10 < ww> [ double <- x * 2 | x := <-singles ]
21:10 < aiju> crazy2be: C++0x and Go use the same kind of braces for blocks
FUUUUU
21:10 < nsf> crazy2be: with one difference
21:10 < nsf> well, with few differences
21:11 < crazy2be> well, C++ can use constructors
21:11 < nsf> anyway, if you class in C++ has a destructor
21:11 < aiju> 1.  it's C++
21:11 < aiju> 2.  it's fucking C++
21:11 < aiju> 3.  IT IS FUCKING C++
21:11 < nsf> then you need to write a constructor
21:11 < nsf> even for simple stuff
21:11 < nsf> like
21:11 < nsf> struct { int a, b, c; }
21:11 < nsf> it's a big field of repitition
21:11 < aiju> wtf?  C++ has no struct literals?  WTF?  WTF?
21:11 < nsf> it has
21:12 < nsf> but they won't work if class has a non-trivial destructor
21:12 < crazy2be> range based for loops look cool
21:12 < nsf> anyways, who cares about C++
21:12 < nsf> it's horrible
21:12 < crazy2be> agreed
21:13 < crazy2be> but a lot more people actually use it than use go
21:13 < crazy2be> for game development, for example
21:13 < nsf> that's why I'm writing crawl
21:13 -!- tsung_ [~jon@112.104.53.151] has quit [Ping timeout: 246 seconds]
21:13 < crazy2be> it's basically the only language used for game dev
21:13 < nsf> I hope in 3-5 years at least some part of these people
21:13 < nsf> will join me :D
21:13 < crazy2be> crawl?
21:13 < nsf> my lang
21:13 < nsf> yeah, WIP name is crawl
21:14 < crazy2be> you're writing a language for game development?
21:14 -!- awidegreen [~quassel@c-0acfe555.08-2-73746f39.cust.bredbandsbolaget.se]
has quit [Remote host closed the connection]
21:14 -!- Fish [~Fish@9fans.fr] has quit [Quit: So Long, and Thanks for All the
Fish]
21:14 < nsf> yeah, for that kind of programming
21:15 < nsf> the goal is to provide a sane replacement for C
21:15 < nsf> without "horrible" new features load
21:15 < crazy2be> wow lambdas in C+0x are ugly
21:15 < nsf> yes.  they are
21:15 -!- tensai_cirno [~cirno@77.232.15.216] has joined #go-nuts
21:16 < nsf> C++0x has some nice features though
21:16 < nsf> I mean yeah, it's more features, more overload
21:16 < nsf> but things like 'auto' make life easier a bit
21:16 < krutcha> isn't it C++11 officially now?
21:16 < krutcha> ratified and whatnot?
21:16 < nsf> it's really painful to write type 2 times almost always
21:16 < crazy2be> well it's hard to improve something that is so overloaded
21:16 < nsf> like:
21:17 < nsf> MyMegaLongType *x = static_cast<MyMegaLongType>(y);
21:17 < nsf> ugh..
21:17 < nsf> hate that
21:17 < crazy2be> because they either have to break compatability, or just
add more
21:17 < nsf> crazy2be: yes, it's a dead end
21:17 < crazy2be> nsf: i like go's solution :)
21:17 < aiju> C++ is broken
21:17 < nsf> Go's ':=' rocks
21:17 < nsf> one of the best language features I've seen so far :D
21:17 < crazy2be> best feature hands down
21:17 < aiju> heh := is one of the things i'm not quite decided about
21:18 < crazy2be> although it can be annoying in inner scope
21:18 < crazy2be> if you only want to initilize one value
21:18 < aiju> it is cute and saves term in the short term, but it shadows
and makes things a bit more convoluted
21:18 < aiju> s/saves term/saves time/
21:18 < crazy2be> e.g.  blar, err := someFunc()
21:18 < skelterjohn> the only thing that i would change about :=, and this
is indirect, is to have the return values for a function be part of the function's
inner scope, like the param list is
21:19 < crazy2be> skelterjohn: You can do that
21:19 < crazy2be> i think
21:19 < crazy2be> func blar(s string) (s2 string)
21:19 < nsf> skelterjohn: named return values?
21:19 < skelterjohn> if you := something in the param list (without being
inside another block), you cannot := it
21:19 < nsf> Go can do that
21:19 < skelterjohn> but you can := something in the return values
21:19 < nsf> hm..  interesting
21:19 < nsf> and weird
21:20 < aiju> := on multiple values is awkward
21:20 < nsf> aiju: why?
21:20 < skelterjohn> equivalent to the params being defined inside the
function, the returns being defined outside
21:20 < nsf> a, b := 1, 2
21:20 < aiju> nsf: shadowing
21:20 < skelterjohn> := simple rule - anything to the left of a := is
redeclared
21:20 < crazy2be> A long long int is an integral type that is at least 64
useful bits.
21:20 < crazy2be> lol
21:20 < aiju> ch, _, err := r.ReadRune() // I DON'T WANT ERR TO BE SHADOWED
HNNNGH
21:20 < skelterjohn> when this is allowed is the question
21:20 < skelterjohn> aiju: so don't put it to the left of a :=
21:20 < skelterjohn> same way if you did var err os.Error
21:20 < skelterjohn> it would shadow it
21:21 < nsf> aiju: ah, that
21:21 < skelterjohn> that's why i made my comment about what scope return
values are defined in
21:21 < crazy2be> skelterjohn: Then you lose the advantage of :=
21:21 < nsf> interesting thing to think about
21:21 < crazy2be> since you have to declate the type of ch
21:21 < skelterjohn> crazy2be: i don't think you're getting my point
21:21 < nsf> but I guess without complex rules you can't do what you want
21:21 < aiju> i sometimes just go ahead and put a huge var block in front of
everything
21:21 < nsf> and compiler can't do anything about it
21:22 < nsf> it can't see that you didn't want to shadow a var
21:22 < aiju> nsf: yeah sure
21:22 < skelterjohn> the only time this trips people up, i think, is with
return values
21:22 < crazy2be> well there was a few solutions i saw
21:22 < skelterjohn> only time it trips me up, anyway
21:23 < aiju> a, b += 1, 1 does not work, does it?
21:23 < crazy2be> :a, err = someFunc()
21:23 < skelterjohn> no
21:23 < nsf> aiju: it doesn't
21:23 < skelterjohn> crazy2be: i think i once suggested "a:, err =
someFunc()"
21:23 < crazy2be> or (var a), err = someFunc()
21:23 < aiju> i just had some code where this would be happen
21:23 < skelterjohn> but it's unattractive
21:23 < nsf> aiju: also I was wondering why
21:23 -!- dahankzter [~henrik@92-244-3-192.customers.ownit.se] has quit [Read
error: Operation timed out]
21:23 < aiju> s/happen/handy
21:23 < nsf> I think it's perfectly fine to have that kind of stuff
21:23 < aiju> x += xd * pairDistance
21:23 < aiju> y += yd * pairDistance
21:24 < aiju> such stuff
21:24 < aiju> of course proper vector arithmetic a la Fortran would be best
here
21:27 -!- Paradox924X [~Paradox92@c-68-35-229-34.hsd1.fl.comcast.net] has quit
[Ping timeout: 276 seconds]
21:28 < nsf> x, y += xd * pairDistance, yd * pairDistance
21:28 < nsf> not much better though
21:28 < nsf> I was thinking about adding vector arithmetic
21:28 < nsf> but currently I have no idea about that
21:28 < aiju> REAL P(2)
21:28 < nsf> like for array types of the same size and the same type
21:28 < nsf> [3]int + [3]int
21:28 < nsf> etc.
21:28 < skelterjohn> nsf: you should - make vector operations a primitive
21:28 < aiju> nsf: you can use SSE and shit for such things ..
21:28 < plexdev> http://is.gd/epHNQE by [Dmitry Chestnykh] in 2 subdirs of
go/src/pkg/crypto/ -- crypto/ecdsa, crypto/rsa: use io.ReadFull to read from
random source.
21:28 < skelterjohn> then compile it for CUDA
21:28 < nsf> maybe, I don't know at the moment
21:28 < nsf> I mean it's simple feature
21:28 < aiju> and it is damn handy
21:28 < nsf> everything is up to implementing it
21:28 < aiju> i write Fortran just for that
21:28 < nsf> and I'm overwhelmed by other tasks
21:28 < nsf> type system kills me :D
21:28 < nsf> var i uint = 5; x := (1 << i) + 4.5
21:28 < nsf> even in Go it's broken
21:28 < nsf> and I'm trying to make it right with a first try :D
21:28 < nsf> in gccgo works fine though
21:29 -!- huin [~huin@91.85.185.181] has quit [Quit: leaving]
21:30 -!- tsung [~jon@112.104.53.151] has joined #go-nuts
21:30 < krutcha> I think the only issue I had with x, y, err := was
wrestling with pre-existing err rather than wanting several locally scoped ones,
and not being able to do anything other than = because of it
21:30 -!- anth [~a@72-160-85-120.dyn.centurytel.net] has quit [Quit: anth]
21:30 < nsf> krutcha: yeah, it's annoying sometimes
21:31 < nsf> but I never did a mistake in the code because of that
21:31 < aiju> nsf: what's the problem with that expression?
21:31 < skelterjohn> yes, i'll often just use "=" and a var for the other
LHS
21:31 < nsf> I mean it's annoying but it's not confusing
21:31 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 252
seconds]
21:31 < nsf> aiju: var i uint = 5; x := (1 << i) + 4.5
21:31 < aiju> yeah
21:31 < nsf> is a type error
21:31 < nsf> shift of a floating point constant
21:31 < aiju> is there some subtle pitfall in there?
21:31 < nsf> :)
21:31 < crazy2be> just add a ;= operator that only initalizes variables that
are not already initalized :D
21:31 < aiju> wtf?
21:31 < nsf> (1 << i) in that part '1' becomes float :D
21:31 < skelterjohn> nsf: i would have thought it was trying to add a float
to an int
21:31 < aiju> wtf
21:32 < nsf> aiju: it's in Go's spec :)
21:32 < skelterjohn> which is also not allowed
21:32 < skelterjohn> crazy2be: yeah, that wouldn't be confusing at all =p
21:32 < crazy2be> or ::= :D
21:32 < nsf> aiju: well
21:32 < crazy2be> :=:
21:32 < nsf> and at the moment
21:32 -!- Paradox924X [~Paradox92@c-68-35-229-34.hsd1.fl.comcast.net] has joined
#go-nuts
21:32 < nsf> Go compiler fails to recognize an error
21:32 < nsf> it dies on a linking stage
21:32 < nsf> :D
21:32 < aiju> yeah, i've heard about that
21:33 < nsf> so, I can explain the rules here
21:33 < aiju> unlike me, you actually do valid bug reports haha
21:33 < nsf> var i uint = 5;
21:33 < nsf> x := (1 << i) + 4.5
21:33 < nsf> here we have a case
21:33 < nsf> where at some point
21:33 < str1ngs> skelterjohn: doh after all that this wont work.  it only
expands ${VAR} and not "some stuff ${VAR}"
21:33 < nsf> type system should assign real types to constant expressions
21:33 < nsf> constant expressions are '1' and '4.5'
21:34 < nsf> even though 'i' is known at compile time, it's a var
21:34 < nsf> therefore we need to choose some type for (1 << i)
21:34 < nsf> we can't generate code without real type
21:34 * aiju is going sleeping
21:34 < skelterjohn> str1ngs: are you sure about that?
21:34 < str1ngs> skelterjohn: ya pretty sure
21:34 < nsf> and this type gets chosen from the surrounding context
21:34 < nsf> which is a binary expression
21:35 < nsf> abstract int OP abstract float forces conversion of LHS to
abstract float
21:35 < str1ngs> skelterjohn: I'm kinda abusing this already.  might be
better if I just write my own
21:35 < nsf> and then gets converted to real float
21:35 < nsf> that way '1' gets a float type
21:35 < nsf> and compiler should die with an error
21:35 < str1ngs> skelterjohn: I'll double check though
21:35 < nsf> it's fucking confusing
21:35 < nsf> but it's the only way to do that :D
21:35 -!- anth [~a@72-160-85-120.dyn.centurytel.net] has joined #go-nuts
21:37 -!- napsy [~luka@88.200.96.18] has quit [Ping timeout: 276 seconds]
21:37 < nsf> but I think I finally figured out a way to do it
21:37 < nsf> tomorrow we'll see :)
21:38 < skelterjohn> str1ngs: it seems to work correctly for me
21:39 < skelterjohn> if you pass "some stuff $var", it will call the
function with "var" and replace $var with whatever is returned
21:40 < str1ngs> skelterjohn: I just check so might be my closure
21:40 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts
21:41 < skelterjohn> str1ngs: http://pastebin.com/tBm3zTE5
21:41 -!- tensorpudding [~user@99.148.205.193] has joined #go-nuts
21:42 < str1ngs> yes that what I got to.  so I'll check my closure then
21:50 -!- jnwhiteh_ [~jnwhiteh@li37-84.members.linode.com] has quit [Quit: ZNC -
http://znc.sourceforge.net]
21:51 < str1ngs> skelterjohn: return func(s string) string vs return
func(string) string
21:51 < str1ngs> yay it works
21:54 -!- jnwhiteh [~jnwhiteh@WoWUIDev/WoWI/Featured/Dongle/cladhaire] has joined
#go-nuts
21:56 -!- gtaylor2 [~gtaylor@99-5-124-9.lightspeed.gnvlsc.sbcglobal.net] has
joined #go-nuts
21:56 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Ping timeout: 260
seconds]
22:03 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Ping timeout: 246 seconds]
22:06 -!- Venom_X [~pjacobs@adsl-99-20-147-171.dsl.aus2tx.sbcglobal.net] has
joined #go-nuts
22:07 -!- waqas [~waqas@jaim.at] has joined #go-nuts
22:09 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.4]
22:12 < plexdev> http://is.gd/ziNdWt by [Adam Langley] in 2 subdirs of
go/src/pkg/crypto/ -- crypto/rsa: add support for precomputing CRT values.
22:23 -!- zimsim [~simon@87.72.77.195] has quit [Remote host closed the
connection]
22:24 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
22:25 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-161-184.clienti.tiscali.it] has
quit [Quit: E se abbasso questa leva che succ...]
22:34 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
22:47 -!- Venom_X [~pjacobs@adsl-99-20-147-171.dsl.aus2tx.sbcglobal.net] has quit
[Quit: Venom_X]
22:48 -!- niemeyer [~niemeyer@189.27.150.214.dynamic.adsl.gvt.net.br] has quit
[Ping timeout: 240 seconds]
22:50 -!- virtualsue [~chatzilla@nat/cisco/x-molblbzacxnqczim] has quit [Ping
timeout: 246 seconds]
22:50 -!- Boney_ [~paul@124-168-103-51.dyn.iinet.net.au] has joined #go-nuts
22:51 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has joined
#go-nuts
22:52 -!- Boney [~paul@203-158-33-103.dyn.iinet.net.au] has quit [Ping timeout:
246 seconds]
23:00 -!- keithcascio [~keithcasc@nat/google/x-sxfnyxisrixceaqk] has joined
#go-nuts
23:01 < gtaylor2> Having a hard time figuring out how to unit test a
non-command package: https://github.com/gtaylor/go_tinker/tree/master/unit_tests
23:01 -!- niemeyer [~niemeyer@189.27.150.214.dynamic.adsl.gvt.net.br] has joined
#go-nuts
23:01 < gtaylor2> Anyone see anything obvious there that I'm doing wrong?
Getting undefined: Retfunc when running gotest.
23:11 < skelterjohn> gotest looks for files that end with _test.go
23:11 < skelterjohn> you have no such file
23:11 < exch> it didnt pick up my 'glfw_test.go' file
23:12 < skelterjohn> that seems like a bug
23:12 < skelterjohn> but it's no bug that gotest doesn't do anything for
gtaylor2's project
23:12 < exch> ya.  it works with other test files
23:12 < skelterjohn> though, perhaps the error message could be clearer
23:13 -!- krutcha [~krutcha@remote.icron.com] has quit [Remote host closed the
connection]
23:18 -!- dfc [~dfc@eth59-167-133-99.static.internode.on.net] has joined #go-nuts
23:20 -!- anth [~a@72-160-85-120.dyn.centurytel.net] has quit [Quit: anth]
23:24 -!- m4dh4tt3r
[~Adium@75.144.24.109-BusName-walnutcreek.ca.hfc.comcastbusiness.net] has quit
[Quit: Leaving.]
23:25 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has quit [Read
error: Connection reset by peer]
23:25 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has joined
#go-nuts
23:27 -!- niemeyer [~niemeyer@189.27.150.214.dynamic.adsl.gvt.net.br] has quit
[Ping timeout: 240 seconds]
23:35 -!- katakuna [~pie@kjal.demon.co.uk] has quit [Ping timeout: 246 seconds]
23:40 -!- katakuna [pie@kjal.demon.co.uk] has joined #go-nuts
23:43 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has quit [Read
error: Connection reset by peer]
23:45 -!- skelterjohn [~jasmuth@c-68-46-33-145.hsd1.nj.comcast.net] has joined
#go-nuts
23:47 -!- binarypie [~binarypie@65-166-100-58.dsl.volcano.net] has joined #go-nuts
23:48 -!- binarypie [~binarypie@65-166-100-58.dsl.volcano.net] has quit [Remote
host closed the connection]
23:48 -!- binarypie [~binarypie@65-166-100-58.dsl.volcano.net] has joined #go-nuts
23:53 -!- jgonzalez [~jgonzalez@173-14-137-134-NewEngland.hfc.comcastbusiness.net]
has quit [Ping timeout: 258 seconds]
23:54 -!- Scorchin [~Scorchin@host86-147-226-14.range86-147.btcentralplus.com] has
quit [Quit: Scorchin]
23:57 -!- aconran__ [~aconran-o@38.104.129.126] has quit [Read error: Connection
reset by peer]
23:57 -!- aconran__ [~aconran-o@38.104.129.126] has joined #go-nuts
23:59 -!- niemeyer [~niemeyer@189.27.150.214.dynamic.adsl.gvt.net.br] has joined
#go-nuts
--- Log closed Wed Apr 06 00:00:50 2011