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

--- Log opened Tue Oct 26 00:00:12 2010
00:09 < plexdev> http://is.gd/giYRy by [Russ Cox] in go/src/pkg/runtime/ --
runtime: remove .c generated from .goc during make clean
00:09 < plexdev> http://is.gd/giYRX by [Andrew Gerrand] in
go/src/cmd/goinstall/ -- goinstall: display helpful message when encountering a
cgo package.
00:09 < plexdev> http://is.gd/giYSm by [Rob Pike] in go/src/cmd/gotest/ --
gotest: generate correct gofmt-formatted _testmain.go
00:10 < adg> nsf: there you go ^^
00:10 < adg> ;)
00:10 < nsf> adg: nice, but it's not for me, I don't use goinstall :)
00:10 < adg> nsf: now you can _try_ to use it, and it will tell you what to
do instead!
00:10 < adg> :P
00:11 < nsf> :)
00:12 < TheSeeker> Is cross-compiling for win32 a relatively simple process?
or am I stuck waiting for official gomingw releases?
00:14 < adg> TheSeeker: no, it's very simple
00:14 < nsf> it depends
00:14 < adg> TheSeeker: just set GOOS=windows GOARCH=386 and make.bash
00:14 < nsf> simple for some, hard for others
00:14 < adg> then you'll have the tools and libs to build for windows
00:15 < adg> (the tests won't run, obviously)
00:15 < adg> but the library support isn't complete, so not everything will
work
00:16 < adg> TheSeeker: you can find out which parts don't work yet by
checking the lines under "# Disable tests that windows cannot run yet.
00:16 < adg> in src/pkg/Makefile
00:21 < TheSeeker> hmm, maybe I'll try compiling on my windows box under
msys bash...
00:24 < TheSeeker> or not, it doesn't work...  ok, try cygwin...
00:24 < TheSeeker> hmm, it wants goroot to be the source dir?
00:25 < adg> TheSeeker: sorry, i can't help you here.  i've not built it
under windows.  i would try mingw instead of cygwin, as that has a proven track
record.
00:27 -!- niemeyer [~niemeyer@71.16.235.2] has joined #go-nuts
00:33 -!- artefon [~thiago@189.59.198.84] has quit [Quit: bye]
00:43 < TheSeeker> I have mingw ...  the issue is executing the bash script.
00:51 < TheSeeker> hmm, on the linux side, I'm getting a "conflicting types
for 'pread' and 'prwite' in src/libmach/windows.c
00:55 -!- mikespook [~mikespook@219.137.48.14] has joined #go-nuts
00:56 < plexdev> http://is.gd/gj3ye by [Robert Griesemer] in
go/src/pkg/go/scanner/ -- go/scanner: delete unnecessary type declarations
00:56 < plexdev> http://is.gd/gj3yp by [Robert Griesemer] in
go/src/pkg/tabwriter/ -- tabwriter: delete unnecessary type declaration
00:56 < plexdev> http://is.gd/gj3yH by [Robert Griesemer] in go/src/pkg/big/
-- big: delete unnecessary type decls
00:56 < plexdev> http://is.gd/gj3zi by [Russ Cox] in 3 subdirs of
go/src/pkg/ -- arm: precise float64 software floating point
00:57 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has quit [Quit:
leaving]
00:58 -!- jhawk28 [~jhawk28@user-142gfrf.cable.mindspring.com] has joined #go-nuts
00:58 -!- aho [~nya@fuld-4d00d64c.pool.mediaWays.net] has quit [Quit:
EXEC_over.METHOD_SUBLIMATION]
01:04 -!- kanru2 [~kanru@61-30-10-70.static.tfn.net.tw] has joined #go-nuts
01:07 -!- Tv [~tv@gige.bur.digisynd.com] has quit [Read error: Operation timed
out]
01:13 < plexdev> http://is.gd/gj59V by [Russ Cox] in go/src/pkg/debug/gosym/
-- debug/gosym: do not run when cross-compiling
01:13 < plexdev> http://is.gd/gj5a2 by [Robert Griesemer] in go/lib/godoc/
-- godoc: show page title in browser title bar
01:16 < TheSeeker> hmm, GOHOSTARCH is another variable that's kindof
important for compiling :)
01:19 < TheSeeker> hmm, or not :/
01:20 < TheSeeker> I keep getting quietgcc: line 36: $tmp: ambiguous
redirect
01:21 -!- bjarneh [~bjarneh@232.80-203-20.nextgentel.com] has joined #go-nuts
01:23 < TheSeeker> I wonder if it could be because I have a space in my
username?
01:30 -!- boscop [~boscop@f055160158.adsl.alicedsl.de] has quit [Ping timeout: 252
seconds]
01:33 < TheSeeker> looks like it
01:34 < TheSeeker> now I'm getting similar pread/pwrite declaration errors
01:34 * TheSeeker gives up trying to x-compile for now
01:38 -!- electrograv [81d28070@gateway/web/freenode/ip.129.210.128.112] has
joined #go-nuts
01:39 < electrograv> hello
01:40 < electrograv> so...  I'm about to start messing around in go..  but I
have a quick question: in Go can you create a byte array and write structs
directly to that memory
01:40 < electrograv> ?
01:41 < electrograv> because if so I think that completely fulfills what I
would have originally used generics for in C++
01:42 < nsf> electrograv: you can, using 'unsafe' magic
01:42 < electrograv> hmm
01:42 < nsf> but it can be a problem in theory for garbage collector
01:42 < electrograv> because I realized that I can accomplish everything I
would have with generics using memory manipulation
01:42 < electrograv> hmm
01:43 < nsf> current one will eat it just fine
01:43 < nsf> it is conservative anyway
01:43 < electrograv> well I'd just be allocating a huge byte array
01:43 < electrograv> then destroying when the program ends
01:43 < electrograv> possibly resizing it once or twice
01:43 < nsf> but if your structs doesn't contain pointes
01:43 < nsf> pointers*
01:43 < nsf> then it's fine
01:43 < nsf> do not*
01:43 < electrograv> ok
01:44 < electrograv> good point..
01:44 < electrograv> no pointers though
01:44 < electrograv> if they had pointers in them I wouldnt be storing them
this way anyway
01:44 < nsf> so, I'll show you how it looks like now:
01:44 < nsf> a := myStruct{..}
01:44 < nsf> b := make([]byte, unsafe.Sizeof(a))
01:45 < nsf> copy(b, (*(*[999]byte)(unsafe.Pointer(&a)))[:unsafe.Sizeof(a)])
01:45 < nsf> something like that
01:45 < nsf> if I didn't screw everything somewhere :)
01:45 < electrograv> hmm
01:46 < electrograv> ok
01:46 < nsf> basically you're casting a pointer to an array to the
unsafe.Pointer
01:46 < nsf> oops, sorry
01:46 < nsf> 1.  basically you're casting a pointer to a struct to the
unsafe.Pointer
01:47 < nsf> 2.  then unsafe.Pointer to an array pointer
01:47 < nsf> 3.  then you're taking a slice of that array, dereferencing the
pointer first
01:47 < nsf> and here you go :)
01:47 < electrograv> :)
01:47 < electrograv> makes sense
01:47 < electrograv> looks a bit messy
01:47 < electrograv> but it will work
01:47 < electrograv> I think
01:48 < nsf> well, that's why it's in "unsafe"
01:48 < electrograv> yeah
01:48 < electrograv> hmmmmm
01:48 < electrograv> I like what I see in Go so far...
01:49 -!- Venom_X [~pjacobs@66.54.185.131] has quit [Quit: Venom_X]
01:49 < nsf> oh, there is also another way
01:50 < nsf> let's suppose you have a slice of bytes 'a' and a struct type
MyStruct
01:50 -!- noktoborus_ [debian-tor@gateway/tor-sasl/noktoborus] has joined #go-nuts
01:50 < nsf> b := (*MyStruct)(unsafe.Pointer(&a[0]))
01:50 < nsf> now 'b' is a pointer to this struct type, but it points to the
memory inside slice 'a'
01:51 < nsf> then you can simply assign assignable struct to it:
01:51 < nsf> *b = MyStruct{1, 2, 3}
01:51 < nsf> that way it's less error prone I believe
01:51 < nsf> and no need to use unsafe.Sizeof
01:51 < nsf> (well at some point you still have to use it, for choosing the
size for a slice)
01:51 < nsf> but..
01:52 -!- boscop [~boscop@g227146201.adsl.alicedsl.de] has joined #go-nuts
01:52 < electrograv> hmm
01:52 < electrograv> that seems pretty good
01:55 < electrograv> well as long as it works I guess...  even if its not
too clean I suppose
01:56 < nsf> the main problem that it is very unsafe
01:56 < electrograv> yeah
01:56 < nsf> it's like C no more, no less
01:56 < nsf> so, I'm suggesting doing that kind of optimizations only after
you have a fully working logic and a set of tests
01:58 -!- noktoborus_ [debian-tor@gateway/tor-sasl/noktoborus] has quit [Remote
host closed the connection]
01:58 -!- niemeyer [~niemeyer@71.16.235.2] has quit [Quit: Leaving]
01:58 -!- noktoborus_ [debian-tor@gateway/tor-sasl/noktoborus] has joined #go-nuts
01:59 < electrograv> yeah
01:59 < electrograv> hmm...  wait...  do you know if Go has a
compare-and-swap capability anywhere yet?
02:00 < jesusaurus> what makes gomake different from make?
02:00 < nsf> jesusaurus: it sets GOROOT for you
02:00 < nsf> pointing to a place where you have built Go
02:01 < nsf> electrograv: I think Go doesn't have any kind of atomic ops
02:01 < electrograv> hmmm
02:01 < Namegduf> I think certain operations are atomic
02:01 < Namegduf> But I don't know which.
02:01 < nsf> yeah, it's not specified
02:01 < Namegduf> I think assigning to a single byte is, for example.
02:01 < Namegduf> It might be platform specific.
02:01 < Namegduf> Ala C.
02:01 < electrograv> I dont think I can implement a lock-free queue without
CAS
02:01 < electrograv> yeah
02:01 < electrograv> I might just imprort the c libs
02:02 < electrograv> import*
02:02 < nsf> unfortunatelly importing C lib via cgo for that purpose is a
bad idea
02:02 < Namegduf> Yeah, it's, well, slow.
02:02 < nsf> you'll need to write a function you need in plan9's C
02:02 < nsf> or asm
02:02 < electrograv> well you dont know if it's cached though...?
02:02 < electrograv> oops
02:02 < Namegduf> No, it is slow.
02:02 < electrograv> nevermind that post, I was
02:02 < Namegduf> (Normal) C and Go have different calling conventions for
functions
02:02 < electrograv> looking at the wrong line half a page up
02:03 < electrograv> )
02:03 < Namegduf> In order to support segmented stacks in Go.
02:03 < Namegduf> This means that calling into C needs to convert to a stack
that C can accept; at least one large enough.
02:03 < nsf> yeah, but you can still write C/asm code for Go using plan9's
compiler suite
02:03 < nsf> see runtime package
02:03 < nsf> and how things work here
02:03 < electrograv> ok
02:03 < electrograv> hmm
02:03 < Namegduf> You should probably just add a single little assembly file
02:03 < electrograv> yeah
02:03 < Namegduf> Which provides the asm stuff you need.
02:04 < Namegduf> And build the rest in Go.
02:14 -!- skelterjohn [~jasmuth@c-76-124-135-199.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
02:30 -!- iant [~iant@66.135.114.72] has quit [Ping timeout: 240 seconds]
02:33 < uriel> 01:23 < TheSeeker> I wonder if it could be because I
have a space in my username?
02:33 < uriel> oh dear, do people have spaces in their user names?  *sigh*
02:34 -!- iant [~iant@66.135.114.72] has joined #go-nuts
02:34 -!- mode/#go-nuts [+v iant] by ChanServ
02:34 < uriel> TheSeeker: file an issue about it anyway, I guess if the OS
allows it, the Go build system should deal with it
02:36 -!- electrograv [81d28070@gateway/web/freenode/ip.129.210.128.112] has quit
[Quit: Page closed]
02:42 -!- skelterjohn [~jasmuth@c-76-124-135-199.hsd1.nj.comcast.net] has joined
#go-nuts
02:46 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts
02:47 -!- jhawk28 [~jhawk28@user-142gfrf.cable.mindspring.com] has quit [Remote
host closed the connection]
02:51 < uriel> damn, electrograv left, was going to post a linke to:
02:51 < uriel>
http://groups.google.com/group/golang-nuts/browse_thread/thread/6b18d8639e38660a/c0f140202ab23ff1?lnk=gst&q=cas#c0f140202ab23ff1
02:51 < uriel> (re CAS)
02:52 -!- skelterjohn [~jasmuth@c-76-124-135-199.hsd1.nj.comcast.net] has quit
[Read error: Connection reset by peer]
02:52 -!- skelterjohn [~jasmuth@c-76-124-135-199.hsd1.nj.comcast.net] has joined
#go-nuts
03:00 -!- feder [~feder@119.40.36.130] has joined #go-nuts
03:11 -!- bjarneh [~bjarneh@232.80-203-20.nextgentel.com] has left #go-nuts []
03:24 -!- Tv [~tv@cpe-76-168-227-45.socal.res.rr.com] has joined #go-nuts
03:26 -!- jcao219 [~jcao219@pool-96-226-238-248.dllstx.fios.verizon.net] has quit
[Ping timeout: 240 seconds]
03:36 * nsf can't wait for 'append' gets implemented
03:37 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 276 seconds]
03:53 * uriel eagerly nods in agreement ^_^
04:01 < KirkMcDonald> append(go, append)
04:07 < nsf> )
04:07 < nsf> go = append(go, append)
04:18 -!- dj2 [~dj2@2002:63ec:1a4e:0:21f:5bff:fe35:feb5] has quit [Remote host
closed the connection]
04:29 -!- tensorpudding [~user@99.148.202.191] has quit [Remote host closed the
connection]
04:31 < plexdev> http://is.gd/gjmUw by [Russ Cox] in 4 subdirs of go/ --
arm: enable all tests
04:40 -!- jcao219 [~Jimmy_Cao@pool-96-226-238-248.dllstx.fios.verizon.net] has
joined #go-nuts
04:41 -!- jcao219 [~Jimmy_Cao@pool-96-226-238-248.dllstx.fios.verizon.net] has
left #go-nuts []
04:52 -!- eikenberry [~jae@ivanova.zhar.net] has quit [Quit: End of line.]
05:12 < uriel> wohoo!  yay arm!
05:18 < plexdev> http://is.gd/gjrAe by [Andrew Gerrand] in go/doc/devel/ --
doc: update roadmap
05:20 < nsf> I was talking about it yesterday, and here I'm doing that
again.  My documentation generator project, sneak peek:
http://www.youtube.com/watch?v=HSFbRhXEFdw
05:20 < nsf> http://jiss.convex.ru/gowtf <- live demo
05:21 < nsf> any comments/ideas regarding usability?
05:21 < nsf> I don't like something about it, but I don't know what exactly
:(
05:23 < uriel> i like it
05:23 < uriel> but there is something not quite right
05:24 < uriel> it is a bit...
05:24 < nsf> what?  :)
05:24 < uriel> cluttered
05:24 < nsf> what do you mean?  visually?
05:24 < uriel> visually and maybe conceptually
05:24 < uriel> you don't get the feeling that you can get a clear view of
what you are looking for
05:24 < nsf> well, yep, I don't like the filtering by classes part: e.g.  :t
:tm :ftc
05:25 < nsf> yes, exactly
05:25 < nsf> something is a bit wrong
05:25 < nsf> like it's not quite structured, but a bit messy
05:25 < nsf> it's the feeling
05:25 < uriel> yes
05:26 < uriel> but I think in part it is an astetic issue
05:26 < nsf> I'm a bad web designer (or should I say I'm not a web designer
at all)
05:26 < uriel> well, the sidebar/tree/menu is not very usable, too many
items
05:26 < nsf> true
05:26 < uriel> nah, the look is good, it is just the details
05:26 < nsf> I'm thinking about removing it
05:27 < uriel> also I would add bigger margins around the content items,
05:27 < uriel> like after and before the list of types
05:27 < nsf> also I thought about highlighting best matches in a certain
special way
05:27 < nsf> like if you type "expr" and there is a type called "Expr" it
means it is the best match
05:27 < nsf> it should be highlighted as such, imho
05:28 < nsf> currently it blends with other garbage
05:28 < nsf> or yes, maybe increasing a space between elements will solve
that
05:28 < uriel> nah, first do some cleaning up, then do highlighting
05:29 < uriel> but only increase space between the content stuff
05:29 < uriel> on the tree menu, I would remove the lines that connect items
05:29 < nsf> I guess I'll get rid of a tree as a first step and possible
replace it with something useful
05:29 < uriel> and reduce the padding/margin between rows, so it is more
compact
05:30 < uriel> I'd try to make it more compact, that would make it more
useful for big trees
05:30 < nsf> I don't like the tree, especially if it's big it becomes
useless
05:30 < nsf> you're just scrolling browser a lot
05:31 < nsf> without any kind of pleasure :)
05:31 < nsf> and this smart-ass filter should solve the problem of visual
search
05:31 < uriel> also, instead of having Types/Consts/Funcs as part of the
tree, have three independent trees (I know the difference sounds superficial, but
I think it would improve things, as the long line to the left of the menu that is
created when you expand one part is caused by this)
05:31 < nsf> like if you're looking for a type, you simply do: ':t' and see
all the types
05:32 < nsf> again, I think I'll remove the tree completely
05:32 < uriel> so have three 'tabs' with three different more 'flat' menus,
one for each tyeps/consts/funcs
05:32 < uriel> oh well
05:32 < nsf> :)
05:32 < nsf> tree just ruins the way it is supposed to be used
05:32 < uriel> also, is all this from a single package?
05:33 < nsf> yes
05:33 < uriel> seems like a pretty huge package
05:33 < nsf> 107 entries (not counting methods)
05:33 < uriel> oh, also, get rid of non-public stuff
05:33 < nsf> syscall is bigger :)
05:33 < uriel> or hide it by default
05:33 < nsf> I will
05:33 < uriel> that alone would cut the amount of stuff in half or more, and
would make the tree much more manageable
05:33 < nsf> it's the generator issue, I want to finish the template
05:34 < nsf> that's the point too, yes, I guess I'll do that
05:34 < nsf> but tree..
05:34 * nsf wants to remove it
05:34 < plexdev> http://is.gd/gjt7k by [Andrew Gerrand] in go/doc/devel/ --
doc: update roadmap
05:35 < uriel> what is the 'URL' link for besides the magnifying glass?
05:35 < nsf> well, you type stuff in filter field
05:35 < nsf> and URL allows you to get an URL for what you've found
05:36 < nsf> http://jiss.convex.ru/gowtf/?:tm%20!Scope
05:36 < nsf> like this
05:36 < nsf> type and methods of the type "Scope"
05:36 < uriel> ah, I get it now
05:37 < nsf> the whole system is based around that filter field
05:37 < uriel> I think what some sites do is change the #...  selector in
the url
05:37 < uriel> (or whatever it is called)
05:37 < uriel> which I think can be done from js without forcing a reload
from the server
05:37 < nsf> yes, I know that # will prevent reloading
05:38 < nsf> but currently the way it's done in js, kind of sucks
05:38 < uriel> still, then those urls will only work via js that will check
for that stuff and re-parse it
05:38 < nsf> especially when it comes to history manipulation
05:38 < Tv> nsf: the only really odd-looking thing is the ":tm" etc syntax
05:38 < uriel> well, js kind of sucks
05:38 < nsf> Tv: uriel: agreed
05:38 < nsf> uriel: but you know, reality sucks
05:38 < uriel> Tv: I don't know, I don't find that syntax odd at all,
actually I like it
05:39 < nsf> Tv: but!  it's the only sane way to do the very flexible
filtering
05:39 < nsf> if you have any other ideas for that, go on
05:39 < Tv> nsf: not convinced about "only"
05:39 < nsf> Tv: ideas?
05:39 < Tv> nsf: i'd have to understand the current stuff first..
05:39 < nsf> ok :)
05:39 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has quit [Quit:
This computer has gone to sleep]
05:39 < nsf> type '?'
05:39 < nsf> and read the help :)
05:39 < Tv> lucene & google set a strong precedent for
<something>:<string>
05:39 < uriel> the help message is wrong though
05:40 < uriel> arg2 is optional
05:40 < nsf> it is
05:40 < uriel> and I would call it method
05:40 < Tv> nsf: const:foo, that you can abbreviate to c:foo
05:40 < Tv> nsf: immediately better than :c foo
05:40 < nsf> Tv: the problem is
05:40 < nsf> what if you just want to find foo
05:40 < uriel> Tv: ah, I like that, if only because it is consistent with
the way google search works
05:40 < Tv> nsf: just type "foo"
05:41 < Tv> uriel: exactly..
05:41 < Tv> and lucene and just about every user-friednly search engine ever
05:41 < nsf> Tv: ah, I see, but what if you want to find all the constants?
'c:'?
05:41 < Tv> nsf: sure..  or even c:*
05:41 < nsf> I see, good point
05:41 < nsf> I'll think about that
05:41 < Tv> but i don't see what else c: would mean
05:41 < nsf> and one more question
05:42 < nsf> what if you want to find a type and methods of that type?
05:42 < uriel> "The '?' query shows this page." is redundant ;)
05:42 < nsf> tm:Scope?
05:42 < Tv> nsf: what's it in current syntax?
05:42 < uriel> (another bit of clutter that can be removed)
05:42 < nsf> :tm !Scope
05:42 < nsf> '!' means show the best match only
05:42 < Tv> nsf: the combining semantics aren't really explained
05:42 < uriel> what is wrong with tm:!scope?
05:42 < Tv> nsf: does ":tm" mean something else than ":t" OR ":m"
05:42 < nsf> uriel: nothing
05:43 < uriel> or tm!:scope
05:43 < nsf> I'm just curious
05:43 < uriel> actually, I would put it before the :
05:43 < nsf> I don't mind changing the syntax
05:43 < Tv> i'd allow exclamation at end, that's more natural to me
05:43 < nsf> if it's more intuitive
05:43 < uriel> so you have [opts]:search-string
05:43 < Tv> whatiwantIREALLYWANTIT!
05:43 < nsf> Tv: agreed
05:43 < uriel> no, that is awful!
05:43 < nsf> [opts]:search-string[!]
05:44 < nsf> why?  :)
05:44 < Tv> uriel: see, you put exclamation at end too ;)
05:44 < uriel> having bot prefix and suffix modifiers, yuck
05:44 < nsf> uriel: but what if you just want to find scope
05:44 < Tv> i'd think of ! more as "c:foo !", after a space even
05:44 < nsf> you say:
05:44 < uriel> and it is totally arbitrary which ones are prefix and which
ones are sufix
05:44 < nsf> scope!
05:44 < Tv> i mean, it's not related to that single thing
05:44 < nsf> damn it
05:44 < nsf> :D
05:44 < Tv> it's "don't show a list"
05:44 < Tv> it modifies the *whole* query
05:44 < uriel> Tv: so does t: or whatever
05:44 < Tv> i mean, that's how i understood it
05:45 < Tv> "!" = "Feeling Lucky"
05:45 < uriel> it means "don't show anything other than types'
05:45 < uriel> also, having it as a sufix makes modifying existing queries
more of a pain
05:45 < Tv> uriel: i'm saying put it anywhere
05:45 < nsf> well, I'm certain about using 't:<search>' instead of ':t
<search>'
05:45 < uriel> if you have t!: blah, you can easily replace blah, while
preserving the options
05:45 < nsf> at least it is minus one space symbol
05:45 < nsf> it's good
05:46 -!- dropdriv1 [~dropdrive@cpe-72-227-159-70.nyc.res.rr.com] has joined
#go-nuts
05:46 < Tv> uriel: what's the difference?  word selection selects blah for
me in either case
05:46 < uriel> Tv: it is much easier to select from a point (eg., :) to end
of string
05:46 < uriel> than to have to select up to another single char (!)
05:46 < Tv> uriel: then say ! t:blah
05:46 < uriel> basic ui stuff
05:46 < nsf> uriel: the mind trick about: '!' is the following
05:46 < nsf> it's filtering stuff
05:47 < nsf> means from anything to more specific
05:47 < uriel> nsf: so, just like t:
05:47 < uriel> t: is also filtering stuff
05:47 < nsf> prefix does by class
05:47 < nsf> like:
05:47 < nsf> we have everything
05:47 < nsf> then we're interesting only in types
05:47 < nsf> 't:'
05:47 < nsf> then we want all types
05:47 < nsf> that match "scope'
05:47 < nsf> 't:scope'
05:47 < nsf> and finally
05:47 < nsf> we want the best match out of these matches
05:47 < nsf> 't:scope!'
05:48 < nsf> it's like natural flow
05:48 < nsf> from many things to one
05:48 < nsf> interested*
05:48 -!- exch_ [~exch@h78233.upc-h.chello.nl] has joined #go-nuts
05:48 < nsf> so..  I vote for postfix '!' :D
05:49 < nsf> actually that was the idea initially
05:49 < nsf> but the problem is:
05:49 < nsf> I have two queries in the one
05:49 < nsf> ARG1 ARG2
05:49 < nsf> ARG2 for methods
05:49 < nsf> scope!.insert!?
05:50 < nsf> or maybe just scope.insert!
05:50 < Tv> nsf: why do you need doublebang?
05:50 -!- Netsplit *.net <-> *.split quits: iocanel, twittard, uggedal,
araujo, exch, ap3xo, dropdrive, KirkMcDonald
05:50 < nsf> and the first '!' is implicit
05:50 < Tv> there's only one way to have feel lucky
05:50 < Tv> s/have //
05:50 < nsf> Tv: well, the problem is:
05:50 < nsf> tm:scope will search for types and methods of the best matched
type
05:50 < nsf> tm:scope!  will search for the best matched type and its
methods
05:51 -!- zozoR [~zozoR@5634798d.rev.stofanet.dk] has joined #go-nuts
05:51 < nsf> but I need to be able to filter methods as well
05:51 < nsf> but as I've said, implicit rules here make sense
05:51 -!- apexo [~apexo@daedalus.isaco.de] has joined #go-nuts
05:51 < nsf> like if you're trying to find methods, first '!' is implicit
05:52 < nsf> anyways..  it's a big system with few dark corners
05:52 < nsf> but thanks for comments, I'll come back when the next iteration
will be ready :D
05:53 < nsf> I'll try [opts]:<search>[!] form
05:56 -!- KirkMcDonald [~Kirk@24.143.227.33] has joined #go-nuts
05:56 -!- KirkMcDonald [~Kirk@24.143.227.33] has quit [Changing host]
05:56 -!- KirkMcDonald [~Kirk@python/site-packages/KirkMcDonald] has joined
#go-nuts
05:58 -!- twittard [~acts_as@208.236.105.27] has joined #go-nuts
06:01 < nsf> and one more thing regarding '?' vs '#' in the url
06:02 < nsf> '?' forces browser to reload the page from the server indeed
06:02 < nsf> but it reloads only the html file
06:02 < nsf> gowtf template is javascript heavy anyways, the html itself is
2kb
06:02 < nsf> not a big deal
06:03 < nsf> and gowtf's target is downloadable documentation (that's why
it's pure client-side js, without any kind of ajax queries)
06:05 < nsf> '?' gives history integration for free :)
06:10 -!- araujo [~araujo@gentoo/developer/araujo] has joined #go-nuts
06:12 -!- iocanel [~iocanel@upstream1.ath.forthnet.gr] has joined #go-nuts
06:13 < Tv> nsf: doing history with #anchors is perfectly doable
06:15 -!- feder [~feder@119.40.36.130] has quit [Ping timeout: 265 seconds]
06:26 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 265
seconds]
06:31 < nsf> Tv: in html5
06:32 < nsf> it has "onhashchange" event
06:32 < nsf> it pre-html5 it's a magic trickery with iframes
06:35 < nsf> s/it/in/
06:37 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
06:43 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has joined #go-nuts
06:45 -!- ucasano [~ucasano@host153-182-static.227-95-b.business.telecomitalia.it]
has joined #go-nuts
06:51 -!- fabled [~fabled@83.145.235.194] has quit [Quit: Ex-Chat]
06:52 -!- photron [~photron@port-92-201-49-88.dynamic.qsc.de] has joined #go-nuts
06:54 -!- fabled [~fabled@mail.fi.jw.org] has joined #go-nuts
07:01 -!- napsy [~luka@88.200.96.18] has quit [Ping timeout: 255 seconds]
07:06 -!- zozoR [~zozoR@5634798d.rev.stofanet.dk] has quit [Quit: Morten.  Desu~]
07:08 -!- MaksimBurnin [~max@44.188-224-87.telenet.ru] has quit [Ping timeout: 264
seconds]
07:09 -!- adg [~nf@210-84-53-30.dyn.iinet.net.au] has quit [Ping timeout: 255
seconds]
07:10 -!- adg [~nf@210.84.53.30] has joined #go-nuts
07:10 -!- mode/#go-nuts [+o adg] by ChanServ
07:15 -!- victorcoder [~Adium@81.184.2.251] has joined #go-nuts
07:16 -!- victorcoder [~Adium@81.184.2.251] has left #go-nuts []
07:28 -!- Fish [~Fish@86.65.182.207] has joined #go-nuts
07:49 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
07:53 -!- boscop_ [~boscop@f055105182.adsl.alicedsl.de] has joined #go-nuts
07:55 -!- uggedal [~uggedal@hydrogen.uggedal.com] has joined #go-nuts
07:56 -!- boscop [~boscop@g227146201.adsl.alicedsl.de] has quit [Ping timeout: 252
seconds]
07:58 -!- boscop_ [~boscop@f055105182.adsl.alicedsl.de] has quit [Ping timeout:
255 seconds]
08:01 -!- iant [~iant@66.135.114.72] has quit [Ping timeout: 240 seconds]
08:06 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has quit
[Quit: Ex-Chat]
08:10 -!- skelterjohn [~jasmuth@c-76-124-135-199.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
08:21 -!- wjlroe [~will@212.169.34.114] has joined #go-nuts
08:25 -!- jdp [~justin@24.238.32.162.res-cmts.segr.ptd.net] has joined #go-nuts
08:26 -!- ExtraSpice [~XtraSpice@88.118.33.48] has joined #go-nuts
08:28 -!- feder [~feder@119.40.36.130] has joined #go-nuts
08:42 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Read error: Connection
reset by peer]
09:01 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
09:05 -!- wrtp [~rog@92.17.29.2] has joined #go-nuts
09:14 -!- willdye [~willdye@fern.dsndata.com] has quit [Ping timeout: 255 seconds]
09:17 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has quit
[Ping timeout: 255 seconds]
09:17 -!- willdye [~willdye@198.183.6.23] has joined #go-nuts
09:18 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-152-44.clienti.tiscali.it] has
joined #go-nuts
09:19 -!- beneth` [~beneth`@beneth.fr] has quit [Read error: Operation timed out]
09:19 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined
#go-nuts
09:19 -!- beneth` [~beneth`@beneth.fr] has joined #go-nuts
09:22 -!- wrtp [~rog@92.17.29.2] has quit [Ping timeout: 252 seconds]
09:23 -!- Zoopee [alsbergt@zoopee.org] has quit [Ping timeout: 252 seconds]
09:23 -!- teop [~teop@78.138.171.130] has quit [Ping timeout: 252 seconds]
09:23 -!- Zoopee [alsbergt@zoopee.org] has joined #go-nuts
09:23 -!- teop [~teop@78.138.171.130] has joined #go-nuts
09:30 -!- exch_ [~exch@h78233.upc-h.chello.nl] has quit [Quit: hmmm]
09:31 -!- exch [~exch@h78233.upc-h.chello.nl] has joined #go-nuts
09:34 -!- mikespook [~mikespook@219.137.48.14] has quit [Quit: Leaving.]
09:35 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
09:40 -!- tvw [~tv@212.79.9.150] has joined #go-nuts
09:41 -!- wrtp [~rog@92.17.29.2] has joined #go-nuts
09:43 -!- armageddon [~armageddo@89.204.153.5] has joined #go-nuts
09:44 < Armageddon421> Hey there.  I was wondering if and how I can access a
webcam using go.  I could not find anything about this topic.  Any tips are
appreciated.  Thank you!
09:56 <@adg> Armageddon421: as far as I know, there are no libraries for
accessing USB webcams with Go. it would depend on your operating system, the
webcam, and the various layers of software in between
09:58 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
10:00 -!- feder [~feder@119.40.36.130] has quit [Quit: Lost terminal]
10:02 -!- boscop [~boscop@f055203086.adsl.alicedsl.de] has joined #go-nuts
10:03 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Remote host closed the
connection]
10:04 < Armageddon421> Thank you.  So there are no v4l2 bindings ?
10:04 < Armageddon421> I am on Arch Linux and my webcam uses uvcvideo
10:05 < Armageddon421> like most cheap webcams do.  How difficult is it to
write bindings for such a library ?
10:05 < exch> If it's a C library, not difficult at all/
10:05 <@adg> Armageddon421: there is a tool called cgo, which allows you to
call into C code from Go code
10:05 < Armageddon421> There are plenty of C libraries to access v4l devices
10:05 < exch> Of its a C++ codebase, it gets a little more involved, but
SWIG should take care of most of the headache
10:05 <@adg> http://golang.org/cmd/cgo/
10:06 <@adg> and some examples here http://golang.org/misc/cgo/
10:06 < Armageddon421> ah so there is a difference between c and c++ in that
case ?
10:06 <@adg> Armageddon421: there is.  you can use SWIG for either C or C++,
but CGO only works for C
10:06 < Armageddon421> okay cool
10:06 < exch> Both can be handled by SWIG afaik, but yes, C code is easier
to deal with if you do it manually
10:06 <@adg> Armageddon421: i am working on some docs for swig at the
moment, but they're incomplete as yet
10:07 < Armageddon421> Using those tools, can I just fork a goroutine that
uses SWIG to capture a frame from my webcam and later retrieve tre result ?
10:08 < exch> Armageddon421: Here are plenty of community made examples of C
bindings, You can use them as a template/guide
http://go-lang.cat-v.org/library-bindings
10:08 < exch> If you design your bindings that way, that should be possible
10:09 < Armageddon421> I think I might use this library:
http://antonym.org/libfg/
10:10 < exch> I was just looking at that.  Seems simple enough
10:10 < Armageddon421> ok nice, thank you for all your help!
10:11 < Armageddon421> I've startet diving into go about a week ago and I
think it's a really powerful language
10:11 <@adg> it is :)
10:11 <@adg> let us know how you go
10:11 < Armageddon421> I was used to python and the speed of light really
impressed me
10:11 < Armageddon421> *the speed of go
10:11 < Armageddon421> ;)
10:13 < exch> Armageddon421: looking through the source of libfg, I get the
impression it just makes syscalls to get the actual videodata from the device.  I
think you can port this lib to go directly.  No need to maintain the C side
10:14 < exch> More work of course
10:14 < Armageddon421> exch: Wow, thanks for that idea
10:14 < Armageddon421> I was thinking it used v4l as backend or something
10:14 < exch> As I understand it, v4l is part of the kernel itself
10:14 < Armageddon421> I think I'll find out whether it supports uvcvideo
first.
10:14 -!- wrtp [~rog@92.17.29.2] has quit [Ping timeout: 276 seconds]
10:14 < exch> I might be wrong though
10:15 < Armageddon421> exch: damn, you're right :) Forgot about that
10:15 < Armageddon421> Since I don't need all that TV-Tuner stuff, it should
be pretty easy to convert that over to golang
10:16 < exch> Worth a try I think
10:17 <@adg> that would be really cool!  i would use it if you write it :)
10:17 <@adg> i have a webcam attached to my linux machine at work; it should
do something other than nothing :)
10:18 -!- wrtp [~rog@92.17.29.2] has joined #go-nuts
10:18 < Armageddon421> hehe okay, nice to hear that.  I'll definitely give
it a shot
10:21 -!- idr [~idr@g225022181.adsl.alicedsl.de] has joined #go-nuts
10:29 -!- XenoPhoenix [~Xeno@cpc5-aztw24-2-0-cust39.aztw.cable.virginmedia.com]
has quit [Remote host closed the connection]
10:32 -!- XenoPhoenix [~Xeno@cpc5-aztw24-2-0-cust39.aztw.cable.virginmedia.com]
has joined #go-nuts
10:33 -!- noktoborus_ [debian-tor@gateway/tor-sasl/noktoborus] has quit [Remote
host closed the connection]
10:33 -!- artefon [~thiago@189.59.198.84] has joined #go-nuts
10:36 -!- noktoborus_ [debian-tor@gateway/tor-sasl/noktoborus] has joined #go-nuts
10:37 -!- idr [~idr@g225022181.adsl.alicedsl.de] has quit [Ping timeout: 252
seconds]
10:37 -!- idr [~idr@g225066164.adsl.alicedsl.de] has joined #go-nuts
10:37 < Armageddon421> okay first problem
10:38 < Armageddon421> How would I do this: if( ioctl( fg->fd,
VIDIOCGCAP, &(fg->caps) ) < 0 )
10:39 < Armageddon421> VIDIOCGCAP is defined in linux/videodev.h
10:40 < Armageddon421> There are lots more of ioctl calls in the code
10:40 < uriel> I guess we might need a proper way to actually display video
hen ;P
10:42 < Armageddon421> uriel: For my use there is not really a need to
display the video.  I just need direct pixel access to the frame data
10:42 -!- skejoe [~skejoe@188.114.142.231] has joined #go-nuts
10:42 < uriel> Armageddon421: I think if you look in the go-nuts or
golang-dev archives you will find discussion on how to do ioctls (it is basically
a syscall, you can also probably some existing libs that need it as examples)
10:42 < uriel> Armageddon421: yea, I know it is not needed for everything,
but would be another 'nice to have' thing ;)
10:43 < Armageddon421> I might extend on that later
10:43 < Armageddon421> It should be possible to pass the image buffer over
to SDL somehow....
10:47 < uriel> yea, I guess that should work
10:49 -!- idr0 [~idr@g229048185.adsl.alicedsl.de] has joined #go-nuts
10:49 -!- idr [~idr@g225066164.adsl.alicedsl.de] has quit [Ping timeout: 252
seconds]
10:51 < Armageddon421> I gotta run for now.  Talk to you later!
10:51 -!- Armageddon421 [~armageddo@89.204.153.5] has quit [Quit: leaving]
11:07 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has quit [Ping timeout:
252 seconds]
11:09 -!- artefon [~thiago@189.59.198.84] has quit [Quit: bye]
11:10 -!- idr0 [~idr@g229048185.adsl.alicedsl.de] has quit [Ping timeout: 252
seconds]
11:10 -!- idr0 [~idr@g229048007.adsl.alicedsl.de] has joined #go-nuts
11:12 -!- wrtp [~rog@92.17.29.2] has quit [Ping timeout: 250 seconds]
11:13 -!- ct529 [~quassel@envpc1758.york.ac.uk] has joined #go-nuts
11:18 -!- wrtp [~rog@92.17.29.2] has joined #go-nuts
11:20 -!- napsy [~luka@88.200.96.18] has joined #go-nuts
11:26 -!- xash [~xash@d025091.adsl.hansenet.de] has joined #go-nuts
11:39 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has joined #go-nuts
11:41 -!- ct529 [~quassel@envpc1758.york.ac.uk] has quit [Remote host closed the
connection]
11:54 -!- fhs [~fhs@pool-74-101-63-115.nycmny.east.verizon.net] has quit [Remote
host closed the connection]
12:00 -!- skelterjohn [~jasmuth@c-76-124-135-199.hsd1.nj.comcast.net] has joined
#go-nuts
12:18 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 240 seconds]
12:21 -!- XenoPhoenix [~Xeno@cpc5-aztw24-2-0-cust39.aztw.cable.virginmedia.com]
has quit [Remote host closed the connection]
12:23 -!- zozoR [~zozoR@5634798d.rev.stofanet.dk] has joined #go-nuts
12:24 -!- sahid [~sahid@LNeuilly-152-21-22-10.w193-253.abo.wanadoo.fr] has joined
#go-nuts
12:32 -!- skelterjohn [~jasmuth@c-76-124-135-199.hsd1.nj.comcast.net] has quit
[Ping timeout: 252 seconds]
12:33 -!- wrtp [~rog@92.17.29.2] has quit [Quit: wrtp]
12:34 -!- mikhailt [~mikhailt@2001:67c:7c:40d5:2e0:4cff:fe7b:13ff] has quit [Ping
timeout: 276 seconds]
12:35 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has joined #go-nuts
12:35 -!- wrtp [~rog@92.17.29.2] has joined #go-nuts
12:40 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
12:42 -!- XenoPhoenix [~Xeno@cpc5-aztw24-2-0-cust39.aztw.cable.virginmedia.com]
has joined #go-nuts
12:53 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has quit [Quit:
Leaving]
12:56 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has quit [Ping timeout:
264 seconds]
12:58 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
13:03 -!- iant [~iant@192.75.139.251] has joined #go-nuts
13:03 -!- mode/#go-nuts [+v iant] by ChanServ
13:05 -!- ExtraSpice [~XtraSpice@88.118.33.48] has quit [Remote host closed the
connection]
13:05 -!- idr0 [~idr@g229048007.adsl.alicedsl.de] has quit [Remote host closed the
connection]
13:07 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has joined #go-nuts
13:15 -!- tensorpudding [~user@99.148.202.191] has joined #go-nuts
13:16 < fuzzybyte> does there exist Abs() function for integers?  I could
only find Fabs in math which was for floats.
13:17 < nsf> if a < 0 { a = -a }?
13:18 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has quit [Ping timeout:
240 seconds]
13:20 < fuzzybyte> yes of course, but C had one for integers too built-in,
but not Go?
13:21 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has joined #go-nuts
13:22 < nsf> I guess there is no point in having one
13:22 < Namegduf> Go doesn't have one, no, because it's a relatively easy
operation.
13:22 < fuzzybyte> ok.
13:26 < nsf> http://sourceware.org/git/?p=glibc.git;a=blob;f=stdlib/abs.c
13:26 < nsf> this is how it's implemented in glibc
13:27 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
13:27 < nsf> so I was right, there is no point in having it as a library
function
13:31 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
13:37 < wrtp> you could always do it branch-free: (x ^ y) - y
13:37 -!- rickard2 [~rickard@netra.esec.du.se] has joined #go-nuts
13:38 < wrtp> fuzzybyte: but that's a bit tricksy
13:38 -!- rickard8 [rickard@v-412-ostermalm-206.bitnet.nu] has quit [Quit:
leaving]
13:39 < wrtp> oops, what i meant as
13:39 < wrtp> was
13:39 < wrtp> func abc(a int) {b := a >> 31; return (a ^ b) - b}
13:40 < wrtp> s/abc(a int)/abs(a int) int/
13:40 < fuzzybyte> ))
13:43 < fuzzybyte> abs() is trivial, but I don't like recoding the wheel
everytime if necessary.
13:44 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has quit [Quit:
Leaving.]
13:44 < yiyus> c'mon, this is not what I'd call a wheel
13:45 < bortzmeyer> Why Go has a * operator when it is trivial to recode it
with + ?
13:46 < fuzzybyte> heh
13:50 < xash> Because * is a processor supported operation ;-)
13:53 -!- niemeyer [~niemeyer@71.16.235.2] has joined #go-nuts
13:56 -!- dj2 [~dj2@216.16.242.254] has joined #go-nuts
14:00 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts
14:04 -!- skejoe [~skejoe@188.114.142.231] has quit [Quit: leaving]
14:08 -!- tasosos [~tasosos@188.4.26.132.dsl.dyn.forthnet.gr] has joined #go-nuts
14:15 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Quit: skelterjohn]
14:18 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has quit [Ping
timeout: 276 seconds]
14:24 -!- gavintong [71fe9aee@gateway/web/freenode/ip.113.254.154.238] has joined
#go-nuts
14:26 -!- ronnyy [~quassel@2001:6f8:12c6:1c86:224:1dff:fed7:9541] has joined
#go-nuts
14:27 -!- gmilleramilar [~gmiller@184-106-207-119.static.cloud-ips.com] has joined
#go-nuts
14:30 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has joined #go-nuts
14:40 -!- cenuij [~cenuij@base/student/cenuij] has quit [Remote host closed the
connection]
14:40 -!- gavintong [71fe9aee@gateway/web/freenode/ip.113.254.154.238] has left
#go-nuts []
14:45 -!- cenuij [~cenuij@78.122.184.175] has joined #go-nuts
14:45 -!- cenuij [~cenuij@78.122.184.175] has quit [Changing host]
14:45 -!- cenuij [~cenuij@base/student/cenuij] has joined #go-nuts
14:54 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
14:54 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts
14:55 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Client Quit]
14:56 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has joined #go-nuts
14:56 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has quit [Client Quit]
15:20 -!- kanru [~kanru@61-30-10-70.static.tfn.net.tw] has quit [Ping timeout: 252
seconds]
15:22 -!- awidegreen [~quassel@62.176.237.78] has joined #go-nuts
15:28 -!- Fish [~Fish@86.65.182.207] has quit [Remote host closed the connection]
15:29 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has joined #go-nuts
15:32 -!- bortzmeyer [~bortzmeye@batilda.nic.fr] has quit [Quit: Leaving.]
15:38 -!- niemeyer [~niemeyer@71.16.235.2] has quit [Quit: Leaving]
15:41 < plexdev> http://is.gd/gksmM by [Russ Cox] in go/doc/ -- install doc:
arm is a little better
15:41 < plexdev> http://is.gd/gksmY by [Russ Cox] in 2 subdirs of go/src/ --
gc, runtime: copy([]byte, string)
15:41 < plexdev> http://is.gd/gksno by [Russ Cox] in go/test/ -- test
copy([]byte, string)
15:48 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has joined #go-nuts
15:48 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has quit [Client Quit]
15:49 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has joined #go-nuts
15:52 -!- Venom_X [~pjacobs@66.54.185.131] has joined #go-nuts
15:52 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has quit [Quit:
leaving]
15:58 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has joined #go-nuts
16:00 -!- xash [~xash@d025091.adsl.hansenet.de] has quit [Read error: Operation
timed out]
16:00 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has joined #go-nuts
16:00 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Quit:
Leaving]
16:02 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection]
16:05 < uriel> bleh, googlegroups spam filters are so totally useless
16:06 < uriel> same piece of spam made it into every group I'm on
16:11 < TheSeeker> What about the 3 million other spam messages that didn't
make it to any of them?
16:14 -!- eikenberry [~jae@ivanova.zhar.net] has joined #go-nuts
16:18 < uriel> what about them?  i don't get spam from any other mailing
lists
16:24 < TheSeeker> My point is you say the spam filter is useless because
*A* spam message got through.  not perfect is not useless.
16:25 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has quit [Ping timeout:
240 seconds]
16:26 < Namegduf> No, he's saying it's useless because it should have
guessed that an email sent to many different groups was spam reliably, as it's an
obvious sign.
16:38 -!- idr [~idr@g229048007.adsl.alicedsl.de] has joined #go-nuts
16:45 -!- tobel [~tobel@pD9E8A584.dip.t-dialin.net] has joined #go-nuts
16:45 -!- tobel [~tobel@pD9E8A584.dip.t-dialin.net] has quit [Client Quit]
16:45 -!- tobel [~tobel@pD9E8A584.dip.t-dialin.net] has joined #go-nuts
16:46 -!- tobel [~tobel@pD9E8A584.dip.t-dialin.net] has quit [Client Quit]
16:46 -!- tulcod [~auke@z032089.its-s.tudelft.nl] has joined #go-nuts
16:47 -!- rbraley [~rbraley@ip72-222-129-26.ph.ph.cox.net] has joined #go-nuts
16:47 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has quit [Quit:
Leaving.]
16:48 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has joined #go-nuts
16:53 -!- tvw [~tv@e176000205.adsl.alicedsl.de] has joined #go-nuts
16:57 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has joined #go-nuts
16:57 -!- tensorpudding [~user@99.148.202.191] has quit [Remote host closed the
connection]
16:58 -!- tensorpudding [~user@99.148.202.191] has joined #go-nuts
16:59 -!- rbraley [~rbraley@ip72-222-129-26.ph.ph.cox.net] has quit [Ping timeout:
265 seconds]
17:00 -!- rbraley [~rbraley@ip72-222-129-26.ph.ph.cox.net] has joined #go-nuts
17:03 -!- tulcod [~auke@z032089.its-s.tudelft.nl] has quit [Read error: Connection
reset by peer]
17:05 -!- Tv [~tv@cpe-76-168-227-45.socal.res.rr.com] has quit [Ping timeout: 276
seconds]
17:09 -!- ShadowIce
[~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has joined
#go-nuts
17:09 -!- ShadowIce
[~pyoro@HSI-KBW-109-193-120-162.hsi7.kabel-badenwuerttemberg.de] has quit
[Changing host]
17:09 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
17:10 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Remote host closed the
connection]
17:18 -!- tvw [~tv@e176000205.adsl.alicedsl.de] has quit [Ping timeout: 252
seconds]
17:18 -!- Fish [~Fish@9fans.fr] has joined #go-nuts
17:19 -!- cenuij [~cenuij@base/student/cenuij] has quit [Remote host closed the
connection]
17:24 -!- idr [~idr@g229048007.adsl.alicedsl.de] has quit [Disconnected by
services]
17:24 -!- iant [~iant@192.75.139.251] has quit [Quit: Leaving.]
17:24 -!- iant1 [~iant@192.75.139.251] has joined #go-nuts
17:24 -!- idr0 [~idr@g229048007.adsl.alicedsl.de] has joined #go-nuts
17:24 -!- mode/#go-nuts [+v iant] by ChanServ
17:24 -!- tvw [~tv@e176000205.adsl.alicedsl.de] has joined #go-nuts
17:26 -!- tvw [~tv@e176000205.adsl.alicedsl.de] has quit [Read error: Connection
reset by peer]
17:27 -!- wrtp [~rog@92.17.29.2] has quit [Ping timeout: 252 seconds]
17:29 -!- tvw [~tv@e176000205.adsl.alicedsl.de] has joined #go-nuts
17:34 -!- wrtp [~rog@92.17.29.2] has joined #go-nuts
17:36 -!- Tv [~tv@gige.bur.digisynd.com] has joined #go-nuts
17:39 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has quit [Quit:
Leaving.]
17:55 -!- MaksimBurnin [~max@44.188-224-87.telenet.ru] has joined #go-nuts
18:12 -!- virtualsue [~chatzilla@nat/cisco/x-sycbazihiznoqhba] has joined #go-nuts
18:15 -!- ucasano [~ucasano@host153-182-static.227-95-b.business.telecomitalia.it]
has quit [Quit: ucasano]
18:20 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has joined #go-nuts
18:22 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has quit [Client Quit]
18:25 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has joined #go-nuts
18:40 -!- enherit [~enherit@cpe-98-149-170-48.socal.res.rr.com] has joined
#go-nuts
18:57 -!- TheMue [~TheMue@pd907c9d7.dip0.t-ipconnect.de] has joined #go-nuts
19:00 -!- femtooo [~femto@95-89-197-196-dynip.superkabel.de] has joined #go-nuts
19:00 -!- wjlroe [~will@212.169.34.114] has quit [Ping timeout: 240 seconds]
19:03 -!- tvw [~tv@e176000205.adsl.alicedsl.de] has quit [Ping timeout: 252
seconds]
19:03 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Ping
timeout: 252 seconds]
19:04 -!- aho [~nya@fuld-4d00d2e3.pool.mediaWays.net] has joined #go-nuts
19:17 -!- IRWolfie1 [irwolfie@69.162.126.237] has joined #go-nuts
19:18 -!- Altercation [~Altercati@pdpc/supporter/active/altercation] has quit
[Ping timeout: 255 seconds]
19:18 -!- IRWolfie- [irwolfie@ircnoob.com] has quit [Ping timeout: 265 seconds]
19:18 -!- Altercation [~Altercati@pdpc/supporter/active/altercation] has joined
#go-nuts
19:19 -!- Archwyrm [~archwyrm@archwyrm.net] has quit [Ping timeout: 265 seconds]
19:19 -!- Archwyrm [~archwyrm@archwyrm.net] has joined #go-nuts
19:23 -!- sacho_ [~sacho@95-42-65-196.btc-net.bg] has joined #go-nuts
19:26 -!- sacho [~sacho@95-42-106-208.btc-net.bg] has quit [Ping timeout: 252
seconds]
19:29 -!- calif [~calif@aehz209.neoplus.adsl.tpnet.pl] has joined #go-nuts
19:29 < calif> Hello!
19:29 < calif> Are there anybody from Poland?  Please write to me.  :)
19:31 -!- artefon [~thiago@189.59.198.84] has joined #go-nuts
19:32 < calif> Are there anybody from Poland?  Please write to me.  :)
19:32 -!- calif [~calif@aehz209.neoplus.adsl.tpnet.pl] has quit [Client Quit]
19:32 -!- wrtp [~rog@92.17.29.2] has quit [Quit: wrtp]
19:40 -!- wjlroe [~will@78-86-14-131.zone2.bethere.co.uk] has joined #go-nuts
19:43 -!- cenuij [~cenuij@base/student/cenuij] has joined #go-nuts
19:43 -!- rbraley [~rbraley@ip72-222-129-26.ph.ph.cox.net] has quit [Ping timeout:
255 seconds]
19:44 -!- tvw [~tv@e176000205.adsl.alicedsl.de] has joined #go-nuts
19:47 -!- im2ee [~calif@aehz209.neoplus.adsl.tpnet.pl] has joined #go-nuts
19:47 -!- tensorpudding [~user@99.148.202.191] has quit [Remote host closed the
connection]
19:48 < im2ee> Hello!  Are there anybody from Poland?  Please write me as
fast as it's possible.  I've interesting informations for polish Go programmers
(for beginners and advenced).
19:48 < im2ee> *advanced
19:49 < skelterjohn> oh it's too bad - calif was just here and you could
have talked to him/her
19:50 <+iant> came in from the same IP address too, how odd
19:50 < skelterjohn> small world!
19:50 < im2ee> It was I. I registred new nickname, because I was not sure
that my messages come - sorry for problem.
19:51 < im2ee> Do you know any polish Go programmers?
19:51 * skelterjohn is shocked
19:51 < skelterjohn> and, no, i don't
19:52 -!- ako [~nya@fuld-4d00d0f1.pool.mediaWays.net] has joined #go-nuts
19:52 < im2ee> skelterjohn - why You are shocked?  :)
19:53 < TheMue> Why does it explicitely has to be Poland?  Aren't we one
great family?  ;)
19:55 -!- aho [~nya@fuld-4d00d2e3.pool.mediaWays.net] has quit [Ping timeout: 252
seconds]
19:55 < im2ee> Yes, We are one great family, but I would like to expand Go
in Poland.  :)
19:55 <+iant> im2ee: see http://golang.pl/
19:55 < im2ee> It's good idea, i think.  :)
19:55 -!- femtooo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Quit:
Leaving]
19:55 < fuzzybyte> lol, golang.pl
19:55 < im2ee> golang.pl - it's Language school.  :)
19:56 < exch> They should add Go to the curriculum :p
19:56 < im2ee> iant: maybe you mean golang.org.pl ?
19:57 <+iant> yeah
19:57 <+iant> sorry
19:58 < im2ee> I know guy who is administrator of this site.  I met him just
now.
19:58 < im2ee> But i need more people.  :)
19:59 < im2ee> I'll show Go polish programmers, because people don't heard
about it a lot.
19:59 < im2ee> If I make any mistakes, please correct me, ok?  :)
20:01 -!- tensorpudding [~user@99.148.202.191] has joined #go-nuts
20:04 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-152-44.clienti.tiscali.it] has
quit [Quit: E se abbasso questa leva che succ...]
20:05 < impl> im2ee: did you decide to send me a PM because my name ends in
'pl' or are you just mass-PMing everyone?
20:08 < im2ee> Hmm, I write to You, because i chose some people from "names"
list, and I wrote to them, sorry if it's problem.  :)
20:09 < kimelto> impl: you're a lucky man.  you may want to take your chance
at the national lottery, eh.
20:09 < im2ee> :)
20:11 -!- tensorpudding [~user@99.148.202.191] has quit [Remote host closed the
connection]
20:11 -!- gastal [~gastal@187.106.43.200] has joined #go-nuts
20:14 < gastal> I wrote a server(http://pastebin.com/zMeZ3KFK) and a
client(http://pastebin.com/gGjs2WNy), however as soon as the client connect I get
an err == os.EOF from Read() on the server.  What I'm doing wrong?
20:17 < KBme> gastal: did you check if read had any data in it?
20:18 < gastal> KBme: it returns a 0
20:22 < gastal> and read is indeed empty
20:23 < KBme> i don't know c well enough
20:23 < KBme> what is that memset?
20:24 -!- zozoR [~zozoR@5634798d.rev.stofanet.dk] has quit [Quit: Morten.  Desu~]
20:24 < KBme> ah i see
20:24 < gastal> KBme: it sets every byte on server_addr.sin_zero to 0
20:24 < gastal> the client works with a C server
20:26 < MaksimBurnin> fills n(3-rd param) bytes of memory at address(1st
param) with some char(second param)
20:26 -!- ronnyy [~quassel@2001:6f8:12c6:1c86:224:1dff:fed7:9541] has quit [Remote
host closed the connection]
20:27 < KBme> yea man memset did it
20:29 -!- ronnyy [~quassel@2001:6f8:12c6:1c86:224:1dff:fed7:9541] has joined
#go-nuts
20:31 * KBme clueless :(
20:31 -!- tensorpudding [~user@99.148.202.191] has joined #go-nuts
20:31 < gastal> KBme: well, thansk for trying, =/
20:31 < KBme> gastal: check n at all?
20:31 -!- rbraley [~rbraley@ip72-222-128-78.ph.ph.cox.net] has joined #go-nuts
20:31 < KBme> how much is n?
20:32 < gastal> n == 0
20:32 < KBme> hopefully someone smarter than I comes around ;)
20:33 < MaksimBurnin> how much is "sent"?
20:33 < gastal> sent == 6
20:37 < MaksimBurnin> did you tried without SetKeepAlive?  i am sure about
it )
20:38 < gastal> MaksimBurnin: just did, no change....
20:39 < KBme> gastal: try closing the socket without deferring?
20:39 < KBme> (probably not, russian roulette)
20:40 < gastal> KBme: I tried not closing the socket at all, no change, =)
20:40 -!- niemeyer [~niemeyer@conference/ubuntudevelopersummit/x-ftrgzqcbyjijwikp]
has joined #go-nuts
20:40 < KBme> heh
20:40 < KBme> dammit it must be obvious..
20:41 < gastal> KBme: I've been thinking the same thing for 2 days
20:42 < TheSeeker> Was there ever an official response to the pair of
articles on cowlark.com about Go late last year?
20:42 < TheSeeker> http://www.cowlark.com/2009-11-15-go/ &
http://www.cowlark.com/2009-11-21-go-going-forward/
20:43 < KBme> gastal: argh
20:45 < Namegduf> "On November 10 2009, Google announced the release of a
new programming language that a internal group had been working on: Go. (Although
its name might change to Issue 9 real soon now.)"
20:45 < Namegduf> Blogging reputability revoked, not reading any further.
20:50 < MaksimBurnin> did you trien telnet as a client?
20:50 < MaksimBurnin> tried*
20:50 < Namegduf> Why would these need an official response?
20:51 < gastal> MaksimBurnin: yes, same thing, connection is closed
instantly
20:51 < Namegduf> It looks like just another person who thinks people extra
specially care about their opinions on things, regardless of whether they're with
proposals.
20:51 < MaksimBurnin> so the problem is is server side...
20:52 < gastal> oh yeah
20:52 < Namegduf> Their second post HAS proposals, but it acknowledges that
generics are "hard" to implement, and the type inference one is more a "this would
be really cool and another language I like has it" than a "this would make things
better" thing.
20:53 < MaksimBurnin> did you tried "handleClient(c)" intead of "go
handleClient(c)" just guessing )
20:53 < gastal> MaksimBurnin: yep, that's one of the fist things I tought
might be wrong
20:53 < uriel> TheSeeker: those 'articles' were IMHO too misinformed and
misguided to be worth answering
20:55 < TheSeeker> ok
20:55 -!- im2ee [~calif@aehz209.neoplus.adsl.tpnet.pl] has quit [Quit: leaving]
20:55 < Namegduf> The things they propose have already been mentioned on the
mailing list.
20:56 < Namegduf> If you want to know thoughts on them from various sources,
including devs, I suggest looking there.
20:56 < MaksimBurnin> gastal: ugh, c.Read(read)
20:57 < MaksimBurnin> c.Read(&read)
20:57 < KBme> ahhh
20:57 * TheSeeker hates pointers
20:57 < gastal> server.go:30: cannot use &read (type *[]uint8) as type
[]uint8 in function argument
20:57 < MaksimBurnin> :-D lol its so obviously
20:57 < Namegduf> It's c.Read(read)
20:58 < Namegduf> You already have a slice.
20:58 < Namegduf> I think.
20:58 < KBme> no
20:58 < KBme> you have to *make* slices
20:58 < KBme> that's it
20:58 < KBme> works no for me
20:58 < KBme> read := make([]byte, 6)
20:58 < KBme> works
20:59 < KBme> then c.Read(read) //is fine
20:59 < gastal> KBme: thanks, it works!
20:59 < KBme> i know
20:59 < KBme> ☺
20:59 < MaksimBurnin> or if you need array, var read
[1024]byte;c.Read(&read)
20:59 < KBme> yes
20:59 < gastal> but how can I make a slice of variable size?
21:00 < KBme> but slices and maps have to be *make*-d
21:00 < gastal> or can't I do that?
21:00 < KBme> no, you can't
21:00 < KBme> a slice always has an array in the backend
21:00 < KBme> it's not a linked list
21:00 < KBme> er, i think that terminology is fallacious, but anyways
21:01 -!- pers3us [~perseus@14.96.112.23] has joined #go-nuts
21:01 < gastal> ok, so I'll have to handle the buffer manually, still thank
you very much, I'd been stuck on that for days!
21:01 < KBme> gastal: use the bufio package
21:01 < KBme> gastal: no, use the bufio package
21:02 < gastal> KBme: thanks, I'll look into it
21:03 < KBme> np
21:04 < MaksimBurnin> why did go not returned a compiler error?  i wrote
about 50 lines of go code for all time;) so i am interested in this answer
21:04 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
21:09 -!- tvw [~tv@e176000205.adsl.alicedsl.de] has quit [Remote host closed the
connection]
21:11 -!- Fish [~Fish@9fans.fr] has quit [Remote host closed the connection]
21:14 < gastal> MaksimBurnin: why would the compiler return an error?  I
gave it the right type of variable, my mistake was not properly initializing it.
21:16 -!- ronnyy [~quassel@2001:6f8:12c6:1c86:224:1dff:fed7:9541] has quit [Remote
host closed the connection]
21:16 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
21:17 < MaksimBurnin> yes you are right.  devenantly.  i need to go sleep is
3:18am ;) but why os.EOF then.  is it "thrown" only when you "out of buffer" ?
21:17 < skelterjohn> knowing if a particular variable can have a nil value
when passed to a function is np-hard (for most languages)
21:18 < gastal> I don't know exactly when it sends os.EOF.....
21:19 -!- TheMue [~TheMue@pd907c9d7.dip0.t-ipconnect.de] has quit [Quit: TheMue]
21:19 < MaksimBurnin> some languaget throw "NullPoinerException" and you
know exactly what you done wrong
21:19 -!- devrim [~Adium@rrcs-184-75-52-90.nyc.biz.rr.com] has quit [Quit:
Leaving.]
21:20 -!- dj2 [~dj2@216.16.242.254] has quit [Remote host closed the connection]
21:20 < skelterjohn> err, when i said NP-hard i meant impossible
21:20 < skelterjohn> reduces to the halting problem, not to an NP-complete
problem
21:20 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
21:21 < gastal> skelterjohn: how does it reduce to the halting problem?
21:21 < gastal> (which is indeed impossible)
21:21 < skelterjohn> pretend the statement "myvar = nil" is really "halt()"
21:21 < skelterjohn> deciding whether or not any particular instruction will
be executed -> halting problem
21:22 < Namegduf> Too simplistic.
21:22 < Namegduf> It doesn't need to verify that it halts, just that it
can't.
21:23 < gastal> myvar = nil, has only one possible result, halt() has two
possible result, I don't think your analogy works
21:23 < skelterjohn> halt() has two possible results?
21:23 < skelterjohn> Namegduf: certainly you can answer the question without
false negatives
21:23 < skelterjohn> but that is a different problem
21:23 < gastal> unless I missunderstood, halt() returns true or false,
whether it should halt or not....
21:23 < skelterjohn> no - i meant halt() halts the program
21:24 < skelterjohn> if that instruction is executed, the program halts
21:25 < gastal> ok, I can see that, and tough I can't see the flaw in your
logic, as a longtime C programmer I very used to checking for null(nil) values.
So why can I do it in C but not go?
21:26 < skelterjohn> you can know at runtime, of course
21:26 < skelterjohn> but we're talking about compile time
21:26 < skelterjohn> that is, a compiler error that tells you if you're
passing nil to a function by accident
21:27 < Namegduf> It's a pity non-nil pointers weren't discussed on the
mailing list in excuriating length, including implementation ideas.
21:27 < skelterjohn> like Namegduf suggests, you can often tell that nil
will not be passed
21:27 < gastal> skelterjohn: right, sorry
21:27 < Namegduf> (None of which worked without destroying the language,
baically)
21:29 < gastal> Namegduf: the existence of nil pointers is indeed somewhat
anachornistc for a language that tries to be so modern
21:30 < skelterjohn> just because a feature is new doesn't mean it's
critical
21:30 < gastal> *anachronistic
21:30 < Namegduf> gastal: That means there must be a better option, right?
21:30 < Namegduf> Including a clear way to implement it that's an
improvement on the existing language?
21:30 < skelterjohn> go isn't intended to be a feature-rich language
21:30 < Tonnerre> It's just accidentally so
21:30 < Namegduf> If you're making that claim, then I suggest you write a
complete proposal and send it to the mailing list.
21:30 < skelterjohn> features are only added if it is absolutely clear that
they should be
21:30 < gastal> Namegduf: no, it means nil pointers are a very old concept
21:31 < skelterjohn> as old as pointers, even
21:31 < gastal> and that I would've tought someone would have come up with
something better by now
21:31 < gastal> but I having no experience with language design I don't have
a proposal that would improve anything.....
21:32 < skelterjohn> well, it's not a crime to point out a problem and not
have a solution
21:32 < skelterjohn> even though Namegduf implies otherwise :)
21:32 < Namegduf> It is if said problem is just a "this is not as good as it
could be" kind of thing.
21:33 < Namegduf> If you're pointing out something is suboptimal, you ought
to have an optimal state to suggest.
21:33 < skelterjohn> i disagree
21:33 < gastal> =)
21:33 < Namegduf> With my first sentence, or the second?  The second is
kind-of true by definition
21:34 < skelterjohn> kind-of
21:34 < Namegduf> Something cannot be suboptimal unless there is a more
optimal state, and I'm dubious that you could know a more optimal state exists
without being able to describe it.
21:34 < skelterjohn> but often the complaint is "i don't like nil pointers
because i get nil pointer errors"
21:34 < skelterjohn> the improvement would be to not have nil pointer errors
21:34 < Namegduf> Complaints are useless.
21:34 < Namegduf> And unconstructive.
21:34 < skelterjohn> but that suggestion of something better is non
constructive
21:35 < skelterjohn> complaints are not useless
21:35 < skelterjohn> helps people know what parts of teh language frustrate
the users
21:35 < Namegduf> Suggestions are useful.  Complaints are spam in my inbox.
21:36 < Namegduf> Unless they actually offer some new information, which is
rare.
21:36 < MaksimBurnin> skelterjohn: "i don't like nil pointers because i get
os.EOF, not an NullPointer error" :-D
21:36 < MaksimBurnin> or so
21:36 < skelterjohn> i don't think taht nil pointers are the problem in that
situation, really
21:36 < skelterjohn> i think that os.EOF is not really a useful error in
that context
21:37 < skelterjohn> an empty buffer isn't the same as no buffer
21:37 < MaksimBurnin> yes, indeed
21:38 -!- rlab [~Miranda@91.200.158.34] has quit [Read error: Connection reset by
peer]
21:39 -!- awidegreen [~quassel@62.176.237.78] has quit [Remote host closed the
connection]
21:40 < MaksimBurnin> it looks like go thinks length of not "maken" slice ==
0
21:40 < skelterjohn> i don't follow
21:40 < MaksimBurnin> but i am not sure
21:40 < Namegduf> By "not "maken"", do you mean "nil"?
21:40 < skelterjohn> oh - len([]type{}) -> 0 of course
21:41 < skelterjohn> and []type{} is what is in a "var myslice []type"
without initializing?
21:41 < skelterjohn> but if you have var mySlicePtr *[]type = nil;
len(mySlicePtr)
21:41 < skelterjohn> i think that would go wrong
21:43 < MaksimBurnin> yes u are right.  now i am understad the reason why go
returnc os.EOF.  thanks :-D
21:45 < Namegduf> skelterjohn: Considering it, I think the problem with "the
improvement would be to not have nil pointer errors" is that the implications and
implementation of the idea are too ill-defined to be able to say whether it's an
improvement or not.
21:45 < skelterjohn> yes - requires thought beyond identification of the
problem
21:46 < skelterjohn> i can imagine a world where the devs don't care about
NPEs because they're too sharp at coding to run into them
21:46 < skelterjohn> and the users are too dumb to avoid them, and cannot
come up with a good change to improve their situation
21:47 < skelterjohn> therefore the user mentions that they are having a bad
experience, and the devs now know what the users would like to have fixed/changed
21:47 -!- tensorpudding [~user@99.148.202.191] has quit [Read error: Connection
reset by peer]
21:47 < Namegduf> The problem there is that it's only interesting to hear
about the first time.
21:47 < skelterjohn> sure
21:48 < Namegduf> Also, whenever these statements are accompanied by
statements about how things "should" be.
21:48 < Namegduf> Which are not thought out or associated with a proposal of
some sort.
21:49 -!- photron [~photron@port-92-201-49-88.dynamic.qsc.de] has quit [Ping
timeout: 276 seconds]
21:50 < skelterjohn> i will concede that these comments are not as useful as
they could be
21:54 -!- tensorpudding [~user@99.148.202.191] has joined #go-nuts
21:56 -!- jcao219 [~jcao219@pool-96-226-238-248.dllstx.fios.verizon.net] has
joined #go-nuts
21:58 -!- jhawk28 [~jhawk28@user-142gfrf.cable.mindspring.com] has joined #go-nuts
22:01 -!- devrim [~Adium@nat/ibm/x-kiyasgxfbdtymjpv] has joined #go-nuts
22:03 -!- devrim [~Adium@nat/ibm/x-kiyasgxfbdtymjpv] has quit [Client Quit]
22:05 -!- niemeyer [~niemeyer@conference/ubuntudevelopersummit/x-ftrgzqcbyjijwikp]
has quit [Ping timeout: 252 seconds]
22:13 -!- gastal [~gastal@187.106.43.200] has quit [Remote host closed the
connection]
22:23 -!- iant [~iant@192.75.139.251] has quit [Ping timeout: 240 seconds]
22:23 -!- iant [~iant@nat/google/x-tddpsgbqdpreggaj] has joined #go-nuts
22:24 -!- mode/#go-nuts [+v iant] by ChanServ
22:26 -!- idr0 [~idr@g229048007.adsl.alicedsl.de] has quit [Remote host closed the
connection]
22:27 -!- jhawk28 [~jhawk28@user-142gfrf.cable.mindspring.com] has quit [Remote
host closed the connection]
22:41 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
22:45 -!- iant [~iant@nat/google/x-tddpsgbqdpreggaj] has quit [Ping timeout: 255
seconds]
22:47 -!- scarabx [~scarabx@c-76-19-43-200.hsd1.ma.comcast.net] has joined
#go-nuts
22:57 -!- virtualsue [~chatzilla@nat/cisco/x-sycbazihiznoqhba] has quit [Quit:
ChatZilla 0.9.86 [Firefox 3.5.14/20101001164112]]
23:06 -!- skelterjohn [~jasmuth@lawn-gw.rutgers.edu] has quit [Quit: skelterjohn]
23:22 -!- tasosos [~tasosos@188.4.26.132.dsl.dyn.forthnet.gr] has quit [Ping
timeout: 240 seconds]
23:25 -!- tasosos [~tasosos@77.49.125.109.dsl.dyn.forthnet.gr] has joined #go-nuts
23:26 -!- noktoborus_ [debian-tor@gateway/tor-sasl/noktoborus] has quit [Ping
timeout: 245 seconds]
23:32 -!- tasosos [~tasosos@77.49.125.109.dsl.dyn.forthnet.gr] has quit [Ping
timeout: 252 seconds]
23:33 -!- tasosos [~tasosos@77.49.23.167.dsl.dyn.forthnet.gr] has joined #go-nuts
23:43 -!- artefon [~thiago@189.59.198.84] has quit [Ping timeout: 264 seconds]
23:46 < plexdev> http://is.gd/gldwe by [Nigel Tao] in go/src/pkg/gob/ --
gob: package doc fixes.
23:55 -!- artefon [~thiago@189.59.176.108.dynamic.adsl.gvt.net.br] has joined
#go-nuts
--- Log closed Wed Oct 27 00:00:13 2010