â†2008-08-17 2008-08-18 2008-08-19→ ↑2008 ↑all
00:01:22 <oklopol> CakeProphet: it's possible if the language is reversible.
00:09:21 -!- GregorR has joined.
00:11:28 -!- tritonio__ has quit (Remote closed the connection).
00:13:04 <CakeProphet> GregorR, it is it "gregor er" or "Gregor arr"
00:13:26 <GregorR> ... R is the initial of my surname, it's Gregor R.
00:13:48 <GregorR> So, "Gregor arr" ... sort of.
00:13:48 <CakeProphet> ir perhaps it is a purr
00:13:51 <CakeProphet> like Gregorrrrrrrr
00:13:58 <GregorR> Then it wouldn't be capitalized :P
00:14:28 <CakeProphet> psh, I only care about capitalization when I'm programming.
00:17:55 <GregorR> And yet you're correctly capitalizing 'I' :P
00:24:43 -!- CakeProphet has quit (Remote closed the connection).
00:37:47 -!- GregorR has quit ("Leaving").
00:38:05 -!- Corun has quit ("This computer has gone to sleep").
00:41:35 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | well then you would have made a super-turing machine, obviously :).
00:55:13 -!- twistle has joined.
00:56:25 <twistle> I just invented an esoteric language.
00:56:59 <twistle> It's called TRUE(a reference to FALSE), and I'd like someone to clean up the wiki page for me
00:57:39 <twistle> Also, whatcha think of it?
00:57:43 <twistle> :)
01:15:14 <dogface> Ello.
01:17:06 <dogface> Just what do "add 'n pop" and such do?
01:18:01 <dogface> Also, it doesn't look Turing-complete, as the only storage you have is a stack; I think using a queue instead of a stack would make it both Turing-complete and harder to use. :-)
01:27:31 -!- Sgeo has joined.
01:30:01 <psygnisfive> a single stack is not sufficient
01:30:04 <psygnisfive> for TCness
01:37:42 <twistle> aw, phooey
01:38:06 <twistle> add n' pop means:
01:38:12 -!- jix has quit ("This computer has gone to sleep").
01:38:41 <twistle> add the two values on top of the stack, pop them, then push the result on
01:38:54 <psygnisfive> uh..
01:38:54 <psygnisfive> what?
01:38:59 <psygnisfive> that makes no sense
01:39:20 <psygnisfive> do you mean pop-pop-add-push?
01:39:25 <psygnisfive> because you cant add then pop
01:39:29 <psygnisfive> thats not how stacks work
01:39:37 <twistle> no,
01:40:00 <twistle> the stack goes from 1 2 to 3
01:40:04 <psygnisfive> right
01:40:08 <psygnisfive> thats pop pop add push
01:40:17 <psygnisfive> the + operation in forth, for instance
01:40:33 <psygnisfive> pops the top two values from the stack, adds them together, and then pushes the sum back onto the stack.
01:40:48 <twistle> Exactly what this does
01:40:51 <psygnisfive> yes
01:40:55 <psygnisfive> but why name it backwards?
01:41:05 <twistle> ?
01:41:14 <psygnisfive> it doesnt add the two values then pop them
01:41:22 <psygnisfive> it pops them first
01:41:25 <psygnisfive> then adds them
01:41:45 <psygnisfive> besides, why call it and and pop at all, why not just add?
01:43:09 <dogface> And what do rb and ra. do, exactly?
01:43:24 <dogface> "Subtract two numbers and tell me the result" is ambiguous.
01:47:52 <twistle> a b is the stack
01:48:00 <twistle> b is at the top
01:48:18 <twistle> rb would be b/a
01:50:16 <twistle> same order in ra.
01:50:50 <twistle> I added a hello world, by the way
01:52:00 <psygnisfive> so ra would be a/b?
01:54:36 <dogface> I think rb is b-a and ra. is b/a, or the other way around.
01:54:46 <dogface> Where b is the top element on the stack and a is under it.
01:55:12 <psygnisfive> then why not called them sub and div, respectively
01:55:19 <psygnisfive> or - and /
01:56:57 <dogface> Because it's esoteric. :-)
01:57:05 <psygnisfive> no its not, its forth!
01:58:25 <psygnisfive> someone should make a Fauxeteric language maker that will take a random normal language and assign random names and symbols to built in function names and keywords
01:58:31 <psygnisfive> maybe even syntactic items.
01:58:35 <twistle> No, it has the Tan Rabbi Up Eckhebber format, because it's simple, and yet esoteric. :)
01:58:53 <twistle> Sounds fun
01:59:09 <psygnisfive> LISP can become :fos^jdk``
01:59:19 <psygnisfive> instead of (- my-var)
01:59:20 <psygnisfive> !
01:59:24 <psygnisfive> it'll be brilliant!
01:59:37 <psygnisfive> ZOMG ITS ESOTERIC
02:00:32 <twistle> You, sir, have just had what we folks call an "esopiphany"
02:00:51 <psygnisfive> you sir dont get that im mocking you.
02:01:08 <twistle> You sir..............................
02:01:10 <twistle> .................
02:01:37 * twistle becomes suddenly interested in his shoelaces
02:02:51 <twistle> BTW, Did anyone notice in the "documentation" goto go_collect200dollars?
02:03:14 <twistle> Originally it was going to be goto jail
02:03:53 <twistle> There's a nice ring to tntntntntntntntntnup.Hello world!u.pup
02:04:39 <twistle> I feel fat, and sassy
02:06:36 <twistle> Ha! Your seat are untied!
02:08:01 <twistle> \fsd
02:08:09 <twistle> \v.ds\.f,s\,\f\d
02:08:18 * twistle shuts down
02:09:15 <twistle> Well, I'm off to the land of oz...I mean zig...
02:10:23 <twistle> Anyone is free to change the wiki page and morph TRUE into a completely different language
02:10:44 -!- twistle has quit ("sleeping. zzzzz...").
02:21:54 -!- CakeProphet has joined.
02:42:26 -!- CakeProphet_ has joined.
02:51:07 -!- CakeProphet has quit (Read error: 60 (Operation timed out)).
03:43:48 -!- CakeProphet_ has quit (Read error: 110 (Connection timed out)).
03:44:17 -!- CakeProphet_ has joined.
03:44:22 -!- CakeProphet_ has changed nick to CakeProphet.
04:15:27 <CakeProphet> GCC extends the C language with a unary && operator that returns the address of a label. This address can be stored in a void* variable type and may be used later in a goto instruction. For example, the following prints "hi " in an infinite loop:
04:15:30 <CakeProphet> oh lawd
04:15:48 <CakeProphet> so many arcane rules to C syntax.
04:18:04 <psygnisfive> C is lame.
04:19:28 <CakeProphet> I like C in some ways.
04:19:31 <CakeProphet> it's a terrible language design, but
04:19:48 <CakeProphet> I enjoy its low-levelness
04:20:09 <CakeProphet> (I'm sure if I were familiar with assembly I'd love its low-levelness more)
04:23:18 <CakeProphet> ...honestly
04:23:20 <CakeProphet> I think
04:23:25 <CakeProphet> a replacement for C would be nice.
04:23:41 <CakeProphet> something that occupies the same niche, but it is actually a "better" language.
04:38:41 <dogface> Is a language considered low-level if and only if the most obvious way to compile it is also the most efficient?
04:40:01 <psygnisfive> low level is a relative vague term
04:40:13 <psygnisfive> for instance, a lot of people would say that Java is low level compared to Lisp.
04:41:29 <dogface> Is there a point where a language is too high-level to be considered a programming language rather than a description language?
04:42:12 <CakeProphet> hahah... HTML?
04:42:27 <dogface> HTML doesn't describe the behavior of a program.
04:42:35 <CakeProphet> ah...
04:42:41 <CakeProphet> I thought by "description language" you meant
04:42:46 <CakeProphet> a language that... described something.
04:42:51 <dogface> Like a program.
04:43:57 <CakeProphet> From what I understand, I believe low-level means that the data structures and operators are in some way or another closely tied to their implementation in hardware.
05:35:15 <psygnisfive> dogface: do you mean description language as in
05:35:27 <psygnisfive> some language in which you define a problem, not an algorithm?
05:35:46 <psygnisfive> because if so, that sounds a lot like logic and constraint programming.
05:36:11 <dogface> Yep, that's what Imean.
05:36:21 <psygnisfive> well those are just different programming paradigms
05:36:25 <dogface> Time for me to go to bed. Good night.
05:36:25 <psygnisfive> they're still programming tho
05:36:31 <psygnisfive> just different primitive operations
05:36:42 <dogface> I haven't seen it taken as far as I'm taking it.
05:36:46 <psygnisfive> infact, not terribly different really.
05:36:52 <psygnisfive> dogface: example of your extremes?
05:36:59 <dogface> Though it's likely Z-notation is exactly what I'm after.
05:37:18 <dogface> Well, ideally, it'll be perfectly easy to translate ZFC into this language.
05:37:18 <psygnisfive> i'll notate your z's
05:37:20 <psygnisfive> ;O
05:37:27 <dogface> Thank you. :-)
05:37:27 <psygnisfive> ZFC?
05:37:41 * dogface begins catching (yes, ZFC) his Zs
05:38:04 <psygnisfive> zermelo-fraenkel set theory?
05:38:14 <psygnisfive> i think Prolog can do that easily
05:38:16 <dogface> Yes.
05:38:21 <dogface> Show me.
05:38:50 <psygnisfive> im not sure how it would, but i think it can
05:39:29 <psygnisfive> maybe. prolog is all based around horn clauses, so the notation will be kind of less standard than, say, normal first order logic, etc.
06:05:07 -!- CakeProphet_ has joined.
06:22:54 -!- Sgeo has quit ("Ex-Chat").
06:25:41 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
06:29:57 -!- GreaseMonkey has joined.
06:41:35 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | 'python netpong.py thathostname' => clien.
06:58:12 -!- CakeProphet_ has quit (Read error: 110 (Connection timed out)).
06:58:20 -!- CakeProphet_ has joined.
06:58:27 -!- CakeProphet_ has changed nick to CakeProphet.
07:46:37 <GreaseMonkey> ^bfcmd
07:46:38 <fungot> Registered: reverb echo partialecho rot13 bfself dvorak bertram wc
07:46:56 <GreaseMonkey> ^rot13 Hello World!
07:47:04 <GreaseMonkey> hmm... i think not.
07:47:20 -!- puzzlet_ has quit (Remote closed the connection).
07:47:24 -!- puzzlet has joined.
07:47:59 <fungot> Uryyb Jbeyq!.. ...out of time!
07:48:31 <GreaseMonkey> that is the slowest crap ever.
07:48:46 <GreaseMonkey> ^bfself
07:54:22 <fizzie> Well, it's a completely unoptimized ~12x70-character brainfuck interpreter that's running in a befunge interpreter. Cut it some slack.
07:55:24 <fizzie> It will probably be an order of magnitude faster once I get the "compiles bf to bytecode and combines consecutive +-<>" version done.
07:59:40 -!- Judofyr has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:25 -!- asiekierka has joined.
08:01:32 <asiekierka> Hello
08:01:49 <asiekierka> ^bfcmd
08:01:50 <fungot> Registered: reverb echo partialecho rot13 bfself dvorak bertram wc
08:01:52 <asiekierka> :O
08:01:54 -!- KingOfKarlsruhe has joined.
08:02:06 <asiekierka> ^dvorak qwerty
08:02:14 <fizzie> It will run out of time.
08:02:23 <asiekierka> yay, you're alive
08:02:34 <asiekierka> also, any ideas what caused the problem(s)?
08:02:38 <asiekierka> or
08:02:40 <asiekierka> i meant
08:02:45 <asiekierka> are there any bugs in fungotBF
08:03:09 <fungot> ...out of time!
08:03:40 <fizzie> No clear bugs that I know of. It has the "zero on eof" behaviour which is perhaps not that common, and is slow as molasses, but those are more like features.
08:04:09 <asiekierka> the zero on eof is not a bug, but a feature, for sure
08:04:17 <asiekierka> Because it's really easy to use 0 on eof, actually
08:04:27 <asiekierka> [(code lasting until eof here)]
08:04:33 <asiekierka> 1 on eof and no change is tons harder
08:04:52 <asiekierka> Especially no change on eof
08:05:05 <fizzie> I'm going to replace the current unoptimized interpreter with one that compiles the brainfuck first to bytecode (combining runs of +-<>) and interprets that. It will probably be quite a bit faster.
08:05:12 <asiekierka> :)
08:05:24 <asiekierka> By bytecode, do you mean befungecode or executable?
08:05:41 <asiekierka> If executable, you shouldn't. Really.
08:05:46 <fizzie> Just a string of fungespace values, just easier to interpret.
08:05:47 <asiekierka> If befungecode, you should. Really.
08:05:50 <asiekierka> oh
08:06:10 <asiekierka> I must run a BF self-interp on BFirc
08:06:34 <asiekierka> BFirc (latest revision) outputs a #13#10 after every message
08:06:35 <asiekierka> Yay.
08:06:54 <asiekierka> Thanks to it, Taking Over The World... works. :P
08:11:19 <asiekierka> I wonder how to make a BF ircbot that's good.
08:11:44 <asiekierka> BFirc basically inputs from a buffer and outputs to a buffer
08:11:59 <asiekierka> if #10 is output, it copies whatever's in the buffer as an irc message
08:12:16 <asiekierka> #13 is blocked
08:12:20 <asiekierka> so both #13#10 and #10 work
08:12:21 <asiekierka> :)
08:12:42 <asiekierka> And who the heck uses #13 only should be thrown to the depths of hell. Twice.
08:15:32 <KingOfKarlsruhe> ^bf +.[+.]
08:15:32 <fungot> .............................. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏ ...
08:17:00 <puzzlet> when would it is interrupted?
08:17:05 <puzzlet> be*
08:20:12 <asiekierka> ^bfcmd
08:20:12 <fungot> Registered: reverb echo partialecho rot13 bfself dvorak bertram wc
08:20:28 <asiekierka> ^bfcmd rot13 abcdefghijklmnopqrstuv
08:21:05 <asiekierka> zzzZZZzzz
08:21:11 <asiekierka> zzzZZZzzzZZZzzz... xD
08:22:39 <puzzlet> ^rot13 abcdefghijklmnopqrstuv
08:23:00 <puzzlet> ^bfcmd
08:23:01 <fungot> Registered: reverb echo partialecho rot13 bfself dvorak bertram wc
08:23:19 <asiekierka> oh wait a minute
08:23:20 <asiekierka> :(
08:23:23 <asiekierka> ^bfcmd rot13
08:23:23 <fungot> abcdefghijklmnopqrstuv
08:23:28 <asiekierka> Yayz, i broke my function
08:23:32 <asiekierka> Let me re-add it. *sigh*
08:23:38 <puzzlet> ^bfcmd echo hello
08:23:50 <asiekierka> You broke echo too now
08:24:02 <asiekierka> ^bfcmd rot13 +[,+[-[>+>+<<-]>[<+>-]+>>++++++++[<-------->-]<-[<[-]>>>+[<+<+>>-]<[>+<-]<[<++>
08:24:03 <asiekierka> >>+[<+<->>-]<[>+<-]]>[<]<]>>[-]<<<[[-]<[>>+>+<<<-]>>[<<+>>-]>>++++++++[<-------
08:24:03 <asiekierka> ->-]<->>++++[<++++++++>-]<-<[>>>+<<[>+>[-]<<-]>[<+>-]>[<<<<<+>>>>++++[<++++++++
08:24:03 <asiekierka> >-]>-]<<-<-]>[<<<<[-]>>>>[<<<<->>>>-]]<<++++[<<++++++++>>-]<<-[>>+>+<<<-]>>[<<+
08:24:04 <asiekierka> :(
08:24:59 <puzzlet> now i get it
08:24:59 <puzzlet> ^bfcmd rot13 +[,+[-[>+>+<<-]>[<+>-]+>>++++++++[<-------->-]<-[<[-]>>>+[<+<+>>-]<[>+<-]<[<++>>>+[<+<->>-]<[>+<-]]>[<]<]>>[-]<<<[[-]<[>>+>+<<<-]>>[<<+>>-]>>++++++++[<-------->-]<->>++++[<++++++++>-]<-<[>>>+<<[>+>[-]<<-]>[<+>-]>[<<<<<+>>>>++++[<++++++++>-]>-]<<-<-]>[<<<<[-]>>>>[<<<<->>>>-]]<<++++[<<++++++++>>-]<<-[>>+>+<<<-]>>[<<+
08:25:00 <asiekierka> ^bfcmd rot13 +[,+[-[>+>+<<-]>[<+>-]+>>++++++++[<-------->-]<-[<[-]>>>+[<+<+>>-]<[>+<-]<[<++>>>+[<+<->>-]<[>+<-]]>[<]<]>>[-]<<<[[-]<[>>+>+<<<-]>>[<<+>>-]>>++++++++[<-------->-]<->>++++[<++++++++>-]<-<[>>>+<<[>+>[-]<<-]>[<+>-]>[<<<<<+>>>>++++[<++++++++>-]>-]<<-<-]>[<<<<[-]>>>>[<<<<->>>>-]]<<++++[<<++++++++>>-]<<-[>>+>+<<<-]>>[<<+>>-]+>>+++++[<-
08:25:07 <asiekierka> YOU BROKE IT AGAIN
08:25:08 <asiekierka> :(
08:25:09 <puzzlet> sry
08:25:16 <asiekierka> ^bfcmd rot13 +[,+[-[>+>+<<-]>[<+>-]+>>++++++++[<-------->-]<-[<[-]>>>+[<+<+>>-]<[>+<-]<[<++>>>+[<+<->>-]<[>+<-]]>[<]<]>>[-]<<<[[-]<[>>+>+<<<-]>>[<<+>>-]>>++++++++[<-------->-]<->>++++[<++++++++>-]<-<[>>>+<<[>+>[-]<<-]>[<+>-]>[<<<<<+>>>>++++[<++++++++>-]>-]<<-<-]>[<<<<[-]>>>>[<<<<->>>>-]]<<++++[<<++++++++>>-]<<-[>>+>+<<<-]>>[<<+>>-]+>>+++++[<-
08:25:19 <asiekierka> ^bfadd rot13 ---->-]<-[<[-]>>>+[<+<->>-]<[>+<-]<[<++>>>+[<+<+>>-]<[>+<-]]>[<]<]>>[-]<<<[[-]<<[>>+>+<<<-]>>[<<+>>-]+>------------[<[-]>>>+[<+<->>-]<[>+<-]<[<++>>>+[<+<+>>-]<[>+<-]]>[<]<]>>[-]<<<<<------------->>[[-]+++++[<<+++++>>-]<<+>>]<[>++++[<<++++++++>>-]<-]>]<[-]++++++++[<++++++++>-]<+>]<.[-]+>>+<]>[[-]<]<]
08:25:25 <asiekierka> Couldn't you just do THIS?
08:25:33 <asiekierka> ^rot13 abcdefghijklmnopqrstuv
08:25:40 <puzzlet> ^bfcmd rot13
08:25:54 <asiekierka> It's busy, can't you see
08:26:37 <asiekierka> ^bfcmd funkecho ,[>,.<.,]
08:26:38 <fungot> nopqrstuvwxyza ...out of time!
08:26:38 <fungot> +[,+[-[>+>+<<-]>[<+>-]+>>++++++++[<-------->-]<-[<[-]>>>+[<+<+>>-]<[>+<-]<[<++>>>+[<+<->>-]<[>+<-]]>[<]<]>>[-]<<<[[-]<[>>+>+<<<-]>>[<<+>>-]>>++++++++[<-------->-]<->>++++[<++++++++>-]<-<[>>>+<<[>+>[-]<<-]>[<+>-]>[<<<<<+>>>>++++[<++++++++>-]>-]<<-<-]>[<<<<[-]>>>>[<<<<->>>>-]]<<++++[<<++++++++>>-]<<-[>>+>+<<<-]>>[<<+>>-]+>>+++++[<----->-]<-[<[-]>>>+[<+<->>-]<[>+<-]<[<++>>>+[<+<+>>-]<[>+<-]]>[<]<]>>[-]<<<[[-]<<[>>+>+<<<-]>>[<<+>>-]+>------------[<[-]>>>+[<+<->
08:26:59 <asiekierka> ^bfcmd
08:27:00 <fungot> Registered: reverb echo partialecho rot13 bfself dvorak bertram wc funkecho
08:27:27 <asiekierka> ^funkecho Get it now? ^bfcmd and ^bfadd are so useful on irc.
08:27:27 <fungot> eG ttin wo ?b^cfdma dn^ fbda dra eosu esuf lnoi cr..
08:28:02 <puzzlet> got it
08:28:03 <asiekierka> ^funkecho eG ttin wo ?b^cfdma dn^ fbda dra eosu esuf lnoi cr..
08:28:03 <fungot> Get it now? ^bfcmd and ^bfadd are so useful on irc..
08:28:07 <asiekierka> :)
08:28:14 <asiekierka> Hopefully.
08:28:48 <puzzlet> is echo [,.>]?
08:28:57 <asiekierka> ^bfcmd echo
08:28:58 <fungot> hello
08:29:01 <asiekierka> ^bfcmd partialecho
08:29:02 <fungot> >,[>,]<[<]>[.>]<[<]++++++++++++++++++++++++++++++++.>[.>]
08:29:14 <asiekierka> ^partialecho testestestestestestestestestestestest
08:29:15 <puzzlet> since i gotta fix it back
08:29:15 <fungot> testestestestestestestestestestestest testestestestestestestestestestestest
08:29:22 <asiekierka> Echo == Partialecho
08:29:40 <fizzie> Yes, I just used partialecho for testing the multi-segment program thing.
08:30:35 <puzzlet> ^bfcmd echo >,[>,]<[<]>[.>]<[<]++++++++++++++++++++++++++++++++.>[.>]
08:31:28 <asiekierka> ^bfcmd kill ++++++++[>++++>+++++++++<<-]>>+++.--.+++..<.>>,[.,]<<+.
08:31:36 <asiekierka> ^kill optbot
08:31:36 <optbot> asiekierka: i'm not actually sure whether you can just do infix alone with my current implementation... would be kinda sucky if you couldn't :P
08:31:36 <fungot> KILL optbot!
08:31:37 <optbot> fungot: don't look at me i didn't do it
08:31:46 <asiekierka> xD
08:32:20 <asiekierka> ^kill THE MAN! YEAH, KILL THE MAN
08:32:21 <fungot> KILL THE MAN! YEAH, KILL THE MAN!
08:32:38 <asiekierka> Another pointlesssssssssssssssssss commandddd.d.d.dddd.dd Added.
08:32:52 <fizzie> ^rev tobtpo
08:32:52 <fungot> optbot
08:32:52 <optbot> fungot: hard to say, youngest from the active ones.
08:33:20 <asiekierka> ^kill OPTBOT. Yeah, optbot. Hide from the nuclear bombsssssssssss
08:33:20 <optbot> asiekierka: I think I continue more than I break
08:33:21 <fungot> KILL OPTBOT. Yeah, optbot. Hide from the nuclear bombsssssssssss!
08:33:21 <optbot> fungot: I think I got the BF indenter working
08:33:31 -!- jemarch has quit ("ERC Version 5.0 (CVS) $Revision: 1.1.1.1 $ (IRC client for Emacs)").
08:33:43 <asiekierka> You know
08:33:47 <asiekierka> i have an evil idea
08:33:51 -!- jemarch has joined.
08:34:32 <KingOfKarlsruhe> ^bf +++++[->+++++++++++++++<]>.[-]<+++[->++++++++++++++++++++++++<]>+.[-]<++++++[->++++++++++++<]>++++.[-]<++++++[->++++++++++++<]>++++.[-]<++[->++++++++++++++++<]>.[-]<+++++++++[->++++++++<]>+++++++.[-]<++++[->++<]>[->++++++++++<]>.[-]<++++[->+++++++++++++++++++++<]>.[-]<++++++[->+++++++++++<]>.[-]<+++++++++[->++++++++<]>+++++++.[-]<++++[->+++++++++++++++++++++<]>.[-]<+[->++++++++++<]>.
08:34:32 <fungot> KILL OPTBOT.
08:34:33 <optbot> fungot: hi
08:36:20 <asiekierka> ^bfcmd test1 ++++++++[>++++++>++++++++++++++>++++++++++++<<<-]>-.>.>+.<++.++.
08:36:22 <asiekierka> ^test1
08:36:22 <fungot> /part
08:36:26 <asiekierka> ...uh
08:36:31 <asiekierka> That wasn't supposed to happen
08:36:37 <asiekierka> ^bfdel test1
08:36:39 <asiekierka> ^bfcmd
08:36:40 <fungot> Registered: reverb echo partialecho rot13 bfself dvorak bertram wc funkecho kill rev test1
08:37:00 <fizzie> There's no command-deletion as of yet. But you can always reuse command names by redefining them.
08:37:12 <asiekierka> ^bfcmd bfcmd +[]
08:37:15 <asiekierka> haha
08:37:17 <asiekierka> ^bfcmd
08:37:18 <fungot> Registered: reverb echo partialecho rot13 bfself dvorak bertram wc funkecho kill rev test1 bfcmd
08:37:20 <asiekierka> No wait
08:37:23 <asiekierka> not so good
08:37:29 <fizzie> It will apply built-in commands first.
08:37:32 <asiekierka> :/
08:37:39 <asiekierka> You don't have a bug yet, do you/
08:38:00 -!- CakeProphet has quit (Remote closed the connection).
08:38:05 <fizzie> There have been quite a lot of bugs. And ! is handled pretty unintuitively in macros.
08:38:08 -!- puzzlet_ has joined.
08:38:15 -!- puzzlet has quit (Remote closed the connection).
08:38:19 <fizzie> ^bfcmd test1 ,[.,]!foo
08:38:21 <fizzie> ^test1 bar
08:38:22 <fungot> foo!bar
08:38:51 <asiekierka> You know
08:38:59 <asiekierka> Should i get to making my Brainf**k IRCbot?
08:39:22 <fizzie> Sure, why not?
08:39:31 <asiekierka> it'll be a... PAIN. :(
08:42:21 <asiekierka> I wonder what's the easiest way to do a check whether a character is equal... to something.
08:42:35 <asiekierka> in BF.
08:42:41 <asiekierka> For example, 95.
08:42:43 <asiekierka> 96*
08:42:56 <asiekierka> But i'll need more checks later on :P
08:47:14 <asiekierka> Oh my god, wha----WHY I thought of this BFirc thing?
08:47:22 <asiekierka> This is going to be a pain
08:47:28 <asiekierka> and nobody will care anyway. :P
08:48:21 <Deewiant> in brainfuck? subtract 96 from it and check if it's zero
08:48:27 <asiekierka> Heh.
08:48:42 <asiekierka> I thought of using a flag to overcome some stuff.
08:48:46 <asiekierka> As in
08:48:49 <asiekierka> I set the flag to 1
08:48:51 <asiekierka> subtract 96
08:48:57 <asiekierka> If it's nonzero
08:48:59 <asiekierka> [>-<]
08:49:06 <asiekierka> Then go to the flag
08:49:10 <asiekierka> [code]
08:49:36 <asiekierka> My commands will be oneletter.
08:49:37 <asiekierka> as in
08:49:39 <asiekierka> not `bfcmd
08:49:41 <asiekierka> but `b
08:49:46 <asiekierka> or something
08:58:17 -!- Slereah_ has joined.
09:17:02 <asiekierka> Hmm
09:17:36 <Slereah_> You sound like an electric line.
09:17:47 <asiekierka> I'm thinking about my BF code
09:17:53 <Slereah_> Who isn't.
09:18:05 <asiekierka> Everyone isn't
09:18:08 <asiekierka> No-one cares.
09:19:46 -!- puzzlet has joined.
09:19:56 <asiekierka> Nope
09:20:07 <asiekierka> I wonder how to do a [ ] if the current cell is 0\
09:20:13 <asiekierka> I was thinking about using a flag
09:20:16 <asiekierka> Bleh, not as easy
09:20:24 <asiekierka> as i thought
09:20:47 <asiekierka> I must check if cell2 is nonzero, if it is, zero cell4.
09:21:06 <asiekierka> Then, in both nonzero and zero cases, it should point at cell4
09:21:13 <asiekierka> Cell4=1
09:22:38 <asiekierka> IF CELL2 != 1
09:22:39 <asiekierka> ZERO CELL 4
09:22:39 <asiekierka> GO TO CELL 4
09:22:39 <asiekierka> ELSE
09:22:39 <asiekierka> GO TO CELL 4
09:22:45 <asiekierka> Something like this but in BF
09:24:03 <asiekierka> Any ideas?
09:24:18 <asiekierka> 8-bit cells, do wraparound
09:24:18 <asiekierka> unsigned
09:29:12 <asiekierka> ^bfcmd rot13 ,+[-->++++[>++++++++<-]<[->+>-[>+>>]>[+[-<+>]>+>>]<<<<<<]>>[-]>>--[-[>
09:29:13 <asiekierka> -<[-]]]>+[-<+++++++++++++<[->-[>+>>]>[+[-<+>]>+>>]<<<<<]>[-]>[-]+>[<--
09:29:13 <asiekierka> >-[<+>-]]<[<<<<+++++++++++++>>>>-]]<<[-]<<+.[-]<,+]
09:29:21 <asiekierka> ^bfadd rot13 -<[-]]]>+[-<+++++++++++++<[->-[>+>>]>[+[-<+>]>+>>]<<<<<]>[-]>[-]+>[<--
09:29:26 <asiekierka> ^bfadd rot13 >-[<+>-]]<[<<<<+++++++++++++>>>>-]]<<[-]<<+.[-]<,+]
09:29:38 <asiekierka> ^rot13 i hope this works faster, actually
09:30:27 <asiekierka> ^bfcmd bubblesort >>>>>,+[>>>,+]<<<[<<<[>>>[-<<<-<+>[>]>>]<<<[<]>>[>>>+<<<-]<[>+>>>+<<<<-]<<]>>>[-.[-]]>>>[>>>]<<<]
09:30:53 <fungot> v ubcr guvf jbexf snfgre, npghnyyl............................................................................................................................... ...out of time!
09:31:33 <asiekierka> yes, it does do more, but the dots, the DOTS
09:31:38 -!- puzzlet_ has quit (Read error: 110 (Connection timed out)).
09:31:41 <asiekierka> ^sort asiekierkabuhh
09:31:45 <asiekierka> ^bubblesort asiekierkabuhh
09:32:14 <Slereah_> What does "asiekierkabuhh" mean
09:32:50 <fungot> ...out of time!
09:33:13 <Slereah_> Does it?
09:33:47 <puzzlet> hopefully
09:34:50 <Deewiant> ^bubblesort cba
09:35:55 <fungot> ...out of time!
09:36:27 <Deewiant> ^bubblesort a
09:37:31 <fungot> ...out of time!
09:38:01 <asiekierka> ^bertram 29334
09:38:29 <asiekierka> Also, BF ircbot is a real chawwenge
09:38:50 <asiekierka> Especially w/o a {} (whilezero) loop
09:39:12 <fungot> ...out of time!
09:40:02 <Deewiant> ^bertram 1
09:41:12 <fungot> ...out of time!
10:23:52 <asiekierka> ^bf +[]
10:24:04 <asiekierka> >_______________________________________<
10:24:56 <asiekierka> <""""""""""""""""""""""""""""""""""""""">
10:25:24 <fungot> ...out of time!
10:25:42 <fizzie> It's still the good old interpreter, I haven't even reloaded yet, and the user commands need to be done.
10:43:27 -!- GreaseMonkey has quit ("Jesus loves you").
10:46:39 -!- Tritonio_ has joined.
11:22:13 -!- fungot has quit (Read error: 131 (Connection reset by peer)).
11:25:58 -!- asiekierka has quit (Read error: 60 (Operation timed out)).
11:27:26 -!- oerjan has joined.
12:00:45 -!- LinuS has joined.
12:19:24 -!- Sgeo has joined.
12:20:51 -!- oerjan has quit ("leaving").
12:31:05 -!- fungot has joined.
12:32:01 <fizzie> Well, according to fib.b, the new interpreter seems to be at least a bit faster than the previous one. But currently fungot has only ^bf, not the command-definition things, since I haven't reimplemented those yet.
12:32:06 <fizzie> ^bf >++++++++++>+>+[[+++++[>++++++++<-]>.<++++++[>--------<-]+<<<]>.>>[[-]<[>+<-]>>[<<+>+>-]<[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>[-]>+>+<<<-[>+<-]]]]]]]]]]]+>>>]<<<]
12:32:08 <fungot> 0.1.1.2.3.5.8.13.21.34.55.89.144.233.377.610.987.1597.2584.4181.6765.10946.17711.28657.46368.75025.121393.196418.317811.514229.832040.1346269.2178309.3524578.5702887.9227465.14930352.24157817.39088169.632459e ...
12:41:35 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | eggs with chipotle sauce.
13:08:36 <oklopol> asiekierka: Especially w/o a {} (whilezero) loop <<< you can substitute { and } for short pieces of bf code to do a whilezero loop just before running
13:08:43 <oklopol> err
13:08:55 <oklopol> substitute substitute's params there with each other
13:38:14 -!- sebbu2 has quit (Read error: 113 (No route to host)).
14:08:55 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
14:51:06 <KingOfKarlsruhe> optbot: kill
14:51:06 <optbot> KingOfKarlsruhe: By some guy, I mean NASA
14:51:20 <KingOfKarlsruhe> optbot: hello
14:51:20 <optbot> KingOfKarlsruhe: MISC VM?
14:51:26 <KingOfKarlsruhe> optbot: yes
14:51:26 <optbot> KingOfKarlsruhe: hehehe... I see wierd though. I never knew someone wrote Hello World in Wierd.
14:51:42 <KingOfKarlsruhe> optbot: true
14:51:42 <optbot> KingOfKarlsruhe: note that it must not read/write the shell std streams
14:53:49 -!- jix has joined.
15:40:32 -!- dogface has quit (Read error: 110 (Connection timed out)).
15:45:25 -!- twistle has joined.
15:48:09 <twistle> how would you go about making a non-bootstrapping bf quine
15:48:12 <twistle> ?
15:49:01 <oklopol> what does that mean
15:49:31 <twistle> A BF program which prints its own source,
15:49:40 <twistle> and does not require any input
15:50:02 <oklopol> err so no-bootstrapping meant nothing
15:50:05 <oklopol> it's simple
15:50:11 <oklopol> i can explain the common method
15:51:33 <twistle> Och aye!
15:51:37 <oklopol> basically, the idea is, we create a piece of code that takes *encoded* program source as "argument", in bf's case it's on the tape when this program is run. it then prints this encoded source as bf code generating that data, then prints the source the encoded source represents
15:51:44 <oklopol> now, we take this program, and we encode it
15:51:53 -!- MikeRiley has joined.
15:51:58 <oklopol> we then take the encoded source, and the actual source, and we concatenate them.
15:52:18 <twistle> Hi, stranger
15:52:24 <oklopol> does this do you any good? i can do it with examples, in case you need something more concrete
15:52:28 <oklopol> MikeRiley isn't a stranger
15:52:32 <oklopol> more of a regular nowadays
15:52:38 <twistle> He is to me
15:52:38 <oklopol> befunge-98's creator, afaik
15:52:42 <oklopol> yes, most likely
15:52:47 <twistle> Oh...
15:52:54 <twistle> seriously?
15:52:57 <MikeRiley> or at least trying to be a regular!! eheheheh
15:53:11 <MikeRiley> Rc/Funge-98's creator actually
15:53:37 <oklopol> well you have such distinguishing mannerisms you are quite easy to spot, which makes you feel regular quite fast :)
15:53:45 <oklopol> Rc?
15:53:47 <MikeRiley> eeheheheheh
15:53:52 <oklopol> eeeehhhehehehehehe
15:53:55 <oklopol> indeed :)
15:54:22 <oklopol> twistle: seriously what?
15:54:35 <oklopol> seriously its creator, yes, and also seriously that is your quine
15:54:37 <MikeRiley> yeah,,,i never can hide from people...change names and people still know who i am!!! eheheheh
15:55:34 <oklopol> heh
15:56:19 <twistle> Can you give an annotated example?(Of a BF quine?)
15:56:37 <Deewiant> oklopol: not the creator of the language, of the first interpreter though
15:56:48 -!- sebbu has joined.
15:57:25 <oklopol> Deewiant: i see. thought both the language and the interp
15:57:41 <oklopol> twistle: sure, there was one around
15:57:43 <Deewiant> chris pressey made the language
15:57:52 <Deewiant> or rather, collected the spec
15:58:09 <Deewiant> he's of the opinion that it was a joint effort of the mailing list at the time
15:59:09 <oklopol> http://esoteric.sange.fi/brainfuck/bf-source/quine/quine410_with_comments.b
15:59:23 <oklopol> oh, right, i've heard that name
15:59:31 <oklopol> but i prolly thought he was just 93
16:00:50 <twistle> I wish there was automated utility that would go through a wiki page and change 'push' to 'enqueue' and 'pop' to 'dequeue'
16:01:59 -!- dogface has joined.
16:03:19 <twistle> Hey, wait a minute!
16:03:44 * dogface waits
16:03:57 <twistle> I was the lsat preosn to eidt the wkii lsat nghit!
16:04:23 <dogface> Why are you tklanig lkie tihs?
16:04:37 <dogface> Prue aciednct?
16:05:16 * dogface adiovs lnog wdors so as to not hvae to keep tcrak of it all
16:06:38 <twistle> bceuase I jsut fnuod out taht as lnog as you keep the frist and lsat ltetrers of a wrod in palce, you wlil sitll be albe to udnertsand it!
16:06:58 <MikeRiley> i read that somewhere,,,found it quite amazing
16:07:17 <oklopol> i've heard that so many times i don't belive anyone hasn't
16:07:44 <twistle> no siht
16:07:55 <dogface> I've heard it so many times that I've heard it's actually not true.
16:09:10 <dogface> Wait, no, I haven't.
16:11:07 -!- Slereah has joined.
16:11:07 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
16:11:53 <dogface> I did an experiment, though. I took one of those "Aoccdrnig to rscheearch at Cmabrigde uinervtisy" texts and reversed the order of the consonants and vowels, to get something like "Ainrdccog to rcrhaaecsh at Cdigrabme uisetvriny".
16:12:12 <dogface> I then showed the result to a cute female classmate. She said, "Ooh, I love these!"
16:12:31 <dogface> She found it more difficult than usual.
16:13:18 <twistle> On a completely different note, what's your favorite text-editor
16:13:20 <twistle> ?
16:14:17 <Deewiant> if you put a lot of vowels together it's usually fairly impossible to understand
16:14:20 <Deewiant> as for editors, vim
16:14:26 <MikeRiley> vim here as well...
16:15:39 <Deewiant> and also, the legibility depends on the language
16:16:00 <twistle> What's your favorite one with syntax coloring?
16:16:05 <Deewiant> vim
16:18:03 <twistle> I like vim too, but what's your favorite GUI text editor?
16:18:08 <Deewiant> gvim
16:18:24 <twistle> :/
16:18:37 <Deewiant> I usually use it in GUI mode anyway
16:18:44 -!- asiekierka has joined.
16:18:45 <asiekierka> `lo
16:18:50 <Deewiant> 'lo
16:18:57 <twistle> hell'
16:19:01 <asiekierka> I'm wondering
16:19:14 <asiekierka> how to execute a piece of code if x == (somevaluehere) in BF
16:19:18 <asiekierka> If i could do that
16:19:26 <asiekierka> then my IRCbot will be working, actually
16:19:30 <Deewiant> subtract somevalue and use []
16:19:35 <Deewiant> as I said before :-P
16:19:47 <asiekierka> Yeah
16:19:50 <asiekierka> but can't you see
16:19:57 <asiekierka> that it'll run if x != somevaluehere
16:20:00 <twistle> Or look at the page on the wiki 'BF algorithms'
16:20:04 <asiekierka> or x > somevaluehere
16:20:39 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
16:20:47 -!- Slereah_ has joined.
16:20:48 <oklopol> asiekierka: just set a flag if it's true, negate the flag and check for zero
16:20:52 <oklopol> this is a trivial problem
16:21:01 <oklopol> and i explained it to you a few days ago
16:21:12 <asiekierka> Wanted to do this
16:21:29 <asiekierka> but, negate the flag? No negative values here
16:21:30 <asiekierka> sorry
16:21:40 <oklopol> what do you mean no negative values?
16:21:45 <asiekierka> 0-255, 8bit cells, wraparound
16:21:52 <oklopol> 255 = -1
16:21:55 <asiekierka> Yeah
16:21:56 <asiekierka> oki
16:21:58 <oklopol> for all intents and purposes
16:22:05 <asiekierka> I see now
16:22:12 <asiekierka> But wait a minute...
16:22:31 <asiekierka> Oh wait
16:22:33 <asiekierka> i got it!
16:23:47 -!- Slereah has joined.
16:23:47 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
16:32:28 -!- Slereah_ has joined.
16:32:28 -!- Slereah has quit (Read error: 54 (Connection reset by peer)).
16:34:18 <asiekierka> Haha, a bug.
16:34:24 <asiekierka> The bug was in the comment.
16:34:25 <asiekierka> It had an ,
16:34:30 <Slereah_> Heh.
16:34:33 <Slereah_> Silly man.
16:34:47 <asiekierka> NOW it works
16:34:48 <asiekierka> :)
16:34:49 <asiekierka> Yay.]
16:35:00 <asiekierka> Now i must do a detection for 3 variables
16:35:01 <asiekierka> For a 10
16:35:03 <asiekierka> then a `
16:35:07 <asiekierka> then a letter
16:35:12 <asiekierka> Yay for wasting code
16:35:22 <Slereah_> All code is wasted on BF.
16:36:22 <asiekierka> I'd SO like a BF compiler with macros
16:36:27 <asiekierka> as in, BF with macros to BF
16:36:36 <asiekierka> So i don't need to copy a piece of code every time
16:36:37 <asiekierka> just type
16:36:38 <asiekierka> #compare
16:36:41 <asiekierka> or something
16:37:06 <Deewiant> just write a perl script or some such that does that
16:37:24 <Deewiant> not too difficult I imagine
16:37:40 <asiekierka> Or just copy it anyway
16:38:04 <asiekierka> I will not break my BF experience! At all!
16:40:21 -!- Slereah has joined.
16:40:21 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
16:40:36 <oklopol> asiekierka: there are languages that compile to bf
16:40:46 <asiekierka> But that breaks the experience
16:40:49 <asiekierka> of native BF writing
16:41:09 <oklopol> but yeah, you can just have macros and always before running just substitute the correct code
16:41:42 <asiekierka> Nope, that's cheating. I said i'm going to make a BF ircbot.
16:41:49 <asiekierka> Not a BF with macros ircbot
16:41:56 <asiekierka> I want everyone to know
16:42:01 <asiekierka> Thats why everything is commented.
16:42:07 <dogface> optbot!
16:42:08 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | actually I think that makes it worse.
16:42:12 <dogface> Thank you.
16:42:13 <asiekierka> :(
16:42:18 <Deewiant> optbot knows best
16:42:19 <optbot> Deewiant: http://rafb.net/p/ubHcrP65.html Have fun!
16:42:20 <asiekierka> Why does this match the situation
16:42:20 <asiekierka> xD
16:42:23 <asiekierka> But still
16:42:29 <asiekierka> I'd like to make it in native BF
16:42:42 <asiekierka> because it's really what the name of BF was made for.
16:42:49 <asiekierka> Making a BF ircbot is a BrainF**k.
16:43:49 <asiekierka> Yeah
16:43:58 <asiekierka> I already made a piece checking for the right header
16:44:08 <asiekierka> As BFirc (hopefully) appends a #13#10 after every message
16:44:11 <asiekierka> I can check for #10
16:44:17 <asiekierka> then my reserved `
16:44:20 <asiekierka> Then for the actual command
16:45:01 <oklopol> optbot: that wasn't a very fun page!
16:45:02 <optbot> oklopol: okay. I guess it'll be set in stone now then.
16:45:20 <oklopol> optbot: yes, that's what happens to bad little pages.
16:45:20 <optbot> oklopol: except the parentheses are not quite right
16:45:30 <oklopol> optbot: there are no parens.
16:45:31 <optbot> oklopol: don't bother with them, the last one will wreck your life
16:45:41 <oklopol> optbot: i didn't say i was gonna add any.
16:45:41 <optbot> oklopol: "round"
16:45:50 <Deewiant> optbot: square!
16:45:50 <optbot> Deewiant: note that [[Savant]] is essentially nothing more than a redirect to [[Autistic savant]]
16:45:56 <Deewiant> optbot: so noted.
16:45:57 <optbot> Deewiant: yes, you haven't supplied yours yet :)
16:46:06 <Deewiant> optbot: what now?
16:46:06 <optbot> Deewiant: eh..
16:46:08 <oklopol> yeah, Deewiant, what is yours!
16:46:21 <Deewiant> I wonder
16:46:24 <Deewiant> :-P
16:48:30 -!- Mony has quit ("À vaincre sans péril on triomphe sans gloire...").
16:49:28 -!- ais523 has joined.
16:49:46 <oklopol> ^bfcmd nop +++
16:49:51 <oklopol> ^bfcmd
16:49:59 <oklopol> hmm
16:50:01 <oklopol> ^help
16:50:53 <asiekierka> Hmm
16:51:00 <asiekierka> I wonder
16:51:04 <asiekierka> Why does BFBot not Work
16:51:28 <Deewiant> optbot: any ideas?
16:51:29 <optbot> Deewiant: List is a type taking one argument
16:51:35 <oklopol> ^bfcmd addone ,[+.,]
16:51:38 <oklopol> ^addone cool
16:52:14 <twistle> Is there any category on the wiki for esolangs which compile into esolangs?(a la FRAK)
16:52:16 <asiekierka> ^bf ++++++++[>+++++++++<-]>.
16:52:20 <oklopol> fizzie: tell me what is going on when you have the time
16:52:32 <oklopol> twistle: there's a matrix
16:52:45 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
16:52:46 -!- Slereah_ has joined.
16:52:48 <twistle> ?
16:52:55 <oklopol> like
16:53:11 <oklopol> languages on the left and the top
16:53:23 <oklopol> and x's where there's a compiler from leftie to toppie
16:53:38 <asiekierka> Changed bfirc code a little
16:53:39 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
16:53:42 -!- ais523 has joined.
16:53:42 <asiekierka> darktemplar's
16:53:48 <asiekierka> Now it'll add a 1 before each MSG
16:54:07 <ais523> twistle: http://esolangs.org/wiki/EsoInterpreters IIRC
16:55:32 <twistle> ais523: that isn't what I meant
16:55:41 <ais523> ah, ok
16:55:46 <ais523> although it can at least be mentioned there
16:55:54 <twistle> Not one language written in another,
16:55:54 <ais523> apart from that, there isn't a cat for that I don't think
16:56:05 <twistle> One language compiled into another.
16:56:07 <ais523> twistle: EsoInterpreters includes compilers too IIRC
16:56:36 <Slereah_> They even include some strange stuff
16:56:50 <Slereah_> Like the UTM interpreter on BF, that's actually a tag system, IIRC
16:57:38 <ais523> but the universal turing machine interprets tag systems
16:57:47 <ais523> at least, the original one does
16:57:59 <ais523> so arguably it's an implementation of the UTM in BF
16:58:07 <ais523> just with different code
16:58:19 <Slereah_> Does it?
16:58:27 <ais523> Slereah_: I think so
16:58:50 <Slereah_> Tag systems never struck me as similar to turing machines
16:59:24 <ais523> Slereah_: no, but they're both TC
16:59:30 <ais523> the point is that you can compile any turing machine into a tag system
16:59:39 <ais523> thus a turing machine that can interpret tag systems is a UTM
16:59:51 <Slereah_> ais523 : But then, all those languages are TC
16:59:57 <ais523> well, yes
17:00:03 <Slereah_> That doesn't mean that we can just put crosses everywhere
17:00:05 <asiekierka> Yay, hopefully i found out what's wrong
17:00:06 <ais523> but that's not the point I'm getting at
17:00:19 <asiekierka> or not.
17:00:29 <ais523> I'm simply making a historical observation, which is that the first UTM interpreted tag systems
17:00:57 <Slereah_> You mean the "On computable number" one?
17:01:20 <ais523> the first published, I'm not sure which paper it was in, quite possibly that one
17:01:44 <Slereah_> I only remember a few programs in it, most notably the universal Turing machine
17:03:14 <twistle> Does anybody know of an esoteric language which looks like /d..s/./a..f/.s///s././f/s/g?
17:03:35 <Slereah_> ///?
17:03:38 <Deewiant> sed?
17:03:54 <ais523> twistle: Thutu looks a bit like that too, although /// looks like it more
17:04:01 <Slereah_> http://esolangs.org/wiki/Slashes
17:04:03 -!- MikeRiley has quit ("Leaving").
17:04:08 <ais523> except Thutu has significant whitespace the same way as Python
17:05:28 -!- ais523 has quit (Remote closed the connection).
17:06:04 -!- ais523 has joined.
17:06:32 <ais523> ugh, I have connection problems
17:06:37 <twistle> I mean like with dots
17:06:48 <ais523> Thutu uses dots quite a bit because it's regex-based
17:07:04 <ais523> and no reason you can't use . in ///, most /// programs only use a few characters to make them easier to write
17:09:21 -!- KingOfKarlsruhe has quit (Remote closed the connection).
17:10:26 <dogface> /d..s/./a..f/.s///s././f/s/g, eh? In ///, /d..s/./ ends up being a nop, then it outputs a..f, then /.s// is a nop, then /s././ is a nop, then f is output, then it halts.
17:10:32 <dogface> Kind of a boring /// program, then.
17:10:44 <ais523> dogface: interesting /// programs are very hard to write
17:10:59 <ais523> I tried for a week and ended up believing that it was possible but that I couldn't do it in a reasonable length of time
17:11:10 <dogface> I don't think I've ever seen a non-trivial /// quine. Have you?
17:11:16 <oklopol> no one has
17:11:18 <ais523> no, that's what I was trying to write
17:11:23 <oklopol> everyone has tried that
17:11:27 <ais523> at least, I was trying to write an infinite loop
17:11:31 <dogface> Someone prove it Turing-complete already!
17:11:32 <oklopol> everyone has failed
17:11:33 <ais523> which is very similar to writing a quine in ///
17:11:42 -!- Slereah has joined.
17:11:59 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
17:11:59 <ais523> I'm convinced it's possible, though; it's just my program was buggy and I couldn't find the bugs
17:11:59 <twistle> I like my own itflabtijtslwi,
17:12:16 <twistle> which is basically /// with input
17:12:26 <twistle> from stdin
17:12:50 <ais523> twistle: that would be an absolute nightmare to use unless you could control stdin somehow
17:14:46 <dogface> I'd kind of prefer something like /foo/./ meaning replace foo with one character of input, then having . escaped just like any other character.
17:14:47 <twistle> No, it isn't
17:15:04 <dogface> I don't suppose anyone's considered that /// might not be Turing-complete. :-)
17:15:15 <ais523> twistle: you have to allow for every possible character that might come in on stding
17:15:17 <ais523> s/g$//
17:15:31 <ais523> dogface: I did consider that, but I'm pretty sure it is TC, just a nightmare to program in
17:15:41 <asiekierka> I hate BF.
17:15:48 <asiekierka> Hopefully i have a debugger
17:15:53 <ais523> asiekierka: why? it's one of the easiest esolangs around
17:15:58 <twistle> GGkodvaGG in itflabtijslwi means "replace kodva with one charactr of input'
17:16:36 <dogface> How do you output GGkodvaGG, then?
17:16:55 <ais523> dogface: presumably by outputting the Gs one at a time
17:17:15 <dogface> I guess you can \GGkodvaGG or something.
17:17:35 -!- Slereah_ has joined.
17:17:37 <dogface> Yay, I can has cheezburger.
17:18:22 <asiekierka> Yay
17:18:24 <asiekierka> I think i finally
17:18:25 <asiekierka> FINALYL
17:18:27 <asiekierka> FINALLY*
17:18:28 <asiekierka> fixed it.
17:18:29 <asiekierka> Whew.
17:18:39 <asiekierka> And it only has a command to output a single character. Lawl.
17:18:49 <oklopol> well show us
17:19:05 <ais523> dogface: G/#comment#//GkodvaGG
17:19:08 <asiekierka> I think i fixed it
17:19:09 <asiekierka> also
17:19:10 <asiekierka> #esoteric-blah
17:19:18 <asiekierka> shall appear soon
17:19:26 <asiekierka> Haha
17:19:27 <asiekierka> it worked
17:19:29 <asiekierka> but after
17:19:34 <asiekierka> a crash appeared
17:20:26 <twistle> [.,>>>>,+++<<<<--][.>]
17:20:39 <twistle> I wonder what that does.
17:21:21 <oklopol> twistle: what's it supposed to do?
17:21:26 <twistle> no idea
17:21:29 <oklopol> it does nothing sensible really
17:22:55 <oklopol> loops ( print character in current cell, ask two characters, put the first character - 2 in the current cell, store the other one + 3 in another cell ) when a \x2 is given as input, it ends
17:23:09 <oklopol> just that does absolutely nothing
17:23:19 <oklopol> you need to have a nonzero initial value
17:23:27 <oklopol> [.>] can just be removed
17:23:38 <oklopol> as can ,+++ really, unless it's used for something later
17:23:51 <dogface> "In mathematics you don't understand things. You just get used to them." -Johann von Neumann
17:24:01 -!- fungot has quit (Read error: 131 (Connection reset by peer)).
17:24:02 <ais523> dogface: good quote
17:24:24 <ais523> twistle: that code does nothing on its own because it's nothing but header comments
17:24:26 <twistle> Ok, ++++++[.,>>>>,+++<<<<--]
17:24:26 <dogface> Lies.
17:24:51 <oklopol> i dislike neumann somewhat, from what i've read he basically just commercialized turing's ideas
17:25:12 <dogface> Output, input, go there, input, add three, go back, subtract two, repeat until you've input character number 2.
17:25:22 <ais523> twistle: outputs /x6, then outputs every second character from stdin with 2 subtracted from its ascii code until you enter /x2
17:25:29 <oklopol> ya
17:25:32 <ais523> it also updates cell 4 uselessly
17:25:47 <twistle> INFINITELOOPLOOPLOOPLOOPLOOPLOOPLOOPLOOPLOOPLOOPLOOPLOOPLOOPLOOPLOOP
17:25:59 * twistle has a stack overload
17:28:03 <twistle> /infiniteloop/infinitelooploop/
17:31:08 -!- asiekierka has quit (Read error: 104 (Connection reset by peer)).
17:31:27 -!- asiekierka has joined.
17:31:44 <asiekierka> http://asiekierka.boot-land.net/bfirc_bot.zip - BFirc+my test script+bf filter thing+irclib for python
17:32:00 <asiekierka> Maybe you'll figure out what's wrongie wrong
17:32:42 -!- jemarch has quit ("ERC Version 5.0 (CVS) $Revision: 1.1.1.1 $ (IRC client for Emacs)").
17:33:10 <asiekierka> Oh
17:33:12 <asiekierka> i think i may know
17:33:31 <twistle> +++++[->++<]>[->+++++<]>.
17:33:37 <twistle> What does it do?
17:33:54 -!- Slereah has quit (Read error: 110 (Connection timed out)).
17:35:07 <asiekierka> Anyone has a looping mechanism that jumps to the cell that is 1?
17:35:11 <asiekierka> Moving left
17:35:16 <asiekierka> searching for a non-empty cell
17:35:39 <ais523> twistle: calculates 5*2*5 (which is 50), then outputs it
17:35:45 <ais523> as in, character 50
17:35:54 <ais523> which is 2 IIRC
17:36:07 <asiekierka> hello
17:36:16 <ais523> asiekierka: [<]
17:36:24 <asiekierka> for a NON-EMPTY cell
17:36:29 <ais523> oh
17:36:31 <asiekierka> or nope
17:36:32 <asiekierka> nope
17:36:34 <ais523> that's less trivial
17:36:36 <asiekierka> For a cell equaling 1
17:36:41 <ais523> you generally need to rely on having some working space
17:36:46 <asiekierka> Wait
17:36:46 <asiekierka> i know
17:36:48 <ais523> as in, knowing every other cell's blank
17:36:50 <asiekierka> Negation
17:36:53 <asiekierka> Or not
17:36:54 <asiekierka> :/
17:37:05 <asiekierka> You know
17:37:08 <asiekierka> i can be at up to cell 7
17:37:08 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
17:37:10 <ais523> you can make some yourself but then the rest of the program has to be designed around it
17:37:11 <asiekierka> And i can waste any cell
17:37:16 <asiekierka> except cells 0 and 1
17:37:18 <asiekierka> cell 0 is always 0
17:37:22 <asiekierka> and cell 1 is always 1
17:37:39 <ais523> generally in BF you should plan which cells you're using as working space beforehand, it saves time in the long run
17:37:54 <asiekierka> I could basically add the moving parts in the loops
17:38:56 <twistle> I'd say a sloppy solution would be [code]<[code]<[code]
17:38:57 <pikhq> Or at the *very* least write down the cells you're using as you work on things.
17:39:07 <asiekierka> I think i know now
17:39:12 <asiekierka> I'm writing cells now with a debugger
17:39:12 <asiekierka> as in
17:39:17 <asiekierka> which loops stays at what cell
17:39:20 <asiekierka> loop stays*
17:39:47 <twistle> what would [<[code]] do?
17:40:05 <ais523> twistle: if the current cell is nonzero, go left and run [code]
17:40:18 <ais523> it's an if not a while because once the inner loop exits the outer loop necessarily exits
17:40:59 <asiekierka> Hopefully
17:41:01 <asiekierka> i fixed it
17:41:11 <asiekierka> With basically adding right < amounts in right places
17:41:27 <twistle> what about [<[code[<]?
17:41:38 <asiekierka> eeh
17:41:41 <asiekierka> 3x[ and 1x]
17:41:41 <asiekierka> Also
17:41:42 <asiekierka> i fixed it
17:41:48 <asiekierka> no need to tinkerinker
17:41:49 <twistle> I mean [<[code]<]
17:43:02 <asiekierka> ASIEBOT TEST 2 - #esoteric-blah exclusive
17:47:18 <asiekierka> I hate this.
17:47:23 <asiekierka> I think i must write my own interp for this.
18:05:26 -!- Slereah_ has joined.
18:05:49 <Slereah_> http://membres.lycos.fr/bewulf/Divers5/greu.jpg <- this is my unhappy face >:|
18:05:55 <Slereah_> Damn connection
18:12:20 -!- sebbu has quit (No route to host).
18:15:21 -!- Slereah_ has quit (Read error: 104 (Connection reset by peer)).
18:26:37 -!- dogface has quit (Remote closed the connection).
18:41:35 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | that could be fun :).
18:44:22 <fizzie> oklopol; What's going on is that I implemented the "^bf turns brainfuck into bytecode and combines consecutive +-<>, then interprets that" but then was too busy to implement the ^bfcmd macro part.
18:44:43 <fizzie> I will do them with a bit different syntax this time around, too.
18:56:31 <oklopol> ^bfcmd addone ,[+.,]
18:56:36 <oklopol> why does this no work?
18:56:44 <oklopol> or did you just explain that
18:56:54 <oklopol> ohhh
18:57:02 <oklopol> right it's a remake
18:58:20 <fizzie> The interpreter itself seemed to work, at least rot13 and fib ran on it. But it needs the glue for command registration, and I've been trying to write it so that I can more easily plug other languages in.
18:59:11 <fizzie> I'll see if I can get the basic ^bfcmd replacement done today. Just arrived back from our new apartment, lots of real-world things to take care of when trying to organize a move.
19:00:17 <Deewiant> fizzie: zem.fi still claims it's befunge.org
19:00:51 <fizzie> Right, I need to remove the text from there and deconfigure other stuff.
19:16:10 -!- dogface has joined.
19:18:32 -!- KingOfKarlsruhe has joined.
19:32:27 <asiekierka> Hmm
19:36:01 <psygnisfive> lalala
19:36:06 <psygnisfive> oklopol
19:36:07 <psygnisfive> i love you
19:36:08 <psygnisfive> lalala
19:36:38 -!- sebbu has joined.
19:37:44 <oklopol> well that's a shocker
19:37:52 <psygnisfive> :)
19:37:54 <oklopol> psygnisfive: cookies or not?
19:38:05 <psygnisfive> you're offering, or you're want?
19:38:12 <oklopol> i am want, mostly.
19:38:22 <psygnisfive> i am not have D:
19:38:27 <fizzie> You can has!
19:39:12 <oklopol> psygnisfive: boolean is the question do answer.
19:39:16 -!- CrapBot has joined.
19:39:29 <asiekierka> Yay
19:39:31 <asiekierka> my bot is there
19:39:38 <ais523> CrapBot?
19:39:39 <oklopol> CrapBot: you're one crappy bot
19:39:44 <psygnisfive> what oklopol
19:39:45 <ais523> optbot: meet CrapBot!
19:39:45 <optbot> ais523: it's awesome
19:39:47 <asiekierka> Also, it logs the messages
19:39:47 <asiekierka> No wait it does not
19:39:49 -!- CrapBot has quit (Remote closed the connection).
19:39:51 <asiekierka> Yes it does
19:39:53 <ais523> asiekierka: optbot likes it, anyway
19:39:54 <optbot> ais523: the problem with it is that the graphics are 2D, and bf works in 1D
19:40:02 <asiekierka> it's my BFirc client.
19:40:07 <asiekierka> At least connection/disconnection work
19:40:13 <asiekierka> And it logs the messages (!)
19:40:20 <asiekierka> asiekierka>Yay
19:40:21 <asiekierka> asiekierka>my bot is there
19:40:21 <asiekierka> ais523>CrapBot?
19:40:21 <asiekierka> oklopol>CrapBot: you're one crappy bot
19:40:21 <asiekierka> psygnisfive>what oklopol
19:40:21 <asiekierka> ais523>optbot: meet CrapBot!
19:40:22 <optbot> asiekierka: As in it isn't so, or what?
19:40:23 <asiekierka> optbot>ais523: it's awesome
19:40:23 <optbot> asiekierka: the comments arent worth reading
19:40:23 <oklopol> err made in bf or what?
19:40:24 -!- asiekierka has quit (Read error: 104 (Connection reset by peer)).
19:40:43 -!- asiekierka has joined.
19:40:47 <asiekierka> Agreed with optbot.
19:40:47 <optbot> asiekierka: Gregor is a person
19:40:53 <asiekierka> Brb.
19:40:55 -!- asiekierka has changed nick to asie[brb].
19:41:01 <psygnisfive> D:
19:41:15 <oklopol> psygnisfive: okay can you at least just give me a random boolean value?
19:41:31 <psygnisfive> no!
19:41:33 <psygnisfive> yes!
19:41:33 <Deewiant> optbot: random boolean please
19:41:34 <optbot> Deewiant: eh
19:41:35 <psygnisfive> i dont know!
19:41:36 <psygnisfive> D:
19:41:37 <Deewiant> oklopol: ^
19:41:47 <oklopol> Deewiant: is that a "no"? :D
19:41:55 <oklopol> optbot: be clearer
19:41:56 <optbot> oklopol: the evaluation part is top-down too.
19:41:56 <psygnisfive> oklopol
19:41:59 <psygnisfive> ill bake you cookies
19:42:00 <Deewiant> interpret as you wish
19:42:06 <Deewiant> optbot: is "eh" true or false
19:42:06 <optbot> Deewiant: you need (null?) in (Con) as well
19:42:11 <oklopol> optbot: still not satisfied.
19:42:12 <optbot> oklopol: *be
19:42:17 <oklopol> optbot: true or false
19:42:17 <optbot> oklopol: remainder
19:42:20 <oklopol> :D
19:42:24 <oklopol> optbot: true or false
19:42:24 <optbot> oklopol: smart people are more likely to think before procreating, so more of them either become good parents or never have children. I somehow imagine the latter is more common.
19:42:25 <Deewiant> optbot: no, booleans are fine, we don't need nulls
19:42:25 <optbot> Deewiant: if it will replace all bots, one char is enough
19:42:33 <Deewiant> optbot: quite, but is it t or f
19:42:33 <optbot> Deewiant: sorry
19:42:42 <Deewiant> optbot: that's not very helpful
19:42:42 <optbot> Deewiant: And yes, there is a solution.
19:42:43 <oklopol> optbot: true or false
19:42:43 <optbot> oklopol: :)
19:42:51 <Deewiant> optbot: jerk
19:42:51 <optbot> Deewiant: hehe
19:42:53 <oklopol> what a fucker
19:42:54 <Deewiant> :-E
19:42:56 <oklopol> optbot: true or false
19:42:56 <optbot> oklopol: and even when I do I often finish typing and press enter anyway, even if it's redundant
19:43:04 <oklopol> good to know
19:43:05 <Deewiant> optbot: how dare you laugh at me
19:43:06 <optbot> Deewiant: how does / split the list?
19:43:10 <oklopol> optbot: true or false??
19:43:10 <optbot> oklopol: 34 ++++++++[>++++++++++++>>><<<<-]>+. [40]
19:43:11 <Deewiant> optbot: it's magic
19:43:11 <optbot> Deewiant: he use of runtime supplied hash functions via callback."
19:43:21 <Deewiant> oklopol: run that and see what it prints
19:43:21 <oklopol> i'm sure that was a question about Cise
19:43:25 <oklopol> :D
19:43:30 <Deewiant> if it's 0, it's false, otherwise true
19:43:46 <oklopol> :D
19:43:52 <oklopol> well that would be true then
19:43:58 <oklopol> which would not be very fair
19:44:03 <Deewiant> why not
19:44:07 <oklopol> optbot: i'm running out of time, true or false?
19:44:07 <optbot> oklopol: ie NMISC A B C 0 is forced to jump to the next instruction, and NMISC A B C 4 will skip the next instruction if bit33 is clear (ie no carry)
19:44:14 <Deewiant> optbot: ahh
19:44:14 <optbot> Deewiant: the transition part will definitely change anyway, so no use explaining that
19:44:17 <oklopol> optbot: i'm running out of time, really, true or false?
19:44:17 <Deewiant> optbot: yes
19:44:17 <optbot> oklopol: now you're just pissing and moaning. I made a game for you guys to enjoy. Play it and have fun or do something else and shut the hell up.
19:44:17 <optbot> Deewiant: yeah
19:44:26 <Deewiant> :-EEE
19:44:29 <oklopol> that was rodger's comment
19:44:34 <oklopol> about gulesfisher
19:44:41 <oklopol> optbot: true/false?
19:44:41 <optbot> oklopol: even though you only need either of them
19:44:44 <oklopol> yes
19:44:48 <oklopol> i only need one of them
19:44:51 <Deewiant> optbot: we're not playing a game, this is a life/death situation
19:44:51 <optbot> Deewiant: hrm. there is sort of a band between esoteric and joke language... sort of an "I DARE you to implement this"...: *W, SARTRE, Magenta, Tamerlane, TURKEY BOMB, probably others... they could be jokes, or esolangs, depending on the weather... wonder if they deserve their own category...
19:44:54 <oklopol> please just fucking give it to me
19:44:58 <oklopol> optbot: true/false?
19:44:58 <optbot> oklopol: i think i made a proof of some sort myself
19:45:01 <Deewiant> optbot: you're sidestepping the issue
19:45:01 <optbot> Deewiant: indeed
19:45:09 <Deewiant> optbot: so which is it
19:45:10 <oklopol> optbot: well please step back
19:45:10 <optbot> Deewiant: char* doesn't support unary minus of course
19:45:10 <optbot> oklopol: it'd be a state with more than one transition to it
19:45:11 <ais523> oklopol: optbot said "yeah" to Deewiant, why not just use that?
19:45:12 <optbot> ais523: ok fixed
19:45:21 <oklopol> ais523: sounds feasible.
19:45:27 * oklopol goes to the shopper ->
19:45:44 <Deewiant> "yeah" could equally well be "yeah, I don't know" or something
19:45:52 <Deewiant> optbot: was that a sincere "yeah"?
19:45:52 <optbot> Deewiant: does it?
19:45:57 <Deewiant> optbot: I'm asking you
19:45:57 <optbot> Deewiant: (Canvas is slow as shit and doesn't work on quite a number of browsers.)
19:46:00 <Deewiant> optbot: quite
19:46:00 <optbot> Deewiant: since when can you not repeat enumerator names in different enums >_<
19:46:14 <Deewiant> optbot: depends on the language
19:46:14 <optbot> Deewiant: but not 32-bit funge types on 64-bit
19:46:18 <Deewiant> optbot: quite
19:46:18 <optbot> Deewiant: ObjC is actually pretty esoteric in some ways. Probably due to SmallTalk.
19:46:21 <Deewiant> optbot: aye
19:46:21 <optbot> Deewiant: kala den pame kala edo mesa....
19:46:26 <Deewiant> optbot: eh?
19:46:26 <optbot> Deewiant: ug
19:46:31 <Deewiant> optbot: mu
19:46:32 <optbot> Deewiant: @move 5
19:53:28 <asie[brb]> Back
19:53:58 -!- asie[brb] has changed nick to asiekierka.
19:54:07 <asiekierka> So, returning to my BFIRC botg
19:54:08 <asiekierka> bot*
19:54:18 <asiekierka> I have the channel part
19:54:24 <asiekierka> Now comes the file-reading part
19:54:29 <asiekierka> then the BF interpreting part
19:59:07 -!- CrapBot has joined.
20:00:56 -!- CrapBot has quit (Remote closed the connection).
20:03:12 -!- LinuS has quit (Connection timed out).
20:07:30 <asiekierka> Adding log handling for everything
20:09:06 -!- CrapBot has joined.
20:09:19 -!- CrapBot has quit (Remote closed the connection).
20:10:27 -!- CrapBot has joined.
20:10:39 -!- CrapBot has quit (Remote closed the connection).
20:11:03 -!- CrapBot has joined.
20:11:14 <asiekierka> Whew. All the handling should be done.
20:11:14 -!- asiekierka has left (?).
20:11:18 -!- asiekierka has joined.
20:11:24 <asiekierka> Yes, yes it is.
20:11:35 -!- CrapBot has quit (Remote closed the connection).
20:12:18 -!- CrapBot has joined.
20:12:27 -!- CrapBot has quit (Remote closed the connection).
20:12:28 <asiekierka> Oki, no more testing.
20:12:37 <asiekierka> for now
20:12:50 -!- LinuS has joined.
20:13:21 <asiekierka> Yayz, the whole MSG handling for logs is done.
20:13:34 -!- olsner has joined.
20:13:37 <asiekierka> Now i must write the file-reading part, then the interpreter itself.
20:22:13 <asiekierka> Yay
20:22:17 <asiekierka> the file-reading part is done
20:22:27 <asiekierka> Now goes the BF-interpretation part
20:27:16 <asiekierka> + - < > implemented
20:27:21 <asiekierka> Now go teh loopy loops
20:27:51 <asiekierka> or not, maybe the buffer implementation shall be better
20:28:51 <asiekierka> Nope
20:28:54 <asiekierka> too bored for now
20:29:51 <LinuS> i can't code at all at night :(
20:33:38 <psygnisfive> youre not a true geek
20:34:05 <LinuS> it seems so.. i lost concentration at all after 7 PM
20:34:18 <asiekierka> It's 9:34 PM here
20:34:37 <asiekierka> And i just can't think of more advanced stuff than +, -, >, < at that time
20:35:08 <psygnisfive> hahaha
20:35:09 <LinuS> it's 9:34 there aswell
20:35:28 <asiekierka> Well
20:35:30 <asiekierka> sometimes i can
20:35:44 <asiekierka> But not as advanced as getting a whole buffer and i/o for it along with loops
20:36:02 <LinuS> i can when i'm in a study period at university
20:36:14 <LinuS> i also can study something at night
20:36:17 <LinuS> but now..in summer..
20:36:31 <LinuS> 13-19 is the only time in which i can do something.. :P
20:36:40 <asiekierka> In summer i'm even better at thinking
20:38:37 -!- KingOfKarlsruhe has quit (Remote closed the connection).
20:42:54 <ais523> TUSHO LOGREAD NOTICE: You fail at setting Anagolf Brainfuck problems.
20:42:56 <ais523> your output:
20:42:56 <ais523> Hello World!
20:42:56 <ais523> expected:
20:42:56 <ais523> Hello, world!
20:53:10 -!- twistle has quit ("doing stuff").
20:55:40 <ais523> $/='!';eval join '',@{{'+','$t[$p]++;','-','$t[$p]--;','<','$p--;','>','$p++;','[','while($t[$p]){',']','}',',','$t[$p]=ord getc;','.','print chr $t[$p];'}}{split //,<>}
20:56:13 <ais523> actually,
20:56:17 <ais523> $/='!';eval join'',@{{'+','$t[$p]++;','-','$t[$p]--;','<','$p--;','>','$p++;','[','while($t[$p]){',']','}',',','$t[$p]=ord getc;','.','print chr $t[$p];'}}{split//,<>}
20:59:44 <ais523> $/='!';eval join'',@{{'+','$t[$p]++;','-','$t[$p]--;','<','$p--;','>','$p++;','[','while($t[$p]){',']','}',',','$t[$p]=ord getc;','.','print chr$t[$p];'}}{split//,<>}
20:59:46 <ais523> (saves one character)
21:02:01 -!- MikeRiley has joined.
21:04:56 -!- asiekierka has quit (Read error: 110 (Connection timed out)).
21:05:42 -!- MikeRiley has quit (Client Quit).
21:10:46 -!- fungot has joined.
21:11:02 <fizzie> There are probably still bugs in the fungot. And the syntax has changed.
21:11:17 <ais523> is fungot human or a bot?
21:11:43 <fizzie> A Funge-98 bot.
21:11:51 <fizzie> ^def echo bf >,[>,]<[<]>[.>]<[<]++++++++++++++++++++++++++++++++.>[.>]
21:11:51 <fungot> Defined.
21:11:52 <ais523> fizzie: how is it operated?
21:11:54 <fizzie> ^show
21:11:54 <fungot> echo
21:11:56 <fizzie> ^show echo
21:11:56 <fungot> >1,[>1,]>999[>999]>1[.>1]>999[>999]+32.>1[.>1]
21:12:00 <fizzie> ^echo foo
21:12:00 <fungot> foo foo
21:12:03 <fizzie> Like that.
21:12:35 <ais523> fizzie: that tape seems to be hardcoded at length 1000
21:12:53 <ais523> also, that looks like Brainfuck not Funge-98
21:12:54 <fizzie> Yes, it is. And the bytecode decompiler doesn't bother changing 999 to -1 for display.
21:12:59 <fizzie> The bot is written in Funge-98.
21:13:07 <fizzie> And executes Brainfuck programs.
21:13:12 <ais523> ah, written in Funge but implements Brainfuck?
21:13:15 <fizzie> Yes.
21:13:20 <ais523> that's great
21:13:24 <ais523> does it do anything else?
21:13:50 <fizzie> http://zem.fi/~fis/fungot.b98.txt
21:13:56 <fizzie> Not yet, but it should be possible to add more languages.
21:14:10 <fizzie> It also has operator-only ^reload, ^code and ^raw commands, but those aren't exactly interesting.
21:14:13 <fizzie> ^help
21:14:14 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf
21:14:42 <ais523> fizzie: any way to define a command that's too long for one line of IRC?
21:15:11 <fizzie> Not currently. There was a ^bfcmd/^bfadd pair that could be used to append to a program, but it got scrapped when I wrote the bytecode-based brainfuck interpreter.
21:16:17 <fizzie> I'm planning to add something like "^str set 0 foo", "^str add 0 bar", "^def foobar bf str://0"; and maybe even "^def foobar bf http://..."
21:16:23 <ais523> that's a pity, really, I have a 984-char BF program (a slightly modified version of a program written by Keymaker) that inteprets Underload, in a way designed for use as an EgoBot daemon
21:16:31 -!- Corun has joined.
21:16:40 <ais523> and I think the original could work on fungot, the way its syntax seems to work
21:17:27 <fizzie> ^bf >,[>,]<[.<]!brainfuck takes input like this
21:17:27 <fungot> siht ekil tupni sekat kcufniarb
21:17:42 <fizzie> But with defined commands anything after the command name becomes the input.
21:20:23 <fizzie> ^reload
21:20:24 <fungot> Reloaded.
21:20:41 <fizzie> Persistence is also missing, it could save the defined commands to a file or something.
21:21:05 <fizzie> (A simple ^reload won't kill them, but restarting the bot will.)
21:21:20 <fizzie> ^def rev bf >,[>,]<[.<]
21:21:20 <fungot> Defined.
21:21:31 <fizzie> ^rev tobtpo
21:21:32 <fungot> optbot
21:21:32 <optbot> fungot: |0> and |0>/sqrt(2) are different thinges.
21:23:32 -!- RedDak has joined.
21:27:50 <oklopol> ^def cool bf ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.
21:27:51 <fungot> Defined.
21:27:53 <oklopol> ^cool o
21:27:53 <fungot> Z
21:28:04 <oklopol> ^def bf bf bf
21:28:04 <fungot> Defined.
21:28:13 <oklopol> ^bf ++++++++[>++++++++<-]>+.
21:28:14 <fungot> A
21:28:16 <oklopol> :<
21:28:22 <oklopol> fizzie: damn you
21:30:37 <fizzie> Only after handling built-ins does it go and check user-defined commands.
21:30:40 <fizzie> ^show cool
21:30:41 <fungot> +90.
21:31:00 <fizzie> ^def cool bf ++++++++[>++++++++<-]>+.
21:31:00 <fungot> Defined.
21:31:02 <fizzie> ^show cool
21:31:02 <fungot> +8[>1+8>999+255]>1+1.
21:31:03 <ais523> ^show bf
21:31:15 <ais523> ah, it's the null string
21:31:16 <fizzie> Hmm.
21:31:23 <fizzie> Oh, right.
21:32:26 <fizzie> It really should use <1 and -1 instead of >999 and +255, but the current ^show is so nice and simple.
21:33:31 <ais523> ^def dbfi
21:33:31 <ais523> >>>+http://en.wikipedia.org/wiki/Special:Search?go=Go&search=-]>>[-]++>+>+++++++[<++++>>++<-]++>>+>+>+++++[>++>++++++<<-]+>>>,<++[[>[->>]<[>>]<<-]<[<]<+>>[>]>[<+>-[[<+>-]>]<[[[-]<]++<-[<+++++++++>[<->-]>>]>>]]<<]<]<[[<]>[[>]>>[>>]+[<<]<[<]<+>>-]>[>]+[->>]<<<<[[<<]<[<]+<<[+>+<<-[>-->+<<-[>+<[>>+<<-]]]>[<+>-]<]++>>-->[>]>>[>>]]<<[>>+<[[<]<]>[[<<]<[<]+[-<+>>-[<<+>++>-[<->[<<+>>-]<[>+<-]>]>[>]>]>[>>]>>]<<[>>+>>+>>]<<[->>>>>>>>]<<[>.>>>>>>>]<<[>->>>>>]<<[>,>>
21:33:31 <ais523> >]<<[>+>]<<[+<<]<]
21:33:31 <fungot> Usage: ^def <command> <lang> <code>
21:33:43 <ais523> whoops, stupid automatic substitution
21:34:08 <ais523> ^def dbfi >>>+[[ -]>>[-]++>+>+++++++[<++++>>++<-]++>>+>+>+++++[>++>++++++<<-]+>>>,<++[[ >[->>]<[>>]<<-]<[<]<+>>[>]>[<+>-[[ <+>-]>]<[[[
21:34:08 <ais523> -]<]++<-[<+++++++++>[<->-]>>]>>]]<<]<]<http://en.wikipedia.org/wiki/Special:Search?go=Go&search=<]>[[>]>>[>>]+[<<]<[<]<+>>-]>[>]+[->>]<<<<[[<<]<[<]+<<[+>+<<-[>-->+<<-[>+<[>>+<<-]]]>[<+>-]<]++>>-->[>]>>[>>]]<<[>>+<[[<]<]>[[<<]<[<]+[-<+>>-[<<+>++>-[<->[<<+>>-]<[>+<-]>]>[>]>]>[>>]>>]<<[>>+>>+>>]<<[->>>>>>>>]<<[>.>>>>>>>]<<[>->>>>>]<<[>,>>>]<<[>+>]<<[+<<]<]
21:34:08 <fungot> Usage: ^def <command> <lang> <code>
21:34:45 <ais523> ^def dbfi >>>+[[-]>>[-]++>+>+++++++[<++++>>++<-]++>>+>+>+++++[>++>++++++<<-]+>>>,<++[[>[->>]<[>>]<<-]<[<]<+>>[>]>[<+>-[[<+>-]>]<[[[-]<]++<-[<+++++++++>[<->-]>>]>>]]<<]<]<[[<]>[[>]>>[>>]+[<<]<[<]<+>>-]>[>]+[->>]<<<<[[<<]<[<]+<<[+>+<<-[>-->+<<-[>+<[>>+<<-]]]>[<+>-]<]++>>-->[>]>>[>>]]<<[>>+<[[<]<]>[[<<]<[<]+[-<+>>-[<<+>++>-[<->[<<+>>-]]]<[>+<-]>]>[>]>]>[>>]>>]<<[>>+>>+>>]<<[->>>>>>>>]<<[>.>>>>>>>]<<[>->>>>>]<<[>,>>>]<<[>+>]<<[+<<]<]
21:34:45 <fungot> Usage: ^def <command> <lang> <code>
21:34:48 -!- RedDak has quit (Read error: 113 (No route to host)).
21:34:51 <ais523> ^def dbfi bf >>>+[[-]>>[-]++>+>+++++++[<++++>>++<-]++>>+>+>+++++[>++>++++++<<-]+>>>,<++[[>[->>]<[>>]<<-]<[<]<+>>[>]>[<+>-[[<+>-]>]<[[[-]<]++<-[<+++++++++>[<->-]>>]>>]]<<]<]<[[<]>[[>]>>[>>]+[<<]<[<]<+>>-]>[>]+[->>]<<<<[[<<]<[<]+<<[+>+<<-[>-->+<<-[>+<[>>+<<-]]]>[<+>-]<]++>>-->[>]>>[>>]]<<[>>+<[[<]<]>[[<<]<[<]+[-<+>>-[<<+>++>-[<->[<<+>>-]]]<[>+<-]>]>[>]>]>[>>]>>]<<[>>+>>+>>]<<[->>>>>>>>]<<[>.>>>>>>>]<<[>->>>>>]<<[>,>>>]<<[>+>]<<[+<<]<]
21:34:51 <fungot> Defined.
21:35:17 <ais523> ^dbfi >,[>,]<.[<.]!testing
21:35:18 <fungot> gnitset.
21:35:35 <ais523> ^dbfi >,[>,]<[.<]!testing
21:35:36 <fungot> gnitset
21:36:29 -!- Judofyr has quit.
21:36:56 <fizzie> There are some limits for amount of brainfuck instructions executed and amount of output generated.
21:37:12 <fizzie> ^bf ++++++++[>++++++++<-]>+[.]
21:37:12 <fungot> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA[ ...
21:37:26 <ais523> why that [ at the end?
21:37:29 <fizzie> Hmm, that last [ there must be a bug.
21:37:46 <fizzie> Probably adds the " ..." in an incorrect location, or there's something extra in the stack.
21:37:53 <ais523> fizzie: add an Underload interp next, it's not too hard to write in most langs, although harder than BF
21:39:00 <fizzie> ^bf >++++++++++>+>+[[+++++[>++++++++<-]>.<++++++[>--------<-]+<<<]>.>>[[-]<[>+<-]>>[<<+>+>-]<[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>[-]>+>+<<<-[>+<-]]]]]]]]]]]+>>>]<<<]
21:39:02 <fungot> 0.1.1.2.3.5.8.13.21.34.55.89.144.233.377.610.987.1597.2584.4181.6765.10946.17711.28657.46368.75025.121393.196418.317811.514229.832040.1346269.2178309.3524578.5702887.9227465.14930352.24157817.39088169.632459[ ...
21:39:08 <fizzie> That one also has that [ in there.
21:39:23 <ais523> that's a pretty short BF program for what it does!
21:39:31 <ais523> are you using 32-bit cells?
21:39:37 <ais523> if so then that's simpler
21:39:46 <fizzie> No, the cells are one byte wide.
21:39:59 <fizzie> And the program is not mine. :/
21:40:02 <ais523> so it's bignum Fibonnacci
21:40:10 <ais523> probably harder to write than a BF interp, for that matter
21:40:32 <fizzie> Very possible. The interpreter just needed some persistence, not cleverness.
21:40:51 <ais523> I have a BF interp as my new quit message
21:40:52 -!- ais523 has left (?).
21:40:52 -!- ais523 has joined.
21:41:41 <ais523> but it didn't come up for some reason
21:42:11 <fizzie> ^bf +[]
21:42:17 <fungot> ...out of time!
21:42:42 <ais523> ^help
21:42:42 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf
21:42:53 <fizzie> That limit does not generate any extra characters, even though the "append a message and quit" is done the same way.
21:42:58 <ais523> ^def hi dbfi ,[.,]!Hello, world!
21:42:59 <fungot> Usage: ^def <command> <lang> <code>
21:43:00 <ais523> ^hi
21:43:18 <ais523> fizzie: it doesn't allow def in defined languages?
21:43:59 <fizzie> Well, no. ^def is not really a simple macro thing, it keeps the brainfuck in the compiled bytecode form.
21:45:18 <fizzie> ^bf ,[.,]+[]!What about the "..." message this time?
21:45:44 <fizzie> Hmmmm...
21:45:59 <fizzie> Your '^hi' command killeded it. :p
21:46:04 -!- fungot has quit (Read error: 131 (Connection reset by peer)).
21:46:19 <ais523> fizzie: how did I manage that?
21:46:22 <ais523> it wasn't even defined...
21:46:30 <fizzie> Maybe it breaks on all undefined commands.
21:47:01 <fizzie> That doesn't seem to be the case.
21:48:07 <fizzie> Heh, it seems like it defines the "hi" command, and only after that checks if the lang is supported.
21:50:22 -!- fungot has joined.
21:50:41 <fizzie> ^def test nosuchlang sillycode
21:50:41 <fungot> Usage: ^def <command> <lang> <code>
21:50:45 <fizzie> ^test it
21:50:51 <fizzie> ^show
21:50:51 <fungot> test
21:50:53 <fizzie> ^show test
21:51:25 <fizzie> Too tired to rearrange code, so I just made it an empty brainfuck command if the language is not recognized.
21:55:05 <fizzie> Um.
21:55:15 <fizzie> There seems to be another bug in there somewhere.
21:55:50 <fizzie> The output of '^show test' corrupted the next input message. I think I'll close that thing down before it dies and fix it later.
21:56:19 <fizzie> ^raw QUIT :Hit an @.
21:56:19 -!- fungot has quit ("Hit an @.").
22:04:17 -!- dogface has quit (Read error: 104 (Connection reset by peer)).
22:36:56 -!- tusho has joined.
23:02:06 -!- KingOfKarlsruhe has joined.
23:12:35 <ais523> hi tusho
23:13:29 <tusho> haha hi ais523
23:13:30 <tusho> :)
23:13:54 <tusho> bit slow though, ais523
23:13:56 <tusho> almost a whole hour
23:14:17 <ais523> yes...
23:14:22 <ais523> I didn't expect you to be here tonight
23:14:39 <ais523> because it was so long before you turned up
23:14:48 <ais523> incidentally your BF-fixed thing on anagolf is also broken
23:14:53 <tusho> yes, I was out for the day
23:14:54 <tusho> and I know
23:14:54 <tusho> :P
23:15:02 <tusho> (Got up at 5am. Only had like 2-3 hours of sleep. Yeaaah...)
23:15:04 <ais523> I have a new sig though
23:15:07 -!- ais523 has left (?).
23:15:07 -!- ais523 has joined.
23:15:14 <ais523> did it show up?
23:15:19 <tusho> yes
23:15:22 <tusho> well
23:15:24 <tusho> [23:15:07] ↠ais523 left the channel. ("$/='!';eval join'',@{{'+','$t[$p]++;','-','$t[$p]--;','<','$p--;','>','$p++;','[','while($t[$p]){',']','}',',','$t[$p]=ord ge)
23:15:25 <tusho> no
23:15:38 <ais523> bah, truncated?
23:15:40 <tusho> http://golf.shinh.org/p.rb?main <- lol wut
23:15:41 <tusho> and yes
23:16:41 <ais523> $/='!';eval join'',@{{'+','$t[$p]++;','-','$t[$p]--;','<','$p--;','>','$p++;','[','while($t[$p]){',']','}',',','$t[$p]=ord getc;','.','print chr$t[$p];'}}{split//,<>}
23:16:44 <ais523> the whole thing
23:16:50 <tusho> brainfuck?
23:16:54 <ais523> yes
23:16:55 <ais523> golfed
23:17:01 <tusho> not what I'd have expected from you :D
23:17:02 <ais523> it was my attempt at your BF-golf thing
23:17:10 <ais523> but it's too slow on the second challenge
23:17:47 <ais523> tusho: why not?
23:18:06 <ais523> I especially like the ',',',' bit, that's really hard to parse by eye
23:18:11 <tusho> ais523: you never seemed to take an interest in brainfuck, i guess
23:18:30 <ais523> tusho: nah, I'm interested in Brainfuck, although not fanatical about it
23:19:16 <ais523> also I accidentally said "moth languages" in #nethack due to a typo and everyone started laughing
23:23:45 <ais523> I was talking about inventing an esolang to rewrite nethack into
23:28:29 -!- KingOfKarlsruhe has quit (Remote closed the connection).
23:37:36 -!- ais523 has quit ("$/='!';eval join'',@{{'+','$t[$p]++;','-','$t[$p]--;','<','$p--;','>','$p++;','[','while($t[$p]){',']','}',',','$t[$p]=ord ge).
23:46:24 -!- olsner has quit ("Leaving").
23:55:09 -!- poiuy_qwert has joined.
23:59:38 -!- LinuS has quit ("Puzzi. Sì, parlo proprio con te. Puzzi.").
â†2008-08-17 2008-08-18 2008-08-19→ ↑2008 ↑all