code logs -> 2012 -> Thu, 31 May 2012< code.20120530.log - code.20120601.log >
--- Log opened Thu May 31 00:00:23 2012
00:45 * TheWatcher blinks, realises he can make this vastly easier with a simple change
00:45
< Rhamphoryncus>
Matrix math fail. I can get the translation to work right or the rotation to work right but not both at once
00:46
<&McMartin>
Rhamphoryncus: remember, the first is relative to the second.
00:46
< Rhamphoryncus>
I know
00:49 * TheWatcher mwahahahahs, creates 4 classes in seconds he expected to spend hours on
00:49
<&McMartin>
\o/
00:49
<&McMartin>
Code reuse or just Not That Hard After All?
00:50
<~Vornicus>
rham: don't combine them except via multiplication
00:50
< Rhamphoryncus>
Vornicus: I am
00:50
<~Vornicus>
Okay.
00:51
<~Vornicus>
(Having learned that one the hard way I figured others might do some derpery there too sometimes~)
00:51
< Rhamphoryncus>
I've got plenty of derpery going on
00:51
<@TheWatcher>
Because of previously mentioned simple change, all these classes really need to be is a constructor that calls the superclass constructor with a couple of class-specific values in the arguments. The superclass can then deal with the rest of the work.
00:52 himi [fow035@D741F1.243F35.CADC30.81D435] has joined #code
00:52 mode/#code [+o himi] by ChanServ
00:52
< Rhamphoryncus>
I added matrix*vector support. Results made no sense. Traced it through.. I was confusing row major vs column major in the Matrix class
00:53
<&McMartin>
TheWatcher: Mmmm.
00:53
<&McMartin>
Yeah, that's the kind of thing I do with closures >_>
00:53
< Rhamphoryncus>
I suspect there's similar still going on though
00:53
<&McMartin>
But it's a place where class inheritance gets the job done.
00:54
< Rhamphoryncus>
If matrix math is right to left then I should have a translation on the right (applied first), then a rotation to the left of it (causing the world to rotate around the new origin/camera position). Sound right?
00:58
<~Vornicus>
Um. Try the other way around.
00:58
<~Vornicus>
Just in case.
00:58
<&McMartin>
Rotation is around the origin.
00:58
<&McMartin>
So rotation post-translation is like swinging your model around on a lasso.
00:59
< Rhamphoryncus>
McMartin: that's the intent
00:59
< Rhamphoryncus>
It's not a model rotation. It's a camera rotation
00:59
<&McMartin>
Ah.
00:59
< Rhamphoryncus>
Vornicus: I've done that and it seems to be what I want, but it just means something else is broken
01:00
< Rhamphoryncus>
http://pastebin.starforge.co.uk/520
01:01
< Rhamphoryncus>
Qalculate tells me that should be 19, 22, 43, 50
01:03
< celticminstrel>
I think clang must be inlining have the standard library or something, because the debugger's stepping into library functions even when I say "step over".
01:03
< celticminstrel>
s/have/half/
01:05 Noah [nbarr@Nightstar-fefda721.pools.spcsdns.net] has joined #code
01:07
< celticminstrel>
Somehow my shared_ptr is invalid.
01:08 You're now known as TheWatcher[T-2]
01:09
< celticminstrel>
ie it points to an invalid memory location; I'm guessing one that has already been freed, but I'm not sure about that.
01:10
< Rhamphoryncus>
Augh. 131 instances of std::. The code is only 1002 lines total
01:11
< celticminstrel>
Huh?
01:11
< celticminstrel>
Oh.
01:11
< celticminstrel>
Well, you can always do using namespace std. :P
01:11
< celticminstrel>
Or using std::blah.
01:11
< Rhamphoryncus>
I should be doing "using std::cout; using std::endl;"
01:12
< celticminstrel>
I usually use the inclusive form for std but the specific form for boost.
01:12
< celticminstrel>
I also have one or two instances of "using namespace ..." in functions.
01:13
< celticminstrel>
Like "using namespace std::placeholders", because writing "std::placeholders::_1" is just stupid.
01:14
< celticminstrel>
And why doesn't it demangle template names?
01:14
< Rhamphoryncus>
After I fix this bug I'm going to take a serious look other languages. Although powerful, figuring out the incantations to do something and figuring out what's wrong when they fail has proven to use so much effort that even if I strongly dislike certain parts of a functional language it could still be more productive
01:18
< Rhamphoryncus>
In a way C++ is the perfect match for opengl. You debug them both in the same way: blindly
01:19
< celticminstrel>
I wouldn't say I debug it blindly.
01:19 You're now known as TheWatcher[zZzZ]
01:21
< Rhamphoryncus>
celticminstrel: the problem is most of these errors are during compilation
01:22
< Rhamphoryncus>
Like getting 20 errors (plus warnings) from trying to do a template
01:22
< celticminstrel>
Most of those aren't too hard to fix.
01:23
< Rhamphoryncus>
If you recognize them
01:23
< celticminstrel>
Some are a bit obscure.
01:24
< Rhamphoryncus>
After a while I'm sure I'll recognize enough to know the likely source
01:24 Derakon[AFK] is now known as Derakon
01:25
< Rhamphoryncus>
But until you reach that point you can't just search for that error message or paste it on IRC. You'd need to first strip it down to the simplest example.
01:34
< Rhamphoryncus>
step 1: make sure the printed form of your argument matrix is the same as the literal of said matrix
01:34
< Rhamphoryncus>
If you enter 1/2/3/4 and get back 1/3/2/4...
01:39
< celticminstrel>
...is vec.erase(vec.end()) safe?
01:41
<&McMartin>
vec.end() isn't valid to dereference. That sounds bad.
01:42
< celticminstrel>
Bah, so I'd better check what find returns before erasing it.
01:44
< Rhamphoryncus>
Victory!
01:50
< celticminstrel>
Yay!
01:51
< Rhamphoryncus>
Now reading up on Haskell
01:51
<&McMartin>
I'd also recommend looking into OCaml if you're looking for something to implement Big Things in.
01:51
< Rhamphoryncus>
thanks
01:52
<&McMartin>
Also, I *guess*, the Gambit-C implementation of Scheme (a Scheme-to-C compiler)
01:52
<&McMartin>
I know Gambit's effective enough to make highly animated 3D games - QuantZ was written in it.
01:55 * Rhamphoryncus writes that down too
01:57 maoranma [nbarr@490720.DD2C85.BDDA1D.F5EB33] has joined #code
01:59
<&McMartin>
I've done Makefile integration for both Gambit and OCaml, so if you end up working with one of them let me know and I can send you a few templates.
02:00
< Rhamphoryncus>
I'm not going to be using make. I'll be looking into one of the alternatives later on
02:00 Noah [nbarr@Nightstar-fefda721.pools.spcsdns.net] has quit [Ping timeout: 121 seconds]
02:06 maoranma is now known as Noah
02:06
< Rhamphoryncus>
Oh bother. I'll have to build updated haskell SDL bindings
02:07
< Rhamphoryncus>
.. wtf?! Haskell's opengl bindings claim to be opengl 1.5
02:08
< Rhamphoryncus>
I doubt that's right. I shall investigate later.
02:10 Kindamoody[zZz] [Kindamoody@Nightstar-6154a72a.tbcn.telia.com] has quit [Client closed the connection]
02:11 Kindamoody|out [Kindamoody@Nightstar-6154a72a.tbcn.telia.com] has joined #code
02:11 mode/#code [+o Kindamoody|out] by ChanServ
02:11 Kindamoody|out is now known as Kindamoody
02:12
< celticminstrel>
If I need iterators to survive removed elements, a linked list is the only option, right?
02:13
< gnolam>
Define "to survive".
02:15 Derakon is now known as Derakon[AFK]
02:15 Attilla [Obsolete@Nightstar-aae824b5.as43234.net] has quit [Ping timeout: 121 seconds]
02:18
< celticminstrel>
ie I can remove an element while I'm iterating through it without having strange things happen.
02:18
< Rhamphoryncus>
celticminstrel: Removing an element from the middle of an array causes everything after to get shifted forward. If you're doing that multiple times you're probably doing something wrong
02:26
< gnolam>
The current iterator is no problem: it = foo.erase(it)
02:26
< gnolam>
Other iterators to the same container... no. No matter what container you use.
02:37
< celticminstrel>
Gah.
02:54
<&McMartin>
Rhamphoryncus: Having done Haskell SDL, I'd advise against it for something like OTTD - lazy evaluation and self-updating frames *really* don't mix
02:58
< celticminstrel>
I'm using auto a lot.
02:59
<&McMartin>
++
03:36
< Rhamphoryncus>
McMartin: yeah, although I'm designing with threading in mind so there will be a lot of "calculate what's needed for the next frame, then everything switches to the next frame and sees the results"
03:37
< Rhamphoryncus>
I was afk for a while there but so far I'm surprised how positive I'm feeling from the haskell tutorial. (http://book.realworldhaskell.org/read/getting-started.html)
03:38
< Rhamphoryncus>
I think it helps that I spent time with C++ first and became desperate. Helps me look past my biases
03:38
<&McMartin>
Yeah, it's a great language.
03:39
<&McMartin>
But lazy evaluation means forcing results is surprisingly tricky
03:39
<&McMartin>
Which means you're likely to procrastinate on things until, like, the middle of VBlank.
03:39
<&McMartin>
Monads might help with that.
03:39
< Rhamphoryncus>
Yeah, we'll have to see
03:40
<&McMartin>
If you want a baseline once you're up to speed with SDL and friends I've got a HaskellSDL version of the Cyclic Cellular Automaton and Game of Life sitting here.
03:40
<&McMartin>
But I'm about to upgrade this machine!
03:40
<&McMartin>
So I'll see you guys once that finishes.
03:40
< Rhamphoryncus>
cya
03:40 McMartin [mcmartin@Nightstar-4753de43.pltn13.sbcglobal.net] has quit [[NS] Quit: BEEFY MIRACLE]
03:41 Kindamoody [Kindamoody@Nightstar-6154a72a.tbcn.telia.com] has quit [[NS] Quit: brb, reboot.]
03:43 Kindamoody|out [Kindamoody@Nightstar-6154a72a.tbcn.telia.com] has joined #code
03:43 mode/#code [+o Kindamoody|out] by ChanServ
03:43 Kindamoody|out is now known as Kindamoody
03:55 McM[laptop] [mcmartin@Nightstar-4753de43.pltn13.sbcglobal.net] has joined #code
03:57
< Rhamphoryncus>
McM[laptop]: wb
03:58
< McM[laptop]>
Alternately, I could have downloaded the wrong image. -_-
03:58
< Rhamphoryncus>
that would suck, yes
03:58 * McM[laptop] fires up preupgrade like he should have done in the first place.
03:59
< Rhamphoryncus>
So it occurs to me that I plan to back to disk much of my data (treat it like a database), which would largely influence what sort of lazy evaluation I get
04:00
< McM[laptop]>
Stated I/O isn't actually a forcing function -_-
04:00
< Rhamphoryncus>
meaning?
04:00
< McM[laptop]>
Especially if you stream it, code that looks like "slurp in file, send results as a big old list to functions" ends up being "do buffered reads as necessary as the program runs"
04:00
< Rhamphoryncus>
No, but writing back to disk should be
04:00
< McM[laptop]>
Kind of what I said
04:00
< McM[laptop]>
Yeah, that'll force it.
04:01
< McM[laptop]>
Writes Have To Happen.
04:01
< McM[laptop]>
But don't trust reads to mean you're reading right then.
04:01
< Rhamphoryncus>
Of course I won't want to write most of the time, but it'll still control my architecture
04:01
< Rhamphoryncus>
yeah, that hopefully won't be a problem
04:03
< McM[laptop]>
Even though it might not be usable for this project, learning Haskell isn't time wasted.
04:03 * McM[laptop] <3 Haskell a great deal.
04:05
< Rhamphoryncus>
I'm going to operate on the assumption that it can be made to work, even if monads and all that aren't ideal, but I'll confront them only when I get to them
04:10
< McM[laptop]>
Monads aren't too bad when used normally, tbh
04:10
< McM[laptop]>
The code ends up looking distressingly BASIC/Python-like.
04:12
< Rhamphoryncus>
yeah, I figure. Sometimes imperative style is the right way to go ;)
04:12
< McM[laptop]>
You can treat it as "the imperative part" and it will keep you in decent stead for awhile, really. Monads are super-general, but the common case is pretty straightforward
04:13
< McM[laptop]>
This is not unlike continuations in Scheme, which are likewise insanely general but most of the structured uses of them are incredibly straightforward.
04:13
< McM[laptop]>
Clojure even uses one of those to hide the fact that it isn't tail recursive ;-)
04:14
< Rhamphoryncus>
Yeah, it's a functional language. Took something simple that they didn't like for ideological reasons, then invented a swiss army knife that let them reimplement it just like it was before ;)
04:14
< McM[laptop]>
There's a little more to it than that - Monads also unify it with list comprehensions and the Maybe type
04:16
< Rhamphoryncus>
Swiss army knife
04:16
< McM[laptop]>
Heh
04:16
< McM[laptop]>
It isn't *just* as it was before
04:16
< McM[laptop]>
But you'll see soon enough, I guess
04:16
< Rhamphoryncus>
Yeah, I wasn't sure about that word
04:17
< McM[laptop]>
The effect is to sharply conceptually segregate "the I/O parts" from "the computational parts".
04:17
< McM[laptop]>
But the lazy evaluation means it ends up in practice all shuffled together
04:18
< Rhamphoryncus>
yeah
04:18
< Rhamphoryncus>
But I plan to have such a segregation anyway
04:18
< McM[laptop]>
I think you'll find this pretty agreeable.
04:19
< Rhamphoryncus>
yeah, I'm optimistic :)
04:19
< Rhamphoryncus>
But easily distracted. Still only halfway down the first page
04:19
< McM[laptop]>
Heh
04:20 * McM[laptop] goes back to his Python, having realized that he doesn't need to write this constant-prop pass after all.
04:32 Derakon[AFK] is now known as Derakon
04:35
< Rhamphoryncus>
Is it just me or are these examples MUCH better with some whitespace? http://book.realworldhaskell.org/read/getting-started.html#x_O2
04:44
< McM[laptop]>
Do you mean between list elements or...?
04:46
< Rhamphoryncus>
yes
04:46
< Rhamphoryncus>
[1, 3 .. 10]
04:47
< McM[laptop]>
Haskell does have significant whitespace, but that kind of thing lets you be pretty freeform.
04:48
< Rhamphoryncus>
I'm critiquing the tutorial, not the language
04:48
< Rhamphoryncus>
I already tried it in ghci ;)
04:48
< McM[laptop]>
Mm.
04:48
< McM[laptop]>
Heh
04:49
< McM[laptop]>
I personally kind of prefer [1..n] for simple ranges
04:49
< Rhamphoryncus>
I also tried pressing 'c' and 'C' to interrupt a loop and found that no, it really is ctrl-C
04:49
< Rhamphoryncus>
Yeah, with just two items that's okay
04:49
< Rhamphoryncus>
With 3 the punctuation blends together
04:50
< McM[laptop]>
Yeah, I can see that
04:50
< McM[laptop]>
I think I might still go [1, 3..10]
04:50
< McM[laptop]>
Treating ranges as units
04:50
< McM[laptop]>
Hmm, wait, that's 1, 3, 5, 7, etc, isn't it
04:50
< Rhamphoryncus>
But it's not a unit
04:51
< Rhamphoryncus>
exactly
04:51
< McM[laptop]>
Right.
04:51
< McM[laptop]>
nm
04:52
< Rhamphoryncus>
I suppose it's unnecessary to ask if the string type is raw byte, utf8, utf16, or utf32? It probably has them all and infers them like everything else? (And it's the char type, not the string type.)
04:52
< McM[laptop]>
Right
04:53
< McM[laptop]>
Uh, I don't have that machine handy right now
04:53
< McM[laptop]>
I did a UTF8 enc/dec system at one point
04:53
< McM[laptop]>
From memory, characters are conceptually UCS-4 but when you print them out it will do so in the current encoding.
04:53
< Rhamphoryncus>
I typed in a unicode character in ghci and it came out escaped sanely
04:53
< Rhamphoryncus>
UCS-4 or UTF-32? ;)
04:54
< McM[laptop]>
UCS-4, I suspect. I'm guessing it's wchar_t internally though I haven't checked the source.
04:54
< McM[laptop]>
Speaking of, I hear Java is actually UTF-16 now instead of UCS2.
04:54
< Rhamphoryncus>
UCS-4 is "well, it's 32 bits, and that's about the only semantic we enforce"
04:54
< Rhamphoryncus>
heh
04:55
< Rhamphoryncus>
I noticed C++11 has u8"UTF-8", u"UTF-16", and U"UTF-32". Makes you think MS won that one, eh?
04:55
< McM[laptop]>
Yeah, I'm guessing that this is pretty much it - that it's a stream of tridecaduplets internally.
04:55
< Rhamphoryncus>
.. of what?
04:56
< Noah>
13-tuples?
04:56
< McM[laptop]>
Like octets, but 32 instead of 8 ;-)
04:56
< Rhamphoryncus>
wtf?
04:56
< Rhamphoryncus>
oi :P
04:56 * McM[laptop] just made that word up.
04:57
< Rhamphoryncus>
So my WTF was entirely appropriate. Gotcha.
04:57
< McM[laptop]>
More directly, I suspect it treats strings as sequences of 32-bit numbers the same way Latin-1 treats them as sequences of 8-bit ones.
05:00
< Rhamphoryncus>
The main difference is in what misbehaviour it rejects
05:00
< McM[laptop]>
Noah: That would be triskadectets, right~
05:00
< Noah>
Yea probably sure
05:01
< McM[laptop]>
Hrm.
05:01
< McM[laptop]>
Wouldn't a hypothetical UTF-32 be multiword for codepoints above 2 billion
05:01
< Rhamphoryncus>
Nope, all of unicode is limited to 0x10FFFF
05:02
< Rhamphoryncus>
The original proposal for UTF-8 could go larger but it's no longer allowed
05:02
< Rhamphoryncus>
Redundant forms for UTF-8 were later made explicit errors as well (for security reasons)
05:02
< McM[laptop]>
Ah yes, URL normalization attacks
05:03
< Noah>
Ahh, our forefathers of computing. "No one would ever do anything evil with a computer, so we don't need a lot of security boilerplate"
05:03
< Rhamphoryncus>
and database ones
05:03
< Rhamphoryncus>
Noah: forefathers? That's still par for most programmers :P
05:03
< Noah>
Well, yes, but now we're aware of it, we just don't care
05:04
< Rhamphoryncus>
Most are just too ignorant or lazy
05:04
< Noah>
It's more like "Someone's going to break this anyway, so why bother with the boilerplate"
05:21 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
05:22 Derakon is now known as Derakon[AFK]
05:26 mao42ranma [nbarr@490720.DD2C85.BDDA1D.F5EB33] has joined #code
05:28
< Rhamphoryncus>
"Why care about types?" If they'd tried PHP they wouldn't be asking that ;)
05:29
< Rhamphoryncus>
(actually a header from the tutorial/book)
05:31 McM[laptop] [mcmartin@Nightstar-4753de43.pltn13.sbcglobal.net] has quit [[NS] Quit: This computer has gone to sleep]
05:45 mao42ranma [nbarr@490720.DD2C85.BDDA1D.F5EB33] has quit [Connection reset by peer]
05:45 Noah [nbarr@490720.DD2C85.BDDA1D.F5EB33] has quit [Client closed the connection]
05:46 Noah [nbarr@490720.DD2C85.BDDA1D.F5EB33] has joined #code
05:48 maoranma [nbarr@490720.DD2C85.BDDA1D.F5EB33] has joined #code
05:49 Noah is now known as NSGuest19271
05:49 maoranma is now known as Noah
05:50 NSGuest19271 [nbarr@490720.DD2C85.BDDA1D.F5EB33] has quit [Ping timeout: 121 seconds]
05:59 Derakon[AFK] is now known as Derakon
06:01 Kindamoody is now known as Kindamoody|afk
06:13 io|gone is now known as io|sad
06:26 Kindamoody|afk is now known as Kindamoody
06:29 Derakon is now known as Derakon[AFK]
06:34 ErikMesoy1 [Erik_Mesoy@A08927.B4421D.B81A91.464BAB] has joined #code
06:36 ErikMesoy [Erik_Mesoy@Nightstar-bd2f5f93.80-203-16.nextgentel.com] has quit [Ping timeout: 121 seconds]
06:39 io|sad is now known as io|bed
06:41 ErikMesoy1 is now known as ErikMesoy
06:43 Noah [nbarr@490720.DD2C85.BDDA1D.F5EB33] has quit [Client closed the connection]
06:44 Noah [nbarr@490720.DD2C85.BDDA1D.F5EB33] has joined #code
06:49 Noah [nbarr@490720.DD2C85.BDDA1D.F5EB33] has quit [Client closed the connection]
06:49 Noah [nbarr@490720.DD2C85.BDDA1D.F5EB33] has joined #code
07:36 Kindamoody is now known as Kindamoody|afk
08:05 himi [fow035@D741F1.243F35.CADC30.81D435] has quit [Operation timed out]
08:44 McMartin [mcmartin@Nightstar-107eb580.pltn13.sbcglobal.net] has joined #code
08:44 mode/#code [+ao McMartin McMartin] by ChanServ
09:12 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has quit [Ping timeout: 121 seconds]
09:17 You're now known as TheWatcher
09:24 Vash [Vash@Nightstar-241cb5d4.wlfrct.sbcglobal.net] has quit [[NS] Quit: I lovecraft Vorn!]
09:26 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has joined #code
10:09 RichyB [MyCatVerbs@Nightstar-3b2c2db2.bethere.co.uk] has joined #code
10:29 Attilla [Obsolete@Nightstar-aae824b5.as43234.net] has joined #code
10:54 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
10:54 mode/#code [+o himi] by ChanServ
11:08 Kindamoody|afk is now known as Kindamoody
14:57 maoranma [nbarr@Nightstar-f93cf469.pools.spcsdns.net] has joined #code
14:58 Kindamoody is now known as Kindamoody|out
15:00 Noah [nbarr@490720.DD2C85.BDDA1D.F5EB33] has quit [Ping timeout: 121 seconds]
15:30 * TheWatcher eyes this, wonders why his background: url('../path/to/image.png') blabla; isn't working
15:42 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
16:12 ErikMesoy [Erik_Mesoy@A08927.B4421D.B81A91.464BAB] has quit [NickServ (GHOST command used by ErikMesoy1)]
16:14 io|bed is now known as iospace
16:57 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has quit [Client exited]
17:07 iospace is now known as io|meh
17:13
< celticminstrel>
Did C++11 officially include C99's new initializer syntax?
17:58 ShellNinja is now known as Number3
17:59 Tarinaky is now known as Atreus
18:16 Vash [Vash@Nightstar-241cb5d4.wlfrct.sbcglobal.net] has joined #code
18:16 mode/#code [+o Vash] by ChanServ
18:19 Kindamoody|out is now known as Kindamoody
18:36 Kindamoody [Kindamoody@Nightstar-6154a72a.tbcn.telia.com] has quit [Connection closed]
18:37 Kindamoody|out [Kindamoody@Nightstar-6154a72a.tbcn.telia.com] has joined #code
18:37 mode/#code [+o Kindamoody|out] by ChanServ
18:37 Kindamoody|out is now known as Kindamoody
18:55
<~Vornicus>
finally got around to doing it out, 3 minutes 45 seconds from Link's House to Hyrule Castle.
18:56
<~Vornicus>
and rham, who I was discussing scale issues with, is not here.
19:01
<~Vornicus>
2m30s on Epona, no hurrying.
19:02
<~Vornicus>
or rather not hyrule castle, but the load screen into castle town south.
19:02
<~Vornicus>
THe latter includes about 15 seconds of jogging on foot to get from the bottom of the stairs at the bridge into the door.
19:04
<~Vornicus>
I also crashed into a wall, costing me 3 seconds, and got attacked by a bird which I don't think cost any time, while on the horse.
19:09 Kindamoody is now known as Kindamoody[zZz]
19:10
<~Vornicus>
it's funny, the bird couldn't quite catch up while I was on foot.
19:13 maoranma is now known as Noah
19:24 Vashicus [Vash@Nightstar-241cb5d4.wlfrct.sbcglobal.net] has joined #code
19:24 Vashicus is now known as VV
21:01 Vash [Vash@Nightstar-241cb5d4.wlfrct.sbcglobal.net] has quit [[NS] Quit: I lovecraft Vorn!]
21:23 Attilla_ [Obsolete@Nightstar-76b43344.as43234.net] has joined #code
21:24 Attilla [Obsolete@Nightstar-aae824b5.as43234.net] has quit [Ping timeout: 121 seconds]
22:02 Attilla_ is now known as Attilla
22:37 RichyB [MyCatVerbs@Nightstar-3b2c2db2.bethere.co.uk] has quit [[NS] Quit: NINJA VANISH!]
22:55 Number3 is now known as ShellNinja
23:26
< celticminstrel>
Why does Xcode not consider structs as equivalent to classes for the purposes of the function menu...
23:34 Atreus is now known as Tarinaky
23:48 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
23:51 You're now known as TheWatcher[t-2]
23:55 You're now known as TheWatcher[zZzZ]
--- Log closed Fri Jun 01 00:00:39 2012
code logs -> 2012 -> Thu, 31 May 2012< code.20120530.log - code.20120601.log >

[ Latest log file ]