00:06:14 checkerboard (x,y) 00:06:14 | even x = if even y then white else black 00:06:16 | odd x = if even y then black else white 00:06:18 haskell is pretty. 00:06:29 so ugly 00:06:32 disgusting code 00:06:36 lament: how is that ugly 00:06:39 that's lovely code 00:06:45 the dimensionality is hard-coded right in 00:06:50 wat 00:06:59 lament: whaddya mean 00:07:00 Haskel is pig disgusting 00:07:04 Monad is murderer 00:07:06 makes me puke 00:07:11 lament: wat 00:07:14 Slereah: lol 00:07:27 zuff: it's a 2d checkerboard, and it's dimensionality is actually part of the program logic 00:07:34 dimensionality? 00:07:42 the fact it's 2d 00:07:44 yes 00:07:45 ah. 00:07:48 well, so? 00:07:54 it's a 2d checkerboard 00:07:57 in a library for 2d images. 00:07:57 zuff: that's lack of modularity 00:08:03 if you have something like 00:08:04 you're all bonkers 00:08:08 lament's point is you can't really generalize it. 00:08:14 well duh 00:08:15 of course you can't 00:08:16 struct point { int x, y } 00:08:19 then that's 2d 00:08:23 but at least it's easy to add z 00:08:33 and adjust whatever formulas 00:08:59 but in your scenario the dimensionality is stuck right into "if even y then white else black" in a non-trivial way! 00:09:20 well yeah but that's not a haskell issue on the other hand 00:09:39 i just wanted to insult zuff's code 00:09:39 you could (even x+y) it, and get over that 00:09:42 ah 00:09:44 to which i have no real complaints 00:09:48 thought you wanted to insult haskell. 00:09:54 but yeah, even(x+y) is way better 00:10:07 and then even . sum 00:10:08 well, you can't even use even/odd on a Double 00:10:14 as I have just discovered. 00:10:23 checkerboard (x,y) = if even(x+y) then white else black 00:10:27 well yes 00:10:42 (even . sum) ? white : black 00:10:47 ugh 00:10:49 checkerboard :: ImageC 00:10:49 checkerboard (x,y) 00:10:50 | even (x+y) = white 00:10:52 | otherwise = black 00:11:07 now to figure out why you can't uyse even/odd on floats/doubles :D 00:11:14 well I guess I could just round it 00:11:17 because haskell sucks 00:11:25 so does your mom 00:11:30 zuff: why could you? 00:11:46 well why couldn't you 00:11:46 even with modulus 00:11:56 even with modulus defined for doubles, even doesn't really make that much sense 00:12:08 modulus SHOULD be defined for doubles 00:12:11 well i guess there's an obvious definition 00:12:14 and i ranted in #haskell for days about that 00:12:17 lament: naturally. 00:12:26 but even/odd clearly makes no sense for them 00:12:29 i actually haskelled assume does that already 00:12:38 lament: stop stealing my thoughts. 00:12:44 welp 00:12:45 checkerboard :: ImageC 00:12:46 checkerboard (x,y) 00:12:48 | even (floor x + floor y) = white 00:12:50 | otherwise = black 00:12:52 still pretty as hell 00:13:35 what type is white? 00:13:43 Colour 00:13:45 type Colour = (Int,Int,Int) 00:13:49 r,g,b 00:13:56 type Image a = Point -> a 00:13:56 type ImageC = Image Colour 00:13:58 type Point = (Double,Double) 00:14:00 type Colour = (Int,Int,Int) 00:14:22 looks okay to me 00:14:53 and yeah you should round the coords if you're using it like that 00:15:13 but you shouldn't think that's the obvious definition for even for doubles. 00:15:20 well yea 00:15:21 still 00:15:53 i do agree even should be defined for doubles *somehow*, oklotalk defines everything, and it's pretty much perfect so haskell probably should do. 00:16:05 *should too 00:16:07 you mean 00:16:24 all values should be of one type, and all functions should be total? 00:16:31 lament: yes! 00:16:39 and all possible function names should be defined? 00:16:44 yes! 00:16:47 hm 00:16:52 consider using Jot :) 00:16:58 and all possible program codes should be parseable. 00:17:03 yeah, Jot 00:17:08 also oklotalk 00:17:12 isn't jot stack-based 00:17:14 that's cheating 00:17:30 joy is stack-based 00:17:37 is "}" valid in jot? of course i'm making an additional guess here 00:17:45 jot only has two operations, 0 and 1 00:17:46 or... 00:17:49 OH 00:17:51 that jot :P 00:18:06 render :: Integer -> Integer -> ImageC -> [[Colour]] 00:18:06 render w h img = map (\x -> map (img . (,) x) [0..h']) [0..w'] 00:18:08 where h' = fromInteger h 00:18:10 w' = fromInteger w 00:18:12 soooooo prettyyyyyyy 00:18:29 yeah sorry i wasn't thinking esolangs, because in esolangs it isn't really much to ask to have everything defined 00:18:34 hmm 00:18:36 that fails a bit 00:18:39 you can just use the brainfuck card 00:18:43 it's n+1 00:18:49 i should get back to reading 00:19:03 render :: Integer -> Integer -> ImageC -> [[Colour]] 00:19:03 render w h img = map (\x -> map (img . (,) x) [0..h']) [0..w'] 00:19:04 where h' = fromInteger h - 1 00:19:06 w' = fromInteger w - 1 00:19:13 it would probably look much more readable as a list comprehension 00:19:21 it looks fine to me 00:19:22 but maybe 00:19:27 but damn, that's the first pretty haskell I've written 00:19:30 it's just >clicked< 00:19:40 Integer -> Integer, here you are setting an arbitrary currying order for w and h, HOW IS THAT GOOD CODING? 00:19:44 * zuff writes scale :: Float -> Image a -> Image a 00:19:46 oklofok: lol 00:19:57 wait 00:20:01 I don't even need an ImageC requirement ther 00:20:10 render :: Integer -> Integer -> Image a -> [[a]] 00:20:10 render w h img = map (\x -> map (img . (,) x) [0..h']) [0..w'] 00:20:12 where h' = fromInteger h - 1 00:20:14 w' = fromInteger w - 1 00:20:35 oklofok: yeah, and in another function he used a tuple for the same thing 00:20:51 no 00:20:52 i didn't 00:20:55 (x,y) is a point 00:21:00 width and height are rendering details 00:21:14 you should be able to pass around points 00:21:21 but apssing around a width/height combination is useless it's just for rendering 00:21:34 lament: yes, my second point, but i assumed you'd fill that out for me 00:21:46 zuff: how often do you pass around just a width or just a height? 00:21:57 maybe you need a RenderingDetails datatype? 00:22:05 :D 00:22:11 lament: just in render :P 00:22:16 i love being over-pedantic about code 00:22:27 scale :: Double -> Image a -> Image a 00:22:27 scale n img (x,y) = img (x/n, y/n) 00:22:29 wow, that was trivial 00:23:02 seriously 00:23:03 that worked first try 00:23:32 hmm 00:23:36 should I make colours doubles too? :P 00:23:37 Naw. 00:24:01 multiplication is pretty hard to get correct given a multiplication primitive, yes :P 00:24:21 lol 00:24:56 if you're working on reals, scaling is trivial. it's only algorithmically interesting when working with discrete images. 00:25:11 if you're working with reals, you get scaling straight from the definition of scaling 00:25:12 which you did. 00:25:17 well yeah 00:25:21 however 00:25:23 my rendering is discrete 00:25:26 i should read, i have an exam in 6.5 hours 00:25:28 but it just calls as N.0 00:25:43 and i haven't read about my hintikka sets yet! 00:25:55 hmm 00:25:59 oklofok: do you know how to write out bmps? 00:26:08 you mean the format? 00:26:13 ya 00:26:24 header, list of bgr iirc 00:26:34 just byte after another 00:27:20 header is the standard microsoft stupid_blah_here, sizes and file lengths, just look it up 00:27:31 helfpul 00:27:39 it is very simple 00:27:46 it's so easy you don't need help, is my point 00:27:47 not as simple as TGA, but simple 00:28:00 oh, tga is simpler? 00:28:09 * zuff looks up tga instead 00:28:23 i don't even know tga :) 00:28:44 easier for writing to, anyway, IIRC 00:28:54 ok, a tutorial that isn't a spec? :D 00:30:50 for bmp you don't need a tutorial 00:31:04 oklofok: well explain it 00:31:32 i don't remember, i reverse-engineered the format from the hex, it's just a few bytes of header, only things that are dynamic are (w,h), and file length 00:31:52 i was like your age back then, so show some balls :P 00:31:59 * oklofok leaves quickly! 00:32:16 and also there is a restriction that the rows of the bitmap must be padded to be 4-byte aligned 00:32:38 this i didn't know, but yeah figures 01:51:31 -!- KingOfKarlsruhe has quit (Remote closed the connection). 02:01:37 -!- psygnisfive has joined. 02:09:09 -!- jix has quit ("..."). 02:22:10 renderTGA "blah.tga" (0,0) (256,256) (256,256) . supersample (0.25,0.25) . magnify 16 . rotateImage 0.4 origin $ checkerboard red white 02:22:12 fun :) 02:22:26 (kind of slow here, though) 03:24:46 -!- Asztal has quit (Read error: 110 (Connection timed out)). 05:50:46 -!- Sgeo has quit ("Ex-Chat"). 07:48:14 -!- oerjan has joined. 07:54:49 Don't worry it's mostly perfectly innocent apart from the one bit which is all of it. 07:54:54 how reassuring. 07:56:53 -!- Judofyr has joined. 07:57:03 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)). 07:57:46 -!- Judofyr has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:04:14 -!- psygnisfive has quit (Remote closed the connection). 08:04:36 -!- psygnisfive has joined. 08:10:29 -!- Judofyr has quit. 09:05:51 -!- GreaseMonkey has quit ("You only need one wheel. Bikers are just greedy."). 09:28:39 -!- oerjan has quit ("leaving"). 12:50:18 -!- zuff has changed nick to ehird. 12:56:56 12:51 psygnisfive has joined (n=psygnisf@c-71-57-164-119.hsd1.fl.comcast.net) 12:56:56 12:51 Asztal: renderTGA "blah.tga" (0,0) (256,256) (256,256) . supersample (0.25,0.25) . magnify 16 . rotateImage 0.4 origin $ checkerboard red white 12:56:58 12:51 Asztal: fun :) 12:57:00 12:51 Asztal: (kind of slow here, though) 12:57:11 What is it with asztal and MizardX stealing everyone else's ideas? :P 13:42:28 graph :: [Integer] -> ImageC 13:42:28 graph lst (x,y) | (lst `genericIndex` floor x) > floor y = black 13:42:29 | otherwise = white 13:42:31 graph, but the wrong way around 13:42:37 (vertiaclly) 13:53:47 -!- Sgeo has joined. 14:33:25 -!- jix has joined. 14:35:29 -!- Judofyr has joined. 14:46:19 -!- Asztal has joined. 14:48:17 hey, I wasn't stealing it, I was borrowing it 14:49:43 Yeah, but you both then take the idea and finish it while the creator sleeps. :-P 14:50:00 I'm impatient :D 14:50:31 * ehird rm Image.hs 14:50:33 you could build a raytracer out of this quite easily, too :) 15:05:34 -!- Hiato has joined. 15:06:18 Is anyone here willing to quickly aid someone (me) struggling with a bit of horrible C++ (that is, all C++ is horrible) 15:07:23 Why C++? Why god why? :P 15:08:46 Indeed - irrlicht is why, and I'm useless with Ogre, so my options are limited 15:08:53 I'm already barely able to hack some C. 15:09:27 Why doth the heavans punish us so? 15:12:50 -!- Hiato has quit ("Leaving."). 15:14:57 -!- Sgeo has quit (Read error: 110 (Connection timed out)). 15:44:06 -!- Slereah has quit. 16:05:51 -!- Judofyr has quit (Read error: 110 (Connection timed out)). 16:15:01 -!- Slereah_ has joined. 16:43:21 Deewiant, there? 16:43:33 aye 16:43:35 I was going to implement DATE, but I'm unsure of the rcs specs 16:43:40 unsurprising 16:43:48 Mycology tests it, no? 16:43:58 Deewiant, indeed and you implement it 16:44:04 it's more precise than the specs, unless Mike changed the specs 16:44:19 I wouldn't be surprised if he didn't amend them 16:44:28 hm 16:44:31 more precise how? 16:45:03 tests some things which Mike accepted (read: I made Mike accept) as correct but weren't explicitly in the spec 16:45:14 heh 16:45:33 jd == julian day it says 16:45:39 but that doesn't tell me much 16:45:45 how is it defined 16:45:48 wikipedia 16:46:21 "The Julian date (JD) is the interval of time in days and fractions of a day, since January 1, 4713 BC Greenwich noon, Julian proleptic calendar.[1]" 16:46:21 ok 16:46:27 so it pushes in FPDP format? 16:46:30 since it says fraction 16:46:33 Deewiant: "So if I edit the Wikipedia page, the definition changes?" :p 16:46:41 fizzie: yeah, exactly 16:46:50 AnMaster: nah, I can't remember exactly 16:47:02 probably in days so you ignore the fraction 16:47:03 If it says "julian day", it's probably just the day number without the fractional part. 16:47:29 Deewiant, damn you use tango instead of calculating it yourself 16:47:43 if you have to consider leap years this seems painful in plain C 16:48:04 I did about half of it myself and then realized that I can just use tango directly 16:48:25 duh 16:48:45 :/ 16:48:51 Wikipedia has a calculation formula too. 16:49:00 If you trust it! I see no citations there! 16:49:05 heh 16:49:12 I think it gave a wrong answer which is why I turned to tango 16:49:13 we will see if mycology agrees 16:49:20 I probably misimplemented it though 16:49:25 too many variables 16:52:05 assuming roughly 365 days / year... (4713 + 2008) * 365... probably ~ 2453000 or so 16:52:18 yes I know that is way off, like leap years, no year zero, and so on 16:52:52 seems like a painful date representation for everyday use 16:54:07 -!- jix has quit ("..."). 16:54:52 It's certainly nicer to calculate with than Gregorian dates; the numbers are just too big to be human-friendly. 16:57:21 Also it has a huge drawback in that the nice round-number celebrations will not occur during my lifetime; 2.4*10^6 was in 1858, and 2.5*10^6 will be in 2132. Well, I guess I can't be sure about that latter one, but I think I'll be a bit surprised if I'm still alive then. 16:59:56 You probably won't be surprised then, if you are; you would be now, if you found out that you will be 17:00:33 Let's hope I remember to comment about it on the channel in 2132. 17:01:06 At least the Unix time counts seconds, so there are more excuses to celebrate. 1.25*10^9 is next August, for example. 17:03:49 fizzie, hehe 17:03:57 anyway you should celebrate powers of two 17:03:59 not of 10 17:04:03 for unix date 17:06:25 The 2^30th went already, and there's still some time before the year 2038 problem. Still, I might even be alive for that one, that's only 30 years to go. 17:09:02 I will definitely be alive for that one. :P 17:09:27 And most likely using a 64-bit computer and OS, you know, like os x 10.6. :P 17:09:34 Not if someone KILLS YOU. Not that I'm planning anything. 17:09:42 tru 17:09:44 throw new Object; 17:09:46 interesting decipher 17:09:48 err 17:09:49 Deewiant, ^ 17:09:52 sorry for mistab 17:10:02 throw new Knife(destination = AnMaster); 17:10:50 yeah, what ehird said :-P 17:11:50 except Knife, k: print "it's not nice to throw knives at %s" % k.destination 17:12:27 whoa 17:12:28 python++ 17:12:28 XD 17:12:33 it's c++ and python! 17:12:33 horrid 17:12:51 `catch` \(k :: Knife) -> printf "You hit %s. He collapses, blood pouring out of the wound." 17:13:08 ehird 17:13:12 psygnisfive 17:13:20 why were you quoting my signin? 17:13:25 wat 17:13:26 The named parameter in the throw just reminded me of Python; since that's not C++. 17:14:00 12:51 psygnisfive has joined (n=psygnisf@c-71-57-164-119.hsd1.fl.comcast.net 17:14:08 o.o 17:16:34 -!- Judofyr has joined. 17:16:39 o.o 17:28:23 -!- jix has joined. 17:32:18 -!- psygnisfive has quit ("Leaving..."). 17:50:58 -!- Corun has quit ("This computer has gone to sleep"). 18:14:04 LOL KITTENS PWNS!!! 18:14:06 Discuss. 18:22:32 -!- Asztal has quit (Read error: 110 (Connection timed out)). 18:25:05 No. 18:25:07 Deewiant, hm I found some internal code in glibc that seems to solve one of the major issues 18:25:12 for generic dates 18:25:23 well license is ok so :) 18:25:39 AnMaster: have you learned haskell yet? 18:25:51 lament, xmas holidays haven't started yet 18:27:40 that's ok. You have two hours. 18:27:54 The deadline has been moved, you see. 18:28:50 lament, no 18:29:02 and I wanted to learn it for fun 18:29:08 and still want 18:32:36 I think I can recommend Real World Haskell 18:32:40 as the tutorial 18:32:50 it does seem to be good 18:33:03 (i'm just reading it myself) 18:33:09 learn you a haskell 18:33:11 end of. 18:33:15 then go on to rwh 18:33:26 lyah teaches you what haskell's about, rwh tells you how to write programs with it. 18:35:17 no 18:35:19 i mean 18:35:25 rwh starts from scratch 18:35:34 there's no need for another tutorial beforehand 18:35:34 I know it does. 18:35:41 But LYAH is a way better introductory tutorial. 18:35:50 if you're a child with ADHD. 18:35:54 which you are. 18:35:59 I don't have ADHD. 18:36:09 oh. 18:36:32 But regardless of any ridiculous cartoons to the side LYAH is nicely paced, simple but not condescending, and explains the concepts nicely. 18:36:40 real world haskell is then useful to learn how to write real programs in hs. 18:36:57 sure 18:37:14 it seems so far, though, that RWH is nicely paced, simple but not condescending, and explains the concepts nicely. 18:37:25 you already knew a lot of haskell, though. 18:37:52 also, when there are two equal options and one has badly drawn elephants, the latter one wins out. 18:38:22 Deewiant, why are there several literal � in mycology in the DATE code? 18:38:36 some sort of non-printable char 18:39:46 I don't think there are any non-printable chars, I avoid those 18:39:52 but there will be non-ASCII bytes 18:40:14 just a handy way of pushing values in the range 0-255 18:41:44 Deewiant, hm invalid in utf8 I believe 18:41:52 duh? 18:42:02 what makes you think it's UTF-8 :-P 18:42:20 and why would I be so stupid as to use UTF-8 in Befunge-98 code 18:42:28 true 18:42:31 especially in Mycology - how UTF-8 works at the Funge-Space level is UNDEF 18:42:35 but irritating when editor is set to it 18:42:42 set editor to autodetect 18:42:51 if editor can't, change editor 18:42:52 goto 10 18:43:00 Deewiant, well an interpreter could potentially interpret any non-ascii as utf8 then 18:43:12 or whatever 18:43:20 what 18:43:29 The Funge character set is 'display-independent.' That is to say, character #417 may look like a squiggle on system Foo and a happy face on system Bar, but the meaning is always the same to Funge, 'character #417', regardless of what it looks like. 18:43:46 it's not UNDEF, brain fart 18:43:56 Deewiant, well you said it was 18:44:02 indeed it isn't 18:44:02 it's not UNDEF, brain fart 18:46:33 Well, it still doesn't sound portable to use characters as "a handy way of pushing values", especially in the >127 range, if no-one says you need to load the program as bytes. 18:46:46 It does say, which is my point. 18:47:56 It *doesn't* say an interpreter couldn't read the input as UTF-8, still. 18:49:03 I think it's a matter of how literally you take the spec and how portable you want to be 18:49:09 It just says the source files are made of characters, and characters have some associated numbers. 18:50:07 And it especially allows for having characters greater than 255; to me it doesn't sound too far-fetched to read in UTF-8 encoded source files. 18:50:09 It also says that on systems where characters are single-byte, the values are in the range 0-255 18:50:28 And the way I see it characters are single-byte on all modern systems; UTF-8 is just an encoding on top of that 18:50:44 The fundamental unit of storage on modern OSs is the byte (besides the bit) 18:50:58 It could still be argued that "characters" are stored in multiple (a variable amount of) bytes. 18:51:59 And thus we come to how literally you want to read it and what meaning you ascribe to "system" :-) 18:52:26 Sounds like discussion I had on this channel some time ago... :-) 18:52:29 Not that I care too much. But I think some Java-based Funge-98 core I wrote for one purpose or another used the character-based IO routines (especially since the spec says source files contain "characters"), which use the platform's default encoding for actual file-reading, which most likely is UTF-8. 18:52:43 On Windows it most likely won't be UTF-8 18:53:01 It'll most likely be locale-dependent (in europe, Windows-1252) or UTF-16BE 18:53:29 s/most likely is/might well be/, if you want to nit-pick; that's just a detail. 18:53:40 -!- Asztal has joined. 18:54:22 True. I guess I was jabbing at the fact that that code will work differently on different systems, which is generally a Bad Thing 18:55:24 Some could argue it's a Good Thing that it reads character-based text files the way the user expects them to be read, though. I don't have a firm onion on this. 18:55:51 I guess it's the interpreter's user's responsibility to feed it sources in an acceptable format, anyway. 18:56:18 Yeah, I should think so. 18:57:13 And what about saving parts of funge-space? Some values are invalid as unicode codepoints, and some values exceed even what the original up-to-6-bytes UTF-8 can represent. 18:59:00 Unicode-invalid values including anything that's negative; I guess it's again rather undefined. 19:00:43 Presumably one could take as requirement that funge could dump anything funge-space might contain and can read its own dumps... 19:01:33 But "o" is defined in terms of "text files"; and anyway I don't think current interpreters make it so that 'o' followed by 'i' doesn't mess anything up. 19:03:22 Since the spec speaks of "text files", so I guess you could even map all invalid codepoints to U+FFFD REPLACEMENT CHARACTER and claim to be conforming. The FILE fingerprint operations are more sensible anyway if you want to do "binary IO", whatever that means. At least the spec there (currently, anyway) sort-of says that W/R deal with values in the [0, 255] range and strip away higher bits. 19:03:47 Oh, and I see the current spec for FILE has added a 'D' "Delete specified file" command. That wasn't there the last time I looked. 19:04:50 It was one of Mike's early additions. 19:05:33 Well, maybe it was there the last I looked, then, but it just didn't register. 19:27:13 I'm trying to write a program that will reliably thrash the memory cache so I can test how long a cache miss takes. 19:27:43 To do this, I'm allocating 128MB of memory, then stepping through a page at a time and doing nothing with it (but calling a function that the compiler can't know does nothing), then doing the same but stepping an int at a time. 19:28:00 Hypothetically, the second time around it should always be in the cache, so should almost always be faster. 19:28:03 But noooooooooo. 19:28:10 (Oh, I'm stepping 1,000,000 times either way) 19:33:42 Ah, well I'm an idiot. 19:33:49 Bump it to a billion and suddenly I'm seeing giant differences :P 19:34:40 On my Core 2 quad, a cache miss costs on average 2.705207e-08 seconds (27 nanoseconds) 19:36:19 To put that into perspective, light travels about 8 metres in that time. (Okay, so it doesn't really provide any sort of perspective; it's still nifty.) 19:37:16 Conclusions: light is slow as molasses. 19:38:13 lol 19:55:52 GregorR: You really can determine it to that many signaficant digits? 19:56:26 No, but it came consistently to something around 27nanoseconds for three runs. 19:56:37 (That is, it always rounds to 27 nanoseconds) 20:02:29 Does that test somehow preclude fist access to each cacheline from missing? 20:12:54 If time it takes to perform fetch that always misses is x and y for fetch where every nth acess misses, the miss penalty is not x - y, but n/(n-1) * (x - y), a relative error of -1/n. That's about 6% for n=16... 20:17:32 Touché. 20:35:49 Well now I'm confused. 20:36:26 I made some changes (amongst them, now the int-at-a-time loop actually just loops between [0] and [1]), and now the results I'm getting suggest that it takes only double as much time on a cache miss as a cache hit. 20:36:30 That can't be right. 20:37:29 Unless I have an absurdly massive L2 cache I'm ignoring ... 20:41:07 (And no, it's not that absurdly large :P ) 20:47:58 Maybe your processor designer has just been more clever than you. 21:22:20 -!- Asztal has quit (Read error: 110 (Connection timed out)). 21:33:43 -!- KingOfKarlsruhe has joined. 21:43:29 exec cmd "echo 'Hello world!' >> /dev/null" 21:46:30 cmd and /dev/null? 21:47:08 i'm chatting with /dev/null :) 21:57:24 -!- KingOfKarlsruhe has quit (Remote closed the connection). 22:10:02 -!- Asztal has joined. 22:44:06 -!- oerjan has joined. 23:42:15 -!- Judofyr has quit (Read error: 60 (Operation timed out)). 23:43:39 -!- olsner has quit ("Leaving"). 23:45:19 nethack is 247760 fucking lines of code? 23:45:21 holy shit. 23:49:25 note to self: re-aquaint with nethack instead of working today 23:50:01 Dewi: Hi Deewiant-- 23:50:19 I'm just Dewi 23:50:41 if you don't like that name you can be (name = "Deewiant"; name[:3] + name[3:5]) 23:51:28 oh crap they are testing me 23:51:43 * Dewi doesn't get the notation, sorry 23:51:59 python 23:51:59 :P 23:52:04 indexing from 1 or 0 ? 23:52:09 0 23:52:18 second param absolute or relative? 23:52:26 or should I say operand 23:54:02 relative 23:54:05 err 23:54:06 absolute 23:54:17 i'm relatively sure it's absolute 23:54:28 http://uncyclopedia.wikia.com/wiki/Objectivist_C 23:54:40 but i can't absolutely rule out relative either 23:56:42 A = A >:| 23:57:03 Dude. 23:57:15 I had the idea for an objectivist language before! 23:57:17 THEFT! 23:57:24 (cur) (last) 00:53, 21 December 2005 IMed (Talk | contribs) (New article) 23:57:34 only change since: http://uncyclopedia.wikia.com/index.php?title=Objectivist_C&diff=1907626&oldid=447901 23:57:38 wait... 23:57:40 .wikia.com? 23:57:42 fuck wikia 23:57:44 they take over everything 23:57:57 they have to fucking put their fucking grubby hands on every wiki 23:58:05 first it's hosting, then it's a bunch of ads, a new theme, let's take over your domain 23:58:07 pieces of shit. 23:59:58 My hair forms haircicles.