--- Log opened Wed Oct 21 00:00:54 2009 |
00:09 | < SmithKurosaki> | I though it was was something like 'I will do Science to x' but wasn't sure |
00:26 | <@McMartin> | The unicode there before |
00:26 | <@McMartin> | "x, ich werde" |
00:26 | <@McMartin> | is the universal quantifier "for all" |
00:31 | <@TheWatcher> | Ah, the joys of unicode and IRC ¬¬ |
00:32 | < Namegduf> | You mean IRC's absolutely flawless support of it? |
00:32 | | * McMartin <?> Unicode |
00:32 | < Namegduf> | XD |
00:33 | | * gnolam mutters, thumbs through "The C++ Programming Language" in search of a rationale for requiring default constructors. |
00:34 | < gnolam> | Also, why the hell std::pair exists in <utility>. |
00:35 | < Namegduf> | Presumably, it's useful. |
00:36 | <@McMartin> | Default constructors |
00:36 | <@TheWatcher> | Namegduf: forget just IRC... I'm sat here with putty set to use utf-8, screen set to use it, a font that has the right glyphs... and I still see things like '|| ? x, ich...' and '<?> Unicode' |
00:36 | <@McMartin> | So that you can write "classname x;" |
00:36 | < Nathia> | hehe |
00:36 | <@McMartin> | <?> was in fact <, a question mark, and >. |
00:37 | <@TheWatcher> | Hah, right. |
00:37 | < Nathia> | a guy I'm talking to in another channel just wrote his own IRC server and client from scratch, in a couple days. :P |
00:37 | < Namegduf> | Congratulations, he can program at least a little. |
00:37 | <@McMartin> | Default constructors are optional, but if you block them a shitload of autogenerated code won't work and so you will need to hand-write it all. |
00:37 | < Namegduf> | IRC servers are simple. |
00:37 | <@TheWatcher> | ... so? IRC's not a complicated protocol to work with. |
00:37 | < Namegduf> | Well, no. |
00:38 | < Namegduf> | IRC servers that *link* are complex. |
00:38 | < Namegduf> | (ish) |
00:38 | < Namegduf> | But a plain IRC server's not really impressive |
00:38 | < Namegduf> | A plain, GOOD one, though, is hard. |
00:38 | < Namegduf> | Well, no. A featureful, good one. |
00:38 | | AbuDhabi [farkoff@Nightstar-f0f233f0.adsl.tpnet.pl] has quit [[NS] Quit: Sometimes you burn with the Art, and other times, the Art burns you.] |
00:39 | < Namegduf> | (Example: You can't use select(), because it has crappy performance, but you can't use epoll() unless you're Linux-only, so you need multiple, selectable-at-compile-time-at-least socket engines) |
00:39 | | You're now known as TheWatcher[T-2] |
00:40 | < gnolam> | McMartin: they're not optional. They may be implicitly declared, but they have to exist. |
00:40 | < gnolam> | And it's a pain in the ass. |
00:40 | < Namegduf> | TheWatcher[T-2]: I blame your OS. |
00:41 | < Namegduf> | Sorry, but... that's seriously the only hole I see in that chain. Windows hates UTF-8 for no apparant reason |
00:42 | <@TheWatcher[T-2]> | Namegduf: sounds like a good option to me. If lightwave and a few other things worked in wine/didn't suck in wine/had linux versions, I'd format the hell out of it. |
00:42 | < gnolam> | They could just as well have simply prohibited "classname foo;" for classes without them - I don't see how that would have complicated compiler implementation at all, but it would have made safe class design a hell of a lot easier. |
00:42 | < Namegduf> | Yeah; sadly, the "I suspect it's Windows failing" suggestion kinda fails to come with any solution. |
00:42 | | You're now known as TheWatcher[zZzZ] |
00:42 | < Namegduf> | I'd be more specific if I knew enough about Windows to be. |
00:48 | | OrthodocErik is now known as ErikMesoy|sleep |
00:55 | | Orthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has joined #Code |
01:04 | < gnolam> | Namegduf: it was more "why the hell is it in <utility> instead of <pair>". :P |
01:20 | | kaz__ is now known as Kazriko |
01:26 | | 459AAAH3X is now known as Geek |
01:26 | | Geek is now known as GeekSoldier |
01:29 | <@McMartin> | Oh, C++. |
01:29 | <@McMartin> | Define an empty, private default constructor and you will get all the necessary errors. |
01:33 | | Derakon[AFK] is now known as Derakon |
01:43 | | Orthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has quit [Connection reset by peer] |
01:58 | | Orthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has joined #Code |
02:18 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [[NS] Quit: Z?] |
02:20 | | Orthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has quit [Connection reset by peer] |
02:27 | | Orthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has joined #Code |
02:27 | | Orthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has quit [Connection reset by peer] |
02:35 | | Orthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has joined #Code |
02:39 | | Nathia is now known as Alek |
02:56 | | Orthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has quit [Connection reset by peer] |
02:59 | | Orthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has joined #Code |
03:00 | | Attilla [The.Attilla@FBC920.687A28.7638A6.BF0005] has quit [Client closed the connection] |
04:37 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
04:39 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #Code |
04:39 | | mode/#code [+o Vornicus] by 963AAAKUM |
05:01 | | Syloqs-AFH [Syloq@is.an.awesome.Network.Administrator.on.Nightstar.Net] has quit [Connection reset by peer] |
05:35 | | Orthia is now known as Reivthia |
05:55 | | Syloqs_AFH [Syloq@is.an.awesome.Network.Administrator.on.Nightstar.Net] has joined #Code |
05:56 | | Syloqs_AFH is now known as Syloqs-AFH |
06:13 | | jerith_ [jerith@Nightstar-bf52129d.slipgate.za.net] has joined #Code |
06:13 | | jerith_ is now known as jerith |
06:53 | | Alek [omegaboot@Nightstar-02457fcc.emhril.sbcglobal.net] has quit [[NS] Quit: bah, reboot] |
07:01 | | Alek [omegaboot@Nightstar-02457fcc.emhril.sbcglobal.net] has joined #Code |
07:11 | | Derakon is now known as Derakon[AFK] |
07:43 | | AnnoDomini [farkoff@Nightstar-f0f233f0.adsl.tpnet.pl] has joined #Code |
07:43 | | mode/#code [+o AnnoDomini] by 963AAAKUM |
08:43 | | Vornicus is now known as Vornicus-Latens |
08:58 | | 459AAAH3I [rhamph@Nightstar-a62bd960.abhsia.telus.net] has quit [Client exited] |
09:20 | | ErikMesoy|sleep is now known as ErikMesoy |
09:45 | | You're now known as TheWatcher |
10:13 | | Syloqs-AFH [Syloq@is.an.awesome.Network.Administrator.on.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
10:18 | | Syloqs_AFH [Syloq@is.an.awesome.Network.Administrator.on.Nightstar.Net] has joined #Code |
10:18 | | AnnoDomini [farkoff@Nightstar-f0f233f0.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds] |
10:19 | | Syloqs_AFH is now known as Syloqs-AFH |
10:38 | | Attilla [The.Attilla@FBC920.687A28.7638A6.BF0005] has joined #Code |
10:38 | | mode/#code [+o Attilla] by 963AAAKUM |
10:55 | | * TheWatcher bleghs |
10:56 | | * TheWatcher tries to work out how, given an arbitrary directory name in linux, to work out what filesystem it's in |
11:22 | | crem [moo@Nightstar-8ca3eea7.adsl.mgts.by] has quit [Ping timeout: 121 seconds] |
11:26 | | crem [moo@Nightstar-8ca3eea7.adsl.mgts.by] has joined #Code |
11:34 | | Orthia [Orthianz@Nightstar-11636dcb.xnet.co.nz] has joined #Code |
11:35 | | Reivthia [Orthianz@Nightstar-ec6e7c8c.xnet.co.nz] has quit [Ping timeout: 121 seconds] |
11:45 | | crem [moo@Nightstar-8ca3eea7.adsl.mgts.by] has quit [Ping timeout: 121 seconds] |
11:49 | | crem [moo@Nightstar-8ca3eea7.adsl.mgts.by] has joined #Code |
11:53 | | Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #Code |
11:57 | | Orthia is now known as Reivthia |
12:08 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #Code |
12:25 | | Reivthia [Orthianz@Nightstar-11636dcb.xnet.co.nz] has quit [Connection reset by peer] |
12:26 | | Orthia [Orthianz@Nightstar-11636dcb.xnet.co.nz] has joined #Code |
14:27 | | AnnoDomini [farkoff@Nightstar-57b74aed.adsl.tpnet.pl] has joined #Code |
14:27 | | mode/#code [+o AnnoDomini] by 963AAAKUM |
--- Log closed Wed Oct 21 15:09:16 2009 |
--- Log opened Wed Oct 21 15:12:32 2009 |
15:12 | | TheWatcher [chris@Nightstar-b4529b0c.zen.co.uk] has joined #code |
15:12 | | Irssi: #Code: Total of 18 nicks [3 ops, 0 halfops, 0 voices, 15 normal] |
15:13 | | Irssi: Join to #Code was synced in 41 secs |
15:13 | | Reivles [reaverta@ServerAdministrator.Nightstar.Net] has joined #code |
15:23 | | SmithKurosaki [Smith@Nightstar-04e98d9c.dsl.teksavvy.com] has joined #code |
15:37 | < ErikMesoy> | Does Python have anything vaguely resembling a way of declaring a dictionary to be global? |
15:52 | < EvilDarkLord> | The global keyword? |
15:52 | < ErikMesoy> | That gave me an invalid syntax error. |
15:52 | < Kazriko> | how global? you can make it module global by putting it outside of a function, then make sure when you use it to say "global variable" |
15:53 | < Kazriko> | blah = {} |
15:53 | < Kazriko> | def bar(): |
15:53 | < ErikMesoy> | Oooh. I say global when *using* it instead of declaring? |
15:53 | < Kazriko> | global blah |
15:53 | < ErikMesoy> | Nifty. |
15:53 | < ErikMesoy> | Thanks. |
16:11 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [Ping timeout: 121 seconds] |
16:18 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code |
16:23 | | McMartin [mcmartin@8E7DA3.669CD3.E895E6.6C8F6F] has joined #code |
17:00 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has joined #code |
17:05 | | Syloqs_AFH [Syloq@is.an.awesome.Network.Administrator.on.Nightstar.Net] has joined #code |
17:06 | | Syloqs_AFH is now known as Syloqs-AFH |
17:12 | < Alek> | question for the audience: how do you remove a login password without knowing it? |
17:12 | < Alek> | I'm assuming something about command-line safe mode or boot from disk, then edit the registry to remove the offending parts. |
17:13 | < Alek> | (yes, windoze) |
17:13 | < Alek> | (most likely one of 2k, xp, or vista) |
17:16 | < ToxicFrog> | http://home.eunet.no/~pnordahl/ntpasswd/ |
17:19 | < ToxicFrog> | This is one of many techniques returned by google search key 'windows password reset [livecd]' |
17:20 | | Orthia [Orthianz@Nightstar-11636dcb.xnet.co.nz] has joined #code |
17:54 | < Alek> | ty |
17:57 | < SmithKurosaki> | That's pretty sweet |
18:01 | < McMartin> | I totally misread that question |
18:01 | < McMartin> | As "How do you *accidentally* remove a Windows password" |
18:02 | < SmithKurosaki> | amusement |
18:11 | | Netsplit *.net <-> *.split quits: Syloqs-AFH, Rhamphoryncus, McMartin, Orthia, ToxicFrog |
18:18 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has joined #code |
18:19 | < simon`> | I'm trying to define an undergraduate-level project for myself here.. |
18:20 | < SmithKurosaki> | You mean a big graduating project? |
18:20 | < simon`> | probably not |
18:21 | < simon`> | just part-time for half a semester. |
18:21 | < simon`> | (which is about half of what a big graduating project is expected to take) |
18:22 | < simon`> | if you had a bunch of assignment answers in a bunch of files and you wanted to check if people were cheating by either simple copy-paste or by slightly more devious rewriting, but preserving most program structure, my initial thought is to tokenize the programs and calculate their levenshtein distance (and as a secondary problem, try to deal with the computational complexity, since I think levenshtein is O(n^2) which will explode for many input ... |
18:22 | < simon`> | ... files) |
18:23 | < simon`> | I'm trying to decide if there is any gain in comparing two ASTs rather than a simple token list.. |
18:23 | | * SmithKurosaki is lost, maybe i won't be next year |
18:26 | < simon`> | and my conclusion so far is no, not unless I transform the ASTs into some kind of normal forms. but then I'm not sure if all "adequate solutions" to simple problems, which most of the assignments I have in mind, will simply look alike. |
18:27 | < simon`> | SmithKurosaki, basically what I want to do is take a piece of program code and tokenize it (so "function foo($a, $b) { ... }" becomes "FUNCTION FNAME(FOO) LPAREN VAR(A) ARGSEP VAR(B) RPAREN LBRACE ... RPACE" and then see how many of those tokens I have to replace with another token to get from one program to another. |
18:28 | < simon`> | SmithKurosaki, technically I don't need the tokenizing, I could also just do it on the chars of the source code. |
18:33 | < simon`> | SmithKurosaki, if people are really naive they'll just copy-paste their solutions, but often they take something like "fun fib 0 = 0 | fib 1 = 1 | fib n = fib (n - 1) + fib (n - 2)" and turn it into "fun fib n = if n = 0 then 0 else if n = 1 then 1 else let val a = fib (n - 1) val b = fib (n - 2) in a + b end" |
18:34 | < simon`> | *shrug* maybe trying to catch people for cheating with programming assignments is a stupid task. |
18:34 | < Rhamphoryncus> | I'm sure such programs already exist |
18:34 | < simon`> | it'll bite people in the but eventually. |
18:34 | < Rhamphoryncus> | hell, look at SCO's court documents ;) |
18:35 | < Rhamphoryncus> | Problem is, not only can simple reformatting and renaming fool it, it can also pick up similarities on code that wasn't copied |
18:36 | < simon`> | Rhamphoryncus, the more I dig into which methods which might be appropriate, the more I start to question the existence of a reasonable definition of cheating that will catch cheaters and won't catch non-cheaters, and will be fair to those who cheat but actually know the curriculum. |
18:36 | < simon`> | yes, exactly |
18:37 | < simon`> | so if I have to take a program and turn it into some normal form for comparison, I suspect that for simple enough assignments, all programs will look exactly the same when transformed. |
18:37 | < Rhamphoryncus> | if they work, yes ;) |
18:37 | < simon`> | hehe |
18:37 | | * ErikMesoy peers at backscroll, winces at recursively defined function. |
18:38 | < Rhamphoryncus> | That's actually a good start. Get a set of results from an assignment |
18:39 | < Rhamphoryncus> | Any positives there are declared a false positive |
18:39 | < Rhamphoryncus> | You'd probably have more luck with literal matches |
18:39 | < ErikMesoy> | "I suspect that for simple enough assignments, all programs will look exactly the same when transformed." <-- This suggests a heuristic for dealing with the problem |
18:39 | < ErikMesoy> | Cheaters would be more likely to have copied wrong and inefficient code. |
18:40 | < ErikMesoy> | Do you have a model answer for these exercises? You could check if the handed in answers deviate from the model in the same way. |
18:42 | < simon`> | Rhamphoryncus, you mean simply compare source code. |
18:43 | < simon`> | ErikMesoy, yes, often people have copied the bugs also. |
18:43 | < Rhamphoryncus> | simon`: yes |
19:01 | | ErikMesoy is now known as ErikMesoy{CoH} |
19:03 | | Derakon [Derakon@Nightstar-d44d635e.ucsf.edu] has joined #code |
19:03 | | Derakon is now known as Derakon[work] |
19:15 | | Syloqs_AFH [Syloq@is.an.awesome.Network.Administrator.on.Nightstar.Net] has joined #code |
19:16 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code |
19:16 | | Syloqs_AFH is now known as Syloqs-AFH |
19:20 | | McMartin [mcmartin@Nightstar-cd8a4fac.pltn13.sbcglobal.net] has joined #code |
20:02 | < McMartin> | Wow. It's been a long time since I've written something that (a) compiled to less than 8k but (b) still does something I need done |
20:03 | < Derakon[work]> | Dynamic linking~ |
20:03 | < McMartin> | Well, no, it hasn't; it's been about 5 minutes. But *before* that it was a long time |
20:03 | < TheWatcher> | Heh |
20:03 | < TheWatcher> | What was it? |
20:04 | < McMartin> | The process grabs its own access token and interrogates it for various useful values I needed to discover, then pops them up in a message box. |
20:04 | < McMartin> | This is to discover various differences in behavior between WinXP, Vista, and W7 with respect to its security model |
20:05 | < McMartin> | Hm, maybe some of it is optimizations settings, because my last program like this (try multiple different ways to see whether or not the user is an administrator - which, incidentally, found the only compat problem in Vista I've been able to blame on Vista) was 48k. |
20:06 | < McMartin> | And in terms of source it was not significantly longer. |
20:08 | | Orthia [Orthianz@Nightstar-11636dcb.xnet.co.nz] has joined #code |
20:19 | < SmithKurosaki> | Right, that's what you were trying to do... simon`, that sounds like a pretty cool idea, and U jow it would help profs compare code literally, butwhen it comes to copying main ideas, when an assignment is specific enough and if enough of the stuents have the same background, then you are going to get false positives because they wkill all look at the program the same way, but might have different naming conventions or the like... |
20:20 | < SmithKurosaki> | So, you have to look at program similarity objectively, and it is hard to do when the students have all come up the same way' |
20:20 | | Thant [hesy@Nightstar-63cb80a6.cable.ntl.com] has joined #code |
20:20 | < Derakon[work]> | I think you overestimate the likelihood of similar-looking code on any remotely complicated project. |
20:29 | | ErikMesoy{CoH} is now known as ErikMesoy |
20:38 | | * EvilDarkLord manages to include HALTING in proving something about P-complete problems. |
20:38 | | * EvilDarkLord crackles with power. |
20:39 | | * ErikMesoy grounds EvilDarkLord. |
20:39 | | * EvilDarkLord cackles with power instead. |
20:39 | | * Thant cowers and goes back to 'C++ for dummies' |
20:39 | | * ErikMesoy records EvilDarkLord on a laughtrack. |
20:40 | < Thant> | nVariable = nVariable + 2; |
20:40 | < Thant> | nVariable += 2; |
20:40 | < Thant> | that is an amazing idea |
20:41 | < ErikMesoy> | Maybe the author thought only one of them would work and didn't remember which one. |
20:41 | < Thant> | no i mean |
20:41 | < Thant> | the whole += thing is awesome |
20:41 | < Thant> | not encoutered that before |
20:41 | < Thant> | encountered** |
20:41 | < ErikMesoy> | Oh. I thought they had appeared consecutively in some piece of code. |
20:42 | < Thant> | nah, it was just an example |
20:42 | < EvilDarkLord> | Thant: Real men, of course, use (++nVariable)++ for no reason here. |
20:43 | < Thant> | what would that do |
20:43 | < Thant> | out of curiosity :P |
20:43 | | * ErikMesoy gets into a faux-argument with EvilDarkLord claiming that ++(nVariable++) is best practice. |
20:43 | < Thant> | ++ is increment |
20:43 | < Thant> | right? |
20:44 | < Thant> | so wouldnt that just increment twice? |
20:44 | < EvilDarkLord> | Yes. |
20:44 | < Thant> | that could get very messy |
20:44 | < ErikMesoy> | Yes, so it would work out the same, and look clevererer. |
20:44 | < EvilDarkLord> | Same effect with triple the mess. |
20:44 | < Thant> | (im new to C++, so im quite slow on the uptake with a fair amount of this stuff :P ) |
20:45 | < ErikMesoy> | No worries. I've never touched C++, I just picked up a bunch of stuff it shares with other languages. |
20:45 | | * EvilDarkLord confuses Erik with POINTERS. |
20:45 | | * ErikMesoy fights back with SHARPIES. |
20:45 | < EvilDarkLord> | * * * * * |
20:45 | < ErikMesoy> | wut |
20:46 | < EvilDarkLord> | Well, actually that doesn't mean anything. |
20:46 | < ErikMesoy> | http://en.wikipedia.org/wiki/File:Sharpie.png |
20:46 | < EvilDarkLord> | *****i does, though. I think. |
20:46 | < ErikMesoy> | That looks very obfuscated. |
20:47 | < McMartin> | Hm |
20:47 | < McMartin> | I need a short program with a UI. |
20:48 | < EvilDarkLord> | A graphical UI? |
20:48 | | * McMartin considers writing Navi.exe, that just calls MessageBox(NULL, "Press Z button to target!", "Hey! Listen!", MB_OK) |
20:48 | < McMartin> | Yeah |
20:48 | < Thant> | "HELP ME OUT FOX" |
20:58 | | AnnoDomini [farkoff@Nightstar-57b74aed.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds] |
21:00 | < Derakon[work]> | Isn't ++i++ compiler-specific? |
21:01 | < EvilDarkLord> | Possibly. I did use parentheses. |
21:01 | < Derakon[work]> | Note that ++i and i++ do different things. |
21:01 | < EvilDarkLord> | ++i++ fails on my version of g++ at least. |
21:01 | < Derakon[work]> | i++ is "Increment i, then return the un-incremented value". |
21:02 | < EvilDarkLord> | I know. |
21:02 | < Derakon[work]> | ++i is "Increment i, then return the incremented value" |
21:02 | < Derakon[work]> | EDL: yeah, but Thant might not. |
21:02 | < EvilDarkLord> | Aye. |
21:03 | < ErikMesoy> | For this reason, using both of them in proximity, "proximity" here defined as "on the same harddrive", is strongly discouraged for the confusion it can lead ti. |
21:03 | < ErikMesoy> | *to |
21:03 | < Derakon[work]> | As a general rule, you shouldn't use the increment operators in combination with anything. |
21:03 | < ErikMesoy> | That too. |
21:04 | < Derakon[work]> | That is, "i++;" is fine, and "for (i = 0; i < 10; i++)" is fine, but "foo = *(bar++)" is not. |
21:04 | < EvilDarkLord> | Although since people want to look clever by doing that, it's good to know what it does. |
21:05 | < Derakon[work]> | What it does is point out to you which programmers you don't want to work with. |
21:05 | < Derakon[work]> | "Clever programming" isn't. |
21:05 | < Derakon[work]> | A good programmer makes his code dead-simple. When he can't do that, he extensively comments why his code isn't dead-simple. |
21:05 | < ErikMesoy> | And constants aren't? ;) |
21:05 | < Thant> | thanks for that Derakon :) |
21:06 | < Derakon[work]> | Always happy to rant about code style. :) |
21:06 | < McMartin> | l33t x0rxx0r1ng sk1llz! |
21:06 | < Derakon[work]> | Erik: eh, constants being constant can be enforced by compilers and most interpreters. |
21:06 | < McMartin> | Derakon: "const" does not mean "constant" >_< |
21:06 | | * EvilDarkLord goes to assimilate answer set programming. |
21:06 | < ErikMesoy> | "Constants aren't" is more of a Murphyism in that it's one of those things that will go wrong if it can go wrong. |
21:07 | < ErikMesoy> | Along with "variables don't". |
21:07 | < Derakon[work]> | Heh. |
21:07 | < McMartin> | Right |
21:07 | < ErikMesoy> | So, don't let it go wrong. ;) |
21:07 | < McMartin> | However, const objects not being actual constants is not only to be expected, in a lot of stuff it's actually mandatory that they not be. |
21:07 | < McMartin> | Generally when you do mixins with "constants" that are also being reference-counted. |
21:08 | | AnnoDomini [farkoff@Nightstar-57b74aed.adsl.tpnet.pl] has joined #code |
21:08 | | * McMartin eyes MSDN |
21:08 | < McMartin> | Apparently one of the new W7 APIs is "Direct2D". |
21:08 | < McMartin> | :science: |
21:09 | < Derakon[work]> | ;.; |
21:09 | < TheWatcher> | Um |
21:09 | < McMartin> | (I must assume that it is DirectDraw with extra options for hardware accel) |
21:22 | < Rhamphoryncus> | Derakon[work]: ++i++ is undefined |
21:23 | < Rhamphoryncus> | it modifies i twice within a single sequence point |
21:26 | | * Derakon[work] nods. |
21:26 | < Thant> | bitwise logic operations |
21:26 | < Thant> | can suck |
21:27 | < Thant> | a dick D: |
21:27 | < Derakon[work]> | I've never really understood the desire among many programmers to play golf with their code. |
21:27 | < Thant> | play gold with their code? |
21:27 | < Derakon[work]> | Newsflash: terse != elegant |
21:27 | < Rhamphoryncus> | Actually, I'm double checking. That one might be illegal due to the first operator returning a temporary copy, which can't be operated on by the second |
21:27 | < Derakon[work]> | Thant: golf. A.k.a. trying to minimize lines or characters or both. |
21:27 | < Rhamphoryncus> | i++ + ++i; is definitely undefined |
21:27 | < Thant> | so using stupid variable names etc? |
21:28 | < Derakon[work]> | Partially, and partially the desire to do as much in one line as possible. |
21:28 | < AnnoDomini> | I scanned the channel roster for a user named "Newsflash". |
21:28 | < Derakon[work]> | Which generally includes gratuitous use of increment operators. |
21:28 | < Thant> | bah, each line should be short and concise |
21:28 | < Thant> | and variables should be clearly named |
21:28 | < Derakon[work]> | Ehh, that's not always feasible. But each line should do one thing. |
21:28 | < Thant> | otherwise how can you tell wtf is going on when it all doesnt work for no reason |
21:29 | < Rhamphoryncus> | Thant: short and concise, but only to achieve the goal of readability, not a goal unto itself |
21:30 | < Thant> | yeah exactly |
21:30 | < Thant> | if your code isnt readable, it doesnt matter if it does its job awesome, cause anyone else who looks at it wont know wtf |
21:30 | < Derakon[work]> | Guess what I'm doing at work~ |
21:31 | < Thant> | reading some other guys code and weeping? |
21:31 | < Rhamphoryncus> | heh f(i++) + g(j++) + h(k++) |
21:32 | < Derakon[work]> | Working on a project written by someone whose code is not readable and only mostly does its job. |
21:32 | < Thant> | niiiiice |
21:33 | < Derakon[work]> | (Said previous coder is in Germany now, incidentally) |
21:33 | < McMartin> | (FLEEING YOUR JUSTIFIED WRATH) |
21:34 | < ErikMesoy> | (Report him to the Wiesenthal Centre! :P) |
21:34 | < Derakon[work]> | The ironic thing is that I can't risk venting my spleen at him over email, lest he decide to cut off contact. |
21:34 | < Derakon[work]> | s/ironic/inconvenient/ (?) |
21:56 | < McMartin> | s/ironic/infuriating/~ |
21:56 | < McMartin> | TELEPORT WITHOUT SPLEEN |
21:58 | | * McMartin sends a polite note to QA that features implemented for version 2.5 will not actually work in version 2.4 and could they possibly run their tests against trunk plz. |
21:59 | | Thant [hesy@Nightstar-63cb80a6.cable.ntl.com] has quit [[NS] Quit: ....Or have they?] |
22:32 | < Derakon[work]> | Where does "teleport without foo" come from? |
22:35 | < ErikMesoy> | "Teleport without error". |
22:35 | < ErikMesoy> | Classic D&D teleport has a percentile chance of going off target. |
22:36 | < McMartin> | Most of the others are variants of the original gag version, "Teleport without pants" |
22:37 | | AnnoDomini [farkoff@Nightstar-57b74aed.adsl.tpnet.pl] has quit [[NS] Quit: What can change the nature of a man?] |
22:38 | < Derakon[work]> | Ahh. |
22:38 | < McMartin> | Which in turn is the game in which you replace various words with "pants" for comic effect. |
22:39 | < Derakon[work]> | I find your lack of pants disturbing, etc. |
22:40 | < McMartin> | (What can change the pants of a man?) |
22:40 | < ErikMesoy> | "Thant: reading some other guys pants and weeping?" |
22:40 | < Derakon[work]> | Thant is no longer with us. |
22:40 | < ErikMesoy> | It was his line, so I attributed it. |
22:40 | < Derakon[work]> | Ah. |
22:48 | | ErikMesoy is now known as ErikMesoy|sleep |
22:51 | < dmlandrum> | "You're in the Cash Cab! The TV game show that takes place right here in my pants!" |
22:52 | < Vornicus> | This is the Pantsman. The combine's pants of reckoning have come. |
22:53 | < dmlandrum> | Eleanor Rigby picked up the pants in the church where the wedding had been... |
22:54 | < Vornicus> | I once did a similar thing except with the words "Quonset Hut"... because the half of a revolving floor that we were putting together looked remarkably like the end of one. |
22:54 | < Derakon[work]> | Revolving floor? |
22:54 | < Derakon[work]> | mailto:vornicus@eldergods.com Subject: subscribe vorn-newsletter |
22:55 | < Vornicus> | Theater. |
22:56 | < Derakon[work]> | Ah hah. |
22:56 | < Vornicus> | We made a 16-foot-wide revolving floor piece. |
22:58 | < SmithKurosaki> | o.0 |
22:58 | < Derakon[work]> | SK: enables fast scene changes. |
22:59 | < Vornicus> | And very drastic ones. |
23:12 | < SmithKurosaki> | shiny |
23:12 | < SmithKurosaki> | What game is that? |
23:12 | < Vornicus> | What is? |
23:14 | < SmithKurosaki> | the floor thing |
23:14 | < Vornicus> | No game. Theater. |
23:14 | < Vornicus> | Stage design. |
23:15 | < SmithKurosaki> | sweet |
23:17 | < SmithKurosaki> | http://www.cracked.com/blog/using-windows-7-may-lead-to-murder |
23:21 | < Rhamphoryncus> | "Although performance has improved since Vista" |
23:25 | < TheWatcher> | (something that could be achieved by offloading most of the legwork to two arthritic hamsters...) |
23:31 | < McMartin> | (It has, though; looks like Vista, so far is responding like XP) |
--- Log closed Thu Oct 22 00:00:08 2009 |