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

--- Log opened Thu Jul 14 00:00:56 2011
00:03 -!- lucian [~lucian@78-86-217-168.zone2.bethere.co.uk] has quit [Remote host
closed the connection]
00:13 < skelterjohn> i didn't think you could access unexported fields with
reflect
00:15 -!- ijknacho [~goofy@71.123.134.24] has quit [Ping timeout: 250 seconds]
00:15 -!- skelterjohn [~jasmuth@140.Red-88-7-208.staticIP.rima-tde.net] has quit
[Quit: skelterjohn]
00:16 -!- ijknacho [~goofy@71.123.134.24] has joined #go-nuts
00:19 -!- cafesofie [~cafesofie@ool-18b97779.dyn.optonline.net] has joined
#go-nuts
00:23 -!- ccc1 [~Adium@140.109.98.187] has joined #go-nuts
00:25 -!- rael_wiki [~chatzilla@unaffiliated/rael-wiki/x-8420294] has quit [Quit:
ChatZilla 0.9.87 [Firefox 8.0a1/20110713030741]]
00:26 -!- gridaphobe [~gridaphob@cpe-74-68-151-24.nyc.res.rr.com] has quit [Quit:
Leaving]
00:30 -!- bugQ [~bug@c-71-195-207-34.hsd1.ut.comcast.net] has quit [Ping timeout:
250 seconds]
00:36 -!- miker2 [~miker2@pool-108-16-20-28.phlapa.fios.verizon.net] has joined
#go-nuts
00:36 -!- pjjw [klang@68.64.241.250] has quit [Ping timeout: 246 seconds]
00:38 -!- squeese [~squeese@cm-84.209.17.156.getinternet.no] has quit [Remote host
closed the connection]
00:42 -!- brad_ [~brad@cpe-098-026-120-155.nc.res.rr.com] has quit [Read error:
Operation timed out]
00:46 -!- iant1 [~iant@67.218.103.165] has quit [Quit: Leaving.]
00:47 -!- brad_ [~brad@cpe-098-026-120-155.nc.res.rr.com] has joined #go-nuts
00:51 -!- nteon_ [~nteon@c-98-210-195-105.hsd1.ca.comcast.net] has joined #go-nuts
00:55 -!- tvw [~tv@e176001222.adsl.alicedsl.de] has quit [Ping timeout: 255
seconds]
00:55 -!- tvw [~tv@e176002066.adsl.alicedsl.de] has joined #go-nuts
01:03 -!- chomp [~chomp@c-67-186-35-69.hsd1.pa.comcast.net] has quit [Quit:
Leaving]
01:03 -!- kergoth [~kergoth@ip24-251-173-232.ph.ph.cox.net] has joined #go-nuts
01:06 < kergoth> what's the rule of thumb on when to pass by value?  I'm
sure slices, etc are, since they're pointer types anyway, but beyond that..
01:10 < brandini> jessta_: I know this is greatly delayed, but I'm looking
for things like middleware, decorators on requests, validators, ORM, etc :)
01:10 -!- dfr|mac [~dfr|work@nat/google/x-aljfuluviyurhalz] has joined #go-nuts
01:11 < str1ngs> kergoth: there is no rule of the per se , but generally I
use structs as pointers, strings,slices as values
01:11 < brandini> in a web framework :)
01:11 -!- dRbiG [p@bofh.edu.pl] has joined #go-nuts
01:11 -!- d2biG [p@bofh.edu.pl] has quit [Ping timeout: 246 seconds]
01:12 -!- jimbaker` [~jbaker@c-71-237-98-166.hsd1.co.comcast.net] has joined
#go-nuts
01:12 < str1ngs> kergoth: fd's as pointers also.  if you look at the stdlib
you get a good idea of when and where
01:13 < kergoth> ah, good idea, will have to read some more of the packages
01:13 < str1ngs> http package might be a good one..  let me check for some
examples
01:13 < str1ngs> hmm wait that packages is large
01:14 -!- jimbaker [~jbaker@canonical/jimbaker] has quit [Ping timeout: 252
seconds]
01:16 < str1ngs> best to use godoc to look through probably
01:16 * kergoth nods, will do
01:16 < str1ngs> func NewRequest(method, url string, body io.Reader)
(*Request, os.Error
01:16 -!- Tv__ [~Tv__@cpe-76-168-227-45.socal.res.rr.com] has joined #go-nuts
01:17 < str1ngs> good example everthing is values the new Request is a
pointer
01:17 < kergoth> concepts were easy enough, just not 100% on the most
idiomatic ways of doing things yet
01:18 < str1ngs> func (c *Client) Do(req *Request) (resp *Response, err
os.Error)
01:18 < str1ngs> another example again the Request struct is a pointer
01:20 < str1ngs> obviously there are times you want to pass a string pointer
instead of a vaule.  say you want to mutate it in place
01:20 < str1ngs> ie Sscanf does this
01:29 < jessta_> kergoth: everything is "pass by value", but sometimes that
value is a pointer or contains a pointer
01:30 < brandini> jessta_!
01:36 -!- meling [~meling@12.238.254.29] has joined #go-nuts
01:39 < brandini> skeered him
01:46 -!- rcrowley [~rcrowley@c-71-202-44-233.hsd1.ca.comcast.net] has quit [Quit:
Computer has gone to sleep.]
01:52 -!- coldturnip [~COLDTURNI@111-250-3-218.dynamic.hinet.net] has quit [Read
error: Connection reset by peer]
01:54 -!- coldturnip [~COLDTURNI@111-250-3-218.dynamic.hinet.net] has joined
#go-nuts
01:56 -!- franciscosouza_ [~francisco@187.105.25.184] has joined #go-nuts
01:56 -!- franciscosouza [~francisco@187.105.25.184] has quit [Read error:
Connection reset by peer]
01:57 -!- sunfmin [~sunfmin@115.238.44.107] has joined #go-nuts
01:57 -!- kergoth [~kergoth@ip24-251-173-232.ph.ph.cox.net] has quit [Read error:
Connection reset by peer]
01:59 -!- tvw [~tv@e176002066.adsl.alicedsl.de] has quit [Remote host closed the
connection]
02:03 -!- smw [~stephen@pool-108-0-251-119.lsanca.fios.verizon.net] has joined
#go-nuts
02:03 -!- smw [~stephen@pool-108-0-251-119.lsanca.fios.verizon.net] has quit
[Changing host]
02:03 -!- smw [~stephen@unaffiliated/smw] has joined #go-nuts
02:06 -!- kergoth [~kergoth@ip24-251-173-232.ph.ph.cox.net] has joined #go-nuts
02:07 -!- muke [~doobies@75-59-237-124.lightspeed.sntcca.sbcglobal.net] has quit
[Ping timeout: 265 seconds]
02:08 -!- muke [~doobies@75-59-237-124.lightspeed.sntcca.sbcglobal.net] has joined
#go-nuts
02:20 -!- chadkouse [~Adium@rrcs-74-218-87-242.central.biz.rr.com] has joined
#go-nuts
02:26 -!- miker2 [~miker2@pool-108-16-20-28.phlapa.fios.verizon.net] has quit
[Quit: Computer has gone to sleep.]
02:29 < jessta_> brandini: 'middleware' is rather vaugue
02:32 -!- mikespook [~mikespook@183.47.234.5] has joined #go-nuts
02:33 -!- pjjw [klang@68.64.241.250] has joined #go-nuts
02:41 -!- moraes [~moraes@189.103.188.201] has quit [Ping timeout: 258 seconds]
02:43 -!- mjml [~joya@174.3.227.184] has joined #go-nuts
02:54 -!- keithcascio [~keithcasc@nat/google/x-bmghsnfscbivglkh] has quit [Quit:
Leaving]
03:01 -!- x3n0n [6172174d@gateway/web/freenode/ip.97.114.23.77] has joined
#go-nuts
03:01 < brandini> jessta_: when I think of middleware I think of checking
cookies, logging, templating etc
03:05 -!- dario_ [~dario@domina.zerties.org] has quit [Ping timeout: 276 seconds]
03:05 -!- magn3ts [~magn3ts@ip68-103-225-65.ks.ok.cox.net] has quit [Ping timeout:
264 seconds]
03:05 < x3n0n> do people know a better way to phrase this loop:
https://gist.github.com/1081869
03:07 < x3n0n> I'd prefer something like (c-style): "for a := initial(); a =
modify(a), a > 0; { doStuffBasedOn(a); }"
03:08 < Tekerson> wouldn't `for tail := len(s); tail =
strings.LastIndexAny(s[0:tail], "\"\\"); tail < 0 { s = s[0:tail] + "\\" +
s[tail:] } ` work?  or am I missing something?
03:09 < Tekerson> err..  wrong order
03:09 < x3n0n> isn't the 3rd "for" clause the "step" statement?
03:09 < Tekerson> pretty sure it's the same as C
03:09 < x3n0n> sorry--had typed that before you sent
03:10 < x3n0n> almost works...but I don't want an "s =" to happen until I do
the first "LastIndexAny"
03:11 < x3n0n> I could duplicate the "LastIndexAny":
03:12 -!- magn3ts [~magn3ts@ip68-103-225-65.ks.ok.cox.net] has joined #go-nuts
03:12 -!- dario [~dario@domina.zerties.org] has joined #go-nuts
03:12 < x3n0n> `for tail := LastIndexAny(s, escapes); tail >= 0; tail =
LastIndexAny(s[0:tail], escapes) { s = s[0:tail] + "\\" + s[tail:] }`
03:13 < x3n0n> just feels icky to repeat "LastIndexAny"
03:13 < x3n0n> since they're conceptually the same operation
03:13 < Tekerson> does `for tail := len(s); tail >= 0;; { s = s[0:tail] +
"\\" + s[tail:]; tail = strings.LastIndexAny(s[0:tail], "\"\\") }` work?  never
tried it, but seems reasonable :)
03:14 -!- jimbaker [~jbaker@c-71-237-98-166.hsd1.co.comcast.net] has quit
[Changing host]
03:14 -!- jimbaker [~jbaker@canonical/jimbaker] has joined #go-nuts
03:14 < Tekerson> (ie.  empty 3rd statement)
03:14 < x3n0n> all except for the "don't insert a backslash until you find
the first character worth escaping"
03:15 < x3n0n> rephrased: "insert a backslash before the last un-escaped
character worth escaping"...and your most recent will insert a "rogue" backslash
03:16 < x3n0n> I suppose I could just un-backslash...  :)
03:16 < Tekerson> meh, I'd just go with the original.  It's a pretty
standard loop and a half problem.
03:17 < Tekerson>
http://www.cs.duke.edu/~ola/patterns/plopd/loops.html#loop-and-a-half
03:18 < x3n0n> hadn't read that particular description before.  Ok--thanks
for the advice.
03:19 < x3n0n> off to bed
03:20 -!- x3n0n [6172174d@gateway/web/freenode/ip.97.114.23.77] has left #go-nuts
[]
03:49 -!- kizzo [~kizzo@c-24-130-55-180.hsd1.ca.comcast.net] has joined #go-nuts
03:49 -!- angasule [~angasule@190.2.33.49] has quit [Ping timeout: 260 seconds]
03:55 < kizzo> I get "_testmain.go:3: imported and not used:
/home/kizzo/work/gotest/_test/main" when trying to run "gotest"
03:58 < kizzo> The test file is here: http://pastebin.com/N990aatJ
03:58 < kizzo> I also get "_testmain.go:9: undefined: numbers"
04:02 -!- cafesofie [~cafesofie@ool-18b97779.dyn.optonline.net] has quit [Remote
host closed the connection]
04:04 < ijknacho> kizzo: where is Double defined?
04:04 -!- rejb [~rejb@unaffiliated/rejb] has quit [Disconnected by services]
04:04 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
04:05 < ijknacho> I don't see it in your pastebin
04:05 < kizzo> In a file called numbers/hello.go
04:05 < ijknacho> what's your makefile look like?
04:06 < kizzo> All that's in there is "package numbers", and "func Double(i
int) int { return i * 2 }
04:06 < kizzo> I'll post that..
04:06 < str1ngs> kizzo: is this a package or a command?
04:06 < kizzo> http://pastebin.com/wZSLU7us
04:07 < kizzo> str1ngs: It's the command - I am running "gotest" on the
command line.
04:07 < str1ngs> no the project it's self
04:08 < kizzo> All of this is contained in a directory called "gotest"
04:08 < str1ngs> seems to me , you want numbers_test.go in ./numbers
04:08 < str1ngs> then run gotest in numbers
04:08 < ijknacho> str1ngs: he's including Make.cmd.  i've only done gotest
with packages, so I don't know what's wrong.
04:09 < str1ngs> ijknacho: ya kinda explaining that
04:09 < str1ngs> you can us go_test with cmds but its not really supported
04:09 < str1ngs> err gotest
04:10 < kizzo> Hmm..
04:10 < str1ngs> move all numbers package related files to numbers
04:10 < kizzo> I moved numbers_test.go to ./numbers, and then cd to
./numbers and ran "gotest" there, and things look better.
04:10 < str1ngs> ok so...
04:10 < str1ngs> you can make a Makfile target
04:10 < str1ngs> test: \n
04:10 < kizzo> The output is "gotest: no test files found: no match for
"[^.]*_test.go""
04:11 < kizzo> Alrighty..
04:11 < str1ngs> I'll have to explain the makefile target better
04:11 < str1ngs> so numbers is fixed now?
04:12 < kizzo> Oh I'm sorry - that was not the correct output.  That was the
output of running "gotest" in the top-level directory.
04:12 < kizzo> Running it in the ./numbers directory gives: "gotest: please
create a Makefile for gotest; see http://golang.org/doc/code.htm for details"
04:12 < str1ngs> ok, so instead make a makefile target to handle do the
gotest
04:13 < str1ngs> let me make an example ...
04:13 -!- Dr_Who [~tgall_foo@linaro/tgall-foo] has quit [Quit: ZZZZZzzzzz]
04:13 < kizzo> "test: numbers_test.go\n\tgotest numbers_test.go" ?
04:13 < kizzo> [ something like that?..  ]
04:13 < kizzo> [ trying things...  ]
04:14 < str1ngs> https://gist.github.com/0aefd2e6bdf34c99343d
04:14 < str1ngs> then you can test with make test
04:15 < str1ngs> $ make test
04:15 < str1ngs> oops change ./xbps to ./numbers
04:16 < str1ngs> you could in theory use another Makefile in numbers.  but
this way you avoid a Makefile
04:17 < str1ngs> if you have a Makefile in ./numbers already let me know and
I'll adjust this
04:19 < kizzo> None of this seems to be mentioned at either
http://golang.org/doc/code.html or http://golang.org/cmd/gotest/
04:19 < kizzo> Hmm I'll work with all of this a bit..
04:20 < str1ngs> kizzo: do you have a Makefile in ./numbers already?
04:21 < kizzo> No I don't.
04:21 < str1ngs> ok so my first method probably be the best
04:22 < kizzo> None of this seems to be working - typing "gotest" from the
top directory gives "gotest: no test files found: no match for "[^.]*_test.go""
04:22 < str1ngs> yes use make test
04:22 < str1ngs> gotest does not work on command packages.  only packages
04:22 < kizzo> Running "make test" just gives "gotest: please create a
Makefile for gotest; see http://golang.org/doc/.."
04:23 < str1ngs> so make a Makefile for ./numbers
04:23 < str1ngs> http://golang.org/doc/code.html has a template
04:24 < str1ngs> if you have a Makefile then I can adjust the top level
Makefile to better suit it
04:27 < kizzo> Sorry - I can't figure out what should go in
numbers/Makefile.
04:27 < kizzo> [ getting pizza out the oven..  ]
04:28 < kizzo> It has GOFILES=hello.go\duh.go in it.
04:28 < str1ngs> kizzo: see http://golang.org/doc/code.html#tmp_33 Outside
the Go source tree (for personal packages), the standard form is
04:28 < kizzo> [ along with the top and bottom includes ]
04:29 < str1ngs> paste the Makefile please
04:30 < kizzo> numbers/Makefile: http://pastebin.com/ryFYDM4Z
04:30 < str1ngs> Make.cmd should be Make.pkg for package Makefile
04:31 < str1ngs> after that fix you can use make test in ./numbers and it
should just work
04:31 < str1ngs> in order to test it from top level we need to tweak the
test: target slighty
04:31 < str1ngs> ...  I'll revise it
04:31 -!- xcombelle [~xcombelle@AToulouse-551-1-146-93.w109-214.abo.wanadoo.fr]
has joined #go-nuts
04:32 < str1ngs> https://gist.github.com/0aefd2e6bdf34c99343d revised
version
04:35 < kizzo> Running "make test" in ./numbers gives me:
/home/kizzo/go/src/Make.pkg:24: *** first argument to `word' function must be
greater than 0.  Stop.
04:35 -!- anon232323 [~jordanp@c-98-218-69-170.hsd1.dc.comcast.net] has joined
#go-nuts
04:35 < kizzo> I will repost the project Makefile and numbers/Makefile just
to be sure..
04:35 -!- serialhex [~quassel@99-101-148-183.lightspeed.wepbfl.sbcglobal.net] has
quit [Ping timeout: 276 seconds]
04:35 < str1ngs> duh.go\ remove trailing \
04:36 -!- telexicon [~telexicon@unaffiliated/chowmeined] has quit [Ping timeout:
252 seconds]
04:36 -!- serialhex [~quassel@99-101-148-183.lightspeed.wepbfl.sbcglobal.net] has
joined #go-nuts
04:38 < kizzo> Both Makefiles: http://pastebin.com/wPf13tXc
04:39 < str1ngs> Gofiles is wrong for the cmd package
04:39 < str1ngs> and you have a trailing numbers/hello.go\
04:40 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts
04:40 -!- mode/#go-nuts [+v iant] by ChanServ
04:40 < str1ngs> in fact you probably dont even need the cmd package
04:40 < kizzo> I removed the trailing \ from the first Makefile.
04:40 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has joined #go-nuts
04:41 < str1ngs> yes but you have no files there for a cmd package so ..
why do you need the cmd package?
04:41 < str1ngs> just use number dir.  and its make file
04:42 < kizzo> I am not sure of what you're referring to when you say
"cmd/command package" - I am trying to create a package, yes (and not just compile
1 or 2 source files).
04:43 < str1ngs> cmd packages != package
04:43 -!- anon232323 [~jordanp@c-98-218-69-170.hsd1.dc.comcast.net] has quit
[Quit: anon232323]
04:43 < str1ngs> the then to use packages.  you cant use gotest with time
04:43 < str1ngs> so....  remove that aspect
04:44 < str1ngs> just interact with gotest/numbers directly
04:44 < str1ngs> and gotest probably bad name for top level dir but w/e
04:44 < kizzo> True.
04:44 < str1ngs> you can probably move numbers to be gotest . and leave it
at that.  but I dont know your hiearchy here
04:48 < kizzo> I think I will try again some other time - thanks for the
help.
04:49 < str1ngs> kizzo: just use the numbers directory.  forget about the
gotest directory
04:49 < str1ngs> kizzo: thats all you need to fix here.
04:49 < str1ngs> kizzo: if you have having a problem with the Makefile in
numbers just paste the error
04:50 < kizzo> "gotest" is the top-level directory, which contains "numbers"
and everything else.  So you probably mean rename "gotest" to something else -
I'll change it to "ramble"
04:50 -!- mikespook [~mikespook@183.47.234.5] has quit [Quit: Leaving.]
04:51 < str1ngs> kizzo: ignore that for now.  just interact with numbers
directory
04:51 < str1ngs> if you want to test it just cd into and either run gotest
or make test . they do the samething
04:52 < str1ngs> if you have errors paste them
04:53 < kizzo> Ok, running "make test" in "ramble/numbers" gives
"/home/kizzo/go/src/Make.pkg:24: *** first argument to `word' function must be
greater than 0.  Stop."
04:54 < kizzo> Changing the last "Make.pkg" to "Make.cmd" gives something
else..
04:54 < str1ngs> Make.cmd is for commands not used for packages
04:54 < str1ngs> Make.pkg is used fro packages.  they are no interchangeable
04:55 < str1ngs> 6g -V
04:55 < str1ngs> replace with your compiler of course
04:55 < kizzo> 8g version release.r58.1 8739
04:56 < kizzo> Ok, I'm trying to make a package so I left it as Make.pkg
04:56 < str1ngs> re paste just your numbers/Makefile please
04:57 < kizzo> http://pastebin.com/wuj0zG44
04:58 -!- Tv__ [~Tv__@cpe-76-168-227-45.socal.res.rr.com] has quit [Ping timeout:
240 seconds]
04:58 < str1ngs> change GOFILES to GOFILES=hello.go duh.go
04:58 < str1ngs> \ is overkill here
04:58 < str1ngs> still seems right but check anyways
04:59 < kizzo> Alrighty..
04:59 < str1ngs> after that paste *full* output of make test
05:00 -!- elimisteve [~elimistev@ec2-50-16-219-29.compute-1.amazonaws.com] has
joined #go-nuts
05:00 -!- elimisteve [~elimistev@ec2-50-16-219-29.compute-1.amazonaws.com] has
left #go-nuts []
05:00 < kizzo> http://pastebin.com/wrHNqCBr
05:00 < str1ngs> make --version
05:01 < kizzo> I updated the post with the Makefile contents as well.
05:01 < kizzo> GNU Make 3.81
05:02 < str1ngs> hmmm
05:04 < str1ngs> and $ gotest ?
05:04 -!- fabled [~fabled@83.145.235.194] has joined #go-nuts
05:05 < str1ngs> ahl...
05:05 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Ping
timeout: 255 seconds]
05:06 < kizzo> http://pastebin.com/8Ar9Q2zL, with updated output
05:06 < str1ngs> you need to add TARG=numbers before GOFILES
05:06 -!- iant [~iant@216.239.45.130] has joined #go-nuts
05:06 -!- mode/#go-nuts [+v iant] by ChanServ
05:06 < str1ngs> ie your package has no name :P
05:07 < kizzo> That's right - the test passed - PASS
05:08 < kizzo> Thanks.
05:11 -!- dreadlorde [~dreadlord@c-68-42-82-10.hsd1.mi.comcast.net] has joined
#go-nuts
05:15 -!- AlphaCluster [~quassel@thief-pool2-121-125.mncable.net] has joined
#go-nuts
05:17 -!- Alpha_Cluster [~quassel@thief-pool2-121-125.mncable.net] has quit [Ping
timeout: 240 seconds]
05:40 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has quit [Remote host closed
the connection]
05:48 -!- chadkouse [~Adium@rrcs-74-218-87-242.central.biz.rr.com] has quit [Quit:
Leaving.]
05:51 -!- dreadlorde [~dreadlord@c-68-42-82-10.hsd1.mi.comcast.net] has quit [Ping
timeout: 240 seconds]
05:58 -!- smallsweet [~antonio@218.241.169.34] has joined #go-nuts
05:59 -!- sagex_ [~sagex@c-98-192-25-168.hsd1.ga.comcast.net] has quit [Ping
timeout: 250 seconds]
06:02 -!- sagex_ [~sagex@c-98-192-25-168.hsd1.ga.comcast.net] has joined #go-nuts
06:11 -!- dfr|mac [~dfr|work@nat/google/x-aljfuluviyurhalz] has quit [Ping
timeout: 246 seconds]
06:12 -!- nicka1 [~lerp@142.176.0.21] has quit [Read error: Connection reset by
peer]
06:19 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-169-246.clienti.tiscali.it] has
joined #go-nuts
06:20 -!- noodles775 [~michael@g225071242.adsl.alicedsl.de] has joined #go-nuts
06:20 -!- noodles775 [~michael@g225071242.adsl.alicedsl.de] has quit [Changing
host]
06:20 -!- noodles775 [~michael@canonical/launchpad/noodles775] has joined #go-nuts
06:27 -!- firwen [~firwen@2a01:e34:eea3:7e10:4a5b:39ff:fe51:e8ae] has joined
#go-nuts
06:31 -!- Project-2501 [~Marvin@82.84.83.36] has joined #go-nuts
06:31 -!- ronnyy [~quassel@p4FF1C5C3.dip0.t-ipconnect.de] has joined #go-nuts
06:33 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-169-246.clienti.tiscali.it] has
quit [Ping timeout: 240 seconds]
06:40 -!- rcrowley [~rcrowley@c-71-202-44-233.hsd1.ca.comcast.net] has joined
#go-nuts
06:45 -!- Project-2501 [~Marvin@82.84.83.36] has quit [Ping timeout: 260 seconds]
06:45 -!- squeese [~squeese@244.14.213.193.static.cust.telenor.com] has joined
#go-nuts
06:52 -!- skelterjohn [~jasmuth@140.Red-88-7-208.staticIP.rima-tde.net] has joined
#go-nuts
06:54 -!- vmil86 [~vmil86@78.57.227.12] has joined #go-nuts
06:58 -!- napsy [~luka@193.2.66.6] has joined #go-nuts
06:58 -!- yogib [~yogib@131.234.59.64] has joined #go-nuts
07:01 -!- GeertJohan [~geertjoha@s51478c91.adsl.wanadoo.nl] has joined #go-nuts
07:01 -!- nteon_ [~nteon@c-98-210-195-105.hsd1.ca.comcast.net] has quit [Ping
timeout: 240 seconds]
07:03 -!- xcombelle [~xcombelle@AToulouse-551-1-146-93.w109-214.abo.wanadoo.fr]
has quit [Ping timeout: 260 seconds]
07:04 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
07:07 -!- photron_ [~photron@port-92-201-89-31.dynamic.qsc.de] has joined #go-nuts
07:12 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
07:17 -!- smw [~stephen@unaffiliated/smw] has quit [Ping timeout: 240 seconds]
07:28 -!- xcombelle [~xcombelle@AToulouse-551-1-146-93.w109-214.abo.wanadoo.fr]
has joined #go-nuts
07:29 -!- ronnyy [~quassel@p4FF1C5C3.dip0.t-ipconnect.de] has quit [Remote host
closed the connection]
07:41 -!- dshep [~user@c-76-103-91-143.hsd1.ca.comcast.net] has quit [Ping
timeout: 240 seconds]
07:42 -!- moraes [~moraes@189.103.188.201] has joined #go-nuts
07:49 -!- erus` [~chatzilla@mailgate.ips-international.com] has joined #go-nuts
07:50 -!- firwen [~firwen@2a01:e34:eea3:7e10:4a5b:39ff:fe51:e8ae] has quit [Remote
host closed the connection]
07:52 -!- squeese [~squeese@244.14.213.193.static.cust.telenor.com] has quit
[Remote host closed the connection]
07:53 < jessta_> brandini: the standard library has templates, logging, and
a http server that handles cookies
07:54 < jessta_> an ORM really has nothing to do with the 'web'
07:55 < jessta_> https://launchpad.net/goforms/ provides form validation
07:58 < Namegduf> jessta_: I think someone needs to release a "web
framework" that just has an example file using the http package and links to all
the various bits of documentation
07:59 < jessta_> A good point
07:59 -!- skelterjohn [~jasmuth@140.Red-88-7-208.staticIP.rima-tde.net] has quit
[Quit: skelterjohn]
08:00 < aiju> haha
08:00 < aiju> someone asked for an ORM for Go?
08:00 < aiju> hahahaha
08:00 < aiju> when will someone ask for .NET bindings?
08:10 -!- pyrhho [~pyrhho@host-92-27-75-48.static.as13285.net] has joined #go-nuts
08:37 -!- muke [~doobies@75-59-237-124.lightspeed.sntcca.sbcglobal.net] has quit
[Read error: Connection reset by peer]
08:37 -!- muke [~doobies@75-59-237-124.lightspeed.sntcca.sbcglobal.net] has joined
#go-nuts
08:56 -!- squeese [~squeese@cm-84.209.17.156.getinternet.no] has joined #go-nuts
08:57 -!- umaefx [~user@111-20-132-95.pool.ukrtel.net] has joined #go-nuts
09:09 -!- Fish [~Fish@tru67-1-82-229-53-64.fbx.proxad.net] has joined #go-nuts
09:13 -!- Nisstyre [~nisstyre@infocalypse-net.info] has quit [Ping timeout: 255
seconds]
09:17 < vikstrom> well there is erGo, but thats not .NET, of course
09:19 < aiju> ergo is dead
09:19 < aiju> http://newquistsolutions.com
09:19 < vikstrom> i thought it lacked progress
09:21 < uriel> aiju: I'm not sure it is dead, but might be pinning for the
fjors
09:21 < uriel> ds
09:21 < uriel> somebody should try to contact the guys that were working on
it to see what is up
09:34 -!- zippoxer [~zippoxer@109.65.217.190] has left #go-nuts []
09:37 -!- kfmfe04 [~kfeng@114-32-57-164.HINET-IP.hinet.net] has joined #go-nuts
09:41 < erus`> it was a company wasnt it
09:41 < erus`> probably went under
09:44 -!- virtualsue [~chatzilla@nat/cisco/x-yffxbhrubswgvnkf] has joined #go-nuts
10:02 -!- kfmfe04 [~kfeng@114-32-57-164.HINET-IP.hinet.net] has quit [Quit:
WeeChat 0.3.0]
10:03 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 252
seconds]
10:07 -!- serbaut [~joakims@tc-officefw.trioptima.com] has quit [Read error:
Connection reset by peer]
10:08 -!- rejb [~rejb@unaffiliated/rejb] has quit [Quit: .]
10:15 -!- lucian [~lucian@78-86-217-168.zone2.bethere.co.uk] has joined #go-nuts
10:23 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts
10:24 -!- odoacre [~antonio@218.241.169.34] has quit [Quit: Leaving]
10:24 < squeese> omg, brainfreeze...  what do you call +, -, *, / in math?
lol
10:24 < squeese> argument, modifier
10:24 < squeese> I'm blushing :P
10:26 < aiju> operators?
10:27 < vikstrom> binary-operators?
10:27 < aiju> they could be unary!
10:27 < aiju> :P
10:27 < vikstrom> not * and / :-P
10:27 < aiju> unary / is an interesting idea
10:28 < vikstrom> well * is unary for dereferencing the value of a pointer
10:28 < vikstrom> but, yeah, / would be novel
10:35 -!- ccc1 [~Adium@140.109.98.187] has quit [Quit: Leaving.]
10:36 < squeese> yah, operator..  lols :)
10:36 < squeese> thx :)
10:36 < squeese> Well, according to #math: the full proper name is
Artihmetic Operations
10:36 < erus`> squeese: infix operators
10:36 < squeese> infix?
10:37 < aiju> infix: 1+2
10:37 < erus`> yeah its a function that is placed between its arguements
10:37 < aiju> prefix: + 1 2
10:37 -!- angasule [~angasule@190.2.33.49] has joined #go-nuts
10:37 < aiju> postfix: 1 2 +
10:37 < squeese> aha, does the pre/post/infix operator name stem from
programming or math?
10:38 < erus`> math
10:38 < squeese> G.I.  Joe, the more you know :)
10:38 < erus`> go should let you define infix functions
10:38 < erus`> :D
10:39 < aiju> Operator Overloading is evil.
10:39 < erus`> a `myfunction` b
10:39 -!- nekoh [~nekoh@dslb-088-069-156-164.pools.arcor-ip.net] has joined
#go-nuts
10:39 -!- ronnyy [~quassel@p4FF1C5C3.dip0.t-ipconnect.de] has joined #go-nuts
10:49 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-161-104.clienti.tiscali.it] has
joined #go-nuts
10:50 -!- gnuvince|work [8e544424@gateway/web/freenode/ip.142.84.68.36] has joined
#go-nuts
10:54 -!- sunfmin [~sunfmin@115.238.44.107] has quit [Quit: sunfmin]
10:57 -!- Adys [~Adys@unaffiliated/adys] has joined #go-nuts
11:10 -!- tvw [~tv@212.79.9.150] has joined #go-nuts
11:17 -!- franciscosouza [~francisco@187.105.25.184] has quit [Read error:
Connection reset by peer]
11:18 -!- franciscosouza [~francisco@187.105.25.184] has joined #go-nuts
11:21 -!- Kahvi [~Kahvi@a91-152-179-229.elisa-laajakaista.fi] has joined #go-nuts
11:23 < jessta_> erus`: how does precedence work with user defined infix
fuctions?
11:25 -!- ronnyy [~quassel@p4FF1C5C3.dip0.t-ipconnect.de] has quit [Read error:
Connection reset by peer]
11:32 -!- pyrhho [~pyrhho@host-92-27-75-48.static.as13285.net] has quit [Ping
timeout: 255 seconds]
11:35 -!- tncardoso [~thiago@187.58.6.58] has joined #go-nuts
11:37 -!- schilly [~schilly@boxen.math.washington.edu] has joined #go-nuts
11:38 -!- umaefx` [~user@203-16-132-95.pool.ukrtel.net] has joined #go-nuts
11:38 -!- pyrhho [~pyrhho@host-92-27-75-48.static.as13285.net] has joined #go-nuts
11:39 -!- umaefx [~user@111-20-132-95.pool.ukrtel.net] has quit [Ping timeout: 240
seconds]
11:46 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts
11:49 -!- ccc1 [~Adium@220-136-28-86.dynamic.hinet.net] has joined #go-nuts
11:49 -!- GeertJohan [~geertjoha@s51478c91.adsl.wanadoo.nl] has quit [Remote host
closed the connection]
11:51 -!- miker2 [~miker2@64.55.31.190] has joined #go-nuts
11:53 -!- GeertJohan [~geertjoha@s51478c91.adsl.wanadoo.nl] has joined #go-nuts
11:55 -!- meling [~meling@12.238.254.29] has quit [Remote host closed the
connection]
11:55 -!- Fish [~Fish@tru67-1-82-229-53-64.fbx.proxad.net] has quit [Ping timeout:
252 seconds]
12:09 -!- gnuvince|work [8e544424@gateway/web/freenode/ip.142.84.68.36] has quit
[Quit: Page closed]
12:10 -!- chanwit [~chanwit@223.206.126.67] has joined #go-nuts
12:12 -!- umaefx` [~user@203-16-132-95.pool.ukrtel.net] has quit [Ping timeout:
252 seconds]
12:15 -!- alehorst [~alehorst@189.114.181.147.dynamic.adsl.gvt.net.br] has quit
[Ping timeout: 255 seconds]
12:16 -!- alehorst [~alehorst@189.114.181.147.dynamic.adsl.gvt.net.br] has joined
#go-nuts
12:17 -!- sacho [~sacho@87.126.39.0] has quit [Ping timeout: 255 seconds]
12:25 -!- tncardoso [~thiago@187.58.6.58] has quit [Quit: bye]
12:25 -!- franciscosouza [~francisco@187.105.25.184] has quit [Quit:
franciscosouza]
12:42 -!- cso [~chatzilla@92.25.196.160] has joined #go-nuts
12:42 -!- napsy [~luka@193.2.66.6] has quit [Quit: Lost terminal]
12:45 -!- angasule [~angasule@190.2.33.49] has quit [Remote host closed the
connection]
12:48 -!- nicka1 [~lerp@142.176.0.21] has joined #go-nuts
12:53 -!- franciscosouza [~francisco@201.7.186.67] has joined #go-nuts
12:56 -!- niemeyer [~niemeyer@12.236.237.2] has joined #go-nuts
12:59 -!- Dr_Who [~tgall_foo@linaro/tgall-foo] has joined #go-nuts
12:59 -!- jbooth1 [~jay@209.249.216.2] has joined #go-nuts
13:00 -!- umaefx` [~user@203-16-132-95.pool.ukrtel.net] has joined #go-nuts
13:01 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has joined #go-nuts
13:03 < erus`> we should set precedence ourselves
13:03 -!- meling [~meling@129.33.192.119] has joined #go-nuts
13:12 -!- magn3ts [~magn3ts@ip68-103-225-65.ks.ok.cox.net] has quit [Ping timeout:
276 seconds]
13:12 -!- magn3ts [~magn3ts@ip68-103-225-65.ks.ok.cox.net] has joined #go-nuts
13:17 < aiju> erus`: it makes writing a compiler MUCH harder
13:18 < erus`> aiju: evaluate all the function definitions first
13:18 < erus`> then evaluate the bodys (where the expressions are)
13:21 -!- magn3ts [~magn3ts@ip68-103-225-65.ks.ok.cox.net] has quit [Ping timeout:
252 seconds]
13:23 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has quit [Ping
timeout: 260 seconds]
13:24 -!- adlan [~adlan@115.134.206.161] has joined #go-nuts
13:24 < aiju> erus`: currently the go grammar is static
13:25 < erus`> yer i dont expect go to support anything like that :P
13:25 < erus`> im not sure infix operators are a great idea anyway
13:25 -!- dreadlorde [~dreadlord@c-68-42-82-10.hsd1.mi.comcast.net] has joined
#go-nuts
13:25 < erus`> except for numbers
13:26 -!- sniper506th [~sniper506@rrcs-70-61-192-18.midsouth.biz.rr.com] has
joined #go-nuts
13:28 -!- magn3ts [~magn3ts@ip68-103-225-65.ks.ok.cox.net] has joined #go-nuts
13:28 < aiju> hard core lispers don't use infix
13:29 < aiju> infix is an evil blub feature
13:30 -!- gridaphobe [~gridaphob@cpe-74-68-151-24.nyc.res.rr.com] has joined
#go-nuts
13:35 -!- tncardoso [~thiagon@150.164.2.20] has joined #go-nuts
13:42 -!- coldturnip [~COLDTURNI@111-250-3-218.dynamic.hinet.net] has quit [Read
error: Connection reset by peer]
13:43 -!- umaefx` [~user@203-16-132-95.pool.ukrtel.net] has quit [Remote host
closed the connection]
13:44 -!- Cobi [~Cobi@2002:1828:88fb:0:aede:48ff:febe:ef03] has joined #go-nuts
13:50 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has joined
#go-nuts
13:53 -!- serbaut [~joakims@tc-officefw.trioptima.com] has joined #go-nuts
13:55 -!- kergoth_ [~kergoth@ip24-251-173-232.ph.ph.cox.net] has joined #go-nuts
13:57 -!- fabled [~fabled@83.145.235.194] has quit [Read error: Operation timed
out]
14:04 -!- meling [~meling@129.33.192.119] has quit [Remote host closed the
connection]
14:14 < zozoR> where can i get the version of the latest weekly?
14:17 -!- exch [~blbl@87.209.181.34] has quit [Ping timeout: 264 seconds]
14:18 < nicka1> http://golang.org/doc/install.html#fetch
14:18 < nicka1> replace release with weekly
14:18 -!- yogib [~yogib@131.234.59.64] has quit [Read error: Connection reset by
peer]
14:19 -!- yogib [~yogib@131.234.59.64] has joined #go-nuts
14:21 -!- freetz [~fritz@r74-195-238-212.stl1cmta01.stwrok.ok.dh.suddenlink.net]
has joined #go-nuts
14:21 < freetz> The TryRecv() in pkg/reflect seems odd to me
14:22 < freetz> the documentation says it returns ok=false if the channel is
closed
14:22 < freetz> but it seems to return ok=false if the receive fails for any
reason, including just because there is no data to receive at the moment
14:22 < aiju> why do you use it?
14:23 < aiju> x, ok := <- ch?
14:23 < freetz> i want a non-blocking receive
14:23 -!- ronnyy [~quassel@p4FF1C5C3.dip0.t-ipconnect.de] has joined #go-nuts
14:23 < aiju> use select
14:23 < freetz> i need reflection as i don't know the type
14:23 < zozoR> i asked wrong xD where can i get the version number of the
current weekly, without downloading it :P
14:24 -!- exch [~blbl@ip34-181-209-87.adsl2.static.versatel.nl] has joined
#go-nuts
14:25 -!- Kahvi [~Kahvi@a91-152-179-229.elisa-laajakaista.fi] has quit [Quit:
Lähdössä]
14:25 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has joined #go-nuts
14:28 -!- pjacobs [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has
joined #go-nuts
14:29 -!- lurcio [~margent@compy386.queens.ox.ac.uk] has joined #go-nuts
14:36 -!- dreadlorde [~dreadlord@c-68-42-82-10.hsd1.mi.comcast.net] has quit [Ping
timeout: 252 seconds]
14:39 -!- lurcio [~margent@compy386.queens.ox.ac.uk] has left #go-nuts []
14:40 -!- xcombelle [~xcombelle@AToulouse-551-1-146-93.w109-214.abo.wanadoo.fr]
has quit [Ping timeout: 246 seconds]
14:41 -!- skelterjohn [~jasmuth@140.Red-88-7-208.staticIP.rima-tde.net] has joined
#go-nuts
14:44 -!- cso [~chatzilla@92.25.196.160] has quit [Quit: ChatZilla 0.9.87 [Firefox
5.0/20110615151330]]
14:49 -!- yogib [~yogib@131.234.59.64] has quit [Read error: Connection reset by
peer]
14:49 -!- chanwit [~chanwit@223.206.126.67] has quit [Quit: Leaving.]
14:49 -!- yogib [~yogib@131.234.59.64] has joined #go-nuts
14:54 -!- adlan [~adlan@115.134.206.161] has quit [Quit: Leaving]
14:56 -!- GeertJohan [~geertjoha@s51478c91.adsl.wanadoo.nl] has quit [Quit:
Leaving.]
14:58 -!- kizzo [~kizzo@c-24-130-55-180.hsd1.ca.comcast.net] has left #go-nuts []
14:58 -!- dreadlorde [dreadlorde@c-68-42-82-10.hsd1.mi.comcast.net] has joined
#go-nuts
15:02 -!- qeed [~qeed@adsl-98-85-60-209.mco.bellsouth.net] has joined #go-nuts
15:04 -!- cafesofie [~cafesofie@pool-173-77-24-106.nycmny.east.verizon.net] has
joined #go-nuts
15:08 -!- dreadlorde [dreadlorde@c-68-42-82-10.hsd1.mi.comcast.net] has quit [Ping
timeout: 258 seconds]
15:09 -!- dfr|mac [~dfr|work@ool-182e3fca.dyn.optonline.net] has quit [Remote host
closed the connection]
15:10 -!- meling [~meling@129.33.192.119] has joined #go-nuts
15:10 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
15:14 -!- chadkouse [~Adium@rrcs-74-218-87-242.central.biz.rr.com] has joined
#go-nuts
15:16 -!- freetz [~fritz@r74-195-238-212.stl1cmta01.stwrok.ok.dh.suddenlink.net]
has quit [Quit: Leaving]
15:23 -!- trn [~trn@adsl-065-007-181-160.sip.bct.bellsouth.net] has quit [Ping
timeout: 252 seconds]
15:24 -!- nteon_ [~nteon@c-98-210-195-105.hsd1.ca.comcast.net] has joined #go-nuts
15:25 -!- meling [~meling@129.33.192.119] has quit [Remote host closed the
connection]
15:25 -!- ww [~ww@river.styx.org] has joined #go-nuts
15:30 < kevlar_work> zozoR, look at the .hgtags file on googlecode
15:30 < kevlar_work> http://code.google.com/p/go/source/browse/.hgtags
15:31 -!- yogib [~yogib@131.234.59.64] has quit [Read error: Operation timed out]
15:32 < zozoR> thanks
15:32 -!- meling [~meling@129.33.192.119] has joined #go-nuts
15:35 -!- skelterjohn [~jasmuth@140.Red-88-7-208.staticIP.rima-tde.net] has quit
[Quit: skelterjohn]
15:41 -!- ccc1 [~Adium@220-136-28-86.dynamic.hinet.net] has quit [Quit: Leaving.]
15:41 -!- tavis_rain [~tavisb@24-104-129.146.hfc.mediarain.com] has joined
#go-nuts
15:47 -!- aat [~aat@rrcs-184-75-54-130.nyc.biz.rr.com] has joined #go-nuts
15:47 -!- noodles775 [~michael@canonical/launchpad/noodles775] has quit [Quit:
leaving]
15:47 -!- meling [~meling@129.33.192.119] has quit [Remote host closed the
connection]
15:50 -!- erus` [~chatzilla@mailgate.ips-international.com] has quit [Quit:
ChatZilla 0.9.87 [Firefox 5.0/20110615151330]]
15:51 -!- farnoy [~farnoy@ocs202.internetdsl.tpnet.pl] has joined #go-nuts
15:52 < farnoy> is there something correspondent to operator+ functions in
C++?
15:52 < aiju> no
15:52 < aiju> there is no operator overloading
15:54 -!- pjacobs [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has quit
[Ping timeout: 264 seconds]
15:57 -!- ronnyy [~quassel@p4FF1C5C3.dip0.t-ipconnect.de] has quit [Remote host
closed the connection]
15:59 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
16:02 < qeed> what is the standard way of doing a dowhile in golang?
16:03 < niemeyer> iant: ping
16:04 < aiju> qeed: i don't think there is a "standard way"
16:06 < qeed> ok i guess i'll use for { ...  if cond}
16:06 -!- mjml [~joya@174.3.227.184] has quit [Quit: Leaving]
16:06 -!- pjacobs [~pjacobs@66.54.185.130] has joined #go-nuts
16:09 -!- JimPeak [~lejimpeak@modemcable213.208-160-184.mc.videotron.ca] has
joined #go-nuts
16:12 < JimPeak> Any reason why in the archive/tar documentation of Writer,
the example uses io.Copy(tw, data) instead of tw.Write(data)?
16:12 -!- Nisstyre [~nisstyre@infocalypse-net.info] has joined #go-nuts
16:14 < kevlar_work> Write takes a []byte, Copy takes a Reader
16:14 -!- meling [~meling@129.33.192.119] has joined #go-nuts
16:15 -!- farnoy [~farnoy@ocs202.internetdsl.tpnet.pl] has quit [Quit: Leaving]
16:17 < JimPeak> I get it, but lets say data2 is []byte.  Is tw.Write(data2)
equivalent to io.Copy(tw, data) if data2 is read from data?
16:19 < niemeyer> JimPeak: Pretty much..  you can easily read io.Copy to
understand what it does
16:22 < JimPeak> Ok, thx.  I just dont get that the example isn't using
(*Writer) Write instead since it's documenting Writer.
16:25 -!- Project-2501 [~Marvin@82.84.95.200] has joined #go-nuts
16:26 -!- erus` [~chatzilla@host86-174-221-82.range86-174.btcentralplus.com] has
joined #go-nuts
16:28 -!- JimPeak [~lejimpeak@modemcable213.208-160-184.mc.videotron.ca] has left
#go-nuts []
16:28 -!- meling [~meling@129.33.192.119] has quit [Remote host closed the
connection]
16:28 -!- JimPeak [~lejimpeak@modemcable213.208-160-184.mc.videotron.ca] has
joined #go-nuts
16:28 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-161-104.clienti.tiscali.it] has
quit [Ping timeout: 264 seconds]
16:29 -!- trn [~trn@adsl-065-007-181-160.sip.bct.bellsouth.net] has joined
#go-nuts
16:29 -!- Fish [~Fish@9fans.fr] has joined #go-nuts
16:29 -!- molto_alfredo1 [~molto_alf@142.176.0.21] has joined #go-nuts
16:31 -!- molto_alfredo [~molto_alf@142.176.0.21] has quit [Ping timeout: 240
seconds]
16:33 -!- moraes [~moraes@189.103.188.201] has quit [Quit: Leaving]
16:34 -!- foocraft [~ewanas@78.101.63.193] has joined #go-nuts
16:35 -!- dsal [~Adium@208.185.212.98] has joined #go-nuts
16:38 -!- molto_alfredo1 [~molto_alf@142.176.0.21] has quit [Quit: Leaving.]
16:38 -!- molto_alfredo [~molto_alf@142.176.0.21] has joined #go-nuts
16:40 -!- dsal [~Adium@208.185.212.98] has quit [Ping timeout: 276 seconds]
16:41 < zozoR> people use dowhile?  o.o
16:41 -!- nekoh [~nekoh@dslb-088-069-156-164.pools.arcor-ip.net] has quit [Ping
timeout: 260 seconds]
16:42 -!- dsal [~Adium@208.185.212.98] has joined #go-nuts
16:43 -!- trn [~trn@adsl-065-007-181-160.sip.bct.bellsouth.net] has quit [Max
SendQ exceeded]
16:44 -!- xcombelle [~xcombelle@AToulouse-551-1-146-93.w109-214.abo.wanadoo.fr]
has joined #go-nuts
16:45 <+iant> niemeyer: pong
16:45 < niemeyer> iant: Hey Ian
16:45 < jessta_> zozoR: dowhiles can be nice for processing user input
16:45 < niemeyer> iant: Was just wondering what's the status of libgo for
ARM and PowerPC
16:46 < niemeyer> iant: Someone demonstrated interest in approaching it,
perhaps, so just wanted to get a feeling of what it looks like ATM
16:46 <+iant> it doesn't work today for either but it just needs a little
filling in
16:47 <+iant> it should be easy to get it to build, but then I'm not sure
what else will need to be done
16:47 <+iant> experience with other targets suggests that it should work
fine, at least on GNU/Linux
16:47 -!- hopelessnewbie [~antonio@123.120.139.57] has joined #go-nuts
16:48 < niemeyer> iant: Sweet
16:48 < niemeyer> iant: Thanks a lot
16:48 -!- hopelessnewbie [~antonio@123.120.139.57] has left #go-nuts []
16:49 < niemeyer> iant: I'll hope Matthias actually buys into the task then
:)
16:49 < niemeyer> iant: I think you talked to him at the gcc conf, btw
16:49 <+iant> Matthias Klose == doko?  yes, I spoke with him
16:49 -!- nekoh [~nekoh@dslb-088-068-016-195.pools.arcor-ip.net] has joined
#go-nuts
16:49 < niemeyer> iant: Yeah
16:50 < niemeyer> iant: He was pondering about that
16:54 < niemeyer> iant: s/was/is/
16:54 -!- Kami__ [~kami@kamislo-1-pt.tunnel.tserv23.zrh1.ipv6.he.net] has joined
#go-nuts
16:55 < niemeyer> iant: Is libgo following the stable releases?
16:55 -!- Kami__ [~kami@kamislo-1-pt.tunnel.tserv23.zrh1.ipv6.he.net] has quit
[Changing host]
16:55 -!- Kami__ [~kami@unaffiliated/kami-/x-9078513] has joined #go-nuts
16:56 <+iant> sort of, but it's really driven by when I have time to update
it
16:56 <+iant> it's behind right now
16:57 < qeed> is there any plans to add opengl/some sound lib to golang core
packages?
16:57 < exch> I doubt stuff like that really has a place in the standard
libs
16:59 < qeed> i just wondered because i see theres like x11 and wingui or
something
17:00 < niemeyer> iant: Understood
17:00 -!- skelterjohn [~jasmuth@140.Red-88-7-208.staticIP.rima-tde.net] has joined
#go-nuts
17:00 < exch> true.  Not sure those even belong there
17:02 -!- clr_ [~colin@c-67-183-138-2.hsd1.wa.comcast.net] has joined #go-nuts
17:11 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
17:13 -!- sacho [~sacho@87.126.39.0] has joined #go-nuts
17:17 -!- pyrhho [~pyrhho@host-92-27-75-48.static.as13285.net] has quit [Quit:
pyrhho]
17:19 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts
17:19 -!- pjacobs [~pjacobs@66.54.185.130] has quit [Ping timeout: 276 seconds]
17:22 -!- chomp [~chomp@dap-209-166-184-50.pri.tnt-3.pgh.pa.stargate.net] has
joined #go-nuts
17:26 -!- rmib [~quassel@77.242.99.199] has joined #go-nuts
17:32 -!- pyrhho [~pyrhho@host-92-27-75-48.static.as13285.net] has joined #go-nuts
17:32 -!- pyrhho [~pyrhho@host-92-27-75-48.static.as13285.net] has quit [Client
Quit]
17:34 -!- xcombelle [~xcombelle@AToulouse-551-1-146-93.w109-214.abo.wanadoo.fr]
has quit [Quit: I am a manual virus, please copy me to your quit message.]
17:35 -!- pjacobs [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has
joined #go-nuts
17:38 -!- robteix [~robteix@192.55.54.36] has joined #go-nuts
17:38 -!- Fish [~Fish@9fans.fr] has quit [Ping timeout: 255 seconds]
17:38 -!- Fish [~Fish@9fans.fr] has joined #go-nuts
17:44 -!- skelterjohn [~jasmuth@140.Red-88-7-208.staticIP.rima-tde.net] has quit
[Quit: skelterjohn]
17:46 -!- Fish- [~Fish@9fans.fr] has joined #go-nuts
17:46 -!- maragato [~robteix@nat/intel/x-jmueabamiyvysqbx] has joined #go-nuts
17:46 -!- Fish [~Fish@9fans.fr] has quit [Ping timeout: 240 seconds]
17:47 -!- yogib [~yogib@dslb-188-100-000-172.pools.arcor-ip.net] has joined
#go-nuts
17:47 -!- Kahvi [~Kahvi@a91-152-179-229.elisa-laajakaista.fi] has joined #go-nuts
17:48 -!- awidegreen [~quassel@h-170-226.a212.priv.bahnhof.se] has joined #go-nuts
17:50 -!- robteix [~robteix@192.55.54.36] has quit [Quit: Leaving]
17:51 -!- stalled [~stalled@unaffiliated/stalled] has quit [Ping timeout: 252
seconds]
17:52 -!- Queue29 [~seth@bastion.sfo1.yelpcorp.com] has joined #go-nuts
17:55 -!- angasulino [c80571e2@gateway/web/freenode/ip.200.5.113.226] has joined
#go-nuts
18:00 < angasulino> hi, what would be the recommended starting point if I
wanted to change something in the language?  I got the Hg repo and I want to try
adding a simple kind of generics, see if it would work as I expect it to
18:01 -!- rmib [~quassel@77.242.99.199] has quit [Remote host closed the
connection]
18:02 -!- pjacobs [~pjacobs@75-27-133-72.lightspeed.austtx.sbcglobal.net] has quit
[Ping timeout: 255 seconds]
18:03 -!- Kahvi [~Kahvi@a91-152-179-229.elisa-laajakaista.fi] has quit [Ping
timeout: 276 seconds]
18:08 -!- angasulino [c80571e2@gateway/web/freenode/ip.200.5.113.226] has quit
[Ping timeout: 252 seconds]
18:08 -!- stalled [~stalled@unaffiliated/stalled] has joined #go-nuts
18:09 -!- kfmfe04 [~kfeng@114-32-57-164.HINET-IP.hinet.net] has joined #go-nuts
18:11 -!- angasulino [c80571e2@gateway/web/freenode/ip.200.5.113.226] has joined
#go-nuts
18:12 < angasulino> meep, stupid thing disconnected...
18:12 < aiju> 20:14 < zozoR> [18:48:40] people use dowhile?  o.o
18:12 < aiju> i often have do while constructs in my code
18:14 < aiju> but i feel like they're only in C because it's easier for the
compiler to generate fast code from them
18:16 -!- tncardoso [~thiagon@150.164.2.20] has quit [Quit: Leaving]
18:16 < angasulino> premature optimization?
18:16 < aiju> the improvement is substantial
18:17 < Namegduf> Designing a language to be able to emit efficient code
isn't essentilaly premature optimisation.
18:17 < ampleyfly> you can implement a while as a jump into a do-while, no?
18:18 -!- mjml [~joya@174.3.227.184] has joined #go-nuts
18:18 < aiju> many machines have an instruction do something like "do { ...
} while(--n);"
18:18 < aiju> +to
18:19 * Namegduf finds it one of the things he hates most about working in non-Go
high level languages.
18:19 < aiju> the PDP-11 has one, for one
18:19 < aiju> Namegduf: do while?
18:20 < Namegduf> "This is the idiomatic way to do X, but it's 50 times
slower than this ugly way."
18:20 < aiju> heh
18:20 < angasulino> aiju: Stallman?  Is that you?
18:20 < aiju> angasulino: JESUS CHRIST
18:20 < aiju> NO
18:20 < kevlar_work> what is the expected output of
https://gist.github.com/1082781 ?
18:20 < Namegduf> Languages should be designed so that idiomatic is fast
18:20 < kevlar_work> The output I see seems different from what the docs
suggest.
18:20 < Namegduf> As far as possible.
18:20 < Namegduf> IMO.
18:20 < chomp> x86 essentially has that
18:20 < mkb218> 68hc12 has that
18:20 < chomp> the LOOP instruction
18:21 < mkb218> it hink powerpc too
18:21 < aiju> chomp: yeah, MANY machines have it
18:21 -!- pjacobs [~pjacobs@66.54.185.130] has joined #go-nuts
18:22 < aiju> the problem with do { ..  } while(--n) is that it fails if n
== 0
18:22 < aiju> yet it's common in code
18:22 < aiju> (i'm just guessing btw)
18:23 < aiju> angasulino: also, to clarify, i'm not supporting this in any
modern language
18:23 < mkb218> some oisc machines have a similar instruction, heh
18:23 < kevlar_work> aiju, the very scary way to do that is if (n > 0) do
{ ...  } while (--n)
18:23 < aiju> kevlar_work: yeah, heh
18:23 < angasulino> aiju: well, in any modern machine, the difference is
surely shadowed by a million other things
18:24 < aiju> angasulino: also, modern compilers can figure it out
18:24 < angasulino> yup
18:24 -!- huin [~huin@91.84.179.118] has joined #go-nuts
18:24 < aiju> angasulino: but C's design stems from the PDP-7/PDP-11
18:24 < kevlar_work> it's often done for reverse indexing strings.  if (e
> p) do { //something with *e } while (e-- > p);
18:24 < aiju> these machines were slow even for their day
18:24 -!- tvw [~tv@212.79.9.150] has quit [Remote host closed the connection]
18:24 < kevlar_work> or something...  in that case it isn't needed.
18:25 < kevlar_work> oh, maybe it's just normally indexing them: if (*p) do
{...} while *(++p);
18:25 < aiju> except for memory, these machines are outperformed are modern
microcontrollers
18:25 < angasulino> hey, sorry, I asked earlier but then got disconnected, I
want to add a keyword to Go, to do some generics stuff, see if my idea has any
merit before adding to the noise in the list, where would I start doing such a
thing?
18:25 < aiju> angasulino: in the compiler?
18:25 < angasulino> heh
18:25 < kevlar_work> on your personal copy of the repository :)
18:26 < mkb218> maybe even your own branch
18:26 < chomp> i recommend doing it wherever you feel comfortable
programming.  maybe a home office or study, or a coffee shop
18:26 < kevlar_work> you can locally branch and check in your changes as you
go and then merge them back with a CL.
18:26 < angasulino> I have my personal copy of the repository, I was asking
where in the codebase :-P
18:26 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit:
hcatlin]
18:26 < chomp> src/cmd/*g
18:26 < chomp> innt it
18:26 < aiju> angasulino: src/cmd/gc
18:26 < chomp> gc that's it
18:26 < aiju> angasulino: start finding the lexer and adding it to it ..
then add it to the grammar
18:27 < kevlar_work> then add it to the compiler, then...  yeah.
18:27 < chomp> then run goautoprogram -f "add generics to go" and it will
generate the changes for you
18:27 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts
18:27 < aiju> hahaha
18:27 < kevlar_work> lol
18:27 < angasulino> :-)
18:30 -!- tavis_rain [~tavisb@24-104-129.146.hfc.mediarain.com] has quit [Quit:
Leaving.]
18:31 < aiju> also, regarding the PDP-11
18:31 < aiju> the PDP-11 C compiler would likely make your machine swap
18:31 -!- rlab [~Miranda@91.200.158.34] has quit [Read error: Connection reset by
peer]
18:31 < aiju> there were probably some improvements they could think of, but
they simply didn't fit into memory
18:31 < kevlar_work> can someone sanity check this:
https://gist.github.com/1082781 It looks like a bug to me, but I don't like making
spurious issues.
18:32 < aiju> (yes, i know, C++ compilers still cause machines to swap,
hahaha)
18:33 < kevlar_work> oh, nevermind, it doesn't say "whose name matches the
tag of"
18:34 -!- fabled [~fabled@83.145.235.194] has joined #go-nuts
18:34 < qeed> right now if i want to explicit set default values for a big
struct i do t = *(new(T)) is there a standard way to do this?
18:34 < kevlar_work> qeed, write a NewT function.
18:35 -!- telexicon [~telexicon@unaffiliated/chowmeined] has joined #go-nuts
18:35 < kevlar_work> and, uh, you should never do t := *(new(T))
18:35 < angasulino> I actually added bzip2 support to distcc so that I could
compile C++ with an old laptop that only had 32MB of RAM (I was using Qt4)
18:35 < aiju> hahahaha
18:35 < kevlar_work> qeed, I think what you meant was t := T{}
18:35 < qeed> thats it thanks
18:43 < mkb218> or var t T, no?
18:44 < qeed> well i had an existing struct that had changed, i wanted to
set that to the default values, that was what i had initially
18:46 < kevlar_work> qeed, as a rule of thumb, you should try to make the
zero value of your structure be properly initialized.  In the case of map fields,
this is not always possible, or if you have actual defaults that should be set
other than zero for particular fields.  In these cases, you need a constructor
like NewT to provide you with a properly initialized value; these often return
pointers, because pointers to structures tend to be more useful.
18:47 < kevlar_work> by "need" I really mean "should have", because
maintaining a bunch of separate initialization statements wherever you need the
"default" value is error-prone at best.
18:48 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts
18:50 -!- angasulino [c80571e2@gateway/web/freenode/ip.200.5.113.226] has quit
[Ping timeout: 252 seconds]
18:50 -!- meling [~meling@129.33.193.254] has joined #go-nuts
18:56 -!- fabled [~fabled@83.145.235.194] has quit [Quit: Ex-Chat]
18:58 -!- merijn [~merijn@inconsistent.nl] has joined #go-nuts
19:01 -!- tavis_rain [~tavisb@24-104-129.146.hfc.mediarain.com] has joined
#go-nuts
19:05 -!- Kahvi [~Kahvi@a91-152-179-229.elisa-laajakaista.fi] has joined #go-nuts
19:12 -!- tncardoso [~thiago@187.58.6.58] has joined #go-nuts
19:15 -!- moraes [~moraes@189.103.188.201] has joined #go-nuts
19:16 -!- angasulino [c80571e2@gateway/web/freenode/ip.200.5.113.226] has joined
#go-nuts
19:16 -!- moraes_ [~moraes@189.103.188.201] has joined #go-nuts
19:16 -!- __moraes__ [~moraes@189.103.188.201] has joined #go-nuts
19:18 < angasulino> dammit :/ someone put my laptop to sleep
19:20 < KirkMcDonald> Laptop gremlins.
19:21 -!- meling [~meling@129.33.193.254] has quit [Remote host closed the
connection]
19:27 -!- mjml [~joya@174.3.227.184] has quit [Ping timeout: 240 seconds]
19:30 -!- kfmfe04 [~kfeng@114-32-57-164.HINET-IP.hinet.net] has quit [Quit:
WeeChat 0.3.0]
19:30 -!- merijn [~merijn@inconsistent.nl] has left #go-nuts []
19:34 -!- moraes [~moraes@189.103.188.201] has quit [Disconnected by services]
19:35 -!- hcatlin [~hcatlin@host86-163-247-252.range86-163.btcentralplus.com] has
joined #go-nuts
19:35 -!- hcatlin [~hcatlin@host86-163-247-252.range86-163.btcentralplus.com] has
quit [Changing host]
19:35 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
19:35 -!- __moraes__ [~moraes@189.103.188.201] has joined #go-nuts
19:36 < angasulino> haha no, I know who it was
19:37 -!- tvw [~tv@e176002066.adsl.alicedsl.de] has joined #go-nuts
19:43 -!- moraes [~moraes@189.103.188.201] has quit [Remote host closed the
connection]
19:43 -!- __moraes__ [~moraes@189.103.188.201] has quit [Remote host closed the
connection]
19:43 -!- moraes_ [~moraes@189.103.188.201] has quit [Remote host closed the
connection]
19:44 -!- mjml [~joya@174.3.227.184] has joined #go-nuts
19:44 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit:
hcatlin]
19:45 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
19:49 -!- questionable [~tjb@31.64.8.108] has joined #go-nuts
19:49 < questionable> hi
19:49 -!- JimPeak [~lejimpeak@modemcable213.208-160-184.mc.videotron.ca] has left
#go-nuts []
19:51 < questionable> is go object-oriented?
19:51 < kevlar_work> Yes and no.,
19:51 < aiju> that's questionable
19:51 < clr_> Thats perhaps the wrong question.
19:51 < kevlar_work> (lol, I love us.)
19:52 < kevlar_work> (it's like we're all politicians or lawyers.)
19:52 < questionable> lol
19:52 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit:
hcatlin]
19:53 < questionable> i'm interested in go, but can i write gui apps with
it?
19:53 < kevlar_work> again, yes and no.
19:53 < kevlar_work> There are some bindings for graphics libraries
19:53 < kevlar_work> but afaik only for linux
19:53 < aiju> you can, but only with gtk and some other horrible libraries
19:55 < kevlar_work> (if you're programing on windows, there might be some
ways to do it there too, but uh, I think they're even worse options than on
linux/bsd/darwin)
19:55 < questionable> so go is basically a server-side scripting language?
19:56 < angasulino> yes and no.
19:56 < kevlar_work> it's a general purpose compiled programming language
suitable for a lot of the same things as C and Python
19:57 < kevlar_work> C can go closer to the metal and do more real-time
stuff, python can get a lot more high-level and do things like graphics
19:57 < angasulino> questionable: what GUI toolkits do you like to use?
19:57 < angasulino> the only GUI toolkit I like is Qt...  which is very C++y
19:57 < aiju> the only GUI toolkit I like is
19:57 < kevlar_work> C++y probably means it's swiggable?
19:57 < aiju> Segmentation fault.
19:58 < kevlar_work> the only gui library I like is command-line.
19:58 < aiju> that's the worst of all
19:58 < kevlar_work> actually, I think vim has a very nice ui.
19:58 < questionable> .NET is nice to use as a programmer
19:59 < aiju> i worked with .NET for the past three weeks
19:59 < kevlar_work> oh look, my email is flashing...  *runs*
19:59 < questionable> WinForms (not WPF)
19:59 < aiju> StringBuilder sb = StringBuilderPool.GetStringBuilder();
19:59 < aiju> really nice to work with
19:59 < questionable> borland's old VCL was nice too (with Delphi)
20:00 < kevlar_work> oh, I'm so glad it said StringBuilder three times, I
might not have caught it otherwise
20:00 < angasulino> kevlar_work: swig still requires work, plus you always
have to adapt, so it works well with Go idioms
20:00 < questionable> though borland became codegear, which became
embarcadero
20:00 < angasulino> aiju: what is the type of that line?  :P
20:00 < kevlar_work> angasulino, well, I meant that I was expressing hope
that someone would make go bindings using swig so that I didn't have to do that :)
20:00 < aiju> angasulino: i have no clue what you're talking about
20:00 < angasulino> kevlar_work: I would like a pony, while we're wishing
:-)
20:01 < questionable> if you don't like typing things over and over (i do),
you can use 'var', which is simply syntactic sugar: var sb =
StringBuilderPoolGetStringBuilder();
20:01 < questionable> i never do that though, personally
20:01 < angasulino> hahahahaha
20:01 < angasulino> I like that line even better
20:01 < questionable> oops, i forgot the '.'
20:01 < aiju> System.Collections.Generics.List
20:01 < questionable> well, i pressed it, and it didn't come out
20:01 -!- pothos [~pothos@111-240-169-203.dynamic.hinet.net] has quit [Read error:
Connection reset by peer]
20:02 < angasulino> is there something like
StringBuilderPool.GetIntBuilder()?
20:02 < aiju> angasulino: no
20:02 < questionable> yeah, the generic collection classes are fantastic
20:02 < questionable> Queue<string>
20:02 < questionable> Stack<int>
20:02 < aiju> angasulino: string builders are to concatenate strings
20:02 < angasulino> aiju: so the repetition is there just to avoid writing
short lines?
20:02 < aiju> instead of a+b
20:02 < aiju> you write
20:02 < aiju> StringBuilder sb = StringBuilderPool.GetStringBuilder();
20:02 < aiju> sb.Append(a);
20:02 < aiju> sb.Append(b);
20:02 < aiju> sb.ToString()
20:02 < questionable> you can concatenate strings, but it's not necessarily
fast.  StringBuilder is a fast alternative
20:02 < aiju> it's actually bs
20:02 < questionable> you can say: string foo = "bar"; foo += "bleh"; etc.
20:03 < aiju> StringBuilder is only faster if the planets align right and
such
20:03 < angasulino> aiju: I didn't mean literally Int, but rather, any other
Get*Builder
20:03 < questionable> StringBuilder is heaps faster in some cases
20:03 < questionable> enormously faster
20:03 < aiju> angasulino: no
20:03 < aiju> i don't really get why stringbuilder is faster
20:03 < aiju> but then i don't care
20:03 -!- pothos_ [~pothos@111-240-170-107.dynamic.hinet.net] has joined #go-nuts
20:03 < questionable> because it allocates only the memory it needs (in
general).  when you concatenate strings, you create a whole new object (on the
heap) every time
20:04 < aiju> i only write c#/.net when i get heaps of money
20:04 < questionable> StringBuilder tries to guess how much memory you'll
need, and tries to allocate only once
20:04 < questionable> you can help it out, of course
20:04 < questionable> (by giving it a number in the constructo)
20:04 < questionable> r
20:04 < aiju> yeah
20:04 < aiju> i know
20:04 -!- pjacobs [~pjacobs@66.54.185.130] has quit [Ping timeout: 240 seconds]
20:04 < aiju> char buf[1000];
20:04 < aiju> i feel reminded
20:05 < questionable> even if you go over the number you tell it, of course,
it'll be fine
20:05 < questionable> it'll just be possibly suboptimal, performance-wise
20:05 < aiju> i know
20:05 * kevlar_work is unsure how any of this is better than it is in Go. Hell,
even C.
20:05 < questionable> C# is a million miles better than C in this respect
20:05 < questionable> it's no comparison.
20:05 < aiju> HAHAHA
20:05 < questionable> i don't know much about go
20:05 < aiju> no, you just can't code c
20:05 < questionable> i know C
20:06 < questionable> c is good at what it is, but it's not good at generic
collections (because it doesn't even support them --- how is this a comparison?)
20:06 < chomp> i have to agree that C# kicks ass
20:06 < chomp> it is a great language.
20:06 < aiju> lists are your firned
20:06 < aiju> *friend
20:06 < questionable> aiju: how can you even compare C#'s generic
collections with C?
20:07 < questionable> (well, .NET's collections)
20:07 < questionable> C has nothing even remotely comparable
20:07 < aiju> and I DON'T FUCKING CARE
20:07 < aiju> how can you even compare COBOL's computed GOTO statements with
C#?
20:07 < aiju> C# doesn't even have something like that
20:07 < questionable> aiju: you just did make that comparison
20:08 < aiju> no, i just said i felt reminded of doing stuff in C
20:08 < aiju> calculating the length, doing an allocation, write stuff in it
20:08 < aiju> i know that manners are different
20:08 < questionable> aiju: you're the guy who didn't even understand why
StringBuilder can be faster than String, so i'm not sure why i'm taking your
comments on C#/.NET seriously at all
20:08 < questionable> you said i was wrong, and that i couldn't code in c.
come on now
20:09 < kevlar_work> when I was doing string manipulations in C, I was
always able to make a helper function or two that could do what I needed very
easily.
20:09 < kevlar_work> And it was always going to be more optimal than
something like StringBuilder that can only guess at your particular application.
20:09 < questionable> you had to reinvent the wheel over and over
20:09 < kevlar_work> That's the C world.
20:10 < aiju> i don't care
20:10 < kevlar_work> but you use C for the performance and bare metal
proximity, not for the lack of wheel reinvention.
20:10 < questionable> kevlar_work: what would you do in C if you needed
something comparable to a Queue<string>?
20:10 -!- virtualsue [~chatzilla@nat/cisco/x-yffxbhrubswgvnkf] has quit [Quit:
ChatZilla 0.9.87 [Firefox 5.0.1/20110707182747]]
20:10 < kevlar_work> questionable, a **string.
20:10 < aiju> i use C because it is fucking simple, predictable and
understandable
20:10 < questionable> hah
20:10 < questionable> that's nowhere near comparable
20:10 < kevlar_work> questionable, no, it's a hell of a lot faster.
20:11 < kevlar_work> er, **char, not **string.
20:11 < questionable> some C# code is actually faster than C, but C probably
wins overall
20:11 < kevlar_work> lol, probably?
20:11 < questionable> because the JIT is able to optimize things far better
than C (but the JIT implies overhead)
20:11 < kevlar_work> far is a bit of a mischaracterization.
20:11 < aiju> for every fucking language out there
20:11 < questionable> well, it depends on the app.  some C# apps are faster
than C equivalents
20:11 < aiju> there is a piece of code which runs faster than in C
20:12 < questionable> C#/.NET versus C/Win32
20:12 < questionable> the JIT has a very aggressive optimiser.  you do get
some performance wins
20:12 < aiju> i don't even write fucking C for performance
20:12 < questionable> C is quite limited though, in practice
20:12 < questionable> would you wanna, say, write an irc client in C? i
wouldn't.  i'd happily do it in C#/.NET though
20:13 < questionable> it'd be pretty painful in C
20:13 < aiju> i have written an IRC bot in C
20:13 < sl> wtf, there are like 4,000 irc clients written in c
20:13 < kevlar_work> on the programming language shootout, C beats C# in
every case.
20:13 < kevlar_work> I've written an IRC client, an IRC bot, an IRC server,
and IRC services in C
20:13 -!- alehorst [~alehorst@189.114.181.147.dynamic.adsl.gvt.net.br] has quit
[Quit: Leaving.]
20:13 < angasulino> yeah, the IRC protocol isn't very difficult...  I have
pretended to be a server with netcat :D
20:13 < questionable> sl: and how many of those 4,000 were extremely painful
to write, and have variuos buffer overflows?  i'd guess ~4,000
20:13 < kevlar_work> it was blindingly fast.
20:14 < questionable> kevlar_work: you must be a masochist
20:14 < kevlar_work> (except the client, but that was the first one I wrote
and was super naive.)
20:14 < questionable> was your irc client a gui one?
20:14 < chomp> this is really a silly argument
20:14 < kevlar_work> questionable, of course not.
20:14 < angasulino> for really nice string handling in C, look at nethack!
20:14 < aiju> questionable: really, fuck you and your C# object oriented
generics bullcrap
20:14 < questionable> why "of course"?
20:14 < chomp> they are fucking languages
20:14 < aiju> god damnit
20:14 < chomp> christ
20:14 < angasulino> you people need to chill
20:14 < angasulino> and learn assembly, C is for sissies :-)
20:14 < kevlar_work> I'm actually on the verge of mirth ;-)
20:14 < chomp> aiju needs to chill...
20:14 < questionable> aiju: you are the one who brought up generics
20:15 < aiju> i meant to bring up a fucking example for their naming scheme
20:15 < chomp> aiju murders kittens and children
20:15 < questionable> kevlar_work: did you say "of course my irc client
didn't have a gui" because c sucks so bad when it comes to things like gui app
dev?
20:15 < angasulino> hahaha children!
20:15 < chomp> and hates C# because it scares him
20:15 < questionable> because that's largely what i meant when i said that
writing an irc client in c would be painful
20:16 < sl> why didn't you just say "writing a gui app in c would be
painful"
20:16 < chomp> c.f.  gtk
20:16 < chomp> you could just have said those three letters: gtk
20:16 < aiju> GTK is a huge pile of turd
20:16 < chomp> yes that's the point :)
20:16 < kevlar_work> questionable, it didn't have a gui because I am a
systems programmer not a GUI programmer, and because designing a good GUI requires
skills that almost nobody has, so I don't try.
20:17 < questionable> GUIs are easy
20:17 < kevlar_work> Right.
20:17 < aiju> GUIs are easy, good GUIs are hard
20:17 < chomp> GUIs are easy to make, good GUIs are near impossible
20:17 < aiju> haha
20:17 < questionable> nah, good GUIs are easy
20:17 < kevlar_work> lol.
20:17 -!- Barbarossa [~max@rfc2324.org] has joined #go-nuts
20:17 < kevlar_work> you're funny.
20:17 < chomp> then you should be making millions making good GUIs
20:17 < chomp> because really, they are hard.
20:17 < questionable> just observe other good GUIs, keep it simple, etc.
20:17 < sl> haha
20:17 < sl> [citation needed]
20:17 < chomp> ^
20:17 < aiju> just getting decent resizing behaviour is fun
20:17 < kevlar_work> +1
20:18 < questionable> aiju: easy in WinForms
20:18 < chomp> my citation is years of experience trying to not release
software with shitty GUIs
20:18 < chadkouse> i've been on a skype call for the last 2 hours with 6
people trying to finalize the GUI on 2 screens of our app… GUI's are not easy to
design or build
20:18 * kevlar_work falls out of his chair laughing.
20:18 < questionable> just set the Anchor property of the control(s)
appropriately
20:18 -!- huin [~huin@91.84.179.118] has quit [Quit: bedtime]
20:18 < chadkouse> oh windows?
20:18 < chadkouse> people still use that?
20:18 < chadkouse> :)
20:18 < questionable> chadkouse: we're talking about an irc client here.
how hard is that?
20:18 * chomp laughs as he wonders how much usable software questionable has
published
20:18 < questionable> oh, wow, i'm making an irc client.  oh the noez, i'm
totally lsot!!!!
20:18 < aiju> chomp: none, HE USES FUCKING C#
20:18 < questionable> omg, should i have like, menus?!?!
20:18 < chadkouse> I built an irc client in java many years back..  it was
pretty hard.
20:18 < questionable> simple.  just keep it neat and clean
20:18 < chomp> aiju, I love C#, i'm not going to lie.  it's a fucking nice
language.
20:19 -!- alehorst [~alehorst@189.114.181.147.dynamic.adsl.gvt.net.br] has joined
#go-nuts
20:19 < nicka1> You guys are extremely entertaining
20:19 < nicka1> questionable, ask them about new/make
20:19 < kevlar_work> questionable, if you think an IRC client is a text box
an input box and a user list, you're sorely mistaken.
20:19 < kevlar_work> hehe
20:19 < questionable> i've made an irc client before
20:19 < questionable> the gui wasn't very hard to do
20:19 < chomp> link
20:19 < questionable> it was nice and clean
20:19 < chomp> link
20:19 < questionable> i didn't release it
20:19 < chomp> link
20:19 < chomp> OH WHY NOT
20:19 < kevlar_work> pics or it didn't happen!
20:19 < chomp> ^
20:19 < chadkouse> hehe
20:19 < questionable> because i never intended to
20:19 < chomp> why wouldn't you release it?
20:19 < ww> who still uses irc?
20:19 < aiju> XMPP IS THE FUTURE
20:20 < aiju> hahahahhaahaha
20:20 < kevlar_work> ww, I don't know, is n't it like, dead or something?
20:20 < angasulino> ww: irc is for losers!
20:20 < chomp> irc is for scr1p7 k1dd13z
20:20 < chomp> or whatever.
20:20 < kevlar_work> oh no, if I use it will I get haxx0r3d?
20:20 < chomp> YA
20:20 < kevlar_work> ocrap /quit
20:20 < chomp> u get haxed wif DCC
20:20 < angasulino> chomp: you don't know 1337?  get outta here :)
20:20 < questionable> i think you guys just suck at GUIs
20:20 < chadkouse> I definitely suck at GUI's
20:20 < chadkouse> i don't really care about them either
20:20 * kevlar_work too
20:20 < questionable> GUIs are vital
20:20 < sl> questionable: there's no way to tell because our gui code has
not been released.
20:20 < chomp> questionable, most people do.  like i said, if you're good at
GUIs, you should be making a fuck ton of money designing GUIs.
20:21 < angasulino> questionable: what program has a good GUI, in your
opinion?
20:21 < icey> questionable: i created a gui in vb.net to track some IPs
once, does that count?
20:21 < chomp> more importantly, what program has questionable published
that has a good GUI
20:21 < angasulino> icey: do you work for CSI?
20:21 < chomp> i want to see some fucking proof here
20:21 < questionable> hmm.  i like firefox's gui
20:21 < chomp> hahahahah firefox's gui sucks
20:21 < chomp> jesus
20:21 < questionable> it's clean and simple
20:21 < angasulino> questionable: hahahahahah
20:21 < chadkouse> yeah it's pretty bloaty
20:21 < aiju> i think there is one program i know which has a good GUI
20:21 < chomp> let's hide everything in a tiny button in a corner
20:21 < questionable> i'm talking about the GUI Win7 users see
20:21 < angasulino> firefox's UI is a PITA
20:21 < chomp> i'm on win7.
20:21 < angasulino> about:config ? seriously?
20:21 < icey> actually, i write lots of c#; and it's pretty great for a
language.  and you can create decent GUIs in it as long as you're only targeting
windows machines
20:21 < kevlar_work> questionable, what do you think of the GUI redesign for
GMail, Google Search, etc?
20:22 < questionable> oh, the button thing's not that nice.  i was talking
about the TDI and such
20:22 < nicka1> firefox on windows is garbage
20:22 < nicka1> ui wise
20:22 < questionable> the TDI is simply and cleanly developed
20:22 < aiju> firefox is garbage
20:22 < aiju> i take ie9 over firefox
20:22 < questionable> i have that 'move firefox button' extension installed,
to make that part look nice
20:22 < chomp> icey, yeah taking it aside from any runtime implementation or
whatever, as a LANGUAGE, c# is pretty fucking beautiful
20:22 < nicka1> you're an interesting person aiju
20:22 < angasulino> nicka1: I've used it on OS X and linux and it's also
garbage in those :P
20:22 < chomp> and the CLI is really pretty nicely designed
20:22 -!- moraes [~moraes@189.103.188.201] has joined #go-nuts
20:22 < chomp> i know microsoft is oohhh sooo evil
20:22 < kevlar_work> my favorite browser is wget
20:22 < chadkouse> most UI's in linux are garbage..
20:22 < chomp> all UIs in linux are garbage.
20:22 < kevlar_work> curl if I'm in a jam
20:22 < kevlar_work> ;-)
20:23 < aiju> most UI's in windows are even worse than UI's in linux
20:23 < chadkouse> because l33t h@x0rs don't need no gui
20:23 < chomp> KDE5 is probably as nice as it gets, and it's a pile of fuck.
20:23 < questionable> yeah, linux can be a let-down here
20:23 < questionable> it's a shame, because GUIs ARE important.  very
important
20:23 < aiju> there is KDE5, really?
20:23 < aiju> is it even more shitty than KDE4?
20:23 < questionable> the CLI is too, but GUIs tend to get neglected in *nix
20:23 -!- dfr|mac [~dfr|work@nat/google/x-nkghijtsvcpxoouj] has joined #go-nuts
20:23 < chadkouse> depends on what it is..
20:23 < chomp> yeah last time i was on debian unstable
20:23 < kevlar_work> guis are not important in the grand scheme of things
20:23 < chomp> it's more shitty than KDE4 but with more features
20:23 < aiju> GUIs are what people use before they leearn to use the CLI
20:23 < questionable> they're as important as the CLI.  probably more so
20:24 < questionable> (for desktop users)
20:24 < kevlar_work> the number of applications which even have a GUI is
probably a small fraction of a percentage point
20:24 < ww> guis all went downhill after motif
20:24 < chomp> GUIs are extremely important for users
20:24 < chadkouse> are many go programmers writing desktop apps ?!
20:24 < chomp> but if we're talking re linux, yeah...
20:24 < questionable> kevlar_work: perhaps if you're a linux user, where the
average GUI sucks, i could agree
20:24 < kevlar_work> when an application needs a gui, the gui design is
important, but beyond that not so much.
20:24 < chomp> i fucking hate X11 anyway so
20:24 < questionable> on windows, the typical GUIs are decent
20:24 < kevlar_work> rofl
20:24 < aiju> hahahaha
20:24 < chadkouse> hahahha
20:24 < aiju> the problem is
20:24 < kevlar_work> you should be a comedian
20:24 < aiju> they are GUIs
20:24 < questionable> you folks are dinosaurs
20:24 < chadkouse> questionable is all blub'ed up
20:24 < kevlar_work> questionable, do you like wizards?
20:24 < chomp> <-not a dinosaur
20:25 < aiju> on WIndows you have 3 dozens programs
20:25 < aiju> what *nix does with 2
20:25 < chomp> i like wizards, but the kind that cast Magic Missile
20:25 < chadkouse> i don't think anyone in #go-nuts is a dinosaur…
20:25 < questionable> linux GUIs tend to suck badly, as a few of you just
admitted
20:25 < chadkouse> windows is a dinosaur though
20:25 < questionable> this is not the case with windows
20:25 < chomp> in the future everyone wears space suits and uses plan9
20:25 < aiju> chomp: of course
20:25 < questionable> windows GUIs tend to be good
20:26 < chadkouse> oh you mean since windows started ganking everything they
can from OS X ?
20:26 < ww> chomp's magic missile -== HITS ==- questionable
20:26 < aiju> plan 9 GUIs are the only good GUIs
20:26 < chomp> lol
20:26 < chomp> now THAT is comedy
20:26 < kevlar_work> I think apple does some good work
20:26 < aiju> chadkouse: and OS X stole everything from somewhere else
20:26 < ww> aiju's plan 9 *misses*
20:26 < chomp> one of the worst GUIs i've ever used was Xcode's
20:26 < aiju> MSVS is pretty bad
20:26 < chadkouse> OS X stole, windows copied :)
20:26 < kevlar_work> some being the operative word
20:26 < aiju> it has these tab/windows things
20:26 < chomp> aiju, really?  it's one of the nicest IDEs i've ever used
20:26 < chadkouse> chomp have you see appcode ?
20:26 < chomp> maybe the nicest
20:26 < aiju> which are NEVER RIGHT
20:26 < chomp> chadkouse, no
20:26 < chadkouse> xcode replaced..  pretty nice..  by jetbrains
20:27 < chadkouse> xcode replacement *
20:27 < chomp> it's hard for me to use anything but vim/commandline or MSVS
20:27 < kevlar_work> I personally like iTunes and the general layout of the
mac os (menu bar, with dock on left)
20:27 -!- maragato [~robteix@nat/intel/x-jmueabamiyvysqbx] has quit [Quit:
Leaving]
20:27 < aiju> i hate the mac os menu bar on the top
20:27 -!- Peet__ [~Peet__@unaffiliated/peet--/x-2416233] has joined #go-nuts
20:27 < aiju> it destroys locality
20:27 < kevlar_work> they also do a very good job with hotkeys and screen
corners.
20:28 < chomp> i agree with that one aiju
20:28 < aiju> locality is one of the most important thing in a GUI
20:28 < aiju> windows is already bad
20:28 < questionable> i do like gvim/vim
20:28 < chomp> focus
20:28 < aiju> with its menus and symbols
20:28 < aiju> popup menus or get the fuck out
20:28 < chomp> how is locality a problem in windows
20:28 < ww> iTunes [*][*][*] OBLITERATES [*][*][*] GUI's pet
20:28 < questionable> copying/paste between gvim and something else is
annoying though
20:28 < chomp> i hate popup menus...
20:28 < kevlar_work> aiju, the thing about menus is that you want to be able
to get to them fast, and with them at the top of the screen, you can get to them
3-30x faster (according to ux studies)
20:28 < chomp> yay for HIDDEN INTERFACE
20:28 < kevlar_work> because you can just throw your mouse at them and not
overshoot
20:29 < kevlar_work> menus at the top of windows are slower because you have
to precisely hit them.
20:29 < chomp> studies by apple research?  ;)
20:29 < aiju> kevlar_work: it is 100x faster to use the right mouse button
(an aiju study)
20:29 < questionable> that's part of the reason Firefox's tabs are right at
the top now
20:29 < kevlar_work> chomp, no, I think it was the navy actually.
20:29 < chadkouse> hehehe
20:29 < chomp> APPLE NAVY
20:29 < kevlar_work> now that would be scary.
20:29 < chomp> conspiracy conspiracy
20:29 < chomp> hahaha all subs would have one button
20:29 < kevlar_work> "OUR BOATS ARE SUPER SEXY RUN AWAY"
20:30 < chomp> you have to press it this way to propel forward
20:30 < chomp> and this way to launch all the nukes
20:30 < kevlar_work> have you seen the touch wheel keyboard spoof?
20:30 < angasulino> mouse + menu = retarded
20:30 < kevlar_work> hilarious.
20:30 < chomp> yes
20:30 < chomp> i also like the microsoft table spoof
20:30 < angasulino> menus work great with keys, but not so much with a
pointer
20:30 < chomp> if you havent seen that check it out
20:30 -!- erus` [~chatzilla@host86-174-221-82.range86-174.btcentralplus.com] has
quit [Ping timeout: 255 seconds]
20:30 -!- erus`_ [~chatzilla@host86-186-161-219.range86-186.btcentralplus.com] has
joined #go-nuts
20:30 < chomp> or ms surface'
20:30 < angasulino> a pie-like 'menu' would be much better for a pointer
20:31 < chadkouse> i plays my sc2 with only zee mouse ftw!
20:31 < aiju> menus are even worse with keys
20:32 < angasulino> aiju: how so?  no risk of falling out of the tiny
corridor, accelerators work great too
20:32 < questionable> menus are great with keys
20:32 < aiju> keys as in keyboard?
20:32 < angasulino> yes
20:32 < questionable> and menus tend to (at least in windows) tell you what
the shortcut commands are for those items
20:32 < aiju> like down down down right down down down down down down down
20:33 < aiju> right down down down down down right down down down
20:33 < questionable> aiju: seriously?
20:33 < angasulino> aiju: if you use accelerators it's much faster than
that...
20:33 < chomp> i personally like keyboard shortcuts but i think for your
average user, keys is fer typin'.
20:33 < questionable> how about Alt+F N
20:33 < questionable> (or just Ctrl+N)
20:33 < angasulino> chomp: I don't mean shortcuts, when you go into a menu,
a letter for each entry is highlighted somehow (usually underlined), and then you
press that key to move there
20:33 < chomp> in the future everyone will wear space suits and tell their
computers what to do in plain english
20:34 < angasulino> or use the simple way that aiju said, but that's slow
20:34 < chomp> this is right before the computers attain sentience
20:34 < chadkouse> that sounds like it will take longer
20:34 < questionable> angasulino: "keyboard accelerators", right?
20:34 < angasulino> still less frustrating than with a pointer
20:34 < chomp> at which point we will be obliterated
20:34 < questionable> or "accelerator chars"
20:34 < aiju> a command language beats alt+shift+f ctrl+apple+meta+a ctrl+a
i-s-t-h-i-s-e-m-a-c-s
20:34 < angasulino> chomp: and then people who don't speak english will be
in trouble :P
20:34 < chomp> you can also just get good at mouses
20:34 -!- zozoR [~Morten@2906ds2-arno.0.fullrate.dk] has quit [Remote host closed
the connection]
20:35 < chomp> and stop missing, baddie
20:35 < aiju> people who don't speak english will be in trouble anyway
20:35 < questionable> that's one of the main purposes of a menu, imo: to
tell you what the keyboard command is
20:35 < chadkouse> i just use 2 mice and an onscreen keyboard…
20:35 < chomp> play some counterstrike for a while, see if you still miss
that comparitively big-ass 10-point-font menu item
20:35 < angasulino> chomp: hahaha so the problem is the user?  nice :P I see
you're great at UI
20:35 < chomp> :)
20:35 < chomp> the problem is always the user, duh
20:35 < angasulino> questionable: discoverability (specially for those
almost-never used commands)
20:35 < chomp> the solution is dumber and dumber UIs
20:35 < questionable> yes
20:35 < angasulino> chomp: so you oppose humanity?  :)
20:35 < chomp> not at all
20:36 < chomp> it's about context
20:36 < angasulino> why not??  it makes sense
20:36 < chomp> i love my mother.  i do not want to write software her her.
20:36 < chadkouse> man I'd love a "dumb and dumber" UI that would be
hilarious
20:36 < chomp> for her*
20:36 < chomp> chadkouse, two paperclips go on a wild and wacky adventure?
20:37 < chadkouse> something like that.
20:37 < chomp> they just want to help the world, but they're about to find
out that helping the wordl...isn't so easy!
20:37 < chomp> "it looks like you're trying to change a tire!  would-- AHH""
*stab stab stab*
20:37 < aiju> i write UIs for users, not for random people
20:38 < chomp> users -are- random people much of the time.
20:38 < aiju> depends on your software
20:38 < chomp> yes, it does
20:38 < aiju> not everyone is writing in-browser flash games
20:38 < chomp> REALLY?!
20:39 < chomp> tell me more about this...  "other" software.
20:39 * chomp gets his notepad
20:39 < aiju> notepad.exe?
20:40 < questionable> Notepad actually has good basic design
20:40 < questionable> it's simple and light
20:40 < questionable> pity it sucks though
20:40 < chomp> and featureless....
20:40 < aiju> true
20:40 < aiju> if it just weren't broken
20:40 < chomp> notepad++ is my favorite text editor outside of vim
20:40 < questionable> like, for example, if you press Ctrl+F when you have
no text on the screen, Notepad won't show the Find dialog
20:40 < questionable> fuck you, Notepad
20:40 < questionable> a few years back, Notepad wouldn't let you save a file
unless you had at least one char on the screen.  they fixed that though
20:40 < chomp> questionable, sounds like an old bug re ctrl+f
20:41 < chomp> just tried it, it's fine
20:41 < aiju> does notepad handle correct line endings yet?
20:41 < questionable> strange.  i'm on Win7 64-bit
20:41 < questionable> aiju: no
20:41 < chomp> so am i
20:41 < aiju> haha
20:41 < angasulino> I never use notepad, wordpad FTW!
20:41 < questionable> Wordpad is just terrible now
20:41 < aiju> it's 2011 and windos still uses CP/M line endings
20:41 < angasulino> aiju: that's why I use wordpad
20:41 < questionable> press Enter and you get two carriage-returns
20:41 < questionable> gotta press Shift+Enter for one
20:41 < angasulino> I'm on xp at work :/
20:41 < aiju> install gvim
20:41 < aiju> problem solved
20:41 < questionable> yeah, gvim is win
20:41 < chomp> aiju, yeah and mac still uses the lone CR
20:41 < aiju> chomp: no
20:41 < questionable> i'm writing my own text editor right now
20:42 < questionable> very simple, but powrful
20:42 < aiju> chomp: mac os x uses \n now
20:42 < angasulino> why gvim?  I use plain vim
20:42 < chomp> aiju, bout time
20:42 < aiju> chomp: it has been for some time
20:42 < angasulino> chomp: since OS X...
20:42 < chomp> plain vim > gvim
20:42 < questionable> if i used vim, i guess i'd have to run it in cmd.exe.
to hell with that
20:42 < angasulino> questionable: cygwin
20:42 < questionable> true
20:42 < aiju> gvim is less effort than cygwin
20:42 < questionable> i've been using GnuWin32 more lately though
20:42 < questionable> so i don't have cygwin installed
20:42 < aiju> i use drawterm to do serious business
20:42 < aiju> like sed/awk stuff
20:42 < angasulino> I get vim, grep, screen, etc
20:42 < chomp> i do all my serious coding in Logo
20:43 < questionable> does the command line go full screen there, angasulino
20:43 < angasulino> searching for text in code without grep is a pain
(Visual Studio sucks)
20:43 < questionable> i find Ctrl+Shift+F in VS pretty good
20:43 < questionable> though i wrote a grep clone recently
20:43 < aiju> why would you write a grep clone
20:43 < questionable> because standard grep is a little sucky in some ways
20:43 < aiju> no xml support?  :D
20:43 < questionable> e.g., "wanna match across line boundaries?  suck to be
you!"
20:43 < questionable> "or learn perl"
20:44 < chomp> does yours do stupid things like buffer the entire file
before matching like ive seen a lot of grep clones do?  :)
20:44 < questionable> i know grep is line-oriented, but still, matching
across line boundaries is a nice feature
20:44 < questionable> chomp: only in single-line mode
20:44 < questionable> also know as "multi-line mode"
20:44 < questionable> but not in normal, line-by-line mode
20:44 < aiju> how much features can you put in grep?
20:44 < aiju> now that's a good question
20:45 < aiju> the sky is the limit, probably
20:45 < chomp> wait a minute...
20:45 < angasulino> questionable: yes, just install rxvt, cmd sucks
20:45 < chomp> you're not the same guy are you
20:45 < questionable> yeah, i am
20:45 < aiju> me?
20:45 < chomp> lol
20:45 < aiju> http://man2.aiju.de/1/grep
20:45 < aiju> these are already too many features
20:45 < chomp> nah, questionable, who used to have some other nick
20:45 < questionable> if you say [ grepm "<body>.*?</body>"
*.html -m ], you'll get the bodies of html docs (although this regex might not be
good)
20:46 < chomp> probably until he annoyed the piss out of everyone and
decided to change it
20:46 < questionable> but it'll read each file fully before doing the
matches (because there's no other way, short of writing my own regex engine)
20:46 < questionable> but if you do normal mode, it will read only one line
ata time
20:46 < angasulino> questionable: GUI programs tend to suck when regexps are
involved
20:46 < aiju> angasulino: have you ever used sam?
20:46 < questionable> angasulino, yeah, my grep clone is a CLI program
20:46 < questionable> chomp: whom did i annoy?
20:47 < questionable> my text editor will have strong regex support though
20:47 < questionable> again, with features like ".  matches everything"
20:47 < angasulino> questionable: I meant re: VS's ctrl shift f
20:47 < questionable> oh, okay
20:47 < aiju> questionable: structured regex?
20:47 < questionable> what do you mean by 'structured'?
20:47 < aiju> ah, sorry, structural
20:47 < aiju> http://doc.cat-v.org/bell_labs/structural_regexps/
20:48 * ww emits an irregular expression
20:48 < aiju> ww: irregular expression is what one could call PCRE
20:48 < questionable> i see
20:49 < aiju> PCRE, regular expressions which are no regular expressions
20:49 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping
timeout: 264 seconds]
20:49 < questionable> i don't see anything wrong with perl-compatible
regular expressions
20:49 < questionable> .NET regexes are perl 5-compatible and they rock
20:49 < aiju> but they are no regexes
20:49 -!- erus`_ [~chatzilla@host81-159-20-228.range81-159.btcentralplus.com] has
joined #go-nuts
20:49 < questionable> lookahead, lookbehind, single-line mode.  whatever you
want
20:50 < questionable> no cryptic syntax
20:50 -!- hcatlin [~hcatlin@host86-163-247-252.range86-163.btcentralplus.com] has
joined #go-nuts
20:50 -!- hcatlin [~hcatlin@host86-163-247-252.range86-163.btcentralplus.com] has
quit [Changing host]
20:50 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has joined
#go-nuts
20:50 < aiju> haha
20:50 < aiju> how does that look like?
20:50 < aiju> space space digit letter?
20:50 < chomp> no cryptic syntax?  lol they are regular expressions
20:50 < chomp> all regexes are cryptic.
20:50 < questionable> like : (?<=foo)bar(?>blah) i think
20:50 < exch> not really
20:50 < questionable> "bar"
20:50 < questionable> oops
20:51 < questionable> matching "bar" preceeded by "foo" and followed by
"blah"
20:51 -!- erus` [~chatzilla@host86-186-161-219.range86-186.btcentralplus.com] has
quit [Ping timeout: 250 seconds]
20:51 -!- pjacobs [~pjacobs@rrcs-24-73-248-196.sw.biz.rr.com] has joined #go-nuts
20:51 < ww> i've never been bitten by PCRE or by the theoretical worst case
running times of other regex libraries...
20:51 -!- keithcascio [~keithcasc@nat/google/x-qovhphznmnqfbztg] has joined
#go-nuts
20:51 < ww> and i've done a lot of ugly regex-based data munging...
20:52 -!- skelterjohn [~jasmuth@140.Red-88-7-208.staticIP.rima-tde.net] has joined
#go-nuts
20:52 < questionable> regexes can be very graceful
20:52 < angasulino> cheers peeps, going home
20:52 < questionable> tell me, how is this ugly: "gr[ea]y"
20:52 -!- angasulino [c80571e2@gateway/web/freenode/ip.200.5.113.226] has quit
[Quit: Page closed]
20:52 < questionable> or "gr[a|e]y"
20:52 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts
20:52 < questionable> it's beautiful in its simplicity
20:52 < chomp> no it's not, it's just simple./
20:52 < chomp> and you mean gre[ea]y
20:52 < questionable> second one should've been "gr(e|a)y"
20:52 < chomp> ah
20:53 -!- miker2 [~miker2@64.55.31.190] has quit [Ping timeout: 252 seconds]
20:53 < ww> it can get ugly if the data is ugly
20:53 < questionable> how about this: "<html>(.*?)</html>"
20:53 < questionable> beautiful
20:53 < questionable> though it might not work ;D
20:53 < aiju> the worst regex is POSIX regex
20:53 < chomp> beautiful if you don't want to match real html, sure
20:53 < aiju> where [a-z] can match X
20:53 < chomp> heh
20:54 < aiju> s%\\f[BL5]([^\\]+)(\\f.|$)%<tt>\1</tt>\2%
20:54 < aiju> the readability of regex
20:54 < aiju> (it's a sed command, actually)
20:54 < questionable> that's not a PCRE
20:55 < aiju> yes
20:55 -!- hcatlin [~hcatlin@pdpc/supporter/professional/hcatlin] has quit [Quit:
hcatlin]
20:55 < ww> the regexp is kind of like the perl, actually
20:55 < aiju> how could you even tell
20:55 < questionable> PCRE regexes don't have to be that ugly
20:55 < aiju> hahahaha
20:55 < questionable> with ugly things like "\\f", whatever that means
20:55 < skelterjohn> beauty is not a good metric
20:55 < skelterjohn> eye of the beholder, etc
20:55 < aiju> it matches a literal \φ
20:55 < aiju> *\f
20:55 < aiju> in the input data
20:55 < questionable> oh, okay
20:55 -!- erus` [~chatzilla@host81-159-20-228.range81-159.btcentralplus.com] has
quit [Quit: ChatZilla 0.9.87 [Firefox 5.0/20110615151330]]
20:55 < skelterjohn> if you grow used to something, it can become beautiful
to you
20:56 < chomp> here's a rather simple regex im using to decompose some
crappy text formatting "language" one of our ex engineers left us with
20:56 < chomp> [^[\s]+|\[[^]]+\]
20:56 < chomp> it's simple, and yet it kind of makes my brain bleed when i
look at it at first
20:56 < aiju> [\s]
20:56 < aiju> what is this even
20:56 < chomp> it's a .NET regex.
20:56 < questionable> whitespace
20:56 < skelterjohn> \s is whitespace, right?
20:56 < aiju> or [[^]]
20:56 < aiju> wtf?
20:56 < chomp> whitespace character class
20:56 < questionable> not match
20:56 < aiju> ah wait it's different
20:57 < chomp> \[[^]]+\] matches literal [ followed by any non-] character
1+ times, followed by literal ]
20:57 < questionable> escaping [ makes things horrible
20:57 < aiju> i just write literal space, but i guess tastes are different
20:57 < chomp> and it's very simple...  but it looks terrible
20:57 < skelterjohn> chomp: I think it's the mixing of [] and \[\] that make
it difficult to read
20:57 < chomp> skelterjohn yeah.
20:57 < skelterjohn> *makes
20:57 < questionable> to be fair, though, escaping things in c-strnigs can
be horrible
20:57 < chomp> aiju, \s is not a literal space
20:57 < questionable> i agree skelterjohn
20:57 < chomp> it's any whitespace character
20:57 < aiju> granted, space tab
20:57 < chomp> newline
20:57 < chomp> cr, ff
20:57 < ww> questionable
20:58 < aiju> what are cr and ff doing in your input data
20:58 < chomp> there are also unicode whitespace characters
20:58 < chomp> beyond the ascii range
20:58 < aiju> i always pretend these don't exist
20:58 < chomp> and .NET regex is aware of them
20:58 < questionable> aiju: you've never matched across line boundaries?
20:58 < aiju> questionable: well, windows
20:58 < questionable> i do that all the time
20:58 < questionable> oh, sorry
20:58 < questionable> yeah, it'd be lf on unix i guess
20:58 < aiju> i don't write complicated regex
20:58 < questionable> \n
20:59 < questionable> i wish people would standardise a line-ending
20:59 -!- Kahvi [~Kahvi@a91-152-179-229.elisa-laajakaista.fi] has quit [Remote
host closed the connection]
20:59 < questionable> freaking annoying
20:59 < aiju> people have, windows hasn't ;P
20:59 < questionable> i'd vote for just \n.  simple
20:59 < questionable> though irc uses \r\n iirc
20:59 < skelterjohn> it's difficult to convince MS to adhere to standards
20:59 < questionable> i'm not sure why
20:59 < chomp> i use \n on windows
20:59 < chomp> shit even in MSVS
20:59 < aiju> questionable: almost all text protocols use \r\n
20:59 < questionable> msvs keeps adding BOMs to the start of my files
20:59 < ww> some of us use daisywheel printers to read irc
20:59 < questionable> aiju: why?
21:00 < aiju> questionable: no clue
21:00 < questionable> is it a nod to typewriters
21:00 < chomp> that's because they were designed when people used old shitty
terminals that required \r and \n for a proper new line
21:00 < skelterjohn> funny story about MS - i'm at a conference right now
and someone was making a presentation...  half way through the presentation
randomly closes and the computer says "wait while we update the system - do NOT
power off"
21:00 < skelterjohn> and started counting slowly to 100%
21:00 < chomp> because \n was really just line feed, and \r was really just
carriage return
21:00 < skelterjohn> gg ms, you obviously know better than we when the
update needs to happen
21:00 < questionable> yeah, i remember using typewriters
21:00 < chomp> now "Standardized" \n is combined cr/lf
21:00 < questionable> you had to line feed and carriage return lol.  sucked
21:00 < aiju> the problem was speed
21:00 < chomp> with only the lf character
21:00 < aiju> the terminal couldn't do it in one character
21:00 < aiju> because it would fuck up the timing
21:01 < aiju> UNIX solved this nicely
21:01 < questionable> skelterjohn: yeah, windows treats the user like a
moron
21:01 < aiju> the terminal driver just wrote \r\n
21:01 < questionable> to be fair, though, most windows users are morons
21:01 < ww> actually, as late as 1998 we still had at least one machine at
utoronto with a line printer for a console (that needed the carriage return)
21:01 < aiju> most people are morons
21:01 < skelterjohn> windows is good for games, so you can shoot at the
other morons
21:01 < chomp> skelterjohn that's awesome.  windows 7 randomly turns
automatic update back on for me
21:01 < questionable> it's like, "oh wow, you've opened a file windows
doesn't know abuot!!!  you want me to go online and look for an app that can open
this?!"
21:01 < chomp> and then i wake up to find my computer has been rebooted in
the middle of the night
21:02 < questionable> "HEY, YOU JUST CHANGED A FILE EXTENSION!!!!  THE FILE
MIGHT BECOME UNUSABLE.  ARE YOU SUER"
21:02 < questionable> FUCK YOU, WINDOWS
21:02 < aiju> % mv test.^(txt c)
21:02 < aiju> %
21:02 < aiju> no noise
21:02 < KirkMcDonald> IT LOOKS LIKE YOU'RE TRYING TO HURR A DURR
21:02 < questionable> I COULD FUCKING CHANGE IT BACK IN TWO SECONDS
21:02 < skelterjohn> lol
21:03 < questionable> aiju: that's a nice command.  i ought to try *n?x
again
21:03 < questionable> i haven't touched it in years
21:03 < aiju> except it's plan 9
21:04 < aiju> mv test.{txt,c} with bourne shell
21:04 < questionable> oh
21:04 < questionable> that's still nice
21:04 < aiju> the nice thing about ^ is that it's actually string
concatenation with a list
21:04 < chomp> what would be nice is a second level of expansion like mv
*.{h,hpp}
21:04 < aiju> which does some sort of cartesian product
21:04 < questionable> nice
21:04 < aiju> chomp: like DOS?
21:04 < chomp> but that depends on which order the shell decides to expand
21:05 < chomp> that wouldn't work in dos
21:05 < aiju> move *.h *.hpp
21:05 < aiju> doesn't that work?
21:05 < questionable> hmm, don't think so
21:05 < chomp> how on earth could that work
21:05 < skelterjohn> um - i hope not - that would be horribly ambiguous
21:05 < questionable> windows is a bit retarded here
21:05 < questionable> or dos
21:05 < aiju> i think one OS did that
21:05 < aiju> by passing *.h literally and leaving it to the program to
evaluate it
21:05 < aiju> of course it's a horrible clusterfuck in general
21:05 < chomp> mv with pairwise source/target list syntax would be nice
21:05 < skelterjohn> i like that the wildcards don't get into the args
21:05 < aiju> but it allows this one thing!
21:06 < chomp> mv foo1 foo2 bar1 bar2 baz1 baz2
21:06 < aiju> chomp: just write it?
21:06 < questionable> yes, that would be nice
21:06 < chomp> aiju, yeah no shit holmes
21:06 < chomp> JUST SAYING IT WOULD BE NICE OK
21:06 < aiju> this is like four lines of shell script
21:06 < questionable> which revision control systems are you folks using
21:06 < aiju> git and hg
21:06 < ww> RCS
21:06 < questionable> mercurial here
21:07 < skelterjohn> chomp: for f in ['foo', 'bar', 'baz']: exec('mv %s1
%s2'%(f,f))
21:07 < skelterjohn> ?
21:07 < questionable> it seems to me that hg and git > *
21:07 < skelterjohn> :)
21:07 < chomp> i use tar and magnetic tape for revision control
21:07 < aiju> questionable: pretty much
21:07 < questionable> skelterjohn: which language is that?
21:07 < skelterjohn> python
21:07 < questionable> oh okay
21:07 < skelterjohn> i think exec() does what i implied
21:07 < aiju> python is the perl of this decade
21:07 < skelterjohn> i haven't used python in a while
21:07 < chomp> skelterjohn, yes but the problem is that i've written it so
many times (As im sure others have)
21:07 < schmichael> skelterjohn: os.command(...); exec executes python :)
21:07 < chomp> this to me means it should be a standardized feature
21:07 < ww> for f in foo bar baz; do mv ${f}1 ${f}2; done
21:08 < skelterjohn> ah right, thanks
21:08 < aiju> i don't really use anything like that really often
21:08 < questionable> git seems nice and powerful.  i just prefer the
simplicity of mercurial
21:08 < questionable> they both look good though
21:08 < skelterjohn> git could use a simpler UI
21:09 < aiju> hg requires you to clone for every little thing
21:09 < questionable> mercurial has the record extension (shipped with
mercurial) that allows selective committing of individual changes
21:09 < skelterjohn> maybe i should install the new mac UI i heard about
21:09 < aiju> questionable: nice
21:09 < aiju> questionable: have to look at it
21:09 < aiju> there is mq but it is a nightmare
21:09 < questionable> but what do you do in git if you wanna branch; say an
experimental branch
21:09 < skelterjohn> git branch experimental
21:09 < skelterjohn> git checkout experimental
21:10 < chomp> yeah but what do yoiu do in git if you want an ice cream
sundae
21:10 < questionable> can you delete the 'experimental' branch later
21:10 < skelterjohn> git an ice cream sundae yourself, fool
21:10 < questionable> in mercurial, you can do the same thing, as far as i
can tell
21:10 < skelterjohn> questionable: yes
21:10 < aiju> questionable: yes by cloning the entire repo
21:10 < questionable> no, you can create named branches
21:10 < skelterjohn> yeah, hg has branching
21:11 < aiju> "hg branch"?
21:11 < questionable> http://mercurial.selenic.com/wiki/NamedBranches
21:11 < skelterjohn> i don't know how
21:11 < questionable> yeah, 'hg branch'
21:11 < skelterjohn> but i know when you and someone else both commit
something and there is a conflict, it makes branches
21:11 < skelterjohn> and you have to merge things again
21:11 < skelterjohn> and googlecode has a pretty visualization for it
21:11 < aiju> skelterjohn: and you lose all local changes in the progress :\
21:12 < ww> we should really graft branches instead of merging
21:12 < aiju> (or commit them)
21:12 < skelterjohn> ??
21:12 < skelterjohn> what do you mean you lose all local changes?
21:12 < aiju> uncommited changes
21:12 < questionable> it's not really that the conflict makes branches
21:12 < skelterjohn> you have to commit before you can merge
21:12 -!- squeese [~squeese@cm-84.209.17.156.getinternet.no] has quit [Remote host
closed the connection]
21:12 < aiju> skelterjohn: yes
21:12 < aiju> either commit or lose them
21:12 < questionable> it's just the nature of a distributed system that two
lines of development are effectively two branches
21:12 < skelterjohn> aiju: i see, ok
21:12 < skelterjohn> yes you're right
21:13 < aiju> i do hg push -f, pull somewhere else, merge, push
21:13 < skelterjohn> or does hg have anything like stash?
21:13 < aiju> turned out to be the easiest way
21:13 < questionable> hg has something like stash.  i forgot the name
21:13 < questionable> shelf i think
21:13 < aiju> skelterjohn: in this mq extension
21:13 < aiju> but it's way too easy to mess up
21:14 < aiju> i would like to just merge the thing
21:14 < questionable> there's an equivalence table here:
http://mercurial.selenic.com/wiki/GitConcepts#Command_equivalence_table
21:14 < aiju> haha, i'd rather need that to lookup git commands
21:15 < ww> local changes i almost always end up doing 'hg diff > tmp; hg
pull/merge; < tmp patch -p1'
21:15 < questionable> i like that in mercurial you only have to type enough
characters to make your command unambiguous
21:15 < fzzbt> can you access hg repo from git somehow?
21:15 < questionable> like 'hg d' for 'hg diff'
21:15 < aiju> questionable: reminds me too much of openvms
21:15 < ww> fzzbt: yes and vice versa
21:15 < questionable> i say 'hg d|dh', where 'dh' is my DiffHighlight
program
21:15 < fzzbt> how?  do you need a plugin or something?
21:15 -!- pjacobs [~pjacobs@rrcs-24-73-248-196.sw.biz.rr.com] has quit [Ping
timeout: 258 seconds]
21:15 < ww> fzzbt: yes, called hg-git or something similar
21:16 < questionable> i'll show you my DiffHighlight if you wanna see a
simple, clean GUI
21:16 < aiju> you could simply emit console control codes with *nix
21:16 -!- chadkouse [~Adium@rrcs-74-218-87-242.central.biz.rr.com] has quit [Quit:
Leaving.]
21:16 < aiju> but then i personally don't need rainbows to read diffs
21:17 < questionable> this makes reading diffs a million times easier
21:17 -!- dfr|mac [~dfr|work@nat/google/x-nkghijtsvcpxoouj] has quit [Remote host
closed the connection]
21:17 < skelterjohn> i just don't read diffs
21:18 < aiju> just trust the funny commit log
21:18 -!- Fish- [~Fish@9fans.fr] has quit [Quit: WeeChat 0.3.5]
21:18 < questionable> aiju: http://i.imgur.com/MZS9H.png
21:19 < questionable> that's me refactoring terrible duplicate code
21:19 < aiju> looks similar to piping the whole thing into vim
21:19 < questionable> yeah, gvim is my inspiratino.  lol
21:19 < aiju> of course, if you have syntax highlighting enabled, unlike me
21:19 < questionable> my app is better than gvim for this purpose, though.
much handier
21:19 < aiju> hu?  how so?
21:19 < questionable> syntax highlighting is a lifes-aver
21:20 < questionable> -saver
21:20 < aiju> i'm still alive
21:20 < exch> re you sure?
21:20 < exch> *are
21:20 < questionable> i don't get an annoying "wanna save?" if i can't be
bothered to type ":wq!" or ZQ
21:20 < questionable> i can close the app with Esc
21:20 < aiju> *shrug*
21:20 < questionable> i can easily change the syntax highlighting
21:20 < aiju> okay, that's a point
21:20 < questionable> i invoke it with dh rather than gvim -
21:20 < aiju> alias
21:21 < aiju> okay, windows has no such thing, batch files?  no clue
21:21 < questionable> my program recognises more diff formats out of the box
(e.g., git-diff format)
21:21 < questionable> maybe batch files; not sure
21:21 < questionable> i use git-diff format with hg
21:21 < questionable> much better
21:21 < aiju> i just read plain old diff on my terminal, so meh
21:21 -!- PortatoreSanoDiI [~Marvin@82.84.82.124] has joined #go-nuts
21:22 < ww> aiju doesn't even use less
21:22 < questionable> standard diff doesn't support renames etc.
21:22 < ww> aiju uses more
21:22 -!- nicka1 [~lerp@142.176.0.21] has quit [Quit: Leaving.]
21:22 < aiju> ww: i don't even use more
21:22 < skelterjohn> he uses cat
21:22 -!- photron_ [~photron@port-92-201-89-31.dynamic.qsc.de] has quit [Ping
timeout: 240 seconds]
21:22 < skelterjohn> and reads really quickly
21:22 < aiju> huh?
21:22 < aiju> % hg diff
21:22 < aiju> ..  read diff files ..
21:22 < aiju> no, i have a terminal with sensible scrolling behaviour on
plan 9
21:23 < aiju> i use less on lunix, actually
21:23 < questionable> what kind of l33t h4x0r uses an os nobody has even
heard of
21:23 * ww wonders if there's an implicit cat on the end of every command line
21:24 < ww> i've hurd of plan9
21:24 < questionable> i've heard of gnu/hurd
21:24 -!- Project-2501 [~Marvin@82.84.95.200] has quit [Ping timeout: 260 seconds]
21:24 < aiju> hahaha
21:25 < aiju> "an os has to be popular to be good"
21:25 < aiju> are you implying something like that?
21:25 < skelterjohn> how about "an os has to be good to be popular"?
21:25 -!- cafesofie [~cafesofie@pool-173-77-24-106.nycmny.east.verizon.net] has
quit [Remote host closed the connection]
21:25 < questionable> "an os has to be popular to be good" is probably true
21:25 < questionable> depending on the definition of 'popular'
21:26 < ww> ...  and 'good'
21:26 < questionable> like, if it were so unpopular that nobody wanted to
develop it, it'd suck
21:26 < skelterjohn> and "has to be"
21:26 < aiju> questionable: because what?
21:26 < ww> and 'os'
21:26 < skelterjohn> basically the whole thing is nonsense
21:26 < questionable> and user popularity can determine develop popularity
21:26 < questionable> there's no hard-and-fast line rule, however
21:26 < ww> a _ _ _ to be _
21:26 < questionable> s/line /
21:27 < aiju> i don't really care how many people use the OS i use
21:27 < aiju> i do care that i like using the OS i use
21:28 < skelterjohn> i want other people to use the tools i use because it
makes it more likely that someone else will have already done something i need to
have happen
21:28 < questionable> which windowing system are you using, aiju
21:28 -!- meling [~meling@12.238.254.22] has joined #go-nuts
21:29 < questionable> skelterjohn: exactly
21:29 < questionable> the more attention linux gets, the 'better' it gets
21:29 < skelterjohn> um
21:30 < skelterjohn> was that an ironic 'better'?
21:30 < questionable> in some cases, 'better' is actually 'worse', but
that's not always the case
21:30 < skelterjohn> alright, so did you actually say anything, then?  :)
21:30 < questionable> it was an undefined 'better'
21:30 < questionable> the problem is that all words are vague
21:30 < questionable> and life is complex
21:30 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-148-103.clienti.tiscali.it] has
joined #go-nuts
21:31 < aiju> worse is better.
21:31 < aiju> 23:34 < questionable> which windowing system are you
using, aiju
21:31 < aiju> xmonad on lunix
21:31 < aiju> rio on plan 9 (there isn't really a choice)
21:31 -!- mtrichardson [~mtrichard@li22-133.members.linode.com] has left #go-nuts
["Leaving..."]
21:32 < aiju> if you meant windowmanager
21:32 < aiju> my window system is X11
21:32 < kevlar_work> lol.
21:32 < aiju> i almost said there is no choice but there is this g^Hwayland
thingie
21:33 < kevlar_work> bad aiju :P
21:33 < questionable> little unix?
21:33 < aiju> no
21:33 < aiju> "linux and other unix"
21:33 < questionable> okay
21:33 < aiju> although i'm only using linux currently, lol
21:33 < aiju> kind of a habit to type lunix
21:34 -!- PortatoreSanoDiI [~Marvin@82.84.82.124] has quit [Read error: Operation
timed out]
21:34 < questionable> (Stallman: "GNU PLUS LINUX!")
21:34 < questionable> lol
21:34 < aiju> haha
21:34 < aiju> (aiju: "FUCK OFF STALLMAN")
21:34 < questionable> Stallman is a crazy man
21:34 < skelterjohn> used to play q3 with a guy whose nick was lunix
21:34 < aiju> that's an understatement
21:34 < questionable> a genius, but insane beyond belief
21:34 < aiju> genius about what?
21:34 < aiju> EMACS?
21:34 < questionable> just a very intelligent person
21:35 < questionable> that's my hypothesis, anyway
21:35 < skelterjohn> ahead of his time, at least
21:35 < aiju> i can't judge
21:35 < kevlar_work> he says lots of very quotable things, I'm not sure how
much of a genius he is.
21:35 < aiju> all i've read of him was insane
21:35 < skelterjohn> some things seem simple today, but were definitely not
back then
21:35 < questionable> as much as i make fun of him, i think a lot of what he
says is right
21:35 < aiju> i think a lot of what he says is wrong
21:35 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|]
21:35 < questionable> yeah, the guy used to edit printer drivers back in his
university days, to make printers e-mail people when their print jobs were
finished
21:35 < questionable> imagine how goddamn hard that would be back then
21:36 < questionable> i think what he said about pedophilia was pretty weak
21:36 < kevlar_work> probably easier than it would be today; it's the
ingenuity to imagine that it was possible and actually execute that's somewhat
more rare today.
21:36 < questionable> he essentially made a strawman of typical arguments
against pedophilia
21:36 < aiju> pedophilia = GNU software?
21:36 < skelterjohn> i really don't want to talk about stallman and
pedophilia
21:37 < questionable> i like that the guy thinks outside the box though
21:37 < questionable> he's not yet another sheep who just follows the
crowdsd
21:37 < questionable> -d
21:38 < questionable> ("a sheep" sounds weird)
21:38 < aiju> he looks like a sheep
21:38 < aiju> he has more hair than a sheep
21:38 < questionable> that's his intelligence beard
21:38 < questionable> if you're that clever, the beard if inevitable
21:39 < aiju> it's a weak imitation of ken's beard
21:39 < str1ngs> aiju: X11 is a display server not a window manager.  xmonad
is a window manager.
21:39 < aiju> if you're really clever you look like doug
21:39 < aiju> str1ngs: X11 is a window system
21:39 < aiju> str1ngs: read more carefully
21:39 < str1ngs> its a display server
21:39 < aiju> you just made that up
21:39 -!- yogib [~yogib@dslb-188-100-000-172.pools.arcor-ip.net] has quit [Quit:
yogib]
21:40 < questionable> isn't it called "X Window System"?
21:40 < aiju> plan 9 has one thing
21:40 < aiju> rio
21:40 < aiju> period
21:40 < chomp> x11 is a terrible
21:40 < chomp> and it's a protocol, not a window system
21:40 < aiju> haha
21:40 < aiju> NO
21:40 < aiju> IT'S A TRAP
21:40 < questionable> aiju: don't you ever feel like packing it all in and
returning to Windows
21:40 < aiju> questionable: sometimes
21:41 < aiju> then i use windows and whip myself for the thought
21:41 < questionable> i was linux-only for two years at one point
(Mandrake).  i went back to Windows eventually
21:41 < questionable> the borg got me!
21:42 < aiju> the only thing i use windows for is games
21:42 < aiju> if necessary
21:42 < questionable> to be fair, the main reason i went back was that i
wanted to resume my Delphi programming
21:42 < questionable> rather than continue with C++/Qt
21:42 < questionable> Qt was all right; C++ was a PITA
21:43 < aiju> yes it is
21:43 < aiju> but delphi ..  not sure
21:43 < aiju> does delphi have function pointers yet?
21:43 < questionable> C#/.NET is basically Delphi/VCL 2.0
21:43 < questionable> not as far as i know
21:43 < questionable> the .NET version probably does
21:44 < aiju> but anyway, i really need to sleep now
21:44 < questionable> okay night
21:46 < chomp> oh there's a delphi .NET now
21:46 < chomp> ?
21:46 < chomp> not that i ever got too into delphi anyway
21:46 < questionable> yeah
21:46 < questionable> Delphi Prism
21:46 < questionable> i haven't touched Delphi for years, personally
21:46 < questionable> since C# came along
21:46 -!- angasule [~angasule@190.2.33.49] has joined #go-nuts
21:47 < questionable> years ago, Windows programming meant either VB (lol),
VC++ (yuck), Borland C++ Builder (hmm, not bad), or Delphi (best of a bad bunch)
21:47 < chomp> i remember when delphi was new
21:47 < questionable> the only drawback of C++ Builder was that C++ was
involved
21:48 < questionable> i didn't know about it for years.  Delphi had some of
the worst advertising
21:48 < chomp> back in those days i was too young to afford a real compiler
suite
21:48 < questionable> i only knew about C++ Builder
21:48 < questionable> yeah, me too
21:48 < questionable> i'd rely on CDs from magazines
21:48 < chomp> so i used like djgpp and edit
21:48 < questionable> crazy how much the world has changed
21:48 < questionable> now you can update software daily from the 'net
21:49 < questionable> back then, having a five-year-old copy of some
software was great
21:49 < chomp> pfft with go you can update hourly!
21:49 < questionable> my dad's friend used to sell pirate CDs
21:50 < questionable> like, a CD containing Visual C++, 3DStudio Max, and so
on, for like £10
21:50 -!- gridaphobe [~gridaphob@cpe-74-68-151-24.nyc.res.rr.com] has quit [Quit:
Leaving]
21:51 < questionable> pity VC++ sucked so much
21:51 < questionable> MFC was a horrible mess
21:51 < questionable> it was cleaner to use the WinAPI directly
21:52 < questionable> to be honest, though, i think it's a shame that C++
was ever invented
21:53 < chomp> eh, i like C++
21:53 < chomp> it has plenty of drawbacks but it's still powerful.
21:53 < chomp> to be honest there are very few languages i don't like.  :p
21:53 < chomp> perl and ruby.
21:53 < questionable> i'm OCD about languages
21:54 -!- chadkouse [~Adium@rrcs-74-218-87-242.central.biz.rr.com] has joined
#go-nuts
21:54 < chomp> python and javascript.
21:54 < chomp> even those languages are ok.  just not preferential.
21:54 < questionable> i didn't like Smalltalk
21:54 < questionable> annoying, wordy syntax
21:54 < questionable> but it's well designed
21:55 < chomp> i havent played with much smalltalk, but it never looked bad
21:55 < questionable> what i dislike about C++ is that it is two languages
in one
21:55 < chomp> how so?
21:55 -!- tncardoso [~thiago@187.58.6.58] has quit [Quit: bye]
21:55 < questionable> it's C, and it's also C++.  this is, of course,
because Stroustrup designed the language to be popular, not decent
21:55 < chomp> it's C++.
21:56 < chomp> it's not C
21:56 < questionable> is malloc() C++?
21:56 < chomp> malloc is a library function.
21:56 < crest> questionable: 3-4 languages in one.  you forgot the c
preprocessor cuppled with make to a fixed point function
21:56 < questionable> because that will compile with any C++ compiler
21:56 < chomp> that's not language.
21:56 < questionable> it's a C stdlib function
21:56 < chomp> so?
21:56 < crest> *coupled
21:56 < chomp> dubious argument
21:56 < questionable> the stdlib is part of "C++"
21:56 < chomp> we
21:56 < chomp> are talking about languages.
21:57 < chomp> you know what a language is?
21:57 < skelterjohn> you can write C++ like it's C
21:57 < chomp> you can
21:57 < skelterjohn> it used to be a strict subset, but no longer
21:57 < questionable> the fact is, if you're using C++, the libraries you
use, though they may be "written in C++", can do things in many ways
21:57 < crest> skelterjohn: extern "C" { ...  };
21:57 < skelterjohn> it still retains the "feel" that C is part of it, even
if technically that is no longer true
21:57 < questionable> they might return a std::string; they might return a
char*; they return something else (because the first two suck)
21:58 < questionable> C++ is terribly 'designed' (if that word even applies)
21:58 < chomp> what's wrong with std::string?
21:58 < skelterjohn> it's not strong enough - you need std::rope
21:58 < chomp> bahaha.
21:58 < chomp> just use a vector of strings then!
21:58 < chomp> duh.
21:58 < questionable> sorry, i've forgotten the details (it's been years).
i just remember concluding that it was terrible
21:59 < chomp> questionable, well that's a fine argument.  i'm convinced!
21:59 < questionable> it was missing some functionality, i think
21:59 < questionable> it's not an argument
21:59 < crest> skelterjohn: apply it with boost::knot and put the result
around this->neck();
21:59 < skelterjohn> there is a std::rope though, isn't there?
22:00 < questionable> another annoying thing was the stdlib naming
conventions
22:00 < questionable> all lowercase and underscores.  nobody in their right
mind writes OO programs with such a convention
22:00 < questionable> and therefore your code would, the moment you used
another library, end up a complete mess
22:00 < chomp> hah, i never knew about std::rope
22:00 < skelterjohn> it really is just a stronger string
22:00 < chomp> is that actually in the current standard or just the old STL?
22:00 < skelterjohn> it might not be part of std, maybe boost
22:01 < chomp> it's in SGI's docs
22:01 < questionable> there's a new standadr in the works
22:01 < chomp> so it's definitely in stl
22:01 < chomp> but STL != new standard
22:01 < chomp> so i dunno
22:01 < questionable> chomp: ever notice how people say things like "don't
use that feature -- it's evil"
22:01 < questionable> it's because C++ is two languages in one
22:01 < questionable> don't use C features -- they're evil!
22:01 < chomp> no it's not, it's because C++ is a giant language
22:01 < questionable> if they're evil, why on earth are they there in the
first place?
22:01 < questionable> the sign of a badly designed language
22:01 < skelterjohn> it's 30 languages in one
22:01 < chomp> giant, veritably humongous.  it's still ONE language.
22:01 < skelterjohn> there's the C bit, the C++ bit, the templating bit...
22:01 < chomp> just like emacs is ONE text editor even though it contains
multitudes
22:02 < KirkMcDonald> skelterjohn: The preprocessor.
22:02 -!- Dr_Who [~tgall_foo@linaro/tgall-foo] has quit [Quit: ZZZZZzzzzz]
22:02 < skelterjohn> yep
22:02 < questionable> when was the last time you heard someone say not to
use a feature of C#
22:02 < questionable> never
22:02 < skelterjohn> how about this
22:02 < questionable> because it's a decent language
22:02 < skelterjohn> Don't use C#.
22:02 < chomp> i use C#. i like it.
22:02 < chomp> i use C++.  i like it well enough.
22:02 < questionable> C# is the most graceful language i've seen
22:02 < questionable> just beautiful
22:02 < chomp> haskell
22:02 < skelterjohn> o_O
22:02 < skelterjohn> i kind of like go, but that's just me
22:03 < questionable> for what do you use C++?
22:03 < questionable> just wondering
22:03 < chomp> questionable, well i used it for game development for 10
years.  now i'm using C# for that
22:03 < questionable> skelterjohn: i find it hard to use non-OO languages
now
22:03 < questionable> okay
22:03 < kevlar_work> people call python beautiful too, and I hope we can all
agree that figuring out where a tricky bug is in python can be difficult because
they have every piece of sugar imaginable, so nothing may be what it seems.
22:03 < chomp> i would still do low level system programming in C++ or go,
but go isn't exactly always an option
22:03 < skelterjohn> i found the transition pleasant
22:03 < skelterjohn> i like not worrying about class hierarchies
22:03 < skelterjohn> i just write code, instead
22:03 < KirkMcDonald> kevlar_work: Python has every piece of sugar?
22:03 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-148-103.clienti.tiscali.it] has
quit [Quit: E se abbasso questa leva che succ...]
22:03 * exch sets mode +q *@*
22:03 < chomp> lulz
22:04 < chomp> any weakly typed language can only score a max of 3/10 in my
book
22:04 < questionable> skelterjohn: but what if you come across some code
which seems to belong in its own class
22:04 < questionable> and you badly wanna apply the 'extract class'
refactoring
22:04 < skelterjohn> OO is a shoe that you jam an idea into
22:04 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has quit [Quit:
Verlassend]
22:04 < kevlar_work> KirkMcDonald, between the data model, duck typing, etc,
there's very little that they've left out.
22:04 < chomp> sometimes ideas fit into that shoe, sometimes they don't
22:05 < skelterjohn> as for refactoring, i wrote a tool for that
(github.com/skelterjohn/gorf) but i haven't kept it up to date
22:05 < chomp> nice thing about C# is that it's not pure OO.
22:05 < questionable> when they do fit, they fit perfectly
22:05 < chomp> not nice thing about C#, and it's my biggest complaint by
far, is that it doesn't have go interfaces.
22:05 < skelterjohn> really?  what do you mean, because i'm pretty sure
there are java-style interfaces
22:05 < skelterjohn> do you mean no duck-typing?
22:06 < chomp> duck typing.
22:06 < chomp> yeah.
22:06 < questionable> skelterjohn: i'd end up just creating pseudo-OO code
22:06 < questionable> (where relevant)
22:06 < chomp> java-style interfaces are only an inch away from abstract
classes, meh
22:06 < questionable> interesting name for a program: 'gorf'
22:06 < questionable> i know it's "go refactor"
22:06 < skelterjohn> GO ReFactorer
22:06 < kevlar_work> my builder was (is?) gofr
22:06 < kevlar_work> lol
22:06 < skelterjohn> :)
22:06 < questionable> oh, "er"
22:07 < skelterjohn> or -er, nothing official
22:07 < questionable> lol
22:07 < questionable> my last cmd line program was grepm.  i can barely talk
22:07 < skelterjohn> i guess without the "er" it's an imperative 
22:07 < questionable> that's "grep improved".  a bold claim
22:07 < kevlar_work> skelterjohn, lol
22:07 < kevlar_work> that's what you're telling it to do
22:07 < kevlar_work> "go refactor blah.go"
22:07 < questionable> yeah
22:07 < skelterjohn> yes, "imperative" :)
22:08 -!- r_linux [~r_linux@static.200.198.180.250.datacenter1.com.br] has quit
[Quit: Lost terminal]
22:08 < chomp> you know, i want that now
22:08 < chomp> i want a universal go utility dispatch named "go"
22:08 < chomp> go compile this
22:08 < chomp> go build that
22:08 < chomp> go suck an egg
22:08 < chomp> etc
22:08 < questionable> call it 'fucking'
22:08 < skelterjohn> "go fuck yourself"?  O:-)
22:08 < questionable> "fucking compile this"
22:08 < chomp> :)
22:08 < kevlar_work> yeah, I think the gc tooklit should be merged into one
executable.
22:09 < skelterjohn> haha
22:09 < chomp> no fucking is a priority modifier
22:09 < kevlar_work> just because "go compile blah.go" would eb fun.
22:09 < chomp> go slowly compiler <- low priority
22:09 < chomp> go fucking compile <- high priority with warnings off
22:09 < skelterjohn> go carefully compile this <- -Werror
22:09 < kevlar_work> go away // rm -rf $GOROOT
22:09 < chomp> haha
22:09 -!- Wiz126 [Wiz@h229.120.232.68.dynamic.ip.windstream.net] has quit [Ping
timeout: 246 seconds]
22:10 < kevlar_work> for analogy to the language construct, it would have to
do everything in the background :)
22:10 < chomp> haha
22:10 < chomp> who needs stdout anyway
22:11 < skelterjohn> instead of &, prefix w/ "go"
22:11 < kevlar_work> oh no, it use stdout, it just clobbers your shell's.
22:11 < chomp> even better
22:11 -!- Wiz126 [Wiz@h229.120.232.68.dynamic.ip.windstream.net] has joined
#go-nuts
22:11 < kevlar_work> again for analogy to the language construct :)
22:11 < chomp> now we're talking
22:11 < chomp> where's my go operating system
22:11 < chomp> no more processes.  fuck processes.  where we're going, we
don't need processes.  we have goroutines.
22:12 < kevlar_work> $ go compile blah / $ <-go
22:12 < kevlar_work> er, <-compile
22:12 < kevlar_work> funz.
22:13 < questionable> do any of you read Usenet
22:13 < chomp> i try not to
22:13 < questionable> i used to read it years ago.  i started again last
night
22:14 < questionable> it's kinda depressing
22:14 < chomp> yeah don't
22:14 < questionable> reading groups like comp.lang.c
22:14 < questionable> comp.os.linux.advocacy
22:14 < questionable> comp.lang.c = clever people with personality disorders
22:14 < questionable> in fact, that applies pretty much across usenet
22:14 < questionable> minus the "clever" part
22:15 < KirkMcDonald> The trouble is Usenet is that you get the interact
with the sort of person to uses Usenet.
22:15 < KirkMcDonald> s/is/with/
22:15 < KirkMcDonald> s/the/to/
22:16 -!- nekoh [~nekoh@dslb-088-068-016-195.pools.arcor-ip.net] has quit [Quit:
nekoh]
22:16 < chomp> s/to/who/
22:16 < chomp> i finally parsed it!
22:16 < KirkMcDonald> Man, I should really just have tried again.
22:16 < chomp> same problem with IRC< amirite
22:16 < skelterjohn> it was a toughie, for sure
22:16 < KirkMcDonald> Words are hard.
22:16 < questionable> the capitalisation was good, though
22:16 -!- franciscosouza [~francisco@201.7.186.67] has quit [Quit: franciscosouza]
22:17 < KirkMcDonald> This is what happens when I type things without paying
attention to what my fingers think they're doing.
22:17 < questionable> what i don't get is why everyone's using Usenet for
binaries
22:17 < questionable> Usenet is a text medium by design
22:17 -!- sniper506th [~sniper506@rrcs-70-61-192-18.midsouth.biz.rr.com] has quit
[Quit: Leaving...]
22:18 < questionable> and the average person who's even heard of Usenet
thinks it's a binary-distribution medium
22:19 < chomp> i was not aware of that perception
22:19 < chomp> of course when i was 14 usenet *was* a great place to get
porn, so /shrug
22:20 -!- awidegreen [~quassel@h-170-226.a212.priv.bahnhof.se] has quit [Ping
timeout: 260 seconds]
22:20 < questionable> i was about that age when i started using usenet :)
22:21 < questionable> but i used text only.  my pron came from the www
22:21 < chomp> the www didn't really exist for me at that time
22:21 < chomp> i mean it did but it was tiiiiny
22:21 < chomp> and people actually sold directories.  printed indexes of
every website.
22:21 < chomp> that's how tiny it was.
22:22 < questionable> the www was fairly small when i was 14.  i suspect
you're older though
22:22 < chomp> and webcrawler was my search engine.  and i had to manually
put the bits into the tubes and push them out to the internet
22:22 < chomp> we wore onions on our belts, which was the fashion at the
time
22:23 < questionable> i think google existed in my day
22:23 < skelterjohn> webcrawler was an atrocity
22:23 < questionable> can't remember
22:23 < chomp> it was like the only option
22:23 < questionable> it wasn't very big though, if it did
22:23 < skelterjohn> good url though
22:23 -!- chadkouse [~Adium@rrcs-74-218-87-242.central.biz.rr.com] has left
#go-nuts []
22:23 < chomp> but yes it was terrible
22:23 < questionable> which os were you using, chomp?
22:23 < questionable> i was on Windows 95, i think
22:23 < questionable> or Windows 3.1
22:23 < chomp> windows 3.1
22:24 < chomp> my first C compiler was turbo C++ 3.0 for DOS.  on a 386/33.
22:24 < chomp> ah the good old days.  i think it was like 12 floppies.
22:24 < questionable> my first programming was with QBASIC
22:24 < questionable> on a DOS computer
22:25 < questionable> it was pre-installed on DOS i think
22:25 < chomp> yeah i cut my teeth in qbasic on an 8088
22:25 < questionable> to be fair, in school we did 'logo' programming
22:25 < questionable> sorry: logo 'programming;
22:25 < questionable> '
22:25 < chomp> i think everyone must have done that
22:25 < questionable> though that hardly counts
22:25 < chomp> r90
22:25 < questionable> that little goddamn turtle
22:25 < questionable> MOVE RIGHT
22:25 < questionable> or whatever it was
22:25 < chomp> rotate?  or maybe it was "t" for turn
22:27 < questionable> QBasic was great.  i then moved onto Visual Basic
22:27 < questionable> and i was in awe
22:27 < questionable> then i switched to Visual C++, presuming it'd be
'better', but it was terrible
22:28 < questionable> MFC was disastrous
22:28 < chomp> LYCOS that's what i was trying to think of...  christ
22:28 < questionable> i actually quit programming for years because of VC++
22:28 < questionable> oh, lycos
22:28 -!- dsal [~Adium@208.185.212.98] has left #go-nuts []
22:28 < chomp> i actually went from qbasic to x86 assembly to pascal to c to
c++
22:28 < questionable> yeah, i used lycos, alltheweb, altavista, etc.
22:29 < chomp> and stuck mostly with C/C++ and assembly through junior/high
school and most of college
22:29 < questionable> interesting.  i went qbasic, vb, c++, c, asm, delphi
(known as 'object pascal' at the time), c#
22:29 < questionable> after the horrors of VC++, i just went lower and lower
22:29 < questionable> until i hit rock bottom (asm) and found my sanity with
delphi
22:29 < chomp> we need more languages in this world.
22:30 < questionable> asm was just awful
22:30 < chomp> i like assembly code D:
22:30 < questionable> i'd rather have few decent languages than many so-so
ones
22:31 < questionable> i liked the elegance, but actually getting anything
done was brain surgery
22:31 < questionable> if you could get beyond the "hello world" stage, you
were probably a genius
22:32 < chomp> well in those days you didn't really have an option if you
wanted to program video or audio hardware
22:32 < chomp> or hell, even serial mouse input
22:32 < angasule> mode 13h ftw!  :)
22:32 < chomp> ^
22:32 < questionable> hah
22:33 < chomp> ah those days
22:33 < chomp> writing to 0xa0000
22:33 < angasule> I remember when I got my first VGA card, wolfenstein 3D
rocked :D
22:33 < chomp> i better go or soon i'll start reminiscing about the 4k demo
scene too
22:34 < chomp> cheers!
22:34 -!- chomp [~chomp@dap-209-166-184-50.pri.tnt-3.pgh.pa.stargate.net] has quit
[Quit: Leaving]
22:34 < questionable> i used to love doom, and things like that
22:34 < questionable> i sometimes think those games were better than the
ones today, but that's probably just nostalgia
22:35 -!- rlab [~Miranda@91.200.158.34] has quit [Read error: Connection reset by
peer]
22:38 < qeed> how do you pick games today to play there are thousands of
them every month
22:38 < KirkMcDonald> qeed: Easy: TF2 is the best.
22:40 -!- franciscosouza [~francisco@187.105.25.184] has joined #go-nuts
22:41 -!- cafesofie [~cafesofie@ool-18b97779.dyn.optonline.net] has joined
#go-nuts
22:42 < questionable> that's a good point
22:42 < questionable> sometimes, too much choice is overwhelming
22:43 < questionable> i think this about linux.  linux advocates often say
"you have so much choice -- it's great", but it seems to me that there is too much
choice
22:43 < questionable> which do you pick?  gawd knows
22:43 < qeed> distrowatch ranking?  heh
22:45 < questionable> lol
22:47 -!- moraes [~moraes@189.103.188.201] has quit [Remote host closed the
connection]
22:47 < questionable> talking of c++, btw, i think it's a travesty that
people recommend C++ for beginners
22:47 < questionable> what an awful way to start programming
22:48 < nicka> What is your recommended starting language?
22:48 < questionable> i could recommend C#
22:48 < questionable> very clean and elegant
22:49 < questionable> there are so many problems with C++ that recommending
it to beginners is insane
22:49 < nicka> I'm definitely not disagreeing with you
22:50 < questionable> i think only OOP experts should touch C++.  they'll
can see the problems with it
22:50 < questionable> they*
22:50 < questionable> an expert can see the drawbacks of C++ and try to work
around them.  a beginner is swamped
22:55 < KirkMcDonald> My first programming language was BASIC, and later
QBASIC.  From there I went to C++.
22:55 < KirkMcDonald> This was something of a jump!
22:55 < magn3ts> Can anyone give me any idea what challenges I might face
with using WinPcap with Go in Windows?
22:56 < KirkMcDonald> Then from C++ I went to Python, and other things.
22:56 < KirkMcDonald> Java's in there somewhere, too.
22:58 < KirkMcDonald> My point being that my first exposure to OOP was from
teaching myself C++ using the Stroustrup book.
22:58 < KirkMcDonald> This is, on the one hand, insane.  On the other hand,
it taught me a lot about the why and how of things.
22:59 -!- kinofcain [~KinOfCain@h-64-105-141-42.snvacaid.static.covad.net] has
joined #go-nuts
23:00 < questionable> yeah, but i'd argue that learning oop with a decent
language would be better
23:00 < questionable> i, too, learned OOP with C++ (a Herbert Schildt book
23:00 < questionable> i wish i had learned it with python or something
instead
23:00 < KirkMcDonald> After learning C++, picking up OOP in any other
language was trivial.
23:00 < KirkMcDonald> Learning Python was so very easy.
23:00 < questionable> were you a programming beginner when you learned C++?
23:00 < questionable> you said you'd used BASIC and QBASIC
23:01 < KirkMcDonald> I picked up BASIC when I was 8 or so.
23:01 < KirkMcDonald> I would've been about 13 when I started with C++.
23:01 < magn3ts> likewise
23:01 < magn3ts> I had VB6 between QBASIC and C++ though
23:01 < KirkMcDonald> I think I fiddled with VB4 somewhere in ther.
23:01 < questionable> magn3ts: yeah, i went QBASIC, VB6, C++
23:01 < questionable> sorry, VB4
23:01 < KirkMcDonald> there*
23:02 < KirkMcDonald> Later some VB6.
23:03 < questionable> i learned OOP with C++, but it wasn't until i came
across a well-designed language that i could really figure out OOP
23:03 < questionable> that i could really put it into practice
23:03 < questionable> with C++, the programmer fights against the language
23:03 < questionable> we should be fighting against the domain we're
programming for, not against the language
23:05 < KirkMcDonald> Learning C++ was valuable.
23:06 < KirkMcDonald> Not least because I can, in retrospect, look back on
the language and know what madness looks like.
23:06 < questionable> i'm sure, though, that C++ scares off many newbies
23:07 < questionable> which is a shame
23:07 < KirkMcDonald> It didn't scare me off, but only because I didn't know
any better.
23:07 < KirkMcDonald> I had a computer, a compiler, and a book, and plodded
my way through.
23:07 < questionable> yeah
23:07 < questionable> in those days, a book was a very valuable thing.
nowadays, you just need the internet
23:08 < questionable> though some books are great
23:08 < KirkMcDonald> Even with the Internet, books are useful.
23:08 < KirkMcDonald> K&R, for instance.
23:08 < exch> books?  you mean that strange 'paper' thing they used to have?
23:09 < KirkMcDonald> I just bought a thousand-page hardcover the other day,
in fact.
23:09 < exch> that's a hefty one
23:09 < KirkMcDonald> Yes it is.
23:11 < skelterjohn> i had parents who could code
23:11 < skelterjohn> never really used a book except as a reference
23:12 -!- trn [~trn@adsl-065-007-181-160.sip.bct.bellsouth.net] has joined
#go-nuts
23:12 < KirkMcDonald> My dad codes, it's why we had the Stroustrup book
lying around for me to read.
23:12 < KirkMcDonald> He did APL on a dial-up terminal in the 70s.  Fun
times.
23:12 < questionable> i find it hard to do both
23:12 < questionable> i seem to either read about programming, or do
programming
23:13 < skelterjohn> hmm.  certainly i recommend only trying one at a time
23:14 < KirkMcDonald> C++ was also my first real introduction to data
structures.
23:14 < KirkMcDonald> The STL seemed like the best thing ever.
23:15 < skelterjohn> C++ was my starting language, except for a brief (and
over-my-head at the time) foray into hypertalk
23:15 -!- chomp [~chomp@c-67-186-35-69.hsd1.pa.comcast.net] has joined #go-nuts
23:21 -!- aat [~aat@rrcs-184-75-54-130.nyc.biz.rr.com] has quit [Ping timeout: 255
seconds]
23:25 < magn3ts> Does "C" not exist in the Windows port?
23:26 < exch> magn3ts: If you refer to 'import "C"', then 'C" is not an
actual package.  it's a special name recognized by the cgo compiler and only it
can deal with that
23:26 < exch> you are probably giving your files to the go compiler instead
of cgo
23:27 < exch> in the makefile use: CGOFILES = foo.go instead of GOFILES =
foo.go
23:27 < magn3ts> Oh, I was using `gd` in Linux and hadn't paid attention to
what it was doing behind the scenes.
23:27 < skelterjohn> gb works in windows :)
23:29 < magn3ts> :S gb, gd, too many choices.
23:29 < exch> descriptive names ftw :p
23:30 < kevlar_work> gofr ftw!
23:30 < magn3ts> Is "gb" to steal the possibly overly used word from ML,
more "idiomatic" ?
23:30 < skelterjohn> the go team wants you to use goinstall
23:30 < skelterjohn> kevlar_work: wants you to use gofr
23:30 < kevlar_work> :D
23:30 < skelterjohn> and i want you to use gb
23:31 < kevlar_work> though gofr support for cgo is currently busted.
23:31 < kevlar_work> so.
23:31 < skelterjohn> i recommend you try it out, and then decide if you like
it or not
23:31 < magn3ts> last time I looked, goinstall was a bit behind in terms of
just hitting "gd" and letting it works it's magic
23:31 < kevlar_work> Don't get too attached to it, because when gomake comes
out, you'll probably want to switch to that.
23:31 < skelterjohn> magn3ts: I agree - i think goinstall is not convenient
to use for local projects
23:31 < kevlar_work> I don't know about gb, but I'll probably either do
something different with gofr or abandon it.
23:32 < skelterjohn> i started to abandon gb, but then i got tired of
waiting for the new gomake
23:32 < kevlar_work> (when gomake hits someday)
23:32 < skelterjohn> and my projects still needed to compile
23:32 < magn3ts> meh, compilation, not necessary
23:32 < kevlar_work> skelterjohn, can't gb generate idiomatic makefiles for
your project?
23:32 < skelterjohn> yes
23:33 < skelterjohn> why did you prefix that with "can't"?  :)
23:33 < kevlar_work> yeah, that's something gofr's predecessor did but got
deleted.
23:33 < kevlar_work> skelterjohn, well, you could use that to migrate to
just using "make" if you *really* wanted to abandon it ;-)
23:33 < skelterjohn> aha
23:33 < magn3ts> Do you guys use cygwin bash under windows?  I get fork/exec
acceess is denied when cgo tries to invoke gcc.
23:34 < kevlar_work> lol.  I wouldn't know, I don't use windows.
23:34 < skelterjohn> magn3ts: gb works in the dos shell
23:34 * magn3ts grumbles about building gb
23:34 < skelterjohn> with no cygwin/ming/msys install
23:34 < skelterjohn> doesn't need make to build either, install.js
23:35 < magn3ts> what will run that though?
23:35 < skelterjohn> 6g, 6l
23:35 < skelterjohn> you can also just compile it by hand,leaving out doc.go
and gb_test.go
23:36 < magn3ts> oh I'm just going to grab mercurial through cygwin and
goinstall it
23:36 < skelterjohn> goinstall + windows = problems
23:36 < skelterjohn> in my limited experience
23:37 < skelterjohn> might have been improved / you might have better luck
23:37 < skelterjohn> i'm not a windows adept
23:38 < magn3ts> Nothing is as easy as it should be with windows
23:38 < skelterjohn> i gave it an honest try for my internship this summer
23:38 < kevlar_work> that's why I don't use it.
23:39 < kevlar_work> though to be fair, outside of power-user things like
the command-line, windows 7 is noticably better.
23:39 < skelterjohn> i got almost everything working - couldn't use
goinstall (but i could download/build them manually)
23:39 < skelterjohn> but i absolutely could *not* get go + opengl working
23:39 < magn3ts> yes, I mean from a dev esp cross platform standpoint
23:39 < skelterjohn> so i put linux on my work machine
23:40 < skelterjohn> everything was so easy
23:40 < magn3ts> So how do I invoke install if I lack make?
23:40 < skelterjohn> for gb?  install.js is a script
23:40 < magn3ts> ltr magn3ts
23:40 < skelterjohn> i assume you can...  execute it, somehow
23:41 < skelterjohn> i didn't write it
23:41 < skelterjohn> or do you mean for go overall
23:41 -!- cbeck [cbeck@gateway/shell/pdx.edu/x-nytsedbuyjluzhcc] has quit [Ping
timeout: 260 seconds]
23:43 -!- cbeck [cbeck@gateway/shell/pdx.edu/x-tbpiqnlqjdzfzqrr] has joined
#go-nuts
23:43 < magn3ts> wow, running gb yielded "Could not find 'make' in path" and
then a complaint about goroutings in deadlock and then a runtime dump
23:43 < magn3ts> lol
23:44 < skelterjohn> eek
23:44 < skelterjohn> the thing about make is a warning, and doesn't affect
anything else
23:44 < skelterjohn> i'd like the stack trace, though
23:45 < skelterjohn> i don't have a windows machine, so it's hard for me to
test regularly
23:46 < magn3ts> skelterjohn, http://pastie.org/2215226
23:46 < skelterjohn> goroutine deadlock seems strange - off the top of my
head i don't think any are spawned by default
23:47 < magn3ts> ls
23:47 < skelterjohn> it happens in the path/filepath package
23:47 < skelterjohn> hmm - i bet it's me not reading the error chan for the
path walker
23:47 < skelterjohn> i'll investigate
23:47 < magn3ts> lol, it looks like cgo is hardcoding the slash for gcc.
23:48 < magn3ts> C:/cygwin/bin\gcc.exe
23:48 < skelterjohn> windows shouldn't care if it's a / or a \
23:48 -!- clr_ [~colin@c-67-183-138-2.hsd1.wa.comcast.net] has quit [Ping timeout:
246 seconds]
23:50 < magn3ts> I wonder if I need a non-cygwin gcc
23:50 -!- clr_ [~colin@c-67-183-138-2.hsd1.wa.comcast.net] has joined #go-nuts
23:53 -!- niemeyer [~niemeyer@12.236.237.2] has quit [Quit: Leaving]
23:54 < skelterjohn> magn3ts: found the problem - i guess no one had ever
had an error while running filepath.Walk before
23:54 < skelterjohn> either that or no one cared to tell me about it
23:54 < skelterjohn> i'll push a fix in a minute
23:55 < magn3ts> I'm beginning to wonder if cross compiling would be easier.
This is how it always go when I start getting to the, maybe I can pkg this for
windows, part.
23:56 < skelterjohn> i don't think you'll have much luck cross compiling a
cgo pkg for windows
23:56 -!- moraes [~moraes@189.103.188.201] has joined #go-nuts
23:56 < skelterjohn> i pushed the gb fix, i'd appreciate it if you pulled
and let me know if it works or not
23:57 -!- miker2 [~miker2@pool-108-16-20-28.phlapa.fios.verizon.net] has joined
#go-nuts
23:57 < brandini> I wonder if the michael nelson who did goforms is the same
mike nelson I went to high school with
23:58 -!- gnuvince [~vince@ip-96-43-233-174.dsl.netrevolution.com] has joined
#go-nuts
23:59 < magn3ts> skelterjohn, :/ is there an easy way to get a snapshot
without installing merc?
23:59 < skelterjohn> install git?  :)
--- Log closed Fri Jul 15 00:00:01 2011