00:00:09 pc (x86) is the most importand platform 00:00:12 compiled code 00:01:51 cpressey, have you thought of writing a tab2sf program, that would try to generate the shortest possible smallfuck code for a particular table? 00:02:01 that would be an interesting approach to data compression 00:02:35 table? 00:03:28 jix, have you seen sf2tab? it compiles smallfuck programs into lookup tables 00:03:42 http://catseye.webhop.net/projects/sf2tab 00:03:45 -!- calamari has quit ("Leaving"). 00:05:20 <{^Raven^}> bfbasc inside the bfbasic distro is a good unoptimising BF>asm compiler for x86 DOS/WinConsole 00:05:44 <{^Raven^}> jix: ^^^ 00:10:44 -!- yrz has quit (Read error: 104 (Connection reset by peer)). 00:11:16 -!- yrz has joined. 00:13:51 -!- Aardwolf has joined. 00:15:04 -!- jix2 has quit (Remote closed the connection). 00:16:46 Hi 00:17:53 hi 00:18:38 i'm now to this channel :) 00:19:01 Welcome :) 00:19:18 <{^Raven^}> hi (nice nick btw :) 00:19:33 thanks! 00:20:13 btw "now" was a typo, I meant "new" 00:24:18 Another exciting conversation on #esoteric ;) 00:26:53 * {^Raven^} is writing a game on a different computer 00:27:28 -!- jimbo000 has joined. 00:30:07 So Aardwolf, what languages are you in to? 00:32:27 Hmm I like befunge type languages 00:33:01 I made one too 00:33:01 Ahh, very nice, have anything particularly interesting and/or strange you've written? 00:33:12 Well, you answered my question before I asked :) 00:33:20 :) 00:33:29 Spec? 00:33:39 (And/or reference implementation) 00:33:48 Gammaplex, a befunge like that can do graphics 00:34:23 Oh, I've seen that on the wiki. 00:34:42 How did you come to find out about the wiki / this channel? Mailing list, google? 00:34:53 google 00:35:10 what languages are you in to? :) 00:35:42 Well, I've always liked the classique BrainFuck. 00:35:53 I wrote 2L, FYB and ORK. 00:36:03 Only one of which is notable :-P 00:36:06 Aardwolf: is gammaplex open source? 00:36:12 Yes, it is 00:36:37 ah i found the link 00:36:43 I also really like the language Piet 00:37:35 Now, I may be going out on a limb, but it seems to me that you like the idea of non-textuality? :) 00:38:05 hehe, appearantly :D 00:38:32 I'm looking up your languages in the wiki 00:40:36 GregorR: I think 2L and ORK are both definitely notable 00:40:42 Heard of 2L before, nice one :) 00:40:49 the ORK site appears to be down 00:40:54 yes 00:41:09 I think I have a link up for the ORK interpreter, I'll stick up a simple program to show how it works. 00:41:17 Oh, actually, there's one on the 99-bottles-of-beer site. 00:41:18 http://www.esolangs.org/files/ork/ has some stuff on it 00:41:24 and http://www.esolangs.org/wiki/ORK 00:42:22 Aardwolf: i get compile errors if i try to compile gammaplex 00:42:30 http://www.99-bottles-of-beer.net/language-ork-649.html 00:42:33 what errors? 00:42:35 You need SDL 00:43:00 i have SDL 00:43:07 uh wait 00:43:20 There's a project included for DevC++, but I've also been able to compile it under linux 00:43:28 i'm on osx here 00:44:16 Did you set any linker options for SDL? 00:44:21 yes 00:44:34 -framework SDL on osx SDL is a framework 00:45:19 (a framework is a package containing a shared lib and headers (optional) and resources (if needed)) 00:45:24 graue: Could you upload ork-0.9.tar.bz2 for me (if I email it to you) 00:45:50 Hmm I know nothing about OSX, can't help you there 00:46:38 the problem is on osx SDL wants to redefine main for loading cocoa into the app (instead of doing it in sdl init..) that causes problems often 00:47:25 GregorR: certainly 00:47:35 i'm trying the xcode template that should work 00:49:40 ORK awaaaaaay! 00:50:36 by the way you should try the pong game in gammaplex, the guy who wrote that is insane :D 00:50:59 Aardwolf: compiled 00:51:23 nice 00:56:02 hi Aardwolf 00:56:09 hiya 00:56:31 I guess we met by email :) 00:56:43 aha you're the one from the wiki then :) 00:57:03 nice to meet you 00:57:15 well, I'm the one who asked you for permission 00:57:41 the wiki's owner is graue; I'm just an editor 00:58:17 I see 00:58:27 it's a nice project 00:58:45 jix: btw, I use tcpserver for piping 00:59:02 i don't have tcpserver 00:59:25 tcpserver is nice if you have netcat classic, but if you have GNU netcat, there's nothing it can do that netcat can't (?) 01:00:55 Oh wait, that's right, tcpserver allows multiple connections. 01:03:15 hmm graphical thue using 2d graphic regular expressions! 01:03:30 * GregorR 's head explodes ... again. 01:03:37 * pgimeno rolls eyes 01:04:00 expression matching in 2d is slow.. isn't it? 01:04:08 +regular 01:05:56 You know, I have no former experience, but I am led to believe that yes, yes it is. 01:09:22 -!- BrainBot has joined. 01:09:22 -!- BrainBot has quit (Read error: 54 (Connection reset by peer)). 01:09:27 :( 01:09:44 Your bot has no brain AHAHAH 01:10:14 (Secretly, GregorR is the peer that reset BrainBot's connection) 01:11:07 I'm off, bye 01:11:13 -!- Aardwolf has quit ("Leaving"). 01:13:55 -!- BrainBot has joined. 01:13:55 -!- BrainBot has quit (Read error: 104 (Connection reset by peer)). 01:14:02 urg?! 01:14:10 its netcat fault! 01:14:22 die netcat die! 01:15:33 What does(n't) BrainBot do? 01:15:43 stay connected longer than a split second 01:16:15 does brainbot answer to pings? 01:16:19 By the way, graue, if you do implement a 1L, you should do it bitwise or something, so it's not as easy as typing into a text editor :P 01:16:47 so you'd need a special visual IDE to do it? 01:16:54 a paint program with black and white images? 01:17:11 Don't actually provide such a program, mind you. 01:17:14 yes 01:17:19 Just make it a requirement >:) 01:17:19 bitwise is good 01:17:20 just wait for someone else to write it :) 01:17:29 lament: not yet but freenode doesn't send pings 01:18:24 -!- graue____ has joined. 01:18:27 and i was online using netcat! 01:18:41 -!- graue____ has quit (Client Quit). 01:18:41 without receiving and sending pings 01:19:05 -!- BrainBot has joined. 01:19:19 Hey now 8-D 01:19:21 ok freenode is sending something to BrainBot that kills him 01:19:33 i made the connection one way and now it works 01:19:35 -!- BrainBot has quit (Remote closed the connection). 01:19:45 CTCP VERSIONs? 01:20:11 no.. brainbot ignores everything that is unnormal 01:20:11 --- Received a CTCP VERSION from freenode-connect 01:20:18 what would be normal? 01:20:25 JOIN commands 01:21:18 -!- heatsink has joined. 01:21:20 And requests for it to run FYB rounds XD 01:21:54 Well, I'm off, see you all later. 01:22:02 << JOIN #zz 01:22:03 >> :pgimeno!pgimeno@124.Red-80-59-211.pooles.rima-tde.net JOIN :#zz 01:22:10 maybe the second JOIN is confusing it? 01:22:14 later GregorR 01:22:50 test 01:23:23 -!- BrainBot has joined. 01:23:23 -!- BrainBot has quit (Connection reset by peer). 01:24:05 -!- BrainBot has joined. 01:24:13 fail 01:24:13 -!- BrainBot has quit (Success). 01:24:39 ok it stayed online for 8 secs 01:25:05 -!- BrainBot has joined. 01:25:05 -!- BrainBot has quit (Read error: 54 (Connection reset by peer)). 01:27:25 what does "Success" quit message mean? 01:28:08 lament: no idea 01:28:09 -!- BrainBot has joined. 01:28:09 -!- BrainBot has quit (Read error: 104 (Connection reset by peer)). 01:28:14 urgh! 01:28:56 -!- BrainBot has joined. 01:29:01 it's netcat 01:29:17 and a negative memory pointer? 01:29:32 BFBASIC... 01:29:44 -!- jix has left (?). 01:29:48 -!- jix has joined. 01:30:16 -!- BrainBot has quit (Remote closed the connection). 01:31:26 -!- pgimeno_nc has joined. 01:31:53 seems to work 01:32:06 -!- pgimeno_nc has quit (Client Quit). 01:33:02 wonder why I don't see a quit message if I wrote one 01:35:27 you have to use :Quitmsg 01:35:37 it's a non-standard-confirm irc server 01:35:49 using : escaping is always optional 01:36:05 but dancer-ircd want's it for a quit msg 01:36:29 I wrote: QUIT :bye 01:36:32 oh 01:36:34 hmm 01:36:58 and got as reply: ERROR :Closing Link: pgimeno_nc (Client Quit) 01:46:07 bfbasic is buggy :( 01:49:38 fix the bugs? 01:50:45 pgimeno: it's an anti-spam technique 01:50:58 the server won't allow a custom quit message unless you've been online for a certain amount of time first 01:55:07 oh, thanks graue 02:07:46 <{^Raven^}> jix: i might be able to help debug your BFBASIC program 03:44:03 Hmm, to implement a safeHTML plugin for Giki, or to prove that 2L is turing complete ... 03:44:55 make a brainfuck->2L compiler 03:45:31 Easy except for IO 03:45:57 hmm, make a Brainfuck with no IO -> 2L compiler? 03:47:13 Does anybody actually think that 2L is NOT Turing Complete? 03:47:15 you'd have to waste a bunch of memory cells to implement IO, I guess 03:47:30 Intuitively it could be done, it would just be annoying :-P 03:47:35 just make a Brainfuck with no IO -> 2L compiler 03:47:40 that's enough to prove 2L is Turing-complete 03:47:45 Indeed 03:48:27 plus, it could still be compliant with the ENSI spec: http://esoteric.sange.fi/ENSI/brainfuck-1.0.txt 03:50:08 I guess everyone's moved onto ENSI 1.3 implementations by now, though 03:51:02 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 04:02:27 -!- kipple___ has quit (Read error: 110 (Connection timed out)). 04:09:49 OK 04:09:52 *cracks fingers* 04:09:57 What language to implement this in... 04:11:41 You know, I suddenly realize that I don't really care. 04:11:46 * GregorR puts a translation table on the wiki. 04:22:24 eh? 04:23:16 Rather than making a program, I'm going to be lazy and just put a table on the wiki that shows how everything can be translated. 04:30:54 -!- heatsink has quit ("Leaving"). 04:33:55 Now for the hardest part, [ and ] 04:39:22 Just ] left ... 04:42:37 -!- tokigun has joined. 04:42:47 hello 04:43:23 Hoi 04:44:08 :) 04:44:25 http://esoteric.voxelperfect.net/wiki/2L_is_Turing_Complete 04:45:40 is there brainfuck to 2L compiler? 04:46:19 Heheh 04:46:20 No 04:50:26 WHOOPS! 04:50:30 Just realized something I missed! 04:51:24 I don't like the name of that page at all.. 04:52:02 how about "2L Turing-completeness proof"? 04:53:22 Sure, why not. 04:53:25 * GregorR moves it. 05:06:57 next time you could let me, pgimeno, or cpressey move it, since we can actually do so, without leaving the old page around 05:21:38 Err, sorry - I'll keep that in mind. 05:32:56 -!- malaprop has quit ("quit"). 05:33:05 -!- jimbo000 has quit. 06:38:20 -!- graue has quit ("Donate a manual typewriter to ME for your only hope for a future!"). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:34:36 -!- CXI has quit ("xchat's back up to 2,000 filehandles again, wheeeeeee"). 08:35:15 -!- CXI has joined. 09:25:58 -!- BigZaphod has quit. 09:32:38 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]"). 09:33:14 -!- tokigun has joined. 09:33:25 back 11:12:25 -!- sp3tt has joined. 11:39:10 -!- tokigun has quit ("Chatzilla 0.9.68.5 [Firefox 1.0.3/20050414]"). 11:52:22 -!- kipple___ has joined. 11:56:24 -!- sp3tt has quit (Client Quit). 12:22:54 -!- Aardwolf has joined. 13:32:35 -!- jix has joined. 13:33:01 moin 13:52:11 -!- fizzie has joined. 14:39:35 moin 15:11:09 -!- malaprop has joined. 16:17:39 -!- fungebob has joined. 16:52:09 -!- graue has joined. 16:52:24 what's this crack about 1L being a work in progress? 16:54:55 You're just constantly reading the wiki, aren't you XD 16:56:24 How is it anything but a work in progress? 16:57:35 it's not a work in progress on the wiki 16:58:35 By the other work-in-progress on that page, it didn't seem like works-in-progress implied any connection with the wiki ... 16:59:00 huh? the other one was entirely taking place on the wiki 17:00:35 Oh, I misunderstood you - so "works in progress" = "things being created through wiki communication"? 17:02:02 why else would you bother adding it there until it's done? 17:02:09 I don't understand the point... 17:02:26 So that people who are not participating in the discussion on #esoteric could make suggestions, etc. 17:02:46 why not post it on the mailing list? 17:02:51 that would be superior 17:03:08 Nothing I do can be right, can it? XD 17:04:03 it's just an idea 17:04:38 I was under the impression that the mailing list was mostly unused, where as the wiki was up-and-coming. 17:05:01 eh, kind of, but the mailing list is only unused because nobody's using it 17:05:06 if you used it, you could change that 17:06:20 http://www.harderweb.de/jix/langs/brainfuck/obi2.rb an Obfuscated Brainfuck Interpreter written in ruby, does [-] optimizations 17:06:55 cool 17:07:03 I've been thinking of writing a BF compiler 17:07:12 can't you optimize out some loops? 17:07:21 and it's pretty fast because it translates BF => ruby on-the-fly 17:07:55 graue: would be too much code for that shape 17:08:12 did you looked at the source? 17:08:43 heh, no :) 17:08:46 but I was thinking of a compiler anyway 17:08:51 look at the source 17:08:58 I mean, "if you wrote a compiler, couldn't you optimize out some loops?" 17:09:03 yeah, it's cool 17:09:07 oh 17:09:46 shall I add it to the esofiles archive? 17:09:46 i was thinking of a high-optimizing brainfuck compiler.. and yes, it's possible to optimize many loops 17:10:02 graue: yes it's uhm... 17:10:08 public domain 17:10:12 cool 17:10:48 for esolang related source i'm using Public Domain or MIT license 17:13:04 I'm going to go somewhere now, be back in a while 17:13:04 -!- graue has quit ("Donate a manual typewriter to ME for your only hope for a future!"). 17:18:54 -!- Keymaker has joined. 17:18:59 'ello 17:19:16 Keymaker: moin 17:19:26 http://www.harderweb.de/jix/langs/brainfuck/obi2.rb a ruby brainfuck interpreter 17:19:37 Keymaker: take a look at its source 17:19:46 ha :) tasty! 17:21:51 jix: i'm too lazy to read all the logs (in case it even reads there); what's 1L? 17:22:05 seems it's some work in progress in esowiki.. 17:22:24 2L with just 1 instruction 17:22:41 2L == a language with just 2 instruction (3 if you count space==nop) 17:22:45 wow, nice ruby code! 17:23:11 ok 17:23:13 jix: seen the optimizing BF compiler written in BF? it's pretty fast but it only generates ELF files AFAIK 17:23:14 Aardwolf: i love ruby for its clean and easy to understand code ;) 17:23:16 i was guessing that 17:23:48 pgimeno: no ppc mach-o binaries? 17:23:50 but probably the 1L needs two instructions..? or at least one instruction and some 'space'? 17:23:51 :( 17:23:58 Keymaker: yes 17:24:17 I don't really know ruby well, but the "unpack" thing at the end makes it appear as if the source is encoded in that shape and then unpacked 17:24:27 Aardwolf: right 17:24:35 jix: not that I know of, sorry 17:24:36 i encode it using base64 17:24:41 GregorR's makin' the 1L? 17:24:51 the .tr removes some space filling characters 17:25:06 Keymaker: he made 2l and he and someone els are working on 1L 17:25:17 ok 17:25:20 So the whitespace is ignored? 17:25:25 i knew he made 2L 17:26:22 Well that makes ruby very handy to make ascii art code :D 17:26:49 Aardwolf: perl is better for ascii art code 17:27:31 Aardwolf: see http://search.cpan.org/~asavige/Acme-EyeDrops-1.47/lib/Acme/EyeDrops.pm 17:29:04 nice, love the fractal one 17:33:55 rgh. i had something very clever quote that i invented.. about two weeks ago. i was about to make it my quit message. now i can't remember it anymore 17:39:07 /quit 17:41:58 :) 17:46:10 speaking of ASCII art in perl, there's the bottled version of 99bob: http://www.99-bottles-of-beer.net/language-perl-737.html which does not have a single letter 17:47:38 but my 99bob is #1 17:47:38 anyone good with php? 17:48:00 how do i make variable to have hex value 17:48:12 and how do i print an ascii character of that value? 17:48:31 i'm probably going to make brainfuck, c, php polyglot quine next 17:48:48 -!- puzzlet has quit (Connection timed out). 17:48:48 insane 17:48:52 but cool 17:48:55 what? 17:49:06 brainfuck,c,php polyglot quine 17:49:08 ah 17:49:10 :) 17:49:11 yes 17:49:25 hmm brainfuck,c,ruby quine! 17:49:33 hmm 17:49:36 if i could ruby.. 17:50:43 I believe you can use 0x.. in PHP. 17:50:50 c is bad c neads a header etc... brainfuck,ruby....hmm 17:50:55 I've never had to write hex :P 17:51:01 :p 17:51:09 well, it isn't a must, 17:51:12 but it'd help me 17:51:15 hey wait.. 17:51:41 maybe i could do it with numbers with fewer instructions, now when i think about it :) 17:51:54 yes.. X) 17:51:56 Keymaker: there's dechex() and hexdec() 17:52:06 thanks 17:52:25 oh, what about printing ascii value? 17:52:32 ord and chr 17:52:39 how do i print ascii values? 17:52:44 chr? 17:52:48 ord('a') = 97, chr(97) = 'a' 17:52:52 Or perhaps the other way round 8-D 17:52:54 thanks 17:52:57 :) 17:57:57 I challenge anyone to make an ORK/Brainfuck polyglot quine :P 17:58:12 hmmm 17:58:22 where's the ORK manual? 17:59:37 http://www.esolangs.org/files/ork/doc/README 18:02:53 well, maybe next time :) 18:03:15 that language's too object oriented.. and i hate objects 18:03:22 I still have to take a look at that ORK CSS descrambler 18:03:34 btw; 18:03:53 (and that ORK interpreter written in JS) 18:04:03 if there's stuff in php file outside , will they be just output? 18:04:29 yes 18:04:32 ok 18:04:36 oh sh.. 18:04:50 < and > need something special? 18:04:57 or is it required to make that page html? 18:05:07 hm... nope, I think it's not required 18:05:07 or will it be output as html, the other stuff? 18:05:27 well, hope not :) 18:05:33 I'm not too sure about < and > 18:05:46 argh.. i try.. 18:05:47 well, actually I'm sure that > doesn't need anything special 18:06:50 Anything outside of is simply output verbatim. 18:06:51 one good thing is that c and php use samekind of array stuff.. 18:06:57 verbatim? 18:07:40 Unchanged. It doesn't have to be HTML, it doesn't make it HTML, it just outputs it. 18:07:46 ah 18:07:48 goood 18:08:00 Should make some o' the quinin' quite easy :) 18:08:26 :) 18:08:34 indeed, it helps a lot 18:09:01 polyglot quinin' is phun.. 18:10:23 -!- yrz has quit (Read error: 104 (Connection reset by peer)). 18:10:52 Keymaker: i'm writing a ruby+bf quine 18:10:56 ruby part is done 18:11:01 ok 18:11:33 -!- yrz has joined. 18:14:39 oops, I got late to check that ACME Eyedrops were actually the very heart of the 99bob proggy I mentioned 18:18:00 by the way; will the values inside one be available in second 18:18:08 yes 18:18:33 good 18:18:37 thanks 18:18:43 you can even do something like: function fn() { ?> this text will be printed when fn is called urgh.. i'm not good at brainfuck 18:21:05 well, i'm not good either 18:21:58 ..but definitely better than in c or php ;) 18:23:19 btw; php has /* comment */ stuff too? 18:23:26 yes 18:23:28 afaik 18:23:29 ok 18:24:02 i'm trying a brainfuck only quine first 18:24:20 ok 18:26:22 PHP can use /**/, // and # 18:27:33 hmmm 18:27:37 that's interesting 18:27:43 didn't know it can use '#' 18:27:48 this may be usefull.. 18:28:44 with some self modifying code this would be easier.. 18:29:13 one way to do it would be to code something new language especially for this program, and make interpreter for it in the file 18:29:26 8) 18:30:11 ok my brainfuck skills are too bad 18:30:23 perl/ruby/php/bash/c poly quine now 18:30:27 :D 18:30:32 uhm chose 3 of them 18:30:36 ok.. 18:30:44 perl ruby and.. php 18:30:47 ok 18:30:52 that's doable 18:30:57 d'oh! 18:31:05 then let me select again :p 18:31:10 ok 18:31:13 ;) 18:31:20 good luck 18:33:45 -!- BigZaphod has joined. 18:36:44 it isn't as easy as i thought but it's possible 18:36:52 yeah 18:37:17 no matter how i try i can't find a way to make c and php to use the same data stuff 18:37:26 the problem is to end the php part 18:38:34 #define die(x) 18:38:38 then die(); 18:38:52 i found a way to combine perl and ruby's data part and php and ruby's data part but not all 3 18:39:18 GregorR, does that end the whole program? 18:39:24 Yes. 18:39:27 or just the current 18:39:32 The whole program. 18:39:35 ok 18:39:42 well, that's not what i need 18:39:43 :p 18:39:47 >_> 18:40:17 Could you use gotos? 18:40:22 i meant making the c and php use the same data, but then end php part with '?>'.. 18:40:29 how to use gotos? 18:40:50 Wait, now I'm confused XD 18:40:54 hehe 18:40:56 OHHHH, I see. 18:41:03 good 18:41:12 It's not very polite, but you don't HAVE to end it with ?> 18:41:27 but i need to 18:41:29 If that's at the very end of the program, it can be left off. 18:41:32 Oh. 18:41:39 but hmmm 18:41:48 wait.. no.. 18:42:02 php and c probably don't use enough same stuff for printing.. 18:42:20 PHP has a printf, you could get pretty darn similar. 18:42:21 there's probably not same function in both languages? 18:42:27 it has?! 18:42:31 Yup. 18:42:34 hmmm.. 18:42:36 It's not the normal way to print. 18:42:40 But it's there. 18:42:43 ok :) 18:42:51 is there specification of PHP available somewhere? 18:44:22 www.php.net has a mind-numbingly extensive one. 18:45:57 i wish '#' would work in c the same way than in befunge.. skip just one single character :D 18:46:04 I think php has puts 18:46:08 then i could get this working the way of my current plan.. 18:46:11 not sure though 18:46:33 but you can always #define print puts, which is a comment in php 18:46:34 i've got problematic "#}" there.. 18:46:46 GregorR: i've browsed around php.net for at least a year but never found a spec 18:46:55 :D 18:47:05 what the #define does? 18:47:09 i can't use it anyways 18:47:29 Keymaker: a C preprocessor definition 18:47:51 I guess it depends on your definition of "spec" ( http://www.php.net/manual/en/langref.php ) 18:48:18 could i define: 18:48:23 #define TWEAK } 18:48:36 Yes, but you'd have to make sure that that came out as nothing in PHP. 18:48:51 yes 18:48:59 php would ignore that line, right? 18:49:09 right 18:49:12 cool 18:49:27 and the important one.. can #define be used anywhere in the program? 18:49:32 Yes. 18:49:36 But it needs a line of its own. 18:49:39 brilliant. 18:49:40 sure 18:49:45 yeaaaaaaaaaah! 18:49:50 and it's online defined after the line 18:50:07 ? 18:50:26 jix means that you can't use it before the define 18:50:27 bla;#define bla blubb; doesn't result in calling blubb 18:50:34 yeah 18:50:45 GregorR: indeed it depends, where they even omit that you can leave out '?>' from end of file? 18:52:14 aaaaaaargh 18:52:19 i thought the wrong way. 18:52:27 s/where/do/ 18:52:55 or well, not wrong way 18:52:56 but wron 18:52:58 g 18:53:19 i'd need php to ignore one } and c to execute it.. 18:54:04 hey wait.. 18:54:07 maybe i got an idea.. 18:54:28 Does php parse the "?>"s if it's inside a string literal? Probably not. 18:55:16 hey.. 18:55:37 Bleh, about thrice a day I try to do something and then realize I can't because colin's offline. 18:55:50 so if i make this #define TWEAK } in c and write somewhere TWEAK, does it replace that TWEAK with '}' 18:56:00 Well, yes. 18:56:04 like could i do int main(){ TWEAK 18:56:09 Yes. 18:56:14 and it'd be int main() { } 18:56:43 cool 18:56:57 Many a pascal programmer has probably used the "#define BEGIN {"/"#define END }" pair to produce horrible C. 18:56:58 so this allows a bit self-modifying code.. kinda.. 18:57:20 this is a brilliant C feature.. 18:57:23 do i need to write 18:57:29 TWEAK or TWEAK; 18:57:36 Just TWEAK. 18:57:39 ok 18:57:51 It's pure token-replacement, you're not calling anything. 18:57:58 ok 18:58:00 I'm not sure "brilliant" is the word I'd use for C macros. 18:58:20 hey this is a polyglot quine.. ;) 18:58:24 hehe 18:59:36 Here's an idea ... a quine in machine code >:) 19:00:09 you mean ones and zeros? 19:01:24 As in, you write an executable (probably with a hex editor) that outputs itself. 19:01:31 Not its code, but the actual binary. 19:01:53 like in hex? 19:02:04 That's quite platform-dependent. For a dos .com that'd be quite trivial. 19:02:34 could i make #define hi(); } ?? 19:03:35 I believe that ; is illegal in macro names. 19:03:56 :(((( 19:04:10 Probably not. But if you "#define hi() }", then "hi();" is translated to "};", and isn't that good-enough? 19:04:36 dunno 19:04:41 (No, it won't break if you have };, that semicolon is usually A-OK) 19:04:50 (Though pointless) 19:04:50 if }; can end the int main? 19:05:18 Well, it's not ok outside a function. 19:05:19 so would this work: int main() { }; 19:05:30 Yes, it is. 19:05:31 * Keymaker dies 19:05:34 Yes, it would rather. 19:05:41 Oh, right. 19:05:41 so would it work? 19:05:44 int main () { ... }; is fine 19:05:44 Yes, it would. 19:05:46 or not? 19:05:49 ah 19:05:50 thanks 19:05:55 * Keymaker dies 19:06:05 tmp.c:6: warning: ISO C does not allow extra `;' outside of a function 19:06:18 Pff, who cares about the ISO ;) 19:06:27 That's only with -pedantic, though. :p 19:06:46 i combined the 3 data parts 19:07:51 HPUX's cc seems to be fine with };, and if HPUX's (terrible) cc is fine with it, it'll work on anything ;) 19:08:18 ISO C isn't fine with it. :p 19:09:18 yes! mingw compiles successfully even if there is '#define hi(); }' 19:09:31 am i here? 19:10:03 IRIX's horrible cc accepts it too. 19:10:14 Is that a trick question? 19:10:39 hm, but does it work? 19:10:52 maybe it defines "hi()" as "; }" 19:10:55 Keymaker: you are there 19:11:29 pgimeno; uh, I mean the "int main() { ... };", not a macro called hi(); 19:12:13 oh, I see 19:14:14 -!- kipple___ has quit (Read error: 104 (Connection reset by peer)). 19:14:19 -!- kipple__ has joined. 19:15:57 oh wait 19:15:58 lol 19:16:23 i was just up in the window and the screen was locked there and didn't see the text i typed.. 19:25:23 why doesn't this work? 19:25:23 #define ?> } 19:25:23 ?> 19:27:38 it complains "macro names must be identifiers" 19:27:47 Well, ?> is not an identifier. 19:27:57 Macro names are somewhat limited. 19:28:05 grhh.. 19:28:12 Alphanumerics and _s, basically. 19:28:20 ah 19:28:36 i just can't get this thing working 19:29:22 I would recommend ending your PHP like so: 19:29:24 #if 0 19:29:25 ?> 19:29:26 #endif 19:29:35 You would have to replicate that #endif though ... 19:29:40 Actually, better yet: 19:29:43 #define JUNK ?> 19:30:46 i've tried that 19:31:10 but what would php part say about JUNK? 19:31:25 Nothing, since there's that #-comment. 19:31:33 but if it's used in the code.. 19:31:54 The C part would define a macro you'd never use, and the PHP part would ignore the line up to ?> 19:32:15 yeah.. but that doesn't help anything 19:32:22 Why not? 19:32:28 well, php doesn't end 19:32:33 Yes it does. 19:32:37 # does not override ?> 19:32:38 how? 19:32:44 ah 19:32:54 why didn't you say that! 19:32:58 XD 19:33:04 so, nothing overrides ?> ??? 19:33:21 No, because the parser grabs everything out of before parsing anything. 19:33:27 aaaaaaaaaaaaaaarrrrrghhhh!!!!! 19:33:34 i've wasted a lot time.. 19:33:37 i'm done 19:33:43 Your pain brings me pleasure, Keymaker :) 19:33:48 I would guess string literals do, so $foo="blah ?> bleh"; wouldn't cause php to end processing. 19:33:50 :) 19:33:55 ~3kb 19:33:59 aaaaargh 19:34:04 now i'll progress.. 19:34:06 and fast 19:34:18 php,perl and ruby 19:34:27 cool 19:34:46 why isn't php==perl 19:34:54 i have a line 19:34:54 ;foreach(@d){if($_<0){foreach(@d){print"z($_);"}}else{print chr($_)}} 19:34:58 and a line 19:35:00 foreach($d as $a){if($a<0)foreach($d as $a)echo"z($a);";else echo chr($a);} 19:36:11 PHP isn't perl because perl's foreach syntax is unbelievably stupid :) 19:36:46 And also, $_ is the worst thing ever. 19:37:26 now i'll need to think about the data "format".. 19:37:35 * Keymaker dies 19:38:30 * Keymaker goes eatin' 19:41:22 Hey, $_ is just fun. 19:42:49 And why 'print chr($_)' instead of 'print chr'? 19:45:33 And if you're trying to save characters, foreach(@d){print"z($_);"} is obviously suboptimal (while equivalent) to print"z($_);"foreach@d; 19:45:43 s/;$// 19:46:23 For some reason there are days I rather like perl. 19:47:44 Although admittedly sometimes the regexps make it look /^((?:(?:$ex_nt|$ex_t|$ex_e)(?:\s+|$|(?=\|)))*)\s*(?:\||$)\s*(.*)$/ a bit unpretty. 19:48:31 Some days you like perl eh ... I wonder if they have doctors for that? 19:48:32 :) 19:51:21 I've been writing a web application thing with apache+mod_perl+HTML::Mason, because php makes me sad. 19:52:14 To quote: 19:25:38 mainly because of "The object system is completely different in PHP 5", "This returns false in PHP 4 but null in PHP 3", "Cookies were set in reverse order in PHP 3, fixed in PHP 4" 19:53:54 -!- calamari has joined. 19:53:56 hi 19:54:49 graue: I'm having trouble seeing anything wrong with 57.. what's wrong? 19:55:17 ouch.. too full 19:55:58 aha.. 52 has a problem :) 19:59:35 fixed.. bbl 19:59:36 -!- calamari has quit ("Leaving"). 20:15:25 rrggh.. "parse error" 20:15:26 blah 20:15:30 stupid php.. 20:19:44 aaaaaargh 20:20:04 forgot that php uses '$' in front of variable names 20:25:58 ha 20:26:00 solved it 20:27:35 oh no 20:27:49 php doesn't print the newlines of the file 20:27:59 it ignores the newlines.. 20:28:20 from the stuff not inside .. 20:28:31 That's weird. 20:28:34 It shouldn't. 20:28:56 -!- yrz_ has joined. 20:28:56 Keymaker: the problem is that after ?> you need something if you want the newline in that line to be printed 20:29:09 IIRC 20:29:10 no i don't meant that 20:29:22 i'm running the code at mbnet's server 20:29:53 Uh... are you sure your browser-type thing isn't just parsing the result as html? 20:30:04 ah 20:30:12 lemme try in other browser 20:30:21 You could try "view source". 20:30:41 By default, it sends content-type: text/html, since html pages is what people usually try to write. 20:30:53 Keymaker: maybe you can install the cli version of php 20:31:04 no.. 20:31:18 fizzie: when i looked at the source code it's like supposed to be 20:31:52 but in web window it just doesn't look right 20:31:59 If you want to run it on a web server, you could add a header("Content-type: text/plain"); in the php part. 20:32:00 so i suppose it doesn't matter.. 20:32:15 hmmm 20:32:18 as a first line? 20:32:37 Well, it needs to be run before anything else is output. 20:32:44 ok 20:32:53 So if your file doesn't start with And I doubt it does, since that doesn't look like valid C to me. :p 20:33:24 it starts with that 20:33:25 :p 20:33:34 or well 20:33:46 with 20:33:56 -!- calamari has joined. 20:33:56 slash slash hi 20:34:16 hi 20:34:32 anyways, cheers fizzie works perfectly with that 20:35:03 I'm not sure what header() does if you run it in the command-line php interpreter. 20:35:54 And I can't try because colin's in a garage. :( :( Wahhh, I want to move back already. 20:40:22 uh.. this is gonna need some thinking. i think i'll use traditional paper and pen technique 20:44:23 -!- yrz has quit (Read error: 110 (Connection timed out)). 21:15:04 ok version 2 of my quine 1691 bytes 21:18:08 nice size 21:19:41 http://www.harderweb.de/jix/langs/poly/quine2-php-perl-ruby.poly 21:20:43 looks very nice 21:21:07 arg a byte to much! 21:21:11 or even 3 or 4 21:21:17 ..i'll be back soon.. 21:21:49 updated 21:23:48 -!- calamari has quit (Read error: 104 (Connection reset by peer)). 21:43:40 Write a polyglot in Brainfuck and Brainfork. 21:43:54 Or C and C++ 21:43:55 who? 21:44:01 Everyone!!!!!!! :P 21:44:05 :) 21:44:07 no thanks 21:44:26 i've got my hands full 'o work with this bf, c and php one 21:44:38 Add Brainfork and C++ to that list for free. 21:44:41 You know you want to ;) 21:44:51 :) 21:45:20 well, i guess adding malbolge and 2l wouldn't take much more time or planning.. 21:46:07 Yeah, I want to see a quine in 2L! 21:47:05 well, if you add printing instruction to your 2l-turing-proof page then i can make one 21:47:30 :) 21:51:27 Not one that would run in any interpreter :-P 21:51:34 Since mine has a maximum of 1024 columns 21:52:54 computers need more power and memory to run esolangs better :) 21:57:10 That limitation is from my own laziness :P 21:58:42 well, then esolang programmers need more power and memory 21:59:46 OR I could spend the bulk of my time doing something more useful ;) 22:01:22 nooo 22:04:16 btw, has anyone ever made any research about polyglot quines? that is there anything stuff like that 'every turing complete language could be in same polyglot quine if every language ignores other characters than the ones it uses' (i just made that up)? 22:28:31 -!- graue has joined. 22:30:27 is there any way to print some amount of same character in c? 22:30:32 i mean php 22:30:36 or well, both 22:30:49 like for example printing '+' eight times 22:31:02 i mean some simple function 22:31:37 void eight_times() { for( i=0; i<8; i++ ) printf( '+' ); } :) 22:32:55 yeah :) i guess i'll have to use fors 22:34:15 for( int i=8; i; i-- ) { printf( '+' ); } <-- shorter if you're going for that 22:34:15 -!- fungebob has quit ("Today is a good day to chat."). 22:35:12 ok 22:35:20 BigZaphod: that'll segfault. 22:35:35 why? 22:35:38 oh.. double quotes? 22:35:48 BigZaphod: indeed 22:36:04 yeah, been doing too much javascript lately.. 22:36:46 just don't write software for nasa :) "whoops, i meant double quote and not single quote..." 22:37:07 well I would hope I'd get to test-compile it before I have to send it up on a rocket. :) 22:37:07 -!- _graue_ has joined. 22:38:05 yeah, but it _compiles_. just segfaults if you run it ;) 22:39:53 I got a warning just now testing it. 22:40:10 btw, if i have in php some value for example $a that is 4, is the following for allowed: for($a; $a>0; $a--) 22:40:12 although this is interesting: blah.c:4: error: 'for' loop initial declaration used outside C99 mode 22:40:41 can't do the int i= thing inside the for() in C99, apparently. 22:40:47 ok 22:41:03 Keymaker: just do this: for( ; $a>0; $a-- ) 22:41:11 skip the first clause there. 22:41:16 is that allowed? it looks ugly :) 22:41:28 (or well, that doesn't matter..) 22:41:32 I do that in C/C++ a lot. Haven'tr tried that in php 22:41:49 It migth work both ways for all I know.. 22:42:32 I think for(; $a; $a-- ) looks kind of neat, myself.. but then I'm odd.. 22:44:14 yes 22:44:27 it looks esotierc,,.. 22:48:58 -!- graue has quit (Read error: 110 (Connection timed out)). 22:49:05 -!- _graue_ has changed nick to graue. 22:51:51 the hardest part in this is to get the code working on all the languages 22:51:54 (obviously) 22:52:53 BigZaphod: "int i" inside a for loop is new to C99 22:53:18 if you're using gcc, give it the -std=c99 switch and it'll work 22:53:32 graue: oh.. gotcha. I mis-read that warning. 22:54:00 obviously c++ has supported that forever because I generally do it all over the place. 22:55:49 Keymaker: there's str_repeat(str, count) 22:55:58 sorry to be late :) 22:56:36 so, do i use it str_repeat("+",8)? 22:56:47 that'll work, yes 22:56:53 and it's php? 22:56:55 or c? 22:56:56 or both? 22:56:59 php only 22:57:03 ook 22:57:48 nope, in ook there's no str_repeat either 22:57:57 :9 22:58:42 in C++ you could do: std::cout << std::string(8,'+'); 22:58:48 but I realize that doesn't help you much. :) 22:58:55 yep 22:59:59 printf("++++++++"); 23:00:00 . 23:00:39 that'd be best but the amount isn't always 8 23:01:11 while(i--)printf("+"); 23:01:32 thanks 23:03:01 what's the preferred file extension for whirl programs, .whirl or .w or something else entirely? 23:03:18 .10 ^^ 23:03:34 I've seen .wrl. 23:03:49 .10 is cooler 23:03:51 and .w. 23:03:51 hmm.. yah, i guess that's what tokigun has been used 23:04:00 (whr) 23:04:03 can't remember 23:04:06 i hate 3 letter file extensions 23:04:15 .dizzy 23:04:28 .why? 23:04:28 (ok I just made that one up) 23:05:10 on mac os x there are .framework s .mpkg s .pages .keynote s ... 23:05:27 .dylibs 23:05:31 .app 23:05:40 BigZaphod: ok 23:05:49 but 50% is non 3 letter 23:05:54 :) 23:06:25 tokigun uses .wr, I'll just copy that I guess 23:06:56 .double-u-.... 23:07:13 .TheContentOfThisFileIsAWhirlProgram 23:07:18 :) 23:07:21 that sounds reasonable 23:07:36 or just skip the file contents and make an empty with the entire whirl program as the extension. 23:07:38 or well, just include the whole program in the name of the while 23:07:50 slow fingers.. 23:07:54 hmm. great minds. 23:07:54 *file 23:08:32 a long time ago many people named code-warrior (the oldest ide for mac programming that still exists) . but on pre osx, file extensions had no effect 23:09:12 I always used to wonder how you would write programs for a Mac, given that it had no console 23:09:13 lets call whirl program files not files but whiles! 23:09:51 graue: code-warrior came with a lib for a terminal like user-interface 23:10:27 I always figured it had something to do with the "programmer" button older macs had.. but then I was young and silly.. 23:10:36 pre os x was funny... cooperative multitasking ^^ 23:11:03 BigZaphod: interrupt? (=> debugger?) 23:11:41 heh, yeah, cooperative multitasking was a pretty stupid idea 23:11:50 yes 23:12:25 no 23:12:32 cooperating multitasking can be nice 23:12:54 if all of the applications are friendly 23:13:09 which is not very realistic, is it? 23:13:12 if a program crashed you had to go into the debugger (interrupt button or command-startup (or something else i forgot the key combination)) and type "g Finder" for passing controll to the finder .. it worked 10% 23:13:30 graue: sure it is 23:13:34 cooperative multitasking is a lot like communism. 23:13:45 lament: well, it didn't happen with any operating system I've ever heard of 23:16:20 that's true :) 23:18:04 Does MidiaWiki always allow (some) HTML, or is that an option? And does it filter it? 23:23:03 it probably filters it and can be tweaked somehow 23:26:04 ..well, good nite. i hope to get the polyglot ready tomorrow 23:26:14 -!- Keymaker has quit ("Funkadelic!"). 23:43:51 <{^Raven^}> lament: i use a co-op system here (RISC OS) 23:50:02 you use RISC OS? 23:50:04 cool! 23:50:18 one of my programs has been ported to RISC OS by some guy 23:50:26 it was written using SDL 23:57:12 I just thought of a crazy idea 23:57:24 what if you had a program that, in language A, was an interpreter for language B 23:57:32 but if you ran it as a language B program, it interpreted language A 23:57:38 sort of a polyglot interpreter 23:59:30 {^Raven^}: on what computers does risc os run?