00:00:05 * olsner is in an extraordinarily helpful mood today
00:02:53 -!- Corun has quit ("This computer has gone to sleep").
00:05:44 -!- GreaseMonkey has joined.
00:10:03 <revcompgeek> would it be worthwile to make up an esoteric assembly language that esoteric compilers could target?
00:11:11 <revcompgeek> i don't see how to write any compilers in that in a reasonable amount of time
00:12:23 <sauxdado> well, what exactly do you want?
00:15:35 <sauxdado> i just don't understand "semi-normal"
00:16:12 <sauxdado> if you want easy-to-compile-to, why bother with assembly at all? Lisp could be a nice target there. Or C if you're into lower level. Or LLVM if you really do want something assembly-like.
00:16:25 <sauxdado> And if you want esoteric, there's plenty of options, but none of them are "semi-normal", by definition.
00:17:50 <revcompgeek> i had an idea to have all esoteric compilers target one specific assembly
00:18:45 <sauxdado> LLVM seems like a good choice, although most people prefer to compile to something higher-level
00:19:56 <revcompgeek> i was almost thinking something based on P-code
00:21:13 <revcompgeek> I haven't actually written a compiler but i want to for BRZRK
00:24:58 <sauxdado> why do you want assembly, anyway?
00:25:34 <revcompgeek> compiling to LISP would actually be fairly easy for BRZRK, but i don't know LISP
00:27:07 <sauxdado> the BRZRK page says it's "based on lisp"
00:27:14 <sauxdado> you don't know lisp yet you based a language on it?
00:27:24 <ehird> sauxdado: Happens.
00:27:26 <revcompgeek> i have looked at it and i understand the structure
00:27:54 <revcompgeek> variables are quite complicated from what i have looked at
00:34:30 -!- Corun has joined.
00:34:56 -!- Corun has quit (Client Quit).
00:35:39 -!- Corun has joined.
00:50:36 -!- Corun has changed nick to baisy.
00:51:59 -!- baisy has changed nick to Corun.
00:59:56 -!- GreaseMonkey has quit ("Unisex.").
01:25:03 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
01:27:26 -!- cmeme has joined.
01:30:55 -!- Corun has quit ("This computer has gone to sleep").
01:32:36 -!- cmeme has quit.
01:32:47 -!- cmeme has joined.
01:48:18 -!- evincar has joined.
01:52:23 <evincar> I started an interpreter for Selector yesterday.
01:52:55 <evincar> The only things I have left to add are... BECOME, ESCAPE, GO, MY, PICK, and YOUR.
01:53:25 <evincar> But it's not hard, per se.
01:53:42 <evincar> Hence I'm taking a break to chat.
01:57:06 <ehird> evincar: Same for me.
01:57:08 <ehird> I will do it eventually
01:57:30 <evincar> I'm working on another spec, with a friend this time.
01:57:53 <evincar> You might call it 'pseudo-deterministic', I think.
01:58:16 <evincar> It's based on old-style text-based RPGs.
02:11:07 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
02:11:08 -!- lifthrasiir has quit (leguin.freenode.net irc.freenode.net).
02:11:08 -!- Tritonio has quit (leguin.freenode.net irc.freenode.net).
02:11:08 -!- atsampson has quit (leguin.freenode.net irc.freenode.net).
02:11:08 -!- mtve has quit (leguin.freenode.net irc.freenode.net).
02:11:08 -!- pikhq has quit (leguin.freenode.net irc.freenode.net).
02:11:10 -!- dbc has quit (leguin.freenode.net irc.freenode.net).
02:11:11 -!- evincar has quit (leguin.freenode.net irc.freenode.net).
02:11:11 -!- Slereah_ has quit (leguin.freenode.net irc.freenode.net).
02:11:11 -!- GregorR has quit (leguin.freenode.net irc.freenode.net).
02:11:11 -!- AnMaster has quit (leguin.freenode.net irc.freenode.net).
02:11:12 -!- revcompgeek has quit (leguin.freenode.net irc.freenode.net).
02:11:12 -!- Judofyr has quit (leguin.freenode.net irc.freenode.net).
02:11:12 -!- oklopol has quit (leguin.freenode.net irc.freenode.net).
02:11:13 -!- Quendus has quit (leguin.freenode.net irc.freenode.net).
02:11:13 -!- Phenax has quit (leguin.freenode.net irc.freenode.net).
02:11:13 -!- bsmntbombdood has quit (leguin.freenode.net irc.freenode.net).
02:11:15 -!- RodgerTheGreat has quit (leguin.freenode.net irc.freenode.net).
02:11:15 -!- sekhmet has quit (leguin.freenode.net irc.freenode.net).
02:11:16 -!- ehird has quit (leguin.freenode.net irc.freenode.net).
02:11:16 -!- sebbu has quit (leguin.freenode.net irc.freenode.net).
02:11:16 -!- sauxdado has quit (leguin.freenode.net irc.freenode.net).
02:11:16 -!- Sgeo has quit (leguin.freenode.net irc.freenode.net).
02:11:17 -!- olsner has quit (leguin.freenode.net irc.freenode.net).
02:11:17 -!- EgoBot has quit (leguin.freenode.net irc.freenode.net).
02:11:17 -!- SimonRC has quit (leguin.freenode.net irc.freenode.net).
02:11:17 -!- Deformative has quit (leguin.freenode.net irc.freenode.net).
02:11:18 -!- Deewiant has quit (leguin.freenode.net irc.freenode.net).
02:12:07 -!- evincar has joined.
02:12:07 -!- revcompgeek has joined.
02:12:07 -!- Phenax has joined.
02:12:07 -!- Judofyr has joined.
02:12:07 -!- Tritonio has joined.
02:12:07 -!- oklopol has joined.
02:12:07 -!- Sgeo has joined.
02:12:07 -!- olsner has joined.
02:12:07 -!- Slereah_ has joined.
02:12:07 -!- RodgerTheGreat has joined.
02:12:07 -!- sebbu has joined.
02:12:07 -!- pikhq has joined.
02:12:07 -!- Quendus has joined.
02:12:07 -!- atsampson has joined.
02:12:07 -!- GregorR has joined.
02:12:07 -!- EgoBot has joined.
02:12:07 -!- SimonRC has joined.
02:12:07 -!- AnMaster has joined.
02:12:07 -!- bsmntbombdood has joined.
02:12:07 -!- dbc has joined.
02:12:07 -!- Deformative has joined.
02:12:07 -!- sauxdado has joined.
02:12:07 -!- mtve has joined.
02:12:07 -!- sekhmet has joined.
02:12:42 -!- Deewiant has joined.
02:13:19 -!- cmeme has joined.
02:13:19 -!- lifthrasiir has joined.
02:17:24 -!- evincar has quit (Read error: 104 (Connection reset by peer)).
02:18:39 -!- revcompgeek has quit (Read error: 110 (Connection timed out)).
02:54:24 <oklopol> there are seven bits of a delicious matrix
02:54:42 <oklopol> and the result makes a payhouse for a grinfizzle
03:45:22 -!- oklopol has quit (Read error: 110 (Connection timed out)).
03:46:35 -!- GreaseMonkey has joined.
03:59:33 -!- revcompgeek has joined.
04:01:09 -!- revcompgeek has quit (Client Quit).
05:21:43 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
06:44:01 -!- oerjan has joined.
07:13:42 -!- oerjan has quit ("leaving").
07:25:40 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:08:16 -!- Tritonio_ has joined.
09:09:23 -!- Tritonio has quit (Read error: 110 (Connection timed out)).
09:20:36 -!- Iskr has joined.
09:46:10 -!- Tritonio_ has quit (Remote closed the connection).
10:39:06 -!- Tritonio has joined.
10:53:36 -!- GreaseMonkey has quit ("Unisex.").
11:46:34 -!- Judofyr has joined.
11:47:40 -!- theunixgeek has joined.
11:48:14 -!- Corun has joined.
11:48:16 <theunixgeek> hi, is this channel for esoteric programming languages?
11:49:29 <Iskr> no it is for esoteric magic
11:51:15 <Slereah_> Yes, yes it is for programming.
11:51:33 <theunixgeek> anyone know of the FALSE programming language?
11:57:50 -!- theunixgeek has left (?).
12:22:38 <olsner> what, is this a *programming* channel?
12:22:48 * olsner goes look for the esoteric magic channel
12:26:32 <Slereah_> olsner : http://www.greyschool.com/
12:26:51 <Slereah_> "* Technomagick 100: Internet Safety "
12:26:57 <Slereah_> "Class Description: As the world of computers and the Internet grows, more and more threats find ways to disrupt our lives. Here at Grey School, we want to help you learn to defend yourself from these threats. Technomagick 100 will teach you a little about the structure of computers, the history of the Internet, and where the dangers are (and how to avoid them!)"
13:01:54 -!- Corun has quit ("This computer has gone to sleep").
13:31:41 -!- Corun has joined.
14:31:42 -!- Corun has quit ("This computer has gone to sleep").
15:04:56 -!- ehird has joined.
15:09:28 -!- ehird_ has joined.
15:09:29 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
15:12:29 -!- ehird_ has quit (Read error: 104 (Connection reset by peer)).
15:18:26 -!- ehird has joined.
15:46:57 <ehird> so, i'm golfing a mini-irc alike
15:47:14 <ehird> it runs over telnet, and you can 'join x', 'part x', 'say x y', 'whois x', 'names x', and 'quit'
15:47:38 <ehird> it's currently around 10 lines but doesnt work fully yet.
16:01:30 -!- Corun has joined.
16:36:07 <pikhq> It's snowing in fucking *May*.
16:37:14 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
16:37:49 -!- Judofyr has joined.
16:45:35 <ehird> i just did something i never thought possibly - and pikhq and ais523 will hate me for this -
16:45:42 <ehird> but i actually got a vim up that's nicer than emacs
16:46:06 * ehird awaits pikhq's "That's impossible!"
16:47:16 <pikhq> That's not impossible, just very, very improbable.
16:47:23 <ehird> pikhq: But I did it.
16:47:41 <pikhq> Oh well; fortunately for you, using Vim is not a sin in the Church of Emacs.
16:47:47 <ehird> My hands are no longer in an eternal game of twister!
16:47:56 <ehird> pikhq: Hey, I can use both. :D
16:48:18 <ehird> But I use proprietary software (in fact, one of my favourite editors is proprietary) so I'm a sinner anyway
16:48:36 <pikhq> I have two proprietary programs on hear. . .
16:48:44 <pikhq> Nvidia driver and Flash plugin.
16:49:02 <ehird> and my main OS is proprietary ;-)
16:49:18 <ehird> I love open source software. I just love proprietary software too.
16:49:34 <pikhq> I'm drinking coffee as we speak.
16:49:53 <ehird> pikhq: proprietary coffee?
16:51:56 <pikhq> Free coffee, of course.
16:51:57 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
16:52:16 -!- Judofyr has joined.
16:53:24 <ehird> pikhq: As in ... er... beer?
16:53:42 <ehird> pikhq: Your coffee TALKS?!
16:53:45 * pikhq could also make you some beer that's free as in speech. :p
16:53:53 <pikhq> Hey, it's the LSD I put in it. :p
16:54:04 <ehird> LSD + Coffee ... well, it's unique I guess
16:54:45 <pikhq> Helps me deal with the snow.
16:56:14 <ehird> pikhq: So between LSD coffee to deal with snow and rituals about a text editor ...
16:56:53 <pikhq> It's part of the Fundamentalist Church of Emacs. :p
16:57:10 <pikhq> We also have a dress code: T-shirt, pants, long hair, and a beard of some sort. ;p
16:57:10 <ehird> pikhq: It's kinda like anti-Christianity: pi may not be used anywhere if not given in full.
16:57:46 <ehird> pikhq: This is why GNU Emacs has no circles, anywhere.
16:57:49 <pikhq> Although you *are* allowed to give an infinite series that equals pi.
16:58:16 <ehird> Well, it does have circles -- but you never notice, because it freezes trying to calculate all of pi. So every time Emacs crashes, it was just trying to display a circle.
16:59:26 <pikhq> That only applies to FCE copies.
16:59:58 <pikhq> Other, more uncouth copies of Emacs are satisfied with enough digits of pi to compute the size of the known universe to within a few planck lengths.
17:00:14 <ehird> That is horrifying.
17:02:50 <ehird> pikhq: I suggest 'HORRIFIC BABY-KILLING MACHINES OF DEATH circles'
17:03:56 * pikhq proposes that Emacs only draw circles using polar coordinates
17:11:51 -!- ais523 has joined.
17:12:08 <ehird> if you've been logreading you will soon banish me
17:12:18 <ais523> hi, and I haven't been logreading
17:12:28 <ais523> I've been standing at a display all day explaining a massive project to people
17:12:36 <ehird> ais523: what, C-INTERCAL?
17:12:43 <ais523> ehird: no, a group project for University
17:13:11 <ais523> the group voted me a 7.3% bonus on my mark for the project based on the amount of work I'd done, which was good
17:13:31 <ehird> ais523: essentially I switched to vim
17:13:42 <ais523> ehird: I don't mind that at all
17:13:50 <ehird> ais523: I am joking of course ;)
17:14:54 <ehird> ais523: http://golf.shinh.org/p.rb?trivial+encoder i submitted this
17:15:00 <ehird> the answers are suprisingly long
17:17:04 <ais523> ehird: I'm surprised there isn't a Perl entry, I think it's got a command to do that, but I may be wrong
17:18:39 <ehird> ais523: hmm, cyclexa is pretty untouched
17:18:50 <ais523> I haven't been working on it
17:18:58 <ais523> I've been busy with other things
17:22:29 <ais523> ehird: there's a bug in the examples that needs special-casing
17:22:39 <ais523> there's a newline on the input to problem 3, but not in the output
17:22:40 <ehird> well, the lexer hasn't been written yet
17:26:39 <ais523> print(<>!~/n/?pack"H*",<>:uc unpack"H*",<>) <- an answer to the correct version of the problem
17:27:06 <ehird> ais523: correct version?
17:27:17 <ais523> ehird: if you hadn't made a bug in the exampke
17:27:22 <ais523> actually, it's worse than that
17:27:31 <ais523> there's a stray A at the end of the solution to problem 3
17:27:46 <ehird> ais523: wanna fix it? :p
17:33:23 -!- Sgeo[College] has joined.
17:36:20 <ais523> print+(<>!~/n/?pack"H*",<>:uc unpack"H*",<>),($$%5?'':'A')
17:36:24 -!- Corun has quit ("This computer has gone to sleep").
17:36:30 <ais523> maybe I can remove a few parens from that
17:36:42 <ais523> I just randomize to see whether to compensate for the bug
17:37:16 <ais523> print+(<>!~/n/?pack"H*",<>:uc unpack"H*",<>),$$%5?'':'A' #56 bytes
17:38:16 <ais523> hey, I have the shortest solution!
17:39:15 <ehird> ais523: now submit a fixed proposal? :P
17:39:19 <ais523> the stray A makes the problem harder
17:39:27 <ais523> and I don't feel like fixing the problem all that much
17:39:35 <ais523> the fix is only a few bytes in my code anyway
17:40:25 <olsner> eh, but it's not actually supposed to print the 'a', right?
17:40:34 <ais523> the A is a bug in the problem
17:40:46 <ais523> so I randomise to determine whether to fix the bug or not (there are three cases, only one is buggy)
17:40:56 <ais523> and then run repeatedly until the correct case has the bugfix
17:41:04 <ehird> "Lesbos islanders dispute gay name" - bbc news headline
17:42:40 <Slereah_> What do they plan to do about it?
17:42:58 <ehird> Slereah_: Complain.
17:43:20 <ehird> ais523: do you need that c-intercal mirror to stay, BTW? nobody has downloaded it
17:43:32 <ais523> ehird: not particularly
17:43:37 <ais523> do you want to take it down for some reason?
17:43:44 <ais523> it's useful to have the spread-out version
17:43:52 <ais523> but it's only a mirror, there are other sites
17:44:03 <ehird> ais523: all of my 8 log files are empty
17:44:14 <ehird> so nobody is downloading it
17:44:27 <ais523> most likely they download from the site they're used to
17:44:37 <ehird> but yeah i was going to switch my server to ubuntu, because i need some newer packages
17:44:49 <ais523> I don't mind a bit, or a lot, of downtime at all
17:45:01 <ais523> that's what mirrors are for, right? Speeding up downloads, and bridging across downtime?
17:45:22 <ehird> it just might be a while before i get an httpd on there again
17:49:34 <ehird> ais523: so ... alright to do BIG WIPE OF DETH?
17:56:27 <ais523> sorry, I didn't notice your higlight
17:56:36 <ais523> I was too focused on something else
17:57:43 -!- jix has joined.
18:20:09 <Phenax> say I have a value at (0,0) in Befunge. How would I use 'g' to get that?
18:20:55 <Phenax> wondering why it was returning 49
18:23:40 <Phenax> 100g,p500 00g,@ .. prints 11 - shouldn't it be 15?
18:24:25 <ais523> Phenax: what are you trying to do there?
18:24:32 <ais523> there are far too many 0s, I think
18:24:54 <ais523> you've written the p500 backwards, it seems
18:25:09 <Phenax> with it the right way it prints 1|
18:25:36 <ais523> the second char's a literal ASCII 5, I suspect
18:27:05 <Phenax> 100g,500p, 00g.@ works
18:27:31 <ais523> the difference is that the first g reads the char '1' from the playfield
18:27:39 <ais523> whereas the second g reads the number 5
18:29:02 <ais523> the char '1' is a command that puts the number 1 on the stack
18:29:47 <Phenax> 22* returns the char 4 or the integer 4?
18:30:07 <Phenax> but 2 returns the char 4?
18:30:07 <ais523> you get chars reading from the playfield
18:30:19 <ais523> but integers calling the command
18:31:41 -!- Sgeo[College] has quit ("http://www.mibbit.com ajax IRC Client").
18:43:28 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
19:02:17 -!- ais523 has joined.
19:10:16 -!- jix has quit (Nick collision from services.).
19:10:26 -!- jix has joined.
19:20:39 -!- timotiis has joined.
19:26:46 -!- ais523_ has joined.
19:26:54 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
19:27:11 -!- ais523_ has changed nick to ais523.
19:41:07 -!- jix has quit (Read error: 104 (Connection reset by peer)).
19:52:06 <ais523> so that's output a 1 under 101 and under 010
19:52:14 <ais523> and output a 0 otherwise
19:52:49 <ais523> state Zero "0" to One if < Zero and > Zero;
19:52:56 <ais523> state One "1" to Zero if < One and > One.
19:53:09 <ais523> (I can't quite remember ALPACA's syntax, but that should be close enough)
19:53:31 <ais523> under 101 and under 001
19:53:47 <ais523> state Zero "0" to One if > One;
19:54:05 <ais523> Slereah_: is that what you had in mind?
19:55:07 <olsner> just write the number out in binary, number the bits 0-7 with three bits, then each bit specifies the outcome depending on three input bits
19:55:38 <olsner> iirc, rule 30 and 110 are the most famously turing complete ones
19:55:48 <ais523> was 30 proved Turing-complete?
19:55:56 <GregorR> I don't think 30 was proved.
19:56:03 <GregorR> I thought it was just believed to be.
19:56:18 <ais523> it's certainly complicated enough to look like it might be TC
20:07:38 <ais523> well, it definitely isn't TC
20:07:49 <ais523> at least, not the cellular automaton by that name
20:07:54 <GregorR> I'd like to see a paper /proving/ that.
20:08:07 <ais523> GregorR: no journal would accept it, it would be too trivial
20:29:56 -!- Corun has joined.
20:35:06 <Slereah_> You -> o [Malbolge interpreter] o <- Delicious cake
20:35:11 <Slereah_> You -> o [Malbolge interpreter] o <- Delicious cake
20:35:18 <Slereah_> You -> o [Malbolge interpreter] o <- Delicious cake
20:35:40 <ehird> Slereah_: enter malbolge program
20:35:40 <ais523> Slereah_: go round the bottom Malbolge interpreter, using the whitespace on your last-but-one line
20:35:51 <ais523> that seems the safest option
20:35:59 <ehird> ais523: it's a gap
20:36:03 <ehird> weren't you here last time?
20:36:13 <ehird> ais523: he did a cake challenge
20:36:15 <ehird> if not, go into the logs!
20:36:18 <ehird> it's just a few days ago
20:36:52 -!- ais523 has set topic: * Topic for #esoteric set by ehird at Tue May 1 20:38:58 2008 http://tunes.org/~nef/logs/esoteric.
20:37:00 -!- ais523 has set topic: * Topic for #esoteric set by ais523 at Tue May 1 20:38:58 2008 http://tunes.org/~nef/logs/esoteric.
20:38:34 <Slereah_> I do not advise trying your tricks.
20:38:44 <Slereah_> Lions and grues prowl outside this very line.
20:41:56 -!- Iskr has quit ("Leaving").
20:43:43 <Slereah_> Well, what do you expect in a place with a Malbolge interpreter lying around.
20:44:06 <Slereah_> You can't expect this to end well.
20:44:57 <olsner> whatever evil lurks around the malbolge interpreter, you probably don't even want to *contemplate* the evil lurking inside it
20:45:07 <Slereah_> (Previous cake is here, minus the color : http://tunes.org/~nef/logs/esoteric/08.04.29 )
20:45:23 <Slereah_> "Screw that, I'm trying the lions!"
20:45:43 <ais523> ehird: it was the day befor yesterday, actually
20:45:48 <ais523> 10:31:07 <ehird> Didn't the cake just eat us?
20:45:53 <ais523> (/me fixed the typo in the quote)
20:49:36 * ais523 has finished log reading the last IRP cake RPG
20:49:46 <ais523> I was a bit disappointed that the cake turned out not to be a lie in the end
20:50:18 <Slereah_> Well, lying cakes are only good for vidya games.
20:50:24 <Slereah_> Internet cakes must simply be reached.
20:50:37 <ais523> well, an IRP cake game is hardly an audio game
20:54:01 <Slereah_> You -> o [Malbolge interpreter] o <- Delicious cake
20:54:31 * ais523 feeds a Hello, World program to the Malbolge interpreter
20:54:42 <ais523> copying it off the Esolang wiki, because writing Malbolge is hard
20:55:25 <ehird> ais523: i never actually expected to get the cake
20:55:39 <ais523> Slereah_: what happens?
20:55:43 <Slereah_> o[Malbolge interpreter]Hello, world. o <- Delicious cake
20:56:04 <ais523> I feed myself to the Malbolge interpreter.
20:56:33 <Slereah_> [Malbolge interpreter]invalid character in source file o <- Delicious cake
20:56:58 <Slereah_> You -> o [Malbolge interpreter] o <- Delicious cake
20:57:24 <ais523> hmm... it's hard to see how to get around this without actually writing some Malbolge
20:57:32 <ais523> EXAMINE Malbolge interpreter
20:57:45 <Slereah_> It is an interpreter. For the Malbolge language.
20:57:49 <ais523> in particular, I check to see if it's Ben Olmstead's original Malbolge interpreter, or a newer one
21:00:48 <ehird> Slereah_: Can we formulate malbolge programs given a description of what it does?
21:00:49 <ais523> I was looking for buffer overflows in the interp, but couldn't find any
21:01:14 <ais523> hacking the interp is easier than actually writing Malbolge programs
21:01:34 <ehird> ais523: but look what i said
21:02:12 <ehird> ais523: I love how we threw the dead lion and just flew with it previously
21:02:44 <ais523> Slereah_: when I fed the hello world program to the Malbolge interp, were the os that came out people?
21:03:08 <Slereah_> Is that a metaphorical question?
21:03:34 <ais523> I was wondering if I could feed a hello world to it and then ask the people that came out to throw me some slices of cake back
21:04:15 <ehird> ais523: you just know they would be malicious
21:04:20 <Slereah_> Well, the cake would probably just land on the interpreter.
21:04:20 <ehird> and that a lion would appear somehow
21:04:27 <ehird> and there would be no CAR to JESUS CHRIST GET INTO
21:05:42 <Slereah_> ehird : I wouldn't try something like that.
21:05:49 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Lion.jpg
21:06:23 <Slereah_> Inventory : Supply of letters.
21:06:38 <ais523> Slereah_: do I have any letters with ASCII codes above 128?
21:07:16 <Slereah_> A rubber chicken, with a pulley in the middle
21:07:26 <ehird> Slereah_: monkey island! yay!
21:07:42 <Slereah_> Well, it wouldn't be an adventure game without some rope and a rubber chicken
21:07:51 <ais523> Slereah_: I kill the Malbolge interpreter. If that doesn't work, I kill it with a 9.
21:07:55 <Slereah_> Same reason I included matches last time :o
21:08:27 <Slereah_> How do you kill that which has no life?
21:08:35 <ais523> Slereah_: with my hacking tools
21:08:46 <ais523> I assume there's a signal generator in there somewhere
21:08:47 <Slereah_> Well, you have to be more specific then.
21:08:58 <Slereah_> but beware of the lion hidden in the code!
21:11:22 <Slereah_> The hacking tools only permits you to GO INSIDE THE INTERPRETER
21:11:41 <Slereah_> Sort of like Beneath a steel sky, when you ENTER CYBERSPACE
21:12:34 <ais523> going inside a Malbolge interpreter is unlikely to be a sane idea
21:12:50 <ais523> Slereah_: I fill the Malbolge interpreter with 59049 non-breaking spaces
21:13:08 <ais523> that causes it to go into an infinite loop
21:13:13 <ais523> should make things slightly safer
21:14:01 <olsner> yeah, keep the malbolge interpreter busy while you carefully go back out the way you came
21:14:50 <Slereah_> Is there a simple way to generate 59049 chars.
21:15:21 <ais523> Slereah_: I start with three non-breaking spaces
21:15:32 <ais523> I then make three copies of my three non-breaking spaces, so I have 9 non-breaking spaces
21:15:42 <ais523> I then make three copies of those, gaining 27 non-breaking spaces
21:16:07 <ais523> Slereah_: it's the character , rather than an ordinary space
21:16:22 <ais523> it has an ASCII code above 128, and so gums up the Malbolge interpreter due to the bug in it
21:16:50 <Slereah_> Can't I just use something above 128 that's on my keyboard?
21:16:57 <ais523> Slereah_: there's one there, just after the colon
21:17:01 <ais523> but yes, you can if you like
21:18:45 <ais523> once the Malbolge interpreter's busy with that, I look to see if there's a nearby source of water, and if there isn't proceed to enter the interpreter
21:20:34 <Slereah_> Notepad seems to not appreciate 59049 characters.
21:20:39 <Slereah_> It is currently not responding.
21:20:52 <ais523> Slereah_: remember to delete the final newline
21:21:22 <Slereah_> But, you know, even if it is a malbolge interpreter, it is not hostile
21:21:33 <Slereah_> it won't run after you if you try to search for water.
21:21:37 <ais523> Slereah_: yes, but I wanted to keep it busy while I went inside
21:21:45 <ais523> the water's to cool it down if that infiniloop makes it overheat
21:24:39 <Slereah_> Traceback (most recent call last):
21:24:39 <Slereah_> File "G:/Python25/59.py", line 1, in <module>
21:24:39 <Slereah_> p=open("G:\Documents and Settings\Slereah\Bureau\test.txt","w")
21:24:39 <Slereah_> IOError: [Errno 2] No such file or directory: 'G:\\Documents and Settings\\Slereah\\Bureau\test.txt'
21:24:48 <Slereah_> Oh Python, why must you be so cruel to me.
21:25:03 <Slereah_> I was just gonna do a loop to write in!
21:27:43 * ais523 tried to upload such a file to the Pastebin
21:27:50 <ais523> it's a one-liner to generate that in Perl
21:28:01 <ais523> but it rejected the file because it thought it was binary
21:30:11 <ais523> well, can I enter the interp now?
21:30:36 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Busy.jpg
21:31:02 <ais523> I look around for a safe pathway.
21:31:20 <ais523> if I see one, I run along it
21:32:06 <Slereah_> There seems to be no danger from outside.
21:32:12 <ais523> Slereah_: sorry, I didn't phrase that properly, I meant look for a pathway going deeper into the interpreter
21:32:43 <ais523> grr, programming is hard, even in IRP
21:33:25 <Slereah_> If you want to go explore into the interpreter, just say so.
21:33:34 <ais523> I thought I'd said that already
21:33:40 <ais523> I want to go explore into the interpreter
21:34:25 <ais523> AnMaster: I immobilised a Malbolge interpreter using 59049 metacharacters, and have now used hacking tools to go inside it in search of delicious cake
21:34:41 <ais523> I have a supply of letters, a rope and a rubber chicken with a pulley in it
21:35:05 <ais523> AnMaster: see logs for the day before yesterday for the previous episode
21:35:10 <ais523> I wasn't there then, though
21:35:39 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast.jpg
21:36:45 <ais523> I carefully climb down to the first line of the comments.
21:37:02 -!- ais523_ has joined.
21:37:21 -!- ais523 has quit (""Changing server."").
21:37:24 -!- ais523_ has changed nick to ais523.
21:37:41 <ais523> (freenode asked me to change server due to downtime on the one I was connected to.)
21:41:57 <ais523> so, I clamber carefully down to the first comment
21:42:05 <ais523> then start climbing down the column of asterisks
21:42:30 <ais523> oh, and as you're using Windows, no wonder my signal generator didn't work
21:43:15 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%202.jpg
21:43:16 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%203.jpg
21:43:24 <Slereah_> You're lucky that lion was looking the other way!
21:43:51 <ais523> although I would have tried to distract it with the rubber chicken if necessary
21:44:25 <ais523> I climb down to the bottom of the column of asterisks, grabbing the author's credits on the way
21:44:43 <AnMaster> "a rubber chicken with a pulley in it"
21:45:36 <AnMaster> ais523, no! grab something that would work for comments
21:45:48 <AnMaster> I don't think you can survive outside a comment for long
21:46:07 <ais523> AnMaster: yes I can, I gummed up the interpreter with a whole load of high-bit-set characters
21:46:15 <ais523> it's a known bug in that particular Malbolge interpreter
21:46:23 <AnMaster> yes but will that not cause a compile error?
21:46:33 <AnMaster> when there is a o outside a comment?
21:47:07 <ais523> AnMaster: not sure, you generally have to explore a lot to discover the physics of Slereah_'s game worlds
21:47:10 <Slereah_> Well, he has limitless chars in his pockets.
21:47:22 <Slereah_> He can just make a comment cloak.
21:47:36 <AnMaster> ais523, check if it is c99 compiler
21:48:08 <ais523> AnMaster: trying to figure out a safe way to do that
21:48:08 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%204.jpg
21:48:11 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%205.jpg
21:48:32 <AnMaster> Slereah_, what happened to that space above in the latter?
21:48:38 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%206.jpg
21:48:40 <AnMaster> Slereah_, also ais523 did grab the copyright
21:48:52 <ais523> no, apparently it was too heavy for me to move
21:49:21 <AnMaster> Slereah_, care to scroll down the window a bit?
21:49:33 <AnMaster> ais523, you need a cloak like /*o*/
21:49:43 <ais523> I carefully this on the next few lines, while hiding inside the comment:
21:49:45 <AnMaster> <ais523> I climb down to the bottom of the column of asterisks, grabbing the author's credits on the way
21:49:56 <ais523> #if __STDC_VERSION > 199901
21:50:10 <AnMaster> "I carefully this" you mean "place this"?
21:50:29 <AnMaster> Slereah_, so what happens with that diagnostic?
21:50:31 <ais523> and that Malbolge interp's public domain, so no copyright
21:51:17 <AnMaster> you know, this executes slower than my attempt at a befunge93 interpreter in bash....
21:51:32 <AnMaster> IRP must be the slowest language in existance
21:51:45 <ais523> AnMaster: is a befunge93 interpreter in bash faster or slower than a befunge93 interpreter in INTERCAL?
21:53:01 <ais523> C-INTERCAL 0.28 has a Befunge-93 interp in the /pit directory
21:53:15 <AnMaster> after all C-INTERCAL can take advantage of GCC's -O options
21:53:23 <ais523> OK, I'll run it over here under CLC-INTERCAL
21:53:37 <AnMaster> as in did implement some parts of 98
21:53:58 <ais523> what's a fair test? The Befunge-93 part of Mycology?
21:54:01 <AnMaster> like unlimited height of playfield, but not unlimited width
21:54:19 <AnMaster> ais523, well that bit would detect it as 98 I think
21:54:20 <ais523> Interfunge errors out on excessive height or width
21:54:34 <ais523> so I'd have to crop down Mycology anyway
21:54:47 <AnMaster> well pastebin the cropped version
21:55:01 <AnMaster> Slereah_, well what happend with that diagnostic?
21:57:42 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%207.jpg
21:57:45 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%208.jpg
21:58:04 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%209.jpg
21:58:20 <ais523> if nothing happens, it's C89
21:58:32 <AnMaster> well you got to move down one line
21:58:37 <ais523> unless the compiler really does interpret a #pragma DIAGNOSTIC
21:58:43 <ais523> and yes, I jump down below the #endif
21:58:48 <ais523> in fact not jump, duck
21:58:58 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%2010.jpg
21:59:01 <AnMaster> ais523, as it is windows.... well could be gcc or msvc
21:59:17 <ais523> AnMaster: yes, it could be
21:59:28 <AnMaster> Slereah_, that is because you can't replace a running executable on windows....
21:59:35 <ais523> but that's a pretty good C89 vs C99 test that doesn't crash the program and works at compile time
21:59:50 <Slereah_> AnMaster : I'm not the one feeding him infinite chars!
22:00:03 <ais523> most C99 compilers will complain about a bad pragma if they see that code
22:00:04 <AnMaster> Slereah_, well we was assuming a real OS
22:00:22 <ais523> AnMaster: no, I was assuming Windows when I saw the font in the command line, and the directory name given there
22:00:36 <ais523> that's why my signal generator didn't work
22:00:43 <AnMaster> ais523, well problem is you can't replace a running executable on windows
22:00:52 <AnMaster> ais523, err signal generator?!
22:00:59 <ais523> AnMaster: to kill things, with 9s
22:01:00 <ehird> AnMaster can make even a cake challenge into an OS-pissing contest
22:01:04 <ehird> and protest about things that aren't standard
22:01:44 <AnMaster> ehird, Windows and pre-OSX are the only OS I have seen where you can't replace a open file
22:02:01 <ehird> AnMaster: you're still doing it
22:02:11 <ais523> AnMaster: well, even on POSIX replacing a running file doesn't alter the running of the program
22:02:38 <Slereah_> Well, he's still running on that file.
22:02:41 <AnMaster> Slereah_, still show us compiler output?
22:02:53 <ais523> AnMaster: that is so a metagame output
22:03:14 <ais523> no, I just continue through the game and see if I come across a diagnostic later
22:03:47 <AnMaster> ais523, you can output chars with C preprocessor
22:04:03 <AnMaster> ais523, there is a 99 bottles of bear in C preprocessor
22:04:14 <ais523> Slereah_: I work my way down to the main function
22:04:48 <ais523> AnMaster: look at the earlier pics, I have a comment cloak on already
22:05:03 <AnMaster> ais523, apparently #pragma message
22:05:06 <AnMaster> http://99-bottles-of-beer.net/language-c-c++-preprocessor-115.html
22:05:26 <ais523> see the comment, it says it works only in Visual C++
22:06:47 <ais523> it could be any other compiler claiming to be C99
22:06:48 <AnMaster> ais523, his screenshot of linker output is from the open source IDE Dev-C++
22:07:10 <ais523> I used to use that, and IIRC they open-sourced some old versions
22:07:26 <ais523> besides an open source IDE is still capable of using a closed-source compiler
22:07:29 <AnMaster> ais523, last I checked Dev-C++ used mingw stuff
22:07:37 <AnMaster> not sure if it could be changed
22:07:49 <AnMaster> which indicates mingw I think?
22:07:51 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%2011.jpg
22:08:13 <AnMaster> Slereah_, what one? the one below?
22:08:18 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%2012.jpg
22:09:08 <ais523> Slereah_: I quickly wrap myself in a string literal that initialises a global variable, and then attempt to attack the comment with a C preprocessor.
22:09:42 <ais523> (this is why I grabbed the credits, BTW; it's so I don't discredit the author while throwing preprocessors aroung.)
22:09:49 <Slereah_> Could you rephrase that statement in the term of a copypasta?
22:10:11 <ais523> (that's how I cloak myself)
22:10:26 <ais523> and then run the preprocessor, it's probably with the -E option if you use mingw
22:10:32 <ais523> should eliminate all comments and everything inside them
22:10:59 <ais523> incidentally, isn't my original typo still legal C?
22:11:03 <ais523> you can assign a pointer to an int
22:11:11 <ais523> and nothing's looking at abc, so the UB is never invoked
22:11:14 <Phenax> I'm trying to make a loop that continually goes +1 in Befunge: 0 00g1+00p 00g, - after nine it turns into ;, and keeps turning into different symbols. How can I make it a number and not a character?
22:11:31 <ais523> Phenax: start with a NUL in the top left corner
22:12:03 <ais523> or write one there yourself: 000p00g1+00p00g, (and reloop)
22:12:07 <AnMaster> because that is what you are doing
22:12:20 <ais523> and use numeric output not string output
22:12:21 <AnMaster> ais523, yes, you need to write it out yourself in fact
22:12:32 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Inside%20the%20beast%2013.jpg
22:12:46 <AnMaster> Slereah_, what about the pre-processor?
22:12:54 <Slereah_> (You are once again of that shiny red, you feel more real already!)
22:13:08 <AnMaster> <ais523> and then run the preprocessor, it's probably with the -E option if you use mingw
22:13:20 <ais523> but you'll want -o too to give an output file, or it'll output to stdout
22:14:14 <Slereah_> (I should probably close the malbolge program by the way, it's starting to take way too much power)
22:14:36 <ais523> Slereah_: yep, it'll just infiniloop for ever, so no need to keep it running because you know what it'll do
22:14:42 <AnMaster> Slereah_, well in the game it is still running
22:15:17 <ais523> Slereah_: gcc -E malbolge.c -o malbolge.i at the command line is possibly the simplest wat
22:15:35 <Slereah_> I should also probably save the C file
22:15:37 <AnMaster> Slereah_, well in a terminal something like: gcc -E oldfile.c -o newfile.c
22:15:37 <ais523> or most IDEs have a preprocess option in the menus somewhere
22:16:03 <AnMaster> Phenax, of course it overwrites itself
22:16:04 <ais523> Phenax: you're overwriting your own code, but that's fine in Befunge
22:16:13 <ais523> if you don't want to, just put a space at the start of the program
22:16:18 <ais523> so it's overwritten instead
22:16:23 <AnMaster> you just want a program to just add 1 to a counter?
22:16:37 <AnMaster> and that counter needs to be in funge space?
22:16:39 <ais523> I think Phenax is deliberately trying to do it using g and p
22:16:51 <AnMaster> if it doesn't, you could just do:
22:17:03 <Phenax> Well in BuQunge (I don't know if it's crap, but I like debugging, so I use it in conjunction with vanilla) it literally just deletes the value and leaves it blank
22:17:30 <ais523> Phenax: NULs are invisible, so you can't see them
22:17:48 <AnMaster> Phenax, try ccbi, it got good debugging
22:18:02 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Go%20and%20be%20free.jpg
22:18:03 <AnMaster> but cfunge lacks good debugger yet
22:18:08 <ais523> so it probably works, you just can't see what happened
22:18:10 <Phenax> I don't care much for speed
22:18:19 <AnMaster> Slereah_, duh. full path of course
22:18:29 <Phenax> Any recommended editor for Befunge? It's kind of annoying to edit :\
22:18:39 <ais523> Phenax: Emacs' picture-mode is good
22:18:42 <Slereah_> It says that gcc is not a valid command, AnMaster.
22:18:52 <ais523> Slereah_: it's probably on your computer, it just can't find it
22:18:55 <AnMaster> Slereah_, that is because it isn't in PATH
22:18:56 <ais523> AnMaster: M-x picture-mode
22:19:02 <ais523> causes all lines to become logically infinitely long
22:19:22 <ais523> and you can set the cursor motion after you type a char to go downwards or backwards if you like
22:19:36 <AnMaster> Slereah_, I don't know on windows
22:19:47 <ais523> Slereah_: not sure what directory it's in, but searching for gcc.exe should tell you
22:19:54 <ais523> AnMaster: I used to use Windows quite a bit
22:19:59 <ais523> but I didn't use mingw
22:20:16 <AnMaster> ais523, and I got custom location for mingw anyway
22:20:25 <AnMaster> it varies depending on how it was installed
22:20:39 <AnMaster> ie: by itself, by dev-c++, by msys
22:21:17 <AnMaster> ais523, ah the picture mode is mostly useful when you got a small screen
22:21:30 <AnMaster> I tend to keep my befunge programs no wider than 100 chars
22:21:35 <ais523> AnMaster: it's useful anyway, to avoid the need to fill lines with spaces
22:21:39 <ais523> you press down, the cursor goes down
22:21:45 <ais523> no problems with jumping to the end of the next line
22:22:12 <AnMaster> ais523, does it remove unneeded trailing spaces?
22:22:27 <AnMaster> and un-needed trailing newlines?
22:22:28 <ais523> but you have to watch out for it converting spaces to tabs
22:22:48 <ais523> it doesn't convert spaces to tabs
22:22:53 <ais523> but it adds them as tabs sometimes
22:22:56 <Slereah_> Ah, GCC was on the other hard drive.
22:22:59 <ais523> actually, I'm not sure about the trailing spaces
22:23:42 <Slereah_> (What's the command to change HD?)
22:23:46 <ais523> no, it doesn't remove them
22:23:49 <AnMaster> Slereah_, why not just a real OS, even ehird prefers POSIX, Mac OS X is POSIX
22:23:56 <ais523> Slereah_: D: to change to drive D
22:24:00 <ehird> <AnMaster> Slereah_, why not just a real OS, even ehird prefers POSIX, Mac OS X is POSIX
22:24:03 <ehird> I love how you say that casually
22:24:04 <ais523> AnMaster: presumably not in that case
22:24:18 <ehird> I am utterly speechless how you can consider that a viable option to do for the sake of an irc game.
22:24:31 <AnMaster> Slereah_, you could use f:\full\path\to\gcc.exe
22:24:36 <ais523> AnMaster: technically speaking Windows is POSIX too, at least when they tested it they got a 'did not definitively fail' answer
22:24:45 <ais523> and that was with lots of special stuff just to get it to pass the tests
22:25:59 <AnMaster> ais523, but how the heck did they handle that POSIX requires case sensitive filenames?
22:26:14 <ais523> probably a hack on the ~1 stuff
22:26:42 <ais523> I wonder how they handled fork()? Probably just by returning ENOTIMPLEMENTED, IIRC they did that whenever it was allowed
22:27:07 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Go%20and%20be%20free%202.jpg
22:27:34 <AnMaster> Slereah_, "Pime Taradox" means?
22:27:47 <Slereah_> http://www.encyclopediadramatica.com/Pime_taradox
22:27:56 <ais523> well, in that case I continue on my journey through the program
22:28:19 <ehird> AnMaster: os x is a case insensitive filesystem
22:28:26 <ehird> AnMaster: and its posix
22:28:32 <AnMaster> ehird, it is? didn't know that
22:28:34 <ais523> Slereah_: under the # 78 line
22:28:35 <ehird> its even a real unix
22:28:56 <ehird> <AnMaster> not that site please...
22:28:57 <ais523> ehird: its case sensitivity is user-configurable, I think
22:29:05 <ehird> you asked him to define a word
22:29:18 <ehird> since its on ed, it'll be a *chan or similar meme
22:29:24 <ehird> ergo ED will be the only place for a definition
22:29:28 <ehird> sans urbandictionary or osmethign else
22:29:31 <ehird> ais523: not really
22:31:00 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Go%20and%20be%20free%203.jpg
22:31:17 <Slereah_> People would rather trick Satan than write in Malbolge.
22:32:00 <ais523> well, I then through a 59050th top-bit-set character into the interpreter
22:32:03 <ais523> wait for it to error out
22:32:14 <ais523> and then run out through the exit(1) that I've just modified the source code into
22:33:09 <Slereah_> Shouldn't you get out of it before you throw stuff in? :o
22:33:25 * ais523 is lucky Ben Olmstead always but parens around the argument to return
22:34:02 <ais523> Slereah_: OK, that seems reasonable
22:34:17 <ais523> I write # 1 "malbolge.c" on the line immediately below where I am
22:34:30 <ais523> then that's line 1 of the program, by definition, so I'm at the place where I entered
22:35:13 <AnMaster> Slereah_, he is playing by the rules!
22:35:34 <Slereah_> Well, you're blue now, mister comment.
22:35:38 <ais523> Slereah_: I throw in the 59050th char
22:36:19 <AnMaster> ais523, that cause a crash doesn't it iirc?
22:36:32 <ais523> to be precise, it causes an exit(1) with the new source code
22:36:38 <ais523> then all I have to do is run through that exit
22:37:35 <AnMaster> Slereah_, and there is NO way you will get anyone to write malbolge for this you know
22:38:49 <Slereah_> o[Malbolge interpreter] Can't open file o
22:39:03 <Slereah_> YOU ARE NO CLOSER TO THE DELICIOUS CAKE
22:39:08 <ais523> Slereah_: I run through the exit it created when it put the "Can't open file" up
22:39:41 <Corun> But, I played the delicious cake game with slereah as the game master the other day
22:40:06 <ais523> Corun: this time wasn't just ASCII art, it also had screenshots of ASCII art
22:40:11 <ais523> with syntax higlighting
22:40:53 <ais523> Slereah_: I walk over to the delicious cake
22:41:07 <ais523> Slereah_: I eat the delicious cake.
22:41:39 <Slereah_> But still, a simpler solution was to change the program to make it output "o" and input yourself in :o
22:41:51 <ais523> BTW, a long time ago I was working on an esolang-based text adventure
22:41:58 <ais523> I've only done three puzzles
22:42:03 <ais523> none of which lead to anywhere useful
22:42:09 <ais523> but it might still be fun over IRC
22:42:25 * ais523 wonders whether to promise "There will be cake"
22:42:34 <AnMaster> <ais523> I've only done three puzzles
22:42:44 <ais523> although if I do make that promise, I'll put some cake in as an item
22:42:59 <ais523> AnMaster: there's a Befunge Hunt the Wumpus
22:43:11 <ais523> my game wasn't in an esolang, although I might translate it into one
22:43:17 <ais523> but it had esolang-based puzzles
22:43:45 <ais523> You are standing in the main hall of what appears to be some sort of
22:43:49 <ais523> castle. There is a door in each of the east and west walls; the one in
22:43:50 <ais523> the west wall has a [ symbol marked on it, but there are no markings on
22:43:50 <ais523> the door in the east wall. There is a large staircase, which goes upwards
22:43:50 <ais523> to a balcony high on the north side of the room. The south of the room is a
22:43:50 <ais523> large door, heavily barred with wooden bars that you would have no chance
22:43:58 <ais523> three possible ways to go
22:44:00 <ais523> each one leads to a different puzzle
22:44:08 <ais523> none of the puzzles lead anywhere yet, though
22:44:13 <ais523> although there are 4 possible destinations
22:44:54 <Slereah_> Also, here's your end theme ais523 : http://youtube.com/watch?v=RthZgszykLs
22:45:11 <ais523> Slereah_: can't watch it, I decided to uninstall Flash
22:45:21 <ais523> because it isn't good for much other than watching videos
22:45:29 <ais523> and most Flash-based websites are lousy
22:46:14 <ais523> it prevents me watching YouTube, though
22:46:30 <AnMaster> simple befunge-98 counter that prints 1-1000
22:46:32 <ais523> AnMaster: that looks lousy in a proportional font
22:46:41 <AnMaster> ais523, well don't use that for irc
22:46:45 <ais523> and you could make that befunge-93 easily enough
22:47:20 <ais523> 5558*** is probably the easiest way to write 1000 in Befunge-93
22:47:37 <AnMaster> ais523, not sure if it is the shortest
22:48:00 <ais523> shortest, or smallest?
22:48:03 <AnMaster> I just divided with 5 each time
22:48:05 <ais523> remember Befunge is 2D
22:48:10 <AnMaster> ais523, shortest in source code
22:48:21 <ais523> what if there was a 2x3 solution?
22:49:05 <ais523> anyone want a go at the text adventure I started above, anyway?
22:49:07 <AnMaster> ais523, I just divided by 5 a few times as I knew it would be even numbers each time
22:49:21 <ais523> AnMaster: 5 and 2 are the only prime factors of 1000
22:49:34 <ais523> multiplying 5 with 2, or 5s with each other, goes above 10
22:49:37 <AnMaster> ais523, don't have any calculator for that around
22:49:42 <ais523> so multiplying the 2s is the only sane way
22:50:05 <ais523> so it's probably on your computer
22:50:11 <ais523> but I knew that one off by heart anyway
22:50:21 <Slereah_> Well, prime factorisation is unique
22:50:23 <AnMaster> bash: factor: command not found
22:50:30 <ais523> OK, so not on your computer
22:50:36 <Slereah_> And since 10*10*10 = 1000, it's pretty obvious that it's 2 and 5
22:50:38 <AnMaster> but I didn't have any handy tools to do it
22:51:02 <ais523> AnMaster: you're 1 hour later than me, then
22:51:09 <ais523> but feel free to leave, nobody's keeping you
22:51:23 <AnMaster> anyway infinite counter is easier:
22:51:44 <AnMaster> not sure if there is any shorter way
22:51:59 <ais523> unless there's an increment instruction
22:52:30 <AnMaster> ais523, not that I know of, not in core, and not in any fingerprints I implemented iirc
22:52:32 <ais523> I can't think of one that's shorter than Befunge for that
22:52:44 <Phenax> Haskell is one longer.. [1..]
22:52:57 <ais523> Phenax: that's not a program, just an expression
22:53:06 <ais523> so it'll work in ghci, I think, but not ghc
22:53:48 <ais523> t.hs:2:0: parse error (possibly incorrect indentation)
22:54:03 <ais523> AnMaster: doing integer to text conversion's a pain in Brainfuck
22:54:30 <ais523> if you do have integer output, say o, it would be +[o+]
22:54:36 <AnMaster> Slereah_, for cfunge, depending on compile time options, either MAX_UINT32 or MAX_UINT64
22:54:41 <Phenax> Are there any other good "General Purpose" esoteric languages like Befunge?
22:54:58 <ais523> Phenax: if you're talking about usability, Befunge's one of the best
22:55:11 <ais523> although I find Thutu useful for some things, it's more useful with wimpmode arithmetic
22:55:15 <AnMaster> Phenax, there is even socket support in Befunge
22:55:24 <Phenax> Yeah, I'm looking for something esoteric but still not impossibly insane to make something like the Sieve of Eratosthenes in
22:55:25 <AnMaster> Phenax, with the correct befunge-98 fingerprint
22:55:32 <ais523> and INTERCAL's pretty good for many things, but extremely weak on string handling
22:55:48 <Phenax> i'm using ccbi for now
22:55:50 <ais523> if you don't use strings, though, writing programs is not too hard
22:55:54 <AnMaster> Phenax, ccbi is good, very good
22:56:04 <Phenax> yeah, i'm mainly looking at doing mathematical programs
22:56:18 <AnMaster> Phenax, I think Sieve of Eratosthenes may be implemented
22:56:29 <ais523> oh, and INTERCAL outputs in Roman numerals by default, but there are libraries for output in decimal
22:56:55 <ais523> Phenax: http://intercal.freeshell.org
22:57:13 <AnMaster> Phenax, http://esolangs.org/wiki/Befunge#Examples
22:57:37 <AnMaster> don't ask me how it works, I need to analyze it first
22:57:58 <Phenax> Befunge is ackward to program in a regular text editor lol
22:58:51 <ais523> Atari-syntax INTERCAL is much easier
22:59:07 <ais523> but that syntax was designed to work well on ASCII-based systems
23:00:06 <AnMaster> Phenax, well I don't know, depends on coding style
23:00:27 <AnMaster> Phenax, mostly you can make program flow simply like:
23:00:59 <ais523> AnMaster: you're wasting every second line
23:01:23 <AnMaster> ais523, yes but adding new stuff is a pain
23:01:59 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
23:02:13 <Slereah_> I wonder if I could do a Church numeral -> ASCII converter for Lazy Bird.
23:02:28 <Slereah_> Checking if a combinator is a numeral is easy enough.
23:02:54 <Slereah_> It would get rid of all the . problems.
23:03:11 <Slereah_> And be terrible to program in, but well.
23:13:00 * Slereah_ downloads the malbolge interpreter again
23:13:12 <Slereah_> Mine is full of strange things for some reason.
23:25:12 <ehird> <ais523> anyone want a go at the text adventure I started above, anyway?
23:27:31 -!- Judofyr_ has joined.
23:27:31 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
23:28:26 <Slereah_> I just inputed an empty file in the Malbolge interpreter, and it does not terminate :o
23:28:45 <ehird> Slereah_: Of course not.
23:29:07 <Slereah_> Then why did Ais needed 59.049 to do that?
23:29:30 -!- comex has joined.
23:29:59 <ehird> I think to keep it busy.
23:30:03 <ehird> As opposed to just inflooping
23:37:47 <ehird> Slereah_: do another cake challenge
23:37:50 <ehird> but with a cross of
23:37:55 <ehird> zork & hunt the wumpus
23:37:59 <ehird> (i.e. no actual pics)
23:40:33 <Slereah_> Plus, I'm not the one barging in on the code :o
23:40:37 <ehird> Slereah_: google 'em
23:41:42 <Slereah_> By no pix, do you mean no pix, or not even ASCII art?
23:41:57 <Slereah_> http://en.wikipedia.org/wiki/Hunt_the_Wumpus
23:42:04 <Slereah_> "What a Wumpus might look like
23:42:56 <ehird> Slereah_: not even ascii art
23:43:24 <Slereah_> I doubt I have the game mastering skill necessary.
23:45:10 <ehird> Slereah_: http://thcnet.net/zork/index.php zork
23:45:43 <ehird> Slereah_: Zork is where grues originated
23:46:01 <ehird> Slereah_: zork invented grues
23:46:28 <Slereah_> I know, you said it three lines above
23:47:35 <Slereah_> Plus, such a game would need an actual scenario of some sort.
23:47:45 <Slereah_> I would have to, you know, actually work at it.
23:50:25 <ehird> http://bnewtz.cannet.com/wumpus/
23:52:24 <Slereah_> I'm not a big fan of text based adventures
23:52:54 <ehird> Slereah_: Wumpus aint a text adventure
23:53:00 <Slereah_> but it is quite excruciating to find out what you can act upon
23:53:30 <ehird> It's a type-and-shoot game of bottomless pit proportions!
23:55:38 <sauxdado> Slereah_: it's less excruciating with many modern interactive fiction games
23:55:46 <Slereah_> THE CAKE HAS BEEN KIDNAPPED BY NINJAS
23:55:57 <Slereah_> ARE YOU BAD ENOUGH A DUDE TO FIND THE CAKE?
23:57:36 <sauxdado> Slereah_: for the same reason that many modern webpages look so much nicer than the pages from the 90s
23:58:07 <Slereah_> sauxdado : Would it be that much tougher to just make a LIST option to list what's active?
23:58:15 -!- olsner has quit ("Leaving").
23:58:44 <ehird> Slereah_: Removes some challenge
23:58:44 <sauxdado> Slereah_: that's a different genre.
23:59:07 <sauxdado> Slereah_: consider a Quake clone where you have a list of options of which monster to kill.
23:59:19 <Slereah_> Well, I suppose that at least easily savable games would make it nicer
23:59:45 <Slereah_> sauxdado : Most adventure games do this in some form
00:00:06 <Slereah_> Objects that you can interact with usually are easy to spot
00:00:07 <ehird> Slereah_: No they do not
00:00:18 <Slereah_> Unless they're pixel hunting games.
00:00:42 <sauxdado> Slereah_: i haven't played any interactive fiction games where there would be problems with saving.
00:01:05 <Slereah_> I'm not very used to all-comand
00:01:06 <GregorR> RodgerTheGreat: Y'know what's really great about my People from the Internet T-shirt? No two people interpret it in /quite/ the same way :P
00:01:14 <Slereah_> I started 'em computers in 95.
00:01:48 <sauxdado> many really good IF games came out _after_ 95.
00:02:23 <Slereah_> But didn't have good publicity apparently.
00:02:39 <Slereah_> Even though I had CD's with 5000 sharewares back then
00:03:44 <GregorR> RodgerTheGreat: Some people just find it funny, some people think I'm making vast claims about all Internet users (which I am, but that's not the point X-P), some people are offended (somebody wearing a Linux T-shirt was :P), ...
00:04:06 <sauxdado> Slereah_: really good things tend to not be very popular. Modern IF is often more of an art form than a game genre. So it's not very popular outside of a small community of artsy-programmer geeks.
00:04:41 <Slereah_> sauxdado : I played silly arcade and Lucas Arts adventure games back then.
00:04:58 <GregorR> RodgerTheGreat: It definitely draws comments X-D
00:05:50 <sauxdado> and photopia kinda started a wave
00:06:15 <sauxdado> it's like... one of the first modern IF game or something
00:06:23 <sauxdado> so you're unlikely to have been playing any in 95
00:07:12 <Slereah_> sauxdado : I tried this one : http://en.wikipedia.org/wiki/The_Colour_of_Magic_%28computer_game%29
00:07:55 <sauxdado> well, that's ancient and probably very crappy
00:08:00 <Slereah_> And this one : http://www.mobygames.com/game/nine-princes-in-amber
00:08:14 <Slereah_> So no game from after 86 for me :o
00:08:30 <ehird> sauxdado: what do you think of the HHGTTG game?
00:08:33 <Slereah_> I only tried them because I like the series.
00:08:52 <sauxdado> Slereah_: the difference between those games and modern IF games is about as big as the difference between _graphical_ games from now and from '86
00:09:13 <Slereah_> Although Nine prince in Amber was sort of graphical
00:09:15 <sauxdado> okay, maybe not as extreme, but very appreciable
00:09:25 <Slereah_> It had big ANSI pix to go with the text.
00:09:43 <sauxdado> ehird: i'm not really a big fan....
00:09:55 <sauxdado> ehird: i never got far in it (or any other infocom game)
00:09:56 <ehird> sauxdado: of the books or..
00:10:00 <Slereah_> But Maniac Mansion was okay though.
00:10:04 <ehird> i didn't get far either
00:10:07 <ehird> they are really really hard
00:10:16 <ehird> Slereah_: oh lawd maniac mansion owns
00:10:35 <Slereah_> Although Maniac Mansion was too linearly-non-linear
00:10:43 <ehird> sauxdado: I gotta admire the code that was behind that
00:10:50 <ehird> it's like AMICED in turkey bomb
00:10:51 <Slereah_> By that I mean that you could do a lot of things, but few of them got you to the end.
00:10:57 <ehird> Slereah_: That was the game's strength
00:11:01 <ehird> Ever microwaved the hamster?
00:11:07 <ehird> Grave of player appears in the yard.
00:11:10 <Slereah_> Never went far enough to do it.
00:11:16 <ehird> microwaved then gave back to owner
00:11:26 <Slereah_> But I did microwave it in DOTT!
00:11:36 <ehird> Slereah_: Lucasarts buddies <3
00:12:38 <Slereah_> I played most of them, except some of the very first.
00:12:55 <Slereah_> I never went far on Indy 3 also
00:13:20 <ehird> I can 'speed run' Monkey Island 1 pretty well though
00:13:27 <ehird> Not really a speed run
00:13:29 <ehird> But not slow either
00:13:40 <Slereah_> I know most of the solutions :D
00:14:03 <ehird> dig's atmosphere was incredible
00:14:06 <ehird> it was really hard though
00:14:21 <ehird> i never actually completed monkey island 2
00:14:27 <ehird> because of lechuck in the fucking underground caves
00:14:31 <Slereah_> Well, it was packaged with Afterlife, which was even harder :o
00:18:22 <ehird> Slereah_: monkey island 4 suxed
00:18:46 <Slereah_> That's because nothing is as good as it used to!
00:19:04 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:19:22 <ehird> Slereah_: but MI4 did sux.
00:19:36 <Slereah_> Also cartoon adventure games do not adapt well to
00:20:03 <Slereah_> They should just have gone back to the serious graphics of 1 and 2 if they wanted to do 3D.
00:20:55 <ehird> Slereah_: Loom was a work of art. y/n
00:22:43 <ehird> i never finished it
00:24:01 <Slereah_> YOU SHOULD PROBABLY NOT HAVE READ THAT
00:24:10 <ehird> Slereah_: i think i know the ending
00:24:19 <ehird> i mean, it doesnt go
00:24:23 <ehird> and stay like that forever
00:24:32 <ehird> but, Slereah_, sequels were planned
00:24:34 <ehird> thus the cliffhanger
00:24:34 <Slereah_> But A POWERFUL SUSPENSE SHROUDS THE ENDING
00:26:03 <Slereah_> That's why people probably shouldn't do cliffhangers in a business where sequels usually end in the trash :o
00:28:23 <Slereah_> "The package also offered an illustrated notebook, The Book of Patterns, supposedly belonging to apprentice weavers in the game world."
00:28:35 <Slereah_> Man, I would have liked to know this when I got the game.
00:29:43 <Slereah_> Apparently the second game was about Nailbender
00:29:53 <Slereah_> I wonder what the interface would have been like.
00:30:06 <Slereah_> But I suppose that when you have a hammer, every problem looks like a nail.
00:31:33 <Slereah_> I should buy the Loom original package.
00:31:38 <ehird> <Slereah_> Apparently the second game was about Nailbender
00:31:38 <ehird> <Slereah_> I wonder what the interface would have been like.
00:31:38 <ehird> <Slereah_> But I suppose that when you have a hammer, every problem looks like a nail
00:33:15 <GregorR> I love how you say that as if any channel without a quote database is living in the stone age :P
00:33:23 <ehird> Slereah_: We will.
00:33:31 <ehird> When eso-std.org is up.
00:33:34 <ehird> It will also have a pastebin
01:19:37 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
01:21:08 -!- Slereah has joined.
01:21:22 <Slereah> I accidentally kick my computer, and everything goes to hell
01:24:38 -!- Sgeo has joined.
01:26:34 <Slereah> THE CAKE HAS BEEN KIDNAPPED BY NINJAS!
01:26:46 <Slereah> ARE YOU BAD ENOUGH A DUDE TO RESCUE THE CAKE?
01:27:15 <Slereah> It's so delicious and moist.
01:29:46 -!- evincar has joined.
01:30:23 <evincar> ehird: My Selector interpreter is almost done. I just need to get off my ass and add BECOME and ESCAPE.
01:30:56 <ehird> Slereah: AW COME ON
01:30:59 <ehird> I need delicious cake
01:30:59 <evincar> Heh. You and your silly time zone.
01:31:14 <Slereah> YOU SEE A CAKE IN FRONT OF YOU
01:33:36 <evincar> Heh. The site error page reads "Esolang has a problem."
01:33:47 <evincar> ...which it does on a *normal* day. ^_^
01:34:39 <Slereah> That will teach you to program a website on PSOX!
01:35:22 * Sgeo doesn't appreciate using "PSOX" as a synonym for "buggy"
01:35:25 <evincar> btw, my hello world for Selector was a bit flawed. I forgot to add a PICK ZERO after the first GO BACK, so it output a null in place of an H.
01:36:00 <ehird> * Sgeo doesn't appreciate using "PSOX" as a synonym for "buggy"
01:36:06 <Slereah> Sgeo : Here, have a kitten
01:36:07 <ehird> nobody cares what you appreciate in relation to PSOX
01:36:07 <Slereah> http://membres.lycos.fr/bewulf/Divers/27-esteem3.jpg
01:36:10 <ehird> just thought I'd point that out
01:37:36 <Slereah> Still no update on EsCo speaking of which :o
01:41:48 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
01:42:49 <Sgeo> I don't see why "PSOX" would be a synonym for "buggy" though
01:42:54 <Sgeo> Is it really buggy?
01:43:29 <ehird> Sgeo: It's vaporware. But mainly we make fun of it because you'd never shut up about it.
01:44:17 <Sgeo> ehird, if people expressed interest, I'd work on it. Also, if 1.0b1 is done, there will be no Safety
01:44:45 -!- Slereah has joined.
01:44:57 <Slereah> It seems that a slight shock makes my computer crash :o
01:45:07 <Slereah> I tried the obvious solution, by hitting it even more
01:52:43 <evincar> Can I get your opinion on a site layout I'm designing?
01:52:47 <evincar> http://www.aquilocomputers.com/computers/delta.shtml
01:52:59 <evincar> You need a modern, fairly standards-compliant browser.
01:53:12 <ehird> evincar: Eurgh. My eyes broke.,
01:53:13 <evincar> It uses transparency a lot, and I'm wondering how readable it's going to be.
01:53:22 <ehird> evincar: And if you think that page is standards compliant think again.
01:53:37 <ehird> <li onmouseover="className='ie_hover';" onmouseout="className='';"> // unobtrusive javascript eh
01:53:41 <evincar> If you're viewing it in IE.
01:53:46 <Slereah> Why is there a pink computer you queermo.
01:54:04 <evincar> I needed a preview image and that was the first case to show up on newegg.
01:54:10 <ehird> evincar: Err, do it via javascript.
01:54:15 <ehird> You can easily find the elemtns and apply the styles.
01:54:19 <ehird> The Behaviour library makes it good.
01:54:25 <ehird> evincar: Adn you have a doctype i nthe middle of the page, wtf.
01:54:36 <evincar> That's the crappy hosting.
01:54:50 <ehird> i don't really like the design.
01:55:18 <evincar> So how isn't it standards-compliant? Other than the fact that my code gets broken by my host?
01:56:27 -!- pikhq has quit (Read error: 104 (Connection reset by peer)).
01:56:51 <ehird> http://bennolan.com/behaviour/
01:57:50 <Sgeo> Is there any interest in PSOX?
01:59:45 <evincar> ehird: please answer my question! If the code is nonstandard in too many places, I want to change it!
02:00:14 <ehird> evincar: not necessarily nonstandard
02:00:18 <ehird> don't inline JS like that
02:00:22 <ehird> it's about the spirit not the letter
02:00:24 <ehird> use behaviour like i linked
02:00:55 <evincar> I'll use something like it. I really want my own codebase on this one, since it's going to be proprietary.
02:02:33 <ehird> you are refusing to use an open source library, because you're writing aproprietary site?
02:02:35 <evincar> ehird: If people stopped using IE, I wouldn't have to waste time and money hacking for it. ^_^
02:02:49 <ehird> evincar: So wait, what are you going to do, disable right clicking?
02:02:51 <evincar> It's because it's a learning experience.
02:03:02 <ehird> It's not a learning experience to rewrite a simple library :|
02:03:34 <evincar> And disabling right-click is the stupidest thing possible.
02:03:43 <Phenax> mm baloney and salsa sandwich
02:03:46 -!- Corun has quit (Read error: 110 (Connection timed out)).
02:03:50 -!- ehird has quit (Remote closed the connection).
02:04:24 * evincar high-fives Phenax for making an awesome sandwich in the spirit of eso
02:05:22 -!- pikhq has joined.
02:06:47 -!- evincar has quit ("ChatZilla 0.9.81 [Firefox 2.0.0.14/2008040413]").
03:05:59 <Slereah> "Copies input to output until ASCII 26 (EOF)" <- why 26?
03:54:26 -!- GreaseMonkey has joined.
04:03:29 -!- sebbu2 has joined.
04:20:23 -!- RodgerTheGreat has quit.
04:20:54 -!- sebbu has quit (Read error: 110 (Connection timed out)).
04:20:54 -!- sebbu2 has changed nick to sebbu.
05:20:52 -!- Judofyr_ has quit (Read error: 110 (Connection timed out)).
06:31:47 -!- kalyaka has joined.
06:32:37 -!- kalyaka has left (?).
06:44:17 -!- Judofyr has joined.
06:53:07 -!- Judofyr_ has joined.
06:53:07 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
07:19:03 -!- olsner has joined.
07:34:37 -!- Iskr has joined.
07:44:40 -!- pikhq_ has joined.
07:50:14 -!- pikhq has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:16:30 <AnMaster> Deewiant, should & instruction handle negative numbers?
08:16:48 <AnMaster> both ccbi and cfunge seems to strip the -
08:18:55 <AnMaster> Deewiant, also is this correct for mycouser in ccbi:
08:19:00 <AnMaster> UNDEF: STRN fingerprint not loaded, won't check I.
08:19:32 <AnMaster> I thought CCBI implemented STRN?
08:26:37 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
08:28:31 <AnMaster> Phenax, there still? I made my counter a bit nicer: http://rafb.net/p/ijksY522.html
08:40:10 <fizzie> Arr, I've lost the more optimized forms of that recursive fibonacci that were on mooz's befunge page which is now gone; I only have the intermediate form http://rafb.net/p/Ra5Nj196.html
09:53:38 <Deewiant> AnMaster: & is quite precisely specified, negatives don't work.
09:54:02 <Deewiant> as regards STRN, evidently the mycology version that's out has an 'r' left there instead of '('. :-P
09:57:45 <fizzie> That & specification sounds curious: it reads "up until (but not including) the point -- where the next digit would cause a cell overflow"; but in one particular case that depends on the character. For signed 32-bit, after reading "214748364" you should still read the next digit if it's 0-7, but not if it's 8 or 9.
09:59:04 <fizzie> I wonder how many implement it like that.
09:59:26 <fizzie> I guess it needs a one-character lookahead for the "stopped being digits" thing anyway.
10:00:05 <Deewiant> although there's probably a specific input where CCBI gets confused and returns the wrong thing.
10:04:43 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
10:04:53 -!- bsmntbombdood_ has joined.
10:05:22 -!- Tritonio has quit (Remote closed the connection).
10:24:29 <AnMaster> If the correct value is outside the range of representable values, {LONG_MIN}, {LONG_MAX}, {LLONG_MIN}, or {LLONG_MAX} shall be returned (according to the
10:24:29 <AnMaster> sign of the value), and errno set to [ERANGE].
10:25:00 <AnMaster> from POSIX specs for strtol/strtoll
10:42:13 <fizzie> And what good does strtol do, if you want to stop reading before an overflow would occurr, and not clamp the value.
10:42:28 <AnMaster> guess I will have to change it
10:42:53 <AnMaster> so I can just use a copy with some changes I hope
10:43:25 -!- GreaseMonkey has quit ("Unisex.").
10:43:25 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
10:43:25 -!- Slereah has joined.
11:04:24 <AnMaster> # define LLONG_MAX 9223372036854775807LL
11:04:25 <AnMaster> Please input a number: 777777777777777777777777777777777777777
11:04:25 <AnMaster> UNDEF: got 3014526681976609905 which is hopefully correct.
11:05:09 <AnMaster> it works fine for numbers that doesn't overflow
11:07:26 <AnMaster> 7777777777777777777 * 10 + 7 = 3990801482939571313 !?
11:07:46 <AnMaster> stepping through gdb seems to show it is
11:11:16 <fizzie> Well, I don't think that's very strange. 77777777777777777777 modulo 2^64 is 3990801482939571313.
11:11:49 <AnMaster> fizzie, it overflows in other words
11:11:58 <AnMaster> however, how do I detect that happened?
11:12:49 <AnMaster> or are there cases where that won't work?
11:14:08 <AnMaster> fizzie, oh but I did use signed type, int64_t, not uint64_t
11:16:47 <fizzie> Signedness doesn't really matter that much. Or, well, it does matter in that signed integer overflow is undefined behaviour, but most places use two's-complement representation for signed numbers and do the sensible thing.
11:17:19 <AnMaster> well, how would you handle this reading then
11:17:55 <AnMaster> fizzie, the "overflow to avoid" would be either 32-bit signed or 64-bit signed, depending on compile time options
11:21:39 <fizzie> Well, if you want to catch the overflow before it happens, you need two tests; if x > FOO_MAX/10, then already the x*10 would overflow, and if that x*10 > FOO_MAX-a, then x*10+a would overflow.
11:23:35 <AnMaster> fizzie, is the result of signed overflow undefined or implementation defined
11:23:53 <fizzie> Undefined is my guess, but I didn't check the standard.
11:25:40 <AnMaster> it doesn't seem to be mentioned with the word "overflow" at least
11:26:05 <AnMaster> only thing about overflow is for floating point
11:27:14 <AnMaster> search doesn't find ligatures in the pdf
11:27:28 <AnMaster> "overflow" that isn't fl but a ligature
11:29:53 <fizzie> Well, 3.4.3 undefined behavior "An example of undefined behavior is the behavior on integer overflow."
11:30:29 <AnMaster> fizzie, and that was the ligature
11:30:40 <AnMaster> so didn't find it with a search at first
11:30:45 <fizzie> Xpdf really should allow searching with regexps, 'over.low' would've helped.
11:35:29 <AnMaster> poppler or whatever it is called
11:35:56 <AnMaster> fizzie, even odder is that the search dialog contains a regex checkbox, but it is greyed out
11:36:10 <AnMaster> it is the standard KDE search dialog so...
12:01:41 <Slereah> Any of you knows how to use rost?
13:26:19 -!- Corun has joined.
13:35:31 <Slereah> Like the usenet of freenet.
13:43:41 -!- Corun has quit (Connection timed out).
13:45:39 <Slereah> Frost is already isnstalled
13:45:45 <Slereah> Would you happen to know how to download the archives of a group?
13:45:48 <AnMaster> both are coded in java iirc, so you'll need a JRE
13:45:58 <Slereah> I don't have anything more recent than the instalation.
13:46:02 <AnMaster> Slereah, I think they are announced on some list
13:46:15 <AnMaster> there is no list of all the groups existing
13:46:25 <AnMaster> rather, you got to know the name
13:46:35 <Slereah> What I want is, the messages from before I got thar.
13:46:43 <AnMaster> there is some list where ppl announce groups
13:46:52 <AnMaster> Slereah, huh? that is not possible really
13:47:05 <Slereah> I remember doing that on some newsgroup :o
13:47:11 <AnMaster> there is no archive of old messages
13:47:14 <Slereah> Although it was not me, but a guy who helped me.
13:47:30 <Slereah> I got like messages years old that way
13:47:47 <AnMaster> nor is there by default for usenet
13:48:11 <AnMaster> Slereah, also by default frost will expire old messages iirc
13:48:13 <Slereah> Are newsgroups just utterly terrible?
13:48:30 <Slereah> You know, as a value judgement.
13:48:43 <AnMaster> Slereah, look, if no one is doing public logging of an irc channel, there won't be any history
13:48:52 <AnMaster> it's the same for usenet afaik
13:48:58 <AnMaster> and definitly the same for freenet
13:49:04 <AnMaster> where logging would be considered BAD as well
13:49:31 <Slereah> It is quite bad when there's the concept of threads involved.
13:49:45 <Slereah> Even a few days of old messages would be nice!
13:50:01 <Slereah> Not to post repetitive threads that you can't see.
14:25:07 <AnMaster> Slereah, anonymity and security are considered more important I think
14:27:00 <Slereah> Making an archive won't make them less anonymous :o
14:27:21 <Slereah> And since anyone can join, not that less secure.
15:16:52 -!- Judofyr_ has changed nick to Judofyr.
15:26:56 -!- chammiya has joined.
15:27:10 -!- chammiya has quit (Client Quit).
15:27:55 -!- jix has joined.
16:08:07 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
16:08:38 -!- Judofyr has joined.
16:11:28 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
16:11:44 -!- oklopol has joined.
16:11:54 -!- Judofyr has joined.
16:52:17 -!- ehird has joined.
16:58:01 -!- ehird has quit (Remote closed the connection).
17:14:57 -!- ehird has joined.
17:16:04 <Phenax> http://pastebin.ca/1005115 - How come this doesn't work in Befunge? (Noob)
17:16:18 <Phenax> Should endlessly loop through numbers and output 1 if even 0 if odd
17:27:29 <oklopol> wait a bit, i need to look up what the opers are
17:28:04 <Phenax> http://quadium.net/funge/spec98.html
17:28:17 <Phenax> http://quadium.net/funge/spec98.html#Quickref
17:29:20 <oklopol> well, naturally that will crash after 9, you're aware of that?
17:29:50 <Phenax> well, i need to do 010p somewhere before that
17:29:56 <Phenax> but why isn't it working up to 9
17:31:17 <Phenax> Should endlessly loop through numbers and output 1 if even 0 if odd
17:31:44 <Phenax> i think it gets stuck in an infinite loop somewhere
17:32:43 <Phenax> I've got to go now.. i'll play around with it later
17:32:53 <oklopol> i'll try and locate the problem
17:32:57 <fizzie> Single-stepping with the javascript befunge interpreter made it look like it'd work up to 9.
17:33:19 <fizzie> But if you're not printing a newline, your interpreter might not show the output.
17:36:39 <fizzie> After '9' it first turns to a ":" which shouldn't cause too much trouble, then a ";" which in funge98 should probably be a no-op since it'll just wrap-around, and after that it'll become a "<", at which points there'll be "><" in the top left corner and it'll get stuck there.
17:36:55 <fizzie> I get an output of "1 0 1 0 1 0 1 0 1 0 1 1" before that.
17:37:35 <ehird> fizzie - the third befunge expert in this channel!
17:40:19 <fizzie> Well, I really wouldn't use the word "expert"; all I've done in Befunge (apart from some even sillier tests) are that recursive fibonacci and a turing machine interpreter, syntax-highlighted; and I even lost that last one.
17:41:52 <ehird> fizzie: But you can read and write it ;)
17:43:25 <fizzie> There's not that many instructions in it, after all.
17:43:58 -!- Corun has joined.
17:56:34 -!- Corun has quit ("This computer has gone to sleep").
18:03:13 <Deewiant> ehird: and he's partially implemented a Befunge-98 interpreter. :-P
18:03:25 <ehird> Deewiant: WHO HASN'T
18:04:35 <fizzie> I also has a habit of doing a befunge-93 interpreter (except with "a-f work as hexadacimal digits, and ' like in funge-98" features) whenever learning a new language.
18:08:42 <Phenax> Yeah.. My problem I fixed
18:08:52 <Phenax> I just figured out ccbi debugger well :)
18:09:00 <Phenax> http://pastebin.ca/1005156 -> working copy
18:09:14 <Phenax> change 'a' to '52*' on befunge 93 obv
18:12:05 <AnMaster> cfunge 0.2.1 will be released in a few hours
18:14:18 <AnMaster> how on earth do you syntax highlight befunge?
18:14:29 <ehird> was syntax hgihglihted
18:14:30 <AnMaster> after all, stuff can mean different things depending on direction
18:14:35 <ehird> of course you can syntax highlight befunge
18:14:40 <ehird> it just needs to be clever
18:15:00 <ehird> AnMaster: just make things *shade*
18:15:15 <AnMaster> + I got no clue how to handle stuff like, something being a string one way, and a code path the other
18:15:16 <fizzie> No, no. The code was syntax-highlighted.
18:15:25 <fizzie> I think I used about a dozen different colors for it.
18:15:58 <ehird> AnMaster: you shade it so that "a and c" are string colour
18:16:01 <ehird> v and + are their colour
18:16:06 <ehird> and b is a blend of its instruction colour
18:16:12 <AnMaster> so you can have a string spread out
18:16:17 <ehird> AnMaster: read what i said
18:16:24 <fizzie> I just made an HTML table, with different background colors for different areas. I think there were three sets of colors.
18:16:28 <AnMaster> by first setting delta to be non-cardinal
18:16:59 <fizzie> And then a documentation block. "This ugly-red part frozzes the buzznigator. The ugly-green part is where the magic happens. This even uglier color... I don't know what it does."
18:17:13 <AnMaster> ehird, true, but you still can't handle non-cardinal code paths, in fact I think being able to perfectly syntax highlight any possible befunge would require tracing the program
18:17:16 <ehird> fizzie: Literate colorforth!
18:17:29 <ehird> AnMaster: that could work ... most of the time
18:17:34 <AnMaster> ehird, say if the program used p to put an x in the code, then executed that x
18:17:38 <ehird> if you don't use filesystem and similar fingerprints
18:17:55 <AnMaster> how the heck would the syntax highlighter know where the string was
18:18:18 <AnMaster> ehird, err, x sets delta, that means, you can do stuff like executed every third instruction diagonally
18:18:19 <ehird> AnMaster: tracing the program
18:18:25 <AnMaster> string handling that way would suck
18:18:43 <AnMaster> ehird, right, as if you want that on a buggy program with o instructon
18:18:58 <AnMaster> and then there is ?, so tracing *may* lead to different results
18:19:00 <ehird> AnMaster: i'm joking. Can you please make yourself familiar with the concept?
18:19:12 <AnMaster> ehird, oh, you seemed like serious
18:19:30 <ehird> AnMaster: I was, in an evil-maniac-grin-with-bloodshot-gawping-eyes kind of way
18:19:47 <fizzie> I think you might get relatively interesting-looking syntax highlighting with purely static program analysis, although of course all Real Befunge Programs are self-modifying-to-a-high-degree. Still, it'd be... colorful.
18:36:57 <sauxdado> syntax highlighting befunge has been done
18:37:47 <sauxdado> (using tracing and re-tracing when the program gets modified, i'm pretty sure)
18:46:23 -!- oerjan has joined.
18:54:14 -!- Corun has joined.
18:58:32 <AnMaster> sauxdado, yeah, that would be the only way for non-simple cases
18:58:57 <AnMaster> trace highlight that way has been done for befunge93 I'm pretty sure
18:59:42 <sauxdado> oh, you want some other befunge?
18:59:54 <sauxdado> i guess it gets trickier with 98 features
19:01:13 <AnMaster> or rather, that is what I would care about
19:01:24 <AnMaster> I'm not that interested in highlighting really
19:01:54 * AnMaster is about to release cfunge soon, waiting for stuff to build and upload it
19:10:29 -!- jix has quit (Nick collision from services.).
19:10:39 -!- jix has joined.
19:20:50 <AnMaster> Deewiant, https://sourceforge.net/project/shownotes.php?group_id=221310&release_id=596614
19:21:37 <ehird> i'm writing a funge-98 interpreter
19:22:08 <ehird> AnMaster: i can no longer face the torment
19:22:18 <ehird> and trds NEEDS IMPLEMENTING DAMNIT
19:23:13 <ehird> AnMaster: ccbi is not fruit
19:24:19 <oerjan> common citrus-based implementation?
19:25:01 <ehird> AnMaster: ccbi is NOT fruit
19:26:00 <ehird> My interp will be called cegnuf
19:26:04 * ehird glances angrily at AnMaster
19:28:35 <ehird> Deewiant: any suggestions on how to do N-funge?
19:28:42 <ehird> how on earth will I do the hashtable
19:29:23 <Deewiant> cell[cellidx][cellidx][size_t]
19:29:38 <ehird> AnMaster: CCBI IS NOT FRUIT DAMNIT
19:29:40 <AnMaster> ehird, just use a hash with, say, void* and size_t len
19:30:20 <AnMaster> ehird, it is easy to do it for any finite defined n at compile time
19:30:24 <ehird> by which point i'll have sex with c's _t notation
19:30:36 <ehird> I don't know how having sex with the notation makes me do that though
19:30:43 <ehird> AnMaster: at run-time
19:30:50 <AnMaster> would be easy to change cfunge to be able to do either 1 or 3 dimensions at *compile* time
19:30:56 <AnMaster> but I'd hate to do it at runtime...
19:32:57 <ehird> AnMaster: hm, should I support up to size_t's max in dimensions ;)
19:33:04 <ehird> it'll slow things down a lot if I do that
19:33:14 <ehird> so I'm considering just using a 'char'
19:33:17 <ehird> I mean, 255d is a lot
19:34:07 <Deewiant> or how are you planning on implementing this
19:34:15 <AnMaster> ehird, point is you need to select it at start of program
19:34:29 <ehird> AnMaster: ... bignum-dimensions?
19:34:36 <ehird> Deewiant: the hash function, etc
19:34:42 <AnMaster> ehird, yeah and bignum data type!
19:34:53 <AnMaster> ehird, there are general purpose hashing functions
19:35:22 <ehird> that's not the point AnMaster
19:35:32 <ehird> AnMaster: you don't get it
19:36:30 <Deewiant> ehird: I'm not sure you'd need to make a hash table of the dimensions, why not just an ordinary table
19:36:48 <ehird> fungespace is a hash table
19:37:07 <Deewiant> so essentially you have N nested hash tables
19:37:15 <Deewiant> where N is your dimensionality
19:37:23 <Deewiant> which has coordinates like AnMaster's
19:37:35 <Deewiant> in either case, where are you hashing N?
19:37:53 <Deewiant> or needing values which index to [1..N] anyway
19:38:46 -!- Corun has quit (Read error: 110 (Connection timed out)).
19:39:42 <ehird> Deewiant: you need to hash N elements
19:40:27 <Deewiant> so... where does it matter whether the type of N is ubyte or size_t, it should make no difference until N > 255
19:40:53 <Deewiant> in that if N == 255+1 for ubyte, it's 0, wheras for size_t it's 256. ;-)
19:41:24 <ehird> Deewiant: OK, not speed, I meant in space
19:41:38 <Deewiant> I'd say the difference is negligible still
19:42:00 <Deewiant> (x+1) times y bytes or x times y bytes + 1
19:43:59 <ehird> Deewiant: can you even put a size_t in an a[b] in C?
19:45:05 -!- Corun has joined.
19:47:42 <Deewiant> I have no idea what you're trying to ask :-P
19:48:35 <Deewiant> size_t is a type, you can use it the way you can use any integer type in C.
19:55:48 -!- Sgeo has joined.
19:59:44 <AnMaster> as for type used to index array, it would be size_t or ptrdiff_t in fact
20:00:00 <AnMaster> actually any integer type would work I thin
20:00:10 <AnMaster> negative integer may work even
20:01:19 <AnMaster> just not sure if it is allowed syntax to have negative i
20:02:03 <Deewiant> if you have int x[5] = {0,1,2,3,4}; int *p = x+2; then p[-1] == 1
20:02:32 <Deewiant> I'm sure the compiler might warn you though since there's no reason why you'd want to do something like that :-P
20:05:32 <AnMaster> Deewiant, however x[-1] is undefined I assume?
20:05:48 <Deewiant> undefined or just plain illegal
20:05:58 <Deewiant> you're accessing memory you haven't allocated
20:06:17 <AnMaster> depending on if there is anything in front
20:06:41 <Deewiant> then it's undefined, I don't know
20:06:44 <Deewiant> it's not something you want to do anyway
20:06:54 <Deewiant> since you can't know whether there is anything in front
20:08:39 <ehird> x[-1] is just like x[45345]
20:09:11 <Deewiant> yep, and I don't know the definedness :-)
20:09:31 <Deewiant> 'not', or 'defined' && == illegal
20:09:52 <oerjan> iirc even x-1 (as a pointer) is undefined if x is an array
20:11:03 <ehird> oerjan: demons flying out of your NOSE
20:18:19 * oerjan notes something did try to fly _into_ his nose earlier today. gah!
20:22:20 <ehird> oerjan: What, demons?
20:23:52 <oerjan> i cannot say as i failed to get a good glimpse of it
20:25:29 <oerjan> for all i know they may be inside, eating my brain at this very moment
20:25:58 <oklopol> ehird: fizzie: But you can read and write it ;) <<< well, i did just read the example too, that's not really a task
20:26:34 <ehird> oklopol: somehow my client only highlights up to <<<
20:26:37 <ehird> oklopol: test <<< a
20:33:50 -!- Tritonio has joined.
20:34:44 <oklopol> making n dimensions is trivial!
20:35:09 <oklopol> ...what is that weird language you're speaking there, some new syntax for python?
20:37:00 <Sgeo> ehird, you want a <<< test ehird like <<< this?
20:38:34 <oklopol> i'm thinking it is trying to highlight pasted irc messages separately from the actual message so if <nick> says ehird then the end is highlight-colored!
20:39:18 <ehird> <oklopol> ehird: fizzie: But you can read and write it ;) <<< well, i did just read the example too, that's not really a task
20:39:21 <ehird> the notify highlight ends at <<<
20:45:42 <oklopol> ehird: ;) <<< this is a smiley
20:45:54 <oklopol> ehird: ;) is a smiley, i mean
20:46:24 <oerjan> ;)<<< this is a smiley for ants
20:49:06 <Sgeo> ehird <<< ehird <<< test2 <<< test3 which part did it highlight to?
20:49:55 <oklopol> this is serious business, we just have to know what the logic is
20:50:03 <oklopol> let's all make tests all night long
20:50:59 * Sgeo throws a PSOX in there j/k
20:52:12 <ehird> oklopol: just paste your previous line
20:52:15 <ehird> ehird: fizzie: But you can read and write it ;) <<< well, i did just read the example too, that's not really a task
20:53:21 <Sgeo> ehird: fizzie: But you can read and write it ;) <<< well, i did just read the example too, that's not really a task
20:59:10 -!- Slereah has quit (leguin.freenode.net irc.freenode.net).
20:59:10 -!- lifthrasiir has quit (leguin.freenode.net irc.freenode.net).
20:59:10 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
20:59:50 -!- Slereah has joined.
20:59:50 -!- cmeme has joined.
20:59:50 -!- lifthrasiir has joined.
21:09:44 <ehird> that would be silly
21:09:49 <ehird> the rfc is too big for that
21:09:54 <ehird> but ... try and make it short
21:10:00 <ehird> just .. still indent it and have newlines ;)
21:11:28 <oklopol> your mother is silly, i wanna golf it
21:12:29 <ehird> oklopol: have you ever read the rfc
21:12:38 <ehird> you need to implement easily 100 cmds or so
21:13:05 <oklopol> i think i've read it, but i definately know how long it is
21:13:33 <oklopol> how does that have anything to do with being fun to golf?
21:14:08 <ehird> oklopol: it'll be very hard to write like that
21:15:00 <oklopol> Sgeo: the words are there.
21:16:43 -!- andreou has joined.
21:18:32 <andreou> well i suppose you could say it's a context-free grammar
21:18:36 <andreou> http://www.contextfreeart.org/
21:22:13 <ehird> oklopol: how's the ircd going
21:24:36 <oklopol> oh i'm not gonna start *now*, i'm rewriting my todo list in rot-13
21:25:20 <oerjan> and then you have to wash your hair?
21:25:42 <oklopol> also i have three languages in the making atm, so i'm a bit exfoculated
21:26:09 <oklopol> oerjan: as a matter of fact i've reduced showering into once/twice a week, so not for a while
21:26:16 <ehird> oklopol: come on, i'll give you money
21:26:18 * oerjan congratulates oklopol with inventing a word that google cannot find
21:26:37 <oklopol> exfoculate? how can something that beautiful not exist
21:28:00 <oerjan> foculate can be googled, but only 13 hits, so may be misspelled
21:29:11 <oklopol> "Formulated to foculate (group together in a mass) dirt particles from water..."
21:29:24 <oerjan> focculate gives a bit more
21:29:25 <ehird> oerjan: They probably have their asses under the knunder.
21:29:33 <ehird> (That's only funny 'cause I internet-know the guy who came up with that word.)
21:32:42 <oerjan> ah, those are misspellings of "flocculate"
21:33:50 <ehird> oklopol: iz ircd dun
21:35:55 <oklopol> i'm leaving soon, actually
21:45:15 -!- Iskr has quit ("Leaving").
21:48:03 -!- oerjan has quit ("leaving").
22:03:30 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
22:13:39 <AnMaster> I think he will be back tomorrow at most
22:14:06 <sauxdado> i suppose we could ban him for 30 years
22:30:12 -!- ais523 has joined.
22:40:54 -!- ais523 has changed nick to ais523|busy.
22:57:05 <sauxdado> but that's only half the process
22:57:16 <sauxdado> we also need to ensure that he comes back afterwards
22:57:43 <ehird> sauxdado: stalk him
22:58:53 <sauxdado> also we'd have to ensure that freenode still exists in 30 years
23:00:03 <ehird> sauxdado: nah we can define an official convention for moving it around
23:00:07 <ehird> then itd be formal
23:00:12 <ehird> and tyhe same place
23:00:51 <sauxdado> we might as well just define that for 30 years #esoteric exists in outer space, and starting in 30 years, it exists right where oklopol is
23:01:37 <sauxdado> if oklopol comes into this channel, he's not actually in #esoteric.
23:01:41 -!- Corun has quit (Read error: 110 (Connection timed out)).
23:01:42 <ehird> sauxdado: but what if he dies
23:01:57 <ehird> or becomes an astronaut
23:02:33 <sauxdado> and i guess instead of "outer space", just define "somewhere where oklopol isn't"
23:03:04 <ehird> sauxdado: but what if there is no afterlife and his body decays?
23:04:56 -!- digital_me has joined.
23:05:20 <sauxdado> yes, that's a problem. We must keep him alive for 30 yeras
23:05:47 <sauxdado> not just alive, but we must keep him _oklopol_
23:05:53 <sauxdado> he's not allowed to change into something else
23:06:05 <sauxdado> just to be on the safe side, we can't let him for example use dentures
23:06:27 <sauxdado> of course, in 7 years all the molecules in your body get replaced...
23:06:42 <ehird> sauxdado: that's a problem...
23:06:46 <sauxdado> the question of identity is really tricky
23:07:39 <ehird> sauxdado: we need a philosopher and a biologist, stat
23:08:09 <sauxdado> alternatively, we could redefine oklopol to mean something more convenient
23:08:23 <sauxdado> for example, define oklopol to be "that which will come to #esoteric in 30 years"
23:08:38 <ehird> sauxdado: hahahahahahahah
23:08:56 <ehird> but what if nothing comes
23:09:11 <ehird> does the *absense* of something come?
23:09:34 <sauxdado> in that case, oklopol would be the absence of non-oklopol.
23:10:24 <sauxdado> we need to tell oklopol that he's been redefined
23:10:54 <ehird> sauxdado: but he wont be back for 30ys
23:11:15 <sauxdado> i mean, we need to tell that which used to be oklopol.
23:18:20 -!- comex has quit (Connection timed out).
23:18:21 -!- Tritonio has quit (Read error: 104 (Connection reset by peer)).
23:18:44 -!- comex has joined.
23:26:21 -!- sauxdado has changed nick to saudado.
23:37:31 -!- Tritonio has joined.
23:45:10 -!- bsmntbombdood_ has changed nick to bsmntbombdood.
23:48:14 -!- jix has quit ("CommandQ").
23:51:53 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
23:52:24 -!- Judofyr has joined.
23:54:13 -!- digital_me has quit ("leaving").
23:54:19 -!- Sgeo has changed nick to iGeo.
23:54:32 -!- iGeo has changed nick to iSgeo.
23:55:22 -!- iSgeo has changed nick to Sgeo.
00:06:40 -!- atsampson has quit (Remote closed the connection).
00:06:53 -!- atsampson has joined.
00:07:50 -!- digital_me has joined.
00:36:40 -!- pikhq_ has changed nick to pikhq.
00:45:47 -!- ais523|busy has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
00:46:06 -!- ehird has quit (Remote closed the connection).
00:53:04 -!- GreaseMonkey has joined.
00:58:28 <Sgeo> <ais523|busy> reminds me of the esoteric file system idea I had, where all files were functions, Unlambda-style, which you evaluated to get the file's contents. That way, you could do special files easily, and files could be stored compressed on disk if necessary, and you could have lazy files which were infinitely long...
01:05:47 -!- Tritonio has quit (Read error: 113 (No route to host)).
01:06:20 -!- CakeProphet has joined.
01:08:00 -!- Tritonio has joined.
01:09:56 -!- Tritonio has quit (Client Quit).
01:09:58 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
01:10:41 -!- Slereah_ has joined.
01:16:07 -!- ihope has joined.
01:32:29 -!- Tritonio has joined.
01:39:17 -!- CakeProphet has quit ("haaaaaaaaaa").
01:41:22 -!- Corun has joined.
01:45:36 -!- Corun has changed nick to NeilStoleMySleep.
01:58:24 -!- NeilStoleMySleep has changed nick to Corun.
02:26:44 -!- Judofyr_ has joined.
02:26:44 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
02:35:53 -!- Slereah_ has quit (leguin.freenode.net irc.freenode.net).
02:35:53 -!- digital_me has quit (leguin.freenode.net irc.freenode.net).
02:35:53 -!- sekhmet has quit (leguin.freenode.net irc.freenode.net).
02:36:16 -!- Slereah_ has joined.
02:36:16 -!- digital_me has joined.
02:36:16 -!- sekhmet has joined.
03:28:35 -!- olsner has quit ("Leaving").
04:42:52 -!- Corun has quit ("This computer has gone to sleep").
05:42:50 -!- digital_me has quit (Read error: 113 (No route to host)).
06:08:57 -!- lifthrasiir has quit ("leaving").
06:09:05 -!- lifthrasiir has joined.
07:11:52 -!- Judofyr_ has quit.
07:21:30 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:22:07 -!- saudado has changed nick to lament.
08:29:07 -!- Iskr has joined.
10:45:54 -!- Tritonio has quit (Remote closed the connection).
10:48:46 -!- Tritonio has joined.
10:51:48 -!- GreaseMonkey has quit (Read error: 110 (Connection timed out)).
10:52:35 -!- GreaseMonkey has joined.
11:10:38 -!- GreaseMonkey has quit ("Unisex.").
11:24:10 -!- olsner has joined.
11:53:05 -!- ihope_ has joined.
11:55:01 <AnMaster> Deewiant, your TIME fingerprint, wtf are you doing in it? D code as a string constant!?
11:55:46 -!- fizzie has quit (leguin.freenode.net irc.freenode.net).
11:55:46 -!- ihope has quit (leguin.freenode.net irc.freenode.net).
11:55:49 -!- ihope_ has changed nick to ihope.
11:56:57 <AnMaster> Deewiant, you mean, like a macro in C?
11:57:25 -!- fizzie has joined.
11:57:53 <Deewiant> mixin("int x;") - equivalent to just int x;
11:58:07 <Deewiant> but with templates you can generate the string literal
11:58:22 <Deewiant> so I don't have to write the same code over and over
11:58:37 <AnMaster> static void FingerROMApush ## x (instructionPointer * ip) \
11:58:37 <AnMaster> StackPush(ip->stack, (FUNGEDATATYPE)y); \
12:01:23 <AnMaster> oh btw you seem to like using static buffers, instead of allocating on the stack, depending on situation I think creating one in the function may work better, due to risk of cache misses otherwise
12:01:30 <AnMaster> but that is over-optimizing IMO
12:01:46 <AnMaster> Deewiant, anyway I added JSTR to cfunge now
12:05:52 -!- ehird has joined.
12:06:18 -!- ehird has set topic: * Topic for #esoteric set by http://tunes.org/~nef/logs/esoteric.
12:06:21 <AnMaster> Deewiant, another question: Should the UTC/non-UTC stuff in TIME be local to the ip or global?
12:23:09 <Deewiant> AnMaster: say it with me: *not spe-ci-fied, up to you*
12:23:31 * AnMaster is implementing FILE atm though
12:24:12 <ehird> Deewiant: AnMaster does not know the meaning of that
12:24:31 <ehird> or 'Premature opt-imi-zat-ion is the root of all evil'
12:56:00 -!- Corun has joined.
13:38:42 <ehird> i'm using emacs and vi on the same projcet
13:48:41 -!- Slereah has joined.
13:48:41 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
13:51:25 <olsner> hopefully you're not using the editor in emacs :P
13:55:22 <olsner> may your choice of deity have mercy on your soul
13:58:06 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
13:58:16 -!- Slereah has joined.
14:00:16 -!- Slereah_ has joined.
14:00:16 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
14:01:46 -!- Slereah has joined.
14:01:47 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
14:03:09 <ehird> olsner: i don't think the flying spaghetti monster really cares all that much
14:03:58 <olsner> well, poor choice of deity then :P
14:04:07 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
14:14:14 -!- Slereah has joined.
14:42:25 <ehird> return $it if $it = ...; // this is a kinda neat perl trick, i wish i could do this in other languages
15:14:58 <AnMaster> Deewiant, there is a bug in FILE of CCBI I think
15:15:05 <AnMaster> case 2: file = c.fopen(name, "ab"); c.rewind(file); break;
15:15:17 <AnMaster> you need to check in between that the fopen did work
15:15:30 <AnMaster> rather than after trying rewind on it
15:15:43 <Deewiant> doesn't rewind fail on a failed fopen
15:16:03 <AnMaster> well fopen returns NULL on failed open
15:16:11 <AnMaster> no idea what happens with rewind on a null pointer
15:16:21 <Deewiant> man rewind says the following:
15:16:21 <Deewiant> EBADF The stream specified is not a seekable stream.
15:16:33 <fizzie> But NULL is not a stream at all.
15:16:44 <AnMaster> The rewind() function sets the file position indicator for the stream pointed to by stream to the beginning of the file. It is equivalent to:
15:16:45 <AnMaster> (void) fseek(stream, 0L, SEEK_SET)
15:16:47 <Deewiant> and hence it's not a seekable stream.
15:16:48 <AnMaster> except that the error indicator for the stream is also cleared (see clearerr(3)).
15:17:00 <fizzie> Yes, but you still need to specify a stream.
15:19:01 <fizzie> Even if it would happen to work, I don't think you could really rely on it unless The Standard would specifically mention it's safe to call with a null pointer.
15:19:21 <Deewiant> seeing as it segfaults both on windows and linux I'd say you guys are right. ;-)
15:20:24 <AnMaster> well man 3p on rewind refers to fseek for details, and man 3p fseek doesn't mention null pointer anywhere
15:20:55 <ehird> The Standard That Is Great And Holy In Caps
15:21:06 <ehird> but i wouldn't rely on it, yeah
15:21:08 <AnMaster> ehird, it wasn't I that said it...
15:21:14 <ehird> and even if it is standard
15:21:16 <ehird> i bet some system gets it wrong
15:21:20 <ehird> i just found it amusing
15:21:37 <ehird> AnMaster: Him is what religious people call god
15:21:40 <ehird> always capitalized like That
15:21:56 <ehird> 'And I talked to Him and asked him for big moneys, and he said FSCK U NOOB'
15:23:03 <fizzie> I also used to refer to The Hitchhiker's Guide to the Galaxy as "The Book".
15:24:14 <AnMaster> Deewiant, may I ask wtf you are doing in your fgets routine? it seems overly complex
15:25:50 <AnMaster> well what are you doing it for then?
15:26:08 <AnMaster> Deewiant, is it because fgets will look for \n and not \r\n or?
15:26:19 <Deewiant> if that's what it does then that's definitely a reason
15:26:36 <Deewiant> probably the fact that I don't know
15:26:56 <AnMaster> because both will stop on the \n of \r\n
15:27:27 <AnMaster> well... I don't think your code stop on it
15:28:41 <AnMaster> Deewiant, it will probably use whatever is used on the OS
15:29:06 <AnMaster> as in \r\n on windows, or if stream is in text mode (eww) just \n
15:29:36 <Deewiant> shrug about text mode... I never know how that works except that it's never the way I want :-P
15:29:43 <Slereah> http://www.youtube.com/watch?v=dmEvPZUdAVI
15:29:59 <Deewiant> but still, gotta support all 3 line endings regardless of OS
15:30:04 <Slereah> How did Microsoft ever became a monopole with ads like that?
15:30:08 <Deewiant> and hence, I don't trust fgets.
15:30:44 <AnMaster> Deewiant, not got to, the standard says should and "If an interpreter cannot support all three varieties of end-of-line marker, it should be clearly noted in that interpreter's documentation."
15:30:55 <AnMaster> so it is strongly recommended to support all
15:31:16 <AnMaster> Deewiant, it is the 98 specs...
15:31:22 <Deewiant> I think any program that doesn't support all 3 types is crap.
15:31:41 <AnMaster> Deewiant, I can think of cases where it may not be possible
15:31:49 <AnMaster> say if the interpreter is coded in intercal
15:31:57 <AnMaster> doesn't it mess with newlines?
15:32:17 <Deewiant> ais523 isn't here so I guess we won't get an authoritative answer, either. :-)
15:32:52 <AnMaster> also one thing of D I would like in C: being able to break out of multiple loops with a break
15:32:59 <AnMaster> as it is, that is the only case I use goto
15:33:08 <Deewiant> yep, it's probably the most common case
15:33:09 <AnMaster> because there is no other way in C
15:33:42 <AnMaster> Deewiant, yeah, also common for stuff like: goto error, that cleans up stuff or such. I don't do that
15:35:27 <AnMaster> Deewiant, hm no your doesn't end input on \r
15:35:43 <AnMaster> Deewiant, it just does break; not break loop;
15:37:41 <AnMaster> Deewiant, hm... FileHandle[c.FOPEN_MAX] handles; that is decided at compile time in CCBI?
15:39:03 <AnMaster> yes, what does that mean in this case?
15:39:23 <AnMaster> /usr/include/gentoo-multilib/amd64/stdio.h: FOPEN_MAX Minimum number of files that can be open at once.
15:39:27 <Deewiant> seeing as it's in "c" it's a C constant...
15:39:41 <AnMaster> FOPEN_MAX is defined to 16 here. heh
15:40:02 <AnMaster> that is the minimum guaranteed.
15:40:07 <Deewiant> " The value of this macro is an integer constant expression that represents the minimum number of streams that the implementation guarantees can be open simultaneously. You might be able to open more than this many streams, but that is not guaranteed."
15:40:26 <AnMaster> thus it should be checked at runtime :)
15:40:26 <Deewiant> oh, darn, it includes stdin/stdout/stderr
15:40:55 <AnMaster> because you are more likely to be able to open like 1024 fds or so
15:41:26 <AnMaster> Deewiant, indeed, but if you can't open, check return value of fopen ;P
15:41:27 <Deewiant> and why does stdio.h then define it as 16?
15:41:36 <AnMaster> Deewiant, it does here, I don't know why
15:41:46 <Deewiant> wtf is the point of having all these predefined constants if they don't mean anything
15:41:47 <AnMaster> I malloc my handle array so...
15:41:56 <Deewiant> seriously, the windows API looks a lot nicer sometimes :-P
15:42:05 <AnMaster> Deewiant, anyway SOCK could create more fds iirc
15:42:19 <AnMaster> or something as simple as that
15:42:38 <AnMaster> the best way to check would be getconf() I think....
15:43:05 <AnMaster> err not getconf, that is the command line alternative
15:44:40 <AnMaster> Deewiant, if you really need to know it is sysconf(_SC_OPEN_MAX) I think
15:45:32 <AnMaster> Deewiant, anyway the same applies to Windows afaik
15:45:49 <AnMaster> you can't know exactly how many files you can have open
15:47:12 <AnMaster> Deewiant, also, FOPEN_MAX is from ANSI C
15:47:34 <Deewiant> I blame distributions for defining it as something anal
15:48:01 <AnMaster> I blame whoever didn't read the docs for not doing so ;)
15:48:15 <Deewiant> how the hell should I know what docs to read
15:48:17 <AnMaster> I agree it is a stupid name...
15:48:26 <Deewiant> I read the docs for fopen and it says FOPEN_MAX is the absolute limit
15:48:44 <Deewiant> but oh, actually FOPEN_MAX is only one-sixteenth of the real limit
15:48:53 <AnMaster> err my man fopen doesn't mention FOPEN_MAX...
15:49:28 <AnMaster> and man 3p fopen doesn't say it is an absolute limit
15:49:41 <Deewiant> it says it's the maximum guaranteed
15:49:45 <AnMaster> The fopen() function shall fail if:
15:49:48 <AnMaster> EMFILE {OPEN_MAX} file descriptors are currently open in the calling process.
15:49:51 <AnMaster> The fopen() function may fail if:
15:49:55 <AnMaster> EMFILE {FOPEN_MAX} streams are currently open in the calling process.
15:50:06 <Deewiant> streams vs. file descriptors too. :-P
15:50:19 <AnMaster> but my point here, is that on most systems you can open way more
15:50:26 <Deewiant> so why doesn't the man page say that?
15:50:29 <AnMaster> I tested with a befunge program opening 23 files
15:50:47 <Deewiant> why does it say something useless like "may fail" instead of "is very likely not to fail, it's likely you can open 100x more"
15:51:11 <AnMaster> Deewiant, because when it was written that wasn't the case I guess?
15:51:59 <AnMaster> I agree that FOPEN_MIN may have been a better name...
15:52:14 <AnMaster> Deewiant, but FOPEN_MAX is from ANSI C
15:52:51 <Deewiant> the man pages aren't copied from some 30-year old ANSI C manual either
15:52:52 <AnMaster> which expands to an integer constant expression that is the minimum number of files that
15:52:52 <AnMaster> the implementation guarantees can be open simultaneously;
15:53:31 <AnMaster> and ranting about it in here won't help ;P
15:54:08 <AnMaster> or, for C99 I think it is IEEE? hm
15:54:14 <Deewiant> I don't care that much, I rarely have to mess around with raw C APIs
15:54:33 <AnMaster> Deewiant, well why can't you use the D file reading API for it?
15:54:49 <Deewiant> ... because the specs say that it's the C file API ...
15:55:41 <AnMaster> Deewiant, seems to indicate same behaviour
15:55:46 <ehird> so use its file apis
15:55:56 <Deewiant> ehird: 2008-05-03 17:54:49 ( Deewiant) ... because the specs say that it's the C file API ...
15:56:01 <ehird> AnMaster: D has two 100% incompatible stdlibs that you can't have at the same time.
15:56:04 <AnMaster> Deewiant, anyway, it is RC/Funge specs so they aren't clear...
15:56:11 <ehird> AnMaster: Phobos and Tango, Phobos is the official one. Real men use Tango.
15:56:15 <ehird> (read: Phobos sucks)
15:56:16 <AnMaster> ehird, that isn't the question here...
15:56:29 <ehird> Deewiant: Yes, but that's for goatse-watchers.
15:56:37 <AnMaster> ehird, he is doing this: import c = tango.stdc.stdio;
15:56:49 <ehird> tango has libc in it yes
15:57:01 <AnMaster> and then using c.fgets and so on
15:57:11 <AnMaster> err not fgets, but several other ones
15:57:41 <AnMaster> Deewiant, anyway the FILE specs doesn't say it have to be the A file API
15:58:03 <AnMaster> I interpret that as "same behaviour"
15:58:10 <Deewiant> bug-for-bug compatibility would be ideal
15:58:18 <Deewiant> which is easiest to get by just using the C functions directly.
16:00:55 <Deewiant> because of what the specs say. "like c xxx".
16:01:40 <AnMaster> I assume it means "like the C specs describe this function", and it is INTERCAL no C that got the "random compiler bug" in it's specs ;P
16:02:12 <Deewiant> I'm sure that if I used the tango functions you'd be here saying "in this obscure case, fseek does xxx, does tango's do that?" :-P
16:02:36 <Deewiant> and then I'd be like "don't know, don't care". :-P
16:03:45 <AnMaster> however that is not an argument as you coded it before you knew of me
16:04:15 <Deewiant> no, but I was sure there might be someone like you. :-P
16:04:30 <Deewiant> or I just felt like using the C functions to remind myself of how they work, who knows?!
17:59:30 <AnMaster> Deewiant, by the way the HRTI test shows that at some stuff Boehm-GC is a LOT slower. Mainly realloc seems slow in it
18:00:47 <AnMaster> using preallocaction to alloc at least the needed number of bytes in advance I got it down to acceptable levels.
18:01:07 <AnMaster> however I suspect I may make no gc the default in future at some point
19:15:44 -!- comex has left (?).
19:22:27 -!- Sgeo has joined.
19:41:08 -!- jix has joined.
21:09:28 -!- digital_me has joined.
21:09:56 <Deewiant> AnMaster: surely you don't have "ö!" to the right of "z" on your keyboard. :-)
21:10:48 <AnMaster> Deewiant, nor do I have ä there either
21:11:16 <AnMaster> Shift < z x c v b n m , . - Shift
21:11:18 <Deewiant> to the right of "hjkl;" on a 'merican keyboard comes ä' followed by enter
21:11:55 <Deewiant> exactly. so you broke the cycle :-/
21:12:19 <AnMaster> as we went alphabetically before
21:13:50 <ihope> Yes, we all know that defghijkl is almost all consecutively... on there.
21:14:08 <ihope> Present in a consecutive manner.
21:14:53 <Slereah> http://4chanarchive.org/images/48232393/1197566589997.png
21:53:32 -!- digital_me_ has joined.
21:58:41 -!- CakeProphet has joined.
22:02:26 -!- CakeProphet has quit (Client Quit).
22:05:22 -!- digital_me has quit (Read error: 110 (Connection timed out)).
22:27:15 -!- Slereah_ has joined.
22:28:27 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
22:40:04 -!- digital_me_ has quit (Read error: 104 (Connection reset by peer)).
22:47:25 -!- Iskr has quit ("Leaving").
22:50:32 -!- digital_me has joined.
22:53:42 -!- digital_me has quit (Client Quit).
22:53:54 -!- digital_me has joined.
22:58:18 -!- digital_me has left (?).
23:10:39 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
23:12:26 -!- Slereah has joined.
23:31:07 -!- Deformati has joined.
23:39:56 -!- Deformative has quit (Read error: 110 (Connection timed out)).
00:10:48 -!- ehird has quit (Read error: 113 (No route to host)).
00:16:13 -!- Deformati has quit (Read error: 110 (Connection timed out)).
00:17:47 -!- Deformati has joined.
00:21:48 -!- Slereah_ has joined.
00:21:48 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
00:25:05 -!- jix has quit (Read error: 113 (No route to host)).
00:27:51 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
00:28:01 -!- Slereah has joined.
00:30:19 -!- Slereah_ has joined.
00:30:19 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
00:36:21 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
00:36:24 -!- Slereah has joined.
00:37:43 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
00:37:48 -!- Slereah has joined.
00:37:52 -!- Deformati has quit (Remote closed the connection).
01:21:49 -!- ihope has quit ("ChatZilla 0.9.81 [Firefox 2.0.0.14/2008040413]").
01:22:42 -!- Sgeo_ has joined.
01:32:25 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
01:33:23 -!- Sgeo_ has quit (Remote closed the connection).
01:36:36 -!- Sgeo has joined.
03:18:49 -!- Slereah_ has joined.
03:18:50 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
03:19:13 -!- GreaseMonkey has joined.
04:32:30 -!- Corun has quit (Read error: 110 (Connection timed out)).
04:35:30 -!- Corun has joined.
04:49:36 -!- Corun has quit ("This computer has gone to sleep").
06:24:41 -!- adu has joined.
06:36:45 -!- adu has left (?).
07:18:37 <bsmntbombdood> look at this hottie: http://www.codethinked.com/image.axd?picture=WindowsLiveWriter/TheProgrammerDressCode_10D17/John%20McCarthy_fecf8122-7b54-4ec0-80ed-8ba261337eaa.jpg
07:20:09 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:52:51 -!- Iskr has joined.
09:16:02 -!- Slereah has joined.
09:16:06 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
09:49:18 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
09:50:56 -!- Slereah has joined.
10:21:59 -!- GreaseMonkey has quit ("Unisex.").
11:09:04 -!- Slereah_ has joined.
11:09:07 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
11:14:06 -!- Slereah has joined.
11:14:06 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
11:18:56 -!- Slereah_ has joined.
11:18:56 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
12:43:19 -!- Slereah has joined.
12:43:19 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
13:12:18 -!- ehird has joined.
13:17:22 -!- oklopol has joined.
13:19:29 <ehird> oklopol: oKokokokokokokokokoko!!!
13:19:37 <ehird> andreou: reoreoreoreoreoreo
13:22:30 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
13:22:37 -!- Slereah has joined.
13:56:17 <oklopol> trying to read the lojvan reference, a new interest in lalna is growing inside me
13:56:37 <oklopol> going to change it to stack-based
13:56:46 <oklopol> stacks are perfect for human communication
13:57:14 <oklopol> somewhat object-oriented stack-based, GregorR would love this
14:12:32 -!- Corun has joined.
14:27:39 <ehird> oklopol: i hate you
14:47:06 <oklopol> you can globally specify a small stack limit if you have problems with it!
15:01:03 -!- Slereah_ has joined.
15:01:03 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
15:05:22 -!- Slereah has joined.
15:05:22 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
15:07:59 <ehird> oklopol: make it stack-based, but reversed
15:08:05 <ehird> then we can at least lazily evaluate what people say
15:08:07 <ehird> instead of having to wait
15:13:37 <oklopol> reversed would make more sense, but i want a stack.
15:13:59 <oklopol> reversed is quite funny considering stack-based is often called reversed polish notation :P
15:14:04 <Deewiant> make it a deque and you can have both
15:14:11 <oklopol> of course reverse . reverse = identity
15:17:51 -!- SimonRC_ has joined.
15:20:06 <ehird> it can be stacked oklopol
15:20:11 <ehird> just make the speech reversed
15:20:16 <ehird> so a computer evaluator would run it backwards
15:20:26 <ehird> but humans can understand the sentence incrementally
15:20:32 <ehird> instead of having to run a mental stack machine
15:23:37 <oklopol> instead of <I> <you> *kill*, where <>=push and **=call, what would i say?
15:24:00 <oklopol> just reversing rpn is pn, with arguments reversed
15:24:48 <oklopol> it makes sense in that you usually want to specify what you're doing before telling what you're doing it to, because the main event is the most interesting thing
15:25:51 <oklopol> (you can do <kill> <I> <you> *call-2-deep*, though, if you want)
15:25:59 <ehird> oklopol: '2 2 +' becomes '+ 2 2'
15:26:07 <ehird> as a computer, you can execute it as push 2, push 2, do +
15:26:14 <ehird> just write a stack program
15:26:23 <ehird> because all the concepts of /stack programming/ instead of just the /notation/ are there
15:26:35 <ehird> i.e. instead of a lisp program, it's like reversing a Joy program
15:27:22 <oklopol> polish == reversed stack, always. it's just with a stack high-order operations are easier to visualize.
15:28:17 <oklopol> if you know another difference, tell me what it is instead of just saying "it's different, because i see it that way"
15:29:37 <ehird> <oklopol> polish == reversed stack, always. it's just with a stack high-order operations are easier to visualize.
15:29:47 <ehird> oklopol: write a lisp program
15:29:50 <ehird> then write a Joy program
15:29:52 <ehird> then, reverse the Joy program
15:30:01 <ehird> the Joy program is still fundamentally different from a Lisp program
15:30:07 <ehird> e.g. it still has 'dup' and 'dip' and all that shizz, for one
15:31:00 -!- SimonRC has quit (Read error: 111 (Connection refused)).
15:31:21 <oklopol> 5 2 dup + - => - + dup 2 5 <<< nothing wrong with this as polish notation
15:32:08 <oklopol> it's just you need to have pretty weird semantics for stuff once you do stack operations
15:32:22 <ehird> oklopol: well, yeah
15:32:26 <ehird> it's polish notation KINDA
15:32:26 <oklopol> mainly because arity cannot be done at parse time
15:32:34 <ehird> it's not what you'd think of
15:32:38 <ehird> when you thought polish notation
15:33:13 <oklopol> well, polish notation and rpn might specify that arity need be known at parse time
15:33:24 <oklopol> dunno, i just think of them as guidelines
15:34:56 <oklopol> anyway, the whole point with polish notation is it's not incremental
15:36:17 <ehird> oklopol: ok, but compare: 'you hello', 'hello you'
15:36:21 <ehird> the latter is more useful as a human
15:36:30 <ehird> because you know that something is about to be greeted
15:36:33 <ehird> and then you get more information: it's you
15:36:33 <oklopol> and i'm not allowing direct stack manipulation all that easily, the point is that you *can* run a mental stack maching
15:36:37 <ehird> with the other one,
15:36:43 <ehird> you have to keep in mind that something about you is being said
15:36:48 <ehird> and then learn that it's a greeting
15:36:52 <ehird> which is more confusing
15:37:32 <ehird> oklopol: in a complex sentence it is :)
15:37:36 <ehird> you build up a stack of stuff in your head
15:37:41 <ehird> and then it gets shuffled to hell when you find the verbs
15:39:17 <ehird> which is frustrating
15:39:24 <oklopol> it's true it's hard to keep in mind what the stack contains without knowing what it's use for
15:40:24 <oklopol> frustrating? 1. your mother is frustrating 2. nothing is frustrating, things can only be challenging or impossible
15:41:52 <oklopol> hmmm, perhaps what i'm saying would make more sense if i explained a bit what the whole reason for stack-basedness was
15:42:34 <oklopol> humans have trouble storing the contents of the stack exactly because most natural languages don't require you to.
15:42:50 <oklopol> i want to try to change this, for myself.
15:43:21 <oklopol> would mean a lot easier mental calculation for instance, to get a stack working naturally.
15:45:15 <oklopol> there are ways to link pieces, mentally, well enough not to be forgotten for ages
15:45:23 <ehird> oklopol: shit, you just called my mother nothing
15:45:25 <oklopol> all you have to do is find a link you will definitely remember
15:46:01 <oklopol> i read a book about these techniques, and have been using them for learning lojban vocab etc.
15:46:26 <oklopol> but i've been thinking, i might start writing a book from a programmers point of view later on
15:46:32 <oklopol> because the fun thing about links is
15:46:39 <oklopol> that you can make data structures with them
15:46:46 <oklopol> permitting something like a stack easily.
15:47:11 <oklopol> the idea is, there are ways to "hash" an object mentally, and two hashes can easily be linked.
15:47:33 <oklopol> this can be used to create arbitrary graphs, so you can explicitly memorize any data structure
15:48:36 <ehird> oklopol: memorize E80
15:48:54 <oklopol> ehird: indeed i did, in a stack-based fashion, first introducing your mother, then telling what she is, using a set as a variable.
15:49:05 <oklopol> so you indirectly just told me stack-based = clever
15:49:25 <oklopol> also, too short to need memorizing
15:49:57 <ehird> oklopol: because E80 is huge
15:50:09 <ehird> bah maybe it's not e80
15:50:11 <ehird> whatever it's called
15:50:43 <ehird> oklopol: The lie algebra thingy
15:50:58 <oklopol> i will talk more about the subject of memorization once i'm good at it myself, which might take a while as i'm lazy as hell
15:51:04 <oklopol> ehird: doesn't ring a bell
15:51:14 <ehird> http://en.wikipedia.org/wiki/E8_%28mathematics%29
15:52:15 <ehird> 248 dimension represent
15:52:22 <ehird> "There is a Lie algebra En for every integer n≥3, which is infinite dimensional if n is greater than 8."
15:52:28 <ehird> memorizing an infinite dimensional structure would be cooler
15:52:33 <ehird> but slightly less, well, possible
15:55:16 <oklopol> i think complex dimension just has to do with the graph's structure
15:55:30 <oklopol> but i don't really know, i was not aware of any of this.
15:56:31 -!- ehird has set topic: security by obscupromiscuity | http://tunes.org/~nef/logs/esoteric.
15:56:39 <ehird> oklopol: i have no idea
15:56:44 <ehird> but e8 is totally bitchin'
16:12:41 -!- SimonRC has joined.
16:21:00 -!- Slereah_ has joined.
16:22:44 -!- ehird has set topic: security by obscupromiscuity | lobotomoritoratiotron | http://tunes.org/~nef/logs/esoteric.
16:22:50 <ehird> i suggest we invent silly terms and put them in a topic
16:22:55 -!- Corun has quit (Read error: 104 (Connection reset by peer)).
16:22:57 <ehird> just add another | and put it before the log links
16:24:12 -!- Corun has joined.
16:24:22 <oklopol> o | security by obscupromiscuity | lobotomoritoratiotron | http://tunes.org/~nef/logs/esoteric
16:24:27 -!- oklopol has set topic: o | security by obscupromiscuity | lobotomoritoratiotron | http://tunes.org/~nef/logs/esoteric.
16:25:06 -!- SimonRC_ has quit (Read error: 110 (Connection timed out)).
16:25:19 -!- ehird has set topic: o | iskagrel | security by obscupromiscuity | lobotomoritoratiotron | http://tunes.org/~nef/logs/esoteric.
16:25:29 <oklopol> well i just read "topic" and "add"
16:39:02 -!- Slereah has quit (Read error: 110 (Connection timed out)).
17:42:29 <ehird> you know what sucks about irc bots
17:42:39 <ehird> they have to do a huge linear search each message that comes through
17:42:43 <ehird> for regexp matches and similar
18:04:44 <ehird> oklopol: if you have a lot of commands
18:04:50 <ehird> then the linear matching is slow
18:07:03 <oklopol> usually, people have a prefix
18:07:57 <oklopol> if the bot designer uses a complex regexp to determine whether something is a command or not, thats their problem
18:08:36 <oklopol> but, unless you're using a 20-year-old computer, you cannot be on enough channels to have any trouble even with non-trivial regexps
18:09:56 <ehird> oklopol: um, i mean like ones which match on messages
18:10:05 <ehird> like 'botname!' makes the bot 'sender!'
18:10:10 <ehird> if you are a plugin-based bot
18:10:14 <ehird> then you can only do that via regexps, really
18:10:22 <ehird> so you have to run a potentially huge list of regexps on every message
18:11:06 <oklopol> i have no idea what you mean by "botname!" makes the bot "sender!"
18:17:54 -!- Corun has quit ("Leaving").
18:18:08 -!- Corun has joined.
18:18:29 <ehird> oklopol: like if i had a bot claled foo
18:19:55 <oklopol> so you have to do up to len(botnick)+1 checks to know if the user calls out your name? god, how can a modern computer manage
18:25:19 <ehird> oklopol: I don't think you've read what I said.
18:25:29 <ehird> If you don't build that in to the very core
18:25:32 <ehird> and instead have it as a plugin
18:25:36 <ehird> the only sane way to do it will be a regexp
18:25:41 <ehird> Pile on many plugins
18:25:47 <ehird> and you're doing over 100 regexp checks each line
18:27:36 <oklopol> ...doing that with a regexp is more than 4 checks?
18:29:26 <oklopol> if it has to find any occurrance of foo! in the message, that basically means it has to read all len(botname)+1 substrings... so basically once pass over each message
18:29:47 <oklopol> i have no idea what your point is, but indeed, perhaps i'm just not reading what you say.
18:31:14 <ehird> oklopol: you're not
18:33:41 <oklopol> anyway, you are correct in that if you make your computer do the work of optimizing the regexp matching, it may not be optimal, although probably fast enough
18:34:00 <oklopol> and if you insist on using general regexps where you could just search for static strings
18:34:31 <oklopol> which would mean just one pass over the string, and would be trivial to code, even as a generic version
18:34:34 <ehird> not insist, oklopol
18:34:42 <ehird> Show me a good way to do it your way in a plugin based system :-
18:35:12 <oklopol> "good"? meaning it should do static searches especially fast?
18:35:37 <oklopol> it's trivial to built a tree from the affices or smth, and just pass once over the message
18:36:13 <oklopol> although i see no problem with doing 100 regexp checks per line. nothing sucks with that imo
18:39:40 <oklopol> and are you assuming a regex motor that can't optimize for multiple search patterns at once?
18:40:10 <oklopol> naturally a good one should provide that
18:40:38 <ehird> oklopol: sure, it's fine if you use something which doesn't exist.
18:41:19 <oklopol> no such regex motor exists?
18:42:44 <oklopol> anyway, i don't see how what exists has anything to do with making an irc bot, just make one yourself, regexes aren't hard to match on
18:44:20 <ehird> oklopol: no such regex motor exist.
18:44:29 <ehird> also .. you make me giggle
18:44:43 <ehird> regexes are easy... but only simple ones
18:44:50 <ehird> and backreferences
18:45:00 <ehird> heck, embedded evaluation
18:45:08 <oklopol> i recall making a regex matcher in c in 5 hours before i knew what parsing was
18:45:22 <oklopol> why would you allow that for an irc bot plugin?
18:45:24 <ehird> oklopol: modern regexps are very powerful
18:47:00 <oklopol> well i don't see your concern, if you insist on using modern regexps even though they don't have support for your need, you're just making things hard for yourself
18:47:23 <oklopol> but you can make static strings separate cases and handle them yourself or smth
19:00:39 <ehird> oklopol: anyhoo as you can guess
19:00:42 <ehird> endeavour is coming <3
19:05:45 <ehird> oklopol: it will be endeavouricious
19:22:05 <ehird> oklopol: hmm properly nested quotes are parsable aren't they
19:22:12 <ehird> "abc'd"foo"ef'ghi"
19:22:18 <ehird> 'abc'd'foo'ef'ghi'
19:27:46 -!- oerjan has joined.
19:32:39 <ehird> oklopol: write a parser
19:33:08 <ehird> "abc'd"foo"ef'ghi" --> ["abc",["d",["foo"],"ef"],"ghi"]
19:33:21 -!- oerjan has set topic: o | iskagrel | security by obscupromiscuity | lobotomoritoratiotron supercollider | http://tunes.org/~nef/logs/esoteric.
19:41:09 <oklopol> http://www.vjn.fi/pb/p125315136.txt
19:41:38 -!- Sgeo has joined.
19:41:46 <oklopol> first made it agglomerate, but thought that might be better and removed it
19:43:17 -!- oerjan has set topic: o | iskagrel | security by obscupromiscuity | lobotomoritoratiotron supercollider | you will be agglomerated | http://tunes.org/~nef/logs/esoteric.
19:43:40 * oerjan is slightly disappointed that the word actually exists though
19:44:03 <ehird> oklopol: TypeError: append() takes exactly one argument (0 given)
19:44:20 <ehird> it was a copypaste error
19:45:18 <oklopol> http://www.vjn.fi/pb/p342464244.txt <<< original agglomerative version, although you prolly could've added that yourself just as easily as i pressed ctrl+z
19:45:25 -!- oerjan has set topic: o | iskagrel | security by obscupromiscuity | lobotomoritoratiotron supercollider | resistance is fossile | you will be agglomerated | http://tunes.org/~nef/logs/esoteric.
19:47:14 <oklopol> ehird: does it work? i didn't really debug, just checked with a few trivial ones
19:47:23 * Sgeo is prepared to destroy the Universe with BOREDOM!
19:47:40 <oerjan> Sgeo: that is already being done
19:48:10 <ehird> oklopol: you need a join
19:48:43 <Sgeo> I'm SO boring trying to count the number of digits in 19!!! that I accelerate the Heat Death of the Universe!
19:48:56 <ehird> oklopol: it kinda works:
19:49:02 <ehird> [[['a', 'b', 'c', ['d', ['f', 'o', 'o'], 'e', 'f'], 'g', 'h', 'i']]]
19:49:13 <oklopol> yeah that's the non agglomerative one
19:49:19 <oerjan> is that factorial iterated thrice?
19:49:20 <oklopol> but i also pasted the original
19:49:52 <Sgeo> oerjan, of course
19:52:02 <ehird> imagine trying to pronounce !.!.!.
19:52:28 * oerjan thinks Bill the Cat would pronounce it perfectly
19:52:29 <ehird> oklopol: well, yes.
19:52:45 <ehird> oerjan: I guess it'd be "chk. chk. chk"
19:53:03 <ehird> (from the band named !!!, which is "chkchkchk" (well, any percussion sound - so "pewpewpew" would work too, but ...))
19:55:30 <ehird> pewpewpewtering nonsense
20:00:11 <oerjan> pew^{19!!!}tering nonsense
20:02:53 <Deewiant> hm, the number of digits in 19!!!... loggamma(1 + exp(4.66 * 10^18)) / log(10)... that's pretty big :-/
20:06:52 <oerjan> those !!! are sort of insignificant
20:07:31 <oerjan> as in, adding 1 to any of the g_64's is likely to make much more of a difference
20:10:34 <oerjan> and i would guess changing 64 to 65 is far better than adding ! to g_64
20:11:22 <Deewiant> Σ(A(g_(exp(64))!,g_(exp(64))!))
20:11:30 <Deewiant> I guess your font can't handle it
20:11:42 <oerjan> um i don't think yours can either
20:11:58 <oerjan> because it doesn't show up in the logs
20:12:17 * oerjan always checks the logs when he suspects unicode
20:12:24 <Deewiant> it shows up fine in the logs here :-P
20:12:32 <Deewiant> maybe your font can't handle the logs
20:12:48 <Deewiant> http://tunes.org/~nef/logs/esoteric/08.05.04
20:13:18 <oerjan> hm weird ircbrowse didn't get it
20:13:18 -!- timotiis has joined.
20:14:19 <oerjan> mind you if that Sigma is a sum sign then it doesn't fit there
20:15:03 <oerjan> no bounds or index to sum over
20:15:12 <Deewiant> it's for the busy beaver function
20:22:12 <Sgeo> what's 4.66 doing in Deewiant's expression?
20:22:40 <Deewiant> is approximately 4.66 * 10^18.
20:32:35 <ehird> oerjan: works here
20:33:26 <oerjan> it showed up for me on tunes.org too
20:34:52 <ehird> {'medium': {'PRIVMSG': [(<_sre.SRE_Pattern object at 0xb7de0c58>, [<function ping at 0xb7db995c>]), (<_sre.SRE_Pattern object at 0xb7deb400>, [<function hello at 0xb7db9924>]), (<_sre.SRE_Pattern object at 0xb7e07560>, [<function hello at 0xb7db9924>]), (<_sre.SRE_Pattern object at 0x81af6c8>, [<function test at 0xb7db9994>]), (<_sre.SRE_Pattern object at 0x81b0120>, [<function test at 0xb7db9994>])]}}
20:34:58 <ehird> i am writing an UNGODLY module system :
20:35:06 <ehird> sane, unlike AnMaster's :P
20:38:34 <ehird> oklopol: priorities
20:38:43 <ehird> high gets executed then medium then low
20:39:02 <oerjan> and ungodly system requires a medium. that much is obvious.
20:39:02 <oklopol> why a list of functions for a pattern?
20:39:18 <ehird> oklopol: because you might have multiple functions under the same pattern? :P
20:39:24 <ehird> It's a relic from the days pr-
20:39:29 <ehird> I can clean up my code bigtime
20:39:32 <ehird> You just found a way
20:39:43 <ehird> oklopol: but here's what a module looks like
20:39:43 <ehird> http://rafb.net/p/xFOvII72.html
20:39:55 <ehird> that will make the regular command syntax work
20:40:08 <ehird> where abc = bot name
20:40:13 <ehird> ($nickname is a special placeholder)
20:47:17 -!- Slereah has joined.
20:47:50 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
20:48:46 <ehird> {'medium': {'PRIVMSG': [(<_sre.SRE_Pattern object at 0xb7dd6e78>, <function ping at 0xb7db4924>), (<_sre.SRE_Pattern object at 0xb7de5400>, <function hello at 0xb7db48ec>), (<_sre.SRE_Pattern object at 0xb7e01560>, <function hello at 0xb7db48ec>), (<_sre.SRE_Pattern object at 0x81af658>, <function test at 0xb7db495c>), (<_sre.SRE_Pattern object at 0x81b0258>, <function test at 0xb7db495c>)]}}
20:50:20 <ehird> oklopol: so which bit of endeavour should i code next. ????
20:58:18 <oklopol> i recommend using a dice to decide that for you
20:58:33 <oklopol> DICidE <<< that's where they took the word
21:00:50 <ehird> oklopol: well, it's open-ended
21:00:55 <ehird> wanna see my module implementation?
21:00:57 <ehird> it uses import internals
21:01:10 <ehird> basically, it lets you write a module like the one i linked
21:01:17 <ehird> and finds out what bits of the module are commands
21:01:23 <ehird> and then extracts them
21:01:25 <ehird> into a Module object
21:01:31 <ehird> which can be bound and unbound to a bot
21:01:55 <ehird> oklopol: http://rafb.net/p/W55y8x46.html
21:01:59 <ehird> self.commands = {} # {priority ('low','medium','high') =>
21:01:59 <ehird> # {irc command or * => [(regexp, func)]}}
21:02:03 <ehird> that's how it represents commands
21:02:09 <ehird> it's pretty universal
21:02:23 <ehird> at the very base, you can match on command = * regexp = .*
21:02:25 <ehird> and use the raw text given
21:02:51 <ehird> oklopol: cool or not
21:05:33 <ehird> _digest_command is a method of epic proportions
21:05:36 <ehird> it handles >>everything<<
21:05:54 <ehird> i screamed a lot when writing it, that commands dictionary can get gnarly
21:09:27 <oerjan> sounds like it needs a sidekick
21:10:11 <ehird> woot, just fixed loads of bugs in it
21:23:53 * Sgeo considers writing a kernel module to allow userspace programs to use panic()
21:25:23 <ehird> Sgeo: oh lord, you are writing kernel modules already?
21:25:32 <Sgeo> I want to learn how
21:25:32 <ehird> nobody install anything by sgeo he wrote his first c program a few days ago
21:25:44 <ehird> Sgeo: you can't write a kernel module a few days after tapping out a hello world
21:26:02 <Sgeo> I can certainly try, though
21:26:35 <ehird> Sgeo: You still don't understand anything about C -- I can guarantee it, nobody does after a few days
21:26:42 <ehird> kernel programming is a TOTALLY different level
21:27:09 * Corun has been programming C for quite a while
21:27:21 * oerjan suddenly gets a flashback to Superman 3
21:28:04 <oerjan> a very vague one, mind you
21:28:27 <Corun> And I wanted to write a driver in the linux kernel a few days ago, and, I mean, it's like the difference between a flying game that you can control with a keyboard and an actual jet
21:30:08 <Corun> (This is _years_ I've been doing C for :-))
21:30:16 * oerjan wonders if anyone has attempted to equip an actual jet with a keyboard interface
21:31:05 <Corun> "Let's see... lock on.. that'd be enter.. Ok, I'm locked on... and... fire? Oh! space, of course" FWOOSH
21:33:29 <oklopol> FUCK I WAS HIT ESCAPE ESCAPE ESCAPE
21:35:02 <Sgeo> Surely there are kernel module tutorials?
21:37:23 <ehird> Sgeo: that's not gonna help you if you are not extremely experienced with c
21:37:44 <ehird> [ | | ] <-- kernel programmer
21:38:34 <oklopol> all this talk about kerneling being hard is making me want to try
21:39:44 <oklopol> mind you i'm fairly experienced in c!
21:40:03 <oklopol> but what's the difference really ;;)
21:42:51 <oklopol> i used the c subset for the most part, often just int(...) style casts :D
21:43:38 <Sgeo> int(...) style.. oh, using int(some_non_int) insead of (int)some_non_int ?
21:45:46 <oklopol> my c++ was always quite weird, as you can probably guess if you've read my python
22:21:22 <ehird> oklopol: i think i implemented ef's basic idea in haskell
22:21:24 <ehird> lala :: (Eq a) => (a -> a) -> a -> a
22:21:24 <ehird> lala f a = case f a of
22:21:38 * Sgeo can't seem to compile this hello world
22:21:57 <ehird> Sgeo: You can't compile a hello world ... and you want to write a kernel module
22:21:59 <ehird> Corun: permission to mock?
22:22:21 <Sgeo> sgeo@ubuntu:~/c$ gcc -c -Wall -I /usr/src/linux-headers-2.6.20-15-386/include lkm_hello.c
22:22:24 <Sgeo> Is that correct?
22:22:40 <ehird> But I won't tell you what's right because
22:22:51 <ehird> 1. the fact that you tried that shows that you really, really shouldn't be programming kernel-level
22:22:54 <ehird> 2. you shouldn't be anyway
22:23:09 <Sgeo> Does it need to use the real source/
22:23:21 <ehird> Sorry, question quota exceeded.
22:24:41 <oklopol> ehird: that's fixed point, yes
22:24:57 <ehird> oklopol: but is it yours
22:25:30 <Sgeo> What's wrong with me wanting to learn?
22:26:06 <oklopol> well, what do you mean by "mine"?
22:26:50 <oklopol> that's fixed point with the trivial observation f a = a => f (f a) = a
22:29:48 <Sgeo> ehird, is it that it needs to point to the place with real code?
22:29:53 <Sgeo> Or am I doing something else wrong?
22:33:00 -!- Iskr has quit ("Leaving").
22:35:27 <pikhq> ehird: From the sounds of it, he's just struggling to include the appropriate headers.
22:36:08 <pikhq> Although one will admit that Sgeo needs to grok C first.
22:36:29 <pikhq> (by "grok", I mean "be able to write the C spec from memory. . . And think that it's the most natural thing in the world.)
22:37:03 * pikhq would probably have a bit more success doing a kernel module. . .
22:37:13 <pikhq> But, then, I've been writing C for a few years. :p
22:39:04 <oklopol> i should do some c tomorrow
22:39:22 <pikhq> I should work on my kernel...
22:41:19 <Corun> Er, permission granted, ehird?
23:03:52 -!- oerjan has quit ("leaving").
23:25:30 <ehird> pikhq: Yeah, I think the fundamental difference between people who rock at C and people who don't, are that the rockers know that they suck
23:25:45 <ehird> and the people who don't think that they can learn how to not suck from a quick tutorial and that 'diving in' is a good approach :-)
23:25:53 <ehird> seen that very often
23:29:22 <oklopol> hmm... i never saw c as that complicated
23:30:23 <oklopol> bsmntbombdood: your mother is fun
23:36:26 <ehird> C is simple. just hard
23:40:11 <ehird> 2. little nitty bits
23:47:39 -!- boily has joined.
23:52:00 <Sgeo> http://www.faqs.org/docs/kernel/x931.html oooOOO >.>
23:52:40 -!- boily has quit ("Schtroumpf!").
23:52:41 * Sgeo just said that to attempt to scare ehird >.>
23:57:11 <oklopol> looks so boring i'm guaranteed to pass out
00:02:09 -!- olsner has quit ("Leaving").
00:13:53 <pikhq> oklopol: C is very, very simple. That's what makes it fiendishly hard.
00:42:57 <ehird> http://upload.wikimedia.org/wikipedia/commons/6/66/Ca110-symbol-separator.png
00:43:00 <ehird> this is a bitchin' image
00:44:05 <Slereah> But rule 34 would be moar arousing :o
00:45:19 <pikhq> Slereah: Not necessarily.
00:45:28 <pikhq> Some rule 34 stuff is an instant erection-killer.
00:46:27 <ehird> pikhq: Some rule 34 stuff can kill an erection that isn't even there.
00:46:44 <ehird> Which is kind of a bizzare concept.
00:47:11 <oklopol> you're erections are just weak.
00:47:13 <ehird> oklopol: that'd involve finding it myself
00:47:21 <ehird> also, it can't be a weak erection if it isn't there now can it
00:47:32 <oklopol> hmm... good point, good point
00:50:19 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:59:22 -!- sebbu has quit ("@+").
01:46:58 -!- ehird has quit (Remote closed the connection).
03:39:22 -!- Corun has quit ("Leaving").
04:09:38 <Slereah> "The designers were partially successful; the only known precedent is a machine instruction [6] in a Soviet mainframe computer BESM-6, released in 1967, that is effectively equivalent to INTERCAL's "select" operator."
04:17:50 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
04:19:38 -!- Sgeo has joined.
04:51:08 -!- atsampso1 has joined.
04:57:31 -!- atsampson has quit (Read error: 110 (Connection timed out)).
05:10:16 <Slereah> I read sexuality into that.
05:16:22 -!- pikhq has quit (Read error: 110 (Connection timed out)).
05:27:29 -!- calamari has joined.
05:44:09 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
05:45:49 <bsmntbombdood> esoteric as in "Understood only by a chosen few or an enlightened inner circle.", and not "a useless joke"
05:54:45 -!- SupStrman has joined.
05:54:55 -!- SupStrman has left (?).
06:52:52 -!- calamari has quit ("Leaving").
07:23:35 -!- olsner has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:00:37 -!- GreaseMonkey has joined.
08:23:57 -!- Iskr has joined.
10:26:20 <oklopol> bsmntbombdood: you and your crazy rpn calculator fantacies
10:29:40 -!- GreaseMonkey has quit ("Unisex.").
10:32:43 -!- timotiis has joined.
11:03:54 -!- timotiis has quit (Read error: 110 (Connection timed out)).
13:18:32 -!- ehird has joined.
13:20:25 -!- ehird_ has joined.
13:20:25 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
13:23:26 -!- ehird_ has quit (Read error: 104 (Connection reset by peer)).
13:35:41 -!- ehird has joined.
14:09:19 -!- ais523 has joined.
14:16:59 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
14:17:14 -!- ais523 has joined.
14:33:32 -!- Corun has joined.
14:47:13 -!- ais523_ has joined.
14:48:09 -!- ais523 has quit (Nick collision from services.).
14:48:12 -!- ais523_ has changed nick to ais523.
15:28:38 -!- pikhq has joined.
16:33:37 -!- sebbu has joined.
17:02:41 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
17:12:21 -!- Corun has quit ("This computer has gone to sleep").
17:12:36 -!- sebbu2 has joined.
17:16:51 -!- fizzie2 has joined.
17:17:15 -!- fizzie has quit (Read error: 110 (Connection timed out)).
17:20:31 -!- Corun has joined.
17:31:09 -!- ehird_ has joined.
17:31:22 -!- ehird has quit (leguin.freenode.net irc.freenode.net).
17:31:22 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
17:31:40 -!- sebbu has quit (Success).
17:31:40 -!- sebbu2 has changed nick to sebbu.
17:32:35 -!- ehird has joined.
17:32:35 -!- cmeme has joined.
17:39:16 -!- ehird has quit (Connection timed out).
17:47:19 -!- ehird__ has joined.
17:53:48 -!- ehird has joined.
17:59:41 -!- Sgeo has joined.
18:02:52 -!- ehird_ has quit (Read error: 110 (Connection timed out)).
18:06:56 -!- ehird__ has quit (Read error: 110 (Connection timed out)).
18:40:30 -!- ehird has set topic: o | iskagrel | security by obscupromiscuity | lobotomoritoratiotron supercollider | resistance is fossile | you will be agglomerated | apathy krundig | http://tunes.org/~nef/logs/esoteric.
18:40:47 <ehird> hah, try singing that aloud
18:41:11 <ehird> "O/Iskagrel/Security by obscupromiscuity/Lobotomoritoratiotron supercollidor/Resistance is fossile/You will be agglomerated/Apathy krundig"
18:41:15 <ehird> it sounds like some kind of pretentious metal lyrics
18:45:37 * olsner lols quietly at "Resistance is fossile/You will be agglomerated"
18:48:41 <ehird> olsner: it truly sounds like something that would be shouted out loudly at a metal concert
18:48:51 <ehird> RESISTANCE IS FOSSILE YOU WILL BE AGGLOMERATED YEAHHHHHHHH
18:49:50 <olsner> heh, when you put it in all caps like that I can actually hear it growled
18:51:31 <ehird> olsner: it's an odd idea, though -- a death metal band that only growls about geek puns
18:51:57 <olsner> it would be truly befitting of #esoteric to produce such a metal band
18:58:24 -!- oerjan has joined.
19:03:41 * oerjan thinks it's starting to sound like a weirdly geeky religious sect. esoteric in both senses!
19:05:25 * oerjan does not think that this in any way contradicts it being a metal band too
19:10:28 -!- timotiis has joined.
19:17:51 * olsner bringeth forth the fermented milk
19:19:19 * oerjan googleth that phrase with no result
19:20:41 <olsner> rather, it was a real-time narrative with a twist
19:21:27 * olsner greedily makes hasty work of aforementioned expired milk
19:24:23 <Sgeo> Znlor vg'f abg fhpu n tbbq vqrn gb rng cergmryf juvyr er-ernqvat n fgbel jurer ng gur raq, rirelbar qvrf bs qrulqengvba (lrnu lrnu, fcbvyre sbe uggc://dagz.bet/vaqrk.cuc?snvyher , gung'f jul vg'f va EBG13.. lrf, V'z rivy orpnhfr V onfvpnyyl tbg rirelbar'f vagrerfg hc ol cbfgvat va EBG13..)
19:25:00 <olsner> let me guess, EBG13 stands for ROT13?
19:26:14 <olsner> quick discovery of cipher method is quick :-)
19:26:44 <Sgeo> olsner, you didn't even bother to decrypt what I wrote, did you?
19:26:46 <Deewiant> I can tell that's ROT13 from the letters, and from having seen a lot of ROT13 in my time. :-P
19:27:05 <Sgeo> If "EBG13" wasn'
19:27:13 <fizzie2> The "uggc://" is quite a giveaway, too.
19:27:24 <Deewiant> I actually didn't pay any attention to "EBG13" until olsner pointed it out :-P
19:27:29 <Sgeo> wasn't there, would uggc:// make it quite obvious too, or can people generally tell even without those
19:28:12 <Deewiant> well I can't be sure it's not any other caesar cipher or similar... but it's /usually/ ROT13
19:28:39 * oerjan discovers vim's g? command
19:29:23 * olsner has never attempted to read ROT13'ed text before
19:29:27 <ehird> Sgeo: also, fuck you
19:29:47 <ehird> olsner: his rot13 contained a spoiler
19:30:01 <ehird> so, yeah: fuck you
19:30:10 <Sgeo> The story's been out for a while..
19:30:26 <ehird> Sgeo: so everyone must have read it, right
19:30:31 <Deewiant> it's easy to bookmark it and forget about it
19:30:57 <ehird> Deewiant: i have never forgotten a spoiler
19:31:55 <ehird> http://www.cs.cmu.edu/~aleksey/pictures/curry-howard-isomorphism.jpg
19:32:41 <Sgeo> ehird, isn't rot13 normally used to hide spoilers?
19:33:03 <ehird> http://wwwwwwwww.jodi.org/ <-- what the
19:33:19 <ehird> Sgeo: it's worth noting that you could have left out the spoiler perfectly well
19:34:18 <Deewiant> ehird: hmm, stupid thing isn't in a <pre>
19:34:33 <Deewiant> not that I can make much sense of it even when it is
19:34:40 <ehird> Deewiant: it's a link
19:34:47 <ehird> to an extensive website of ... WHAT
19:34:59 <Deewiant> but the illustration itself is interesting :-P
19:37:27 <Deewiant> is the date the site was put up, I would guess.
19:38:04 <ehird> Deewiant: BTW - view source for the ascii art
19:38:27 <Deewiant> because of the "last modified" timestamps visible at http://wwwwwwwww.jodi.org/100cc/hqx/ and http://wwwwwwwww.jodi.org/betalab/img/ for instance
19:38:29 <ehird> http://en.wikipedia.org/wiki/Jodi
19:38:47 <ehird> appears at first glance to consist of meaningless text, until a glance at the HTML source code reveals detailed diagrams of hydrogen and uranium bombs.
19:38:47 <Deewiant> ehird: and yes, obvious, hence my comment saying that I can't make much sense of it
19:38:51 <ehird> Deewiant: it's a 1995 work
19:39:19 <ehird> They received a Webby Award in the Arts category in 1999; as their mandatory five-word acceptance speech, they exclaimed "Ugly corporate sons of bitches!".
19:57:59 <ehird> Deewiant: Continuation-passing style is hard.
19:58:25 <ehird> I understand it fully.
19:58:30 <ehird> But doing the conversion automatically?
20:08:58 <Sgeo> Hm, I guess I should look for a tutorial for something newer than GTK 2.0?
20:25:11 <ehird> Sgeo: You wrote your first hello world a few days ago. Now you're doing GTK.
20:25:16 <ehird> Jesus christ there are just no words.
20:25:22 <ehird> Not as bad as a kernel module, even so.
20:27:48 <oerjan> next week he'll have SkyNet up and running as a botnet.
20:28:46 <ehird> which he learned the day prior
20:28:50 <ehird> from a 5 minute tutorial
20:30:27 <Sgeo> I have done quite a lot of work with a language that had a very C-like syntax, if that helps
20:31:02 <Sgeo> ehird, are there any graphical toolkits that might be easier?
20:31:36 <ehird> Sgeo: just don't. YOU DO NOT KNOW ANYTHING ABOUT C YET
20:31:38 <ehird> and that is objective fact
20:31:40 <ehird> for ANYONE at this stage
20:31:49 <ehird> <Sgeo> I have done quite a lot of work with a language that had a very C-like syntax, if that helps <-- No, it doesn't. One bit.
20:38:42 <oerjan> it's the bits that get you. i think.
20:47:57 <Sgeo> Yay I did the exercise suggested by the tutorial
20:48:35 <ehird> No good C programmer thinks they're good enough for stuff like this at this point.
20:49:32 <Sgeo> I need to overcome the disability of relying on GUIs to make GUI applications that I acquired by reading about VB5 at an early age..
20:50:52 <ehird> Sgeo: Don't do it with C at ~5 days.
20:51:08 <ehird> Besides, gtk devs advocate using a graphical designer (Glade) anyway.
20:51:12 <ehird> But more importantly
20:51:20 <ehird> DON'T DO IT WITH C AT ~5 DAYS YOU DON'T KNOW ANYWHERE NEAR ENOUGH C FOR THIS
20:51:24 <ehird> NOR A KERNEL MODULE
20:52:32 <ehird> Deewiant: i can't face being tech support for another sgeo horror
20:52:47 <Deewiant> you don't have to be tech support for him :-P
20:52:50 <Sgeo> "another sgeo horror"?
20:52:59 <ehird> Deewiant: yeah but he spams the channel if i'm not
20:53:19 <Deewiant> there isn't much conversation here anyway, let'im
20:53:45 <ehird> kernel modules at 4 days come on :(
20:54:17 <Deewiant> why not, whatever gets you going
20:54:25 <Deewiant> it might not be complete very soon
20:54:29 <Deewiant> but where's the harm in trying
20:55:17 <ehird> because i know what sgeo's like :<
20:58:16 <Sgeo> Do most GTK+ programs use Glade/
21:26:24 -!- Iskr has quit ("Leaving").
22:02:35 <SimonRC> I had forgotten that Fine Structure rocks
22:10:06 -!- oerjan has quit ("Have a finely structured night").
22:57:50 <ehird> SimonRC: I haven't started it yet unfortunately.
22:59:02 <Sgeo> ehird, I think I spoiled only one substory >.>
23:18:36 <SimonRC> and that wasn't a terribly bad spoiler
23:19:08 <SimonRC> I found a mine of hilarity: ROM CHECK FAIL
23:19:11 <SimonRC> http://www.tigsource.com/features/vgng/index2.html
23:19:18 -!- olsner has quit ("Leaving").
23:19:38 <SimonRC> I kept bursting out in laughter at the ridiculous combinations it came up with
23:24:29 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:03:49 -!- Corun has quit ("Leaving").
00:38:50 -!- Corun has joined.
00:48:50 -!- Corun has quit ("Leaving").
01:03:59 -!- ihope has joined.
01:07:28 <ihope> Last night, I wrote some notes for an AI thingy with a pencil on yellow wide-ruled paper. Today at school, I wrote some notes for that AI thingy with a pen on white college-ruled paper.
01:07:56 <ihope> The notes on white paper have much more crossing out. I wonder if that's related to the color of the paper.
01:10:46 <ihope> I'll scan thhem in case anyone wants to use them to best the human mind.
01:16:28 <ihope> Darn. One of these is illegible and the other's cut off.
01:17:40 <ihope> You're not going to stick around to see my revolutionary ideas? :-P
01:18:06 -!- ehird has quit (Remote closed the connection).
01:22:47 <ihope> Yellow page, huge edition: http://i29.tinypic.com/2wbvrqr.jpg
01:23:51 <ihope> White page, non-huge edition: http://i32.tinypic.com/2vt7jid.jpg
01:32:32 <ihope> And the yellow one mentions Tailsteak!
01:33:48 -!- Corun has joined.
02:47:38 -!- Slereah_ has joined.
02:47:38 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
04:16:23 -!- Corun has quit ("Ok, I'm ZZzzzing :-P").
04:18:08 -!- calamari has joined.
05:11:07 -!- Slereah has joined.
05:11:07 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
05:47:06 <Sgeo> ihope, tailsteak? Wherewhere?
05:48:01 <Sgeo> ihope, OCR much?
05:51:15 * Sgeo takes back any accidental implied insultiness
05:55:45 -!- GreaseMonkey has joined.
05:58:28 -!- Slereah_ has joined.
05:58:35 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
06:16:44 -!- Slereah has quit (Read error: 110 (Connection timed out)).
07:56:55 -!- Iskr has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:02:42 -!- Iskr has quit ("Leaving").
08:03:19 -!- Iskr has joined.
08:25:13 -!- calamari has quit ("Leaving").
08:39:02 -!- olsner has joined.
09:03:41 <oklopol> Deewiant: I can tell that's ROT13 from the letters, and from having seen a lot of ROT13 in my time. :-P <<< i can *read* it, pwnd ya bad, didn't i?
09:04:51 <oklopol> i actually cannot, now that i started reading. perhaps i memorized a crooked rot13 chart :)
09:05:32 <oklopol> right, perhaps it wasn't rot-13
09:07:07 <fizzie2> That sounds more like Atbash.
09:08:07 -!- fizzie2 has changed nick to fizzie.
09:08:17 <oklopol> (hmm... now that i think about it i've memorized a complement alphabet :D)
09:08:39 <fizzie> Yes, that's what Atbash is: http://en.wikipedia.org/wiki/Atbash
09:10:41 <oklopol> i didn't notice your earlier comment there, not that it changes anything
09:10:53 <oklopol> (but had to explain the "oh")
09:11:23 <oklopol> hmph, now i need to use another 5 minutes for alphabet memorization :<
09:13:25 <fizzie> I think the first question of the first homework round of our introductionary-cryptography-thing-course was about Atbash. Completely pointless, of course. (And the second question had ROT-13. Later on the homework questions made a bit more sense.)
09:23:11 <lament> rot-13 your atbash for twice the strength
09:25:00 <lament> (it's nice to know that they commute!)
09:27:10 <olsner> oh, rot13.atbash == atbash.rot13?
09:32:49 <fizzie> See the Wikipedia link just a couple lines upwards.
09:33:03 <fizzie> Also rot_N.atbash = atbash.rot_{26-N}, for obvious reasons.
09:36:36 <fizzie> Too bad tr doesn't like "tr a-z z-a"; otherwise it'd be a nice Atbash utility. It's already good for rot-13ing with "tr a-z n-za-m".
09:36:47 <fizzie> tr: range-endpoints of `z-a' are in reverse collating sequence order
09:39:35 <olsner> ghci -e 'runCommand $ "tr a-z " ++ reverse [
09:39:58 <olsner> or something like that :P
09:54:12 <fizzie> Well, perl -pe '@a=("a".."z"); @b=reverse(@a); eval "tr{@a}{@b}";' also works, but can't say it's pretty.
10:23:36 -!- GreaseMonkey has quit ("Unisex.").
11:34:12 -!- ais523 has joined.
11:46:35 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
12:17:16 -!- Tritonio has quit (Remote closed the connection).
12:41:02 -!- sebbu2 has joined.
13:01:30 -!- sebbu has quit (Connection timed out).
14:59:13 -!- ais523 has joined.
15:14:51 -!- ehird has joined.
15:22:30 -!- timotiis has joined.
15:35:05 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
15:35:15 -!- oklopol has joined.
15:35:50 -!- RedDak has joined.
15:42:37 -!- RedDak has quit (Remote closed the connection).
15:51:56 <ais523> a couple of esoteric programs have turned up here: http://thedailywtf.com/Comments/Code-examples-and-interviews.aspx?pg=3
15:52:17 <ais523> they were discussing stupid job interview questions that asked people to write programs under arbitrary restrictions
15:52:43 <ais523> and I submitted an INTERCAL program that fit most of the spec of one problem, while someone else wrote a Befunge program for the other (easier) problem
15:53:00 <ais523> I was doing the substring program
15:53:12 <ais523> mine almost fits the spec, but it's case-sensitive and outputs in Roman numerals
15:53:29 <ais523> oh, someone came into #irp the other day and ran a few programs
15:53:37 <ehird> ais523: the problem with the daily wtf will that everyone will say "that language is the real wtf!! LOL ENTERPRISEY!!"
15:53:51 <ehird> it's a site filled with idiots who like to laugh at the people that they think are idiots :p
15:53:58 <ais523> when they tried the beer thing, I linked them to the lyrics on 99-bottles-of-beer.net, and then they went away
15:54:08 <ehird> ais523: you're not standard!
15:54:10 <ais523> ehird: not all of them are idiots, just some of them
15:54:12 <ehird> the correct response is 'go to hell'
15:54:22 <ais523> but I was implementing an extension
15:54:52 <ais523> I can't wait for the next OMGWTF, by the way
15:55:06 <ais523> I'm planning to submit code automatically translated from the INTERCAL
15:55:14 <ais523> that's two WTFs pretty much guaranteed
15:55:31 <ais523> Slereah_: a silly interview question, also a children's game
15:55:49 <ais523> see the page I linked for Fizzbuzz in Befunge, and an implementation of substr in INTERCAL that finds all matches
15:56:08 <Slereah_> No one can read esoteric code, ais523.
15:56:10 <ais523> the correct FizzBuzz output, as I remember it (although the spec they give isn't clear), is:
15:56:18 <Slereah_> It's a thing you write, not that you read!
15:56:35 <ais523> 1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz and so on
15:56:59 <ais523> in the children's game, you continue until someone screws up the sequence, then they're out
15:57:08 <ais523> the sequence showed up on anagolf a while ago, too
15:57:08 <Slereah_> So fiz is for dividible by 5, butt for 3?
15:57:15 <ehird> and fizbutt for both
15:57:24 <Slereah_> That doesn't seem too hard for a non-esoteric language.
15:57:25 <ais523> err.... buzz, not butt
15:57:38 <ais523> Slereah_: it isn't, it's really easy, but apparently lots of programmers are incapable of it anyway
15:57:45 <ehird> but fizbutt is amusing
15:57:48 <ehird> and Slereah_ said it
15:58:09 <ais523> it seems to be just fiz and buz in the US, though
15:58:20 <ais523> and fizzie: what an appropriate nick for this conversation!
15:58:26 <ehird> ais523: i cant' resisit saying something about dumbing down :-)
15:58:51 <ais523> read the INTERCAL, anyway, it isn't too hard...
15:59:03 <ais523> well, I didn't try to obfuscate it, but the algorithm is interesting
15:59:28 <ais523> it's my standard technique of using stacks to store arrays, and backtracking to access them non-destructively
15:59:46 -!- Parma-Quendion has joined.
16:00:07 <ais523> do you think anyone will take me up on my offer to explain my code?
16:00:14 <Slereah_> I once had the idea of doing something like that.
16:00:29 <Slereah_> Giving a programming assignment back in C and something esoteric
16:00:46 -!- Quendus has quit (Nick collision from services.).
16:00:54 -!- Parma-Quendion has changed nick to Quendus.
16:01:25 <ais523> well, I'm the sort of person who, when set an assignment that asks for a Windows binary among other things, hands in both the Windows binary and a Linux x86 binary that does the same thing, because the Linux version was the original
16:01:34 <ais523> and likewise hands in the .odt with the requested .pdf
16:01:54 <Slereah_> Hm. Maybe I can do a fizzbutt on the Love Machine 9000.
16:02:09 <ais523> I have to go for a bit, but I'll be back later
16:02:11 -!- ais523 has quit ("brb").
16:21:19 -!- ais523 has joined.
16:21:57 <ais523> any relevant developments while I was gone?
16:22:25 <Slereah_> [17:01] * ais523 (n=ais523@pw01-fap01.bham.ac.uk) Quit ("brb")
16:22:26 <Slereah_> [17:21] * ais523 (n=ais523@pw01-fap01.bham.ac.uk) has joined #esoteric
16:22:57 <ais523> but I never know; after all, there was a conversation going, and that increases the chance of something happenign
16:23:39 <ehird> Slereah_: that was a fulll log
16:31:43 <ais523> it's interesting, really, that so much more effort goes into writing esoprograms than reading them
16:32:01 <ais523> generally speaking esoprograms are written and run, but not actually read except by their author
16:32:18 <ais523> I don't think that's a good thing; there are all sorts of programming techniques that can be learnt from others' code
16:32:31 <ais523> especially in esolangs
16:32:50 <ais523> the advantage of common things being difficult is that uncommon things become just as easy as the common things in some cases
16:32:51 <ehird> ais523: reading them is very hard
16:32:57 <Slereah_> Well, it's usually better to ask them directly
16:33:00 <ais523> well, it depends on the language
16:33:21 <Slereah_> It's not like it's hard to find them.
16:33:28 <ais523> Unlambda, for instance, is easy to write for an esolang (if you compile from lambda-calculus) but hard to write well, and hard to read
16:33:28 <Slereah_> There's like 75% of them all right here!
16:34:23 <ais523> well, there's time-zone issues
16:34:31 <ais523> and it's always nice to figure something out for yourself
16:34:37 <Slereah_> But then again, with Unlambda, you can use any function and copypaste it into your program
16:34:42 <ais523> although I suppose writing programs is also part of the learning process
16:35:07 <Slereah_> Just need some (^f.f(x)) program
16:35:11 <ais523> for instance, the concept of storing code in the stack turned out to be central to Underload; both Keymaker and I wrote programs that did that in different ways
16:35:36 <ehird> ais523: do you want my mkproposal.pl?
16:35:45 <ehird> it doesn't diff, though. For editing, use the web interface.
16:35:47 <ais523> yep, you may as well post the link again
16:35:54 <ehird> But if you just want to splurge a directory in, and maybe edit a few files
16:35:57 <ehird> then use my script and amend
16:35:59 <ais523> I can find it in logs if necessary, though
16:36:09 <ehird> ais523: I'm considering letting you define a sub - 'end'
16:36:13 <ehird> which will run after it creates everything
16:36:18 <ehird> kind of like a literate program
16:36:47 <ehird> ais523: http://pastebin.ca/1009420
16:36:49 <ais523> I'm actually amused that literate programming has caught on
16:36:54 <ehird> comments on my perl style welcome :)
16:37:02 <ais523> it's a good idea, but I'm not entirely sure why it needs a special syntax
16:37:19 <ehird> ais523: because it's not just 'comments > code'
16:37:22 <ais523> I've written several programs with more comments than code, where the code is inside the comments, which use comment markup for the comments as usual
16:37:29 <ais523> and I know it isn't just comments > code
16:37:31 <ehird> you have to be able to write the program in the order that it makes sense to explain it in
16:37:36 <ehird> and subroutines just don't handle that
16:37:43 <ehird> (you need finer control and more access to the enclosing context)
16:38:04 <ais523> ehird: you didn't set the expiry on that to infinite
16:38:13 <ehird> ais523: so? i haven't licensed it yet
16:38:18 <ais523> it should be, really, for all esolang stuff, as I don't want it to vanish off the net
16:38:37 <ais523> but if you haven't licensed it yet, and you plan to put it up elsewhere, then fine
16:39:04 <ehird> ais523: pb.eso-std.org
16:39:24 <ais523> elliotthird.org was down last I checked
16:39:47 <ehird> remember? i wiped it.
16:39:52 <ehird> my irc network is up though.
16:39:56 <ais523> I was wondering if you'd fixed it in the meantime
16:40:09 <ehird> don't intend to until i get the stuff ready to put up
16:40:09 <ais523> oh, and you don't set the executable/non-executable flag on the files you create
16:40:17 <ehird> ais523: hm, that's a good point
16:41:42 <ais523> interesting way you do marker selection, BTW
16:41:59 <ehird> ais523: how is it interesting?
16:42:00 <ais523> reminds me slightly of Ethernet collision retries
16:42:10 <ais523> ehird: increase the length and re-randomize each time
16:42:11 <ehird> it is just guaranteed to also work for finite files :-)
16:42:25 <ais523> normally people just re-randomize, or follow a pattern
16:42:26 <ehird> ais523: really i don't even need to increase the length
16:42:36 <ais523> ehird: yes, I know, that's what the comment was about
16:42:38 <ehird> what kind of file includes all 3 uppercase letter combinations on a line of their own?
16:42:42 <ais523> increasing the length is probably good, though
16:42:52 <ehird> yeah, my program is provably correct
16:42:56 <ehird> well .. not really
16:43:03 <ais523> and I can imagine a list of all known assembler opcodes in a file
16:43:07 <ehird> so just about anything relating to it is unprovable
16:43:13 <ais523> that might contain all 3 uppercase letter combinations
16:43:20 <ehird> ais523: UUU is an asm upcode?
16:43:29 <ais523> if it doesn't, we'll have to invent an esoasm to do the remaining ones
16:43:42 <ais523> and UUU is an RNA codon, not sure about asm
16:43:48 <ais523> does RNA count as assembly language?
16:43:51 <ais523> it's compiled into protein
16:43:59 <ais523> by a simple assembly-like substitution
16:44:05 <ehird> ais523: when you give me a 'hello world' in rna...
16:44:09 <ehird> ... then two things will happen
16:44:14 <ehird> 1. i'll call it an asm language
16:44:21 <ehird> 2. fundie christians will kill you, in your sleep
16:44:31 <ehird> ais523: hm, odd, my irc network doesn't show up on nmap
16:44:34 <ehird> paranoid openssh :-)
16:44:39 <ehird> security by obscurity!
16:45:05 <ais523> heh, the entire genetic code of a human, when transcribed into RNA, is arguably a hello, world
16:45:16 <ais523> a more literal hello, world than most programming languages, for that matter
16:45:32 <Slereah_> What would be hello world in RNA?
16:45:37 <ais523> but I don't think the genetic code by itself is enough to recreate a human
16:45:40 <Slereah_> A form of life that says "Hello, world" and then dies?
16:45:49 <ais523> I think Wikipedia had a DNA Hello, world
16:45:58 <ehird> Slereah_: that would rock
16:46:06 <ais523> when transcribed into protein and written out in the standard notation, you got HELLQWQRLD or something
16:46:08 <ehird> '...pop Hello, world! AEURURURURARRRRRRRRRRRRRRR-'
16:46:23 <Slereah_> ais523 : Metamath has a Hello, world theorem
16:47:46 -!- RedDak has joined.
16:48:07 <Slereah_> http://us.metamath.org/mpegif/helloworld.html
16:48:10 <ais523> ah, it's transwikied to Wikibooks now: http://en.wikibooks.org/wiki/Transwiki:List_of_hello_world_programs
16:48:19 <ais523> but I couldn't find the DNA one on there
16:49:21 <ais523> the worrying thing is that I have a vague memory that it was me who transwikied it
16:49:36 <Slereah_> "It is not difficult to write a message in a plasmid using the one letter code for the amino acids by inserting a suitable string of three letter of DNA per amino acid with some adjustments O => Q. For instance Hello world is HELLQ WQRD or Histidine-Glutamic acid-Leucine-Leucine-Glutamine-Tryptophan-Glutamine-Arginine-Aspartic acid."
16:49:44 <ehird> Slereah_: what does the hello world theorem actually mean?
16:49:46 <ehird> translate into english
16:50:07 <ais523> Slereah_: that's missing a Leucine
16:50:43 <Slereah_> It means that it is true that h does not belong to the set formed by the relation L over L and 0, and...
16:50:55 <Slereah_> I'm not too sure about the second part.
16:53:26 <ais523> it was transwikied, but it wasn't my fault this time
16:55:52 <ehird> 344563446523446523446524465234465234465234456234465234456 = 2
16:56:07 <ais523> ...Wikibooks has hello worlds in 198 languages, plus 46 GUIs, 9 page description languages, 3 media-based scripting languages and 25 esolangs, including some esolangs I've never heard of
16:56:11 <ais523> this bears investigation
16:56:34 <ehird> ais523: any comments on my perl style?
16:56:46 <ais523> ehird: it's not particularly idiomatic, it looks more like C
16:56:49 <ais523> but that's probably a good thing
16:57:02 <ehird> ais523: what would you change? It doens't look anything like C to me..
16:57:10 <ehird> In fact, my mind views it as 'deliciously obfuscated' :-)
16:57:33 <ais523> if I were obfuscating it I wouldn't have single-use subroutines, and I wouldn't break print statements just to do some calculations
16:57:45 <ais523> you can do the calculation inside an argument to the print, you know...
16:58:26 <ehird> "The Del on the first line begins function definition for the program named HWΔPGM." -- the APL one
16:58:35 <ehird> why would you name a program HWΔPGM
16:58:38 <ehird> what's wrong with HELLO
16:58:44 <ehird> I mean 'Hello World Program', okay, but still
16:58:57 <ais523> also, all those variables grate on the functional programmer inside me, but they're probably the clearest way to write it
16:59:01 <Deewiant> is it hello world, hello jack, hello bob, what?
16:59:23 <Slereah_> Deewiant : Hello is hello for any variable
16:59:24 <Deewiant> hell, HELLO doesn't even say if it's a program!
16:59:35 <Slereah_> Hence, it can be used to salute the entire world
16:59:36 <ehird> and since you're defining a program ...
16:59:57 <ehird> ais523: I dont' see how breaking the print wuld do anything apart from give me a mammoth print with statements inside
17:00:16 <ais523> ehird: what's not obfuscated about a mammoth print with statements inside?
17:00:29 <ais523> I'm not saying your program is bad, just that it isn't particularly obfuscated for Perl
17:00:34 <ehird> ais523: not talking about obfuscation, relaly
17:00:36 <ehird> just idiomatic perl
17:00:41 <ais523> oh, and here's an esolang I was unaware of: http://www.nishiohirokazu.org/blog/2006/09/kemuri_1.html
17:00:46 <ais523> luckily, most of the page is in English
17:01:11 <ais523> no spec, but there's an interp so it could be deduced from that
17:01:42 <Slereah_> "The only command to push constant values into the stack is the `. It pushes 13 values 33, 100, 108, 114, 111, 119, 32, 44, 111, 108, 108, 101, 72 in this order. "
17:01:59 <ehird> Slereah_: 'awfully Japanese ^^' - the writer is obviously japanese
17:02:07 <ais523> ah, there is a spec, I just missed it because it was so short
17:02:15 <ehird> esolangs and golfing are more popular with those japs it seems
17:02:20 <ehird> but golfing moreso
17:02:23 <ehird> and golfing with ruby tops
17:02:40 <ais523> Slereah_: the pushing of those values is cheating, but it's the only way to get constants
17:02:49 <ehird> but ` is such a cheat
17:02:51 <ais523> you have to do bitwise XORs and complements on those values to get to other values
17:03:07 <ehird> "l"(small L) and "*"(asterisk) are reserved for possibility to use as a command "Execute the stack as Brainf*ck" in future. ha
17:03:21 <ais523> Slereah_: you can only get a constant by XORing together characters of "Hello, world!"
17:03:28 <ais523> you can't push a literal 1 onto the stack
17:03:37 <ais523> so it's more interesting than it looks
17:03:47 <ais523> only capable of outputting constant text strings, though, so it isn't Turing-complete
17:03:55 <ais523> it's only barely cat-complete
17:04:03 <ais523> and cat programs are a lot easier to write...
17:04:58 <ehird> ais523: l and * would make it tc
17:05:18 <ais523> yes, but allowing inline BF is a cheaty way to make something TC
17:05:31 <ehird> ais523: by the way, i have an idea for a language
17:05:32 <Slereah_> Those people and their cheating way.
17:05:34 <ais523> just like calling Perl regexps TC is cheating
17:05:40 <ehird> you can implement it by TAIL-FILE-RECURSION
17:05:46 <ehird> the only 'looping' in the language
17:05:55 <ehird> is when the interp loads its all file
17:05:59 <ehird> and then exits after running itself
17:06:23 <ais523> so it reloads a different file when the currently running file ends?
17:06:28 <Slereah_> I wonder, is there a form of Brainfuck without any restriction on the code?
17:06:41 <Slereah_> Like an unbalanced [ would just be a conditional
17:06:45 <ehird> require "interp.pl"; exit
17:06:52 <ehird> and that's the only way the language can loop
17:06:53 <Slereah_> and unbalanced ] would just bring back to the beginning of the code.
17:06:54 <ais523> Slereah_: FukYorBrane does that
17:07:08 <ais523> at least, not exactly, IIRC it ignores unbalanced loops
17:07:23 <ais523> all code has to be valid, because the program tends to get corrupted during use
17:07:32 <ais523> and has to keep running unless it hits a bomb, or all threads quit
17:09:39 <ais523> compare http://en.wikibooks.org/wiki/List_of_hello_world_programs#Ruby_with_GTK.2B to http://en.wikibooks.org/wiki/List_of_hello_world_programs#Windows_API_.28in_C.29
17:09:52 <ais523> that's pretty much proof of ehird's and my complaints about how bad the Windows API is
17:10:07 <ais523> of course, I picked the examples to make that statement look good, but still...
17:10:23 <ehird> ais523: hee, you linked to ruby as a good example
17:10:31 <ehird> i was expecting perl
17:10:35 <ais523> ehird: I wanted something clean and simple compared to that C stuff
17:10:39 <Slereah_> 99 should also do a hello world database.
17:10:42 <ais523> Ruby is good at clean, simple, small programs
17:10:47 <Slereah_> The hello world lists are too scattered
17:10:49 <ais523> even graphical ones, apparently
17:10:55 <ehird> ais523: ruby has some really weird bits :-) but it's nice
17:11:06 <ehird> wanna see a Shoes version of that?
17:11:16 <ehird> I can write it *right here*
17:11:31 <ehird> button("Hello, world") { exit }
17:12:56 <ehird> ais523: well, the window gets kinda big when you do that
17:13:00 <ehird> you can trivially make it any size, though
17:13:09 <ehird> Shoes.app :width => a, :height => b do # that's all
17:15:04 <ehird> THE CHANNEL, IT DUN DIE
17:16:07 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
17:16:07 -!- ais523_ has joined.
17:16:30 <ais523_> sorry, did I miss anything?
17:16:35 -!- ais523_ has changed nick to ais523.
17:16:37 <ehird> ais523_: last thing you heard?
17:16:38 <Slereah_> [18:14] <ehird> THE CHANNEL, IT DUN DIE
17:16:54 <ais523> <ehird> I can right it *right here*
17:17:04 <ehird> <ehird> here goes:
17:17:04 <ehird> <ehird> Shoes.app do
17:17:04 <ehird> <ehird> button("Hello, world") { exit }
17:17:07 <ehird> <ehird> ais523: well, the window gets kinda big when you do that
17:17:09 <ehird> <ehird> you can trivially make it any size, though
17:17:11 <ehird> <ehird> Shoes.app :width => a, :height => b do # that's all
17:17:19 <ais523> maybe I should write a hello, world in OpenGL
17:17:26 <ais523> without using any text functions
17:17:29 <ehird> ais523: the cool thing about shoes
17:17:35 * ais523 has just finished an OpenGL project
17:17:38 <ehird> is that it contains animation and graphics functions ala Processing
17:17:43 <ehird> and excellent mouse/keyboard handling
17:17:45 <ais523> they wanted a Windows executable
17:17:49 <ehird> as well as the standard, native gui fare
17:17:56 <ais523> so I invented a programming language for expressing graphical scenes in
17:18:02 <ais523> and wrote a cross-platform interpreter for it
17:18:21 <ais523> and handed in the source, Windows and Linux executables, and the source code for the particular program they wanted
17:18:34 <ais523> I doubt anyone else did it like that
17:20:21 <ehird> ais523: you know what sucks? the lack of gui toolkits good for writing /real apps/ that aren't complex as hell
17:20:43 <ais523> GTK is reasonably simple
17:20:54 <ais523> and GLUT is very simple, but not good enough for large-scale applications
17:21:01 <ehird> ais523: GTK is based on hell, though
17:21:07 <ehird> GObject is the worst idea I've heard in years
17:21:10 <ehird> It's a good esoteric idea, though.
17:21:13 <ehird> Kind of like Malbolge.
17:21:16 <ais523> well, Qt isn't that bad either
17:21:28 <ehird> qt is nice, but not nice to program
17:21:46 <ais523> oh, and the graphical version of intercalc (the CLC-INTERCAL calculator) is written in GTK
17:22:00 <ais523> I'm not sure what argument that makes either way
17:27:40 <ehird> ais523: i can't wait until everything's rewritten in c intercal
17:27:51 <ais523> what do you mean by 'everything'
17:28:22 <ais523> ehird: that's never going to happen, what would C-INTERCAL itself be written in?
17:28:30 <ais523> besides, I rather like a multitude of languages existing
17:28:39 <ais523> ehird: what would it compile into? INTERCAL?
17:28:44 <ais523> that would be kind of pointles
17:28:52 <ehird> ais523: it would interpret it
17:29:00 <ehird> and since everything is in INTERCAL
17:29:04 <ais523> ehird: but the whole point of C-INTERCAL is that it's a compiler
17:29:15 <ehird> ais523: then we'll stop using c-intercal ;)
17:29:35 <ais523> the different design decisions of C-INTERCAL and CLC-INTERCAL stem mainly from the fact that one's a compiler and one's an interpreter, and from the different langs they're written in
17:31:17 <ais523> however, I feel that a practical INTERCAL-based language is a reasonable idea
17:31:32 <ais523> if it had the usual arithmetic operators and decent string handling, INTERCAL would be quite nice to program in
17:36:37 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
17:36:53 -!- ais523 has joined.
17:37:15 <ais523> sorry... did I miss anything?
17:37:19 <ais523> the last I saw was <ais523> if it had the usual arithmetic operators and decent string handling, INTERCAL would be quite nice to program in
17:38:33 <ehird> <ais523> if it had the usual arithmetic operators and decent string handling, INTERCAL would be quite nice to program in
17:38:33 <ehird> * ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"")
17:38:33 <ehird> * ais523 (n=ais523@pw01-fap01.bham.ac.uk) has joined #esoteric
17:38:49 <ais523> hmm... that's nice, it even got my sig
17:39:07 <ais523> You are standing in the main hall of what appears to be some sort of
17:39:11 <ais523> castle. There is a door in each of the east and west walls; the one in
17:39:11 <ais523> the west wall has a [ symbol marked on it, but there are no markings on
17:39:11 <ais523> the door in the east wall. There is a large staircase, which goes upwards
17:39:11 <ais523> to a balcony high on the north side of the room. The south of the room is a
17:39:11 <ais523> large door, heavily barred with wooden bars that you would have no chance
17:39:27 <ais523> (unfinished esoteric text adventure with several esolang puzzles in, so far three puzzles none of which leads anywhere)
17:39:58 <ais523> although one of them is capable of leading to a secret area if you have a good knowledge of INTERCAL run-time error messages
17:40:07 <ais523> Slereah_: try moving through the game, and you'll find out
17:40:13 <ais523> there's a SMETANA puzzle on the stairs
17:40:18 <ais523> a Brainfuck puzzle to the west
17:40:23 <ais523> and an INTERCAL puzzle to the east
17:40:58 <ais523> SMETANA because the whole "Step 1. Step 2." blatantly implies a staircase
17:41:23 <ehird> ais523: shall I write a bot that will interface the game and irc?
17:41:25 <ais523> You are standing on stair 0 of a flight of stairs.
17:41:29 <ais523> The stairs are numbered from 0 at the bottom to 9 at the top; the numbers
17:41:32 <ehird> so you don't have to do it manually.
17:41:33 <ais523> are written on the banisters rather than the stairs themselves. The top
17:41:37 <ais523> and bottom stairs are blank, but the others have writing on, as follows:
17:41:49 <ais523> 7. Swap steps 3 and 5.
17:42:02 <ais523> 6. Swap steps 3 and 4.
17:42:13 <ais523> 3. Swap steps 2 and 4.
17:42:18 <ais523> 2. Swap steps 1 and 7.
17:42:22 <ais523> 1. Swap steps 5 and 8.
17:42:34 <ais523> ehird: you could do, but manually is simple and the parser's really rudimentary
17:42:34 <ais523> so it's best for me to parse in my head rather than make people use the parser, which only accepts one-char commands, no args
17:42:35 <ais523> each description ends with a menu of which command does what in that context
17:42:44 <ais523> oh, and your options are to walk up a step, down a step, or to slide down the banister
17:42:51 <ais523> so you're going up, presumably?
17:43:23 <ais523> When you arrive on step 5, you are suddenly teleported to step 2!
17:43:23 <ais523> When you arrive on step 2, you are suddenly teleported to step 1!
17:43:23 <ais523> When you arrive on step 1, steps 5 and 8 swap places!
17:43:30 <ais523> at this point, the staircase looks like this:
17:43:46 <ais523> 7. Swap steps 3 and 5.
17:43:50 <ais523> 6. Swap steps 3 and 4.
17:44:06 <ais523> 4. Swap steps 1 and 7.
17:44:10 <ais523> 3. Swap steps 2 and 4.
17:44:18 <ais523> > 1. Swap steps 5 and 8.
17:44:26 <ais523> I kept going up until you were teleported
17:44:34 <Slereah_> Do I have Mario-like jumping abilities?
17:44:34 <ais523> you have no choice now but to walk off the staircase; it resets when you do that
17:44:34 <ais523> in general all the puzzles reset when you leave the room and they are unsolved
17:44:35 <ais523> some reset even if solved, some don't
17:44:38 <ais523> Slereah_: not in this game
17:45:01 <ais523> presumably you'd gain them if you found a blue mushroom to eat, but there are none in the game at the moment
17:45:35 <ais523> an ehird web interface would likely work better than pasting, though, just because the SMETANA problem produces so much output
17:45:40 <ais523> the other two are less noisy
17:45:49 <ehird> ais523: but that's less ircy
17:45:53 <ehird> But I can do a web interface, trivially.
17:46:08 <ais523> I'll paste the source-code; it doesn't really give anything away
17:46:33 <ais523> it's really lousy, though, I may rewrite it in an esolang at some stage
17:46:38 <ehird> ais523: no point pasting the code
17:46:40 <ehird> you can run it on your machine
17:46:44 <ehird> once i've written the web interface
17:46:51 <ais523> then how will the web interface access the code?
17:46:57 <ehird> ais523: by using a subprocess.
17:47:05 <ehird> ais523: it takes input on stdin, and spews stuff on stdout, right? Then I can make something meaningful out of it.
17:47:17 <ais523> yes, but you'll need the code or an executable to be able to run the code
17:47:23 <ais523> you can't interface to the code if you don't have it
17:47:25 <ehird> ais523: So I give you my web interface.
17:47:38 <ais523> ehird: I have no server that's externally accessible
17:47:48 <ais523> as it happens Apache's running on here, but I can't get round the firewall
17:47:49 <ehird> ais523: You can just give me a linux binary, then.
17:47:53 <ais523> because I don't control it
17:47:55 <ehird> Smaller than source code :p
17:48:01 <ais523> I have a linux x86 binary, though
17:48:08 <ehird> i am on linux x86 after all
17:48:17 <ehird> http://filebin.ca/
17:48:23 <ais523> esogame: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.8, dynamically linked (uses shared libs), not stripped
17:48:46 <ehird> ais523: that iwll work perfectly
17:49:00 <ais523> http://filebin.ca/shdmov
17:49:23 <ehird> Web interface to the esogame coming up.
17:49:42 <ehird> ./esogame: /lib/tls/i686/cmov/libc.so.6: version `GLIBC_2.4' not found (required by ./esogame)
17:49:45 <Slereah_> Does the game have some sort of plot, or is it just a bunch of puzzles?
17:49:50 <ehird> ais523: what kind of directory structure is THAT
17:49:50 <ais523> Slereah_: no plot as of yet
17:50:04 <ais523> and really, I don't know what kind of dir structure that is
17:50:19 <ehird> ais523: oh well, paste the source code to filebin and /msg me the url i guess
17:50:20 <ais523> linux-gate.so.1 => (0xb7fc3000)
17:50:20 <ais523> libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7e59000)
17:50:20 <ais523> /lib/ld-linux.so.2 (0xb7fc4000)
17:50:28 <ehird> (since pastebin.ca is public)
17:50:32 <Slereah_> Will the victory imply some sort of pastry?
17:50:44 <ais523> Slereah_: probably, but a victory is currently impossible
17:50:55 <ais523> no doubt you'll have to make the cake-like object yourself, though, using a Chef program
17:51:21 <ais523> I've /msg'd ehird the source code
17:51:30 <ais523> but it doesn't spoil any of the puzzles
17:51:30 <Slereah_> Will you need a Camouflage program to enter the building?
17:51:48 <ais523> Slereah_: not sure, you start inside the building, but it's currently possible to leave but not to re-enter
17:51:58 <ais523> that might be a decent way to manage re-entry
17:52:20 <ais523> I was planning to construct the building a bit like Television Center, with two floors, and make the whole thing a giant Whirl program
17:52:28 <ais523> s/program/interpreter/
17:52:55 <ais523> that would require rooms to become harmless once their puzzles were solved
17:53:02 <ehird> ais523: OK, I can make a web interface to this trivially.
17:53:04 <ehird> Even with savegames!
17:53:11 <ehird> (It just generates a unique game id when you go there, then saves to that filename.)
17:53:16 <ehird> (Just go to the URL to load again.)
17:53:24 <ehird> How do you load a saved game, though, ais523?
17:53:27 <ais523> actually, I might move the INTERCAL room directly above the Brainfuck room, then restrict people to going clockwise round the puzzle
17:53:32 <ais523> ehird: specify it on the command line at current
17:53:44 <ais523> I started that program years ago and haven't updated it much since
17:53:46 <ehird> OK, this will be fun
17:53:58 <ais523> maybe I'll update it more once my exams are finished
17:54:07 <ais523> but I've already promised lots of things to different people
17:54:51 <ais523> such as fixing the bug with C-INTERCAL that Debian's autobuilder found on Itanium, or the bugs I found with C-INTERCAL on Solaris
17:55:08 <ais523> on the plus side, C-INTERCAL's going to be ridiculously extensively portability-tested, given its subject matter...
17:55:47 <ehird> haha i think me and Slereah_ are the only ones who find that funny
17:56:32 <ais523> compiles what into what?
17:56:49 <Slereah_> Such diverse languages as Brainfuck, ook, spoon...
17:56:57 <ais523> I actually want a compile everything into everything suite
17:57:02 <ehird> ais523: esco is a shitty pile of crap
17:57:03 <ais523> EsoInterpreters is a good start
17:57:19 <ehird> they support about 5 languages, half of which are brainfuck syntax-changes.
17:57:19 <ais523> ideally, have some way to compile around a cycle of esolangs (with at least one 'real' language represented)
17:57:25 <ehird> and the code is crappy c++.
17:57:29 <ais523> then any lang in the cycle can be compiled into any other
17:57:30 <ehird> and the dev linked to it all over the wiki
17:58:00 <Slereah_> It would be hard to compile BF into Unlambda.
17:58:07 <ais523> e.g. it's currently possible to compile Unlambda -> Underlambda (I lost the source code for that, but I can remember how it was done)
17:58:11 <ais523> and Underlambda -> Underload
17:58:23 <ais523> Underlambda -> C, definitely
17:58:37 <ais523> and I have a P'' interp in Unlambda
17:58:57 <ais523> changing that to a BF->Unlambda compiler wouldn't be ridiculously difficult because I still have the Relambda source
17:59:38 <ais523> Slereah_: Unlambda + lambda
17:59:48 <ais523> it's a language I use privately to write Unlambda programs
18:00:09 <ais523> there's a Relambda to Unlambda compiler in my esolangs.el, though, which I've pasted at least twice
18:00:21 <ais523> it's buggy, unfortunately
18:00:28 <ehird> ais523: the esco guys are funny
18:00:34 <ehird> "Byter is a language for training brains."
18:00:36 <ehird> they warped that into
18:00:36 <ais523> but unlambda + lambda is a pretty simple combination
18:00:40 <ehird> "Byter is a language for training your brain."
18:00:50 <Slereah_> Well, that was most of the idea for Lazy Bird.
18:01:03 <ais523> Lazy Bird doesn't actually have a lambda, though, does it?
18:01:07 <ais523> just lots of useful combinator
18:01:15 <Slereah_> although the real idea was "I'm trying to write Unlambda on the love machine 9000 and it's terrible"
18:01:30 <ais523> Underlambda has lambdas too
18:01:40 <ais523> and I had great fun trying to express them as rewrite rules into Underload
18:01:43 <ais523> I think I succeeded, though
18:01:50 <Slereah_> Here be a Fibonacci with lambdas : ``m^x^y````yk.1r``xx``v`y0```yk`sb`y0``v0i
18:02:15 <ais523> that's basically the same syntax as Relambda, except that I use $x and $y to read the value of lambda bindings
18:02:32 <ehird> ais523: by the way, a trivial way to do continuations in an esolang:
18:02:38 <ehird> ({} is an array here)
18:03:03 <ehird> X [Y] callcc Z -> {X Z} Y Z
18:03:04 <ais523> I use ^ in Relambda, but \ in Underload
18:03:18 <ehird> ais523: which leads me to a new idea --
18:03:20 <ehird> 'forward parameters'
18:03:21 <ais523> ehird: that's pretty much how the Underlambda rewrite rule works
18:03:29 <ehird> in a concat lang, the 'back parameters' are the ones coming before the call
18:03:36 <ehird> my idea is 'forward parameters': the ones in front!
18:04:02 <ais523> that makes some sense if you have an amount of control over what they are
18:04:13 <ehird> ais523: here's callcc using 'forward parameters'
18:04:13 <ehird> \x y,z -> {x z} y z
18:04:16 <ais523> but one issue is that back parameters can be manipulated in all the usual concatenative ways
18:04:17 <ehird> that's in lambda + concat notation
18:04:22 <ehird> you could probably come up with a better way to do it
18:04:23 <ais523> forward parameters couldn't be, they'd have to be literals
18:04:29 <ehird> ais523: they could be thunks
18:05:01 <ais523> well, in that case it's just the sort of typical rewrite rule which is trivial in Perl, Thutu or Cyclexa
18:05:28 <ais523> how's that web interface, by the way?
18:07:29 <ehird> ais523: going quite well
18:07:34 <ehird> i mean, the actual thing is trivial
18:07:39 <ehird> the fun part is writing the server boilerplate!
18:08:04 <ais523> heh, I could probably make it into a CGI script by adding a couple of lines and using a continuation library
18:08:20 <ehird> ais523: Probably, but forking like hell would kill this kind of thing
18:08:32 <ehird> ais523: besides, you need multiple users at one time
18:08:40 <ehird> and you can't persist processes, anyway
18:08:40 <ais523> OK, but why would a continuation library need forking?
18:08:42 <ehird> so you couldn't use a cgi
18:08:48 <ehird> ais523: cgi = fork each request
18:09:11 <ais523> if you can persist continuations across runs of the program, then you can just exit in between calls
18:09:33 <ehird> ais523: ah, i see what you're saying
18:09:36 <ehird> i'm using subprocesses
18:09:44 <ais523> Underlambda's actually got persistent continuations as part of the language, in the C, S and D commands
18:09:54 <ehird> ais523: hm, should i make saving implicit?
18:09:58 <ehird> like, each action saves
18:10:03 <ehird> since i generate a unique name anyway
18:10:07 <ais523> not sure, the save on it's pretty broken anyway
18:10:13 <ais523> because it doesn't save the internal state of puzzles
18:10:18 <ehird> ais523: does it not? dshdkf!
18:10:23 <ais523> just a whole load of variables I don't actually use yet
18:10:25 <ehird> i'm going to all this fuss partly for the saves
18:10:32 <ehird> ais523: make it persist it pronto :<
18:10:44 <ais523> OK, I'll look at the code for the first time in years...
18:11:07 <ais523> the problem is keeping a consistent save-file format whilst adding extra puzzles...
18:11:36 <ais523> aargh, it's basically impossible the way I've written it
18:11:45 <ais523> it seems I've duplicated the parser inside the puzzle functions
18:11:53 <ais523> and used auto variables to store the states of the puzzles
18:12:13 <ais523> I told you this thing needs a rewrite
18:12:26 <ehird> oh well, i'll just do no save games for now
18:12:41 <ais523> pokpokpopokpkopkopokpkopokpokpkopokpokpkopokpkopkopkopokpkopokpkoppokpkopokpokpkpokpokpokpkopko
18:13:27 <ais523> at least the BF puzzle doesn't actually need a save, it's always either solved or reset
18:13:35 * ais523 just had a worryingly evil idea
18:13:41 <ais523> this game's a text adventure
18:13:49 <ais523> and I'm planning to add a text adventure system to PerlNomic
18:14:01 <ais523> I wonder if the two could be combined in some way?
18:14:16 <ehird> <ais523> pokpokpopokpkopkopokpkopokpokpkopokpokpkopokpkopkopkopokpkopokpkoppokpkopokpokpkpokpokpokpkopko
18:14:21 <ehird> is that like oko v2
18:14:21 <Slereah_> If you want to program some embryos : http://www.vivo.colostate.edu/molkit/rtranslate/index.html
18:14:27 <ais523> sorry, I went all oklopol for a moment
18:14:41 <ais523> I probably would have deleted it rather than posted it in most other channels
18:15:24 <ehird> ais523: don't worry, we're all dirty okoers here, i meaokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokok
18:15:46 <ehird> @@valid = "a".."z" + "A".."Z" + "0".."9" # this is elegant in some weird way
18:16:13 <ais523> what lang? It looks a bit like Perl, but isn't
18:17:09 <ehird> i'll have to convert it to an array
18:17:15 <ehird> otherwise representing that as a range makes no sense
18:17:56 <ehird> ais523: ruby's love of functional programming saves the day!
18:17:58 <ehird> @@valid = ["a".."z", "A".."Z", "0".."9"].inject([]) {|a, b| a.to_a + b.to_a}
18:18:00 <ehird> (inject is reduce/fold)
18:18:09 <ehird> Deewiant: 'cause i want to generate it too
18:18:47 <ais523> using || as parens looks strange
18:18:55 <ehird> ais523: it's the parameters
18:18:58 <ehird> it's taken from smalltalk
18:19:00 <ehird> smalltalk of that is:
18:19:16 <ehird> ais523: and the extra one is so that you can do 0-adic ones easily
18:19:27 <ehird> also, { and } can be spelled 'do' and 'end' which is more elegant for multi-line blocks
18:19:30 <ehird> .inject([]) do |a, b|
18:19:53 <ais523> ehird: they stole that feature from Magenta!
18:20:13 <ehird> ais523: rule of thumb: {} for one-line blocks (only one expression)
18:20:16 <ehird> do..end for multi-line
18:20:19 <ehird> ais523: fun thing about ruby: no statements
18:20:22 <ehird> everything is an expression
18:20:29 <ehird> so you can give /anything/ as an argument to a function
18:20:32 <ehird> even a class definition
18:21:11 <ais523> "everything is an expression" is good
18:21:21 <ais523> there is no reason for a statement/expression split nowadays
18:21:35 <ais523> such splits also go against my sense of elegance in programming
18:21:36 <ehird> ais523: quite. Ruby is a lot deeper than most people think
18:21:41 <ehird> (those who learn of it from Rails, mostly)
18:21:50 <ais523> that's why INTERCAL has separate expressions and statements
18:22:01 <ais523> oh, and some of the expressions have side effects#
18:22:10 <ehird> well, ruby's expressions have side effects
18:22:14 <ehird> because otherwise there'd be no side effects :P
18:22:20 <ais523> that's fine if they serve the role of statements too
18:22:32 <ais523> although arguably, Haskell managed to find a different solution to that particular problem
18:22:59 <ais523> but in a lang with split expressions/statements, having side-effect expressions is just silly
18:23:44 <ais523> I wonder what the historical reasons for langs having separate expression and statements are?
18:23:54 <ais523> possible reasons: parsing before LR(1) was invented, line numbers
18:24:04 <ais523> e.g. combining expressions and statements in Forte would be really difficult
18:24:11 <ais523> probably other reasons I haven't thought of
18:24:59 <ais523> the parsing is because people used to use top-down parsing for statements and bottom-up or operator-precedence parsing for expressions
18:25:08 <ehird> ais523: it was just intuitive back in tha 'old dayz
18:25:26 <ais523> not really, asm doesn't have separate expressions and statements
18:25:38 <ais523> so why did the first higher-level languages separate them?
18:25:42 <Deewiant> so adding expressions was an obvious next step
18:26:14 <Deewiant> or it seems obvious to me, anyway. More so than changing all statements to expressions. :-P
18:26:21 -!- oerjan has joined.
18:26:27 <ehird> 'add a, b; mov b, x'
18:26:34 <ehird> and esp. for large expressions
18:26:37 <ais523> expressions would have originally been invented as a way to reduce temporary register usage
18:26:38 <ehird> why not 'mov a+b, x'?
18:26:50 <ehird> and then you get into function calls and stuff
18:27:03 <ehird> then you get a language leaving asm behind - like C
18:27:11 <ehird> and ends up making IO stuff into functions
18:28:21 <ehird> ais523: another nice thing about ruby - it has good string interpolation built in
18:28:32 <ais523> many langs have that nowadays
18:28:32 <ehird> #{foo}, in a string literal, is an interpolation of the code foo, converted to a string
18:28:37 <ehird> sometimes you can even leave out the {}
18:28:42 <ais523> even Cyclexa does, or will do when I finish the spec
18:28:45 <ehird> #foo and #@bar and #$xyz works, but they're obscure-looking
18:28:48 <ehird> so nobody uses them :-)
18:28:53 <ehird> ais523: you can nest quotes in these
18:29:03 <ais523> ehird: but you can have nested comments in email addresses
18:29:16 <ais523> however, I tried it in my email client and it rejected the address
18:29:23 <ais523> not even sure if it allows non-nested comments
18:29:26 <ehird> ais523: gotta admit though, "#{"#{"hello"}"}" is amusnig
18:29:38 <ais523> but nested comments strike me as a good anti-spam measure
18:29:44 <ais523> what spambot parses those nowadays?
18:30:00 <Deewiant> what mail client supports them?
18:30:18 <ais523> Deewiant: all the ones which follow the spec, so probably about 2 that nobody's ever heard of
18:31:55 <ehird> Thread.new { @buffer[id] += proc.gets until proc.closed? }
18:32:02 <ais523> anyway, try sending a message to ais523(524\)(525)x)@bham.ac.uk and seeing what happens
18:32:08 <ehird> 'until' and 'x?' are cute idioms :-)
18:32:13 <ais523> anyone who actually reaches me has a superior mailer
18:32:23 <ais523> ehird: they'll be adding a please to it next
18:32:24 -!- helios24 has joined.
18:32:47 <ais523> oh, yes, email addresses even have an escape syntax for escaping comment markers in comments
18:33:37 <ehird> ais523: i do believe I just emailed you
18:33:50 * oerjan notes that good old pine supports that address nicely (it strips out the comments as soon as i leave the To: line)
18:34:10 <ais523> maybe it'll arrive later, or maybe a relay en-route will choke on the comments
18:34:36 <ais523> oerjan: that's a really clever idea, allow all users and don't confuse the mailer
18:34:49 <ehird> ais523: I have a class called PunkRock in my program. It is a pun on 'proc'.
18:35:35 <ais523> maybe I'll publically display my email as a valid address with comments in, spambots would be unlikely to track it down and people with decent mailers could visit it without deobfuscating
18:37:39 <ehird> ais523: eurgh, you can't do redirects right
18:37:46 <ehird> reloads go to the redirector
18:37:48 <Deewiant> ais523: so what's the actual address supposed to be
18:37:49 <ehird> instead of hte redirectee
18:37:52 <ehird> if you use anything else
18:37:55 <ehird> then a browser caches the redirector
18:37:59 <ehird> to go to the redirectee
18:38:05 <ais523> Deewiant: look more closely, \ is an escape character
18:38:20 <Deewiant> ais523: aye, so you escape the one after 524
18:38:54 <Deewiant> i.e. (foo(bar)baz) is one comment, not baz)
18:39:07 <ais523> remember this is email addresses we're talking about
18:39:32 <ais523> but no regexp can handle arbitrarily nested comments
18:41:20 -!- RedDak has quit (Read error: 104 (Connection reset by peer)).
18:41:37 <ehird> ais523: gosh, this bug is odd
18:41:43 <Deewiant> looks like it's an open bug at mozilla since 2002 :-)
18:42:06 <ais523> Deewiant: but it should be easy to fix, surely?
18:42:20 <ehird> ais523: the proc buffer appears to be empty
18:42:22 <ehird> even though it is not
18:42:33 <ais523> "proc buffer" = /proc?
18:43:38 <ehird> ais523: no, the game subprocesses
18:44:48 <ehird> I mean, it's there. Just.
18:44:58 <ehird> Setting the wrong instance variable :|
18:46:04 <ehird> ais523: OK, I just need to add input.
18:53:26 <ehird> return if (proc = proc_for(name)).nil?
18:53:41 <ais523> why did you paste that particular line of code to me?
18:55:16 <ehird> ais523: OK, I think it's almost ready
18:55:18 <ehird> and ... I just found it cute.
19:02:20 <ehird> ais523: Hmm. Odd bugs.
19:02:51 <ehird> ais523: Give me a good number for reading in chunks
19:03:02 <ais523> CLC-INTERCAL uses 1024
19:03:06 <ais523> I don't know if that makes it a good number, though
19:04:06 <ais523> but I don't have the fingerprint 0 0 1 1 loaded
19:04:31 <ais523> so I think it reflects, and as I don't have 1 1 1 1 loaded either that's an infinite loop
19:04:52 <ehird> ais523: the problem is that we redirect back straight after a post
19:04:53 <ais523> sorry, it would just be the fingerprint 1, I forgot the semantics for a moment
19:04:59 <ehird> which means you get either no or only some of the game's response
19:05:07 <ais523> Deewiant: I was trying to interpret your code as Funge-98
19:05:25 <ais523> it's the ) I'm talking about
19:05:37 <ehird> ais523: any ideas about my solution?
19:05:41 <ehird> apart from doing it ajaxy that is :-)
19:05:43 <Deewiant> you'd hit my nick first though ;-)
19:05:49 <ais523> ehird: what redirect code are you using?
19:05:57 <ehird> ais523: nothing to do with that
19:06:09 <ehird> just the timing of the seperate thread which does the reading
19:06:12 <ais523> why do you have a redirect?
19:06:17 <ehird> ais523: after the form post
19:06:20 <ehird> i redirect to the game display
19:06:29 <ehird> this can happer faster than I read in the game's response
19:06:30 <ais523> and where does the information that then displays come from?
19:06:45 <ehird> ais523: the buffer which i store to by reading continuously in a seperate thread
19:06:51 <Deewiant> ais523: but what it would do is try to unload the fingerprint 0. the first param it pops is the length of the fingerprint's identifier
19:07:01 <ais523> Deewiant: there are two 1s on the stack
19:07:07 <ehird> hmm, /me has an idea
19:07:17 <ais523> ehird: use some sort of readbuffer-valid/readbuffer-invalid flag?
19:09:08 <ehird> ios.closed? => true or false
19:09:08 <ehird> Returns true if ios is completely closed (for duplex streams, both reader and writer), false otherwise.
19:09:15 <ehird> ^^ but I only want to know about reading!
19:09:25 <ais523> ehird: then use a non-duplex stream?
19:09:38 <ehird> ais523: but I need both input and output, for one process
19:09:41 <ehird> It's the game process :-)
19:10:45 <ehird> it's gone molasses slow
19:11:02 <ais523> ehird: you might want to look up on how it checks for EOF
19:11:11 <ais523> it may be something silly like test read + unget with timeout
19:11:13 <ehird> ais523: my thoughts exactly
19:11:33 <ehird> ais523: how DO I detect if your game exited
19:11:53 <ais523> ehird: by looking at its process number?
19:11:58 <ais523> that's the usual method
19:12:27 <ais523> e.g. you can use kill to see if it's possible to send something a signal, if it isn't then it's probably exited
19:12:46 <ehird> Tue May 06 19:13:41 +0100 2008: ERROR: Resource temporarily unavailable
19:13:23 <ais523> your server has switched to Daylight Saving Time
19:13:34 <ais523> mightn't that cause problems during the DST switch?
19:13:34 <ehird> ais523: ha, that's not quite what i was talking about
19:13:46 <ehird> no, it's just that my processes are only lasting one requset
19:14:22 <ais523> languages other than UNIXy shells have insufficient ampersands
19:14:46 <ehird> ais523: EAGAIN is the error, by the way
19:14:56 <ehird> whut does that be meanin'
19:15:09 <ais523> ehird: EAGAIN means that an application started a non-blocking read, but it would have blocked
19:15:18 <ais523> so it returns instantly with an error, because the read is non-blocking
19:15:33 <ehird> ais523: how do I do a non-blocking-read-but-blocking-if-it-needs-to-be
19:15:46 <ais523> a read is either blocking or not
19:15:54 <ehird> that is: 'if the process dun wanna give me nuttin', just return the empty string. But if it has sum of dat nice output for me, block and gimme it'
19:15:55 <ais523> it sounds like you've described a blocking read
19:16:13 <ehird> ais523: but if I do a blocking read it'll wait until the process wants to output N characters
19:16:25 <ehird> I do this every request, to get the output it's sent, y'see
19:16:25 <ais523> ehird: you've just described a non-blocking read
19:16:29 <ehird> (dropped the thread)
19:16:39 <ehird> ais523: OK, but it's having that odd error, so it's obviously not doing what I asked.
19:16:39 <ais523> presumably you're running it in a tight loop, and that's causing the slowness?
19:17:03 <ehird> When did I say anything baout slowless
19:17:16 <ais523> <ehird> it's gone molasses slow
19:17:22 <ehird> ais523: that's not related in any way to this.
19:17:32 <ehird> proc.buffer += proc.read_nonblock(4096)
19:17:36 <ehird> i do that each time you view the game screen
19:17:42 <ehird> to syphon anything the game wants to tell me
19:17:49 <ehird> but this isn't working past the first request
19:17:51 <ais523> what does read_nonblock return in a situation where it would block?
19:17:52 <ehird> it fails with EAGAIN
19:17:56 <ais523> null, all data available, or error?
19:18:00 <ehird> ais523: EAGAIN, presumably?
19:18:02 <ehird> That's what you said.
19:18:10 <ehird> ais523: Yes, EAGAIN.
19:18:12 <ais523> but I would have expected Ruby to wrapper around that
19:18:14 <ehird> That's what t's giving me.
19:18:17 <ehird> An IOError of EAGAIN
19:18:21 <ehird> (raises an exception)
19:18:25 <Deewiant> "read_nonblock just calls read(2). It causes all errors read(2) causes: EAGAIN, EINTR, etc. The caller should care such errors. "
19:18:26 <ehird> even python just wraps around the errnos
19:18:29 <ais523> that's ridiculous high-level language design
19:18:38 <ehird> ais523: No, it's common high-level language design
19:18:39 <ais523> looks like you have to catch the EAGAIN yourself
19:18:43 <ehird> Haven't seen one langugae not do it
19:18:48 <ehird> ais523: OK, and if I get an EAGAIN whatd o I do?
19:19:03 <ehird> I could do proc.read(4096), but then what if the game wants to give me, say, 512 characters? It'll hang.
19:19:18 <ais523> ehird: according to the documentation of read(2), you only get EAGAIN if there's no data
19:19:21 <ais523> and all the data available otherwise
19:19:42 <ais523> so just trap the exception and handle it with no action in the handler
19:19:51 <ehird> proc.buffer += proc.read_nonblock(4096) rescue nil
19:19:53 <ehird> yes, ruby even has post-rescue
19:20:31 <ehird> ais523: OK, a bit better, except that when I type 'Go' now it gives me a screen with just my input. Then if I refresh it sees it
19:20:37 <ehird> (because, obviously, the output isn't instanteneous)
19:20:42 <ais523> sounds like a race condition
19:20:57 <ehird> but i don't see what i can do about it save for an artificial delay
19:21:54 <ais523> normally, some sort of semaphore or spinlock, or other way to send data between multiple process
19:22:11 <ais523> e.g. (1) COME FROM (1) AGAIN / ABSTAIN FROM (1) in C-INTERCAL
19:22:11 <ehird> ais523: Even more worryingly, if I do 'Up'
19:22:18 <ehird> then it doesn't display anything, no matter how many refreshes
19:22:20 <ehird> until the next input
19:22:35 <ais523> are you flushing the pipe into my program?
19:22:49 <ehird> ais523: oh. that might hlep
19:22:50 <ais523> also, my program doesn't flush output pipes, you may need to add a few fflushes in there
19:24:10 <ehird> ais523: into your program?
19:24:13 <ehird> i'm trying not to modify it
19:24:26 <ais523> well, programs built to run in ttys don't always run properly in pipes
19:24:37 <ais523> sometimes you need to change the buffering mode of the program
19:25:10 <ais523> e.g. all C-INTERCAL 0.28 output programs support a command-line option to flush after every output character
19:25:21 <ais523> so you can cause that to happen without modifying the output
19:25:56 <ehird> ais523: if I paste my code will you think of something? :P
19:26:04 <ais523> ehird: if it's written in Ruby, probably not
19:26:08 <ehird> ais523: it's very readable
19:26:11 <ais523> it's a good language for several things, but I don't know it
19:26:19 <ais523> and understanding the code won't solve the problem
19:26:28 <ehird> ais523: while reading it, this might help - http://www.ruby-doc.org/core/classes/IO.html
19:26:32 <ais523> it's understanding what obscure language feature you need to solve it that's needed to solve the problem
19:26:45 <ehird> http://pastebin.ca/1009573
19:26:51 <ehird> i don't think it's obscure
19:28:46 <ehird> ais523: nothing obvious?
19:29:02 <ais523> I suggest modifying my program to flush and send some special character (there's probably a control char in ASCII for this purpose, it's got a lot of useful control chars like that) after every input, and blocking for that char
19:29:19 <ais523> otherwise, how can you possibly tell when my program's finished its output?
19:29:43 <ais523> failing that, get my program to flush (or switch stdout unbuffered), and put a time delay in before the reload
19:29:47 <ehird> ais523: well, there's an online zork
19:30:05 <ehird> anyway, ais523, your program just uses raw printf
19:30:06 <ehird> changing would be hell
19:30:24 <ais523> if it's just printf you can #define printf to flush
19:30:33 <ehird> ais523: yeah, but then I can't use "printf"
19:30:44 <ehird> and you also use puts
19:30:51 <ais523> or you can just use a single setbuf call on stdout
19:31:25 <ais523> setvbuf(stdout, _IONBUF, 0, 0);
19:31:34 <ais523> that command causes all stream I/O on stdout to flush instantly
19:31:40 <ais523> just put it at the start of main()
19:32:01 <ehird> esogame.c:176: error: ‘_IONBUF’ undeclared (first use in this function)
19:32:56 <ehird> esogame.c:176: warning: passing argument 2 of ‘setvbuf’ makes pointer from integer without a cast
19:33:08 <ais523> have I got the args in the wrong order? let me check again
19:33:23 <ais523> setvbuf(stdout, 0, _IONBUF, 0);
19:34:04 <ehird> ais523: well, nothing mmuch happens
19:34:09 <ehird> really looks like I'm gonna have to add a delay..
19:34:15 <ais523> you need a delay as well
19:34:21 <ais523> that just prevents the stair lockup problem
19:34:22 <ehird> ais523: but how much
19:34:35 <ais523> and the delay needs to only be a few hundred milliseconds
19:34:49 <ais523> but there's no way you can do without a delay without further modifying the program you interface with
19:35:05 <ehird> ais523: OK, seems to work apart from one thing
19:35:13 <ehird> if you give it an empty line you have to give it some input before it'll say it doesn't understand
19:35:27 <ais523> does my program do that?
19:35:34 <ais523> is it a bug with you or with me, in other words
19:35:36 <ehird> you just hang on enter
19:35:38 <ehird> it's a bug with me
19:35:41 <ehird> if I remove the stripping of newlines
19:35:46 <ehird> then it'll add a new line each time
19:39:08 <ehird> ais523: It basically works.
19:39:17 <ehird> I only need to add like 2 things:
19:39:26 <ehird> - The ability to quit the game properly
19:39:39 <ehird> - Disabling your saves, because they can access the FS and don't work anyway
19:41:14 <ehird> ais523: so, you say I should try signalling
19:41:15 <ehird> to see if it's dead
19:41:23 <ehird> this will be done on each refresh/entered line, etc
19:41:25 <ais523> there's a no-op signal for that purpose
19:42:39 <ais523> yes, kill's documentation says it's 0
19:43:10 <ais523> I'm not sure how that interacts with zombies, though
19:44:29 <ais523> zombie processes can be a pain to get rid of
19:44:39 <ais523> in computer games you kill zombies with headshots
19:44:47 <ais523> on UNIXes you kill zombies by killing their parents
19:45:00 <ehird> that would be a great fps
19:45:04 <ehird> there's an invasion of zombies
19:45:08 <ehird> SOLUTION: kill ancestors
19:45:13 <ehird> and they immediately die
19:45:15 <ais523> quite difficult due to the need to sort out the recursion
19:45:41 <oerjan> ehird: there was something on that on TvTropes (WARNING: addictive)
19:45:55 <ehird> ais523: so it seems that I can still kill -0 your game after it's done, because it's still >open<
19:45:58 <ehird> you've just stopped writing to it
19:46:03 <ais523> yes, that's the problem
19:46:07 <ais523> can the EOF be detected?
19:46:11 <ehird> ais523: yes -- .eof?
19:46:14 <ehird> but as we've discussed
19:46:15 <ehird> that's molasses-slow
19:46:16 <ais523> or the SIGPIPE that you get for writing to a finished process?
19:46:18 <ehird> and seems to be broken anyway
19:46:22 <ehird> and it's not writing that helps
19:46:25 <ehird> because just after writing Q
19:46:28 <ehird> we go to the display screen
19:46:33 <ehird> -> we need to detect it without writing
19:46:49 <ais523> well, the command normally used for that is wait
19:47:01 <ais523> I wonder if there's a non-blocking version?
19:47:41 <ehird> ais523: I am tempted to write a language in which your adventure game will be both easy to write and will be portable across UIs ;)
19:47:46 <ehird> it could even by esoy
19:47:58 <ais523> in C it's waitpid(pid, &status, WNOHANG)
19:48:03 <ais523> not sure what that translates to in Ruby
19:48:55 <Deewiant> no clue what happened to the status
19:49:02 <ehird> are you a rubyist or just good with google :-)
19:49:04 <ais523> isn't it kind-of important in this case
19:49:05 <ehird> the status is returned
19:49:09 <ais523> because otherwise it's a no-op
19:49:21 <ehird> Deewiant: anyway, it's Process.waitpid
19:49:21 <Deewiant> but not nearly enough to remember this kind of stuff :-P
19:49:41 <Deewiant> and Process::WNOHANG if you want to be pedantic ;-P
19:50:19 <ehird> ais523: okay, almost there
19:50:21 <ais523> pedantic = needed for program to work, or compiler setting?
19:50:26 <ehird> looks like i need more delay
19:50:28 <ehird> ais523: and needed
19:50:33 <ehird> ruby ain't a compiler anyway
19:50:44 <Deewiant> ais523: needed, although I think there may be some way of importing the module so that it's not
19:50:45 <ehird> it's an interpreter of the slowest kind (YARV, aka Ruby 1.9 aka Ruby 2.0 is fixing this)
19:50:56 <ais523> actually, I'm kind of surprised that you needed the delay at all
19:51:03 <ais523> considering the relative speeds of Ruby and C
19:52:03 <ehird> Mongrel, the server, has its core written in C
19:52:11 <ehird> and since it's a long running process, really we're IO bound
19:52:21 <ehird> ruby is the slowest thing ever :-)
19:52:28 <ais523> ehird: try HOMESPRING some time
19:52:39 <ais523> I'm pretty sure Ruby's faster than that
19:52:44 <ehird> (ruby 1.9 is almost usable, and it will stablly become 2.0 soon)
19:52:50 <ehird> ais523: did you know - ruby has continuations
19:52:54 -!- boily has joined.
19:53:04 <ais523> I'd have been disappointed if it didn't
19:53:10 <ehird> even reusable. a limitation, though: you can't switch to a continuation made in another thread
19:53:13 <ehird> ais523: well, python doesn't
19:53:25 <ais523> "It has continuations!" shouldn't be some sort of brilliant killer-app nowadays
19:53:27 <ehird> that limitation kinda destroys them though
19:53:28 <ais523> it should be a default
19:53:38 <ehird> esp. since it copies the stack (since they're very c-integrated)
19:53:40 <ais523> the next step is getting all langs to have continuations that serialise to disk
19:53:43 <ehird> nice to know it's there
19:53:49 <ehird> yeah they don't serialize either
19:54:08 <ais523> I can't actually thing of any lang but Underlambda with serialisable continuations
19:54:10 <ehird> ais523: ruby = lisp + perly syntax with some extra humaney stuff + smalltalk
19:54:24 <ais523> sounds much like the much-fabled Perl5
19:54:27 <ehird> + simplified + some complexity, but of a new kind (ruby's own kind)
19:54:27 <ais523> only they got to it first
19:54:50 <ehird> ais523: i've seen perl6 -- it's nothing like ruby
19:54:55 <ehird> it SHOULD be, though :-)
19:55:00 <ais523> the description fits both languages
19:55:02 <ais523> but they are still different
19:55:04 <ehird> ais523: one advantage of ruby is that you can actually compile it ;P
19:55:12 <ehird> perl6 is actually more mallable than perl5
19:55:29 <ais523> well, in perl6, every {} is actually an anonymous lambda, and context determines whether it runs or not
19:57:06 <ehird> OK, I think I've got the game playable
19:58:43 -!- boily has quit ("Schtroumpf!").
19:59:15 <ehird> just disabling saves
20:00:23 <ehird> ais523: http://91.105.74.139:8080/
20:00:33 <ehird> just gonna log when someone starts a new game
20:00:35 <ais523> Could not connect to host 91.105.74.139 (port 8080).
20:00:38 -!- Slereah has joined.
20:01:08 <ehird> http://91.105.74.139:8080/
20:02:06 <ehird> ais523: 'sit good?
20:02:27 <ais523> 'twould be nice to autoscroll to the bottom of the page, though
20:02:35 <ais523> that's probably possible using anchors
20:02:48 <ehird> ais523: does for me!
20:02:51 <ehird> because it focuses the input field
20:02:57 <ais523> not for me in Konqueror
20:03:01 <ehird> ais523: use epiphany
20:03:16 <ehird> it does it in a <script> at the end
20:03:23 <ehird> You are standing on stair 9 of a flight of stairs.
20:03:28 <Deewiant> in a script? well I have javascript disabled
20:03:39 <ehird> Deewiant: you can't focus a form field any other way
20:03:50 <Deewiant> no, but you could use an anchor as ais523 suggested.
20:04:01 <ehird> just restarted the server
20:04:05 <ehird> it should work fine now
20:04:15 <ehird> ais523: works in konq?
20:04:54 <ehird> then I give up on konq
20:04:58 <ais523> there's an anchor in the source but not the URL
20:05:02 <ehird> ais523: tried saving yet?
20:05:10 <ehird> and i'm not doing anchors
20:05:13 <ehird> i'm focusing a form field
20:05:19 <ehird> but fine, let me try something
20:05:20 <Deewiant> the statue on the left is starting to annoy me
20:05:23 <ais523> it doesn't understand when you try to save
20:05:27 <ais523> Deewiant: is it reacting to you?
20:05:34 <Deewiant> I've managed to get it to say '?'
20:05:52 <ehird> Deewiant: sorry about your game
20:06:04 <ais523> don't worry, the BF problem isn't stateful
20:06:06 <ehird> ais523: does it scroll now?
20:06:32 <Deewiant> I'm not very good at BF anyway :-/
20:06:50 <ais523> what sort of input are you feeding to it?
20:07:01 <ais523> for a clue, see what happens with +[] as input
20:07:28 <ehird> ais523: eh, just use epiphany
20:07:36 <ehird> Deewiant: enable JS for this
20:07:38 <ehird> it should work in FF
20:07:41 <ehird> and it'll be a lot nicer
20:07:47 <ais523> and ++. is a pretty boring BF program
20:07:49 <ehird> it scrolls and focuses the form field so it's just like the real program
20:08:04 <ais523> the statue's saying ? because saying control-B would be silly
20:08:16 <ais523> Deewiant: the problem isn't nearly that simple
20:08:36 <ehird> ais523: tried saving? what I do is feed it /dev/null
20:08:41 <ehird> and print out my little message
20:08:44 <Deewiant> now the statue on the left said 2
20:08:46 <ehird> I also just trap 'Q'
20:09:11 <ehird> The statue on the left appears to be listening to what you say.
20:09:11 <ehird> The statue on the left says:
20:09:11 <ehird> ?????????????????????????????????????????????????????????????????????
20:09:11 <ehird> and continues like this for some time.
20:09:39 <ehird> i am just imagining someone repeatedly saying ?
20:10:18 <ais523> those should be enough hints to solve the problem
20:11:08 <Deewiant> ah, I think I've figured out what to do
20:11:43 <ehird> What do you want to say?
20:11:43 <ehird> :>+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.>>>++++++++[<++++>-]<.>>>++++++++++[<+++++++++>-]<---.<<<<.+++.------.--------.>>+.
20:11:43 <ehird> It would be too risky to try to say something that long, as you
20:11:44 <ehird> would be bound to mess up somewhere.
20:12:10 <ais523> length limit is to prevent the use of text-generators to get around the problem
20:12:18 <ais523> incidentally, I think I managed a solution in under 10 chars, once
20:13:04 <Deewiant> if I tell you what to do can you code it for me? :-P
20:13:17 -!- oerjan has quit ("Good night").
20:14:30 <Deewiant> AFAICT we want to infinite-loop both the statues
20:14:47 <ehird> Deewiant: ah! so BOTH of them listen to BF code?
20:14:49 <Deewiant> the guy on the left runs what you tell it
20:14:49 <Deewiant> the guy on the right runs what the guy on the left says
20:15:14 <Deewiant> now, figure out a program that outputs +[] and then infinite-loops.
20:15:23 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
20:16:25 <ehird> --[>+<++++++]>>[-]--[>-<---]>+++++>[-]-----[>----<---]>+<<<.>.>.[]
20:16:36 <ehird> seems that using constants are out
20:17:07 <ehird> --[>+<++++++]>.>--[>-<---]>+++++.++.[]
20:17:20 <ais523> I just solved it in 15 chars
20:17:50 <ais523> you need to restart, I haven't written any more of that area
20:17:58 <ais523> try the SMETANA or INTERCAL problem
20:18:01 <ehird> (to restart: Q, refresh)
20:18:10 <ehird> ais523: i'm gonna do the stairs
20:19:21 <ehird> ais523: so, how good is my web interface
20:19:27 <ais523> oh, you need to check on lowercase Q too
20:19:29 <Deewiant> eh? did you just boot the server?
20:19:35 <ais523> and the interface is fine, if a bit rudimentary
20:19:43 <Deewiant> I suddenly flew to the starting screen
20:19:45 <ais523> Deewiant: I think I quitted your game somehow
20:19:47 <Deewiant> two steps away from the top, too :-P
20:19:57 <ais523> because I entered Q, and some step game came up
20:20:08 <ais523> from context, I guess it was your game
20:20:21 <Deewiant> now it won't accept connections
20:20:29 <ehird> @procs.delete(name)
20:20:29 <ehird> @content = "Game ended."
20:20:29 <ehird> $stderr.puts "Game #{name} ended."
20:20:32 <ehird> Deewiant: I quit it
20:20:34 <Deewiant> ehird: earlier, I had to use Q like a bunch of times
20:20:38 <Deewiant> before I got to the main screen
20:20:41 <ehird> ais523: did you refresh after the q
20:20:59 <ehird> ok, well it ensures that the ids are unique
20:21:11 <ais523> I think the ID in my URL changed
20:21:15 <Deewiant> 'who knows, reboot it and hope it works'
20:21:17 <ais523> but I wasn't paying attention to it
20:21:26 <ehird> Deewiant: there's no way it could happen
20:22:13 <ais523> what was it? the me-quitting-Deewiant's-game bug?
20:23:08 <ehird> don't refresh on the game page
20:23:14 <ehird> refreshing makes browsers go silly
20:23:17 <ehird> (they request / again)
20:23:19 <ehird> (giving you a new game)
20:23:42 <ehird> ais523: so about that adventure-game-writing language ;)
20:24:09 <ais523> ehird: well, someone put MechaniQue up on esolangs.org, but I doubt it would be good for writing BF interps in
20:24:33 <Deewiant> aww man, I fail, I can't do the stairs anymore
20:24:43 <ehird> ais523: yeah, mechanique kinda sucks
20:24:46 <ehird> mine would be specialised for yours
20:24:47 <ais523> Deewiant: you can slide down the banisters to reset them
20:24:49 <ehird> Deewiant: me neither
20:24:57 <Deewiant> ais523: yeah, I know, I've had to resort to it a few times :-P
20:25:00 <ehird> ais523: for example, it would have a proper language :p
20:25:22 <ais523> maybe I'll write it in Underlambda, once I have a decent optimisng interp and the spec sorted out
20:25:32 <ais523> serialising of continuations is a really useful feature for saving games
20:25:42 <ehird> ais523: but the whole point of mine is that it would work on multiple UIs
20:25:47 <ehird> so it really needs to be a specialized language
20:25:51 <ehird> (it would even have bold, colours etc)
20:26:15 <ais523> well, Underlambda could have a c series of tiers that do complicated UI stuff
20:26:25 <ais523> I'm already thinking about a b series of tiers for file manipulation
20:26:36 <ehird> ais523: yes ... but mine would make the typical scenario trivial
20:26:43 <ais523> but knowing Underlambda's style, tier 1b would probably be direct access to single bits on disk sectors...
20:27:00 <Deewiant> aw, man, I got to step 7 but it deadlocked me
20:27:11 <ais523> what do you mean by deadlocked?
20:27:18 <ehird> you have to go dow na bit, Deewiant
20:27:19 <ais523> a bug in ehird's code, or a mistake in your solution of my problem?
20:27:20 <Deewiant> step 1 is 'go to step 1' or equivalent
20:27:21 <ehird> then it swaps it in
20:27:34 <Deewiant> ehird: yeah, except that to swap step 8 I would have had to go to step 1
20:27:53 <Deewiant> and the only way to go there implied changing step 1 to 'go to step 1' :-P
20:28:38 <ehird> Deewiant: so .. why not change it?
20:28:40 <ais523> what are the symptoms?
20:28:44 <ehird> ais523: i just can't do it, is what i'm saying
20:28:51 <ais523> "something is wrong" is a pretty useless bug report
20:28:52 <ehird> i broke it where it = my capacity for it
20:28:57 <Deewiant> ehird: ... I did, and then I'm at the bottom with no way of going up because step 1 goes to itself
20:29:09 <ais523> let me have a go, anyway
20:29:23 <ais523> if I solve it I'll post the solution, or bits of it, on request
20:29:33 <ais523> (I can't remember the solution, BTW)
20:30:05 <ehird> ais523: also, hopefully my language will include a great way to specify a parser
20:30:07 <Deewiant> every time I get to step 7 I can only toggle step 8 between 'goto 2' and 'goto 1' :-P
20:30:07 <ehird> it wouldn't be built-in
20:30:13 <ehird> but parsers would be subclassable and stuff
20:30:19 <ehird> so writing a parser for a specific part of the game is trivia
20:30:37 <ais523> great way to specify a parser = Cyclexa?
20:31:10 <ehird> ais523: not for a natural language for thing like this, thoug
20:31:19 <ehird> it would be a bit specified to natural languages but you can always just use its regular code
20:31:22 <ehird> to parse /anything/
20:31:37 <ehird> and catch parse errors
20:31:42 <ehird> so you could e.g. parse brainfuck with the regular parser
20:32:02 <ais523> Deewiant: well done, but there's nothing up there either
20:32:08 <Deewiant> ais523: yes, I could tell. :-)
20:32:11 <ais523> room, it's actually possible to die there
20:32:25 <ais523> also to escape into a secret location, if you know enough INTERCAL
20:32:36 <Deewiant> except that it has evil stuff like COME FROM
20:32:37 <ais523> but here's a quick cheatsheet for the commands used in there:
20:32:50 <ais523> DO NOT or DON'T = comment
20:32:51 <Deewiant> and you need to use stuff like PLEASE
20:32:57 <ais523> COME FROM (1) = come from that line label
20:33:06 <ais523> DO (1) NEXT = save current location on a stack, go to (1)
20:33:15 <ais523> RESUME #1 = go back to top saved location on the stack
20:33:28 <ais523> RESUME #2 = pop stack, then go back to top saved location on the stack
20:33:38 <ais523> (the location you go back to is also popped in both of those, by the way)
20:33:43 <ais523> FORGET #1 = pop the stack
20:33:48 <ais523> I think that's about it
20:33:50 <Deewiant> ais523: what happens with RESUME if the stack is empty
20:34:06 <ais523> Deewiant: The NEXT stack ruptures. All die. Oh, the embarassment!
20:34:19 <ehird> ais523: halp with stairs?
20:34:34 <ais523> ehird: I've forgotten how to solve it too
20:34:46 <ais523> but you need to get the switch-8 thing up near the top of the stairs so you can use it
20:35:02 <ehird> ais523: also, my language would have a plain text backend (usable on ANYTHING), a plain text + ANSI backend (you get bold, colours etc and all the fancy features)
20:35:11 <ehird> and a $gui_toolkit backend
20:35:23 <ehird> ais523: also, it would have things like aligning to the center
20:35:26 <ehird> and other nicities
20:35:34 <ehird> ais523: ooh you solved it. Halp :D
20:35:46 <ais523> how much help do you need? And of what nature?
20:35:56 <ehird> ais523: a bit, and of some nature.
20:35:57 <Deewiant> ais523: ditto. can you count? :-)
20:36:00 <ehird> and it took me like 7 before
20:36:04 <ehird> i just did it fast then thought
20:36:20 <Deewiant> (pasted the log into a text editor)
20:37:51 <ais523> 20 steps for me, not counting stepping onto the stairs, but counting stepping off
20:38:01 <ehird> ais523: so .. halp
20:38:12 <ais523> wait, I'm just getting my windows back to normal
20:38:19 <ais523> OK, what sort of help do you want?
20:38:23 <Deewiant> I think I counted stepping on and off
20:38:28 <ais523> The start of the solution, or hints about what you need to do, or what?
20:38:30 <ehird> ais523: just the first few steps
20:38:48 <ais523> Deewiant: you have a different solution to me
20:38:56 <ais523> mine starts u|uuduudud
20:39:08 <ais523> where the first u steps onto the stairs, and the others take place within the stair minigame
20:39:53 <ehird> Deewiant: can't do it for yours
20:40:21 <ais523> anyway, in strategic terms, you want the goto-6 on stair 5
20:40:37 <ais523> and the swap 1 and 7 accessible from up there
20:41:05 <ais523> so you can swap the swap 5 and 8 in from step 1, then use it
20:41:40 <Deewiant> I think I need to map this intercal before there's any hope of success :-S
20:41:59 <ehird> i'm not gonna map it
20:42:02 <ais523> maybe I should just paste a map, to save people time exploring
20:42:49 <ais523> I'll just grab it from the source code, to save time
20:43:11 <Deewiant> ais523: how about the end of your stairs solution, btw? uuuuuuu|u here :-)
20:43:35 <ais523> yours seems more elegant than mine
20:43:50 <ais523> that's some nifty setup to be able to do that
20:44:25 <Deewiant> I'll paste the whole thing for posterity lest it disappear
20:45:07 <ehird> ais523: so that IF-eso-language ... would you be interested?
20:45:07 <ais523> u|uuduududuuuuudduuuu|u
20:45:18 <ehird> the idea is that the simplest actions can be one line of trivial code
20:45:23 <ehird> and you can easily extend that
20:45:31 <ais523> http://pastebin.ca/1009668
20:45:32 <ehird> and that the blocks of parsers and stuff can easily reuse other bits
20:45:35 <ais523> map of the INTERCAL room
20:45:38 <ehird> and that sane defaults apply
20:45:41 <ehird> as well as ways to override them
20:45:52 <ehird> so that in the end you have some mostly-trivial blocks followed by trivial blocks
20:46:00 <ehird> and occasionally complex blocks, that override lower levels
20:47:10 <ais523> ah, Joris has found another bug in C-INTERCAL. I'm sort of glad of that, I was worried e might have been losing eir touch...
20:47:27 <ais523> (Joris has sent me at least one bugfix after every release so far for several releases)
20:47:55 <Deewiant> ais523: hmm? does the map change?
20:48:06 <ais523> no, the map's a constant
20:48:11 <ais523> your location changes from time to time, though
20:48:16 <Deewiant> DON'T ACT IN ANY WAY is to the west, (7) NEXT to the north
20:48:25 <ais523> I may have transposed the map by mistake
20:48:35 <Deewiant> even a transposition doesn't make this make sense
20:49:15 <Deewiant> for some reason I imagined myself standing on the tile to the west
20:49:25 <Deewiant> north is to the right on that paste
20:52:04 <Deewiant> hmm, why does that have to be a RESUME #2 and not #1 :-P
20:53:19 <ais523> Deewiant: what happened?
20:53:31 <Deewiant> I thought I had a solution but I didn't :-P
20:55:32 <ehird> ais523: i'm gonna draft some syntax for it
20:55:46 <ehird> ("high-level", i.e. once you've defined a scene and a parser and all the stuff i don't wanna think about right now)
20:56:16 <ehird> ais523: should i pattern match on e.g. "move X" or just "move" as a command? (you'll define command names in the parser)
20:56:29 <ais523> commands should have optional args
20:56:35 <ehird> and then get the args
20:56:43 <ehird> ais523: both would match synonyms etc, since the parser would handle that
20:56:48 <ehird> but which is better? the pattern match or the symbolic name?
20:56:53 <ais523> when commands do have args, they're most likely to be items
20:56:59 <ais523> I think @{put X in Y} is better
20:57:06 <ais523> that's what CLC-INTERCAL uses, and it looks good there
20:57:25 <Deewiant> ais523: so now then... I'm in the top right corner, is something supposed to happen or is this not the solution? :-)
20:57:33 <ais523> Deewiant: that is the solution
20:57:36 <ais523> I just haven't programmed any more
20:57:41 <ehird> ais523: so, something like
20:57:47 <ais523> congratulations, all 3 problems have been solved by someone other than me
20:57:55 <Deewiant> is there any way out except by quitting?
20:57:56 <ais523> you can try to find the secret area now
20:57:58 <ehird> @{put X in Y} -> Y:children:append(X)
20:58:09 <Deewiant> I seem to recall I bumped into walls when I tried to leave
20:58:11 <ehird> (it will be object oriented, in a way, because that makes sense for this -- don't you agree?)
20:58:21 <ais523> Deewiant: the entrance to it is in the INTERCAL room
20:58:28 <ehird> ais523: the other option would be something like:
20:58:36 <ehird> @put_in(X, Y) -> ...
20:58:56 <ehird> ais523: my only concern about pattern matching is that you'll need to have "put X in Y" in the parser AND the action text, pretty much
20:59:37 <ais523> ehird: "put X in Y" is the name of the situation
20:59:38 <Deewiant> hm, looking at the code I don't see any route to a secret, AFAICT one can only move around or die due to stack underflow
21:00:12 <ehird> ais523: good point
21:00:16 <ehird> ais523: also, rooms will be function calls
21:00:21 <ehird> @{north} -> Lobby.
21:00:32 <ehird> @{north} -> "Lower atrium".
21:00:37 <ehird> @{north} -> 'Lower atrium'.
21:00:44 <ehird> ais523: '...' is for names with spaces
21:00:51 <ais523> Deewiant: if you read the definition of NEXT in INTERCAL, you'll find there's also stack overflow
21:01:10 <ais523> the error message for that is "Program has entered the black lagoon", which happens when the 80-high stack overflows
21:01:19 <ais523> so I have the black lagoon as a secret area
21:01:31 <Deewiant> 80-high? is that specified? O_o
21:01:34 <ais523> it's probably going to be connected to some sort of complicated machine programmed in HOMESPRING
21:01:37 <ais523> Deewiant: yes, it's specified
21:01:48 <ehird> ais523: http://pastebin.ca/1009685
21:02:00 <ehird> !x means 'the error x
21:02:09 <ehird> 'wall' will just be an error that says something like
21:02:12 <ehird> "There's a wall that way!"
21:02:19 <ais523> it's similar to the concept of a feedback message I use in the current code
21:02:23 <ehird> ais523: also, strings are automatically translatable
21:02:30 <ehird> i guess i'll have a non-translatable string thing
21:02:32 <ais523> when you try to do something with a feedback message, you get that message and nothing else happens
21:02:49 <ehird> ais523: the idea is that the right-hand-side is told to 'do itself'
21:02:54 <ehird> for rooms, that means going there
21:02:59 <ehird> for strings, it means outputting them
21:03:02 <ais523> can it do unto others, as well?
21:04:09 <ehird> ais523: also, i wonder how to do rich-text strings
21:04:12 <ehird> just special things in the string?
21:04:26 <ehird> ais523: there's an advantage to that --
21:04:33 <ehird> translations can put the bold etc in the right place
21:04:35 <ais523> rich text in strings is good
21:04:38 <ehird> i'll abuse \ for that
21:04:42 <ais523> and I was about to point out the same advantage
21:04:48 <Deewiant> it appears my original pasted solution for the stairs started from the main hall, actually
21:04:59 <ehird> @{die} -> "That would be \B{suicidal!}".
21:05:04 <Deewiant> so there was one extra u and the correct is u|uuuduuduuddduuuuuuu|u
21:05:40 <ehird> ais523: also, it won't be a literal \B{def}
21:05:44 <ehird> that's just syntactical sugar
21:05:54 <ehird> 'strings' will actually be more like 'RTF' than 'TXT' ;)
21:05:59 <ehird> R"..." for a raw string i guess
21:06:11 <ais523> and r"..." for a regex?
21:06:38 <ehird> ais523: heh, maybe
21:06:42 <ehird> i'll probably have real regex syntax
21:07:12 <ehird> ais523: by the way, I don't know why I chose @{term} -> result.
21:07:14 <Deewiant> ais523: ugh, 80 is a big number, even though I can add 1 in two steps this'll take a while :-P
21:07:15 <ehird> it just looks nice to me
21:07:26 <Deewiant> ais523: and the page takes longer to load each time >_<
21:07:54 <ehird> ais523: any other neat ideas for it?
21:08:01 <ais523> Deewiant: may as well not bother, then
21:08:15 <Deewiant> ais523: I might be a third of the way there already :-)
21:08:22 <ais523> ehird: well, I think there'll be some sort of room based on BackFlip or Black
21:08:28 <ais523> where you skid along the floor
21:08:32 <ais523> but get to move around obstacles
21:08:38 <ais523> Black would probably work best for that
21:08:40 <ehird> ais523: that'll just be done with events
21:08:52 <ehird> ais523: you just add an event for every 'tick' (every user input, even a blank line or a syntax error)
21:09:03 <ehird> ais523: also, right now variables have to be uppercase
21:09:09 <ehird> because @{put a in b}
21:09:13 <ehird> is literally 'put a in b'
21:09:25 <ehird> (or 'in b, put a' or whatever else the parser recognizes for it)
21:09:29 <ais523> I don't mind that either, it's a nice Prologism
21:10:18 <ehird> ais523: also, there'll be a kind of weird dissonance
21:10:25 <ehird> in that you can define @{put ? in ?} in a room
21:10:29 <ehird> but also in the items themselves
21:10:31 <ehird> and also game-wide
21:10:39 <ais523> that's fine, until/unless they conflict
21:10:43 <ehird> ais523: this is because it sometimes makes sense to override on all levels
21:10:45 <ais523> they should have user-specifiable properties
21:10:52 <ehird> and, the most specific one overrides
21:10:56 <ehird> so room > item > global
21:10:57 <ais523> s/properties/priorities/
21:11:01 <ehird> ais523: yeah, probably
21:11:09 <ais523> surely room/item combination > both of those?
21:11:21 <ehird> ais523: well, how could you combine them?
21:11:22 <ais523> I can imagine a xyzzy that does nothing except in one special location
21:11:24 <ehird> they define completely seperate ones
21:11:31 <ehird> ais523: then you define it on the room
21:11:39 <ehird> and in the item, say a 'can't do that'
21:12:28 <ais523> oh, so you can define put for a specific item in a room?
21:12:43 <ehird> @{put xyzzy in plugh}, in the room definition
21:13:22 <ehird> ais523: also, in items
21:13:25 <ehird> it'll look something like this
21:13:31 <ais523> You can't block a round plugh with a square xyzzy
21:13:36 <ehird> (in the xyzzy item type)
21:13:44 <ehird> ais523: $ is just an arbitary symbol meaning 'me'
21:14:25 <ehird> @{put $ in X%plugh} -> $:yellAt(X).
21:14:48 <ehird> ais523: that is: 'on {put <me> in <X, which is a plugh>}, call our yellAt method with X'
21:14:56 <ehird> ais523: decent syntax?
21:15:00 <Deewiant> You step towards the next tile, but fall through several
21:15:00 <Deewiant> dimensions, eventually landing in a lagoon.
21:15:00 <Deewiant> You are swimming in a lagoon. The water is completely black, and the area
21:15:00 <Deewiant> is surrounded by leafless trees. You see hills in the distance.
21:15:00 <Deewiant> -- no actions yet programmed --
21:15:02 <ehird> also, note that 'plugh' would only match the thing called plugh
21:15:12 <ehird> whereas X%plugh would match any one plugh
21:15:19 <ehird> ais523: and note that a plugh is probably a singleton
21:15:26 <ehird> so X%plugh could become just plugh, for that one, probably
21:15:29 <Deewiant> The NEXT stack ruptures. All die. Oh, the embarrasment!
21:15:29 <Deewiant> You have died, and cannot take any actions. Use Quit to exit.
21:15:32 <ais523> ehird: plugh is the name for a plughole
21:15:38 <Deewiant> I guess I've seen everything now :-)
21:15:43 <ais523> it's just that the original parser didn't support more than 5 letter names
21:15:48 <ehird> <ais523> You can't block a round plugh with a square xyzzy
21:15:51 <Deewiant> ais523: btw, s/embarrasment/embarrassment/
21:15:57 <ehird> shall i specify that?
21:16:02 <ehird> like, only let it be done on round/square
21:16:25 <ais523> ehird: capability to specify object properties might be a bit advanced, ideally it should be possible in the language but not part of it
21:16:39 <ehird> ais523: ah, no, that'll definately be part of it
21:16:42 <ais523> let me check that INTERCAL itself doesn't have the same typo, there's a policy of not fixing typos in error messages
21:16:44 <ehird> ais523: because that's very useful
21:17:35 <ais523> ICL632ITHE NEXT STACK RUPTURES. ALL DIE. OH, THE EMBARRASSMENT!
21:17:35 <ais523> CORRECT SOURCE AND RESUBNIT
21:17:55 <ais523> it's correct in the error message, I'll fix it in the game
21:18:38 <ehird> ais523: also, !x supports '' too
21:18:43 <ehird> !'Illegal frobdob'
21:18:51 <ehird> makes the error named 'Illegal frobdob' trgger
21:19:06 <ehird> ais523: also, this will have backtracking and continuations, because the languages you embed will probably require those at one point
21:19:11 <ehird> also, this will be a pain in the butt to write :D
21:19:35 <ais523> ehird: first-class functions?
21:20:03 <ehird> it's got a solid programming language underneath!
21:20:10 <ehird> just loads of interactive fiction related stuff on top
21:22:29 -!- Tritonio has joined.
21:28:17 <ehird> damn you oerjan -- that wiki really is addictive
21:33:34 <ehird> ais523: choose a comment character for my language
21:33:39 <ehird> i'm thinking % but that's already used in patterns
21:33:44 <ehird> but then X%plugh is ugly anyway
21:33:46 <ehird> X(plugh) would be nicer
21:34:20 <ais523> maybe -- like in VHDL and SQL?
21:34:32 <ais523> I know it's really old-fashioned, but it looks good on the page
21:34:56 <ais523> (the comment syntax is space dash dash space, four characters, and it goes to end of line)
21:35:24 <ehird> @{die} -> "That would be \B{suicidal!}".
21:35:24 <ehird> : die <- "You're quick to the punch ... played before?"
21:35:24 <ehird> -> "\B{Ouch!!!}", gameOver.
21:35:36 <ehird> ais523: the : means 'depends on', and the <- .. -> means 'succeeded/failed'
21:35:43 <ehird> You're quick to the punch ... played before?
21:35:50 <ehird> That would be *suicidal!*
21:35:56 <ehird> [... more gameplay ...]
21:36:04 <ehird> Game over, 34234234 points, etc.
21:36:07 <ais523> depends on the last time you tried that action?
21:36:14 <ehird> ais523: no, just if you've done it at all
21:36:17 <ehird> you can specify constaints
21:36:28 <ehird> or in this visit to this room
21:37:24 <ais523> why is the mouse cursor in the Epiphany logo different from the mouse cursor that I use?
21:37:35 <ais523> also, it's left-handed for some unknown reason
21:38:19 <ehird> ais523: it's part of the logo itself
21:38:26 <ehird> -> prompt("That doesn't sound very healthy ... are you sure?", [yes,no])
21:38:26 <ehird> <- "Okay. You had me worried there for a second."
21:38:26 <ehird> -> "\b{Ouch!!!}", gameOver.
21:38:30 <ehird> that's good except for one thing
21:38:38 <ehird> the gameOver could be after the prompt conditional
21:38:44 <ais523> make whitespace significant?
21:38:52 <ehird> (also, yes and no are matchers which match 'y', 'n', 'yes', 'no' etc)
21:38:59 <ehird> ais523: nah, doesn't seem like an elegant solution
21:39:00 <ais523> or introduce some other block structure?
21:39:14 <ehird> ais523: i can't think of an elegant one
21:39:33 <ais523> I think whitespace is an elegant way to do blocks, as long as 1) you only have one sort of block and 2) there's some alternative syntax for when you want to write inline
21:40:22 <ehird> ais523: i don't think it fits with my current syntax
21:40:40 <ais523> OIL uses < and > for blocks
21:40:49 <ais523> because they had no other meaning in the language
21:40:56 <ais523> at least, not at the start of a line
21:41:08 <ais523> they mean less-than and greater-than too
21:41:49 <ehird> ais523: ambigious for this
21:42:07 <ais523> would { and } be ambiguous?
21:42:54 <ehird> ais523: no, but ugly
21:45:42 <ais523> you'd have to use multichar grouping otherwise
21:45:49 <ais523> or whitespace, which you don't want
21:46:35 <ehird> ais523: dunno it's just not very nice
21:46:44 <ehird> what i really want is a way to do my conditional stuff wihout grouping
21:47:03 <ais523> ehird: well, Perligata gets away without grouping for lots of things
21:47:06 <ais523> but sometimes it's needed
21:47:23 <ais523> but Perligata can only manage that due to the ability to rearrange commands to a large extent
21:47:57 <ehird> -> : die <- {"You're quick to the punch ... played before?"}
21:47:57 <ehird> -> {"\B{Ouch!!!}", gameOver}.
21:48:00 <ehird> i guess that isn't too bad...
21:48:10 <ehird> -> : die <- "You're quick to the punch ... played before?"
21:48:10 <ehird> -> {"\B{Ouch!!!}", gameOver}.
21:48:14 <ehird> that's not consistent enough
21:48:16 <ehird> the first is alright
21:48:20 <ais523> you would only need braces if it would be ambiguous otherwise
21:48:24 <ais523> but can put them in anyway
21:48:32 <ehird> ais523: yes, but i will make them required
21:48:36 <ais523> and maybe you can have precedences so they aren't often needed
21:48:40 <ehird> ais523: do you like my indentation style by the way?
21:48:56 <ais523> ehird: variable-width font, so not sure, but if it's what I think it is then yes
21:49:38 <ehird> __-> : die <- {"You're quick to the punch ... played before?"}
21:49:59 <ehird> let me try that again
21:50:04 <ehird> __-> : die <- {"You're quick to the punch ... played before?"}
21:50:04 <ehird> ___________-> {"\B{Ouch!!!}", gameOver}.
21:50:19 <ehird> ais523: ha - I actually have the else/if condition reversed
21:50:24 <ehird> unintentionally, that's how it evolved
21:50:31 <ehird> because the dependency bit was a clause on the definition
21:50:37 <ehird> so it was a 'failure condition' before the body
21:50:41 <ais523> nothing wrong with doing it that way round
21:50:45 <ehird> ais523: i'll keep it this way, who knows? maybe it's better
21:50:49 <ais523> it's the unless combinator
21:51:04 <ais523> as long as you don't implement the but_first combinator, everything should be fine
21:51:13 <ais523> (there's actually code for it in CPAN...)
21:51:27 <ehird> -> yesno("That doesn't sound too healthy ... are you sure?")
21:51:27 <ehird> <- {"Oh, good. I was worried there for a second."}
21:51:27 <ehird> -> {"\B{Ouch!!!}", gameOver}.
21:51:37 <ehird> yesno is just a convenience function built on top of the prompting stuff
21:51:43 <ais523> ehird: doesn't it need braces?
21:51:49 <ais523> or are they optional now?
21:52:00 <ehird> ais523: um ... read my 'really die' snippit
21:52:08 <ehird> i don't see how there's no braces where there were...
21:52:16 <ehird> ais523: oh you mean in the yesno call?
21:52:22 <ehird> yesno("abc") is just passing a string to the yesno function
21:52:23 <ais523> OK, but that bracing will take a bit of getting used to
21:52:47 <ehird> ais523: basically, in the extra <- -> clauses which require blocks, you need to brace
21:52:53 <ehird> ooh, i just realised
21:52:56 <ehird> you can actually do if/else in this situation
21:53:00 <ehird> just swap -> and <-
21:53:09 <ais523> maybe {} can be anonymous lambda?
21:53:14 <ais523> that's consistent with your syntax so far
21:53:19 <ais523> and with your semantics
21:53:36 <ais523> that way, you're passing functions in as arguments to -> and <- rather than blocks in a control statement
21:53:52 <ehird> ais523: well, -> and <- aren't really functions
21:53:55 <ehird> they can't be, really
21:54:02 <ehird> without loads of dancery in the language
21:54:05 <ais523> but syntax can still take arguments
21:54:10 <ehird> ais523: but .. I'm not sure about {} being an anonymous function
21:54:14 <ais523> at least, that's how I describe it
21:54:28 <ais523> ehird: what if it takes no args?
21:54:30 <ehird> ais523: my way leads to e.g.
21:54:35 <ehird> list:each(\a -> ...)
21:54:37 <ehird> which is nicer than
21:54:43 <ehird> list:each({|a| ...})
21:55:16 <ehird> list:foldl(0, (\a, b -> a+b))
21:55:21 <ehird> list:foldl(0, {|a, b| a+b})
21:55:24 <ehird> that one is a stretch
21:55:27 <ehird> but i currently prefer the former
21:55:46 <ais523> that's going to be ugly both ways round in ehird-aesthetics
21:56:14 <ais523> those nested parens where there shouldn't really have to be any
21:56:22 <ehird> ais523: well, true, but
21:56:22 <ais523> or have I misjudged your tastes yet again?
21:56:26 <ehird> list:foldl(0, \a, b -> a+b)
21:56:36 <ais523> yes, that's even worse
21:56:45 <ehird> and i am still bemused that you don't understand my sense of aesthetics... i don't think there's anything particularly odd about them :)
21:57:03 <ais523> Haskell would have list::foldl 0 (\a\b.a+b)
21:57:08 <ais523> if I remember the syntax correctly
21:57:18 <ais523> and ehird, nobody thinks their own aesthetics are unusual
21:58:13 <ehird> ais523: list::foldl?
21:58:15 <ehird> list is a list object in mine
21:58:24 <ehird> [1,2,3]:foldl(0, {|a, b| a+b})
21:58:24 <ais523> I thought you were namespacing
21:58:36 <ais523> if it's an object, why isn't it an argument to foldl?
21:59:23 <ehird> ais523: 'cause foldl is a method on the list
21:59:36 <ehird> what to put in a function vs a method is a hard question
21:59:40 <ehird> i'm erring on the side of 'method'
21:59:45 <ais523> I never really understood the zeal of people to do lots of things in methods
21:59:46 <ehird> and having ruby-style 'you can open up classes and add methods'
21:59:51 <ais523> functions generally work just as well
21:59:52 <ehird> ais523: it's just for consistency
21:59:59 <ehird> if some things are methods, then a:b() vs b(a)
22:00:05 <ais523> well, in C everything's a function, and it seems to survive fine
22:00:16 <ais523> I rarely think "I wish there was a method version of this"
22:00:35 <ehird> ais523: well, object orientation is a good model for IF
22:00:40 <ehird> and functions are less useful in it
22:01:02 <ais523> if you can override methods per-object, that's one useful example
22:01:11 <ehird> you can even do that in ruby
22:01:17 <ehird> class << obj; ...; end
22:01:19 <ais523> but polymorphism, while useful for lots of things, is overkill for foldl in an IF game
22:01:36 <ehird> ais523: OK, but since you have list:length and list:append(list2),
22:01:43 <ehird> foldl(list,...) seems needlessly deviant
22:01:59 <ais523> why not make both legal?
22:02:35 <ehird> ais523: 'cause then it's not object-oriented any more
22:02:49 <ehird> object orientation is about encapsulation, hiding and passing
22:02:50 <ais523> please have a saner OO model than Perl
22:02:55 <ehird> ais523: i will, don't worry
22:03:01 <ehird> objects and classes will be very lightweight, simple things
22:03:12 <ehird> so that having a lot of them doesn't make anything feel like an 'OO overdose'
22:03:15 <ehird> it'll just be the natural way of working
22:03:28 <ais523> well, in that case have a saner OO model than Java, too
22:03:45 <ais523> oh, and make multiple inheritance possible, although it should be something that people are unlikely to come up against in practice
22:04:12 <ehird> ais523: multiple inheritance sucks in the face of mixins, IMO
22:04:19 <ehird> e.g. in Ruby, there's a mixin called Enumerable
22:04:32 <ehird> if you have one method on your class - each, which calls a block for each element in whatever your class is -
22:04:34 <ais523> I often use multiple inheritance to implement mixins
22:04:37 <ehird> then it gives you filtering, mapping, etc
22:04:43 <ais523> I'd never heard of them being implemented separately, though
22:04:48 <ehird> ais523: ruby doesn't have MI
22:04:50 <ehird> it just has mixins
22:04:53 <ehird> and it seems to work well
22:04:54 <ais523> as in, not part of a multiple inheritance model
22:05:03 <ehird> it's also a lot simpler, ais523, because super-calls are just 'go to the parent'
22:05:04 <ais523> that's certainly saner than Java's "interfaces"
22:05:11 <ehird> instead of 'go to this parent, then that one, then the next method on the delegatedsflksdfjsldf'
22:05:31 <ehird> and yeah, interfaces are just mixins that error out with 'not implemented' on anything ;)
22:05:34 <ais523> interfaces are a good idea, but so underpowered it's unbelievable
22:05:53 <ais523> whereas if mixins are just multiple inheritance with one parent taking precedence, that's fine
22:07:54 <ehird> ais523: done some syntax thinking:
22:07:59 <ehird> -> {init(n) -> ^name = n.
22:07:59 <ehird> say(x) -> "${^name} says: ${x}"}.
22:08:02 <ehird> and no, mixins aren't that, really
22:08:08 <ehird> mixins are a collection of methods which are added to a class
22:08:12 <ehird> that's, essentially, it
22:08:30 <ais523> you like using angle-worms a lot, it seems
22:08:57 <ehird> oh, another example:
22:08:59 <ehird> -> {init(n) -> ^name = n.
22:08:59 <ehird> say(x) -> "${^name} says: ${x}".
22:08:59 <ehird> @{put $ in X(plugh)} -> "Pah, plughy!"}.
22:09:00 <ais523> and ^ is a sigil for a property, that you don't have to declare?
22:09:02 <ehird> ais523: that shows commands
22:09:07 <ehird> and yeah, that's a sigil for a property
22:09:14 <ehird> I would use @, which is what ruby uses ... but I use @ elsewhere :-)
22:09:31 <ehird> ais523: technically
22:09:34 <ehird> I could just make it
22:09:38 <ehird> but that's TWO CHARACTERS!
22:09:59 <ehird> and ${$:name} looks odd
22:10:11 <ais523> ehird: is that a symbolic reference?
22:10:19 <ehird> ais523: no, that's string interpolation ;)
22:10:34 <ais523> I suppose it could be either depending on context
22:10:50 <ais523> are you going to use Perl-style references, or not use references at all, or do them some other way?
22:10:53 <ehird> ais523: i don't think symrefs really fit in with this language
22:11:01 <ehird> and ... i'm going to do them in the sane way: everything is a reference :)
22:11:05 <ais523> what about non-symbolic references?
22:11:19 <ais523> I rather like the Perl concatenate-sigils method of dereferencing
22:11:19 <ehird> ais523: don't need 'em
22:11:24 <ehird> a variable points to an object
22:11:30 <ehird> multiple variables can point to the same object
22:11:31 <ais523> yes, I didn't think you would need them
22:11:37 <ehird> and [1,2,3] is an object
22:11:39 <ais523> how do you point multiple variables to the same object?
22:11:40 <ehird> so is [[1,2,3],[4,5,6]]
22:11:45 <ehird> ais523: a = obj; b = a
22:11:56 <ehird> if you add an element to b, then a gets it as well
22:11:57 <ais523> so = just copies references
22:11:59 <ehird> don't want that, copy
22:12:04 <ais523> that confuses some people
22:12:26 <ehird> ais523: most languages i've used do it
22:12:30 <ehird> & it's perfectly intuitive to me
22:12:34 <ehird> needed no explanation
22:12:38 <ehird> it just seemed natural
22:12:49 <ais523> to me, it's unnatural but I can deal with it easily
22:13:05 <ais523> I expect = to copy; probably because I started off on C++, where an object and a reference to it are different things
22:13:19 <ehird> ais523: it not copying can shorten a lot of code
22:13:21 <ais523> presumably, == (or equivalent) compares values rather than references?
22:13:22 <ehird> perl suffers for this
22:13:33 <ehird> and yeah, it compares values, a class can define how it's compared
22:13:56 <ais523> someone on thedailywtf.com was talking about a strange consquence of Java's boxing model
22:14:07 <ais523> suppose you define 127 and 128 as boxed integers
22:14:25 <ehird> ais523: the idea of boxed integers is retarded
22:14:34 <ehird> the integers i'll have will be objects, but they'll be values
22:14:37 <ais523> then comparing the 127s with == always returns true, comparing the 128s with == won't always
22:14:41 <ehird> so a = 2; b = a; b += 1; a == 2
22:14:48 <ais523> and comparing boxed Integers with < will always give the correct value
22:15:21 <ais523> because == compares pointers whenever possible, and boxed Integers from -128 to 127 have to be cached according to the spec...
22:15:32 <ais523> so you get the same boxed Integer each time
22:15:35 <ehird> ais523: mine is the python/ruby model
22:15:45 <ehird> play about with the python console for a few minutes, and it'll become intuitive
22:15:55 <ehird> or at least familiar
22:16:12 <ais523> so in that model, a not a reference at all? or = does something different when applied to an int reference?
22:16:24 <ais523> or, for that matter, += generates a new reference?
22:16:29 <ehird> ais523: ints are immediate values on a pointer
22:16:35 <ehird> the lowest bit is 0 for a regular object pointer
22:16:41 <ehird> if it's 1, the rest of the pointer is the value
22:16:47 <ehird> ais523: there, explained as a c programmer ;)
22:16:51 <ais523> ehird: then you end up with silly things like 20-bit integers and other Lisp-isms
22:16:52 <ehird> and assigning just assigns the var slot to the same pointer
22:16:57 <ehird> and yes, you do, but ruby has this
22:16:58 <ais523> oh, and 65-bit pointers
22:17:02 <ehird> python does something but i don't know what
22:17:06 <ehird> ruby has a kind of clever way
22:17:16 <ehird> ais523: i will let the HLL i implement this in handle it for me
22:17:18 <ehird> but that's how it'll be done
22:18:10 <ais523> are you planning to compile into Ruby?
22:18:15 <ais523> it almost sounds like you are
22:19:02 <ehird> ais523: who said anything about compiling :-)))
22:19:20 <ais523> nobody, but I'm wondering if it'll be easier than interpreting for this
22:20:01 <ehird> anyway, compiling to ruby would be a good idea
22:20:11 <ehird> it's a very portable interpreter, and is about to get much faster
22:20:14 -!- Iskr has quit ("Leaving").
22:20:16 <ehird> and has the useful semantics to make a compiler easier
22:20:21 <ehird> and it's not like IF needs to be fast anyway
22:20:22 <ais523> it seems to make the most sense as a target language out of the languages I know of
22:20:29 <ais523> see, I'm not a Ruby-hater, honest
22:20:36 <ais523> just because I don't know a lang doesn't mean I hate it
22:20:46 <ais523> I have a lot of respect for vi even though I hardly know it
22:20:58 <ehird> I never said you were a ruby hater
22:21:03 <ehird> Just that you were a perl lover :-)
22:21:09 <ais523> well, you implied it on a few occasions
22:21:13 <ehird> gosh my writing style has changed so much thanks to this place
22:21:17 <ehird> i never used to put a nose in :-)
22:21:22 <ehird> or do oko-style :)))))))))))))))))))))))
22:21:22 <ais523> is that a good thing or a bad thing?
22:21:33 <ehird> but i have never said :-)))))) before coming in here
22:21:39 <ais523> even I've been known to smiley occasionally
22:21:39 <ehird> thanks a bunch, oklopol + others ;)
22:21:53 <ehird> ais523: you won't believe how I used to write onlin
22:21:59 <ehird> it was peppered with 'lol'
22:22:05 -!- Tritonio has quit (Remote closed the connection).
22:22:09 <ehird> i even used to slip in the occasional 'u', oh god
22:22:13 <ais523> nobody believes it nowadays
22:22:25 <ais523> I often do LOL in real life, but when that happens I spell it out in the channel
22:22:41 <ais523> because people just assume a lol is a typed thing
22:22:45 <ehird> i write lol when i find something really funny, but not enough to laugh
22:22:53 <ehird> I use 'AHAIHAUHHAHDASJASDKJADHKAJKAJAHAHAHAHHAHAA' when I actually go into seizures
22:23:17 <ais523> OK, that was a real-life laugh-out-loud for me, only a short one though, not the sort of thing that's left me laughing for several minutes
22:24:14 <ehird> ais523: yesterday I was playing a silly bot-run game on my private network
22:24:18 <ehird> at one point, it picked chanserv
22:24:28 <ehird> ais523: as the person for the next turn
22:24:36 <ehird> i laughed more than i probably should've
22:24:37 <ais523> and did you quickly hotpatch the interpreter so chanserv played out the turn?
22:24:49 <ais523> how did I manage that?
22:24:56 <ehird> ais523: no, but that would have been very hardcore
22:25:05 <ehird> unfortunately, i just told it to skip the turn
22:25:07 <ehird> because i'm boring
22:25:13 <ehird> ais523: someone else skipped it before me
22:25:17 <ehird> and it picked chanserv
22:25:29 <ehird> a silly one that's hard to explain
22:25:39 <ais523> it wasn't TURKEY BOMB, was it?
22:25:48 <ais523> I can't play that, I don't drink alcohol
22:26:00 <ehird> ais523: actually, at one point I told it my turn was over
22:26:06 <ehird> and it told me that i had been selected for the next turn
22:26:15 <ehird> it seems to pick improbable combinations on purpose
22:26:18 <ais523> is that a nop in your game?
22:26:27 <ais523> or is having two turns in a row useful?
22:26:41 <ehird> ais523: it's not 'useful', just 'possible'
22:26:59 <ais523> I mean, is it an advantage to the player to have two turns in a row?
22:27:15 <ehird> but it doesn't really affect your either way
22:27:28 <ehird> i mean, you get to go twice. But that doesn't neccessarily mean it's a good turn-out
22:27:58 <ehird> ais523: I am going to work on functions in my language
22:29:02 <ehird> ruby has %w(a b c) -> ["a","b","c"]
22:29:08 <ehird> well, %w{} and %w[] too
22:29:11 <ehird> but that's not the point
22:29:16 <ehird> ais523: what should i make it for mine?
22:29:55 <ais523> I reckon you should use a string prefix
22:30:45 <ehird> [a,b,c]:func(f) -> [a,f(a),b,f(b),c,f(c)]
22:30:50 <ehird> ais523: is that an already-named function?
22:31:29 <ais523> the only existing language I can think of with anything remotely similar to that is Mathematica
22:31:40 <ais523> and even there it's a small lambda with a few built in functions
22:31:40 <ehird> ais523: what does it call it?
22:31:49 <ehird> i think i'll call it zoop
22:32:03 <ehird> because it's similar to a generic zip
22:32:10 <ais523> Riffle[#1,Map[#2,#1]] &
22:32:22 <ehird> [a,b,c]:genZip([d,e,f],f) -> [f(a,d),f(b,e),f(c,f)]
22:32:26 <ehird> so it's kinda similar
22:32:28 <ais523> oh, Mathematica syntax is painful to read, almost as bad as INTERCAL
22:32:58 <ais523> the problem being that you end up with more closing brackets than LISP
22:34:42 <ehird> yesses = w"yes y":zoop({|x| x:lower})
22:34:42 <ehird> nos = w"no n":zoop({|x| x:lower})
22:34:43 <ehird> -> yesses:contains(prompt(Prompt, yesses ++ nos))
22:35:16 -!- Tritonio has joined.
22:35:17 <ehird> yesses/nos would be translatable of course
22:35:19 <ais523> reasonable, but the use of zoop here is just ridiculous
22:35:35 <ehird> ais523: w"yes y YES Y" is kinda ugly
22:35:37 <ais523> and aren't you mapping lowercase strings into lowercase?
22:35:38 <ehird> I guess I can make a prompti
22:35:42 <ehird> (prompt insensitive)
22:35:50 <ehird> ais523: i guess this kinda thing is tied to the parser
22:35:55 <ehird> so writing a generic function to do it kinda sucks
22:35:58 <ais523> why don't you concatenate the lowercase to uppercase, rather than zooping?
22:36:22 <ehird> w"yes y" -> ["yes","y"]
22:36:34 <ehird> ["yes","yes":lower,"y","y":lower]
22:36:40 <ehird> ["yes","YES","y","Y"]
22:36:51 <ais523> err... the "lower" function puts things into uppercase?
22:36:58 <ehird> ais523: err, yes, it does
22:37:05 <ehird> ais523: hahahahaha
22:37:09 <ais523> and why not come up with ["yes","y","YES","Y"]?
22:37:16 <ehird> and because that's not what zoop does
22:37:21 <ais523> it wouldn't require a riffle, just standard list operator
22:37:41 <ehird> ais523: i guess so, but still
22:37:43 <ehird> this seems more elegant
22:38:15 <ais523> well, the Mathematica implementation would have calculated both lists, and then done an expensive riffle rather than a hopefully-cheap concat
22:38:32 <ais523> I'm not sure about the cheapness, though, I get the impression that it copies objects around everywhere even when it doesn't need to
22:38:42 <ais523> it certainly seems to be an order of n slower than my Perl programs
22:38:56 <ehird> ais523: i'll define zoop
22:39:15 <ais523> so I can overload it? what fun!
22:39:20 <ehird> ais523: of course you can
22:42:13 <ehird> ais523: really the yes/no thing would be parser-specific
22:42:24 <ehird> it would accept things tagged as 'yes' or 'no' in the parser
22:42:38 <ais523> the right way to do it is to pass the yes and no into the question thing
22:42:46 <ais523> and for yes and no to be defined elsewhere
22:42:53 <ais523> so I can answer in Latin if I want to
22:43:08 <ehird> that's a low-level version of what i'm saying
22:43:39 <ehird> prompt(Prompt, {|x| x:isTagged("bool")})
22:43:52 <ehird> ais523: where tags are things parsers give to terms
22:44:08 <ehird> http://reddit.com/r/programming/info/6i72j/comments/
22:44:13 <ehird> catseye.tc on proggit
22:45:17 <ehird> ais523: My language is gonna be hell to implement it's so featureful :-)
22:45:35 -!- helios24 has quit ("Leaving").
22:45:52 <ais523> they were talking about Shelta, apparently
22:46:14 <ehird> The esoteric use of the word "esoteric" aside <-- a possible convert
22:46:33 <ehird> my reddit name has been splurged a lot over that page..
22:47:51 <ehird> ais523: also, a lot of special-purpose languages let you e.g. write to stdout/stdin 'anyway'
22:47:53 <ehird> for 'completeness'
22:48:01 <ehird> a real 'hello world' in my language will be impossible
22:48:04 <ehird> because it leads to hacks and abuse
22:48:05 <ais523> not even for debug purposes?
22:48:12 <ehird> ais523: there'll be a debugging system
22:48:20 <ais523> anyway, writing to stdin is kind-of strange
22:48:20 <ehird> as well as something similar to a 'just print out this object'
22:48:25 <ais523> although reading from stderr is almost standard
22:48:27 <ehird> ais523: err, i meant read/write
22:48:31 <ehird> but, you know what i mean
22:48:42 <ehird> mine will only contain things for adventure games and the things you calculate within them
22:48:51 <ehird> no scripting support or anything of the sort
22:49:06 <ehird> because it's a special-purpose language
22:49:10 <ais523> ehird: maybe you could write it in Perl and sandbox it properly, and then add it to PerlNomic
22:49:15 <ais523> I wouldn't advise that, though
22:49:25 <ehird> ais523: I'd go mad writing it in Perl..
22:49:26 <ais523> Perl isn't a good lang for this sort of thing
22:49:29 <ehird> It's so different from Perl's model
22:49:54 <ehird> ais523: My current idea is to compile the program into a high-level bytecode
22:50:01 <ehird> so that it's expressive like ruby
22:50:09 <ehird> and then you could write a bytecode interp for perl
22:50:14 <ehird> ais523: incidentally, that harks back to the z machine
22:50:42 <ehird> ais523: oh, and here's some fun ruby trickas
22:50:51 <ehird> print if /Ruby/ while gets # lots and lots of $_!
22:50:59 <ehird> print STDIN.grep /Ruby/ # yes ... you can grep stdin
22:51:09 <ehird> $ ruby -pe '$_ = "" unless /Ruby/' # okay jeez this is just silly now
22:51:45 <ais523> most of those tricks work in Perl too, I think
22:51:48 <ais523> but with different syntax
22:52:01 <ais523> not the grep one, though, I don't think, because <> is insufficiently lazy
22:54:32 <ehird> ais523: so any suggestions for the language?
22:54:44 <ais523> not right now, actually I'd better go home now
22:54:46 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
22:56:13 <ehird> anyone else care about my lang? ;)
22:57:21 <Slereah> As much as I care about the starving children in Somalia.
22:57:28 <ehird> Slereah: So, a lot.
22:57:40 <Slereah> But not enough to actually do something.
22:58:39 <Slereah> You know me and computers.
23:12:58 -!- slereah_ has joined.
23:14:16 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
23:19:49 <ehird> So 'm writing a joy compiler
23:19:51 <ehird> Anyone interested?
23:29:59 <ehird> http://rafb.net/p/0RDI6r92.html
23:35:56 -!- timotiis has quit ("leaving").
23:50:17 -!- slereah__ has joined.
23:54:06 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
23:58:44 -!- slereah__ has quit (Read error: 104 (Connection reset by peer)).
00:02:03 -!- slereah__ has joined.
00:06:21 -!- slereah_ has joined.
00:09:04 -!- olsner has quit ("Leaving").
00:16:23 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
00:18:17 -!- sebbu2 has quit ("@+").
00:19:36 -!- slereah__ has quit (Read error: 110 (Connection timed out)).
00:43:37 -!- Slereah_ has joined.
02:10:28 -!- ehird has quit (Remote closed the connection).
04:54:20 -!- Sgeo has joined.
05:26:51 -!- GreaseMonkey has joined.
05:27:32 <Sgeo> Is it safe to assume everyone in here was a superstar in any and all computer-related classes?
05:28:03 <Sgeo> Hi Firefox-extension
05:34:55 <GregorR> Everyone? Maybe not. Me? Absolutely. X-P
05:35:41 <pikhq> Of course it's not safe to assume that.
05:35:55 <pikhq> You can't be a superstar without having taken computer-related classes of any merit.
05:38:19 <Slereah_> Sgeo : I do okay, but then again, we do number crunching
05:40:05 <Sgeo> Does my Database class at SUNY Farmingdale count as having any merit?
05:43:21 <Slereah_> I don't even know what's a database.
06:18:34 -!- GreaseMonkey has quit ("Unisex.").
06:37:28 -!- Sgeo has quit ("Ex-Chat").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:40:56 -!- Iskr has joined.
09:01:34 <oklopol> shit. you've talked me off the backlog mirc shows :\
09:01:46 <oklopol> a lot can happen during 18 hours of sleep
09:11:46 -!- Corun has joined.
09:32:49 -!- GreaseMonkey has joined.
10:18:01 <oklopol> kemuri seems to be a hard way to print stuff.
10:19:36 <oklopol> oh, right, you did discuss it
10:22:07 <oklopol> "09:07:11 <Slereah_> It's hard to find new ideas!" <<< about that unbalanced [] thing, you should look at what i did with nopol, two different nested structures with < and >
10:22:37 <oklopol> well, i had " " too, it's really just that i did it in a nice way, not that it's actually hard to do
10:23:01 <oklopol> you could just code an arbitrary number of brackets in "<"+" "*(bracket_id)
10:39:33 <oklopol> a guy on our chan did do /(pok)+/ at some point, but that never got all that popular
10:39:45 <oklopol> 10:12:41 <ais523> pokpokpopokpkopkopokpkopokpokpkopokpokpkopokpkopkopkopokpkopokpkoppokpkopokpokpkpokpokpokpkopko
10:52:55 -!- Corun has quit ("Arr.").
10:58:01 -!- GreaseMonkey has quit ("Unisex.").
11:09:56 <oklopol> i wonder how sensible a language could be made where there is only one type of nesting, and contents of any nested structure could be shuffled without the semantics of the program changing
11:10:50 <oklopol> ((func #1) (#2 oper) (oper #3))
11:34:05 <oklopol> Slereah_: a database is an unordered set of named tables, which are unordered sets of (at least in practise) ordered tuples, where the places of the tuples are named
11:36:14 <fizzie> Depending on the database, of course; I would say it's more oftener a multiset instead of a plain old set.
11:38:13 <oklopol> well i was asleep when you said it
11:38:41 <oklopol> anyway, you have to know that much about databases, so i had to tell you
11:38:49 <Slereah_> But you've been here for more than two hours D:
11:39:00 <oklopol> i slept for 18 hours, i was here the whole time
11:39:49 <fizzie> Setting things on fire?
11:40:05 <fizzie> Hopefully not a combination of those two activities. Ouch.
11:40:57 <oklopol> or should i say "getting warmer", might just be a finnish idiom
11:41:42 <oklopol> the correct and obvious answer is i was reading the 18 hours logs
11:42:26 <Slereah_> Is what we're saying that fascinating
11:43:59 <oklopol> getting warmer has to do with this game where you are trying to find an object, and the hider tells you "cold"..."hot" at times, according to your position
11:45:34 <oklopol> during the game i was always mostly concerned with how the game could ever be perceived as interesting when you would just slowly approach the object
11:45:44 <oklopol> nowadays i know it actually *isn't* interesting
11:46:09 <oklopol> sometimes i wish i'd had cleverer parents, wouldn't have wasted my time with other kids :o
11:46:31 <oklopol> i mean, games kids play make no sense
11:48:03 <oklopol> they should be illegalized, and kids should be adviced only to play interesting games like... umm... right, there are none
11:48:25 <oklopol> wise words i say. to the shop i then go ->
11:51:03 <oklopol> tag can be interesting in an environment with obstacles, but you won't find many irl... also, even then it would mostly be about memorizing the environment, because that gives you a great advantage, and the algorithmic part comes only after that... the problem is this is automatic learning which doesn't really teach a kid to use their memorization skills
11:51:19 <oklopol> and the algorithms are fairly trivial
11:51:30 <oklopol> so basically, it all comes down to being fast.
11:52:02 <oklopol> and i don't care much for physical stuff, except sex, as some might already know
12:16:26 <Slereah_> "Unfortunately, the combinatory expressions for interesting combinations of functions tend to be lengthy and unreadable."
15:07:31 -!- ehird has joined.
15:10:32 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
15:24:52 -!- ehird has joined.
16:38:29 -!- sebbu has joined.
16:42:27 -!- ais523 has joined.
16:44:57 <ais523> ehird: non-automatically-generated hello
16:45:21 <ehird> i have been pondering my language
16:45:58 <ais523> which one? the interactive fiction language?
16:52:26 <ehird> it's not really an IF language
16:52:29 <ehird> it's modeled around your game
16:52:40 <ehird> the idea is that if it can do something as complex as yours easily, it'll be good for everything else too
16:56:46 <ehird> ais523: i guess what i should do is translate one of your puzzles
16:56:52 <ehird> but I'm not about to read your C code ;)
16:56:59 <ais523> the SMETANA one is probably the easiest to translate
16:57:18 <ais523> and there's nothing hidden in the code, that is you can determine how the program is meant to behave from how it has behaved
16:57:29 <ais523> except for bugs, of course
16:57:38 <ehird> ais523: yes, but i'd have to study it
16:58:00 <ais523> well, you should be able to implement the stairs problem without reference to my code
16:58:13 <ais523> and there are only two commands on the steps to deal with, plus NOP
16:59:00 <ehird> how do you nop on it?
16:59:04 <ais523> the top and bottom steps do nothing
17:00:16 * ehird studies it from the comfort of his web interface
17:00:40 <ehird> ais523: hm, your brainfuck problem might be simpler to do
17:00:53 <ais523> ehird: I would have thought it would have been harder
17:01:05 <ehird> ais523: really? howso? apart from the 'implementing BF' thing
17:01:10 <ais523> because there are all sorts of edge cases like >+[>+] that you have to handle
17:01:20 <ehird> ais523: so just limit the number of steps that a program runs
17:01:30 <ais523> the halting problem's unsolvable, so the things catch fire if the programs run for too long or too far to the right
17:01:42 <ais523> and shake their heads on erroneous input
17:07:55 <ehird> not very hard, really
17:08:05 <ais523> it strikes me as much harder than the step problem
17:08:15 <ais523> which is near-trivial to implement
17:08:56 <ehird> talk: statue 1 run
17:08:56 <ehird> statue 1 output: statue 2 run
17:08:56 <ehird> ptr > X: statue burn
17:08:56 <ehird> steps > X: statue burn
17:08:56 <ehird> statue 1 burn and statue 2 burn: win
17:09:28 <ais523> oh, and any error (including ptr < 0, unmatched brackets): statue shakes head
17:15:53 -!- ais523_ has joined.
17:15:56 <ehird> ais523: that seems simpler than the stairs to me
17:16:15 <ais523_> I missed much of the conversation, sorry
17:16:21 -!- ais523 has quit (Nick collision from services.).
17:16:22 <ehird> <ais523> oh, and any error (including ptr < 0, unmatched brackets): statue shakes head
17:16:22 <ehird> <ehird> ais523: ok
17:16:22 <ehird> * ais523_ (n=ais523@147.188.254.116) has joined #esoteric
17:16:25 -!- ais523_ has changed nick to ais523.
17:17:43 <ais523> ehird: the stairs are fully described as: s resets puzzle, u and d increment/decrement step number, while standing on a goto step goto the step mentioned, then swap according to the step you land on
17:18:03 <ais523> oh, and you need to account for infinite loops too, but so does the Brainfuck
17:18:13 <ehird> ais523: that would be modeled as the right number of 'stair' instances
17:18:17 <ehird> instead of a counter
17:18:46 <ais523> it's not like you need a parser or anything, the data is (in the C program) stored as the number of the step to goto or the numbers of the steps to swap
17:18:50 <ehird> damnit i need to come up with syntax ofr events now
17:19:09 <ais523> don't you have @{} already?
17:19:18 <ais523> events are basically that, but not restricted to user input
17:20:25 <ehird> can't think of a good way to do it though
17:25:45 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
17:26:14 -!- ais523 has joined.
17:26:40 <ais523> [Wed May 7 2008] [17:20:37] <ehird> damnit i need to come up with syntax ofr events now
17:26:42 <ais523> [Wed May 7 2008] [17:20:55] <ais523> don't you have @{} already?
17:26:44 <ais523> [Wed May 7 2008] [17:21:04] <ais523> events are basically that, but not restricted to user input
17:26:54 <ais523> and then my connection went down
17:27:07 <ehird> <ehird> ais523: kind of
17:27:07 <ehird> <ehird> can't think of a good way to do it though
17:27:07 <ehird> <ehird> @{} overrides
17:27:07 <ehird> <ehird> events cascade
17:27:32 <ais523> oh, all events happen if they have the same trigger
17:27:45 <ais523> is there some way to override instead?
17:30:14 <ehird> ais523: yes, presumably
17:30:20 <ehird> but ... events stacking up just seems logical to me
17:30:30 <ehird> whereas reactions to user input overriding seems logical too
17:30:42 <ehird> if you want something to work in one room you define it in that room
17:30:47 <ehird> and define the base case in the object
17:30:53 <ehird> but when you say 'on X do Y'
17:30:57 <ehird> you don't want to disturb other thing
17:32:31 <ehird> ais523: isn't that intuitive? it is to me
17:33:01 <ais523> interference with other events is also important
17:33:18 <ais523> maybe you could do it like MediaWiki does, where events can cause future events on the same trigger to not happen if they want to
17:33:34 <ais523> and the events would happen in order from most specific to least specific
17:33:48 <ehird> that's the regular model
17:33:57 <ehird> you have a specific 'halt events' return
17:34:18 <ehird> so, really, I do need to get seperate syntax for events
17:38:02 <ehird> ais523: the problem with choosing random syntax like @{...} is that you have to justify it and use it to unif ythe rest.
17:46:52 -!- UnrelatedToQaz has joined.
17:47:33 -!- cherez has quit (Read error: 113 (No route to host)).
17:52:33 <ehird> ais523: any event syntax ideas?
17:52:56 <ais523> it should be some character followed by something in braces that describes the event
17:53:16 <ais523> defining event triggers is the problem
17:53:22 <ais523> what sort of things should trigger events?
17:54:23 <ehird> you just trigger it
17:54:36 <ais523> oh, so you have a specific trigger-event command?
17:54:46 <ehird> ais523: more likely syntax, it'll be very common
17:54:51 <ais523> so, for instance, how would you trigger an event on entering a room?
17:55:18 <ehird> ais523: you'd link the event and a function
17:55:22 <ehird> (probably an anonymous one)
17:56:26 -!- cherez has joined.
17:57:20 -!- timotiis has joined.
17:57:36 -!- Sgeo has joined.
17:59:28 <ehird> ais523: i'm thinking maybe:
17:59:53 <ehird> you'd put that in a room
18:00:00 <ehird> in a class you could do
18:00:14 <ehird> ais523: and to trigger:
18:00:38 <ehird> ais523: ah, and those get passed additionally
18:00:42 <ehird> you could hook into that with
18:00:48 <ehird> #event:{|s,e,a,b,c|...}
18:01:10 <ehird> that's used for object properties
18:01:38 <ais523> "you'd put that in a room"?
18:01:43 <ehird> ais523: yes, in a room definition
18:01:46 <ais523> ah, you mean in the room's command list
18:01:54 <ais523> what would trigger the #enter?
18:01:55 <ehird> #statue1:talk={|S,E,M| statue2:run(M)}
18:02:03 <ehird> ais523: and the engine would, probably
18:02:07 <ais523> would you have to define it in the room transition commands everywhere?
18:02:07 <ehird> but there's an example
18:02:15 <ehird> which would require statue1 to send the 'talk' message like this:
18:02:46 <ais523> heh, events as properties of objects
18:03:08 <ehird> ais523: yeah, i'm just kinda inventing stuff here
18:04:14 <ais523> ehird: you're going to end up inventing Smalltalk at this rate
18:04:19 <ehird> #{statue1:burned && statue2:burned}={|S,E,M| }
18:04:22 <ais523> maybe I should just program the game in that
18:04:33 <ehird> ais523: i am halfway to just making a ruby dsl for the IF stuff
18:04:42 <ehird> but that's less fun
18:05:09 <ehird> ais523: and then we can't use % as a comment character
18:05:33 <ais523> oh, you were going to use % as a comment character?
18:05:38 <ais523> I thought you'd decided against that
18:07:16 <ehird> ais523: nah, it's too good to pass up
18:07:26 <ehird> my language is *almost* erlang and prolog
18:08:02 <ehird> ais523: anyway, the pattern i have in my head for events is signal/slot
18:08:08 <ehird> Qt uses it, it's great
18:11:57 -!- timotiis_ has joined.
18:11:57 -!- UnrelatedToQaz has quit ("ChatZilla 0.9.82 [Firefox 3.0b5/2008032620]").
18:14:10 <ais523> sorry, couldn't resist
18:21:46 <ais523> anyway, were you intending to say something, or were you just doing the IRC version of a KAL?
18:28:04 <ehird> ais523: i have no idea
18:31:08 <ehird> ais523: suggested solution: Diaiwurncuan Sufuahsnf. Our task is to define this concept and how it relates to the IF language
18:31:39 <ais523> ehird: you'll have to port it from the oko
18:32:26 <ehird> > <- ] >< [ - - - < > < < 3
18:32:29 <ehird> ais523: that is the oko form
18:34:45 -!- oerjan has joined.
18:35:51 <oerjan> <ehird> damn you oerjan -- that wiki really is addictive
18:36:05 <oerjan> David-Morgan Mar calls it crack :)
18:36:06 <ehird> <oerjan> <ehird> damn you oerjan -- that wiki really is addictive
18:36:19 <ehird> (can we get a chain going?)
18:36:28 <oerjan> <ehird> (can we get a chain going?)
18:36:31 <ehird> <oerjan> <ehird> (can we get a chain going?)
18:36:36 <ais523> <ehird> <oerjan> <ehird> (can we get a chain going?)
18:36:49 <ehird> <ehird> DAMNIT OERJAN
18:37:35 -!- Phenax has quit (Read error: 110 (Connection timed out)).
18:38:52 <ehird> ooh, i have an esoteric idea
18:38:54 -!- timotiis has quit (Connection timed out).
18:39:19 <ais523> and will I or oerjan be able to name a lang that already does that within a minute?
18:39:22 <ehird> ais523: a webcomic where the script is edited like a wiki, and then at drawing time, the website lets you choose a region of the comic and draw in there
18:39:34 <ais523> OK, that is pretty new
18:39:38 <ehird> so the end thing is a really, really warped version of the wiki-edited script
18:39:42 <ais523> although arguably Mandatory Fun Day was getting like that
18:40:11 <ehird> ais523: but the background was the same for MFD
18:40:15 <ais523> Wikipedia used to do similar things with stories as part of a sandbox game
18:40:20 <ehird> this would be 100% custom, except maybe with the panels in place
18:40:27 <ais523> but all the sandbox games got purged a while ago, at least the ones which had died
18:40:28 <ehird> it would require no running, really
18:40:31 <oerjan> 't there a page for doing that with Dinosaur Comics? </vague recall>
18:40:42 <ehird> oerjan: not really
18:40:48 <ehird> i'm saying that the WHOLE THING would be done collaboratively
18:40:55 <ehird> by dividing the comment into small blocks which can be claimed and worked on
18:41:07 <ehird> so it all fits together, but in a picasso kind of way
18:41:30 <ais523> [18:41:09] <ehird> ais523: a webcomic where the script is edited like a wiki, and then at drawing time, the website lets you choose a region of the comic and draw in there
18:41:35 <ais523> [18:42:18] <oerjan> 't there a page for doing that with Dinosaur Comics? </vague recall>
18:41:41 <ais523> oerjan: that was more than a minute
18:41:48 <ehird> ais523: and it wasn't even true
18:42:00 <ehird> my idea is, afaik, unique
18:42:34 <oerjan> maybe it's just because i've seen people making parodies of DC which resemble that
18:43:46 <oerjan> i was just trying to think of things that resembled it on the few webcomics i have noticed
18:44:32 <oerjan> DMM has Infinity on 30 Credits which is supposed to be cooperative, and also a randomizer (but no added text) for his own Irregular Webcomic
18:44:47 <ehird> oerjan: infinity on 30 credits let people do their own comics
18:44:52 <ehird> mine wouldn't even have one-panel-per-person
18:45:00 <ehird> it'd be divided into small bits which could be painted on
18:45:06 <ehird> so even one panel would be patchwork
18:45:23 <ais523> I've seen cooperative painting games where each person had a colour of pixel
18:45:36 <ais523> you could set pixels to your own colour, and that was that
18:45:45 <ais523> other people could then change them to eir colour
18:45:56 <ais523> so all changes were mutable
18:45:57 <ehird> ais523: that's a bit more extreme
18:46:02 <ehird> but similar to my idea
18:46:11 <ais523> yes, especially as there was no plan for what the final outcome would look like
18:46:15 <ais523> I haven't seen any get very far, though
18:46:26 <ais523> maybe I should check back some time to see what the results were like
18:46:36 <oerjan> there could be a voting scheme
18:46:39 <ais523> the issue is that the people had to take it in turns to set pixels in the implementation I saw
18:46:54 <ais523> which is a silly idea, but they were trying to embed it inside a computer game so they had no other option
18:48:33 <ehird> you work on a block
18:48:36 <ehird> people vote for it
18:48:43 <ehird> the highest voting ones get put together
18:48:51 <ehird> basically, the collaborative-script would define each panel
18:49:00 <ehird> and be quite specific - like 'foo to the left', 'bar to the right'
18:49:08 <ehird> so that it will all fit together, and maliciousness can just be voted out
18:49:20 <ehird> so you get a patchwork, surrealist comic with a crazy plot
18:49:28 <ehird> (apart from implementing it...)
18:51:42 <oerjan> an alternative idea - make each pixel RGB the median of the suggestions for it
18:52:15 <ais523> oerjan: that's better than choosing the mean, but it's still unlikely to come up with a coherent outcome
18:52:56 <oerjan> anyone was hoping for coherence? :D
18:52:58 <ehird> because people will draw thigns in slightly different places
18:53:01 <ehird> and in slightly different ways
18:53:14 <ehird> oerjan: if you look at the comic as it is now before starting and read the plot a lot, then yes, it could come out pretty coherent
18:54:26 <ehird> ais523: worth implementing?
18:55:09 <oerjan> hm perhaps a version control system
18:56:29 <Sgeo> http://i93.photobucket.com/albums/l65/rustik2/cnnsucks.jpg
18:56:48 <ais523> http://www.thewritingpot.com/wikistatus/ says it's down with a locked database
18:57:01 <ais523> and gives a reason too
18:57:33 <ais523> yep, Brion's website confirms it
18:57:38 <ais523> https://wikitech.leuksman.com/view/Server_admin_log
18:57:51 <ais523> oh, thewritingpot.com isn't quite official
18:57:59 <ais523> but many experienced Wikipedians know of it
18:58:06 <ais523> and it's updated wiki-style when there's a problem
18:58:57 <Sgeo> Couldn't a vandal screw around with it?
18:59:09 <ais523> #wikipedia tells me that the wiki's mostly up, just one of the servers got the bad change
18:59:26 <ais523> Sgeo: yes, but its recent changes are logged, and they'd likely be reverted back round
18:59:30 <ais523> it hasn't been a problem so far
19:01:25 <ehird> <Sgeo> Couldn't a vandal screw around with it?
19:01:32 <ehird> you take a bad question about wikipedia
19:01:39 <ehird> and change it into a bad question about a wikipedia status monitor
19:06:39 <ais523> oh, and about the wiki-outage, I just got the following message on the Wikimedia developers mailing list (which I'm subscribed to, although I'm not a developer): "This breaks the site. Overloads the central DB. Reverted."
19:06:59 <ais523> that was by Brion Vibber, the release manager
19:07:05 <ais523> so we know what the problem was now
19:07:23 <Sgeo> What was reverted, exactly/
19:07:35 <ais523> Sgeo: the change that the message reverted to
19:07:52 <Sgeo> What was the problem causing change?
19:08:00 <ais523> which I'll look up if you like
19:08:20 <ais523> the problem is I normally go to them via Wikipedia, and as it's down, I'll have to remember the URL
19:08:48 <ais523> it was this change: http://svn.wikimedia.org/viewvc/mediawiki?view=rev&revision=34358
19:15:25 <ehird> ais523: the problem is that it's even possible to break it like that ;)
19:16:13 <ais523> well, it was a pretty big change
19:16:24 <ais523> and referring to non-existent DB tables will cause all sorts of errors
19:17:13 <ehird> ais523: why is wikipedia running svn HEAD automatically?
19:17:22 <ais523> ehird: it doesn't run svn HEAD
19:17:35 <ais523> it's synched with it pretty often, though, about once a week and sometimes faster
19:17:50 <ais523> if the devs think something is potentially problematic they test it on test.wikipedia.org
19:18:18 <ais523> however, the bug was in part of the code that's designed to be shared across all Wikimedia sites, it's in the shared authorisation stuff
19:18:28 <ehird> ais523: then why wasn't it tested
19:18:40 <ais523> ehird: probably it was but the bug didn't show up in testing
19:19:15 <ais523> Brion said it overloaded the database; something stupid like checking a nonexistent table on every pageview maybe wouldn't show up in testing but would completely hammer the database in production
19:20:03 <ehird> ais523: so they should stress-test
19:20:27 <ais523> oh well, this sort of thing doesn't happen very often
19:20:45 <ehird> ais523: wikipedia should use mediawiki to manage it
19:20:47 <ehird> and push it in REAL TIME
19:21:03 <ehird> of course then you can disable the revert function so you can't revert the removal of the revert button
19:21:04 <ais523> we need a programming language where you can edit running programs
19:21:07 <ehird> solution: infinite regress wikimedia
19:21:09 -!- helios24 has joined.
19:21:10 <ais523> it would be useful for lots of thing
19:21:35 <ais523> Wikpedia's back up now, anyway
19:21:48 <oerjan> i _think_ it is called Smalltalk, iiuc
19:22:05 <ais523> oerjan: you can do that in Smalltalk?
19:22:42 <ehird> it is called smalltalk
19:22:45 <ehird> and to a lesser extent lisp
19:22:47 <ehird> ais523: smalltalk has no programs
19:22:55 <ehird> just a bunch of classes
19:22:56 <ehird> and a heap of objects
19:23:11 <ehird> you might, say, tell it to evaluate 'WebServer startOn: 8080'
19:23:14 <ais523> is it possible to write a loop, and edit code inside the loop while the loop is running?
19:23:17 <ehird> instead of actually running anything
19:23:27 <ehird> but you can change a method that runs a loop
19:23:32 <ehird> and have it immediately propagate along the system
19:23:36 <ehird> so any future call will use the new definition
19:23:39 <ehird> without anything extra done
19:24:16 <ais523> ah, the point is that most of the time a Smalltalk 'program' isn't running
19:24:23 <ais523> because it responds to external messages
19:24:37 <ais523> say if you wrote an OS kernel in Smalltalk, could you hotpatch it?
19:25:30 <oerjan> Erlang also is good for runtime patching but maybe not as directly (?)
19:25:42 <ehird> say if you wrote an OS kernel in Smalltalk, could you hotpatch it?
19:25:46 <ehird> just edit the method
19:25:49 <ehird> and voila, all future calls call it
19:25:54 <ehird> of course you'd need to compile the kernel
19:26:02 <ehird> but let's pretend that bootstrapping is magical
19:42:01 <lament> let's pretend that magic is magical
19:55:42 <ais523> KALs are things sent down Internet connections for no other purpose than to prevent the connection ending, I think
19:55:51 <ais523> sort of like pongs, but without a corresponding ping
19:59:01 <ehird> ais523: you know what would be cool?
19:59:06 <ehird> a wiki which runs programs to generate its pages
19:59:19 <ais523> like MediaWiki special pages?
20:01:15 <ehird> ais523: not really
20:04:06 <ehird> ais523: any perlnomic ideas?
20:04:17 <ehird> i have this urge to grab some random perl webapp
20:04:20 <ehird> and run it through my package creator
20:04:32 <ais523> what would be really useful would be a generic way for CGI scripts to store data persistently
20:04:34 <ais523> that wasn't a pain to use
20:04:50 -!- oerjan has set topic: Reinventing the square wheel for fun and economic ruin | http://tunes.org/~nef/logs/esoteric.
20:04:52 <ehird> ais523: i can do that
20:05:03 <ehird> ais523: and also i will make a unified login/logout interface
20:05:07 <ehird> and also a header/footer
20:05:09 * oerjan didn't think "profit" sounded quite right
20:05:35 <ehird> ais523: should i bite comex or jay
20:05:50 <ais523> ehird: you can't bite me, you aren't looking at me
20:06:01 <ehird> ais523: but i can fix that
20:06:05 <ais523> as for comex or jay, comex doesn't have a whole lot of points right now
20:06:13 <ais523> and the bite and move timers are the same timer
20:06:25 <ais523> if you turn to look at me, then I'll run away
20:06:26 <ehird> You bit jay for 3 points. You notice red aura blinking around you.
20:07:40 <ehird> ais523: so, would you vote for a unified login/logout system
20:07:49 <ais523> yes, if implemented properly
20:08:01 <ehird> sgeo wants in on ecmanomic
20:08:15 <ais523> is that a JS version of PerlNomic?
20:08:16 <ehird> ais523: http://ecmanomic.org/
20:08:54 <Sgeo> ehird, is that as bad as if i wanted in on PerlNomic?
20:09:10 <ehird> Sgeo: do you even know any js?
20:09:26 <Sgeo> I did some stuff in YouOS a while ago
20:09:50 <Sgeo> I don't like the fact that users seem to be identified by password though..
20:09:50 <ais523> gosh, ecmanomic is really hard to read
20:10:37 <ehird> Sgeo: they're not?
20:10:39 <ais523> ehird: for bonus points, get PerlNomic to use public-key authentication, at least as an alternative to crypted passwords if not a replacement
20:10:53 <ehird> ais523: sha512^100+salt
20:11:37 <Sgeo> Oh, is the username stored in a cookie?
20:12:06 <ehird> I just made my adduser, and I put in my password
20:12:09 <ehird> I don't see it anywhere.
20:12:26 <Sgeo> ehird, refresh, and you'll see the adduser
20:12:39 <ehird> I mean my password.
20:12:51 <Sgeo> set functionName to vote. Notice how it doesn't ask you for Username
20:13:14 <Sgeo> Put in a junk password. See the errormessage
20:13:48 <ehird> ais523: I wanna start my own codenomic.
20:13:51 <ehird> ais523: Language suggestions?
20:14:10 <Sgeo> So each player is basically identified by password
20:14:21 <ehird> ais523: It would be nice, but hooking it into Squeak safely etc would be a pain
20:14:29 <ehird> and I'm not gonna give unrestricted access :-)
20:14:32 <ais523> it seems the obvious choice the way the conversation's been going over the last two days or so
20:14:48 <ehird> ais523: I guess so...
20:15:03 <ehird> ais523: But smalltalk has a very closed-world view.
20:15:06 <ehird> I dunno -- I'll consider it
20:16:09 <ehird> ais523: For the moment, any other ideas?
20:16:31 <ais523> maybe Ruby, if there isn't one yet
20:16:40 <ehird> ais523: there is a ruby one but it's dead
20:16:43 <ehird> so i'll consider it
20:16:49 <ehird> ais523: but none that you know? :P
20:16:50 <ais523> what makes you think yours won't be dead?
20:16:54 <ais523> and can you revive it?
20:17:05 <ehird> ais523: it's dead as in not online any more
20:17:13 <ehird> as for ACTIVITY, who cares?
20:18:02 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
20:19:20 -!- Sgeo has joined.
20:19:35 <Sgeo> X just died for no obvious reason
20:19:48 <ehird> ais523: maybe an esolang?
20:19:53 <ais523> you didn't do a C-M-backspace?
20:20:04 <Sgeo> I don't think so
20:20:08 <ais523> ehird: INTERCAL would likely work best out of the ones I know, except it's lousy at string-handling
20:20:28 <ais523> the issue with an esolang nomic is nobody would want to read the code
20:20:50 <ais523> but with an INTERCAL nomic, you could have all proposals appending to the end of the code
20:21:00 <ais523> using COME FROM and suchlike to modify what had gone before
20:22:15 <ehird> ais523: why aren't there any /easy/ esolangs
20:23:06 <ais523> ehird: well, unless you count Easy, it's because some sorts of esolangs (like tarpits) can't be easy pretty much by definition, and ones which would be easy to program in are a pain to implement
20:23:48 <ais523> so Cyclexa and many-tiered Underlambda would be easy to program in, but the implementation efforts keep getting stuck
20:24:01 <ais523> what about GolfScript and similar esolangs?
20:24:12 <ais523> they're not all that difficult by esolang standards
20:24:16 <ais523> but can be a pain to read
20:25:25 <ehird> ais523: golfscript sounds interesting
20:25:32 <ehird> ais523: also, want help implementing underlambda?
20:25:38 <ais523> there's a FlogScript on esolangs.org that seems based on it
20:25:46 <ais523> and help implementing underlambda would be fine
20:25:50 <ais523> as would help speccing it out
20:25:54 <ehird> ais523: seems to be yshl's
20:26:12 <ais523> I sort of know what I want, but it's hard to put it in writing
20:26:20 <ehird> ais523: hm, flogscript is a bit too hard to read
20:26:31 <ehird> Oh gawd, flogscript isn't yshl's
20:26:48 <ais523> many of zzo38's langs are pretty good, though
20:27:05 <ehird> ais523: yeah, he just has a ton of crackpot stuff on his blog :-)
20:27:10 <ehird> it seems to embed brainfuck
20:27:13 <ehird> which is a dumb idea, imo
20:27:26 <ais523> hey, Underlambda embeds brainfuck
20:27:32 <ais523> but for useful purposes
20:27:47 <ais523> < and > implement access to a secondary stack, something that would help a lot in Underload
20:28:14 <ais523> [ and ] form a simple imperative looping construct, which is sometimes nicer than the functional or concatenative versions
20:28:23 <ais523> and + and - are nice increment/decrement shortcuts
20:28:36 <ais523> so all 8 commands are useful, and I may as well give them the names they have in BF
20:29:01 -!- oerjan has quit ("Good night").
20:32:22 <ehird> ais523: i'm hacking out a little smallnomic
20:32:52 <ais523> ehird: what level does it self-modify at? The entire code for the site?
20:33:05 <ehird> ais523: the smalltalk classes
20:33:18 <ehird> so it's really just a smalltalk class browser at its heart ;)
20:33:24 <ehird> but with '[edit this]' and all that
20:33:28 <ehird> that is - it WILL be
20:33:36 <ehird> ais523: all of Seaside is done within smalltalk
20:34:04 <ehird> it's also a heretical framework - continuation-based, stateful, html is generated programmatically and not by a template, etc
20:34:07 <ehird> but i think it'll fit great for this
20:34:17 <ehird> since you can write a program with callbacks on links, and say 'go to page a, then b'
20:34:26 <ehird> ais523: it leads to slightly ugly urls though
20:34:38 <ais523> 'heretical''s an interesting name for it
20:34:40 <ehird> http://localhost:8080/seaside/nomic?_k=zbHRaYHq&_c
20:34:44 <ehird> _k is the continuation id there
20:34:49 * ais523 almost clicked on that link
20:34:54 <ehird> you can have meaningful urls, but you have to do it manually
20:35:02 <ehird> ais523: but then a nomic doesn't need bookmarking all the time, does it
20:35:12 <ehird> and it's described as heretical by its author
20:35:28 <ais523> you only really need a static URL at the entry point
20:36:06 <ehird> and things like editing specific classes
20:36:16 <ehird> but e.g. a map, or moving, or biting ... none of those need persistent urls
20:36:24 <ehird> /nomic?_k=zbHRaYHq&_c is a fine url for them
20:36:24 <ais523> are you going to have a rollback feature like perlnomic does?
20:36:27 <ehird> esp. cause of the programming benefits
20:36:33 <ehird> ais523: hm, i don't know..
20:36:37 <ehird> it sounds difficult
20:36:40 <ais523> if nobody does anything for three days, anybody can undo the last proposal without authenticating
20:36:54 <ehird> ais523: OK, that'll be easy
20:36:57 <ais523> as one line of protection against accidental massive breakage
20:37:00 <ehird> I just need to store every proposal, forever.
20:37:10 <ehird> Which I should do anyway.
20:37:17 <ehird> ais523: mine'll even have a wiki-style 'class history'
20:37:20 <ais523> that would be still better, actually, use it as a rollforwards rather than a rollback
20:37:41 <ehird> ais523: using squeak is bizzare
20:37:44 <ehird> since it's its own windowing system
20:37:49 <ehird> and font renderer, etc
20:37:53 <ehird> even mouse interaction
20:38:24 <ais523> BTW, how easy would it be for you to host a pushable-by-me darcs repo for C-INTERCAL?
20:38:29 <ais523> eso-std.org seems like a good place for it
20:38:50 <ais523> I've started using darcs versioning, and I think I'm getting the hang of it
20:39:08 <ehird> <ais523> BTW, how easy would it be for you to host a pushable-by-me darcs repo for C-INTERCAL? <-- very easy
20:39:19 <ehird> you can even do it *right now*
20:39:21 <ais523> what about pushable-by-me, pullable-by-world
20:39:27 <ehird> ais523: just as easy
20:39:43 <ehird> ais523: I'll install a temp httpd.
20:39:54 <ais523> how persistent will the site be?
20:39:58 <ehird> ais523: All you have to do is 'darcs push elliotthird.org://var/www/darcs/c-intercal'
20:40:05 <ehird> and persistent, if I need to wipe, I'll back it up
20:40:12 <ehird> besides -- it doesn't need to be that persistent, you can always just repush
20:40:15 <ehird> but i will back up
20:40:20 <ais523> will the same ssh ⁎*⁕⁑⁂⁎ still work, or did you wipe it?
20:40:25 <ehird> ais523: oh, that's wiped
20:40:37 <ehird> i'll give you the password 'YesIJustSaidThisOverIRC'
20:40:42 <ehird> have fun racing to change it
20:41:54 <ehird> wait for me to install nginx
20:42:13 <ehird> ais523: by the way, smallnomic will not work on IE
20:42:16 <ehird> any complaints? ;)
20:42:52 <ehird> ais523: i'm going to use :after for the seperators on the menu
20:42:54 <ehird> technically it'll work
20:42:57 <ehird> it'll just look odd :P
20:46:17 <ais523> ehird: I've set up public-key authentication to your server
20:46:26 <ehird> ais523: that's nice?
20:46:27 <ais523> my public key's in my home dir over on elliotthird.org
20:46:34 <ehird> ais523: how did you do that?
20:46:36 <ais523> yes, it means I don't need to know my ⁎*⁕⁑⁂⁎ over there
20:46:40 <ehird> oh, does ssh already have it unabled
20:46:42 <ais523> ehird: ssh-keygen a key
20:46:50 <ais523> and then copy the public key to the right place
20:47:07 <ais523> wait for what, nginx, or something else?
20:48:12 <ehird> ais523: okay, about to add you to www-data
20:48:18 <ehird> er how do i add a user to a group
20:48:57 <ehird> ais523: an existing user?
20:49:05 <ais523> two args adds an existing user
20:49:08 <ais523> one arg creates a user
20:49:38 <Sgeo> oO at existance of MX records for tt
20:50:05 <ehird> mkdir darcs/c-intercal
20:50:42 <ais523> wait, I have to log out and back in again
20:50:55 <ais523> I may have been added to www-data, but my instance of bash wasn't
20:50:56 -!- jix has joined.
20:51:38 <ais523> ehird: still can't do it, /var/www is 755 not 775
20:51:55 <ehird> ais523: you are in www-data.
20:52:12 <ais523> yes, but group can't write to the directory
20:52:20 <ais523> it's read-write-exec for user, but read-exec for group
20:53:25 <ais523> now all that's needed is a darcs push to the right location, presumably
20:53:32 <ehird> ais523: yes, just:
20:53:38 <ehird> 'darcs push elliotthird.org://var/www/darcs/c-intercal'
20:53:41 <ehird> then just 'darcs push' after that
20:54:42 <ehird> ais523: and the pull url
20:54:43 <ehird> is http://elliotthird.org/darcs/c-intercal/
20:54:49 <ehird> people can get it by 'darcs get http://elliotthird.org/darcs/c-intercal/'
20:54:58 <ehird> you can s/elliotthird.org/eso-std
20:55:12 <oklopol> http://i93.photobucket.com/albums/l65/rustik2/cnnsucks.jpg <<< i saw this like 7 years ago, it's older than Sgeo.
20:55:14 <ais523> I'll use eso-std for the time being
20:55:37 <ehird> 'i saw this like 7 years ago, it's older than Sgeo.'
20:55:40 <ehird> best thing ever said
20:56:16 <ais523> hmm... it seems I can't push to a nonexistent repo
20:56:23 <ais523> presumably it needs initialising first?
20:56:47 <Sgeo> Although I think the name "Sgeo" might be around 7 years old, actually. I'm 19 though
20:56:50 <ais523> oh, and it's one slash not two after the colon in the push command
20:56:51 -!- Iskr has quit ("Leaving").
20:56:59 <ehird> i'm pretty sure it's two
20:57:09 <ais523> with two it interprets eso-std:// as the protocol
20:57:31 <ais523> -bash: darcs: command not found
20:57:57 <ehird> i should just give you root :P
21:01:17 <ehird> ais523: by the way
21:01:18 <ehird> darcs is there now
21:01:50 <oklopol> ehird: ais523: Language suggestions? <<< nomictalk
21:04:13 <ais523> ehird: http://eso-std.org/darcs/c-intercal redirects me to localhost for some reason
21:04:22 <ais523> and thus shows no useful data
21:05:12 <ehird> ais523: well i can either make all of elliotthird.org redir to eso-std
21:05:14 <ehird> or the other way around.
21:05:38 <ais523> if you aren't using elliotthird.org for anything right now, redirect to eso-std
21:05:43 <ais523> otherwise redirect in the other direction
21:06:17 <ehird> ais523: okay it is fixed
21:06:21 <ehird> but your browser still remembers the redir
21:07:07 <ais523> OK, I get a blank repo, pushing now
21:07:42 <oklopol> Sgeo: wtf? didn't you say you were 15?
21:08:03 <Sgeo> Maybe some years ago..
21:08:13 * oklopol needs to do some logreading
21:08:26 <ehird> ais523: did it push?
21:08:36 <ais523> taking remarkably long about it
21:08:58 <ais523> it's created the lockfile on your server, but then seems to have done nothing after that
21:09:07 <ehird> ais523: darcs is slow
21:09:34 -!- oklopol has set topic: Reinventing the square wheel - ??? - Profit | http://tunes.org/~nef/logs/esoteric.
21:10:00 <ais523> oh, and sleeping and not using any CPU
21:10:10 <ais523> generally, processes are either IO-bound or CPU-bound
21:10:14 <ais523> but darcs seems to be neither
21:10:23 <ehird> ais523: Ctrl-C, Up, Enter.
21:10:35 <ehird> Any other language suggestions by the way? I just realised how big a proposition writing a smalltalk browser is ;P
21:10:55 <ais523> you have continuations
21:10:57 <oklopol> anyone know that log where Sgeo says his age? i want to see proof he didn't age 5 years in a few months.
21:11:18 <ehird> ais523: I might do it in underlambda, if we collab on an impl
21:11:18 <oklopol> as if anyone could get 19-15 right
21:11:32 <ais523> may as well collab on an impl right
21:12:30 <oklopol> does someone have an easy way to grep the whole tunes logs?
21:12:34 <ihope> oklopol: people don't age 4 years in a few months. Q.E.D.
21:12:51 <ehird> <ais523> may as well collab on an impl right
21:12:56 <oklopol> lines with Sgeo saying 15 or 19
21:12:57 <ehird> bizzarest thing ais523 has ever said
21:13:01 <Sgeo> Didn't there used to be a link to searchable logs?
21:13:03 <ehird> oklopol: download them all
21:13:10 <ehird> Sgeo: they can't acutally search
21:13:18 <ehird> oklopol: a wget script
21:13:18 <ais523> ehird: I was trying to reply to both yours and oklopols comments at the same time, and got confused
21:13:20 <ehird> basically, set it to mirror
21:13:25 * ihope slaps Sgeo for using the past past tense
21:13:39 <ehird> ais523: "Editing component: SNHome" yay
21:13:56 <ehird> ais523: it helps that smalltalk is introspective as all hell
21:14:12 <oklopol> (someone search the log for me :P)
21:14:14 <Sgeo> Ofc, greppping for #esoteric logs only might be a bit tricky
21:14:15 <ehird> i just opened up the Class class :D
21:14:26 <ehird> download all the #esoteric logs
21:14:30 <ehird> it only takes 5 minutes
21:14:33 <Sgeo> Also, my birthday was May 1st, so searching for 18 might be better than 19
21:14:53 <oklopol> ehird: wanna do it? i'm on windows
21:16:06 <oklopol> in case you know a simple way to do it on win, do tell me, i'd prolly make a python script, but that would be a waste of 10 minutes
21:16:29 <ais523> the realoaded darcs push is still going, by the way
21:17:48 <Sgeo> Google's no help
21:18:47 <ais523> Sgeo: is there a windows version of wget, or of curl?
21:18:51 <ais523> there ought to be by now
21:18:56 <oklopol> isn't it like one wget and grep on linux?
21:19:00 <ais523> a cygwin port, at least
21:19:03 <oklopol> just please do it so i can be in peace..
21:19:18 <ais523> but I'm not sure how to set it up properly
21:19:26 <Sgeo> ais523, I think there is for wget. If I knew what curl was, I might be able to say something
21:19:47 <Sgeo> http://en.wikipedia.org/wiki/Wget#External_links
21:19:49 <ais523> it's what ehird recommended to me to make a rule-resubmit bot for IRCnomic
21:19:54 <Sgeo> http://users.ugent.be/~bpuype/wget/
21:20:54 <Sgeo> wget -i looks like it would do what you need
21:21:25 <Sgeo> If you turn the list of logs into a list of files readable by that..
21:21:28 <ehird> ais523: so, underlambda
21:21:33 <ehird> step 1. pick a language ;)
21:21:40 <Sgeo> Or just recursive 1 level deep?
21:22:15 <ais523> ehird: that's an interesting choice
21:22:20 <ais523> it's designed to be implementable in anything
21:22:52 <ehird> ais523: let's optimize for speed, because we'll never get it
21:23:31 <ais523> OK, what you really need in Underlambda is serialisable first-class functions
21:23:48 <ais523> with access to the call stack
21:24:18 <ehird> ais523: OK, we'll be rolling our own then.
21:24:33 * Sgeo pokes ais523 or oklopol or whoever was asking me
21:25:38 <ais523> 1 level deep would be fine for the tunes.org logs
21:25:52 <ehird> i've done it before
21:27:20 <ehird> ais523: shall we go for C?
21:27:22 <ehird> it would be hideously ugly
21:27:34 <ais523> especially with the access-to-callstack stuff
21:27:45 <ehird> ais523: does the callstack serialization need to be cross-platform?
21:28:01 <ais523> it only needs to be per-executable
21:28:12 <ais523> it can vary from recompile to recompile if needed the way I've specced it out
21:28:16 <ais523> but having it cross-platform would be nice
21:28:26 <ais523> Underlambda is an obvious lang to serialise into, but not the only choice
21:28:39 <ehird> ais523: I think if we go to C, we should roll our own callstack.
21:28:48 -!- helios24 has quit ("Leaving").
21:28:53 <ehird> Since with cross-platform continuations, we could change everything magically into smalltalk.
21:29:06 <ehird> ais523: but then how do FFIs work?
21:29:14 <ehird> Sure, it works if the C function you go into doesn't call into Underlambda
21:29:19 <ehird> but if you do that, then our callstack becomes wrong
21:29:20 <ais523> it's really easy to do roll-your-own callstack, actually, just by appending the rest of the program to the end of what you call
21:29:25 <ehird> and any continuation isn't a real continuation
21:29:32 <ais523> I didn't think about FFIs
21:29:46 <ais523> it's hard to see how you could continuationise another lang that you know nothing about, though, anyway
21:29:58 <ais523> I don't mind too much if continuations and FFIs don't mix, they don't in INTERCAL for instance
21:30:02 <ehird> ais523: if you do the callstack then you're mostly fine
21:30:08 <ehird> is to switch to CPS
21:30:13 <ehird> and provide a wrapper for regular functions
21:30:16 <ehird> so, if you want to call into underlambda again
21:30:25 <ehird> but if you just want to call into a random C lib
21:30:31 <ehird> then it just uses the wrapper function
21:30:36 <ehird> (which just does k(func(...)), basically)
21:30:41 <ehird> ais523: the problem is that CPS is fugly without closures
21:30:49 <ais523> the s/// version of the compiler is pretty much CPS
21:30:58 <ais523> except that it isn't full CPS
21:31:05 <ais523> it passes the program context around, but not the data stack
21:31:09 <ais523> so it's a sort of cut-down CPS
21:31:20 <ehird> ais523: I mean, CPS would let us support any kind of windy callstack.
21:31:26 <ehird> ais523: But make the code inscrutable.
21:31:37 <ehird> ais523: Serializing the call-stack isn't portable, etc.
21:31:47 <ehird> And rolling our own won't let us do arbitary call stacks
21:33:44 <ais523> maybe use naive call-stack concatenation?
21:33:55 <ais523> that does tail-recursion automatically without extra effort
21:34:07 <ais523> effectively, you remove the ^ from the program and add TOS in its place
21:34:44 <ehird> ais523: i don't wanna go a rewriting way
21:34:51 <ehird> I even want to - holy crap - parse it
21:34:53 <ais523> it wouldn't be rewriting
21:34:56 <ais523> and it would be parsed
21:35:12 <ehird> the naive method kinda sucks.
21:35:14 <ais523> but presumably, in C, you implement functions as a linked list of fundamental functions
21:35:29 <ehird> ais523: i have an idea
21:35:33 <ehird> let's just create a repo :p
21:35:43 <ehird> oh, darn, perl has a consistent style, but not C
21:35:46 <ehird> now we have to argue again
21:35:54 <ais523> well, the darcs push still hasn't finished
21:36:02 <ais523> so I'm going to assume that it won't ever, and kill it
21:36:22 <ehird> ais523: IT WILL NEVER FINISH
21:36:33 <ehird> ais523: do you have any darcs revisions already there?
21:36:37 <ehird> or have you just put it in darcs?
21:36:43 <ais523> no revisions there yet
21:36:52 <ais523> I'm going to try using send/apply
21:36:55 <ehird> ais523: on your local copy?
21:36:59 <ehird> and send/apply won't work properly
21:37:06 <ais523> send on local, apply on foreign
21:37:07 <ehird> is locally, do yuo have any revisions
21:37:12 <ehird> or have you just imported it
21:37:24 <ehird> otherwise a change to git would take 3 minutes
21:37:27 <ehird> now it'll take 7 ;)
21:39:01 <ais523> ehird: what's the syntax for scp?
21:39:12 <ais523> I thought I remembered, but I seem to be wrong
21:39:23 <ehird> ais523: scping the repo won't work realiably
21:39:28 <ehird> really you want to get push working
21:39:31 <ais523> ehird: i'm not scping the repo
21:39:35 <ais523> I'm scping a sendbundle
21:40:22 <ehird> ais523: also won't work properly
21:40:26 <ehird> the repos won't be equivilent
21:40:46 <ehird> not sure, but i'm pretty sure that it's true
21:41:04 <ais523> ehird: the problem isn't with darcs, but with the network connection
21:41:14 <ehird> ais523: on my end or yours
21:41:18 <ais523> sendbundle.darcs 75% 2208KB 12.5KB/s - stalled -
21:41:22 <ais523> not sure whose end the problem's on yet
21:41:26 <ehird> then just keep trying to push
21:41:30 <ehird> i think it's your end
21:42:07 <ehird> ais523: hm, scheme would work
21:42:18 <ehird> ais523: OK, time for a stylistic argument
21:42:34 <ais523> what, in terms of indentation style, or something more major than that?
21:42:40 <ehird> ais523: mainly the first
21:42:54 <ehird> ok, let me get some controversy going
21:43:02 <ehird> type func(type foo, type bar, type baz)
21:43:03 -!- AnMaster has quit ("bbiab kernel upgrade").
21:43:05 <ais523> OK, in that case, 1 space, GNU-style (so half a space before braces), but with 3 spaces before case labels
21:43:21 <ais523> ehird: how many spaces indentation is that?
21:43:23 <ehird> ais523: i hate gnu style so much
21:43:37 <ehird> ais523: you can never be sure with you
21:43:48 <ais523> I hate GNU-style too, and half-space indentation is silly
21:43:56 <ehird> ais523: in an ideal world
21:44:04 <ehird> and people could choose how many spaces they wanted
21:44:06 <ais523> now, my typical style is two-space indentation, { is on a separate line from the if (x)
21:44:11 <ais523> but otherwise the same as you
21:44:12 <ehird> but editors interpreted it as '8 spaces'
21:44:16 <ehird> which is just WRONG
21:44:19 <ehird> and now we can't use them
21:44:22 <ehird> because that assumption spread
21:45:33 <ehird> ais523: ignore that rant
21:45:44 <ehird> case labels should be on the same column as the switch
21:45:48 * ehird watches ais523 shoot him
21:46:07 <ais523> ehird: I put case labels there too
21:46:16 * ehird shoots ais523 for completeness
21:48:55 <ehird> ais523: here's how to coerce emacs to do your bidding
21:49:02 <ehird> (add-hook 'c-mode-hook (lambda ()
21:49:02 <ehird> (c-set-style "linux")
21:49:02 <ehird> (setq c-basic-offset 4)))
21:49:17 <ais523> oh, I use c-set-style "bsd" with a c-basic-offset of 2
21:49:23 <ais523> what's the difference between "linux" and "bsd"?
21:49:38 <ehird> ais523: bsd indents extra function parameters differently i think
21:50:38 <ehird> ais523: OK, no difference as far as I can tell
21:50:41 <ehird> let's use BSD, both of us
21:50:51 <ais523> may as well, if the styles are identical
21:50:59 <ehird> ais523: I think you can change c-mode's settings for a specific dir
21:51:07 <ais523> oh, it's probably to do with where the brace after the if() { is
21:51:17 <ais523> but Emacs doesn't move that from where the user puts it
21:51:20 * ehird consults pikiwedia
21:51:27 <ehird> ais523: ever tried electric mode?
21:51:28 <ais523> I put a newline in between the if() and the {
21:51:32 <ais523> ehird: yes, I normally use it
21:51:44 <ais523> but I manually type newlines before a {
21:52:57 <ais523> the darcs push, or any large copy over ssh, doesn't seem to work properly from here
21:53:14 <ais523> maybe the University network I'm on thinks I'm filesharing and is throttling it...
21:53:36 <ehird> ais523: so, should we use git for underlambda
21:54:09 <ais523> ehird: maybe it's better to decide on the version control system /after/ we have some code...
21:54:19 <ehird> ais523: i always like getting a copy out first
21:54:21 <ais523> but I don't have much of an issue with using gitorious or somewhere like that
21:55:06 <ehird> 0% [Connecting to archive.ubuntu.com (91.189.88.31)]
21:55:12 <ehird> (on elliotthird.org)
21:57:39 -!- AnMaster has joined.
21:59:11 <ais523> I'll see what happens if I push to elliotthird.org instead
21:59:51 -!- jix has quit ("CommandQ").
22:01:09 <ehird> i just installed git
22:01:10 <ehird> but it's not there
22:01:19 <ais523> ehird: did you install the right git?
22:01:27 <ais523> you warned me that 'git' was the wrong package on ubunutu
22:06:05 <ais523> when I want to install something and I know the name of the command,
22:06:13 <ais523> I which the command to make sure I don't have it already
22:06:23 <ais523> then try to run the command and let command-not-found tell me which package it's in
22:09:36 <ehird> ais523: eh just gonna use gitorious
22:09:38 <ehird> handles all this for me
22:12:42 <ehird> ais523: git clone git@gitorious.org:underlambda/mainline.git
22:13:50 <ehird> ais523: now you cna
22:14:43 <ais523> Initialized empty Git repository in /home/ais523/esoteric/udld/mainline/.git/
22:14:43 <ais523> Access denied or bad repository path
22:14:43 <ais523> fatal: The remote end hung up unexpectedly
22:14:53 <ehird> ais523: oh of course
22:15:08 <ehird> ais523: git clone git://gitorious.org/underlambda/mainline.git
22:15:11 <ehird> git remote add origin git@gitorious.org:underlambda/mainline.git
22:15:17 <ais523> ehird: I use .udl for Underlambda, .ul for Underload
22:15:22 <ais523> so tab completion works well
22:15:35 <ehird> i suggest retconning underload into .uel
22:15:39 <ais523> fatal: Not a git repository at /usr/share/perl5/Git.pm line 197.
22:15:39 <ehird> so that .ul can be used for underlambda
22:15:43 <ehird> which is arguably far superior ;)
22:15:45 <ais523> I use .unl for underlambda
22:15:53 <ehird> ais523: yes, but it deserves the 2-char
22:15:58 <ehird> ais523: also, git --version
22:16:20 <ehird> that should be fine...
22:16:24 <ehird> ais523: paste your session
22:17:42 <ais523> http://pastebin.ca/1011107
22:18:44 <ehird> $ git clone git@gitorious.org:underlambda/mainline.git
22:18:46 <ehird> $ git clone git://gitorious.org/underlambda/mainline.git
22:19:07 <ais523> which one should I use, anyway?
22:19:08 <ehird> ais523: because x11 has two clipboards
22:19:11 <ehird> selection (pasted with middle-click)
22:19:16 <ehird> and copied (depends onthe app)
22:19:22 <ais523> yes, I know, but it was a middle-click paste both times, I think
22:19:27 <ais523> which one should I use, anyway?
22:19:35 <ehird> ais523: well, the selection clipboard is retarded
22:19:38 <ehird> it's too easy to override
22:19:48 <ehird> but the keybindings for the real one
22:19:51 <ais523> I only use it for quick select-pastes, usually
22:19:52 <ehird> are inconsistent between apps
22:19:56 <ehird> and i don't even think xterm supports it
22:20:05 <ehird> os x comes on top again -- cmd-{c,x,v}
22:20:10 <ehird> and it doesn't interfere with ^C
22:20:12 <ehird> because cmd != ctrl
22:20:14 <ais523> ehird: gnome-terminal does, it's C-S-c for copy, C-S-v for paste
22:20:16 <ehird> (this is how windows is broken)
22:20:29 <ais523> oh, and Linux ought to use super more
22:20:44 <ais523> I can use it to zoom into windows using Compiz, which is actually useful on occasion, but not much else
22:21:47 <ehird> ais523: os x has a global zoom
22:21:55 <ehird> something + mouse wheel
22:22:03 <ais523> yes, super + mouse wheel over here
22:22:03 <ehird> ais523: but even better - it has a keybinding to invert the whole screen
22:22:06 <ehird> which can be a godsend
22:22:14 <ehird> (and makes tons of images look very, very creepy)
22:22:16 <ais523> there's probably one over here too, I'll check
22:22:29 <ehird> ais523: compiz doesn't count, they just took os x and ripped it off wholesale, badly :p
22:22:54 <ais523> s-N to invert the window, s-M to invert the screen
22:23:09 <ais523> and no, they ripped off OSX wholesale, but pretty well
22:23:44 <ehird> very well != just as good
22:24:58 <ehird> ais523: So I am about to create the first file.
22:25:27 <ehird> ais523: Oh, and, MIT license.
22:27:08 <ehird> ais523: I just pushe
22:28:00 <ais523> or init, for that matter?
22:28:16 <ehird> do you not have the repo yet?
22:28:19 <ehird> $ git clone git://gitorious.org/underlambda/mainline.git
22:28:25 <ehird> $ git remote add origin git@gitorious.org:underlambda/mainline.git
22:28:54 <ais523> first command worked, second didn't
22:29:03 <ais523> neither with @ nor ://
22:29:11 <ehird> ais523: the second has to
22:29:14 <ehird> it's juts adding a remote
22:29:24 <ehird> ais523: you need to do it in the repo
22:30:17 <ehird> ais523: ok, first things first - header file
22:30:20 <ehird> i don't think we'll need multiple
22:30:37 <ehird> how do you do your include guards, out of curiosity?
22:30:48 <ais523> ehird: I normally don't do include guards
22:30:56 <ehird> ais523: well that's suicidla
22:30:59 <ais523> they shouldn't be necessary in well-written programs
22:31:08 <ehird> headers are free to include others to use their types
22:31:12 <ehird> but that's an implementation detail
22:31:18 <ehird> and things using those headers shouldn't need to know that
22:31:19 <ais523> also, generally my headers work when included multiple times anyway
22:31:26 <ehird> (and then know not to include that header again)
22:31:38 <ais523> if they're just #defines and prototypes, there isn't a problem
22:31:57 <ehird> ais523: hmm, the parse tree can be a data type can't it
22:32:07 <ais523> what do you mean by that?
22:32:20 <ehird> ais523: shall we implement the highest layer and the lowest layer as one?
22:32:24 <ehird> that is, just a regular interp
22:32:27 <ehird> instead of a layer of compilers
22:33:24 <ais523> yes, that's whay I intended to happen
22:33:35 <ehird> so we don't even need to think about layer
22:33:50 <ais523> um... (.*?), but it doesn't matter in this case
22:34:09 <ais523> the layers exist for more limited implementations that can't manage the whole thing in one go
22:34:12 <ehird> ais523: should we even have the word 'layer' in the code?
22:34:25 <ehird> i think we should just mentally fnord all mentions of 'layer' in the spec ;)
22:34:27 <ais523> my reference interp only has it in comments, to explain where things come from
22:34:41 <ehird> ais523: ok and now we need to define the data types
22:34:44 <ais523> for instance, layer 5 rules are preprocessor rules, whereas the other rules control run-time behaviour
22:34:45 <ehird> i assume that church numerals aren't sane
22:34:48 <ehird> so we need multiple types
22:35:00 <Sgeo> Which is easier, Qt or GTK?
22:35:06 <ais523> yes, the only data type in theory is the function from a stack of functions to a stack of functions
22:35:15 <ais523> Sgeo: I think GTK, but not by much, they're both pretty easy
22:35:16 <ehird> Sgeo: you've used c for a few days
22:35:21 <ehird> Sgeo: also, Qt is easier
22:35:45 <ais523> however, I recommend integer and list as data types
22:35:51 <ehird> ais523: and string
22:35:53 <ais523> probably string too, which is a list of integers
22:35:59 <ehird> ais523: no, a string is not a list of integers
22:36:04 <ehird> it's not a list of 0-255s
22:36:12 <ehird> ais523: these integers are unicode codepoints right
22:36:19 <Sgeo> I tried writing a GTK program while being bored in my Database class, and I couldn't remember the function to make a box
22:36:25 <ehird> even going that route
22:36:30 <ehird> it makes things like strlen nigh-on impossible
22:36:31 <ais523> well, I leave charset undefined, but they're meant to allow unicode
22:36:32 <ehird> please seperate out strings
22:36:35 <Sgeo> I guess most programmers actually have references w/ them anyway, and have more practice,,
22:36:43 <ais523> ehird: you use the list length function to do a strlen
22:36:50 <ehird> ais523: can't work consistently with unicode
22:36:59 <ais523> ehird: you don't store octets!
22:37:02 <ehird> two equivalent strings can be different lengths of codepoints
22:37:07 <ais523> you store the raw unicode values, including the ones above 256
22:37:15 <ais523> if someone's using combining characters that's their fault
22:37:27 <ehird> ais523: heh, nice attitude
22:37:35 <ehird> reminds me of 'if someone's using unicode that's their fault'
22:37:40 <ehird> unfortunately it's a crappy attitude :)
22:37:51 <ais523> ehird: combining characters should add extra to the length of the string for all sorts of reasons
22:38:07 <ais523> partly because editing them can be done by editing the combining character and the character it combines to separately
22:38:12 <ais523> so you can put the cursor between them
22:38:30 <ais523> and partly because otherwise you could have infinitely long characters by overprinting multiples of the same combiner
22:39:18 * Sgeo downloads a LiveCD w/ KDE 4.0.4
22:43:46 <ais523> Sgeo: a LiveCD of what?
22:43:53 <ais523> KDE doesn't run without some OS supporting it
22:44:10 <Sgeo> http://home.kde.org/~binner/kde-four-live/
22:44:13 <ais523> or is it designed to be able to run KDE from assuming you already have a particular OS running?
22:45:31 <ehird> things are still broken
22:45:34 <ehird> if you don't have special strings
22:45:44 <ais523> ehird: how is an interp meant to tell if something's a string or not?
22:45:55 <ehird> ais523: special syntax
22:46:00 <ehird> just like you can't S functions consistently
22:46:04 <ehird> you have to use a list
22:46:10 <ehird> ais523: you already have one element of that
22:46:20 <ais523> what do you mean "you have to use a list"
22:46:24 <ais523> of course you can S functions
22:46:29 <ehird> ais523: you told me off for doing it
22:46:29 <ais523> the interp just prints out the function
22:46:32 <ais523> nothing hard about that
22:46:35 <ehird> you said it would probably say <function>
22:46:39 <ais523> you weren't printing out functions, though
22:46:39 <ehird> in a reference interp
22:46:45 <ais523> you were trying to print out their source
22:46:46 -!- timotiis_ has changed nick to timotiis.
22:46:57 <ais523> printing out a function is a perfectly good, defined possibility
22:47:06 <ehird> ais523: ok, but special syntax for strings isn't evil
22:47:07 <ais523> it may not be human-readable (although it might be)
22:47:10 <ehird> "abc" can just ... make a string
22:47:12 <ais523> but you can read them back in again
22:47:17 <ais523> and "abc" does just make a string
22:47:21 <ehird> & lets unicode support be exemplary
22:47:26 <ais523> but its equivalent to a list of characters
22:48:00 <ais523> that way, list-manipulation and string-manipulation functions are the same thing
22:48:43 <ehird> Doesn't work with unicode
22:48:54 <ehird> you have to do it like haskell
22:49:04 <ais523> ehird: there are only so many characters on a keyboard
22:49:24 <ehird> ais523: so multi char names
22:49:44 <ehird> you'll need em eventually
22:49:51 <ais523> maybe we can have, say, A be a command for extracting the first element of a list, and Á be a command for extracting the first char of a Unicode string
22:49:52 <Sgeo> How is unicode stuff stored in C?
22:50:03 <ais523> but not very successfully
22:50:10 <ais523> nobody seems to support or use them properly
22:50:19 <Sgeo> So what do people use?
22:51:04 <ais523> ehird: combining characters are just wrong in terms of making sense
22:51:05 <ehird> Sgeo: but most importantly? Stop whatever you're doing and go /learn c/
22:51:11 <ehird> ais523: tough. they're here.
22:51:16 <ais523> what happens if you read in input and it has an unmatched combining character at the start?
22:51:22 <ehird> ais523: tough. they're here.
22:51:22 <ais523> most programs existing today could handle that
22:51:26 <ais523> your proposal couldn't
22:51:54 <ais523> you're trying to treat combining characters and the characters they combine with as one char
22:51:59 <ais523> but nothing treats them like that
22:52:27 <ais523> the correct Underlambda way to handle this, anyway, would be for a combining char + the char it combines with to actually be one char
22:52:35 <ais523> just assign it a massively large integer as a codepoint
22:52:39 <ais523> then strings will be lists again
22:52:54 <ais523> and you could have conversion functions to and from other encodings, if needed
22:53:24 <ehird> ais523: not what i said :P
22:54:07 <ais523> you'd want duplicate commands for everything
22:54:14 <ais523> that's not good style at all
22:54:24 <ais523> it's as bad as the strtof strtod thing
22:55:39 <ais523> so, data types: function, number, list
22:56:05 <ais523> they're functions too, but special-casing them will add a lot of memory efficiency, probably, if there's some easy way to do it
22:56:24 <ehird> ais523: we need to display them as functions
22:56:24 <ais523> Underlambda numbers are nonnegative integers the way I've done it, though
22:56:24 <ehird> so why not function?
22:56:29 <ais523> I may need to add a floating-point type
22:56:33 <ehird> ais523: also, let's maybe do CPS
22:56:33 <ais523> ehird: everything's a function
22:56:36 <ehird> then continuations are cheap
22:56:51 <ais523> ehird: an Underlambda continuation is expensive as source, though
22:57:10 <ais523> obliterate the current program and stack, recreate the stack, handle payload, run rest of program
22:57:15 <ais523> that's what the code amounts to
22:57:28 <ehird> ais523: aha but if you do cps
22:57:33 <ais523> and although that's what needs to be printed out, moving around multiple copies of the program would be insane
22:57:39 <ais523> it's much better to use a CPS continuation instead
22:57:45 <ais523> and convert that into a function if and when necessary
22:58:53 <ehird> CPS continuation = function..
22:59:17 <ais523> but can you print out source code for a CPS continuation?
22:59:42 <ais523> what I mean is, presumably we'll be throwing around a pointer or something like that as the continuation
22:59:52 <ais523> but will have to write the whole thing out when writing it to a file
23:00:15 <ais523> you could space-optimise by grouping data stack and call-stack in continuations, like C-INTERCAL does
23:00:18 <ehird> ais523: we won't make our c cps
23:00:35 <ais523> that is, use shallow copies of bits of the call and data stacks that are the same
23:00:49 <ais523> that saves a huge amount of memory
23:00:54 <ais523> but it's different from a standard function
23:01:45 <ehird> * ais523 (n=ais523@147.188.254.116) has left #ircnomic ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"")
23:02:07 <ehird> ais523: why did you leave
23:02:18 <ais523> oh, because I didn't want to have to think about ircnomic
23:02:28 <ais523> I'm in the middle of a storm at Agora as it is
23:02:51 <ais523> and it seemed dead for the night
23:02:56 <ais523> so I symbollicaly parted from it
23:05:09 <ais523> on another note, that interview questions thread on thedailywtf.com now has at least one Brainfuck version
23:11:52 <Sgeo> ais523, the important CFJ is 1932?
23:12:12 <ais523> maybe I should rejoin #ircnomic after all
23:13:56 <Sgeo> How are you allowed to make your judgement a contract?
23:14:03 <ais523> Sgeo: it's an equity case
23:14:17 <ais523> the judgement is a contract, according to the rules
23:15:29 <ehird> #esoteric SUBJECT SERIES: Programming misconceptions
23:15:34 <ehird> "Huffman encoding sucks. I wrote a program in high school that did it. Stupid algorithm doesn't even give you the same document back when you decode it!" -- reddit comment
23:15:51 <ais523> that's not a programming misconception, that's a bug
23:16:03 <ehird> ais523: in someone's brain ;P
23:16:28 <ais523> ehird: you should get the same document back after decoding, if the encoder and decoder are compatible
23:16:55 <ehird> this person doesn't realize that
23:17:08 <ais523> the fact that eirs didn't means that eir interpreter was buggy
23:17:24 <ais523> wow, it took me far too long to figure out that "eirs" was the correct pronoun
23:18:05 <ehird> i like singular they :|
23:18:18 <ais523> but I'm nomicing a lot at the moment
23:20:47 <ehird> ais523: 3 + 4 is the standard smalltalk test program
23:20:51 <ehird> IMO it should be 4 - 3
23:20:57 <ehird> since the parser might be going the wrong way ;)
23:21:10 <ais523> 3 + 4 should do something far more interesting than returning 7
23:21:20 <ais523> in INTERCAL, + is a list separator, sort of like , in most other languages
23:21:34 <ehird> ais523: also, I'm probably going to write a ruby nomic
23:21:42 <ehird> would you participate? you can pick up perl from perlnomic so..
23:21:54 <ais523> "you can pick up perl from perlnomic"
23:22:16 <ais523> and I probably wouldn't participate in a rubynomic just because that would be too many nomics at once, and I'm busy with exams at the moment
23:22:26 <ehird> ais523: ihope doesn't know perl
23:22:31 <ehird> and e participates in perlnomic
23:22:44 <ais523> e participates in the bite game
23:22:49 <ehird> also, rubynomic would probably be really trivial
23:22:51 <ais523> and votes when people tell em to
23:22:55 <ehird> so maybe 5 minutes a day :-P
23:23:16 <ais523> not much fun in a nomic if you can't spend several weeks planning scams
23:24:21 <ehird> ais523: scams would be easy!
23:24:31 <ais523> ehird: scams shouldn't be easy
23:24:37 <ais523> an easily-scammable nomic could be in trouble
23:25:17 <ais523> unless you introduce a strong tradition of using scams to fix emself
23:25:35 <ais523> standard protocol when you find a way to do anything is to give yourself a few points and fix the flaw at the same time
23:25:55 <ais523> in longer-running nomics, winning the game at the same time is also acceptable as long as you restore the ruleset to someting sane
23:26:23 <ehird> <ais523> unless you introduce a strong tradition of using scams to fix emself # that sounds fun
23:26:37 <ehird> every 2nd proposal a scam :-)
23:26:58 <ais523> ehird: you don't understand the art of nomicish scamming
23:29:59 <Sgeo> What does the tradition say about scams that can't be exploited to fix emselves?
23:30:16 <ais523> Sgeo: that particular tradition doesn't bind em
23:30:29 <ais523> but it's bad form to repeat the same scam more than once in any case
23:30:34 <ais523> even if someone else did it first time
23:30:47 <Sgeo> Didn't that happen with the Walrus scam?
23:30:47 <ais523> generally scams will be fixed by voting on a rules-change
23:30:57 <ais523> the same thing happened in IRCnomic too
23:31:00 <Sgeo> A copycat scam soon emerged, and people voted it down?
23:31:02 <ais523> and it was the same scam...
23:31:10 <Sgeo> ais523, hm, when, and why don't I remember?
23:31:17 <ehird> Compare: http://beta.reddit.com/, http://sp.reddit.com/reddit2mockup.jpg
23:31:21 <ais523> near the start of the most recent game, after the suffusion
23:31:35 <ais523> I submitted a proposal activity-bonus that gave people points for voting FOR it
23:31:49 <ais523> then someone else (it might even have been you) tried the same thing and people voted AGAINST it
23:31:56 <ehird> but people voted for it
23:32:08 <ais523> maybe there were three attempts, then
23:32:16 <ais523> ISTR the first one is the only one that passed, though
23:33:22 <ais523> do you have logs for that?
23:33:27 <ehird> i think mine predates yours
23:33:29 <ehird> ais523: nope wiped
23:33:39 <Sgeo> Logs wiped? Howwhy?
23:33:57 <ehird> i wiped my machine
23:35:35 <ais523> my logs only go back to April 21
23:36:42 <ehird> ais523: when did ircnomic start
23:37:39 <ihope> I could find the beginnings of ircnomic.
23:38:20 <ais523> ah, I seem to have the whole thing
23:38:34 <ais523> April 21 was the start of the original ruleset after the first suffusion
23:38:40 <ihope> [2008-04-20 15:22:33] <ihope> Rule 1: Anyone may propose a change to the rules and vote either FOR or AGAINST a proposed change. After five minutes, if more than half of the votes are FOR the proposed change, it occurs.
23:38:43 <ais523> which is when I first came to hear of it
23:39:55 <ehird> the original suffusion was, i seem to remember, epic
23:39:57 <ais523> ehird: looking through my logs, it seems that my activitybonus passed, and then you proposed to give /yourself/ points (and nobody else), and that failed
23:40:24 <Sgeo> Did it involve the rule that, if it became negative, would knock out the other rules?
23:40:24 <ehird> ais523: nah, i did another one soon
23:40:30 <Sgeo> Or was that after the first suffusion?
23:40:49 <Sgeo> I don't think I was around for the first suffusion, was I?
23:41:28 <ehird> me, ihope, kyevan, some others
23:41:34 <ehird> it was very oldskool.
23:44:15 <ehird> reddit lets you create your own reddits
23:44:56 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
23:45:05 <ihope> Pancake is the best nomic!
23:45:16 * ihope induces ehird to participate in it
23:46:04 <ihope> If you want to Suggest that it be renamed, go ahead. :-P
23:47:19 * ihope ponders an improvement that could be made to those light, fluffy Pancake rules
23:57:15 <ehird> ihope: Would you participate in a smallnomic?
23:57:54 <ihope> I take it there's a way for Smalltalk to be a nomic.
23:59:04 <ehird> ihope: Yeah .. by writing a nomic app for it :P
23:59:20 <ehird> Basically, it's Perlnomic, except instead of editing files, you edit classse and methods
00:00:04 <ihope> By which I do not mean anything "Numix" has likely referred to in the past.
00:01:02 <ehird> ihope: Is that good or bad
00:01:39 <ihope> Make that "nomic with root access".
00:02:57 <ehird> ihope: Huh? I don't get it.
00:03:02 <ehird> What are you trying to say
00:03:26 <ihope> I want a nomic with root access to some (virtual, I hope) machine?
00:04:17 <ehird> ihope: Sure, that's easy enough.
00:04:23 <ehird> Step 1. Take smallnomic
00:04:26 <ihope> I would be interested in that.
00:04:28 <ehird> Step 2. Make a virtual machine
00:04:33 <ehird> Step 3. Run smallnomic on that machine as root.
00:04:40 <ehird> Then you can just build a little shell into smallnomic.
00:06:26 <ihope> Telnet access to a bashy thing and all that would be nice.
00:06:54 -!- timotiis has quit (Connection timed out).
00:07:58 <ehird> ihope: Then it's not a nomic.
00:08:02 <ehird> Then it's just free-for-all!
00:08:18 <ihope> Not telnet access to a root account, surely.
00:10:13 <ehird> ihope: What, exactly, do you want?
00:10:21 <ehird> A nomic played by a regular user account, that proposals are scripts run as root?
00:11:15 <ehird> ihope: So, like, you have
00:11:19 <ehird> /usr/nomic/bin/propose
00:11:39 <ehird> Title: Rename 'propose' to 'monkey'.
00:11:56 <ehird> #!/usr/bin/env python
00:12:03 <ehird> # stuff to move 'propose' to 'monkey'
00:12:10 <ihope> And presumably, propose copies the proposal to a safe place.
00:12:10 <ehird> ihope: and /usr/nomic/* is root-editable-only?
00:12:27 <ehird> ihope: Well, it's interesting.
00:12:32 <ehird> You'd need to forbid network connections
00:12:42 <ehird> And somehow still hook into it for telnet
00:13:02 <ehird> ihope: Yes, because otherwise seriously illegal things could happen
00:13:05 <ehird> And you'd be responsible
00:13:24 <ihope> Stick a disclaimer on it, then. :-P
00:13:31 <ehird> ihope: Legally meaningless for this.
00:13:40 <ehird> If someone downloads something illegal with it, you're fucked.
00:14:04 <ihope> Just like if I download something illegal via Comcast, Comcast is... in trouble?
00:14:55 <ehird> ihope: that's different
00:15:07 <ehird> but if they refuse to terminate your account it's possible that they are in trouble
00:15:10 <ehird> an isp is not a nomic
00:15:12 <ihope> My thought was to firewall all ports except 23, 8080, and the Private Ports.
00:15:20 <ihope> Though obviously, that wouldn't help here.
00:15:50 <ehird> ihope: Just run it in a VM and don't give it a network device.
00:15:50 <ihope> Why can't our nomic have the same legal status as an ISP?
00:15:58 <ehird> Then hook into that VM and run a telnetd outside it.
00:16:02 <ihope> That works, I guess.
00:16:02 <ehird> ihope: Because we're not an ISP
00:16:29 <ihope> Allow incoming connections on ports 23, maybe 80, probably 8080, possibly 6667, and nothing outgoing?
00:16:31 <ehird> Besides, it's not like there'd be many good uses for a networky thingy.
00:16:37 <ehird> ihope: Well, here's my idea.
00:16:57 <ehird> [ VM - no networking AT ALL ] <-- [ machine it's running on, is running a telnetd hooking directly into the VM ]
00:17:02 <ehird> you connect to this one -----------------------------------^
00:17:08 <ehird> which gets to ^ this one
00:19:42 <ihope> Maybe we should just find a hosting service in Zimbabwe. :-P
00:21:35 <ehird> ihope: smallnomic will be fun, because people will have proposals to add crazy things like refactoring tools
00:23:20 <ihope> Now, don't those who host virtual private servers have immunity like an ISP?
00:23:33 <ehird> ihope: Nope. And their TOS specifically say you're responsible.
00:23:42 <ehird> But they're responsible too.
00:23:44 <ehird> So it's just a guard, really.
00:24:15 <ihope> So the law is silly, then.
00:24:37 <oklopol> aren't you in different countries?
00:24:40 <ehird> ihope: What else is new?
00:24:44 <ehird> oklopol: Going by US law here.
00:24:50 <ehird> Since it's really all that matters when the servers are in the US.
00:24:51 <ihope> ehird: where are you?
00:25:05 <ehird> ihope: the land of rain and crappy techno and indie bands
00:25:15 <ihope> We should find a country where the laws aren't silly.
00:25:32 <ihope> If we can't find it, we'll have to found it.
00:25:41 <oklopol> unless we already found it.
00:26:17 <ehird> Ihopethisisagoodname
00:26:24 <ihope> We just have to find an uninhabited thingy that we can claim. Or anything else we can buy.
00:26:31 <ehird> government: ihope, oklopol, me, gregorr, ais523
00:26:39 <ehird> honorary government: sgeo
00:26:50 <oklopol> oh you won't like me with authoritah.
00:26:54 <ihope> Maybe we should host our stuff with HavenCo. :-P
00:27:04 <Sgeo> Why am I only honorary?
00:27:14 <ehird> Sgeo: i'm scared you'll break things
00:27:22 <ehird> but hopefully fake power will keep you happ
00:27:57 <ehird> (psst, Slereah_, time to make a joke)
00:28:09 * Sgeo wants real power
00:28:10 <ihope> Let's give Agora power over something. :-P
00:28:52 <oklopol> well, the most logical choice would be to let me govern all.
00:29:37 <ehird> proposals must be type safe!
00:31:22 <ihope> First-order-logicnomic. Propose something be done if and only if a certain Turing machine halts.
00:32:26 <ehird> ihope: Very funny :P
00:33:02 <ehird> ihope: Any opinions on type-safe-haskellnomic?
00:33:32 <ihope> AInomic. "I propose that ehird be awarded a few points."
00:34:22 <ihope> "If this is an apple, every player who voted FOR this proposal gets 10 points. Otherwise, every player who voted AGAINST this proposal gets 10 points."
00:34:33 <ehird> comgimme some thread titles
00:37:25 <ihope> ehird, do you have a good way of hosting servery stuff?
00:37:37 <ehird> I have a slicehost.
00:37:44 <ehird> I have root. I can do whatever I want with it.
00:37:55 <ehird> - Within the law, of course.
00:37:59 <ehird> US law, specifically.
01:20:51 -!- SimonRC has quit (Read error: 110 (Connection timed out)).
01:21:36 <ehird> Bye for today. :-)
01:22:23 -!- ehird has quit (Remote closed the connection).
01:43:13 -!- lament has quit (Read error: 110 (Connection timed out)).
01:48:14 -!- lament has joined.
01:57:28 -!- SimonRC has joined.
01:58:59 -!- poiuy_qwert has joined.
02:15:33 -!- Tritonio has quit (leguin.freenode.net irc.freenode.net).
02:15:33 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
02:16:13 -!- Tritonio has joined.
02:16:13 -!- cmeme has joined.
03:12:56 -!- poiuy_qwert has quit (Read error: 104 (Connection reset by peer)).
03:13:06 -!- Tritonio has quit (Remote closed the connection).
03:45:58 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
03:47:50 -!- bsmntbombdood has joined.
05:23:21 -!- boily has joined.
05:27:03 -!- boily has quit ("Schtroumpf!").
05:32:13 -!- Slereah- has joined.
05:50:46 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
06:04:06 -!- Sgeo has quit (Remote closed the connection).
06:28:55 <GregorR> OHHHHHHHHHHHHHHHHHHHHHHHHHHH
06:29:04 <GregorR> IT QUAD CORE AND SO CAN'T YOU
06:29:09 <GregorR> IT SO FAST AND YOURS SO SLOW
06:29:19 <GregorR> LOOK IT PROCESS WATCH IT GO
07:01:16 <lament> quad core sounds pretty esoteric
07:34:21 -!- puzzlet has joined.
07:34:50 -!- puzzlet has quit (Client Quit).
07:36:32 -!- GreaseMonkey has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:27:41 -!- GregorR has quit (Read error: 110 (Connection timed out)).
08:27:46 -!- EgoBot has quit (Read error: 110 (Connection timed out)).
08:37:04 -!- GregorR has joined.
08:37:35 <GregorR> When I get my new system up and running, my old system will need to be repurposed.
08:37:59 <GregorR> Anybody have a suggestion for an experimental/weird/esoteric OS for it?
08:39:48 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
08:40:11 -!- Slereah- has joined.
09:14:29 * oklopol thought everyone had quad core
09:14:46 <oklopol> except me of course, even this one is too fast for me
09:47:25 <Slereah-> What's the definition of an OS exactly?
09:48:24 <oklopol> that when you press buttons it does smth
09:49:25 <Slereah-> Does smth means "receive bacon"?
09:50:30 <oklopol> i had a dream where my ex gf was begging for sex, and i said "yes", but my current one, who had just done a crazy killing spree with me, as we were trying to escape from the russians, happened to be alive still, to my surprise, so i went to tell my ex there was no way
09:50:57 <oklopol> and then i didn't even fuck her :|
09:51:27 <oklopol> Slereah-: it is a something
09:52:14 <oklopol> http://en.wikipedia.org/wiki/List_of_Teletubbies_episodes <<< i. need. to. see. now.
09:55:12 <oklopol> if anyone knows where to find those, do inform me, i'm dying to have a tt marathon
09:55:26 <Slereah-> oklopol : Have you tried the internet?
10:35:34 -!- GreaseMonkey has quit ("Unisex.").
10:48:18 -!- Iskr has joined.
11:02:05 -!- ais523 has joined.
11:06:33 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
11:06:55 -!- Tritonio has joined.
11:15:45 -!- Corun has joined.
13:08:00 -!- ais523 has quit (Remote closed the connection).
13:19:34 -!- Slereah_ has joined.
13:19:34 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
13:36:29 -!- Corun has quit ("This computer has gone to sleep").
13:54:00 -!- ehird has joined.
13:55:06 -!- ehird has quit (Remote closed the connection).
13:55:09 -!- ehird has joined.
14:05:09 <ehird> nomic.st is available
14:19:57 -!- pikhq has quit (Read error: 110 (Connection timed out)).
14:24:09 -!- jix has joined.
14:31:32 -!- ais523 has joined.
14:44:44 -!- timotiis has joined.
14:59:28 <ais523> ehird: AnMaster: C-INTERCAL development snapshot is now up at http://eso-std.org/darcs/c-intercal
15:00:14 <ehird> ais523: here's how to advertise it
15:00:18 <ehird> $ darcs get http://eso-std.org/darcs/c-intercal
15:00:28 <ais523> ehird: have done already
15:00:41 <ais523> I've already applied fixes for the bugs that #esoteric denizens have reported
15:00:45 <ais523> as well as several others
15:00:58 <ehird> ais523: advertised it where?
15:01:10 <ais523> there are a couple of new features there too
15:01:12 <ehird> ok, that's cool :-)
15:01:17 <ehird> i expect about 3 people will use it
15:01:17 <ais523> so the provisial version number is 1.29
15:01:24 <ais523> s/provisial/provisional/
15:01:44 <ais523> I wasn't sure whether to increment the major or minor version number, so in true INTERCAL style I incremented both
15:01:56 <ehird> ais523: your announcement would be funnier without this:
15:01:58 <ehird> 'Come to think of it, INTERCAL should not be used in production
15:02:13 <ais523> ehird: may as well cover myself legally
15:02:37 <ais523> I don't know how many people would try to use INTERCAL in production, but there are sufficiently many idiots on the Internet that it's worth making sure
15:02:51 <ehird> ais523: 'i tried intercal .. reminded me of cobol! no digg'
15:03:06 <ais523> ehird: ever seen VHDL?
15:03:09 <ehird> 'how can anyone read this crap??? stupid.. ruby is far better' (+3423 diggs)
15:03:20 <ais523> it reminds me a bit of INTERCAL, but it isn't that bad as a language
15:03:38 <ehird> ais523: PLEASE DO INCREMENT THE VARIABLE COBOL BY ONE GIVING THE VARIABLE COBOL
15:03:43 <ais523> it's almost an esolang, though, even though it's used for a lot of important programs
15:03:49 <ais523> ehird: ever seen "Hello, world!" in VHDL?
15:03:53 <ais523> it's worse than in Java
15:03:59 <ehird> ais523: well, it's a hardware description language
15:04:13 <ais523> it's more the amount of verbiage that's needed to do anything
15:04:22 <ais523> I think it's last on anagolf, or if not last at least near the bottom
15:04:35 <ehird> ais523: anyway, i've been working on smallnomic
15:04:44 <ehird> not in the actual editing sense, but in the 'let's play with shiny seaside' sense
15:06:11 <ais523> http://ghdl.free.fr/ghdl/The-hello-word-program.html
15:06:30 <ais523> also, VHDL has an interesting control flow
15:06:40 <ais523> it's non-local but can have bits in sequence, just like INTERCAL
15:07:33 <ais523> really, they should have written a program to flash an LED, that's the hardware equivalent of hello, world
15:13:40 <ehird> ais523: so, smallnomic.
15:13:41 <ehird> it will be awesome.
15:14:12 <ais523> depends on how many people are involved
15:14:24 <AnMaster> <ais523> ehird: AnMaster: C-INTERCAL development snapshot is now up at http://eso-std.org/darcs/c-intercal
15:14:39 <AnMaster> however *goes to install darcs again*
15:15:24 <ehird> ais523: a few, i imagine
15:15:37 <ehird> i imagine one or two squeakers/seasiders and one or two nomicers
15:15:45 <ehird> so, perlnomic kind of activity
15:15:51 <ehird> maybe a bit more, since this'll be easier to do
15:15:56 <ehird> (you can just quickly amend a method)
15:16:05 <ais523> ehird: (if enough people vote on it)
15:16:54 <ehird> ais523: obviously it'll be based on the number of total users...
15:17:18 <ais523> I kind of like the PerlNomic system, actually
15:19:31 <ais523> yes = only way to allow a proposal through, no = disallow it, prevent amending, and punish the submitter, abstain = disallow the proposal but allow amendments and withdrawals without penalty
15:19:39 <ais523> but it should really be called something other than 'abstain'
15:21:14 <ehird> ais523: heh, seaside has fancy lightboxes built-in
15:21:17 <ehird> if you add the SULibrary
15:21:25 <ehird> self lightbox: aWATask
15:22:23 <ehird> ais523: the fade-the-screen-to-grey-and-overlay-a-box-on-top-of-it
15:22:26 <ehird> mostly annoying, sometimes useful
15:22:38 <ehird> ais523: yes, but for the web
15:22:51 * ais523 imagines a web-based VPN for a moment
15:22:54 <ehird> ais523: the most common usage is for image on-clicks
15:22:56 <ehird> which is kinda annoying
15:22:57 <ehird> see: http://www.huddletogether.com/projects/lightbox/
15:23:09 <ehird> but i can see it useful in smallnomic
15:23:13 <ehird> when you do 'self inform: 'foo'' in seaside
15:23:17 <ehird> it replaces the whole current component
15:23:21 <ehird> and then an OK brings it back
15:23:23 <ehird> which is kinda ugly
15:23:31 <ehird> a lightbox could just grey out the smallnomic screen and show the confirmation in the middle
15:23:35 <ehird> then go back after an OK
15:23:45 <ais523> wouldn't you have to aim it at something other than self, in that case?
15:24:28 <ehird> WAComponent>>lightbox: expects a WATask
15:24:37 <ehird> so we'll have to do some monkeypatching to add a lightbox for blocks
15:25:14 <ais523> there should really just be a generic inform message that always aims at the same global-like object, sort of like alert in JavaScript
15:27:15 <ehird> we can probably do that
15:27:18 <ehird> remember? you can change anything in smalltalk
15:27:27 <ais523> s/smalltalk/smallnomic/
15:27:27 <ehird> & brutally modifying other package's methods is good practice :-)
15:27:34 <ehird> ais523: latter only because the first
15:27:46 <ais523> ehird: there should be a message you can send to an object to tell it to change its own methods
15:27:55 <ais523> actually, knowing Smalltalk, there probably is
15:29:06 <ehird> ais523: there is, i believe
15:29:17 <ehird> ais523: this is the language where 'true become: false' doesn't throw an error
15:29:23 <ehird> (unless crashing is throwing an error i guess)
15:29:33 <ais523> need that necessarily crash?
15:29:46 <ehird> ais523: yes, since an awful lot of things use boolean values
15:29:47 <ais523> if you've written your code carefully enough, it should be able to cope with true becoming false
15:29:58 <ehird> ais523: if you're joking, you're being very funny
15:30:02 <ehird> if not, i want to kill you
15:30:14 <ais523> I was joking, pretty much
15:30:25 * ais523 wonders if you could compile Forte into Smalltalk
15:32:42 <ehird> ais523: no, because the lower layers kinda depend on numbers
15:33:17 <ais523> ehird: are those lower layers unavoidably needed in Smalltalk? Is it possible to write a program without them, or are they a necessary part of the language?
15:34:06 <ehird> ais523: you could write a program without them but you'd end up reimplementing them or you wouldn't be able to write anything useful
15:34:17 <ehird> ais523: what you could do -
15:34:22 <ehird> which just holds an integer
15:34:28 <ehird> aForteInteger become: anotherForteInteger
15:34:29 <ais523> yes, I was thinking along those lines
15:34:31 <ehird> ais523: then the integers themselves are okay
15:34:34 <ehird> but the forte integers change
15:34:35 <ehird> that would work fine
15:34:37 <ais523> wouldn't you need an infinite number of them?
15:34:50 <ehird> ais523: no, just create them when you need them
15:34:54 <ehird> and cache them in a dictionary
15:35:10 <ais523> OK, so it would be similar to interpreting Forte
15:35:12 <ehird> 'course then you could just change the value in the dictionary
15:35:50 <ehird> ais523: one thing about smalltalk i'm finding is that it's terribly fun
15:35:56 <ehird> there's no 'best practices' malarky for the most part
15:36:05 <ehird> if you wanna change some behaviour in a framework to how you like it, go ahead
15:36:17 <ehird> Monticello recognizes your monkey patches and even version controls them
15:36:26 <ais523> Smalltalk really needs to be better known
15:36:35 <ais523> I may even learn it at some point
15:36:42 <ais523> I know vaguely how it works, but have never written in it
15:38:16 <ehird> ais523: this is my fisrt real smalltalk app!
15:38:41 <ehird> i never really liked hand-holding frameworks, but half of the html in these pages is completely generated by seaside
15:39:41 <ehird> ais523: yay! lightboxBlock: works
15:39:48 <ehird> self lightboxBlock: [:e | e confirm: 'really?']
15:40:11 -!- Iskr has quit (Read error: 110 (Connection timed out)).
15:43:15 -!- Iskr has joined.
15:52:26 <ehird> ais523: one of the hardest things will be duplicating the smalltalk editor in html :-P
15:52:32 <ehird> first thing i'll do is make the tab key insert a real tab
15:52:38 <ehird> (squeak actually uses real-live tabs for indentation!)
15:52:50 <ehird> (this is all nice and fine because of its closed-world view, it can be so idealistic)
15:52:55 <ehird> and then make tabs display as 4 spaces
15:54:03 -!- timotiis has quit (Read error: 110 (Connection timed out)).
15:54:22 <ehird> <ehird> RandalSchwartz: all editors suck
15:54:22 <ehird> <ehird> s/editors/software/
15:54:22 <ehird> <ehird> s/suck/sucks/
15:54:22 <ehird> <ehird> s/software//
15:54:22 <ehird> <ehird> s/all/everything/
15:59:30 <ehird> ais523: you'll like this,
15:59:32 <ehird> smalltalk has no statements
16:00:04 <ais523> although assignment's an expression in many langs with separate expressions and statements
16:00:50 <ehird> ais523: and, of course, smalltalk has no syntax for classes or anything
16:00:58 <ehird> (even the class creation is an >expression<)
16:01:02 <ehird> you just send a message:
16:01:14 <ais523> ehird: yes, I really do like that sort of style
16:01:17 <ehird> Class>>subclass:instanceVariableNames:classVariableNames:poolDictionaries:category:
16:01:20 <ais523> Smalltalk is elegant in the ais523 sense
16:01:50 <ehird> ais523: and the ehird sense
16:02:03 <ais523> so it's doubly elegant
16:02:27 -!- Iskr has quit (Read error: 110 (Connection timed out)).
16:03:23 -!- Iskr has joined.
16:16:23 <ehird> ais523: seaside is insufferably fun
16:21:08 <ehird> ais523: ok, some people in #seaside are dumb
16:21:12 <ehird> ssastre> so what is you question then?
16:21:12 <ehird> <ehird> ssastre: how do i, given a regular form with a submit button, change the button so that when the browser can do javascript, it runs my ajax updator and doesn't submit
16:21:13 <ehird> <ehird> but if we don't support JS, we just do it like it was before
16:21:16 <ehird> <ssastre> are you sure that is possible at all?
16:21:30 <ehird> that was like ... the second article anyone wrote after ajax was popularized :\
16:21:41 <ais523> it is possible, obviously
16:21:50 <ais523> the way you do it is to write the button as a normal submit
16:22:01 <ais523> and use JavaScript to change it to an AJAXy button once you load
16:22:13 <ehird> that's not how you do it
16:22:27 <ehird> <form ... onsubmit="doItAjaxy(); return false;">...</form>
16:22:31 <ehird> that's how you do it
16:22:39 <ais523> that's another way to do it
16:22:40 <ehird> (return false; = don't submit this)
16:22:45 <ehird> ais523: that's the most common, robust wya
16:29:09 <ais523> looks slightly ugly to me, but I can understand how that's robust and works
16:29:24 <ehird> ais523: that's why you write a js that sets it based on the form id
16:29:47 <ais523> the only thing that could break it that I can think of would be a browser that supported a scripting language, but didn't support JavaScript, and how many of those are there?
16:33:48 <ehird> ais523: should I make the counter shared across users?
16:34:07 <ais523> it doesn't do anything useful anyway
16:34:38 <ehird> ais523: just to toy around with updating it via ajax
16:35:02 <ais523> ehird: what about race conditions?
16:36:43 <ehird> ais523: hey, my 'the most pointless website ever' didn't care about 'em
16:36:47 <ehird> but then it didn't support decrements
16:37:00 <ais523> and wasn't the counter per-user?
16:37:12 <ais523> although you had per-user totals
16:37:14 <ehird> that's why it had highscores, and the count got above 2 million
16:42:37 <ehird> i'm going to implement a SNComponent
16:42:47 <ehird> ais523: which requires things like a 'component slug'
16:42:55 <ehird> ais523: so if it's 'bite', you get /nomic/bite?_k=asdasd
16:43:01 <ehird> ais523: so that all entry points have unique urls
16:43:23 <ehird> ais523: good idea?
16:45:25 <ehird> should I make the slug part of the subclassing call?
16:45:42 <ehird> SNComponent subClass: #SNFoo instanceVariblahblah: ...; slug: 'bite'; ...
16:47:53 <ehird> ais523: no opinions?
16:48:15 <ais523> and I'm not that interested in making original design decisions for smallnomic
16:53:49 <ehird> ais523: i think i'll map classnames to urls
16:54:00 <ehird> SNScrapCounter inside Nomic-Scraps-Seaside:
16:54:05 <ehird> /scraps/scrap-counter
16:54:11 <ehird> you can just ignore me if you want
16:54:25 <ais523> I am, more or less, until you talk about something I'm more interested in
16:54:43 <ehird> ais523: how voting should work :P
16:55:00 <ais523> I like the PerlNomic system
16:55:07 <ais523> but it's a little hard to explain to new users
17:01:49 -!- ais523 has quit (Remote closed the connection).
17:02:06 -!- ais523 has joined.
17:06:59 <ais523> BTW, anyone here tried out the development C-INTERCAL snapshot yet?
17:07:24 <ais523> I know that it doesn't build first-time on Solaris (although it's always required a bit of manual hacking to work with Solaris lex)
17:07:30 <ais523> but it should be OK on most other platforms
17:07:40 <ehird> ais523: i don't think ANYBODY here uses solaris :-)
17:07:51 <ais523> ehird: I do sometimes when I don't have my laptop on me
17:07:57 <ais523> it's a choice between that or Windows
17:08:00 <ehird> ais523: why are your short descriptions one words?
17:08:07 <ehird> Add the floobdoob again.
17:08:07 <ais523> ehird: I did after a while
17:08:13 <ais523> but I was just getting used to darcs
17:08:23 <ehird> it's just convention to make them brief full sentences
17:08:43 <ais523> ehird: convention? Why did you expect C-INTERCAL to follow convention?
17:09:26 <ehird> you're the one who said that eso compilers don't have to be eso
17:09:33 <ehird> mv .c temp/lexer.c
17:09:34 <ehird> mv: cannot stat `.c': No such file or directory
17:10:28 <ehird> gcc -O2 -W -Wall -g -O2 -DICKINCLUDEDIR=\"/usr/local/include/ick-1.29\" -DICKDATADIR=\"/usr/local/share/ick-1.29\" -DICKBINDIR=\"/usr/local/bin\" -DICKLIBDIR=\"/usr/local/lib\" -DYYDEBUG -DICK_HAVE_STDINT_H=1 -I./src -I./temp -c -o temp/parser.o temp/parser.c
17:10:28 <ehird> rm -f temp/lexer.c
17:10:28 <ehird> mv .c temp/lexer.c
17:10:29 <ehird> mv: cannot stat `.c': No such file or directory
17:10:31 <ehird> make: *** [temp/lexer.c] Error 1
17:11:22 <ais523> something went wrong with the configure, then
17:11:28 <ais523> it's meant to move @LEX_OUTPUT_ROOT@.c
17:11:37 <ais523> but for some reason it didn't determine what the output root was
17:11:48 <ais523> try reconfiguring; what does it say about lex?
17:11:59 <ehird> checking for flex... no
17:11:59 <ehird> checking for lex... no
17:12:06 <ehird> ais523: prey tell why you don't die when they're not there?
17:13:15 <ais523> ehird: oh, it's to do with the prebuilt versions
17:13:28 <ais523> they're there specifically for DJGPP systems without lex
17:13:41 <ehird> ais523: well .. still
17:13:43 <ais523> but it seems they're interfering with the build from a dev snapshot
17:14:06 <ais523> I'll have to look into this
17:14:40 <ais523> in the meantime, install lex and reconfigure and it should work
17:15:08 <ais523> ehird: how did it end up working if the compile failed?
17:15:15 <ais523> are you using an old version of ick?
17:15:23 <ais523> maybe I should add a display-version command
17:15:59 <ehird> ais523: i installed flex
17:16:41 <ais523> actually, it's not the prebuilt versions interfering
17:17:04 <ais523> it seems that autoconf replaces the lex command with a null string if lex isn't found
17:17:14 <ais523> and the lex line isn't a syntax error...
17:17:30 <ais523> I should just get it to bail out if it can't find a version of lex, somehow
17:21:15 * ais523 downloads the autoconf documentation
17:21:28 <ais523> up to now, I'd been working on a really old version of the documentation, 'twould be nice to read a newer copy
17:31:42 <ais523> why did you say a random Smalltalk expression, then?
17:32:36 <ehird> ais523: that was not a random smalltalk expression
17:32:47 <ais523> why did you say that smalltalk expression, then?
17:36:55 <ehird> ais523: It is not a smalltalk expression
17:37:01 <ais523> what lang is it, then?
17:37:27 <ehird> (it's not even a valid smalltalk expr, fwiw)
17:37:35 <ehird> (it's :=... or right arrow <-, in ASCII as _)
17:37:39 <ais523> so what is A, then, and why is it 4?
17:37:48 <ais523> and I assumed = was comparison because assignment was :=
17:38:20 <ehird> but context={#A: 4}
17:38:25 <ehird> implies that i was assigning to a variable
17:38:33 <ehird> now continue prompting me with 'expr?'
17:39:09 <ehird> 'context?' was one
17:39:11 <ehird> ais523: not literally
17:39:24 <ais523> OK, but I have to have some idea of what you want me to do
17:40:57 <ehird> ais523: hmm, ask me 'context?' again
17:41:01 <ehird> my previous one was wrong
17:41:10 <ais523> this is as bad as #irp
17:41:18 <ehird> {a: 4, context: {a: 4, context: {a:4, context: [stack overflow]
17:42:06 <ehird> LinkedList(Context>>viewStack, Empty)
17:44:43 <ais523> but I thought you'd caused true to become false earlier
17:46:10 <ehird> recursive structure of Great Meaning
17:47:11 <ais523> twisty little passageway?
17:47:34 <ehird> a maze of them, all alike
17:47:59 <ais523> super(twisty little passageway)?
17:48:35 <ehird> [syntax error, expecting message send, found '(']
17:49:26 -!- timotiis has joined.
17:49:49 <ehird> stupid shit that I would never participate in
17:50:09 <ais523> well, that little conversation looked like a strange mix of Smalltalk and IRP to me
17:50:19 <ais523> as opposed to Smalltalk itself, that's an ugly concept
17:50:42 <ehird> ais523: you haven't got the cake yet
17:50:43 <ais523> but was getting bored of the thread
17:50:45 <ehird> oops, what did I just say!
17:50:59 <ehird> you still have a ton of objects you can send messages to
17:51:20 <ais523> (is that the right syntax?)
17:51:30 <ehird> ais523: maybe try just 'cake'
17:51:58 <ais523> How do you send a message and get a result back from it?
17:52:03 <ais523> I can't remember the syntax
17:52:08 <ehird> ais523: it's invisible
17:52:19 <ehird> 'thing message: arg'
17:52:25 <ehird> 'thing message: arg foo: arg' (message is actually message:foo:)
17:52:33 <ais523> cake becomes: delicious.
17:52:49 <ehird> [invalid 'a become: a']
17:52:57 <ehird> ais523: try the passageways and the nomic object
17:53:06 <ais523> nomic becomes: delicious.
17:53:23 <ehird> ais523: become: actually
17:53:31 <ehird> [Nomics are already delicious. Duh.]
17:53:39 <ehird> (try 'nomic players')
17:54:12 <ehird> [error: wrong result]
17:55:12 <ehird> [ais523 ping error]
17:55:12 <ais523> cake proposeContract: contractid1 players: {me, cake} text: "conspire against ehird"?
17:55:53 <ehird> [NiceTrys do not respond to proposeContract.]
17:55:59 <ehird> [And "" is a comment.]
17:56:21 <ehird> [Also, {me, cake} should be Set with: me with: cake]
17:56:32 <ehird> [And maybe you should change the id into a title.]
17:56:35 <ais523> that's kind-of clever, too
17:56:38 <ehird> ais523: yes, it actually sends with:with:
17:56:51 <ehird> with: a ^(self new) add: a; yourself
17:56:56 <ehird> with: a with: b ^(self new) add: a; add: b; yourself
17:56:56 <ais523> to a Set object, which is responsible for creating sets
17:57:08 <ehird> you can't do a 'variadic with' though
17:57:18 <ais523> Smalltalk ought to be classified as an esolang
17:57:22 <ais523> I don't care if it's used seriously
17:57:30 <ais523> it's just far too elegant to be a mainstream language
17:57:55 <ehird> but it's elegant *and* useful!
17:58:02 <ehird> ais523: thankfully, though, it's not mainstream ;)
17:58:22 <ais523> "mainstream" as in "not esoteric"
17:58:32 <ais523> but if it did become truly popular, what do you think would happen?
17:58:38 <ais523> Microsoft Visual Smalltalk.NET?
17:58:50 * ais523 shudders at the thought of Smalltalk bindings to the Win32 API
17:58:56 <ehird> ais523: they exist, I believe
18:00:11 <ais523> I mean, imagine sending a Smalltalk message to CreateProcessEx
18:00:21 <ais523> one other thing, what happens if you write the args in a different order?
18:00:24 <ehird> ais523: OK, that's evil
18:00:42 <ehird> thing part1: x part2: y part3: z
18:00:44 <ehird> is really sugar for
18:00:55 <ehird> send #part1:part2:part3: to thing, with args #(x y z)
18:00:57 <ais523> I was wondering if they were reordered if there wasn't a match otherwise
18:01:03 <ehird> well except that you can't literally put it in #()
18:01:06 <ehird> but that is the basic idea
18:01:16 <ehird> the keyword arguments are just sugar, really
18:01:18 <ehird> but it's simpler this way
18:01:19 <AnMaster> ehird, "<ais523> Microsoft Visual Smalltalk.NET?"
18:01:29 <ais523> well, it doesn't exist AFAIK
18:01:34 * ais523 googles it just to make sure
18:02:44 <ais523> http://www.smallscript.org/
18:03:00 <ais523> their language S# appears to be an extension of Smalltalk over .NET
18:03:05 <AnMaster> ais523, well there is FORTH for .NET too
18:03:27 <ais523> "Smallscript provides a valuable development environment on the .NET Framework", said John Montgomery, group product manager for the Microsoft.NET Framework at Microsoft Corp. "Microsoft is excited to be working with Smallscript Corp. to offer developers of Smalltalk and other languages a productive, reliable, easy-to-use platform for building and deploying cross-language applications and Web services."
18:03:33 <AnMaster> " Site last updated: April 8, 2004"
18:03:33 <ehird> http://www.gemstone.com/ this is a better smalltalk company ;)
18:03:37 <ais523> that whole thing is a quote
18:03:46 <ehird> (http://www.gemstone.com/products/smalltalk/)
18:05:12 <ais523> http://msdn.microsoft.com/en-us/library/cc301882.aspx
18:05:33 <ais523> ah, it's describing the same thign
18:05:45 <AnMaster> COBOL for .NET? APL for .NET? Smalltalk for .NET?
18:05:59 <ais523> well, after all, .NET's just a VM really
18:06:11 <AnMaster> yes and a bloated crap runtime
18:06:23 <ehird> Dataman is publishing Delta Forth .NET, a simplified dialect of the Forth programming language.
18:06:28 <ehird> i guess by simplified
18:06:30 <ais523> so I can just about understand people targeting it, especially if they're easily influenced by Microsoft
18:06:30 <ehird> they mean complexified
18:06:34 * AnMaster prefers a lean runtime, just there to handle the "talk to OS bit"
18:06:39 <ehird> And that's 'simpler'.
18:06:59 <ais523> ehird: simpler implementation, or simpler to code?
18:07:01 <AnMaster> ehird, well I knew about Delta Forth before
18:07:18 <ehird> forth's simplicity is in both
18:07:19 <ais523> at least it's not like C-INTERCAL, where garbage collection makes a semantic difference to the language
18:07:22 <ehird> because you have the low level stuff
18:07:26 <ehird> and then layer tiny abstractions on top
18:07:37 <ehird> i bet delta forth has 'big abstractions'
18:07:40 <ehird> and no low level stuff
18:07:57 <ehird> Forth is its implementation, really.
18:08:13 <ais523> do you mean by that that there's only one sane way to implement the language?
18:08:29 <ehird> ais523: if you implement it another way i'd hesitate to call it forth
18:08:39 <ais523> even if it accepts the same programs?
18:09:11 <ais523> does that imply that Forth can't be compiled into high-level languages
18:09:15 <ais523> because it wouldn't be Forth if you did?
18:09:59 <ehird> well, it would be forth
18:10:01 <ehird> but i wouldn't call it forth
18:10:25 <ais523> that gives me a silly idea for an add-on feature to a silly esolang
18:10:31 <ais523> it can be compiled into any language except C
18:10:41 <ais523> becaues the name of the original language changes if you compile it into C
18:10:46 <ais523> so you really compiled a different language
18:11:01 <ehird> can you even do that?
18:11:17 <ais523> but half the players in Agora would try
18:11:27 <AnMaster> <ais523> at least it's not like C-INTERCAL, where garbage collection makes a semantic difference to the language
18:11:30 <ais523> if it were an esonomic
18:12:03 <ais523> AnMaster: backtracking past the point where you multithreaded kills the current thread unless it's the last remaining thread to be alive at that point
18:12:08 <ais523> threads need to be garbage-collected
18:12:21 <ais523> and as aggressively as possible, too, or the program might quit for no reason
18:12:34 <ais523> in C-INTERCAL, you can backtrack past a fork()
18:13:14 <ais523> Malcom Ryan wrote the semantics for INTERCAL backtracking and multithreading, by the way, I just coded most of it (apart from the original multithreading code, which I ignored and made my own version of anyway)
18:25:35 -!- Corun has joined.
18:27:23 -!- timotiis has quit (Read error: 104 (Connection reset by peer)).
18:27:26 -!- timotiis has joined.
18:36:19 -!- oklopol has joined.
19:02:07 -!- helios24 has joined.
19:11:13 -!- jix has quit (Nick collision from services.).
19:11:23 -!- jix has joined.
20:17:33 -!- oerjan has joined.
20:46:58 -!- Judofyr has joined.
20:54:39 -!- oerjan has quit ("leaving").
21:00:36 -!- timotiis_ has joined.
21:25:18 -!- timotiis has quit (Read error: 110 (Connection timed out)).
21:27:18 -!- timotiis_ has changed nick to timotiis.
21:58:27 -!- helios24 has quit ("Leaving").
22:01:03 <Slereah_> Does Recursive Functions of Symbolic Expressions and Their Computation by Machine Part II exist?
22:06:01 <Slereah_> Also, is Quote necessary in the basic Lisp?
22:06:12 <ais523> Slereah_: you can simulate it with macros
22:06:29 <Slereah_> I mean, on a theoretical level.
22:06:38 <Slereah_> Everything seemed just dandy without it.
22:06:54 <ais523> well, you need something to construct your new objects out of
22:06:56 <Slereah_> Although I have no idea what's the minimal for TCness.
22:07:06 <ais523> quote isn't needed, although you need a stock of objects to manipulate
22:07:11 <ais523> otherwise you can't actually /do/ anything
22:07:18 <ais523> luckily, atoms can be that stock of objects
22:07:24 <ais523> and they don't normally need to be quoted
22:07:27 <Slereah_> How does QUOTE create objects?
22:07:48 -!- Iskr has quit ("Leaving").
22:07:53 <ais523> Slereah_: it's a special form that just reads its args literally and makes them an object
22:08:00 <ais523> so by definition, more or less
22:08:15 <ais523> but it would be possible to start with loads of atoms and cons them all together into an object, I think
22:08:32 <ais523> more or less the same way that it's possible to write Underload without nested parens
22:09:09 <Slereah_> A guy was telling me how quote was totally necessary.
22:09:25 <Slereah_> And that in M form, parenthesis worked like quote.
22:09:38 <ais523> well, the point is that atoms are self-quoting
22:09:49 <ais523> at least, it depends on the situation
22:10:11 <ais523> does lisp try to evaluate atoms on the RHS of an expression, or just leave them as-is? I can never remember
22:10:11 <ehird> Slereah_: all you need is lambda, really
22:10:16 <ehird> lisp is just everything else
22:10:31 <Slereah_> ehird : Well, lambda is TC by itself
22:10:40 <ais523> in that case, you'd need some other way to get a stock of unevaluating atoms
22:10:51 <ais523> Slereah_: no, you need apply, that's in the lambda calculus too
22:11:32 <Slereah_> But can Lisp be TC with just the cons-car-cdr-eq-atom-cond?
22:12:06 <Slereah_> Atom returns T or F, depending on the atomicity of the variable
22:13:30 <ais523> well, I imagine you could manage a BF to LISP like that compiler
22:13:39 <ais523> as long as you could somehow set up a loop
22:14:23 <Slereah_> Well, the original paper, it was possible to do recursion
22:14:31 <ais523> that's easy with recursion, but you didn't put anything that could define a function in your list
22:14:59 <ais523> however, it may still be possible with the Underload/Unlambda :^/``sii trick
22:15:07 <Slereah_> Yeah, there's function definition
22:15:16 <ais523> if you have function definition it's easy, I think
22:15:25 <ais523> because apply is in the syntax of the language
22:15:30 <ais523> and function definition can simulate lambdas
22:15:44 <ais523> but I think it can simulate them well enough for these purposes
22:15:49 <ehird> ais523: by the way
22:15:58 <ehird> basic evaluation method of scheme
22:16:06 <Slereah_> For instance, http://www-formal.stanford.edu/jmc/recursive/img100.png
22:16:07 <ehird> (apply (eval (car expr)) (map eval (cdr expr)))
22:17:54 <ehird> (define (tc expr) (cond ((eq? (car expr) 'lambda) (lambda (x) (replace (cadr expr) x (cddr expr)))) (else (apply (eval (car expr)) (map eval (cdr expr)))))
22:18:13 <ehird> just define replace to replace all occurences with the other
22:18:20 <ehird> unless there's a function with the arg equal to the atom
22:18:23 <ehird> in which case it's left alone
22:18:36 <ais523> is that a Scheme interp in Scheme?
22:18:41 <ehird> ais523: no, an LC interp
22:18:46 <ehird> given the definition of replace that i quoted
22:19:01 <ehird> ais523: lambda calculus
22:19:09 <ais523> I thought you'd mistyped an acronym for Common Lisp for a moment
22:19:10 <ehird> technically, if you give the definition of replace I stated,
22:19:19 <ehird> it's call-by-value LC
22:19:27 <ehird> but you can specify multiple values in the application
22:19:34 <ehird> even though it'll just trigger an error
22:19:44 <ais523> call-by-value LC is easier to write in, I think, because it doesn't need a quote
22:19:54 <ais523> otherwise you end up in an infinite evaluation loop
22:19:57 <ehird> ais523: err, neither does any other kind
22:20:02 <ehird> ais523: regular LC is lazy.
22:20:22 <ehird> the Y combinator is ugly in call-by-value
22:20:32 <ehird> call-by-value LC destroys eta-reduction basically
22:29:24 <ehird> ais523: Gonna make the browser more advanced in a sec
22:38:31 <ehird> ais523: let's do sierpinski
22:38:42 <ais523> please, I need to concentrate right now
22:38:50 <ais523> I'm trying to defend myself against an Agoran criminal case
22:38:58 <ais523> at least one person doesn't like scammers...
22:39:44 <ehird> ais523: sorry for your loss
22:39:49 <ais523> not really, this is fun
22:41:10 <ehird> I hereby request to be listed as an observer of Agora Nomic.
22:41:23 <ais523> they keep track of people who are watching
22:42:51 <ehird> ais523: I bet they'd be nicer if it wasn't a n00b who was having some luck with a clever scam
22:46:27 <ehird> ais523: Email erez make 'em activate
22:46:35 <ais523> ehird: why don't you do that?
22:46:45 <ais523> why did you ask me to, in other words?
22:47:18 <ehird> ais523: quite busy right now
22:47:24 <ehird> And you were the one who
22:47:31 <ehird> sauid that they woul
22:47:32 <ais523> let's email them later, when less busy
23:51:36 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
00:02:18 -!- atsampso1 has quit (Read error: 104 (Connection reset by peer)).
00:15:41 -!- jix has quit ("CommandQ").
00:44:48 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:01:09 -!- pikhq has joined.
01:26:03 -!- Sgeo has joined.
01:32:06 -!- ehird has quit (Remote closed the connection).
01:57:50 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
01:58:25 -!- Judofyr has joined.
02:43:24 -!- calamari has joined.
03:25:59 -!- olsner has joined.
03:37:01 -!- olsner has quit ("Leaving").
04:24:49 -!- Corun has quit ("This computer has gone to sleep").
04:27:48 -!- Corun has joined.
04:37:57 -!- Corun has quit ("Leaving").
05:00:58 -!- GreaseMonkey has joined.
05:14:36 -!- lifthrasiir has quit (Remote closed the connection).
05:21:26 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:33:50 -!- GregorR has quit ("When I return, I will be logging in from my new system!").
05:48:34 -!- oklopol has quit (Read error: 113 (No route to host)).
06:13:30 -!- GregorR has joined.
06:22:05 -!- oklopol has joined.
06:38:23 -!- Judofyr has joined.
06:42:32 -!- calamari has quit ("Leaving").
07:05:10 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
07:39:14 -!- atsampson has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:19:03 -!- Judofyr_ has joined.
08:19:03 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
08:50:03 -!- Iskr has joined.
08:52:33 -!- Judofyr has joined.
09:04:29 -!- Iskr_ has joined.
09:10:00 -!- Judofyr_ has quit (Read error: 110 (Connection timed out)).
09:10:26 -!- Iskr has quit (Read error: 101 (Network is unreachable)).
09:54:45 -!- helios24 has joined.
10:58:30 -!- GreaseMonkey has quit ("Unisex.").
11:37:47 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
11:45:32 -!- Iskr_ has quit (Read error: 110 (Connection timed out)).
11:46:13 -!- Iskr_ has joined.
12:16:24 -!- helios24 has quit ("Leaving").
12:29:53 -!- i__ has joined.
12:33:04 -!- Iskr_ has quit (Read error: 110 (Connection timed out)).
12:33:11 -!- i__ has changed nick to Iskra.
12:33:12 -!- Iskra has changed nick to Iskr.
12:43:28 -!- sebbu has quit ("@+").
12:46:08 -!- ehird has joined.
12:46:19 -!- Judofyr has joined.
13:01:26 -!- Iskr has quit (Read error: 110 (Connection timed out)).
13:02:26 -!- Iskr has joined.
13:37:16 -!- Corun has joined.
13:41:56 -!- ais523 has joined.
13:48:13 <ehird> Squeak just did the most retarded thing
13:48:16 <ehird> I had saved and quitted yesterday
13:48:20 <ehird> and a lot of changes are gone
13:48:25 <ehird> so I've gone into the recent log
13:48:28 <ehird> and I'm selecting all non-conflicting ones
13:48:37 <ehird> and then I'm gonna hope that thy apply cleanly
13:48:55 <ais523> ehird: now, if only you'd been saving your programs in a text file...
13:49:16 <ehird> ais523: no, i'm pretty sure this is just a squeak bug
13:49:25 <ehird> if my editor had a weird bug then it'd happen too, ais523
13:49:29 <ais523> you're vulnerable to bugs in a system when you're locked into it
13:49:34 <ehird> actually, it's probably that I just did it wrong
13:49:44 <ais523> and I can't see a weird bug affecting my backups as well as the original
13:49:49 <ehird> ais523: also, i have an idea - let's spin everything into an argument as to how locked-in systems suck
13:49:53 <ais523> at least, not unless it was very weird
13:50:17 <ais523> ehird: not everything, only when you're blatantly asking for it
13:52:23 <ehird> ais523: hm, there is a discussion in spanish going on in #squeak
13:52:27 <ehird> very interesting..
13:52:28 <ais523> anway, let's stop that line of discussion so as not to degenerate into another argument
13:52:39 <ais523> I've been thinking about your JS/Smalltalk mix
13:52:43 <ais523> where you just start with one object
13:52:50 <ehird> it's a Self/Smalltalk mix
13:52:56 <ehird> or an Io/Smalltalk mix
13:53:03 <ehird> but JS is a kind of class/prototype mix
13:53:21 <ais523> anyway, I planned a tarpit based on that on the way here
13:53:37 <ais523> I'm thinking of calling it Feather, because it's so lightweight compared to most Smalltalks
13:53:42 <ehird> my idea wasn't tarpitty
13:53:47 <ehird> but it was minimalist
13:53:53 <ehird> ais523: I wanted to keep it in the VM style
13:54:03 <ais523> my language has an unusual feature: it wouldn't work properly if it wasn't a tarpit
13:54:05 <ehird> ais523: basically, to still compile it to vm bytecode
13:54:08 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
13:54:10 <ais523> but you can build on it as you like
13:54:15 <ehird> ais523: and then do the smalltalk thing of writing the vm in a restricted subset
13:54:18 <ehird> which can be compiled to c
13:54:43 -!- Judofyr has joined.
13:55:12 <ais523> the major problem with instantiating objects from objects is the mess that makes of reflection
13:55:23 <ehird> you *clone* objects
13:55:36 <ais523> they're the same thing in my tarpit
13:55:41 <ais523> cloning is instantiatino
13:55:55 <ehird> but instantiation doesn't mean anything
13:55:57 <ehird> in a prototype system
13:56:01 <ehird> http://en.wikipedia.org/wiki/Self_%28programming_language%29 http://en.wikipedia.org/wiki/Io_%28programming_language%29
13:56:20 <ais523> I found a slightly unusual way to make it mean something, inspired by TwoDucks
13:57:28 * ehird wonders when someone who speaks english will enter #squeak and tell me wtf it just did last night
14:07:20 <Slereah_> ... mean something, inspired by twoducks?
14:07:31 <Slereah_> That's something you don't hear everyday.
14:08:32 <ais523> well, Self uses delegation in order to handle inheritance changes after the fact
14:09:21 <ehird> ais523: check out Io
14:10:28 <ais523> Io's method is likely what my method would be optimised into
14:10:58 <ais523> in my language, instead, when you add a method to a class (or a property, they're the same thing in my language), the program goes back in time and works out what would have happened if the change was made when the object was created
14:44:23 -!- Iskr has quit (Read error: 110 (Connection timed out)).
14:45:01 -!- Iskr has joined.
14:49:27 <ehird> <Slereah_> Guys, in Batman Begins.
14:49:37 <Slereah_> Why doesn't the microwaves fry the people, and why are they worried about hallucinogens instead of about breathing raw boiling water
14:49:41 <ehird> <ehird> <Slereah_> Guys, in Batman Begins.
14:49:57 <Slereah_> Those people have no priorities.
14:50:56 <ehird> <Slereah_> Those people have no priorities.
15:07:22 -!- RedDak has joined.
15:26:45 <ais523> hmm... I think Feather has to be lazy, to prevent it infinite-looping in loads of common cases
15:27:50 <ais523> it's an esolang I'm planning, based on Smalltalk, Io and TwoDucks
15:28:01 <ais523> but I'm trying to get it down to the computable level
15:28:15 <ais523> the problem is dealing sensibly with causation loops
15:30:15 <ais523> say you define an Array class
15:30:33 <ais523> then you want to retroactively change the clone method on the original object to do something involving Arrays
15:35:20 -!- timotiis has joined.
16:24:33 -!- ehird has quit ("Leaving").
16:24:50 -!- ehird has joined.
17:20:09 -!- Sgeo has joined.
17:35:27 -!- sekhmet has quit (Remote closed the connection).
17:35:29 -!- sekhmet has joined.
18:08:10 -!- ais523_ has joined.
18:08:44 -!- ais523 has quit (Nick collision from services.).
18:08:47 -!- ais523_ has changed nick to ais523.
18:41:12 -!- kar8nga has joined.
18:48:47 -!- kar8nga has left (?).
18:48:48 -!- kar8nga has joined.
18:49:45 -!- kar8nga has left (?).
18:50:04 -!- kar8nga has joined.
18:51:22 -!- kar8nga has left (?).
18:51:38 -!- kar8nga has joined.
19:00:47 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
19:04:13 -!- Iskr has quit (Read error: 110 (Connection timed out)).
19:04:59 -!- Iskr has joined.
19:10:14 <Slereah_> There was a link posted here once, about what was said to be a simple introduction to pi calculus
19:28:04 -!- Tritonio has quit (Remote closed the connection).
19:33:10 <AnMaster> related to the famous irrational number in any way?
19:33:31 <Slereah_> http://en.wikipedia.org/wiki/Pi_calculus
19:34:19 <Slereah_> I'm trying to read the original paper, but I'm not familiar with calculus of communicating systems.
19:35:42 -!- timotiis_ has joined.
19:36:46 <Slereah_> It's apparently based on communicating informations between participants through links.
19:39:10 <Slereah_> And apparently restrictions of informations along some links
19:40:17 <Slereah_> Problem is, I'm not understanding much of the notation.
19:51:53 -!- ehird has quit (Read error: 113 (No route to host)).
20:00:25 -!- timotiis has quit (Read error: 110 (Connection timed out)).
20:18:25 -!- RedDak has quit (Remote closed the connection).
20:26:28 <AnMaster> Slereah_, grep the logs maybe?
20:28:41 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
20:29:32 -!- Slereah_ has joined.
20:56:05 <Slereah_> Hell, there's actually books on pi calculus on emule
20:56:23 <Slereah_> I think it's because apparently, it's used a lot in models for economic thingies.
20:56:47 * ais523 wonders what happened to ehird
20:57:06 <ais523> that would explain the no route to host
20:57:16 <ais523> you can't get decent Internet access from inside a grue
21:00:16 <Slereah_> "Robert Milner Web hottest videos personal player"
21:00:29 <Slereah_> I suppose that isn't the pi calculus book I was looking for.
21:01:02 <Slereah_> emule takes your researched terms and returns porn spam, even if it makes no sense
21:01:19 <ais523> what sort of strange website is that?
21:01:40 <Slereah_> Emule, the peer to peer software.
21:25:12 <ais523> wow, I think that's the first time I've been pastebinned
21:27:10 <ais523> presumably it was to GregorR
21:32:07 <ihope> A pi calculus book? I was about to say it sounded interesting, but then I realized that pi calculus isn't pi and calculus.
21:34:12 <ihope> You know, I think I know why I'm not writing a proof of the intermediate value theorem right now.
21:36:06 <ihope> Would people who aren't nerds be writing a proof of the intermediate value theorem right now?
21:36:55 <Slereah_> No. Which is why I gave it as a reason.
21:37:22 <kar8nga> actually there are people who would do
21:37:28 <kar8nga> they are called mathematicans
21:38:23 <kar8nga> then describe me your definition of nerd, please
21:41:55 <kar8nga> but I think that went a bit by me (at least by the definition secured at http://en.wikipedia.org/wiki/Nerd)
21:42:07 <kar8nga> I'm off to sports and check back later
21:43:13 -!- GregorR has quit (Read error: 110 (Connection timed out)).
21:49:50 -!- GregorR has joined.
21:52:42 <lament> mathematicians don't normally write proofs of the intermediate value theorem
21:57:09 <ihope> Proof of the Intermediate Value Theorem: if there were an excluded value, the set of excluded values would be open, which is impossible.
21:57:59 <ihope> Make that "open and non-empty"/
21:59:03 <Slereah_> But, that uses the excluded middle, which isn't a constructive proof D:
22:01:40 <ihope> The excluded middle isn't a constructive proof?
22:26:45 -!- oerjan has joined.
22:28:45 <kar8nga> well, that discussed the version on the reals, which is not really showing the point - I prefer the topological version
22:30:48 <kar8nga> well, then take f: (X,T) -> (Y,S)
22:31:02 <ihope> Assume f is continuous, then?
22:31:59 <kar8nga> f is continous with respect to T an S if forall A in S: f^{-1}(A)\in T
22:32:05 <kar8nga> sorry for the tex notation
22:32:49 <kar8nga> so continuity is just a topology preserving mapping
22:32:58 <ihope> What's the topological version of the sentence, then?
22:34:36 <ihope> The intermediate value theorem.
22:34:51 <ihope> "For every continuous function f from [a,b] to a subset of R, the image of f contains all real numbers from f(a) to f(b)", I suppose.
22:35:32 <kar8nga> just take the "natural" topologies on R
22:36:04 <kar8nga> which are based on open sets: I think in R this is called the \epsilon-\delta criterion
22:36:27 <kar8nga> f: A -> B cont (A,B \subset R) <=>
22:36:27 <ihope> The ordinary, usual, common, standard, regular topology on R? :-)
22:36:58 <ihope> Oh, it's just the intermediate value theorem stated topologically?
22:37:28 <kar8nga> because R is strictly ordered
22:37:40 <kar8nga> so you can speak about something like "intermediate value"
22:38:08 <kar8nga> think of topologies on function spaces
22:38:56 <kar8nga> they are far more unamenable to such analysis: which function is bigger? f(x)=1 or f(x)=x^2 ?
22:39:47 <kar8nga> but you can still have a topology there and therefore continuous functions
22:40:12 <kar8nga> the whole point of continuous function is in the end that you can do the following:
22:40:41 <kar8nga> lim x->y f(x) = f(lim x -> y) = f(y)
22:40:55 <kar8nga> well, easy on to visualize on R
22:41:30 <kar8nga> but a topology allows for a more general notion of convergence and then you are really happy of you have somewhere continuous functions
22:41:42 <kar8nga> hope that explained a bit the thing
22:42:34 <kar8nga> the reason why I came here
22:43:04 <kar8nga> is anyone here working at the moment at any objectoriented esolangs?
22:43:21 <ais523> depends if you consider Smalltalk-like languages object-oriented
22:43:36 * oerjan likes the topological form (1) the image of a connected set under a continuous function is connected (2) a subset of R is connected iff it contains every value between any two elements
22:43:37 <ihope> Object-oriented esolangs. Fun stuff.
22:43:50 <ihope> Let's make some object-oriented topological esolang, shall we? :-P
22:44:26 <oerjan> (1) is not restricted to R of course
22:44:39 <ihope> Ah, that is a nice form.
22:45:20 <Slereah_> But I still don't know what the fuck is an object :o
22:45:40 <kar8nga> well, but (1) only again works on strictly ordered spaces
22:45:52 <kar8nga> consider a holomorphic function
22:46:23 <kar8nga> well, sorry, there it works
22:46:59 <kar8nga> I concede: (1) works in any separable topological space
22:47:00 <oerjan> kar8nga: no, it works for any topological space. it's just that connected sets may be rare in some spaces
22:47:12 <ihope> Slereah_: I'd define an object as a value in memory that belongs to some class.
22:47:54 <ihope> The class lists its properties (but not their values) and defines its methods.
22:48:22 <kar8nga> oerjan: could be - now is the point where I would have to look up my old notes (topology is not my speciality, I admit)
22:49:10 <kar8nga> ais523: smalltalk is definitely object-oriented for me
22:49:28 <ais523> well, ehird's making a smalltalk-like language which is possibly not an esolang
22:49:32 <ihope> Gee. I'm having a sudden urge to integrate Brownian motion. :-P
22:49:34 <oerjan> the proof is really simple: if the image is not connected then it can be divided into two relatively open sets. but then so must the domain.
22:49:37 <kar8nga> but it doesn't have to be class-based
22:49:38 <ais523> and I'm thinking about a smalltalk-like language which is definitely an esolang
22:49:56 <ihope> kar8nga: what ever done?
22:50:06 <ihope> Has it ever been done, you're asking?
22:50:44 <oerjan> (by taking their inverses)
22:50:53 <kar8nga> I took the course 2 years ago, so I remember .... - no, I asked if you ever took stochastic calculus?
22:51:27 <kar8nga> oerjan: I remember - thanks!
22:51:45 <ihope> If I've ever taken it? No, I'm in high school.
22:52:15 <kar8nga> ais523: any links/resources yet?
22:52:40 <ais523> it's like Smalltalk, only objects and classes are merged (like in Io), and inheritance is done by time-travel
22:52:47 <ais523> oh, and it starts with only one object
22:53:53 <kar8nga> bootstrap with one object - remembers me of: beware of the god object
22:54:22 <kar8nga> so it's more like self, than smalltalk?
22:54:51 <ais523> but ehird and I have been discussing smalltalk for the last couple of days in about 5 different channels
22:56:06 <kar8nga> I think I saw somewhere some bits of that
22:56:38 <kar8nga> I'm more leaning to the metaobject approach: like in the piumata papers
23:00:42 -!- ehird has joined.
23:04:35 -!- GregorR has quit (Read error: 110 (Connection timed out)).
23:08:05 -!- kar8nga has left (?).
23:10:59 -!- timotiis_ has changed nick to timotiis.
23:10:59 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
23:12:34 -!- Slereah_ has joined.
23:14:05 * ihope whistles: f(0) is 0, f(1) is selected randomly from a standard normal distribution, f(0.5) is... hmm, I've forgotten
23:15:23 <ihope> I'm trying to remember that method I supposedly thought of for computing Brownian motion.
23:15:55 -!- GregorR has joined.
23:16:44 <ihope> I guess you ought to calculate the standard deviation of the difference between f(x) and f(x+c) given the standard deviation of the difference between f(x) and f(x+1).
23:18:42 <Slereah_> ihope : Try to make regions of particles with lowering entropy!
23:32:15 -!- Sgeo has changed nick to SirGeo.
23:46:07 -!- Iskr has quit ("Leaving").
23:52:17 -!- timotiis has quit (Read error: 110 (Connection timed out)).
23:55:54 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
23:59:43 -!- oerjan has quit ("Roll - roll - bump - crash - kaBOOM").
00:13:30 -!- evincar has joined.
00:33:13 <GregorR> evincar cracked corn, and I don't care.
00:33:42 <ehird> evincar - I don't care.
00:34:01 <evincar> ehird: So I take it you stopped caring enough to make that interpreter? ^_^
00:34:11 <ehird> evincar: I kinda, er, lost it.
00:34:20 <evincar> It's okay, I didn't finish mine, either.
00:34:31 <evincar> I just got lazy when it came time to implement BECOME and ESCAPE.
00:34:43 <evincar> Also, I didn't feel like coming up with semantics for ESCAPE.
00:46:52 -!- SirGeo has changed nick to Sgeo.
00:57:45 -!- evincar has quit ("ChatZilla 0.9.82 [Firefox 2.0.0.14/2008040413]").
01:04:27 <ehird> I found the Zen in Smalltalk
01:04:28 <ehird> ProtoObject subclass: #ProtoObject
01:07:21 * Sgeo automatically goes to the #ProtoObject channel
01:07:42 <Sgeo> Can't help it, it began with #
01:08:25 <lament> Sgeo: ###################################################
01:08:37 <lament> that'll keep him busy for a while
01:08:37 <Sgeo> * ################################################### :Nick/channel is temporarily unavailable
01:08:52 <ihope> #, ##, ###, ####, #####, ######, ########, #########.
01:11:56 <ehird> * ############### :Cannot send to channel
01:14:09 <ihope> Ask SWMTBot to release it. :-P
01:15:34 <ehird> * ################### :You can't join that many channels
01:15:40 <ehird> Bye you guys. See me in any channel starting with a #.
01:15:44 <ehird> Preferably with 10 or less of 'em
01:15:47 -!- ehird has left (?).
01:23:39 -!- ehird has joined.
01:29:21 <Slereah_> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
01:29:27 <ihope> Hmm, that's not quite right. Zoooooooom?
01:38:16 -!- ehird has quit (Remote closed the connection).
01:42:17 -!- GreaseMonkey has joined.
02:17:09 -!- olsner has joined.
03:13:12 -!- revcompgeek has joined.
03:13:12 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
03:13:21 -!- Slereah_ has joined.
03:44:16 -!- GregorR has quit ("Leaving").
04:02:27 -!- GregorR has joined.
04:07:00 -!- GreaseMonkey has quit (Read error: 110 (Connection timed out)).
04:08:34 -!- GreaseMonkey has joined.
04:26:34 -!- revcompgeek has quit ("ChatZilla 0.9.81 [Firefox 3.0b5/2008032619]").
05:19:45 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
06:15:00 -!- Sgeo has quit ("Ex-Chat").
07:01:25 -!- Iskr has joined.
07:31:18 -!- GreaseMonkey has quit ("Unisex.").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:30:14 -!- kar8nga has joined.
09:51:13 -!- kar8nga has left (?).
10:20:32 -!- GregorR has quit (Read error: 104 (Connection reset by peer)).
10:21:43 -!- GregorR has joined.
10:42:47 -!- GregorR has quit (Read error: 110 (Connection timed out)).
10:43:11 -!- GregorR has joined.
11:28:38 -!- Judofyr has joined.
11:35:49 -!- Corun has quit ("This computer has gone to sleep").
12:40:54 -!- Corun has joined.
12:49:34 -!- ehird_ has joined.
12:55:08 -!- ehird_ has quit (Read error: 113 (No route to host)).
13:22:02 -!- ehird has joined.
14:25:51 <ihope> irc.slashnet.org, channel #nomic?
15:06:06 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
15:06:17 -!- Slereah_ has joined.
16:16:43 -!- Tritonio has joined.
16:37:30 -!- oklopol has joined.
17:19:07 -!- timotiis has joined.
17:33:36 -!- Judofyr has quit.
17:36:56 <ihope> Un pez dice al otro, "¿Qué hace tu papá?" El otro le responde, "Nada.
17:38:47 <oklopol> mu bise vatme do mitme luu kacmo mo
17:44:58 <ehird> oklopol: mi'e ... gah, I forgot the quoting rules
17:45:04 <ehird> I FORGOT THE LITTLE LOJBAN I KNOW :(
17:45:34 <oklopol> ehird: well i know what you said, wondering about olsner
17:45:48 <olsner> oklopol: only gibberish
17:46:19 <ehird> oklopol: I was trying to say "I say 'I am called Elliott Hird'"
17:46:21 <ehird> I used to be able to do that
17:46:41 <ehird> oklopol: anyway, we should invent a concatenative natural language ... but like Jo
17:47:27 <oklopol> ehird: what was wrong with what you said?
17:47:33 <olsner> fix ("I was trying to say '" ++)
17:47:41 <ehird> oklopol: i is Elliott Hird os I called am o I say
17:47:47 <ehird> stack-based concat!
17:47:56 <ehird> ["Elliott Hird" I called am] I say
17:49:19 <oklopol> ehird: oklopol: I was trying to say "I say 'I am called Elliott Hird'" <<< i didn't really manage to read this
17:49:56 <oklopol> i'm not sure about quoting either actually :D
17:52:47 <ehird> oklopol: fuckit, the highlight ends at <<< again
17:52:49 <ehird> HOW does that work
17:52:54 <ehird> ehird: oklopol: I was trying to say "I say 'I am called Elliott Hird'" <<< i didn't really manage to read this
17:52:57 <ehird> with a space in front
17:55:31 <oklopol> i don't know how to put a space in front
17:57:42 <ehird> oklopol: like this
17:57:48 <ehird> You hit the space bar.
17:57:51 <ehird> Then put the message.
18:01:12 <ihope> What, your client automatically removes spaces in front?
18:02:02 <oklopol> has probably saved many people from total embarrassment.
18:02:25 <ihope> Putting a space in front is indeed very embarrassing.
18:02:31 <oklopol> i don't really see wtf the reason could be, perhaps they just wanted to add random functionality
18:03:00 <ehird> oklopol: very funny
18:03:04 <ehird> <oklopol> ehird: oklopol: I was trying to say "I say 'I am called Elliott Hird'" <<< i didn't really manage to read this
18:03:08 <ehird> you actually have a space in front of that
18:03:56 <ehird> oklopol: let me show you
18:03:59 <ehird> <oklopol>__ehird: oklopol: I was trying to say "I say 'I am called Elliott Hird'" <<< i didn't really manage to read this
18:04:02 <ehird> the __ at the start are spaces
18:04:08 <ehird> you say your client strps spaces at the beginning of messages
18:04:15 <ehird> but you just sent one with a space at the beginning!
18:04:36 <oklopol> a-ha, well that implies there's something weird going on when i highlight someone with tab
18:04:52 <oklopol> is there a space before the first no?
18:04:56 <Tritonio> hello everyone. can someone explain to me some things about gpg?
18:05:29 <oklopol> ehird: i shall test <<< then, is there a space?
18:06:01 <Tritonio> ehird, I have subkeys related questions.
18:06:32 <oklopol> ehird: well i have no idea, perhaps mirc just occasionally removes the space, although it always shows the message without it on my screen.
18:06:41 <ehird> Tritonio: that's nice
18:13:53 -!- oklofok has joined.
18:15:54 -!- oklopol has quit (Read error: 113 (No route to host)).
18:39:44 -!- Sgeo has joined.
19:00:23 -!- oerjan has joined.
19:04:17 <Sgeo> What was the test for?
19:04:35 <oerjan> hm the logs don't show
19:05:18 <oerjan> oh you didn't see the discussion before we both entered
19:06:24 <oerjan> ah it's in the tunes log
19:08:46 * pikhq is off hold in Agora. Wheee.
19:09:43 <oerjan> no holds barred anymore
19:17:10 <ehird> pikhq: Seen Duck & Platypuss?
19:18:24 <ehird> IRCNomic is now called Canada
19:18:26 <ehird> so watch your words
19:18:33 -!- Corun has quit ("tired").
19:18:43 <ehird> And you're in #ircnomic and have not OPTOUT'd -- you're not former ;)
19:19:08 * oerjan blames Canada. Someone had to.
19:20:02 * oerjan realizes it's a long time since he saw that movie.
19:20:08 <pikhq> ehird: Urgh. That's painful.
19:20:47 <ehird> pikhq: But I don't really like ircnomic any more either
19:20:53 <ehird> pikhq: HaskellNomic is where it's at.
19:24:04 <oerjan> Thou Wicked Tempter Thou
19:24:16 <ehird> oerjan: Haha, I'm writing it actually.
19:25:12 <ehird> p1 `bites` p2 = (p1{score=(score p1)+1}, p2{score=(score p2)-1})
19:25:16 <ehird> oerjan: write that to be more elegant
19:25:30 <ehird> bites :: Player -> Player -> (Player,Player) -- of course
19:26:01 <oerjan> record syntax is rarely elegant :(
19:26:16 <ehird> oerjan: indeed, but we're gonna have to use it if anyone may augment the structure
19:26:33 <ehird> oerjan: actually, maybe `bites` should be in the Nomic monad, or something, since it'll never be used in functional form
19:26:36 <ehird> and that removes the ugly tuple
19:27:09 <ehird> <ihope> p1 `bites` p2 = do success <- p1 `canBite` p2; if success then damage p2 2 else return ()
19:27:11 <ehird> that's not too bad
19:27:30 <ehird> oerjan: comments on that?
19:28:18 <ehird> oerjan: 'use when'?
19:28:30 <ehird> when :: (Monad m) -> m Bool -> m a -> m ()
19:29:20 <ehird> p1 `bites` p2 = do { success <- p1 `canBite` p2; when success $ damage p2 2 }
19:29:25 <ehird> oerjan: is that what you had in mind?
19:29:32 <ihope> when (p1 `canBite` p2) (damage p2 2)
19:29:44 <ehird> whenM would be nice I guess
19:29:49 <ihope> when takes a Bool?
19:29:54 <ehird> whenM c x = do v <- c; when v x
19:30:02 <ehird> <lambdabot> forall (m :: * -> *). (Monad m) => Bool -> m () -> m ()
19:30:34 <oerjan> btw, i am _not_ promising to give in to the temptation.
19:31:17 <ehird> oerjan: It would make sure your program actually compiles at proposal-time.
19:31:23 <ehird> oerjan: So proposals would be typed.
19:31:41 <ehird> Also, if a proposal causes another proposal to be invalidly typed, players can only vote on one.
19:32:00 <ihope> If it causes another to be invalidly typed?
19:32:32 <ehird> p1 writes a proposal using FloobDoob
19:32:43 <ehird> p2 writes a proposal that removes FloobDoob and all the functions using it.
19:32:54 <ehird> Now, these can both result in a valid system, but not both.
19:32:59 <ehird> So, you can't vote for both proposals.
19:33:10 <ihope> How does a proposal remove FloobDoob?
19:33:32 <ehird> ihope: Um, by removing the line saying 'data FloobDoob = ....'?
19:34:01 <ihope> How does the system know that it's removing the line defining FloobDoob? Execute it safely and see if it's still there, I guess?
19:34:28 <ehird> oerjan: can you translate what ihope is saying, i can't tell
19:34:37 <ehird> ihope: When you change a file in a proposal, it runs ghc on it.
19:34:47 <ehird> If that succeeds, it's well-typed and accepted.
19:35:01 <ehird> No, I think you're right.
19:35:09 <ehird> OK, there's no way to solve the don't-mix issue.
19:38:29 <oerjan> actually this might make for some interesting voting strategies - if a proposal only takes effect if it gives a well-formed program
19:38:59 <ehird> oerjan: yes, but you can do things like
19:39:04 <oerjan> which could depend on previous proposals
19:39:05 <ehird> propose two proposals which on their own are well-typed
19:39:09 <ehird> oerjan: but together, are invalidly-typed
19:39:12 <ehird> oerjan: and pass them both
19:39:19 <oerjan> yes, so the last one will not take effect
19:39:21 <ehird> oerjan: then, it'd just reject them at activation-time
19:39:31 <ehird> oerjan: so, really, the type-checking-at-proposal-creation is just a convenience
19:39:38 <ehird> oerjan: and it helpfully removes all spammers
19:39:43 <ehird> oerjan: unless spammers spam with valid haskell code now
19:41:19 <ihope> Make sure the spammers don't create an account, also. :-P
19:52:39 <ehird> ihope: fun captcha:
19:52:44 <ehird> 'Enter some well-typed Haskell code:'
19:52:47 <ehird> (\x -> x) would work
19:53:04 <ehird> Well, rather, it'd be 'Enter some *compilable* Haskell code:'
19:53:19 <ihope> So (\x -> x) and id wouldn't work?
19:53:48 <oerjan> make registration happen by writing an appropriate action in the Player monad
19:55:03 <ehird> (\x -> x) is perfectly compilable
19:55:21 <ehird> oerjan: PerlNomic ties %players to the right file, creates a Player object, then adds it to %players
19:55:24 <ehird> oerjan: so that's not a new concept
19:55:40 <ehird> the adduser just creates a proposal to do the right thing in the Nomic monad
19:55:46 <ehird> (btw -- bites :: Player -> Player -> Nomic ())
19:55:49 <ihope> ehird: but 'a' isn't compilable?
19:56:14 <oerjan> i meant for the actual text the player writes to be that action :D
19:56:28 <ehird> ihope: Uh, why don't you try?
19:56:53 <ehird> __registrationCheck = (\x -> x)
19:56:56 <ehird> __registrationCheck = id
19:56:58 <ehird> __registrationCheck = a
19:57:06 <ihope> You said 'a', not a.
19:57:33 <ihope> What if it's a Freudian concept spammer, though? :-P
19:58:10 -!- Judofyr has joined.
20:02:14 <ehird> I could require a minimal length
20:23:00 -!- AnMaster has quit ("will be back in a bit").
20:31:05 -!- AnMaster has joined.
20:38:37 -!- Tritonio has quit (Remote closed the connection).
20:45:14 -!- oklopol has joined.
20:54:37 <GregorR> Hahahah, I totally forgot that my new system has KVM support, so even Qemu is fffffffffast! ^^
20:58:20 * SimonRC wonders why he dislikes Nomics so much.
20:59:21 <SimonRC> I think it is the way that there are actually things that can't change.
21:00:08 <GregorR> The immutable rules in the default ruleset?
21:00:11 -!- RedDak has joined.
21:00:21 <ehird> SimonRC: There isn't.
21:00:31 <GregorR> The immutable rules can be changed by a unanimous vote.
21:00:49 <SimonRC> but there are some things that can't change.
21:01:10 <GregorR> Are were you referring more to the psychological fact that certain properties of the game will never by changed by the majority of the people playing? :)
21:01:46 <SimonRC> like: people respond to information they receive in the past, and their response affects the future, not the other way round
21:02:19 <SimonRC> so you couldn't make a rule that made the game "bounce" off a certain ppoint in time and "fold" backwards through time
21:02:25 -!- oklofok has quit (Read error: 113 (No route to host)).
21:03:03 <SimonRC> and if you have a rule against laws that
21:03:17 <ehird> SimonRC: you could make a rule like that
21:03:24 <ehird> it would just, unsuprisingly, fail to have an effect
21:03:45 <ehird> SimonRC: Maybe codenomics would be more to your liking: Everything in the program can be changed.
21:03:52 <ehird> And the outside world doesn't exist, so there's nothing you can't change
21:04:21 <SimonRC> In ordinary rules: you can change any "rule" but you can't change the universe they're running in.
21:04:51 <ehird> SimonRC: In codenomics: you can change any 'rule' (program) and you can change the program
21:05:51 <SimonRC> actually my objection is rather flattened by the fact that people can disobey rules
21:06:00 <SimonRC> it's much worse with physics
21:06:13 <ehird> SimonRC: yeah, its impossible to disobey a program .. Unless you have a really weird language :P
21:06:32 <GregorR> Hahahaha, let's define an (impossible-to-play) Nomic where the physical laws of the universe are voted on! :P
21:06:37 <SimonRC> well in that case "disobeying" the program is obeying it, in a correct implementation
21:07:14 <SimonRC> I object more to a "you can change anything" attitude in languages actually.
21:07:31 <SimonRC> there has to be something immutable at the bottom, or there can't be anything
21:07:39 <ehird> SimonRC: You'll HATE Smalltalk.
21:07:53 <ehird> SimonRC just said 'Smalltalk?'
21:08:02 <ehird> SimonRC: smalltalk can change >anything<
21:08:11 <ehird> even the 'immutable' stuff since it's written in a subset of ST ;)
21:08:17 <SimonRC> depending on the implementation, you either can't change the virtual machine, or...
21:08:27 <SimonRC> ... you can't change the computer hardware
21:08:29 <GregorR> Yeah, the underlying bytecode is immutable.
21:08:33 -!- oklopol has quit (No route to host).
21:08:43 <GregorR> And the accessible invariant procedures are just that.
21:08:53 <SimonRC> you can't have a completely circular interpreter
21:09:00 <ehird> SimonRC: You can change the VM in smalltalk
21:09:09 <ehird> i think you just have to tell it to recompile the irhgt part
21:09:18 <GregorR> SimonRC: I'm going to go write a completely-circular interpreter.
21:09:24 <ehird> GregorR: ... All that for that?
21:09:26 <GregorR> SimonRC: It won't run, but it'll be AWESOME
21:09:30 <ehird> GregorR: And someone beat you to it.
21:09:30 <SimonRC> it would run infinitely slowly
21:09:37 <ehird> John McCarthy beat you to it, in particular.
21:09:51 <SimonRC> ehird: yeah, but that wasn't implemented completely circularly
21:10:01 <ehird> SimonRC: Yes it was... there was no implementation for it for a while.
21:10:10 <ehird> SimonRC: Just because someone manually translated it after doesn't make it any less circular
21:10:22 <SimonRC> there was a definition that wasn't in lisp too
21:10:41 <ehird> SimonRC: no there wasn't
21:11:06 <SimonRC> if nothing else, there was the definition that one would come up with by trying to figure out the language from its self-interpreter
21:12:17 <SimonRC> and just to show that being an atheist doesn't stop you being irrational:
21:12:39 <SimonRC> I also believe there are some immutable rules at the bottom of the universe too.
21:12:55 <SimonRC> whatever certain physicists hyupothesise
21:13:13 <SimonRC> an uncountable stack of rules might work too
21:23:41 <ehird> <SimonRC> and just to show that being an atheist doesn't stop you being irrational:
21:23:54 <ehird> the theists have enough fuel against us already don'tchathink :-)
21:26:43 <SimonRC> IMO monroe was irrisposible when he drew friday's xkcd
21:27:04 <SimonRC> I mean, after the rollercoaster chess incident...
21:35:14 <ihope> Challenge: Write a BF self-interpreter and convince us that it's actually a self-interpreter for some other language. :-P
21:36:12 <ihope> Make it reasonable, of course.
21:36:24 <Slereah_> This interpreter is actually an ook interpreter
21:36:32 <Slereah_> But instead of ooks, it has symbols.
21:37:26 <ihope> Ook is the same language.
21:37:46 <ihope> Especially if it uses symbols.
21:37:57 <oerjan> the obvious solution is of course to make a polyglot that _is_ also a self-interpreter for some other language
21:38:39 <ehird> Challenge: don't say "I refuse"
21:38:58 <ihope> oerjan: but would that be a BF self-interpreter?
21:39:50 <ihope> Yeah. Take a reasonable language and come up with a reasonable self-interpreter for BF that's also a reasonable self-interpreter for the other language.
21:41:22 <ehird> Just get a language that doesn't use +-,.[]<>
21:41:25 <ehird> and write a self-interp in it
21:41:28 <ehird> Then munge the code together
21:41:55 <ihope> No useless comments allowed. :-)
21:42:25 <ehird> ihope: Well sheesh
21:44:32 <SimonRC> Did I recommend my latesd obsessional game here yet?
21:45:43 -!- oklopol has joined.
21:46:50 <SimonRC> http://www.farbs.org/games.html
21:47:11 <SimonRC> it's like a dozen classic games all got mixed up
21:49:24 -!- oklopol has quit (Connection reset by peer).
21:50:07 <SimonRC> arrows to move, space to fire
21:51:13 <ehird> Incidentally, the guy who made that game also made a Python binding to a C++ library that is now maintained by someone I know, despite them being a Python newbie and not knowing /any/ C++
21:51:17 <ehird> (Python is his first language)
21:51:27 <ehird> The guy who made the library (and that game) was the one who suggested it.
21:51:32 <ehird> One question: Double you tee EFF?
21:52:33 <SimonRC> you mean, that a noob is maintaining a library?
21:52:39 <ehird> SimonRC: Why the maker of the library and the game would suggest that someone who only knew a little bit of Python and no C++, would maintain a Python binding to a C++ library
21:53:06 <ehird> SimonRC: let me draw it
21:53:07 <SimonRC> maybe a good way to learn?
21:53:44 <ehird> Library: http://www.farbs.org/pycap.html --> It's a binding to Python of a C++ lib --> Maker of library sez to friend: 'You should maintain this!' --> Friend only knows a tiny bit of python and NO C++ --> Friend is maintaining it, by doing nothing
21:53:53 <ehird> SimonRC: You must realize that this friend has no desire to learn C++ and won't.
21:54:01 <ehird> So he will be totally unable to maintain it in any way.
21:55:46 -!- oklopol has joined.
21:58:17 <SimonRC> um, so why did he maintain it then?
22:04:40 <ehird> SimonRC: 'Cause the owner of the library suggested it.
22:04:44 <ehird> I dunno, I thought 'WTF' too
22:04:53 <ehird> But it's a great way to kill a project!
22:06:21 <SimonRC> 'cause RCF almost likelyly uses the Python bindings for Pycap
22:07:03 <ehird> python bindings for *popcap*
22:07:08 <ehird> AKA unmaintained ;)
22:08:01 <SimonRC> is this freind "W.P. van Paassen"?
22:09:17 <ehird> SimonRC: err, I don't think so
22:09:45 <ehird> SimonRC: 'GNU/Linux (and Mac OSX) port of PopCap Games Framework ...'
22:09:50 <ehird> obviously they know C++ then
22:10:37 <SimonRC> There doesn't seem to be any author mentionned on Farbs's pycap page
22:10:52 <ehird> SimonRC: Yes obviously due to laziness
22:11:06 <ehird> Apparently at the last check my friend was trying to get a sourceforge project up and stumbling at every stpe.
22:11:14 <ehird> He's not the most technologically-minded ...
22:11:31 <SimonRC> why the heck maintain the library then?
22:11:41 <ehird> SimonRC: 'Cause farbs told him to.
22:11:48 <ehird> (I don't get it either.)
22:11:58 <ehird> (The last time I asked him, he laughed or something)
22:24:50 -!- oerjan has quit ("Good night").
22:38:29 -!- oklofok has joined.
22:55:28 -!- Iskr has quit ("Leaving").
22:56:11 -!- oklopol has quit (No route to host).
23:09:14 -!- RedDak has quit ("Killed (NickServ (Comando GHOST usato da DIO))").
23:34:33 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
23:34:45 -!- Judofyr has joined.
23:43:14 -!- GregorR has quit (Read error: 104 (Connection reset by peer)).
23:43:56 -!- GregorR has joined.
00:02:52 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
00:03:09 -!- Slereah_ has joined.
00:32:27 <pikhq> Okay, I just went ahead and split my Magic cards 4 ways. . . And I still have 111 extra beyond that.
00:34:28 <ehird> pikhq: Canada just got a whole lot fun. And there's no agora war
00:34:32 <ehird> At least idle in #ircnomic
00:35:18 * SimonRC worries that the humour might be too subtle for some people; especially on YouTube: http://www.youtube.com/user/infinitesolutions
00:37:08 <ehird> "you suck faggot nerd nerd nerd mother fucker"
00:37:40 <ehird> so apparently, they suck a british dish and have sexual intercourse with the mothers of the math rock group "nerd nerd nerd" (I just made that one up)
00:41:22 <pikhq> SimonRC: Brilliant.
00:41:54 <pikhq> I'd hope that the 'shooting targets off the Empire State Building' would be a dead giveaway. . .
00:42:19 <pikhq> Of course, I'd also hope that people would actually learn a damned thing in high school, so I may well just be ignorant.
00:44:07 <SimonRC> I have been watching several of his videos They're all good
00:44:25 <SimonRC> I almost tried the minesweeper one out
00:44:53 <pikhq> "It's called electrical tape because it conducts electricity"
00:47:09 -!- kar8nga has joined.
00:47:35 -!- kar8nga has left (?).
00:49:06 <ehird> SimonRC: Speaking of minesweeper and zork...
00:49:24 <pikhq> And I'm loving the 'advanced server' to simulate DST changeover.
00:49:53 <pikhq> But, yeah, the humor is a bit subtle for Youtubers.
00:49:56 * SimonRC wonders how the second Google TV video was done.
00:50:57 <ehird> SimonRC: setting up a fake site
00:51:19 <SimonRC> It must have taken a lot more effort than the previous ones
00:51:34 <SimonRC> the menus that he used to select the tv show were spiffy
00:51:48 <SimonRC> unless that is some re-skinned existing TV site
00:52:11 <SimonRC> but injection of the extra "TV" link into the HTTP comms shouldn't be *too* difficult.
00:52:38 <SimonRC> http://www.youtube.com/watch?v=7MulSMSJV-U
00:52:52 <ehird> SimonRC: Ooh, I have an idea.
00:53:00 <ehird> A text adventure whose completion relies on xyzzy and plugh.
00:53:09 <ehird> They are the most indepth commands in it, you can do;
00:53:17 <ehird> Xyzzy the xyzzy in the xyzzy
00:53:22 <ehird> it can be used in any context
00:53:25 <ehird> and is defined elaborately for both
00:53:28 <ehird> same applies to plugh
00:53:40 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:53:48 <ehird> SimonRC: So, a lot of the moves are akin to 'Plugh the xyzzying plugh in the plughing xyzzy plugh'
00:54:23 -!- Tritonio has joined.
00:55:03 <SimonRC> how an esolang where you can say "do the thing to the thingy with the doohickey"
00:55:33 <ehird> SimonRC: IF input languages are basically esolangs.
00:55:44 <ehird> Actually, the final move to my xyzzyplugh game should be:
00:56:26 <ehird> Talk to the plughing xyzzy about how to plugh the xyzzying plugh in the plughing xyzzy plugh while plughing the xyzzytical plughs of the xyzzyland plughmobile of plughxyzzys as the plughness plughs xyzzy up the plugh.
00:56:51 <ehird> which should go in to a very in-depth analysis of how you talked to the plughing xyzzy about that
00:57:03 <ehird> "Blah blah and you said about blah."
00:57:07 <ehird> "Xyzzying plugh: etc etc"
00:57:18 <ehird> and then that will end in a huge row
00:57:23 <ehird> where the xyzzying plugh fights you
00:57:37 <ehird> and you kill it by using the plughxyzzy of plughitical proportions in xyzzyland or whatever
00:57:44 <ehird> that you made not long before
00:57:48 <ehird> from almost all of the game objects
00:58:03 <ehird> and then, when that happens, you find the xyzzy of plughlight in its remains
00:58:11 <ehird> which causes the world to evaporate
00:58:21 <ehird> and you escape on a plughland parachute made of xyzzy
00:58:35 <ehird> SimonRC: but of course
01:00:07 <ehird> SimonRC: http://groups.google.com/group/alt.xyzzy/topics the best usenet group ever
01:00:48 <ehird> it even has paedophilliac kooks!
01:00:49 <ehird> http://groups.google.com/group/alt.xyzzy/browse_thread/thread/681784573d944d44#
01:02:12 <Slereah_> And where's the shit and vomit?
01:02:38 <Slereah_> I SWEAR OFFICER, I DIDN'T KNOW SHE WAS ONLY 3!
01:02:45 <Slereah_> http://membres.lycos.fr/bewulf/Divers3/1210089776017.jpg
01:05:45 <Slereah_> I wonder, is there a language with a command to replace the symbol for the command?
01:05:58 <Slereah_> Not for any useful reason, just for obfuscation.
01:06:03 <ehird> It's called MY MOTHER
01:07:22 <ehird> Slereah_: #ircnomic is all fun now.
01:07:24 <ehird> It is called Canada.
01:08:26 <Slereah_> I dunno, you're not very tolerant of Amiral Ackhbar.
01:08:54 <ehird> Besides, our rules mean that your Admiral Ackbar votes only count as one.
01:08:57 <ehird> Since you are, in fact, the same person.
01:10:51 <ehird> Slereah_: Yes. With SCIENCE
01:11:16 <ehird> Slereah_: In fact, I have a truly wonderful proof for this that this margin is too narrow to contain.
01:12:07 <Slereah_> Nice try. I did the same thing for my homeworks, but it didn't fly!
01:12:33 <Slereah_> I should do something like this just before I die.
01:12:49 <SimonRC> If I could write a novel...
01:13:12 <Slereah_> "The proof for this I have, and will develop it in an upcoming article"
01:13:13 <SimonRC> I would write one full of bizarre metaphores and imagery that seems meaningful
01:14:11 <ehird> SimonRC: Then you'd be one of thousands of other authors!
01:14:13 <ehird> Millions, in fact.
01:14:16 <SimonRC> I would moan that no-one could see that the novel contained the meaning of life and the secret to universal happiness, despite it being all-but-spelled-out in the book
01:14:22 <ehird> And I would probably love your book. I'm a pretentious fucker.
01:14:31 <ehird> (Note: my pretentiousness is unrelating to my fucking.)
01:14:38 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
01:15:13 -!- Judofyr has joined.
01:16:06 <SimonRC> ISTR that Illuminatus does something like that, though rather then moaning there is a short note at the beginning
01:16:21 <SimonRC> I forget what secret is supposed to be revealed.
01:16:47 <Slereah_> The Illuminatus is pretty much plot vomit.
01:16:49 <ehird> Slereah_: How did you send an empty message?
01:17:16 <ehird> Can *I* have l33t skillz?
01:18:05 <Slereah_> You can acquire them here : http://www.encyclopediadramatica.com/Computer_Science_3
01:18:21 <ehird> Slereah_: The correct response is "No! You fool! Only l33ts may have ... l33t powers"
01:18:50 <ehird> Then I follow it with "Halt! You fiend! You are not a l33t. I am a l33t. FurthermoraksldjASOIDHASIUDHAIUHKJSANKJASNDJKASDHAKJHKRRNRKNRKRKRR"
01:19:28 <ehird> Slereah_: Do you not agree?
01:19:42 <SimonRC> most people will see nothing on the following line:
01:20:13 <SimonRC> some people will see nothing on this line instead:
01:20:40 <Sgeo> Is there supposed to be more than just "fnord"?
01:20:44 <SimonRC> or maybe the other way round
01:20:57 <ehird> Sgeo: more than just " "?
01:20:58 <SimonRC> Sgeo: both lines say fnord once
01:21:02 <Sgeo> I saw "fnord" twice
01:21:07 <ehird> SimonRC: They both say " " once?
01:21:13 <ehird> Sgeo: How can you see blank space twice?!
01:21:28 <SimonRC> client doesn't do colour, eveidentally
01:21:32 <ehird> freenode strips colours SimonRC
01:21:34 <Sgeo> isn't +c color stripping?
01:21:38 <ehird> that's enabled by default
01:21:45 <SimonRC> not on this channel though
01:22:12 <ehird> SimonRC: No, colour is stripped
01:22:15 <SimonRC> I tried on a random channel and I could see my own colours
01:22:29 <Sgeo> do you see this as red?
01:22:37 <SimonRC> I thought that seeing your own text relied on the server echoing it back to the client
01:22:47 <Sgeo> SimonRC, I see it as red.
01:23:00 <SimonRC> ok, so it doesn't work by server echo
01:23:00 <ehird> this channel is +c
01:23:09 <ehird> SimonRC: Colour stripping is on
01:23:39 <pikhq> SimonRC: Have you ever logged into IRC via Telnet?
01:23:47 <SimonRC> ah, I was looking at my modes not #esoteric's modes
01:25:16 <SimonRC> I had a more-unusual-than unusual dream
01:25:24 <ehird> SimonRC: I like dreams!
01:25:39 <SimonRC> I was, um, somewhere, and I could ly
01:26:20 <ehird> You could ly, could you?
01:26:28 <ehird> Anyway, flying a metre up would be fun
01:26:34 <SimonRC> At one point I was floating down inside a really huge space
01:26:49 <SimonRC> like, the inside of a cathedral tower or something
01:27:39 <SimonRC> I considered using the space to do a bit of skydiving, but something told me not to, and sure enough I found that there were wires that held light up or something every so often on the way down
01:27:57 <SimonRC> going up is tricky even when near the ground
01:28:37 <ehird> SimonRC: 'something' = 'the part of your brain that just invented that'
01:28:37 <SimonRC> BTW, the Matrix makes a lot more sense in its original form, where humans were being used for computing power, not electrical power
01:29:04 <SimonRC> yeah, I watched some of the added stuff on the DVD
01:29:21 <SimonRC> the bros talked about the early development of the idea
01:30:27 <SimonRC> you know its just a simulation, yet you can't break the rules by wanting to
01:30:53 <SimonRC> however, if the simulation is internally generated, then it makes sense that you can brek the apparent rules
01:31:47 <SimonRC> anyway, enough of that; bed-time
01:32:51 <ehird> Slereah_: goddamn that Mike Sandy guy makes me want to kill people
01:39:45 <ehird> pikhq: We need halp
01:45:15 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
01:47:58 -!- GregorR has quit (Connection timed out).
01:48:23 -!- Tritonio has quit (Remote closed the connection).
01:51:32 -!- GregorR has joined.
02:21:56 -!- GregorR has quit (Read error: 110 (Connection timed out)).
02:27:00 -!- GregorR has joined.
02:57:54 -!- GregorR has quit (Read error: 110 (Connection timed out)).
03:04:45 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
05:03:59 -!- olsner has quit (Read error: 113 (No route to host)).
05:46:42 -!- GreaseMonkey has joined.
06:07:02 -!- Sgeo has quit ("Ex-Chat").
07:56:19 -!- Judofyr has quit.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:10:18 -!- ihope_ has joined.
08:21:15 -!- ihope has quit (Read error: 110 (Connection timed out)).
08:26:31 -!- GregorR has joined.
08:32:42 -!- GregorR has quit (Read error: 104 (Connection reset by peer)).
08:58:51 -!- GreaseMonkey has quit ("Unisex.").
09:00:45 -!- GreaseMonkey has joined.
09:01:15 -!- Iskr has joined.
09:19:32 -!- GreaseMonkey has quit ("i better turn ipv6 off.").
09:19:56 -!- GreaseMonkey has joined.
09:26:08 -!- timotiis has joined.
09:35:31 -!- GregorR has joined.
09:37:02 -!- Corun has joined.
10:05:06 <oklofok> there are 17 queriams in a flendra
10:05:17 -!- kar8nga has joined.
10:22:42 -!- ihope_ has quit (Read error: 110 (Connection timed out)).
10:31:42 -!- Tritonio has joined.
10:42:58 -!- GreaseMonkey has quit ("Unisex.").
11:05:13 -!- kar8nga has left (?).
11:20:42 -!- GregorR has quit (Read error: 110 (Connection timed out)).
12:16:14 -!- kar8nga has joined.
12:17:59 -!- kar8nga has left (?).
12:41:24 -!- kar8nga has joined.
12:47:47 <AnMaster> Deewiant, I got an idea for a new fingerprint: ESOL: B = Execute a 0gnirts as brainfuck, takes one tick, H = Execute a 0gnirts as HQ9++
12:51:40 <Deewiant> I might not call it ESOL... BFHQ or something rather, it's only two langs after all
12:52:10 <AnMaster> Deewiant, cfunge implements BASE, CPLI, DIRF, FILE, FIXP, FPDP, FPSP, HRTI, INDV, JSTR, MODU, NULL, ORTH, PERL, PNTR, REFC, ROMA, SUBR, TIME, TOYS now btw
12:52:14 <AnMaster> Deewiant, well I would add more ones
13:11:32 <AnMaster> just an idea anyway, will finish some other fingerprints before that
13:14:08 -!- kar8nga has quit ("Leaving.").
13:28:50 <AnMaster> oklofok, palindrome is when it is same backwards and forwards isn't it?
13:29:36 <AnMaster> well then it isn't a palindrome
13:29:47 <AnMaster> as it is a word backwards but not the same string
13:30:06 <AnMaster> AMOR was some greek god or something iirc?
13:31:32 <Deewiant> (and it also means love in a couple of languages)
13:31:39 <oklofok> "esol = lose" is not a palindrome?
13:31:51 <oklofok> it seems there's something wrong with my perception again
13:31:59 <AnMaster> Deewiant, ROMA is after all about roman so ;P
13:32:41 <AnMaster> oklofok, well no it isn't a palindrome, as a palindrom is like abcba, if reversed it is the same string
13:32:53 <oklofok> >>> "esol = lose"==reverse("esol = lose")
13:33:09 <AnMaster> oklofok, lose is esol reversed
13:33:41 <oklofok> have i said either "lose" or "esol" is a palindrome?
13:33:44 <AnMaster> "A palindrome is a word, phrase, number or other sequence of units that has the property of reading the same in either direction (the adjustment of punctuation and spaces between words is generally permitted)."
13:33:49 <oklofok> perhaps i'm not quoting well enough
13:33:54 <AnMaster> <oklofok> (just a wild palindrome)
13:34:28 <oklofok> non alphanumberic characters aren't usually counted
13:34:37 <oklofok> so we are talking about the string esollose
13:34:44 <oklofok> i'm fairly sure it's a palindrome
13:34:54 <oklofok> but if not, can you tell me what's wrong with it?
13:34:57 <AnMaster> oklofok, you meant the whole string was a palindrome?
13:35:13 <oklofok> so i wasn't quoting well eonugh
13:35:19 <oklofok> we should all be speaking lojban
13:35:37 <oklofok> anyway, i need to continue reading about databases, next: the wonders of sql
13:36:11 <oklofok> after implementing an sql query evaluator, sql is very, very hard to understand! :P
13:38:09 <AnMaster> oklofok, err it is hard to understand after you implemented it?
13:39:24 <oklofok> <IRONY> after implementing an sql query evaluator, sql is very, very hard to understand! :P </IRONY>
13:40:32 <SimonRC> xml schema was invented by the sort of people that think factoryfactoryfactories are the solution to all software problems
13:40:49 <AnMaster> SimonRC, well I prefer S-Expressions
13:41:14 <SimonRC> you can't say "element foo containts an element bar and an element baz"
13:41:45 <SimonRC> no, you have to say "element foo contains simple content which contains a sequence which contains an element foo and an elemnt baz"
13:41:51 <oklofok> gonna go read now, really ->
13:52:11 -!- olsner has joined.
13:52:28 <AnMaster> I strongly prefer the S-Expressions version there
14:28:18 -!- kar8nga has joined.
14:33:41 -!- ehird has joined.
14:35:00 -!- ehird has changed nick to testais523test.
14:35:13 -!- testais523test has changed nick to ais523.
14:35:36 -!- ais523 has changed nick to ehird.
14:36:43 -!- ehird has changed nick to ais523test.
14:36:53 -!- ais523test has changed nick to ehird.
14:40:02 -!- ehird has changed nick to testais523test.
14:40:36 -!- testais523test has changed nick to ehird.
14:42:17 -!- ehird has quit ("Leaving").
14:48:00 -!- ehird has joined.
15:28:39 -!- Slereah_ has joined.
16:22:56 -!- timotiis has quit (Remote closed the connection).
16:35:44 -!- timotiis has joined.
16:53:32 -!- kar8nga has quit ("Leaving.").
17:48:59 -!- Sgeo has joined.
18:02:21 -!- Slereah- has joined.
18:08:44 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
18:38:44 -!- calamari has joined.
19:15:41 -!- olsner has quit (Read error: 110 (Connection timed out)).
19:15:55 -!- olsner has joined.
19:34:47 -!- kar8nga has joined.
19:51:15 -!- oklofok has quit (Read error: 113 (No route to host)).
19:58:17 -!- Judofyr has joined.
20:06:00 -!- oerjan has joined.
20:10:56 -!- GregorR has joined.
20:23:33 -!- RodgerTheGreat has joined.
20:25:43 <RodgerTheGreat> oerjan: y'know, there's a unicode alphabet to do that properly
20:27:31 <Slereah-> RodgerTheGreat : Do you race rats professionaly for a living?
20:27:59 <oerjan> actually, RodgerTheGreat is secretely a lab rat
20:28:13 <oerjan> second cousin twice removed of Brain
20:47:02 <ehird> oerjan: I almost have that captcha done for haskellnomic
20:54:43 -!- GregorR has quit (Read error: 110 (Connection timed out)).
20:55:36 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
20:57:27 -!- Slereah- has joined.
21:44:36 -!- GregorR has joined.
21:45:02 <ehird> oerjan: http://hpaste.org/7545
21:47:22 -!- Judofyr_ has joined.
21:51:28 <ehird> brb in ... 20 mins?
21:53:22 <RodgerTheGreat> check out this thing I ported: http://rodger.nonlogic.org/games/demos/Voxels/
21:55:43 <AnMaster> RodgerTheGreat, can I get it in non-applet format
21:55:58 <AnMaster> RodgerTheGreat, as the java for amd64 is not the plugin part
21:56:08 <RodgerTheGreat> you can run it locally in Appletviewer- that has a good chance of working
21:56:26 <AnMaster> RodgerTheGreat, download url to it?
21:56:36 <RodgerTheGreat> download the source file, and do "javac Grouf.java;appletviewer Grouf.java"
21:58:04 <AnMaster> some rather low resolution balls on some ground
21:58:21 <AnMaster> RodgerTheGreat, what is a voxel?
21:58:45 <RodgerTheGreat> it's like a 3d pixel. http://en.wikipedia.org/wiki/Voxel
21:59:17 <AnMaster> RodgerTheGreat, and how comes it is 43 FPS all the time, normally it varies slightly
21:59:57 <RodgerTheGreat> well, that's an average FPS counter and the main loop does pretty much the exact same number of calculations each iteration
22:00:25 <AnMaster> RodgerTheGreat, +/- 1-2 FPS when I run other stuff in bg after all
22:01:25 <RodgerTheGreat> well, you can see how I calculate it- it probably does that because I average framerate for the entire length of time the program has been running, rather than the last several seconds
22:04:27 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
22:04:38 -!- kar8nga has left (?).
22:06:33 <RodgerTheGreat> also the way I calculate it truncates decimal points...
22:12:28 -!- Iskr has quit ("Leaving").
22:28:18 -!- Corun has quit ("This computer has gone to sleep").
23:38:23 -!- olsner has quit ("Leaving").
00:00:06 <ehird> AnMaster has still LeftCanadaInAHuff I see.
00:01:04 -!- Judofyr_ has quit (Read error: 104 (Connection reset by peer)).
00:01:23 -!- Judofyr has joined.
00:01:52 -!- oerjan has quit ("Good night").
00:13:51 <RodgerTheGreat> GregorR: I challenge you to try porting that voxel thing to Javascript.
00:14:31 <ehird> RodgerTheGreat: Okay!
00:15:02 <RodgerTheGreat> are you going to use a canvas or do something totally crazy?
00:15:13 <Slereah-> A guy tries to teach me javascript
00:15:18 <ehird> RodgerTheGreat: Either canvas, or divs with crazy borders.
00:16:02 <ehird> RodgerTheGreat: Inline? I'll just make it an .svg
00:16:08 <RodgerTheGreat> Slereah-: I can code in JS, but my HTML and DOM skills aren't that strong, so I can't do too many cool things, and I find it incredibly aggrivating to debug
00:16:35 <ehird> RodgerTheGreat: I like how your java code is like 2x longer than the qbasic :P
00:16:49 <RodgerTheGreat> ehird: it's pretty much the same as doing an <svg> tag in HTML
00:17:02 <ehird> Still, for java, it has suprisingly little boilerplate
00:17:11 <RodgerTheGreat> ehird: 1- my Java code is clearer, 2- my Java code is faster, 3- my Java code runs on way more computers
00:17:12 <ehird> RodgerTheGreat: but an animated .svg with loads of computation info to the side is cooler than an .html
00:17:36 <ehird> 1- about the same to me 2- yeah this is probably true 3- a good point
00:17:39 <ehird> not sayign that it's bad
00:17:42 <ehird> just that it's kinda funny
00:18:33 <ehird> RodgerTheGreat: I should implement a mini functional language in JS in 10 lines
00:18:40 <ehird> and then write the demo in 5 in that language
00:18:42 <RodgerTheGreat> When I first moved from coding in DarkBASIC to Java, it was really frustrating how much harder graphical applications were, but once I picked up the API and worked out some templates it became much easier
00:19:08 <RodgerTheGreat> ehird: or extend gregor's MIPS thing with graphical output and then write it in MIPS ASM!
00:19:25 <ehird> RodgerTheGreat: hahah
00:20:30 <ehird> RodgerTheGreat: oh and if it's between reading your DarkBASIC and reading your java
00:20:34 <ehird> you know what i want you to use
00:22:08 <RodgerTheGreat> actually, I think a fair amount of the code length difference in the Java version comes from the fact that I have to declare vars before use
00:22:39 <RodgerTheGreat> and many lines where he jams together several expressions I space out one per line
00:22:44 <ehird> RodgerTheGreat: it's the paradigm. Java & basic - poles apart
00:23:23 <ehird> For this, as a purely language matter, BASIC fits. Java is just good because of its delivery potential, for this
00:23:45 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:24:14 <RodgerTheGreat> although, with appropriate libraries and prebuilt classes, you could probably make Java even better. BASIC is harder to extend and modularize
00:25:10 <ehird> RodgerTheGreat: OMG I could use pprocsesing.js for this
00:25:28 <ehird> (jreisegs new toy , port of Processing to js)
00:25:40 <RodgerTheGreat> *or* you could use that thing that compiles Java into JS that was on /.
00:25:52 <ehird> RodgerTheGreat: get this - as well as exposing the same API as Processing does to JS,
00:26:00 <ehird> it will even COMPILE bona-fide Processing code into JS
00:26:29 <RodgerTheGreat> I think it currently uses some hacky regexes and stuff, but it works pretty reliably
00:26:47 <RodgerTheGreat> honestly, I think it makes processing seem a great deal more useful
00:27:59 <RodgerTheGreat> the only real reason I thought it could be useful before was the arduino integration- Processing is basically a slightly dressed up version of the Applet framework with looser syntax restrictions than Java
00:28:00 <ehird> RodgerTheGreat: it's the kind of thing that hackety.org loves
00:28:15 <ehird> (one of my favourite programming blogs - of why the lucky stiff fame)
00:28:43 <RodgerTheGreat> I mostly read Hackaday, and /., and it's been mentioned both places from time to time
00:30:00 <ehird> RodgerTheGreat: me: proggit,hackety,random places
00:30:54 <RodgerTheGreat> I think I'm going to try porting this next: http://www.advsys.net/ken/klab/labdemo2.bas
00:31:19 <RodgerTheGreat> it's supposed to look like this when it runs: http://www.advsys.net/ken/klab/labdemo2.png
00:31:47 <RodgerTheGreat> I've done raytraced 2.5d before, but I've never tried texture-mapping
00:36:24 <ehird> pikhq: Please excuse me or whatver in my cfjs
00:36:27 <ehird> For ducks & platypuses
00:38:01 <ehird> RodgerTheGreat: Agora nomic.
00:48:32 <RodgerTheGreat> haha, great bash quote: < S7L> Would you guess the nationality of the genius behind this code: datapublikacjijava=new Date(przetarg.jakistartpublikacjirok.value, przetarg.jakistartpublikacjimiesiac.value-1, przetarg.jakistartpublikacjidzien.value)
01:12:04 <pikhq> I'm going to go with either German or something Slavic.
01:12:22 <pikhq> (Serbain perhaps? Only Slavic language I know that's regularly written in Roman letters)
01:12:29 <pikhq> s/Serbain/Serbian/
01:13:00 <lament> it's definitely slavic
01:31:54 -!- SimonRC has quit (Read error: 110 (Connection timed out)).
02:18:44 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
02:19:00 -!- Judofyr has joined.
02:45:59 -!- ehird has quit (Remote closed the connection).
02:53:53 <pikhq> lament: I'm guessing Serbian.
03:00:40 <lament> well, if that's only because Serbian is the only Slavic language you know that's written in Roman letters, that's not a very good guess :)
03:03:02 <lament> (ie, if you're not aware of Czech, Polish, Belorussian, Slovak...)
03:03:31 <lament> wait, belorussian is cyrillic :)
03:03:54 -!- Tritonio_ has joined.
03:05:07 <lament> whoa: http://en.wikipedia.org/wiki/Belarusian_Arabic_alphabet
03:05:31 <pikhq> Oh, right; can't believe I forgot Czech, Polish, and Slovak.
03:05:53 <pikhq> I'm going to go generalise my guess.
03:05:54 -!- Tritonio has quit (Read error: 113 (No route to host)).
03:06:00 <pikhq> I guess that it is an Indoeuropean language.
03:06:17 <lament> i bet it's a human language!
03:06:32 <pikhq> Is it Germanic? Is it Romantic? Is it Slavic? Is it Celtic?
03:06:42 <pikhq> My guess doesn't say!
03:06:59 <lament> i bet it's spoken in the solar system!
03:08:02 <pikhq> Let's determine the languages it's *not*.
03:08:10 <pikhq> It's not Afrikaans, for one.
03:08:42 <pikhq> It could be Old English. :p
03:08:49 <pikhq> It's not Japanese!
03:08:58 <pikhq> (or any Japonic language, for that matter!)
03:08:58 <lament> It could be Old Japanese!
03:09:31 <pikhq> Afrikaans ain't very old.
03:09:41 <lament> i think it's proto-indo-european
03:09:43 <pikhq> It ain't Esperanto.
03:10:00 <pikhq> And I doubt it's an Esperantido.
03:10:17 <pikhq> And what's with that response in Japanese? :p
03:10:18 <lament> but perhaps it's Old Esperanto.
03:10:49 <pikhq> Zamenhof's early Esperanto was actually pretty close to the modern language.
03:10:54 <lament> it could be Zamenhof's mother tongue for all we know.
03:12:46 <pikhq> Zamenhof's mother tongue was Russian, so. . . Yeah.
03:13:02 <pikhq> (he was also a friggin' polyglot)
03:13:24 <pikhq> He was fluent in Russian, Yiddish, Polish, and German, for crissake.
03:15:48 <pikhq> There is a religion which considers Zamenhof a diety.
04:12:34 <lament> pikhq: that's not very polyglot..ic
04:12:45 <lament> just two closely related language groups!
04:14:49 -!- calamari has quit ("Leaving").
04:15:57 <pikhq> lament: That's just what he was fluent in.
04:16:40 <pikhq> He was competent in another 4, and had a basic grasp of another 4.
05:13:09 -!- GreaseMonkey has joined.
05:22:13 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:53:13 -!- ke5tpy has joined.
06:01:18 -!- olsner has joined.
07:20:30 -!- Slereah- has quit (Read error: 110 (Connection timed out)).
07:38:33 -!- SimonRC has joined.
07:53:58 -!- kar8nga has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:18:10 <lament> holy crap, i'm a genius composer.
08:18:21 <lament> i just need to compose something :(
08:23:03 -!- Sgeo has quit ("Ex-Chat").
08:47:43 -!- GregorR has quit (Read error: 104 (Connection reset by peer)).
08:48:07 -!- olsner has quit (Read error: 110 (Connection timed out)).
08:50:09 -!- GregorR has joined.
09:04:38 -!- Iskr has joined.
09:54:22 -!- oklopol has joined.
10:03:59 -!- kar8nga has left (?).
10:09:02 -!- Corun has joined.
10:40:12 -!- GreaseMonkey has quit ("Unisex.").
10:50:32 -!- Judofyr has joined.
12:50:32 -!- Corun has quit ("This computer has gone to sleep").
12:52:59 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
12:53:17 -!- oklopol has joined.
13:21:23 -!- kar8nga has joined.
13:26:42 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
13:27:44 -!- Judofyr has joined.
13:51:02 -!- ehird has joined.
14:08:51 -!- Slereah_ has joined.
14:25:49 <ehird> Sgeo-log-reading-ping.
15:05:49 -!- RodgerTheGreat has quit (Read error: 110 (Connection timed out)).
15:27:50 -!- ehird has quit (Remote closed the connection).
15:28:40 -!- ehird has joined.
16:15:10 -!- oklofok has joined.
16:18:30 -!- oklopol has quit (Read error: 110 (Connection timed out)).
16:33:59 -!- RodgerTheGreat has joined.
16:36:22 -!- Slereah- has joined.
16:36:22 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
16:37:34 -!- ke5tpy has left (?).
16:56:25 -!- ais523 has joined.
17:10:51 <ais523> ehird: anyway, a reflective programming language needs everything to be the same to reflect better
17:10:59 <ais523> In Feather, everything is a function
17:11:05 <ehird> * ais523 (n=ais523@chillingi.eee.bham.ac.uk) has joined #esoteric
17:11:05 <ehird> <ais523> ehird: anyway, a reflective programming language needs everything to be the same to reflect better
17:11:06 <ais523> (it compiles into Unlambda, BTW)
17:11:27 <ais523> objects are also functions
17:11:35 <ais523> and messages are curried
17:11:52 <ais523> if you send a message to an object, you get a function back which accepts its arguments and carries out the message's operations
17:12:01 <ais523> oh, and pass-by-reference and pass-by-value are the same thing
17:12:08 <ais523> Java claims not to use pointers, but they're hidden
17:12:16 <ais523> whereas Feather truly has no pointers
17:12:32 <ais523> the way in which this is possible is that no object can be modified after it's created
17:12:47 <ais523> if you want to modify an object, you go back in time and modify it as it was created, or create a copy and modify that
17:12:59 <RodgerTheGreat> in Java, everything is implemented with pass-by-value, but reference semantics make them work for all intents and purposes as if they were pass-by-reference
17:13:22 <ais523> yes, different languages have different solutions to the same problem
17:13:38 <ais523> I don't know of a language that attempted to use time-travel to implement inheritance, though, before Feather
17:13:52 <ais523> unfortunately I don't have an interp or even a written spec
17:13:59 <ais523> although I do have some idea of what the initial syntax will be
17:14:05 <ais523> it's like a cross between Haskell and Smalltalk
17:14:35 <RodgerTheGreat> I'm just clarifying that from a programming perspective, Java's pass-by-reference isn't "fake" or anything like that
17:14:44 <ais523> it's a real pass-by-reference
17:14:54 <ais523> but pass-by-reference is still distinct from pass-by-value
17:14:59 <ais523> in part, that's why both int and Integer exist
17:15:20 <ais523> in Feather, pass-by-value is pass-by-reference, there's no way to distinguish between them
17:15:31 <ais523> (and therefore a sane interp would likely pass references to save on object duplication)
17:15:55 <RodgerTheGreat> well, the primitive wrapper classes are *mostly* for use with the generics system, in my experience
17:16:10 <ais523> in Feather, there will be boxed types too
17:16:18 <ais523> because primitives aren't objects, just functions
17:16:29 <ais523> unfortunately having everything as an object lead to an infinite regress
17:16:51 <RodgerTheGreat> yeah, but I can see how primitive functions could avoid that problem
17:17:02 <ais523> because even the method by which objects reply to messages is changeable
17:17:17 <ais523> and if it were an object, that object itself would need an object to reply to messages, and nothing would ever get done
17:17:54 <RodgerTheGreat> you can even do a neat bootstrap thing where only a minimal set of primitive operations are built in, and the rest are synthetic (and therefore portable), allowing implementations to make more standard library functions builtin where desired
17:18:05 <ehird> RodgerTheGreat: Feather has no primitives.
17:18:15 <ehird> The only reason it'll even start up is because it creates a time loop.
17:18:20 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
17:18:21 -!- Judofyr_ has joined.
17:18:46 <ais523> well, as far as I can tell removing lambda from the language would be a mistake
17:18:54 <ais523> although it manages to bootstrap that up from thin air too
17:19:01 <RodgerTheGreat> I'm going to guess that "no primitives" means they're actually just hidden in the syntax
17:19:04 <ehird> RodgerTheGreat: no
17:19:08 <ehird> dude, this is #esoteric
17:19:11 <ais523> the syntax is bootstrapped from thin air too
17:19:13 <ehird> it has >no< primitives
17:19:15 <ais523> at least from Feather's point of view
17:19:32 <ais523> the first thing a Feather program does when it starts up is to define its own primitives and syntax
17:19:49 <ais523> OFC, they had to exist in the first place so it could do that
17:19:55 <ais523> but they come from a previous existence of the program
17:20:09 <Deewiant> what's the god program from which all originate
17:20:12 <ais523> each iteration of the time loop happens simultaneously from Feather's point of view
17:20:24 <ais523> but from an interp's point of view, you just have to start with an image of juist after the loop
17:20:28 <RodgerTheGreat> and what I'm saying is that "no primitives" is like saying "no syntax". It's there, you're just disguising it or making it minimalistic. Even OISC has primitive operations.
17:20:31 <ais523> so it could start up in the first place
17:20:44 <ehird> RodgerTheGreat: No.
17:20:47 <ais523> RodgerTheGreat: it doesn't have primitive syntax either
17:20:52 <ehird> But through some clever logic, it can have none.
17:20:59 <ehird> A closed mind is not a good thing in #esoteric ;)
17:21:08 <ais523> as in, it defines its own syntax, which is used to parse the program that defined that syntax
17:21:16 <RodgerTheGreat> I will continue to call bullshit on this concept until sufficient evidence is provided to alter my opinion
17:21:23 <ais523> if you think that it's possible for the cause to come after the effect, there's no conceptual problem
17:21:35 <ais523> you just have to realise that Feather's timeline is not the same as the real-life timeline
17:21:44 <RodgerTheGreat> I'm not dogmatic, but I am firm in my disagreement. This isn't the same as closed-mindedness.
17:21:46 <ais523> Deewiant: it could be literally anything
17:22:05 <ais523> because Feather can be retroactively transformed into any other language
17:22:08 <Deewiant> and I suppose the compiler does program inference?
17:22:28 <RodgerTheGreat> If the first thing a language does is define it's own syntax, the syntax for defining syntax IS THE SYNTAX.
17:22:31 <ais523> actually, I'm not entirely sure if there's a difference between a compiler and an interp
17:22:43 <ais523> RodgerTheGreat: except it defines the syntax with the syntax it's about to define
17:23:00 <ais523> in order to actually get this running on a real computer, you obviously have to tell it what the syntax is in some other language first, though
17:23:12 <ais523> but Feather itself is unaware that that's happened
17:23:17 <ehird> RodgerTheGreat hates most non-Java, non-BASIC languages anyway.
17:23:17 <ais523> and thinks it's been in a timeloop forever
17:23:22 <ais523> does that make more sense now?
17:23:32 <ais523> to implement it in real life, you have to start it off somehow
17:23:38 <ehird> ais523: You know what part of emacs sucks? The speedbar.
17:23:55 <ais523> but once you've started it off, there's no way from inside the language that you can't tell it was bootstrapped out of thin air, and it repeatedly bootstraps itself every time you change the syntax
17:24:05 <ais523> not all that unlike CLC-INTERCAL, actually
17:24:06 <RodgerTheGreat> ehird: utterly untrue. I like BF, ///, LOGO, PHP, Postscript, LUA and some of my own languages, in addition to Java and BASIC
17:24:08 <Deewiant> ais523: what part of this is different from "Feather is all programming languages, it just depends on the compiler/interp you use"
17:24:25 <ais523> Deewiant: most compilers aren't self-modifying
17:24:39 <ais523> and the initial image makes a lot of difference
17:24:54 <Deewiant> ais523: so what rules does a Feather program have to obey to be able to be called that
17:24:56 <ais523> for an initial syntax, I'm thinking somewhere between Haskell and Smalltalk, with a few primitives defined
17:25:10 <ais523> Deewiant: it has to start from a standardised intial image that I'm planning
17:25:14 <ais523> or something that acts equivalently
17:25:27 <ais523> which is what makes it Feather rather than HQ9+, for instance
17:25:40 <ehird> ais523: here's some syntax that should work
17:25:47 -!- Judofyr_ has changed nick to Judofyr.
17:25:53 <ais523> and the thing that distinguishes that image from other languages is that it does inheritance by time travel
17:26:02 <ehird> (| a >-> x |) y: _z
17:26:10 <ais523> which is implemented with call/cc
17:26:17 <ais523> ehird: that's ugly, what's that meant to do
17:26:26 <ehird> ais523: I don't know but I like it
17:26:37 <ais523> it has more unique punctuation marks than I was planning for my entire language
17:26:40 <ehird> Self uses (| .. |) for something
17:26:47 <ehird> >-> is just cute, it does something in haskell
17:26:50 <ehird> _z is kinda ugly, though, yeah
17:27:27 <Deewiant> >-> doesn't do anything I'm aware of
17:27:44 <ais523> Deewiant: that came up as a smiley in my client...
17:28:23 <ehird> >-> is in some kinda library
17:28:33 <ehird> -< is definately in some kind of Arrows library
17:28:45 <ais523> looks like monad stuff
17:29:03 <Deewiant> ehird: -< is part of the do syntax for arrows
17:29:05 <ehird> a generalization of monads and applicative functors
17:29:14 <Deewiant> like <- is for monads (and also arrows)
17:29:31 <ehird> ais523: I came up with a name for the root object, BTW
17:30:49 <ais523> ehird: mine has no name
17:31:00 <ais523> it's passed in as a lambda to your program
17:31:08 <ehird> ais523: i know, but () is a nice name
17:31:29 <ais523> ehird: you can call it whatever you want easily
17:31:38 <ehird> ais523: I meant for prototalk
17:31:39 <ais523> you just assign it as a property of itself
17:31:43 <ehird> Which is drifting into esoness
17:31:44 <ais523> and then everything has access to it
17:31:57 <ais523> oh, and this somehow doesn't cause an infinite regress
17:32:03 <ais523> just a finite regress of arbitrary depth
17:32:13 <ais523> because you have to take steps to avoid a timeloop when doing so
17:32:19 <ehird> talker <- () ++ [#say: <- [:m | ...]]
17:32:36 <ais523> and one way is simply to limit the number of times a command can run, like ONCE in INTERCAL, but more than once
17:45:59 -!- timotiis has joined.
17:50:39 -!- kar8nga has left (?).
18:07:03 -!- ehird has quit (Read error: 110 (Connection timed out)).
18:07:21 -!- oerjan has joined.
18:07:29 -!- ehird has joined.
18:07:38 -!- Corun has joined.
18:23:09 -!- Slereah_ has joined.
18:23:09 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
18:25:33 -!- olsner has joined.
18:27:49 -!- sebbu has joined.
18:51:10 -!- kar8nga has joined.
18:52:00 <ais523> if the limit was too low, you can always go back later and change what it was
18:52:23 <ais523> sort of like bounded depth-first search
18:52:56 <ais523> but used to create the effects of lazy evaluation in a language which has to be strict due to the way it does side effects, like the time travel
18:53:58 <oerjan> lazy time travellers ftw
18:54:36 <ehird> oerjan: 'fuck it, I'll kill hitler TOMORROW'
18:56:00 <oerjan> http://tvtropes.org/pmwiki/pmwiki.php/Main/HitlersTimeTravelExemptionAct
18:57:15 <ais523> it's only after thinking about Feather that I appreciate how it's even possible that a story can have someone go back in time, change a few details, then come back to the present and the world is much like it was when they left with only a few details changed
18:57:49 <ais523> or the sort of time-loop where people go back in time, perform the same actions as they did before they went back in time, and end up getting back into their own time machine, stuck in a loop
18:58:12 <ais523> both of those are common Feather scenarios, the second is something that you have to spend effort avoiding
19:00:37 <ehird> ais523: http://qntm.org/?f16
19:00:40 <ehird> make that possible in feather
19:01:40 <ais523> that page doesn't display in Mozilla 1.4
19:03:24 <ehird> ais523: an amusing time-travel diversion
19:03:31 <ehird> how doesn't it display?
19:03:45 <ais523> I see the title and background
19:04:04 <ehird> get prepared for an EPIC FLODD
19:04:19 <ehird> * One British penny, dated circa 1900
19:04:19 <ehird> * A 1kg cereal box (unopened, i.e. containing cereal)
19:04:19 <ehird> * A coin-operated time machine
19:04:19 <ehird> * A bank account containing at least £10
19:04:19 <ehird> * 1039 metric tonnes of scotch tape
19:04:21 <ehird> Go to a cash machine and extract £10 from your bank account. Buy something costing around £2.49 from any nearby shop, to obtain some change. Use the money to operate the time machine. (Note: time machine, bank account and the money contained therein will be created at later steps. Therefore the only equipment you ACTUALLY need to find in order to build this F-16 is the scotch tape, the penny and the cereal box. However, you should ensure that all of the
19:04:28 <ehird> above items are present before you begin, or you will not be successful.)
19:04:30 <ehird> Head forwards in time by several thousand years to an era of human history which has invented time travel. Extract some further cash from your account - it will have accumulated a HUGE quantity of interest during this time - and purchase a coin-operated time machine identical in model to your own. Send this back in time on autopilot to several minutes before you started following these instructions. This accounts for the time machine in the above list.
19:04:35 <ehird> Head back to the 1900s or thereabouts and open a bank account with what was your current bank in your home era. Remember, banks go through name changes, so be sure to check up on what its old name used to be. Deposit the old British penny. Compound interest should increase the value of this penny to about £10 by the time you need it in 2003ish. All of your money is now also accounted for, as is your bank account.
19:04:40 <ehird> Take your scotch tape and your box of cereal backwards in time by roughly 14,000,000,000 years and allow the preposterous quantity of scotch tape to undergo gravitational collapse to form a star. This star should be of sufficient mass to go supernova, generating large amounts of iron and other heavy elements. If you picked your spot correctly, this should result in the creation of our Sun and the pl
19:04:45 <ehird> anet Earth, both of which you are therefore directly responsible for.
19:04:47 <ehird> Head down onto the shores of young, sterile, lifeless Earth and empty out the box of cereal onto a randomly-selected stretch of coastline. Mould and bacteria in the cereal should soon begin to munch on the cereal, then the box, gradually evolving and growing until becoming life as we know it. You are now also responsible for the evolution of humanity, and obviously, all things that humanity has ever done, including, for example, the invention of time machi
19:04:56 <ehird> nes, bank accounts, scotch tape, breakfast cereal, and F-16 Fighting Falcons. (Note: even if the bacteria die out and humanity evolves by other means, then you still made Earth and everything on it, so you still get the credit for F-16s. However, the cereal box is not directly involved.)
19:05:00 <ehird> Head to the distant future a second time. Extract millions of pounds from your bank account.
19:05:02 <ehird> Finally, return to the present day. Purchase a real F-16.
19:05:07 <ais523> but then, this is the browser that accidentally blanked Wikipedia's main page, and then broke another users's welcome template by inserting newlines into it at random places
19:05:17 <ehird> ais523: has it pasted?
19:05:36 <ehird> ais523: "Top-posting is evil. Quoting the entire message is evil. winmail.dat is evil." -- taral
19:05:46 <ehird> "You forgot lines that don't break after ~72 characters. Also evil." -- geoffrey spear
19:06:13 <ehird> ais523: Shall I inform them about your rather retarded email client, and justification for top-posting?
19:06:16 <ais523> I should remember to load up Firefox when posting emails, that makes my email cliant slightly less evil
19:06:24 <ais523> and I don't always top-post
19:06:29 <ais523> sometimes I add the > by hand instead
19:06:32 <ehird> But should I tell them? :P
19:06:42 <ais523> I might at some point, though
19:11:16 <olsner> Everything is benign in comparison to winmail.dat. Even perl.
19:11:36 <ais523> what's in the file, by the way/
19:11:58 <ais523> I can't find a way to get rid of it when using IE, but luckily there's often a version of Firefox installed nowadays
19:12:05 * ais523 uses public computers when not using eir laptop
19:12:15 <ais523> at least, when simultaneously using the Internet
19:12:27 <olsner> I believe winmail.dat is a way of encoding attachments, much like uuencoding, only more obscure
19:12:51 <ehird> ais523: It appears to be 0 bytes
19:13:14 <ais523> you can see it in the mime stuff if you look at a raw message
19:13:39 * ais523 wouldn't be surprised if it somehow managed to lie about its own length, though
19:13:43 <ehird> "for spurious reasons that nobody believes the first time when I tell em."
19:13:46 <ehird> ais523: I am so tempted to tell them
19:13:55 <ehird> 'cause it's so ridiculous
19:14:02 <ais523> well, part of the reason
19:14:05 <ehird> ehird@debian:~$ cat /home/ehird/Desktop/Downloads/winmail.dat
19:14:13 <ais523> I told them that noboy believes the rest of the reason the first time
19:14:36 <ehird> ais523: I have a solution
19:14:50 <ehird> I'll write a perl script which acts as an email bridge
19:14:53 <ehird> ais523: You use it as an email server
19:14:58 <ehird> and it wraps at 80 columns
19:15:01 <ehird> removes winmail.dat
19:15:08 <ais523> ehird: I threatened to do something similar to that
19:15:12 <ehird> ais523: For example:
19:15:19 <ais523> except using JavaScript so I could run it from public computers...
19:15:26 <ehird> ais523: i'd run it on my server
19:15:38 <ehird> agora-discussion+agoranomic.org@bridge.elliotthird.org
19:15:45 <ehird> agora-discussion++agoranomic.org@bridge.elliotthird.org
19:15:58 <ehird> name+afterplus+domain@bridge.elliotthird.org
19:16:01 <ehird> since + is actually used in stuff
19:16:06 <ehird> so I need to use two to sepreate the domain
19:16:11 <olsner> ehird: that was a quite intriguing little story!
19:16:29 -!- Sgeo has joined.
19:16:50 <olsner> I should write that model of time travel I've been thinking of writing in haskell
19:16:51 <ais523> Douglas Adams thought of the bank account trick
19:17:17 <Sgeo> bank account trick?
19:17:30 <ehird> ais523: I should write a mailing list manager.
19:17:33 <Sgeo> Leaving money to accumulate interest in the future
19:17:40 <ehird> That is ENTIRELY run by email, even the archives!
19:17:43 <ehird> And uses only one address.
19:17:50 <ehird> list+subscribe@foo.com
19:17:58 <ehird> list+post34@foo.com
19:18:10 <Sgeo> ehird, I liked the OS thing you talked about better
19:18:18 <ais523> you should write a purely email-based wiki
19:18:21 <Sgeo> Work on that before working on this mailing list manager please?
19:18:31 <olsner> newState = simulate (oldState <++> timeTravellersTo (timeOf oldState) newState)
19:18:34 <ehird> Sgeo: Speaking of which:
19:20:20 <olsner> the difficult issue here is how a state is somehow augmented with arbitrary data travelling backwards in time
19:20:25 -!- ehird has set topic: Channel { topic = "esoteric programming languages", internationalHub = True, logUrl = "http://tunes.org/~nef/logs/esoteric" }.
19:30:01 <ehird> Sgeo: So. My OS idea.
19:30:13 <ehird> Sgeo: Uh. This belongs in the collective channel.
19:30:17 <ehird> Which needs a name.
19:30:25 <ais523> ehird: I suggest #esoteric
19:30:33 <Sgeo> PSOX! j/k j/k j/k
19:30:35 <ehird> ais523: Very amusing, but no.
19:30:43 <ehird> I don't get where you are drawing the parallel.
19:31:21 <ehird> ais523: It's like suggesting that TUNES should be #esoteric.
19:31:32 <ehird> Except that, you know, this collective isn't just an os project.
19:31:37 <Sgeo> Maybe it should be?
19:31:40 <ais523> ehird: because what you're suggesting sounds pretty much like what we do anyway
19:31:58 <ais523> and your other projects mostly seem to stall after a bit
19:32:04 <ais523> I've done more for eso-std than you have...
19:32:18 <ehird> eso-std is still a project..
19:32:21 <ehird> a lot of the stuff is done
19:42:55 <ehird> ais523: Sgeo Maybe #zonk? :P
19:43:05 -!- ais523 has quit ("""").
20:47:12 -!- RedDak has joined.
21:31:52 -!- Iskr has quit ("Leaving").
22:10:50 -!- kar8nga has left (?).
22:14:00 -!- olsner has quit (Read error: 110 (Connection timed out)).
22:14:46 -!- olsner has joined.
22:16:50 -!- timotiis_ has joined.
22:20:54 -!- timotiis has quit (Nick collision from services.).
22:21:12 -!- timotiis_ has changed nick to timotiis.
22:42:40 -!- jix has joined.
22:55:05 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
22:55:29 -!- Slereah- has joined.
23:15:58 -!- jix has quit ("CommandQ").
23:25:54 -!- RedDak has quit (Remote closed the connection).
23:34:28 -!- olsner has quit ("Leaving").
23:49:22 * SimonRC goes to bed. ("You only have power if you work over time.")
23:52:42 * oerjan wonders if ehird is getting the reference
23:53:04 <ehird> oerjan: I dereference all my pointers.
23:57:04 <oerjan> null pointers too? that explains the rubbish
00:16:20 -!- ehird has set topic: let awesome channel = channel == Channel { topic = "esoteric programming languages", internationalHub = True, logUrl = "http://tunes.org/~nef/logs/esoteric" } in filter awesome channels -- [#esoteric].
00:17:58 -!- oerjan has set topic: let awesome = (==) Channel { topic = "esoteric programming languages", internationalHub = True, logUrl = "http://tunes.org/~nef/logs/esoteric" } in filter awesome channels -- [#esoteric].
00:18:15 -!- ehird has changed nick to aoesunthsoneuah.
00:19:08 -!- aoesunthsoneuah has set topic: filter (Channel { topic = "esoteric programming languages", internationalHub = True, logUrl = "http://tunes.org/~nef/logs/esoteric" } ==) channels -- [#esoteric].
00:32:12 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:36:55 -!- aoesunthsoneuah has changed nick to ehird.
00:38:24 -!- ehird has quit (Remote closed the connection).
00:42:46 <RodgerTheGreat> ooh, pretty: http://upload.wikimedia.org/wikipedia/commons/3/36/AckermannComplexFig2a.jpg
00:42:47 <oerjan> can't we all just get a LOGN?
00:43:34 <oerjan> BWAHAHA *CACK* *WHEEZE*
00:48:08 <Slereah-> Does pi calculus have some simple, deterministic transformation rules?
00:48:40 <Slereah-> Also does it actually have a way to define the system before defining its behaviour.
00:49:10 <Slereah-> Everything I found assumed that there was already a bunch of agents connected.
00:55:19 <oerjan> well it's definitely non-deterministic
00:56:51 <oerjan> of course there are ways to make systems where there is only one rule that can fire at a time - you can encode lambda calculus in it after all
00:57:28 <oerjan> well one substantial rule
00:58:15 <oerjan> afaiu everything other than sending+receiving a message is reversible
00:58:34 <Slereah-> But what happens if you have something like -a<x>.P'|a(y).Q'|a(y).R'?
00:59:12 <oerjan> definitely non-deterministic, iirc
00:59:30 <oerjan> and if i understand your notation
00:59:58 <Slereah-> It are "P sends x through a, Q and R are open for business"
01:00:19 <oerjan> and all use the channel name a
01:00:45 <oerjan> so yes, either Q or R could receive the x
01:01:49 <Slereah-> I suppose I could just add some arbitrary rule to decide who gets it.
01:02:08 <Slereah-> Like the first agent open for business in the list.
01:05:11 <Slereah-> What about that other thingy, do I have to define the system separately?
01:05:18 <Slereah-> Or can it be expressed with the language itself?
01:06:29 -!- Phenax has joined.
01:08:01 <Slereah-> You know, the little agents and their communication channels.
01:08:17 <Slereah-> In everything I found so far, they're just assumed to exist ex nihilo.
01:08:37 <oerjan> you have just one expression really
01:08:52 <oerjan> which then evolves by applying a rule to it
01:09:49 <oerjan> so agents will be separated by |'s i assume
01:09:49 <Slereah-> Most things in pi calculus focus on what it's supposed to mean, not too much on the rules.
01:11:51 <Slereah-> Any way to create agents apart from the !P = P|!P ?
01:12:26 <oerjan> that's the only way to get duplication iirc
01:12:43 <Slereah-> That's a challenge right there.
01:14:29 <oerjan> unlimited duplication that is
01:15:43 <oerjan> a(y).(Q|Q) could be used to get two identical processes, say
01:16:59 <oerjan> anyway i don't know much more than the basic definitions for pi-calculus
01:18:07 <Slereah-> Problem is, pi calculus is like the less popular brother of lambda calculus.
01:18:13 <Slereah-> It are hard to find good ressources.
01:21:33 <Slereah-> And right now, I'm trying to find a way to fit it in some awesome language.
01:36:20 -!- oerjan has quit ("Good night").
02:20:30 -!- Tritonio_ has quit (Remote closed the connection).
02:48:42 -!- Corun has quit ("This computer has gone to sleep").
03:31:30 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
03:31:40 -!- Slereah_ has joined.
03:33:35 -!- Slereah- has joined.
03:50:33 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
05:20:28 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:30:59 -!- Sgeo has quit ("Ex-Chat").
07:27:21 -!- Judofyr has joined.
07:33:35 -!- Slereah- has quit (Read error: 110 (Connection timed out)).
07:35:15 -!- olsner has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:32:09 -!- olsner has quit ("Leaving").
09:03:17 -!- Corun has joined.
09:05:34 -!- Judofyr_ has joined.
09:05:41 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
09:09:51 -!- Iskr has joined.
09:36:07 -!- Corun has quit ("This computer has gone to sleep").
10:03:19 -!- Corun has joined.
10:34:46 -!- jix has joined.
10:37:44 -!- Corun has quit ("This computer has gone to sleep").
11:00:18 -!- Corun has joined.
11:27:55 -!- Tritonio has joined.
12:10:41 -!- timotiis has joined.
12:47:53 -!- ehird has joined.
12:47:58 <ehird> um, ais523-log-reading:
12:48:07 <ehird> pikhq has given away your identity on the agora lists..
12:48:12 <ehird> if I recall correctly you don't like that
12:48:21 <ehird> I guess it can be passed off as a name coincidence
12:48:26 <ehird> it's not like 'Alex Smith' is particularly unique
12:58:30 -!- Tritonio has quit (Remote closed the connection).
13:21:34 -!- Sgeo has joined.
13:51:15 <Sgeo> THIS, MY GOOD SIR, IS THE YEAR FUTURE
13:52:31 <Sgeo> http://pixelcomic.net/
13:53:30 <ehird> Sgeo: 'ELLIOTT' GOD DAMNIT
13:54:01 <Sgeo> I FIGURE THAT OUT EVENTUALLY BUT DIDN"T KNOW IF CORRECTING IT WAS WORTH IT SORRY DIDN"T REALIZE YOU"D APPRECIATE THE CORRECTION
14:07:32 <ehird> Sgeo: I just founded InconsisteNomic
14:07:33 <ehird> <ehird> 1. Rule 2 is false.
14:07:33 <ehird> <ehird> 2. Rule 1 is false.
14:07:33 <ehird> <ehird> 3. This is a nomic.
14:07:52 <ehird> (FUN FACT: not actually inconsistent)
14:23:13 -!- lifthrasiir has joined.
14:29:17 -!- RedDak has joined.
14:31:48 * Sgeo has a final today
14:31:54 <Sgeo> SQL and database normalization
14:45:31 -!- Slereah_ has joined.
14:46:07 <oklofok> Slereah_: i hear your doing pi!
14:47:10 <Slereah_> I swear, I didn't know she was only twelve!
14:47:34 <oklofok> i haven't done a 12-year-old in ages :<
14:48:12 <Slereah_> Do you happen to have that tutorial that was posted here some time ago?
14:48:44 <oklofok> do you remember anything about the link?
14:49:00 <oklofok> erm, what's some time ago?
14:49:22 <Slereah_> I dunno. Maybe a month or two.
14:49:32 <Slereah_> I tried searching the logs with "pi calculus"
14:49:38 <Slereah_> But the google, they do nothing
14:50:24 <oklofok> i found wikipedia's explanation about it sufficient iirc
14:50:57 <Slereah_> It has no rules for !P, just an equivalence.
14:51:05 <Slereah_> So I'm not too sure how to proceed with it
14:51:24 <oklofok> it's ages since i touched pi
14:51:37 <Slereah_> !P means that you can has copies of P.
14:51:38 <oklofok> (bsmntbombdood said it was hard so i had to learn it)
14:51:48 <oklofok> hmmm, i'll look at an page
14:52:08 <Sgeo> I probably should get ready to leave at some point
14:52:11 <Sgeo> If I miss my bus..
14:58:11 <oklofok> indeed, it doesn't seem to really explain !
14:58:36 <Slereah_> I just have no idea how to do something to compute it.
14:59:30 <oklofok> !x(y).P == x(y).P | !x(y).P.
15:00:42 <oklofok> it seems just that when you have the head !x(y) for some process, it doesn't ever get to the tail, just gives x(y) forever
15:01:23 <oklofok> and because you can't have ! as a value, it seems to me like P could just as well be 0
15:01:24 <Slereah_> How do you stop the recursion at some point then?
15:01:33 <oklofok> umm, don't send it anything?
15:01:57 <oklofok> it will just receive as long as someone is sending something
15:02:02 <oklofok> i mean, if i get this right
15:02:18 <oklofok> i'm basing this on !x(y).P == x(y).P | !x(y).P
15:03:02 <oklofok> when something is sent to a process with that as a tail
15:03:32 <oklofok> it is a special receiver that, when sent something to, continues to its tail, but makes a copy of itself before that
15:03:44 <oklofok> so basically, you do the duplication only when something is sent to you
15:04:25 <Slereah_> Though I'd like to find something with the set of rules well explained
15:06:12 <oklofok> well yeah, i'm not sure what exactly happens to names when you duplicate etc
15:06:29 <oklofok> i assume the new copy gets its own namespace, because if not, it would make noesnse
15:06:58 <Slereah_> Is the big book of pie worth buying?
15:07:57 <Slereah_> http://www.amazon.com/exec/obidos/ISBN=0521658691/portlandpatternrA/
15:08:50 -!- ehird has quit (Remote closed the connection).
15:10:28 <oklofok> i need to leave, nightwatchmanship starts in a few hours
15:11:55 <oklofok> there's so much great stuff on amazon
15:12:17 <oklofok> if only i was FUCKING RICH
15:35:04 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
15:56:05 -!- oklofok has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
16:04:16 -!- Tritonio has joined.
16:09:13 -!- RedDak has quit (Read error: 104 (Connection reset by peer)).
16:09:31 -!- RedDak has joined.
16:20:00 -!- RedDak has quit (Read error: 113 (No route to host)).
16:29:23 -!- RedDak has joined.
16:43:14 -!- dak has joined.
16:48:17 -!- dak has quit (Client Quit).
16:48:32 -!- dak has joined.
16:51:13 -!- Deewiant has quit ("Viivan loppu.").
17:02:34 -!- RedDak has quit (Read error: 110 (Connection timed out)).
17:02:57 -!- Deewiant has joined.
17:17:30 -!- Corun has quit ("This computer has gone to sleep").
18:48:46 -!- dak has quit (Remote closed the connection).
18:53:09 -!- ehird has joined.
18:53:54 -!- ehird has quit (Client Quit).
18:57:38 -!- ehird has joined.
18:57:42 <ehird> I am trying out stumpwm, indeed.
19:00:15 <ehird> lament: oh no what
19:00:43 -!- Judofyr has joined.
19:01:50 <ehird> lament: what's wrong with stumpwm
19:01:56 <ehird> oh, I guess you don't like emacs
19:01:57 <ehird> so it would follow
19:01:59 <lament> i dunno, never tried it
19:11:40 -!- Tritonio has quit (Remote closed the connection).
19:11:51 -!- jix has quit (Nick collision from services.).
19:12:08 -!- jix has joined.
19:12:16 -!- ehird has quit ("Lost terminal").
19:20:27 -!- Judofyr_ has quit (Connection timed out).
19:27:12 -!- RedDak has joined.
19:28:35 -!- ehird has joined.
19:47:29 -!- olsner has joined.
19:47:56 -!- RedDak has quit (Remote closed the connection).
19:55:40 -!- Deewiant has quit ("= Viivan loppu.").
19:56:14 -!- Deewiant has joined.
20:35:29 <ehird> Luciano Bello discovered that the random number generator in Debian's openssl package is predictable. This is caused by an incorrect Debian-specific change to the openssl package (CVE-2008-0166). As a result, cryptographic key material may be guessable.
20:47:12 -!- Sgeo[College] has joined.
20:53:39 -!- timotiis_ has joined.
20:56:24 <Deewiant> ehird: the patch in question: http://svn.debian.org/viewsvn/pkg-openssl/openssl/trunk/rand/md_rand.c?rev=141&view=diff&r1=141&r2=140&p1=openssl/trunk/rand/md_rand.c&p2=/openssl/trunk/rand/md_rand.c
21:06:25 -!- timotiis has quit (Read error: 110 (Connection timed out)).
21:09:10 -!- timotiis_ has changed nick to timotiis.
21:10:32 -!- Tritonio has joined.
22:03:55 -!- oerjan has joined.
22:20:36 -!- Iskr has quit ("Leaving").
22:32:48 -!- oklopol has joined.
22:37:45 -!- Sgeo[College] has quit ("http://www.mibbit.com ajax IRC Client").
23:03:49 -!- olsner has quit ("Leaving").
23:55:31 <GregorR> I feel like I'm right on the cusp of figuring out a way to arrange abstractions such that code written with no concurrency in mind could be massively concurrent, but every time I get closer to the solution I find a problem, the fix to which causes things to become serial again :(
23:56:10 <ehird> Zooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooom
23:56:16 <ehird> GregorR: You want to go purely functional for that.
23:56:19 <ehird> It's the only way to have it reliable.
23:56:32 <GregorR> Well, that's the OBVIOUS solution.
23:56:36 <GregorR> I don't want the obvious solution :P
23:56:54 <GregorR> I want the "average moron X who doesn't know what a monad is could write concurrent code" solution.
23:57:13 <ehird> GregorR: Maintaining a system like that sounds scary
23:57:40 <GregorR> I don't think I'm going to come to a clean solution, so this isn't going to go anywhere, but it's an interesting thought experiment :P
23:58:18 <GregorR> Unfortunately, I keep ending up needing to maintain data dependencies in such a way that either everything turns serial or marking dependencies reduces to the halting problem.
23:58:48 <ehird> GregorR: I am afraid I think it's impossible
23:59:10 <GregorR> I don't think it is either.
23:59:12 -!- Corun has joined.
23:59:18 <GregorR> But that doesn't make it any less interesting of a thought experiment.
23:59:28 <ehird> I think about the halting problem allll day
00:03:37 <GregorR> My thoughts so far: Every object is an actor, and so every object is its own threads. When you call a method on an object, the request gets queued and what's returned immediately is a box which will be filled in when the method is run. Methods can be run on this box by simply queueing them, so they become dependencies of the original calculation. The problem is, when you pass an object X into a method, you have an expectation that everything the method
00:03:37 <GregorR> is going to do to X is going to be done by the next line of code, but marking those data dependencies ends up either forcing everything that uses X to wait, or being impossible to resolve.
00:04:10 <GregorR> The only time when you would explicitly wait for a box to be filled is when you branched based on its value.
00:13:21 -!- insomninja has joined.
00:19:09 -!- sekhmet has quit (Read error: 110 (Connection timed out)).
00:21:40 -!- oklopol has quit (Read error: 110 (Connection timed out)).
00:26:09 -!- sebbu has quit ("@+").
00:31:32 -!- ehird has quit (Remote closed the connection).
00:33:24 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:39:58 -!- cherez has quit (Read error: 104 (Connection reset by peer)).
00:41:09 -!- cherez has joined.
00:48:04 -!- oerjan has quit ("Nude gait").
01:11:21 -!- insomninja has quit (Remote closed the connection).
01:11:26 -!- Sgeo has joined.
02:02:45 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
02:03:05 -!- bsmntbombdood has joined.
02:07:44 -!- Corun has quit ("This computer has gone to sleep").
02:14:44 -!- jix has quit ("CommandQ").
02:33:35 <RodgerTheGreat> I discovered my Combinatorics teacher has an Erdös number of 2 today
02:34:14 <Slereah_> Sleep with him. You'll have 3.
02:35:12 -!- lifthrasiir has quit (Remote closed the connection).
02:35:16 -!- revcompgeek has joined.
02:35:37 <RodgerTheGreat> I'd rather do the "kill him and eat his heart" thing, because I could gain all his wisdom
02:35:56 <Slereah_> Go do that with Erds himself then
02:36:33 <RodgerTheGreat> 1) He is dead and his heart is not in good eating form these days, 2) I do not consume the organs of meth-heads, however mathematically productive
02:36:58 <Slereah_> Then you won't eat any mathematician hearts!
02:37:10 <Slereah_> They're all dead, meth heads, or both.
02:37:43 <RodgerTheGreat> well, that's the main reason I have an infinity so far
02:37:44 <Sgeo> Wiles is a meth head?
02:38:26 <Sgeo> Guy who proved Fermat's Last Theorem?
02:38:34 <Sgeo> http://en.wikipedia.org/wiki/Andrew_Wiles
02:42:16 <RodgerTheGreat> to be fair, that image doesn't really help his non-meth head case
02:43:04 -!- revcompgeek has left (?).
02:43:13 <RodgerTheGreat> gahahaha: http://en.wikipedia.org/wiki/Totally_real_field
02:43:31 <RodgerTheGreat> I understand why it's called that, but I can't help reading it in a surfer voice
02:45:53 -!- Slereah- has joined.
03:00:46 -!- lifthrasiir has joined.
03:04:50 <RodgerTheGreat> gahahaha: http://en.wikipedia.org/wiki/Totally_real_field
03:04:50 <RodgerTheGreat> I understand why it's called that, but I can't help reading it in a surfer voice
03:07:34 -!- sekhmet has joined.
03:12:51 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
03:58:20 -!- oklopol has joined.
04:09:04 -!- revcompgeek has joined.
04:30:02 -!- Slereah_ has joined.
04:30:03 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
04:42:25 -!- revcompgeek has quit ("http://www.mibbit.com ajax IRC Client").
04:42:43 -!- Slereah- has joined.
05:06:14 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
05:06:14 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
05:15:06 -!- Sgeo has quit ("Ex-Chat").
05:20:36 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:26:58 -!- Slereah_ has joined.
05:41:02 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
05:46:43 -!- oklopol has quit (Read error: 113 (No route to host)).
05:47:14 -!- Slereah_ has joined.
05:52:16 -!- revcompgeek has joined.
05:52:57 -!- revcompgeek has quit (Client Quit).
06:50:48 -!- Judofyr has joined.
07:25:02 -!- GregorR has quit ("Leaving").
07:57:28 -!- GregorR has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:52:34 -!- Iskr has joined.
09:35:34 -!- Judofyr_ has joined.
09:35:39 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
09:51:54 -!- GreaseMonkey has joined.
10:11:01 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
10:13:44 -!- GreaseMonkey has quit ("Unisex.").
10:20:44 -!- Slereah_ has joined.
10:27:43 -!- ais523 has joined.
10:31:34 -!- ais523 has quit (Remote closed the connection).
10:41:50 -!- Slereah- has joined.
10:42:00 -!- timotiis has joined.
10:45:34 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
10:48:37 -!- Slereah- has quit.
11:17:24 -!- timotiis_ has joined.
11:45:39 -!- Corun has joined.
11:48:58 -!- timotiis has quit (Read error: 110 (Connection timed out)).
12:06:44 -!- jix has joined.
13:22:10 -!- Judofyr_ has changed nick to Judofyr.
13:26:07 -!- ehird has joined.
13:29:27 -!- oklopol has joined.
13:34:18 <ehird> The debian guys are in denial
13:40:11 -!- ais523 has joined.
14:05:36 -!- BMeph has joined.
14:13:52 -!- Corun has quit ("This computer has gone to sleep").
14:14:47 -!- Corun has joined.
14:17:31 -!- oklofok has joined.
14:18:44 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
14:21:54 -!- oklofok has quit (Read error: 104 (Connection reset by peer)).
14:34:48 -!- oklopol has joined.
14:42:16 <AnMaster> ehird, did you discover that about <<< now?
14:43:02 <AnMaster> anyway it isn't exactly the same thing as echo
14:43:15 <AnMaster> echo foo | bar will create a subshell, while <<< won't iirc
14:43:37 -!- oklopol has quit (Connection reset by peer).
14:44:05 <ehird> AnMaster: well duhhh
14:44:14 <AnMaster> ehird, this can be useful in loops
14:44:31 <ehird> AnMaster: yes, when you are trying to get bash half as fast as C for the language shootout
14:44:37 <AnMaster> for example echo foo | while read line; do blah blah; done
14:44:49 <ehird> OK, that's a good point
14:44:54 <ehird> I thought you were talking about speed.
14:44:55 <AnMaster> then any variables set or changed in the loop will not persist after the loop
14:45:20 -!- oklopol has joined.
14:46:09 <ehird> AnMaster: I am evil and evil so I am going to write an OOP EXTENSION FOR BASH
14:49:14 <AnMaster> you can write loadable modules for bash
14:49:29 <AnMaster> not very well known, but yes it is possible to provide new builtin commands that way
14:49:38 <AnMaster> not sure if you can change the syntax of the language though
14:49:43 <ais523> AnMaster: you should write a lambda for bash
14:49:44 <ehird> I'm doing it in pure bash
14:49:46 <ehird> take a look at this:
14:49:48 <ehird> init) iset $self name $1 ;;
14:49:48 <ehird> say) echo "$(ivar $self name) says: $1" ;;
14:49:53 <ehird> not sure if I can make that valid, but ...
14:49:56 <ehird> ais523: I'm on it!
14:50:11 <ehird> hmm, I may have to include the class body as a string
14:50:20 <AnMaster> ehird, there is already a forth for bash
14:50:31 <AnMaster> and a object orientation extension to that forth for bash
14:50:36 <AnMaster> so well you aren't the first one
14:51:01 <AnMaster> http://www.forthfreak.net/index.cgi?BashForth
14:51:23 <AnMaster> of course that isn't OOP in pure bash, but rather oop in forth interpreted by pure bash
14:51:59 <ehird> oop.sh: line 11: case: command not found
14:52:10 <ehird> looks like I'll have to be more evil
14:53:10 <ehird> AnMaster: trying to do evil
14:53:17 <AnMaster> ehird, case $x in; a) blah blah ;; b) blah blah ;; esac
14:53:27 <ehird> That's not the point
14:53:28 <AnMaster> note the double ;; to end case
14:53:35 <ehird> But thank you for being clever and assuming I don't know bash.
14:54:02 <ehird> AnMaster: Macrological magic.
14:54:13 <ehird> talker = Talker new "Harvey"
14:54:13 <ehird> $talker say "ZOMGZ"
14:54:15 <AnMaster> ehird, anyway I seen some oo for bash somewhere I think
14:54:29 <ehird> AnMaster: I don't need to do that!
14:54:56 <AnMaster> much better than eval for setting variable by name provided in variable
14:55:14 -!- Quendus has quit (Read error: 104 (Connection reset by peer)).
14:55:21 <AnMaster> http://www.tldp.org/LDP/abs/html/contributed-scripts.html#OBJORIENTED
14:55:25 -!- Quendus has joined.
14:55:46 <ehird> AnMaster: Well duh, that's not real OOP
15:05:10 <AnMaster> ehird, so tell me when you done your
15:48:04 -!- timotiis_ has changed nick to timotiis.
16:00:26 -!- timotiis_ has joined.
16:09:36 -!- timotiis has quit (Read error: 110 (Connection timed out)).
16:24:02 <ehird> can you like, help me out with CFJ 1943 :3
16:39:14 -!- hardcopy has joined.
16:44:08 -!- hardcopy has quit.
16:52:51 -!- oklofok has joined.
16:58:35 -!- Sgeo has joined.
17:01:13 <oklofok> aaaaaaaand it leaves again ->
17:01:14 -!- oklofok has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
17:03:33 -!- BMeph has quit ("Time for me to go home").
17:19:36 -!- oklopol has quit (No route to host).
17:19:48 -!- BMeph has joined.
17:22:06 -!- Slereah_ has joined.
17:23:46 -!- Slereah- has joined.
17:23:47 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
17:54:14 -!- olsner has joined.
17:54:14 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
17:54:40 -!- Slereah_ has joined.
17:57:35 -!- Slereah_ has quit (Client Quit).
18:04:14 -!- sebbu has joined.
18:39:07 -!- kar8nga has joined.
18:43:12 -!- RedDak has joined.
19:12:56 -!- jix has quit (Nick collision from services.).
19:13:04 -!- jix has joined.
19:57:06 -!- RedDak has quit (Remote closed the connection).
20:54:30 -!- Corun has quit ("This computer has gone to sleep").
20:57:14 -!- Slereah_ has joined.
21:04:19 -!- neotic has joined.
21:05:51 -!- neotic has left (?).
21:06:04 -!- oerjan has joined.
21:11:18 -!- RedDak has joined.
21:17:02 <SimonRC> suddenly screen is passing through mouse commands
21:17:30 <SimonRC> I have been using screen for several years and never before has it been transparent to mouse commands
21:18:11 <Sgeo> What setting did you just change?
21:18:30 <Sgeo> What keypress did you do?
21:18:43 * Sgeo <3s making assumptions
21:18:54 <Sgeo> Maybe you typoed a usual keypress?
21:19:00 <Sgeo> Or whatever you're about to say >.>
21:20:20 <SimonRC> hmm, no, it's back to normal now
21:20:28 <SimonRC> I think it was links that did it...
21:20:59 <SimonRC> If I start and close links before attaching, screen becomes transparent to mouse-presses
21:21:29 <Sgeo> How and why and is that good and why use screen when desktop environments exist?
21:21:34 <SimonRC> what I suspect is actually hapenning is that links is turning on mouse-mode and not tidying up after itself when it closes
21:21:52 <SimonRC> Sgeo: becuase this server is terminal-only
21:22:03 <SimonRC> and because my connection is wobbly
21:22:24 <Sgeo> You're browsing the web from a server?
21:22:59 <SimonRC> firefox was misbehaving at that moment
21:23:19 <Sgeo> So use links on your local computer
21:53:59 -!- GregorR has quit (Read error: 110 (Connection timed out)).
21:54:26 -!- GregorR has joined.
22:05:28 -!- olsner has quit ("Leaving").
22:17:04 -!- kar8nga has left (?).
22:25:44 -!- Iskr has quit ("Leaving").
22:35:17 -!- RedDak has quit (Remote closed the connection).
22:49:53 -!- GregorR has quit (Read error: 110 (Connection timed out)).
22:50:05 -!- GregorR has joined.
23:22:59 -!- BMeph has quit ("Time for me to go home").
23:25:46 -!- sebbu has quit ("@+").
23:39:53 -!- timotiis_ has quit (Connection timed out).
23:41:36 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
00:04:17 -!- Corun has joined.
00:14:29 * SimonRC goes to beeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed.
00:15:28 <ehird> beeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed.
00:15:51 <oerjan> Advice #50314: Never keep your bed near a cliff edge
00:16:31 <ehird> oerjan: You are brilliant.
00:18:49 <ehird> Slereah_: Jolly good old bean!
00:19:04 <oerjan> um, tea is not a bean.
00:20:33 <oerjan> wikipedia tells me that technically coffee beans are not beans either
00:21:53 <ehird> oerjan: Jolly good old leaf
00:22:06 * oerjan finds it slightly disturbing that apparently the frenchman wants tea while the englishman is referring to coffee
00:22:43 <oerjan> That's Just Not Right, I Tell You
00:22:57 <Slereah_> http://images.encyclopediadramatica.com/images/e/eb/Octocat_Fanart.png
00:25:34 <ehird> oerjan: I am writing some particularly gnarly Haskell!
00:25:56 <ehird> <Slereah_> http://images.encyclopediadramatica.com/images/e/eb/Octocat_Fanart.png
00:25:56 <ehird> <Slereah_> Maybe I'm relaxing.
00:26:01 <ehird> stupid selection clipboard
00:26:06 <ehird> <interactive>:1:0:
00:26:06 <ehird> No instance for (ToFormatter
00:26:07 <ehird> (SimpleFormatterInt r String) String t)
00:26:55 <oerjan> ToFormatter your own class?
00:27:12 <ehird> class ToFormatter a r b where
00:27:12 <ehird> toFormatter :: a -> FormatterInt r b
00:27:12 <ehird> instance ToFormatter (FormatterInt r a) r a where
00:27:12 <ehird> instance ToFormatter [Char] r r where
00:27:13 <ehird> toFormatter s = FormatterInt (\k r -> k (r ++ s))
00:27:17 <ehird> (I told you it was gnarly)
00:27:50 <ehird> oerjan: For completeness:
00:27:51 <ehird> data FormatterInt r a = FormatterInt ((String -> r) -> String -> a)
00:27:52 <ehird> type Formatter a = forall r. FormatterInt r a
00:27:52 <ehird> type SimpleFormatterInt r a = FormatterInt r (a -> r)
00:27:52 <ehird> type SimpleFormatter a = forall r. SimpleFormatterInt r a
00:28:52 <ehird> oerjan: any clues? :D
00:30:33 <oerjan> you should have automatically an instance ToFormatter (SimpleFormatterInt r a) r (a -> r). do you want something else?
00:31:12 <ehird> oerjan: SimpleFormatterInt is just an alias, though.
00:31:23 <ehird> oerjan: And you can't instance synonyms
00:31:30 <oerjan> i mean you get that from the alias
00:32:15 <ehird> instance ToFormatter (FormatterInt r a) r a where
00:32:15 <ehird> instance ToFormatter (FormatterInt r (a -> r)) r (a -> r) where
00:32:24 <ehird> oerjan: the first is a generlaization of the second
00:32:27 <ehird> so why is it complaining?
00:34:18 <oerjan> are r and t in the error message required to be general? because that instance gives you r = String, t = String -> String i think
00:35:05 <ehird> oerjan: Shall I just show the koed
00:35:53 <ehird> oerjan: http://hpaste.org/7625
00:36:17 <ehird> I just added the second-last instance, but it' ag generalization of the previous one
00:36:25 <ehird> err, specification
00:36:38 <oerjan> sure, you shouldn't need it
00:37:23 <oerjan> it would just give a confusing overlap which only breaks things
00:37:36 <ehird> No instance for (ToFormatter (SimpleFormatterInt r a) String t)
00:38:26 <ehird> oerjan: To be honest.
00:38:31 <ehird> I just want (format "abc")
00:38:49 <ehird> oerjan: So what i'm doing is defining something to get a Formatter out of a String or a Formatter.
00:38:51 <ehird> As that type-class.
00:38:55 <ehird> But whatever I'm doing. It isn't working.
00:48:17 * oerjan has more or less convinced himself simpleFmt is well-typed
00:49:34 <ehird> oerjan: are you having a problem with it? :P
00:49:45 <ehird> oerjan: It's just delimited CPS. JEEZ.
00:51:01 <oerjan> i'm _seriously_ out of training
00:53:01 <ehird> oerjan: now the real problem is that I _think_ format "a" vs format str is impossible to type properly.
00:53:05 <ehird> At least, with a type-class.
00:53:16 <ehird> It's like recursive type-classes and stuff.
00:54:12 <ehird> oerjan: OK, back to simpler stuff
00:54:12 <ehird> http://hpaste.org/7627
00:54:20 <ehird> format (constFmt "a") doesn't work
00:55:25 <ehird> format (FormatterInt fmt) = fmt id ""
00:55:47 <ehird> oerjan: Okey. Now I just need ........ FORMAT COMPOSITION
00:57:56 <ehird> (%) (FormatterInt f) (FormatterInt g) =
00:57:57 <ehird> FormatterInt (\k r -> f (g k) r)
00:58:00 <ehird> oerjan: AM I AWESOME OR WHAT
00:58:06 <ehird> format (str % int) "abc" 2 => "abc2"
00:58:27 <ehird> format (str % num) "abc" "foo" => No instance for (Num [Char])
00:59:17 <ehird> oerjan: so, is CPS awesome or whut
00:59:19 <oerjan> btw you can define operators infix too
00:59:27 <ehird> but only if I have a type sig
00:59:37 <ehird> (%) :: FormatterInt t t1 -> FormatterInt r t -> FormatterInt r t1
00:59:42 <ehird> couldn't have wrote that out the first time
00:59:46 <ehird> it's obvious in retrospect
01:00:05 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
01:00:07 <oerjan> FormatterInt f % FormatterInt g = ...
01:00:16 <ehird> oerjan: yes, but if you just do that out of the blue it won't work.
01:00:21 <ehird> since it doesn't know % is an infix op
01:00:55 <oerjan> it should. maybe you have to parenthesize the args
01:02:39 <oerjan> actually testing with Just, it just works
01:03:41 <ehird> *Main> :t format (str % str % num)
01:03:41 <ehird> format (str % str % num) :: (Num a) => String -> String -> a -> String
01:03:44 <ehird> that's the craziest thing.
01:03:48 <ehird> it actually gives you sane types
01:06:25 <ehird> oerjan: my formatter is even lazy
01:08:48 <ehird> oerjan: so any ideas about how to allow:
01:09:13 <ehird> OH WAIT I MIGHT KNOW.
01:14:57 -!- Corun has quit ("Google did 9/11").
01:18:17 <ehird> <interactive>:1:4:
01:18:17 <ehird> My brain just exploded.
01:18:17 <ehird> I can't handle pattern bindings for existentially-quantified constructors.
01:19:12 <oerjan> you must use match the pattern either in a case or as a function argument
01:19:37 <oerjan> so that the match has a well-defined smaller scope
01:20:00 <ehird> oerjan: I'm just trying to eliminate that fscking 'r' param
01:20:06 <ehird> It makes me want to murder babies
01:21:22 <ehird> oerjan: ok, having problems
01:27:00 -!- jix has quit ("This computer has gone to sleep").
01:34:23 -!- oerjan has quit ("Good night").
01:45:13 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
02:50:15 <RodgerTheGreat> could somebody with an arbitrary-precision calculator calculate (3^40 - 3^0) / 2008 for me?
02:50:48 <Sgeo> justfuckinggoogleit.com
02:51:52 <RodgerTheGreat> I've been looking around but most suck and I figured this channel would have good odds of finding somebody with one
02:52:11 <Sgeo> I meant use Google as a calculator
02:52:17 <Sgeo> Oh, _arbitrary precision_
02:52:32 <RodgerTheGreat> yeah, google just gives me scientific notation, same as my calculator
05:19:48 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:23:32 * pikhq is done with high school
05:24:05 <pikhq> In fact, to demonstrate that, allow me to show you my high school todo list:
05:36:12 <RodgerTheGreat> The way my technical electives are going it's looking like I might be able to pick up a math minor. Bask in the keen irony.
05:36:53 * pikhq plans on picking up a math major
05:37:04 <pikhq> Combinatorics. . . Been a while since I've done any of that. ;)
05:38:03 <RodgerTheGreat> I did a bunch in Algorithms, Cryptography, Discrete Structures and Stats, so a lot of it's a snap
05:38:19 <RodgerTheGreat> I'm down to three tricky ones left on this homework assignment
05:41:53 <lament> RodgerTheGreat: i'm sure the question either implicitly or explicitly prohibits calculators.
05:42:16 <lament> you're supposed to find some kind of a residue.
05:42:32 <RodgerTheGreat> lament: nah, I'm just pretty sure I was taking the wrong approach to that one
05:43:14 <pikhq> RodgerTheGreat: Are you sure you need (3^40 - 1)/2008 evaluated?
05:43:25 <pikhq> (can't you just leave it in that form)
05:43:32 <lament> i'd hope it's mod 2008
05:43:47 <lament> otherwise it's a really big number
05:44:52 <RodgerTheGreat> pikhq: as I said, don't worry about it- it was involved in trying to check a result
06:17:15 -!- Sgeo has quit (Remote closed the connection).
06:41:33 -!- GreaseMonkey has joined.
06:42:17 -!- Judofyr has joined.
06:50:59 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
06:51:37 -!- Judofyr has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:13:20 -!- GreaseMonkey has quit ("Unisex.").
10:42:54 -!- timotiis has joined.
11:14:52 -!- timotiis has quit (Read error: 110 (Connection timed out)).
11:18:21 -!- Iskr has joined.
12:09:12 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
12:09:44 -!- Judofyr has joined.
12:26:52 -!- Corun has joined.
14:02:44 -!- ehird has joined.
14:42:53 -!- Tritonio has quit (Read error: 104 (Connection reset by peer)).
15:03:11 <ehird> OK, I have discovered the weirdest bot on the weirdest channels.
15:03:13 <ehird> * [Pyrobot] #elfsnuggle @#softsilkyrestrainythingies #elsewhere
15:03:18 <ehird> * Topic for #elfsnuggle is: Welcome to Elfsnuggle! the snuggly-wuggliest channel ever.
15:03:21 <ehird> -ChanServ- [#elfsnuggle] Welcome to ElfSnuggle, the snuggly-wuggliest channel on freenode! *huggles from your ops ElfSong and Strapples*
15:03:37 <ehird> * Topic for #softsilkyrestrainythingies is: Welcome to #softsilkyrestrainythingies. This channel is for anyone who loves soft silky restrainy thingies, your chat host Strapples (A.K.A Alin0) has CP, sensory integration disorder, PDD-NOS, motor neuron disease-NOS (Codenamed progressive CP) and absolutely loves soft silky restrainy thingies! No rules here! Just dont piss me off. Piss me off and you may be muted.
15:11:29 -!- RedDak has joined.
15:14:04 -!- oklopol has joined.
15:31:16 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
15:32:50 -!- AnMaster has quit ("will be back in a bit").
15:37:08 -!- ehird has joined.
15:43:38 <ehird> i got bluecurve working properly
15:43:42 <ehird> OK, now I just have to get it working with kde
15:53:37 -!- AnMaster has joined.
16:09:21 -!- RedDak has quit (Remote closed the connection).
16:29:34 <ehird> oklopol: haskellnomic ROX OR NOT
16:32:35 <ehird> 'Please enter an expression of type (a -> b): '
16:32:47 <ehird> (\x -> x+2) works, undefined works, putStrLn works
16:33:15 -!- oklopol has changed nick to oklobot.
16:35:19 <oklobot> this on guy was once active on our channel for months, all he did was respond to okos randomly
16:35:44 <oklobot> well, sometimes, very rarely, he almost responded coherently to direct questions
16:36:20 -!- oklobot has changed nick to oklofyug.
16:51:08 -!- oklofok has joined.
16:54:11 -!- RedDak has joined.
16:55:25 <ehird> oklofok: so would you play haskellnomic
16:55:28 <ehird> it will be made of luv
17:01:24 -!- oklofyug has quit (Read error: 110 (Connection timed out)).
17:02:06 -!- oklofyug has joined.
17:05:01 -!- oklofyug has quit (Read error: 104 (Connection reset by peer)).
17:08:58 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
17:09:36 -!- Judofyr has joined.
17:10:28 -!- oklofok has quit (Read error: 110 (Connection timed out)).
17:14:48 -!- sebbu has joined.
17:18:40 -!- kar8nga has joined.
17:22:07 -!- timotiis has joined.
17:35:20 -!- Tritonio has joined.
18:14:11 -!- Judofyr_ has joined.
18:14:21 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
18:43:57 <ehird> OERJAN ARE YOU THERE
18:45:56 -!- RedDak has quit (Remote closed the connection).
18:54:41 -!- sebbu2 has joined.
18:55:01 -!- kar8nga has left (?).
18:57:59 -!- kar8nga has joined.
18:58:49 <ehird> kar8nga: YOU BE WHOM
19:01:10 -!- sebbu has quit (Success).
19:01:10 -!- sebbu2 has changed nick to sebbu.
19:01:12 <kar8nga> oh, and I like stackbased languages
19:01:20 <kar8nga> that's why I'm reading sometimes here
19:01:42 <kar8nga> am I now admiited to this illustrous circle?
19:05:48 <ehird> you have to sacrifice a few goats first
19:08:52 <kar8nga> and I always thought the initiation consisted of showing a proof of concept for embedding unlambda in bf
19:09:04 <kar8nga> but yeah, the goats could be easier, actually
19:11:51 -!- jix has joined.
19:12:11 <ehird> kar8nga: the goats are actually intercal programs
19:14:02 -!- Judofyr_ has changed nick to Judofyr.
19:18:38 <AnMaster> <kar8nga> oh, and I like stackbased languages
19:19:29 <AnMaster> kar8nga, I'm working on a fast befunge interpreter in C, befunge is quite stack based, though not exactly only stack based
19:22:34 <AnMaster> http://rage.kuonet.org/~anmaster/cfunge/
19:31:16 <kar8nga> but I will elaborate next week - I gotta pack my bags for my holidays
19:32:53 <kar8nga> AnMaster: just got the sources - I have some questions - but that next week
19:33:11 <AnMaster> kar8nga, well next week I may not be around
19:33:24 <AnMaster> kar8nga, also see README for how to build without boehm-gc
19:33:30 <AnMaster> because it can cause problems sometimes
19:33:44 <AnMaster> kar8nga, also how to install is in README
19:33:52 <AnMaster> it doesn't use configure, but cmake instead
19:34:02 <AnMaster> kar8nga, was that what you wondered?
19:41:19 <kar8nga> just took a look over the code layout
19:41:31 <AnMaster> kar8nga, oh? my indent style? or what is the question?
19:41:36 <kar8nga> but discussion has time :-)
19:41:43 <AnMaster> also I may not be reachable next week
19:49:38 <kar8nga> then the week after - or maybe I know it by then
19:49:59 <kar8nga> good night everybody (I guess I'm in a bit earlier timezone than you)
19:50:04 -!- kar8nga has quit ("Leaving.").
19:55:56 <Deewiant> AnMaster: befunge is not very stack based
19:56:18 <Deewiant> to do anything interesting you have to either load FRTH or modify space
19:58:00 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
19:58:11 -!- Judofyr has joined.
20:25:36 -!- timotiis_ has joined.
20:34:10 -!- Sgeo[College] has joined.
20:52:27 -!- timotiis has quit (Read error: 110 (Connection timed out)).
21:34:28 -!- Slereah_ has joined.
21:38:23 -!- oerjan has joined.
22:06:48 -!- BMeph has joined.
22:16:08 <ehird> oerjan: I have Ha skull qs.
22:17:38 <ehird> oerjan: I have two monads - Nomic, which contains an IO (and later a DB layer, etc) - and App, which is CGIT Nomic.
22:18:05 <ehird> oerjan: decent app structure? Also, Network.FastCGI's runFastCGI takes a CGI CGIResult, as opposed to CGI's runCGI, which takes any CGI monad in IO.
22:18:06 <Slereah_> Haskell and Nomic in the same discussion?
22:18:29 <ehird> It means that runCGI works but runFastCGI doesn't, because i use a custom cgi monad.
22:18:41 <AnMaster> ehird, what happened to the smalltalknomic?
22:18:50 <oerjan> yeah, i recall FastCGI's unfortunately restricted monad coming up on #haskell
22:18:58 <ehird> oerjan: SCGI does it too
22:19:04 <ehird> AnMaster: Gasp, I can multitask.
22:19:19 <AnMaster> ehird, so you didn't give up on them?
22:19:35 <ehird> Technically I have given up on very few projects. But some of them have been at low priority for years.
22:19:40 <ehird> But those two won't, because they're not hard.
22:19:51 <ehird> oerjan: So, is there anything I can actually do?
22:20:13 <oerjan> i vaguely recall someone talking about generalizing FastCGI but i don't know if it has been done, maybe search on hackage?
22:20:38 <oerjan> and also, ask on #haskell proper
22:20:45 <ehird> oerjan: ah. so nothing I can do outside of the fastcgi package
22:20:56 <ehird> It seems very odd to me, has nobody used fastcgi out of 'hello world'?
22:21:09 <oerjan> i don't know i haven't used any of this
22:21:27 * oerjan is the king of vaporware, remember? :D
22:21:44 <ehird> oerjan: then you'll know what duke nukem forever will be like
22:21:55 <ehird> AnMaster: are you ever returning to ircnomic? I'm curious.
22:22:18 <oerjan> i don't play any games more violent than FreeCiv
22:22:36 <Slereah_> I don't play any game more violent than Postal 2.
22:22:46 <Slereah_> But only because I haven't found any so far.
22:23:34 <ehird> oerjan: freeciv is destroying america
22:23:54 <oerjan> actually i haven't played it much lately either
22:24:19 <oerjan> america has been nuked?
22:26:05 <Slereah_> America will soon be a wasteland, oerjan.
22:27:20 <ehird> God hates fags. And freeciv.
22:28:06 * oerjan starts inflating his portable troll eater
22:28:49 * oerjan sends it off with the dreadful command 'NIBBLE'
22:29:31 <oerjan> in a couple of weeks, you will be all gone. BWAHAHA!
22:31:43 <oerjan> it can however be retargeted in time if you find an even worse troll to point it at
22:31:51 <oerjan> which should not be that hard
22:33:31 <ehird> oerjan: Slereah_'s pretty trolly.
22:33:37 <ehird> He's an ED&chan-character
22:34:44 * oerjan fails at googling that concept
22:34:49 <AnMaster> <ehird> AnMaster: are you ever returning to ircnomic? I'm curious.
22:35:20 <AnMaster> <ehird> oerjan: freeciv is destroying america
22:35:25 <ehird> AnMaster: Would your first action be trying to re-add the insensitive rule? :-)
22:35:31 <ehird> And it was a parody.
22:35:39 <ehird> god I need to install humour-v1.0 in AnMaster.
22:35:45 <AnMaster> ehird, yes of course that would be my first action
22:35:55 <ehird> AnMaster: Please don't come back then.
22:36:06 <AnMaster> ehird, I would time it with ais and sgeo so we did get it through
22:36:27 <ehird> Sgeo[College]: i'll do what i like
22:36:40 <ehird> AnMaster: ais hasn't exactly been grappling to get it back through
22:36:53 <AnMaster> ehird, I believe he would support it though
22:37:03 <ehird> AnMaster: I bet ABSTAIN.
22:37:23 <AnMaster> ehird, also that wasn't as bad as removing of all the other stuff you did
22:37:23 <ehird> AnMaster: Any way, coming back and doing so would be in patently bad faith as it'd kill Canada again due to reduced activity due to my non-participation.
22:37:28 <ehird> It has been going very fast recently.
22:37:31 <AnMaster> like "no rules may mention players by their name"
22:37:36 <Sgeo[College]> 1 AGAINST by ehird, 1 FOR by AnMaster, 1 ABSTAIN by ais523
22:37:53 <ehird> Sgeo[College]: It wouldn't pass then.
22:38:05 <ehird> AnMaster: damn him for wanting the game to stay active
22:38:28 <Sgeo[College]> I might be FOR something that just said "case insensitive"
22:38:31 <AnMaster> ehird, well also we could promise not to abuse it
22:39:04 <AnMaster> ehird, we all know you did the mess up with removing the rule from your server
22:39:17 <ehird> AnMaster: i didn't.
22:39:30 <ehird> I don't have tcpdump on the server, anyway. I checked the next day.
22:39:46 <AnMaster> ehird, you can easily install it
22:39:57 <AnMaster> anyway both me and ais won't believe you
22:45:28 * oerjan guesses that this disagreement is about a rule that required reprogramming a server.
22:47:17 -!- Tritonio has quit (Remote closed the connection).
22:48:49 <ehird> AnMaster is just ye olde Writ of FAGEr
22:49:40 <oerjan> he means that you Left in a Huff :)
22:50:01 <AnMaster> oerjan, the point is: ehird threw a fit over adding a certain rule, and tried to remove it about once every 15 minutes
22:50:26 <AnMaster> then he managed to do it when a lot of ppl were sleeping, when it was later readded... well someone started removing it...
22:50:35 <ehird> anyway, I doubt oerjan actually _cares_ about this stupid thing
22:50:44 <ehird> a few days ago, it was removed democratically
22:50:49 <ehird> and has not caused controversy
22:50:52 <AnMaster> oerjan, and everyone knows it was ehird
22:51:10 * oerjan officially stops caring now.
22:51:19 <AnMaster> and then he threw an even larger fit and left in a huff himself
22:51:41 <AnMaster> oerjan, so well I left ircnomic because ehird is just creating drama all the time
22:51:42 <ehird> AnMaster: I must note that you were the one who killed the bot while proposals were going as soon as you left in a huff.
22:51:54 <ehird> And there hasn't been any drama since you /parted that last time, FWIW.
22:51:56 <AnMaster> ehird, I went down for a reboot too
22:52:00 <ehird> And can we please shut up now.
22:52:13 <AnMaster> ehird, it is you who should shut up IMO
22:52:25 <oerjan> ah the joy of relative reality
22:52:36 <ehird> AnMaster: Waaaaaaah.
22:52:38 <AnMaster> oerjan, indeed. everything is subjective
22:53:06 <ehird> AnMaster: Oerjan stopped caring a few messages ago. You were just flooding, so yes, you should have shut up.
22:53:11 * ehird goes back to #ircnomic
22:54:45 <oerjan> sounds like a bit too fast nomic if you can push through ordinary proposals while people are sleeping
22:55:24 <ehird> oerjan: any higher quorum and nothing would ever happen
22:55:34 <ehird> oerjan: proposals only last 15 minutes for example.
22:55:47 <AnMaster> oerjan, yes 15 minutes, ought to be a day or so
22:56:00 <ehird> AnMaster: ircnomic, from the start, was about being fast.
22:56:08 <ehird> If it lasted a day it would be incredibly boring.
22:56:18 <AnMaster> ehird, it would be like agora?
22:56:21 <ehird> People don't IRC for days at a time, AnMaster.
22:56:26 <ehird> 15 minutes is good.
22:56:45 <AnMaster> agreed. so yet timezones cause issues here
22:57:27 <ehird> the people there are actually in good faith now so its not a problem
22:57:31 <oerjan> well in that case you should perhaps just accept that the game is going to totally change from each day to the next
22:57:43 <ehird> oerjan: it doesn't though
22:57:47 <ehird> because people aren't insane.
22:58:03 <ehird> oerjan: http://lyokoscan.net/wiki/index.php5?title=Canada_Rules
22:58:05 <ehird> its a good set of rules
22:58:51 <AnMaster> oerjan, yes it does as soon as the rule ehird can't stand being democratically added was added
22:59:08 <ehird> ITT: AnMaster fails to shut up
22:59:23 <AnMaster> CORRECTION: ehird fails to shut up
23:00:05 <ehird> this is so productive
23:00:24 <AnMaster> well actually I got some more important stuff to do: watching some paint dry
23:02:25 <ehird> Snarky comment because I must get the last word in.
23:03:48 <AnMaster> well. I don't feel any such needs
23:07:47 -!- Sgeo[College] has quit ("http://www.mibbit.com ajax IRC Client").
23:17:50 -!- revcompgeek has joined.
23:19:13 -!- Iskr has quit ("Leaving").
23:21:43 -!- revcompgeek has left (?).
23:26:09 -!- jix has quit ("CommandQ").
23:32:44 -!- Corun has changed nick to orunC.
23:52:27 -!- orunC has changed nick to Corun.
23:58:03 -!- BMeph has quit (Read error: 104 (Connection reset by peer)).
00:01:25 -!- Tritonio has joined.
00:12:21 -!- Tritonio_ has joined.
00:12:23 -!- Tritonio_ has quit (Read error: 104 (Connection reset by peer)).
00:21:33 -!- Tritonio has quit (Remote closed the connection).
00:26:57 -!- timotiis_ has quit (Read error: 110 (Connection timed out)).
00:39:48 -!- coffeemug has joined.
00:40:13 -!- coffeemug has left (?).
00:46:26 -!- travisbrady has joined.
00:46:36 -!- travisbrady has left (?).
01:00:45 -!- sebbu has quit ("@+").
01:06:19 <ehird> pikhq: FOR whooboy in #ircnomic? :3
01:06:45 <ehird> oerjan: Or you. :P
01:07:38 <ehird> And it's a scam involving ihope's unfortunate contract-joking!
01:07:46 <ehird> pikhq: And I'll Hug you fifty times.
01:08:03 <ehird> lament: Hug awards a point
01:08:30 <lament> how many points for a blowjob?
01:08:49 <ehird> <ehird> I hug ihope x 1,000,000.
01:08:49 <ehird> <ihope> Yay, I have 1,000,005 points.
01:09:12 <ehird> I can give people as many points as I want, and then even though I'm in the negatives by far, I can just fail at a Double or Nothing to get back to 0.
01:10:06 <ehird> <ehird> I hug ihope x A(g_64,g_64) where A is the ackermann function and g_64 Graham's number.
01:11:38 * oerjan decides not to put any money in Zimbabwe dollars
01:12:32 <oerjan> i think #ircnomic points have higher value :D
01:13:01 <ehird> join #ircnomic and I'll give you crazy amounts
01:18:11 <ehird> oerjan: OK, how about this. I will give you an absurd amount of points (number of your choosing) if you join #ircnomic and say 'FOR evil'.
01:19:37 <oerjan> i think you must have misunderstood my comment. i did not say i considered #ircnomic points to have high value :/
01:20:17 <ehird> I'm just trying to bribe you
01:28:11 <ehird> oerjan: 3 minutes to go
01:28:18 <ehird> oerjan: This is even an interesting scam
01:31:07 -!- Sgeo has joined.
01:38:41 -!- Slereah- has joined.
01:38:42 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
01:49:03 -!- Corun has quit ("This computer has gone to sleep").
02:31:30 <ehird> What is "Legend of Z.e.l.d.a."?
02:31:30 <ehird> Edit: not kidding...
02:39:07 -!- atsampso1 has joined.
02:40:03 -!- atsampson has quit (Read error: 104 (Connection reset by peer)).
03:22:09 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
03:23:03 -!- oerjan has quit ("Good night").
04:42:31 -!- revcompgeek has joined.
04:46:50 -!- revcompgeek has quit (Client Quit).
05:20:49 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
06:31:28 -!- oklofyug has joined.
06:42:20 -!- Judofyr has joined.
06:59:17 -!- Sgeo has quit ("Ex-Chat").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:02:24 -!- jix has joined.
08:20:38 -!- Iskr has joined.
08:32:00 -!- Corun has joined.
08:32:12 <GregorR> http://www.codu.org/imgs/win3plusplus.png // CONSIDER YOUR MINDS BLOWN
08:34:08 -!- Corun has quit (Client Quit).
10:17:16 -!- sebbu has joined.
10:17:38 -!- Phenax has quit (SendQ exceeded).
11:33:58 -!- atsampso1 has changed nick to atsampson.
11:55:15 -!- Corun has joined.
12:07:56 <Corun> Pop quiz! "Thy" is olde english for "your"... How does one say "I"? Particularly "I am fine" or "I'm OK"
12:25:19 -!- timotiis has joined.
12:36:51 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
12:37:16 -!- Judofyr has joined.
12:45:42 -!- Corun has quit ("This computer has gone to sleep").
14:21:49 -!- jix has quit (Read error: 113 (No route to host)).
14:40:03 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
14:40:20 -!- Judofyr has joined.
15:22:35 -!- sekhmet has quit (Read error: 104 (Connection reset by peer)).
15:46:01 <pikhq> Corun needs to beware: "Thy" is the second person plural possesive. . . And that's Early Modern English, not Old English.
15:46:31 <pikhq> ('thy', in the typical romanisation of Old English, would be pronounced something like "thth")
15:49:45 <Deewiant> wikipedia is of the opinion that thy is singular
15:49:56 <Deewiant> http://en.wikipedia.org/wiki/Thou#Declension
15:50:07 <pikhq> My brain is of the opinion that I got "thy" and "you" screwed up.
15:50:49 <pikhq> It's also of the opinion that. . . WHOHOO! HIGH SCHOOL IS OVER!!!
15:59:20 -!- oklofyug has changed nick to oklopol.
15:59:41 <oklopol> although i don't really see it as that great, i keep thinking how much of a waste it was
16:16:26 -!- nopolie has joined.
16:19:26 -!- nopolie has quit (Read error: 104 (Connection reset by peer)).
16:26:01 -!- ehird has joined.
16:32:20 -!- sekhmet has joined.
16:51:46 -!- oklopol has quit (Connection reset by peer).
16:52:20 -!- oklopol has joined.
16:57:49 -!- oklopol has quit (Read error: 113 (No route to host)).
17:02:27 -!- oklofok has joined.
17:09:37 -!- BMeph has joined.
17:12:27 -!- ais523 has joined.
17:18:14 -!- ais523 has quit ("I need to reboot").
17:21:34 -!- ais523 has joined.
17:44:17 -!- lifthrasiir has quit (leguin.freenode.net irc.freenode.net).
17:44:17 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
17:45:14 -!- lifthrasiir has joined.
17:45:14 -!- cmeme has joined.
17:47:03 -!- cmeme has quit ("Client terminated by server").
17:47:04 -!- cmeme has joined.
17:57:16 -!- ais523 has quit (Remote closed the connection).
17:59:12 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
17:59:12 -!- lifthrasiir has quit (leguin.freenode.net irc.freenode.net).
17:59:29 -!- ais523 has joined.
18:01:33 -!- cmeme has joined.
18:01:33 -!- lifthrasiir has joined.
18:01:40 -!- cmeme has quit ("Client terminated by server").
18:01:40 -!- cmeme has joined.
18:06:39 -!- cmeme has quit.
18:06:49 -!- cmeme has joined.
18:29:09 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
18:29:15 -!- ais523 has joined.
18:31:44 -!- ais523_ has joined.
18:32:06 -!- ais523 has quit (Nick collision from services.).
18:32:10 -!- ais523_ has changed nick to ais523.
18:37:22 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
18:37:23 -!- ais523_ has joined.
18:37:48 -!- ais523_ has changed nick to ais523.
18:52:01 -!- timotiis_ has joined.
19:00:32 -!- Sgeo has joined.
19:06:13 -!- timotiis has quit (Read error: 110 (Connection timed out)).
19:24:59 -!- cherez has quit ("Leaving.").
20:46:28 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
20:47:04 -!- ais523 has joined.
20:47:25 <RodgerTheGreat> ais523: wanna help me take a crack at this puzzle? http://www.pixabug.com/aliens/fnalcodeletter_sanesize.jpg
20:47:30 <ais523> RodgerTheGreat: that's out of context
20:48:23 <ais523> maybe it has no decode
20:48:51 <ehird> ais523: maybe it does
20:48:58 <RodgerTheGreat> my initial thoughts: ternary block, hex/symbol correlation, what appears to be interpretable as "SFC" and then a binary block
20:49:34 <RodgerTheGreat> I figured that if anybody could solve it, it'd be the crowd here in #Esoteric
20:49:42 <ehird> RodgerTheGreat: it does look creepy though
20:51:36 <RodgerTheGreat> here's a textual version to play with: http://www.nonlogic.org/dump/text/1210967467.html
20:52:55 <ehird> RodgerTheGreat: it's still creepy
20:53:08 <RodgerTheGreat> The symbols are interesting- I can identify an "i", a phi symbol, a subtraction sign and something that resembles a greater-than sign
20:53:21 <ais523> that is so nothing to do with aliens
20:53:26 <RodgerTheGreat> can you guys assign meaning to any of the other symbols?
20:53:41 <ais523> they wouldn't be using our symbols for those things, and if they were, they would have said something more intelligible
20:53:42 <RodgerTheGreat> ais523: I think it's much more likely to be some fermilab recruiting ploy. :)
20:54:13 <ehird> ais523: it's not alien related
20:54:17 <ehird> not least because aliens wouldn't fax.
20:54:24 <ehird> but is _is_ mildly creepy, imo
20:55:03 <ehird> RodgerTheGreat: Fermiargggggggg
20:55:20 <ehird> RodgerTheGreat: where'dj00 find this?
20:55:52 * ais523 came across the Slashdot homepage with /two/ articles with no comments on
20:55:57 <RodgerTheGreat> which means it'll be solved in a few hours if it's possible, which is why we should try before the fun is spilled
20:56:00 <ais523> and was disappointed that there were no comments to read
20:56:05 <ais523> that's probably the wrong reaction...
20:59:17 <RodgerTheGreat> ais523: why are you being such a spoilsport today? You're usually all over puzzles and the like
20:59:51 -!- ais523_ has joined.
20:59:54 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
21:00:03 <ehird> RodgerTheGreat: I think he thinks we believe it means anything
21:00:07 <ehird> as opposed to merely be ing interesting
21:00:39 <RodgerTheGreat> even if it ends up being "DRINK MORE OVALTINE" it can be loads of fun
21:01:35 <ehird> <RodgerTheGreat> even if it ends up being "DRINK MORE OVALTINE" it can be loads of fun
21:01:42 <ehird> there are no words
21:02:10 <ehird> RodgerTheGreat: that was brilliant
21:04:33 <RodgerTheGreat> so, I guess we aren't all going to spend the evening feverishly working on this?
21:08:40 <ehird> RodgerTheGreat: maybe
21:10:06 -!- ais523 has joined.
21:10:49 <ais523> the wireless here is dodgy
21:11:01 <ais523> and how did ais523_ end up here?
21:11:27 <ais523> I've never been reverse-ghosted before, and I don't remember having been logged on as ais523_ today for more than a few minutes at a time
21:11:32 -!- ais523_ has quit (Nick collision from services.).
21:11:37 <ehird> * ais523_ (n=ais523@ar02-fap02.bham.ac.uk) has joined #esoteric
21:11:37 <ehird> * ais523 has quit (Read error: 104 (Connection reset by peer))
21:11:37 <ehird> <ehird> RodgerTheGreat: I think he thinks we believe it means anything
21:33:38 -!- oerjan has joined.
21:45:02 -!- Corun has joined.
21:46:04 <GregorR> RodgerTheGreat: Not a new window manager, that's Windows.
21:46:38 <GregorR> http://www.codu.org/imgs/win3plusplus.png (for those who missed it before)
21:46:49 <RodgerTheGreat> does this imply you somehow recompiled a 16-bit version of firefox, or did you transplant explorer onto a newer OS?
21:47:26 <GregorR> Look at the title bar to progman :P
21:47:37 <ehird> GregorR: Slow website is slow.
21:47:50 <GregorR> ehird: Not slow for me *shrugs*\
21:48:39 <ehird> GregorR: you ... ported Progman?
21:48:58 <ais523> hey, there was a progman port in Windows 95. Not sure if anyone ever used it, though
21:49:13 <GregorR> Which is to say, that's not '95.
21:49:20 <GregorR> Nor did I transplant progman :P
21:49:28 <RodgerTheGreat> in any case, it would appear you made windows more hideous than usual. good show.
21:49:32 <ais523> the djbash implies that that's a DJGPP version of bash, so it's running as protected-mode DOS
21:49:43 <ais523> is the firefox window some sort of VPN?
21:49:50 <ais523> everything there makes sense but the firefox window
21:49:57 <ehird> GregorR: well, that progman is definately running under nt
21:50:00 <ais523> and you didn't set Firefox as your desktop background?
21:50:00 <ehird> GregorR: it's windows nt
21:50:13 <GregorR> NT 3 - the NT everybody forgot :P
21:50:22 <GregorR> Also the first Windows that supported Win32, and so will run Firefox.
21:50:44 <RodgerTheGreat> I said earlier that I thought you took the 3.1 explorer and grafted it onto another windows version. I saw someone do a similar trick on windows 98SE
21:51:15 <GregorR> RodgerTheGreat: But there's no grafting involved - NT 3 /shipped/ with progman ala 3.11.
21:51:32 <pikhq> GregorR: Windows 3.1 could run Win32 via Win32s. ;)
21:51:35 <ais523> when was the name 'explorer.exe' first used? Win95?
21:51:50 <ais523> but I have manuals for it somewhere
21:51:51 <GregorR> pikhq: The 's' is for 'subset', which means it won't run most anything at all :P
21:51:59 <pikhq> RodgerTheGreat: progman.exe, IIRC, was dropped circa Windows XP.
21:52:08 <GregorR> I think NT 4 predates '95 by a bit, I may be wrong.
21:52:11 <pikhq> GregorR: It runs Firefox 1.x
21:52:19 <GregorR> And the name "explorer" is used in NT 4.
21:52:26 <GregorR> pikhq: DOUBLE-U TEE EF? Really?
21:53:00 <pikhq> Also, explorer.exe was first used in an optional addon to NT 3.
21:53:21 <pikhq> This optional addon provided you the Win95-style UI instead of the Program Manager.
21:54:12 <pikhq> Ah, the "Shell Technology Preview".
21:54:23 <pikhq> Windows NT 3.51, to be exact.
21:54:45 <pikhq> Also, Windows 95 came out before Windows NT 4.
21:55:16 <GregorR> Pfffft, looking things up :P
21:56:56 <GregorR> I vaguely remember its existence :P
21:57:09 <ais523> RodgerTheGreat: I read a manual for that too
21:57:30 <ehird> ais523: You read manuals for software you don't use.
21:58:29 <RodgerTheGreat> it's a wonderful interface when all you have is a keyboard
21:59:07 <GregorR> RodgerTheGreat: ... so is bash ;)
21:59:17 <pikhq> ... So is the Midnight Commander.
21:59:30 <GregorR> Yeah, command.com sucks much face.
21:59:32 <pikhq> And, yeah, Command.com sucks ass.
21:59:45 <GregorR> NT 3's command interpreter is a bit better, but still doesn't have tab completion.
22:00:15 <pikhq> IIRC, the command.com in FreeDOS is quite a bit better.
22:00:44 <ehird> command.com sucks face AND as
22:00:52 <pikhq> It sucks everything.
22:02:24 <GregorR> Its only marketable skill is to suck.
22:02:35 <GregorR> But yeah, FreeDOS command.com is awesome.
22:02:58 <ais523> however, there are some bugs in cmd.exe that Windows command.com doesn't have
22:03:14 * GregorR can't parse that sentence.
22:05:31 <ais523> however, (there are (some ((bugs in cmd.exe) that ((Windows command.com) doesn't have))))
22:06:01 <ehird> would solve all this notation polish.
22:06:19 <ais523> ehird: now, I can't parse /that/ alleged-sentence...
22:06:20 <ehird> for few minutes let's talk like this.
22:06:29 <ehird> ais523: "polish notation would solve all this"
22:06:36 <ehird> ais523: predicate, followed by arguments
22:06:45 <ais523> polish notation fails with variable arity...
22:07:15 <ehird> ais523: it's not like english isn't ambigious already
22:07:30 <ehird> so let's just do this (ha! works that)
22:08:28 <ehird> interesting puzzle 's RodgerTheGreat.
22:08:51 <ais523> ehird: you should just write in Latin, most simple sentences have the same meaning when you anagram them
22:08:57 <ais523> at the word level, that is
22:09:02 <GregorR> not does take this into account prepositions
22:09:02 <ais523> Perligata has the same property
22:14:06 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
22:14:37 -!- Judofyr has joined.
22:15:27 <pikhq> ais523: Variable arity Polish notation is fairly simple. Every variable arity function has, as its first argument, its number of arguments. :p
22:15:43 <ais523> pikhq: it should be the last argument instead, that would be confusing
22:15:57 * ais523 tries to figure out whether that would be ambiguous
22:16:07 <lament> ais523: of course it would be ambiguous
22:16:30 <ais523> that's unambiguous because it ends with the 3
22:16:49 <lament> no, it's actually (+ 1 2) 3
22:16:51 <ais523> of course it's ambiguous if you don't know where the expression ends, but if you do, I'm not as sure
22:16:52 <lament> it puts two numbers on the stack
22:17:10 <ais523> lament: I was assuming that the stack ends up empty
22:17:13 <lament> i bet it's still ambiguous
22:17:26 <ais523> yes, that's what I would think too, but I can't think of an example
22:17:57 <ais523> hmm... do the numbers-of-arguments have to be constants?
22:23:20 <ais523> [22:22] [CTCP] Sending CTCP-PING request to ais523.
22:23:20 <ais523> [22:23] [CTCP] Received CTCP-PING request from ais523, sending answer.
22:23:20 <ais523> [22:23] [CTCP] Received CTCP-PING reply from ais523: 32 seconds.
22:23:29 <ais523> I can well imagine that I somehow missed something in that
22:23:54 <oerjan> not unless you missed my "hm..."
22:27:18 -!- BMeph has quit ("Time for me to go home").
22:35:59 <oerjan> oh wait of course. + + 1 2 3 + 1 2 3 3 can parse in two ways
22:37:21 <oerjan> um actually that's a bit inconsistent
22:37:30 <oerjan> does the count include itself
22:37:57 <oerjan> if so, + + 1 2 3 + 1 2 3 4
22:38:21 <oerjan> if not, + + 0 1 2 + 0 1 2 3
22:38:25 -!- ais523 has quit (Remote closed the connection).
22:38:40 -!- ais523 has joined.
22:38:46 <oerjan> is the count included in the arguments counted
22:39:07 <ais523> that's what a literal reading would say
22:39:23 <ais523> it doesn't make a difference if it isn't, because the numbers could just be all reduced by 1
23:15:08 -!- jix has joined.
23:16:36 -!- jix has quit (Client Quit).
23:36:08 -!- ais523_ has joined.
23:36:44 -!- ais523 has quit (Nick collision from services.).
23:36:47 -!- ais523_ has changed nick to ais523.
23:39:09 -!- ais523 has quit (Client Quit).
23:44:04 <ehird> <ais523> hmm... do the numbers-of-arguments have to be constants?
23:44:10 <ehird> variable argc prefix = wow
23:44:15 <ehird> can you get TCness that way?
23:44:27 <ehird> but argc can be an arbitary expr
23:44:37 <ehird> I'm sure youi can get TCness from that.
00:00:20 <RodgerTheGreat> although I don't think you could order it through cafepress
00:00:23 <RodgerTheGreat> http://www.nonlogic.org/dump/images/1210978678-nmw.png
00:01:15 <ehird> RodgerTheGreat: A shirt about menswear?
00:01:18 <ehird> That'd be awesomely meta.
00:01:27 <ehird> RodgerTheGreat: I am going to put that exact picture on a shirt.
00:01:40 <RodgerTheGreat> I was thinking more the shirt depicted in the image, but if you want a T-shirt, go for it dude
00:01:54 <RodgerTheGreat> I could take some time to redraw the saying so it's easier to read
00:02:00 <pikhq> I want something like that on a tie.
00:02:07 <ehird> I want an infinitely recursing tshirt.
00:02:09 <pikhq> To go with the shirt, of course.
00:02:12 <ehird> A tshirt of a tshirt of a ..
00:30:52 <GregorR> ehird: I think the better metashirt would be if the shirt in the shirt was the shirt *brain explodes*
00:31:22 <ehird> GregorR: that wsa what i meant
00:32:04 <GregorR> RodgerTheGreat: OK only-person-here-who-can-draw, draw our recursowear! :P
00:33:02 <RodgerTheGreat> I dunno, I don't think drawing it would make it much more entertaining
00:33:03 <GregorR> (But it's only amusing metawear if it's actually /advertising/ itself :P )
00:38:00 <ehird> xv,mn.nm,/\zvnafs 'qw r ASXDAW A
00:38:25 <ehird> GregorR: model a thinkgeek page
00:38:37 <ehird> 'This hilarious shirt models a store page for itself! $9.99'
00:41:01 -!- timotiis_ has quit (Read error: 110 (Connection timed out)).
00:50:17 -!- Iskr has quit ("Leaving").
00:50:55 <ehird> <Sgeo> e.g. comex's point score as of this point in my determination is 0 + 42 + (10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871041898 - 1000000000000000000th-digit-of-pi - g_(10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871041898 - 1000000000000000000th-digit-of-pi))%10
00:50:59 <ehird> sgeo is a god among men
00:51:13 <Sgeo> What if I made a mistake?
00:51:18 <ehird> Sgeo: i have no idea
00:51:21 <ehird> you're still a god
00:52:08 <Sgeo> It's called copy+paste
00:54:51 <ehird> <Sgeo> (10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871041898 - 1000000000000000000th-digit-of-pi - g_(10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871041898 - 1000000000000000000th-digit-of-pi) - (10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871041898 - 1000000000000000000th-digit-of-pi - g_(10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871041898 - 1000000000000000000th-digit-of-pi))%10 - (10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871
00:54:51 <ehird> <Sgeo> 041898 - 1000000000000000000th-digit-of-pi - g_(10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871041898 - 1000000000000000000th-digit-of-pi) - (10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871041898 - 1000000000000000000th-digit-of-pi - g_(10+1+4+5 + 1,000,000 + xkcd +1 - 9543331207720871041898 - 1000000000000000000th-digit-of-pi))%10)%100)%1000
00:55:52 <Sgeo> Mine's going to include all that, you know
01:24:10 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
01:29:07 -!- olsner has joined.
01:31:02 -!- ehird has quit (Remote closed the connection).
01:35:21 <olsner> not that I had anything to say to ehird, but still, I missed him by about as much time it took for me between starting xchat and actually looking
01:35:26 <oerjan> you need to aim better
01:35:36 <Sgeo> Wee, rule 38 repealed
01:35:52 <olsner> oerjan: I shall pour fermented milk over you
01:35:58 * Sgeo hopes he missed no rule changes
01:37:04 <olsner> I did not say over "your umbrella", I said over *you* :P
01:37:36 * oerjan keeps his umbrella between him and olsner
01:38:00 * olsner devours oerjan's umbrella
01:38:24 * olsner 'll eat almost anything
01:39:08 <olsner> bah! not much more trouble than eating a fish; remove vertebrae before eating
01:41:43 <oerjan> Kefir mjlk? Kefir ikkje kaffi? </mock nynorsk>
01:42:12 -!- RodgerTheGreat has quit.
01:42:33 -!- RodgerTheGreat has joined.
01:42:37 <olsner> jeg trenger icke kefir, jeg trenger svensk filmjlk. </mock norsk>
01:43:35 <olsner> not that that actually corresponds to what I mean, since I have a half litre of filmjlk left anyway
01:44:01 <olsner> but I kind of like the norwegian word "trenger"
01:44:26 <olsner> btw s verkar svenskar vara smst p att frst andra sorters skandinaviska
01:45:07 <olsner> har en norrman p jobbet, han mste nstan prata engelska fr att en jvel ska frst hans norska, men nr vi pratar svenska fattar han allt
01:48:25 <olsner> go ahead and cut this monologue off at any point
01:48:44 * oerjan thought it was finished already
01:49:00 <olsner> well, it was, but I was waiting for some kind of response
01:49:52 <oerjan> of course, filmjlk and surstrmming are illegal outside sweden anyhow, by treaties against biological weapons
01:51:17 <olsner> well, when we reinstate the Union, it will be legal in norway as well :P
01:51:37 <oerjan> sheesh, why do you think we separated in the first place?
01:52:03 <olsner> why of course, to give norway the illusion of independence :P
01:53:05 <oerjan> no, it was to get away from the smell
01:55:23 <olsner> maybe it was... I live on the east of sweden though; norway doesn't smell as much over here
01:57:23 <oklofok> just came home to eat some noodles
01:57:33 <olsner> yeah, my bushes usually don't make sense either
01:57:35 <oklofok> have to get back afterwards
01:58:06 <olsner> back to ... the sauna? (I mean, oklo-whatever = finn, right?)
01:58:21 <oklofok> it's quite weird developing 4 languages simultaneouly, ideas are colliding so much i can barely keep my self in balance
01:58:33 <oerjan> ah that's where the bushes come from
01:58:37 <oklofok> i'm a night watchman or whatever it's called atm
01:59:08 <olsner> "jour"? if that makes sense to you
01:59:27 <oklofok> i realized almost every non deterministic computational model makes a good game with the same rules
01:59:38 <oklofok> at least the X rewriting ones
01:59:49 <oklofok> graph, tree and string rewriting make a good game, that is
01:59:56 <olsner> night watchman = on standby for fixing bugs? watching a garage? fixing servers when they break down?
02:00:14 <oklofok> one player at a time makes up a new rewriting rule, the next player then applies rules until none apply
02:00:33 <oklofok> the more moves, the more points, infinite loop = loss
02:00:49 <oklofok> easy to make up for the fact you can't always know whether it is an infloop
02:01:08 <oklofok> some additional rules for stuff like that, but basically it's a great game just like that
02:01:15 <oklofok> also, another game i invented a few hours ago
02:01:22 <oklofok> you take a board, 2d, prime*prime
02:01:38 <oklofok> each turn you take two pieces, and rotate one 90 degrees aroudn the other
02:01:47 <oklofok> if there's a piece there, you eat it, and get it in your pile
02:01:56 <oklofok> containing an infinite amount of pieces
02:02:14 <oklofok> you take one piece from the bank, turn the *other* way, 90 degrees, and put a piece there
02:02:25 <oklofok> unless there's already a piece, in which case you take that to your pile
02:02:31 <oklofok> if you eat something, you get a new turn
02:02:43 <oklofok> a bit confusing an explanation, but it's great in every variation
02:02:52 <oklofok> i'm a fucking genius, was my point
02:03:05 <oklofok> you should hear my ideas about ef for my journey back here...
02:03:19 <oklofok> continue whatever you were doing, i'll go ->
02:04:10 <olsner> oklofok wins at monologues
02:04:16 -!- Quendus has quit (Read error: 110 (Connection timed out)).
02:04:37 <oklofok> i also win at the rewriting games
02:04:55 <olsner> failing at stepmania? it's just a matter of exercise!
02:05:05 <oklofok> which is quite weird considering i'm a pianist, and a guitarrist
02:05:22 <olsner> reduce life, increase stepmania => win at stepmania
02:05:41 <olsner> (also, leg coordination is quite different from hand/arm coordination)
02:06:32 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
02:07:05 -!- Judofyr has joined.
02:07:15 <oklofok> heh, called a guy who's at the job with me, was quite lucky it was the correct number :P
02:07:31 <oklofok> i just do stepmania on keyboard
02:15:10 <oklofok> god these noodles are hot.
02:15:30 -!- olsner has quit ("Leaving").
02:19:22 <oklofok> nowai, these kefenders are mine and mine only
02:25:35 <oklofok> but seriously, the hotness is kinda hurting me
02:27:53 <oklofok> umm, why would i ask them out when i'm eating them?
03:00:07 -!- bsmntbombdood has joined.
03:04:47 -!- oerjan has quit ("Good night").
03:10:18 -!- Slereah_ has joined.
03:10:19 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
03:15:01 <Sgeo> http://pastebin.ca/1020713
03:50:08 -!- Corun has quit ("This computer has gone to sleep").
04:25:30 -!- augur has joined.
04:26:38 <augur> GregorR -- gregor richardson?
04:28:04 <augur> ok. nevermind then.
04:28:15 <augur> i know a gregor richardson and i was gonna be all like
04:31:13 <augur> i hear you like the esolangs
04:32:22 <augur> now i hear you have no humor detector :P
04:32:45 <augur> do you ever try to figure out esolangs from their behavior?
04:32:57 <Slereah_> Hell, there's been people thinking this was a magic chan.
04:33:28 <augur> like.. given some source code and program output, or something, try to figure out what each piece does?
04:33:41 <augur> sort of reverse engineering the language?
04:34:39 <augur> ok so i presume that yes, esolangers like to go backwards as well, yes?
04:35:15 <Slereah_> It's the only one I can think of.
04:39:05 <augur> ok so slereah told me you peoples like the pattern matching
04:42:46 <Slereah_> Well, they know more than me on the topic.
04:46:27 <augur> does anyone know how a pattern distinguishes variables from names? e.g. a haskell pattern like fac n = ..., the n is a variable, but fac isn't, and so "5 6" isnt matched to fac=5, n=6
04:46:35 <augur> does anyone know how such things are distinguished, if at all?
04:48:41 <Sgeo> Ask in #haskell ?
04:48:54 <augur> well, im not asking specifically regarding haskell, but in a general sense
04:49:05 <augur> i just use haskell as an example
04:50:07 <Sgeo> well, 5 isn't fac
04:50:40 <Sgeo> fac 5 would match, well, in Haskell only if fac is a constructor, which it isn't
05:02:24 -!- cherez has joined.
05:05:26 -!- cherez has quit (Client Quit).
05:14:55 -!- cherez has joined.
05:21:39 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:47:58 -!- GreaseMonkey has joined.
05:56:42 -!- Slereah- has joined.
05:57:15 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
05:58:57 -!- augur has left (?).
06:06:15 <oklofok> poor augur left 7 minutes before a perfect explanation
06:06:34 <oklofok> PERHAPS I SHALL TELL THE REST OF YOU ABOUT THE WONDER THAT IS OKENITY
06:06:43 <oklofok> perhaps i shall do a sleep.
06:09:40 -!- augur has joined.
06:09:49 <augur> what'd i mis what'd i miss
06:11:42 <augur> well i discovered that in haskell the distinction between bindable and unbindable symbols is such that all non-first symbols in a pattern are bindable.
06:12:10 <oklofok> usually, when you have something like "fac n" as a pattern, the trick is parsing it as if it was normal code, haskell is applicative so we get (call (operator fac) (operand n))
06:12:36 <oklofok> yeah, the reason is, in some level, that the first one is kinda the operator.
06:13:14 <oklofok> the first one isn't always the one that's non-bindable
06:13:24 <oklofok> because the operator can be something other than the first one
06:13:50 <oklofok> "a `opr` b" is the haskell way to do infix when you have an alphabetic operator
06:14:11 <oklofok> so you can do "n `func` m = ..."
06:14:20 <oklofok> and func is the operator, so it's not binded
06:14:30 <oklofok> but is as if it was an atom there
06:14:43 <augur> but again theres a distinction between bindable and non-bindable
06:14:51 <augur> instead of position here its `..`
06:15:43 <oklofok> the idea is, we get a (operator operand operand ...) AST, and the operator is not binded
06:16:01 <oklofok> why the operator is binded is just convenience.
06:16:29 <oklofok> you can think of all this as rewrite rules, you pattern match your program on the functions
06:16:47 <oklofok> functions consist of a left-side, which is a pattern, and a right side, which is the substitution
06:17:18 <oklofok> but, i guess you already understood it, it's just hard to stop explaining.
06:17:24 <augur> i just wasnt sure if there were ways that were used to distinguish between bindable and unbindable symbols, or whatnot
06:17:42 <oklofok> because i'm really bad at it, and constantly try to make at least *some* sense :)
06:18:26 <oklofok> well everything can be done in so many different ways
06:19:09 <oklofok> some languages have pattern matching as a first-class citizen, and you *don't* have that kind of named functions at all
06:19:25 <oklofok> for instance oklotalk, which i have to mention to anyone who seems new here.
06:19:49 <oklofok> and inside the lambda, you can do explicit pattern matching
06:20:30 <oklofok> this is a function, that explicitly matches whatever it gets as args on [A B]
06:20:50 <oklofok> if it succeeds, the elements are summed and returned
06:20:57 <oklofok> if it fails, the next case is tried
06:21:11 <oklofok> N is binded to whatever the argument is, one is added, and it is returned
06:21:31 <oklofok> Func = {[A B] -> A+B; N -> N+1};
06:21:51 <oklofok> as you can see there's nothing like haskell's not-binding-function-names rule
06:22:41 <augur> so how would you apply this??
06:22:51 <oklofok> well, tbh this is a bit different, because haskell kinda matches on stuff on the runtime "tree" representing program state, and this one just does it to the arg.
06:23:08 <oklofok> i'm using very iffy concepts, so don't feel bad if that makes no sense :D
06:23:30 <augur> that seems rather like haskell, to be honestly
06:23:31 <oklofok> "func" makes it a "funcoken", meaning it's an operator
06:24:13 <oklofok> well, that will not work in haskell because of types, it's not haskell syntax, and it's only syntactically similar
06:24:24 <oklofok> but yes, pattern matching on lists is usually similar in languages
06:24:35 <augur> i see what you mean
06:24:51 <augur> if patterns are first class items
06:24:56 <augur> how do you define just patterns?
06:25:01 <augur> like, the pattern N
06:25:04 <augur> rather than referring to N?
06:25:22 <oklofok> there's a specific list type
06:25:27 <oklofok> and there's all kinds of quoting
06:25:41 <augur> ah, so sort of like lisp 'n and '(a b)
06:25:58 <oklofok> but lisp is very clean when it comes to names
06:26:13 <oklofok> so you cannot in general pass patterns around like that
06:26:31 <oklofok> (well there's no pattern matching anyway really in lisp)
06:26:47 <augur> you can implement it easily enough :p
06:27:05 <augur> well, you can build a pattern matching language on top of lisp easily enough
06:27:23 <oklofok> i'm not bashing lisp, that was just a side note
06:28:08 <oklofok> in ef, i have very extensive pattern matching capabilities
06:28:28 <oklofok> existential quantification an the likes
06:29:12 <oklofok> you can pattern match on a certain slice of a list
06:29:40 <augur> existential quantification? do tell
06:29:41 <oklofok> (wtf am i doing? trying to find different pattern matching kinds for you, and advertising my languages)
06:30:12 <oklofok> _ is the implicit parameter variable in Ef, as in oklotalk and perl
06:31:01 <oklofok> {(x:_; y:_; ?x<?y & x>y) -> x,y=y,x}
06:31:12 <oklofok> this is a function that sorts a list
06:31:29 <oklofok> -> is the pattern matching here
06:31:42 <oklofok> the right side says what to do if the left side matches
06:32:16 <oklofok> left side takes x and y, two elements of _, and tests if x is smaller than y in index, but greater than it in value
06:32:38 <oklofok> Ef is a fixed-point language, so this is done infinite times
06:33:12 <oklofok> it's a pattern match in that it "matches" on certain kinds of lists
06:33:52 <oklofok> but, usually pattern match specifies a "body" the represents a certain shape object
06:34:48 <oklofok> but, i mean, you usually match on a sort of regex, except limited, something that specifies a family of objects, just like a regexp specifies a family of strings ->
06:35:24 <oklofok> like [A B] represents objects that are formed from two elements
06:36:03 <oklofok> variables are "bound" simply because that's a very easy and explicit way to represent structure
06:36:38 <oklofok> and because "binding" lets you refer to parts of the object you matched on, when on the right-side
06:37:02 <oklofok> but you don't need variables at all for pattern matching
06:37:44 <oklofok> you can, for instance, do what string rewriting does, and always have an explicit pattern on the left side
06:39:29 <oklofok> http://www.vjn.fi/oklopol/thue.txt pattern matching without variables, as you can see i have to explicitly list a lot of cartesian products of the symbols i'm using, but it's a *possibility*
06:40:12 <oklofok> i guess my two points are you should keep a very open mind about pattern matching, because it's an awesome and a very general construct, and that i'm feeling very self-advertising today
06:40:40 -!- oklofok has changed nick to oklopol.
06:41:48 <oklopol> i should go to sleep soon, haven't slept in ages
06:42:44 -!- GreaseMonkey has quit ("Unisex.").
06:43:47 <oklopol> ...oh i almost forgot to mention graphica
06:47:38 -!- spal has joined.
06:48:11 <spal> hi, I have written my brainfuck compiler and interpreter. is there someone who would be interested in doing a code review and tell me if I am wrong anywhere?
06:48:37 <spal> also, are there any standard test cases which I can run on my compiler and interpreter to check whether they work correctly?
06:48:49 <augur> oklopol: do you know of any de-obfuscation contests?
06:48:53 <spal> for the time being, I have written my own test cases with multiple nested loops, etc.
06:48:56 <augur> or esolang interpretation contests?
06:50:30 <pikhq> spal: If you could ask again in about 8-10 hours, I'll be able to help.
06:50:36 <pikhq> I'm going to sleep right about. . . Now.
06:50:45 <spal> pikhq: thanks. I'll do that.
06:50:59 <oklopol> spal: there's the unofficial lost kingdom http://jonripley.com/i-fiction/games/LostKingdomBF.html
06:51:15 <Slereah-> There's plenty of BF programs lying around.
06:51:15 <oklopol> augur: i haven't heard of such a thing.
06:51:27 <Sgeo> I know someone wrote stuff about compatibility and test cases
06:51:29 <augur> we should start one :)
06:52:04 <Sgeo> spal, http://www.hevanet.com/cristofd/brainfuck/tests.b
06:52:08 <oklopol> i'm going to follow pikhq's lead now, so see ya
06:52:22 <spal> oklopol: Sgeo: thanks
07:09:21 -!- olsner has joined.
07:41:35 -!- spal has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:00:49 -!- augur has left (?).
08:10:38 -!- Slereah_ has joined.
08:12:54 -!- immibis has joined.
08:13:24 -!- immibis has left (?).
08:27:44 -!- Slereah- has quit (Read error: 110 (Connection timed out)).
10:49:00 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
10:58:59 -!- timotiis has joined.
11:01:07 <GregorR> I wonder who Gregor Richardson is :P
12:25:30 -!- Tritonio has joined.
12:33:36 -!- Corun has joined.
13:57:11 -!- timotiis has quit (Read error: 110 (Connection timed out)).
14:16:05 -!- oklopol has quit (Read error: 113 (No route to host)).
14:21:27 -!- ehird has joined.
14:39:07 -!- oklopol has joined.
14:45:54 -!- cherez has quit (Read error: 110 (Connection timed out)).
14:52:19 -!- timotiis has joined.
15:50:26 -!- Slereah- has joined.
15:50:26 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
15:56:17 -!- oklopol has quit (No route to host).
15:59:10 -!- Slereah_ has joined.
16:00:26 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
16:07:20 -!- Tritonio has quit (Read error: 113 (No route to host)).
16:26:11 -!- SimonRC has quit (Remote closed the connection).
16:26:19 -!- SimonRC has joined.
16:59:17 -!- Sgeo has joined.
17:09:27 <ehird> #ircnomic's nomic is called Canada.
17:21:00 <pikhq> That may introduce some difficulties for diplomatic relationships between Canada Nomic and the Federation of Canada.
17:21:39 <ehird> pikhq: Also, oerjan played Canada. You have no choice but to join #ircnomic!
17:22:47 <Sgeo> ehird, say the channel name correctly?
17:23:04 -!- ehird has changed nick to ehird_.
17:23:13 -!- ehird_ has changed nick to ehird.
17:24:07 <Sgeo> That was the sound of ehird cheating
17:59:08 -!- helios24 has joined.
18:24:29 -!- Slereah- has joined.
18:24:30 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
18:36:44 -!- Slereah_ has joined.
18:36:44 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
18:43:54 -!- Slereah- has joined.
18:44:26 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
18:59:14 -!- Tritonio has joined.
19:13:45 -!- Judofyr has joined.
19:54:27 <GregorR> Slereah-: "<Slereah_> Richard." it's "Richards" by the way ... with an 's'
19:57:44 <GregorR> My name is spelled Richard's'. The apostrophes represent glottal stops.
20:04:11 -!- calamari has joined.
20:23:01 <pikhq> Might I recommend adding in a geminative consonant to be even more cruel to people?
20:23:32 <pikhq> (how many languages do both geminates and glottal stops, anyways?)
20:24:24 <pikhq> So, your name would be something like "Rixtuchard's'".
20:24:40 <pikhq> That is fiendishly hard to pronounce.
20:25:04 <olsner> ooh, how about a geminate glottal stop :P
20:26:10 <olsner> hmm, that combination of characters conveys no semantic meaning to me :P
20:26:29 <olsner> I don't even know what I'm talking about anyways
20:27:35 <pikhq> xtu is the geminate in Japanese.
20:42:38 -!- Sgeo has quit ("Ex-Chat").
20:51:15 -!- RedDak has joined.
20:55:05 -!- oklopol has joined.
21:00:01 <oklopol> GregorR: gregor richardson is most likely your son.
21:03:19 <pikhq> olsner: Small tsu.
21:03:46 <olsner> yeah, small tsu's what I wrote :P
21:05:45 <pikhq> olsner: My Unicode terminal hattes Japanese, sadly.
21:06:00 <pikhq> Deewiant: That's just how you type it into an IME.
21:06:02 <olsner> yeah, unicode is often troublesome on IRC
21:06:52 <olsner> woah! I didn't know there was a combination for that (always just type something with tte and cut-and-paste :P)
21:08:14 <pikhq> You can type x before any kana to make it small, IIRC.
21:10:49 -!- SimonRC has quit (Read error: 113 (No route to host)).
21:18:19 -!- helios24 has quit ("Leaving").
21:28:43 -!- Sgeo has joined.
21:39:38 -!- calamari has quit ("Leaving").
21:46:23 -!- oklofok has joined.
21:47:11 -!- oklopol has quit (Read error: 113 (No route to host)).
22:18:35 -!- ais523 has joined.
22:22:19 -!- ais523 has changed nick to ais523|busy.
22:36:28 -!- oerjan has joined.
22:47:23 -!- cherez has joined.
22:52:11 -!- oklofok has quit (Read error: 113 (No route to host)).
23:34:13 <oerjan> his French cousin, i assume
23:41:50 <ehird> lament: that must be painful to say
23:42:18 <oerjan> that's the far-away cousin from r'lyeh
23:42:44 <oerjan> I'll be Bachqx'k, when the stars are right
23:51:33 <ehird> ais523|busy: Sgeo oerjan Forceful conversation move.
23:52:11 <Sgeo> On how oraclebot.com sucks?
23:52:54 <oerjan> um me too? i thought i _was_ speaking in the right - um, well, better than #ircnomic anyhow
23:53:05 -!- RedDak has quit (Remote closed the connection).
00:08:01 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:09:20 -!- SimonRC has joined.
00:22:26 -!- ehird has changed nick to the.
00:24:06 -!- the has changed nick to ehird.
00:54:39 -!- ais523|busy has quit (".̴̵̸̷̶̢̡̧̨̛̗̖̘̙̜̝̣̠̟̞̤̥̦̩̯̮̭̬̫̪̰̱̲̳̻̺̹̼̀́̂̃̄̅̋̊̉̈̇̆̌̍̎̏̐̑̔̓̒̽̕̚).
01:07:59 -!- sebbu2 has joined.
01:08:09 -!- sebbu has quit (Read error: 113 (No route to host)).
01:08:31 -!- sebbu2 has changed nick to sebbu.
01:20:49 -!- oklopol has joined.
01:40:56 -!- ehird has quit (Read error: 113 (No route to host)).
01:41:25 -!- ehird has joined.
01:46:52 -!- Id4ever has joined.
01:47:09 -!- Id4ever has left (?).
01:55:39 <lament> i didn't know ircd allowed quit messages that long.
02:14:27 -!- Tritonio has quit (Remote closed the connection).
02:25:53 -!- ehird has quit (Remote closed the connection).
03:19:59 -!- oerjan has quit ("Good night").
03:32:20 -!- GreaseMonkey has joined.
04:22:01 -!- Corun has quit ("This computer has gone to sleep").
05:22:27 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:31:36 -!- Slereah_ has joined.
05:31:36 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
05:55:03 -!- Phenax has joined.
06:04:49 -!- cherez has quit ("Leaving.").
06:05:44 -!- cherez has joined.
06:34:26 -!- dbc has quit (Client Quit).
07:37:02 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
07:41:02 -!- cmeme has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:10:14 -!- Sgeo has quit (Remote closed the connection).
08:40:19 -!- uvanta has joined.
09:00:54 -!- asiekierka has joined.
09:01:00 <asiekierka> Eww... http://rafb.net/p/gu9rwa95.html
09:01:17 <asiekierka> Asie-1 CPU turned out to be a failure, mostly because of a lack of one function.
09:01:40 <asiekierka> also, wait, i must explain the Asie-1 CPU in clearer detail
09:03:42 <olsner> asiekierka: that first link is a 404 for me
09:04:52 <asiekierka> Sadly, i couldn't put another instruction in. MOV b, (value)
09:05:26 <asiekierka> or maybe YOU can propose an instruction to remove
09:05:31 <olsner> but immediates are pretty simple to do with load-from-memory, right?
09:05:54 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
09:06:10 <asiekierka> but 256 bytes of memory is just NOT enough for this.
09:06:51 <asiekierka> so, basically, you CAN'T do immediates without creating them first
09:07:02 <olsner> oh, 16-bit registers, but 8-bit memory?
09:07:27 <asiekierka> which calls for a total of 256 bytes of program size.
09:07:44 <asiekierka> that's why i tried to make all instructions <16 bits.
09:08:13 <asiekierka> so, instructions are either 4 bits or 12 bits
09:08:43 <asiekierka> if i want to do NOT x (0101) and AND x (0111), i do: 0101 0111 in a single byte
09:09:09 <asiekierka> I thought of removing NOT b and AND b and replacing them with NAND b
09:09:25 <olsner> hmm, so why can't you just put the immediate in memory somewhere and just do LDA addr; MOV b, a;?
09:09:40 <asiekierka> i don't have the way to put the immediate
09:10:08 <asiekierka> but that can waste more than a half of the program!
09:11:46 <asiekierka> I'm thinking of combining NOT x and AND x
09:11:51 <olsner> NOP sounds obviously removable
09:12:04 <asiekierka> how else will you make delays in the program?
09:12:19 <olsner> INC b; DEC b; for example?
09:12:36 <olsner> or just jump around a lot
09:13:00 <asiekierka> well, olsner, NOT x and AND x can be combined
09:13:06 <asiekierka> while NOT b and AND b will be left separate
09:13:19 <olsner> hmm, so you're using this for a real-world application where 1-cycle accuracy in delays is vital?
09:14:05 <olsner> yeah, program size is a big factor with such a small memory space
09:14:15 <asiekierka> also, i'm making more space by adding NAND x
09:15:48 <asiekierka> now I think i can write an useful program
09:19:13 <asiekierka> I did set myself a goal of making a functional CPU in as less opcodes as possible
09:19:20 <asiekierka> while still doing most of possible functions
09:19:54 <GreaseMonkey> i recommend using the stack if you want a good amount of memory
09:19:56 <asiekierka> but 15 opcodes is the bare usefulity minimum
09:20:53 -!- oklofok has joined.
09:21:06 <asiekierka> An entire processor can be created using NAND gates alone.
09:21:13 <GreaseMonkey> hmm... i have a plan for a system somewhere...
09:22:20 <GreaseMonkey> you'd probably need to load some stuff up, first.
09:22:31 <oklofok> asiekierka: nand gates != nand opcodes, though
09:22:54 <oklofok> you cannot really do much program flow control on pure computative opcodes.
09:23:00 <GreaseMonkey> also, logic opcodes are really irritating when it comes to arithmetic
09:23:04 -!- oklopol has quit (Read error: 113 (No route to host)).
09:23:07 -!- oklofok has changed nick to oklopol.
09:23:24 <oklopol> heh, quite a coincidence i dropped
09:23:52 <olsner> using nand gates for useful stuff involve re-routing of bits, not sure you can get it complete with just nanding bitwise between whole words
09:24:18 <asiekierka> I.E. http://rafb.net/p/ODmyxB22.html - for oklopol
09:24:45 <asiekierka> the "no-special-register as-small-instruction-set-CPU-as-possible with-some-usefulity"
09:24:53 <asiekierka> GreaseMonkey: slightly, but nothing pretty important
09:27:33 <oklopol> (you need bitshifts, which are implicit in wire maps, but not as opcodes)
09:28:01 <oklopol> asiekierka: i mean, nand-and-branch won't work without em
09:28:56 <asiekierka> I'd so like to implement it in Verilog
09:30:11 <oklopol> to achieve what, i'm sensing i'm missing some awesomeness
09:30:33 <oklopol> hmm, can't you "show something" on a computer?
09:30:48 <asiekierka> i wanted to showcase Asie-1 with connecting it to a screen
09:31:01 <asiekierka> But well, i'll probably wait for Asie-2 with this.
09:32:02 <oklopol> one of them can do all the others if you make SH's set a flag indicating the thingie that was dropped
09:32:34 <oklopol> even then, one can do all the others
09:33:46 <asiekierka> ROL. so... should i add a ROckeR or a ROLler?
09:33:48 <oklopol> umm what do you mean basically keeps the last bit
09:34:39 <asiekierka> you can then AND the value from ROR to get SHR
09:34:45 <oklopol> also i'm pretty sure my neighbors are having sex
09:35:12 <asiekierka> also, is there a very simple low-opcode CPU architecture out there?
09:35:23 <oklopol> subtract-and-branch-if-zero?
09:36:01 <oklopol> well less than or equal to zero i guess is the official one
09:36:15 <oklopol> although equal-to is prolly enough
09:36:37 -!- GreaseMonkey has quit ("Unisex.").
09:37:13 <oklopol> umm, actually 4 or 5, but one was cheated and did tons of stuff.
09:38:04 <oklopol> you just need subtraction for arithmetic, ror and nand for bit stuff, and branch-if-less-than-or-equal-to-zero for jumping around
09:38:26 <oklopol> ALSO PERHAPS AN INSTRUCTION THAT PUTS THE COMPUTATION IN A MONAD
09:39:00 <asiekierka> also, you need LDA for loading immediates/memory values AND STA for saving them
09:39:31 <oklopol> and even then it has some sweet redundancy!
09:39:33 <asiekierka> but it still gives more opcodes in total
09:40:26 <oklopol> on what do you consider a separate opcode
09:40:35 <asiekierka> anything that has different register params
09:41:05 <asiekierka> but with swaps, i'm limiting 4 instructions to just 2
09:41:53 <oklopol> with swp, you can only move, with mov, you can copy.
09:42:14 <asiekierka> i'll see how many instructions i'll have left
09:43:19 <oklopol> 0111$$$$ $$$$ - LDI ($$$$$$$$ - immediate value)
09:43:19 <oklopol> 1000$$$$ $$$$ - LDA ($$$$$$$$ - memory position)
09:43:19 <oklopol> 1001$$$$ $$$$ - STA ($$$$$$$$ - memory position)
09:43:28 <oklopol> right, different register params
09:43:46 <oklopol> i'm not really practical enough to assume a register-based processor.
09:44:02 <asiekierka> LDI loads an immediate, LDA loads from a memory position, STA stores to a memory position!
09:44:18 <oklopol> which is why i found it weird different params would be different opcodes
09:44:51 <oklopol> i just usually have the memory, and no registers, for my asms
09:45:14 <asiekierka> beq (branch-if-equal) and bze (branch-if-zero)
09:45:58 <oklopol> bze and beq are just a few ops away
09:46:06 <oklopol> although i'm sure you knew that already.
09:46:19 <asiekierka> what do you mean "just a few ops away"?
09:47:06 <oklopol> code = code[bze/beq] +- n, where n is about 4, and A/B means swap A and B
09:47:48 <oklopol> (and these number are opcounts)
09:48:20 <asiekierka> INCs now can be done in loops with beq
09:48:26 <oklopol> what i mean is, you don't *need* both of those, but you knew that already
09:48:40 <asiekierka> i don't have any other instruction to add anyway
09:49:51 <oklopol> well yeah, bze a = beq a a, beq a b = bze (sub a b)
09:50:16 <oklopol> how the fuck can i fail at that :D
09:51:02 <oklopol> you can just load an empty memory slot
09:52:33 <asiekierka> Well, the program can either supply it's own 256 bytes of memory
09:52:47 <asiekierka> if the program supplies it's own, this allows for banking
09:53:07 <oklopol> perhaps i should make a declarative asm
09:54:10 <oklopol> well i'll gladly program something given something to program in it
09:54:42 <asiekierka> well, i think, with such a limited amount of opcodes
09:57:08 <asiekierka> oklopol: are you doing it, or are you waiting for an easier task?
09:58:21 <oklopol> i'm actually trying to find the best way to do it, not that i'm necessarily going to do it anyway
09:58:43 <oklopol> you can compile it to c, and use a c compiler, perhaps.
09:59:26 <asiekierka> nope, this will be too much of a waste
10:01:19 <oklopol> what will be too much of a waste?
10:03:53 <oklopol> pi calculation is impossible in 256 bytes
10:09:29 <olsner> yes, pi has over 9000 decimals
10:12:50 <oklopol> 256 bytes ~ 616 decimals, pi has inf decimals, 256 != 9000, what's 9000?
10:13:44 <olsner> 9000 is a random big number that is well above the number of decimals that fit in 256 bytes
10:14:32 <oklopol> please elaborate on why you picked exactly *that* random number.
10:16:27 -!- Iskr has joined.
10:16:31 -!- asiekierka has quit (Read error: 104 (Connection reset by peer)).
10:18:05 <olsner> an attempt to integrate the OVER NINE THOUSAND!!!! meme into the discussion, but it seems to have failed
10:18:34 <oklopol> i know, just wanted you to explain the joke.
10:18:44 <oklopol> :DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
10:19:04 <oklopol> i think i'll break the pi calculation record now
10:19:36 -!- asiekierka has joined.
10:19:49 <asiekierka> oklopol: heh, you can implement banking in memory
10:20:37 <oklopol> 256 bytes is not enough to hold a program that calculates pi
10:21:12 <asiekierka> that accesses the bank of program equal to it's value
10:28:57 -!- Slereah_ has joined.
10:37:31 <asiekierka> except loading/storing/comparsion stuff, that takes 12 bits, not 4
10:40:06 <asiekierka> is there any System 7 C compiler to download for free?
10:40:51 <oklopol> asiekierka: i can calculate the number of ops per 256 bytes, i'm asking what it means to change the bank
10:41:07 <asiekierka> you set $01 (or whatever position you want) to the number of the bank
10:41:10 <oklopol> i'm assuming it's a recursive call, and you can use a bank load as a function call
10:41:22 <asiekierka> then the Nth bank becomes the program code
10:41:43 <oklopol> start in the same position?
10:42:23 <asiekierka> then the bank starts execution at the 5th byte
10:42:34 <asiekierka> depends how large the set instruction is
10:42:51 <oklopol> makes compilation into banked pretty hard
10:43:17 <asiekierka> that's the only way to do anything IMPRESSIVE
10:43:32 <oklopol> can you set pc explicitly?
10:43:37 <oklopol> i haven't read the instruction set
10:44:59 <asiekierka> and you can use Branching for it anyways
10:46:51 <asiekierka> is there an assembler/C compiler for the System 6?
10:47:51 <Slereah_> The Ghostviewer logo looks like a Klansman.
10:55:38 -!- Judofyr has joined.
11:19:19 -!- asiekierka has quit (Read error: 104 (Connection reset by peer)).
11:20:11 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
11:27:17 <oklopol> gonna sleep for a sinister second now ->
11:27:52 -!- asiekierka has joined.
12:14:26 -!- Tritonio has joined.
12:30:09 -!- asiekierka has quit (Read error: 104 (Connection reset by peer)).
12:31:48 -!- timotiis has joined.
12:45:20 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
12:46:16 -!- Judofyr has joined.
13:02:54 -!- Corun has joined.
14:16:02 -!- ehird has joined.
14:51:53 -!- RedDak has joined.
15:10:33 -!- RedDak has quit (Remote closed the connection).
15:16:00 -!- oklopol has quit (Read error: 113 (No route to host)).
15:34:12 -!- oklopol has joined.
16:04:59 -!- wooby has joined.
16:07:18 -!- wooby has quit (Client Quit).
16:42:19 * ehird has quit (Client Quit)
16:43:35 <uvanta> ...i can't do this anymore ROFL
16:43:46 <ehird> uvanta: damn you, i was going on for 6 hours there
16:44:38 <ehird> uvanta: i'm not accepting your apology. you have ruined my life
16:44:44 * ehird has quit (Client Quit)
16:46:06 -!- uvanta has quit ("Client Quit").
16:53:08 -!- Tritonio has quit (Remote closed the connection).
17:21:47 -!- Sgeo has joined.
17:48:39 -!- asiekierka has joined.
17:54:19 <asiekierka> 1101 - reserved, I.E. think of anything you could put there for Asie-1.3 :)
17:54:47 <ehird> asiekierka: 15 opcodes ... sounds like Yael
17:54:59 <ehird> ... and indeed the opcodes are similar
17:55:03 <ehird> asiekierka: esolangs.org/wiki/Yael
17:55:20 <asiekierka> oklopol proposed what instructions should be there for minimalism
17:56:23 <asiekierka> and trying to keep opcode size minimalism
17:57:16 <asiekierka> 256 bytes of program, 256 bytes of memory
17:57:16 <ehird> asiekierka: er, so is mine
17:57:28 <ehird> asiekierka: then yours is hideously underpowered
17:58:02 <asiekierka> though i was thinking of STP as the 16th opcode, it'll store whatever you have at A into the program counter
17:58:04 <ehird> asiekierka: {} is easier
17:58:25 <ehird> asiekierka: the empty set.
17:58:46 <ehird> asiekierka: correct.
17:58:52 <ehird> this means that implementing it is trivial
17:59:02 <ehird> C: int main(){return 0;}
17:59:14 <ehird> FPGA: { -- air -- }
17:59:40 <ehird> asiekierka: empty set is faster
18:00:07 <ehird> asiekierka: correct
18:00:23 <ehird> asiekierka: you said that yours was designed to be easy to implement
18:00:33 <ehird> asiekierka: and, well, your actual machine is useful for just about nothing
18:00:36 <asiekierka> without registers that do special stuff
18:00:40 <ehird> so the empty set doesn't cost you much
18:00:41 <ehird> and wins you a lot
18:00:58 <ehird> asiekierka: but .. still not very useful
18:01:02 <ehird> it would need to be a bit higher power
18:01:05 <ehird> to be more useful than {}
18:04:00 <ehird> its's not much useful
18:05:57 <asiekierka> i wanted something that has more opcodes than subleq
18:06:01 <ehird> asiekierka: sure, it's cool
18:06:05 <asiekierka> while less than most of the CPUs out there
18:06:05 <ehird> jus tnot particularly useful :-P
18:06:20 <ehird> asiekierka: here's a challenge
18:06:23 <ehird> asiekierka: a lazy cpu
18:06:52 <ehird> a cpu based on lazy evaluation
18:07:05 <ehird> asiekierka: ... :'(
18:07:06 <asiekierka> you must explain things to an 11-year-old
18:07:16 <ehird> asiekierka: the wikipedia!
18:08:31 <ehird> asiekierka: quite impossible and meaningless
18:08:47 <ehird> then CPU -1 is where it overflows
18:09:01 <ehird> the challenge is writing a compiler for }{
18:09:05 <ehird> it's quite impossible.
18:09:19 <ehird> you could probably write one in }{ though.
18:10:28 <ehird> I wonder what -x86 is.
18:10:34 <ehird> if x86 is {foo}, -x86 is }foo{
18:10:38 <ehird> oklopol would have a field day with this
18:12:24 <ehird> asiekierka: I .. see
18:13:03 <asiekierka> it's the Idiot's way to solving idiotic equations
18:13:43 <asiekierka> Rule #2: If a value dosen't fit or is random, and you can't do anything with it, turn it to zero's!
18:13:53 <asiekierka> Rule #3: Behave like an idiot adding stuff and mixing it
18:15:08 <ehird> RodgerTheGreat: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
18:16:32 <RodgerTheGreat> gah! he answers questions with more perplexing riddles!
18:20:03 <ehird> RodgerTheGreat: I judge this contract, which is a contest: {}
18:40:17 -!- Tritonio has joined.
18:43:55 -!- timotiis has quit (Read error: 110 (Connection timed out)).
18:51:15 -!- asiekierka has quit (Read error: 104 (Connection reset by peer)).
18:51:30 -!- asiekierka has joined.
18:52:45 -!- asiekierka has quit (Client Quit).
18:59:00 -!- RedDak has joined.
19:11:41 <pikhq> RodgerTheGreat: !!!
19:13:41 -!- Tritonio has quit (Remote closed the connection).
19:24:37 -!- RedDak has quit (Remote closed the connection).
19:48:55 -!- pikhq has quit ("leaving").
19:52:02 -!- pikhq has joined.
20:58:15 -!- RedDak has joined.
21:32:01 <SimonRC> I have the beginnings of a compiler that targets befunge
21:32:27 <SimonRC> not like that scheme compiler that put all the code on one line
21:32:54 <SimonRC> currently you can't do much interesting with it though
21:33:38 -!- oerjan has joined.
21:33:46 <SimonRC> *Main> ppp $ emit $ fst $ parse "1 zput begin zget 1 > while zget * zget 1- zput again"
21:34:35 <SimonRC> the first line of output is width, height, entry row, exit row
21:38:36 <SimonRC> (Haskell makes throwing this stuff together so easy.)
21:41:11 -!- timotiis has joined.
21:43:27 <ehird> SimonRC: can i see the code?
21:43:55 <ehird> SimonRC: define 'on'
21:45:39 <SimonRC> http://sc.nonlogic.org/Beforth/
21:46:03 <ehird> SimonRC: lern2notpollutemainnamespace
21:46:10 <SimonRC> My idea of a website is a set of symlinks into some other directories :-)
21:46:20 <ehird> SimonRC: kinda talking about your haskell
21:46:41 <SimonRC> I should re-arrange things
21:47:47 <ehird> SimonRC: I suggest:
21:47:51 <ehird> Language.Beforth.*
21:48:01 <ehird> SimonRC: which gives you the dir tree:
21:48:04 <ehird> src/Language/Beforth/*
21:49:24 <ehird> SimonRC: I am of course nitpicking unimportant things on purpose
21:51:10 <SimonRC> one problem is that your main module has to be called "Main"
21:52:39 <AnMaster> SimonRC, aww? I wanted to see it
21:54:11 <ehird> which is a thin wrapper around some stuff in your module
21:54:15 <ehird> SimonRC: Main should be in src/
21:54:22 <ehird> SimonRC: it should do option parsing and file reading and all that
21:54:28 <ehird> then dump the output to a file
21:54:55 <AnMaster> ehird, why not interactive program?
21:55:06 <AnMaster> I assume that is possible in haskell?
21:55:06 <ehird> AnMaster: that makes no sense
21:55:46 <AnMaster> <SimonRC> the input is forth-like
21:55:56 <ehird> AnMaster: that means the input language ....
21:56:24 <AnMaster> SimonRC, forth to befunge converter? sounds really really interesting
21:57:23 -!- jix has joined.
21:57:26 <ehird> AnMaster: not real forth
21:57:38 -!- jix has quit (Remote closed the connection).
21:57:48 <ehird> also, wooo! I Wanna Be The Guy: The Movie: The Game runs with WINE!
21:57:55 <ehird> 8-bit masochism GO
21:58:19 <AnMaster> SimonRC, that > at the end makes no sense
21:58:31 <AnMaster> it will cause an infinite loop
21:58:41 <ehird> AnMaster: maybe he wants an infinite loop
21:58:59 -!- Iskr has quit ("Leaving").
21:59:14 -!- jix has joined.
22:01:53 <SimonRC> AnMaster: it is only a program fragment
22:02:02 <SimonRC> the > at the end leads on to more stuff
22:03:59 <AnMaster> SimonRC, now, can you compress the code :D
22:05:55 <SimonRC> well, it is optimised a bit
22:06:23 <SimonRC> it folds the second half of the loop backwards and puts it in top of the first half
22:07:14 <SimonRC> Th problem with _ is that you can't flip it horizontally easily
22:07:44 <AnMaster> SimonRC, are you doing befunge93 or befunge98?
22:08:07 <AnMaster> then you got w instruction that will help you a lot
22:08:42 <SimonRC> well, I don't want to be too '98y
22:09:54 <AnMaster> SimonRC, are you using ccbi or cfunge to test the output with?
22:10:04 <AnMaster> that are the only good 98 interpreters out there really
22:10:45 <AnMaster> ccbi does have better debugging support in general, while cfunge is faster
22:10:51 * AnMaster wrote cfunge and Deewiant wrote ccbio
22:13:07 <ehird> * [minerale] (i=35181@about/cooking/alfredo/Minerale): minerale
22:13:07 <ehird> * [minerale] #pmog #ircnomic ##mac ##java #gentoo #irssi #lighttpd #oracle #vim #rtorrent #erlang #zsh #screen #wikipedia #macdev ##textmate ##apple #ubuntu #debian #drm ##helenthomasflowers #macports #macosx #goruco
22:13:12 <ehird> >>why<< did that guy join #ircnomic?
22:13:17 <ehird> ###helenthomasflowers? seriously?
22:13:49 <AnMaster> ehird, what on earth is that channel?
22:14:29 <ehird> AnMaster: i have no fucking idea
22:14:54 <ehird> but ... i'm not sure
22:15:22 <ehird> AnMaster: about cooking alfredo!
22:15:33 <AnMaster> ehird, anything except a unaffiliated cloak would be impossible to get as a bot
22:15:41 <ehird> AnMaster: about cooking!
22:16:02 <AnMaster> ehird, yes.. about as in ## channel
22:17:38 <SimonRC> ok, so the source is moved to http://sc.nonlogic.org/beforth/
22:19:04 <AnMaster> SimonRC, there are more stuff you can't flip
22:19:49 <AnMaster> oh wait is it only flip horizontally?
22:22:03 <AnMaster> SimonRC, well some would cause different result if you flip them, x sets absolute vector
22:22:10 <AnMaster> so you need to flip the arguments as needed too
22:23:02 <SimonRC> it only has to work on befunge that I emit
22:23:24 <AnMaster> SimonRC, anyway what interpreter are you using to test this?
22:23:57 <SimonRC> I'm just inspecting the outputted code
22:24:11 <AnMaster> SimonRC, well I can recommend ccbi and cfunge :)
22:24:20 <SimonRC> actually, currently I'm not working on it
22:24:32 <SimonRC> AnMaster: what're the relative advantages?
22:24:35 <AnMaster> ccbi got better debug support, supports more fingerprints and is more stable, it is coded in D
22:25:16 <AnMaster> cfunge is coded in C, is faster, got some debugging support, but not yet as much, doesn't yet support as many fingerprints and it's code base isn't as stable yet
22:25:24 <AnMaster> ccbi is coded by Deewiant in here
22:25:41 <AnMaster> SimonRC, oh and cfunge will not be easy to run on windows
22:25:52 <AnMaster> but cfunge is mainly coded for speed
22:26:20 <AnMaster> SimonRC, also cfunge is less likely to crash on random input as I have done fuzz testing on it ;)
22:27:22 <AnMaster> SimonRC, links to both exist on the befunge page on the esolang wiki
22:28:09 <ehird> SimonRC: did I mention that AnMaster uses hairy functions like posix_tell or whatever to preallocate stuff
22:28:11 <ehird> and preallocates files
22:28:13 <ehird> for the sake of 1ms
22:28:22 <AnMaster> SimonRC, oh and if you don't want to install boehm-gc: it won't be the default to use boehm-gc in next version. and you can already disable it by:
22:28:25 <ehird> (while, for example, leaving the hashtable algorithm as non-optimal)
22:28:39 <AnMaster> ehird, I'm working on said hash table
22:29:05 <AnMaster> I have been making it a bit faster already
22:29:14 <AnMaster> ehird, but I do plan a complete rework of that part
22:30:04 <AnMaster> SimonRC, + there are binaries for both ccbi and cfunge available. for ccbi there are win32 and linux32 binaries, while for cfunge there are linux32 and linux64 binaries
22:36:35 -!- RedDak has quit ("Killed (NickServ (Comando GHOST usato da DIO))").
22:36:40 -!- Slereah_ has joined.
22:38:33 <oerjan> Slereah_: was it this year you invented the Andrei Machine?
22:39:12 <oerjan> Slereah_: i salute your remarkable ventriloquist powers
22:39:42 <oerjan> anyway i'll fix the wiki category
22:41:38 <oerjan> and is it really unimplemented?
22:44:32 <oerjan> http://esoteric.voxelperfect.net/wiki/Andrei_Machine_9000
22:47:27 -!- jix has quit ("CommandQ").
23:02:42 * oerjan recalls reading that "So" accidentally means the same in Japanese as in English
23:26:11 <olsner> and in scandinavian, dutch and german :P
23:26:58 <oerjan> that's not accidental, that's probably inherited
23:27:25 <olsner> yeah, so it's more like it means the same in japanese and germanic
23:28:50 <ehird> AnMaster: dirty language.
23:28:51 <AnMaster> which belongs to the subgroup scandinavian
23:28:57 <olsner> jajaja, men det r ju samma ord oavsett om det stavas med eller o :P
23:29:00 <oerjan> the pronunciation is the same essentially. except in english i guess
23:29:12 <ehird> jajajajjajajajjaa.
23:29:28 <ehird> oerjan: <subliminal>#ircnomic</subliminal>
23:29:29 * AnMaster slaps ehird with a super-large, super-smelly, decaying digitally-enhanced reinforced IRC-grade trout
23:29:46 * ehird slaps AnMaster with stupid client scripts
23:30:01 <oerjan> ehird: the wiki _still_ wasn't updated last i checked. how shall i know what game i am playing?
23:30:02 <AnMaster> oerjan, well the pronunciation of så and so are quite different
23:30:39 <oerjan> AnMaster: in swedish yes, but sw/no ~ german o
23:30:51 <ehird> <oerjan> ehird: the wiki _still_ wasn't updated last i checked. how shall i know what game i am playing?
23:30:54 <ehird> oerjan: we'll tell you
23:31:04 <AnMaster> oerjan, well I'm no expert of german, not knowing more than maybe 2-3 words in it
23:32:05 <oerjan> well essentially sw/no ~ nearly everyone else's o
23:35:21 -!- olsner has quit ("Leaving").
23:41:05 -!- dbc has joined.
23:45:18 -!- ehird has changed nick to elliott.
23:45:34 -!- elliott has changed nick to ehird.
00:43:17 -!- ehird has quit (Remote closed the connection).
01:02:10 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:39:27 -!- sebbu has quit ("@+").
01:51:29 -!- Kittens has joined.
01:51:32 -!- syamajala2 has joined.
01:51:59 -!- Kittens has left (?).
01:52:24 -!- syamajala2 has left (?).
02:01:15 -!- Corun has quit ("This computer has gone to sleep").
02:03:59 -!- Corun has joined.
02:58:29 -!- Corun has quit ("This computer has gone to sleep").
03:01:26 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
04:48:41 <pikhq> You know a game pisses you off when you enable god mode on it, run to an area with infinite dudes coming after you, and start mowing down people.
04:50:01 <GregorR> Sounds like good clean fun to me.
04:53:11 <pikhq> People going 'boom' is not very clean. :p
04:54:28 <pikhq> Especially when that 'boom' is the result of Tau leptons being launched into them in a continuous beam.
04:55:35 <pikhq> (the non-antimatter variety of Tau leptons; don't need the entire *planet* going boom)
04:57:02 <Slereah_> Why would you use tau leptons? Unless you accelerate them at like the speed of light, they'll just blow in your gun
04:57:27 <Slereah_> Also you'd need a collider in your backpack the size of Soviet Russia.
04:58:01 <pikhq> Never played Half-Life?
04:58:38 <Slereah_> Then, I found out that I couldn't find where to go after the exit bridge collapsed
04:58:54 <Slereah_> and I was killed by the most insidious enemy of the game so far
04:59:06 <pikhq> The Tau cannon has a very, very small particle accelerator in it. . .
04:59:18 <Slereah_> Head crabs go away in a few swoops of crowbars.
04:59:25 <pikhq> There's a vent in that entry room. . .
04:59:26 <Slereah_> The ladder, I just can't kill it.
04:59:28 <pikhq> Crouch and go through it.
04:59:39 <Slereah_> The room full of head crabs and falling computers?
04:59:49 <Slereah_> What am I supposed to do there?
04:59:49 <pikhq> That's the way to go.
05:00:01 <pikhq> There's a door in there that you need to go through, IIRC.
05:00:28 <pikhq> I'm stuck on the Blasting Pit, myself.
05:00:33 <pikhq> (only started playing last week)
05:01:38 <Slereah_> I wasted quite some time exploring, chatting up and screwing with equipment before the big experiment :D
05:01:49 <Slereah_> But in the first HL, it seems people were grumpy.
05:02:08 <Slereah_> "Weren't you supposed to be in the something something like half an hour ago?"
05:03:03 <pikhq> God mode makes the game very, very amusing to go through, BTW.
05:03:29 <pikhq> "Hmm. Let's kill the Vortigaunts with a crowbar."
05:03:31 <Slereah_> First, I'll try actually doing it
05:03:49 <Slereah_> Plus, maybe I'll finally get to go to the bar with those security guards
05:04:03 <pikhq> I only use God mode up to where I can get to without it; just kinda cheap, otherwise.
05:04:11 <Slereah_> If I save the universe, I damn expect some free beers
05:04:31 <pikhq> So sorry, but you'll be shot for your efforts. :p
05:05:13 <Slereah_> I doubt it. I have Half Life 2 on some CD.
05:05:27 <Slereah_> I might only have HALF A LIFE LEFT
05:05:36 <Slereah_> But he's still alive for the second part!
05:07:18 <pikhq> I've died so many times there. . . :p
05:07:20 <Slereah_> Plus, it's a good game to prepare me for the life of a physicist.
05:07:53 <pikhq> He's a theoretical physicist hired as menial labor; surely you had picked up on that?
05:08:04 <Slereah_> Riding trains in secret underground labs, getting yelled at by an army of scientist clones (one Einstein and one black), hitting aliens with crowbars.
05:08:17 <Slereah_> I picked that up from his wikipedia article
05:08:45 <Slereah_> But if I had that awesome suit, I'd push their goddamn cristal loads all day
05:09:56 <Slereah_> There's three suits, technically
05:12:39 <pikhq> You'll note, if you go back into the locker room, that the two other suits disappeared, though.
05:13:16 <Slereah_> I think they were never there.
05:13:50 <Slereah_> Maybe they're back at tech support?
05:13:51 <pikhq> I guess they took the suits to their dorms?
05:17:00 <Slereah_> What surprised me the most though.
05:17:15 <Slereah_> Has ammo clips and the American flag in it.
05:17:32 <Slereah_> You'd think they'd keep crazy rednecks out of top secret research facility.
05:17:54 <pikhq> You'd think, but you'd be wrong.
05:17:58 <Slereah_> Sure, I was glad to find some ammo, but still.
05:18:19 <Slereah_> I was also not sure why the crowbar was lying around.
05:18:30 <Slereah_> It's not the most used tool in a lab.
05:20:00 <pikhq> Still, it's the quintessential Half-Life weapon.
05:20:30 <pikhq> And it's a hell of a lot more plausible to find a crowbar than, say, a chainsaw. :p
05:20:53 <Slereah_> Yes, but you know, there's probably a more reasonable weapon to find.
05:21:05 <Slereah_> Like a screwdriver or a hammer or something.
05:21:06 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:21:27 <Slereah_> Or a big piece of concrete, since he's in that awesome suit.
05:23:16 <oerjan> O_O http://en.wikipedia.org/wiki/Mike_the_Headless_Chicken
05:23:32 * pikhq treats it like a headcrab
05:24:11 * Slereah_ read the link as "Mike the headless chick"
05:25:02 <Slereah_> The worst part is that he decided to keep it alive.
05:25:17 <Slereah_> A more merciful individual would just have smashed it with a sledgehammer
05:27:06 <pikhq> Make it a headcrab zombie.
05:27:35 <oerjan> We may hope the parts that could feel pain were already gone
05:28:03 <pikhq> According to Wikipedia, the headcrabs don't actually need a full *head*. . .
05:28:35 <pikhq> The Zombines from Half-Life 2, after their headcrabs die or bolt, can be seen headless.
05:29:25 <pikhq> oerjan: The bird only had a brainstem.
05:34:34 <Slereah_> Is it called Black Mesa because of all the affirmative action going on?
05:34:43 <Slereah_> There's like 20 identical black guys in there.
05:35:48 <oerjan> if they're identical, they must be clones, right?
05:36:02 <Slereah_> All the workers here are clones.
05:36:16 <Slereah_> I think there's only four different guys.
05:36:42 <Slereah_> The security guard, the black scientist, the old scientist, and the other old scientist with Einstein hair
05:36:54 <Slereah_> Plus Gordon Freeman, but I never saw him so far, no mirrors.
05:37:25 <oerjan> so not actually Einstein himself? there might be some DNA around somewhere...
05:38:05 <Slereah_> Well, there's no need for Einstein when you have Gordon Motherfucking Freeman.
05:40:05 <Slereah_> http://macrochan.org/source/Q/H/QHBND2O6B4ZKYRFAMOYNLFPUYMGOCYST.jpeg
05:40:27 <Slereah_> Fact : Gregory House is Gordon Motherfucking Freeman.
05:44:43 <pikhq> Fact: Gordon Freeman owns
05:44:54 <pikhq> With a crowbar, no leass.
05:45:28 <Slereah_> I just can't wait to doom the earth, just so that I can enact my Half Life nerd fantasies.
05:50:18 <Slereah_> It's not you computer scientists who can claim a man's man!
05:54:19 -!- Slereah- has joined.
05:54:19 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
06:03:59 -!- Slereah_ has joined.
06:03:59 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
06:29:11 -!- GreaseMonkey has joined.
06:29:11 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
06:29:44 -!- Slereah_ has joined.
06:42:04 -!- oerjan has quit ("Damn you, TV Tropes!").
06:59:12 -!- olsner has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:12:06 -!- augur has joined.
08:12:27 <augur> check it out: http://video.google.com/videoplay?docid=-6950604815683841321&hl=en
08:13:22 <Slereah_> Give me some sort of infinite memory and infinite life, and I'll compute stuff!
08:13:43 <augur> wheres the command line so i can kill your process
08:14:15 <augur> work damn you work!
08:16:01 <augur> GENESIS OF THE DALEKS!?
08:16:18 <Slereah_> Except I don't look like a giant marital aid.
08:16:34 <augur> you're right, you don't look like one
08:21:57 -!- Iskr has joined.
08:29:29 <Slereah_> Hello Iskr. We were just discussing... programming.
08:30:02 <olsner> yes, programming... just programming
08:30:55 <Iskr> yes programming a plc for vibrating dildos
08:47:48 <augur> good night everyone!
08:47:51 -!- augur has quit ("http://www.mibbit.com ajax IRC Client").
09:15:42 -!- olsner has quit ("Leaving").
09:36:16 -!- Judofyr has joined.
09:57:59 -!- Slereah- has joined.
10:12:10 -!- Slereah- has quit (leguin.freenode.net irc.freenode.net).
10:12:51 -!- Slereah- has joined.
10:15:03 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
10:19:02 -!- GreaseMonkey has quit ("Unisex.").
10:54:18 -!- Slereah- has quit (leguin.freenode.net irc.freenode.net).
10:54:33 -!- Slereah- has joined.
10:57:32 -!- Slereah- has quit (leguin.freenode.net irc.freenode.net).
10:58:20 -!- Slereah- has joined.
11:05:47 -!- AnMaster_ has joined.
11:07:17 -!- AnMaster has quit (Nick collision from services.).
11:07:26 -!- AnMaster_ has changed nick to AnMaster.
11:16:23 -!- Slereah- has quit (leguin.freenode.net irc.freenode.net).
11:16:41 -!- Slereah- has joined.
11:52:21 -!- Corun has joined.
11:57:40 -!- Iskr has quit (Excess Flood).
11:58:19 -!- Iskr has joined.
12:09:32 -!- Corun has quit ("This computer has gone to sleep").
12:15:39 -!- timotiis has joined.
13:00:07 -!- ehird has joined.
13:22:08 -!- ehird has changed nick to ehird`.
13:22:41 -!- ehird` has changed nick to ehird{.
13:27:46 -!- Corun has joined.
13:41:07 -!- Corun has quit ("This computer has gone to sleep").
14:12:45 -!- RedDak has joined.
14:31:29 -!- BMeph has joined.
14:49:18 <Slereah-> It seems the secret was to climb a giant computer to an air duct.
14:49:30 <Slereah-> Damn you Half Life and your lack of imagination.
14:49:54 <ehird{> Slereah-: have you played IWTBG?
14:52:44 <ehird{> Slereah-: The fucking clouds and spikes, they kill me. :3
14:53:59 <Slereah-> Isn't that the staple of most old style plateform games?
14:54:09 <ehird{> Slereah-: Yeah, but this part is crazy
14:54:13 <Slereah-> "Don't touch water, for it is made of acid fire!"
14:54:33 <Slereah-> "Don't touch the walls, they're laced with razor blade and cyanide!"
14:55:42 <Slereah-> You'd think that as technology got better, they'd stop feeling the need to use artificial ways of limiting your movement
14:56:38 <ehird{> PRESS 'R' TO TRY AGAIN
14:57:19 <Slereah-> Wait, I think I recognize the intro music
14:57:44 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
14:58:01 -!- Judofyr has joined.
14:58:09 <Slereah-> Oh, it's going to be a bunch of intro parodies
15:00:10 <ehird{> Slereah-: haha are you playing it
15:00:24 <ehird{> Slereah-: PROTIP: set the difficulty to medium. It gives you a pink ribbon but it gives you wuss-save-points.
15:01:04 <Slereah-> But for some reason, I can't get past the first step
15:02:15 <Slereah-> Is it actually possible to finish this game?
15:06:05 <ehird{> Slereah-: what problem are you having
15:06:20 <Judofyr> have you guys seen blimlimb?
15:06:27 <Judofyr> http://hackety.org/2008/05/16/blimlimb.html
15:06:32 <ehird{> Slereah-: hat's your problem?
15:06:32 <Slereah-> ehird{ : A giant spiked grid is crushing me limb to limb at the speed of light
15:06:43 <ehird{> Slereah-: Go to the right.
15:06:55 <ehird{> just don't stop going to the right when you drop down
15:07:05 <Slereah-> Can you actually get there before the crushing?
15:07:13 <ehird{> Slereah-: Just hold down right before walking off.
15:07:36 <ehird{> Slereah-: Don't jump off
15:08:17 <Slereah-> Oh right, it stops before the end.
15:08:44 <ehird{> Slereah-: Oh and to use the WUSS/SAVE point shoot it
15:08:45 -!- jix has joined.
15:09:29 <Slereah-> I'd love to, but there's a sneaky spike that got me from behind!
15:09:56 <ehird{> Slereah-: Hint - Don't land directly on the last floor.
15:10:01 <ehird{> Slereah-: Your double jump skillz come in handy here.
15:10:25 <Slereah-> I don't play games just because they're horribly hard and frustrating.
15:10:32 <ehird{> Slereah-: Oh, don't worry. It's not.
15:10:37 <ehird{> Slereah-: the levels are very well designed.
15:10:49 <ehird{> Slereah-: It actually stops being frustrating just because dying is so common
15:10:55 <Slereah-> Does that invalidate anything I said? :o
15:11:00 <ehird{> Slereah-: But yeah, there's a lot of thought put into it. It's just a bitch at first.
15:11:08 <ehird{> Slereah-: And yes -- it isn't just being hard for the hell of it
15:11:42 <ehird{> Slereah-: Oh, by the way, after the wuss point ... Watch out for that last stpe
15:12:02 <ehird{> But don't worry, dying puts you back at your wuss poitn
15:12:40 <ehird{> Slereah-: Hahahaha, have you stepped off yet?
15:12:44 <ehird{> I don't think GOOD comes in to it..
15:12:48 <ehird{> Nobody will get that first time
15:12:55 <Slereah-> I've got exams in two days, I don't really want to play.
15:13:09 <ehird{> IT WILL RELIEVE ALL YOUR STRESS!
15:13:55 <Slereah-> That's what porn and adventure games are for.
15:15:59 <Slereah-> Adventure games are the opposite of a giant slab of spiky metal crushing you.
15:16:20 <Slereah-> You can just chillax as there's no time requirement
15:18:53 <ehird{> Slereah-: Oh hai, you've never played space quest V
15:19:04 <ehird{> TIME POLICE, ZOMBIES, AND ROBOTS. THEY'RE ALL OUT TO FUCKING GET YOU AND YOU SHOULD HIDE BEHIND SOMETHING **NOW**
15:21:10 <Slereah-> Well, I'm not stupid enough to play Sierra games!
15:21:43 <Slereah-> Also Space Quest 6 had one of the best song of all video games.
15:27:21 <Slereah-> http://imgs.xkcd.com/comics/fortune_cookies.png
16:02:13 <ehird{> yer back to the lovely "Mine is bigger than yours" issue, and the idiots still ain't learned a damn thing about shit under shit "underwear"
16:02:51 -!- RedDak has quit (Remote closed the connection).
16:04:33 -!- augur has joined.
16:11:11 -!- Slereah- has changed nick to Slereah.
16:29:36 -!- sebbu has joined.
16:41:02 -!- sebbu2 has joined.
16:50:40 -!- sebbu has quit (Connection timed out).
16:50:40 -!- sebbu2 has changed nick to sebbu.
17:19:09 -!- augur has quit ("http://www.mibbit.com ajax IRC Client").
17:42:33 -!- Corun has joined.
17:52:35 <Slereah> I pull a lever for some sort of elevator, and a shower of headcrabs?
17:52:45 <Slereah> How the fuck does that even work out?
17:52:51 <Slereah> Make me believe, Half Life!
17:59:33 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
17:59:34 -!- oklofok has joined.
18:33:06 -!- RedDak has joined.
18:33:57 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
18:40:11 -!- Slereah_ has joined.
18:44:29 -!- olsner has joined.
18:56:54 -!- RedDak has quit (Remote closed the connection).
19:12:38 -!- jix has quit (Nick collision from services.).
19:12:48 -!- jix has joined.
19:14:46 -!- Slereah has joined.
19:15:21 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
19:23:32 -!- Slereah_ has joined.
19:23:33 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
19:28:20 -!- Slereah has joined.
19:30:46 -!- RedDak has joined.
19:32:02 <ehird{> Slereah: cake challengw
19:32:32 <Slereah> I will sleep soon enough, ehird{
19:35:30 -!- Slereah- has joined.
19:35:31 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
19:36:24 <olsner> I /kick Slereah- and go buy myself a nice cake :P
19:36:28 <Slereah-> If you also have a better connection, I'll take it.
19:37:16 <ehird{> I shoot a portal above the cake
19:38:34 <ehird{> Slereah-: BELOW ME as in I FALL INTO IT. And no, I don't.
19:38:38 <ehird{> Slereah-: #esoteric is +c
19:38:41 <ehird{> nobody can see coluors in here
19:38:47 <ehird{> they're stripped on send
19:38:58 <Slereah-> Why did I do colors for all my cake challenges!
19:39:20 <ehird{> Slereah-: You've got to show us screenies sometime
19:39:22 <Slereah-> I can just do them on fucking notepad.
19:39:33 <Slereah-> Well, the logs don't keep colors.
19:40:52 <ehird{> Slereah-: ... The .. . lion now?
19:41:09 <ehird{> why didn't I fall into the portal
19:45:34 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
19:45:42 <Slereah-> It are less pretties without colors.
19:45:54 <ehird{> Slereah-: Awww, I don't wanna fall on it
19:48:02 <ehird{> Slereah-: Give me a cake first.
19:48:20 <ehird{> Slereah-: Is it delicious
19:48:48 <ehird{> IT IT DELICIOUS SLEREAH
19:58:56 <oklofok> my gf is reading a book naked next to me, would that be better?
19:59:20 <SimonRC> you and your having-a-girfriend
20:07:30 <oklofok> i like telling mentioning her as often as possible on channels where nerd percentage is great
20:09:52 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
20:10:14 -!- Judofyr has joined.
20:12:09 <oklofok> SimonRC: i asked her if she wanted some noodles, and she came
20:12:47 * SimonRC recommends that oklofok re-read that sentance
20:12:54 <oklofok> was seeing a friend of mine back then, and we're kinda keeping it secret now, so it's pretty stupid of me to mention her on a publicly logged channel :D
20:13:23 <SimonRC> secret in case the friend get jelous?
20:13:42 <oklofok> yes, jelosity is the worst
20:15:27 <SimonRC> unfortunately, I don't meet enough girls
21:27:17 -!- Sgeo has joined.
22:07:00 -!- olsner has quit ("Leaving").
22:09:39 -!- kar8nga has joined.
22:10:10 -!- kar8nga has left (?).
22:12:22 -!- kar8nga has joined.
22:24:21 -!- kar8nga has quit ("Leaving.").
22:26:23 -!- BMeph has quit ("Time for me to go home").
22:38:46 -!- Iskr has quit ("Leaving").
22:53:02 -!- Sgeo has quit (Connection timed out).
23:01:23 -!- Sgeo has joined.
23:05:05 -!- jix has quit ("CommandQ").
23:07:26 -!- RedDak has quit (Remote closed the connection).
23:14:52 <ehird{> RodgerTheGreat: FRANK@SHOEMAKER@WOULD@CALL@THIS@NOISE
23:14:56 <ehird{> first part of the fermilab fax
23:15:58 <ehird{> RodgerTheGreat: http://www.jgc.org/blog/2008/05/breaking-fermilab-code.html
23:16:06 <ehird{> oh and the last segment
23:16:07 <ehird{> EMPLOYEE@NUMBER@BASSE@SIXTEEN
23:16:10 <ehird{> the middle is as of yet undecoded
23:17:04 <Sgeo> What's the fermilab code?
23:17:08 <Sgeo> Can't click links now
23:18:01 <ehird{> Sgeo: A fax sent to fermilab out of the blue.
23:20:01 <RodgerTheGreat> basically, a huge block of ||, | and ||| (which I am quite disappointed to discover is in no way a huffman-encoded message with the key stored in the next thing), a strange set of what appear to be hex digits and odd symbols, and then another block with just | and ||.
23:23:14 <RodgerTheGreat> I think the author of that article is off his rocker if he thinks 12 bytes worth of hex is something meaningful in assembly
23:24:04 <Sgeo> Is there any chance that if it's not solved, the original sender will send the solution?
23:24:51 <RodgerTheGreat> Sgeo: want me to try to find a text version of the puzzle and paste it to you, or would you rather just look it up later?
23:25:19 <Sgeo> I'll look it up latwer
23:25:34 <ehird{> <Sgeo> Is there any chance that if it's not solved, the original sender will send the solution?
23:25:39 <ehird{> no code trickster does THAT
23:34:22 -!- oerjan has joined.
23:41:49 -!- ihope has joined.
23:54:02 <oerjan> It was the snake's fault.
23:59:30 <oerjan> And what _were_ the horses doing in that place anyhow? It's suspicious, I tell you!
00:03:15 <ihope> How should the Great Fall thingy be... symbolized?
00:03:24 <ihope> I have a symbolic dog, by the way.
00:09:47 <oerjan> not sure, i feel i am treading on egg-shells here...
00:14:47 <ihope> I can draw a symbolic flashlight, a symbolic radio transceiver, and a symbolic dog.
00:15:44 <oerjan> the flashlight can symbolize the hunting for scapegoats
00:16:56 <ihope> I'll time-consumingly scan and upload them.
00:17:38 <ihope> The dog is by far the most complex, I'm sure. It even has a curve.
00:26:53 <ihope> Oh, the dog also contains a circle.
00:27:35 <ihope> The flashlight contains 7 lines. The radio transceiver contains 4 lines. The dog contains 16 lines, 1 circle, and 1 miscellaneous curve.
00:28:31 <ihope> People will be drawn as... blobs!
00:46:13 <ehird{> ihope's client dropped
01:00:21 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:39:14 -!- ehird{ has quit (Read error: 104 (Connection reset by peer)).
02:57:37 -!- Corun has quit ("This computer has gone to sleep").
03:02:33 -!- ihope has quit ("ChatZilla 0.9.82.1 [Firefox 2.0.0.14/2008040413]").
03:48:34 -!- cherez has quit (Read error: 110 (Connection timed out)).
04:06:37 -!- cherez has joined.
04:17:50 -!- Slereah has joined.
04:21:29 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
04:46:43 -!- oerjan has quit ("Good night").
04:46:44 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
04:46:45 -!- Slereah- has joined.
04:56:11 -!- Slereah has joined.
04:56:11 -!- Slereah- has quit (Read error: 104 (Connection reset by peer)).
05:23:21 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:23:21 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
05:56:26 -!- sebbu2 has joined.
06:14:52 -!- sebbu has quit (Read error: 110 (Connection timed out)).
07:24:38 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:30:39 -!- immibis has joined.
08:31:05 -!- immibis has quit (Client Quit).
08:42:18 -!- Judofyr has joined.
09:03:42 -!- Iskr has joined.
09:09:58 -!- GreaseMonkey has joined.
09:11:12 -!- Judofyr has quit.
10:32:27 -!- GreaseMonkey has quit ("Unisex.").
11:07:48 -!- timotiis has joined.
11:18:28 -!- timotiis has quit (Read error: 104 (Connection reset by peer)).
11:18:30 -!- timotiis has joined.
12:06:28 -!- Corun has joined.
12:31:51 -!- Judofyr has joined.
12:33:03 -!- ehird has joined.
12:36:04 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
12:40:15 -!- ehird has joined.
12:50:32 -!- ehird_ has joined.
13:04:35 -!- ehird has quit (Read error: 110 (Connection timed out)).
13:06:55 -!- Judofyr_ has joined.
13:21:37 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
13:26:12 -!- ehird_ has changed nick to ehird.
13:39:41 -!- Corun has quit ("This computer has gone to sleep").
14:17:32 <ehird> We asked the oracle, “What is the meaning of life?” ...and the oracle responded: “Yes, it was inevitable.”
14:17:37 <ehird> http://www.oraclebot.com/game/aglvcmFjbGVib3RyCwsSBEdhbWUY3AwM/
14:23:27 -!- Judofyr_ has quit (Read error: 104 (Connection reset by peer)).
14:24:02 -!- Judofyr has joined.
14:42:43 -!- BMeph has joined.
15:13:36 -!- Slereah has joined.
15:22:44 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
15:23:09 -!- Slereah has joined.
15:23:59 -!- Slereah has quit (Client Quit).
15:32:28 <ehird> Phenax: you look new.
15:32:41 <ehird> at least, i don't recall your nick
15:47:35 * pikhq goes to go gradjiate
15:50:30 <pikhq> ehird: Not for the Hatfields.
16:00:18 -!- ais523 has joined.
16:05:08 -!- Corun has joined.
16:15:12 -!- jix has joined.
17:15:42 -!- Corun has quit ("This computer has gone to sleep").
17:26:52 -!- RedDak has joined.
17:48:25 -!- RedDak has quit (Remote closed the connection).
18:05:29 -!- ais523 has quit ("brb").
18:15:20 -!- ais523 has joined.
18:19:17 -!- kar8nga has joined.
18:41:59 -!- oklopol has joined.
18:52:13 <ehird> ais523: Forceful move.
18:53:45 <ehird> ais523: so, any other language suggestions for the rootnomic? I can't think of any good one
18:53:51 <ehird> I mean, shell would be perfect tbh
18:54:13 <ais523> suid would be simple enough
18:54:24 <ais523> it's still possible to /set/ the suid bit on a script, even if it does nothing
18:54:29 <ehird> ais523: ooh, here's an idea . . .
18:54:33 <ais523> so just write a wrapper that sudos scripts with the suid bit set
18:54:41 <ehird> ais523: what if we stored nomic proposals in home dirs
18:54:47 <ehird> /home/ehird/proposals
18:54:50 <ais523> ehird: draft proposals, maybe
18:54:51 <ehird> ais523: then we wouldn't need suid or whatever
18:55:02 <ais523> you don't want them edited while people vote on them, though
18:55:32 <ehird> ais523: so, remove their write permisons
18:55:37 <ehird> ais523: but I guess you are right.
18:55:51 <ehird> ais523: I guess I'll start hackin'
18:56:15 <ehird> ais523: should I prefix commands with nomic-? To avoid cluttering the namespace
18:56:37 <ais523> BTW, which preinstalled applications are you going to have?
18:56:38 <ehird> ais523: ooh, here's another idea - instead of explicit activation, what about a cron job?
18:56:48 <ehird> ais523: no suid would be needed, since crons are run as root - or at least can be
18:56:56 <ehird> ais523: if you also do the in-home-dir thing .. voila?
18:57:51 <ais523> you still need suid on rules created by proposals
18:58:29 <ehird> the cron job can just do
18:58:55 <ais523> ehird: yes, but what if you want to propose to add a root-runnable script?
18:59:02 <ais523> say something that lets you alter other people's votes
18:59:05 -!- oklofok has quit (Connection timed out).
18:59:07 <ais523> under certain conditions
18:59:38 <ehird> ais523: then they do whatever I did
19:00:04 <ais523> ehird: doing everything via cron would mean that people can't do things on-demand
19:00:10 <ais523> instead they'd have to create a file and wait
19:00:12 <ehird> ais523: Yes they could.
19:00:16 <ehird> ais523: I don't think you understand.
19:00:26 <ehird> ais523: A cron job would run every day, and the proposals that have passed get run.
19:00:38 <ehird> ais523: So, it just automatically does 'activate' on them, except that since as a cron job it is already run as root, no suid magic.
19:00:42 <ais523> ehird: I'm not talking about the proposals themselves, they can run as root fine
19:00:43 <ehird> And, as a bonus, you don't need to manually activate.
19:00:50 <ais523> I'm talking about what if I want to change the gamestate not via a proposal
19:00:57 <ehird> ais523: Then you use a regular script.
19:01:01 <ehird> ais523: Only activation is done via a cron job.
19:01:09 <ais523> say, create a proposal that allows players to donate points, by creating a script that lets them do that
19:01:14 <ehird> ais523: Although. I can see where youi are coming from
19:01:22 <ais523> you're implying all gamestate changes have to be done via cron
19:01:24 <ehird> ais523: I'm currently erring on the side of 'store all data in the users home dir', though.
19:01:27 <ehird> ais523: It seems unixy.
19:01:42 <ehird> ais523: Then no suid is required, because hte only thing requiring root is the activation cronjob.
19:01:47 <ais523> ehird: if you do that then you'll have to revoke user's access to their own home directory
19:01:55 <ais523> and suid is required so you can modify other user's stuff
19:02:01 <ehird> ais523: Fine, then.
19:02:08 <ehird> ais523: /var/nomic it is.
19:02:27 <ais523> storing things in home directories isn't all that bad, but suid scripts are essential
19:02:33 <ehird> ais523: So, should I use nomic-root-sh or whatever which only accepts nomic binaries?
19:02:36 <ehird> and does the setuid
19:02:36 <ais523> even if you don't have any to start with people will want to add them later
19:02:43 <ehird> ais523: Ah, I know! It'll only run anything in /usr/lib/nomic/bin
19:02:52 <ais523> yes, that would make sense
19:02:59 <ehird> ais523: debian standard
19:03:13 <ehird> /usr/lib/APP/bin for apps that users usually won't use - OK it's an abuse of that rule
19:03:15 <ehird> but its the best we have
19:03:19 <ehird> (debian never uses seperate dirs)
19:04:27 <ehird> ais523: Hm. I could make the activation use git.
19:04:38 <ehird> ais523: Like, / is git-controlled. And a commit is made each proposal.
19:05:19 <ais523> ehird: I'd suggest /var rather than /usr/lib
19:05:31 <ehird> ais523: /var is for data.
19:05:36 <ehird> ais523: Executables are not data
19:05:37 <ais523> the rule with /usr is that systems should work fine if it's on a read-only filesystem
19:05:50 <ais523> the point with /var is it's identical to /usr, except for stuff that changes
19:05:56 <ais523> whereas /usr is read-only
19:05:59 <ehird> ais523: Well, that's too purist to be useful.
19:06:07 <ehird> ais523: Let's go by debian guidelines. /var is for app-specific data.
19:06:09 <ais523> it's /etc that's data-only
19:06:18 <ais523> ehird: and this is app-specific
19:06:28 <ehird> ais523: it's not data
19:06:36 <ehird> /usr/lib/nomic/bin is where debian would put it
19:07:12 <ehird> ais523: any comments on my git idea?
19:07:33 <ais523> git seems kind-of crazy for versioning a nomic programatically
19:07:44 <ais523> it's hard enough for a human to use, why would you expect a computer to be able to handle it?
19:08:45 <ehird> ais523: you seem to think git is some kind of obscure system
19:08:48 <ehird> ais523: it can be scripted trivially
19:08:55 <ehird> ais523: All my idea is - git init in /
19:08:59 <ehird> ais523: git commit after each proposal application
19:09:12 <ais523> ehird: how would you add which files are tracked by the versioner?
19:09:14 <ehird> ais523: then e.g. you can make a proposal which does a 'git revert'
19:09:23 <ehird> ais523: and, well, i guess it'd track the whole fs
19:09:27 <ehird> not much would change at a time
19:09:33 <ais523> including git's data dir?
19:09:33 <ehird> so you'd have a sh*t-huge initial revision
19:09:39 <ehird> it won't track that
19:09:41 <ehird> even if you tell it to
19:09:54 <ais523> ehird: what if I'm evil and hardlink to it
19:09:58 <ais523> from inside my home dir
19:10:07 <ehird> ais523: i don't think it will
19:10:53 <ehird> ais523: i don't know.
19:10:57 <ehird> ais523: I guess it checks hardlinks
19:11:15 <ais523> ehird: any idea how inefficient that is?
19:11:26 <ais523> oh, and BTW, Debian put coopt.sh from C-INTERCAL into /usr/share
19:11:33 <ehird> ais523: I don't know. I don't know. I -don't- -know-!
19:11:38 <ais523> and it's an executable, although one that doesn't change
19:11:53 <ais523> ehird: you have to do an entire FS scan to determine where a hard link is linked to
19:12:04 <ais523> find can do it, but it takes ages
19:12:06 <ehird> ais523: I don't know I don't know I don't know jeeeeeeeeeeeeez
19:12:29 <ais523> the actual answer is that most OSs aren't insane enough to allow directory hardlinks
19:12:30 -!- jix has quit (Nick collision from services.).
19:12:40 -!- jix has joined.
19:12:46 <ais523> but hardlinking to a data file could still cause problems
19:13:16 <ehird> ais523: Anyway, guess I'll have to write some C for this
19:13:36 <ehird> tap tap tap emacs usr/lib/nomic/bin/nomic-sh
19:13:56 <ehird> ais523: What's the directory for source again?
19:13:59 <ehird> ais523: Plan9 uses /src.
19:13:59 -!- AnMaster has quit (Connection reset by peer).
19:14:20 <ehird> OK then, tap tap tap emacs usr/src/nomic/nomic-sh.c
19:16:57 <ehird> ais523: install prog /usr/lib/nomic/bin
19:17:01 <ehird> to do the 'right thing' right?
19:17:10 <ehird> ais523: Then manually setuid it.
19:17:27 <ais523> and I think you have to pass it the required permissions as an argument
19:17:43 <ehird> set permission mode (as in chmod), instead of rwxr-xr-x
19:18:04 <ais523> cp, chown, chmod's probably what's needed
19:18:13 <ais523> because you want to be able to replace newer files with older in a proposal
19:18:20 <ehird> this is just for nomic-sh
19:18:25 <ehird> and, maybe some other c file
19:18:39 <ais523> ehird: why are you using C files?
19:18:52 <ehird> ais523: Because I need a sh that runs as root.
19:19:13 <ais523> the issue with them is that they wouldn't easily be editable by proposal
19:19:18 <ehird> ais523: Yes they could.
19:19:26 <ehird> ais523: Just edit /usr/src/nomic/foo.c
19:19:31 <ehird> ais523: then add a 'make install clean'
19:19:42 <ais523> presumably a cronjob's doing the make
19:19:43 <ehird> ais523: Just make your proposal a shell script
19:19:48 <ehird> ais523: The proposal that edits it is
19:21:35 <ehird> ais523: Hm. I'm gonna use hard tabs for these files. Why? Because by default, vi(1) uses hard tabs.
19:21:46 <ehird> ais523: And I'm _not_ installing emacs on that machine. if you want it, install it via proposal. :P
19:21:54 <ais523> what editors are going to be on that machine?
19:22:06 <ehird> ais523: vim. nano. Err, ed.
19:22:10 * ais523 thinks you should install something really obscure
19:22:21 <ais523> that neither you nor I have currently heard of
19:22:24 <ehird> ais523: and enable x11 forwarding
19:22:29 <ehird> ais523: because elvis' x11 mode is really cheesy
19:22:33 <ehird> ais523: OK then -- What about NEdit?
19:22:45 <ais523> ehird: you've heard of that, otherwise you couldn't have suggested it
19:23:01 <ehird> ais523: But only because I went looking for obscure editors before
19:23:04 <ais523> hmm... maybe I should finish ICE some day
19:23:11 <ehird> intercal code editor?
19:23:26 <ais523> well, it's an intercal anything editor, really
19:23:36 -!- kar8nga has left (?).
19:23:38 <ais523> it's interactive, but almost stream-compatible with sed
19:23:46 <ais523> blank lines have a semantic meaning
19:23:52 <ais523> and you mostly use sed commands to do stuff
19:23:57 <ais523> so it's kind of like ed, except not
19:25:02 <ais523> ehird: BTW, if you have a VM, it might be an excellent chance to find out what happens when you reformat a mounted hard drive
19:25:18 <ais523> I've been wondering about that ever since mke2fs(8) said it was possible if you gave the force option twice
19:25:19 <ehird> ais523: I'll just run qemu. :-P
19:25:27 <ehird> ais523: But yeah, feel free to do whatever on it. I might give you root.
19:25:42 <ehird> ais523: Oh, and it'll be amusing because it'll be a vm in a vm
19:25:46 <ehird> my VPS from slicehost runs under Xen
19:25:58 <ehird> I get root and all that shizz without having to pay for a dedi :p
19:26:05 <ehird> $20/mo for a 'box' I can fully control ain't bad
19:27:13 <ehird> ais523: Okey-dokey, do shebang lines ever pass relative paths?
19:27:16 <ehird> They always pass absolute, right?
19:27:39 <ais523> ehird: I've tried relative lines to see what they do
19:27:44 <ais523> they run as sh would, I think
19:27:58 <ais523> so they look in PATH, and also the place given if it starts with an explicit ./
19:28:09 <ehird> ais523: what i'm saying is
19:28:15 <ehird> /bin/sh always gets an absolute path
19:28:28 <ais523> you could test easily enough
19:28:36 <ehird> ais523: echo actually
19:29:03 <ehird> ais523: How do you change a relative path into a canonicalized absolute one in c?
19:29:26 <ais523> well, I use realpath in shell
19:29:32 <ais523> also to bypass symlinks
19:29:54 <ais523> I did that in the C-INTERCAL install script for my latest attempt at getting Info installation working properly
19:30:14 <ais523> (BTW, no matter what I do there, Debian always comment it out because they have their own Info install method that actually works)
19:30:38 <ehird> ais523: you should make it so tat c-intercal won't compile without it
19:30:41 <ais523> anyway, the idea is that it installed Info if the info dir file was in your prefix, or if you symlinked to it from your prefix
19:31:08 <ais523> but install-info responded by renaming the symlink as a backup, and then creating the new version of the info dir file where the symlink was
19:31:17 <ais523> so I added a call to realpath if available, or echo and hope otherwise
19:32:30 <ehird> ais523: by the way, I hate make(1)
19:32:44 <ehird> and how _do_ you setuid a binary?
19:32:45 <ais523> I actually kind-of like it
19:33:16 <ehird> chmod ug+srwxr-xr-x /usr/lib/\$prog
19:33:20 <ais523> you can also give a 4-digit octal mode, but I never remember how those work
19:33:27 <ehird> executable by anyone, modifiable only by owner, setuid and setgid
19:33:50 <ais523> no, it would be ug+s,a+x,a+w,u-w,o-w
19:34:23 <ais523> you were mixing two different mode line syntaxes
19:34:27 <ehird> chmod ug+s,a+x,a+r,u-w,o+w "/usr/lib/\$prog"
19:34:48 <ais523> ehird: did you try that? and anyway, why are you setting both setuid and setgid?
19:34:59 <ehird> ais523: because they should run as root:root?
19:35:16 <ais523> ehird: that isn't common practice, really
19:35:23 <ais523> and I have no idea if it works
19:35:31 <ehird> chmod u+s,a+x,a+r,u-w,o+w "/usr/lib/\$prog"; \
19:35:58 <ehird> ais523: i haven't run it because it'll trash my local system
19:36:02 <ehird> and the backslash 'cause its in a makefile
19:36:26 <ais523> ehird: you can run it in your home directory without root perms
19:36:34 <ais523> you can suid as users other than root, you know
19:36:41 <ehird> ais523: "/usr/lib/\$prog"
19:36:55 <ais523> well, just try the chmod line by itself to see if it works
19:37:05 <ais523> on a junk file in ~ which says #!/bin/false at the top
19:37:20 <ehird> -r-sr-xrwx 1 ehird ehird 7474 2008-05-20 19:38 nomic-bash
19:37:24 <ehird> ais523: so ... no, not really
19:37:28 <ehird> anyone can write it and the owner can't
19:37:37 <ehird> ais523: And the setuid is only for the owner.
19:38:03 <ais523> ehird: setuid only for the user is normally right
19:38:11 <ehird> ais523: OK. But what about the rw thin
19:38:22 <ais523> it should be u+w,g-w,o-w anyway
19:38:29 <ais523> I screwed that up quite badly
19:38:53 <ais523> incidentally, if something is world-writable but not owner-writable, does that mean anyone except its owner can write it?
19:39:47 <ehird> -rwsr-xr-x 1 ehird ehird 7474 2008-05-20 19:41 nomic-bash
19:39:49 <ehird> ais523: looks right
19:40:35 <ais523> just out of interest, what happens if you set suid and sgid simultaneously? I've never tried that, but having user=root is generally enough because that lets you do anything
19:42:30 <ehird> ais523: Grr. Strcmp doesn't actually guarantee to return the fisrt non-matcher.
19:42:34 <ehird> ais523: 'for' loop here I come!
19:42:58 <ais523> ehird: why would you expect strcmp to do that?
19:43:07 <ehird> ais523: it would be useful
19:44:01 <ehird> ais523: Hmm. I'm considering making it beep 10 times if you try and use nomic-bash to run a script outside of the place it wants.
19:44:19 <ais523> and where would the beep be?
19:44:23 <ehird> ais523: the beep would be \7
19:44:25 <ais523> the user's console, or your server room
19:44:47 <ehird> ais523: and because beeping is the internationally recognized 'No, we're not going to let you breach our security.' signal!
19:44:54 * ais523 has always wondered what would happen if e wrote to /dev/audio on this server, but suspects e would get into trouble if e tried to find out
19:45:07 <ehird> ais523: got a microphone?
19:45:13 <ehird> Cat /dev/mic or whatever to it, and scare people.
19:45:13 <ais523> ehird: actually, beeping is the internationally recognized 'someone is using your nick on IRC far too much again'
19:45:21 <ehird> Oh snarky, ais523.
19:45:28 <ais523> ehird: no idea, I don't have access to the server room
19:45:29 <ehird> ais523: It's habit from when I used bitlbee.
19:45:44 <ehird> ais523: It would only send messages to people that you prefixed, 'cause it can't tell who you want to talk to otherwise.
19:45:58 <ehird> (bitlbee = im-irc gateway - puts all your im users in an irc room.)
19:46:02 <ehird> (And lets you talk to them via irc)
19:46:35 <ais523> I normally don't mind so much, but I'm on the client which steals focus whenever you're nickpinged
19:48:23 <ehird> const char bin_dir[20] = "/usr/lib/nomic/bin/";
19:48:28 <ehird> that should be 20 right? Weird bug..
19:49:26 -!- AnMaster has joined.
19:49:35 <ais523> I make it 20, unless you snuck some evil Unicode in there again
19:49:50 <ais523> oh, btw, make sure your scripts don't have security holes in if people run a file with a newline in its name through them
19:49:57 <ais523> there are some weird security bugs that can create
19:51:04 <ehird> ais523: hm. I need to copy over argc and add an element in front.
19:51:20 <ehird> ais523: Hmm wait. i can exec &co. things with shebangs
19:51:21 <ais523> copying over argv would likely be more useful
19:51:25 <ehird> it can be nomic-root
19:51:41 <ehird> ais523: should nomic-bash be nomic-root
19:51:52 <ehird> #!/usr/lib/nomic/bin/nomic-root bash
19:51:54 <ehird> #!/usr/lib/nomic/bin/nomic-root ruby
19:52:18 <ehird> ais523: At this point I'm wishing for /usr/bin/nomic-root, damn long paths :-P
19:52:25 <ais523> so your scripts work like perlsuid, then? If they are run and the suid doesn't take, they rerun themselves as root
19:52:53 <ehird> ais523: nomic-root is just setuid'd root
19:52:57 <ehird> and exec()s anything in the right idr
19:53:01 <ais523> except that the rerun always happens here
19:53:08 <ais523> and it changes the shebang on the rerun
19:53:16 <ais523> hmm... actually, doing it like that won't work with Perl
19:53:20 <ais523> it'll be an infiniloop
19:55:49 <ehird> ais523: OK, I think I've written nomic-root
19:56:37 <ehird> ais523: thought of a better path than /usr/lib/nomic/bin?
19:56:46 <ehird> /usr/nomic/bin *would* work..
19:57:16 <ais523> ehird: put it in the right place, put a symlink from the wrong place
19:57:45 <ais523> it could even be /nomic/nomic-root if you really want to bend the filesystem rules (OFC, that should definitely be with a symlink)
19:57:52 <ehird> ais523: it's just that
19:57:56 <ehird> #!/usr/lib/nomic/bin/nomic-bash
19:57:58 <ehird> is basically acceptable
19:58:01 <ehird> #!/usr/lib/nomic/bin/nomic-root bash
19:58:03 <ehird> is getting ridiculous
19:58:10 <ehird> #!/usr/bin/env nomic-root bash
19:58:19 <ehird> since shebangs can only have one arg
19:59:38 <ais523> ehird: it's worse than that, actually, shebang args are really inconsistent between systems
19:59:50 <ais523> in some, the arg is cut off after a certain number of chars
20:00:07 <ais523> there's a really interesting discussion of it in the Perl manpages, perlrun I think
20:00:41 <ais523> Because many operating systems silently chop off kernel
20:00:43 <ais523> interpretation of the #! line after 32 characters, some
20:00:44 <ais523> switches may be passed in on the command line, and some may
20:00:46 <ais523> not; you could even get a "-" without its letter, if you're
20:01:11 <ais523> and the really strange thing about that was, when I C&Pd from the manpage, it put a multiline piece of text in the single-line text box
20:01:18 <ehird> is /usr/nomic/bin common?
20:01:20 <ais523> but I could scroll from one line to another with the mouse wheel
20:01:21 <ehird> /usr/APP/... that is
20:01:24 <ehird> I mean, I have /var/nomic
20:01:36 <ehird> ais523: _only_? Surely someone must have used it.
20:01:44 <ehird> ais523: I use /usr/local/app a lot when app is a big splurgey thing
20:01:54 <ais523> ehird: it's discouraged, and became unpopular
20:01:55 <ehird> surely someone uses it for /usr
20:02:03 <ehird> ais523: I hate FS structure.
20:02:10 <ais523> but it was so entrenched for X11 that nobody managed to remove it
20:02:20 <ehird> /apps/nomic/1.0/bin/nomic <-- ftw!
20:02:25 <ais523> the issue is basically if you do things like that, then finding shared objects becomes hard
20:02:27 <ehird> /apps/APP/VERSION/...
20:02:37 <ais523> ehird: that's how Windows does it
20:02:41 <ehird> ais523: well, not really
20:02:45 <ehird> windows does a retarded version of it
20:02:49 <ehird> and blends it in with its other brain damage
20:03:39 <ais523> oh, #!/nomic/nomic-root perl isn't an infiniloop after all
20:03:58 <ais523> but only because Perl specifically checks for the word perl on the shebang line to break such loops
20:05:07 <ehird> I don't _think_ you need anything else, realy.
20:05:14 <ehird> I was thinking libraries
20:05:16 <ehird> but they're system
20:05:40 <ehird> ais523: see that? That was me beating the shit out of FHS. :-P
20:05:56 <ais523> ehird: where are application binaries stored?
20:06:01 <ais523> and what does the path end up like
20:06:04 <ehird> <ehird> /apps/nomic/1.0/bin/nomic <-- ftw!
20:06:25 <ehird> ais523: well, I'm not sure you can do it
20:06:31 * ais523 thinks there should be multidimensional file-systems
20:06:33 <ehird> ais523: however, this is so radically different that shells would burn anyway
20:06:43 <ehird> here's some paths for you
20:06:45 <ais523> so that /bin/nomic and /nomic/bin mean the same things if the directories are set up properly
20:07:00 <ehird> /users/USER/docs vs /users/USER/data
20:07:04 <ais523> directories work more like tags on a file than a tree structure
20:07:06 <ehird> ais523: ^^^ end of dotfiles, there
20:07:09 <ehird> oh, /users/USER/conf too
20:07:14 <ais523> however, they still manage to be hierarchical anyway
20:07:31 <ais523> oh, and you're /still/ trying to recreate Windows filesystem structure
20:07:42 <ehird> ais523: yeah but windows gets it all wrong
20:07:48 <ehird> ais523: I'm taking more inspiration from OS X's
20:07:56 <ehird> /Applications, /System, /Users
20:10:33 <ehird> /usr/lib/nomic/bin unless you can give me a better path
20:13:18 <ehird> ais523: http://pastebin.ca/1024095
20:13:39 <ehird> ais523: Interestingly, you can do nomic-root nomic-root nomic-root nomic-root nomic-root nomic-root nomic-root
20:13:52 <ehird> Only when I fix argc
20:14:18 <ais523> /* bother the user a bit */
20:14:35 <ehird> ais523: execv and execvp - what's the diff.?
20:14:40 <ehird> int execv(const char *path, char *const argv[]);
20:14:40 <ehird> int execvp(const char *file, char *const argv[]);
20:14:44 <ehird> the manpages describe them together
20:14:46 <ais523> the params they take, I think
20:14:53 <ais523> execvp looks in your PATH
20:14:59 <ais523> execv doesn't, it takes an absolute pathname
20:15:05 <ehird> ais523: ah, then execvp is what I want
20:18:14 <ehird> Any ideas for a bin dir?
20:18:38 <ais523> I thought you had one already
20:18:43 <ehird> ais523: not really
20:18:57 <ais523> well, you have to have put the file somewhere
20:19:24 -!- Hiato has joined.
20:19:49 <ais523> ehird: why is my comment surprising?
20:19:59 <ehird> ais523: That was sarcasm.
20:20:09 <ehird> ais523: But actually I was thinking I could just kinda think about the file.
20:20:17 <ehird> Instead of, like, putting it somewhere.
20:20:23 <ais523> ehird: I didn't even realise a smiley could be sarcastic on its own
20:20:30 <ais523> although I was aware that they could indicate sarcasm
20:20:48 <ais523> and tautologies can be useful for pointing out the fact that they're true
20:21:55 <ais523> was that sarcastic too?
20:22:16 <ais523> or will we have to do :O :) from now on, where the second smiley indicates the first was sarcastic?
20:22:48 <ehird> ais523: that was just a 'OK, so back to the actual question?'
20:23:22 <ais523> ehird: this is getting as bad as Humpty Dumpty, where you had to ask em what all the words he used meant before you could understand eir sentences
20:23:39 <ais523> oh, the previous sentence was actually a HOMESPRING program, but it isn't particularly interesting
20:23:43 <ehird> ais523: Twas brillig in the slithy PATH, and the nomic-root outgrabe
20:23:46 <ehird> (Think I've got that right.)
20:24:18 <ais523> it was outgrabe in the original
20:24:28 <ais523> but in a parody, it should probably be outgrepped or something
20:24:51 <ais523> also, you've mixed up the start and end of the stanza
20:25:05 <ehird> ais523: I was just picking one I could easily mangle to this ituation.
20:25:23 <ehird> ehh, whatever you spell it
20:25:26 <ehird> (that was intentional)
20:25:38 <ais523> gnomes can be pretty fierce when they get angry
20:27:31 <ehird> ais523: okay, so, i'm thinking that maybe bash will be a little awkward for this?
20:27:48 <ais523> the nomic voting, judgement, etc.?
20:27:56 <ais523> maybe you should just copy the relevant code from envbot
20:28:02 <ehird> ais523: hahahahahahahhahahahah
20:28:17 <ehird> #esoteric memes: EsCo, envbot
20:32:45 <ais523> is that an #esoteric meme?
20:32:50 <ais523> I've never come across it before
20:32:57 <ais523> at least, not that I can remember
20:33:34 <ais523> <GregorR>CELLPHONEWRISTWATCH
20:36:57 <ehird> esco can create memes ... with its ook! interpreter!
20:37:14 <ais523> oh, I just remembered what esco was
20:38:34 <GregorR> Yeah, but I have a cell phone wristwatch 8-O
20:41:46 <ehird> ais523: do you think bash _would_ be good for this?
20:41:55 <ehird> if not, I guess perl, as you can do all the quick shell script stuff with it
20:42:04 <ehird> ais523: OK. It's just that it'll need to parse file formats.
20:42:08 <ehird> ais523: e.g. for the comments
20:42:19 <ehird> ais523: Like the comment file format
20:42:19 <ais523> and remember, you can call out from bash
20:42:22 <ais523> it doesn't have to be pure sh
20:42:23 <ehird> ais523: And yeah, but even so.
20:45:57 <ehird> ais523: Oh well, I'll just do sh. Which script should I write first?
20:46:33 <ehird> ais523: So people can do it manually as well as through the cronjob? Sounds risky.
20:46:52 <ais523> ehird: why would that allow people to do it manually?
20:46:56 <ais523> the cronjob has to run something
20:47:05 <ehird> ais523: I guess so.
20:47:08 <ais523> it needn't be executable by world
20:47:17 <ehird> ais523: Anyway, activation is just './proposal'
20:47:28 <ehird> also, that's the first time you've used :P
20:47:29 <ais523> yes, but vote-counting's needed
20:47:33 <ais523> to check if it should be activated
20:47:47 <ais523> and my run of smileys was a parody of our earlier conversation there, don't get used to it
20:48:27 <ehird> ais523: :P is a good smiley.
20:48:54 <ehird> I have, on occasion, resorted to XD. But that's normally after a real life fit of laughter where I'm having trouble breathing.
20:48:55 <oklopol> i like :DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDd
20:49:03 <ehird> It looks something like 'AASHAHDHHAHHAAHAHAHAHHASDGASDJHASGHASJ XD XD XD XD'
20:49:09 <ehird> oklopol: oh me too
20:49:11 <ehird> but that's just for the oko spirit
20:49:13 <ehird> :DDDDDDDDDDDDDDDDDDDDddddddddddd
20:49:18 <oklopol> also ::::::::::::::::::::::::::DDDDDDddddddDDDDDDDDDDDD does it for me
20:49:41 <oklopol> okokokokokokokokokokokokokoko
20:50:03 <ehird> oklopol: no, I am merely creating a tower of oko
20:50:13 <oklopol> are you doing it manually?
20:50:21 <ehird> up, backspacebackspace
20:50:32 * ais523 guessed that's how ehird was doing it
20:50:50 <ais523> grr... I was slightly too late
20:51:15 * oklopol hears lament sharpening his kicking knife
20:51:34 <ehird> ais523: I'm considering just doing /usr/bin/nomic-X
20:51:41 <ehird> ais523: and /usr/lib/nomic/bin/activate only for the internal activation
20:51:46 -!- Deformative has joined.
20:51:49 <ehird> ais523: that's debians policy
20:51:58 <ehird> ais523: although *activate.sh* would be more strict
20:52:11 <ehird> ais523: Also, /bin/bash instead of nomic-root.
20:52:18 <ehird> Since the cronjob will be root.
20:56:17 -!- Hiato has left (?).
21:08:33 -!- SimonRC has quit (Read error: 113 (No route to host)).
21:09:55 <ehird> ais523: how do I check if i'm root in a shell script?
21:10:48 -!- Iskr has quit ("Leaving").
21:11:18 <ais523> e.g. [ `whoami` -eq root ]
21:11:39 -!- SimonRC has joined.
21:21:00 -!- sebbu2 has quit (No route to host).
21:45:54 -!- sebbu has joined.
22:06:00 -!- Slereah has joined.
22:20:47 -!- oerjan has joined.
22:35:23 * SimonRC laughs so much at this one he starts dribbling: http://hownottorunacomic.comicgenesis.com/d/19940141.html
22:38:20 <Slereah> But maybe it's because I just saw the dongcopter.
22:38:22 <Slereah> http://minx.cc/?post=262888
22:38:35 <oerjan> i suppose the comments being black on dark grey is part of the joke too...
22:39:24 <Slereah> It's hard to follow a dongcopter as a joke.
22:43:03 <SimonRC> it goes straight from the 49th Jan '94 to 1st Mar '94
22:43:11 <SimonRC> what ever happened to Feb '94
22:44:08 <ehird> SimonRC: 49th jan?
22:44:19 <ehird> SimonRC: ITYM: it's the 49th comic posted in janruary
22:44:39 <ais523> isn't it still September 1996 by some estimates?
22:45:24 <SimonRC> and that ended in 2007 when AOL dropped usenet access
22:45:30 -!- Sgeo has joined.
22:46:03 <oerjan> 1993, says http://en.wikipedia.org/wiki/Eternal_September
22:48:57 <ehird> SimonRC: The newbies are still here.
22:49:03 <ehird> Eternal September will be eternal for the internet.
22:49:05 <ehird> There's no goin' back.
23:01:26 -!- BMeph has quit (Read error: 104 (Connection reset by peer)).
23:24:27 -!- jix has quit ("CommandQ").
23:28:57 -!- ais523 has quit (""").
23:48:10 -!- sebbu has quit (Client Quit).
23:48:32 <SimonRC> I don't notice any AOL types around on some of my favourite groups.
23:53:02 -!- Corun has joined.
00:18:22 <lament> ....freenode, for example
00:18:30 <lament> if you want an extreme example, join #lisp
00:25:43 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
00:26:54 -!- ehird has joined.
01:06:42 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:06:42 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
01:48:16 <RodgerTheGreat> bsmntbombdood: if you think the internet isn't elitist I'd really like to know what sites you frequent.
01:49:43 <ehird> the internet isn't elitist
01:49:52 <ehird> by nature it's an unelitist system, and an elitist-punishing system
01:49:58 <ehird> a lot of the web's users are elitist though
01:54:28 <ehird> yes, yahoo answers has a lot of crap on it
01:54:36 <ehird> bsmntbombdood: elitism is not correlated with intelligence
01:55:43 <bsmntbombdood> to be elitist you have to know something your inferiors don't
01:55:57 <ehird> bsmntbombdood: no, you don't.
01:57:10 -!- augur has joined.
01:57:31 <RodgerTheGreat> you just have to *think* you know something your inferiors don't. Or think it's better not to know something your inferiors know, etc, etc
01:57:46 <ehird> RodgerTheGreat: exactly
01:58:01 <ehird> at a stretch you can even _delude_ yourself into thinking you know something that your inferiors don't
01:58:05 <ehird> elitism is very simple
01:58:12 <ehird> and works for maybe a little bit
01:58:37 <augur> elitism is very complicated and only the right people can manage it forever
01:58:46 <augur> anyone who can't isn't worthy of it.
01:59:19 <ehird> elitism isn't soemthing to strive for
01:59:30 <ehird> wow, the x.org guys actually own x.org
01:59:35 <ehird> a single letter domain? sheesh
01:59:46 <ehird> bsmntbombdood and oklopol's domain: y.org
02:00:07 <RodgerTheGreat> now *that* is whatever the internet equivalent of "street cred" would be. "Domain Cred"?
02:00:42 <RodgerTheGreat> I'd go for y!.org if it was possible, because you could read it as "why not"
02:01:17 <ehird> bsmntbombdood: my reverals
02:01:19 <ehird> let me show you them
02:02:23 <ehird> bsmntbombdood: you could leverage the semantic web 3.0 platform to build an orgy arrangement site
02:02:40 <ehird> http://y.org/orgies/2008/12/1
02:02:48 <ehird> all the orgies taking place on the 1st of december!
02:03:10 <ehird> bsmntbombdood: And the business model?!! Everyone just ejaculates money.
02:03:17 <ehird> you'll thank me when you're rich
02:06:09 -!- bsmntbombdood has quit (Remote closed the connection).
02:14:48 -!- ehird has quit (Remote closed the connection).
02:50:33 -!- hornyguy has joined.
02:50:41 -!- hornyguy has quit (Read error: 104 (Connection reset by peer)).
02:52:37 -!- bsmntbombdood has joined.
03:58:15 -!- Corun has quit ("Leaving").
05:06:13 -!- Judofyr_ has joined.
05:20:55 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
05:40:29 -!- oerjan has quit ("leaving").
06:33:57 -!- Sgeo has quit ("Ex-Chat").
07:33:37 <augur> its too quiet in here
07:33:41 <augur> talk, will you! yalk!
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:03:25 -!- Iskr has joined.
09:25:02 -!- augur has left (?).
09:31:13 -!- GreaseMonkey has joined.
09:59:53 -!- timotiis has joined.
10:08:40 -!- GreaseMonkey has quit (Remote closed the connection).
12:24:00 -!- timotiis has quit (Read error: 110 (Connection timed out)).
14:00:11 -!- RedDak has joined.
14:14:46 -!- BMeph has joined.
14:45:26 -!- Quendus has joined.
14:52:59 -!- RedDak has quit (Remote closed the connection).
15:37:23 -!- Slereah_ has joined.
16:05:43 -!- ehird has joined.
16:06:23 -!- ehird has set topic: international (hub (for esoteric) programming) languages.
16:08:27 -!- augur has joined.
16:10:03 -!- RedDak has joined.
16:16:33 <ehird> augur: you're new aren't you?
16:16:53 -!- ehird has set topic: international (hub (for esoteric) programming) languages ^D http://tunes.org/~nef/logs/esoteric ^D^D.
16:19:38 <augur> i mean, i was born 22 years ago so i'm not THAT new.
16:20:16 -!- sebbu has joined.
16:20:32 <ehird> augur: i may have meant to #esoteric
16:20:52 <augur> yeah ive been coming here for maybe a week now at most
16:21:00 <augur> probably more like three or four days
16:22:23 <augur> why do you ask? :o
16:23:00 <ehird> augur: because everyone new here must sacrifice a goat
16:23:14 <ehird> if you're a pacifist.
16:23:22 <augur> can i do sheep instead? we can make gyro from them afterwards.
16:23:58 <ehird> augur: no. Ligers _may_ be acceptable, if you sacrifice 2i
16:24:38 <augur> ::viciously slaughters 5 goats::
16:24:52 <augur> ::with my bare hands and teeth::
16:25:06 <ehird> augur: ok you have shown your alliance and loyalty
16:25:13 <ehird> you don't need to kill them for re- oh shit.
16:25:22 <ehird> shit, it was a joke okay!! i didn't want you to actually kill them!!
16:25:27 <ehird> look what you've done now.
16:25:31 <Slereah_> Ligers are specially bred for magic.
16:25:42 <Slereah_> Napoleon Dynamite teached me as much.
16:25:42 <augur> RAR! ::slaughters slereah too::
16:26:24 <ehird> augur is going on a murderous rampage.
16:26:32 <ehird> Anyone in here a jew? We could use some magical jew powers right now to sort this out.
16:26:35 <augur> no just the goats and slereah.
16:31:43 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
16:32:04 -!- Slereah_ has joined.
16:43:13 <ehird> Slereah_: Slereah_ Slereah_ Slereah_ sebbu Slereah_
18:09:27 -!- RedDak has quit (Remote closed the connection).
18:16:11 <augur> anyone know of a language that uses human-language–like quantifiers?
18:16:43 * pikhq has a diploma. w00ts.
18:18:38 <pikhq> ... A high school diploma. . .
18:19:17 <ehird> pikhq has a diploma in HIGH SCHOOL
18:19:21 <ehird> he is licensed to practice HIGH SCHOOL
18:19:29 <ehird> in any designated HIGH SCHOOL buildingship
18:19:44 <ehird> HIGH SCHOOL(TM) is a registered copyright and may only be spelled in UPPER CASE LETTERS
18:19:49 <ehird> all lefts reserved
18:27:50 <ehird> pikhq: if you fail to practice HIGH SCHOOL within 10 days of getting your diploma in HIGH SCHOOL, your HIGH SCHOOL practicing rights will be revoked
18:27:54 <ehird> please be aware of this
18:43:19 -!- helios24 has joined.
18:44:40 -!- olsner has joined.
19:00:17 -!- _13121_ has joined.
19:05:41 -!- _13121_ has left (?).
19:11:20 -!- augur_ has joined.
19:14:15 -!- augur_ has quit (Client Quit).
19:14:19 -!- augur_ has joined.
19:16:20 -!- augur_ has quit (Remote closed the connection).
19:16:58 -!- augur_ has joined.
19:22:04 -!- timotiis has joined.
19:22:52 -!- Sgeo has joined.
19:27:04 -!- augur has quit (Read error: 110 (Connection timed out)).
19:32:36 -!- kar8nga has joined.
20:06:09 -!- kar8nga has left (?).
20:54:33 -!- B-rat has joined.
21:02:40 -!- Judofyr_ has changed nick to Judofyr.
21:26:09 -!- helios24 has quit ("Leaving").
21:31:09 -!- kar8nga has joined.
21:48:53 <GregorR> Haw haw haw l'Jesus-sandwich-bored-wearing guy is at l'park-blocks, telling people to shut up if they actually argue with him at all :P
21:49:06 <GregorR> s/bored/board/ (well, both really)
21:50:43 <lament> was that an attempt at French?
21:51:23 <GregorR> It was really just an attempt at adding "l'" to the beginning of arbitrary noun phrases.
21:53:56 <GregorR> WTF? Somebody tried to hand the Jesus guy some kind of tract :P
21:55:01 <oklopol> 03:59… ehird: bsmntbombdood and oklopol's domain: y.org
21:55:01 <oklopol> 03:59… bsmntbombdood: why?
21:55:40 <oklopol> well, might've implied we're people who ask "why" as lot
21:56:30 <GregorR> I want to go be a peacekeeper in Somalia, so that when the government is stable enough to have a top-level domain name, I can snag libc.so.
21:57:43 <GregorR> "What's your web site?" "libc.so" "..."
21:57:51 <ehird> GregorR: http colon slash slash slash dot dot org
21:58:15 <ehird> "As Somalia has no internationally recognized government, this domain is not currently used. We simply have parked this top level domain till an official government is implemented." -- nic.so
21:58:26 <ehird> obviously they're trying to write it in c
21:58:28 <GregorR> ehird: I know - I've actually gone through the process of figuring that one out :P
21:58:47 <GregorR> Ooooh, does somebody own http-colon-slash-slash-slash-dot.org?
21:59:58 -!- augur_ has quit.
22:00:04 <oklopol> augur: anyone know of a language that uses human-language–like quantifiers? <<< what do ya mean?
22:07:14 <ehird> GregorR: you're a domain buying machine. can I just randomly ask you to buy my domains if I do awesome things in return?
22:07:38 <GregorR> So long as they're awesome.
22:08:10 <GregorR> And preferably awesome-and-related-to-the-domain.
22:08:18 <GregorR> And not necessarily in-return per se.
22:08:38 <ehird> GregorR: OK then, find a TLD with no nic.
22:08:47 <ehird> and get taken to a court of law
22:08:54 <ehird> 'cause its probably illegal
22:09:07 <GregorR> Yeah, I'm gonna file that one in the "no" column
22:09:19 <ehird> GregorR: Booooring
22:17:44 -!- Iskr has quit ("Leaving").
22:19:28 <oklopol> the thingie that gives you like domains
22:21:15 <GregorR> If the TLD actually has /no/ nic, I can't get nic.tld - but if it has a nic under some other domain, then it's possible.
22:21:25 -!- kar8nga has left (?).
22:21:28 <GregorR> However, the very nic I bought it from could revoke it, so they wouldn't take me to court.
22:22:42 <ehird> GregorR: it'd be funny to find a nic running at companyname.tld that lets you reg nic.tld though
22:36:32 <ehird> bsmntbombdood: MY WORLD HAS BEEN SHAKEN BY ITS ROOT
22:41:02 -!- BMeph has quit ("Time for me to go home").
00:03:49 -!- fizzie has quit (leguin.freenode.net irc.freenode.net).
00:05:32 -!- fizzie has joined.
00:30:14 -!- fizzie has quit (leguin.freenode.net irc.freenode.net).
00:35:19 -!- ihope has joined.
00:35:19 -!- fizzie has joined.
00:35:21 -!- ihope has quit ("Reconnecting…").
00:35:32 -!- ihope has joined.
00:35:51 * ihope kicks a small netsplit
00:45:24 <ehird> GregorR: Is it snuggly
00:46:17 <GregorR> If by "snuggly", you mean "slow", then yes :P
00:46:40 <ehird> GregorR: What would you say to an implementation that consists of 5 tiers.
00:46:49 <ehird> The first tier is ye-olde optimized Forth-alike
00:46:52 <ehird> then PSL on top of that
00:46:58 <ehird> then Ploftermediate on top of that
00:47:02 <ehird> then the magical layer
00:47:52 <GregorR> I see no reason why the PSL has to be compiled to something Forth-alike ...
00:48:10 <ehird> GregorR: Because i'd micro-optimize it to silly.
00:48:47 <GregorR> Tell yah what - write a PSL interpreter however you want, and if you succeed (and I have time), I'll write the parser framework for it.
00:49:13 <ehird> GregorR: And make that the official Plof 3 if it is 100% compatible, easy to maintain, and fast?
00:49:36 <GregorR> It doesn't even have to be 100% compatible if the changes are improvements :P
00:50:29 <ehird> GregorR: I could replace PSL with a forth-alike. :-P
00:51:12 <GregorR> I don't consider that change an improvement >_>
00:54:05 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:54:22 <ehird> GregorR: I would make it snuggly
00:55:12 <GregorR> Besides, PSL is a Forth-alike ... only with first-class procedures and non-reassignable words and such X-P
00:55:39 <ehird> GregorR: Oh mine would have stuff like that.
00:55:43 <ehird> But it's be sluffy.
00:56:03 <GregorR> Is PSL so offensive to you? ^^
00:58:38 <ehird> GregorR: PSL is probably hideously inefficient for the plof that runs on opt.
00:59:04 <GregorR> I did create PSL specifically for Plof ...
00:59:53 <ehird> GregorR: But if it's so slow you probably did something wrong.
01:00:29 <GregorR> It's a crummy GC and a simple switch-based interpreter.
01:00:45 <GregorR> Most of the slowness is from the GC, not the interpreter anyway.
01:02:58 <ehird> GregorR: I bet it's still psl's fault
01:03:07 <ehird> Oh, and I'll implement AWESOMEGC
01:03:10 <ehird> which I will invent as I go
01:03:11 <ehird> and will be awesome
01:03:49 <GregorR> I'm not so stuck to PSL that I'm against the concept of replacing it, I just don't see why your proposed replacement is helpful :P
01:04:50 <ehird> oklopol: exactly, you get it
01:05:47 <oklopol> when you have a programming project
01:05:53 <oklopol> very simple, one night job
01:06:04 <oklopol> and then, someone joins the group with absolutely no skill
01:06:20 <oklopol> and starts asking me help when trying to figure out the difference between two dates.
01:06:49 <oklopol> GregorR: i'm not actually sure what i should answer to something like that, i'm rarely the *receiving* end
01:07:16 <oklopol> was quite close to murder when i saw his first attempt at it.
01:07:25 <oklopol> i almost wanna paste it here...
01:07:50 <oklopol> http://www.vjn.fi/pb/p545635166.txt no names
01:08:05 <oklopol> but really, java code from a guy with about two years of university
01:08:12 <oklopol> real advertisement for the uni..
01:09:01 <oklopol> it calculates how much a movie is over its due
01:09:19 <oklopol> the day you're supposed to return it
01:10:04 <GregorR> It appears to be wildly thrashing a database at least.
01:10:21 <ehird> oklopol: you know the real problem?
01:10:33 <oklopol> String kys3 = "UPDATE sakkoja set sakkoja=b;" <<< i especially like this
01:10:34 <ehird> oklopol: your database fields are in finnish
01:10:47 <oklopol> i don't see that as a problem
01:10:57 <oklopol> anyway, b is not even set to any real value here
01:11:04 <ehird> oklopol: Kanta is a pretty amusing way to spell SQL, though.
01:11:05 <oklopol> and it's used inside the string :)
01:11:30 <oklopol> well, tietokanta = database, kanta just means the same
01:11:38 * GregorR wonders why Finnish has such -- ahh, that explains it.
01:11:59 <oklopol> tieto = data, sounds quite similar actually, although i'm not sure there's a link
01:13:16 <oklopol> heh, a separate word for a database would be quite weird
01:13:29 <oklopol> anyway, in my opinion there's no reason to name things at all
01:13:47 <oklopol> if someone can't remember the numbers, they suck, not my problem!
01:14:04 <oklopol> anyways, i'll be doing some sleeping now
01:14:08 <ehird> 'SQL' is a pretty good name for something that runs sql
01:14:24 <oklopol> what would you change to sql there?
01:14:31 <ehird> oklopol: Kanta->SQL
01:14:44 <oklopol> SQL would be a weird name for the database
01:15:52 <oklopol> anyway, 1) if it had been named by me, it'd be in english, but it's named by the lecturer 2) sql would suck as the name 3) your mother
01:16:18 <ehird> 4) oklopol's mothr
01:17:26 <dbc> Trying to decide whether to write a faster factorial program in brainfuck. It shouldn't be hard, but I already have a long brainfuck to-do list that I'm putting off.
01:17:34 <ehird> dbc: a brainfuck todo list
01:19:07 <ehird> dbc: how long is it?
01:19:14 <ehird> and does it involve 'write an OS'?
01:19:28 <ehird> something about posix^W^W^Winsert a meme here
01:19:58 <GregorR> (Yeah yeah, I know ^W is word :P
01:20:31 <Sgeo> "something about PSOX" is a meme now?
01:20:38 <Sgeo> (I have PSOX on highlight, btw)
01:20:57 <GregorR> PSOX Awesome, I'll prefix everything I say with "PSOX" from now on.
01:21:22 <dbc> I have -play winning tictactoe, -play guess-a-number, -rethink the start of dbfi, -rewrite a subset of BF-BASIC to produce concise code so Lost Kingdom to fit on a floppy again, -fast unlimited-precision e generator...
01:22:01 <dbc> -99-bottles analogue starting with "15 men on a dead man's chest" because I prefer rum to beer...
01:22:24 <Sgeo> Also, I believe Lost Kingdom has junk like >< and <> and -+ and +- and ]..[
01:22:25 <dbc> dbfi is my brainfuck interpreter in brainfuck.
01:22:48 <GregorR> "15 men on a dead man's chest" ... rum slogan, or necrophilic gay porn?
01:22:48 <Sgeo> Just get rid of the junk recursively, and how much smaller would Lost Kingdom get?
01:23:12 <dbc> Sgeo I think I tried it and I think it doesn't fit on a floppy.
01:23:40 <dbc> Anyway, rewriting BF-BASIC would save a lot more code.
01:24:39 <dbc> Gregor no reason it has to be "or".
01:24:53 <ihope> GregorR: I think you're attributing to much meaning to the word "on".
01:26:06 <ehird> dbc: what is BF-BASIC written in?
01:26:09 <dbc> Also I've been meaning to set up a new site starting with a copy of Panu's archive and collecting whatever else I can think of.
01:26:38 <dbc> ehird I think it's in Java but I think I'd probably use bison and C.
01:26:58 <ehird> dbc: Masochist :-)
01:27:01 <ehird> Oh wait, you code in BF.
01:28:24 <dbc> The other thing is I try to keep standalone programs under 1k. Doing e or tictactoe in that space will be hard.
01:32:12 <dbc> (sadist actually) :)
01:37:41 <ehird> dbc: You could invent the etic language.
01:57:10 -!- ehird has quit (Remote closed the connection).
03:41:25 -!- _13121_ has joined.
03:42:58 -!- _13121_ has quit (Client Quit).
04:04:41 -!- fizzie has quit (leguin.freenode.net irc.freenode.net).
04:04:41 -!- lifthrasiir has quit (leguin.freenode.net irc.freenode.net).
04:04:42 -!- ihope has quit (leguin.freenode.net irc.freenode.net).
04:04:42 -!- B-rat has quit (leguin.freenode.net irc.freenode.net).
04:04:44 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
04:04:45 -!- RodgerTheGreat has quit (leguin.freenode.net irc.freenode.net).
04:05:00 -!- ihope has joined.
04:05:00 -!- RodgerTheGreat has joined.
04:05:00 -!- cmeme has joined.
04:05:00 -!- B-rat has joined.
04:05:00 -!- fizzie has joined.
04:07:45 -!- ihope has quit (leguin.freenode.net irc.freenode.net).
04:07:45 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
04:07:45 -!- RodgerTheGreat has quit (leguin.freenode.net irc.freenode.net).
04:07:45 -!- B-rat has quit (leguin.freenode.net irc.freenode.net).
04:07:46 -!- fizzie has quit (leguin.freenode.net irc.freenode.net).
04:12:19 -!- RodgerTheGreat has joined.
04:29:39 -!- fizzie has joined.
05:28:08 -!- ihope has joined.
05:28:08 -!- cmeme has joined.
05:28:18 -!- lifthrasiir has joined.
05:44:25 -!- B-rat has joined.
05:53:06 -!- lifthrasiir has quit (leguin.freenode.net irc.freenode.net).
05:53:11 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
05:53:11 -!- ihope has quit (leguin.freenode.net irc.freenode.net).
05:53:35 -!- lifthrasiir has joined.
05:53:35 -!- ihope has joined.
05:53:35 -!- cmeme has joined.
05:54:19 -!- ben has joined.
05:55:34 -!- ben has changed nick to GreaseMonkey.
05:56:54 -!- GreaseMonkey has quit (Remote closed the connection).
06:28:48 -!- GreaseMonkey has joined.
06:38:55 -!- fizzie has quit (leguin.freenode.net irc.freenode.net).
06:46:56 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
06:56:35 -!- fizzie has joined.
06:58:11 -!- lifthrasiir has quit (leguin.freenode.net irc.freenode.net).
06:58:12 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
06:58:12 -!- ihope has quit (leguin.freenode.net irc.freenode.net).
06:58:56 -!- ihope has joined.
06:58:56 -!- cmeme has joined.
06:59:10 -!- lifthrasiir has joined.
07:38:09 -!- fizzie has quit (leguin.freenode.net irc.freenode.net).
07:45:36 -!- fizzie has joined.
07:49:32 -!- GreaseMonkey has quit (Remote closed the connection).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:04:19 -!- Sgeo has quit (Remote closed the connection).
08:25:38 -!- kar8nga has joined.
08:41:32 -!- olsner has quit ("Leaving").
08:51:32 -!- GreaseMonkey has joined.
09:22:16 -!- Iskr has joined.
09:56:59 -!- Judofyr has quit.
09:58:25 -!- Judofyr has joined.
10:28:45 -!- GreaseMonkey has quit ("Unisex.").
11:03:30 -!- kar8nga has left (?).
11:11:28 -!- timotiis has joined.
11:28:42 -!- Slereah_ has joined.
11:29:53 <Slereah_> I am thinking, should the link to the friends of brainfuck mailing list be erased?
11:45:25 <Slereah_> A mailing list which has not been active for years
11:45:42 <Slereah_> But still on the community portal of the esowiki
11:46:00 <Slereah_> Also ##brainfuck, on that matter.
11:54:49 <AnMaster> well brainfuck has been so analyzed and worked on that it is not very interesting any more. I mean, you can't make a more optimizing compiler for it really. the language is done, finished
11:56:28 <Slereah_> All that remains to be done is the actual Brainfuck CPU.
11:56:32 <AnMaster> sure it is useful still, implementing a interpreter for it in a new language, to prove it is "brainfuck-complete"
11:56:56 <AnMaster> well I think someone did that? or maybe it was a interpreter on a PIC or something like that
11:57:53 <Slereah_> There's schematics. And a version with like less than ten bytes of memory
11:58:38 <Slereah_> But no good old CPU to do sum BF on it
11:59:28 <AnMaster> programmable hardware, uses vhdl if I remember correctly?
12:02:02 <Slereah_> Why would you use a programmable hardware for Brainfuck?
12:02:23 <AnMaster> Slereah_, well I mean make such a hardware that can execute bf
12:03:36 <AnMaster> Slereah_, it should be a lot cheaper than constructing an actual cpu for it
12:04:13 <AnMaster> because constructing a single special made cpu would cost a LOT of money
12:04:50 <Slereah_> And using any other language would be more efficient.
12:07:55 <Slereah_> Changing the symbol set doesn't do much!
12:08:41 <AnMaster> reduced brainfuck, you can remove - for example
12:09:23 <Slereah_> But that's not really interesting.
12:12:08 <Slereah_> Maybe, though it is already quite popular.
12:12:23 <Slereah_> It's something like Brainfuck-Befunge-INTERCAL
12:12:41 <Slereah_> But Brainfuck hogs all the spotlight.
12:14:18 <AnMaster> Slereah_, make me a befunge98 *compiler*
12:14:49 <AnMaster> what on earth are you doing here then? ;P
12:15:23 <Slereah_> Since they are awesome and all.
12:15:35 <AnMaster> well if you made a language it is rather easier
12:15:50 <AnMaster> because it will match how you think, and you will know all the details
12:17:49 <oklopol> necrophilic gay orgy does sound like a nice project
12:20:07 <oklopol> 13:55… AnMaster: sure it is useful still, implementing a interpreter for it in a new language, to prove it is "brainfuck-complete" <<< once again, to split hairs, this doesn't necessarily prove even brainfuck-completeness
12:20:36 <oklopol> also, to split hairs, you can always make a better compiler, because you can never make a perfect one
12:21:20 <oklopol> boolfuck is on booleans, changes the way you program quite a bit, actually
12:21:34 <oklopol> because in brainfuck, you usually don't have to care about carries
12:21:50 <oklopol> and get O(n) operations, without bignums, but easier to program
12:23:44 <oklopol> i want a bitxtreme computer...
12:37:59 -!- timotiis has quit (Read error: 110 (Connection timed out)).
13:28:32 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
13:56:15 -!- kar8nga has joined.
14:07:43 -!- BMeph has joined.
14:37:09 -!- Slereah_ has joined.
14:37:28 <Slereah_> oklopol : How does a BF interpreter not prove BFCness?
14:37:49 <Slereah_> also, couldn't you make a bitxtreme computer with like two marbles and four cups?
14:46:18 -!- jix has joined.
14:54:13 -!- RedDak has joined.
14:57:53 <oklopol> Slereah_: it only proves BFCness if you can also execute arbitrary bf programs within it.
14:58:17 <oklopol> a language where you can make an interpreter, but not use it, it not bfc
14:58:36 <oklopol> it's *compilation* from bf into a language that proves bfcness
14:58:46 <oklopol> and i guess you could make bitxtreme like that
15:00:14 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
15:00:34 -!- Slereah_ has joined.
15:09:37 <Slereah_> Wouldn't an interpreter be able to do an arbitrary BF program by definition?
15:11:22 -!- BMeph has quit (Remote closed the connection).
15:12:45 -!- BMeph has joined.
15:24:32 <pikhq> Slereah_: An actual interpreter, sure.
15:26:23 <Slereah_> I was thinking of making a fake one, out of bamboo and coconuts.
15:26:56 * pikhq notes that Turing completeness does not take a lot of stuff. . .
15:27:18 <pikhq> Hell, a man and an abacus is Turing complete with the right instructions.
15:27:26 <pikhq> (and an infinitely large abacus)
15:27:52 <pikhq> (and a man with an infinite life span)
15:29:22 <pikhq> That's fairly finite, actually.
15:30:03 <pikhq> Autism != mental retardation.
15:31:00 <Slereah_> It is if you're speaking internet vernacular.
15:32:13 <pikhq> Which you, clearly, are not.
15:32:41 <pikhq> The punctuation, capitalisation, and proper spelling give it away.
15:32:49 <pikhq> You're speaking English, not Internet.
15:34:12 <pikhq> *Now* you're speaking Internets.
15:34:30 <dbc> For a brainfuck interpreter in language X to prove language X Turing-complete, you don't need that interpreter to be able to execute any brainfuck program. It's enough if it can execute ONE brainfuck program which is itself an interpreter for a Turing-complete language, on any input.
15:35:47 <Slereah_> You could make a BF interpreter that only accepts a BF interpreter.
15:35:50 <Slereah_> that only accepts a BF interpreter.
15:35:51 <Slereah_> that only accepts a BF interpreter.
15:35:52 <Slereah_> that only accepts a BF interpreter.
15:35:52 <Slereah_> that only accepts a BF interpreter.
15:35:53 <Slereah_> that only accepts a BF interpreter.
15:35:53 <Slereah_> that only accepts a BF interpreter.
15:35:54 <Slereah_> that only accepts a BF interpreter.
15:35:55 <Slereah_> that only accepts a BF interpreter.
15:35:57 <Slereah_> that only accepts a BF interpreter.
15:36:26 <Slereah_> WHICH CAN ACCEPTS ANY INPUT THEN
15:37:36 <pikhq> You know, some days I get a kick out of Trusted Computing.
15:37:56 <pikhq> Trusted Computing: Making your computer a non-Turing machine since '98.
15:38:09 <dbc> But that would be MORE work. Whereas I can easily imagine it being easier, in some language X, to write a brainfuck interpreter that only accepts brainfuck programs up to, say, 256 commands long.
15:38:47 <Slereah_> What, like a bitxtreme BF interpreter?
15:38:57 <Slereah_> Although that would be 1 command long.
16:01:15 <oklopol> hehe, that guy i mentioned last night, the one with the funny failure of a java code, he's insisting on making the function to return a loaned video in the database to *prompt* the movie a certain customer wants to return
16:01:36 <oklopol> i mean, the fucking first thing they teach at the university is never to mix interface and functionality
16:01:41 <oklopol> especially when there's no need to
16:02:28 <oklopol> but he has a fucking loop there in case the customer wants to return many videos, and a fucking SCANNER class he insisted on making specifically for the fucking mothersinking function
16:03:16 <oklopol> mostly i'm angry because i simply cannot get him to understand what's wrong with it
16:03:41 <Slereah_> Hell, I can't even understand what you're talking about.
16:03:50 <Slereah_> You'll soon turn into the incredible hulk!
16:04:06 <oklopol> instead of return_video(String customer, String movie_to_return)
16:04:16 <oklopol> return_video(String customer)
16:04:17 <Slereah_> First thing they taught us here was Newtonian mechanics!
16:04:24 <oklopol> and prompts the movie to return inside the function
16:06:43 <oklopol> i mean, why mix the IO monad in a simple database operation
16:06:53 <oklopol> i guess you'd do that with the IO monad too
16:08:15 <oklopol> Slereah_: no! they won't bite
16:09:01 <Slereah_> That's what you said last time!
16:09:02 <oklopol> Slereah_: an interpreter will be able to do anything, but if you cannot give it any program to run, it can't run anything...
16:09:40 <Slereah_> Do you have a particular example in min,d?
16:10:05 <oklopol> dbc: For a brainfuck interpreter in language X to prove language X Turing-complete, you don't need that interpreter to be able to execute any brainfuck program. It's enough if it can execute ONE brainfuck program which is itself an interpreter for a Turing-complete language, on any input. <<< once again not enough if you cannot actually give it any program to run
16:10:59 <oklopol> have a language X with two instructions
16:11:16 <oklopol> the first on adds a "+" on the stack
16:11:30 <oklopol> the second one is the "b" operation
16:11:37 <oklopol> it runs the contents of the stack as a bf program
16:12:08 <oklopol> but... the language is not tc, you *cannot perform arbitrary computation*
16:12:56 <Slereah_> Isn't that a little convoluted as an example?
16:13:20 <Slereah_> Well, like, in relation with a real esolang.
16:13:33 <Slereah_> which was I suppose what was refered to.
16:13:40 <oklopol> in a real esolang there might be a more subtle limitation on what input you can give your interp from within the language.
16:13:46 <oklopol> but there might be a limit
16:13:58 <oklopol> the point is, making a bf interpreter is not actually a proof.
16:14:20 <Slereah_> Only if you have a nitpicky definition of an interpreter :o
16:14:53 <oklopol> what the fuck do you mean?
16:15:10 <oklopol> (is everyone slow today, or just me?)
16:15:31 <oklopol> Slereah_: in this case you can only create +'s on the stack to run
16:15:35 <Slereah_> Well, interpreters usually don't come as buttons.
16:15:48 <oklopol> can you elaborate on that?
16:16:01 <Slereah_> When you write one, you actually work to make it possible for it to work
16:16:31 <oklopol> you can make a perfect interpreter in a language where there is no way to actually use it.
16:16:56 <oklopol> you can even test it with, say, lost kingdom, in case it supports that subset
16:17:09 <oklopol> but it might fail on programs that are slightly different
16:17:44 <oklopol> and in case no bf program that is tc itself and can give itself arbitrary input isn't one of the working programs
16:17:52 <oklopol> you don't have bfness proved
16:18:43 <oklopol> this is a bit hard to explain, because... i don't think there's anything to explain
16:19:52 <oklopol> isn't it clear it's not tc if you can't actually run arbitrary computation? the fact you can make a bf interp that runs any bf program doesn't prove anything unless you also prove you can give it arbitrary input.
16:19:57 <oklopol> if you can give it arbitrary input
16:20:07 <oklopol> you have compiled your language to bf.
16:20:11 <oklopol> congratulations, that's proof
16:20:14 <oklopol> but just the interp is not
16:20:18 <Slereah_> Problem is, your example is a little artificial.
16:21:01 <oklopol> i feel you're mixing intuition into this...
16:21:36 <oklopol> in my language's case you can trivially see you cannot make an interesting program on the stack
16:21:58 <oklopol> but let's say you can create any bf program on the stack but it has to have as many +'s as it has -'s
16:22:21 <oklopol> but, in a real case the constraint might not be that clear
16:22:38 <oklopol> and... well, in case it was, once again, you could just trivially compile
16:23:12 <oklopol> the point is the interp is not the proof, but the fact you can usually do compilation into input for the bf interp
16:23:50 <oklopol> but really, i was just splitting hairs, you all know this, just perhaps not that... explicitly.
16:24:59 <oklopol> and dbc's point was, for some constraints on the bf program on the stack you can create a non-restricted bf interp within it, with arbitrary input.
16:25:28 <oklopol> or, you can make a bf program with some lesser constraint that allows you to make another level that's again tc
16:25:54 -!- ais523 has joined.
16:25:57 <oklopol> but for some constraints, like my "+"-only, it's clear with even infinite layers it's impossible to get arbitrary computation
16:26:46 <oklopol> Slereah_: do you just see the point or actually feel it?
16:27:59 <ais523> oklopol: I only saw the second half of the sentence, so that makes it kind-of hard for me to get the point
16:28:05 <Slereah_> But it is hard to think of a concrete example
16:28:19 <Slereah_> Because well, there aren't that many languages that aren't TC or BFC.
16:28:20 <oklopol> ais523: i've been monologuing for a while
16:28:37 <ais523> well, in that case I missed most of the monologue
16:28:38 <oklopol> Slereah_: why would you need a more concrete example?
16:28:44 <oklopol> ais523: yes, about 50 lines
16:28:55 <oklopol> i suggest logs, because i want your approval
16:29:20 <Slereah_> oklopol : Because well, otherwise, it borders on the theoretical.
16:29:22 <ais523> OK, I'll see if I can get the web browser here to act sanely
16:29:33 <ais523> (/version me if you want to know the horiffic details, and look at the version number)
16:29:39 <oklopol> Slereah_: there could be a language where you can add all brainfuck operators on the stack, and a b-command to run the stackie
16:29:49 <oklopol> you can only add them some finite number of times
16:30:02 <oklopol> and you have a set of operations that mix up the stack
16:30:29 <oklopol> depends on the operations whether you can create interesting enough programs
16:30:52 <oklopol> no, if the set of operations is {}
16:31:11 <ais523> oklopol: how does implementing a Brainfuck interp in something not prove that it's BF-complete?
16:31:13 <oklopol> if it's {"fetch *any* operation from the stack and duplicate it on top of the stack"}
16:31:28 <ais523> hmm... it depends on the definition of BF-complete
16:31:29 <oklopol> ais523: because there might be constraints on what you can give it as input
16:31:42 <ais523> ah, I was thinking of things like sed
16:31:45 <oklopol> you might not be able to actually use it, even though it's there
16:31:55 <ais523> but you can't compile all BF programs into sed
16:32:12 <ais523> because it needs at least one byte of input to do anything
16:32:19 <ais523> there are BF programs that output despite no input
16:32:23 <ais523> but no sed programs that do that
16:32:30 <ais523> OTOH, I'd still call it BF-complete
16:32:40 <oklopol> well, *that* is a bit artificial.
16:32:44 <ais523> because you can just append a newline, or something trivial like that, a coding of the input
16:32:52 <Slereah_> BUT WHAT IF YOU ONLY HAVE +'s, WHAT THEN
16:33:23 <oklopol> Slereah_: what? :D did i leave a sentence unfinished?
16:33:49 <Slereah_> Nah. I'm just screwing with you :D
16:34:15 <oklopol> ais523: well that's clearly *tc* at least, i guess that's the real point here, because io makes bf a bit too concrete for this conversation
16:34:29 <ais523> yes, I agree that it's blatantly TC
16:34:36 <ais523> as for your +b lang, I'd say it isn't BF-complete
16:34:44 <ais523> it cannot run arbitrary BF programs
16:34:49 <ais523> and you cannot write a BF interp in it
16:35:04 <ais523> it has a BF-interp command, but that isn't the same as saying that you can write a BF interp in the language
16:35:28 <oklopol> what exactly is the definition of a bf interpreter then?
16:35:39 <oklopol> i assumed it is that it's given a string, and it runs it as bf.
16:35:43 <ais523> that's an interesting point
16:35:49 <ais523> I'd say it's a function that maps an input to an output
16:35:57 <oklopol> okay, well b is exactly that.
16:36:00 <ais523> where the input is a BF program and its input (maybe separated by !)
16:36:12 <ais523> your language has an embedded BF interpreter, but no way to use it
16:36:17 <AnMaster> <ais523> but no sed programs that do that <-- sure? I think gsed can do that?
16:36:31 <ais523> AnMaster: maybe I've been using it wrong
16:36:38 <AnMaster> I'm far from a sed expert though
16:36:43 <oklopol> ais523: my point was, the interpreter is not necessarily the proof, because you might not be able to give it arbitrary input.
16:36:52 <ais523> no, you have to prove that the interpreter works
16:37:01 <ais523> that involves being able to interpret arbitrary input
16:37:09 <ais523> otherwise it isn't a BF interp
16:37:13 <ais523> but an interp for a subset of BF
16:37:16 <oklopol> yes, but you also have to prove you *can give it any input*
16:37:38 <oklopol> so it's two proof, after which you have compilation pretty much done.
16:37:43 <Slereah_> But does such a scenario happens often?
16:37:45 <ais523> hmm... I see the problem, I'm talking about a BF interp as a program written in a language and running within the constraints of that language
16:37:47 <oklopol> and that *is* clearly a proof
16:37:53 <ais523> whereas you're talking about a BF interp as something inside the language
16:37:57 <Slereah_> "Oh noes, I have no way to feed input into my interpreter!"
16:38:11 <oklopol> Slereah_: no, because usually languages have easy facilities for making constants.
16:38:20 <Slereah_> I mean, if you write a BF interpreter.
16:38:26 <ais523> I'd say another way to prove a language BF-complete is if you can compile all BF programs into it
16:38:32 <Slereah_> It will usually have some sort of way to simulate a tape
16:38:44 <Slereah_> And some sort of numbers on it
16:38:45 <ais523> <oklopol>Slereah_: no, because usually languages have easy facilities for making constants.
16:38:55 <ais523> we're in #esoteric, you probably shouldn't assume that
16:39:10 <Slereah_> But, if you can write a BF interpreter in it
16:39:25 <oklopol> ais523: even in esolangs, if you can make a bf interp, it's usually easy to create an arbitrary string.
16:39:29 <ais523> well, all BF interps I've seen work by simulating a tape somehow
16:39:32 <Slereah_> If you have no way to make a tape and numbers, how are you going to make an interpreter?
16:39:44 <ais523> often using two stacks
16:40:04 <ais523> well, I can imagine a BF interp that analyses the code and translates it into functional code or something that does the same thing
16:40:11 <Slereah_> And if you can make those two, you can probably make a tape with the program on it
16:40:15 <ais523> and the code it translated into has nothing resembling a tape
16:40:21 <ais523> it would be pretty difficult to do, though
16:40:47 <oklopol> hmm, what are you talking about now exactly?
16:41:03 <ais523> incidentally, and marginally related to this conversation, does anyone know the minimum depth of [] nesting needed to be able to write a BF interp in BF?
16:41:28 <oklopol> you can prolly do something like that factor language in just a few characters.
16:41:59 <ais523> another interesting question: what's the shortest possible interp for some TC language in <insert language here>?
16:42:11 <ais523> that is, you can define the TC language yourself to produce the shortest interp possible
16:42:38 <oklopol> yeah, that's always interesting
16:42:45 <ais523> I tried doing it in machine code, got it down to 11 bytes if you append the program to the interp, but then realised that a 0-byte program was a machine-code interp under those rules
16:42:46 <oklopol> even impossible to cheat in
16:43:11 <oklopol> Slereah_: you can't cheat like that
16:43:17 <ais523> well, some langs are going to be easier to golf a TC lang in than others
16:43:30 <oklopol> ais523: well *that* is easy to cheat in
16:43:34 <ais523> e.g. in Perl eval<> interprets the class of one-liner Perl programs, which is TC
16:43:40 <ais523> that's clearly a cheat, though
16:43:46 <Slereah_> What works as a command, though?
16:43:57 <Slereah_> I always found that iota's i was a bit of cheating.
16:44:06 <ais523> Slereah_: in BF, I'd say each of + - < > , . [ ]
16:44:19 <ais523> AnMaster: A hypothetical command that interprets Brainfuck
16:44:46 <Slereah_> Because there's the underlying lambda, and because i alone doesn't do shit.
16:44:51 <ais523> AnMaster: one oklopol invented as an example, its only other command appended a "+" to the program it interpreted
16:45:08 <ais523> so although b can interpret any BF program, it's only possible to give it programs consisting of only + as input
16:45:28 <ais523> Slereah_: well, it has i and * as commands
16:45:39 <AnMaster> ais523, I did plan a fingerprint for befunge that would be able to interpreter 0gnirts as brainfuck, HQ9X (or whatever that joke language is called), and whitespace
16:45:40 <ais523> but i is rather complicated
16:45:51 <Slereah_> Yes, but i doesn't really do anything on its own
16:46:12 <Slereah_> You need at least two i's to make it mean something in the language itself
16:46:20 <ais523> AnMaster: I find HQ9++ really difficult
16:46:26 <Slereah_> So it feels a little like a cypher.
16:46:35 <ais523> all the HQ9+ interps I've written actually implement + properly, even though its useful
16:46:36 <AnMaster> ais523, isn't that the one that provides object orientation too?
16:46:40 <ais523> there's always an accumulater in there somewhere
16:47:30 <AnMaster> ais523, well iirc it said no references will be available to the created object, so I just need to malloc a object and then discard the pointer, intentional memory leak ;)
16:47:48 <ais523> AnMaster: yes, but the description of the object created is kind-of complex
16:48:36 * oklopol would make a lazy interpreter that doesn't actually implement that
16:48:51 <ais523> oklopol: from my point of view, that misses the point
16:49:22 <oklopol> ais523: well, i agree with you, but also, your mother.
16:49:50 <AnMaster> ais523, ah yes, would be hard in C
17:01:09 -!- timotiis has joined.
17:08:02 -!- ehird has joined.
17:22:27 -!- olsner has joined.
18:15:43 -!- Sgeo has joined.
18:16:00 -!- RedDak has quit (Remote closed the connection).
18:37:40 -!- timotiis_ has joined.
19:06:15 -!- timotiis has quit (Read error: 110 (Connection timed out)).
19:11:31 -!- Corun has joined.
19:12:48 -!- jix has quit (Nick collision from services.).
19:12:58 -!- jix has joined.
21:07:18 -!- Iskr has quit ("Leaving").
21:22:38 -!- elissar has joined.
21:23:22 -!- elissar has quit.
21:28:02 -!- BMeph has quit ("Time for me to go home").
21:59:04 -!- BMeph has joined.
22:02:25 -!- kar8nga has left (?).
22:10:37 -!- olsner has quit ("Leaving").
22:52:24 -!- jix has quit ("CommandQ").
23:00:06 -!- BMeph has quit (Read error: 104 (Connection reset by peer)).
23:31:18 -!- ais523 has quit ("not on my usual connection and so I can't spam loads of INTERCAL here").
23:37:13 -!- timotiis_ has quit (Read error: 110 (Connection timed out)).
23:55:39 -!- Judofyr has quit.
23:55:43 -!- ihope has changed nick to ihopin.
23:58:09 -!- ihopin has changed nick to ihope.
00:14:27 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
00:17:47 -!- bsmntbombdood has joined.
01:01:42 -!- ihope_ has joined.
01:10:44 -!- ehird has quit (Remote closed the connection).
01:14:01 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
01:15:45 -!- ihope has quit (Read error: 110 (Connection timed out)).
03:36:41 -!- Corun has quit ("Ribbit, Robit....").
04:22:12 -!- GreaseMonkey has joined.
04:22:12 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
04:36:08 <RodgerTheGreat> this is an awesome idea. Children's drawings interpreted realistically: http://themonsterengine.com/art.html#
04:47:35 -!- ihope_ has quit (Read error: 110 (Connection timed out)).
04:56:57 -!- ihope_ has joined.
04:57:01 -!- ihope_ has changed nick to ihope.
04:57:54 -!- B-rat has quit (Nick collision from services.).
06:42:33 -!- Sgeo has quit (Remote closed the connection).
06:49:28 -!- augur has joined.
07:35:25 -!- olsner has joined.
07:43:48 -!- sebbu has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:22:50 -!- Iskr has joined.
08:34:08 -!- olsner has quit ("Leaving").
08:34:17 <augur> http://www.youtube.com/watch?v=kzniaKxMr2g&feature=related
09:18:43 -!- jix has joined.
10:28:14 -!- jix has quit (Nick collision from services.).
10:28:22 -!- jix has joined.
10:28:52 -!- jix has quit (Client Quit).
10:38:45 -!- Judofyr has joined.
10:42:46 <dbc> ais523 was asking what the minimum bracket depth required for a brainfuck interpreter in brainfuck was.
10:44:27 <dbc> It's a question I've considered, but not with tons of energy. My best guess is 2...but it might be 3.
11:18:06 -!- GreaseMonkey has quit ("Unisex.").
12:10:50 -!- sebbu has joined.
12:16:18 -!- oklopol has joined.
12:18:48 <augur> where've you been ey?
12:21:35 <oklopol> i haven't been gone *that* long!
12:21:57 <oklopol> i was gone for the night, because vista did an update
12:23:51 <oklopol> and as i usually sleep like 12 hours, i guess i may have been gone quite long
12:37:12 -!- timotiis has joined.
12:45:47 -!- ihope has quit (Read error: 110 (Connection timed out)).
12:55:34 -!- B-rat has joined.
13:10:39 -!- Judofyr has quit.
13:28:43 -!- Slereah_ has joined.
13:33:14 -!- jix has joined.
13:43:24 -!- jix has quit ("CommandQ").
14:05:51 -!- BMeph has joined.
14:21:44 <oklopol> came back, and now i'm leaving
14:23:19 <augur> took you long enough, ok.
14:23:47 <augur> this is urgent, i must know: are you gay and single?
14:23:56 <augur> (or bi, whatever.)
14:27:07 <augur> open relatinship? :P
14:27:18 <oklopol> gotta say that was a fairly surprising question :D
14:27:44 <oklopol> hm, not sure, wanna elaborate on why you're asking :D
14:28:41 <augur> if you said you were i was going to intimate that i wanted to get with you
14:28:42 <oklopol> gotta get going home, promised my friends i'd do some drinking with them
14:29:15 <oklopol> well... umm... i'll keep in mind
14:29:48 <augur> i take it you're not straight? :D
14:30:03 <oklopol> where are you getting that?
14:30:18 <augur> well im a guy, and you're a guy, so if you're straight it doesnt much matter. :P
14:31:14 <oklopol> well my sexuality is not public domain
14:31:28 <oklopol> anyway, see you all around, going home *now*.
14:31:32 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
14:49:01 -!- oklopol has joined.
15:13:00 -!- ihope has joined.
15:13:33 -!- Judofyr has joined.
15:23:50 -!- ihope_ has joined.
15:40:11 -!- ihope has quit (Read error: 110 (Connection timed out)).
15:44:37 -!- timotiis_ has joined.
15:56:44 -!- timotiis has quit (Read error: 110 (Connection timed out)).
16:04:44 -!- timotiis_ has changed nick to timotiis.
16:46:15 -!- ehird has joined.
17:35:09 -!- ehird has changed nick to bears.
17:37:14 -!- Sgeo has joined.
18:23:39 -!- kar8nga has joined.
18:24:37 <bears> Who wants to 'FOR suff' in #ircnomic? :-P
19:42:13 -!- hyber has joined.
19:45:55 -!- hyber has left (?).
19:46:39 -!- hyber has joined.
19:47:54 -!- hyber has left (?).
19:50:55 -!- bears has changed nick to ehird.
19:51:12 <ehird> poor guy was too rushed to spell 'hyper'
19:52:14 -!- hyber has joined.
19:52:53 -!- hyber has left (?).
19:54:50 -!- hyber has joined.
19:54:53 -!- hyber has left (?).
19:57:56 <ihope_> I wonder if he had a question or something.
21:11:02 <ihope_> Maybe he was hoping someone named nate would join right after.
21:11:22 -!- hyber has joined.
21:11:25 -!- hyber has left (?).
21:15:55 -!- RedDak has joined.
21:46:43 -!- RedDak has quit (Remote closed the connection).
22:15:47 -!- hyber has joined.
22:33:29 -!- hyber has left (?).
22:38:20 -!- Judofyr has quit.
23:26:21 -!- ihope_ has quit (Read error: 110 (Connection timed out)).
23:48:35 -!- kar8nga has left (?).
00:26:09 -!- Iskr has quit ("Leaving").
00:50:49 -!- ehird has quit (Remote closed the connection).
01:02:19 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:39:53 <oklopol> well hello mister Slereah_
01:41:02 <Sgeo> Maybe better would have been: A web server running Win95
01:42:14 <Slereah_> Although I do feel like I'll have to retake my exams in three weeks
01:42:25 <oklopol> i don't need to do anything
01:43:47 <oklopol> i have until sunday to finish our database projevt
01:44:10 <oklopol> and there's still a retard in our group
01:44:29 <oklopol> and neither of the rest of us is man enough to kick him out
01:49:57 <oklopol> should i eat a *very old* pizza?
01:55:22 <oklopol> where is everyone when i need ya so bad?
01:55:39 <oklopol> so, perhaps very old pizza.
01:57:24 * Sgeo wouldn't, but then again, I don't know
01:57:41 <oklopol> some people know, some donät
01:59:02 <Sgeo> Nothing yet, other than <Ami> Chatdeath. ihope gained 32 points. He has killed chat 15 times and has 464 points.
01:59:46 <Sgeo> Is that sarcasm?
02:00:04 <oklopol> i guess it sounded like that
02:09:36 -!- BMeph has quit (Read error: 104 (Connection reset by peer)).
02:09:38 -!- olsner has joined.
03:11:59 -!- GreaseMonkey has joined.
04:58:55 -!- B-rat has quit (Nick collision from services.).
05:07:23 -!- Sgeo has quit ("Ex-Chat").
05:31:22 -!- augur_ has joined.
05:31:22 -!- augur has quit (Read error: 104 (Connection reset by peer)).
06:39:50 -!- pikhq_ has joined.
06:47:12 -!- pikhq has quit (Read error: 110 (Connection timed out)).
07:12:43 -!- GreaseMonkey has quit ("Unisex.").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:24:16 -!- B-rat has joined.
08:59:15 -!- kar8nga has joined.
09:08:31 -!- Iskr has joined.
09:22:10 -!- dbc has quit (Client Quit).
09:50:27 -!- Judofyr has joined.
10:23:20 -!- dbc has joined.
11:08:05 -!- timotiis has joined.
11:56:19 -!- kar8nga has left (?).
13:25:17 -!- kar8nga has joined.
13:53:44 -!- augur_ has quit.
14:03:48 -!- Corun has joined.
14:17:56 -!- kar8nga has left (?).
15:43:27 -!- timotiis_ has joined.
16:09:36 -!- timotiis has quit (Read error: 110 (Connection timed out)).
16:20:10 -!- ehird has joined.
17:03:05 -!- pikhq_ has changed nick to pikhq.
17:58:21 -!- Judofyr has quit.
18:02:34 -!- hyber has joined.
18:02:44 -!- hyber has left (?).
18:06:14 -!- ais523 has joined.
18:09:50 -!- kar8nga has joined.
18:31:03 -!- Judofyr has joined.
18:33:33 -!- kar8nga has left (?).
19:04:25 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
19:08:20 -!- Sgeo has joined.
19:10:07 -!- kar8nga has joined.
19:51:45 * SimonRC has been experimenting with colorForth
19:52:05 <SimonRC> The key layout is nice to use
19:52:09 <ehird> SimonRC: http://colorforthray.info/
19:52:18 <ehird> FOUR ROTATIONS IN EACH HARMONIOUS FORTH DAY
19:58:40 <SimonRC> that is what other peopoe said too
19:59:06 <SimonRC> otoh, ray has an excuse for the colours, if not the shitty layout
19:59:44 <SimonRC> the colors are part of the programming language
20:00:01 <ehird> SimonRC: his style of english is awful
20:00:07 <ehird> along with his communication skills, and well personality.
20:00:42 <ehird> read the damn page
20:01:37 <SimonRC> does it communicate his personaity?
20:02:37 -!- RodgerTheGreat has quit (Read error: 104 (Connection reset by peer)).
20:05:39 <ehird> SimonRC: any progress on kigforth?
20:06:32 <ehird> SimonRC: just interesting
20:09:39 <ehird> no idea why I did that
20:10:09 <ehird> -Deewiant- VERSION Deewiantbot version NaN
20:11:23 -!- RodgerTheGreat has joined.
20:27:39 -!- lifthrasiir has quit (Read error: 110 (Connection timed out)).
22:05:47 -!- Iskr has quit ("Leaving").
22:12:21 -!- SimonRC has quit (Read error: 104 (Connection reset by peer)).
22:15:49 -!- SimonRC has joined.
22:24:46 -!- B-rat has left (?).
22:35:58 -!- RodgerTheGreat has quit (Read error: 104 (Connection reset by peer)).
23:21:13 -!- mikemorg has joined.
23:21:37 <mikemorg> i need a good hacker for partination if u are interested pm me for details
23:24:07 <SimonRC> Please learn to type properly.
23:24:28 <SimonRC> Also, what on Earth is "partination" (sic)?
23:24:40 <ehird> mikemorg: I am interettmeating.
23:25:10 <ehird> mikemorg: what would you like me to do
23:26:41 <ehird> mikemorg: hacking, partination
23:27:40 <ehird> mikemorg: yeah how
23:28:48 <mikemorg> can u give me the password to my mail box
23:29:06 <ehird> mikemorg: sur...whats ur email
23:29:40 <ehird> mikemorg: whats ur email tho??
23:29:55 <ehird> im not psychic lol i can hak it if i no what ur email is
23:30:53 <ehird> mikemorg: ok, hacking is a very complex subjects do u no the basis?
23:31:13 <mikemorg> this is it barryb2love@yahoo.com
23:31:28 <ehird> mikemorg: do u no the basis of the hacking subjects though?
23:31:40 <ehird> they are very complicate and u canot just hack like this
23:31:51 <ehird> it needs to be known the method
23:31:58 <ehird> hack is very easy if information needed can be got
23:32:23 <ehird> mikemorg: so do u no the basis? and we can continue
23:32:50 <mikemorg> do u know how to hack bank login
23:33:06 <ehird> mikemorg: yes it depends what details..... ..
23:33:14 <ehird> some banks have 'anti hack' which slows down hack a lot it is new
23:33:16 <ehird> but there are xploitz
23:34:03 <ehird> mikemorg: what bank???
23:34:57 <ehird> mikemorg: the hack method is specific to the bank
23:35:02 <ehird> which bank do u want 2 hack?
23:35:48 <ehird> mikemorg: by the way..
23:35:51 <ehird> mikemorg: I just did a hack and
23:36:12 <ehird> mikemorg: I know wher u liv and ur isp..
23:37:00 <ehird> mikemorg: your city is ... (dun dun dun DUNN... hehe....)
23:37:15 <ehird> ... dun dun dun...
23:37:34 <ehird> mikemorg: haha sorry my other hacks are in progress
23:37:40 <ehird> very busy!! gimme a sec
23:38:03 <ehird> mikemorg: NIGERIA?? ...haha
23:39:00 <ehird> mikemorg: hey dude?
23:39:23 <ehird> mikemorg: 82.128.23.153
23:39:52 <ehird> mikemorg: and you are in or around the city of ... LAGOS! am I rite? (cant always be lookd up, sometimes just a rough one..)
23:40:22 -!- Judofyr has quit.
23:40:38 <ehird> mikemorg: btw .. i'm gonna test ur security
23:40:44 <ehird> _loads_ of apps will show this up
23:40:49 <ehird> but if it doesnt, well, ur low scurity
23:41:21 <ehird> mikemorg: hmmmmmMmmm seems ur secure!
23:41:44 <mikemorg> so can we do Business togethe r
23:42:37 <mikemorg> can we chat on yahoo messenger?
23:42:48 <ehird> mikemorg: no sorry, yahoo msg and others i v. insecure
23:42:56 <ehird> loads of data leaked to the corp running it!!
23:43:11 <ehird> don't want any private chats to be read right??
23:44:55 <ehird> mikemorg: its better to be secure rite?
23:45:33 <ehird> mikemorg: come in here agin
23:45:36 <ehird> this is a hub for hackers
23:45:43 <ehird> there's always sum1 here
23:45:50 <ehird> & there are sum pozers in here
23:45:57 <ehird> who tell u to go away or w/e
23:46:24 <ehird> always on around this time, not so much afterwards
23:46:42 <ehird> mikemorg: evry1 els in here is an exp. hacker
23:46:45 <ehird> there'll always be sum1
23:47:10 <ehird> so bye ... mike morgan
23:47:38 <mikemorg> am not really into hacking but i aid hackers to make money
23:47:50 <ehird> mikemorg: its a secret....... otherwise you can be tracked down!
23:48:02 <ehird> keep up the good work dude
23:48:35 <ehird> mikemorg: wanna see sum sites ive hacked???
23:48:51 <mikemorg> we really have alote to do together
23:49:45 <ehird> mikemorg: i sent u a site in privmsg
23:50:29 <ehird> mikemorg: take a look
23:51:37 <ehird> mikemorg: seen it??
23:51:43 <mikemorg> can u pls help me with a php maila
23:52:07 <ehird> mikemorg: yea!! that's what i put on that site that i hacked
23:52:18 <ehird> click the link in my private msg
23:53:37 <ehird> mikemorg: seen it?? it does a php mailer
23:53:39 -!- atsampson has quit (Read error: 113 (No route to host)).
23:55:25 -!- atsampson has joined.
23:58:59 <ehird> mikemorg: hello dude
23:59:05 <ehird> mikemorg: i'm trying to help with a php mial
00:19:00 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
00:19:30 -!- mikemorg has quit (Read error: 110 (Connection timed out)).
00:22:22 <oklopol> finished my infinite dimension 5-in-a-row game
00:22:47 <oklopol> but the operations on infinite lists and the parser for the code generating them
00:23:03 <oklopol> but i can put it on a bot!
00:23:48 <ehird> <oklopol> but the operations on infinite lists and the parser for the code generating them
00:23:53 <ehird> oklopol: why not just use haskell?
00:23:58 <ehird> infinite list operations == list operations
00:24:23 <oklopol> how would i check for equality, and subtract?
00:24:40 <ehird> oklopol: equality's not hard...
00:24:47 <ehird> oklopol: if you can check pointer locations ... :DDDDDDDDDDDDDDd
00:25:00 <ehird> not if you can check pointer locations oklopol
00:25:08 <ehird> check pointer locations for cycle detection
00:25:13 <ehird> then check that all up to the cycle are equal
00:26:38 <oklopol> we must find such five points (a,b,c,d,e) on the board, set by the same player, where for some n!=0 a+4n = b+3n = c+2n = b+n = a
00:26:53 <oklopol> ...where for some n!=0 a+4n = b+3n = c+2n = d+n = e
00:27:16 <oklopol> pointer locations are worth nothing after the calculations
00:27:38 <oklopol> so a point cannot be set twice
00:27:52 <oklopol> meaning you have to check for equality between the new point, and all old points
00:28:23 <oklopol> if you used a tc language to create two points, there would, in the general case, be no way to check for equality
00:28:38 <oklopol> of course, you can crash it anyway, by using too long lists
00:29:06 <oklopol> because checking for equality is O(n), but you can easily create lists with quadrillions of elements
00:29:26 <oklopol> O(n) where n is the length of the generating lists
00:29:44 <SimonRC> how much power is there for specifying lists?
00:29:48 <oklopol> and where the generating list of L is the smallest list S for which S*infinity = L
00:30:00 <oklopol> i can explain the language
00:30:44 <oklopol> <a> = 0..a, inclusive on both ends
00:30:52 <oklopol> <a b> = a..b, inclusive on both ends
00:31:07 <oklopol> <a b c> = a..b, inclusive on both ends, but with step c
00:31:29 <oklopol> inclusion has a quirk there, for (b-a)%c!=0, but not important
00:31:52 <oklopol> [var list expr] iterates through list using var as the iterator variable
00:32:03 <oklopol> and collects results of expr
00:32:15 <ehird> oklopol: why do you need a parser for that
00:32:21 <ehird> you could just model it as some functions
00:33:36 <oklopol> ehird: true, usually i can decide whether to parse manually, or use the underlying parser
00:33:51 <oklopol> but that only works until i actually take input from the user
00:34:06 <ehird> oklopol: crazy idea
00:34:08 <oklopol> why the fuck would i model it as functions, when i can make a language just for this?
00:34:10 <ehird> write a graphical way to program that
00:34:16 <ehird> in tk or something
00:34:31 <ehird> [since I guess you'll be adding a gui to this eventually]
00:34:33 <oklopol> [a <50 100> {a 5}], where {...} creates a sequence, this would create the list 50 5 51 5 52 5 53 5...
00:34:43 <oklopol> i'm going to add a bot ui.
00:35:27 <oklopol> (...) is an infix expression, like (a + 3) would add 3 to a
00:35:33 <oklopol> you cannot use sequences within ()
00:35:38 <ehird> oklopol: whenever you want people to type in that ... add a graph thingy that shows the code
00:35:43 <ehird> and buttons to add to it
00:35:46 <ehird> it'll be hilarious
00:35:51 <ehird> oklopol: you'll get like people with mirc scripts
00:35:54 <ehird> but sharing their 'graphs'
00:35:58 <ehird> and there'll be bot competitions
00:36:03 <ehird> and people will post screenshots of their bots code
00:36:08 <ehird> and they'll be frickin' huge sprawling graphs
00:36:12 <ehird> and that's how they coded it
00:36:15 <oklopol> ah! i now realize some people tend to want to *see* points!
00:36:22 <oklopol> i'm just thinking infinite sequences here
00:36:33 <oklopol> "points" are just so this whole "distance" thing makes any sense.
00:36:38 * SimonRC recalls seeing sine waves and other graphs done on IRC via colours
00:36:48 <ehird> oklopol: anyway, you should provide a way to program the AI players
00:36:51 <ehird> oklopol: and have it that graphy system thing
00:37:00 <oklopol> hmm, that was the whole language, actually
00:37:09 <ehird> oklopol: 'cause I bet you someone will make a 100-node bot
00:37:12 <SimonRC> you can have 2 points an infinite distance apart
00:37:17 <ehird> and it'll be sloppy as hell but heck
00:37:25 <ehird> it'll be an AI coded in a huge .graph
00:37:30 <ehird> and even _made_ that way using some buttons!
00:37:35 <ehird> oklopol: I mean, i
00:37:42 <oklopol> you cannot create infinite numbers.
00:37:51 <ehird> oklopol: or whatever
00:37:56 <ehird> you know, it shows your bot program as a graph in the GUI
00:38:04 <ehird> and you have buttons to link nodes, create notes etc
00:38:10 <ehird> and you browse through the functions to choose which one to add as a node
00:38:22 <ehird> and the program runs as a graph
00:38:33 <ehird> oklopol: you do loops by doing circular node connections
00:38:39 <ehird> in my example, baz then connecting to foo
00:38:53 <oklopol> do realize i still don't see qhitespace!
00:38:54 <ehird> oklopol: you can break loops by having a two-connection 'if' node thingy
00:39:02 <ehird> oklopol: oh, well I just did 'foo' with an arrow pointing to bar
00:39:08 <ehird> and bar an arrow pointing to baz
00:39:37 <ehird> oklopol: ysee? if X, then a, else b
00:39:39 <ehird> oklopol: as a graph!
00:39:40 <SimonRC> oklopol: consider the points (1,1,1,1,1,...) and (2,2,2,2,2,...) how far apart are they?
00:39:47 <ehird> and, like you can do a conditional loop, right?
00:39:49 <oklopol> SimonRC: they are (1,1,1..) apart
00:39:53 <ehird> oklopol: by connecting a node to itself
00:39:57 <ehird> but guarded by an if
00:40:03 <SimonRC> oklopol: no, I mean the distance, not the displacement
00:40:04 <oklopol> well you can't abs() an infinite vector, silly
00:40:12 <ehird> oklopol: it'll result in the CRAZIEST AI CODING EVER :DD
00:40:18 <SimonRC> oklopol: sometimes you can
00:40:36 <oklopol> anyway, yeah, you are of course correct, the distances can be infinite, although i have no idea what your *point* was.
00:41:02 <oklopol> i'll make the actual game now
00:41:22 <oklopol> and perhaps i can find a freak here who wants to try...?
00:41:42 <oklopol> (you're my only hope, as you can prolly guess :D)
00:42:24 <ehird> oklopol: you should make it infinite-in-a-row though
00:42:30 <ehird> oklopol: and allow ways for making infinite moves in finite time
00:42:40 <ehird> oklopol: infinite dimensions + infinite board side + infinite moves = ???
00:47:40 <oklopol> well board size is infinitely extendable
00:47:50 <ehird> oklopol: yes but you should make it infinite-in-a-row
00:47:59 <ehird> oklopol: of course to win infinite-in-a-row you have to make infinite moves in finite time
00:48:01 <ehird> so come up with a system for that
00:48:10 <ehird> i'd totally love an inf-d inf-size inf-in-a-row game
00:48:31 <oklopol> well, this is already impossible to play, so we'll save that for later!
00:48:48 <oklopol> okay, the Game class was trivial to make
00:49:11 <ehird> are you using my tinygame oklopol
00:49:16 <ehird> (if you're doing graphix)
00:49:19 <ehird> if not, you should
00:49:24 <ehird> oklopol: for the gui version
00:49:29 <oklopol> well i'm not doing graphics
00:49:30 <ehird> oklopol: you can write your own infinite-d renderer
00:49:33 <ehird> oklopol: wouldn't that own
00:49:49 <oklopol> and how should i go about projecting infinited->2d?
00:50:13 <ehird> oklopol: come up with a nifty representation
00:50:32 <oklopol> well, you can always do (n+1)d->nd
00:50:42 <oklopol> perhaps the fold is doable
00:56:51 <ehird> oklopol: i bet it'll be completely incomprehensible
01:00:12 <olsner> hmm, so that's more like arbitrary-d, where every [arbitrary+1 .. infinity]'th coordinate is zero
01:02:06 -!- timotiis_ has quit (Read error: 110 (Connection timed out)).
01:05:07 <ehird> oklopol: AND INFINITE
01:06:10 <oklopol> it should support arbitrary number of players now
01:06:33 -!- kmilo has joined.
01:07:04 <ehird> oklopol: wait wait
01:07:10 <ehird> infinite dimensions, infinite board size, infinite players
01:07:17 <ehird> oklopol: i am a ~ VISIONARY ~
01:07:29 <ehird> oklopol: surely you'd want to play that
01:07:45 <ehird> NEGATIVE DEPTH LISTS OF CO-ORDINATES!!!
01:07:55 <ehird> ~ HOLY FU @ CKING SHIT ~
01:08:37 <olsner> wow, you two are making even less sense than usual tonight
01:09:26 <ehird> olsner: but .. nopol has negative depth lists, right
01:09:33 <ehird> instead of (x,y) as co-ordinates
01:09:37 <ehird> have it a ~negative depth list~
01:10:34 <oklopol> hmm, should join any minute now
01:12:09 <ehird> oklopol: should join?
01:14:16 <oklopol> i'm connecting to quakenet :D
01:14:37 -!- inf-anf-oh has joined.
01:14:57 <oklopol> and as usual, i'll debug here for a moment, and try some other channel if it's completely broken
01:15:07 -!- inf-anf-oh has quit (Remote closed the connection).
01:16:15 -!- inf-anf-oh has joined.
01:17:01 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:17:06 <ehird> oklopol: are you evaluting arbitary code?
01:17:16 -!- inf-anf-oh has joined.
01:17:38 <oklopol> python code or infer code?
01:17:42 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi joined the game.
01:18:04 <ehird> oklopol: that's almost right
01:18:10 <ehird> and you aren't extracing the nick from the host
01:18:14 <ehird> you are just taking the first arg
01:18:23 <ehird> you need to catch :THIS!...
01:18:31 -!- kmilo has left (?).
01:19:07 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:19:37 <oklopol> added sender[1:].split("!")[0]
01:19:53 -!- inf-anf-oh has joined.
01:19:58 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi joined the game.
01:20:12 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:20:29 -!- inf-anf-oh has joined.
01:20:47 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:20:47 -!- inf-anf-oh has quit (Remote closed the connection).
01:21:01 <ehird> whats up with your chin
01:21:18 -!- inf-anf-oh has joined.
01:21:39 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:21:39 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:21:49 -!- augur has joined.
01:22:09 -!- inf-anf-oh has quit (Remote closed the connection).
01:22:46 <oklopol> okay i plain failed @ python
01:22:48 -!- inf-anf-oh has joined.
01:23:09 <augur> why hello oklopol ;O
01:23:39 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:24:21 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi succesfully added a piece.
01:24:26 <ehird> oklopol: oh its fine
01:24:29 <ehird> just let it be like that
01:24:34 <inf-anf-oh> :ehird!n=ehird@91.105.77.215 succesfully added a piece.
01:24:42 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi succesfully added a piece.
01:24:44 <ehird> :DDDDDDDDDDDDDDDDDDDDD
01:24:50 <oklopol> i'll try to make a row, don't kill it
01:24:56 <ehird> @move [a <50 100> {a 5}]
01:24:57 <inf-anf-oh> :ehird!n=ehird@91.105.77.215 succesfully added a piece.
01:25:02 <ehird> more than one peice I believe
01:25:08 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi succesfully added a piece.
01:25:11 <ehird> Did I not just place infinite peices oklopol ?
01:25:13 <ehird> with that loop thing
01:25:19 <ehird> <oklopol> [a <50 100> {a 5}], where {...} creates a sequence, this would create the list 50 5 51 5 52 5 53 5...
01:25:33 <ehird> a gui for this will be awesome
01:25:41 <oklopol> btw. you can add the same piece twice, i just realized
01:25:45 <ehird> @move [a <50 100> {a 6}]
01:25:46 <inf-anf-oh> :ehird!n=ehird@91.105.77.215 succesfully added a piece.
01:25:55 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi succesfully added a piece.
01:26:08 <inf-anf-oh> :ehird!n=ehird@91.105.77.215 succesfully added a piece.
01:26:12 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi succesfully added a piece.
01:27:25 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:27:40 -!- inf-anf-oh has joined.
01:27:41 <oklopol> okay, at least you shouldn't be able to add a piece twice now
01:27:53 <oklopol> and fixed the nick thing ofc
01:28:07 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:28:28 <ehird> oklopol: shit sucks
01:28:46 <oklopol> it should detect if you do that again
01:29:06 <oklopol> (5..5 * infinity == 5 * infinity)
01:29:49 <oklopol> see, you had a piece there :)
01:30:15 <oklopol> but now... why the fuck don't rows work...
01:30:20 <ehird> oklopol: i need a gui for this
01:30:58 <oklopol> i'll debug that row thing offline now, shouldn't take long
01:31:05 <oklopol> ...because, you know, i'm awesome
01:32:18 <oklopol> @move <1 4>, then <1 5> then <1 6> then <1 7> then <1 3>
01:32:30 <oklopol> THERE IS NO FUCKING 5-IN-A-ROW THERE
01:32:34 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:32:54 -!- inf-anf-oh has joined.
01:32:55 <oklopol> currently, anyone can do that anytime
01:33:06 <oklopol> i'll change that, but let's try a 5-in-a-row again
01:33:33 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:35:12 <ehird> @move <4000 40000>
01:35:19 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:35:25 <oklopol> correcting moooore stuff lol
01:36:06 <oklopol> what was it i had to correct
01:38:14 -!- inf-anf-oh has joined.
01:38:22 <oklopol> i'll worry about <20 20> != 20 more after that
01:38:24 <inf-anf-oh> Starting game with players: ehird and oklopol.
01:38:59 <ehird> 0 dimensional 5 in a row
01:39:08 <ehird> oklopol: seriously what
01:39:15 <oklopol> (it's actually the same as {0})
01:39:40 <ehird> @move {5 5 5 5 5 5 5 54 654 654 651651651 a}
01:39:45 <ehird> @move [a <> {5 5 5 5 5 5 5 54 654 654 651651651 a}]
01:39:51 <ehird> @move [a <0 0> {5 5 5 5 5 5 5 54 654 654 651651651 a}]
01:39:56 <ehird> what is [a <0 0> {5 5 5 5 5 5 5 54 654 654 651651651 a}]
01:40:08 <ehird> @move 2 ([a <0 0> {5 5 5 5 5 5 5 54 654 654 651651651 a}] - {})
01:40:14 <ehird> @move ([a <0 0> {5 5 5 5 5 5 5 54 654 654 651651651 a}] - {})
01:40:19 <ehird> @move ([a <0 0> {5 5 5 5 5 5 5 54 654 654 651651651 a}] - 2)
01:40:24 <oklopol> () can't contain sequences
01:40:34 <ehird> @move [a [a <0 0> {5 5 5 5 5 5 5 54 654 654 651651651 a}] {2 a 2 a 2 a a a}]
01:41:12 <ehird> @move (0 - 999999999999999999999999999999999999999999999999999999999) 7
01:41:19 <inf-anf-oh> oklopol won the game with 2, , 3, ,, , 2, , 0, ,, , 2, , (, 0, , -, , 3, ), ,, , 2, , (, 0, , -, , 6, ), ,, , 2, , (, 0, , -, , 9, ).
01:41:21 <oklopol> ASDIOFGJIOGIODJFIOGJDFIOGJ!!!!!
01:41:37 <ehird> oklopol: shouldn't you show 0-9 as -9
01:42:20 <ehird> oklopol: and parse too
01:42:37 <oklopol> but first, i need to fix that output
01:42:40 <ehird> oklopol: can i go now
01:43:19 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:43:35 -!- ehird has quit (Remote closed the connection).
01:43:39 -!- inf-anf-oh has joined.
01:43:43 <oklopol> anyone wanna debug with me?
01:43:49 <oklopol> i just need one more victory
01:44:37 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:44:59 <oklopol> come on everybody, be people now!
01:45:02 -!- inf-anf-oh has joined.
01:45:37 <oklopol> please answer the call of awesome and join the game
01:46:48 -!- oklopol has changed nick to oklofok.
01:46:54 -!- oklofok has changed nick to oklopol.
01:47:04 <inf-anf-oh> Number of players not an integer greater than one.
01:47:09 <inf-anf-oh> Starting game with players: oklopol and oklofok.
01:47:18 -!- oklopol has changed nick to oklofok.
01:47:30 -!- oklofok has changed nick to oklopol.
01:47:53 -!- oklopol has changed nick to oklofok.
01:48:03 -!- oklofok has changed nick to oklopol.
01:48:27 -!- oklopol has changed nick to oklofok.
01:49:01 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:49:31 -!- inf-anf-oh has joined.
01:49:37 -!- oklofok has changed nick to oklopol.
01:49:46 -!- oklopol has changed nick to oklofok.
01:49:51 <inf-anf-oh> Starting game with players: oklofok and oklopol.
01:50:10 -!- oklofok has changed nick to oklopol.
01:50:43 <oklopol> i need you to make a few random moves
01:50:48 <oklopol> i guess i can just do it like this
01:50:55 -!- oklopol has changed nick to oklofok.
01:51:06 -!- oklofok has changed nick to oklopol.
01:51:28 -!- oklopol has changed nick to oklofok.
01:51:43 -!- oklofok has changed nick to oklopol.
01:52:33 <oklopol> if anyone here feels like making an AI, i can make a formal specification of the language
01:52:56 <oklopol> although i'm pretty sure my earlier explanation was enough
01:53:37 -!- oklopol has changed nick to oklofok.
01:53:40 <inf-anf-oh> Starting game with players: oklopol and oklofok.
01:53:43 -!- oklofok has changed nick to oklopol.
01:53:58 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:54:17 <oklopol> well this has been a productive night, see you all later ->
01:54:37 <oklopol> (i'm sure you all are dying to play this, just not awake atm!!)
01:59:59 <oklopol> Sgeo: active on sine but not playing with me?
02:00:12 <Sgeo> What's this game?
02:00:23 <oklopol> infinite dimensional tic-tac-toe
02:00:38 <Sgeo> ..how can that possibly work?
02:00:57 <oklopol> it's not actually tic-tac-toe, but 5-in-a-row
02:01:34 <oklopol> elements (a,b,c,d,e) form a row, if for some infinite vector n a+4n = b+3n = c+2n = d+n = e
02:57:17 -!- Corun has quit (Read error: 110 (Connection timed out)).
03:35:43 -!- augur has quit (Remote closed the connection).
03:37:09 -!- Slereah_ has quit.
03:38:03 -!- Slereah_ has joined.
03:51:46 -!- lifthrasiir has joined.
04:48:42 -!- GreaseMonkey has joined.
04:56:18 -!- RodgerTheGreat has joined.
05:14:30 <RodgerTheGreat> phun is a physics sandbox some friends of mine and I have been playing with. (http://phun.cs.umu.se/wiki)
05:14:47 <RodgerTheGreat> I challenge someone to make logic gates and/or a computer in this medium.
05:17:34 <Slereah_> I'd love to, but my computer is fucking slow for some reason
05:40:42 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
05:41:20 <pikhq> I'd love to, but I'm afraid. . .
05:41:22 -!- Slereah has joined.
05:41:26 <pikhq> That I think that's a cool idea.
05:41:37 <Slereah> My windows no work for some reason
05:42:20 <pikhq> Don't ask me; I run the Linux port.
05:43:02 <Slereah> Blue screen of doom for us all, all that
05:48:09 <Slereah> My computer's cable are one tangled mess.
05:58:10 -!- slereah_ has joined.
05:59:59 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
06:08:35 <slereah_> http://membres.lycos.fr/bewulf/Divers3/Ohnoes.jpg
06:08:54 <slereah_> Or, more to the point, what I can do to make it not do that
06:40:24 -!- GreaseMonkey has quit ("Unisex.").
06:56:12 -!- GreaseMonkey has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:37:32 -!- GreaseMonkey has quit ("Unisex.").
08:57:51 -!- pikhq_ has joined.
09:06:19 -!- pikhq has quit (Read error: 110 (Connection timed out)).
09:31:44 -!- Sgeo has quit (Remote closed the connection).
09:40:33 -!- Iskr has joined.
09:49:25 -!- kar8nga has joined.
10:36:50 -!- kar8nga has quit ("Leaving.").
11:09:23 -!- andreou has quit (Read error: 110 (Connection timed out)).
11:24:07 -!- kar8nga has joined.
11:27:03 -!- jix has joined.
12:14:53 -!- timotiis has joined.
12:26:23 -!- Corun has joined.
12:29:34 -!- Judofyr has joined.
12:34:13 -!- jix has quit ("CommandQ").
13:07:16 -!- RedDak has joined.
13:08:58 <oklopol> RodgerTheGreat: challenge accepted.
13:21:50 -!- sekhmet has quit (leguin.freenode.net irc.freenode.net).
13:23:47 -!- sekhmet has joined.
13:24:06 -!- RedDak has quit (Remote closed the connection).
13:50:03 -!- timotiis has quit (Read error: 110 (Connection timed out)).
14:03:31 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
14:05:23 -!- slereah_ has joined.
14:05:57 -!- timotiis has joined.
14:16:30 -!- slereah__ has joined.
14:20:52 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
14:21:07 -!- slereah_ has joined.
14:21:23 -!- slereah__ has quit (Remote closed the connection).
15:00:07 -!- slereah__ has joined.
15:16:08 -!- slereah__ has quit (Read error: 104 (Connection reset by peer)).
15:24:27 -!- slereah_ has quit (Read error: 110 (Connection timed out)).
15:33:08 -!- kar8nga has left (?).
16:17:29 -!- Slereah has joined.
16:26:44 -!- mikemorg has joined.
16:29:03 <Slereah> What sort of business would be done with esolangs.
16:30:08 -!- Slereah has changed nick to slereah_.
16:30:12 <mikemorg> am not into hacking but i aid hackers to make cool money
16:32:31 <oklopol> RodgerTheGreat: i was going for a simple water-based approach, but it seems the system doesn't support waterproof pipes that well.
16:32:42 <oklopol> i was trying to make a transistor.
16:33:03 <slereah_> As you see, we're trying to make logic gates out of household items
16:33:09 <RodgerTheGreat> waterproof piping is entirely possible, you just have to make careful use of overlapping and collision types
16:33:12 <slereah_> And by household items, I mean physics engine
16:33:13 <oklopol> if there is pressure @ b, a->c cannot flow
16:33:34 <RodgerTheGreat> oklopol: I have a pretty good idea of how you could build one of those
16:33:35 <slereah_> Well, when I say we, I don't mean me.
16:33:38 <oklopol> RodgerTheGreat: yes, but it's hard to make a block that moves within a waterproof pipe
16:33:47 <oklopol> RodgerTheGreat: well i can do anything given those.
16:34:49 <oklopol> mikemorg: what do you mean?
16:35:40 <slereah_> He wants to tell you how you can make money fast, I think
16:35:43 <oklopol> mikemorg: slereah_ cannot do anything, he's just a stupid physicist!
16:35:55 <slereah_> mikemorg, do you possess a suit with many question marks on it?
16:35:57 <oklopol> (plain old meanness mwahaha!)
16:36:09 <slereah_> Or colours, if you're British.
16:36:36 <oklopol> 1. esolangs 2. ??? 3. profit
16:36:37 <slereah_> <mikemorg> am not into hacking but i aid hackers to make cool money
16:37:04 <oklopol> "cool money" sounds like something i might say
16:37:09 <oklopol> mikemorg: wrong channel for that
16:37:22 <oklopol> but if you wanna play infinite dimensional tic-tac-toe...
16:37:30 <oklopol> i can load up my bot again
16:37:45 <mikemorg> pls can u giv me the reght chanel
16:37:46 <slereah_> Come on, who doesn't want to buy an awesome Esolang pack?
16:38:00 <slereah_> Like maybe EsCo packed with PSOX
16:39:17 <slereah_> Bitches don't know about my esolang
16:39:19 <oklopol> RodgerTheGreat: me and a friend once did an and gate out of sticks and rubber bands
16:39:28 <oklopol> but... the real world is 3d
16:39:47 <oklopol> we were going for xor, but our design was a bit physically verbose
16:40:03 <slereah_> Is this going to be one of those contest where we pretend we made logic gates out of X?
16:40:14 <slereah_> And someone will end up mentionning "socks and vaseline"
16:40:42 <slereah_> I once made a NOR gate out of socks and vaseline.
16:43:26 -!- kar8nga has joined.
16:43:53 <mikemorg> pls i need a very good php maila pls help
16:46:25 <oklopol> RodgerTheGreat: are you able to build on that?
16:46:46 <oklopol> unless you actually want a *computer* working, that may be a good simple way to build gates
16:47:02 <oklopol> just have a few liquid containers somewhere up
16:47:22 <oklopol> output comes out at the bottom
16:47:25 <slereah_> Can you just urinate in your computer?
16:47:40 <oklopol> slereah_: different kind of liquid
16:48:05 <RodgerTheGreat> the control line will need to be able to drain, and this isn't mechanically perfect
16:48:18 <mikemorg> can u pls help me with a php maila
16:48:29 <RodgerTheGreat> the main trick I discovered involved reducing the density of the "control rod"
16:48:53 <oklopol> i guess it does have to drain, because, otherwise it will keep any pressure given to it earlier.
16:49:18 <oklopol> (this only matters once we stop doing pure gates, and add program flow)
16:49:19 <RodgerTheGreat> but you ought to be able to do that by simply having a bottleneck flowing out
16:50:40 -!- ehird has joined.
16:52:23 <ehird> fine thx. r u redy for the bank hack?
16:53:21 <ehird> ok. supply details and i will link to the loggedin bank account page.
16:53:39 -!- slereah_ has changed nick to Slereah.
16:53:46 <mikemorg> i dont hack but i just aid hacker to make cool money
16:54:55 <ehird> mikemorg: what is the system of operation?
16:55:05 <oklopol> ehird: you gotten into the hacking business?
16:55:14 <mikemorg> can u transfer money to any account
16:55:21 <ehird> oklopol: hahaha. shut up, you know this is the hacking channel :))
16:55:34 <ehird> mikemorg: yes, i can
16:56:18 <ehird> mikemorg: what is the business?
16:57:13 <ehird> mikemorg: lol how can i o man
16:57:46 <mikemorg> i wike give u an account the u transfer some amount of money into the account
16:58:56 <mikemorg> then i cash the money and send u ur share
16:59:14 <ehird> mikemorg: what is the share
17:00:05 <ehird> mikemorg: what amount do you wish
17:01:28 <ehird> mikemorg: i can get any amont
17:01:47 <mikemorg> which bank login do u have for now
17:03:21 <mikemorg> pls give me the names of some backs that u have the login
17:03:36 <ehird> mikemorg: name a bank i have it
17:03:58 -!- kar8nga has left (?).
17:05:35 <mikemorg> which type of acc can u transfer money into
17:05:43 -!- Corun has quit ("Leaving").
17:06:26 <ehird> i am one of the top hackers on irc
17:07:52 <mikemorg> can u tell me my location and ip
17:08:16 <ehird> mikemorg: i did that yesterday!
17:09:00 <ehird> mikemorg: but fine
17:09:03 <ehird> your ip is 82.128.35.249
17:09:18 <ehird> and still nigeria, it seems
17:10:17 <mikemorg> what kind of connectiom i my using
17:10:55 <ehird> mikemorg: its hard to tell sometimes
17:11:04 <ehird> but i can narrow it down simply...
17:11:14 <ehird> ok, you're either on adsl of dial-up it seems?
17:11:17 <ehird> (its not a precise check)
17:12:22 <ehird> mikemorg: its one of the impossible things in hacking
17:12:28 <ehird> bcoz the isp routes them the same
17:12:32 <ehird> so the end-points come the same
17:12:42 <ehird> however the hack methods are the same so it doesnt matter
17:13:09 <mikemorg> can u help me with a php maila
17:14:11 <mikemorg> pls i need a php maila and email addesses pls help me
17:15:55 <ehird> mikemorg: what mail address is the dynamic used
17:17:43 <ehird> mikemorg: what do you wish
17:18:28 -!- Corun has joined.
17:19:07 <ehird> mikemorg: the email
17:19:58 <ehird> mikemorg: what is the request
17:20:39 <ehird> mikemorg: you want a php maila
17:21:27 <ehird> mikemorg: ok i will send you a php maila that we use in private chat
17:21:32 <ehird> mikemorg: it supports any mail
17:21:45 <ehird> mikemorg: ok check your private chat
17:24:44 <ehird> mikemorg: i linked a php maila
17:28:04 <ehird> mikemorg: why that one is the best
17:29:35 <ehird> mikemorg: private chat sending you one
17:29:47 <ehird> mikemorg: check your private
17:30:45 <mikemorg> the one u sent shows a ponographic site
17:32:20 -!- oerjan has joined.
17:32:51 <ehird> your isp is blocking it
17:33:40 <ehird> mikemorg: to access them you will have to switch isp
17:34:28 <ehird> mikemorg: you will have to buy a new internet package
17:34:30 <ehird> its the only way ...
17:35:40 <ehird> mikemorg: most proxys dont bypass the transisitive effect of the mailer
17:40:36 <mikemorg> ok can u give me a proxy to use
17:48:11 <mikemorg> can u transfer money into a cradit card
17:55:26 -!- mkemoor has joined.
17:56:28 -!- Judofyr has quit.
17:56:53 <mkemoor> any good hacker here for business?
17:58:12 <Slereah> You're already on that channel, Mike Morgan.
17:59:24 -!- mikemorg has left (?).
17:59:32 <ehird> mkemoor: ok, let's put it this way
17:59:55 <ehird> you are an idiot. this is not a hacker's channel, 'maila' is not a word, a 'php maila' i believe you are referring to an anonymous mailer
18:00:00 <ehird> and if you can't get them working you're a retard
18:00:17 <ehird> also, hacking banks is _not_ either particularly clever, or not very hard in any way shape or form
18:02:47 <ehird> mkemoor: and finally
18:02:50 <ehird> WE'RE NO STRANGERS TO LOVE
18:02:51 <ehird> YOU KNOW THE RULES
18:02:56 <ehird> A FULL COMMITMENTS WHAT I'M THINKING OF
18:03:00 <ehird> YOU WOULDN'T GET THIS FROM
18:03:05 <ehird> I JUST WANNA TELL YOU HOW I'M FEELING
18:03:07 <ehird> GOTTA MAKE YOU UNDERSTAND
18:03:26 <oerjan> kickban! both of them :D
18:03:35 <ehird> oerjan: NEVER GONNA GIVE YOU UP
18:03:37 <ehird> NEVER GONNA LET YOU DOWN
18:03:39 <ehird> NEVER GONNA RUN AROUND
18:04:47 <oerjan> does this mean i've finally been rickrolled?
18:04:49 <mkemoor> u really sound like a nice guy
18:04:56 <Slereah> And said, "You're movin' with your auntie and uncle in Bel-Air."
18:04:56 <Slereah> I whistled for a cab and when it came near
18:04:56 <Slereah> The license plate said fresh and it had dice in the mirror
18:04:56 <Slereah> If anything I could say that this cab was rare
18:04:56 <Slereah> But I thought, "Nah, forget it. Yo home to Bel-Air!"
18:09:59 <oerjan> exercise for less lazy people than i: make an esoteric language in which that song prints "Hello, World!"
18:10:43 * oerjan wonders if this idea is new
18:10:54 <Slereah> Here's the description : Inputing that song outputs "Hello, world!"
18:11:02 <Slereah> And everything else does not compute.
18:11:08 <mkemoor> any hacker here for business
18:11:18 <oerjan> has to come slightly more naturally than that...
18:11:18 -!- ehird has quit (Connection reset by peer).
18:11:45 <oerjan> there may be many hackers here in the old, proud sense of the word
18:11:53 <Slereah> mkemoor: Just ask here with your email : http://img.4chan.org/b/imgboard.html
18:12:03 <Slereah> You'll find someone for such a task.
18:14:15 <Slereah> Also oerjan : http://desudesudesu.net/
18:17:56 <Slereah> !bf +[-++++++++++[->++++++++++>+++<<]>.+.++++++++++++++.++.>++.[[-]<]+]
18:19:22 <oerjan> also i am not sure egobot prints if it gets no newlines...
18:19:48 -!- ehird has joined.
18:21:11 -!- slereah__ has joined.
18:22:04 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
18:22:33 <mkemoor> any hacker here for business
18:23:27 <slereah__> mkemoor: use this handy hacker board, stating your request and email adress : http://img.4chan.org/b/imgboard.html
18:24:51 <mkemoor> pls can u elp me any good hackers chanel?
18:25:35 <slereah__> mkemoor: Try a channel on irc.partyvan.us
18:26:18 <RodgerTheGreat> dood, u gotta sh0 5um haX0r cred if u wanna t3am up wit da 1337s
18:30:00 <ehird> mkemoor: fuck off.
18:30:34 * oerjan laments a lack of present laments
18:30:52 <mkemoor> can u help me with irc.partyvan.us command lines
18:31:26 <ehird> mkemoor: go fuck a rake
18:32:36 <ehird> mkemoor: none of us are 'hackers' all of us are trying to waste your time and you are an idiot
18:34:40 -!- mkemoor has quit.
18:36:27 <RodgerTheGreat> I was running some whois queries and doing internet detectivery to get him to shit himself
18:37:13 <slereah__> You could pretend to be Chris Hansen.
18:37:29 <ehird> RodgerTheGreat: dude, read yesterday's logs
18:37:33 <ehird> i did most of the shit he'd take
18:37:39 <ehird> he just kept banging on about 'php mailas' forever
18:38:46 <slereah__> That's the problem of trying to run a scam in a language you barely master with a technology you barely understand!
18:38:47 <RodgerTheGreat> ehird: just imagine how much fun we could've had writing trojans and telling him they were 1337 5kr1ptz or something
18:39:05 <ehird> RodgerTheGreat: not much
18:39:06 <ehird> he doesn't run anything
18:39:11 <ehird> and it took ages to get him to clikc a link
18:39:58 <slereah__> Well, with a little luck, he'll finally master the inner workings of partyvan.
18:40:18 <slereah__> And he will learn something about the internet.
18:40:27 -!- Hiato has joined.
18:40:48 <RodgerTheGreat> "Lesson 1 of the internet: don't fuck around on the internet"
18:43:59 -!- hyber has joined.
18:44:05 -!- hyber has left (?).
18:44:53 -!- timotiis has quit (Read error: 110 (Connection timed out)).
18:49:38 -!- hyber has joined.
18:51:22 -!- Hiato has left (?).
18:53:58 -!- pikhq has joined.
19:00:22 -!- pikhq_ has quit (Read error: 110 (Connection timed out)).
19:01:23 <oklopol> oerjan: also i am not sure egobot prints if it gets no newlines... <<< sure does
19:17:17 -!- Judofyr has joined.
19:40:06 -!- ehird_ has joined.
19:40:07 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
19:40:13 -!- ehird_ has changed nick to ehird.
19:56:07 -!- Iskr_ has joined.
19:57:21 -!- Iskr has quit (Read error: 110 (Connection timed out)).
19:57:33 -!- pikhq has quit ("Au revoir.").
20:19:54 -!- hyber has left (?).
20:39:39 -!- kar8nga has joined.
20:53:49 <RodgerTheGreat> who's totally psyched about the mars landing this afternoon?
20:55:37 <ehird> RodgerTheGreat: you
20:55:51 * oerjan wasn't as he'd forgotten about it
21:10:09 <ehird> oklopol: infinite d 5iar!
21:13:58 <oerjan> oklopol: apparently there is a giant mars bar somewhere in space, that they're trying to land a probe on
21:14:25 <oerjan> it's right next to russell's teapot
21:14:44 <oklopol> i guess this is the wrong place to ask!
21:15:45 <oerjan> earth is a nice place to ask, as long as you don't mind some geeky answers
21:16:11 <oklopol> is there a mars landing coming up?
21:17:10 <oerjan> in a little less than four hours, iicc
21:19:44 <ehird> oklopol: INFd5iar!
21:19:48 <oerjan> or specifically, their probe
21:20:16 <oklopol> oh, right, no humans involved
21:20:28 <oklopol> i thought even i would've heard
21:20:54 <ehird> hahhahahahahahahhah
21:21:01 <ehird> oklopol: and yeah. but have you thought about infd->2d?
21:21:03 <ehird> I'm sure YOU can do it.
21:21:11 <ehird> oklopol: just, like, select _which_ dimensions to explore
21:21:18 <ehird> and have keycombos that switcheroo around them
21:21:44 <oklopol> it might already be helpful to plot the generator lists on a 2d graph.
21:22:02 <ehird> oklopol: as long as I can see some kind of idea of what game I am actually playing i'll be happy
21:22:10 <oklopol> for the "point" 0 1 2 3 4 3 2 1 0 1 2 3 4 3 etc, draw a zigzag line
21:22:18 <oklopol> you can do some visualization on that
21:23:05 <ehird> oklopol: I dunno. Just write it and let me see. :P
21:23:36 <oklopol> ...using tinygame perhaps?
21:23:54 <oklopol> I SHALL WRITE AN IRC CLIENT FOR PLAYING INF-ANF-OH
21:24:03 <oklopol> uh, don't you just love the name
21:24:19 <ehird> oklopol: in tinygame, yeah!
21:24:22 <ehird> tinygame is sooo awesome
21:28:44 <oklopol> ehird: :DDDDDDDDDDDDDDDD:D:D:D:D:D:D:DDDDDDDDDDD:D
21:29:33 <ehird> oklopol: should i develop tinygame some more
21:29:37 <ehird> so it's fast and has cool stuff.
21:31:20 -!- RedDak has joined.
21:40:26 -!- timotiis has joined.
21:40:54 <ehird> oerjan: okokokokokokokokokokokokokokokokokokokokoko
21:41:22 <ehird> we want an o tower
21:42:30 <ehird> okokokokokokokokoko
21:42:42 <ehird> okokokokokokokokokokoko
21:42:46 <oerjan> okokokokokokokokokokoko
21:42:50 <ehird> okokokokokokokokokokoko
21:43:00 <ehird> okokokokokokokokoko
21:43:45 <oerjan> aka an oko ode to the collapse of civilization
21:43:58 <ehird> oerjan: damnit, I am going to write the most amazing script ever
21:44:02 <ehird> oerjan: it lets you organize an oko performance
21:44:21 <ehird> oklopol: approval?
21:44:37 -!- kar8nga has left (?).
21:46:56 <ehird> oklopol: yeah, you'll be able to write whole oko plays
21:47:42 <ehird> oklopol: it'll have a mini language
21:48:09 <ehird> oklopol: for example
21:48:13 <ehird> to wait from 2 to 5 seconds
21:49:30 <ehird> oklopol: oh oh oh!
21:49:34 <ehird> and a way to select RANDOM OKOS
21:52:26 <ehird> oklopol: I am writing the first okoperformancescript
21:54:26 <ehird> oklopol: wow, my okoperformancescript language rocks
21:55:05 <ehird> oklopol: it stars 'oko' and 'kok' this one does
21:55:52 <ehird> oklopol: it includes a SUPRISE
21:56:10 -!- inf-anf-oh has joined.
21:56:24 <oklopol> oerjan: want to battle me?
21:57:11 <oklopol> it is possible, btw, that cyclic infinite dimensional 5-in-a-row is equivalent to 2-dimensional in gamular complexity
21:58:40 <oklopol> AnMaster atsampson bsmntbombdood cherez clog cmeme Corun dbc Deewiant Deformative ehird fizzie GregorR inf-anf-oh Iskr_ Judofyr lament lifthrasiir mtve oerjan oklopol olsner Phenax Quendus RedDak RodgerTheGreat sebbu sekhmet SimonRC slereah__ timotiis
21:58:53 <oklopol> bsmntbombdood: join the game!
21:59:04 <oklopol> i wanted to do a full highlight for the first time in my life
21:59:10 <RedDak> oklopol, no highlightarmi che mi scassi la minkia
21:59:13 <oklopol> always wondered how it would feel
21:59:22 * atsampson tries to thing of a polite way of saying "bugger off"
22:00:26 * olsner treats oklopol to a can of whoop-ass
22:00:59 <olsner> whose sleep? yours or oklopol's?
22:01:03 * Quendus throws a pragmatist at ehird
22:01:37 <ehird> Deformative: fuck you too
22:02:43 <ehird> oklopol: damn my oko-utterance-er rocks
22:02:53 <ehird> it's being fun to write!
22:06:37 <inf-anf-oh> Starting game with players: oklopol and ehird.
22:09:52 <oklopol> i should make an ai for this
22:10:10 <oklopol> or we should be playing this a bit more asynchronously
22:10:18 <ehird> ANYONE WHO WANTS TO SEE THE PROTOTYPE OF MY OKOTTERENCES BOT THINGY, JOIN #esoteric-blah
22:32:27 -!- RedDak has quit (Remote closed the connection).
22:46:51 -!- Iskr_ has quit ("Leaving").
22:47:37 <ehird> oklopol: ping to #esoteric-blah
22:49:03 <ehird> oerjan: what about you
22:49:08 <ehird> do you want to see okotterences
22:49:47 -!- ehird has changed nick to ehird`.
22:49:54 -!- ehird` has changed nick to ehird.
22:56:27 <oerjan> no, i want to go to bed
22:56:35 -!- oerjan has quit ("Good night").
23:17:21 -!- ehird has changed nick to ehird_.
23:23:20 -!- ehird_ has changed nick to ehird.
23:23:32 <ehird> who wants some okoturrences in here?
23:36:55 <ehird> oklopol: STAND BY FOR COOL:
23:37:03 -!- oko has joined.
23:37:03 -!- kok has joined.
23:37:11 <kok> okokokokoko
23:37:13 <oko> okokokokokoko
23:37:13 -!- ihope has joined.
23:37:13 <kok> okokokokokokoko
23:37:16 <oko> okokokokokokokok
23:37:25 <oko> try again?
23:37:38 <kok> okokokokoko
23:37:41 <oko> okokokokokoko
23:37:41 <kok> okokokokokokoko
23:37:43 <oko> okokokokokokokoko
23:37:44 <kok> okokokokokokokokoko
23:37:47 <kok> okokokokokokokokokoko
23:37:47 <oko> okokokokokokokokoko
23:37:49 <kok> okokokokokokokoko
23:37:50 <oko> okokokokokokoko
23:37:52 <kok> okokokokokoko
23:37:53 <oko> okokokokoko
23:38:03 <oko> awesome!!!!
23:38:06 <kok> haha, yeah
23:38:10 <kok> well, guess that's all
23:38:15 <kok> bye folks!
23:38:18 -!- kok has left (?).
23:38:22 <oko> guess i'd better go too... bye :)
23:38:24 -!- oko has quit (Read error: 104 (Connection reset by peer)).
23:38:30 <ihope> Oko kok oko kok oko kok oko kok oko kok oko kok oko kok oko kok oko kok oko kok oko kok oko oko oko ok ok ok ook ok ok ok ok ok okok oko oko oko.
23:38:37 <ehird> oklopol: was that AMAZING or.
23:39:06 <oklopol> but now that i come to think of it, it's simply knowing your own nick, and waiting for others to finish their part
23:39:12 <ehird> oklopol: not really
23:39:21 <ehird> oklopol: the point is that its a AWESOME LANGUAGE for defining oko-plays
23:39:41 <ehird> oklopol: take a look at the script that produced the above - http://pastebin.ca/1029302
23:42:13 <oklopol> implicit joins for all people in the play?
23:42:38 <oklopol> also you might wanna add raw's, so you could make more lively plays
23:42:55 <oklopol> then some simple string manipulation perhaps
23:43:15 <oklopol> that nick shorthand syntax could also be used for variables
23:43:15 <ehird> oklopol: implicit joins oops that's a problem
23:43:28 <ehird> ok, string manip is a bit far
23:43:31 <ehird> its for pre-scripted things
23:43:34 <oklopol> i do like the idea of enacting shakespeare on irc
23:43:46 <ehird> oklopol: its basically BlimLimb by _why though
23:43:59 <ehird> oklopol: http://hackety.org/2008/05/16/blimlimb.html
23:47:28 <ehird> oklopol: I will write an ALTIMAT one though
23:47:31 <ehird> oklopol: that lets you even embed code
23:47:35 <ehird> oklopol: so you can eg. have
23:47:39 <ehird> <bot> who will volunteer?
23:47:46 <ehird> <bot> ok, guy, are you sure?
23:47:52 <ehird> <bot> ok. here is an X, guy
23:47:56 <ehird> <bot> are you ready guy??
23:48:33 -!- olsner has quit ("Leaving").
00:17:28 <ihope> Hmm, who's this inf-anf-oh?
00:20:12 <ehird> ihope: @join-er-ate it.
00:20:39 <inf-anf-oh> Number of players not an integer greater than one.
00:20:45 <inf-anf-oh> Starting game with players: ehird and ihope.
00:20:51 <ehird> ihope: It's infinite-D tic tac toe
00:21:02 <ehird> ihope: Basically, any finite length list of co-ords is cyclec.
00:21:10 <ehird> ihope: And you have two speshul syntaxes:
00:21:17 <ehird> <a b c> range with c as step
00:21:25 <ehird> 'for each thing named a in b'
00:21:45 <ehird> {5 1 5 2 5 3 .. 5 50 5 1}
00:22:08 <ehird> ihope: er, when I said tic tac toe
00:22:10 <ehird> I meant five in a row
00:23:11 <ihope> @move [a <1 50> [b <1 50> {a b}]]
00:23:40 <ehird> i'm not actually doing 5 in a row here
00:23:54 <ihope> I have no idea. :-P
00:25:02 <ehird> ihope: It's oklopol's btw.
00:51:44 -!- UnrelatedToQaz has joined.
00:52:51 <ehird> UnrelatedToQaz: BECOME QAZ
00:52:53 -!- ehird has changed nick to Qaz.
00:52:56 -!- Qaz has changed nick to ehird.
00:53:31 <UnrelatedToQaz> Shouldn't the title be something like "(international hub) for (esoteric (programming languages))"?
00:53:40 <ehird> UnrelatedToQaz: Probably.
00:53:48 <ehird> UnrelatedToQaz: Also, Qaz is used on one place: wikipedia
00:54:16 <ehird> UnrelatedToQaz: Are you the wikipedia qaz?
00:54:36 <ehird> UnrelatedToQaz: Apart from making a joke out of your nick.
00:55:19 -!- ehird has changed nick to tozogt.
00:55:29 <tozogt> UnrelatedToQaz: This magic nickname will help me get qaz!
00:55:35 <tozogt> (ehird has already claimed too many nicks in #freenode)
00:56:43 -!- tozogt has changed nick to Qaz.
00:57:10 <Qaz> HAHAHAHAAHAHHAHA
00:57:11 <Qaz> IT IS MINE
00:57:18 <Qaz> I WOULD USE THIS EVERYWHERE IF A WIKIPEDIA-FAG HADN'T TAKEN IT
00:57:31 <Qaz> UnrelatedToQaz: Yes, but it was registered.
00:58:12 <Qaz> ok, the wp guy is the _only_ guy using Qaz I can find
00:58:15 <Qaz> unfortunately, I kinda like WP.
00:58:19 <Qaz> so I can't use this nick everywhere
00:58:28 -!- UnrelatedToQaz has set topic: (international hub) for (esoteric (programming languages)) ^D http://tunes.org/~nef/logs/esoteric ^D^D.
00:58:43 -!- UnrelatedToQaz has left (?).
00:58:47 -!- UnrelatedToQaz has joined.
01:01:43 -!- Qaz has set topic: UnrelatedtoaxqzUnrelatedtoaxqzUnrelatedtoaxqzUnrelatedtoaxqz http://tunes.org/~nef/logs/esoteric.
01:01:47 -!- Qaz has changed nick to ehird.
01:06:14 <ehird> UnrelatedToQaz: dunno?
01:06:40 <UnrelatedToQaz> ehird: you're the one who changed the topic to show that this thread is unrelated to e
01:06:49 <ehird> UnrelatedToQaz: :)
01:07:09 -!- ehird has set topic: http://tunes.org/~nef/logs/esoteric.
01:09:13 -!- UnrelatedToQaz has set topic: UnrelatedToEhird http://tunes.org/~nef/logs/esoteric.
01:09:29 -!- AnMaster_ has joined.
01:10:09 -!- UnrelatedToQaz has set topic: -- This topic is certified UnrelatedToEhird -- Logs: http://tunes.org/~nef/logs/esoteric --.
01:10:19 -!- UnrelatedToQaz has left (?).
01:10:22 -!- UnrelatedToQaz has joined.
01:14:09 -!- UnrelatedToQaz has left (?).
01:20:17 -!- AnMaster has quit (Connection timed out).
01:21:11 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:37:50 -!- ehird has quit (Remote closed the connection).
01:48:48 -!- Slereah has joined.
01:49:11 -!- slereah__ has quit (Read error: 104 (Connection reset by peer)).
02:00:50 <ihope> Hmm. The phrase "international hub for esoteric programming languages" is really just the word "hub" with "international" and "for esoteric programming languages" tacked on. In the phrase "for esoteric programming languages", you have the indicator thingy, "for", followed by "esoteric programming languages", which is "esoteric" and "programming" tacked onto "languages".
02:00:57 * ihope congratulates himself
02:01:41 <ihope> If you were to reduce that phrase fully, you'd have "hub"; expand it a bit and you get "international hub for languages", then "international hub for programming languages", then "international hub for esoteric programming languages".
02:09:37 -!- Corun has quit ("This computer has gone to sleep").
02:13:08 <oklopol> (international ((esoteric (programming language)) hub)) is the whole description tree
02:13:19 <oklopol> (a b) is b, with a as a descriptor
02:13:39 <oklopol> you can always drop a, because (a b) is always, b, and a is just additional information.
03:03:53 <ihope> (international hub [for (esoteric (programming languages))])
03:05:36 <ihope> Or maybe better: hub [for (languages programming esoteric)] international
03:07:48 <ihope> [This (is [a sentence])]. [You (like do ([this sentence] [of mine]))]?
03:09:33 <oklopol> for is not important there
03:09:58 <oklopol> it is just another way to attach information to "international hub"
03:10:35 <oklopol> in this case just "international esoteric programming language hub" is unambiguous enough
03:11:06 <oklopol> and if it weren't, using that structure for a sentence with for is a bit too englishish to be a formalization
03:11:11 <ihope> But the "for" still exists.
03:11:25 <ihope> I'm not after formalization; I'm after description. Or something.
03:11:43 <oklopol> i thought you were breaking it down
03:11:53 <oklopol> "for" doesn't carry meaning there
03:12:27 <oklopol> (well technically it does, but not important here)
03:12:49 <ihope> I'm breaking it down, kind of detailing all the grammatical constructs. "For" is part of a grammatical construct.
03:13:26 <oklopol> (This (is [a sentence])]. [You (like do ([this sentence] [of mine]))] can you help me with the meanings of () and []?
03:15:15 <ihope> Well, () is just used for grouping things together into phrases. "Phrase1 phrase2" functions as phrase1 with phrase2 somehow modifying it. [Phrase1 phrase2] is some other construct that behaves as neither phrase1 nor phrase2; maybe phrase1 is always an "indicator word" like "for" and phrase2 is always something of meaning.
03:32:29 -!- Slereah has quit ("Konversation terminated!").
05:49:02 -!- GreaseMonkey has joined.
06:16:50 -!- sekhmet has quit ("zomg").
06:20:53 -!- sekhmet has joined.
06:38:19 -!- Slereah has joined.
06:39:02 <Slereah> Would you have any sort of idea as of why, with my reinstallation of windows and the NVIDIA pilot, I'm currently in 16 colors, without the possibility to go higher
06:39:27 <Slereah> I had more colors *before* installing the pilot, for some reason
06:41:30 <Slereah> I hate reinstalling windows.
06:51:44 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
07:41:40 -!- Slereah_ has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:22 -!- AnMaster_ has changed nick to AnMaster.
08:02:25 <AnMaster> oklopol, WHAT? was that highlight for?
08:12:17 -!- AnMaster has quit ("ERC Version 5.3 (IRC client for Emacs)").
08:35:13 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
09:07:29 -!- Corun has joined.
09:14:56 -!- jix has joined.
09:16:16 -!- Iskr has joined.
09:28:12 -!- Corun has quit ("This computer has gone to sleep").
09:38:59 -!- timotiis has joined.
10:34:43 -!- GreaseMonkey has quit ("Unisex.").
10:36:01 -!- jix has quit (Nick collision from services.).
10:36:08 -!- jix has joined.
10:51:47 -!- AnMaster has joined.
11:37:12 <oklopol> AnMaster: it was about playing inf-anf-oh
11:38:58 <oklopol> the great thing about this channel is i can explain anything as many times as i like :D
11:41:48 <oklopol> well you gotta join, don't you?
11:44:25 <oklopol> i'm not sure if anyone has given any thought to this at all, but as i've explained a few times, the row of 5 doesn't need to be actually adjacent pieces (so where for each element L of the distance vector L = 0 | L = -1 | L = 1), which constraint 2d5iar has
11:44:49 <oklopol> it is automatically "next to" infinity pieces
11:45:04 <oklopol> so i'm pretty sure the game is trivial.
11:45:23 <AnMaster> you mean scrabble or whatever it is called in English?
11:45:25 <oklopol> there is an infinite-dimensional space
11:45:44 <oklopol> and you can add "pieces", meaning you can color one of these points to your color each turn
11:45:55 <AnMaster> oh, tic-tac-toe or whatever that name is in English?
11:46:22 <oklopol> i think infinite dimensional 5iar might be analogous to 5iar played on the complex plane
11:46:42 <oklopol> AnMaster: tic-tac-toe, except infinite grid and 5 in a row instead of 3
11:46:57 <AnMaster> and can you overwrite other ppl?
11:47:25 <oklopol> othello has nothing to do with rows
11:47:39 <AnMaster> hm? true, you convert in lines iirc
11:47:53 <oklopol> well the surrounding rules have to do with rows
11:47:53 <AnMaster> oklopol, anyway what about complex number plane what on earth has that got to do tic-tac-toe?
11:48:02 <oklopol> but the *goal* has nothing to do with rows
11:48:19 <AnMaster> (so esoteric involving complex numbers with a very simple game like that, hehehe)
11:49:15 <AnMaster> aye, a Cartesian coordinate system
11:49:42 <oklopol> and a 5-in-a-row is a 5-tuple (a,b,c,d,e) of pieces of your color where for some (n!=(0,0) and for each i in n: i is one of (-1,0,1)), a+4n = b+3n = c+2n = d+n = e
11:50:25 <oklopol> well 2d vector really, addition is mapped over axis ofc
11:50:50 <oklopol> are you asking the reason for the formalization?
11:51:02 <AnMaster> oklopol, well no this *is* #esoteric
11:51:10 <oklopol> the formalization is necessary
11:51:21 <oklopol> because now it's trivial to explain how to play on the real plane
11:51:42 <oklopol> you can insert a piece *anywhere* on the plane
11:52:29 <oklopol> and a 5-in-a-row is what it is in a normal 5iar, except n can be *any* 2-tuple
11:52:51 <oklopol> if (0,0) was allowed, you'd win on the first turn
11:53:02 <AnMaster> oklopol, anyway what about (inf,inf)?
11:53:03 <oklopol> because (a,a,a,a,a) is a 5-in-a-row then
11:53:40 <oklopol> well, i did specify it's just *reals*
11:54:07 <oklopol> in reality, you have to have some "explanation scheme" for the reals you can actually use
11:54:14 <oklopol> because you cannot explain all reals
11:54:43 <AnMaster> anyway irrational numbers will be fun in this
11:55:13 <oklopol> that's a bit too restrictive
11:55:33 <oklopol> probably some clever number type, dunno
11:56:21 <oklopol> i think playing 5iar on a 1-d real range is less restrictive than my current infinite dimensional one, even if you just have cyclic stuff.
11:56:34 <AnMaster> A is Ackermann's function, G is Graham's number
11:57:36 <AnMaster> good luck making a program that can handle that
11:58:12 <AnMaster> float wouldn't work anyway, because you could always insert at smaller resolution than double or whatever can handle
11:58:58 <oklopol> if it has a way to calculate A and G, you can just store the calculation
11:59:14 <oklopol> if it doesn't, there's no way you insert that
12:03:31 -!- Slereah_ has joined.
12:04:22 -!- jix has quit ("This computer has gone to sleep").
12:06:57 -!- jix has joined.
12:07:45 <AnMaster> oklopol, it would be a too huge number to write out in this universe
12:11:13 -!- jix has quit (Client Quit).
12:11:22 <AnMaster> <AnMaster> A is Ackermann's function, G is Graham's number
12:11:54 <AnMaster> Slereah_, oklopol is planning(?) some kind of 5-in-a-row on the real number plane
12:15:21 <Slereah_> G alone is too big to write already.
12:21:47 <AnMaster> Slereah_, something like tic-tac-toe
12:23:17 -!- oklopol has quit (Read error: 113 (No route to host)).
12:24:06 -!- inf-anf-oh has quit (Read error: 113 (No route to host)).
12:29:55 <Slereah_> Wouldn't a Tic Tac Toe on the real plane be infinitely long?
12:30:41 <Slereah_> Since you can't exhaust the way to put 5, in a row
12:45:39 -!- RedDak has joined.
14:44:41 -!- jix has joined.
14:51:54 -!- jix has quit ("CommandQ").
14:52:35 -!- jix has joined.
14:53:17 -!- RedDak has quit (Remote closed the connection).
14:58:16 -!- RedDak has joined.
15:07:40 -!- timotiis has quit (Read error: 110 (Connection timed out)).
15:33:47 <ihope> Hmm, it's like a five-in-a-row in infinite-dimensional space, isn't it?
15:34:57 <Slereah_> The word "plane" would make you think not
15:35:59 <Slereah_> It would sound like "Put a cross anywhere on a map"
15:36:23 <Slereah_> And since you can't exhaust any row, it would be pretty easy to win. Or lose.
15:36:45 <Slereah_> But if it's in a discrete infinite dimensional space, who knows.
15:37:14 <Slereah_> It should also prolly be of finite extent, otherwise you fall into the same problem again
15:37:54 <Slereah_> Unless you need to have a row uninterrupted by the other guy
15:42:53 -!- timotiis has joined.
15:46:22 -!- ais523 has joined.
15:48:53 -!- ehird has joined.
15:51:54 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
15:53:13 -!- ehird has joined.
15:54:26 <Slereah_> Would you like to make some cool money, ehird?
15:54:36 <ehird> Do you want help with php maila?
15:54:52 <ehird> (Oh lord, have we got _another_ #esoteric meme?)
15:55:00 <Slereah_> Where you will need to hack into a bakery, to get some cake.
15:55:13 <Slereah_> Well, it's not everyday we get a good laugh like this!
15:55:16 <ehird> Slereah_: I am very experience with hack.
15:55:25 <ehird> What is the specification?
15:55:40 <ais523> which bit of that is the new meme?
15:55:47 <ehird> ais523: all of it!
15:55:48 <ais523> Slereah_ and the delicious cake?
15:56:00 <ehird> ais523: mikemorg came in here asking for hackers to do 'buziness'
15:56:05 <ehird> ais523: he was from nigeria, apparently
15:56:10 <ehird> but yeah, he wanted me to hack a bank or something
15:56:17 <ehird> oh, and he kept asking for help with 'php maila'
15:56:24 <ehird> presumably an anonymous mailing script written in php.
15:56:27 <Slereah_> I don't want to be racist, but it's hard with all those Nigerian conmen.
15:58:10 <ehird> 07:33:47 <ihope> Hmm, it's like a five-in-a-row in infinite-dimensional space, isn't it?
15:59:50 <Slereah_> Is it on the real plane and all as advertised?
16:04:33 -!- calamari has joined.
16:05:05 <ehird> Factor is interesting
16:05:13 <ehird> esp. how well it does unicode
16:32:52 <ehird> ais523: #rootnomic? Can't /invite, I don't have ops.
17:04:30 <ehird> TODAY, CHILDREN: How to make python code make no sense at al
17:04:33 <ehird> True, False = False, True
17:07:07 <ehird> RodgerTheGreat: in smalltalk you can do:
17:07:09 <ehird> true become: false
17:07:13 <ehird> and *every* true value becomes false
17:07:17 <ehird> the true object literally morphs into false
17:07:22 <ehird> RodgerTheGreat: Then, it promptly crashes.
17:07:35 -!- RedDak has quit ("Killed (NickServ (Comando GHOST usato da DIO))").
17:07:58 <RodgerTheGreat> I like Intercal's "PLEASE ABSTAIN FROM ABSTAINING", but that's kindof a different idea
17:08:07 <ais523> RodgerTheGreat: and reversible, too
17:09:06 <ehird> RodgerTheGreat: no
17:09:11 <ehird> #t is a special reader form
17:09:16 <ais523> well, in INTERCAL, it's possible to write DO #2 <- #1
17:09:17 <ehird> besides it would be set!
17:09:38 <RodgerTheGreat> stdin::0: define: bad syntax at: #t in: (define #t #f)
17:09:39 <ais523> but C-INTERCAL requires a compiler switch to let you do that, it's in a sort of safe mode by default where you can't change constants
17:09:46 <ehird> RodgerTheGreat: what scheme do you use?
17:10:24 <RodgerTheGreat> "Welcome to MzScheme v372 [3m], Copyright (c) 2004-2007 PLT Scheme Inc."
17:10:57 <ehird> I was thinking maybe guile or somethign else horrid
17:11:40 <RodgerTheGreat> I like the DrScheme package- it has a great OSX version, and I have it installed on my linux machine, too
17:18:55 * SimonRC listens to ais523's radio interview
17:19:17 <ais523> it wasn't all that interesting, really, but it wasn't a disaster
17:19:27 <ehird> SimonRC: oooh what
17:19:40 <ehird> also, what I focused #esoteric for - anyone here like http://www.pixelcomic.net/?
17:19:48 <ehird> it's very silly, it sounds like something i would write
17:19:53 <ais523> wow, I didn't realise that link was still available
17:19:54 <ehird> the uppercase starts to hurt your eyes after a while htough
17:20:23 <SimonRC> http://www.bbc.co.uk/mediaselector/check/player/nol/newsid_7170000/newsid_7179500?redirect=7179544.stm&news=1&nbram=1&bbwm=1&bbram=1&nbwm=1
17:20:36 <ehird> i bet it was a gripping interview
17:20:45 <ehird> 'so, you found the smallest turing machine in wolframs notation!'
17:20:57 <ehird> 'how do you think this will effect every day life?'
17:21:02 <ehird> 'um...er....uh...'
17:21:22 <SimonRC> I recall that the proof was a bit contraversial.
17:21:46 <ehird> SimonRC: it was, but, by about 3 people.
17:22:05 <SimonRC> they didn't like the required pre-processing
17:22:26 <ehird> yes. but they're silly
17:22:35 <ehird> anyway, how on earth do you make the wolfram proof a radio interview?
17:22:39 <ehird> i just can't see it
17:22:41 <ehird> [can't listen atm]
17:23:11 <SimonRC> ais523: BTW, how constructive is your proof?
17:23:48 -!- ehird has changed nick to ehird`.
17:23:49 <ihope> I think it's about as constructive as they get; I'm not sure.
17:23:55 -!- ehird` has changed nick to ehird.
17:24:07 <ais523> SimonRC: very constructive
17:24:20 <ais523> only the construction is infinitely long
17:26:47 <SimonRC> I figured out the command finally
17:26:55 <ehird> SimonRC: you do know we have public logs
17:27:16 <SimonRC> ehird: yeah, but I have logs with 1-second accuracy *and* logs of the privmsgs
17:27:43 <SimonRC> accept or deny as you wish
17:32:44 -!- Judofyr has quit.
17:36:07 <ehird> Fucking hell SimonRC.
17:38:31 <SimonRC> oh, it seems to be auto-repeating
17:39:42 <ehird> FUCK YOU WITH A RAKE SIMONRC
17:39:57 <SimonRC> right, I think they should be gone now
17:40:48 * SimonRC guesses that dcc sends pop up a modal dialog for ehird.
17:41:53 <SimonRC> but I can only abort one send at a time
17:42:09 <SimonRC> and that immediately causes the following one to be started
17:44:31 <ais523> so, what happened? SimonRC dcc'd a lot of information to ehird and couldn't stop it?
17:47:58 <ehird> ASJHKJDFHAJLSDFHAKSDJFASDF
17:48:02 <ehird> MY MOUSE IS WORKING CRAP :\
17:51:01 -!- kar8nga has joined.
17:55:31 <SimonRC> what order are the bytes of a 4-byte x86 word?
17:55:50 <SimonRC> big-, little-, or middle-endian?
17:56:06 <SimonRC> for some reason I was suspecting that they were middle-
17:56:09 <ais523> I'm not completely certain, but I think that's right
17:56:24 <ais523> if you look at them with a debugger, though, they often look middle-endian
17:56:24 <SimonRC> I'm doing some low-level stuff
17:56:33 <ais523> because it tries to convert little-endian to big-endian for display
17:56:39 <ais523> but does it at the 32-bit level
18:25:25 <ehird> ais523: you use ubuntu, which is based on debian. so, is there an easy way to get ff3rc1?
18:25:28 <ehird> just wondering if you knew
18:25:39 <ais523> ehird: yes, wait for them to package it
18:25:52 <ehird> ais523: um, no. i'm on debian stable. You can see the problem here.
18:26:00 <ais523> ironically, at the time RC1 came out, the Ubuntu developers responsible were at a conference or something like that
18:26:13 <ais523> ehird: you'd have to grab a .deb and install it manually
18:26:19 <ehird> ais523: I can't find one :-P
18:26:25 <ais523> either that, or recompile from source in /usr/local
18:26:43 <ais523> and the reason you can't find one is because the responisble devs were at a conference
18:26:47 <ais523> no doubt they'll package it soon
18:27:24 <ehird> ais523: I can't use an ubuntu deb.
18:31:30 <ais523> what, not even an ubuntu source package?
18:31:44 <ais523> they should recompile on debian just as easily as they do on ubuntu
18:34:03 <ais523> ehird: BTW, what do you think of my latest Mad Scientist proposal?
18:34:13 <ais523> it looks really game-changing, but is actually a NOP
18:34:20 <ehird> ais523: it shouldn't, because they have different deps.
18:34:46 <ehird> ais523: and how is that a nop?
18:35:04 <ais523> ehird: it's impossible to define a win condition unless the rule doing so has a power of at least 2
18:35:08 <ais523> and I said this in the wrong channel
18:35:13 <ais523> I thought I was in #ircnomic
18:35:25 <ehird> ais523: oooooooooh
18:35:28 <ehird> get the monster rule to power 2!!!
18:35:31 <ehird> and get much winnies
18:36:16 <ais523> ehird: forcible move of thread to #ircnomic
18:47:14 -!- Sgeo has joined.
18:48:02 <ehird> We asked the oracle, “What would life be like without THE MONSTER?” ...and the oracle responded: “asdf”
19:12:53 -!- jix has quit (Nick collision from services.).
19:13:03 -!- jix has joined.
19:31:04 -!- olsner has joined.
19:31:35 <Sgeo> http://www.2meta.com/april-fools/1991/Unix-C-Hoax.html
19:32:19 <ehird> that's like as old as 1991! ...wait
19:35:18 -!- timotiis has quit (Read error: 110 (Connection timed out)).
19:37:03 -!- timotiis has joined.
19:44:33 -!- ehird has set topic: (:NAME "#esoteric" :TYPE (INTERNATIONAL-HUB (PROGRAMMING-LANGUAGES ESOTERIC)) :LOGS "http://tunes.org/~nef/logs/esoteric").
19:57:45 -!- Judofyr has joined.
20:14:57 -!- Corun has joined.
20:30:29 -!- ihope has quit (Read error: 104 (Connection reset by peer)).
21:07:53 -!- kar8nga has left (?).
21:07:59 -!- kar8nga has joined.
22:04:21 -!- olsner has quit ("Leaving").
22:14:11 -!- kar8nga has left (?).
22:37:28 -!- Corun_ has joined.
22:37:36 -!- Corun has quit (Read error: 104 (Connection reset by peer)).
23:07:28 <SimonRC> what part of "zzzzzzzzzzz" don't you understand?
23:07:44 <SimonRC> It means I'm going to bed.
23:07:51 <ais523> I'm slightly dubious on the eigthth too
23:12:45 -!- Iskr has quit ("Leaving").
23:17:54 <ehird> ais523: personally the 7th made me suspicious
23:18:26 <ais523> why, is it really a different Unicode character disguised as a z?
23:46:10 -!- jix has quit ("CommandQ").
23:52:51 <ehird> ais523: perlnomic is a turtle
23:55:41 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
00:00:19 <ehird> * ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"")
00:29:47 -!- Corun_ has quit ("This computer has gone to sleep").
00:50:55 -!- ehird has changed nick to tusho.
01:11:52 -!- Judofyr_ has joined.
01:11:52 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
01:20:48 -!- timotiis has quit (Read error: 110 (Connection timed out)).
02:04:33 -!- tusho has quit (Remote closed the connection).
05:09:38 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
05:28:24 -!- calamari has quit ("Leaving").
06:11:33 -!- lifthrasiir has quit ("leaving").
06:11:45 -!- lifthrasiir has joined.
06:13:29 -!- calamari has joined.
06:44:41 -!- calamari has quit ("Leaving").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:22:04 -!- GreaseMonkey has joined.
08:51:24 -!- Iskr has joined.
09:08:49 -!- lifthrasiir has quit (Read error: 110 (Connection timed out)).
09:10:31 -!- lifthrasiir has joined.
09:41:12 -!- Corun_ has joined.
09:45:07 -!- Corun_ has quit (Client Quit).
09:52:21 -!- lifthrasiir has quit (Read error: 110 (Connection timed out)).
10:18:16 -!- lifthrasiir has joined.
10:53:02 -!- Corun_ has joined.
11:17:07 -!- GreaseMonkey has quit ("Unisex.").
11:36:12 -!- Corun_ has quit ("This computer has gone to sleep").
12:25:15 -!- timotiis has joined.
13:05:39 -!- jix has joined.
13:26:35 -!- sebbu has quit ("reboot").
13:39:30 -!- sebbu has joined.
14:08:55 -!- BMeph has joined.
14:16:46 -!- augur has joined.
14:17:40 <augur> good morning esolangers! :D
14:26:32 -!- oklopol has joined.
14:40:47 -!- augur has left (?).
14:43:32 -!- augur has joined.
14:49:04 -!- augur has quit ("Leaving...").
14:49:19 -!- augur has joined.
14:56:33 -!- Corun_ has joined.
15:06:52 -!- timotiis has quit (Read error: 110 (Connection timed out)).
15:07:05 -!- augur_ has joined.
15:10:47 -!- augur_ has quit (Client Quit).
15:10:57 -!- augur_ has joined.
15:11:07 -!- augur has left (?).
15:18:36 -!- augur_ has changed nick to augur.
15:36:40 -!- augur has changed nick to psygnisfive.
16:04:03 -!- atsampson has quit (Read error: 110 (Connection timed out)).
16:15:48 -!- atsampson has joined.
16:31:19 -!- olsner has joined.
16:35:10 -!- Corun_ has quit ("Leaving").
18:46:17 -!- Sgeo has joined.
19:13:05 -!- jix has quit (Nick collision from services.).
19:13:15 -!- jix has joined.
19:51:49 <psygnisfive> ::hits oklopol with a rolled up news paper:: stop that
20:09:20 <oklopol> psygnisfive: how should i know
20:54:19 -!- psygnisfive has changed nick to augur.
20:54:23 -!- augur has changed nick to psygnisfive.
20:55:17 -!- psygnisfive has changed nick to augur.
21:02:49 -!- augur has changed nick to psygnisfive.
21:04:46 <AnMaster> psygnisfive, Varför inte walesiska?
21:08:19 <psygnisfive> listen you, just because you're finnish doesnt mean you should show off and speak swedish too
21:08:53 <oklopol> swedish is basically english
21:09:13 <AnMaster> <psygnisfive> listen you, just because you're finnish doesnt mean you should show off and speak swedish too
21:09:43 <oklopol> yeah it's an official second language
21:09:46 <AnMaster> and yes I know about that Finland got Swedish as second language
21:09:50 <oklopol> although mostly for historical reasons
21:10:02 <AnMaster> agreed, didn't we invade you or something ;P
21:10:08 <oklopol> (we were their sex slaves for a few hundred years)
21:10:17 <AnMaster> oklopol, not sex slaves I think?
21:10:45 <oklopol> perhaps not, i'm not a historician
21:10:47 <AnMaster> anyway we didn't have slavery back then, iirc Sweden was one of the very first countries to drop slavery
21:11:03 <oklopol> scandinavia did everything first
21:11:38 <oklopol> (or perhaps a scandinavian guy would hear mostly scandinavian pioneerings?)
21:11:57 <oklopol> psygnisfive: how can you know that?
21:12:02 <AnMaster> Slavery was forbidden in Sweden back in 1335
21:12:10 <AnMaster> quite early compared to most countries
21:12:16 <AnMaster> source http://sv.wikipedia.org/wiki/Tr%C3%A4ldom
21:12:26 <oklopol> i don't think we've ever had slaves in finland... we just collected berries
21:12:52 <AnMaster> oklopol, there wasn't really a lot of ppl in Finland back then
21:13:01 <oklopol> AnMaster: my point exactly
21:13:36 <AnMaster> psygnisfive, no no, that came later
21:13:38 <oklopol> psygnisfive: how can you know you'd like being my sex slave
21:13:53 -!- RedDak has joined.
21:15:21 <oklopol> but now i need to see the pic myself
21:15:42 -!- oklopol has left (?).
21:15:42 -!- oklopol has joined.
21:16:10 <AnMaster> oklopol and psygnisfive: what genders?
21:17:00 <oklopol> well g[au]y was a collective explanation
21:17:12 <psygnisfive> yes, oklopol refuses to say what his sexuality is
21:17:27 <psygnisfive> (Psst, AnMaster, that means he's gay incase you didn't know)
21:18:46 <oklopol> (well technically i did by saying that out loud)
21:19:50 <oklopol> i should take that pic off, i'm like the only one with a pic :D
21:20:13 <oklopol> well i can safely say i'm not entirely straight on irc
21:20:33 <psygnisfive> in that when you're on IRC you're not entirely straight
21:20:37 <oklopol> (at least behavioristically speaking, that is)
21:20:42 <psygnisfive> when you're on IRC you can say that you're not entirely straight
21:21:09 <oklopol> judging by my behavior on irc, i'm bi.
21:21:28 <oklopol> but really you should all know that.
21:21:35 <oklopol> bsmntbombdood: orgy tomorrow?
21:21:46 <AnMaster> lets get over this and go on to program!
21:22:28 -!- RedDak has quit (Remote closed the connection).
21:22:52 <oklopol> AnMaster is such a killjoy :D
21:24:10 <psygnisfive> AnMaster, little do you know that oklopol and I are infact sharing code samples from a new Esolang called ButtSecks
21:26:31 <oklopol> Buttfuck, just two commands, > for going forward, < for returning back
21:26:39 <oklopol> there's just two memory cells
21:27:03 <oklopol> perhaps "," and "." would've been better.
21:27:51 <psygnisfive> for IO, there command to output is 8===D~~
21:29:03 -!- Iskr has quit ("Leaving").
21:35:57 -!- timotiis has joined.
21:36:32 <psygnisfive> timotiis, would you like to join the hot gay sex?
21:36:44 <oklopol> timotiis is way older than you :)
21:36:47 <timotiis> I've been lurking in here for ages
21:37:04 <psygnisfive> oklopol: how do you know i dont like older men, huh?
21:38:21 <oklopol> well you figure that out on your own
21:39:18 <oklopol> sorry, i'm a bit slow as i'm being talked to and trying to listen
21:39:38 <oklopol> timotiis is way older an idler here
21:40:20 <psygnisfive> you mean he's been hanging out here for a while?
21:40:39 <oklopol> psygnisfive: hey, we got a new kid <<<
21:40:40 <timotiis> 21:39 < psygnisfive> hey, we got a new kid <-- that's how
21:40:43 <psygnisfive> he entered the channel, i invited him to the gaysexorgy
21:41:13 <timotiis> I suppose you can get away with it for now
21:41:27 <psygnisfive> but are you joining the gaysexorgyfest or not
21:41:47 <oklopol> bsmntbombdood is your best bet.
21:43:03 <timotiis> Also, what language is the topic in now?
21:44:22 <oklopol> timotiis: you supply the language, we supply the gay.
21:45:48 <oklopol> i made infer the other day
21:46:06 <oklopol> for playing infinite dimensional five-in-a-row
21:48:08 <oklopol> although, i've basically proved to myself it's pretty much 5iar on 1-dimensional reals
22:56:09 -!- jix has quit ("CommandQ").
23:30:49 -!- Sgeo_ has joined.
23:35:45 -!- BMeph has quit (Read error: 104 (Connection reset by peer)).
23:41:24 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
00:19:14 -!- Corun has joined.
00:33:02 -!- GregorR has quit (Read error: 110 (Connection timed out)).
00:33:15 -!- GregorR has joined.
00:43:52 -!- Quendus has changed nick to AAAAAAue4njxuz.
01:19:55 -!- Corun has quit ("This computer has gone to sleep").
01:37:00 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:50:31 -!- atsampso1 has joined.
01:51:03 -!- psygnisfive has quit ("Leaving...").
01:53:34 -!- augur has joined.
01:55:39 -!- atsampson has quit (Read error: 101 (Network is unreachable)).
03:09:04 -!- atsampson has joined.
03:09:26 -!- atsampso1 has quit (Read error: 110 (Connection timed out)).
03:43:15 -!- atsampson has quit (Read error: 110 (Connection timed out)).
03:45:41 <augur> ffffffffffffffffffffff
04:39:50 -!- Slereah has joined.
04:39:50 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
04:42:51 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
04:43:04 -!- Slereah_ has joined.
05:16:04 -!- Sgeo_ has quit (Remote closed the connection).
05:26:31 -!- CakeProphet has joined.
05:55:14 <augur> him in your ass? well whatever
05:55:18 -!- GreaseMonkey has joined.
06:01:09 -!- Dewi has joined.
06:53:01 -!- jix has joined.
07:27:59 -!- GreaseMonkey has quit ("Unisex.").
07:29:40 -!- augur has quit ("Leaving...").
07:45:49 -!- Slereah has joined.
07:48:51 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
07:56:55 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
07:59:26 -!- Slereah_ has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:06:43 -!- olsner has quit ("Leaving").
08:11:08 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
08:12:36 -!- Slereah_ has joined.
08:14:04 -!- sekhmet has quit (leguin.freenode.net irc.freenode.net).
08:15:47 -!- sekhmet has joined.
08:22:27 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
08:27:48 -!- CakeProphet has quit ("haaaaaaaaaa").
08:33:21 -!- Slereah_ has joined.
08:34:30 -!- CakeProphet has joined.
08:41:46 -!- Slereah has joined.
08:46:03 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
08:48:39 -!- CakeProphet has quit ("haaaaaaaaaa").
08:53:29 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
08:57:46 -!- Slereah_ has joined.
09:02:09 -!- Iskr has joined.
09:05:07 -!- Slereah has joined.
09:19:24 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
09:19:44 -!- Slereah_ has joined.
09:23:23 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
09:23:27 -!- Slereah_ has joined.
09:26:50 -!- Slereah has quit (Read error: 110 (Connection timed out)).
09:27:16 -!- Slereah has joined.
09:27:43 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
09:39:57 -!- Slereah_ has joined.
09:43:03 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
09:49:05 -!- Slereah has quit (Read error: 110 (Connection timed out)).
09:59:21 -!- Slereah has joined.
10:17:55 -!- Slereah has quit (Read error: 110 (Connection timed out)).
10:21:46 -!- Slereah_ has joined.
10:40:47 -!- Slereah has joined.
10:41:21 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
11:02:26 -!- Slereah has quit (Read error: 110 (Connection timed out)).
11:58:53 -!- Slereah_ has joined.
12:01:00 -!- Slereah has joined.
12:01:00 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
12:04:38 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
12:04:56 -!- Slereah_ has joined.
12:17:13 -!- oklopol has quit (Read error: 110 (Connection timed out)).
12:20:06 -!- Slereah has joined.
12:26:38 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
12:30:46 -!- Slereah_ has joined.
12:30:53 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
12:32:26 -!- Slereah has joined.
12:32:26 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
12:35:28 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
12:44:46 -!- Slereah has joined.
12:47:48 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
12:54:16 -!- timotiis has joined.
12:59:26 -!- Slereah has joined.
13:02:11 -!- Judofyr_ has changed nick to Judofyr.
13:02:19 -!- Corun has joined.
13:13:16 -!- Slereah_ has joined.
13:14:49 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
13:14:51 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
13:21:45 -!- Slereah has joined.
13:30:02 -!- Slereah_ has joined.
13:31:32 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
13:34:21 -!- Slereah_ has joined.
13:37:59 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
13:41:22 -!- Slereah_ has joined.
13:43:06 -!- Slereah has quit (Read error: 110 (Connection timed out)).
13:43:07 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
13:43:11 -!- Slereah_ has joined.
13:46:53 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
14:11:49 -!- BMeph has joined.
14:13:13 -!- Slereah has joined.
14:20:45 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
14:24:43 -!- Slereah has joined.
14:27:40 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
14:29:55 -!- Slereah has joined.
14:38:47 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
14:38:49 -!- Slereah has joined.
14:48:23 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
14:53:10 -!- Slereah has joined.
14:55:56 -!- Slereah_ has joined.
14:55:58 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
15:02:05 -!- Slereah has joined.
15:04:20 -!- timotiis has quit (Read error: 110 (Connection timed out)).
15:06:52 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
15:20:39 -!- augur has joined.
15:20:53 -!- Slereah has quit (Read error: 110 (Connection timed out)).
15:24:12 -!- Slereah has joined.
15:29:42 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
15:29:44 -!- Slereah has joined.
15:35:20 -!- Slereah_ has joined.
15:35:29 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
15:40:28 -!- Slereah has joined.
15:40:28 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
15:43:39 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
15:45:16 -!- Slereah_ has joined.
15:52:00 -!- oklopol has joined.
15:55:42 -!- Slereah has joined.
15:59:19 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
15:59:33 -!- Slereah has joined.
16:04:11 -!- Corun has changed nick to core-un.
16:04:15 -!- core-un has changed nick to Core-un.
16:06:55 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
16:10:43 -!- kar8nga has joined.
16:20:03 -!- augur has quit (Read error: 104 (Connection reset by peer)).
16:20:12 -!- augur has joined.
16:21:12 -!- Slereah has quit (Read error: 110 (Connection timed out)).
16:22:02 -!- Slereah_ has joined.
16:23:42 -!- Slereah has joined.
16:23:42 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
16:30:21 -!- kar8nga has left (?).
16:31:32 -!- Slereah_ has joined.
16:34:42 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
16:38:11 -!- Slereah has joined.
16:39:12 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
16:39:17 -!- bsmntbombdood_ has joined.
16:39:38 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
16:39:40 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
16:39:43 -!- Slereah_ has joined.
16:47:22 -!- Slereah has joined.
16:53:01 -!- Sgeo has joined.
16:58:31 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
16:59:21 -!- Slereah_ has joined.
17:06:12 -!- Slereah has quit (Read error: 110 (Connection timed out)).
17:09:32 -!- Slereah has joined.
17:11:01 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
17:17:22 -!- Slereah has joined.
17:20:55 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
17:23:37 -!- Slereah_ has joined.
17:29:54 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
17:31:43 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
17:38:19 -!- Slereah has joined.
17:45:03 -!- timotiis has joined.
17:46:00 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
17:46:12 -!- Slereah has joined.
17:49:40 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
17:54:17 -!- Slereah has joined.
17:56:03 -!- Slereah_ has joined.
17:56:03 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
17:59:41 -!- Slereah has joined.
17:59:42 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
18:02:56 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
18:07:22 -!- Slereah has joined.
18:21:59 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
18:28:12 -!- Slereah_ has joined.
18:29:39 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
18:37:24 -!- Slereah has joined.
18:38:31 -!- Core-un has quit ("This computer has gone to sleep").
18:38:59 -!- RedDak has joined.
18:44:03 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
18:47:05 -!- bsmntbombdood_ has quit (Read error: 104 (Connection reset by peer)).
18:47:22 -!- Slereah has joined.
18:49:11 -!- Slereah_ has joined.
18:51:27 -!- bsmntbombdood has joined.
19:06:12 -!- Slereah has quit (Read error: 110 (Connection timed out)).
19:09:54 -!- kar8nga has joined.
19:10:08 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
19:13:16 -!- jix has quit (Nick collision from services.).
19:13:26 -!- jix has joined.
19:19:17 -!- kar8nga has left (?).
19:22:12 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
19:22:38 -!- Judofyr has joined.
19:38:31 -!- Slereah has joined.
19:46:44 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
19:47:14 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
19:47:18 -!- Judofyr has joined.
19:47:40 -!- oerjan has joined.
19:48:47 -!- RedDak has quit (Remote closed the connection).
19:54:14 <oerjan> <psygnisfive> CANT TELL ITS NOT BRAINFUCK
19:54:20 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
19:55:17 <oerjan> clearly there needs to be an esolang called "I can't believe it's not brainfuck"
19:59:01 <oerjan> also, someone should investigate slereah's endless string of quits/joins for hidden encoded messages
19:59:16 -!- Slereah has joined.
20:04:09 <Slereah> It seems playing Half Life isn't good for my connection.
20:04:31 <oerjan> clearly it leaves you with a half connection
20:08:37 <augur> slereah, stop being so french.
20:13:13 <Deewiant> ahh, the joys of ./configure on Windows.
20:18:14 <AnMaster> <oerjan> clearly it leaves you with a half connection
20:19:13 <Deewiant> as soon as it can emulate the crappy OS properly
20:23:52 -!- olsner has joined.
20:26:08 <Deewiant> yay, now it completed properly
20:33:56 -!- RedDak has joined.
20:38:32 -!- augur has changed nick to God.
20:39:01 -!- God has changed nick to augur.
20:47:27 <GregorR> The subject for this Viagra spam is "Set your wife on fire" 8-O
20:48:16 * oerjan recalls a signature on the IWC forum: "If you set a man on fire he'll be warm for the rest of his life"
20:52:33 <Slereah> Marital immolation is a serious topic.
20:52:46 <Slereah> Shame on this spammer for making light of the subject.
21:09:46 -!- ihope has joined.
21:54:59 -!- Iskr has quit ("Leaving").
22:19:28 -!- jix has quit ("CommandQ").
22:20:24 -!- augur has changed nick to God.
22:20:45 -!- God has changed nick to augur.
22:38:27 -!- augur has changed nick to psygnisfive.
22:56:32 -!- RedDak has quit (Remote closed the connection).
22:57:38 -!- kar8nga has joined.
22:57:51 -!- kar8nga has left (?).
23:09:06 -!- ehird has joined.
23:09:14 <ehird> MY ISP CAN BLOW ME.
23:10:06 * oerjan thinks that would be a popular service if they could manage it
23:10:55 <olsner> it's the next logical step from providing you with porn, which most ISP:s already do
23:17:46 <ehird> I was thinking more how they left me without internet for almost 2 days straight
23:26:11 <ehird> <psygnisfive>i want to be oklopols sex slave
23:28:41 <ehird> <timotiis>Also, what language is the topic in now? <<< the gay
23:30:02 -!- lament has set topic: (:NAME "#ethoteric" :TYPE (INTERNATIONAL-HUB (PROGRAMMING-LANGUAGETH ETHOTERIC)) :LOGTH "http://tuneth.org/~nef/logth/ethoteric").
23:30:35 <ehird> technically that's against freenode rules
23:30:39 <ehird> (not a real log url)
23:30:49 <ehird> someone encrypt the topic with a one-time pad
23:31:31 <ehird> *oerjan recalls a signature on the IWC forum: "If you set a man on fire he'll be warm for the rest of his life"
23:31:40 <ehird> *oerjan recalls >a terry pratchett quote<: "If you set a man on fire he'll be warm for the rest of his life"
23:33:14 <oerjan> i do not believe those are intensionally equivalent
23:33:56 <ehird> oerjan: come on, it's a famous quote
23:33:58 <ehird> and he originated it
23:34:55 <oerjan> ah but i did not recall that it was a terry pratchett quote
23:35:10 <ehird> oerjan: okay, I was just sourcing it
23:35:58 <oerjan> whether i just forgot it or it is in one of the books i haven't read yet, i don't know
23:39:06 <ehird> oerjan: no, I think he just said it.
23:39:58 <oerjan> what? just going around saying quotes? who does he think he is, Oscar Wilde?
23:42:37 <ehird> Occupation: Says stuff. People quote it.
23:42:47 <ehird> Most popular quote: 'Have we got any toast?'
00:22:50 -!- oerjan has quit ("Habemus panem tostum?").
00:22:58 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:27:50 -!- olsner has quit ("Leaving").
00:32:22 <ehird> psygnisfive: Sorry. I'm such a faggotfag.
00:38:04 -!- BMeph has quit (Read error: 104 (Connection reset by peer)).
01:10:26 -!- sebbu has quit ("@").
01:20:09 -!- Core-un has joined.
01:31:12 <ehird> Core-un: Compiled haskell?...
01:32:14 <ehird> psygnisfive: Shut up, you.
01:32:48 <psygnisfive> you'll have to stick your cock in my mouth to make that happen
01:33:10 <ehird> psygnisfive: uh, thanks, but shut up
01:34:07 <ehird> Core-un: are you a reference to ghc/yhc core? :P
01:34:25 <Core-un> Just people were pronouncing my nick wrong
01:34:32 -!- Core-un has changed nick to Corun.
01:34:38 <ehird> Corun: oh then your nick sucks
01:35:45 <lament> what's with all the gay sex
01:35:53 <ehird> lament: you want to know do you?
01:36:02 <lament> it's like this channel is turning into #linguistics
01:38:54 -!- Polar has joined.
01:40:47 <ihope> We have a #linguistics?
01:43:28 -!- AAAAAAue4njxuz has quit (Read error: 104 (Connection reset by peer)).
01:43:33 -!- AAAAAAue4njxuz has joined.
01:43:37 -!- ehird has quit (Remote closed the connection).
01:44:00 -!- AAAAAAue4njxuz has changed nick to Quendus.
01:47:01 -!- boily has joined.
01:54:29 <lament> i shouldn't have mentioned #linguistics, now all the gay sex moved there instead
01:55:01 <ihope> I didn't know speaking Spanish was a form of gay sex.
01:58:24 -!- Corun has quit ("This computer has gone to sleep").
02:33:26 -!- Quendus has changed nick to AAAAAAue4njxuz.
02:38:18 -!- ihope has quit ("ChatZilla 0.9.82.1 [Firefox 2.0.0.14/2008040413]").
02:52:10 -!- boily has quit ("Leaving.").
03:48:55 -!- Polar has quit (leguin.freenode.net irc.freenode.net).
03:48:57 -!- cmeme has quit (leguin.freenode.net irc.freenode.net).
03:57:24 -!- Polar has joined.
03:57:24 -!- cmeme has joined.
04:01:04 -!- Sgeo has quit (Connection timed out).
04:33:36 <Deformative> I am trying to prove that a language is turing equivalent, how would I do this? Is implementing a turing machine an acceptable proof? What other tests are there?
05:30:57 <lament> more specifically, implementing a compiler from a turing-complete language to your language.
05:31:14 <lament> there's a bunch of nice turing-complete languages for which it is easy to write a compiler
05:31:33 <lament> LSK combinatory logic is another
05:32:04 <lament> register machines are another
05:35:09 <lament> (note that the compiler itself can be written in anything)
05:35:45 <lament> or writing an interpreter for that language in your language.
05:57:26 <psygnisfive> implementing a turing machine should be relatively simple to do tho
05:57:55 <lament> i don't think they're as simple as the three things i mentioned
05:58:09 <lament> well, they're on par but somehow clumsier
05:58:16 <lament> plus there's no standard notation for them
05:58:17 <psygnisfive> well, it depends on the language you're implementing it in i suppose
05:59:15 <lament> if your language is objective c, compiling C to it is the simplest way to prove turing-completeness :)
05:59:59 <psygnisfive> ofcourse, if you're objective-c, then doing so is pointless
06:02:12 <lament> compilation is a no-op, yes
06:05:48 <psygnisfive> you might want to try implementing a 5 tuple turing machine model
06:08:39 <psygnisfive> i'd be willing to look at your language and see if its possible on first glance
06:13:07 -!- GreaseMonkey has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:04:30 -!- olsner has joined.
08:28:30 -!- olsner has quit ("Leaving").
09:14:48 -!- Iskr has joined.
09:36:37 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
09:36:44 -!- Slereah has joined.
09:39:45 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
10:03:43 -!- Slereah_ has joined.
10:37:23 -!- GreaseMonkey has quit ("Unisex.").
11:04:53 -!- oklopol has joined.
11:16:44 <Deformative> psygnisfive: It seems it should work, but I am not sure. I know how the universal turing machine works, so I guess I will just attempt to implement one real fast.
11:21:36 -!- oklopol has set topic: (:NAME "#ethoteric" :TYPE (INTERNATIONAL-HUB (PROGRAMMING-LANGUAGETH ETHOTERIC)) :LOGTH "http://tuneth.org/~nef/logth/ethoteric") -- BUT CLICK HERE FOR LINK IF YOUR BROWSER DISLIKES LISP! http://tunes.org/~nef/logs/esoteric.
11:25:28 -!- Sgeo has joined.
11:26:07 -!- fizzie has quit (leguin.freenode.net irc.freenode.net).
11:26:33 <Slereah_> Deformative : Use a Post machine
11:27:06 -!- fizzie has joined.
11:31:39 <oklopol> yeah you can also compile to Ef
11:32:25 <oklopol> ef is my fixed-point language
11:45:26 -!- Sgeo has quit (Remote closed the connection).
12:17:28 -!- Corun has joined.
12:26:45 <Slereah_> It's a primitive Turing machine.
12:27:36 <Slereah_> An infinite tape, two states available for a cell, and the instructions are change to 0, change to 1, left, right and go to state 1 if 0 or state 2 if 1.
12:28:44 <Slereah_> Sort of what Boolfuck is to Brainfuck.
12:32:56 <Slereah_> All the other kids are doing it!
12:43:35 <oklopol> where the fuck is the windows installer i can just fucking click
12:45:30 <oklopol> guess i'll continue doing python
12:45:41 <oklopol> until i find a secretary, that is
12:46:58 <Slereah_> guess i'll continue doing python <- You furry.
13:13:20 -!- Corun has quit ("This computer has gone to sleep").
13:39:40 -!- atsampson has joined.
14:09:24 -!- BMeph has joined.
15:09:38 -!- RedDak has joined.
15:12:14 -!- BMeph69 has joined.
15:15:14 -!- jix has joined.
15:22:13 -!- BMeph has quit (Nick collision from services.).
15:22:56 -!- BMeph69 has changed nick to BMeph.
15:48:38 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
15:49:11 -!- Judofyr has joined.
15:51:36 -!- timotiis has joined.
16:00:41 -!- BMeph has quit (Remote closed the connection).
16:11:15 -!- sekhmet has quit (Remote closed the connection).
16:11:18 -!- sekhmet has joined.
16:11:30 -!- BMeph has joined.
16:43:11 -!- AAAAAAue4njxuz has quit (Read error: 104 (Connection reset by peer)).
16:43:19 -!- AAAAAAue4njxuz has joined.
16:48:49 -!- ehird has joined.
16:49:03 <ehird> oklopol's topic owns
16:51:45 <oklopol> ehird: well i put it up out of necessity :)
16:52:06 <ehird> oklopol: did freenode complain
16:52:57 <oklopol> good news, btw, i'm thinking about installing linux on this machine
16:53:06 <oklopol> i assume that's good news :D
16:53:40 <ehird> oklopol: YES, it is
16:54:07 <ehird> oklopol: but plz just get the latest ubuntu because otherwise you'll yell at me about some software not being easily installable or something :p
16:54:36 <oklopol> last time i didn't install it myself, was already there, installed ages ago
16:54:41 <ehird> oklopol: http://www.ubuntu.com/getubuntu/download :P
16:55:16 <ehird> step 1. choose location, step 2. click download, step 3. burn to cd, step 4. boot up cd and choose 'Install' step 5. do what it says step 6. step 6 was eaten by a bird
16:55:29 <ehird> (THE ZONK IS REQUIRED)
16:55:37 <oklopol> another new thing on my todo list, i wanna fail @ making my own OS, haven't done that yet
16:55:57 <oklopol> (i will be dissappointed if i don't fail, ofc)
16:55:57 <ehird> oklopol: oh its quite fun
16:56:03 <ehird> but the base os is uh always the same
16:56:12 <ehird> because there are about 2 tutorials in existance
16:56:15 <ehird> and both of their code is quite similar
16:56:26 <ehird> and you couldn't really deviate without knowing a lot about os dev :p
16:56:33 <ehird> so, yeah, its pretty boring because it's mostly copypasta.
16:56:36 <ehird> and then you get stuck.
16:57:02 <ehird> I'm gonna be ais523
16:58:09 -!- ais523 has joined.
16:58:20 <ehird> I was about to /nick ais523 while nickserv was down :|
16:58:25 <ehird> I guess you saw that, in the losg.
16:58:29 <ehird> And came to DEFEND YOUR IMAGE.
16:58:35 <BMeph> ehird: You forgot the two most important steps on your ubuntu setup!
16:58:45 <oklopol> ais is never here, he just refreshes logs every 10 secs and reads
16:58:46 <ais523> no, only just connected to the Internet
16:58:48 <ehird> BMeph: Sorry, they haven't worked out a business model yet.
16:59:11 <ehird> They don't want to '...' until they have figured out 'Profit'
16:59:26 <ais523> I thought it was ??? not ...
16:59:34 <BMeph> ehird: Well, then, here's your chance to help them. ;)
16:59:59 <ehird> BMeph: Sell their souls to binary driver manufacturers! Oh wait.
17:00:16 <ais523> ah, Ubuntu finally decided to package Firefox 3rc1
17:00:35 <ais523> although I'll keep using Epiphany until 3rc2 is out, probably, because of the fsync bug
17:00:44 <ehird> ais523: i shall wait patiently for debian.
17:00:48 <ehird> fuckin' dinosaurs..
17:01:24 <BMeph> ...is the newest Olympic summer sport! :)
17:01:42 <BMeph> Or is that summer Olympic sport? ;)
17:01:43 <oklopol> i think it's safer to fuck them when they're frozen
17:02:10 <BMeph> oklopol: Ah, but that wouldn't be "sporting," now, would it?
17:04:11 <oklopol> i'm not that sporty myself
17:04:13 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
17:05:27 -!- Slereah_ has joined.
17:05:57 <ehird> so, how zonk is the zonk zonk zonk zonk?
17:17:35 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
17:19:57 -!- RedDak has quit (Remote closed the connection).
17:21:52 -!- cherez1 has joined.
17:35:59 -!- Corun has joined.
17:38:19 -!- cherez has quit (Read error: 110 (Connection timed out)).
17:44:32 -!- Slereah has joined.
17:44:33 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
17:50:54 -!- uvanta has joined.
17:51:08 <ehird> * NickServ :Erroneous Nickname
17:51:51 -!- Corun has quit ("This computer has gone to sleep").
18:02:49 -!- ehird has quit (Remote closed the connection).
18:03:28 -!- ehird has joined.
18:09:20 -!- olsner has joined.
18:11:31 -!- kar8nga has joined.
18:15:15 -!- sebbu has joined.
18:26:12 -!- sebbu2 has joined.
18:29:33 -!- oklopol has joined.
18:37:19 -!- sebbu has quit (Read error: 113 (No route to host)).
18:37:20 -!- sebbu2 has changed nick to sebbu.
19:10:11 -!- oerjan has joined.
19:13:38 -!- jix has quit (Nick collision from services.).
19:13:48 -!- jix has joined.
19:27:00 -!- oklofok has joined.
19:29:24 -!- oklopol has quit (Read error: 113 (No route to host)).
19:40:50 -!- AnMaster has changed nick to AnMaster_.
19:40:57 -!- AnMaster_ has changed nick to AnMaster.
19:46:30 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
19:46:51 -!- Judofyr has joined.
19:47:45 <ehird> oklofok: infanfoh now
19:48:17 <ehird> ais523: infanfoh is oklofok's inf-d 5-in-a-row
19:48:30 <ais523> how large is the board?
19:48:41 <ais523> infinite in each dimension as well as infinite-dimensions?
19:49:47 <ais523> and are there any rules to negate the first player's advantage?
19:52:34 <ais523> while I used to enjoy 4x4x4x4 noughts-and-crosses, infinite-dimensional five-in-a-row seems hard to keep track of
19:52:46 <ais523> you couldn't even draw the entire board at once, you'd have to keep track of it some other way
19:53:07 <ehird> ais523: his is cli based
19:53:12 <ehird> runs as an irc bot
19:53:16 <ehird> & has no display per se
19:53:18 <ehird> you have to visualize it
19:53:26 <ehird> but it has a mini language for specifying positions, ais523
19:53:27 <ais523> that's why I prefer 4x4x4x4
19:53:31 <ehird> [a b c] for each a in b, c
19:53:41 <ehird> <a b c> a to b, step c
19:53:44 <ehird> and {...} a regular list
19:53:58 <ehird> {50 1 50 2 50 ... 50 10 50 1 50 2 ... }
20:04:42 -!- st01k has joined.
20:07:58 <ais523> wow, there are a lot of people in here
20:08:35 * ais523 wonders about the first in alphabetical order
20:09:56 <ehird> ais523: hes a regular ithink
20:10:02 <ehird> * [AAAAAAue4njxuz] (n=Quendion@145.175.adsl.brightview.com): Aleksander Nonymous
20:10:04 <ehird> quendion is familiar
20:10:14 <ais523> interesting nick, though
20:10:16 <ehird> ais523: I am investigating games programming in Haskell. Not much luck so far ...
20:10:35 <ais523> well, it would need bindings to some graphics lib, probably
20:10:40 <AnMaster> ehird, I think python's pygame may be better
20:10:55 <AnMaster> if you are non-esoteric that is
20:10:57 <ehird> AnMaster: Wow what a revolutionary idea
20:11:03 <ais523> ah, AnMaster, I haven't seen you for ages
20:11:12 <ehird> ais523: I was beginning to get optimistic :(
20:11:15 <ais523> mostly because I haven't been online
20:11:15 <AnMaster> ais523, I have been idling here
20:11:22 <ehird> ais523: there's already opengl and sdl bindings, anyway
20:11:27 <ehird> probably i'll go with sdl because it's simpler
20:11:32 <AnMaster> ais523, how goes the interfunge ;)
20:11:35 <ais523> opengl isn't that complicated
20:11:35 <ehird> but I want a purely-functional approach to sepreate rendering and event handling
20:11:37 <ais523> AnMaster: I've had exams
20:11:39 <ehird> which I think I can do
20:11:50 <ais523> ah, that explains it then
20:12:47 <AnMaster> still have, just one more week
20:12:54 <ais523> but only one exam in that week
20:17:11 <ais523> hmm... I just wrote "business" to mean "extent to which I'm busy"
20:17:40 <ehird> ais523: busyness is incorrect but useful in that case
20:18:00 <ais523> well, I like using correct English even if it produces silly results
20:18:06 <ais523> not sure if it was correct here, though
20:19:07 <ehird> AAAAAAue4njxuz: ha
20:19:20 <ais523> surely it depends on what sort of keyboard you're using?
20:19:29 * ais523 imagines trying to type with one's elbows on an iPhone
20:20:00 <ais523> although they're allegedly hard to type on even normally due to the lack of feedback
20:20:41 <ehird> you get used to it
20:20:50 <ehird> because of its auto-correction you can mostly just hit the right area
20:20:53 <ehird> it has some nifty tricks
20:25:36 <ehird> ais523: humph, I'm going to work on another pseudo-esoteric language.
20:25:43 <ehird> a stack-based, strongly typed a-la haskell and ML language
20:25:47 <ehird> maybe with dependent types.
20:26:20 <AnMaster> AAAAAAue4njxuz, you'd need HUGE keys
20:26:25 <ais523> I've been thinking about writing a Feather bootstrap for a while now
20:26:46 <ehird> cvkftgioufda\zc78dffgftgf8df980c
20:26:54 <ais523> because I'm getting fed up of waiting for a feather interp to spontaneously come into existence
20:27:00 <ehird> gcxoolio ediotglkc
20:27:34 <AAAAAAue4njxuz> AnMaster: only if you want to type accurately, which kind of defeats the point of elbow-typing :p
20:27:50 <AnMaster> AAAAAAue4njxuz, so that is your nick?
20:28:00 <ehird> AnMaster: feather is his infinitely-bootstrapped time-loop language
20:28:04 <ehird> all modifications to the language are always there
20:28:08 <ehird> and the base language creates itself
20:28:20 <ehird> AnMaster: no really
20:28:30 <ehird> AnMaster: it even has a paradox resolution mechanism
20:28:36 <ehird> for when you create a pime taradox
20:28:47 <ais523> AnMaster: a smalltalk-like language that uses retroactive changes to simulate inheritance because it doesn't have classes
20:28:52 <ehird> AnMaster: it's also a prototype-based smalltalk-esque OOP language
20:28:55 <ehird> with no inheritance
20:28:55 <ais523> I haven't written specs like, but I should do at some point
20:29:07 <ais523> objects are created by cloning other objects
20:29:12 <ais523> so you go back in time and alter what they cloned
20:29:50 <ais523> the issue with a code example is that the syntax can be modified at will by the programmer, and probably will be
20:29:57 <ais523> but the initial syntax is designed to be very simple
20:30:15 <oerjan> so this is a grand feather paradox?
20:30:27 <ais523> oerjan: it's not a paradox
20:30:36 <ais523> there's nothing paradoxical about its timetravel model
20:30:44 <ehird> + : 'a 'a -> 'a Num =>
20:31:06 <ais523> {^outputstream write "Hello, world!"}
20:31:12 <ehird> fix : 'a 'a -> 'a ->
20:31:20 <ehird> ais523: suggestion
20:31:23 <ais523> is an example of what a program could look like after you'd implemented a bit of syntactic sugar
20:31:24 <ehird> outputStream, not outputstream
20:31:35 <ais523> ehird: well, it's not part of the language
20:31:44 <ehird> ais523: I'm just saying, you should encourage it
20:31:55 <ehird> ais523: presumably, the base language will come with a Prelude which defines that syntactical sugar
20:32:02 <ehird> so that there's _some_ convenient common base
20:32:05 <ais523> also things like numbers and strings
20:32:09 <ehird> ais523: right, so use thatKindOfNaming for it
20:32:13 <ehird> it fits with smalltalky languages
20:32:54 <ais523> [ ^ | ^ outputStream write [^ helloWorldString ] ]
20:33:09 <ehird> AAAAAAue4njxuz: pleaseBurnInHell
20:33:11 <ais523> isHowItWouldLookBeforeYou'dSugarisedTheParser
20:33:22 <ehird> ais523: interestingButIThinkThatYouNeedaColon
20:33:24 <ais523> becauseToStartWithAllTokensAreSeparatedWithSpaces
20:33:28 <ehird> outputStream write: "Hello, world!"
20:33:29 <ais523> ehird: whereWouldThatBe?
20:33:31 <ehird> because otherwise it gets awkward
20:33:46 <ehird> ais523: oh, um, so it's not smalltalk-like then
20:33:55 <ehird> if you have a thing called a 'function' and you just nab it off an object ... NOT smalltalk-like
20:33:58 <ehird> smalltalk-like = message passing
20:34:16 <ais523> whyCan'tObjectOrientationBeCurried
20:34:36 <ais523> youPassAMessageAndIfItDoesn'tHaveEnoughArgumentsItGivesYouAFunctionSoYouCanSupplyTheRest
20:35:19 <ais523> in Smalltalk, you can write 2 + 2
20:35:24 <AnMaster> where would we be if this contined!?
20:35:30 <ais523> that sends a + message to 2, with the argument 2
20:35:33 <ais523> but it's really 2 +: 2
20:35:59 <ais523> in Feather, assuming you're using a boxed number 2 (you would be normally but you need to deal with unboxed objects during bootstrapping)
20:36:27 <ais523> and that sends a + message to the number 2 and gets back a function that adds 2 to a number
20:36:30 <AnMaster> ais523, go implement it, in INTERCAL
20:36:32 <ais523> not everything is an object, unlike in Feather
20:36:34 <ehird> its inevitable really, ais523
20:36:42 <ehird> you do low-level stuff in the bootstrap
20:36:43 <ais523> actually, I was going to bootstrap it in Scheme
20:36:46 <ehird> and then applications 'clone' the language
20:36:49 <oerjan> AnMaster: THE ANSWER SHOULD BE OBVIOUS
20:36:52 <ehird> and bootstrap away the unsafe operations
20:37:04 <ehird> ais523: also: in place kernel updates!
20:37:13 <ais523> ehird: oh, there was something I was going to ask you
20:37:22 <ais523> you know Haskell has unsafePerformIO
20:37:36 <ais523> the "unsafe" indicating that you're perverting the structure of the language and so should never use it?
20:38:12 <ais523> what should I use as a prefix for an operation which is so ridiculously unsafe that the only use that should ever be used for it is writing safety checks on it to produce a new function that is less unsafe?
20:38:14 <AnMaster> ais523, how do you perform IO safely then?
20:38:26 <ais523> AnMaster: strict evaluation
20:38:43 <ais523> at least, that's for output
20:38:49 <ais523> input is considerably more interesting
20:38:52 <ais523> you have to set up callbacks
20:39:19 <ehird> yourMotherWasAWhoreAreYouSufficientlyOffendedGoodNowYoullNeverTouchThisFunctionBecauseItInsultedYourMotherGoodnight
20:40:31 <ais523> incidentally, the function itself is sort of like become: in Smalltalk, but retroactive to the start of the program and also, whenever you use it you have to ensure that the retroactively modified program doesn't use it for the same purpose again
20:40:48 <ais523> i.e. the only possible use for the function is to modify the program in such a way that you didn't use it
20:40:57 <ehird> i'd just do unsafe
20:40:59 <ais523> veryUnsafeBecome seems to fit well
20:41:08 <ehird> its not for haskell
20:41:15 <ehird> ais523: well, i'd call it primitiveX
20:41:19 <ehird> since presumably it's an internal function
20:41:22 <ehird> and NOT to be called by user code
20:41:29 <ais523> yes, not to be called by user code
20:41:32 <ehird> ais523: primitiveBecome
20:41:37 <ehird> ais523: Haskell uses # for internal things
20:41:39 <AnMaster> ais523, if it would just be used for internal, I'd say either, as ehird suggested primitive, but better: internalBecome
20:41:43 <ehird> e.g. unsafeCoerce# is the internal coercing magic
20:41:47 <ais523> it may be /mentioned/ by user code if you need to invent a different sort of safety check for it
20:41:54 <ehird> ais523: and I# is the primitive int wrapper
20:42:01 <ais523> because there's more than one way to safise it
20:44:54 <ais523> for instance, if you're adding a method or property to an object, you can simply check if it exists and not add it if it does
20:45:10 <ais523> that way, your retroactive modification prevents the same modification being made in the changed program
20:45:44 <ehird> ais523: want to see a dependently-typed stack based program?
20:45:48 <ehird> it uses a type function
20:45:56 <ais523> sounds vaguely interesting
20:46:03 <ehird> ais523: http://pastebin.ca/raw/1033388
20:46:19 <ehird> an example of the type-function formatT:
20:46:24 <ehird> "" formatT -> String
20:46:26 <ais523> wow, that's hard to read
20:46:35 <ehird> "%d" formatT -> (Int -> String)
20:46:39 <ehird> "%s" formatT -> (String -> String)
20:46:49 <ehird> "%s%d abc %s" formatT -> (String -> Int -> String -> String)
20:47:02 <ehird> ais523: its based on the printf from http://www.cs.chalmers.se/~augustss/cayenne/examples.html
20:48:30 <ehird> ais523: admittedly string processing is not something that a stack language excels in
20:48:57 <ais523> is it possible to define printf's type in any strongly typed language?
20:49:07 <ais523> the type of some of the arguments depends on the value of one of them
20:49:13 <ehird> ais523: tada, that's what dependent types are
20:49:17 <ehird> dependent types: types that depend on values
20:49:32 <ehird> ais523: now you might ask -- what about 'format s 3'?
20:49:39 <ehird> How do we know that that is well typed until runtime?
20:49:45 <ehird> ais523: it's simple -- the type system makes you PROVE it!!
20:49:55 <ehird> Just like in haskell which makes you prove things are well-typed
20:50:01 <ehird> ais523: For instance, take this function:
20:50:07 <ehird> myFoo xs = head xs
20:50:08 <ais523> what if you're reading the format string from a file?
20:50:13 <ehird> ais523: I just told you
20:50:15 <ehird> you have to prove it
20:50:19 <ehird> now let me explain ;)
20:50:21 <ehird> myFoo xs = head xs
20:50:29 <ehird> obviously, head [] is not well-typed
20:50:36 <ehird> head operates on _non-empty lists_
20:50:41 <ehird> ergo, the above is a type error
20:50:49 <ehird> myFoo xs = if xs == [] then 3 else head xs
20:51:58 <ehird> ais523: now when you get into dependent types
20:52:02 <ehird> it naturally leads to: Types == values.
20:52:07 <ehird> Types are just values, values are just types.
20:52:12 <ehird> The type language is the programming language.
20:52:27 <ehird> ais523: http://www.cs.chalmers.se/~augustss/cayenne/examples.html Take a look at the 'printf' example. It defines a function in the type system, PrintfType
20:52:34 <ehird> and a function printf, in the value system
20:52:40 <ehird> which utilizes PrintfType to get its type
20:52:49 <ehird> and thus, printf "%d" "abc" gives you a type error.
20:52:53 <ehird> It's a beautiful paradigm and so natural
20:53:36 <ehird> ais523: There are a few problems .. compilation might not halt.
20:53:43 <ehird> But if you do silly things in the type system that's your fault isn't it ;)
20:55:39 <ehird> and then ais523 **DIED**
20:55:46 <ais523> not dead, doing something else
20:55:56 <ais523> but I did read what you wrote
20:55:58 <ehird> ais523: Feather, I hope.
20:56:13 <ehird> ais523: Agoreather
20:56:18 <ais523> and it strikes me that your approach would probably work better in an interpreted language
20:56:40 <ehird> The point is that you can have the static assurance of strong types; if it compilse it runs
20:56:43 <ehird> But it takes it one further
20:56:47 <ais523> ehird: well, I have considered a feathernomic; its defining feature would probably be that all rulechanges were retroactive to the start of the nomic
20:56:53 <ehird> in that you can express _any_ constraint in the type system
20:57:05 <ehird> and the type system helps you by forcing you to prove things that you define
20:57:11 <ehird> which is analogous to .. functions!
20:57:12 <ais523> what if the typechecks are themselves badly typed?
20:57:23 <ehird> ais523: there's an infinite stack of types obviously
20:57:34 <ehird> ais523: think about it
20:57:37 <ehird> its just like expressions vs statements
20:57:42 <ehird> you take regular, fine values
20:57:47 <ehird> and then you add this weird extra language
20:57:53 <ehird> why not just add the same language on another layer?
20:57:54 <ais523> but do you need a precompilation during which you determine the compilation is well-typed?
20:57:58 <ehird> which then has itself as a type layer
20:58:02 <ehird> ais523: well, basically, yes
20:58:05 <ehird> it's like lisp macro expansion
20:58:12 <ehird> you compile down until you get the values compiled
20:58:14 <ais523> and a preprecompilation during which you determine if that is well-typed?
20:58:33 <ais523> that's why I suggested doing it in an interpreted language: to avoid the infinite regress
20:59:00 <ehird> ais523: I think you are misguided. Implementations exist and the languages are developed actually.
20:59:16 <ehird> Agda: http://appserv.cs.chalmers.se/users/ulfn/wiki/agda.php?n=Main.HomePage
20:59:20 <ehird> ais523: Coq is also dependently typed
20:59:29 <ais523> well, I'm not sure how it would work, but presumably there's some method of avoiding the regress
20:59:40 <ais523> my guess is the higher levels are interpreted, and then it's compiled from there down
21:00:47 -!- Judofyr has quit.
21:13:06 -!- oerjan has quit ("Good night").
21:14:46 <ais523> hmm... whenever I visit a Slashdot article and see that there are no comments, I'm disappointed that there are no comments to read and wait a while, refreshing
21:14:49 <ais523> is this the wrong reaction?
21:15:32 -!- jix has quit ("CommandQ").
21:17:46 -!- Iskr has quit ("Leaving").
21:19:28 -!- jix has joined.
21:19:31 <ehird> ais523: yes, but I do it too
21:19:57 <ais523> besides, my karma's only marginally above excellent
21:20:05 <AnMaster> ais523, yes, you want to make a first comment!
21:20:07 <ais523> so it's not worth doing "FRIST PSOT!!!1" or whatever
21:20:16 <ehird> ais523: my karma on slashdot, iirc, is in the negatives
21:20:23 <ais523> ehird: how did you manage that?
21:20:47 <AnMaster> ais523, make a *good* first comment
21:20:55 <ehird> ais523: said some crap
21:20:58 <ais523> AnMaster: impossible, you have to spend thinking time to do that
21:21:03 <ehird> I don't like slashdot :-)
21:21:08 <ais523> I've made good early comments, though, that have been moderated up to 5
21:21:16 <ais523> and the article was blank when I started making them
21:21:29 <ais523> but because I put thought into them there were something like 7 or 8 comments before mine
21:21:55 <AnMaster> oh you mean blank with comments
21:22:18 <ais523> I mean no comments, yes
21:22:29 <ais523> although if you're fast enough, and I have been sometimes, the read more... link is a 404
21:22:44 <ais523> because the articles don't always come up at the same time on the main page and elsewhere
21:23:05 -!- RedDak has joined.
21:28:54 -!- uvanta has changed nick to HanDongSeong.
21:48:17 -!- cherez1 has changed nick to cherez.
22:09:07 -!- olsner has quit ("Leaving").
22:15:51 -!- kar8nga has left (?).
22:16:29 -!- BMeph has quit ("Time for me to go home").
22:16:59 -!- BMeph has joined.
22:25:20 -!- jix has quit ("CommandQ").
22:26:53 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
22:34:36 -!- Corun has joined.
22:50:13 -!- RedDak has quit (Remote closed the connection).
23:12:18 -!- BMeph has quit (Read error: 104 (Connection reset by peer)).
23:40:19 <oklofok> what does ais's quit message do?
23:41:20 <ehird> put: (1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"
23:43:18 -!- HanDongSeong has quit ("If you're seeing this message, it's probably XChat's fault.").
00:03:01 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
00:03:05 -!- ehird_ has joined.
00:03:46 -!- ehird_ has changed nick to eihrd.
00:03:47 -!- eihrd has changed nick to ehird.
00:31:09 -!- ehird has quit (Remote closed the connection).
00:33:32 -!- ihope has joined.
00:55:01 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:16:59 <Deformative> Also oklofok, GregorR made a neat tool called Dsss.
02:32:58 -!- Corun has quit (Read error: 110 (Connection timed out)).
03:22:27 -!- ihope has quit (Read error: 110 (Connection timed out)).
03:35:02 -!- ihope has joined.
04:27:12 -!- st01k has quit ("Leaving").
04:56:22 -!- GreaseMonkey has joined.
06:12:40 -!- GreaseMonkey has changed nick to [[Nobody.
06:15:52 -!- [[Nobody has changed nick to GreaseMonkey.
06:40:59 -!- olsner has joined.
06:41:45 -!- GreaseMonkey has changed nick to me.
06:41:49 -!- me has changed nick to GreaseMonkey.
06:42:59 -!- ihope has quit (Read error: 110 (Connection timed out)).
06:43:10 -!- GreaseMonkey has changed nick to ^_`.
06:48:37 -!- ^_` has changed nick to GreaseMonkey.
07:22:46 -!- hotidlerchick has joined.
07:31:28 -!- olsner has quit ("Leaving").
07:39:14 -!- jix has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:02:51 -!- hotidlerchick has quit (Read error: 113 (No route to host)).
08:12:38 -!- mental has joined.
08:16:09 <oklofok> Deformative: GregorR made a great tool for installing D on windows?
08:16:40 -!- sebbu has quit (Read error: 110 (Connection timed out)).
08:16:55 <oklofok> anyway, i installed dmd, gdc and mingw
08:17:05 <oklofok> but apparently failed @ it :)
08:17:43 -!- lament has quit (Read error: 110 (Connection timed out)).
08:35:38 -!- jix has quit ("This computer has gone to sleep").
08:40:24 -!- jix has joined.
08:40:28 -!- jix has quit (Remote closed the connection).
08:40:49 -!- jix has joined.
08:51:05 -!- augur has joined.
08:51:05 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
09:35:57 -!- Slereah_ has joined.
09:35:57 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
09:53:28 -!- Iskr has joined.
10:10:51 -!- Slereah has joined.
10:10:51 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
10:33:33 -!- jix has quit (Read error: 110 (Connection timed out)).
10:36:56 -!- GreaseMonkey has quit ("Unisex.").
11:14:14 <oklofok> no no, that was not what i was going to paste
11:14:28 <oklofok> gdc: installation problem, cannot exec 'as': No such file or directory
11:14:50 <oklofok> i just got a zip and unzipped it.
11:46:54 -!- timotiis has joined.
11:51:25 -!- jix has joined.
12:05:30 -!- oklofok has changed nick to oklopol.
12:11:09 -!- sebbu has joined.
12:39:06 -!- Judofyr has joined.
12:40:25 -!- jix has quit ("CommandQ").
12:40:48 -!- jix has joined.
13:05:42 -!- Judofyr_ has joined.
13:19:21 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
13:25:08 -!- Judofyr_ has changed nick to Judofyr.
13:33:54 -!- Judofyr_ has joined.
13:34:15 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
14:34:27 -!- Judofyr has joined.
14:34:27 -!- Judofyr_ has quit (Read error: 104 (Connection reset by peer)).
15:24:56 -!- Slereah_ has joined.
15:24:56 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
15:34:08 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
15:34:58 -!- Judofyr has joined.
16:25:46 -!- ais523 has joined.
16:32:20 -!- RedDak has joined.
16:33:35 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
16:34:42 -!- Judofyr has joined.
17:03:15 -!- ehird has joined.
17:03:41 <ais523> activate your PerlNomic proposals, they're both passing right now
17:03:48 <ais523> and sorry for not commenting out the debug code...
17:05:32 -!- ehird has quit (Read error: 113 (No route to host)).
17:06:31 -!- ehird has joined.
17:06:36 <ehird> you know what sucks?
17:07:01 <ais523> but you still haven't activated those proposals
17:07:03 <ehird> the last thing I heard was, er, myself
17:07:10 <ehird> ais523: understandable, I just got on
17:07:20 <ais523> [17:05] <ais523> hello ehird
17:07:20 <ais523> [17:05] <ais523> activate your PerlNomic proposals, they're both passing right now
17:07:20 <ais523> [17:05] <ais523> and sorry for not commenting out the debug code...
17:07:32 <ais523> I said all of those well before you left
17:07:43 <ais523> so presumably you were missing messages for a while before you quit
17:08:10 <ehird> You bit comex for 3 points. You notice a red aura blinking around you.
17:08:22 <ehird> no, I am not grateful for the points he gave me :3
17:18:57 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
17:19:07 -!- oklopol has joined.
17:20:37 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
17:21:17 -!- Judofyr has joined.
17:23:31 -!- RedDak has quit (Remote closed the connection).
17:44:31 -!- olsner has joined.
17:47:54 -!- jix has quit ("This computer has gone to sleep").
18:29:45 -!- augur has changed nick to psygnisfive.
18:54:42 -!- olsner has quit ("Leaving").
19:45:21 -!- mental has changed nick to lament.
20:16:54 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
20:17:05 -!- Judofyr has joined.
20:17:52 <ais523> Deformative: diving into tarpits is rarely a good idea
20:18:47 <ais523> which tarpit in particular?
20:19:14 <ais523> hmm... there's more than one Turing tarpit, I think
20:19:55 <ehird> Deformative: he knows what a turing tarpit is.
20:21:15 <ais523> "Shouldn't UnLambdaLanguage and its ilk instead be called a ChurchQuagmire?"
20:21:42 <ehird> I love wikiwikiweb
20:36:03 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
20:36:22 -!- Judofyr has joined.
20:36:51 <Slereah_> "One (semi-) popular kind of TuringTarpit are the EsotericProgrammingLanguages, which are often designed as a kind of twisted exercise in humor."
20:37:03 <Slereah_> Aren't all turing tarpits esoteric languages in a way?
20:37:21 <ais523> lambda calculus isn't an esolang, generally speaking
20:39:51 <ais523> hmm... are Lisp/Scheme tarpits?
20:40:26 <Slereah_> The original LISP is a tarpit.
20:40:38 <Slereah_> Or a Church Quagmire, if you will.
20:40:55 <Slereah_> It was function definition + six functions + 3 constants.
20:41:16 <ais523> LISP isn't normally considered an esolang
20:41:40 <ais523> likewise, P'' isn't, but then Brainfuck, which is less of a tarpit, is
20:41:41 <Slereah_> Actual Lisp is full of stuff that makes it usable and not terribly insane.
20:42:01 <Slereah_> What's the definition of an esolang then?
20:42:14 <ais523> I've been wondering about that myself
20:42:31 <ais523> BANCStar was considered to not be an esolang because it was used commercially
20:42:31 <Slereah_> Why does it say that INTERCAL is not minimalistic?
20:42:36 <ais523> Slereah_: because it isn't
20:42:55 <Slereah_> It might not be the most minimalistic languages there is, but it has like less than 20 instructions, I think
20:42:57 <ais523> it has lots of commands and more operators than it needs
20:43:32 <ais523> INTERCAL-72 had ABSTAIN/REINSTATE/IGNORE/REMEMBER and arrays
20:43:38 <ais523> none of which are needed for TCness
20:43:52 <ais523> modern INTERCAL doesn't even need variables for TCness
20:45:34 <psygnisfive> Original Lisp had not variables and was TC.
20:45:39 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
20:46:05 -!- Slereah_ has joined.
20:46:07 <psygnisfive> original lisp had only like 7 instructions and thats _it_
20:46:24 <psygnisfive> which i so makes it a .. friendly esolang? :P
20:47:08 <Slereah_> [21:44:20] <Slereah_> But well, plenty of tarpits have instructions that could be disposed off, though
20:47:08 <Slereah_> [21:44:48] <Slereah_> You can reduce Brainfuck to 3 instructions and Unlambda to two functions.
20:47:24 <ais523> Slereah_: which 3 instructions?
20:47:52 <ais523> ah, I thought the ones on the wiki didn't work
20:47:53 <Slereah_> http://esolangs.org/wiki/BF_instruction_minimalization
20:48:43 <Slereah_> Well, Bitchanger works, that I know
20:48:59 <Slereah_> I never tried anything more reduced
20:49:18 <Slereah_> But without IO, Bitchanger is already 4 instructions.
20:49:53 <Slereah_> I do not know where Feydeau is.
20:52:56 <Slereah_> http://c2.com/cgi/wiki?FunctionalWeenie
20:53:27 <Slereah_> "Most Lispers happily indulge in unclean things such as side effects, for instance."
20:53:54 <psygnisfive> haskell has no side effects except the IO junk
20:54:03 <ais523> psygnisfive: even that isn't a side effect
20:54:09 <ehird> psygnisfive: haskell has no side effects
20:54:11 <ehird> it is purely functional
20:54:18 <ais523> the external world gets dragged through the program inside a monad
20:54:29 <ehird> they consider it over-used because it conquers laziness
20:54:32 <ehird> but its not a side effect.
20:54:41 <Slereah_> I don't want to get dragged inside a monad.
20:54:52 <ais523> well, arguably unsafePerformIO has a side-effect
20:54:58 <psygnisfive> ehird: cale disagrees with you and says IO is side effects
20:55:02 <ais523> of generating another RealWorld to perform IO on
20:55:13 <psygnisfive> so atleast one haskeller considers IO side effects
20:55:16 <ehird> psygnisfive: it is a side effect
20:55:20 <ehird> but its not a side effect in haskell
20:55:27 <ehird> and, FWIW, I am a haskeller
20:55:52 <ais523> oh, Feather has no side effects either
20:56:10 <ais523> you have to send messages out of the program to do output, and receive them from outside to do input
20:56:26 <ais523> the outside the program is actually inside the program, but you can't see how it's implemented
20:56:31 <GregorR> http://www.codu.org/music/alien-nocturne-2.ogg
20:56:35 <Slereah_> "Don't think of Indian food when someone says "curry". Don't think of religion when someone says "church"."
20:57:21 <psygnisfive> fuck you slereah. fuck you for reminding me of the wonders of indian cuisine.
20:57:50 <ais523> ah, I transcoded my hello-world-in-Fugue into .ogg
20:57:51 <ehird> Slereah_: yes you are
20:57:58 <ais523> so people here can actually hear it
20:58:30 <ehird> ais523: what, in channel?
20:58:36 <ais523> ehird: how, it's a soundfile
20:58:41 <ais523> in a pastebin, of course
20:58:49 <ehird> ais523: I meant literally
20:59:46 <ais523> http://filebin.ca/jgsege/hworld.ogg
21:00:30 <ais523> there's something wrong with the volume when I try to stream it
21:02:20 <ehird> psygnisfive: a hello world program
21:02:30 <ais523> http://esolangs.org/wiki/Fugue
21:02:42 <ais523> it was the second program ever written, I think
21:02:45 <ais523> and I wrote the first one too
21:02:49 <Slereah_> "Unlambda enables (read: forces) the developer to write programs using the EssAndKayCombinators."
21:03:21 <Slereah_> ais523 is the mozart of esolangs.
21:03:52 <ais523> well, apart from me totally messing up the volume, the music's alright
21:04:02 <ais523> but a bit mechanical and it jumps around a bit for no obvious reason
21:04:14 <psygnisfive> can Fugue run any musical piece, or just a limited subset?
21:04:21 <ehird> HAHAHAHAA godhatesfags.com went web 2.0
21:04:22 <ehird> http://www.godhatesfags.com/
21:04:29 <ehird> its a flash-based site
21:04:31 <ais523> I think it has to be score-readable
21:04:38 <ais523> so it would be the set of music that doesn't use percussion
21:04:46 <ais523> also you have to be able to tell one voice from another
21:04:52 <ehird> some fags may still be present
21:04:59 <ehird> please see us through our technical difficulties
21:05:10 <ais523> also, some music may not balance loops correctly
21:05:24 <psygnisfive> ais: have you ever tried running some bach stuff through it?
21:05:44 <ais523> I didn't have a compiler, you see
21:05:59 <ais523> someone else wrote a compiler, but as it outputs machine code I've never dared use it
21:06:09 <ais523> it's lament's language, I think
21:06:12 <ehird> psygnisfive: (yes, ais523 is always like this)
21:06:37 <psygnisfive> it'd be interesting to run bach's stuff through it.
21:06:53 <ais523> most likely there'd be an unbalanced loop somewhere, or an infinite loop near the start
21:06:56 <ais523> psygnisfive: yes, several times
21:07:06 <ehird> but its pseudo-scientific
21:07:27 <psygnisfive> im only up to like, 1/3 of the way through, so i cant judge the rest
21:07:34 <psygnisfive> but so far is just all formal systems stuff.
21:07:42 <ehird> yeah, it gets more pseudo- near the end
21:07:45 <ehird> he's a clever guy for sure
21:07:51 <ehird> his theories of the mind just aren't spot on.
21:08:07 <ais523> the mathematical content is all good, though
21:08:18 <ais523> and the dialogues are excellent
21:08:32 <ehird> ais523: the last dialogue BLEW MY MIND
21:08:37 <ehird> it was on the FLOOR at the end
21:09:08 <ais523> the one with six voices
21:09:11 <psygnisfive> if anyone wants Art of the Fugue, i have part of it performed in saxophone. its pretty damn good.
21:09:23 <ais523> you'd need it in MIDI to run it through a Fugue compiler
21:09:33 <ais523> unless you expected the compiler to be good at aural dictation
21:09:45 <ehird> psygnisfive: of course
21:09:48 <ehird> how can it compile regular audio
21:09:52 <ehird> it needs the instruments
21:09:54 <psygnisfive> well, i dont mean to run it through a compiler
21:10:10 <ehird> psygnisfive: anyway, the last dialogue involves people swapping in and out of computers (or rather switching realities involving them)
21:10:16 <ehird> and the author telling the characters that they are characters
21:10:21 <ehird> and them denying it
21:10:44 <psygnisfive> one of my pet ideas about how Battlestar Galactica will resolve itself
21:10:54 <ais523> Person A programs an AI program Person B. They go into separate rooms to do a Turing Test. When it ends, Person B comes back into the room and Person A is the AI on the computer.
21:10:54 <psygnisfive> is the characters finding out that God/The Gods
21:12:09 <psygnisfive> wellnowwhat.net/transfers/Art%20of%20the%20Fugue%20(sax).mp3
21:12:39 <psygnisfive> how awesome would it be if running Bach's fugues in Fugue actually did something cool
21:12:54 <psygnisfive> lol. like, they were the only possible quines :O
21:13:06 <ais523> is that even possible in a TC language?
21:13:20 <ais523> and Fugue reads/writes ASCII, not music
21:13:33 <ehird> if (prog in bach_fuges) { print prog; } else { ... }
21:13:42 <ais523> yes, I know it is, it was me who came up with that example originally, I think
21:13:57 <Slereah_> Well, it could write music in ASCII.
21:13:59 <ais523> just being slightly slow today
21:15:15 -!- oerjan has joined.
21:16:45 <ais523> BF is probably the most-discussed esolang
21:16:53 <ais523> not sure whether it or INTERCAL is better known
21:17:10 <ais523> BF is certainly more implemented
21:17:14 <ehird> ais523: BF is more known
21:17:15 <ais523> because it's a lot easier to implement
21:17:21 <ehird> because random people who know VB joke about BF
21:17:25 <ehird> and implement crappy versions of it
21:17:29 <ehird> and say how it took them a week
21:17:35 <ehird> (I have first hand experience of this)
21:17:36 <ehird> Slereah_: visual basic
21:17:38 <ais523> that doesn't mean I use it, though
21:17:55 <Slereah_> Wouldn't it be more like an hour?
21:18:01 <ais523> VB seems a common language for people who are bad at programming to brag about
21:18:33 <Slereah_> I mean, a week is roughly what I did for the BF on the Turing machine, and that's counting the part I did on paper.
21:18:49 <psygnisfive> does thue allow more than one start string
21:18:53 <ais523> well, something hard like BF on the 2,3 would take a while
21:19:10 <Slereah_> Anything on 2,3 would take a while.
21:19:24 <ais523> especially as the resulting program is infinitely long
21:19:35 <Slereah_> Well, so's a Turing machine, technically.
21:19:45 <Slereah_> Unless you throw in a halt state.
21:19:55 <ais523> the 2,3 doesn't have a halt state
21:20:04 <ais523> although you can run it on a half-tape, with falling off the end=halt
21:20:32 <ais523> it took a while to prove that
21:20:39 <ais523> but I have the proof in the draft version of my paper
21:20:45 <psygnisfive> i enjoy the fact that thue is just a post production system.
21:20:50 <ais523> only if you cut off the left half of the tape, though
21:21:07 <ais523> if you cut off the right half, it seems to me a lot less likely that you'd end up with something TC
21:21:28 <Slereah_> Would Turing rise from his grave if I cut off the right part?
21:21:47 <ais523> removing features from a language at random quite often destroys TC-ness
21:23:13 <Slereah_> But I suppose that, technically, there's a twin of the 2,3 machine, with directions reversed, such that right-cut would still be TC.
21:23:19 <ehird> ais523 is too clever :(
21:23:32 <ais523> that was yes to Slereah_, by the way
21:24:00 <Slereah_> And it is quite awesome that you are here.
21:24:31 <ais523> hey, #esoteric is how I found out about the 2,3 machine in the first place
21:24:34 <ais523> someone put it in the topic
21:25:22 <Slereah_> How did you discover esoteric then?
21:25:25 <ehird> unfortunately, lament only takes thanks in the form of gay sex.
21:25:48 <ais523> via the 99bob website, originally
21:25:49 <Slereah_> I'll give lament many thanks then.
21:25:57 <ais523> then I ended up here looking up INTERCAL
21:26:11 <ais523> strangely, I found Wikipedia the same way
21:26:36 <ais523> strange because finding Wikipedia should not normally be considered a particularly difficult task
21:26:57 <Slereah_> I wonder if anyone ever discovered the esolangs through anything else than INTERCAL/Brainfuck
21:27:14 <ehird> ais523: I tried to find the wikipedia the toher day
21:27:17 <ehird> whenever I got close it ran away :\
21:27:27 <ais523> ehird: which Wikipedia? there's more than 1
21:27:40 <Slereah_> "Haigaiz so I herd u talk about bitXtreme here"
21:27:47 <ehird> ais523: The wiki! Duh.
21:27:50 <ehird> I was searching for it on the google
21:27:56 <ais523> English Wikipedia, presumably
21:28:15 <ehird> ais523: The google has nothing about it.
21:28:21 <ehird> I even typed THEGOOGLE into a word document
21:28:34 <ais523> ah, that's where you went wrong
21:28:39 <ais523> you see, THEGOOGLE is actually 2 words
21:28:43 <ais523> therefore Word can't handle it
21:28:51 <ais523> just removing the space isn't enough to fool it
21:29:11 <ehird> should I plug in the computer
21:29:44 <ais523> oh dear, we're in another of those surreal #esoteric conversations again
21:30:17 <Slereah_> THE CAKE HAS BEEN KIDNAPPED BY NINJAS!
21:30:41 <ais523> oh, I thought you were going to spontaneously create another IRP text adventure
21:31:03 <ehird> no, do it Slereah_!
21:31:06 <ais523> we were discussing Fugue
21:31:16 <ehird> Slereah_: idea - fgsfds
21:31:18 <ais523> I posted a .ogg version of my hello, world program
21:31:24 <Slereah_> The subject of thanking you via penises also came up, lament.
21:31:43 -!- lament has set topic: (:NAME "#ethoteric" :TYPE (INTERNATIONAL-HUB (PROGRAMMING-LANGUAGETH ETHOTERIC)) :LOGTH "http://tuneth.org/~nef/logth/ethoteric") -- BUT CLICK HERE FOR LINK IF YOUR BROWTHER DITHLIKETH LITHP! http://tunes.org/~nef/logs/esoteric.
21:32:09 <lament> yes, i prefer to be thanked in hard currency
21:32:45 <ais523> there's an esolang called LITHP, isn't there
21:32:47 <lament> (or is it spelled prothethhor?)
21:32:53 <ehird> ais523: no, a Lesser Known Language
21:32:53 <ais523> ah, it was one of the lesser-known programming languages
21:33:05 <ais523> some of which have since been created
21:33:16 <Slereah_> I have an idea for an esolang called Limp.
21:33:47 <Slereah_> "This otherwise unremarkable language is distinguished by the absence of an "s" in its character set. Programmers and users must substitute "TH". LITHP is said to be useful in prothething lithtth."
21:35:14 <ais523> shouldn't that be "ith thaid"?
21:35:32 <Slereah_> That would just be silly, ais523.
21:36:40 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
21:37:08 -!- Judofyr has joined.
21:38:26 * oerjan wonders where that "would just be silly" meme comes from
21:39:39 <Slereah_> I think it's in a Flying Circus or something similar.
21:39:47 <oerjan> that would certainly fit
21:43:20 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
21:43:26 -!- Slereah_ has joined.
21:44:42 <ais523> yes, it is a meme, I think
21:44:46 <ais523> at least, I recognised it
21:44:55 <ais523> but I'm not sure where
21:45:23 <Slereah_> This would be a meme, for instance : http://macrochan.org/source/R/A/RAU26W67JPBTTEQYFJ4JSL6OG53QKOW4.jpeg
21:45:30 <Slereah_> It just happens to be in my firefox.
21:45:49 <ais523> maybe it's a failed meme
21:45:54 <ais523> just like you get genes that die out
21:46:00 <ais523> it's a potential meme that never caught on
21:46:30 <ehird> ais523: I think you are referring to the entities known as "4chan posts".
21:46:31 <Slereah_> Memes don't die out easily on the internet.
21:46:43 <ais523> Slereah_: the ones you've heard of, yes
21:51:39 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
21:52:43 -!- Slereah_ has joined.
21:56:23 -!- Phenax has quit (Nick collision from services.).
22:04:12 -!- Iskr has quit ("Leaving").
22:50:52 -!- Slereah has joined.
22:51:04 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
22:53:23 <ais523> I've never understood it or even known what it is
22:53:29 <ais523> despite being on the receiving end of it a couple of times
22:53:31 <ehird> ais523: 'i herd u liek mudkipz'
22:53:36 <ehird> or some other *chan
22:53:38 <ehird> well, no, it's not
22:53:40 <ais523> how did it come about?
22:53:43 <ehird> the originator was somewhere else
22:53:47 <ais523> at least all-your-base has an interesting history
22:53:47 <ehird> but then someone morphed it on a *chan
22:53:57 <ehird> ais523: AYB is not a *chan meme
22:54:24 <ais523> and besides, sentences like "Somebody set us up the bomb." are just great
22:54:25 <ehird> ais523: http://www.encyclopediadramatica.com/So_i_herd_u_liek_mudkip may or may not have details (Since it's Encyclopedia Dramatica, guaranteed to be NSFW)
22:54:28 <ais523> whereas the mudkips thing is just pointless
22:54:48 <ehird> ais523: Something Awful
22:54:50 <Slereah> Which is pretty much the same culture
22:54:54 <ais523> it's a meme everywhere, I think
22:54:56 <ehird> originator of :psyduck:
22:55:01 <ehird> yes but it came from SA
22:55:08 <ais523> actually it came from a computer game
22:55:13 <ais523> with possibly the worst translation ever
22:55:16 <ehird> Slereah: not the same culture, really
22:55:27 <Slereah> Also, mudkips are just adorable
22:55:42 <Slereah> 4chan was actually an offshoot of SA
22:55:54 <ehird> but SA is slightly less depraved
22:56:41 <Slereah> I really loved the "send a million bee to Africa" one.
22:57:46 <ais523> ah, it seems jay's active again over at PerlNomic
22:57:53 <ais523> maybe the PNP will end up doing a lot more votes now
22:58:31 <AnMaster> ais523, ehird: a quick google shows "mudkip" is some pokemon thingy
22:58:41 <ais523> yes, I know mudkip's a Pokemon
22:58:44 <ais523> but why that one in particular?
22:58:47 <ais523> there are over 350 of them
22:58:52 <ehird> ais523: there was a real source to it
22:58:56 <ehird> before the copypasta
22:58:57 -!- oerjan has quit ("Good night").
22:58:58 <ehird> alas I cannot find it
22:59:13 <ehird> i.e. a source not intentionally made for a meme
22:59:43 <Slereah> It was some sort of fellow declaring (on DA?) his love for mudkips or something
23:00:10 <ehird> something like that
23:00:17 <ehird> in a very creepy way, presumably
23:00:23 <ehird> likely involving plushies
23:00:26 <ehird> (from what I can remember.)
23:01:30 <Slereah> Dramatisation : http://membres.lycos.fr/bewulf/Divers3/1210089733555.png
23:01:42 -!- timotiis_ has joined.
23:02:00 <ehird> and vaguely disturbing
23:03:27 <Slereah> Plus, there's actually a bunch of pokemons that made it to memes.
23:04:03 <Slereah> "Spawned from a DeviantArt comment inviting someone to their Pokmon group, the comment basically used the person's apparent like of Mudkips to perhaps entice the user to join their group. Whether or not said person actually joined is unknown."
23:04:21 <ais523> HTF did it get involved in a meme?
23:04:45 <Slereah> From the cesspool that is /v/, from what I can remember.
23:05:31 <ehird> ais523: SEAKING FUCK YEAH
23:05:54 <ehird> ais523: FUCK YEAH.
23:06:05 <ehird> a forced meme, apparently
23:06:29 <Slereah> "forced meme" is just a way to say that it isn't unanymous.
23:06:50 <ais523> what does it mean for a meme to be unanimous anyway?
23:06:52 <Slereah> If it's still recognized as a meme, you can be sure there's still hundred of people using it as one.
23:06:53 <oklopol> that hello world sounds quite nice
23:07:07 <oklopol> but it is pretty random still
23:07:08 <ehird> ais523: no /b/tards complained about it.
23:07:12 <ehird> so, admittedly, every meme is forced.
23:07:30 <ais523> oklopol: I like bits of it individually, but it sounds like a bit of a mess when they're all combined
23:08:39 <oklopol> i feel like trying to make it saner
23:13:07 <oklopol> hmm, one way is to cheat and jump up and down all the time to get the sane
23:13:19 <oklopol> because intervals > 6th are nope
23:14:11 <oklopol> i'm assuming different voices are... like different instruments?
23:19:47 <oklopol> also there you can use any lengths for the notes
23:19:58 <oklopol> shouldn't be too hard to do pretty much anything
23:23:08 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
23:23:51 -!- Judofyr has joined.
23:25:42 <oklopol> the 2L hello world is so beautiful i could cry
23:26:08 -!- timotiis has quit (Read error: 110 (Connection timed out)).
23:26:54 <ais523> does perlnomic have that
23:27:03 <ais523> it's worth checking whenever you try to use a new module?
23:27:09 <ais523> also, I'd better check if I have that
23:27:27 <ehird> ais523: presumably
23:27:31 <ehird> if it uses Time::localtime
23:27:58 <ehird> DB<5> print localtime(0)->year;
23:28:03 <ais523> so you won't be able to test if you use it
23:28:21 <ais523> year = years since 1900, incidentally
23:28:34 <ais523> that's why Perl webapps sometimes write the year as 19108
23:28:37 <ehird> ais523: move draft in plz
23:29:08 <ehird> ais523: lololololo 500
23:29:08 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
23:29:35 <ais523> sorry, permission fault
23:29:40 <ais523> I accidentally wrote mv rather than cp
23:29:48 -!- Judofyr has joined.
23:29:53 <ehird> but no hibernate line?
23:30:10 <ehird> p(strong('Last move/bite:'), format_time($move_time));
23:30:10 <ehird> p(strong('Last hibernate:'), format_time($hibernate_time));
23:30:33 <ais523> I can't spot the problem there
23:30:56 <ais523> what change is needed?
23:31:08 <ehird> ais523: it's at the end of the line
23:31:15 <ehird> and the indentation may fool you
23:31:23 <ehird> it's like something the UCC would contain
23:31:26 <ais523> ah, putting it in the print command
23:31:38 <ais523> hang on, how did this conversation end up in #esoteric
23:31:45 <ais523> ehird: I noticed that in context, but not from your snippet
23:37:38 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
00:01:38 <ehird> Any interesting eso developments?
00:06:54 -!- Corun has joined.
00:09:35 <Slereah> ehird : I just invented the best esoteric language ever
00:09:55 <Slereah> I was going to write it down, but the margin was too small.
00:10:09 <ehird> (Slereah promptly drops dead.)
00:10:31 <Slereah> This is a channel of nerds and dorks.
00:10:39 <ehird> Slereah: And mudkipz.
00:18:37 -!- ehird has left (?).
00:18:39 -!- ehird has joined.
00:35:26 -!- jix has joined.
00:39:59 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
00:40:13 -!- Judofyr has joined.
00:42:00 -!- Corun has quit (Read error: 110 (Connection timed out)).
01:01:26 -!- timotiis_ has quit (Read error: 110 (Connection timed out)).
01:01:41 -!- jix has quit ("This computer has gone to sleep").
01:31:48 <psygnisfive> im getting really used to reading Lisp code
01:32:30 <ehird> psygnisfive: lisp is nice
01:33:15 <psygnisfive> i know, im just usually not terribly quick to read large blocks of lisp code
01:33:29 <psygnisfive> but im watching so much SICP stuff that im coming to think in lisp
01:35:05 <ehird> i'll talk tomorrow
01:35:09 <ehird> i'd love to chat about lisp tomorrow
01:35:12 <ehird> have been away from it for a while
01:35:41 -!- ehird has quit (Remote closed the connection).
02:15:28 -!- lament has quit (Read error: 104 (Connection reset by peer)).
02:15:45 -!- lament has joined.
02:41:30 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
02:43:18 -!- Judofyr has joined.
02:47:58 -!- olsner has joined.
02:54:43 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
02:55:21 -!- Judofyr has joined.
04:40:17 -!- psygnisfive has quit ("Leaving...").
05:21:53 -!- augur has joined.
05:45:37 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
05:46:17 -!- Judofyr has joined.
05:55:11 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
05:55:23 -!- Judofyr has joined.
05:59:20 -!- Judofyr_ has joined.
05:59:24 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
06:11:00 -!- Judofyr has joined.
06:11:00 -!- Judofyr_ has quit (Read error: 104 (Connection reset by peer)).
07:48:29 -!- Judofyr_ has joined.
07:48:29 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:16:55 -!- GreaseMonkey has joined.
08:37:40 -!- HanDongSeong has joined.
08:52:06 -!- uvanta has joined.
08:56:12 -!- HanDongSeong has quit (Nick collision from services.).
08:56:19 -!- uvanta has changed nick to HanDongSeong.
09:03:13 -!- Judofyr has joined.
09:03:13 -!- Judofyr_ has quit (Read error: 104 (Connection reset by peer)).
09:07:27 -!- uvanta has joined.
09:07:55 -!- HanDongSeong has quit (Nick collision from services.).
09:08:05 -!- uvanta has changed nick to HanDongSeong.
09:30:43 -!- Iskr has joined.
10:41:08 -!- GreaseMonkey has quit ("Unisex.").
10:51:09 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
10:51:39 -!- Judofyr has joined.
11:43:16 -!- jix has joined.
11:52:28 -!- timotiis has joined.
12:07:30 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
12:20:25 <HanDongSeong> It was about Heh, the esoteric and mysterious teachings in ancient Korea.
12:42:46 -!- Corun has joined.
13:30:53 -!- Corun has quit ("This computer has gone to sleep").
14:04:39 -!- Slereah_ has joined.
14:04:58 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
15:36:46 -!- cherez has quit ("Leaving.").
15:39:19 -!- Slereah has joined.
15:39:19 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
15:43:20 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
15:43:31 -!- oklopol has joined.
16:18:09 -!- ais523 has joined.
16:58:59 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
17:17:43 -!- tusho_ has joined.
17:17:55 -!- tusho_ has changed nick to tusho.
17:19:34 -!- tusho_ has joined.
17:19:34 -!- tusho has quit (Read error: 104 (Connection reset by peer)).
17:19:44 -!- tusho_ has changed nick to tusho.
17:21:25 <ais523> both me and ehird have needed a lot more than 3 attempts on occasion
17:22:13 -!- asiekierka has joined.
17:22:18 <tusho> ais523: this ehird guy sounds interesting
17:22:39 <asiekierka> not an OS that can read Befalse/SNUSP code
17:22:45 <tusho> asiekierka: utterly crazy
17:22:45 <ais523> tusho: well, he's the person who ends up talking to me most often
17:22:47 <tusho> but perhaps not because of that
17:22:53 <tusho> ais523: yeah, never heard of the guy
17:22:59 <tusho> I also found #ircnomic by random typing
17:23:01 <ais523> well, he comes here a lot
17:23:08 <ais523> mostly in the evenings UTC
17:23:11 <ais523> so it may be a timezone problem
17:23:19 <tusho> ais523: I hope you are being sarcastic here
17:23:26 <asiekierka> but... seriously, what do you think of the idea of an OS in Befalse/SNUSP?
17:23:34 <ais523> asiekierka: I can't remember Befalse
17:23:37 <tusho> wow, who would have known a random channel like #rootnomic was registered
17:23:48 <ais523> tusho: I think ehird registered it
17:24:01 <asiekierka> Befalse is a combination of Befunge and SNUSP plus some other tidbits
17:24:22 <tusho> ais523: looks like I have some kind of psychic link with ehird!
17:24:39 <ais523> asiekierka: how would you do the hardware access, etc., that an OS needs
17:24:48 <ais523> or are you just trying to do shell+utilities rather than a kernel?
17:24:48 <tusho> ais523: my first name also starts with an e, and my second name is hird!
17:25:04 <asiekierka> ais523: Maybe even a whole emulator of a CPU!
17:25:59 <tusho> ais523: oh, and I also share his email address
17:26:28 <ais523> well, at least you don't have the same IP; ehird's is 91.105.95.173
17:26:41 <ais523> but yours is91.105.124.85
17:26:45 -!- ksi has joined.
17:27:02 -!- asiekierka has quit (Nick collision from services.).
17:27:03 <tusho> ais523: I also share his router. Must have disconnected in the night.
17:27:07 -!- ksi has changed nick to asiekierka.
17:27:12 <tusho> With all seriousness, I bloody hope you're just playing along and know that I'm ehird.
17:27:22 <tusho> Which I suspect you are, because this would just be too ridiculous otherwise.
17:27:31 <ais523> I would have thought the IP thing was a giveaway
17:27:43 <ais523> not the idea of an Eso-OS
17:27:43 <tusho> ais523: actually, way before that was
17:27:49 <tusho> ais523: was your first message playing along?
17:27:53 <asiekierka> but the idea of an Eso-CPU-emulator, right?
17:28:03 <ais523> tusho: not the very first one, but I cottoned on pretty quickly
17:28:06 <tusho> asiekierka: yeah, um, I don't think it'll work terribly wel
17:28:49 <ais523> well, at least WireWorld acts a bit like VHDL
17:29:28 <asiekierka> SNUSP can do it too, but it lacks one thing in fact
17:29:56 <ais523> hmm... I reckon VHDL is actually a cellular automaton in disguise
17:30:16 <tusho> ais523: cpus are just cellular automaton in disguise
17:37:08 <ais523> http://127.0.0.1:12346/perlnomic
17:47:43 -!- tusho has quit (leguin.freenode.net irc.freenode.net).
17:47:45 -!- bsmntbombdood has quit (leguin.freenode.net irc.freenode.net).
17:48:20 -!- asiekierka has quit (Read error: 110 (Connection timed out)).
17:49:33 -!- tusho has joined.
17:56:58 -!- timotiis has quit (Read error: 110 (Connection timed out)).
18:03:55 -!- bsmntbombdood has joined.
18:22:04 -!- Corun has joined.
18:46:56 -!- Slereah_ has joined.
18:49:51 -!- helios24 has joined.
18:52:38 -!- Slereah has joined.
18:52:38 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
19:13:47 -!- jix has quit (Nick collision from services.).
19:14:01 -!- jix has joined.
19:24:07 -!- Slereah_ has joined.
19:24:07 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
19:24:58 -!- Corun_ has joined.
19:26:21 -!- Corun has quit (Read error: 104 (Connection reset by peer)).
19:38:50 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
21:47:16 -!- HanDongSeong has quit ("boom").
21:49:54 -!- Iskr has quit ("Leaving").
21:50:25 -!- Iskr has joined.
21:51:25 -!- Iskr has quit (Client Quit).
21:55:07 -!- helios24 has quit ("Leaving").
21:58:58 -!- bsmntbombdood has quit (Remote closed the connection).
22:06:00 -!- RedDak has joined.
23:41:41 -!- lament has quit (leguin.freenode.net irc.freenode.net).
23:41:43 -!- Deewiant has quit (leguin.freenode.net irc.freenode.net).
23:43:03 -!- lament has joined.
23:43:03 -!- Deewiant has joined.
23:43:28 -!- Deewiant has quit (Connection reset by peer).
23:43:43 -!- Deewiant has joined.