00:06:23 -!- ehird` has quit. 00:28:26 -!- Tritonio has quit (Remote closed the connection). 01:15:16 -!- ihope_ has quit (Read error: 110 (Connection timed out)). 03:03:31 -!- Sos`` has joined. 03:03:56 -!- Sos`` has left (?). 03:13:57 * pikhq returneth 03:15:09 where hast thou been, oh wretched knave? 03:15:28 School. 03:15:41 You know, the place that eats your soul away. 03:16:09 bsmntbombdood: Education promotes wisdom. Of course, schools rarely, if ever, promote education. 03:16:31 ay, there's the rub! 03:17:08 (Public schools do bullshit work in the name of education, and you learn in spite of it. Colleges say "Here's the information. Learn if you want, or blow several thousand if you want.") 03:19:07 *aye, even 03:24:15 * oerjan makes a note not to discuss school with anyone in it right after the end of summer break. 03:24:44 LMAO 03:25:31 :( 03:25:32 this, unfortunately, is the kind of information i _never_ remember. 03:25:49 at least i have only minimal school time this year 04:15:38 -!- calamari has joined. 04:29:45 -!- bsmntbom1dood has joined. 04:32:56 -!- poiuy_qwert has joined. 04:37:22 -!- kwertii has quit. 07:06:58 -!- oerjan has quit (heinlein.freenode.net irc.freenode.net). 07:08:50 -!- oerjan has joined. 07:25:14 -!- calamari has quit ("Leaving"). 07:26:56 -!- oerjan has quit ("leaving"). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:30:44 -!- GreaseMonkey has joined. 08:35:42 -!- poiuy_qwert has quit. 08:52:25 -!- okloTeX has quit (Read error: 104 (Connection reset by peer)). 10:16:19 -!- jix_ has joined. 10:35:11 -!- GreaseMonkey has quit ("night all"). 10:44:38 -!- Tritonio has joined. 11:31:27 -!- ehird` has joined. 12:00:56 -!- ihope_ has joined. 13:17:31 -!- ehird`_ has joined. 13:30:36 -!- RedDak has joined. 13:40:31 -!- ehird`_ has quit. 14:01:51 -!- Figs has joined. 14:18:51 -!- Figs has left (?). 14:26:10 -!- Tritonio has quit (Read error: 104 (Connection reset by peer)). 14:31:43 -!- Tritonio has joined. 14:43:46 -!- jix_ has quit ("CommandQ"). 14:44:09 -!- jix_ has joined. 14:44:15 -!- Tritonio has quit ("Bye..."). 14:47:38 -!- Tritonio has joined. 15:09:12 -!- Tritonio has quit (Read error: 110 (Connection timed out)). 15:09:57 -!- ehird`_ has joined. 15:12:48 -!- ehird`_ has quit (Client Quit). 15:14:26 -!- ehird`_ has joined. 15:17:19 -!- ehird`_ has quit (Client Quit). 15:47:21 -!- oerjan has joined. 15:57:38 -!- sebbu has joined. 16:23:24 -!- Tritonio has joined. 16:44:06 -!- sebbu2 has joined. 17:02:32 -!- sebbu has quit (Success). 18:00:47 -!- zeb has joined. 18:04:27 -!- oerjan has quit ("Supper"). 18:06:33 -!- jix_ has quit (Read error: 104 (Connection reset by peer)). 18:09:40 -!- ehird`_ has joined. 18:10:08 -!- ehird`_ has quit (Client Quit). 18:12:25 -!- jix_ has joined. 18:20:20 * zeb has never used IRC before 18:25:29 XD 18:26:12 (the silence deafens) 18:26:17 Indeed. 18:26:51 then again, this is quite an esoteric channel 18:27:09 ;) 18:30:32 yes 18:42:18 -!- RedDak has quit (Read error: 104 (Connection reset by peer)). 18:45:58 so I have this brainfuck variant... 18:46:27 just finished proving it was turing complete 18:47:12 how is it different? 18:47:19 no > or < 18:47:32 instead, there's a * command 18:47:41 it jumps to the nth cell 18:47:59 also, the values stored in cells are unbounded 18:48:06 neat 18:48:45 in theory, this could be faster than bf because it allows random access 18:49:06 so you could do things like heapsort 18:49:49 unfortunately, adding two numbers looks like this: 18:51:34 ,++*+*,+[+*[-]+*+*[-]*--]+*---. 18:56:52 ouch 18:57:13 very esoteric 18:57:35 Near as I can tell, it'd be impossible to leave something stored in a cell and then leave that cell. . . 18:57:38 well, you can translate from brainfuck directly into this 18:57:57 by starting with 256 +s, then a * 18:58:11 then replace > with [*]*+* 18:58:18 and < with [*]*-* 18:59:07 try hello world with those replacements 18:59:19 I want to see that :D 19:00:19 [*] makes me happy 19:01:00 except it could easily infinitely loop, no? 19:01:05 cell 1 has 2, cell 2 has 1 19:01:11 not if the values are less than 256 19:01:29 and cells 1-255 are empty 19:01:42 ah 19:02:31 zeb: make the values unsigned 19:02:37 yes that too 19:02:38 then -1 = first character of program, etc 19:02:47 wait no 19:02:50 you could make INSANE self-modifying code and loops with that 19:02:51 :D 19:02:52 doubly infinite tape 19:02:58 hrm 19:03:00 maybe 19:03:19 so, < and > wrap, but you can use * with negative numbers being program locations 19:03:25 and then, of course, a positive * to get back again 19:04:14 but, there is no > and < 19:04:22 err true 19:04:22 ok 19:04:23 so just 19:04:29 >0 * = jump in tape 19:04:40 <0 * = jump in program (reversed -1 = first, -2 = second, etc) 19:04:52 and, of course, you can modify the program as well as read it in realtime 19:04:59 its like self-modifying brainfuck but more crazy 19:05:16 but wouldn't that be... evil? 19:05:27 * SimonRC has dinner. 19:06:01 zeb: Yes. 19:06:52 You could make an infinite loop by going into your own sourcecode, going to the end, then appending the whole source code to it 19:06:54 Exponential quine! 19:06:57 CODE -> CODECODE 19:07:02 CODECODE -> CODECODECODECODE 19:07:07 CODECODECODECODE -> etc 19:07:10 err 19:07:10 not quine 19:07:11 loop 19:07:32 alright, someone wanted hello world? 19:07:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*[*]*+*+++++++++[[*]*-*++++++++[*]*+*-][*]*-*.[*]*+*+++++++[[*]*-*++++[*]*+*-][*]*-*+.+++++++..+++.[*]*+++*++++++++[[*]*-*++++[*]*+*-][*]*-*.[*]*+++*++++++++++[[*]*-*+++++++++[*]*+*-][*]*-*---.[*]*----*.+++.------.--------.[*]*++*+. 19:07:49 (you asked for it) 19:08:51 that could probably be shortened quite a bit, though 19:14:45 for the self modifying one... I just realized how evilly that could work 19:22:45 but then [-*+] creates an error 19:23:23 sorry, meant +[--*+] 19:24:52 argh 19:24:53 no 19:25:05 it should be +[---*+] 19:32:27 yeah, self-modifying evil is fun 19:32:36 quines, for instance, are /trivial/ :) 19:32:55 -[.-]? 19:33:04 so . is indirect? 19:33:09 er oops 19:33:18 it prints >? 19:33:22 -[*.**-] 19:33:38 no, it just prints 19:33:44 hm 19:33:46 .** 19:33:59 won't that go to the ascii value of the current peice of code? 19:34:00 well, characters are usually positive 19:34:05 ah, i get it 19:34:10 and yeah 19:34:12 that should work 19:34:49 but it doesn't wuit when it's supposed to 19:35:30 ? 19:35:49 once it passes the end of the program, what does it do? 19:38:18 ok ok I have another esolang 19:38:27 (it's a turing tarpit) 19:39:11 the gimmick this time is that it is only turing complete because of the comments 19:40:40 zeb: what do you mean what does it do? 19:41:52 -[*.**-] won't quit when it finishes outputting it's code. It'll keep running, and possibly raping children 19:42:30 that was a grammatical failure. I'm sorry 19:43:35 so make it: 19:43:41 hm 19:43:43 well 19:44:04 basically 19:44:07 after the * 19:44:10 OH! A DO-WHILE LOOP 19:44:18 if (not blah) { [-] } 19:44:21 or rather 19:44:29 if (blah) { jump stuff[-] } 19:45:04 *.**[-*.**] works! (assuming the cells other than the code are 0) 19:45:24 soory, stick a - in the front of that 19:47:16 have you implemented it yet :( 19:47:25 *:) 19:47:26 um not really 19:48:06 unless "write out what happens by hand" counts 19:49:34 plus, I don't see how the language should handle possibly missing [s and ]s 19:49:54 especially if it's self modifying 19:51:56 * Eidolos wants zebfuck macros 19:52:06 -!- ihope_ has quit (Read error: 110 (Connection timed out)). 19:52:25 * zeb would rather call it brain* 19:52:29 We'll call it the Practical Esoteric Zebfuck-Based Language, Eh? 19:52:34 PEZBLE. 19:53:26 wait, how is it practical? 19:56:20 random access makes it practical :) 19:56:49 zeb: it should just error out 19:56:56 zeb: use some kind of stack+instruction-based check 19:57:18 so removing an ] will work fine until it reaches the end of file, probably 19:58:19 I dunno 19:59:11 any selfmodifying language *shouldn't* have the possibility of syntax errors 20:00:56 er 20:01:25 Then how, might I ask, does assembly get away with having just that? 20:01:46 well, it might, but it shouldn't 20:02:04 it... it just feels wrong 20:02:17 umm. 20:02:31 are there any self-modifying languages that don't have syntax errors? 20:02:34 the only language without syntax errors will invariably be a forthoid 20:02:41 forth can self-modify. i think 20:02:49 well 20:03:00 we could just remove [ and ] from our instruction set 20:03:03 no 20:03:12 maybe selfmodifyingness can save us? 20:03:22 maybe, but it's stupid 20:03:27 just let syntax errors happen when they happen 20:03:33 self-modifying is evil in the first place. 20:06:48 I guess I can live with that... but only as a temporary solution 20:07:07 how about this: 20:07:18 if a [ doesn't have a matching ], ignore it 20:07:29 same for ] 20:07:43 no syntax errors! 20:09:22 :/ 20:09:23 no 20:09:26 that will break a lot of hacks 20:10:26 ooh 20:11:29 basically, keep a stack of loops 20:11:33 do a check each instruction 20:11:43 if you get to the end of the file, and the stack isn't empty, error out 20:11:50 if you try to pop from the stack and it's empty, error out 20:11:57 simple, and allows lots of leeway 20:20:32 +*++++++[+**--- -----*[ -]+*--] *[**-*, ] ought to read a program and then execute it 20:21:32 maybe... it probably needs to be tweaked 20:23:23 that'll interfere 20:23:31 minus numbers won't be the program itself, for example, in it 20:23:36 a self-interpreter for this would be... hard 20:24:04 that's what the spaces are for 20:26:09 wait how will it interfere? the input gets entered after the end of the program 20:26:58 oh 20:27:00 then cool 20:27:17 so you can run a quine in it? 20:27:25 wouldn't requests to -1 go to the source code of that interpreter? 20:28:00 you want it to still work even with self-modifying input code?! 20:30:31 oh, another point about self-modifyingness: should the program be terminated by an EOF? 20:30:53 I say yes 20:32:08 ummmmmmm, what 20:32:11 there is no "EOF" 20:32:15 there is no EOF character 20:32:30 um -1 then 20:33:19 because otherwise the interpreter might go interpreting 0s on forever 20:40:30 no 20:40:35 interpret 0 = byebye 20:40:41 and you can't have -1 in a file.. 20:40:52 that works just as well 20:41:59 but now my program above no longer works :( 21:05:27 -!- RedDak has joined. 21:29:24 -!- pikhq has quit ("Rebooting for kernel update."). 21:34:15 -!- pikhq has joined. 21:40:27 hmm, I guess what I meant is that after the end of a source file, the next memory cell should contain -1 21:42:27 -!- kwertii has joined. 21:46:08 -!- kwertii has quit (Client Quit). 21:46:21 -!- kwertii has joined. 21:50:58 -!- jix_ has quit ("CommandQ"). 22:08:21 -!- oerjan has joined. 22:47:55 -!- sebbu2 has quit ("@+"). 23:28:32 -!- RedDak has quit (Remote closed the connection). 23:54:51 -!- ehird` has quit (Read error: 104 (Connection reset by peer)).