00:00:05 <ehird> are the parts that do that
00:00:11 <Random832> what if it modifies the cell it loops on?
00:00:24 <ehird> as long as it has balanced < and > and does no IO, you can reduce it trivially
00:01:30 <oerjan> "trivially" may be a bit strong
00:01:46 <ehird> everything is trivial apart from uncomputable things
00:02:12 <oerjan> also, who killed the wiki again?
00:03:27 <oerjan> it always comes back when i complain here
00:05:15 <ais523> <invalid_user_name> What do you mean "even GNU"? GNU is the anti-unix, and have always gone 100% exactly the opposite of unix standards.
00:07:48 <ehird> ais523: it's FUD but it's not totally off..
00:08:14 <ais523> well, even the name claims not to be UNIX
00:08:28 <ais523> it's UNIX-compatible, but does seem to like doing things differently, I'm not sure if that's good or bad
00:08:33 <ais523> in fact, I suspect it's just different
00:10:03 <Random832> what exactly does GNU do differently that you can't find being done three or more different ways across all things that are called unix?
00:10:03 -!- Mony has quit ("Quit").
00:10:34 <ais523> Random832: adding more features than the UNIX things normally have
00:10:35 <ehird> Error: This expression has type unit but is here used with type ('a, 'b) foo
00:10:41 <ehird> so, yeah, that syntax doesn't work :(
00:10:43 <ais523> many people who admire UNIX don't like bloat
00:11:03 <ehird> Random832: ls --help
00:11:17 <ehird> usage: ls [-ABCFGHLPRSTWabcdefghiklmnopqrstuwx1] [file ...]
00:11:27 <ehird> the list is endless
00:11:48 <ehird> look at their _output_
00:11:48 <Random832> (the one place that behavior violates standards is yes --help)
00:11:54 <ehird> also, no, echo --help too
00:12:08 <Random832> no, echo isn't guaranteed to echo back if it's passed an argument beginning with a hyphen
00:12:28 <Random832> (and isn't echo a shell builtin anyway?)
00:12:44 <ais523> Random832: it's a shell builtin but also a program
00:12:54 <ais523> you can deliberately use the non-builtin version by writing /bin/echo
00:12:56 <Random832> yeah, but you can't invoke the program with just "echo"
00:13:06 <Random832> and i don't think /bin/... is guaranteed by the unix standard
00:13:28 <Random832> ("command echo" might be - i'd have to look it up)
00:14:41 <Random832> whatever. BSD is unix and their echo uses -n
00:14:50 <ehird> er, echo -n is standard UNIX
00:15:13 <Random832> http://www.opengroup.org/onlinepubs/007908799/xcu/echo.html
00:15:13 <ehird> http://www.sixwordstories.net/
00:15:29 <ehird> Random832: plan9 supports -n; so it's UNIXy enough for me
00:15:53 <Random832> yeah, well, that just means that violating the unix standard in minor ways is a unix tradition
00:22:00 -!- oerjan has quit ("leaving").
00:34:26 -!- ais523 has quit (Remote closed the connection).
01:14:03 -!- oerjan has joined.
01:32:25 -!- GreaseMonkey has joined.
01:35:38 -!- kerlo has quit (Remote closed the connection).
01:38:02 -!- kerlo has joined.
01:38:38 -!- Asztal has quit (Remote closed the connection).
01:38:43 -!- Asztal has joined.
02:08:08 <Sgeo> How TF was this one discovered? http://www.mezzacotta.net/archive.php?date=-5679392-11-17
02:09:05 <kerlo> What do you mean by "discovered"?
02:09:31 <oerjan> and this time it's no joke :)
02:09:57 -!- comex has quit ("Caught sigterm, terminating...").
02:10:10 -!- comex has joined.
02:10:38 <oerjan> kerlo: it's the oldest entry in mezzacotta's hall of fame
02:11:02 <oerjan> of course traffic was higher in those days. recently the hall of fame doesn't even update daily.
02:11:21 <oerjan> so there were more people to search for it. :)
02:11:36 <oerjan> (or :/ if you look at the current state)
02:12:42 <oerjan> of course if you want to help, just hit the random or best bakes page and vote
02:13:54 <oerjan> DMM explained on forum hall of fame requires >= 50 voters and >= 80% bakedness
02:15:27 <kerlo> Hmm. I think I've suddenly figured out why most of these aren't funny.
02:15:30 <oerjan> the problem appears to be no. voters, as the whole left side > 80%
02:16:37 <oerjan> (the right side lists doesn't seem to exclude hall of fame members)
02:17:04 <oerjan> kerlo: because they're random?
02:22:20 <oerjan> also of course even the things that _were_ funny the first time around tend to be repeated
02:22:32 <oerjan> until they no longer are
02:25:22 * oerjan votes on the upper right list too, since he's there
02:29:12 -!- Random832 has quit (Read error: 110 (Connection timed out)).
03:18:30 -!- CakeProphet has joined.
03:32:20 -!- GreaseMonkey has quit ("Client Excited").
06:07:05 -!- mikkeCA has joined.
06:07:13 -!- mikkeCA has left (?).
06:10:02 -!- Sgeo has quit ("Leaving").
06:52:08 <Asztal> wow, someone decided to go the extra mile with the extra-www thing:
06:52:10 <Asztal> http://www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.m.trainingpacks.co.uk/
06:52:39 <Asztal> ok, it's just parked :(
06:53:12 <Asztal> damn wildcard dns. wonder why it shows with so many wwws in my search result though.
06:54:06 <oerjan> because someone linked to it that way?
06:55:12 <Asztal> yeah, but... still odd (there's many different ones, too)
07:33:50 -!- olsner has joined.
07:35:48 -!- MigoMipo has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:29:41 -!- kar8nga has joined.
09:29:43 <AnMaster> if you want to echo something beginning with - I mean
09:30:59 <AnMaster> MizardX, if you do want to echo (in shell) something starting with - I would recommend using printf instead. Like printf "%s" "-whatever"
09:31:59 <oerjan> i would have assumed there was some option you could just put first
09:32:16 <AnMaster> oerjan, for echo? don't think so
09:32:56 <AnMaster> syntax is: echo [-neE] [arg ...]
09:33:08 <AnMaster> arg can't start with -n -e or -E
09:33:29 <AnMaster> oerjan, the actual rules are rather complex
09:34:06 <AnMaster> (no space really there, but can't send empty line on irc)
09:47:11 <AnMaster> actually not Australian, more like US one
09:48:45 <fizzie> Well, that's for bash's echo. POSIX echo says about options: "The echo utility shall not recognize the '--' argument ...; '--' shall be recognized as a string operand. Implementations shall not support any options."
09:50:08 <fizzie> Specifically it says about the string operans: "If any operand is -n, it shall be treated as a string, not an option." And the escape sequences should be recognized by default.
09:50:15 <fizzie> No-one seems to be doing echo like that, though.
09:53:22 <AnMaster> fizzie, bash have some option to do it iirc
09:53:30 <AnMaster> either compile time or shopt/set
09:54:10 <fizzie> "sh's echo, ksh's echo, and /usr/bin/echo understand the back-slashed escape characters, except that sh's echo does not understand \a as the alert character. In addition, ksh's echo does not have an -n option. sh's echo and /usr/bin/echo have an -n option if the SYSV3 environment variable is set.
09:54:17 <fizzie> csh's echo and /usr/ucb/echo, on the other hand, have an -n option, but do not understand the back-slashed escape characters. sh and ksh determine whether /usr/ucb/echo is found first in the PATH and, if so, they adapt the behavior of the echo builtin to match /usr/ucb/echo".
09:54:21 <fizzie> Echoing is surprisingly complicated.
09:55:03 <AnMaster> what about solaris? iirc sunos is rather old
09:55:12 <fizzie> SunOS 5.10 == Solaris 10.
09:56:04 <fizzie> I guess officially I shouldn't say "SunOS" at all, it's just that the page footer of the man page says "SunOS 5.10 Last change: 17 Jul 2006 1".
09:56:27 <fungot> Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ultrix Ul ...too much output!
09:57:09 * oerjan suddenly wonders why he did that.
09:57:36 <AnMaster> fizzie, what instructions in STRN does fungot use?
09:57:37 <fungot> AnMaster: i'd have hope only if terry gilliam directed it. then write the traditional examples; hello world, factorial, you say sure, why not?
09:58:41 <AnMaster> "you say sure" is a "traditional example"?
09:59:22 <fizzie> AnMaster: Hmm. I think at least A, C, F, G, L, N, P, S and V; but maybe not all of them very frequently.
09:59:36 <AnMaster> fizzie ah I recently improved N performance
10:00:29 <AnMaster> when does IWC update now again? wasn't it 11:00?
10:01:40 <AnMaster> oerjan, someone not using ntp?
10:01:56 <oerjan> no, i just don't quite remember
10:02:25 <oerjan> "at 03:11 Pacific Time, if you're curious - and no, no reason"
10:02:40 <AnMaster> oerjan, where? I did look at faq just a moment ago...
10:04:14 <fizzie> N is called a number of times for each IRC message (because L with longer-than-the-string-itself argument wasn't so well-defined), but I don't think that's a performance-critical code path. In fact I don't think the whole bot is very performance-critical, since even the babble-generator response time is quite reasonable. The underload interp uses N in almost every instruction (sometimes twice), so there it might help.
10:05:31 <AnMaster> fizzie, it also slightly altered how N works on empty stack (still following the spec though, but that doesn't mean much for RCS fingerprints...)
10:06:02 <AnMaster> since now it doesn't actually pop the string at all, just scan the stack and push the length
10:07:15 <AnMaster> a few other instructions that popped strings are also faster now thanks to stack_pop_string returning string length (thus avoiding a call to strlen())
10:08:05 <AnMaster> also I don't recommend using STRN on any data that doesn't fit in an unsigned byte for now, I have plans to fix that soon (long standing issue this)
10:08:55 <AnMaster> I mean, avoid out of byte-range values in the cells you operate on with STRN
10:09:23 <fizzie> I don't think my strings have any strange values, since it's mostly just IRC inputs/outputs anyway.
10:10:12 <AnMaster> it is possible with some values popped strings may contain more than one 0 byte due to the conversion from int32_t*/int64_t* to unsigned char*
10:10:31 <AnMaster> I'm writing a fungecell string library atm to avoid this
10:11:16 <AnMaster> fizzie, btw have you ever looked at the glibc strlen()? It does some crazy stuff
10:11:28 <AnMaster> like scanning the string one word at a time
10:12:02 <fizzie> Actually, I think I've seen something like that in some bit-tricks page. I don't think I've specifically looked at glibc strlen, though.
10:12:42 <fizzie> ARM has some opcodes to help dealing with "32-bit word which is actually part of a string of octets" data, IIRC.
10:14:16 <AnMaster> fizzie, glibc was doing some weird masking tricks and such
10:14:41 <AnMaster> http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/libc/string/strlen.c?rev=1.1.2.1&content-type=text/plain&cvsroot=glibc
10:15:06 <fizzie> Actually I think it was the SuperH arch and not ARM that I was remembering.
10:16:02 <AnMaster> fizzie, it seems strange, with false positives...
10:17:28 <AnMaster> it could have been done even better in asm (strlen that is)
10:19:03 <AnMaster> fizzie, which is actually done for x86:
10:19:05 <AnMaster> http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/libc/sysdeps/i386/strlen.c?rev=1.8&content-type=text/plain&cvsroot=glibc
10:20:04 <fizzie> Yes, it was SuperH. There's at least CMP/STR which is true (well, sets T flag to 1) when two registers have at least one equivalent byte; so 0x11223344 and 0x00220000 would compare to true. It can be used to do strlen like that by using 0 as the other operand; that way it does "set T if there's a null byte in this word".
10:21:05 <AnMaster> http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/libc/sysdeps/x86_64/strlen.S?rev=1.2&content-type=text/plain&cvsroot=glibc
10:21:37 <AnMaster> fizzie, if glibc supports superh then it is probably there
10:22:12 <AnMaster> http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/libc/sysdeps/sh/strlen.S?rev=1.3&content-type=text/plain&cvsroot=glibc <-- maybe sh is superh?
10:22:24 <fizzie> Yes, I just found that.
10:23:08 <fizzie> mov #0, r3 ... cmp/str r3, r1; looks like they do it like that.
10:23:57 <fizzie> "bf/s 2b" does a delayed branch, so it actually executes that "add #4, r2" under it before branching.
10:24:20 <AnMaster> fizzie, well it isn't odd that strlen() is optimised...
10:25:33 -!- oerjan has quit ("Wait, IFPOD has net access?").
10:31:42 <AnMaster> fizzie, http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/libc/sysdeps/x86_64/memcpy.S?rev=1.4.2.3&content-type=text/plain&cvsroot=glibc is crazy
10:32:39 <fizzie> Heh, that's quite a lot of code for different-sized memory blocks.
10:34:09 <AnMaster> http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/libc/sysdeps/x86_64/memset.S?rev=1.2.2.7&content-type=text/plain&cvsroot=glibc
10:34:17 <AnMaster> .quad L(Got0), L(P1Q0), L(P2Q0), L(P3Q0)
10:34:17 <AnMaster> .quad L(P4Q0), L(P5Q0), L(P6Q0), L(P7Q0)
10:35:04 <AnMaster> this meset is a lot of unrolled loops it seems
10:38:29 -!- lifthrasiir has joined.
10:39:52 <fizzie> Kernel's arch/x86/lib/memset_64.S is a lot simpler. I don't think I happen to have a copy of gcc sources, but doesn't it also have builtin memset?
10:40:43 <AnMaster> fizzie, those __builtins in gcc are crazier iirc, they expand to inline asm optimised for this specific usage case
10:40:59 <AnMaster> sometimes they end up in libgcc.so.1 instead
10:42:14 <AnMaster> glibc's memset need to check for alignment, while the builtin gcc memset at least sometimes could avoid that
10:44:00 <AnMaster> fizzie, also sometimes a loop could be even more effective: auto vectorisation and auto parallelisation
10:44:13 <AnMaster> don't know if gcc supports the latter yet
10:46:41 -!- Judofyr has joined.
11:02:25 -!- FireFly has joined.
11:39:03 -!- BeholdMyGlory has joined.
11:47:27 -!- Hiato has joined.
11:47:39 -!- Hiato has quit (Client Quit).
11:55:57 -!- FireFly has quit ("---").
12:07:12 -!- kar8nga has quit (Remote closed the connection).
12:13:18 -!- BeholdMyGlory has quit (Remote closed the connection).
12:17:26 -!- BeholdMyGlory has joined.
12:32:58 -!- kar8nga has joined.
13:00:36 -!- kar8nga has quit (Remote closed the connection).
13:49:02 <AnMaster> I just found that http://www.google.com/codesearch is actually useful heh
13:50:02 <AnMaster> even better than grepping in a local copy in fact...
13:59:16 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
14:00:55 -!- Judofyr has joined.
14:12:25 -!- ais523 has joined.
14:26:44 <AnMaster> is this well defined behaviour or not: ip->delta = (fungeVector) { ip->delta.y, -ip->delta.x };
14:27:07 <AnMaster> ais523, really? it won't end up reading after writing part or such?
14:27:37 <ais523> there's a general rule that you can't read and write the same variable between sequence points, but there's an exception
14:27:40 <ais523> and you hit the exception
14:27:40 -!- Judofyr has quit (Connection timed out).
14:27:46 <AnMaster> ais523, oh what is this exception?
14:27:53 <ais523> the exception is that you are allowed to if the read is necessary to calculate what's being written
14:28:02 <ais523> i.e. that the new value depends on the old value
14:28:18 <ais523> it's why statements like i = i + 1; are legal
14:28:28 <AnMaster> ais523, but does this apply in this case?
14:28:33 <AnMaster> considering it is part of the struct
14:31:34 -!- Judofyr has joined.
14:33:13 <AnMaster> ais523, what if I have different pointer that alias each other
14:35:59 <AnMaster> no ping reply.... guess he timed out
14:37:19 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
14:42:44 -!- ais523 has joined.
14:50:30 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
14:54:45 <ehird> brb, /cycling to get client synced up with names list
14:54:45 -!- ehird has left (?).
14:54:48 -!- ehird has joined.
14:54:57 <ehird> ais523 has joined (n=ais523@147.188.254.121)
14:54:57 <ehird> 14:50 3 has left (Read error: 104 (Connection reset by peer))
14:55:14 <ehird> it's meant to be ais523 has left
14:55:20 <ehird> my bouncer-quicklog-timestamp-regex is fscked up
14:55:30 <ehird> my bouncer-quicklog-timestamp-regex is fscked up
14:55:31 <AnMaster> * ais523 has quit (Read error: 104 (Connection reset by peer))
14:55:31 <AnMaster> * ais523 (n=ais523@147.188.254.121) has joined #esoteric
14:55:31 <AnMaster> * ais523 has quit (Read error: 104 (Connection reset by peer))
14:55:36 <ehird> yes, it should say left IRC
14:55:42 <ehird> which is what limechat says for quit
14:55:50 <ehird> and also, um, ais523, not 3
14:56:07 <ehird> elsif body =~ /^([^ ])+ has left(?: IRC)? \(#{BOUNCER_TIME_REGEXP}(.+)\)$/
14:56:11 <ehird> where BOUNCER_TIME_REGEXP = /\[(\d\d:\d\d):\d\d\] /
14:56:14 <ehird> wonder what the issue is
14:57:10 <ehird> with some python stuff
14:57:20 <ehird> I think 1.9 uses oniguruma
14:57:28 <ehird> http://www.geocities.jp/kosako3/oniguruma/
14:57:55 <ehird> it's common in japan
14:58:08 <ehird> they all use a weird hosted blog software called hatena diary, too
14:58:22 <AnMaster> really? makes me think of 1997 websites..
14:58:46 <ehird> japan's internetscape is weird :P
14:59:02 <ehird> ha, I was right, if you go to the root of that guy's homepage
14:59:03 <ehird> http://d.hatena.ne.jp/kkos/
15:00:08 <ehird> http://www.geocities.jp/kosako3/
15:00:17 <ehird> hatena diary is a hosted service
15:00:19 <ehird> (it's on their site)
15:00:29 <ehird> every japanese programmer uses it, I swear
15:01:00 <ehird> anyway hm maybe it is not ?:
15:01:19 <AnMaster> I mean http://d.hatena.ne.jp/kkos/ doesn't look very weird
15:01:39 <ehird> AnMaster: i just mean
15:01:42 <ehird> the general landscape of japan's internet
15:01:47 <ehird> geocities is common and not retro at all
15:01:56 <ehird> everyone under the sun uses one odd blog service
15:02:51 <ehird> Makes re into a group without generating backreferences.
15:02:56 <ehird> hm, so that is right
15:04:40 <ehird> well let's hope that workd
15:05:04 -!- ais523 has joined.
15:06:13 <AnMaster> <AnMaster> ais523, what if I have different pointer that alias each other
15:06:13 <AnMaster> <AnMaster> is it will defined then too?
15:07:07 <ais523> I don't think you have guarantees with aliasing
15:07:50 <ais523> you definitely don't if they're marked restrict, not sure about the unrestricted case
15:08:07 <AnMaster> ehird, ask for oerjan's fly swatter, fly swatters tend to work ok on most bugs too
15:08:29 <ehird> ais523: you came up as 'HH:MM 3 left (...)'
15:08:35 <ehird> instead of 'HH:MM ais523 left IRC (...)'
15:08:38 <ehird> due to a regex bug
15:09:05 <AnMaster> ehird, so what is the corrected regex?
15:09:15 <ehird> elsif body =~ /^([^ ])+ has left( IRC)? \(#{BOUNCER_TIME_REGEXP}(.+)\)$/
15:09:18 <ehird> I am not certain it will work
15:10:04 <AnMaster> ehird, some regex flavours allows naming the regex groups
15:10:16 <ehird> not ruby's unfortunately
15:10:56 <AnMaster> ehird, then I would not use "( IRC)?" but rather two different regexes, one for IRC and one without IRC
15:11:16 <ehird> that's duplication
15:11:18 <AnMaster> doesn't the numbers change if there is any " IRC" to match?
15:11:27 <ehird> it just becomes nil
15:11:31 <ehird> which stringifies to ""
15:11:57 <AnMaster> ehird, hm so how does it work in groups like: (a([a-z]+))*
15:12:07 <AnMaster> which number does the inner group get ;P
15:12:45 <ehird> you can't repeat groups
15:12:48 <ehird> irb(main):001:0> "aaa" =~ /(a)+/
15:12:49 <ehird> irb(main):002:0> $1
15:12:53 <ehird> irb(main):003:0> $2
15:12:57 <ehird> same in most regex flavours
15:13:08 <AnMaster> ehird, iirc some flavours allows repeating
15:13:11 <ehird> well you can repeat them
15:13:15 <ehird> you just don't get the group
15:13:25 <AnMaster> I mean, so you *do* get the group
15:13:46 <ehird> ais523: do many people use ocaml's OOP?
15:13:49 <ehird> I haven't seen it used once
15:14:03 <AnMaster> ehird, anyway the right way to solve this is writing a lexer of course
15:14:06 <ehird> hmm, i just saw it
15:14:19 <AnMaster> also why are you parsing elsif body =~ /^([^ ])+ has left( IRC)? \(#{BOUNCER_TIME_REGEXP}(.+)\)$/ instead of parsing the raw messages from the bouncer?
15:14:33 <ais523> I'm not exactly an OCaml expert...
15:14:37 <AnMaster> I guess they would be a lot easier to match
15:14:42 <ehird> AnMaster: because I can't get to that
15:14:49 <ehird> by the time it gets parsed into the timestamp, it's parsed the rest
15:14:57 <ehird> this is in Log#new
15:15:09 <AnMaster> ehird, even xchat allows that... and xchat's scripting support sucks
15:15:22 <ehird> yes, I _can_ do it
15:15:26 <ehird> but it's not supported
15:15:33 <ehird> this way is simpler
15:15:40 <ehird> and I'd prefer not to mess with the direct messages from my bouncer
15:15:45 <ehird> just how they're displayed & logged
15:15:51 <ehird> this isn't a script
15:15:54 <ehird> I'm just modifying LimeChat
15:16:01 <ehird> (/Applications/LimeChat.app/Contents/Resources/log.rb)
15:16:18 <AnMaster> ehird, so when you upgrade LimeChat you have to do it all again?
15:16:33 <ehird> I didn't have to change or remove any lines
15:16:53 <AnMaster> even so. Using existing scripting hooks tends to be better when possible
15:16:55 <ehird> they only depend on @nick, @line_type, @body and @time
15:17:00 <ehird> AnMaster: there isn't any. also, it took 5 minutes.
15:17:12 <ehird> a script would probably require extra cruft to hook into that.
15:17:12 <AnMaster> of course there is a raw hook I can use for almost everything in ERC...
15:17:22 <ehird> does ERC make you toast in the morning
15:17:30 <ehird> ERC ERC ERC ERC ERC PSOX PSOX PSOX PSOX PSOX
15:17:32 <AnMaster> ehird, no, why would it be in ERC?
15:17:41 <ehird> why would ERC be in emacs, a text editor
15:17:50 <AnMaster> ehird, why would doctor be in emacs
15:18:20 <AnMaster> ehird, emacs isn't just a text editor. It is an IDE.
15:18:50 <ehird> why would ERC be in emacs, an integrated development environment
15:18:56 <AnMaster> Integrated Digital Environment
15:18:59 <ehird> answer: emacs is a bloated pos
15:19:13 <AnMaster> I didn't restrict myself to Development...
15:19:40 <AnMaster> ehird, also what about freenode access? Very important for development
15:20:29 <AnMaster> idea: hooks that allows you to connect to freenode and join the correct channel based on current buffer mode
15:21:46 <AnMaster> ais523, well I could write a elisp script for it I guess
15:23:40 <ehird> <AnMaster> Integrated Digital Environment
15:23:42 <ehird> <AnMaster> I didn't restrict myself to Development...
15:23:44 <ehird> http://xkcd.com/169/
15:24:51 <AnMaster> ehird, I forgot how that joke was supposed to make sense
15:25:24 <AnMaster> $ grep -E 'gry$' /usr/share/dict/words
15:26:01 <ais523> and "meagry" is meant to be the third
15:28:05 <AnMaster> ais523, the answer in xkcd still doesn't make sense
15:34:25 <ehird> aha, ocaml message calls are #
15:35:35 <ehird> dunno if you can call methods on aclass though
15:39:15 -!- oerjan has joined.
15:40:55 <oerjan> ^ul (oerja)S((n)S:^):^
15:40:56 <fungot> oerjannnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn ...too much output!
15:48:08 -!- jix has joined.
15:51:40 <oerjan> <AnMaster> ais523, the answer in xkcd still doesn't make sense
15:51:55 <oerjan> the point is that the teller _botched_ the joke
15:53:09 <oerjan> also, that it's a well-known joke that is botched as often as not, leading to people actually thinking there should be a third word ending in -gry
15:53:46 <oerjan> and that people who botch jokes that badly deserve to have their hands cut off ;/
15:56:36 <kerlo> My /usr/share/dict/words only has angry and hungry.
15:56:57 <kerlo> And by "my", I mean someone else's.
15:57:15 <kerlo> Mine also only has angry and hungry.
15:57:28 <ais523> AnMaster: it's system headers
15:57:35 <ais523> they're allowed to do weird nonstandard things
15:57:39 <AnMaster> ais523, non-standard thing yeah
15:57:46 <AnMaster> ais523, but what does it mean?
15:57:50 <ais523> I think that it tells gcc to include the limits.h that's found in the search path after this limits.h
15:57:55 <ais523> as in, include the second choice
15:58:31 <AnMaster> there is a limits.h there too though
15:58:42 <AnMaster> so I guess "not in this directory" rather
15:59:49 <AnMaster> ais523, I'm also pretty sure I saw #add_system somewhere to add a system include path.. might not have been in GCC
16:01:17 <MizardX> ^ul ((.)S)((X)S::^)((d)S::^)((r)S::^)((a)S::^)((z)S::^)((i)S::^)((M)S::^)^
16:01:17 <fungot> Miiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii ...too much output!
16:02:44 <ehird> hmm, okay, I think I've figured out ocaml's object sysem
16:02:56 <ehird> main problem with obj-c s that everything is ('a option), i.e. any object can be nil
16:02:59 <ehird> which is irritating for this
16:03:21 <ehird> wonder if gen_bridge_metadata can analyse that
16:06:41 * ehird digs through 3415 lines of automatically generated xml
16:09:19 <ais523> this game I installed yesterday has a Brainfuck-based level
16:09:41 <ais523> it has levels based on all sorts of things, it seems there must be someone who knows brainfuck who submitted a level
16:11:39 <ehird> ha, I guessed Enigma
16:11:58 <ehird> i think it's the first game I played on linux, years ago
16:12:10 <ais523> level 103 in the Enigma 1.00 new pack
16:13:48 -!- jix_ has joined.
16:14:51 <ehird> ais523: 1.00 not 1.01?
16:15:22 <ais523> there's a 1.01 new pack too, but the BF level is in the 1.00 pack
16:15:57 <ehird> <method type='v24@0:4@8@12@16@20' selector='parser:foundExternalEntityDeclarationWithName:publicID:systemID:'/>
16:16:01 <ehird> ^ most helpful xml evar
16:18:15 <ehird> wow, this will be hard :D
16:19:00 <ehird> ais523: it actually interprets the BF..
16:20:42 -!- MigoMipo has quit (Read error: 110 (Connection timed out)).
16:20:58 <ais523> oh, most of them are evil
16:21:15 <ais523> but yes, #113 has several layers of evil
16:22:54 <ais523> I'm not very good at Enigma
16:23:00 <ais523> I think it should have more easier levels for me to feel good about
16:23:10 <ehird> that was pretty much my thoughts when I played it
16:23:15 <ais523> also, I don't really have the concentration to solve most of the harder puzzle levels
16:23:17 <ehird> I'm good at the Meditation levels, but that's it
16:23:29 <ais523> nor the dexterity to solve most of the harder dexterity levels
16:24:19 <ais523> by the way, some of the levels can be solved very quickly by moving very fast at random rather than trying to be intelligent
16:24:55 <kerlo> "No Meditation" is an interesting level.
16:25:14 <kerlo> Can Enigma be controlled with a joystick?
16:25:34 <ais523> kerlo: you know it too?
16:25:37 <ais523> wow, it really gets around
16:26:19 <ehird> anmaster knows it too
16:26:30 <ehird> you control a ball with your mouse.
16:26:35 <ehird> and you have to.. stuff.
16:26:41 <ehird> the basic ones are just matching up colour things.
16:26:45 <ehird> but it gets a lot harder.
16:26:56 <ehird> oklopol: http://www.nongnu.org/enigma/
16:26:58 <AnMaster> <ehird> anmaster knows it too <-- yes enigma is nice
16:27:06 <ehird> also, I propose we designate Enigma as the official game of #esoteric
16:27:13 <kerlo> I think I know it from its inclusion in a certain Linux distribution.
16:27:51 <AnMaster> ehird, also what about freeciv?
16:28:10 <ehird> also, give evidence that a lot of #esoteric like simutrans or freeciv and I'll reconsider
16:28:16 <AnMaster> ehird, and both ais523 and me plays nethack
16:28:17 <ehird> but enigma is esoteric and we have a lot of people here liking it
16:28:23 <kerlo> Ooh, now I have to apt-get freeciv as well.
16:28:33 <ehird> we have 4 for enigma, atm, + maybe oklopol
16:28:52 <AnMaster> I'm against enigma, I haven't actually played it for about 2 months
16:29:05 <kerlo> Huh. Do I want SDL or GTK?
16:29:19 <AnMaster> kerlo, they are two different things...
16:29:30 <AnMaster> it makes no sense to replace them with each other
16:29:30 <ehird> thanks AnMaster, I'm sure we'd never have guessed
16:29:43 <ehird> presumably there's freeciv-{sdl,gtk}
16:29:43 <kerlo> There's an SDL version and a GTK version.
16:30:00 <AnMaster> ehird, one is a GUI toolkit, the other is a media library. sure some feature may be common, but most aren't
16:30:18 <AnMaster> for example sdl-sound? Nothing like it in gtk iirc
16:30:20 <ehird> learn to read, please...
16:30:30 <AnMaster> and I said: That makes no sense
16:30:37 <ais523> kerlo: it's unlikely to make a whole lot of difference
16:30:41 <ehird> 16:29 kerlo: There's an SDL version and a GTK version.
16:30:43 <AnMaster> even if it is like that it still makes no sense
16:30:47 <ehird> OF THE GAME YOU IDIOT! Aaaargh
16:30:49 <ais523> AnMaster: obviously it's referring to which toolkit is used to render the graphics
16:30:50 <ehird> of course it makes sense!!
16:31:01 <ais523> because SDL and GTK might be different things
16:31:02 <kerlo> Finally, I must install NetHack.
16:31:11 <ais523> but what they both have in common is that they can both be used to render graphics
16:31:25 <kerlo> Oh great, now there are four of them.
16:31:28 <AnMaster> kerlo, flightgear (flight simulator, no shooting, just very geeky)
16:31:43 <ehird> flight simulators are the epitome of boring
16:31:46 <kerlo> X11, qt, LISP, or console?
16:31:47 <AnMaster> but I doubt anyone without a high end GPU would like it
16:31:53 <ehird> kerlo: nethack: console
16:31:58 <AnMaster> kerlo, lisp? nethack-lisp? No!
16:32:03 <ais523> not lisp as that only works with the emacs nethack client
16:32:07 -!- jix has quit (Read error: 113 (No route to host)).
16:32:12 <ehird> i was getting _all excited_
16:32:24 <ais523> installing x11 installs both the graphical and console versions
16:32:25 <kerlo> Does the X11 one include everything the console one does?
16:32:27 <ais523> or you can just install console
16:32:31 <ehird> kerlo: X11 one is useless
16:32:34 <ehird> so just install console
16:32:40 <kerlo> I'm going with X11. :-P
16:32:40 <ais523> the graphical one isn't all that good, thoguh
16:32:50 <ehird> graphical nethack is stupid
16:32:57 <ehird> kerlo: you're just wasting diskspace
16:33:04 <AnMaster> text based nethack == more realism
16:33:22 <AnMaster> but they should start with unicode
16:33:51 <kerlo> How many kilobytes am I wasting?
16:33:52 <AnMaster> btw plain nethack is not good, you need to menucolor patch IMO
16:34:02 <ais523> AnMaster: nobody /needs/ menucolors
16:34:02 <ehird> plain nethack is fine yo.
16:34:07 <ais523> people just get used to it
16:34:13 <ais523> AnMaster: what do you mean "even NAO"
16:34:24 <ais523> why are you assuming that NAO is less patched than the average?
16:34:31 <AnMaster> ais523, there are lots of nice patches that NAO lacks iirc
16:34:45 <ehird> fuck nethack patches
16:34:48 <ehird> i hate wimpmodes :P
16:35:04 <AnMaster> there are patches making it harder too
16:35:52 <kerlo> apt-get install oh-and-patch-it-for-me-while-youre-at-it
16:35:56 <AnMaster> hm freedroid-rpg? needs a decent GPU as well as CPU
16:35:57 <ehird> making nethack harder is ... like. .. um ... making the holocaust more horrific.
16:36:17 <ais523> ehird: NetHack isn't all that hard
16:36:21 <ehird> making the holocaust more awesome?
16:36:28 <ehird> the holocaust was pretty boring
16:36:37 <ais523> AnMaster: actually, Spork is more interesting in terms of "hard"
16:36:45 <ais523> Spork has more consistent difficulty than vanilla
16:36:58 <AnMaster> ais523, true. slashem is quite unbalanced. for example val in slashem is too easy
16:36:59 <ais523> it's a game full of all sorts of random interesting stuff
16:37:29 -!- tombom has joined.
16:37:42 <AnMaster> ais523, there is some other one... now what was the name
16:38:06 <AnMaster> not a nethack clone, other rougelike
16:38:13 <AnMaster> and not angband or moria or such
16:38:39 <AnMaster> ah yes... dungeon crawl stone soup
16:38:45 <AnMaster> http://crawl-ref.sourceforge.net/
16:39:01 <ais523> crawl's rather different to nethack
16:39:10 <ais523> it's more about combat, whereas the combat's secondary in nethack
16:39:10 <AnMaster> ais523, I would still say it is a rougelike
16:39:19 <ais523> well, yes it's a roguelike
16:39:31 <ais523> but crawl and nethack are sort-of opposite ends of the roguelike spectrum
16:39:39 <AnMaster> ais523, tell that to all those damn newts that show up when you have 1 hitpoints in nethack :P
16:39:49 <ais523> AnMaster: just tell them "Elbereth"
16:39:57 <kerlo> Okay. What happens when your desktop has a remote window, you click the close button, and it asks you whether you want to force quit the application?
16:40:01 <AnMaster> ais523, also stop spoiling it...
16:40:18 <ais523> AnMaster: that isn't a spoiler, it's in the manual
16:40:30 <ais523> you can't seriously claim that things in the manual are spoilers!
16:40:55 <AnMaster> ais523, anyway the E word helps against most stuff (everything? isn't there some exception for @?)
16:41:34 <ais523> but telling you what it didn't would be a spoiler
16:41:43 <kerlo> Does X11 have a way to tell the system a client is on to kill the client?
16:41:45 <ais523> and the manual's the guidebook, it should come with every nethack distribution
16:42:45 <kerlo> Well, I had a window open from a remote server, and a window opened offering me to "force quit" it.
16:43:01 <AnMaster> ais523, ah. I rather stuff you get from the oracle when asking for large and not having the money
16:43:28 <kerlo> I don't remember whether the force quit window was local or remote, but I think it was local.
16:44:45 <ehird> ais523: #180 is fun
16:47:59 * kerlo notes that ehird isn't talking about xkcd #180
16:52:18 * kerlo notes that the Enigma options say nothing about a joystick
16:54:55 * kerlo notes that the joystick doesn't do anything in Enigma
16:57:18 <oklopol> when does it get interesting?
16:57:46 <ais523> the tutorial's just designed to teach you the game
16:58:01 <ais523> but any of the other puzzle packs get insanely difficult on average from about the third puzzle onwards
16:58:13 <oklopol> "the tutorial"? "puzzle packs"? i see, i see
16:58:33 <ais523> do the BF puzzle, if you like
16:58:40 <ais523> that's insanely hard for most people but should be easy for esolangers
16:58:58 <ais523> puzzle #103 in the Enigma 1.00 new pack
17:02:19 <oklopol> that was interesting, technically, yes, but i mean something that's interesting to play
17:02:33 <ehird> just pick levels at random
17:02:35 <ehird> you'll find something
17:03:03 <oklopol> could you just tell me a hard level?
17:04:05 <ais523> let me look for one that I remember as being particularly hard
17:04:14 <oklopol> well. motion was not fun, but mostly just because of my pad.
17:04:38 <ais523> #38 in Enigma 1.01 new
17:04:52 <ais523> that's one of the dexterity-based puzzles
17:04:58 <ais523> let me look for a hard intelligence-based one too
17:05:16 <ehird> best language evar.
17:05:26 <ehird> enigma changes my colour profile
17:05:59 <AnMaster> <ais523> #38 in Enigma 1.01 new
17:06:12 <ehird> the name of the pack
17:06:15 <ais523> "Enigma 1.01 new" is the name of the puzzle pack
17:07:12 <ais523> I'll suggest 58 in Enigma 1.00 new for an intelligence-based puzzle
17:07:16 <ais523> ehird: well he asked for a hard one
17:07:36 <AnMaster> wasn't it the one where you get crushed?
17:07:48 <ais523> it's a pure speed and memory puzzle
17:07:52 <ais523> but I'm nowhere near fast enough
17:08:22 <ais523> #102 in Enigma 1.00 new also looks like a pretty hard puzzly puzzle
17:08:57 <AnMaster> ais523, have you solved 58 in Enigma 1.00 new (white contrast)?
17:09:34 <ais523> AnMaster: I only started playing yesterday, I haven't done very many...
17:09:54 <AnMaster> that 102 (Keystone) I solved on easy
17:10:11 <ais523> ehird: I haven't figured that one at all
17:10:17 <ehird> it says par 3 seconds
17:10:19 <ais523> and I don't know if it's unsolvable or not
17:10:20 <AnMaster> ehird, thought it was "in 1.00 seconds"?
17:10:22 <ehird> so it must be trivial
17:10:24 <ais523> maybe I'll look at the source
17:10:25 <ehird> but I can't see how
17:10:53 <AnMaster> ehird, yes since when I mouse over it in the level selection list enigma segfaults
17:11:14 <ais523> ehird: look at the ratings
17:11:25 <ais523> that means there's something really obscure but standard on the level
17:11:30 <ais523> puzzles have difficulty ratings
17:11:31 <ehird> where are the ratings
17:11:36 <oklopol> ais523: i don't think i can do that without a mouse
17:11:38 <ais523> pause the game and select level info
17:11:47 <ais523> oklopol: I can't do it even with a mouse
17:12:16 <ehird> ais523: some of the ground looks differen
17:12:42 <AnMaster> ehird, see the two papers there
17:12:52 <ehird> but did you hear what i said?
17:12:54 <ehird> stop spoiling it for us
17:13:02 <ehird> not only can AnMaster not read, he's an ass.
17:13:06 <AnMaster> ehird, I missed the line "don't"
17:13:20 <AnMaster> would have helped on same line
17:13:21 <ais523> I wondered if it was something like that, but didn't want to mess with NTP to check
17:13:23 <ehird> i forgot you have 2 lines of scrollbars,
17:13:45 <ais523> ehird: writing one word a line does make what you say rather hard to read...
17:14:03 <ehird> ais523: i was being annoying so people paid attention because reading it was harder, and thus the don't would be noticed.
17:14:09 <AnMaster> ais523, I just checked level source
17:14:26 <ais523> ehird: I tend not to read people talking like that at all
17:14:30 <ais523> it hits my mental spam filters
17:14:36 <ehird> ais523: you must have fun talking to comex
17:14:37 <oklopol> "one more and you won't get this hammer if you don't need it anynmore!" <<< for some unknown reason the texts are in finnish, what does this mean?
17:14:54 <ais523> oklopol: it means that someone's translated the game into finnish
17:15:01 <AnMaster> oklopol, export LC_ALL=C enigma
17:15:11 <ehird> i assume you have realised this by now.
17:15:29 <AnMaster> oklopol, also it says "one more and you won't get the hammer until you don't need it any more"
17:15:45 <AnMaster> so it means you either got to move it some other way or solve it without that hammer
17:15:54 <AnMaster> oklopol, just change the language. No idea how on windows
17:16:40 <AnMaster> oklopol, remove the translation file?
17:17:05 -!- Judofyr has quit (Remote closed the connection).
17:17:48 <ehird> ocaml extension that lets you do macros
17:18:03 <AnMaster> how does it work for ocaml though?
17:18:11 <AnMaster> iirc ocaml isn't based on writing a parse tree
17:18:12 <ehird> by parsing ocaml and rewriting the ast
17:18:28 <ehird> http://en.wikipedia.org/wiki/Camlp4
17:18:35 <ehird> http://en.wikipedia.org/wiki/Camlp4#Example
17:19:28 <ehird> json with embedded python
17:19:36 <ehird> imagine the indentation!
17:19:48 <ehird> sure, you just have to do \n if ...
17:19:49 <ais523> AnMaster: actually, it's XML with two languages embedded in it
17:19:51 <ehird> in the string literals
17:20:01 <ais523> and the other which is a level description lang that's unique to Enigma
17:20:22 <AnMaster> ais523, back when I first tried engima levels were pure lua
17:20:38 <AnMaster> also what is this special language
17:20:49 <AnMaster> ehird, I have written python like that in gdb more than once
17:21:01 <ehird> s-expressions with embedded lisp
17:21:05 <AnMaster> PyRun_SimpleString("import ...")
17:21:29 <AnMaster> also camel case AND underscore sucks
17:21:45 <ehird> it makes sense sometimes
17:21:48 <ehird> Module_FunctionName
17:21:54 <ehird> as opposed to ModuleFunctionName
17:22:00 <ehird> in that case, PyRun is a section of the interpreter
17:22:01 <AnMaster> ehird, I prefer module_function_name
17:22:13 <ehird> i didn't ask what you preferred
17:22:44 <ehird> heh, ocaml overcommits too
17:22:51 <ehird> 2.57GB virtual memory usage on all my ocaml instances
17:22:55 <ehird> & ocaml-using programs
17:22:55 <AnMaster> ais523, wait this special engima language...
17:23:04 <ais523> AnMaster: read the documentation
17:23:08 <AnMaster> ais523, is it like in /usr/share/games/enigma/levels/enigma_microban/mic_101.xml ?
17:23:09 <ais523> it just describes what objects are where
17:23:45 <ehird> is there a version of top(1)
17:23:49 <ehird> that sorts by disk activity?
17:23:56 <ehird> something's klunking my disk
17:24:22 <AnMaster> ehird, well iirc you need some sort of kernel patch to do it on linux
17:24:28 <AnMaster> and on bsd there is some tool for it
17:24:48 <ehird> well, that's really helpful of you.
17:25:06 <ehird> disk0 cpu load average
17:25:06 <ehird> KB/t tps MB/s us sy id 1m 5m 15m
17:25:07 <ehird> 15.04 4 0.07 7 3 90 0.52 0.50 0.39
17:25:11 <ehird> i want to know what -processes- is doing it
17:25:20 <ehird> anyway, they stopped
17:31:31 <oklopol> okay beat 58 with better time than ...ideal time?
17:32:15 <ehird> you beat the world record?
17:33:06 <oklopol> it says something about "ideal time", i don't know the english term.
17:33:49 <oklopol> maybe i should try beating that.
17:35:15 <oklopol> and i can't beat that with this mouse it seems, at least with my current technique
17:41:37 <ehird> http://muaddibspace.blogspot.com/2009/03/how-to-halve-number.html
17:41:44 <ehird> Halving a number in N easy steps.
17:42:24 <ehird> The international community cannot appreciate enough that an age old question that drove many mathematicians mad or into private and financial ruin has finally been solved. Trivia tell us that even Ramanujan failed to solve the famous "halving a number" problem and still in 2002 Faltings is quoted with the remark "currently no one has an idea how to attack it and I strongly believe that any solution will provide profound new insights".
17:42:28 <ehird> While the correctness of the proof is still debated number theorists all over the world feel inspired to solve the next harder problem: finding the third of a number.
17:43:00 <ais523> <HaakonS> today is actually wednesday in finland
17:43:04 <ais523> can someone confirm or deny?
17:43:26 <ehird> oklopol: quick we need information
17:43:33 <ehird> oerjan: you are a finn? OMG.
17:43:34 <oerjan> wait, did you mean truthfully?
17:43:51 -!- jix_ has quit ("...").
17:44:09 <oklopol> yeah this is Special Wednesday
17:44:50 <MizardX> ^ul (X)(d)(r)(a)(z)(i)(M)(()(:S)(!~*^:a~^))(~:^a~:*a~*~a~*a~^**a~a~*~a~*~a*^~^):a~^
17:44:50 <fungot> MiizzzzaaaaaaaarrrrrrrrrrrrrrrrddddddddddddddddddddddddddddddddXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ...out of stack!
17:45:12 <oklopol> so i solve the puzzle, and get stuck because there's a tiny extra puzzle too :D
17:45:28 <ehird> mizzle to the izzle to tah ard to tha ex
17:45:46 <oerjan> ehird: i say those guys are too clever by half
17:45:55 <ais523> MizardX: that's a neat little program
17:46:55 <MizardX> Though I don't know how to stop the iteration. See I ran out of stack.
17:47:19 <ehird> i'm thinking about linked lists in unlambda again
17:47:22 <ehird> what you clearly need is fold
17:47:26 <ehird> fold can implement map and iteration
17:47:31 <ehird> so, the list has to be:
17:47:39 <ehird> (func)(list of a b c)^
17:47:52 <ehird> (func)x(list of a b c)^
17:47:59 <AnMaster> <oklopol> it says something about "ideal time", i don't know the english term.
17:48:03 <ehird> c x func b func a func
17:48:07 <ehird> AnMaster: too late.
17:48:09 <oklopol> AnMaster: ehird already told me
17:48:10 <ehird> i told him hours ago.
17:48:25 <AnMaster> he said that like 15 minutes ago
17:48:27 <oklopol> yes, he told me exactly 2 hours, 46 minutes ago
17:48:32 <oerjan> ehird: except that is at least O(n) for everything, even head and tail
17:48:43 <oklopol> AnMaster: yes, but he just reminded me he had already told me.
17:49:02 <ehird> oerjan: so what, it's underload :P
17:52:44 <AnMaster> <ehird> http://muaddibspace.blogspot.com/2009/03/how-to-halve-number.html <-- written in some theorem proving language?
17:53:00 <ehird> It's for theorem masturbation.
17:53:04 <ehird> http://instantrimshot.com/
17:53:52 <AnMaster> ehird, well I know how a rimshot on a drum sounds...
17:54:03 <ehird> You have to imagine the button.
17:54:07 <ehird> Imagine yourself clicking the button.
17:55:05 <AnMaster> I have a big red button in my head?
17:55:23 <oklopol> ais523: okay that was trivial
17:55:33 <oklopol> i just failed a few times, in very weird ways
17:55:52 <oklopol> (somehow managed to drop the magic stone just when i was about to solve it, or it just vanished :D)
17:56:41 <AnMaster> yay enigma crashed under gdb...
17:56:58 <AnMaster> the backtrace is two frames with question marks
17:57:01 <ais523> oklopol: #197 doesn't look insanely hard, but it does look insanely time-consuming
17:57:02 <oklopol> anyway, if there are any actually hard levels, feel free to tell me, those two were trivial (the one with the swapping stones was pretty interesting though)
17:57:39 <ais523> #20 in Enigma 1.00 I can't figure out what you have to do at all
17:57:44 <ais523> so I don't know if it's hard or easy
17:57:46 <oklopol> ais523: well i don't really have the time even for this, i just want to see if there's anything actually hard
17:57:54 <oklopol> i mean you did say the levels get insanely hard
17:58:06 <ais523> oklopol: you're just much better at them than I am
17:58:13 <oklopol> i mean i can't even solve the rubik's cube, so if i can solve a level, it can't be that hard :|
17:58:25 -!- Hiato has joined.
17:58:46 <AnMaster> oklopol, I solved print 23 in 21 seconds
17:59:21 <oklopol> well good for you, i don't use my mousepad all that fast.
17:59:42 <AnMaster> <ais523> #20 in Enigma 1.00 I can't figure out what you have to do at all <-- it says I solved it, must have been long ago... no idea how I did it
17:59:45 <oerjan> oklopol: i guess you're just not much good at group work
18:00:21 <oklopol> i know the basics of group theory
18:00:43 <oerjan> well then rubik's cube should be simple ;)
18:01:24 <oklopol> ah! permutations are a group
18:01:28 <ais523> ah, I just did #20, I figured what had to be done
18:01:38 <oklopol> ais523: damn, i haven't even started yet
18:01:39 <AnMaster> ais523, I solved it before, I don't remember
18:01:51 <ais523> that's a knowledge puzzle
18:06:43 <ehird> wow ocaml sucks at strings
18:07:19 <ehird> yeah, there's not even a string-replace function
18:08:00 <ais523> ehird: OCaml isn't Perl, nor does it remotely try to be
18:08:16 <ehird> but every language has a basic string-replace.
18:08:34 <AnMaster> ehird, can't you write one iterating over the string?
18:08:45 <AnMaster> ehird, also not every language
18:08:45 <ehird> aha! ocaml batteries included to the rescue
18:08:49 <AnMaster> for example bf doesn't have it
18:08:55 <oklopol> #20 doesn't seem to make much sense
18:08:56 <ehird> AnMaster: 1) yes, but I don't want to 2) stop being so damn trivial
18:09:04 <oklopol> does it make sense but i'm just not seeing it?
18:09:15 <AnMaster> oklopol, it is possible to solve
18:09:22 <ehird> val replace : str:string -> sub:string -> by:string -> bool * string
18:09:22 <ehird> replace ~str ~sub ~by returns a tuple constisting of a boolean and a string where the first occurrence of the string sub within str has been replaced by the string by. The boolean is true if a subtitution has taken place.
18:09:27 <ehird> ^___________________^
18:09:29 <ais523> as for whether it makes sense, there are a couple of subtle clues
18:09:38 <AnMaster> oklopol, it does make sense when you know what to do
18:11:31 -!- Judofyr has joined.
18:13:36 <oklopol> ais523: can you tell me the clues in pm?
18:13:47 <oklopol> but i'm still not seeing wtf that was about
18:21:02 <oklopol> okay i'm gonna go read, will read logs for level tips
18:33:52 <MizardX> if (?)(value)(func)^ produces (value2) then
18:33:53 <MizardX> (?)...(?)(?)(value)(func)(a~a*~a*~a*^a~a*~a*^:a~a*~a*~a*^^a~a*~a*^:^):^
18:33:53 <MizardX> (?)...(?)(value2)(func)(a~a*~a*~a*^a~a*~a*^:a~a*~a*~a*^^a~a*~a*^:^):^
18:34:15 <ehird> but , how do you store elements in that list
18:34:23 <ehird> also that's kind of verbose per list
18:34:47 <AnMaster> it's underload, what did you expect?
18:34:53 <AnMaster> ais523, any progress on Feather?
18:35:13 <AnMaster> ais523, ok, how goes that VHDL stuff?
18:35:29 <ais523> AnMaster: that's finished, I'm focusing on my OCaml project now
18:36:03 <AnMaster> ais523, so how did the VHDL stuff end? as you planned?
18:36:18 <AnMaster> also what are you doing in ocaml?
18:36:29 <ais523> the VHDL stuff ended as intended
18:36:32 <ais523> and I got 95% for that module
18:36:47 <ais523> and the OCaml stuff is the imperative -> functional -> behavioural -> hardware compile chain
18:37:12 <ais523> but I'm working on some technicalities on the functional stage of the chain
18:37:12 <AnMaster> ais523, so this builds on the previous work?
18:37:34 <ais523> no, it's completely separate
18:37:44 <ais523> and in fact uses Verilog not VHDL
18:37:47 <AnMaster> ais523, you won't reuse anything then?
18:37:49 <ais523> but I'm not working on that bit
18:37:58 <ais523> AnMaster: no, that's actually against university rules for some reason
18:38:06 <ais523> but reusing wouldn't help, they're utterly different projects
18:38:12 <AnMaster> ais523, didn't the other project do mostly the same?
18:38:25 <ais523> the other project was me writing in VHDL
18:38:57 <AnMaster> so what exactly then did you write in VHDL?
18:38:59 <ais523> I mean, you don't have to deal with an insane door most days...
18:39:20 <ais523> AnMaster: a hardware self-routing packet-switching fabric for fixed packet lengths
18:39:22 <AnMaster> such door conditions can cause a lot of stress.
18:40:03 <AnMaster> (is that last one a Swedishism?)
18:40:11 <ais523> no, it's used in loads of languages
18:40:15 <ais523> pretty common in English too
18:40:32 <AnMaster> ais523, it still sounds like politician talk
18:41:41 <ehird> it is politician talk
18:41:56 <ehird> or rather, crazy pseudo-fascist politician talk. by which I mean, umm, all of them.
18:42:34 <ehird> (HOW CAN YOU TELL MY POLITICAL LEANINGS BY WHAT IM WRITING??????????????)
18:43:06 <ehird> that was a reference to a bash.org quote
18:43:18 <oerjan> he's on reddit, must be libertarian :D
18:43:31 <ehird> AnMaster: dunno, couldn't find it with google
18:43:39 <ehird> s/MY POLITICAL LEANINGS/IM 13/
18:44:05 <AnMaster> ehird, because you said you were 13...
18:44:22 <ehird> please tell me you're misinterpreting on purpose, AnMaster
18:44:48 <ais523> ehird: was that a general sanity pleading, or just an IRP command?
18:45:03 <ehird> the latter enables the former
18:45:33 <AnMaster> however, from your writing I would otherwise have guessed maybe 15 years now. Your writing a year ago? 13 NOMADS...
18:45:34 <oerjan> PLEASE IGNORE THIS COMMAND
18:45:50 <ehird> AnMaster: hey, I still enjoy a good monad every once in a whil
18:46:00 <ehird> also, the average age people think I am is around 20
18:46:05 <AnMaster> ehird, yes but you write it monad
18:46:18 <ehird> no no nomads are a type of monad
18:46:23 <ehird> they are the most ninjarist of all monads.
18:46:28 <ehird> they have an additional operation
18:46:31 <AnMaster> ehird, well yes you know a lot more than many of your age. I mean a 13 year old programming in haskell isn't common
18:46:45 <ehird> ninja : m (m (m a -> a) -> m (m a)) -> flip out and kill people
18:47:06 <AnMaster> but sometimes you act a bit silly which gives it away. Have to talk to you a lot before it is noticeable
18:47:18 <AnMaster> ehird, do you act as grown up outside IRC btw?
18:47:21 <ehird> old people never act silly
18:47:32 <ais523> ehird: what's your definition of "old"?
18:47:35 <AnMaster> ehird, when they do they do it differently
18:47:41 <ehird> ais523: anything older than me
18:47:41 <oerjan> indeed, it's hormonally impossible
18:47:59 <ais523> oh, I act silly sometimes, just normally in RL rather than on the internet
18:48:03 <ehird> AnMaster: i'm much the same, except about a million times more shy
18:48:15 <ais523> ais523 is so much saner and more respectable than Alex Smith..
18:48:19 <ehird> yeah go figure right
18:48:30 <ehird> ais523: that's some reversal
18:48:53 <oerjan> oerjan and Ørjan Johansen are both completely bonkers, alas
18:49:06 <ehird> AnMaster: me outside is a laugh, i take the optimal path to avoid people
18:49:33 <ais523> oerjan: you have more published papers than me, though
18:49:40 <AnMaster> ehird, actually I often did that too.. Slightly less so nowdays.
18:49:58 <ehird> AnMaster: people's eyes seeing you, even in the corner, erodes your skin.
18:50:02 <AnMaster> oerjan, You are Norwegian... *ducks*
18:50:44 <ehird> "PHP stopped being php when they turned off short-tags by default. It has got too enterprisy. We need need a new fresh PHP."
18:50:47 <AnMaster> ehird, so you act like a normal teenager then :P
18:50:48 <ehird> haahahhaahaahahahhahaahahhhhhhahhahahahahahaha
18:51:09 <ais523> I was so hoping it was </.
18:51:19 <ehird> AnMaster: yes, except without the General Mishmash Cloud of Random Acquaintences common to teenagers
18:51:32 <AnMaster> ehird, yeah I never had that either
18:51:41 <AnMaster> ehird, looks like we are similar ;)
18:51:47 <ais523> actually, one of my lecturers here specifically warned me about norwegians
18:51:59 <AnMaster> ais523, really? on what grounds?
18:52:06 <ais523> he told me and everyone else in my year to never allow norwegians to con us into eating raw fish
18:52:13 <ehird> norwegians, muslins, what's the difference?
18:52:24 <ais523> apparently he was the victim of such a scheme in the past
18:52:38 <ehird> ais523: IT'S CALLED LUTEFISK STUPID
18:53:08 <ehird> ugh, just thinking about lutefisk kills me
18:53:09 <oerjan> does dried cod count as raw?
18:53:12 <AnMaster> ais523, yeah I guess he was badly damaged for life from it
18:53:18 <ehird> how can you eat that stuff
18:53:46 <AnMaster> ehird, Sweden has surströmming as well as lutfisk.... No idea how anyone can eat either
18:54:03 * oerjan thinks eating dried cod brings out his inner dog
18:54:04 <AnMaster> in Sweden it is mostly old people who eat it, those who grew up with it
18:54:04 <ehird> british food may be boring as hell, but it's not fish in lye
18:54:17 <ehird> and for that i salute i
18:54:27 <AnMaster> ehird, your cakes are very dry iirc
18:54:45 <AnMaster> true that is not as bad as fish in lye
18:54:47 <ehird> AnMaster: apparently britain is the only place that has a lot of biscuits
18:55:02 <ehird> i mean like digestive biscuits and stuff.
18:55:07 <AnMaster> ehird, well, not sure.. We have a lot of biscuits here.
18:55:12 <ehird> http://en.wikipedia.org/wiki/File:Digestive_biscuits.jpg
18:55:13 <ehird> this kind of thing
18:55:49 <AnMaster> ehird, on the other hand, US/UK culture got everywhere nowdays
18:56:35 <AnMaster> but nowdays I know such stuff is rather common here too
18:57:22 <AnMaster> ehird, + my mother rather likes some English food
18:58:09 <AnMaster> so I may have experienced more than average English food
18:58:21 <ais523> everyone likes scones, or ought to
18:58:33 <ehird> it should be a law
18:58:35 <ais523> but they're traditionally very upper-class
18:58:39 <ehird> "Everyone SHALL like scones."
18:58:51 <ehird> meh, that's traditionally
18:58:57 <ehird> scones aren't exactly an uncommon thing
18:59:00 <ais523> yep, the traditions tend not to match reality
18:59:07 <ais523> it's not like they're expensive or anything
19:15:16 <ais523> ehird: eso-std.org has been squatted, by the way
19:15:32 <ais523> it's full of links about STDs
19:15:36 <ehird> ais523: and also ISO standards
19:15:39 <ehird> they've got it to a T
19:15:56 <ehird> ais523: this is good, think how much money they're wastign registering names like that :P
19:16:10 <ehird> This domain has expired
19:16:11 <ehird> It will be deleted in the next few days. If you are the owner of this domain, you still have a chance to renew it.
19:16:17 <ehird> i can actually renew it now from mydomain
19:16:22 <ehird> so they're just milking it before deleting it
19:16:26 <ehird> it hasn't been squatted by a third party
19:16:27 <ais523> oh, they must be using the 5-day park thing
19:16:28 <ehird> just my registrar...
19:16:36 <ais523> where you can register a domain for 5 days without paying
19:16:40 <ais523> I'm not entirely sure why it exists
19:16:58 <ais523> its only use seems to have been for parking and squatting
19:17:17 <ehird> anyway, I doubt it'll be squatted in a few days
19:17:46 <GregorR> Squatters watch domain name expiration logs, they usually squat within 10-15 minutes of a record expiring.
19:18:02 <MizardX> A bug in the previous fold. Here is a corrected example:
19:18:02 <MizardX> ^ul (X)(d)(r)(a)(z)(i)(M)((:S)(!))(:^~:*a~a*a~a*~a*^~^*^)(a~a*~a*~a*^a~a*~a*^:a~a*~a*~a*^a~a*~a*^^a~a*~a*^:^):^
19:18:03 <fungot> MiizzzzaaaaaaaarrrrrrrrrrrrrrrrddddddddddddddddddddddddddddddddXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ...out of stack!
19:18:24 -!- BeholdMyGlory has quit (Remote closed the connection).
19:18:34 <ehird> MizardX: termination = (), maybe
19:18:42 <ais523> ehird: no way to detect that
19:18:46 <ehird> that doesn't help, you need a list to be atomic on the stack
19:19:23 <ais523> for Underload, the easiest list format I know of is ((1)((2)((3)((4)((5)())))))
19:19:34 <ehird> and how do you process that?
19:19:42 <ais523> Underlambda's going to have commands to manipulate lists of the form ((1)(2)(3)(4)(5))
19:19:45 <ehird> you can't detect end of list, certainly
19:19:47 <ais523> and you process it using ^ and !
19:20:00 <ais523> and you can detect end of list
19:20:15 <ais523> that pushes 0 items onto the stack
19:20:15 -!- FireFly has joined.
19:20:25 <ais523> a nonempty list always pushes exactly 2 items onto the stack
19:20:55 <ais523> so you can do ^!!^, and either the first or third stack element runs
19:21:18 <ais523> (the basic definition is, a list pushes its car and its cdr onto the stack, nil pushes nothing)
19:21:56 <ehird> ... that doesn't help if your list items aren't executable.
19:22:24 <ais523> A list containing just x is ((x)())
19:22:35 <ais523> so the contents of the first paren are never executed
19:22:45 <ais523> *the paren containing the x
19:22:55 <ehird> how could you map?
19:23:19 <ais523> you have to loop over the elements of the list
19:23:36 <ais523> it's not trivial to write, but it doesn't come out excessively complex
19:25:19 <MizardX> I developed a meta-language while writing the fold: A ("append") = ~a*, P ("prepend") = ~a~*, W ("wrap") = a, E ("exec") = ^ ... so bubbling up the nth element on the stack becomes: WA{n-2}E
19:25:58 <MizardX> wait... WA{n-2}E was reverse the top n elements
19:27:06 -!- ais523 has quit (Read error: 60 (Operation timed out)).
19:29:05 <MizardX> (x)(y)(z)(w)WPPAE -> (x)(y)(z)((w))PPAE -> (x)(y)((z)(w))AE -> (x)((y)(z)(w))AE -> ((y)(z)(w)(x))E -> (y)(z)(w)(x)
19:29:44 <MizardX> fold is (?)...(?)(?)(value)(func)(WAAAEWAAE:WAAAEWAAEEWAAE:^):^
19:30:44 <ehird> http://vimeo.com/1715318 <-- this video is awesome, especially the bit around half way through (don't skip to it, it'll spoil it)
19:40:52 <MizardX> Last picture looked like a fetus
19:44:34 -!- GregorR has quit ("Leaving").
19:45:03 -!- oerjan has quit ("Sneep!").
19:45:07 -!- BeholdMyGlory has joined.
19:56:24 <oklopol> MizardX: i'm pretty sure that was the point
19:56:32 <oklopol> didn't you follow the story at all :|
20:01:46 <ehird> sweet, ocaml 3.11 has comprehensions
20:01:47 <ehird> [? i*i | i <- 1 -- 100 ; i mod 2 = 0]
20:16:42 <ehird> all you ever do is bitch, bsmntbombdood
20:16:57 <ehird> i think you want #bitch
20:18:24 <ehird> you can listen to yourself.
20:24:37 <ehird> 09:45:34 <ehird> AnMaster: you know what continuations are right?
20:24:37 <ehird> 09:45:47 <AnMaster> ehird, I think I know, if they are what I think
20:24:38 <ehird> 09:45:52 <AnMaster> ie, anonymous method
20:24:40 <ehird> 09:45:58 <AnMaster> that can be passed around
20:25:21 <AnMaster> ehird, that must have been ages ago
20:25:43 <ehird> AnMaster: it's oklopol
20:31:14 -!- Hiato has quit ("Leaving.").
21:05:22 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
21:31:00 -!- kar8nga has joined.
21:33:55 <ehird> water</hadtobedone>
21:45:00 -!- Judofyr has quit (Remote closed the connection).
21:59:22 -!- GregorR has joined.
22:02:08 -!- tombom has quit ("Peace and Protection 4.22.2").
22:15:35 <ehird> http://twitter.com/mrxtothaz/status/1266000157 <- Xzibit attempts own meme, fails.
22:23:26 -!- GregorR has quit ("Leaving").
22:34:21 -!- kar8nga has quit (Connection timed out).
22:39:53 -!- GregorR has joined.
22:49:31 -!- DH__ has joined.
22:50:24 -!- DH__ has left (?).
23:44:04 <kerlo> I also need a new computer. What should I get?
23:58:55 <bsmntbombdood> i need 2-4 cores, 4-8gb memory, 1-2 tb of disk (to be raid1ed), no need for video
23:59:20 <ehird> also I am doubting you _need_ all that, just _want_.