--- Log opened Sat Feb 12 00:00:05 2011 00:00 -!- pharris [~Adium@rhgw.opentext.com] has quit [Remote host closed the connection] 00:17 -!- zweilever [~ziller@187.196.189.72.cfl.res.rr.com] has joined #go-nuts 00:19 < plexdev> http://is.gd/Vh4hTM by [Rob Pike] in go/src/pkg/strconv/ -- strconv/ftoa: avoid a double shift. (shifts by variables are expensive.) 00:25 < plexdev> http://is.gd/HaMkMK by [Robert Griesemer] in go/src/cmd/gofmt/ -- gofmt: exclude testcase with incorrect syntax 00:30 -!- zweilever [~ziller@187.196.189.72.cfl.res.rr.com] has left #go-nuts ["Leaving"] 00:38 -!- wrtp [~rog@92.17.93.139] has quit [Quit: wrtp] 00:55 -!- Tuller [~tuller@c-69-143-52-174.hsd1.va.comcast.net] has quit [Remote host closed the connection] 01:02 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has joined #go-nuts 01:02 -!- mode/#go-nuts [+v iant] by ChanServ 01:13 -!- saturnfive [~saturnfiv@210.74.155.131] has joined #go-nuts 01:18 -!- JusticeFries_ [~JusticeFr@173-8-247-218-Colorado.hfc.comcastbusiness.net] has joined #go-nuts 01:21 -!- JusticeFries [~JusticeFr@173-8-247-218-Colorado.hfc.comcastbusiness.net] has quit [Ping timeout: 260 seconds] 01:22 -!- JusticeFries_ [~JusticeFr@173-8-247-218-Colorado.hfc.comcastbusiness.net] has quit [Ping timeout: 240 seconds] 01:23 -!- vzx [~ryan@74-129-201-27.dhcp.insightbb.com] has quit [Ping timeout: 250 seconds] 01:23 -!- iant1 [~iant@216.239.45.130] has joined #go-nuts 01:23 < rl> If you have some function publishing data and you want to have the option to have multiple listeners what is the convention? Does the publisher provide a channel of channels which you can read from when you need a new channel for a subscriber? 01:24 -!- boscop [~boscop@g225224043.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 01:24 < rl> i might just be looking for an excuse to make a channel of channels 01:25 -!- iant [~iant@adsl-71-133-8-30.dsl.pltn13.pacbell.net] has quit [Ping timeout: 240 seconds] 01:25 < KirkMcDonald> rl: Maybe have the publisher push the data to a channel as normal, then something else which listens to that channel and multiplexes it as you require. 01:26 -!- mode/#go-nuts [+v iant] by ChanServ 01:30 < cenuij> I don't see an obvious way using existing packages to chop a word into a slice of bytes, should I just shift into each byte? 01:31 < rl> So I'd have to pass around some object which keeps track of it anyway I guess 01:31 < KirkMcDonald> cenuij: []byte(s) should work. 01:31 < rl> I thought perhaps I could give a channel of channels to the publisher and it would read from this 01:32 < rl> And any subscribers could publish the channel they listen on to that channel 01:32 < rl> Or perhaps that was what you were thinking the something else would do as well 01:33 < cenuij> rl, there's a few packages with a publish/subscribe methodology using channels, http://code.google.com/p/go-router/ for one, there's more I'm sure... maybe the code will be useful 01:34 < rl> cool, I'll have a look 01:36 -!- vzx [~ryan@74-129-201-27.dhcp.insightbb.com] has joined #go-nuts 01:37 < cenuij> KirkMcDonald: yeah thanks, I guess just doing buf := make([]byte, x) ... buf[i] = byte(val >> x) should be fast enough, just didnt see anything specific but looking at the encoding/binary package it does a lot of bit shifting in a similar fashion. 01:39 < rl> So if I have the choice between passing around an object which has a Register(listener channel string, event Event), which will make the publisher publish the given event type to that channel 01:39 < rl> Or passing around a channel which you can write objects that contain the listener + event to 01:39 < rl> (Which, writing to, will have the same effect to on the publisher) 01:40 < rl> Ok, actually writing this I realize I'm asking a question to which the answer is "it depends" 01:40 < cenuij> ^^ 01:41 < rl> So I guess now that I have two possible ways of doing it I'll go through the mental gymnastics of figuring out which works better in my case. 01:42 -!- Eridius [~kevin@unaffiliated/eridius] has quit [Ping timeout: 276 seconds] 01:56 -!- dforsyth_ [~dforsyth@bastion.inap.yelpcorp.com] has quit [Quit: Computer has gone to sleep.] 01:57 -!- tvw [~tv@e176000031.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 02:02 -!- skelterjohn [~jasmuth@c-68-45-238-234.hsd1.nj.comcast.net] has joined #go-nuts 02:13 < erus`> about 8 hours into my interpretter and it doesnt print hello world yet 02:15 -!- vice_virtue [~vice@220-253-14-193.VIC.netspace.net.au] has joined #go-nuts 02:16 < vice_virtue> Why does GOMAXPROCS default to 1? 02:17 < vice_virtue> on gc 02:24 -!- dforsyth [~dforsyth@ec2-184-72-3-134.us-west-1.compute.amazonaws.com] has quit [Quit: leaving] 02:24 < cenuij> why would it not? 02:24 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has joined #go-nuts 02:30 < cenuij> vice_virtue: depending on platform, you've a number of options. e.g. linux: less /proc/cpuinfo 02:31 < cenuij> vice_virtue: also there's a package that will report your cpu stats: http://bitbucket.org/jpoirier/cpu 02:31 < cenuij> but the performance of your app may or may not change 02:32 < cenuij> *shrug* 02:32 < vice_virtue> thanks, cenuij, it seems like the sort of thing which should default to the number of CPU threads available 02:32 -!- mcspring [3dacf164@gateway/web/freenode/ip.61.172.241.100] has joined #go-nuts 02:32 < vice_virtue> in a part of my app it is relevant 02:32 < vice_virtue> (computing some RSA and DSA key pairs simultaneously - very CPU bound) 02:33 < Namegduf> There's no upper limit on "CPU threads available" 02:34 < Namegduf> Go spawns them up to the limit of GOMAXPROCS. 02:34 < Namegduf> You might mean "number of CPU cores". 02:34 < cenuij> logical i.e. "available" cores 02:35 < vice_virtue> Namegduf, I would call those OS threads 02:35 < Namegduf> That's not what an OS thread is. 02:36 < vice_virtue> what's a better term for them? 02:36 < Namegduf> "CPU core" 02:36 < vice_virtue> mmm 02:36 < Namegduf> OS threads are the things scheduled by the OS on them 02:36 < vice_virtue> you might have one core which is hyperthreaded... I'd say you have two cpu threads 02:37 < Namegduf> You can say that if you like but that's not what "thread" means. 02:37 < Namegduf> "In computer science, a thread of execution is the smallest unit of processing that can be scheduled by an operating system. It generally results from a fork of a computer program into two or more concurrently running tasks." 02:38 < Namegduf> That's specific to OS threads (not true for userland threads), but otherwise right enough 02:38 < Namegduf> Threads are the things scheduled on the CPU, not the CPU's capability for simultaneous execution. 02:39 < cenuij> hence, I think as the local OS describes them "logical cores" seem more appropriate 02:39 < mdxi> HT procs can't actually dispatch two contexts at exactly the same time anyway. they can just come REALLY CLOSE by having extra silicon to store a lot of state. 02:39 < mdxi> i think, on average, you get about 1.6 contexts "concurrently" on an HT core 02:39 < Namegduf> I'm not sure why Go doesn't default to that. Hard to determine? 02:40 < vice_virtue> logical cores works for me 02:40 < cenuij> without trying to stray too far from vice_virtue question: there was some discussion on the list in the last while about how the runtime schedules goroutines 02:40 < skelterjohn> I just set GOMAXPROCS to 2 in my .bashrc 02:40 < vice_virtue> I think HT comes close enough for one hyperthreaded core to be considered two logical cores 02:41 < Namegduf> I think HT is exposed to the OS as two cores, so "two logical cores" fits with that. 02:42 < skelterjohn> what is hyperthreading, anyway? 02:42 < skelterjohn> is it the interleaving of instructions from two processes? 02:43 < skelterjohn> and taking advantage of the time it takes them to complete, somehow? 02:43 < vice_virtue> I wonder if the Linux kernel treats hyperthreaded cores differently... there can be implications on cache thrashing. The machine I'm on has 4 hyperthreaded cores, it would be best for some apps to be on separate cores entirely and some apps to be on the same core 02:43 < cenuij> vice_virtue: may be of interest given the current discussion; https://groups.google.com/group/golang-nuts/browse_thread/thread/bb4044012c5cf871 02:43 < vice_virtue> skelterjohn, the way I understand it, Hyperthreading essentially allows a CPU core to quickly switch between contexts 02:43 < vice_virtue> by storing two CPU contexts per core 02:43 < skelterjohn> i see. also useful. 02:43 < vice_virtue> but... I'll go look it up 02:44 < vice_virtue> yeah, seems to be correct 02:44 < vice_virtue> thanks, cenuij 02:45 < skelterjohn> at the bottom ian mentions that GOMAXPROCS will probably go away at some point 02:45 < cenuij> makes sense 02:46 < cenuij> I'd assume the scheduler will improve 02:46 < skelterjohn> though...i like the ability to easily limit the number of cores that my program will use at a given instant 02:47 < skelterjohn> without relying on extra code to do it 02:47 < cenuij> I think that can be done on most platforms anyway though 02:47 < skelterjohn> oh yeah? 02:47 < skelterjohn> how can you do it, for instance, on ubuntu 02:47 < skelterjohn> (the os of my lab's shared machine) 02:47 < mdxi> i wasn't trying to be distracting. i just sat back down and thought the conversation was more about hardware specifics. for all practical purposes, HT cores are "real" cores, yeah :) 02:49 < skelterjohn> apparently "ulimit" 02:50 < cenuij> skelterjohn: I assume Solaris & BSD derivations have the equivalent of 'taskset' 02:50 < cenuij> from a linux pov 02:51 < cenuij> dunno about other nixes 02:55 -!- jumzi [~none@c-89-233-234-125.cust.bredband2.com] has joined #go-nuts 03:07 -!- adu [~ajr@softbank220043138128.bbtec.net] has joined #go-nuts 03:09 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has quit [Quit: Computer has gone to sleep.] 03:10 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has joined #go-nuts 03:13 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has quit [Remote host closed the connection] 03:13 -!- mcspring [3dacf164@gateway/web/freenode/ip.61.172.241.100] has quit [Quit: Page closed] 03:21 -!- erus` [~tommo@host86-135-162-107.range86-135.btcentralplus.com] has quit [Ping timeout: 240 seconds] 03:36 -!- hcl2 [~akuma@75.41.110.112] has quit [Ping timeout: 240 seconds] 03:59 -!- vice_virtue [~vice@220-253-14-193.VIC.netspace.net.au] has quit [Ping timeout: 240 seconds] 04:03 -!- sav [~lsd@189001131052.usr.predialnet.com.br] has joined #go-nuts 04:07 < mdxi> i'm still in the process of slowly absorbing the Tutorial and Effective Go (and, at times, the spec, which has been more helpful than either of those in answering some of my questions) 04:07 < mdxi> but so far i'm really liking things 04:08 < jumzi> I felt like a child on christmas after reading the tutorial and effective go 04:08 < cenuij> I felt like the smug bastard who hated on C++ and skipped every lecture related to that 04:10 < cenuij> only to realise that my smugness is dwarfed by the expressive go 04:14 -!- vice_virtue [~vice@220-253-14-193.VIC.netspace.net.au] has joined #go-nuts 04:15 < cenuij> Describe more with less, safe supposition for a language? 04:20 -!- rejb [~rejb@unaffiliated/rejb] has quit [Ping timeout: 276 seconds] 04:21 -!- vice_virtue [~vice@220-253-14-193.VIC.netspace.net.au] has quit [Ping timeout: 240 seconds] 04:30 < mdxi> well, describing more with less (more syntactic sugar and work on the runtime's part instead of mental overhead and work on the programmer's part) is a defining design element of modern dynamic languages 04:30 < mdxi> and to me, Go looks an *awful* lot like a Python-flavored update of C 04:31 < mdxi> so i agree 04:31 < plexdev> http://is.gd/aREpjZ by [Ken Thompson] in go/src/cmd/5l/ -- 5ld: part of 64bit eor - forgot to check in. 04:31 < Namegduf> Go isn't very big on syntactic sugar 04:31 < Namegduf> And it isn't very fond of terseness over clarity/simplicity, which is a big trend in modern "dynamic languages" 04:31 < Namegduf> So I don't agree, really. 04:32 < Namegduf> It seems like an update of C with simplicity and safety, as well as speed, as goals, which implements things associated with higher level languages when they have proven gain to those. 04:33 < Namegduf> "More with less" is overrated, IMO 04:34 < jumzi> i agree, its like object to some extent... its been oversold 04:34 < Namegduf> There's more to readability than terseness. 04:35 < |Craig|> To me, Go feels like Cython, with one key difference. Instead of tidy or fast, its tidy and fast. 04:35 < Namegduf> And most of the ways things tend to go for terseness negatively impact readability in other ways. 04:36 < Namegduf> Go often forces more boilerplate or a few lines instead of one, but it has much simpler syntax and blocks as a whole are more readable. 04:37 < Namegduf> I would call it "tidy" 04:37 < Namegduf> That's a nice way to put it. 04:39 < |Craig|> Go code is low in pointless stuff. While some things are several lines, those likes are short, and the line breaks are useful. I haven't seen a lot that actually adds a lot of needed characters. 04:40 < Namegduf> Yeah. 04:40 < Namegduf> It reduces length by removing meaningless stuff but not by trying to compact stuff that has meaning. 04:41 < exch> ^perl 04:41 < jumzi> i never tooke 04:41 < jumzi> d the time to learn perl 04:42 < jumzi> but i've heard its no loss 04:42 < |Craig|> compared to my code in other languages, my code in Go tends to have much shorter and more consistent line lengths. I often had lines of python code wrapped 5+ times though... 04:43 < jumzi> to call go pythonized c is abit of heresy 04:43 < exch> I recently read an old quote about perl that probably gets the point across best "Perl: the only language that looks the same before and after RSA encryption." 04:43 < Namegduf> TechCrunch described it as C++ meets Python. 04:43 < jumzi> goroutines and message passing ala csp doesn't exist in python? 04:43 < Namegduf> It was awful 04:44 < jumzi> c++ meets python? :P they must have spent a whole 10 mins with the language 04:44 < Namegduf> Less. 04:45 < Namegduf> Ten minutes is more Ars Technica level research. 04:47 < jumzi> does that even qualify to a blog post then? 04:47 < mdxi> i think anyone who's passably familiar with Python will see its influence on syntax. no semicolons. "range" to loop over data. the slice syntax. python-style map (aka dict) indexing. 04:47 < mdxi> rather fewer people are likely to notice that goroutines are basically Modula-2's coroutine design (because it was a great one) 04:48 < Namegduf> Go originally had semicolons. 04:48 < mdxi> and that := for assignment is also Modula-2 04:48 < mdxi> go still does formally. 04:48 < Namegduf> And their removal was considered more in general. 04:48 < mdxi> what other language generally doesn't use them, though? python. what's used everywhere at google? python. 04:48 < mdxi> it's not a dirty word :) 04:48 < Namegduf> Well, lesse. 04:49 < Namegduf> Ruby, Perl, optional in JavaScript... 04:49 < Namegduf> "Pretty much every 'dynamic' language" 04:49 < mdxi> Perl requires semicolons 04:49 < jumzi> 6 04:49 < Namegduf> Correction noted. 04:50 < |Craig|> in scheme and sml I don't remember very many semicolons 04:50 < Namegduf> I think they took some good ideas, fair enough 04:50 < Namegduf> While leaving bad ones, like dynamic typing 04:50 < Namegduf> And a complete lack of any static checking of anything 04:51 < Namegduf> Both of which are common in "dynamic" languages. 04:51 < davisp> who took good ones and left bad ones? 04:52 < Namegduf> Go. 04:52 < davisp> How do you mean complete lack of static checking? 04:56 < Namegduf> Pretty much what I said. 04:57 < davisp> I'm fairly new to Go, but this small program fails to compile because of a cast error, am I missing something more subtle? http://friendpaste.com/7jsoylTqqjWBxj7W2Nf5cE 04:58 < mdxi> you're trying to assign a floating-point value to a variable you've defined as type int 04:58 < mdxi> you can't do that in a strictly-typed language 04:58 < mdxi> you have to make the value types and variable types match up 04:58 < davisp> mdxi: Correct, but that's an assertion that Go is statically checked 04:59 < Namegduf> Right, it is. 04:59 < davisp> Which is what? 04:59 < mdxi> oh, sorry. i didn't catch that this was related to the above. i was just stoked that i could answer the question :) 04:59 < Namegduf> "I think [Go] took some good ideas... while leaving bad ones like... a complete lack of any static checking" 04:59 < davisp> Namegduf: Maybe I misunderstood but I thought that you were saying it lacked static checking 04:59 < Namegduf> Yes, you did. 05:00 < adu> davisp: try int(1.12) 05:00 < adu> or perhaps 1 05:00 < Namegduf> Sorry if it wasn't clear. 05:00 < |Craig|> is there a list of options for the compilers, 6g in my case, somewhere. I found -B mentioned somewhere, which does make a difference (apparently it disables bounds checking, and makes my code a little bit faster), but I can't find any official docs 05:01 < Namegduf> There is, but -B is undocumented. 05:02 < davisp> I know what I'm doing to cause that error, but I was asking about the assertion that Go isn't statically type checked when everything I've read made me think otherwise 05:02 < davisp> Makes me think I'm missing something important 05:02 < Namegduf> Go IS statically type checked. 05:02 < |Craig|> Namegduf: where? http://golang.org/cmd/6c/ has none, http://golang.org/cmd/cc/ also has none, and I see no man page 05:02 < Namegduf> I did not assert that 05:02 < Namegduf> You misread what I was saying 05:02 < davisp> Oh 05:02 < davisp> That's what I was asking 05:02 < davisp> What's missing static checking? 05:02 < Namegduf> Python. 05:03 < davisp> Ahhh 05:07 < jessta_> |Craig|: http://golang.org/cmd/6g/ " The flags are documented in ../gc/doc.go." 05:07 < |Craig|> jessta_: ah, missed that skimming the page. Thanks 05:08 < jessta_> |Craig|: hmmm...but that doesn't mention -B either 05:09 < jessta_> maybe it's hiding because it's generally a bad idea 05:09 < Namegduf> It isn't documented, yeah 05:11 < |Craig|> I wonder how they got "../gc/doc.go" for the path to $GOROOT/src/cmd/gc/doc.go 05:21 < jessta_> perhaps it movied 05:21 < jessta_> *movied 05:21 < jessta_> *moved, damn it 05:30 -!- adu [~ajr@softbank220043138128.bbtec.net] has quit [Quit: adu] 05:37 -!- niemeyer_ [~niemeyer@201-14-240-9.pltce701.dsl.brasiltelecom.net.br] has quit [Ping timeout: 240 seconds] 05:46 -!- 50UAACLHA [~keithcasc@nat/google/x-icpfibefxjbxigsb] has quit [Quit: Leaving] 06:01 -!- aho [~nya@fuld-590c7c59.pool.mediaWays.net] has quit [Quit: EXEC_over.METHOD_SUBLIMATION] 06:15 -!- Eko [~eko@c-24-5-127-87.hsd1.ca.comcast.net] has joined #go-nuts 06:17 < Eko> What's the easiest way to get the OS that a go app is running under? 06:17 < Eko> os.Environ and look for GOARCH? 06:18 < Eko> or Getenv, I guess 06:18 < Eko> Basically I'm trying to determine if I should be running chromium-browser or /Applications/Google Chrome.app 06:20 < Namegduf> runtime.GOOS 06:22 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has joined #go-nuts 06:24 -!- sav [~lsd@189001131052.usr.predialnet.com.br] has quit [Quit: Leaving] 06:55 -!- ExtraSpice [~XtraSpice@78-62-101-194.static.zebra.lt] has joined #go-nuts 06:58 < cenuij> [07:20] <Eko> Basically I'm trying to determine if I should be running chromium-browser or /Applications/Google Chrome.app 06:59 < cenuij> Eko: yesterday I might say something different. 07:01 < cenuij> Eko: you want an "app store" 07:02 < cenuij> ? 07:02 -!- photron [~photron@port-92-201-24-107.dynamic.qsc.de] has joined #go-nuts 07:02 < cenuij> yes/no 07:02 < cenuij> maybe 07:03 < cenuij> well here's the the thing from my dev/culture shock. 07:03 < cenuij> any trollteck/.nokia? 07:03 < cenuij> so my take... 07:04 < cenuij> I will now never write anyting for your "platform" 07:04 < cenuij> I dont want silverlight 07:05 < cenuij> and 300k developers dont want silverlight 07:06 < cenuij> As far as I'm aware, the best thing should be share holder takeover 07:06 < cenuij> elop is a fucking patssy 07:08 < cenuij> noki makes the best hardware in the world, why would you pass that to the weat window mobile?> 07:08 < jumzi> hmm... nokia is dead 07:08 < cenuij> no 07:09 < cenuij> Nokia will live 07:09 < jumzi> as a small shop in helsinki 07:09 < cenuij> for maybe 2 years 07:10 < cenuij> then MS will rape them in court 07:10 < jumzi> MS wont have to 07:10 < jumzi> they'll be dead in 2 years anyway 07:10 < cenuij> nobody wants to use windows 07:10 < cenuij> they have to use nokia to get there 07:10 < cenuij> its fuckginh pathetic 07:11 < cenuij> Hi Finland! 07:11 < cenuij> # 07:12 < cenuij> Do you welcome your dhitty r& d overl,ords? 07:14 < cenuij> might as well call your next "device": The volvo safety device! 07:14 < cenuij> who was it? the norwegian or the sweedws thart kidnapped people? 07:15 < cenuij> who is the swedish prime minister? 07:16 < cenuij> why did sweden agreee to kidnap people outside of international law? 07:17 < cenuij> Why was Sweden at the heart of the rendition process with no judicial review? 07:18 < jumzi> i have no idea, and i live in Sweden 07:18 < jumzi> Well i know who the "prime minister" is 07:20 -!- davvid [~davvid@208-106-56-2.static.dsltransport.net] has joined #go-nuts 07:24 -!- Kashia [~Kashia@port-92-200-74-207.dynamic.qsc.de] has quit [Read error: Operation timed out] 07:30 -!- Kashia [~Kashia@port-92-200-9-134.dynamic.qsc.de] has joined #go-nuts 07:34 * Eko points out that none of this is on topic. 07:35 < Eko> Namegduf: Thanks! No idea how I missed that, lol 07:46 -!- gits [~gits@77.94.219.158] has joined #go-nuts 07:48 < |Craig|> Go's png package gets better compression than apple's preview application apparently. Either that or preview is hiding other data in there. 07:48 -!- ShadowIce [~pyoro@unaffiliated/shadowice-x841044] has joined #go-nuts 07:58 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has joined #go-nuts 08:04 -!- davvid [~davvid@208-106-56-2.static.dsltransport.net] has quit [Ping timeout: 260 seconds] 08:06 -!- tensorpudding [~user@99.23.127.179] has quit [Remote host closed the connection] 08:09 -!- tensorpudding [~user@99.23.127.179] has joined #go-nuts 08:16 -!- davvid [~davvid@208-106-56-2.static.dsltransport.net] has joined #go-nuts 08:27 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 08:40 -!- kashia_ [~Kashia@port-92-200-23-111.dynamic.qsc.de] has joined #go-nuts 08:42 -!- Kashia [~Kashia@port-92-200-9-134.dynamic.qsc.de] has quit [Ping timeout: 276 seconds] 08:44 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|] 08:57 -!- dRbiG [drbig@unhallowed.pl] has quit [Ping timeout: 276 seconds] 08:57 -!- gits [~gits@77.94.219.158] has quit [Ping timeout: 265 seconds] 09:01 -!- adu [~ajr@softbank220043138128.bbtec.net] has joined #go-nuts 09:04 -!- femtoo [~femto@95-89-248-108-dynip.superkabel.de] has joined #go-nuts 09:13 -!- virtualsue [~chatzilla@93-97-62-8.zone5.bethere.co.uk] has joined #go-nuts 09:13 -!- dRbiG [drbig@unhallowed.pl] has joined #go-nuts 09:16 -!- dahankzter [~henrik@92-244-3-192.customers.ownit.se] has joined #go-nuts 09:21 -!- Fish- [~Fish@9fans.fr] has joined #go-nuts 09:21 -!- sauerbraten [~sauerbrat@p508CEE97.dip.t-dialin.net] has joined #go-nuts 09:24 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 272 seconds] 09:25 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 09:27 < adu> are there any opengl bindings that aren't OOP'd? 09:30 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has quit [Remote host closed the connection] 09:41 -!- illya77 [~illya77@101-5-133-95.pool.ukrtel.net] has joined #go-nuts 09:44 -!- femtoo [~femto@95-89-248-108-dynip.superkabel.de] has quit [Ping timeout: 255 seconds] 09:50 -!- femtoo [~femto@95-89-248-108-dynip.superkabel.de] has joined #go-nuts 09:50 -!- sauerbraten [~sauerbrat@p508CEE97.dip.t-dialin.net] has quit [Remote host closed the connection] 10:02 -!- femtooo [~femto@95-89-248-108-dynip.superkabel.de] has joined #go-nuts 10:05 -!- femtoo [~femto@95-89-248-108-dynip.superkabel.de] has quit [Ping timeout: 276 seconds] 10:10 < adu> so func F() is equivalent to cons F = func()? 10:10 < adu> s/cons/const/ 10:12 < adu> hmm, const F = func() {...} complains 10:15 -!- museun [~what@c-98-252-140-73.hsd1.ga.comcast.net] has quit [Ping timeout: 240 seconds] 10:20 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 10:23 -!- saturnfive [~saturnfiv@210.74.155.131] has quit [Read error: Connection reset by peer] 10:45 -!- museun [~what@c-98-252-140-73.hsd1.ga.comcast.net] has joined #go-nuts 10:53 -!- saturnfive [~saturnfiv@219.144.254.190] has joined #go-nuts 10:55 -!- Fish- [~Fish@9fans.fr] has quit [Quit: So Long, and Thanks for All the Fish] 10:59 -!- femtooo [~femto@95-89-248-108-dynip.superkabel.de] has quit [Read error: Connection reset by peer] 11:00 -!- tvw [~tv@e176003116.adsl.alicedsl.de] has joined #go-nuts 11:02 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org] 11:03 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 11:07 -!- adu [~ajr@softbank220043138128.bbtec.net] has quit [Quit: adu] 11:08 -!- wrtp [~rog@92.17.93.139] has joined #go-nuts 11:16 -!- tvw [~tv@e176003116.adsl.alicedsl.de] has quit [Remote host closed the connection] 11:17 -!- wrtp [~rog@92.17.93.139] has quit [Quit: wrtp] 11:31 -!- virtualsue [~chatzilla@93-97-62-8.zone5.bethere.co.uk] has quit [Quit: ChatZilla 0.9.86 [Firefox 3.5.16/20101130074220]] 11:31 -!- DerHorst [~Horst@e176096198.adsl.alicedsl.de] has joined #go-nuts 11:32 -!- illya77 [~illya77@101-5-133-95.pool.ukrtel.net] has quit [Quit: illya77] 11:35 < aiju> what 11:35 < aiju> they removed non-blocking send? 11:35 < user> guys, if I define an interface like say 'type foo interface { update() }', can I create an array of pointers to types fitting this interface? 11:35 < aiju> user: sure 11:36 -!- dRbiG [drbig@unhallowed.pl] has quit [Ping timeout: 240 seconds] 11:36 < user> I tried var foos *[100]foo and then use foos[0] = new(fooo) 11:36 < aiju> you can't do new on an interface 11:36 < user> but when I call foos[0].update() it crashed 11:37 < user> ahh ok, reading the documentation right now and trying go out 11:37 < user> so how can I assign a compatible type to an interface pointer? 11:40 < Namegduf> Your syntax is wrong. 11:40 < Namegduf> var foos [100]*foo is a slice of pointers to foo. 11:40 < user> thanks, any pointers to how I should do it 11:40 < Namegduf> var foos *[100]foo is a pointer to a slice of foo. 11:41 < user> aha! 11:41 < Namegduf> You want the first. 11:41 < Namegduf> However, if foo is an interface, you probably don't WANT a pointer to it. 11:41 < aiju> Namegduf: s/slice/array/g 11:41 < Namegduf> Pointers to interfaces are generally not useful. 11:42 < Namegduf> aiju: Yeah, yeah. 11:42 < Namegduf> user: So you probably just want [100]foo 11:42 < user> well I wanted an array with pointers to any type that fits an interface 11:42 < Namegduf> Have a pointer to the type be the thing that matches the interface 11:42 < Namegduf> And store the pointer in the interface. 11:42 < user> so that I can set the pointers to different types as long as they have the member functionality that the interface defines 11:42 < aiju> select for non-blocking send/receive seems stupid to me 11:43 < Namegduf> user: When you store something in an interface, it's copied. 11:43 < user> hohum... 11:43 < Namegduf> If you want to have an interface which can match any of a number of pointers, then store the *pointers* in the interface. 11:43 < user> ahh ok 11:45 -!- boscop [~boscop@f055056054.adsl.alicedsl.de] has joined #go-nuts 11:45 -!- kashia_ [~Kashia@port-92-200-23-111.dynamic.qsc.de] has quit [Ping timeout: 276 seconds] 11:45 < Namegduf> You want an array/slice of interfaces, which each contain a type which provides various methods, and methods on pointers to stuff implementing that interface. 11:46 -!- rlab [~Miranda@91.200.158.34] has quit [Ping timeout: 245 seconds] 11:48 < user> hmmm... I though the point of interfaces was that they provided access to any type fitting the interface definition 11:48 < aiju> yes 11:49 < Namegduf> Yes, that is the point. 11:49 < Namegduf> If said type is a pointer, then the pointer is stored in the interface. 11:49 < Namegduf> And many-to-most interfaces are satisfied by pointers. 11:50 -!- shvntr [~shvntr@116.26.132.138] has joined #go-nuts 11:51 < user> but if type isn't a pointer, but is allocated as a pointer, can't I access it directly through the interface if the interface is declared as a pointer and assigned to the allocated type? 11:52 < Namegduf> No. 11:52 < Namegduf> When you put something in an interface, it is copied. 11:53 < Namegduf> You also cannot modify something in an interface, because it's passed by value to all its methods. 11:53 < user> I thouhg an interface was like an alias for any type that fits the interface declarations 11:53 -!- dRbiG [drbig@unhallowed.pl] has joined #go-nuts 11:53 < Namegduf> I don't think you understand how pointers work. 11:53 < Namegduf> Values in Go are passed to functions by value. 11:54 < Namegduf> This includes things with methods on them. 11:54 < user> so if the interface declares a function named update, any type that has the function update can be accessed through the corresponding interface pointer as long as that interface pointer has been assigned a type 11:54 < Namegduf> A method on a type receives a COPY of whatever it's a method of. Just like if it was a regular parameter. 11:54 < Namegduf> As such, an "update" method that was actually intended to modify the original thing 11:55 < Namegduf> Would need to be a method on a pointer to the type of the original thing 11:55 < Namegduf> x.update(a, b) is similar to update(x, a, b) 11:55 < Namegduf> If x is not a pointer, then you're just copying it. 11:56 < Namegduf> And changing a copy. 11:58 < user> hmmm... I think I need to read up more on interfaces and type methods... 11:58 < Namegduf> No, you need to read up on pointers. 11:58 < Namegduf> Methods behave exactly like functions. 11:58 < Namegduf> func (f foo) update() { ... } receives a copy of f 11:58 < Namegduf> Same way func update(f foo) { ... } does 11:59 < Eko> Can you still get away with calling TypeName.Method(receiver, args...)? I think you could at one point if not now 11:59 < Namegduf> I don't know. 12:00 < Eko> Just to reinforce what you're saying about the receiver being a parameter, and thus passed by value. 12:00 < Namegduf> user: It's called pass-by-value, and it's similar to C 12:00 -!- femtoo [~femto@95-89-248-108-dynip.superkabel.de] has joined #go-nuts 12:00 < Namegduf> Yeah. 12:00 < aiju> pass-by-value-return is the one true parameter pass mechanism 12:00 < Namegduf> Anyways, so, yes. Go is pass by value, including for method receivers. 12:01 < user> but a type method takes a 'reciever' with which to access the type, which I assumed was a pointer to the type data rather than it actually copying the entire type data to the stack 12:01 < Eko> aiju: I'm not sure what you mean by that 12:01 < Namegduf> The receiver behaves like a regular parameter. 12:01 < Namegduf> It is not a magic pointer thing. 12:01 < aiju> Eko: it's something ugly early Fortran compilers did 12:01 < aiju> Eko: i'm referencing "real programmers don't write Pascal" 12:02 < Namegduf> This means that whatever the receiver is, it's copied. 12:02 < Namegduf> Right? 12:02 -!- rlab [~Miranda@91.200.158.34] has joined #go-nuts 12:02 < Eko> user: Go doesn't have a reference type. Pointers are actually just numbers, which is why passing them by value doesn't limit your ability to access what the number refers to. 12:02 < Namegduf> If the receiver is a pointer to the type, the pointer is copied and you work on the original instance of the type. 12:02 < aiju> maps are reference types :P 12:02 < Eko> aiju: shhhh 12:02 < Namegduf> If the receiver IS the type, the type itslf is copied. 12:02 < Eko> so are slices. 12:03 -!- Kashia [~Kashia@port-92-200-126-131.dynamic.qsc.de] has joined #go-nuts 12:03 < Namegduf> So, copying when something is stored in an interface doesn't do anything, because it's copied whenever you call a method ayway. 12:03 * Eko points out that this all makes way more sense when you write some code using it both ways and see that it works this way. 12:04 < Namegduf> There's only one piece of magic 12:04 < Namegduf> And that is that in: 12:04 < Namegduf> var f foo; f.update() 12:04 < Namegduf> It will be automatically read as (&f).update() 12:04 < Namegduf> If update is defined as func (f *foo) update() { ... } 12:05 < Eko> The converse is not true, though: func (f foo) blah() {...} cannot be called on a var f *foo 12:05 < Eko> which confused me for awhile. 12:05 < Namegduf> I think so, anyway. 12:05 < user> well, what I was trying to do was something like an array of object pointers in c++, which can be assigned subclasses with virtual functions which can be called through the object pointers of the super class 12:06 < Eko> user: think less about how to port C++ concepts and more about how to design your program using Go paradigms 12:06 < Namegduf> That's a really bad way to think in general, because you don't have superclasses 12:06 < Namegduf> You have subsets of functionality 12:06 < Namegduf> And they don't need to form a hierarchy 12:06 < Namegduf> But what you want is simple. 12:07 < Namegduf> You want to define methods on pointers to your type, so they can modify your type 12:07 < Namegduf> Which will mean the interface is met BY pointers to your type 12:07 < Namegduf> Then define []interface{update()} 12:07 < user> but if I want to call all types heeding to a certain interface from an array, how would I do it in Go? 12:07 < Namegduf> You define an array of that interface. 12:08 < Eko> (probably a slice) 12:08 < Namegduf> You just need to remember that the thing that meets the interface is the thing that is copied when passed to the method. 12:08 < Namegduf> Receivers are copied. 12:08 < Namegduf> You use a pointer to the type as your receiver if you want to modify your type. 12:08 < user> but how can I assign different types to that array? 12:08 < Namegduf> You just ASSIGN them. 12:08 < aiju> foo[4] = bar 12:09 < user> aha! 12:09 < Namegduf> Using = 12:09 < Namegduf> The assigning thing 12:09 < Namegduf> The same way you put something in an interface value. 12:09 < Namegduf> It being an interface value in a slice doesn't change it. 12:09 < user> so no pointers are needed, just assign a type instance directly to the interface array at position X 12:09 < Namegduf> The type that meets the interface, yes. 12:09 < user> yes of course 12:10 < Eko> Chances are your pointer type is what's going to meet the interface though 12:10 < Namegduf> If the type that meets the intrface is a pointer, you store the pointer 12:10 < Namegduf> A method that changes the type must receive a pointer to the type 12:10 < Namegduf> Remember how "this" is a pointer in C++? 12:10 < user> yes sure 12:11 < Namegduf> func (this *foo) update() { ... } is equivalent to a C++ method. 12:11 < Namegduf> func (copy foo) update() { ... } will receive a *copy* of whatever it's called on. 12:12 < Namegduf> As such, for a type foo, methods are usually defined on *foo unless you want that 12:12 < Namegduf> And *foo is what meets interfaces requiring those methods 12:12 < Namegduf> And thus is what needs to go in the interface value 12:13 < Eko> type X struct{a int}; func (x *X) Set(a int) {x.a=a}; type SetInt interface{Set(int)}; settable := make([]SetInt,1); settable[0] = &X{1}; settable[0].Set(42); 12:14 < user> ahh, I think I got it now... thanks guys 12:15 -!- marksaitis [~MK@cpc1-pool5-0-0-cust249.15-1.cable.virginmedia.com] has joined #go-nuts 12:15 < marksaitis> hey ;] 12:15 < Eko> sup 12:15 < marksaitis> can anybody tell me why would I use go instead of c 12:16 < Eko> marksaitis: I find that I can write a lot more go code a lot faster and with a lot fewer bugs and with a lot fewer lines of code required 12:16 < Eko> without suffering the speed penalties of an interpreted language 12:16 < Rennex> if you're sick of c 12:17 < aiju> i use both languages and find Go code cleaner 12:17 < marksaitis> well, I think that c syntax is bullshit :) too much shit 12:17 < marksaitis> now thats what I thought 12:17 < aiju> stop fucking around with syntax 12:17 < aiju> damnit 12:17 < Eko> the Go syntax is much more unambiguous 12:17 < marksaitis> I see 12:17 < aiju> i'm tired of syntax discussions 12:18 < Eko> then sleep through them, aiju :P 12:18 < marksaitis> how about go's libraries? any good examples of great systems done with go yet? 12:18 < aiju> syntax is perhaps one of the most overstated "issue" with programming languages 12:18 < marksaitis> aiju, nobody is duscussing, I told it and thats the end of the fact 12:18 < marksaitis> stop discussing it 12:18 < Eko> marksaitis: the #1 library you'll love if you're coming from C is going to be the net library 12:18 < marksaitis> what about net library? 12:19 < aiju> Eko: s/coming from C/coming from shitty pathetic wannabe Unices/ 12:19 < Eko> what used to take you 400 lines of boilerplate will now take you about 3 lines of go. 12:19 < aiju> Eko: Plan 9 networking is just like Go networking 12:19 < aiju> with C 12:19 < marksaitis> plan 9? 12:19 < Eko> aiju: find me a company that will pay me to program on plan 9 12:19 < Namegduf> Go combines roughly the same level of abstraction as C, with a simpler, more readable syntax, with type safety, with a rich and useful stdlib 12:20 < Eko> aiju: or find me a company that's making a real-time system on plan 9 that is ready to fly to Mars 12:20 < aiju> haha 12:20 < aiju> Namegduf: Go has more abstractions than C imho 12:20 < Namegduf> Plus concurrency primitives for very simple concurrency. 12:20 < aiju> mainly interface types 12:20 < nsf> why no one did a nice C library for networking? 12:20 < Namegduf> aiju: I meant from the hardware 12:20 < aiju> nsf: there are nice C libraries for networking 12:20 < Eko> plan 9 is a research operating system and has never gained traction. 12:20 < nsf> aiju: like? 12:20 < aiju> plan9ports 12:20 < nsf> p9p? 12:21 < nsf> lol 12:21 < nsf> no, thanks 12:21 < marksaitis> hmz 12:21 < Eko> networking libraries in C almost universally suck. 12:21 < Eko> Which is why I roll my own. 12:21 < Namegduf> Oh, yes, and Go has interfaces, and packages, for effective management of program parts and APIs between them, and the ability to have code operate on multiple types so long as those types provide the functions it needs. 12:21 < Eko> beej's guide ftw. 12:22 < marksaitis> so, are there any good system examples coded in go??? 12:22 < Namegduf> The stdlib is good 12:22 < Namegduf> For examples of Go, I mean. 12:22 < aiju> Pike wrote a pure networking library afaik 12:22 < Namegduf> Major things written in Go? Not sure. 12:22 < aiju> which provides dial() on UNIX 12:22 < Eko> marksaitis: there's probably some relatively interesting example of whatever kind of system code you might be interested in looking at 12:23 < Eko> It all depends on your background and what you find interesting what you may want to peruse as an example. 12:23 < nsf> aiju: then why no-one uses it 12:23 < marksaitis> I am totally coming from Delphi. I want something new, easier, but as efficient as possible! 12:23 < aiju> marksaitis: almost everything beats Delphi 12:23 < Eko> marksaitis: my suggestion: pick a project you consider "fun" and just start hacking at it. 12:23 < Namegduf> Go considers performance and simplicity hits as big things, and has as few as possible for as much gain 12:23 < Eko> Then, after awhile, scrap it and start from scratch 12:24 < Eko> and you'll see that you're starting to think like a go programmer 12:24 < Namegduf> The result is that it "feels like a dynamic language but very type safe" 12:24 < marksaitis> aiju: why delphi is so beaten? It seems a lot easier than most of other languages 12:24 < user> Again thanks for the help Namedguf and Eko, works like a charm! There's hope for me and Go yet ;D 12:24 < Namegduf> No problem, sorry I couldn't explain it clearer quicker. 12:24 < marksaitis> I am not a professional in programming, but I have written mabye more than 30K lines of code with delphi 12:25 < marksaitis> and I tried many other languages. I do not know which one I want 12:25 < Eko> delphi is one of the few languages I've never even looked at, let alone written. 12:25 < marksaitis> Eko, trust me, it is so easy 12:25 < marksaitis> compared to c for example 12:25 < Eko> so is go, so is python 12:26 < Eko> eh, almost nothing is easier for me than C, because I have been programming it since I was 12 12:26 < marksaitis> but python is scripting 12:26 < marksaitis> I am only talking about real languages here 12:26 < Eko> python is a real language. 12:26 < Eko> Just because it's interpreted doesn't mean it's "fake" 12:27 < marksaitis> I like the code of python 12:27 < Eko> take Java, for instance. (much to my dismay,) Lots of companies have hundreds of thousands of dollars invested in Java code. 12:27 < marksaitis> looks way better than c 12:27 < marksaitis> but its performance is lower than delphi or c 12:27 < Eko> I actually hate python, because it enforces whitespace, but love it for other reasons. 12:27 < marksaitis> "enforces whitespace"? 12:27 < Namegduf> I don't dislike Python, although I think it has a few more gotchas than I'd like 12:28 < Namegduf> I'd want unit tests if I was working in it, though, because trying to debug programs sans any static analysis is hard. 12:29 < Eko> lol, I wrote unit tests for flight software in python 12:29 < Eko> the flight software was in C. 12:30 < Eko> It was really convenient because it allowed me to write very general code to test a wide variety of cases intelligently. 12:30 < marksaitis> Okay, this is what I want to have in my programming language - quite a new language which will have a good future, easy syntax, awesome and easy to use libraries, as much as efficient as C. WHAT WOULD YOU RECOMMEND? 12:30 < Eko> Not yelling. 12:31 < marksaitis> :) 12:31 < Eko> Go has familiar syntax for the most part if you've used C or Java. It has libraries that are functional yet concise. It is very efficient. I can't speak to the future of the language; I hope it has a long, bright future, but can't make any promises. 12:31 < Namegduf> Go. 12:31 < marksaitis> any other better choices? 12:31 < Namegduf> :P 12:31 < marksaitis> I am not really sure about this "go" thing 12:31 < Eko> marksaitis: Not that you'l hear in #go-nuts 12:31 < Namegduf> Not that I know of. Most current languages basically throw in all the features they can 12:32 < Namegduf> And are slow, bloated, and complicated as a result 12:32 < Eko> and are not a compiled, system language. 12:32 < Namegduf> Go is not; it aims to be efficient, safe, and "fun". 12:33 < Eko> and modern, supporting things that K+R had no way to plan for when they designed C 12:33 < Namegduf> Ah, yes. 12:33 < marksaitis> so how does go work? what is its code converted to in order to compile executable? 12:33 < Namegduf> It's compiled to an executable binary. 12:33 < Eko> marksaitis: it's just like C. The code is compiled, assembled, and linked. 12:33 < Namegduf> I'm not sure of many languages trying to strike a good compromise, like Go. 12:34 < Eko> er, compiled, linked, and assembled? 12:34 * Namegduf shrugs 12:34 < Eko> in any case, when the compiler is done with your code, it's machine code that runs natively on the processor. 12:34 < Namegduf> Right. 12:34 < aiju> 13:26 < marksaitis> aiju: why delphi is so beaten? It seems a lot easier than most of other languages 12:34 < Eko> None of this MSIL, .NET, Java Bytecode nonsense. 12:34 < marksaitis> I see 12:35 < aiju> Pascal is a terrible language, it lacks most features of any real language 12:35 < Eko> +1 12:35 < marksaitis> what does it lack? 12:35 < marksaitis> :) 12:35 < marksaitis> never noticed 12:35 < jumzi> nah, pascal is a mans language 12:35 < Eko> marksaitis: recursion? lol 12:35 < aiju> function pointers 12:35 < Namegduf> First class functions are nice 12:35 < aiju> trying to get any job done in Pascal makes me scream loudly 12:35 < aiju> also record oriented I/O 12:36 < marksaitis> when I have been programming with it, it didn't seem to lack much 12:36 < Eko> oh god 12:36 < marksaitis> well I am not a pro though 12:36 < aiju> 13:28 < Eko> python is a real language. 12:36 < Eko> I had to program in "Interactive Test Pascal" for some of the microcontroller testing I did 12:36 < aiju> hahahahahhahahahahahha 12:36 < jumzi> +1 12:36 < marksaitis> Eko, are you a fan of google? 12:36 < rm445> Don't worry, the guys are being a bit OTT. Modern pascal in Delphi had all sorts of modern features, didn't it? 12:36 < Eko> marksaitis: I kinda have to be, they're my employer 12:37 < Eko> but yes, I was even before that. 12:37 < marksaitis> any IDE examples for go? 12:37 < aiju> rm445: recent additions to languages only make it worse D: 12:37 < Eko> marksaitis: there's development on an Eclipse plugin 12:37 < aiju> marksaitis: "IDE features are language smells" 12:37 < rm445> In any case people built real software with Delphi, it was moderately successful, the reasons it was never mega-popular are to do with microsoft's ascendance and Borland's implosion. 12:37 < jumzi> pfft, since when do you have to be a fan of your employer!? 12:37 < aiju> rm445: people built real software with COBOL 12:37 < aiju> and COBOL lacks binary integers! 12:37 < Namegduf> Being a fan of Google isn't required to like Go 12:38 < Namegduf> You do have to lack irrational hatred of anything to do with them 12:38 < aiju> i dislike Google, but still like Go 12:38 < Namegduf> But if that's a problem you should go back to commenting on blogs 12:38 < Namegduf> :P 12:38 < Eko> lol 12:38 < aiju> most stuff by Google is utter crap 12:38 < Ina> I'm not a huge fan of Google, but I'm not a huge fan of MS and Apple either. 12:39 < jumzi> sadly yes, google seem to produce a heck of allot of crap 12:39 < aiju> i probably dislike all IT companies 12:39 < jumzi> but that seem to be a must if you want something really good to come out of a big company 12:39 < marksaitis> okay, lets say I want a simple app which would run on windows and linux, how is that achieved using go? 12:39 < Ina> I dunno, I think Wave had promise, it just was released far too early. 12:39 < Eko> Google makes money hand over fist by selling ads and uses a good amount of that money to have the best damn search engine in the history of the planet... Sure, some of the (free, I might add) services they offer aren't up to what you may pay for in a desktop application, but that's a moot point. 12:39 < aiju> marksaitis: windows support is not all too great 12:40 < aiju> Eko: still most things suck 12:40 < aiju> like android *shudder* 12:40 < Eko> have you used a nexus S? 12:40 < jumzi> its the best phone os out there tough 12:40 < marksaitis> really, so I can't even write a simple app for windows with go? 12:40 -!- fenicks [~christian@log77-3-82-243-254-112.fbx.proxad.net] has joined #go-nuts 12:40 < aiju> marksaitis: you can 12:40 < Eko> marksaitis: of course. 12:41 < Ina> I prefer Android to iOS, really. 12:41 < Eko> marksaitis: you just can't use the win32 api. 12:41 < aiju> Ina: it's like saying you prefer gonorrhea to cancer 12:41 < fenicks> hello 12:41 < Eko> without a third party library, at least. 12:41 < aiju> i mean Java, SRSLY? 12:41 < Ina> Phone OSes are like GUI libs, they universally suck. 12:41 < marksaitis> why can I not use it? what can I use then? i would like to code and app with some basic 3D in directx, networking and want it to be stable, tell me if thats possible? dats for win 12:41 < Eko> I happen to really like android from a developer standpoint and iOS from a user standpoint. 12:42 < aiju> marksaitis: i don't think there is any directx support 12:42 < aiju> Eko: you like Java? 12:42 < Eko> there are opengl bindings, I think 12:42 < jumzi> do not use go for graphics atm 12:42 < aiju> Eko: not for windows 12:42 < Eko> aiju: not particularly, but the API they designed is still pretty nice. 12:42 < rm445> aiju: okay, so you hate everything. That's really cool and edgy. Now can you please stop replying to any mention of anything by saying you hate it? 12:42 < jumzi> isn't that the mantra? 12:42 < marksaitis> Ina, iOS is awesome. It's plain simple, you have these icons and you just launch any you want. thats all you need 12:42 < aiju> rm445: i don't hate anything 12:42 < Ina> Eko, but there's no cgo support for windows, so the OpenGL bindings don't work. 12:42 < Eko> ah, right, forgot about cgo. 12:43 < Eko> Mostly because I use real operating systems ;-) 12:43 < aiju> marksaitis: no preemptive multitasking, srsly? 12:43 < jumzi> 12:43 < marksaitis> ok, lets forget 3D. Im good with plain 2D and some networking. how bout dat? 12:43 < Ina> Even the most recent versions of iOS's multitasking sucks. 12:44 < Namegduf> Go is very good at networking. 12:44 < marksaitis> aiju: what do you mean no preemtive multitasking? where? 12:44 < aiju> iOS multitasking is a lie 12:44 < Namegduf> Graphics libraries are missing. 12:44 < marksaitis> IOs multitasking is superb :) 12:44 < Ina> marksaitis, it has something that passes for multitasking. It has no preemptive multitasking. 12:44 < marksaitis> it just works 12:44 < Ina> Uhm, no. 12:44 < jumzi> lol 12:45 < aiju> marksaitis: i sincerely hope you're just trolling 12:45 < Eko> it doesn't have multitasking, it has ways for applications to give you the same feel as if they were multitasking without actually doing it. 12:45 < marksaitis> what the hell is preemptive? 12:45 < marksaitis> :) 12:45 < Ina> marksaitis, ... 12:45 < Namegduf> http://en.wikipedia.org/wiki/Preemptive_multitasking 12:45 < Eko> lmgtfy 12:45 < jumzi> so... anyhow phones sux 12:45 < aiju> according to Apple, preemptive multitasking is too complex or something 12:45 < jumzi> all agreed? 12:45 < aiju> that's why it has been implemented on virtually every processor in existance 12:45 < Ina> agreed 12:45 < aiju> even some with 128 bytes of RAM 12:46 < marksaitis> well, folks, I am not going in complexity with it. But all the users wanted on IOs, was a nice way to switch from one app to another without having to close it - it works 12:46 < rm445> The iphone OS has multitasking, but it's not entirely exposed to the application writer. The OS and some privileged apps have access to proper multi-tasking. 12:46 < Eko> aiju: no, they just think people can't use it responsibly and developers can't be trusted to code for it responsibly and don't want their phone to be blamed for being slow or having bad battery life because of things they can't control. 12:46 < aiju> rm445: it's like saying there was freedom in third reich 12:46 < aiju> it just wasn't exposed to everyone 12:47 < Eko> wow, you just pulled out page 3 of the Book of Troll 12:47 < Ina> Anyway, let's end this debate? 12:47 < Eko> isn't there some usenix axiom somewhere that any conversation, if left alone too long, will come back to hitler? 12:47 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping timeout: 255 seconds] 12:47 < jumzi> godwins law? 12:47 < Namegduf> It was the worst thign Hitler did. 12:48 < Namegduf> Cause people to reference him. 12:48 < Eko> jumzi: that's it :D 12:48 < jumzi> usenet btw 12:48 < aiju> the go runtime should really compile with -FVw 12:48 < jumzi> aah, good ol -FVw 12:49 < Ina> We should run an obfuscated go contest. :o 12:49 < marksaitis> so, what is the easiest language, with all the easy libraries you need and native compiled code? 12:49 < jumzi> its more of a symbol of a sane enviroment imo 12:49 < Eko> gofmt rewrite rules :D 12:49 < aiju> marksaitis: christ, are you serious? 12:49 < jumzi> marksaitis: stop asking weird questions 12:49 < marksaitis> aiju, well that is all I am looking :) 12:49 < Namegduf> None. 12:50 < Eko> marksaitis: http://en.wikipedia.org/wiki/Tradeoff 12:50 < marksaitis> And I can't find one 12:50 < marksaitis> they all seem to have troubles 12:50 < aiju> instead of asking for easy language, actually learn the language 12:50 < Namegduf> There isn't one. 12:50 < jumzi> personal taste maybe should go in there? 12:50 < Namegduf> Libraries are written in C/C++ generally. 12:50 < Ina> marksaitis, I believe you might want to go to college and follow an education in software development 12:50 < jumzi> and yeah, actually learning to program somewhere 12:50 < Namegduf> Other languages will not have "all the easy libraries you need" 12:51 < Namegduf> And those do not meet your requirements 12:51 < Namegduf> You will have to compromise that. 12:51 < Eko> but may or may not provide the ability to plug into a c/c++ library that you picked up on the street corner somewhere. 12:51 < jumzi> and when things go haiwire its impossible to debug? 12:51 < aiju> jumzi: debugging is overrated 12:52 < marksaitis> ok, well that is all I wanted to know 12:52 < aiju> as every scripting language developer can tell you, real programmers just don't put bugs in software in the first place 12:52 < Namegduf> Go permits implementing an interface to an arbitrary library via cgo fairly easily. 12:52 < aiju> that's why they don't need "type safety" or other silly things 12:52 < marksaitis> i am still not too sure what language should I choose after working with delphi 12:52 < Namegduf> It's about as good integration with C libraries as you will get. 12:52 < aiju> marksaitis: if you don't mind windows support, really try go 12:52 < jumzi> aiju: damnit, i suck more then i tought 12:53 < Eko> marksaitis: If you want to try Go, stay here and ask sensible questions as you try it out. If not, we hope we've helped you on your way and ask that you kindly stick to go-related topics or none at all. 12:53 * jumzi turns on invincibility mode 12:53 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has joined #go-nuts 12:54 < jumzi> Eko: Oranges is allways ok 12:54 < nsf> marksaitis: you said about directx, I think Go is a bad choice for game development 12:54 < jumzi> isn't every language a bad choice for game development 12:55 < Namegduf> nsf: Hmm, why? 12:55 < nsf> C/C++ isn't (even though C++ sucks) 12:55 < Eko> nsf: I disagree! go has great networking for, which is all you need to create the most epic MUDs evar. Graphics are for wimps. 12:55 < marksaitis> ok, well lets forget directx. I want something like delphi, but with more integrity and more libraries 12:55 < nsf> Namegduf: the language isn't stable, garbage collector sucks, scheduler is far from being optimal 12:55 < aiju> C++ is a bad choice for EVERYTHING 12:55 < Namegduf> I don't see how those are specific to games dev 12:56 < jumzi> 12:56 < aiju> games need superb performance 12:56 < jumzi> asm? 12:56 < aiju> to compensate the programmer's inability to write performant code 12:56 < marksaitis> why nobody knows whats what and everybody just keeps arguing :) 12:56 < Eko> aiju: you should be positive occasionally or I'll be tempted replace you with a very small shell script :-P. 12:56 < aiju> Eko: i am positive about Go 12:56 < jumzi> cat-v does that to you 12:57 < nsf> marksaitis: why do you want something like delphi? do you want a programming language or do you want to write programs? 12:57 < Eko> aiju: ah, which is why I never see it. The conversation in here is so rarely about Go, lol 12:57 < nsf> Go is just another language with garbage collector 12:57 < rm445> marksaitis: I hope people don't think I'm trolling, but if you're more interested in Windows development than otherwise, and you want RAD and lots of libraries, you probably want C#/VB.NET 12:57 < nsf> ... :) 12:58 < jumzi> nsf: !!! 12:58 < marksaitis> nsf :D what kinf of question is this. I want one easy, universal language 12:58 < Namegduf> VB == instant trolling 12:58 < aiju> hahahahhahahhahahahahahahhahahhahaha 12:58 < aiju> RAD 12:58 < Namegduf> It's not even current 12:58 < jumzi> marksaitis: stick to delphi 12:58 < nsf> marksaitis: there is no such thing 12:58 < jumzi> its awesome 12:58 < Ina> <nsf> marksaitis: there is no such thing <-- this 12:58 < aiju> RAD is so infinitely stupid 12:58 < nsf> a lot of projects are much better if some kind of domain specific language is used 12:58 < Eko> marksaitis: http://en.wikipedia.org/wiki/Tradeoff <-- Read this article. 12:58 < marksaitis> why is RAD stupid? I think RAD is awesome 12:59 < marksaitis> it saves one very important thing - time 12:59 < jumzi> WHY DO WE LET HIM TROLL US!? 12:59 < nsf> and idea of a sinlge, universal language leads to C++/D 12:59 < nsf> who needs that? 12:59 < nsf> single* 12:59 < marksaitis> Eko, I read it 12:59 < Eko> jumzi: because we have nothing better to do 12:59 < Namegduf> marksaitis: Developing good code quickly is more important as a goal than developing code quickly 12:59 < marksaitis> nsf, simple, not single :) 12:59 < Namegduf> marksaitis: RAD does the latter at the cost of the former 13:00 < nsf> marksaitis: they've tried to be simple 13:00 < jumzi> no, i have acme fired up in the background of this irc window but i can't stop watching this window 13:00 < Eko> marksaitis: so, you understand that asking for a "universal language" is like asking for a single piece of kitchenware that can prepare and serve every meal in existence? 13:00 < jumzi> i would say addiction 13:00 < nsf> it turns out if you want something universal, it isn't simple 13:00 < Namegduf> Eko: I want one. 13:00 < nsf> simplicity is about simple things interacting with each other 13:00 < aiju> super specialized languages are worse than universal ones 13:00 < jumzi> aiju depends 13:00 < aiju> or rather super specialized general purpose languages lol 13:01 < nsf> but there is more than one simple thing usually 13:01 < Ina> marksaitis, I'd seriously recommend looking into .net. Alternatively, FreePascal/Lazarus 13:01 < rm445> the problem in this channel, is if someone asks how to do something, people will tell them not to do it. 13:01 < marksaitis> Eko, why not :) mabye not today, but definately in the future. I understand that there is too much fuss in todays programming world. Too many different ways to process the same piece of information which is all Digital 13:01 < nsf> rm445: it's not a problem at all 13:01 < nsf> a good advice 13:01 < aiju> rm445: most questions sound like "how can i make my horse go faster" 13:01 < jumzi> a "super specialized language" is a program imo i start on the shell or wherever 13:01 < aiju> when you actually want a car 13:01 < nsf> f**k it! there is life out there 13:02 < marksaitis> :D 13:02 < nsf> throw a PC out of the window 13:02 < marksaitis> PC's and internet is starting to suck, isnt it? 13:02 < jumzi> i think this channel has inherited abit to much of the plan9 mentality 13:02 < rm445> Q. Is there a Go IDE? A. You shouldn't want an IDE. Q. How do I install a Go syntax hilighting file? A. You shouldn't want syntax hilighting. (I swear, someone went on an anti-syntax-hilighting rant the other day) 13:02 < marksaitis> everybody just keeps chatting about problems which would not exist if there would be dominant standards for most of commond things today 13:02 < rm445> Q. I want something like Delphi. A. You shouldn't. 13:02 < nsf> it sucks people's lives 13:02 < jumzi> i don't use syntax highlightning anymore 13:03 < nsf> jumzi: plan9 sucked your life 13:03 < Namegduf> rm445: "No" and "You get it from the main distribution" 13:03 < Ina> marksaitis, if you want something like Delphi, take a look at Freepascal/Lazarus 13:03 < nsf> I think plan9 sucks 13:03 < Eko> marksaitis: there are two domains (among many others): system programming and application programming, and they have completely different domains. It is next to impossible for anything to be both simple and functional in both domains, and to expand into other, more speciailized domains without compromising is ludicrous. 13:03 < nsf> and Go :) 13:03 < marksaitis> Ina, nobody is chatting with u :))) u didn't even understand what I want. 13:03 < aiju> 14:05 < Ina> marksaitis, if you want something like Delphi, take a look at Freepascal/Lazarus 13:03 < aiju> last time i looked freepascal was even worse than delphi 13:03 < Eko> marksaitis: you don't understand what you want. 13:04 < Namegduf> rm445: There are Go files for Vim and others, I think. 13:04 < nsf> marksaitis: I think _you_ don't understand what you want 13:04 < nsf> ;) 13:04 < Namegduf> They're in the main distribution. 13:04 < marksaitis> yeah, freepascal/lazarus is a piece of garbage 13:04 < Namegduf> So clearly Go is not officially against it. 13:04 < jumzi> nsf: NO PLAN9 CREATED MY LIFE 13:04 < Ina> aiju, well, true. 13:04 < Ina> But it is something like Delphi. 13:04 < marksaitis> jumzi, so that means u been born in plan9? 13:04 < marksaitis> :D 13:04 -!- niemeyer_ [~niemeyer@201-14-240-9.pltce701.dsl.brasiltelecom.net.br] has joined #go-nuts 13:05 < jumzi> i'm just a rc script 13:05 < Eko> it's true, I had to reboot him the other day 13:05 < Ina> I don't think you can get 'something like delphi' without FPC/Lazarus or Delphi itself. 13:05 < nsf> wait, Go is like Delphi 13:05 < aiju> i have yet to understand what "something like Delphi" means 13:05 < marksaitis> I have got another question. Which of todays programming languages has the best libraries? (easy to use)? Tell me at least 2 13:05 < nsf> so.. you wanted something like delphi 13:05 < nsf> you got it 13:05 < Eko> marksaitis: define "easy to use" 13:06 < aiju> marksaitis: what do you need libraries for? 13:06 < nsf> marksaitis: ruby, python and go 13:06 < marksaitis> nsf --- good point :) go is simmilar to delphi! 13:06 < marksaitis> thats why im here 13:06 < aiju> <insert long rant about ruby here> 13:06 < Ina> go is ... superficially similar to Pascal. It's not at all similar to Delphi. 13:06 < nsf> aiju: what's wrong with ruby? it's cool 13:06 < aiju> Go is not at all similar to Pascal 13:07 < nsf> for writing tiny scripts.. 13:07 < jumzi> ruby might be good tough 13:07 < aiju> nsf: Ruby is the C++ of scripting languages 13:07 < Ina> aiju, it's superficially, because both use := 13:07 < aiju> Ina: hahahaha 13:07 < rm445> I think something like Delphi means a fancy IDE and fancy GUI builders and built-in libraries for databases and other things. In which case he wants either whatever remnant of Delphi is still kicking around, or visual studio (unless he wants cross-platform, where the answer is harder) 13:07 < marksaitis> Eko - "Easy to use", easy syntax like delphi has, less code to write, understandable and easy to remember function names 13:07 < Ina> aiju, superficial means it kind of looks like it, right? 13:07 < nsf> well, if you want IDE, it's a wrong irc channel for you 13:08 -!- Scorchin [~Scorchin@host86-145-18-139.range86-145.btcentralplus.com] has joined #go-nuts 13:08 < Ina> Go doesn't even have a proper GUI library, let alone a Delphi equivalent. 13:08 < nsf> marksaitis: try C#, seriously 13:08 < nsf> I know a lot of delphi programmers end up as a C# programmers 13:08 < marksaitis> no, IDE is not necesary 13:08 < marksaitis> :) 13:08 < Ina> Yes, C# is probably the best choice for marksaitis 13:08 < aiju> most C# code i have seen made me want to quit computing alltogether 13:09 * jumzi packs his bags and gets tha f**k out of here 13:09 < Ina> aiju, most pascal code did the same. 13:09 < marksaitis> well, i dont like C# because it has that runtime stuff 13:09 < Ina> To me, anyway. 13:09 < aiju> pascal is cute 13:09 < marksaitis> these framework 13:09 < nsf> personally 13:09 < marksaitis> live code 13:09 < nsf> I _hate_ C# 13:09 < marksaitis> nsf - Yeah 13:09 < Ina> nsf, me too. 13:09 < marksaitis> C# is a piece fo garbage 13:09 < nsf> but it's a good choice for you, marksaitis 13:09 < nsf> :) 13:09 < aiju> hahaha 13:09 < Eko> marksaitis: syntax is depentant on the language. If you want people abusing operator overloading, look to C++. If you want fewer lines of code, you're not talking about a library you're again talking about the language. ALL libraries should lessen the number of lines of code. Remembering function names is a matter of familiarity, the real issue should be how well or centralized the documentation is. 13:10 < nsf> no, it's not garbage 13:10 < nsf> .NET platfrom is nice 13:10 < nsf> MS implementation and Mono both are fine 13:10 < aiju> ALL libraries "should" 13:10 < marksaitis> not really, I looked at it :) I believe those Delphi programmers who turn in to C# are lost 13:10 < aiju> almost none do 13:10 < nsf> good GC, big library (ugly though) 13:10 < nsf> but it works 13:10 < nsf> a lot of people know C#, a lot of libs are out ther 13:10 < nsf> there* 13:10 < Namegduf> C# is basically Java with broken portability 13:10 < Ina> Yeah, C# is a really good Java clone. 13:10 < marksaitis> well thats the thing, I donnt like big ugly libraries 13:11 < nsf> and for games there is a nice MS framework called XNA 13:11 < Eko> marksaitis: then program in assembly and never again use a library in your life. 13:11 < Ina> Ugh, XNA. 13:11 < Namegduf> Windows-only, though. 13:11 < nsf> people sell XNA games for real 13:11 < aiju> libraries are the beginning of doom 13:11 < marksaitis> Eko - again, too much code to do 13:11 < nsf> games are buggy though 13:11 < marksaitis> :D 13:11 < nsf> but I don't know who's responsible for this 13:11 < Ina> nsf, not because of the library, sadly. 13:11 < nsf> stupid programmers or XNA 13:11 < aiju> nsf: probably both 13:11 < Ina> Because if it was the library, I could blame MS. 13:12 < Eko> marksaitis: how about you go make a spreadsheet of a few of the languages we've suggested and list their pros and cons. Then make a decision on one to try, and stop dragging your feet about it. 13:12 < marksaitis> anyways, see you next time at some point, was nice to chat, im unclear yet. I am switching my PC off to go out to a real life 13:12 -!- marksaitis [~MK@cpc1-pool5-0-0-cust249.15-1.cable.virginmedia.com] has quit [Remote host closed the connection] 13:12 < aiju> actually, MS implementations are not THAT bad 13:12 < aiju> it's just the design that sucks 13:12 < Eko> You probably could have written "Hello, world!" in 20 languages in the time it's taken you to get the same answers out of us 10 times. 13:12 < Ina> C# is honestly a pretty good Java clone. 13:12 < aiju> C# is worse than Java 13:13 < nsf> yes, big company, has enough man power for maintaining crappy code 13:13 < Ina> Clones always are, aiju 13:13 < exch> try all of them. Since there no such thing as 'the best language', it pays to broaden your knowledge. The right tool for the right job. 13:13 < aiju> well, HE FUCKING LEFT 13:13 < nsf> :D 13:13 < Eko> darn, our troll is gone 13:13 < Namegduf> It's good aside the portability being deliberately broken, in order to give a boost to Windows. 13:13 < aiju> rm445 is still here 13:13 < Eko> now what will I do with my evening 13:13 < exch> bummer 13:13 < Namegduf> As a clone of Java, that is. 13:13 < Namegduf> Which is awful anyway 13:13 < aiju> even though you don't meant the library, "BOOST" still made me shudder IRL 13:14 < Eko> lol 13:14 < Ina> Ugh, Boost. 13:14 < Namegduf> Boost: Because C++ didn't have enough features 13:14 < Ina> You're talking the C++ library, right? 13:14 < nsf> Namegduf: but marksaitis plans to use DirectX 13:14 < Eko> I love boost :D 13:14 < nsf> it means he's a windows junkie 13:14 < Eko> because they can always come up with a much more convoluted way to do something than I can 13:15 < aiju> i once looked at DirectX. once and never again 13:15 < Eko> aiju: yeah. I thought opengl was bad until I looked at dx. 13:15 < nsf> DirectX 10-11 are nice 13:15 < nsf> but 13:15 < nsf> I don't even have a working OS to test them 13:15 -!- illya77 [~illya77@101-5-133-95.pool.ukrtel.net] has joined #go-nuts 13:15 < nsf> I still use xp for games 13:15 < Ina> OpenGL used to be the market leader once. Sadly, those days are gone. 13:15 < nsf> :) 13:15 < aiju> windows APIs summed up: long functions names, thousands of arguments, most of them NULL 13:16 < Eko> Ina: microsoft spent a lot of money to make that happen 13:16 < Ina> Eko, I know.\ 13:16 < Eko> brilliant business move on their part, sucks for the rest of us. 13:16 < Eko> kinna like just about everything they do. 13:16 < aiju> CreateFileW(L"hello.txt", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, SHARE_READ, OPERATION_READ, NULL, NULL, NULL, NULL, &foo); 13:16 < Namegduf> MS specialises in making people who don't care about portability enough use their clones. 13:16 < aiju> ^- how i remember the windows api 13:16 < nsf> :D 13:17 < Eko> aiju: I think you're missing at least one NULL before the "hello.txt" 13:17 < Eko> :D 13:17 < nsf> HRESULT 13:17 < nsf> lol 13:17 < Namegduf> XD 13:17 < aiju> #define interface struct 13:17 < aiju> sums up Windows abuse of C pretty well 13:17 < Eko> DWORD *HWIN WIN32 some_var 13:17 < aiju> LPFOO 13:18 < Eko> I always felt like I was yelling at the compiler with the win32 library 13:18 < Eko> or, contrariwise, being yelled at by the API and my code. 13:18 < Eko> and I basically had to program with an API reference open in a browser and my win32 book open on my desk 13:18 < Eko> (like java, except worse) 13:19 < aiju> also, the reference is often wrong 13:19 < exch> that's how I felt when I wrote my first SQL code. until I found out that the whole CAPS THING is actually not required :p 13:19 < Eko> exch: lol. 13:19 < Eko> aiju: yeah, and you have to go to different versions of the API to look up some things 13:19 -!- shvntr [~shvntr@116.26.132.138] has quit [Quit: leaving] 13:19 < Eko> *shudder* 13:20 < aiju> SELECT bar.* FROM quz.foo WHERE x = 'y' AND z = 'bla' ACTIVATE FLUX CAPACITOR; 13:20 < Eko> I like having godoc --http=:8080 running all the time so I can always see exactly what I'm compiling against, and an offline reference 13:20 < aiju> there were really cases where the library said one thing and reality was another 13:20 < aiju> like "You need to do xyz" and you mustn't do it 13:21 < Eko> lol 13:21 < Eko> a friend of mine worked on the Excel team at Microsoft for awhile 13:21 < Eko> apparently the code was discraceful 13:21 < jumzi> it worked! 13:21 < Eko> and there would be entire functions commented out and replaced with a "return true;" because they couldn't figure out the bug. 13:22 < aiju> haha 13:22 < jumzi> hmm... 13:22 < Eko> the thought was, apparently, it'll break further down the line somewhere. 13:22 < Eko> And I wondered why error messages in Windows are so unhelpful. 13:23 < aiju> there are literally about 15000 error codes with Windows 13:23 < aiju> even Linux has just about 100 13:23 < Eko> yet somehow, even with 15,000 error codes, they're supremely unhelpful when you look them up 13:23 < aiju> yeah 13:24 < aiju> The specified namespace does not exist or is not accessible. Contact your system administrator for further help. 13:24 < Namegduf> I've found they can be quite specific about what broke but utterly useless for fidning out why. 13:24 < Namegduf> And thus fixing it. 13:24 < Eko> lol 13:24 < jumzi> Contact your system administrator for further help.<-- i like that one 13:24 < jumzi> if only i could find that damn system administrator 13:24 < Eko> Error: Success 13:25 < Eko> that's my favorite. 13:25 < aiju> Eko: hahaha 13:25 < exch> keyboard error. press F1 to continue. 13:25 < Eko> but it happens in linux too, so it's not just MS. 13:25 < aiju> exch: that's a BIOS message 13:25 < exch> ya 13:25 < Namegduf> It's a program bug, not an OS one. 13:25 < Namegduf> It indicates you decided an error happened and tried to read errno, but errno was empty, usually 13:25 < aiju> the single piece of software worse than Windows 13:26 -!- belkiss [~belkiss@drn13-1-78-235-168-105.fbx.proxad.net] has joined #go-nuts 13:26 < Eko> Namegduf: yeah, I know the reason for it, but its hilarious. 13:26 < aiju> one has to be deliberate to get that with Unix 13:27 < Eko> anyway, sleep is calling my name. Yell for me if any trolls come back :) 13:27 < Namegduf> Sleep well. 13:27 * aiju first thought he meant sleep(2) 13:27 < Eko> lol 13:27 < Ina> I thought sleep(Eko) 13:27 < Eko> clearly it.s Eko.Sleep() 13:28 < aiju> that was a manual page reference, not a function argument 13:28 < Eko> aiju: yeah, I got it. 13:28 < nsf> https://github.com/nsf/ccode 13:28 < nsf> btw, I've finished my C completion daemon 13:29 < aiju> i want a thought completion daemon 13:29 < nsf> :D 13:29 < aiju> which autocompletes my thoughts 13:29 < aiju> at least that one would actually help with programming 13:29 < aiju> Something that should look like a usage guide 13:29 < aiju> you should add ???, PROFIT 13:29 < nsf> :) 13:30 < aiju> Can be used to complete C++/ObjC, but I'm not targeting these languages. Don't report C++/ObjC specific bugs. 13:30 < nsf> :) 13:30 < aiju> seems impossible to me, given all the insanity of C++ syntax :P 13:30 < nsf> libclang supports it well 13:31 < nsf> all C++98 and bits of C++0x 13:31 < nsf> I've tested it a bit on STL 13:32 < nsf> works just fine 13:32 < aiju> hahaha STL 13:33 < nsf> anyways, I needed C autocompletion and here it is 13:33 < aiju> std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(std::basic_ostream<_CharT, _Traits>::__ostream_type& (*)(std::basic_ostream<_CharT, _Traits>::__ostream_type&)) [with _CharT = char, _Traits = std::char_traits<char>, std::basic_ostream<_CharT, _Traits>::__ostream_type = std::basic_ostream<char>] 13:33 < aiju> it copes with THAT? 13:34 < nsf> it's a gcc error message 13:34 < nsf> clang doesn't do that afaik 13:34 < aiju> yeah, but that's how things look like 13:34 < nsf> clang actually knows about typedefs and presents them nicely, at least tries to do that 13:34 < aiju> you think it's an std::vector but it's a <insert twenty lines of messy code here> 13:35 < nsf> I know that, and I'm not interested in C++ 13:38 < cde> aiju: thus began skynet 13:39 < cde> we need to go back in time and kill stroustrup 13:39 < nsf> :) 13:40 < nsf> what about bill gates? 13:40 < nsf> :) 13:40 < nsf> same time.. 13:41 < nsf> he needs at least one more pie in a face 13:42 < nsf> we need to go back in time and kill stroustrup, bill gates, steve jobs, linus torvalds, richard stallman and see what will happen 13:42 < nsf> :P 13:42 < nsf> minix? plan9? 13:42 < nsf> freebsd! 13:43 < Ina> NeXTStep? 13:43 < cde> yep everyone would be using bsd now 13:43 < Ina> Lisp-machines? 13:44 -!- dchest [~dchest@95.155.52.241] has joined #go-nuts 13:47 -!- tensorpudding [~user@99.23.127.179] has quit [Read error: Connection reset by peer] 13:54 < skelterjohn> morning 13:56 -!- rejb [~rejb@unaffiliated/rejb] has joined #go-nuts 14:01 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has joined #go-nuts 14:04 -!- belkiss [~belkiss@drn13-1-78-235-168-105.fbx.proxad.net] has quit [Quit: KVIrc Insomnia 4.0.2, revision: 4740, sources date: 20100627, built on: 2010-10-19 12:51:39 UTC http://www.kvirc.net/] 14:06 -!- niemeyer_ [~niemeyer@201-14-240-9.pltce701.dsl.brasiltelecom.net.br] has quit [Ping timeout: 240 seconds] 14:19 -!- gju_ [~gju@big1.hrz.fh-zwickau.de] has joined #go-nuts 14:20 -!- nictuku [~nicutku@cetico.org] has quit [Ping timeout: 240 seconds] 14:23 -!- nictuku [~nicutku@cetico.org] has joined #go-nuts 14:40 -!- phalax [~phalax@c213-100-72-128.swipnet.se] has joined #go-nuts 14:41 -!- femtoo [~femto@95-89-248-108-dynip.superkabel.de] has quit [Ping timeout: 240 seconds] 15:03 -!- Kashia [~Kashia@port-92-200-126-131.dynamic.qsc.de] has quit [Ping timeout: 276 seconds] 15:05 -!- illya77 [~illya77@101-5-133-95.pool.ukrtel.net] has quit [Ping timeout: 255 seconds] 15:08 -!- lmoura [~lauromour@186.212.117.110] has joined #go-nuts 15:17 -!- Ayoi [~david@mic92-12-88-161-108-143.fbx.proxad.net] has joined #go-nuts 15:19 -!- phalax [~phalax@c213-100-72-128.swipnet.se] has quit [Ping timeout: 240 seconds] 15:26 -!- erus` [~tommo@host86-173-0-78.range86-173.btcentralplus.com] has joined #go-nuts 15:29 < cenuij> [14:45] <cde> yep everyone would be using bsd now 15:30 < cenuij> noes! we'd be running VMS on dec alpha's! 15:31 * cenuij curses HP and curses Itanic 15:32 < cde> cenuij: I used VMS at school, ten years ago. it was a cool IS 15:32 < cde> *OS 15:32 < cenuij> yep, same we had a bunch of vax clusters 15:33 < jumzi> plan9? 15:33 < jumzi> anyone? 15:33 < cenuij> plan9 on DEC alphas? 15:34 < cenuij> might have saved the world a few trillion in cooling costs alone ;) 15:34 < Namegduf> Yeah, but we'd have had to go back to filing paper until it became production usable 15:34 < Namegduf> :P 15:34 < cenuij> heh :P 15:35 -!- hcl2 [~akuma@75.41.110.112] has joined #go-nuts 15:38 < cenuij> i was working on unpacking blizzards MPQ archive format, I think im about 380 lines of Go code to unpack/uncompress/unencrypt files from these archives. Took me about 1k+ in java & c++ 15:40 < jumzi> woot, talk about self control 15:40 < cenuij> it's just something i've done before so it was a good self exercise for comparison 15:41 < jumzi> i meanth about touching the blizzard mpq without getting distracted and start playing computer games instead 15:41 < cenuij> oh haha 15:41 < cenuij> well it's primarily to be nerdy about starcraft2 stats 15:41 < cenuij> So i'll have to play some games as *ahem* research 15:47 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has quit [Read error: Operation timed out] 15:47 -!- Scorchin [~Scorchin@host86-145-18-139.range86-145.btcentralplus.com] has quit [Ping timeout: 240 seconds] 15:49 < aiju> VMS lol 15:54 -!- Project_2501 [~Marvin@82.84.92.46] has joined #go-nuts 15:56 -!- DerHorst [~Horst@e176096198.adsl.alicedsl.de] has quit [Remote host closed the connection] 15:56 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has joined #go-nuts 15:57 -!- Ina [~Ina@dsl-087-195-206-242.solcon.nl] has quit [Ping timeout: 245 seconds] 15:57 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has quit [Max SendQ exceeded] 15:57 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has joined #go-nuts 15:59 -!- reiddraper [~reid@rrcs-50-74-0-42.nyc.biz.rr.com] has joined #go-nuts 15:59 -!- reiddraper [~reid@rrcs-50-74-0-42.nyc.biz.rr.com] has left #go-nuts [] 16:01 < cenuij> hey don't knock VMS, it had this tool called phone, was pretty much like instant messaging for anything on a decnet 16:02 < cenuij> admitedly, we only used it to harrass admins cos the print spool was always broken :( 16:03 -!- saturnfive [~saturnfiv@219.144.254.190] has left #go-nuts [] 16:04 < cenuij> but offtopic again, back to Go and games, *waves* 16:09 < fzzbt> why goinstall accepts only github/googlecode/bitbucket urls and not just package names like for example python easy_install/pip? i dont want to tie my program into one of these SCMs. 16:11 < Ayoi> hi there, hmmm. i have a problem understanding how can i get a pointer to the http server object from the core package "http", usually we create it with the http.ListenAndServe method, but it doesn't return an object but only errors. 16:17 < exch> ListenAndServe is a blocking call. You should call it in a goroutine. Actual requests are handled by the funciton you specified in http.HandleFunc() 16:17 -!- sanjoyd [~sanjoy@unaffiliated/sanjoyd] has joined #go-nuts 16:18 < exch> http.HandleFunc("/", myHttpHandler); http.ListenAndServe(...); 16:18 < exch> myHttphandler will then be called everytime a new request comes in 16:19 < cenuij> fzzbt: you can install a package from a local path with goinstall, or just patch download.go from src/cmd/goinstall 16:19 < fzzbt> Ayoi: here is good example tutorial if you havent read it already http://golang.org/doc/codelab/wiki/ 16:22 < Ayoi> exch, thanksfor the explanation, fzzbt i'm gonna read that , thanks. 16:23 < aiju> cenuij: UNIX had write(1) 16:24 < cenuij> aiju: yes but only on the same system, and no "address book" 16:24 < skelterjohn> fzzbt: I don't understand what alternative you're suggesting for goinstall 16:24 < sanjoyd> Hi! I'm trying to build Go (not gccgo) behind an http proxy, and when I run all.bash, the http tests fail. 16:24 < skelterjohn> (note, not saying you don't have a point) 16:24 < skelterjohn> sanjoyd: DISABLE_NET_TESTS=1 16:24 < sanjoyd> How can I fix this? 16:25 < sanjoyd> skelterjohn: is there any way I can get Go to use my http proxy? 16:25 < skelterjohn> DISABLE_NET_TESTS=1 ./all.bash 16:25 < sanjoyd> export http_proxy does not seem to work. 16:25 < skelterjohn> no idea 16:25 < skelterjohn> just don't run the net tests :) 16:25 * sanjoyd is doing that. 16:25 < skelterjohn> yeah i don't know much about proxies, etc. i just know the solution for that specific problem 16:25 < skelterjohn> (it comes up a lot) 16:25 < aiju> HTTP proxies cause nothing but trouble 16:26 < sanjoyd> Can't do much; proxied Internet is all what my university offers. 16:26 < skelterjohn> are you in china? 16:26 < sanjoyd> No, India. 16:27 < cenuij> do you have control over the box? 16:27 < aiju> how do you IRC through a proxy? 16:28 < sanjoyd> I'm tunneling. I generally use proxychains for IRC, git etc. but that does not work so well with build scripts. 16:28 < skelterjohn> super lame 16:28 < skelterjohn> stage a protest 16:29 < sanjoyd> I agree with the 'super-lame' part. :) 16:29 < sanjoyd> Okay, builds. Thanks! 16:29 < aiju> look how Gandhi did it 16:29 -!- artagnon [~artagnon@unaffiliated/artagnon] has joined #go-nuts 16:30 < jumzi> slept with allot of naked young women? 16:30 < sanjoyd> Ahimsa against Internet censorship? Makes sense, actually. 16:31 < sanjoyd> Writing code is more fun that making salt, though. 16:31 < fzzbt> skelterjohn: well basically, i just don't like writing 'import "github.com/some/repo/package"' but rather 'import package'. if github ever goes down then everyone have to change it to 'import "bitbucket.com/some/repo/packge"' etc. i couldnt care less how the actual installation process goes. 16:31 -!- artagnon [~artagnon@unaffiliated/artagnon] has left #go-nuts ["Killed buffer"] 16:31 < skelterjohn> how would goinstall know where to get the package? 16:31 < KBme> but this way you can install dependencies automatically, which is pretty nice 16:32 < cenuij> nice until you want to use your (more advanced) system package manager for libraries 16:32 < skelterjohn> this is nice because google doesn't have to maintain a repository of package locations 16:32 < cenuij> but I believe A Gerrand is making some changes on that front 16:34 < cenuij> I'd personnally like to see linux packagers get together and work on goinstall to respect and work with .rpm .deb and their associated tools. 16:34 -!- arun_ [~arun@unaffiliated/sindian] has quit [Ping timeout: 240 seconds] 16:35 < aiju> I'd personally like to see .rpm .deb and their associated tools dead 16:35 < jumzi> well developers should be able to use goinstall tbh 16:35 < jumzi> aiju: you did it again 16:35 < skelterjohn> oops, he did it again? 16:35 < cenuij> why? your system would be unusable unless you spent 99% of your time maintaining and compiling packages and libs 16:35 -!- arun_ [~arun@unaffiliated/sindian] has joined #go-nuts 16:36 < jumzi> i thinx 16:36 < skelterjohn> cenuij: why do you say that? 16:36 < aiju> you know that .rpm and .deb are not the only package formats around? 16:36 < cenuij> the rpm and deb toolchains provide very valuable sat-solvers 16:36 < cenuij> wihtout which most of your system wouldnt work 16:36 < aiju> cenuij: my system DOES work without rpm and deb 16:36 < skelterjohn> mine too 16:36 < skelterjohn> i've got a mac 16:36 < jumzi> praising pacman eh? 16:37 < cenuij> and im sure you never had dependancy problems? 16:37 < jumzi> yeah, i prefer an app store before deb anyday 16:37 < aiju> hahaha 16:37 < jumzi> anyhow, everything would be so nice if everyone could just agree that static is tha shait 16:37 < skelterjohn> i haven't really had any dep issues that i can think of 16:37 < aiju> cenuij: we could also just get rid of dynamic linking and largely simplify package maangement thus 16:37 < skelterjohn> though, i do have fink installed 16:37 < skelterjohn> and it's much the same thing 16:38 < jumzi> only thing i like with macs is that p9p works on it 16:38 < cenuij> only thing I like about macs is that I can install linux on them 16:38 < jumzi> then it wouldn't be a mac 16:38 < cenuij> that would be the point 16:38 < jumzi> it would be an abomination 16:38 < aiju> that probably voids your warranty :P 16:38 < KBme> i love the one button mouse 16:39 < KBme> it's genious 16:39 < jumzi> yeah, who needs two or even three buttons!? 16:39 < jumzi> ppl without fingers would be left out 16:39 < cenuij> my mouse has 12 button numpad emulation on the right side 16:39 < cenuij> :( 16:39 < skelterjohn> sounds useful 16:39 < aiju> cenuij: haha 16:40 < KBme> http://www.theonion.com/video/apple-introduces-revolutionary-new-laptop-with-no,14299/ 16:40 < aiju> numpad is an abomination 16:40 < cenuij> pretty nice for code macros 16:40 < jumzi> numpads are awesome, they take space 16:40 < aiju> jumzi: yeah, we can't figure out a better reason for all that space 16:40 < jumzi> hmm...cup holder? 16:40 < aiju> s/reason/use 16:41 < skelterjohn> KBme: when is that from? 16:41 < skelterjohn> probably predates the ipad 16:41 < KBme> heh 16:41 < KBme> yeah i think so 16:42 < fzzbt> numpads would be okay if they were placed on the left side of keyboard, so it wouldn't take space from the mouse. 16:42 < jumzi> what!? 16:42 < jumzi> they fulfill no use = not ok! 16:42 < jumzi> what am i saying 16:42 < cenuij> back on topic before we start discussing fixed width fonts and dvorak kb layouts? 16:42 < jumzi> this is computers we're talking about 16:43 < KBme> cenuij: yeah, i love organic lettuce too 16:43 < jumzi> fixed width = overrated, dvorak = awesome 16:43 < jumzi> ops 16:43 * exch is kinda happy with his numpad cos he has all sorts of commands bound to it in openbox 16:43 -!- htoothrot [~mux@66-169-185-121.dhcp.ftwo.tx.charter.com] has quit [Ping timeout: 276 seconds] 16:43 < cenuij> razer naga is the mouse i use atm, and off to watch Scotland whip Wales @ rugby 16:44 < jumzi> hmm gamer eh? 16:44 < KBme> really, someone should shoot hardware manufacturers for not changing the keyboard layout 16:44 < cenuij> y, mostly mmo & rts 16:44 < jumzi> or just make the keys aligned? 16:44 < jumzi> not that groundbreaking 16:44 < cenuij> first person went down the shitter since doom3 16:44 < aiju> someone should shoot laptop manufacturers for CHANGING the keyboard layout 16:44 < jumzi> aiju: huh? 16:44 < KBme> oh that too yeah 16:45 < KBme> each and every laptop has a slightly different layout 16:45 < jumzi> aah 16:45 < aiju> mine has the following layout in the lowest row 16:45 < skelterjohn> ah, the glory days of q3 16:45 < Namegduf> Mine has a regular full-size keyboard. 16:45 < skelterjohn> that was my game. 16:45 < Namegduf> With numpad. 16:45 < jumzi> i only go thinkpad :D 16:45 < aiju> ctrl, fn, alt, ^°, space, <>|, ins, del, alt gr 16:45 < KBme> -> go-nuts-social? 16:45 < Namegduf> Pff. 16:45 < jumzi> wousss talk 16:45 < Namegduf> It also has two HDDs and two fans and two GPUs 16:45 < aiju> channels unable to tolerate moderate levels of off topic suck :P 16:46 < Namegduf> So it's an atypical laptop 16:46 < KBme> ok, so my laptop is electrocuting me 16:46 < jumzi> any laptop that big is utterly useless 16:46 < KBme> is that normal? 16:46 < jumzi> you don't use a laptop as a desktop computer 16:46 < aiju> KBme: yeah 16:46 < aiju> mine does that do D: 16:46 < KBme> ok, cool 16:46 < Namegduf> Yes I do. 16:46 < aiju> *,too 16:46 < skelterjohn> jumzi: why not? it's a desktop computer that isn't chained to a desk 16:46 < Namegduf> I use it like a luggable. 16:46 < skelterjohn> how is that not useful? 16:46 < KBme> does it electrocute you? 16:47 < Namegduf> I have a tiny netbook I use like a regular laptop 16:47 < jumzi> well anything you can't take on the bus is just a glorified desktop machine 16:47 < aiju> the case is at +230 V sometimes 16:47 < jumzi> and in your case an expensive one 16:47 < KBme> aiju: what brand? 16:47 < aiju> toshiba 16:47 < KBme> hmm, so it's not a dell thing 16:47 < cenuij> I guesss if you cba to service your computer then powerful laptops are the way to go. 16:47 < aiju> it has a high impedance 16:47 < aiju> so it doesn't kill me 16:48 < jumzi> Namegduf: sry what!? how can you not die from the strain using one of those? 16:48 < KBme> i wonder if this is a feature or if I can call customer support about this 16:48 < Namegduf> A netbook? 16:48 < Namegduf> Or a huge laptop? 16:48 < jumzi> a tiny netbook 16:48 < Namegduf> "tiny" == 9" 16:48 < Namegduf> Which fits in my coat pocket. 16:48 < Namegduf> I have big pockets. 16:49 < KBme> that's like as big as my phone 16:49 < skelterjohn> your phone is too big 16:49 < KBme> :) 16:49 < Namegduf> Yes, it is 16:49 < Namegduf> XD 16:49 < cenuij> speaking of phones, wtf nokia 16:49 < jumzi> FLAME NOKIA 16:49 < cenuij> really, i'm gutted 16:49 < jumzi> if they want to kill themself who are we to judgö? 16:49 -!- dahankzter [~henrik@92-244-3-192.customers.ownit.se] has quit [Remote host closed the connection] 16:49 < cenuij> wanted to get a MeeGo phone 16:50 < Namegduf> I was hoping for MeeGo to be something good, yeah. 16:50 < KBme> jumzi: why, tho? 16:50 < KBme> symbian sucks, true dat 16:50 < skelterjohn> jumzi: reference to former nokia exec? 16:50 < Namegduf> A non-Java phone ould be good. 16:50 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-183-83.clienti.tiscali.it] has joined #go-nuts 16:50 < Namegduf> But now we just have Android, WP7, and the iPhone, and 2/3 of those are closed platforms. 16:50 < aiju> Namegduf: wtf? srsly? how can you even THINK about a telephone without Java? 16:50 < aiju> Namegduf: 3/3 16:50 < cenuij> why would you throw out your own platform and services and use the one with the lowest market share instead? 16:51 < cenuij> unles Elop was taking hard cash? 16:51 < jumzi> java = closed 16:51 < jumzi> its impossible to read without anxiety attacks 16:51 < Namegduf> Reading comments on it, the suggestion is that they could distinguish themselves by using the OS no one else is using. 16:51 < jumzi> KBme: what you mean why? 16:51 < cenuij> it's fucking insane 16:51 < Namegduf> Not that everyone else couldn't and wouldn't if it proved successful 16:51 < Namegduf> They just didn't want to 16:51 < fzzbt> Elop is a trojan horse :( 16:51 < KBme> jumzi: why flame them? 16:52 < aiju> WP7 is probably better than android and iOS 16:52 < cenuij> fzzbt: I think that is probably the case 16:52 < Namegduf> I think he was joking. 16:52 < jumzi> im to tired to code? 16:52 < KBme> aiju: srs? 16:52 < Namegduf> So what we need is a Go phone. 16:52 < jumzi> everything i write is just jibberish 16:52 < cenuij> and the worst part of this deal? nokia gets no revenue from apps, bing and other "services" 16:52 < Namegduf> Someone should start working on that right now. 16:52 < Namegduf> jumzi: Do some Perl instead 16:52 < Namegduf> :P 16:52 < KBme> jumzi: ohh nokia goind wp7? 16:52 < aiju> oh wait XNA and Silverlight only 16:53 < aiju> i take it back :P 16:53 < cenuij> aiju: haha 16:53 < aiju> all three are infinitely retarded 16:53 < cenuij> enjoy expression studio 16:53 < jumzi> Namegduf: :P 16:53 < cenuij> :( 16:53 -!- Project_2501 [~Marvin@82.84.92.46] has quit [Ping timeout: 260 seconds] 16:53 < Namegduf> aiju: You should make a phone based on Go on Plan 9 16:54 < cenuij> with a DEC Alpha 16:54 < aiju> gofy going phone? 16:55 < cenuij> having said all this, i was kind of worried tho about these intel cpus MeeGo was going to be running on 16:55 < cenuij> I don't need a pocket heater 16:55 < aiju> intel cpus ona phone? :D 16:55 < aiju> wow 16:55 < aiju> even x86? 16:55 < cenuij> was supposedly new atom fab for the meggo handset 16:55 < aiju> hahahahahahahahahaha 16:56 < aiju> a phone based on x86, MMD 16:56 < cenuij> yeah, exactly 16:56 < jumzi> motorola f3 ftw 16:56 < cenuij> i had planned to buy 3 spare batteries 16:56 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has quit [Read error: Connection reset by peer] 16:57 < Namegduf> You laugh now, but in two years phones will need to have six cores and a battery life of three hours. 16:57 < cenuij> now i'll just be a sheep and get android, but meh java is an utter snoozefest :( 16:58 < jumzi> well go for arm ftw! 16:58 < cenuij> bah rugby has started, off to watch the Welsh get trounced! 16:58 < jumzi> rugby? oh my gad 17:04 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:a4e2:a0fd:5b91:3ac9] has joined #go-nuts 17:08 -!- phalax [~phalax@c213-100-72-128.swipnet.se] has joined #go-nuts 17:11 -!- zweilever [~ziller@187.196.189.72.cfl.res.rr.com] has joined #go-nuts 17:13 < zweilever> Does anyone know if there is support for Go syntax highlighting in nano yet? 17:13 < aiju> nano has syntax highlighting? 17:13 < zweilever> indeed 17:13 < jumzi> <insert rant about syntax highlighting> 17:13 < Namegduf> Does anyone know if there is support for Go syntax highlighting in Windows notepad yet? 17:14 < jumzi> <insert another rant about nano> 17:14 < aiju> creeping feauritis 17:14 < aiju> *featuritis 17:14 < jumzi> <notepad> 17:14 < Namegduf> Sorry, couldn't help myself. XD 17:14 < aiju> i always carry pencils with me to syntax highlight all books i read 17:14 < sanjoyd> zweilever: Emacs. 17:14 < Namegduf> aiju: You think that's bad, I have to implement autocompletion in my books. 17:15 < zweilever> sanjoyd: No. I like nano. 17:15 < aiju> i also have english language syntax highlighting for irssi 17:15 < aiju> how can you understand anything without syntax highlighting? 17:15 -!- Fish- [~Fish@bus77-2-82-244-150-190.fbx.proxad.net] has joined #go-nuts 17:15 < sanjoyd> Verbs and nouns? 17:15 < Namegduf> aiju: Can I have the file for that? 17:15 < jumzi> pfft only wousses still use irssi 17:15 < jumzi> real men uses filesystems 17:16 < aiju> i should really write this in Go and post it to reddit or something 17:16 < Namegduf> I saw a client kinda like that. 17:16 < Namegduf> It was horrifying because you interacted with it via shell script 17:16 < Namegduf> And it was primarily for writing IRC scripts in shell script 17:16 < jumzi> filesystem irc client? 17:17 < Namegduf> http://tools.suckless.org/ii/ 17:17 < jumzi> im actually using a irc client implemented as a filesystem right now 17:17 < jumzi> its awesome 17:19 < kimelto> ii? 17:21 < jumzi> nop, its actually name ircfs 17:21 < aiju> inferno? 17:21 < jumzi> yep 17:22 < jumzi> atm i'm cheating abit and use wm/irc 17:39 < aiju> how do i assign to a function variable? 17:40 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts 17:40 < skelterjohn> aiju: the '=' sign? 17:41 < aiju> method p.Block is not an expression, must be called 17:41 < skelterjohn> var x func(); x = func() {...} 17:41 < skelterjohn> pastebin? 17:41 < aiju> no way to assign functions directly? 17:41 < skelterjohn> oh - it's a function with a receiver type 17:42 < aiju> oh works with functions, but not with methods 17:42 < exch> I may be wrong here, but I dont believe that works for methods, only functions 17:42 < skelterjohn> i think that's on the todo list 17:42 < skelterjohn> but don't take my word for it 17:42 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts 17:43 -!- reiddraper [~reid@rrcs-50-74-0-42.nyc.biz.rr.com] has joined #go-nuts 17:44 < skelterjohn> in the mean time you can do = func(Block's parameters) (Block's return type) { return p.Block(params) }, but from what you said i think you aren't realized that 17:45 -!- tvw [~tv@e176003116.adsl.alicedsl.de] has joined #go-nuts 17:47 < skelterjohn> aren't -> already 17:50 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has joined #go-nuts 18:01 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-170-58.clienti.tiscali.it] has joined #go-nuts 18:01 -!- htoothrot [~mux@66-169-185-121.dhcp.ftwo.tx.charter.com] has joined #go-nuts 18:04 -!- Project-2501 [~Marvin@dynamic-adsl-94-36-183-83.clienti.tiscali.it] has quit [Ping timeout: 276 seconds] 18:06 -!- sauerbraten [~sauerbrat@p508CEE97.dip.t-dialin.net] has joined #go-nuts 18:06 -!- Venom_X [~pjacobs@74.61.90.217] has joined #go-nuts 18:08 -!- Venom_X [~pjacobs@74.61.90.217] has quit [Client Quit] 18:10 -!- Project-2501 [~Marvin@82.84.74.65] has joined #go-nuts 18:13 -!- Project_2501 [~Marvin@dynamic-adsl-94-36-170-58.clienti.tiscali.it] has quit [Ping timeout: 240 seconds] 18:28 -!- TheMue [~TheMue@p5DDF4CB3.dip.t-dialin.net] has joined #go-nuts 18:40 < sanjoyd> n00b question about the codebase. I see things like void runtime·ifaceE2I(struct InterfaceType*, Eface, Iface*) in the runtime.h (and other files). Am I missing something, or is there some magic going on here? 18:40 < aiju> runtime.h is full of magic 18:40 < aiju> the whole runtime is a huge bunch of hacks 18:40 < aiju> what's with that particular example? 18:41 < sanjoyd> Nothing with that particular example, I'm looking at the GC, and I see runtime·gc(int32 force); and I don't know that means. 18:41 < aiju> it's C 18:41 < sanjoyd> Is runtime.gc proper C syntax? 18:42 < aiju> oh you mean that 18:42 < aiju> it's · 18:42 < sanjoyd> (In context to a function name). 18:42 < aiju> not . 18:42 -!- Project-2501 [~Marvin@82.84.74.65] has quit [Quit: E se abbasso questa leva che succ...] 18:42 < exch> it supports unicode identofiers 18:42 < exch> *identifiers 18:42 < aiju> the C compiler sees · just as a character 18:42 < sanjoyd> Oh, okay. 18:42 < aiju> like _ 18:42 < sanjoyd> I confused with . 18:42 < sanjoyd> (As you said). 18:42 < aiju> it's a bit confusing 18:42 < aiju> sometimes . is used and sometimes · 18:42 -!- Ayoi [~david@mic92-12-88-161-108-143.fbx.proxad.net] has quit [Ping timeout: 272 seconds] 18:43 < aiju> they seem to try to use the former whenever it is valid 18:43 < aiju> like in debugging information 18:43 < sanjoyd> Is it not a pain to type? 18:43 < exch> Not sure why they chose that middle fot over _ tbh 18:44 < exch> *dot 18:44 < exch> ffs, my typing is horrible today 18:48 -!- photron [~photron@port-92-201-24-107.dynamic.qsc.de] has quit [Ping timeout: 240 seconds] 18:49 -!- wtfness [~dsc@dyn-86-36-35-172.qatar.cmu.edu] has joined #go-nuts 18:49 -!- drhodes [~none@drhodes.xen.prgmr.com] has joined #go-nuts 18:50 -!- sauerbraten [~sauerbrat@p508CEE97.dip.t-dialin.net] has quit [Remote host closed the connection] 18:54 < skelterjohn> because people use _ for other things 18:57 -!- wtfness [~dsc@dyn-86-36-35-172.qatar.cmu.edu] has quit [Ping timeout: 255 seconds] 18:58 < rm445> the middle dot is a bit cute, isn't it - basically it's a kind of namespacing not enforced by the compiler. 18:59 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has joined #go-nuts 18:59 < rm445> I imagine everyone using it has it easily-reachable via a compose key or some such 19:06 < KBme> yeah, compose is prety easy 19:07 < KBme> especially on plan9 tools, they have some awesome compose sequences 19:07 -!- napsy [~luka@88.200.96.18] has quit [Quit: leaving] 19:08 -!- dforsyth [~dforsyth@c-76-21-40-117.hsd1.ca.comcast.net] has quit [Remote host closed the connection] 19:09 -!- dforsyth [~dforsyth@ec2-184-72-3-134.us-west-1.compute.amazonaws.com] has joined #go-nuts 19:11 -!- napsy [~luka@88.200.96.18] has joined #go-nuts 19:12 -!- napsy [~luka@88.200.96.18] has quit [Client Quit] 19:12 -!- napsy [~luka@88.200.96.18] has joined #go-nuts 19:12 -!- lmoura [~lauromour@186.212.117.110] has quit [Read error: Connection reset by peer] 19:14 -!- wtfness [~dsc@dyn-86-36-43-113.wv.qatar.cmu.edu] has joined #go-nuts 19:18 -!- lmoura [~lauromour@187.59.246.70] has joined #go-nuts 19:22 -!- tvw [~tv@e176003116.adsl.alicedsl.de] has quit [Remote host closed the connection] 19:33 -!- giolekva [4a7d7921@gateway/web/freenode/ip.74.125.121.33] has joined #go-nuts 19:37 -!- zweilever [~ziller@187.196.189.72.cfl.res.rr.com] has left #go-nuts ["Leaving"] 19:39 -!- jodaro [~user@poquito.divinia.com] has joined #go-nuts 19:45 -!- giolekva [4a7d7921@gateway/web/freenode/ip.74.125.121.33] has quit [Quit: Page closed] 19:45 -!- visof [~visof@unaffiliated/visof] has quit [Ping timeout: 250 seconds] 19:50 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Ping timeout: 246 seconds] 19:57 -!- |Craig| [~|Craig|@panda3d/entropy] has joined #go-nuts 20:00 -!- gid [~gid@220.253-195-125.VIC.netspace.net.au] has joined #go-nuts 20:04 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts 20:20 -!- visof [~visof@unaffiliated/visof] has quit [Ping timeout: 260 seconds] 20:21 -!- illya77 [~illya77@214-95-133-95.pool.ukrtel.net] has joined #go-nuts 20:37 -!- lmoura [~lauromour@187.59.246.70] has quit [Quit: Leaving] 20:39 -!- virtualsue [~chatzilla@nat/cisco/x-ixaxlfbuepxnptyr] has joined #go-nuts 20:47 -!- illya77 [~illya77@214-95-133-95.pool.ukrtel.net] has quit [Read error: Connection reset by peer] 20:48 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.4] 20:52 -!- Ayoi [~david@mic92-12-88-161-108-143.fbx.proxad.net] has joined #go-nuts 21:03 < skelterjohn> for cgo pkgs, the makefile runs "CGOPKGPATH= cgo -- <sources>" 21:03 < skelterjohn> what is CGOPKGPATH for? 21:08 -!- virtualsue [~chatzilla@nat/cisco/x-ixaxlfbuepxnptyr] has quit [Ping timeout: 240 seconds] 21:08 < erus`> main { main <- ". Hello " <- main <- "Enter name:" } 21:09 < erus`> thats part of my scripting language idea 21:09 -!- espeed [~espeed@63.246.231.57] has joined #go-nuts 21:09 < erus`> based on go channels 21:13 < skelterjohn> I don't get it 21:15 < erus`> skelterjohn: can you help me with gb quickly 21:15 < skelterjohn> of course 21:16 < erus`> how can i use local packages 21:17 < erus`> without installing them into GOROOT 21:18 < skelterjohn> that's what gb is meant for 21:18 < skelterjohn> for example 21:18 < skelterjohn> if i make a dir "erus" 21:18 < skelterjohn> and put in it the "Tracer" and "s3dm" packages 21:18 < skelterjohn> i can run gb from erus and it will link Tracer and s3dm against each other 21:19 < skelterjohn> (i have done this) 21:22 -!- phalax [~phalax@c213-100-72-128.swipnet.se] has quit [Ping timeout: 240 seconds] 21:28 -!- bortzmeyer [~stephane@2a01:e35:8bd9:8bb0:a4e2:a0fd:5b91:3ac9] has quit [Quit: Leaving.] 21:36 -!- nsf [~nsf@jiss.convex.ru] has joined #go-nuts 21:36 -!- reiddraper [~reid@rrcs-50-74-0-42.nyc.biz.rr.com] has quit [Quit: reiddraper] 21:37 -!- reiddraper [~reid@rrcs-50-74-0-42.nyc.biz.rr.com] has joined #go-nuts 21:38 -!- Fish- [~Fish@bus77-2-82-244-150-190.fbx.proxad.net] has quit [Quit: So Long, and Thanks for All the Fish] 21:39 < TheMue> so, the backends of my crontab package are now supervised too. 21:39 -!- Fish- [~Fish@bus77-2-82-244-150-190.fbx.proxad.net] has joined #go-nuts 21:40 -!- pothos_ [~pothos@111-240-166-1.dynamic.hinet.net] has joined #go-nuts 21:42 -!- pothos [~pothos@111-240-167-224.dynamic.hinet.net] has quit [Read error: Connection reset by peer] 21:42 < skelterjohn> TheMue: what does that mean? 21:42 < TheMue> skelterjohn: Do you know Erlang? 21:43 < skelterjohn> nope 21:43 < TheMue> skelterjohn: It condains a module called supervisor. 21:43 < TheMue> skelterjohn: Here processes can monitor each other and easily be restarted in case of an error. 21:43 < skelterjohn> gotcha 21:43 < TheMue> skelterjohn: Erlang processes = Go goroutines. 21:44 < TheMue> skelterjohn: So I've developed a mechanism which uses defer and recover together with an interface. 21:46 < TheMue> skelterjohn: In case of a hard error inside a goroutine it will be restarted. The user of the supervisor can define what to do else, e.g. for the consistency of the variables. 21:47 < TheMue> skelterjohn: See http://www.tideland.biz/projects/tideland-cgl/utilities and http://www.tideland.biz/articles/coding-in-go/supervising-goroutines 21:48 -!- aho [~nya@fuld-590c70af.pool.mediaWays.net] has joined #go-nuts 21:52 < zozoR> typedef unsigned VARNAME <-- is that an unsigned int? o.o 21:52 < zozoR> in c that is 21:53 < nsf> uhm, is this a question? 21:53 -!- tensorpudding [~user@99.23.127.179] has joined #go-nuts 21:53 < zozoR> yes 21:53 < zozoR> :3 21:53 < nsf> in C it is an int, yes 21:53 < nsf> default type is int 21:53 < nsf> signed a; unsigned b; 21:53 < nsf> both a and b are ints 21:53 < nsf> a is signed int and b is unsigned int 21:54 < nsf> :) 21:54 -!- erus` [~tommo@host86-173-0-78.range86-173.btcentralplus.com] has quit [Ping timeout: 240 seconds] 21:54 < zozoR> thanks :) 21:54 -!- erus` [~tommo@host86-162-225-149.range86-162.btcentralplus.com] has joined #go-nuts 21:54 < zozoR> disturbing you can omit the type like that .. 21:54 < zozoR> MY LIFE IS TOO SHORT TO WRITE INT 21:54 < nsf> C is weird 21:55 < nsf> llvm/clang guys don't use int with unsigned 21:55 < nsf> they simply write 'unsigned var;' 21:55 < nsf> personally I use 'unsigned int var;' 21:55 < aiju> i think it was BCPL which had only one type: machine word 21:55 < aiju> then those damn DEC engineers came up with byte instructions 21:55 < aiju> and they had to add a byte type 21:56 < zozoR> oh noes 21:56 < aiju> so they had int and char in C 21:56 -!- arun_ [~arun@unaffiliated/sindian] has quit [Ping timeout: 240 seconds] 21:56 < nsf> what I don't like in C is this: 21:56 < aiju> int was/is optional 21:56 < nsf> unsigned long long var; 21:56 < aiju> foo(a) {return a;} 21:56 < zozoR> its very long 21:57 < aiju> nsf: yeah, that's some really ugly bits which were added later 21:57 < zozoR> would that be uint64? 21:57 < nsf> yes 21:57 < nsf> btw, no one uses unsigned long long 21:57 < nsf> #include <stdint.h> and uint64_t 21:57 < aiju> this happened when C left the 16-bit worldd 21:58 < aiju> types got ugly 21:58 < zozoR> lol talk about stubborness 21:59 < zozoR> but why do they have long ints.. when ints are just as long 21:59 < zozoR> : | 21:59 < nsf> on x86_64 21:59 < nsf> int is 32 bits 21:59 < aiju> zozoR: well, come back to 16-bit world 21:59 < aiju> so, they have 8-bit chars and 16-bit ints 21:59 < nsf> long int (or simply long) is 64 bits 22:00 < aiju> they added the 32-bit long type quite late 22:00 < zozoR> oh 22:00 < aiju> people used long for 32-bit 22:00 < nsf> btw, as far as I understand 22:00 < aiju> and when everything got 32-bit, they kept it 22:00 < nsf> the full name for that 64bit type is: 22:00 < nsf> unsigned long long int var; 22:00 < nsf> lol 22:01 < aiju> early C didn't have signed/unsigned 22:01 < aiju> want unsigned arithmetic? use pointers 22:01 < aiju> it didn't have casts either, all casts were implicit 22:01 < aiju> even casts like int to struct 22:01 < zozoR> go <3 22:03 < aiju> this also explains the strange prefixes some people put in C structs 22:03 < aiju> those implicit casts forced structure member names to be globally unique 22:06 -!- rpdillon [~user@ip174-65-90-100.sd.sd.cox.net] has joined #go-nuts 22:09 -!- arun_ [~arun@unaffiliated/sindian] has joined #go-nuts 22:10 -!- Ayoi [~david@mic92-12-88-161-108-143.fbx.proxad.net] has quit [Ping timeout: 265 seconds] 22:13 -!- visof [~visof@unaffiliated/visof] has joined #go-nuts 22:19 -!- rpdillon [~user@ip174-65-90-100.sd.sd.cox.net] has quit [Ping timeout: 240 seconds] 22:19 -!- rpdillon [~user@ip174-65-90-100.sd.sd.cox.net] has joined #go-nuts 22:21 -!- Fish- [~Fish@bus77-2-82-244-150-190.fbx.proxad.net] has quit [Quit: So Long, and Thanks for All the Fish] 22:23 -!- espeed [~espeed@63.246.231.57] has quit [Ping timeout: 255 seconds] 22:24 -!- Ayoi [~david@mic92-12-88-161-108-143.fbx.proxad.net] has joined #go-nuts 22:25 -!- rpdillon [~user@ip174-65-90-100.sd.sd.cox.net] has quit [Ping timeout: 250 seconds] 22:26 -!- rpdillon [~user@ip174-65-90-100.sd.sd.cox.net] has joined #go-nuts 22:26 -!- rpdillon [~user@ip174-65-90-100.sd.sd.cox.net] has quit [Client Quit] 22:27 -!- visof [~visof@unaffiliated/visof] has quit [Remote host closed the connection] 22:28 -!- rlab [~Miranda@91.200.158.34] has quit [Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org] 22:31 -!- espeed [~espeed@63.246.231.57] has joined #go-nuts 22:31 -!- espeed [~espeed@63.246.231.57] has quit [Max SendQ exceeded] 22:31 -!- arun_ [~arun@unaffiliated/sindian] has quit [Ping timeout: 240 seconds] 22:34 -!- |Craig| [~|Craig|@panda3d/entropy] has quit [Quit: |Craig|] 22:34 -!- nsf [~nsf@jiss.convex.ru] has quit [Quit: WeeChat 0.3.4] 22:36 -!- zozoR [~zozoR@56346ed3.rev.stofanet.dk] has quit [Quit: Morten. Desu~] 22:38 -!- reiddraper [~reid@rrcs-50-74-0-42.nyc.biz.rr.com] has left #go-nuts [] 22:39 -!- espeed [~espeed@63.246.231.57] has joined #go-nuts 22:42 -!- espeed [~espeed@63.246.231.57] has quit [Max SendQ exceeded] 22:44 -!- TheMue [~TheMue@p5DDF4CB3.dip.t-dialin.net] has quit [Quit: TheMue] 22:45 -!- arun_ [~arun@unaffiliated/sindian] has joined #go-nuts 22:45 -!- espeed [~espeed@63.246.231.57] has joined #go-nuts 22:49 -!- espeed [~espeed@63.246.231.57] has quit [Ping timeout: 240 seconds] 22:55 -!- Kashia [~Kashia@port-92-200-126-131.dynamic.qsc.de] has joined #go-nuts 22:55 -!- Zoopee [alsbergt@zoopee.org] has quit [Ping timeout: 245 seconds] 23:06 -!- norayr [~noch@host-80.221.162.46.ucom.am] has joined #go-nuts 23:10 -!- j3parker [j3parker@artificial-flavours.csclub.uwaterloo.ca] has quit [Ping timeout: 250 seconds] 23:10 -!- j3parker [j3parker@artificial-flavours.csclub.uwaterloo.ca] has joined #go-nuts 23:10 < cenuij> fucking wales 23:10 -!- DayS` [david@199.48.242.75] has joined #go-nuts 23:11 < cenuij> well the bonus is some welsh dude want's to play bridge 23:11 < skelterjohn> what are they good for? 23:11 < cenuij> rugby 23:11 < skelterjohn> absolutely nothin 23:11 < skelterjohn> say it again! 23:11 < cenuij> US 23:11 < skelterjohn> whales 23:11 < skelterjohn> *huh!* 23:11 < skelterjohn> what are they good for, absolutely nothin! 23:11 < cenuij> US 23:12 < cenuij> bridge seems more interesting than poker 23:12 < skelterjohn> i started without knowing what was going on, and i'm ending not knowing what's going on 23:12 < cenuij> skelterjohn: is there grain spirit involved? 23:12 < skelterjohn> the night is young 23:13 < cenuij> you are excused 23:13 < skelterjohn> and when i'm drunk, i make typos. that's how you can tell. 23:13 -!- Ayoi [~david@mic92-12-88-161-108-143.fbx.proxad.net] has quit [Ping timeout: 265 seconds] 23:13 -!- norayr [~noch@host-80.221.162.46.ucom.am] has left #go-nuts [] 23:14 -!- Ayoi [~david@mic92-12-88-161-108-143.fbx.proxad.net] has joined #go-nuts 23:15 < cenuij> so 52 cards and a 4 way even split, but there are apprently rules(contracts) as to who can win a trick on a high card(or suit) 23:15 < cenuij> this beats poker big time 23:15 < skelterjohn> you might like euchre 23:15 < skelterjohn> poker is about knowing the odds and reading people 23:16 < cenuij> yes 23:16 < skelterjohn> euchre is kind of like a simplified bridge, though i'm sure a euchre pro would cut me for saying that 23:17 -!- DayS` [david@199.48.242.75] has quit [Ping timeout: 240 seconds] 23:17 -!- gid [~gid@220.253-195-125.VIC.netspace.net.au] has quit [Ping timeout: 255 seconds] 23:18 < cenuij> does euchre involve agreement between participants? 23:19 < cenuij> if there's no agreement, it's poker 23:23 -!- zweilever [~ziller@187.196.189.72.cfl.res.rr.com] has joined #go-nuts 23:25 < skelterjohn> err 23:25 < cenuij> skelterjohn: do you play poker, bridge, or "euchre" 23:25 < skelterjohn> well, it's 4 player, and you have a partner 23:25 < cenuij> sounds like bridge 23:25 < skelterjohn> i know how to play poker, i have played bridge but i don't remember all the rules, and i play euchr 23:25 < skelterjohn> e 23:25 < skelterjohn> euchre is definitely closer to bridge than poker 23:26 < cenuij> i will investigate 23:26 < skelterjohn> games.yahoo.com/eu is a good spot to play euchre 23:26 < cenuij> do you play backgammon? 23:27 < skelterjohn> i have played once 23:27 < skelterjohn> i lost and i had no idea what i did wrong 23:27 < cenuij> I think you will play well, play more :P 23:30 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has quit [Quit: Computer has gone to sleep.] 23:30 -!- sauerbraten [~sauerbrat@p508CEE97.dip.t-dialin.net] has joined #go-nuts 23:32 < cenuij> so back on topic /// goinstall; I understand may be getting some work do that we can have local packages in our $HOME. how can we work goinstall to respect .rpm, .deb and whatever windows uses this year? 23:34 < cenuij> on linux i dont want goinstall grabbing the lates tip/head 23:35 < cenuij> I want it to check if that package is already installed 23:35 < dario_> ' 23:35 < cenuij> if so: ignore or re-install 23:35 -!- maattd [~maattd@esc31-1-78-245-92-71.fbx.proxad.net] has joined #go-nuts 23:36 -!- vsayer [~vivek@c-76-102-205-58.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 23:36 -!- vsayer [~vivek@c-76-102-205-58.hsd1.ca.comcast.net] has joined #go-nuts 23:36 < skelterjohn> what do you mean "have local packages in our $HOME"? 23:37 < cenuij> skelterjohn: install "Go" @ version 4th of january 2011 23:38 < skelterjohn> i don't understand your answer 23:38 < cenuij> install third party packages in my home 23:38 < cenuij> so I can develop against them, while my base system has a "release" 23:39 < skelterjohn> ah 23:39 < skelterjohn> i wonder how he is going to do that, exactly 23:39 < cenuij> mee too 23:39 < skelterjohn> hopefully something like "goinstall -d somethingNotGOROOT/pkg/ the.package.com" 23:40 < skelterjohn> though, you need to specify where to download the source to, as well 23:41 < cenuij> whatever the result, i'd like to point out that sat-solvers are alraeady available and heavily used (no idea about windows) 23:41 < skelterjohn> when you say sat-solver, do you mean just a dependency checker? 23:41 < cenuij> yes 23:41 < skelterjohn> saying sat-solver makes me think of, eg, 3SAT 23:41 < skelterjohn> and other NP-complete problems 23:42 < cenuij> sepcifically for lib or package dependancies 23:42 < skelterjohn> do the developers of these tools call them sat solvers? 23:42 < cenuij> yes 23:42 < skelterjohn> weird 23:42 < cenuij> it's not a scientific issue 23:43 < skelterjohn> i google sat solver and i only find satisfiability things 23:43 < cenuij> the software dependancy problem is now what you would immagine. 23:43 < cenuij> s/now/not 23:43 < skelterjohn> now = not? 23:43 < skelterjohn> i certainly believe that it's not trivial 23:43 < skelterjohn> i haven't tried to imagine what it might be, though 23:46 -!- rpdillon [~user@ip174-65-90-100.sd.sd.cox.net] has joined #go-nuts 23:46 < cenuij> my knowledge in this realm is specifically libzypp: http://en.opensuse.org/Portal:Libzypp 23:47 < rpdillon> simple question, but I've been having trouble finding an answer: how do I initialize a multidimensional slice? table := make([][]int, 10000)? That doesn't seem to initialize the second dimension... 23:47 < cenuij> one of the reasons I'm gutted about the Nokia/MS marketing 23:47 < aiju> rpdillon: for loop 23:48 < rpdillon> ok 23:48 < rpdillon> that's what I'm using 23:48 < rpdillon> but the memory usage was insane 23:48 < rpdillon> and I thought I might be doing it wrong 23:48 < aiju> well, what do you expect? 23:48 < aiju> it's a multidimensional slice 23:48 < aiju> how large is it? 23:48 < rpdillon> about 4.7 million rows, each 75 wide 23:49 < rpdillon> I was expecting ~400MB, but got more like 3GB 23:49 < aiju> each slice adds 3 words overhead 23:49 < cenuij> the libzypp sat-solver is the fastest available for the specific domain. 23:49 < cenuij> unless you consider the mini-sat for that problem set 23:49 < aiju> rpdillon: eh 23:49 < aiju> rpdillon: one int is 4 byte 23:50 < rpdillon> that'll do it 23:50 < aiju> 1410 GB just for the data 23:50 -!- zweilever [~ziller@187.196.189.72.cfl.res.rr.com] has left #go-nuts ["Leaving"] 23:50 < aiju> so you have 4.7 million slices? 23:50 < rpdillon> indeed =/ 23:50 < aiju> hm that's just 56/112 MB overhead 23:51 < aiju> (32-bit vs 64-bit) 23:51 < aiju> where do the other 2 GB come from 23:51 < cenuij> as an outsider, i would imagine that libzypp sat-solver would be *fucking useful* for intel and their hot atom chips on the MeeGo we will never see. 23:51 < rpdillon> I only told you about half the data =) There's another identical table I'm using as well 23:51 < aiju> rpdillon: you might want to rethink your memory data :P 23:51 < aiju> *model 23:52 < rpdillon> yeah...I'm going to take a look at it again...it is a sort of HPC application, though. 23:52 < aiju> using a one dimensional slice might be a better idea 23:53 < aiju> it should make lookups faster 23:53 < rpdillon> good call 23:53 < rpdillon> the math is easy to do 23:54 < aiju> you might want to extend rows to 128 23:54 < aiju> but i'm clueless about multiplication performance on x86 23:54 < aiju> anyway, premature optimization probably 23:55 < rpdillon> yeah, I'll play around with it and see what I can do 23:55 < rpdillon> thanks for the help though...I didn't realize each int was 4 bytes for some reason --- Log closed Sun Feb 13 00:00:05 2011