258
\$\begingroup\$

This is an challenge in which each answer builds on the previous answer. I recommend sorting the thread by "oldest" in order to be sure about the order in which the posts are made.

Note: This has become quite a long-lasting challenge, and posting new answers is fairly difficult. As such, there's now a chat room available for this challenge, in case you want advice on a particular part of a potential answer, have ideas for languages that could be added, or the like. Feel free to drop in if you have anything to ask or say!

The task

The nth program to be submitted must run in n different languages; specifically, all the languages added in previous programs to be submitted, plus one more. The program must output 1 when run in the first language used in answers to this question, 2 when run in the second language, and so on. For example, the first answer could print 1 when run in Python 3, and the second answer could output 1 when run in Python 3 and 2 when run in JavaScript; in this case, the third answer would have to output 1 when run in Python 3, 2 when run in JavaScript, and 3 when run in some other language.

Additional rules

  • Your program must run without erroring out or crashing. Warnings (and other stderr output) are acceptable, but the program must exit normally (e.g. by running off the end of the program, or via a command such as exit that performs normal program termination).

  • The output must be only the integer, but trailing newlines are OK. Other unavoidable stdout output is also allowed. Examples: interpreter name and version in Befunge-93, space after printed string in Zephyr. Some languages provide two methods of printing – with and without trailing space; in this case method without trailing space must be used.

  • Each answer must be no more than 20% or 20 bytes (whichever is larger) longer than the previous answer. (This is to prevent the use of languages like Lenguage spamming up the thread, and to encourage at least a minor amount of golfing.)

  • Using different versions of the same language is allowed (although obviously they'll have to print different numbers, so you'll need to fit a version check into the polyglot). However, you may not use a language feature that returns the language's version number. Repeating the exact same language is, obviously, impossible (as the program would have to deterministically print one of two different numbers).
  • Tricks like excessive comment abuse, despite being banned in some polyglot competitions, are just fine here.
  • You don't have to use the previous answers as a guide to writing your own (you can rewrite the whole program if you like, as long as it complies with the spec); however, basing your answer mostly on a previous answer is allowed and probably the easiest way to make a solution.
  • You cannot submit two answers in a row. Let someone else post in between. This rule applies until victory condition is met.
  • As this challenge requires other competitors to post in the same languages you are, you can only use languages with a free implementation (much as though this were a contest).
  • In the case where a language has more than one interpreter, you can pick any interpreter for any given language so long as all programs which are meant to run successfully in that language do so in that interpreter. (In other words, if a program works in more than one interpreter, future posts can pick either of those interpreters, rather than a post "locking in" a particular choice of interpreter for a language.)
  • This challenge now uses the new PPCG rules about language choice: you can use a language, or a language interpreter, even if it's newer than the question. However, you may not use a language/interpreter that's newer than the question if a) the language was designed for the purpose of polyglotting or b) the language was inspired by this question. (So newly designed practical programming languages are almost certainly going to be OK, as are unrelated esolangs, but things like A Pear Tree, which was inspired by this question, are banned.) Note that this doesn't change the validity of languages designed for polyglotting that are older than this question.
  • Note that the victory condition (see below) is designed so that breaking the chain (i.e. making it impossible for anyone else to answer after you via the use of a language that is hard to polyglot with further languages) will disqualify you from winning. The aim is to keep going as long as we can, and if you want to win, you'll have to respect that.

Answer format

As all the answers depend on each other, having a consistent answer format is going to be helpful. I recommend formatting your answer something like this (this is an example for the second link in the chain):

2. JavaScript, 40 bytes

(program goes here)

This program prints 1 in Python 3, and 2 in JavaScript.

(if you want to explain the program, the polyglotting techniques, etc., place them here)

Victory condition

Once there have been no new answers for 14 days, the winner will be whoever posted the second newest answer, i.e. the largest polyglot that's been proven not to have broken the chain. Extending the chain after that is still very welcome, though!

The winner is Chance, see answer 194 (TemplAt).

Language list

// This snippet is based on the snippet from hello world thread https://codegolf.stackexchange.com/questions/55422/hello-world
// It was tested only in Google Chrome

// https://stackoverflow.com/a/4673436
if (!String.prototype.format) {
  String.prototype.format = function() {
    var args = arguments;
    return this.replace(/{(\d+)}/g, (match, number) => (typeof args[number] != 'undefined' ? args[number] : match) );
  };
}

var QUESTION_ID = 102370; // from the question url
var ANSWER_FILTER = "!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";

function answersUrl(index) {
  return "https://api.stackexchange.com/2.2/questions/" +  QUESTION_ID + "/answers?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + ANSWER_FILTER;
}

var answers = [], answer_page = 1;

function getAnswers() {
  jQuery.ajax({
    url: answersUrl(answer_page++),
    method: "get",
    dataType: "jsonp",
    crossDomain: true,
    success: function (data) {
      answers.push.apply(answers, data.items);
      if (data.has_more) { $('#status').text($('#status').text() + '.'); getAnswers(); }
      else process();
    },
    // [Documentation](http://api.jquery.com/jquery.ajax/) states that `error` handler is not called for cross-domain JSONP requests, 
    // but it works here, probably because api.stackexchange.com and codegolf.stackexchange.com are on the same domain.
    error:  function (a,b,c) { 
      $('#status').text( "Failed to load answers: " + b + " " + c );
      console.log( b + " " + c );
    },
  });
}

getAnswers();

// https://stackoverflow.com/questions/6290442/html-input-type-text-onchange-event-not-working/39834997#39834997
// https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/input_event
const input = document.querySelector('input');
input.addEventListener('input', onSearchInput);

function onSearchInput(e)
{
    var table = document.getElementsByTagName("table")[0];
    var str = e.srcElement.value.toLowerCase();
    var num_results = 0;

    if(str == "") // optimization for empty input
    {
        // show all rows
        for(var i = 1, row; row = table.rows[i]; i++)
        {
            row.className = "";
            num_results++;
        }
    }
    else
    {
        for(var i = 1, row; row = table.rows[i]; i++)
        {
            var hidden = row.innerText.toLowerCase().indexOf(str) == -1;
            if(!hidden) num_results++;
            row.className = hidden ? "hidden" : "";
        }
    }
    document.getElementById("results").innerText = "Results: " + num_results;
}


/* Function ParseHeader() extracts answer number, language name and size of polyglot from answer header.
   Argument: `header` - answer header string without markup, eg. "1. Python 3 (8 bytes)" or "59. Tcl, 1324 bytes".
   Retval:  object, eg. {num: 1, language: "Python 3", size: 8} or 
            null if header has wrong format
  
   There are two formats of header, new one with comma and old one with parens.
   Parsing new format only with regexp is hard because:
   - language name may contain commas,                                 eg. "51. Assembly (x64, Linux, AS), 1086 bytes"
   - there may be several sizes, of which the last one should be used, eg. "210. Haskell without MonomorphismRestriction, 10035 9977 bytes"

   There are only several answers with old format header: 1-5, 7, 12-17, 21. All of them have single size and don't have parens in language name,
   so they can be parsed with simple regexp.
   
   Algorithm: Find commas. If there are no commas parse it as old format. Otherwise parse it as new format.
   New format parsing: Let everything after last comma be `sizes`. Check if `sizes` ends with the word "bytes". If not, set size to 0.
   Take the word before "bytes" and convert it to number. Parse the rest of the header (before last comma) with regexp.
*/
function ParseHeader(header)
{
  var a = header.split(',');
  if(a.length > 1) // current format: Number "." Language "," Size+ "bytes"
  {
    // filter(s=>s) removes empty strings from array (handle multiple consecutive spaces)
    var sizes = a[a.length-1].split(" ").filter(s=>s); // " 123 100  bytes " -> ["123", "100", "bytes"]
    var size;
    if(sizes.length < 2 || sizes[sizes.length-1] != "bytes") size = 0;
    else size = +sizes[sizes.length-2];

    a.splice(a.length-1,1); // remove last element
    var match = a.join(',').match(/(\d*)\.(.*)/);
    if (!match) return null;
    return{
            num: +match[1],
            language: match[2].trim(),
            size: size,
          };
  }
  else // old format: Number "." Language "(" Size "bytes" ")"
  {
    var format = /(\d*)\.([^(]*)\((\d*)\s*bytes\)/;
    var match = header.match(format);
    if (!match) return null;
    return{
            num: +match[1],
            language: match[2].trim(),
            size: +match[3]
          };
  }
}

// 1533246057 (number of seconds since UTC 00:00 1 Jan 1970) -> "Aug 2 '18"
// other useful Date functions: toUTCString, getUTCDate, getUTCMonth, getUTCFullYear
function FormatDate(n)
{
  var date = new Date(n*1000); // takes milliseconds
  var md = date.toLocaleDateString("en-US", {timeZone:"UTC", day:"numeric", month:"short"});
  var y  = date.toLocaleDateString("en-US", {timeZone:"UTC", year:"2-digit"});
  return md + " '" + y;
}


var processed = []; // processed answers, it's called `valid` in original snippet

function ProcessAnswer(a)
{
  var body = a.body, header;

  //
  // Extract header from answer body.
  // Try find <h1> header (markdown #). If not found try find <h2> (markdown ##).
  // Extracted header contains only text, all markup is stripped.
  // For 99 language markup is later readded to language name because markup is essential for it.
  //
  var el = document.createElement('html'); // dummy element used for finding header
  el.innerHTML = body;
  var headers = el.getElementsByTagName('h1');
  if(headers.length != 0) header = headers[0].innerText;
  else {
    headers = el.getElementsByTagName('h2');
    if(headers.length != 0) header = headers[0].innerText;
    else { console.log(body); return; } // error: <h1> and <h2> not found
  }

  var info = ParseHeader(header)
  if(!info) { console.log(body); return; } // error: unrecognised header format

  if(info.num == 99 && info.language == "99") info.language = "<i>99</i>";

  processed.push({
    num:         info.num,
    language:    info.language,
    size:        info.size,
    answer_link:   a.share_link,
    user:          a.owner.display_name,
    user_link:     a.owner.link,         // `undefined` if user was deleted
    creation_date: a.creation_date,      // unix epoch (number of seconds since UTC 00:00 1 Jan 1970)
  });
}

function process()
{
  $('#status').remove();

  answers.forEach(ProcessAnswer); // answers -> processed
  
  processed.sort( (a,b)=>(a.num-b.num) ); // sort by answer number, ascending

  processed.forEach(function (a) {
    
    var date = FormatDate(a.creation_date);

    var user = a.user_link ? ('<a href="'+a.user_link+'">'+a.user+'</a>') : a.user; // redundant code, currently the only deleted user is ais523
    if(user == "user62131") user = '<a href="https://chat.stackexchange.com/users/246227/ais523">ais523</a>';

    var style = (a.num == 194) ? "background: #ccf" : ""; // 194 is winner answer

    var row = "<tr style='{0}'><td>{1}</td> <td><a href='{2}'>{3}</a></td> <td>{4}</td> <td>{5}</td> <td>{6}</td></tr>"
              .format(style, a.num, a.answer_link, a.language, a.size, user, date);

    $('#answers').append( row );
  });
}
a {text-decoration:none}
a:visited {color:#00e}

table, td, th { border: 1px solid black; }
td, th { padding-left: 5px; padding-right: 5px; white-space: nowrap; }
tr:hover { background-color: #ff9; }
td:first-child  { text-align:center; } /* # */
td:nth-child(4) { font-style:italic; } /* author */
td:nth-child(5) { text-align:right;  } /* date */

p { margin: 8px 0px }
.hidden { display: none } /* search hides rows */
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>
  <span>Search: </span><input autofocus> &nbsp;<span id="results"></span>
</p>
<table class="answer-list">
  <thead>
    <tr><th>#</th> <th>Language</th> <th>Size (bytes)</th> <th>Author</th> <th>Date</th></tr>
  </thead>
  <tbody id="answers">
  
  </tbody>
</table>
<div id="status">Loading answers...</div>

\$\endgroup\$
  • 3
    \$\begingroup\$ For people who can see deleted posts: the Sandbox post was here. \$\endgroup\$ – user62131 Dec 6 '16 at 19:00
  • 5
    \$\begingroup\$ There's no need to copy the previous program, although of course you can use it as a guide; redoing the program from scratch is likely to take longer! There's no need to permalink to answers; sorting by oldest will show all the answers in order already. \$\endgroup\$ – user62131 Dec 6 '16 at 19:44
  • 3
    \$\begingroup\$ @ais523 I think what was meant was that should new answers contain try it links with the new code? \$\endgroup\$ – Blue Dec 6 '16 at 19:45
  • 6
    \$\begingroup\$ I think we need a script that takes a hex dump of the code and automatically runs it in all the languages... \$\endgroup\$ – mbomb007 Dec 7 '16 at 20:05
  • 3
    \$\begingroup\$ This is the Versatile integer printer posted as a different type of challenge. (Inspiration?) The final answer (currently) would score 0.0127, only beaten by Sp3000's 30 language submission... :) \$\endgroup\$ – Stewie Griffin Dec 17 '16 at 12:11

297 Answers 297

1
4 5
6
7 8
10
7
\$\begingroup\$

190. Ruby 2.5.0, 9370 bytes

Try it online!

Ruby 2.5.0 is separated from other Rubies with (defined?pp), see here.
I also replaced \'ppp\'.bytes.class==Array with (defined?__dir__), see here.

Until this moment we used golfed version of Ruby/Perl/Python code created by Sp3000 in Julia answer. The problem with the code for me is that it is very obscure and only 4 bytes shorter than straightforward version. I switched to pre-answer 17 code because I think byte savings are not worth increased complexity in this case.

old(golfed):  print((1/2and 9or 13<<64>>64or 68)+(0and eval('(defined?pp)&&173||(defined?__dir__)&&-4||\'_\'[0]==95&&91||93'))^1<<64>>61)
new:          print (0and eval('(defined?pp)&&190||(defined?__dir__)&&13||\'_\'[0]==95&&108||110')or(None and 9or 1/2and 1or 5<<64>>64or 68))

If 0 is truthy then it is Ruby, do big eval
else if None is truthy then it is Perl 5 (#9)
else if 1/2 is truthy (==0.5) then it is Python 3 (#1)
else if 5<<64>>64 is truthy (==5) then it is Python 2 (#5)
else it is Python 1 (#68)

Ruby weirdness:

  • requires space after print for some reason
  • and/or chain works differently in Ruby than in other scripting languages, so parens are needed around None and 9or 1/2and 1or 5<<64>>64or 68

Note that &&/|| chain works as expected in Ruby.

GolfScript: "$'#{print(187);exit}'$/". Pure: "#{print 187;exit}", () for Prelude, $' '$ for Pyth, / for Perl 5.

| improve this answer | |
\$\endgroup\$
7
\$\begingroup\$

122. Monkeys, 4540 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv;'[af2.q]PkPPX)\('#CO"14"   ^; */
#/*0|7//```"`  [>.>.])[-'][(x>77*;,68*,@,1',;# l1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉QQxQxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOBxxxxxV/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o# doxe b xx-----
#cxx#z#111#y#y#11111D#_#x 
#~==++++++++++++++++++++++++++++++++++++++++x+++++++++.._+++++++.
#`<`============================================================
#<<<#>>]}}+-[.^+.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                               _      /  _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoO\4O6O@MoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0)0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉
7 UP
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL

You can see a y and a x here. <
>SET y TO 88. <
>SET x TO 32. <
>PUT x IN y. <
>X y. PPVs""o
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"
char*x[]={"23 7 12 1 ",
"z c #7E7E7C",
"b c #B87A63",
"_ c #0000C0",
"d c #708FB7",
"e c #00A2E7",
"f c #FFC0FF",
"O c #FFFFFF",
"y c #FFFF00","c c black","g c green","x c blue","o c magenta",
"fceyyyyyyyyyyyyyyyyyyyz",
"fcbyyyyyyyyyyyyyyyyyyyz",
"fcbyyyyyyyyyyOyOdObOOOO",
"fcggyyyyyyyygOOOOOOOOOO",
"fcccccccccccccccccccccc",
"fffoOOOxxxxx_oOxxx_Oxo_",
"fffOOOOxxxxxOOOxxxOOc__"};//"
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<9      >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78" \++++>/<~#class P{       function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\                 _
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21#fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint("65")#asss^_^_# 
#9 "25"   +/ ppppppp           (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///V222999686#

VIP score (Versatile Integer Printer): .002500 (to improve, next entry should be no more than 4652 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG, 119 in ImageFuck, 120 in TRANSCRIPT, 121 in Braincopter, 122 in Monkeys

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • Piet (116) local
  • Stones (117) local
  • ImageFuck (119) local
  • Braincopter (121) local

Explanation

Well… I don’t know how this works. I kinda just took Tio’s hello world example, and hacked at it until it worked. The code is between the Emoji-gramming and Transcript.

7 UP
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL

Good luck Future @Chance.

Sincerely,

Past @Chance.

Edit: Updated code and link for correct version as @stasoid pointed out in #123

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ Where even is the Monkey's code? Even if you don't know how it works it might be nice to know where it is when it breaks. \$\endgroup\$ – Wheat Wizard Aug 29 '17 at 2:22
  • \$\begingroup\$ @WheatWizard It is that stuff under the emoji and above the TRANSCRIPT \$\endgroup\$ – Potato44 Aug 29 '17 at 3:12
7
\$\begingroup\$

271. Klein 000, 12530 bytes

#16 "($?63lv+'50;+'51;7 5 %$\24# #@aat"  /*{\D8gv ef26q--[if.q]PkPPXxy)\('#CO^"14"  7 9 7 9                                         7 222222222222222222222222                                               ##*/
#/*1&7//```"`     [>.>        .])[-'][(7       m>77*,68*,R@'_ 7 aat)(22)S ii/ \ipsddpsdoh#####(####### ??  #### ##  ###### mxf ####xAegguEay######i#u####Ft#######MZWWW####WWWWWW zR###### # ####  #######:_a5#     202ø!},{P_<Ám/e!<ÁmOe!<É}M<ÁmS15%!!%BB44,222%!!%BBPZPYAAA4D,5P[5?4-0!<½!!22<2/!]ss1]'[kX"204".â'_PPQss 7 999993 1 7 3 1 8 1 1 55 k zzzzkf kf k zzzzzd kf k zzzzza kf bfz coding=utf8 ''53'S^'   #z#111#y#y#y#_#    ! 1>?7ДOq#t#>2/Wr#t#t#q#68#r#t#t#68#q#63#r#t#t#6v#>#</Wr#6}#y/===Wr#7ЯOq#>J7Д/Wr#y<Wr#>5/Wr#t#t#6y#>-=/Wr#6|#>6/Wr122! 1退
#>x   >>IF 2>2*>      18&1&     nthte \#184O@  nthie@O252< nthneo anhet    /112\   #####1#######111#1#1111##### h#115#  o#    ##### ####  ###   #### # W#W#####WW#WWWW#####W####WW###WWW####W#WW#W#####WW#WWWW#W\aa*7+42@n;WWWWWWWWWWWW;WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWR
# 36!@`D//<> ++++++::@\_       / 78"oo@"   ; L       ;    xo--o+++o++\    ;-----########8=,_## ### ###### ######## #### ##### ####### ##### ###    # # #### ### ##### ####### ##### ###    # # #### ### ##### #EEEEEδΘΔΔΔΘΔΘλ
#comment -[v]>>>>>>>>> >>">r"{\>>>>>> nM MMMMMMMnnMnnnMnMMMMMMMnMMnnnnnMMnMn     # ##########>>###>##>#####>>##>####>##>#>#####>>##>#####>####>>>#####>##>#>##>>##>####>>##>#####>####>>>#####>## # ##  ## ####
#~// x    v>>>>>>>>@!:!8:6:2/_>>>>>>> MnnMnMnnnnnnMnMnMMMMMMMMnnMnMnnnMnMMMM     # ????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????! >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                     
#[#[]]x   >>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>R.----.>>>>>>>_           #v
#- ! ++R+++  +++++++++\++++++++++++++++++++++++++++++++U+++.._+++++++/._         #
##################################################################################>
 #{{{{]+-}}[.^+;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]}--<^>++[+++++[>+++++++'4o'6o@<- ]>._++++._+++._^<]+-+<[<=oC<=oC<._>>>>-]^>[<+++++[>++++++++++<-]>@@+.---@._+>$]  <<>> }<}>}[<}}<<}<<<<<}<<}<<<<}<<<}}}<}}<}}<}}<}}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}]  >>\[/>\/\>>>>>>>]>\[./>>\/\./\/>>>\./]  [[
#{  
# []-main=-[165]- ###
#*  //:1*23/5x%6E2
#cs  
#2""/*  
#|9999 9 9
#9 999 99 9999 9
#`⟪`⟪\⟫9
#<<<# 9 9999 bqbqbqLzLzLzqtqtqtTcTcTcRqRqRq TzTzTzRtRtRtMbMbMbPsPsPsTqTqTqAbAbAbTmTmTm
#=  ($?$?0l0v01k1k0l0i 0r 0h0h1d111 0e 0y0y 0mo1d0y0e0e001d0i0f 0g 0n0n110mo0n0t 0t0mo0f0t0g0g0f0h0r0r0i0001k10v 0v0l11110000011100|_ )\
[ '`e```.1.0.6i_]56pq['];#/\\/;print 24; exit}}  __END__/
###\MoOMoOMoOMoOMOOmoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOomoomoOOOM\// >+@+-@@@@=>+<@@@=>+<?#>;?\:-._++._++++._#/<?\>3-++._6+---2._#/++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
'wWWWw;WW;WW;wv;w;;WW;wW;WW;wv;wW;WW;w_;WW;WW;WW;WW;wW;WW;Ww;W;WW;WWWWwW;;;W\W/WWWWWwwwwvwWWWwWWWWwvwWWwW\WWwvwWWwWWWwvwW/Ww\WWW ho ho ho ho // ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi MU ([])  ({}<(((((()()())){}{})){}{})>)(({})){}{(<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)  (<><()>){({}[()])}{  #(((()()()()())()())(()()())(()()())(()()())(()()())(()()())(()()())(()()())(()()())(()()())(()()()))  (((((((\';  a=$(printf \\x00);b=$(echo -n $a|wc -c);case $b[1] in 1)echo 54;;1*)echo 242;;4*)echo 78;;8*)echo $((9999999999999999999>0?166:244));;0*)echo 50;;*)echo 58;;esac;exit;#)';  print (0and eval('":"&&(defined?pp)&&190||(defined?__dir__)&&13||"_"[0]==95&&108||110')or(None and(-1 %2>0and 9or 247)or 1/2and eval('hasattr(zip,"iters")and 200or\'𒁁\'=="-"and 241or 1')or 5<<64>>64or 68));"${print(g+91)}$/";exit; "$'#{print(187);exit}'$/"; #< ?>wWWsssss {}#(prin 45)(bye){{}#}#(prin 199)(bye) 46(8+9+9+9+9+=!) >* * * * *[[[3+4*7*@]]]xxxxxxxxxxxxxxxxxxx
###;{a='//'}={a:null};console.log a&&39||180;\
__DATA__=""" " 
#  \
__END__
set pr'[puts 59][exit]\'':;@echo 185 #';set pr'-';pr 89;exit#ss
ifdef x 
#  
#  
#  
#  
# *#p 173#* //:
p now 70 dollar off!
p has been selling out worldwide!
#PLACET,2<- #2FAC,2SUB#1<- #52FAC,2SUB#2<-  #32FACREADOUT,2PLEASEGIVEUPFACs
jzaeeaeueew_uuwq seee_epaeeeeeeeeeeee_ecisajjapppppp  ;vwWWWw⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚🐸🐸🐸🐸🐸🐸😂😂😂😂😂😂😂🌚🔥😂😂😂😂😂😂😂💯💩🐸🔥😂💞💩💞😂😂😂😂💞🔥🌚▲▲▲²²²²▲¡▼¡▲▲¡⎚¿⁵228¦→ₔ₁₉₃2♦10♦10♦10♥☰䷩䷏䷏䷨䷏䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩⚎ֱֲֵֶֶֶֶַַַָָ  
밠밠따빠빠맣박다맣받다맣희맣희うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
write 224;Bye ;   %x:
% #>*****[[[[828+*+@+*99]]]]*****<
% # 

😊♈💖  
😇♈♈  
😊♉♈   XX
😇♈♈   +------+XX   X       XXX
😇♈♉   |/0110@| X X  XXXXXXXXX X
😇♈💜  |/0011 | X X   XXXXXXX
😊♉♈   |/0010 | X
😊📢♈  |/0011 | 
😈♈💜  |/0001 | 
😊📢♈  |/$0011| 
😇♉💞  +------+ 
😊📢♉🐸⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
1<<<< ! !
2<<<!<   !
1+``  +!!
1=  *
53  +
1>  *
51  +
#
1+  *     xx+   x  x
49 x+  xx+xxx+  x+x + x B+ ===+
x= xx x  x===  x x >8 xxx +++= +
x+  +x + x,_8=>+ xB  x+x
x==+R _*=x==  x +x==+> x x    +
 x +R"12"+8=Dx B=xD +  + xxx+
`+ x`=>8=x>  x+~ x  x +x+B+
x  +====+x>~+B+= x x + x
xD~+x 8=++>8x +=   x+    +,_   +
15 + x   x  + +  xx   +  ?   ?@  %"18"_     !
1  + x   + x ++  xx   + ?@    ?
1 \+* x    +  +  x    +   +   *
1   ! x  +x   +       + ?  !  ?
1    ! x xx --... ...--  ? @ ?
x +   ++ xx  ++ ++     +
 +xxxxx  +     +
  
#  +
+ *   +
#  + *
  ***********************************************<>***+
  +  +$$$
  <>"3"_O._+// rk:start | print: "69" rk:end      e$P+++++*D*+++1++1E!s
   +   +;*
$'main' *****+ %++ %++ @@* %-- @@* %++ %++ @@*
 -+3o4o#  +
  <++"269">o+
 * *
  +*****
#= #= #=+
^#
 #+=    #
,   #
,,  .=#
 #+           =#
 #^=
+       =#
#  #   #
,,..,.,,,,..,.,.,,..,,.,,,...,,.,,..,,,,,,..,,,.$
#  
 (printout t 164 )
(exit )  
#ceppp  
MsgBox (0,"",169   )
#cs  
T:251  
E:0  
Yo::=~147
::=  
You can see an x here.<<
  
>{-<<<<<  
> 176
>> Output 1
>SET x TO 120. [0]{472454523665721469465830106052219449897}         @,-1,:*b5<>␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
>X x.   ;-}
>l=length$show"\0";main=print$[0,0,0,233,0,146,157]!!l{-
  
\begin{code}  
{- ;  ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run(putStr"159"  )
\end{code}
# {{{ {{{ {{{ {{
#!ZZt >>END-IF
#xxxh  program-id.h.procedure
#xxxg  DIVISION.DISPLAY 230.
#}}}f >>IF 2>2
#}}}e OOO
 xxxd 231
#xx}c uuu
#}}}b
#x}xa
ppppppppppppp;pppppppppppppppp
22-23-31-13-13-31-13-13-31-13-13-31-13-13-31-12-12-23-31-13-13-31-13-13-31-13-13-31-13-13-31-21-22-21-12-32
literally, print 249
   
<script> onload=function  (){d=document;f=[].sort;d.body.style.display='block';d.body.innerHTML=!/r/.test(f)?267:!/\n/.test (f )?257:!/^\n/.test(f)?259:d.documentMode?262:265}</script>
<style>body{display:none}html:after{content:"258"}@media \0 all{html:after{content:"266"}}@media screen and (min-width:0\0){html:after{content:"260"}}</style>
<attache>Print[194]Exit[]</attache>
~~~x
main:Int
main =248
~~~ 
out &49 &1
out &56 &1
out &50 &1
Take Northern Line to Tooting Bec
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
#  ;
set ! 57 ent
set ! 51  #ata",_"[];=[]t}=>+8;dnu?1&&1<66PLers95 6 4>8370::$/\0Vngt=Bk:pext se>ExPrs min94 Cr ~-<u Uithw;re-  hardoc 8  2:t$
More 91 of this
How much is it
red down one blue up red down one blue up red up one red right two blue up
baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet */
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*:
#include<stdio.h>
#define z(a) #a
#define u "e"//"
const char*i="24 10 31 1""a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302""o c #FF8000""t c #FF00BC""u c #008080""h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000""A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000""H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA""r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF""HHHahtdegggggggyrggggggc""IHHaixuEFbGGbggbryAEGRgc""JJHajyurbgbgggggggb____o""IJHakmyyyyyyyyyyyyyyyyye""I__almyyyyyyyyyyyyyyyyye""K__anmyyyyyyyyyyyyyy_y_e""HH_aqggyyyyyyyyg____m_Je""JH_axxxxxxxxxxxxxxxxxxxx""K__aaaam___bbbbbBm_bbBab""K__________bbbbb___bbxbb";//"
typedef int known,macro;int x=! '(',y[60];macro m( ){0;}int f(int a,...  ){y[x=0]=x=72;printf("\x25i",!m?195:!a?124+x:sizeof' '-1?(1&*z(N)?234:"\??-"[1]?218:67^*u""):*u""?37:z (0'0  0'0 )[7]?75:"\??-"[1]?77+a/2:77   );}__attribute__((weak))int main(){known y;int i;f(x,x=sizeof y);x=1;return 0;}__attribute__((destructor))int g(){x?0:puts("198");}//())*/
#1""/*/
`WWWWwWWWWWWwWWWWWWWWwWWWWWWWWWWwWWWWWWWWWWWWWWWW. :-write(186). end_of_file. `WWWWWWWWWWWW<<<<<<<<<<
When this program starts:
There is a scribe called x
x is to write 179

>import Prelude;import GHC.IO;import Data.Functor.Const;import Data.String;import Text.Heredoc;import Control.Exception;import Language.Haskell.TH;{-_vwWWQTkTTZ-}import Text.Show.Functions;instance Monoid a=>Monad  (Const a )where _>>=_=mempty
>instance K Float;instance IsString Integer where{fromString _=0};instance Num B where fromInteger _=B 170;negate _=B$ x#x
>data B=B{u::Int};e=error"#"; f?n=unsafePerformIO$ f e`catch`\ErrorCall{}->r n;instance Num(a->b);instance Num();instance Show(Q a )where{show _=""};f=(^);q _=r$ (d.B)?4;d(B _)=r$0`f`f 2 64;class(Show a,Floating a)=>K a where{k::a->String;k _=show$  (id::a->a)pi};g=[here|here<-""]--[|]
>;
>x=0;y#a=subtract 0b1206;x#a=174;h b=b^x;r=pure ;l a=length$ show a;forall=0;z|(∀)<-5=forall;b1206|let _._=x;negate _=3=[246,264,0,263,261,232,222,209,210,128,206,207,214,211,212,217]!!(l("  ",0x0.1,1e1,(0`id`),k(0::Float),toEnum 0::Num a=>Enum a=>a)+2*l(do a<-Const[1];pure a,h pi,h(0::Real a=>a))- 3*(l$(pure$TupE[]::ExpQ))- (-q?6+70+z));(! )=seq
>;
>main|let p!_=0=print$ sum[0!61,{-_-}last$172:[u$[-1]!!0|g<">"]]--} 
 
 console.log 178;
 
#1""/*/
#if 0
#endif//*
/*/
#if 0
p;
select 192;
#endif
p=sizeof("(\");print'(''72'')';end !");main(){puts('??-'&1?"101":"92");return 0;}
#if 0
#endif//*
print 61
#}
disp 49
#{
}{}<>           K yya+-        &  g+$
 /._++.._# !._++.-.>@    A=AgRA;       AC
#:   /          
 \?       -/!+++++++++++++++++++++++++++++++++++++++++++++++++<>^+++++<\>+++.-.
rebol[ ]prin either Value? 'disarm[223][270];red[ ]prin 221
#s{
endif
#<<<# /<+> /\
"""#"; print(85)
#ce:  ~#class C{function:Main  (a:String[])~Nil{83->Print( #~ +/.---.>_/~#);}}
#endcomment K`250
#nocomment outtext("155")
#/`[[[[?"271"]]]]@ pS9^7^8^MUOUOF @0:8:8 \@,,1'1'< @125iRE
#\* * * * *|!o51     ~nJ     ; ;#p'34'   \=#x=4;  print(1>>-1<2 ? 17 : Inf16-0|>sizeof>2 ? 162 : √4x<8 ? 201 : 225+2>>1*2)#p⟫try {EVAL 'say 「27」;exit'};say 237#⟫say 167#{{p{{}}}}say 235#]#print(47)#]#echo 21#>/#print(171)#s-#print 175#s|# print(208)#sCOprint("65")#9#
#8M`|  <esc>dggi2<esc>//                 $:~-<~-< ~-<<<~-!`=>$/ass#
# 9//  >>END-IF*>>>* #
# '>+ /' 25  +--[};]  pppppeeee*n*n*n*es*s*s*ee*n^*n*n*e*sss*e*n*n*n*ee*s*   <e 5>1  *///∙226p\)|_|_Z222999612#

Try it online!

Klein 000 follows the path of Haystack/Reng/reticular, barring its trip to the underworld (/ on line 1 sends it to line 1157).

Code in polyglot:

ln
247  #/`[[[[?"271"]]]]@ pS9^7^8^MUOUOF
248  #\* * * * *|!o51     ~nJ     ; ;#p'34'   \

Pure reticular code is ;p'34'. # fixes ; in Reng as before. Two ; destroy LMBM marbles from line above.
Reng code is ~nJ.
Pure Haystack code is |o51. ! skips | in Klein 000.

Klein 000:
Stack is reduced to single 0 like in other Kleins. ? pops 0 from the stack. "271" pushes ASCII values to stack, interpreter should be called with -c or -A.
Placement of ` is dictated by Pip. Spaces between *s are for Retina 1. Note: @ must be on line 247 because of Gammaplex. #/ is not a problem because Agena comments don't nest.

How doors work in Klein:

enter image description here

Paths of all Kleins in a square program (picture from this answer):

             ^
            I|P
            ./.....
201, 211 -->.......<-- 100, 110
            .......
            .......
            .......
200, 210 -->.......<-- 101, 111
            .......
             ^   ^
             |   |
            000 001
            010 011

Paths of all Kleins in a program of 32 chars x 7 lines, which is more close to polyglot proportions (1157 bytes x 251 lines):

             ^
            I|P
line 1      ./..............................
201, 211 -->................................<-- 100, 110
            ................................
            ................................
            ................................
            ................................
line 7      ................................











200, 210 -->xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<-- 101, 111
line 32     xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
             ^                            ^
             |                            |
            000                          001
            010                          011

Klein interpreter can traverse space outside program code.
For example, Klein 000 will eventually enter program code at line 7 char 2 moving up.
Klein 200 after falling out of the right edge of (inexistent) line 31 enters the path of Klein 000 (line 32 char 2 moving up).

| improve this answer | |
\$\endgroup\$
  • 1
    \$\begingroup\$ I'm glad Klein 000 was finally added. I had been trying for a while to get that to work. Hopefully we (probably just you) can figure out how to get the last couple Kleins in. \$\endgroup\$ – Wheat Wizard Aug 11 '19 at 12:39
  • \$\begingroup\$ @SriotchilismO'Zaic I want to look if more Kleins can be added without making polyglot squarish. I really don't want to square it – too drastic of a change, especially considering that we already have several Kleins. \$\endgroup\$ – stasoid Aug 11 '19 at 13:58
  • \$\begingroup\$ You can do it as long as you have a ratio a little above 1:2 (height:width). You need to redirect the ips down towards the "bottom" (the middle of the Klein square) to split them. I don't know how feasible this is I did try a little bit to get this to work. \$\endgroup\$ – Wheat Wizard Aug 11 '19 at 14:00
7
\$\begingroup\$

294. Ring, 13710 bytes

# 6 "($?63_lv+'50;+'51;5 5 %$\--$[250=@$]aat\" a/4*DvehfbIg/\"" 3 4//*26qkp16*^[.qx]"[8=,k]Pk PPX~_~)"xvy"\( 7# CO|"14" #:7 9 7 9                      7 222222222222222222222222                        "'" # ##\\
# 1"7"//['][']     ````      [>.>.?]~~)[7aatxy\#184  O@              (22)Siii/ \psddpsdoh ]##### #######++(- #### ##-[###### mxf ####xAegguEay######i#u####Ft#######MZWWW####WWWWWW zR###### # ####  #######:_a5# 202ø!},{P_<Ám/e!<ÁmOe!<É}M<ÁmS15%!!%BB44,222%!!%BBPZPYAAA4D,5P[5?4-0!<½!!22<2/!]ss1]'[kkX"204".â'_PPQss 7 999993 1 7 3 1 8 1 1 55 k zzzzkf kf k zzzzzd kf k zzzzza kf bfz 2#z#111#y#y#y#_# coding=utf8             ! 1>?7ДOq#t#>2/Wr#t#t#q#68#r#t#t#68#q#63#r#t#t#6v#>#</Wr#6}#y/===Wr#7ЯOq#>J7Д/Wr#y<Wr#>5/Wr#t#t#6y#>-=/Wr#6|#>6/Wr122! 1退                         @[[[["472"?]]]]******<
# if-0//               18&1&  nthteo nthieo nthneo  a;net R[+++].----._     /112\    ##### #######   # #    #####; #   #   #    ##### ####  ###   #### # W#W#####WW#WWWW#####W####WW###WWW####W#WW#W#####WW#WWWW#WWWWWWWWWWWWWWWWWWWW;WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWR
#6!@eD>>if 2>2*>++++++!\::    @_/ 78"oo@"   '\"' ` L       >"082",,,@_ 1   x-----x########    ## ### ###### ######## #### ##### ####### ##### ###    # # #### ### ##### ####### ##### ###    # # #### ### ##### #EEEEEδΘΔΔΔΘΔΘλ
# endif/*[(*)]v_>>>>>>> >>">r"{\>>>> @ 0:8:8/_>>>> [>]R 10G|'53'S 111111111111     # ##########>>###>## #####>>##>####>##>#>#####>>##>#####>####>>>#####>##>#>##>>##>####>>##>#####>####>>>##### ## # ##  ## ####
#comment -[v] >>>>>>>>                     [@,,,"279"]>252O>"01",,@_ 9 h$s o#      #  ????!?!??!??!!!   !???!?!??!!?!?!!!!!?!!!!?????!????????????????????! >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                
#[#[/e]]   >>>>>>>>>@!:!8:6:2/_ >>>>>>>>>>>>>>>>>>>>>>>>  ;>>>>>>>>>>>>>>>>>>      #v           @.7.8.2<
#- [!R++++++] +++++++++\++++++++++++++++++++++++++++++++++U.._+++++++._+++o+++o--ox#
####################################################################################>
 #{{{{]~*[~*__+++++++[>+++++++<-]>+._+++++._+._@]+-}}[.^+;;+;;+;;+<>;;+;;+;;+;;;;;;+; ;+;;.._]}--<^>++[+++++[>+++++++'4o'6o@<-]>._++++._+++._^<]+-+<[<=oC<=oC<._>>>>-]^>[<+++++[>++++++++++<-]>@@+.---@._+>$] )++$--![+++[>+++++++<-]>+._+++++.._>](  <<>> }<}>}[<}}<<}<<<<<}<<}<<<<}<<<}}}<}}<}}<}}<}}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}]  >>\[/>\/\>>>>>>>]>\[./>>\/\./\/>>>\./]  [[[
#~  n MMMMMMMMnnMnnnMn MMMMMMMnMMnnnnnMMnMnMnnMnMnnnnnnMnMnMMMMMMMMnnMnMnnnMnMMMM
#**#p 173#*  e:1*23/5x%6E2  []-main=-[165]- ###  `. :-write(186). end_of_file. `
#|9999 9 9
#/*9 999 99 9999 9
#9   
#cs !9 9999
#<<<#
#>   
#{   
#    
#`⟪`⟪\⟫ bqbqbqLzLzLzqtqtqtTcTcTcRqRqRq TzTzTzRtRtRtMbMbMbPsPsPsTqTqTqAbAbAbTmTmTmBqBqBqMtMtMtUgUgUg
#=($?$?0l0c01k1k0l0i 0r 0h0h1d111 0e 0y0y 0mo1d0y0e0e001d0i0f 0g 0n0n110mo0n0t 0t0mo0f0t0g0g0f0h0r0r0i0001k10c 0c0l11110000011100|_  )\
[ '`e```.1.0.6i_]56pq[`\']put 294 bye!\` #s['];#/\\/;print 24;exit}}__END__/
### \MoOMoOMoOMoOMOOmoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOomoomoOOOM\// >+@+-@@@@=>+<@@@=>+<?#>;?\:-._++._++++._#/<?\>3-++._6+---2._#/++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
'  WWWw;WW;WW;wv;w;;WW;wW;WW;wv;wW;_W;Ww;WW;WW;WW;WW;wW;WW;Ww;W;WW;WWWWwW;;;W\W/WWWWWwwwwvwWWWwWWWWwvwWWwW\WWwvwWWwWWWwvwW/Ww\WWW ho ho ho ho // ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi MU ([])  ({}<(((((()()())){}{})){}{})>)(({})){}{(<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)  (<><()>){({}[()])}{  #(((()()()()())()())(()()())(()()())(()()())(()()())(()()())(()()())(()()())(()()())(()()())(()()()))  ((((((((\';  a=$(printf \\x00);b=$(echo -n $a|wc -c);case $b[1]¢ in 1?)echo 54;;1* )echo 242;;4* )echo 78;;8* )echo $((9999999999999999999>0?166:244));;0?1??)echo 50;;0* )echo 282;;* )echo 58;;esac;exit;#)';  print (0and eval('":"&&(defined?A)&&290||(defined?pp)&&190||(defined?__dir__)&&13||"_"[0]==95&&108||110')or(None and(-1 %2>0and 9or 247)or 1/2and eval('hasattr(zip,"iters")and 200or\'𒁁\'=="-"and 241or 1')or 5<<64>>64or 68));"${print(g+91)}$/";exit; "$'#{print(187);exit}'$/"; #< ?>wWWsssss {}#(prin 45)(bye){{}#}#(prin 199)(bye) 46(8+9+9+9+9+=!) >* * * * *[[[[3+4*7*@]]]]xxxxxxxxxxxxxxxxxxxxxxxx
###;{e=1}={e:null};console.log e&&39||180;\
__DATA__=""" " 
#  \
__END__
set pr'[puts 59][exit]\'':;@echo 185 #';set pr'-';pr 89;exit
ifdef ss 
#  
#  
#  
#  
#  
#  
#  
#PLACET,2<- #2FAC,2SUB#1<- #52FAC,2SUB#2<- #32FACREADOUT,2PLEASEGIVEUPFACs wwwwwwwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWw W
jrzaeeaeuee_wuuwq jii_iullluiiiogr se_eeepaeeeeeeeeee;eeecisajjarpppppp ⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚🐸🐸🐸🐸🐸🐸😂😂😂😂😂😂😂🌚🔥😂😂😂😂😂😂😂💯💩🐸🔥😂💞💩💞😂😂😂😂💞🔥🌚▲▲▲²²²²▲¡▼¡▲▲¡⎚¿⁵228¦→ₔ₁₉₃2♦10♦10♦10♥☰䷩䷏䷏䷨䷏䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩⚎ֱֲֵֶֶֶֶַַַָָ  
밠밠따빠빠맣박다맣받다맣희맣희吾有一數曰二百八十一書之うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  
😇♈♉  
😇♈💜  
😊♉♈  #e:>* * * * *[[[[828+*+@+*99]]]]* * * * *<
😊📢♈  
😈♈💜  
😊📢♈  
😇♉💞  
😊📢♉🐸⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
#  
XX  
x+------+XX   X       XXX
x|/0110@| X X  XXXXXXXXX X
x|/0011 | X X   XXXXXXX
x|/0010 | X
x|/0011 | 
x|/0001 | 
x|/$0011|  
x+------+  
1     ! !
2   !    !
1+    +!!
1#  *
53  +
#  
1+  *        +
51  +
#  
#  
1   *     x``   x  x
49 #+  xx+x=>+  x+x + x B+ ===+
#  =x x  x===  x x >8 xxx +++= +
#+  +x + x,_8=>+ xB  x+x
# =+R _*=x==  x +===+> x x    +
 x +R"12"+8=Dx B=xD +  + xxx+
#+ ``=>8=x>  x+~ x  x +x+B+
#  +====+x>~+B+= x x + x
#D~+x 8=++>8x +=   x+    +,_   +
15 + x   x  + +  xx   +  ?   ?@  %"18"      !
1  + x   + x ++  xx   + ?@    ?
1 \+* x    +  +  x    +   +   *
1   ! x  +x   +       + ?  !  ?
1    ! x xx --... ...--  ? @ ?
x +   ++ xx  ++ ++     +
 +xxxxx  +     +
  
#= +
+ *   +
#= + *
#=**************************************************+>                                            @,,,"286"_+1y2 #<"67",,@␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
  +  +$$$
#>"3"O._   +// rk:start | print: "69" rk:end       + e$P+++++*D*+++1++1E!s
   + ; + *
$'main' *****+ %++ %++ @@* %-- @@* %++ %++ @@*
 -+3o4o#  +
  <++"269">o+
^* *
 #+*****|
.x= #   +
,,  .=#
 #+ OOO       =#
 #^=
+`` 231 =#
#  #uuu#
,,..,.,,,,..,.,.,,..,,.,,,...,,.,,..,,,,,,..,,,.$
  
write 224;bye; 
  
 console.log 178;
  
~~~x  
main:Int  
main =248 
~~~  
literally, print 249
(print 164     (exit ) )
 ( *)
begin write         ('288'    )end.(*)
print 61
T:251  
E:0  
#+IDRIS: main:IO      (         );main=print 291
#ppW<#require"stdio"Stdio:write     (293  )#>
#ceppp         ;
MsgBox (0,"",169   )
#cs  
Yo::=~147
::=  
You can see an x here.<<  
  
>{-<<<<<  
> 176
>> Output 1
>SET x TO 120. [0]{472454523665721469465830106052219449897}
>X x.   ;-}
>l=length$show"\0";main=print$[0,0,0,233,0,146,157]!!l{-
  
\begin{code}  
{- ;  ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run (putStr"159" )
\end{code}
ppppppppppppp;pppppppppppppp
# {{{ {{{ {{{ {{
#!ZZt >>END-IF
#xxxh  program-id.h.procedure
#xxxg  diVision.display 230.
#}}}f >>IF 2>2
#}}}e
#xxxd
#xx}c
#}}}b
#x}xa















































































































































































































































































































































<script> onload=function   (){d=document;f=[].sort;d.body.style.display='block';d.body.innerHTML=/a/.__proto__=='//'?275:!/r/.test  (f  )?267:!/\n/.test(f)?257:!/^\n/.test(f)?259:d.documentMode?262:265}</script>
<style>body{display:none}html:after{content:"258";[;content:"276";]}@media \0 all{html:after{content:"266"}}@media screen and  (min-width:0\0){html:after{content:"260"}}</style>
<attache>Print[194]Exit[]</attache>
 
22-23-31-13-13-31-13-13-31-13-13-31-13-13-31-12-12-23-31-13-13-31-13-13-31-13-13-31-13-13-31-21-22-21-12-32
Take Northern Line to Tooting Bec
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
#  ;
set ! 57
set ! 51
out &49 &1
out &56 &1
out &50 &1
When this program starts:
There is a scribe called x
x is to write 179

p now 70 dollar off!
p has been selling out worldwide!
More 91 of this
How much is it
red down one blue up red down one blue up red up one red right two blue up
baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
#
ata#8;mint};dnu&&1Prers>80::\0}ngt=Bk:pextsepsEx Cr u Uitharbody+/+--- $ 165"6c"2:1*F 4, _._#a*een gi>/=[]R 8ogre;b:ui ca34
在ent
*/
 
#1""
#if!1
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*:
#include<stdio.h>
#define z(a) #a
#define u "e"//"
const char*i="24 10 31 1""a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302""o c #FF8000""t c #FF00BC""u c #008080""h c #E60001""i c #CAFFFF""f c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000""A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000""H c #0000AA""I c #00AA00""C c #55FFFF""K c #AAAAAA""r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF""HHHahtdegggggggyrggggggc""IHHaixuEFbGGbggbryAEGRgc""CCHafyurbgbgggggggb____o""ICHakmyyyyyyyyyyyyyyyyye""I__almyyyyyyyyyyyyyyyyye""K__anmyyyyyyyyyyyyyy_y_e""HH_aqggyyyyyyyyg____m_Ce""CH_axxxxxxxxxxxxxxxxxxxx""K__aaaam___bbbbbBm_bbBab""K__________bbbbb___bbxbb";//"
typedef int known,macro;int x=!  '(',y[60];macro m(){0;}int f(int a,...  ){y[x=0]=x=72;printf("\x25i",!m?195:!a?124+x:sizeof' '-1?(1&*z(N)?234:"\??-"[1]?218:67^*u""):*u""?37:z (0'0  0'0 )[7]?75:"\??-"[1]?77+a/2:77);}__attribute__((weak))int main(){known y;int i;f(x,x=sizeof y);x=1;return 0;}__attribute__((destructor))int g(){x?0:puts("198");}//())*/
#1""/*/
<<<<<<<<<<WQTkTTX
 
 
>import Prelude;import GHC.IO;import Data.Functor.Const;import Data.String;import Text.Heredoc;import Control.Exception;import Language.Haskell.TH;import Text.Show.Functions;instance Monoid a=>Monad (Const a)where _>>=_=mempty
>instance K Float;instance IsString Integer where{fromString _=0};instance Num B where fromInteger _=B 170;negate _=B$ x#x
>data B=B{u::Int};e=error"#"; f?n=unsafePerformIO$ catch (f e )$ \ErrorCall{}->r n;instance Num(a->b  );instance Num();instance Show  (Q a)where{show _=""};f=(^);q _=r$ (d.B )?4;d(B _)=r$0`f`f 2 64;class(Show a,Floating a)=>K a where{k::a->String;k _=show$ (id::a->a)pi};g=[here|here<-""]--[|]
>--W
>x=0;y#a=subtract 0b1206;x#a=174;h b=b^x;r=pure ;l a=length$ show a;forall=0;z| (∀)<-5=forall;b1206|let _._=x;negate _=3=[246,264,0,263,261,232,222,209,210,128,206,207,214,211,212,217]!!(l("  ",0x0.1,1e1,  (0`id`),k(0::Float),toEnum 0::Num a=>Enum a=>a)+2*l(do a<-Const[1];pure a,h pi,h (0::Real a=>a))- 3*(l$(pure$TupE[]::ExpQ))-(-q?6+70+z));(!  )=seq
>;
>main|let p!_=0=print$ sum[0!61,{-_-}last$172:[u$[-1]!!0|g<">"]]--} 
 
#1""/*/
#if!1
#endif//*
/*/
#if!1
_;
select 192;
.exit
print1(292                       )
quit
#endif
p=sizeof("   (\");print'(''72'')';end !" );main(){puts('??-'&1?"101":"92" );return 0;}
#if 0
#endif//*
#}
disp 49
#{
}{}<>           K yya+-        &  g+$
 /._++.._# !._++.-.>@    A=AgRA;       AC
#:  /          
 \?     -/!  +++++++++++++++++++++++++++++++++++++++++++++++++<>^+++++<\>+++.-.
rebol[ ]prin either Value? 'disarm[223][270];red[ ]prin 221;$+/ #.---.>/
#s{  /<+>/
endif #@[[[["272"?]]]]* * * * * *<
#<<<##>\
"""#";   print(85)
#ce:  ~#class C{function:Main(a:String[])~Nil{83->Print();}}
#endcomment K`250
#nocomment outtext("155" )
#/`psZ283MIOnDrFe @,,,"284_"># 01-:2/_;:@,,,"285"_+1y2"982"2k,# @#;# k-'1:,,@_  pS9^7^8^MUOUOF
#\!|!o51   ;        ~nJQ  p'34'  \=#x=4;print(1>>-1<2 ? 17 : Inf16-0|>sizeof>2 ? 162 : √4x<8 ? 201 : 225+2>>1*2 )#p⟫try {EVAL 'say 「27」;exit'};say 237#⟫say 167#{{p{{}}}}say 235#]#print(47)#]#echo 21#>         :/aa*7+42@n;/#print(171)#s-#print 175#s|#print(208)#sCOprint("65")#ERi521@<[[["172"?]]]]* * * * * *<es9#
#8M`|  <esc>dggi2<esc>// :~- <~-< ~-<<<~-! `=> #
#1//  >>END-IF*>>>9#
# '>+/*' 25  >[};]+ pppppeee^e*n*\              \! 99n*n*es*s      \*s*ee*n*n*n*e*sss*e*n*n*n*ee*js "( *)//dd"    <e 5>1  */// \)∙226p|_|_X222999612#

Try it online!

Ring has #, // and /**/ comments, # comments are used in the polyglot. Ring has "", '' and `` multiline strings without escapes, '' and `` strings are used in the polyglot.

Ring code is on line 23:

[ '`e```.1.0.6i_]56pq[`\']put 294 bye!\` #s['];#...

\' closes the string in Ring and shells. Using put 294 because ?294 breaks Zsh. \` escapes ` in shells, but not in Ring. \ is a valid identifier in Ring. It doesn't produce Using uninitialized variable error because it is after bye. ! detokenizes bye in Moorhenses. ! is logical not in Ring.

This is how Ring sees the polyglot:

['…'] put 294 bye ! \ `…` `…` `…` `…` f `…` id `…` 250

Adjacent literals and variables do nothing. Most of the polyglot is hidden inside `…`. f and id are two variables arising from Haskell code. There was also catch, but it gives syntax error because it is a keyword in Ring. So I switched catch to prefix call in Haskell. 250 is from Retina 1 code.

I moved Prolog code before line 23, so Ring doesn't see it. Prolog code has w. To fix Grass I replaced 0v with 0c in Incident code and removed first w from the longest line.

SQLite comment now starts with #/* on line 14.

| improve this answer | |
\$\endgroup\$
6
\$\begingroup\$

57. Wise, 1300 bytes

#16  "(}23!@)(" 3//*v\D@;'[af2.qc]'#)"14";n4
#/*` PkPPX (22)S"[!(>7 7*,;68*,@;'1,@␉␉␉␉ P''53'S^'q
#>␉
# >36!@␉
#`<`
#<]+<[.>-]>[
#{
#z}
#
#=x<R+++++[D>+++++++EAL+++<-][pPLEASE,2<-#2DO,2SUB#1<-#52DO,2SUB#2<-#32DOREADOUT,2PLEASEGIVEUPFACiiipsddsdoh]>+.-- -. >][4O6O@
#x%+>+=ttt Z_*.
#D>xU/-<+++L
#R+.----\).>]|
#[#[(}2}20l0v0x1k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0yx0y0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k10vx0v0l111111^_)0
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.|
#
[ ']56pq[' ];#//
'(p(x0 \';case $argv[1] in *1*)echo 50;;*)echo 54;;esac;exit;0';print((eval("2\x2f5")and(9)or(13))-(0and 4)^1<<(65)>>(62))or"'x"or'\{0}1{0}1{0}1{0}([9]<((((((1)(1)(1))){1}1{1}))0{1}1{1})1>0)5{(<{1}(({1}){1})>0)}{0}({1}(1))'#}#(prin 45)(bye)|/=1/24=x046(8+9+9+9+9+=!)/
__DATA__=1#"'x"//
#.;R"12"'
###;console.log 39
""""#//
=begin //
#sseeeemPaeueewuuweeeeeeeeeeCisajjap*///;.int 2298589328,898451655,12,178790,1018168591,84934449,12597/*
#define p sizeof'p'-1?"38":"37"
#include<stdio.h>
main ( )/*/
#
#"`#"\'*/{puts (p);}/*'"`"
/*
<>{#65}//
#}
disp 49#//
#{
1}<>//
$'main'//
#-3o4o#$$$
#<R>"3"O.
=end #//
"""#"#//
#}
#s|o51~nJ;#:p'34'\=#print (17)#>27.say#]#print(47)#]#echo 21#~-<~-<~-<<<~-
#sss8␛dggi2␛ `|1|6$//''25  16*///^_^_X222999"26

Try it online!

is a literal tab, a literal ESC character; Stack Exchange would mangle the program otherwise. I recommend copying the program from the "input" box of the TIO link below, if you want to work on it.

VIP score (Versatile Integer Printer): .007019 (to improve, next entry should be no more than 1369 bytes)

Rundown

This program prints 57 in Wise, 56 in dc, 55 in Brain-Flak Classic, 54 in Zsh, 53 in Shove, 52 in COW, 51 in Assembly, 50 in Bash, 49 in Octave, 48 in Deadfish~, 47 in Lily, 46 in Cubix, 45 in PicoLisp, 44 in alphuck, 43 in reticular, 42 in evil, 41 in brainfuck, 40 in Minimal-2D, 39 in CoffeeScript, 38 in C, 37 in C++, 36 in Labyrinth, 35 in INTERCAL, 34 in Rail, 33 in Incident, 32 in Whirl, 31 in Modular SNUSP, 30 in Whitespace, 29 in Trigger, 28 in Brain-Flak, 27 in Perl 6, 26 in 05AB1E, 25 in Pip, 24 in Thutu, 23 in Hexagony, 22 in Underload, 21 in Nim, 20 in Prelude, 19 in Reng, 18 in Cardinal, 17 in Julia, 16 in Pyth, 15 in Haystack, 14 in Turtlèd, 13 in Ruby, 12 in Fission, 11 in Befunge-98, 10 in Befunge-93, 9 in Perl 5, 8 in Retina, 7 in Japt, 6 in SMBF, 5 in Python 2, 4 in ><>, 3 in Minkolang, 2 in V/Vim, and 1 in Python 3.

Verification

Most of the languages are tested by the test driver shown above.

  • Reng can be tested to output 19 here.

  • Modular SNUSP can be tested to output 31 here.

  • Incident was verified to test 33 on my computer.

  • Deadfish~ can be tested to output 48 using this interpreter. Note that Deadfish~ takes the polyglot to be fed on stdin, but and prints a number of >> prompts to standard output, which are an unavoidable consequence of running any Deadfish~ program.

  • Brain-Flak Classic does have a TIO but should be verified to run using this interpreter as the TIO interpreter post-dates the challenge.

Explanation

Wise was pretty easy to add. The current code did a whole lot of nothing.

Here is how Wise currently sees the program:

![][!>^>>!<<]<[>]>[<[><-][<-<-<-]>--->][>>-<---->]|[[^<-><><?>--|[][][]-^<<>>[]<><>|!-?:<><><>-<>|~:>]]~-<~-<~-<<<~-||^^

Since you probably are not a wise expert heres how it works

!  Roll the stack, its currently empty so that doesn't do much
[] Loop until zero, since we are already at zero this does nothing
[!>^>>!<<] ^ same as above but with stuff inside (This loop would surely destroy most everything on the stack if it weren't so there is no problem anyway)
<   Bitshift left, multiplies zero by 2
[>] Another loop that doesn't execute but would terminate if entered
>   Bitshift right, divides zero by 2
[<[><-][<-<-<-]>--->] Decently sized loop that is not entered (This one is dangerous, cannot be exited once entered)
[>>-<---->] Another unentered loops will exit if -1 < n < 4
|   Logical or, does nothing
[   Very long loop caused by the Nim comment enter at your own risk (this can actually encounter an interpreter bug I was not aware of until now)
 [^<-><><?>--|[][][]-^<<>>[]<><>|!-?:<><><>-<>|~:>]
]
~-<~-<~-<<<~- Push 57
||^^  Garbage noops

As you can see it is mostly loops that are entirely skipped because we start with a zero on the top of the stack. To make it print 57 I needed to put ~-<~-<~-<<<~- after the last ]. I tried a couple of places but the best was simply as a comment in the Nim code. There are some characters Wise cares about after the Nim code but they are all either | or ^. These are logical or and xor respectively and ultimately do nothing since there is only one item on the stack and the implicit argument of all operations is 0. The only concern left would be that it would interfere with existing languages. However in that particular spot it seems to do nothing to the existing languages. I was concerned that it would have an issue with Incident, however for some bizarre reason it doesn't change anything there.

Going forward

I get the feeling that Wise is the kind of language that will either be no problem whatsoever or a really big problem. It cares about the characters :?!|&^[]~-. If you put these characters inside of existing [] you should be pretty much fine, I have marked which loops are dangerous to enter in my code explanation above. The only way you can get a non-zero value on the stack is ~ making it particularly dangerous. Any of the loops marked as safe will wipe the value for you. You can also add a ~ or > to cancel out the damage caused by a first ~ or [>] to pacify the TOS. If things get really messy [>^] or [>&] will wipe the stack pretty well add more ^ or & to make it stronger. It is proven that it is impossible to write a program that will arbitrarily wipe the stack so you are going to have to pick a tool to do the job well.

If you break Wise and need help fixing it I am always happy to help so feel free to contact me.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ Again! Hmmm. I have an idea. \$\endgroup\$ – Christopher Apr 27 '17 at 15:13
  • \$\begingroup\$ I was going to try and do unary but it is still too big \$\endgroup\$ – Christopher Apr 27 '17 at 15:17
  • \$\begingroup\$ How would you do Unary, anyway? \$\endgroup\$ – CalculatorFeline Apr 27 '17 at 15:34
  • 2
    \$\begingroup\$ " not a wise expert" You missed a pun opportunity here D: \$\endgroup\$ – CalculatorFeline May 2 '17 at 23:52
6
\$\begingroup\$

73. Morse Code, 1961 bytes

#16  "}(o+?23!@- "/*\Dv;'[af2.q]PkPPX)\('#CO"14";*/
#/*0|7//```"`  )[-'][(>77*,;68*,@;'1,@1011)(22)S ␉\4n;␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`
#
#_>++++.>++++++::@---x---.+?
#`<`
#<]}}+<[<.>>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++qL+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACiiipsddsdoh]>@@+.---@.>][
#x%+>+=ttt Z_*.ar
#D>xU/-<+++L
#R+.----\).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d@O6O4111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0)0
[ "]56p26q[puts 59][exit]" ,'\['];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.
'((( p\';a=a;case $argv[1]+${a:u} in  *1*)echo 50;;*A)echo 54;;*)echo 58;;esac;exit;';print((eval("1\x2f 2")and 9or 13<<(65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>){(<{}(({}5){})>)}{}({}())wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwvwWW li ha '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39
""""
=begin
<>{
utpb now 70 dollar off!
ai
utpb has been selling out worldwide!
ai fir at fir
#sseeeemPaeueewuuweeeeeeeeeeCis:ajjap*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//* --... ...--
#1""//*
#define u8 "38\0"
#define p sizeof'p'-1?u8"67":"37"
#include<stdio.h> 
main (  )  {puts(p);}//*/
#if 0
#endif//*
/*/
print'("72")';end;
#if 0
#endif//* rk:start | print: "69" rk:end
print 61
#}
disp 49;
#{
}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.
=end
"""#"
#}
#s|o51~nJ;#:p'34'3\=#print(17)#>27.say#]#print (47)#]#echo 21#1 xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi os fwwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm
#s8␛dggi2␛`|$// '' 25  16*///~-<~-<~-<<<~-COprint("65")#ssss^_^_X2229996#

VIP score (Versatile Integer Printer): .005038 (to improve, next entry should be no more than 2041 bytes)

No, I'm not joking. I wrote an interpreter last year, and this apparently works.

The interpreter is space-delimited. I just stuck --... ...-- on the first line with #endif.

Rundown

This program prints 73 in Morse, 72 in Fortran, 71 in what, 70 in Commercial, 69 in rk-lang, 68 in Python, 67 in C11, 66 in Surface, 65 in ALGOL 68, 64 in Agony, 63 in Brian & Chuck, 62 in Grass, 61 in S.I.L.O.S, 60 in Moorhens 2.0, 59 in Tcl, 58 in Ksh, 57 in Wise, 56 in dc, 55 in Brain-Flak Classic, 54 in Zsh, 53 in Shove, 52 in COW, 51 in Assembly, 50 in Bash, 49 in Octave, 48 in Deadfish~, 47 in Lily, 46 in Cubix, 45 in PicoLisp, 44 in alphuck, 43 in reticular, 42 in evil, 41 in brainfuck, 40 in Minimal-2D, 39 in CoffeeScript, 38 in C99, 37 in C++, 36 in Labyrinth, 35 in INTERCAL, 34 in Rail, 33 in Incident, 32 in Whirl, 31 in Modular SNUSP, 30 in Whitespace, 29 in Trigger, 28 in Brain-Flak, 27 in Perl 6, 26 in 05AB1E, 25 in Pip, 24 in Thutu, 23 in Hexagony, 22 in Underload, 21 in Nim, 20 in Prelude, 19 in Reng, 18 in Cardinal, 17 in Julia, 16 in Pyth, 15 in Haystack, 14 in Turtlèd, 13 in Ruby, 12 in Fission, 11 in Befunge-98, 10 in Befunge-93, 9 in Perl 5, 8 in Retina, 7 in Japt, 6 in SMBF, 5 in Python 2, 4 in ><>, 3 in Minkolang, 2 in V/Vim, and 1 in Python 3.

Verification

Try it online!

  • Reng can be tested to output 19 here.
  • Modular SNUSP can be tested to output 31 here.
  • Surface can be tested to output 66 here.
  • Japt was updated in Tio to fix the parsing error we've been exploiting, so it must be tested individually here.
  • Incident was tested via manual balancing of tokens.
  • Surface was tested locally.
  • Moorhens 2.0 and Deadfish were tested by WheatWizard.
  • Morse was tested using my interpreter.

Incident report

Somehow tokenized #1, un-tokenized it by adding a #1 before the Morse.

Never mind, golfed by WheatWizard, added a 1 before the xi's.

| improve this answer | |
\$\endgroup\$
6
\$\begingroup\$

107. Gol><>, 3303 bytes

#16  "?63(o?23!*# #@"/*\DZZCv;'[af2.q]PkPPX)\('#CO"14"; */
#/*0|7//```"`  [>.>.])[-'][(>77*;,68*,@,1',;# l1011)(22)S\7aa*+42@n;iiipsddpsdohcoding:utf8␉␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`  e++++++::@    /"78"oo@
#~
#y
#`<`
#<<<#>>]}}+-[.+..]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q   L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]>@@+.---@.>][
#x%+>+=ttt Z_*.
#D>xU/-<+++L
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOx4O6O@MoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0 )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw                       (([5]{})))␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;'(******* **********819+*+@[*99[?]*]***|!)'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9 seeeemPaeueewuuweeeeeeeeeeCis:ajjappppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉

set ! 57
set ! 51
More 91 of thiset of re9
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":     x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77");"5""6 27""Zinge -'";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end!"            );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<(9    >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
#<<<#>>> /
reg end="";print(85);reg s#++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78"\++++>/<~#class P{        function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47) #]#echo 21#fwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint ("65")#asss^_^_#
#9 "25"  +/ ppppppp            (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///X222999686#

VIP score (Versatile Integer Printer): .002696 (to improve, next entry should be no more than 3396 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>

Verification

Try it online!

Languages not available on TIO:

Explanation

This is another addition from A Brief History of 2D Programming Languages. Gol><> is derivative of ><>. They can be distinguished using @ command, which rotates 3 top elements of the stack in different directions in ><> and Gol><> :

http://esolangs.org/wiki/Fish#Stack_manipulation

><>:     @ - shift top 3 elements right  1,2,3 -> 3,1,2
                                             ^top     ^top

https://github.com/Sp3000/Golfish/wiki/Differences-to-Fish

Gol><>:  @ - shift top 3 elements left   1,2,3 -> 2,3,1
                                             ^top     ^top

So if we have stack like this: 107, 4, 2, then @ will bring to the top the number we need:

7aa*+42@n;

I use 2 because of Whirl. Also I moved Alice (/"78"oo@) closer to top, where it is less likely to cause problems.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ Cubically should be available on TIO, but the interpreter on the repository is more up to date. \$\endgroup\$ – TehPers Aug 7 '17 at 5:23
6
\$\begingroup\$

108. Ruby 1.8.7, 3340 bytes

#16  "?63(o?23!*# #@"/*\DZZCv;'[af2.q]PkPPX)\('#CO"14"; */
#/*0|7//```"`  [>.>.])[-'][(>77*;,68*,@,1',;# l1011)(22)S\7aa*+42@n;iiipsddpsdohcoding:utf8␉␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`  e++++++::@    /"78"oo@
#~
#y
#`<`
#<<<#>>]}}+-[.+..]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q   L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]>@@+.---@.>][
#x%+>+=ttt Z_*.
#D>xU/-<+++L
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOx4O6O@MoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0 )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw                       (([5]{})))␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and eval("\"arY\"[2]==89and 2-93or 4"))^1<<(65)>>62)or"'x"or' {}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;'(******* **********819+*+@[*99[?]*]***|!)'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9 seeeemPaeueewuuweeeeeeeeeeCis:ajjappppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉

set ! 57
set ! 51
More 91 of thiset of re9
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":     x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77");"5""6 27""Zinge -'";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end!"            );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<(9    >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
#<<<#>>> /
reg end="";print(85);reg s#++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78"\++++>/<~#class P{        function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47) #]#echo 21#fwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint ("65")#asss^_^_#
#9 "25"  +/ ppppppp            (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///X222999686#

VIP score (Versatile Integer Printer): .002651 (to improve, next entry should be no more than 3433 bytes)

Rundown

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7

Verification

Try it online!

Languages not available on TIO:

  • Japt, 7 online.
  • Moorhens, 60 local. Use moorhens.py from the v2.0-dev branch.
  • Morse, 73 local
  • Objeck, 83 local
  • RunR, 90 local
  • Emotinomicon, 94 online
  • EmojiCoder, 96 online
  • Cubically, 97 local
  • Symbolic Brainfuck, 102 local
  • Paintfuck, 104 online (9x9 grid, origin at top-left)
  • Gol><>, 107 local, online
  • Ruby 1.8.7, 108 installed locally using rvm

Explanation

I used this document to find relevant differences between new and old versions of ruby. I found a couple of dead ends but ended up with the following

String#[]: Indexing a String with an integer returns a single character String instead of an integer.

This allows us to separate the two languages like so

"X"[0]=="X"

This will return true in 1.9 or later and false in 1.8.7 or earlier. We can use this boolean to separate the two versions of ruby.

"X"[0]=="X"and 13or 108

Ok, now we just put that where the 13 is and we're done right? No not even close. See the 13 in the ruby line is not for ruby, changing it doesn't actually have any impact on Ruby. It seems to be there for Python. Ruby parses the whole first block as 9 evaluating the expression 9-4^8. I don't know if this is some sort of emergent behavior or the work of a genius, but I'm about to make it a hell of a lot worse. So we'll change the 4 instead. Since 100^8 == 108 we want our 4 to become either 4, or -91, depending on the ruby version. So now we have

"X"[0]==88and-91or 4

Ok now both Rubies work, and its time to do cleanup.

Whirl

Whirl doesn't like the addition of the 0 and the 1 and since I don't want to really deal with whirl I'll get rid of them. Now our code reads:

"XXX"[2]==88and 2-93or 4

Perl 5

Perl 5 didn't like the "XXX"[2] part of the syntax. So I used an eval to mask the syntax.

eval("\"XXX\"[2]==88and 2-93or 4")

This also saves us a pair of parens required to satiate python.

Trigger

Trigger tokenized a couple of things, in particular XX and 88, this was fixed by changing our string from XXX to YoY and the 88 to 89.

The flaks

These changes added an extra ([]) inside of the Brain-Flak code. To counteract this I added an additional {} to our pop-chain. However it seems that 2 were required, I can't figure out why, but I can't argue with results.

Incident

It wouldn't be a proper addition if I didn't break incident. It seems that, through a complex chain of actions, ar was tokenized. To break it I changed the two irrelevant characters in the indexed string to ar.

Going Forward

Now that I have rvm up an running I can add more versions of Ruby pretty easily. I'm going to see how many of these I can add.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ Instead of placing ar in the ruby code you could change the one in the bash code as I said in the dash answer \$\endgroup\$ – Potato44 Aug 7 '17 at 8:48
  • 1
    \$\begingroup\$ @Potato44 I prefer this method because now there is no way for the ar token to come back. Probably not significant in the grand scheme of things but It gives me a little satisfaction to know I killed a token. \$\endgroup\$ – Wheat Wizard Aug 7 '17 at 14:43
  • \$\begingroup\$ Symbolic Bf works in this answer. \$\endgroup\$ – SnoringFrog Aug 7 '17 at 18:24
  • \$\begingroup\$ @SnoringFrog Did you mean to comment on my other answer? You already checked this one for me. \$\endgroup\$ – Wheat Wizard Aug 7 '17 at 18:25
  • 1
    \$\begingroup\$ Nope, just forgot I'd already mentioned that it worked in chat lol \$\endgroup\$ – SnoringFrog Aug 7 '17 at 22:43
6
\$\begingroup\$

115. xEec, 3753 bytes

(2 bytes shorter than the last!)

#16  "?63(o?23!*# #@"/*"r"{\Dv;'[af2.q]PkPPX)\('#CO"14"   ^; */
#/*0|7//```"`  [>.>.])[-'][(x>77*;,68*,@,1',;# l1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o#xxxxxxxxxx-----
#~
#z#111#y#y#11111D#_#xxxxxx
#`<`
#<<<#>>]}}+-[.^+.._]+-+<[<<.>>x>-]>[        _ 
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---4O6O@.>][
#x%+>+=ttt Z_*.                               _         _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0  )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw                       (([5]{})))␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and eval("\"ppp\".bytes.class==Array and(4)or(\"ar_\"[2]==95and 3-94 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9 seeeemPaeueewuuweeeeeeeeeeCis:ajjappppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉

set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         # 
More 91 of thiset of re9
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"1015""6 27""Zingeg-' x?";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<(9     >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3             #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78" \++++>/<~#class P{       function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\                 _
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21#fwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint("65")#asss^_^_#
#9 "25"   +/ ppppppp           (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///X222999686#

VIP score (Versatile Integer Printer): .002467 (to improve, next entry should be no more than 3850 bytes)

Rundown

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm

Explanation

xEec is a pretty run of the mill language as far as esolangs go. We need to output 115 and there are two reasonable ways to do so.

  • h#115 o#

  • h$s o#

h performs a push and o performs output # indicates that the operation is dealing with numbers and $ indicates it is dealing with chars. h$s o# is shorter making it seem like the better candidate but I ended up adding h#115 o# instead. The reasoning for this is that we can insert the code into the pyramid scheme spacers at no extra cost, and $ starts a new SNUSP program which I would really like to avoid. So I added h#115 o# to the spacers.

Whirl

Whirl didn't like the new 1s that were added to the code for obvious reasons so I deleted 2 from the Del|m|t code. To retokenize Del|m|t I had to make the B into a D. The removal of the 11 from the Del|m|t was what saves 2 bytes from the last iteration

Cubix

Removing two bytes shifted Cubix again I moved the capsule back a few bytes.

Driver Troubles

I noticed when I was testing xEec locally that all programs seemed to print an additional two new lines after every answer. I tried to fix this but learned that it was impossible. They stem from line is present in the interpreter (C++):

std::cout << "\n\n";

I don't know if this is a mistake, I can't see any reason for it being the case, but regardless when this is added to the driver the driver gives a failure regardless of the output. I could change the driver so this type of output is considered a success, but that might cause false positives on other languages. Instead I modified the drivers version of the interpreter to only print one newline this ensures that the driver accurately reports outputs.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ The language is called ¤xEec only once on its home page, all other 10 times it is called xEec. It is called only xEec on esolangs page. I believe the name of the language is xEec, not ¤xEec. \$\endgroup\$ – stasoid Aug 18 '17 at 14:21
  • \$\begingroup\$ @stasoid Ok I changed it. I figured the esolangs page was named xEec due to technical limitations but it seems that's just the name of the language. \$\endgroup\$ – Wheat Wizard Aug 18 '17 at 14:32
6
\$\begingroup\$

116. Piet(XPM), 3925 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv;'[af2.q]PkPPX)\('#CO"14"   ^; */
#/*0|7//```"`  [>.>.])[-'][(x>77*;,68*,@,1',;# l1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o#z bxe xxxx-----
#~
#z#111#y#y#11111D#_#xxxxxx
#`<`
#<<<#>>]}}+-[.^+.._]+-+<[<<.>>x>-]>[        _ 
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---4O6O@.>][
#x%+>+=ttt Z_*.                               _         _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0  )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and eval("\"ppp\".bytes.class==Array and(4)or(\"ar_\"[2]==95and 3-94 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9 seeeemPaeueewuuweeeeeeeeeeCis:ajjappppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉

set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         # 
More 91 of thiset of re9
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"
char*x[]={"23 2 5 1 ","O c #FFFFFF","_ c #0000C0","  c black","x c blue","o c magenta","xxx_Oxxxxx_Oxxxxx_oOxo_","xxxOOxxxxxOxxxxxxOOO __"};
//}"                      _
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<(9     >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78" \++++>/<~#class P{       function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\                 _
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21#fwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint("65")#asss^_^_#
#9 "25"   +/ ppppppp           (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///X222999686#

VIP score (Versatile Integer Printer): .002514 (to improve, next entry should be no more than 4026 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM)

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • Piet (116) local

Explanation

This addition is suggested by this polyglot by Wheat Wizard and 1000000000.

Piet programs are images. I am using an abstract Piet interpreter that can accept XPM3 images. In practice such an interpreter is constructed by converting XPM image to PNG or PPM with ImageMagick and then feeding the result to npiet. I used convert.exe from ImageMagick-6.8.9-Q16.

I don't understand how to terminate Piet program, so I did by analogy with the above-mentioned polyglot. I don't know how to terminate 1-pixel-height Piet program, so I use 2-pixel-height program.

To decrease the size of XPM code, I tried to use as less colors as possible. That's why there are noops in the program. Current solution uses 5 colors.

The program is (see commands):

push 6    hue:same lightness:+1    blue -> dark blue(#0000C0)
push 10   hue:same lightness:+1    blue -> dark blue
push 11   hue:same lightness:+1    blue -> dark blue
mul       hue:+1   lightness:+2    dark blue -> magenta
add       hue:+1   lightness:same  blue -> magenta
outN      hue:+5   lightness:+1    magenta -> dark blue

Trace generated by npiet -tpic polyglot.png:

trace

Version with 8 colors, no noops (not used in the polyglot):

trace

Adding to polyglot

I started with this XPM converted from PNG with ImageMagick convert.exe:

/* XPM */
static char *polyglot[] = {
/* columns rows colors chars-per-pixel */
"23 2 5 1 ",
"  c black",
". c #0000C0",
"X c blue",
"o c magenta",
"O c white",
/* pixels */
"XXX.OXXXXX.OXXXXX.oOXo.",
"XXXOOXXXXXOXXXXXXOOO .."
};

white#FFFFFF for grass
._ for DOBELA, also fixed evil
Xx for trigger

Pyth also broke. Normally, Pyth sees double-quoted strings in reverse to other languages: it considers everything outside strings to be strings and Pyth code is inside strings. But Pyth didn't like something inside XPM strings, so I temporarily switched its mode, so Pyth sees XPM code as usual (strings are the same as in C/XPM). So the code becomes:

//"
char*x[]={"23 2 5 1 ","O c #FFFFFF","_ c #0000C0","  c black","x c blue","o c magenta","xxx_Oxxxxx_Oxxxxx_oOxo_","xxxOOxxxxxOxxxxxxOOO __"};
//}"                      _

# starts line comment in the Flaks, I could not find it in the docs, but it is mentioned in the Brain-Flak answer. The Flaks don't see closing }, so I added another one on the next line. _ is for DOBELA, " is for Pyth.

To fix Incident, I added some token breakers after xEec code on line 4, x after Grass code on line 19, x after 3 on line 72.

Test driver

To speed up V I copy V files from /opt/v and comment out time.sleep(0.1) in v.py. I still use VAbstraction because it gives us a couple of extra seconds (polyglot.VAbstraction: 1.284 s, polyglot.poly: 3.349 s). Also, I fixed code that produced VAbstraction (previous version removed everything except line containing ␛dgg, link).

| improve this answer | |
\$\endgroup\$
6
\$\begingroup\$

117. Stones, 4001 3994 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv;'[af2.q]PkPPX)\('#CO"14"   ^; */
#/*0|7//```"`  [>.>.])[-'][(x>77*;,68*,@,1',;# l1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o#z bxe xxxx-----
#~
#z#111#y#y#11111D#_#xxxxxx
#`<`
#<<<#>>]}}+-[.^+.._]+-+<[<<.>>x>-]>[        _ 
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                               _         _              _
#D>xU/-<+++L    _
#R+.----\   \)4O6O@.>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0  )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9 seeeemPaeueewuuweeeeeeeeeeCis:ajjapppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉

set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         # 
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"
char*x[]={"23 2 5 1 ","O c #FFFFFF","_ c #0000C0","  c black","x c blue","o c magenta","xxx_Oxxxxx_Oxxxxx_oOxo_","xxxOOxxxxxOxxxxxxOOO __"};
//}"                      _
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<(9     >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78" \++++>/<~#class P{       function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\                 _
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21#fWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint("65")#asss^_^_#
#9 "25"   +/ ppppppp           (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///X222999686#

VIP score (Versatile Integer Printer): .002493 (to improve, next entry should be no more than 4096 bytes)

Rundown

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • Piet (116) local
  • Stones (117) local

Explanation

The stones program looks like this

red down one blue up red down one blue up red up one red right two blue up

Since its made mostly of words I put it with the other word soup programs.

Grass

Since new ws were added I needed to remove some from later in the grass program to correct the error.

Alphuck

Since 4 new ps were added they needed to be balanced with ss. I added sss after the code and removed one earlier balancing p.

Cubix

The Cubix capsule needed to be moved again, nothing fancy.

Paintfuck

The addition of paintfuck's directional characters caused the output to be offset improperly. In order to remedy this I shifted the Grass code forward until three ws were in the paintfuck code reseting the location of the paint brush

Golfs

I noticed that Moorhens tokenizes and as a increment so I added spaces to the python/ruby code to tokenize those ands allowing us to remove four nos from the Moorhens code.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ Paintfuck is broken \$\endgroup\$ – Potato44 Aug 18 '17 at 19:55
  • 1
    \$\begingroup\$ @Potato44 Fixed now \$\endgroup\$ – Wheat Wizard Aug 18 '17 at 20:48
6
\$\begingroup\$

118. MarioLANG, 4115 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv;'[af2.q]PkPPX)\('#CO"14"   ^; */
#/*0|7//```"`  [>.>.])[-'][(x>77*;,68*,@,1',;# l1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o#z bxe xxxx-----
#cxx#z#111#y#y#11111D#_#
#~==++++++++++++++++++++++++++++++++++++++++x+++++++++.._+++++++.
#`<`============================================================
#<<<#>>]}}+-[.^+.._]+-+<[<<.>>x>-]>[        _ 
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                               _      /  _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx@O6O4/x0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0 )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9 seeeemPaeueewuuweeeeeeeeeeCis:ajjapppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉

set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"
char*x[]={"23 2 5 1 ","O c #FFFFFF","_ c #0000C0","  c black","x c blue","o c magenta","xxx_Oxxxxx_Oxxxxx_oOxo_","xxxOOxxxxxOxxxxxxOOO __"};
//}"                      _
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<(9     >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78" \++++>/<~#class P{       function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\                 _
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21#fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint("65")#asss^_^_#
#9 "25"   +/ ppppppp           (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///X222999686#

VIP score (Versatile Integer Printer): .002504 (to improve, next entry should be no more than 4219 bytes)

Rundown

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • Piet (116) local
  • Stones (117) local

Explanation

MarioLANG is a 2D language that looks somewhat like a level from a Mario game. This answer relies on some implementation quirks of the ruby interpreter so I could not use the TIO interpreter. Besides at the very start the MarioLANG program is simple. This is what it looks like with irrelevent characters stripped out:

#
#
 >


  ==++++++++++++++++++++++++++++++++++++++++x+++++++++.._+++++++.
    ============================================================

The code starts with Mario on the top hash. Because there is a hash under him and the starting movement direction is right ward he then moves right starting a fall. This fall leads to the > which pushes Mario one square right before he continues falling. This fall lands Mario on top of the leftmost =. Since Mario is travelling rightward he eventually falls onto the long platform with + on it. These + increment a tape cell (The memory model is like brainfuck) until the cell reaches 49, the ASCII code for '1'. This is then printed twice by the .s. then another 7 is added to reach '8'. After this is printed Mario falls through the middle of the program until the program ends when he reaches the last line.

Del|m|t, etc

The lines containing the Objeck block comment and the Del|m|t code were switched in order to fit in MarioLANG. #cxx was appended to the front of the Del|m|t to appease Labyrinth and Incident.

Cubix

Cubix needed to be moved because of the new mass of characters at the start of the program. A slash was added below the INTERCAL to redirect the IP. The Cubix is now in the Incident/Whirl/Cow once again. A padding x had to be added to the Cubix capsule to avoid a division by zero in Cubically.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ @WheatWizard It doesn't work in Ruby 1.9.3 and Paintfuck. These errors are inherited from the previous answer. \$\endgroup\$ – stasoid Aug 19 '17 at 7:46
  • \$\begingroup\$ @stasoid I think I fixed them, I can't check Ruby 1.9.3 myself, was it the stray ␉ in the code? \$\endgroup\$ – Potato44 Aug 19 '17 at 12:36
  • \$\begingroup\$ yes ___________ \$\endgroup\$ – stasoid Aug 19 '17 at 12:44
6
\$\begingroup\$

120. TRANSCRIPT, 4382 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv;'[af2.q]PkPPX)\('#CO"14"   ^; */
#/*0|7//```"`  [>.>.])[-'][(x>77*;,68*,@,1',;# l1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOxxxxxxV/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o#B bxe xxxx-----
#cxx#z#111#y#y#11111D#_#
#~==++++++++++++++++++++++++++++++++++++++++x+++++++++.._+++++++.
#`<`============================================================
#<<<#>>]}}+-[.^+.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                               _      /  _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoO\4O6O@MoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0)0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉
You can see a y and a x here. <
>SET y TO 88. <
>SET x TO 32. <
>PUT x IN y. <
>X y. PPV
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"
char*x[]={"24 5 10 1 ","O c #FFFFFF","y c #FFFF00 ","t c #FF8000","z c #FF00BC","_ c #0000C0","  c black","x c blue","o c magenta","g c green","r c red","zxxx_Oxxxxx_Oxxxxx_oOxo_","OxxxOOxxxxxOxxxxxxOOO __","tyyyyyyyyyyyyyyyyyyyy   ","yyyyyyyyyyyyyyyyyyyyyyyy","yyyyyggyyyyyyyygOOOOOOOO"};
//}"                       _             _              _             _
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015"" 27""Zingeg-' ?";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<9      >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78" \++++>/<~#class P{       function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\                 _
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21#fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint("65")#asss^_^_#
#9 "25"   +/ ppppppp           (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///V222999686#

VIP score (Versatile Integer Printer): .002535 (to improve, next entry should be no more than 4490 bytes)

Rundown

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG, 119 in ImageFuck, 120 in TRANSCRIPT

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • Piet (116) local
  • Stones (117) local
  • ImageFuck (119) local

Explanation

TRANSCRIPT is a language that is meant to look like an interactive fiction game.

I originally tried using an NPC to hold the data to output but that was unsuccessful because NPCs can only hold strings and was causing trouble for Whirl. So I ended up using objects because they can hold integers. Because of Whirl I had to generate 120 by addition so I needed to use 2 objects instead of 1. The code to do this is:

You can see a y and a x here. <
>SET y TO 88. <
>SET x TO 32. <
>PUT x IN y. <
>X y. PPV

This has slightly more than what is necessary for TRANSCRIPT but is needed for other languages. You can see a y and a x here. declares 2 objects(variables) called x and y. The next 2 lines set y and x to 88 and 32 respectively. >PUT x IN y. adds the value of x to the value of y and stores it in y like y += x in C. X y. prints the value of y (120).

Brain-Flak

The reason for the trailing <s in the TRANSCRIPT code is to keep Brain-Flak balanced.

Trigger

X is the symbol we have been using as the jump for trigger, but all ways to print in TRANSCRIPT conatain an X. Since I didn't want to mess with the top line I decided to add a second jump to reach the end of the code. So the target of the jump is now V with the start of the jump being the PPV at the end of the TRANSCRIPT code.

Underload

Adding the TRANSCRIPT code broke Underload. This was fixed by moving an opening parenthesis from just after the rk-lang code to inside the evil/Alphuck line.

Incident

V had become at token so I added one at the end of xs being used to line up the Pyramid Scheme. I still needed to destroy one more token so I moved a space on the evil line to stop <space>se from being a token.

| improve this answer | |
\$\endgroup\$
6
\$\begingroup\$

121. Braincopter, 4410 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv;'[af2.q]PkPPX)\('#CO"14"   ^; */
#/*0|7//```"`  [>.>.])[-'][(x>77*;,68*,@,1',;# l1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉QQxQxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOBxxxxxV/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o# doxe b xx-----
#cxx#z#111#y#y#11111D#_#x 
#~==++++++++++++++++++++++++++++++++++++++++x+++++++++.._+++++++.
#`<`============================================================
#<<<#>>]}}+-[.^+.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                               _      /  _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoO\4O6O@MoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0)0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉
You can see a y and a x here. <
>SET y TO 88. <
>SET x TO 32. <
>PUT x IN y. <
>X y. PPV
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"
char*x[]={"23 7 12 1 ",
"z c #7E7E7C",
"b c #B87A63",
"_ c #0000C0",
"d c #708FB7",
"e c #00A2E7",
"f c #FFC0FF",
"O c #FFFFFF",
"y c #FFFF00","c c black","g c green","x c blue","o c magenta",
"fceyyyyyyyyyyyyyyyyyyyz",
"fcbyyyyyyyyyyyyyyyyyyyz",
"fcbyyyyyyyyyyOyOdObOOOO",
"fcggyyyyyyyygOOOOOOOOOO",
"fcccccccccccccccccccccc",
"fffoOOOxxxxx_oOxxx_Oxo_",
"fffOOOOxxxxxOOOxxxOOc__"};//"
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<9      >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78" \++++>/<~#class P{       function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\                 _
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21#fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint("65")#asss^_^_# 
#9 "25"   +/ ppppppp           (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///V222999686#

VIP score (Versatile Integer Printer): .002489 (to improve, next entry should be no more than 4519 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG, 119 in ImageFuck, 120 in TRANSCRIPT, 121 in Braincopter

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • Piet (116) local
  • Stones (117) local
  • ImageFuck (119) local
  • Braincopter (121) local

Explanation

This is another addition from this polyglot.
Braincopter is another image-based brainfuck derivative.
Image should be converted from XPM to PNG with ImageMagick (see Piet answer).

Braincopter IP follows this path:

Braincopter path

Corresponding brainfuck code (with R/L rotations) (first and last 2 instructions are irrelevant):

+>++++++++++++++++++++RR+++++++++++++++++++LL++++++++++.+.-.L++

. is white. Yellow is + in both ImageFuck and Braincopter, so they share many of yellow pixels. + at (x=2,y=0) is non-yellow to match number of yellow pixels needed by ImageFuck.

Piet code is delimited by black walls. Piet commands are in slightly different order than in previous answers. First push is magenta because blue interferes with ImageFuck (blue == < in ImageFuck).

Qs on the third line create new token for Incident.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ I was just working on a Braincopter answer :). Interesting to see the differences in our approaches. \$\endgroup\$ – Wheat Wizard Aug 24 '17 at 5:01
  • \$\begingroup\$ I moved Piet out of the way because it simplifies thinking about polyglot for me. \$\endgroup\$ – stasoid Aug 24 '17 at 8:21
6
\$\begingroup\$

123. Mycelium, 4540 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv;'[af2.q]PkPPX)\('#CO"14"   ^; */
#/*0|7//```"`  [>.>.])[-'][(x>77*;,68*,@,1',;# l1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOBxxxxxV/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o# doxe b xx-----
#cxx#z#111#y#y#11111D#_#x 
#~==++++++++++++++++++++++++++++++++++++++++x+++++++++.._+++++++.
#`<`============================================================
#<<<#>>]}}+-[.^+.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                               _      /  _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoO\4O6O@MoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0)0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉
7 UP
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL

You can see a y and a x here. <
>SET y TO 88. <
>SET x TO 32. <
>PUT x IN y. <
>X y. PPVs""o
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"
char*x[]={"23 7 12 1 ",
"z c #0C8302",
"b c #B87A63",
"_ c #0000C0",
"d c #708FB7",
"e c #58007B",
"f c #FFC0FF",
"O c #FFFFFF",
"y c #FFFF00","c c black","g c green","x c blue","o c magenta",
"fceyyyyyyyyyyyyyyyyyyyz",
"fcbyyyyyyyyyyyyyyyyyyyz",
"fcbyyyyyyyyyyOyOdObOOOO",
"fcggyyyyyyyygOOOOOOOOOO",
"fcccccccccccccccccccccc",
"fffoOOOxxxxx_oOxxx_Oxo_",
"fffOOOOxxxxxOOOxxxOOc__"};//"
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<9      >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78" \++++>/<~#class P{       function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\                 _
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21#fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint("65")#asss^_^_# 
#9 "25"   +/ ppppppp           (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///V222999686#

VIP score (Versatile Integer Printer): .002439 (to improve, next entry should be no more than 4650 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG, 119 in ImageFuck, 120 in TRANSCRIPT, 121 in Braincopter, 122 in Monkeys, 123 in Mycelium

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • Piet (116) local
  • Stones (117) local
  • ImageFuck (119) local
  • Braincopter (121) local
  • Mycelium (123) local

Explanation

Mycelium is another image-based language.

To make polyglot work in Mycelium I changed two colors:

enter image description here

Mycelium executes first row of pixels, then terminates by falling of right edge.

The code as seen by Mycelium:

x
0  #FFC0FF  R%16 == 15  Undefined Behavior (UB), noop in the actual interpreter
1  #000000  R%16 == 0   noop
2  #58007B  R%16 == 8   push 256 * G + B == 123   (also (65536 * R + 256 * G + B) % 11 == 2 (+) for Braincopter)
3  #FFFF00  R%16 == 15  UB (noop)
   ...
22 #0C8302  R%16 == 12, B%4 == 2  print number    (also (65536 * R + 256 * G + B) % 11 == 8 (R) for Braincopter)

I don't use op 9 (push G push B) because of 99.

Previous answer doesn't work in Moorhens, so this answer is based on the version from chat.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ @WheatWizard It prints 56 instead of 60. \$\endgroup\$ – stasoid Aug 29 '17 at 3:44
  • \$\begingroup\$ Huh it does. When Chance originally left that comment I ran it and got 60. Well yours certainly works so all is ok. \$\endgroup\$ – Wheat Wizard Aug 29 '17 at 3:46
6
\$\begingroup\$

127. Deltaplex, 4848 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv;'[af2.q]PkPPX)\('#CO"14"   ^; */
#/*0|7//```"`  [>.>.])[-'][(x>77*;,68*,@,1',;# l1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOBxxxxxV/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o# doxe b xx-----
#cxx#z#111#y#y#y#_#11111xx 
#~==++++++++++++++++++++++++++++++++++++++++x+++++++++.._+++++++.
#`<`============================================================
#<<<#>>]}}+-[.^+.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][PLACET,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                              _         _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00@O6O4/m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l111111^_0    )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    ) ;b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈ +-------+
😇♈♈ |$0011 \|
😇♈♉ |/1000 /|
😇♈💜|\ 0011\|
😊♉♈ |/01 00/|
😊📢♈|\ 0011\|
😈♈💜|@ 0110/|
😊📢♈|       |
😇♉💞+-------+
😊📢♉
7 UP
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL

You can see a y and a x here. <
>SET y TO 88. <
>SET x TO 32. <
>PUT x IN y. <
>X y. PPVs""o
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"
char*x[]={"23 7 20 1 ",
# define _ ,
"z c #0C8302"_"b c #B87A63"_"_ c #0000C0"_"d c #708FB7"_"e c #58007B"_"f c #FFC0FF"_"O c #FFFFFF"_"y c #FFFF00",
"h c #E60001 "_"i c #CAFFFF" _"j c #280000"_"k c  #CA0000"_"l c #E60100"_"m c #CA007F"_"n c #330001 "_"q c #E60000",
"c c black", "g c green","x c blue","o c magenta",
"fheyyyyyyyyyyyyyyyyyyyz",
"fibyyyyyyyyyyyyyyyyyyyz",
"fjbyyyyyyyyyyOyOdObOOOO",
"fkggyyyyyyyygOOOOOOOOOO",
"flmnqcccccccccccccccccc",
"fffoOOOxxxxx_oOxxx_Oxo_",
"fffOOOOxxxxxOOOxxxOOc__"};//"
int  y(){puts ( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";return 2;}int z=0;int   q(int a,int b){return b;}main(){q(z++,z++)?puts("124"):y  ();}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ) ;print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<9      >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxcly"78" \++++>/<~#class P{       function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\                 _@125iRE
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21 #fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint("65")#asss^_^_# 
#9 "25"   +/ ppppppp           (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///V222999686#

VIP score (Versatile Integer Printer): .002366 (to improve, next entry should be no more than 4961 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03(gcc), 38 in C99(gcc), 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11(gcc), 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11(gcc), 76 in Trefunge, 77 in C++14(gcc), 78 in dash, 79 in C++17(gcc), 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89(gcc), 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C(gcc), 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG, 119 in ImageFuck, 120 in TRANSCRIPT, 121 in Braincopter, 122 in Monkeys, 123 in Mycelium, 124 in C(clang), 125 in Gammaplex, 126 in Nhohnhehr, 127 in Deltaplex

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • Piet (116) local
  • Stones (117) local
  • ImageFuck (119) local
  • Braincopter (121) local
  • Mycelium (123) local
  • Deltaplex (127) local

Explanation

Deltaplex is an image-based language with graphical output.

As it turns out, Piet still works if some pixels of black wall are recolored, so part of the wall can be used to execute Deltaplex:

Deltaplex path

(x,y)  hex                                                                        [stack]
(0,0)  #FFC0FF  r255g192b255:  NOP
(1,0)  #E60001  r230g0b1:      IP direction down
(1,1)  #CAFFFF  r202g255b255:  push two 8-bit unsigned integers (first G then B)  [255 255]
(1,2)  #280000  r40g0b0:       init everything, pop window width and height, show the window []
(1,3)  #CA0000  r202g0b0:      push two 8-bit unsigned integers (first G then B)  [0 0]
(1,4)  #E60100  r230g1b0:      IP direction right  [0 0]
(2,4)  #CA007F  r202g0b127:    push two 8-bit unsigned integers (first G then B)  [0 0 0 127]
(3,4)  #330001  r51g0b1:       draw integer 127 at (0,0) (pop n; pop y; pop x) [0]
(4,4)  #E60000  r230g0b0:      end

Notes:

  • r50 (go to 2D mode) is not needed because r40 already does this (see screen() > initGL() > set2DScreen() in main.cpp)
  • r41g0b0 (redraw screen) is not needed because program redraws itself every 5ms at the end
  • Popping from empty stack is an error.

As with Gammaplex, there is no instruction to quit a program. The program is ended by entering wait state that does nothing except refreshing the window every 5ms. User can press Esc to quit the program.

This Deltaplex program contains a bug: on Windows 7 SP1 32 bit it displays 127 as expected, but if the window is minimized and then restored, the number disappears. This bug does not show up on Wine 1.8 on Ubuntu 16. I think the program still qualifies for the challenge despite the bug.

#FFC0FF is + and #E60001 is - in Braincopter, so Braincopter code does not need to be changed.
#E60001 is op 6 in Mycelium, which modifies color of pixel (0,0). Position of the pixel and new color are popped from stack, and popping from empty stack returns 0 in Mycelium. So this does not change behavior of the program because Mycelium never executes pixel (0,0) again.

I used _ instead of , to be able to place several #RRGGBB colors on the same line and not break DOBELA. #define and char* lines are swapped for Retina.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ I wonder does ImageMagick ignore the _ or does it understand C preprocessor? Probably the first. \$\endgroup\$ – Potato44 Sep 5 '17 at 18:20
  • \$\begingroup\$ @Potato44 Yes, you are right. Turns out ImageMagick does not understand preprocessor in XPM files (XPM3). The image still works if #define _ , is removed. It also works if underscores and commas between strings are removed. I find it weird considering that XPM1 used preprocessor directives. Probably preprocessor directives were not parsed properly in XPM1 either. \$\endgroup\$ – stasoid Sep 5 '17 at 19:55
6
\$\begingroup\$

130. Boolf*ck, 5050 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv'[af2.q]PkPPX)\('#CO"14"    ^  */
#/*0|7//```"`  [>.>.])[-'][(x>77*,68*,@'1    #  1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉QQxQRrRrRrxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOBxxxxxV/112\n
# 36!@␉`  e++++++::@    / "78"oo@xxxx h#115 o# doxe b xx-----
#cxx#z#111#y#y#y#_#11111x 
#~==++++++++++++++++++++++++++++++++++++++++x+++++++++.._+++++++.
#`<`============================================================
#<<<#>>]}}+-[.^;+;;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][PLACET,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                              _         _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(4O6O@?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l111111^_0     )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    ) ;b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;;*1*) echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈ +-------+
😇♈♈ |$0011 \|
😇♈♉ |/1000 /|
😇♈💜|\ 0011\|
😊♉♈ |/01 00/|
😊📢♈|\ 0011\|
😈♈💜|@ 0110/|
😊📢♈|       |
😇♉💞+-------+
😊📢♉
7 UP
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
You can see a y and a x here. <><

>{-<
>SET y TO 88. <
>SET x TO 32. <

>PUT x IN y. <
>X y. PPVs""o<
>-}

set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"
char*x="23 11 24 1 "
"z c #0C8302""b c #B87A63""_ c #0000C0""d c #708FB7""e c #58007B""f c #FFC0FF""O c #FFFFFF""y c #FFFF00"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""m c #CA007F""n c #330001""q c #E60000"
"r c #FF8000""t c #FF00BC""u c #008080""T c #C3C3C8"
"l c black""g c green""x c blue""o c magenta""c c cyan"
"fhtezgggggggggggggggggc"
"fiyuggggggggggggggggggc"
"fjTuggggggggggggggxgxgc"
"fkTOOOOOOOOOOOxggggggrc"
"fmbyyyyyyyyyyyyyyyyyyyt"
"fnbyyyyyyyyyyyyyyyyyyyt"
"fqbyyyyyyyyyyOyOdOTTTTT"
"flyggyyyyyyyygOOOOOOOOO"
"fllllllllllllllllllllll"
"ffoOOOOxxxxx_oOxxx_Oxo_"
"OOOOOOOxxxxxOOOxxxOOl__";//"
int  y(){puts ( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";return 2;}int z=0;int   q(int a,int b){return b;}main(){q(z++,z++)?puts("124"):y  ();}//*/
#1"" /*/

1<2

>main=putStr"128"
#1"" /*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ) ;print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0
#endif//* rk:start | print: "69" rk:end 9        @,-1,:*b5<>␌
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;+=4C++.---.
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxcly"78" \++++>/<~#class P{      function:Main (a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\     @,,1'1'<>   _@125iRE
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21 #fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~- COprint("65")#asss^_^_# 
#9 "25"   +/ ppppppp         v (x*n^*n*n*e*s*s*s*ee*n*n*n*<>e*sss*e*n*n*n*ee*s*e)*///V222999686#

VIP score (Versatile Integer Printer): .002298 (to improve, next entry should be no more than 5166 bytes

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03(gcc), 38 in C99(gcc), 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11(gcc), 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11(gcc), 76 in Trefunge, 77 in C++14(gcc), 78 in dash, 79 in C++17(gcc), 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89(gcc), 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C(gcc), 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG, 119 in ImageFuck, 120 in TRANSCRIPT, 121 in Braincopter, 122 in Monkeys, 123 in Mycelium, 124 in C(clang), 125 in Gammaplex, 126 in Nhohnhehr, 127 in Deltaplex, 128 in Haskell, 129 in Brainloller, 130 in Boolfuck

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Symbolic Brainfuck (102) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Gol><> (107) local, online
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • Stones (117) local
  • ImageFuck (119) local
  • Braincopter (121) local
  • Mycelium (123) local
  • Deltaplex (127) local
  • Brainloller (129) local
  • Boolfuck (130) local

Explanation

Boolfuck is a brainfuck derivative similar to brainbool, so similar in fact the only difference is how they do I/O and that the tape for boolfuck is also left infinite. The difference between the I/O is whereas brainbool only operates with '0' and '1'; Boolfuck operates with the bits that make up bytes sending the least significant bit first. Also Boolfuck uses ; as output instead of ..

Because of this similarity I use the same loop for Boolfuck as Wheat Wizard created for brainbool in answer 100.

The loop now looks like this:

[.^;+;;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]

Because the number of + is odd it is equivalent to the one + that was there before to brainbool. The <> in the middle was so that the minimal 2D answer remains unaffected.

Funges

Because the top line contained ; which is the Boolfuck output command I had to remove or hide them. My first few attempts were to hide them with [] but none were successful. So I tried removing them, which after realigning pyramid scheme and ><> revealed only Befunge-98 and Trefunge to be broken.

I realised rather than skipping through the top line I can try to go around it. So I used the Funges' wrapping behaviour and the ^ that is part of the Pyramid Scheme pyrimid to wrap to the bottom. To check that I had wrapped correctly I set up a quick test that skipped over the bottom line with a pair of ; and then used a v to wrap back around to the top in the same column the v in the top line is in. This worked successfully for Befunge-98 but Trefunge was not working.

After a while I had realised what was going on: The bottom of the polyglot is at the z=1 level in Trefunge and so Trefunge was wrapping to just before the form feed. I took this opportunity to move the form feed to after the Trefunge code and the Trefunge code now flows right to left like this

 @,-1,:*b5<>␌

The hard part was now getting the Befunge-98 to work. Both # and ; where causing trouble when I was using them to try to skip the parts of the bottom line dangerous to Befunge; The # caused trouble for Algol and the ; was trouble for Boolfuck. After an unsuccessful attempt to hide the ; in a loop I decided the best thing to do would be to put the Befunge-98 code at the end of the polyglot. My first attempt at doing this was right mixed in with the Paintfuck but the @ sign necessary to end Befunge caused Gammaplex to fail. I then realised that I could route the Befunge-98 through the -- in the wise and the 2 in the 27.say to put the code just before the Gammaplex. So the Befunge-98 main code is now

@,,1'1'<> 

on the 4th last line. This code turns left then pushes the character value of 1 twice before printing it twice then exiting.

With Befunge-98 and Trefunge no longer traversing the old Befunge code I was able to simplify it somewhat. It now looks like this

>77*,68*,@'1    #  

Multiply 7 with 7 to get 49; print; multiply 6 with 8 to get 48; print; end; There are still some leftovers from the Befunge-98 but these were required to keep other languages working: ' for shove, 1 for whirl, and # for Del|m|t. I replaced the characters I removed with spaces as I was having trouble moving the Pyramid scheme pyramid leftward due to Del|m|it.

Incident, Prelude

I added a space before the parenthesis that is the arguments to the main method for Objeck to detokenise ain(. I shifted one of the parenthesis in the case statement for the shell scripts to unalign a parenthesis that moved from the <> added to the bottom line.

| improve this answer | |
\$\endgroup\$
6
\$\begingroup\$

133. PATH, 5309 5301 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv'[af2.q]PkPPX)\(9 9'#CO"14" ^  */
#/*0|7//```"`  [>.>.])[-'][(x>77*,68*,@'1    #  1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOBxxxxxV/112\n␉
# 36!@␉`  e++++++::@    / "78"oo@xxx  h#115 o# doxe b xx-----
#c#z#111#y#y#y#_#11111TaTa Ta TbTbTbRtRtRtVkVkVkRcRc
#~==++++++++++++++++++++++++++++++++++++++++x+++++++++.._+++++++.
#`<`============================================================
#<<<#>>]}}+-[.^;+;;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][PLACET,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                              _         _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l@O6O4/111111^_0     )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                      (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    ) ;b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;;*1*) echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→
😊♈💖
😇♈♈
😊♉♈ +-------+
😇♈♈ |$0011 \|
😇♈♉ |/1000 /|
😇♈💜|\ 0011\|
😊♉♈ |/01 00/|
😊📢♈|\ 0011\|
😈♈💜|@ 0110/|
😊📢♈|       |
😇♉💞+-------+
😊📢♉
7 UP
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
You can see a y and a x here. <><
>{-<
>SET y TO 88. <
>SET x TO 32. <
>PUT x IN y. <
>X y. PPQs""o<>-}
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"1
char*x="23 12 30 1 "
"z c #0C8302""b c #B87A63""_ c #0000C0""d c #708FB7""e c #58007B""f c #FFC0FF""O c #FFFFFF""y c #FFFF00"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""m c #CA007F""n c #330001 ""q c #E60000"
"r c #FF8000""t c #FF00BC""u c #008080""T c #C3C3C8"
"A c #0040C0""B c #C00040""C c #C04000""G c #008000""E c #808000""F c #00C040"
"l c black""g c green""x c blue""o c magenta""c c cyan"
"fhtezAyAgBBBBCB_gxggxGc"
"fiTuggggggggggggggEFxGc"
"fjTuggggggggggggggggggc"
"fkTuxgggggggggggggggggc"
"fmyugxgggggggxOOOOOOOOr"
"fnbyyyyyyyyyyyyyyyyyyyz"
"fqbyyyyyyyyyyyyyyyyyyyz"
"flbyyyyyyyyyyOyOdOTTTTT"
"flggyyyyyyyygOOOOOOOOOO"
"fllllllllllllllllllllll"
"ffoOOOOOOOxxxxx_oOxx_fx"
"OOOOOOOOOOxxxxxOOOxxlxx";//"
int  y(){puts ( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";return 2;}int z=0;int   q(int a,int b){return b;}main(){q(z++,z++)?puts("124"):y  ();}//<*/
#1""/*/

>main=putStr"128"
#1""/*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999fi 99\"  ) ;print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0
#endif//* rk:start | print: "69" rk:end 9        @,-1,:*b5<>␌
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;4=C+++.---.\_<!+++++++++++++++++++++++++++++++++++++++++++++++++.++.-.>@
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pRcxxcly"78" \++++>/<~#class P{       function:Main (a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\     @,,1'1'<>   _@125iRE
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21 #fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$>[+++++++++++++++++++++++++++++++++++++++++++++++++._++.._ #]6~-<~-<~-<<<~- COprint("65")#asss^_^_# 
#9 "25"   +/ ppppppp           (x*n^*n*n*e*s*s*s*ee*n*n*n*<>e*sss*e*n*n*n*ee*s*e)*///Q222999686#

VIP score (Versatile Integer Printer): .002253 (to improve, next entry should be no more than 5420 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03(gcc), 38 in C99(gcc), 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11(gcc), 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11(gcc), 76 in Trefunge, 77 in C++14(gcc), 78 in dash, 79 in C++17(gcc), 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89(gcc), 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C(gcc), 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG, 119 in ImageFuck, 120 in TRANSCRIPT, 121 in Braincopter, 122 in Monkeys, 123 in Mycelium, 124 in C(clang), 125 in Gammaplex, 126 in Nhohnhehr, 127 in Deltaplex, 128 in Haskell, 129 in Brainloller, 130 in Boolfuck, 131 in Extended Brainloller, 132 in YABALL, 133 in PATH

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • ImageFuck (119) local
  • Braincopter (121) local
  • Mycelium (123) local
  • Deltaplex (127) local
  • Brainloller (129) local
  • Extended Brainloller (131) local
  • PATH (133) local

Explanation

PATH is a 2D language with explicit entry point $. If there are several $s the last one is used.

PATH code is on #s8␛dgg line:

$>[+++++++++++++++++++++++++++++++++++++++++++++++++._++.._ #]

>[] are for bf/smbf, _s for dobela, space for incident. # ends the program.

Fixed YABALL return value as suggested by Potato44.

Haskell

Some refactorings to remove blank lines. < from 1<2 moved to //<*/. TRANSCRIPT can be reduced to

>{-<
>SET y TO 88. <
>SET x TO 32. <
>PUT x IN y. <
>X y. PPQs""o<>-}

runhaskell can accept options for particular build phases. -optL passes the option to literate pre-processor (unlit). Unlit can be configured to ignore all errors (quiet mode, -q). So if we run it like this:

runhaskell -cpp -optL -q polyglot.lhs

then it will not error out on code lines adjacent to non-empty text lines. (I think -cpp is equivalent to -XCPP.) Ignoring all errors might sound like a bad idea in general, but for polyglot it is better to have as permissive parser as possible. Just in case, there is a full list of errors that are ignored as a result of -q option, obtained by examining unlit source code:

  • Program line next to comment - this is the error we want to suppress
  • No definitions in file (perhaps you forgot the '>'s?) - no lines starting with >
  • missing \end{code} - for Latex style literate programming
  • spurious \end{code} - same

So the only blank line left now is before >main=putStr"128", it is for Retina.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ YABALL is using its current cell value as exit code so it is exiting with 50. Can be fixed by putting a > just before the @ and a < just beforre the ! \$\endgroup\$ – Potato44 Sep 9 '17 at 18:12
6
\$\begingroup\$

137. Bloated SNUSP, 6129 6109 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv'[af2.q]PkPPX)\(9 9'#CO"14" ^  */
#/*0|7//```"`  [>.>.])[-'][(x>77*,68*,@'1    #  1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOBxxxxxV/112\n#z#111#y#y#y#_#11111␉
# 36!@␉`  e++++++::@    / "78"oo@     h#115 o# doxe b  x-----
#cTaTa Ta TbTbTbRtRtRtVkVkVk RcRcRcBkBkBk
#~==+++++++++++++++++++++++++++++++++++++++++++++++++.._+++++++.
#`<`============================================================     x
#<<<#>>]}}+-[.^;+;;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][PLACET,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                              _         _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOxx4O6O@MoOMOO0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l 111111^_0     )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>;?\:-._++. _++++._#/+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWW\WWWWwWWWWwWWWWWW/WwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                    (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (         x)>  ){ ({}[()]  )}{\';      a=$(printf \\x00    ) ;b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;;*1*) echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→
밠밠따빠빠맣박다맣받다맣희맣희
😊♈💖
😇♈♈ +-------+
😊♉♈ |$0011 \|
😇♈♈ |/1000 /|
😇♈♉ |\ 0011\|
😇♈💜|/01 00/|
😊♉♈ |\ 0011\|
😊📢♈|@ 0110/|
😈♈💜|       |
😊📢♈+-------+
😇♉💞
😊📢♉
1  1  ! !           x
2   !    !          xx
1      !!           x x
1  x*               x x
53  +               x  xx
1  x*                x   xx
51  +          xxxxxxxx    xx
1  x*          x             x
34  +          x             x
15  +          x         ?   ?@             !
1   *          x        ?@    ?
1   !          x          +   *
1              x        ?  !  ?
1xxxxx!xxxxxxxxxxxxxxxxxx?x@x?
  x            x
             xxxxx
            x  x  x
            x  x  x
           x    xx
x          x
x         x
x         x
x        x
         x  x  xxxxx
        x   x x   x
        x   xx  xx
       x    x  x
       x       x
      x       x
      x   x   x
     x   xx  x
     x  x x  x
    x   x  xx
    x    x
  xx     x
 x      x
xxxxxxxx

7 UP
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
You can see an x here.<<11
>SET x TO 120.
>X x. PPQs""o
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"16
char*x="23 12 30 1 "
"z c #0C8302""b c #B87A63""_ c #0000C0""d c #708FB7""e c #58007B""f c #FFC0FF""O c #FFFFFF""y c #FFFF00"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""m c #CA007F""n c #330001 ""q c #E60000"
"r c #FF8000""t c #FF00BC""u c #008080""T c #C3C3C8"
"A c #0040C0""B c #C00040""C c #C04000""G c #008000""E c #808000""F c #00C040"
"l c black""g c green""x c blue""o c magenta""c c cyan"
"fhtezAyAgBBBBCB_gxggxGc"
"fiTuggggggggggggggEFxGc"
"fjTuggggggggggggggggggc"
"fkTuxgggggggggggggggggc"
"fmyugxgggggggxOOOOOOOOr"
"fnbyyyyyyyyyyyyyyyyyyyz"
"fqbyyyyyyyyyyyyyyyyyyyz"
"flbyyyyyyyyyyOyOdOTTTTT"
"flggyyyyyyyygOOOOOOOOOO"
"fllllllllllllllllllllll"
"ffoOOOOOOOxxxxx_oOxx_fx"
"OOOOOOOOOOxxxxxOOOxxlxx";//"
int  y(){puts ( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";return 2;}int z=0;int   q(int a,int b){return b;}main(){q(z++,z++)?puts("124"):y  ();}//<*/
#1""/*/

>main=putStr"128"
#1""/*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999fi 99\"  ) ;print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0
#endif//* rk:start | print: "69" rk:end 9        @,-1,:*b5<>␌
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;4=C+++.---.\_<!+++++++++++++++++++++++++++++++++++++++++++++++++.++.-.>@
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxcly"78" \++++>/<~#class P{       function:Main (a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\     @,,1'1'<>   _      @125iRE
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21 #fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$>[+++++++++++++++++++++++++++++++++++++++++++++++++._++.._#]6~-<~-<~-<<<~- COprint("65")#asss^_^_# 
#9 "25"   +/ ppppppp           (x*n^*n*n*e*s*s*s*ee*n*n*n*<>e*sss*e*n*n*n*ee*s*e)*///Q222999686#

VIP score (Versatile Integer Printer): .002375 (to improve, next entry should be no more than 6241 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03(gcc), 38 in C99(gcc), 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11(gcc), 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11(gcc), 76 in Trefunge, 77 in C++14(gcc), 78 in dash, 79 in C++17(gcc), 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89(gcc), 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C(gcc), 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG, 119 in ImageFuck, 120 in TRANSCRIPT, 121 in Braincopter, 122 in Monkeys, 123 in Mycelium, 124 in C(clang), 125 in Gammaplex, 126 in Nhohnhehr, 127 in Deltaplex, 128 in Haskell, 129 in Brainloller, 130 in Boolfuck, 131 in Extended Brainloller, 132 in YABALL, 133 in PATH, 134 in Aheui, 135 in LNUSP, 136 in Wierd, 137 in Bloated SNUSP

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • 05AB1E (26) local
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • ImageFuck (119) local
  • Braincopter (121) local
  • Mycelium (123) local
  • Deltaplex (127) local
  • Brainloller (129) local
  • Extended Brainloller (131) local
  • LNUSP (135) local
  • Wierd (136) online

Explanation

Bloated/Modular SNUSP code (Grass not shown):

###x<$+@+-@@@@=>+<@@@=>+<?#d>;?\:-._++. _++++._#/+.--.<!\
                               \                /                              

I use Bloated SNUSP ; command (move memory pointer down) to distinguish it from Modular SNUSP. Bloated SNUSP will skip over \ with ? because data cell under pointer is zero. Last # terminates Bloated SNUSP. Space and d are for Incident.

Added x on line 25 to destroy Cardinal pointer from Cubically code.
To fix Del|m|t I moved it to third line.
Note: removing x before ----- on line 4 breaks Morse.

Refactorings: merged last LNUSP line with Wierd.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ Is there any reason why the SNUSPs can't share the part with @? \$\endgroup\$ – Potato44 Sep 13 '17 at 14:59
  • \$\begingroup\$ @Potato44 Yes, it looks like it can be shared. Thanks for the suggestion. I will look at it. \$\endgroup\$ – stasoid Sep 13 '17 at 15:18
6
\$\begingroup\$

140. Gaot++, 6081 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv'[af2.q]PkPPX)\(9 9'#CO"14" ^  */
#/*0|7//```"`  [>.>.])[-'][(x>77*,68*,@'1    #  1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOBxxxxxV/112\n#z#111#y#y#y#_#11111␉
# 36!@␉`  e++++++::@    / "78"oo@     h#115 o# doxe b  x-----
#cTaTaTa TbTbTbRtRtRtVkVkVkRcRcRcBkBkBk
#~==+++++++++++++++++++++++++++++++++++++++++++++++++.._+++++++.
#`<`============================================================     x
#<<<#>>]}}+-[.^;+;;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][PLACET,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                              _         _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOxMoOMOO0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g4O6O@0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l 111111^_0     )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>;?\:-._++._++++._#/<?\>+.--._#</++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWW\WWWWwWWWWwWWWWW/WW\wWWWWWWWW/wwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                  (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (         x)>  ){ ({}[()]  )}{\';      a=$(printf \\x00    ) ;b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;;*1*) echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→
밠밠따빠빠맣박다맣받다맣희맣희
😊♈💖
😇♈♈ +-------+
😊♉♈ |$0011 \|
😇♈♈ |/1000 /|
😇♈♉ |\ 0011\|
😇♈💜|/01 00/|
😊♉♈ |\ 0011\|
😊📢♈|@ 0110/|
😈♈💜|       |
😊📢♈+-------+
😇♉💞
😊📢♉⠀⢃⠛⠋
1  1  ! !
2   !    !
1      !!
1  x*
53  +
1  x*
51  +
1  x*
34  +
15  +                    ?   ?@             !
1   *                   ?@    ?
1   !                     +   *
1                       ?  !  ?
1     !                  ? @ ?
x  x    xx   x  x
x xx  xxxxx  xxx x
x xx x x    x x
x  xx  x    x x   x  x
x x    x   x  x   xxx x
x x    x   x  x  x x
 x x   x  x   x  x x x
 x x   x  x   x x  x xx
x   x  x x      x  xx  x
x   x    x    xx   x
x    x xx     xx
x    x xx     x
 xxxx  x


7 UP
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
You can see an x here.<<11
>SET x TO 120.
>X x. PPQs""o
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"16
char*x="23 12 30 1 "
"z c #0C8302""b c #B87A63""_ c #0000C0""d c #708FB7""e c #58007B""f c #FFC0FF""O c #FFFFFF""y c #FFFF00"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""m c #CA007F""n c #330001 ""q c #E60000"
"r c #FF8000""t c #FF00BC""u c #008080""T c #C3C3C8"
"A c #0040C0""B c #C00040""C c #C04000""G c #008000""E c #808000""F c #00C040"
"l c black""g c green""x c blue""o c magenta""c c cyan"
"fhtezAyAgBBBBCB_gxggxGc"
"fiTuggggggggggggggEFxGc"
"fjTuggggggggggggggggggc"
"fkTuxgggggggggggggggggc"
"fmyugxgggggggxOOOOOOOOr"
"fnbyyyyyyyyyyyyyyyyyyyz"
"fqbyyyyyyyyyyyyyyyyyyyz"
"flbyyyyyyyyyyOyOdOTTTTT"
"flggyyyyyyyygOOOOOOOOOO"
"fllllllllllllllllllllll"
"ffoOOOOOOOxxxxx_oOxx_fx"
"OOOOOOOOOOxxxxxOOOxxlxx";//"
int  y(){puts ( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";return 2;}int z=0;int   q(int a,int b){return b;}main(){q(z+=1, z)?puts("124"):y  ();}//<*/
#1""/*/
>main=putStr"128"
#1""/*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999fi 99\"  ) ;print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0
#endif//* rk:start | print: "69" rk:end 9        @,-1,:*b5<>␌
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;4=C+++.---.\_<!+++++++++++++++++++++++++++++++++++++++++++++++++.++.-.>@
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxcly"78" \++++>/<~#class P{       function:Main (a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\     @,,1'1'<>   _      @125iRE
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21 #fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$>[+++++++++++++++++++++++++++++++++++++++++++++++++._++.._#]6~-<~-<~-<<<~- COprint("65")#asss^_^_# 
#9 "25"   +/ ppppppp           (x*n^*n*n*e*s*s*s*ee*n*n*n*<>e*sss*e*n*n*n*ee*s*e)*///Q222999686#

VIP score (Versatile Integer Printer): .002216 (to improve, next entry should be no more than 6211 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt 1.4, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby 2.4.1, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03(gcc), 38 in C99(gcc), 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11(gcc), 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11(gcc), 76 in Trefunge, 77 in C++14(gcc), 78 in dash, 79 in C++17(gcc), 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89(gcc), 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C(gcc), 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming, 106 in Unlambda, 107 in Gol><>, 108 in Ruby 1.8.7, 109 in DOBELA, 110 in Ruby 1.9.3, 111 in Del|m|t, 112 in Pyramid Scheme, 113 in ADJUST, 114 in Axo, 115 in xEec, 116 in Piet(XPM), 117 in Stones, 118 in MarioLANG, 119 in ImageFuck, 120 in TRANSCRIPT, 121 in Braincopter, 122 in Monkeys, 123 in Mycelium, 124 in C(clang), 125 in Gammaplex, 126 in Nhohnhehr, 127 in Deltaplex, 128 in Haskell, 129 in Brainloller, 130 in Boolfuck, 131 in Extended Brainloller, 132 in YABALL, 133 in PATH, 134 in Aheui, 135 in LNUSP, 136 in Wierd, 137 in Bloated SNUSP, 138 in Braille, 139 in Core SNUSP, 140 in Gaot++

Verification

Try it online!

Languages that are not in the driver:

  • Japt (7) online.
  • 05AB1E (26) local
  • Moorhens (60) local. Use moorhens.py from the v2.0-dev branch.
  • Objeck (83) local
  • RunR (90) local
  • Emotinomicon (94) online
  • EmojiCoder (96) online
  • Cubically (97) local
  • Paintfuck (104) online (9x9 grid, origin at top-left)
  • Ruby 1.8.7 and 1.9.3 (108 and 110) installed locally using rvm
  • ImageFuck (119) local
  • Braincopter (121) local
  • Mycelium (123) local
  • Deltaplex (127) local
  • Brainloller (129) local
  • Extended Brainloller (131) local
  • Wierd (136) online
  • Gaot++ (140) local

Explanation

Gaot++ is a fairly simple stack based language. Commands that match the regex ba{2,} push the integerthat is one less than the numbers of as onto the stack. Commands that match ble{2,}t do something based on the number of e.

The only complication while writing this program was that the subtraction command takes its arguments in opposite order than what esolangs seems to imply.

baa                                                  push 1 [1]
baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa  push 49 [1,49]
bleeeeeeeeeeeeet                                     duplicate [1,49,49]
bleeeeeeeeeeeeet                                     duplicate [1,49,49,49]
bleeeeeeeeeet                                        print [1,49,49]
baaaa                                                push 3 [1,49,49,3]
bleet                                                add [1,49,52]
bleeeeeeeeeet                                        print [1,49]
bleeet                                               subtract [48]
bleeeeeeeeeet                                        print

This code has been separated with spaces and placed on the end of the line with Cood and stones.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ What complication? Whistles innocently \$\endgroup\$ – Ørjan Johansen Sep 24 '17 at 18:02
  • \$\begingroup\$ @ØrjanJohansen It took me way longer than I want to admit to work out that the subtraction was doing Top - Second rather than Second - Top. \$\endgroup\$ – Potato44 Sep 24 '17 at 23:27
  • \$\begingroup\$ Scratches whistles innocently off the list of terms that reliably tell you're joking over the Internet \$\endgroup\$ – Ørjan Johansen Sep 25 '17 at 0:57
  • 1
    \$\begingroup\$ @ØrjanJohansen nah, I knew what whistles innocently means, but I somehow managed to read it seriously and as a joke as if they were 2 seperate comments. \$\endgroup\$ – Potato44 Sep 25 '17 at 1:04
6
\$\begingroup\$

141. Floater, 6171 6055 bytes

#16  "?63(o?23!*# #@"/*"r"{\Dv'[af2.q]PkPPX)\(9 9'#CO"14" ^  */
#/*0|7//```"`  [>.>.])[-'][(x>77*,68*,@'1    #  1011)(22)/ \S \7aa*+42@n;iiipsddpsdoh coding=utf8␉␉␉␉(1P''53'S^'?????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxOBxxxxxV/112\n#z#111#y#y#y#_#11111␉
# 36!@␉`  e++++++::@    / "78"oo@     h#115 o# doxe b  x-----
#cTaTaTa TbTbTbRtRtRtVkVkVkRcRcRcBkBkBkLzLzLz
#~==+++++++++++++++++++++++++++++++++++++++++++++++++.._+++++++.
#`<`============================================================     x
#<<<#>>]}}+-[.^;+;;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q       L+++<-][PLACET,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@.>][
#x%+>+=ttt Z_*.                              _         _              _
#D>xU/-<+++L    _
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11xx4O6O@MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l111111^_0     )0\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>;?\:-._++._++++._#/<?\>+.--._#</++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWW\WWWWwWWWWwWWWWW/WW\wWWWWWWWW/wwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                  (([5]{})))␉\';';print(( eval("1\x2f 2") and 9or 13<< (65)>>65or 68)-(0 and eval("\"ppp\".bytes.class==Array and 4or(\"ar_\"[2]==95 and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;              '_(*****************819+*+@[*99[?]*]***|!  )'
#\\
""""#\
' ( <><        (         x)>  ){ ({}[()]  )}{\';      a=$(printf \\x00    ) ;b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;;*1*) echo 50;;*) echo 58;;esac;exit;#(((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9seeeemPaeueewuuweeeeeeeeeeCis:aj (japppppp⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→
밠밠따빠빠맣박다맣받다맣희맣희
😊♈💖
😇♈♈ +-------+
😊♉♈ |$0011 \|
😇♈♈ |/1000 /|
😇♈♉ |\ 0011\|
😇♈💜|/01 00/|
😊♉♈ |\ 0011\|
😊📢♈|@ 0110/|
😈♈💜|       |
😊📢♈+-------+
😇♉💞
😊📢♉⠀⢃⠛⠋
1  1  ! !
2   !    !
1      !!
1  x*
53  +
1  x*
51  +
1  x*
34  +
15  +                    ?   ?@             !
1   *                   ?@    ?
1   !                     +   *
1                       ?  !  ?
1     !                  ? @ ?
x  x    xx   x  x
x xx  xxxxx  xxx x
x xx x x    x x
x  xx  x    x x   x  x
x x    x   x  x   xxx x
x x    x   x  x  x x
 x x   x  x   x  x x x
 x x   x  x   x x  x xx
x   x  x x      x  xx  x
x   x    x    xx   x
x    x xx     xx
x    x xx     x
 xxxx  x

7 UP
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
You can see an x here.<<11
>SET x TO 120.
>X x. PPQs""o
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #
More 91 of thiset of re9 red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "//"16
char*x="24 10 31 1 "
"a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000"
"o c #FF8000""t c #FF00BC""u c #008080"
"A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000"
"H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA"
"r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF"
"HHHahtdegggggggyrggggggc"
"IHHaixuEFbGGbggbryAEGRgc"
"JJHajyurbgbgggggggb____o"
"IJHakmyyyyyyyyyyyyyyyyye"
"I__almyyyyyyyyyyyyyyyyye"
"K__anmyyyyyyyyyyyyyy_y_e"
"HH_aqggyyyyyyyyg____m_Je"
"JH_axxxxxxxxxxxxxxxxxxxx"
"K__aaaam___bbbbbBm_bbBab"
"K__________bbbbb___bbxbb";//"
int  y(){puts ( sizeof (0,u8)-5?u8"67":*u8""?"37":x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77" );"21015""6 27""Zingeg-' ?";return 2;}int z=0;int   q(int a,int b){return b;}main(){q(z+=1, z)?puts("124"):  y();}//<*/
#1""/*/
>main=putStr"128"
#1""/*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999fi 99\"  ) ;print'(''72'')';end! "           );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0
#endif//* rk:start | print: "69" rk:end 9        @,-1,:*b5<>␌
print 61
#}
disp 49 ;9;
#{
}{}<>       K y7g+H           ;
$'main'3x            #     $  |
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>;4=C+++.---.\_<!+++++++++++++++++++++++++++++++++++++++++++++++++.++.-.>@
#<<<#>>>  /                  44
reg end="";print(85);reg s#+++;+++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxcl y"78" \++++>/<~#class P{       function:Main (a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\     @,,1'1'<>   _      @125iRE
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47  ) #]#echo 21 #fWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$>[+++++++++++++++++++++++++++++++++++++++++++++++++._++.._#]6~-<~-<~-<<<~- COprint("65")#asss^_^_# 
#9 "25"   +/ ppppppp           (x*n^*n*n*e*s*s*s*ee*n*n*n*<>e*sss*e*n*n*n*ee*s*e)*///Q222999686#

VIP score (Versatile Integer Printer): .002160 (to improve, next entry should be no more than