Talk:EsoInterpreters

From Esolang

Jump to: navigation, search

[edit] Any other way?

This page is a great idea, but that kind of table is getting increasingly difficult to edit the more there'll be languages. Could there be any other way, such as a list something like this;

brainfuck
other languages in brainfuck
  • stuff
brainfuck in other languages
  • stuff

--Keymaker 11:17, 26 June 2007 (UTC)

Well, I just learned how to make wiki tables. That cleaned it up a lot. I like the table format for now... --Nthern 20:51, 6 July 2007 (UTC)
Yeah, it's a lot better now. :) --Keymaker 00:27, 7 July 2007 (UTC)

[edit] Almost-implementations

I'm thinking of two particular cases here: compiling Unlambda to Underload, and compiling brainfuck to Underload. In the first case, there's a JavaScript compiler that compiles the commands s, k, i, ., and ` from Unlambda to Underload (as part of the online interpreter), which is enough to show Turing-completeness but isn't a complete implementation; in the second case, here is a compiler (again written in JavaScript; this one doesn't have an HTML page surrounding it, but it would be easy enough to write one) that doesn't compile the input instruction , (as Underload has no input), and can't output the whole range of outputs Brainfuck can (partly because it omits outputs like null characters and most control codes for sanity reasons as they'd have to appear literally in the output, partly because there's no way to output an unmatched parenthes (which I assume is the singular of 'parentheses'), and partly because it can only include a finite number of character codes in the output, and I stopped at 255). These examples don't quite fit on this page as written; should they be mentioned, and if so, how? --ais523 18:16, 13 July 2007 (UTC)

If there exists an interpreter for language foo in language bar and language baz is Isomorphically similar to bar, then an interpreter for foo can be constructed in baz. If there exists an automatic Translator (compiler) from bar to baz, then it could be used to convert any bar program into a baz program - including a foo interpreter written in bar. A compiler can also be used as a "pre-processor" to enable a baz interpreter to also interpret bar; but I don't think that really applies to this page. The two compilers you are talking about could be used to construct Underload interpreters for any language currently interpreted by either Unlambda or brainfuck. Thus, according to the current matrix, it should be possible to construct Underload interpreters for BCT, brainfuck, Underload and Unlambda. --Nthern 02:54, 19 July 2007 (UTC)
Underload has no input, so the translators translate except for input, and they aren't quite proper implementations. I agree with everything else you say, though. (An Underload self-interpreter without cheating would be quite an achievement!) --ais523 15:11, 20 July 2007 (UTC)
Personal tools