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

--- Log opened Sat Dec 04 00:00:36 2010
00:00 < Namegduf> Yes.
00:01 < Namegduf> Go has a standard style, and does not guarantee whitespace
can be varied at will due to lack of semicolons meaning line ends terminate
statements (in some cases), and does not go out of its way to support non-standard
styles.
00:01 <+iant> ....and this topic has been discussed ad nauseum
00:01 < MaybeSo> http://golang.org/doc/go_faq.html#semicolons
00:01 < Namegduf> And that, yeah.
00:03 < uriel>
http://www.reddit.com/r/programming/comments/efhop/the_gccgo_go_compiler_is_now_committed_to_gcc/
00:07 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has joined #go-nuts
00:08 -!- l00t [~i-i3id3r_@187.127.164.49] has quit [Ping timeout: 264 seconds]
00:08 -!- l00t- [~i-i3id3r_@187.127.145.54] has joined #go-nuts
00:10 -!- gnuvince_ [~vince@70.35.163.150] has quit [Quit: ""]
00:11 < Namegduf> "I'll wait for Go v2"
00:11 * Namegduf wonders where they got the idea that most languages have a v2
00:12 -!- Fish [~Fish@80.185.109.189] has quit [Quit: So Long, and Thanks for All
the Fish]
00:18 <+iant> aren't we already up to v40 or so?
00:24 -!- iant [~iant@nat/google/x-teyosecbbpocmlxu] has quit [Ping timeout: 240
seconds]
00:28 -!- hagna [~hagna@74-92-245-181-Utah.hfc.comcastbusiness.net] has quit [Ping
timeout: 240 seconds]
00:29 < nsf> Namegduf: C# and Java made that
00:29 < nsf> java has a lot of versions
00:29 < nsf> and C# too
00:30 < nsf> but other than that
00:30 < nsf> my guess is that it was a joke from a D fan
00:30 < nsf> :D
00:30 -!- iant [~iant@66.109.105.230] has joined #go-nuts
00:30 -!- mode/#go-nuts [+v iant] by ChanServ
00:39 < kimelto> the real question is: are we at 1.0 yet?  ;-)
00:39 < crazy2be> hmm is there some template library that supports basic if
structures?  or is there some other way i should structure things?
00:40 < crazy2be> right now i have a ie-warning at the top of the page if
the user is using IE
00:40 < crazy2be> but it has a close button
00:40 < crazy2be> and i want it to not reappear if the close button is
pressed
00:41 < crazy2be> but i'm unsure how to acheive this without if
functionality in a template language
00:41 < crazy2be> oh wait
00:42 < crazy2be> mustache totally has sections that can be enabled/disabled
with a true/false variable
00:42 < crazy2be> cool
00:44 -!- kanru [~kanru@2001:c08:3700:ffff::1e:e28d] has joined #go-nuts
00:51 -!- Tv [~tv@cpe-76-168-227-45.socal.res.rr.com] has quit [Quit: Leaving.]
00:51 < crazy2be> hmm
00:51 < crazy2be> might have to customize mustache a little...  rendering
the template to a string is not very efficient
00:55 -!- sauerbraten [~sauerbrat@p508CF905.dip.t-dialin.net] has quit [Remote
host closed the connection]
01:00 -!- Chopinn [~Chopin@ti0018a380-dhcp1590.bb.online.no] has quit [Quit:
Leaving]
01:04 <@nf> _nil: i'm not sure
01:04 <@nf> _nil: a) what that means, or b) whether agl has done it ;)
01:22 -!- ExtraSpice [~XtraSpice@88.118.33.48] has quit [Ping timeout: 240
seconds]
01:37 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
01:38 -!- shvntr [~shvntr@116.26.131.161] has joined #go-nuts
01:39 -!- krutcha [~krutcha@S010600045a27676a.vs.shawcable.net] has joined
#go-nuts
01:45 -!- tvw [~tv@e176006068.adsl.alicedsl.de] has quit [Ping timeout: 245
seconds]
01:55 -!- sabalaba [~sabalaba@123.123.4.193] has quit [Quit: Leaving]
02:01 -!- kanru [~kanru@2001:c08:3700:ffff::1e:e28d] has quit [Read error:
Operation timed out]
02:04 < _nil> nf: i'm talking about elliptic curve signatures
02:04 < _nil> i'll figure it out
02:04 < _nil> nf: what's the best way to reach him?
02:05 < _nil> p.s.  nice talk -- i saw it
02:15 < krutcha> which talk?
02:16 < crazy2be> garh, i can't figure out how to properly use makefiles
with go...  it doesn't seem to be properly rebuilding my modules
02:16 < krutcha> you making packages, or executeable applications?
02:16 < crazy2be> both
02:17 < crazy2be> resused functionality is in packages
02:17 < crazy2be> and i've set it up similar to $(GOROOT)/src/pkg/
02:18 < krutcha> in my case I have a top level makefile, an example
directory that compiles an application, and a pkg directory that makes a package
that's used in the application example
02:18 < krutcha> I can pastebin those if you like for a quick compare, it's
probably the Make.pkg include missing or something
02:18 < crazy2be> ok, that would be great
02:18 < krutcha> ok hang on
02:19 < crazy2be> make doesn't complain about errors, but it doesn't seem to
have the right version of the packages when i go to compile my executable
02:19 < crazy2be> hmm
02:20 -!- gnuvince_ [~vince@70.35.164.117] has joined #go-nuts
02:21 < crazy2be> it's complaining that i can't use a http.ResponseWriter as
type string in a function argument, which would make sence, if the function took
type string as an argument.
02:21 < crazy2be> but it doesn't, it takes type io.Writer
02:21 < krutcha> probably you need to clean and rebuild/install your package
before compiling your app
02:22 < krutcha> here's all my makefiles and directory structure for the app
I'm playing with: http://pastebin.com/iikhpCY5
02:23 < crazy2be> well the makefile should be doing that...  the
rebuild/install part anyway
02:26 < krutcha> could also possibly be a package namespace issue?
overloaded name?  missing a prefix etc?
02:27 -!- iant [~iant@66.109.105.230] has quit [Quit: Leaving.]
02:27 < crazy2be> well that's what i thought...  But when i compile the
package it doesn't complain
02:28 < krutcha> it may not, but in your other code that's including the
package, perhaps you're not actually calling the function in the package, but
something else with the same name?
02:29 < krutcha> does your function that takes the http.ResponseWriter have
the name of something else that does take a string?
02:29 < krutcha> and need to be prefixed with mypkg.myfunction(...) ?
02:30 < crazy2be> well i thought it might be conflicting with the template
library
02:30 < crazy2be> because one is called util/template and one is just called
template
02:30 < crazy2be> and they both have an Execute() funciton
02:31 < crazy2be> but that's not the case
02:31 < crazy2be> because the function signature doesn't match
02:31 < crazy2be> either of them
02:32 < krutcha> maybe temporarily rename yours to foo just to make sure?  I
think go doesn't look at full signatures so much as names (though I might be
wrong)
02:33 < krutcha> ie if there is a foo(bar) and a foo(notbar), and I call
foo(withanything) I think it will call the foo that it finds, unless you prefix it
with util.foo() or mypkg.foo() to ensure
02:33 < krutcha> grain of salt, I'm not 100% on that and may be way off
02:34 < crazy2be> oops, there we go
02:34 < crazy2be> misdiagnosed the issue
02:34 < crazy2be> i was calling the old version of the function, i renamed
it
02:34 < crazy2be> however, there's also a library i added
02:34 < crazy2be> that has a public funciton with that same name, different
signature
02:35 < crazy2be> durp
02:35 < crazy2be> thanks!
02:36 < krutcha> np, glad you got it sorted
02:36 -!- savechina [~savechina@123.116.125.253] has joined #go-nuts
02:37 -!- shvntr [~shvntr@116.26.131.161] has quit [Quit: leaving]
02:37 -!- shvntr [~shvntr@116.26.131.161] has joined #go-nuts
02:40 < savechina> how to use func ( p *xml.Parser) Unmarshal(v interface{}
start *xml.StartElement) ,I write code ,bug can't run.
02:40 < crazy2be> savechina: Can you be more specific?
02:42 < crazy2be> what is the error?
02:42 < crazy2be> what are you trying to do?
02:45 -!- ymasory_ [~ymasory@c-76-99-55-224.hsd1.pa.comcast.net] has joined
#go-nuts
02:48 -!- antonkovalyov [~antonkova@75-101-56-240.dsl.static.sonic.net] has quit
[Remote host closed the connection]
02:48 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has joined
#go-nuts
02:51 -!- floppy_legs [~Adium@adsl-99-32-113-237.dsl.pltn13.sbcglobal.net] has
quit [Quit: Leaving.]
02:52 < savechina> not error ,but retrun value is nil
02:59 < crazy2be> well that's not really enough to go on...  I only
personally have experience with the json package.  XML as a storage format is a
bad idea (TM)
02:59 < crazy2be> generally speaking, that is
02:59 < Namegduf> s/ as a storage format//
03:00 < crazy2be> Namegduf: Well, it works fine in, for example, html.
03:01 < Namegduf> HTML is not XML
03:02 < crazy2be> XHTML is
03:02 < Namegduf> XHTML is supposed to be, but you can't practically get
away with using an XML parser due to need to support tag soup.
03:02 < Namegduf> XHTML is also a dead end; HTML 5 is the present line of
development.
03:03 -!- shvntr [~shvntr@116.26.131.161] has quit [Quit: leaving]
03:03 -!- shvntr [~shvntr@116.26.131.161] has joined #go-nuts
03:03 < crazy2be> right, but most people (myself included) make html pages
XML complient
03:04 < crazy2be> or at least, try to
03:04 < Namegduf> I don't see how that relates.
03:04 < Namegduf> More to the point, though, I don't think supporting
existing formats and APIs where XML is used counts.
03:04 < Namegduf> XML is not being selected, it's being mandated.
03:05 < Namegduf> Obviously for that reason you often need to process XML
crap.
03:05 < crazy2be> anyway, XML is not a bad format for some uses.  Just using
it as a data storage format is like using a hammer to repair a watch
03:05 < Namegduf> What usage would you put it to, then?
03:05 < Namegduf> Data interchange?
03:06 < crazy2be> dunno
03:06 < crazy2be> html?
03:06 < crazy2be> lol
03:06 < Namegduf> I don't think supporting existing formats and APIs where
XML is used counts.
03:07 < skelterjohn> makefile question...if I do $(patsubst X/%,X/%/%, X/Y)
and I want to get X/Y/Y.  It doesn't do this (and the spec says it
shouldn't)....how can I get what I want?
03:07 -!- savechina [~savechina@123.116.125.253] has quit [Ping timeout: 264
seconds]
03:07 < crazy2be> er?
03:07 -!- ymasory_ [~ymasory@c-76-99-55-224.hsd1.pa.comcast.net] has quit [Quit:
Leaving]
03:07 < crazy2be> Namegduf: are you saying HTML is a bad format for it's
use?
03:07 < crazy2be> how would you design it?
03:08 < Namegduf> HTML is not XML
03:08 < Namegduf> XHTML is
03:08 < exch> websites could be a lot more bandwidth-aware if they were
distributed in compact binary formats.  Write in easy markup -> compile ->
distribute
03:09 < Namegduf> I'll fall back on "the people developing HTML 5 clearly
don't think making it XML is useful"
03:09 < Namegduf> Because there's rather a lot of them.
03:09 < crazy2be> well, XML is based on HTML
03:09 < exch> Now they slap a gzip compression ontop of it, which has to be
unzipped on the other end, which just adds to the the memory footprint and
processing time
03:09 -!- Archwyrm [~archwyrm@archwyrm.net] has quit [Ping timeout: 240 seconds]
03:14 < crazy2be> well, a binary format could not be too much more compact
03:14 < crazy2be> could it?
03:14 < crazy2be> most of the html is like div div div div div div
class="blar"
03:15 -!- boscop__ [~boscop@g225211013.adsl.alicedsl.de] has joined #go-nuts
03:15 < crazy2be> i think that html is kind of hacked-together at this point
03:15 < crazy2be> especially css layout
03:15 < crazy2be> like
03:16 < crazy2be> why does the width of a box
03:16 < crazy2be> not include the padding
03:16 < crazy2be> or the border?
03:16 < crazy2be> totally counter-intuitive
03:16 < crazy2be> and generally results in haveing to have divs inside divs
03:16 < exch> it was originally intended to just rpesent data in a semi
human-compreihensible format.  Nowadays they are full blown applications.  I think
an efficient compiled binary can help in that department
03:17 < crazy2be> well true enough
03:17 < crazy2be> and i guess that's what nacl is for
03:18 -!- boscop_ [~boscop@f055108096.adsl.alicedsl.de] has quit [Ping timeout:
276 seconds]
03:18 < exch> Even if it's just to make webdevs less lazy.  My blood boils
everytime I see a website source with all the pointless indentation left in there.
Nobody is going to need that, but it's still being sent over the wire.  With gzip
its considerably less, but it still has to be taken into account
03:18 < crazy2be> oops
03:18 < crazy2be> i'm guilty there sofar :P
03:18 < crazy2be> but that's because i have not written mature libraryies
03:19 < crazy2be> *libraries
03:19 < crazy2be> i plan to fix that
03:19 < crazy2be> and compress css, javascript, etc
03:19 < exch> A simple postprocessor on the serverside can fix that.  Render
everything to a buffer -> postprocess content to remove whitespace -> voila,
compact output
03:19 < crazy2be> does that speed things up significantly?
03:20 < crazy2be> then you have to render to a buffer
03:20 -!- savechina [~savechina@123.116.125.253] has joined #go-nuts
03:20 < crazy2be> which means a.  you have to allocate more storage
server-side, and b.  they don't see any of your content until it all loads
03:20 < exch> sae for css and js files.  pack them all into a single file as
much as possible Even images can be packed efficiently into a single large image
file.  Then address them with simple texture sub coordinates.  Google does this to
03:20 < exch> Save bandwidth, and spares the server
03:21 < crazy2be> what if you do a performance-intensive computation in the
middle of your html?
03:21 < crazy2be> if you write it as chuncked without the buffer, you would
see the header before it all is loaded
03:21 < exch> In that case, the user has to wait, regardless of what way you
present the data
03:21 < exch> they'll just see half a page..  then nothing and then the rest
03:22 < crazy2be> well i would run it on the templates and js source files
once, and then whenever they are changed
03:22 < exch> ya
03:22 < crazy2be> to compile them to some blob
03:23 < crazy2be> so you get the best of both
03:23 < crazy2be> rather than every request
03:23 < crazy2be> especially if i'm running on a 233 mHz server :P
03:24 < exch> the high-profile websites generally pre-compress those files
on the live environment.  If your dev and live environment are the same, you can
just toggle the compression with a DEBUG var somewhere, which determines if stuff
should be packed or not
03:25 < crazy2be> well, i'm off to sleep
03:25 < crazy2be> night
03:25 < exch> nighty
03:29 -!- crazy2be [~justin@S0106001ac401d400.cg.shawcable.net] has quit [Ping
timeout: 240 seconds]
03:31 -!- savechina [~savechina@123.116.125.253] has quit [Read error: Connection
reset by peer]
03:33 -!- floppy_legs [~Adium@c-24-6-100-37.hsd1.ca.comcast.net] has joined
#go-nuts
03:36 -!- Tuller_ [~tuller@c-69-143-52-174.hsd1.va.comcast.net] has quit [Ping
timeout: 245 seconds]
03:41 -!- anticw [~anticw@c-67-169-68-180.hsd1.ca.comcast.net] has quit [Quit: fsr
ate my kernel]
03:45 < skelterjohn> anyone know how to use regular expressions in
makefiles?
03:46 < |Craig|> skelterjohn: generate make files using shell script then
run them?
03:46 < skelterjohn> =p
03:47 < skelterjohn> i'm pretty sure there is a way
03:47 < skelterjohn> i'm finding hints about it
03:47 < skelterjohn> but no examples
03:47 < |Craig|> there is a way to apply something to all files with a
specific extension, I know that
03:48 < |Craig|> By the way, I finally got a decent multi package make
system working
03:48 < skelterjohn> I know how to use % for pattern matching, but it will
only replace the first % in the dep.  i want it to do multiple replacements
03:48 < skelterjohn> i've got something working too, though it's a bit
clumsy to configure
03:49 < |Craig|> mine is loosely based on this:
https://github.com/jteeuwen/go-example-multipkg
03:49 < skelterjohn> the problem with that
03:49 < skelterjohn> is that if you ahve two packages, A and B
03:49 < skelterjohn> and B depends on A
03:50 < skelterjohn> let's say you have both built right now
03:50 < skelterjohn> and then you change A
03:50 < skelterjohn> and run make
03:50 < skelterjohn> it won't recompile B
03:50 < |Craig|> skelterjohn: ugh, I guess I have work to do...
03:50 < skelterjohn> the only way you can be sure everything is synced is to
do a "make clean all"
03:51 < skelterjohn> the makefile i've got has
$(GOROOT)/pkg/$(GOOS)_$(GOARCH)/$(PKG).a as a target
03:51 < skelterjohn> and other packages can depend on that target
03:51 < skelterjohn> so....  it's pretty clunky
03:52 < skelterjohn> but it only compiles what it needs to
03:53 < |Craig|> perhaps I can make my setup work by using includes rather
than running sum make files with make
03:54 < skelterjohn> if i were a bit slicker with writing makefiles i think
i could make a nice one
03:54 -!- anticw [~anticw@c-67-169-68-180.hsd1.ca.comcast.net] has joined #go-nuts
03:55 < |Craig|> if I include a make file, is it just textually included, or
are its paths relative to its origional location?
03:55 < |Craig|> I guess I should go look it up
03:55 < skelterjohn> the latter, i believe
03:55 < skelterjohn> but not certain
03:55 < skelterjohn> easy to test
03:55 < |Craig|> that would be useful
03:56 < skelterjohn> i might make yet another go builder
03:57 < skelterjohn> that suits my own special purpose, and no one else will
use because it is feature-poor
03:58 -!- antonkovalyov
[~antonkova@host-216-171-54-104.cabesap.clients.pavlovmedia.com] has joined
#go-nuts
04:00 -!- rickard2 [~rickard@netra.esec.du.se] has quit [Read error: Operation
timed out]
04:01 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts
04:01 -!- mode/#go-nuts [+v iant] by ChanServ
04:06 -!- rickard2 [~rickard@netra.esec.du.se] has joined #go-nuts
04:08 -!- powerje [~powerj@adsl-75-49-3-95.dsl.wotnoh.sbcglobal.net] has quit
[Quit: powerje]
04:14 -!- antonkovalyov
[~antonkova@host-216-171-54-104.cabesap.clients.pavlovmedia.com] has quit [Remote
host closed the connection]
04:15 <@nf> _nil: agl@golang.org
04:15 <@nf> krutcha: the one on the golang.org frontpage
04:20 < rspec22> can I not use a composite literal as an rvalue?  e.g.
https://gist.github.com/727796
04:21 <+iant> I think this is a case where you need parentheses to avoid
parsing as if foo != Foo { /* block */ }
04:23 <+iant> At http://golang.org/doc/go_spec.html#Composite_literals
search for "a parsing ambiguity"
04:23 < rspec22> iant: thanks
04:30 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 276 seconds]
04:31 -!- watr_ [~watr@66.183.100.58] has joined #go-nuts
04:33 -!- rbraley [~rbraley@ip72-204-243-89.ph.ph.cox.net] has quit [Ping timeout:
250 seconds]
04:35 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 260
seconds]
04:44 -!- watr_ [~watr@66.183.100.58] has quit [Ping timeout: 240 seconds]
04:53 -!- niemeyer [~niemeyer@189.73.142.213] has quit [Ping timeout: 245 seconds]
04:56 -!- meanburrito920 [~john@unaffiliated/meanburrito920] has quit [Quit: Lost
terminal]
04:59 -!- anticw [~anticw@c-67-169-68-180.hsd1.ca.comcast.net] has quit [Quit:
Lost terminal]
05:04 -!- anticw [~anticw@c-67-169-68-180.hsd1.ca.comcast.net] has joined #go-nuts
05:06 -!- Eridius [~kevin@unaffiliated/eridius] has joined #go-nuts
05:08 -!- meanburrito920 [~john@unaffiliated/meanburrito920] has joined #go-nuts
05:12 -!- meanburrito920 [~john@unaffiliated/meanburrito920] has quit [Read error:
Connection reset by peer]
05:12 -!- rbraley [~rbraley@ip72-204-243-89.ph.ph.cox.net] has joined #go-nuts
05:17 -!- Fullma [~fullma@ram94-2-82-66-69-246.fbx.proxad.net] has joined #go-nuts
05:27 < skelterjohn> how do i tell exec.Run to look in the PATH for places
to find the executable i want?
05:31 -!- kanru [~kanru@2001:c08:3700:ffff::1f:8de4] has joined #go-nuts
05:32 -!- Archwyrm [~archwyrm@archwyrm.net] has joined #go-nuts
05:41 < rspec22> skelterjohn: can't you use exec.LookPath to find the targe
texe and then call Run?
05:42 < skelterjohn> good call - i suppose it must be late and i'm getting
some tunnel vision
05:42 < skelterjohn> thanks
05:56 < krutcha> nf: cool I think I watched that earlier today, useful stuff
in there
05:57 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has quit [Quit:
Leaving.]
06:05 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has quit
[Quit: skelterjohn]
06:10 < floppy_legs> Is there anyway to add a custom http header to a
request?  http.Get() seems fairly limited.
06:10 -!- hoverbear [~Hoverbear@unaffiliated/hoverbear] has joined #go-nuts
06:11 < floppy_legs> i found this bug report:
http://code.google.com/p/go/issues/detail?id=155, but looks like that ticket is
fairly dormant?
06:29 < anticw> iant: do you know anything about the debug info stuff people
are doing now?
06:35 -!- watr_ [~watr@66.183.100.58] has joined #go-nuts
06:36 < anticw> floppy_legs: what do you need?
06:37 < rmmh> is it possible to have more than one set of patches in code
review at a time?
06:37 < anticw> i did a ReST interface for something a while ago using
http.NewClientConn
06:37 < anticw> rmmh: if the files in each change don't overlap yes
06:38 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Quit: leaving]
06:43 -!- watr_ [~watr@66.183.100.58] has quit [Ping timeout: 245 seconds]
06:45 -!- path[l] [~path@120.138.102.50] has joined #go-nuts
06:51 < floppy_legs> antiw: yeah, i just need to add a custom http header to
access a web service.  using NewClientConn is an option, but that is repeating a
lot of the code send() is hiding.
06:55 -!- hutuworm [~Adium@74.82.1.19] has joined #go-nuts
06:56 < krutcha> is the xml package being redone?  There's a bug note in it
saying "Mapping between XML elements and data structures is inherently flawed: an
XML element is an order-dependent collection of anonymous values, while a data
structure is an order-independent collection of named values.  See package json
for a textual representation more suitable to data structures.  "
07:00 -!- ExtraSpice [~XtraSpice@88.118.33.48] has joined #go-nuts
07:00 < anticw> floppy_legs: it's not that bad, i had to send customer
headers that way ...  make a more generic get/post isn't really worth it for most
people
07:01 < anticw> i was going to do that and by the time i did it myself i
decided it was about right doing it like that
07:01 < anticw> krutcha: no ...  that comment isn't a design issue ...  it's
a reflection of how xml and structures are
07:02 < krutcha> anticw: it seems a design issue, the standard xml package
does just that, maps xml to structs, as it stands.
07:03 < anticw> krutcha: where this do map it works fine ....  the issue is
you can represent things in xml in ways that don't map well to structures
07:03 < anticw> s/this/things/
07:03 < krutcha> yeah, like xmpp..  which is what I've been trying to code
up
07:04 -!- hutuworm [~Adium@74.82.1.19] has quit [Quit: Leaving.]
07:04 < anticw> isn't there one already?
07:05 < krutcha> I didn't see any, but it's just a fun project to learn go
07:05 < krutcha> either way..  the xml package can't really cope with xml
messaging that is dynamic like that
07:06 < anticw> there are other packages...
07:06 < krutcha> yeah, I'm currently using one called xmlx which parses
incoming xml to a linked list of nodes and sub nodes
07:06 < floppy_legs> anticw: ok, i will go that route for now.  i might try
contributing a patch if i think of a more general way of solving this.
07:07 < krutcha> but wanted to eliminate use of 3rd party packages for
something that there's a native package for already..  then that bug claim I
mentioned made me wonder if they're reworking it to be more useful
07:07 < anticw> floppy_legs: i hacked up Get to take header args, but tbqh
it's rarely asked for
07:08 < anticw> floppy_legs: the code to use NewClientConn is fine ...  and
for me it allows HTTP/1.1 which is a bit iffy right now with the current
interfaces
07:08 < anticw> i would rather see that stuff worked out first
07:10 < floppy_legs> i was talking about a more robust http library:
persistent connections and all.
07:10 < floppy_legs> doesnt look like anyone is working on that part of the
library
07:11 -!- gnuvince_ [~vince@70.35.164.117] has quit [Remote host closed the
connection]
07:11 < anticw> look at pending CLs for review
07:11 -!- gnuvince [~vince@70.35.164.117] has quit [Remote host closed the
connection]
07:11 -!- gnuvince_ [~vince@70.35.163.159] has joined #go-nuts
07:11 < anticw> there are some last i checked for various issues ...  there
were fixes as little as a day ago as well
07:11 -!- gnuvince [~vince@70.35.163.159] has joined #go-nuts
07:11 < floppy_legs> oh ok
07:12 < anticw> hoise has a working client as well, i think he blogged about
it
07:12 < anticw> there is quite a bit out there ...  it's just not always
easy to find :/
07:12 < rmmh> anticw: you might be referencing my html fix ;)
07:13 < anticw> rmmh: to deal with next pipelined response wrt to lack on a
consume?
07:14 < rmmh> oh no
07:15 < floppy_legs> yeah, i saw this by hoise:
https://github.com/hoisie/httplib.go/blob/master/httplib.go
07:16 < floppy_legs> something like that should be in the stdlib
07:16 < anticw> im not so sure ...  it's not clear how it should look and
work
07:19 < anticw> floppy_legs: use http.NewClientConn ...  to send build a
request with http.Request and use Write & Read like you would for some high-level
frames protocol
07:22 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping
timeout: 272 seconds]
07:23 < floppy_legs> yeah, that's the plan for now.
07:25 < floppy_legs> thanks for your help
07:25 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts
07:27 -!- adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has joined
#go-nuts
07:31 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
07:37 -!- ExtraSpice [~XtraSpice@88.118.33.48] has quit [Ping timeout: 240
seconds]
07:51 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 265 seconds]
07:51 -!- gnuvince [~vince@70.35.163.159] has quit [Ping timeout: 240 seconds]
07:51 -!- gnuvince_ [~vince@70.35.163.159] has quit [Remote host closed the
connection]
07:52 -!- gnuvince [~vince@72.0.215.135] has joined #go-nuts
07:52 -!- gnuvince_ [~vince@72.0.215.135] has joined #go-nuts
07:59 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has joined #go-nuts
08:04 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Read error:
Connection reset by peer]
08:09 -!- Project_2501 [~Marvin@82.84.79.101] has joined #go-nuts
08:16 -!- noam [noam@77.124.224.108] has quit [Read error: Operation timed out]
08:19 -!- photron [~photron@port-92-201-51-158.dynamic.qsc.de] has joined #go-nuts
08:21 -!- noam [noam@77.124.224.108] has joined #go-nuts
08:26 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
08:27 -!- Project_2501 [~Marvin@82.84.79.101] has quit [Quit: E se abbasso questa
leva che succ...]
08:27 -!- Project_2501 [~Marvin@82.84.79.101] has joined #go-nuts
08:30 -!- chickamade [~chickamad@116.118.62.24] has joined #go-nuts
08:30 -!- ronnyy [~quassel@drsd-4db30e11.pool.mediaWays.net] has joined #go-nuts
08:31 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
08:36 -!- Project_2501 [~Marvin@82.84.79.101] has quit [Quit: E se abbasso questa
leva che succ...]
08:41 -!- krutcha [~krutcha@S010600045a27676a.vs.shawcable.net] has quit [Quit:
Leaving]
08:42 -!- Project_2501 [~Marvin@82.84.79.101] has joined #go-nuts
08:47 -!- skejoe [~skejoe@188.114.142.162] has joined #go-nuts
09:16 -!- ct529 [~quassel@77-44-78-159.xdsl.murphx.net] has joined #go-nuts
09:31 -!- piyushmishra [~piyushmis@117.200.227.48] has joined #go-nuts
09:31 -!- tensorpudding [~user@99.148.202.191] has quit [Remote host closed the
connection]
09:36 -!- boscop_ [~boscop@g225211013.adsl.alicedsl.de] has joined #go-nuts
09:36 -!- boscop__ [~boscop@g225211013.adsl.alicedsl.de] has quit [Read error:
Connection reset by peer]
09:56 -!- floppy_legs [~Adium@c-24-6-100-37.hsd1.ca.comcast.net] has quit [Quit:
Leaving.]
10:12 -!- hcatlin [~hcatlin@host109-153-161-176.range109-153.btcentralplus.com]
has joined #go-nuts
10:12 -!- hcatlin [~hcatlin@host109-153-161-176.range109-153.btcentralplus.com]
has quit [Changing host]
10:12 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
10:17 -!- Oejet [~oejet@212.45.122.120] has joined #go-nuts
10:21 -!- piyushmishra [~piyushmis@117.200.227.48] has quit [Quit: Leaving.]
10:21 -!- piyushmishra [~piyushmis@117.200.227.48] has joined #go-nuts
10:28 < TheSeeker> hmm, euphoria comes with a tool to translate into c...I
kinda feel like making a bastard go+euphria program now >_>
10:34 -!- piyushmishra [~piyushmis@117.200.227.48] has quit [Read error:
Connection reset by peer]
10:34 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has joined #go-nuts
10:36 -!- skejoe [~skejoe@188.114.142.162] has quit [Quit: leaving]
10:41 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit:
peace in teh middle east]
10:41 -!- ct529 [~quassel@77-44-78-159.xdsl.murphx.net] has quit [Remote host
closed the connection]
10:52 -!- piyushmishra [~piyushmis@117.200.226.254] has joined #go-nuts
10:53 -!- path[l] [~path@120.138.102.50] has quit [Quit: path[l]]
10:55 -!- path[l] [~path@120.138.102.50] has joined #go-nuts
10:55 -!- ct529 [~quassel@77-44-78-159.xdsl.murphx.net] has joined #go-nuts
10:59 -!- path[l] [~path@120.138.102.50] has quit [Client Quit]
11:18 -!- chickamade [~chickamad@116.118.62.24] has quit [Ping timeout: 245
seconds]
11:30 -!- terrex [~terrex@84.122.72.127.dyn.user.ono.com] has joined #go-nuts
11:31 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Ping
timeout: 264 seconds]
11:43 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has joined #go-nuts
11:44 -!- adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has quit [Quit:
adu]
12:00 -!- thomaslee [~thomaslee@202-161-18-106.dyn.iinet.net.au] has joined
#go-nuts
12:04 -!- ct529 [~quassel@77-44-78-159.xdsl.murphx.net] has quit [Read error:
Connection reset by peer]
12:05 -!- kashia__ [~Kashia@port-92-200-8-147.dynamic.qsc.de] has joined #go-nuts
12:06 -!- Project_2501 [~Marvin@82.84.79.101] has quit [Quit: E se abbasso questa
leva che succ...]
12:08 -!- kashia_ [~Kashia@port-92-200-147-126.dynamic.qsc.de] has quit [Ping
timeout: 240 seconds]
12:08 < thomaslee> is it possible to do type aliasing in Go at the moment?
12:09 < thomaslee> type Foo struct { Bar } isn't quite doing what I want ...
12:09 < KBme> type Foo Bar?
12:09 < thomaslee> KBme: ...  really?  *tries*
12:10 < thomaslee> Hmm.  Still not quite what I want.  Because Foo is a
distinct type, assignment to a *Foo from a *Bar won't work.
12:10 < KBme> no it won't
12:10 < KBme> why would it?
12:11 < KBme> you might be able to coerce it by casting
12:11 < KBme> you are creating a distinct type, and then complaining it's a
distinct type...
12:11 < thomaslee> can coerce it, but then methods defined for *Bar won't
work for *Foo :)
12:12 < KBme> well..
12:12 < thomaslee> right, but I'm not looking for a distinct type, I'm
looking for an alias :)
12:12 < KBme> sure they will
12:12 < KBme> you cast it to (*Foo)
12:12 < KBme> then the methods work on it
12:12 < thomaslee> right, but that's breaking an abstraction layer I'm
trying to introduce.  Perhaps I'd do better to explain what I'm trying to do.
12:13 < KBme> func (*Foo) String() {return Foo.name}
12:13 < KBme> func (m *Bar) String {t := m.(*Foo); return t.String();}
12:13 < KBme> something like this could work
12:14 < KBme> but yeah, you'd do better to explain
12:14 < thomaslee> So I'm working with GoMySQL right now, but I'd eventually
like to sub in e.g.  Postgres or whatever.  So I'm doing something like this:
12:14 < thomaslee> type Connection mysql.MySQL
12:14 < KBme> but why?
12:15 < thomaslee> I realise eventually I'll need to treat Connection as
more than just an alias, but in the short term I'd like to be able to call methods
defined for mysql.MySQL on Connection
12:15 < thomaslee> but that's obviously not possible here, because
Connection is not of the same type
12:16 < thomaslee> so I guess what I'm looking for is something that says
"This is just another name for mysql.MySQL" rather than "This is a new type
derived from mysql.MySQL"
12:16 < KBme> i don't think you can do that.
12:16 < thomaslee> was afraid you'd say that :)
12:17 < KBme> you can do type Connection struct {mysql mysql.MySQL; posgres
postgres...;} and then define (c *Connection) func() {c.mysql.foo(...);}
12:18 < thomaslee> yeah, it's just boilerplate I was hoping to avoid.  No
worries, maybe I'm going about this the wrong way.  Thanks!
12:18 < KBme> yea
12:19 < exch> You can call the mysal methods, if you downcast the connection
var to a mysql connection
12:20 < exch> *mysql
12:20 < KBme> ah, smart
12:20 < exch> type Conn mysql.Conn; var c Conn; ...
((*mysql.Conn)(c)).MySqlFunc()
12:20 < KBme> eww
12:20 < thomaslee> right, but doing that breaks the abstraction I'm trying
to introduce by introducing Connection in the first place :)
12:20 < KBme> :P
12:21 < thomaslee> too many introductions.  but you get the idea.
12:21 < exch> What you are proposing smells vaguely of an old fashioned OOP
hierarchy.  Go doesn't do those :)
12:21 < KBme> i think the real solution would be to provide an sql interface
that the database libraries would satisfy
12:22 < thomaslee> KBme, yep, real solution.  I'm looking for a quick and
dirty work-around while I work towards that.  :)
12:22 < exch> Probably easier to define Connection as an interfce that
exposes a set of methods.  Then implement the interface for each DB you target.
So you get a MysqlConnection, PostgresConnection, etc..  You can then treat them
all identically from the outside and not worry about what they can do internally
12:22 -!- piyushmishra [~piyushmis@117.200.226.254] has quit [Read error:
Connection reset by peer]
12:23 < exch> That's the idiomatic Go way anyways
12:23 < KBme> ideally the library itself satisfies the interface, no?
12:24 < KBme> (the mysql, postgres etc library itself)
12:24 < thomaslee> exch, no inheritance required, would've been happy with
just a type alias.  Introducing an interface would require me to do more *now*,
when I just want to get things done.  If that makes any sense at all.  :)
12:24 < exch> If you're lucky, yes.  But I dare you to find 2 DB
implementations which offer the exact same API :)
12:24 < KBme> yes :)
12:24 < KBme> use python or bash :P
12:24 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping
timeout: 272 seconds]
12:25 < KBme> (not a statically typed language)
12:25 < thomaslee> KBme, pfft, I came for the static type love :)
12:25 < thomaslee> exactly!  :)
12:26 < KBme> imho usually developing something in a statically typed
languages takes longer except if you have something that generates boilerplate for
you (ewww)
12:26 < exch> I don't think you can get around doing the actual work afaik.
Once it's done, your life will be a lot easier for the rest of the code/project
though
12:28 < thomaslee> KBme, hmm I dunno.  I could do more in an hour with Go
out of the box than I could in a few hours with Java ...  although that's
admittedly largely due to Go's built in HTTP server impl ;)
12:29 < thomaslee> exch, or making my first lame-ass attempt at hacking the
parser and offering it up to the gods.  I like having a reason to play with
parsers, but I have a feeling I'm probably too dumb for this one.  :)
12:29 < sacho> thomaslee: what's more interesting is how many hours you need
to spend maintaining the hour of code as compared to java
12:29 < KBme> both are statically typed, though
12:29 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts
12:30 < thomaslee> KBme, sorry I meant to imply that Go is closer to
Python/Ruby/et al than Java.
12:30 < thomaslee> sacho, how so?
12:30 < KBme> less code == less maintanance
12:31 < thomaslee> KBme, ah, I misunderstood.
12:32 -!- aconran-office_ [~aconran-o@adsl-76-199-140-78.dsl.pltn13.sbcglobal.net]
has joined #go-nuts
12:32 < sacho> thomaslee: I mean that writing code isn't usually most of the
work on an application, maintaining it is, and if go takes 4 hours to code
something, but ends up less maintenance, then it's better than language X which
takes 1 hour to code, but is horrid to maintain
12:32 -!- aconran-office [~aconran@adsl-76-199-140-78.dsl.pltn13.sbcglobal.net]
has quit [Read error: Operation timed out]
12:38 -!- ronnyy [~quassel@drsd-4db30e11.pool.mediaWays.net] has quit [Remote host
closed the connection]
12:38 -!- path[l] [~path@115.242.54.92] has joined #go-nuts
12:42 -!- ct529 [~quassel@77-44-78-159.xdsl.murphx.net] has joined #go-nuts
12:47 -!- tvw [~tv@e176005237.adsl.alicedsl.de] has joined #go-nuts
12:51 -!- photron [~photron@port-92-201-51-158.dynamic.qsc.de] has quit [Quit:
Leaving]
12:59 -!- photron [~photron@port-92-201-51-158.dynamic.qsc.de] has joined #go-nuts
13:00 -!- path[l] [~path@115.242.54.92] has left #go-nuts []
13:02 < thomaslee> sacho, totally agree
13:08 -!- Cyprien__ [~Cyprien@173-227.1-85.cust.bluewin.ch] has joined #go-nuts
13:11 -!- Cyprien_ [~Cyprien@241-13.3-85.cust.bluewin.ch] has quit [Ping timeout:
240 seconds]
13:14 -!- tvw [~tv@e176005237.adsl.alicedsl.de] has quit [Ping timeout: 245
seconds]
13:14 -!- piyushmishra [~piyushmis@117.200.229.46] has joined #go-nuts
13:18 -!- tvw [~tv@e176005237.adsl.alicedsl.de] has joined #go-nuts
13:20 -!- cw [~cw@parsec.stupidest.org] has quit [Ping timeout: 255 seconds]
13:21 -!- cw [~cw@parsec.stupidest.org] has joined #go-nuts
13:23 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping
timeout: 272 seconds]
13:27 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has joined
#go-nuts
13:29 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts
13:30 -!- noam [noam@77.124.224.108] has quit [Read error: Connection reset by
peer]
13:30 -!- noam [noam@77.124.224.108] has joined #go-nuts
13:36 -!- piyushmishra [~piyushmis@117.200.229.46] has quit [Ping timeout: 240
seconds]
13:41 -!- noam [noam@77.124.224.108] has quit [Read error: Connection reset by
peer]
13:41 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has quit
[Quit: skelterjohn]
13:42 -!- noam [noam@77.124.224.108] has joined #go-nuts
13:49 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
14:01 -!- sauerbraten [~sauerbrat@p508CB917.dip.t-dialin.net] has joined #go-nuts
14:03 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has joined
#go-nuts
14:04 -!- piyushmishra [~piyushmis@117.200.230.140] has joined #go-nuts
14:06 -!- MaksimBurnin [~max@44.188-224-87.telenet.ru] has quit [Read error: No
route to host]
14:08 -!- leanid-chaika [~leanid-ch@adsl-v.93.84.72.88.telecom.mogilev.by] has
joined #go-nuts
14:09 < leanid-chaika> how to compare two strings like strcmp?
14:13 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping
timeout: 250 seconds]
14:18 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts
14:20 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has quit
[Quit: skelterjohn]
14:23 -!- SRabbelier [~SRabbelie@188.142.63.148] has joined #go-nuts
14:26 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has joined
#go-nuts
14:28 < KBme> "foo" == "foo"
14:30 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has quit
[Client Quit]
14:41 < leanid-chaika> "foo" == "foo" compare ref not values char by char.
and it will be one ref to one string object.
14:45 -!- skejoe [~skejoe@188.114.142.162] has joined #go-nuts
14:46 < GilJ> Is the fmt.Scanf behaviour in http://pastie.org/1347159
normal?
14:46 < GilJ> The last whoami command is not what I typed btw.  The program
does that by himself
14:47 -!- kanru [~kanru@2001:c08:3700:ffff::1f:8de4] has quit [Read error:
Operation timed out]
14:59 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has joined
#go-nuts
15:00 -!- Fullma [~fullma@ram94-2-82-66-69-246.fbx.proxad.net] has quit [Read
error: Connection reset by peer]
15:03 -!- leanid-chaika [~leanid-ch@adsl-v.93.84.72.88.telecom.mogilev.by] has
quit [Ping timeout: 272 seconds]
15:06 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has joined #go-nuts
15:07 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has quit [Client Quit]
15:08 -!- devrim [~Adium@cpe-72-225-239-227.nyc.res.rr.com] has joined #go-nuts
15:09 -!- tvw [~tv@e176005237.adsl.alicedsl.de] has quit [Read error: Connection
reset by peer]
15:12 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has quit
[Quit: skelterjohn]
15:14 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
15:19 -!- powerje [~powerj@adsl-75-49-3-95.dsl.wotnoh.sbcglobal.net] has joined
#go-nuts
15:21 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.nj.comcast.net] has joined
#go-nuts
15:27 -!- ct529 [~quassel@77-44-78-159.xdsl.murphx.net] has quit [Read error:
Connection reset by peer]
15:36 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.3]
15:41 -!- meanburrito920 [~john@unaffiliated/meanburrito920] has joined #go-nuts
15:51 -!- shvntr [~shvntr@116.26.131.161] has quit [Ping timeout: 272 seconds]
16:15 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts
16:16 -!- cco3-hampster [~conleyo@nat/google/x-nbzxwcyldxsfwbrl] has quit [Ping
timeout: 240 seconds]
16:18 < nsf> TheSeeker: http://ompldr.org/vNmY5OQ/gocodewin.png
16:19 < nsf> it should work now as it is..  but in goclipse for some reason
it doesn't start itself automatically
16:19 < nsf> you still have to start daemon by hand
16:19 < nsf> in vim it works though
16:20 < nsf> probably because in vim it is invoked in shell
16:20 < nsf> and it has all env vars
16:21 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Quit: Leaving]
16:21 < nsf> anyways, without daemon it just freezes
16:21 < nsf> :\
16:21 -!- cco3-hampster [~conleyo@nat/google/x-zunsrirupyfroxda] has joined
#go-nuts
16:25 -!- crazy2be [~justin@S0106001ac401d400.cg.shawcable.net] has joined
#go-nuts
16:26 < nsf> also it would be nice to make a .bat file that compiles gocode
without make on windows
16:36 -!- Nitro [~Nitro@modemcable105.5-82-70.mc.videotron.ca] has joined #go-nuts
16:37 -!- tox2010 [~user@82.153.21.162] has joined #go-nuts
16:37 < tox2010> hi!
16:38 -!- cco3-hampster [~conleyo@nat/google/x-zunsrirupyfroxda] has quit [Ping
timeout: 260 seconds]
16:39 < tox2010> anyone here use the asn1 lib's at all?
16:39 -!- cco3-hampster [~conleyo@nat/google/x-ymhluevcauhbhubt] has joined
#go-nuts
16:40 -!- ExtraSpice [~XtraSpice@88.118.33.48] has joined #go-nuts
16:45 -!- powerje [~powerj@adsl-75-49-3-95.dsl.wotnoh.sbcglobal.net] has quit
[Quit: powerje]
16:52 -!- virtualsue [~chatzilla@93-97-62-8.zone5.bethere.co.uk] has joined
#go-nuts
16:53 -!- powerje [~powerj@adsl-75-49-3-95.dsl.wotnoh.sbcglobal.net] has joined
#go-nuts
17:08 -!- awidegreen [~quassel@c-eacae555.08-2-73746f39.cust.bredbandsbolaget.se]
has joined #go-nuts
17:20 -!- Oejet [~oejet@212.45.122.120] has quit [Quit: Leaving.]
17:20 -!- thebarberian [~maznio@bas2-streetsville39-2925218263.dsl.bell.ca] has
joined #go-nuts
17:20 -!- Oejet [~oejet@212.45.122.120] has joined #go-nuts
17:21 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
17:23 < thebarberian> has anyone tried all the mysql libs for go?
17:25 -!- artefon [~thiago@189.115.130.88] has joined #go-nuts
17:29 -!- artefon [~thiago@189.115.130.88] has quit [Read error: Connection reset
by peer]
17:29 -!- l00t- [~i-i3id3r_@187.127.145.54] has quit [Quit: Leaving]
17:45 -!- virtualsue [~chatzilla@93-97-62-8.zone5.bethere.co.uk] has quit [Ping
timeout: 255 seconds]
17:46 -!- Scorchin [~Scorchin@host109-152-120-17.range109-152.btcentralplus.com]
has joined #go-nuts
17:53 < foocraft> hey all, I just want to understand channels a bit better.
is the select statement Go's way of doing IO multiplexing?
17:54 < foocraft> and are channels equivalent to streams?
17:56 < exch> the select statement polls all channels in its case statements
at the same time and handles whatever case yields the first result
17:56 < tox2010> i see!
17:57 < exch> For channels bheing like streams, I'm not sure what you mean
by that.  You can put stuff into a channel on one end, and get it out on the other
end.  That's about as close as they get to a stream I suppose.
17:58 < foocraft> hmm this is interesting....
17:59 < exch> you can have bufferd and unbuffered channels.  This allows you
to do blocking or non-blocking reads/writes
18:01 < exch> You can do nonblocking IO on an unbuffered channel as well,
but there is no guarantee the read/write succeeds that way.  You have to check the
boolean value returned in that situation.  eg: if val, ok := <- mychan; ok {
yayWeGotAValue(val) } else { NopeGotNothing() }
18:02 < exch> A select statement will always block until a value is
available on any of the channels in its case list
18:02 < foocraft> so suppose I'm sending something over a channel, does the
receiving end get interrupted to some signal handler or does it read the channel
at its own leisure?
18:02 < foocraft> oh so that answers part of the question
18:03 < exch> If you send something into a channel, nobody will be notified
of that.  The only way to know, is to actually poll the channel for a value.
Either with a select statement, or manually
18:05 < foocraft> just as an aside; so Go actually implemented IO as part of
the syntax, using chans, if I understand our discussion correctly
18:05 < exch> in a sense, yes
18:06 < foocraft> and in that sense, IPC and IO are more or less two names
for the same thing, in Go land
18:22 -!- Nitro [~Nitro@modemcable105.5-82-70.mc.videotron.ca] has quit [Quit:
This computer has gone to sleep]
18:23 -!- watr_ [~watr@66.183.100.58] has joined #go-nuts
18:25 -!- Nitro [~Nitro@modemcable105.5-82-70.mc.videotron.ca] has joined #go-nuts
18:30 < cde> you could have a whole system, not made of processes in the
classic sense of the term, but of goroutines
18:30 < cde> this also removes the need for pagination
18:33 -!- d_m [d6@SDF.ORG] has quit [Read error: Connection reset by peer]
18:37 -!- Nitro [~Nitro@modemcable105.5-82-70.mc.videotron.ca] has quit [Quit:
This computer has gone to sleep]
18:39 -!- tox2010 [~user@82.153.21.162] has quit [Ping timeout: 240 seconds]
18:52 -!- Project_2501 [~Marvin@82.84.79.101] has joined #go-nuts
18:54 * foocraft ponders the possibility of writing a micro kernel in Go
18:55 < napsy> are there any recent language benchmarks that compare Go with
other languages?
18:55 < foocraft> yeah
18:55 < nsf> http://shootout.alioth.debian.org/
18:55 < napsy> how recent are they?
18:55 < foocraft> http://shootout.alioth.debian.org/
18:55 < nsf> napsy: click on Go, see the version at the end of the page
18:55 < nsf> last time I checked
18:56 < nsf> it was 2010-11-23
18:56 < foocraft> I don't know, but they make me feel a "bit" bad, but I'm
still going the Go way with the belief that the compilers will catch up
18:56 < napsy> oh ok
18:57 < Namegduf> The regexp one is because Go's regexp package is very
immature.
18:57 < Namegduf> It's a library failing.
18:57 < Namegduf> It's going to be improved.
19:00 < foocraft>
http://groups.google.com/group/golang-nuts/browse_thread/thread/20f3294da0a08e3a
19:03 -!- d_m [d6@192.94.73.15] has joined #go-nuts
19:06 < Namegduf> Interestingly, Go does MUCH better on x86_64.
19:07 < nsf> apparently google runs its services on x86_64
19:09 < foocraft> 190x is good?
19:09 < Namegduf> 190x?
19:09 < Namegduf> Where's that?
19:09 < nsf> regexps?
19:09 < foocraft> regex-dna?
19:09 < Namegduf> Ah, the quad core.
19:09 < nsf> hehe
19:09 < Namegduf> That one is irrelevant
19:09 < Namegduf> It's a library issue
19:09 < nsf> I'm more concerned about binary-tree
19:10 < Namegduf> Yeah.
19:10 < nsf> because it shows GC performance
19:10 < nsf> which isn't good as it can be
19:13 -!- watr_ [~watr@66.183.100.58] has quit [Ping timeout: 260 seconds]
19:14 -!- araujo [~araujo@gentoo/developer/araujo] has joined #go-nuts
19:17 -!- piyushmishra [~piyushmis@117.200.230.140] has quit [Ping timeout: 255
seconds]
19:20 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Read error:
Connection reset by peer]
19:27 -!- watr_ [~watr@66.183.100.58] has joined #go-nuts
19:28 -!- xb95 [~weechat@xb95.com] has quit [Ping timeout: 265 seconds]
19:28 -!- drd [~eric@compassing.net] has quit [Ping timeout: 255 seconds]
19:28 -!- Broady [~b@unaffiliated/broady] has quit [Ping timeout: 276 seconds]
19:29 -!- forgey [brook@seahawk.ript.net] has quit [Ping timeout: 265 seconds]
19:34 -!- xb95 [~weechat@xb95.com] has joined #go-nuts
19:34 -!- Broady [~b@unaffiliated/broady] has joined #go-nuts
19:35 -!- skejoe_ [~skejoe@188.114.142.162] has joined #go-nuts
19:35 -!- forgey [brook@seahawk.ript.net] has joined #go-nuts
19:39 -!- skejoe [~skejoe@188.114.142.162] has quit [Ping timeout: 264 seconds]
19:39 -!- TheMue [~TheMue@p5DDF6836.dip.t-dialin.net] has joined #go-nuts
19:41 -!- tox2010 [~user@cpc5-addl4-2-0-cust231.6-3.cable.virginmedia.com] has
joined #go-nuts
19:44 -!- skejoe_ [~skejoe@188.114.142.162] has quit [Quit: Lost terminal]
19:55 -!- rbraley [~rbraley@ip72-204-243-89.ph.ph.cox.net] has quit [Ping timeout:
265 seconds]
19:58 -!- Cyprien_ [~Cyprien@164-206.77-83.cust.bluewin.ch] has joined #go-nuts
19:58 -!- rbraley [~rbraley@ip72-204-243-89.ph.ph.cox.net] has joined #go-nuts
20:00 -!- Cyprien__ [~Cyprien@173-227.1-85.cust.bluewin.ch] has quit [Ping
timeout: 272 seconds]
20:02 < cde> foocraft: exactly my plan
20:02 -!- leanid-chaika [~leanid-ch@adsl-bbr.86.57.189.246.telecom.mogilev.by] has
joined #go-nuts
20:06 -!- leanid-chaika [~leanid-ch@adsl-bbr.86.57.189.246.telecom.mogilev.by] has
quit [Read error: Connection reset by peer]
20:13 -!- leanid-chaika [~leanid-ch@adsl-v.93.84.74.0.telecom.mogilev.by] has
joined #go-nuts
20:16 -!- Project_2501 [~Marvin@82.84.79.101] has quit [Quit: E se abbasso questa
leva che succ...]
20:18 -!- leanid-chaika [~leanid-ch@adsl-v.93.84.74.0.telecom.mogilev.by] has quit
[Ping timeout: 265 seconds]
20:25 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has quit [Quit:
DarthShrine]
20:26 -!- napsy [~luka@88.200.96.18] has quit [Ping timeout: 255 seconds]
20:27 -!- napsy [~luka@88.200.96.18] has joined #go-nuts
20:29 -!- virtualsue [~chatzilla@93-97-62-8.zone5.bethere.co.uk] has joined
#go-nuts
20:31 -!- watr_ [~watr@66.183.100.58] has quit [Ping timeout: 260 seconds]
20:32 -!- foocraft [~dsc@89.211.88.3] has quit [Quit: Leaving]
20:35 -!- DarthShrine [~angus@60-242-109-62.tpgi.com.au] has joined #go-nuts
20:35 -!- DarthShrine [~angus@60-242-109-62.tpgi.com.au] has quit [Changing host]
20:35 -!- DarthShrine [~angus@pdpc/supporter/student/DarthShrine] has joined
#go-nuts
20:37 -!- leanid-chaika [~leanid-ch@93.85.75.239] has joined #go-nuts
20:38 < leanid-chaika> How to get file path by file descriptor ?
20:39 < uriel> 19:06 < Namegduf> Interestingly, Go does MUCH better on
x86_64.
20:40 < uriel> Namegduf: that is not surprising given that the amd64
compiler is the one that has seen the most development
20:41 < uriel> regex-dna should really be removed from the benchmark, it is
simply comparing regexp implementations most of which are in C and not in the
language the benchmark is supposedly being benchmarked
20:42 < Namegduf> Testing the performance of the included libraries for
various tasks is interesting, but should probably not be confused with language
performance.  And regex on its own is kinda useless for that.
20:43 -!- tox2010 [~user@cpc5-addl4-2-0-cust231.6-3.cable.virginmedia.com] has
quit [Ping timeout: 265 seconds]
20:46 < uriel> Namegduf: yea, specially given that regexps are their own
special purpose language
20:47 < uriel> Namegduf: by all means, have a benchmark of regexp
implementations, but that is not really related to benchmarks of other languages
20:47 < uriel> that or require the regexp implementations to be in the given
language
20:47 < uriel> that said, I wonder how the sre2 library compares to the
current regepx lib in the regexp-dna benchmark
20:49 < kimelto> I think it needs half the time of the actual go
implementation.
20:49 < kimelto> dont know where I read this number, thought
20:51 -!- leanid-chaika [~leanid-ch@93.85.75.239] has quit [Read error: Connection
reset by peer]
20:51 -!- leanid-chaika [~leanid-ch@93.85.75.239] has joined #go-nuts
20:51 -!- tdc [~santegoed@host86-156-182-103.range86-156.btcentralplus.com] has
joined #go-nuts
20:55 -!- tensorpudding [~user@99.148.202.191] has joined #go-nuts
20:55 -!- tox2010 [~user@cpc5-addl4-2-0-cust231.6-3.cable.virginmedia.com] has
joined #go-nuts
20:57 * uriel wonders if/when will sre2 be merged into the standard Go
20:57 -!- virtualsue [~chatzilla@93-97-62-8.zone5.bethere.co.uk] has quit [Ping
timeout: 240 seconds]
21:00 < kimelto> do we have tools for profiling in go?
21:02 < uriel> kimelto: yes, see http://golang.org/cmd/prof/
21:04 -!- virtualsue [~chatzilla@nat/cisco/x-xoswxpihejixwchw] has joined #go-nuts
21:04 < Namegduf> uriel: I would like to see that happen.
21:08 < kimelto> uriel: thanks
21:21 -!- foocraft [~dsc@89.211.88.3] has joined #go-nuts
21:22 -!- ymasory_ [~ymasory@c-76-99-55-224.hsd1.pa.comcast.net] has joined
#go-nuts
21:23 -!- markcol [~markcol@74.125.59.1] has joined #go-nuts
21:31 -!- leanid-chaika [~leanid-ch@93.85.75.239] has quit [Ping timeout: 240
seconds]
21:31 -!- leanid-chaika [~leanid-ch@93.85.73.100] has joined #go-nuts
21:40 < leanid-chaika> need help: with func (*File) Seek I can set current
position read/write, how to save current position?
21:42 -!- l00t [~i-i3id3r_@20150056163.user.veloxzone.com.br] has joined #go-nuts
21:53 -!- leanid-chaika [~leanid-ch@93.85.73.100] has left #go-nuts []
21:59 -!- TheMue [~TheMue@p5DDF6836.dip.t-dialin.net] has quit [Quit: TheMue]
22:00 -!- res99 [~anonymous@201.237.130.70] has joined #go-nuts
22:01 -!- res99 [~anonymous@201.237.130.70] has quit [Client Quit]
22:06 -!- markcol_ [~markcol@74.125.59.1] has joined #go-nuts
22:10 -!- markcol [~markcol@74.125.59.1] has quit [Ping timeout: 265 seconds]
22:11 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:c5dc:7b71:991e:16d0] has joined
#go-nuts
22:18 -!- tdc [~santegoed@host86-156-182-103.range86-156.btcentralplus.com] has
quit [Quit: tdc]
22:25 -!- virtualsue [~chatzilla@nat/cisco/x-xoswxpihejixwchw] has quit [Ping
timeout: 240 seconds]
22:29 -!- tox2010 [~user@cpc5-addl4-2-0-cust231.6-3.cable.virginmedia.com] has
quit [Ping timeout: 245 seconds]
22:36 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
22:36 -!- rhencke [~rhencke@ppp-70-247-243-221.dsl.ltrkar.swbell.net] has joined
#go-nuts
22:37 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.nj.comcast.net] has joined
#go-nuts
22:37 -!- drd [~eric@compassing.net] has joined #go-nuts
22:38 -!- rhencke_ [~rhencke@ppp-70-247-243-221.dsl.ltrkar.swbell.net] has joined
#go-nuts
22:38 -!- rhencke [~rhencke@ppp-70-247-243-221.dsl.ltrkar.swbell.net] has quit
[Read error: Connection reset by peer]
22:42 -!- tox2010 [~user@cpc5-addl4-2-0-cust231.6-3.cable.virginmedia.com] has
joined #go-nuts
22:46 < skelterjohn> os.MkdirAll doesn't seem to be behaving as expected...I
call os.MkdirAll("d1/d2/d3") and it only makes d1, and gives me an error
22:46 < skelterjohn> am i being dumb?
22:47 < nsf> skelterjohn: use permissions 0755
22:48 < skelterjohn> oh i see - i'm not giving myself write permission
within it?  or something
22:48 < skelterjohn> thanks
22:48 < nsf> dir requires execution permission
22:48 < skelterjohn> same problem
22:48 < skelterjohn> i had been using 0644
22:48 < nsf> so you could create files in it
22:48 < nsf> or dirs
22:48 < skelterjohn> oh no wait a sec
22:48 < nsf> 0644 is rw
22:48 < nsf> you need x bit
22:48 < skelterjohn> ok that worked (i had left the old d1 in there)
22:48 < skelterjohn> thanks
22:49 < nsf> 0755 is usual for dirs
22:54 -!- XenoPhoenix [~Xeno@cpc5-aztw24-2-0-cust39.aztw.cable.virginmedia.com]
has quit [Ping timeout: 245 seconds]
22:55 -!- Rennex [rennex@giraf.fi] has quit [Ping timeout: 260 seconds]
23:02 -!- l00t [~i-i3id3r_@20150056163.user.veloxzone.com.br] has quit [Ping
timeout: 240 seconds]
23:02 -!- Rennex [rennex@giraf.fi] has joined #go-nuts
23:11 -!- awidegreen [~quassel@c-eacae555.08-2-73746f39.cust.bredbandsbolaget.se]
has quit [Remote host closed the connection]
23:13 -!- rhencke [~rhencke@ppp-70-247-243-221.dsl.ltrkar.swbell.net] has quit
[Quit: rhencke]
23:17 -!- l00t [~i-i3id3r_@187.127.151.233] has joined #go-nuts
23:19 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.nj.comcast.net] has quit
[Quit: skelterjohn]
23:23 -!- noam [noam@77.124.224.108] has quit [Read error: Connection reset by
peer]
23:23 -!- noam [noam@77.124.224.108] has joined #go-nuts
23:29 -!- foocraft [~dsc@89.211.88.3] has quit [Ping timeout: 276 seconds]
23:29 -!- ronnyy [~quassel@drsd-4db30e11.pool.mediaWays.net] has joined #go-nuts
23:30 -!- dragonball_ [~dragonbal@69-196-140-106.dsl.teksavvy.com] has joined
#go-nuts
23:30 -!- dragonball_ [~dragonbal@69-196-140-106.dsl.teksavvy.com] has quit
[Changing host]
23:30 -!- dragonball_ [~dragonbal@unaffiliated/dragonball] has joined #go-nuts
23:31 -!- dragonball_ [~dragonbal@unaffiliated/dragonball] has quit [Client Quit]
23:32 -!- foocraft [~dsc@78.101.99.236] has joined #go-nuts
23:33 -!- cco3 [~conley@c-69-181-138-209.hsd1.ca.comcast.net] has quit [Ping
timeout: 255 seconds]
23:37 -!- l00t [~i-i3id3r_@187.127.151.233] has quit [Ping timeout: 255 seconds]
23:39 -!- XenoPhoenix [~Xeno@cpc5-aztw24-2-0-cust39.aztw.cable.virginmedia.com]
has joined #go-nuts
23:41 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:c5dc:7b71:991e:16d0] has quit
[Quit: Leaving.]
23:50 < exch> https://lkml.org/lkml/2010/12/2/388 It seems we won't be
getting any Long Term Support kernels anymore for linux.
23:52 -!- skelterjohn [~jasmuth@c-76-98-219-171.hsd1.pa.comcast.net] has joined
#go-nuts
23:58 < nsf> not officially
23:58 < nsf> I'm sure people will make them
23:58 < nsf> if there is a need
--- Log closed Sun Dec 05 00:00:37 2010