←2008-04 2008-05 2008-06→ ↑2008 ↑all
2008-05-01
00:00:02 <revcompgeek> :P
00:00:05 * olsner is in an extraordinarily helpful mood today
00:00:06 <revcompgeek> you are so helpful
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:10:27 <sauxdado> sure. How about OISC?
00:11:05 <sauxdado> or MIX?
00:11:11 <revcompgeek> i don't see how to write any compilers in that in a reasonable amount of time
00:11:17 <revcompgeek> not looked at MIX
00:11:52 <revcompgeek> umm
00:11:57 <revcompgeek> no to MIX
00:12:23 <sauxdado> well, what exactly do you want?
00:12:42 <revcompgeek> a semi-normal assembly like language
00:12:53 <sauxdado> LLVM?
00:12:56 <revcompgeek> that would be easy to target
00:13:04 <sauxdado> C89?
00:13:12 <sauxdado> R5RS?
00:14:36 <revcompgeek> ...
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:16:56 <revcompgeek> hmmm
00:17:50 <revcompgeek> i had an idea to have all esoteric compilers target one specific assembly
00:17:59 <revcompgeek> it doesn't seem to feasible now
00:18:45 <sauxdado> LLVM seems like a good choice, although most people prefer to compile to something higher-level
00:18:57 <sauxdado> oh yeah, there's JVM too :)
00:19:05 <revcompgeek> yuck
00:19:09 <revcompgeek> i want something fast
00:19:56 <revcompgeek> i was almost thinking something based on P-code
00:20:07 <revcompgeek> that seems fairly easy to compile too
00:20:13 <revcompgeek> s/too/to/
00:21:09 <sauxdado> so LLVM?
00:21:13 <revcompgeek> I haven't actually written a compiler but i want to for BRZRK
00:21:45 <revcompgeek> so i was wondering what to compile too
00:21:49 <revcompgeek> s/too/to/
00:22:38 <revcompgeek> LLVM looks bad
00:23:20 <sauxdado> why?
00:24:03 <revcompgeek> hmm
00:24:09 <revcompgeek> actually it doesn't look too bad
00:24:35 <revcompgeek> LLVM is higher level than i first thought
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:26:02 <sauxdado> so learn Lisp :)
00:26:17 <revcompgeek> :(
00:27:02 <sauxdado> i don't get it
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:36 <revcompgeek> but i don't understand all the quirks
00:27:54 <revcompgeek> variables are quite complicated from what i have looked at
00:28:58 <sauxdado> scheme is pretty sane
00:29:22 <revcompgeek> i might use scheme then
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:48:54 <evincar> Hello, hello.
01:52:00 <ehird> hi
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:00 <evincar> So...the important ones.
01:53:25 <evincar> But it's not hard, per se.
01:53:36 <evincar> Just a bit tedious.
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:19 <evincar> It's a fun diversion.
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
02:54:44 <oklopol> o
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:50:30 <theunixgeek> oh
11:51:00 <Slereah_> Oh you.
11:51:15 <Slereah_> Yes, yes it is for programming.
11:51:20 <theunixgeek> oh
11:51:22 <theunixgeek> ok :P
11:51:33 <theunixgeek> anyone know of the FALSE programming language?
11:57:50 -!- theunixgeek has left (?).
12:04:15 <Slereah_> Heh.
12:22:38 <olsner> what, is this a *programming* channel?
12:22:48 * olsner goes look for the esoteric magic channel
12:23:16 <olsner> *looking
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:28:25 <Slereah_> But...
16:28:29 <Slereah_> CAN YOU DANCE?
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:28 <ehird> It is juicy.
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:48:57 <ehird> pikhq: 'hear'
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:33 <pikhq> As in speech.
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:39 * pikhq nods
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:22 * ehird backs away slowly
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:20 * pikhq nods
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:10 <ehird> pikhq: Sheesh.
17:00:14 <ehird> That is horrifying.
17:00:18 <ehird> Let's protest.
17:00:53 * pikhq nods
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:03 <ehird> ais523: hello
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:37 <ehird> ;-)
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:17:10 * ais523 looks it up
17:18:39 <ehird> ais523: hmm, cyclexa is pretty untouched
17:18:47 <ais523> yes, it would be
17:18:50 <ais523> I haven't been working on it
17:18:57 <ehird> nor I :-)
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:35 <ehird> ais523: oh dear
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:22:41 <ehird> so :-)
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:21 <ehird> i didn't
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:26 <ais523> my 58-byte solution
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:06 <ehird> ais523: hee
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:24 <Slereah_> What a bunch of dykes.
17:43:29 <ehird> Slereah_: loooool
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:06 <ehird> 100% empty
17:44:07 <ehird> apart from me
17:44:08 <ehird> a few times
17:44:09 <ehird> :-)
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:16 <ehird> ais523: true
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:14 <ehird> ais523: no? :P
17:56:22 <ais523> ais523: yes, fine
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:18 <ais523> 00g
18:20:43 <Phenax> doh
18:20:51 <Phenax> i was doing 100g.
18:20:55 <Phenax> wondering why it was returning 49
18:20:56 <Phenax> lol
18:21:12 * Phenax forgets simple things
18:23:40 <Phenax> 100g,p500 00g,@ .. prints 11 - shouldn't it be 15?
18:24:23 <Phenax> oops
18:24:24 <Phenax> omg
18:24:25 <ais523> Phenax: what are you trying to do there?
18:24:27 <Phenax> i am silly:D
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:24:59 <Phenax> yeah
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:12 <ais523> yes, it would do
18:27:14 <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:28:44 <Phenax> :\
18:29:02 <ais523> the char '1' is a command that puts the number 1 on the stack
18:29:26 <Sgeo[College]> Be back later all
18:29:47 <Phenax> 22* returns the char 4 or the integer 4?
18:29:55 <ais523> Phenax: 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:10 <Phenax> i mean char 2
18:30:13 <Phenax> ah
18:30:18 <Phenax> yeah.. ok.. thx
18:30:19 <ais523> but integers calling the command
18:30:46 <Phenax> g2g thx
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:51:05 <Slereah_> Guys.
19:51:11 <Slereah_> With Wolfram's numbering.
19:51:16 <Slereah_> What would be rule 34?
19:51:30 <ais523> 34 is 00100010
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:20 <ais523> sorry, that's wrong
19:53:31 <ais523> under 101 and under 001
19:53:47 <ais523> state Zero "0" to One if > One;
19:53:51 <ais523> state One "1".
19:54:05 <ais523> Slereah_: is that what you had in mind?
19:54:54 <Slereah_> Indeed.
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:28 <GregorR> I prefer rule 0.
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:07:59 <GregorR> :P
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:20 <Slereah_> Thar.
20:35:23 <Slereah_> What do you do?
20:35:35 <ehird> um
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:51 <ehird> ais523: hah
20:35:59 <ehird> ais523: it's a gap
20:36:00 <ehird> you know it
20:36:03 <ehird> weren't you here last time?
20:36:08 <ais523> last time what?
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:20 <ehird> maybe yesteryda
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:42:32 <ehird> Slereah_: ouc
20:42:33 <ehird> h
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:05 <Slereah_> Try your luck!
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:38 <Slereah_> AAAAAAAAH
20:56:46 <ais523> RESTART
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
20:58:00 <Slereah_> The original one.
20:58:10 <ais523> OK
21:00:35 <ehird> ais523: ...
21:00:38 <ehird> we're waiting!
21:00:41 <ais523> I know
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:01:36 <ehird> to Slereah_
21:01:44 <ais523> yes, I saw that
21:02:12 <ehird> ais523: I love how we threw the dead lion and just flew with it previously
21:02:43 <Slereah_> Well, you can try hacking in.
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:14 <ais523> Slereah_: no
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:16 <ehird> like before
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:04:47 <ais523> Slereah_: iNVENTORY
21:05:42 <Slereah_> ehird : I wouldn't try something like that.
21:05:47 <Slereah_> OR WOULD I?
21:05:49 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Lion.jpg
21:06:14 <ehird> hahahah
21:06:23 <Slereah_> Inventory : Supply of letters.
21:06:27 <Slereah_> Hacking tools.
21:06:36 <Slereah_> A length of rope.
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:22 <ais523> OK
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:15:46 <Slereah_> 'kay.
21:15:51 <ais523> and so on
21:15:53 <Slereah_> What does non-breaking mean?
21:15:56 <ais523> until I have 59049
21:16:07 <ais523> Slereah_: it's the character &nbsp;, rather than an ordinary space
21:16:18 <Slereah_> How to do such a char?
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:17:11 <Slereah_> I will use
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:28:41 <Slereah_> Done it.
21:30:11 <ais523> well, can I enter the interp now?
21:30:36 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Busy.jpg
21:30:40 <Slereah_> What do you do now?
21:31:02 <ais523> I look around for a safe pathway.
21:31:20 <ais523> if I see one, I run along it
21:31:38 <Slereah_> [Malbolge interpreter] o
21:31:41 <Slereah_> Oops
21:31:45 <Slereah_> o[Malbolge interpreter] o
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:42 <Slereah_> Wot
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:29 <ais523> yes, I do
21:33:34 <ais523> I thought I'd said that already
21:33:40 <ais523> I want to go explore into the interpreter
21:33:50 <AnMaster> what is going on here?
21:33:58 <AnMaster> summary?
21:34:20 <Slereah_> AnMaster : Delicious cake.
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:34:53 <AnMaster> ^_^!!!
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:35:43 <Slereah_> This can't be good.
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:37:49 <AnMaster> Slereah_, Dev-C++?
21:37:53 <AnMaster> for windows
21:37:58 <AnMaster> I think it is that, isn't it?
21:39:29 <Slereah_> It is
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:40 <ais523> yes, I am
21:43:44 <AnMaster> what lion there?
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:44:45 <AnMaster> !?
21:44:49 <EgoBot> Huh?
21:45:00 <AnMaster> EgoBot, I fully agree
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:46:39 <AnMaster> thus killing the interpreter?
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:01 <AnMaster> Slereah_, good point hm
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:50 <Slereah_> Oops.
21:48:52 <ais523> no, apparently it was too heavy for me to move
21:49:02 <Slereah_> (The spaces are back on)
21:49:21 <AnMaster> Slereah_, care to scroll down the window a bit?
21:49:31 <Slereah_> What copyright?
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:01 <ais523> #pragma DIAGNOSTIC
21:50:02 <ais523> #endif
21:50:10 <AnMaster> "I carefully this" you mean "place this"?
21:50:14 <ais523> AnMaster: yes
21:50:16 <ais523> it was a typo
21:50:19 <AnMaster> ok
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:50:43 <AnMaster> ok, credits then
21:51:17 <AnMaster> you know, this executes slower than my attempt at a befunge93 interpreter in bash....
21:51:24 <Phenax> lmao
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:52:32 <AnMaster> ais523, not sure
21:52:39 <ais523> maybe we could test
21:52:48 <AnMaster> well not when it is compiler
21:52:51 <AnMaster> compiled*
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:30 <AnMaster> ais523, also it was semi-98
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:54:52 <AnMaster> but let IRP continue
21:55:01 <AnMaster> Slereah_, well what happend with that diagnostic?
21:55:09 <AnMaster> Slereah_, care to tell us?
21:56:13 <AnMaster> no?
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:14 <AnMaster> and then?
21:58:20 <ais523> if nothing happens, it's C89
21:58:31 <Slereah_> (It's slow to load!)
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:00 <Slereah_> Oh-oh.
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:19 <AnMaster> Slereah_, as in POSIX
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:29 <AnMaster> ah
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:51 <ehird> hahahaha
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:03 <ehird> that's great
22:02:11 <ais523> AnMaster: well, even on POSIX replacing a running file doesn't alter the running of the program
22:02:21 <AnMaster> ais523, true
22:02:26 <AnMaster> Slereah_, so he isn't dead
22:02:38 <Slereah_> Well, he's still running on that file.
22:02:41 <AnMaster> Slereah_, still show us compiler output?
22:02:46 <AnMaster> not linker one
22:02:52 <Slereah_> Wot?
22:02:53 <ais523> AnMaster: that is so a metagame output
22:02:57 <AnMaster> ah
22:03:00 <ais523> s/output/request/
22:03:07 <AnMaster> true
22:03:10 <AnMaster> not valid then
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:03:52 <AnMaster> err
22:03:52 <Slereah_> So, what do you do? :o
22:03:53 <AnMaster> strings
22:03:53 <ais523> AnMaster: how?
22:04:03 <AnMaster> ais523, there is a 99 bottles of bear in C preprocessor
22:04:09 <AnMaster> looking for details
22:04:14 <ais523> Slereah_: I work my way down to the main function
22:04:25 <AnMaster> ais523, hiding in comments
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:18 <ais523> not portable, then
22:05:26 <ais523> see the comment, it says it works only in Visual C++
22:06:13 <AnMaster> hm ok
22:06:18 <AnMaster> and we now know it is Gcc
22:06:19 <AnMaster> ais523, ^
22:06:28 <ais523> AnMaster: how?
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:06:53 <ais523> oh
22:06:57 <AnMaster> thus it must be GCC
22:07:01 <ais523> Borland C++?
22:07:10 <AnMaster> not for Dev-C++ iirc
22:07:10 <ais523> I used to use that, and IIRC they open-sourced some old versions
22:07:12 <AnMaster> afaik
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:38 <AnMaster> maybe
22:07:40 <AnMaster> + it says ld
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:07:57 <Slereah_> Oh-oh, what's that comment?
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:08:24 <Slereah_> Like you didn't knew it.
22:08:29 <AnMaster> wow
22:08:32 <AnMaster> ais523, you got issues
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:07 <ais523> char abc="/*o*/";
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:29 <AnMaster> err
22:10:32 <ais523> should eliminate all comments and everything inside them
22:10:33 <AnMaster> ais523, no you need a *
22:10:37 <AnMaster> char * abc...
22:10:43 <ais523> so I do
22:10:47 <ais523> char* abc="/*o*/";
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:27 <AnMaster> Phenax, err?
22:11:31 <ais523> Phenax: start with a NUL in the top left corner
22:11:37 <Phenax> ah
22:11:43 <AnMaster> Phenax, you want ascii one?
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:26 <AnMaster> indeed
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:50 <Phenax> thx i understan
22:12:54 <Slereah_> (You are once again of that shiny red, you feel more real already!)
22:12:59 <Slereah_> How do I run preprocessor? :o
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:13:29 <AnMaster> indeed
22:13:55 <ais523> great ASCII art, BTW
22:14:04 <AnMaster> yeah
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:14:49 <Slereah_> Let's say that.
22:14:56 <Slereah_> So, what do I input where? :o
22:15:17 <ais523> Slereah_: gcc -E malbolge.c -o malbolge.i at the command line is possibly the simplest wat
22:15:21 <ais523> s/t$/y/
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:15:45 <AnMaster> Slereah_, yep
22:15:49 <Phenax> 000p 'deletes' 00 :\
22:15:51 <AnMaster> you'd have to
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:28 <AnMaster> Phenax, is that correct?
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:16:52 <AnMaster> 1+
22:16:54 <AnMaster> that would be all
22:16:56 <AnMaster> on stack
22:17:01 <AnMaster> err
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:04 <AnMaster> to print it to
22:17:09 <AnMaster> 1+:.
22:17:11 <AnMaster> should work
22:17:22 <AnMaster> Phenax, BeQunge is crap yes
22:17:26 <AnMaster> correct guess
22:17:30 <ais523> Phenax: NULs are invisible, so you can't see them
22:17:32 <ehird> bequnge is buggy
22:17:40 <Phenax> if i do
22:17:42 <Phenax> 0 000p
22:17:45 <Phenax> it comes out as
22:17:48 <AnMaster> Phenax, try ccbi, it got good debugging
22:17:51 <Phenax> 000p
22:17:51 <AnMaster> or cfunge for speed
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:17 <Slereah_> gcc no works.
22:18:19 <AnMaster> Slereah_, duh. full path of course
22:18:23 <AnMaster> on windows
22:18:29 <Phenax> Any recommended editor for Befunge? It's kind of annoying to edit :\
22:18:35 <AnMaster> Phenax, I use emacs...
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:49 <AnMaster> ais523, picture mode?
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:27 <Slereah_> AnMaster : Then whar?
22:19:36 <AnMaster> Slereah_, I don't know on windows
22:19:39 <AnMaster> search for it...
22:19:46 <AnMaster> I'm a LINUX and BSD user
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:03 <AnMaster> ais523, I used it some
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:20:43 <AnMaster> and by version
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:44 <AnMaster> ais523, ah true right
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:16 <ais523> yep
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:36 <AnMaster> ais523, ugh
22:22:42 <ais523> M-x untabify works
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:01 <ais523> let me check
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 <AnMaster> ais523, nor ending newlines?
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:08 <Slereah_> Except F:.
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:24:54 <AnMaster> ais523, yeah, exactly
22:25:59 <AnMaster> ais523, but how the heck did they handle that POSIX requires case sensitive filenames?
22:26:02 <AnMaster> iirc it does
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:10 <Slereah_> Pime Taradox.
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:27:58 <AnMaster> not that site please...
22:28:07 <ehird> Back in 30 mins
22:28:10 <ais523> then I add this:
22:28:14 <ais523> #define return exit
22:28:19 <ehird> AnMaster: os x is a case insensitive filesystem
22:28:22 <Slereah_> Under?
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:38 <ehird> certified
22:28:48 <AnMaster> ehird, ok, I stand corrected
22:28:56 <ehird> <AnMaster> not that site please...
22:28:57 <ais523> ehird: its case sensitivity is user-configurable, I think
22:28:58 <ehird> more complaining
22:29:05 <ehird> you asked him to define a word
22:29:06 <ehird> he defined it
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:29:37 <ehird> its unsupoprted
22:29:38 <ehird> back in 30 mins
22:31:00 <Slereah_> http://membres.lycos.fr/bewulf/Russell/Go%20and%20be%20free%203.jpg
22:31:06 <Slereah_> Really, it is very telling.
22:31:17 <AnMaster> Slereah_, oh?
22:31:17 <Slereah_> People would rather trick Satan than write in Malbolge.
22:31:23 <AnMaster> hahaha
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:32:23 <ais523> s/through/throw/
22:32:44 <AnMaster> ais523, good good!
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:33:51 <AnMaster> Slereah_, err?
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:34:35 <ais523> and can easily leave
22:34:54 <Slereah_> Damn you and your trickery!
22:35:13 <AnMaster> Slereah_, he is playing by the rules!
22:35:21 <Slereah_> o[Malbolge interpreter] o
22:35:27 <Slereah_> o[Malbolge interpreter] o
22:35:34 <Slereah_> Well, you're blue now, mister comment.
22:35:38 <ais523> Slereah_: I throw in the 59050th char
22:35:39 <AnMaster> ais523, throw the bit in!
22:36:19 <AnMaster> ais523, that cause a crash doesn't it iirc?
22:36:22 <ais523> yep
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:36:42 <AnMaster> ah :)
22:36:45 <AnMaster> Slereah_, there we are :D
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:10 <Corun> Oh god.
22:39:23 <ais523> Corun: been watching?
22:39:30 <Corun> No.
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:12 <Slereah_> Heh.
22:40:16 <Corun> Hefty
22:40:34 <Slereah_> [Malbolge interpreter]o o
22:40:53 <ais523> Slereah_: I walk over to the delicious cake
22:41:01 <Slereah_> [Malbolge interpreter] oo
22:41:07 <ais523> Slereah_: I eat the delicious cake.
22:41:11 <Slereah_> [Malbolge interpreter] o
22:41:14 <Slereah_> Tadaaaa!
22:41:28 <ais523> yay!
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:11 <Slereah_> Not even cake?
22:42:15 <ais523> Slereah_: not yet
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:45 <AnMaster> seen adventure game in b93
22:42:49 <AnMaster> though very simple
22:42:57 <AnMaster> and there is wumpus for b93
22:42:59 <ais523> AnMaster: there's a Befunge Hunt the Wumpus
22:43:05 <AnMaster> as I just said
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:35 <AnMaster> aha
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:50 <ais523> of lifting.
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:17 <AnMaster> Phenax, still there?
22:46:20 <AnMaster> >1+:aaa**`!#v_a,@
22:46:20 <AnMaster> ^ .: <
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:44 <AnMaster> use a monospace one
22:46:45 <ais523> and you could make that befunge-93 easily enough
22:46:53 <AnMaster> ais523, indeed
22:46:56 <AnMaster> just replace the a
22:47:01 <AnMaster> with say 52*
22:47:17 <AnMaster> or for aaa*** why not 5558***
22:47:20 <ais523> 5558*** is probably the easiest way to write 1000 in Befunge-93
22:47:21 <AnMaster> I think
22:47:22 <ais523> ha, snap
22:47:23 <AnMaster> yeah
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:48:24 <AnMaster> err
22:48:32 <AnMaster> fewest instructions
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:49:56 <ais523> $ factor 1000
22:49:56 <ais523> 1000: 2 2 2 5 5 5
22:49:59 <ais523> it's in GNU coreutils
22:50:05 <ais523> so it's probably on your computer
22:50:11 <AnMaster> on freebsd atm
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:29 <AnMaster> Slereah_, true
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:50:44 <AnMaster> and
22:50:46 <AnMaster> tor maj 1 23:50:46 CEST 2008
22:50:49 <AnMaster> tired
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:17 <AnMaster> well I want to stay around
22:51:21 <ais523> OK
22:51:23 <AnMaster> anyway infinite counter is easier:
22:51:32 <AnMaster> 1+:.
22:51:34 <AnMaster> that is all
22:51:44 <AnMaster> not sure if there is any shorter way
22:51:51 <ais523> doubt it
22:51:59 <ais523> unless there's an increment instruction
22:52:01 <AnMaster> what about other languages?
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:25 * ais523 tests
22:53:42 <AnMaster> what about brainfuck?
22:53:43 <Phenax> yeah it you're right
22:53:48 <ais523> t.hs:2:0: parse error (possibly incorrect indentation)
22:53:52 <Slereah_> Brainfuck is wrapping.
22:53:57 <Slereah_> ESO decided it!
22:54:03 <ais523> AnMaster: doing integer to text conversion's a pain in Brainfuck
22:54:04 <AnMaster> Slereah_, well so is befunge
22:54:06 <AnMaster> at some point
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:40 <AnMaster> or whatever the contants are
22:54:40 <AnMaster> err
22:54:41 <Phenax> Are there any other good "General Purpose" esoteric languages like Befunge?
22:54:43 <Slereah_> P'' then :o
22:54:43 <AnMaster> MAX_INT32
22:54:49 <AnMaster> and MAX_INT64
22:54:50 <AnMaster> then
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:31 <AnMaster> of course....
22:55:32 <ais523> and INTERCAL's pretty good for many things, but extremely weak on string handling
22:55:39 <AnMaster> BeQunge isn't b98
22:55:46 <AnMaster> but b93+crap-correctness
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:22 <AnMaster> not 100% sure
22:56:29 <ais523> oh, and INTERCAL outputs in Roman numerals by default, but there are libraries for output in decimal
22:56:37 <Phenax> lol!
22:56:55 <ais523> Phenax: http://intercal.freeshell.org
22:57:13 <AnMaster> Phenax, http://esolangs.org/wiki/Befunge#Examples
22:57:14 <AnMaster> "Sieve of Eratosthenes"
22:57:18 <AnMaster> Phenax, already done :)
22:57:31 <Slereah_> It is rather short :o
22:57:37 <AnMaster> don't ask me how it works, I need to analyze it first
22:57:47 <AnMaster> seems to be 93 though
22:57:58 <Phenax> Befunge is ackward to program in a regular text editor lol
22:58:41 <ais523> yep
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:35 <AnMaster> > xxxxxxxxxx v
23:00:43 <AnMaster> v <
23:00:49 <Phenax> yeah
23:00:50 <AnMaster> > yyyyyyyyyy v
23:00:52 <AnMaster> and so on
23:00:57 <AnMaster> loops and such as needed
23:00:59 <ais523> AnMaster: you're wasting every second line
23:01:03 <ais523> v>xxxxxx
23:01:04 <AnMaster> ais523, yes indeed
23:01:08 <ais523> v>xxxxxxx
23:01:12 <ais523> v>xxxxxxxx
23:01:14 <AnMaster> hah
23:01:16 <ais523> v>xxxxxxxxx
23:01:23 <AnMaster> ais523, yes but adding new stuff is a pain
23:01:34 <AnMaster> at anywhere but the start
23:01:49 <AnMaster> night
23:01:57 * ais523 is going too
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:21:13 <ehird> back
23:25:12 <ehird> <ais523> anyone want a go at the text adventure I started above, anyway?
23:25:13 <ehird> i did
23:25:15 <ehird> but then he left
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:46 <ehird> Slereah_: ?
23:29:50 <ehird> Oh.
23:29:52 <ehird> i don't know.
23:29:54 <ehird> He's silly.
23:29:59 <ehird> I think to keep it busy.
23:30:03 <ehird> As opposed to just inflooping
23:30:07 <Slereah_> It, or me?
23:30:24 <ehird> brb
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:55 <ehird> :D
23:37:59 <ehird> (i.e. no actual pics)
23:40:21 <Slereah_> I do not know what those are.
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:11 <Slereah_> Thank you Wikipedia.
23:42:56 <ehird> Slereah_: not even ascii art
23:43:01 <ehird> play zork online
23:43:03 <ehird> (google it)
23:43:03 <Slereah_> :o
23:43:22 <ehird> Slereah_: wait:
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:20 <ehird> you get the ide
23:45:21 <ehird> aa
23:45:36 <Slereah_> Any grue?
23:45:43 <ehird> Slereah_: Zork is where grues originated
23:45:44 <ehird> (seriously)
23:45:47 <Slereah_> D:
23:46:01 <ehird> Slereah_: zork invented grues
23:46:28 <Slereah_> I know, you said it three lines above
23:46:45 <ehird> but oddly worded
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:49:07 <ehird> Slereah_: Nawwww
23:50:24 <ehird> Slereah_:
23:50:25 <ehird> http://bnewtz.cannet.com/wumpus/
23:51:32 * Slereah_ tries to think of an idea.
23:52:24 <Slereah_> I'm not a big fan of text based adventures
23:52:27 <Slereah_> I tried once.
23:52:33 <Slereah_> With "Nine prince in Amber".
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:54:20 <Slereah_> But Zork is
23:55:06 <ehird> Sure
23:55:11 <ehird> So clone Wumpus
23:55:14 <ehird> Cakeus
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:56:32 <ehird> sauxdado: YES
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
2008-05-02
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:14 <ehird> Yes usually
00:00:18 <Slereah_> Unless they're pixel hunting games.
00:00:20 <ehird> So: LOOK
00:00:42 <sauxdado> Slereah_: i haven't played any interactive fiction games where there would be problems with saving.
00:00:56 <Slereah_> I suppose I'm just lame :o
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:13 <sauxdado> usually you do it with "save"
00:01:14 <Slereah_> I started 'em computers in 95.
00:01:30 <RodgerTheGreat> GregorR: haha awesome
00:01:44 <Slereah_> Lynx to T shirt plox
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:26 <Slereah_> Never heard of them
00:02:39 <Slereah_> Even though I had CD's with 5000 sharewares back then
00:02:50 <RodgerTheGreat> GregorR: examples?
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:03:55 <RodgerTheGreat> lmao
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:09 <Slereah_> What are those T shirts :o
00:04:16 <RodgerTheGreat> that last one alone makes it beyond worthwhile
00:04:41 <Slereah_> sauxdado : I played silly arcade and Lucas Arts adventure games back then.
00:04:55 <Slereah_> What was popular
00:04:58 <GregorR> RodgerTheGreat: It definitely draws comments X-D
00:05:06 * sauxdado checks when photopia came out
00:05:17 <sauxdado> 1998
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:23 <sauxdado> yeah
00:08:30 <ehird> sauxdado: what do you think of the HHGTTG game?
00:08:32 <ehird> that rocked
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:01 <Slereah_> Heh.
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:50 <ehird> sauxdado: sux
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:09:59 <sauxdado> they're so hard!
00:10:00 <Slereah_> But Maniac Mansion was okay though.
00:10:02 <ehird> but yeah
00:10:04 <ehird> i didn't get far either
00:10:07 <ehird> they are really really hard
00:10:08 <Slereah_> And it's from 87.
00:10:14 <sauxdado> it is funny though
00:10:16 <ehird> Slereah_: oh lawd maniac mansion owns
00:10:16 <sauxdado> > i
00:10:18 <sauxdado> You have:
00:10:26 <sauxdado> a splitting headache
00:10:27 <sauxdado> no tea
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:11 <ehird> Well
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:11:44 <Slereah_> Heh.
00:11:47 <Slereah_> SMOOCH
00:12:38 <Slereah_> I played most of them, except some of the very first.
00:12:48 <Slereah_> Zack and another one I think
00:12:55 <Slereah_> I never went far on Indy 3 also
00:13:02 <Slereah_> Fucking mazes.
00:13:03 <ehird> I tried Zack once
00:13:05 <ehird> It was haaaard
00:13:20 <ehird> I can 'speed run' Monkey Island 1 pretty well though
00:13:22 <ehird> 6 hours or so max
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:13:48 <Slereah_> I even got the DIG novel.
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:14:38 <Slereah_> (Not an adventure game)
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:19:38 <Slereah_> 3D
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:21:07 <Slereah_> y
00:21:20 <Slereah_> Although it was rather short.
00:22:43 <ehird> i never finished it
00:22:44 <ehird> ;(
00:23:43 <Slereah_> It can never be finished.
00:23:47 <Slereah_> it ends on a cliffhanger.
00:23:51 <Slereah_> SPOILER
00:24:01 <Slereah_> YOU SHOULD PROBABLY NOT HAVE READ THAT
00:24:10 <ehird> Slereah_: i think i know the ending
00:24:11 <ehird> maybe
00:24:11 <ehird> but
00:24:13 <ehird> it DOES end
00:24:14 <ehird> obviousl
00:24:15 <ehird> y
00:24:16 <ehird> right?
00:24:19 <ehird> i mean, it doesnt go
00:24:21 <Slereah_> Yes.
00:24:21 <ehird> "NO END FOR YOU"
00:24:23 <ehird> and stay like that forever
00:24:24 <ehird> :P
00:24:25 <Slereah_> It ends.
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:21 <ehird> Back
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:31:39 <ehird> qdb-worthy
00:32:02 <Slereah_> Do we even have a qdb?
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
00:33:35 <ehird> ;)
00:34:31 <Slereah_> But when will ESO be thar!
00:39:10 <ehird> Slereah_: Later.
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:22:01 <ehird> heh
01:24:38 -!- Sgeo has joined.
01:26:22 <Slereah> Sgeo!
01:26:28 <Sgeo> Hi Slereah
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:26:58 <Corun> No.
01:27:05 <Slereah> Well, too bad.
01:27:15 <Slereah> It's so delicious and moist.
01:29:33 <ehird> Slereah: I am
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:35 <Slereah> ehird : Mehby tomorrow.
01:30:41 <Slereah> I've got exam tomorrow.
01:30:45 <Slereah> And it's 2:30
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:01 <ehird> It's 1:31
01:31:03 <ehird> and I need cake
01:31:04 <ehird> damnit
01:31:14 <Slereah> YOU SEE A CAKE IN FRONT OF YOU
01:31:17 <Slereah> WHAT DO YOU DO?
01:31:42 <evincar> EAT CAKE
01:32:08 <evincar> I CAN HAZ CAKE PLX?
01:32:51 <Slereah> YES YOU CAN
01:32:52 <evincar> Um.
01:32:55 <evincar> HALP!
01:33:03 <evincar> KTHXBYE
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:35:40 <evincar> Fix't.
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:38:18 <ehird> Slereah: tee hee
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:43:37 <evincar> (Added a cat program)
01:43:39 <ehird> also, SAFETY
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:52 <Sgeo> wb Slereah
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:45:10 <Slereah> But no dice
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:53:49 <evincar> Which is evil and bad.
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:32 <evincar> No I don't.
01:54:36 <evincar> That's the crappy hosting.
01:54:41 <ehird> evincar: Oh.
01:54:47 <ehird> Anyway.
01:54:50 <ehird> i don't really like the design.
01:54:51 <ehird> sorry.
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:11 <evincar> (@ehird)
01:56:27 -!- pikhq has quit (Read error: 104 (Connection reset by peer)).
01:56:51 <ehird> btw evincar
01:56:51 <ehird> http://bennolan.com/behaviour/
01:56:55 <ehird> for the js
01:57:50 <Sgeo> Is there any interest in PSOX?
01:58:25 <ehird> Sgeo: no
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:15 <ehird> but ugly
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:22 <ehird> evincar: looool!
02:02:33 <ehird> you are refusing to use an open source library, because you're writing aproprietary site?
02:02:34 <ehird> that's great
02:02:35 <evincar> ehird: If people stopped using IE, I wouldn't have to waste time and money hacking for it. ^_^
02:02:44 <evincar> No, that's not 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:30 <ehird> bye for today :)
02:03:34 <evincar> And disabling right-click is the stupidest thing possible.
02:03:43 <Phenax> mm baloney and salsa sandwich
02:03:45 <evincar> Urgh.
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:04:41 <Phenax> :>
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:12 <RodgerTheGreat> 'later folks. I'm officially on vacation.
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:18 <AnMaster> Deewiant, there?
08:16:30 <AnMaster> Deewiant, should & instruction handle negative numbers?
08:16:35 <AnMaster> as in -3 being input
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:28:32 <AnMaster> bbl
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:11 <Deewiant> CCBI does. :-)
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:18 <AnMaster> back for a moment
10:24:25 <AnMaster> fizzie, I don't need to worry
10:24:27 <AnMaster> strtoll:
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:27:44 <AnMaster> hm wait, that may not work
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:15 <AnMaster> true
10:42:28 <AnMaster> guess I will have to change it
10:42:52 <AnMaster> ah, gnulib got a strtoll
10:42:53 <AnMaster> so I can just use a copy with some changes I hope
10:43:18 <AnMaster> gah, seems more complex
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:04:25 <AnMaster> hm
11:05:09 <AnMaster> it works fine for numbers that doesn't overflow
11:07:26 <AnMaster> 7777777777777777777 * 10 + 7 = 3990801482939571313 !?
11:07:34 <AnMaster> fizzie, Deewiant ^
11:07:39 <Deewiant> don't know, don't care
11:07:46 <AnMaster> stepping through gdb seems to show it is
11:07:49 <AnMaster> and that's insane
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:42 <AnMaster> if less than it was before?
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:14:11 <AnMaster> hm
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:40 <AnMaster> in C99
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:02 <AnMaster> oh I see
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:27:33 * AnMaster sighs
11:29:53 <fizzie> Well, 3.4.3 undefined behavior "An example of undefined behavior is the behavior on integer overflow."
11:30:21 <AnMaster> yeah
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:43 <AnMaster> brb, phone
11:30:45 <fizzie> Xpdf really should allow searching with regexps, 'over.low' would've helped.
11:35:10 <AnMaster> well kpdf
11:35:21 <AnMaster> but same engine I think
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:34 <Slereah> Gaiz.
12:01:41 <Slereah> Any of you knows how to use rost?
12:01:50 <Slereah> Frost
12:31:52 <AnMaster> Frost? sounds familiar
12:31:56 <AnMaster> can't place the name
12:32:05 <AnMaster> Slereah, related to freenet?
13:26:19 -!- Corun has joined.
13:35:04 <Slereah> AnMaster : yes
13:35:31 <Slereah> Like the usenet of freenet.
13:43:41 -!- Corun has quit (Connection timed out).
13:45:11 <AnMaster> Slereah, I used that once
13:45:14 <AnMaster> was ages ago
13:45:22 <AnMaster> don't remember really
13:45:27 <AnMaster> well first you need freenet
13:45:32 <AnMaster> then you need frost
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:08 <AnMaster> if they are public
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:26 <Slereah> I already know the groups
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:22 <AnMaster> er?
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.
14:28:56 <AnMaster> that depends on group
14:28:59 <AnMaster> some need key
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:26:19 <oklopol> let's take a look
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:05 <oklopol> ah
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:07 <oklopol> what does it do ?
17:31:17 <Phenax> Should endlessly loop through numbers and output 1 if even 0 if odd
17:31:24 <oklopol> yes, but what does it do?
17:31:31 <Phenax> oh
17:31:33 <Phenax> nothing
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:11 <oklopol> well, there you havit
17:33:12 <oklopol> *have it
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:03:25 <ehird> :p
18:03:27 <Deewiant> :-)
18:03:38 <Deewiant> s/implemented/released/ ;-)
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:10:13 <Phenax> g2g
18:12:05 <AnMaster> cfunge 0.2.1 will be released in a few hours
18:14:07 <AnMaster> fizzie, "syntax-highlighted"?
18:14:18 <AnMaster> how on earth do you syntax highlight befunge?
18:14:25 <ehird> AnMaster: um
18:14:26 <ehird> his OUTPUT
18:14:29 <ehird> was syntax hgihglihted
18:14:30 <AnMaster> after all, stuff can mean different things depending on direction
18:14:30 <ehird> and besides
18:14:31 <AnMaster> ah ok
18:14:32 <AnMaster> I see
18:14:35 <ehird> of course you can syntax highlight befunge
18:14:40 <ehird> it just needs to be clever
18:14:47 <AnMaster> ehird, well extremely cleaver
18:15:00 <ehird> AnMaster: just make things *shade*
18:15:02 <ehird> :DD
18:15:06 <ehird> then they combine
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:26 <AnMaster> say:
18:15:30 <AnMaster> v
18:15:36 <AnMaster> "abc"
18:15:46 <AnMaster> +
18:15:47 <AnMaster> or whatever
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:06 <AnMaster> and then there is x
18:16:07 <ehird> and string colour
18:16:08 <ehird> :DDD
18:16:12 <AnMaster> so you can have a string spread out
18:16:17 <ehird> AnMaster: read what i said
18:16:19 <ehird> it's evil
18:16:20 <ehird> but delicious
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:38 <ehird> :D
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:24 <ehird> AnMaster: ;D
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:47 <AnMaster> instruction*
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:37 <AnMaster> hah
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:44 <AnMaster> heh
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:06 <AnMaster> but rendered as a image
18:59:42 <sauxdado> oh, you want some other befunge?
18:59:54 <sauxdado> i guess it gets trickier with 98 features
19:00:44 <AnMaster> sauxdado, of course I want 98
19:00:56 <sauxdado> oh
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:28 <AnMaster> of befunge I mean
19:01:54 * AnMaster is about to release cfunge soon, waiting for stuff to build and upload it
19:02:01 <AnMaster> version 0.2.1-pre1
19:05:59 <Deewiant> got TRDS done yet?
19:10:29 -!- jix has quit (Nick collision from services.).
19:10:39 -!- jix has joined.
19:20:28 <AnMaster> cfunge-0.2.1-pre1 uploaded
19:20:31 <AnMaster> Deewiant, I won't do it
19:20:32 <AnMaster> ..
19:20:50 <AnMaster> Deewiant, https://sourceforge.net/project/shownotes.php?group_id=221310&release_id=596614
19:21:30 <ehird> bah, that's it
19:21:37 <ehird> i'm writing a funge-98 interpreter
19:21:40 <ehird> f*ck you guys
19:21:42 <ehird> :|
19:21:46 <AnMaster> ehird, what?!
19:21:49 <ehird> :D
19:21:58 <Deewiant> AnMaster: shame. :-)
19:22:08 <ehird> AnMaster: i can no longer face the torment
19:22:18 <ehird> and trds NEEDS IMPLEMENTING DAMNIT
19:22:33 <AnMaster> ehird, ccbi got it
19:23:13 <ehird> AnMaster: ccbi is not fruit
19:23:20 <AnMaster> err?
19:24:19 <oerjan> common citrus-based implementation?
19:24:39 <Deewiant> :-D
19:24:53 <ehird> oerjan: hah
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:26:44 <ehird> handprint CNUF
19:28:07 <Deewiant> :-D
19:28:35 <ehird> Deewiant: any suggestions on how to do N-funge?
19:28:37 <ehird> i mean..
19:28:42 <ehird> how on earth will I do the hashtable
19:28:42 <ehird> :P
19:28:58 <Deewiant> :-P
19:29:12 <AnMaster> cfunge isn't fruit either?
19:29:13 <AnMaster> ehird, ??
19:29:23 <Deewiant> cell[cellidx][cellidx][size_t]
19:29:33 <Deewiant> where the size_t is N. :-)
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:29:45 <ehird> Deewiant: hahaha
19:29:53 <ehird> AnMaster: yeah
19:29:57 <ehird> well
19:30:07 <ehird> coord_t*
19:30:08 <ehird> :-)
19:30:11 <ehird> or rather
19:30:15 <ehird> cg_coord_t*
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:25 <ehird> and just do
19:30:26 <ehird> COORD*
19:30:36 <ehird> I don't know how having sex with the notation makes me do that though
19:30:38 <ehird> It's NP-complete
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:33:54 <Deewiant> why would it slow things down
19:33:55 <AnMaster> err
19:33:59 <AnMaster> BIGNUM?
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:24 <AnMaster> due to vector size
19:34:29 <ehird> AnMaster: ... bignum-dimensions?
19:34:30 <ehird> i think not
19:34:36 <ehird> Deewiant: the hash function, etc
19:34:38 <ehird> and .. stuffs
19:34:42 <AnMaster> ehird, yeah and bignum data type!
19:34:53 <AnMaster> ehird, there are general purpose hashing functions
19:34:56 <AnMaster> just define:
19:35:07 <AnMaster> typedef struct COORD {
19:35:11 <AnMaster> size_t len;
19:35:22 <ehird> that's not the point AnMaster
19:35:25 <AnMaster> int64_t dimension[]
19:35:27 <AnMaster> }
19:35:30 <AnMaster> add the missing ;
19:35:32 <ehird> AnMaster: you don't get it
19:35:35 <AnMaster> that works in C99
19:35:39 <AnMaster> ehird, not really no
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:46 <ehird> Deewiant: er what
19:36:48 <ehird> fungespace is a hash table
19:36:55 <Deewiant> yep
19:37:07 <Deewiant> so essentially you have N nested hash tables
19:37:15 <Deewiant> where N is your dimensionality
19:37:19 <Deewiant> or you have one hash table
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:37:59 <Deewiant> or am I confused :-S
19:38:46 -!- Corun has quit (Read error: 110 (Connection timed out)).
19:39:39 <ehird> one hash table
19:39:42 <ehird> Deewiant: you need to hash N elements
19:39:53 <Deewiant> yep
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:44:17 <Deewiant> eh what now?
19:44:35 <Deewiant> "an a[b]"?
19:45:05 -!- Corun has joined.
19:47:05 <ehird> an a[b] expr
19:47:23 <Deewiant> size_t x[];
19:47:28 <Deewiant> size_t y = x[0];
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:49:18 <ehird> uh
19:49:19 <ehird> i know that
19:49:27 <Deewiant> so what are you asking?
19:55:48 -!- Sgeo has joined.
19:59:10 <AnMaster> ehird, yeah tell us
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:03 <AnMaster> think*
20:00:10 <AnMaster> negative integer may work even
20:00:18 <AnMaster> not sure about that though
20:00:49 <Deewiant> of course it'll work
20:00:57 <Deewiant> a[i] is just *(a+i)
20:01:19 <AnMaster> just not sure if it is allowed syntax to have negative i
20:01:23 <AnMaster> or if it is undefined or such
20:01:29 <Deewiant> there's no syntax about it
20:01:32 <Deewiant> that's all it is
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:20 <AnMaster> yeah probably
20:05:32 <AnMaster> Deewiant, however x[-1] is undefined I assume?
20:05:48 <Deewiant> undefined or just plain illegal
20:05:53 <Deewiant> probably the latter
20:05:58 <Deewiant> you're accessing memory you haven't allocated
20:06:10 <AnMaster> it *could* work
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:50 <AnMaster> indeed
20:06:53 <AnMaster> with that I agree
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:08:43 <ehird> same definedness
20:09:11 <Deewiant> yep, and I don't know the definedness :-)
20:09:16 <ehird> Deewiant: 'not'
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:12:27 <Deewiant> oh noes, nasal demons
20:13:44 <sauxdado> oerjan's like that
20:13:52 <sauxdado> full of little surprises
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:35 <ehird> weird
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:35:50 <ehird> heh
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:43:25 <Deewiant> or does it end at the )? :-)
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:26 <ehird> all of it
20:49:27 <ehird> :|
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:52:16 <ehird> that one
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:53:22 <Sgeo> that?
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:34 <ehird> oklopol: sooo
21:09:36 <ehird> ircd golf
21:09:41 <ehird> well
21:09:43 <ehird> don't GOLF it
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:14:36 <Sgeo> RFC for what?
21:15:00 <oklopol> Sgeo: the words are there.
21:16:43 -!- andreou has joined.
21:17:22 <andreou> anyone using contextfree?
21:18:13 <Slereah> Context free grammar?
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:16 <ehird> :O
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:29:38 <ehird> (Kinda)
21:31:12 <Slereah> Maybe... Exfoliate?
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").
21:53:51 <ehird> brb in 30 mins
22:03:29 <oklopol> brb in 30 YEARS
22:03:30 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
22:07:48 <sauxdado> i bet he wasn't joking.
22:13:29 <AnMaster> sauxdado, sure?
22:13:39 <AnMaster> I think he will be back tomorrow at most
22:13:42 <AnMaster> or next week
22:14:06 <sauxdado> i suppose we could ban him for 30 years
22:15:53 <AnMaster> don
22:15:54 <AnMaster> don't*
22:30:12 -!- ais523 has joined.
22:40:54 -!- ais523 has changed nick to ais523|busy.
22:53:50 <ehird> back
22:53:57 <ehird> <AnMaster> don't*
22:53:58 <ehird> do
22:56:49 <sauxdado> the only problem is
22:56:53 <sauxdado> we could ban him for 30 years
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:57:51 <ehird> for 30 years
22:57:55 <ehird> then kidnap etc
22:58:40 <sauxdado> yeah
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:18 <ehird> heh
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:14 <sauxdado> death doesn't matter
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:03:08 <ehird> where is 'he'?
23:04:56 -!- digital_me has joined.
23:05:00 <sauxdado> hm
23:05:20 <sauxdado> yes, that's a problem. We must keep him alive for 30 yeras
23:05:21 <sauxdado> *years
23:05:33 <ehird> sauxdado: hah
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:18 <ehird> sauxdado: looool
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:42 <ehird> this is great
23:08:56 <ehird> but what if nothing comes
23:09:05 <sauxdado> then it wasn't oklopol :)
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:09:56 <ehird> hah
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.
2008-05-03
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:31 <ehird> Bye for today :)
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:00:13 <GregorR> Seeking = PITA
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:33 <Deewiant> AnMaster: metaprogramming
11:56:57 <AnMaster> Deewiant, you mean, like a macro in C?
11:57:06 <Deewiant> sorta
11:57:22 <AnMaster> hm?
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:17 <AnMaster> ah
11:58:21 <AnMaster> like macros then
11:58:22 <Deewiant> so I don't have to write the same code over and over
11:58:28 <Deewiant> sorta.
11:58:36 <AnMaster> #define ROMAPUSH(x, y) \
11:58:37 <AnMaster> static void FingerROMApush ## x (instructionPointer * ip) \
11:58:37 <AnMaster> { \
11:58:37 <AnMaster> StackPush(ip->stack, (FUNGEDATATYPE)y); \
11:58:37 <AnMaster> }
11:58:49 <AnMaster> I do it like that
11:58:56 <AnMaster> then just:
11:58:58 <AnMaster> ROMAPUSH(I, 1)
11:58:58 <AnMaster> ROMAPUSH(V, 5)
11:59:00 <AnMaster> and so on
11:59:17 <Deewiant> yes, that's similar.
11:59:42 <AnMaster> quite powerful, macros in C
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:02:00 <AnMaster> rather simple one really
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:09:29 <AnMaster> ccbi seems to have it global
12:23:09 <Deewiant> AnMaster: say it with me: *not spe-ci-fied, up to you*
12:23:24 <AnMaster> hah
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:27:16 <ehird> Zoop
13:38:38 <ehird> damn i'm leet
13:38:42 <ehird> i'm using emacs and vi on the same projcet
13:38:43 <ehird> at once
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:54:48 <ehird> olsner: i so am
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
14:42:27 <ehird> 'x and return'
15:14:58 <AnMaster> Deewiant, there is a bug in FILE of CCBI I think
15:15:04 <AnMaster> in fopen one:
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:16:49 <AnMaster> hm
15:16:55 <AnMaster> fizzie, indeex
15:16:57 <AnMaster> indeed*
15:17:00 <fizzie> Yes, but you still need to specify a stream.
15:17:58 <Deewiant> you appear to be correct
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:20:55 <ehird> :D
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:08 <ehird> it sounds shaky
15:21:14 <ehird> and even if it is standard
15:21:16 <ehird> i bet some system gets it wrong
15:21:18 <ehird> AnMaster: I know
15:21:20 <ehird> i just found it amusing
15:21:22 <ehird> it's like Him
15:21:26 <ehird> it's The Standard
15:21:27 <AnMaster> Who?
15:21:37 <ehird> AnMaster: Him is what religious people call god
15:21:40 <ehird> always capitalized like That
15:21:49 <AnMaster> ah
15:21:56 <ehird> 'And I talked to Him and asked him for big moneys, and he said FSCK U NOOB'
15:22:21 <AnMaster> haha
15:23:03 <fizzie> I also used to refer to The Hitchhiker's Guide to the Galaxy as "The Book".
15:23:09 <AnMaster> hah
15:24:14 <AnMaster> Deewiant, may I ask wtf you are doing in your fgets routine? it seems overly complex
15:24:39 <AnMaster> doesn't D have a fgets?
15:24:43 <Deewiant> D has the C stdlib
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:35 <AnMaster> but well
15:26:36 <Deewiant> probably the fact that I don't know
15:26:39 <AnMaster> that doesn't really help
15:26:56 <AnMaster> because both will stop on the \n of \r\n
15:27:09 <Deewiant> what about only \r
15:27:27 <AnMaster> well... I don't think your code stop on it
15:27:32 <Deewiant> of course it does
15:27:40 <Deewiant> case '\r', right there
15:27:54 <AnMaster> oh wait yes it does
15:27:55 <AnMaster> hm
15:28:41 <AnMaster> Deewiant, it will probably use whatever is used on the OS
15:28:48 <Deewiant> quite possible
15:28:50 <Deewiant> and I can't have that
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:45 <AnMaster> indeed
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:30:59 <AnMaster> but not required
15:31:00 <Deewiant> I think that's crap. :-P
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:25 <AnMaster> I support all three
15:31:28 <Deewiant> regardless of specs.
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:55 <Deewiant> then intercal is crap. :-P
15:31:57 <AnMaster> doesn't it mess with newlines?
15:32:01 <Deewiant> I don't know.
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:35:48 <AnMaster> so another bug in ccbi
15:36:23 <Deewiant> good catch :-)
15:37:41 <AnMaster> Deewiant, hm... FileHandle[c.FOPEN_MAX] handles; that is decided at compile time in CCBI?
15:37:53 <Deewiant> just like a C array.
15:38:06 <AnMaster> Deewiant, hm?
15:38:13 <Deewiant> hm what?
15:38:17 <Deewiant> it's a static array.
15:38:19 <AnMaster> C99 got VLA :P
15:38:22 <AnMaster> yeah
15:38:24 <Deewiant> not at global scope. :-P
15:38:33 <AnMaster> true
15:38:45 <AnMaster> max fds varies however
15:38:54 <Deewiant> hence, FOPEN_MAX.
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:30 <Deewiant> hm?
15:40:55 <AnMaster> because you are more likely to be able to open like 1024 fds or so
15:41:03 <Deewiant> but it's not guaranteed.
15:41:07 <AnMaster> open files (-n) 1024
15:41:11 <AnMaster> from ulimit -a
15:41:15 <Deewiant> in one program?
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:14 <AnMaster> so it isn't FOPEN_MAX -3
15:42:19 <AnMaster> or something as simple as that
15:42:35 <Deewiant> fine, dynamic then.
15:42:38 <AnMaster> the best way to check would be getconf() I think....
15:42:40 <Deewiant> piece of crap API.
15:42:42 <AnMaster> if you *need* to know it
15:43:05 <AnMaster> err not getconf, that is the command line alternative
15:43:08 <AnMaster> version*
15:43:15 <AnMaster> sysconf()
15:44:40 <AnMaster> Deewiant, if you really need to know it is sysconf(_SC_OPEN_MAX) I think
15:45:17 <Deewiant> whatever.
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:46:06 <AnMaster> not at compile time at least
15:47:12 <AnMaster> Deewiant, also, FOPEN_MAX is from ANSI C
15:47:18 <AnMaster> so don't blame POSIX :P
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:49 <Deewiant> sigh
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:49:57 <AnMaster> hm
15:50:06 <Deewiant> streams vs. file descriptors too. :-P
15:50:07 <AnMaster> yes maximum guaranteed
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:34 <AnMaster> using FILE
15:50:37 <AnMaster> at the same time
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:18 <Deewiant> documentation can be updated
15:51:59 <AnMaster> I agree that FOPEN_MIN may have been a better name...
15:52:12 <Deewiant> or _MIN_MAX? :-P
15:52:14 <AnMaster> Deewiant, but FOPEN_MAX is from ANSI C
15:52:15 <AnMaster> !
15:52:18 <EgoBot> Huh?
15:52:28 <Deewiant> exactly. "Huh?" :-P
15:52:35 <AnMaster> so it is not a case of POSIX
15:52:38 <AnMaster> but ANSI C
15:52:38 <Deewiant> who cares where it's from
15:52:40 <Deewiant> it's badly written
15:52:51 <Deewiant> the man pages aren't copied from some 30-year old ANSI C manual either
15:52:52 <AnMaster> FOPEN_MAX
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:52:58 <AnMaster> C99
15:53:00 <AnMaster> was that
15:53:12 <Deewiant> whatever
15:53:31 <AnMaster> and ranting about it in here won't help ;P
15:53:43 <Deewiant> I'm willing to shut up
15:53:52 <AnMaster> try ranting to ANSI maybe ;)
15:54:08 <AnMaster> or, for C99 I think it is IEEE? hm
15:54:12 <AnMaster> "not us anyway"
15:54:14 <Deewiant> I don't care that much, I rarely have to mess around with raw C APIs
15:54:18 <Deewiant> to this degree
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:13 * AnMaster looks
15:55:15 <AnMaster> "(like c fgets)"
15:55:39 <ehird> Deewiant,
15:55:41 <ehird> use Tango
15:55:41 <AnMaster> Deewiant, seems to indicate same behaviour
15:55:44 <ehird> you depend on it
15:55:46 <ehird> so use its file apis
15:55:47 <ehird> not c's
15:55:47 <ehird> ;P
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:18 <Deewiant> ehird: tangobos exists.
15:56:29 <ehird> Deewiant: Yes, but that's for goatse-watchers.
15:56:30 <ehird> Or something
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:57:49 <AnMaster> it only says "(like c fgets)"
15:57:52 <AnMaster> note "like"
15:58:03 <AnMaster> I interpret that as "same behaviour"
15:58:06 <Deewiant> exactly
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:31 <AnMaster> why bug-for-bug?
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:13 <AnMaster> heh
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?!
16:04:42 <Deewiant> anyhoo, WYGIWYGAINGW.
16:04:45 <Deewiant> I'm off to eat. ->
16:05:48 <AnMaster> ah you like Discworld :)
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.
19:48:16 <ehird> a
21:05:16 <AnMaster> b
21:05:44 <Slereah> cd
21:05:46 <Slereah> EFG
21:06:46 <ihope> hjkl;
21:06:55 <Deewiant> ä'
21:07:13 <Deewiant> <z
21:09:22 <AnMaster> ö!
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:39 <AnMaster> no
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:26 <Deewiant> moving on, we get <z
21:11:34 <AnMaster> qwertyuiopå
21:11:37 <AnMaster> asdfghjklöä
21:11:41 <AnMaster> zxcvbnm
21:11:54 <AnMaster> hm ...
21:11:55 <Deewiant> exactly. so you broke the cycle :-/
21:11:55 <AnMaster> x
21:11:58 <AnMaster> in that case
21:11:59 <Deewiant> :-)
21:12:04 <AnMaster> Deewiant, but so did ihope
21:12:07 <Deewiant> shh ;-)
21:12:19 <AnMaster> as we went alphabetically before
21:12:36 <ihope> abcdefghjkl;'
21:13:20 <AnMaster> abcdefgijkl
21:13:25 <AnMaster> abcdefghijkl
21:13:26 <AnMaster> even
21:13:31 <AnMaster> you forgot i
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:15:45 <ehird> Slereah: hah
21:16:24 <Slereah> Yes.
21:16:29 <Slereah> That's how it is.
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)).
2008-05-04
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:01 <oklopol> GKLYAAAA
13:22:30 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
13:22:37 -!- Slereah has joined.
13:23:04 <ehird> oklopol: akakak
13:48:54 <ehird> a
13:55:50 <oklopol> KAER
13:55:53 <oklopol> :)
13:56:17 <oklopol> trying to read the lojvan reference, a new interest in lalna is growing inside me
13:56:25 <oklopol> *lojban
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:27:40 <ehird> :)
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:51 <ehird> oklopol: heh
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:41 <oklopol> also
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:14:24 <oklopol> lol :D
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:00 <oklopol> wtf. does that mean
15:23:37 <oklopol> instead of <I> <you> *kill*, where <>=push and **=call, what would i say?
15:23:46 <oklopol> *kill* <you> <I>?
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:05 <oklopol> so polish notation
15:26:07 <ehird> as a computer, you can execute it as push 2, push 2, do +
15:26:07 <oklopol> ?
15:26:08 <ehird> by reversing it
15:26:09 <ehird> oklopol: no
15:26:12 <oklopol> 8|
15:26:14 <ehird> just write a stack program
15:26:15 <ehird> and reverse it
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:39 <ehird> wronngggg
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:28 <ehird> but even so
15:32:30 <oklopol> well, yeah.
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:34 <ehird> whereas
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:36:58 <oklopol> no it isn't
15:37:21 <oklopol> *machine
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:38:40 <oklopol> yes
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:39:33 <oklopol> this is a good thing
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:24 <ehird> indirectly
15:45:25 <oklopol> all you have to do is find a link you will definitely remember
15:45:25 <ehird> that's clever
15:45:35 <oklopol> this is very, very easy.
15:45:39 <oklopol> now
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:10 <oklopol> that's clever.
15:49:19 <oklopol> ehird: why?
15:49:25 <oklopol> also, too short to need memorizing
15:49:57 <ehird> oklopol: because E80 is huge
15:49:58 <ehird> :P
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:13 <ehird> oklopol: here
15:51:14 <ehird> http://en.wikipedia.org/wiki/E8_%28mathematics%29
15:51:56 <oklopol> ah
15:51:59 <oklopol> awesome
15:52:12 <ehird> oklopol: yeah
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:54:59 <oklopol> is tha so?
15:55:02 <oklopol> *that
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'
15:57:03 <oklopol> heh, sure
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:24:28 <oklopol> i mean
16:25:06 -!- SimonRC_ has quit (Read error: 110 (Connection timed out)).
16:25:09 <ehird> i said AFTER
16:25:10 <ehird> :(
16:25:13 <ehird> haha
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
17:42:44 <ehird> that sucks
17:49:59 <oklopol> umm... k
17:50:04 <oklopol> why does that suck?
18:04:44 <ehird> oklopol: if you have a lot of commands
18:04:50 <ehird> then the linear matching is slow
18:06:54 <oklopol> :|
18:07:03 <oklopol> usually, people have a prefix
18:07:07 <oklopol> well, bots
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:18:30 <ehird> <user> foo!
18:18:32 <ehird> <foo> user!
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:31:57 <oklopol> k
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:34:44 <ehird> *:-)
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:21 <ehird> s
18:44:29 <ehird> also .. you make me giggle
18:44:42 <oklopol> how so?
18:44:43 <ehird> regexes are easy... but only simple ones
18:44:45 <ehird> e.g. backtracking
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:12 <oklopol> hmm
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:45:26 <ehird> and useful
18:45:33 <ehird> some are even TC
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:01:22 <oklopol> tell me more
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:06 <ehird> that is
19:22:12 <ehird> "abc'd"foo"ef'ghi"
19:22:14 <ehird> instead of
19:22:18 <ehird> 'abc'd'foo'ef'ghi'
19:27:46 -!- oerjan has joined.
19:32:08 <oklopol> ehird: yes, they are
19:32:39 <ehird> oklopol: write a parser
19:32:39 <ehird> :3
19:32:52 <oklopol> :|
19:32:56 <oklopol> well... sure
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:08 <oklopol> hmm
19:44:11 <oklopol> what did you use?
19:44:18 <ehird> oh wait
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:47:58 <Sgeo> hm?
19:48:10 <ehird> oklopol: you need a join
19:48:12 <oerjan> _very_ slowly
19:48:21 <oklopol> ehird: where?
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> >>> parse_em(x)
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:50:22 <ehird> 19!.!.!
19:51:03 <oerjan> could be awkward
19:52:02 <ehird> imagine trying to pronounce !.!.!.
19:52:09 <oklopol> ehird: is it correct?
19:52:28 * oerjan thinks Bill the Cat would pronounce it perfectly
19:52:29 <ehird> oklopol: well, yes.
19:52:34 <oklopol> good
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:53:46 <oerjan> pewtering nonsense...
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:09 <ehird> Deewiant: heh
20:06:13 <ehird> A(g_64,g_64)!!!
20:06:20 <Deewiant> >_<
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:08:54 <Deewiant> Σ(A(g_64!,g_64!))
20:10:34 <oerjan> and i would guess changing 64 to 65 is far better than adding ! to g_64
20:10:48 <Deewiant> I forget how it's defined
20:11:07 <Deewiant> but I'll humor you
20:11:08 <oerjan> and what's the ?
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:31 <Deewiant> it's a sigma
20:11:42 <oerjan> um i don't think yours can either
20:11:53 <Deewiant> how's that?
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:41 <oerjan> which 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:32 <Deewiant> loggamma(19! + 1)
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:51 <ehird> oklopol:
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:01 <ehird> *:O
20:35:06 <ehird> sane, unlike AnMaster's :P
20:37:41 <oklopol> medium?
20:38:34 <ehird> oklopol: priorities
20:38:36 <ehird> high,medium,low
20:38:43 <ehird> high gets executed then medium then low
20:38:52 <oklopol> okay.
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:04 <oerjan> *an
20:39:17 <oklopol> oerjan: lol @ fun
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:25 <ehird> Hey thanks
20:39:27 <oklopol> hmmhmm
20:39:29 <ehird> I can clean up my code bigtime
20:39:29 <ehird> <3
20:39:32 <ehird> You just found a way
20:39:33 <ehird> haha
20:39:43 <ehird> oklopol: but here's what a module looks like
20:39:43 <oklopol> removing it?
20:39:43 <ehird> http://rafb.net/p/xFOvII72.html
20:39:55 <ehird> that will make the regular command syntax work
20:39:56 <ehird> with any prefix
20:39:58 <ehird> '.hello x'
20:40:00 <ehird> and '.hi x'
20:40:02 <ehird> and
20:40:04 <ehird> 'abc!'
20:40:08 <ehird> where abc = bot name
20:40:09 <ehird> responds
20:40:13 <ehird> ($nickname is a special placeholder)
20:40:15 <ehird> and the last one
20:40:15 <ehird> matches
20:40:18 <ehird> abc: hello x
20:40:22 <ehird> abc, goodbye x
20:40:22 <ehird> etc
20:47:17 -!- Slereah has joined.
20:47:50 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
20:48:44 <ehird> oklopol:
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:00:59 <ehird> and crazy stuff
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:19 <ehird> etc.
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:04:47 <ehird> oklopol: y/n
21:04:53 <oklopol> hmm
21:05:10 <oklopol> well, probably y.
21:05:17 <ehird> oklopol: read it
21:05:18 <ehird> it's awesome
21:05:21 <oklopol> soon, soon :D
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:10:13 <ehird> it is wooty now
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:26:57 * Corun agrees
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:30:21 <Corun> Heh
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:29 <ehird> approximate bar
21:37:44 <ehird> [ | | ] <-- kernel programmer
21:37:47 <ehird> ^ you
21:38:34 <oklopol> all this talk about kerneling being hard is making me want to try
21:38:53 <ehird> oklopol: god no#
21:39:44 <oklopol> mind you i'm fairly experienced in c!
21:39:56 <oklopol> well c++
21:40:03 <oklopol> but what's the difference really ;;)
21:40:58 <ehird> heh
21:41:01 <ehird> night and day
21:41:01 <ehird> :)
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:44:27 <oklopol> yes
21:45:46 <oklopol> my c++ was always quite weird, as you can probably guess if you've read my python
22:09:50 <ehird> oklopol: aa
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:24 <ehird> x | x == a -> a
22:21:24 <ehird> x -> lala f x
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:28 <ehird> Sgeo: LOL
22:22:36 <ehird> No.
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:06 <oklopol> ehird: lol :P
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:07 <oklopol> yes
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?
22:41:20 <Corun> :-P
23:03:52 -!- oerjan has quit ("leaving").
23:24:36 <ehird> back
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:29:48 <bsmntbombdood> c is fun!
23:30:23 <oklopol> bsmntbombdood: your mother is fun
23:30:31 <bsmntbombdood> oh really?
23:30:37 <bsmntbombdood> we should have a threesome sometime
23:30:47 <oklopol> you read my mind
23:30:58 <oklopol> she hot?
23:31:14 <bsmntbombdood> you should know
23:33:04 <oklopol> hmm... touche
23:36:26 <ehird> C is simple. just hard
23:37:48 <bsmntbombdood> not hard
23:38:25 <oklopol> whuz so hard about it?
23:40:02 <ehird> 1. philosophy
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:56:53 <oklopol> i'm so gonna read that
23:57:11 <oklopol> looks so boring i'm guaranteed to pass out
2008-05-05
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:02 <oklopol> show example
00:47:11 <oklopol> you're erections are just weak.
00:47:13 <ehird> oklopol: that'd involve finding it myself
00:47:16 <oklopol> ...
00:47:16 <oklopol> your
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:09:40 <Slereah> Heh.
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:09:10 <bsmntbombdood> have you guys played with emacs calc?
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:44:44 <bsmntbombdood> very powerfull, very esoteric
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:17:37 <ehird> hello ais523
14:17:44 <ais523> hello
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:33 <ehird> *geeky
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:19 * olsner madeth it upeth
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:25:47 <Deewiant> )-: lıʌǝ sı ɹǝlıods lıʌǝ
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:26:53 <Sgeo> lol Deewiant
19:27:05 <Sgeo> If "EBG13" wasn'
19:27:07 <Sgeo> 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:40 <olsner> ehird: temper, temper
19:29:47 <ehird> olsner: his rot13 contained a spoiler
19:29:51 <ehird> a rather big one
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:35 <Deewiant> then read it in a few weeks
19:30:39 <Deewiant> having forgotten the spoiler
19:30:57 <ehird> Deewiant: i have never forgotten a spoiler
19:31:10 <Deewiant> O_o
19:31:16 <Deewiant> you should play nethack
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:32:46 <Sgeo> *evil grin*
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:51 <Deewiant> yes, that's obvious
19:34:59 <Deewiant> but the illustration itself is interesting :-P
19:36:27 <Deewiant> 24 march 2001
19:37:14 <ehird> huh?
19:37:27 <Deewiant> is the date the site was put up, I would guess.
19:37:41 <ehird> why
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> ah
19:38:29 <ehird> http://en.wikipedia.org/wiki/Jodi
19:38:32 <ehird> internet artists
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:38:53 <ehird> apparently
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:39:26 <Deewiant> :-D
19:57:59 <ehird> Deewiant: Continuation-passing style is hard.
19:58:08 <Deewiant> agreed
19:58:23 <ehird> I mean.
19:58:25 <ehird> I understand it fully.
19:58:27 <ehird> It's simple.
19:58:30 <ehird> But doing the conversion automatically?
19:58:32 <ehird> :((((((((
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:27 <Deewiant> we must stop him!
20:28:42 <ehird> oerjan: in asm
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:39:10 <ehird> heh
20:47:57 <Sgeo> Yay I did the exercise suggested by the tutorial
20:48:21 <ehird> Sgeo: Just stop.
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:51:28 <ehird> >>>>SLOW DOWN<<<<
20:52:17 <Deewiant> ehird: >>>>CHILL OUT<<<<
20:52:32 <ehird> Deewiant: i can't face being tech support for another sgeo horror
20:52:33 <ehird> :(
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/
20:59:27 <ehird> yes
21:26:24 -!- Iskr has quit ("Leaving").
21:28:02 <ehird> brb 30m
22:02:35 <SimonRC> I had forgotten that Fine Structure rocks
22:02:39 <SimonRC> but it does
22:10:06 -!- oerjan has quit ("Have a finely structured night").
22:57:40 <ehird> Back
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:22 <SimonRC> indeed
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:19:50 * SimonRC goes
23:24:29 -!- timotiis has quit (Read error: 110 (Connection timed out)).
2008-05-06
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:22 <ehird> Bye for today!
01:17:29 <ihope> Bye.
01:17:40 <ihope> You're not going to stick around to see my revolutionary ideas? :-P
01:17:45 <ehird> Nope.
01:17:50 <ihope> See you.
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:47:10 * Sgeo opens Firefox
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:24 <oklopol> hmm
09:04:51 <oklopol> i actually cannot, now that i started reading. perhaps i memorized a crooked rot13 chart :)
09:05:15 <oklopol> EBG = VYT in mine.
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:16 <oklopol> cool, it has a name.
09:10:24 <oklopol> oh
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:30:38 <GreaseMonkey> what's atbash?
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:40 <olsner> 'a'..'z']'
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:16:42 <AnMaster> err
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:26 <Slereah_> Heh.
15:52:34 <Slereah_> Let's see that!
15:52:39 <ehird> 1
15:52:39 <ehird> 2
15:52:40 <ehird> Fizz
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:52:49 <ais523> 4
15:52:51 <ais523> Buzz
15:52:53 <ais523> Fizz
15:52:54 <ehird> tee hee
15:52:54 <ais523> 7
15:53:00 <ais523> I was doing the substring program
15:53:06 <ehird> irp fizzbuzz!!
15:53:12 <ais523> mine almost fits the spec, but it's case-sensitive and outputs in Roman numerals
15:53:19 <ehird> hahahah
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:05 <ehird> ais523: heh
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:16 <ais523> ehird: I know
15:54:22 <ais523> but I was implementing an extension
15:54:23 <ehird> irp++
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:21 <Slereah_> What is this fizbuz business?
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:13 <ais523> yep
15:57:15 <ais523> a nice simple rule
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:43 <ehird> ais523: fizz too
15:57:45 <ehird> but fizbutt is amusing
15:57:48 <ehird> and Slereah_ said it
15:57:57 <fizzie> What about my butt?
15:58:09 <ehird> hahahah
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 <Slereah_> ...
15:58:26 <ehird> ais523: i cant' resisit saying something about dumbing down :-)
15:58:28 <ehird> *can't
15:58:30 <ehird> *resist
15:58:31 <ehird> (irony)
15:58:32 <Slereah_> I did write butt, didn't I.
15:58:51 <ais523> read the INTERCAL, anyway, it isn't too hard...
15:59:01 <Slereah_> I can't read much INTERCAL
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:34 <Slereah_> but I was too lazy to do it
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:55 <ehird> wb ais523
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:31 <Slereah_> Can you guess?
16:22:42 <ais523> most likely not
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:03 <ais523> s/gn$/ng/
16:23:39 <ehird> Slereah_: that was a fulll log
16:23:41 <ehird> *full
16:23:42 <ehird> err
16:23:43 <ehird> ais523:
16:23:48 <ais523> ah
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:39 <ehird> it should work
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 <ais523> but I'm lazy
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:25 <ehird> but .. nah
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:05 <ehird> ;)))
16:39:19 <ais523> does that exist yet?
16:39:24 <ais523> elliotthird.org was down last I checked
16:39:45 <ehird> ais523: no httpd
16:39:47 <ehird> remember? i wiped it.
16:39:51 <ais523> I know
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:49 <ais523> that's kind-of clever
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:53 <ehird> :-P
16:42:56 <ehird> well .. not really
16:42:57 <ehird> since it's perl
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:09 <ehird> .
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:13 <ehird> ais523: ha!
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:08 <ais523> let me try to find it
16:46:13 <ehird> '*dead*'
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:49:58 <Slereah_> ehird : Nothing important.
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:53:28 <ais523> it seems
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:54 <Deewiant> HELLO isn't descriptive
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:13 <Deewiant> HWΔPGM is explicit
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:31 <ehird> Deewiant: HWORLD
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:00 <ehird> would
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 <Slereah_> It seems awfully Japanese ^^
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:47 <Slereah_> That is so cheating.
17:01:59 <ehird> Slereah_: 'awfully Japanese ^^' - the writer is obviously japanese
17:02:04 <Slereah_> I know.
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:42 <Slereah_> "Super NAND Time!!"
17:02:49 <ehird> but ` is such a cheat
17:02:50 <ehird> :-)
17:02:51 <ais523> you have to do bitwise XORs and complements on those values to get to other values
17:02:55 <Slereah_> ais523 : What about "1"?
17:03:04 <Slereah_> It's also a constant!
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:42 <ehird> basically
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:34 <ehird> ais523: no
17:06:35 <ehird> like
17:06:37 <ehird> in interp.pl
17:06:41 <Slereah_> Like an unbalanced [ would just be a conditional
17:06:45 <ehird> require "interp.pl"; exit
17:06:48 <ehird> or something
17:06:52 <ehird> and that's the only way the language can loop
17:06:53 <ehird> by doing that
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:11 <Slereah_> It's hard to find new ideas!
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:31 <ehird> :)
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:03 <ehird> as for gui ones
17:11:06 <ehird> wanna see a Shoes version of that?
17:11:16 <ehird> I can write it *right here*
17:11:19 <ehird> here goes:
17:11:19 <ehird> [[
17:11:22 <ehird> Shoes.app do
17:11:31 <ehird> button("Hello, world") { exit }
17:11:31 <ehird> end
17:11:32 <ehird> ]]
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:15:13 <Slereah_> noes.
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:16:59 <ehird> *write
17:17:01 <ais523> s/right/write/
17:17:04 <ehird> <ehird> here goes:
17:17:04 <ehird> <ehird> [[
17:17:04 <ehird> <ehird> Shoes.app do
17:17:04 <ehird> <ehird> button("Hello, world") { exit }
17:17:04 <ehird> <ehird> end
17:17:05 <ehird> <ehird> ]]
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:05 <ehird> everything
17:28:22 <ais523> ehird: that's never going to happen, what would C-INTERCAL itself be written in?
17:28:28 <ehird> ais523: intercal
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:46 <ais523> s/$/s/
17:28:52 <ehird> ais523: it would interpret it
17:29:00 <ehird> and since everything is in INTERCAL
17:29:02 <ehird> it would be fast
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:07 <Slereah_> noyhing missed.
17:38:17 <ais523> and everything sent/
17:38:22 <ais523> s/\//?/
17:38:31 <ehird> ais523: yes
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:12 <ais523> of lifting.
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:39:58 <Slereah_> What are the puzzles?
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:13 <Slereah_> ais523 : GO 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:41 <ais523> 9.
17:41:46 <ais523> 8. Go to step 2.
17:41:49 <ais523> 7. Swap steps 3 and 5.
17:42:02 <ais523> 6. Swap steps 3 and 4.
17:42:05 <ais523> 5. Go to step 6.
17:42:09 <ais523> 4. Go to step 1.
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:26 <ais523> > 0.
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:42 <Slereah_> JUST CLIMN THE FUCKING STAIRS
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:42:57 <Slereah_> Yes, yes I am.
17:43:02 <Slereah_> Will I be teleported?
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:38 <ais523> 9.
17:43:42 <ais523> 8. Go to step 2.
17:43:46 <ais523> 7. Swap steps 3 and 5.
17:43:50 <ais523> 6. Swap steps 3 and 4.
17:43:59 <Slereah_> Oh noes!
17:44:02 <ais523> 5. Go to step 6.
17:44:06 <ais523> 4. Swap steps 1 and 7.
17:44:10 <ais523> 3. Swap steps 2 and 4.
17:44:14 <ais523> 2. Go to step 1.
17:44:18 <ais523> > 1. Swap steps 5 and 8.
17:44:22 <ais523> 0.
17:44:26 <Deewiant> er what just happened
17:44:26 <ais523> I kept going up until you were teleported
17:44:29 <Deewiant> ah
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:50 <ehird> :P
17:45:53 <ehird> But I can do a web interface, trivially.
17:45:55 <ehird> Shall I?
17:45:58 <ais523> may as well
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:26 <ehird> And you run it.
17:47:38 <ais523> ehird: I have no server that's externally accessible
17:47:44 <ehird> ais523: Ah.
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:47:59 <ehird> filebin.com
17:48:01 <ais523> I have a linux x86 binary, though
17:48:05 <ehird> that'll work fine
17:48:08 <ehird> i am on linux x86 after all
17:48:16 <ehird> oops
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:26 <ais523> and I know it's .ca
17:48:46 <ehird> ais523: that iwll work perfectly
17:48:50 <ehird> *will
17:49:00 <ais523> http://filebin.ca/shdmov
17:49:18 <ehird> Okay./
17:49:23 <ehird> Web interface to the esogame coming up.
17:49:39 <ehird> Hurm
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:49:53 <ais523> that's coming later
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:19 <ais523> ldd esogame
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:38 <Slereah_> Perhaps a cake-like object
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:03 <Slereah_> :D
17:51:06 <Slereah_> I like the idea.
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:14 <Slereah_> Heh.
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:43 <ehird> aha, ais523
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:39 <ehird> esco!!!!
17:55:47 <ehird> haha i think me and Slereah_ are the only ones who find that funny
17:55:50 <ais523> esco????
17:56:00 <ais523> ah, an esoteric OS?
17:56:22 <Slereah_> Esoteric interpreter!
17:56:27 <Slereah_> Well, compiler
17:56:32 <ais523> compiles what into what?
17:56:36 <ais523> and written in what?
17:56:39 <Slereah_> Everything!
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:05 <ehird> to put it bluntly
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:57:32 <ehird> etc
17:58:00 <Slereah_> It would be hard to compile BF into Unlambda.
17:58:06 <Slereah_> Or vice versa.
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:18 <ais523> not quite, no input
17:58:23 <ais523> Underlambda -> C, definitely
17:58:24 <Slereah_> http://esco.sourceforge.net/
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:31 <Slereah_> Relambda?
17:59:38 <ais523> Slereah_: Unlambda + lambda
17:59:48 <ais523> it's a language I use privately to write Unlambda programs
18:00:04 <Slereah_> Oh.
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:10 <ais523> s/$/s/
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:19 <Slereah_> ais523: It has lambdas.
18:01:25 <ais523> OK
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:32 <ais523> the ^ is the same
18:02:38 <ehird> ({} is an array here)
18:02:44 <Slereah_> \ is pretty ugly as a lambda.
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:08 <ehird> trivial
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:27 <ehird> ais523: nahhhh
18:04:29 <ehird> ais523: they could be thunks
18:04:32 <ehird> lazy concat
18:04:43 <ais523> oh, I see
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:07:40 <ehird> <.<
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:05 <ehird> ais523: :(
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:17 <ehird> WHAT is that
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:16:30 <ehird> ais523: Ruby!
18:16:50 <ehird> hm, no Range#+
18:17:06 <ehird> oh, of course
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:51 <Deewiant> why not just a regex
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:11 <Deewiant> @@valid = /[a-zA-Z0-9]+/
18:18:14 <Deewiant> ah
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:03 <ehird> [:a :b | ...]
18:19:16 <ehird> ais523: and the extra one is so that you can do 0-adic ones easily
18:19:16 <ehird> { ... }
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:31 <ehird> ...
18:19:32 <ehird> end
18:19:53 <ais523> ehird: they stole that feature from Magenta!
18:19:59 <ehird> ais523: heheheheh
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:21:56 <ehird> ais523: Ha!
18:22:01 <ais523> oh, and some of the expressions have side effects#
18:22:07 <ais523> s/.$//
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:11 <ehird> 'old, heh
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:38 <Deewiant> asm has only statements
18:25:42 <Deewiant> so adding expressions was an obvious next step
18:26:10 <ehird> exactly
18:26:13 <ais523> ah
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:22 <ehird> yeah
18:26:23 <ehird> it was like
18:26:27 <ehird> 'add a, b; mov b, x'
18:26:29 <ehird> is silly
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:26:54 <ehird> 'mov sqrt(a), x'
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:27:13 <ehird> you see?
18:27:46 <ais523> yes
18:27:49 <ais523> that makes sense
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:01 <ehird> "#{"#{"hello"}"}"
18:29:03 <ehird> is "hello"
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:29 <ehird> *amusing
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:30:21 <Deewiant> yep
18:31:24 <ehird> eh
18:31:25 <ehird> *heh
18:31:54 <ehird> ais523:
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:35 <ehird> ais523: heh
18:32:47 <ais523> oh, yes, email addresses even have an escape syntax for escaping comment markers in comments
18:33:01 <Slereah_> Hello sir helios24.
18:33:09 <helios24> Slereah_, hi ;)
18:33:37 <ehird> ais523: i do believe I just emailed you
18:33:45 <ehird> unix mail(1) :-)
18:33:48 <ais523> it hasn't arrived yet
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:41 <ehird> if you use a 301
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:54 <Deewiant> ais523: ais523x)@...?
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:30 <Deewiant> ah, they nest?
18:38:54 <Deewiant> i.e. (foo(bar)baz) is one comment, not baz)
18:38:59 <ais523> yes, nested comments
18:39:02 <Deewiant> thunderbird thinks it's 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:41:43 <ais523> what does it do?
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:21 <Deewiant> possibly, I don't know
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:53 <ehird> OH
18:44:58 <ehird> Setting the wrong instance variable :|
18:46:04 <ehird> ais523: OK, I just need to add input.
18:53:25 <ehird> ais523:
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:02:54 <ehird> 1024? 4096?
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:03:36 <Deewiant> 1 << rand_int(8, 16)
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:58 <Deewiant> huh what now?
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:19 <Deewiant> you'd never get to the (
19:05:25 <ais523> it's the ) I'm talking about
19:05:28 <ais523> you do get to that
19:05:37 <ehird> ais523: any ideas about my solution?
19:05:38 <Deewiant> right, wrapping
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:54 <ais523> there's more than one
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:08 <Deewiant> d'oh
19:07:13 <Deewiant> right you are
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:09:46 <ehird> aha
19:09:47 <ehird> .eof?
19:09:48 <ehird> of course
19:10:43 <ehird> wow what happened
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:34 <ehird> :-)
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> WTFFF
19:12:46 <ehird> Tue May 06 19:13:41 +0100 2008: ERROR: Resource temporarily unavailable
19:13:03 <Deewiant> :-)
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:23 <ehird> ais523: ah!
19:15:33 <ehird> ais523: how do I do a non-blocking-read-but-blocking-if-it-needs-to-be
19:15:39 <ais523> ?
19:15:44 <Deewiant> just do a blocking read? :-P
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:16:54 <ehird> errr ... What
19:17:03 <ehird> When did I say anything baout slowless
19:17:04 <ehird> *slowness
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:25 <ehird> i fixed thatl
19:17:27 <ais523> oh
19:17:28 <ehird> anyway:
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:05 <ais523> yes, it does in C
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:30 <ehird> Deewiant: Yes.
19:18:38 <ehird> ais523: No, it's common high-level language design
19:18:39 <ehird> Very common
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:18:50 <ehird> *do
19:18:54 <ais523> I'll look it up
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:40 <ehird> ais523: OK
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:48 <ehird> yes
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:21:57 <ais523> s/$/es/
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:25 <ais523> strange
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:22:51 <ehird> XD
19:24:10 <ehird> ais523: into your program?
19:24:13 <ehird> i'm trying not to modify it
19:24:22 <Deewiant> with luck it's line buffered
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:26:52 <ehird> really
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:29:47 <ehird> :-P
19:30:05 <ehird> anyway, ais523, your program just uses raw printf
19:30:06 <ehird> changing would be hell
19:30:16 <ais523> no, trivial
19:30:24 <ais523> if it's just printf you can #define printf to flush
19:30:25 <ehird> :|
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:13 <ais523> _IONBF, sorry
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:33:24 <Deewiant> stdout, NULL, _IONBF, 0
19:33:25 <ais523> that's better
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:10 <ehird> but that sucks
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:25 <ais523> it does, doesn't it
19:34:32 <ehird> yes
19:34:33 <ehird> it does
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:09 <ais523> what 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:33 <ehird> ais523: oh wait
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:35:46 <ehird> so
19:35:47 <ehird> obvious
19:38:40 <ais523> all fixed now?
19:39:04 <ehird> ais523: OK
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:16 <ehird> what signal?
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:41:34 <ais523> number 0, I think
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:11 <oerjan> BRAINS...
19:44:16 <oerjan> sorry, reflex
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:44:56 <ehird> hahaha
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:45:59 <ehird> (eof)
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:46:52 <ais523> but it waits...
19:47:01 <ais523> I wonder if there's a non-blocking version?
19:47:16 <ehird> dont_wait
19:47:19 <ehird> sounds INTERCALly
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:44 <ehird> that would be fun
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:42 <Deewiant> waitpid(pid, WNOHANG)
19:48:54 <ehird> Deewiant: bingo
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:03 <ehird> and
19:49:04 <ais523> isn't it kind-of important in this case
19:49:05 <ehird> the status is returned
19:49:08 <Deewiant> good with google
19:49:09 <ais523> because otherwise it's a no-op
19:49:13 <Deewiant> and somewhat of a rubyist
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:29 <Deewiant> yep
19:49:41 <Deewiant> and Process::WNOHANG if you want to be pedantic ;-P
19:50:19 <ehird> ais523: okay, almost there
19:50:20 <ehird> after a quit
19:50:21 <ais523> pedantic = needed for program to work, or compiler setting?
19:50:22 <ehird> if you refresh
19:50:23 <ehird> it's done
19:50:26 <ehird> looks like i need more delay
19:50:26 <ehird> :D
19:50:28 <ehird> ais523: and needed
19:50:33 <ehird> ruby ain't a compiler anyway
19:50:38 <ais523> sorry, interp setting
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:47 <Deewiant> not sure
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:51:57 <ehird> ais523: snarky
19:52:03 <ehird> Mongrel, the server, has its core written in C
19:52:09 <ais523> sorry
19:52:11 <ehird> and since it's a long running process, really we're IO bound
19:52:16 <ehird> but i agree
19:52:21 <ehird> ruby is the slowest thing ever :-)
19:52:28 <ais523> ehird: try HOMESPRING some time
19:52:30 <ehird> but soon... 2.0..
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:53 <ehird> plain jane callcc
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 <ehird> so it's slow too
19:53:40 <ais523> the next step is getting all langs to have continuations that serialise to disk
19:53:41 <ehird> even so
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:32 <ais523> s/Perl5/Perl6/
19:54:50 <ehird> ais523: i've seen perl6 -- it's nothing like ruby
19:54:55 <ehird> it SHOULD be, though :-)
19:54:55 <ais523> no
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:55:31 <ais523> I like that idea
19:57:06 <ehird> OK, I think I've got the game playable
19:57:59 <ais523> website?
19:58:43 -!- boily has quit ("Schtroumpf!").
19:59:13 <ehird> ais523: about to
19:59:15 <ehird> just disabling saves
20:00:23 <ehird> ais523: http://91.105.74.139:8080/
20:00:24 <ehird> have fun
20:00:29 <ehird> err wait
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:04 <ehird> ais523: yes
20:01:06 <ehird> added the logging
20:01:07 <ehird> should work now
20:01:08 <ehird> http://91.105.74.139:8080/
20:02:06 <ehird> ais523: 'sit good?
20:02:10 <ais523> I think so
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:02 <Deewiant> nor for me in Firefox
20:03:16 <ehird> it does it in a <script> at the end
20:03:17 <ehird> hang on
20:03:19 <ehird> ais523: oh and
20:03:23 <ehird> You are standing on stair 9 of a flight of stairs.
20:03:24 <ehird> :D
20:03:28 <Deewiant> in a script? well I have javascript disabled
20:03:29 <ais523> yep, fine in Epiphany
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:32 <ais523> no
20:04:52 <ehird> OK
20:04:54 <ehird> then I give up on konq
20:04:55 <ehird> :P
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:42 <ehird> ais523: restarted
20:05:44 <ehird> should work now
20:05:52 <ehird> Deewiant: sorry about your game
20:05:53 <ehird> :|
20:06:04 <ais523> don't worry, the BF problem isn't stateful
20:06:05 <Deewiant> no problem
20:06:06 <ehird> ais523: does it scroll now?
20:06:14 <ais523> checking...
20:06:21 <ais523> np
20:06:24 <ais523> s/np/no/
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 <Deewiant> I figured it might want ++.
20:07:28 <ehird> ais523: eh, just use epiphany
20:07:30 <ehird> :-)
20:07:33 <Deewiant> but I guess not
20:07:36 <ehird> Deewiant: enable JS for this
20:07:37 <ais523> ehird: I am now
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:06 <Deewiant> ais523: it's 2. :-P
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:37 <ehird> :D
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> :,[.,]
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:19 <Deewiant> heh
20:09:39 <ehird> i am just imagining someone repeatedly saying ?
20:09:54 <ais523> try +[.+]
20:10:11 <ais523> also, +[]
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:17 <Deewiant> now, how to do it
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:11:50 <Deewiant> heh
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:12:54 <ehird> well, I'm dumb.
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:13:29 <ehird> maybe
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:14:52 <ehird> I get it!!
20:14:56 <ehird> :D
20:14:57 <ehird> ok, I can do this
20:15:14 <Deewiant> now, figure out a program that outputs +[] and then infinite-loops.
20:15:22 <ehird> yes
20:15:23 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
20:15:23 <ehird> that's not hard
20:16:25 <ehird> --[>+<++++++]>>[-]--[>-<---]>+++++>[-]-----[>----<---]>+<<<.>.>.[]
20:16:31 <ehird> beh
20:16:33 <ehird> too long
20:16:36 <ehird> seems that using constants are out
20:16:36 <ehird> oh wait
20:16:38 <ehird> duhh
20:16:38 <ehird> i'm stupid
20:16:39 <ehird> okay
20:16:45 <ehird> this is easyd
20:17:07 <ehird> --[>+<++++++]>.>--[>-<---]>+++++.++.[]
20:17:20 <ais523> I just solved it in 15 chars
20:17:20 <ehird> YESSSS
20:17:22 <ehird> I GOT IT!
20:17:23 <ais523> +[.++.++++++++]
20:17:26 <Deewiant> gratulation
20:17:33 <ehird> me = 38 chars
20:17:34 <ehird> but yay
20:17:35 <ehird> i got it
20:17:40 <Deewiant> but now we're stuck :-P
20:17:45 <Deewiant> (Not programmed yet.)
20:17:47 <ehird> yes
20:17:47 <ehird> :P
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:18:11 <ehird> I did it before
20:18:29 <ais523> they aren't too hard
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:36 <ehird> Deewiant: ... no
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:50 <Deewiant> ais523: oh?
20:19:57 <ais523> because I entered Q, and some step game came up
20:20:06 <Deewiant> ehird: you are teh bug
20:20:08 <ais523> from context, I guess it was your game
20:20:19 <ehird> ais523: WTF
20:20:21 <ehird> ok, debug time
20:20:21 <Deewiant> now it won't accept connections
20:20:29 <ehird> when "q"
20:20:29 <ehird> proc.close
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:30 <ehird> return
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:48 <ais523> ehird: yes
20:20:49 <Deewiant> I may or may not have
20:20:59 <ehird> ok, well it ensures that the ids are unique
20:21:01 <ehird> so what the hell
20:21:02 <ehird> i have no idea
20:21:03 <ehird> restarting
20:21:07 <ehird> re up
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:21:27 <ehird> so yah
20:21:31 <Deewiant> :-D
20:22:01 <ehird> oops
20:22:02 <ehird> another bug
20:22:13 <ais523> what was it? the me-quitting-Deewiant's-game bug?
20:22:27 <ehird> restarted
20:23:05 <ehird> oh, wait a sec
20:23:05 <ehird> OK
20:23:08 <ehird> don't refresh on the game page
20:23:09 <ehird> never refresh
20:23:11 <ehird> only use the form
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:47 <ehird> :P
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:28 <ehird> beh, i broke it
20:28:29 <ehird> ais523: halp :P
20:28:33 <ais523> ehird: how?
20:28:36 <ais523> what did you break?
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:29:54 <Deewiant> dammit
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:20 <ehird> l
20:30:37 <ais523> great way to specify a parser = Cyclexa?
20:30:38 <Deewiant> woo, I did it
20:30:53 <Deewiant> I am on a balcony
20:31:10 <ehird> ais523: not for a natural language for thing like this, thoug
20:31:10 <ehird> h
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:06 <ais523> try the INTERCAL
20:32:08 <Deewiant> ais523: yes, I could tell. :-)
20:32:11 <ais523> room, it's actually possible to die there
20:32:19 <Deewiant> oh noes
20:32:23 <Deewiant> I don't know any INTERCAL
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:42 <ais523> (1) line lable
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:33:58 <Deewiant> death? :-P
20:34:06 <ais523> Deewiant: The NEXT stack ruptures. All die. Oh, the embarassment!
20:34:12 <Deewiant> oh noes
20:34:15 <Deewiant> better avoid that then
20:34:19 <ehird> ais523: halp with stairs?
20:34:34 <ais523> ehird: I've forgotten how to solve it too
20:34:40 <ehird> ais523: heh
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:06 <ehird> and a web backend
20:35:11 <ehird> and a $gui_toolkit backend
20:35:12 <ais523> solved it
20:35:22 <Deewiant> ehird: I started with uuuuud
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:44 <Deewiant> ais523: how many steps?
20:35:46 <ais523> how much help do you need? And of what nature?
20:35:50 <ais523> Deewiant: lots
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:06 <ais523> I'll try
20:36:13 <Deewiant> looks like 22 steps here
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:37 <Deewiant> ais523: uuuuud
20:38:47 <Deewiant> er
20:38:48 <ais523> Deewiant: you have a different solution to me
20:38:48 <Deewiant> ehird:
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:24 <Deewiant> u|uuuuduud here
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:18 <ehird> beh i give up
20:41:19 <ehird> intercal time
20:41:40 <Deewiant> I think I need to map this intercal before there's any hope of success :-S
20:41:48 <ais523> yes, I mapped it too
20:41:58 <Deewiant> but I can't be bothered
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:16 <Deewiant> I'd appreciate that
20:42:21 <ehird> yes
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:27 <ais523> udduuuu|u
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:43:56 <Deewiant> heh
20:44:25 <Deewiant> I'll paste the whole thing for posterity lest it disappear
20:44:28 <Deewiant> u|uuuuduuduuddduuuuuuu|u
20:45:07 <ehird> ais523: so that IF-eso-language ... would you be interested?
20:45:07 <ais523> u|uuduududuuuuudduuuu|u
20:45:10 <ais523> ehird: yes
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:38 <Deewiant> cheers
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:26 <Deewiant> and (3) NEXT to the south
20:48:35 <Deewiant> even a transposition doesn't make this make sense
20:48:44 <ais523> or a rotation?
20:48:53 <Deewiant> to the east is (6) NEXT
20:49:00 <Deewiant> ah, there we go
20:49:15 <Deewiant> for some reason I imagined myself standing on the tile to the west
20:49:20 <Deewiant> but yeah, a rotation
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:10 <Deewiant> argh
20:53:19 <ais523> Deewiant: what happened?
20:53:19 <Deewiant> bloody COME FROMs
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:17 <ehird> so
20:56:19 <ehird> two options
20:56:20 <ehird> like
20:56:29 <ehird> @{put X in Y}
20:56:29 <ais523> commands should have optional args
20:56:29 <ehird> or
20:56:32 <ehird> @{put_in}
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:00 <ehird> ais523: right?
20:58:00 <ais523> if you like
20:58:04 <ais523> ehird: yes
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:17 <ehird> so
21:00:21 <ehird> @{north} -> Lobby.
21:00:22 <ehird> will work
21:00:32 <ehird> @{north} -> "Lower atrium".
21:00:34 <ehird> will also work
21:00:35 <ehird> err wait no
21:00:37 <ehird> @{north} -> 'Lower atrium'.
21:00:39 <ehird> will also work
21:00:44 <ehird> ais523: '...' is for names with spaces
21:00:46 <ehird> "" is a string
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:01:49 <ehird> code example
21:02:00 <ehird> !x means 'the error x
21:02:03 <EgoBot> Huh?
21:02:07 <ais523> looks good
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:31 <ehird> like L"..."
21:02:32 <ais523> when you try to do something with a feedback message, you get that message and nothing else happens
21:02:33 <ehird> (L = literal)
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:03:05 <ehird> ais523: heh
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:13 <ehird> s
21:04:14 <ehird> like
21:04:21 <ehird> "abc%B{def}ghi"
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:37 <ehird> hmm
21:04:38 <ehird> i'll abuse \ for that
21:04:41 <ehird> "abc\B{def}ghi"
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:06:44 <ehird> /.../
21:06:45 <ehird> like ruby
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:08:58 <ehird> to slide further
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:27 <ehird> oh
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:37 <ehird> ais523: yes
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:32 <ehird> @{put $ in plugh}
21:13:36 <ehird> (in the xyzzy item type)
21:13:44 <ehird> ais523: $ is just an arbitary symbol meaning 'me'
21:13:49 <ehird> it's just 'self'
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:05 <ehird> or its aliases
21:15:08 <Deewiant> yays
21:15:10 <ais523> decent syntax
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:20 <ais523> Deewiant: well done
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:30 <Deewiant> yay
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:44 <ehird> ais523: heh
21:15:45 <ehird> anyway
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:15:59 <ais523> what, I typoed it?
21:16:02 <ehird> like, only let it be done on round/square
21:16:04 <Deewiant> ais523: evidently so.
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> ON THE WAY TO 2
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:47 <EgoBot> Huh?
21:18:51 <ehird> makes the error named 'Illegal frobdob' trgger
21:18:52 <ehird> *trigger
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:19:38 <ais523> as well?
21:19:41 <ais523> please?
21:19:54 <ehird> ais523: of course
21:19:55 <ehird> and lambdas
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:28:23 <ais523> ehird: which one?
21:28:40 <ehird> ais523: tv tropes
21:28:46 <ais523> oh
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:33:48 <ehird> so %?
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:19 <ehird> ais523:
21:35:24 <ehird> @{die} -> "That would be \B{suicidal!}".
21:35:24 <ehird> @{really die}
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:38 <ehird> So:
21:35:40 <ehird> > really die
21:35:43 <ehird> You're quick to the punch ... played before?
21:35:45 <ehird> > die
21:35:50 <ehird> That would be *suicidal!*
21:35:56 <ehird> [... more gameplay ...]
21:35:58 <ehird> > really die
21:36:00 <ehird> *Ouch!!!*
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:25 <ehird> like in this room
21:36:28 <ehird> or in this visit to this room
21:36:31 <ehird> or in the past X
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> ais523:
21:38:26 <ehird> @{die}
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:32 <ehird> it's ambigious
21:38:38 <ehird> the gameOver could be after the prompt conditional
21:38:44 <ais523> make whitespace significant?
21:38:47 <ais523> like in Python?
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:26 <ais523> OK
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:41:58 <ais523> yep, that's a pity
21:42:07 <ais523> would { and } be ambiguous?
21:42:54 <ehird> ais523: no, but ugly
21:45:34 <ais523> why 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> @{really die}
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> @{really die}
21:48:10 <ehird> -> : die <- "You're quick to the punch ... played before?"
21:48:10 <ehird> -> {"\B{Ouch!!!}", gameOver}.
21:48:11 <ehird> hmm no
21:48:14 <ehird> that's not consistent enough
21:48:14 <ehird> OK
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:34 <ehird> for consistency
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:48:59 <ais523> it's pretty Haskelly
21:49:27 <ehird> ais523: yes
21:49:30 <ehird> @{really die}
21:49:38 <ehird> __-> : die <- {"You're quick to the punch ... played before?"}
21:49:57 <ehird> ais523: err wait
21:49:59 <ehird> let me try that again
21:50:04 <ehird> @{really die}
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:50:53 <ehird> yes
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:26 <ehird> ais523:
21:51:27 <ehird> @{die}
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:01 <ehird> and compare
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:25 <ehird> standard stuff ;)
21:52:47 <ehird> ais523: basically, in the extra <- -> clauses which require blocks, you need to brace
21:52:48 <ehird> that's it
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:00 <ais523> no, just syntax
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:12 <ehird> I was thinking
21:54:14 <ais523> at least, that's how I describe it
21:54:15 <ehird> (\a -> ...)
21:54:16 <ehird> like haskell
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:54:47 <ehird> no args
21:54:47 <ehird> \ ->
21:54:50 <ais523> OK
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:55:55 <ehird> ais523: heh, why?
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:28 <ehird> is hard to read
21:56:30 <ehird> it blends in
21:56:32 <ehird> i read it as
21:56:36 <ais523> yes, that's even worse
21:56:39 <ehird> (0, \a, b -> a+b)
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:18 <ehird> like
21:58:19 <ais523> oh
21:58:24 <ehird> [1,2,3]:foldl(0, {|a, b| a+b})
21:58:24 <ais523> I thought you were namespacing
21:58:28 <ehird> nah
21:58:31 <ehird> objectspacing
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:00:43 <ehird> most of the time
22:00:45 <ais523> OK
22:01:02 <ais523> if you can override methods per-object, that's one useful example
22:01:08 <ehird> ais523: yes
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:58 <ehird> class xyzzy
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:55 <ehird> ais523: yes
22:08:57 <ehird> oh, another example:
22:08:59 <ehird> class xyzzy
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:35 <ehird> $:name = n
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:00 <ais523> no, not symrefs
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:01 <ehird> ais523: yes
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:16 <ais523> s/integer/Integer/
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:37 <ehird> 1 for an integer
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:08 <ehird> that alternates
22:17:10 <ehird> but .. yeah.
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:19:56 <ehird> ais523: probably
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:27 <ehird> i have no idea
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:41 <ais523> I never used to
22:21:53 <ehird> ais523: you won't believe how I used to write onlin
22:21:53 <ehird> e
22:21:59 <ehird> it was peppered with 'lol'
22:22:05 -!- Tritonio has quit (Remote closed the connection).
22:22:07 <ais523> I rarely write lol
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:21 <ais523> to do what?
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:47 <ais523> s/interpreter/ircd/
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:09 <ehird> actually
22:25:13 <ehird> ais523: someone else skipped it before me
22:25:17 <ehird> and it picked chanserv
22:25:18 <ais523> what was the game?
22:25:18 <ehird> *again*
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:45 <ehird> haha
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:03 <ais523> or a disadvantage?
22:27:04 <ehird> not really
22:27:07 <ehird> it's not a nop
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:28:55 <ehird> ais523: hmm
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:47 <ais523> Perl uses qw for that
22:29:55 <ais523> I reckon you should use a string prefix
22:29:58 <ais523> like w"a b c"
22:29:59 <ehird> hmm
22:30:00 <ehird> good one
22:30:01 <ehird> yes
22:30:27 <ehird> hmm
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:24 <ehird> well, method
22:31:24 <ehird> :P
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:42 <ehird> yesno(Prompt)
22:34:43 <ehird> -> yesses:contains(prompt(Prompt, yesses ++ nos))
22:34:45 <ehird> <- {false}
22:34:47 <ehird> -> {true}.
22:35:00 <ehird> ais523: good?
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:17 <ehird> ais523: huh?
22:36:22 <ehird> w"yes y" -> ["yes","y"]
22:36:23 <ehird> so
22:36:28 <ehird> zooping:
22:36:34 <ehird> ["yes","yes":lower,"y","y":lower]
22:36:34 <ehird> so
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:00 <ehird> err..
22:37:01 <ehird> oh wait..
22:37:02 <ehird> hmm
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:25 <ais523> s/$/s/
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:06 <ehird> (as a method)
22:39:10 <ehird> hmm
22:39:11 <ehird> good point
22:39:15 <ais523> so I can overload it? what fun!
22:39:20 <ehird> ais523: of course you can
22:39:21 <ehird> it's a method
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:03 <ehird> ais523: well, yes
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> by the way
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:18 <ehird> Not complex.
22:45:21 <ehird> Just featureful.
22:45:35 -!- helios24 has quit ("Leaving").
22:45:52 <ais523> they were talking about Shelta, apparently
22:46:02 <ehird> yes
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:47:54 <ehird> i won't
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:49:57 <ehird> like Prolog does
22:50:01 <ehird> so that it's expressive like ruby
22:50:02 <ehird> but portable
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:44 <ehird> *tricks
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:57:52 <ehird> :(
22:58:39 <Slereah> You know me and computers.
23:12:58 -!- slereah_ has joined.
23:14:01 <ehird> GregorR: You?
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:30:04 <ehird> 'rest', C version
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)).
2008-05-07
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:28:49 <ehird> a
00:43:37 -!- Slereah_ has joined.
02:10:06 <ehird> bye for today :)
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:35:58 <pikhq> :p
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:14 <Slereah_> It's up to you!
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:02:18 <oklopol> i think it's pretty safe
09:02:23 <oklopol> to assume that
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:18:30 <oklopol> not at all interesting
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:09:58 <oklopol> hmm
11:09:59 <oklopol> well
11:10:17 <oklopol> lisp + role tags
11:10:25 <oklopol> would be a trivial way
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:36:46 <oklopol> the latter, is, indeed
11:37:44 <Slereah_> Said he, six hours later.
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:02 <oklopol> oh
11:39:05 <oklopol> well yes
11:39:09 <oklopol> guess what i was doing?
11:39:11 <oklopol> *-?
11:39:17 <Slereah_> Masturbating?
11:39:25 <oklopol> no
11:39:27 <oklopol> guess again
11:39:49 <fizzie> Setting things on fire?
11:39:51 <Slereah_> Masturbating?
11:40:05 <fizzie> Hopefully not a combination of those two activities. Ouch.
11:40:20 <oklopol> getting closer.
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:44:01 <oklopol> close = warm
11:44:07 <oklopol> well, or hot
11:44:39 <Slereah_> It exists here as well.
11:44:44 <Slereah_> And in Amurrica
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:48:29 <Slereah_> What about tag?
11:48:36 <Slereah_> For a TAG SYSTEM :D
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
11:52:06 <oklopol> right, shop
11:52:07 <oklopol> ->
12:16:26 <Slereah_> "Unfortunately, the combinatory expressions for interesting combinations of functions tend to be lengthy and unreadable."
12:16:31 <Slereah_> Damn you McCarthy!
12:25:22 <oklopol> lolwut?
13:29:06 <oklopol> okokokokokokokoko
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:15 <ehird> ais523: hello!
16:45:21 <ehird> i have been pondering my language
16:45:58 <ais523> which one? the interactive fiction language?
16:52:14 <ehird> ais523: yep
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:57:39 <ehird> :-)
16:58:00 <ais523> well, you should be able to implement the stairs problem without reference to my code
16:58:03 <ais523> all the data's there
16:58:13 <ais523> and there are only two commands on the steps to deal with, plus NOP
16:58:58 <ehird> ais523: plus nop?
16:59:00 <ehird> how do you nop on it?
16:59:04 <ais523> the top and bottom steps do nothing
16:59:44 <ehird> ah
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:40 <ehird> no?
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:51 <ehird> ais523: right
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:07 <ais523> yes
17:09:28 <ais523> oh, and any error (including ptr < 0, unmatched brackets): statue shakes head
17:15:49 <ehird> ais523: ok
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:19 <ais523_> connection troubles...
17:16:21 -!- ais523 has quit (Nick collision from services.).
17:16:22 <ehird> <ais523> yes
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:17 <ehird> probably
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:21 <ehird> ais523: kind of
17:20:25 <ehird> can't think of a good way to do it though
17:20:26 <ehird> and also
17:20:29 <ehird> @{} overrides
17:20:31 <ehird> events cascade
17:25:45 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
17:26:14 -!- ais523 has joined.
17:26:36 <ais523> sorry...
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> input
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> and also
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:32:48 <ais523> yes, it's intuitive
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:46 <ehird> ais523: yes
17:33:48 <ehird> that's the regular model
17:33:57 <ehird> you have a specific 'halt events' return
17:34:04 <ehird> standard stuff
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:25 <UnrelatedToQaz> hey all
17:47:32 <ais523> hello
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:17 <ehird> ais523: anything
17:54:23 <ehird> you just trigger it
17:54:32 <ehird> in an object
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:42 <ehird> #enter:{|s,e|...}
17:59:45 <ehird> s is the sender
17:59:46 <ehird> e is the vent
17:59:47 <ehird> *event
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> the same
18:00:14 <ehird> ais523: and to trigger:
18:00:32 <ehird> #event(a,b,c)
18:00:38 <ehird> ais523: ah, and those get passed additionally
18:00:40 <ehird> so
18:00:42 <ehird> you could hook into that with
18:00:48 <ehird> #event:{|s,e,a,b,c|...}
18:00:59 <ehird> hmm
18:01:01 <ehird> can't be :
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:54 <ehird> ais523:
18:01:55 <ehird> #statue1:talk={|S,E,M| statue2:run(M)}
18:01:58 <ehird> (random example)
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:20 <ehird> #$:talk("foo")
18:02:46 <ais523> heh, events as properties of objects
18:03:08 <ehird> ais523: yeah, i'm just kinda inventing stuff here
18:03:53 <ehird> ais523: ooo
18:03:56 <ehird> anonymous events
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:22 <ehird> ais523: quite
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:07:26 <ehird> :-P
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:13:30 <ehird> So!
18:13:57 <ais523> so what?
18:14:10 <ais523> sorry, couldn't resist
18:14:39 <ehird> ais523: heh
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:13 <ehird> ais523: yes
18:32:26 <ehird> > <- ] >< [ - - - < > < < 3
18:32:29 <ehird> ais523: that is the oko form
18:32:43 <Slereah_> RABBIT!
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:32 <oerjan> nope
18:36:36 <ais523> <ehird> <oerjan> <ehird> (can we get a chain going?)
18:36:45 <ehird> DAMNIT OERJAN
18:36:49 <ehird> <ehird> DAMNIT OERJAN
18:37:35 -!- Phenax has quit (Read error: 110 (Connection timed out)).
18:37:50 <ehird> well this is hard
18:38:52 <ehird> ooh, i have an esoteric idea
18:38:54 -!- timotiis has quit (Connection timed out).
18:39:02 <ais523> ehird: what is it?
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:39:47 <ehird> heh
18:40:08 <oerjan> hm isn
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:40:58 <ehird> *comic
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:28 <ehird> oerjan: yes
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:22 <ehird> without any work!
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:50 <ehird> ais523 is right
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:53:20 <ehird> with voting
18:54:26 <ehird> ais523: worth implementing?
18:55:09 <oerjan> hm perhaps a version control system
18:56:09 <oerjan> wikipedia is down?
18:56:18 <Deewiant> evidentl
18:56:19 <Deewiant> +y
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:10 <oerjan> Sgeo: o_O
18:57:23 <oerjan> that genuine?
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:01:44 <ehird> bizzare
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:07:53 <ais523> s/reverted/refered/
19:07:55 <ais523> r34358
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:16 <ehird> without testing?
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 <ehird> *mediawiki
19:21:10 <ais523> it would be useful for lots of thing
19:21:13 <ais523> s/$/s/
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:10 <ais523> cool
19:22:11 <oerjan> and Lisp too i guess
19:22:39 <ehird> yes
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:19 <ehird> ais523: well, no
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:42 <ehird> yep
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:42:48 <ehird> lament: yes
19:54:27 <ehird> ais523: So!
19:55:07 <ais523> ehird: KAL
19:55:15 <ehird> ais523: LAK
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 <ais523> what?
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:10 <ais523> yes
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:41 <ehird> OR YOU
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:17 <ehird> oh
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:06:29 <ehird> good enough
20:07:40 <ehird> ais523: so, would you vote for a unified login/logout system
20:07:49 <ais523> yes, if implemented properly
20:07:57 <ehird> oh dear
20:07:58 <ehird> adduser_sgeoster
20:08:01 <ehird> sgeo wants in on ecmanomic
20:08:09 <ais523> ecmanomic?
20:08:15 <ais523> is that a JS version of PerlNomic?
20:08:16 <ehird> ais523: http://ecmanomic.org/
20:08:18 <ehird> perlnomic for JS
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:19 <Sgeo> ehird, yesish
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:01 <ehird> Sgeo: What?
20:12:06 <ehird> I just made my adduser, and I put in my password
20:12:07 <Sgeo> for ECMAnomic
20:12:09 <ehird> I don't see it anywhere.
20:12:26 <Sgeo> ehird, refresh, and you'll see the adduser
20:12:36 <ehird> No.
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:43 <ehird> Sgeo: so?
20:13:48 <ehird> ais523: I wanna start my own codenomic.
20:13:51 <ehird> ais523: Language suggestions?
20:14:06 <ais523> ehird: Smalltalk
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:40 <ais523> ehird: chroot it?
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:22 <ais523> no sane ones, really
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:21 <ehird> :\
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:37 <ehird> i'd love to
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:25:59 <ehird> of anagolf
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:33 <ehird> it's zzo38s
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:07 <ehird> btu anyway
20:27:10 <ehird> it seems to embed brainfuck
20:27:13 <ehird> which is a dumb idea, imo
20:27:17 <ehird> (reading src)
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:27:54 <ais523> . and , are nice I/O
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:25 <ehird> with Seaside
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:33:38 <ehird> no files involved
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:17 <ehird> etc
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:39 <ehird> like
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:05 <ehird> just a few parts
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:02 <ehird> ais523: yes
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:34 <ehird> should i?
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 <ais523> OK
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:40:42 <ehird> :D
20:41:12 <ehird> ais523: done
20:41:52 <ehird> now
20:41:54 <ehird> wait for me to install nginx
20:41:56 <ais523> ⁎⁡*⁕⁑⁢⁂⁎ changed
20:42:13 <ehird> ais523: by the way, smallnomic will not work on IE
20:42:16 <ehird> any complaints? ;)
20:42:22 <ais523> no
20:42:26 <ais523> what goes wrong, BTW?
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:43:15 <ais523> oh, that
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:43 <ehird> *enabled
20:46:44 <ehird> right
20:46:47 <ehird> okay, fine, sure
20:46:48 <ehird> ais523: OK, wait
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:36 <ais523> adduser user group
20:48:57 <ehird> ais523: an existing user?
20:49:00 <ais523> yes
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:49:58 <ehird> ais523: okay
20:49:59 <ehird> cd /var/www
20:50:01 <ehird> mkdir darcs
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:52:25 <ehird> ah
20:52:38 <ehird> ais523: fix'd
20:53:16 <ais523> OK, dirs made
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:18 <oklopol> well, 15
20:55:37 <ehird> 'i saw this like 7 years ago, it's older than Sgeo.'
20:55:40 * Sgeo is 19
20:55:40 <ehird> best thing ever said
20:55:55 <ehird> Sgeo: lies
20:56:16 <ais523> hmm... it seems I can't push to a nonexistent repo
20:56:20 <ehird> ais523: hmm
20:56:22 <ehird> 'darcs init'
20:56:23 <ais523> presumably it needs initialising first?
20:56:24 <ehird> in the right dir
20:56:25 <ehird> remotely
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:56 <ehird> ais523: is it?
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:26 <ehird> ah
20:57:31 <ais523> -bash: darcs: command not found
20:57:44 <ehird> ais523: oops
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:01:55 <ehird> oklopol: heh
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:04:25 <ehird> hm
21:04:26 <ehird> so it does
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:06:22 <ehird> so kill it
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:07 <oklopol> 8|
21:08:13 * oklopol needs to do some logreading
21:08:26 <ehird> ais523: did it push?
21:08:32 <ais523> it's still pushing
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:17 <ais523> several minutes slow?
21:09:34 -!- oklopol has set topic: Reinventing the square wheel - ??? - Profit | http://tunes.org/~nef/logs/esoteric.
21:09:37 <ehird> ais523: Yep
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:52 <ais523> Unlambda
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:01 <ais523> OK, that was a joke
21:11:07 <oklopol> well, 4
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:11:48 <ais523> LET (19-15)=5
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:37 <ihope> :-P
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:06 <ehird> and grep
21:13:10 <ehird> Sgeo: they can't acutally search
21:13:10 <oklopol> ehird: how?
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:19 <ais523> also I'm tired
21:13:20 <ehird> basically, set it to mirror
21:13:25 * ihope slaps Sgeo for using the past past tense
21:13:37 * Sgeo keeps logs..
21:13:39 <ehird> ais523: "Editing component: SNHome" yay
21:13:39 <oklopol> not past tense
21:13:41 <ehird> (SN = SmallNomic)
21:13:42 <oklopol> pasted tense.
21:13:46 <ihope> Yeah, that.
21:13:50 <oklopol> *not past past tense
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:22 <ehird> Sgeo: err no
21:14:26 <ehird> download all the #esoteric logs
21:14:28 <ehird> then grep them
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:15:00 <oklopol> I WILL PAY LOTS.
21:15:04 <oklopol> AND LOTS.
21:15:35 <ehird> oklopol: heh
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:16:33 <ais523> s/a//
21:17:28 <ehird> switch to git
21:17:28 <ehird> :-P
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:04 <ais523> oklopol: yes
21:19:18 <oklopol> well, at 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:53 <ehird> ais523: --mirror
21:19:54 <Sgeo> http://users.ugent.be/~bpuype/wget/
21:19:55 <ehird> for 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:32 <ais523> Sgeo: not sure
21:25:38 <ais523> 1 level deep would be fine for the tunes.org logs
21:25:49 <ehird> just use --mirror
21:25:50 <ehird> it works
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:25 <ehird> :D
21:27:33 <ehird> (and maybe fast)
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:27:56 <ais523> no
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:42 <ais523> yes
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:05 <ehird> ais523: one way
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:18 <ehird> you write in CPS
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:33 <ais523> CPS might make sense
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:43 <ehird> and I mean fugly
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:00 <ehird> yeah
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:13 <ais523> a setjmpPS, in a way
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:52 <ehird> I know, heretical
21:34:53 <ais523> it wouldn't be rewriting
21:34:56 <ais523> and it would be parsed
21:35:07 <ehird> okay
21:35:07 <ehird> well
21:35:08 <ehird> still :P
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:14 <ehird> in my opinion!
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:24 <ehird> dun dun dun
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:48 <ais523> just the init
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:04 <ehird> what i mean
21:37:06 <ais523> send on local, apply on foreign
21:37:07 <ehird> is locally, do yuo have any revisions
21:37:11 <ais523> yes, lots locally
21:37:12 <ehird> or have you just imported it
21:37:13 <ehird> ah
21:37:15 <ais523> 10 of them in fact
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:28 <ais523> why not?
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:22 <ehird> OK
21:41:26 <ehird> then just keep trying to push
21:41:30 <ehird> i think it's your end
21:41:32 <ehird> my vps is fine
21:42:07 <ehird> ais523: hm, scheme would work
21:42:11 <ehird> wait, no
21:42:12 <ehird> okay
21:42:13 <ehird> let's just do C
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:02 <ehird> {
21:43:03 -!- AnMaster has quit ("bbiab kernel upgrade").
21:43:04 <ehird> int foo;
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:07 <ehird> return BLAH;
21:43:10 <ehird> if (x) {
21:43:12 <ehird> ...
21:43:14 <ehird> }
21:43:14 <ehird> }
21:43:21 <ais523> ehird: how many spaces indentation is that?
21:43:23 <ehird> ais523: i hate gnu style so much
21:43:23 <ehird> and 4
21:43:29 <ais523> ehird: I was joking
21:43:33 <ehird> oh good
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:43:59 <ehird> i'd use hard-tabs
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:44:23 <ehird> yayyy
21:45:33 <ehird> ais523: ignore that rant
21:45:38 <ehird> oh, and
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:49:38 <ehird> let me test
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:11 <ehird> ah
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:08 <ehird> always lags
21:55:09 <ehird> for ages
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:00:25 <ais523> no better
22:01:07 <ehird> wtf
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:25 <ehird> .. oh crap
22:01:27 <ais523> you warned me that 'git' was the wrong package on ubunutu
22:01:32 <ehird> yeah
22:01:33 <ehird> stupid
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:12:54 <ehird> err wait
22:12:54 <ehird> not yet
22:13:48 <ehird> OK
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:14:56 <ehird> also
22:14:57 <ehird> udld?
22:14:59 <ehird> that's underload
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:26 <ehird> ais523: ah
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:09 <ais523> git version 1.5.4.3
22:16:18 <ehird> OK
22:16:20 <ehird> that should be fine...
22:16:24 <ehird> ais523: paste your session
22:17:11 <ais523> will do
22:17:42 <ais523> http://pastebin.ca/1011107
22:18:42 <ehird> ais523:
22:18:42 <ehird> compare
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:18:56 <ais523> but I copy/pasted!
22:18:59 <ais523> how did that happen?
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:40 <ehird> and very fiddly
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:21:56 <ehird> it's fun
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:00 <ehird> Exciting, I know.
22:25:27 <ehird> ais523: Oh, and, MIT license.
22:25:45 <ais523> fine
22:27:08 <ehird> ais523: I just pushe
22:27:09 <ehird> d
22:27:49 <ais523> how do I pull?
22:28:00 <ais523> or init, for that matter?
22:28:12 <ehird> ais523: ummm
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:20 <ais523> not yet
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:17 <ehird> nothing can fail
22:29:21 <ehird> oh
22:29:24 <ehird> ais523: you need to do it in the repo
22:30:00 <ais523> ah, it works now
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:39 <ehird> i do _HEADER_H_
22:30:48 <ais523> ehird: I normally don't do include guards
22:30:56 <ehird> ais523: well that's suicidla
22:30:58 <ehird> *suicidal
22:30:59 <ais523> they shouldn't be necessary in well-written programs
22:31:04 <ehird> yes they should
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:31:59 <ehird> in underlambda
22:32:07 <ais523> what do you mean by that?
22:32:11 <ehird> never mind
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:32 <ehird> ais523: OK
22:33:35 <ais523> s/y(.*)y/y$1t/
22:33:35 <ehird> so we don't even need to think about layer
22:33:36 <ehird> s
22:33:38 <ehird> that's convenient
22:33:43 <ehird> isn't it :-)
22:33:50 <ais523> um... (.*?), but it doesn't matter in this case
22:33:55 <ais523> yes, it's convenient
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:14 <ehird> i don't think so
22:34:19 <ais523> probably not needed
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:23 <ehird> but Qt is C++
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:00 <ehird> well
22:36:04 <ais523> it is in Underlambda
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:23 <ehird> actually ais523
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:35 <ehird> also
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:40 <ehird> brb
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:44:17 <Sgeo> OpenSUSE
22:44:31 <ais523> ah
22:45:22 <ehird> Back
22:45:26 <Sgeo> wbehird
22:45:27 <ehird> ais523: yes, but
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:02 <ehird> in underlambda
22:46:04 <ais523> AAAAARRRRRRRRGH!
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:36 <ehird> or similar
22:46:39 <ais523> you weren't printing out functions, though
22:46:39 <ehird> in a reference interp
22:46:42 <ehird> what wsa i
22:46:45 <ais523> you were trying to print out their source
22:46:46 -!- timotiis_ has changed nick to timotiis.
22:46:56 <ehird> well, yes :P
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:14 <ehird> it's simple
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:47:35 <ais523> which are numbers
22:47:40 <ehird> :|
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:49:59 <ais523> Sgeo: in wchar_ts
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:50:21 <ehird> Sgeo: ICU
22:50:25 <Sgeo> ICU?
22:50:30 <ehird> err no
22:50:54 <ehird> icu-project.org
22:50:55 <ehird> Sgeo:
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:30 <ehird> yes it could
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:20 <ehird> i'm not
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:42 <ais523> that's a /lot/ neater
22:52:54 <ais523> and you could have conversion functions to and from other encodings, if needed
22:53:14 <ais523> happy?
22:53:24 <ehird> ais523: not what i said :P
22:53:29 <ais523> no, not what you said
22:53:32 <ais523> much better
22:54:07 <ais523> you'd want duplicate commands for everything
22:54:14 <ais523> that's not good style at all
22:54:21 <ehird> didn't say that
22:54:22 <ehird> oh well
22:54:23 <ehird> :)
22:54:24 <ais523> it's as bad as the strtof strtod thing
22:55:39 <ais523> so, data types: function, number, list
22:55:47 <ais523> oh, and continuation
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:49 <ehird> ais523: um
22:58:53 <ehird> CPS continuation = function..
22:59:03 <ehird> in ANYTHING
22:59:10 <ais523> yes
22:59:17 <ais523> but can you print out source code for a CPS continuation?
22:59:22 <ais523> in any language?
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:40 <ais523> and refcount them
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:21 <ehird> hmmmmmm
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:01:46 <ehird> ?
23:01:55 <ais523> ehird: INTERCAL sig
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:09:40 <ehird> ais523:
23:09:48 <ais523>
23:10:09 <ehird> ais523:
23:10:42 <ais523> ?
23:11:52 <Sgeo> ais523, the important CFJ is 1932?
23:12:04 <ais523> yes
23:12:09 <ehird> ais523:
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:09 <ehird> dooo dooo
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:44 <ehird> ais523: yep
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:13 <ais523> so do I
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:21:59 <ais523> no you can't, surely?
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:36 <ais523> ehird: not really
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:24:49 <ehird> :<
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:29 <ais523> it is
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:36 <ehird> :)
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:49 <Sgeo> in Agora?
23:30:50 <ais523> Sgeo: yep
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:09 <ehird> ais523:
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:20 <ehird> So ironic..
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:52 <ehird> it was me
23:31:55 <ais523> oh
23:31:56 <ehird> but people voted for it
23:31:57 <ehird> :|
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:12 <ehird> no
23:33:14 <ehird> mine did
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:33:58 <ehird> server
23:35:35 <ais523> my logs only go back to April 21
23:36:42 <ehird> ais523: when did ircnomic start
23:36:58 <ais523> can't remember
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:27 <ihope> April 20.
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:42 <ihope> Aye.
23:38:43 <ais523> which is when I first came to hear of it
23:39:26 * ihope nods excessively
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:34 <ehird> Sgeo: after
23:40:38 <Sgeo> oh
23:40:49 <Sgeo> I don't think I was around for the first suffusion, was I?
23:41:24 <ehird> nope
23:41:28 <ehird> me, ihope, kyevan, some others
23:41:34 <ehird> it was very oldskool.
23:44:11 <ehird> ais523: hm
23:44:15 <ehird> reddit lets you create your own reddits
23:44:18 <ehird> redditnomic? :D
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:45:23 <ehird> pancakonomic
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:49:54 <ehird> brb
23:57:06 <ehird> back
23:57:15 <ehird> ihope: Would you participate in a smallnomic?
23:57:17 <ehird> Smalltalk nomic
23:57:28 <ihope> Maybe.
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
23:59:39 <ihope> Numix.
2008-05-08
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:05 <oklopol> virtual ihope - the game
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:10:35 <ihope> Sounds right.
00:11:15 <ehird> ihope: So, like, you have
00:11:19 <ehird> /usr/nomic/bin/propose
00:11:23 <ehird> and you might do
00:11:28 <ihope> Yeah.
00:11:30 <ehird> $ propose
00:11:39 <ehird> Title: Rename 'propose' to 'monkey'.
00:11:44 <ehird> Filename: foo.py
00:11:46 <ehird> Proposed.
00:11:46 <ehird> $
00:11:51 <ehird> $ cat foo.py
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:15 <ehird> yes
00:12:23 * ihope nods
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:12:45 <ihope> Would you?
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:08 <ehird> but still
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:18:41 * ihope nods
00:19:42 <ihope> Maybe we should just find a hosting service in Zimbabwe. :-P
00:20:37 <ehird> :P
00:21:35 <ehird> ihope: smallnomic will be fun, because people will have proposals to add crazy things like refactoring tools
00:21:36 <ehird> :-P
00:23:06 <ihope> :-)
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:23:48 <ehird> It's complicated!
00:23:54 <ihope> Interesting.
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:02 <oklopol> ehird: right, right
00:25:05 <ehird> ihope: the land of rain and crappy techno and indie bands
00:25:06 <ehird> (england)
00:25:15 <ihope> We should find a country where the laws aren't silly.
00:25:22 <oklopol> *found
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:25:47 <ehird> ihope: esoia
00:25:56 <ehird> with the states:
00:26:03 <ehird> Okoland
00:26:09 <ehird> ehirdpamatron
00:26:14 <ehird> and
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:33 <ehird> , lament
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:13 <oklopol> thou shalt be knighted
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:31 <oklopol> psoxia
00:27:43 <ehird> hahaha
00:27:53 <ehird> Kingdom of Esco!!
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:00 <ihope> Claro.
00:29:28 <ehird> omgz idea
00:29:31 <ehird> Haskellnomic
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:01 <ihope> AInomic.
00:33:02 <ehird> ihope: Any opinions on type-safe-haskellnomic?
00:33:05 <ihope> Er.
00:33:13 <ihope> ehird: probably.
00:33:32 <ihope> AInomic. "I propose that ehird be awarded a few points."
00:33:43 <ehird> heh
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:34:40 <ehird> err
00:37:25 <ihope> ehird, do you have a good way of hosting servery stuff?
00:37:35 <ehird> ihope: Yes.
00:37:37 <ehird> I have a slicehost.
00:37:38 <ehird> It is a VPS.
00:37:41 <ihope> Cool.
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.
02:32:38 <oklopol> yeah, bye ->
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:28:58 <GregorR> I HAS C-P-U
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:45:45 <GreaseMonkey> GregorR: try coding an OS in BF
09:45:52 <GreaseMonkey> s/BF/befunge/g
09:46:01 <GreaseMonkey> or having Befunge/Linux
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:53:03 * Slereah- pushes Buthan
09:55:12 <Slereah-> 13 seasons?
09:55:12 <oklopol> if anyone knows where to find those, do inform me, i'm dying to have a tt marathon
09:55:19 <oklopol> so it would seem :|
09:55:24 <oklopol> like... wtf xD
09:55:26 <Slereah-> oklopol : Have you tried the internet?
09:55:33 <oklopol> i've tried torrentz.com
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> so.
13:55:06 -!- ehird has quit (Remote closed the connection).
13:55:09 -!- ehird has joined.
13:55:13 <Slereah_> So.
13:55:22 <ehird> So.
14:05:06 <ehird> heh
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:03 <ehird> nice
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:03 <ais523> alt.lang.intercal
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:01:58 <ehird> code anyway.'
15:02:13 <ais523> ehird: may as well cover myself legally
15:02:17 <ehird> :-)
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:02 <ehird> so ... suprise?
15:04:05 <ais523> not really
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:10:30 <ehird> ais523: ye
15:10:30 <ehird> s
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:26 <AnMaster> very nice
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:11 <ais523> well, of course
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:19 <ehird> then you can do
15:21:25 <ehird> self lightbox: aWATask
15:21:31 <ais523> lightbox?
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:30 <ais523> like gksudo
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:09 <ehird> for e.g.
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:19 <ehird> ais523: yes
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:12 <ehird> ais523: indeed
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:28 <ehird> fun!
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:03 <ehird> :-P
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:20 <ehird> ForteInteger
15:34:22 <ehird> which just holds an integer
15:34:23 <ehird> and then
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:13 <ehird> but hey.
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:19 <ehird> it's all great
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:22 <ehird> i'm lovin' it
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:38:43 <ehird> and it's lovely
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> ais523:
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
15:59:39 <ehird> 2 + (x := 3). "5"
15:59:41 <ehird> x. "3"
15:59:52 <ais523> yes, I like that
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:52 <ehird> :-P
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:17 <ehird> etc
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:14 <ehird> yep
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:11 <ehird> ais523: no
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:22:46 <ehird> *way
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:26 <ehird> non-obtrusive JS
16:29:27 <ehird> :-)
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:33:49 <ehird> :P
16:34:00 <ais523> ehird: why?
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:05 <ehird> ais523: no..
16:37:07 <ehird> it was global
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:29 <ehird> ais523: hm
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:06 <ais523> ok
16:43:23 <ehird> ais523: good idea?
16:43:27 <ehird> or should i KISS
16:43:34 <ais523> no idea
16:45:19 <ehird> ais523: hm
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:47:58 <ais523> no
16:48:02 <ais523> I don't know Seaside
16:48:15 <ais523> and I'm not that interested in making original design decisions for smallnomic
16:50:02 <ehird> ais523: bah ;)
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:11 <ehird> :P
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:00:37 <ehird> ais523: what is
17:00:38 <ehird> it
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:19 <ehird> nope
17:07:20 <ehird> about to
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:38 <ais523> that I know of
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:02 <ehird> you can do
17:08:04 <ehird> Initial commit.
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:16 <ehird> ais523: alright
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:12 <ehird> ais523: :-)
17:09:26 <ehird> you're the one who said that eso compilers don't have to be eso
17:09:33 <ehird> ais523:
17:09:33 <ehird> mv .c temp/lexer.c
17:09:34 <ehird> mv: cannot stat `.c': No such file or directory
17:09:46 <ais523> where?
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> y: src/lexer.l
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:14:47 <ehird> ick works
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:16:48 <ais523> it's worse than that
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:30:39 <ehird> A=4
17:30:50 <ais523> ehird: context?
17:31:05 <ehird> context={#A: 4}
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:16 <ehird> ais523: it's not
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:13 <ehird> ah yes
17:38:15 <ehird> it is comparison
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:38:39 <ais523> 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 <ais523> context?
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:41:24 <ehird> Reset.
17:41:31 <ais523> stack?
17:42:06 <ehird> LinkedList(Context>>viewStack, Empty)
17:42:20 <ais523> nomic?
17:42:46 <ehird> a Nomic
17:43:03 <ais523> LinkedList?
17:43:41 <ehird> LinkedList
17:43:49 <ais523> true?
17:44:25 <ehird> true 'dat
17:44:43 <ais523> but I thought you'd caused true to become false earlier
17:45:00 <ehird> true 'dat
17:45:14 <ais523> 'dat?
17:45:23 <ehird> [syntax error]
17:45:25 <ehird> Reset.
17:45:31 <ais523> dat?
17:46:10 <ehird> recursive structure of Great Meaning
17:46:17 <ais523> recursive?
17:46:53 <ehird> recursive
17:47:04 <ais523> literal LOL, again...
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:48:37 <ehird> Reset.
17:48:46 <ais523> version?
17:49:09 <ehird> 2i
17:49:18 <ais523> IRP?
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:25 <ehird> [humour error]
17:50:27 <ehird> Reset.
17:50:36 * ais523 got the humour
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:02 <ais523> cake: areYouALie?
17:51:20 <ais523> (is that the right syntax?)
17:51:21 <ehird> [syntax error]
17:51:24 <ehird> Reset.
17:51:30 <ehird> ais523: maybe try just 'cake'
17:51:34 <ais523> OK
17:51:35 <ais523> cake?
17:51:38 <ehird> a NiceTry
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:17 <ehird> 'thing message'
17:52:19 <ehird> 'thing message: arg'
17:52:22 <ais523> ah
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:50 <ehird> Reset.
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:25 <ehird> but:
17:53:31 <ehird> [Nomics are already delicious. Duh.]
17:53:32 <ehird> Reset.
17:53:39 <ehird> (try 'nomic players')
17:53:44 <ais523> nomic players?
17:54:04 <ehird> a Set (YOU)
17:54:12 <ehird> [error: wrong result]
17:54:13 <ehird> a Set (YOU, cake)
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:05 <ais523> what's a string?
17:56:08 <ais523> single quotes?
17:56:10 <ehird> [Single quotes.]
17:56:21 <ehird> [Also, {me, cake} should be Set with: me with: cake]
17:56:31 <ais523> the same arg twice?
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 <ehird> etc
17:56:56 <ais523> to a Set object, which is responsible for creating sets
17:57:00 <ehird> yes
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:46 <ehird> ais523: truth
17:57:55 <ehird> but it's elegant *and* useful!
17:57:56 <ehird> perfect
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
17:58:58 <ehird> but abstracted
17:59:00 <ehird> VW Smalltalk
17:59:02 <AnMaster> oh god
17:59:14 <ehird> well, not really
17:59:15 <ehird> AnMaster: what
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:29 <ehird> and...
18:00:30 <ehird> it fails
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:08 <ehird> ais523: nope
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:21 <AnMaster> about that
18:01:29 <ais523> well, it doesn't exist AFAIK
18:01:34 * ais523 googles it just to make sure
18:02:12 <AnMaster> yeah but the idea... -_
18:02:14 <AnMaster> -_-
18:02:43 <ais523> oh dear
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:09 <ehird> ais523: oh dear
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:11 <ais523> worse
18:05:12 <ais523> http://msdn.microsoft.com/en-us/library/cc301882.aspx
18:05:20 <ais523> Ctrl-F on "smalltalk"
18:05:33 <ais523> ah, it's describing the same thign
18:05:37 <ais523> s/gn/ng/
18:05:45 <AnMaster> COBOL for .NET? APL for .NET? Smalltalk for .NET?
18:05:47 <AnMaster> W T F
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:32 <ehird> I bet it has GC.
18:06:34 * AnMaster prefers a lean runtime, just there to handle the "talk to OS bit"
18:06:35 <ehird> And abstractions.
18:06:39 <ehird> And that's 'simpler'.
18:06:42 <AnMaster> like libc is mostly
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:05 <AnMaster> iirc it is open source
18:07:08 <ehird> ais523: exactly!
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:08:49 <ehird> yep
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:10:54 <ehird> ais523: ha
18:11:01 <ehird> can you even do that?
18:11:07 <ais523> I don't think so
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:11:30 <AnMaster> *blink*
18:11:31 <AnMaster> ???
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:29 <AnMaster> interesting
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:16:17 <AnMaster> interesting
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:00:50 <Slereah_> People of Esoteria.
22:01:03 <Slereah_> Does Recursive Functions of Symbolic Expressions and Their Computation by Machine Part II exist?
22:01:07 <Slereah_> I can only find part 1.
22:02:31 <ehird> Slereah_: Maybe
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:18 <ais523> just tedious
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:43 <ehird> BRB
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:12 <ehird> and apply
22:10:14 <ehird> and it's TC
22:10:16 <ehird> lisp is just everything else
22:10:20 <ehird> ais523: evaluate
22:10:24 <ais523> oh
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:12 <Slereah_> Well yes
22:11:32 <Slereah_> But can Lisp be TC with just the cons-car-cdr-eq-atom-cond?
22:11:42 <ais523> what does atom do?
22:11:42 <Slereah_> And a buttload of atoms
22:11:50 <Slereah_> and other variables
22:12:06 <Slereah_> Atom returns T or F, depending on the atomicity of the variable
22:12:09 <Slereah_> Atomicitude
22:12:11 <Slereah_> Atomicism
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:30 <Slereah_> So I guess
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:25 <ehird> back
22:15:30 <ais523> and function definition can simulate lambdas
22:15:36 <ais523> actually, no it can't
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:16:47 <ehird> TC:
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:18:49 <ehird> well
22:18:51 <ehird> strict LC interp
22:18:54 <ais523> LC?
22:18:58 <ais523> oh, lambda calculus
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:41 <ehird> meh
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:05 <ais523> oh
22:20:05 <ehird> it needs no quote
22:20:07 <ais523> of course
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:25:36 <ehird> Zoop
22:26:34 <Slereah_> ZIBBIDIBAH
22:29:24 <ehird> ais523: Gonna make the browser more advanced in a sec
22:37:25 <ehird> .
22:37:35 <ais523> ..
22:38:16 <ehird> ...
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:39:51 <ehird> i'll miss you
22:41:10 <ehird> I hereby request to be listed as an observer of Agora Nomic.
22:41:14 <ehird> 'sthat even valud
22:41:17 <ehird> *valid
22:41:19 <ais523> yes
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:22 <ais523> so am I
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
22:47:36 <ehird> dn't actibsyr
22:47:41 <ehird> dn' t activate
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"").
2008-05-09
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:31:12 <ehird> bye :)
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:09 <ehird> ais523: hello
13:48:13 <ehird> Squeak just did the most retarded thing
13:48:14 <ais523> hello
13:48:16 <ehird> I had saved and quitted yesterday
13:48:18 <ehird> and I start it up
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:29 <ehird> by hand
13:48:37 <ehird> and then I'm gonna hope that thy apply cleanly
13:48:38 <ehird> :|
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:22 <ais523> yes, exactly
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:46 <ehird> ais523: actually
13:52:50 <ehird> it's a Self/Smalltalk mix
13:52:54 <ais523> OK
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:39 <ehird> ais523: cool
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:20 <ehird> ais523: you don't
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:51 <ehird> ais523: yes
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:04 <ehird> read 'er up
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:01 <ais523> my method doesn't
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:11:04 <ais523> s/class/object/
14:44:23 -!- Iskr has quit (Read error: 110 (Connection timed out)).
14:45:01 -!- Iskr has joined.
14:49:06 <Slereah_> Guys, in Batman Begins.
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:28 <Slereah_> Feather?
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:29:50 <Slereah_> Need any flux capacitatorN
15:29:59 <ais523> I doubt it would help
15:30:12 <ais523> the problem is this:
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:10:18 <Slereah_> Does someone still have it?
19:28:04 -!- Tritonio has quit (Remote closed the connection).
19:32:57 <AnMaster> Slereah_, hm pi caculus?
19:33:10 <AnMaster> related to the famous irrational number in any way?
19:33:31 <Slereah_> Pi calculus.
19:33:31 <Slereah_> No.
19:33:31 <Slereah_> http://en.wikipedia.org/wiki/Pi_calculus
19:34:02 <AnMaster> seems complex
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:25:52 <AnMaster> Slereah_, interesting
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:32:39 <Slereah_> AnMaster : Already tried
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:56:55 <Slereah_> Eaten by a grue.
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 <ais523> is that spam?
21:00:29 <Slereah_> I suppose that isn't the pi calculus book I was looking for.
21:00:34 <Slereah_> Yes, yes it is
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:24:26 <GregorR> http://www.qdb.us/167654
21:25:12 <ais523> wow, I think that's the first time I've been pastebinned
21:27:00 <Slereah_> But, this isn't funny D:
21:27:10 <ais523> presumably it was to GregorR
21:27:18 <ais523> GregorR: explain?
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:32:55 <Slereah_> Or pie 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:35:02 <Slereah_> You're a nerd?
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:12 <kar8nga> yes
21:37:22 <kar8nga> actually there are people who would do
21:37:28 <kar8nga> they are called mathematicans
21:37:37 <Slereah_> But mathematicians are nerds.
21:38:23 <kar8nga> then describe me your definition of nerd, please
21:39:50 <Slereah_> See : kar8nga
21:40:13 <kar8nga> good point *g
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:54:52 <Slereah_> What are they doing?
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:01:54 <ihope> Oh.
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:29:26 <ihope> How does that go?
22:29:53 <kar8nga> know what a topology is?
22:30:00 <ihope> Yes.
22:30:48 <kar8nga> well, then take f: (X,T) -> (Y,S)
22:31:02 <ihope> Assume f is continuous, then?
22:31:08 <kar8nga> yes
22:31:10 <kar8nga> X the space
22:31:18 <kar8nga> T the topology on X
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:35 * ihope nods
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:33:11 <kar8nga> of which one?
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:17 <kar8nga> yes
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:33 <kar8nga> yes
22:36:58 <ihope> Oh, it's just the intermediate value theorem stated topologically?
22:37:16 <kar8nga> it's a bit more general
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:11 * ihope nods
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:15 * ihope nods
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:41:55 <ihope> Yes, it did.
22:42:29 <kar8nga> other question
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:11 <Slereah_> I'm reading and readin
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:17 <kar8nga> C->C
22:46:23 <kar8nga> well, sorry, there it works
22:46:25 <kar8nga> in a way
22:46:36 <kar8nga> because C is separable
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:43 <kar8nga> ihope: ever done?
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:23 <ais523> no
22:52:25 <ais523> it's just in my head
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:26 <ais523> yes
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:14:44 <ais523> ?
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").
2008-05-10
00:13:30 -!- evincar has joined.
00:14:07 <evincar> It's been a while, eh?
00:14:19 <Slereah_> Who are you?
00:14:24 <Slereah_> :D
00:15:54 <SirGeo> hi evincar
00:16:25 <evincar> Slereah_: Ha. Bloody. Ha.
00:16:42 <evincar> So yeah, hi, everybody.
00:20:31 <Slereah_> Then again, I don't remember
00:33:13 <GregorR> evincar cracked corn, and I don't care.
00:33:36 <evincar> Sho you right.
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:14 <ehird> I believe.
00:34:16 <evincar> Ha.
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:22 <ehird> Hmm
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:12 * Sgeo joins #
01:08:25 <lament> Sgeo: ###################################################
01:08:35 <ihope> # is fun.
01:08:37 <lament> that'll keep him busy for a while
01:08:37 <Sgeo> * ################################################### :Nick/channel is temporarily unavailable
01:08:42 <lament> oh, too long
01:08:46 <lament> try ##########
01:08:52 <ihope> #, ##, ###, ####, #####, ######, ########, #########.
01:11:56 <ehird> * ############### :Cannot send to channel
01:12:37 <Sgeo> Indeed
01:13:41 <ihope> Interesting.
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> Join me!
01:15:47 -!- ehird has left (?).
01:23:39 -!- ehird has joined.
01:29:07 <ehird> zoooooooom
01:29:17 <ihope> Zooooooooom?
01:29:21 <Slereah_> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
01:29:27 <ihope> Hmm, that's not quite right. Zoooooooom?
01:38:01 <ehird> Bye for today :)
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:50:18 <ehird_> So
12:55:08 -!- ehird_ has quit (Read error: 113 (No route to host)).
13:22:02 -!- ehird has joined.
13:49:45 <ehird> Osk.
14:25:51 <ihope> irc.slashnet.org, channel #nomic?
14:42:43 <ehird> ihope: Thanks.
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:16:02 <ehird> okokokoko
17:18:46 <oklopol> okokokokokoko
17:19:07 -!- timotiis has joined.
17:30:15 <olsner> ok?
17:30:35 <oklopol> ok?
17:31:44 <olsner> ook ook
17:33:15 <oklopol> ofofofofofofofofofofo
17:33:36 -!- Judofyr has quit.
17:35:18 <ihope> Okolopo.
17:35:43 <ehird> Ca
17:36:14 <oklopol> zonyfo
17:36:56 <ihope> Un pez dice al otro, "¿Qué hace tu papá?" El otro le responde, "Nada.
17:37:14 <ehird> mi'e .Eli,at.xrd.
17:38:47 <oklopol> mu bise vatme do mitme luu kacmo mo
17:41:43 <olsner> eljest rappakalja
17:42:02 <oklopol> now whaz that mean?
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:45:50 <oklopol> although i'd say xyrd
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:46:42 <ehird> y
17:46:44 <ehird> with [quotations]
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:49 <ehird> (translate into:)
17:47:56 <ehird> ["Elliott Hird" I called am] I say
17:49:02 <oklopol> ah
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:42 <oklopol> but wait...
17:49:56 <oklopol> i'm not sure about quoting either actually :D
17:50:58 <oklopol> lu ... l'iu
17:51:01 <oklopol> *li'ui
17:51:05 <oklopol> *li'u
17:51:10 <oklopol> hard key to press
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:55 <ehird> say that
17:52:57 <ehird> with a space in front
17:55:21 <oklopol> umm
17:55:31 <oklopol> i don't know how to put a space in front
17:57:42 <ehird> oklopol: like this
17:57:44 <ehird> ' a'
17:57:48 <ehird> You hit the space bar.
17:57:51 <ehird> Then put the message.
17:58:03 <oklopol> okay
17:58:06 <oklopol> i'll do that.
17:58:07 <oklopol> a
17:58:09 <oklopol> done
18:00:43 <ihope> Hmm.
18:01:12 <ihope> What, your client automatically removes spaces in front?
18:01:29 <oklopol> yes
18:02:00 <ihope> Interesting.
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:08 <ehird> :|
18:03:31 <oklopol> umm... k
18:03:39 <oklopol> in front of what exactly?
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:38 <oklopol> let's retry
18:04:42 <oklopol> ehird: tabbed
18:04:46 <oklopol> ehird: non-tabbed
18:04:52 <oklopol> is there a space before the first no?
18:04:53 <oklopol> *one
18:04:56 <Tritonio> hello everyone. can someone explain to me some things about gpg?
18:05:07 <ehird> oklopol: nope
18:05:12 <oklopol> hmm
18:05:14 <ehird> Tritonio: maybe.
18:05:15 <Tritonio> (whenever you can) :-)
18:05:29 <oklopol> ehird: i shall test <<< then, is there a space?
18:05:53 <ehird> oklopol: nope
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:06:55 <Tritonio> ;-D
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:01 <oerjan> test
19:04:12 <Sgeo> hi oerjan
19:04:17 <Sgeo> What was the test for?
19:04:23 <oerjan> space in front
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:10:37 <pikhq> LMAO
19:17:10 <ehird> pikhq: Seen Duck & Platypuss?
19:17:13 <ehird> *Platypuses
19:17:19 <ehird> It's been epic.
19:18:21 <ehird> pikhq: also
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:26 <ehird> pikhq: Hahaha.
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:21:05 <pikhq> *shrug*
19:23:43 * oerjan blinks
19:24:04 <oerjan> Thou Wicked Tempter Thou
19:24:16 <ehird> oerjan: Haha, I'm writing it actually.
19:24:17 <ehird> Soon.
19:24:44 <oerjan> s/Wicked/Treacherous/
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:26:37 <ehird> agreed?
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:02 <oerjan> use when
19:28:18 <ehird> oerjan: 'use when'?
19:28:19 <ehird> oh
19:28:30 <ehird> when :: (Monad m) -> m Bool -> m a -> m ()
19:28:31 <ehird> or something
19:28:32 <ehird> right?
19:28:46 <oerjan> Bool -> m a -> m ()
19:28:57 <ehird> oerjan: OK
19:28:59 <ehird> so
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:34 <oerjan> yeah
19:29:37 <ehird> ihope: nope
19:29:40 <ehird> takes a Bool
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:29:57 <ihope> Hmm.
19:29:59 <ehird> ihope: yes
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:30:57 <ehird> oerjan: :-)
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:55 <ehird> (XOR.)
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:30 <ehird> it's gibberish
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:34:58 <ehird> Ah, wait.
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:40 <oerjan> & typed
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:22 <ehird> but still
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:39:52 <oerjan> heh
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:52:49 <ehird> id would work
19:52:51 <ehird> 'a' would not
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:53:56 <oerjan> or something
19:54:58 <ehird> ihope: they would
19:55:03 <ehird> (\x -> x) is perfectly compilable
19:55:04 <ehird> oerjan: of course
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:54 <ehird> compiles
19:56:56 <ehird> __registrationCheck = id
19:56:57 <ehird> compiles
19:56:58 <ehird> __registrationCheck = a
19:56:59 <ehird> doesn't
19:57:06 <ihope> You said 'a', not a.
19:57:10 <ehird> ihope: Oh.
19:57:12 <ehird> Sorry.
19:57:33 <ihope> What if it's a Freudian concept spammer, though? :-P
19:58:10 -!- Judofyr has joined.
20:02:08 <ehird> ihope: Beats me.
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:57:48 <SimonRC> hm
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:30 <SimonRC> no
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:23 <SimonRC> um, wrong button
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:04:52 <ehird> :P
21:05:03 <SimonRC> ehird: ok
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:06:41 <SimonRC> GregorR: yeah!
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:45 <SimonRC> smalltalk?
21:07:49 <ehird> ...
21:07:53 <ehird> SimonRC just said 'Smalltalk?'
21:07:54 <SimonRC> nah, that's fine
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:01 <ehird> Or rather
21:09:03 <ehird> in Squeak
21:09:05 <GregorR> SimonRC: OH
21:09:07 <GregorR> SimonRC: MY
21:09:09 <GregorR> SimonRC: FUCKING
21:09:09 <ehird> i think you just have to tell it to recompile the irhgt part
21:09:10 <GregorR> SimonRC: GOD
21:09:13 <ehird> GregorR: What the
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:41 <GregorR> ehird: D_8
21:09:41 <ehird> In the 50s.
21:09:43 <GregorR> *D-8
21:09:51 <ehird> With lisp.
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:11:12 <SimonRC> i.e. in one's head
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:13:14 <SimonRC> maybe
21:23:41 <ehird> <SimonRC> and just to show that being an atheist doesn't stop you being irrational:
21:23:43 <ehird> hehehe
21:23:54 <ehird> the theists have enough fuel against us already don'tchathink :-)
21:26:08 <SimonRC> hmm
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:27:32 <SimonRC> :-P
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:06 <ehird> ihope: Yus
21:39:07 <oerjan> it could be
21:39:10 <ihope> I guess so.
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:16 <ehird> ihope: Not hard
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:42:42 <ihope> :-P
21:44:32 <SimonRC> Did I recommend my latesd obsessional game here yet?
21:44:54 <ihope> I don't think so.
21:45:43 -!- oklopol has joined.
21:46:24 <SimonRC> it's ROM CHECK FAIL
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:47:20 <SimonRC> alt-enter for fullscreen
21:49:24 -!- oklopol has quit (Connection reset by peer).
21:50:07 <SimonRC> arrows to move, space to fire
21:50:27 <ehird> SimonRC: You did.
21:50:40 <SimonRC> ah, ok
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:08 <SimonRC> WTF at what?
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:05:40 <SimonRC> weird
22:06:21 <SimonRC> 'cause RCF almost likelyly uses the Python bindings for Pycap
22:06:54 <ehird> SimonRC: indeed
22:06:59 <ehird> SimonRC: and
22:07:03 <ehird> python bindings for *popcap*
22:07:04 <ehird> AKA pycap
22:07:08 <ehird> AKA unmaintained ;)
22:07:37 <SimonRC> hm
22:08:01 <SimonRC> is this freind "W.P. van Paassen"?
22:09:17 <ehird> SimonRC: err, I don't think so
22:09:18 <ehird> why
22:09:28 <SimonRC> just guessing
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:09:51 <ehird> ;)
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:22:15 <ehird> BRB ~30m
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.
2008-05-11
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:34:32 <ehird> :3
00:34:36 <ehird> No more drama!
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:10 <ehird> first comment
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:37:58 <SimonRC> heh
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:45:00 <pikhq> Comedic gold.
00:46:51 <GregorR> Ow.
00:47:09 -!- kar8nga has joined.
00:47:35 -!- kar8nga has left (?).
00:49:06 <ehird> SimonRC: Speaking of minesweeper and zork...
00:49:07 <ehird> xyzzy
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:50:58 <ehird> I gues
00:50:58 <ehird> s
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:24 <ehird> SimonRC: link plz
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:10 <ehird> xyzzy
00:53:13 <ehird> Xyzzy the xyzzy
00:53:17 <ehird> Xyzzy the xyzzy in the xyzzy
00:53:17 <ehird> etc
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 <SimonRC> heh
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:12 <SimonRC> or rather, where you must
00:55:28 <Slereah_> what
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:55:45 <SimonRC> hmm, kinda
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:56:59 <ehird> like
00:57:03 <ehird> "Blah blah and you said about blah."
00:57:07 <ehird> "Xyzzying plugh: etc etc"
00:57:10 <ehird> for like 5 pages
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:07 <ehird> and crush it
00:58:11 <ehird> which causes the world to evaporate
00:58:20 <SimonRC> you're nuts
00:58:21 <ehird> and you escape on a plughland parachute made of xyzzy
00:58:22 <ehird> to another planet
00:58:24 <ehird> THE END
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:43 <ehird> hey
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:03 <Slereah_> Between 12 and 14?
01:02:07 <Slereah_> Way too old.
01:02:12 <Slereah_> And where's the shit and vomit?
01:02:19 <ehird> Slereah_: Lmao
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:04:29 <ehird> Slereah_: Hah
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:05:59 <ehird> Slereah_: Yes.
01:06:03 <ehird> It's called MY MOTHER
01:06:16 <Slereah_> I just got ICEBURNED
01:06:20 <ehird> Tru 'dat.
01:06:20 <Slereah_> D:
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:42 <ehird> Slereah_: I SO AM
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:09:22 <Slereah_> Can you prove this?
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:13:16 <Slereah_> Then bam, I die.
01:13:19 <SimonRC> then ...
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:34 <ehird> *unrelated
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:31 <Slereah_> fnord
01:16:47 <Slereah_> The Illuminatus is pretty much plot vomit.
01:16:49 <ehird> Slereah_: How did you send an empty message?
01:16:53 <Slereah_> But it's a fun book.
01:16:59 <Slereah_> ehird : l33t skillz.
01:17:05 <ehird> Wow.
01:17:16 <ehird> Can *I* have l33t skillz?
01:17:54 <SimonRC>
01:18:05 <Slereah_> You can acquire them here : http://www.encyclopediadramatica.com/Computer_Science_3
01:18:05 * SimonRC fiddles...
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:19:57 <Sgeo> ..?
01:19:57 <SimonRC> fnord
01:20:13 <SimonRC> some people will see nothing on this line instead:
01:20:24 <SimonRC> fnord
01:20:40 <Sgeo> Is there supposed to be more than just "fnord"?
01:20:40 <Slereah_> I'M SHITTING IN YOUR CHIMNEY
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:11 <SimonRC> Sgeo: what colours?
01:21:13 <ehird> Sgeo: How can you see blank space twice?!
01:21:14 <Sgeo> regular
01:21:18 <SimonRC> odd
01:21:20 <SimonRC> your
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:36 <ehird> it's a mode
01:21:38 <ehird> that's enabled by default
01:21:45 <SimonRC> not on this channel though
01:21:51 <Sgeo> what's +c?
01:22:12 <ehird> SimonRC: No, colour is stripped
01:22:14 <ehird> i can assure you
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:40 <SimonRC> Sgeo: no
01:22:47 <Sgeo> SimonRC, I see it as red.
01:22:57 <ehird> toldya
01:22:57 <pikhq> I don't.
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:23:54 <SimonRC> pikhq: no
01:25:16 <SimonRC> I had a more-unusual-than unusual dream
01:25:24 <ehird> SimonRC: I like dreams!
01:25:26 <ehird> Tell
01:25:39 <SimonRC> I was, um, somewhere, and I could ly
01:25:45 <SimonRC> but only about a metre up
01:25:52 <SimonRC> above that, I fell slowly
01:25:54 <SimonRC> :-(
01:26:20 <ehird> You could ly, could you?
01:26:27 <SimonRC> um, fly
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:28:37 <ehird> ;)
01:28:48 <ehird> 'original form'?
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:02 <SimonRC> consider a MMORPG...
01:30:14 <ehird> ah
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:31:59 <SimonRC> zzzzzzzzzzzzzzzz
01:32:20 <ehird> SimonRC: bye
01:32:21 <ehird> :)
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:39:48 <ehird> FOR CANADA QUORUM
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:10 <ehird> Bye for today :)
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:09:38 <SimonRC> .
12:10:03 <SimonRC> oklofok: xpln!
12:11:31 <oklofok> NEVER
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:47:48 <AnMaster> ;P
12:48:09 <Deewiant> ... useful :-P
12:50:39 <AnMaster> Deewiant, well, why not?
12:50:42 <AnMaster> just a wild idea
12:51:40 <Deewiant> I might not call it ESOL... BFHQ or something rather, it's only two langs after all
12:51:47 <Deewiant> but whatever, go ahead :-P
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
12:52:21 <AnMaster> just two ones I thought of
12:52:24 <AnMaster> whitespace maybe
12:52:25 <AnMaster> and some more
13:11:32 <AnMaster> just an idea anyway, will finish some other fingerprints before that
13:14:08 -!- kar8nga has quit ("Leaving.").
13:25:38 <oklofok> esol = lose.
13:25:46 <oklofok> (just a wild palindrome)
13:28:50 <AnMaster> oklofok, palindrome is when it is same backwards and forwards isn't it?
13:29:05 <oklofok> why not
13:29:23 <oklofok> and by that i mean "yes".
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:29:58 <AnMaster> well, ROMA = AMOR
13:30:06 <AnMaster> AMOR was some greek god or something iirc?
13:30:12 <AnMaster> Amor in that case
13:31:10 <Deewiant> amor is the roman god of love
13:31:28 <AnMaster> ah that fits well them
13:31:29 <AnMaster> then*
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:58 <oklofok> i'll ask python
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:43 <oklofok> >>> def reverse(a):
13:32:45 <oklofok> ret=""
13:32:47 <oklofok> for i in a:
13:32:49 <oklofok> ret=i+ret
13:32:51 <oklofok> return ret
13:32:53 <oklofok> >>> "esol = lose"==reverse("esol = lose")
13:32:55 <oklofok> True
13:33:09 <AnMaster> oklofok, lose is esol reversed
13:33:14 <AnMaster> but it is not a palindrome
13:33:16 <oklofok> hmm
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:53 <AnMaster> oklofok,
13:33:54 <AnMaster> <oklofok> esol = lose.
13:33:54 <AnMaster> <oklofok> (just a wild palindrome)
13:33:57 <AnMaster> err yes?
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:37 <AnMaster> and?
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:05 <AnMaster> I see
13:35:09 <oklofok> :|
13:35:13 <oklofok> so i wasn't quoting well eonugh
13:35:14 <oklofok> enough
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:35:42 <oklofok> this is gonna be *sweet*
13:36:11 <oklofok> after implementing an sql query evaluator, sql is very, very hard to understand! :P
13:36:16 <oklofok> but, yeah, cya ->
13:38:09 <AnMaster> oklofok, err it is hard to understand after you implemented it?
13:38:12 <AnMaster> ???
13:39:09 <oklofok> whooops! silly me
13:39:16 <oklofok> i forgot my irony tags!
13:39:24 <oklofok> <IRONY> after implementing an sql query evaluator, sql is very, very hard to understand! :P </IRONY>
13:39:41 <AnMaster> oklofok, what XML Schema?
13:39:46 <AnMaster> ;P
13:39:52 <oklofok> :D
13:39:53 <SimonRC> AAaaAAaagrgrh!
13:40:00 <AnMaster> SimonRC, what?
13:40:01 <SimonRC> don't mention xml schema
13:40:05 <AnMaster> SimonRC, DTD then?
13:40:21 <AnMaster> is that better?
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:40:53 <AnMaster> so it would be
13:40:55 <AnMaster> bbl food
13:40:57 <AnMaster> sorry
13:41:14 <SimonRC> you can't say "element foo containts an element bar and an element baz"
13:41:33 <oklofok> unless you have tourettes
13:41:37 <oklofok> then you can say anything
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:50:47 * SimonRC goes
13:51:24 <AnMaster> well
13:51:55 <AnMaster> (foo (bar) (baz))
13:51:59 <AnMaster> or
13:52:11 -!- olsner has joined.
13:52:13 <AnMaster> <foo><bar /><baz /></foo>
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:23:37 <RodgerTheGreat> hey guys
20:24:12 <Slereah-> Hai
20:24:18 <oerjan> hay
20:25:11 <RodgerTheGreat> my vacation's over- back to the rat race. :/
20:25:17 <oerjan> (umoq ap!sdn)
20:25:20 <RodgerTheGreat> hi Slereah, oerjan
20:25:43 <RodgerTheGreat> oerjan: y'know, there's a unicode alphabet to do that properly
20:25:59 <oerjan> /umop/umoq/s
20:27:13 <oerjan> unj ou s,+ey+ +nq
20:27:31 <Slereah-> RodgerTheGreat : Do you race rats professionaly for a living?
20:27:52 <RodgerTheGreat> not professionally, no
20:27:59 <RodgerTheGreat> more like a hobby
20:27:59 <oerjan> actually, RodgerTheGreat is secretely a lab rat
20:28:13 <oerjan> second cousin twice removed of Brain
20:39:43 <bsmntbombdood> oh hi oerjan
20:40:16 <pikhq> Ho ih, najreo.
20:41:10 <bsmntbombdood> thanks for fixing my grammar
20:47:02 <ehird> oerjan: I almost have that captcha done for haskellnomic
20:47:02 <ehird> :-P
20:54:19 * bsmntbombdood pours more gin
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:38:31 <ehird> oerjan: tada
21:41:28 <oerjan> todo?
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:27 <AnMaster> missing plugin?
21:55:30 <AnMaster> RodgerTheGreat, ?
21:55:38 <RodgerTheGreat> it's a Java Applet
21:55:43 <AnMaster> RodgerTheGreat, can I get it in non-applet format
21:55:49 <AnMaster> I got java but not plugin
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:56:50 <RodgerTheGreat> the source is linked to right on that page
21:56:57 <RodgerTheGreat> it's just a single file
21:57:29 <AnMaster> oh ok
21:57:36 <AnMaster> 43 FPS
21:57:38 <AnMaster> and?
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:17 <Slereah-> Heh.
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:02 <RodgerTheGreat> I wouldn't expect it to vary much
22:00:25 <AnMaster> RodgerTheGreat, +/- 1-2 FPS when I run other stuff in bg after all
22:00:30 <AnMaster> but no
22:00:34 <AnMaster> your app stays the same
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").
23:53:20 <ehird> I am back
23:54:33 <RodgerTheGreat> wb
2008-05-12
00:00:06 <ehird> AnMaster has still LeftCanadaInAHuff I see.
00:00:26 <SimonRC> zzzzzzzzzzzzzzzz
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:14:41 <ehird> I love JS too :D
00:14:47 <RodgerTheGreat> ok, sweet. :D
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:15:21 <ehird> 'Cause I'm crazy.
00:15:24 <Slereah-> But I'm not in the mood
00:15:26 <RodgerTheGreat> I highly encourage trying to use inline SVG
00:16:02 <ehird> RodgerTheGreat: Inline? I'll just make it an .svg
00:16:04 <ehird> .svg has <script>
00:16:05 <ehird> :DDD
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:09 <ehird> (and the DOM)
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:30 <RodgerTheGreat> I think a few more lines is a fair tradeoff
00:17:36 <ehird> 1- about the same to me 2- yeah this is probably true 3- a good point
00:17:38 <RodgerTheGreat> I wasn't trying to make it ultra-compact, anyway
00:17:39 <ehird> not sayign that it's bad
00:17:42 <ehird> just that it's kinda funny
00:17:47 <RodgerTheGreat> heh, yeah
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:41 <ehird> :DD
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:20 <RodgerTheGreat> I'd totally help out with the assembly side of that
00:19:25 <ehird> RodgerTheGreat: hahah
00:19:27 <ehird> maybe
00:19:29 <ehird> ;P
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:20:35 <ehird> :-)
00:20:40 <ehird> (java!)
00:20:51 <RodgerTheGreat> heh
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:22:58 <RodgerTheGreat> indeed
00:23:07 <RodgerTheGreat> I like both for very different reasons
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:36 <RodgerTheGreat> agreed
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:18 <RodgerTheGreat> ooooo
00:25:28 <ehird> (jreisegs new toy , port of Processing to js)
00:25:35 <ehird> (of jQuery fame)
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:06 <ehird> unchanged
00:26:09 <RodgerTheGreat> Yeah, I've read about it
00:26:12 <RodgerTheGreat> pretty damn nifty
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:36:28 <ehird> :3
00:37:12 <RodgerTheGreat> ?
00:38:01 <ehird> RodgerTheGreat: Agora nomic.
00:38:08 <RodgerTheGreat> oh
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:11:29 <pikhq> Brilliant.
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:13:04 <lament> can't tell which one
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:40 <ehird> Bye for today :-)
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:07:03 <lament> or used to be spoken!
03:07:13 <lament> or will be spoken!
03:08:02 <pikhq> Let's determine the languages it's *not*.
03:08:10 <pikhq> It's not Afrikaans, for one.
03:08:31 <lament> It's not English!
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:12 <pikhq> Wrong phonology.
03:09:16 <lament> or Old Afrikaans
03:09:31 <pikhq> Afrikaans ain't very old.
03:09:32 <lament> oh i know
03:09:33 <pikhq> ;)
03:09:41 <lament> i think it's proto-indo-european
03:09:43 <pikhq> It ain't Esperanto.
03:09:59 <lament> ja ne
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:26 <pikhq> Ne.
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:11:03 <lament> very easily in fact.
03:11:24 <Slereah-> ...
03:11:33 <Slereah-> SIMOOOOOOOOON!
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:37 * pikhq laughs
03:15:48 <pikhq> There is a religion which considers Zamenhof a diety.
03:32:23 <bsmntbombdood> guys
04:02:21 <Slereah-> That's me.
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:16 <lament> indeed. Pathetic.
04:16:40 <pikhq> He was competent in another 4, and had a basic grasp of another 4.
04:21:34 <RodgerTheGreat> I am back
05:09:42 <RodgerTheGreat> good night folks
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:22:57 <Sgeo> G'night all
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.
14:25:55 <ehird> Slereah_: Hello
14:32:02 <Slereah_> hai
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:40 <ais523> no, it isn't
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:04 <ais523> yes
17:16:10 <ais523> in Feather, there will be boxed types too
17:16:17 <RodgerTheGreat> hm
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:29 <RodgerTheGreat> uh, that doesn't make much sense
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:45 <Deewiant> and how does it do that
17:19:49 <ais523> OFC, they had to exist in the first place so it could do that
17:19:53 <Deewiant> :-)
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:46 <ehird> Normally, yes.
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:33 <Deewiant> let's see a hello world
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:21:48 <ais523> even H
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:38 <RodgerTheGreat> "metasyntax"
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:02 <RodgerTheGreat> that's ridiculous and verging on unimplementable
17:23:02 <ais523> so it can get started
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:31 <Deewiant> you might be thinking of >=>
17:27:44 <ais523> Deewiant: that came up as a smiley in my client...
17:27:53 <Deewiant> > = >
17:28:00 <Deewiant> and fix your client :-P
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:28:55 <ehird> ais523: arrows
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:11 <ehird> I think.
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:29:31 <ehird> ()
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:10 <ehird> () clone: [ ... ]
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:56:15 <oerjan> bwahaha, i say
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:01:43 <ais523> what's on it?
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:03:47 <ais523> but no information
19:03:59 <ehird> ais523: OK
19:04:04 <ehird> get prepared for an EPIC FLODD
19:04:05 <ehird> FLOOD
19:04:07 <ehird> --CUT HERE--
19:04:19 <ehird> You will need:
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:04 <ehird> --CUT HERE--
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:19 <ehird> if so, read it :P
19:05:26 <ais523> yes, it's pasted
19:05:36 <ehird> ais523: "Top-posting is evil. Quoting the entire message is evil. winmail.dat is evil." -- taral
19:05:45 <ais523> yes, I know
19:05:46 <ehird> "You forgot lines that don't break after ~72 characters. Also evil." -- geoffrey spear
19:05:57 <Deewiant> 72? 78.
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:30 <ehird> ais523: I know.
19:06:32 <ehird> But should I tell them? :P
19:06:36 <ais523> no
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:39 <ais523> s/\//?/
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:02 <ais523> no, it's longer
19:13:02 <RodgerTheGreat> impressive compression
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:13:56 <ais523> ehird: I have
19:14:02 <ais523> well, part of the reason
19:14:04 <ehird> also
19:14:05 <ehird> ehird@debian:~$ cat /home/ehird/Desktop/Downloads/winmail.dat
19:14:05 <ehird> ehird@debian:~$
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:03 <ehird> etc
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:28 <ehird> anyway:
19:15:38 <ehird> agora-discussion+agoranomic.org@bridge.elliotthird.org
19:15:42 <ehird> hm wait
19:15:45 <ehird> agora-discussion++agoranomic.org@bridge.elliotthird.org
19:15:49 <ehird> ais523: syntax:
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:18 <ehird> olsner: yes
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:09 <Sgeo> Hi all
19:17:17 <Sgeo> bank account trick?
19:17:20 <Sgeo> oh
19:17:30 <ehird> ais523: I should write a mailing list manager.
19:17:31 <ehird> :P
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:54 <ehird> list@foo.com
19:17:58 <ehird> list+post34@foo.com
19:18:00 <ehird> etc
19:18:01 <ais523> why?
19:18:08 <ehird> ais523: Silliness
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:22 <ais523> that would be silly
19:18:30 <ehird> Sgeo: Of course.
19:18:31 <olsner> newState = simulate (oldState <++> timeTravellersTo (timeOf oldState) newState)
19:18:34 <ehird> Sgeo: Speaking of which:
19:19:00 <Sgeo> brb
19:19:13 <ehird> heh
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:21:10 <Sgeo> back
19:30:01 <ehird> Sgeo: So. My OS idea.
19:30:13 <ehird> Sgeo: Uh. This belongs in the collective channel.
19:30:14 <ehird> Heh.
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:55 <ehird> ais523: no
19:31:58 <ais523> and your other projects mostly seem to stall after a bit
19:31:58 <ehird> not at all
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:32:23 <ehird> just not _live_
19:39:52 <ehird> SO
19:41:53 <ehird> zonk
19:42:50 <ehird> Hmm.,
19:42:55 <ehird> ais523: Sgeo Maybe #zonk? :P
19:43:05 -!- ais523 has quit ("""").
19:48:00 <ehird> bye bye
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:51:22 <ehird> SimonRC: RUBBISH
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
2008-05-13
00:00:29 <Slereah-> Is this NURD CENTROL?
00:00:55 <oerjan> Y RLY
00:10:53 <ehird> YA
00:11:25 <RodgerTheGreat> O I C
00:15:49 <ehird> OMG
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:18:33 <aoesunthsoneuah> oerjan: oh ho HO
00:18:36 <aoesunthsoneuah> are we going to GOLF?
00:19:07 <RodgerTheGreat> I'd rather FOLG than GOLF
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:19:31 <RodgerTheGreat> it's almost, but not entirely unlike GOLF.
00:19:56 <RodgerTheGreat> FOLG is not to be confused with GLOF or FLOG.
00:32:12 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:36:55 -!- aoesunthsoneuah has changed nick to ehird.
00:37:46 <ehird> bye for today :-)
00:38:15 <Slereah-> LOGF
00:38:24 -!- ehird has quit (Remote closed the connection).
00:39:10 <RodgerTheGreat> Slereah-: most of us use log(n), but ok.
00:41:26 <Slereah-> Can't we just used A(n,n)?
00:41:39 <RodgerTheGreat> hm
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:06 <RodgerTheGreat> oerjan: you stole my joke. :(
00:43:34 <oerjan> BWAHAHA *CACK* *WHEEZE*
00:43:37 <Slereah-> LOGNUTS
00:43:46 <RodgerTheGreat> NUTLOGS
00:44:18 <Slereah-> Pi calculus hurts mah brain
00:44:31 <oerjan> SNOTLUG
00:44:55 <Slereah-> TONSULG
00:45:04 <RodgerTheGreat> Lugnut!
00:45:07 <oerjan> GLUTONS
00:45:19 <RodgerTheGreat> GUNLOT
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:55:45 <Slereah-> Oh.
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:58:42 <Slereah-> Who gets mister X?
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:19 <Slereah-> Through a as well.
01:00:45 <oerjan> so yes, either Q or R could receive the x
01:01:04 <Slereah-> Damn you pi calculus.
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:07:17 <oerjan> er what?
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:13 <Slereah-> 'kay.
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:10:10 <Slereah-> There's that.
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:13 <oerjan> or wait...
01:14:29 <oerjan> unlimited duplication that is
01:14:53 <Slereah-> What?
01:15:43 <oerjan> a(y).(Q|Q) could be used to get two identical processes, say
01:16:36 <Slereah-> That is not very unlimited.
01:16:59 <oerjan> anyway i don't know much more than the basic definitions for pi-calculus
01:17:20 <Slereah-> Durned.
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:18:17 <oerjan> yeah
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:43:38 <ehird> SIRGEO
13:44:58 <Sgeo> ELIOTTHIRD
13:49:43 <ehird> WHO IS THAT
13:50:01 <Sgeo> WHO IS SIRGEO
13:50:47 <ehird> <Sgeo> ELIOTTHIRD
13:50:49 <ehird> NOTE SPELLING
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
13:54:12 <Sgeo> ELLIOTTHIRD
13:55:53 <ehird> Sgeo: B
14:01:58 <Sgeo> WHAT"S B?
14:06:53 <ehird> A
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:08:25 <Sgeo> indeed
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:31:58 <Sgeo> zzz
14:44:02 <oklofok> i have that on tuesday!
14:44:03 <oklofok> umm
14:44:04 <oklofok> next one
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:16 <Slereah_> Oh, pi calculus you mean!
14:47:24 <oklofok> well yes
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:29 <oklofok> about what?
14:48:32 <oklofok> pi?
14:48:34 <Slereah_> Pi calculus.
14:48:39 <oklofok> most likely in the logs
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:34 <oklofok> then i have no idea
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:17 <oklofok> what's !?
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:47 <Slereah_> !P is equivalent to P|!P
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:04 <oklofok> hmm
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:20 <oklofok> !x(y).P≡x(y).P | !x(y).P.
14:59:30 <oklofok> !x(y).P == x(y).P | !x(y).P.
15:00:04 <oklofok> !! isn't there at all
15:00:05 <oklofok> but
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:02:25 <oklofok> ohoh
15:02:29 <oklofok> rrrright
15:02:32 <oklofok> i misread that
15:02:37 <oklofok> well
15:02:38 <oklofok> okay
15:02:53 <oklofok> !x(y)
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:38 <ehird> pi calculus sux
15:03:38 <ehird> :P
15:03:44 <oklofok> so basically, you do the duplication only when something is sent to you
15:03:46 <oklofok> get it?
15:03:48 <oklofok> ehird: how so?
15:03:55 <ehird> oklofok: i dunno
15:04:00 <Slereah_> I think
15:04:00 <oklofok> alright
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:31 <oklofok> *no sense
15:06:58 <Slereah_> Is the big book of pie worth buying?
15:07:05 <Slereah_> 'cause it's $40
15:07:28 <oklofok> what's hat :D
15:07:33 <oklofok> (sic)
15:07:57 <Slereah_> http://www.amazon.com/exec/obidos/ISBN=0521658691/portlandpatternrA/
15:08:50 -!- ehird has quit (Remote closed the connection).
15:09:23 <oklofok> looks very buy-worthy
15:10:28 <oklofok> i need to leave, nightwatchmanship starts in a few hours
15:10:33 <Slereah_> bye.
15:10:40 <oklofok> NOT SO FAST!
15:11:55 <oklofok> there's so much great stuff on amazon
15:12:17 <oklofok> if only i was FUCKING RICH
15:17:49 <Sgeo> Be back later
15:18:20 <Slereah_> oklofok : Try emule!
15:18:27 <Slereah_> Lots of free books..
15:20:51 <oklofok> emule? link
15:21:08 <Slereah_> It's a software
15:21:13 <Slereah_> ou can google it
15:21:25 <oklofok> your mother can google it
15:35:04 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
15:55:58 <oklofok> NOW i leave
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.
18:58:07 <lament> oh no
19:00:15 <ehird> lament: oh no what
19:00:18 <ehird> I'm back?
19:00:43 -!- Judofyr has joined.
19:01:38 <lament> oh no stumpwm
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:07:23 <bsmntbombdood> i tried to learn pi calculus
19:07:24 <bsmntbombdood> i failed
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:35:31 <ehird> LULZ
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
2008-05-14
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:30:18 <ehird> bye for today :-)
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:34:57 <RodgerTheGreat> ...
02:35:11 <Slereah_> :D
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:44 <RodgerTheGreat> and then *I'd* have a 2
02:35:56 <Slereah_> Go do that with Erds himself then
02:36:01 <RodgerTheGreat> plus I'd probably ace the class easy
02:36:08 <Slereah_> If he wasn't cremated
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:03 <Slereah_> Who?
02:38:26 <Sgeo> Guy who proved Fermat's Last Theorem?
02:38:34 <Sgeo> http://en.wikipedia.org/wiki/Andrew_Wiles
02:38:43 <Slereah_> Oh that guy.
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:33 <RodgerTheGreat> apparently I'm the only one who thinks this
03:04:42 <Slereah-> what?
03:04:50 <RodgerTheGreat> [9:41pm] RodgerTheGreat:
03:04:50 <RodgerTheGreat> gahahaha: http://en.wikipedia.org/wiki/Totally_real_field
03:04:50 <RodgerTheGreat> [9:42pm] RodgerTheGreat:
03:04:50 <RodgerTheGreat> I understand why it's called that, but I can't help reading it in a surfer voice
03:06:19 <Slereah-> Far out dude
03:06:58 <RodgerTheGreat> gnarly indeed
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:26:18 <ehird> whoa
13:26:19 <ehird> <<< is awesome
13:26:22 <ehird> myapp <<< foo
13:26:22 <ehird> is
13:26:25 <ehird> echo foo | myapp
13:29:27 -!- oklopol has joined.
13:34:15 <ehird> HA
13:34:18 <ehird> The debian guys are in denial
13:34:18 <ehird> :3
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:42:28 <ehird> AnMaster: yes
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:06 <ehird> :)
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:54 <ehird> Heh.
14:44:55 <AnMaster> then any variables set or changed in the loop will not persist after the loop
14:45:00 <AnMaster> but with <<< they will
14:45:08 <AnMaster> same for cat foo | while ...
14:45:09 <AnMaster> vs.
14:45:20 -!- oklopol has joined.
14:45:22 <AnMaster> while ...; do ...; done < foo
14:46:09 <ehird> AnMaster: I am evil and evil so I am going to write an OOP EXTENSION FOR BASH
14:46:11 <ehird> Oh yes.
14:49:05 <AnMaster> ehird, sounds fun
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:41 <ehird> AnMaster: heck no
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> $(class Talker)
14:49:48 <ehird> init) iset $self name $1 ;;
14:49:48 <ehird> say) echo "$(ivar $self name) says: $1" ;;
14:49:48 <ehird> $(endclass)
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:15 <ehird> class Talker "
14:50:16 <ehird> ....
14:50:17 <ehird> "
14:50:20 <AnMaster> ehird, there is already a forth for bash
14:50:21 <ehird> or rather
14:50:21 <ehird> '
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:02 <ehird> AnMaster: heh
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:01 <ehird> d'aww....
14:52:10 <ehird> looks like I'll have to be more evil
14:52:44 <AnMaster> err?
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:25 <ehird> AnMaster: I know.
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:53:55 <AnMaster> what are you doing then?
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:17 <ehird> :D
14:54:18 <AnMaster> it used eval iirc
14:54:21 <AnMaster> to create new instances
14:54:29 <ehird> AnMaster: I don't need to do that!
14:54:29 <AnMaster> no inheritance
14:54:36 <AnMaster> agreed
14:54:40 <AnMaster> there is printf -v
14:54:44 <AnMaster> in bash 3.1 or later
14:54:56 <AnMaster> much better than eval for setting variable by name provided in variable
14:54:58 <AnMaster> !
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:22 <AnMaster> ehird, ^
14:55:25 -!- Quendus has joined.
14:55:46 <ehird> AnMaster: Well duh, that's not real OOP
14:55:47 <ehird> ;)
15:05:04 <AnMaster> indeed
15:05:10 <AnMaster> ehird, so tell me when you done your
15:05:14 <AnMaster> I'd love to see it
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:23:52 <ehird> pikhq: hey
16:24:02 <ehird> can you like, help me out with CFJ 1943 :3
16:24:03 <ehird> you're the judge
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:35:16 <ehird> BRB
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:16:38 <SimonRC> okaaayy
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:23 <SimonRC> nothing
21:18:30 <Sgeo> What keypress did you do?
21:18:37 <SimonRC> nothin unusual
21:18:43 * Sgeo <3s making assumptions
21:18:48 <SimonRC> waitamo...
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:40 <SimonRC> yeah
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:23:30 <SimonRC> not installed
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"").
2008-05-15
00:04:17 -!- Corun has joined.
00:14:29 * SimonRC goes to beeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed.
00:14:38 <Slereah_> BONK
00:15:22 <ehird> SimonRC: heh
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:17:19 <oerjan> why thank you.
00:17:49 <Slereah_> Now time for some tea.
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:43 <Slereah_> Heh.
00:22:57 <Slereah_> http://images.encyclopediadramatica.com/images/e/eb/Octocat_Fanart.png
00:23:01 <Slereah_> Maybe I'm relaxing.
00:25:34 <ehird> oerjan: I am writing some particularly gnarly Haskell!
00:25:47 <Slereah_> Gnarly like pubic hairs?
00:25:52 <oerjan> orly?
00:25:56 <ehird> <Slereah_> Heh.
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:25:57 <ehird> err
00:26:01 <ehird> stupid selection clipboard
00:26:02 <ehird> :|
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:05 <ehird> oerjan:
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> toFormatter = id
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:24 <ehird> :D
00:31:30 <oerjan> i mean you get that from the alias
00:31:33 <ehird> ah
00:32:11 <ehird> oerjan:
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:02 <ehird> oerjan: :3
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:00 <ehird> oerjan: I dunno.
00:35:05 <ehird> oerjan: Shall I just show the koed
00:35:43 <oerjan> hpaste?
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:19 <ehird> so I'm confused.
00:36:25 <ehird> err, specification
00:36:38 <oerjan> sure, you shouldn't need it
00:37:19 <ehird> oerjan: right
00:37:23 <oerjan> it would just give a confusing overlap which only breaks things
00:37:29 <ehird> oerjan: OK then
00:37:31 <ehird> I've removed it.
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:36 <ehird> To work.
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:39:34 <Sgeo> \o/ (j/k
00:48:17 * oerjan has more or less convinced himself simpleFmt is well-typed
00:49:23 <ehird> oerjan: 'tis.
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:15 <ehird> Oh wait.
00:55:16 <ehird> Duh.
00:55:25 <ehird> format (FormatterInt fmt) = fmt id ""
00:55:25 <ehird> :P
00:55:47 <ehird> oerjan: Okey. Now I just need ........ FORMAT COMPOSITION
00:57:56 <ehird> oerjan:
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:58:29 <ehird> BOOH YAH
00:59:06 <oerjan> indeed
00:59:17 <ehird> oerjan: so, is CPS awesome or whut
00:59:19 <oerjan> btw you can define operators infix too
00:59:23 <ehird> and yes
00:59:27 <ehird> but only if I have a type sig
00:59:29 <ehird> and I don't, yet.
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:42 <ehird> :P
00:59:44 <ehird> though
00:59:46 <ehird> it's obvious in retrospect
00:59:51 <oerjan> huh?
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:01:57 <ehird> ok.
01:02:39 <oerjan> actually testing with Just, it just works
01:02:46 <oerjan> (without parens)
01:03:40 <ehird> oerjan:
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:06:26 <ehird> :D
01:08:48 <ehird> oerjan: so any ideas about how to allow:
01:08:50 <ehird> "a"%"b"
01:08:52 <ehird> "a"%str
01:08:54 <ehird> str%"a"
01:08:56 <ehird> format "a"
01:08:59 <ehird> ? :P
01:09:13 <ehird> OH WAIT I MIGHT KNOW.
01:09:14 <ehird> Let's see.
01:14:57 -!- Corun has quit ("Google did 9/11").
01:18:16 <ehird> oerjan:
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:18:19 <ehird> :DDDD
01:18:29 <oerjan> indeed
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:44:50 <ehird> Bye for today :-)
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:28 <RodgerTheGreat> or just (3^40 - 1) / 2008, obviously
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:51:59 <RodgerTheGreat> whatever, fuck it
02:52:04 <Sgeo> erm
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:08:49 <pikhq> Hi.
05:13:05 <RodgerTheGreat> hey, pikhq
05:13:11 <RodgerTheGreat> 'sup?
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:24:07 <pikhq> Graduate.
05:35:25 * RodgerTheGreat is already working on his 6th semester in college
05:35:31 <RodgerTheGreat> woohoo combinatorics
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:26 <pikhq> ?
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
05:58:30 <Sgeo> G'night all
06:00:22 <RodgerTheGreat> cya
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:35 <ehird> and
15:03:37 <ehird> the epic final
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:35 <ehird> yay
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:23:55 <oklopol> o
16:24:44 <ehird> o
16:29:34 <ehird> oklopol: haskellnomic ROX OR NOT
16:30:34 <oklopol> SHURE DOES MAN
16:30:39 <ehird> oklopol: :D
16:30:54 <oklopol> :D
16:32:28 <ehird> oklopol: captcha
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:32:49 <ehird> 21312321 doesn't
16:32:49 <ehird> :D
16:33:11 <oklopol> cool!
16:33:15 -!- oklopol has changed nick to oklobot.
16:33:23 <oklobot> :D
16:33:25 <oklobot> o
16:34:15 <ehird> oklobot: o
16:34:36 <oklobot> lol :DD
16:35:10 <ehird> o
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:35:53 <oklobot> *responded almost
16:36:13 <oklobot> *oine
16:36:15 <oklobot> *one
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
16:55:30 <ehird> and haskell
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
18:59:23 <kar8nga> you mean who I am?
18:59:59 <ehird> yes.
19:00:25 <kar8nga> mainly: math student
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:43 <ehird> kar8nga: maybe
19:05:48 <ehird> you have to sacrifice a few goats first
19:06:05 <ehird> and, sharpish
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:12:15 <ehird> that eat grass.
19:14:02 -!- Judofyr_ has changed nick to Judofyr.
19:18:38 <AnMaster> <kar8nga> oh, and I like stackbased languages
19:18:40 <AnMaster> lets see
19:18:48 <AnMaster> what stack based 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:30:37 <kar8nga> interesting
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:02 <AnMaster> hm?
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:05 <kar8nga> no
19:41:09 <kar8nga> didn't compile yet
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:35 <AnMaster> I'm eager to know
19:41:36 <kar8nga> but discussion has time :-)
19:41:43 <AnMaster> also I may not be reachable next week
19:41:50 <AnMaster> kar8nga, so ..
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:57:47 <AnMaster> Deewiant, hm true
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:15:58 <ehird> Bacq.
22:16:01 <ehird> oerjan: Hallo.
22:16:08 <ehird> oerjan: I have Ha skull qs.
22:16:11 * oerjan hides behind a bush
22:16:26 <AnMaster> ehird, you have what?
22:16:31 <AnMaster> haskell?
22:17:18 <ehird> oerjan: haha
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:13 <Slereah_> I will now go away D:
22:18:29 <ehird> It means that runCGI works but runFastCGI doesn't, because i use a custom cgi monad.
22:18:30 <AnMaster> Slereah_, hahaha
22:18:31 <ehird> Whutdoido?
22:18:41 <AnMaster> ehird, what happened to the smalltalknomic?
22:18:46 <AnMaster> I want to know
22:18:50 <oerjan> yeah, i recall FastCGI's unfortunately restricted monad coming up on #haskell
22:18:56 <AnMaster> ehird, or your oop for bash?
22:18:58 <ehird> oerjan: SCGI does it too
22:19:04 <ehird> AnMaster: Gasp, I can multitask.
22:19:10 <AnMaster> oh
22:19:19 <AnMaster> ehird, so you didn't give up on them?
22:19:22 <AnMaster> :D
22:19:22 <ehird> AnMaster: No.
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:35 <ehird> oerjan: hehehe
22:21:44 <ehird> oerjan: then you'll know what duke nukem forever will be like
22:21:46 <ehird> is it any good?
22:21:55 <ehird> AnMaster: are you ever returning to ircnomic? I'm curious.
22:21:59 <ehird> err, Canada
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:26:10 <Slereah_> OF LIBURALIZM
22:26:20 <Slereah_> *dun-dun-duuuun!*
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:28:56 <ehird> oerjan: eek!
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:34:51 <AnMaster> depends
22:34:54 <AnMaster> don't know
22:35:20 <AnMaster> <ehird> oerjan: freeciv is destroying america
22:35:21 <AnMaster> ???
22:35:24 <AnMaster> *blink*
22:35:25 <ehird> AnMaster: Would your first action be trying to re-add the insensitive rule? :-)
22:35:27 <AnMaster> wtf do you mean?
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:07 <AnMaster> :P
22:36:09 <Sgeo[College]> ehird: Please don't tell people not to come back.
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:10 <AnMaster> maybe
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:42 <Sgeo[College]> I'd probably abstain
22:37:53 <ehird> Sgeo[College]: It wouldn't pass then.
22:37:54 <AnMaster> Sgeo[College], damn you
22:38:05 <ehird> AnMaster: damn him for wanting the game to stay active
22:38:05 <AnMaster> :P
22:38:19 <Sgeo[College]> ehird: it's just I don't have an opinion
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:38:42 <ehird> AnMaster: Huh?
22:39:04 <AnMaster> ehird, we all know you did the mess up with removing the rule from your server
22:39:13 <AnMaster> refusing to tcpdump and so on
22:39:17 <ehird> AnMaster: i didn't.
22:39:28 <AnMaster> ehird, proof of that?
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:47 <AnMaster> :P
22:39:57 <AnMaster> anyway both me and ais won't believe you
22:40:09 <AnMaster> you know that
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:32 <ehird> oerjan: nope
22:48:49 <ehird> AnMaster is just ye olde Writ of FAGEr
22:49:25 <AnMaster> ehird, not sure what you mean
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:16 <ehird> AnMaster: no
22:50:18 <ehird> no I didn't
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:34 <AnMaster> oerjan from the server
22:50:35 <ehird> anyway, I doubt oerjan actually _cares_ about this stupid thing
22:50:37 <AnMaster> every few seconds
22:50:44 <ehird> a few days ago, it was removed democratically
22:50:46 <ehird> and fairly
22:50:49 <ehird> and has not caused controversy
22:50:50 <ehird> end.
22:50:52 <AnMaster> oerjan, and everyone knows it was ehird
22:51:05 <ehird> It wasn't.
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:25 <AnMaster> killing his bot and what not
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:18 <AnMaster> oerjan, agreed
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:19 <AnMaster> :P
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:15 <ehird> whatever
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)).
2008-05-16
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:06:48 <ehird> I'll Hug you!
01:06:51 <pikhq> FOR Nice try.
01:07:18 <ehird> pikhq: :(
01:07:21 <ehird> Whyy?
01:07:28 <ehird> It's cool.
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:07:53 <lament> <3
01:08:03 <ehird> lament: Hug awards a point
01:08:04 <ehird> :P
01:08:30 <lament> how many points for a blowjob?
01:08:49 <ehird> lament: Beats me.
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:12:52 <ehird> oerjan: quite
01:13:01 <ehird> join #ircnomic and I'll give you crazy amounts
01:15:36 <ehird> oerjan: no? ;)
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:14 <ehird> oerjan: oh I know
01:20:17 <ehird> I'm just trying to bribe you
01:28:08 <ehird> oerjan: plzzz
01:28:11 <ehird> oerjan: 3 minutes to go
01:28:12 <ehird> :<<
01:28:18 <ehird> oerjan: This is even an interesting scam
01:29:06 <ehird> oerjan: pleeeez
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:29 <ehird> <<
02:31:30 <ehird> What is "Legend of Z.e.l.d.a."?
02:31:30 <ehird> What is "NES"?
02:31:30 <ehird> Edit: not kidding...
02:31:30 <ehird> >>
02:31:32 <ehird> -- reddit comment
02:39:07 -!- atsampso1 has joined.
02:40:03 -!- atsampson has quit (Read error: 104 (Connection reset by peer)).
03:20:49 <ehird> Bye for today :-)
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:58:36 <Sgeo> G'night all
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:43:18 <RodgerTheGreat> GregorR: you made a new window manager?
15:45:04 <pikhq> Spiffy.
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:15 <Deewiant> :-)
15:50:49 <pikhq> It's also of the opinion that. . . WHOHOO! HIGH SCHOOL IS OVER!!!
15:59:10 <oklofyug> MINE TOO!!!!
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:12 <RodgerTheGreat> hey guys- who's seen this?
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:47:37 <RodgerTheGreat> apparently this was faxed to fermilab
20:47:47 <ais523> it's probably a hoax
20:48:01 <ehird> looks creepy
20:48:13 <RodgerTheGreat> that doesn't mean it isn't fun to try to decode it
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:51:55 <RodgerTheGreat> ehird: any thoughts?
20:52:55 <ehird> RodgerTheGreat: it's still creepy
20:52:55 <ehird> ;)
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:01 <RodgerTheGreat> to my way of thinking, it's just a fun puzzle
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:54:40 <RodgerTheGreat> maybe it's a trailhead for an ARG! :D
20:55:03 <ehird> RodgerTheGreat: Fermiargggggggg
20:55:20 <ehird> RodgerTheGreat: where'dj00 find this?
20:55:29 <RodgerTheGreat> /.
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:58:50 <RodgerTheGreat> :(
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:15 <RodgerTheGreat> I'm firmly in the latter camp
21:00:39 <ehird> *being
21:00:39 <RodgerTheGreat> even if it ends up being "DRINK MORE OVALTINE" it can be loads of fun
21:01:06 <RodgerTheGreat> maybe the hex is a decryption key of some kind?
21:01:35 <ehird> <RodgerTheGreat> even if it ends up being "DRINK MORE OVALTINE" it can be loads of fun
21:01:40 <ehird> ...
21:01:42 <ehird> there are no words
21:01:43 <ehird> YOU WIN
21:01:57 <RodgerTheGreat> ?
21:02:10 <ehird> RodgerTheGreat: that was brilliant
21:02:19 <RodgerTheGreat> oh, ok
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:16 <RodgerTheGreat> ais523: connection issues?
21:10:42 <ais523> yes
21:10:49 <ais523> the wireless here is dodgy
21:11:01 <ais523> and how did ais523_ end up here?
21:11:25 * RodgerTheGreat shrugs
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:13 <RodgerTheGreat> hunh
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:04 <GregorR> Neither.
21:47:16 <RodgerTheGreat> potatochop?
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:31 <ehird> GregorR: Wow.
21:48:39 <ehird> GregorR: you ... ported Progman?
21:48:52 <GregorR> Nope.
21:48:58 <ais523> hey, there was a progman port in Windows 95. Not sure if anyone ever used it, though
21:49:01 <GregorR> HA HA HA. Mind blowing.
21:49:07 <GregorR> ais523: Not '95.
21:49:13 <GregorR> Which is to say, that's not '95.
21:49:18 <ais523> yes, I know
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:46 <GregorR> Nope.
21:49:50 <GregorR> Running natively.
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:49:58 <ehird> oh wait
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:02 <ehird> isn't it
21:50:04 <GregorR> DING
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:30 <ehird> Very cool.
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:35 <RodgerTheGreat> hunh. wtf indeed
21:51:44 <ais523> oh, I remember Win32s
21:51:46 <ais523> I never used it
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:51:59 <RodgerTheGreat> I prefer to call my explorer "Finder". :)
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:53:21 <GregorR> Oh yeah, newshell :)
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:54:48 <pikhq> (yay, Wikipedia)
21:55:16 <GregorR> Pfffft, looking things up :P
21:55:18 <RodgerTheGreat> did anybody ever use DOSSHELL? Damn, I loved that app
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:57:40 <RodgerTheGreat> Dosshell is actually a lot like mc
21:57:59 <RodgerTheGreat> http://www.compu-seite.de/bilder/dos62/dosshell1.gif
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:22 <RodgerTheGreat> well, COMMAND.COM is no bash, dude
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.
21:59:50 <GregorR> (It has history at least)
22:00:15 <pikhq> IIRC, the command.com in FreeDOS is quite a bit better.
22:00:40 <ehird> so wait
22:00:44 <ehird> command.com sucks face AND as
22:00:45 <ehird> s
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:44 <GregorR> (By comparison)
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:07:47 <ehird> how today you?
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:10:15 <ehird> GregorR: so what
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:19 <lament> + 1 2 3
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:07 <lament> oh hm
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:20:09 <oerjan> hm...
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:30 <ais523> did I?
22:23:54 <oerjan> not unless you missed my "hm..."
22:24:02 <ais523> no, I got the 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:36:14 <ais523> oh, of coures
22:36:17 <ais523> s/es/se/
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> in what way?
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:02 <ais523> presumably
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:41:49 <ehird> Bacq.
23:43:32 <lament> Bach?
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:16 <ehird> application:
23:44:19 <ehird> func^argc(...)
23:44:21 <ehird> err
23:44:24 <ehird> func^argc ...
23:44:27 <ehird> but argc can be an arbitary expr
23:44:28 <ehird> wait
23:44:29 <ehird> make that
23:44:30 <ehird> func argc ...
23:44:37 <ehird> I'm sure youi can get TCness from that.
2008-05-17
00:00:10 <RodgerTheGreat> GregorR: I have another brilliant shirt idea
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:02:13 <RodgerTheGreat> "Fuck you. Yes, you reading this shirt. You."
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:12 <Slereah-> QA'PLAH!
00:38:15 <ehird> anyway,
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> oerjan
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:30:38 <ehird> Bye for today :-)
01:31:02 -!- ehird has quit (Remote closed the connection).
01:34:35 <olsner> darn, just missed him
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:36:29 * oerjan unfolds his umbrella
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:04 <oerjan> eek
01:38:20 <oerjan> beware the spikes
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:45:16 <olsner> </swedish>
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:13 <olsner> craving, rather
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:06 <oklofok> okokokokokokokokokoko
01:57:10 <oklofok> my bushes make no sense
01:57:12 <oklofok> whatsoever
01:57:23 <oklofok> just came home to eat some noodles
01:57:24 <oerjan> bushes rarely do
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:25 <oklofok> i'm finnish
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:58:47 <oklofok> 4 am now
01:58:51 <oklofok> as you prolly know
01:59:08 <olsner> "jour"? if that makes sense to you
01:59:10 <oklofok> also
01:59:27 <oklofok> i realized almost every non deterministic computational model makes a good game with the same rules
01:59:32 <oklofok> hnmm
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:52 <oklofok> basically
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:22 <oklofok> and the turn switches
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:50 <oklofok> also there's a bank
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:10 <oklofok> but i don't have time
02:03:12 <oklofok> now noodles
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:43 <oklofok> but i fail at stepmania
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:16:45 <Slereah-> Pixplz
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:26:09 <Slereah-> Ask them out.
02:27:53 <oklofok> umm, why would i ask them out when i'm eating them?
02:27:58 <oklofok> *i'm already
02:29:12 <Slereah-> Hot.
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:28 <Slereah_> y hulo tharr
04:26:30 <augur> O_O
04:26:38 <augur> GregorR -- gregor richardson?
04:27:28 <Slereah_> Richard.
04:28:04 <augur> ok. nevermind then.
04:28:15 <augur> i know a gregor richardson and i was gonna be all like
04:28:17 <augur> ZOMG IS IT YOU
04:31:02 <augur> so peoples
04:31:13 <augur> i hear you like the esolangs
04:32:02 <RodgerTheGreat> the channel name would imply that
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:03 <Slereah_> augur : There is one!
04:33:28 <augur> like.. given some source code and program output, or something, try to figure out what each piece does?
04:33:34 <Slereah_> http://esolangs.org/wiki/Burn
04:33:41 <augur> sort of reverse engineering the language?
04:34:02 <augur> thats funny ol
04:34:03 <Slereah_> If you can find out, try it!
04:34:03 <augur> lol
04:34:39 <augur> ok so i presume that yes, esolangers like to go backwards as well, yes?
04:35:07 <Slereah_> Not really.
04:35:11 <augur> fine. :P
04:35:15 <Slereah_> It's the only one I can think of.
04:35:25 <Slereah_> And so far, no results.
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:42:52 <Slereah_> That is, more than nothing.
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
04:51:02 <augur> no i mean...
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:40 <oklofok> or not
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:09:54 <augur> ::checks logs::
06:10:50 <oklofok> coool
06:11:03 <oklofok> about that pmatching
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:12:54 <oklofok> hmm
06:12:58 <oklofok> you see
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:45 <augur> sure
06:13:50 <oklofok> "a `opr` b" is the haskell way to do infix when you have an alphabetic operator
06:13:57 <augur> yeah
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:25 <augur> right
06:14:30 <oklofok> but is as if it was an atom there
06:14:36 <oklofok> *is used as
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:16:50 <augur> yeah.
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:17:46 <oklofok> ah
06:18:04 <augur> :p
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:24 <augur> oh? tell me more
06:19:25 <oklofok> for instance oklotalk, which i have to mention to anyone who seems new here.
06:19:41 <oklofok> {} creates a lambda
06:19:49 <oklofok> and inside the lambda, you can do explicit pattern matching
06:19:59 <augur> example?
06:20:14 <oklofok> {[A B] -> A+B; N -> N+1}
06:20:30 <oklofok> this is a function, that explicitly matches whatever it gets as args on [A B]
06:20:36 <oklofok> matching 2-element lists
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:16 <oklofok> now to call this func...
06:21:18 <oklofok> you would just do
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:14 <augur> :p
06:23:14 <oklofok> func 5
06:23:17 <oklofok> func [4 6]
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:23:36 <augur> func n = n + 1
06:23:41 <augur> func [a b] = a+b
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:49 <oklofok> kinda
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:08 <oklofok> sure
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:18 <oklofok> or a sublist within it
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:29:48 <oklofok> alright
06:30:12 <oklofok> _ is the implicit parameter variable in Ef, as in oklotalk and perl
06:30:16 <oklofok> *as it is in
06:30:21 <oklofok> so you can do stuff like
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:32:47 <oklofok> meaning it ends up sorted
06:32:51 <augur> ok
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:33:59 <oklofok> using random nouns there
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:34:53 <oklofok> *-"->"
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:04 <augur> ok
06:36:14 <oklofok> well
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:38:00 <oklofok> (see thue)
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:38 <oklofok> must be this nick
06:40:40 -!- oklofok has changed nick to oklopol.
06:40:49 <augur> :p
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:20 <oklopol> umm
06:51:25 <oklopol> *unofficial test case
06:51:26 <augur> well then
06:51:27 <Sgeo> I know someone wrote stuff about compatibility and test cases
06:51:29 <augur> we should start one :)
06:51:38 <oklopol> doesn't sound at all bad
06:51:46 <oklopol> hmm
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:09 <oklopol> ->
06:52:22 <augur> see ya.
06:52:22 <spal> oklopol: Sgeo: thanks
06:52:46 <Sgeo> yw
06:53:07 <oklopol> np
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:01:57 * pikhq waketh
17:08:36 <ehird> pikhq: Canada :3
17:09:13 <Slereah_> Canada eh?
17:09:22 <ehird> Yeah.
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:29 <ehird> pikhq: Eh.
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:22:53 <ehird> #ircnomic
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:24:20 <ehird> hehhehe
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:55:35 <ehird> ... with an 's'
19:55:36 <ehird> ... with an 's'
19:55:37 <ehird> ... with an 's'
19:56:40 <Sgeo> Not an "s"?
19:56:42 <Sgeo> sorry
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:25:13 <pikhq> xtu'?
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:13 <olsner> oh, xtu = っ?
20:51:15 -!- RedDak has joined.
20:55:05 -!- oklopol has joined.
20:59:51 <oklopol> okokokokokokokoko
21:00:01 <oklopol> GregorR: gregor richardson is most likely your son.
21:03:19 <pikhq> olsner: Small tsu.
21:03:37 <Deewiant> and how does that become xtu
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:07:19 <ehird> brb 30mins
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:45:53 <ehird> Bacq.
22:47:23 -!- cherez has joined.
22:52:11 -!- oklofok has quit (Read error: 113 (No route to host)).
23:33:20 <lament> Bach?
23:34:13 <oerjan> his French cousin, i assume
23:36:17 <ehird> Bachq.
23:39:14 <lament> Bachqx'k?
23:41:46 <ehird> lament: ouch
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).
2008-05-18
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:47 <ehird> Bye for today :-)
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:00:56 <asiekierka> Hey
09:00:57 <asiekierka> and
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:31 <asiekierka> MOV b, (value)
09:01:40 <asiekierka> also, wait, i must explain the Asie-1 CPU in clearer detail
09:02:47 <asiekierka> http://rafb.net/p/Thp4Xp89.html
09:02:52 <asiekierka> this is some more explanation
09:03:42 <olsner> asiekierka: that first link is a 404 for me
09:04:24 <asiekierka> i deleted it
09:04:29 <asiekierka> the second one is the revamp
09:04:31 <olsner> oh, okay
09:04:36 <asiekierka> explains it in clearer detail
09:04:52 <asiekierka> Sadly, i couldn't put another instruction in. MOV b, (value)
09:04:55 <asiekierka> or LDA (value)
09:05:03 <asiekierka> well, i could extend LDA to 16 bits
09:05:04 <asiekierka> but
09:05:05 <asiekierka> eeeww
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:05:59 <asiekierka> you must INC b a ton of times
09:06:10 <asiekierka> but 256 bytes of memory is just NOT enough for this.
09:06:24 <asiekierka> see, i need to either revamp LDA
09:06:27 <asiekierka> to be 16-bits
09:06:33 <asiekierka> or remove an instruction
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:07 <asiekierka> 8-bit registers
09:07:10 <asiekierka> 8-bit memory
09:07:18 <asiekierka> 8-bit program counter
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:07:48 <asiekierka> 13 bits is just an odd size
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:08:56 <asiekierka> olsner: any ideas on what to remove?
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:33 <asiekierka> i can
09:09:34 <asiekierka> but
09:09:40 <asiekierka> i don't have the way to put the immediate
09:09:46 <asiekierka> also, MOV works MOV src,dest here
09:09:50 <asiekierka> so i think you mean MOV a, b
09:09:57 <asiekierka> i can only INC a ton of times
09:10:08 <asiekierka> but that can waste more than a half of the program!
09:11:36 <asiekierka> any ideas on what to remove?
09:11:46 <asiekierka> I'm thinking of combining NOT x and AND x
09:11:51 <olsner> NOP sounds obviously removable
09:11:59 <asiekierka> you DON'T know how useful it is
09:12:04 <asiekierka> how else will you make delays in the program?
09:12:14 <asiekierka> NOP sounds obviously UNremovable
09:12:19 <olsner> INC b; DEC b; for example?
09:12:26 <asiekierka> *sigh*
09:12:32 <asiekierka> NOP is one-cycle here
09:12:36 <olsner> or just jump around a lot
09:12:40 <asiekierka> every command is 1 cycle
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:13:19 <asiekierka> you still can MOV x, a and MOV a, b
09:13:27 <asiekierka> no, i was just creating this
09:13:29 <asiekierka> but anyway
09:13:31 <asiekierka> you're half-right
09:13:39 <asiekierka> but i'm wasting 4 bits with your code
09:13:45 <asiekierka> and space is important in 256 bytes
09:13:51 <asiekierka> i will combine NOT x and AND x
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:14:18 <asiekierka> still 4 bits
09:14:21 <asiekierka> but is 2 functions in one
09:15:36 <asiekierka> http://rafb.net/p/ODmyxB22.html
09:15:39 <asiekierka> the newest link
09:15:48 <asiekierka> now I think i can write an useful program
09:16:02 <asiekierka> what about you?
09:16:14 <asiekierka> will you try?
09:18:36 <GreaseMonkey> hey look, it's asie!
09:18:48 <GreaseMonkey> i had no idea you did esolangs.
09:18:49 <asiekierka> hey look, it's the Grease Monkey!
09:18:53 <asiekierka> it's not an esolang
09:18:59 <asiekierka> it's a full-blown CPU architecture
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:23 <asiekierka> without bonus registers
09:19:26 <asiekierka> And i succeded
09:19:28 <asiekierka> with 16 opcodes
09:19:38 <asiekierka> but you can minimize it to 14
09:19:41 <asiekierka> by removing the NOP
09:19:47 <asiekierka> and combining NOT b and AND b
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:07 <asiekierka> GreaseMonkey: no opcodes left
09:20:53 -!- oklofok has joined.
09:21:06 <asiekierka> An entire processor can be created using NAND gates alone.
09:21:08 <asiekierka> hmm
09:21:13 <GreaseMonkey> hmm... i have a plan for a system somewhere...
09:21:15 <asiekierka> 0000 - NAND a, b
09:21:18 <asiekierka> 0001 - NAND a, x
09:21:23 <asiekierka> 0010 - NAND b, a
09:21:28 <asiekierka> 0011 - NAND x, a
09:21:34 <asiekierka> 0100 - NAND x, b
09:21:39 <asiekierka> 0101 - NAND b, x
09:21:49 <asiekierka> NAND reg1, reg2/dest
09:21:57 <asiekierka> 6 opcode NAND cpu
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:52 <asiekierka> just kidding
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:16 <asiekierka> oklopol: i wanted to keep it simple
09:23:24 <oklopol> heh, quite a coincidence i dropped
09:23:32 <asiekierka> hmm
09:23:37 <asiekierka> wait
09:23:46 <asiekierka> wait
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:01 <asiekierka> ... just kidding anyway
09:24:05 <asiekierka> well
09:24:07 <asiekierka> returning to Asie-1
09:24:07 <oklopol> olsner: my point exactly
09:24:18 <asiekierka> I.E. http://rafb.net/p/ODmyxB22.html - for oklopol
09:24:40 <GreaseMonkey> have you ever coded for the 6502?
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:24:58 <asiekierka> so, GreaseMonkey, yes
09:25:03 <GreaseMonkey> ok.
09:26:05 <oklopol> nand-and-branch-if-zero
09:26:08 <oklopol> hmm
09:26:49 <oklopol> right, right, won't work
09:27:20 <asiekierka> i have compare-and-jump-if-equal
09:27:33 <oklopol> (you need bitshifts, which are implicit in wire maps, but not as opcodes)
09:27:40 <asiekierka> ... ok
09:27:47 <asiekierka> but i don't really have space
09:27:50 <asiekierka> only one single opcode
09:27:53 <asiekierka> erm... or two
09:27:58 <asiekierka> SHR and ROL i think
09:28:01 <oklopol> asiekierka: i mean, nand-and-branch won't work without em
09:28:16 <asiekierka> SHR and ROL... maybe some else?
09:28:33 <oklopol> is that an asm of yours?
09:28:37 <asiekierka> sorta
09:28:43 <asiekierka> my CPU thingie
09:28:49 <asiekierka> Asie-1
09:28:56 <asiekierka> I'd so like to implement it in Verilog
09:29:00 <asiekierka> then connect it to a TV xD
09:29:44 <oklopol> connect it to a tv?
09:29:57 <asiekierka> yes
09:30:02 <asiekierka> or add a diode
09:30:03 <asiekierka> whatever
09:30:08 <asiekierka> so it can show something
09:30:10 <asiekierka> :)
09:30:11 <oklopol> to achieve what, i'm sensing i'm missing some awesomeness
09:30:28 <asiekierka> nothing really
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:30:53 <asiekierka> Asie-1...
09:31:01 <asiekierka> But well, i'll probably wait for Asie-2 with this.
09:31:10 <asiekierka> which bitshifts are needed?
09:31:14 <asiekierka> ROR, ROL, SHR, SHL?
09:31:16 <asiekierka> up to two
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:17 <oklopol> thingie = bit
09:32:17 <asiekierka> no place for flagd
09:32:20 <asiekierka> flags
09:32:22 <asiekierka> except if in memory
09:32:34 <oklopol> even then, one can do all the others
09:32:39 <asiekierka> ROR...
09:32:42 <asiekierka> i guess ROR
09:32:50 <asiekierka> is it the good choice?
09:33:13 <asiekierka> it basically keeps the last bit
09:33:18 <asiekierka> you can AND the value
09:33:20 <asiekierka> then ROR it again
09:33:25 <oklopol> i ROL with it.
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:04 <GreaseMonkey> hmm... you could ROL, SHL, and INV
09:34:11 <asiekierka> SHR is: 76543210 -> #7654321
09:34:13 <GreaseMonkey> INV will invert the bit order
09:34:25 <asiekierka> ROR is: 76543210 -> 07654321
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:34:46 <asiekierka> the same with SHL
09:34:48 <asiekierka> and ROL
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:35:33 <asiekierka> slightly higher than this
09:35:41 <asiekierka> but slightly lower than my own
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:28 <oklopol> i don't know any.
09:36:31 <oklopol> i've made a few myself
09:36:37 -!- GreaseMonkey has quit ("Unisex.").
09:36:40 <oklopol> one with some 6 ops
09:36:50 <asiekierka> 6 ops :)
09:36:50 <oklopol> but it had bignums!
09:36:54 <asiekierka> oh
09:37:00 <asiekierka> can't we decrase it to 8 or 16 bits?
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:10 <asiekierka> :)
09:38:26 <oklopol> ALSO PERHAPS AN INSTRUCTION THAT PUTS THE COMPUTATION IN A MONAD
09:38:33 <asiekierka> what do you mean
09:38:33 <oklopol> AND CALL/CC
09:38:54 <oklopol> i mean nothing
09:39:00 <asiekierka> also, you need LDA for loading immediates/memory values AND STA for saving them
09:39:07 <oklopol> right, right
09:39:17 <oklopol> that's 6
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:39:55 <oklopol> depends
09:40:26 <oklopol> on what do you consider a separate opcode
09:40:35 <asiekierka> anything that has different register params
09:40:46 <oklopol> mov a,b != mov b,a?
09:40:50 <asiekierka> no
09:40:52 <asiekierka> i'm putting only
09:40:53 <asiekierka> swp b,a
09:40:55 <asiekierka> and swp x,a
09:40:57 <asiekierka> oklopol: yes
09:41:05 <asiekierka> but with swaps, i'm limiting 4 instructions to just 2
09:41:09 <asiekierka> which IS an improvement
09:41:32 <oklopol> well mov is more general
09:41:53 <oklopol> with swp, you can only move, with mov, you can copy.
09:42:07 <oklopol> kinda ironic, huh?
09:42:14 <asiekierka> i'll see how many instructions i'll have left
09:42:45 <asiekierka> also, my values are unsigned
09:42:53 <asiekierka> so i can do branch-if-zero
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:27 <asiekierka> ...yes
09:43:28 <oklopol> right, different register params
09:43:45 <asiekierka> that's different commands though!
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:24 <oklopol> yeah, yeah
09:44:51 <oklopol> i just usually have the memory, and no registers, for my asms
09:45:04 <asiekierka> I will have 2 kinds of branches
09:45:14 <asiekierka> beq (branch-if-equal) and bze (branch-if-zero)
09:45:24 <asiekierka> and nop
09:45:27 <asiekierka> i will still have 2 opcodes left
09:45:50 <asiekierka> so i can change the swaps to MOVs
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:46:24 <asiekierka> also
09:46:26 <asiekierka> saving space
09:47:06 <oklopol> code = code[bze/beq] +- n, where n is about 4, and A/B means swap A and B
09:47:19 <oklopol> umm, about 4 per swap
09:47:48 <oklopol> (and these number are opcounts)
09:47:58 <asiekierka> http://rafb.net/p/FDA2ox85.html
09:47:58 <asiekierka> hmm
09:48:20 <asiekierka> INCs now can be done in loops with beq
09:48:25 <asiekierka> with 255 DECs
09:48:26 <oklopol> what i mean is, you don't *need* both of those, but you knew that already
09:48:32 <asiekierka> but i can
09:48:40 <asiekierka> i don't have any other instruction to add anyway
09:49:01 <asiekierka> well
09:49:03 <asiekierka> i can remove bze
09:49:08 <asiekierka> since i can set B to zero
09:49:20 <asiekierka> then just beq
09:49:51 <oklopol> well yeah, bze a = beq a a, beq a b = bze (sub a b)
09:50:06 <oklopol> err
09:50:08 <oklopol> lol.
09:50:16 <oklopol> how the fuck can i fail at that :D
09:50:16 <asiekierka> what?
09:50:22 <asiekierka> what did you do?
09:50:24 <oklopol> bze a = beq a 0 ofc
09:50:35 <asiekierka> and that's what i'm doing
09:50:45 <asiekierka> i could add an instruction "ZERO b"
09:50:49 <asiekierka> that zero's B
09:51:00 <asiekierka> but you can do it manually
09:51:02 <oklopol> you can just load an empty memory slot
09:51:06 <asiekierka> i know
09:51:08 <oklopol> have those be 0
09:51:13 <asiekierka> mov a, b (moves A to B)
09:51:21 <asiekierka> lda #0 (loads zero to A)
09:51:28 <asiekierka> copies A to B*
09:51:29 <asiekierka> here
09:51:47 <asiekierka> bze was 4 bits, this is sadly 16
09:51:51 <asiekierka> but who cares :P
09:52:00 <asiekierka> 256 bytes of program is there.
09:52:04 <asiekierka> but you can bank it, heh.
09:52:09 <asiekierka> Memory != program, sadly
09:52:10 <asiekierka> oh
09:52:12 <asiekierka> i could add
09:52:13 <asiekierka> LDP
09:52:16 <asiekierka> or wait
09:52:17 <asiekierka> not
09:52:33 <asiekierka> Well, the program can either supply it's own 256 bytes of memory
09:52:37 <asiekierka> or use the builtin
09:52:47 <asiekierka> if the program supplies it's own, this allows for banking
09:53:05 <asiekierka> i could add LDPC
09:53:07 <oklopol> perhaps i should make a declarative asm
09:53:10 <asiekierka> which loads the Program Counte----
09:53:13 <asiekierka> well, not
09:53:14 <oklopol> that would be so sweet
09:53:19 <asiekierka> since the program counter is "9 bits"
09:53:19 <oklopol> sugary goodness
09:53:28 <asiekierka> oklopol: Do you like Asie-2?
09:53:37 <asiekierka> will you program anything for it?
09:54:10 <oklopol> well i'll gladly program something given something to program in it
09:54:20 <asiekierka> hmm
09:54:26 <asiekierka> Pi number calculator?
09:54:31 <oklopol> heh
09:54:36 <asiekierka> a tool that calculates Pi numbers
09:54:42 <asiekierka> well, i think, with such a limited amount of opcodes
09:54:45 <asiekierka> Asie-2 will be quite fast
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
09:59:31 <asiekierka> Pi number calculator for asie-2
10:01:19 <oklopol> what will be too much of a waste?
10:02:19 <asiekierka> C compilation
10:02:27 <asiekierka> for 256 bytes of program size
10:03:53 <oklopol> pi calculation is impossible in 256 bytes
10:09:29 <olsner> yes, pi has over 9000 decimals
10:12:06 <oklopol> olsner: what do you mean?
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:14:38 <oklopol> 8794 is much more random.
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:41 <olsner> how mean
10:18:44 <oklopol> :DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
10:18:51 <oklopol> sorry, i'm pretty tired.
10:19:04 <oklopol> i think i'll break the pi calculation record now
10:19:36 -!- asiekierka has joined.
10:19:38 <asiekierka> Back
10:19:47 <oklopol> how was it?
10:19:49 <asiekierka> oklopol: heh, you can implement banking in memory
10:19:56 <asiekierka> for your pi calculation
10:20:24 <oklopol> what do you mean?
10:20:36 <asiekierka> you can set a register in memory
10:20:37 <oklopol> 256 bytes is not enough to hold a program that calculates pi
10:20:45 <asiekierka> you can have 256^2 bytes
10:20:51 <asiekierka> but you can only access 256 at a time
10:20:55 <asiekierka> Answer is banking
10:21:00 <asiekierka> you have a register in memory
10:21:12 <asiekierka> that accesses the bank of program equal to it's value
10:21:35 <oklopol> and does what exactly?
10:22:08 <oklopol> runs it tail-recursively?
10:28:57 -!- Slereah_ has joined.
10:37:12 <asiekierka> well
10:37:14 <asiekierka> oklopol
10:37:20 <asiekierka> 256 bytes means up to 512 commands
10:37:31 <asiekierka> except loading/storing/comparsion stuff, that takes 12 bits, not 4
10:37:44 <asiekierka> also
10:37:49 <asiekierka> what about Fibonacci, oklopol?
10:39:52 <asiekierka> also
10:40:06 <asiekierka> is there any System 7 C compiler to download for free?
10:40:10 <asiekierka> or System 6
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:23 <asiekierka> N=$01
10:41:28 <asiekierka> $01 memory address
10:41:33 <asiekierka> you start in the same position tho
10:41:43 <oklopol> start in the same position?
10:42:02 <asiekierka> if you set it when PC = ..4.5
10:42:11 <asiekierka> 4.5 byte
10:42:23 <asiekierka> then the bank starts execution at the 5th byte
10:42:28 <asiekierka> or 6th byte
10:42:34 <asiekierka> depends how large the set instruction is
10:42:51 <oklopol> makes compilation into banked pretty hard
10:43:02 <oklopol> but i like a challengr
10:43:05 <oklopol> *challenge
10:43:10 <asiekierka> heh
10:43:17 <asiekierka> that's the only way to do anything IMPRESSIVE
10:43:23 <oklopol> :o
10:43:32 <oklopol> can you set pc explicitly?
10:43:37 <asiekierka> no
10:43:37 <oklopol> i haven't read the instruction set
10:43:40 <oklopol> i'm illiterate
10:43:42 <asiekierka> i can add one more instruction
10:43:43 <asiekierka> though
10:43:44 <asiekierka> for it
10:44:35 <asiekierka> LDPC
10:44:39 <asiekierka> or no
10:44:40 <asiekierka> STPC
10:44:46 <asiekierka> sets the Program Counter
10:44:51 <asiekierka> but takes effect immediately
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:46:54 <asiekierka> Mac 6.0.8
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.
11:27:54 <asiekierka> Heh
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:05:20 <wooby> hello!
16:06:47 <ehird> hi
16:07:09 <wooby> hows it goin
16:07:18 -!- wooby has quit (Client Quit).
16:07:47 <ehird> well.
16:34:49 <uvanta> ...
16:40:55 <ehird> uvanta: yeah.
16:41:12 <uvanta> yeah
16:41:47 <ehird> uvanta: yeah
16:41:55 <uvanta> so...
16:41:59 <ehird> uvanta: so...
16:42:09 <uvanta> hows it goin?
16:42:19 * ehird has quit (Client Quit)
16:43:15 <uvanta> well.
16:43:32 <ehird> ...
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:14 <uvanta> sorry man
16:44:38 <ehird> uvanta: i'm not accepting your apology. you have ruined my life
16:44:42 <ehird> good bye forever
16:44:44 * ehird has quit (Client Quit)
16:44:56 <uvanta> well.
16:45:21 <ehird> ...
16:45:35 <uvanta> ehird: yeah.
16:45:41 <ehird> so...
16:45:48 <uvanta> ehird: so...
16:45:59 <ehird> hows it goin?
16:46:06 -!- uvanta has quit ("Client Quit").
16:46:13 <ehird> err.
16:53:08 -!- Tritonio has quit (Remote closed the connection).
17:21:47 -!- Sgeo has joined.
17:48:39 -!- asiekierka has joined.
17:48:41 <asiekierka> Hheeyy
17:49:11 <ehird> Oh no,
17:49:13 <ehird> Oh no,
17:49:14 <ehird> Oh no.
17:49:24 <asiekierka> no worries, i'm not a troll now
17:49:26 <asiekierka> I changed.
17:49:42 * ehird eyes suspiciously
17:49:46 <ehird> :P
17:53:23 <asiekierka> http://rafb.net/p/UqWHs616.html
17:53:27 <asiekierka> Asie-1.2 CPU architecture
17:53:32 <asiekierka> 15-opcode madness
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:51 <asiekierka> Yael?
17:54:59 <ehird> ... and indeed the opcodes are similar
17:55:03 <ehird> asiekierka: esolangs.org/wiki/Yael
17:55:09 <asiekierka> didn't know about Yael
17:55:20 <asiekierka> oklopol proposed what instructions should be there for minimalism
17:56:01 <asiekierka> my is slightly different, though
17:56:03 <asiekierka> it has only nand
17:56:05 <asiekierka> only dec
17:56:14 <asiekierka> only 3 registers
17:56:23 <asiekierka> and trying to keep opcode size minimalism
17:56:50 <asiekierka> you must do other gates with nand
17:57:01 <asiekierka> also, this one is easy to implement
17:57:16 <asiekierka> 256 bytes of program, 256 bytes of memory
17:57:16 <ehird> asiekierka: er, so is mine
17:57:19 <ehird> asiekierka: ah
17:57:28 <ehird> asiekierka: then yours is hideously underpowered
17:57:39 <asiekierka> it was meant to be easy to implement
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:11 <asiekierka> {}?
17:58:14 <asiekierka> what is {}
17:58:25 <ehird> asiekierka: the empty set.
17:58:38 <asiekierka> what is the empty set?
17:58:40 <asiekierka> it's empty
17:58:45 <asiekierka> it's an empty set
17:58:46 <ehird> asiekierka: correct.
17:58:48 <asiekierka> but what do you mean?
17:58:52 <ehird> this means that implementing it is trivial
17:58:54 <ehird> cases in point
17:58:57 <ehird> brainfuck:
17:59:02 <asiekierka> also, implementing it into an FPGA
17:59:02 <ehird> C: int main(){return 0;}
17:59:03 <asiekierka> i mean
17:59:14 <ehird> FPGA: { -- air -- }
17:59:21 <asiekierka> in Verilog
17:59:24 <asiekierka> i actually plan to do this
17:59:27 <asiekierka> Asie-1.2 FPGA
17:59:36 <asiekierka> it could be really fast, you know?
17:59:40 <ehird> asiekierka: empty set is faster
17:59:42 <asiekierka> with such a small instruction amount
18:00:00 <asiekierka> Empty set... i.e. no instructions?
18:00:07 <ehird> asiekierka: correct
18:00:21 <asiekierka> Asie-0, you mean
18:00:23 <ehird> asiekierka: you said that yours was designed to be easy to implement
18:00:29 <asiekierka> and still useful
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:39 <asiekierka> calculations, ehird
18:00:40 <ehird> so the empty set doesn't cost you much
18:00:41 <ehird> and wins you a lot
18:00:46 <asiekierka> another device can output stuff
18:00:50 <asiekierka> like, calculations
18:00:52 <asiekierka> it's possible
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:01:10 <asiekierka> {} does NOTHING
18:01:15 <asiekierka> this does A BIT
18:01:21 <asiekierka> a bit I.E. somethning easy
18:03:57 <ehird> asiekierka: meh
18:04:00 <ehird> its's not much useful
18:05:48 <asiekierka> I was bored while making it
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:18 <asiekierka> i had this idea for an INVersion mode
18:06:20 <ehird> asiekierka: here's a challenge
18:06:23 <ehird> asiekierka: a lazy cpu
18:06:23 <asiekierka> dec x becomes inc x
18:06:31 <asiekierka> ror x becomes rol x
18:06:33 <asiekierka> and nand x - nor x
18:06:40 <asiekierka> a lazy cpu?
18:06:49 <ehird> asiekierka: yes
18:06:52 <ehird> a cpu based on lazy evaluation
18:07:00 <asiekierka> lazy evaluation? what's that?
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:07:24 <asiekierka> i must pack to school now
18:07:25 <asiekierka> sry
18:07:36 <ehird> awlrighty then
18:07:40 <asiekierka> but i have a challenge for you!
18:07:46 <asiekierka> A CPU with -1 opcodes.
18:08:31 <ehird> asiekierka: quite impossible and meaningless
18:08:35 <ehird> :p
18:08:38 <ehird> however
18:08:39 <ehird> }{
18:08:43 <ehird> if CPU 0 = {}
18:08:47 <asiekierka> ehird: #1: Everything is possible
18:08:47 <ehird> then CPU -1 is where it overflows
18:08:49 <ehird> ergo }{
18:08:57 <asiekierka> #2: If something's impossible, see #1
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:09:20 <asiekierka> (hidden {)... }{ ... (hidden })
18:09:22 <asiekierka> haha
18:09:34 <asiekierka> well
18:09:35 <asiekierka> always
18:09:38 <asiekierka> } 0 {
18:09:45 <asiekierka> if you use Asie-}{
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:10:39 <asiekierka> it's wrong!, it should be x-86
18:10:44 <asiekierka> x = 86 - ?
18:10:47 <asiekierka> ? = ??
18:11:00 <asiekierka> ?? = [??]
18:11:04 <asiekierka> [??] = [00]
18:11:07 <asiekierka> [00] = []
18:11:17 <asiekierka> [] = 42
18:11:20 <asiekierka> ? = 42
18:11:23 <asiekierka> x = 86 - 42
18:11:29 <asiekierka> x = 44!
18:11:30 <asiekierka> i win
18:11:32 <asiekierka> xD
18:11:37 <asiekierka> or not
18:11:41 <asiekierka> it should be 42 - 86
18:11:44 <asiekierka> but who cares
18:12:24 <ehird> asiekierka: I .. see
18:12:53 <asiekierka> i'm just kidding anyway
18:13:03 <asiekierka> it's the Idiot's way to solving idiotic equations
18:13:27 <asiekierka> Rule #1: [] = 42
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:14:17 <RodgerTheGreat> pikhq: OMFG NEW DRESDEN CODAK
18:15:08 <ehird> RodgerTheGreat: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
18:15:25 <ehird> :-------__O
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:20:54 <RodgerTheGreat> uh
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:11:45 <RodgerTheGreat> :D
19:12:22 <pikhq> OMFG!
19:13:41 -!- Tritonio has quit (Remote closed the connection).
19:14:41 <ehird> gazonk
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:04 <SimonRC> properly
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:34 <SimonRC> but it can do this:
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:33:49 <SimonRC> 18 3 1 2
21:33:51 <SimonRC> neat, eh?
21:33:54 <SimonRC> vp00-1g00*g00<
21:33:56 <SimonRC> 100p>00g1` |
21:33:59 <SimonRC> >
21:34:08 <SimonRC> the input is forth-like
21:34:35 <SimonRC> the first line of output is width, height, entry row, exit row
21:34:50 <SimonRC> correct, of course
21:35:51 <SimonRC> whaddya think?
21:35:55 <SimonRC> anyone?
21:38:36 <SimonRC> (Haskell makes throwing this stuff together so easy.)
21:41:11 -!- timotiis has joined.
21:42:16 <ehird> Back
21:42:32 <ehird> SimonRC: HASKELL!
21:42:56 <SimonRC> yes
21:43:27 <ehird> SimonRC: can i see the code?
21:43:29 <ehird> hpaste it
21:43:40 <SimonRC> are you on nonlogic?
21:43:45 <SimonRC> (I forget)
21:43:55 <ehird> SimonRC: define 'on'
21:44:04 <SimonRC> actually...
21:45:39 <SimonRC> http://sc.nonlogic.org/Beforth/
21:46:03 <ehird> SimonRC: lern2notpollutemainnamespace
21:46:04 <ehird> :-
21:46:05 <ehird> :-P
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:20 <ehird> heh
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:49:25 <ehird> :P
21:50:54 * SimonRC moves it anyway
21:51:10 <SimonRC> one problem is that your main module has to be called "Main"
21:51:20 <SimonRC> and not "Foo.Bar.Main"
21:52:39 <AnMaster> SimonRC, aww? I wanted to see it
21:54:01 <ehird> SimonRC: yeah
21:54:03 <ehird> so have Main
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:29 <ehird> that's it
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:48 <AnMaster> hm?
21:55:56 <ehird> AnMaster: that means the input language ....
21:56:07 <AnMaster> ah right
21:56:10 * AnMaster reads up
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:28 <ehird> just forth-esque
21:57:36 * SimonRC fiddles more
21:57:37 <AnMaster> ah ok
21:57:38 -!- jix has quit (Remote closed the connection).
21:57:40 <AnMaster> still quite cool
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:02 <AnMaster> <SimonRC> vp00-1g00*g00<
21:58:03 <AnMaster> <SimonRC> 100p>00g1` |
21:58:03 <AnMaster> <SimonRC> >
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:42 <AnMaster> that can't be broken
21:58:44 <AnMaster> ah
21:58:46 <AnMaster> still
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:49 <AnMaster> ah
22:03:59 <AnMaster> SimonRC, now, can you compress the code :D
22:04:05 <AnMaster> optimize it I mean
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:34 <AnMaster> SimonRC, hm?
22:07:44 <AnMaster> SimonRC, are you doing befunge93 or befunge98?
22:07:55 <AnMaster> I'd say do befunge98
22:08:07 <AnMaster> then you got w instruction that will help you a lot
22:08:11 <SimonRC> yes, 98
22:08:42 <SimonRC> well, I don't want to be too '98y
22:08:50 <SimonRC> yet
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:12 <AnMaster> those*
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:10:52 <AnMaster> err
22:10:53 <AnMaster> ccbi*
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:32 <ehird> it has him only
22:14:48 <AnMaster> yes I checked that
22:14:49 <ehird> i am thinking BOT
22:14:54 <ehird> but ... i'm not sure
22:15:01 <AnMaster> ehird, not with that cloak
22:15:02 <AnMaster> really
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:16:05 <ehird> yes
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:29 <SimonRC> like?
22:19:49 <AnMaster> oh wait is it only flip horizontally?
22:19:55 <SimonRC> yes
22:20:02 <SimonRC> it isn't very smart
22:20:06 <SimonRC> just a bit smart
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:22:33 <AnMaster> as in not just reverse them
22:22:39 <AnMaster> but add minus sign as needed
22:22:44 <SimonRC> screw x
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:50 <SimonRC> I'm not
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:29 <AnMaster> and cfunge is coded by me
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:26:29 <AnMaster> with an automated script
22:26:47 <SimonRC> cool
22:27:22 <AnMaster> SimonRC, links to both exist on the befunge page on the esolang wiki
22:27:31 <SimonRC> ok
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:17 <ehird> :-)
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:24 <AnMaster> cmake -DLEAK_MODE=ON .
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:38:51 <ehird> oerjan: yes
22:39:12 <oerjan> Slereah_: i salute your remarkable ventriloquist powers
22:39:16 <ehird> haha what
22:39:42 <oerjan> anyway i'll fix the wiki category
22:41:38 <oerjan> and is it really unimplemented?
22:44:02 <AnMaster> what is a "Andrei Machine"?
22:44:32 <oerjan> http://esoteric.voxelperfect.net/wiki/Andrei_Machine_9000
22:47:27 -!- jix has quit ("CommandQ").
22:49:22 <SimonRC> zzzzzzzzzzzzzzzzzzzzzzzzz
22:50:24 <AnMaster> night too
23:01:46 <ehird> So.
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:27 <AnMaster> olsner, nop
23:28:30 <AnMaster> "så"
23:28:31 <AnMaster> not "so"
23:28:33 <AnMaster> in Swedish
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:28:57 <AnMaster> ehird, what?
23:29:00 <oerjan> the pronunciation is the same essentially. except in english i guess
23:29:12 <ehird> jajajajjajajajjaa.
23:29:13 <AnMaster> olsner, jo i och för sig
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:06 <AnMaster> ehird, not a script
23:30:10 <AnMaster> ehird, just a plain alias
23:30:17 <AnMaster> nothing random
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:30:55 <ehird> :-P
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.
2008-05-19
00:43:06 <ehird> Bye for today :-)
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:48:45 <pikhq> For an hour.
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:22 <Slereah_> I tried, like yesterday
04:58:33 <pikhq> Mmm.
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:58:56 <Slereah_> The ladder.
04:59:06 <pikhq> The Tau cannon has a very, very small particle accelerator in it. . .
04:59:12 <pikhq> Oh.
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:42 <Slereah_> I went in
04:59:42 <pikhq> Yeah.
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:07 <Slereah_> Oh.
05:00:10 <Slereah_> I'll try that sir.
05:00:28 <pikhq> I'm stuck on the Blasting Pit, myself.
05:00:33 <pikhq> (only started playing last week)
05:01:10 <Slereah_> Heh.
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:24 <Slereah_> Maybe later
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:46 <pikhq> Yeah.
05:03:49 <Slereah_> Plus, maybe I'll finally get to go to the bar with those security guards
05:03:54 <Slereah_> They all promised to me!
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:06:49 <pikhq> True.
05:06:52 <pikhq> (amazingly)
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:33 <pikhq> No, it's not.
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:20 <pikhq> Mmm.
05:08:45 <Slereah_> But if I had that awesome suit, I'd push their goddamn cristal loads all day
05:09:51 <Slereah_> Though I'm wondering
05:09:56 <Slereah_> There's three suits, technically
05:10:01 <Slereah_> Where are the two other guys?
05:10:07 <Slereah_> At home in their underwear?
05:12:18 <pikhq> No idea.
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:38 <pikhq> Well, then..
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:06 <Slereah_> Is that one of the locker.
05:17:15 <Slereah_> Has ammo clips and the American flag in it.
05:17:28 <pikhq> Hrm.
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:18:39 <Slereah_> Or anywhere, really.
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:25:21 <Slereah_> Orpossibly a crowbar.
05:27:06 <pikhq> Make it a headcrab zombie.
05:27:30 <Slereah_> Where would it nest?
05:27:35 <oerjan> We may hope the parts that could feel pain were already gone
05:27:37 <Slereah_> It needs a bodycrab
05:27:51 <Slereah_> Or a pubic crab
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:28:59 <Slereah_> Maybe the crab ate it D:
05:29:05 <pikhq> Probably.
05:29:25 <pikhq> oerjan: The bird only had a brainstem.
05:34:16 <Slereah_> ...
05:34:21 <Slereah_> I just had an epiphany.
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:05 <oerjan> ah
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:38:16 <Slereah_> The manliest of physicists.
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:14 <pikhq> Less, even.
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:13 <augur> :D
08:12:27 <augur> check it out: http://video.google.com/videoplay?docid=-6950604815683841321&hl=en
08:12:29 <augur> programming DNA
08:13:05 <Slereah_> I'm already a DNA program.
08:13:22 <Slereah_> Give me some sort of infinite memory and infinite life, and I'll compute stuff!
08:13:26 <Slereah_> Also infinite interest.
08:13:43 <augur> wheres the command line so i can kill your process
08:14:09 <augur> $ kill Slereah_
08:14:15 <augur> work damn you work!
08:15:37 <Slereah_> ERROR, ERROR
08:15:40 <Slereah_> FUCK YOUUUUUU
08:15:46 <Slereah_> Beep boop
08:15:51 <Slereah_> EX-TER-MI-NATE
08:15:57 <augur> oh noes!
08:16:01 <augur> GENESIS OF THE DALEKS!?
08:16:06 <augur> WOE IS ME
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:16:36 <augur> you ARE one
08:16:39 <augur> ooooh burn
08:21:57 -!- Iskr has joined.
08:27:21 <olsner> "marital aid"?
08:28:15 <Slereah_> A dildo.
08:28:22 <Slereah_> A RUBBER DONG
08:28:50 <olsner> WOE IS YOU
08:29:17 <Slereah_> I can feel the woe!
08:29:29 <Slereah_> Hello Iskr. We were just discussing... programming.
08:30:02 <olsner> yes, programming... just programming
08:30:12 * olsner whistles innocently
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:30:56 <ehird{> Corun-hello.
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:50:43 <Slereah-> Wot?
14:51:32 <Slereah-> Oh, I want To be the guy ?
14:51:44 <ehird{> Slereah-: Yes.
14:52:11 <Slereah-> No.
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:35 <ehird{> GAME OVER
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:00:49 <Slereah-> I actually did
15:01:04 <Slereah-> But for some reason, I can't get past the first step
15:01:09 <Slereah-> JUMP THE MAN, JUMP!
15:02:15 <Slereah-> Is it actually possible to finish this game?
15:02:21 <Slereah-> Or begin, more accurately
15:05:43 <Slereah-> Fuck that shit.
15:06:02 <ehird{> Slereah-: yes
15:06:03 <ehird{> it is
15:06:05 <ehird{> Slereah-: what problem are you having
15:06:08 <ehird{> shift = jump
15:06:09 <ehird{> z = shoot
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:40 <ehird{> Slereah-: Oh.
15:06:43 <ehird{> Slereah-: Go to the right.
15:06:45 <ehird{> And the left.
15:06:45 <ehird{> etc.
15:06:47 <ehird{> It stops at one point
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:08 <ehird{> Slereah-: Yes.
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:03 <ehird{> It'll light up.
15:09:29 <Slereah-> I'd love to, but there's a sneaky spike that got me from behind!
15:09:51 <ehird{> Slereah-: Oh, that.
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:11 <Slereah-> What is this, Battletoad?
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:11:44 <ehird{> *step
15:12:02 <ehird{> But don't worry, dying puts you back at your wuss poitn
15:12:30 <Slereah-> Nah, I'm good.
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:02 <ehird{> Oh.
15:13:03 <ehird{> :P
15:13:09 <ehird{> IT WILL RELIEVE ALL YOUR STRESS!
15:13:11 <ehird{> Wait no it won't
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:17:15 <Slereah-> Plus, it has lulz.
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:21:43 <ehird{> Slereah-: :-)
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:16 <ehird{> -- PoppaVic
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:38:58 <ehird{> anyone?
16:39:02 <ehird{> re: root nomic
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:28:03 <ehird{> f
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:13:52 <ehird{> Slereah_: CAKE
19:13:53 <ehird{> NOW
19:14:46 -!- Slereah has joined.
19:15:06 <ehird{> Slereah_: CAKE
19:15:07 <ehird{> NOW
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:28:24 <Slereah> o
19:28:26 <Slereah> Here is a cake.
19:30:46 -!- RedDak has joined.
19:32:02 <ehird{> Slereah: cake challengw
19:32:03 <ehird{> now
19:32:32 <Slereah> I will sleep soon enough, ehird{
19:32:37 <Slereah> Make something up!
19:33:05 <ehird{> no
19:35:30 -!- Slereah- has joined.
19:35:31 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
19:35:34 <Slereah-> ______________
19:35:36 <Slereah-> .
19:35:38 <Slereah-> |
19:35:40 <Slereah-> |
19:35:42 <Slereah-> o- | o
19:35:52 <Slereah-> YOU HAVE A PORTAL GUN
19:35:53 <Slereah-> WHAT DO YOU DO?
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:36:35 <Slereah-> Hey, blame ehird{.
19:37:05 <ehird{> ooh
19:37:08 <ehird{> hmm
19:37:16 <ehird{> I shoot a portal above the cake
19:37:19 <ehird{> And then below meeeee
19:37:57 <Slereah-> ______________
19:38:02 <Slereah-> .
19:38:04 <Slereah-> |
19:38:06 <Slereah-> |
19:38:14 * ehird{ gulps
19:38:15 <Slereah-> o- | o
19:38:20 <ehird{> Lul whut
19:38:21 <Slereah-> _
19:38:29 <Slereah-> I hope you have colors.
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:43 <Slereah-> ...
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:11 <ehird{> Slereah-: ... Oh wow.
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:02 <ehird{> Slereah-: Yours do
19:40:36 <Slereah-> Here's a hint : you're red
19:40:40 <Slereah-> The cake is blue
19:40:45 <Slereah-> The lion is orange.
19:40:52 <ehird{> Slereah-: ... The .. . lion now?
19:41:01 <ehird{> Wher.
19:41:04 <ehird{> Slereah-: and
19:41:09 <ehird{> why didn't I fall into the portal
19:41:16 <Slereah-> Just a minute
19:41:21 <Slereah-> I'm doing it on notepad
19:41:24 <Slereah-> Fuck colors.
19:43:55 <Slereah-> ______________
19:43:55 <Slereah-> . @
19:43:55 <Slereah-> |
19:43:55 <Slereah-> o | o
19:43:55 <Slereah-> ______________
19:43:55 <Slereah-> . @
19:43:57 <Slereah-> |
19:43:59 <Slereah-> |
19:44:01 <ehird{> Slereah-: wtf
19:44:01 <Slereah-> o | o
19:44:03 <Slereah-> |
19:44:05 <Slereah-> @
19:44:07 <Slereah-> ______________
19:44:09 <Slereah-> . @
19:44:11 <Slereah-> | o-
19:44:13 <Slereah-> |
19:44:15 <Slereah-> | o
19:44:17 <Slereah-> @
19:44:19 <Slereah-> ______________
19:44:21 <Slereah-> . @
19:44:23 <Slereah-> |
19:44:25 <Slereah-> | o-
19:44:27 <Slereah-> | o
19:44:29 <Slereah-> @
19:44:31 <Slereah-> ______________
19:44:33 <Slereah-> . @
19:44:35 <Slereah-> |
19:44:37 <Slereah-> |
19:44:39 <Slereah-> | o SPLOF
19:44:41 <Slereah-> @
19:44:43 <Slereah-> YOU FELL ON THE CAKE
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:46:10 <Slereah-> Aren't you aroused?
19:46:29 <ehird{> Slereah-: No
19:47:18 <Slereah-> Neurotoxin gas.
19:47:21 <Slereah-> Everybody dies.
19:47:25 <Slereah-> I'm going to sleep.
19:48:00 <ehird{> Slereah-: WAIT
19:48:02 <ehird{> Slereah-: Give me a cake first.
19:48:06 <ehird{> Just like that
19:48:12 <Slereah-> o
19:48:16 <Slereah-> It's a cake.
19:48:20 <ehird{> Slereah-: Is it delicious
19:48:48 <ehird{> IT IT DELICIOUS SLEREAH
19:48:50 <ehird{> IS
19:49:06 <Slereah-> Yes.
19:49:13 <Slereah-> It's so delicious and moist.
19:49:14 <ehird{> Slereah-: I eat it.
19:54:14 <oklofok> i'm taking my pants off
19:54:46 <ehird{> oklofok: pics
19:58:56 <oklofok> my gf is reading a book naked next to me, would that be better?
19:59:05 <SimonRC> uh
19:59:09 <SimonRC> bah
19:59:20 <SimonRC> you and your having-a-girfriend
19:59:56 <ehird{> INVISIBLE WEBCAM
19:59:57 <ehird{> :-P
20:07:30 <oklofok> i like telling mentioning her as often as possible on channels where nerd percentage is great
20:07:35 <oklofok> *-telling
20:09:35 <SimonRC> bah
20:09:42 <SimonRC> where did you meet?
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:32 <SimonRC> uh
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:14:41 <SimonRC> mwahaha, blackmail
20:15:27 <SimonRC> unfortunately, I don't meet enough girls
21:27:17 -!- Sgeo has joined.
21:29:51 <SimonRC> hi
21:46:12 <Sgeo> Hi
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:19:50 <ehird{> Back
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).
22:59:49 <oklofok> o
23:01:23 -!- Sgeo has joined.
23:03:58 <ehird{> oklofok: o
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:19 <RodgerTheGreat> how was it decoded?
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:16:33 <RodgerTheGreat> neat
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:23:34 <RodgerTheGreat> but, the solution remains to be seen
23:24:04 <Sgeo> Is there any chance that if it's not solved, the original sender will send the solution?
23:24:18 <RodgerTheGreat> maybe, but somewhat unlikely
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:25:49 <ehird{> that's >lame<
23:26:13 <RodgerTheGreat> yeah, unless they're so off it's hysterical
23:34:22 -!- oerjan has joined.
23:41:49 -!- ihope has joined.
23:50:59 <SimonRC> zzzzzzzzzzzzzzzzzzzz
23:51:48 <ihope> Humpty Dumpty.
23:53:37 <ehird{> Had a great fall.
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!
2008-05-20
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:18:38 <oerjan> Peano or Hilbert?
00:21:04 <ihope> Peano, probably.
00:22:38 <ehird{> Peanbert
00:22:43 <ehird{> Hilno
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:32:35 <ihope> Maybe.
00:39:19 <oklofok> trv.öl
00:39:28 <ehird{> oklofok: foalv.
00:40:14 <oklofok> wvgbggg.
00:40:25 <ehird{> fghfgh
00:40:57 <oerjan> fnk. bgrffnfld fnrd.
00:42:25 <oerjan> tbrnttbthtsthqstn
00:42:32 <ehird{> fgsfds
00:46:13 <ehird{> ihope's client dropped
01:00:21 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:38:07 <ehird{> Bye for today :-)
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.
12:50:44 <ehird_> sihg
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:48:37 <ehird> pikhq: grudjuat
15:50:30 <pikhq> ehird: Not for the Hatfields.
15:51:03 <ehird> pikhq: diufugrat
15:51:12 <pikhq> Bingo. :p
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:45 <ehird> s
18:53:51 <ehird> I mean, shell would be perfect tbh
18:53:55 <ehird> Or perl
18:54:01 <ais523> shell seems good here
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:47 <ehird> etc
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:27 <ais523> might be a good idea
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:47 <ais523> ehird: may as well
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:27 <ehird> ais523: no
18:58:29 <ehird> the cron job can just do
18:58:31 <ehird> sh thepropfile
18:58:34 <ehird> as root
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
18:59:39 <ehird> :-P
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:55 <ais523> although /lib?
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:20 <ais523> it's for the nomic
19:06:28 <ehird> ais523: it's not data
19:06:30 <ehird> its binaries
19:06:36 <ehird> /usr/lib/nomic/bin is where debian would put it
19:06:38 <ehird> so there it goes
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:37 <ehird> ais523: well, no
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:16 <ais523> how could it know?
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:29 <ais523> I was just checking
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:11:56 <ais523> sort of like fscking
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:32 <ais523> apart from . and ..
19:12:35 <ehird> ais523: Fine
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:49 <ehird> ais523: Hmmmmmm
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:07 <ehird> ah
19:14:08 <ehird> /usr/src
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:19 * ais523 doesn't use install
19:17:27 <ais523> and I think you have to pass it the required permissions as an argument
19:17:32 <ehird> ais523: ah
19:17:43 <ehird> -m, --mode=MODE
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:08 <ehird> ais523: yeah
19:18:13 <ais523> because you want to be able to replace newer files with older in a proposal
19:18:18 <ehird> ais523: no
19:18:20 <ehird> this is just for nomic-sh
19:18:25 <ehird> and, maybe some other c file
19:18:26 <ehird> s
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:01 <ais523> OK
19:19:11 <ehird> Well.
19:19:12 <ehird> A bash.
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:23 <ais523> I said easily
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:33 <ais523> and recompile?
19:19:37 <ehird> ais523: Yes
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:45 <ehird> ais523: And no
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:20 <ehird> ais523: elvis
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:09 <ehird> ice?
19:23:11 <ehird> intercal code editor?
19:23:15 <ehird> (or s/code/c/)
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:13 <ehird> ais523: Heh.
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:10 <ehird> #!/bin/sh
19:28:15 <ehird> /bin/sh always gets an absolute path
19:28:16 <ehird> am i right
19:28:23 <ais523> oh, not sure
19:28:25 <ais523> probably, though
19:28:28 <ais523> you could test easily enough
19:28:31 <ais523> #!/bin/cat
19:28:36 <ehird> ais523: echo actually
19:28:36 <ais523> actually, #!/bin/echo
19:28:42 <ais523> #!/bin/cat is a quine
19:28:48 <ehird> $ ./test
19:28:48 <ehird> ./test
19:28:49 <ehird> A shame.
19:29:03 <ehird> ais523: How do you change a relative path into a canonicalized absolute one in c?
19:29:04 <ehird> realpath?
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:38 <ehird> :DD
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:32:52 <ais523> ehird: chmod u+t
19:32:55 <ais523> sorry, u+s
19:33:07 <ais523> or g+s to setgid it
19:33:15 <ehird> ais523:
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:28 <ehird> right?
19:33:50 <ais523> no, it would be ug+s,a+x,a+w,u-w,o-w
19:34:04 <ehird> ais523: ... a+w?
19:34:14 <ais523> sorry, I meant a+r
19:34:23 <ais523> you were mixing two different mode line syntaxes
19:34:26 <ehird> ais523:
19:34:27 <ehird> chmod ug+s,a+x,a+r,u-w,o+w "/usr/lib/\$prog"
19:34:30 <ais523> s/line//
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:30 <ehird> fine
19:35:31 <ehird> chmod u+s,a+x,a+r,u-w,o+w "/usr/lib/\$prog"; \
19:35:48 <ais523> why the backslash?
19:35:51 <ais523> and have you run it?
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:04 <ehird> in a 'for' loop
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:29 <ehird> :-P
19:37:37 <ehird> ais523: And the setuid is only for the owner.
19:37:39 <ehird> Thing.
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:11 <ehird> g
19:38:22 <ais523> it should be u+w,g-w,o-w anyway
19:38:24 <ais523> at the end
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:15 <ehird> ais523: yes
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:06 <ais523> yes, that 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:03 <ehird> ais523: no idea
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:15 <ais523> ehird: why?
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:29 <ehird> ais523: console
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:48:55 <ehird> oh
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:05 <ehird> heh
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:22 <ehird> Coool
19:51:25 <ehird> it can be nomic-root
19:51:26 <ehird> oh, no,w ait
19:51:26 <ehird> hm
19:51:34 <ehird> ais523: heh
19:51:41 <ehird> ais523: should nomic-bash be nomic-root
19:51:42 <ehird> and used like
19:51:52 <ehird> #!/usr/lib/nomic/bin/nomic-root bash
19:51:52 <ehird> or
19:51:54 <ehird> #!/usr/lib/nomic/bin/nomic-root ruby
19:52:00 <ais523> ehird: yes
19:52:02 <ehird> ais523: OK
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:45 <ehird> ais523: no
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:52:59 <ehird> *dir
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:39 <ehird> Namely, shorter.
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:20 <ais523> which is shorter
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:49 <ehird> ais523: meh
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:57:59 <ehird> but
19:58:01 <ehird> #!/usr/lib/nomic/bin/nomic-root bash
19:58:03 <ehird> is getting ridiculous
19:58:05 <ehird> and
19:58:10 <ehird> #!/usr/bin/env nomic-root bash
19:58:11 <ehird> won't work
19:58:19 <ehird> since shebangs can only have one arg
19:58:20 <ehird> why I do not know
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:00:47 <ais523> not careful.
20:00:49 <ais523> (paste from perlrun)
20:01:11 <ehird> ais523: hmmmmm,
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:28 <ais523> ehird: only for X11
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:01:59 <ehird> ais523: darn
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:04:46 <ehird> ais523: hmm
20:04:54 <ehird> /{apps,users,sys}
20:05:07 <ehird> I don't _think_ you need anything else, realy.
20:05:10 <ehird> ais523: oh, wait
20:05:12 <ehird> hmm
20:05:14 <ehird> I was thinking libraries
20:05:16 <ehird> but they're system
20:05:20 <ehird> /sys/libs
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:11 <ais523> as in, the PATH
20:06:14 <ehird> ais523: ah
20:06:16 <ehird> probably;
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:06:50 <ehird> hmm
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:43 <ehird> :3
20:07:48 <ehird> ais523: I'm taking more inspiration from OS X's
20:07:56 <ehird> /Applications, /System, /Users
20:07:56 <ehird> etc
20:10:27 <ehird> ais523: anyway
20:10:33 <ehird> /usr/lib/nomic/bin unless you can give me a better path
20:12:37 <ehird> ais523: okay then
20:13:18 <ehird> ais523: http://pastebin.ca/1024095
20:13:25 <ehird> le nomic-root
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:50 <ehird> Hm.
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:08 <ehird> ais523: Bonk.
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:17 <ehird> ais523: :O
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:45 <ehird> ais523: :-P
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:22:50 <ehird> but shorter
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:23:57 <ehird> outgabe?
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:12 <ehird> 'nome wrath'
20:25:23 <ehird> ehh, whatever you spell it
20:25:26 <ehird> (that was intentional)
20:25:27 <ais523> or gnome wrath?
20:25:38 <ais523> gnomes can be pretty fierce when they get angry
20:25:44 <ehird> ouch
20:27:31 <ehird> ais523: okay, so, i'm thinking that maybe bash will be a little awkward for this?
20:27:32 <ehird> tunno
20:27:33 <ehird> *dunno
20:27:40 <ais523> awkward for what?
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:33 <GregorR> CELLPHONEWRISTWATCH
20:32:40 <bsmntbombdood> hi gregor
20:32:44 <GregorR> Hi :P
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:10 <GregorR> Is what?
20:33:34 <ais523> <GregorR>CELLPHONEWRISTWATCH
20:33:44 <GregorR> No, it's on my wrist :P
20:33:54 <GregorR> It's a my-wrist meme.
20:34:51 <oklopol> cool meme
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:37 <ehird> ais523: hm
20:41:46 <ehird> ais523: do you think bash _would_ be good for this?
20:41:54 <ais523> yes
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:11 <ais523> which file formats?
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:11 <ais523> proposal activation
20:46:16 <ehird> ais523: Hm, ok.
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:16 <ais523> :P :)
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:29 <ehird> In my opinion.
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:07 <ehird> ... very rare.
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 <ehird> o
20:49:18 <oklopol> also ::::::::::::::::::::::::::DDDDDDddddddDDDDDDDDDDDD does it for me
20:49:21 <ais523> o
20:49:24 <ehird> o
20:49:24 <oklopol> o
20:49:25 <ehird> o
20:49:28 <ais523> o
20:49:29 <ehird> o
20:49:31 <oklopol> o
20:49:32 <ehird> o
20:49:37 <ais523> o
20:49:39 <oklopol> okokokokokokokokokokoko
20:49:39 <ehird> o
20:49:41 <ais523> o
20:49:41 <ehird> brilliant
20:49:41 <oklopol> okokokokokokokokokokokokokoko
20:49:44 <oklopol> okokokokokokokokokokoko
20:49:45 <ehird> oko
20:49:45 <ehird> okoko
20:49:46 <ehird> okokoko
20:49:46 <ehird> okokokoko
20:49:47 <ehird> okokokokoko
20:49:48 <ehird> okokokokokoko
20:49:49 <ehird> okokokokokokoko
20:49:49 <ehird> okokokokokoko
20:49:50 <ais523> o?
20:49:51 <ehird> okokokokoko
20:49:53 <ehird> okokokoko
20:49:55 <ehird> okokoko
20:49:56 <oklopol> you're cheating, ehird?
20:49:57 <ehird> okoko
20:49:59 <ehird> oko
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:18 <ehird> oklopol: up, ko
20:50:21 <ehird> up, backspacebackspace
20:50:27 <oklopol> so cheating
20:50:30 <ehird> :(
20:50:32 * ais523 guessed that's how ehird was doing it
20:50:34 <oklopol> o
20:50:34 <oklopol> oko
20:50:35 <oklopol> okoko
20:50:36 <oklopol> okokoko
20:50:37 <oklopol> okokokoko
20:50:39 <oklopol> okokokokoko
20:50:40 <oklopol> okokokokokoko
20:50:41 <oklopol> okokokokokokoko
20:50:43 <oklopol> okokokokokokokoko
20:50:44 <ais523> okokokokokokoko
20:50:45 <oklopol> okokokokokokokokoko
20:50:45 <ehird> WATERMELONS
20:50:47 <oklopol> okokokokokokokokokoko
20:50:48 <ehird> WATERMELONS
20:50:50 <ais523> grr... I was slightly too late
20:51:15 * oklopol hears lament sharpening his kicking knife
20:51:25 <ehird> ais523: so, hm
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:45 <ais523> ehird: sounds good
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:01 <ais523> ehird: use whoami
21:11:18 <ais523> e.g. [ `whoami` -eq root ]
21:11:39 -!- SimonRC has joined.
21:11:46 <ehird> ais523: clever
21:11:49 <ehird> but you mean =
21:11:57 <ais523> probably
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:37:09 <ehird> SimonRC: heh
22:38:14 <SimonRC> hmm, 41st Jan 1994
22:38:20 <Slereah> This is not very droll3
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:03 <SimonRC> maybe, maybe
22:39:24 <Slereah> It's hard to follow a dongcopter as a joke.
22:42:46 <SimonRC> weird
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:03 <SimonRC> 1998
22:45:14 <SimonRC> um, 1997
22:45:24 <SimonRC> and that ended in 2007 when AOL dropped usenet access
22:45:26 <SimonRC> maybe
22:45:30 -!- Sgeo has joined.
22:46:03 <oerjan> 1993, says http://en.wikipedia.org/wiki/Eternal_September
22:46:14 <SimonRC> ok
22:46:24 <SimonRC> not too far of then :-)
22:46:27 <SimonRC> *off
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:08 <SimonRC> ehird: I dunno
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.
2008-05-21
00:11:58 <bsmntbombdood> it's funny how the internet was so elitest then
00:12:43 <bsmntbombdood> is there a modern equivalent?
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:52:44 <bsmntbombdood> lol
01:52:47 <bsmntbombdood> look at yahoo answers
01:52:51 <bsmntbombdood> it's the new aol
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:27 <bsmntbombdood> yes it is
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:23 <augur> :o
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:16 <RodgerTheGreat> that's an awfully elitist view of elitism.
01:59:18 <RodgerTheGreat> :D
01:59:19 <ehird> elitism isn't soemthing to strive for
01:59:20 <ehird> :)
01:59:30 <ehird> wow, the x.org guys actually own x.org
01:59:35 <ehird> a single letter domain? sheesh
01:59:42 <RodgerTheGreat> impressive
01:59:46 <ehird> bsmntbombdood and oklopol's domain: y.org
02:00:00 <bsmntbombdood> why?
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:01:19 <ehird> org.y
02:01:31 <bsmntbombdood> oh lawl
02:02:23 <ehird> bsmntbombdood: you could leverage the semantic web 3.0 platform to build an orgy arrangement site
02:02:25 <ehird> with REST!
02:02:40 <ehird> http://y.org/orgies/2008/12/1
02:02:40 <RodgerTheGreat> nice
02:02:48 <ehird> all the orgies taking place on the 1st of december!
02:02:48 <ehird> Profit.
02:02:51 <ehird> And orgy.
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:40 <ehird> Bye for today :-)
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:33:43 <augur> ..talk*
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:05:40 <AnMaster> hm?
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:34 <ehird> :-)
16:16:53 -!- ehird has set topic: international (hub (for esoteric) programming) languages ^D http://tunes.org/~nef/logs/esoteric ^D^D.
16:18:55 <augur> i suppose
16:18:57 <augur> why?
16:19:38 <augur> i mean, i was born 22 years ago so i'm not THAT new.
16:19:39 <augur> :P
16:20:16 -!- sebbu has joined.
16:20:32 <ehird> augur: i may have meant to #esoteric
16:20:32 <ehird> :-P
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:02 <ehird> five goats
16:23:14 <ehird> if you're a pacifist.
16:23:16 <ehird> then ten goats.
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:21 <augur> oh well all right
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:24 <ehird> god damn.
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:18 <ehird> Oh dear
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:26:54 <ehird> i see.
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_
16:45:17 <sebbu> you fail
16:45:27 <sebbu> =)
16:45:47 <ehird> ye
16:45:49 <ehird> s
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:16:57 <augur> what in?
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:21:08 <augur> oh i see
18:27:13 <pikhq> LMAO
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:24 <oklopol> GLIOG LIO
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:01 <GregorR> Uh, sure :P
21:51:23 <GregorR> It was really just an attempt at adding "l'" to the beginning of arbitrary noun phrases.
21:52:20 <ehird> sdasd
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:09 <bsmntbombdood> what
21:55:10 <oklopol> quite funny!
21:55:40 <oklopol> well, might've implied we're people who ask "why" as lot
21:55:46 <oklopol> and you said "why?"
21:55:52 <ehird> oklopol: no
21:55:53 <ehird> org.y
21:55:58 <oklopol> yeah yeah
21:56:08 <oklopol> w
21:56:10 <oklopol> shg
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:56:44 <bsmntbombdood> har
21:56:47 <ehird> GregorR: hahahah
21:56:48 <ehird> brilliant
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:26 <ehird> noobs
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:29 <ehird> GregorR: :-P
22:08:38 <ehird> GregorR: OK then, find a TLD with no nic.
22:08:41 <ehird> and buy nic.tld
22:08:47 <ehird> and get taken to a court of law
22:08:54 <ehird> 'cause its probably illegal
22:09:00 <GregorR> ...
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:04 <bsmntbombdood> what's nic?
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:22:43 <ehird> :-)
22:26:43 <GregorR> Probably :P
22:36:12 <bsmntbombdood> you know what's hot?
22:36:14 <bsmntbombdood> wimmins.
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").
23:01:48 <ehird> GregorR: so.
23:01:49 <ehird> Plof.3
23:04:29 <ehird> GregorR: ?
23:09:52 <ehird> GregorR: ..
23:22:29 <ehird> GregorR: ping
23:48:22 <AnMaster> wimmins?
23:48:25 <AnMaster> wtf is that?
23:48:39 <AnMaster> women?
23:48:53 <AnMaster> bsmntbombdood, ?
23:48:58 <bsmntbombdood> what?
23:49:09 <bsmntbombdood> i don't know why i said that
23:53:46 <oklopol> okokokokokokokoko
2008-05-22
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:40 <ihope> Ello.
00:35:51 * ihope kicks a small netsplit
00:44:46 <ehird> Heh
00:45:05 <GregorR> ehird: What about Plof 3?
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:41 <ehird> In C.
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:03 <ehird> then Plof
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:12 <ehird> :D
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:48:57 <GregorR> :P
00:49:13 <ehird> GregorR: And make that the official Plof 3 if it is 100% compatible, easy to maintain, and fast?
00:49:14 <ehird> :-P
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:17 <GregorR> That's a "yes" :P
00:58:30 <ehird> GregorR: Yes.
00:58:38 <ehird> GregorR: PSL is probably hideously inefficient for the plof that runs on opt.
00:58:38 <ehird> :P
00:58:39 <ehird> *top
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:00 <ehird> :-P
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:37 <oklopol> because ehird's is better
01:04:39 <oklopol> so much better
01:04:50 <ehird> oklopol: exactly, you get it
01:04:55 <oklopol> !
01:05:02 <oklopol> (Huh?)
01:05:07 <GregorR> :P
01:05:41 <oklopol> btw, you know what's fun
01:05:47 <oklopol> when you have a programming project
01:05:53 <oklopol> very simple, one night job
01:05:57 <GregorR> AND THEN MURDER
01:06:04 <oklopol> and then, someone joins the group with absolutely no skill
01:06:15 <GregorR> And /then/ murder.
01:06:20 <oklopol> and starts asking me help when trying to figure out the difference between two dates.
01:06:42 <GregorR> And /then/ murder?
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:04 <oklopol> but well
01:07:16 <oklopol> was quite close to murder when i saw his first attempt at it.
01:07:24 <GregorR> Uh oh :)
01:07:25 <oklopol> i almost wanna paste it here...
01:07:42 <GregorR> Come oooooooooon
01:07:42 <ehird> oklopol: do eet
01:07:44 <GregorR> Scrub names
01:07:50 <oklopol> http://www.vjn.fi/pb/p545635166.txt no names
01:07:54 <GregorR> Also to the daily WTF
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:08:13 <oklopol> :D
01:08:26 <oklopol> hmm
01:08:31 <oklopol> it's in finnish
01:08:40 <oklopol> i didn't notice, sorry
01:08:41 <oklopol> anyway
01:09:01 <oklopol> it calculates how much a movie is over its due
01:09:04 <oklopol> date
01:09:09 <oklopol> hmm due date
01:09:19 <oklopol> the day you're supposed to return it
01:09:35 <oklopol> i should translate that
01:09:39 <GregorR> Yes, that == due date
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:39 <ehird> :-P
01:10:47 <oklopol> i don't see that as a problem
01:10:52 <ehird> just kidding ofc
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:15 <oklopol> kanta = database
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:32 <oklopol> just number them
01:13:47 <oklopol> if someone can't remember the numbers, they suck, not my problem!
01:14:01 <ehird> oklopol: anyway.
01:14:04 <oklopol> anyways, i'll be doing some sleeping now
01:14:05 <oklopol> anyway?
01:14:08 <ehird> 'SQL' is a pretty good name for something that runs sql
01:14:15 <oklopol> ehird: lolwut?
01:14:24 <oklopol> what would you change to sql there?
01:14:26 <oklopol> eh
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:15:56 <oklopol> see ya!
01:15:57 <oklopol> ->
01:16:18 <ehird> 4) oklopol's mothr
01:17:07 <GregorR> 5) ehird's mothra
01:17:26 <ehird> 7)
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:17:35 <ehird> amazing
01:17:45 <GregorR> Hahaha
01:18:05 <dbc> :)
01:19:07 <ehird> dbc: how long is it?
01:19:14 <ehird> and does it involve 'write an OS'?
01:19:19 <dbc> Nope.
01:19:28 <ehird> something about posix^W^W^Winsert a meme here
01:19:31 <ehird> err
01:19:32 <ehird> PSOX
01:19:33 <ehird> heh
01:19:41 <Sgeo> Hm?
01:19:46 <GregorR> poinsert a meme here?
01:19:58 <GregorR> (Yeah yeah, I know ^W is word :P
01:20:01 <GregorR> )
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:21:47 <Sgeo> What's dbfi?
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:25:49 <GregorR> ^^
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:27:13 * GregorR wurve C
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:37:42 <ehird> e=e
01:37:45 <ehird> t=tic tac toe
01:44:49 <lament> teeeeeee
01:46:24 <ehird> lament: tic tac E
01:56:55 <ehird> Bye for today :-)
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:20 <Slereah_> Hello sirs
11:29:53 <Slereah_> I am thinking, should the link to the friends of brainfuck mailing list be erased?
11:42:50 <AnMaster> hm?
11:45:13 <Slereah_> "Friends of brainfuck"
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:53:56 <AnMaster> hm
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:55:57 <AnMaster> Slereah_, agree?
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:14 <AnMaster> that's impressive
11:58:38 <Slereah_> But no good old CPU to do sum BF on it
11:58:54 <AnMaster> what about a FPGA?
11:58:57 <AnMaster> or whatever they are called
11:59:13 <Slereah_> FPGA?
11:59:17 <AnMaster> ah that's it
11:59:28 <AnMaster> programmable hardware, uses vhdl if I remember correctly?
11:59:39 * AnMaster is no expert on such things
12:01:46 <Slereah_> NOT GOOD ENOUGH
12:01:59 <AnMaster> ?
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:02:38 <Slereah_> Oh.
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:05:24 <AnMaster> nah, I can think of worse
12:05:31 <AnMaster> what about that boolfuck?
12:07:30 <Slereah_> Boolfuck is Brainfuck.
12:07:55 <Slereah_> Changing the symbol set doesn't do much!
12:08:41 <AnMaster> reduced brainfuck, you can remove - for example
12:08:47 <AnMaster> and a lot more
12:08:55 <AnMaster> see page on esolang about it
12:09:01 <Slereah_> I know.
12:09:12 <Slereah_> You can also combile + and >
12:09:23 <Slereah_> But that's not really interesting.
12:09:45 <AnMaster> hm
12:10:42 <Slereah_> Too much was done on BF.
12:10:58 <Slereah_> Another language must rise.
12:11:13 <AnMaster> befunge?
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:23 <AnMaster> that passes mycology
12:14:26 <AnMaster> interpreter is easy
12:14:39 <Slereah_> I can't program.
12:14:49 <AnMaster> what on earth are you doing here then? ;P
12:14:56 <Slereah_> I can pretend to!
12:14:59 <AnMaster> hah
12:15:02 <Slereah_> But in Python.
12:15:09 <AnMaster> ah yes predent
12:15:11 <AnMaster> pretend*
12:15:12 * AnMaster runs
12:15:17 <Slereah_> And in my languages.
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:16:22 <Slereah_> Well, got to go.
12:16:22 <Slereah_> Exams.
12:16:30 <AnMaster> cya
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:29:44 <AnMaster> oklopol, a what computer?
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:28:13 <Slereah_> Wouldn't the man alone be TC?
15:28:19 <Slereah_> The abacus doesn't do much
15:28:35 <pikhq> It's storage.
15:28:49 <Slereah_> So's a tape.
15:28:53 <pikhq> True.
15:29:00 <Slereah_> Or Rainman.
15:29:07 <pikhq> Not really.
15:29:22 <pikhq> That's fairly finite, actually.
15:29:44 <Slereah_> Unless an INFINITE RAINMAN
15:29:48 <Slereah_> Infinitely retarded.
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:33:56 <Slereah_> Orly?
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:29 <Slereah_> Well, it doesn't need to be.
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:35:59 <Slereah_> ...
15:36:26 <Slereah_> WHICH CAN ACCEPTS ANY INPUT THEN
15:36:51 <dbc> Sure.
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.
15:39:16 <Slereah_> In the bitchanger way.
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 <oklopol> well
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:08 <oklopol> he does
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:46 <oklopol> hmm
16:06:53 <oklopol> i guess you'd do that with the IO monad too
16:07:08 <Slereah_> Monads?
16:07:11 * Slereah_ flees
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:17 <Slereah_> ... yes?
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:46 <oklopol> Slereah_: sure
16:10:59 <oklopol> have a language X with two instructions
16:11:08 <oklopol> and a stack
16:11:16 <oklopol> the first on adds a "+" on the stack
16:11:19 <oklopol> *one
16:11:22 <oklopol> it's called "+"
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:11:40 <Slereah_> Is it random?
16:11:51 <oklopol> b can run any 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:00 <oklopol> how so?
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:25 <oklopol> ...
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:41 <oklopol> ..?
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:16 <oklopol> asd
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:17:56 <oklopol> bfcness
16:18:43 <Slereah_> Hm.
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:53 <oklopol> and
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:20:36 <Slereah_> But I see your point.
16:20:37 <oklopol> what's wrong with it?
16:20:41 <oklopol> my example
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:05 <oklopol> is it trivial it's tc?
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:51 <Slereah_> Yes.
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:28:58 <oklopol> !
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:42 <oklopol> but
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:09 <oklopol> duplicate, lift, rotate
16:30:29 <oklopol> depends on the operations whether you can create interesting enough programs
16:30:40 <Slereah_> Is it not BFC?
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:16 <oklopol> then it's tc
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:45 <ais523> it's BF-complete
16:31:55 <ais523> but you can't compile all BF programs into sed
16:32:05 <oklopol> aha?
16:32:09 <oklopol> how does that work?
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:24 <oklopol> ah.
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:34:50 <oklopol> yeah, that's the point
16:35:00 <oklopol> eh
16:35:03 <oklopol> hmm
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:14 <oklopol> well
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:17 <oklopol> yes
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:36:56 <oklopol> umm no
16:37:01 <ais523> that involves being able to interpret arbitrary input
16:37:01 <oklopol> well
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:23 <ais523> yes, you do
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:38:57 <Slereah_> But what if unusually?
16:39:10 <Slereah_> But, if you can write a BF interpreter in it
16:39:14 <AnMaster> what language is this about?
16:39:23 <AnMaster> I mean, apart from bf
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:27 <oklopol> well
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:00 <AnMaster> yeah that could work
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:40:56 <Slereah_> I'm not sure.
16:40:56 <oklopol> hmm
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:13 <oklopol> well
16:41:28 <oklopol> you can prolly do something like that factor language in just a few characters.
16:41:30 <Slereah_> I'll go sleep on it.
16:41:30 <oklopol> like 30
16:41:38 <oklopol> hmm
16:41:39 <oklopol> right
16:41:40 <oklopol> bf interp
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:42:49 <Slereah_> ais523 : Use b!
16:43:11 <oklopol> Slereah_: you can't cheat like that
16:43:13 <oklopol> sorry
16:43:17 <ais523> well, some langs are going to be easier to golf a TC lang in than others
16:43:19 <Slereah_> OR CAN I?
16:43:22 <oklopol> :D
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:05 <AnMaster> Slereah_, what is b?
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:31 <AnMaster> ais523, in what language?
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:47 <AnMaster> possibly more
16:45:51 <Slereah_> Yes, but i doesn't really do anything on its own
16:45:52 <ais523> AnMaster: it's HQ9+
16:46:00 <AnMaster> ais523, ah yes that was it
16:46:05 <AnMaster> or HQ9++ :D
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:46:43 <ais523> AnMaster: yes
16:46:50 <ais523> s/ter/tor/
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.
2008-05-23
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:28 <ehird> Bye for today :-)
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:05:41 <Slereah_> http://desudesudesu.net/
03:05:42 <Slereah_> Lolz
03:15:26 <pikhq> MOTO DESU!
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:36:14 <RodgerTheGreat> chilling and fascinating
04:47:35 -!- ihope_ has quit (Read error: 110 (Connection timed out)).
04:50:57 <lament> wow pretty
04:52:01 <pikhq> Meinn gott.
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.
06:51:23 <augur> hullo helloo!
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
08:34:21 <augur> everyone watch it
08:34:23 <augur> :o
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:34:46 <augur> o.o
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:16:50 <oklopol> i'm a coolmonger
12:18:28 <augur> hey man
12:18:48 <augur> where've you been ey?
12:21:35 <oklopol> i haven't been gone *that* long!
12:21:43 <oklopol> oh
12:21:44 <oklopol> right
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:24:18 <oklopol> now shops ->
12:31:51 <augur> vista ew
12:37:12 -!- timotiis has joined.
12:45:47 -!- ihope has quit (Read error: 110 (Connection timed out)).
12:47:52 <augur> oklopol
12:48:14 <augur> oklopol
12:48:15 <augur> oklopol
12:48:16 <augur> oklopol
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:34 <oklopol> augur
14:21:35 <oklopol> augur
14:21:36 <oklopol> augur
14:21:36 <oklopol> augur
14:21:44 <oklopol> came back, and now i'm leaving
14:23:07 <augur> :P
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:26:27 <oklopol> :D
14:26:41 <oklopol> i'm not single
14:26:56 <augur> lame
14:27:01 <oklopol> :D
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:27:48 <augur> i suppose :p
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:28:50 <augur> but never mind :p
14:28:56 <oklopol> :D
14:29:15 <oklopol> well... umm... i'll keep in mind
14:29:17 <oklopol> !
14:29:38 <augur> :P
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:07 <oklopol> :D
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:30 <oklopol> ->
14:31:32 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
14:49:01 -!- oklopol has joined.
14:53:45 <augur> o.o
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:35:20 <bears> 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
18:58:48 <lament> bears.
19:08:18 <bears> bears.
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.
20:56:06 <bsmntbombdood> wtf was that all about
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:11:45 <ehird> ...
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 (?).
2008-05-24
00:26:09 -!- Iskr has quit ("Leaving").
00:50:22 <ehird> Bye for today :-)
00:50:49 -!- ehird has quit (Remote closed the connection).
01:02:19 -!- timotiis has quit (Read error: 110 (Connection timed out)).
01:39:06 <oklopol> GAAAAAAAA
01:39:13 <oklopol> mörning all
01:39:29 <Slereah_> Hello sir
01:39:53 <oklopol> well hello mister Slereah_
01:40:02 <oklopol> what's down?
01:40:23 <Sgeo> JRChat
01:41:02 <Sgeo> Maybe better would have been: A web server running Win95
01:41:49 <Slereah_> I'm on holiday
01:41:55 <oklopol> who isn't?
01:42:14 <Slereah_> Although I do feel like I'll have to retake my exams in three weeks
01:42:19 <Slereah_> I did awful.
01:42:25 <oklopol> i don't need to do anything
01:42:26 <oklopol> ever
01:43:36 <oklopol> well
01:43:47 <oklopol> i have until sunday to finish our database projevt
01:43:51 <oklopol> *project
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:43 <oklopol> oaky, ppl
01:49:46 <oklopol> opinions
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:26 <oklopol> !
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:57:43 * Sgeo asks in Sine
01:57:44 <oklopol> don't
01:58:30 <oklopol> what did they say?
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:37 <oklopol> sine sound so awesome
01:59:40 <oklopol> *sounds
01:59:46 <Sgeo> Is that sarcasm?
01:59:50 <oklopol> god i typo when i'm drunk
01:59:52 <oklopol> umm no
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:51:50 <SimonRC> very relaxing
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:57:52 <bsmntbombdood> ha
19:58:31 <SimonRC> well
19:58:40 <SimonRC> that is what other peopoe said too
19:58:44 <SimonRC> *people
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:17 <SimonRC> personality?
20:00:42 <ehird> read the damn page
20:00:43 <ehird> :)
20:01:11 <SimonRC> I have read it
20:01:37 <SimonRC> does it communicate his personaity?
20:02:37 -!- RodgerTheGreat has quit (Read error: 104 (Connection reset by peer)).
20:04:38 <SimonRC> not AFACIT
20:05:35 <ehird> oh wells
20:05:39 <ehird> SimonRC: any progress on kigforth?
20:06:20 <SimonRC> hm?
20:06:32 <ehird> SimonRC: just interesting
20:06:34 <ehird> *interested
20:06:47 <SimonRC> oh, I'v been ignoring it
20:09:20 <ehird> SimonRC: :(
20:09:39 <ehird> no idea why I did that
20:10:09 <ehird> -Deewiant- VERSION Deewiantbot version NaN
20:10:09 <ehird> Cute
20:10:25 <SimonRC> heh
20:11:23 -!- RodgerTheGreat has joined.
20:17:08 <SimonRC> hi
20:18:27 <RodgerTheGreat> hi
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:08 <mikemorg> what are u into
23:26:41 <ehird> mikemorg: hacking, partination
23:27:13 <mikemorg> ok
23:27:36 <mikemorg> can u prove that to me
23:27:40 <ehird> mikemorg: yeah how
23:27:46 <ehird> what do u want?
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:24 <mikemorg> yahoomail
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:20 <mikemorg> barryb2love@yahoo.com
23:30:39 <mikemorg> that is my email
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:11 <mikemorg> ok
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:28 <ehird> mikemorg: hello
23:34:47 <mikemorg> any back in us or uk
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:36:39 <mikemorg> ok
23:36:39 <mikemorg> tell me lol
23:36:44 <ehird> mikemorg: ok
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:38:14 <ehird> i gotcha!
23:39:00 <ehird> mikemorg: hey dude?
23:39:03 <ehird> you there?
23:39:05 <mikemorg> good lol
23:39:14 <mikemorg> what is my ip
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:03 <mikemorg> lol
23:40:13 <mikemorg> good boy
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:00 <ehird> mikemorg: yes
23:42:12 <mikemorg> good
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:42:58 <ehird> irc is secure
23:43:11 <ehird> don't want any private chats to be read right??
23:44:12 <ehird> mikemorg: hi
23:44:55 <ehird> mikemorg: its better to be secure rite?
23:45:07 <mikemorg> so how can we talk again
23:45:07 <mikemorg> cos i have to go now
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:45:59 <ehird> just ignore them
23:46:05 <mikemorg> ok
23:46:05 <mikemorg> when are u always online
23:46:14 <ehird> mikemorg: depends
23:46:24 <ehird> always on around this time, not so much afterwards
23:46:26 <ehird> but a lot before
23:46:42 <ehird> mikemorg: evry1 els in here is an exp. hacker
23:46:45 <ehird> there'll always be sum1
23:46:50 <ehird> just come in here
23:47:10 <ehird> so bye ... mike morgan
23:47:21 <mikemorg> anyway where are u frome
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:09 <mikemorg> i know
23:48:23 <mikemorg> yah man
23:48:35 <ehird> mikemorg: wanna see sum sites ive hacked???
23:48:51 <mikemorg> we really have alote to do together
23:49:12 <mikemorg> yah
23:49:45 <ehird> mikemorg: i sent u a site in privmsg
23:49:46 <ehird> that i hacked
23:50:22 <mikemorg> ok
23:50:29 <ehird> mikemorg: take a look
23:50:44 <mikemorg> ok
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:04 <ehird> mikemorg: hello
23:55:06 <ehird> are you there
23:55:25 -!- atsampson has joined.
23:55:56 <ehird> mikemorg: .
23:57:33 <ehird> mikemorg: ....
23:58:59 <ehird> mikemorg: hello dude
23:59:05 <ehird> mikemorg: i'm trying to help with a php mial
23:59:07 <ehird> like u asked
2008-05-25
00:08:16 <ehird> Oh well
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:06 <oklopol> cool
00:22:13 <ehird> oklopol: :P
00:22:22 <oklopol> finished my infinite dimension 5-in-a-row game
00:22:25 <oklopol> well
00:22:27 <oklopol> not the game part
00:22:43 <ehird> oklopol: wow
00:22:45 <ehird> i wanna see
00:22:47 <oklopol> but the operations on infinite lists and the parser for the code generating them
00:22:50 <oklopol> wanna see what?
00:22:59 <oklopol> my code cannot be read.
00:23:03 <oklopol> but i can put it on a bot!
00:23:11 <oklopol> hmm...
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:08 <oklopol> haskell is tc
00:24:23 <oklopol> how would i check for equality, and subtract?
00:24:40 <ehird> oklopol: equality's not hard...
00:24:45 <oklopol> umm
00:24:47 <ehird> oklopol: if you can check pointer locations ... :DDDDDDDDDDDDDDd
00:24:53 <oklopol> it's *impossible*..
00:25:00 <ehird> not if you can check pointer locations oklopol
00:25:01 <ehird> :DD
00:25:04 <oklopol> hmm
00:25:05 <oklopol> okay
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:25:16 <oklopol> that doesn't help.
00:25:20 <ehird> oklopol: why not
00:25:27 <oklopol> well
00:25:38 <oklopol> to find a five-in-a-row
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:40 <oklopol> ...
00:26:41 <oklopol> sorry
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:24 <oklopol> also
00:27:28 <oklopol> the board is a set
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:11 <oklopol> not very much
00:30:31 <oklopol> <args> == range(args)
00:30:34 <oklopol> in python
00:30:36 <oklopol> basically
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:07 <oklopol> so
00:32:15 <ehird> oklopol: why do you need a parser for that
00:32:16 <ehird> :P
00:32:21 <ehird> you could just model it as some functions
00:32:30 <oklopol> err
00:32:40 <oklopol> OK!
00:32:42 <oklopol> anyway
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:33:55 <oklopol> and
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:10 <oklopol> aaaaaaaaaaaanyway
00:34:10 <ehird> XD
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:34:50 <oklopol> i'm a bot man
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:43 <ehird> XD
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:39 <ehird> oklopol: heh
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:06 <oklopol> i think it's quite good
00:37:09 <ehird> oklopol: 'cause I bet you someone will make a 100-node bot
00:37:11 <ehird> and then 500-node
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:29 <oklopol> ehird: what are nodes?
00:37:30 <ehird> and even _made_ that way using some buttons!
00:37:34 <oklopol> SimonRC: how?
00:37:35 <ehird> oklopol: I mean, i
00:37:36 <ehird> like this
00:37:38 <ehird> foo
00:37:39 <ehird> /
00:37:41 <ehird> /
00:37:42 <oklopol> you cannot create infinite numbers.
00:37:43 <ehird> bar#
00:37:45 <ehird> \
00:37:48 <ehird> \
00:37:50 <ehird> baz
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:23 <ehird> :DDDD
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:38:57 <oklopol> *whitespace
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:08 <oklopol> okay
00:39:11 <ehird> oklopol: but
00:39:14 <ehird> look:
00:39:20 <ehird> ___X
00:39:22 <ehird> ___|
00:39:24 <ehird> ___if
00:39:28 <ehird> _/__\_
00:39:32 <ehird> a____b
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:53 <oklopol> ah
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:14 <oklopol> and why would you?
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:40:48 <SimonRC> just saying, that's all
00:40:52 <oklopol> okay!
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:40 <ehird> oklopol: ME
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:44:05 <ehird> oklopol: yes??
00:45:59 <ehird> oklopol: yes??
00:47:23 <oklopol> whaaaa
00:47:40 <oklopol> well board size is infinitely extendable
00:47:48 <oklopol> infinite moves at a time?
00:47:50 <ehird> oklopol: yes but you should make it infinite-in-a-row
00:47:52 <oklopol> how would that work?
00:47:54 <oklopol> ah.
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:02 <ehird> but yeah
00:48:10 <ehird> i'd totally love an inf-d inf-size inf-in-a-row game
00:48:15 <oklopol> :)
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:01 <oklopol> now just the bot
00:49:05 <oklopol> and we can test it
00:49:11 <ehird> are you using my tinygame oklopol
00:49:11 <ehird> :DD
00:49:16 <ehird> (if you're doing graphix)
00:49:19 <oklopol> umm... for what? :D
00:49:19 <ehird> if not, you should
00:49:24 <oklopol> heh
00:49:24 <ehird> oklopol: for the gui version
00:49:24 <ehird> duh
00:49:25 <ehird> :D
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:17 <oklopol> :)
00:50:32 <oklopol> well, you can always do (n+1)d->nd
00:50:42 <oklopol> perhaps the fold is doable
00:50:52 <oklopol> but... perhaps later!
00:56:51 <ehird> oklopol: i bet it'll be completely incomprehensible
00:56:52 <ehird> but pretty
01:00:12 <olsner> hmm, so that's more like arbitrary-d, where every [arbitrary+1 .. infinity]'th coordinate is zero
01:01:20 <oklopol> olsner: no
01:01:36 <oklopol> it's cyclic
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:12 <ehird> infinite in a row
01:07:17 <ehird> oklopol: i am a ~ VISIONARY ~
01:07:19 <oklopol> :D
01:07:23 <oklopol> errr, sure!
01:07:29 <ehird> oklopol: surely you'd want to play that
01:07:36 <ehird> oklopol: OH WAIT
01:07:39 <ehird> nopol...
01:07:45 <ehird> NEGATIVE DEPTH LISTS OF CO-ORDINATES!!!
01:07:55 <ehird> ~ HOLY FU @ CKING SHIT ~
01:08:28 <ehird> oklopol: YES
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:28 <ehird> [already exists]
01:09:28 <ehird> so
01:09:33 <ehird> instead of (x,y) as co-ordinates
01:09:37 <ehird> have it a ~negative depth list~
01:09:42 <ehird> `wow`
01:10:34 <oklopol> hmm, should join any minute now
01:11:56 <oklopol> hmmm
01:12:09 <ehird> oklopol: should join?
01:12:36 <oklopol> whoops
01:12:37 <oklopol> wait a mo
01:14:10 <oklopol> lol
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:14:59 <oklopol> join
01:15:07 <oklopol> @join
01:15:07 -!- inf-anf-oh has quit (Remote closed the connection).
01:15:09 <oklopol> :D
01:16:15 -!- inf-anf-oh has joined.
01:16:20 <oklopol> @join
01:16:43 <oklopol> players.append[sender]
01:16:44 <oklopol> ...
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:17 <oklopol> what do you mean?
01:17:38 <oklopol> python code or infer code?
01:17:41 <oklopol> @join
01:17:42 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi joined the game.
01:17:45 <oklopol> ...
01:17:45 <oklopol> :D
01:17:48 <oklopol> rrrrright
01:18:04 <ehird> oklopol: that's almost right
01:18:05 <ehird> one too many :
01:18:10 <ehird> and you aren't extracing the nick from the host
01:18:12 <ehird> oklopol: that is
01:18:14 <ehird> you are just taking the first arg
01:18:17 <ehird> :abc!@bv
01:18:19 <ehird> and that stuff
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:39 <oklopol> retry
01:19:53 -!- inf-anf-oh has joined.
01:19:57 <oklopol> @join
01:19:58 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi joined the game.
01:20:00 <oklopol> ...
01:20:01 <oklopol> ASDKJfi
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:33 <oklopol> @join
01:20:33 <inf-anf-oh> oklopol joined the game.
01:20:38 <oklopol> ehird: join the game
01:20:42 <ehird> ok
01:20:43 <ehird> @join
01:20:44 <inf-anf-oh> ehird joined the game.
01:20:46 <ehird> @start
01:20:47 <oklopol> @start 2
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:20:50 <ehird> :D
01:20:51 <oklopol> :DSAF
01:20:58 <ehird> oklopol: wow
01:21:01 <ehird> whats up with your chin
01:21:06 <ehird> it's all.. SAF
01:21:18 -!- inf-anf-oh has joined.
01:21:26 <oklopol> okay let's do that again
01:21:28 <oklopol> @join
01:21:28 <inf-anf-oh> oklopol joined the game.
01:21:37 <ehird> @join
01:21:37 <inf-anf-oh> ehird joined the game.
01:21:38 <ehird> @start 2
01:21:39 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:21:39 <oklopol> @start 2
01:21:39 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:21:41 <ehird> :D
01:21:42 <oklopol> hmm
01:21:43 <ehird> ok
01:21:44 <ehird> now what
01:21:49 -!- augur has joined.
01:21:59 <oklopol> @start
01:22:09 -!- inf-anf-oh has quit (Remote closed the connection).
01:22:11 <augur> :O
01:22:46 <oklopol> okay i plain failed @ python
01:22:48 -!- inf-anf-oh has joined.
01:22:50 <oklopol> hi augur
01:22:51 <oklopol> @join
01:22:52 <inf-anf-oh> oklopol joined the game.
01:22:58 <oklopol> @start
01:23:00 <oklopol> @start 2
01:23:09 <augur> why hello oklopol ;O
01:23:36 <ehird> @join
01:23:36 <inf-anf-oh> ehird joined the game.
01:23:38 <ehird> @start 2
01:23:39 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:23:42 <ehird> oklopol: nao whut
01:23:55 <augur> nao 4 secks
01:24:16 <oklopol> ehird:
01:24:18 <ehird> oklopol: ...
01:24:19 <ehird> IM WAITIN'
01:24:20 <oklopol> @move <1 4>
01:24:21 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi succesfully added a piece.
01:24:23 <oklopol> ...
01:24:26 <ehird> oklopol: oh its fine
01:24:29 <ehird> just let it be like that
01:24:33 <ehird> @move <4 7>
01:24:34 <inf-anf-oh> :ehird!n=ehird@91.105.77.215 succesfully added a piece.
01:24:35 <oklopol> add something
01:24:39 <ehird> @move [72 63 4]
01:24:42 <oklopol> @move <1 5>
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 <oklopol> but do move
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:01 <oklopol> @move paijo
01:25:02 <inf-anf-oh> Invalid move.
01:25:02 <ehird> more than one peice I believe
01:25:08 <oklopol> @move <1 6>
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:16 <oklopol> ehird: no.
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:21 <ehird> oh i see
01:25:23 <ehird> i put one at
01:25:25 <ehird> (50,5,...
01:25:27 <oklopol> yes.
01:25:31 <ehird> oklopol: wow
01:25:33 <ehird> a gui for this will be awesome
01:25:34 <ehird> :P
01:25:37 <ehird> okay
01:25:41 <oklopol> btw. you can add the same piece twice, i just realized
01:25:41 <oklopol> but
01:25:45 <ehird> @move [a <50 100> {a 6}]
01:25:46 <oklopol> add a piece
01:25:46 <inf-anf-oh> :ehird!n=ehird@91.105.77.215 succesfully added a piece.
01:25:49 <oklopol> i wanna see if it works
01:25:50 <oklopol> okay
01:25:55 <oklopol> @move <1 7>
01:25:55 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi succesfully added a piece.
01:26:00 <oklopol> i should win now
01:26:05 <oklopol> add a pice
01:26:06 <oklopol> piece
01:26:07 <ehird> @move <1 8>
01:26:08 <inf-anf-oh> :ehird!n=ehird@91.105.77.215 succesfully added a piece.
01:26:11 <ehird> bitch
01:26:11 <oklopol> @move <1 3>
01:26:12 <inf-anf-oh> :oklopol!n=nnscript@oklopol.yok.utu.fi succesfully added a piece.
01:26:12 <ehird> :D
01:26:13 <ehird> aw
01:26:15 <oklopol> fuck.
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:44 <oklopol> @join
01:27:44 <inf-anf-oh> oklopol joined the game.
01:27:53 <oklopol> and fixed the nick thing ofc
01:28:01 <oklopol> join, we'll test
01:28:05 <ehird> @join
01:28:05 <inf-anf-oh> ehird joined the game.
01:28:06 <ehird> @start 2
01:28:07 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:28:09 <ehird> @move <>
01:28:13 <ehird> @move <0>
01:28:15 <ehird> @move <0 0>
01:28:18 <ehird> oklopol: :D
01:28:21 <ehird> @move <-1 -1>
01:28:24 <ehird> @move <1 2 3>
01:28:28 <ehird> oklopol: shit sucks
01:28:30 <oklopol> i move first
01:28:33 <oklopol> @move <5 5>
01:28:33 <inf-anf-oh> oklopol succesfully added a piece.
01:28:46 <oklopol> it should detect if you do that again
01:28:51 <oklopol> try @move 4
01:28:53 <oklopol> eh
01:28:55 <oklopol> @move 5
01:29:06 <oklopol> (5..5 * infinity == 5 * infinity)
01:29:19 <oklopol> @move 5
01:29:19 <oklopol> @move 5
01:29:20 <oklopol> @move 5
01:29:20 <oklopol> @move 5
01:29:23 <oklopol> try it!!! :DSDFADSFASDF
01:29:30 <ehird> oklopol: ok
01:29:32 <ehird> @move 7
01:29:33 <inf-anf-oh> ehird succesfully added a piece.
01:29:39 <oklopol> @move <7 7>
01:29:39 <inf-anf-oh> Invalid move.
01:29:41 <oklopol> !
01:29:43 <oklopol> @move <7 8>
01:29:43 <inf-anf-oh> oklopol succesfully added a piece.
01:29:49 <oklopol> see, you had a piece there :)
01:30:11 <ehird> @move <1 2 3>
01:30:12 <inf-anf-oh> ehird succesfully added a piece.
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:20 <ehird> :P
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:31:57 <oklopol> aewiofj
01:31:58 <oklopol> hey
01:32:02 <oklopol> i did
01:32:18 <oklopol> @move <1 4>, then <1 5> then <1 6> then <1 7> then <1 3>
01:32:18 <inf-anf-oh> Invalid move.
01:32:30 <oklopol> THERE IS NO FUCKING 5-IN-A-ROW THERE
01:32:32 <oklopol> :DDDDDDDD
01:32:34 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:32:49 <oklopol> end should end the game
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:07 <oklopol> @join
01:33:08 <inf-anf-oh> oklopol joined the game.
01:33:20 <oklopol> and i'll add @current
01:33:30 <ehird> @join
01:33:31 <inf-anf-oh> ehird joined the game.
01:33:32 <ehird> @start 2
01:33:33 <inf-anf-oh> Starting game with players: oklopol and ehird.
01:33:42 <ehird> @move <1 1>
01:33:48 <ehird> oh
01:34:05 <ehird> ok`
01:34:06 <ehird> oklopol:
01:34:19 <oklopol> hmmmmm
01:34:20 <oklopol> okay
01:34:25 <oklopol> @move 20
01:34:25 <inf-anf-oh> oklopol succesfully added a piece.
01:34:36 <ehird> @move 1
01:34:37 <inf-anf-oh> ehird succesfully added a piece.
01:34:40 <oklopol> ...
01:34:43 <oklopol> wtf
01:34:48 <oklopol> @move 1
01:34:48 <inf-anf-oh> Invalid move.
01:34:53 <oklopol> @move <20 20>
01:34:53 <inf-anf-oh> Invalid move.
01:34:57 <oklopol> ...
01:35:05 <ehird> oklopol: Lulz
01:35:09 <ehird> try
01:35:12 <ehird> @move <4000 40000>
01:35:12 <ehird> :D
01:35:15 <oklopol> :D
01:35:19 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:35:25 <oklopol> correcting moooore stuff lol
01:35:59 <oklopol> hmm
01:36:06 <oklopol> what was it i had to correct
01:36:10 <oklopol> hmm right
01:36:11 <oklopol> that thing
01:37:49 <ehird> oklopol: waitin'
01:38:11 <oklopol> let's go for a row now
01:38:14 -!- inf-anf-oh has joined.
01:38:22 <oklopol> i'll worry about <20 20> != 20 more after that
01:38:22 <ehird> @join
01:38:23 <inf-anf-oh> ehird joined the game.
01:38:24 <oklopol> @join
01:38:24 <ehird> @start 2
01:38:24 <inf-anf-oh> oklopol joined the game.
01:38:24 <inf-anf-oh> Starting game with players: ehird and oklopol.
01:38:27 <ehird> @move 1
01:38:27 <inf-anf-oh> ehird succesfully added a piece.
01:38:30 <ehird> @move 2
01:38:31 <oklopol> @move 2
01:38:31 <inf-anf-oh> oklopol succesfully added a piece.
01:38:37 <ehird> @move <0 1>
01:38:38 <inf-anf-oh> ehird succesfully added a piece.
01:38:47 <oklopol> @move 2 3
01:38:47 <inf-anf-oh> oklopol succesfully added a piece.
01:38:52 <ehird> @move {}
01:38:52 <inf-anf-oh> ehird succesfully added a piece.
01:38:55 <ehird> WHOA
01:38:59 <oklopol> @move 2 6
01:38:59 <inf-anf-oh> oklopol succesfully added a piece.
01:38:59 <ehird> 0 dimensional 5 in a row
01:39:01 <ehird> my mind is blown
01:39:03 <ehird> @move {}
01:39:04 <inf-anf-oh> Invalid move.
01:39:08 <ehird> oklopol: seriously what
01:39:15 <oklopol> (it's actually the same as {0})
01:39:33 <oklopol> move!
01:39:40 <ehird> @move {5 5 5 5 5 5 5 54 654 654 651651651 a}
01:39:40 <inf-anf-oh> Invalid move.
01:39:45 <ehird> @move [a <> {5 5 5 5 5 5 5 54 654 654 651651651 a}]
01:39:46 <inf-anf-oh> Invalid move.
01:39:51 <ehird> @move [a <0 0> {5 5 5 5 5 5 5 54 654 654 651651651 a}]
01:39:51 <inf-anf-oh> ehird succesfully added a piece.
01:39:52 <oklopol> <> is invalied
01:39:55 <oklopol> @move 2 (0 - 3)
01:39:55 <inf-anf-oh> oklopol succesfully added a piece.
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:08 <oklopol> a = 0
01:40:09 <inf-anf-oh> Invalid move.
01:40:14 <ehird> @move ([a <0 0> {5 5 5 5 5 5 5 54 654 654 651651651 a}] - {})
01:40:15 <inf-anf-oh> Invalid move.
01:40:19 <ehird> @move ([a <0 0> {5 5 5 5 5 5 5 54 654 654 651651651 a}] - 2)
01:40:19 <inf-anf-oh> Invalid move.
01:40:20 <oklopol> umm
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:40:35 <inf-anf-oh> ehird succesfully added a piece.
01:40:37 <oklopol> @move 2 (0 - 6)
01:40:37 <inf-anf-oh> oklopol succesfully added a piece.
01:40:45 <ehird> @move (0 - 7) 0
01:40:45 <inf-anf-oh> ehird succesfully added a piece.
01:40:47 <oklopol> @move 2 (0 - 9)
01:40:47 <inf-anf-oh> oklopol succesfully added a piece.
01:40:50 <oklopol> ASRGTJOAGIR
01:41:05 <ehird> @move -4 -4
01:41:06 <inf-anf-oh> Invalid move.
01:41:08 <oklopol> oh!
01:41:11 <oklopol> move move move move!
01:41:12 <ehird> @move (0 - 999999999999999999999999999999999999999999999999999999999) 7
01:41:13 <oklopol> fgast!
01:41:13 <inf-anf-oh> ehird succesfully added a piece.
01:41:14 <oklopol> fast!
01:41:18 <oklopol> @move 2 0
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:22 <ehird> what
01:41:24 <oklopol> WELL
01:41:27 <oklopol> weird output
01:41:29 <ehird> oklopol: :-)
01:41:31 <oklopol> but... so cool!
01:41:37 <ehird> oklopol: shouldn't you show 0-9 as -9
01:42:20 <ehird> oklopol: and parse too
01:42:29 <oklopol> yeah
01:42:31 <oklopol> and i will
01:42:37 <oklopol> but first, i need to fix that output
01:42:40 <ehird> oklopol: can i go now
01:42:42 <oklopol> which is trivial ofc
01:42:43 <oklopol> heh
01:42:44 <oklopol> sure :D
01:42:50 <ehird> yay
01:42:50 <ehird> :)
01:42:58 <ehird> Bye for today :-)
01:43:19 -!- inf-anf-oh has quit (Read error: 104 (Connection reset by peer)).
01:43:24 <oklopol> byes
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:43:54 <oklopol> and it should work
01:43:57 <oklopol> @join
01:43:57 <inf-anf-oh> oklopol joined the game.
01:44:02 <oklopol> @end
01:44:02 <inf-anf-oh> Ending current game.
01:44:06 <oklopol> @join
01:44:06 <inf-anf-oh> oklopol joined the game.
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:03 <oklopol> @join
01:45:05 <inf-anf-oh> oklopol joined the game.
01:45:37 <oklopol> please answer the call of awesome and join the game
01:45:50 <oklopol> i need to go too, soon
01:45:55 <oklopol> so... anybody?
01:46:46 <oklopol> hmm
01:46:48 -!- oklopol has changed nick to oklofok.
01:46:50 <oklofok> @join
01:46:51 <inf-anf-oh> oklofok joined the game.
01:46:54 -!- oklofok has changed nick to oklopol.
01:46:58 <oklopol> @move 1
01:47:04 <oklopol> @start
01:47:04 <inf-anf-oh> Number of players not an integer greater than one.
01:47:08 <oklopol> @start 2
01:47:09 <inf-anf-oh> Starting game with players: oklopol and oklofok.
01:47:13 <oklopol> @move 0
01:47:13 <inf-anf-oh> oklopol succesfully added a piece.
01:47:18 -!- oklopol has changed nick to oklofok.
01:47:25 <oklofok> @move <1 10>
01:47:26 <inf-anf-oh> oklofok succesfully added a piece.
01:47:30 -!- oklofok has changed nick to oklopol.
01:47:35 <oklopol> @move 1
01:47:35 <inf-anf-oh> oklopol succesfully added a piece.
01:47:53 -!- oklopol has changed nick to oklofok.
01:47:58 <oklofok> @move <100 43>
01:47:58 <inf-anf-oh> oklofok succesfully added a piece.
01:48:03 -!- oklofok has changed nick to oklopol.
01:48:07 <oklopol> @move 2
01:48:08 <inf-anf-oh> oklopol succesfully added a piece.
01:48:27 -!- oklopol has changed nick to oklofok.
01:48:33 <oklofok> @move <32434 22332>
01:48:41 <oklofok> please don't crash :D
01:48:52 <oklofok> shit...
01:48:54 <oklofok> i'm an idiot
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:34 <oklofok> okay, three in a row
01:49:35 <oklofok> @join
01:49:35 <inf-anf-oh> oklofok joined the game.
01:49:37 -!- oklofok has changed nick to oklopol.
01:49:39 <oklopol> @join
01:49:40 <inf-anf-oh> oklopol joined the game.
01:49:46 -!- oklopol has changed nick to oklofok.
01:49:49 <oklofok> @start 2
01:49:51 <inf-anf-oh> Starting game with players: oklofok and oklopol.
01:49:53 <oklofok> @move 0
01:49:54 <inf-anf-oh> oklofok succesfully added a piece.
01:50:08 <SimonRC> zzzzzzzzzzzzzzzzz
01:50:10 -!- oklofok has changed nick to oklopol.
01:50:29 <oklopol> @move <2 23>
01:50:30 <inf-anf-oh> oklopol succesfully added a piece.
01:50:37 <oklopol> SimonRC: wanna help?
01:50:43 <oklopol> i need you to make a few random moves
01:50:44 <oklopol> well
01:50:48 <oklopol> i guess i can just do it like this
01:50:55 -!- oklopol has changed nick to oklofok.
01:50:59 <oklofok> @move 1
01:50:59 <inf-anf-oh> oklofok succesfully added a piece.
01:51:06 -!- oklofok has changed nick to oklopol.
01:51:13 <oklopol> @move <223 433>
01:51:13 <inf-anf-oh> oklopol succesfully added a piece.
01:51:28 -!- oklopol has changed nick to oklofok.
01:51:31 <oklofok> @move 2
01:51:31 <inf-anf-oh> oklofok won the game with 0, 1, 2.
01:51:37 <oklofok> okay, that's more like it
01:51:40 <oklofok> @end
01:51:40 <inf-anf-oh> Ending current game.
01:51:43 -!- oklofok has changed nick to oklopol.
01:51:48 <oklopol> SimonRC: wanna play?
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:15 <oklopol> @start 2
01:53:20 <oklopol> @join
01:53:21 <inf-anf-oh> oklopol joined the game.
01:53:37 -!- oklopol has changed nick to oklofok.
01:53:38 <oklofok> @join
01:53:39 <inf-anf-oh> oklofok joined the game.
01:53:40 <oklofok> @start 2
01:53:40 <inf-anf-oh> Starting game with players: oklopol and oklofok.
01:53:43 -!- oklofok has changed nick to oklopol.
01:53:51 <oklopol> @move <100 50>
01:53:51 <inf-anf-oh> oklopol succesfully added a piece.
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:04 <oklopol> well thazz just rude! :D
02:00:12 <Sgeo> What's this game?
02:00:23 <oklopol> infinite dimensional tic-tac-toe
02:00:35 <oklopol> it's easy and fun!
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:00:59 <oklopol> basically
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:03 <RodgerTheGreat> I have a hideous idea
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:15:01 <RodgerTheGreat> there's even simple fluid simulation built in
05:17:34 <Slereah_> I'd love to, but my computer is fucking slow for some reason
05:17:55 <RodgerTheGreat> ah. dang.
05:19:02 <Slereah_> Ah, it seems to pick up
05:19:06 <Slereah_> After closing most programs
05:20:27 <Slereah_> Hm.
05:20:32 <Slereah_> I'd better reboot.
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:34 * pikhq <3 Phun, BTW.
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:42:41 <Slereah> I run the linux right now
05:42:45 <Slereah> For when I say no work
05:42:45 <pikhq> Ah.
05:42:50 <Slereah> I'm not kidding
05:42:52 <Slereah> Litteraly
05:42:54 <pikhq> Ah.
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:42 <slereah_> Anyone knows what it means?
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:07:59 <RodgerTheGreat> oklopol: this is gonna be awesome. :D
16:17:29 -!- Slereah has joined.
16:26:44 -!- mikemorg has joined.
16:27:49 <mikemorg> hello
16:27:58 <Slereah> hi.
16:28:24 <mikemorg> anybody here for business
16:29:03 <Slereah> What sort of business would be done with esolangs.
16:29:25 <mikemorg> hacking bizz
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:30:34 <slereah_> As opposed to square money?
16:31:05 <mikemorg> yah
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:32:55 <oklopol> a
16:32:57 <oklopol> |-b
16:32:58 <oklopol> c
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:10 <RodgerTheGreat> lemme see if I can make one that works
16:34:15 <mikemorg> so what can u do
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:03 <slereah_> And bright colors?
16:36:09 <slereah_> Or colours, if you're British.
16:36:20 <oklopol> money?
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:38:25 <oklopol> #money
16:38:41 <slereah_> Oh oklopol, you minx.
16:38:47 <oklopol> #richhackerbitches
16:39:08 <mikemorg> thanks man
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:39:50 <oklopol> so it'd have taken ages
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:28 <oklopol> umm... yes!
16:40:42 <slereah_> I once made a NOR gate out of socks and vaseline.
16:43:25 <RodgerTheGreat> oklopol: I have a simple version working
16:43:26 -!- kar8nga has joined.
16:43:48 <slereah_> Hello.
16:43:53 <mikemorg> pls i need a very good php maila pls help
16:45:50 <mikemorg> helo
16:45:59 <mikemorg> any one here
16:46:16 <slereah_> No.
16:46:25 <oklopol> RodgerTheGreat: are you able to build on that?
16:46:25 <mikemorg> lol
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:08 <oklopol> and use them as input
16:47:22 <oklopol> output comes out at the bottom
16:47:25 <slereah_> Can you just urinate in your computer?
16:47:35 <RodgerTheGreat> oklopol: http://rodger.nonlogic.org/files/trans1.phn
16:47:40 <oklopol> slereah_: different kind of liquid
16:47:44 <RodgerTheGreat> I don't know yet-
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:24 <oklopol> does it have to drain?
16:48:29 <RodgerTheGreat> the main trick I discovered involved reducing the density of the "control rod"
16:48:32 <oklopol> hmm
16:48:34 <RodgerTheGreat> oklopol: mine doesn't
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:51:12 <mikemorg> hello ehird
16:51:18 <ehird> hello mikemorg
16:51:34 <mikemorg> how are u doing
16:52:23 <ehird> fine thx. r u redy for the bank hack?
16:52:41 <mikemorg> sure
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:53:58 <ehird> mikemorg: yes
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 <oklopol> he can
16:55:21 <ehird> oklopol: hahaha. shut up, you know this is the hacking channel :))
16:55:24 <oklopol> don't worry
16:55:29 <oklopol> ehird: sure :)
16:55:34 <ehird> mikemorg: yes, i can
16:55:36 <oklopol> just yanking ya
16:56:18 <ehird> mikemorg: what is the business?
16:56:51 <mikemorg> o
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:05 <ehird> mikemorg: okay
16:58:56 <mikemorg> then i cash the money and send u ur share
16:59:14 <ehird> mikemorg: what is the share
16:59:40 <mikemorg> it depend on the amounth
17:00:05 <ehird> mikemorg: what amount do you wish
17:01:16 <mikemorg> i dont know yet
17:01:28 <ehird> mikemorg: i can get any amont
17:01:47 <mikemorg> which bank login do u have for now
17:01:58 <ehird> mikemorg: most
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:19 <ehird> mikemorg: most
17:06:26 <ehird> i am one of the top hackers on irc
17:07:25 <mikemorg> ok
17:07:52 <mikemorg> can u tell me my location and ip
17:08:16 <ehird> mikemorg: i did that yesterday!
17:09:00 <mikemorg> oh i just remember u now
17:09:00 <ehird> mikemorg: but fine
17:09:03 <ehird> your ip is 82.128.35.249
17:09:04 <mikemorg> sorry
17:09:18 <ehird> and still nigeria, it seems
17:09:50 <mikemorg> ok
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:04 <mikemorg> be specific
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:12:49 <mikemorg> ok
17:13:09 <mikemorg> can u help me with a php maila
17:13:13 <ehird> mikemorg: yes
17:14:11 <mikemorg> pls i need a php maila and email addesses pls help me
17:15:38 <mikemorg> ehird are u still there
17:15:45 <ehird> mikemorg: yes
17:15:55 <ehird> mikemorg: what mail address is the dynamic used
17:16:55 <mikemorg> i need usa email
17:17:41 <ehird> mikemorg: ok
17:17:43 <ehird> mikemorg: what do you wish
17:18:28 <mikemorg> i dont understand
17:18:28 -!- Corun has joined.
17:19:07 <ehird> mikemorg: the email
17:19:45 <mikemorg> any one
17:19:58 <ehird> mikemorg: what is the request
17:20:36 <ehird> mikemorg: o i c
17:20:39 <ehird> mikemorg: you want a php maila
17:20:50 <ehird> mikemorg: right
17:20:59 <mikemorg> yah
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:26:55 <mikemorg> can u give me another one
17:28:04 <ehird> mikemorg: why that one is the best
17:29:21 <ehird> mikemorg: but OK
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:48 <ehird> mikemorg: ahh
17:32:51 <ehird> your isp is blocking it
17:33:18 <mikemorg> ok
17:33:40 <ehird> mikemorg: to access them you will have to switch isp
17:34:11 <mikemorg> ho can i do that
17:34:28 <ehird> mikemorg: you will have to buy a new internet package
17:34:30 <ehird> its the only way ...
17:35:22 <mikemorg> can u give me a proxy to use
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:40:42 <ehird> mikemorg: what is
17:48:11 <mikemorg> can u transfer money into a cradit card
17:50:11 <mikemorg> hello ehird
17:55:26 -!- mkemoor has joined.
17:56:25 <mkemoor> hello
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:00:19 <ehird> now fuck off
18:01:15 <Slereah> :D
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:53 <ehird> AND SO DO I
18:02:56 <ehird> A FULL COMMITMENTS WHAT I'M THINKING OF
18:03:00 <ehird> YOU WOULDN'T GET THIS FROM
18:03:01 <ehird> ANY OTHER GUY
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:03:40 <ehird> AND HURT YOU
18:03:44 <oerjan> oh dear
18:03:53 <mkemoor> ok
18:04:03 <Slereah> Then my mom got scared.
18:04:20 <mkemoor> lol
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:05:04 <mkemoor> i think i like u
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:06 <oerjan> gah
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:18:13 <Slereah> brb, sum reboot.
18:18:32 <oerjan> no egobot
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:11 <slereah__> Hackers... On steroids!
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:03 <ehird> (Tired of him.)
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:31:43 <mkemoor> u too
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:32:37 <ehird> goodbye
18:34:40 -!- mkemoor has quit.
18:35:20 <RodgerTheGreat> augh
18:35:23 <RodgerTheGreat> goddamnit dude
18:35:58 <RodgerTheGreat> you ruined a huge chunk of my afternoon entertainment
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:37:44 <ehird> no fun at all
18:38:03 <RodgerTheGreat> slereah__: "why don't you just have a seat"
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:04:24 <oerjan> on infinite output?
19:08:25 <oklopol> ah
19:08:27 <oklopol> then no
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
20:56:05 <RodgerTheGreat> :/
21:09:32 <oklopol> mars=
21:09:33 <oklopol> ?
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:17:36 <oklopol> if you cook correctly?
21:18:15 <oklopol> hmm who is landing?
21:18:23 <oklopol> IS IT THE ASIANS?!?!?!?
21:18:47 <oerjan> the americans
21:19:44 <ehird> oklopol: INFd5iar!
21:19:48 <oerjan> or specifically, their probe
21:20:05 <oklopol> ehird: ...you wanna play?
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:17 <oklopol> :)
21:21:18 <ehird> and have keycombos that switcheroo around them
21:21:18 <oklopol> well
21:21:44 <oklopol> it might already be helpful to plot the generator lists on a 2d graph.
21:21:45 <oklopol> i mean
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:04 <ehird> even ascii art.
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:22:29 <oklopol> got it?
21:22:35 <oklopol> that's trivial to do ofc
21:23:05 <ehird> oklopol: I dunno. Just write it and let me see. :P
21:23:29 <oklopol> !
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:24:23 <ehird> :D
21:28:09 <ehird> oklopol: :DDD
21:28:44 <oklopol> ehird: :DDDDDDDDDDDDDDDD:D:D:D:D:D:D:DDDDDDDDDDD:D
21:28:50 <ehird> oklopol: :DD
21:29:33 <ehird> oklopol: should i develop tinygame some more
21:29:37 <ehird> so it's fast and has cool stuff.
21:29:39 <ehird> like .. FONTS
21:31:20 -!- RedDak has joined.
21:36:13 <ehird> oklopol: :D
21:39:11 <ehird> oklopol: oi
21:40:15 <oerjan> okokokoko
21:40:26 -!- timotiis has joined.
21:40:54 <ehird> oerjan: okokokokokokokokokokokokokokokokokokokokoko
21:41:01 <oerjan> oko
21:41:11 <ehird> o
21:41:15 <oerjan> okokoko
21:41:20 <ehird> oerjan: no
21:41:22 <ehird> we want an o tower
21:41:24 <ehird> o
21:41:27 <oerjan> oko
21:41:34 <ehird> okoko
21:41:37 <oerjan> okokoko
21:41:39 <ehird> okokoko
21:41:41 <ehird> fuck
21:41:42 <ehird> o
21:41:49 <oerjan> oko
21:41:52 <oerjan> okoko
21:41:55 <ehird> okokoko
21:41:58 <oerjan> okokokoko
21:41:59 <ehird> okokokokoko
21:42:16 <oerjan> okokokokokoko
21:42:20 <ehird> okokokokokokoko
21:42:26 <oerjan> okokokokokokokoko
21:42:30 <ehird> okokokokokokokokoko
21:42:34 <oerjan> okokokokokokokokokoko
21:42:42 <ehird> okokokokokokokokokokoko
21:42:46 <oerjan> okokokokokokokokokokoko
21:42:50 <ehird> okokokokokokokokokokoko
21:43:00 <ehird> okokokokokokokokoko
21:43:06 <ehird> Fuck.
21:43:06 <oerjan> okokokokokokoko
21:43:09 <ehird> oko
21:43:10 <ehird> o
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:05 <ehird> with bots
21:44:21 <ehird> oklopol: approval?
21:44:37 -!- kar8nga has left (?).
21:46:04 <oklopol> whaaa
21:46:08 <oklopol> okokokokokoko
21:46:41 <oklopol> ehird: sounds good :D
21:46:56 <ehird> oklopol: yeah, you'll be able to write whole oko plays
21:46:59 <ehird> just towers of oo
21:47:01 <ehird> oko
21:47:42 <ehird> oklopol: it'll have a mini language
21:47:43 <ehird> :D
21:48:09 <ehird> oklopol: for example
21:48:13 <ehird> to wait from 2 to 5 seconds
21:48:15 <ehird> w2-5
21:49:30 <ehird> oklopol: oh oh oh!
21:49:34 <ehird> and a way to select RANDOM OKOS
21:49:37 <ehird> specifically
21:49:44 <ehird> ?...!
21:49:46 <ehird> in ...
21:49:47 <ehird> you hvae {...}
21:49:48 <ehird> as a choice
21:49:49 <ehird> so
21:49:56 <ehird> actually wait
21:49:58 <ehird> just ? - 1
21:49:58 <ehird> err
21:49:59 <ehird> !
21:49:59 <ehird> so
21:50:01 <ehird> like
21:50:05 <ehird> ?
21:50:07 <ehird> abc
21:50:09 <ehird> ?
21:50:11 <ehird> def
21:50:13 <ehird> !
21:50:15 <ehird> :DDddddddd
21:52:26 <ehird> oklopol: I am writing the first okoperformancescript
21:54:01 <oklopol> YaycooolLLLL!!!11
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:23 <oklopol> i can hardly wait
21:55:52 <ehird> oklopol: it includes a SUPRISE
21:55:58 <ehird> brb
21:56:10 -!- inf-anf-oh has joined.
21:56:24 <oklopol> oerjan: want to battle me?
21:56:54 <ehird> wwait for me
21:56:56 <ehird> im almost back
21:56:57 <ehird> :P
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:57:21 <oklopol> anyone wanna investigate?
21:57:27 <oklopol> WE'LL ALL PLAY
21:57:29 <oklopol> @join
21:57:29 <inf-anf-oh> oklopol joined the game.
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:46 <bsmntbombdood> what
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:18 <Quendus> no thanks
21:59:22 * atsampson tries to thing of a polite way of saying "bugger off"
21:59:29 * Quendus smacks oklopol
22:00:26 * olsner treats oklopol to a can of whoop-ass
22:00:32 <ehird> lmao
22:00:38 * ehird murders oklopol
22:00:40 <ehird> in his sleep.
22:00:59 <olsner> whose sleep? yours or oklopol's?
22:01:03 * Quendus throws a pragmatist at ehird
22:01:14 <ehird> Both olsner
22:01:16 <ehird> @join
22:01:16 <inf-anf-oh> ehird joined the game.
22:01:30 <Deformative> Fuck you oklopol
22:01:37 <ehird> Deformative: fuck you too
22:01:40 <ehird> nobody cares
22:01:41 <ehird> :)
22:01:43 <Deformative> :P
22:02:43 <ehird> oklopol: damn my oko-utterance-er rocks
22:02:53 <ehird> it's being fun to write!
22:06:37 <ehird> @start 2
22:06:37 <inf-anf-oh> Starting game with players: oklopol and ehird.
22:07:29 <oklopol> OMG
22:07:33 <oklopol> @move 1 2 3 4 5
22:07:34 <inf-anf-oh> oklopol succesfully added a piece.
22:08:10 <ehird> @move 1 2 3 4 6
22:08:10 <inf-anf-oh> ehird succesfully added a piece.
22:08:31 <oklopol> omg
22:08:45 <oklopol> @move 1 2 3 3 4
22:08:45 <inf-anf-oh> oklopol succesfully added a piece.
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:47:39 <ehird> for OKOTTERENCES
22:48:47 <ehird> oklopol:
22:49:00 <ehird> ok.
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").
22:56:49 <ehird> lose.r
23:17:21 -!- ehird has changed nick to ehird_.
23:23:20 -!- ehird_ has changed nick to ehird.
23:23:26 <ehird> o
23:23:27 <ehird> so
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:04 <oko> o
23:37:05 <kok> oko
23:37:07 <oko> okoko
23:37:08 <kok> okokoko
23:37:10 <oko> okokokoko
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:19 <oko> fuck
23:37:22 <oko> sorry
23:37:25 <oko> try again?
23:37:29 <kok> ok
23:37:32 <oko> o
23:37:32 <kok> oko
23:37:35 <oko> okoko
23:37:35 <kok> okokoko
23:37:38 <oko> okokokoko
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:37:55 <kok> okokokoko
23:37:56 <oko> okokoko
23:37:58 <kok> okoko
23:37:58 <oko> oko
23:38:01 <kok> o
23:38:03 <oko> awesome!!!!
23:38:06 <kok> haha, yeah
23:38:10 <kok> well, guess that's all
23:38:13 <oko> yeah...
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:38:48 <oklopol> i like it
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:39:47 <oklopol> i read it :)
23:41:59 <oklopol> hmm
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:44 <oklopol> or just more cmds
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:16 <ehird> lemme fix
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:44:39 <oklopol> i see, i see
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:42 <ehird> <guy> me!!!
23:47:46 <ehird> <bot> ok, guy, are you sure?
23:47:47 <ehird> <guy> yes
23:47:52 <ehird> <bot> ok. here is an X, guy
23:47:53 <ehird> (later)
23:47:56 <ehird> <bot> are you ready guy??
23:47:57 <ehird> etc
23:48:33 -!- olsner has quit ("Leaving").
2008-05-26
00:11:14 <ehird> oklopol: So
00:11:17 <ehird> infd5iar
00:11:17 <ehird> now
00:11:40 <oklopol> no, now sleep
00:11:51 <oklopol> @end
00:11:51 <inf-anf-oh> Ending current game.
00:12:03 <ehird> oklopol: lies
00:17:28 <ihope> Hmm, who's this inf-anf-oh?
00:20:03 <ehird> ihope: A bawt.
00:20:05 <ehird> @join
00:20:05 <inf-anf-oh> ehird joined the game.
00:20:12 <ehird> ihope: @join-er-ate it.
00:20:34 <ihope> @join
00:20:34 <inf-anf-oh> ihope joined the game.
00:20:39 <ihope> @start
00:20:39 <inf-anf-oh> Number of players not an integer greater than one.
00:20:45 <ehird> @start 2
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:20:53 <ehird> @move 1 2 3 4 5
00:20:53 <inf-anf-oh> ehird succesfully added a piece.
00:21:01 <ihope> Oof.
00:21:02 <ehird> ihope: Basically, any finite length list of co-ords is cyclec.
00:21:04 <ehird> *cycled
00:21:08 <ihope> @move 1 2 3 4
00:21:08 <inf-anf-oh> ihope succesfully added a piece.
00:21:10 <ehird> ihope: And you have two speshul syntaxes:
00:21:13 <ehird> <a b> range
00:21:17 <ehird> <a b c> range with c as step
00:21:18 <ehird> and one more
00:21:21 <ehird> [a b c]
00:21:25 <ehird> 'for each thing named a in b'
00:21:26 <ehird> 'do c'
00:21:27 <ehird> so
00:21:34 <ehird> [a <1 50> {5 a}]
00:21:37 <ehird> ihope: goes
00:21:45 <ehird> {5 1 5 2 5 3 .. 5 50 5 1}
00:21:47 <ehird> ihope: etc
00:21:52 <ehird> @move 1 2 3 4 6
00:21:52 <inf-anf-oh> ehird succesfully added a piece.
00:21:55 <ihope> Interesting.
00:22:00 <ihope> @mvoe 1 2 3 4 7
00:22:05 <ihope> @movee 1 2 3 4 7
00:22:08 <ehird> ihope: er, when I said tic tac toe
00:22:10 <ehird> I meant five in a row
00:22:12 <ihope> @move 1 2 3 4 7
00:22:12 <inf-anf-oh> ihope succesfully added a piece.
00:22:23 <ehird> @move 1 2 3 5 6
00:22:23 <inf-anf-oh> ehird succesfully added a piece.
00:22:31 <ihope> @move 1
00:22:31 <inf-anf-oh> ihope succesfully added a piece.
00:22:40 <ehird> @move 1 2 3 3 6
00:22:40 <inf-anf-oh> ehird succesfully added a piece.
00:23:08 <ehird> ihope: yer turn
00:23:11 <ihope> @move [a <1 50> [b <1 50> {a b}]]
00:23:17 <inf-anf-oh> ihope succesfully added a piece.
00:23:28 <ehird> @move 1 2 3 1 6
00:23:28 <inf-anf-oh> ehird succesfully added a piece.
00:23:36 <ehird> oshit
00:23:40 <ehird> i'm not actually doing 5 in a row here
00:23:40 <ehird> am i
00:23:47 <ihope> Mm, I have to go.
00:23:54 <ihope> I have no idea. :-P
00:24:00 <ehird> ihope: DUN GO
00:24:01 <ehird> :<
00:24:27 <ihope> I have homework.
00:24:57 <ehird> Fine.
00:24:57 <ehird> :P
00:24:58 <ehird> @end
00:24:59 <inf-anf-oh> Ending current game.
00:25:02 <ehird> ihope: It's oklopol's btw.
00:25:15 <ihope> Cool.
00:41:54 <ehird> so.
00:41:55 <ehird> butter.
00:51:44 -!- UnrelatedToQaz has joined.
00:52:51 <ehird> UnrelatedToQaz: BECOME QAZ
00:52:53 -!- ehird has changed nick to Qaz.
00:52:55 <Qaz> D'aww.
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:36 <UnrelatedToQaz> Or have I missed something
00:53:38 <UnrelatedToQaz> ?
00:53:40 <ehird> UnrelatedToQaz: Probably.
00:53:41 <ehird> Fix it.
00:53:48 <ehird> UnrelatedToQaz: Also, Qaz is used on one place: wikipedia
00:53:49 <ehird> That sux
00:53:49 <ehird> :<
00:53:58 <ehird> I want that name.
00:53:58 <ehird> Haha.
00:54:01 <UnrelatedToQaz> ehird: Well, I wouldn't know.
00:54:05 <UnrelatedToQaz> I'm totally unrelated.
00:54:16 <ehird> UnrelatedToQaz: Are you the wikipedia qaz?
00:54:18 <ehird> I say yes. :P
00:54:27 <UnrelatedToQaz> No.
00:54:29 <UnrelatedToQaz> I'm totally unrelated.
00:54:36 <ehird> UnrelatedToQaz: Apart from making a joke out of your nick.
00:54:42 <UnrelatedToQaz> I'm the wikipedia IslandHopper973.
00:54:51 <UnrelatedToQaz> Damn...my secret identity...
00:54:53 <UnrelatedToQaz> NOOOO
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:19 <Qaz> :(
00:57:22 <UnrelatedToQaz> Weren't you Qaz before?
00:57:31 <Qaz> UnrelatedToQaz: Yes, but it was registered.
00:57:48 * UnrelatedToQaz is enlightened
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:34 <UnrelatedToQaz> There we go.
00:58:41 <UnrelatedToQaz> Just gonna check if it's worked...
00:58:43 -!- UnrelatedToQaz has left (?).
00:58:47 -!- UnrelatedToQaz has joined.
00:58:56 <UnrelatedToQaz> Yep, it's good.
01:01:43 -!- Qaz has set topic: UnrelatedtoaxqzUnrelatedtoaxqzUnrelatedtoaxqzUnrelatedtoaxqz http://tunes.org/~nef/logs/esoteric.
01:01:47 -!- Qaz has changed nick to ehird.
01:04:38 <UnrelatedToQaz> who's axqz?
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:07:35 <UnrelatedToQaz> ehird: ...
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:13:08 <UnrelatedToQaz> That done...
01:13:21 <UnrelatedToQaz> Well, it's getting late.
01:13:29 <UnrelatedToQaz> (1.13am, by my clock)
01:13:36 <UnrelatedToQaz> so I had better get to bed.
01:13:47 <UnrelatedToQaz> Using a warm fuzzy thing as a pillow of course
01:13:54 <UnrelatedToQaz> (lovely haskell)
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:30 <ehird> Bye for today :-)
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.
02:14:08 * oklopol congratulates himself
02:15:41 <Slereah> HUB
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:34 <oklopol> description?
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:00 <oklopol> well sure
03:13:02 <oklopol> hmm
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:38:27 <Slereah> Hello sirs
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:25 <Slereah> Fuck.
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:37:30 <AnMaster> oklopol, and what is that?
11:38:58 <oklopol> the great thing about this channel is i can explain anything as many times as i like :D
11:39:27 <oklopol> AnMaster: it's
11:39:29 <oklopol> @end
11:39:30 <inf-anf-oh> Ending current game.
11:39:33 <oklopol> @join
11:39:33 <inf-anf-oh> oklopol joined the game.
11:40:19 <AnMaster> hm?
11:41:48 <oklopol> well you gotta join, don't you?
11:43:56 <AnMaster> no time
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:30 <oklopol> was just wondering
11:44:37 <oklopol> when you add a piece
11:44:46 <AnMaster> *blink*
11:44:49 <oklopol> it is automatically "next to" infinity pieces
11:45:00 <AnMaster> pieces?
11:45:03 <AnMaster> of what?
11:45:04 <oklopol> so i'm pretty sure the game is trivial.
11:45:10 <oklopol> AnMaster: it's 5-in-a-row
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:53 <oklopol> hmm...
11:45:55 <AnMaster> oh, tic-tac-toe or whatever that name is in English?
11:45:56 <oklopol> now that i think of it
11:46:20 <AnMaster> or maybe Othello?
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:00 <oklopol> no
11:47:12 <AnMaster> ok not like Othello then
11:47:18 <oklopol> umm
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:07 <oklopol> AnMaster: well
11:48:17 <oklopol> you usually play 5iar on
11:48:19 <AnMaster> (so esoteric involving complex numbers with a very simple game like that, hehehe)
11:48:23 <oklopol> the (Int, Int) plane
11:49:15 <AnMaster> aye, a Cartesian coordinate system
11:49:26 <AnMaster> with whole numbers only
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:09 <oklopol> well n is a 2-tuple ofc
11:50:22 <AnMaster> you mean, in a row
11:50:25 <oklopol> well 2d vector really, addition is mapped over axis ofc
11:50:26 <AnMaster> :P
11:50:34 <oklopol> what?
11:50:39 <oklopol> "you mean, in a row"?
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:04 <AnMaster> oh, you mean at 3.1415 too?
11:52:17 <AnMaster> x=pi y=2e
11:52:20 <oklopol> AnMaster: yes
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:30 <AnMaster> oh my
11:52:35 <oklopol> except (0,0)
11:52:42 <AnMaster> oklopol, why not 0,0?
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:14 <oklopol> inf is not a number
11:53:26 <AnMaster> ok I insert at (NaN,3)
11:53:29 <AnMaster> ;)
11:53:30 <oklopol> :)
11:53:40 <oklopol> well, i did specify it's just *reals*
11:53:41 <oklopol> well
11:53:44 <AnMaster> ok
11:53:45 <oklopol> then i said it's anything
11:53:47 <oklopol> but just reals.
11:54:02 <AnMaster> oklopol, at exactly (pi,e) ;D
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:20 <AnMaster> hm?
11:54:43 <AnMaster> anyway irrational numbers will be fun in this
11:54:50 <oklopol> reals are innumerable
11:54:56 <AnMaster> indeed
11:55:00 <AnMaster> do you use floating point?
11:55:13 <oklopol> that's a bit too restrictive
11:55:21 <AnMaster> so what do the program use?
11:55:33 <oklopol> probably some clever number type, dunno
11:55:48 <oklopol> actually...
11:56:03 <AnMaster> 1*10^-5834^-4747583934
11:56:04 <AnMaster> :D
11:56:09 <AnMaster> or, even better
11:56:12 <AnMaster> at:
11:56:18 <AnMaster> (A(G,G),A(G,G))
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:56:35 <AnMaster> :D
11:56:53 <AnMaster> I would insert there
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:47 <oklopol> umm
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:07:48 <AnMaster> iirc
12:09:04 <Slereah_> Wot?
12:09:17 <Slereah_> Are you talking about Unary?
12:11:13 -!- jix has quit (Client Quit).
12:11:14 <AnMaster> Slereah_, err no?
12:11:18 <AnMaster> Slereah_,
12:11:19 <AnMaster> <AnMaster> (A(G,G),A(G,G))
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:15:40 <Slereah_> 5-in-a-row?
12:21:47 <AnMaster> Slereah_, something like tic-tac-toe
12:22:24 <AnMaster> but with 5 instead
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:31 <Slereah_> Oh.
12:29:55 <Slereah_> Wouldn't a Tic Tac Toe on the real plane be infinitely long?
12:30:20 <Slereah_> Or extremely short, actually
12:30:41 <Slereah_> Since you can't exhaust the way to put 5, in a row
12:30:47 <Slereah_> So the first player wins
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:48 <Slereah_> Is 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:37:55 <Slereah_> I dunno
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:53:18 <ehird> hi ais523
15:53:26 <ais523> hi ehird
15:54:14 <Slereah_> Hi.
15:54:26 <Slereah_> Would you like to make some cool money, ehird?
15:54:33 <ehird> Slereah_: Yes.
15:54:36 <ehird> Do you want help with php maila?
15:54:45 <Slereah_> I have this daring mission.
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:55:56 <Slereah_> Nah
15:56:00 <ehird> ais523: mikemorg came in here asking for hackers to do 'buziness'
15:56:01 <Slereah_> The Nigerian scammer
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:58:11 <ehird> exactly
15:58:57 <Slereah_> Is it?
15:59:21 <ehird> yes
15:59:50 <Slereah_> Is it on the real plane and all as advertised?
16:00:23 <ehird> guess so
16:01:09 <Slereah_> How would this work?
16:02:02 <ehird> Cleverly
16:02:04 <ehird> @end
16:02:08 <ehird> eh
16:02:10 <ehird> not here
16:04:33 -!- calamari has joined.
16:05:03 <ehird> hm
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:04:39 <ehird> Yes it works.
17:04:44 <RodgerTheGreat> hm
17:04:57 <RodgerTheGreat> that's some FORTRAN-quality obfuscation, right there
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:33 <RodgerTheGreat> nice
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:08:56 <RodgerTheGreat> is it possible to do "(define #t #f)" in scheme?
17:08:59 <RodgerTheGreat> gotta try it now
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:16 <RodgerTheGreat> aw, damnit
17:09:17 <ehird> besides it would be set!
17:09:21 <RodgerTheGreat> yeah, I just tried it
17:09:23 <ais523> and it actually works
17:09:37 <RodgerTheGreat> > (define #t #f)
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:09:54 <RodgerTheGreat> mzscheme, currently
17:10:24 <RodgerTheGreat> "Welcome to MzScheme v372 [3m], Copyright (c) 2004-2007 PLT Scheme Inc."
17:10:52 <ehird> yay
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:29 <ehird> link?
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:19:55 <ehird> *though
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:28 <SimonRC> about half-way through
17:20:36 <ehird> i bet it was a gripping interview
17:20:37 <ehird> like
17:20:45 <ehird> 'so, you found the smallest turing machine in wolframs notation!'
17:20:48 <ehird> 'how EXCITING'
17:20:57 <ehird> 'how do you think this will effect every day life?'
17:21:02 <ehird> 'um...er....uh...'
17:21:07 <ehird> *affect
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:29 <SimonRC> hm
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:37 <ehird> eeeek SimonRC
17:26:41 <ehird> what was that for
17:26:47 <SimonRC> I figured out the command finally
17:26:52 <ehird> oh, hah
17:26:55 <SimonRC> remeber the hacker
17:26:55 <ehird> SimonRC: you do know we have public logs
17:26:58 <ehird> see topic
17:27:16 <SimonRC> ehird: yeah, but I have logs with 1-second accuracy *and* logs of the privmsgs
17:27:26 <ehird> SimonRC: :-P
17:27:43 <SimonRC> accept or deny as you wish
17:27:59 <ehird> I did
17:29:00 <SimonRC> ok
17:31:05 <ehird> wtf SimonRC
17:31:05 <ehird> :(
17:31:37 <SimonRC> oops, wrong button
17:32:26 <SimonRC> sorry
17:32:44 -!- Judofyr has quit.
17:36:07 <ehird> Fucking hell SimonRC.
17:38:22 <SimonRC> huh?
17:38:31 <SimonRC> oh, it seems to be auto-repeating
17:39:42 <ehird> FUCK YOU WITH A RAKE SIMONRC
17:39:43 <ehird> <.<
17:39:57 <SimonRC> right, I think they should be gone now
17:40:02 <SimonRC> this was a bad idea
17:40:48 * SimonRC guesses that dcc sends pop up a modal dialog for ehird.
17:41:20 <ehird> yep, xchat
17:41:24 <ehird> well not modal
17:41:25 <ehird> but annoying
17:41:39 <SimonRC> ok
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:45:24 <SimonRC> yes
17:47:58 <ehird> ASJHKJDFHAJLSDFHAKSDJFASDF
17:48:02 <ehird> MY MOUSE IS WORKING CRAP :\
17:48:10 <Deewiant> as is your caps lock, I see
17:48:12 <SimonRC> not your keyboard
17:51:01 -!- kar8nga has joined.
17:53:16 <SimonRC> hi, mysterious person
17:55:31 <SimonRC> what order are the bytes of a 4-byte x86 word?
17:55:42 <ais523> lsB first, I think
17:55:50 <SimonRC> big-, little-, or middle-endian?
17:55:54 <ais523> little-
17:55:55 <SimonRC> ok, little
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:33 <SimonRC> great fun
17:56:39 <ais523> but does it at the 32-bit level
17:56:45 <ais523> s/32/16/
17:56:48 <SimonRC> yes
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:15 <ais523> using dpkg
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:27:28 <ehird> on debina
18:27:29 <ehird> *debian
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:34:52 <SimonRC> ais523: hm, what?
18:34:59 <SimonRC> oh, a nomic
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> HAHAHAHAH:
18:48:02 <ehird> We asked the oracle, “What would life be like without THE MONSTER?” ...and the oracle responded: “asdf”
18:49:03 <SimonRC> uh, what?
18:49:08 <ehird> SimonRC: nothing
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:06:25 <SimonRC> zzzzzzzzzzzz
23:06:37 <ais523> hello
23:07:28 <SimonRC> what part of "zzzzzzzzzzz" don't you understand?
23:07:39 <ais523> the fifth z
23:07:44 <SimonRC> It means I'm going to bed.
23:07:48 <SimonRC> :-)
23:07:50 <SimonRC> 'night
23:07:51 <ais523> I'm slightly dubious on the eigthth too
23:07:55 <ais523> 'night
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:22:59 <ehird> :)
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"").
2008-05-27
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:03:40 <tusho> Bye for today :-)
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:29:18 <Slereah_> Hello psygnisfive.
18:29:32 <psygnisfive> ::eats slereah::
18:30:18 <Slereah_> Oh noes!
18:46:17 -!- Sgeo has joined.
19:13:05 -!- jix has quit (Nick collision from services.).
19:13:15 -!- jix has joined.
19:48:05 <oklopol> glyo fuyg flom
19:51:40 <psygnisfive> are you speaking welsh?
19:51:49 <psygnisfive> ::hits oklopol with a rolled up news paper:: stop that
19:51:56 <psygnisfive> we'll have none of that welshy in here!
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:04:57 * AnMaster runs
21:05:14 <psygnisfive> i dontknow what you just said :D
21:05:36 <oklopol> swedish
21:05:41 <oklopol> why not welsh?
21:06:12 <oklopol> "why not welsh?"
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:06 <AnMaster> Finnish != Swedish
21:09:07 <psygnisfive> lol
21:09:13 <AnMaster> <psygnisfive> listen you, just because you're finnish doesnt mean you should show off and speak swedish too
21:09:13 <psygnisfive> i know this anmaster
21:09:16 <AnMaster> that made no sense
21:09:21 <psygnisfive> ofcourse it does
21:09:23 <psygnisfive> you see
21:09:24 <psygnisfive> in finland
21:09:29 <psygnisfive> swedish is like a second language
21:09:31 <AnMaster> well I'm in Sweden
21:09:40 <psygnisfive> yes, but i was talking to oklopol :P
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:11 <AnMaster> then the Russians invaded
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:10:51 <psygnisfive> i want to be oklopols sex slave
21:11:03 <oklopol> scandinavia did everything first
21:11:11 <AnMaster> :D
21:11:14 <oklopol> :o
21:11:38 <oklopol> (or perhaps a scandinavian guy would hear mostly scandinavian pioneerings?)
21:11:45 <oklopol> (nah... not possible)
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:11 <psygnisfive> how can i know what?
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:38 <AnMaster> oklopol, well no idea
21:12:41 <psygnisfive> and made rocksolid operating systems.
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:12 <AnMaster> it was just lakes and forests
21:13:21 <AnMaster> large parts still are afaik
21:13:24 <psygnisfive> and linux hackers.
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:14:41 <psygnisfive> i saw your picture on the frappr map
21:14:49 <oklopol> :o
21:14:53 <psygnisfive> you're hot and you do esolangy stuff.
21:14:56 <oklopol> :D
21:15:00 <psygnisfive> therefore i want you in me.
21:15:01 <oklopol> i gotta see my picture...
21:15:04 <psygnisfive> its not that complicated. :P
21:15:12 <oklopol> well solid explanation
21:15:21 <oklopol> but now i need to see the pic myself
21:15:28 <psygnisfive> lol
21:15:42 -!- oklopol has left (?).
21:15:42 -!- oklopol has joined.
21:16:10 <AnMaster> oklopol and psygnisfive: what genders?
21:16:21 <oklopol> g[au]y
21:16:35 <AnMaster> oh I see
21:16:37 <psygnisfive> what he said
21:16:39 <oklopol> umm, my pic is not hot :)
21:16:47 <oklopol> hmm
21:16:48 <AnMaster> well each to their own
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:16 <oklopol> :D
21:17:18 <oklopol> i tend to
21:17:27 <psygnisfive> (Psst, AnMaster, that means he's gay incase you didn't know)
21:17:34 <psygnisfive> ;P
21:18:24 <oklopol> you upset my gf :P
21:18:46 <oklopol> (well technically i did by saying that out loud)
21:19:46 <AnMaster> bisexual then k
21:19:50 <oklopol> i should take that pic off, i'm like the only one with a pic :D
21:19:50 <psygnisfive> hahahaha
21:20:02 <psygnisfive> anmaster <3you XD
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:34 <psygnisfive> or
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:20:43 <psygnisfive> ?
21:20:49 <psygnisfive> damn you structural ambiguity!
21:21:09 <oklopol> judging by my behavior on irc, i'm bi.
21:21:25 <psygnisfive> lol ok.
21:21:28 <oklopol> but really you should all know that.
21:21:30 <oklopol> :D
21:21:35 <psygnisfive> all i know is you're hot.
21:21:35 <oklopol> bsmntbombdood: orgy tomorrow?
21:21:35 * AnMaster sighs
21:21:41 <psygnisfive> and you do esolangery goodness.
21:21:46 <AnMaster> lets get over this and go on to program!
21:21:56 <psygnisfive> .,.,=45.2356.d.ddfbdg;;;sdfs'g
21:22:20 <psygnisfive> CANT TELL ITS NOT BRAINFUCK
21:22:26 <psygnisfive> or some other horrid esolang
21:22:27 <psygnisfive> :P
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:26:41 <AnMaster> /clear
21:26:41 <AnMaster> /clear
21:26:47 <oklopol> called "out" and "in"
21:26:47 <psygnisfive> HAHAHAHA
21:26:51 <oklopol> hmm...
21:27:03 <oklopol> perhaps "," and "." would've been better.
21:27:06 <psygnisfive> <3u oklopol
21:27:43 <AnMaster> >#v1&#:<-1<-1\0\_.a,@
21:27:43 <AnMaster> >2-!#v_:2\^fibre^-<
21:27:43 <AnMaster> ^:_ >$1>\#+:#$!_1^
21:27:51 <psygnisfive> for IO, there command to output is 8===D~~
21:28:12 <psygnisfive> inputting is ~~ O:
21:29:03 -!- Iskr has quit ("Leaving").
21:29:35 <psygnisfive> too gay for iskr
21:32:39 <oklopol> i've seen gayer
21:32:54 <psygnisfive> hm
21:32:56 <psygnisfive> ok
21:33:06 <psygnisfive> ::bends oklopol over and ...::
21:33:10 <psygnisfive> ;P
21:33:16 <psygnisfive> XD
21:35:57 -!- timotiis has joined.
21:36:05 <oklopol> hot stuff
21:36:26 <psygnisfive> hey, we got a new kid
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:36:56 <timotiis> several months, in fact
21:37:04 <psygnisfive> oklopol: how do you know i dont like older men, huh?
21:37:09 <psygnisfive> MAYBE I'M INTO THAT SORT OF THING
21:37:15 <psygnisfive> ageist.
21:37:18 <oklopol> psygnisfive <gay >code :D
21:37:31 <psygnisfive> what? lol
21:38:03 <oklopol> no just be yourself
21:38:07 <oklopol> j/k
21:38:10 <psygnisfive> i dont know what you're on about :D
21:38:16 <oklopol> oh?
21:38:21 <oklopol> well you figure that out on your own
21:39:09 <oklopol> oh
21:39:18 <oklopol> sorry, i'm a bit slow as i'm being talked to and trying to listen
21:39:24 <oklopol> i meant
21:39:38 <oklopol> timotiis is way older an idler here
21:39:45 <oklopol> as he said right after me
21:39:50 <oklopol> except more clearly
21:40:20 <psygnisfive> you mean he's been hanging out here for a while?
21:40:20 <psygnisfive> ok?
21:40:25 <timotiis> yep
21:40:26 <timotiis> basically
21:40:26 <psygnisfive> hows that relevant? lol
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:40:51 <psygnisfive> new kid as in wasnt just here :P
21:41:02 <oklopol> ah
21:41:04 <timotiis> hmm
21:41:06 <timotiis> dubious
21:41:13 <timotiis> I suppose you can get away with it for now
21:41:19 <psygnisfive> ok
21:41:27 <psygnisfive> but are you joining the gaysexorgyfest or not
21:41:37 <oklopol> :)
21:41:43 <timotiis> no, I think not
21:41:47 <oklopol> bsmntbombdood is your best bet.
21:41:49 <psygnisfive> your loss
21:41:51 <oklopol> i think.
21:42:05 <psygnisfive> actually slereah is my best bet :P
21:42:11 <oklopol> how so?
21:42:21 <psygnisfive> Slereah_!
21:42:56 <psygnisfive> i guess hes not around
21:43:03 <timotiis> Also, what language is the topic in now?
21:43:08 <oklopol> :D
21:43:24 <timotiis> fi
21:43:24 <oklopol> i have lots
21:43:48 <psygnisfive> we should put the topic in Piet
21:44:22 <oklopol> timotiis: you supply the language, we supply the gay.
21:44:36 <timotiis> haha
21:44:39 <oklopol> :DD
21:45:48 <oklopol> i made infer the other day
21:46:06 <oklopol> for playing infinite dimensional five-in-a-row
21:46:08 <timotiis> nice
21:46:09 <oklopol> Infer
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)).
2008-05-28
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:40:06 <Slereah_> fffffffffffffffffffffffffff
03:43:15 -!- atsampson has quit (Read error: 110 (Connection timed out)).
03:45:41 <augur> ffffffffffffffffffffff
04:15:00 <bsmntbombdood> oklopol: sure where?
04:15:27 <augur> in his ASS
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:54:47 <bsmntbombdood> augur: sorry, prefer it the other way around
05:55:14 <augur> him in your ass? well whatever
05:55:18 -!- GreaseMonkey has joined.
05:56:35 <CakeProphet> loooool
05:56:36 <CakeProphet> wat?
05:57:38 <CakeProphet> wtf is going on here
05:57:41 <CakeProphet> you better explain
05:57:45 <CakeProphet> or I will be FURIOUS.
05:58:44 <augur> buttsex.
06:01:09 -!- Dewi has joined.
06:03:46 <olsner> *surprise* buttsecks?
06:07:27 <augur> yes, buttsecks
06:07:33 <augur> in the butt
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:56:57 <augur> lolol
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.
19:59:42 <augur> oh dont mind him
19:59:43 <augur> hes just french
20:01:53 <oerjan> Fetchez la vache!
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:04:54 <Slereah> That was lame.
20:05:04 <Slereah> Fuck, my head hurts now
20:05:11 <Judofyr> half head?
20:05:12 <Slereah> 8 hours of Half Life.
20:08:37 <augur> slereah, stop being so french.
20:09:09 <Slereah> How is it French.
20:13:13 <Deewiant> ahh, the joys of ./configure on Windows.
20:13:14 <Deewiant> real 7m0.891s
20:13:14 <Deewiant> user 0m57.884s
20:13:14 <Deewiant> sys 2m12.893s
20:13:23 <Deewiant> and of course it errored out.
20:18:14 <AnMaster> <oerjan> clearly it leaves you with a half connection
20:18:16 <AnMaster> hahaha
20:18:35 <AnMaster> Deewiant, get a real OS!
20:18:38 * AnMaster runs
20:19:13 <Deewiant> as soon as it can emulate the crappy OS properly
20:19:42 <Deewiant> i.e. fully :-P
20:23:52 -!- olsner has joined.
20:26:08 <Deewiant> yay, now it completed properly
20:26:09 <Deewiant> real 9m47.343s
20:26:09 <Deewiant> user 1m21.229s
20:26:09 <Deewiant> sys 3m21.732s
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:09:16 <ehird> :|
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:34 <ehird> wow, er.
23:17:36 <ehird> :\
23:17:46 <ehird> I was thinking more how they left me without internet for almost 2 days straight
23:17:46 <ehird> :P
23:23:38 <ehird> ZONK
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:28:42 <ehird> and lisp
23:30:02 -!- lament has set topic: (:NAME "#ethoteric" :TYPE (INTERNATIONAL-HUB (PROGRAMMING-LANGUAGETH ETHOTERIC)) :LOGTH "http://tuneth.org/~nef/logth/ethoteric").
23:30:29 <ehird> heh
23:30:35 <ehird> technically that's against freenode rules
23:30:36 <ehird> :-P
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:08 <ehird> or something.
23:39:11 <ehird> like.
23:39:14 <ehird> in a boat.
23:39:58 <oerjan> what? just going around saying quotes? who does he think he is, Oscar Wilde?
23:42:21 <ehird> oerjan: Yes
23:42:37 <ehird> Occupation: Says stuff. People quote it.
23:42:47 <ehird> Most popular quote: 'Have we got any toast?'
2008-05-29
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:31:41 <psygnisfive> eshird
00:31:43 <psygnisfive> ehird*
00:31:47 <psygnisfive> dont be such a faggot
00:32:22 <ehird> psygnisfive: Sorry. I'm such a faggotfag.
00:32:23 <ehird> ... wait
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:31:53 <psygnisfive> what?
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:33:23 <psygnisfive> yeah thats what i thought :P
01:33:40 <Core-un> :-O
01:34:07 <ehird> Core-un: are you a reference to ghc/yhc core? :P
01:34:13 <Core-un> Nope
01:34:25 <Core-un> Just people were pronouncing my nick wrong
01:34:27 <Core-un> It's CORE-UN
01:34:30 <Core-un> Not CO-RUN
01:34:32 -!- Core-un has changed nick to Corun.
01:34:38 <ehird> Corun: oh then your nick sucks
01:34:39 <ehird> Co-run.
01:34:45 <Corun> :-(
01:35:05 <psygnisfive> lol
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:36:27 <ehird> HAHAHAH
01:38:54 -!- Polar has joined.
01:40:47 <ihope> We have a #linguistics?
01:41:27 <ehird> yes.
01:41:31 <ehird> it has gay sex
01:41:32 <ehird> I checked.
01:43:28 <ehird> Bye for today :-)
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:14 <lament> damn
01:54:29 <lament> i shouldn't have mentioned #linguistics, now all the gay sex moved there instead
01:54:46 <ihope> :-P
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:23 <lament> brainfuck is one
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:30 <psygnisfive> turing machines are simple
05:57:36 <lament> true
05:57:38 <psygnisfive> impossible to use
05:57:42 <psygnisfive> but painfully simple
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:58:49 <lament> of course
05:58:55 <psygnisfive> but a tape machine is pretty simple
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
05:59:59 <psygnisfive> since obj-c IS c :)
06:02:12 <lament> compilation is a no-op, yes
06:02:22 <psygnisfive> ey?
06:05:17 <psygnisfive> deformative
06:05:48 <psygnisfive> you might want to try implementing a 5 tuple turing machine model
06:05:51 <psygnisfive> its quite simple
06:08:13 <psygnisfive> 3-state 2-symbol TMs are easy so..
06:08:21 <psygnisfive> if you can implement one, you're done.
06:08:39 <psygnisfive> i'd be willing to look at your language and see if its possible on first glance
06:09:31 <psygnisfive> er>
06:09:32 <psygnisfive> ?
06:09:35 <psygnisfive> deformative?
06:09:36 <psygnisfive> you there?
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:30:44 <Deformative> Eh.
11:31:39 <oklopol> yeah you can also compile to Ef
11:31:42 <oklopol> ...wait
11:32:13 <Deformative> Ef?
11:32:25 <oklopol> ef is my fixed-point language
11:32:36 <Deformative> Oh.
11:32:44 <Deformative> Nah, I kindof like UTM.
11:45:26 -!- Sgeo has quit (Remote closed the connection).
12:17:28 -!- Corun has joined.
12:22:47 <AnMaster> Slereah_, post machine?
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:10 <oklopol> Coolfuck
12:32:56 <Slereah_> All the other kids are doing it!
12:43:03 <oklopol> i need a secretary
12:43:20 <oklopol> d is too hard to install
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.
12:49:16 <oklopol> wut? :)
13:13:20 -!- Corun has quit ("This computer has gone to sleep").
13:25:08 <AnMaster> Slereah_, hahah
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:06 <ehird> :P
16:52:14 <oklopol> nono, i did!
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:16 <oklopol> :D
16:54:21 <oklopol> heh, sure
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:23 <ehird> zonk
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:56:39 <oklopol> :)
16:56:43 <ehird> omgz
16:56:46 <ehird> no -Serv
16:56:55 <oklopol> yeah, let's wreak havoc
16:56:59 <ehird> lets
16:57:02 <ehird> I'm gonna be ais523
16:57:03 <ehird> k?
16:57:06 <oklopol> OKAY!
16:57:07 <ehird> or ... lilo
16:57:11 <oklopol> i'm gonna be ehird!
16:58:09 -!- ais523 has joined.
16:58:14 <ehird> ais523: oh shit
16:58:17 <oklopol> speak of the devil
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:58:49 <ehird> :(
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:45 <ehird> ais523: oh, yeah
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:01:56 <oklopol> so winter
17:02:08 <ehird> sheesh
17:02:10 <BMeph> oklopol: Ah, but that wouldn't be "sporting," now, would it?
17:03:57 <oklopol> i guess it wouldn't
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:07:58 <ais523> ehird: 4, obviously
17:08:05 <ehird> ais523: OK
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:04:45 <psygnisfive> O_O
18:05:00 <ehird> O_O
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:41 <ehird> ZOOOP
19:47:45 <ehird> oklofok: infanfoh now
19:47:58 <ais523> ehird: context?
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:31 <ehird> ais523: yep
19:49:47 <ais523> and are there any rules to negate the first player's advantage?
19:51:56 <ehird> ais523: nope
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:23 <ais523> yes, exactly
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:32 <ehird> so
19:53:35 <ehird> and
19:53:38 <ehird> <a b> a to b
19:53:41 <ehird> <a b c> a to b, step c
19:53:44 <ehird> and {...} a regular list
19:53:44 <ehird> so
19:53:50 <ehird> [a <1 10> {50 a}]
19:53:58 <ehird> {50 1 50 2 50 ... 50 10 50 1 50 2 ... }
19:54:02 <ehird> (it's cyclic)
20:04:42 -!- st01k has joined.
20:07:58 <ais523> wow, there are a lot of people in here
20:08:23 <ehird> quite
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:09 <ais523> ah, yes
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:43 <AnMaster> or even C or C++
20:10:48 <AnMaster> depending on your needs
20:10:55 <AnMaster> if you are non-esoteric that is
20:10:56 <AnMaster> :P
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:39 <ehird> but eh
20:11:41 <AnMaster> ais523, same
20:11:50 <ais523> ah, that explains it then
20:12:47 <AnMaster> still have, just one more week
20:12:51 <ais523> same here
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:18:52 <AAAAAAue4njxuz> ehird: typing with one's elbows is fun!
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:05 <AAAAAAue4njxuz> :D
20:20:39 <ehird> ais523: a bit
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:28 <AnMaster> or small elbows
20:26:46 <ehird> cvkftgioufda\zc78dffgftgf8df980c
20:26:51 <ehird> ^ elbowtyping
20:26:54 <ais523> because I'm getting fed up of waiting for a feather interp to spontaneously come into existence
20:26:57 <AnMaster> tiosxd ix a trdy
20:27:00 <ehird> gcxoolio ediotglkc
20:27:03 <ehird> ^ hello world
20:27:04 <AnMaster> should say:
20:27:06 <AnMaster> this is a try
20:27:12 <AnMaster> didn't really
20:27:34 <AnMaster> ais523, feather?
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:10 <AAAAAAue4njxuz> Quendus is my nick ;>
20:28:16 <AnMaster> ehird, haha
20:28:20 <ehird> AnMaster: no really
20:28:20 <AnMaster> ais523, details!
20:28:28 <oerjan> gh nhixs i9sde hasrdr
20:28:30 <ehird> AnMaster: it even has a paradox resolution mechanism
20:28:36 <AnMaster> wowe
20:28:36 <ehird> for when you create a pime taradox
20:28:37 <AnMaster> wow*
20:28:41 <AnMaster> ais523, SPECS!!!!!!!!!!!
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:01 <ais523> ehird: well, sort of
20:29:03 <AnMaster> ais523, code example then
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:21 <ais523> let me think
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:00 <ais523> like this:
20:30:15 <oerjan> so this is a grand feather paradox?
20:30:19 <ehird> id : 'a 'a ->
20:30:27 <ais523> oerjan: it's not a paradox
20:30:35 <oerjan> whoos
20:30:36 <ais523> there's nothing paradoxical about its timetravel model
20:30:37 <oerjan> h
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:48 <ais523> OK
20:31:55 <ehird> ais523: presumably, the base language will come with a Prelude which defines that syntactical sugar
20:32:01 <ais523> yes, that's the idea
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 <ais523> okIWill
20:32:13 <ehird> it fits with smalltalky languages
20:32:19 <ehird> letsTalkLikeThis
20:32:54 <ais523> [ ^ | ^ outputStream write [^ helloWorldString ] ]
20:32:58 <AAAAAAue4njxuz> hurrahForJava
20:33:08 <AnMaster> blergh
20:33:09 <ehird> AAAAAAue4njxuz: pleaseBurnInHell
20:33:11 <ais523> isHowItWouldLookBeforeYou'dSugarisedTheParser
20:33:22 <ehird> ais523: interestingButIThinkThatYouNeedaColon
20:33:24 <AAAAAAue4njxuz> ehird: pleaseRecogniseSarcasm
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:34 <ais523> ehird: you'reWrong
20:33:38 <ais523> functionsAreCurried
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:56 <ais523> youMightNotThinkSo
20:33:58 <ehird> smalltalk-like = message passing
20:34:04 <ais523> itIsMessagePassing
20:34:16 <ais523> whyCan'tObjectOrientationBeCurried
20:34:34 <AnMaster> curried?
20:34:36 <ais523> youPassAMessageAndIfItDoesn'tHaveEnoughArgumentsItGivesYouAFunctionSoYouCanSupplyTheRest
20:34:40 <ais523> LikeHaskellDoes
20:34:53 <AnMaster> wow
20:34:59 <AnMaster> so many upper case chars
20:35:00 <AnMaster> on irc
20:35:02 <AnMaster> just wow
20:35:10 <oerjan> it's unnatural!
20:35:17 <AnMaster> yes agreed
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:38 <ais523> sugarised slightly
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:02 <ais523> you can write 2 + 2
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:28 <ehird> ais523: an idea
20:36:29 <ehird> FeatherOS
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:36:56 <ehird> :D
20:36:57 <AnMaster> oerjan, eh?
20:37:04 <ehird> ais523: also: in place kernel updates!
20:37:10 <AnMaster> ais523, ok
20:37:13 <ais523> ehird: oh, there was something I was going to ask you
20:37:18 * oerjan is a bit delayed
20:37:22 <ais523> you know Haskell has unsafePerformIO
20:37:34 <AnMaster> oerjan, oh right I see
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:40 <ais523> the boring way
20:38:43 <ais523> at least, that's for output
20:38:47 <ehird> ais523: ummmmmmm
20:38:49 <ais523> input is considerably more interesting
20:38:52 <ais523> you have to set up callbacks
20:38:53 <ehird> holyFuckingShit
20:39:03 <ehird> or
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 <AnMaster> ais523, veryUnsafe
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:49 <AnMaster> maybe?
20:40:52 <AnMaster> or
20:40:53 <ehird> ais523: anyway
20:40:57 <AnMaster> internalOnly
20:40:57 <ehird> i'd just do unsafe
20:40:59 <ais523> veryUnsafeBecome seems to fit well
20:41:01 <ehird> ask #haskell
20:41:05 <ehird> oh wit
20:41:07 <ehird> *wait
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:31 <ais523> just by the prelude
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:44 <AnMaster> rather than primitiveBecome
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:03 <ehird> ais523: um yes
20:49:05 <ehird> I just did it.
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:23 <ehird> what if xs = []?
20:50:29 <ehird> obviously, head [] is not well-typed
20:50:32 <ehird> it makes no sense
20:50:36 <ehird> head operates on _non-empty lists_
20:50:41 <ehird> ergo, the above is a type error
20:50:41 <ehird> But:
20:50:49 <ehird> myFoo xs = if xs == [] then 3 else head xs
20:50:51 <ehird> that is fine
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:02 <ais523> no, Agora
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:26 <ehird> ais523: Um no.
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:39 <ehird> values vs types
20:57:42 <ehird> you take regular, fine values
20:57:43 <ais523> yes
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:03 <ehird> err, actively
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:23 <ehird> ais523: rubbish
21:00:25 <ehird> of course not
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:57 <ehird> it was years ago.
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:08 <AnMaster> ehird, nor do I
21:21:16 <ais523> and the article was blank when I started making them
21:21:25 <AnMaster> ais523, it was blank?
21:21:26 <AnMaster> ?!
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.
21:50:35 <AnMaster> hehe
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:40:36 <oklofok> mostly directed @ ais523
23:40:54 <ehird> oklofok: beats me
23:40:58 <ehird> try it
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:41:21 <ehird> in a file
23:41:23 <ehird> and run ick on it
23:41:30 <oklofok> sounds icky
23:43:18 -!- HanDongSeong has quit ("If you're seeing this message, it's probably XChat's fault.").
2008-05-30
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:30:48 <ehird> Bye for today :-)
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:15:29 <Deformative> oklofok: D is easy to install.
01:15:53 <Deformative> oklofok: Use gdc! Not dmd.
01:15:59 <Deformative> You just click to install mingw.
01:16:02 <Deformative> Then click to install gdc.
01:16:06 <Deformative> And TADA, it works.
01:16:12 <Deformative> Dmd is a pain.
01:16:59 <Deformative> Also oklofok, GregorR made a neat tool called Dsss.
01:17:04 <Deformative> He would love to talk to you about it.
01:17:13 <Deformative> It will install everything for you.
01:17:20 <Deformative> And it is a compile utility like make.
01:47:26 <psygnisfive> OKLOFOK! :D
01:47:29 <psygnisfive> ::pounce::
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:12:49 <Deformative> oklofok: What happens when you run gdc?
11:14:03 <oklofok> By + Bdy * L
11:14:05 <oklofok> ...
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:18:58 <Deformative> Uh, gdc has a graphical installer.
11:19:18 <Deformative> http://gdcwin.sourceforge.net/
11:21:45 <Deformative> mingw has a graphical installer as well.
11:46:54 -!- timotiis has joined.
11:51:25 -!- jix has joined.
12:05:20 <oklofok> cOOl sTUFf
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:21 <ehird> halo ais523.
17:03:28 <ais523> hello ehird
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:06:38 <ehird> computers :3
17:06:51 <ehird> what did i mis
17:06:51 <ehird> s
17:06:55 <ais523> nothing
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:09 <ais523> ah
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:02 * Deformative dives into the turing tarpit.
20:17:05 -!- Judofyr has joined.
20:17:52 <ais523> Deformative: diving into tarpits is rarely a good idea
20:17:55 <ais523> are you alright?
20:18:25 <Deformative> It's fun.
20:18:47 <ais523> which tarpit in particular?
20:18:57 <Deformative> Turing.
20:19:14 <ais523> hmm... there's more than one Turing tarpit, I think
20:19:46 <Deformative> http://c2.com/cgi/wiki?TuringTarpit
20:19:55 <ehird> Deformative: he knows what a turing tarpit is.
20:21:06 <Deformative> Making a turing tarpit.'
20:21:15 <ais523> "Shouldn't UnLambdaLanguage and its ilk instead be called a ChurchQuagmire?"
20:21:34 <ehird> ais523: brilliant
20:21:42 <ehird> I love wikiwikiweb
20:22:55 <Slereah_> Schofinkel's Shinanigans
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:28 <Slereah_> But there's esolangs of LC
20:39:44 <ais523> yes, there are
20:39:51 <ais523> hmm... are Lisp/Scheme tarpits?
20:40:19 <Slereah_> Depends.
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:08 <Slereah_> Well, so does Brainfuck.
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:44:15 <Slereah_> Heh.
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:14 <psygnisfive> but it was comprehensible
20:46:24 <psygnisfive> which i so makes it a .. friendly esolang? :P
20:46:34 <Slereah_> OR WAS IT?
20:46:40 <psygnisfive> ok it wasnt friendly
20:46:55 <psygnisfive> and most people had all those damn parens
20:47:00 <psygnisfive> zomg
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:08 <Slereah_> [21:44:58] * Disconnected
20:47:11 <psygnisfive> lisp is an evil esolang! :o
20:47:14 <Slereah_> Was I saying.
20:47:24 <ais523> Slereah_: which 3 instructions?
20:47:34 <Slereah_> It's on der le wiki
20:47:51 <psygnisfive> der le wiki lol
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:47:55 <psygnisfive> oh, slereah
20:48:00 <psygnisfive> where in france are you
20:48:05 <psygnisfive> ive never asked you before
20:48:21 <Slereah_> Nantes.
20:48:43 <Slereah_> Well, Bitchanger works, that I know
20:48:50 <psygnisfive> oic
20:48:59 <Slereah_> I never tried anything more reduced
20:49:07 <psygnisfive> get me some pics of ile feydeau :o
20:49:13 <psygnisfive> like inside houses and stuff :p
20:49:18 <Slereah_> But without IO, Bitchanger is already 4 instructions.
20:49:53 <Slereah_> I do not know where Feydeau is.
20:50:00 <psygnisfive> lame
20:50:30 <psygnisfive> http://fr.wikipedia.org/wiki/Île_Feydeau
20:52:56 <Slereah_> http://c2.com/cgi/wiki?FunctionalWeenie
20:52:57 <Slereah_> Heh.
20:53:27 <Slereah_> "Most Lispers happily indulge in unclean things such as side effects, for instance."
20:53:34 <Slereah_> Side effects are good >:|
20:53:44 <psygnisfive> unless you're an haskeller
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:14 <psygnisfive> they consider it a side effect :)
20:54:16 <ehird> no they don't
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:47 <Slereah_> If it hurts, I'll scream.
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:46 <psygnisfive> me: they consider it a side effect :)
20:55:46 <psygnisfive> ehird: no they don't
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:56:36 <Slereah_> Heh.
20:56:47 <psygnisfive> oh dude i love indian food
20:56:48 <Slereah_> Am I a functional weenie? D:
20:57:03 <psygnisfive> i wish i had a lamb curry right now
20:57:05 <psygnisfive> ooooh man
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:11 <psygnisfive> what is your hello-word-in-Fugue??
20:58:22 <ais523> let me paste 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 <ehird> :)
20:59:46 <GregorR> Thai curry > Indian curry
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:05 <psygnisfive> so ais
21:02:11 <psygnisfive> what is this im listening to
21:02:20 <ehird> psygnisfive: a hello world program
21:02:26 <psygnisfive> in what language.
21:02:27 <ais523> written in Fugue
21:02:29 <ehird> fugue
21:02:30 <ais523> http://esolangs.org/wiki/Fugue
21:02:32 <psygnisfive> oh i see
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:02:56 <Slereah_> Heh.
21:03:21 <Slereah_> ais523 is the mozart of esolangs.
21:03:33 <Slereah_> Or possibly the Grozart.
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:17 <psygnisfive> and if a subset, what?
21:04:21 <ehird> HAHAHAHAA godhatesfags.com went web 2.0
21:04:22 <ehird> http://www.godhatesfags.com/
21:04:27 <ehird> or rather 1.7
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:40 <psygnisfive> God Hates Fags 2.0 (Beta)
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:29 <psygnisfive> he was the god of fugues.
21:05:38 <ais523> no
21:05:44 <ais523> I didn't have a compiler, you see
21:05:47 <ais523> it's not my language
21:05:51 <psygnisfive> :\
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:23 <psygnisfive> ehird: like what?
21:06:29 <Slereah_> I wish. It's MACHINE CODE
21:06:37 <psygnisfive> it'd be interesting to run bach's stuff through it.
21:06:46 <Slereah_> No it would not.
21:06:48 <psygnisfive> ais, have you read Gödel Escher Bach?
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:06:56 <Slereah_> It would output random junk.
21:06:58 <ais523> I like it
21:07:02 <ehird> i've read it
21:07:02 <psygnisfive> who cares!
21:07:03 <ehird> it's fun
21:07:06 <ehird> but its pseudo-scientific
21:07:14 <psygnisfive> pseudoscientific?
21:07:16 <psygnisfive> how do you figure?
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:47 <psygnisfive> ok.
21:07:49 <psygnisfive> anyway
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:07 <psygnisfive> the musical offerings
21:08:09 <psygnisfive> through Fugur
21:08:12 <psygnisfive> lets do it
21:08:13 <psygnisfive> :O
21:08:13 <psygnisfive> :P
21:08:18 <ais523> and the dialogues are excellent
21:08:20 <psygnisfive> or Art of the Fugue
21:08:29 <psygnisfive> Art of the Fugue is wonderful
21:08:32 <ehird> ais523: the last dialogue BLEW MY MIND
21:08:37 <ehird> it was on the FLOOR at the end
21:08:50 <psygnisfive> whats the last dialog?
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:37 <psygnisfive> are you serious? lol.
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:09:57 <psygnisfive> i mean to listen to ;)
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:17 <psygnisfive> oh i see.
21:10:21 <ehird> and them denying it
21:10:29 <psygnisfive> interesting.
21:10:33 <psygnisfive> you know
21:10:35 <psygnisfive> that reminds me
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:11:01 <psygnisfive> really are Ron Moore/The Writers
21:11:02 <psygnisfive> :3
21:12:09 <psygnisfive> wellnowwhat.net/transfers/Art%20of%20the%20Fugue%20(sax).mp3
21:12:19 <psygnisfive> in case you're interested in listening
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:12:55 <psygnisfive> :P
21:13:06 <ais523> is that even possible in a TC language?
21:13:19 <ehird> ais523: yes
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:07 <ehird> OH NO IT'S OERJAN
21:16:08 <ehird> EVERYBODY RUN
21:16:16 <oerjan> BRAINS..
21:16:27 <Slereah_> FUCKS
21:16:32 <psygnisfive> brainfuck?
21:16:32 <Slereah_> DDD:
21:16:39 <Slereah_> Yes.
21:16:43 <Slereah_> That was the joke.
21:16:45 <ais523> BF is probably the most-discussed esolang
21:16:50 <Slereah_> I know. I'm ashamed.
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:30 <Slereah_> VB?
21:17:35 <ehird> (I have first hand experience of this)
21:17:35 <ais523> hey, I know VB
21:17:36 <ehird> Slereah_: visual basic
21:17:38 <ais523> that doesn't mean I use it, though
21:17:45 <Slereah_> A week?
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:50 <psygnisfive> ?
21:18:53 <ais523> well, something hard like BF on the 2,3 would take a while
21:18:55 <ais523> psygnisfive: no
21:19:00 <psygnisfive> didnt thing so. ok.
21:19:10 <Slereah_> Anything on 2,3 would take a while.
21:19:17 <ais523> well, yes
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:05 <Slereah_> Indeed.
21:20:16 <Slereah_> Heh.
21:20:23 <Slereah_> Would it still be TC?
21:20:27 <ais523> yes
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:03 <Slereah_> Oh noes :o
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:36 <ais523> not particularly
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:20 <ais523> yes
21:23:22 <ehird> :P
21:23:32 <ais523> that was yes to Slereah_, by the way
21:23:56 <Slereah_> But you are still smrt
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:24:46 <Slereah_> Heh.
21:25:16 <ehird> lament did
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:28 <Slereah_> Or, to reformulate.
21:25:35 <Slereah_> INTERCAL or Brainfuck?
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:04 <ehird> ais523: okay
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:29:50 <Slereah_> You're on the interweb
21:29:50 <ais523> it's good to be home
21:29:56 <Slereah_> Your computer is plugged in.
21:30:17 <Slereah_> THE CAKE HAS BEEN KIDNAPPED BY NINJAS!
21:30:23 <Slereah_> Okay, I'll shut up now.
21:30:41 <ais523> oh, I thought you were going to spontaneously create another IRP text adventure
21:30:56 <Slereah_> It would be a bad idea.
21:31:00 <lament> hello
21:31:03 <Slereah_> I would need ideas.
21:31:03 <ehird> no, do it Slereah_!
21:31:03 <ais523> hi lament
21:31:06 <ais523> we were discussing Fugue
21:31:07 <Slereah_> Hello lament.
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:25 <Slereah_> Is LITHP a Litht prothethor?
21:32:32 <lament> protheththor.
21:32:37 <ehird> prostater
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:33:50 <Slereah_> Heh.
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:38:36 <Slereah_> ... it's a meme?
21:38:48 <ehird> it's a meme?
21:39:13 <oerjan> it gives me a deja vu
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:49 <ais523> from somewhere
21:44:55 <ais523> but I'm not sure where
21:45:14 <Slereah_> Never seen it as a meme.
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:47:10 <Slereah_> A lot REFUSE TO DIE
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:23 <AnMaster> Slereah_, like all your base
22:50:35 <ais523> For great justice.
22:50:47 <AnMaster> haha
22:50:52 -!- Slereah has joined.
22:51:04 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
22:53:10 <ehird> mudkips.
22:53:16 <ais523> what is that meme?
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:34 <ehird> it's from 4chan
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:48 <ehird> or something
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:39 <Slereah> AYB is a SA meme
22:54:43 <ehird> Slereah: 'xactly
22:54:45 <ais523> SA?
22:54:48 <ehird> ais523: Something Awful
22:54:50 <Slereah> Which is pretty much the same culture
22:54:50 <Slereah> Something Awful
22:54:52 <ehird> huge forum
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:12 <ehird> well, yeah
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:27 <Slereah> I <3 Mudkips.
22:55:42 <Slereah> 4chan was actually an offshoot of SA
22:55:48 <ehird> yes, it was
22:55:54 <ehird> but SA is slightly less depraved
22:56:00 <ehird> (slightly.)
22:56:07 <Slereah> Oh so slightly.
22:56:29 <Slereah> Plus, they do charity!
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:46 <ehird> AnMaster: OH WOW
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
22:59:51 <Slereah> I don't remember much
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:01:56 <ehird> uh, impressive
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:03:59 <ehird> Slereah: seaking
23:04:00 <ehird> slowpoke
23:04:01 <ehird> right?
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:07 <Slereah> Mostly, yeah.
23:04:08 <ais523> Seaking?
23:04:13 <Slereah> FUCK YEAH!
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:42 <ais523> that makes no sense
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:25 <Slereah> Indeed.
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:13:21 <oklopol> *nops
23:13:44 <AnMaster> huh?
23:14:11 <oklopol> i'm assuming different voices are... like different instruments?
23:15:01 <ehird> oklopol: yeah
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:25:51 <ais523> neat, isn't it?
23:26:08 -!- timotiis has quit (Read error: 110 (Connection timed out)).
23:26:47 <ehird> ah
23:26:48 <ehird> Time::Piece
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:32 <ais523> PerlNomic has it
23:27:47 <ais523> but I don't
23:27:58 <ehird> DB<5> print localtime(0)->year;
23:27:58 <ehird> 70
23:27:58 <ehird> yay
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:28:39 <ehird> and yes
23:28:42 <ehird> y2k bug lololz
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:45 <ehird> ais523: hmmm
23:29:47 <ehird> it kind of works
23:29:48 -!- Judofyr has joined.
23:29:53 <ehird> but no hibernate line?
23:29:57 <ais523> also I have bitten
23:30:04 <ehird> oh
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:12 <ehird> spot the fuckup
23:30:18 <ehird> bitflip pls.
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:24 <AnMaster> ehird, what language?
23:31:26 <ais523> ah, putting it in the print command
23:31:27 <ais523> AnMaster: Perl
23:31:28 <ehird> AnMaster: perl
23:31:29 <AnMaster> ah
23:31:30 <ais523> this is for PerlNomic
23:31:35 <ehird> ais523: it's ;
23:31:36 <ehird> should be ,
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"").
23:43:56 <ehird> beeer
23:43:56 <ehird> b
23:48:38 <ehird> back
2008-05-31
00:01:34 <ehird> So.
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:02 <ehird> Slereah: :(
00:10:03 <Slereah> I'll write it down later.
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:18:41 <ehird> wups
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:31:50 <psygnisfive> x.x
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:02 <ehird> psygnisfive: yep
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:14 <ehird> bye for today :)
01:35:17 <psygnisfive> ok lol
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:50:04 <Slereah> Heh.
11:50:06 <Slereah> Dong.
11:52:28 -!- timotiis has joined.
12:07:30 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
12:19:04 <AnMaster> ?
12:19:09 <AnMaster> Slereah, what was that about?
12:20:25 <HanDongSeong> It was about Heh, the esoteric and mysterious teachings in ancient Korea.
12:32:59 <AnMaster> hmh
12:42:46 -!- Corun has joined.
12:50:21 <Slereah> Plus, dongs.
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:43 <tusho_> THIRD TIME LUCKY???
17:19:44 -!- tusho_ has changed nick to tusho.
17:19:49 <tusho> *crash*
17:20:52 <tusho> :D
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:22 <asiekierka> Am i crazy? A Befalse/SNUSP OS?
17:22:26 <tusho> (fail@hostname)
17:22:27 <ais523> asiekierka: yes
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:45 <asiekierka> but an OS written in Befalse/SNUSP!
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:38 <ais523> but SNUSP? Seriously?
17:23:42 <tusho> my mind is blown
17:23:43 <asiekierka> yyy...yes
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:18 <asiekierka> so, yes, seriously
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:44 <asiekierka> emulate them
17:24:46 <asiekierka> haha
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:24:50 <tusho> crazy
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:21 <ais523> yes, of course
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:35 <asiekierka> so... er, is my idea weird?
17:27:39 <ais523> asiekierka: yes
17:27:39 <asiekierka> SNUSP emulator
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:07 <tusho> l
17:28:25 <asiekierka> it worked well in WireWorld
17:28:39 <asiekierka> and it was more underpowered
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:37 <asiekierka> bitwise operations
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:30:22 <ais523> tusho: yes
17:37:03 <ais523> tunnel in place
17:37:08 <ais523> http://127.0.0.1:12346/perlnomic
17:37:19 <ais523> sorry, wrong channel
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.
←2008-04 2008-05 2008-06→ ↑2008 ↑all