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