←2009-03-02 2009-03-03 2009-03-04→ ↑2009 ↑all
00:04:52 -!- evenant has quit.
00:11:59 <ehird> 11:25:59 <ais523> but autoconf noticed that youre system didn't need that, and commented out the line
00:12:00 <ehird> 11:26:05 <ais523> s/youre/you're/
00:12:51 <Sgeo> Four words four words!
00:14:45 <oklopol> :D
00:14:52 <Sgeo> oklopol, OOTS fan?
00:15:09 <oklopol> object oriented transsexuality
00:15:11 <oklopol> yes
00:15:33 <oklopol> but err is it some rpg kinda thing?
00:15:51 <oklopol> i think i've heard my friends talk about something very close to that
00:16:19 <oklopol> ah order of the stick
00:16:24 <oklopol> do you mean the comic or the game?
00:16:36 <oklopol> probably the first one. i've read very little of it.
00:18:01 <Sgeo> Comic
00:18:40 <oklopol> i've read a few random ones, it's not really for me.
00:20:55 <oklopol> i don't really follow any comics, i just occasionally accidentally read whole comics because i just keep pressing next until they run out
00:26:06 <oklopol> why isn't my body symmetric
00:31:54 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
00:33:01 -!- oklopol has joined.
00:44:20 -!- Judofyr_ has joined.
00:49:22 -!- BeholdMyGlory has quit (Remote closed the connection).
00:50:42 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
01:39:45 -!- Sgeo_ has joined.
01:39:45 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
02:47:35 -!- poiuy_qwert has joined.
03:46:32 <kerlo> Hi, friendly programmers. How would I turn the Haskell expression (all (`elem` ['a'..'z'])) into Python?
04:19:58 <poiuy_qwert> i know python, if you explain what that does i can give you the equivalent
04:22:41 -!- bsmntbombdood has quit (Read error: 113 (No route to host)).
04:22:57 <poiuy_qwert> kerlo
04:23:38 <kerlo> That checks that all characters in a string are not before 'a' and not after 'z'.
04:23:55 <kerlo> s/not/neither/; s/and not/nor/
04:24:11 <Slereah> What does it return, a boolean?
04:24:37 <Slereah> In python that would be stuff not in ['a'..'z'], IIRC
04:24:45 <kerlo> A boolean, yes.
04:24:53 <Slereah> Just look up the "in" operator in python
04:25:16 <kerlo> I take it ['a'..'z'] iz the same thing as 'abcdefghijklmnopqrstuvwxyz'.
04:25:48 -!- bsmntbombdood has joined.
04:25:57 <Slereah> Yes, though I forgot the exact syntax.
04:26:01 <Slereah> It's been a while
04:27:14 <poiuy_qwert> [c for c in yourString if ord(c) in "acdefghijklmopqrstuvwyz"]
04:27:26 <Slereah> wat
04:27:35 <kerlo> string.lowercase, I guess.
04:27:37 <poiuy_qwert> sorry
04:28:02 <poiuy_qwert> if yourString == ''.join([c for c in yourString if ord(c) in "acdefghijklmopqrstuvwyz"])
04:28:41 <kerlo> I'm not filtering out all non-lowercase-letter characters...
04:28:51 <poiuy_qwert> good point
04:29:21 <kerlo> I refuse to use a language other than Python!
04:29:36 <Slereah> Then totally use not in
04:29:40 <kerlo> I don't really know anything other than Python and Haskell, and the Glasgow Haskell Compiler doesn't work where I want it to.
04:29:47 <kerlo> Oh, you said not in.
04:30:18 <kerlo> >>> 'foo' not in string.lowercase
04:30:19 <kerlo> True
04:30:23 <poiuy_qwert> import re; isonlyletters = re.compile('[^a-zA-Z]'); if isonlyletters.match(yourString):
04:30:32 <kerlo> That comes across as wrong.
04:30:48 <Slereah> The operator not in is defined to have the inverse true value of in.
04:31:01 <kerlo> Well, then, not in isn't helping.
04:31:01 <Slereah> The operators in and not in test for collection membership. x in s evaluates to true if x is a member of the collection s, and false otherwise
04:31:17 <Slereah> Is it not?
04:31:27 <kerlo> Using regexes is kind of ugly, but oh well.
04:32:03 <kerlo> import re; nice = re.compile('[a-z]{2-8}'); print nice.match(yourString)
04:32:17 <kerlo> Will that be True if and only if yourString is 2-8 letters a-z?
04:32:53 <poiuy_qwert> yeah, but not including A-Z
04:33:01 <kerlo> You know what? I'm just going to do something else entirely. :-P
04:33:10 <poiuy_qwert> you need to add re.I as second parameter or add A-Z in the [] too
04:33:13 <kerlo> Attempt to do everything; if some exception is thrown, undo everything.
04:34:14 <kerlo> Sound like a plan?
04:34:37 <poiuy_qwert> go ahaid
04:34:47 <kerlo> I mean, I'm going to check for failure anyway.
05:12:29 -!- Sgeo_ has quit ("Leaving").
05:19:34 -!- GreaseMonkey has joined.
07:55:08 -!- tombom has joined.
07:56:14 -!- tombom_ has joined.
07:56:14 -!- tombom_ has quit (Remote closed the connection).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:13:16 -!- Jophish has joined.
08:47:24 -!- Jophish has quit (Connection timed out).
09:09:13 -!- GreaseMonkey has quit ("Client Excited").
09:28:34 -!- poiuy_qwert has quit (Remote closed the connection).
09:41:42 -!- tombom has quit (Read error: 104 (Connection reset by peer)).
09:41:45 -!- tombom_ has joined.
09:55:02 -!- tombom_ has quit (Remote closed the connection).
09:55:05 -!- tombom has joined.
10:02:53 <fizzie> A rather unusual job: http://www.f-secure.com/weblog/archives/00001618.html
10:03:13 <fizzie> Note how altruistic they are: "We also do quite a bit of manual research. We *suffer* so your kids don't."
10:13:49 <oklopol> :P
11:15:28 <oklopol> <nooga> have you seen the photo of the ultimate nerd? <<< no, i haven't
11:17:16 <oklopol> <Keymaker> if someone knows any good befunge interpreter <<< i hear this cfunge thing is pretty cool
11:25:44 -!- ais523 has joined.
11:51:06 <AnMaster> oklopol, thanks
11:52:43 <AnMaster> ais523, hi
11:53:20 <ais523> hi
11:53:22 <AnMaster> question: what is the exact issue with threaded intercal and external C code
11:53:32 <AnMaster> I might have an idea how to solve it
11:53:41 <AnMaster> but it depends very much on what the exact issue is
11:54:17 <ais523> AnMaster: the problem is that threaded intercal relies on program flow always being inside main
11:54:29 <ais523> and it uses setjmp/longjmp to record where in main() it's got to
11:54:36 <AnMaster> ais523, hm... but surely it will sometimes call stuff like putchar or printf?
11:54:48 <ais523> yep
11:54:54 <ais523> but that's inside a statement, and statements are atomic
11:54:58 <ais523> between statements it's always in main()
11:55:05 <ais523> within a statement it can call whatever it likes
11:55:25 <AnMaster> ais523, would it be possible to mark it to always interact with the first main thread or something like that?
11:55:31 <AnMaster> and other threads being pure intercal
11:55:54 <AnMaster> ais523, considering you could have pure C threads that never return but run in the background iirc
11:56:11 <ais523> cooperative multithreading
11:56:16 <AnMaster> true
11:56:27 <AnMaster> ais523, a global interpreter lock then?
11:56:29 <AnMaster> :)
11:56:31 <AnMaster> nah
11:56:31 <ais523> and the real problem is that each thread has a separate NEXT stack
11:56:37 <ais523> which corresponds to a different call stack in C
11:56:50 <AnMaster> ais523, setcontext/getcontext?
11:56:56 <ais523> so they effectively have to be different threads, or different processes, in the C code if you're mixing threading models
11:57:00 <ais523> I do have an idea on how to solve it
11:57:04 <AnMaster> oh?
11:57:34 <AnMaster> ais523, my idea was to make it so only one intercal thread interacted with C. But maybe that won't work.
11:58:10 <AnMaster> not the way you describe the issue
11:58:16 <ais523> which would be INTERCAL thread = C process
11:58:26 <AnMaster> hm
11:58:46 <AnMaster> ais523, you mean you have OS level threads in ick?
11:58:56 <AnMaster> as the solution
11:59:00 <ais523> not at the moment, but the only way to do C + threaded INTERCAL seems to be to use them
11:59:03 <AnMaster> then how would you sync them
11:59:05 <ais523> and OS level processes, not threads
11:59:11 <AnMaster> ais523, what about setcontext/getcontext?
11:59:12 <ais523> and synched using mutexes and other such constructs
11:59:56 <AnMaster> ais523, separate processes would sure mess up IFFI.
12:00:08 <ais523> well, yes
12:00:14 <ais523> but I tend to document such restrictions
12:00:17 <AnMaster> yeah
12:00:20 <ais523> and work out insane solutions to them later
12:00:50 <AnMaster> ais523, cfunge even uses unlocked stdio when possible to reduce overhead... Definitely not thread safe
12:01:03 <ais523> thread-safe != process-safe
12:01:11 <AnMaster> nor process safe
12:01:21 <ais523> part of the reason to use processes not threads is that pretty much nothing's shared between INTERCAL threads
12:01:32 <AnMaster> oh btw cfunge now has an option to use fully buffered stdout, reducing time on mycology when not redirecting to /dev/null by about 20%
12:01:33 <ais523> only abstention status is shared
12:02:01 <AnMaster> for /dev/null about 1-2% due to also using a larger buffer
12:02:35 <AnMaster> ais523, hm what about scheduling? isn't it documented to be on a round robin basis? or is that "may change in future"?
12:03:50 <AnMaster> ais523, hm I believe cfunge could be partly made thread safe though, without locks...
12:04:18 <ais523> AnMaster: the documentation's more fun than round-robin
12:04:22 <AnMaster> 1) only funge space + a few other bits of global state are shared between funge threads...
12:04:26 <ais523> it's documented as "will not get out of synch by more than one command"
12:04:31 <AnMaster> 2) funge space could use CAS for the static area
12:04:35 <ais523> which round-robin fulfils, but which could be fulfilled in other ways too
12:04:57 <AnMaster> yeah that is messy...
12:05:26 <AnMaster> ais523, is that command == one statement?
12:05:49 <AnMaster> or some sub-statement thing?
12:06:09 <ais523> one command is meant to == one statement
12:06:11 <AnMaster> ah
12:06:22 <ais523> although WHILE messes it up quite badly, I'm not sure if I've documented that
12:07:13 <AnMaster> FILE, REFC, SOCK, SCKE and a few other would need locks btw... In core only funge space and creating/destroying threads...
12:07:19 <AnMaster> but funge threads are round robin
12:07:22 <AnMaster> so pointless
12:07:45 <AnMaster> nah, not even going to try to make cfunge thread safe
12:07:55 <AnMaster> or multi-process safe
12:08:24 <AnMaster> (well it is, doesn't use shared memory or such, but then stuff like funge space isn't shared. separate instances)
12:12:01 <AnMaster> blergh this sucks. Was profiling a program. Turns out that most time is spent in one of the functions with shortest time / call. And there are enough 1594330251 calls to it.
12:12:15 <AnMaster> + there is no simple way to make it faster...
12:12:24 <ais523> in that case, change your algorithm so it's called less
12:12:35 <ais523> that was my solution in a similar profiling situation
12:12:50 <AnMaster> ais523, called from lots of different places in the code. And large code base
12:13:05 <AnMaster> (crossfire-server)
12:16:28 <AnMaster> actually there seems to be a tiny bit of thing that could help here...
12:38:39 <oklopol> unhello.
12:38:42 <oklopol> ->
12:43:14 <fizzie> When leaving, always remember to unhello any helloes you might have said when entering a conversation, otherwise the channel might run out of resources.
12:44:02 <ais523> fizzie: what OS are you using? All modern OSs restore helloes to the common pool when a client quits on a connection to an IRC server running there...
12:44:31 <fizzie> I still think it's good manners to explicitly unhello.
12:44:54 <ais523> presumably that's why his became so popular instead, they're automatically deallocated when they go out of scope
13:00:23 <AnMaster> heh
13:01:01 <AnMaster> urgh, profiling data so large that gprof takes over 2 minutes to load it... wth
13:01:45 -!- Mony has joined.
13:02:36 <ais523> 2 minutes?
13:02:46 <ais523> when profiling Perl, it often takes 10 minutes to half an hour to process all the details
13:02:49 <Mony> plop
13:04:21 <Slereah> Hey Mona
13:04:35 <Mony> je suis pas Mona Lisa ok >_<
13:05:47 <AnMaster> ais523, really?
13:05:47 <AnMaster> wow
13:05:59 * ais523 vaguely wonders if a Mony / Slearah conversation here would be in English or French
13:06:05 <AnMaster> ais523, I would have expected it to be a lot faster
13:06:12 <Slereah> But when I say Mona, I mean Mona from 2ch.
13:06:40 -!- Asztal has quit (brown.freenode.net irc.freenode.net).
13:06:58 -!- Asztal has joined.
13:09:21 <Mony> [14:06] * ais523 vaguely wonders if a Mony / Slearah conversation here would be in English or French <-- maybe in frenglish
13:10:27 <AnMaster> hm
13:24:21 <ehird> so
13:24:26 <ais523> so what?
13:24:34 <ais523> sorry, couldn't resist
13:24:38 <ehird> three things
13:24:39 <ehird> "We *suffer* so your kids don't."
13:24:42 <ehird> excellent job.
13:24:45 <ehird> 04:29 kerlo: I don't really know anything other than Python and Haskell, and the Glasgow Haskell Compiler doesn't work where I want it to.
13:24:47 <ehird> that explains a lot.
13:24:50 <ehird> and
13:24:55 <ehird> I'm probably going to implement INTERCAL.
13:25:01 <ais523> yay at the last one
13:25:09 <ais523> the INTERCAL market could do with a new compiler to drive innovatoin
13:25:11 <ais523> *innovation
13:25:18 <Slereah> Market.
13:25:25 <Slereah> Tons of people buy INTERCAL.
13:25:28 <ais523> what version do you plan to implement first? INTERCAL-72? something custom? something compatible with one of the existing compilers?
13:25:37 <ehird> probably INTERCAL-72 with my own tweaks
13:25:44 <Slereah> What I would totally buy is the original INTERCAL compiler on punchcards.
13:25:44 <ehird> for example, I'm probably going to change the error messages a bit
13:25:49 <ehird> but the actual generated code should behave properly
13:25:54 <Slereah> I could frame it or something
13:26:01 <ehird> ais523: i have plenty of good ideas: compiler options in the filesize, for instance.
13:26:03 -!- jix has joined.
13:26:36 <ais523> ehird: filesize? that's ingenious, I was planning to put it in the last-modified time
13:26:40 <ais523> but filesize is probably more portable
13:26:51 <ehird> exactly
13:26:55 <ehird> portability is key!
13:27:11 <ehird> oh, I also want to include an INTERCAL IDE
13:27:17 <ehird> and I have a seriously perverse way of doing it
13:27:20 <ais523> I wanted to write an INTERCAL IDE, too
13:27:22 <ais523> I have plans
13:27:26 <ehird> hard on me, hard for the user
13:27:37 <ais523> involving an entirely new sort of highlighting that isn't syntax highlighting but is just as useful
13:27:47 <ais523> actually, I should implement that seriously, it might be useful for other languages too
13:27:52 <ais523> also, I was going to add unlockable content
13:28:05 <ais523> because I was trying to think "what's the most ridiculous thing I can put in an IDE", and unlockable content was it
13:28:12 <ehird> ais523: let's put it this way: the non-OS X distribution will be a qemu running linux that boots right into GNUStep and starts the ide
13:28:22 <ehird> then it communicates with your filesystem & INTERCAL with a socket
13:28:30 <ehird> (you have to manually start intercal with the interfacing program)
13:28:52 <ais523> how does it act on OS X?
13:29:00 <ais523> we can combine our ideas, they aren't incompatible so far
13:29:31 <ehird> ais523: on OS X, it acts like a windows application circa win95, ported to OS X (badly)
13:29:36 <ehird> except it was originally written for OS X
13:29:39 <ais523> ok
13:29:47 <ais523> what graphics toolset?
13:30:16 <ais523> I suggest X11 plus Athena widgets
13:30:23 <ais523> but designed in such a way it nevertheless only works on OS X
13:30:25 <ehird> ais523: I was planning on using an unholy blend of Cocoa and Carbon — Carbon so that I could make native controls behave completely unlike normal
13:30:36 <fizzie> Ooh, I like the "unlockable content in an IDE" thing. "You have to grind at the project settings dialog before you unlock version control integration."
13:30:40 <ehird> haha
13:30:49 <ehird> ais523: my plans are mostly interface-wise, so yours will blend well with mine
13:31:17 <ehird> ais523: I was planning to do the hyper-detailed status bar of files as a bunch of unfocused windows aligned below in a grid; if you move one, it snaps back, if you resize one, it snaps back, if you focus it, it focues the text
13:31:23 <ehird> if you move the file window, they tag along dozily
13:31:29 <ehird> but if you move one over another, they swap places
13:31:37 <ehird> (like a toolbar rearrangement dialog)
13:32:29 <ais523> anyway, my revolutionary highlighting idea is repetition highlighting
13:32:42 <ehird> heh, clever
13:32:54 <ehird> the agile junkies would love that (because they'd try and stop it happening)
13:33:07 <ais523> I haven't worked out all the details, but things are highlighted according to how much of the surrounded code was repeated, and how many times the locality had been repeated
13:33:18 <ais523> that would have saved me a couple of days in one project I did
13:33:32 <ais523> trying to track down a bug which was due to accidentally pasting in the first half of a table of contents twice
13:33:37 <ais523> *constants
13:34:21 <ehird> ais523: do you think people would actually use it with the silly vmware distribution? :D
13:34:30 <ais523> at least one person would
13:34:36 <ehird> you?
13:34:36 <ais523> but preferably qemu, I've got that installed already
13:34:40 <ais523> yes, me
13:34:42 <ais523> to try it out
13:34:44 <ehird> possibly qemu
13:34:47 <ehird> iirc vmware is faster
13:34:48 <ais523> but lots of other people would have a look though
13:34:50 <ehird> and also, it can share the FS
13:34:51 <ehird> without a socket
13:35:01 <ais523> actually, I suggest you just distribute it as a bootable .iso
13:35:18 <ais523> that nonetheless only boots inside a virtualiser
13:35:18 <ehird> ais523: I think it's funny when a native distribution ends up being a wrapper against an emulator of some kind
13:35:22 <ehird> for example, Google Earth on linux uses Wine
13:35:28 <ehird> (yes yes wine isn't an emulator)
13:35:56 <ais523> well, even linking against a compatibility library is amusing
13:36:06 <ehird> ais523: I was going to call it IDE: INTERCAL Destruction Enabler
13:36:17 <ehird> or perhaps Defenestration
13:36:21 <ehird> INTERCAL Defenestration Enabler
13:36:42 <ais523> I had a great name for it, but I can't remember what it was
13:39:04 <ehird> I had an excellent name for my compiler yesterday but I forgot it
13:39:26 <ais523> does it end "ick"?
13:39:33 <ehird> oh, wait
13:39:38 <ehird> I was going to call the compiler eww(1)
13:39:51 <ehird> or perhaps ugh(10
13:39:53 <ehird> *1)
13:39:54 <ais523> a break with tradition, that's an INTERCAL tradition in itself
13:39:59 <ehird> exactly!
13:40:05 <ehird> ais523: I'm going to have a custom license, just to infuriate debian
13:40:11 <ais523> surely you should break with tradition by not breaking with tradition, though?
13:40:16 <ehird> it'll be contradictory, but also have clauses on how to resolve contradictions
13:40:20 <ais523> also, make it one that's GPL-compatible at least in case I need to steal code
13:40:32 <ehird> ais523: it should basically come down to the MIT license
13:40:36 <ais523> ok
13:40:42 <ais523> actually, even better:
13:40:45 <ehird> i was also going to have an EULA
13:40:59 <ehird> which basically required the user to be insane to use the program, or at least to pretend to be insane while interacting with it
13:41:10 <ehird> but the EULA presenter would be written in intercal
13:41:13 <ais523> add a clause stating that all advertising to do with the distribution must mention and thank the Regents of the University of California, although mention that they don't endorse your code
13:41:17 <ehird> so first it'd compile the compiler, with the eula bit off
13:41:22 <ehird> which will only compile the eula
13:41:26 <ehird> it'll compile the eula, run it
13:41:26 <ais523> also, I'd just reject the EULA
13:41:29 <ais523> and use the code anyway
13:41:31 <ehird> then the eula will flip the bit on the compiler
13:41:42 <ehird> ais523: I'd make sure it doesn't actually impose any obligations
13:41:46 <ehird> also, you'd have to manually hex edit the file
13:41:49 <ais523> it will presumably be open-source, I should be able to edit out the EULA
13:41:51 <ehird> and find out which bit to change
13:42:36 <ais523> why would that require hex-editing, anyway?
13:42:39 <AnMaster> ehird, why would qemu be needed for this IDE btw?
13:42:43 <ais523> besides, most EULAs can be modified using strings
13:42:56 <ehird> AnMaster: because it'd require gnustep, and also modify stuff in /etc and the like
13:43:16 <AnMaster> very insane and not really in an intercal-y way
13:43:20 <AnMaster> intercaly*
13:43:32 <ais523> AnMaster: anything sufficiently different from expectations is intercally
13:43:36 <AnMaster> hm
13:43:43 <ais523> people are starting to form certain expectations about INTERCAL, we need to shock them out of it
13:43:43 <ehird> requiring qemu to run an IDE that looks like a windows 95 application ported to OS X ported to GNUStep sounds sufficiently intercal to me
13:43:45 <ehird> in a modern way, that is
13:43:54 <ehird> it's applying the principles of INTERCAL to a modern age.
13:43:56 <ehird> or something.
13:44:13 <AnMaster> ehird, that is too post-modern
13:44:25 <AnMaster> oooh. post-intercal?
13:44:35 <ehird> no, post-modern would be the compiler starting qemu, opening the IDE, which runs a preloader, and then opens vi on the host
13:45:45 <ehird> ais523: how do you think an INTERCAL repl would work?
13:46:02 <ais523> each line you write is appended to a program that accumulates lines
13:46:10 <ehird> that's just boring
13:46:17 <ais523> then it runs the whole thing, repeating input that you gave on previous runs, and not printing output that it printed on previous runs
13:46:27 <ais523> so you can do a COME FROM or whatever and modify what you wrote on previous lines of the REPL
13:46:34 <ais523> it sounds boring, but it drives me mad thinking about the implications
13:47:32 <ais523> the best bits of INTERCAL are the bits that look innocent
13:47:51 <ehird> anyway, my plan is to announce the new compiler's first working release to alt.lang.intercal on april 2nd, having never talked about it outside of here previously
13:47:57 <ehird> "just when you thought the releases were over..."
13:48:09 <ais523> sounds good, I'll try to keep it secret in the meantime
13:48:31 <ehird> I wonder if anyone else wrote an INTERCAL compiler while being unable to code INTERCAL?
13:48:36 <ehird> actually, probably most of them
13:48:41 <ehird> certainly the princeton one
13:48:50 <ais523> are you planning to write a compiler or an interp?
13:48:56 <ais523> and at least the princeton people wrote syslib.i
13:48:59 <ehird> ais523: neo-interpilerism
13:49:08 <ais523> it had a couple of bugs, but they at least tried
13:49:44 <ehird> what does the clc in clcintercal stand for?
13:49:45 <ehird> the author?
13:49:51 <ais523> yep, it's his initials
13:50:29 <ehird> maybe i'll call mine CLWNPA
13:51:16 <ehird> oh, I also intend to have an object system based on Conscientious objectors
13:53:04 <ehird> how does that work? Beats me.
13:54:25 <ehird> Huh.
13:54:25 <ehird> http://www.catb.org/~esr/intercal/nelson.html
13:54:33 <ehird> Ted Nelson, the Xanadu kook, comments on COME FORM.
14:03:25 -!- M0ny has joined.
14:04:48 <ehird> I think I'll have an Evil Wrangler.
14:04:55 <ehird> Instead of ghc's Evil Mangler.
14:05:05 <ehird> It will be written in Illiterate Perl, which is Perl with the keywords changed to chavspeak.
14:05:16 <ehird> The Illiterate->Regular Perl translator will be written in a new variant of Literate Perl.
14:05:26 <ehird> So you need to translate the translator so you can translate the wrangler.
14:05:29 <ehird> Ahem. Xzibit?
14:07:06 <ehird> Oh look, qt 4.5 is out.
14:07:22 <ehird> "The latest version of Webkit is now integrated with the toolkit"
14:07:23 <ehird> Nice.
14:08:23 <ehird> http://tinyarro.ws/ <- This is stupid, IDN is flaky and a lot of software will explode on contact with the unicode.
14:09:06 <ais523> I thought the point of it was so you could make software explode on contact with unicode
14:09:14 <ehird> no, it's meant to be serious
14:09:20 <ehird> also, good freaking luck linking to that IRL
14:09:24 <ehird> which is a major use for tiny urls
14:09:27 <ais523> yes
14:09:47 <ais523> they mentioned getting around the Twitter byte limit, but that doesn't work, it's a byte limit not a character limit...
14:10:04 <ehird> yeah, twitter is written in Ruby, and they expect unicode awareness? :P
14:10:24 <ehird> it's not hard to get a one byte domain if you really want too, per previous discussions here
14:10:26 <ais523> is Ruby Unicode-aware?
14:10:41 <ehird> ais523: ruby 1.9 can do unicode, before that: nope.
14:10:50 <ehird> well, there was half-baked hacky support for it, but it broke most things.
14:11:07 <ehird> ais523: it had excellent SIJS support, though
14:11:26 <ehird> (the main reason for no unicode is basically that all the users were japanese for the majority of its lifetime)
14:12:34 <ehird> ais523: hey, a link to TAEB on proggit!
14:12:41 <ais523> yes, I know
14:12:50 <ais523> that's what persuaded paxed to finally fix the exploit
14:12:59 <ais523> although he's keeping the nature of the fix secret for the time being
14:13:08 <ais523> it's not actually about TAEB itself, just the article was posted on the TAEB blog
14:13:26 <ehird> do nethack devs get some sort of perverse enjoyment out of secrecy?
14:13:40 <ais523> probably not
14:13:48 <ais523> but we suspect it's a security-through-obscurity fix
14:14:03 <ehird> lawl.
14:14:31 <ehird> "You can verify this by typing "nethack" into two separate terminals, then quickly hitting enter in each"
14:14:42 <ehird> or, y'know, spawn two `screen`s with nethack in simultaneously via the shell
14:14:45 <ehird> :P
14:14:56 <ehird> instead of trying to perfect your 1337 alt-tab-enter skillz
14:15:41 <ehird> "paxed, one of the admins of nethack.alt.org, patched nethack to use a truly random seed so that this specific exploit can no longer be used on that server."
14:15:44 <ehird> please say hotbits
14:17:22 <ais523> actually, the huge hoohah was that it was patched to use a seed from /dev/urandom, but it was cracked anyway
14:17:32 <ais523> there are people brute-forcing the seed from the random numbers observed in-game
14:17:32 <ehird> hahaha
14:17:58 <ais523> apparently that's the exploit that paxed recently fixed, nobody's sure how yet
14:19:02 <ehird> ais523: funny thing:
14:19:07 <ehird> twitter's 140 byte limit comes from SMS
14:19:16 <ehird> do you think you can enter these links over SMS? :P
14:19:22 <ehird> pretty silly overall
14:19:31 <ais523> I have no idea how to type unicode on a mobile phone
14:19:40 <ais523> apart from the characters that are on the iterated-through lits
14:19:42 <ais523> *lists
14:19:46 <ehird> you can't
14:19:48 <ais523> I don't particularly care to try, either
14:19:50 <ehird> well, on a regular phone
14:19:59 <ehird> on an iphone you could probably hack up something to do it
14:20:04 <ehird> or any other programmable phone
14:21:51 -!- Mony has quit (Read error: 110 (Connection timed out)).
14:22:59 -!- M0ny has changed nick to Mony.
14:27:37 <ais523> re the topic: is GLAGOLITIC CAPITAL LETTER SPIDERY HA actually in Unicode?
14:27:39 <ais523> it isn't in my font
14:27:41 <ehird> yep
14:27:44 <ehird> here's what it looks like:
14:27:54 <ehird> http://benfry.com/wp/wp-content/uploads/2008/05/spidery-170x205.png
14:28:03 <ehird> as you can tell, it is a spidery creature that laughs at you.
14:29:55 <ehird> hmm, starting an intercal compiler is hard
14:30:02 <ehird> all of the standard test programs are implementation specific...
14:30:21 <ais523> syslib.i is a standard test program and not implementation specific
14:30:41 <ais523> but then, you need some way to drive it to run
14:30:44 <ehird> but it doesn't -do- anything that you can perceive :P
14:30:47 <ais523> what do you mean by standard test programs, anyway?
14:30:55 <ehird> things like hello world, cat, etc
14:31:02 <ais523> pit/tests in C-INTERCAL has quite a few test programs, many of which aren't implementation-specific
14:31:04 <ehird> basic trivial programs that you make work with your implementation as a first step
14:31:20 <ais523> the reason that things like hello world and cat are specific is that you need extensions to INTERCAL-72 just to be able to write them
14:31:30 <ehird> yes
14:35:03 <ais523> what do you plan to ignorret as?
14:35:17 <ais523> I'd love an INTERCAL compiler that somehow manages to find a legit reason to return 42, or something
14:35:21 * ehird scurries to find out what ignorret is <_<
14:35:49 <ais523> wow, the first Google hit is acutally relevant
14:35:56 <ehird> yes, but useless
14:36:03 <ais523> and none of the others are relevant
14:36:09 <ais523> basically, ignorret's a simple INTERCAL test program
14:36:12 * ehird downloads ick
14:36:17 <ais523> that manages to give a different result on each of the main implementatinos
14:36:20 <ais523> *implementations
14:36:20 <ehird> ah
14:36:30 <ehird> where is it?
14:36:40 <ais523> pit/tests/ignorret.i
14:36:50 <ais523> see, the first google result /wasn't/ entirely useless
14:36:56 <ehird> :P
14:37:20 <ehird> ais523: I stare at blank incomprehension at ignorret.{i,doc}. I'm gonna have a hard time, aren't I?
14:37:31 <ais523> yes
14:38:16 <ais523> that particular interaction was never defined in INTERCAL-72
14:38:24 <ais523> so reading the docs won't help either
14:38:29 <ehird> Heck, I'd be happy to understand the individual parts.
14:38:34 <ais523> presumably, this is why all the major interps ended up returning different answers
14:38:49 <ais523> anyway, the first line should be pretty self-explanatory
14:38:58 <ais523> as should the third, and the sixth
14:39:01 <ehird> Yes, if I knew what IGNORE and RETRIEVE were.
14:39:11 <ehird> STASH is that weird stack thing, right?
14:39:12 <ais523> IGNORE makes a variable read-only
14:39:22 <ais523> as in, writes to it silently fail
14:39:33 <ais523> STASH and RETRIEVE push and pop a variable on its own stack
14:39:42 <ais523> each variable has a stash stack, STASH pushes it and RETRIEVE pops it
14:40:03 <ais523> the point of contention is what happens to the read-only status when the stack of the variable it refers to is pushed or popped
14:40:04 <ehird> okay, so what is .1 after DO STASH .1?
14:40:10 <ais523> it's a variable name
14:40:16 <ehird> what is its value, I mean
14:40:39 <ais523> 1
14:40:46 <ehird> ah, wait
14:40:47 <ehird> ais523: so
14:40:48 <ais523> STASH doesn't modify a variable's value
14:40:53 <ehird> .1 = {1}, stack = {}
14:40:54 <ehird> .1 = {1}, stack = {1}
14:40:55 <ehird> then
14:40:58 <ehird> if you write 2 to .1
14:41:01 <ehird> .1 = {2}, stack = {1}
14:41:03 <ehird> then retrieve
14:41:04 <ais523> yes
14:41:05 <ehird> .1 = {1}, stack = {}
14:41:13 <ehird> right, that's simple enough
14:41:16 <ais523> yep
14:41:19 <ais523> except there's an ignore line
14:41:25 <ehird> yes, I'll get to that
14:41:26 <ehird> DO .1 <- #1
14:41:27 <ehird> DO STASH .1
14:41:28 <ehird> DO .1 <- #2
14:41:30 <ehird> .1 = {2}, {1}
14:41:34 <ehird> I assume that's uncontroversial
14:41:36 <ais523> yep
14:42:07 <ehird> ais523: okay, and retrieve boils down to "DO .N <- popped value"
14:42:12 <ais523> yes
14:42:15 <ehird> so, the retrieve after the ignore,
14:42:23 <ehird> makes .1 = {2}, {}
14:42:31 <ais523> because .1 is read-only?
14:42:35 <ais523> that's the J-INTERCAL interpretation
14:42:35 <ehird> exactly
14:42:41 <ehird> then, it's still ignored, so writing #3 to .1 does nothing
14:42:47 <ais523> yep
14:42:55 <ehird> so the output is 2, 2, 2
14:43:02 <ais523> well, just 2,2
14:43:08 <ais523> there's only two READ OUT statements there
14:43:10 <ehird> oh, right
14:43:19 <ais523> the CLC-INTERCAL interpretation is this:
14:43:25 <ehird> actually
14:43:25 <ehird> ais523:
14:43:29 <ehird> that'/s the C-INTERCAL interpretation
14:43:32 <ehird> from .doc
14:43:46 <ais523> oh, yes
14:43:49 <ais523> sorry
14:43:51 <ais523> misremembered
14:43:57 <ehird> The
14:43:57 <ehird> ignorance status is stashed along with the variable itself
14:43:58 <ehird> hmm
14:44:06 <ais523> CLC-INTERCAL stashes metadata
14:44:09 <ehird> ais523: does the standard say STASH stashes a variable or the variable's value?
14:44:19 <ehird> if it says value, mine's right, if it says something more encompassing, CLC-INTERCAL is right
14:44:41 <ais523> "The values are left intact, and copies thereof are saved for later retrieval by (what else?) the RETRIEVE statement (see section 4.4.6)."
14:44:51 <ehird> ok, it's values
14:44:58 <ehird> I'd say CLC-INTERCAL is objectively wrong there, then
14:45:04 <ehird> since the metadata is absolutely not part of the value
14:45:16 <ais523> well, INTERCAL evolves over time
14:45:24 <ais523> I'd say CLC-INTERCAL's interpretation is an extension
14:45:25 <ehird> true
14:45:27 <ais523> that makes STASH more useful
14:45:33 <ehird> yes, that's the thing
14:45:33 <ais523> J-INTERCAL's behaviour is probably just wrong
14:45:41 <ehird> J-INTERCAL sucks, as far as I can tell
14:45:52 <ais523> J-INTERCAL isn't as advanced as either of the others
14:46:48 <ehird> anyway, I was imagining ignorret would be some highly-gnarly evil program
14:46:56 <ehird> :P
14:47:02 <ais523> nope, the simple ones are more fun
14:47:08 <ais523> it's even portable to different bases
14:47:12 <ehird> ha
14:49:14 <ehird> ais523: anyway, I'd probably go with CLC-INTERCAL in practic
14:49:14 <ehird> e
14:49:17 <ehird> since it'd be more useful
14:49:22 <ehird> although...
14:49:26 <ais523> well, CLC-INTERCAL has a lot more metadata to stash
14:49:28 <ehird> ais523: does IGNORE make the variable or the variable's value immutable?
14:49:45 <ais523> C-INTERCAL's solution is to stash all the metadata that CLC-INTERCAL invented, but not metadata invented elsewhere
14:49:54 <ais523> ehird: there's no difference in standard INTERCAL-72
14:50:05 <ehird> there is, the stash stack :P
14:50:06 <ehird> but I mean
14:50:08 <ais523> "The statement DO IGNORE list causes all subsequent statements to have no effect upon variables and/or arrays named in list"
14:50:14 <ehird> ok, well
14:50:22 <ehird> having an effect on the stash stack counts as an effect on variables
14:50:31 <ehird> so, the RETRRIEVEs do nothing
14:50:34 <ehird> in strict intercal-72
14:50:35 <ais523> actually, it wouldn't be beyond the bounds of possibility that it would be impossible to STASH or RETRIEVE an ignored variable
14:50:42 <ehird> yes
14:50:47 <ehird> that's the literal reading of IGNORE
14:51:07 <ehird> ais523: funnily the output would be 2, 2
14:51:09 <ehird> just like C-INTERCAL
14:51:21 <ehird> maybe ignorret should be updated to handle that possibility...?
14:52:11 <ais523> it will be now you've brought that up
14:52:38 <ais523> it'll make the program slightly more complicated, but may as well test the interactions
14:53:01 <ais523> anyway, people are always making new observations about the INTERCAL standard
14:53:16 <ais523> I know that sorear, when he was writing the vim syntax highlight file for INTERCAL, concluded that whitespace was allowed inside keywords
14:53:34 <ais523> although I'm not sure on what basis, and all implementations I know of ban whitespace in that particular location
14:53:35 <ehird> ha
14:54:03 <ehird> i've been thinking about unhelpful helpers
14:54:04 -!- Judofyr_ has quit (Read error: 131 (Connection reset by peer)).
14:54:14 <ehird> syntactic sugar and the like that looks really useful, but works in such a horrid way that it's hell to use
14:54:33 <ais523> Release 0.27 (by Alex Smith) 22 Dec 2007 | 1. Joris Huizer pointed out that the manual nowhere says that a GIVE UP line can't be abstained from by line number.
14:54:35 <ehird> for example, a string literal syntax that packs N 9-bit characters per array element, where N is the successive elements of the fibonacci sequence
14:54:43 <ais523> it only took 35 years to catch that particular weirdness of the spec
14:54:46 <ais523> I'm sure that ther are others
14:54:47 <ehird> heh
14:55:06 <ais523> C-INTERCAL corrects for that now, AFAIR the other impls didn't bother
14:55:06 <ehird> ais523: thoughts about that string literal syntax? hmm, maybe even make how it's packed depend on the string content...
14:55:28 <ais523> the obvious thing to do is have a start-string marker but no end-string marker
14:55:33 <ais523> and end the string at the next thing that looks like a statement
14:55:47 <ais523> surprisingly, CLC-INTERCAL would parse that just fine, C-INTERCAL might have more trouble
14:56:58 <ais523> it would certainly be an interesting fix to the escaping problem
14:59:07 <ehird> heh
14:59:54 <ais523> and the start-string marker would presumably be a keyword
14:59:56 <ais523> rather than punctuation
15:00:01 <ehird> ais523: why not overload "?
15:00:04 * ehird cackles
15:00:19 <ais523> that would depend on the syntax
15:00:23 <ehird> not alternating "/' either, " is always the one overloaded
15:08:38 <ehird> ais523: do you think CLWNPA is a good name? (Pronounced "interrcall", with a short a).
15:08:45 -!- Asztal has quit (brown.freenode.net irc.freenode.net).
15:08:46 <ais523> yes, I do
15:08:59 -!- Asztal has joined.
15:17:16 -!- ais523 has quit ("relunching. Why am I eating twice as much as normal nowadays?").
15:23:52 <ehird> "The Clang project is an effort to build a set of new 'LLVM native' front-end technologies for the LLVM optimizer and code generator. While Clang is not included in the LLVM 2.5 release, it is continuing to make major strides forward in all areas. Its C and Objective-C parsing and code generation support is now very solid. For example, it is capable of successfully building many real-world applications for X86-32 and X86-64, including the FreeBSD kernel
15:23:54 <ehird> and gcc 4.2."
15:23:56 <ehird> AnMaster: maybe clang _is_ ready.
15:24:07 <AnMaster> ehird, oh?
15:24:16 <AnMaster> I looked at the status page for it recently
15:24:16 <ehird> well, to a degree
15:24:28 <ehird> compiling gcc is an impressive achivement
15:24:34 <AnMaster> ehird, it can handle most of C but not very much C++ yet
15:24:42 <AnMaster> ehird, without or without bootstrapping?
15:24:53 <ehird> AnMaster: 1. does that matter for C programs? 2. not sure
15:25:09 <AnMaster> ehird, no it doesn't matter for C programs. But their goal is C++
15:25:20 -!- Slereah has quit.
15:25:26 <ehird> True. But you said that clang wasn't ready for C
15:25:39 <AnMaster> when?
15:25:40 <ehird> Maybe I'll try clang for the next thing I write in C
15:25:49 -!- Slereah has joined.
15:25:50 <AnMaster> ehird, also I said it was almost ready iirc
15:26:04 <AnMaster> since last I tested it (1-2 months ago) it could almost handle cfunge
15:26:06 <ehird> AnMaster: yesterday or so, you said clang wasn't ready when I mentioned it
15:26:09 <AnMaster> just one thing it failed at
15:26:13 <ehird> what?
15:26:22 <AnMaster> hm?
15:26:28 <AnMaster> oh you mean what it failed at?
15:26:34 <ehird> yes
15:26:38 <AnMaster> right. stuff like:
15:26:50 <AnMaster> static struct mystruct foo = { .a = blah }
15:26:54 <AnMaster> C99
15:27:05 <AnMaster> that is, the ".a = " bit is C99
15:27:17 <AnMaster> but maybe it can handle that now
15:27:25 <AnMaster> I don't know
15:27:38 <AnMaster> bbiab
15:27:40 <AnMaster> (food)
15:27:41 <ehird> ah
15:27:44 <ehird> well that's rather trivial
15:32:53 -!- impomatic has joined.
15:33:09 <impomatic> Hi :-)
15:33:31 <ehird> hi
15:33:33 <oklopol> hi
15:33:44 <AnMaster> ehird, iirc some developer said it wasn't _that_ trivial back then
15:34:12 <oklopol> couldn't you just translate it in the other initialization syntax and use the existing system
15:34:29 <AnMaster> oklopol, you would need to fill in values in some places
15:35:16 -!- Hiato has joined.
15:35:22 <AnMaster> what is struct mystruct is: { char z[32]; int a; void *b; struct anotherstruct c; union blergh whatever; }
15:35:24 <oklopol> that's a trivial problem
15:35:42 -!- Asztal has quit (brown.freenode.net irc.freenode.net).
15:36:09 <AnMaster> oklopol, also using this special syntax is the only way you can initialise anything but the first member of an union like that
15:36:21 <AnMaster> sure you could do myunion.foo = 2; or such in code
15:36:29 <AnMaster> oklopol, so you can't always translate
15:36:35 <AnMaster> especially not for unions
15:37:03 -!- Asztal has joined.
15:37:11 <AnMaster> oklopol, so I'd say it is "simple" rather than "trivial"
15:37:17 <AnMaster> to add support
15:37:23 -!- oerjan has joined.
15:37:30 <AnMaster> oerjan, IWC
15:37:31 <AnMaster> err
15:37:33 <AnMaster> I mean
15:37:34 <AnMaster> hi!
15:37:36 <oklopol> well yes, that may be true.
15:37:41 <oerjan> fnord
15:37:50 <AnMaster> oerjan, dronf
15:38:08 <AnMaster> that is a float version of the math.h dron() I guess...
15:40:18 <oerjan> determine random obnoxious number
15:41:02 <AnMaster> oerjan, yeah
15:41:18 <ehird> hey, didn't psygnisfive say he goes to stony brook university?
15:41:58 <AnMaster> ehird, think it was him yes
15:42:00 <AnMaster> not 100% sure
15:42:30 <ehird> cool, just noticed slava akhmechet (of defmacro.org) does too
15:47:45 -!- ais523 has joined.
15:48:14 <ais523> wb me
15:48:14 <oerjan> hi ais523
15:48:19 <ais523> hi oerjan
15:53:23 <oerjan> <kerlo> My method: Note that 4x^2 + 9y^2 = 36 is actually a circle. Do the obvious. Note that it's an ellipse instead.
15:53:27 <oerjan> erm...
15:53:32 <oerjan> i don't think so
15:53:48 <ais523> 4x^2 + 9y^2 = 36 is an ellipse
15:54:01 <oerjan> it's not a circle
15:54:29 <ais523> I think kerlo's method is to make an incorrect assumpsion, see where it breaks down, and find out what the correct alternative is instead
15:54:55 <oerjan> although it _would_ still work by rescaling if you can show that the largest rectangle inscribed in an ellipse is necessary parallel to the axes
15:55:10 <oerjan> which it probably is
15:55:58 <oerjan> in fact if this is an ordinary calculus test they're probably assuming that's obvious
15:56:13 <ehird> ais523: can you provide some rhyme/reason to this WTF: http://pastie.org/404648.txt?key=kjkf82sgtymwyt44eapphq
15:56:17 <oerjan> (or geometry)
15:56:57 <AnMaster> ais523, I already did it, by testing on gcc 4.1.2 and not seeing that behaviour that ehird just described. Thus implying a bug. But why I wonder...
15:57:30 <ehird> I tracked down a bug that I thought was in a package to this... Crazy... I can't believe this is common to all OS X gcc users...
15:58:02 <oerjan> An omg.c was compiled // in two slightly different ways // the result was eerily wild // But just don't ask me what it says
15:58:23 <AnMaster> ehird, well most programs don't use cpp directly. They just call cc
15:58:37 <AnMaster> only program using cpp directly I can think of atm is ick
15:59:18 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
15:59:21 -!- impomatic has quit ("mov.i #1,1").
15:59:24 <oerjan> ehird: rhyme enough for you?
15:59:32 <ehird> AnMaster: ocaml
15:59:35 <ehird> using cpp preprocessor
15:59:51 <AnMaster> ehird, ok. That makes it two that I can think of
15:59:56 <AnMaster> btw why does ocaml do that?
16:00:03 -!- ais523 has joined.
16:00:14 <AnMaster> ais523, what did you miss?
16:00:25 <AnMaster> the question? and/or my comment to it?
16:00:27 <oerjan> *sigh* no respect for poetry even when they are _asking_ for it :(
16:00:43 <AnMaster> oerjan, yeah, horrible isn't it
16:01:00 <AnMaster> oerjan, what meter did that poetry use?
16:01:10 <AnMaster> if any
16:01:10 <ais523> AnMaster: both
16:01:10 <ais523> also, what did oerjan say?
16:01:16 <AnMaster> <ehird> ais523: can you provide some rhyme/reason to this WTF: http://pastie.org/404648.txt?key=kjkf82sgtymwyt44eapphq
16:01:18 <ais523> actually, I'll logread it, I haven't done that in a while
16:01:19 <oerjan> no idea what it's called
16:01:19 <ehird> AnMaster: the package used ocaml
16:01:20 <AnMaster> <AnMaster> ais523, I already did it, by testing on gcc 4.1.2 and not seeing that behaviour that ehird just described. Thus implying a bug. But why I wonder...
16:01:21 <ehird> err
16:01:23 <AnMaster> <oerjan> An omg.c was compiled // in two slightly different ways // the result was eerily wild // But just don't ask me what it says
16:01:24 <ehird> ocaml lets you specify a preprocessor
16:01:28 <ais523> AnMaster: I saw that
16:01:32 <ehird> for... preprocessing
16:01:36 <ehird> and this package used cpp for tha
16:01:36 <ehird> t
16:01:40 <AnMaster> ais523, you didn't answer ehird's question
16:01:46 <AnMaster> as far as we saw
16:01:52 <ais523> yes I did, presumably the reply was never sent
16:02:00 <AnMaster> <AnMaster> as far as we saw
16:02:03 <AnMaster> <ais523> yes I did, presumably the reply was never sent
16:02:11 <AnMaster> thank you Cpt. Obvious
16:02:13 <ais523> [16:02] <AnMaster> <AnMaster> as far as we saw
16:02:13 <oerjan> the . is supposed to be silent, btw
16:02:14 <ais523> [16:02] <AnMaster> <ais523> yes I did, presumably the reply was never sent
16:02:27 <ehird> ais523: I didn't see the answer?
16:02:27 <AnMaster> ais523, here it was over 6 second difference...
16:03:43 <oerjan> <ehird> "The main contender, ReiserFS, dropped out of the race because its creator decided to pursue other interests"
16:03:47 <oerjan> AAAAAAAAAAAAAA
16:04:07 <oerjan> never gets old, that
16:04:11 <oerjan> then neither did his wife
16:04:40 <AnMaster> oerjan, when is that quote from?
16:04:59 <oerjan> 15:10:52 yesterday
16:05:02 <ehird> AnMaster: http://www.defmacro.org/ramblings/relational.html I believe I linked it
16:05:09 <oerjan> (clog time)
16:05:14 <AnMaster> hm
16:05:19 <AnMaster> and what was ehird quoting?
16:05:22 <ehird> http://www.defmacro.org/ramblings/relational.html
16:05:39 <AnMaster> ah
16:06:07 <AnMaster> ehird, yeah when != what. So first time you said it, it wasn't a relevant answer ;P
16:06:22 <AnMaster> err s/what/where/
16:06:52 <oerjan> AnMaster: where must you be so picky about interrogative pronouns?
16:07:25 -!- ais523_ has joined.
16:07:42 <ehird> wb
16:07:45 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
16:07:48 <ais523_> argh, it still didn't show up
16:08:05 <ehird> ais523_: any ideas?
16:08:28 <ais523_> ehird: your results don't happen on my machine either, so it's probably a glitch specific to your version of gcc
16:08:32 <oerjan> <oklopol> well, i failed my first exam
16:08:33 <ais523_> SPL #0, <-1
16:08:36 <oerjan> *GASP*
16:08:40 <ais523_> ah, finally
16:08:43 <oerjan> group hug!
16:08:50 <ais523_> I was trying to prevent impomatic's quit message overwriting the lgos
16:08:52 <ehird> ais523_: but it's -apple-distributed-. surely they would have done some BASIC TESTS?!
16:08:52 <ais523_> *logs
16:09:02 <ais523_> ehird: that's kind-of obscure, rather than a basic test
16:09:05 <ehird> oerjan: he got 75%
16:09:09 <ais523_> besides, apple-distributed programs have been known to screw up
16:09:09 <ehird> ais523_: ## is not obscure!!
16:09:16 -!- FireFly has joined.
16:09:17 <ehird> ## is insanely common...
16:09:19 <ais523_> ehird: I mean, cpp vs. gcc -E
16:09:26 <ais523_> they probably tested with gcc -E not cpp
16:09:27 <oklopol> i don't know what i got, i just reasoned i couldn't get *more than* 75%.
16:09:28 -!- ais523_ has changed nick to ais523.
16:09:32 <ehird> retardzz
16:09:35 <ehird> gah
16:09:41 <ehird> but I can't compile tons of programs like this
16:09:44 <ais523> Apple famously messed up the packaging of Perl recently
16:09:47 <ais523> it was on Slashdot
16:09:51 <ehird> ah yes
16:10:08 <oerjan> oklopol: you are aware this may not be the definition of "fail" most human beings use, right?
16:10:10 * ais523 hopes that imp gate was written correctly
16:10:16 <ais523> I don't know redcode all that wel...
16:10:20 <ais523> *well
16:10:34 <oklopol> oerjan: yes, but that's very irrelevant
16:10:47 <AnMaster> oerjan, IWC was weird today. Had to read the forum to understand it
16:10:54 <oklopol> you fail when you need to lower your bar
16:11:09 <ais523> well, my bar's in different places in different subjects
16:11:19 <oerjan> AnMaster: oh i remembered the similar one from when head death _entered_, so i compared them
16:11:22 <ais523> I consider the bare pass mark of 50% excellent in some of my project management modules
16:11:27 <oerjan> and indeed they seem to fit
16:11:32 <oklopol> heh.
16:11:38 <ais523> I got 49% on my last piece of coursework on that, it's averaged with another that I've done but hasn't been marked yet
16:12:23 <oklopol> (i sometimes consider a 5/5 a fail if many ppl get it... but i guess i have to admit *that's* pretty stupid)
16:12:39 <ais523> how can full marks possibly be a fail?
16:12:56 <ais523> actually, I was really annoyed when I got 99% on one technology exam I did at school
16:13:03 <ais523> because I could have got 101% if only I hadn't got two questions wrong
16:13:11 <ehird> give it 110%
16:13:18 <ais523> and apart from in A-levels where it's trivial, scoring above 100 is quite an achivement
16:13:28 <oklopol> ais523: well you know if many people get the best possible grade, i'm not well above average!
16:15:50 <oklopol> i recently had this exam where 10/20 didn't show up, 5 failed, 3 got a 1/5, one got a four and i got a five
16:15:50 <AnMaster> <oerjan> AnMaster: oh i remembered the similar one from when head death _entered_, so i compared them <-- didn't do that until after I checked forum
16:16:03 <oklopol> and i was like WTF HOW CAN THIS GUY GET JUST ONE LESS THAN ME
16:16:17 <oklopol> and then i called a psychiatrist and was put away
16:16:23 <AnMaster> oerjan, I still don't see where money got into it
16:16:40 <oklopol> head death
16:16:47 <oerjan> AnMaster: i haven't checked the forum, i have changed to only checking it every few days, it's faster if i do it in more bulk
16:17:09 <AnMaster> <ais523> because I could have got 101% if only I hadn't got two questions wrong <-- wait. How many % is all of it...
16:17:31 <ehird> AnMaster: it's for "bonus questions"
16:17:33 <ehird> i.e.
16:17:34 <AnMaster> ah
16:17:35 <AnMaster> still
16:17:37 <ais523> AnMaster: 100, but I got a bonus mark on one of the questions
16:17:40 <ehird> "Blah blah blah. For bonus marks, tell us why green is purple."
16:17:54 <AnMaster> ehird, is green purple?
16:17:59 <ais523> there wasn't an explicit bonus question there, but the teacher was so impressed with my answer to one of the questions that I got a bonus mark anyway
16:17:59 <ehird> yes.
16:18:00 <oerjan> AnMaster: oh well head death asks what he owes doesn't he
16:18:04 <AnMaster> ehird, why?
16:18:13 <ehird> don't question your elders.
16:18:23 <AnMaster> ehird, err. you are younger than me
16:18:31 <AnMaster> oerjan, ah hm true
16:18:49 <ehird> DON'T QUESTION YOUR ELDERS.
16:18:58 <AnMaster> ais523, and how did you manage to impress the teacher like that?
16:19:09 <ais523> I can't remember, it was ages ago
16:19:11 <ehird> by writing a good answer?
16:19:13 <ehird> JUST THEORIZIN'
16:19:18 <AnMaster> ehird, well duh...
16:19:49 <oerjan> AnMaster: by being smarter than the teacher, i guess
16:20:00 <AnMaster> ehird, when I answer like that to a question that _you_ asked then you get irritated. Same when I _ask_ such as question.
16:20:05 <AnMaster> ehird, that makes no sense
16:20:06 <oerjan> and also having a teacher who doesn't mind students who are smarter
16:20:13 <ehird> AnMaster: Don't question your elders.
16:20:38 <AnMaster> ehird, you must be based on the gramophone technology.
16:21:16 <oerjan> AnMaster: maybe that webchatter or whatever technology he mentioned yesterday
16:22:13 <AnMaster> oerjan, I think I missed that. What was it about? Don't have X running atm. So like ais523 I just ask instead of looking at clog
16:22:29 <oerjan> AnMaster: i do suspect a number of the times ehird complains about you, he just does it for the hell of it
16:22:48 <AnMaster> oerjan, ooh. That would make sense in fact.
16:22:50 <ehird> oerjan: DON'T SUSPECT YOUR ELDERS
16:22:59 <AnMaster> ehird, you must be based on the gramophone technology.
16:23:12 <oerjan> ehird: you are not my elder
16:23:19 <ehird> SHUT UP.
16:23:20 <ehird> YOUR ELDERS.
16:23:31 <oklopol> WE ARE THE WARRIORS
16:23:32 <AnMaster> yes. gramophone
16:23:36 <AnMaster> stuck, repeating the same line over and over.
16:23:49 <AnMaster> ehird, that's no Elder...
16:25:47 <oerjan> AnMaster: it was some insane thing on reddit, a program that could be used for various support to talk to people on the web with scripting, but used in such a stupid way that it looked like there _was_ no human on the support end
16:26:19 <ehird> oerjan: actually, the people started acting human after that article, apparently
16:26:24 <ehird> (complaining about reddit influx)
16:26:43 <oerjan> ehird: reddit, the nuclear cluehammer :D
16:28:50 <AnMaster> oerjan, err...
16:28:55 <AnMaster> oerjan, link?
16:29:12 * ais523 detonates a well-sharpened pencil at oerjan
16:29:15 * AnMaster is willing to start browser to check this out
16:30:01 <ehird> ais523: RIP well-sharpened pencils :(
16:30:03 <ehird> AnMaster: you need java
16:30:16 <ehird> http://www.webgreeter.com/
16:30:39 <ais523> if that turns out to have been an AI all along...
16:30:47 <ehird> heh
16:30:49 <ehird> be very afraid
16:31:08 <AnMaster> I do have java... Just not in browser
16:31:17 <oerjan> oh dear you mean reddit has trained skynet?
16:31:19 <AnMaster> java for linux x86_64 doesn't have a plugin part
16:31:37 <oerjan> that would be nuclear cluehammer in the other direction, i guess
16:31:38 <AnMaster> only the standalone java/javac/and/such
16:41:45 <oerjan> <fizzie> See, you have a budding career as an ehird-amuser there.
16:41:59 <oerjan> wait what, i don't like competition
16:42:04 <ehird> :D
16:42:44 <ais523> ehird: :D at your :D
16:42:52 <ais523> you managed to make a meta-joke with one smiley, that's pretty impressive
16:42:57 <AnMaster> oerjan, who was that line directed at?
16:43:09 <oerjan> oklopol
16:43:41 <oklopol> oerjan
16:43:48 <oerjan> oklopol
16:43:53 <oklopol> oerjan
16:43:57 <oerjan> oklopol
16:43:59 <oklopol> oerjan
16:44:03 <oerjan> oklopol
16:44:04 <oklopol> oerjan
16:44:06 <oerjan> oklopol
16:44:08 <oklopol> oerjan
16:44:09 <AnMaster> ...
16:44:16 <ais523> wow, it's like a botloop
16:44:22 <ais523> but with humans
16:44:28 <Mony> xD
16:44:34 <AnMaster> ais523, I thought that too
16:44:38 <oerjan> well some of them are suspected to be human
16:44:39 <oklopol> ^ luckily oerjan got tired
16:44:49 <oerjan> oklopol: no, AnMaster just broke it
16:45:00 <oklopol> hmm
16:45:02 <oklopol> i guess.
16:45:02 <oerjan> which is just as well, before we got banned
16:45:17 <oklopol> yes probably for the best that you lost so abruptly
16:45:21 <AnMaster> so who was it really?
16:45:24 <AnMaster> now tell the truth
16:45:31 * oerjan swats oklopol -----###
16:45:31 <AnMaster> I don't think it was oerjan
16:45:37 <oklopol> the truth is nothing but a lie wrapped in a pretty cake
16:45:40 <AnMaster> <oerjan> <fizzie> See, you have a budding career as an ehird-amuser there.
16:45:41 <AnMaster> <oerjan> wait what, i don't like competition
16:45:55 <AnMaster> if it was oerjan that reply would be very strange
16:46:05 <oerjan> i have told the truth all the time, i have never lied in my life
16:46:19 <AnMaster> really?
16:46:24 <oklopol> it's funny because it's a lie!
16:46:26 <ehird> no, that's a-
16:46:28 <ehird> :|
16:46:38 <oerjan> surreally, perhaps
16:49:42 <oerjan> <oklopol> no one gets swedish
16:49:52 <oerjan> inte en själ!
16:50:05 <ais523> I have lied at least once
16:50:11 <ais523> but I have also told the truth at least once
16:50:16 <ehird> 16:50 ais523: I have lied at least once
16:50:20 <ehird> that would be the lie, I presume
16:50:31 <ais523> I'll leave you wondering
16:50:38 <oerjan> i have done at least one of those
16:51:39 <AnMaster> oerjan, verkligen?
16:52:03 <oerjan> AnMaster: stop your incomprehensible babbling!
16:52:21 <AnMaster> ais523, then you should guard a door. ;P
16:52:37 <ais523> AnMaster: given what the doors around here are like, I'd better not
16:52:53 <AnMaster> ais523, I wasn't making a reference to that
16:52:59 <oerjan> AnMaster: he can be the one who stabs people who ask complicated questions. </xkcd>
16:53:17 <AnMaster> oerjan, nah, I think he is too nice for that
16:53:32 <oerjan> maybe, maybe
16:53:33 <ais523> the trick to solving that particular XKCD problem is to have a question that solves the problem but doesn't sound complicated
16:53:43 <oerjan> or he could have put on that appearance
16:53:47 <FireFly> [17:49:55] <oerjan> inte en själ!
16:53:48 <ais523> "What would you say if I asked you if this door lead to freedom?" is my attempt
16:53:55 <FireFly> That looks so strange in an english channel :<
16:54:00 <ehird> ais523: tricky
16:54:02 <ehird> not complicated
16:54:09 <oerjan> ais523: except the xkcd also mentioned none of the doors actually lead out
16:54:12 <ais523> is that a tricky question?
16:54:14 <ais523> ah, and ok
16:54:24 <ais523> actually, based on the drawing, the doors seem to lead /in/
16:54:35 <ais523> also, with three doors, no way you can determine all the information with a yes-or-no question
16:55:43 <ehird> http://cairnarvon.rotahall.org/pics/lslw.jpg
16:55:52 <AnMaster> FireFly, ja det gör det. Men han talar norska
16:56:07 <AnMaster> ändå är det begripligt
16:56:26 <oerjan> AnMaster: um gör jag vel inte
16:56:48 <AnMaster> oerjan, jo, inte svensk skulle stava det "vel"
16:57:03 <FireFly> Good enough
16:57:06 <oerjan> ok i write swedish as botched by a norwegian
16:57:06 <AnMaster> ingen*
16:57:10 <AnMaster> oerjan, indeed
16:57:14 <FireFly> Bättre än jag kan norska
16:57:16 <FireFly> Ehm
16:57:18 <AnMaster> FireFly, same
16:57:29 <FireFly> Betre en jeg kan norsk
16:57:32 <FireFly> :
16:57:33 <FireFly> <
16:57:39 <oerjan> "Bedre enn"
16:58:41 <oerjan> so, maybe :D
16:58:46 <AnMaster> FireFly, och det var bättre än mig
16:59:25 <FireFly> :>
16:59:30 <FireFly> Good enough for me
16:59:54 <oerjan> AnMaster: um wait was this an attempt at norwegian? <AnMaster> oerjan, jo, inte svensk skulle stava det "vel"
17:00:08 <AnMaster> oerjan, no, it was just a typo
17:00:13 <oerjan> oh ok
17:00:14 <ehird> http://www.youtube.com/watch?v=pkCuc34hvD4
17:00:15 <AnMaster> for "ingen"
17:00:50 <oerjan> because most of the words are identical
17:01:01 <FireFly> Norwegian is just typoed swedish :>
17:01:01 <oerjan> especially after fixing the typo
17:01:17 <FireFly> Okay, maybe not
17:01:53 <AnMaster> FireFly, Depends. Nynorsk is not as close
17:02:25 <oerjan> actually it is not quite correct _choice_ of words
17:02:45 <oerjan> 'jo, ingen svenske ville stave det "vel"'
17:03:28 <FireFly> "ville" is more like the english "will"?
17:03:36 <FireFly> Which would be like swedish "skulle"
17:03:40 <ehird> so ais523
17:03:42 <oerjan> which is also correct nynorsk, which can be even closer by choosing the -a infinitive option
17:03:53 <ehird> what do you think I should do, replace cpp with a shell script aclling gcc -E?
17:04:05 <oerjan> FireFly: english "would"
17:04:14 <FireFly> Um, yeah
17:04:36 <AnMaster> oerjan, then skulle in Swedish
17:04:38 <AnMaster> in that case
17:10:03 <ehird> i wonder why i liek the otbs
17:10:06 <ehird> *like
17:10:09 <ehird> it's not exactly logical...
17:10:32 <ais523> what is the otbs?
17:10:40 <ehird> one true brace style (k&r)
17:10:56 <ais523> ah
17:11:10 <ehird> having { on a separate line just for functions is rather silly
17:11:11 <ais523> if you'd written 1tbs, I might have been able to expand it, probably not though
17:11:36 <ais523> at the moment, for Perl I'm using a 1tbs with { on the opening line for absolutely everything
17:11:41 <ais523> not sure if I like it or not
17:12:12 <AnMaster> 1tbs?
17:12:27 <AnMaster> oh 1 not l
17:12:29 <AnMaster> right
17:12:45 <AnMaster> (they are different in this font, just not by much)
17:20:26 <oerjan> <ehird> ais523: do you think CLWNPA is a good name? (Pronounced "interrcall", with a short a).
17:20:52 <oerjan> it should make the welsh scratch their heads, at least
17:25:22 <AnMaster> oerjan, heh
17:35:03 <AnMaster> C function pointer syntax is crazy IMO
17:35:09 <ais523> I like it
17:35:19 <ais523> it follows the general rules for C type syntax very well
17:36:10 <AnMaster> ais523, I tend to typedef to not need to think about it
17:36:39 <AnMaster> and in typedef it is really strange
17:37:16 <AnMaster> typedef void (*fingerprintOpcode)(instructionPointer * ip);
17:37:20 <AnMaster> really that is strange
17:37:24 <AnMaster> typedef is usually:
17:37:38 <AnMaster> typedef long int fancyname
17:37:40 <AnMaster> or such
17:37:55 <AnMaster> ais523, for function pointers that is no longer true
17:38:07 <AnMaster> I mean tyedef <expansion> <name>
17:38:12 <AnMaster> typedef*
17:45:01 -!- MigoMipo has joined.
17:49:52 <ais523> Do you consider it acceptible to press F3 if you don't have a suicide spoon handy, or is that cheating?
17:51:31 <ehird> hmm, you can make any vector image from lines & curves right?
17:51:40 <ais523> what about fill?
17:52:13 <ehird> ah, yes
17:52:23 <ehird> you can make any vector image from lines, curves & fill right?
17:52:42 <ais523> probably
17:52:49 <ais523> I suppose it depends on what primitives the image uses
17:52:54 <ais523> "curves" is pretty general...
17:53:14 <ehird> true
17:53:26 <ehird> ais523: I was planning having an image be from (0.0,0.0) to (1.0,1.0)
17:53:41 <ehird> a curve would be (x1,y1,x2,y1,bend)
17:53:45 <ehird> where bend is from 0.0 to 1.0
17:53:46 <ehird> probably
17:53:54 <ehird> hmm
17:53:57 <ehird> a line is a curve with bend 0
17:54:49 <FireFly> A cruve is in this case a bezier curve?
17:55:40 <FireFly> [18:52:26] <ehird> you can make any vector image from lines, curves & fill right?
17:55:43 <FireFly> I guess that'd work
17:55:49 <FireFly> Judging from how SVGs are built
17:56:16 <ehird> yes, bezier
17:59:26 <ehird> so, with those, a circle is
17:59:27 <ehird> ((0.5, 0), (0.5, 1), -0.5);
17:59:28 <ehird> ((0.5, 0), (0.5, 1), 0.5)
17:59:29 <ehird> I believe
18:00:13 <ais523> I don't think it's possible to do a sine wave with only bezier curves
18:00:21 <ais523> not exactly right, anyway, although you can approximate it as closely as you like
18:00:29 <ehird> hmm
18:00:30 <ehird> why not?
18:00:47 <ais523> because it's a different shape of curve
18:01:38 <ehird> hmm
18:01:40 -!- oerjan has quit ("leaving").
18:01:44 <ehird> maybe I should use a different type of curve
18:01:53 <FireFly> Hm
18:02:18 <FireFly> I've tried to make a circle lots of times with Bezier based curves
18:02:23 <FireFly> And I've had a hard time
18:02:47 <ehird> well, with mine it would be
18:02:47 <ais523> or a graph of Ei, for instance, definitely can't be drawn with bezier curves
18:02:48 <ehird> [((0.5, 0), (0.5, 1), 0.5);
18:02:48 <ehird> ((0.5, 0), (0.5, 1), -0.5)]
18:02:53 <FireFly> By my experience, IIRC, the "anchor" points which describes the bend are placed at odd laces
18:02:59 <FireFly> places*
18:03:15 <ehird> you draw the straight line in the middle from top to bottom, then curve it so that the middlepoint is <curve> away from the starting point
18:03:20 <ais523> http://en.wikipedia.org/wiki/Exponential_integral
18:03:24 <ehird> hmm, the curve should be two curves
18:03:30 <ehird> since it can curve horizontally or vertically
18:03:37 <ehird> but, with that you can express a circle as above
18:03:57 -!- ais523 has left (?).
18:04:02 -!- ais523 has joined.
18:04:12 <ais523> how did I do that?
18:04:26 <ais523> misclick, it seems
18:10:13 -!- olsner has joined.
18:14:31 <ehird> http://www.scribd.com/doc/12927007/The-Manga-Guide-to-Databases-excerpt
18:14:38 <ehird> oh dear... it actually exists...
18:15:04 <lament> hahaha
18:15:04 <ais523> did you actually go looking for one of those?
18:15:18 <ehird> no, it was on reddit and now an excerpt of it is on reddit
18:15:20 <lament> if it's not hentai i'm not interested
18:16:10 <oklopol> yes it's database hentai
18:16:39 <ehird> the tentacles of denormalization
18:20:59 <ehird> http://www.sfcave.com/ addictive
18:22:44 <AnMaster> <FireFly> [18:52:26] <ehird> you can make any vector image from lines, curves & fill right? <-- what about gradients?
18:23:02 <ehird> err, I'm talking about the theoretical definition of vector image.
18:24:29 <AnMaster> <ehird> http://www.scribd.com/doc/12927007/The-Manga-Guide-to-Databases-excerpt <-- needs flash, summary?
18:24:44 <ehird> it's the manga guide to databases.
18:24:54 <AnMaster> ehird, yes, but what does that mean in practise?
18:25:08 <ehird> it's a guide to databases that is a manage
18:25:10 <ehird> *manga
18:25:19 <AnMaster> ah there is a description there too...
18:25:34 <AnMaster> thank for your (lack) of helpfulness
18:25:38 <AnMaster> thanks*
18:25:57 <ehird> what the fuck is there not to get?
18:26:04 <ehird> it's the manga guide to databases
18:26:09 <ehird> where's the ambiguity?
18:26:45 <AnMaster> it could have been a space theme, or fantasy theme, or sex theme
18:26:57 <AnMaster> or something else
18:26:58 <ehird> .... err, what
18:27:21 <AnMaster> manga can be about different subjects right?
18:27:25 <AnMaster> Like everything can
18:27:40 <AnMaster> you can have comics with scifi.
18:27:48 <AnMaster> and you can have comics with fantasy
18:27:49 <oklopol> ehird: so how much have you gotten?
18:27:51 <AnMaster> and you can have comics with other stuff
18:27:54 <ehird> oklopol: wut
18:27:59 <oklopol> snake
18:28:06 <ehird> oh high score on that thing?
18:28:09 <oklopol> yes
18:28:09 <ehird> 10150 i am not very good
18:28:10 <ehird> you?
18:28:20 <oklopol> 17000 or something, just making sure
18:28:39 <oklopol> although i like the graphics, will probably play a bit more
18:28:55 <oklopol> even though i don't really find that a very stimulating concept
18:29:19 <ais523> Nibbles is my favourite version of Snake
18:29:29 <ais523> I liked it so much I even wrote patches against it and submitted them to Gnome
18:30:23 <AnMaster> my phone as a 3D TPS (Third Person Snake)
18:30:29 <AnMaster> it's horrible
18:30:43 <ehird> third person snake, you mean, snake
18:30:45 <ais523> 3D snake?
18:30:46 <ehird> ?
18:30:49 <ehird> oh
18:30:50 <ehird> right
18:30:57 <ehird> I've played 3d snake, called Swear
18:30:58 <ehird> t'was fun
18:31:07 <AnMaster> not the same one I think then
18:31:07 <ehird> on a klein bottle
18:31:07 <ehird> no less
18:31:18 <FireFly> I've played some odd 3D snake on a Nokia cellphone
18:31:19 <AnMaster> this one is rather boring.
18:31:22 <FireFly> Didn't like it
18:31:25 <FireFly> Hm
18:31:27 <AnMaster> FireFly, Nokia here too
18:31:29 <FireFly> On MY cellphone, IIRC
18:31:34 <AnMaster> this one is called "Snake III"
18:31:36 * FireFly doesn't use his cellphone a lot
18:31:39 <FireFly> Yeah, the same one
18:31:42 <ais523> 1D snake could be more interesting
18:31:58 <FireFly> Althrough on my dads cellphone, theres some wireframe snake, looks more interesting
18:32:00 <AnMaster> ais523, how would it work
18:32:01 <ehird> rather boring, I think, ais523
18:32:04 <FireFly> And it's also a Nokia
18:32:09 <AnMaster> FireFly, older model?
18:32:16 <FireFly> Yep, I think
18:32:24 <FireFly> But it looks about as good, technically wise
18:32:27 <ais523> AnMaster: I'm thinking the snake would move n squares at a time, rather than just 1
18:32:33 <ais523> and you would vary n
18:32:37 <FireFly> Eg. equally advanced graphics
18:32:42 <ehird> ais523: ah, clever
18:32:48 <ehird> so there's obstacles
18:32:53 <ehird> and you have to increase your "hop speed"?
18:32:53 <AnMaster> FireFly, mine is a "Nokia 3something Classic"
18:32:54 <FireFly> Hm, that's interesting
18:32:55 <ehird> to get past them
18:33:04 <ehird> ais523: that would be best as a side-scroller type thing
18:33:06 <ehird> for visualization
18:33:12 <ais523> PUDDING!!!!!
18:33:14 <ehird> with a snake hopping
18:33:15 <ais523> ehird: probably
18:33:23 <FireFly> Side scroller snake
18:33:25 <FireFly> Ugh
18:33:25 <ehird> 18:33 ais523: PUDDING!!!!!
18:33:28 <ehird> I LOVE PUDDING TOO.
18:33:33 <ais523> ehird: it's a TURKEY BOMB command
18:33:42 <ehird> i know
18:33:44 <ehird> but what's the relevance
18:33:49 <AnMaster> FireFly, I forgot the exact model
18:33:52 <AnMaster> FireFly, :D
18:33:53 <ais523> does it have to be relevant?
18:33:55 <FireFly> Mines.. 7500
18:33:57 <FireFly> Prism
18:34:00 <ais523> I was randomly reading the TURKEY BOMB specs
18:34:01 <FireFly> Easy number to remember
18:34:06 <ais523> and felt an urge to paste one of the commands
18:34:41 <AnMaster> FireFly, mine is like 3120 or something like that
18:34:44 * ais523 suddenly notes that no commands use AMICEDs, apart from the ones that take any time
18:34:50 <AnMaster> and it doesn't have the model number on it even
18:35:03 <AnMaster> FireFly, there is also a rally game on the phone. 3D
18:35:09 <AnMaster> very bad graphics
18:35:14 <FireFly> Hm, that one
18:35:20 <FireFly> I think I've played it
18:35:20 <AnMaster> FireFly, what one?
18:35:22 <AnMaster> oh right
18:35:23 <ais523> ehird: about your cpp problem, what happens if you give the -### switch to the two commands/
18:35:28 <FireFly> You auto-move forward, can only steer
18:35:29 <FireFly> Right?
18:35:38 <FireFly> Some beach race thing
18:35:41 <AnMaster> FireFly, you can turn off that auto move forward though
18:35:44 <AnMaster> and not beech
18:35:50 <AnMaster> mountain and such
18:35:51 <FireFly> Hm, guess it's a different one then
18:36:04 <AnMaster> FireFly, not using auto forward is very hard
18:36:21 <AnMaster> but why in a phone
18:36:33 <ehird> ais523: cpp gives -traditional-cpp but surely traditional cpp had ##
18:36:39 <FireFly> Althrough I also have this Tower Bloxx game, it's quite alright
18:36:39 <AnMaster> I use it for calls and SMS
18:36:45 <ais523> ehird: no, it didn't
18:36:45 <AnMaster> FireFly, don't have that one
18:36:48 <FireFly> I don't use mine
18:36:50 <ehird> ais523: O_O
18:36:51 <FireFly> :D
18:37:03 <ais523> ## was invented for C89 to avoid the horrible hacks that people were using instead
18:37:05 <ais523> as was #
18:37:11 <AnMaster> FireFly, have some backgammon game too. No idea how to play it
18:37:24 <AnMaster> backgammon that is
18:37:30 <ais523> traditional cpp #define A(x) "testx" translates to modern CPP #define A(x) "test" #x
18:37:32 <FireFly> Hm, I think I've played a Nokia backgammon game, yeah
18:37:52 <AnMaster> ais523, wow crazy
18:37:54 * ais523 looks at http://esolangs.org/wiki/Talk:Esme for old time's sake
18:38:04 <AnMaster> ais523, also cpp doesn't run into that bug ehird hit here
18:38:09 <ais523> and suddenly realises that the discussion there is between Dagoth and zzo38
18:38:11 <ais523> AnMaster: nor here
18:38:18 <ehird> "Esme: It works by tapping out "ESME" into Morse code, then writing "Esme" in to the papers."
18:38:29 <AnMaster> ais523, also -### ?
18:38:38 <ais523> AnMaster: a lovely name for a gcc switch
18:38:42 <ehird> it's basically like:
18:38:43 <ais523> you should try it some time
18:38:44 <ehird> http://fortwayneright.files.wordpress.com/2008/07/dewey_wins.jpg
18:38:49 <ehird> except instead of DEWEY DEFEATS TRUMAN
18:38:50 <ehird> it says
18:38:52 <ehird> ESME ESME ESME
18:38:54 <ais523> I don't know why they chose that one, presumably they just wanted it to be memorable
18:38:54 <AnMaster> ais523, I can't find it in man page
18:39:02 <ais523> AnMaster: gcc's man page isn't well-documented
18:39:09 <ais523> the gcc people prefer info
18:39:17 <ais523> it's a debugging switch that charts what the subprocesses do
18:39:41 -!- Mony has quit ("Quit").
18:41:08 -!- calamari has joined.
18:49:55 <ais523> hahaha: http://www.planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=11751&lngWId=3
18:50:01 <oklopol> err qut
18:50:03 <oklopol> qut
18:50:04 <ehird> yeah, saw that
18:50:04 <oklopol> *wut
18:50:05 <ais523> "Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. Afterdownloading it, you will need a program like Winzip to decompress it."
18:50:12 <ehird> ais523: that's by the actual author of deadfish
18:50:17 <ehird> bit of a newb.
18:50:22 <oklopol> ehird: what am i misunderstanding, i got a 27000 and i'm not on the list
18:50:26 <ais523> I've suddenly had an impulse to want to write a deadfish polyglot
18:50:29 <ehird> oklopol: did you enter a nam
18:50:29 <ehird> e
18:50:41 <ais523> as in, a program that's a deadfish interpreter in lots of different languages
18:50:44 <oklopol> wait i am
18:50:47 <ehird> lol
18:50:47 <oklopol> nm
19:00:15 <ais523> now presumably ehird will try
19:00:23 <ehird> ?
19:00:31 <ais523> to write a polyglot deadfish interp
19:00:44 <ehird> probably not, I suck at polyglots
19:02:27 <AnMaster> ais523, specs for this deadfish?
19:02:34 <ais523> http://esolangs.org/wiki/Deadfish
19:02:38 <ais523> it's a very trivial non-TC language
19:03:55 <AnMaster> yeah indeed
19:04:16 <ais523> mostly famous because it has a huge number of implementations
19:07:25 <AnMaster> ais523, so does bf
19:07:33 <AnMaster> and befunge-93
19:07:43 <ais523> yes
19:07:47 <AnMaster> wow at that C one on the wiki
19:07:50 <ais523> but those are famous on other grounds
19:07:53 <AnMaster> /* <-- Declare a function --> */
19:07:54 <AnMaster> w
19:07:54 <AnMaster> t
19:07:55 <AnMaster> h
19:08:10 <AnMaster> embedded SGML comments..
19:08:15 <AnMaster> wait no
19:08:16 <ehird> not even valid sgml.
19:08:18 <AnMaster> a ! and it would be
19:08:21 <ehird> the author is a silly newb.
19:08:23 <AnMaster> ehird, yeah see how it fails
19:08:23 <ehird> it's mostly for the novelty.
19:09:24 <AnMaster> ehird, what? nah. That would be /* <<<><<<<---!()\/& Declare a function &\/()!--->>>><>>> */
19:09:28 <AnMaster> that is novelty!
19:10:52 <AnMaster> ehird, also an example of a "don't do this" comment
19:11:04 * AnMaster looks for the i++; /* Increment i */
19:12:01 -!- calamari has quit ("Leaving").
19:12:33 <AnMaster> /* Make sure x is not greater then 256 */
19:12:33 <AnMaster> if(x == 256) x = 0;
19:12:40 <AnMaster> ...
19:12:46 <ais523> yes, we are aware of the 'bug'
19:12:59 <ais523> other implementations do the same thing for compatibility
19:13:06 <AnMaster> ais523, not only that. He should have used "unsigned char" and 255
19:13:18 <AnMaster> as in that is the same
19:13:39 <AnMaster> ais523, should I write a short C version that does the same but is sane and put it up there after his C version?
19:13:39 <oklopol> what's wrong with that?
19:13:48 <AnMaster> oklopol, read that comment
19:13:52 <AnMaster> <AnMaster> /* Make sure x is not greater then 256 */
19:13:52 <AnMaster> <AnMaster> if(x == 256) x = 0;
19:13:52 <oklopol> oh comment.
19:14:01 <ais523> AnMaster: the behaviour on 256 is considered an important part of Deadfish
19:14:04 <oklopol> yeah i don't read comments
19:14:08 <ais523> in other words, the implementation is correct but the comment is wrong
19:14:14 <AnMaster> ais523, yes indeed
19:14:46 <AnMaster> ais523, should I put up something following the same implementation in C but that is sane
19:14:48 <AnMaster> yes or no?
19:14:57 <AnMaster> maybe I'll do an erlang version
19:14:59 <AnMaster> as well
19:15:14 <ais523> probably better to just add new languages
19:16:31 <AnMaster> k
19:17:41 -!- ais523 has quit (Remote closed the connection).
19:19:15 <AnMaster> hm
19:23:03 <ehird> Agh, I ran into GreyKnight -again-
19:24:27 <AnMaster> ehird, what?
19:24:31 <AnMaster> context?
19:24:47 <ehird> guy who was in here circa 2006, ran into him via the logs first, then saw he played Agora in 2006 when browsing archives, and now I see him on wikipedia
19:26:23 <AnMaster> hm ok
19:26:35 <AnMaster> how does Deadfish behave on EOF?
19:26:57 <ehird> what
19:27:27 <AnMaster> simple question
19:27:37 <AnMaster> there is >> for the user
19:27:43 <AnMaster> what if user hits ctrl-d?
19:29:04 <ehird> it exits...
19:30:54 <AnMaster> ehird, ?
19:31:00 <ehird> it exits...
19:31:11 <AnMaster> ehird, it doesn't quit or react?
19:31:20 <ehird> do you know what exit means.
19:31:24 <AnMaster> no
19:31:26 <AnMaster> it doesn't
19:31:29 <AnMaster> as far as I can tell
19:31:38 <ehird> "It only exits, not quits!!"
19:31:56 <AnMaster> ehird, looking at the bash implementation for example
19:32:00 <AnMaster> the bash one just echos
19:32:12 <oklopol> okokokokokokokokokokokoko
19:35:48 <AnMaster> another bug
19:35:57 <AnMaster> you could go to 254, then square it
19:36:43 <ehird> that's the intention.
19:37:32 <AnMaster> that bash implementation doesn't allow it heh
19:38:23 <ehird> "# ARM Texas Instruments OMAP3 chip" —http://www.alwaysinnovating.com/touchbook/
19:42:22 -!- jix has quit (Read error: 104 (Connection reset by peer)).
19:44:55 <AnMaster> ehird, doesn't mean anything to me
19:55:05 <AnMaster> done.
19:55:08 <AnMaster> deadfish.erl
19:55:22 <AnMaster> MIT or BSD?
19:55:35 <AnMaster> ehird, which would you suggest?
19:55:45 <AnMaster> I think I will go for MIT license
19:55:46 <ehird> MIT
19:55:49 <ehird> or if BSD, BSD2
19:55:58 <ehird> the "don't use our name" thing is redundant and outmoded
19:55:59 <AnMaster> ehird, not BSD-4? aww
19:56:02 <ehird> AnMaster: BSD-5
19:56:07 <AnMaster> what?
19:56:10 <AnMaster> that exists?
19:56:11 <ehird> add a clause requiring modifiers to give all their babies to you, so you can eat them
19:56:15 <ehird> to further your evil plot to destroy the world
19:56:18 <AnMaster> hah
19:56:20 <ehird> -> Sure it's open source, but your code is safe!
19:56:31 <AnMaster> ehird, what about one that says: Plus everything in GPL2?
19:56:40 <ehird> hm?
19:56:46 <ehird> oh
19:56:47 <ehird> heh
19:56:52 <AnMaster> or GPL3
19:56:59 <ehird> AnMaster: add a clause saying that only people called george can modify the softwar
19:57:00 <ehird> e
19:57:08 <AnMaster> why george?
19:57:13 <ehird> why not
19:57:18 <ehird> also don't question your elders
19:57:27 <AnMaster> well you aren't my elder
19:57:35 <ehird> shut up. your elders.
19:57:47 <AnMaster> ehird, anyway what license is allowed on the wiki?
19:58:06 <ehird> Public domain. Nothing else.
19:58:10 <AnMaster> well
19:58:17 <AnMaster> I'll guess I'll have to go for that then
19:58:19 <ehird> Specifically, the creative commons public domain dedication
19:58:29 <ehird> AnMaster: just don't put a header in
19:58:30 <ehird> like the others
19:58:33 <AnMaster> hm
19:58:45 <ehird> e.g., authorship tag would be silly if others modified it
19:59:54 <AnMaster> %% @author and %% @copyright are done in all erlang code really
20:00:00 <AnMaster> %% @doc too
20:00:53 <ehird> who cares
20:00:55 <ehird> just omit them
20:02:58 -!- Hiato has quit ("Leaving.").
20:03:17 <AnMaster> argh
20:03:42 <ehird> what
20:03:44 <AnMaster> Login error:
20:03:44 <AnMaster> Error sending mail: There is no e-mail address recorded for user "AnMaster".
20:03:49 <AnMaster> I don't remember password
20:03:53 <ehird> ?
20:03:56 <ehird> oh.
20:04:02 <AnMaster> ehird, and there is no email
20:04:03 <AnMaster> so
20:04:09 <ehird> AnMaster: just edit anonymously, will it kill you?
20:04:30 <ehird> or was that disabled, I forget
20:04:48 <AnMaster> hm
20:04:50 <AnMaster> not sure
20:04:54 <AnMaster> anyway who is an admin
20:05:00 <ehird> just edit anonymously
20:05:08 <ehird> and ais523, ihope (iirc), oerjan, everyone
20:05:15 <ehird> yes, anonymous editing works
20:05:17 <ehird> I just checked
20:05:29 -!- BeholdMyGlory has joined.
20:05:51 <AnMaster> ehird, http://paste.lisp.org/display/76426
20:06:11 <AnMaster> ehird, did you say everyone?
20:06:12 <AnMaster> who?
20:06:15 <ehird> okay, apparently your brain can't parse me,
20:06:19 <ehird> http://esolangs.org/w/index.php?title=Deadfish&action=edit
20:06:20 <ehird> http://esolangs.org/w/index.php?title=Deadfish&action=edit
20:06:23 <ehird> http://esolangs.org/w/index.php?title=Deadfish&action=edit
20:06:23 <AnMaster> ehird, I refuse
20:06:24 <AnMaster> to edit
20:06:25 <ehird> third time lucky
20:06:26 <AnMaster> anon
20:06:43 <AnMaster> my ip!
20:06:43 <ehird> AnMaster: ok, then your interp will never be used and nobody will see it apart from a few
20:06:46 <ehird> have fun with that
20:06:58 <AnMaster> ehird, no, I'll just poke ais when I see him next time
20:07:11 <ehird> I'm sure he'll enjoy being bothered for something so trivial
20:07:28 <AnMaster> ehird, I'm sure he won't mind
20:07:48 <ehird> AnMaster: and do you intend to put it on the wiki with that license?
20:08:03 <AnMaster> ehird, nop
20:08:12 <AnMaster> I plan to make it public domain if I put it on wiki
20:08:13 <ehird> so why did you paste it with thatlicense
20:08:21 <ehird> also, yours doesn't meet the spec.
20:08:22 <AnMaster> ehird, because that isn't the wiki
20:08:25 <ehird> you can do multiple commands per line.
20:08:33 <AnMaster> ehird, I checked several other ones
20:08:40 <AnMaster> several didn't support it
20:09:09 <AnMaster> but trivial to fix
20:10:16 <ehird> "You can have several commands per line, at least in the C implementation."
20:10:20 <ehird> If you read it...
20:11:48 <AnMaster> at least in
20:11:48 <AnMaster> yes
20:11:56 <AnMaster> check the implementations there though
20:12:22 <AnMaster> ehird, wait, will it print two newlines after each line then?
20:12:56 <AnMaster> or does it strip a trailing \n?
20:15:10 -!- ais523 has joined.
20:18:36 <AnMaster> ais523, hi
20:18:40 <ais523> rehi
20:18:42 <AnMaster> ais523, I lost my login to the wiki
20:18:46 <AnMaster> and have no email set
20:18:52 <AnMaster> as a wiki admin can you help?
20:18:55 <ais523> ugh, nothing I can do about that despite being an admin
20:19:01 <AnMaster> ais523, who can then
20:19:03 <ais523> best to create another account
20:19:09 <ais523> graue probably could modify the database directly
20:19:11 <AnMaster> ais523, guess I'll just stop editing
20:19:14 <ais523> but with no email set, there's no "official" way to do it
20:19:23 <ais523> you can just create another account and mention you lost your password, nobody will mind
20:19:26 <AnMaster> and not put up my erlang deadfish
20:19:30 <ais523> that's common even on Wikipedia, and some people have done it before
20:19:32 <AnMaster> ais523, I will
20:19:35 <ais523> or you can just post as an anon if you prefer
20:19:37 <AnMaster> I will mind
20:19:45 <AnMaster> ais523, my ip!
20:19:46 <AnMaster> :P
20:19:55 <AnMaster> nah I guess I'll just skip it
20:20:03 <AnMaster> ais523, btw
20:20:12 <AnMaster> ais523, does deadfish strip trailing newline?
20:20:17 <AnMaster> on input
20:20:22 <ais523> it's interactive
20:20:27 <AnMaster> ais523, yes
20:20:33 <AnMaster> exactly
20:20:36 <ais523> and I think it strips newlines if and only if there's something else on the line
20:20:47 <AnMaster> ais523, right. That is painful
20:25:28 -!- jix has joined.
20:25:58 <AnMaster> ais523, does it matter of the interpreter is bignum?
20:26:12 <AnMaster> I mean, I do handle -1 and 256 as original code
20:26:19 <AnMaster> but with s you can get outside that
20:26:30 <ais523> AnMaster: getting outside it is part of the fun
20:26:45 <ais523> in fact, the discussions here we had about making Deadfish TC relied on bignums
20:27:52 <AnMaster> ais523, http://paste.lisp.org/display/76430
20:28:10 <AnMaster> ais523, you need *two* bignums to do that
20:28:15 <ais523> no you don't
20:28:18 <ais523> well, maybe not
20:28:18 <AnMaster> really?
20:28:22 <AnMaster> what about control flow
20:28:23 <ais523> having a square instruction makes things more complicated
20:28:28 <ais523> control flow I'm not sure about
20:28:59 <AnMaster> ais523, you need some sort of control flow. All you have now is a fixed program. Even with bignums you couldn't implement bf in it
20:29:05 <AnMaster> that is bf without IO
20:29:38 <AnMaster> ais523, anyway what do you think of my erlang implementation?
20:29:47 <ais523> simple enough
20:29:55 <ais523> but with that licence, it wouldn't be acceptable on Esolang anyway
20:30:17 <AnMaster> ais523, I would relicense it as public domain if I got my account back
20:30:24 <AnMaster> simple enough
20:30:50 <AnMaster> ais523, graue would probably not believe me if I asked him, so better you ask him (since he would trust you more)
20:30:54 <AnMaster> (and you know who I am)
20:31:23 <AnMaster> ais523, :)
20:37:06 <kerlo> oerjan: what I mean is to pretend it's a circle.
20:37:14 <kerlo> He's not here, but I'm sure that message will find him eventually.
20:39:25 <AnMaster> kerlo, it isn't
20:39:50 <AnMaster> the circle is a lie!
20:40:33 <kerlo> Intelligence is about ignoring what isn't important.
20:40:51 <kerlo> For much of the problem, it's not important that it's actually an ellipse.
20:41:08 <AnMaster> true
20:43:28 <oklopol> then what is important?
20:43:38 <kerlo> Area and betweenness.
20:43:56 <kerlo> Area-preserving affine transformations preserve both of these.
20:44:01 <oklopol> what's betweenness?
20:44:15 <kerlo> Whether or not one point is between two others.
20:45:03 <oklopol> err so that every line cuts it zero or 2 times?
20:45:09 <oklopol> except for tangents
20:45:13 <oklopol> so 0-2
20:45:16 <oklopol> or what do you mean
20:45:32 <ehird> AnMaster: graue will, most likely, tell you that if you give a shit about your ip being exposed jsut create another account
20:45:42 <ehird> at least, that's what any sane person would.
20:45:49 <AnMaster> http://paste.lisp.org/display/76432
20:45:57 <AnMaster> fixed some comment typos
20:46:01 <kerlo> I'm saying that an area-preserving affine transformation is useful in this case, I guess.
20:46:08 <AnMaster> and now it works according to reference implementation
20:46:15 <ehird> "reset my password", sure. "reset my password because i refuse to edit anonymously and otherwise i will STOP EDITING FOREVER", oh go away.
20:46:43 <AnMaster> ehird, I will only ask the first obviously
20:46:55 <kerlo> If you want to maximize the area of a rectangle inscribed in an ellipse, then whatever transformation you apply needs to preserve area and rectangleness.
20:47:04 <ehird> AnMaster: so why are you asking the other here
20:47:19 <AnMaster> ehird, because graue isn't here? So it doesn't matter.
20:47:23 <AnMaster> and stop bitching
20:47:26 <ehird> it's the kind of thing you'd call me childish for, actually (refusing to edit just because of username not being AnMaster or ip being exposed)
20:49:18 <oklopol> o
20:49:21 <ais523> oko
20:49:36 <oklopol> ol fokol ofol ooo.....
20:49:45 <ehird> z
20:49:49 <ais523> oko polofol o kolooo
20:50:02 <oklopol> kol kol kolk olk oo :)
20:50:12 <ehird> i need a translator
20:50:23 <ehird> oklopol: translate oko to english and post it to agora</obscure>
20:51:14 -!- kar8nga has joined.
20:51:40 <AnMaster> someone should make a TC language based on "oko"
20:51:53 <AnMaster> and not just a bf in a thin wrapper
20:52:20 <ehird> only oklopol could, and he won't because that's sacrelige
20:52:22 <AnMaster> a bf lookalike*
20:52:38 <oklopol> okokokokoko
20:52:43 <AnMaster> ehird, then his followers should do it
20:52:48 <oklopol> i was thinking about one at some point
20:52:54 <AnMaster> oklopol, really?
20:52:57 <ehird> AnMaster: no, it would be inferior
20:53:05 <ehird> nothing can truly capture oko apart from itself.
20:53:15 <AnMaster> interesting
20:53:18 <AnMaster> go ahead...
20:53:31 * AnMaster backs away slowly
20:53:35 <oklopol> AnMaster: yes, but it was more weird than it was interesting; it was more like an elaborate prng than a programming language
20:53:56 <ehird> AnMaster: you see, an alien called Xenu...
20:54:10 <AnMaster> oklopol, heh
20:54:16 <AnMaster> ehird, argh!
20:54:43 <ehird> ...made a Time Cube, which encompasses all 4 corners of spacetime, and...
20:54:59 <AnMaster> ...
20:55:01 <AnMaster> oh my
20:55:50 <ehird> ...dropped it as a bomb on to Earth, and the Mayans were left with traces of the magic, predicting that in 2012...
20:56:09 <AnMaster> ...we would run out of ipv4?
20:56:28 <ehird> ... kind of.
20:56:37 <AnMaster> ehird, what had you planned to say?
20:56:54 <ehird> I was trying to tie it to Christianity.
20:56:56 <ehird> Or buddhism
20:56:59 <AnMaster> I see
20:57:00 <ehird> Or mormonism
20:57:01 <kerlo> ...therefore, God exists and the theory of evolution is false.
20:57:07 <ehird> kerlo: Exactly.
20:57:11 <AnMaster> hah
20:58:37 <ehird> Christians don't write genetic algorithms; they intelligently design them.
20:59:16 <AnMaster> intelligent design algorithm?
20:59:32 <oklopol> sounds awesome
20:59:33 <oklopol> or not
20:59:36 <oklopol> dunno
20:59:47 <AnMaster> ehird, actually genetic ones tend to not evolve the actual algorithm, just the parameters
20:59:56 <AnMaster> or fudge factors
21:00:09 <ehird> AnMaster: elders _|_
21:00:16 <AnMaster> ehird, ?
21:00:46 <oklopol> hahaha fudge factory you mean the ass? :D
21:01:33 <AnMaster> I didn't
21:01:38 <AnMaster> maybe ehird did
21:04:52 <ehird> "Scheme seemed closer to the (register) machine than C, and it seemed like a nice alternative to assembly language."
21:05:34 <AnMaster> ehird, source
21:05:42 <ehird> anonymous.
21:05:49 <AnMaster> ehird, well where did you get it...
21:05:55 <ehird> the internet.
21:05:59 <AnMaster> ehird, link?
21:06:06 <ehird> http://internet.com/
21:06:10 <AnMaster> ...
21:06:25 <AnMaster> ehird, that exists
21:11:18 -!- BeholdMyGlory has quit (Remote closed the connection).
21:12:48 <ehird> ais523: has the underhanded c contest disappeared?
21:13:00 <ais523> ehird: no
21:13:04 <ehird> http://underhanded.xcott.com/
21:13:06 <ehird> sure?
21:13:09 <ais523> there was a slashdot article about the IOCCC disappearing
21:13:15 <ais523> Xcott himself showed up on the comments
21:13:23 <ehird> but the site is gone.
21:13:31 <ais523> what, really?
21:13:37 <ehird> http://underhanded.xcott.com/
21:13:40 <ehird> i did just link you.
21:13:42 -!- BeholdMyGlory has joined.
21:13:56 <ais523> it doesn't look gone to me, just broken
21:14:29 <AnMaster> yeah
21:14:36 <ehird> broken = gone
21:14:43 <ehird> the5k.org has been broken for years; it's gone
21:14:47 <AnMaster> email him
21:14:59 <AnMaster> or her
21:15:02 <ehird> yeah with my psychic email guessing powers.
21:15:10 <AnMaster> ehird, don't know his email?
21:15:10 <ehird> also, I imagine he knows.
21:19:20 <ehird> I hate hate hate how ioccc's .c links don't open in the browser.
21:19:31 <ais523> your browser is misconfigured, then
21:19:45 <ais523> unless it's sending as application/octet-stream for some reason
21:19:50 * ais523 glares at paste.eso-std.org
21:19:57 <ehird> I beg to differ: Content-Type: text/x-csrc
21:19:58 <AnMaster> ais523, indeed
21:20:02 <ehird> that's not even a valid content type
21:20:05 <ais523> wtf?
21:20:07 <ehird> also, you liked it well enough before AnMaster complained about it
21:20:09 <ais523> ok, why is it using that type?
21:20:12 <ais523> and yes, I liked it
21:20:18 <ais523> I was trying to point out you were being inconsistent
21:20:19 <ehird> ais523: ioccc.org's server is misconfigured, then.
21:20:23 <ais523> yes, agreed
21:20:24 <AnMaster> ais523, indeed
21:20:28 <ais523> possibly both, actually
21:22:28 <ehird> what I wouldn't give for mkcd() { mkdir $1; cd $1 }
21:22:31 <ehird> oh wait, I just did it.
21:22:49 <ais523> I hardly ever mkdir
21:22:54 <ais523> so mkcd isn't all that useful
21:24:12 <ehird> so, the vast majority of ioccc programs can't be compiled by default. :D
21:25:05 <ais523> they're shipped with makefiles
21:25:12 <ais523> and yes, you do need to use the makefile normally
21:25:17 <ais523> or at least copy the options by hand
21:25:19 <ehird> yes, but they fail with the makefile
21:25:19 <ais523> -D options are very common
21:25:25 <ehird> I used the toplevel recursive make
21:25:29 <ehird> and most of them failed badly
21:25:39 <ais523> what sort of error messages?
21:25:45 <ehird> syntax errors, etc
21:25:55 <AnMaster> ehird, a lot of them are due to traditional C
21:25:59 <AnMaster> pre-ANSI
21:25:59 <ehird> yes
21:26:15 <AnMaster> ehird, -traditional-cpp to GCC may help
21:26:27 <ais523> the catchall -traditional will probably work better
21:26:35 <ais523> to handle pre-ANSIisms in the source code itself
21:26:39 <ehird> wow, 2004/arachnid is awesome
21:26:40 <AnMaster> ais523, both do the same according to man gcc here
21:26:44 <ais523> many of the older programs have ansified versions
21:26:48 <AnMaster> -traditional
21:26:48 <AnMaster> -traditional-cpp
21:26:48 <AnMaster> Formerly, these options caused GCC to attempt to emulate a pre-standard C compiler. They are now only supported with the -E
21:26:48 <AnMaster> switch. The preprocessor continues to support a pre-standard mode. See the GNU CPP manual for details.
21:26:54 <ais523> ah
21:27:06 <AnMaster> ais523, gcc 4.1.2
21:27:40 <ehird> " see http://bellard.org/ for QEMU (Fabrice Bellard is an IOCCC 2001 winner), "
21:27:41 <ehird> Heh.
21:28:22 <AnMaster> ehird, there is one IOCCC entry that includes a configure
21:28:23 <AnMaster> ...
21:28:31 <AnMaster> iirc "worst abuse of rules"
21:28:33 <AnMaster> for that year
21:29:04 <AnMaster> 2004
21:31:27 <AnMaster> ehird, check that one out
21:31:31 <AnMaster> hibachi
21:31:32 <ehird> i did
21:37:06 <ehird> " * I achieved some additional tightness by '-Dif=while', saved 9 chars "
21:37:06 <ehird> ..
21:38:31 <AnMaster> wh:D
21:38:33 <AnMaster> ehird, :D
21:40:42 * ehird writes OCR program.
21:40:55 <ehird> it will recognize A, C, D and E.
21:41:41 <AnMaster> ehird, why those only?
21:41:56 <ehird> They're the only ones I've calculated OCR-optimization-count vectors for.
21:42:06 -!- jix_ has joined.
21:42:31 <AnMaster> ehird, err, how do you mean?
21:42:45 <ehird> Don't question your elders.
21:42:57 <AnMaster> you are not my elder
21:44:09 -!- MigoMipo has quit ("QuitIRCServerException: MigoMipo disconnected from IRC Server").
21:48:52 <ehird> http://pastie.org/private/qb2tg9bvpnsv2rw2q0ljgg This may or may not work, YMMV.
21:51:53 <AnMaster> mhm
21:52:38 <ehird> If anyone wants to give it a bigger alphabet/write a main()/test it, feel free :P
21:53:29 -!- jix has quit (Read error: 110 (Connection timed out)).
21:53:59 -!- ais523 has quit (Remote closed the connection).
21:57:03 <ehird> AnMaster: I nominate you :P
21:57:47 -!- olsner has quit ("Leaving").
21:57:54 <AnMaster> ehird, thanks but no
21:58:15 <AnMaster> ehird, I'm going to sleep shortly, and your program will just be forgotten
21:58:23 <ehird> Oh irony.
21:58:30 <ehird> Actually, i'm testing it now.
21:58:32 <ehird> So not quite.
21:58:35 <AnMaster> ok
21:59:21 <AnMaster> ehird, I expect unit tests with 100% coverage too! ;P
21:59:30 <ehird> To hell with unit tests.
21:59:31 <AnMaster> ehird, one bug however:
21:59:33 <AnMaster> char *s = "ACDE";
21:59:35 <AnMaster> should be
21:59:39 <AnMaster> const char *s = "ACDE";
21:59:42 <AnMaster> or
21:59:46 <AnMaster> char s[] = "ACDE";
21:59:49 <ehird> AnMaster: I'd run now, before I kill you.
21:59:57 <AnMaster> ehird, what?
22:00:17 <ehird> I don't consider that a bug; you've said it before and I've replied that before, so you do know.
22:04:12 -!- kar8nga has quit (Remote closed the connection).
22:04:19 <AnMaster> ehird, it is against the C standard.
22:04:45 <ehird> That code is invalid C89? I don't believe you.
22:05:32 <AnMaster> ehird, I don't have the C89 spec. I know it breaks C99 technically
22:06:04 <ehird> If any implementation supported C99 I'd agree.
22:18:36 <AnMaster> ehird, you are not allowed to modify that char* = "ABCE" even in C89
22:18:37 <AnMaster> as in
22:18:46 <AnMaster> s[2] = 'G'
22:18:55 <ehird> AnMaster: I don't modify it.
22:19:08 <ehird> But you can't modify a string literal, umm, no shit, I do know c
22:20:16 <fizzie> Which part of C99 it breaks, though?
22:25:28 <AnMaster> fizzie, I don't remember section number
22:25:38 <fizzie> Yes, but what's it about?
22:25:38 <AnMaster> but I do remember reading it
22:25:54 <AnMaster> fizzie, the type of a string literal is const char*, not char*
22:26:02 <fizzie> Well, that's just not true.
22:26:38 <ehird> truth must not get in the way of zealotry!
22:26:46 <AnMaster> fizzie, oh?
22:26:50 <AnMaster> I'm quite sure
22:26:52 <AnMaster> well actually
22:26:56 <AnMaster> const char[length]
22:27:10 <fizzie> 6.4.5 String literals: "-- character sequence is then used to initialize an array of static storage duration and length just sufficient to contain the sequence. For character string literals, the array elements have type char, and are initialized with --"
22:27:11 <AnMaster> and a pointer to one would be const char*
22:27:14 <fizzie> There is no "const" there.
22:27:49 <AnMaster> fizzie, I'm quite sure I read it though
22:27:54 -!- tombom has quit ("Peace and Protection 4.22.2").
22:28:04 <AnMaster> I don't have time to find it now, since I'm going to bed. But I'll look tomorrow
22:28:22 <fizzie> There is even an example about this.
22:29:06 <fizzie> EXAMPLE 5: The following three expressions have different meanings: "foo", (char []){"foo"}, (const char []){"foo"} [I abbreviated the example string a bit here]
22:29:41 <fizzie> "The first always has static storage duration and has type array of char, but need not be modifiable; the last two have automatic storage duration when they occur within the body of a function, and the first of these two is modifiable."
22:30:03 <fizzie> I think that quite clearly is saying that a plain "foo" is of type array of char.
22:30:05 <dbc> Even if a string literal were a const char *, that wouldn't mean that you couldn't initialize a non-const char * to point to one.
22:30:55 <AnMaster> true, you can cast away const
22:31:09 <ehird> AnMaster: ... so why did you say my code was invalid?
22:31:10 <ehird> i see.
22:31:23 <AnMaster> ehird, It looks I misremembered
22:31:32 <AnMaster> unlike you I can admit that.
22:32:02 <ehird> you do realise that I haven't actually denied misremembering once?
22:32:24 <AnMaster> ehird, no, but not admitting you were wrong
22:32:38 <AnMaster> which is same category
22:32:48 <AnMaster> still I'd say it is good practise to use const, to reduce possible bugs.
22:32:56 <ehird> right, right, I forgot reality wasn't actually relevant when saying such things
22:32:57 <AnMaster> for non-trivial programs it helps.
22:33:06 <AnMaster> night
22:33:14 <fizzie> All this proves is that the people writing C standards are a bunch of sissies, for not having the balls to change the type of string literals.
22:36:15 -!- jix_ has quit ("...").
22:37:15 <fizzie> Say what you want about C++, at least it has const char string literals.
22:48:04 -!- BeholdMyGlory has quit (Remote closed the connection).
22:56:43 -!- BeholdMyGlory has joined.
23:00:32 -!- BeholdMyGlory has quit (Remote closed the connection).
23:17:31 -!- FireFly has quit ("night").
23:22:24 -!- BeholdMyGlory has joined.
23:22:50 <ehird> baguette
23:24:33 -!- BeholdMyGlory has quit (Remote closed the connection).
23:24:48 -!- BeholdMyGlory has joined.
23:27:46 -!- BeholdMyGlory has quit (Remote closed the connection).
←2009-03-02 2009-03-03 2009-03-04→ ↑2009 ↑all