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

--- Log opened Sat Aug 14 00:00:05 2010
00:04 -!- napsy [~luka@212.235.174.112] has quit [Quit: Lost terminal]
00:05 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
00:09 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
00:09 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Client
Quit]
00:10 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Ping timeout: 265 seconds]
00:16 -!- smw [~stephen@c-71-234-192-215.hsd1.ct.comcast.net] has joined #go-nuts
00:18 -!- kanru [~kanru@118-160-160-190.dynamic.hinet.net] has quit [Ping timeout:
252 seconds]
00:18 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 246 seconds]
00:19 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
00:19 -!- photron [~photron@port-92-201-237-173.dynamic.qsc.de] has quit [Ping
timeout: 252 seconds]
00:24 -!- smw [~stephen@c-71-234-192-215.hsd1.ct.comcast.net] has quit [Ping
timeout: 245 seconds]
00:30 -!- hstimer [~hstimer@70.90.170.37] has quit [Quit: hstimer]
00:34 -!- iant [~iant@66.109.103.22] has joined #go-nuts
00:34 -!- mode/#go-nuts [+v iant] by ChanServ
00:37 < plexdev> http://is.gd/egKsC by [Stephen Ma] in go/doc/ -- spec:
trivial syntax fix
00:38 -!- jdp [~gu@24.238.32.162.res-cmts.segr.ptd.net] has quit []
00:46 -!- tvw [~tv@e176005214.adsl.alicedsl.de] has quit [Remote host closed the
connection]
00:54 -!- nickaugust [~nick@li181-40.members.linode.com] has quit [Disconnected by
services]
00:54 -!- nickaugust2 [~nick@li181-40.members.linode.com] has joined #go-nuts
00:55 -!- nomono [~nomono@c-69-136-241-18.hsd1.nj.comcast.net] has joined #go-nuts
00:55 -!- nomono [~nomono@c-69-136-241-18.hsd1.nj.comcast.net] has quit [Client
Quit]
01:13 -!- DerHorst_ [~Horst@e176109149.adsl.alicedsl.de] has quit [Remote host
closed the connection]
01:25 -!- acts_as [~acts_as@208.236.105.27] has quit [Quit: acts_as]
01:26 -!- jcao219 [~Jimmy_Cao@124.126.157.200] has joined #go-nuts
01:28 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has joined #go-nuts
01:57 -!- iant [~iant@66.109.103.22] has quit [Quit: Leaving.]
02:05 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 276 seconds]
02:06 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Read error: Connection
reset by peer]
02:07 -!- steveno [~stevenoli@paludis/cheerleader/steveno] has joined #go-nuts
02:10 -!- steveno [~stevenoli@paludis/cheerleader/steveno] has quit [Client Quit]
02:24 -!- tumdum [~tumdum@unaffiliated/tumdum] has joined #go-nuts
02:24 -!- jackman [~jackman@c-67-189-24-232.hsd1.or.comcast.net] has joined
#go-nuts
02:26 -!- sladegen [~nemo@unaffiliated/sladegen] has quit [Ping timeout: 276
seconds]
02:32 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has quit [Quit: Leaving]
02:32 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has joined #go-nuts
02:33 -!- steveno [~stevenoli@paludis/cheerleader/steveno] has joined #go-nuts
02:34 -!- tumdum [~tumdum@unaffiliated/tumdum] has quit [Quit: tumdum]
02:45 -!- derferman [~derferman@dsl092-048-218.sfo4.dsl.speakeasy.net] has quit
[Quit: derferman]
02:50 -!- steveno [~stevenoli@paludis/cheerleader/steveno] has quit [Quit:
steveno]
02:56 < plexdev> http://is.gd/egSk7 by [Ken Thompson] in go/src/cmd/6g/ --
code optimization on slices
02:57 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
02:58 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
03:02 -!- jA_cOp [~yakobu@unaffiliated/ja-cop/x-9478493] has joined #go-nuts
03:05 -!- alloy-d [~adam@pool-71-125-145-179.cmdnnj.east.verizon.net] has joined
#go-nuts
03:05 < leimy_> I'm about ready to wipe my ass with Alexandrescu's C++ books
03:06 < leimy_> His tone on the golang-nuts group is quite childish
03:06 < jcao219> cool
03:06 < jcao219> he's romanian
03:06 < leimy_> :-)
03:07 < leimy_> so romanians don't read documents but instead make wild
claims about stuff they don't take the time to understand?
03:07 < leimy_> is that what you're getting at?
03:08 < jcao219> no, his grasp of english
03:08 < jcao219> his tone might be not what he intends it to be
03:08 < jcao219> although his english is really good
03:08 < leimy_> I doubt that
03:09 < leimy_> he's authored several really great C++ books in English
03:09 < leimy_> and they're quite readable.
03:09 < jcao219> yea
03:09 < leimy_> I just didn't think he was this arrogant
03:09 < jcao219> defending D here
03:09 < leimy_> now I'm really put off by anything with his name on it...
.nice work :-)
03:09 < jcao219> lol
03:09 < leimy_> He's not defending D, he's attacking Go, and he didn't even
bother to arm himself first
03:09 < jcao219> lol, i should read it
03:09 < jcao219> but gets too confusing
03:10 < Ginto8> I think all this fighting over languages is a bunch of
bullshit
03:10 < leimy_> he just ran in fingers blazing, claiming there was no memory
model for Go
03:10 < jcao219> yea
03:10 < leimy_> and that that was a real probelm
03:10 < jcao219> languages fill different niches
03:10 < leimy_> Ginto8: it turns into "editor wars"
03:10 < Ginto8> yeah
03:10 < leimy_> and "look, my dick is bigger than yours"
03:10 < Ginto8> it's pointless
03:10 < jcao219> ha
03:10 < Ginto8> exactly
03:10 < leimy_> Except it's a very nerdy penis
03:10 < Ginto8> it's a penis size competition
03:10 < leimy_> ON that note!
03:10 < leimy_> It's movie night
03:10 < leimy_> later!
03:11 < Ginto8> lolz
03:11 < Ginto8> on that note, eh?
03:11 < sacho> weird movies he watches.
03:11 < Ginto8> yeah sounds like he's goin for gay porn =/
03:12 < Ginto8> Anyway...
03:12 < leimy_> no
03:12 < leimy_> :-)
03:12 < leimy_> but I realize it came off that way :-)
03:13 < leimy_> My wife would be shocked if that's what we were watching.
03:13 < Ginto8> Anyone who's a douche about one language vs another,
especially if they're at the same general level (ie.  C++/D/Go), is idiotic
03:13 < Ginto8> oh so it's STRAIGHT porn
03:13 < leimy_> I agree.  You'll note no Russ Cox or Rob Pikes are involved
in this nonsense
03:13 < sacho> unsafe memory access is needed in some systems?  :|
03:14 < Ginto8> sacho, unsafe memory access can be convenient
03:14 < leimy_> unsafe memory access is only needed when the model for your
system can't support a fully safe memory access language :-)
03:14 < Ginto8> but it's just that
03:14 < Ginto8> unsafe
03:14 < leimy_> It's cheating the type system
03:14 < Ginto8> yep
03:14 < leimy_> Even Haskell has it
03:14 < sacho> Ginto8: I mean, isn't that the same argument for using C?
03:14 < leimy_> unsafePerformIO
03:14 < Ginto8> sacho, yeah if you need unsafe memory access go for C/++
03:14 < sacho> "Oh, some systems benefit from C, that's why you should use
it for web development!"
03:14 < jcao219> well i think D is a bit lower than go
03:14 < sacho> The argument starts well...and then you're like, wait, ,that
doesn't follow
03:14 < Ginto8> sacho, oh god damn NO
03:15 < leimy_> I think it sucks that Haskell has this by the way.  Because
the Haskell proponents go on and on about how great and easy it is to audit code
for IO calls and purity, but unsafePerformIO makes that nearly impossible.
03:15 < Ginto8> web development + C? when I hear that I just wanna run away
as far as possible
03:15 < sacho> Ginto8: That's what I mean, ie in that thread, Alexei says
"Well Go cannot do everything C does...like unsafe memory access, so obviously D
is a better replacement for C" :|
03:15 < leimy_> Yeah, I don't think Go was meant to completely replace C.
03:15 < leimy_> D kind of was
03:16 < Ginto8> Go was intended as a new kind of C
03:16 < Ginto8> a rethinking, per se
03:16 < sacho> Ginto8: I think it boils down to people wanting one language
to solve all kinds of problems :)
03:16 < leimy_> yeah but it sort of fits between Java and C in terms of
"level" in my view.
03:16 < leimy_> I don't think Go is meant to be used to solve all problems
03:16 < Ginto8> sacho, yeah but that's just not feasible
03:16 < sacho> yup.
03:16 < Ginto8> you can have things that are good for a lot of problems
03:16 < Ginto8> but not all
03:16 < Ginto8> C++ is useful for a shitload of things
03:17 < Ginto8> but some things (web-based especially), it's just horrible
at
03:17 -!- Xenith [~xenith@2001:470:0:a9:226:b0ff:fee3:3a0c] has quit [Ping
timeout: 248 seconds]
03:17 < leimy_> Well I just wrote a program in C++ that I think I'm going to
replace with Go over the weekend.
03:18 -!- jcao2191 [~Jimmy_Cao@124.126.157.200] has joined #go-nuts
03:18 < Ginto8> yeah for small things I find go to be overall much more
useful than C++
03:18 < leimy_> It's a passthrough program to encode data for a special
device on a serial port that needs to tunnel modbus through to a power
distribution module :-)
03:18 < Ginto8> but for large projects I've found C++ to be better
03:18 < jcao2191> does go has inline asm?
03:18 < jcao2191> wondering
03:18 < leimy_> Seems like a good place to use Go.
03:18 < Ginto8> especially when using SDL/OpenGL
03:18 < Ginto8> jcao219, no
03:18 < Ginto8> that would be unsafe as hell
03:18 < Namegduf> Ginto8: Have you tried to write large projects in Go?
03:18 < Namegduf> I'm curious.
03:19 < Ginto8> Namegduf, yes
03:19 < Ginto8> well
03:19 < jcao2191> you see, D has it so that's why i say d has a lower niche
03:19 < Namegduf> How large is large?
03:19 < Ginto8> decent sized
03:19 < leimy_> Depending on what it is...  I still reach for C++ sometimes.
03:19 < Ginto8> it was going to be around 2k loc's probly
03:19 < leimy_> I've got some medium sized projects in Go
03:19 < leimy_> as prototypes
03:19 < Namegduf> Ah.
03:19 < leimy_> I found that they consume more memory than the Haskell
production version (strangely)
03:19 * Namegduf is working on something a bit over 3k now, and it seems pretty
nice.
03:20 < Ginto8> I got to 1k loc's and figured out that, at least for what I
was doing, C++ would be better suited
03:20 < Ginto8> leimy_, that's cuz the gc is still very rudimentary atm
03:20 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has joined
#go-nuts
03:20 < Namegduf> What specific attributes in Go were a problem?
03:20 < Namegduf> I'm curious.
03:20 < leimy_> Ginto8: but the program should run in about constant space
03:20 < leimy_> so I would not expect a lot of GC.
03:21 -!- jcao219 [~Jimmy_Cao@124.126.157.200] has quit [Ping timeout: 255
seconds]
03:21 < leimy_> This project is just over 1kloc.
03:21 < Ginto8> Namegduf, the type strictness and C interfacing
03:21 < Namegduf> Ah.
03:21 < leimy_> Well less than 1kloc if you discount the test program
03:21 < Namegduf> Yeah, if you need to call into C a lot
03:21 < Ginto8> also, for the application, parallelism wasn't going to work
much
03:21 < Namegduf> You're on gccgo or not Go right now
03:21 < Ginto8> s/much/well/
03:21 < Ginto8> Namegduf, no actually 8g works with it
03:21 < Namegduf> Because cgo, while functional, remains expensive for
performance.
03:21 < leimy_> Hmm I thought the C interface was good.
03:22 < Ginto8> using cgo
03:22 < Ginto8> but yeah, it wasn't the fastest
03:22 < leimy_> Then again, I use pipes for connecting to C programs
03:22 < Namegduf> It's good, just has overhead from using a separate stack.
03:22 < Ginto8> yeah
03:22 < leimy_> I write code in Erlang and talk to C on a pipe
03:22 < leimy_> or pair of pipes really.
03:22 < Namegduf> Fine for most purposes, not fine if you're making many
many many calls very quickly.
03:22 < Ginto8> Namegduf, also I interfaced with opengl
03:22 < leimy_> I like to think of my bigger software projects in terms of
communicating modules.
03:22 < Namegduf> Ginto8: That was an example I was thinking of.
03:22 < Ginto8> which was the real bugger, especially for the type system
03:23 < leimy_> I find each piece a lot easier to maintain that way...  and
then parts can be distributed pretty easily.
03:30 < Ginto8> leimy, yeah modularity always helps
03:42 -!- alloy-d [~adam@pool-71-125-145-179.cmdnnj.east.verizon.net] has quit
[Quit: alloy-d]
03:52 -!- tsykoduk [~tsykoduk@c-71-231-146-235.hsd1.or.comcast.net] has quit [Ping
timeout: 245 seconds]
03:54 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has quit [Remote host
closed the connection]
04:10 -!- derferman [~derferman@c-98-207-60-44.hsd1.ca.comcast.net] has joined
#go-nuts
04:10 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts
04:10 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Excess
Flood]
04:11 -!- derferman [~derferman@c-98-207-60-44.hsd1.ca.comcast.net] has quit [Read
error: Connection reset by peer]
04:11 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts
04:11 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Excess
Flood]
04:12 -!- derferman [~derferman@c-98-207-60-44.hsd1.ca.comcast.net] has joined
#go-nuts
04:12 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts
04:17 -!- kanru [~kanru@140.109.127.26] has joined #go-nuts
04:17 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts
04:18 -!- mode/#go-nuts [+v iant] by ChanServ
04:18 -!- tsykoduk [~tsykoduk@184.78.195.79] has joined #go-nuts
04:18 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has joined #go-nuts
04:22 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts
04:23 -!- kanru [~kanru@140.109.127.26] has quit [Ping timeout: 265 seconds]
04:34 -!- meanburrito920 [~john@unaffiliated/meanburrito920] has joined #go-nuts
04:41 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
04:44 -!- aho [~nya@fuld-4d00d64d.pool.mediaWays.net] has quit [Quit:
EXEC_over.METHOD_SUBLIMATION]
04:45 -!- araujo [~araujo@gentoo/developer/araujo] has joined #go-nuts
04:47 -!- SecretAgent [sa@quake.nitemare.name] has quit [Ping timeout: 276
seconds]
04:52 -!- Adys [~Adys@unaffiliated/adys] has quit [Quit: I ♥ Unicode]
04:53 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
04:55 -!- chickamade [~chickamad@115.74.94.85] has joined #go-nuts
04:55 -!- aht [~chickamad@115.74.94.85] has joined #go-nuts
04:55 -!- chickamade [~chickamad@115.74.94.85] has quit [Client Quit]
04:55 -!- aht [~chickamad@115.74.94.85] has quit [Client Quit]
04:56 -!- chickamade [~chickamad@115.74.94.85] has joined #go-nuts
05:02 -!- scm [justme@d071110.adsl.hansenet.de] has quit [Ping timeout: 240
seconds]
05:02 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Quit: leaving]
05:04 -!- scm [justme@d070071.adsl.hansenet.de] has joined #go-nuts
05:04 -!- SecretAgent [sa@quake.nitemare.name] has joined #go-nuts
05:05 -!- chickamade [~chickamad@115.74.94.85] has quit [Ping timeout: 245
seconds]
05:07 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
05:07 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Client Quit]
05:16 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Remote host
closed the connection]
05:16 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
05:19 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has quit [Remote
host closed the connection]
05:22 -!- meanburrito920 [~john@unaffiliated/meanburrito920] has quit [Quit: Lost
terminal]
05:24 -!- zozoR [~zozoR@x1-6-00-0e-2e-a3-e0-23.k377.webspeed.dk] has joined
#go-nuts
05:33 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has quit [Ping
timeout: 264 seconds]
05:34 -!- jcao219 [~Jimmy_Cao@124.126.157.200] has quit [Ping timeout: 240
seconds]
05:39 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts
05:40 -!- macroron [~ron@c-98-242-168-49.hsd1.fl.comcast.net] has joined #go-nuts
05:42 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has quit [Client
Quit]
05:42 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts
05:45 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has quit [Client
Quit]
05:45 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts
05:51 -!- jcao219 [~Jimmy_Cao@124.126.157.200] has joined #go-nuts
06:02 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
06:15 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 245
seconds]
06:16 -!- wm4 [~lu-PYTHON@p5080B142.dip.t-dialin.net] has left #go-nuts
["Leaving"]
06:17 -!- Xiaobo [~Xiaobo@61.48.211.178] has joined #go-nuts
06:17 -!- jcao219 [~Jimmy_Cao@124.126.157.200] has quit [Quit: Leaving.]
06:23 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Quit: leaving]
06:23 -!- path[l] [UPP@120.138.102.50] has joined #go-nuts
06:25 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller,
Faster, Easier.  http://miranda-im.org]
06:25 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
06:28 -!- Xiaobo [~Xiaobo@61.48.211.178] has quit [Quit: Leaving]
06:28 -!- xiaobozhou [~Xiaobo@61.48.211.178] has joined #go-nuts
06:30 -!- diegoviola [~diego@190.23.52.64] has joined #go-nuts
06:31 < diegoviola> hi
06:31 < diegoviola> I currently know Ruby and was thinking to learn another
language, I was thinking of Python, but then I feel Ruby is nicer than Python, so
I might try to learn Go instead.
06:32 -!- tumdum [~tumdum@unaffiliated/tumdum] has joined #go-nuts
06:32 -!- tumdum [~tumdum@unaffiliated/tumdum] has left #go-nuts []
06:32 -!- xiaobozhou [~Xiaobo@61.48.211.178] has quit [Client Quit]
06:32 < diegoviola> I see Ruby and Python are both similar, Go looks
different.
06:32 -!- Xiaobo [~Xiaobo@61.48.211.178] has joined #go-nuts
06:36 < diegoviola> does Go has many libraries, to do things like database,
web development or desktop apps, etc?
06:38 -!- nickaugust2 [~nick@li181-40.members.linode.com] has left #go-nuts []
06:38 -!- nickaugust [~nick@li181-40.members.linode.com] has joined #go-nuts
06:39 < rsaarelm> diegoviola: There are some database and web development
libraries, but very little for desktop apps now.
06:57 < cw> diegoviola: if you feel ruby is nicer than python i wonder what
you will think of Go
06:58 < cw> diegoviola: i would also argue ruby and python aren't that
similar in actual use
07:00 < diegoviola> I like some things about Ruby and I like some things
about Python
07:02 < taruti> hmm, how do I get the json-module to grok strings
07:02 < taruti> when serializing a longer string it produces something like
[70,70,...] which is then deserialized as []interface{}
07:03 < cw> you can pass a type
07:03 < cw> and it will populate it sanely
07:03 < taruti> it is machine generated data so no knowing types beforehand
07:04 < taruti> just need to save/restore some metainformation
07:04 < cw> so you want something like a dict of dicts in python?
07:05 < taruti> basically I want a "map[string]interface{}" that can be
serialized to disk and loaded back (plus points for being human-readable).
07:05 < taruti> or "why doesn't a yaml serializing library exist" ;)
07:06 < cw> there is some yaml lib somewhere ...  not sure what features it
has
07:06 < taruti> is there?
07:06 < cw> think i saw it listed yeah
07:06 * taruti cannot find it
07:07 -!- ronnyy [~quassel@p4FF1DC20.dip.t-dialin.net] has joined #go-nuts
07:08 -!- inittab- [~dlbeer@ip-118-90-103-17.xdsl.xnet.co.nz] has quit [Ping
timeout: 265 seconds]
07:08 < cw> yeah, i can't either sorry ...  i thouht it was on 'cat-v but
don't see it
07:10 < smw> how can a interface{} be serialized?
07:10 -!- inittab [~dlbeer@118.90.103.17] has joined #go-nuts
07:10 < taruti> smw: reflection
07:10 < smw> taruti, maybe you could use gob?
07:10 < cw> not human readable
07:10 < cw> very fast though
07:11 < taruti> Performance is not very important, need to read the files
once upon startup with ~1kb size each.
07:12 < taruti> meh, even the xml package won't do it
07:14 < smw> json has serialization
07:14 < smw> I thought xml did
07:15 < smw> nm, no xml serialization
07:16 < cw> taruti: the issue is Unmarshal ?
07:17 < taruti> meh, I'll just force things with base64-encoding everything
07:20 < diegoviola> I like Python because it's easier to read.  and I like
the Ruby design because of the pure OO. Go seems to be very light and fast and
that's nice.
07:21 < diegoviola> s/easier/easy/
07:26 < cw> taruti: you can Unmarshal with a pointer to interface{}
07:27 < cw> so whatever the structure is you'll have something returned that
you can traverse
07:33 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has quit [Ping
timeout: 252 seconds]
07:35 -!- Adys [~Adys@unaffiliated/adys] has quit [Quit: I ♥ Unicode]
07:36 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
07:40 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
07:44 < nsf> hehe, my biggest mistake: was using panics as exceptions
07:44 < nsf> never do that :)
07:45 < cw> heh, i do that in places when im lazy
07:46 < nsf> added few goroutines magic and because you can't pass panic
through goroutine boundaries, the code has lost its meaning
07:47 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts
07:47 < nsf> well, my daemon is supposed to be panic safe
07:47 < nsf> when it sees panic it recovers simply dropping its cache
07:47 < nsf> but now it's just shutting down instead
07:48 < nsf> in some cases
07:48 < nsf> :D
07:49 < str1ngs> nsf: does it use any logging?
07:49 < nsf> nope
07:49 < str1ngs> was going to watch it for you
07:49 < nsf> it prints stack trace to stdout when panic happens
07:49 < str1ngs> ah that works then
07:49 < nsf> but the trick is, I really have to catch these panics
07:49 < str1ngs> I can log vim's stdout
07:50 < nsf> and when you have multiple goroutines
07:50 < nsf> str1ngs: nope, client side never prints anything
07:50 < nsf> it's all just a server side
07:50 -!- zozoR [~zozoR@x1-6-00-0e-2e-a3-e0-23.k377.webspeed.dk] has quit [Quit:
Morten.  Desu~]
07:50 < nsf> you can run it manually in the console: gocode -s
07:50 < str1ngs> well so far its worked fine for me
07:51 < nsf> it works..  sort of :D I can't say that it is very correct
though, I know a lot of bad cases
07:51 < str1ngs> can you add godoc too :)
07:52 < nsf> I'm working on adding a config file now
07:52 -!- nf [~nf@124-169-137-35.dyn.iinet.net.au] has quit [Ping timeout: 240
seconds]
07:52 < nsf> and 'set' command to manipulate settings
07:52 -!- tvw [~tv@e176005167.adsl.alicedsl.de] has joined #go-nuts
07:52 < str1ngs> actually godoc just for terminal is pretty good
07:52 < str1ngs> from*
07:52 < nsf> and godoc isn't really a priority for me
07:53 < str1ngs> oh can godoc generate html?  from code I assumed it can but
I have not looked into it.
07:54 < nsf> I have no idea
07:54 < nsf> but if it's not, we need another godoc
07:54 < nsf> I'd like to see something like pydoc
07:54 < nsf> for Go :)
07:54 < str1ngs> sorry I got offtopic.  actually I'll check the go make
files see how they do it.
07:55 < cw> godoc can run as a web-server and generate html
07:55 < cw> html file generation is something i made a note to look into
07:55 < nsf> hm..  it actually works as pydoc
07:55 < nsf> nice
07:56 < str1ngs> ah so I just add my project path then?
07:56 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit:
slashus2]
07:56 < nsf> and it can print html in the command line mode
07:56 < str1ngs> server would be enough I'm going to try it out now.
07:59 < str1ngs> I'm making a build stystem.  something like a cross between
homebrew and archlinux PKGBUILD's
08:00 -!- eiffel [~eiffel@119.251.52.185] has joined #go-nuts
08:00 -!- eiffel [~eiffel@119.251.52.185] has left #go-nuts []
08:00 < cw> nsf: the desire was to create a heirarchy of static files
08:00 < nsf> cw: I understand that
08:01 < nsf> and probably godoc can't do that
08:04 -!- tokuhiro__ [~tokuhirom@s230.GtokyoFL21.vectant.ne.jp] has quit [Ping
timeout: 246 seconds]
08:04 -!- tokuhiro__ [~tokuhirom@s230.GtokyoFL21.vectant.ne.jp] has joined
#go-nuts
08:05 < str1ngs> please dont remove godoc os Chdir because that is just win
for me :P
08:07 -!- jcao219 [ddda70d9@gateway/web/freenode/ip.221.218.112.217] has joined
#go-nuts
08:09 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
08:14 -!- boscop_ [~boscop@f055204212.adsl.alicedsl.de] has joined #go-nuts
08:16 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has quit [Remote
host closed the connection]
08:16 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
08:16 -!- Xiaobo [~Xiaobo@61.48.211.178] has quit [Ping timeout: 252 seconds]
08:17 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has quit [Remote
host closed the connection]
08:17 -!- boscop [~boscop@g227114048.adsl.alicedsl.de] has quit [Ping timeout: 265
seconds]
08:17 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
08:18 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has quit [Remote
host closed the connection]
08:19 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
08:19 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has quit [Remote
host closed the connection]
08:20 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
08:20 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has quit [Remote
host closed the connection]
08:21 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
08:22 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has quit [Ping
timeout: 264 seconds]
08:23 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has quit [Remote
host closed the connection]
08:23 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
08:24 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has quit [Remote
host closed the connection]
08:25 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
08:26 -!- photron [~photron@port-92-201-50-109.dynamic.qsc.de] has joined #go-nuts
08:32 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
08:33 -!- Project_2501 [~Marvin@82.84.75.51] has joined #go-nuts
08:34 -!- ikaros [~ikaros@dslb-188-097-010-191.pools.arcor-ip.net] has joined
#go-nuts
08:37 -!- kanru [~kanru@140.109.127.13] has joined #go-nuts
08:43 -!- kanru [~kanru@140.109.127.13] has quit [Ping timeout: 240 seconds]
08:45 -!- eiffel [~eiffel@119.251.52.185] has joined #go-nuts
08:54 -!- kanru [~kanru@140.109.127.13] has joined #go-nuts
09:00 -!- jcao219 [ddda70d9@gateway/web/freenode/ip.221.218.112.217] has quit
[Quit: Page closed]
09:00 -!- tvw [~tv@e176005167.adsl.alicedsl.de] has quit [Remote host closed the
connection]
09:01 -!- madari_ [madari@AM.irc.fi] has left #go-nuts []
09:01 -!- madari [madari@AM.irc.fi] has joined #go-nuts
09:02 < madari> hello
09:02 < madari> does anyone have good insight on how http-servers usually
handle double-slashes?  go's http-server translates foo//bar to foo/bar, although
rfc 2396 clearly states that every / is significant
09:02 < madari> translates -> redirects
09:04 < madari> that means that one can't work on stuff that is dependant on
empty segments foo.bar/do/something//foo
09:04 < MizardX> To the protocol, yes.  But it is up to the web applications
as to how to interpet them.
09:04 -!- ronnyy [~quassel@p4FF1DC20.dip.t-dialin.net] has quit [Remote host
closed the connection]
09:05 < madari> so as far as Go is concerned, there's no way but to write
your own server?
09:06 < madari> or am I missing something
09:07 -!- kanru [~kanru@140.109.127.13] has quit [Ping timeout: 245 seconds]
09:13 -!- TR2N [email@89-180-147-167.net.novis.pt] has quit [Quit: Time left until
the Epochalypse: 27yrs 22wks 3days 23hrs 59mins 17secs]
09:14 -!- wrtp [~rog@92.17.47.10] has joined #go-nuts
09:24 < MizardX> I found where it is happening.  The http module is calling
path.Clean() on the path, which removes the extra slashes.  The call is in
http.ServeMux.ServeHTTP, the first if-block.  If you can avoid ServeMux and
Redirect() you should be able to avoid the slash filtering.
09:24 < MizardX> It won't handle "." and ".." either then.
09:26 -!- ronnyy [~quassel@p4FF1DC20.dip.t-dialin.net] has joined #go-nuts
09:27 < MizardX> @ madari
09:30 -!- Xiaobo [~Xiaobo@61.48.211.178] has joined #go-nuts
09:30 -!- ronnyy [~quassel@p4FF1DC20.dip.t-dialin.net] has quit [Remote host
closed the connection]
09:33 -!- [Pete_27] [~noname@110-174-103-31.static.tpgi.com.au] has joined
#go-nuts
09:40 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
09:41 -!- eiffel [~eiffel@119.251.52.185] has quit [Remote host closed the
connection]
09:43 -!- femtoo [~femto@95-89-196-235-dynip.superkabel.de] has joined #go-nuts
09:44 < madari> MizardX: thx alot!  I'm still not confident that go is being
a truly good citizen here.  I'll check what nginx & lighttpd & fellows do in the
similiar situations.  maybe it will lead to a patch on how the canonicalization is
done or atleast maybe I'll write some tests since I couldn't find a single test
around double-slashes in url_test.go :)
09:53 -!- derferman [~derferman@c-98-207-60-44.hsd1.ca.comcast.net] has quit
[Quit: derferman]
10:00 -!- smw_ [~smw@c-76-28-90-0.hsd1.ct.comcast.net] has joined #go-nuts
10:02 -!- smw_ [~smw@c-76-28-90-0.hsd1.ct.comcast.net] has quit [Client Quit]
10:02 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
10:11 -!- Bombe [~droden@weltgehirnmaschine.de] has quit [Changing host]
10:11 -!- Bombe [~droden@freenet/developer/Bombe] has joined #go-nuts
10:13 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
10:15 -!- saschpe [~quassel@mgdb-4d0cf1ad.pool.mediaWays.net] has joined #go-nuts
10:23 -!- Bombe [~droden@freenet/developer/Bombe] has quit [Excess Flood]
10:24 -!- Bombe [~droden@freenet/developer/Bombe] has joined #go-nuts
10:25 -!- tvw [~tv@e176005167.adsl.alicedsl.de] has joined #go-nuts
10:32 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined
#go-nuts
10:36 -!- General13372 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has quit
[Ping timeout: 240 seconds]
10:40 -!- tensorpudding [~user@99.70.202.65] has quit [Quit: ERC Version 5.3 (IRC
client for Emacs)]
10:51 -!- boscop_ [~boscop@f055204212.adsl.alicedsl.de] has left #go-nuts []
10:51 -!- boscop [~boscop@f055204212.adsl.alicedsl.de] has joined #go-nuts
10:52 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller,
Faster, Easier.  http://miranda-im.org]
10:54 -!- saschpe [~quassel@mgdb-4d0cf1ad.pool.mediaWays.net] has quit [Remote
host closed the connection]
10:55 -!- saschpe [~quassel@mgdb-4d0cf1ad.pool.mediaWays.net] has joined #go-nuts
11:01 -!- DerHorst [~Horst@e176109149.adsl.alicedsl.de] has joined #go-nuts
11:02 < uriel> 09:04 < madari> that means that one can't work on stuff
that is dependant on empty segments foo.bar/do/something//foo
11:02 < uriel> I have no clue what the spec says, but depending on // being
'preserved' and 'meaningful' is a very bad idea
11:03 -!- jA_cOp [~yakobu@unaffiliated/ja-cop/x-9478493] has quit [Quit: Leaving]
11:03 -!- sladegen [~nemo@unaffiliated/sladegen] has joined #go-nuts
11:04 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts
11:12 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has quit [Read error: No
route to host]
11:19 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has quit [Ping
timeout: 276 seconds]
11:21 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has joined #go-nuts
11:22 -!- navigator [~navigator@p548979A1.dip.t-dialin.net] has joined #go-nuts
11:23 -!- jcao219 [~Jimmy_Cao@124.126.158.33] has joined #go-nuts
11:47 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Ping timeout: 260 seconds]
11:49 -!- Shyde [~shyde@HSI-KBW-078-043-070-132.hsi4.kabel-badenwuerttemberg.de]
has joined #go-nuts
11:55 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit:
hcatlin]
11:57 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has quit [Quit:
hstimer]
11:58 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has joined
#go-nuts
12:00 -!- wrtp [~rog@92.17.47.10] has quit [Quit: wrtp]
12:01 -!- scm [justme@d070071.adsl.hansenet.de] has quit [Quit: leaving]
12:09 < nsf> http://github.com/nsf/gocode/issues <- documented few dark
corners of the gocode a little bit :)
12:10 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
12:12 -!- hstimer [~hstimer@2002:4c67:9b0d:0:226:bbff:fe05:dd9b] has quit [Quit:
hstimer]
12:12 -!- terrex [~terrex@84.122.67.111.dyn.user.ono.com] has joined #go-nuts
12:12 < madari> uriel: yes you are probably right
12:14 -!- scm [justme@d178175.adsl.hansenet.de] has joined #go-nuts
12:15 -!- Shyde [~shyde@HSI-KBW-078-043-070-132.hsi4.kabel-badenwuerttemberg.de]
has quit [Remote host closed the connection]
12:19 -!- visof [~visof@unaffiliated/visof] has quit [Quit: Leaving]
12:19 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts
12:26 -!- nbjoerg [~joerg@netbsd/developer/joerg] has joined #go-nuts
12:26 < nbjoerg> can anyone comment here on questions of the google cla?
12:30 < madari> it seems that nginx & lighttpd just combines consecutive
slashes into a single slash without redirection
12:32 < madari> or maybe the "target" is being resolved at the filesystem
level
12:33 < madari> like 'cd foo/bar' ~ 'cd foo//////bar' ~ 'cd foo && cd && cd
&& ...  && cd bar'
12:33 < madari> but I don't know :)
12:34 < jessta> madari: isn't it covered in the http rfc?
12:35 < nbjoerg> nginx doesn't normalise those
12:35 < nbjoerg> but the filesystem handles it transparently
12:39 < madari> jessta: well this is what i found out: 12:03 < madari>
does anyone have good insight on how http-servers usually handle double-slashes?
go's http-server translates foo//bar to foo/bar, although rfc 2396 clearly states
that every / is significant
12:39 -!- napsy [~luka@212.235.174.112] has quit [Read error: Operation timed out]
12:39 < nbjoerg> madari: it is a valid interpretation to do slash
normalisation
12:40 < nbjoerg> madari: it is a bug if a client depends on it
12:41 < madari> nbjoerg: ok
12:41 < madari> thank you
12:41 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
12:43 < jessta> it's really up to the web server how it maps URLS
12:43 < nbjoerg> yes
12:44 < nbjoerg> it is significant for the *client* when dealing with
relative URIs
12:44 < nbjoerg> but servers never deal with those (modulo broken Location:
...  handling)
12:45 < madari> ok
12:46 < madari> thanks...  i'm really out of my 'comfort zone' here so your
feedback is really appreciated :)
12:47 * nbjoerg was discussing correct behavior of initial double slash in FTP
URLs not too long ago
12:55 -!- rejb [~rejb@unaffiliated/rejb] has quit [Quit: .]
12:55 < visof> madari hi
12:56 < visof> madari , this name is looking like madara in naruto
12:58 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Read error:
Connection timed out]
12:59 -!- steveno [~stevenoli@pool-74-99-22-170.clrkwv.east.verizon.net] has
joined #go-nuts
12:59 -!- steveno [~stevenoli@pool-74-99-22-170.clrkwv.east.verizon.net] has quit
[Changing host]
12:59 -!- steveno [~stevenoli@paludis/cheerleader/steveno] has joined #go-nuts
12:59 -!- araujo [~araujo@gentoo/developer/araujo] has joined #go-nuts
13:04 < madari> visof: hehe, never heard that one before :)
13:05 < visof> madari,
http://www.youtube.com/watch?v=8KHW-xzQMgs&feature=related
13:11 -!- steveno [~stevenoli@paludis/cheerleader/steveno] has quit [Quit:
steveno]
13:14 -!- aho [~nya@fuld-4d00d72f.pool.mediaWays.net] has joined #go-nuts
13:16 -!- diegoviola [~diego@190.23.52.64] has quit [Ping timeout: 246 seconds]
13:16 -!- Adys_ [~Adys@unaffiliated/adys] has joined #go-nuts
13:18 -!- jcao219 [~Jimmy_Cao@124.126.158.33] has quit [Quit: Leaving.]
13:20 -!- path[l] [UPP@120.138.102.50] has quit [Quit: path[l]]
13:25 -!- mattikus [~mattikus@wireless-lsusecure-11.net.lsu.edu] has joined
#go-nuts
13:25 -!- mattikus [~mattikus@wireless-lsusecure-11.net.lsu.edu] has quit [Excess
Flood]
13:38 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has joined
#go-nuts
13:40 -!- napsy [~luka@212.235.174.112] has quit [Quit: Lost terminal]
13:46 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has joined #go-nuts
13:48 < madari> hmm, is it legal to have function signature to require a
slice of interfaces?  like this:
13:48 < madari> func (df DefaultFormatter) PayloadEncoder(payload
[]interface{}) ([]byte, os.Error) {
13:48 < exch> sure.  why not?
13:49 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
13:49 < madari> calling that with this raises an error:
13:49 < madari> return df.PayloadEncoder([]string{`{"sessionid":"` +
c.sessionid + `"}`})
13:49 < nsf> because []string is not []interface{}
13:50 < nsf> go doesn't have implicit conversions
13:50 < nsf> interface{} and string have different memory footprints
13:50 < nsf> they are different types
13:50 < exch> ya.  []string == interface{}, not []interface{}
13:50 < nsf> yes, you can implicitly convert to an interface type
13:50 < nsf> but in that case it's useless
13:51 < madari> I previously had just payload interface{} signature, which
worker perfectly
13:51 < madari> but now I want to enforce a slice
13:52 < exch> you'll have to convert []string into []interface manually
13:53 < madari> I'm heading for a disaster :) I believe that if one has to
ask these questions, the direction can't be right
13:53 < nsf> I believe you don't understand what interface{} is
13:53 < jessta> madari: you can enforce the slice at run time
13:53 -!- visof [~visof@unaffiliated/visof] has quit [Read error: Connection reset
by peer]
13:54 < madari> jessta: how?  does slice have a certain .(type) I can check?
13:54 < madari> nsf: that wouldn't surprise me :)
13:55 < jessta> go's current solution to generics is dynamic typing
13:56 < jessta> madari: use the reflect package
13:56 < jessta> It will be slow though
13:57 < exch> madari: if myslice, ok := v.([]string); ok { yay(myslice) }
<- you can do that in the PayloadEncoder function.  or use a type switch to
achieve a similar result
13:57 < exch> that assumes you passed []string as interface{}, not as
[]interface{}
13:58 < madari> jessta: hmm yeah you're right
13:58 -!- atsampson [~ats@212.183.140.22] has quit [Ping timeout: 264 seconds]
13:59 < nsf> I'd suggest to stop using typed language as a fully dynamic
language
13:59 < nsf> unless it is really necessary
14:01 < nsf> Go is interesting because its users basically come from two
other niches: 1.  dynamic languages, web, ruby on rails, etc.  2.  C/C++
programmers and other system level programmers
14:01 -!- atsampson [~ats@212.183.140.19] has joined #go-nuts
14:01 < nsf> both have common mistake
14:01 < madari> previously I've used the encoder in question in such manner
that you could throw almost anything at it as long as it can be marshalled by the
json package
14:01 < nsf> using Go as different language :)
14:01 < madari> hehe
14:02 < nsf> madari: that's great, but you will rarely have []interface{}
somewhere
14:02 < nsf> so, exposing that kind of interface isn't really a good idea
14:03 < madari> true
14:03 < nsf> but I haven't seen your code, I can't tell that is 100%
14:04 < madari> and that's what lead me to suspect that I'm heading in a
wrong direction currently...  maybe I should think about it for a second
14:04 < nsf> for example
14:04 < nsf> df.PayloadEncoder([]string{`{"sessionid":"` + c.sessionid +
`"}`})
14:04 < nsf> here is you have one string
14:04 < nsf> so the lenght of a slice is 1
14:05 < madari> yup
14:05 < nsf> why using slice at all
14:05 < nsf> also if you want that kind of function that takes everything
maybe it's a good idea to use variadic functions
14:05 < nsf> like Printf and friends
14:05 < nsf> the function will take arbitrary number of arguments
14:06 < nsf> as interface{}s
14:06 < nsf> and that way you will be able to write:
df.PayloadEncoder("abc", 10, 13.4, false)
14:06 < nsf> etc.
14:06 < nsf> and inside function you will have []interface{} (sort of)
14:08 < nsf> maybe that will work, I don't know
14:11 < madari> hmm yeah, unfortunately that won't work...  I mainly use the
encoder to encode a buffered slice of messages using a syntax
PayloadEncoder(payload[0:n]), where payload is actually an []interface{}
14:11 < madari> so maybe I'll just cast the []string to []interface{} as you
suggested and carry on
14:12 < nsf> well you can't just "cast" it will be a full conversion
14:12 < nsf> you'll have to create a slice and convert each element one by
one
14:13 < nsf> I'd consider writing something like PayloadEncoderStrings(s
[]string)
14:13 < nsf> maybe, I don't know
14:13 < nsf> :D
14:14 < nsf> well, conversion will work for sure
14:14 < nsf> it just won't be as fast as it is possible
14:15 < nsf> because it's basically a waste of CPU cycles for that kind of
work: convert concrete []string to []interface{} -> pass it to a function ->
convert it back in a processing stage
14:15 < nsf> waste of speed for a sake of a generic interface
14:15 < madari> this is (atleast) currently the only place where I would
need to have that kind of casting: df.PayloadEncoder([]string{`{"sessionid":"` +
c.sessionid + `"}`})
14:16 < madari> and to answer your question why is it a slice in the first
place
14:16 < nsf> yes :)
14:16 < madari> well, I'm writing a go-backend for this: http://socket.io/
14:17 < nsf> it doesn't tell me much
14:17 < madari> and basically I just have to follow their footsteps
14:18 < madari> i.e.  they have (or had, I'm trying to get this thing up to
'head' - so I'm not sure yet) all kind of funny stuff there :)
14:18 < madari> considering the wire-format
14:19 -!- tvw [~tv@e176005167.adsl.alicedsl.de] has quit [Read error: Connection
reset by peer]
14:19 < nsf> and "they" are written in JS
14:19 < nsf> that's the mistake that I was talking about
14:19 < madari> yeah, they have the client-side stuff and then a backend
implementation written for node.js
14:19 < nsf> you can't translate nor dynamic code to Go directly neither
C/C++ code
14:20 < nsf> but ok
14:20 < nsf> let's talk about details
14:20 < madari> you're right
14:20 < nsf> of that socket.io
14:21 < madari> this: http://github.com/madari/go-socket.io was my first
attempt at writing something at a "bigger" scale with Go
14:22 < madari> I did that some 3-4 months ago and then didn't have time to
finish it
14:22 < nsf> I'm trying to figure out what this is all about :)
14:22 < nsf> so, basically it's a protocol right?
14:23 < madari> and now I'm trying to get it up to date and fix previously
made mistakes at the same time
14:23 < madari> aahh yeah
14:23 < nsf> for communicating between JS script and a server
14:23 < madari> exactly
14:23 < nsf> and it can use various backends
14:23 < nsf> like websocket, etc.
14:23 < madari> so socket.io abstracts different transports from the
"developer" and chooses the best depending on the browser capabilities
14:23 < madari> yeah
14:23 < nsf> I see
14:24 < nsf> and you're implementing a server in Go
14:24 < madari> yup
14:24 < nsf> and a client side for that too?
14:24 < madari> nope, I'm writing a 100% compatible backend with this
http://github.com/LearnBoost/Socket.IO
14:24 < madari> so I can use their client-stuff with my backend
14:24 < nsf> ah..  I see
14:25 < nsf> but wait
14:26 < nsf> their client uses different transports
14:26 < madari> yeah
14:26 < nsf> and your server implements ...  which of them?
14:26 < madari> currently there's support for websockets, xhr-polling and
xhr-multipart transports
14:27 < nsf> ah, I see, you have to make them all too
14:27 < madari> yup
14:27 < nsf> well in that case I think actually the reflection is what you
need to use
14:28 < madari> this is probably not the best project to start learning
stuff with
14:28 < nsf> because all that stuff reminds me RPC package from Go
14:29 < madari> yeah, I've been reading the RPC package whole morning and
trying to pick the things that I could use
14:32 < madari> but yeah, all in all, I'm enjoying writing Go and having
those "ahaaa" feelings constantly :D
14:32 -!- Adys [~Adys@unaffiliated/adys] has quit [Quit: I ♥ Unicode]
14:33 < nsf> well, I can see you're using that kind of structures here:
struct { announcement string }{ ...  }
14:33 < nsf> and it gets passed to JSON encoder
14:34 < nsf> but you want []interface{} for some reason for PayloadEncoder
14:34 < madari> yup
14:34 < nsf> what's wrong with the current approach?
14:35 < nsf> return df.PayloadEncoder([]string{`{"sessionid":"` +
c.sessionid + `"}`})
14:35 < nsf> that one
14:36 < nsf> hm..
14:36 < nsf> so it's in the json format already isn't it?
14:36 < nsf> and why are you passing it to Encoder?
14:36 < nsf> :)
14:36 < madari> hehe, the client wants a "json-object" wrapped in a
json-structure =)
14:37 < madari> don't ask me
14:37 < madari> :D
14:37 < nsf> :D
14:37 < madari> but the protocol has changed a lot since I last looked at it
14:37 < madari> so that might not be the case anymore
14:38 < nsf> and I don't know anything about protocol
14:38 < madari> previously the protocol was really content agnostic, so you
could pass whatever you wanted
14:38 < nsf> :(
14:38 < nsf> I guess you should start from that
14:38 < madari> but not they have per-message frames
14:38 < madari> now
14:38 < nsf> take a look at the current protocol :)
14:38 < madari> now you're talking :)
14:38 < nsf> also
14:39 < nsf> why are you using interface here for formatter?
14:39 < nsf> because I can see only one implementation of it
14:39 < nsf> are there others planned?
14:39 < madari> well, no.
14:39 < nsf> :)
14:40 < nsf> that's the answer to all your problems
14:40 -!- macroron [~ron@c-98-242-168-49.hsd1.fl.comcast.net] has quit [Quit:
Leaving]
14:40 < madari> oh man, there are so many issues with the code
14:40 < madari> :)
14:41 < nsf> remove interface, remove implementation, leave these as simple
functions
14:41 < nsf> and reimplement HandshakeEncoder
14:41 < nsf> it doesn't need to use PayloadEncoder
14:41 < nsf> imho
14:41 < madari> that's true
14:42 < madari> good ideas
14:43 < nsf> problem solved?
14:43 < nsf> :)
14:46 -!- matt444 [4a84c939@gateway/web/freenode/ip.74.132.201.57] has joined
#go-nuts
14:46 < nsf> btw, a very interesting project
14:46 < matt444> Can any one point me in the right direction of turning a
io.Reader into a string?
14:47 < nsf> matt444: you have an io.Reader and you want to read all the
data from it to a string?
14:47 < matt444> nsf: Yes, it is from http.Response.Body
14:48 < nsf> well first thing that comes to mind
14:48 < nsf> use bufio.Buffer
14:48 < nsf> and then
14:48 < nsf> use io.Copy
14:48 < madari> nsf: thank you :) that's what I thought too and I think Go
could be a perfect language to write such things in
14:49 < nsf> matt444: io.Copy will copy all the stuff from your io.Reader to
a bufio.Buffer (which is io.Writer)
14:49 < nsf> and then you can use method String()
14:49 < nsf> to convert bufio.Buffer to a string
14:49 < nsf> madari: np
14:50 < nsf> matt444: wait
14:50 < matt444> is that a third party package?
http://golang.org/pkg/bufio/ doesn't contain a Type "Buffer"
14:50 < nsf> I'm talking nonsense
14:50 < nsf> :D
14:50 < matt444> oh
14:50 < matt444> :)
14:50 < nsf> I mean bytes.Buffer
14:50 < matt444> oh, ok.
14:50 < nsf> stupid me :D
14:50 < matt444> now it makes sense :)
14:50 < matt444> no, not at all!
14:50 < nsf> ;)
14:51 < matt444> i'll give that a shot, thanks.
14:51 < madari> there's also ioutil.ReadAll
14:51 < nsf> ah yes
14:51 -!- allengeorge [~allengeor@74.12.150.7] has joined #go-nuts
14:51 < nsf> you should use that
14:52 < madari> which probably does pretty much the same thing as the
previously mentioned approach
14:52 < matt444> oh
14:52 < nsf> func ReadAll(r io.Reader) ([]byte, os.Error) {
14:52 < nsf> var buf bytes.Buffer
14:52 < nsf> _, err := io.Copy(&buf, r)
14:52 < madari> :--D
14:52 < nsf> return buf.Bytes(), err
14:52 < nsf> }
14:52 < nsf> yes
14:52 < nsf> :D
14:52 < nsf> well you can make similar function
14:52 < nsf> but instead buf.Bytes()
14:52 < nsf> return buf.String()
14:53 < matt444> great
14:53 < matt444> i'll take that approach.
14:54 < matt444> can't I do:
14:54 < matt444> var buf []byte
14:54 < matt444> string(buf)
14:55 < matt444> to directly convert []byte to string?
14:55 < matt444> no?
14:55 < nsf> you can
14:55 < nsf> but buf.String() is the same as string(buf.Bytes())
14:55 < nsf> so you can actually use that function
14:55 < nsf> as you wish :)
14:56 < matt444> var buf []byte
14:57 < matt444> buf, err := ioutil.ReadAll(r)
14:57 < nsf> it won't work I guess
14:57 < nsf> you need to declare err too
14:58 < nsf> var err os.Error
14:58 < matt444> if err == nil { s := string(buf) }
14:58 < nsf> and use '='
14:58 < nsf> and no
14:58 < nsf> s := string(buf) declares s in this if scope
14:58 < nsf> it will not be visible outside
14:58 < matt444> oh i know
14:58 < matt444> i was just doing short hand
14:58 < nsf> but yes
14:58 < matt444> :)
14:58 < nsf> something like that :)
14:59 < matt444> seemed like a few less lines of code using ioutil rather
than rewriting the same thing
14:59 < nsf> well, maybe
14:59 < matt444> but if i'm going to use it a lot, then it does seem like a
smart idea.
15:02 < nsf> maybe :)
15:03 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
15:04 -!- jcao219 [~Jimmy_Cao@124.126.158.33] has joined #go-nuts
15:04 -!- kanru [~kanru@118-160-160-190.dynamic.hinet.net] has joined #go-nuts
15:07 < matt444> works :)
15:07 < matt444> nsf: thanks to you, my first web request works :)
15:08 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
15:16 -!- skelterjohn [~jasmuth@c-76-116-182-139.hsd1.nj.comcast.net] has joined
#go-nuts
15:16 < matt444> coding in go gives me the warm fuzzies
15:18 < Tonnerre> We should add that to the feature list
15:18 -!- RobertLJ [~quassel@c-68-44-163-191.hsd1.nj.comcast.net] has quit [Remote
host closed the connection]
15:18 -!- path[l] [UPP@120.138.102.50] has joined #go-nuts
15:19 < skelterjohn> post an issue
15:20 < Tonnerre> I am still waiting for PHP to add «PHP makes little babies
cry» to the feature list like I suggested
15:21 * nbjoerg waves to Tonnerre
15:21 < Tonnerre> nbjoerg, :)
15:21 < Tonnerre> nbjoerg, when will we have Go in NetBSD BTW?
15:21 < Tonnerre> nbjoerg, any leads?
15:21 < nbjoerg> working on it
15:22 < Tonnerre> nbjoerg, :))))
15:22 < Tonnerre> That would be so great
15:23 -!- napsy [~luka@212.235.174.112] has quit [Quit: Lost terminal]
15:27 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
15:29 -!- wrtp [~rog@78.148.33.186] has joined #go-nuts
15:29 -!- zozoR [~zozoR@x1-6-00-0e-2e-a3-e0-23.k377.webspeed.dk] has joined
#go-nuts
15:33 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
15:36 -!- wrtp [~rog@78.148.33.186] has quit [Quit: wrtp]
15:37 -!- wrtp [~rog@78.148.33.186] has joined #go-nuts
15:38 -!- navigator [~navigator@p548979A1.dip.t-dialin.net] has quit [Remote host
closed the connection]
15:40 < hokapoka> Any had any issues with regexp.RegExp, pulled from hg this
morning and have 6l: conflicting definitions for "regexp".Regexp errors when using
hoisie's web.go
15:42 -!- wrtp [~rog@78.148.33.186] has quit [Ping timeout: 258 seconds]
15:42 < hokapoka> The package builds fine it's when I try to use it I get
this : http://pastie.org/1092148
15:44 < exch> hokapoka: did you run $GOROOT/src/clean.bash before
updating/rebuilding?  Forgetting that has caused similar problems for in the past
15:44 < hokapoka> exch: arh, I've just got it working.
15:45 < hokapoka> I created a new $GOROOT and to clean up the environment,
didn't know about clean.bash
15:46 < hokapoka> So I need to use ./clean.bash before _EVERY_ update &
rebuild from the main sources?
15:46 < skelterjohn> i use ./all.bash
15:46 < skelterjohn> which presumably cleans
15:46 < hokapoka> That's what I used.
15:47 < skelterjohn> when i run it, i see lots of "rm"s flit across the
screen in the beginning
15:47 < exch> I haven't had any problems anymore since I explicitely ran
clean.bash before every update
15:48 -!- skelterjohn [~jasmuth@c-76-116-182-139.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
15:48 < hokapoka> There was somethng left behind, it's easy enough to mv the
root and start again.
15:49 < hokapoka> Has anyone created additional scripts that automatically
call goinstall for other packages that you install?
15:50 -!- jcao219 [~Jimmy_Cao@124.126.158.33] has left #go-nuts []
15:50 -!- jcao219 [~Jimmy_Cao@124.126.158.33] has joined #go-nuts
15:51 -!- DerHorst [~Horst@e176109149.adsl.alicedsl.de] has quit [Remote host
closed the connection]
15:55 -!- chickamade [~chickamad@115.74.94.85] has joined #go-nuts
16:01 -!- chickamade [~chickamad@115.74.94.85] has quit [Quit: Leaving]
16:02 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts
16:02 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Excess
Flood]
16:03 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts
16:06 -!- femtoo [~femto@95-89-196-235-dynip.superkabel.de] has quit [Quit:
Leaving]
16:15 < rsaarelm> I don't suppose anyone has an idea what to make of this?
http://pastebin.com/LQ6cBaRw
16:15 < rsaarelm> I'm trying to assign the file from os.Open into a "var
loadFile interface { io.Reader; Close() os.Error }"
16:15 -!- mbohun [~mbohun@ppp115-156.static.internode.on.net] has joined #go-nuts
16:16 < rsaarelm> The error turned up when I changed a straight File*
variable into the interface one.
16:17 < rsaarelm> It's also a bit heisenbuggy, print statements around
os.Open make it go away.
16:24 < rsaarelm> Hm. I might be able to get anomalous crashiness from a
smaller test program too.
16:26 -!- terrex [~terrex@84.122.67.111.dyn.user.ono.com] has quit [Quit:
Leaving.]
16:29 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 265 seconds]
16:30 -!- sladegen [~nemo@unaffiliated/sladegen] has quit [Disconnected by
services]
16:30 -!- sladegen [~nemo@unaffiliated/sladegen] has joined #go-nuts
16:34 -!- ronnyy [~quassel@p4FF1DC20.dip.t-dialin.net] has joined #go-nuts
16:34 -!- skelterjohn [~jasmuth@c-76-116-182-139.hsd1.nj.comcast.net] has joined
#go-nuts
16:40 -!- matt444 [4a84c939@gateway/web/freenode/ip.74.132.201.57] has quit [Quit:
Page closed]
16:43 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
16:59 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has quit [Ping timeout:
245 seconds]
17:02 -!- navigator [~navigator@p548979A1.dip.t-dialin.net] has joined #go-nuts
17:07 -!- Project_2501 [~Marvin@82.84.75.51] has quit [Quit: E se abbasso questa
leva che succ...]
17:09 -!- skelterjohn [~jasmuth@c-76-116-182-139.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
17:14 -!- Adys [~Adys@unaffiliated/adys] has quit [Quit: I ♥ Unicode]
17:14 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
17:14 -!- Adys [~Adys@unaffiliated/adys] has quit [Remote host closed the
connection]
17:15 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
17:18 -!- Xurix [~Luixsia@AToulouse-254-1-30-111.w81-250.abo.wanadoo.fr] has quit
[Quit: Leaving]
17:24 -!- gabriel9 [~gabriel9@93.157.192.28] has quit [Read error: Connection
reset by peer]
17:24 -!- ExtraSpice [~XtraSpice@88.118.32.225] has joined #go-nuts
17:25 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
17:27 -!- skelterjohn [~jasmuth@c-76-116-182-139.hsd1.nj.comcast.net] has joined
#go-nuts
17:27 -!- gabriel9 [~gabriel9@93.157.192.28] has joined #go-nuts
17:31 -!- ronnyy [~quassel@p4FF1DC20.dip.t-dialin.net] has quit [Remote host
closed the connection]
17:45 -!- napsy [~luka@212.235.174.112] has quit [Read error: Operation timed out]
17:57 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts
18:16 < hokapoka> When using goinstall <somegithubrepo> it doesn't
appear to update with changes, how do you make it re-download the srouce?
18:17 < hokapoka> s/srouce/source
18:18 < hokapoka> ahem, might help if I read the --help messages
18:20 -!- tvw [~tv@e176005167.adsl.alicedsl.de] has joined #go-nuts
18:21 -!- Xenith [~xenith@2001:470:0:a9:226:b0ff:fee3:3a0c] has joined #go-nuts
18:27 -!- leimy_ [~dave@pool-71-164-13-100.sttlwa.fios.verizon.net] has quit [Ping
timeout: 265 seconds]
18:28 -!- saschpe [~quassel@mgdb-4d0cf1ad.pool.mediaWays.net] has quit [Read
error: Connection reset by peer]
18:28 -!- leimy_ [~dave@pool-71-164-13-100.sttlwa.fios.verizon.net] has joined
#go-nuts
18:30 -!- Xiaobo [~Xiaobo@61.48.211.178] has quit [Quit: Leaving]
18:43 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
18:51 -!- sacho_ [~sacho@95-42-124-149.btc-net.bg] has joined #go-nuts
18:54 -!- sacho [~sacho@79-100-57-33.btc-net.bg] has quit [Ping timeout: 276
seconds]
18:57 -!- navigator [~navigator@p548979A1.dip.t-dialin.net] has quit [Quit:
WeeChat 0.3.3]
19:01 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts
19:06 -!- tvw [~tv@e176005167.adsl.alicedsl.de] has quit [Remote host closed the
connection]
19:09 < str1ngs> hokapoka: I'm getting the same error with web.go
19:12 -!- Damn3d [damn3d@unaffiliated/morpheus/x-0931003] has left #go-nuts []
19:13 -!- nettok [~quassel@200.119.186.237] has joined #go-nuts
19:16 < str1ngs> hokapoka: there where some regexp function name changes
just figuring out what one to use
19:17 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Quit:
Leaving.]
19:19 < str1ngs> hokapoka: FindStringSubmatch should work in place of
MatchStrings but I'm not sure yet.
19:20 -!- MizardX [~MizardX@unaffiliated/mizardx] has quit [Ping timeout: 276
seconds]
19:28 -!- Ginto8 [~ginto8@pool-173-61-45-40.cmdnnj.fios.verizon.net] has quit
[Ping timeout: 245 seconds]
19:30 < str1ngs> hokapoka: http://github.com/str1ngs/web.go if you are
getting the same regexp test with this if you can.  if that fixes it I'll send
hosie a pull request.  I'm using git head not release though
19:31 < str1ngs> git head as in the git mirror
19:37 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has quit [Read error:
Operation timed out]
19:42 -!- thomas_b [~thomasb@cm-84.215.47.51.getinternet.no] has joined #go-nuts
19:50 -!- sacho_ [~sacho@95-42-124-149.btc-net.bg] has quit [Read error: Operation
timed out]
19:51 -!- sacho_ [~sacho@95-42-124-149.btc-net.bg] has joined #go-nuts
19:52 -!- tsykoduk [~tsykoduk@184.78.195.79] has quit [Ping timeout: 252 seconds]
19:55 -!- tsykoduk [~tsykoduk@184.78.195.79] has joined #go-nuts
20:01 -!- tensorpudding [~user@99.70.202.65] has joined #go-nuts
20:09 -!- zozoR [~zozoR@x1-6-00-0e-2e-a3-e0-23.k377.webspeed.dk] has quit [Quit:
Morten.  Desu~]
20:09 -!- visof [~visof@unaffiliated/visof] has quit [Ping timeout: 265 seconds]
20:22 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts
20:32 -!- visof [~visof@unaffiliated/visof] has quit [Ping timeout: 265 seconds]
20:35 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping
timeout: 265 seconds]
20:41 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts
20:44 -!- sacho_ [~sacho@95-42-124-149.btc-net.bg] has quit [Remote host closed
the connection]
20:45 -!- zozoR [~zozoR@x1-6-00-0e-2e-a3-e0-23.k377.webspeed.dk] has joined
#go-nuts
20:45 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts
20:46 -!- atsampson [~ats@212.183.140.19] has quit [Ping timeout: 240 seconds]
20:47 -!- napsy [~luka@212.235.174.112] has quit [Ping timeout: 240 seconds]
20:48 -!- atsampson [~ats@212.183.140.6] has joined #go-nuts
20:52 -!- derferman [~derferman@24-176-246-220.dhcp.crcy.nv.charter.com] has
joined #go-nuts
21:06 -!- zozoR [~zozoR@x1-6-00-0e-2e-a3-e0-23.k377.webspeed.dk] has quit [Quit:
Morten.  Desu~]
21:11 -!- carllerche [~carllerch@208.87.61.203] has joined #go-nuts
21:12 -!- mattikus [~mattikus@ip24-250-73-154.br.br.cox.net] has quit [Read error:
Connection reset by peer]
21:13 -!- matt444 [4a84c939@gateway/web/freenode/ip.74.132.201.57] has joined
#go-nuts
21:14 < matt444> regexp doesn't like \.
21:14 < matt444> so...  how are you able to identify periods?
21:14 -!- mattikus_ [~mattikus@ip24-250-73-154.br.br.cox.net] has joined #go-nuts
21:17 < matt444> unknown escape sequence
21:20 < matt444>
"((https?)://)((www.)?)([a-zA-Z]+)(\.)([a-zA-Z]+)(/)(.*)(\.| )"
21:20 -!- carllerche [~carllerch@208.87.61.203] has quit [Quit: carllerche]
21:21 < NfNitLoop> you probably need to do \\.
21:21 < NfNitLoop> one escape for string literals, one escape for the regex
pattern.
21:21 < matt444> you're a genius
21:22 < NfNitLoop> but instead of (\\.| ), you could just write [.  ]
21:22 < matt444> you mean [\\.  ]
21:22 < NfNitLoop> no, you don't have to escape anything inside []s
21:22 < NfNitLoop> nearly everything is a literal.
21:22 < NfNitLoop> (except for -, which is only a literal if it's the last
character.)
21:23 < NfNitLoop> and ^, which means "not" if it's the first character.
21:23 < matt444> oh ok
21:23 < matt444> right
21:23 < matt444> i'm not very good at regex
21:23 < matt444> but i don't think this package is very good either
21:23 < matt444> ;-P
21:24 < cbeck> The regex package as it stands is a temporary measure, not
sure if anyone is actively working on improving it atm though
21:25 < matt444> i think there is a sre2 package
21:25 < exch> If you need escape sequences in your regex, then use ` as the
pattern string delimiter.  Not "
21:30 < matt444> surprised no one is working on it, that's one of the most
important libraries in a lang
21:31 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
21:32 < nbjoerg> heh.  you have written too much Perl :)
21:33 < matt444> i wish!  but no.
21:37 -!- allengeorge [~allengeor@74.12.150.7] has quit [Quit: allengeorge]
21:42 -!- matt444 [4a84c939@gateway/web/freenode/ip.74.132.201.57] has quit [Ping
timeout: 252 seconds]
21:43 -!- napsy [~luka@212.235.174.112] has joined #go-nuts
21:45 -!- visof [~visof@unaffiliated/visof] has quit [Read error: Connection timed
out]
21:48 -!- allengeorge [~allengeor@74.12.150.7] has joined #go-nuts
21:48 -!- allengeorge [~allengeor@74.12.150.7] has quit [Client Quit]
21:54 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Quit:
slashus2]
22:03 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has joined #go-nuts
22:04 -!- slashus2 [~slashus2@74-137-24-74.dhcp.insightbb.com] has quit [Client
Quit]
22:11 -!- smcq__ [~smcq@smcq.net] has quit [Quit: ircII EPIC4-2.6 -- Are we there
yet?]
22:16 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Quit: leaving]
22:17 -!- rlab [~Miranda@91.200.158.34] has quit [Read error: Connection reset by
peer]
22:18 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
22:21 -!- irc [~irc@209.17.191.58] has joined #go-nuts
22:26 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has quit
[Quit: leaving]
22:27 -!- jA_cOp [~yakobu@p4101-ipngn100108osakakita.osaka.ocn.ne.jp] has joined
#go-nuts
22:28 -!- jA_cOp [~yakobu@p4101-ipngn100108osakakita.osaka.ocn.ne.jp] has quit
[Changing host]
22:28 -!- jA_cOp [~yakobu@unaffiliated/ja-cop/x-9478493] has joined #go-nuts
22:32 -!- photron [~photron@port-92-201-50-109.dynamic.qsc.de] has quit [Ping
timeout: 240 seconds]
22:33 -!- General13372 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has joined
#go-nuts
22:33 -!- Davidian1024 [~Davidian1@cpe-98-27-192-193.neo.res.rr.com] has joined
#go-nuts
22:34 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has joined #go-nuts
22:37 -!- General1337 [~support@71-84-50-230.dhcp.mtpk.ca.charter.com] has quit
[Ping timeout: 276 seconds]
22:49 -!- g0bl1n [~anonymous@a213-22-18-58.cpe.netcabo.pt] has joined #go-nuts
22:51 -!- matt444 [601c2542@gateway/web/freenode/ip.96.28.37.66] has joined
#go-nuts
22:52 < matt444> how do you create a map[string]interface?
22:52 < exch> make(map[string]interface{})
22:52 < exch> note the {} after interface
22:52 < exch> it's part of the type name
22:53 < matt444> can you give me an example?
22:53 < exch> var mymap map[string]interface{}; mymap =
make(map[string]interface{})
22:53 < exch> or shorthand: mymap := make(...)
22:54 < matt444> i mean an example with data
22:54 < exch> what do you mean by that?
22:55 < matt444> where mymap != nil
22:56 < matt444> with some keys and values, i meant
22:56 < matt444> i don't know the syntax for that
22:57 < exch> still not sure what you mean..
22:57 < matt444> hmm
22:57 < jessta> mymap["somestring"] = somevalue
22:57 < matt444> ok
22:57 < matt444> yes
22:58 < matt444> and to add data with 2 keys on the same line?
22:59 < exch> mm := map[string]int{"a": 1, "b": 2}
22:59 < matt444> yes
22:59 < matt444> but with a map[string]interface{} instead...?
23:00 < exch> mm := map[string]interface{}{"a": something, "b":
somethingelse}
23:00 < matt444> ok
23:00 < matt444> a can be a string
23:00 < matt444> and b can be an int
23:00 < matt444> correct?
23:00 < jessta> yep
23:00 < exch> yes
23:00 < matt444> ok
23:03 -!- jcao219 [~Jimmy_Cao@124.126.158.33] has left #go-nuts []
23:06 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
23:07 -!- nettok [~quassel@200.119.186.237] has left #go-nuts []
23:08 -!- smw [~stephen@c-76-28-90-0.hsd1.ct.comcast.net] has quit [Quit: Leaving]
23:12 -!- matt444 [601c2542@gateway/web/freenode/ip.96.28.37.66] has quit [Quit:
Page closed]
23:15 -!- jcao219 [~Jimmy_Cao@124.126.158.33] has joined #go-nuts
23:16 -!- carllerche [~carllerch@208.87.61.203] has joined #go-nuts
23:31 -!- g0bl1n [~anonymous@a213-22-18-58.cpe.netcabo.pt] has quit [Quit: g0bl1n]
23:32 -!- derferman [~derferman@24-176-246-220.dhcp.crcy.nv.charter.com] has quit
[Quit: derferman]
23:45 -!- napsy [~luka@212.235.174.112] has quit [Read error: Operation timed out]
--- Log closed Sun Aug 15 00:00:05 2010