←2008-04-27 2008-04-28 2008-04-29→ ↑2008 ↑all
00:00:39 <evincar> ehird: Is ruby really the best language for implementing Selector? I'd suspect perl would do the trick with much less stress on your part.
00:00:48 <ehird> evincar: i don't see why.
00:00:53 <ehird> Almost all of it is done anyway.
00:00:58 <ehird> But ... why would Perl be less painful?
00:01:01 <evincar> All right.
00:01:15 <evincar> Everything could be automated with regexes.
00:01:27 <evincar> Then again, planning to implement it in C(++), I'm really one to talk.
00:01:28 <Sgeo> PSOX is processed with regexes >.>
00:02:01 <ehird> evincar: Not sanely.
00:02:07 <ehird> The parse tree I have now is nice.
00:02:17 <ehird> Sgeo: Psox psox psox psox psox psox psox psox psox psox psox ... new meme
00:02:21 <ehird> Or rather old
00:02:24 <ehird> meme.
00:02:28 <Sgeo> ehird, you mentioned PSOX in the other channel
00:02:34 <Sgeo> You reawoke the PSOX monster!
00:02:39 <SimonRC> I wonder what else is vulnerable to unicode bombs?
00:02:51 <Slereah_> Your mother.
00:03:53 <evincar> It's true.
00:04:38 <ehird> Bye for today. :)
00:04:43 <Sgeo> Byehird
00:04:57 -!- ehird has quit (Remote closed the connection).
00:07:26 -!- Slereah has joined.
00:09:29 -!- jix has quit ("CommandQ").
00:23:21 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
00:26:53 -!- AnMaster_ has joined.
00:28:19 -!- AnMaster has quit (Nick collision from services.).
00:28:21 -!- AnMaster_ has changed nick to AnMaster.
00:38:17 <evincar> Well. This died.
00:43:33 -!- SimonRC has quit ("changing to a charset that can't crash screen").
00:44:09 -!- evincar has quit ("ChatZilla 0.9.81 [Firefox 2.0.0.14/2008040413]").
01:21:01 -!- SimonRC has joined.
01:22:49 <SimonRC> right, I am now immune to the killer UTF-8 glyphs
01:56:49 -!- EgoBot has quit (Read error: 110 (Connection timed out)).
02:00:25 -!- GregorR has quit (Read error: 110 (Connection timed out)).
02:17:04 -!- sebbu has quit (Read error: 145 (Connection timed out)).
02:22:34 <lament> one of the example sentences in this online Esperanto course is "to share a wife with your neighbour". Wtf?
02:27:46 <calamari> and how do you say it?
02:32:32 <lament> Dividi edzinon kun sia najbaro.
02:32:36 <calamari> "thou shalt not covet thy neighbor's wife" Ex 20:17
02:32:42 <calamari> maybe it has something to do with that
02:34:02 <lament> to covet is one thing, to share is rather more risque
02:37:17 <calamari> according to my footnotes.. covet " find pleasure in"
02:37:46 <calamari> anyhow I think I found it online
02:37:47 <calamari> http://www.esperanto.pl/page.php?tid=102020
02:37:57 <calamari> 17 Ne deziru la domon de via proksimulo; ne deziru la edzinon de via proksimulo, nek lian sklavon, nek lian sklavinon, nek lian bovon, nek lian azenon, nek ion, kio apartenas al via proksimulo.
02:38:01 <calamari> not really the same
02:38:24 <calamari> but it does have edzinon whatever that means
02:41:01 <lament> wife
02:42:20 <lament> "najbaro" and "proksimulo" both mean "neighbour", one is a direct borrowing from English and the other is formed internally as "one who's close"
02:45:09 <calamari> are sia and via related?
03:01:50 -!- calamari has quit ("Leaving").
03:23:43 -!- pikhq has quit (Read error: 110 (Connection timed out)).
03:29:55 -!- pikhq has joined.
05:14:42 -!- pikhq has quit (Read error: 110 (Connection timed out)).
06:03:34 -!- EgoBot has joined.
06:03:46 -!- GregorR has joined.
06:23:09 -!- Sgeo has quit ("Ex-Chat").
07:08:50 <oklopol> all entries in the esolang wiki should be commented by some of the regulars here (anyone really) with comments like "basically brainfuck, but "scrubulative scrittery" is a bit original, see line 105 of spec"
07:09:24 <oklopol> i mean, often it takes me about 25 minutes to get what's happening, and when i do, i realize it was a new way to explain an old idea :P
07:24:55 <oklopol> perhaps the wiki should be grepped for original ideas, and an ideawiki should be made
07:47:47 <GregorR> "Basically just P'', but the I/O is a bit original."
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:11:23 -!- Iskr has joined.
08:22:06 -!- lament has changed nick to sauxdado.
08:30:22 -!- GreaseMonkey has joined.
08:35:44 -!- ais523 has joined.
08:37:06 -!- ais523 has quit (Client Quit).
08:45:32 -!- ais523 has joined.
09:13:12 -!- Corun has joined.
09:29:27 -!- Corun has quit ("This computer has gone to sleep").
10:03:34 -!- GreaseMonkey has quit ("Unisex.").
11:06:21 -!- 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"").
11:25:32 -!- ais523 has joined.
11:59: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"").
12:08:09 -!- ais523 has joined.
13:14:30 -!- ehird has joined.
13:14:44 <ais523> hi ehird
13:15:51 -!- ehird_ has joined.
13:15:54 -!- ehird has quit (Read error: 113 (No route to host)).
13:15:59 <ehird_> have i mentioned i hate this compute
13:16:00 <ehird_> r
13:16:08 <ais523> ehird_: possibly, I lose track
13:16:46 -!- ehird_ has quit (Read error: 113 (No route to host)).
13:17:10 <fizzie> Don't hate the computer, hate the.. uh, computation?
13:17:18 -!- ehird has joined.
13:17:24 <ehird> sigh
13:20:34 -!- ehird has quit (Read error: 113 (No route to host)).
13:21:05 -!- ehird has joined.
13:21:10 <ehird> please kill me now
13:21:22 <ehird> ais523: how many times have i disco/reco'd?
13:21:25 <ais523> ehird: how? You'll end up offline before you can see the answer
13:21:33 <ehird> ais523: ha
13:21:34 <ais523> and 4 connections, 3 disconnections
13:21:46 <ehird> wonderful
13:21:50 <ehird> let's not make that 5/4
13:22:13 <ehird> actually, ais523, I have a routine that makes crashes less likely
13:22:31 <ais523> ehird: try not writing your IRC client in Java2K
13:23:27 -!- ehird_ has joined.
13:23:33 <ehird_> ais523: disregard that
13:23:38 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
13:23:44 <ais523> ehird_: heh
13:23:59 <ehird_> okay
13:24:05 <ehird_> i'm just going to use xchat for a bit
13:24:08 <ehird_> no Epiphany, no-sir-ee
13:24:13 <ais523> ehird_: use telnet
13:24:15 <ais523> it's more reliable
13:24:21 <ehird_> so, mr. ais523, how are you today? are your cabbages moltworthy?
13:24:32 <ehird_> ais523: telnet, programmed in CLC-INTERCAL with INTERNET
13:24:33 <ais523> ehird_: not without extra definitions
13:24:44 <ehird_> ais523: interesting. is the transformation function turing-complex?
13:24:52 <ais523> ehird_: the INTERNET is needed to do the select()
13:24:57 <ais523> ehird_: no, it's uncomputable
13:25:04 <ais523> that's why I'm having so much trouble with it
13:25:09 <ais523> but it's only TC in all but a few special cases
13:25:22 <ehird_> very jolly. how about you post a link that proves it so that i can open it with my inter~web Browsemachine?
13:25:52 <ais523> ehird_: because it isn't finished yet
13:25:56 <ais523> in fact, it isn't even started
13:26:09 <ais523> I was speaking hypothetically about the cabbages
13:26:18 <ais523> not about an INTERCAL IRC client
13:26:24 <ais523> in fact, I was in two conversations with you at once
13:26:26 <ais523> you just didn't notice
13:26:28 <ehird_> ais523: you still haven't given me an interlink~web
13:26:29 <ais523> sorry
13:26:31 <ehird_> and i did notice
13:26:34 <ehird_> just .. confusingly
13:27:01 <ais523> ehird_: I don't have a link to prove it, because any statements I made recently that I might have been expected to prove are in fact false
13:27:01 <ehird_> now give me an linkweb~net
13:27:09 <ehird_> ais523: I need a link to open my browser goddamnit.
13:27:18 <ais523> http://esolangs.org
13:27:19 <ehird_> The menus are crashy.
13:27:20 <ais523> will that do?
13:27:30 <ehird_> THANK YOU
13:27:33 <ehird_> But it won't load.
13:27:34 <ehird_> :P
13:27:45 <ais523> ehird_: about:blank
13:27:49 <ais523> hmm, my client didn't link that
13:27:54 <ais523> I wonder if about://blank works?
13:28:00 <ais523> no, that wasn't linked either
13:28:05 <ais523> and probably isn't a real address
13:29:11 -!- ehird_ has quit (Read error: 104 (Connection reset by peer)).
13:29:20 <ais523> bye again :(
13:30:00 -!- ARRRRGH has joined.
13:30:09 -!- ARRRRGH has quit (Client Quit).
13:30:19 -!- aaaargh has joined.
13:30:23 <aaaargh> FUCKING FUCKSHIT
13:30:29 <aaaargh> IN ASDLAKSD
13:30:32 <ais523> hello ehird
13:30:40 <aaaargh> yeah hi :|
13:30:41 <ais523> or someone else on the same IP, possibly
13:30:55 <aaaargh> so guyz my epiphany is b0rken
13:31:01 <aaaargh> halp
13:31:16 <ais523> aaaargh: which OS?
13:31:32 <aaaargh> debian dinosaur(stable) on pc(shitty)
13:31:49 <aaaargh> debian stable is officially referred to one of: etch, dinosaur
13:32:03 <ais523> dinosaur? I'm unaware of that version
13:32:08 <ais523> how far before etch is it?
13:32:18 <ais523> or is it so new I haven't heard of it?
13:32:56 -!- aaaargh has quit (Read error: 113 (No route to host)).
13:33:12 -!- ehird has joined.
13:34:23 <ais523> ehird: I just said that I was unaware of debian dinosaur
13:34:26 <ais523> how new or old was it?
13:34:32 <ais523> I know of etch, of course
13:41:54 -!- ehird has quit (Read error: 113 (No route to host)).
13:42:11 -!- fcnshtonaple has joined.
13:42:11 -!- fcnshtonaple has quit (Remote closed the connection).
13:42:27 -!- foobarbazquux has joined.
13:42:31 <foobarbazquux> ..............
13:42:40 <foobarbazquux> Hi from failsafe xterm.
13:42:47 <ais523> hello
13:42:50 <foobarbazquux> ais, whta the ffuck do i do
13:42:55 <foobarbazquux> this is totally broken
13:42:56 <ais523> I don't know
13:43:07 <foobarbazquux> gonna try real gome, because i'm trigger-nappy
13:43:11 <foobarbazquux> er, happy
13:43:13 <ais523> I haven't even heard of the version of Debian you're on
13:43:24 <ais523> I've heard of etch, but not dinosaur
13:43:26 <foobarbazquux> it's etch. i call it dinosaur because it is old.
13:43:30 <ais523> oh
13:43:33 <foobarbazquux> all its software is obsolete
13:43:39 <foobarbazquux> :)
13:43:40 <ais523> there was a dinosaur in Toy Story, though, IIRC
13:43:45 <ais523> so it's a reasonable name
13:43:47 <foobarbazquux> i assume it had a name, though.
13:43:57 <ais523> yes, but I can't remember what it was
13:44:04 <foobarbazquux> QUIT
13:44:09 -!- foobarbazquux has quit (Client Quit).
13:44:43 -!- ehird has joined.
13:44:47 <ehird> so on the subject of cabbages
13:44:49 <ehird> how many times now?
13:45:15 <ais523> 11 joins, and therefore probably 10 quits
13:45:38 <ais523> I don't see how your OS can be so broken, though
13:45:45 <ehird> ais523: It's not the OS, it's the computer.
13:45:50 <ehird> It is brokenness itself
13:46:06 <ehird> but this is exceptionally bad
13:46:06 <ais523> ehird: what, you mean the processor's glitching, or something?
13:46:06 <ehird> normally it takes ~3 restarts
13:46:07 <ehird> ais523: i think so
13:46:08 <ehird> and the ram
13:46:10 <ehird> and everything else
13:46:20 <ais523> ehird: try running a memory-test tool?
13:46:24 <ehird> ais523: lazy
13:46:35 <ehird> 'teh webness' is working now anyway
13:46:35 <ais523> and /is/ there a processor-test tool?
13:46:36 <ehird> hopefully..
13:46:43 <ehird> and i don't think so, that's kind of goedelian
13:48:27 -!- ehird_ has joined.
13:48:27 -!- ehird has quit (Read error: 104 (Connection reset by peer)).
13:48:32 <ehird_> FUCK THIS PEICE OF FUCKING SHIT
13:48:35 <ehird_> IT HAS BEEN AN HOUR SINCE I TURNED IT ON
13:48:41 <ehird_> IT HAS NOT BEEN STABLE FOR FIVE GOD DAMN MINUTES
13:48:42 <ehird_> NOT ONCE
13:48:51 <ais523> ehird_: are there any clients that can deal with this sort of thing?
13:48:52 <ehird_> USELESS CRAP
13:48:58 <ehird_> ais523: bouncers
13:49:01 <ehird_> ais523: but i don't care
13:49:07 <ais523> hmm... what about running yes, and seeing how long it takes before it goes wrong?
13:49:07 <ehird_> i just want this to NOT CRASH EVERY 2 SECONDS
13:49:22 <ehird_> and yes kinda eats up memory if you have a scrollback buffer
13:49:23 <ais523> if your computer can't handle yes, it's utterly broken
13:49:26 -!- pikhq has joined.
13:49:28 <ais523> ehird_: oh
13:49:35 <ehird_> yes actually causes glitches on the monitor
13:49:37 <ehird_> but i think that's unrelated
13:49:53 <ais523> what about running factor on some random numbers?
13:50:03 <ais523> can you get an even prime greater than 2?
13:50:05 <ehird_> ais523: it's not fundamentally broken. it'd work if i used console mode, 4eva
13:50:12 <ehird_> but add a gui in to the mix..
13:50:16 <ehird_> well, twm should work
13:50:21 <ais523> ehird_: maybe the video card is crazy
13:50:25 <ais523> and text mode's entirely usable
13:50:34 <ehird_> ais523: it's built-in
13:50:36 <ehird_> so i don't think so
13:50:44 <ehird_> but factor(1) works
13:51:23 -!- Corun has joined.
13:51:32 <ehird_> ais523: i cannot believe a computer can be this broken
13:51:35 <ehird_> it's like frankenstein's monster
13:51:45 <ehird_> many have tried to fix it over the years
13:51:47 <ehird_> none haev succeeded
13:51:52 <ais523> ehird_: no, frankenstein's monster is a Nomic rule
13:51:59 <ehird_> some even disbelieve that it is that bad
13:52:00 <ais523> but seriously, you should find out what's wrong with it before you can fix it
13:52:09 <ehird_> a friend has said to me that it's me mucking about with my OS
13:52:13 <ais523> and "everything" may be correct, but you need to prove that first
13:52:13 <ehird_> but no!
13:52:20 <ais523> and your friend is likely wrong
13:52:20 <ehird_> ais523: well, this isn't my main machine
13:52:22 <ehird_> thank GOD
13:53:15 <ais523> ehird_: why are you using it now?
13:53:21 <ais523> perversity, or is there a better reason?
13:53:42 <ehird_> ais523: long story
13:53:44 <AnMaster> Deewiant, there?
13:53:51 <ehird_> but i'm not perverse
13:53:56 <ehird_> i would never choose to use this machine
13:54:08 <AnMaster> Deewiant, For the o instruction, in text mode, "o treats the file as a linear text file; that is, any spaces before each EOL, and any EOLs before the EOF, are not written out"
13:54:11 -!- RedDak has joined.
13:54:15 <Deewiant> yes...
13:54:26 <AnMaster> Deewiant, EOL as in end of write out?
13:54:28 <AnMaster> as in
13:54:30 <AnMaster> say
13:54:32 <AnMaster> 1243
13:54:34 <AnMaster> 5678
13:54:36 <Deewiant> EOF as in end of file
13:54:39 <AnMaster> is the block to write out
13:54:39 <Deewiant> EOL as in end of line
13:54:48 <Deewiant> up to you
13:54:51 <AnMaster> then there is a EOL at each such block when writing out right?
13:54:52 <ehird_> "I don’t understand why there isn’t a program like KDE’s KPaint for Gnome/Ubuntu." <-- Um, GIMP anyone?
13:54:55 <AnMaster> Deewiant, is that correct?
13:54:56 <Deewiant> in my opinion, you should kill the spaces after 1243 as well
13:55:08 <Deewiant> or wait, what did you ask?
13:55:10 <AnMaster> Deewiant, but then what if the area to write out contains a LF
13:55:13 <AnMaster> say:
13:55:19 <AnMaster> 123\n4
13:55:25 <AnMaster> in that case
13:55:27 <AnMaster> 123 \n4
13:55:30 <ais523> ehird_: GIMP is pretty different
13:55:33 <AnMaster> would that remove those spaces?
13:55:33 <ais523> it can't draw circles
13:55:38 <ais523> it's for a different purpose
13:55:47 <ehird_> ais523: Right, but still
13:55:50 <ais523> I use both GIMP and KolourPaint, for different things
13:55:51 <ehird_> ais523: The guy wanted a paint-equiv.
13:55:55 <ehird_> i.e. for simple drawings
13:55:58 <ais523> ehird_: GIMP isn't a paint-equiv
13:56:02 <ais523> it's missing features that Paint has
13:56:04 <AnMaster> Deewiant, or just any spaces after the newline as in "new row to write data from"?
13:56:09 <Deewiant> AnMaster: you mean the case where you've done a 10p into space thus putting a line feed in the middle of a line without affecting Funge-Space?
13:56:17 <AnMaster> Deewiant, exactly
13:56:29 <ais523> KolourPaint is the best of the programs I've tried as being a paint-equiv, and it's in the Ubuntu repos, but it's KDE
13:56:43 <ehird_> ais523: this is the article: http://contentconsumer.wordpress.com/2008/04/27/is-ubuntu-useable-enough-for-my-girlfriend/ (from reddit)
13:56:53 <ais523> I have to go for a while
13:56: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"").
13:56:55 <AnMaster> ais523, you want inkscape maybe?
13:56:58 <Deewiant> AnMaster: yes, and that's up to you and unspecified. CCBI does remove those spaces.
13:57:11 <AnMaster> Deewiant, hm. *notes for 108 standard*
13:57:18 <Deewiant> AnMaster: because, for instance, the Fungus test suite depends on that.
13:57:23 <Deewiant> or rather, doesn't depend on that
13:57:28 <Deewiant> but it does its output in such a way
13:57:28 <AnMaster> err what?
13:57:39 <Deewiant> you know the Fungus test suite
13:57:46 <AnMaster> aye
13:57:47 <Deewiant> it does its output into files, using o in linear text mode
13:57:53 <AnMaster> ok
13:57:55 <Deewiant> and I was wondering why there were spaces at the end of all the lines
13:58:00 <Deewiant> and it was because of that.
13:58:29 <AnMaster> where is your write out code, load is in utils.d, but not write?
13:59:03 <AnMaster> Deewiant, hm I see
13:59:05 <AnMaster> oh well
13:59:34 <Deewiant> it's in instructions.d
14:00:09 <Deewiant> doing that does mean that it has to do a lot of extra processing of the output
14:00:15 <ehird_> so you two people ... would you suggest that implementing befunge-98 is fun?
14:00:16 <ehird_> :-)
14:00:36 <AnMaster> ehird_, aye
14:00:46 <Deewiant> to a point
14:00:50 <Deewiant> TRDS wasn't ;-)
14:01:06 <AnMaster> well for now I won't do like ccbi on this
14:01:17 <AnMaster> Deewiant, auto lines = splitLines(row);
14:01:18 <AnMaster> where
14:01:20 <AnMaster> is that function
14:01:28 <Deewiant> sounds like something that'd be in utils.d
14:01:39 <AnMaster> nop not there
14:01:44 <ehird_> oh I want to do things like TRDS!!!!
14:01:46 <ehird_> :D
14:01:47 <Deewiant> grep for it...
14:01:49 <AnMaster> import tango.text.Util : join, splitLines;
14:01:53 <Deewiant> there ya go
14:01:54 <AnMaster> Deewiant, that is relevant?
14:01:57 <AnMaster> and that means what?
14:02:04 <Deewiant> from tango.text.Util import join and splitLines
14:02:05 <ehird_> AnMaster: that means 'from tango.text.Util import join, splitLines'
14:02:07 <AnMaster> I see
14:02:13 <ehird_> even i could figure that out
14:02:15 <ehird_> and i don't know D
14:02:17 <Deewiant> :-P
14:02:29 <ehird_> okay, AnMaster -- you say 'aye', but what about implementing N-funge
14:02:34 <ehird_> for any N>0
14:02:37 <AnMaster> #include <foo.h> but just some functions
14:02:54 <AnMaster> ehird_, hm you mean generic at compile time?
14:03:01 <ehird_> AnMaster: no. runtime
14:03:07 <AnMaster> could be possible in C with a lot of macros to handle vectors
14:03:13 <AnMaster> ehird_, well, not sure
14:03:15 <ehird_> but would it be fun
14:03:16 <ehird_> :)
14:03:33 <AnMaster> ehird_, not sure, probably a bit painful
14:03:41 <ehird_> :(
14:03:42 <AnMaster> but some ppl do think that is fun so... oh well
14:03:43 <ehird_> I hate pain
14:03:43 * AnMaster runs
14:03:47 <ehird_> Are fingerprints portable?
14:03:51 <ehird_> 3dtrds?
14:03:54 <AnMaster> ehird_, err what=
14:04:04 <AnMaster> depends on the fingerprint specs
14:04:05 <ehird_> will, e.g. TRDS work on N-d
14:04:24 <AnMaster> if it says "pop a vector" then I guess yes
14:04:31 <AnMaster> if it says "pop x and then y" then no
14:04:51 <Deewiant> TRDS is only implemented in Befunge interpreters anyway ;-)
14:05:54 <ehird_> Deewiant: Do any Nfunge interps exist?
14:05:56 <ehird_> Where N!=2?
14:06:01 <ehird_> Well.
14:06:05 <ehird_> BeQunge don't count.
14:06:14 <Deewiant> !Befunge does trefunge and unefunge IIRC
14:06:17 <EgoBot> Huh?
14:06:22 <Deewiant> EgoBot: shaddup
14:06:24 <ehird_> crap name isn't it
14:06:57 <Deewiant> shrug
14:07:04 <Deewiant> I checked and indeed it does
14:07:34 <Deewiant> Language::Befunge has some n-dimension support but nothing's finished yet as far as I can tell
14:07:50 <AnMaster> err, lets see...
14:07:52 <Deewiant> i.e. the groundwork is there but it doesn't work yet
14:08:08 <AnMaster> Deewiant, is it ok to truncate the cell to a char when writing it out?
14:08:12 <AnMaster> in theory I mean
14:08:20 <AnMaster> otherwise I guess fputs won't work, damn
14:08:20 <Deewiant> well, what else are ya going to do with it :-P
14:08:36 <AnMaster> Deewiant, hm?
14:08:49 <Deewiant> print char# 12311 for me
14:09:03 <AnMaster> hm sigh
14:09:16 <ehird_> don't truncate
14:09:17 <ehird_> modulo
14:09:19 <Deewiant> there isn't much choice is there :-P
14:09:26 <Deewiant> that's probably what he meant
14:09:51 <AnMaster> what I mean is that fputs takes a char*, not a int64_t*
14:10:26 <AnMaster> problem is that if I write it out as int64_t* with fwrite I get other issues
14:10:33 <AnMaster> Deewiant, see what I mean?
14:10:38 <ehird_> AnMaster: so:
14:10:44 <AnMaster> because then I end up with a lot of null bytes for those areas
14:10:44 <ehird_> for one
14:10:45 <ehird_> use fputc
14:10:47 <ehird_> and then
14:10:55 <ehird_> fputc(stdout, (char)(x%255))
14:11:07 <Deewiant> ehird_: %256
14:11:20 <Deewiant> &255 ;-)
14:11:29 <ehird_> err yes
14:11:32 <AnMaster> err what?
14:11:40 <ehird_> AnMaster: do you not know what modulo is.
14:11:45 <AnMaster> yes I know
14:11:47 <ehird_> if so stop programming now :D
14:12:00 <AnMaster> but I was wondering over what Deewiant meant with &255 in that case
14:12:40 <ehird_> &255 == %256
14:12:48 <ehird_> AnMaster: now do benchmarks
14:12:52 <ehird_> YOU MUST SEE WHICH IS FASTER!!!!!!!!!!
14:13:31 <Deewiant> any compiler will optimize the latter to the former :-P
14:13:39 <AnMaster> Deewiant, indeed
14:13:50 <ehird_> Deewiant: AnMaster doesn't trust his compiler
14:13:56 <AnMaster> Deewiant, not sure about the D compiler but gcc will at least
14:14:06 <Deewiant> I see
14:14:09 <Deewiant> AnMaster: any compiler
14:14:12 <Deewiant> I mean /any/ compiler
14:14:20 <AnMaster> Deewiant, sure about that?
14:14:20 <Deewiant> that's like the most basic optimization there is :-P
14:14:28 <AnMaster> heh
14:14:31 <Deewiant> of course I'm not sure
14:14:47 <Deewiant> but I think you'll have a hard time finding an optimizing compiler which doesn't
14:15:05 <Deewiant> of course it's different when dealing with bigints or the like.
14:33:06 <ehird_> 57.5
14:42:25 <AnMaster> hahah, ehird_ you will love this, some of my micro optimizing to preallocate file when writing resulted in trailing null byte garbage when writing in text mode
14:42:39 <AnMaster> so now I only use it for binary mode
14:42:40 * AnMaster runs
14:42:55 <ehird_> AnMaster: You've never read Knuth... have you
14:43:02 <AnMaster> nop
14:43:18 <ehird_> Normally I hate the over-quoting of "Premature optimization is the root of all evil", but by god it applies here
14:43:32 <ehird_> If he was here you could expect a few swhacks
14:43:44 <AnMaster> ehird_, indeed
14:43:47 <AnMaster> I know
14:44:02 <AnMaster> ehird_, yet this is designed for speed :P
14:44:50 <ehird_> AnMaster: You don't understand. :-)
14:44:58 <ehird_> actually, even Linus would be swhacking you
14:45:05 <ehird_> and he's quite fond of speed..
14:45:16 <AnMaster> ehird_, I did that microoptimizing just to irritate you
14:49:57 -!- oklopol has quit (Read error: 113 (No route to host)).
14:50:04 <AnMaster> ehird_, also there is another reason
14:50:12 <AnMaster> making sure there is enough space in advance
14:50:24 <AnMaster> thus being able to error out early if something goes wrong
14:55:53 <AnMaster> "and any EOLs before the EOF,"
14:55:54 <AnMaster> sigh
15:14:15 <ehird_> http://www.p01.org/releases/Demoscene/files/mandelbrot_rotozoom_256b_javascript_1.1.htm An animated Mandelbrot set, in one line (not 24759345 chars) of JavaScript
15:21:28 <AnMaster> insane heh
15:22:32 <ehird_> AnMaster: yep
15:22:56 <AnMaster> I looked at the source, quite interesting it can be done with so little code in javascript
15:33:44 <ehird_> AnMaster: i can probably do it pretty short in ruby or something
15:33:46 <ehird_> let me try
15:35:13 <AnMaster> should be possible to do in C too quite short I think, just adding a clear screen or something
15:35:37 <AnMaster> maybe shorter even as you wouldn't need Math. for cos and such
15:36:16 <AnMaster> not that I'm going to try
15:36:56 <ehird_> AnMaster: i'm not so sure. C just isn't one for golfing, beyond evil platform tricks
15:37:05 <AnMaster> heh
15:37:34 <AnMaster> ehird_, what is the goal with golfing really? "as short as possible" or "as fast as possible" or?
15:37:43 <ehird_> AnMaster: as short as possible
15:37:44 <ehird_> in bytes
15:37:47 <AnMaster> ah
15:37:51 <ehird_> it's not practical of course
15:37:54 <ehird_> but it IS tremendous fun
15:38:01 <ehird_> the best two golfing languages are generally perl and ruby
15:38:14 <ehird_> ruby coming second due to its perl heritage, it supporst a lot of the stuff perl does for golfing
15:38:21 <ehird_> sometimes ruby even beats perl
15:38:46 <AnMaster> hm
15:39:06 <ehird_> AnMaster: two good golf sites:
15:39:07 <AnMaster> ehird_, as short as possible in generated machine code would be more interesting I think
15:39:08 <AnMaster> :)
15:39:11 <ehird_> and no..
15:39:18 <ehird_> that's just "how good is your compiler"
15:39:24 <ehird_> it's not meant to be useful
15:39:25 <ehird_> but it's fun
15:39:27 <AnMaster> not really
15:39:29 <ehird_> two good golf sites:
15:39:30 <AnMaster> not if you do it in asm
15:40:08 <ehird_> http://golf.shinh.org/ - anarchy golf/anagolf. Has a lot of Rubyists and perlists, but even COBOLers and similar -- it's diverse. Anyone can start a challenge, etc. My favourite, ais523 from here participates too
15:40:30 <ehird_> http://codegolf.com/ - Code Golf. More formal. Challenges organized, hidden input/output pairs, etc.
15:40:42 <ehird_> AnMaster: you know about anagolf
15:40:42 <ehird_> bt
15:40:46 <ehird_> the PRINT LOADS one
15:40:47 <ehird_> that your C failed on
15:40:49 <AnMaster> ah yes
15:40:51 <ehird_> was due to linux pipelines
15:40:53 <ehird_> having a maximum length.
15:40:57 <AnMaster> ah I see...
15:40:57 <ehird_> but shinh fixed that
15:41:10 <ehird_> apparently most programs on it got close to the maximum exec time limit tho :)
15:41:21 <AnMaster> heh
15:41:29 <ehird_> AnMaster: one great one was seeding the ruby RNG with the process id, modulo something
15:41:35 <ehird_> then the random number generator would produce 1,2,3...
15:42:09 <AnMaster> oh?
15:42:15 <AnMaster> why would that work?
15:42:37 <ehird_> AnMaster: it's just if you seed the mersenne twister the right way
15:42:40 <ehird_> it produces sequential numbers
15:42:58 <AnMaster> well, why is process id important?
15:43:13 <ehird_> AnMaster: it's a number in the thousands that if you submit multiple times goes up by one each run
15:43:17 <ehird_> more or lses
15:43:21 <ehird_> 12012, 12013, etc
15:43:26 <ehird_> so if you modulo it right
15:43:28 <AnMaster> hm true
15:43:29 <ehird_> and resubmit a lot
15:43:33 <ehird_> then you can hit on the right number :)
15:43:38 <ehird_> AnMaster: and it's $$ in ruby
15:43:41 <AnMaster> aha
15:43:41 <ehird_> $$%X
15:43:43 <AnMaster> short yeah
15:43:43 <ehird_> four symbols
15:44:20 <AnMaster> but wouldn't it be shorter to just write the number instead (maybe)
15:44:30 <AnMaster> depends on what X is of course
15:44:43 <AnMaster> ehird_, oh and a lot of systems make PID random
15:44:49 <ehird_> AnMaster: but not the anagolf system
15:44:51 <ehird_> :-)
15:44:57 <AnMaster> yeah
15:44:58 <ehird_> also, AnMaster
15:45:04 <ehird_> there can be multiple inputoutput pairs
15:45:07 <AnMaster> ehird_, still *very* brittle algorithm ;P
15:45:10 <ehird_> so moduloing and conditioning on that
15:45:16 <ehird_> :))
15:45:20 <ehird_> like
15:45:30 <ehird_> well
15:45:32 <ehird_> hard to find an example
15:45:34 <ehird_> but you get what i mean
15:45:44 <ehird_> also... brittle algos are the whole point of golf :)))
15:45:47 <AnMaster> you mean like;
15:45:50 <AnMaster> 2+3
15:45:52 <ehird_> one of the ones there assigns main to a string constant
15:45:53 <AnMaster> outputs 5
15:45:56 <AnMaster> 2+1
15:45:58 <AnMaster> outputs 3?
15:45:59 <ehird_> yeah, AnMaster
15:46:06 <ehird_> you could do
15:46:10 <ehird_> p$$%4
15:46:17 <AnMaster> hmh?
15:46:24 <ehird_> hmm
15:46:26 <ehird_> %7 might work pest.
15:46:27 <ehird_> *best
15:46:46 <ehird_> ehird@debian:~$ ruby -e'p$$%7'
15:46:46 <ehird_> 6
15:46:46 <ehird_> ehird@debian:~$ ruby -e'p$$%7'
15:46:46 <ehird_> 0
15:46:46 <ehird_> ehird@debian:~$ ruby -e'p$$%7'
15:46:47 <ehird_> 1
15:46:49 <ehird_> ehird@debian:~$ ruby -e'p$$%7'
15:46:51 <ehird_> 2
15:46:53 <AnMaster> mhm
15:46:53 <ehird_> ehird@debian:~$ ruby -e'p$$%7'
15:46:55 <ehird_> 3
15:46:57 <ehird_> etc
15:47:01 <AnMaster> p is?
15:47:03 <AnMaster> print?
15:47:37 <AnMaster> ehird_, or?
15:48:35 <ehird_> AnMaster: "p(x)" is "puts(x.inspect)"
15:48:40 <AnMaster> ah
15:48:42 <ehird_> AnMaster: and .inspect is like a pretty-print
15:48:45 <ehird_> p "abc"
15:48:46 <ehird_> prints "abc"
15:48:47 <ehird_> literally
15:48:52 <ehird_> (puts "abc" prints abc)
15:48:54 <AnMaster> with the quotes, hm ok
15:48:59 <ehird_> AnMaster: it's just raw-printing
15:49:06 <AnMaster> ok
15:49:09 <ehird_> AnMaster: it's, e.g. what the interactive loop prints out
15:49:17 <ehird_> irb(main):001:0> "abc"
15:49:17 <ehird_> => "abc"
15:49:23 <AnMaster> ok
15:50:09 <ehird_> http://golf.shinh.org/p.rb?embed <-- Looks like someone's been monitoring atom decay again..
16:00:09 -!- ais523 has joined.
16:10:39 <ehird_> ais523 returns
16:10:47 <ehird_> ais523: the computer hasn't crashed! joy!
16:10:49 <ais523> yep, lecture finished
16:11:06 * ais523 waits for #ircnomic to become more active
16:11:17 <ais523> oh, and I joined Agora
16:11:51 <ehird_> ais523: be sure to eminate the pedantickr'y that emerges from your presence
16:11:57 <ehird_> pedantickr'y is a nice word
16:12:06 <ais523> ehird_: not a very pedantically correct one, though
16:12:09 <ehird_> i want to speak like that all the time
16:12:10 <ais523> but it seems Agoran
16:12:36 <ehird_> ais523: what's the past-future HHGTTG way to suffix 'spoke'?
16:12:42 <ais523> ehird_: no idea
16:12:51 <ehird_> I wioll haven spoken like that in the future.
16:12:54 <ehird_> ais523: or something
16:13:37 <ehird_> ais523: wow, for a second i didn't connect you with 'Alexander Smith'
16:13:40 <ehird_> that was weird
16:13:44 <ehird_> i thought you'd put a fake name in
16:13:51 <ais523> why would I do that?
16:13:58 <ehird_> ais523: no idea
16:14:02 <ais523> it would also require control over my email system...
16:14:11 <ehird_> "ais523, a first-class person with as yet no relevant Titles, bids Agora hello." <-- is a second-class person one that can't be passed and returned to functions?
16:14:26 <ais523> ehird_: no, it's a person which does not correlate to a human being
16:14:35 <ais523> Agora's full of distinctions like that
16:14:54 <ehird_> ais523: agora is probably the only system with more subtle corner-cases than real life
16:15:04 <ais523> ehird_: they're mostly edge-cases on Agora
16:15:18 <ehird_> ais523: also, ihope's ye Marvy scam failed
16:15:20 <ehird_> see ed murphy's reply
16:15:26 <ais523> ehird_: I will do when I reach it
16:15:33 <ais523> I'm reading the April list archives at the moment
16:15:45 <ais523> so as to gain a sense of which public contracts exist
16:16:07 <ehird_> ais523: wow, gmail notices that threads spam both agora-business and agora-discussion
16:16:13 <ehird_> and merges them correctly when i view it in one
16:16:16 <ehird_> *span
16:16:28 <ais523> ehird_: I prefer the first version
16:16:32 <ehird_> ais523: due to the fact that it's single messages which are tagged
16:16:35 <ehird_> ais523: instead of threads
16:17:26 <ehird_> "
16:17:26 <ehird_> I announce that I change my posture to sitting, by means of Rule 1871/24 (which provides that I CAN change my posture in this way by announcement) and Rule 478/22 (which provides that if I CAN perform an action by announcement, I can do so by sending a public message)."
16:17:30 <ehird_> that has to be the most pointless email ever sent
16:17:34 <ehird_> even spam has a purpose
16:17:36 <ais523> ehird_: it doesn't need to be that complicated
16:17:40 <ais523> it does do something
16:17:56 <ais523> the rest of it is explanation as to how I can do that, which isn't actually needed but seems appropriate
16:18:17 <ehird_> 'I also agree to the Constitution of Canada.' -- ihope
16:18:26 <ais523> ehird_: I noticed that
16:18:45 <ehird_> ais523: we should replace it with 'ihope does not agree with this rule'
16:18:52 <ehird_> ircnomic's ruleset that is
16:18:57 <ais523> ehird_: no, not yet
16:19:02 <ais523> I have other plans for the ruleset
16:19:12 <ais523> but I don't want them to impact just ihope, they need to catch everyone
16:19:16 <ehird_> ais523: LIKE REMOVING THE STUPID UPPERCASE THING RIGHT
16:19:30 <ais523> ehird_: no, BTW, Agora is case-insensitive, at least it's inconsistent about the case of 'rule'
16:19:39 <ais523> rules and Rules are the same thing
16:19:45 <ehird_> yeah, but if agora didn't suck we wouldn't be scamming it
16:19:46 <ehird_> :D
16:19:48 <ais523> and used interchangeably in the Rules
16:19:54 <ais523> ehird_: Agora doesn't suck!
16:20:07 <ehird_> it sucks compared to ircnomic!
16:20:15 <ehird_> where by ircnomic I mean ircnomic - uppercase requirement!
16:23:46 <AnMaster> well cfunge is soon ready for a new release
16:25:07 -!- jix has joined.
16:25:07 <AnMaster> ehird_, IRCNOMIC you mean=
16:25:09 * AnMaster runs
16:25:15 <ehird_> AnMaster: Die!
16:25:17 <ehird_> :D
16:25:25 <AnMaster> Why EHIRD_?
16:25:40 <ehird_> AnMaster: I am behind you. Prepare to die!
16:25:45 <AnMaster> haha
16:26:51 <AnMaster> ehird_, not valid, as you are not BEHIND me :P
16:28:06 -!- oklopol has joined.
16:28:39 <oklopol> parseul={!x:_;(!x=='` & ! x+1 & ! x+2 ~ class[]) => ! x..x+2 = [! x+1,! x+2]} <<< this must be the weirdest unlambda parser ever.
16:28:54 <oklopol> well doesn't work for "."'s
16:29:16 <ehird_> oklopol: wow
16:29:17 <ehird_> what's that in
16:29:21 <ehird_> oklotalk?
16:29:21 <oklopol> Ef.
16:29:23 <ehird_> oh
16:29:24 <ehird_> cool
16:29:30 <oklopol> i'll explain that
16:29:37 <oklopol> in case you want me to
16:29:41 <oklopol> it's a bit complicated
16:29:42 <ehird_> maybe in a minute :)
16:29:51 <ehird_> oklopol: i can see that it uses ` to increase twice
16:29:54 <ehird_> and then decrements when it finds something
16:29:57 <ehird_> to get it to 0 when balanced
16:29:58 <ehird_> i think
16:30:04 <oklopol> hmm
16:30:05 <ehird_> so it uses x as a 'termination/nesting counter'
16:30:07 <ehird_> kind of
16:30:08 <oklopol> doesn't sound correct :)
16:30:32 <oklopol> basically, it says "find `ab where a and b have been evaluated, and clip them together"
16:30:34 <oklopol> err
16:30:35 <oklopol> parsed
16:30:58 <oklopol> ! x+1 & ! x+2 ~ class[] <<< the element after x and the element after that are lists
16:31:01 <EgoBot> Huh?
16:31:32 <ehird_> EgoBot doesn't get it.
16:31:57 <oklopol> 5&2 < 8 == $t, 5&9 < 8 == $f
16:32:13 <oklopol> operators are fairly clever and overloaded
16:32:59 <oklopol> & kinda builds "mapping-trees", where certain operations will then map an operation everywhere
16:33:40 <oklopol> i realized Ef is starting to be so weird already i might as well stuff some of my older ideas in it
16:34:18 <AnMaster> oklopol, what kind of language is Ef?
16:34:27 <AnMaster> and what happened to oklotalk?
16:34:36 <oklopol> you can also do that mapping-tree with a lambda... although it's not as pretty as in a functional language, because you have to take into account the fact the fixed-point is taken
16:35:03 <oklopol> AnMaster: oklotalk is just one of my languages, i have dozens
16:36:00 <oklopol> (all {x:_;! x:(class[])=>$f} [! x+1,! x+2]) here, the "fixambda" or whatever weird name i choose for the concept is applied to the list, as one would expect with all
16:36:22 <oklopol> the lambda is fixed-point style again, i may have to explain it a bit
16:36:30 <AnMaster> oklopol, so is Ef a functional language?
16:36:43 <oklopol> AnMaster: it's a fixed-point language
16:37:05 <AnMaster> oklopol, as in not using floating point numbers?
16:37:27 <oklopol> AnMaster: no, fixed point as in fix f arg == f f f f ... f f arg
16:37:34 <oklopol> f is applied infinite times
16:37:42 <AnMaster> errr
16:37:50 <ehird_> oklopol: anmaster is a dirty C micro-optimizer
16:37:57 <ehird_> he doesn't understand any functional paradigms
16:37:58 <ehird_> :)
16:38:05 <ehird_> also
16:38:14 <oklopol> {x:_;! x:(class[])=>$f} <<< so, basically, this says if x belongs to the argument list, and x is not a list, $f is "returned", in which case it will automatically be the fixed point too
16:38:16 <ehird_> fix f arg = f (f (f ... (f arg)))))
16:38:20 <ehird_> not f f f f .. arg
16:38:25 <oklopol> because x:_; will fail after that
16:38:25 <ehird_> though inf-arg funcs would be cool :)
16:38:51 <oklopol> ehird_: depends on notation
16:39:00 <oklopol> but yeah, haskell should be assumed
16:39:13 <oklopol> not
16:39:14 <oklopol> *now
16:39:24 <oklopol> whoope
16:39:25 <oklopol> actually...
16:39:55 <ehird_> oklopol: f f f arg is ((f f) f) arg in haskell
16:39:56 <ehird_> :D
16:40:05 <oklopol> i'm not sure my explanations are at all helpful, i'm fairly sure no one has a deep enough understanding about the paradigm
16:40:14 <oklopol> ehird_: i know, i wasn't using haskell notation!
16:40:24 <oklopol> but, you know, fixed-amount-of-arguments prefix
16:41:40 <oklopol> unfortunately, the complexity of the language is getting out of hand, so i'll prolly have to implement a subset quickly so ppl can try it
16:41:57 <oklopol> it's a very different way to look at algorithms
16:42:06 <oklopol> kinda declarative... but entirely imperative
16:42:58 <oklopol> well, imperative with existential quantifiers i guess
16:43:10 <oklopol> but you can also do directly declarative stuff
16:43:36 <oklopol> i also thought of a quicksort... in-place, i'll code it up
16:43:55 <oklopol> but, the "all" call there was not needed
16:44:16 <oklopol> ({x:_;! x:(class[])=>$f} [! x+1,! x+2]) <<< this is the other way to write ! x+1 & ! x+2 ~ class[]
16:44:38 <oklopol> but it uses a weird backwards type inference trick
16:45:11 <oklopol> well, fairly intuitive trick, but it's a bit complicated still
16:45:16 <oklopol> hmmm
16:45:43 <oklopol> actually, it's not really a quicksort in that it doesn't necessarily do pivotting in any sane way
16:56:54 -!- Corun has quit (Read error: 110 (Connection timed out)).
16:57:45 <oklopol> http://www.vjn.fi/pb/p552412665.txt
16:58:08 <oklopol> * does some "cheating", used for escaping problems with a complete fixed point
16:58:33 <oklopol> mostly optimization, at least here it's not actually necessary for correct result
16:59:34 <oklopol> * basically splits into two different functions, basically ({a; *; b} arg) means ({b} ({a} arg))
16:59:54 <oklopol> basically basically asic allyer
17:01:15 <oklopol> oh, right, and in *p:_; we are fixing the value of p for the whole evaluation
17:01:56 <oklopol> i'm fairly sure oklotalk will be a fucking vacation to implement compared to this :P
17:03:21 <oklopol> p.. is a bit iffy, because i'm not sure if i want postfix operators...
17:03:30 <oklopol> but they should work nicely
17:03:54 <oklopol> i'm aiming for 0 need for parenthesis if you don't want them
17:04:09 <oklopol> without having to use multiple adjacent spaces often
17:05:07 -!- Corun has joined.
17:05:36 <oklopol> does the sort make sense?
17:12:33 <oklopol> ehird_: pretend you read that, found it interesting and understood it!
17:12:48 <ehird_> oklopol: yep
17:12:50 <ehird_> ti was cool
17:13:00 <ehird_> it was in fact made of copglobs
17:13:01 <ais523> oklopol: I skimmed it, found it vaguely interesting, but do not currently have the mental energy to attempt to understand it
17:13:04 <ehird_> and on another note
17:13:08 <ehird_> someone tell me how awesome my todo app will be
17:13:14 <ais523> I suspect I will find it interesting when I am capable of serious thought
17:13:38 <ehird_> ais523: do you know of a db like sqlite (mini, one-file) that still supports decent sql constraints?
17:13:41 <ehird_> like foreign keys and stuff
17:13:44 <ehird_> sqlite parses 'em but ignores them
17:13:51 <ehird_> it does do triggers and transactions though
17:13:53 <ais523> ehird_: no
17:13:53 <ehird_> but it is typeless
17:14:07 <ehird_> eh, sqlite should be ok
17:14:20 <ehird_> ais523: will you help me write the sql i suck at it ;)
17:14:34 <ais523> ehird_: maybe, but I'm not used to foreign keys and triggers
17:14:51 <ehird_> ais523: okay, now name my todo program: 'to' or 'toto'
17:14:56 <oklopol> well atm i'm fairly excited about it... i'm pretty sure nothing willl actually work fast enough to be usable, but the way to program in it seems to be quite different from all functional, imperative and declarative programming i've done
17:14:59 <ehird_> the latter lets me make a pun about it not being in kansas anymore
17:15:02 <ehird_> the former is quicker to type
17:15:02 <oklopol> god i think slow
17:15:11 <ais523> ehird_: toto, to's already taken
17:15:15 <oklopol> ehird_ spouts 20 lines while i ponder my one line
17:15:16 <ehird_> ais523: for what?
17:15:34 <ais523> "Communication and Status Utilities", apparently
17:15:43 <ais523> command-not-found is useful for this sort of thing
17:15:56 <oklopol> i'm on two courses about sql atm
17:16:18 <ehird_> ais523: that's unhelpful
17:16:20 <ehird_> :)
17:16:20 <oklopol> wrote an sql interp, but that's really all i've done with it :D
17:16:23 <Deewiant> 2008-04-28 18:36:42 ( oklopol) AnMaster: it's a fixed-point language
17:16:23 <Deewiant> 2008-04-28 18:37:05 ( AnMaster) oklopol, as in not using floating point numbers?
17:16:27 <Deewiant> apologies, but LOL
17:16:35 <ehird_> Deewiant: anmaster thinks at machine level :D
17:16:35 <AnMaster> ?
17:16:35 <ais523> Deewiant: yes, that amused me too
17:16:44 <Deewiant> seriously, that cracked me up :-D
17:17:00 <ehird_> ais523: so who uses 'to'
17:17:05 <ehird_> and why should i care about them
17:17:06 <oklopol> ...because AnMaster should've known what fixed-point languages were? :D
17:17:06 <ais523> ehird_: probably nobody
17:17:17 <ehird_> i can just suggest an alias to=toto i guess
17:17:19 <oklopol> i guess the guess was a bit comical
17:17:19 <ais523> actually, it's probably more popular than INTERCAL
17:17:22 <ehird_> ais523: will youuuu use my todo? :P
17:17:32 <ais523> ehird_: probably not, I don't use anyone else's
17:18:13 <Deewiant> oklopol: the guess mostly, I admit I wouldn't have expected him to know what fixed-point means in that context
17:18:17 <ehird_> ais523: it'll be all unixy
17:18:20 <ehird_> and intuitive
17:18:34 <AnMaster> well what meaning of fixed point...
17:19:45 <oklopol> AnMaster: well, a language withoug floating point numbers isn't very esoteric... but all i really found funny was how you just said "errr" after i tried to explain and dissappeared :P
17:19:54 <ehird_> oklopol: WILL YOU USE MY TODO :<
17:20:03 <ehird_> ais523: actually, you'd like it because it USES A DB WHOMFG
17:20:06 <oklopol> ehird_: yes i will use it for everything
17:20:10 <oklopol> all the time
17:20:15 <oklopol> i will devote my life to using it
17:20:42 <ehird_> oklopol: lvoe <3
17:21:22 <AnMaster> oklopol, google for fixed point language
17:21:34 <ehird_> ais523: okay emacs question
17:21:37 <AnMaster> all top 3 hits are about "not floating point"
17:21:41 <ehird_> ais523: how can i make the buffer list open in the other frame
17:22:00 <ais523> ehird_: I've never tried to do that, try prefixing with C-x 4?
17:22:01 <oklopol> AnMaster: i haven't implied you were stupid for not knowing it, i just said it was a bit funny how you disappeare!
17:22:04 <oklopol> *disappeared
17:22:06 <ais523> most other-frame commands worked like that
17:22:11 <ais523> s/ed//
17:22:13 <ehird_> ais523: nope
17:22:16 <ehird_> but really i want it
17:22:18 <AnMaster> oklopol, yes I had other things to do too
17:22:20 <ehird_> i want a buffer list on the bottom
17:22:21 <ehird_> and my koed on the top
17:22:24 <AnMaster> oklopol, and I still don't get it. sigh
17:22:25 <oklopol> AnMaster: also, you could not have *known* it really, there aren't any fixed-point languages afaik
17:22:30 <ais523> I don't use buffer-list, generally speaking
17:22:40 <AnMaster> oklopol, ok....
17:22:42 <ehird_> what do you use :|
17:22:42 <ais523> you could do C-x o C-x b, I suppose
17:22:50 <ais523> ehird_: go to buffer, tab tab
17:22:55 <ehird_> ais523: hee
17:22:58 <ais523> to get a tabcomplete menu instead
17:23:05 <ais523> that way it disappears when I go to the right buffer
17:23:57 <ais523> ehird_: it's M-x buffer-window-other-window
17:24:08 <ehird_> ais523: whomg, ido is **awesome**
17:24:10 <ais523> you need to bind a key to that to be able to use it without typing the whole thing
17:24:14 <ehird_> try it
17:24:18 <oklopol> AnMaster: third result is actually the fixed-point combinator
17:24:19 <ehird_> (require 'ido) (ido-mode t)
17:24:22 <oklopol> in my googles
17:24:25 <ehird_> http://www.emacswiki.org/cgi-bin/wiki/InteractivelyDoThings
17:24:45 <AnMaster> oklopol, err
17:24:47 <ehird_> icicles is apparently more advanced though
17:24:48 <AnMaster> 1) doi.ieeecomputersociety.org/10.1109/ACSSC.1995.540814 -
17:24:52 <AnMaster> 2) www.embedded.com/showArticle.jhtml?articleID=15201575 - 62k -
17:24:53 <ehird_> http://www.emacswiki.org/cgi-bin/wiki/Icicles
17:24:57 <AnMaster> 3) en.wikipedia.org/wiki/Fixed-point_arithmetic - 38k -
17:25:01 <AnMaster> oklopol, not it isn't
17:25:02 <AnMaster> ...
17:25:24 <AnMaster> 4th result is
17:25:25 <ehird_> ais523: p.s. do you know how i can make emacs auto-save, even on close?
17:25:30 <AnMaster> "okmij.org/ftp/Computation/fixed-point-combinators.html - 10k -"
17:25:31 <ehird_> i hate typing to save
17:25:31 <oklopol> AnMaster: my googles != your googles
17:25:40 <AnMaster> oklopol, k, I use google.com
17:25:44 <AnMaster> not .se or such
17:25:58 <ais523> ehird_: it does that already
17:26:05 <ais523> if you close without saving you get a #filename# file
17:26:31 <ais523> it would be trivial, but stupid, to bind C-x C-c to a custom save-and-exit function
17:26:34 <ehird_> ais523: but it bugs you about it
17:26:39 <ehird_> interfaces should never ask to save
17:26:42 <oklopol> AnMaster: always third result in mine, but this is a bit irrelevant :)
17:26:51 <ais523> <ehird_> interfaces should never ask to save
17:26:58 <ais523> what a terrible idea, you'll end up inventing GNOME
17:27:04 <AnMaster> ais523++
17:27:13 -!- ais523 has changed nick to ais524.
17:27:13 <ehird_> ais523: no -- Jef Raskin thinks the same thing, and he has more credentials than gnome designers
17:27:22 <ehird_> of course it needs to be system-wide
17:27:27 <AnMaster> ais524, hahaha
17:27:27 <ehird_> you cna't just shoehorn it onto the current system
17:27:48 <ais524> ehird_: many of the dialog boxes auto-save when you change options in Gnome, it's really annoying
17:27:54 <ais524> ais524--
17:27:56 -!- ais524 has changed nick to ais523.
17:28:21 <ehird_> that's not what i meant, anyway
17:28:22 <AnMaster> ais523 *= 2
17:28:24 * AnMaster runs
17:28:26 <ehird_> also: undo
17:28:34 <ehird_> you are thinking about it inside the constraints of current systems anyway
17:28:39 <oklopol> ais523: i should prolly know this, but what's the 523 for?
17:28:50 <ais523> oklopol: it's an arbitrary number
17:28:53 <ehird_> fundamentally, warnings and prompts are wrong
17:29:02 <ehird_> revisions and undos and easy access to them are superior
17:29:03 <ais523> I think it's a sequence number, but I'm not sure who the other members in the sequence were
17:29:34 <AnMaster> ehird_, Oh? so "are you sure you want to create a new file system on /dev/hda3? [YN]"
17:29:34 <ais523> still, I like my 523
17:29:35 <AnMaster> is wrong?
17:29:42 <ais523> my Wikipedia bot is Bot523, for instance
17:29:49 <AnMaster> ehird_, interesting opinion
17:30:08 <ehird_> AnMaster: jesus you don't listen
17:30:11 <ehird_> <ehird_> you are thinking about it inside the constraints of current systems anyway
17:30:12 <ais523> AnMaster: I like the way that mke2fs requires -f to do something potentially stupid, and -ff to do something obviously very stupid
17:30:26 <ehird_> plz google Jef Raskin and read The Humane Interface
17:30:27 <ehird_> kthx
17:30:27 <AnMaster> ais523, aye, a good way too
17:30:30 <ais523> -ff is, I think, reserved for attempts to reformat drives which are mounted at the time
17:30:39 <oklopol> ais523: nice to see another (non ((arbitrary number) racist)), people usually want a "meaning" for every number they use, making many nice numbers feel really bad
17:31:00 <oklopol> i mean
17:31:03 <oklopol> they wanna be used
17:31:20 <ais523> sorry, it's -F not -f, but point stands
17:31:38 <AnMaster> ehird_, still how would you do "make new fs" bit then?
17:31:44 <AnMaster> ehird_, without your prompts
17:31:46 <ais523> AnMaster: ehird would have it undoable
17:31:53 <ehird_> AnMaster: Please read The Humane Interface. Thank you.
17:31:55 <ais523> which is 'better' in some sense but impracticle
17:31:58 <ais523> s/le/al/
17:31:59 <AnMaster> ais523, that is logically not possible
17:31:59 <ehird_> ais523: "
17:32:01 <AnMaster> by definition
17:32:07 <ehird_> Please read THI.
17:32:31 <ais523> ehird_: what about 'shred', and similar commands? The whole point of them is that they aren't undoable
17:32:35 <ais523> they should still need confirmations
17:32:38 <AnMaster> ehird_, how would you (mostly) securely wipe data? "are you sure you want to wipe your harddrive? [yN]"
17:32:43 <ehird_> ais523: Please read THI
17:32:43 <AnMaster> if you make that undoable
17:32:44 <AnMaster> well
17:32:48 <AnMaster> then you are silly
17:32:52 <ehird_> gosh, input line history is lovely
17:32:55 <ehird_> AnMaster: Please read THI.
17:32:55 <AnMaster> because the point is *NOT UNDOABLE*
17:33:02 <AnMaster> ehird_, the POINT IS NOT UNDOABLE
17:33:03 <ehird_> Please read, THI.
17:33:05 <AnMaster> for a secure wipe
17:33:08 <ehird_> Please, read THI.
17:33:11 <AnMaster> ehird_, link to pdf
17:33:17 <AnMaster> or whatever
17:33:23 <ehird_> AnMaster: Available in dead tree form from your nearest retailer.
17:33:33 <AnMaster> <ais523> ehird_: what about 'shred', and similar commands? The whole point of them is that they aren't undoable
17:33:35 <AnMaster> a valid point
17:33:39 <AnMaster> that ehird_ refuse to answer
17:33:55 <ehird_> Because it's already been answered, in book-form.
17:34:01 <AnMaster> I guess he don't have a good answer
17:34:11 <AnMaster> ehird_, and you won't make me buy any books
17:34:18 <AnMaster> nor I suspect, ais523
17:34:47 <AnMaster> s/r I/r, I/;s/t, a/t a/
17:34:51 <ehird_> <AnMaster> ehird_, and you won't make me buy any books
17:34:58 <ehird_> Then I guess you'll have to avoid offering your opinion.
17:35:04 <ehird_> Or at least not ask me questions about it.
17:35:15 <AnMaster> ehird_, well ais523 raised a valid point
17:35:22 <AnMaster> and you refuse to answer it
17:35:30 * AnMaster shrugs
17:35:56 <AnMaster> ehird_, well I will refer you to Swedish only books in future, that are out of print since long
17:36:03 <AnMaster> I hope you will be as happy with that
17:36:08 <oklopol> i wanna read that
17:36:14 <oklopol> ME WANNA
17:36:19 <oklopol> i'll torrent it now
17:36:20 <ehird_> <AnMaster> ehird_, well I will refer you to Swedish only books in future, that are out of print since long
17:36:25 <ehird_> it's a good thing THI isn't out of print then
17:39:25 <ehird_> other things relating to user interface design: Good Easy
17:40:36 <ehird_> hmm
17:40:46 <ehird_> ais523: does emacs have *arbitary* depth of pushed/popped cursor positions?
17:40:48 <ehird_> like pushd/popd
17:41:03 <ais523> ehird_: I think there's a limit, but it's pretty high and increasable
17:41:18 <ais523> I'd find that a really useful feature but can never remember the keystrokes to use it
17:41:27 <ehird_> ais523: how do I use it then?
17:41:40 <ais523> ehird_: I can't remember, search documentation for pop-global-mark
17:42:04 <ehird_> ais523: oh. so only two
17:42:06 <ehird_> mark/point
17:42:26 <ais523> ehird_: the marks are saved on a stack
17:43:33 <ehird_> ais523: so how that i know how to pop (ctrl-x ctrl-spc) how do i push
17:43:56 <ais523> ehird_: C-spc I think
17:44:33 <ehird_> ais523: that puts me into a click'ndrag mode
17:44:38 <ehird_> except with movement :)
17:45:00 <ais523> ehird_: oh, it must have got mixed with transient mark, which activates if you press C-spc twice in a row
17:45:05 <ais523> and my tests show it isn't C-spc anyway
17:45:13 <ehird_> ais523: evidently not
17:45:15 <ehird_> one c-spc does it
17:55:26 -!- olsner has joined.
18:07:59 -!- atsampson has quit (Remote closed the connection).
18:08:11 -!- atsampson has joined.
18:13:10 <ehird_> ais523: random - here's a script i just wrote http://pastebin.ca/1000579
18:13:17 <ehird_> i call it toff for to-firefox, but i don't actually use firefox :-)
18:13:22 <ehird_> it works in a pipeline
18:13:25 <ehird_> as an end-point
18:13:29 <ehird_> pipes to your browser
18:13:39 <ehird_> much nicer than select + switch + middle button
18:13:54 <ais523> ehird_: which browser do you use?
18:14:03 <ehird_> ais523: epiphany since its just a stock debian install
18:14:06 <ehird_> it's good
18:14:16 <ais523> On this laptop, I've used w3m, Firefox (2/3), Konqueror, Epiphany, and telnet
18:14:30 <ehird_> ais523: anyway, it uses $BROWSER
18:14:31 <ehird_> so :)
18:14:37 <ais523> so Firefox in my case
18:14:39 <ehird_> it doesn't rm the temp files it creates
18:14:41 <ehird_> but that's a feature
18:14:44 <ehird_> f5 :)
18:15:06 <ais523> /tmp's wiped on boot anyway, or ought to be
18:15:31 <ehird_> hmm
18:15:33 <ehird_> toff isn't perfect
18:16:02 <ehird_> http://pastebin.ca/1000585
18:16:03 <ehird_> now it is
18:16:20 <ais523> what did you change?
18:16:34 <ehird_> ais523: mktemp -t
18:16:35 <ehird_> instead of mktemp /tmp
18:53:10 -!- timotiis has joined.
19:05:42 <ehird_> ais523: so, the tv just rickroll'd me
19:05:47 <ehird_> no joke
19:05:50 <ais523> ehird_: how?
19:06:01 <ehird_> ais523: advert for Rick Astley's Greatest Hits
19:06:06 <ehird_> ais523: I guess they misinterpreted the popularity
19:06:21 -!- RedDak has quit (Remote closed the connection).
19:09:22 <ehird_> ais523: my pastebin needs a catchy name
19:09:22 <ehird_> how about
19:09:26 <ehird_> PASTERAMA2000
19:09:30 <ais523> ehird_: maybe
19:09:37 <ais523> what will the URL be?
19:09:44 <ehird_> ais523: pb.eso-std.org probably
19:09:48 <ehird_> i could call it Peanut Butter
19:09:56 <ehird_> i mean, peanut butter is kinda pastey
19:09:59 <ehird_> and PB..
19:10:06 <ehird_> but peanutbutter is kind of a long name
19:10:10 <ehird_> i need an abbreviation
19:10:16 -!- jix has quit (Nick collision from services.).
19:10:18 <ais523> ehird_: call it Peanut Butter
19:10:21 <ais523> but put pb in the URL
19:10:26 -!- jix has joined.
19:10:27 <ehird_> ais523: yes, but what about my code
19:10:37 <ais523> ehird_: should be trivial to change
19:10:45 <ais523> you're storing the name of the pastebin in a global, right?
19:11:49 <ehird_> ais523: I mean my namespace name
19:11:50 <ehird_> :<
19:12:00 <ais523> ehird_: what namespace name?
19:12:08 <ais523> you could just use pb for that too if it's an internal identifier
19:13:50 <ehird_> ais523: lib/peanutbutter/...
19:13:56 <ehird_> so not really that internal
19:13:57 <ehird_> and
19:13:59 <ehird_> the module name
19:14:01 <ehird_> PeanutButter
19:16:59 <ehird_> ais523: so not really internal
19:17:56 <oklopol> ehird_: pee butt?
19:18:34 <ehird_> oklopol: no
19:24:56 <ehird_> ais523: i guess i'll call it pb
19:30:10 <ehird_> ais523: prepared to brush up on your ruby to write a magical intercal highlighter? :-)
19:32:46 <ehird_> ais523: i'll take that as no
19:32:57 <ais523> ehird_: I don't know ruby
19:33:07 <ehird_> ais523: which is hwy i said brush up
19:33:08 <ehird_> :-P
19:33:54 <sauxdado> why wouldn't you write it in intercal? :)
19:34:08 <ehird_> sauxdado: heh
19:34:21 <ehird_> ais523: my directory tree is crazy
19:34:30 <ehird_> pastebin/lib/pb/controllers/paste.rb
19:36:21 <ais523> what's the opposite of <3?
19:36:41 <sauxdado> </3
19:36:48 <ehird_> ais523: >=3
19:36:50 <ehird_> haha
19:36:55 <ehird_> (That was a lame joke)
19:37:13 <ais523> well, I </3 and/or >=3 langs insisting on a certain directory structure
19:37:36 <ehird_> ais523: ruby doesn't do that
19:37:38 <ehird_> i just do that
19:37:42 <ehird_> well
19:37:45 <ehird_> most of it is convention
19:37:49 <ehird_> pastebin/ is just my project dir
19:37:55 <ehird_> you have lib/ and two things in it:
19:38:02 <ehird_> project.rb and project/*
19:38:09 <ehird_> ais523: that's so that: require "project" works
19:38:14 <ehird_> generally project.rb requires most of the directory ones
19:38:31 <ehird_> now, in lib/pb/ i wanted to divide it into models and controllers (the view is out of lib/)
19:38:38 <ehird_> so lib/pb/{models,controllers}
19:38:43 <ehird_> so pastebin/lib/pb/controllers
19:38:46 <ehird_> then i just added a controller name to it
19:38:50 <ehird_> pastebin/lib/pb/controllers/paste.rb
19:40:31 <ehird_> ais523: I wouldn't need that if I didnt want it to be a regular ruby library.
19:40:36 <ehird_> I could have pastebin/controllers/paste.rb
19:40:44 <ehird_> Do you think I should do that?
19:40:55 <ais523> ehird_: I have no idea how ruby libraries work anyway
19:41:05 <ehird_> ais523: Ruby has a load path.
19:41:09 <ehird_> require "x" looks for x.rb in the load path.
19:41:17 <ehird_> require "x/foo" looks for x/foo.rb in the load path.
19:41:26 <ehird_> ais523: You can abuse that to get a modular package structure, where x.rb loads most things
19:41:33 <ehird_> and you can cherry-pick the rest as "x/foo"
19:41:39 <ehird_> It's convention.
19:41:56 <ehird_> ais523: Now, because you have things like tests and such, you put that in lib/ (and because x.rb would get lost in a project root).
19:42:04 <ehird_> So I just subdivided it a bit further for MVC.
19:44:30 <oklopol> s/pee/pea ofc
19:44:36 <oklopol> what was i thinking
19:45:54 -!- Ricardo0 has joined.
19:46:00 -!- Ricardo0 has left (?).
19:56:36 <ehird_> ais523: http://pastebin.ca/1000720
19:56:37 <ehird_> that's pretty
19:57:18 <sauxdado> does <<- mean "monadic bind"?
19:58:24 <ehird_> sauxdado: no
19:58:27 <ehird_> it's a heredoc
19:58:28 <ehird_> :-)
19:58:37 <ehird_> the - means that the ending delimiter can be indented
19:58:43 <sauxdado> oh :)
19:58:47 <ehird_> sauxdado: and #{...} is string interpolation
19:58:52 <ehird_> so that defines a method for each of the http methods
19:58:56 <ehird_> which just returns an http method not allowed
19:59:31 <sauxdado> so the thing between EOS is a string, even though it gets highlighted as ruby code
19:59:57 <sauxdado> i guess that's a good feature if it's consistent
20:00:14 <ehird_> sauxdado: that's just a pastebin.ca bug
20:00:33 <ehird_> but regardless, i doubt doing the kind of stuff i did there is nice in other languages :-)
20:00:36 <ehird_> lisp, sure
20:00:41 <ehird_> but that's only compile-time, it must be mentioned
20:00:52 <ehird_> sauxdado: oh, and %w(a b c) is ["a","b","c"]
20:01:05 <ehird_> and sequences respond to .each, and they yield their values to the block
20:01:13 <ehird_> and @ denotes an instance variable
20:01:18 <ehird_> and now that i've said that, bye for about an hour
20:01:19 <ehird_> :-)
20:01:22 <sauxdado> bye :)
20:14:51 -!- Sgeo has joined.
20:14:58 -!- ais523 has quit (Remote closed the connection).
20:15:26 -!- ais523 has joined.
20:19:45 -!- sebbu has joined.
20:24:29 <GregorR> http://206620.spreadshirt.com/us/US/Shop/Article/Index/article/Rule-110-2978217 // a T-shirt to contend with the awesomeness of "People from the Internet"
20:25:19 <Slereah> Is rule 110 the 2,3 machine?
20:25:40 <GregorR> Uh, no.
20:25:49 <GregorR> Rule 110 is an elementary cellular automata.
20:25:53 <Slereah> Oh.
20:27:35 -!- evincar has joined.
20:27:44 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
20:27:44 <ais523> rule 110 is a lot simpler and nicer than the Turing machine
20:27:50 <ais523> which has a nasty number in the 500000s
20:27:58 <evincar> Hello all.
20:28:06 <evincar> What am I missing?
20:28:10 <GregorR> http://206620.spreadshirt.com/us/US/Shop/Article/Index/article/Rule-110-2978217 // a T-shirt to contend with the awesomeness of "People from the Internet"
20:28:12 -!- Slereah has joined.
20:28:19 <ais523> Slereah:
20:28:23 <ais523> <ais523> rule 110 is a lot simpler and nicer than the Turing machine
20:28:23 <ais523> [20:29] <ais523> which has a nasty number in the 500000s
20:29:04 <Slereah> Wikipedia sez that one of its difference with a TM is that it has no halting state.
20:29:08 <AnMaster> ais523, what number?
20:29:08 <Slereah> But so do most TM D:
20:29:11 <AnMaster> how do you define them
20:29:18 <ais523> AnMaster: can't remember offhand, Wikipedia's bound to know
20:29:40 <GregorR> ais523: You, on the other hand, SHOULD have a T-shirt with the 2,3 machine (doing something) on it. And on the back, it should say "That's right ladies, he's available."
20:29:42 <GregorR> :P
20:29:49 <ais523> GregorR: not quite that
20:29:58 <ais523> I do have a supply of 2,3 T-shirts, though
20:30:09 <GregorR> Awesome X-D
20:30:13 <Slereah> But are you available?
20:30:15 -!- Sgeo has changed nick to Sgnomic.
20:30:26 <ais523> Slereah: depends on who's asking
20:30:34 <Slereah> I'll go buy flowers.
20:30:46 -!- Sgnomic has changed nick to Sgeo.
20:31:35 <ais523> 596440, if anyone's interested
20:31:50 <ais523> but that's a different numbering scheme from rule 110, because it's a different type of automaton
20:33:58 -!- Judofyr has joined.
20:43:28 <evincar> So I had another language idea, which I'm going to post on the wiki once the spec is complete.
20:43:31 <evincar> You guys are going to love this.
20:44:35 <ais523> evincar: looking forward to it
20:45:51 <evincar> ais523: If all other statements are arithmetic or I/O operations, then the jump operation must be conditional for Turing completeness, correct?
20:46:22 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
20:46:28 <ais523> evincar: if you only have one control-flow command, it has to be conditional on /something/ for TCness
20:46:55 -!- Judofyr has joined.
20:46:57 <evincar> That's what I though.
20:47:02 <evincar> thought*
20:48:43 <evincar> This is beyond ridiculous.
20:48:54 <evincar> This is beyond *Chef* ridiculous.
20:49:22 <ais523> evincar: unless the other statements are conditional on something instead
20:49:28 <ais523> but then they're flow-control in disguise
20:49:43 <ais523> such as Fractran, for instance
20:49:47 <evincar> No, they're all variable-manipulation.
20:49:55 <ais523> evincar: Fractran is just variable-manipulation
20:50:03 <ais523> but conditional on whether the result's an integer or not
20:50:07 <ais523> that's enough for TCness
20:50:20 <evincar> Which is badass in itself.
20:50:33 -!- timotiis_ has joined.
20:53:05 -!- olsner has quit ("Leaving").
20:56:56 -!- ais523 has changed nick to ais523|busy.
21:01:52 -!- RedDak has joined.
21:02:33 -!- timotiis has quit (Success).
21:05:22 -!- Dagide has joined.
21:13:42 -!- timotiis has joined.
21:19:58 -!- timotiis_ has quit (Read error: 113 (No route to host)).
21:22:29 -!- RedDak has quit (Read error: 110 (Connection timed out)).
21:31:47 -!- Iskr has quit ("Leaving").
21:33:48 -!- ais523|busy has changed nick to ais523.
21:36:53 <evincar> ais523: Done.
21:36:55 <evincar> http://esoteric.voxelperfect.net/wiki/Alchemy
21:37:00 <evincar> ...ish.
21:38:16 <ais523> you've double-pasted parts of it
21:38:35 <evincar> Crap!
21:39:17 <ais523> oh, and I'll have to make my Alchemy interps, if I ever write any, suid nobody, so they can't delete my files
21:40:10 <evincar> Heh.
21:40:20 <evincar> You better.
21:41:01 <evincar> It's not impossible, but it is mildly ridiculous.
21:43:48 <evincar> Hmm... now how should I cat this...
21:49:57 <bsmntbombdood> so, guys, which calculator should i get?
21:50:01 <bsmntbombdood> hp-48sx/gx, hp-12/15/16, or hp-18/28
21:56:19 <evincar> Hard to find info on these.
21:56:31 <evincar> I like the first.
22:01:49 <bsmntbombdood> so do i
22:01:52 <bsmntbombdood> but the others are classic
22:09:06 -!- Corun has changed nick to Rucon.
22:09:35 <ais523> who here was implementing MIPS in JavaScript?
22:09:50 <ais523> According to Slashdot, there's now a JavaScript version of parts of the Java Virtual Machine
22:11:22 <evincar> That's so very pointful.
22:11:29 <ais523> I agree
22:11:44 <ais523> JavaScript > Java
22:12:18 <evincar> It makes so much more sense.
22:12:22 <evincar> And it doesn't even try as hard. ^_^
22:12:29 -!- Rucon has changed nick to IceRhymers.
22:12:50 <ehird_> back
22:12:51 <evincar> Of course, I've had bad experiences with Java.
22:12:55 <ehird_> sauxdado: btw, it's ruby code
22:13:25 <evincar> Hey, ehird_. I posted a new lang for you to ogle.
22:13:48 <evincar> http://esoteric.voxelperfect.net/wiki/Alchemy
22:14:18 <ehird_> <ais523> who here was implementing MIPS in JavaScript?
22:14:19 <ehird_> GregorR:
22:14:26 <ehird_> he's still doing it
22:14:42 <ehird_> <ais523> JavaScript > Java <-- truth. JavaScript has first-class closures, a good prototype-based object system, ...
22:14:47 <ehird_> It's just that browser JS impls suck
22:14:47 <ehird_> :)
22:14:50 <ais523> ehird_: yes, I know
22:14:55 <ais523> and browser JS impls are getting better
22:14:58 <evincar> Definitely.
22:15:01 <ais523> Konqueror's is great, for instance
22:15:05 <ais523> and Firefox's is now at least usable
22:15:20 <evincar> How do you all feel about ActionScript?
22:15:24 <evincar> I'm torn.
22:15:39 <evincar> On the one hand, it's accessible, fairly simple, Javascriptlike...
22:15:44 <evincar> On the other...
22:15:47 <evincar> Well, ew.
22:15:49 <evincar> Just ew.
22:16:07 <GregorR> ehird_: I would argue that JavaScript's syntax (for prototypes in particular) is unfortunate.
22:16:11 <GregorR> But I like the language otherwise.
22:16:31 <ehird_> <GregorR> ehird_: I would argue that JavaScript's syntax (for prototypes in particular) is unfortunate. <-- I would argue that Plof's syntax, for conditionals in particular, SUCKS!
22:16:40 <sauxdado> haha
22:16:45 <ehird_> evincar: ActionScript is a derivative of ECMAScript.
22:16:50 <ehird_> evincar: So it IS javascript.
22:16:59 <ehird_> sauxdado: seriously -- if(x, {...}, {...})
22:17:02 <ehird_> who wants to write that
22:17:26 <GregorR> if(a > b, ( printf("Oh my god, he used a parenthesis!"); ), else, ( printf("Oh, it uses 'else', so ehird_ is of course wrong!") ));
22:17:37 <evincar> ehird_: In effect, yes. But they've welded on some features that don't quite gel.
22:18:01 -!- IceRhymers has changed nick to Corun.
22:18:32 <ehird_> GregorR: that's not plof2
22:18:44 <GregorR> ehird_: No, it's Plof3. I abandoned Plof2 for a reason.
22:20:18 <ehird_> GregorR: http://pastebin.ca/1000949
22:20:21 <ehird_> QED
22:20:48 <GregorR> Soooo, you declare it to be true, therefore it's true? :P
22:21:00 <GregorR> My 'if' is actually a function, your 'if' is a language intrinsic. Language intrinsics suck. QED.
22:21:08 <evincar> GregorR: isn't that how esoteria works? ^_^
22:21:33 <evincar> "What I say goes because I said so and because it's awesome."
22:21:59 <sauxdado> conditionals suck.
22:22:08 <GregorR> TURING COMPLETENESS IS FOR FAGS
22:23:23 <evincar> GregorR! How dare you!
22:23:34 <evincar> Unless you're referring to Turing's sexuality, of course.
22:23:39 <evincar> In which case, have at it.
22:24:07 <Slereah> Well, Church was no fag!
22:24:08 <evincar> I avoid writing non-tc languages if I can help it, though.
22:24:12 <ais523> wow, the wiki is unusually active at the moment
22:24:38 <ehird_> <GregorR> My 'if' is actually a function, your 'if' is a language intrinsic. Language intrinsics suck. QED.
22:24:39 * GregorR begins writing Church-Turing slash fiction.
22:24:40 <ehird_> (if x y z)
22:24:48 <ehird_> Non-ugly, non-instrinsic.
22:25:05 <GregorR> Soooooo, (if x y z) good, if(x, y, z) bad?
22:25:18 <GregorR> I believe this comes down to something like "UNRECOGNIZED SYNTAX ABORT ABORT ABORT"
22:25:25 <ehird_> GregorR: (if x y z) good, if(x, (y), else, (z)) bad, especially when you write the latter indented C-style
22:25:34 <ais523> DO statement WHILE statement
22:25:36 <ehird_> c style indentation only works when you have C-style or ALGOL-style syntax
22:25:38 <ais523> that can be an IF sometimes
22:25:40 <ehird_> otherwise it's ugly
22:25:42 <ais523> but normally it's a lot weirder
22:25:59 <pikhq> Yo.
22:26:10 <ais523> hi pikhq
22:27:28 <sauxdado> C is pretty special
22:27:35 <sauxdado> 8-space tab stops actually make sense in C
22:27:41 <ais523> sauxdado: not the way I write it
22:27:47 <ais523> when using an 80-char-wide screen
22:27:50 <ais523> I prefer 2-space tabs
22:28:10 <ehird_> ais523: use hard tabs
22:28:12 <ehird_> then you can choose
22:28:13 <ehird_> :-)
22:29:03 <evincar> I use the tab character and indicate in comments that I use 4-space tabs.
22:29:16 <evincar> People should change their editors accordingly if they know what's good for them.
22:29:52 <sauxdado> k&r style is 8-space tabs, and it looks nice.
22:30:00 <sauxdado> i'm not saying other styles are not possible
22:30:11 <sauxdado> but in many other languages, 8-space tabs wouldn't make any sense at all.
22:30:19 <sauxdado> while in C they can work
22:30:52 <pikhq> ais523: Do you do GNU stlye? :p
22:31:07 <sauxdado> gnu style is so funny
22:31:09 <ehird_> pikhq: Please die. In a fire.
22:31:10 <ais523> pikhq: no
22:31:10 <pikhq> Style, even.
22:31:28 <pikhq> Occasionally, I use it, but mostly, I prefer K&R style.
22:31:34 <ais523> I line up braces to the left of the block that they contain, level with the block that contains them
22:31:39 <ais523> and braces have their own lines
22:31:50 <sauxdado> what i don't understand about gnu style is how could somebody even come up with it.
22:32:17 <ais523> sauxdado: it does make it easy to identify Emacs users, though
22:32:22 <pikhq> RMS' brain was Lisp-tinged.
22:32:35 <ais523> one of my lecturers was really impresseed when I looked at their slide and said "Hey, you use Emacs, don't you?"
22:32:36 <sauxdado> gnu style doesn't really look lispy
22:32:38 <pikhq> And his Lisp apparently involved a horrid style, even then.
22:32:42 <sauxdado> lisp is not gratuitously baroque
22:32:58 <pikhq> ais523: Emacs' automatic formatting can be set to K&R style.
22:33:11 <ehird_> pikhq: GNU is the default.
22:33:14 <ais523> pikhq: I set its autoformat to BSD-style
22:33:15 <ehird_> GNU = Emacs is a good guess.
22:33:17 <ais523> but it's GNU by defualt
22:33:22 * pikhq nods
22:33:22 <ehird_> Nobody would code GNU style using vi!
22:33:25 <ehird_> I hope
22:33:36 <pikhq> It's possible.
22:33:44 <pikhq> Probably harder to pull off.
22:33:57 <pikhq> You'd be better off just running it through format.
22:34:02 <ais523> ehird_: GNU probably code GNU style using vi, they can't all be Emacs users
22:34:17 <ehird_> ais523: ewww
22:34:23 <ehird_> pikhq: Or killing yourself.
22:34:54 <pikhq> ehird_: You know, Gregor's if(x, y, else, z) is just the natural result of doing C-esque syntax with everything as a function. ;)
22:35:25 <evincar> pikhq: It's true.
22:35:25 <ehird_> pikhq: Yeah - it doesn't fit C-esque syntax.
22:35:32 <ehird_> It's fugly.
22:35:41 <evincar> ehird: Play nice.
22:35:46 <pikhq> (and a hell of a lot better than what he had Plof 1 doing. if(x, y); else(z); ? What the fuck where you thinking, Gregor!?! :p)
22:36:25 <pikhq> IIRC, I'm one of two people to know Plof 1. :p
22:36:29 <evincar> I wrote a (non-eso) lang a while back that treated if, else, and related constructs as operators, which functioned similarly.
22:36:29 <ehird_> pikhq: was that .. in a global stack or something
22:36:52 <ais523> I laughed out load at pikhq's last-but-one sentence
22:36:59 <ais523> and got a funny look from the person sitting next to me
22:37:03 <ais523> s/load/loud/
22:37:06 <evincar> if(x){...} returns true if (x) is true, and (x) else {...} executes ... if x is false, so it all works out.
22:37:11 <pikhq> ehird_: Global variable. That changed about as soon as I got remotely involved with std.plof.
22:37:44 -!- Dagide has quit (Remote closed the connection).
22:38:20 <ehird_> pikhq: nested if/elses? it mustve been a stack.
22:38:57 <pikhq> I don't remember the exact design, just that it was horrid.
22:39:44 <ais523> evincar: I don't think the idea of destructive action on error is yours, BTW
22:39:53 <pikhq> And the version(x as string, y as function) intrinsic? Painful.
22:39:55 <ais523> BAK required program files to have a .BAK extension, presumably to confuse DOS
22:40:13 <ais523> and in Homespring dot-space-dot and space-dot-space are defined to cause temporal paradoxes
22:40:21 <evincar> ais523: It's mine. I just might not be the first to do come up with it.
22:40:31 <ais523> evincar: I didn't word that properly
22:40:31 <evincar> s/do come/come/
22:40:35 <pikhq> (that equals, IIRC, Plof 2's if(version[x], y). Is that feature in Plof 3 yet?)
22:40:39 <ais523> DO COME FROM (1)
22:40:48 <evincar> ais523: Ha!
22:41:51 <evincar> ais523: I just need to come up with a list of standard elements.
22:42:07 <evincar> And maybe I should make them water-soluble only if their substance number is odd...
22:42:17 <GregorR> pikhq: No, not yet, need hashes first.
22:42:24 <evincar> That would be far less transparent than Aqua.
22:42:50 <pikhq> GregorR: I'll have time this summer.
22:43:15 <GregorR> pikhq: You're one of two people who knows Plof 1? Who's the other? ;)
22:43:23 <pikhq> You.
22:43:31 <pikhq> At least, I *assume* you know it.
22:43:33 <GregorR> That was what we here on Earth call a joke X_X
22:43:36 <pikhq> I mean, you *did* design it.
22:43:46 <pikhq> Sorry; I'm slightly tired still.
22:43:53 <pikhq> Let my brain get caught up.
22:44:13 * pikhq imagines his brain running around without me
22:46:07 <bsmntbombdood> http://cgi.ebay.com/Hewlett-Packard-HP-48gx-Graphic-Calculator_W0QQitemZ320243046337QQcmdZViewItem
22:46:14 <bsmntbombdood> only $41 with 4 hours left...
22:46:49 <ehird_> bsmntbombdood: go for it
22:46:53 <ehird_> we expect RPL bf interps
22:47:12 <bsmntbombdood> :D
22:47:19 <bsmntbombdood> i'm afraid it'll just be a waste of money
22:47:57 <pikhq> I expect, at the very least, a Brainfuck interpreter compiled for it.
22:48:06 <pikhq> And hope for an RPL interpreter, instead. ;)
22:48:18 <pikhq> (mmm. . . Reverse Polish Lisp. . .)
22:48:25 <bsmntbombdood> i've never coded any rpl
22:49:02 <pikhq> Shame.
22:49:29 <bsmntbombdood> indeed!
22:49:39 <bsmntbombdood> http://cgi.ebay.com/Hewlett-Packard-HP-12c-Scientific-Calculator-gold_W0QQitemZ370044620652QQcmdZViewItem
22:49:42 <bsmntbombdood> that's a good price too
23:00:09 <evincar> Do any of you ever feel like the eso community is always waiting for the next big thing?
23:00:31 <ais523> evincar: not always
23:00:31 <evincar> Sometimes I think that it may never come, sometimes I think I'll be the one to bring it.
23:00:40 <ais523> the rest of the time I think the next big thing is coming right now
23:01:52 <evincar> Heh.
23:02:01 <evincar> It really feels that way when you've got a good idea.
23:02:16 <ais523> I'm excited about several of my langs
23:02:26 <ais523> three of which show worrying signs of being practical
23:02:35 <ais523> even more worryingly, one of them is INTERCAL
23:02:40 <evincar> Heh.
23:02:49 <pikhq> What's worrying is Gregor working on any serious project. :p
23:03:04 <pikhq> I'm sorry, but after seeing ORK and Glass, the idea scares me. :p
23:03:18 <evincar> pikhq: Ha. Polite ribbing borders on abuse.
23:03:26 <evincar> ais523: Practical langauges aren't bad.
23:03:30 <evincar> languages*
23:03:38 <pikhq> evincar: I feel justified in this.
23:03:48 <pikhq> (having done some work on said serious projects with him. :p)
23:03:49 * ais523 actually likes Glass
23:06:22 * evincar dislikes the usage of magic classnames.
23:06:51 <pikhq> Magic classnames?
23:06:56 <evincar> The only place that's acceptable is in a language like perl, where *everything* is intentionally automagical.
23:07:08 <pikhq> As in: Enchantment Creature -- Elemental?
23:07:10 <pikhq> :p
23:07:12 <evincar> Class O is for output...
23:07:18 <evincar> Class I is for input...
23:07:32 <evincar> It always seems tacked-on whenever I see that in an eso lang.
23:08:05 * evincar high-fives pikhq for the MTG reference.
23:08:20 <pikhq> Speaking of which. . .
23:08:26 <pikhq> I have fairly insane card ideas.
23:09:03 <evincar> Can't trump my Sheep Deck.
23:09:36 <pikhq> Instant Land - Forest (may be played whenever you could play an instant, counts towards the number of lands you may play per turn, has "T: Add G to your mana pool." when on the stack, and has a converted mana cost of 0.) Target Forest permanent becomes a 2/2 Treefolk creature until end of turn.
23:09:48 <evincar> Shepherd (2/2 for 2+green): Tap green, put a 0/1 sheep token into play.
23:10:00 <ais523> hey, I helped to work on Magic: the Esolang
23:10:12 <ais523> and I thought sheepizing things was blue
23:10:17 <ais523> as in Ovinise, for instance
23:10:20 <evincar> Generally, yes.
23:10:28 <evincar> But the Sheep Deck is green.
23:10:31 <pikhq> White also gets that mechanic from time to time.
23:10:33 <evincar> Because I said so.
23:10:40 <evincar> ^_^
23:10:44 <evincar> You could really make it any colour.
23:10:44 <ais523> pikhq: not on lands, though
23:10:48 <pikhq> (most recently in Shadowmoor, courtesy of hybrid)
23:10:48 <ais523> only generating the tokens
23:11:23 <pikhq> Oh.
23:11:24 <evincar> Graze: Tap X green, all sheep get +X/+X until end of turn.
23:11:30 <pikhq> You're discussing my Instant Land idea?
23:11:51 <pikhq> evincar: For bombs, add in some changelings.
23:12:00 <ais523> pikhq: the rules say that you can't play lands in the opponent's turn even if they somehow get flash
23:12:10 <ais523> but you can flash them in your own turn
23:12:15 <pikhq> ais523: Obviously, the rules would need to be changed for said insanity.
23:12:27 <evincar> Heh.
23:12:36 <evincar> I've been playing with a rather interesting rule change lately.
23:12:39 <ais523> there's the land-morph-played-as-creature+Delay scenario, for instance
23:12:48 * pikhq gets a kick out of "has T: Add G to your mana pool when on the stack."
23:13:06 <evincar> To prevent mana screw, all cards can be played as basic land.
23:13:11 <ais523> oh, and when doing Unhinged they realised there were no rules against tapping cards in libraries
23:13:19 <ais523> just no card allowed you to do that
23:13:30 <pikhq> Same applies to the stack and your graveyard.
23:13:33 <pikhq> And possibly your hand.
23:13:41 <evincar> ais523: I can just see a deck with a random sideways card.
23:13:52 <ais523> they made Infernal Spawn of Infernal Spawn of Evil a real card!
23:14:01 <ais523> it was in Coldsnap, with a more sensible name
23:14:20 <pikhq> They also redid The Cheese Stands Alone.
23:14:22 <ais523> BTW, the Magic: the Esolang example on the wiki's still stuck back in Ravnica
23:14:33 <pikhq> Shameful.
23:14:42 <ais523> pikhq: maybe write a second program?
23:14:48 <pikhq> Hmm.
23:14:53 <ais523> I was pretty pleased when I put the example program up, and someone else actually bugfixed it
23:15:06 <ais523> it means someone took the time to understand how it worked
23:15:39 <pikhq> (which must obey usual deckbuilding rules, except that a deck may end with an infinite amount of basic land).
23:15:56 <pikhq> There's no reason in the Comprehensive Ruleset for the deck to not end with an infinite amount of basic land.
23:16:15 <ais523> pikhq: there is, it says the deck has to be small enough to be reasonably shufflable
23:17:30 <evincar> I just found a lang that I made three years ago!
23:17:31 <pikhq> And "reasonably shufflable" does not apply when you assume a Turing machine.
23:17:47 <ais523> anyway, you get to order M:tE decks before you start
23:17:51 <ais523> and don't have to shuffle them
23:17:54 <ais523> evincar: is it any good?
23:18:15 <pikhq> BTW, it's easy to make an infinite loop using that.
23:18:18 <ehird_> Magic is like a nomic.
23:18:36 <pikhq> Particularly with the recent untap mechanic.
23:18:38 <evincar> Kind of. The most esoteric aspects of it are that the syntax can be changed...
23:19:06 <evincar> ...and arguments to functions are given via global variables, because there's no other argument-passing mechanism.
23:19:26 <evincar> There's a standard library from which you can import and create aliases.
23:19:28 <ehird_> evincar: I meant the card game
23:19:33 <sauxdado> that's not very esoteric
23:19:38 <sauxdado> (arguments via global variables)
23:19:44 <sauxdado> that's how Basic worked
23:19:46 <evincar> No, not very.
23:19:50 <pikhq> 2 Forest, 1 Earthcraft, 1 Fertile Ground, 1 Pili-Pala.
23:19:52 <evincar> The meaning of each program line is given by a sigil.
23:19:58 <pikhq> One infinite loop: check.
23:20:02 <sauxdado> (basic with gosub)
23:20:14 <evincar> ehird_: You mean the sheep deck?
23:20:19 <ehird_> evincar: No.
23:20:23 <ehird_> Just Magic
23:20:47 <pikhq> (Earthcraft: Tap 1 creature you control: untap 1 land you control. Pila-Pala: 2, Q: Add one mana of any color to your mana pool.)
23:21:16 <evincar> Understanding Breakdown Explosion!
23:21:19 <ehird_> I don't play Magic. :P
23:21:25 <pikhq> (Q is the untap symbol.)
23:21:26 <evincar> Oh.
23:21:32 <evincar> Yeah, it's pretty fun.
23:21:49 <ais523> evincar: does that generate infinite mana?
23:21:54 <ais523> only with a double land, it seems
23:22:06 * ais523 hasn't played M:tG recently
23:22:11 <ais523> I own no card more recent than Lorwyn
23:22:16 <ais523> so I didn't stop that long ago
23:22:22 <ais523> I left when my local Magic group put up prices
23:22:40 <evincar> Oh, I forgot. Graze is an instant.
23:23:03 <pikhq> ais523: Find a different group, have fun with Shadowmoor.
23:23:04 -!- jix has quit ("CommandQ").
23:23:08 <pikhq> Release is on the 2nd.
23:24:12 <evincar> I forget the name of my favourite Sheep card. It's something like "Sheep Stampede". Has trample, gets +1/+1 for each sheep token you control.
23:24:45 * ehird_ has never ever played mtg
23:24:46 <pikhq> Sounds like an Elf.
23:27:33 <ais523> what to the people here think of http://esolangs.org/wiki/Burn, by the way
23:27:39 <ais523> I found it lying around on my hard-disk
23:27:55 <ais523> if anyone can explain it to me, pieced together with my fragments of memory of what it did, I'd be grateful
23:30:14 <Slereah> No details at all?
23:31:00 <ehird_> ais523: Turtles
23:31:36 <ais523> Slereah: the program was tiled across 2D space
23:31:37 <ehird_> ais523: Hmm
23:31:42 <ais523> and one of the pixels was changed to start it off
23:31:51 <ais523> also, all changes to the memory were irreversible
23:31:52 <ehird_> 1. Ignore program 2. Run Rule 110
23:31:57 <ehird_> Right?
23:31:59 <ais523> no pixel could ever return to a previous state
23:32:03 <ais523> and it wasn't a cheat lang
23:32:09 <ehird_> :)
23:32:55 <ais523> also, it was a cellular automaton in that each pixel only depended on its own state and that of its neighbours
23:32:58 <ais523> I think 4-neighbours
23:33:16 <ais523> and all pixels changed simultaneously in steps, cellular-automaton style
23:33:19 -!- evincar has quit ("ChatZilla 0.9.81 [Firefox 2.0.0.14/2008040413]").
23:34:58 <ehird_> ais523: And fluggamaras
23:35:30 <ais523> ehird_: ?
23:35:39 <ehird_> ais523: strue
23:37:41 -!- ais523 has quit ("TypoQ ecxeeded").
23:38:38 <Slereah> How was the input done?
23:44:27 <ehird_> Slereah: hes gone
23:44:39 <ehird_> sauxdado: What's with the nick?
23:45:02 <sauxdado> ehird_: it's a cool esperanto word. I'm learning esperanto.
23:45:47 <ehird_> sauxdado: What does it mean?
23:46:44 <sauxdado> it means saudade, which is a portuguese word.
23:47:02 <pikhq> Well, now I have a clue to pronounce it.
23:47:12 <ehird_> sauxdado: what does saudade mean
23:47:20 <Slereah> Oh, I know that one!
23:47:26 <pikhq> Nu...
23:47:32 <pikhq> Vi parolas Esperanton...
23:47:44 <ehird_> pikhq: WHUT DOES SAUXDADO MEAN
23:47:46 <ehird_> BTICH!
23:47:48 <pikhq> ehird_: Not a clue.
23:47:55 <ehird_> >:|
23:47:56 * pikhq hits lernu
23:48:23 <pikhq> Nostalgia.
23:48:40 <sauxdado> ehird_: http://en.wikipedia.org/wiki/Saudade
23:48:45 <Slereah> Sort of.
23:49:31 -!- timotiis has quit (Connection timed out).
23:50:10 <ehird_> sauxdado: Depressing!
23:52:09 <sauxdado> it's a good emotion and a good word.
23:55:01 <sauxdado> pikhq: mi eklernis kaj nur scias kelkajn vortojn
←2008-04-27 2008-04-28 2008-04-29→ ↑2008 ↑all