code logs -> 2012 -> Sun, 29 Apr 2012< code.20120428.log - code.20120430.log >
--- Log opened Sun Apr 29 00:00:02 2012
00:01
< Rhamphoryncus>
Heck, even something totally unique I create today might be patented/copyrighted/trademarked/whatevered by someone else in 5 years and either I have to stop using it entirely, pay an exorbitant amount, or possibly go to jail if I protest. Just one of the fun risks of creating things.
00:02
<&McMartin>
Er
00:02
<&McMartin>
That is exactly equivalent to "if I walk outside I could get gunned down by a police officer who thinks I'm robbing a place"
00:03
< Rhamphoryncus>
Naw. That's a little less likely. Getting the crap beaten out of me at a protest by a cop? That's a more comparable chance
00:04
< Rhamphoryncus>
Of course it's pretty unlikely I'd make anything interesting enough to be targeted.
01:19 You're now known as TheWatcher[T-2]
01:20
< Rhamphoryncus>
Still upgrading ubuntu..
01:21
< Rhamphoryncus>
At least 2 more hours to go
01:24 You're now known as TheWatcher[zZzZ]
01:26
<&McMartin>
Yeah, I hear the servers are totally hammered
01:33 Noah [maoranma@Nightstar-925b45fd.pools.spcsdns.net] has joined #code
01:37 eckse_ [eckse@Nightstar-39a5aea0.dsl.sentex.ca] has joined #code
01:38 eckse [eckse@Nightstar-6e6a7b39.dsl.sentex.ca] has quit [Ping timeout: 121 seconds]
01:42
< Noah>
. . . . .
01:42
<&McMartin>
?
01:43
< Noah>
Bzzt!
01:43
< Noah>
Okay, I'm all loaded now
01:43
<&McMartin>
So now you can be as hammered as the Ubuntu servers?
01:43 * Noah ponders
01:44
< Noah>
Didn't... 12.04 come out two days ago?
01:51
<&McMartin>
Yes, and going through the update server is still apparently murder
01:53
< Rhamphoryncus>
McMartin: the download finished a while ago. Installing is taking longer
01:56 Eri [Eri@2D9871.EDE831.CBEAF6.769673] has quit [Client closed the connection]
01:58
< Rhamphoryncus>
It's disk-bound. Maybe in the future I should invest in a SSD :P
02:07
<&McMartin>
... why is Ophis not on this system
02:07 * McMartin fixes that
02:10
<&McMartin>
Mmm
02:10
<&McMartin>
So far my Pascal runtime is 177 bytes
02:10
<&McMartin>
Actually, that's kind of an overshoot, it includes linking code that you'd need for pure assembler too.
02:11 Kindamoody[zZz] is now known as Kindamoody
02:16
<&McMartin>
let gensym = let c = ref 0 in fun s -> (c := !c + 1; s ^ "'" ^ (string_of_int !c));;
02:16
<&McMartin>
Kind of cheating, but I do love me some gensyms
02:16
< Noah>
What are those things on the end that look like vampire fangs?
02:17
<&McMartin>
One of the things ML finally dropped in 1995, but which OCaml didn't get the memo about.
02:17
<&McMartin>
This is because it thought that semicolon would be a good thing to use as a list element separator as opposed to, oh, I don't know, commas.
02:18
< Noah>
OCaml sounds fun
02:18
<&McMartin>
IME it's the most "practical" of the functional languages
02:19
<&McMartin>
The Gambit-C variant of Scheme is a close second, and the GHC-based Haskell Platform is a somewhat distant but still quite respectable third.
02:19
< Noah>
But Haskell is like C++ in that there are better things to use, but no one uses them?
02:19
<&McMartin>
Haskell is surprisingly practical
02:20
< Noah>
Is it the most widely used functional language?
02:20
<&McMartin>
But by that I mean "it can be used for *anything* given that it doesn't have things like, you know, assignable variables"
02:20
<&McMartin>
Mmm
02:20
<&McMartin>
Define "Most Widely Used"
02:20
<&McMartin>
It's the only practical pure functional language - all other practical functional languages are actually mixed
02:20
< Noah>
If you tell someone you're a functional language programmer, they'll assume you code in ...?
02:21
<&McMartin>
You can't answer that question any more than you can for "imperative" really.
02:21
<&McMartin>
But I'd guess Haskell, some ML dialect, or Erlang.
02:21
<&McMartin>
Normally they'd name the language.
02:21
< Rhamphoryncus>
Hrm. It's probably not fair to criticize firefox for screwing up my guest profile when I'm creating it specifically in case running firefox during the update screws up the profile
02:21
<&McMartin>
A lot of people seem to really like Racket, which is an extremely powerful version of Scheme.
02:22
<&McMartin>
Gambit-C is less powerful, but it also is a gcc-compliant C emitter.
02:22
<&McMartin>
And still keeps tail-recursion and first-class continuations despite emitting C, which is a very "!!!" kind of thing
02:22
< Noah>
Sounds like voodoo
02:22
<&McMartin>
I worked out what it was doing, and laughed
02:23
<&McMartin>
first-class continuations are kind of voodoo, though, yes~
02:23
<&McMartin>
Anyway
02:23 * Noah hides under his Python where programming is still fun
02:23
<&McMartin>
SORCERY
02:23
<&McMartin>
Actually, Python took a bunch of goodies from Haskell
02:24
<&McMartin>
Most obviously list comprehensions
02:24
< Noah>
I know
02:24
< Noah>
Where does it get generators from again?
02:24
< Rhamphoryncus>
McMartin: but waited until generator expressions to get them right
02:24
<&McMartin>
You can map generators to Haskell but they go back to assembler, really
02:24
< Rhamphoryncus>
(hey look, I'm arguing in favour of laziness!)
02:24
< Noah>
Well in Py3K aren't they synatically the same?
02:25
<&McMartin>
(That's because Laziness is awesome when it's awesome)
02:25
<&McMartin>
(It's kind of horrible when it isn't, like my map-reduce based sprite engine~)
02:25
< Rhamphoryncus>
yeah, they fixed the odd corner cases where listcomps and genexps differed
02:25
<&McMartin>
(No, really, please compute the next frame during VBlank, not while racing the beam)
02:25 * Noah swats McMartin with a newspaper
02:26
< Noah>
Pfft, as if I buy news in print
02:26
<&McMartin>
ANyway
02:26
<&McMartin>
If you've seen Haskell, ML - both Standard and to a lesser extent OCaml - will look like a clunkier, uglier Haskell
02:26 Attilla [Obsolete@Nightstar-4d709978.as43234.net] has quit [Ping timeout: 121 seconds]
02:26
<&McMartin>
With assignment
02:27
<&McMartin>
I've never actually seen any significant chunk of Erlang code, but ISTR that jerith uses it
02:27
<&McMartin>
I'm writing this compiler in OCaml just to have an excuse to write a big program in OCaml.
02:27
<&McMartin>
I've done a bit of work in Scheme but I honestly can't think of anything I'd do in Scheme instead of Python.
02:28
<&McMartin>
Python is functional *enough*, and it turns out that by modern functional language standards LISP isn't really all that functional at all
02:29
<&McMartin>
The things ML and Haskell call "Constructors" I like a whole lot, though, to the point that C code I write tends to prefer things that look like those as opposed to things that look like objects.
02:29
< Rhamphoryncus>
If python had true multithreading I'd probably use it as the basis for yasttc and only punt out to C/C++ for specific bottlenecks
02:29
<&McMartin>
Mmmmm
02:29
<&McMartin>
Is there any reason you can't use poll-select or Twisted or Stackless?
02:29 eckse_ is now known as eckse
02:29
< Rhamphoryncus>
I fully intend to go multicore
02:30
< Rhamphoryncus>
Separated renderer, game logic, etc
02:30
< Noah>
Stackless is what EVE Online runs on, so if it can run a 50k peak player MMO, it should be find for you Rhamphoryncus
02:30
< Noah>
fine*
02:30
< Rhamphoryncus>
Noah: hardly
02:30
< Noah>
This must be an awesome game you're making then
02:31
< Rhamphoryncus>
I could do multiprocess, but that's a lot of extra pain and quite costly
02:31
< Noah>
How long until Python has "true" multithreadign you think?
02:32
< Rhamphoryncus>
At best.. probably a shared mmap as a heap with all the pointers localized within it, which means that heap can never reference objects from existing libs. Bleh.
02:32
< Rhamphoryncus>
CPython never. PyPy.. I should look into heh
02:32
< Rhamphoryncus>
Woo! "Please restart" stage :D
02:33
< Rhamphoryncus>
I'll be back in 5 minutes. Then 5 minutes after that and another 5 minutes after that as I fix critical bugs :P
02:33 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has quit [Client exited]
02:33
< Noah>
"New in Ubuntu 14.04: Bittorrent-based upgrade downloading"
02:34
<&McMartin>
PyPy I hear has been growing by leaps and bounds but I too have no real idea of how far it's gotten
02:44 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has joined #code
02:45
< Rhamphoryncus>
I decided to be ballzy and try gnome's new desktop crap
02:45
< Rhamphoryncus>
So far it is better than 6 months ago
02:46
< Rhamphoryncus>
It has workspaces now
02:47
<&McMartin>
Wait, I thought you said you were using Ubuntu
02:47
< Rhamphoryncus>
And I finally figured out firefox's tab-grouping crack. GNOME removed the ability to alt-tab between windows so firefox came up with a sort of reimplementation
02:47
<&McMartin>
That's Canonical's, not GNOME's.
02:47
<&McMartin>
Or did you disable Unity somehow?
02:47
< Rhamphoryncus>
I'm trying the GNOME desktop first. I used to use GNOME Classic
02:47
<&McMartin>
Gotcha
02:50
< Rhamphoryncus>
Hey, the system volume control half works again!
02:51
< Rhamphoryncus>
There's a region about 10% wide in the middle where it varies from quiet to loud. The other 90% has no effect except the far left which mutes
02:54
< Rhamphoryncus>
Totem still stupidly refused to open a second window
02:55
< Rhamphoryncus>
"It's a feature!" "It's fucking stupid." "It's a feature!"
03:00 maoranma [maoranma@Nightstar-e7a0c7cc.pools.spcsdns.net] has joined #code
03:02 Noah [maoranma@Nightstar-925b45fd.pools.spcsdns.net] has quit [Ping timeout: 121 seconds]
03:12
< Rhamphoryncus>
Boo. I had some semblance of the ability to organize my windows before (I could rearrange them on the task bar). Now I can't
03:14
< Rhamphoryncus>
ctrl-alt-up and ctrl-alt-down switch between workspaces..
03:28
< Rhamphoryncus>
"The GNOME Shell is currently in active development and while many planned features are not yet implemented it is stable enough for everyday use."
03:29
< maoranma>
Assuming you don't want a decent WM
03:34
< Rhamphoryncus>
Nah, being morbid and trying it
03:40 * maoranma makes a note to play some openTTD
03:42
<&McMartin>
Whoops. Just found a design flaw in my intermediate language.
03:42
<&McMartin>
Oh well, designing around it for now
03:44
< maoranma>
Is that a good idea?
03:44
<&McMartin>
It's not an immediate problem
03:44
<&McMartin>
Instead of never generating code that risks running afoul of the 6502's branch distance limit, it does so at every opportunity
03:44
<&McMartin>
For half of them (equality tests) I can do the right thing anyway
03:45
<&McMartin>
The others I can go and rewrite the generators later after inverting them.
03:45
<&McMartin>
Arguably, what I *really* should do is have the assembler catch this and emit different code if it would be a problem.
03:54
< Rhamphoryncus>
bizarre. Although populated both of the #gnome channels I've tried are completely dead
03:57
< Rhamphoryncus>
weeee stress
03:58
< Rhamphoryncus>
My brain does not like being helpless
04:01 Noah [maoranma@Nightstar-93e1b6e0.pools.spcsdns.net] has joined #code
04:02 maoranma [maoranma@Nightstar-e7a0c7cc.pools.spcsdns.net] has quit [Ping timeout: 121 seconds]
04:15
< Rhamphoryncus>
"You can check what version of GNOME is installed on your system using the "System Information" panel of "System Settings"." DOES NOT EXIST
04:18
< Rhamphoryncus>
Hey, I found the ubuntu option. There's network and keyboard and appearance and such. Then there's "details"
04:18
< Rhamphoryncus>
Of course it only tells me the number, not the NAME that 90% of the web uses!
04:18
< Rhamphoryncus>
WHY NO, I'M NOT BITTER
04:18
< Rhamphoryncus>
okay, enough of this shit. Time to switch
04:18 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has quit [Client exited]
04:20 Thalass [thalass@Nightstar-392076e0.vianet.ca] has joined #code
04:20
< Thalass>
good evening.
04:21
< Thalass>
Stupid noob question: How do i get the prompt back in the command line?
04:24
<&McMartin>
You'll have to explain that more carefully
04:24
<~Vornicus>
What had you done just prior to this?
04:25
<~Vornicus>
if you're in the middle of a program, ctrl-c or ctrl-d might do what you need
04:26
< Thalass>
I started gedit (gedit ex14.py, to be precise), and rather than closing gedit each time i make an edit and save it, i thought it would be good to get the prompt back so i could execute my script.
04:26
<~Vornicus>
then there's the suspend and background functions but I don't remember how to hit those because I've never used them on purpose.
04:26 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has joined #code
04:26
<~Vornicus>
Aha
04:26
< Thalass>
One day i'll run out of stupid noob questions to ask.
04:27
<~Vornicus>
Okay, so on various operating systems there's a command that's called to open processes out-of-stream from the command line. IIRC on linux that command is called "run" but I'm not sure
04:27
< Rhamphoryncus>
awesome. They broke the gnome classic workspaces
04:28
<~Vornicus>
So quit gedit and try run gedit ex14.py
04:29 Vash [Vash@Nightstar-fb5b40e5.wlfrct.sbcglobal.net] has joined #code
04:29 mode/#code [+o Vash] by ChanServ
04:30
< Thalass>
Nope, no command 'run' found.
04:30 * celticminstrel is now wondering what the relevance of Novell was in the earlier conversation.
04:30
<~Vornicus>
maybe it's "start" instead
04:31
< Thalass>
huh. "start: Unknown job: gedit
04:31
<~Vornicus>
oh, that's the service starter, derp
04:31
<~Vornicus>
Uh
04:32
< Thalass>
derpa. Ctrl+c worked. >.<
04:33
< Thalass>
Wait, that exits gedit. Oh well, i can always open a new tab. :P
04:34
<~Vornicus>
dang it. there's a command for this! I used it!
04:35
<~Vornicus>
I just don't remember what it is any more! ;_;
04:35
<~Vornicus>
(this was rather a long time ago)
04:37
<&Derakon>
One of the problems of being a dev for a game with a long history: http://angband.oook.cz/forum/showpost.php?p=69044&postcount=3
04:37
<~Vornicus>
Wow, um
04:37
<&McMartin>
"Suspend" is Ctrl-Z
04:37
<~Vornicus>
That guy needs to grow up
04:38
<&Derakon>
Yeah.
04:38
<~Vornicus>
Does your program get cycles when suspended?
04:38
<&Derakon>
I like how he thinks his attitude is somehow more important just because he's been with the community a long time.
04:38
<&McMartin>
No
04:38
<&McMartin>
You have to then run "bg"
04:38
<&McMartin>
If you put an & at the end of the command line it will go into background
04:39
<&McMartin>
Or you can start it from the desktop environment
04:39
<~Vornicus>
McM: ah, that's what I was looking for, yes
04:44
< Thalass>
oh ffs. Either Ubuntu 12.04 is broken, or my install got all screwed up. Errors and stuff every boot and now unity 2d just closed unexpectedly.
04:46
< Rhamphoryncus>
oh btw, I was wrong about gnome shell having improved. I was thinking of the old unity. Which hasn't improved.
04:46 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
04:55 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has quit [Client closed the connection]
04:56 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has joined #code
04:57
< Rhamphoryncus>
that was fun. NOT.
04:58
< Rhamphoryncus>
Gnome has 2 different workspace schemes going and they were fighting. One of them would hide the panel and since all the shortcuts are fucked up I wasn't able to get back
04:58
< Rhamphoryncus>
alt-tab didn't work either. Despite apparently having 4 forms. Maybe more
05:09 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has quit [Client exited]
05:10 Eri [Eri@Nightstar-3e5deec3.gv.shawcable.net] has joined #code
05:10 eckse is now known as eckzzz
05:37
<&McMartin>
Oop, Rhamph lest
05:37
<&McMartin>
left
05:38
<&McMartin>
Or I could tell him that Alt-` is the new Alt-Tab within an application, because we must blindly copy Steve
05:38
< Thalass>
...
05:39
< Eri>
That'll never work
05:39
< Eri>
That's how I change my IME
05:39
< Eri>
Is that what he's done in Windows 8?
05:39
<&McMartin>
No, it's what GNOME has done for a while.
05:39
<&McMartin>
Jobs, not Ballmer.
05:40
< Eri>
Hmm. Weird. GNOME 3?
05:40
<&McMartin>
Because on OS X, Command-Tab switches applications, and Command-` switches windows within one.
05:40
<&McMartin>
Yes.
05:40
<&McMartin>
GNOME is all about copying UI elements from other, better sources while completely missing the point about why they would do this or why it's appropriate in that context, but, invariably, never *their* context.
05:40
< Eri>
Ah, that'd be why I haven't noticed it
05:41
< Thalass>
Man, LXDE is looking better all the time. Unity is sluggish on this little netbook, Unity 2d is bleh. And now gnome3 has changed, man.
05:41
< Eri>
Yeah, I've noticed it's bad for that, sometimes
05:41
<&McMartin>
GNOME 3 was never good~
05:41
<&McMartin>
There's a reason I only use Linux on text-only boxen these days.
05:41
< Eri>
I'm still on GNOME 2, I think
05:42
< Eri>
Seems okay to me
05:42
< Eri>
Don't like the taskbar, but I can't find a dock I like
05:42
< Thalass>
Nothing wrong with gnome 2.
05:42
< Eri>
All the default programs suck
05:42
<&McMartin>
In other news, whoops, that's not what the BIT opcode does.
05:42 * McMartin fixes his code generator
05:43
< Eri>
And Nautilus went and disabled the gconfig option to start with two panes open, which annoys me to no end
05:44
< Noah>
Ooh, just had an idea for an interactive fiction game
05:44
< Thalass>
heh
05:44 * Thalass flops bedward
05:44 Thalass [thalass@Nightstar-392076e0.vianet.ca] has left #code ["Dramallama"]
05:46 * Noah gets to downloading Inform and Gargoyle
05:50
< Noah>
Man, I begged the Gargoyle developer to add word completion and it's still not in
05:50
< Noah>
I'm going to pout
05:51
<&McMartin>
Heh
05:51
<&McMartin>
SUCCESS
05:51 * McMartin now has a working(*) Pascal compiler targeting the Commodore 64.
05:53
< Noah>
(*) For unusual definitions of working.
05:53
< Noah>
Vorple looks interesting, have you read anything about it McMartin?
05:56
<&McMartin>
(*) Is missing features like "data types more complex than 16-bit integer" or "functions"
05:57
<&McMartin>
Vorple, no. Blorple, yes.
05:58
<~Vornicus>
hooray, blorple
06:01
< Noah>
Wow, Blorple is bad, who wrote this garbage
06:01
< Noah>
I jest
06:02
< Noah>
But no, Vorple is sort of a banch of Parchment, with extentions to Inform 7 to do special things in the browser
06:02
< Noah>
http://vorple-if.com/outgribe/
06:03
< Noah>
I should ask, are you keeping Blorple up to date?
06:05
<&McMartin>
I haven't been making new things for it
06:06
<&McMartin>
But the Babel libraries haven't changed since, so it should still "work", more or less
06:06
<&McMartin>
https://hkn.eecs.berkeley.edu/~mcmartin/opc-0.1.tgz
06:06
< Noah>
Hmmkay
06:07
<&McMartin>
I haven't been making special ifiction archives for the ifcomp entries after the first couple years after noticing that literally nobody was using 'em
06:08 Vash [Vash@Nightstar-fb5b40e5.wlfrct.sbcglobal.net] has quit [[NS] Quit: I lovecraft Vorn!]
06:10
< Noah>
http://vorple-if.com/preview/
06:10
< Noah>
The clock is clever
06:10
<&McMartin>
That is nice
06:13
< Noah>
I think full color images is a bit much, but the idea is you could put whatever you want, so some nice black and white illustrations, would be sweet
06:16
<&McMartin>
Well, Glulx already handles that, ofc
06:16
<&McMartin>
But this is, I guess, a different multimedia library interface?
06:17
<&McMartin>
Also
06:17
<&McMartin>
That is a compiler written in 530 lines of code
06:18
< Noah>
Yes, designed around javascript
06:20 Syloq_Home [Syloq@NetworkAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
06:26 Kindamoody is now known as Kindamoody|afk
06:28 Syloq_Home [Syloq@NetworkAdministrator.Nightstar.Net] has joined #code
06:43 Derakon is now known as Derakon[AFK]
06:45 eckse [eckse@Nightstar-1c1741ed.dsl.sentex.ca] has joined #code
06:45 mode/#code [+o eckse] by ChanServ
06:48 eckzzz [eckse@Nightstar-39a5aea0.dsl.sentex.ca] has quit [Ping timeout: 121 seconds]
07:02
< Noah>
Uuuhg, no, you're right Stomach, I should've have eaten a whole half of a honeydew, but it was sooo good
07:02
< Noah>
shouldn't've rather
07:02
< Noah>
And that just made a composition instructor somewhere jolt
07:05
< Noah>
It's like, no matter how difficult I find openTTD to be to figure out
07:05
< Noah>
I still find myself drawn to playing it
07:10 Kindamoody|afk is now known as Kindamoody
07:47 eckse [eckse@Nightstar-1c1741ed.dsl.sentex.ca] has quit [Client closed the connection]
07:54
<&jerith>
I don't really use Erlang much.
07:55
<&jerith>
I've dabbled in the past and I'm familiar enough that I wouldn't be uncomfortable picking up an Erlang project to work on, but I'm certainly not idiomatic.
08:26 Attilla [Obsolete@Nightstar-4d709978.as43234.net] has joined #code
08:30 Attilla [Obsolete@Nightstar-4d709978.as43234.net] has quit [Ping timeout: 121 seconds]
08:56 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [[NS] Quit: KABOOM! It seems that I have exploded. Please wait while I reinstall the universe.]
09:15 You're now known as TheWatcher
09:39 Kindamoody is now known as Kindamoody|out
10:17 You're now known as TheWatcher[afk]
10:21 Kindamoody|out is now known as Kindamoody
11:32 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has joined #code
11:54 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has joined #code
11:57 * Rhamphoryncus has switched to kde
12:00 Attilla [Obsolete@Nightstar-4d709978.as43234.net] has joined #code
13:12 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
13:15 You're now known as TheWatcher
14:15 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has quit [Client closed the connection]
14:20 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has joined #code
15:18 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
15:34 Kindamoody is now known as Kindamoody|out
16:00 Attilla [Obsolete@Nightstar-4d709978.as43234.net] has quit [[NS] Quit: ]
16:10 Attilla [Obsolete@Nightstar-46cf3070.threembb.co.uk] has joined #code
16:56 Vash [Vash@Nightstar-fb5b40e5.wlfrct.sbcglobal.net] has joined #code
16:56 mode/#code [+o Vash] by ChanServ
16:58 Attilla_ [Obsolete@Nightstar-4d709978.as43234.net] has joined #code
16:59 Attilla [Obsolete@Nightstar-46cf3070.threembb.co.uk] has quit [Ping timeout: 121 seconds]
17:02 Attilla_ [Obsolete@Nightstar-4d709978.as43234.net] has quit [Ping timeout: 121 seconds]
17:07 Attilla [Obsolete@Nightstar-42d66495.threembb.co.uk] has joined #code
17:08
< Rhamphoryncus>
Success! I have.. a green window!
17:08
<@rms>
Was that the objective?
17:09
<@TheWatcher>
That's... environmentally conscious of you
17:09
< Rhamphoryncus>
It's SDL2 with opengl3.2. It compiles and runs
17:10
< Rhamphoryncus>
I shed tears to get this far :P
17:11
<@TheWatcher>
Well, yay
17:11
< celticminstrel>
XD
17:11
< Rhamphoryncus>
So now I can move on to actual programming
17:13 * TheWatcher would be doing actual programming, but Classified Work Project is occupying all his braincycles, so is currently bending html, css, and javascript to his will for it. On a Sunday >.<
17:14
< celticminstrel>
Fun... :(
17:14
< Rhamphoryncus>
.. it's a sunday?
17:14
<@ToxicFrog>
Yes.
17:14
< celticminstrel>
...yes. Yes it is.
17:14
< Rhamphoryncus>
Last I remember it was thursday or friday
17:15
< celticminstrel>
...
17:15
<@TheWatcher>
That's what updating ubuntu does to you :P
17:15
< Rhamphoryncus>
Amusing, but it's actually the sleep disorder that did it
17:15
< Rhamphoryncus>
does it*
17:15 * celticminstrel doesn't see how that'd do it.
17:16
< Rhamphoryncus>
You know how when it's light out and people are moving around you tend to wake up? And at night you get tired and go to sleep?
17:16
<@ToxicFrog>
You were online yesterday though
17:17
<@ToxicFrog>
Arguing at length about how mono is a microsoft plot
17:17
< Rhamphoryncus>
Yeah, but the result is I'm detached from the day/night cycle
17:18
< Rhamphoryncus>
Sometimes it's light out, sometimes it's dark, but it's just coincidence when I'm awake during one or the other
17:21
<@Tamber>
Been there; it really screws with the sense of the passage of time. ("...it's /Thursday/, already?! But it was Monday only yesterday!")
17:23
< Rhamphoryncus>
exactly
17:23 Vash [Vash@Nightstar-fb5b40e5.wlfrct.sbcglobal.net] has quit [[NS] Quit: I lovecraft Vorn!]
17:28
<@Tamber>
I wouldn't mind it so much if people didn't expect me to stick to their concept of the passage of time, and these silly "office hours" :)
17:30
<@rms>
It's been shown that people can be just as successfuly when doing 20 hour work-weeks.
17:31 * rms would personally prefer 4 8 or 10 hour days
17:32
<@rms>
Since travel time is moronic and I dislike the fact I have to do it 10 times a week.
17:34
< Rhamphoryncus>
rms: longer days require better rest periods, but yeah, it's entirely doable
17:34
<@rms>
I used to have an 8/12/12/8 job
17:34
<@rms>
Liked it quite a bit.
17:35
<@rms>
Mind you, the 12-hour shifts were dead, so...
17:36 * ShellNinja would prefer 8-hour workdays.
17:36
< ShellNinja>
With lunchtime being around 11, I get hungry again before end of work at 17:30.
17:36
<@rms>
Unless I move, I'm pretty much stuck with 30 minutes+ to get to and from work
17:37
<@rms>
So the less I have to do that, the happier I'll be.
17:37
< ShellNinja>
How do you get to work?
17:38
<@rms>
At the moment? I don't.
17:38
<@rms>
Previously: bus and car.
17:39
< ShellNinja>
Weak. :P
17:39 * ShellNinja cycles to work.
17:40
<@rms>
Cycling is only viable for 4 months of the year here
17:40
<@TheWatcher>
They call people who do that "Suicyclists" in Manchester~
17:40
<@rms>
We get snow.
17:41 cpux [cpux@Nightstar-c5874a39.dyn.optonline.net] has quit [[NS] Quit: Leaving]
17:42
< ShellNinja>
I live in Oslo. I cycled to work in winter.
18:15
< Rhamphoryncus>
uugh
18:15
< Rhamphoryncus>
It's awesome to have all the shader crap in opengl, but.. 175 lines just to draw a single triangle? uuugh
18:18
<@TheWatcher>
PROGRESS!
18:26 cpux [cpux@Nightstar-c5874a39.dyn.optonline.net] has joined #code
18:42
<@rms>
ShellNinja: With half-a-metre of snow + black ice?
18:45
< ShellNinja>
I did that once. In the following days, the road services reduced the conditions to something less absurd.
19:34 Kindamoody|out is now known as Kindamoody[zZz]
19:45
< Noah>
So how do I know how much a steam engine can pull before it starts breaking down constantly?
19:46
< Noah>
Context: openTTD
19:52
< ShellNinja>
Depends on the steam engine in question.
19:53
< ShellNinja>
They have a power rating, IIRC.
20:01
< Noah>
Yea, in horsepower
20:01 eckse [eckse@Nightstar-1c1741ed.dsl.sentex.ca] has joined #code
20:01 mode/#code [+o eckse] by ChanServ
20:01 Attilla [Obsolete@Nightstar-42d66495.threembb.co.uk] has quit [[NS] Quit: ]
20:03
< ShellNinja>
Check the wiki?
20:05
< Noah>
Yea, found a link to a post about tractive effort and a lot of math
20:05
< Noah>
Reading through that now
20:15 ErikMesoy [Erik_Mesoy@Nightstar-bd2f5f93.80-203-16.nextgentel.com] has joined #code
20:25
< Rhamphoryncus>
breakdowns have nothing to do with what it's pulling in openttd
20:26
< Rhamphoryncus>
It has to do with how frequently you send it for maintenance and even then you get some
20:26
< Rhamphoryncus>
(latest trunk has apparently changed how that works, so it's less annoying)
20:33
< Noah>
Oh
20:33
< Noah>
Well, I how often should I go for maintenance, because I had one train that went to 0% reliablity in like 3 years
20:36 ErikMesoy [Erik_Mesoy@Nightstar-bd2f5f93.80-203-16.nextgentel.com] has quit [Ping timeout: 121 seconds]
20:37 ErikMesoy [Erik_Mesoy@A08927.B4421D.B81A91.464BAB] has joined #code
20:38
< Rhamphoryncus>
Every several months
20:38
< Rhamphoryncus>
But most people turn off breakdowns
20:50
< Rhamphoryncus>
for(size_t iLoop = 0; iLoop < shaderList.size(); iLoop++)
20:50
< Rhamphoryncus>
because openttd couldn't be the only ones worth bitching about
21:00
< Rhamphoryncus>
Haw. Lots of lines spent printing error messages if it fails to compile a shader. It doesn't stop if that happens, but it definitely prints errors
21:11
< Rhamphoryncus>
my god.. my green window now has a purple triangle!
21:12 Stalker [Z@Nightstar-5aa18eaf.balk.dk] has joined #code
21:30
< Rhamphoryncus>
mmm C++11 triple-quoted raw strings :D
21:31
< celticminstrel>
I thought they were going to do raw strings more like PHP's heredoc syntax.
21:32
< celticminstrel>
Something like r"KEYWORD[put your string here]KEYWORD"
21:32
< Rhamphoryncus>
R"TAG(some text)TAG"
21:33
< Rhamphoryncus>
but the tag is pretty openended. R"""(some text)""" works just fine
21:33
< celticminstrel>
Which is (more or less) what I just said... oh, I see.
21:33
< celticminstrel>
It's parentheses then, not square brackets?
21:33
< Rhamphoryncus>
Yup
21:33
< celticminstrel>
Huh.
21:33
< celticminstrel>
I was sure I saw the draft saying square brackets.
21:33
< Rhamphoryncus>
I've no idea what the real constraints are for the tag, nor do I care. I don't see myself needing more than """(
21:34
< Rhamphoryncus>
changed in n3077. http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3077.html
21:43 ErikMesoy is now known as ErikMesoy|sleep
21:51
<&McMartin>
Rhamphoryncus: Are you using any particular tutorial for your dive into the world of shaders?
21:51
<&McMartin>
(I ask because finally learning the damned things is #...4 on my list of side projects)
21:52
< Rhamphoryncus>
McMartin: I'm starting with http://www.arcsynthesis.org/gltut/index.html
21:52
<&McMartin>
Cool, thanks.
21:52 * McMartin has the "New Testament" here, but that may already be wildly out of date.
21:52
< Rhamphoryncus>
That's after looking at http://www.opengl.org/wiki/Tutorial1:_Creating_a_Cross_Platform_OpenGL_3.2_Conte xt_in_SDL_%28C_/_SDL%29 and the tutorial was linked from http://www.opengl.org/wiki/Getting_started
21:53
< Rhamphoryncus>
Plus I'm using SDL 2.0 (aka SDL 1.3, as it's not released yet). Ended up building it myself from the hg repository
21:53
< Rhamphoryncus>
The SDL wiki is all SDL 2.0 stuff, whereas most of the other docs are SDL 1.2
21:54 * McMartin snickers at the intro here
21:54
< Rhamphoryncus>
So the wiki is the good reference document rather than googling
21:54
< Rhamphoryncus>
which?
21:54
<&McMartin>
Oh, the idea that the fixed pipeline is some kind of training wheels.
21:54 * McMartin shakes his cane at this young whippersnapper
21:54
<&McMartin>
Back in my day they taught the fixed pipeline because it was OpenGL 1.1 and that was all we had, boy
21:55
<&McMartin>
Now make granpa McMartin a sandwich and get off his lawn
21:57
< Rhamphoryncus>
Would have been much easier if it was "chapter 1: here's the triangle and the window setup stuff, but with a fixed pipeline" "chapter 2: now we throw out the pipeline to make things more powerful"
21:58
<&McMartin>
Well, he is actually doing some Old Testament stuff here.
21:58
< Rhamphoryncus>
hmm?
21:59
<&McMartin>
glDrawArrays is Old Testament (though it wasn't standard until 1.2, I think)
21:59
<&McMartin>
Sable is made netirely of glDrawArrays tricker, and no shaders or even meaningful texture mapping beyond rendering the HUD
22:00
< Rhamphoryncus>
.. care to reserialize that sentence?
22:00
< celticminstrel>
Double typo!
22:00
< celticminstrel>
^entirely, trickery?
22:00
<&McMartin>
Yes.
22:00
<&McMartin>
Thank you, celticminstrel. No caffeine yet today, should fix that.
22:00
< Rhamphoryncus>
ahh, good debugging celticminstrel
22:01
<@TheWatcher>
McM: well
22:01
<&McMartin>
Sable is my old final project from my graphics class.
22:01
<&McMartin>
https://hkn.eecs.berkeley.edu/~mcmartin/sable/
22:01
<@TheWatcher>
Depends how he's calling glDrawArrays
22:01
<&McMartin>
Old/New Testament splits refer to the Blue Book, aka the OpenGL SuperBible.
22:01
<&McMartin>
TheWatcher: With GL_TRIANGLES
22:01
<@TheWatcher>
Is it using a vertex array, or a VBO
22:01
<&McMartin>
Former
22:01
<&McMartin>
http://www.arcsynthesis.org/gltut/Basics/Tut01%20Following%20the%20Data.html
22:01 * TheWatcher nod
22:01
<&McMartin>
He then goes into defining a shader, though, it may just be that some of the old pipeline sticks around.
22:02
<@TheWatcher>
Just saying because glDrawArrays on a VBO is New Testament.
22:02
<&McMartin>
If shading replaces texture mapping, lighting, and vertex colors, though, that does put his initial statement of "training wheels/voodoo programming" *way* off
22:02
<&McMartin>
The graphics cards of the days of yore only *had* those kinds of lighting/color models.
22:02
< Rhamphoryncus>
glBindBuffer/glEnableVertexAttribArray/glVertexAttribPointer is old testament?
22:03
<&McMartin>
Rhamphoryncus: I'd have to consult Sable's code to make absolutely sure
22:03 Attilla [Obsolete@Nightstar-4d709978.as43234.net] has joined #code
22:03
<&McMartin>
But there was glBind* going on and Sable actually used compiled vertex arrays
22:03 * Rhamphoryncus nods
22:03
< Rhamphoryncus>
Either way you want to push the array to the videocard before using it?
22:04
< Rhamphoryncus>
The alternative being to push one vertex at a time?
22:04
<&McMartin>
You didn't come out and *say* this
22:04
<&McMartin>
But glCompileVertexArray strongly implied that this is what you did
22:04
<&McMartin>
It looks like you identified them with glVertexPointer and glNormalPoint and glTexCoordPointer, though
22:04
<&McMartin>
*glNormalPointer
22:05
< Rhamphoryncus>
glGenBuffers(1, &buf);
22:05
< Rhamphoryncus>
glBindBuffer(GL_ARRAY_BUFFER, buf);
22:05
< Rhamphoryncus>
glBufferData(GL_ARRAY_BUFFER, sizeof(vertexes), vertexes, GL_STATIC_DRAW);
22:05
< Rhamphoryncus>
glBindBuffer(GL_ARRAY_BUFFER, 0);
22:05
< Rhamphoryncus>
and yes, I did call it vertexes :P
22:05
<&McMartin>
Yeah, that's a little bit different
22:06
<&McMartin>
Here's the rendering code for Sable's library
22:06
<&McMartin>
http://svaf.svn.sourceforge.net/viewvc/svaf/trunk/svaf/svaflib/svaf_render.c?rev ision=2&view=markup
22:07
< Rhamphoryncus>
ahh okay
22:10
<&McMartin>
Yeah, OK
22:10
<&McMartin>
I'm going to have to use the SuperBible instead of this
22:10
<&McMartin>
This assumes I wasn't proficient ten years ago =P
22:11
< Noah>
Oo, found the fully load feature
22:13
<&McMartin>
Hm. So, vertex shaders are for dynamic geometry?
22:13
< gnolam>
McMartin: Diving into the world of shaders is actually easy.
22:13
< gnolam>
... among other things.
22:13
<&McMartin>
gnolam: Yeah, my understanding is that the brave new world is, you know, better
22:13
< gnolam>
They are also for calculating values for your fragment shaders.
22:13
< gnolam>
It is. /Sort of/.
22:14
<&McMartin>
But if I have a book right here that is designed around teaching the new world to someone who knows the old world, thus providing valuable context for such crochety geezers
22:15
< gnolam>
Deprecating most of the functions in OpenGL is a good idea - it's hard to learn because there's a gazillion functions to learn, and they all share state they all modify in surprisingly subtle ways. However, the latest OpenGLs go a bit too far and remove extremely convenient stuff they could've just left in.
22:15
<&McMartin>
(Said to-do list, incidentally: (1) get recursive functions working in my compiler. (2) Finally finish the polish on Hex Inverter and release it. (3) Build army of tiny LEGO giant robots for Mobile Frame Zero game)
22:16
< gnolam>
But in general - discounting the latest excesses in removing convenience - going closer to the metal actually makes it easier.
22:16
<&McMartin>
This is good
22:16
<&McMartin>
But yeah, something that says outright "here's what the old pipeline hardcoded, here's the code that corresponds to it in the new world" would be hugely valuable to me
22:17
<&McMartin>
As opposed to "Imma 'ssume you've never seen a graphics card before"
22:17
<&McMartin>
Because fragment shaders also end up replacing texture maps, right?
22:17
< gnolam>
In the world of shaders, what matters is basically just your own shaders. You don't have to look at what glYouHaveToBeKiddingMe() happened to set 500 lines away.
22:18
< gnolam>
Well... they don't replace texture maps, but they do control how the texture maps are set.
22:18
<&McMartin>
I used to say that OpenGL programming was like programming a robot to go trundle off and use toggleswitches to enter you program into some mainframe on the bottom of the ocean, yeah
22:18
<&McMartin>
re: glYouAreShittingMe()
22:19
< gnolam>
Heh.
22:20
<&McMartin>
Right: more typos
22:20
<&McMartin>
This means it's time to take a break, get caffeine.
22:21
<&McMartin>
Hm
22:21
<&McMartin>
Of course, this physical book only goes up to OpenGL 2.1
22:21
<&McMartin>
However, that does include both fragment and vertex shaders, so
22:23
<&McMartin>
Anyway, yeah
22:23
< gnolam>
2.1 is Good Enough.
22:23
<&McMartin>
Sable is very, very Old Testament and does the closest thing I could manage to vertex shading - the actual program directly manipulated the transform matrices and kept one cached for each game object
22:24
< gnolam>
Although going up to, say, 3.2 is preferred since you get better guarantees for your shaders.
22:25
<&McMartin>
Sure
22:25
<&McMartin>
Well
22:25
<&McMartin>
The book talks about the 2.1 API
22:25 * Vornicus should get a newer opengl reference
22:26
<&McMartin>
If I'm running Snow Leopard and/or Win7, presumably I have a much more advanced version of OpenGL actually on my systems.
22:26
<&McMartin>
(Iodine, the Linux machine, is too old to be able to do much with OpenGL at all.)
22:27
<&McMartin>
(It is an ATI Radeon XPRESS 200 integrated chip, and I don't know if it even *has* any shaders =P)
22:28
<&McMartin>
Oop, no, I guess it does, I see reference to support for GL_ARB_vertex_buffer_object, so
22:28
< gnolam>
As long as I get VBOs, FBOs and shaders, I'm happy. :)
22:29
<&McMartin>
GL_ARB_framebuffer_object doesn't show up until version 6.14.10.8304 of the windows drivers
22:30
<&McMartin>
(Source: http://feedback.wildfiregames.com/report/opengl/device/RADEON%20XPRESS%20200 )
22:30
<&McMartin>
Anyway, yeah, that's the machine I'm IRCing from and it's practically headless, so.
22:32
< gnolam>
However: IME any sufficiently advanced shader WILL run into problems with different implementations - different MAX_WHATEVER values in the trivial case, bugs and just plain lying about capabilities (Intel, I'm looking at YOU!) if you're unlucky.
22:33
<&McMartin>
Don't need much advancement for that
22:33
<&McMartin>
UQM has several screens worth of special case code for dealing with lying Matrox cards all it's doing is rendering two triangles a frame.
22:33
< gnolam>
(There are very good reasons why OpenGL programmers tend to froth at the mouth at the mention of Intel. :P)
22:34
< Noah>
lol
22:34
<&McMartin>
Hmm, well
22:35
<&McMartin>
It looks like Astatine's card is well-supported on Linux, for some value of "well-supported"
22:35
<&McMartin>
It seems to go back and forth in time as to which graphics cards are and are not awful with the good drivers.
22:41
<&McMartin>
Anyway, Rhamphoryncus, thanks for the pointers, this looks like a good tutorial to work through once I jump through the intervening major version :)
22:41
<&McMartin>
Yeah, this here is the stuff
22:42
<&McMartin>
"Vertex Shading: Do-It-Yourself Transform, Lighting, and Texgen"
22:42
<&McMartin>
aka "ATTENTION, GEEZER: THESE ARE THE THINGS TO UNLEARN"
22:43
<&McMartin>
o_O
22:43
<&McMartin>
\o/
22:43
<&McMartin>
\o/
22:43
<&McMartin>
\o/
22:44
<&McMartin>
Fraps 3.5.0 just came out, is no longer bound to the FAT32 filesize limit
22:44
< Noah>
o/
22:44
< Noah>
\o
22:44
<@TheWatcher>
Heh, Emphatic Armwaving: Justified.
22:44 Derakon[AFK] is now known as Derakon
22:44
< Noah>
We can finally record our whole 9 our raid sessions!
22:45
<&McMartin>
Well, you could before, too
22:45
<&McMartin>
But now you don't need to have MediaCoder splice the results.
22:47
< Rhamphoryncus>
McMartin: no problem. Just glad you can skip the pain I went through of figuring out what is what
22:48
< Rhamphoryncus>
gnolam: I've seen at least one library that was basically just copies of the removed helper functions
22:48 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [Operation timed out]
22:56 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code
22:56 mode/#code [+o ToxicFrog] by ChanServ
23:21
< Rhamphoryncus>
Hrm. So any sort of procedural generation (which will be an important component of my LoD) is likely to involve vertex shaders
23:29 Vash [Vash@Nightstar-fb5b40e5.wlfrct.sbcglobal.net] has joined #code
23:29 mode/#code [+o Vash] by ChanServ
23:37
< gnolam>
Yes.
23:37
< gnolam>
My ocean renderer is all shaders.
23:42
< gnolam>
(And is all procedural.)
--- Log closed Mon Apr 30 00:00:26 2012
code logs -> 2012 -> Sun, 29 Apr 2012< code.20120428.log - code.20120430.log >

[ Latest log file ]